1 COMP541 Sequential Logic Timing Montek Singh Sep 30, 2015.

Slides:



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

1 A latch is a pair of cross-coupled inverters –They can be NAND or NOR gates as shown –Consider their behavior (each step is one gate delay in time) –From.
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.
Sequential Circuit Design
1 COMP541 Flip-Flop Timing Montek Singh Oct 6, 2014.
Modern VLSI Design 4e: Chapter 5 Copyright  2008 Wayne Wolf Topics n Performance analysis of sequential machines.
Introduction to CMOS VLSI Design Sequential Circuits.
VLSI Design EE 447/547 Sequential circuits 1 EE 447/547 VLSI Design Lecture 9: Sequential Circuits.
Introduction to CMOS VLSI Design Sequential Circuits
S. Reda EN160 SP’07 Design and Implementation of VLSI Systems (EN0160) Lecture 24: Sequential Circuit Design (2/3) Prof. Sherief Reda Division of Engineering,
MICROELETTRONICA Sequential circuits Lection 7.
1 Sequential Ckts, Latches and Timing Issues Today: Sequential Circuits, LatchesFirst Hour: Sequential Circuits, Latches –Section of Katz’s Textbook.
Latches CS370 –Spring 2003 Section 4-2 Mano & Kime.
ELEC 256 / Saif Zahir UBC / 2000 Timing Methodology Overview Set of rules for interconnecting components and clocks When followed, guarantee proper operation.
Lecture 11: Sequential Circuit Design. CMOS VLSI DesignCMOS VLSI Design 4th Ed. 11: Sequential Circuits2 Outline  Sequencing  Sequencing Element Design.
Introduction to CMOS VLSI Design Lecture 10: Sequential Circuits David Harris Harvey Mudd College Spring 2004.
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,
Sequential Circuits : Part I Read Sections 5-1, 5-2, 5-3.
Digital Logic Design Lecture 22. Announcements Homework 7 due today Homework 8 on course webpage, due 11/20. Recitation quiz on Monday on material from.
Sequential Circuits. Outline  Floorplanning  Sequencing  Sequencing Element Design  Max and Min-Delay  Clock Skew  Time Borrowing  Two-Phase Clocking.
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE VLSI Circuit Design Lecture 17 - Sequential.
Sequential Timing Optimization. Long path timing constraints Data must not reach destination FF too late s i + d(i,j) + T setup  s j + P s i s j d(i,j)
1 Lecture 28 Timing Analysis. 2 Overview °Circuits do not respond instantaneously to input changes °Predictable delay in transferring inputs to outputs.
Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis EE4800 CMOS Digital IC Design & Analysis Lecture 11 Sequential Circuit Design Zhuo Feng.
Sequential Logic 1 clock data in may changestable data out (Q) stable Registers  Sample data using clock  Hold data between clock cycles  Computation.
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.
Timing in Sequential circuits – Stabilization time of a latch Assume that: t hl,1 = t lh,1 = t hl,2 = t lh,2 = 1 time unit 1 2.
S. Reda EN160 SP’08 Design and Implementation of VLSI Systems (EN1600) Lecture 22: Sequential Circuit Design (1/2) Prof. Sherief Reda Division of Engineering,
Design and Implementation of VLSI Systems (EN1600) Lecture 23: Sequential Circuit Design (2/2) Prof. Sherief Reda Division of Engineering, Brown University.
Introduction to CMOS VLSI Design Lecture 10: Sequential Circuits
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 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.
Copyright © 2007 Elsevier3- Ders-6: Ardışıl Mantık Devreleri Tasarımı.
1 COMP541 Sequential Circuits Montek Singh Feb 1, 2007.
CEC 220 Digital Circuit Design Latches and Flip-Flops Monday, March 03 CEC 220 Digital Circuit Design Slide 1 of 19.
Sequential Networks: Timing and Retiming
Chapter 3 Computer System Architectures Based on
Copyright © 2007 Elsevier3- Sequential Logic Circuits Design.
June clock data Q-flop Flop dataQ clock Flip-flop is edge triggered. It transfers input data to Q on clock rising edge. Memory Elements.
Clocking System Design
Synchronous Sequential Circuits by Dr. Amin Danial Asham.
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University
Lecture 4. Sequential Logic #3 Prof. Taeweon Suh Computer Science & Engineering Korea University COSE221, COMP211 Logic Design.
Lecture 11: Sequential Circuit Design
Chapter 3 Digital Design and Computer Architecture, 2nd Edition
CSE 140 – Discussion 7 Nima Mousavi.
Timing and Verification
Sequential circuit design with metastability
Sequential Circuit Timing
13. Sequential Circuit Timing
Introduction to Sequential Logic Design
COMP541 Flip-Flop Timing Montek Singh Feb 23, 2010.
Topics Performance analysis..
Performance Analysis (Clock Signal) مرتضي صاحب الزماني.
Lecture 14: Performance Optimization
ECE 352 Digital System Fundamentals
COMP541 Sequential Logic Timing
Presentation transcript:

