DesignCon 2015 Behavioral Modeling of Random Jitter with Realistic Time and Frequency Dependence Scott W. Wedge, Synopsys Inc. [email protected]
Dec 05, 2015
DesignCon 2015
Behavioral Modeling of Random
Jitter with Realistic Time and
Frequency Dependence
Scott W. Wedge, Synopsys Inc.
Abstract
As solutions keep improving for the efficient prediction and equalization of deterministic
jitter in high-speed data channels, new limitations are emerging due to random jitter (RJ)
in sources and PLLs. Modeling RJ requires more advanced behavioral jitter models than
used in the past. In prior applications, RJ could be treated as Gaussian distributions with
contributions independently computed via convolution. But now advanced design and
analyses require RJ to be modeled with phase noise responses for data-clock and CDR
PLLs, realistic jitter spectra, and higher-order jitter models that properly model phase
jitter, period jitter, cycle-to-cycle jitter, all with appropriate jitter bandwidths. This paper
shall discuss how these higher-order random jitter models can be created, with not just
Gaussian statistics, but also with appropriate time- and frequency- dependence of the
jitter, and in such a way to be useful for accurately predicting critical jitter effects in
high-speed data channels.
Author Biography
Scott Wedge has spent over three decades designing AMS/RF circuits and systems and
developing advanced simulation & analysis software for ICs and PCBs. He is a Senior
Staff Engineer with the Design Group at Synopsys, and held prior technical and
management positions with Tanner Research, Hewlett-Packard, EEsof, and Hughes
Aircraft Company. Scott has made substantial contributions to many popular circuit
simulation & design tools including HSPICE, ADS, Tanner Tools, PUFF, and
Touchstone. Scott has authored numerous technical papers, has made contributions to
three textbooks, and holds two patents. He is a registered Professional Engineer in
California, a Senior Member of the IEEE, and a former Howard Hughes Doctoral Fellow.
Scott received his Ph.D. from the California Institute of Technology.
Introduction
Random Jitter (RJ) is often considered a simple and easy-to-account-for effect in link
simulations, where it is typically treated as an add-on step to deterministic jitter analyses.
But if the desire with RJ modeling is to accurately account for the phase noise
characteristics of clocks and PLLs, the modeling and analysis approach must take on
some additional dimensions of complexity. The RJ present in real clocks and data streams
can have rather complex time and frequency behavior. Today’s link simulation models
must capture this behavior for adequate accuracy.
Consider for a moment how we might model random jitter in a reference clock. Typically
this would be considered as a random phase drift about an ideal modulo-two-pi phase
advance related to clock frequency. Is it sufficient to know just the standard deviation of
this drift for a Gaussian distribution? For effective behavioral modeling, we may need to
consider, know, and model much more than this. An appropriate model may need to
include the proper: rate of change of drift, or period jitter; the acceleration of drift, or
cycle-to-cycle jitter; the appropriate sampling of the random phase drift; the matching of
half-cycle jitter, the phase effects on duty-cycle; the proper frequency response of the
jitter, and perhaps other effects.
Capturing and combining these various jitter elements in detail using time-domain
behavioral models is the subject of this paper. Presented here are model mathematics and
useful implementation details. Common pitfalls and errors encountered in creating
behavioral jitter models shall be discussed, and how neglecting certain aspects of jitter
can lead to poor models. Jitter model templates and specifics are presented, with
formulations that can be implemented and manipulated in Verilog-AMS and MATLAB.
Jitter in Three Dimensions
A complete model for jitter requires considering three different characteristics that
contribute to its makeup and description. Here we refer to these as the three dimensions
of jitter. Different aspects of jitter may only focus on a single dimension, yet in reality
they are all invariably dependent on each other.
The Jitter Distribution
The first dimension is the jitter distribution. Our primary concern in this paper is to
accurately model random jitter, and as is true in most situations involving random noise,
our distribution of primary interest is the Gaussian or Normal probability distribution
function given by:
2
2
2
2
1)(RJ
xx
PDF ex
In the classic formula above, ‘x’ is a sample distribution axis, and could be interpreted as,
for example, voltage when looking at voltage noise, or time offsets when looking at edge
transitions for random timing jitter. Such jitter distributions give us the range or spread of
expected or measured values over the axis of interest. The well known Gaussian
distribution is completely described by its 2 variance and mean value x that gives the
center of the distribution along the sample distribution axis. If we have RJ samples over
time given by )(tx , the mean square value of )(tx is given by 22 )( tx and the RMS
value is the standard deviation . As written above, the continuous distribution is
normalized such that integrating over its x-axis yields a value of unity, which is another
way of stating that 100% of samples are accounted for through integration. The awkward
aspect of Gaussian distributions is that theoretically they are unbounded, and samples are
spread over an infinite x-axis interval. Realistically, a high percentage of samples are
accounted for over a handful of values along the x-axis. More realistically, especially
when measuring, we usually examine samples using histograms that use discrete binning
to approximate the distribution.
Jitter versus Time
The jitter distribution gives us the important range and likelihood of values to expect, yet
it’s only part of the jitter picture. It tells us nothing about how jitter may originate from
time-domain fluctuations, nor how it may be modeled in time. Neither does it tell us how
fast samples within the jitter distribution may move from one extreme to another. Let’s
consider an abstraction that allows us to examine jitter versus time. We can begin with
an ideal sinusoidal oscillator, and then include the effects of jitter via perturbations on the
oscillator’s phase advance [1]. Ignoring amplitude noise, we can write the instantaneous
output voltage )(tV of the oscillator according to
)(sin)( 00 ttVtV
where 0V is the nominal peak voltage amplitude, 0 is the nominal angular frequency,
and )(t is the phase deviation that represents jitter (in radians) in terms of a time-
dependent phase error. Phase deviation is a random variable that gives the instantaneous
departure from the nominal phase advance given by t0 . In the context of jitter
modeling, phase deviation is a time-dependent function that we must synthesize to result
in the jitter characteristics we desire to model a clock or oscillator or PLL.
The abstraction of jitter in terms of a sinusoidal model is particularly useful for modeling
LC and XTAL oscillators that in turn may be buffered to form clock signals. But note
that for clocks and data we can easily map this same model to square wave signals using
the )sgn(x sign function which maps zero crossings of the sinusoid to rising and falling
edges:
)(
2sinsgn1
2)(
0
0 ttT
VtVsquare
In this square wave representation, 0T is the nominal oscillation period, and the effects of
the phase deviation )(t are only noticable on the resulting waveform near the half-
period intervals where it influences the sine & sign function zero crossings.
From a measurement perspective, a phase deviation function )(t that represents random
noise will have unpredictable instantaneous values. However, its influence will be
observed in standard jitter measurements. We can see this in the phase advance diagram
of Figure 1, where the phase deviation represents random fluctuations that result in
something other than an ideal straight-line phase advance. The noise-free clock or
oscillator would have a phase advance given by t0 . Phase deviation results in a blurry
departure from this ideal shown as a grey envelope in the figure. For RJ, the phase
deviation will have a jitter distribution known to be Gaussian when sampled. It will
therefore have RMS and standard deviation values that can be measured.
For the purposes of jitter modeling, we can use phase deviation as our jitter versus time
dimension, i.e. a waveform that represents jitter information with respect to time. It can
be thought of as a time-domain function, that can be generated from known statistics. But
some thought must be given towards its construction. Consider for a moment the phase
deviation waveforms shown in Figure 2. These waveforms are formed using Gaussian
samples for each half-cycle, and considered piece-wise constant over the half-cycle
interval. This is a commonly used and simple-to-implement approach to jitter modeling.
However, a close look at the waveforms reveals that there are no restrictions in place here
to prevent the Gaussian samples to move from one extreme to another during sampling.
Figure 1. The normally straight-line phase advance of an oscillator circuit
blurred by uncertainties due to random phase fluctuations.
These fast edges will translate into high-frequency components of jitter that may not be
desireable nor physcially reasonable. Clearly other factors must be considered.
Jitter versus Frequency
The jitter distribution characterizes the range of expected jitter values, while phase
deviation gives us a time-domain function for jitter modeling. Variance values from our
expected jitter distribution can be entered into random number generators to get
distribution samples. These samples can then be used to form phase deviation functions
in time. But we still need to understand the limits on how fast our phase deviation
waveforms can be allowed to change when forming time-domain waveforms from the
discrete samples. This must be done with awareness in the frequency domain of the
expected power spectral density of the phase function.
The one-sided spectral density of the phase deviation )(t is known as the phase
instability )( fS (rad2/Hz) [1]. Note that double-sided spectral densities are also
commonly in use, and a one-sided density is defined for non-negative frequencies only.
Measurements of )( fS for random signals are accomplished using spectral estimation
approaches. Typically this involves taking many waveform time samples, and averaging
and smoothing of multiple DFT results in order to construct the power spectrum. What
has become a more common and convenient measurement for phase deviation is the
single-sideband phase noise )( fL . Phase noise and phase instability responses are
related according to
)(2
1)( fSfL
Figure 2. Gaussian distributed samples used to construct piece-wise constant
phase deviation functions. Multiple random waveforms are superimposed.
)(t
t
By convention, usually )( fL is written in dB as 10log( )( fL ), with units in dB below the
carrier in a 1-Hz bandwidth (dBc/Hz), or more strictly given as
Hz
rad 2
log10 [2].
We can therefore consider our third dimension for characterizing jitter as the phase noise
response. The phase noise response tells us the energy distribution of the phase deviation
as a function of frequency. This is critical for knowing how fast the phase deviation can
change, and how its waveforms may be bandwidth limited or shaped by circuit frequency
responses. Note that jitter spectrum is a related measurement, observed directly in time
units versus frequency [3].
There are often several aspects of the phase noise response that are generally anticipated
from clocks, oscillators, and PLLs. Common frequency responses can be anticipated and
incorporated into the jitter model. In some PLL approaches, we can model the individual
blocks within a PLL to anticipate its response, but it can be much more productive and
efficient to have a single model for the closed loop response that somewhat matches the
phase noise response.
Jitter Modeling in 3D
Formulating a realistic model for a clock or oscillator with random jitter requires taking
into account the three different dimensions described above. Constructing a jitter model
for clocks, oscillators, and PLLs involves knowledge of the jitter distribution, measured
as a 2 variance in the time-domain, and the phase noise measured as a function of offset
frequency. The variance and phase noise are related. The RMS phase jitter rms is a value
related to the variance, phase deviation, and phase noise according to
00
222 )(2)()(2
1lim)( dffLdffSdtt
Tt
T
TT
rms
Figure 1 depicts a closed-loop oscillator where the random fluctuations have a bounded
standard deviation given by 0/ rms . One question concerning our oscillator
model that includes random phase fluctuations: does the oscillator’s phase advance
)(tt have a deviation )(t that is bounded, or does it continue to grow in time? It
depends. In general, closed-loop oscillators and PLLs have bounded fluctations, while
with free-running (open-loop) oscillators do not.
Modeling with realistic time and frequency dependence therefore beings by examining
how we can create behavioral jitter models with a reasonable phase noise response.
Figure 3 gives three basic phase noise responses useful for jitter model creation. What
can be called the zero-order jitter model is shown as )(0 fL . This is the phase noise
response created by using the piece-wise constant phase deviation waveforms shown in
Figure 2. These phase waveforms produce an essentially flat phase noise response over
the offset range of interest. The piece-wise constant samples result in a power spectral
density that is proportional to a 22 )()(sin ff response, but with a high-frequency roll-
off close to the oscillation frequency. This phase noise response is far from realistic for
real circuitry. Although this zero-order model can be made to match the RJ off an eye
diagram, it is far from being able to approximate actual circuitry.
A 1st
Order (Open Loop) Jitter Model
We can construct a 1st order jitter model by using a simplified phase noise response based
on a free-running oscillator dominated by white FM noise [4]. This 1st order model will
have the phase noise given by
2
2
01 )(
f
fcfL .
This response increases as offset frequency drops, and will have have an unbounded
value for RMS phase jitter rms (we cannot integrate the phase noise down to near-zero
offset frequencies). However, we can solve for the resulting timing jitter according to
0
2
2
0
2
0
2
2
2
0
2
0
0
2
2
0
2
2
8)(sin8
)(sin)(8
)(
ccf
dff
fcf
dfffLT
The scalar constant parameter c from Demir [4] can therefore be thought of as setting the
white noise high-offset frequency rolloff. If we set c , the result is a first order
Figure 3. Three basic phase noise responses useful for examining and
creating realistic clock & oscillator jitter models.
model with timing jitter given by )(T which is the open-loop jitter response
discussed by McNeill [5]. In order to form this model, all we need is an RMS value for
period jitter which is equivalent to the timing jitter after an interval of one period:
0
00 )(f
ccTTTPER
The 1st order approach for jitter modeling is therefore a single-parameter open-loop
model based on period jitter which will have frequency/period deviations from one period
to the next over time. Although the frequency/period changes will be bounded, this drift
will cause the phase deviation to grow without bounded over time. It has become
commonplace to combine both the zero-order model, for random phase, and the 1st order
model, for random frequency/period, to model open-loop VCOs. This will give a
superimposed phase noise response )()( 10 fLfL . However, a higher order approach is
needed to model closed-loop oscillators and PLLs where phase drift is bounded over
time.
A 2nd
Order (Closed Loop) Jitter Model
Jitter modeling based on realistic circuitry should have the equivalent of a bounded phase
noise response that can be specified in part with an rms phase jitter value, and have a
phase noise roll-off that somewhat matches the loop bandwidth effects of a PLL. It is this
roll-off in a closed loop response that limits how fast the random phase fluctuations may
take place. A natural phase noise response useful for such modeling is the Lorentzian. It
can be written in the form:
224
0
2
2
0
2
2 )(fcf
cffL rms
Note that written in this form, we can make use of the integral identity (for 0a ):
0
22 2
df
fa
a.
which if we let cfa 2
0 , integration gives us back the rms phase jitter
0
2
2
22
2
0
22
22)(2 rms
rmsrms dffa
adffL
The autocorrelation of the phase deviation )()()( ttR is computed as
cf
rms
marms
rms
ee
dffa
mfa
dfffLR
20
2222
0
22
2
0
2
2
)cos(2
)2cos()(2)(
We therefore have a result for timing jitter given by:
22
0
2
2
2
0
2
2
2
0
2
20
20
2
12
12
)(2
)(
c
rms
cfrms
rmsT
e
e
R
We therefore have a related jitter and phase noise model in terms of the rms phase jitter,
rms , and the scalar constant parameter c which remains related to an open-loop phase
noise response. This two parameter model ( rms and c ) can be thought of as a 2nd
order
model for a closed loop oscillator where rms exists and we have an integrable phase
noise.
The Lorentzian model for phase noise has other interesting and useful properties. It has
the low-offset frequency plateau given by
cfL rms
2
0
2
2
2 )0(
We can rewrite the response in terms of loop bandwidth or time constants according to
cffff
ffL L
L
Lrms 2
022
2
2 )(
or
LL
L
Lrms fL
211
12)(
22
2
2
If we reconsider the one-sided spectral density of the phase deviation, i.e. the phase
instability )( fS , it can now be written
22
2
1
14)(
L
LrmsS
We can model this spectral density response by passing a white noise source with RMS
value given by
Lrmsin 2 through an RC-type filter network with transfer function
ssH
L
1
1)(
Since
22
22
2
)()(
1
1)(
sHS
sH
in
L
In this manner, filtering can be used to match the spectral density of our phase deviation
function to that of a desired phase noise response.
A Strategy for Clock RJ Modeling
We can combine the elements described previously to create a strategy for creating
behavioral models for clock jitter that have realistic time and frequency dependence.
1. Begin with a random number generator capable of creating Gaussian distributions
with a given standard deviation. For example, in Verilog-A this could be done
with the $rdist_normal() function.
2. These random samples will be used to represent samples for a phase deviation
function )(t . The standard deviation of the Gaussian distribution will be related
to the RMS phase jitter rms value for the phase fluctuations.
3. An interpolation approach for connecting the phase deviation samples must be
determined to construct a )(t waveform. The selection here may or may not be
important in order to match measured jitter with modeled jitter. This can be
evaluated using a phase trajectory diagram with careful attention given to how
phase errors map to zero-crossings. The phase interpolation function may be used
to establish the fundamental power spectal density (PSD) response of the )(t
waveform.
4. The phase deviation function )(t is next passed through a filter in order to
match its filtered PSD with that of the expected phase noise response. Typically
this is low-pass filtering, used to match, for example, PLL loop time constant or
bandwidth parameters.
5. The oscillator total phase )(tt is sampled adquately to construct sinusoidal
or square wave signals with the desired time resolution to reveal jitter.
The simplest approach recommended here is a 2nd
order model, specified with RMS
phase jitter rms and a loop time constant parameter L . The loop time constant can be
derived from a specified RMS period jitter PER value (units of seconds) according to:
2
22
0
0
21ln
rms
PER
L
T
This time constant will then result in matching both desired RMS period jitter and phase
jitter values. It is likely to have situations where appropriate values for the loop time
constant L or RMS period jitter PER may be unknown. In this case, it is reasonable to
employ the approach used commonly is serial data communications based on the Golden
PLL and the 1667 rule:
0
0 2
1667
2
1667
2
1T
ffL
L
Conclusions
This paper has presented an approach for capturing realistic time and frequency effects
for behavioral jitter modeling of clocks, oscillators, and PLLs. The approach is based on
considering not only jitter distribution functions, but also realistic oscillator phase noise
responses, and using this knowledge to formulate time-domain functions for phase
deviation that model jitter accurately. The approach uses phase filtering functions, and is
well described for a 2nd
order model that matches a Lorentzian phase noise response.
However, the filtering approach can be extended to model even higher-order and more
complex oscillator & PLL noise behaviors.
References
[1] IEEE Standard Definitions of Physical Quantities for Fundamental Frequency and
Time Metrology – Random Instabilities, IEEE Std. 1139-2008.
[2] S.W. Wedge, “Phase noise and jitter translations for signal integrity”, Proc.
DesignCon, Santa Clara, 2011.
[3] G.D. Le Cheminant, “Solving jitter problems in high-speed digital transmission
systems”, Test & Measurement, Nov. 2010.
[4] A. Demir, A. Mehrotra, and J. Roychowdhury, “Phase noise in oscillators: A unifying
theory and numerical methods for characterization,” IEEE Trans. Circuits Syst. I, vol. 47,
pp. 655-674, May 2000.
[5] J.A. McNeill, “Jitter in ring oscillators”, IEEE J. Solid-State Cir., vol. 32, no. 6, pp.
870-879, June 1997.
[6] A. Hajimiri, S. Limotyrakis, and T.H. Lee, “Jitter and phase noise in ring oscillators,”
IEEE J. Solid-State Circuits, vol. 34, no. 6, pp. 790-804, June 1999.
[7] Jitter Analysis Techniques for High Data Rates, Application Note 1432, Agilent
Technologies, Feb. 2003.
[8] Characterization of Clocks and Oscillators, NIST Technical Note 1337, National
Institute of Standards and Technology.