Patent ID: 6907064

Claim:
A waveform equalization controller comprising: a waveform equalizer operable to reduce a transmission line distortion of an input signal based on a LMS algorithm, and to output an output signal, wherein said waveform equalization controller is operable to control updating of a tap coefficient of a filter which is included in said waveform equalizer; an error estimation unit operable to estimate an error of the output signal outputted from said waveform equalizer based on the output signal, and to output an error signal; a step size decision unit operable to receive the error signal outputted from said error estimation unit and a step size upper limit value and a step size lower limit value, which are an upper limit value and a lower limit value of a possible step size as a step for updating the tap coefficient, respectively, to adaptively generate a step size corresponding to the error signal in a range of the step size upper limit value or smaller and the step size lower limit value or larger, and to output the generated step size; and a coefficient updating calculation unit operable to calculate a tap coefficient amount based on the error signal outputted from said error estimation unit, the generated step size outputted from said step size decision unit, and a data to be used for updating the tap coefficient; wherein said step size decision unit comprises: a multiplier operable to square the error signal so as to generate and output a square error; a square error storage unit operable to store a previous square error which has been generated at a previous tap coefficient update; a subtracter operable to generate a difference between square errors, the difference between the square errors being a difference between the square error outputted from said multiplier and the previous square error stored in said square error storage unit; a first comparator operable to compare the square error outputted from said multiplier with a first threshold; a second comparator operable to compare the square error outputted from said multiplier with a second threshold; a third comparator operable to compare an absolute value of the difference between the square errors with a third threshold; a step size storage unit operable to store a previous step size which has been used at the previous tap coefficient update; and a step size increasing/decreasing unit operable to receive the previous step size stored in said step size storage unit, an output of said first comparator, an output of said second comparator, an output of said third comparator, the step size upper limit value and the step size lower limit value, and to generate a step size which is to be used for updating the tap coefficient.