Method and circuit for updating a tap coefficient of a channel equalizer

Provided are a method of updating a tap coefficient of a channel equalizer while reducing the number of calculations and the divergence, and a circuit arranged and configured to execute the method. The method includes evaluating whether or not an error of the channel equalizer converges within a range of a threshold of visibility and determining the status of a control signal to select whether the tap coefficient of the channel equalizer will be updated using a least mean square (LMS) algorithm or a Kalman algorithm, wherein the LMS algorithm is the default error correction means and the Kalman algorithm is utilized when the control signal indicates the presence of a training signal.

This application claims priority from Korean Patent Application No. 10-2003-0004023 filed on Jan. 21, 2003, in the Korean Intellectual Property Office (KIPO), the entire contents of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a method of updating coefficients in a channel equalizer and a coefficient updating circuit, and more particularly, to a method of updating coefficients in a channel equalizer using either the Kalman algorithm or the least mean square (LMS) algorithm, and a circuit that may be used to perform the method.

2. Description of the Related Art

Channel equalization is a technique of processing a signal, such as a signal used in digital communication systems, to improve the performance by reducing channel noise, channel distortion, multi-path interference and multi-user interference. Channel equalizers are used mainly in household appliances such as digital TVs and personal communication systems in order to increase the ratio of an input signal relative to interference and thereby reduce the symbol error rate of the input signal.

Advanced Television Systems Committee (ATSC) provides standards for digital high-definition television (HD TV). ATSC document A53B of Aug. 7, 2001, describes approved standards for digital TV and ATSC document A54, Oct. 4, 1995, provides guidelines for the use of these standards. The standards specify specific training sequences that may be incorporated into video signals transmitted by terrestrial broadcast, cable or satellite channel. ATSC document A54 also discloses a method for adapting the filtering response of an equalizer to adequately compensate for channel distortion. This method does not, however, fully account for the higher probability that coefficients for the equalizer are not set at levels sufficient to adequately compensate for channel distortion when the equalizer first operates.

In order to force the convergence of the equalizer's coefficients, a training sequence may be transmitted to and processed by the adaptive equalizer to generate an output signal. This output signal may then be compared with a locally generated or stored version of the expected output signal to generate an error signal. The equalizer coefficients are then adjusted to minimize the value of the error signal, thereby improving the ability of the equalizer to filter an input signal.

A linear filter is typically used for equalizing a channel, but a feedback-type non-linear filter may also be used to remove impulse noise and non-linear distortion occurring in a communication channel and further improve the performance of the equalizer.

The conventional least mean square (LMS) algorithm, which is both relatively simple to implement and requires a relatively small amount of calculation, may be used as an algorithm for updating a tap coefficient of the equalizer. However, although the coefficients may be calculated with a small amount of calculation when using the LMS algorithm, the convergence of the coefficients is relatively slow. Thus, the LMS algorithm is generally unsuitable for a multi-path communication environment in which the speed of and a delay in transmission of data increase.

The Kalman algorithm is a representative algorithm having relatively fast convergence characteristics. The Kalman algorithm however, presents application difficulties because it requires a large amount of calculation. Although advances in hardware have enabled the wider use of the Kalman algorithm, the large amount of calculation and divergence of coefficients remain problematic for applications of the Kalman algorithm.

SUMMARY OF THE INVENTION

The exemplary embodiments of the present invention provide a method for updating a tap coefficient for a channel equalizer, while reducing the amount of calculation and reducing the likelihood of diverging coefficients and an embodiment circuit therefore performing the method. The method includes determining whether or not an error of the channel equalizer converges within a range of a threshold of visibility and updating the tap coefficient of the channel equalizer using 1) the least mean square (LMS) algorithm when the error converges within the range of the threshold of visibility or 2) using either the LMS algorithm or the Kalman algorithm in response to a control signal. When determining the convergence of the error, the square of the error of the channel equalizer is typically compared with the threshold of visibility.

When the updating the tap coefficient of the channel equalizer, the Kalman algorithm is typically used when the control signal is a training signal and the LMS algorithm is typically used for other signals. The error may be the difference between the training signal and a signal output from the channel equalizer in response to the training signal or may be the difference between the signal output from the channel equalizer and a signal output from a determination circuit where the determination circuit determines the signal output from the channel equalizer as a certain value.

