EE M216A.:. Fall Lecture 5. Logical Effort. Prof. Dejan Marković

Similar documents
EE M216A.:. Fall Lecture 4. Speed Optimization. Prof. Dejan Marković Speed Optimization via Gate Sizing

Logical Effort: Designing for Speed on the Back of an Envelope David Harris Harvey Mudd College Claremont, CA

Logical Effort. Sizing Transistors for Speed. Estimating Delays

Logical Effort EE141

ECE429 Introduction to VLSI Design

EE 447 VLSI Design. Lecture 5: Logical Effort

Lecture 5. Logical Effort Using LE on a Decoder

Lecture 8: Combinational Circuit Design

Lecture 8: Logic Effort and Combinational Circuit Design

Lecture 6: Logical Effort

C.K. Ken Yang UCLA Courtesy of MAH EE 215B

VLSI Design, Fall Logical Effort. Jacob Abraham

Very Large Scale Integration (VLSI)

Logic Gate Sizing. The method of logical effort. João Canas Ferreira. March University of Porto Faculty of Engineering

7. Combinational Circuits

Introduction to CMOS VLSI Design. Lecture 5: Logical Effort. David Harris. Harvey Mudd College Spring Outline

EE141. Administrative Stuff

Digital Integrated Circuits A Design Perspective

Interconnect (2) Buffering Techniques. Logical Effort

Lecture 8: Combinational Circuits

Lecture 6: Circuit design part 1

Lecture 8: Combinational Circuits

EE141-Fall 2011 Digital Integrated Circuits

Static CMOS Circuits. Example 1

Lecture 9: Combinational Circuits

Announcements. EE141-Spring 2007 Digital Integrated Circuits. CMOS SRAM Analysis (Read/Write) Class Material. Layout. Read Static Noise Margin

Lecture 9: Combinational Circuit Design

Digital Microelectronic Circuits ( ) Logical Effort. Lecture 7: Presented by: Adam Teman

EE141-Fall 2012 Digital Integrated Circuits. Announcements. Homework #3 due today. Homework #4 due next Thursday EECS141 EE141

Advanced VLSI Design Prof. A. N. Chandorkar Department of Electrical Engineering Indian Institute of Technology- Bombay

CARNEGIE MELLON UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING DIGITAL INTEGRATED CIRCUITS FALL 2002

Introduction to CMOS VLSI Design. Logical Effort B. Original Lecture by Jay Brockman. University of Notre Dame Fall 2008

and V DS V GS V T (the saturation region) I DS = k 2 (V GS V T )2 (1+ V DS )

EECS 151/251A Homework 5

Energy Delay Optimization

EE241 - Spring 2000 Advanced Digital Integrated Circuits. Announcements

Spiral 2 7. Capacitance, Delay and Sizing. Mark Redekopp

Using MOS Models. C.K. Ken Yang UCLA Courtesy of MAH EE 215B

Lecture 12 CMOS Delay & Transient Response

Integrated Circuits & Systems

Chapter 4. Digital Integrated Circuit Design I. ECE 425/525 Chapter 4. CMOS design can be realized meet requirements from

Lecture 14: Circuit Families

EE115C Digital Electronic Circuits Homework #5

EE115C Digital Electronic Circuits Homework #6

Chapter 2 DESIGN OF ENERGY EFFICIENT DIGITAL CIRCUITS

Lecture Outline. ESE 570: Digital Integrated Circuits and VLSI Fundamentals. Review: 1st Order RC Delay Models. Review: Two-Input NOR Gate (NOR2)

CMOS Transistors, Gates, and Wires

EE 466/586 VLSI Design. Partha Pande School of EECS Washington State University

Integrated Circuits & Systems

Lecture 6: DC & Transient Response

Lecture 34: Portable Systems Technology Background Professor Randy H. Katz Computer Science 252 Fall 1995

Lecture 4. Adders. Computer Systems Laboratory Stanford University

EE141-Fall Digital Integrated Circuits. Announcements. Lab #2 Mon., Lab #3 Fri. Homework #3 due Thursday. Homework #4 due next Thursday

Homework #2 10/6/2016. C int = C g, where 1 t p = t p0 (1 + C ext / C g ) = t p0 (1 + f/ ) f = C ext /C g is the effective fanout

