13
1 ESE 570: Digital Integrated Circuits and VLSI Fundamentals Lec 12: February 22, 2018 Combination Logic: CMOS Penn ESE 570 Spring 2018 – Khanna Lecture Outline ! CMOS Gates " 1 st order delay of Gates " Gate design " Sizing, fanin ! CMOS Worst Case Analysis 3 Penn ESE 570 Spring 2018 – Khanna Review: 1st Order RC Delay Models 4 ! Equivalent circuits used for MOS transistors " Ideal switch + “effective” ON resistance + load capacitance " Define unit resistance, R u : “effective” ON resistance of unit transistor with min length and W=W u (usually min width) " Define R un and R up for nMOS and pMOS respectively " C gb = C g and C db =C sb = C d for the unit n/pMOS transistors " For scaled MOS device with scale factors κ n, κ p 1, i.e. W n = κ n W un (W p = κ p W up ) " “effective” ON resistance R n =R un /κ n (R p =R up /κ p ) " capacitances κ n C d , κ n C g (κ p C d , κ p C g ) τ PHL 0.69 C load R n C load C dbn + C dbp + C int + C gb Penn ESE 570 Spring 2018 – Khanna Review: 1st Order Switch-RC MOS Models 5 nMOS R n = R un /κ n Assume: bulk at GND κ n C g κ n C d κ n C d ON/ OFF (W/L) n pMOS VDD VDD VDD R p = R up /κ p Assume: bulk at VDD κ p C d κ p C d ON/ OFF (W/L) p κ p C g R up V DD L up 0.69μ p C ox W up (V DD | V T 0 p |) 2 R un V DD L un 0.69μ n C ox W un (V DD V T 0n ) 2 (W/L) n = κ n (W/L) un (W/L) p = κ p (W/L) up R up = μ n p R un Penn ESE 570 Spring 2018 – Khanna Review: 1st Order Delay Model -τ PHL 6 R n C d C d nC g nκ p C g κ p C d κ p C d VDD VDD VDD VDD Y C s = C d = C diff Penn ESE 570 Spring 2018 – Khanna κ p 1 A Y VDD where W n =W unit => κ n =1, R n =R un W p = κ p W unit κ p = μ n / μ p = 2 R p = R up /κ p = R n 1,κ p 1,κ p 1,κ p n 2 1 R p Review: 1st Order Delay Model -τ PHL 7 R n C d C d nC g nκ p C g κ p C d κ p C d VDD VDD VDD VDD Y R p VDD VDD κ p C d nκ p C g R n C d nC g Y C load = (1 + κ p )(C d + nC g ) τ PHL 0.69R n C load = 0.69R n (1+ κ p )(C d + nC g ) τ PHL = τ PLH Penn ESE 570 Spring 2018 – Khanna

Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

1

ESE 570: Digital Integrated Circuits and VLSI Fundamentals

Lec 12: February 22, 2018 Combination Logic: CMOS

Penn ESE 570 Spring 2018 – Khanna

Lecture Outline

!  CMOS Gates "  1st order delay of Gates "  Gate design

"  Sizing, fanin

!  CMOS Worst Case Analysis

3 Penn ESE 570 Spring 2018 – Khanna

Review: 1st Order RC Delay Models

4

!  Equivalent circuits used for MOS transistors "  Ideal switch + “effective” ON resistance + load

capacitance "  Define unit resistance, Ru: “effective” ON resistance of unit transistor

with min length and W=Wu (usually min width) "  Define Run and Rup for nMOS and pMOS respectively

"  Cgb = Cg and Cdb = Csb = Cd for the unit n/pMOS transistors "  For scaled MOS device with scale factors κn, κp ≥ 1, i.e. Wn = κnWun

(Wp = κpWup) "  “effective” ON resistance Rn= Run/κn (Rp= Rup/κp) "  capacitances κnCd, κnCg (κpCd, κpCg)

