COE 202 Digital Logic Design Combinational Circuits Part
COE 202: Digital Logic Design Combinational Circuits Part 4 Courtesy of Dr. Ahmad Almulhem KFUPM
Objectives • Magnitude comparator • Design of 4 -bit magnitude comparator • Design Examples using MSI components • • Adding Three 4 -bit numbers Building 4 -to-16 Decoders with 2 -to-4 Decoders Getting the larger of 2 numbers (Maximum) Excess-3 Code Converter KFUPM
Magnitude Comparator Definition: A magnitude comparator is a combinational circuit that compares two numbers A & B to determine whether: A > B, or A = B, or A<B n-bit input Inputs First n-bit number A Second n-bit number B n-bit magnitude GT A comparator EQ n-bit input Outputs B 3 output signals (GT, EQ, LT), where: LT GT = 1 IFF A > B EQ = 1 IFF A = B LT = 1 IFF A < B Note: Exactly One of these 3 outputs equals 1, while the other 2 outputs are 0`s KFUPM
Example 1: Magnitude Comparator (4 -bit) Problem: Design a magnitude comparator that compares 2 4 -bit numbers A and B and determines whether: 4 -bit input 4 -bit magnitude A > B, or A A = B, or comparator GT EQ 4 -bit input A<B B KFUPM LE
Example 1: Magnitude Comparator (4 -bit) Solution: Inputs: 8 -bits (A ⇒ 4 -bits , B ⇒ 4 -bits) A and B are two 4 -bit numbers 4 -bit input Let A = A 3 A 2 A 1 A 0 , and 4 -bit magnitude GT A comparator Let B = B 3 B 2 B 1 B 0 EQ Inputs have 28 (256) possible combinations (size of truth table and K-map? ) 4 -bit input B Not easy to design using conventional techniques The circuit possesses certain amount of regularity ⇒ can be designed algorithmically. KFUPM LE
Example 1: Magnitude Comparator (4 -bit) Designing EQ: Define Xi = Ai xnor Bi = Ai Bi + Ai’ Bi’ Xi = 1 IFF Ai = Bi ∀ i =0, 1, 2 and 3 Xi = 0 IFF Ai ≠ Bi Therefore the condition for A = B or EQ=1 IFF A 3= B 3 → (X 3 = 1), and A 2= B 2 → (X 2 = 1), and A 1= B 1 → (X 1 = 1), and A 0= B 0 → (X 0 = 1). Thus, EQ=1 IFF X 3 X 2 X 1 X 0 = 1. In other words, EQ = X 3 X 2 X 1 X 0 KFUPM
Example 1: Magnitude Comparator (4 -bit) Designing GT and LT: GT = 1 if A > B: • If A 3 > B 3 A 3 = 1 and B 3 = 0 • If A 3 = B 3 and A 2 > B 2 • If A 3 = B 3 and A 2 = B 2 and A 1 > A 1 • If A 3 = B 3 and A 2 = B 2 and A 1 = B 1 and A 0 > B 0 Therefore, GT = A 3 B 3‘ + X 3 A 2 B 2‘ + X 3 X 2 A 1 B 1‘ + X 3 X 2 X 1 A 0 B 0‘ Similarly, LT = A 3’B 3 + X 3 A 2‘B 2 + X 3 X 2 A 1’B 1 + X 3 X 2 X 1 A 0’ B 0 KFUPM
Example 1: Magnitude Comparator (4 -bit) EQ = X 3 X 2 X 1 X 0 GT = A 3 B 3’ + X 3 A 2 B 2 ’ + X 3 X 2 A 1 B 1 ’ + X 3 X 2 X 1 A 0 B 0 ’ LT = B 3 A 3’ + X 3 B 2 A 2 ’ + X 3 X 2 B 1 A 1 ’ + X 3 X 2 X 1 B 0 A 0 ’ 4 -bit magnitude comparator KFUPM
Example 1: Magnitude Comparator (4 -bit) • Do you need all three outputs? • Two outputs can tell about the third one • Example: when A is NOT GREATER THAN B, and A is NOT LESS THAN B THEN A is EQUAL TO B • Therefore, we can save some logic gates: 4 -bit input 4 -bit magnitude GT A comparator EQ EQ 4 -bit input B LT KFUPM
Example 2: Adding three 4 -bit numbers Problem: Add three 4 -bit numbers using standard MSI combinational components Solution: Let the numbers be X 3 X 2 X 1 X 0, Y 3 Y 2 Y 1 Y 0, Z 3 Z 2 Z 1 Z 0 , X 3 X 2 X 1 X 0 + Y 3 Y 2 Y 1 Y 0 ---------C 4 S 3 S 2 S 1 S 0 + Z 3 Z 2 Z 1 Z 0 ---------D 4 F 3 F 2 F 1 F 0 Note: C 4 and D 4 is generated in position 4. They must be added to generate the most significant bits of the result KFUPM
Example 2: Adding three 4 -bit numbers Problem: Add three 4 -bit numbers using standard MSI combinational components Solution: Let the numbers be X 3 X 2 X 1 X 0, Y 3 Y 2 Y 1 Y 0, Z 3 Z 2 Z 1 Z 0 , X 3 X 2 X 1 X 0 + Y 3 Y 2 Y 1 Y 0 ---------C 4 S 3 S 2 S 1 S 0 + Z 3 Z 2 Z 1 Z 0 ---------D 4 F 3 F 2 F 1 F 0 Note: C 4 and D 4 is generated in position 4. They must be added to generate the most significant bits of the result KFUPM
Example 2: Adding three 4 -bit numbers KFUPM
Example 3: 4 -to-16 Decoder Problem: Design a 4 x 16 Decoder using 2 x 4 Decoders A 3 A 2 = 00 Solution: • Each group combination holds a unique value for A 3 A 2 - One Decoder can be therefore used with inputs: A 3 A 2 Four more decoders are needed for representing each individual color combination KFUPM A 3 A 2 = 01 A 3 A 2 = 10 A 3 A 2 = 11 A 3 A 2 A 1 A 0 Output 0 0 D 0 0 1 D 1 0 0 1 0 D 2 0 0 1 1 D 3 0 1 0 0 D 4 0 1 D 5 0 1 1 0 D 6 0 1 1 1 D 7 1 0 0 0 D 8 1 0 0 1 D 9 1 0 D 10 1 1 D 11 1 1 0 0 D 12 1 1 0 1 D 13 1 1 1 0 D 14 1 1 D 15
Example 3: 4 -to-16 Decoder A 0 A 1 A 2 A 3 2 x 4 Decoder D 0 D 1 D 2 D 3 2 x 4 Decoder D 4 D 5 D 6 D 7 2 x 4 Decoder D 8 D 9 D 10 D 11 2 x 4 Decoder D 12 D 13 D 14 D 15 2 x 4 Decoder A 0 A 1 KFUPM
Example 4: The larger of 2 numbers Problem: Given two 4 -bit unsigned numbers, design a circuit such that the output is the larger of the two numbers Solution: We will use a magnitude comparator and a Quad 2 x 1 MUX. How? KFUPM
Example 4: The larger of 2 numbers B 0 B 1 B 2 A 0 A 1 A 2 A 3 B 0 B 1 4 -bit A>B B 3 GT A 0 Magnitude A<B LT Comparator A=B A 1 EQ A 2 B 2 QUAD 2 X 1 MUX A 3 B 3 S 0 Y 1 Y 2 Y 3 For So=1, A is selected, For So=0, B is selected KFUPM
Example 5: Excess-3 Code Converter Problem: Design an excess-3 code converter that takes as input a BCD number, and generates an excess-3 output. Solution: Use decoders and encoders W X Y Z A B C D 0 0 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 1 1 0 0 1 1 0 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 KFUPM
Example 5: Excess-3 Code Converter 4 -to-16 line Decoder Z Y X W D 0 D 1 D 2 D 3 O 0 O 1 O 2 O 3 O 4 O 5 O 6 O 7 O 8 O 9 O 10 O 11 O 12 O 13 O 14 O 15 16 -to-4 line Encoder I 0 I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8 I 9 I 10 I 11 I 12 I 13 I 14 I 15 D 0 D 1 D 2 D 3 What will be the output? KFUPM ? ?
Example 5: Excess-3 Code Converter • A decoder can be used with the inputs being W, X, Y, Z • • It will be a 4 x 16 decoder, with only a single output bit equal to 1 for any input combination An encoder (16 x 4) will take as input the 16 bit output from the decoder, and will generate the appropriate output in excess-3 format For this to function correctly, the output from the decoder must be displaced 3 places while being connected to the encoder input It may be noted that outputs 10, 11, 12, 13, 14, 15 of the decoder are not used – since we are dealing with BCD KFUPM
Summary • Design = Different possibilities • Better designer = more practice • More design examples in the textbook KFUPM
- Slides: 20