Thread: Gardner TED
View Single Post
  #5 (permalink)  
Old 04-02-2004, 08:04 PM
Kevin Neilson
Guest
 
Posts: n/a
Default Re: Gardner TED


"rider" <[email protected]> wrote in message
news:[email protected] om...
> "Kevin Neilson" <[email protected]> wrote in message

news:<8oOac.52137$K91.127528@attbi_s02>...
> > "rider" <[email protected]> wrote in message
> > news:[email protected] om...
> > > Hi!
> > >
> > > I have a query regarding the computation of Gardner Timing Error
> > > detector (TED). Dr. Gardner on his article "A BPSK/QPSK Timing Error
> > > Detector for Sampled Receivers" states that Timing Error (for BPSK)
> > > can be computed as:
> > >
> > > U(r) = x(r-1/2)[x(r)-x(r-1)]
> > >
> > > He calls the samples x(r) as "STROBE" values and those like x(r-1/2)
> > > as "MIDWAY"
> > > between strobes [like x(r-1/2) is midway between x(r) and x(r-1)].
> > >
> > > Its also mentioned that this algorithm uses only 2 samples/symbol to
> > > compute the error. I need to ask that:
> > >
> > > 1)What he means by these STROBE and MIDWAY values ,x(r) and x(r-1/2) ,
> > > and how to compute them from the available 2 samples/symbol?
> > >
> > > 2) For the complete timing recovery loop, there is also an
> > > interpolator. If the interpolator is fed with 2 samples/symbol, then
> > > what is it computing? is it computing the midway value x(r-1/2) or
> > > what?
> > >
> > > Regards
> > > Rider

> >
> > You are sampling two samples per symbol, so if the loop is locked and

you
> > are sampling at the symbol instants and midway between the samples, then
> > x(r-1), x(r-1/2), and x(r) will be three successive samples. These

three
> > would comprise two strobes and one midway or one strobe and two midway
> > samples.
> >
> > The TED can be used to adjust a PLL that controls the sample clock.

Then no
> > interpolation is required; the sample clock is just adjusted so that the

ADC
> > samples at the correct points. That's mostly an older method. The

other
> > type of loop uses an ADC that samples at a constant rate, and then a
> > resampling filter controlled by the loop interpolates the value at the
> > sampling instant, which will be between the ADC samples. Before the

loop is
> > locked, the interpolator will not be sampling at the symbol instants,

but
> > the error value will be large and will push the loop until the

interpolated
> > values occur at the symbol instants and the midway points.
> > -Kevin

>
>
> Thanks Kevin!
>
> Yes i m trying to follow the new method in which the sampling clock of
> the receiver is fixed at Fs and an all-digital interpolation/TED loop
> is use to recover timing. Like in the fig below:
>
>
> (~) Fixed Clk --/--Fs= Nfb (fb=symbol clock , Fs=sampling clock)
>
> Fs=1/Ts|-------------| Fi=1/Ti |---|
> x(mTs)----|Interpolator |--------->|TED|
> ----^-------- ---
> | |
> |-------| |---------|
> |Control|<-------------|Loop Fil |
> --------- -----------
>
>
> However, i still cant understand a point . When the Gardner algorithm
> says it uses 2 samples/symbol, then does it mean that Fs in the above
> figure SHOULD exactly be 2fb? In my work, i have chosen fb=1khz and
> Fs=8khz. Do i have to decimate this 8khz signal to 2 Khz before
> applying it to the interpolator or i can feed this 8Khz signal
> directly?
>
> Thanks


For the Gardner algorithm I don't think the extra samples help at all. There
are other algorithms that use more samples per symbol but I think you can
throw out three of every four in your case.

Then you would be left with a sample rate of about 2kHz and the control
block would continuously adjust the phase so that the sampling instants are
at the strobes and midpoints. The rate at which this phase "rolls" would be
the difference in frequencies between the symbol rate and 1KHz (half the
sample rate). This phase is often called mu in the texts. If the symbol
rate is exactly 1kHz, for example, mu will remain constant. The error value
would only be calculated every other sample.

I think you may still operate the loop with an 8kHz sample rate and no
decimation. But in that case, mu would have to have a large derivative and
you would have to design the tracking loop especially for this mode of
operation. Normally you want to design the loop so the derivative of mu is
small. So it's probably best to get the effective sample rate as close to
2X the symbol rate as possible. If it's helpful, you can still use a
lowpass-filter-based decimator instead of just throwing out samples; this
increases precision. Decimation by 4 can give you two extra bits of
precision, I think.

In case you're not clear on the interpolator: it is fed with the 2kHz
sample rate, and then it interpolates new samples that are ahead by a phase
determined by mu. The Farrow filter is often used for this.
-Kevin


Reply With Quote