Exemplary embodiments of the present invention provide a circuit useful for updating a tap coefficient for a channel equalizer comprising a convergence examining and comparing unit (CEC unit), which determines whether or not a received error of the channel equalizer converges within the range of a threshold of visibility, and an updating circuit for updating the tap coefficient using the LMS algorithm when the error converges within the range of the threshold of visibility and using either the LMS algorithm or the Kalman algorithm in response to a control signal. The updating circuit typically updates the tap coefficient of the channel equalizer using the Kalman algorithm when the control signal is a training signal and using the LMS algorithm in response to other signals.

When the updating circuit updates the tap coefficient of the channel equalizer using the LMS algorithm, the tap coefficient is updated according to Equation I:
c(n)=c(n−1)+μe(n)y(n)  (I)
wherein c(n) denotes an updated tap coefficient vector of the channel equalizer, c(n−1) denotes a tap coefficient vector of the channel equalizer that is yet to be updated, μ denotes the step size, e(n) denotes an error of the channel equalizer and y(n) denotes data input to the channel equalizer.

When the tap coefficient of the channel equalizer is updated using the Kalman algorithm, the coefficient is updated according to Equation II:
c(n)=c(n−1)+K(n)e(n)  (II)
wherein c(n) denotes an updated tap coefficient vector of the channel equalizer, c(n−1) denotes a tap coefficient vector of the channel equalizer that is yet to be updated, K(n) denotes a Kalman gain vector, and e(n) denotes an error of the channel equalizer.

The exemplary embodiments of the present invention also provide a circuit for updating a tap coefficient of a channel equalizer, including a slicer, which determines a signal output from the channel equalizer as a certain value; a selection circuit, which outputs a signal output from the slicer or a training signal as a signal output from the channel equalizer, in response to a control signal, the channel equalizer having an updated tap coefficient; a subtracter which subtracts the signal output from the channel equalizer from the signal output from the selection circuit; a CEC unit which compares a threshold of visibility with a signal output from the subtracter and outputs the comparison result; a decoder which decodes the control signal and the comparison result output from the CEC unit and outputs the decoding result; and an updating circuit which updates the tap coefficient of the channel equalizer in response to a signal output from the decoder. The updating circuit updates the tap coefficient of the channel equalizer using the LMS algorithm when an error of the channel equalizer converges within the range of the threshold of visibility or, when the error of the channel equalizer does not converge within the range of the threshold of visibility and the control signal is a training signal using the Kalman algorithm and updates the tap coefficient using the LMS algorithm when the control signal is not the training signal.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS

The present invention will now be described more fully with reference to the accompanying drawings, in which exemplary embodiments of the invention are shown. The same reference numerals, if used in different drawings, are intended to represent the same or corresponding elements, and their descriptions will not, therefore, be repeated.

The least mean square (LMS) algorithm requires a small amount of calculation, and stable performance, but has slow convergence characteristics. An error e(n) and an updated coefficient c(n) obtained when applying the LMS algorithm to a channel equalizer can be expressed by the Equations III:
e(n)=s*(n)−y*T(n)c(n−1)
c(n)=c(n−1)+μe(n)y(n)
wherein e(n) denotes the difference, i.e., the error, between a training signal, which is generated at a time n by the channel equalizer and a signal which passes through a filtering circuit of the channel equalizer. s*(n) denotes an output of the channel equalizer having an updated coefficient, i.e., a value of an equalized output. y*Tdenotes data that is input to the channel equalizer and is equivalent to yT, y* denotes a conjugate complex number and yTdenotes a transformation matrix. c(n) denotes a tap coefficient vector at a time n; c(n−1) denotes a tap coefficient vector of the channel equalizer that has yet to be updated; μ denotes the size of a step and y(n) denotes data input to the channel equalizer. When updating a tap coefficient of the channel equalizer using the LMS algorithm, the amount of calculation required is N, N being proportional to the number of taps.

The Kalman algorithm has high-speed convergence characteristics, but requires a large amount of calculation and a large memory capacity, thus increasing the time required to perform the calculations and likelihood of divergence. For instance, when applying the Kalman algorithm to an 8-vestigial side band (VSB) system, the Kalman algorithm guarantees convergence for a short training time in a multi-path channel environment but requires a large amount of calculation and a large memory capacity.

