COMP541 Sequential Logic Timing

Slides:



Advertisements
Similar presentations
CS 140 Lecture 11 Sequential Networks: Timing and Retiming Professor CK Cheng CSE Dept. UC San Diego 1.
Advertisements

Tutorial 2 Sequential Logic. Registers A register is basically a D Flip-Flop A D Flip Flop has 3 basic ports. D, Q, and Clock.
1 Lecture 16 Timing  Terminology  Timing issues  Asynchronous inputs.
Synchronous Sequential Logic
1 COMP541 Flip-Flop Timing Montek Singh Oct 6, 2014.
Registers and Counters. Register Register is built with gates, but has memory. The only type of flip-flop required in this class – the D flip-flop – Has.
Modern VLSI Design 4e: Chapter 5 Copyright  2008 Wayne Wolf Topics n Performance analysis of sequential machines.
Introduction to CMOS VLSI Design Sequential Circuits.
Introduction to CMOS VLSI Design Sequential Circuits
Lecture 11: Sequential Circuit Design. CMOS VLSI DesignCMOS VLSI Design 4th Ed. 11: Sequential Circuits2 Outline  Sequencing  Sequencing Element Design.
Sequential Logic Handouts: Lecture Slides : Progress so far… PHYSICS: Continuous variables, Memory, Noise, f(RC) = 1 - e-t/R COMBINATIONAL: Discrete,
K-Maps, Timing Sequential Circuits: Latches & Flip-Flops Lecture 4 Digital Design and Computer Architecture Harris & Harris Morgan Kaufmann / Elsevier,
1 Lecture 28 Timing Analysis. 2 Overview °Circuits do not respond instantaneously to input changes °Predictable delay in transferring inputs to outputs.
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.
Assume array size is 256 (mult: 4ns, add: 2ns)
How Computers Work Lecture 6 Page 1 How Computers Work Lecture 6 Finite State Machines.
ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN Dr. Shi Dept. of Electrical and Computer Engineering.
ENGIN112 L28: Timing Analysis November 7, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 28 Timing Analysis.
EE141 © Digital Integrated Circuits 2nd Timing Issues 1 Latch-based Design.
CSE 140L Lecture 4 Flip-Flops, Shifters and Counters Professor CK Cheng CSE Dept. UC San Diego.
Sequential Logic 1  Combinational logic:  Compute a function all at one time  Fast/expensive  e.g. combinational multiplier  Sequential logic:  Compute.
CSE 140 Discussion Section Midterm #2 Review Mingjing Chen.
Chapter #6: Sequential Logic Design 6.2 Timing Methodologies
Introduction to CMOS VLSI Design Lecture 10: Sequential Circuits Credits: David Harris Harvey Mudd College (Material taken/adapted from Harris’ lecture.
CS 151 Digital Systems Design Lecture 28 Timing Analysis.
Lecture 5. Sequential Logic 3 Prof. Taeweon Suh Computer Science Education Korea University 2010 R&E Computer System Education & Research.
1 COMP541 Sequential Circuits Montek Singh Feb 1, 2007.
Sequential Networks: Timing and Retiming
Chapter 3 Computer System Architectures Based on
Copyright © 2007 Elsevier3- Sequential Logic Circuits Design.
1 COMP541 Sequential Logic Timing Montek Singh Sep 30, 2015.
Lecture 4. Sequential Logic #3 Prof. Taeweon Suh Computer Science & Engineering Korea University COSE221, COMP211 Logic Design.
Sequential Logic Circuit Design Eng.Maha Alqubali.
Digital Integrated Circuits A Design Perspective
Lecture 11: Sequential Circuit Design
Chapter 3 Digital Design and Computer Architecture, 2nd Edition
Chapter 3 Digital Design and Computer Architecture: ARM® Edition
Digital Integrated Circuits A Design Perspective
CSE 140 – Discussion 7 Nima Mousavi.
Chapter 7 Designing Sequential Logic Circuits Rev 1.0: 05/11/03
Computer Organization and Design Memories and State Machines
Timing and Verification
Digital Logic Design Alex Bronstein Lecture 2: Pipelines.
Sequential Logic Combinational logic:
Sequential circuit design with metastability
Sequential Circuit Timing
Timing issues.
13. Sequential Circuit Timing
CSE 140 MT 2 Review By Daniel Knapp.
Introduction to Sequential Logic Design
Introduction to CMOS VLSI Design Lecture 10: Sequential Circuits
Guerilla Section #4 10/05 SDS & MIPS Datapath
Excitation Vectors Input Combinational Logic Memory Output States.
COMP541 Flip-Flop Timing Montek Singh Feb 23, 2010.
Topics Performance analysis..
CS341 Digital Logic and Computer Organization F2003
Performance Analysis (Clock Signal) مرتضي صاحب الزماني.
Excitation Vectors Input Combinational Logic Memory Output States.
Topics Clocking disciplines. Flip-flops. Latches..
Pipeline Principle A non-pipelined system of combination circuits (A, B, C) that computation requires total of 300 picoseconds. Comb. logic.
Vishwani D. Agrawal James J. Danaher Professor
Lecture 14: Performance Optimization
Circuit Timing Dr. Tassadaq Hussain
ECE 352 Digital System Fundamentals
Lecture 19 Logistics Last lecture Today
Timing Analysis and Optimization of Sequential Circuits
Design of Digital Circuits Lecture 8: Timing and Verification
Advanced Computer Architecture Lecture 7
Lecture 3: Timing & Sequential Circuits
Presentation transcript:

COMP541 Sequential Logic Timing Montek Singh Feb 27, 2019

Topics Timing analysis flip-flops sequential systems clock skew

Input Timing Constraints Setup time: tsetup = time before the clock edge that data must be stable (i.e. not changing) Hold time: thold = time after the clock edge that data must be stable Aperture time: ta = time around clock edge that data must be stable (ta = tsetup + thold)

Output Timing Constraints Propagation delay: tpcq = max time after clock edge by which output Q is guaranteed to have stabilized (i.e., not changing anymore) Contamination delay: tccq = min time after clock edge during which Q will not have started changing yet

Dynamic Discipline The input to a synchronous sequential circuit must be stable during the aperture (setup and hold) time around the clock edge Specifically, the input must be stable at least tsetup before the clock edge at least until thold after the clock edge

Implications on Design Constrains operation Given a clock period, constrains circuit delays Given a circuit, constraints clock period The delay between registers (which impacts clock period) has a minimum and maximum delay, dependent on the delays of the circuit elements Delays of both comb. logic and flip-flops must be taken into account

Setup Time Constraint What’s min period, Tc? Tc ≥ tpcq + tpd + tsetup input to R2 must be stable at least tsetup before the clock edge constrains max delay from R1 through combinational logic What’s min clock period? What’s min period, Tc? Tc ≥ tpcq + tpd + tsetup tpd ≤ Tc – (tpcq + tsetup) So, clock period constrained by: Delay in CL Delay in previous reg (R1) Setup requirement in next reg (R2)

Hold Time Constraint Hold time tccq + tcd ≥ thold tcd ≥ thold - tccq input to R2 must be stable for at least thold after clock edge constrains the minimum delay from register R1 through the combinational logic often try to design circuits with 0 hold time requirement tccq + tcd ≥ thold tcd ≥ thold - tccq If there is no combinational logic between flipflops: thold ≤ tccq

Timing Analysis Timing Characteristics tccq = 30 ps (FF contamination) tpcq = 50 ps (FF propagation) tsetup = 60 ps thold = 70 ps tpd = 35 ps tcd = 25 ps tpd = 3 x 35 ps = 105 ps tcd = 25 ps Setup time constraint: Tc ≥ (50 + 105 + 60) ps = 215 ps fc = 1/Tc = 4.65 GHz tpd = tcd = Setup time constraint: Tc ≥ fc = Hold time constraint: tccq + tcd > thold ? (30 + 25) ps > 70 ps ? No!

Fixing Hold Time Violation Add buffers to the short paths: Timing Characteristics tccq = 30 ps tpcq = 50 ps tsetup = 60 ps thold = 70 ps tpd = 35 ps tcd = 25 ps tpd = 3 x 35 ps = 105 ps tcd = 2 x 25 ps = 50 ps Setup time constraint: Tc ≥ (50 + 105 + 60) ps = 215 ps fc = 1/Tc = 4.65 GHz Hold time constraint: tccq + tpd > thold ? (30 + 50) ps > 70 ps ? Yes!

Hold Time Often flip-flops are designed for a hold time of zero To avoid these tricky problems

Clock Skew Clock doesn’t arrive at all registers at the same time Skew is the difference between the arrival times of the clock edge at two different (typically neighboring) flip-flops Examine the worst case: guarantee that discipline is not violated for any register pair many registers in a system!

Setup Time Constraint with Clock Skew Worst case: CLK2 is earlier than CLK1 Tc ≥ tpcq + tpd + tsetup + tskew tpd ≤ Tc – (tpcq + tsetup + tskew)

Hold Time Constraint with Clock Skew Worst case: CLK1 is earlier than CLK2 tccq + tcd ≥ thold + tskew tcd ≥ thold - tccq + tskew If there is no combinational logic between flipflops: thold + tskew ≤ tccq Even if hold time is 0, only a very small skew is tolerated: tskew ≤ tccq

Reading, and next topic Reading: Section 3.5.1-3.5.3 Next topics: CPU datapath and control (Chapter 7.1-7.3) memories (Chapter 5.5)