5.0 CMOS Inverter. W.Kucewicz VLSICirciuit Design 1

EEC 118 Lecture #6: CMOS Logic. Rajeevan Amirtharajah University of California, Davis Jeff Parkhurst Intel Corporation

EEC 116 Lecture #5: CMOS Logic. Rajeevan Amirtharajah Bevan Baas University of California, Davis Jeff Parkhurst Intel Corporation

The CMOS Inverter: A First Glance

Chapter 3 Combinational Logic Design

Digital Microelectronic Circuits ( )

EE213, Spr 2017 HW#3 Due: May 17 th, in class. Figure 1

Lecture 1: Gate Delay Models

Circuit A. Circuit B

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Sciences

Lecture 6: Time-Dependent Behaviour of Digital Circuits

Testability. Shaahin Hessabi. Sharif University of Technology. Adapted from the presentation prepared by book authors.

ECE 342 Electronic Circuits. Lecture 34 CMOS Logic

Lecture 4: DC & Transient Response

ENEE 359a Digital VLSI Design

VLSI GATE LEVEL DESIGN UNIT - III P.VIDYA SAGAR ( ASSOCIATE PROFESSOR) Department of Electronics and Communication Engineering, VBIT

EE141Microelettronica. CMOS Logic

ESE 570: Digital Integrated Circuits and VLSI Fundamentals

Lecture 5 Fault Modeling

CPE/EE 427, CPE 527 VLSI Design I L18: Circuit Families. Outline

CHAPTER 15 CMOS DIGITAL LOGIC CIRCUITS

Lecture 5: DC & Transient Response

COMP 103. Lecture 10. Inverter Dynamics: The Quest for Performance. Section 5.4.2, What is this lecture+ about? PERFORMANCE

University of Toronto. Final Exam

Logic Effort Revisited

Digital EE141 Integrated Circuits 2nd Combinational Circuits

ESE570 Spring University of Pennsylvania Department of Electrical and System Engineering Digital Integrated Cicruits AND VLSI Fundamentals

Interconnect (2) Buffering Techniques.Transmission Lines. Lecture Fall 2003

Managing Physical Design Issues in ASIC Toolflows Complex Digital Systems Christopher Batten February 21, 2006

Announcements. EE141- Spring 2003 Lecture 8. Power Inverter Chain

EE5780 Advanced VLSI CAD

UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences. Professor Oldham Fall 1999

Digital Integrated Circuits Designing Combinational Logic Circuits. Fuyuzhuo

ECE 546 Lecture 10 MOS Transistors

Physical Design of Digital Integrated Circuits (EN0291 S40) Sherief Reda Division of Engineering, Brown University Fall 2006

Dynamic operation 20

Digital Integrated Circuits 2nd Inverter

EE241 - Spring 2000 Advanced Digital Integrated Circuits. Announcements

Digital Integrated Circuits A Design Perspective

Digital Integrated Circuits A Design Perspective

Logical Effort Based Design Exploration of 64-bit Adders Using a Mixed Dynamic-CMOS/Threshold-Logic Approach

EE 330 Lecture 39. Digital Circuits. Propagation Delay basic characterization Device Sizing (Inverter and multiple-input gates)

EECS 151/251A Spring 2018 Digital Design and Integrated Circuits. Instructors: Nick Weaver & John Wawrzynek. Lecture 12 EE141

UNIVERSITY OF CALIFORNIA, BERKELEY College of Engineering Department of Electrical Engineering and Computer Sciences

Logic Synthesis and Verification

Chapter 5 CMOS Logic Gate Design

Transcription:

EE M26A.:. Fall 200 Lecture 5 Logical Effort Prof. Dejan Marković ee26a@gmail.com Logical Effort Recap Normalized delay d = g h + p g is the logical effort of the gate g = C IN /C INV Inverter is sized such that R INV equals the gate s drive strength h is the electrical effort h = C OUT /C IN The combination of g h is essentially our fan out definition p is the parasitic effort p = C SELF/ /C INV Typically ~ for an inverter May have different g, p for each type of gate structure The g, p may differ per input, and for pull up/down EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 2 2