An error e(n) and an updated tap coefficient c(n) obtained when applying the Kalman algorithm to a channel equalizer can be expressed by the Equations IV:
K(n)=φ−1(n−1)y(n)/[1+y*T(n)φ−1(n−1)y(n)]
e(n)=s*(n)−y*T(n)c(n−1)
c(n)=c(n−1)+K(n)e(n)
φ−1(n)=φ−1(n−1)−K(n)y*T(n)φ−1(n−1)
wherein K(n) denotes a Kalman gain vector, φ−1(n) denotes an error covariance matrix at a time n, and φ−1(n−1) denotes an error covariance matrix a time n−1 prior to time n. When updating the tap coefficient of the channel equalizer using the Kalman algorithm, the amount of calculation required is N2with N being proportional to the number of taps.

Assuming that the formula commonly expressed in the Kalman gain vector of Equation IV is J(n), a transformation formula JT(n) of the formula J(n) can be expressed by the Equations V:
J(n)=φ−1(n−1)y(n)
JT(n)=[y*T(n)φ−1(n−1)]

The Kalman algorithm which can be applied to the channel equalizer according to the present invention can be simplified using Equation V, as shown by Equations VI:
J(n)=φ−1(n−1)y(n)
K(n)=J(n)/[1+y*T(n)J(n)]
e(n)=s*(n)−y*T(n)c(n−1)
c(n)=c(n−1)+K(n)e(n)
φ−1(n)=φ−1(n−1)−K(n)JT(n)

The amount of calculation of a channel equalizer using the conventional Kalman algorithm of Equations IV is 3N2when the amount of calculation of φ−1(n−1)y(n) is N2, whereas the amount of calculation of the channel equalizer300using the Kalman algorithm of Equations VI, according to an exemplary embodiment of the present invention, will be N2because J(n) is replaced once with JT(n). Therefore, the amount of calculation of the channel equalizer300using the Kalman algorithm according to the exemplary embodiment of the present invention can be reduced by about two thirds.

FIG. 1illustrates the memory structure of a conventional error covariance matrix φ−1(n). Referring toFIG. 1, the conventional error covariance matrix φ−1(n), which is applied to a channel equalizer, has a symmetrical memory structure with respect to a diagonal line P1, P2, P3and P4.

FIG. 2illustrates the memory structure of an error covariance matrix φ−1(n) according to an exemplary embodiment of the present invention. Referring toFIG. 2, only the upper-right portion of a memory of the error covariance matrix φ−1(n), which is applied to a channel equalizer, with respect to a diagonal line P1, P2, P3and P4is used. For this reason, if the size of the memory of the conventional error covariance matrix φ−1(n) is N2, the size of the memory of the error covariance matrix φ−1(n) according to the exemplary embodiments of the present invention will be about 0.5N2,

When the total amount of calculation of a conventional channel equalizer using the error covariance matrix ofFIG. 1, shown in Equations IV, is 4N2+7N, the total amount of calculation of a channel equalizer using the error covariance matrix ofFIG. 2, shown in Equations VI, is reduced to 1.5N2+7N.

An exemplary method of updating a tap coefficient of a channel equalizer and a circuit therefore, according to the present invention, to which Equation VI and the error covariance matrix ofFIG. 2are applied, will be explained in more detail below.

FIG. 3is a block diagram of a channel equalizer300according to an exemplary embodiment of the present invention. As illustrated inFIG. 3, a filtering circuit400of the channel equalizer300includes an M-tap forward filter410, an N-tap feedback filter420, and an adder430. It is believed that the structure and operation of the illustrated filtering circuit400will be well known to those skilled in the art and that detailed descriptions of the structure and operation are, therefore, unnecessary

An exemplary circuit for updating a tap coefficient includes a subtracter500, a decoder510, a updating circuit520, a determination circuit540, a multiplexer560, a training signal register570and a convergence examining and comparing unit590(a “CEC unit”).

The M-tap forward filter410includes M filter cells (or taps) that are connected to one another in series. The M-tap forward filter410stores input data y(n) in the M filter cells, multiplies the respective data y(n) by corresponding equalizer coefficients c(n), and outputs the multiplication results to the adder430.

The N-tap feedback filter420includes N filter cells (or taps) that are connected to one another in series. The N-tap feedback filter420stores respective output values s*(n) of the equalizer having an updated coefficient, i.e., signals output from the multiplexer560, in the respective N filter cells, multiplies the data stored in the respective filter cells by corresponding equalizer coefficients c(n), and outputs the multiplication result to the adder430.

