Low Latency Clock Domain Transfer for Simultaneously Mesochronous, Plesiochronous and Heterochronous Interfaces Wade Williams Philip Madrid, Scott C. Johnson.

Slides:



Advertisements
Similar presentations
Clock Domain Crossing (CDC)
Advertisements

Systematic method for capturing “design intent” of Clock Domain Crossing (CDC) logic in constraints Ramesh Rajagopalan Cisco Systems.
Modern VLSI Design 4e: Chapter 5 Copyright  2008 Wayne Wolf Topics n Performance analysis of sequential machines.
Digital Integrated Circuits A Design Perspective
L06 – Clocks Spring /18/05 Clocking.
(Neil west - p: ). Finite-state machine (FSM) which is composed of a set of logic input feeding a block of combinational logic resulting in a set.
Lock-in amplifiers Signals and noise Frequency dependence of noise Low frequency ~ 1 / f –example: temperature (0.1 Hz), pressure.
Pipeline transfer testing. The purpose of pipeline transfer increase the bandwidth for synchronous slave peripherals that require several cycles to return.
Process Control in Semiconductors March 28, 2006.
Introduction to CMOS VLSI Design Lecture 19: Design for Skew David Harris Harvey Mudd College Spring 2004.
Reconfigurable Computing - Clocks John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound, Western Australia.
EE141 © Digital Integrated Circuits 2nd Timing Issues 1 Digital Integrated Circuits A Design Perspective Timing Issues Jan M. Rabaey Anantha Chandrakasan.
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.
CSE477 L19 Timing Issues; Datapaths.1Irwin&Vijay, PSU, 2002 CSE477 VLSI Digital Circuits Fall 2002 Lecture 19: Timing Issues; Introduction to Datapath.
Clock Design Adopted from David Harris of Harvey Mudd College.
Technical Seminar on Timing Issues in Digital Circuits
Chapter 11 Timing Issues in Digital Systems Boonchuay Supmonchai Integrated Design Application Research (IDAR) Laboratory August 20, 2004; Revised - July.
Assume array size is 256 (mult: 4ns, add: 2ns)
Synchronizers for Low Latency Clock Domain Transfer
Kazi Fall 2006 EEGN 4941 EEGN-494 HDL Design Principles for VLSI/FPGAs Khurram Kazi.
Lecture 8: Clock Distribution, PLL & DLL
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.
Design and Implementation of a True Random Number Generator Based on Digital Circuit Artifacts Michael Epstein 1, Laszlo Hars 2, Raymond Krasinski 1, Martin.
11/15/2004EE 42 fall 2004 lecture 321 Lecture #32 Registers, counters etc. Last lecture: –Digital circuits with feedback –Clocks –Flip-Flops This Lecture:
Jieyi Long and Seda Ogrenci Memik Dept. of EECS, Northwestern Univ. Jieyi Long and Seda Ogrenci Memik Dept. of EECS, Northwestern Univ. Automated Design.
Processing Rate Optimization by Sequential System Floorplanning Jia Wang 1, Ping-Chih Wu 2, and Hai Zhou 1 1 Electrical Engineering & Computer Science.
Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience.
Electronic Counters.
Phase Locked Loops Continued
Registers and Counters
OpenCL Introduction A TECHNICAL REVIEW LU OCT
© H. Heck 2008Section 4.41 Module 4:Metrics & Methodology Topic 4: Recovered Clock Timing OGI EE564 Howard Heck.
EE2174: Digital Logic and Lab Professor Shiyan Hu Department of Electrical and Computer Engineering Michigan Technological University CHAPTER 9 Sequential.
Mehdi Sadi, Italo Armenti Design of a Near Threshold Low Power DLL for Multiphase Clock Generation and Frequency Multiplication.
© 2003 Xilinx, Inc. All Rights Reserved FPGA Design Techniques.
So What? Operations Management EMBA Summer TARGET You are, aspire to be, or need to communicate with an executive that does not have direct responsibility.
SIGMA-DELTA ADC SD16_A Sigma-Delta ADC Shruthi Sujendra.
L7: Pipelining and Parallel Processing VADA Lab..
TELECOMMUNICATIONS Dr. Hugh Blanton ENTC 4307/ENTC 5307.
Digital System Clocking: High-Performance and Low-Power Aspects Vojin G. Oklobdzija, Vladimir M. Stojanovic, Dejan M. Markovic, Nikola M. Nedovic Wiley-Interscience.
© BYU 18 ASYNCH Page 1 ECEn 224 Handling Asynchronous Inputs.
TET 8/14/2002 CHES2002, Rev 0.1 MOTOROLA and the Stylized M Logo are registered in the US Patent & Trademark Office. All other product or service names.
ECE 551 Fall /6/2001 ECE Digital System Design & Synthesis Lecture 2 - Pragmatic Design Issues Overview  Classification of Issues oThree-State.
RTL Hardware Design by P. Chu Chapter Poor design practice and remedy 2. More counters 3. Register as fast temporary storage 4. Pipelined circuit.
Reading Assignment: Rabaey: Chapter 9
ELEC692 VLSI Signal Processing Architecture Lecture 3
SoC Clock Synchronizers Project Elihai Maicas Harel Mechlovitz Characterization Presentation.
Unit 1 Lecture 4.
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.
Lecture 4 General-Purpose Input/Output NCHUEE 720A Lab Prof. Jichiang Tsai.
Different Microprocessors Tamanna Haque Nipa Lecturer Dept. of Computer Science Stamford University Bangladesh.
Time Management.  Time management is concerned with OS facilities and services which measure real time.  These services include:  Keeping track of.
IMPLEMENTING A LEADING LOADS PERFORMANCE PREDICTOR ON COMMODITY PROCESSORS BO SU † JOSEPH L. GREATHOUSE ‡ JUNLI GU ‡ MICHAEL BOYER ‡ LI SHEN † ZHIYING.
ECE 301 – Digital Electronics Brief introduction to Sequential Circuits and Latches (Lecture #14)
ECE 331 – Digital System Design Introduction to Sequential Circuits and Latches (Lecture #16)
Phase-Locked Loop Design PREPARED BY:- HARSH SHRMA ( ) PARTH METHANIYA ( ) ARJUN GADHAVI ( ) PARTH PANDYA (
AT91 Power Management This training module describes the Power Management options provided by the AT91 family of microcontrollers. These options address.
Lecture #16: D Latch ; Flip-Flops
Digital Design Jeff Kautzer Univ Wis Milw.
Digital Fundamentals Floyd Chapter 7 Tenth Edition
DAC3484 Multi-DAC Synchronization
Linear Control Systems
Timing Analysis 11/21/2018.
Clocking in High-Performance and Low-Power Systems Presentation given at: EPFL Lausanne, Switzerland June 23th, 2003 Vojin G. Oklobdzija Advanced.
ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN
University of Houston Networking 102 Dr Fred Zellner
Synchronous Digital Design Methodology and Guidelines
Synchronous Digital Design Methodology and Guidelines
Presentation transcript:

Low Latency Clock Domain Transfer for Simultaneously Mesochronous, Plesiochronous and Heterochronous Interfaces Wade Williams Philip Madrid, Scott C. Johnson March 14, 2007

Low Latency Clock Domain Transfer 2 March 14, 2007 Presentation Overview Introduction Clock Domain Characteristics Design Constraints Solution System Response Time Additional Benefits Enhancements Questions

Low Latency Clock Domain Transfer 3 March 14, 2007 Introduction Increasing Levels of Integration  Mixed designs: System-On-A-Chip (SOC)  Independently clocked domains  Independently powered domains Faster External Interfaces  Interface clock frequencies are starting to exceed the internal logic clock rates  Clock frequencies exceeding 2 GHz

Low Latency Clock Domain Transfer 4 March 14, 2007 Clock Domain Characteristics Reference clock source mismatches (plesiochronous) PLL reference clock distribution PLL accumulated phase error Grid clock insertion delay Spread-Spectrum Temperature Voltage

Low Latency Clock Domain Transfer 5 March 14, 2007 D D Clock Domain (cont.) PLL D D D D D Clock A Clock B D

Low Latency Clock Domain Transfer 6 March 14, 2007 Design Constraints Minimized Latency, Maximized Throughput Unknown Phase Relationship Between Domains Controlled Frequency Mismatches (1% - 2%) Predictable Scheduling for Pipelining Manufacturability  Deterministic  Small design footprint  Simple design for quick productization

Low Latency Clock Domain Transfer 7 March 14, 2007 Solution This problem can be solved by building a system comprised of 3 major blocks  Circular FIFO –Performs the basic clock domain transfer  Pointer Tracking Logic –Maintains a consistent pointer separation and provides predictable latency across the interface  Digital Filter –Ensures system stability by filtering out errors due to sampling uncertainties

Low Latency Clock Domain Transfer 8 March 14, 2007 FIFO Basic clock domain transfer is achieved using a circular First-In First-Out (FIFO) queue. Example  8 entry FIFO  Write Pointer on Clock A (Frequency = 2)  Read Pointer on Clock B (Frequency = 3)  Clock B Frequency > Clock A Frequency

Low Latency Clock Domain Transfer 9 March 14, 2007 FIFO (cont.) Clock A (Freq = 2) WrPtr Clock B (Freq = 3) RdPtr

Low Latency Clock Domain Transfer 10 March 14, 2007 FIFO (cont.) Slow Domain (Clock A) free-runs Fast Domain (Clock B) is gated to create the RdPtr Clock  Average frequency matches Clock A  Duty cycle and clock periods can vary Clock A (2) [WrPtr Clock] Clock B (3) RdPtr Clock

Low Latency Clock Domain Transfer 11 March 14, 2007 Pointer Tracking Logic This logic maintains a constant separation between the read and write pointers.  Operates exclusively in the faster clock domain  Leverages the fact that any changes in the pointer separation occur very slowly.

Low Latency Clock Domain Transfer 12 March 14, 2007 Pointer Tracking (cont.) Clock A (Freq = 2) WrPtr[2:0] Clock B (Freq = 3) RdPtr[2:0] WrPtr[2] FF #0 FF #6 FF #7 Evaluate RdPtr Clock

Low Latency Clock Domain Transfer 13 March 14, 2007 Pointer Tracking (cont.) The synchronization chain runs at the FIFO data rate Information about the pointer location is preserved across the synchronization interface. Evaluate is a falling edge pulse generated by the MSB of the WrPtr[2:0]. It represents the WrPtr going to 0. When Evaluate pulses, we compare the RdPtr against the desired location.

Low Latency Clock Domain Transfer 14 March 14, 2007 Digital Filter This averages out the sample data and prevents false pointer corrections Sampling errors are introduce by:  Variations in the clock period of the RdPtr Clock  Metastability on the first sampling flop  High speed clock phase variations due to oscillations on the power supplies

Low Latency Clock Domain Transfer 15 March 14, 2007 Digital Filter (cont.) Variations in the RdPtr Clock period and duty cycle are intrinsic to this solution. Irregularities created by throttling the faster clock necessitate the use of a digital filter The effects of the clock period and duty cycle variations can be exacerbated by the sample rate of the final design.

Low Latency Clock Domain Transfer 16 March 14, 2007 Digital Filter (cont.) The sample rate and the RdPtr Clock can create ratios which inadvertently bias the data. This can not be completely solved with the digital filter. Additional refinements:  Allow hysterersis in the system  Alter the sample rate Clock ARdPtr Clk (I) RdPtr Clk (II)

Low Latency Clock Domain Transfer 17 March 14, 2007 Digital Filter (cont.) Metastability occurs when the data fails to satisfy the setup and hold requirements for the first synchronizing flop. It is expected that there will be periods of time when the front of the synchronization flop chain is operating in a metastable region. The digital filter can help reduce some of the sampling errors (noise) due to metastability.

Low Latency Clock Domain Transfer 18 March 14, 2007 Digital Filter (cont.) This design is not intended to track high speed phase variations between the two clock domains. Frequency oscillations on the power supplies are a primary contributor to this phenomenon. The digital filter can help average out the spurious samples and provide more accurate tracking.

Low Latency Clock Domain Transfer 19 March 14, 2007 System Response Time Using the eight entry FIFO example and a digital filter requiring 3 samples, a correction is possible every 3x8=24 slow clocks. In practice, the system will incur a full FIFO iteration before evaluating the first sample. This reduces the corrections to 1 in 32 clocks, allowing it to track a 3.1% clock difference.

Low Latency Clock Domain Transfer 20 March 14, 2007 Additional Benefits This design carries several beneficial properties  The desired pointer separation can be programmable  Initial pointer placement can be conservative  The tracking logic can be disabled  FIFO data traffic is quickly supported

Low Latency Clock Domain Transfer 21 March 14, 2007 Enhancements There are a few enhancements which are immediately feasible with this design  The logic can be mirrored  Pointer correction events can be pipelined  The tracking logic can operate off slightly earlier versions of their respective clock domains  The digital filter can be customized to the application

Low Latency Clock Domain Transfer 22 March 14, 2007 Trademark Attribution AMD, the AMD Arrow logo and combinations thereof are trademarks of Advanced Micro Devices, Inc. in the United States and/or other jurisdictions. Other names used in this presentation are for identification purposes only and may be trademarks of their respective owners. © 2006 Advanced Micro Devices, Inc. All rights reserved.