Professional Documents
Culture Documents
Effort
Effort
❑ Logical Effort
❑ Delay in a Logic Gate
❑ Multistage Logic Networks
❑ Choosing the Best Number of Stages
❑ Example
Lecture 6: ❑ Summary
Logical
Effort
6: Logical Effort CMOS VLSI Design 4th Ed. 2
Introduction Example
❑ Chip designers face a bewildering array of choices ❑ Ben Bitdiddle is the memory designer for the Motoroil 68W86,
– What is the best circuit topology for a function? an embedded automotive processor. Help Ben design the
– How many stages of logic give least delay?
??? decoder for a register file.
A[3:0] A[3:0]
32 bits
4:16 Decoder
16 words
16
Register File
– 16 word register file
❑ Logical effort is a method to make these decisions – Each word is 32 bits wide
– Uses a simple model of delay – Each bit presents load of 3 unit-sized transistors
– Allows back-of-the-envelope calculations – True and complementary address inputs A[3:0]
– Helps make rapid comparisons between alternatives – Each input may drive 10 unit-sized transistors
❑ Ben needs to decide:
– Emphasizes remarkable symmetries
– How many stages to use?
– How large should each gate be?
– How fast can decoder operate?
6: Logical Effort CMOS VLSI Design 4th Ed. 3 6: Logical Effort CMOS VLSI Design 4th Ed. 4
= gh + p 6
NAND Inverter
❑ f: effort delay = gh (a.k.a. stage effort) = 3RC g = 4/3
Normalized Delay: d
6: Logical Effort CMOS VLSI Design 4th Ed. 5 6: Logical Effort CMOS VLSI Design 4th Ed. 6
Computing Logical Effort Catalog of Gates
❑ DEF: Logical effort is the ratio of the input ❑ Logical effort of common gates
capacitance of a gate to the input capacitance of an
inverter delivering the same output current. Gate type Number of inputs
❑ Measure from delay vs. fanout plots 1 2 3 4 n
❑ Or estimate by counting transistor widths
Inverter 1
2 2 A 4 NAND 4/3 5/3 6/3 (n+2)/3
Y
2 B 4
A 2 NOR 5/3 7/3 9/3 (2n+1)/3
A Y Y
1 B 2 1 1
Tristate / mux 2 2 2 2 2
Cin = 3 Cin = 4 Cin = 5 XOR, XNOR 4, 4 6, 12, 6 8, 16, 16, 8
g = 3/3 g = 4/3 g = 5/3
6: Logical Effort CMOS VLSI Design 4th Ed. 7 6: Logical Effort CMOS VLSI Design 4th Ed. 8
6: Logical Effort CMOS VLSI Design 4th Ed. 9 6: Logical Effort CMOS VLSI Design 4th Ed. 10
D 4 6
Logical Effort: g=1 OUT = D + A • (B + C)
Electrical Effort: h=4 The FO4 delay is about A 2
Parasitic Delay: p=1 300 ps in 0.6 m process D 1
Stage Delay: d=5 15 ps in a 65 nm process
B 2C 2
6: Logical Effort CMOS VLSI Design 4th Ed. 11 6: Logical Effort CMOS VLSI Design 4th Ed. 12
Multistage Logic Networks Multistage Logic Networks
❑ Logical effort generalizes to multistage networks ❑ Logical effort generalizes to multistage networks
❑ Path Logical Effort G= gi ❑ Path Logical Effort G= gi
Cout-path Cout − path
❑ Path Electrical Effort H= ❑ Path Electrical Effort H=
Cin-path Cin − path
❑ Path Effort F = f i = gi hi ❑ Path Effort F = f i = gi hi
10
x
❑ Can we write F = GH?
y z
20
g1 = 1 g2 = 5/3 g3 = 4/3 g4 = 1
h1 = x/10 h2 = y/x h3 = z/y h4 = 20/z
6: Logical Effort CMOS VLSI Design 4th Ed. 13 6: Logical Effort CMOS VLSI Design 4th Ed. 14
h
h1 = (15 +15) / 5 = 6
h2 = 90 / 15 = 6 i = BH
F = g1g2h1h2 = 36 = 2GH ❑ Now we compute the path effort
– F = GBH
6: Logical Effort CMOS VLSI Design 4th Ed. 15 6: Logical Effort CMOS VLSI Design 4th Ed. 16
❑ Path Parasitic Delay P = pi ❑ Delay is smallest when each stage bears same effort
fˆ = gi hi = F N
1
❑ Path Delay D = d i = DF + P
❑ Thus minimum delay of N stage path is
1
D = NF N + P
❑ This is a key result of logical effort
– Find fastest possible delay
– Doesn’t require calculating gate sizes
6: Logical Effort CMOS VLSI Design 4th Ed. 17 6: Logical Effort CMOS VLSI Design 4th Ed. 18
Gate Sizes Example: 3-stage path
❑ How wide should the gates be for least delay? ❑ Select gate sizes x and y for least delay from A to B
fˆ = gh = g CCoutin x
gi Couti y
Cini = x
fˆ 45
A 8
❑ Working backward, apply capacitance x
y B
transformation to find input capacitance of each gate 45
given load it drives.
❑ Check work by verifying input cap spec is met.
6: Logical Effort CMOS VLSI Design 4th Ed. 19 6: Logical Effort CMOS VLSI Design 4th Ed. 20
6: Logical Effort CMOS VLSI Design 4th Ed. 21 6: Logical Effort CMOS VLSI Design 4th Ed. 22
D = NF N + pi + ( N − n1 ) pinv
1
Path Effort F
Initial Driver 1 1 1 1
i =1
8 4 2.8
D 1 1 1
D = NF1/N + P = − F N ln F N + F N + pinv = 0
16 8
N
= N(64)1/N + N
=F
23 1
❑ Define best stage effort N
Datapath Load 64 64 64 64
N:
f:
D:
1
64
65
2
8
18
3
4
15
4
2.8
15.3
pinv + (1 − ln ) = 0
Fastest
6: Logical Effort CMOS VLSI Design 4th Ed. 23 6: Logical Effort CMOS VLSI Design 4th Ed. 24
Best Stage Effort Sensitivity Analysis
❑ pinv + (1 − ln ) = 0 has no closed-form solution ❑ How sensitive is delay to using exactly the best
number of stages? 1.6
1.51
D(N) /D(N)
1.4
1.26
0.0
0.5 0.7 1.0 1.4 2.0
N/ N
6: Logical Effort CMOS VLSI Design 4th Ed. 25 6: Logical Effort CMOS VLSI Design 4th Ed. 26
16 words
16
Register File
– 16 word register file
– Each word is 32 bits wide ❑ If we neglect logical effort (assume G = 1)
– Each bit presents load of 3 unit-sized transistors Path Effort: F = GBH = 76.8
– True and complementary address inputs A[3:0]
– Each input may drive 10 unit-sized transistors
❑ Ben needs to decide: Number of Stages: N = log4F = 3.1
– How many stages to use?
– How large should each gate be?
– How fast can decoder operate?
❑ Try a 3-stage design
6: Logical Effort CMOS VLSI Design 4th Ed. 27 6: Logical Effort CMOS VLSI Design 4th Ed. 28
10 10 10 10 10 10 10 10 INV-NAND4-INV 3 2 6 22.1
NAND4-INV-INV-INV 4 2 7 21.1
NAND2-NOR2-INV-INV 4 20/9 6 20.5
y z word[0]
NAND2-INV-NAND2-INV 4 16/9 6 19.7
96 units of wordline capacitance
INV-NAND2-INV-NAND2-INV 5 16/9 7 20.4
y z word[15] NAND2-INV-NAND2-INV-INV-INV 6 16/9 8 21.6
6: Logical Effort CMOS VLSI Design 4th Ed. 29 6: Logical Effort CMOS VLSI Design 4th Ed. 30
Review of Definitions Method of Logical Effort
Term Stage Path 1) Compute path effort F = GBH
number of stages 1 N 2) Estimate best number of stages N = log 4 F
logical effort g G = gi 3) Sketch path with N stages
1
fˆ = F N
1
branching effort b=
Con-path +Coff-path
Con-path B = bi 5) Determine best stage effort
effort f = gh F = GBH
gi Couti
effort delay DF = f i 6) Find gate sizes Cini =
fˆ
f
parasitic delay p P = pi
delay d= f +p D = d i = DF + P
6: Logical Effort CMOS VLSI Design 4th Ed. 31 6: Logical Effort CMOS VLSI Design 4th Ed. 32
6: Logical Effort CMOS VLSI Design 4th Ed. 33 6: Logical Effort CMOS VLSI Design 4th Ed. 34