Introduction To Cmos Vlsi Design: Logical Effort
Introduction To Cmos Vlsi Design: Logical Effort
CMOS VLSI
Design
Logical Effort
Outline
q Introduction
q Delay in a Logic Gate
q Multistage Logic Networks
q Choosing the Best Number of Stages
q Example
q Summary
4:16 Decoder
16 words
16
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
q Ben needs to decide:
– How many stages to use?
– How large should each gate be?
– How fast can decoder operate?
Logical Effort CMOS VLSI Design Slide 4
Delay in a Logic Gate
q Express delays in process-independent unit
d abs τ =
3RC
d= ≈ 12 ps in 180 nm process
τ
40 ps in 0.6 µm process
NormalizedDelay:d
5 p=
d=
4 g=
p=
3 d=
2
0
0 1 2 3 4 5
ElectricalEffort:
h = Cout / Cin
NormalizedDelay:d
5 p=2
d = (4/3)h + 2
q What about 4 g=1
p=1
NOR2? 3 d = h +1
2 EffortDelay:f
1
Parasitic Delay: p
0
0 1 2 3 4 5
ElectricalEffort:
h = Cout / Cin
Logical Effort: g=
Electrical Effort: h=
Parasitic Delay: p=
Stage Delay: d=
Frequency: fosc =
Logical Effort: g=
Electrical Effort: h=
Parasitic Delay: p=
Stage Delay: d=
fˆ = gi hi = F
1
N
fˆ = gh = g CCoutin
gi Couti
⇒ Cini =
fˆ
q Working backward, apply capacitance
transformation to find input capacitance of each gate
given load it drives.
q Check work by verifying input cap spec is met.
y
x
45
A 8
x
y B
45
y
x
45
A 8
x
y B
45
Logical Effort G=
Electrical Effort H=
Branching Effort B=
Path Effort F=
Best Stage Effort fˆ =
Parasitic Delay P=
Delay D=
y
x
45
A 8
x
y B
45
y
x
45
A 8
x
y B
45
45
A P: 4
P: 4
N: 4 P: 12 B
N: 6 45
N: 3
D =
DatapathLoad 64 64 64 64
N: 1 2 3 4
f:
D:
8 4 2.8
D = NF1/N + P 16 8
= N(64)1/N + N
23
DatapathLoad 64 64 64 64
N: 1 2 3 4
f: 64 8 4 2.8
D: 65 18 15 15.3
Fastest
i =1
∂D 1 1 1
= − F N ln F N + F N + pinv = 0
∂N
1
q Define best stage effort ρ=F N
pinv + ρ (1 − ln ρ ) = 0
Logical Effort CMOS VLSI Design Slide 35
Best Stage Effort
q pinv + ρ (1 − ln ρ ) = 0 has no closed-form solution
D(N) /D(N)
1.4
1.26
1.2 1.15
1.0
(ρ=6) (ρ =2.4)
0.0
0.5 0.7 1.0 1.4 2.0
N/ N
4:16 Decoder
16 words
16
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
q Ben needs to decide:
– How many stages to use?
– How large should each gate be?
– How fast can decoder operate?
Logical Effort CMOS VLSI Design Slide 38
Number of Stages
q Decoder effort is mainly electrical and branching
Electrical Effort: H=
Branching Effort: B=
Number of Stages: N=
10 10 10 10 10 10 10 10
y z word[0]
y z word[15]
10 10 10 10 10 10 10 10
y z word[0]
y z word[15]
Design N G P D
NAND4-INV 2 2 5 29.8
NAND2-NOR2 2 20/9 4 30.1
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
NAND2-INV-NAND2-INV 4 16/9 6 19.7
INV-NAND2-INV-NAND2-INV 5 16/9 7 20.4
NAND2-INV-NAND2-INV-INV-INV 6 16/9 8 21.6
effort delay f DF = ∑ fi
parasitic delay p P = ∑ pi
delay d= f +p D = ∑ d i = DF + P
gi Couti
6) Find gate sizes Cini =
fˆ