Claims
- 1. A method for performing adaptive filtering, comprising:
calculating a metric of a block as a function of input signal values and adaptive filter coefficients in that block; comparing the metrics to select a given subset of blocks to update; and updating the adaptive filter coefficients in the given subset of blocks.
- 2. The method according to claim 1 further including outputting a predicted signal and combining the predicted signal and a desired signal to cancel an echo signal in the desired signal.
- 3. The method according to claim 1 wherein calculating the metric includes calculating a weighted power in that block.
- 4. The method according to claim 1 wherein calculating the metric includes forming a diagonal matrix.
- 5. The method according to claim 4 wherein the diagonal matrix is a function of the adaptive filter coefficients.
- 6. The method according to claim 4 wherein the diagonal matrix includes diagonal elements calculated at every iteration.
- 7. The method according to claim 6 wherein the diagonal elements are a function of a vector having elements being the maximum of (i) the maximum adaptive filter coefficient multiplied by a scale factor or (ii) each of the magnitudes of the adaptive filter coefficients.
- 8. The method according to claim 4 wherein forming a diagonal matrix includes preventing errors caused by the adaptive filter coefficients being very small.
- 9. The method according to claim 4 wherein forming a diagonal matrix includes causing an individual adaptive filter coefficient to change when its magnitude is smaller than the largest coefficient.
- 10. The method according to claim 1 wherein comparing the metric includes finding the block for which the adaptive filter coefficient is minimal in the squared-Euclidean-norm sense while satisfying a constraint that the adaptive filter coefficient at the next sample time multiplied by the corresponding signal at the present time is identical to a desired signal.
- 11. The method according to claim 1 wherein comparing the metric includes determining the block with the smallest weighted squared-Euclidean-norm update.
- 12. The method according to claim 1 further including transitioning at a break point from using a combination of adaptive filter coefficients and input signal to select the given subset of blocks to update to using only the input signal.
- 13. The method according to claim 12 wherein the break point is determined from echo return loss enhancement (ERLE) measurements.
- 14. The method according to claim 1 used in applications having long adaptive filters.
- 15. The method according to claim 14 wherein the applications include channel equalization, sonar, radar, system identification, and echo cancellation.
- 16. The method according to claim 14 wherein the applications include multi-user detection CDMA systems employing the method for adaptive filtering in a plurality of demodulators, the method further including updating a subset of adaptive filter coefficients in the demodulators each update iteration.
- 17. An adaptive filter, comprising:
metric calculation units coupled to associated blocks to calculate respective metrics as a function of input signal values and adaptive filter coefficients in the blocks; a selector coupled to the metric calculation units to compare the metrics to select a given subset of blocks to update; and an update unit coupled to the selector and the blocks to update the adaptive filter coefficients in the given subset of blocks.
- 18. The adaptive filter according to claim 17 further including an output channel to output a predicted signal and a summation unit to combine the predicted signal and a desired signal to cancel an echo signal in the desired signal.
- 19. The adaptive filter according to claim 17 wherein the metric calculation units calculate a weighted power in the respective blocks.
- 20. The adaptive filter according to claim 17 wherein the metric calculation units each form a respective diagonal matrix.
- 21. The adaptive filter according to claim 20 wherein each diagonal matrix is a function of the respective adaptive filter coefficients.
- 22. The adaptive filter according to claim 20 wherein each diagonal matrix includes diagonal elements calculated at every iteration.
- 23. The adaptive filter according to claim 20 wherein each diagonal matrix includes diagonal elements that are a function of a vector having elements being the maximum of (i) the maximum adaptive coefficient multiplied by a scale factor or (ii) each of the magnitudes of the adaptive coefficients.
- 24. The adaptive filter according to claim 20 wherein the metric calculation units each form the respective diagonal matrix in a manner preventing errors caused by the adaptive filter coefficients being very small.
- 25. The adaptive filter according to claim 20 wherein the metric calculation units each form the respective diagonal matrix in a manner causing an individual adaptive filter coefficient to change when its magnitude is much smaller than the largest coefficient.
- 26. The adaptive filter according to claim 17 wherein the selector compares the metrics in a manner that includes finding the block for which the coefficient is minimal in the squared-Euclidian-norm sense while satisfying a constraint that the adaptive coefficient at the next sample time multiplied by the corresponding signal at the present time is substantially identical to the desired response.
- 27. The adaptive filter according to claim 17 wherein the selector compares the metrics in a manner that includes determining the block with the smallest weighted squared-Euclidean-norm update.
- 28. The adaptive filter according to claim 17 further including transition logic coupled to the update unit to cause a transition at a breakpoint from (i) using a combination of adaptive filter coefficients and input signal to select the given subset of blocks to update to (ii) using only the input signal.
- 29. The adaptive filter according to claim 28 wherein the transition logic determines the breakpoint from echo return loss enhancement (ERLE) measurements.
- 30. The adaptive filter according to claim 17 used in applications having long adaptive filters.
- 31. The adaptive filter according to claim 30 wherein the applications include channel equalization, sonar, radar, system identification, and echo cancellation.
- 32. The adaptive filter according to claim 17 used in multi-user detection CDMA systems employing the adaptive filter in a plurality of demodulators, wherein the adaptive filter updates a subset of adaptive filter coefficients in the demodulators each update iteration.
- 33. A computer-readable medium having stored thereon sequences of instructions, the sequences of instructions, when executed by a digital processor, causing the processor to perform the steps of:
calculating a metric of a block as a function of input signal values and adaptive filter coefficients in that block; comparing the metrics to select a given subset of blocks to update; and updating the adaptive filter coefficients in the given subset of blocks.
RELATED APPLICATION(S)
[0001] This application claims the benefit of U.S. Provisional Application No. 60/396,298, filed Jul. 16, 2002. The entire teachings of the above application are incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60396298 |
Jul 2002 |
US |