Logic Effort
1. Propagation Delay
Inverter Dalay
-
t p = l n 2 R e q C i n t ( 1 + C L / C i n t ) = t p 0 ( 1 + f / γ ) t_p = ln2\ R_{eq}C_{int}(1+ C_L / C_{int}) \ = \ t_{p0}(1 + f/\gamma) tp=ln2 ReqCint(1+CL/Cint) = tp0(1+f/γ)
- f = C L / C g i n f = C_L / C_{gin} f=CL/Cgin effective fanout
- γ = C i n t / C g i n w i t h γ ≈ 1 \gamma = C_{int}/C_{gin} \quad with \; \gamma \approx 1 γ=Cint/Cginwithγ≈1
-
Normalized Delay to t p 0 , i n v t_{p0,inv} tp0,inv
- D ( i n v ) = 1 + f / γ ( P a r a s i t i c d e l a y + E f f o r t d e l a y ) D(inv) = 1 + f/ \gamma \qquad (Parasitic \; delay \;+\; Effort \; delay) D(inv)=1+f/γ(Parasiticdelay+Effortdelay)
Inverter Chain
-
Path Delay D e l a y = ∑ ( 1 + f i / γ ) = N + ∑ f i / γ Delay = \sum (1+f_i/\gamma) = N + \sum f_i/\gamma Delay=∑(1+fi/γ)=N+∑fi/γ
-
Path Fanout Effort F = ∏ f i = C L / C g i n , 1 F = \prod f_i = C_L / C_{gin,1} F=∏fi=CL/Cgin,1
-
Size the inverters to minimize the delay of an inverter chain
-
Every inverter stage has the same effort delay, f i = F N f_i = \sqrt[N]{F} fi=NF
-
Path Delay D e l a y = ∑ ( 1 + f i / γ ) = N + F N / γ Delay = \sum (1+f_i/\gamma) = N + \sqrt[N]{F}/\gamma Delay=∑(1+fi/γ)=N+NF/γ
-
The size of each inverter stage can be determined bu working backward
- C g i n , i = C L , i / f i C_{gin,i} = C_{L,i}/f_i Cgin,i=CL,i/fi
-
2. Introduction

3. Definition

