Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience.

Slides:



Advertisements
Similar presentations
Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience.
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.
1 Lecture 16 Timing  Terminology  Timing issues  Asynchronous inputs.
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.
Issues in System on the Chip Clocking November 6th, 2003 SoC Design Conference, Seoul, KOREA Vojin G. Oklobdzija Advanced Computer System Engineering Laboratory.
Introduction to CMOS VLSI Design Sequential Circuits.
Introduction to CMOS VLSI Design Sequential Circuits
Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience.
ECE C03 Lecture 81 Lecture 8 Memory Elements and Clocking Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
MICROELETTRONICA Sequential circuits Lection 7.
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.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 12 Basic (NAND) S – R Latch “Cross-Coupling” two NAND gates gives the S -R Latch:
FPGA-Based System Design: Chapter 5 Copyright  2004 Prentice Hall PTR Clocking disciplines Flip-flops. Latches.
Sequential Circuits : Part I Read Sections 5-1, 5-2, 5-3.
EKT 124 / 3 DIGITAL ELEKTRONIC 1
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.
Clock Design Adopted from David Harris of Harvey Mudd College.
Assume array size is 256 (mult: 4ns, add: 2ns)
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.
Digital System Clocking:
Logic and Computer Design Fundamentals Registers and Counters
Sequential Circuits. 2 Sequential vs. Combinational Combinational Logic:  Output depends only on current input −TV channel selector (0-9) Sequential.
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.
Temporizzazioni e sincronismo1 Progettazione di circuiti e sistemi VLSI Anno Accademico Lezione Temporizzazioni e sincronizzazione.
Contemporary Logic Design Sequential Logic © R.H. Katz Transparency No Chapter #6: Sequential Logic Design Sequential Switching Networks.
CS 151 Digital Systems Design Lecture 28 Timing Analysis.
Chapter 3: Sequential Logic Circuit EKT 121 / 4 ELEKTRONIK DIGIT 1.
Digital Integrated Circuits© Prentice Hall 1995 Sequential Logic SEQUENTIAL LOGIC.
Digital System Bus A bus in a digital system is a collection of (usually unbroken) signal lines that carry module-to-module communications. The signals.
Flip Flop
Chap 4. Sequential Circuits
Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience.
Digital Integrated Circuits© Prentice Hall 1995 Sequential Logic SEQUENTIAL LOGIC.
EEE2243 Digital System Design Chapter 7: Advanced Design Considerations by Muhazam Mustapha, extracted from Intel Training Slides, April 2012.
Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience.
Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience.
Flip Flop Chapter 15 Subject: Digital System Year: 2009.
Introduction to Clock Tree Synthesis
1 COMP541 Sequential Circuits Montek Singh Feb 1, 2007.
Sequential Networks: Timing and Retiming
EKT 121 / 4 ELEKTRONIK DIGIT I
Sahar Mosleh PageCalifornia State University San Marcos 1 More on Flip Flop State Table and State Diagram.
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.
Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience.
1 COMP541 Sequential Logic Timing Montek Singh Sep 30, 2015.
Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience.
Clocking System Design
Synchronous Sequential Circuits by Dr. Amin Danial Asham.
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University
FAMU-FSU College of Engineering EEL 3705 / 3705L Digital Logic Design Spring 2007 Instructor: Dr. Michael Frank Module #10: Sequential Logic Timing & Pipelining.
EE141 Timing Issues 1 Chapter 10 Timing Issues Rev /11/2003.
Lecture 11: Sequential Circuit Design
Lecture #16: D Latch ; Flip-Flops
Introduction to Static Timing Analysis:
Timing Analysis 11/21/2018.
触发器 Flip-Flops 刘鹏 浙江大学信息与电子工程学院 March 27, 2018
Future Directions in Clocking Multi-GHz Systems ISLPED 2002 Tutorial This presentation is available at: under Presentations.
Clocking in High-Performance and Low-Power Systems Presentation given at: EPFL Lausanne, Switzerland June 23th, 2003 Vojin G. Oklobdzija Advanced.
Topics Performance analysis..
Chapter 10 Timing Issues Rev /11/2003 Rev /28/2003
CSE 370 – Winter Sequential Logic-2 - 1
COMP541 Sequential Logic Timing
Timing Analysis and Optimization of Sequential Circuits
Lecture 3: Timing & Sequential Circuits
Presentation transcript:

Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience and IEEE Press, January 2003 Chapter 4: Pipelining and Timing Analysis

