The invention is an echo canceller for reducing the magnitude of an echo occurring
in a return channel of a communication device and a method of implementing the
same. The echo canceller includes a processing unit for generating an echo attenuated
signal. The processing unit includes a first input, a second input and an output.
The first input is for receiving a first signal that is the precursor of the echo.
The second input is for receiving a second signal that potentially contains the
echo. The output is for outputting the echo attenuated signal. The echo attenuated
signal is derived by combining the second signal and an adaptation signal. The
adaptation signal is generated by normalizing the echo attenuated signal to produce
a normalized adaptation signal, and combining the normalized adaptation signal
with the first signal to generate an intermediate signal. Additionally, the intermediate
signal is de-normalized to produce the adaptation signal.