METHOD AND APPARATUS FOR TIMING RECOVERY
FIELD OF THE INVENTION This invention relates to high speed, digital data transmission systems, and in particular, to timing recovery in transceiver circuits.
BACKGROUND OF THE INVENTION Communication over a digital subscriber line or other
communications loop requires very low error or even error free
transmission of coded binary data, e.g., a bit error rate (BER) equal to or less than 10-7 is required for use in the integrated services digital network (ISDN) basic access interface for subscriber loops. Such low BERs are difficult to obtain given unknown delays, attenuation,
dispersion, noise, and intersymbol interference (ISI) introduced by and/or on the communications channel.
An essential part of very low error transmission of coded binary data is symbol synchronization at the digital data receiver. In general, the receiver clock of a receiving transceiver interface must be
continuously adjusted to track and compensate for frequency drift between the oscillators used in the transmitter located at opposite end of the communications loop and the receiver clock circuits as well as to track and compensate for changes in the transmission media. Digital receivers rely on digital processing to recover the transmitted digital information. In other words, the received signal is sampled at discrete time intervals and converted to its digital representation. As a result, a timing recovery function is required to synchronize the receiver clock so that received symbols can be sampled at an appropriate sampling
instance, (e.g., an optimum sampling instance would be at the peak of the sampled pulse for Pulse Amplitude Modulated (PAM) codes). This task is further complicated because the received pulses are distorted. Once source of disturbance is the coupling of transmitted pulses from the transmitting portion of the transceiver directly across a hybrid circuit which are detected at the receiver input as echoes. Such transmit pulse echoes are typically removed by an echo canceler (e.g., a transversal filter which models the transmit signal and subtracts it from the received signal). But even after the echo canceler removes the echoes of transmitted pulses, the received pulses are still distorted as a result of the transmission path characteristics and intersymbol
interference as mentioned above. The result is that relatively square, narrow pulses transmitted from the far end transceiver are "smeared," (i.e., widened and distorted) by the time they are received at the near end transceiver.
To detect the value of the received pulses, the receiver performs a number of functions in addition to echo cancellation. For example, the receiver tries to cancel intersymbol interference (ISI) caused by symbol pulses received before the current symbol pulse of interest. Such ISI is caused by the delay and pulse shaping characteristics of the
transmission path such that when symbols are transmitted, the "tail" of one symbol pulse extends into the time period of the next transmitted symbol pulse, making it difficult to determine the correct amplitude of the pulse actually transmitted during that symbol period. High speed digital communication systems may employ decision feedback equalizers (DFE) to suppress ISI.
After performing various corrective/compensating functions, some of which were briefly described above, the receiver then decides (1) where in time and (2) at what amplitude to quantize or "slice" the received signals to covert them back to desired pulse or symbol values. In order to perform these slicing functions, the receiver must determine the timing instant to sample the signal as well as determine the signal level at that sampling instant. Since digital signal processing circuity cost and complexity typically increase with sampling rate, it is desirable and typical to sample the incoming signal at the lowest possible rate, i.e., the baud rate. Accordingly, the timing phase is crucial in minimizing errors due to noise and intersymbol interference. The timing recovery is further complicated if a "baud rate" timing recovery algorithm is
employed where received symbol pulses are sampled only once per symbol or baud.
Such a sampling rate timing recovery algorithm was proposed by Mueller and Muller in "Timing Recovery in Digital Synchronous Data Receivers," IEEE Trans. Comm., Vol. COM-24, No. 5, pp-. 515-531, May 1976. The Mueller and Muller timing recovery algorithm selects a
"timing function" which is zero at the optimum sampling phase. The objective is to find the phase that makes this timing function equal to zero. Detecting when the function is zero is accomplished by detecting when the function's amplitude crosses zero, i.e., a zero crossing. This objective is only theoretical, however, because such a timing function cannot be computed exactly and has to be estimated from the received signal samples. The sampling phase is then adjusted until the estimate is equal to zero. In practice, derivation/estimation of the timing function is quite difficult. For example, previously proposed timing function estimates are expressed as an equivalent system of equations.
Many such equations do not have a unique solution and become intractable when the number of equations exceeds 3. Another and perhaps more serious problem is that the Mueller et al timing function estimates may not converge to a single zero crossing for many transmission paths and instead exhibit multiple zero crossings. Thus, false timing instants may be easily selected which may adversely influence the timing recovery process. The problem of stably recovering timing information from an incoming digital signal sample at the baud rate therefore remains.
SUMMARY OF THE INVENTION
It is an object of the present invention to provide a stable timing recovery algorithm that permits accurate sampling of incoming digital signals at the symbol baud rate.
A further object of the present invention is to achieve clock synchronization between transmitted and receiver clocks as well as to track and adjust phase drift between those clocks using an efficient timing recovery algorithm that can be implemented in very large scale integrated (VLSI) circuitry at low cost.
It is a further object of the present invention to provide a timing recovery algorithm which selects the timing phase based on the characteristics of the communications channel to minimize bit error rate to a very low value.
A still further object of the present invention is to provide a timing recovery algorithm that cohesively interacts with other receiver parameters such as the decision feedback equalizer.
To this end, a timing recovery function is disclosed for determining a desired timing phase by minimizing a mean squared error due to uncancelled precursor intersymbol interference. In general, the error is calculated as a difference between the equalized signal and the corresponding detected symbol. The optimum or near optimum timing phase for sampling is achieved when the mean squared error
approaches its minimum.
A timing recovery method in a digital communications system is disclosed for recovering a timing phase of. a sampling clock signal in a receiver. A received signal is sampled at controlled timing instants to convert the received signal into a digital signal. A timing recovery function is generated using a correlation between two signals that produces an unambiguous zero crossing. With such an unambiguous zero crossing, e.g., only one zero crossing, a desired and reliably accurate sampling timing instant is determined.
The received signal is processed to compensate for various distortions, and a value of the received signal from the processed signal is detected in a signal detector. Then, an error between the input to the detector and the detector output is calculated. The timing recovery function is defined as the correlation between the error and some other signal. That other signal is selected so that the correlation provides the unambiguous zero crossing. Typically, the other signal is a signal obtained or otherwise derived from the received signal. The correlation is zero at the optimal or near optimal sampling timing instant. In one implementation, the "sign" of the correlation result, i.e., a positive or negative correlation result, determines whether the phase of the timing needs to be advanced or retarded.
The present invention also describes a data communications transceiver in a digital communications system for implementing the timing recovery technique includes a transmitter for transmitting digital information encoded as one of plural symbols over a communications channel and a receiver. The receiver includes an analog to digital converter for sampling a received signal at controllable, predetermined timing instants. A detector compares each signal sample to a threshold arrd generates a corresponding symbol based on the comparison. A timing recovery controller evaluates the correlation between the error and a signal obtained from the received signal that provides a single zero crossing at an optimal or near optimal timing instant. In one embodiment, the phase of the receiver clocking signal is adjusted so that the sum of the squares of the precursor error values is effectively minimized.
The receiver includes a symbol detector that detects a value of the received signal at a predetermined timing instant. An error is calculated between the received signal input to the detector and the detected value output by the detector. The timing recovery controller then correlates that error with some combination of the received signal thereby generating a signal that approximates the sum of squares of the precursor values.
By providing a timing recovery correlation function that produces an unambiguous zero crossing, the present invention produces a reference point that can be readily detected. The timing recovery clock is advanced, retarded, or maintained based on the correlation product sign, e.g., a positive correlation instructs retarding the clock, a negative correlation instructs advancing the clock, and a correlation magnitude value (positive or negative) below a threshold value instructs maintaining
the current clock phase. That reference point gives an optimal or near optimal sampling instant for sampling the pulse.
A better understanding of the features and advantages of the present invention will be obtained by reference to the following detailed description of the invention and the accompanying drawings which set forth an illustrative embodiment in which the principles of the invention are utilized.
BRIEF DESCRIPTION OF THE DRAWINGS
FIGURE 1 is a function block diagram of an example of a digital ISDN communications system in which the present invention may be applied;
FIGURE 2 is a function block diagram of a U-type transceiver that may be used in an ISDN; FIGURE 3 is a graph of a typical symbol pulse when initially generated by a transmitter;
FIGURE 4 is a graph of a typical received pulse after transformer and receive filtering;
FIGURE 5 is a graph of a typical received pulse after filtering in a feedforward precursor filter in a receiver;
FIGURE 6 is a graph of a theoretically computed autocorrelation function εk (solid line) and its derivative (dotted line);
FIGURE 7 is another block diagram of the U-type transceiver of Fig. 2 with additional details of the signals used in an example
embodiment of the timing recovery technique in accordance with the present invention;
FIGURE 8 is a comparative graph evaluating an example of a timing function in accordance with the present invention;
FIGURE 9 is a block diagram showing in more detail the timing recovery unit shown in Figure 7; and
FIGURES 10-13 are diagrams showing example signal shaping approaches for providing various suitable correlation signals used in various example embodiments of the present invention.
DETAILED DESCRIPTION OF THE DRAWINGS
In the following description, for purposes of explanation and not limitation, specific details are set forth, such as particular interfaces, circuits, techniques, etc. in order to provide a thorough understanding of the present invention. However, it will be apparent to one skilled in the art that the present invention may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known methods, devices, and circuits are omitted so as not to obscure the description of the present invention with
unnecessary detail.
Figure 1 shows an overall block diagram of one data
communications environment, i.e., the integrated services digital network
(ISDN) 10, to which the present invention may be applied. A building 12 may, for example, include telephone subscribers (16 and 18) and data subscribers (personal computer 14) linked over a local area network to a U-transceiver 20 (via an S-transceiver not shown). The U-transceiver 20 is connected by a 2-wire "subscriber loop" transmission line 22 to another U-transceiver 26 at telephone switching and services network 24 which provides digital switching and other messaging/call processing services. One important function of the U-transceivers 20 and 26 is the accurate and stable recovery of timing information from an incoming digital signal sampled at the baud rate so that symbol synchronization is achieved between the two transceivers.
For purposes of illustration and description only, the present invention is described hereafter in the context of such an ISDN network that uses U-transceivers and 2B1Q line codes. In the ISDN, the
2-binary, 1-quaternary (2B1Q) line code is used which employs a four level, pulse amplitude modulation (PAM), non-redundant code. Each pair of binary bits of information to be transmitted is converted to a quaternary symbol (-3, -1, +1 and +3). For example, "00" is coded to a -3, "01" is coded to a -1, "10" is coded to a +3, and "11" is coded to a
+1. However, as will be appreciated by those skilled in the art, the present invention may be applied to other types of data communication networks and other types of line codes/symbols. Reference is now made to Figure 2 which illustrates a U-interface transceiver 30 comprising a transmitter and receiver. Again, although the present application is being described in conjunction with a
U-interface transceiver for use in conjunction with an ISDN digital communications network, the present invention of course could be applied to other high speed data environments such as high bit rate
digital subscriber lines (HDSL), etc. Binary data for transmission is applied to a scrambler 31 which encodes the data into pseudo-random bit stream formatted by a framer 32 into frames of 240 bits or 120
(2B1Q) symbols in accordance with ISDN specification T1D1. The framer inserts a 9-symbol signalling word used for frame synchronization in each frame of data so that 111 symbols are left for the scrambled data.
The framed and scrambled binary signal is applied to a 2B1Q encoder where it is converted into a parallel format by a serial-to-parallel converter which produces digits in the combinations of 00, 01, 10, and 11. Digit-to-symbol mapping in the encoder produces the four
corresponding symbol levels -1, +1, -3, and +3. Digital-to-analog converter (DAC) 38 converts the encoded signal to a voltage level suitable for application to the hybrid 44 which is connected to subscriber loop 45. The transmit filter 40 removes high frequencies from the digital pulses output by the digital-to-analog converter 38 to reduce cross-talk and electromagnetic interference that occur during transmission over the subscriber loop 45.
Incoming signals from the subscriber loop 45 are transformed in hybrid 44 and processed by the receiver which, at a general level, synchronizes its receiver clock with the transmitter clock (not shown) so that the received signal can be sampled at the symbol/baud transmission rate, i.e., the rate at which symbols were transmitted at the far end of the loop. More specifically, the receiver includes an anti-aliasing filter 46 which removes high frequencies. The filtered signal is converted into a digital format using analog-to-digital converter (ADC) 48. The sampling rate of the analog-to-digital converter 48, which is tied to the receiver clock, is adjusted using a control signal from timing recovery circuit 70.
For example, A-to-D converter 48 may sample at a sampling rate of 80 kHz even though it has a built-in higher frequency clock permitting phase adjustment in smaller intervals, e.g., a period of 15.36 MHz. The control signal from timing recovery circuit 70 adjusts the phase of the baud rate recovery clock by stepping the clock signal forward or backward.
The digitized samples are filtered by a receiver filter 50, the output of which is provided to summing block 52. Receiver filter 50 increases the signal-to-noise ratio of the received signal by suppressing the "tail" of the received signal. The other input to summer 52 is an output from echo canceler 36. As is described above, pulses transmitted onto subscriber loop 45 result in echo on the receiver side of the hybrid 44 due to impedance mismatch. Unfortunately, it is difficult to separate the echoes of these transmitted pulses (such as, for example, using a filter) from the pulses being received from subscriber loop 45. Accordingly, echo canceler 36 generates a replica of the transmitted pulse waveform and subtracts it at summer 52 from the received pulses. The echo canceler is adjusted based upon an error signal ε between the received symbol and the detected symbol output at summer 66. Such an adaptive echo canceler is typically realized as a traversal finite impulse response (FIR) filter whose impulse response is adapted to the impulse response of the echo path. The error ε is used to adjust the filter coefficients to "converge" the filter's response to the impulse response model of the communications channel.
The echo cancelled signal is processed by adaptive gain controller 54 to adjust the amplitude to levels specified for the symbols in the 2B1Q line code. In general, the gain applied to the input signal is adapted by comparison of the input signal to fixed amplitude thresholds and increasing or decreasing the gain as necessary to achieve the
amplitudes standardized for symbols -3, -1, +1, and +3. The output of the adaptive gain controller is provided to a feedforward filter 56 which in physical terms enhances high frequencies of pulses in the received signal which translates into an increase in the steepness or slope of the rising edge of the digital pulse. In functional terms, known digital communications systems refer to this feedforward filter 56 as a precursor filter because its purpose is to suppress the precursor portion of received pulses. In this regard, reference is made to the pulse waveforms shown in
Figures 3-5. Figure 3 shows a typical, isolated, transmitted pulse waveform before it is distorted over the transmission path. Figure 4 illustrates a typical, isolated, received pulse after filtering in receive filter 50 and echo cancellation in summer 52. The pulse amplitude is significantly attenuated compared with the transmitted pulse in Figure 3 and the overall pulse width is significantly increased. Figure 5 shows the pulse after filtering by the feed forward filter 56 with increased
steepness/slope of the rising edge of the received pulse. In Figure 4, the initial portion of the pulse before it starts to rise is flat at zero amplitude. The optimal time to sample the pulse amplitude and measure its value at or near its peak is one symbol period "T" after the pulse begins its steep rise from zero amplitude to its peak amplitude in order to avoid precursor interference. With the initial flat portion shown in Figure 4, it is difficult in practice to detect that initial point in time when the pulse starts to steeply rise and therefore detect the point from which one symbol period should be measured. Furthermore, for pulses with a slow rise rate, as in the case of long transmission loops, the pulse amplitude at the sampling instant defined as above, will be
much less than peak amplitude, resulting in deterioration of SNR due to other noise sources.
One advantageous by-product of the feedforward/precursor filter in this regard is that it introduces precursor zero crossings. In the example waveform shown in Figure 5, the pulse has two readily detectable zero crossings after precursor filtering approximately spaced by the sampling interval T. Zero crossing 82 in particular defines a subsequent sampling position 84 (the main cursor sampling position) one sampling period T after the zero crossing 82. As can be seen, the main cursor sampling point occurs slightly before the peak of the pulse waveform 86.
Nonetheless, the main cursor sample is sufficiently close to the pulse peak to provide an accurate pulse amplitude sample. For purposes of the present description, the term "main cursor" is the pulse height or amplitude at the sampling position 84. A "precursor" refers to pulse heights at sampling positions just before the main cursor sampling position 84. Thus, the second precursor corresponds to the pulse height at a second sampling position 80 before the main cursor sampling position 84. The first precursor corresponds to the pulse height at a first sampling position 82 immediately preceding the main cursor sampling position 84.
Ideally, the distance between the precursor zero crossings 80 and 82 as well as the distance between first precursor zero crossing 82 and main cursor sampling position 84 should be spaced by sampling interval T corresponding for example in baud rate sampling to the symbol transmission period. Achieving (even approximately) such cursor spacing permits sampling at points where precursor intersymbol
interference (ISI) caused by preceding and succeeding pulses is near zero.
To eliminate the effect of such precursor ISI, the sampling instants should be aligned with the zero crossings of the precursors (each of the sampling intervals is indicated by the asterisks intersecting the time axis). In practice, however, it is difficult to obtain such spacing for all transmission paths on the network using a single feedforward/precursor filter. Consequently, it is not possible to completely eliminate precursor ISI. However, a satisfactory result is achieved when this condition is at least approximated. As is described further below, the timing recovery algorithm in accordance with the present invention uses this residual precursor ISI to adjust the phase of the receiver sampling clock so that the main cursor is sampled at the point where the mean squared error or the approximate mean squared error due to the residual precursor ISI is minimized. This point corresponds to the optimal or near optional sampling time instant at or sufficiently near the pulse peak. While the present invention is described in terms of mean squared error due to residual precursor ISI, the present is not limited to residual precursor ISI. Other received signals or portions of received signals, e.g.. the post cursor ISI, may be used to calculate the timing function.
Referring again to Figure 2, a correction signal from a decision feedback equalizer (DFE) 68 is subtracted from the filtered sample at summer 58 to provide an equalized version of the pulse at symbol detector 60. As a result of the channel characteristics of the subscriber loop and signal processing, the "tail" of the single symbol pulse persists into a large number of symbol sample periods after the main cursor is sampled and therefore interferes with the subsequent symbols. This intersymbol interference caused by the tail of the symbol pulse is
removed by the decision feedback equalizer 68. The decision feedback equalizer is implemented as a digital transversal filter and is adapted much in the same manner as the echo canceler 36. The detector 60 converts the corrected pulses of the received signal to symbol logic levels. The timing recovery circuit 70 then must choose the correct sampling phase so that pulse values are detected. As mentioned above, a suitable sampling instant is determined by timing recovery circuit 70 at the instant where the mean square error due to precursor interference reaches its minimum corresponding to a lowest probability of error. Thereafter, the timing recovery unit 70 tracks the changes in the phase of the received signal to ensure synchronization with the transmitted signals. To that end, an error signal ε is generated at summer 66 based on the detector input Di and the detector output Do as follows:
εk = D(k)i - D(k)o (1)
In a simplified mathematical expression, the detector input D, can be approximated by the following equation:
D(k)i = h0ak + h-1ak+1 + h-2ak+2 (2) where k is the current sampling instant, a is the symbol amplitude value (which for a 2B1Q code corresponds to ±1 and ±3), h0 is the main cursor amplitude, h-1 is the first precursor amplitude, and h-2 is the second precursor amplitude all measured at time k. The output of the detector is of course a selected one of the ±1 and ±3 symbols. The first term h0*ak corresponds the main cursor of the signal to be detected and therefore is essentially Do. The last two terms correspond to the error generated by the ISI overlap caused the first and second precursors with
the future two symbol ak+1 and ak+2. Stated another way, the sum of these first and second precursor terms represents the degree to which the precursor crossings (at least for the first and second precursors used in our example) do not correspond with the sampling times Of course, the two precursor example is only that and the present invention may be implemented using any number of precursor terms.
The inventors of the present invention recognized therefore that the error terms in the above equation (1) provide information that can be advantageously employed to adjust the sampling time to the optimal or near optimal value. If the error generated by precursor ISI is driven to zero, h-1 and h-2 are sampled at zero crossings, which as described above sets up a suitable reference from the first precursor zero crossing for sampling the main cursor value h0 one period T after the first precursor zero crossing at an amplitude at or sufficiently near the pulse peak. If the first and second precursor values h-1 and h-2 are not zero or nearly zero, then the precursors are not being sampled at or near a zero crossing and the timing phase needs to be adjusted to move the error closer towards zero. If the first and second precursor values h-1 and h-2 cannot be zero simultaneously because they are not spaced exactly one sampling interval T, the sampling instance should be adjusted to move the error as close as possible to zero.
The timing recovery function of the present invention is different from conventional timing estimation functions such as proposed in the
Mueller et al article described above. Those timing functions typically depended upon both the precursor and main cursor and do not use an error signal as described above. Moreover, none of the Mueller et al based timing estimation techniques employ correlation properties to extract timing recovery information.
Based on the knowledge that the precursor values (i.e., h-1, h-2, etc.) are heavily influenced by the choice of sampling phase (i.e., when the sampling instants occur at or near zero crossings the precursor have zero or near values), the error term εk is correlated with some "other" selected signal labelled fk for convenience representative of the received signal to generate a mean or an approximate mean squared error value. The reason why the mean squared error is used rather than just the error εk is because, recalling from the block diagram in Fig. 2, the transmitted symbols are scrambled which means in equation (1) above, the symbol variables ak+1 and ak+2 are uncorrelated. As such, the error εk provides no useful information. However, useful timing information can at least in theory be derived from the square of the error as will be explained in conjunction with Figure 6. Figure 6 shows as a solid line the mean squared error (i.e., the autocorrelation of εk). Note that the solid line is plotted on the horizontal axis representing distance from the maximum or peak pulse value against relative amplitude on the vertical axis. The mean squared error achieves a minimum near the maximum or peak pulse value, and therefore, it may be used to detect the optimal or near optimal sampling instant of the received pulse.
Unfortunately, the mean squared error term keeps the same sign (i.e., it does not cross zero) irrespective of whether the signal is sampled before or after the optimum sampling instance. In other words, without a zero crossing from positive to negative or negative to positive, it is difficult to determine whether to advance or retard the receiver sampling clock phase. What is needed is a clear, easily detectable zero crossing at or about distance "0" shown in Fig. 6.
If the derivative of the mean squared error term is calculated (see the dashed line in Fig. 6), the zero crossing near distance "0" could be
used, but the derivative of the mean squared error function results in multiple zero crossings with all but one being "false" zero crossings. Consequently, in some circumstances, the timing recovery algorithm may become "locked" on a false sampling instance and may prevent the decision feedback equalizer from converging.
The present invention therefore correlates the error εk not just with itself alone but instead with some other signal derived or obtained from the received signal which includes the error term plus additional information about the signal, resulting in additional cross-correlation components. The additional cross-correlation components may be used to remove the false zero crossings from the correlation product. For purposes of this description, the "other signal" is defined as a signal which when correlated with the error εk produces an unambiguous zero crossing, e.g., a single zero crossing, at or near the optimal sampling instant. This other signal can be obtained from a signal containing uncancelled precursor or from some other suitable signal For simplicity of description and not limitation, the following other signal examples are obtained from the feedforward precursor filter and therefore are based on the uncancelled precursor.
A first embodiment of the invention is described where the other signal to be used in the correlation is labelled fk:
fk = uk + uk-1 (3) where uk is obtained from the feedforward filter 56 at the point shown in
Figs. 7 and uk-1 is a delayed version of uk as shown in Fig. 8. The timing recovery correlation function is then defined as:
Δθ = E(fk* εk) (4) where Δθ is the timing adjustment. Figure 9 plots as a solid line this correlation function using similar axes as used in Fig. 6.
Advantageously, the solid line has only one zero crossing at
approximately distance "0" from the maximum value of the signal. In other words, there are no false zero crossings. Thus, the other correlation signal fk should be -carefully selected and tested to insure that the timing correlation function produces in a single zero crossing.
Accordingly, the present invention generates a timing recovery correlation function such that when the error is reduced toward zero, the sampling period is at the optimal or near optimal point. The optimal or near optimal timing phase is that which minimizes the mean squared error, due to for example the uncancelled precursor intersymbol interference, which is approximately achieved when the correlation between the error and the other signal fk is at zero or within a "deadband zone" explained further below. The correlation function zero crossing then determines the steady state locations of the desired sampling timing instants.
In implementing this first example embodiment of the timing recovery correlation function, the timing recovery correlation function Δθ = E(fk* εk) is calculated for a current received pulse and provides a timing phase adjustment signal to the receiver sampling clock. Optimally (although not necessarily), only the sign or direction of that correlated timing phase adjustment value Δθ is used to correct timing phase. For example, if the Δθ value is a negative, the clock is "lagging," and the timing recovery circuit 70 generates an "advance" signal for advancing the phase of the sampling clock provided to the A-to-D converter 48 and echo canceler 36 by an incremental time value. If the value is positive, then the clock is "leading," and the timing recovery circuit 70 outputs a "retard" signal which delays the clock by an incremental time value. If calculated timing phase adjustment value is zero or less than a
deadband threshold, a "hold" signal is output from the timing recovery circuit 70 meaning that the clock is not adjusted for the time being.
Since the transmission channel characteristics on a subscriber loop usually change slowly, it is desirable to adjust the receiver sampling clock only in small steps (the increments noted above), and only after a phase correction in a particular direction is detected over many samples, i.e., an integrating time period. For example, a 2000 sample time period is appropriate.
The correlation function used for timing recovery minimizes the mean squared error as obtained by the equation Δθ = E(fk* εk) has significant advantages. First, the cross-correlation function exhibits only one zero crossing thereby avoiding the possibility of locking on a sampling instance other than the optimal or near optimal sampling instance or the risk of locking the system in an uncontrolled oscillatory state. A second advantage is that as a result of the single zero crossing, the timing recovery correlation function converges
unconditionally to the optimal or near optimal sampling instant regardless of the initial sampling point.
Further description of the present invention will now be with reference to Figures 7, 8 and 10 where like reference numerals refer to like elements from Figure 2. The output from the adaptive gain control unit 54, which includes a number of overlapping symbols is processed in feedforward filter 56. The delay elements z-1 employed in filter 56 provide signals sk, sk+1, and sk+2 at the current sampling instant k. The signal sk+2 is multiplied by a precursor coefficient or "tap" pc2 while the signal sk+1 is multiplied by precursor coefficient or tap pc1. While a two tap, feedforward filter (corresponding to taps pc1 and pc2) is shown and
described below for purposes of explanation, those skilled in the art will appreciate that a one tap filter or a more than two tap filter could also be used if desired. The two weighted signals are summed together to provide a signal uk which is then summed with signal sk to generate the filtered signal xk which looks like the typical received and filtered signal shown in Figure 5. The output of detector 60 ak is fed into decision feedback equalizer 68 to provide an estimate of intersymbol interference. The intersymbol interference is removed at summer 58 shown in Figure 7 so that the current symbol pulse can be accurately detected by detector 60. The output from the detector ak is also subtracted from the input of the detector at summer 66 to provide the error signal εk to update
coefficients of the equalizer 68 and to the timing recovery block 70 As shown in figure 11 described later, the filter signal uk is provided to signal shaper 90 to provide the other signal fk according to formula (3) set forth above, i.e., fk = uk + uk-1. The signal to be correlated fk is then provided to timing recovery block 70 which performs the
cross-correlation between the error signal εk and the other signal to be correlated fk The input signal to the function generated is defined as follows: uk = sk+1pc1 + sk+2pc2. (5) Since the output from the feed forward filter xk equals sk + uκ, one can readily see that signal uκ is very much related to the first and second precursors of symbol xk. Thus, when fk is correlated with εk only the precursor portions of both signals correlate in a steady state, i.e., are approximately squared.
Figure 9 shows the main stages of the timing recovery circuit 70 in block diagram form. Signal uk from the feedforward filter 56 is processed by signal shaper 90 which essentially provides a signal shaping function that adds uk to its delayed version uk-1. Figure 11 shows an optional sign block 102 which may be used to simplify the correlation calculation. One or both of the correlated signals may be approximated with its sign value, i.e., +1 or a -1, which avoids higher data processing overhead multiplications using simpler combinations of sign. In other words, irrespective of whether the correlation result is (0.2)(-0.7) = -0.14 or (0.2)(-1.0) = -0.2 or even (1.0)(-1.0) = -1.0 for that matter, a correct decision (on average) may be made to advance or retard the sampling instant based purely on the sign. This approach is particularly useful when a preferred implementation of at least the timing recovery circuit 70 is performed by a programmable digital processor. Signals fk and εk are then provided to correlator 91 where they are multiplied in a multiplier 92 and then filtered in loop filter 94. Loop filter 94 averages (integrate and dump) the correlation result over, for example, 2000 samples, and the averaged value is used to adjust timing.
For example, the sampling phase would be adjusted once every 2000 samples dependent upon the new value Δθk. The output from the loop filter is applied to a phase quantizer 96 which interprets the loop filter output to make a decision as to whether to "advance," "retard," or "hold" the timing recovery baud rate clock. Phase quantizer 96 may correspond to a multi-level slicer having a positive threshold and a negative threshold with the region therebetween being referred to as a hold or dead zone region. Depending upon the polarity of the signal it receives, the quantizer 96 outputs an advance or retard signal which shifts the phase of the recovered baud rate clock and hence adjusts the
sampling instant to an optimal value. As mentioned above, a digital, voltage controlled oscillator (VCO) may be used typically in the form of an up/down counter. Reference is now made to Figures 10-13 which illustrate
examples of signals to be correlated. As already described, the
correlation function used for timing recovery minimizes (or at least nearly minimizes) the mean squared error following the equation Δθ = E(fk*εk). The issue is how to ensure that such a correlation function has only one zero crossing. As already described above in the context of Figure 6, the autocorrelation of the error, i.e., εk 2 and its derivative, are
unsatisfactory. The strategy adopted by the inventors of the present invention for choosing particular signal combinations to develop an optimal or near optimal correlation function relies on the principle of superposition which applies in any linear system. The timing functions described further below, such as one illustrated in Figure 9, may be seen as a linear combination of the correlation functions.
In general, once a particular combination of signals to be
correlated is adopted, a program for evaluating the correlation function,
(developed using commercially available software such as MATLAB), is executed to check whether a single zero crossing is achieved. In other words, each possible correlation function for various combinations of signals, (including in some fashion the error signal εk), is evaluated to determine whether or not it fulfills the objects of approximately
minimizing the mean squared error and providing only one zero crossing. For example, the MATLAB program was used to generate the graphs in Figures 6 and 8, where Figure 8 shows a suitable correlation function which has only one zero crossing. While specific, suitable correlation signals are not known in advance, the inventors of the present invention
determined that the detected error signal εk contains information about precursor noise. The correlation function is used to extract this information which is then used for timing recovery. Turning to Figure 10 referred to previously in conjunction with
Figure 7, the error signal εk is correlated with another correlation signal fk generated from signal uk obtained from the feedforward filter 56. The feedforward filter signal uk is input to signal shaper 90 where it is summed with a delayed version of itself uk-1. The resulting correlation function therefore is E((uk+uk-1)εk). As described above, in some digital processing operations, the correlation function may be implemented without a multiplication by simply adopting the sign (+ or -) of the summer output as correlation signal fk. A mathematically equivalent combination of signals is shown in
Figure 11 which when correlated satisfy the above objectives is the combination of a delayed signal uk, that is uk-1, and the sum of the error εk and its delayed version εk-1 to produce a correlation function fk. The resulting correlation function therefore is Δθ = E((εk+εk.1)uk-1). As with Figure 10, the data processing may be simplified using the sign of one or both fk and uk-1.
Figure 12 shows a third example correlation function in which a delayed unfiltered signal sk+1 from the feedforward filter 56 is input to signal shaper 90. The resulting output signal fk is correlated with the error εk. Alternatively, since signals sk and sk+1 are readily available, they may be for example combined in the summer to produce signal fk for correlation with εk. The resulting correlation function therefore is Δθ = E((sk + sk+1)εk). Again, the sign of fk (+ or -) could simply be correlated with the error εk or its sign to simplify the data processing operation.
Another combination of signals shown in Figure 13 which when correlated satisfy the above objectives is the combination of an unfiltered signal sk and the sum of the error εk and its delayed version to produce a correlation function fk. The signal to be correlated fk is then combined with a signal sk from the feedforward filter 56. The resulting correlation function therefore is Δθ = E((εk + εk-1)sk). As with Figure 10 the correlation of fk with sk may be adequately approximated using the sign of one or both of fk and sk to simplify the data processing operation.
Each of these four example timing correlation functions satisfies the objectives above such that when the mean squared error is
minimized, only a single zero crossing is obtained as confirmed by observation using the MATLAB program. Of course, these three timing recovery functions are simply examples to which the present invention is not limited Other various combinations of signals that satisfy the above- identified objectives would also be suitable correlation functions for achieving timing recovery in accordance with the present invention. A more rigorous mathematical explanation of the invention follows.
To meet the above formulated requirements, the sum of the signals uk-1 and uk is correlated with the error εk.
where h
u,i depicts the channel partial impulse response function, u
k-1 is simply the delayed version of u
k, and the data symbols {a
k} are assumed to be an uncorrelated sequence. The error ε
k can be mathematically described as:
where N is the number of taps in the equalizer 68, i and k
1 are time indexes, d, are estimated coefficients of the equalizer 68, and η
k is a noise value at time instant k.
Evaluating correlation during the time equalizer 68 converges results in following expression for correcting of the timing phase:
where h
i denotes the sampled impulse response function at the decision instant.
The first term rk ,t represents a contribution due to uncancelled precursor intersymbol interference. Hence, it contains an information which can be utilized to optimize and track the optimum or near optimum sampling instance. Since rk,t is the only term that actually depends on
the sampling phase in steady-state conditions, rk,t is referred to as the timing function.
The second term rk,g represents a contribution due to incorrect previous decisions. It vanishes assuming no decisions errors are made, i.e., in the steady-state. This does not apply at the initial phase of the transmission when timing recovery controller 70 and equalizer 68 operate jointly because the equalizer taps cannot be set to optimal values by independent adjustment.
The third and fourth terms rk,d and rk,e represent contributions due to the imperfect channel equalization. Ideally, those two terms vanish completely after convergence to the correct channel impulse response, di = hi. In practice, these terms cause zero-mean random fluctuations around steady state.
The fifth term rk,u represents the unequalized part of the channel impulse response. The sixth rk,η represents, additive white noise. The first, fifth and sixth terms do not depend whether equalizer 68 has converged or not. Nor are they functions of time.
From the description given above, it can be seen that:
• | rk,t | < | rk,g | during the time the equalizer 68 converges, since the feedforward filter 56 reduces the amplitude of the pulse precursors such that (h-1≈0, h-2≈0...; h-m = 0, m≤ M). On the contrary, rk,g contains the largest values of the sampled impulse response function.
• r
k,d can be neglected providing the correct adjustment of decision threshold (automatic gain control 54), since d
0 = h
0.
• | r
k,e | < r
k,g | since | Δh
i | < | h
i | and
has a mean value equal to zero.
• rk u can be neglected in comparison with rk,g providing the large number of taps in the equalizer 68.
• the level of external noise is assumed to be low enough to allow the proper operation of the transceiver with a bit error rate
(BER) < 10-7, thus rk,η is negligibly small in comparison with rk,g and rk,t.
• rk,g keeps the same sign during the time the equalizer
converges, since hi and fi have either the same or opposite sign and since a2 k-i is always positive. This holds because both hi and fi are non-oscillatory, monotonic for almost all i except for very small values of hi and fi. On the other hand, it is possible to find some particular
sampling instances that for i = 0 the product h0f0 does not have the same sign as for the rest of the pulse tail.
The timing function is positive when the timing instance is
advanced and negative when the timing instance is retarded according to the timing function shown in Figure 10. The term rk,g is always
negative. Furthermore, the sum of both, corresponding to the initial phase of the transmission, when equalizer 68 has not yet converged, is also negative and does not exhibit zero-crossings. The means that if no training sequence is assumed, and the equalizer 68 and timing recovery controller 70 start operation simultaneously, the increment of the timing phase depends on rk,t + rk,g. The timing phase is therefore continuously retarded during that phase of the transmission. Subsequently Δθk converges to rk,t at the pace at which the equalizer converges and the term rk,g decreases successively towards zero. Hence, there is little risk
that the equalizer will diverge or that the system will lock unpredictably on a false zero-crossing.
The term rk,g ultimately vanishes when the equalizer 65 reaches a zero-error state, i.e., when it makes the correct decision. The term rk,e is assumed to be eliminated through averaging, since its expected value is zero. The terms rk,u and rk,η are neglected since they are relatively very small. Accordingly, the phase correction Δθk from equation (7) depends mainly on the timing function rk,t.
In steady state conditions, the term rk,e does not vanish even when the equalizer 68 models the communication channel correctly. Also in steady-state, the error in the channel modelling or identification Δhi depends on adaptive updating of the equalizer filter coefficients:
where μ is the equalizer adaptation constant, and ε
k is a random process dominated by external noise sources. Inserting equation (14) in equation (12) results in:
If one assumes that ε
k is a zero mean, non-impulsive random process with a variance σ
k 2, the term r
k,e may be considered as an approximately gaussian noise source with a variance:
In a practice this term is negligibly small since it depends on μ2.
Referring to the rk,d, i.e., the third term in the expression for Δθk, equation (11), one sees the possibility to introduce the bias to the estimator of the steady-state location of the timing instants. In particular, when automatic gain control block takes incorrect value for a gain, it causes the lasting discrepancy between the signal level and the decision threshold, Δh0≠ 0. The rkd translate it to the permanent bias of the estimate of Δθk. This phenomenon, however, may be eliminated by the proper design of the automatic gain control block.
A change of the sampling phase immediately gives rise to an undesired correlation described by the terms. rk,d and rk,e. The term rk,g does not contribute to the correlation function provided that the phase increments are small enough that they do not cause incorrect decisions, since E(ak- ãk) = 0. The terms rk,d and rk,e can not be eliminated, but their influence diminishes with the small phase increments that usually occur in steady state conditions.
In steady-state then, r
k,g = 0, r
k,d = 0 and r
k,e = 0, and expression for the phase correction Δθ
k simplifies to:
The components rk,u and rk,η may be regarded as the bias of the estimate of the timing function rk t. The term rk,u is caused by the cross-product of the uncancelled far end signal tails and the tail of the signal to be correlated fk, and maintains constant mean value during the operation of the timing recovery circuit. The magnitude of the term rk,u depends on the combination of the correlated signals. However, for the high signal to noise ratios required to achieve BER = 10-7, the tail of the far-end signal must be cancelled almost perfectly, thus the influence of this term is negligibly small.
The term rk,η depends of the external noise level. Assuming that ηk and ηf,k have a gaussian probability density function it may be show that
E(ηkηf,k) = σ2α (19) where σ2 is the noise variance at the input of the detector, and α is a constant depending on the chosen precursor filter coefficients. The contribution of this term is also negligibly small. Under the assumptions above, Δθk depends almost entirely on rk,t.
The timing information can therefore be extracted from the estimate of the correlation coefficient between the error εk and some adequately chosen signal as described above. In practical implementations, such as that described above, time averaging is employed. Variations of rk,t will cause oscillations around the optimum or near optimum sampling instance, i.e., jitter. In order to
avoid unnecessary phase correction, the correction of the actual sampling instance Δθk, may be restricted to values of rk,t greater than some threshold magnitude. The magnitude of the threshold may be evaluated using the fact that values of rk,t depend on the number of samples in the average estimate.
The present invention provides a practical and efficient approach to accurately track and adjusting the phase drift between transmitter and receiver clocks. Timing information is extracted at the symbol baud rate and optimal or near optimal sampling is achieved using a correlation function that passes through zero at or near the desired sampling phase. A correlation function that cross-correlates two signals at the symbol rate is selected such that it minimizes precursor interference through the choice of sampling instance. The timing recovery information is provided from a zero crossing of the correlation function and is used to determine the optimum or near optimum location of the pulse sampling instant. The signals to be correlated are chosen so that false zero crossings are avoided. In one of the embodiments disclosed above, the correlated signals included a symbol detection error signal and a signal from the feedforward filter. As a result, the present invention avoids pitfalls of previous timing recovery algorithms including locking onto false zero crossings, oscillatory behavior, and susceptibility to spurious
phenomena. While the invention has been described in connection with what is presently considered to be the most practical and preferred embodiment, it is to be understood that the invention is not to be limited to the disclosed embodiment, but on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.