Courtesy of Application Bulletin AB-21 Jitter, Skew, and All That (Including Spread Spectrum)
–Ron Lenk, Principal Applications Engineer 9/17/98
The academic definitions of various parameters important for the evaluation of clock chips differ from the practical methods used for their measurement. The definitions of clock jitter and skew are explained, and the techniques used in their evaluation are examined. Their interaction with spread spectrum technology is also touched on.
Time and Frequency Measurements
Jitter and skew refer to time measurements; spread spectrum refers to operations in frequency domain. Although we learn in school that time and frequency domain measurements are complements of one another, the actual practice of measuring them differs from theory. The result is that how measurements are made can have a serious impact on the measurement results. For this reason, we start by considering measurement techniques in time and frequency domain.
Ideally, time domain measurements are repetitive, that is, looking at a waveform yields the same results at some given start time as it does at an arbitrary later time. All oscilloscopes implicitly assume this is true: a typical digital oscilloscope triggers on a particular signal, and then acquires data continuously for an amount of time set by its memory size and the number of samples / sec. For example, with 100kwords of memory, and sampling at a 500MSample/sec rate (= 2nsec), the maximum time that can be stored is 200msec. After this, there is some longish latency time, say a 10msec update rate, before it can re-trigger and collect the next 200msec worth of data. If something in the waveform changes during this 10msec, the oscilloscope misses it; in the worst case, if the “something” in the waveform had the right frequency and phase, the oscilloscope might never capture it. This is a form of aliasing, and analog oscilloscopes have this same problem. The only solution is to have enough memory that the lowest frequency in the waveform can be captured.
EXAMPLE: With the RC7100 modulation at 3KHz, and a 100MHz clock, more than 30000 consecutive waveform periods need to be captured to correctly assess the jitter. With a 10nsec period, to measure jitter to a resolution of 25psec requires 10nsec / 25psec = 400 samples per period, or 30000 * 400 = 12MSamples total, far more than the oscilloscope has memory for.
In frequency domain similar problems can arise. The trouble comes about because of the way spectral information is obtained by a spectrum analyzer. A typical spectrum analyzer (our lab uses the HP8561E) has a certain number of bins, that is, a certain number of measurements are made each sweep (The HP has 601 bins). Independent of the RBW (resolution bandwidth) or VBW (video bandwidth), if the sweep time is fast, the amount of time spent in each bin will be correspondingly short. Analogously with the case shown in Figure 1 with an oscilloscope, if the time spent is too short, and the signal is modulated at a low frequency, there will be inadequate averaging over the modulation, resulting in misleading measurement of the signal’s spectrum. As an example, suppose the sweep time is 100msec; this gives 100msec / 601 » 160msec per bin. If the jitter signal is modulated at ~3kHz (as with the RC7100), then the 160msec spent at a given frequency doesn’t sample even one complete cycle of the modulation, and so the measurement will be aliased. Again, the solution is to have an analyzer with enough bins, and to sweep sufficiently slowly to average over a number of cycles of the lowest frequency modulation. Naturally, this means the characteristics of the modulation must be known before the measurement is taken.
There are several different types of jitter. The most important for measurements of the clock chips, as defined by Intel specs, is the cycle-to-cycle jitter.
For a signal with idealized square edges, as shown in Figure 2, the jitter is how much variation there is in the period—however, variation from what must be carefully defined. Ideally, we would like it to be the variation from the average period, which would mean an infinite number of samples. In practice, of course, there is only a finite number of samples possible, which introduces the same sort of aliasing problems as with the oscilloscope measurements before: If the averaging period is taken over too short a period, that is, over a period less than the period of the lowest modulation frequency of the signal, then the average will be incorrectly biased, and this will affect the measured jitter. Once again, the oscilloscope must have adequate memory to sample enough cycles to obtain the real average, while maintaining enough temporal resolution to accurately measure the period of each cycle.
EXAMPLE: The RC7100, as already stated, has a modulation period of ~300msec; if the period needs to be measured with an accuracy of (say) 30psec to ensure that maximum jitter of 250psec is being met, the oscilloscope requires a minimum memory of 300msec / 30psec = 10MWords of memory!
The second part of Figure 2 shows that the real waveforms generated by clock chips are not quasi-square wave, but rather approximately sinusoidal waves. For this waveform, we can define the period as being from rising edge to rising edge, measured at the time when the waveform crosses ½ the supply amplitude; for a 2.5V supply, this is the time when it crosses 1.25V.
Whereas jitter refers to the performance of a single signal, skew is a measure of how closely matched two signals are.
It is measured from rising edge to rising edge (again, power supply midpoint for real sinusoidal waveforms). Under the presumption that the two signals are generated by the same time bas e (as is the case, for example, with the multiple CPU outputs of the RC7100) the two signals are time locked so that their jitter is the same, and so the skew will be the same regardless of which cycle is measured.
If the two signals are generated independently, skew is of course not defined; but if they both derive from the same reference frequency, as for example the CPU and 48MHz output of the RC7100 are both derived from the a single crystal, they are still locked together. In this case they will have different jitter, and thus the measured skew will also vary cycle to cycle. For this case again, a sufficiently long measurement must be taken to encompass at least one complete cycle of the modulation in order to be certain to have measured the maximum skew.
Spread spectrum in the most general sense is any technique that spreads spectral energy over a band of frequencies in order to reduce the peak amplitude of any given frequency. Since a band of differing frequencies is used, and since period is the inverse of frequency, clearly this technique affects jitter in some way.
Exactly what way jitter is affected depends on knowing more about the spectrum’s characteristics. Suppose for example that the (spread) spectrum consists of two discrete lines. This implies that at certain discrete times ti, the frequency jumps from frequency f1 to frequency f2. Since this jump occurs instantaneously (there are no intermediate frequencies) this is equivalent to an added cycle-to-cycle jitter of 1/f2 – 1/f1 occurring at the discrete times ti; as usual, if the oscilloscope doesn’t have a wide enough memory, it may miss these transition points and underestimate the jitter.
Suppose instead that the change from f1 to f2 occurs over a certain time t. The spectrum will look more like that shown in Figure 4, with the energy spread approximately continuously throughout the band between f1 and f2 (assuming that the spectrum analyzer integrates each bin for a time longer than t). This sweep may have negligible effect on the cycle-to-cycle jitter, if the sweep rate is slow enough.
EXAMPLE: Fairchild’s RC7104 has a nominal CPU clock frequency of 100MHz; with spread spectrum on, the frequency varies +0.25%, from 99.75MHz to 100.25MHz. The frequency is swept at approximately 3KHz, so that the time it takes to go Df = 100.25MHz – 99.75MHz = 500KHz is 1/(3KHz * 2) = 165msec. At 100MHz, the period is 10nsec; in this time, the frequency varies 500KHz * 10nsec / 165msec = 30Hz. The cycle-to-cycle jitter is thus (1/100MHz) – (1/100,000,030Hz) = 3fsec (sic).
However, the jitter is still affected, you just have to wait long enough to see it; this is called period jitter.
EXAMPLE: At 100.25MHz, the period is 1/100.25MHz = 9.975nsec; at 99.75MHz, the period is 1/99.75MHz = 10.025nsec. Spread spectrum has thus introduced an additional 10.025nsec – 9.975nsec = 50psec, or rather +25psec, of period jitter.
The specifications on maximum jitter must be met even when including this extra source of jitter. The reason, as Intel suggests, is that the clock signals are used by clock recovery devices on the receiving ends, which are basically phase lock loops. The PLLs have limited tracking rates, and some may be able to follow the period jitter while others may not. The jitter would introduce timing errors between such devices. For this reason, we must repeat: the jitter must be measured slowly enough to include the modulation.
Accurate measurement of the spread spectrum spectral characteristics requires attention to sweep time, as noted above for the general comments on spectral measurements. It is to be noted that, as above, skew measurements can also be affected by spread spectrum, if one of the two outputs being compared is spread and the other is not; the skew will have its amplitude modulated at the modulation frequency.
Thanks to Zaw Soe and Ewunnet Gebre-Selassie for helpful conversations.