Claims
- 1. An echo canceller, comprising:
an adaptive digital filter that generates an estimated echo signal {circumflex over (z)}[k] in response to (i) a sampled input data sequence x[k] and (ii) an error signal sequence e[k] indicative of the difference between a signal sequence y[k] and the estimated echo signal {circumflex over (z)}[k], said adaptive filter includes N filter taps that each provide an associated tap output signal, wherein said adaptive digital filter generates said estimated echo signal {circumflex over (z)}[k] using said associated tap output signals from M of said N filter taps selected in response to a time delay estimate signal, and said adaptive filter computes filter coefficients for each of said M of said N filter taps using said associated tap output signals from said M of said N filter; a time delay estimator responsive to said sequence x[k] and said sequence y[k], that estimates at least one delay within said sequence x[k], and provides said time delay estimate which is indicative of the location of said at least one delay within said sequence x[k]; and a summer that computes the difference between said signal sequence y[k] and said estimated echo signal {circumflex over (z)}[k] and provides an output signal indicative thereof.
- 2. The echo canceller of claim 1, wherein said adaptive filter is implemented in a programmable processing device.
- 3. The echo canceller of claim 1, wherein said adaptive filter is implemented in an application specific integrated circuit.
- 4. A sparse echo canceller, comprising:
an adaptive digital filter that generates an estimated echo signal {circumflex over (z)}[k] in response to (i) a sampled input data sequence x[k] and (ii) an error signal sequence e[k] indicative of the difference between a signal sequence y[k] and the estimated echo signal {circumflex over (z)}[k], said adaptive filter includes N filter taps that each provide an associated tap output signal, wherein said adaptive digital filter generates said estimated echo signal {circumflex over (z)}[k] using said associated tap output signals from a selected number of N filter taps selected in response to a time delay estimate signal; means responsive to said sampled input data sequence x[k] and said signal sequence y[k], for estimating the temporal locations of a plurality of echoes within said sequence x[k], and for providing said time delay estimate which is indicative of the temporal locations of said echoes within said sequence x[k]; and a summer that computes the difference between said signal sequence y[k] and said estimated echo signal {circumflex over (z)}[k] and provides an output signal indicative thereof.
- 5. The sparse echo canceller of claim 4, wherein said N number of filters taps are configured and arranged into M number of groups, each selectable by said time delay estimate signal.
- 6. The sparse echo canceller of claim 5, wherein said adaptive filter comprises an adaptive control routine that computes a coefficient value for each of said filter taps using a stochastic gradient descent estimator.
- 7. The sparse echo canceller of claim 6, wherein said stochastic gradient descent estimator comprises a least means squares estimator.
- 8. The echo canceller of claim 1, wherein said adaptive filter is implemented in a field programmable gate array.
PRIORITY INFORMATION
[0001] This application claims priority from U.S. Provisional application designated Ser. No. 60/382,717 filed May 23, 2002 and entitled Time Delay Estimator, which is hereby incorporated by reference.
[0002] This application contains subject matter related to the following co-pending applications: Ser. No. 10/055,447 filed Jan. 23, 2002 and Ser. No. ______ filed even date herewith, both incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60382717 |
May 2002 |
US |