τ PHL ≈ 0.69 ⋅Cload ⋅Rn Cload ≈ Cdbn + Cdbp + Cint + Cgb

Penn ESE 570 Spring 2018 – Khanna

Review: 1st Order Switch-RC MOS Models

5

nMOS

Rn = Run/κn

Assume: bulk at GND

κnCg

κnCd

κnCd

ON/OFF

(W/L)n

pMOS VDD

VDD VDD Rp = Rup/κp

Assume: bulk at VDD κpCd

κpCd ON/OFF

(W/L)p

κpCg

Rup ≈VDDLup

0.69µpCoxWup(VDD− |VT 0 p |)2

Run ≈VDDLun

0.69µnCoxWun (VDD −VT 0n )2

(W/L)n = κn (W/L)un

(W/L)p = κp (W/L)up

Rup= µn/µp Run

Penn ESE 570 Spring 2018 – Khanna

Review: 1st Order Delay Model -τPHL

6

Rn Cd

Cd

nCg

nκpCg

κpCd

κpCd

VDD VDD

VDD VDD

Y

Cs = Cd= Cdiff

Penn ESE 570 Spring 2018 – Khanna

κp κp

1 1 A Y

VDD VDD

where Wn=Wunit => κn=1, Rn=Run

Wp = κpWunit

κp = µn/ µp = 2

Rp = Rup/κp = Rn

1,κp

1,κp

1,κp

n

2

1

Rp

Review: 1st Order Delay Model -τPHL

7

Rn Cd

Cd

nCg

nκpCg

κpCd

κpCd

VDD VDD

VDD VDD

Y

Rp VDD

VDD

κpCd

nκpCg

κnC κnC

Rn/n Rn Cd nCg

Y

Cload = (1 + κp)(Cd + nCg)

τ PHL ≈ 0.69RnCload = 0.69Rn (1+κ p )(Cd + nCg )

τ PHL = τ PLHPenn ESE 570 Spring 2018 – Khanna

Page 2: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

2

Review: Elmore Delay: Distributed RC network

!  The delay from source to node i "  N = number of nodes in circuit

8

Rik = Rj∑ ⇒ (Rj ∈ [path(s→ 4)∩ path(s→ k)])

τ Di = CkRikk=1

N

τ Di =C1(R1)+C2 (R1)+C3(R1 + R3)+C4 (R1 + R3)+Ci (R1 + R3 + Ri )