Generalize Inverter Delay to other Gates
-
So far, inverter delay t p , i n v = l n 2 R e q , i n v ( C i n t , i n v + C L ) t_{p,inv} = ln2\ R_{eq,inv}(C_{int,inv}+ C_L) tp,inv=ln2 Req,inv(Cint,inv+CL)
-
t
p
,
i
n
v
=
l
n
2
R
e
q
,
i
n
v
C
i
n
t
,
i
n
v
(
1
+
C
L
/
C
i
n
t
,
i
n
v
)
=
t
p
0
(
1
+
f
/
γ
)
t_{p,inv} = ln2\ R_{eq,inv}C_{int,inv}(1+ C_L/C_{int,inv}) \ = \ t_{p0}(1+f/\gamma)
tp,inv=ln2 Req,invCint,inv(1+CL/Cint,inv) = tp0(1+f/γ)
- t p 0 = l n 2 R e q C i n t , i n v t_{p0} = ln2\; R_{eq}C_{int,inv} tp0=ln2ReqCint,inv
-
t
p
,
i
n
v
=
l
n
2
R
e
q
,
i
n
v
C
i
n
t
,
i
n
v
(
1
+
C
L
/
C
i
n
t
,
i
n
v
)
=
t
p
0
(
1
+
f
/
γ
)
t_{p,inv} = ln2\ R_{eq,inv}C_{int,inv}(1+ C_L/C_{int,inv}) \ = \ t_{p0}(1+f/\gamma)
tp,inv=ln2 Req,invCint,inv(1+CL/Cint,inv) = tp0(1+f/γ)
-
For other gates $ t p , g a t e = l n 2 R e q , g a t e ( C i n t , g a t e + C L ) t_{p,gate} = ln2\ R_{eq,gate}(C_{int,gate}+ C_L) tp,gate=ln2 Req,gate(Cint,gate+CL)
-
Normalized delay D ( g a t e ) = t p , g a t e / t p 0 , i n v D(gate) = t_{p,gate}/t_{p0,inv} D(gate)=tp,gate/tp0,inv
-
D ( g a t e ) = l n 2 R e q , g a t e ( C i n t , g a t e + C L ) l n 2 R e q , i n v C i n t , i n v = R e q , g a t e ( C i n t , g a t e + C L ) R e q , i n v C i n t , i n v = R e q , g a t e C i n t , g a t e R e q , i n v C i n t , i n v + R e q , g a t e C L R e q , i n v C i n t , i n v = R e q , g a t e C i n t , g a t e R e q , i n v C i n t , i n v + R e q , g a t e C g i n , g a t e R e q , i n v C i n t , i n v ∗ C L C g i n , g a t e = P + L E ∗ F O = P a r a s i t i c d e l a y ( P ) + L o g i c a l E f f o r t ( L E ) ∗ F a n o u t ( F O ) D(gate) = \frac{ln2\; R_{eq,gate}(C_{int,gate}+C_L)}{ln2\; R_{eq,inv}C_{int,inv}} \; = \; \frac{R_{eq,gate}(C_{int,gate}+C_L)}{R_{eq,inv}C_{int,inv}} \\ = \frac{R_{eq,gate}C_{int,gate}}{R_{eq,inv}C_{int,inv}} \ + \ \frac{R_{eq,gate}C_L}{R_{eq,inv}C_{int,inv}} \\ = \frac{R_{eq,gate}C_{int,gate}}{R_{eq,inv}C_{int,inv}} \ + \ \frac{R_{eq,gate}C_{gin,gate}}{R_{eq,inv}C_{int,inv}} \ \ast \ \frac{C_L}{C_{gin,gate}} = \pmb{P + LE \ast FO} \\ = \pmb{Parasitic delay(P) \ + \ Logical Effort(LE) \ \ast \ Fanout(FO) } D(gate)=ln2Req,invCint,invln2Req,gate(Cint,gate+CL)=Req,invCint,invReq,gate(Cint,gate+CL)=Req,invCint,invReq,gateCint,gate + Req,invCint,invReq,gateCL=Req,invCint,invReq,gateCint,gate + Req,invCint,invReq,gateCgin,gate ∗ Cgin,gateCL=P+LE∗FOP+LE∗FOP+LE∗FO=Parasiticdelay(P) + LogicalEffort(LE) ∗ Fanout(FO)Parasiticdelay(P) + LogicalEffort(LE) ∗ Fanout(FO)Parasiticdelay(P) + LogicalEffort(LE) ∗ Fanout(FO)
-
-
- 补:因为实际上 γ ≈ 1 \gamma \approx 1 γ≈1 ,所在在EECS151课程中直接简化这个公式为: P + L E ∗ F O \pmb{P + LE \ast FO} P+LE∗FOP+LE∗FOP+LE∗FO
Logical Effort
- $ D(gate) = LE \ast \ FO \ + \ P ; = ; Effort ;Delay ; + ; Parasitic ; Delay $
- L E = R e q , g a t e C g i n , g a t e R e q , i n v C g i n , i n v LE = \frac{R_{eq,gate}C_{gin,gate}}{R_{eq,inv}C_{gin,inv}} LE=Req,invCgin,invReq,gateCgin,gate
-
R
e
c
a
l
l
D
(
i
n
v
)
=
1
+
f
/
γ
Recall D(inv) = 1 + f/\gamma
RecallD(inv)=1+f/γ
- L E ( i n v ) = 1 LE(inv) = 1 LE(inv)=1
- Definition:
- Logical effort is the ratio of the input capacitance to the input capacitance of a unit inverter delivering the same output current.
- Only dependent on gate topology
- To calculate LE and P, size transistors so that R is the same as Rinv ,then
- L E = C g i n , g a t e C g i n , i n v LE = \frac{C_{gin,gate}}{C_{gin,inv}} LE=Cgin,invCgin,gate
- P = C i n t , g a t e C i n t , i n v P = \frac{C_{int,gate}}{C_{int,inv}} P=Cint,invCint,gate
4. the typical example(NAND and NOR)
NAND Gate

- LE(NAND2) = 4/3
- P(NAND2) = 6/3
- etc:
- LE(NAND_N) = (n+2)/3
- P(NAND_N) = (n+2n)/3 = n
###NOR Gate

-
LE(NOR2) = 5/3
-
P(NOR) = 6/3
-
etc:
- LE(NOR_N) = (2n+1)/3
- P(NOR_N) = (n+2n)/3 = n
-
关于CL 的含义:
- 在数字集成电路—电路、系统与设计(第二版)中文版中,反相器的延时公式 t p = l n 2 R e q ( C i n t + C e x t ) t_p = ln2\ R_{eq}(C_{int} + C_{ext}) tp=ln2 Req(Cint+Cext), 认为 C L = C i n t + C e x t C_L = C_{int} + C_{ext} CL=Cint+Cext , Cext是外部负载电容,它来自扇出和导线电容。而在反相器链中,在最后挂了负载电容CL , 这个实际上是扇出电容。
- 而在EECS141和EECS151中,反相器的延时公式 t p = l n 2 R e q ( C i n t + C L ) t_p = ln2\ R_{eq}(C_{int} + C_{L}) tp=ln2 Req(Cint+CL), 认为CL 是外部负载电容。
- 总结:在电路分析这门课学习RC瞬态响应模型时,是R和负载电容相连,想研究的是不同的阻值的R驱动不同容值的CL的效果。类比过来的话,如果考虑的是当连通到VDD时,电路中延时的时间,把Cint 和外部负载电容加在一起视为RC模型中的CL 也算合理。但如果在反相器链延时以及复杂的电路中,想研究的是本级反相器驱动外部负载电容的能力,所以CL用作外部负载会合理些,比如在模拟电路方法电路中就是这样的研究方法,研究输入输出电阻,不计算信号源的电阻作为输入电阻,计算输出电阻时不计算外部负载电容。
【参考文献】
[1] 数字集成电路—电路、系统与设计(第二版), Jan M.Rabaey Anantha Chandrakasan著, 周润德等译, 电子工业出版社
[2] EECS151