A Side Note: Total Gate Effort (g TOT ) One way of evaluating a gate is to look at the total logical effort of the gate g TOT = C IN_TOT /C INV A sum of the total input capacitance Example: 3 input NAND Equivalent inverter is 4:2 g INPUT = 0/6=5/3 g TOT = 30/6 = 5 (or 3 g INPUT ) W P :W N = 4:6 The total gate effort is not very useful to calculate delay But it is an indication of the cost of the gate Can be very useful in gate mapping of logic synthesis To find which gate is best to use to map a given Boolean expression EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 3 3 A Note on Asymmetry The gates used in examples so far have been symmetric All inputs are essentially identical Some are bundled P:N ratio is approximately equal to the mobility ratio Same as the reference inverter The truth is that inputs of most gates are not symmetric Different inputs may see different capacitances Even series stacked gates may not be the same size Pull up and pull down is rarely equal resistance Call this skewed gates P:N sizing for optimal delay is β = root(µ) Inverter in a domino gate often favors the PMOS to improve speed EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 4 4

Asymmetric Examples PMOS NOR: different sizing Equivalent inv is still 6:2 C ina = 0, C inb = 26 g A (0/8=5/4) not equal to g B (26/8=3/4) B input is much worse (for a reason) For more complex gates: Equivalent inv is now 9:3 g EDC =2/2=7/4, g A B =30/2=5/2 e 9 d 9 c 9 a b 8 8 B A 24 8 2 2 NOR Output Same β = µ = 3 e d c a 2 2 2 2 2 b The larger g is BAD! (More effort to do logic) EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 5 5 What is the Reference Inverter? The assumption of logical effort is that the reference inverter has equal rise and fall delays β =µ The implication for different pull up and pull down resistance is that the rising and falling delays are not equal Similar to the parasitic delay calculation earlier d UP = g UP h + p UP d DN = g DN h + p DN Since static CMOS gates are inverting, the transitions through subsequent gates must be alternating Use an average logical effort (and parasitic effort) a good idea g AVG = (g UP + g DN )/2 EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 6 6

Skewed P:N Ratio Gates Assume: β =.7, µ = 3 Example: Inverter Pull up: reference inverter is sized P:N of W P :W P /µ g UP = W P (+/.7)/W/ P (+/µ) / = 9.9 Pull down: reference inverter is sized P:N of µw N :W N g DN = W N (+.7)/W N (+ µ) = 0.675 g AVG = 0.93 (instead of ) Example: 2 input NAND Gate g UP = W P (+2/.7)/W P (+/µ) =.63 g DN = W N (2+.7)/W N (+ µ) ) = 0.925 Average =.28 (instead of 5/4) Skewing rise/fall transition in gates may improve delay (because reference gate wasn t optimized for min t p ) EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 7 7 Velocity Saturation Velocity saturation complicates a little Need to account for the change in resistance Assume reference inverter is W P =2W N Example: a 2 input NAND gate with sizing W P =2, W N =2 Assuming R N_nostack =(4/3)R N_stack, R P_nostack =(6/5)R P_stack The equivalent inverter with same drive resistance Pull up: equiv inv = 2:, g UP =4/3 (same as before) Pull down: equiv inv = 8/3:4/3, g DN =4/4= This makes sense because velocity saturation allows the transition through the series stacking be faster (more current) EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 8 8

Choosing a Reference Inverter The reference inverter can actually be any β Logical effort can be used for optimally sizing a logic chain Part of optimal sizing is to add inverters to increase N (the number of logic stages) It is inconvenient to add inverters that do not have a LE of A common practice is to choose the reference inverter β to be the one that is used. Use a normalization to adjust the g. Calculate g INV(β =µ) assuming the reference inverter g AVG = Example: g REF =withβ β =7(µ.7 =3) g AVG_INV(β=µ) =.6 for β = 3 (µ = 3) A 2 input NAND β =.7 has g =.37 A 2 input NAND β = 3 has g =.45 =.25.6 g of 2 input NAND with reference inverter of β = µ is.25 EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 9 9 Generalization for Multistage Networks Same concept applies at the path level Stage effort: f i = g i h i Path electrical effort: H path = C out /C in Path logical effort: G path = g g 2 g N Branching effort: B path = b b 2 b N Ignore this Path effort = G path H path B path for now Path delay D = Σd i = Σp i + Σg i h i EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 0 0

