EE 447 VLSI Design Lecture 5: Logical Effort. EE 447 VLSI Design 5: Logical Effort2 Outline Introduction Delay in a Logic Gate Multistage Logic Networks.

Slides:



Advertisements
Similar presentations
EE 447 VLSI Design Lecture 7: Combinational Circuits
Advertisements

Introduction to CMOS VLSI Design Combinational Circuits
Design and Implementation of VLSI Systems (EN1600)
COMBINATIONAL LOGIC DYNAMICS
Logic Gate Delay Modeling -1 Bishnu Prasad Das Research Scholar CEDT, IISc, Bangalore
Lecture 5: DC & Transient Response
Lecture 9: Combinational Circuit Design. CMOS VLSI DesignCMOS VLSI Design 4th Ed. 10: Combinational Circuits2 Outline  Bubble Pushing  Compound Gates.
Chapter 08 Designing High-Speed CMOS Logic Networks
Logical Effort A Method to Optimize Circuit Topology Swarthmore College E77 VLSI Design Adem Kader David Luong Mark Piper December 6, 2005.
A Look at Chapter 4: Circuit Characterization and Performance Estimation Knowing the source of delays in CMOS gates and being able to estimate them efficiently.
Combinational circuits Lection 6
Logical Effort Section Problems: P6.2 Compute the oscillation frequency of a seven-stage ring oscillator using 0.18 micron technology. Does.
Introduction to CMOS VLSI Design Combinational Circuits.
S. Reda EN1600 SP’08 Design and Implementation of VLSI Systems (EN1600S08) Lecture12: Logical Effort (1/2) Prof. Sherief Reda Division of Engineering,
Introduction to CMOS VLSI Design Lecture 4: DC & Transient Response
S. Reda EN160 SP’07 Design and Implementation of VLSI Systems (EN0160) Lecture 11: Logical Effort (1/2) Prof. Sherief Reda Division of Engineering, Brown.
Introduction to CMOS VLSI Design Lecture 5: Logical Effort David Harris Harvey Mudd College Spring 2004.
Introduction to CMOS VLSI Design Lecture 4: DC & Transient Response Credits: David Harris Harvey Mudd College (Material taken/adapted from Harris’ lecture.
Logical Effort.
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE VLSI Circuit Design Lecture 13 - More about.
Outline Noise Margins Transient Analysis Delay Estimation
Introduction to CMOS VLSI Design Circuit Families.
1 MICROELETTRONICA Logical Effort and delay Lection 4.
CMOS VLSI Design4: DC and Transient ResponseSlide 1 EE466: VLSI Design Lecture 05: DC and transient response – CMOS Inverters.
Introduction to CMOS VLSI Design Lecture 5: Logical Effort
Lecture 4 – Logical Effort
EE141 © Digital Integrated Circuits 2nd Combinational Circuits 1 Logical Effort - sizing for speed.
S. Reda EN160 SP’08 Design and Implementation of VLSI Systems (EN1600) Lecture 13: Logical Effort (2/2) Prof. Sherief Reda Division of Engineering, Brown.
Design and Implementation of VLSI Systems (EN0160)
EE4800 CMOS Digital IC Design & Analysis
EE 447 VLSI Design 4: DC and Transient Response1 VLSI Design DC & Transient Response.
Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 5.1 EE4800 CMOS Digital IC Design & Analysis Lecture 5 Logic Effort Zhuo Feng.
S. Reda EN160 SP’07 Design and Implementation of VLSI Systems (EN0160) Lecture 17: Static Combinational Circuit Design (1/2) Prof. Sherief Reda Division.
Cascading CMOS gates. Elettronica T A.A Digital Integrated Circuits © Prentice Hall 2003 Cascading CMOS Goal l Designing for minimum propagation.
Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 10.1 EE4800 CMOS Digital IC Design & Analysis Lecture 10 Combinational Circuit Design Zhuo Feng.
Review: CMOS Inverter: Dynamic
Elmore Delay, Logical Effort
EE 447 VLSI Design Lecture 8: Circuit Families.
Chapter 07 Electronic Analysis of CMOS Logic Gates
Logical Effort: optimal CMOS device sizing Albert Chun (M.A.Sc. Candidate) Ottawa-Carleton Institute for Electrical & Computer Engineering (OCIECE) Ottawa,
Introduction  Chip designers face a bewildering array of choices –What is the best circuit topology for a function? –How many stages of logic give least.
Optimal digital circuit design Mohammad Sharifkhani.
Logical Effort and Transistor Sizing Digital designs are usually expected to operate at high frequencies, thus designers often have to choose the fastest.
Lecture 6: Logical Effort
Introduction to CMOS VLSI Design Lecture 5: Logical Effort GRECO-CIn-UFPE Harvey Mudd College Spring 2004.
Lecture 10: Circuit Families. CMOS VLSI DesignCMOS VLSI Design 4th Ed. 10: Circuit Families2 Outline  Pseudo-nMOS Logic  Dynamic Logic  Pass Transistor.
Introduction to CMOS VLSI Design Lecture 6: Logical Effort
Linear Delay Model In general the propagation delay of a gate can be written as: d = f + p –p is the delay due to intrinsic capacitance. –f is the effort.
Introduction to CMOS VLSI Design MOS devices: static and dynamic behavior.
Timing Analysis Section Delay Time Def: Time required for output signal Y to change due to change in input signal X Up to now, we have assumed.
EEC 118 Lecture #7: Designing with Logical Effort Rajeevan Amirtharajah University of California, Davis Jeff Parkhurst Intel Corporation.
Introduction to CMOS VLSI Design Lecture 9: Circuit Families
Chapter 6 Copyright © 2004 The McGraw-Hill Companies, Inc. All rights reserved. High-Speed CMOS Logic Design.
EE141 © Digital Integrated Circuits 2nd Combinational Circuits 1 A few notes for your design  Finger and multiplier in schematic design  Parametric analysis.
Modern VLSI Design 3e: Chapter 4 Copyright  1998, 2002 Prentice Hall PTR Topics n Transistor sizing: –Spice analysis. –Logical effort.
EE586 VLSI Design Partha Pande School of EECS Washington State University
COE 360 Principles of VLSI Design Delay. 2 Definitions.
CMOS VLSI Design Lecture 4: DC & Transient Response Younglok Kim Sogang University Fall 2006.
Copyright © 2004 The McGraw-Hill Companies, Inc. All rights reserved.
Introduction to CMOS VLSI Design Chapter 4 Delay
Lecture 6: Logical Effort
Lecture 6: Logical Effort
Introduction to CMOS VLSI Design Lecture 5: Logical Effort
Estimating Delays Would be nice to have a “back of the envelope” method for sizing gates for speed Logical Effort Book by Sutherland, Sproull, Harris Chapter.
Lecture 9: Combinational Circuit Design
Lecture 6: Logical Effort
Introduction to CMOS VLSI Design Lecture 4: DC & Transient Response
CS 258 Parallel Computer Architecture Lecture 5 Routing (Con’t)
COMBINATIONAL LOGIC - 2.
Presentation transcript:

EE 447 VLSI Design Lecture 5: Logical Effort

EE 447 VLSI Design 5: Logical Effort2 Outline Introduction Delay in a Logic Gate Multistage Logic Networks Choosing the Best Number of Stages Example Summary

EE 447 VLSI Design 5: Logical Effort3 Introduction Chip designers face a bewildering array of choices What is the best circuit topology for a function? How many stages of logic give least delay? How wide should the transistors be? Logical effort is a method to make these decisions Uses a simple model of delay Allows back-of-the-envelope calculations Helps make rapid comparisons between alternatives Emphasizes remarkable symmetries

EE 447 VLSI Design 5: Logical Effort4 Example Ben Bitdiddle is the memory designer for the Motoroil 68W86, an embedded automotive processor. Help Ben design the decoder for a register file. Decoder specifications: 16 word register file Each word is 32 bits wide Each bit presents load of 3 unit-sized transistors True and complementary address inputs A[3:0] Each input may drive 10 unit-sized transistors Ben needs to decide: How many stages to use? How large should each gate be? How fast can decoder operate?

EE 447 VLSI Design 5: Logical Effort5 Delay in a Logic Gate Express delays in process-independent unit  3RC  12 ps in 180 nm process 40 ps in 0.6  m process

EE 447 VLSI Design 5: Logical Effort6 Delay in a Logic Gate Express delays in process-independent unit Delay has two components

EE 447 VLSI Design 5: Logical Effort7 Delay in a Logic Gate Express delays in process-independent unit Delay has two components Effort delay f = gh (a.k.a. stage effort) Again has two components

EE 447 VLSI Design 5: Logical Effort8 Delay in a Logic Gate Express delays in process-independent unit Delay has two components Effort delay f = gh (a.k.a. stage effort) Again has two components g: logical effort Measures relative ability of gate to deliver current g  1 for inverter

EE 447 VLSI Design 5: Logical Effort9 Delay in a Logic Gate Express delays in process-independent unit Delay has two components Effort delay f = gh (a.k.a. stage effort) Again has two components h: electrical effort = C out / C in Ratio of output to input capacitance Sometimes called fanout

EE 447 VLSI Design 5: Logical Effort10 Delay in a Logic Gate Express delays in process-independent unit Delay has two components Parasitic delay p Represents delay of gate driving no load Set by internal parasitic capacitance

EE 447 VLSI Design 5: Logical Effort11 Delay Plots d = f + p = gh + p

EE 447 VLSI Design 5: Logical Effort12 Delay Plots d = f + p = gh + p What about NOR2?

EE 447 VLSI Design 5: Logical Effort13 Computing Logical Effort DEF: Logical effort is the ratio of the input capacitance of a gate to the input capacitance of an inverter delivering the same output current. Measure from delay vs. fanout plots Or estimate by counting transistor widths

EE 447 VLSI Design 5: Logical Effort14 Catalog of Gates Gate typeNumber of inputs 1234n Inverter1 NAND4/35/36/3(n+2)/3 NOR5/37/39/3(2n+1)/3 Tristate / mux XOR, XNOR4, 46, 12, 6 8, 16, 16, 8 Logical effort of common gates

EE 447 VLSI Design 5: Logical Effort15 Catalog of Gates Gate typeNumber of inputs 1234n Inverter1 NAND234n NOR234n Tristate / mux 24682n XOR, XNOR468 Parasitic delay of common gates In multiples of p inv (  1)

EE 447 VLSI Design 5: Logical Effort16 Example: Ring Oscillator Estimate the frequency of an N-stage ring oscillator Logical Effort: g = Electrical Effort: h = Parasitic Delay: p = Stage Delay:d = Frequency:f osc =

EE 447 VLSI Design 5: Logical Effort17 Example: Ring Oscillator Estimate the frequency of an N-stage ring oscillator Logical Effort: g = 1 Electrical Effort: h = 1 Parasitic Delay: p = 1 Stage Delay:d = 2 Frequency:f osc = 1/(2*N*d) = 1/4N 31 stage ring oscillator in 0.6  m process has frequency of ~ 200 MHz

EE 447 VLSI Design 5: Logical Effort18 Example: FO4 Inverter Estimate the delay of a fanout-of-4 (FO4) inverter Logical Effort: g = Electrical Effort: h = Parasitic Delay: p = Stage Delay:d =

EE 447 VLSI Design 5: Logical Effort19 Example: FO4 Inverter Estimate the delay of a fanout-of-4 (FO4) inverter Logical Effort: g = 1 Electrical Effort: h = 4 Parasitic Delay: p = 1 Stage Delay:d = 5 The FO4 delay is about 200 ps in 0.6  m process 60 ps in a 180 nm process f/3 ns in an f  m process

EE 447 VLSI Design 5: Logical Effort20 Multistage Logic Networks Logical effort generalizes to multistage networks Path Logical Effort Path Electrical Effort Path Effort

EE 447 VLSI Design 5: Logical Effort21 Multistage Logic Networks Logical effort generalizes to multistage networks Path Logical Effort Path Electrical Effort Path Effort Can we write F = GH?

EE 447 VLSI Design 5: Logical Effort22 Paths that Branch No! Consider paths that branch: G = H = GH = h 1 = h 2 = F = GH?

EE 447 VLSI Design 5: Logical Effort23 Paths that Branch No! Consider paths that branch: G = 1 H = 90 / 5 = 18 GH = 18 h 1 = (15 +15) / 5 = 6 h 2 = 90 / 15 = 6 F = g 1 g 2 h 1 h 2 = 36 = 2GH

EE 447 VLSI Design 5: Logical Effort24 Branching Effort Introduce branching effort Accounts for branching between stages in path Now we compute the path effort F = GBH Note:

EE 447 VLSI Design 5: Logical Effort25 Multistage Delays Path Effort Delay Path Parasitic Delay Path Delay

EE 447 VLSI Design 5: Logical Effort26 Designing Fast Circuits Delay is smallest when each stage bears same effort Thus minimum delay of N stage path is This is a key result of logical effort Find fastest possible delay Doesn’t require calculating gate sizes

EE 447 VLSI Design 5: Logical Effort27 Gate Sizes How wide should the gates be for least delay? Working backward, apply capacitance transformation to find input capacitance of each gate given load it drives. Check work by verifying input cap spec is met.

EE 447 VLSI Design 5: Logical Effort28 Example: 3-stage path Select gate sizes x and y for least delay from A to B

EE 447 VLSI Design 5: Logical Effort29 Example: 3-stage path Logical EffortG = Electrical EffortH = Branching EffortB = Path EffortF = Best Stage Effort Parasitic DelayP = DelayD =

EE 447 VLSI Design 5: Logical Effort30 Example: 3-stage path Logical EffortG = (4/3)*(5/3)*(5/3) = 100/27 Electrical EffortH = 45/8 Branching EffortB = 3 * 2 = 6 Path EffortF = GBH = 125 Best Stage Effort Parasitic DelayP = = 7 DelayD = 3*5 + 7 = 22 = 4.4 FO4

EE 447 VLSI Design 5: Logical Effort31 Example: 3-stage path Work backward for sizes y = x =

EE 447 VLSI Design 5: Logical Effort32 Example: 3-stage path Work backward for sizes y = 45 * (5/3) / 5 = 15 x = (15*2) * (5/3) / 5 = 10

EE 447 VLSI Design 5: Logical Effort33 Best Number of Stages How many stages should a path use? Minimizing number of stages is not always fastest Example: drive 64-bit datapath with unit inverter D =

EE 447 VLSI Design 5: Logical Effort34 Best Number of Stages How many stages should a path use? Minimizing number of stages is not always fastest Example: drive 64-bit datapath with unit inverter D = NF 1/N + P = N(64) 1/N + N

EE 447 VLSI Design 5: Logical Effort35 Derivation Consider adding inverters to end of path How many give least delay? Define best stage effort

EE 447 VLSI Design 5: Logical Effort36 Best Stage Effort has no closed-form solution Neglecting parasitics (p inv = 0), we find  = (e) For p inv = 1, solve numerically for  = 3.59

EE 447 VLSI Design 5: Logical Effort37 Sensitivity Analysis How sensitive is delay to using exactly the best number of stages? 2.4 <  < 6 gives delay within 15% of optimal We can be sloppy! I like  = 4

EE 447 VLSI Design 5: Logical Effort38 Example, Revisited Ben Bitdiddle is the memory designer for the Motoroil 68W86, an embedded automotive processor. Help Ben design the decoder for a register file. Decoder specifications: 16 word register file Each word is 32 bits wide Each bit presents load of 3 unit-sized transistors True and complementary address inputs A[3:0] Each input may drive 10 unit-sized transistors Ben needs to decide: How many stages to use? How large should each gate be? How fast can decoder operate?

EE 447 VLSI Design 5: Logical Effort39 Number of Stages Decoder effort is mainly electrical and branching Electrical Effort:H = Branching Effort:B = If we neglect logical effort (assume G = 1) Path Effort:F = Number of Stages:N =

EE 447 VLSI Design 5: Logical Effort40 Number of Stages Decoder effort is mainly electrical and branching Electrical Effort:H = (32*3) / 10 = 9.6 Branching Effort:B = 8 If we neglect logical effort (assume G = 1) Path Effort:F = GBH = 76.8 Number of Stages:N = log 4 F = 3.1 Try a 3-stage design

EE 447 VLSI Design 5: Logical Effort41 Gate Sizes & Delay Logical Effort:G = Path Effort:F = Stage Effort: Path Delay: Gate sizes:z = y =

EE 447 VLSI Design 5: Logical Effort42 Gate Sizes & Delay Logical Effort: G = 1 * 6/3 * 1 = 2 Path Effort: F = GBH = 154 Stage Effort: Path Delay: Gate sizes:z = 96*1/5.36 = 18 y = 18*2/5.36 = 6.7

EE 447 VLSI Design 5: Logical Effort43 Comparison Compare many alternatives with a spreadsheet DesignNGPD NAND4-INV NAND2-NOR2220/ INV-NAND4-INV NAND4-INV-INV-INV NAND2-NOR2-INV-INV420/ NAND2-INV-NAND2-INV416/ INV-NAND2-INV-NAND2-INV516/ NAND2-INV-NAND2-INV-INV-INV616/9821.6

EE 447 VLSI Design 5: Logical Effort44 Review of Definitions TermStagePath number of stages logical effort electrical effort branching effort effort effort delay parasitic delay delay

EE 447 VLSI Design 5: Logical Effort45 Method of Logical Effort 1) Compute path effort 2) Estimate best number of stages 3) Sketch path with N stages 4) Estimate least delay 5) Determine best stage effort 6) Find gate sizes

EE 447 VLSI Design 5: Logical Effort46 Limits of Logical Effort Chicken and egg problem Need path to compute G But don’t know number of stages without G Simplistic delay model Neglects input rise time effects Interconnect Iteration required in designs with wire Maximum speed only Not minimum area/power for constrained delay

EE 447 VLSI Design 5: Logical Effort47 Summary Logical effort is useful for thinking of delay in circuits Numeric logical effort characterizes gates NANDs are faster than NORs in CMOS Paths are fastest when effort delays are ~4 Path delay is weakly sensitive to stages, sizes But using fewer stages doesn’t mean faster paths Delay of path is about log 4 F FO4 inverter delays Inverters and NAND2 best for driving large caps Provides language for discussing fast circuits But requires practice to master