The adder430adds signals output from the M-tap forward filter410and the N-tap feedback filter420together and outputs the addition result, i.e., a signal y*T(n)c(n−1), to the determination circuit540and the subtracter500. The determination circuit540, which may be a slicer, determines a value of the signal y*T(n)c(n−1) to a certain value and outputs the certain value to the multiplexer560. The certain value corresponds to the output value s*(n) of the equalizer having an updated coefficient, i.e., the equalized output value s*(n).

The multiplexer560outputs a training signal stored in the training signal register570or the signal s*(n) output from the determination circuit540to the N-tap feedback filter420, a forward error correction (FEC) circuit (not shown) and the subtracter500, in response to a control signal CNTR. The subtracter500subtracts the signal y*T(n)c(n−1), which is output from the adder430, from the signal s*(n) output from the multiplexer560, and then outputs the subtraction result, i.e., an error signal e(n), to the CEC unit590and a third multiplier5307.

The CEC unit590receives a threshold of visibility TOV and the error signal e(n) output from the subtracter500, compares the threshold of visibility TOV with a square of the error signal e(n), and outputs the comparison result COMO to the decoder510. The decoder510decodes the control signal CNTR and the comparison result COMO and outputs the decoding result EN/DEN to an error covariance register5201, a Kalman gain register5203, and a multiplexer5211.

The updating circuit520, which embodies the Kalman algorithm, includes the error covariance register5201, the Kalman gain register5203, a Kalman gain updating unit5205, a first multiplier5207, a subtracter5209, the multiplexer5211, a second multiplier5309, the third multiplier5307, an adder5305, a coefficient updating register5303and a data register5313.

It is possible to perform the LMS algorithm using the second multiplier5309, the third multiplier5307, the adder5305, the coefficient updating register5303and the data register5313. As indicated by reference numeral530, these components comprise a circuit for performing the LMS algorithm.

The error covariance register5201stores an error covariance matrix φ−1(n) and the Kalman gain register5203stores a Kalman gain K(n). The Kalman gain updating unit5205updates the Kalman gain K(n) in response to the Kalman gain K(n) output from the Kalman gain register5203, a signal φ−1(n−1) output from the error covariance register5201, and data y(n) output from the data register5313, and then outputs the updated Kalman gain K(n) to the Kalman gain register5203.

The first multiplier5207receives the Kalman gain K(n) output from the Kalman gain register5203, the signal φ−1(n−1) output from the error covariance register5201, and the data y(n) output from the data register5313, multiplies them, and outputs the multiplication result to the subtracter5209. The subtracter5209subtracts a signal output from the first multiplier5207from the signal φ−1(n−1) output from the error covariance register5201, and outputs the subtraction result to the error covariance register5201.

The multiplexer5211outputs the Kalman gain K(n) output from the Kalman gain register5203or a signal output from the second multiplier5309to the third multiplier5307, in response to the signal EN/DEN output from the decoder510. The second multiplier5309receives a step size μ and the data y(n) output from the data register5313, multiplies them, and outputs the multiplication result to the multiplexer5211. The third multiplier5307receives the error signal e(n) output from the subtracter500and a signal output from the multiplexer5211, multiplies them, and outputs the multiplication result to the adder5305.

The adder5305receives a signal output from the third multiplier5307and a signal c(n−1) output from the coefficient updating register5303, adds them together, and outputs the addition result to the coefficient updating register5303. The coefficient updating register5303receives a signal output from the adder5305, updates the coefficient of the equalizer based on the received signal, and outputs an updated coefficient c(n) to the M-tap forward filter410and the N-tap feedback filter420. The data register5313receives and stores the input data y(n).

The operations of the error covariance register5201and the Kalman gain register5203, which depend on the decoding result EN/DEN obtained by decoding the control signal CNRT and the signal COMO output from the CEC unit590, are illustrated in T1 below:

As shown in T1, the comparison result COMO is 1 when the square of the error e(n) is smaller than the threshold of visibility TOV and is 0 when the square of the error e(n) is equal to or greater than the threshold of visibility TOV.

The decoder510decodes the control signal CNTR and the signal COMO output from the CEC unit590and determines whether the coefficient of the equalizer will be updated using the Kalman algorithm or the LMS algorithm.

