ece 301 – digital electronics multi-bit adder circuits, multiplier circuit, and magnitude...
TRANSCRIPT
![Page 1: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/1.jpg)
ECE 301 – Digital Electronics
Multi-bit Adder Circuits,Multiplier Circuit,
andMagnitude Comparator Circuit
(Lecture #11)
![Page 2: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/2.jpg)
ECE 301 - Digital Electronics 2
Implementations of Multi-bit Adders:
1. Ripple Carry Adder2. Carry Lookahead Adder
![Page 3: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/3.jpg)
ECE 301 - Digital Electronics 3
Carry Lookahead Adder
![Page 4: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/4.jpg)
ECE 301 - Digital Electronics 4
Carry Lookahead Adder
1 0 1 0
0 0 0 1+
1
Carry Generate
1 1 0 0
Carry End
11
Carry Propagate
0 1 1 1
1 0 1 0
0 0 0 1
0 0
1 0
1 0
11
X
Y
![Page 5: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/5.jpg)
ECE 301 - Digital Electronics 5
Carry Lookahead Adder Carry Generate
Gi = X
i . Y
i
Always generates a carry if Gi evaluates to true.
Carry Propagate P
i = X
i xor Y
i
Propagates a carry if Pi evaluates to true AND
there is a carry-in into the adder stage. Carry-in into the first adder stage. Carry-out generated in the previous adder stage.
![Page 6: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/6.jpg)
ECE 301 - Digital Electronics 6
The Full Adder in terms of Pi and G
i
Pi = A
i xor B
i
Gi = A
i.B
i
Si = A
i xor B
i xor C
i
Ci+1
= Ai.B
i + A
i.C
i + B
i.C
i
![Page 7: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/7.jpg)
ECE 301 - Digital Electronics 7
Carry Lookahead Adder
The Carry Generate (Gi) and Carry Propagate
(Pi) can be created directly from the inputs.
no ripple delay only 1 gate delay
![Page 8: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/8.jpg)
ECE 301 - Digital Electronics 8
Carry Lookahead Adder
Cout,i
is a function of Gi and P
i
Cout,i
= (Xi.Y
i) + ( (X
i + Y
i).(C
in,i) )
This is the Cout of the Full Adder
Cout,i
= (Gi) + ( (P
i).(C
in,i) )
where Cin,i
= Cout,i-1
![Page 9: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/9.jpg)
ECE 301 - Digital Electronics 9
Carry Lookahead Adder
For the LSB, C
out,0 = (G
0) + ( (P
0).(C
in,0) )
no ripple delay
![Page 10: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/10.jpg)
ECE 301 - Digital Electronics 10
Carry Lookahead Adder For LSB+1:
Cout,1 = (G1) + ( (P1) . Cin,1 )
Cout,1 = (G1) + ( (P1) . Cout,0 )
Cout,1 = (G1) + ( (P1) . (G0 + P0.Cin,0) )
Cout,1 = G1 + P1.G0 + P1.P0.Cin,0 All G and P terms derived directly from
associated inputs No ripple delay
![Page 11: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/11.jpg)
ECE 301 - Digital Electronics 11
Carry Lookahead Adder For LSB+2:
Cout,2 = (G2) + ( (P2) . Cin,2 )
Cout,2 = (G2) + ( (P2) . Cout,1 )
Cout,2 = (G2) + ( (P2) . (G1 + P1.Cin,1) )
Cout,2
= (G2) + ( (P
2) . (G
1 + P
1.C
out,0) )
Cout,2 = G2 + P2.G1 + P2.P1.Cout,0
Similar for LSB+3, LSB+4, etc.
Must be expanded in terms of G
0, P
0,
and Cin,0
![Page 12: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/12.jpg)
ECE 301 - Digital Electronics 12
Carry Lookahead Adder Sum: Si is a function of Xi, Yi, and Cin,i
Si = X
i xor Y
i xor C
in,i
Si = X
i xor Y
i xor C
out,i-1
Carry: Cout,i derived from Gi and Pi
Gi and P
i are functions of the inputs
Carries do not ripple from one stage to the next Delay ~ log
2(n)
Area required ~ (n)*(log2(n))
Greater than area required for RCA
![Page 13: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/13.jpg)
ECE 301 - Digital Electronics 13
Carry Lookahead Adder
![Page 14: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/14.jpg)
ECE 301 - Digital Electronics 14
Carry Lookahead Adder
![Page 15: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/15.jpg)
ECE 301 - Digital Electronics 15
Carry Lookahead Adder
74LS283: 4-bit Binary Adder with Fast Carry
![Page 16: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/16.jpg)
ECE 301 - Digital Electronics 16
Adder/Subtractor using 2's Complement
![Page 17: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/17.jpg)
ECE 301 - Digital Electronics 17
Adder / Subtractor using Two’s Complement
Could build separate binary adder and subtractor Not common
Use Two’s Complement integer representation Addition uses binary adder Subtraction uses binary adder with the Two’s
Complement representation for the subtrahend Issues
Cannot directly convert the most negative n-bit binary number to its (positive) magnitude in Two’s Complement representation
Must detect overflow
![Page 18: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/18.jpg)
ECE 301 - Digital Electronics 18
Adder / Subtractor
![Page 19: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/19.jpg)
ECE 301 - Digital Electronics 19
Detecting Overflow Compare sign of operands with sign of result
Overflow occurs if operands have same sign and result has different sign
Addition of two positive #s results in negative # Addition of two negative #s results in positive #
Logic function(s) for overflow (for 4-bit Adder)
Overflow = X3.Y
3.S
3' + X
3'.Y
3'.S
3
Overflow = C3 xor C
4 = C
3'.C
4 + C
3.C
4'
![Page 20: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/20.jpg)
ECE 301 - Digital Electronics 20
Multiplier Circuit
![Page 21: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/21.jpg)
ECE 301 - Digital Electronics 21
Multiplier Circuit
Multiplication requires two basic operations:
Addition Logical Shift
A binary multiplier circuit can be designed hierarchically using
Full Adders AND gates
![Page 22: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/22.jpg)
ECE 301 - Digital Electronics 22
Binary Multiplication
1 1 1 0
1 1 1 01 0 1 1
1 1 1 0
1 0 0 1 1 0 1 0
Multiplicand MMultiplier Q
Product P
(11)(14)
(154)
+
1 0 1 0 10 0 0 0+
0 1 0 1 0
1 1 1 0+
Partial product 0
Partial product 1
Partial product 2
4 bits
4 bits
8 bits
# of bits in P = # of bits in M + # of bits in Q
![Page 23: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/23.jpg)
ECE 301 - Digital Electronics 23
Binary Multiplication M (Multiplicand) = m3m2
m1m
0
Q (Multiplier) = q3q
2q
1q
0
PP0 = m3.q0 m
2.q
0 m
1.q
0 m
0.q
0
0 pp03 pp0
2 pp0
1 pp0
0
+ m3.q1m
2.q
1 m
1.q
1 m
0.q
1 0
PP1 = pp14 pp13 pp1
2 pp1
1 pp1
0
partialproduct
![Page 24: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/24.jpg)
ECE 301 - Digital Electronics 24
Multiplier Circuit
PP1
PP2
![Page 25: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/25.jpg)
ECE 301 - Digital Electronics 25
Multiplier Circuit
Bit of PPi
![Page 26: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/26.jpg)
ECE 301 - Digital Electronics 26
Magnitude Comparator
![Page 27: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/27.jpg)
ECE 301 - Digital Electronics 27
Magnitude Comparator
How many rows are there in the Truth Table for an n-bit magnitude comparator?
For a 2-bit magnitude comparator 4 inputs, 16 rows
For a 3-bit magnitude comparator 6 inputs, 64 rows
For an n-bit magnitude comparator 2n inputs, 22n rows
![Page 28: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/28.jpg)
ECE 301 - Digital Electronics 28
Magnitude Comparator
Designing a magnitude comparator using a Truth Table is too cumbersome.
The magnitude comparator has a certain amount of regularity.
Take advantage of the regularity.
Design the circuit using an algorithm.
![Page 29: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/29.jpg)
ECE 301 - Digital Electronics 29
Magnitude Comparator
A = a3a
2a
1a
0B = b
3b
2b
1b
0
Xi = a
i.b
i + a
i'.b
i' = a
i xnor b
i(equivalence)
(A = B): X3.X
2.X
1.X
0
![Page 30: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/30.jpg)
ECE 301 - Digital Electronics 30
Magnitude Comparator
A = a3a
2a
1a
0B = b
3b
2b
1b
0
Xi = a
i.b
i + a
i'.b
i' = a
i xnor b
i(equivalence)
(A = B): X3.X
2.X
1.X
0
(A > B): a3b
3' + X
3a
2b
2' + X
3X
2a
1b
1' + X
3X
2X
1a
0b
0'
![Page 31: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/31.jpg)
ECE 301 - Digital Electronics 31
Magnitude Comparator
A = a3a
2a
1a
0B = b
3b
2b
1b
0
Xi = a
i.b
i + a
i'.b
i' = a
i xnor b
i(equivalence)
(A = B): X3.X
2.X
1.X
0
(A > B): a3b
3' + X
3a
2b
2' + X
3X
2a
1b
1' + X
3X
2X
1a
0b
0'
(A < B): a3'b
3 + X
3a
2'b
2 + X
3X
2a
1'b
1 + X
3X
2X
1a
0'b
0
![Page 32: ECE 301 – Digital Electronics Multi-bit Adder Circuits, Multiplier Circuit, and Magnitude Comparator Circuit (Lecture #11)](https://reader033.vdocuments.us/reader033/viewer/2022042519/56649d745503460f94a5456a/html5/thumbnails/32.jpg)
ECE 301 - Digital Electronics 32
Magnitude Comparator