CMPEN 411 VLSI Di it l Ci itVLSI Digital Circuits Spring...
Transcript of CMPEN 411 VLSI Di it l Ci itVLSI Digital Circuits Spring...
CMPEN 411VLSI Di it l Ci itVLSI Digital Circuits
Spring 2011
Lecture 12: Logical Effort
[Adapted from Rabaey’s Digital Integrated Circuits, Second Edition, ©2003 J. Rabaey, A. Chandrakasan, B. Nikolic]
Sp11 CMPEN 411 L12 S.1
PMOS/NMOS Ratio Effects
5 x 10-11
β = (W/Lp)/(W/Ln)
t t4.5
tpLH tpHL
β of 2.4 (= 31 kΩ/13 kΩ) gives symmetrical
3
4 tp response
β of 1 6 to 1 9 gi es
3
3.5 β of 1.6 to 1.9 gives optimal performance
31 2 3 4 5
β = (W/Lp)/(W/Ln)
Sp11 CMPEN 411 L12 S.2
Example of Inverter Chain Sizing
In Out1
CL = 8 Cg,1Cg,1
1
CL/Cg,1 has to be evenly distributed over N = 3 inverters
F = CL/Cg,1 = 8/1
f =
Sp11 CMPEN 411 L12 S.3
Heads upThis lectureThis lecture
Logical Effort - Reading assignment – textbook pp251-257, and handout
Next lectureDesigning energy efficient logic
R di i R b l & 6 2 1- Reading assignment – Rabaey, et al, 5.5 & 6.2.1
Sp11 CMPEN 411 L12 S.4
History
First proposed by Ivan Sutherland and Bob Sproull in 1991
“Logical Effort: Designing for Speed on the back of an Envelope”, IEEE Advanced Research in VLSI, 1991Both authors are vice president and fellow at SunBoth authors are vice president and fellow at Sun
Microsystems
Gain-based synthesis based on Logical effort y gImplemented in IBM’s logic synthesis tool BooleDozer Also adopted by Magma’s logic synthesis tool
Sp11 CMPEN 411 L12 S.5
Inverter DelayDivide capacitive load C intoDivide capacitive load, CL, into
Cint : intrinsic - diffusion and Miller effect (Cg)Cext : extrinsic - wiring and fanout
tp = 0.69 Req Cint (1 + Cext/Cint) = tp0 (1 + Cext/Cint)=0.69(ReqCint + ReqCext)
where tp0 = 0.69 Req Cint is the intrinsic (unloaded) delay of the gate
Sp11 CMPEN 411 L12 S.6
Logical Effort Delay Model
Delay of logic gate has two componentsd = f + p
f: effort delayp: parasitic delay
Effort delay fg has two components:Effort delay fg has two components:f=gh
g: logical effort h: electrical effort = Cout/ Cin (the ratio of
output capacitance to input capacitance)
Sp11 CMPEN 411 L12 S.7
Gate Delay Components
C
Logic
Cin
Cout
Split delay of logic gate into three components
Delay = Logical Effort x Electrical Effort + Parasitic Delay
gGate
Delay Logical Effort x Electrical Effort + Parasitic Delay
Logical EffortComplexity of logic function (Invert, NAND, NOR, etc)Define inverter has logical effort = 1Depends only on topology not transistor sizing
Electrical EffortElectrical EffortRatio of output capacitance to input capacitance Cout/Cin
Parasitic Delay
Sp11 CMPEN 411 L12 S.8
Intrinsic delayIndependent of transistor sizes and output load
Computing Logical Effortg represents the fact that for a giveng represents the fact that, for a given load, complex gates have to work harder than an inverter to produce a similar (speed) response(speed) response
the logical effort of a gate tells how much worse it is at producing an output current than an inverter (how much more inputan inverter (how much more input capacitance a gate presents to deliver the same output current)
Logical effort is the ratio of the input capacitance of a gate to the input capacitance of an inverter delivering capac ta ce o a e te de e gthe same output current
Defined to be 1 for an inverter
Sp11 CMPEN 411 L12 S.9
Computing Logical Effort
Sp11 CMPEN 411 L12 S.10
Logic Gate Delay
Sp11 CMPEN 411 L12 S.11
Logic Gate Delay
Sp11 CMPEN 411 L12 S.12
ExampleE ti t th d l f i t d i i 4 id ti lEstimate the delay of an inverter driving 4 identical inverter: (FO4)
g= h= p= d=
Sp11 CMPEN 411 L12 S.13
Example
Sp11 CMPEN 411 L12 S.14
Path Delay of Complex Logic Gate NetworkT t l th d l th h bi ti l l i bl kTotal path delay through a combinational logic block
tp = ∑ dj = ∑pj + ∑hj gj
th i i d l th h th th d t i th t h tthe minimum delay through the path determines that each stage should bear the same gate effort
h1g1 = h2g2 = . . . = hNgN
Sp11 CMPEN 411 L12 S.15
Application of Logical Effort
Alternative logic structures, which is the fastest?
F = ABCDEFGH
Sp11 CMPEN 411 L12 S.16
Application of Logical Effort
Alternative logic structures, which is the fastest?
F = ABCDEFGHg1=10/3 g2=1
1 6/3 2 /3g1=4/3 g2=5/3 g3=4/3 g4=1
g1=6/3 g2=5/3
Sp11 CMPEN 411 L12 S.17
Review: Design Technique 4f f f ffIsolating fan-in from fan-out using buffer insertion
CCLCL
Sp11 CMPEN 411 L12 S.18
Questions
d = gh+p
How to derive the model from Elmore delay model?How to derive the model from Elmore delay model?
Why logical effort g is independent of transistor sizing?
How to calculate parasitic delay p ? Why it is independent of transistor sizing?
How to calculate single delay parameter: τ
What if the ratio of p-type to n-type transistor widths changes?
Sp11 CMPEN 411 L12 S.19
From Elmore model to Logical Effort Model
RR
CinCin CpCp CoutCout
Elmore Delay = R(Cp+Cout)Elmore Delay = R(Cp+Cout)Elmore Delay R(Cp Cout)Elmore Delay R(Cp Cout)= R*Cout + R*Cp= R*Cout + R*Cp= RCin*(Cout/Cin)+R*Cp= RCin*(Cout/Cin)+R*Cp
gg hh
Sp11 CMPEN 411 L12 S.20
gg hh pp
Parasitic Delay
Main cause is drain capacitances
Th l ith t i t idthCgateP
These scale with transistor width so it is independent of transistor sizesCdrainPRonP
For inverter:onP
Parasitic Delay ~= 1.0 τCdrainN
RonN
CgateN
Sp11 CMPEN 411 L12 S.21
How to calculate single delay parameter: τ
Ch t i d ith i l d l tCharacterize process speed with single delay parameter: τ
τ ~= 15 ps for 0.18um ~=20 ps for 0.25 um
How to estimate it for a new process? (such as 0.13 or 0.09 um)How to estimate it for a new process? (such as 0.13 or 0.09 um)
Sp11 CMPEN 411 L12 S.22
Inverter Chain Delay
For each stage:
Delay = Logical Effort x Electrical Effort + Parasitic Delay
= 1.0 (definition) x 1.0 (in = out) + 1.0 (drain caps)
= 2.0 units 2.0 units
Sp11 CMPEN 411 L12 S.23
Multistage Logic Network
Path logical effort, G = Π gi (gi = L.E. stage i)
Path electrical effort, H = Cout/Cin (hi = E.E. stage i)
P iti d l P Σ ( P D t i)Parasitic delay, P = Σ pi (pi = P.D. stage i)
Path effort, F= Π fi = Π gi hi
D F+PD= F+P
Sp11 CMPEN 411 L12 S.24
Paths that BranchCConsider paths that branch:
G =
H = 5
1590
GH =
h =
5
1590h1 =
h2 =
F = GH?
Sp11 CMPEN 411 L12 S.25
Paths that BranchCNo! Consider paths that branch:
G = 1
H = 90 / 5 = 18 5
1590
GH = 18
h = (15 +15) / 5 = 6
5
1590h1 = (15 +15) / 5 = 6
h2 = 90 / 15 = 6
F = g1g2h1h2 = 36 = 2GH
Sp11 CMPEN 411 L12 S.26
Add Branching Effort
Branching effort:
pathon
pathoffpathonC
CCb
−
−− +=
pathon
Sp11 CMPEN 411 L12 S.27
Multistage Networks
Path electrical effort: H= Cout/Cin
Path logical effort: G = g1g2 gNPath logical effort: G = g1g2…gN
Branching effort: B = b1b2…bN
P th ff t F GBHPath effort: F= GBH
Path delay D = F+P=GBH+P
Sp11 CMPEN 411 L12 S.28
Optimal Number of Stages
Cin
C t
Minimum delay when:
stage effort = logical effort x electrical effort = 3 4-3 8 ~ 4
Cout
stage effort = logical effort x electrical effort = 3.4-3.8 4
Fan-out-of-four (FO4) is convenient design size (~5τ)
FO4 delay: Delay of inverter driving four
copies of itself
Sp11 CMPEN 411 L12 S.29
Method of Logical EffortC ff GCompute the path effort: F = GBH
Find the best number of stages N ~ log4 F
Compute the stage effort f = F1/N
Sketch the path with this number of stagesp g
Work either from either end, find sizes: Cin = Cout*g/f
Sp11 CMPEN 411 L12 S.30
Example of Inverter (Buffer) StagingN f t
C 64 CC 1
1
N f tp
1 64 65CL = 64 Cg,1Cg,1 = 1
1 8 2 8 18CL = 64 Cg,1Cg,1 = 1
4 16
2 8 18
3 4 15CL = 64 Cg,1Cg,1 = 1
1 4 16 3 4 15
CL = 64 Cg,1Cg,1 = 1
1 2.8 8 22.6 4 2.8 15.3
Sp11 CMPEN 411 L12 S.31
Summary
Sp11 CMPEN 411 L12 S.32
Next Lecture and RemindersNext lectureNext lecture
Designing energy efficient logic - Reading assignment – Rabaey, et al, 5.5 & 6.2.1
Sp11 CMPEN 411 L12 S.33