<< Chapter < Page Chapter >> Page >
avg { x 2 [ k ] } = ( 1 / 4 ) [ ( 1 ) 2 + ( 1 - ( 2 | τ | / T ) ) 2 + ( - 1 + ( 2 | τ | / T ) ) 2 + ( - 1 ) 2 ] = ( 1 / 4 ) [ 2 + 2 ( 1 - ( 2 | τ | / T ) ) 2 ] = 1 - ( 2 | τ | / T ) + ( 2 | τ | 2 / T 2 ) ,

assuming that the four symbol pairs are equally likely. The average of x 2 [ k ] is plotted in [link] as a function of τ . Over - T / 2 < τ < T / 2 , this average is maximized with τ = 0 . Thus, the problem of timing recoverycan also be viewed as a one-dimensional search for the τ that maximizes avg { x 2 [ k ] } .

Average squared output as a function of timing offset τ.
Average squared output as a function of timing offset τ .

Thus, at least in the simple case of binary transmission with h ( t ) a triangular pulse, the optimal timing offset (for the plots in [link] and [link] , at τ = n T for integer n ) can be obtained either by minimizing the cluster variance or by maximizing the output power.In more general situations, the two measures may not be optimized at the same point. Which approach is best when:

  • There is channel noise?
  • The source alphabet is multilevel?
  • More common pulse shapes are used?
  • There is intersymbol interference?

The next two sections show how to design adaptive elements that carry out these minimizations and maximizations.The error surfaces corresponding to the performance functions will be used to gain insight into the behavior of themethods even in nonideal situations.

Decision-directed timing recovery

If the combination of the pulse shape, channel, and matched filterhas the Nyquist property, then the value of the waveform is exactly equal to the value of the data at the correctsampling times. Thus, there is an obvious choice for the performance function: find the sampling instants at which the difference betweenthe received value and the transmitted values are smallest. This is called the source recovery error and can be used when the transmitted data are known—for instance,when there is a training sequence. But if the data are unavailable (which is the normal situation), then the source recovery error cannotbe measured and hence cannot form the basis of a timing recovery algorithm.

The previous section suggested that a possible substitute is to use the cluster variance avg { ( Q ( x [ k ] ) - x [ k ] ) 2 } . Remember that the samples x [ k ] = x ( k T M + τ ) are functions of τ because τ specifies when the samples are taken, as is evident from [link] . Thus, the goal of the optimization is to find τ so as to minimize

J C V ( τ ) = avg { ( Q ( x [ k ] ) - x [ k ] ) 2 } .

Solving for τ directly is nontrivial, but J C V ( τ ) can be used as the basis for an adaptive element

τ [ k + 1 ] = τ [ k ] - μ ¯ d J C V ( τ ) d τ τ = τ [ k ] .

Using an approximation, which swaps the order of the derivative and the average, yields

d J C V ( τ ) d τ avg d Q ( x [ k ] ) - x [ k ] 2 d τ = - 2 avg Q ( x [ k ] ) - x [ k ] d x [ k ] d τ .

The derivative of x [ k ] can be approximated numerically. One way of doing this is to use

d x [ k ] d τ = d x ( k T M + τ ) d τ x ( k T M + τ + δ ) - x ( k T M + τ - δ ) 2 δ ,

which is valid for small δ . Substituting [link] and [link] into [link] and evaluating at τ = τ [ k ] gives the algorithm

τ [ k + 1 ] = τ [ k ] + μ avg { ( Q ( x [ k ] ) - x [ k ] ) · x k T M + τ [ k ] + δ - x k T M + τ [ k ] - δ } ,

where the stepsize μ = μ ¯ δ . As usual, this algorithm acts as a lowpass filter tosmooth or average the estimates of τ , and it is common to remove the explicit outer averaging operation from the update,which leads to

τ [ k + 1 ] = τ [ k ] + μ ( Q ( x [ k ] ) - x [ k ] ) · x k T M + τ [ k ] + δ - x k T M + τ [ k ] - δ .

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Software receiver design. OpenStax CNX. Aug 13, 2013 Download for free at http://cnx.org/content/col11510/1.3
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Software receiver design' conversation and receive update notifications?

Ask