When the error covariance register5201and the Kalman gain register5203are inactivated in response to the signal EN/DEN output from the decoder510, the multiplexer5211outputs the signal output from the second multiplier5309to the third multiplier5307in order to update the coefficient of the equalizer using the LMS algorithm.

However, when the error covariance register5201and the Kalman gain register5203are activated in response to the signal EN/DEN output from the decoder510, the multiplexer5211outputs the signal K(n) output from the Kalman gain register5203to the third multiplier5307in order to update the coefficient of the equalizer using the Kalman algorithm.

FIG. 4is a flowchart illustrating a method of updating a coefficient of a channel equalizer according to an exemplary embodiment of the present invention. An exemplary method for updating a tap coefficient according to an exemplary embodiment of the present invention will be explained below with reference toFIGS. 3 and 4.

As shown in Equations III and IV, a signal, i.e., an error e(n), output from the subtracter500is expressed as the difference between a signal y*T(n)c(n−1) output from the adder430(or the equalizer) and a signal s*(n) output from the multiplexer560. The signal s*(n) is a training signal or a signal output from the determination circuit540.

First, in step210, the CEC unit590determines whether the error e(n) of the channel equalizer300converges within the range of a threshold of visibility TOV and outputs the comparison result COMO. In detail, according to exemplary embodiments of the invention, the CEC unit590determines whether the square of the error e(n) converges within the range of the threshold of visibility TOV, as illustrated in T1, and outputs the comparison result COMO.

If the square of the error e(n) is smaller than the threshold of visibility TOV, i.e., converges, a signal output from the CEC unit590is activated, that is, the signal has a logic value of“1”. If, however, the error e(n) falls outside the range of the threshold of visibility TOV, i.e., diverges, the error covariance register5201and the Kalman gain register5203are inactivated in response to signal EN/DEN output from the decoder510. In this embodiment, the multiplexer5211is capable of outputting a signal output from the second multiplier5309to the third multiplier5307in response to the signal EN/DEN output from the decoder510.

When the error e(n) converges, i.e., falls within the range of the threshold of visibility TOV, the updating circuit520updates the tap coefficient of the channel equalizer300using the LMS algorithm. As illustrated inFIG. 3, the second multiplier5309multiplies the step size μ by the data y(n) output from the data register5313and outputs the multiplication result to the multiplexer5211. The multiplexer5211then outputs the signal output from the second multiplier5309to the third multiplier5307in response to the signal EN/DEN output from the decoder510. The third multiplier5307multiplies a signal output from the multiplexer5211by the signal e(n) output from the subtracter500and outputs the multiplication result to the adder5305.

The adder5305adds the signal c(n−1) output from the coefficient updating register5303and a signal output from the third multiplier5307and outputs the addition result c(n) to the coefficient updating register5303. However, when the error e(n) does not converge within the range of the threshold of visibility TOV, the channel equalizer determines whether an input control signal CNTR is the training signal or not in step220. If the control signal CNTR is the training signal, the updating circuit520updates the tap coefficient of the channel equalizer using the Kalman algorithm in step230.

Referring to T1 andFIG. 4, in response to the signal EN/DEN output from the decoder510, the error covariance register5201and the Kalman gain register5203are activated and the multiplexer5211outputs a signal output from the Kalman gain register5203to the third multiplier5307. The third multiplier5307multiplies the signal K(n) output from the multiplexer5211by the signal e(n) output from the subtracter500and outputs the multiplication result to the adder5305. The adder5305adds the signal c(n−1) output from the coefficient updating register5303and the signal output from the third multiplier5307and outputs the addition result c(n) to the coefficient updating register5303.

If the control signal CNTR is not the training signal (for example, it is real data), the updating circuit520then updates the tap coefficient of the channel equalizer using the LMS algorithm in step240.

After updating the coefficient of the equalizer using the LMS algorithm or the Kalman algorithm, the determination circuit540receives the signal y*T(n)c(n−1) output from the adder430and determines the signal y*T(n)c(n−1) as a certain value in step250.

As described above, in an exemplary method for updating a tap coefficient of a channel equalizer and a circuit suitable for performing the method according to the present invention, a tap coefficient is selectively updated using either the Kalman algorithm or the LMS algorithm, thereby significantly reducing the amount of calculation required if only the Kalman algorithm was used while improving the performance that could be achieved using only a LMS algorithm.