ECE 484 - Advanced Digital Systems Design Lecture 12 – Timing Analysis Capt Michael Tanner Room 2F46A 333-6766 HQ U.S. Air Force Academy I n t e g r i.

Slides:



Advertisements
Similar presentations
Digital Integrated Circuits© Prentice Hall 1995 Combinational Logic COMBINATIONAL LOGIC.
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.
ECE Synthesis & Verification - Lecture 2 1 ECE 667 Spring 2011 ECE 667 Spring 2011 Synthesis and Verification of Digital Circuits High-Level (Architectural)
IN2305-II Embedded Programming Lecture 2: Digital Logic.
ECE 3110: Introduction to Digital Systems
ECE 551 Digital System Design & Synthesis Lecture 08 The Synthesis Process Constraints and Design Rules High-Level Synthesis Options.
Logic Synthesis – 3 Optimization Ahmed Hemani Sources: Synopsys Documentation.
Finite State Machine Chapter 10 RTL Hardware Design by P. Chu.
Synchronous Digital Design Methodology and Guidelines
RTL Hardware Design by P. Chu Chapter 161 Clock and Synchronization.
Assume array size is 256 (mult: 4ns, add: 2ns)
Copyright 2001, Agrawal & BushnellDay-1 PM Lecture 4a1 Design for Testability Theory and Practice Lecture 4a: Simulation n What is simulation? n Design.
Kazi Spring 2008CSCI 6601 CSCI-660 Introduction to VLSI Design Khurram Kazi.
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.
CSE 140L Lecture 4 Flip-Flops, Shifters and Counters Professor CK Cheng CSE Dept. UC San Diego.
Dec. 6, 2005ELEC Glitch Power1 Low power design: Insert delays to eliminate glitches Yijing Chen Dec.6, 2005 Auburn university.
Asynchronous Sequential Logic
Sequential Logic 1  Combinational logic:  Compute a function all at one time  Fast/expensive  e.g. combinational multiplier  Sequential logic:  Compute.
Asynchronous Machines
1 EECS Components and Design Techniques for Digital Systems Lec 21 – RTL Design Optimization 11/16/2004 David Culler Electrical Engineering and Computer.
ECE C03 Lecture 61 Lecture 6 Delays and Timing in Multilevel Logic Synthesis Prith Banerjee ECE C03 Advanced Digital Design Spring 1998.
Chapter #6: Sequential Logic Design 6.2 Timing Methodologies
مرتضي صاحب الزماني  The registers are master-slave flip-flops (a.k.a. edge-triggered) –At the beginning of each cycle, propagate values from primary inputs.
CS 151 Digital Systems Design Lecture 32 Hazards
ECE 331 – Digital System Design Power Dissipation and Additional Design Constraints (Lecture #14) The slides included herein were taken from the materials.
03/30/031 ECE 551: Digital System Design & Synthesis Lecture Set 9 9.1: Constraints and Timing 9.2: Optimization (In separate file)
RTL Hardware Design Chapter Fundamental limitation of EDA software 2. Realization of VHDL operator 3. Realization of VHDL data type 4. VHDL synthesis.
Digital Design Strategies and Techniques. Analog Building Blocks for Digital Primitives We implement logical devices with analog devices There is no magic.
1 H ardware D escription L anguages Modeling Digital Systems.
1/8/ L20 Project Step 8 - Data Path Copyright Joanne DeGroat, ECE, OSU1 State Machine Design with an HDL A methodology that works for documenting.
EKT 221/4 DIGITAL ELECTRONICS II  Registers, Micro-operations and Implementations - Part3.
RTL Hardware Design by P. Chu Chapter Overview on sequential circuits 2. Synchronous circuits 3. Danger of synthesizing asynchronous circuit 4.
1 CSE370, Lecture 17 Lecture 17 u Logistics n Lab 7 this week n HW6 is due Friday n Office Hours íMine: Friday 10:00-11:00 as usual íSara: Thursday 2:30-3:20.
Computer Architecture Lecture 4 Sequential Circuits Ralph Grishman September 2015 NYU.
RTL Hardware Design by P. Chu Chapter Poor design practice and remedy 2. More counters 3. Register as fast temporary storage 4. Pipelined circuit.
04/06/031 ECE 551: Digital System Design & Synthesis Lecture Set 9 9.1: Constraints and Timing (In separate file) 9.2: Optimization - Part 1 9.3: Optimization.
Curtis A. Nelson 1 Technology Mapping of Timed Circuits Curtis A. Nelson University of Utah September 23, 2002.
Lecture 11: FPGA-Based System Design October 18, 2004 ECE 697F Reconfigurable Computing Lecture 11 FPGA-Based System Design.
CEC 220 Digital Circuit Design Latches and Flip-Flops Monday, March 03 CEC 220 Digital Circuit Design Slide 1 of 19.
04/26/20031 ECE 551: Digital System Design & Synthesis Lecture Set : Introduction to VHDL 12.2: VHDL versus Verilog (Separate File)
03/31/031 ECE 551: Digital System Design & Synthesis Lecture Set 8 8.1: Miscellaneous Synthesis (In separate file) 8.2: Sequential Synthesis.
CDA 4253 FPGA System Design RTL Design Methodology 1 Hao Zheng Comp Sci & Eng USF.
ECE DIGITAL LOGIC LECTURE 20: REGISTERS AND COUNTERS Assistant Prof. Fareena Saqib Florida Institute of Technology Fall 2015, 11/19/2015.
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University
ECE 171 Digital Circuits Chapter 9 Hazards Herbert G. Mayer, PSU Status 2/21/2016 Copied with Permission from prof. Mark PSU ECE.
ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN Dr. Shi Dept. of Electrical and Computer Engineering.
03/30/031 ECE Digital System Design & Synthesis Lecture Design Partitioning for Synthesis Strategies  Partition for design reuse  Keep related.
04/21/20031 ECE 551: Digital System Design & Synthesis Lecture Set : Functional & Timing Verification 10.2: Faults & Testing.
RTL Hardware Design by P. Chu Chapter 9 – ECE420 (CSUN) Mirzaei 1 Sequential Circuit Design: Practice Shahnam Mirzaei, PhD Spring 2016 California State.
EECE 320 L8: Combinational Logic design Principles 1Chehab, AUB, 2003 EECE 320 Digital Systems Design Lecture 8: Combinational Logic Design Principles.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 61 Lecture 6 Logic Simulation n What is simulation? n Design verification n Circuit modeling n True-value.
EMT 351/4 DIGITAL IC DESIGN Week # Synthesis of Sequential Logic 10.
VLSI Testing Lecture 5: Logic Simulation
Vishwani D. Agrawal Department of ECE, Auburn University
ECE 434 Advanced Digital System L03
CPE/EE 422/522 Advanced Logic Design L03
332:437 Lecture 12 Finite State Machine Design
Hazard.
CPE/EE 422/522 Advanced Logic Design L02
Timing Analysis 11/21/2018.
触发器 Flip-Flops 刘鹏 浙江大学信息与电子工程学院 March 27, 2018
Hardware Description Languages
IAY 0800 Digitaalsüsteemide disain
ECE434a Advanced Digital Systems L06
CSE 370 – Winter Sequential Logic - 1
Introduction to Digital Systems
Chapter 3 Overview • Multi-Level Logic
Presentation transcript:

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 t y - S e r v i c e - E x c e l l e n c e

Lesson Outline 1. Combinational Timing Considerations 2. Sequential Timing Analysis 3. Synthesis Guidelines 2

I n t e g r i t y - S e r v i c e - E x c e l l e n c e COMBINATIONAL TIMING CONSIDERATIONS 3

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Combinational Timing Considerations Propagation delay Synthesis with timing constraint Hazards Delay-sensitive design 4

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Propagation Delay Overview Delay – time required to propagate a signal from an input port to a output port Cell level delay – most accurate The impact of wire becomes more dominant 5 Time required for transistors to change state Represents the driving capability of the cell. Can be loosely considered the output impedance of the cell. The summation of all the parasitic capacitances of the wires and input capacitances for the load cells.

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Propagation Delay System Delay System Delay – the longest path (input to output) in the system False path – a path along which a signal cannot actually propagate Difficult if the design is mainly “random” logic Critical path can be identified if many complex operators (such as adders or multipliers) are used in the design. 6

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Synthesis with Timing Constraint Multi-level synthesis is flexible It is possible to reduce by delay by adding extra logic Synthesis with timing constraint: 1. Obtain the minimal-area implementation 2. Identify the critical path 3. Reduce the delay by adding extra logic 4. Repeat 2 & 3 until meeting the constraint 7

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Synthesis with Timing Constraint 8 Area-Delay Trade-Off CurveWriting better RTL code

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Timing Hazards Propagation delay – time to obtain a stable output Hazards – the fluctuation occurring during the transient period Static hazard – glitch when the signal should be stable Dynamic hazard – a glitch in transition Due to the multiple converging paths of an output port 9

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Timing Hazards Static Hazard 10 a = c = 1

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Timing Hazards Dynamic Hazard 11 a = c = d = 1

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Timing Hazards Dealing With Hazards 12 Some hazards can be eliminated in theory (e.g., use redundant K- map terms) Eliminating glitches is very difficult in reality, and almost impossible for synthesis Multiple inputs can change simultaneously (e.g., 1111 → 0000 in a counter) During logic synthesis, the logic expressions will be rearranged and optimized. During technology mapping, generic gates will be re-mapped During placement & routing, wire delays may change How to deal with it? Ignore glitches in the transient period and retrieve the data after the signal is stabilized Synchronous Design! – but now we have to deal with setup and hold time constraints

I n t e g r i t y - S e r v i c e - E x c e l l e n c e SEQUENTIAL TIMING ANALYSIS 13

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Sequential Timing Analysis Combinational Circuit – characterized by propagation delay Sequential Circuit Has to satisfy setup/hold time constraints Characterized by maximal clock rate (e.g., 200 MHz Counter, 3.4 GHz Intel Core i7) Embedded in clock rate Setup time clock-to-Q delay of a register Propagation delay of next-state logic 14

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Sequential Timing Analysis Setup Time Violation 15 To Avoid Setup Time Violation

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Sequential Timing Analysis Setup Time Violation - Consequences 16

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Sequential Timing Analysis Shift Register Example 17

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Sequential Timing Analysis Hold Time Violation 18 To Avoid Hold Time Violation

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Sequential Timing Analysis Output Delay 19

I n t e g r i t y - S e r v i c e - E x c e l l e n c e SYNTHESIS GUIDELINES 20

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Synthesis Guidelines 21 Strictly follow the synchronous design methodology (i.e., all registers in a system should be synchronized by a common clock signal). Isolate the memory components from the VHDL description and code them in a separate segment. One-segment coding style is not advisable. The memory components should be coded clearly so that a predesigned cell can be inferred from the device library. Avoid synthesizing a memory component from scratch. Asynchronous reset, if used, should be only for system initialization. It should not be used to clear the registers during regular operation. Unless there is a compelling reason, a variable should not be used to infer a memory component.

I n t e g r i t y - S e r v i c e - E x c e l l e n c e Lesson Outline 1. Combinational Timing Considerations 2. Sequential Timing Analysis 3. Synthesis Guidelines 22