home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / tech / palsum5 / dec_r8.pds < prev    next >
Text File  |  1987-08-26  |  5KB  |  213 lines

  1. TITLE B8ZS_DECODER
  2. PATTERN B8ZS DECODER PAL
  3. REVISION 1.04
  4. AUTHOR THERESA SHAFER
  5. COMPANY MMI
  6. DATE 11/24/86
  7.  
  8. CHIP B8ZS_DECODER PAL16R8
  9.  
  10. T1_CK /RST PPI NPI NC NC NC NC NC GND
  11. /OE NC Q0 Q1 Q2 Q3 /BPV /B8ZS DATA VCC
  12.  
  13. ; INPUTS:   T1_CK    EXTERNAL CLOCK
  14. ;           /OE         ACTIVE LOW OUTPUT ENABLE SIGNAL
  15. ;           /RST        ACTIVE LOW MASTER RESET SIGNAL
  16. ;            PPI        SERIAL POSITIVE PUSLE DATA STREAM
  17. ;                        TO BE DECODED
  18. ;            NPI        SERIAL NEGATIVE PUSLE DATA STREAM
  19. ;                        TO BE DECODED
  20.   
  21. ;  OUTPUTS:   DATA      DATA  WHICH IS LOADED INTO  THE  SHIFT
  22. ;                        REGISTER
  23. ;           Q3 - Q0     STATE MACHINE OUTPUTS
  24. ;            /BPV       LOW ACTIVE SIGNAL WHICH INDICATES THAT
  25. ;                        BIPOLAR VIOLATION HAS OCCURRED
  26. ;            /B8ZS      LOW ACTIVE SIGNAL WHICH INDICATES THAT
  27. ;                        ZERO SUBSTITUTION HAS OCCURRED
  28.  
  29. EQUATIONS
  30.  
  31. ; DATA OUTPUT
  32.  
  33. /DATA := /PPI * /NPI;
  34.  
  35. ; /BPV AND /B8ZS FLAGS
  36.  
  37. BPV := PPI * /Q2 * Q1
  38.      + PPI * /Q3 * Q2 * /Q0
  39.      + NPI * Q2 * Q1
  40.      + NPI * /Q3 * Q1 * /Q0
  41.      + /PPI * /Q2 * /Q1 * Q0
  42.      + /PPI * Q3 * /Q1 * Q0
  43.      + /NPI * /Q3 * Q2 * /Q1
  44.      + /NPI * Q2 * /Q1 * /Q0;
  45.  
  46. B8ZS := /PPI * NPI * /Q3 * Q2 * /Q1 * Q0
  47.      + PPI * /NPI * Q3 * Q2 * /Q1 * Q0;
  48.  
  49. ; STATE MACHINE WHICH DETECTS B8ZS SEQUENCE
  50. ; STATE VARIABLES [Q3,Q2,Q1,Q0]
  51. ; WITH THE FOLLOWING STATE ASSIGNMENTS
  52. ;      SP0 = [0,0,1,1]
  53. ;      SP1 = [1,0,1,1]
  54. ;      SP2 = [1,0,1,0]
  55.  
  56. ;      SP3 = [0,0,0,0]
  57. ;      SP4 = [0,1,0,0]
  58. ;      SP5 = [0,0,1,0]
  59. ;      SP6 = [1,1,0,0]
  60. ;      SP7 = [1,1,0,1]
  61. ;      SN0 = [1,1,1,1]
  62. ;      SN1 = [0,1,1,1]
  63. ;      SN2 = [1,1,1,0]
  64. ;      SN3 = [1,0,0,0]
  65. ;      SN4 = [1,0,0,1]
  66. ;      SN5 = [0,1,1,0]
  67. ;      SN6 = [0,0,0,1]
  68. ;      SN7 = [0,1,0,1]
  69.  
  70.  
  71. /Q3 := PPI * /RST
  72.      + /NPI * /Q3 * /Q2 * /Q1 * /Q0 * /RST
  73.      + /NPI * Q3 * /Q2 * Q1 * /Q0 * /RST
  74.      + /NPI * /Q3 * Q2 * Q1 * /Q0 * /RST
  75.      + /NPI * Q3 * /Q1 * Q0 * /RST
  76.      + /NPI * Q3 * Q2 * Q0 * /RST
  77.      + NPI * /Q3 * Q2 */Q1 * /Q0 * /RST;
  78.  
  79. /Q2 := PPI * Q1 * /RST
  80.      + PPI * Q2 * /RST
  81.      + /NPI * /Q3 * Q2 * /Q0 * /RST
  82.      + /NPI * Q3 * Q1 * /Q0 * /RST
  83.      + /PPI * /NPI * /Q3 * /Q1 * /RST
  84.      + /NPI * /Q2 * Q1 * Q0 * /RST
  85.      + Q3 * /Q2 * /Q1 * /Q0 * /RST
  86.      + /Q3* Q2 * /Q1 * /Q0 * /RST;
  87.  
  88. /Q1 := PPI * /Q3 * /Q2 * /Q1 * /RST
  89.      + /PPI * /NPI * /Q2 * /Q0 * /RST
  90.      + /PPI * /NPI * Q1 * /Q0 * /RST
  91.      + /PPI * NPI * Q3 * /Q1 * /Q0 * /RST;
  92.  
  93. /Q0 := PPI * /Q3 * /Q2 * /Q1 * /Q0 * /RST
  94.      + PPI * Q3 * /Q2 * /Q1 * Q0 * /RST
  95.      + /PPI * /NPI * /Q2 * /Q0 * /RST
  96.      + /PPI * /NPI * Q3 * /Q0 * /RST
  97.      + /PPI * /NPI * /Q3 * /Q2 * /Q1 * /RST
  98.      + /PPI * /NPI * Q3 * /Q2 * Q1 * /RST
  99.      + /PPI * /NPI * /Q3 * Q2 * Q1 * Q0 * /RST
  100.      + /PPI * NPI * /Q3 * Q2 * /Q1 * /Q0 * /RST;
  101.  
  102. ; .........................................................
  103. ; .........................................................
  104.  
  105. SIMULATION
  106.  
  107. TRACE_ON T1_CK /OE /RST PPI NPI
  108.          Q3 Q2 Q1 Q0 /BPV /B8ZS
  109.  
  110. SETF OE               ; ENABLE OUTPUT
  111.  
  112.      RST              ; RESET
  113.      /PPI /NPI
  114. CLOCKF T1_CK
  115. SETF RST
  116. CLOCKF T1_CK
  117. SETF /PPI /NPI
  118.      /RST
  119. CLOCKF T1_CK
  120.  
  121. ; NORMAL DECODING
  122. SETF PPI /NPI
  123. CLOCKF T1_CK
  124. SETF /PPI /NPI
  125. CLOCKF T1_CK
  126. SETF /PPI NPI
  127. CLOCKF T1_CK
  128. SETF /PPI /NPI
  129. CLOCKF T1_CK
  130. SETF PPI /NPI
  131. CLOCKF T1_CK
  132. SETF /PPI NPI
  133.  
  134. CLOCKF T1_CK
  135. SETF PPI /NPI
  136. CLOCKF T1_CK
  137.  
  138. ; DETECT B8ZS SEQUENCE
  139. ; + SEQUENCE
  140. SETF /PPI /NPI
  141. CLOCKF T1_CK
  142. SETF /PPI /NPI
  143. CLOCKF T1_CK
  144. SETF /PPI /NPI
  145. CLOCKF T1_CK
  146. SETF PPI /NPI
  147. CLOCKF T1_CK
  148. SETF /PPI NPI
  149. CLOCKF T1_CK
  150. SETF /PPI /NPI
  151. CLOCKF T1_CK
  152. SETF /PPI NPI
  153. CLOCKF T1_CK
  154. SETF PPI /NPI
  155. CLOCKF T1_CK
  156. ; SET-UP FOR NEXT SEQUENCE
  157. SETF /PPI NPI
  158. CLOCKF T1_CK
  159. ; - SEQUENCE
  160. SETF /PPI /NPI
  161. CLOCKF T1_CK
  162. SETF /PPI /NPI
  163. CLOCKF T1_CK
  164. SETF /PPI /NPI
  165. CLOCKF T1_CK
  166. SETF /PPI NPI
  167. CLOCKF T1_CK
  168. SETF PPI /NPI
  169.  
  170. CLOCKF T1_CK
  171. SETF /PPI /NPI
  172. CLOCKF T1_CK
  173. SETF PPI /NPI
  174. CLOCKF T1_CK
  175. SETF /PPI NPI
  176. CLOCKF T1_CK
  177.  
  178. ; DETECT BIPOLAR VIOLATIONS
  179. SETF /PPI /NPI
  180. CLOCKF T1_CK
  181. SETF PPI /NPI
  182. CLOCKF T1_CK
  183. SETF /PPI /NPI
  184. CLOCKF T1_CK
  185. SETF PPI /NPI
  186. CLOCKF T1_CK
  187. SETF /PPI NPI
  188. CLOCKF T1_CK
  189. SETF /PPI /NPI
  190. CLOCKF T1_CK
  191. SETF /PPI /NPI
  192. CLOCKF T1_CK
  193. SETF /PPI /NPI
  194. CLOCKF T1_CK
  195. SETF /PPI NPI
  196. CLOCKF T1_CK
  197. SETF PPI /NPI
  198. CLOCKF T1_CK
  199. SETF /PPI /NPI
  200. CLOCKF T1_CK
  201. SETF /PPI /NPI
  202. CLOCKF T1_CK
  203. SETF /PPI /NPI
  204. CLOCKF T1_CK
  205. SETF /PPI /NPI
  206. CLOCKF T1_CK
  207. SETF PPI /NPI
  208. CLOCKF T1_CK
  209.  
  210. TRACE_OFF
  211.  
  212.