(0 # 50%)

τ D = RpCload (0 # 63%)

NOTE:

τ p = 0.69τ DPenn ESE 570 Spring 2018 – Khanna

Combinational Logic

CMOS

Penn ESE 570 Spring 2018 – Khanna

CMOS Combinational Logic

!  Complimentary MOSFET "  Pull-up/pull-down complimentary networks

10

pMOS Net = dual (nMOS Net)

Penn ESE 570 Spring 2018 – Khanna

Two-Input NOR Gate (NOR2)

11

For Complimentary CMOS: Pull-up Net = dual (Pull-down Net)

F (VF) A (VA)

Z (VZ)

B (VB)

A (VA)

B (VB)

(A . B)

F (VF)

(A + B)

(A . B) (A + B) = Penn ESE 570 Spring 2018 – Khanna

Data Dependent Delay

!  Drive resistance depends on input values "  Delay depends on input data "  Analyze using worst case delay

12 Penn ESE 570 Spring 2018 – Khanna

Data Dependent Delay

!  Drive resistance depends on input values "  Delay depends on input data "  Analyze using worst case delay

!  Reminder: "  Rn= Run/κn

"  Rp= Rup/κp

"  Assume: µn=2µp

"  What is Rout? "  Output drive resistance

13 Penn ESE 570 Spring 2018 – Khanna

Page 3: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

3

Data Dependent Delay

!  Drive resistance depends on input values "  Delay depends on input data "  Analyze using worst case delay

!  Reminder: "  Rn= Run/κn

"  Rp= Rup/κp

"  Assume: µn=2µp

"  What is Rout? "  Depends on input

"  What is worst case Rout?

14 Penn ESE 570 Spring 2018 – Khanna

Data Dependent Delay

!  Drive resistance depends on input values "  Delay depends on input data "  Analyze using worst case delay

!  Reminder: "  Rn= Run/κn

"  Rp= Rup/κp

"  Assume: µn=2µp

"  What is Rout? "  Depends on input

"  What is worst case Rout? "  Choose κp and κn, such that worst-case Rout=Run/2

15 Penn ESE 570 Spring 2018 – Khanna

Data Dependent Delay

!  Drive resistance depends on input values "  Delay depends on input data "  Analyze using worst case delay

!  Reminder: "  Rn= Run/κn

"  Rp= Rup/κp

"  Assume: µn=2µp

"  What is Rout? "  Depends on input

"  What is worst case Rout? "  What is input capacitance?

16 Penn ESE 570 Spring 2018 – Khanna

NAND2 – 1st Order Models

!  Reminder: "  Rn= Run/κn

"  Rp= Rup/κp

"  Assume: µn=2µp

"  Choose κp and κn, such that worst-case Rout=Run/2 "  What is input capacitance?

17 Penn ESE 570 Spring 2018 – Khanna

Series Transistors

18 Penn ESE 570 Spring 2018 – Khanna

Transistor Sizing

!  What gate is this? !  Size (κp and κn) equalize rise/fall

times Rout=Run/2? !  Input Capacitance?

19 Penn ESE 570 Spring 2018 – Khanna

Page 4: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

4

Transistor Sizing

!  NAND2 sized for Rout=Run/2 "  κp=4 and κn=4 "  Cin=8Cg

!  NAND3 sized for Rout=Run/2 "  κp=4 and κn=6 "  Cin=10Cg

20 Penn ESE 570 Spring 2018 – Khanna

Increasing Fanin

!  What happens to input capacitance as fanin (k) increases "  Keeping output drive the same

"  E.g. Rdrive=R0/2

!  k-input nand gate has what input capacitance?

21 Penn ESE 570 Spring 2018 – Khanna

Fanin

!  Conclude: gates slow down with fanin "  Less drive per input capacitance "  CInLoad/Ids increases

22 Penn ESE 570 Spring 2018 – Khanna

Transistor Sizing: INV

!  Size (κp and κn) equalize rise/fall times Rout=Run/2?

!  Input Capacitance?

23 Penn ESE 570 Spring 2018 – Khanna

Which is Faster?

!  nand32 Assume: -  Rup=2Run and gates are sized for Rout=Run/2 -  Input also driven by Rdrive = Run/2

nand4-inv-nand4-inv-nand2 (nand2-inv)4-nand2 24 Penn ESE 570 Spring 2018 – Khanna

Lesson

!  Large gates are slow / inefficient "  High capacitive load / drive current

!  Small gates can be inefficient "  Need many stages

!  Staging over moderate size gates minimizes delay !  Exact size will be technology dependent

25 Penn ESE 570 Spring 2018 – Khanna

Page 5: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

5

26

And-Or Chain

Penn ESE 570 Spring 2018 – Khanna

Delay of each implementation?

27 Penn ESE 570 Spring 2018 – Khanna

Take Away?

28 Penn ESE 570 Spring 2018 – Khanna

CMOS NOR2 VTC

29

Kenneth R. Laker, University of Pennsylvania,

updated 26Feb15

3 VTC Cases V1 = 0 V; V2 = 0 → VDD V1 = 0 → VDD; V2 = 0 V1 and V2 = 0 → VDD simultaneously

Vout

Vin 0

simultaneous switching

only one input

switches

VDD

Switching Threshold Voltage: V1 = V2 = Vout = Vth

Penn ESE 570 Spring 2018 – Khanna

CMOS NOR2 Vth

30

Kenneth R. Laker, University of Pennsylvania,

updated 26Feb15

Penn ESE 570 Spring 2018 – Khanna

k pEQV= k p/2

k nEQV= 2k n

k p

k p

k n k n

Review: CMOS Inverter: Vth

31

k 'n2

WL

!

"#

$

%&n

Vin −VT 0n( )2 =k 'p2

WL

!

"#

$

%&p

Vin −VDD −VT 0 p( )2

kR Vth −VT 0n( )2 = Vth −VDD −VT 0 p( )22

Vth =VT 0n +

1kR

VDD +VT 0 p( )

1+ 1kR

Typically, Ln=Lp=Lmin

kR =k 'n W L( )nk 'p W L( )p

=µn W L( )nµp W L( )p

=µnWn

µpWp

Penn ESE 570 Spring 2018 – Khanna

Page 6: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

6

CMOS NOR2 Vth

32

Kenneth R. Laker, University of Pennsylvania,

updated 26Feb15

Penn ESE 570 Spring 2018 – Khanna

k pEQV= k p/2

k nEQV= 2k n

k p

k p

k n k n

CMOS NOR2 Vth

33

k pEQV= k p/2

k nEQV= 2k n

k p

k p

k n k n

Vth =VDD2

kpEQVknEQV

=1

Symmetric ‘Inv’

&

kp = 4knPenn ESE 570 Spring 2018 – Khanna

Parasitic Caps for NOR2 (worst case)

34

Vx

2Cg

Cdbn1 = Cdbn2 = Cd

Cdbp1 = Cdbp2 = Cd

Csb1p = Csb2p = Cd Cd

Cd

Cd

Cd Cd

Penn ESE 570 Spring 2018 – Khanna

Parasitic Caps for NOR2 (worst case)

35

Vx

2Cg

Cdbn1 = Cdbn2 = Cd

Cdbp1 = Cdbp2 = Cd

Csb1p = Csb2p = Cd Cd

Cd

Cd

Cd Cd

V1 = 0, V2 = VDD-> 0 @t=0 & Vx ≈ Vout = 0 -> VDD

Penn ESE 570 Spring 2018 – Khanna

Parasitic Caps for NOR2 (worst case)

36

Vx

2Cg

Cdbn1 = Cdbn2 = Cd

Cdbp1 = Cdbp2 = Cd

Csb1p = Csb2p = Cd Cd

Cd

Cd

Cd Cd

V1 = 0, V2 = VDD-> 0 @t=0 & Vx ≈ Vout = 0 -> VDD Cload-NR2 ≈ 2Cd + 3Cd + Cint + 2Cg

RpEQV = Rp2+Rp1 Lumped Model Penn ESE 570 Spring 2018 – Khanna

Parasitic Caps for NOR2 (worst case)

37

Vx

2Cg

Cdbn1 = Cdbn2 = Cd

Cdbp1 = Cdbp2 = Cd

Csb1p = Csb2p = Cd Cd

Cd

Cd

Cd Cd

V1 = 0, V2 = VDD-> 0 @t=0 & Vx ≈ Vout = 0 -> VDD

Elmore Model? Cload-NR2 ≈ 2Cd + 3Cd + Cint + 2Cg

RpEQV = Rp2+Rp1

Penn ESE 570 Spring 2018 – Khanna

Page 7: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

7

Parasitic Caps for NOR2 (worst case)

38

Vx

2Cg

Cd

Cd

Cd

Cd Cd

Penn ESE 570 Spring 2016 – Khanna

Parasitic Caps for NOR2 (worst case)

39

Vx

2Cg

Cd

Cd

Cd

Cd Cd

Penn ESE 570 Spring 2016 – Khanna

τ = (2Cd)(Rp2)+(3Cd+Cint+2Cg)(Rp1+Rp2)

Parasitic Caps for NOR2 (worst case)

40

Vx

2Cg

Cdbn1 = Cdbn2 = Cd

Cdbp1 = Cdbp2 = Cd

Csb1p = Csb2p = Cd Cd

Cd

Cd

Cd Cd

Penn ESE 570 Spring 2018 – Khanna

Parasitic Caps for NOR2 (worst case)

41

Vx

2Cg

Cdbn1 = Cdbn2 = Cd

Cdbp1 = Cdbp2 = Cd

Csb1p = Csb2p = Cd Cd

Cd

Cd

Cd Cd

V1 = 0, V2 = 0 ->VDD @t=0 & Vx ≈ Vout=VDD-> 0

Penn ESE 570 Spring 2018 – Khanna

Parasitic Caps for NOR2 (worst case)

42

Vx

2Cg

Cdbn1 = Cdbn2 = Cd

Cdbp1 = Cdbp2 = Cd

Csb1p = Csb2p = Cd Cd

Cd

Cd

Cd Cd

V1 = 0, V2 = 0 ->VDD @t=0 & Vx ≈ Vout=VDD-> 0

Elmore Model? Penn ESE 570 Spring 2018 – Khanna

Parasitic Caps for NOR2 (worst case)

43

Vx

2Cg

Cd

Cd

Cd

Cd Cd

Penn ESE 570 Spring 2016 – Khanna

Page 8: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

8

Parasitic Caps for NOR2 (worst case)

44

Vx

2Cg

Cd

Cd

Cd

Cd Cd

Penn ESE 570 Spring 2016 – Khanna

τ = (2Cd)(Rp1+Rn2)+(3Cd+Cint+2Cg)(Rn2)

45

Kenneth R. Laker, University of Pennsylvania,

updated 26Feb15

CMOS NAND2 Vth

k pEQV= 2 k p

k nEQV= kn/2k n

k n

k p k p

Penn ESE 570 Spring 2018 – Khanna

46

Kenneth R. Laker, University of Pennsylvania,

updated 26Feb15

CMOS NAND2 Vth

k pEQV= 2 k p

k nEQV= kn/2k n

k n

k p k p

Penn ESE 570 Spring 2018 – Khanna

47

Kenneth R. Laker, University of Pennsylvania,

updated 26Feb15

CMOS NAND2 Vth

k pEQV= 2 k p

k nEQV= kn/2k n

k n

k p k p

Vth =VDD2

kpEQVknEQV

=1

Symmetric ‘Inv’

&

4kp = knPenn ESE 570 Spring 2018 – Khanna

48

Vx

V1

V2

2Cg

Cdbp1 = Cdbp2 = Cdbp

Cdbn1 = Cdbn2 = Cdbn

Csb1n = Csb2n = Csbn = Cdbn

Parasitic Caps for NAND2 (worst case)

Penn ESE 570 Spring 2018 – Khanna

49

Vx

V1

V2

2Cg

Cdbp1 = Cdbp2 = Cdbp

Cdbn1 = Cdbn2 = Cdbn

Csb1n = Csb2n = Csbn = Cdbn

Parasitic Caps for NAND2 (worst case)

Penn ESE 570 Spring 2018 – Khanna

Page 9: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

9

50

Vx

V1

V2

2Cg

Cdbp1 = Cdbp2 = Cdbp

Cdbn1 = Cdbn2 = Cdbn

Csb1n = Csb2n = Csbn = Cdbn

Parasitic Caps for NAND2 (worst case)

V1 = VDD, V2 = VDD-> 0 @t=0 & Vx ≈ Vout= 0 ->VDD

Penn ESE 570 Spring 2018 – Khanna

51

Vx

V1

V2

2Cg

Cdbp1 = Cdbp2 = Cdbp

Cdbn1 = Cdbn2 = Cdbn

Csb1n = Csb2n = Csbn = Cdbn

Parasitic Caps for NAND2 (worst case)

Penn ESE 570 Spring 2018 – Khanna

52

Vx

V1

V2

2Cg

Cdbp1 = Cdbp2 = Cdbp

Cdbn1 = Cdbn2 = Cdbn

Csb1n = Csb2n = Csbn = Cdbn

Parasitic Caps for NAND2 (worst case)

V1 =VDD, V2 = 0 ->VDD @t=0 & Vx≈ Vout=VDD-> 0

Penn ESE 570 Spring 2018 – Khanna

Driving Large Load

53 Penn ESE 570 Spring 2018 – Khanna

Driving large load

54

CLOAD

standard CMOS logic on

die

INV1

Penn ESE 570 Spring 2018 – Khanna

Driving large load

55

CLOAD

standard CMOS logic on

die

INV1

A DESIGN STRATEGY: Make buffer (W/L)n and (W/L)p sufficiently large to drive CLOAD with a specified τP.

Buffer

How do you feel about this design strategy?

Penn ESE 570 Spring 2018 – Khanna

Page 10: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

10

Driving large load

56

CLOAD

standard CMOS logic on

die

INV1

A DESIGN STRATEGY: Make buffer (W/L)n and (W/L)p sufficiently large to drive CLOAD with a specified τP.

Buffer

How do you feel about this design strategy?

What happens to Cin as (W/L)n and (W/L)p sufficiently large? What is the impact on the standard CMOS logic on the die?

Penn ESE 570 Spring 2018 – Khanna

Super-Buffer to Drive Large CLOAD

57

CLOAD

CLOAD

PROBLEM: A minimum sized inverter drives a large load CLOAD, leading to

excessive delay, even with a large buffer (large W/L). SOLUTION: Insert N inverter stages in cascade with

increasing W/L between INV1 and load CLOAD. The total delay through N smaller stages will be less than the delay

through a single large stage driving CLOAD.

VDD

VDD N = 3

standard CMOS logic on

die

INV1

CLOAD

Penn ESE 570 Spring 2018 – Khanna

Super-Buffer to Drive Large CLOAD

58

INV1

Stage-0

a -> stage scale factor > 1

NOTE for CMOS INV: Cd = Cdbn + Cdbp Cg = Cgbn + Cgbp

CLOAD

Penn ESE 570 Spring 2018 – Khanna

Super-Buffer to Drive Large CLOAD

59

INV1

Stage-0

a -> stage scale factor > 1

Wn1 = aWn0, Ln1 = Ln0 and Wp1 = aWp0, Lp1 = Lp0

NOTE for CMOS INV: Cd = Cdbn + Cdbp Cg = Cgbn + Cgbp

CLOAD

Penn ESE 570 Spring 2018 – Khanna

Super-Buffer to Drive Large CLOAD

60

INV1

Stage-0

a -> stage scale factor > 1

Wn2 = aWn1, Ln2 = Ln1 and Wp2 = aWp1, Lp2 = Lp1

NOTE for CMOS INV: Cd = Cdbn + Cdbp Cg = Cgbn + Cgbp

CLOAD

Penn ESE 570 Spring 2018 – Khanna

Super-Buffer to Drive Large CLOAD

61

INV1

Stage-0

a -> stage scale factor > 1

Wni = aiWn0, Lni = Ln0 and Wpi = aiWp0, Lpi = Lp0 for i = 0, 1, 2, ..., N

NOTE for CMOS INV: Cd = Cdbn + Cdbp Cg = Cgbn + Cgbp

CLOAD

Penn ESE 570 Spring 2018 – Khanna

Page 11: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

11

Super-Buffer to Drive Large CLOAD

62

INV1

Stage-0

a -> stage scale factor > 1

Wni = aiWn0, Lni = Ln0 and Wpi = aiWp0, Lpi = Lp0 for i = 0, 1, 2, ..., N

Stage load capacitances Cloadi are also scaled by a

Cloadi = ai Cload0 = ai (Cd + aCg) for i = 0, 1, 2, .., N

NOTE for CMOS INV: Cd = Cdbn + Cdbp Cg = Cgbn + Cgbp

CLOAD

Penn ESE 570 Spring 2018 – Khanna

Super-Buffer to Drive Large CLOAD

63

INV1

Stage-0

a -> stage scale factor > 1

Wni = aiWn0, Lni = Ln0 and Wpi = aiWp0, Lpi = Lp0 for i = 0, 1, 2, ..., N

Stage load capacitances Cloadi are also scaled by a

Cloadi = ai Cload0 = ai (Cd + aCg) for i = 0, 1, 2, .., N when i = N: CloadN = aN Cload0 = aN (Cd + aCg) => let CLOAD = aN(aCg) = aN+1Cg

NOTE for CMOS INV: Cd = Cdbn + Cdbp Cg = Cgbn + Cgbp

CLOAD

Penn ESE 570 Spring 2018 – Khanna

Super-Buffer to Drive Large CLOAD

64

INV1

Stage-0

a -> stage scale factor > 1

Wni = aiWn0, Lni = Ln0 and Wpi = aiWp0, Lpi = Lp0 for i = 0, 1, 2, ..., N

Stage load capacitances Cloadi are also scaled by a

Cloadi = ai Cload0 = ai (Cd + aCg) for i = 0, 1, 2, .., N when i = N: CloadN = aN Cload0 = aN (Cd + aCg) => let CLOAD = aN(aCg) = aN+1Cg

CLOAD/Cg = aN+1 =>

NOTE for CMOS INV:

N is rounded up to nearest integer value.

Cd = Cdbn + Cdbp Cg = Cgbn + Cgbp

CLOAD

N =ln(CLOAD Cg )

lna−1

Penn ESE 570 Spring 2018 – Khanna

65

NOTE: ALL inverters Stage-0 through Stage-N have the same gate delay

CLOAD

CLOAD

τ p =τ PHL +τ PLH

2= Γ

Cload

W

Super-Buffer to Drive Large CLOAD

Penn ESE 570 Spring 2018 – Khanna

66

NOTE: ALL inverters Stage-0 through Stage-N have the same gate delay

Let τ0 = gate delay for INV1 (with a = 1) with load Cload = Cd + Cg

CLOAD

CLOAD

τ p =τ PHL +τ PLH

2= Γ

Cload

W

Super-Buffer to Drive Large CLOAD

τ0 = (Cd +Cg ) W0

Penn ESE 570 Spring 2018 – Khanna

67

NOTE: ALL inverters Stage-0 through Stage-N have the same gate delay

CLOAD

CLOAD

τ p =τ PHL +τ PLH

2= Γ

Cload

W

Super-Buffer to Drive Large CLOAD

τ p0

τ 0=

Cload0 W0

(Cd +Cg ) W0

=Cd + aCg

Cd +Cg

⇒ τ p0 = τ 0Cd + aCg

Cd +CgFor Stage-0:

Penn ESE 570 Spring 2018 – Khanna

τ0 = (Cd +Cg ) W0

Page 12: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

12

68

CLOAD

CLOAD

Super-Buffer to Drive Large CLOAD

τ p0

τ 0=

Cload0 W0

(Cd +Cg ) W0

=Cd + aCg

Cd +Cg

⇒ τ p0 = τ 0Cd + aCg

Cd +CgFor Stage-0:

For Stage-1:

For Stage-N:

τ p1

τ 0=

Cload1 aW0

(Cd +Cg ) W0

=aCd + a

2Cg( ) / aCd +Cg

⇒ τ p1 = τ 0Cd + aCg

Cd +Cg

= τ p0

τ pN

τ 0=CloadN aNW0

(Cd +Cg ) W0

=aNCd + a

N+1Cg( ) / aNCd +Cg

⇒ τ pN = τ 0Cd + aCg

Cd +Cg

= τ p0

Penn ESE 570 Spring 2018 – Khanna

69

CLOAD

CLOAD

Super-Buffer to Drive Large CLOAD

τ p0

τ 0=

Cload0 W0

(Cd +Cg ) W0

=Cd + aCg

Cd +Cg

⇒ τ p0 = τ 0Cd + aCg

Cd +CgFor Stage-0:

For Stage-1:

For Stage-N:

τ p1

τ 0=

Cload1 aW0

(Cd +Cg ) W0

=aCd + a

2Cg( ) / aCd +Cg

⇒ τ p1 = τ 0Cd + aCg

Cd +Cg

= τ p0

τ pN

τ 0=CloadN aNW0

(Cd +Cg ) W0

=aNCd + a

N+1Cg( ) / aNCd +Cg

⇒ τ pN = τ 0Cd + aCg

Cd +Cg

= τ p0

τ total = (N +1)τ p0 = (N +1)τ 0Cd + aCg

Cd +Cg

Choose N and a to minimize τtotal Penn ESE 570 Spring 2018 – Khanna

Super-Buffer to Drive Large CLOAD

70

Wni = aiWn0 Wpi = aiWp0

TO MINIMIZE τtotal:

τ total = (N +1)τ p0 = (N +1)τ 0Cd + aCg

Cd +Cg

N =ln(CLOAD Cg )

lna−1

τ total =ln(CLOAD Cg )

lnaτ 0Cd + aCg

Cd +Cg

dτ totalda

= τ 0 ⋅ lnCLOAD

Cg

⋅−1/ alna( )2

Cd + aCg

Cd +Cg

+1lna

Cg

Cd +Cg

#

$%%

&

'((= 0

−1/ alna( )2

Cd + aCg

Cd +Cg

+1lna

Cg

Cd +Cg

= 0

aopt lnaopt −1#$ &'=Cd

Cg

Penn ESE 570 Spring 2018 – Khanna

Super-Buffer to Drive Large CLOAD

71

Wni = aiWn0 Wpi = aiWp0

TO MINIMIZE τtotal:

τ total = (N +1)τ p0 = (N +1)τ 0Cd + aCg

Cd +Cg

N =ln(CLOAD Cg )

lna−1

τ total =ln(CLOAD Cg )

lnaτ 0Cd + aCg

Cd +Cg

dτ totalda

= τ 0 ⋅ lnCLOAD

Cg

⋅−1/ alna( )2

Cd + aCg

Cd +Cg

+1lna

Cg

Cd +Cg

#

$%%

&

'((= 0

−1/ alna( )2

Cd + aCg

Cd +Cg

+1lna

Cg

Cd +Cg

= 0

aopt lnaopt −1#$ &'=Cd

Cg

Cd = 0 is only an academic special case. Penn ESE 570 Spring 2018 – Khanna

72

EXAMPLE: Design a Buffer using a scaled cascade of inverters to achieve minimum total delay ttotal when CLOAD = 100 Cg. Consider the case where Cd = 2Cg.

e

Cd = 2Cg => plot aopt as function of Cd/Cg: aopt = 4.35 => ln aopt = 1.47

CLOAD≈ 100Cg

CdCg

= aopt [ln aopt− 1]Cd

Cd/Cg = 2

aopt= 4.35

Super-Buffer to Drive Large CLOAD

N =ln(CLOAD Cg )

lna−1= 2.13→ N = 3

Penn ESE 570 Spring 2018 – Khanna

Idea

!  CMOS Logic "  Complimentary dual pull-up/down networks

!  Delay "  1st order model on gates "  Size for worst case delay

!  Gates have different efficiencies "  Drive strength per unit input capacitance "  Reason to prefer nand over nor

!  Large fanin and fanout slow gates "  Decompose into stages "  …but not too much

!  Drive large load in scaled stages

73 Penn ESE 570 Spring 2018 – Khanna

Page 13: Lecture Outline VLSI Fundamentals · for Assume: bulk at VDD the unit n/pMOS transistors " p For scaled MOS device with scale factors κ n, κ p ≥ 1, i.e. W = κW un (W p = κ p

13

Admin

!  HW 5 due Thursday, 3/1

74 Penn ESE 570 Spring 2018 – Khanna