Magnitude Comparator Lecture L 6 4 Section 6

  • Slides: 23
Download presentation
Magnitude Comparator Lecture L 6. 4 Section 6. 1

Magnitude Comparator Lecture L 6. 4 Section 6. 1

4 -Bit Equality Detector A[3. . 0] B[3. . 0] Equality Detector A_EQ_B

4 -Bit Equality Detector A[3. . 0] B[3. . 0] Equality Detector A_EQ_B

Magnitude Comparator A[3. . 0] B[3. . 0] Magnitude Detector A_LT_B A_EQ_B A_GT_B

Magnitude Comparator A[3. . 0] B[3. . 0] Magnitude Detector A_LT_B A_EQ_B A_GT_B

Magnitude Comparator How can we find A_GT_B? How many rows would a truth table

Magnitude Comparator How can we find A_GT_B? How many rows would a truth table have? 28 = 256!

Magnitude Comparator Find A_GT_B If A = 1001 and B = 0111 is A

Magnitude Comparator Find A_GT_B If A = 1001 and B = 0111 is A > B? Why? Because A 3 > B 3 i. e. A 3 & !B 3 = 1 Therefore, one term in the logic equation for A_GT_B is A 3 & !B 3

Magnitude Comparator A_GT_B = A 3 & !B 3 # …. . If A

Magnitude Comparator A_GT_B = A 3 & !B 3 # …. . If A = 1101 and B = 1011 is A > B? Why? Because A 3 = B 3 and A 2 > B 2 i. e. C 3 = 1 and A 2 & !B 2 = 1 Therefore, the next term in the logic equation for A_GT_B is C 3 & A 2 & !B 2

Magnitude Comparator A_GT_B = A 3 & !B 3 # C 3 & A

Magnitude Comparator A_GT_B = A 3 & !B 3 # C 3 & A 2 & !B 2 # …. . Because A 3 = B 3 and A 2 = B 2 and A 1 > B 1 i. e. C 3 = 1 and C 2 = 1 and A 1 & !B 1 = 1 If A = 1010 and B = 1001 is A > B? Therefore, the next term in the Why? logic equation for A_GT_B is C 3 & C 2 & A 1 & !B 1

Magnitude Comparator A_GT_B = A 3 & !B 3 # C 3 & A

Magnitude Comparator A_GT_B = A 3 & !B 3 # C 3 & A 2 & !B 2 # C 3 & C 2 & A 1 & !B 1 # …. . Because A 3 = B 3 and A 2 = B 2 and A 1 = B 1 and If A = 1011 and A 0 > B 0 B = 1010 i. e. C 3 = 1 and C 2 = 1 and is A > B? C 1 = 1 and A 0 & !B 0 = 1 Why? Therefore, the last term in the logic equation for A_GT_B is C 3 & C 2 & C 1 & A 0 & !B 0

Magnitude Comparator A_GT_B = A 3 & !B 3 # C 3 & A

Magnitude Comparator A_GT_B = A 3 & !B 3 # C 3 & A 2 & !B 2 # C 3 & C 2 & A 1 & !B 1 # C 3 & C 2 & C 1 & A 0 & !B 0

Magnitude Comparator Find A_LT_B = !A 3 & B 3 # C 3 &

Magnitude Comparator Find A_LT_B = !A 3 & B 3 # C 3 & !A 2 & B 2 # C 3 & C 2 & !A 1 & B 1 # C 3 & C 2 & C 1 & !A 0 & B 0

ABEL Program MODULE magcomp 4 TITLE '4 -BIT COMPARATOR, R. Haskell, 9/21/02‘ DECLARATIONS "

ABEL Program MODULE magcomp 4 TITLE '4 -BIT COMPARATOR, R. Haskell, 9/21/02‘ DECLARATIONS " INPUT PINS " A 3. . A 0 PIN 11, 7, 6, 5; A = [A 3. . A 0]; B 3. . B 0 PIN 4, 3, 2, 1; B = [B 3. . B 0]; " OUTPUT PINS " A_EQ_B PIN 36; A_LT_B PIN 35; A_GT_B PIN 37; C 3. . C 0 NODE; C = [C 3. . C 0];

ABEL Program (cont. ) EQUATIONS C = !(A $ B); A_EQ_B = C 0

