CMPEN 411 VLSI Digital Circuits Spring 2012 Lecture 12...

Post on 17-May-2018

216 views 0 download

transcript

Sp12 CMPEN 411 L12 S.1

CMPEN 411VLSI Digital Circuits

Spring 2012

Lecture 12: Logical Effort

[Adapted from Rabaey’s Digital Integrated Circuits, Second Edition, ©2003 J. Rabaey, A. Chandrakasan, B. Nikolic]

Sp12 CMPEN 411 L12 S.2

PMOS/NMOS Ratio Effects

3

3.5

4

4.5

5

1 2 3 4 5

= (W/Lp)/(W/Ln)

x 10-11

= (W/Lp)/(W/Ln)

tpLH

tp

tpHL

of 2.4 (= 31 k/13 k)

gives symmetrical

response

of 1.6 to 1.9 gives

optimal performance

Sp12 CMPEN 411 L12 S.3

Example of Inverter Chain Sizing

CL/Cg,1 has to be evenly distributed over N = 3 inverters

F = CL/Cg,1 = 8/1

f =

In Out

CL = 8 Cg,1Cg,1

1

Sp12 CMPEN 411 L12 S.4

Heads up

This lecture

Logical Effort

- Reading assignment – textbook pp251-257, and handout

Next lecture

Designing energy efficient logic

- Reading assignment – Rabaey, et al, 5.5 & 6.2.1

Sp12 CMPEN 411 L12 S.5

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, 1991

Both authors are vice president and fellow at Sun Microsystems

Gain-based synthesis based on Logical effort

Implemented in IBM’s logic synthesis tool BooleDozer

Also adopted by Magma’s logic synthesis tool

History

Sp12 CMPEN 411 L12 S.6

Inverter Delay

Divide 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

Sp12 CMPEN 411 L12 S.7

Logical Effort Delay Model

Delay of logic gate has two components

d = f + p

f: effort delay

p: parasitic delay

Effort delay fg has two components:

f=gh g: logical effort

h: electrical effort = Cout/ Cin (the ratio of

output capacitance to input capacitance)

Sp12 CMPEN 411 L12 S.8

Gate Delay Components

Split delay of logic gate into three components

Delay = Logical Effort x Electrical Effort + Parasitic Delay

Logical Effort

Complexity of logic function (Invert, NAND, NOR, etc)

Define inverter has logical effort = 1

Depends only on topology not transistor sizing

Electrical Effort

Ratio of output capacitance to input capacitance Cout/Cin

Parasitic Delay

Intrinsic delay

Independent of transistor sizes and output load

Logic

Gate

Cin

Cout

Sp12 CMPEN 411 L12 S.9

Computing Logical Effort

Logical effort is the ratio of the input

capacitance of a gate to the input

capacitance of an inverter delivering

the same output current

Defined to be 1 for an inverter

g represents the fact that, for a given load, complex gates have to work harder than an inverter to produce a similar (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 input capacitance a gate presents to deliver the same output current)

Sp12 CMPEN 411 L12 S.10

Computing Logical Effort

Sp12 CMPEN 411 L12 S.11

Logic Gate Delay

Sp12 CMPEN 411 L12 S.12

Logic Gate Delay

Sp12 CMPEN 411 L12 S.13

Example

Estimate the delay of an inverter driving 4 identical inverter: (FO4)

g= h= p= d=

Sp12 CMPEN 411 L12 S.14

Example

Sp12 CMPEN 411 L12 S.15

Path Delay of Complex Logic Gate Network

Total path delay through a combinational logic block

tp = dj = pj + hj gj

the minimum delay through the path determines that each stage should bear the same gate effort

h1g1 = h2g2 = . . . = hNgN

Sp12 CMPEN 411 L12 S.16

Application of Logical Effort

Alternative logic structures, which is the fastest?

F = ABCDEFGH

Sp12 CMPEN 411 L12 S.17

Application of Logical Effort

Alternative logic structures, which is the fastest?

F = ABCDEFGHg1=10/3 g2=1

g1=4/3 g2=5/3 g3=4/3 g4=1

g1=6/3 g2=5/3

Sp12 CMPEN 411 L12 S.18

Review: Design Technique 4

Isolating fan-in from fan-out using buffer insertion

CLCL

Sp12 CMPEN 411 L12 S.19

Questions

d = gh+p

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?

Sp12 CMPEN 411 L12 S.20

From Elmore model to Logical Effort Model

Cin

R

Cp Cout

Elmore Delay = R(Cp+Cout)

= R*Cout + R*Cp

= RCin*(Cout/Cin)+R*Cp

g h p

Sp12 CMPEN 411 L12 S.21

Parasitic Delay

Main cause is drain capacitances

These scale with transistor width so it is independent of transistor sizes

For inverter:

Parasitic Delay ~= 1.0 CdrainN

RonN

CgateN

CdrainPRonP

CgateP

Sp12 CMPEN 411 L12 S.22

How to calculate single delay parameter:

Characterize 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)

Sp12 CMPEN 411 L12 S.23

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

Sp12 CMPEN 411 L12 S.24

Multistage Logic Network

Path logical effort, G = gi (gi = L.E. stage i)

Path electrical effort, H = Cout/Cin (hi = E.E. stage i)

Parasitic delay, P = pi (pi = P.D. stage i)

Path effort, F= fi = gi hi

D= F+P

Sp12 CMPEN 411 L12 S.25

Paths that Branch

Consider paths that branch:

G =

H =

GH =

h1 =

h2 =

F = GH?

5

15

1590

90

Sp12 CMPEN 411 L12 S.26

Paths that Branch

No! Consider paths that branch:

G = 1

H = 90 / 5 = 18

GH = 18

h1 = (15 +15) / 5 = 6

h2 = 90 / 15 = 6

F = g1g2h1h2 = 36 = 2GH

5

15

1590

90

Sp12 CMPEN 411 L12 S.27

Add Branching Effort

Branching effort:

pathon

pathoffpathon

C

CCb

Sp12 CMPEN 411 L12 S.28

Multistage Networks

Path electrical effort: H= Cout/Cin

Path logical effort: G = g1g2…gN

Branching effort: B = b1b2…bN

Path effort: F= GBH

Path delay D = F+P=GBH+P

Sp12 CMPEN 411 L12 S.29

Optimal Number of Stages

Minimum delay when:

stage effort = logical effort x electrical effort = 3.4-3.8 ~ 4

Fan-out-of-four (FO4) is convenient design size (~5)

Cin

Cout

FO4 delay: Delay of

inverter driving four

copies of itself

Sp12 CMPEN 411 L12 S.30

Method of Logical Effort

Compute 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 stages

Work either from either end, find sizes: Cin = Cout*g/f

Sp12 CMPEN 411 L12 S.31

Example of Inverter (Buffer) Staging

CL = 64 Cg,1Cg,1 = 1

1

CL = 64 Cg,1Cg,1 = 1

1 8

CL = 64 Cg,1Cg,1 = 1

1 4 16

CL = 64 Cg,1Cg,1 = 1

1 2.8 8 22.6

N f tp

1 64 65

2 8 18

3 4 15

4 2.8 15.3

Sp12 CMPEN 411 L12 S.32

Summary

Sp12 CMPEN 411 L12 S.33

Next Lecture and Reminders

Next lecture

Designing energy efficient logic

- Reading assignment – Rabaey, et al, 5.5 & 6.2.1