Timing in a digital system using a single clock and flip-flops

Nov. 14, 2003 Timing in a digital system using a single clock and flip-flops

Nov. 14, 2003 Late Data Arrival Analysis (single clock, FF) If we set the time reference to t=0 for the leading edge of the clock We set max. clock uncertainties toT L from the nominal time of arrival, T T (for the trailing edge). D CQm represents the minimal Clock-to-Q (output) delay of the Flip-Flop D Lm represents minimal delay through the logic (as opposed to index M where D CQM and D LM represent maximal delays).

Nov. 14, 2003 Late Data Arrival Analysis (single clock, FF) The latest data arrival in the next cycle is: But it should be there at least at this time: So that: Giving us: TL D CQM t CR logic This time ! UTL

Nov. 14, 2003 Early Data Arrival Analysis (single clock, FF) It is commonly misunderstood that the Flip-Flop provides edge-to-edge timing and is thus easier to use, as compared to the Latch based system, because it does not need to be checked for fast paths in the logic (Hold-time violation). This is not true, and a simple analysis that follows demonstrates that even with the Flip- Flop design the fast paths can represent a hazard and invalidate the system operation.

Nov. 14, 2003 Early Data Arrival Analysis (single clock, FF) If the clock controlling the Flip-Flop releasing the data is skewed so that it arrives early, and the clock controlling the Flip-Flop that receives this data arrives late, a hazard situation exists. This same hazard situation is present if the data travels through a fast path in the logic. A fast path is the path that contains very few logic blocks, or none at all. This hazard is also referred to as critical race (or race-through)

Nov. 14, 2003 Early Data Arrival Analysis (single clock, FF) The earlyest data arrival in the same cycle is: But it should be there not before this time: So that: Giving us limits on the fast paths: TLTL D CQm This time ! HTLTL

System using a Single Latch

Nov. 14, 2003 Analysis of a System using a Single Latch System using a single Latch is more complex to analyze than Flip-Flop based one. Single Latch is transparent while the clock in active and the possibility for the race-through exists. This analysis is still much simpler than a general analysis of a system using two Latches (Master-Slave Latch based system). Use of a single Latch represents a hazard due to the transparency of the Latch, which introduces a possibility of races in the system. Therefore, the conditions for the single-latch based system must account for critical race conditions. Presence of the CSE delay decreases the “useful time” in the pipeline cycle. Therefore, in spite of the hazards introduced by such design, the additional performance gain may well be worth the risk.

Nov. 14, 2003 Two ways of using a latch in a single-latch-based system:

Nov. 14, 2003 Late Data Arrival Analysis In the case of a Latch, input signal need to arrive at least a Setup Time U before the trailing edge. This edge could arrive earlier. Thus, the latest arrival of data into the latch that assures reliable capture after the period P has to be: Data captured at the end of the clock period could be a result of two events (whichever later): a)The data was ready, and clock arrived at the latest possible moment T L, and the worse case delay of the Latch i.e. D CQM was incurred. b)The clock was active and data arrived at the last possible moment, which is a setup time U and clock skew time T T before the trailing edge of the clock. -In both cases the path through the logic was the longest path D LM. Under the worse scenario data must arrive in time:

Nov. 14, 2003 Late Data Arrival Analysis This gives a constraint for the clock speed in terms of P such as: This inequality breaks down into two inequalities: This shows the minimal bound for Pm, which is the time to traverse the loop: “Starting from the leading edge of a clock pulse, there must be time, under worst case, before the trailing edge of the clock in the next cycle, for a signal to pass through the Latch and the logic block in time to meet the setup time constraint”. The value of P = Pm determines the highest frequency of the clock.

Nov. 14, 2003 Early Signal Arrival Analysis (Single Latch Based System) The fastest signal, should arrive at the minimum a hold time after the latest possible arrival of the same clock: There are two possible scenarios: (a) signal was latched early and it passed through a fast path in the logic (b) it arrived early while the Latch was transparent and passed through the fast Latch and fast path in the logic. W t=0 T H after arrived passed Latched early

Nov. 14, 2003 Early Signal Arrival Analysis (Single Latch Based System) The earliest arrival of the clock t CEL happens when the leading edge of the clock is skewed to arrive at –T L. Thus, the condition for preventing race in the system is expressed as: The earliest possible arrival of the clock, plus clock-to- output delay of the Latch has to occur earlier in time than early arrival of the data, thus: which gives us a lower bound on the signal delay in the logic:

