ECE C03 Lecture 61 Lecture 6 Delays and Timing in Multilevel Logic Synthesis Prith Banerjee ECE C03 Advanced Digital Design Spring 1998.

Slides:



Advertisements
Similar presentations
The scale of IC design Small-scale integrated, SSI: gate number usually less than 10 in a IC. Medium-scale integrated, MSI: gate number ~10-100, can operate.
Advertisements

CS370 – Spring 2003 Hazards/Glitches. Time Response in Combinational Networks Gate Delays and Timing Waveforms Hazards/Glitches and How To Avoid Them.
ECE C03 Lecture 71 Lecture 7 Delays and Timing in Multilevel Logic Synthesis Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Glitches & Hazards.
ECE 3110: Introduction to Digital Systems
ECE C03 Lecture 81 Lecture 8 Memory Elements and Clocking Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Chapter 6 –Selected Design Topics Part 2 – Propagation Delay and Timing Logic and Computer Design Fundamentals.
1 Combinational Logic Network design Chapter 4 (continued ….)
Synchronous Digital Design Methodology and Guidelines
1 Digital Design: State Machines Timing Behavior Credits : Slides adapted from: J.F. Wakerly, Digital Design, 4/e, Prentice Hall, 2006 C.H. Roth, Fundamentals.
RTL Hardware Design by P. Chu Chapter 161 Clock and Synchronization.
ECE 331 – Digital System Design
Contemporary Logic Design Multi-Level Logic © R.H. Katz Transparency No Chapter # 3: Multi-Level Combinational Logic 3.3 and Time Response.
Chapter # 3: Multi-Level Combinational Logic
EECC341 - Shaaban #1 Lec # 8 Winter Combinational Logic Circuit Transient Vs. Steady-state Output Gate propagation delay: The time between.
Give qualifications of instructors: DAP
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 6 –Selected Design Topics Part 3 – Asynchronous.
Asynchronous Sequential Logic
David Culler Electrical Engineering and Computer Sciences
Asynchronous Machines
Sheila Ross and W. G. OldhamEECS 40 Fall 2002 Lecture 2 Copyright Regents of University of California Logic Gates: NOT a Prerequisite! Today: Gates, gates.
Lecture #24 Gates to circuits
EE365 Adv. Digital Circuit Design Clarkson University Lecture #6
Lecture #25 Timing issues