1 COMP541 Sequential Logic Timing Montek Singh Sep 30, 2015

Topics  Timing analysis flip-flops flip-flops sequential systems sequential systems clock skew clock skew 2

Input Timing Constraints  Setup time: t setup = time before the clock edge that data must be stable (i.e. not changing)  Hold time: t hold = time after the clock edge that data must be stable  Aperture time: t a = time around clock edge that data must be stable (t a = t setup + t hold ) 3

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

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 t setup before the clock edge at least t setup before the clock edge at least until t hold after the clock edge at least until t hold after the clock edge 5

Implications on Design  Constrains operation Given a clock period, constrains circuit delays Given a clock period, constrains circuit delays Given a circuit, constraints clock period 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 Delays of both comb. logic and flip-flops must be taken into account 6

Setup Time Constraint  Setup time input to R2 must be stable at least t setup before the clock edge input to R2 must be stable at least t setup before the clock edge constrains max delay from R1 through combinational logic constrains max delay from R1 through combinational logic  What’s min clock period? What’s min period, T c ? T c ≥ t pcq + t pd + t setup t pd ≤ T c – (t pcq + t setup ) So, clock period constrained by: Delay in CL Delay in previous reg (R1) Setup requirement in next reg (R2) 7

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

Timing Analysis Timing Characteristics t ccq = 30 ps (FF contamination) t pcq = 50 ps (FF propagation) t setup = 60 ps t hold = 70 ps t pd = 35 ps t cd = 25 ps t pd = t cd = Setup time constraint: T c ≥ f c = Hold time constraint: t ccq + t cd > t hold ? t pd = 3 x 35 ps = 105 ps t cd = 25 ps Setup time constraint: T c ≥ ( ) ps = 215 ps f c = 1/T c = 4.65 GHz ( ) ps > 70 ps ? No! 9

Fixing Hold Time Violation Timing Characteristics t ccq = 30 ps t pcq = 50 ps t setup = 60 ps t hold = 70 ps t pd = 35 ps t cd = 25 ps t pd = 3 x 35 ps = 105 ps t cd = 2 x 25 ps = 50 ps Setup time constraint: T c ≥ ( ) ps = 215 ps f c = 1/T c = 4.65 GHz Hold time constraint: t ccq + t pd > t hold ? ( ) ps > 70 ps ? Yes! Add buffers to the short paths: 10

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

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 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 guarantee that discipline is not violated for any register pair many registers in a system! many registers in a system! 12

Setup Time Constraint with Clock Skew  Worst case: CLK2 is earlier than CLK1 T c ≥ t pcq + t pd + t setup + t skew t pd ≤ T c – (t pcq + t setup + t skew ) 13

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

Next Time  Read Section  Next: VGA Monitors  Then we’ll move on to memories Section 5.5 Section