Download - EE 466/586 VLSI Design
![Page 1: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/1.jpg)
EE 466/586EE 466/586VLSI DesignVLSI DesignPartha Pande
School of EECSWashington State University
![Page 2: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/2.jpg)
Lecture 23Arithmetic circuits (Cont’d)
![Page 3: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/3.jpg)
The Binary MultiplicationThe Binary Multiplication
Z X·· Y Zk2k
k 0=
M N 1–+
= =
Xi2i
i 0=
M 1–
Yj2j
j 0=
N 1–
=
XiYj2i j+
j 0=
N 1–
i 0=
M 1–
=
X Xi2i
i 0=
M 1–
=
Y Yj2j
j 0=
N 1–
=
with
![Page 4: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/4.jpg)
The Binary MultiplicationThe Binary Multiplication
x
Partial products
Multiplicand
Multiplier
Result
1 0 1 0 1 0
1 0 1 0 1 0
1 0 1 0 1 0
1 1 1 0 0 1 1 1 0
0 0 0 0 0 0
1 0 1 0 1 0
1 0 1 1
![Page 5: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/5.jpg)
Partial-Product Generation
Partial products result from the logical AND of multiplicand X with a multiplier bit Yi
Each row in the partial-product array is either a copy of the multiplicand or a row of zeros.
Partial-product array has many zero rows that have no impact on the result.
![Page 6: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/6.jpg)
The Array MultiplierThe Array Multiplier
Y0
Y1
X3 X2 X1 X0
X3
HA
X2
FA
X1
FA
X0
HA
Y2X3
FA
X2
FA
X1
FA
X0
HA
Z1
Z3Z6Z7 Z5 Z4
Y3X3
FA
X2
FA
X1
FA
X0
HA
![Page 7: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/7.jpg)
The MxN Array MultiplierThe MxN Array Multiplier— Critical Path— Critical Path
HA FA FA HA
HAFAFAFA
FAFA FA HA
Critical Path 1
Critical Path 2
Critical Path 1 & 2
![Page 8: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/8.jpg)
Carry-Save MultiplierCarry-Save Multiplier
Multiplication result does not change when the output carry bits are passed diagonally downwards instead of only to the right.
Include an extra adder called a vector-merging adder to generate the final results
![Page 9: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/9.jpg)
Carry-Save MultiplierCarry-Save MultiplierHA HA HA HA
FAFAFAHA
FAHA FA FA
FAHA FA HA
Vector Merging Adder
![Page 10: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/10.jpg)
Multiplier FloorplanMultiplier Floorplan
SCSCSCSC
SCSCSCSC
SCSCSCSC
SC
SC
SC
SC
Z0
Z1
Z2
Z3Z4Z5Z6Z7
X0X1X2X3
Y1
Y2
Y3
Y0
Vector Merging Cell
HA Multiplier Cell
FA Multiplier Cell
X and Y signals are broadcastedthrough the complete array.( )
![Page 11: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/11.jpg)
Wallace-Tree MultiplierWallace-Tree Multiplier
6 5 4 3 2 1 0 6 5 4 3 2 1 0
Partial products First stage
Bit position
6 5 4 3 2 1 0 6 5 4 3 2 1 0
Second stage Final adder
FA HA
(a) (b)
(c) (d)
![Page 12: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/12.jpg)
Wallace-Tree MultiplierWallace-Tree Multiplier
Partial products
First stage
Second stage
Final adder
FA FA FA
HA HA
FA
x3y3
z7 z6 z5 z4 z3 z2 z1 z0
x3y2x2y3
x1y1x3y0 x2y0 x0y1x0y2
x2y2x1y3
x1y2x3y1x0y3 x1y0 x0y
![Page 13: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/13.jpg)
Wallace-Tree Multiplier
FA
FA
FA
FA
y0 y1 y2
y3
y4
y5
S
Ci-1
Ci-1
Ci-1
Ci
Ci
Ci
FA
y0 y1 y2
FA
y3 y4 y5
FA
FA
CC S
Ci-1
Ci-1
Ci-1
Ci
Ci
Ci
![Page 14: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/14.jpg)
The Binary ShifterThe Binary Shifter
Ai
Ai-1
Bi
Bi-1
Right Leftnop
Bit-Slice i
...
![Page 15: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/15.jpg)
The Barrel ShifterThe Barrel Shifter
Sh3Sh2Sh1Sh0
Sh3
Sh2
Sh1
A3
A2
A1
A0
B3
B2
B1
B0
: Control Wire
: Data Wire
Area Dominated by Wiring
![Page 16: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/16.jpg)
The Barrel ShifterThe Barrel Shifter
Number of rows equals the word length of the data Number of columns equals to the maximum shift
width The control wires are routed diagonally through the
array
![Page 17: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/17.jpg)
Full Datapath
![Page 18: EE 466/586 VLSI Design](https://reader035.vdocuments.site/reader035/viewer/2022062422/56813251550346895d98cc16/html5/thumbnails/18.jpg)
Datapath With Control