CS 151 Digital Systems Design Lecture 32 Hazards
Contemporary Logic Design Sequential Logic © R.H. Katz Transparency No Chapter #6: Sequential Logic Design Sequential Switching Networks.
A hazard is said to exist when a circuit has the possibility of producing such a glitch. 4.4 Timing Hazards ReturnNext Because of circuit delays, the transient.
Lecture 21, Slide 1EECS40, Fall 2004Prof. White Lecture #21 OUTLINE –Sequential logic circuits –Fan-out –Propagation delay –CMOS power consumption Reading:
Unit 8 Combinational Circuit Design and Simulation Using Gates Ku-Yaw Chang Assistant Professor, Department of Computer Science.
ECE 331 – Digital System Design Power Dissipation and Additional Design Constraints (Lecture #14) The slides included herein were taken from the materials.
ECE 331 – Digital System Design Power Dissipation and Propagation Delay.
03/30/031 ECE 551: Digital System Design & Synthesis Lecture Set 9 9.1: Constraints and Timing 9.2: Optimization (In separate file)
Chapter # 3: Multi-Level Combinational Logic
Digital Logic Design Lecture # 7 University of Tehran.
Chapter 3 Simplification of Switching Functions. Simplification Goals Goal -- minimize the cost of realizing a switching function Cost measures and other.
Chapter 07 Electronic Analysis of CMOS Logic Gates
1 Digital Design: Time Behavior of Combinational Networks Credits : Slides adapted from: J.F. Wakerly, Digital Design, 4/e, Prentice Hall, 2006 C.H. Roth,
ECE Advanced Digital Systems Design Lecture 12 – Timing Analysis Capt Michael Tanner Room 2F46A HQ U.S. Air Force Academy I n t e g r i.
1 COMP541 Combinational Logic - 4 Montek Singh Jan 30, 2012.
© BYU 18 ASYNCH Page 1 ECEn 224 Handling Asynchronous Inputs.
Glitches/Hazards and ALUs
1 K-Maps, Multi-level Circuits, Time Response Today: Reminder: Test #1, Thu 7-9pm K-map example, espressoFirst Hour: K-map example, espresso –Section 2.3.
Combinational Hazards Brandon L Fernandes University of Southern California.
1/8/ L16 Timing & Concurrency III Copyright Joanne DeGroat, ECE, OSU1 Timing & Concurrency III Delay Model foundations for simulation and.
Lecture 11 Timing diagrams Hazards.
No. 3-1 Chapter # 3: Multi-Level Combinational Logic.
Timing Behavior of Gates
ECE 171 Digital Circuits Chapter 9 Hazards Herbert G. Mayer, PSU Status 2/21/2016 Copied with Permission from prof. Mark PSU ECE.
Circuit Analyze  Combinational or Sequential logic schematics show the circuit’s hardware implementation and give us some knowledge about the functions.
1 CS 352 Introduction to Logic Design Lecture 4 Ahmed Ezzat Multi-level Gate Circuits and Combinational Circuit Design Ch-7 + Ch-8.
©2010 Cengage Learning SLIDES FOR CHAPTER 8 COMBINATIONAL CIRCUIT DESIGN AND SIMULATION USING GATES Click the mouse to move to the next page. Use the ESC.
1 Digital Design Debdeep Mukhopadhyay Associate Professor Dept of Computer Science and Engineering NYU Shanghai and IIT Kharagpur.
©2010 Cengage Learning SLIDES FOR CHAPTER 8 COMBINATIONAL CIRCUIT DESIGN AND SIMULATION USING GATES Click the mouse to move to the next page. Use the ESC.
Lecture 11 Logistics Last lecture Today HW4 due on Wednesday PLDs
Digital Fundamentals Floyd Chapter 7 Tenth Edition
Timing Model Start Simulation Delay Update Signals Execute Processes
Lecture 8 Combinational Network Design and Issues
Overview Part 1 – The Design Space
Reading: Hambley Ch. 7; Rabaey et al. Sec. 5.2
ECE 434 Advanced Digital System L03
Hazard.
CPE/EE 422/522 Advanced Logic Design L02
IAY 0800 Digitaalsüsteemide disain
Overview Last Lecture Conversion of two-level logic to NAND or NOR forms Multilevel logic AOI and OAI gates Today Timing and hazards Multiplexers and demultiplexers.
Lecture 13 Logistics Last lecture Today HW4 up, due on Wednesday PLDs
Introduction to Digital Systems
Chapter 3 Overview • Multi-Level Logic
Hazard-free Karnaugh Map Minimisation
ECE 331 – Digital System Design
Presentation transcript:

ECE C03 Lecture 61 Lecture 6 Delays and Timing in Multilevel Logic Synthesis Prith Banerjee ECE C03 Advanced Digital Design Spring 1998

ECE C03 Lecture 62 Outline Gate delays Timing waveforms Performance calculations Static/dynamic hazards and glitches Designs to avoid hazards READING: Katz 3.3, 3.4, 3.5.2, Dewey 6.5.1, 6.5.2

ECE C03 Lecture 63 Time Response in Combinational Networks emphasis on timing behavior of circuits waveforms to visualize what is happening simulation to create these waveforms momentary change of signals at the outputs: hazards can be useful— pulse shaping circuits can be a problem — glitches: incorrect circuit operation Terms: gate delay— time for change at input to cause change at output minimum delay vs. typical/nominal delay vs. maximum delay careful designers design for the worst case! rise time— time for output to transition from low to high voltage fall time— time for output to transition from high to low voltage

ECE C03 Lecture 64 Concepts of Delays and Timing For a given gate, the gate delay refers to the time it takes the output signal to respond to in input transition input output

ECE C03 Lecture 65 Gate Delays Why is there a gate delay? There are actual resistances and capacitances inside digital logic If you apply a unit step voltage signal to an input, the output will not respond immediately, but after a delay proportional to R.C Input Output Capacitance of load Resistance of driver T delay = R.C

ECE C03 Lecture 66 Delays in Combinational Logic Input transition Output transition QUESTION: After the input goes from low to high how long does it take for the output to go from low to high (note depends on other inputs being 1 or 0) ANSWER: Use simple delay models for each gate and add up delays in a path from input to output

ECE C03 Lecture 67 Delays in Combinational Logic Wire load Capacitance C Load capacitance (pF) Delay (nsec) Low drive High drive

ECE C03 Lecture 68 Designing Logic With High Performance Input transition QUESTION: Suppose the delay from input to output is 30 nsec and is unacceptable. How would you make a higher performance design? ANSWER: Reduce capacitances at various loads, or use higher druve gates Reduce high load due to fanout Higher drive gate

ECE C03 Lecture 69 Gate Delays for Typical TTL Families Delays in nano-seconds

ECE C03 Lecture 610 Example gate delays in nanoseconds for LSI Logic 1.5 micron gate array 2 input AND gate. tpLH = Propagation delay from low to high transition at output tpHL = Propagation delay from high to low transition at output Gate Delay Specifications

ECE C03 Lecture 611 Specifying Delays Inertial Delay Model –reflects physical inertia of physical systems –glitches of very small duration not reflected in outputs SIG_OUT <= not SIG_IN after 7 nsec Logic gates exhibit lowpass filtering SIG_IN SIG_OUT 2ns 9 ns19 ns 3 ns 10ns

ECE C03 Lecture 612 Transport Delays Under this model, ALL input signal changes are reflected at the output SIG_OUT <= transport not SIG_IN after 7 ns; SIG_IN SIG_OUT 2ns 9 ns19 ns 3 ns 10ns 30 ns

ECE C03 Lecture 613 Pulse Shaping Circuit F is not always 0, pulse width equals 3 gate delays D remains high for three gate delays after A changes from low to high 100 A B C D F AB C D F

ECE C03 Lecture 614 Another Pulse Shaping Circuit Initially undefined Close Switch Open Switch + AB CD Open Switch Resistor ABCDABCD

ECE C03 Lecture 615 Hazards and Glitches Unwanting switching at the outputs Occur because delay paths through the circuit experience different propagation delays Danger if logic "makes a decision" while output is unstable OR hazard output controls an asynchronous input (these respond immediately to changes rather than waiting for a synchronizing signal called a clock) Usual solutions: wait until signals are stable (by using a clock) never, never, never use circuits with asynchronous inputs design hazard-free circuits Suggest that first two approaches be used, but we'll tell you about hazard-free design anyway!

ECE C03 Lecture 616 Kinds of Hazards Input change causes output to go from 1 to 0 to 1 Input change causes output to go from 0 to 1 to 0 Input change causes a double change from 0 to 1 to 0 to 1 OR from 1 to 0 to 1 to 0 Static 0-hazard Dynamic hazards Static 1-hazard

ECE C03 Lecture 617 Example of a Glitch F = A' D + A C' input change within product term input change that spans product terms output changes from 1 to 0 to 1 G1 G2 G3 A \C \A D F G1 G2 G3 A \C \A D F ABCD = 1100 ABCD = 1101 G1 G2 G3 A \C \A D F G1 G2 G3 A \C \A D F ABCD = 1101 ABCD = 0101 (A is still 0) G1 G2 G3 A \C \A D F ABCD = 0101 (A is 1) A AB C CD D B

ECE C03 Lecture 618 Eliminating Glitches General Strategy: add redundant terms F = A' D + A C' becomes A' D + A C' + C' D This eliminates 1-hazard? How about 0-hazard? Re-express F in PoS form: F = (A' + C')(A + D) Glitch present! Add term: (C' + D) This expression is equivalent to the hazard-free SoP form of F A AB C CD D B