Nov. 14, 2003 Early Signal Arrival Analysis (Single Latch Based System) The conditions for reliable operation of a system using a single Latch are: the increase of the clock width W may be beneficial for speed, but it increases the minimal bound for the fast paths

Nov. 14, 2003 Early Signal Arrival Analysis (Single Latch Based System) Maximum useful value for W is obtained when the period P is minimal : Substitute the optimal clock width W opt we obtain the values for the maximal speed and minimal signal delay in the logic which has to be maintained in order to satisfy the conditions for optimal single-latch system clocking: In a single Latch system, it is possible to make the clock period P as small as the sum of the delays in the signal path: Latch and critical path delay in the logic. This can be achieved by adjusting the clock width W, while taking care of D LmB

Analysis of a System with two-phase Clock and two Latches in an M-S arrangement

Nov. 14, 2003 System using two-phase clock and two latches in M-S arrangement

Nov. 14, 2003 System using two-phase clock and two latches in M-S arrangement From the latest signal arrival analysis, several conditions can be derived. First, we need to assure an orderly transfer into L 2 Latch (Slave) from the L 1 Latch (Master), even if the signal arrived late (in the last possible moment) into the (Master) L 1 Latch. This analysis yields the following conditions: These conditions assure timely arrival of the signal into the L2 Latch, thus an orderly L1-L2 transfer (from Master to Slave)

Nov. 14, 2003 System using two-phase clock and two latches in M-S arrangement The analysis of the latest arrival of the signal into L1 Latch in the next cycle (critical path analysis) yields to the equations: This conditions assure timely arrival of the signal that starts on the leading edge of  1, traverses the path through L2, the longest path in the logic and arrives before the trailing edge of  1, in time to be captured. The last equation shows that the amount of overlap V between the clocks  and  allows the system to run at greater speed.

Nov. 14, 2003 System using two-phase clock and two latches in M-S arrangement If we increase V we can tolerate longer “critical path” D LM. However, the increase of the clock introduce a possibility of race conditions, thus requiring a fast path analysis. High-performance systems are designed with the objective of maximizing performance. Therefore, overlapping of the clocks is commonly employed, leading to the constraint of the minimal signal delay in the logic D LmB : The maximal amount of overlap V that can be used is: For maximal performance, it is possible to adjust the clock overlap V so that the system runs at the maximal frequency.

Nov. 14, 2003 M-S (L1-L2 latch) with non-overlapping clocks   and  2 obtained by locally generating clock  2 (This arrangement is also commonly referred to as flip-flop)

Example: Clocking in the first generation of Alpha Processor (WD21064)

Nov. 14, 2003 Timing arrangement and Latches used in the first- generation Alpha processor (a) (b)

Nov. 14, 2003 Example: Clocking the Alpha Processor Clock skew: T L = T T = 20ps, for both edges of the clock. Latch L1 parameters are: clock to Q delay D CQM = 50ps, D CQm = 30ps, D to Q delay D DQM = 60ps, setup time U = 20ps, hold time H = 30ps. Latch L2 parameters are: D CQM = 60ps, D CQm = 40ps, D DQM = 70ps, U = 30ps, H = 40ps. The critical paths in the logic sections 1 and 2 are: D L1M =200pS and D L2M =170ps

Nov. 14, 2003 Example: Clocking the Alpha Processor For the given clock setup: V=0 and clearly P=W1+W2

Nov. 14, 2003 Example: Clocking the Alpha Processor Nominal time, t=0 is set at the leading edge of the clock. The latest allowed data arrival times into latches L1 and L2, respectively: The latest arrival time of data into latch L2 is limited by the time at which latch L1 releases the data into the logic stage Logic1:.

Nov. 14, 2003 Example: Clocking the Alpha Processor

Nov. 14, 2003 Example: Clocking the Alpha Processor

Nov. 14, 2003 Example: Clocking the Alpha Processor

Nov. 14, 2003 Example: Clocking the Alpha Processor

Digital system using a single-phase clock and dual-edge triggered storage elements

Nov. 14, 2003 Digital system using a single-phase clock and dual-edge triggered storage elements

Nov. 14, 2003 Two-stage dual-edge-triggered system

Nov. 14, 2003 Allowed clock period as a function of the clock duty cycle in the dual-edge-triggered system