home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / tech / palsum3 / 3to8dmux.pds < prev    next >
Text File  |  1987-08-26  |  7KB  |  163 lines

  1. Title    3to8_Dmux
  2. Pattern  3to8Dmux.pds
  3. Revision A
  4. Author   Mehrnaz Hada
  5. Company  Monolithic Memories Inc., Santa Clara, CA
  6. Date     1/29/85
  7.   
  8. ;The 3-to-8 demultiplexer with control storage provides a
  9. ;conventional 8-bit demux function combined with control
  10. ;storage functions:load true, load complement, hold, toggle,
  11. ;polarity, clear and preset. Five inputs(/LD,/CLR,/PR,POL,
  12. ;TOG) select one of six operations. The six operations are
  13. ;summarized in the following operations table:
  14.   
  15. ;Control   Functions   Polarity Inputs Outputs
  16. ;/OC CLK /CLR /PR /LD  POL  TOG  ABC    Q7-Q0  Operation
  17. ;----------------------------------------------------------
  18. ; H   X    X   X   X    X    X    X       Z    HI-Z
  19. ; L   C    L   X   X    X    X    X       L    Clear
  20. ; L   C    H   L   X    X    X    X       H    PRESET
  21. ; L   C    H   H   L    H    X    I      MUX   Load true
  22. ; L   C    H   H   L    L    X    I     /MUX   Load COMP
  23. ; L   C    H   H   H    X    L    X       Q    Hold
  24. ; L   C    H   H   H    X    H    X      /Q    Tog polarity
  25. ;-----------------------------------------------------------
  26.   
  27. CHIP 3to8Dmux PAL16R8
  28.   
  29. CLK /CLR /PR A  B  C  /LD POL TOG GND
  30. /OC  Q7   Q6 Q5 Q4 Q3  Q2 Q1  Q0  VCC
  31.   
  32. EQUATIONS
  33.   
  34. /Q0 :=  CLR                             ;Clear Q0
  35.      + /PR* LD*/POL*/C*/B*/A            ;Decode 000
  36.      + /PR* LD* POL*       A            ;Load true
  37.      + /PR* LD* POL*    B               ;Load true
  38.      + /PR* LD* POL* C                  ;Load true
  39.      + /PR*/LD*/TOG*/Q0                 ;Hold
  40.      + /PR*/LD* TOG* Q0                 ;Toggle polarity
  41.   
  42. /Q1 :=  CLR                             ;Clear Q1
  43.      + /PR* LD*/POL*/C*/B* A            ;Decode 001
  44.      + /PR* LD* POL*      /A            ;Load true
  45.      + /PR* LD* POL*    B               ;Load true
  46.      + /PR* LD* POL* C                  ;Load true
  47.      + /PR*/LD*/TOG*/Q1                 ;Hold
  48.      + /PR*/LD* TOG* Q1                 ;Toggle polarity
  49.   
  50. /Q2 :=  CLR                             ;Clear Q2
  51.      + /PR* LD*/POL*/C* B*/A            ;Decode 010
  52.      + /PR* LD* POL*       A            ;Load true
  53.      + /PR* LD* POL*   /B               ;Load true
  54.      + /PR* LD* POL* C                  ;Load true
  55.      + /PR*/LD*/TOG*/Q2                 ;Hold
  56.      + /PR*/LD* TOG* Q2                 ;Toggle polarity
  57.   
  58. /Q3 :=  CLR                             ;Clear Q3
  59.      + /PR* LD*/POL*/C* B* A            ;Decode 011
  60.      + /PR* LD* POL*      /A            ;Load true
  61.      + /PR* LD* POL*   /B               ;Load true
  62.      + /PR* LD* POL* C                  ;Load true
  63.      + /PR*/LD*/TOG*/Q3                 ;Hold
  64.      + /PR*/LD* TOG* Q3                 ;Toggle polarity
  65.   
  66. /Q4 :=  CLR                             ;Clear Q4
  67.      + /PR* LD*/POL* C*/B*/A            ;Decode 100
  68.      + /PR* LD* POL*       A            ;Load true
  69.      + /PR* LD* POL*    B               ;Load true
  70.      + /PR* LD* POL*/C                  ;Load true
  71.      + /PR*/LD*/TOG*/Q4                 ;Hold
  72.      + /PR*/LD* TOG* Q4                 ;Toggle polarity
  73.   
  74. /Q5 :=  CLR                             ;Clear Q5
  75.      + /PR* LD*/POL* C*/B* A            ;Decode 101
  76.      + /PR* LD* POL*      /A            ;Load true
  77.      + /PR* LD* POL*    B               ;Load true
  78.      + /PR* LD* POL*/C                  ;Load true
  79.      + /PR*/LD*/TOG*/Q5                 ;Hold
  80.      + /PR*/LD* TOG* Q5                 ;Toggle polarity
  81.   
  82. /Q6 :=  CLR                             ;Clear Q6
  83.      + /PR* LD*/POL* C* B*/A            ;Decode 110
  84.      + /PR* LD* POL*       A            ;Load true
  85.      + /PR* LD* POL*   /B               ;Load true
  86.      + /PR* LD* POL*/C                  ;Load true
  87.      + /PR*/LD*/TOG*/Q6                 ;Hold
  88.      + /PR*/LD* TOG* Q6                 ;Toggle polarity
  89.   
  90. /Q7 :=  CLR                             ;Clear Q7
  91.      + /PR* LD*/POL* C* B* A            ;Decode 111
  92.      + /PR* LD* POL*      /A            ;Load true
  93.      + /PR* LD* POL*   /B               ;Load true
  94.      + /PR* LD* POL*/C                  ;Load true
  95.      + /PR*/LD*/TOG*/Q7                 ;Hold
  96.      + /PR*/LD* TOG* Q7                 ;Toggle polarity
  97.   
  98. SIMULATION
  99.   
  100. TRACE_ON /OC /CLR /PR /LD POL TOG C B A
  101.          Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0
  102.   
  103. SETF OC CLR PR LD POL /TOG              ;Clear
  104. CLOCKF CLK
  105. SETF /CLR                               ;Preset
  106. CLOCKF CLK
  107. SETF /PR /C /B /A                       ;Load 0
  108. CLOCKF CLK
  109. SETF A                                  ;Load 1
  110. CLOCKF CLK
  111. SETF B /A                               ;Load 2
  112. CLOCKF CLK
  113. SETF A                                  ;Load 3
  114. CLOCKF CLK
  115. SETF /LD                                ;Hold
  116. SETF TOG                                ;Toggle polarity
  117. CLOCKF CLK
  118. CLOCKF CLK                              ;Toggle polarity
  119.   
  120. SETF /POL LD /C /B /A                   ;Load 0 complement
  121. CLOCKF CLK
  122. SETF A                                  ;Load 1 complement
  123. CLOCKF CLK
  124. SETF /OC                                ;Test HI-Z
  125. CLOCKF CLK
  126.   
  127. TRACE_OFF
  128.   
  129. ;Function Table for PALASM1
  130.   
  131. ;/OC CLK /CLR /PR /LD POL TOG C B A Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0
  132.   
  133. ;Control   Functions   Polarity  Input  Output
  134. ;/OC CLK /CLR /PR /LD  POL  TOG   CBA  Q7----Q0  Comments
  135. ;----------------------------------------------------------
  136. ; L   C    L   L   L    H    L    XXX  LLLLLLLL  Clear
  137. ; L   C    H   L   L    H    L    XXX  HHHHHHHH  PRESET
  138. ; L   C    H   H   L    H    X    LLL  LLLLLLLH  Load 0
  139. ; L   C    H   H   L    H    X    LLH  LLLLLLHL  Load 1
  140. ; L   C    H   H   L    H    X    LHL  LLLLLHLL  Load 2
  141. ; L   C    H   H   L    H    X    LHH  LLLLHLLL  Load 3
  142. ; L   C    H   H   L    H    X    HLL  LLLHLLLL  Load 4
  143. ; L   C    H   H   L    H    X    HLH  LLHLLLLL  Load 5
  144. ; L   C    H   H   L    H    X    HHL  LHLLLLLL  Load 6
  145. ; L   C    H   H   L    H    X    HHH  HLLLLLLL  Load 7
  146. ; L   C    H   H   H    X    L    XXX  HLLLLLLL  Hold 7
  147. ; L   C    H   H   H    X    H    XXX  LHHHHHHH  Hold
  148. ; L   C    H   H   H    X    H    XXX  HLLLLLLL  Hold
  149. ; L   C    H   H   L    L    X    LLL  HHHHHHHL  Load 0
  150. ; L   C    H   H   L    L    X    LLH  HHHHHHLH  Load 1
  151. ; L   C    H   H   L    L    X    LHL  HHHHHLHH  Load 2
  152. ; L   C    H   H   L    L    X    LHH  HHHHLHHH  Load 3
  153. ; L   C    H   H   L    L    X    HLL  HHHLHHHH  Load 4
  154. ; L   C    H   H   L    L    X    HLH  HHLHHHHH  Load 5
  155. ; L   C    H   H   L    L    X    HHL  HLHHHHHH  Load 6
  156. ; L   C    H   H   L    L    X    HHH  LHHHHHHH  Load 7
  157. ; L   C    H   H   H    X    L    XXX  LHHHHHHH  Hold 7
  158. ; L   C    H   H   H    X    H    XXX  HLLLLLLL  Hold
  159. ; L   C    H   H   H    X    H    XXX  LHHHHHHH  Hold
  160. ; H   X    X   X   X    X    X    XXX  ZZZZZZZZ  Test HI-Z
  161. ;----------------------------------------------------------
  162.   
  163.