Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

14
S. Reda EN160 SP’07 esign and Implementation of VLSI System (EN0160) Lecture10: Delay Estimation Prof. Sherief Reda Division of Engineering, Brown University Spring 2007 [sources: Weste/Addison Wesley – Rabaey/Pearson]

description

Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation. Prof. Sherief Reda Division of Engineering, Brown University Spring 2007. [sources: Weste/Addison Wesley – Rabaey/Pearson]. Inverter step response. - PowerPoint PPT Presentation

Transcript of Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

Page 1: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Design and Implementation of VLSI Systems(EN0160)

Lecture10: Delay Estimation

Prof. Sherief RedaDivision of Engineering, Brown University

Spring 2007

[sources: Weste/Addison Wesley – Rabaey/Pearson]

Page 2: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Inverter step response

0

0

( )

( )

( )

(

(

)

)

DD

DD

loa

d

ou

i

d

t

o

n

ut sn

V

V

u t t V

t t

V t

V

d

dt C

t

I t

0

2

2

0

2)

)

( ( )

( DD DD t

DD

out

outout out D t

n

t

ds

D

I V

t t

V V V V

V V V VV

t

V t V t

Vout(t)

Vin(t)

t0t

Vin(t) Vout(t)Cload

Idsn(t)

• Find the step response for an inverter driving a load capacitance?

Page 3: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Delay definitions

• tpdr: rising propagation delay– From input to rising output crossing VDD/2

• tpdf: falling propagation delay– From input to falling output crossing VDD/2

• tpd: average propagation delay– tpd = (tpdr + tpdf)/2

• tr: rise time– From output crossing 0.2 VDD to 0.8 VDD

• tf: fall time– From output crossing 0.8 VDD to 0.2 VDD

Page 4: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Delay definitions continued

• tcdr: rising contamination (best-case) delay– From input to rising output crossing VDD/2

• tcdf: falling contamination (best-case) delay– From input to falling output crossing VDD/2

• tcd: average contamination delay– tpd = (tcdr + tcdf)/2

Page 5: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Why should we care? Just run SPICE!

(V)

0.0

0.5

1.0

1.5

2.0

t(s)0.0 200p 400p 600p 800p 1n

tpdf = 66ps tpdr = 83psVin Vout

• Time consuming• Not very useful in evaluating different options and optimizing

different parameters

We need a simple way to estimate delay for “what if” scenarios.

Page 6: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Simple RC delay models

• Use equivalent circuits for MOS transistors– Ideal switch + capacitance and ON resistance– Unit nMOS has resistance R, capacitance C– Unit pMOS has resistance 2R, capacitance C

• Capacitance proportional to width• Resistance inversely proportional to width

kg

s

d

g

s

d

kCkC

kCR/k

kg

s

d

g

s

d

kC

kC

kC

2R/k

Page 7: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Elmore delay model

• ON transistors look like resistors• Pullup or pulldown network modeled as RC ladder• Elmore delay of RC ladder

R1 R2 R3 RN

C1 C2 C3 CN

nodes

1 1 1 2 2 1 2... ...

pd i to source ii

N N

t R C

RC R R C R R R C

Page 8: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Example: 3-input NAND gate

• Sketch a 3-input NAND with transistor widths chosen to achieve effective rise and fall resistances equal to a unit inverter (R).

3

3

222

3

Page 9: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Example: 3-input NAND gate

2 2 2

3

3

33C

3C

3C

3C

2C

2C

2C

2C

2C

2C

3C

3C

3C

2C 2C 2C

• Annotate the 3-input NAND gate with gate and diffusion capacitance

9C

3C

3C3

3

3

222

5C

5C

5C

Page 10: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Computing the rise and fall delays

• Estimate rising and falling propagation delays of a 2-input NAND driving h identical gates.

h copies

6C

2C2

2

22

4hC

B

Ax

Y

R

(6+4h)CY 6 4pdrt h RC

2 2 22 6 4

7 4

R R Rpdft C h C

h RC

(6+4h)C2CR/2

R/2x Y

Page 11: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Delay components

• Delay has two parts– Parasitic delay

• 6 or 7 RC• Independent of load

– Effort delay• 4h RC• Proportional to load capacitance

Page 12: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Contamination delay

• Best-case (contamination) delay can be substantially less than propagation delay.

• Ex: If both inputs fall simultaneously

6C

2C2

2

22

4hC

B

Ax

Y

R

(6+4h)CYR

3 2cdrt h RC

Page 13: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Diffusion capacitance

7C

3C

3C3

3

3

222

3C

2C2C

3C3C

IsolatedContactedDiffusionMerged

UncontactedDiffusion

SharedContactedDiffusion

• we assumed contacted diffusion on every s / d.• Good layout minimizes diffusion area• Ex: NAND3 layout shares one diffusion contact

– Reduces output capacitance by 2C– Merged uncontacted diffusion might help too

Page 14: Design and Implementation of VLSI Systems (EN0160) Lecture10: Delay Estimation

S. Reda EN160 SP’07

Layout Comparison

• Which layout is better?

AVDD

GND

B

Y

AVDD

GND

B

Y