Reconfigurable Computing - Clocks John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound, Western Australia.

Slides:



Advertisements
Similar presentations
A Stabilization Technique for Phase-Locked Frequency Synthesizers Tai-Cheng Lee and Behzad Razavi IEEE Journal of Solid-State Circuits, Vol. 38, June 2003.
Advertisements

Self-Timed Logic Timing complexity growing in digital design -Wiring delays can dominate timing analysis (increasing interdependence between logical and.
1 Lecture 16 Timing  Terminology  Timing issues  Asynchronous inputs.
COMMUNICATION SYSTEM EEEB453 Chapter 3 (III) ANGLE MODULATION
1 Introduction Sequential circuit –Output depends not just on present inputs (as in combinational circuit), but on past sequence of inputs Stores bits,
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.
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.
Sequential Circuits. Outline  Floorplanning  Sequencing  Sequencing Element Design  Max and Min-Delay  Clock Skew  Time Borrowing  Two-Phase Clocking.
Lock-in amplifiers Signals and noise Frequency dependence of noise Low frequency ~ 1 / f –example: temperature (0.1 Hz), pressure.
Chapter 9 High Speed Clock Management. Agenda Inside the DCM Inside the DFS Jitter Inside the V5 PLL.
1 Lecture 28 Timing Analysis. 2 Overview °Circuits do not respond instantaneously to input changes °Predictable delay in transferring inputs to outputs.
5/4/2006BAE Analog to Digital (A/D) Conversion An overview of A/D techniques.
Sequential Logic 1 clock data in may changestable data out (Q) stable Registers  Sample data using clock  Hold data between clock cycles  Computation.
Clock Design Adopted from David Harris of Harvey Mudd College.
Assume array size is 256 (mult: 4ns, add: 2ns)
1 Helsinki University of Technology,Communications Laboratory, Timo O. Korhonen Data Communication, Lecture5 Some Analog Systems.
Lecture 8: Clock Distribution, PLL & DLL
Sequential Logic 1  Combinational logic:  Compute a function all at one time  Fast/expensive  e.g. combinational multiplier  Sequential logic:  Compute.
Embedded Systems Hardware:
Asynchronous Machines
Programmable logic and FPGA
EE311: Junior EE Lab Phase Locked Loop J. Carroll 9/3/02.
Embedded Systems Hardware: Storage Elements; Finite State Machines; Sequential Logic.
Phase Lock Loop EE174 – SJSU Tan Nguyen.
Chapter #6: Sequential Logic Design 6.2 Timing Methodologies
Comparators  A comparator compares two input words.  The following slide shows a simple comparator which takes two inputs, A, and B, each of length 4.
Uli Schäfer 1 FPGAs for high performance – high density applications Intro Requirements of future trigger systems Features of recent FPGA families 9U *
Linear Regulator Fundamentals 2.1 Types of Linear Regulators.
Ayman Khattab Mohamed Saleh Mostafa El-Khouly Tarek El-Rifai
Lecture 22: PLLs and DLLs. CMOS VLSI DesignCMOS VLSI Design 4th Ed. 22: PLLs and DLLs2 Outline  Clock System Architecture  Phase-Locked Loops  Delay-Locked.
1. 2 LOOP DYNAMICS To keep track of deviations from the free-running frequency,
Global Timing Constraints FPGA Design Workshop. Objectives  Apply timing constraints to a simple synchronous design  Specify global timing constraints.
© Digital Integrated Circuits 2nd Sequential Circuits Digital Integrated Circuits A Design Perspective Designing Sequential Logic Circuits Jan M. Rabaey.
Reconfigurable Computing - Verifying Circuits Performance! John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn.
Reconfigurable Computing - Assignment Feedback John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound, Western.
Reconfigurable Computing - Type conversions and the standard libraries John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots.
TELECOMMUNICATIONS Dr. Hugh Blanton ENTC 4307/ENTC 5307.
Basic Sequential Components CT101 – Computing Systems Organization.
Eeng Chapter 4 Bandpass Circuits   Limiters   Mixers, Upconverters and Downconverters   Detectors, Envelope Detector, Product Detector  
Reconfigurable Computing - FPGA structures John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound, Western.
Reconfigurable Computing - Verifying Circuit Performance! John Morris Chung-Ang University The University of Auckland ‘Iolanthe II’ in a good breeze on.
1 System Clock and Clock Synchronization.. System Clock Background Although modern computers are quite fast and getting faster all the time, they still.
Timing Analysis Section Delay Time Def: Time required for output signal Y to change due to change in input signal X Up to now, we have assumed.
Reading Assignment: Rabaey: Chapter 9
1 A High-Speed and Wide Detectable Frequency Range Phase Detector for DLLs Babazadeh, H.; Esmaili, A.; Hadidi, K.; NORCHIP, 2009 Digital Object Identifier:
Reconfigurable Computing - Pipelined Systems John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound, Western.
Digital to Analog Converter (DAC)
Clocking System Design
Reconfigurable Computing - Verifying Circuits Performance! John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn.
Clock Networks and PLLs in Altera’s Stratix III Devices VLSI Systems I Fall 2007 Hamid Abbaalizadeh.
Counters In digital logic and computing, a counter is a device which stores (and sometimes displays) the number of times a particular event or process.
S Transmission Methods in Telecommunication Systems (4 cr) Carrier Wave Modulation Systems.
Reconfigurable Computing - Performance Issues John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound, Western.
Sequential Logic Design
Lecture 11: Sequential Circuit Design
Demodulation/ Detection Chapter 4
Amplitude Feedback Subcircuit Schematic Modifications
Sequential circuit design with metastability
Capacitance, Phase, and Frequency
CMOS VLSI Design Chapter 13 Clocks, DLLs, PLLs
Phase-Locked Loop Design
Chapter 10 Timing Issues Rev /11/2003 Rev /28/2003
CSE 370 – Winter Sequential Logic - 1
CMOS VLSI Design Chapter 13 Clocks, DLLs, PLLs
Interfacing Data Converters with FPGAs
ECE 352 Digital System Fundamentals
Lecture 22: PLLs and DLLs.
Presentation transcript:

Reconfigurable Computing - Clocks John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound, Western Australia

Clocks  Clocks are a fundamental part of synchronous circuits  With a large, complex circuit, management of the clock becomes a significant problem  Clock signals must  have fixed, known frequencies Crystal oscillators are very stable f is T dependent This only affects high precision (>1 in 10 5 ) timing circuits Crystal `ovens’ control T  very stable clocks  be ‘clean’ ie have sharp, well-defined edges  have low skew Clock edge must arrive at all parts of the circuit simultaneously

Clock Skew  Correct operation of synchronous circuits assumes all circuits receive a clock edge at the same time ie clock skew = 0  Physical characteristics of a real circuit make this impossible!  Tolerance for clock skew  Adds to the propagation delays Signal generated by circuit reached last by a clock edge may be ‘read’ by a circuit which the clock reaches first  Lengthens minimum cycle times  Reduces potential operating frequency  Clock skew can be reduced by layout  Clock distribution trees

Clock Skew  Clock skew can be reduced by layout  Clock distribution trees  ‘H’ configurations  Circuits derive clocks from the ‘leaves’ (endpoints) of the tree  Ideally, clock edges travel the same distance to each leaf  and  Arrive at the same time

Clock Skew  Amplifiers are commonly added  Signal re-shaping  ‘Clean’ clocks at all receivers  ‘Clean’ = fast rise time!  Although the clock may arrive at all ‘receivers’ at the same time  At best, this will only occur on this device  Clock skew (relative to other devices in a system) will now be high! not or

Synchronizing clocks  Phase locked loops (PLLs)  Circuit blocks that ‘lock’ the phases of signals to a reference  PLL adjusts phase of output so that the feedback signal and the reference are in phase  Feedback could be derived from a ‘leaf’ of the clock tree Output will be ‘advanced’ so that clocks at all leaves are in phase with the reference (and the rest of a system!) Reference PLL Output Feedback Reference PLL Output Feedback Sample clock at end of distribution network t d >> 0 clk

Large FPGAs  Large FPGAs can suffer from clock skew problems  >10 6 ‘gate equivalent’ devices are available now!  Device manufacturers now provide PLL circuitry  Sometimes in different guises! eg Xilinx provide ‘Delay-Locked Loops’ (DLLs) Variant of the same basic idea!  First use of these blocks  Ensure that clocked circuits within the FPGA are in phase with  themselves and  the rest of a system  However, there is also another use …  Apparent if we look at the structure of a typical PLL

PLL structure  Phase of Reference and feedback are compared  Phase difference (error) drives a Voltage Controlled Oscillator  A VCO outputs a frequency proportional to its input voltage  Low Pass Filter restricts rate of change of VCO input  Stops oscillatory behaviour  VCO outputs desired frequency  Delays in the feedback cause  Non zero phase error output, so  the VCO frequency increases to ‘catch up’  Eventually VCO will settle so that its frequency matches the reference and its phase ensures that the feedback and reference are ‘phase locked ’

Frequency Multipliers  Let’s add a divider to the feedback  Now, when the PLL has settled  f FB / n = f ref and   (FB) =  (ref)  f output = n  f ref or  we have a multiple of the f ref to drive our system and  it’s in phase with the reference  and the remainder of the system!

Phase detectors  An XOR gates produces a simple phase detector  However, this doesn’t indicate a ‘lead’ or a ‘lag’  A slightly more complex circuit produces ‘up’ and ‘down’ correction signals which can drive the VCO

PLL uses  Thus PLLs  Keep clock edges aligned  Provide multiples of reference clocks  You can drive your system with a low frequency clock  One you can drive over PCB tracks!  FPGA internal clock frequencies can be much higher  Shorter distances, lower C allow higher f !  Thus a PLL is a vital component of a high performance FPGA  Once it can support ‘core’ frequencies > ~100MHz Unfortunately the Altera Flex10K70C’s don’t have PLLs but Flex10KE family devices do!

PLL uses  Note that delays through the I/O buffers driving each pin are also significantly longer than, say, through a logic cell  For example, for an Altera FLEX10K10-3  Through a logic cell, delay = t LUT + t SU = ns = 2.7 ns  Through an I/O buffer, delay = t IOD + t OD1,2,3 = (2.6 or 4.9 or 6.3) ns = 3.9 – 7.6 ns  This makes it hard to use an external clock >~ 80MHz whereas internal circuits can be clocked up to nearly 200MHz  PLLs to provide internal fast clocks are essential

‘Rough’ clocks  We all know how to make an oscillator with an odd number of inverters  Some FPGAs provide internal oscillators  Clock without any external crystal  However, the frequency of such clocks may vary widely f  t d (inv)  Looking at the Altera data sheets  For an EPF10K10-3, t LUT  1.4ns  For an EPF10K10-4, t LUT  1.7ns Denotes the ‘speed grade’

‘Rough’ clocks  Speed grade?  Devices made on the same fabrication line  Tested  Binned (classified) as -3 or -4 depending on their performance, eg  If t LUT  1.4 ns, it’s a -3  If t LUT > 1.4ns, it’s a -4  If t LUT > 1.7ns, it’s a reject - or maybe a -5  This means that a “-4” device could have 1.4 ns < t LUT < 1.7ns  Thus an oscillator constructed in this way will have a frequency uncertainty of ~18% (based on as assumption of 1.7ns)  So these internal oscillators are fine..

‘Rough’ clocks  So these internal oscillators are fine  If your design is  (A) working with a slow asynchronous device It must be slow enough so that you can clock a state machine much faster than the fastest response from the device and still guarantee any response times required by the device  and has no critical output timing ( ie you don’t need to use the clock to accurately time an output)  or  (B) it’s fast, but timing isn’t critical ( ie you can ‘miss’ an event in one clock cycle and detect it in the next without violating protocol rules)