Total Effort A path can have a total effort G = Path Logical Effort G PATH = g i H = Path Electrical Effort F = Path Effort Consider path effort as fanout. Total fanout should be a product of all fanouts. Treat the path as a single gate H F PATH PATH = N i = C = C N i= OUT IN f i EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide Example: Total Effort Calculations G = (4/3) 2 (5/3) = 3 H = 60/4 = 5 F = 45; F?= GH (yes for this case) G H F PATH PATH PATH = N i= C = C = N i= g i OUT IN f i W P :W N =2:2 g=4/3 p =2 g=4/3 p=2 2 W P :W N =6:6 W P :W N =24:6 3 C out =60 g=5/3 p =2 f =4 f 2 = 3.33 f 3 = 3.33 EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 2 2

Example: Random Multi stage Networks Delay of a multi stage network = sum of stage delays Path Effort Delay D F = f i Path Parasitic Delay P i = i p i Total Path Delay W P :W N =2:2 g = 4/3 p = 2 g = 4/3 p = 2 2 W P :W N = 6:6 D = di = DF + P i W P :W N = 24:6 3 g = 5/3 p = 2 C out = 60 f = 4 f 2 = 333 3.33 f 3 = 3.33 D F = 0.66, P = 6 D = 6.66 (τ delays) EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 3 3 Add Branching Effort Ratio of total to on path capacitance How much more current is needed to supply on path (given that some current flows off path) b = C on-path + C off-path C on-path c load EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 4 4

Branching Example # 5 5 5 90 90 g = h = F = f = f 2 = F = 90/5 = 8 8 (wrong!) (5+5)/5 = 6 90/5 = 6 36, not 8! Introduce new kind of effort to account for branching: Branching Effort: Path Branching Effort: b = B = C on path + C off path Π b i C on path Now we can compute path effort: H = g h b EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 5 5 Multistage Networks with Branching General logical effort formulation Stage effort: f i = g i h i Path electrical effort: H path = C out /C in Path logical effort: G path = g g 2 g N Branching effort: B path = b b 2 b N Path effort = G path H path B path Branching Path delay D = Σd i = Σp i + Σg i b i h i EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 6 6

Branching Example #2 C in = 4 W P :W N = 6:6 W P :W N = 24:6 W P :W N = 2:2 g = 4/3 W P :W N = 24:6 p = 2 g = 4/3 p = 2 2 W P :W N = 6:6 3 g = 5/3 p = 2 C out = 60 branching w/o bran. f = 8 f 2 = 6.66 f = 4 f 2 = 3.33 f 3 = 3.33 f 3 = 3.33 For circuits with branching: G PATH is the same = 3 H PATH is the same = 5 F PATH differs h = 24/4= 6, h 2 = 60/2=5, h 3 =2 F PATH = 4/3 6 4/3 5 5/3 2 = 77.8 F is no longer GH New F PATH with branching: F PATH = G B H EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 7 7 Interconnects Capacitance from wires are the most difficult to deal with Fixed load so intuitively, we would increase fanout Short wires small parasitic capacitance Treat them as increasing p for each gate Not exact but accounts for the effect Long wires large capacitance (dominates gate loading) Size of driving gate is as if driving a large C (inverter chain) Size of receiving gate does not impact branching It is typically big and limited by area, power, and function Medium wires most difficult. Cap similar to gate loading Brute force is to write delay as function of gate and wire capacitances N th order polynomial and differentiate More realistic method is to iterate EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 8 8

Handling Wires & Fixed Loads i C L C w EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 9 9 Summary Delay and/or power of a logic network depend significantly on the relative sizes of logic gates (not transistors within a gate) Inverter buffering is a simple example of the analysis The analysis leads to ~FO4 as being optimal fanout for driving larger capacitive loads To generalize analysis of delay, we introduce logical effort Delay normalized by inverter delay, d = g h + p g and p are characteristics of a logic gate that depends on its structure and does not depend on gate size. May have different g s and p s for different inputs and PU / PD Simplify by using g AVG and ignoring C s of intermediate nodes Once a table of g s and p s are created for the catalog of gates, delay can be calculated quickly and easily Next we will look at how to size a network (instead of just analyzing it) EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 20 20