ABEL Program (cont. ) EQUATIONS C = !(A $ B); A_EQ_B = C 0 & C 1 & C 2 & C 3; A_GT_B = A 3 & !B 3 # C 3 & A 2 & !B 2 # C 3 & C 2 & A 1 & !B 1 # C 3 & C 2 & C 1 & A 0 & !B 0; A_LT_B = !A 3 & B 3 # C 3 & !A 2 & B 2 # C 3 & C 2 & !A 1 & B 1 # C 3 & C 2 & C 1 & !A 0 & B 0;

TTL Comparators 1 B 3 16 Vcc 2 A<Bin A 3 15 3 B

TTL Comparators 1 B 3 16 Vcc 2 A<Bin A 3 15 3 B 2 14 A=Bin 4 A>Bin A 2 13 5 12 A>Bout A 1 6 A=Bout B 1 11 7 A<Bout A 0 10 8 GND B 0 9 74 LS 85 1 P>Q 2 P 0 3 Q 0 4 P 1 5 Q 1 6 P 2 7 Q 2 8 P 3 9 Q 3 10 GND 20 Vcc P=Q 19 Q 7 18 17 P 7 Q 6 16 15 P 6 Q 5 14 P 5 13 Q 4 12 P 4 11 74 LS 682

Cascading two 74 LS 85 s

Cascading two 74 LS 85 s

Question P_GT_Q 1 2 3 4 5 6 P>Q P 0 Q 0 P

Question P_GT_Q 1 2 3 4 5 6 P>Q P 0 Q 0 P 1 Q 1 P 2 7 Q 2 8 P 3 9 Q 3 10 GND Vcc 20 P=Q 19 Q 7 18 P 7 17 Q 6 16 15 P 6 Q 5 14 P 5 13 12 Q 4 P 4 11 74 LS 682 P_EQ_Q P_LT_Q Draw a logic circuit for what is in the green box.

Answer Outputs: Y = !(P_GT_Q) Z = !(P_EQ_Q) P_GT_Q = !Y NOT GATE P_EQ_Q

Answer Outputs: Y = !(P_GT_Q) Z = !(P_EQ_Q) P_GT_Q = !Y NOT GATE P_EQ_Q = !Z NOT GATE P_LT_Q = !(P_GT_Q) & !(P_EQ_Q) =Y&Z AND GATE P_LT_Q = !(P_GT_Q # P_EQ_Q) = !(!Y # !Z) NOR GATE =Y&Z AND GATE

Comparator Using Behavioral ABEL MODULE comp 4 bit TITLE '4 -BIT COMPARATOR, R. Haskell,

Comparator Using Behavioral ABEL MODULE comp 4 bit TITLE '4 -BIT COMPARATOR, R. Haskell, 7/29/02' DECLARATIONS " INPUT PINS " A 3. . A 0 PIN 11, 7, 6, 5; A = [A 3. . A 0]; B 3. . B 0 PIN 4, 3, 2, 1; B = [B 3. . B 0]; A_EQ_B PIN 36; A_LT_B PIN 35; A_GT_B PIN 37;

Comparator Using Behavioral ABEL EQUATIONS A_EQ_B = (A == B); A_GT_B = (A >

Comparator Using Behavioral ABEL EQUATIONS A_EQ_B = (A == B); A_GT_B = (A > B); A_LT_B = !((A == B) # (A > B));

Comparator Using Behavioral ABEL test_vectors ([A, B] -> [A_EQ_B, A_LT_B, A_GT_B]) [0, 0] ->

Comparator Using Behavioral ABEL test_vectors ([A, B] -> [A_EQ_B, A_LT_B, A_GT_B]) [0, 0] -> [1, 0, 0]; [2, 5] -> [0, 1, 0]; [10, 12] -> [0, 1, 0]; [7, 8] -> [0, 1, 0]; [4, 2] -> [0, 0, 1]; [6, 6] -> [1, 0, 0]; [1, 7] -> [0, 1, 0]; [5, 13] -> [0, 1, 0]; [12, 0] -> [0, 0, 1]; [6, 3] -> [0, 0, 1]; [9, 9] -> [1, 0, 0]; [12, 13] -> [0, 1, 0]; [7, 0] -> [0, 0, 1]; [4, 1] -> [0, 0, 1]; [3, 2] -> [0, 0, 1]; [15, 15] -> [1, 0, 0]; END