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

  1. Name        Shftcnt4;
  2. Partno        CA0004;
  3. Date        6/18/84;
  4. Revision    01;
  5. Designer    T. Kahl;
  6. Company        Assisted Technology, Inc.;
  7. Assembly    None;
  8. Location    None;
  9.  
  10. /****************************************************************/
  11. /*                                  */
  12. /* This is a four-bit UP/DOWN counter with shifting capability  */
  13. /*                                  */
  14. /****************************************************************/
  15. /* Allowable Target Device Types: 82S159            */
  16. /****************************************************************/
  17.  
  18. /** Input Group **/
  19.  
  20. pin 1 = clk;        /* Clock input for device        */
  21. pin [2..5] = [I0..3];    /* Mode control inputs                 */
  22. pin 11    = !oe;        /* Output enable for registers             */
  23.  
  24. /** Output Group **/
  25.  
  26. pin [12..15] = ![F0..3]; /* Function outputs               */
  27.  
  28. /** Declarations and Intermediate Variable Definitions **/
  29.  
  30. field mode  = [I3..0];    /* Count/Shift Mode control field      */
  31. field count = [F3..0];    /* Output bit field            */
  32.  
  33. right = mode:2;        /* Define Counter/Shift Modes        */
  34. up    = mode:3;
  35. left  = mode:4;
  36. down  = mode:5;
  37. clear = mode:[8..F];
  38.  
  39. /** Logic Equations **/
  40.  
  41. count.ar  = clear;
  42.  
  43. F0.j = down
  44.      # up
  45.      # left  &  F3
  46.      # right &              F1;
  47. F0.k = down
  48.      # up
  49.      # left  & !F3
  50.      # right &             !F1;
  51. F1.j = down  &                   !F0
  52.      # up    &                    F0
  53.      # left  &                    F0
  54.      # right &        F2;
  55. F1.k = down  &                   !F0
  56.      # up    &                    F0
  57.      # left  &                   !F0
  58.      # right &       !F2;
  59. F2.j = down  &             !F1 & !F0
  60.      # up    &              F1 &  F0
  61.      # left  &              F1
  62.      # right &  F3;
  63. F2.k = down  &             !F1 & !F0
  64.      # up    &              F1 &  F0
  65.      # left  &             !F1
  66.      # right & !F3;
  67. F3.j = down  &       !F2 & !F1 & !F0
  68.      # up    &        F2 &  F1 &  F0
  69.      # left  &        F2
  70.      # right &                    F0;
  71. F3.k = down  &       !F2 & !F1 & !F0
  72.      # up    &        F2 &  F1 &  F0
  73.      # left  &       !F2
  74.      # right &                   !F0;
  75.