Optimum Effort per Stage When each stage bears the same effort: Fanout of each stage: Complex gates should drive smaller load!!! Minimum path delay EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 2 2 Gate Sizing Example (/2) From: David Harris First, compute path effort: H path The optimal stage effort is: EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 22 22

Gate Sizing Example (2/2) We can now size the gates: 20 5 y z = = 3.8 x = = 4. 5.45 3.45 4 z x y = = 2.7 C in = = 0 3.45.45 The total normalized delay is (assuming p inv = ): EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 23 23 Sizing Example with Branching Size the gates for optimum delay Once the path effort is determined, it is quite easy to determine the appropriate gate sizes Start from the output of a path Work backwards to the input C out _ ig C in _ i = f Check your work if the input is the same as the specification Assuming each unit W has capacitance of unit C opt i B = b b 2 =4 C in = 4 g = 4/3 p = 2 Gate 2 (dup) Gate 3 (dup) g = 4/3 p = 2 2 3 g = 5/3 p = 2 C out = 60 F = 77.8, f opt = 5.62 C in3 = 60*5/3*/5.6 = 7.9 C in2 = b 2 *7.9*4/3*/5.6 = 8.5 C in = b *8.5*4/3*/5.6 = 4 W P3 = 4/5*7.9 = 4.3 W P2 = ½*8.5 = 4.25 EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 24 24

Branches: Same # Stages, Different Loads Example: 2 paths with the same # of stages but different loads Optimal system has all paths with equal delay Branching for path, b = + α A ti i th t ~ Assumption is that p ~ p 2 C in Path C in2 C out C out2 D = D 2 N N F + p = N N F BGC out F = = F2 Cin Cin 2 B2G2C = α = C B G C in 2 out + p 2 B2G2C = C out 2 in 2 out 2 EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 25 25 Path Effort Estimate With equal stage branches, the Path Effort can be estimated without knowing each stage s, b H tot = (C out +C out2 )/C in (with B = ) Simple example for Path : G = g NAND H = C out /C in B = (+C out2 /C out ) C in Since F = F 2 and G = G 2, B = (+C out2 /C out ) C in C in2 Path C out C out2 F = G H B = g NAND (C out +C out2 )/C in Same as F = G H tot The errors occur with different g and p for the gates in the two different paths EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 26 26

Unequal Length Branches (Not Straightforward) If both branches are long, then N =N 2 is an o.k. assumption Otherwise, f opt differs between two paths Solving precisely, example: C out = H CC in 2d inv p = C out /C C (d inv p) 2 in = C C out2 = C out2 /C 2 2 d nand 2 d d nand = g nand (C + C 2 )/C inv d inv in D = d nand + 2d inv = g nand (C out /(2d inv p) + C out2 /(d inv p) 2 ) + 2d inv Take partial derivative of D/ (d inv ) Not easy so ignore p to simplify If g NAND = 4/3, H = H 2 = 3: d nand = 2.35, d inv =.80 The per stage f = g h (no p) is different per stage Most branches are relatively long or not critical path C 2d inv = H 2 C in EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 27 27 Re convergent Paths Very similar to unequal branching, another logic structure that adds complexity to Logical Effort is recombined branches. Typically constrains the sizing problem Example: ignoring parasitics. Let x = C in = f a = (y+z)/x f b = (3z/y) f c = g NAND C out /z 2 variables C in x y f a f b f c 2x NANDz z C out Constrain with f a = f b = f c, 2 vars equations (directly solve) Any constraints are possible Increase variables by introducing more buffering (parallel to y) EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 28 28