ECE C03 Lecture 619 How to design Circuits without Glitches Start with expression that is free of static 1-hazards F = A C' + A' D + C' D F' = (A C' + A' D + C' D)' = (A' + D) (A + D') (C + D') = A C + A C D' + C D' + A' C D' + A' D' = A C + C D' + A' D' covers all the adjacent 0's in the K-map free of static-1 and static-0 hazards! Work with complement:

ECE C03 Lecture 620 Detecting Static Hazards in Multilevel Circuits Calculate transient output function variables and complements are treated as independent variables cannot use X + X' = 1 or X X' = 0 for simplifications F = A B C + (A + D) (A' + C') F1 = A B C + A A' + A C' + A' D + C' D Example: 2-level form ABCD: 1111 to 1110, covered by term ABC, so no 1-hazard present ABCD: 1110 to 1100, term ABC goes low while term AC' goes high some static hazards are present! A AB C CD D B

ECE C03 Lecture A B C D F F 2 Static 1 Hazards Solution: Add redundant terms to insure all adjacent transitions are covered by terms F2 = A C' + A' D + C' D + A B + B D 1's hazards in F corrected in F2

ECE C03 Lecture 622 Static 0 Hazards Similar to previous case, but work with the complement of F If terms of the transient output function cover all 0 transitions, then no 0-hazards are present F = [A B C + (A + D) (A' + C')]' = (A' + B' + C') (A' D' + A C) = A' D' + A' B D' + A' C D' + A B' C = A' D' + A B' C 0-hazard on transition from 1010 to B' C D' F = (A + D) (A' + B + C') (B + C' + D) 0-hazard free equivalent to F2 on last slide A AB C CD D B

ECE C03 Lecture A B C D F F 3 Static 0 Hazards 0-Hazard Corrected in F3

ECE C03 Lecture 624 Designing Networks for Hazard Free Operation Simply place transient output function in a form that guarantees that all adjacent ones are covered by a term no term of the transient output function contains both a variable and its complement F(A,B,C,D) = m(1,3,5,7,8,9,12,13,14,15) F = A B + A' D + B D + A C' + C' D = (A' + B + C') D + A (B + C') (factored by distributive law, which does not introduce hazards since it does not depend on the complementarity laws for its validity) A AB C CD D B

ECE C03 Lecture 625 Dynamic Hazards Example with Dynamic Hazard Three different paths from B or B' to output ABC = 000, F = 1 to ABC = 010, F = 0 different delays along the paths: G1 slow, G4 very slow Handling dynamic hazards very complex Beyond our scope G1 G2 G3 G5 G4 \A B \B \C F A Slow Very slow

ECE C03 Lecture 626 Summary Gate delays Timing waveforms Performance calculations Static/dynamic hazards and glitches Designs to avoid hazards NEXT LECTURE: Multilevel Logic Synthesis READING: Katz 3.1, 3.2