9 - Metastability and Clock Recovery Asynchronous Inputs
9 - Metastability and Clock Recovery Asynchronous Inputs
We will consider a number of issues related to Not all inputs are synchronized with the clock
asynchronous inputs, multiple clock domains, clock Examples:
synchronisation and clock distribution. Keystrokes
Useful references: Sensor inputs
Chapter 8, pp757-773, Digital Design Principles & Practices, Data received from a network (transmitter has its own clock)
John Wakerly. Inputs must be synchronized with the
“Metastability in Altera Devices”, Altera App Note 42. system clock before being applied to a synchronous
“PLLs in Cyclone II Devices”, Chapter 7 of Cyclone II Manual, system.
Altera
“Using the Virtex Delay-Locked Loop”, XAPP-132.
Imperial College, 2007 Digital System Design 9.1 Imperial College, 2007 Digital System Design 9.2
Imperial College, 2007 Digital System Design 9.3 Imperial College, 2007 Digital System Design 9.4
Even worse The way to do it
Imperial College, 2007 Digital System Design 9.7 Imperial College, 2007 Digital System Design 9.8
Metastability resolution time Flip-flop metastable behavior
Probability of flip-flop output being in the metastable
state is an exponentially decreasing function of tr (time
since clock edge, i.e. “resolution time”).
Stated another way,
exp (tr / τ )
MTBF (tr ) =
To f a
where
τ and T0 are parameters for a particular flip-flop,
f is the clock frequency, and
a is the number of asynchronous transitions / sec
Imperial College, 2007 Digital System Design 9.9 Imperial College, 2007 Digital System Design 9.10
MTBF (tr ) =
Changing T0 exp (tr / τ )
To f a
Imperial College, 2007 Digital System Design 9.11 Imperial College, 2007 Digital System Design 9.12
Is 1000 years enough? Multiple-cycle synchronizer
Imperial College, 2007 Digital System Design 9.13 Imperial College, 2007 Digital System Design 9.14
Imperial College, 2007 Digital System Design 9.15 Imperial College, 2007 Digital System Design 9.16
Clock-skew calculation Example of bad clock distribution
Imperial College, 2007 Digital System Design 9.17 Imperial College, 2007 Digital System Design 9.18
Many digital systems have more than one clock Clocking information embedded in data stream
domains:- Use PLL to recover the clock
State of system is stored in analog loop filter
Imperial College, 2007 Digital System Design 9.19 Imperial College, 2007 Digital System Design 9.20
Phase Alignment in Source Synchronous
Oversampled Clock/Data Recovery Systems
Oversample the data and perform phase alignment Timing information carried by reference clock
digitally Use DLL to ensure proper clock phase for sampling
De-couples clock generation from tracking of data
Data must guarantee transitions to ensure tracking
Imperial College, 2007 Digital System Design 9.21 Imperial College, 2007 Digital System Design 9.22
DLL in Xilinx Virtex data/clock alignment Xilinx DLL with various phase outputs
Imperial College, 2007 Digital System Design 9.27 Imperial College, 2007 Digital System Design 9.28
Using DLL in a standard way Using DLL to de-skew onboard clock signals
Imperial College, 2007 Digital System Design 9.29 Imperial College, 2007 Digital System Design 9.30
Imperial College, 2007 Digital System Design 9.31 Imperial College, 2007 Digital System Design 9.32
Altera Cyclone II PLL (3)
The output frequency is given by: