home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 15 / 15.iso / s / s078 / 1.img / RIPPLE8.PLD < prev    next >
Encoding:
CUPL PLD Program format  |  1991-12-08  |  2.0 KB  |  85 lines

  1. Name      Ripple8;
  2. Partno      CA0012;
  3. Date      12/10/84;
  4. Revision  01;
  5. Designer  Kahl;
  6. Company   Assisted Technology;
  7. Assembly  None;
  8. Location  None;
  9.  
  10. /****************************************************************/
  11. /*                                */
  12. /* Octal Ripple Counter                     */
  13. /*                                */
  14. /* Octal ripple counter with parallel load.  The LOAD operation */
  15. /* asynchronously loads the inputs (D7-D0) into the output    */
  16. /* register (Q7-Q0).  The COUNT function adds one to the output */
  17. /* register when the CARRY-IN input is true.  The CARRY-OUT    */
  18. /* is true when the output register (Q7-Q0) is all ONES.    */
  19. /****************************************************************/
  20. /** Allowable Target Device Types :  PAL20RA10            */
  21. /****************************************************************/
  22.  
  23. /**  Inputs  **/
  24.  
  25. pin 1         = !pl;        /* Register Preload Pin     */
  26. pin 13         = !oe;        /* Register Output Enable    */
  27. pin 2         = clock;        /* Register Clock        */
  28. pin [3..10]  = [D0..7];     /* Data Inputs            */
  29. pin 11         = load;        /* Count/Load Mode Control    */
  30. pin 23         = carry_in;    /* Register Clear Input     */
  31.  
  32. /**  Outputs  **/
  33.  
  34. pin 14         = carry_out;    /* Carry-Out Output        */
  35. pin [15..22] = [Q7..0];     /* Register Outputs        */
  36.  
  37. /** Declarations and Intermediate Variable Definitions **/
  38.  
  39. field D = [D7..0];
  40. field Q = [Q7..0];
  41.  
  42. /** Logic Equations **/
  43.  
  44. carry_out = carry_in & [Q0..7]:& ;
  45.  
  46. Q0.ck = clock & carry_in;
  47. Q0.ar = load  &  D0;
  48. Q0.ap = load  & !D0;
  49. Q0.d  = !Q0;
  50.  
  51. Q1.ck = !Q0;
  52. Q1.ar = load  &  D1;
  53. Q1.ap = load  & !D1;
  54. Q1.d  = !Q1;
  55.  
  56. Q2.ck = !Q1;
  57. Q2.ar = load  &  D2;
  58. Q2.ap = load  & !D2;
  59. Q2.d  = !Q2;
  60.  
  61. Q3.ck = !Q2;
  62. Q3.ar = load  &  D3;
  63. Q3.ap = load  & !D3;
  64. Q3.d  = !Q3;
  65.  
  66. Q4.ck = !Q3;
  67. Q4.ar = load  &  D4;
  68. Q4.ap = load  & !D4;
  69. Q4.d  = !Q4;
  70.  
  71. Q5.ck = !Q4;
  72. Q5.ar = load  &  D5;
  73. Q5.ap = load  & !D5;
  74. Q5.d  = !Q5;
  75.  
  76. Q6.ck = !Q5;
  77. Q6.ar = load  &  D6;
  78. Q6.ap = load  & !D6;
  79. Q6.d  = !Q6;
  80.  
  81. Q7.ck = !Q6;
  82. Q7.ar = load  &  D7;
  83. Q7.ap = load  & !D7;
  84. Q7.d  = !Q7;
  85.