Background of the Invention
The present invention relates generally to echo cancellers for a digital communications system, and more particularly to an echo canceller capable of cancelling echoes having a long tail portion.
Two-wire subscriber lines employing an echo canceller are known in the art. The echo canceller of this type has a nonrecursive, or finite impulse response (FIR) filter. Because of the finite number of tap weights, the whole shape of an echo cannot completely be cancelled if it has a long tail portion. A great number of tap weights must be required for complete cancellation of echoes. It is generally known that such a long-tail echo occurs due to the high-pass characteristic of a hybrid, or two-wire four-wire conversion circuit. A typical waveform of such long-tail echoes is one that adopts a negative exponential curve. While the main portion of such a waveform can be cancelled, the remaining tail portion lies outside the range of tap weight control of the FIR filter and remains uncancelled, causing residual echoes to accumulate if .tau.> N1, where it is the length of an echo, T is a symbol interval and N is the number of tap weights.
European Patent Application 0 281 101 (published on Jan. 31, 1990) discloses an echo canceller which is capable of cancelling long-tail echoes. However, it needs two recursive filters (Infinite Impulse Response filter) to form a tall canceller in addition to a nonrecursive filter.
Summary of the Invention
It is therefore an object of the present invention to provide an echo canceller capable of cancelling long tail echoes with a simplified tail canceller.
According to a first aspect of the invention, an echo canceller comprises a finite impulse response filter (FIR) and a tail canceller. The finite impulse response filter comprises a tapped-delay line connected to an incoming port of a hybrid, or two-wire four-wire conversion circuit, a plurality of first tap-weight multipliers connected respectively to the successive taps of the delay line for respectively multiplying successively delayed digital symbols with first tap-weight coefficients and an adder for summing the outputs of the first tap-weight multipliers. The tail canceller comprises an infinite impulse response filter having a second multiplier for recursively multiplying an output digital symbol from the tapped-delay line with a second, attenuation coefficient R. A third multiplier is included in the tail canceller for multiplying an output digital symbol of the IIR filter with a third, tap-weight coefficient C.sub.i and applying the multiplied output symbol to one input of the adder to cause it to produce a replica of a echo symbol which is subtracted from digital symbols supplied from an outgoing port of the conversion circuit, producing a residual echo symbol. A symbol appearing at the output end of the tapped-delay line is further delayed on the one hand, and multiplied with the second, attenuation coefficient R on the other. The difference between the delayed and multiplied symbols is detected and further multiplied with a coefficient K which varies as a function of the third, tap-weight coefficient C.sub.i to generate a multiplied difference. The first tap-weight coefficients of the FIR filter are derived from correlations between the residual echo symbol and the successively delayed digital symbols on the tapped-delay line. The second, attenuation coefficient R is derived from a correlation between the residual echo symbol and the multiplied difference. The third, tap-weight coefficient C.sub.i is derived from a correlation between the residual echo symbol and a digital symbol from the end of the tapped-delay line.
According to a second aspect of the present invention, the tail canceller comprises a second multiplier which multiplies an output digital symbol from the end of the tapped-delay line of the FIR filter with a second, tap-weight coefficient C.sub.i, and an infinite impulse response filter having a multiplier for recursively multiplying the output of the second multiplier with a third, attenuation coefficient R and applying the multiplied output to one input of the adder to cause it to produce a replica of an echo symbol which is subtracted from digital symbols supplied from the outgoing port of the conversion circuit, producing a residual echo symbol. A digital symbol a.sub.n-N from the tapped-delay line of the FIR filter is further delayed and multiplied with the coefficient K to produce a symbol K.times.a.sub.n-N-1. The second, tap-weight coefficient C.sub.i is derived from a correlation between the residual echo symbol and a digital symbol from the tapped-delay line, and the third, attenuation coefficient R is derived from a correlation between the residual echo symbol and the symbol K.times.a.sub.n-N-1.
The coefficient K is a signum function of coefficient C.sub.i, i.e., sgn(C.sub.i) which is +1 when C.sub.i is greater than zero and -1 when C.sub.i is smaller than zero, or alternatively, the reciprocal of C.sub.i.
Brief Description of the Drawings
The present invention will be described in further detail with reference to the accompanying drawings, in which:
FIG. 1 is a block diagram of an echo canceller according to a first embodiment of the present invention;
FIGS. 2 and 3 are block diagrams of alternative forms of the first embodiment;
FIGS. 4A and 4B show details of the correlators of FIG. 1;
FIG. 5 is a graphic representation of a computer simulation of the first embodiment;
FIG. 6 is a block diagram of an echo canceller according to a second embodiment of the invention; and
FIG. 7 is a graphic representation of a computer simulation of the second embodiment.
Detailed Description
Referring now to FIG. 1, there is shown an echo canceller according to a first embodiment of the present invention. The echo canceller is shown connected in a four-wire section of a two-wire four-wire conversion circuit, or hybrid 1 of a digital transmission system. Hybrid 1 has a two-wire port 2 connected to a non-repeatered transmission line (usually a subscriber line), an incoming two-wire port 3 for receiving an incoming digital symbol a.sub.n from the receive end of a repeatered transmission line and an outgoing two-wire port 4 at which an outgoing, echo-containing digital symbol y.sub.n appears.
The echo canceller of this invention generally comprises a nonrecursive, or finite impulse response (FIR) filter 6 for cancelling a greater part of an echo and a tail canceller 7 which are cascaded from the incoming port 3 to produce a signal at the input of a subtractor 23 that cancels the whole waveform of an echo generated at the outgoing port 4 as a result of trans-hybrid coupling between the ports 3 and 4. The output of subtractor 23 represents a residual echo symbol e.sub.n, which appears at an output terminal 5 to which the transmit end of a non-repeatered transmission line is connected.
FIR filter 6 includes a series circuit of delay elements, or shift registers 8-1 through 8-N for successively delaying an incoming digital symbol a.sub.n for interval T which is the reciprocal of the symbol rate of the digital signal, so that at given instant of time, a series of successively delayed digital symbols a.sub.n-1, a.sub.n-2, a.sub.n-3 . . . a.sub.n-N appear respectively at the outputs of shift registers 8-1, 8-2, 8-3, . . . and 8-N. The input terminals of shift registers 8 are connected respectively to tap-weight multipliers 9-1 through 9-N respectively having tap-weight coefficients C.sub.1 through C.sub.N. These tap-weight coefficients are supplied respectively from correlators 10-1 through 10-N which are connected to the inputs of shift registers 8-1-8-N for detecting correlations between successively delayed digital symbols and residual echo symbol e.sub.n from subtractor 23 The output digital symbols from tap-weight multipliers 9-1-9-N are summed by an adder 11.
The output of shift register 8-N is supplied to the input of tail canceller 7 which comprises a recursive, or infinite impulse response filter 24 formed by an adder 12, a shift register 13 connected to the output of adder 12 to introduce a delay time T and a multiplier 14 which multiplies the output of shift register 13 with a loop attenuator coefficient R supplied from a correlator 22. Digital symbol a.sub.n-N from shift register 8-N is summed with the output of multiplier 14 to produce an output symbol u.sub.n which is supplied to a tap-weight multiplier 15 having a tap-weight coefficient C.sub.1 supplied from a correlator 16. Correlator 16 detects correlation between residual echo symbol e.sub.n from subtractor 23 and digital symbol u.sub.n to adaptively control the tap weight of multiplier 15. The digital symbol C.sub.l x u.sub.n from multiplier 15 is supplied to adder 11 as an output digital symbol of tall canceller 7 and summed with the outputs of multipliers 9-1-9-N of FIR filter 6. Alternatively, the input signal of correlator 16 can be taken from the output of shift register 8-N as illustrated in FIG. 2, instead of from the output of adder 12.
The digital symbol a.sub.n-N from shift register 8 N is also supplied to a shift register 17 to produce a delayed symbol a.sub.n-N-1 as well as to a multiplier 18 to multiply a.sub.n-N by the loop attenuation coefficient R from correlator 22. A subtractor 19 is connected to the outputs of shift register 17 and multiplier 18 to generate a digital symbol representing the difference between the delayed symbol a.sub.n-N-1 and the multiplied symbol R.times.a.sub.n-N, i.e., a.sub.n-N-1 -R.times.a.sub.n-N. This output of subtractor 19 is multiplied by a multiplier 20 with a coefficient K which varies as a function of coefficient C.sub.i. Specifically, the coefficient K is a polarity signal "+1" or "-1" depending on the tap-weight coefficient C.sub.i from correlator 16. To this end, a signum function generator 21 is connected to the output of correlator 16 to derive the signal sgn(C.sub.l), i.e., a polarity bit "1" it the output of correlator C.sub.l is greater than 0 or a polarity bit "-1" if C.sub.l is smaller than 0. Therefore, the output of multiplier 20 is represented by (a.sub.n-N-1 -R.times.a.sub.n-N) or-(a.sub.n-N-1 -R.times.a.sub.n-N), which is supplied to a first input of correlator 22 whose second input is supplied with the residual echo symbol e.sub.n from subtractor 23.
Therefore, the tap-weight coefficient C.sub.i of multiplier 15 is adaptively controlled by the correlation between e.sub.n and u.sub.n and loop attenuation coefficient R of multipliers 14 and 18 is adaptively controlled by the correlation between e.sub.n and (a.sub.n-N-1 -R.times.a.sub.n-N) sgn(C.sub.i). Alternatively, the multiplier 20 can be controlled with the reciprocal of the tap-weight coefficient C.sub.i, i.e., 1/C.sub.i, derived by a circuit 25 as illustrated in FIG. 3, to apply a signal (a.sub.n-N-1 -R.times.a.sub.n-N)/C.sub.i to correlator 22.
Details of correlators 16 and 22 are shown in FIGS. 4A and 4B, respectively. In FIG. 4A, correlator 16 comprises a multiplier 50 which multiplies residual echo symbol e.sub.n from subtractor 23 with a symbol a.sub.n-N from shift register 8-N. The output of multiplier 50 is further multiplied by a multiplier 51 with an adjustment constant .alpha..sub.i and supplied to a first input of an adder 52. A shift register 53 is connected to the output of adder 52 to delay its output symbol for a unit-time delay to produce a coefficient C.sub.i.sup.(n) and applies it to the second input of adder 52, producing a coefficient C.sub.i.sup.(n+1) =C.sub.i.sup.(n) +.alpha..sub.i .times.e.sub.n .times.a.sub.n-N at the tap weight control input of multiplier 15.
In FIG. 4B, correlator 22 comprises a multiplier 60 which multiplies residual echo symbol e.sub.n with the output of multiplier 20 which is represented by (a.sub.n-N -R.sup.(n) .times.a.sub.n-N) sgn(C.sub.i.sup.(n)). The output of multiplier 60 is further multiplied by a multiplier 61 with an adjustment constant .alpha..sub.r and supplied to a first input of an adder 62. A shift register 63 is connected to the output of adder 62 to delay its output symbol for a unit-time delay to produce a coefficient R.sup.(n) and applies it to the second input of adder 62, producing a coefficient R.sup.(n+1) =R.sup.(n) +.alpha..sub.r .times.e.sub.n (a.sub.n-N -R.sup.(n) .times.a.sub.n-N) sgn(C.sub.i.sup.(n)) at the tap weight control input of multiplier 14.
The following is a quantitative analysis of the echo canceller of FIG. 1 that is supposed to cancel a negative exponential echo tail generated as a result of the low-frequency cut-off characteristic of hybrid 1.
Assume that the following relation holds with respect to the incoming digital symbol a.sub.n :
where, a.sup.2 represents the power of input digital symbol, .delta..sub.nn' represents Kronecker's delta. By denoting the echo's tail portion as
where, h.sub.N : symbol value at t=NT; and
R.sub.0 : echo tail decaying factor of IIR filter 24 Since C.sub.i.sup.(n+1) and R.sup.(n+1) are given by,
where, (n) represents the n-th corrected symbol value, the residual echo e.sub.n is given by: ##EQU1## Note the first term of Equation (4) represents the error associated with the FIR filter 6. The expectations of the values C.sub.i.sup.(n) and R.sup.(n) are given by:
where, .beta..sub.i 1-.alpha..sub.i a.sup.2,.beta..sub.r 1-.alpha..sub.r a.sup.2 .vertline.h.sub.N .vertline., where 0<.beta..sub.i,.beta..sub.r <1.
With n approaching infinity, the values C.sub.l.sup.(n) and R.sup.(n) respectively converge to the following: ##EQU3## These values of convergence completely cancel the tail portion of echo and agree with the optimum values of solution.
Convergence can be demonstrated for echoes having any tail portion by a computer simulation under condition that the low cut-off frequency of hybrid 1 corresponds to 1/200 of the symbol rate and that the main part of an echo is cancelled with FIR filter 6 having N=32 taps, and the tail portion of the echo is assumed to have the following parameters:
The input digital symbol is represented by a random sequence of binary +1 and -1 and the following initial values are used:
With the computer simulation, coefficients C.sub.i and R were converged
respectively to -0.0118 and 0.96907. FIG. 5 illustrates how the average value of residual echo .epsilon. E[e.sub.n.sup.2 ] converges to a value lower than -120 dB Therefore, the echo canceller according to the first embodiment of this invention effectively cancels long-tail echoes using only one recursive filter 24.
A further circuit simplification is achieved in a manner as shown in FIG. 6. In this modification, tail canceller 7A comprises a tap-weight multiplier 30 connected to the output of shift register 8-N, and an IIR filter 40 formed by an adder 31 having one input connected to the output of adder 30, a shift register 32 for delaying the output signal from adder 31 for a unit delay time T, and a second tap-weight multiplier 33 connected between the output of shift register 32 and the second input of adder 31. The tap weight of first multiplier 30 is controlled by a signal representing the tap weight coefficient C.sub.l from a correlator 34 which detects correlation between residual echo symbol e.sub.n and the digital symbol a.sub.n-N appearing at the input of multiplier 30. The tap weight of second multiplier 33 is controlled by a signal representing the loop attenuation coefficient R supplied from a correlator 35 which detects correlation between the residual echo symbol and the output of a multiplier 37. The output of adder 31 is further connected to adder 11 where the output digital symbol of tail canceller 7A is summed with the outputs of tap-weight multipliers 9-1-9-N.
Tail canceller 7A further includes a shift register 36 for delaying the digital symbol a.sub.n-N from shift register 8-N for a unit delay time T. A signum function generator 38 is connected to the output of correlator 34 to supply a polarity bit sgn(C.sub.i) to multiplier 37. The output shift register 36 is multiplied with this polarity bit sgn(C.sub.l) to supply a signal (a.sub.n-N-1) sgn(C.sub.l) to correlator 35 to detect correlation between (a.sub.n-N-1) sgn(C.sub.i) and e.sub.n. Correlators 34 and 35 are similar to correlators 16 and 22 of the previous embodiment, respectively.
Therefore, the following relations result from the outputs of correlators 34 and 35:
Residual error is therefore given by: ##EQU4## where, .pi..sub.m.sup.(n) R.sup.(n) R.sup.(n-1). . . R.sup.(n-m+1) The first term of Equation (13) is the error of the nonrecursive filter, and h, (l=0, 1, . . .) represents the echo impulse response. The expectation values of C.sub.l.sup.(n) and R.sup.(n) are assumed as follows:
R.sup.(n) coverges to R.sub.O. The tail canceller 7A of FIG. 6 is also capable of completely cancelling the tail portion of an echo. Using the following parameters,
The foregoing description shows only preferred embodiments of the present invention. Various modifications are apparent to those skilled in the art without departing from the scope of the present invention which is only limited by the appended claims. Therefore, the embodiments shown and described are only illustrated, not restrictive.