ECHO CANCELLING DEVICE FOR DATA TRANSMISSION OVER TWO-WIRE LINE

Abstract: Echo cancelling device for cancelling echoes affecting the incoming signal received over a two-wire telephone line, comprising near echo canceller 20, far echo canceller 22 and an adder 26 providing the estimated echo signal. A circuit path including a digital-to-analog converter 48 for converting the digital estimated echo signal into analog form and a subracter 52 for subtracting the resulting analog signal from the analog incoming signal, is separated from a circuit path including an analog-to-digital converter 42 for converting the analog incoming signal into digital form and a subtracter 44 for subtracting the digital estimated echo signal from the resulting digital incoming signal thereby providing a digital signal used as a control signal for adjusting the echo cancellers 20 and 22.

Description: The present invention deals with the data transmission in full duplex on a two-wire line, and relates particularly to a device for cancelling echoes of the outgoing data signals due to the connections between the two-wire and four-wire line portions. A family of modems is for use on connections between data terminal equipments by means of the switched telephone network. The data signals are transmitted from a transmitting modem to a receiving modem over a two-wire line. For long distances, amplifiers (repeaters) are required. Since amplifiers only operate in one direction, the data directions are split up to separate the two-wire line into a four-wire line. The connection between two and four-wire lines, and vice-versa, is made through so called hybrid couplers. Likewise, an hybrid coupler is required to connect the modem output comprising the transmitting circuit and the receiving circuit, to the two-wire line. An hybrid coupler is a terminating set consisting of two differential transformers with three inputs, an input for each two-wire circuit of the four-wire line, and an input for the two-wire line. Because these transformers cannot be loaded with an impedance matched throughout the overall frequency bandwidth, a portion of the data signal energy goes over to the other direction and returns to the sender through the two-wire line, generating so called echoes. Two kinds of echoes are received by the modem : the near echo resulting from the transmitted data signal leaking directly through the modem hybrid coupler toward the receiving circuit of the modem, and the far echo resulting from the transmitted data signal passing through the four-wire line and reflecting on a far hybrid coupler. Therefore, the modems of this type are provided with echo cancellers to cancel from the incoming signal echoes of the outgoing signal. Because near and far echoes have different characteristics, it is classical to have the near echo canceller different from the far echo canceller, the outputs of both echo cancellers being added to provide an estimated value of the actual echo. This resulting estimated value is then subtracted from the incoming signal to provide theorically the incoming signal free of echo. The error signal between the estimated and actual values of the echo is generally used to adjust the coefficients of the echo cancellers. This technique is already known from the prior art as described in the article "Ein Vollduplex modem mit adaptiver sprecherecholöschung zur übertragung von 4800 bit/s über fernsprechkanäle" published in Nachrichtentechnische Zeitschrift Vol 36, n0 11, 1983. In fact these echo cancellers of the prior technique present drawbacks which are overcome by the present invention. Indeed, the data signal processing in the present day modems is performed digitally under the control of a processor incorporated in the modem. Accordingly, all the operations of echo cancelling are carried out digitally resulting in an estimated echo value in digital form. The resulting digital signal is formed by a number N of digital samples satisfying the sampling theorem in response to one sample of the outgoing signal received each baud time T. The method for obtaining such digital samples is thus described in the international application WO 83/00266. This estimated value is therefore converted by a digital-to-analog converter into analog form before being subtracted from the incoming signal. The resulting signal has, in turn to be converted by an analog-to-digital converter into digital form so as to be used as a control signal for adjusting the echo canceller. As the incoming signal can have a wide energy level range, it is necessary to have a programmable gain amplifier (PGA) at the input of the analog-to-digital converter. The PGA value is set at the beginning of the transmission, by measuring the signal energy at the A/D converter output signal. It may happen that, because of a noise burst for instance, this energy measurement be not accurate, especially if fast set-up is required, resulting in a bad adjustment of the PGA. Thus, observing a signal with low energy at the A/D converter output may result from either a good cancellation of the echo, either from a bad adjustment of the PGA, without the possibility of distinguishing between the two possibilities. Another drawback of the prior echo canceller is that the digital-to-analog converter which converts the estimated value of the echo into analog form, introduces a frequency distorsion of the type SinX/X. Therefore the control signal used for adjusting the echo canceller coefficients is a filtered version of the true signal, which leads to an imperfect echo cancellation, especially when the sampling frequency is low. Therefore the object of the invention is an echo cancelling device in a modem for data transmission over a two-wire line, which separates the circuit path used for generating the control signal for adjusting the coefficients of the echo canceller from the circuit path used for generating the echo-freed remote incoming signal, as described in the patent abstract of Japan, Vol 8, no 167,1984, JP-A-5963827. Such an echo cancelling device comprises echo signal generating means for providing an estimated echo signal in digital form from the transmitted outgoing digital signal, a first circuit path including a digital-to-analog converter for converting the digital estimated echo signal to analog form and analog subtracting means for subtracting the analog estimated echo signal from the incoming signal, thereby providing an echo-free analog incoming signal and, a second circuit path including an analog-to-digital converter for converting the analog incoming signal to digital form, and digital subtracting means for subtracting the digital estimated echo signal from the digital incoming signal, thereby providing a digital signal which is used as a control signal for the echo signal generating means The echo cancelling device of the present invention overcomes the mentioned drawbacks by incorporating in the first circuit path a filter having a transfer function X/sin X located before the digital-to-analog converter for compensating the filtering effect of the form SIN X/X introduced by the converter. A delay element is located between the echo signal generating means and the subtracting means of the second circuit path for delaying the digital estimated echo signal of a time duration equal to the delay introduced by the filter in the first circuit path The details of a preferred embodiment of the invention may be more readily ascertained from the following description when read in conjunction with the following drawings wherein : Figure 1 is a simplified block diagram of a transmission system incorporating a conventional echo cancelling; Figure 2 is a schematic diagram of the echo cancelling device according to the present invention; Figure 3 depicts the structure of the echo canceller shown on Figure 2; Figure 4 is a schematic diagram of the pass-band transversal filter comprised in the echo canceller of figure 3; Figure 5 is a schematic diagram of the interpolator comprised in the echo canceller of figure 3; FIgure 6 is a block diagram showing the time data flow of the samples provided at the output of the near echo canceller; Figure 7 is a block diagram showing the time data flow of the samples provided at the output of the far echo canceller. Figure 1 is a block diagram of a conventional echo cancelling system used with a system transmitting over a two-wire medium. The digital signal in complex form, that is with the in-phase and quadrature components, is provided to the two-wire line 18 via transmit filter 10, digital-to-analogic converter 12, low pass filter 14, and hybrid coupler 16. It must be noted that the output of transmit filter 10 is a real signal and is shown as one line, whereas the complex signal at its input is shown as a double line. Such a representation will be used in the whole description. Also, it is must be noted that in the description of the figures, the same means will always be designated by the same references. As echoes arise due to impedance mismatches in the hybrid couplers such as 16, the incoming signal received on line 18 is composed of three different signals : the far signal transmitted from the remote modem, the near echo resulting from the outgoing signal leaking directly through hybrid 16, and the far echo resulting from the transmitted signal reflecting on a far hybrid coupler. Because near and far echoes have different characteristics, it is convenient to break the echo canceller into two parts, the near echo canceller 20 and the far echo canceller 22. Both echo cancellers are generally implemented as digital transversal filters with adaptive coefficients, separated by a bulk delay 24 equal to the round trip delay. Note that, as filters, the near and far echo cancellers receive as inputs the signal in complex form, and provide as outputs only a real signal. The outputs of near echo canceller 20 and far echo canceller 22 are added in adder 26, the output of which is converted into an analog signal by digital-to-analog converter 28. The resulting analog signal which is an estimated value of the actual echo (near and far) is subtracted from the incoming signal received from the 2-wire line 18, via hybrid 16, in subtracter 30. The output of subtracter 30 on line 32 is theorically the incoming signal free of echo and therefore, can be demodulated and decoded to recover the data transmitted by the remote modem. In fact, there is always an error between the actual value of the echo and the estimated value. This error signal is used, after digital conversion in analog-to-digital converter 34 as a control signal for adapting the coefficients of near and far echo cancellers 20 and 22. The echo cancelling of figure 1 has several drawbacks. Indeed, the analog incoming signal from the remote modem has generally an energy level range between -6 dBm and -43 dBm, the near echo signal has the same energy level range (but independent) and the far echo signal has an energy level at least 10dBm lower than the energy level of the remote incoming signal. An analog-to-digital converter such as converter 34 has a limited precision which does not apply on the whole energy level range. Thus, if the converter is adapted to receive a signal of -6dBm as a maximum energy level, only 5 significant bits will be provided by the analog-to-digital converter with an input signal at -43 dBm, which is very insufficient. Accordingly, it would be necessary to include a programmable gain amplifier (PGA) before analog-to-digital converter 34 so as to fully utilize the A/D converter dynamic range whichever be the energy level of the incoming signal. Such a PGA would require to include a selectable gain attenuator after the digital-to-analog converter 28. A programmable gain amplifier (PGA) located before converter 34 would receive the error between the actual value and the estimated value of the echo, as an input when the modem is in training mode. The PGA value is set at the beginning of the transmission, by measuring the signal energy at the A/D converter output signal. It may happen that, because of a noise burst for instance, this energy measurement be not accurate, especially if fast set-up is required, resulting in a bad adjustment of the PGA. Thus, observing a signal with low energy at the A/D converter output may result from either a good cancellation of the echo, either from a bad adjustment of the PGA, without the possibility of distinguishing between the two possibilities. The above drawback is overcome by the embodiment shown on figure 2. In this implementation, the circuit path used to adapt the coefficients of the echo cancellers is separated from the circuit path for receiving the incoming signal to be processed by the modem receiver. The incoming signal from the hybrid is directly used as input to Programmable Gain Amplifier (PGA) 40, the output of which is converted into digital form by analog-to-digital converter 42. Thus, the energy level at the input of converter 42 is independent from the cancellation rate provided by the echo canceller, which enables to have permanently the information required to set PGA 40. Generally, PGA 40 is set once at initial training according to the near echo level. But other settings may be required for avoiding saturations when full-duplex transmission occurs. Then, the digital estimated echo value provided by adder 26 after addition of the estimated near echo value from near echo canceller 20 and the estimated far echo value from far echo canceller 22, is subtracted from the digital incoming signal provided by converter 42, in subtracter 44. The resulting signal is then used as a control signal for adapting the coefficients of near and far echo cancellers 20, 22. Another drawback which is overcome by the embodiment shown on figure 2 is that a digital-to-analog converter such as converter 28 (see figure 1), introduces a frequency distorsion of the type SinX/X on the generated echo signal. Such a distorsion is not corrected by the A/D converter 34, and therefore, the control signal for adjusting the echo canceller coefficients is a filtered version of the true signal which leads to an imperfect echo cancellation especially when the sampling frequency is low. As shown on figure 2, the estimated echo signal at the output of adder 26 is filtered by digital filter 46, the transfer function of which is of the type X/SinX. The filtered signal provided by filter 46 is provided to digital-to-analog converter 48. A selectable gain attenuator (SGA) 50 with a gain which is the reciprocal of PGA 40 gain, is located at the output of converter 48 so as to compensate the effect of PGA 40. The attenuated signal provided by SGA 50 is then subtracted from the incoming signal coming from the hybrid by subtracter 52, the resulting signal free of the echo signal being sent to the modem receiver for demodulation. Thus, the SinX/X shaping introduced by the digital-to-analog converter is compensated in a circuit path which is independent of the echo canceller adjustment loop, thereby overcoming the drawback mentioned above. In fact, filter 46 introduces a delay T in the circuit path, which must be compensated in the circuit path used for the echo canceller adjustment by a delay circuit 54. Delay τ has been measured as 2T, T being the baud time. As the far echo may be affected by a frequency shift due to the frequency changes in the 4-wire carrier system, some phase-roll tracking is needed. A phase-roll correction circuit 56 provides a correction signal of the form exp(j) which is used as multiplying factor of the estimated far echo signal in multiplier 58. The analog-to-digital and digital-to-analog converters of figure 2 operate synchronously with the modem transmitter clock which provides pulses at a frequency satisfying the sampling theorem constraints and being integer multiple of the modulation rate. Assuming that the modulation rate is 2400 bauds, the smallest possible value for the sampling frequency is therefore 7200Hz, 9600Hz.... For a sake of accuracy, the sampling frequency used in the following will be chosen as 9600Hz. Thus, near echo canceller 20 or far echo canceller 22 receives a complex signal corresponding to one constellation point per baud time, that is each 1/2400 s in the present embodiment, and has to provide four samples of a real signal per baud time, that is each 1/9600 s. The type of echo canceller which is widely used is referred as a pass-band data-driven filter. Such a filter behaves exactly as a modem transmitter filter, except the fact that its coefficients are adaptive. For a given time span of the echo canceller filter, the number of filter coefficients to be used is proportional to the sampling frequency to signalling frequency ratio. Assuming a total echo duration of 45 ms (108 baud times), the number of adaptive coefficients required with a sampling frequency of 9600Hz is 108 x 4 : 432. With the requirement that these coefficients are adapted each baud time, this is a burden which is not easily manageable by the modem processor. A system enabling the number of echo canaller coefficients to be reduced without a loss in the accuracy is shown on figure 3. Such a system comprises an adaptive transversal filter combined with an interpolator. The complex signal composed of data symbol coordinates is input into adaptive filter 60 at the rate of 1/T. Filter 60 has two output 62 and 64. The samples on outputs 62 and 64 are interleaved by interleaving block 66 so that the sample on output 62 be taken at times nT and the sample on output 64 be taken at times nT + T/2. These samples are then used as inputs (at the rate of 2/T) to interpolator 68 which derives two interpolated samples at times nT + T/4 and nT + 3T/4 on output 70, whereas output 72 provides samples at time nT and nT + T/2. This system saves an important computing time insofar as the number of coefficients to be computed each baud time is divided by two, the coefficients of the interpolator being computed once for ever as explained later on. It should be noted that the adjustment of the echo canceller coefficients is generally carried out at the beginning of the data transmission, that is when a training sequence is sent from the local modem to the remote modem, while the latter modem does not transmit any information. The coefficients are then frozen during the data exchange between the two modems. An adaptive transversal filter which can be used in the echo canceller is shown on Figure 4. The complex data symbols a n arrive at the input of delay line 80 composed of delay cells T, at the rate of 1/T (in the embodiment 2400). There are two parts in the filters, the 'even' filter with taps corresponding to complex coefficients c1, c2,...ck, and the 'odd' filter with taps corresponding to complex coefficients d1, d2,...dk. The outputs of the 'even' taps are summed up by adder 82 to provide on output 62 the output signal S(n,o) at time nT, given by The outputs of the 'odd' taps are summed up by adder 84 to provide on output 64 the output signal S(n,2) at time nT + T/2 , given by The interpolator 68 is now described in reference to figure 5. The interpolation is first considered in the case of baseband signals. The signals provided by the adaptive transversal filter of figure 4, are received at input of the interpolator at times nT and nT + T/2. Given a sequence of signal samples .....X[(n+1)T/2], X[nT/2], X[(n-1)T/2].... the problem is to derive an estimate of the signal X[n T/2 + T/4] Such an estimate is taken as a linear combination of the actual signal samples : The above equation simply represents the operation of a conventional transversal filter with 2L + 2 taps, with a tap spacing equal to T/2 (here 1/4800s). This filter is taken symmetrical (pk = qk), so that the problem is to find the set of coefficients pk that minimizes the mean-square error. where E represents the mathematical expectation over all possible transmitted data sequences. The computation of coefficients pk by means of the signal autocorrelation function is easy for the skilled man, and will not be developed here. Then, the passband interpolator coefficients are simply derived from the baseband ones by modulating then by the carrier frequency fc, which yields a complex filter with coefficients p(k) = p1(k) + jp2(k) and p(k) = p1(k) - jp2(k) given by p₁(k) = p k Cos 2πfc(T/4+kT/2) p₂(k) = p k sm 2πfc(T/4+kT/2) With a complex passband signal X1(nT/2)+jX2(nT/2) at the interpolating filter input, the interpolated samples X1(nT/2+T/4) + jX2(nT/2+T/4) are obtained through the following equations : Which represent the operation of a complex transversal filter with symmetric (real parts) and antisymmetric (imaginary parts) coefficients. With L=6, the coefficients p1(k) and p2(k) are given in Table I. p₁ (0) = 0.240203 p₂(0) = 0.579902 p₁ (1) = 0.172398 p₂(1) = 0.071410 p₁(2) = 0.081660 p₂(2) = -0.033825 p₁(3) = 0.016588 p₂(3) = -0.040047 P₁(4) = -0.007437 p₂(4) = -0.017953 P₁(5) = -0.006587 p₂(5) = -0.002728 p₁(6) = -0.001579 p₂(6) = 0.000654 Such an interpolator introduces a delay in the reconstruction of the signal. This delay must be equal to an integer number of symbol intervals. One dummy delay has been added for that purpose, as shown on figure 5, so that the interpolator delay equals to 4T. Interpolator 68 provides the interpolated samples X(nT/2 + T/4) on output 90 whereas samples X(nT/2) are obtained on output 92. In reference to figure 6, the sample data flow is now described from the input of the interpolator of the near echo canceller to the control signal obtained at the output of subtracter 44. Within the same baud time, two samples S(n+6,0) and S(n+6,2) are input into interpolator 68, the latter derives two interpolated and delayed samples S(n+2,1) and S(n+2,3) on one output and two only delayed samples S(n+2,0) and S(n+2,2) on the other output. The real part of the two non-interpolated samples is taken in block 100, whereas the real part of the two interpolated samples is taken in block 102. It must be noted that the rank n+6 of the sample of the interpolator, and the rank n+2 at its output indicates the delay of 4 baud times introduced by the interpolator. Then, the interpolated samples and the non-interpolated samples are interleaved by interleaving block 104 to provide the 4 real samples each baud time required for D/A conversion; that is Re S(n+2, p) with p being 0,1,2 or 3. After being added to the corresponding samples from far echo canceller in adder 26, samples Re S(n+2,p) are delayed of 2T (corresponding to the delay introduced by X/SinX filter 46) in block 54 so that within the same baud time, 4 real samples Re S(n,p) with p = 0,1,2 or 3 are provided to subtracter 44. Concomittantly with the samples Re S(n,p), A/D converter 42 produces 4 real-valued samples Z(n,p) per baud time, from which 4 error signals e(n,p) are derived in subtracter 44 : e(n,p) = Z(n,p)-ReS(n,p) (with p = 0,1,2 or 3) The near echo canceller coefficients ck and dk (see figure 4) must be adjusted to minimize the mean-square error 〈e²〉 = E〈e²(n,0)+e²(n,2)〉 where E is the mathematical expectation over all possible data sequences. It must be noted that the error signal corresponding to the interpolated samples are not necessary for adjusting the echo canceller coefficients. Figure 7 shows the sample data flow for the far echo canceller. The difference with the near echo canceller results from the fact that the far echo canceller has to eliminate echoes affected by phase-roll. The interpolated samples and the non-interpolated samples from interpolator 68 are interleaved by interleaving block 110 to provide 4 complex samples per baud time. These samples are rotated by time varying angle (n,p) (p being 1,2,3 or 4) by multiplying each complex sample S(n+2,p) by exp j(n,p) in multiplier 58. The real part of the resulting signal is taken in block 112 to provide the 4 real samples per baud time required for D/A conversion. Then, the operations are the same as for the near echo canceller case illustrated by figure 6. Nevertheless, it must be noted that the error samples (n,p) produced at the output of subtracter 44 have to be multiplied by the complex factor exp(-j) before being used as control signals for adjusting the coefficients of the far echo canceller, so as to compensate the factor exp j by which have been multiplied the samples produced at the output of the far echo canceller. All the data signal processing in the present day modems, and in particular the processing required to implement the present invention, is performed digitally under the control of a processor incorporated in the modem. Though such a processor is generally a general purpose processor, it is in the skill of the man of the art to understand that a special purpose processor can be implemented using the teachings of the present invention.

