Abstract:
A receiver circuit for audio frequency modems, comprising an input module (11) for receiving and sampling an analog input signal representing digital data, an adaptive equalizer (12, 14, 15) having a transversal filter (12) with a plurality of complex multiplier coefficients ordered relative to a usually central highest norm coefficient to generate symbols at a given symbol rate from the sampled analog signal, and a timing recovery device comprising devices (12, 16, 18, 19) responsive to displacement of at least one of the coefficients, relative to said central position, to control an oscillator (20) supplying a timing signal.

Description:
BACKGROUND OF THE INVENTION 
     The invention concerns a receiver circuit, in particular a receiver circuit for audio frequency modems, comprising means for receiving and sampling an analog input signal representing digital data, an adaptive equalizer having a transversal filter with a plurality of complex multiplier coefficients ordered relative to a usually central highest norm coefficient to generate symbols at a timing rate from a sampled analog signal and a timing recovery device. 
     The document IEEE TRANSACTIONS ON COMMUNICATIONS, Vol.comm-26, No 5, &#34;Passband Timing Recovery in All-Digital Modem Receiver--D. Godard&#34;, dated 5 May 1978, discloses a timing recovery device for a quadrature amplitude modulation modem in which a timing signal is recovered from two characteristic frequencies in the spectrum of the received signal on opposite sides of the frequency band used to transmit the digital data. For a modulated 1800 Hz carrier type received signal the two characteristic frequencies are 600 Hz and 3000 Hz. The basic principle of timing recovery is as follows. If at a given time there exists within the spectrum of the received signal a signal at a frequency near 600 Hz (604 Hz, for example) there is also a signal at a frequency near 3000 Hz (3004 Hz, for example). This property enables calculation of representative values of timing drift used to control an oscillator. Two filters respectively centered on the frequencies of 600 Hz and 3000 Hz are used for this. The filter centered on 600 Hz outputs sin(604 Hz) and cos(604 Hz) signals. The filter centered on 3000 Hz outputs sin(3004 Hz) and cos(3004 Hz) signals. The following trigonometrical equation applies: 
     
         sin (2400 Hz)=sin (3004 Hz). cos (604 Hz)-cos (3004 Hz). sin (604 Hz) 
    
     The value of the signal sin(2400 Hz) sampled at 2400 Hz is used to control the oscillator supplying the timing signal. 
     A timing recovery device of this kind has drawbacks and in particular it cannot be used for transmission lines which attenuate the analog signal near the characteristic frequency of 3000 Hz. Also, it is standard practice to use the sidebands available in the frequency spectrum of the analog signal to transmit service data. The existence of the two characteristic frequencies used for timing recovery makes the use of the sidebands more difficult. 
     SUMMARY OF THE INVENTION 
     An object of the invention is to remedy these drawbacks. 
     To this end the invention consists in a receiver circuit characterized in that the timing recovery device comprises first means responsive to displacement of at least one of said coefficients relative to said central position to control second means supplying a timing signal. 
     The physical principle underlying the invention is as follows. If timing drift occurs, i.e. if the time at which the analog signal is sampled is offset from its ideal position, the algorithm for calculating the coefficients of the transversal filter of the adaptive equalizer shifts the coefficients of the transversal filter in the shift register of the transversal filter. 
     Detection of shifting of the coefficients may be limited to detection of shifting of the highest norm coefficient (main coefficient) relative to the central position that it normally occupies. 
     In a particularly simple, low-cost embodiment particularly suited for digital data transmission symbol rates in the order of 2400 bauds, the timing recovery device comprises the transversal filter of the adaptive equalizer and an auxiliary transversal filter receiving samples to be equalized in parallel with the former and whose respective outputs are used to calculate values representative of timing drift used to control an oscillator, the coefficients of the auxiliary transversal filter remaining fixed. 
     Drift of the transmitted signal carrier frequency is a well-known phenomenon. It is corrected in part by a dedicated drift corrector circuit, and the adaptive equalizer of the receiver circuit is also required to compensate this drift. The compensation applied by the adaptive equalizer corresponds to slow rotation of the vectors representing the coefficients of the transversal filter of the adaptive equalizer and therefore of the vector representing the samples at the output of the transversal filter. If the error values used to control the oscillator are produced from the outputs of the transversal filter of the adaptive equalizer and the auxiliary transversal filter, it is necessary to apply to the vectors, representing the samples at the output of the auxiliary transversal filter, exactly the same rotation as is applied to the vectors representing samples at the output of the transversal filter of the adaptive equalizer. 
     To this end the timing recovery device further comprises third means responsive to variation in the argument of the highest norm coefficient of the transversal filter of the adaptive equalizer in order to apply an argument correction to each sample at the output of the auxiliary transversal filter. 
     One embodiment of the invention is described in detail below with reference to the figures. 
    
    
     BRIEF DESCRIPTION OF THE DRAWING 
     FIG. 1 is a functional block diagram of a receiver circuit in accordance with the invention. 
     FIG. 2 is a block diagram showing in more detail the transversal filter of the adaptive equalizer of the receiver circuit from FIG. 1. 
     FIG. 3 is a block diagram showing in more detail the auxiliary transversal filter of the timing recovery device in accordance with the invention. 
     FIG. 4 is a flowchart showing the operation of a calculation module which is part of the timing recovery device in accordance with the invention. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     The same items shown in more than one figure are identified by the same reference numbers. 
     Referring first to FIG. 1, the receiver circuit, which is for example a receiver circuit for a modem connected to a telephone line, comprises an input module 11 which receives the analog input signal s(t) encoded to represent digital data. This input module includes a filter, a sampler and a demodulator controlled by a signal on an input 200 at twice the symbol, i.e., at rate 2/T. 
     The input module supplies complex samples X kT  /2 to be equalized to the input 110 of two transversal filters 12 and 16 each having a plurality of complex multiplier coefficients. The transversal filter 12 supplies equalized complex samples A kT  on an output 140 and the transversal filter 16 supplies complex samples U kT  on an output 150. 
     The equalized samples A kT  from the transversal filter 12 are fed to the input of a conventional phase corrector module 13 to correct any drift in the carrier frequency of the signal s(t). The module 13 produces samples P kT  at its output 160 which are fed to a conventional decision module 14. The decision module 14 supplies decided symbols at its output 170 at the symbol rate 1/T of 2400 bauds, for example. The input and the output of the decision module 14 are connected to a calculator module 15. The calculator module 15 is adapted to calculate the complex coefficients of the transversal filter 12 using the least mean square error criterion, for example. It is further adapted to calculate a correction coefficient which is fed to the module 13 to correct the argument of the complex samples A kT . 
     The transversal filter 12, the decision module 14 and the calculator module 15 form an oversampling adaptive equalizer. An equalizer of this kind is based on a microprocessor. 
     Referring now to FIGS. 2 and 3, the transversal filter 12 has a plurality of taps 30 associated with conventional multipliers 35. FIG. 2 shows five multipliers. The multipliers are adapted to multiply the complex samples X kT/2  at the input 110 at successive times (k-2)T/2, (k-1)T/2, (k)T/2, (k+1)T/2, (k+2)T/2, where T/2 denotes half the baud period, by the respective coefficients C -2 , C -1 , C 0 , C 1 , C 2 . The results of these multiplications are summed in an adder 40 which produces at its output equalized complex samples A kT  which have a real part AR kT  and an imaginary part AI kt . The filter 12 could have a greater number of taps 30, multipliers 35 and thus of multiplier coefficients C. 
     Referring to FIG. 3, the auxiliary transverse filter 16 also has a plurality of taps 30&#39; associated with conventional multipliers 35&#39;. The five multipliers shown are adapted to multiply the complex samples X kT/2  at the input 110 by the complex multiplier coefficients C&#39; -2 , C&#39; -1 , C&#39; 0 , C&#39; 1 , C&#39; 2 . The results of these complex multiplications are summed in an adder 40&#39; which produces at its output complex samples U kT  having a real part UR kT  and an imaginary part UI kT . The coefficients C&#39; of the filter 16 are not adjusted, i.e. their norm remains constant. 
     In FIGS. 2 and 3, the highest norm coefficient (main coefficient) is identified by the subscript 0. C 0  is therefore the main coefficient of the filter 12 and C&#39; 0  is the main coefficient of the filter 16. 
     If there is any drift in the timing rate the coefficient C 0  moves to the left or to the right relative to its central position as shown in FIG. 2. The same applies to the other coefficients C -2 , C -1 , C 1 , C 2 . Because the coefficients C&#39; of the filter 16 are not adjusted, the coefficient C&#39; 0  remains fixed relative to its central position as shown in FIG. 3. The same applies to the other coefficients of the filter 16. 
     Referring again to FIG. 1, the samples U kT  and the samples A kT  on the respective outputs 150 and 140 are fed to a calculator module 18. The calculator module 18 supplies at its output 180 digital values E representing any drift of the timing. The successive values E are fed into a filter 19 which produces at its output 190 a timing error signal Ef. The timing error signal Ef controls an oscillator 20 supplying the timing signal 1/T. 
     The installation and operation of the timing recovery device in accordance with the invention are as follows. 
     The oscillator 20 is initially isolated from the timing recovery device to produce a local timing signal whose frequency is not adjusted. The complex samples X kT/2  supplied by the module 11 are equalized by the adaptive equalizer and the coefficients C of the transversal filter 12 are adjusted by the calculator module 15 to minimize the mean squared error at the output of the adaptive equalizer. When convergence of the adaptive equalizer has been achieved (convergence may be detected by comparing the square error with a predetermined threshold), the main coefficient C 0  of the filter 12 normally occupies a central position as shown in FIG. 2. The coefficients C of the filter 12 are then copied automatically by a suitable program in the filter 16 and become the coefficients C&#39;. The main coefficient C&#39; 0  consequently occupies a central position as shown in FIG. 3. The filter 16 may have a smaller number of multiplier coefficients than the filter 12 so that only some of the coefficients C of the filter 12 are coefficients C&#39; of the filter 16. These are preferably the highest norm coefficient C 0  (main coefficient) and the coefficients near the main coefficient. 
     After these operations the timing recovery device is in service. The outputs of the filters 12 and 16 are synchronized so that a value E representing a timing drift is calculated by the module 18 using the following equation: 
     
         E=AR.sub.-1.UR+AI.sub.-1.UI-AR.UR.sub.-1 -AI.UI.sub.-1 
    
     in which: 
     AR denotes the real part of a complex sample A at the output of the transversal filter 12 at the time T 0  defined as the present time; 
     AI denotes the imaginary part of the sample A; 
     UR denotes the real part of a complex sample U at the output of the auxiliary transversal filter 16 at time T 0  ; 
     UI denotes the imaginary part of the sample U; 
     AR -1  denotes the real part of a complex sample A -1  at the output of the transversal filter 12 at the time T -1  defined as the time preceding the time T 0  by one baud period; 
     AI -1  denotes the imaginary part of the sample A -l  ; 
     UR -1  denotes the real part of a complex sample U -1  at the output of the auxiliary transversal filter 16 at time T -1  ; 
     UI -1  denotes the imaginary part of the sample U -i . 
     A non-null value E represents a shift of the coefficient C 0  of the filter 12 relative to the central position that it occupies in the absence of any timing drift. This position is equivalent to that of the coefficient C&#39; 0  of the filter 16. Thus if the successive values E tend to be negative, this means that the transmit timing is higher than the receive timing. The frequency of the timing signal supplied by the oscillator 20 is increased. Conversely, if the successive values E tend to be positive, the frequency of the timing signal supplied by the oscillator 20 is reduced. A filter 19 receiving the successive values E at its input converts these values into the control signal Ef. 
     In accordance with another aspect of the invention a calculator module 17 is further provided for detecting slow rotation of the vectors representing the coefficients C of the filter 12 because of drift affecting the carrier frequency of the signal s(t) and for correcting the samples at the output of the filter 16 accordingly. 
     Detection is simply achieved by calculating an angle value D representing the difference between the argument of the main coefficient C 0  of the filter 12 and the argument of the main coefficient C&#39; 0  of the filter 16. This angle value D is substantially equal to the sine of the angle between the trigonometrical forms of two main complex coefficients C 0  and C&#39; 0  if it is assumed that this angle value is small. The value of D must of course be calculated periodically at time intervals that are short relative to the frequency drift phenomenon. 
     The value D may be expressed by the following equation: 
     
         D=r&#39;.x-r.x&#39; 
    
     in which: 
     r+j.x is the trigonometrical representation of C 0 , 
     r&#39;+j.x&#39; is the trigonometrical representation of C&#39; 0 . 
     -r is the real part of C 0 , 
     x is the imaginary part of C 0   
     r&#39; is the real part of C&#39; 0 , and 
     x&#39; is the imaginary part of C&#39; 0 . 
     After each calculation of the value D, the calculator module 17 multiplies each coefficient C&#39; of the filter 16 by a correction complex number having a unity modulus and an argument that varies with D. The arguments of the complex samples U kT  are corrected accordingly. If C&#39; i  is a coefficient of the filter 16 to be corrected, the new value of the coefficient C&#39; i  is obtained by applying the calculation procedure implemented in the calculator module 17 and shown in FIG. 4. 
     This procedure starts with step 300. In this step the coefficients C of the filter 12 are copied into the filter 16. Variables OS, IN, AD are respectively initialized to 1, 0 and 0 in the next step 310. An angle value D is calculated in step 320 using the equation given above. First order filtering is applied to the angle value D in step 330 in which a variable S is calculated using the following equation: 
     
         S=D+AD×0.999939 
    
     In step 335 a variable COR is calculated using the following equation: 
     
         COR=S×0.01 
    
     In step 340 the variable AD is updated and is then equal to the value S. 
     In step 350 variables OS1 and IN1 are calculated using the following equations: 
     
         OS1=OS-(COR.IN) 
    
     
         IN1=IN+(COR.OS) 
    
     In step 360, the module 17 replaces the value of each complex coefficient C&#39; i  of the filter 16 with a new value given by the following equation: 
     
         C&#39;.sub.i =C&#39;.sub.i.e OS1+j.IN1 
    
     in which e denotes the exponential function. 
     In step 370, the variables IN and OS are replaced by respective variables IN1 and OS1. The procedure then continues by returning to step 320 to calculate a new angle value D. 
     If the successive values E for controlling the oscillator 20 are calculated directly from the values of the coefficients C i  and C&#39; i  of the filters 12 and 16, there is no utility in providing a frequency drift compensator module 17. 
     For low symbol rate transmission, the adaptive equalizer of the receiver circuit may be of the sampling rather than the oversampling type.