ChipCenter Questlink
SEARCH CHIPCENTER
Search Type:
Search for:




Knowledge Centers
Product Reviews
Data Sheets
Guides & Experts
News
International
Ask Us
Circuit Cellar Online
App Notes
NetSeminars
Careers
Resources
FAQ
EE Times Network
Electronics Group Sites


DSP Main | Archives | Feedback

Oscillator feedback removes jitter from noisy timing signals

by Mark Sullivan

Some DSP applications require synchronization to a timing signal. For instance, modems must align input data symbols with matched correlators and thus require some means of recovering the symbol clock from the input data. In other applications you might want to work with an external clock. Such a case could be analyzing machine noise, where you perform synchronous averaging starting from a known rotor position and in which you've placed a sensor to provide timing pulses.

Often, though, raw timing data is corrupted by measurement noise; the edges of the timing signal jitters, and you can't use it directly. Instead, you must somehow "filter" the data to reduce measurement errors and regenerate the original timing signal. This column shows how to apply DSP techniques to the synchronization problem.

In this situation noise removal takes on a new meaning. Ordinarily, the input sequence in most DSP applications represents a series of voltage measurements taken at periodic intervals. Noise is usually additive, and you can remove it with conventional digital filters. When working with timing signals, however, the input sequence represents a series of time measurements taken when the system detects some event such as a data symbol or rotor alignment. These measurements might be contaminated by noise, but not in quite the same way as with a conventional voltage-vs-time signal. Instead the noise skews the transition of the timing signal from what you'd expect on an exactly periodic signal.

One approach to removing this noise is to implement a digital oscillator that mimics the original signal's characteristics; with the help of feedback that represents the error between the noisy signal and the oscillator output, you can keep the oscillator reasonably true to the original. This system averages errors over time and eventually locks onto the subject signal's periodicity and phase. It essentially performs analogous to a lowpass filter acting on the timing noise.


Fig 1 -- When you know a system's nominal clock period ΔT, this simple digital oscillator operates as a phase-locked loop to generate a clean clock sequence.

The simple digital oscillator in Fig 1 works well in situations where you accurately know the original signal's nominal clock period ΔT. This oscillator generates a "clean" clock sequence from a noisy measured sequence Tk. The oscillator computes timing estimates recursively according to

where μ is a convergence factor. If the estimated time lags the measured time Tk, then the system retards the oscillator timing by a small amount ; if the estimated time leads the measured time, it advances oscillator timing by the amount . This scheme represents a simple example of using feedback to turn a digital oscillator into a digital phase-locked loop.

Of great importance is the convergence parameter μ, which determines how quickly the system converges on the signal's phase. Setting its value to a high level allows the system to converge quickly, but the tradeoff is a higher level of RMS noise (considerable jitter remains in the oscillator output). You can reduce the amount of oscillator noise, but the system converges more slowly. In the comparison to the familiar frequency-domain filter, this effect is analogous to the tradeoff between filter width and transient response time.

To evaluate the effects of different choices for μ, let's develop a statistical model for this system. It assumes that we know exactly the clock period ΔΤ. Start by modeling the noisy measured timing sequence, for which you can use the equation Tk = kΔT + uk where uk is a random sequence of measurement errors with a mean of zero. The difference between the time sequence arising from the digital oscillator, and the desired noiseless time sequence kΔT is the error sequence

Now you'd like to determine the oscillator's behavior over time for different values of μ; here we'll measure both mean error as well as mean-squared error to find variations about the mean. To do so, first rewrite the oscillator recursion in terms of the error by subtracting (k+1)ΔT from both sides:

which yields the desired result (remember that ):

The first equation represents the system's dynamics, which we use to find recursions that describe the system's statistical performance. Further, the form of the last equation should look familiar -- it's the equation for a first-order recursive filter with input uk and output ek.

To simplify this example, let's assume that the input sequence uk has a mean of zero at each time index k, which implies there's no bias in the measurement. In that case you can recursively find the mean of ek as If you further assume that the input uk is independent of the error ek and that the variance of uk is for all k, then it's also possible to find the mean-squared valued of the error recursively with

Finally, as long as , this sequence converges to a steady-state value given by

Fig 2 -- Both a statistical prediction (solid line) and a computer simulation (dashed line) for the mean error (top graph) and RMS error (bottom graph) show that the scheme in Fig 1 converges rapidly towards a steady-state value of low error. In this case, the convergence factor μ equals 0.375, while ΔT = 10 and the initial phase was set to the worst-case error of -5.

The pair of recursions just given can predict the digital oscillator's statistical performance. First consider a plot of the error output from the oscillator. Fig 2 shows the mean error and mean-squared error as a function of time for 200 trials of the recursion formula (solid line) and from a computer simulation (dotted line). This example uses ΔT = 10, μ = 0.375 and uniform timing errors between ±5. The author initialized the oscillator's phase to the worst-case error of -ΔT/2 = -5. The simulation results appear to agree well with model predictions. The match between theory and actual performance degrades according to how well the assumptions of the model apply to the real situation, but the simple model is usually a good place to begin an investigation.


Fig 3 -- Smaller values of μ achieve lower values of RMS error, but the price is slower convergence.

The recursion equations also let you evaluate the effect of various levels of μ, which as stated earlier controls the tradeoff between convergence rate and steady-state error. The model just developed can quantify this relationship (Fig 3). The righthand vertical axis goes with the dashed line and gives the steady-state RMS error after being normalized by the RMS jitter of the input time reference. The lefthand vertical axis goes with the solid line, which shows convergence time measured in number of events (each event equals one period of what you're trying to measure, whether a bit in a datastream or a shaft rotation). We evaluate this parameter with the expression ln(1/2) / ln (1 - μ), and it equals the number of iterations required to reduce mean error by a factor of two.

While this simple digital synchronizer works well, you can improve it in several ways. One possibility is to use a higher value of μ during initial operation to provide faster convergence and then switch to a lower value to reduce steady-state error. Another variation that provides more favorable tradeoffs between convergence and steady-state error is to process the feedback signal with a digital filter instead of using a fixed gain μ. This modification is particularly important for applications where the input frequency is uncertain or where the system must track it. Finally, you can combine any of these variations to customize a synchronizer for a particular application (reference).

Reference

Lindsey, WC and Chie, CM "A survey of digital phase-locked loops," Proc of the IEEE, April 1981, pgs 410-431.

Mark Sullivan (dalek@radix.net) is Chief Scientist at SkyBitz Inc (Herndon, VA), a developer of tracking and communications services based on the GLS (Global Locating Systems) technology it invented. Mark received a PhD in Information Technology from George Mason Univ.

This article originally appeared in Personal Engineering & Instrumentation News, June 1996, pgs 60-62. Reprinted with permission of PEC Inc; all rights reserved.
Click here to get your listing up.

Copyright © 2003 ChipCenter-QuestLink
About ChipCenter-Questlink  Contact Us  Privacy Statement   Advertising Information  FAQ