home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 15 / 15.iso / s / s079 / 1.img / MAG273.APL < prev    next >
Encoding:
Text File  |  1992-11-17  |  5.1 KB  |  148 lines

  1. TITLE 'APEEL FILE: PEEL273 8-BIT GREATER-THAN/LESS-THAN MAGNITUDE COMPARATOR
  2. DESIGNER: Robin Jigour, ICT
  3. DATE: 10/11/87'
  4.  
  5. PEEL273
  6.  
  7. "DESCRIPTION"
  8.  
  9. "                       PEEL273
  10.  
  11. "    8-Bit Greater-Then/Less-Then Magnitude Comparator
  12. "                     ____  ____
  13. "                    |    \/    |
  14. "                A0  { 1     24 }  Vcc
  15. "                A1  { 2     23 }- A_GT_B   ( - = output )
  16. "                A2  { 3     22 }- A_LT_B
  17. "                A3  { 4     21 }- EQ7
  18. "                A4  { 5     20 }- EQ6
  19. "                A5  { 6     19 }- EQ5
  20. "                A6  { 7     18 }- EQ4
  21. "                A7  { 8     17 }  B7
  22. "                B0  { 9     16 }  B6
  23. "                B1  {10     15 }  B5
  24. "                B2  {11     14 }  B4
  25. "               Gnd  {12     13 }  B3
  26. "                    |__________|
  27.  
  28.  
  29. " This application uses the PEEL273 to implement a magnitude comparator
  30. " that compares two groups of eight inputs (A0-7 and B0-7) to provide
  31. " both greater-then (AB) and less-then (A) outputs. The comparator can
  32. " be cascaded by connecting the A_GT_B and A_LT_B outputs of up to
  33. " eight PEEL273s to the An and Bn inputs a next level PEEL273.
  34. " Thus nine PEEL273s would allow for a 64-bit magnitude comparator.
  35.  
  36. " Comparators, especially magnitude comparators use many exclusive-OR
  37. " functions for testing for equality or inequality.  Because of this,
  38. " the sum-of-product equations for just one output of the magnitude
  39. " comparator requires 2 to the n-1 product terms per bit.  With eight
  40. " bits that comes to 255 product terms per sum, more then are available
  41. " with even the PEEL273.  However, by using multi-level logic many of
  42. " the high order exclusive-OR functions (EQ4-EQ7) are first implemented
  43. " and then used in the final magnitude comparator output equations,
  44. " thus, reducing product terms to 39.
  45.  
  46.  
  47. "PIN DEFINITIONS"
  48.  
  49. "Inputs"
  50.  
  51. A0       pin  1
  52. A1       pin  2
  53. A2       pin  3
  54. A3       pin  4
  55. A4       pin  5
  56. A5       pin  6
  57. A6       pin  7
  58. A7       pin  8
  59. B7       pin  9
  60. B6       pin 10
  61. B5       pin 11
  62. B4       pin 13
  63. B3       pin 14          "Pins 14-17, default polarity = pos.
  64. B2       pin 15
  65. B1       pin 16
  66. B0       pin 17
  67.  
  68.  
  69. "Outputs
  70.  
  71. E4       pin 18 = NEG  "E4-E7 are used to minimize equation product terms.
  72. E5       pin 19 = NEG
  73. E6       pin 20 = NEG
  74. E7       pin 21 = NEG
  75. A_LT_B   pin 22 = POS
  76. A_GT_B   pin 23 = POS
  77.  
  78.  
  79. EQUATIONS
  80.  
  81. Enable A_GT_B = 1      "Enable outputs (unconditionally).
  82. Enable A_LT_B = 1
  83. Enable E7     = 1
  84. Enable E6     = 1
  85. Enable E5     = 1
  86. Enable E4     = 1
  87.  
  88. E7  = !( A7 & !B7 #     "A7=B7  (XNOR)
  89.         !A7 &  B7)
  90.  
  91. E6  = !( A6 & !B6 #     "A6=B6  (XNOR)
  92.         !A6 &  B6)
  93.  
  94. E5  = !( A5 & !B5 #     "A5=B5  (XNOR)
  95.         !A5 &  B5)
  96.  
  97. E4  = !( A4 & !B4 #     "A4=B4  (XNOR)
  98.         !A4 &  B4)
  99.  
  100.  
  101. A_GT_B = A7 & !B7 #
  102.          E7 & A6 & !B6 #
  103.          E7 & E6 & A5 & !B5 #
  104.          E7 & E6 & E5 & A4 & !B4 #
  105.          E7 & E6 & E5 & E4 &  A3 & !B3 #
  106.          E7 & E6 & E5 & E4 & !A3 & !B3 &  A2 & !B2 #
  107.          E7 & E6 & E5 & E4 &  A3 &  B3 &  A2 & !B2 #
  108.          E7 & E6 & E5 & E4 & !A3 & !B3 & !A2 & !B2 &  A1 & !B1 #
  109.          E7 & E6 & E5 & E4 & !A3 & !B3 &  A2 &  B2 &  A1 & !B1 #
  110.          E7 & E6 & E5 & E4 &  A3 &  B3 & !A2 & !B2 &  A1 & !B1 #
  111.          E7 & E6 & E5 & E4 &  A3 &  B3 &  A2 &  B2 &  A1 & !B1 #
  112.          E7 & E6 & E5 & E4 & !A3 & !B3 & !A2 & !B2 & !A1 & !B1 & A0 & !B0 #
  113.          E7 & E6 & E5 & E4 & !A3 & !B3 & !A2 & !B2 &  A1 &  B1 & A0 & !B0 #
  114.          E7 & E6 & E5 & E4 & !A3 & !B3 &  A2 &  B2 & !A1 & !B1 & A0 & !B0 #
  115.          E7 & E6 & E5 & E4 & !A3 & !B3 &  A2 &  B2 &  A1 &  B1 & A0 & !B0 #
  116.          E7 & E6 & E5 & E4 &  A3 &  B3 & !A2 & !B2 & !A1 & !B1 & A0 & !B0 #
  117.          E7 & E6 & E5 & E4 &  A3 &  B3 & !A2 & !B2 &  A1 &  B1 & A0 & !B0 #
  118.          E7 & E6 & E5 & E4 &  A3 &  B3 &  A2 &  B2 & !A1 & !B1 & A0 & !B0 #
  119.          E7 & E6 & E5 & E4 &  A3 &  B3 &  A2 &  B2 &  A1 &  B1 & A0 & !B0
  120.  
  121. A_LT_B = !A_GT_B & !E7  #
  122.          !A_GT_B & !E6  #
  123.          !A_GT_B & !E5  #
  124.          !A_GT_B & !E4  #
  125.          !A_GT_B &  A3 & !B3  #
  126.          !A_GT_B & !A3 &  B3  #
  127.          !A_GT_B &  A2 & !B2  #
  128.          !A_GT_B & !A2 &  B2  #
  129.          !A_GT_B &  A1 & !B1  #
  130.          !A_GT_B & !A1 &  B1  #
  131.          !A_GT_B &  A0 & !B0  #
  132.          !A_GT_B & !A0 &  B0
  133.  
  134.  
  135. TEST_VECTORS
  136.  
  137. ( A7 A6 A5 A4 A3 A2 A1 A0  B7 B6 B5 B4 B3 B2 B1 B0  ->  A_GT_B  A_LT_B )
  138.    0  0  0  0  0  0  0  0   0  0  0  0  0  0  0  0  ->     L      L
  139.    0  0  0  0  0  0  0  1   0  0  0  0  0  0  0  0  ->     H      L
  140.    0  0  0  0  0  0  0  0   0  0  0  0  0  0  0  1  ->     L      H
  141.    1  0  1  0  1  0  1  0   1  0  1  0  1  0  1  0  ->     L      L
  142.    1  0  1  0  1  0  1  0   0  1  0  1  0  1  0  1  ->     H      L
  143.    0  1  0  1  0  1  0  1   1  0  1  0  1  0  1  0  ->     L      H
  144.    1  1  1  1  1  1  1  1   1  1  1  1  1  1  1  1  ->     L      L
  145.    1  1  1  1  1  1  1  1   1  1  1  1  1  1  1  0  ->     H      L
  146.    1  1  1  1  1  1  1  0   1  1  1  1  1  1  1  1  ->     L      H
  147.  
  148.