Echo cancellation through auxiliary-vector filtering
View Patent ↗A digit signal processing system may include a near end and a far end connected by a pair of signal transmission paths. A signal processing may be located at the near end through which signal commands are transmitted to the far end. A signal transducing device may be located at the far end to receive the signal commands and to transmit to the near end signals indicating the state of the signal transducing device. A signal canceller may be operatively associated with the signal processor to subtract undesired signals from the received signals. The signal canceller may employ Auxiliary-Vector filtering.
1. A digital signal processing system comprising:
a) a signal processor adapted to be connected to a pair of signal transmission paths and through which signal commands on one of the paths are transmitted; and
b) a signal canceller operatively associated with the signal processor to subtract echo signals from received signals on the other of the paths, the signal canceller employing Auxiliary-Vector filtering at all times during operation of the signal canceller,
wherein the signal canceller contains an array of filter coefficients and wherein the Auxiliary Vector filtering multiplies the signals by the array of filter coefficients and substracts the result from the transmitted signal command.
2. The system according to claim 1 , wherein the signal canceller is adaptive in being capable of changing the filter coefficients while receiving data from the transmitted signal commands and from the received signals.
3. The system according to claim 1 , wherein the filter coefficients are obtained using the algorithm:
R=Y T *Y
V=Y T *X
G= ( R*V −( V T *R*V ) *V )/norm( R*V −( V T *R*V ) *V )
U= ( G T *R*V )/( G T *R*G )
w=V−U*G
where the vector Y contains N values of the received signal y[n] where N is the number of filter coefficients, X contains one valtie x[n] of the transmitted signal commands, G is the Auxiliary Vector, U is a scalar which minimizes output variances of the filter coefficients and w is a vector containing the filter coefficients.
4. The system according to claim 1 , wherein voice signals are processed.
5. The system according to claim 1 , wherein the signal processor is the digital signal processor of a voice mail system, and wherein the signal commands include voice mail prompts.
6. A digital signal processing system comprising:
a) a near end and a far end connected by a pair of signal transmission paths;
b) a signal processor at the near end through which signal commands are transmitted from the near end to the far end;
c) a signal transducing device at the far end to receive the signal commands and to transmit to the near end signals indicating the state of the signal transducing device; and
d) a signal canceller operatively associated with the signal processor to subtract echo signals from the received signals, the signal canceller employing Auxiliary-Vector filtering at all times during operation of the signal canceller,
wherein the signal canceller contains an array of filter coefficients and wherein the Auxiliary Vector filtering takes the signals transmitted from the far end and multiplies the transmitted signals by the array of filter coefficients and subtracts the result from the signal commands transmitted from the near end.
7. The system according to claim 6 , wherein the signal canceller is adaptive in being capable of changing the filter coefficients while receiving data from the signal commands transmitted from the near end and the signals transmitted from the far end.
8. The system according to claim 6 , wherein the filter coefficients are obtained using the algorithm:
R=Y T *Y
V=Y T *X
G= ( R*V −( V T *R*V ) *V )/norm( R*V −( V T R*V ) *V )
U= ( G T R*V )/( G T *R*G )
w=V−U*G
where the vector Y contains N values of the received signal y[n] where N is the number of filter coefficients, X contains one value x[n] of the transmitted signal commands, G is the Auxiliary Vector, U is a scalar which minimizes output variances of the filter coefficients and w is a vector containing the filter coefficients.
9. The system according to claim 6 , wherein voice signals are processed.
10. The system according to claim 6 , wherein the signal processor is the digital signal processor of a voice mail system, the signal transducing device is a telephone set, wherein the signal commands include voice mail prompts.
11. A digital signal processing method comprising:
a) transmitting signal commands from a near end including a signal processor over a first signal path to a far end including a signal transducing device;
b) receiving over a second signal path from the far end to the near end signals indicating the state of the signal transducing device; and
c) cancelling echo signals from the signals received at the near end utilizing a signal canceller employing Auxiliary-Vector filtering at all times during operation of the signal canceller,
wherein the cancelling includes providing an array of filter coefficients and wherein the Auxiliary Vector filtering takes the signals transmitted from the far end and multiolics the transmitted similes by the array of filter Coefficients and subtracts the result from the signal commands transmitted from the near end.
12. The method according to claim 11 , wherein the cancelling is adaptive in being capable of changing the filter coefficients while receiving data from the signal commands transmitted from the near end and the signals transmitted from the far end.
13. The method according to claim 11 , wherein the filter coefficients are obtained using the algorithm:
R=Y T *Y
V=Y T *X
G= ( R*V −(V T *R*V ) *V )/norm( R*V −( V T *R*V ) *V )
U= ( G T *R*V )/( G T *R*G )
w=V−U*G
where the vector Y contains N values of the received signal y[n] where N is the number of filter coefficients, X contains one value x[n] of the transmitted signal commands, G is the Auxiliary Vector, U is a scalar which minimizes output variances of the filter coefficients and w is a vector containing the filter coefficients.
14. The method according to claim 11 , wherein voice signals are processed.
15. The method according to claim 11 , wherein the signal processor is the digital signal processor of a voice mail system, the signal transducing device is a telephone set, wherein the signal commands include voice mail prompts.
16. A program storage device readable by a machine embodying a program of instructions executable by the machine for signal processing in which undesired signals are cancelled, the instructions comprising:
a) transmitting signal commands from a near end including a signal processor over a first signal path to a far end including a signal transducing device;
b) receiving over a second signal path from the far end to the near end signals indicating the state of the signal transducing device; and
c) cancelling echo signals from the signals received at the near end utilizing a signal canceller employing Auxiliary-Vector filtering at all times during operation of the signal canceller,
wherein the cancelling includes providing an array of filter coefficients and wherein the Auxiliary Vector filtering takes the signals transmitted from the far end and multiplies the transmitted signals by the array of filter coefficients and subtracts the result from the signal command transmitted from the near end.
17. The program storage device according to claim 16 , wherein the cancelling is adaptive in being capable of changing the filter coefficients while receiving data from the signal commands transmitted from the near end and the signals transmitted from the far end.
18. The program storage device according to claim 16 , wherein the filter coefficients are obtained using the algorithm:
R=Y T *Y
V=Y T *X
G= −( R*V ( V T *R*V ) *V )/norm( R*V −( V T *R*V ) *V )
U= ( G T *R*V )/( G T R*G )
w=V−U*G
where the vector Y contains N values of the received signal y[n] where N is the number of filter coefficients, X contains one value x[n] of the transmitted signal commands, G is the Auxiliary Vector, U is a scalar which minimizes output variances of the filter coefficients and w is a vector containing the filter coefficients.
19. The program storage device according to claim 16 , wherein voice signals are processed.
20. The program storage device according to claim 16 , wherein the signal processor is the digital signal processor of a voice mail system, the signal transducing device is a telephone set, wherein the signal commands include voice mail prompts.