Claims: An echo cancelling device in a data transmission system connected to a two-wire line portion (18) of a transmission medium over which the transmission of an analog outgoing signal can be made simultaneously with the reception of an analog incoming signal, wherein said incoming signal is composed of a signal received from a remote system and an echo signal, produced by said transmission medium in response to said outgoing signal, said cancelling device providing a generated echo signal from said incoming signal and subtracting said generated echo signal from said incoming signal, and comprising echo signal generating means (20,22,26) for providing an estimated echo signal in digital form from the transmitted outgoing digital signal a first circuit path including a digital-to-analog converter (48) for converting said digital estimated echo signal to analog form, and analog subtracting means (52) for subtracting said analog estimated echo signal from said incoming signal, thereby providing an echo-free analog incoming signal, and a second circuit path including an analog-to-digital converter (42) for converting said analog incoming signal to digital form, and digital subtracting means (44) for subtracting said digital estimated echo signal from said digital incoming signal, thereby providing a digital signal which is used as a control signal for said echo signal generating means; said echo cancelling device being characterized in that: said first circuit path includes a filter (46) having a transfer function X/SinX, located before said digital-to-analog converter (48) for compensating the filtering effect of the form SinX/X introduced by said converter, and a delay element (54) is located between said echo signal generating means (20,22,26) and said subtracting means (44) for delaying said digital estimated echo signal of a time duration equal to the delay introduced by said filter (46) in said first circuit path. The echo cancelling device according to claim 1 wherein said outgoing signal is an analog signal resulting from a data signal having a modulation rate of 1/T, and said echo signal generating means (20,22,26) provide a number N of digital samples satisfying the sampling theorem in response to one sample received each baud time T. The echo cancelling device according to claim 2 wherein said echo signal generating means comprise a near echo canceller (20) for generating an estimated near echo signal, a far echo canceller (22) for generating an estimated far echo signal signal, and an adder (26) for providing said digital estimated echo signal to be subtracted from said incoming signal. The echo cancelling device according to claim 3 wherein both near (20) and far (27) echo cancellers are comprised of : a pass-band digital transversal filter (60) having a number of adaptive taps which depends on the total echo duration, and providing M samples of said estimated echo signal each baud time Y, and an interpolator (68) which is a digital transversal filter having taps, the value of which are predetermined, said interpolator being connected to the output of said pass-band filter and providing N-M inter polated samples each baud time T, in response to said M samples of said estimated echo signal. The echo cancelling device according to claim 4 wherein said pass-band filter (60) provides 2 samples of said estimated echo respectively at times nT and nT + T/2, and said interpolator (68) provides 2 interpolated samples respectively at times nT + T/4 and nT + 3T/4 in response to the 2 samples provided by said pass-band filter. The echo cancelling device according to any one of claims 2 to 5, wherein said modulation rate 1/T = 2400. The echo cancelling device according to any one of claims 1 to 6 wherein said second circuit path includes a programmable gain amplifier (40) located before said analog-to-digital converter (42) and said first circuit path includes a selectable gain attenuator (50) located after said digital-to-analog converter (48), the attenuation factor of which is the reciprocal of the gain of said programmable gain amplifier. The echo cancelling device according to any one of claims 3 to 7 further comprising a phase-roll tracking device (56) for generating the phase-roll value affecting said far echo signal, said phase-roll value being provided in complex form (expjo) to a multiplier (58) as a multiplying factor of the estimated far echo signal.

Inventors: BELLOC, JACQUES, GODARD, DOMINIQUE, MORLEC, EMILE, QUINTIN, MICHEL
Applicants: INTERNATIONAL BUSINESS MACHINES CORPORATION
Application year: 1987
Main classification: H04B3
IPC codes: H04L5, H04B3