Logic Effort

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

Logic Effort_第1张图片
Fig2

3. Definition

Logic Effort_第2张图片
Fig2

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
  • 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+LEFOP+LEFOP+LEFO=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+LEFOP+LEFOP+LEFO

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

Logic Effort_第3张图片
Fig3 NAND2 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

Logic Effort_第4张图片
Fig4 NOR2 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

你可能感兴趣的:(数字集成电路——电路,系统与设计)