1
Introduction to CMOS VLSI Design
Lecture 5: Logical Effort
David Harris
Harvey Mudd College Spring 2004
5: Logical Effort Slide 2 CMOS VLSI Design
Outline Introduction Delay in a Logic Gate Multistage Logic - - PDF document
Introduction to CMOS VLSI Design Lecture 5: Logical Effort David Harris Harvey Mudd College Spring 2004 Outline Introduction Delay in a Logic Gate Multistage Logic Networks Choosing the Best Number of Stages Example
Harvey Mudd College Spring 2004
5: Logical Effort Slide 2 CMOS VLSI Design
5: Logical Effort Slide 3 CMOS VLSI Design
– What is the best circuit topology for a function? – How many stages of logic give least delay? – How wide should the transistors be?
– Uses a simple model of delay – Allows back-of-the-envelope calculations – Helps make rapid comparisons between alternatives – Emphasizes remarkable symmetries
5: Logical Effort Slide 4 CMOS VLSI Design
an embedded automotive processor. Help Ben design the decoder for a register file.
– 16 word register file – Each word is 32 bits wide – Each bit presents load of 3 unit-sized transistors – True and complementary address inputs A[3:0] – Each input may drive 10 unit-sized transistors
– How many stages to use? – How large should each gate be? – How fast can decoder operate?
A[3:0] A[3:0] 16 32 bits 16 words
4:16 Decoder Register File
5: Logical Effort Slide 5 CMOS VLSI Design
abs
τ = 3RC ≈ 12 ps in 180 nm process 40 ps in 0.6 µm process
5: Logical Effort Slide 6 CMOS VLSI Design
abs
5: Logical Effort Slide 7 CMOS VLSI Design
abs
5: Logical Effort Slide 8 CMOS VLSI Design
abs
5: Logical Effort Slide 9 CMOS VLSI Design
abs
5: Logical Effort Slide 10 CMOS VLSI Design
abs
5: Logical Effort Slide 11 CMOS VLSI Design
Electrical Effort: h = Cout / Cin Normalized Delay: d Inverter 2-input NAND g = p = d = g = p = d =
1 2 3 4 5 1 2 3 4 5 6
5: Logical Effort Slide 12 CMOS VLSI Design
Electrical Effort: h = Cout / Cin Normalized Delay: d Inverter 2-input NAND g = 1 p = 1 d = h + 1 g = 4/3 p = 2 d = (4/3)h + 2 Effort Delay: f Parasitic Delay: p
1 2 3 4 5 1 2 3 4 5 6
5: Logical Effort Slide 13 CMOS VLSI Design
A Y A B Y A B Y 1 2 1 1 2 2 2 2 4 4 Cin = 3 g = 3/3 Cin = 4 g = 4/3 Cin = 5 g = 5/3
5: Logical Effort Slide 14 CMOS VLSI Design
8, 16, 16, 8 6, 12, 6 4, 4 XOR, XNOR 2 2 2 2 2 Tristate / mux (2n+1)/3 9/3 7/3 5/3 NOR (n+2)/3 6/3 5/3 4/3 NAND 1 Inverter n 4 3 2 1 Number of inputs Gate type
5: Logical Effort Slide 15 CMOS VLSI Design
8 6 4 XOR, XNOR 2n 8 6 4 2 Tristate / mux n 4 3 2 NOR n 4 3 2 NAND 1 Inverter n 4 3 2 1 Number of inputs Gate type
5: Logical Effort Slide 16 CMOS VLSI Design
5: Logical Effort Slide 17 CMOS VLSI Design
31 stage ring oscillator in 0.6 µm process has frequency of ~ 200 MHz
5: Logical Effort Slide 18 CMOS VLSI Design
5: Logical Effort Slide 19 CMOS VLSI Design
The FO4 delay is about 200 ps in 0.6 µm process 60 ps in a 180 nm process f/3 ns in an f µm process
5: Logical Effort Slide 20 CMOS VLSI Design
i
in-path
i i i
10 x y z 20 g
1 = 1
h
1 = x/10
g2 = 5/3 h2 = y/x g3 = 4/3 h3 = z/y g
4 = 1
h
4 = 20/z
5: Logical Effort Slide 21 CMOS VLSI Design
i
path in path
− −
i i i
5: Logical Effort Slide 22 CMOS VLSI Design
5 15 15 90 90
5: Logical Effort Slide 23 CMOS VLSI Design
5 15 15 90 90
5: Logical Effort Slide 24 CMOS VLSI Design
i
i
Note:
5: Logical Effort Slide 25 CMOS VLSI Design
F i
i
i F
5: Logical Effort Slide 26 CMOS VLSI Design
i F
1
N
i i
1 N
5: Logical Effort Slide 27 CMOS VLSI Design
in i i
C C i
in
5: Logical Effort Slide 28 CMOS VLSI Design
5: Logical Effort Slide 29 CMOS VLSI Design
8 x x x y y 45 45 A B
5: Logical Effort Slide 30 CMOS VLSI Design
8 x x x y y 45 45 A B
3
5: Logical Effort Slide 31 CMOS VLSI Design
8 x x x y y 45 45 A B
5: Logical Effort Slide 32 CMOS VLSI Design
P: 4 N: 4 45 45 A B P: 4 N: 6 P: 12 N: 3
5: Logical Effort Slide 33 CMOS VLSI Design
1 1 1 1 64 64 64 64 Initial Driver Datapath Load N: f: D: 1 2 3 4
5: Logical Effort Slide 34 CMOS VLSI Design
1 1 1 1 8 4 16 8 2.8 23 64 64 64 64 Initial Driver Datapath Load N: f: D: 1 64 65 2 8 18 3 4 15 4 2.8 15.3 Fastest
5: Logical Effort Slide 35 CMOS VLSI Design
N - n1 Extra Inverters Logic Block: n1 Stages Path Effort F
1 1
1 1
N
n i inv i
=
1 1 1
N N N
inv
inv
1 N
5: Logical Effort Slide 36 CMOS VLSI Design
inv
5: Logical Effort Slide 37 CMOS VLSI Design
1.0 1.2 1.4 1.6 1.0 2.0 0.5 1.4 0.7 N / N 1.15 1.26 1.51 (ρ =2.4) (ρ=6) D(N) /D(N) 0.0
5: Logical Effort Slide 38 CMOS VLSI Design
an embedded automotive processor. Help Ben design the decoder for a register file.
– 16 word register file – Each word is 32 bits wide – Each bit presents load of 3 unit-sized transistors – True and complementary address inputs A[3:0] – Each input may drive 10 unit-sized transistors
– How many stages to use? – How large should each gate be? – How fast can decoder operate?
A[3:0] A[3:0] 16 32 bits 16 words
4:16 Decoder Register File
5: Logical Effort Slide 39 CMOS VLSI Design
5: Logical Effort Slide 40 CMOS VLSI Design
5: Logical Effort Slide 41 CMOS VLSI Design
A[3] A[3] A[2] A[2] A[1] A[1] A[0] A[0] word[0] word[15] 96 units of wordline capacitance 10 10 10 10 10 10 10 10 y z y z
5: Logical Effort Slide 42 CMOS VLSI Design
A[3] A[3] A[2] A[2] A[1] A[1] A[0] A[0] word[0] word[15] 96 units of wordline capacitance 10 10 10 10 10 10 10 10 y z y z
1/3
5: Logical Effort Slide 43 CMOS VLSI Design
21.6 8 16/9 6 NAND2-INV-NAND2-INV-INV-INV 20.4 7 16/9 5 INV-NAND2-INV-NAND2-INV 19.7 6 16/9 4 NAND2-INV-NAND2-INV 20.5 6 20/9 4 NAND2-NOR2-INV-INV 21.1 7 2 4 NAND4-INV-INV-INV 22.1 6 2 3 INV-NAND4-INV 30.1 4 20/9 2 NAND2-NOR2 29.8 5 2 2 NAND4-INV D P G N Design
5: Logical Effort Slide 44 CMOS VLSI Design
delay parasitic delay effort delay effort branching effort electrical effort logical effort number of stages Path Stage Term
i
G g =∏
in-path
C C
H = N
i
B b =∏ F GBH =
F i
D f = ∑
i
P p = ∑
i F
D d D P = = +
in
C C
h =
C C C
b
+
= f gh = f p d f p = + g 1
5: Logical Effort Slide 45 CMOS VLSI Design
4
1 N
1
N
i i
i
in
5: Logical Effort Slide 46 CMOS VLSI Design
5: Logical Effort Slide 47 CMOS VLSI Design