Adaptive discrete-time transversal filter

Abstract: Adaptive discrete-time filters, as used, for example, in echo cancellers, comprise a control circuit for controlling the coefficients for adjusting the discrete-time transversal filter. A prior art manner of adjustment is the LMS algorithm. This algorithm is relatively simple because few computations are necessary but they may lead to poor convergence results with autocorrelated input signals. Further, the OP algorithm is known which leads to good convergence results with auto-correlated input signals but which also requires a substantial amount of computation. According to the invention an algorithm is provided for input signals, more specifically speech signals, which may be modelled with an autoregressive process of the order of p, which algorithm requires the same amount of computation as the LMS algorithm but leads to the same or better convergence results for this type of signals than the OP algorithm.

Description: The invention relates to an adaptive discrete-time transversal filter according to the preamble of Claim 1. A filter of this type is used, for example, in echo cancellers in loudspeaking telephone sets. In such telephone sets the received signal symbols reproduced by the loudspeaker of a receiving set can be received by the microphone and be re-transmitted. This may lead to unacceptable acoustic feedback ("singing"). The echo canceller in the "sending" set has now for its task to optimise the compensation for its own signal symbols forming an echo signal and received back via the microphone of the receiving set, in order to prevent these symbols reaching the loudspeaker of the sending set. The transversal filter constructs an echo cancelling signal from a linear combination of the most recently sent symbol and the N symbols sent before that symbol, where N depends on the period of time during which the symbol sent by the set itself still influences the symbol received by that set. During each send symbol interval the transversal filter receives for each of the N symbols a coefficient modification from an adaptive control circuit and the contribution of a signal to the echo signal is calculated by multiplying, for each symbol, the associated most recent coefficient by the symbol level. For a description of the adaptive coefficient control in a transversal filter the reader be referred to N.A.M. Verhoeckx et al.: "Digital Echo Cancellation for Baseband Data Transmission"; IEEE Trans. ASSP, Vol. ASSP-27, No. 6, Dec. 1979, pp. 768-781. In the adaptive control circuit described in the above article, the coefficients are updated during each send symbol interval by means of the "Least Mean Square" (LMS) algorithm. This algorithm is advantageous in that it is simple, requires little computing time and is easy to implement in hardware. However, from "Adaptive Signal Processing", by B.Widrow and S.D.Stearns, Prentice Hall; Englewood Cliffs, New Jersey, 1985, the convergence properties of the LMS algorithm are known to degrade strongly when the input signal, thus the send signal, is strongly autocorrelated. An example of a strongly autocorrelated input signal is a speech signal, so that the echo cancellation by means of the LMS algorithm meets with problems specifically with the signals transmitted between loudspeaking telephone sets. In the article entitled "An Adaptive Filtering Algorithm Using an Orthogonal Projection to an Affine Subspace and its Properties", by K. Ozeki and T. Umeda in: Electronics and Communications in Japan, Vol. 67A, No. 5, 1984, pp. 19-27, an adaptive algorithm is described which has good convergence properties also for autocorrelated input signals. As will be further explained hereinbelow, however, the disadvantage of this algorithm is the fact that the number of computations required for each new value of the coefficients is more than twice as large as with the LMS algorithm, which considerably augments the necessary amount of hardware and the necessary computing time. For example, from "Linear Prediction of Speech" by J.D. Markel and A.H. Gray Jr.; Springer Verlag, 1976, it is known that the unvoiced part x[k] of a speech signal can be approached by an autoregressive model of the order of p (AR(p)) given by: where n[k] is a random signal in which on average the various elements of n[k] do not show any mutual correlation. It is an object of the invention to provide an adaptive discrete-time transversal filter for input signals of the AR(p) type in which during each send symbol interval the coefficients can be computed by means of an algorithm which has convergence properties outperforming those of the algorithm described in the article by K.Ozeki and T.Umeda and which furthermore has a complexity, that is to say, a number of computations necessary for each coefficient, which is comparable to that of the LMS algorithm. For this purpose, the invention provides an adaptive discrete-time transversal filter having the properties featured in the characterising part of Claim 1. The invention will be further explained in the sequel with reference to the drawings, in which Figs. 1 A, B, C, show block diagrams of a prior art echo canceller; Figs. 2 A, B show diagrams for explaining the orthogonal projection method; Figs. 3 A, B, C show block diagrams of an adaptive filter operating in accordance with an orthogonal projection method for signals of the AR(p) type, Fig. 4 shows a block diagram of an adaptive filter operating in accordance with the efficient orthogonal projection method according to the invention, Fig. 5 shows a graphic representation of the results achieved with the various filters. Fig. 1A shows a block diagram of a prior art echo canceller in which an adaptive filter according to the invention can be used. A discrete-time input signal x[k] is reflected as an echo signal e[k] through an echo path referenced 1 in the Figure and having an impulse response h. In the case of a connection between loudspeaking telephone sets this echo path is formed by the send path, by the acoustic feedback between the loudspeaker of the receiving set and the microphone thereof and by the send path back to the sending set. In an adder 2 a noise signal s[k] is added to this echo signal. This noise signal represents the disturbing signals not caused by the echo signal and will generally be negligibly small with respect to the echo signal. An adaptive filter, comprising a transversal filter unit 3 used for convolution of signal x[k] with coefficients w[k] and a coefficient control circuit 4, produces an echo signal estimate ê[k] which is subtracted in an adder 5 from the received signal e[k]+s[k], after which a residual signal r[k] remains. The transversal filter 3 has a structure known per se and shown in Fig. 1B. It comprises N sections each of which, with the exception of the first section, including a delay stage 31 i (i = 1, 2, ..., N-1) to delay the input signal of this stage over a send symbol interval. The undelayed input signal of the first section and the output signals of each of the delay stages 31 i are multiplied by a coefficient w i [k]; (i = 0, 1, 2, ..., N-1) in a dedicated multiplier 32 i (i = 0, 1, 2, ..., N-1). The output signals of all the multipliers 32 i are added together in a summing circuit 33 to form the echo cancelling signal ê[k]. An algorithm frequently used for the continuous adaptation of the coefficients w i [k] is the Least Mean Square (LMS) algorithm, in which w i [k+1] is determined by the formula: w i [k+1] =w i [k]+ 2α x[k-i]r[k] NP x [k] with i= 0,1,2....N-1 Fig. 1C shows a manner in which this algorithm may be realised. For this purpose, the coefficient control circuit 4 comprises N-1 delay stages 41 i to delay the input signal of each stage over a send symbol interval. In practice, the delay lines 31 and 41 will be combined to a single delay line. In a dedicated multiplier 42 i the input signal x[k] and the output signal of the delay stage 41 i are multiplied by the output signal of a multiplier 43. This multiplier 43 multiplies the residual signal r[k] by a factor 2α/NP x [k]. The factor P x [k] is an estimate of the power of the input signal x[k] and is used for normalising the successive values of w i [k]. α is known as the adaptation constant, with 0 < α < 1. In an adder 45 i the output signal of the multiplier 42 i is added to w i (k-1), the previous value of w i [k], produced by a delay stage 46 i . The output signals of the delay stages 46 i satisfy the formula (0), as can simply be verified. The coefficients are adapted according to this formula as long as there is a correlation between x[k-i] and r[k]. In vector notation the LMS algorithm can be represented by: w [k+1] = w [k]+ 2α x [k]r[k] ∥ x [k]∥² where Here T denotes the transpose of a vector and <.,.> is the symbol for the inner product of two vectors. The residual signal r[k] can be written as: r[k] = x T [k]. d [k] + s[k] = < x [k]. d [k] > + s[k] where d [k] is defined as: d [k] = h -w[k]. in which h T = (h₀, ...., h n-1 ) In formula (1), ∥ x [k]∥² is representative of the power normalisation in the LMS algorithm and comparable to NP x [k] in formula (0). When implementing the LMS algorithm an efficient estimate P x [k] of 1 N ∥ x [k]∥² is obtained by reiterating the recursion: P x [k+1]=γP x [k] + (1-γ)x²[k] with 0 < γ < 1 This is known per se from the article entitled "Convergence Analysis of a Frequency Domain Adaptive Filter with Exponential Power Averaging and Generalized Window Functions" by P.Sommen et al. in IEEE Transactions on CAS; Vol. CAS 34, No. 7, July 1987. When using (5) and taking the number of multiplications, to be referenced "MD" hereinafter, as a rough measure for the complexity of an algorithm, it appears that a number of MDs of the order of 2N are necessary for calculating during each sample interval the value of ê[k] with the LMS algorithm and adapting the filter coefficients. As has been stated hereinbefore, one of the main objections to the LMS algorithm is that the convergence properties may degrade considerably if the input signal x[k] is autocorrelated. An example of such an autocorrelated signal is a speech signal whose unvoiced part, as has also been stated hereinbefore, may be approached with an autoregressive signal x[k] of the order of p (AR(p)) which, in vector notation, may be characterised according to: where n T [k] = (n₀[k], ..., n N-1 [k] represents a random signal. This implies that for all |i| ≧ 1 it holds that n[k] is statistically independent of n[k-i]. From the above article by K.Ozeki and T.Umeda an adaptive algorithm is known with which the convergence properties may be improved with respect to the LMS algorithm in the case of a strongly autocorrelated input signal. This algorithm is known by the name of Orthogonal Projection method (to be referenced the OP method hereinafter) and will be explained more generally in the sequel for projections in one and two dimensions and subsequently be described for use with signals of the AR(p) type. The one-dimensional OP method will be explained with reference to Fig. 2A while assuming that s[k] = 0, which is often a permissible assumption for applications in acoustics as has been indicated hereinbefore. Because of the projection of the difference vector d [k] on the vector x [k], d [k] is resolved into: d [k] = d L [k] + d Δ [k] where d L [k] is orthogonal and d Δ [k] is parallel with x [k]. This implies that: < x [k], d L [k] > = 0 and d Δ [k] = c. x [k] where c is a random scale factor. By substituting the formulae (8) into formula (3), (with s[k]=0), we will obtain: r[k] = < x [k], d [k] > = < x [k], d Δ [k] > = c.∥ x [k]∥² From this equation the scale factor c can be computed and together with formula (8) the parallel component d Δ [k] may be written as: d Δ [k] = x [k]r[k] ∥ x [k]∥² For reducing the residual signal r[k] it is important to change the length and rotation of the vector d [k] in a manner such that it becomes shorter and more orthogonal with respect to x [k]. These conditions ensue directly from formula (3). This may be achieved by subtracting a small part from d Δ [k], as shown in Fig. 2A. Thus, the following will hold: d [k+1] = d [k]- 2α d Δ [k] = d [k]- 2α x [k]r[k] ∥ x [k]∥² . In combination with the definition of the difference vector according to the formula (4), this formula (10) will lead to formula (1), so that the LMS algorithm will obviously be equivalent to the one-dimensional elaboration of the OP method. When x[k] is an uncorrelated signal, the vectors x [k] and x [k-1] are orthogonal. In general this will not be the case for input signals such as speech. Consequently, when implementing the above one-dimensional method the successive adaptations of w [k] may affect each other, which may lead to a poor convergence result. In order to find a solution to this problem the above article by k.Ozeki and T.Umeda proposes to extend the OP method to various dimensions. For simplicity only the two-dimensional method will be discussed hereinafter, which means that the projection will be made on a plane rather than on a line. Fig. 2B shows in what way, by using a Gramm-Schmidt procedure, an orthogonal basis is obtained for the plane which is spanned by the vectors x [k] and x [k-1]. This is effected by leaving x [k-1] unchanged and by constructing [k] according to: where [k] is orthogonal to [k-1] and Subsequently, the projection is made of d [k] on the plane spanned by the two orthogonal vectors x [k-1] and [k]. This is done in such a way that d L [k] is orthogonal to both [k] and x [k-1], so the following will hold: Alternatively, d Δ [k] may be written as the linear sum of [k] and x [k-1], that is to say: where c₀ and c₁ are scale factors. In order to be able to compute these scale factors two "new" residual signals are defined while assuming that s[k] = 0: In this context it should be observed that with the aid of the formulae (3), (11) and (14) and assuming that s[k] = 0, [k] can be rewritten as: where r[k] is equal to the residual signal according to formula (3), whereas r₁[k-1] is the inner product of the previous signal vector x [k-1] and the current difference vector d [k]. In the same way as in the case of the one-dimensional computation described hereinbefore, the following expressions for the scale factors c₀ and c₁ will now be obtained: By updating the difference vector in the opposite direction of d Δ [k] by means of: d [k+1] = d [k] - 2α d Δ [k] and by rewriting the above formulae, the following OP algorithm will be obtained: The algorithm (18) is in essence equivalent to the two-dimensional algorithm described in the above article by K. Ozeki. With each iteration k the OP algorithm provides an update in two orthogonal directions. Compared to the LMS algorithm this may generally lead to better convergence properties for autocorrelated input signals. However, it can be demonstrated that the number of multiplications, MDs, for the OP algorithm in the two-dimensional case is of the order of 5N, so that for obtaining proper convergence with autocorrelated (speech) signals a considerably larger number of computations is necessary, and consequently, considerably more complex and thus more expensive hardware. As stated hereinbefore, signals that may be modelled by means of an AR process, form an important category of input signals and the OP method will be finalised hereinbelow for this type of signals. For simplicity it will further be assumed that the input signal can be modelled by means of an AR(1) process, thus: x [k] = a x [k-1] + n [k] Subsequently, [k] is defined as: where â is an estimate of the constant a. By calculating the inside product < x [k], x [k-1] > for an AR(1) process according to formula (19) and assuming that n [k] is uncorrelated, we will obtain: < x [k], x [k-1] > = a∥ x [k-1∥² This clearly shows that a possible estimate of â is provided by: â = < x [k], x [k-1] > ∥ x [k-1]∥² By substituting this value of â in formula (20), the same construction of [k] as given by formula (12) will be obtained. Using formula (22) will demonstrate that the following holds for an AR(1) process: In a worded version this means that when constructing [k] by means of an AR(1) process as given in formula (11), then [k] will be orthogonal to all previously constructed vectors [k-i]. The aforesaid now proves that in the case of AR(1) input signals, only the first part of the OP algorithm according to formula (18) needs to be used and the second part can be omitted, because this second part has only a disturbing effect. This will lead to the following OP algorithm for an AR(1) process: It should be observed that from "A Geometric Interpretation of Adaptive Algorithms" by K. Kurosawa and T. Furusawa in Globecom Conference, Tokyo, Japan, 15-18 November 1987, pp. 49.7.1 - 49.7.5, an adaptive algorithm is known resembling formula (24). However, with this known algorithm, r[k] instead of [k] is used as a result of which this known algorithm possesses poor properties of convergence. The algorithm according to formula (24) changes the difference vector at each iteration k in a direction which is orthogonal with respect to all previous updates of the difference vector. This creates a difference with the OP algorithm, whereas the plane spanned by [k] and x [k-1] need not be orthogonal to the plane of the previous update spanned by [k-1] and x [k-2]. The number of MDs necessary for this OP algorithm for AR(1) signals is of the order of 4N, so that only a limited simplification is obtained. Since in practice â varies with time, in the sequel â will be given as a function of time and represented by â[k]. In "An Adaptive IIR Algorithm with Unimodal Performance Surfaces" by S. Karni and G. Zeng in IEEE Trans. on ASSP, Vol. ASSP 36, No. 2, February 1988, pp. 286-287, is described an algorithm having LMS properties which algorithm can be used for computing â[k]. In the present case this algorithm can be formulated as: where β is the adaptation constant. It can be proved that this algorithm converges to a same error measure as the one given by formula (22). Figs. 3A to 3C show an implementation of the algorithm according to formula (24). Formula (24) can be rewritten as: From formula (20) it follows that: and from the formulae (15) and (22) that: whereas, finally, according to formulae (4), (14) and (22) and because x T [k-1]. h = e[k-1] it holds that: Fig. 3A shows a configuration of an echo canceller bearing similarity to that of Fig. 1A and wherein, for that matter, the same components have been referenced by the same Figures, but wherein the coefficient control circuit 4 is constructed in accordance with the OP algorithm for AR(1) signals. For this purpose, a pair of circuits 48 and 49 of which a possible structure is shown in the Figures 3B and 3C is extended to the coefficient control circuit 4 which, for the rest, may have the same structure as the one shown in Fig. 1C. Circuit 48 provides the conversion from x [k] to [k] and circuit 49 the conversion from r [k] to [k]. To this end circuit 48 comprises N sections, each including a delay stage 50 i with (i = 0, 1, 2, ..., N-1), a multiplier 51 i and an adder 52 i . In each delay stage 50 i the input signal x[k] is delayed over a symbol interval. In each multiplier 51 i the output signal of the delay stage 50 i is multiplied by -â[k] and in each adder 52 i the output signal of the multiplier 51 i is summed with the input signal of the delay stage 50 i , as a result of which, as can be simply derived, the desired conversion from x[k] to [k] is obtained. Fig. 3C shows in more detail the structure of circuit 49. The latter comprises a convolution circuit 53 known per se, for example, a transversal filter, to produce the convolution of w[k] with x[k-1]. The output signal of circuit 53 is substracted from the signal e[k-1] in an adder 54, whose output signal is subsequently multiplied by -â[k] in a multiplier 55, while finally the desired expression for [k] according to formula (28) is obtained by adding to r[k] the output signal of multiplier 55 in an adder 56. The Figs. 3A-C also demonstrate that for the computation of the OP algorithm for AR(1) signals according to formula (24) a complex and hence costly circuit is necessary which in integrated form is bulky and hence less attractive. As already mentioned in the opening paragraph, it is an object of the invention to simplify an OP algorithm for AR(1) signals in a manner such that it has the complexity of the order of magnitude of that of the LMS algorithm while retaining the advantageous convergence properties of the OP algorithm for AR(1) signals. This reduction of complexity is realised in two steps. In the first place the extra convolution in the computation of r₁[k-1] according to formula (14) is replaced with a single multiplication. To this end the following approximation is used for small values of α, while assuming that the adaptations of the coefficients are orthogonal on average: d [k] ≈ (1 - 2α N ) d [k-1) The fact that this assumption is permissible may be concluded from the above article by K. Kurosawa and T. Furusawa. Consequently, r₁[k-1] can be written as: r₁[k-1] = x T [k-1] d [k] ≈ (1 - 2α N ) x T [k-1] d [k-1] = (1 - 2α N )r[k-1] which, together with formula (28), leads to the following approximate [k] of [k]: Secondly, it is assumed that â[k] ≈ ... ≈ â[k-N-1]. This is permitted because â[k] varies very slowly with time. Assuming this, an approximate [k] of [k] can, when using formula (20), be written as: so that: Consequently, not more than a single multiplication and a delay line of N stages is necessary for computing [k], as will be further explained hereinbelow. From the formulae (22) to (24) and (30) to (34) the efficient OP algorithm for AR(1) signals according to the invention will follow: where: The complexity of this algorithm is of the order of 2N MDs, so that the above objects are achieved. The unvoiced part of speech can generally be suitably modelled with an AR(p) process in which p ≈ 8-12. The formulae (35) and (36) showing the algorithm according to the invention for AR(1) signals may simply be converted into formulae that hold for an arbitrary value of p. For an arbitrary value of p, formula (35) remains unchanged, but it holds that: Even for p > 1 it holds that the computational complexity of successive values of w[k] remains of the order of 2 MDs, whereas the convergence properties for autocorrelated input signals is yet highly satisfactory. Fig. 4 shows an echo canceller operating on the basis of the algorithm according to the invention, in which canceller the same components have been referenced the same as the components according to Figs. 1 and 3. In this circuit the values of w[k] are computed on the basis of the following equations which can directly be derived from the formulae (35) and (36): where [k] satisfies the formula (36) or (37) respectively, for p = 1 and p > 1 and where: which follows directly from the formulae (34) and (37). As appears from Fig. 4 not more than a single section of the circuit shown in Fig. 3b is necessary for computing [k] in circuit 48′, which is to say, a single delay line 50, a single multiplier 51 and a single adder 52. The circuit 49 for computing [k] comprises a delay stage 57 to delay the signal r[k] over one symbol interval, a multiplier 58 to multiply the output signal of stage 57 by 1- 2α N′ the multiplier 55 coupled to the output of the multiplier 58 and the adder 56 for summing the output signal of the multiplier 55 and the signal r[k]. It will be evident that this is a considerably simpler and hence more attractive configuration for an echo canceller than the one according to Figs. 3, whereas the convergence obtained for AR(1) signals is virtually the same. Fig. 5 shows the results obtained with the echo cancellers according to the Figs. 1, 3 and 4. In this Figure the number of iterations is shown along the horizontal axis, each line of the scale division representing 2000 iterations, and the obtained relative error measure in dB is shown along the vertical axis. The chosen values were 0.25 for the adaptation constant α, 0.01 for β, 0.9 for a₁, while N was equal to 200. In this Figure curve A shows the error measure that can be obtained with the aid of LMS algorithm in the case of an uncorrelated input signal, whereas curve B shows the error measure that can be obtained with the aid of the LMS algorithm in the case of an input signal of the AR(1) type. From these two curves it appears to what large extent the convergence behaviour of the LMS algorithm is degraded if the input signal is correlated. The curves C and D in Fig. 5 show for an input signal of the AR(1) type the error measure that can be obtained with the aid of the OP algorithm according to formula (23) (Curve 5C) and the error measure that can be obtained with the aid of the algorithm according to the invention (Curve 5D). Comparison of these two curves with curve A demonstrates that both with the OP algorithm and with the algorithm according to the invention, with an input signal of the AR(1) type, a measure and a convergence speed are obtained comparable to those of the LMS algorithm in the case of an uncorrelated input signal whereas, however, the algorithm according to the invention can be implemented in a considerably simpler manner as has been shown hereinbefore with reference to Fig. 4.

Claims: Adaptive discrete-time filter having an impulse response h[i] to form a cancelling signal ê[k] from N synchronous samples of an input signal x[k], this filter comprising a transversal filter with adjustable coefficients w i with i = 0, 1, 2, ..., N-1 for realising the said impulse response, means for adaptively adjusting the filter coefficients w i and means for forming a residual signal r[k] from the cancelling signal ê[k] and a signal e[k] + s[k], where e[k] is representative of an echo signal and s[k] is a noise-like signal, characterised in that the synchronous samples are of the type which can be represented by an autoregressive model of the order of p in accordance with the formula where n[k] is a an uncorrelated white noise (random) signal and in that means are provided for determining the coefficients w i during successive sample intervals k in accordance with the formula where and where α is an adaptation constant with 0 < α < 1, [k] is an estimate of the power of x[k] and â j [k] is an estimate of a parameter a j of the autoregressive model. Adaptive discrete-time filter as claimed in Claim 1, characterised in that for [k] it holds that: where γ is a constant with 0 < γ < 1. Adaptive discrete-time filter as claimed in Claim 1 or 2, characterised in that for the estimate â j [k] of the parameter a j it holds that: for j = 1, 2, ..., p, where β is a constant.

Inventors: SOMMEN PETRUS CHRISTIANUS WILH, VAN VALBURG CHRISTINUS JOHANNE, SOMMEN, PETRUS CHRISTIANUS WILHELMUS, VAN VALBURG, CHRISTINUS JOHANNES
Applicants: PHILIPS ELECTRONICS NV, PHILIPS ELECTRONICS N.V.
Application year: 1990
Main classification: H03H21
IPC codes: H04B3, H03H21, H03H15