"Kevin Neilson" <
[email protected]> wrote in message news:<EOibc.161285$_w.1784112@attbi_s53>...
> "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
Kevin!
Thanks for the reply again. For sometimes i have been confused by the
term Interpolator itself. Interpolator (opposite of decimator) is
normally used to mention an upsampling of the signal sample rate (zero
insertion and then an anti-imaging filter). But here in case of timing
recovery, they sometimes mention that Ti > Ts (means fi<fs , with
reference to fig above), so it means the "interpolator" is actually
decimating? So we may ask:
1) Is Ti always > Ts?
2) Whatever filter structure we may employ for interpolator (like
farrow) , wouldn't it be running at a fix clock (like in hardware, the
clock signal driving the output register of interpolator would be
fix?) . So how does it adjust the phase, if it is outputting samples
after a fixed time?
Regards
Rider