home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / tech / palsum3 / 32vx10.pds < prev    next >
Text File  |  1987-06-22  |  10KB  |  249 lines

  1. ;
  2. ;      PAL 32VX10 MACRO CELL                                                  _
  3. ;
  4. ;  ___________________________________________________
  5. ;                                                    |
  6. ;  ______________________________________            |
  7. ;                                       |            |   Three State
  8. ;                                       -            |   Controlled 
  9. ;                                      | |           |\  by TRST
  10. ;            __________________________|1|___________| >o________ O
  11. ;S1___+-+    |                         | |           |/     |
  12. ;     |X|    |         +----+      _     | | Bypass Mux       |
  13. ;S2___|O|____|_______|D  Q|_____|0|____|0| Controlled       |
  14. ;     |R|            |   _|     | |     -  By CMBF          |
  15. ;     +-+       CLK__|>  Q|_____|1|                         |
  16. ;                 +----+  |   -  Polarity                |
  17. ;  __________/|            R |      Mux                     |
  18. ; FB1       < |______________|                              |
  19. ;  _________o\|    Registered Only                    |    
  20. ;               Feedback                                    |
  21. ;                                                           |
  22. ;  __________/|                                             |
  23. ; FB2       < |_____________________________________________|
  24. ;  _________o\| Signal on Pin O (Feedback/Input)
  25. ;
  26. ; How to define output equations:
  27. ;
  28. ; #1 COMBINATORIAL EQUATIONS
  29. ;      Combinatorial output equations are defined at the output pin,O.
  30. ;        eg.   O = <S2> or O = <S2 XOR S1> 
  31. ;      By default output polarity is active low. If it is desired to have
  32. ;      Active High polarity, then the XOR (:*:) operator can not be used in
  33. ;      the output Boolean equations.
  34. ;
  35. ;      (see above diagram)
  36. ;     
  37. ; #2 REGISTERED EQUATIONS
  38. ;      Registered output equations are defined at the node, R, and then equated
  39. ;      to the output pin, O.
  40. ;        eg.   R := <S2> or R := <S2 XOR S1> 
  41. ;          O := R
  42. ;
  43. ;      (see above diagram)
  44. ;
  45. ;** NOTE **
  46. ;----------
  47. ;      When R is equated to an expression (ie. R := S2 or R := S2 XOR S1)
  48. ;      the value of R is the register contents after a clock.
  49. ;      
  50. ;      When the output, O, is equated to the internal node, R, and the 
  51. ;      polarities match, (ie. O := R or /O := /R), then the output pin signal
  52. ;      is identical to the internal node signal.
  53. ;      If the Polarity of the Output (FB2) and the internal node do not match,
  54. ;      (ie. /O := R or O := /R) then the output signal, O, is inverse the 
  55. ;      signal at the internal node, R.
  56.  
  57. ;       PINLIST AND OUTPUT EQUATION POLARITY SETTINGS FOR GIVEN 
  58. ;       OUTPUT / FEEDBACK RESULTS
  59. ;
  60. ;The Polarity of the Output or Feedback signal is determined by the combination
  61. ;of the signal definitions in the Pin/Node list and the Boolean equation.
  62. ;
  63. ;For Output/FB2 feedback, the polarity is determined by the relative polarity 
  64. ;of the signal, O, in the pinlist and output Boolean equation.
  65. ;For Register feedback (FB1), the polarity is determined by the relative 
  66. ;polarity of the signal, R, in the pinlist and output Boolean equation.
  67. ;
  68. ;The following table illustrates this as a function of the relative polarity
  69. ;settings between the Pin/Node list and the Boolean equations. It shows the
  70. ;relationship of the polarity of an input signal, S2, at the input to the XOR
  71. ;and the signal for registered feedback, FB1, and the output/feedback, FB2.
  72. ;   ______________________________________________________
  73. ;   |        |  OUTPUT/FEEDBACK   ||      POLARITY       |
  74. ;   |________|____________________||_____________________|
  75. ;   | INPUT  |           | OUTPUT || PIN LIST | EQUATION |
  76. ;   | SIGNAL |    FB1    | / FB2  || POLARITY | POLARITY |
  77. ;   |________|___________|________||__________|__________|
  78. ;   |   S2   |    S2     |   S2   ||   O  /R  |   O  /R  |
  79. ;   |   S2   |    S2     |  /S2   ||  /O   R  |   O   R  |
  80. ;   |   S2   |   /S2     |   S2   ||  /O   R  |  /O  /R  |
  81. ;   |   S2   |   /S2     |  /S2   ||   O  /R  |  /O   R  |
  82. ;   |____________________________________________________|
  83. ;          
  84. ;The follow tables summarizes how the resultant polarity can be calculated.
  85. ;
  86. ;             PIN LIST POLARITY                     PIN LIST POLARITY         
  87. ;             _________________                     _________________         
  88. ;             |   | R      /R |                     |   | O      /O |         
  89. ;   BOOLEAN   |___|___________|           BOOLEAN   |___|___________|         
  90. ;   EQUATION  | R |HIGH   LOW |           EQUATION  | O |HIGH   LOW |         
  91. ;   POLARITY  |/R |LOW    HIGH|           POLARITY  |/O |LOW    HIGH|         
  92. ;             |___|___________|                     |___|___________|         
  93. ;                                                                            
  94. ;   POLARITY OF REGISTER FEEDBACK, FB1       POLARITY OF OUTPUT AND FB2 
  95. ;
  96. ;The Design below shows how to write the Boolean equations to generate the
  97. ;different polarities of the outputs and feedbacks.
  98. ;                                         
  99. ;DESIGN HEADER                           
  100. ;-------------                           
  101. title         32VX10 EXAMPLE             
  102. pattern       32VX10 EXAMPLE             
  103. revision      b
  104. author        JOHN DOE
  105. company       MMI, SANTA CLARA
  106. date          MAY 22, 1987
  107.           
  108.  
  109. ;PIN LIST / NODE LIST DECLARATION
  110. ;--------------------------------
  111. CHIP XXX PAL32VX10
  112.      CLK  I2   I3   I4   I5   I6   I7   I8   I9   I10  I11  GND
  113.      I13  O14  O15 /O16 /O17  O18  O19 /O20 /O21  O22  O23  VCC
  114.   GLOBAL  R14  R15  R16  R17 /R18 /R19  R20  R21 /R22 /R23
  115.  
  116. STRING     S2      'I2'
  117. STRING     COMB     'I3'
  118. STRING     REG    '/I3'
  119.  
  120. ;EXAMPLES OF HOW TO PROGRAM THE BOOLEAN EQUATIONS
  121. ;------------------------------------------------
  122. EQUATIONS 
  123.  
  124. ;DEFAULT SIGNAL SET-UPS
  125. ;----------------------
  126. ;If O.TRST is not explicitly defined for an output then it is automatically
  127. ;set such that :-
  128. ;    O.TRST = VCC    for PALASM 2.21,2.22 ie. DEFAULT SETTING TO OUTPUT
  129. ;    O.TRST = GND    for PALASM 2.23...   ie. DEFAULT SETTING TO INPUT
  130.  
  131. ;If O.CMBF is not explicitly defined for an output then the default value
  132. ;is automatically set depending on whether the output equation is Registered or
  133. ;Combinatorial. ie.
  134. ;       O.CMBF = VCC     when the output equation is COMBINATORIAL
  135. ;    O.CMBF = GND     when the output equation is REGISTERED
  136.  
  137.  
  138.  
  139. ;COMBINATORIAL EQUATIONS
  140. ;-----------------------
  141.  O14.TRST = VCC ;set three state = Output
  142.  O14 = S2    ;output polarity = high because pin list polarity matches
  143.         ;           equation polarity.
  144.  
  145.  
  146.  O15.TRST = VCC ;set three state = Output
  147. /O15 = S2    ;output polarity = low because pin list polarity is different
  148.         ;           from equation polarity.
  149.  
  150.  
  151.  O16.TRST = VCC ;set three state = Output
  152.  O16 = S2    ;output polarity = low because pin list polarity is different
  153.         ;           from equation polarity.
  154.  
  155.  
  156.  O17.TRST = VCC ;set three state = Output
  157. /O17 = S2    ;output polarity = high because pin list polarity matches
  158.         ;           equation polarity.
  159.  
  160.  
  161. ;REGISTERED EQUATIONS
  162. ;--------------------
  163. ;
  164.  O18.TRST = VCC    ;set three state = Output
  165. /R18 :=  S2    ;register FB1 polarity = high because pin list polarity matches
  166.         ;                 equation polarity.
  167.  O18 := /R18    ;output   FB2 polarity = high because pin list polarity matches
  168.         ;                 equation polarity.                    
  169.  
  170.  
  171.  O19.TRST = VCC    ;set three state = Output
  172.  R19 :=  S2    ;register FB1 polarity = low because pin list polarity is 
  173.         ;                 different from equation polarity.
  174. /O19 :=  R19    ;output   FB2 polarity = low because pin list polarity is 
  175.         ;                 different from equation polarity.   
  176.  
  177.  
  178.  O20.TRST = VCC    ;set three state = Output
  179.  R20 :=  S2    ;register FB1 polarity = high because pin list polarity matches
  180.         ;                 equation polarity.
  181.  O20 :=  R20    ;output   FB2 polarity = low because pin list polarity is 
  182.         ;                 different from equation polarity.     
  183.  
  184.  
  185.  O21.TRST = VCC    ;set three state = Output
  186. /R21 :=  S2    ;register FB1 polarity = low because pin list polarity is 
  187.         ;                 different from equation polarity.
  188. /O21 := /R21    ;output   FB2 polarity = high because pin list polarity matches
  189.         ;                 equation polarity.
  190.  
  191.  
  192. ;EQUATIONS USING THE DYNAMIC BYPASS MUX
  193. ;--------------------------------------
  194. ;if it is desired to switch an output between combinatorial and registered
  195. ;dynamically then the .CMBF function is used as shown below
  196. ;
  197. ;when the .CMBF function is HIGH output = Combinatorial
  198. ;when the .CMBF function is LOW  output = Registered   
  199. ;
  200.  O22.TRST = VCC    ;set three state = Output
  201.  O22.CMBF = I3    ;if I3 = high then O/P = Combinatorial else O/P = Registered
  202. /R22 :=  S2    ;register FB1 polarity = high because pin list polarity matches
  203.                 ;                  equation polarity.                    
  204.  O22 := /R22    ;output   FB2 polarity = high because pin list polarity matches
  205.                 ;                  equation polarity.                    
  206.  
  207.  O23.TRST = VCC    ;set three state = Output
  208.  O23.CMBF = I3    ;if I3 = high then O/P = Combinatorial else O/P = Registered
  209.  R23 :=  S2    ;register FB1 polarity = low because pin list polarity is      
  210.                 ;                 different from equation polarity.     
  211. /O23 :=  R23    ;output   FB2 polarity = low because pin list polarity is      
  212.                 ;                 different from equation polarity.     
  213. ;------------------------------------------------------------------------------
  214. ;simulation
  215. ;
  216. SIM
  217. ;CHECK COMBINATORIAL OUTPUTS
  218. ;---------------------------
  219. SETF     I2  /I3
  220. CHECK     O14 /O15  O16 /O17
  221. SETF    /I2
  222. CHECK   /O14  O15 /O16  O17
  223.  
  224. ;CHECK REGISTERED OUTPUTS
  225. ;------------------------
  226. SETF     I2 /I3
  227. CLOCKF   CLK    
  228. CHECK     O18 /O19  O20 /O21 /R18  R19  R20 /R21
  229. SETF    /I2
  230. CLOCKF   CLK
  231. CHECK   /O18  O19 /O20  O21  R18 /R19 /R20  R21
  232.  
  233. ;CHECK OUTPUT USING DYNAMIC OUTPUT WITH .CMBF=HIGH
  234. ;-------------------------------------------------
  235. SETF     I2 I3    
  236. CHECK     O22 /O23
  237. SETF    /I2
  238. CHECK   /O22  O23
  239.  
  240. ;CHECK OUTPUT USING DYNAMIC BYPASS WITH .CMBF=LOW
  241. ;------------------------------------------------
  242. SETF     I2 /I3
  243. CLOCKF   CLK    
  244. CHECK     O22 /O23 /R18  R19
  245. SETF    /I2
  246. CLOCKF   CLK
  247. CHECK   /O22  O23  R18 /R19
  248.  
  249.