Re: PLL convergence problem
- From: Tim Wescott <tim@xxxxxxxxxxxxxxxx>
- Date: Sun, 16 Oct 2005 10:35:54 -0700
yoni.baron@xxxxxxxxx wrote:
It sounds like your phase detector has a lot of noise that's throwing your loop out of whack. When you used your 10000 averages to find the detector characteristic did you look at how much random noise comes out? By running the signal through the low-pass filter you'd be cleaning up such noise.I have a "phase detector" for timing synchronization based on 4th order non-linearity. I use a very narrow loop-filter - 400Hz when the sampling rate is 10MHz. The S-Curve for the detector shows nice curve (I use ~10000 averages for every point in the S-Curve). When I use the detector as is, the loop fails to converge.
To cause the loop to converge I'm using a simple leaky integrator with the following structure y[n] = 0.9*y[n-1] + 0.1*x[n], to filter the detector output before entering it into the loop filter.
I don't understand why the leaky integrator causes the loop to converge. Basically, the leaky integrator turns the close loop filter from second order to third order, but If I plot the frequency response of the second and third order filter I see no much deference.
I also don't know how to investigate what is happening. I tried to use the linear equivalent closed loop filter in matlab, but because the filter is sow narrow, it's impulse response is not stable because the poles of the filter are very close to the unit circle.
Thanks, Yoni.
What are you using for a loop filter? Is it a PID or just a PI filter? Even if it's just a PI filter knocking the instantaneous noise down by a factor of 10 must be doing something for you. Your gains must be very low indeed -- are you hitting a nonlinearity in your NCO or in your loop filter that's causing problems? Overflow, perhaps?
If you're really closing the loop at 400Hz then you should be able to filter this much more heavily. If you've already solved your problem then there's no need, of course, but if you've only partially solved it you should be able to bring your low-pass filter pole down to 4kHz fairly safely -- i.e. y[n] = y[n-1] + 0.0025(x[n] - y[n-1]). Note that with the pole value so low you may have underflow problems where you didn't before.
--
Tim Wescott Wescott Design Services http://www.wescottdesign.com .
- Follow-Ups:
- Re: PLL convergence problem
- From: yoni.baron@xxxxxxxxx
- Re: PLL convergence problem
- References:
- PLL convergence problem
- From: yoni.baron@xxxxxxxxx
- PLL convergence problem
- Prev by Date: LCD sub-pixels
- Next by Date: Re: PLL convergence problem
- Previous by thread: Re: PLL convergence problem
- Next by thread: Re: PLL convergence problem
- Index(es):
Relevant Pages
|
Loading