Logic Opt. Example: 2 Stage; 8 Input AND Assume symmetric 8 input AND (β = µ =2, 3W o is unit C) g NAND =0/3, p NAND =8 for an 8 input NAND g INV =, p INV = C out =00, C in = Logical effort G = 0/3, B =, H = 00 F = 333.3 For 2 stages, f opt =8.3 h 2 = 8.3, C in2 = 5.5, W P = W o h = 5.5, C in =, W P = 0.6W o Delay = 36.66 + 9 = 45.6 x8 G G 2 Buffering For 3 stages, f opt = 7 ( extra inverter), Delay = 3 For 4 stages, f opt = 4.3 (2 extra inverters), Delay = 28.2 For 5 stages, f opt = 3.9 (closer to optimal of 3.6), Delay=28 For 6 stages, f opt = 2.63 (below optimal of ~3.6), Delay=28.8 EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 29 29 C out Logic Opt. Example: Multi 2 Input Gate 8 AND Many ways to implement this same function Use a tree of fewer input AND gates (A 0 A )(A 2 A 3 ) If multiple ANDs (as in a memory decoder), then partial results can be shared EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 30 30

2 input Implementation C in = G 2 G 3 C out = 00 Assuming that 3W o has capacitance of unit C F = B G H = 4/3 3 00 = 235 f opt = 2.48 (too small) D = 6 2.48 + 3 2 + 3 = 4.88 + 9 = 23.88 Still better than 8 input NAND Optimal sizing G 7 : C in7 = 00g inv /f = 40, W P =80W 0 G 6 : C in6 = C in7 g nand /f = 2.5, W P =32W 0 G 5 : C in5 = C in6 g inv /f = 8.7, W P = 7.4W 0 G 4 : C in4 = C in5 g nand /f = 4.7, W P = 7W 0 G 3 : C in3 = C in4 g inv /f =.88, W P = 3.8W 0 Double check G 2 : C in = C in3 g nand /f =, W P =.5W 0 G 4 G 5 G 6 G 7 out EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 3 3 4 input Implementation out C in = G 2 G 3 G 4 G 5 C out = 00 Assuming that unit for C = 3W o F = B G H = 4/3 6/3 00 = 266 f opt = 4.04 (a tad high) D = 4 4.04 + 4 + 2 + 2 = 6.:. 6 + 8 = 24.6 Slightly worse than 2 input! Due to self loading Optimal sizing G 5 : C in5 = 00g inv /f = 24.75, W P =50W 0 G 4 : C in4 = C in5 g nand /f = 8.6, W P =2.5W 0 G 3 : C in3 = C in4 g inv /f = 2.02, W P =4W 0 Double check G 2 : C in =C in3 g nand4 /f =, W P =.0W 0 EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 32 32

Example: 2 NOR Implementation C in = G 2 C out = 00 Assuming that unit for C = 3W o F= BGH = 4/3 2 *5/3*00 = 296 f opt = 4.4 (a tad high) D = 4 4.4 + 3 2 + = 6.56 + 7 = 23.6 (Best one!) Optimal sizing G 5: C in5 = 00g inv /f = 24., W P =48W 0 G 4 : C in4 = C in5 g nand /f = 7.76, W P =.6W 0 G 3 : C in3 = C in4 g nor /f = 3.25, W P =7.5W 0 Double check G 2 : C in = C in3 g nand /f =, W P =.5W 0 Lesson: use close to optimal f, use gates with small p G 3 G 4 G 5 out EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 33 33 Logical Effort Design Flow Compute the path effort: Path Effort = F = g h b Find the best number of stages: N* ~ log 4 (PathEffort) Compute the stage effort: se* = (PathEffort) /N Working from either end, determine gate sizes: Reference: Sutherland, Sproull, Harris, Logical Effort, (Morgan-Kaufmann 999) EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 34 34

Summary of LE Design Methodology. Draw network 2. Buffer non critical paths with minimum sized gates Minimize loading on critical path Simplifies sizing of non critical path 3. Estimate total effort along each path (without branching) 4. Verify that the number of stages is appropriate Add inverters if f opt > 5 5. Assign branch ratio of each branch Estimate based on the ratio of the Effort of the paths Ignore paths that have little effect (i.e. min sized) Include wire capacitances 6. Compute delays for the design (include parasitic delay) Adjust branching ratios (especially with wire capacitance) Repeat if necessary until delay meets specification 7. Re optimize logic network if f opt is small (Return to step 3) EEM26A.:. Fall 200 Lecture 5: D. Logical Markovic Effort / Slide 35 35