METHOD AND APPARATUS FOR GHOST CANCELLING AND/OR EQUALIZING

Abstract: The present invention relates to a method and to an apparatus for ghost cancelling and/or equalizing. A received test signal is compared with an ideal version of this test signal. The coefficients of a correction filter applied to the received test signal are adjusted in such a way that the filter output signal matches as much as possible to the ideal test signal. But the filter lenght is limited and in a lot of cases no sufficient ghost cancellation is possible. According to the invention a first long LMS adaptive filter (LMS1) which may have more than 1000 taps minimizes the error ( epsilon ) between the filtered output signal (y) of the distorted input signal (x) (a transmitted reference signal) and an ideal reference signal. A positioner (14) takes coefficients (C1) from the first LMS filter and determines the most useful subset of small filters separated by variable delays. The position information (PI) calculated in the positioner comprises the lenghts of these delays. The subset of filters forms together with the variable delays a second LMS adaptive filter (LMS2) with a tap number corresponding to the first LMS filter tap number. The coefficients corresponding to the delay 'taps' can be regarded as set to zero and the locations of the delay parts of the second LMS filter remain fixed. The coefficients of the filter parts (corresponding to the small filters) are modified adaptively until the best match between the filtered received reference signal and the ideal reference signal is achieved. The first and second LMS filter need not to work in real time. After establishing of the filter coefficient modification of the subsets these coefficients (C2) are copied to a real time main filter (MF) working on the whole input signal, e.g. a TV signal, with exception of said reference signal. The main filter comprises a respective subset of adjustable small filters and a set of adjustable delays.

Description: Method and Apparatus for ghost cancelling and/or equalizing The present invention relates to a method and to an apparatus for ghost cancelling and/or equalizing. Background In "A tutorial on ghost cancelling", . Ciciora et al, IEEE Transactions on Consumer Electronics, Vol. 25, pages 9 - 44, 25. Feb 1979, the principle of ghost cancelling is described. A received test signal is compared with an ideal version of this test signal. The coefficients of a correction filter applied to the received test signal are adjusted in such a way that the filter output signal matches as much as possible to the ideal test signal. But the filter length is limited and in a lot of cases no sufficient ghost cancellation is possible. In "Adaptive Noise Cancelling: Principles and Applications", B. idrow et al. Proceedings of the IEEE, pages 1692 - 1716, Vol. 63, No. 12, Dec. 1975, an LMS (least-mean-square) adaptive filter for noise cancelling is introduced, wherein a new filter coefficient w... . is calculated according to the formula W i(j+ 1) = .. + 2 * μ * ε. * x ±j , where w.. is the respective existing coefficient, μ is a fixed adaptation constant, ε. is the difference between the respective filter output y. and the corresponding value of the ideal refe¬ rence signal and x.. is the respective value from the filter in¬ put signal. Invention It is one object of the invention to disclose a method for ghost cancelling and/or equalizing, where also more complex distorti¬ ons and ghost signals, respectively, can be handled and where the speed and stability of adaptation is improved. This object is reached by the inventive method disclosed in claim 1. It is a further object of the invention to disclose an apparatus which utilizes the inventive method. This object is reached by the inventive apparatus disclosed in claim 5. A first long LMS adaptive filter which may have more than 1000 taps minimizes the error ε between the filtered output signal y of the distorted input signal x (a transmitted reference signal) and an ideal reference signal. Normally this ideal reference si¬ gnal is stored within the ghost canceller/equalizer and corre¬ sponds to the reference signal which is transmitted e.g. in a specific TV line. A positioner takes coefficients from the first LMS filter and determines the most useful subset of (say 5) small filters (say 16 taps each) separated by variable delays. The position information calculated in the positioner comprises the lengths of these delays. The subset of filters forms together with the variable delays a second LMS adaptive filter with a tap number corresponding to the first LMS filter tap number. The coefficients corresponding to the delay 'taps' can be regarded as set to zero and the locations of the delay parts of the second LMS filter remain fi¬ xed. The coefficients of the filter parts (corresponding to the small filters) are modified adaptively until the best match bet¬ ween the filtered received reference signal and the ideal refe¬ rence signal is achieved. This process will recommence if the ghost or the received channel changes. The first and second LMS filter need not work in real time. Af¬ ter establishing of the filter coefficient modification of the subsets these coefficients are copied to a real time main filter working on the whole input signal (e.g. a TV signal) with excep¬ tion of said reference signal. The main filter comprises a respective subset of adjustable small filters and a set of adjustable delays. In the following a modified equation w i (j+ i) - w ij -" * ε j * x ij is used, where μ includes a factor of (-2) . The 'minus' sign de¬ pends on how the error is defined. In principle the inventive method consists in ghost cancelling and/or equalizing, wherein the coefficients of a digital filter are in principle continuously adapted to minimize the error bet¬ ween the filter output signal of a distorted reference signal and an ideal reference signal which is stored or which can be decoded correctly after reception, and wherein said digital filter is a first LMS filter or filter function with a high tap number and the coefficients of this filter or filter function are used by comparing stepwise values derived from such coefficients of said first LMS filter which represent the tap positions of a small filter with a reduced, number of coefficients to detect depending on the level of said values the position of one or more variable delays which connect in series two or more of said small filters or filter functions and wherein said connection of small filters and delays forms a second LMS filter, of which the coefficients corresponding to said small filters are adapted and used in a main filter , wherein the positions and the delay times of said delays remain fixed during the calculation of the coefficients of said small filters and wherein the signal to be ghost cancelled and/or equalized passes said main filter at those times where said re¬ ference signal is not present. Advantageously the adaptation constant μ for the LMS calculation in said first LMS filter and/or in said second LMS filter is ad¬ apted according to a statistic of said errors stored in memory means and updated during each LMS calculation. Advantageous additional embodiments of the inventive method are resulting from the respective dependent claims. In principle the inventive apparatus comprises: a main filter which works on a distorted signal with exception of a reference signal contained within said distorted signal; looped delay me¬ ans which store said reference signal; a controller circuit which controls said main filter and said delay means; a central processor, which exchanges with said controller circuit control data and which reads from said delay means said reference signal and from a further input said ideal reference signal and which calculates said LMS algorithms and adjusts said variable delays within said main filter and stores said coefficients for said small filters in said main filter. Advantageously said central processor exchanges data with a μ- adaptation circuit and adapts the value for said adaptation con¬ stant μ according to a statistic of said errors stored and updated in said μ-adaptation circuit. Advantageous additional embodiments of the inventive apparatus are resulting from the respective dependent claim. Drawings Preferred embodiments of the invention will now be described with reference to the accompanying drawings, in which: Fig. 1 shows in principle the function of the inventive ap¬ paratus; Fig. 2 shows a block diagram of the inventive apparatus; Fig. 3 depicts an adaptive linear combiner in the form of a single-input transversal filter; Fig. 4 shows a single-input transversal filter in the form of a tapped delay line; Fig. 5 depicts a flow chart diagram of the main algorithm; Fig. 6 shows a flow chart diagram of the output signal calculation; Fig. 7 explains the principle of a closed loop filter for the output signal calculation; Fig. 8 shows a flow chart diagram for the calculation of new coefficients; Fig. 9 shows a flow chart diagram for the positioner; Fig. 10 shows a flow chart diagram for μ-adaptation; Fig. 11 depicts the creation of a ghost signal; Fig. 12 demonstrates the calculation of values m(i) ; Fig. 13 shows the selection of (k+1) small filter positions; Fig. 14 shows resorting of small filter positions and calcu¬ lating of delay values. Preferred embodiments In Fig. 11a an original signal of a TV line is depicted. A ghost signal with a delay of t=2 and an amplitude of 50% is shown in Fig. lib. Fig. lie shows the combined baseband signal received with a TV set. The first adaptive LMS filter LMS1 in Fig. 1 may have 1296 taps and receives a distorted input signal x at first input 11. By suitable processing a TV line with a reference signal, e.g. line 312 of an even frame and/or line 312 of an odd frame of an HDMAC signal, is extracted from the whole TV signal and fed to input 11. A first subtractor 15 calculates the error El (ε) between the filtered output signal y of the distorted input signal x (a transmitted reference signal) and an ideal reference signal fed to second input 12. Normally this ideal reference signal is sto¬ red within a ghost canceller/equalizer and corresponds to the transmitted reference signal. Filter LMS1 calculates its coef¬ ficients according to the known LMS algorithm mentioned above. After a certain number of iterations the coefficients are loaded to a positioner 14. This positioner works according to the flow chart of Fig. 9 and determines the most useful subset of e.g. 5 small filters with e.g. 16 taps each, which can be thought as separated by variable delays having a maximum delay time of 1296-5*16 = 1216 clocks. The position information PI calculated in the positioner comprises the lengths and positions of these delays within a second adaptive LMS filter LMS2 with correspon¬ ding 1296 taps. Between each two delay parts 16 taps of a small filter are located. The locations of the delay parts remain fixed. A second sub¬ tractor 16 calculates the error E2 (ε) between the filtered out¬ put signal y of the distorted input signal x and the ideal reference signal fed to second input 12. The coefficients of the filter parts (corresponding to the small filters) are modified adaptively with the known LMS algorithm until the best match, i.e. a minimum value of E2, between the filtered received refe¬ rence signal and the ideal reference signal is achieved. Advantageously the first and second LMS filter do not need to work in real time. After establishing of the filter coefficient modification of the subsets these coefficients are copied to a real time main filter working on the whole input signal (e.g. a TV signal) with exception of said reference signal. The main filter comprises a respective subset of adjustable small filters and a set of adjustable delays. The delays can be regarded as controlled by filter LMS1 and the small filters as controlled by filter LMS2. In Fig. 2 a hardware block diagram for one possible embodiment of the inventive apparatus is depicted. A digital TV signal which may have been A/D converted is fed via input 21 to a 1296 tap transversal FIR filter MF, which corresponds to main filter MF in Fig. 1, and to a looped delay line 24 which can store 1296 samples of a received reference signal. At the output 23 of fil¬ ter MF the corrected TV signal is available. The content of delay line 24 is loaded (a sample at a time) to a central processor CP which gets also from input 22 respective samples of an ideal reference signal stored in a ROM or which has been decoded correctly from a received reference signal. CP represents the filters LMS1 and LMS2, the positioner 14 and the two subtractors 15 and 16 from Fig. 1. In CP the algorithms ac¬ cording to Fig. 5 - 10 are carried out. The central processor also exchanges data with a μ-adaptation circuit μ-A and with a controller circuit 25. The μ-adaptation circuit may contain a RAM and e.g. five coun¬ ters in which El and E2, respectively, error values are accumu¬ lated and stored. Controller circuit 25 clocks the main filter and the delay line 24 and selects the special TV line(s) with a reference signal to be stored in delay line 24, while all other TV lines pass through the main filter. The central processor loads the coefficients of the e.g. five small filters and the lengths of the adjustable delays to the main filter MF. If the coefficient calculation needs more than one frame period, the valid coefficients can remain fixed for several frame peri¬ ods. Fig. 3 shows a linear combiner with an input signal x, and with one-clock delays z -1 which deliver respective delayed input si¬ gnals k _-, to X j ,---.--.- Signals x to x. are multiplied with re- spective coefficients w , to w , and summed up to form the corrected output signal y.. Fig. 4 is similar to Fig. 3 and shows how the main filter MF can be constructed. The coefficients w Qk to w_. correspond to a first small filter and the coefficients w (,2„-nj..k to w(,4.-n.)-k, correspond to a second small filter. Block z~ is a variable de¬ lay with n clocks delay time. In Fig. 5 'frame loop' and 'line loop' can be regarded as re¬ spective counters located in controller circuit 25. After switching on the TV set or after choosing another channel the Y- branch of test 'frame = 0' is carried out. Coefficients stored in memory suited to usual or good reception of each received channel could also be used first. In case of LMS1 calculation new coefficients are calculated ac¬ cording to the flow chart of Fig. 8. In case of divergence of the coefficient modification the coefficient calculation is re¬ initiated with another preselected filter response. This filter response may be matched to a different reception condition. If the coefficient modification converges and e.g. six modification loops have been made the resulting coefficients are used for the positioner 14 which works according to Fig. 9. In case of LMS2 calculation the positioner 14 seeks for the location, i.e. the position information PI, of the small filters and of the delays within the 1296 taps. This is done according to Fig. 9. The last coefficients calculated in filter LMS2 are stored for the case of divergence of the LMS algorithm. New coefficients for the small filters are calculated with a second LMS algorithm in filter LMS2 according to Fig. 8 while the locations of the delay parts remain fixed. In case of divergence in the coefficient calculation the positioning is re-initiated, whereas in case of convergence the resulting coefficients are loaded from central processor CP to main filter MF. The long filter LF of Fig. 7 corresponds to filter LMS1 and the short filter SF corresponds to a range for a small filter used in positioner 14. The left short filter CF is centred, i.e. the actual position AP corresponds to the central coefficient CeC. The coefficients in the right half of CF are identical to the coefficients stored above in LF. The coefficients for the left half of CF are taken from the right end of LF (principle of looped delay line) . The coefficients of the right half of the right filter SF are taken accordingly from the left end of LF. Fig. 6 explains how the filter output is received, especially at the beginning and at the end of filter LMS1. If the argument ARG, i.e. the sum of the position within the size LFS of long filter LF and of the index of the actual coefficient, is less than zero, LFS is added to ARG. If ARG is greater than LFS, LFS is subtracted from ARG. The actual position AP has index 0 and corresponds to the central coefficient CeC of the small filter. The filter output y is calculated by summing up the respective x input values at position ARG which have been multiplied with the coefficient at position ARG. The filter coefficients are calculated with the LMS algorithm according to Fig. 8, starting with a preselected filter respon¬ se. Error ε is calculated and an error statistic and/or the sta¬ tus (e.g. coefficients before, coefficients after, error, frame number, desired filter output) of a test pixel can be recorded in a RAM. In case of LMS1 calculation all coefficients are tested if they are greater than a maximum coefficient value or less then a mi¬ nimum value. If this is true a divergence flag DI is set to 'l'. After coefficient calculation it is tested, if the sum S of all coefficients is less then half the central coefficient CeC. If this is true, DI is set to '1', too. In case of LMS2 calculation advantageously the adaptation value μ is modified according to Fig. 10. The new coefficients for the small filters are calculated with the LMS2 algorithm and tested for divergence. This testing can be done like the testing in ca¬ se LMS1. However, it may not be necessary to test the sum of the coefficients. In case of divergence the last coefficients stored are used for re-initiation. According to Fig. 9 the positioner shifts a window corresponding to a small filter (e.g. 16 taps) along the positions of the de- lay line. For each actual position AP the squares of the LMS1 calculated coefficients corresponding to all small filter coef¬ ficient positions are summed. These 1296 sums are stored to¬ gether with their position AP in a RAM which is called S/P store. Thereafter the sums in the S/P store are rearranged in decreasing order wherein the corresponding AP of each sum is kept. Normally the AP of the highest five sums indicates the po¬ sitions of the main TV reference signal and the subsequent ghosts. But it has been found that the coefficient areas of the five small filters should not overlap. Therefore the coefficient position ranges of the small filters are compared. If e.g. the difference between the first AP and the second AP in the ordered list in the S/P store is smaller than the SFS, i.e. 16, than the both corresponding small filters overlap. In this case the second AP and its sum is ignored (e.g. deleted in the S/P store, followed by rearranging of the stored AP's) and the third AP is taken. If the end of the S/P data within the S/P store is reached without having found five correct SF positions, the SF positions already set can be held and the remaining positions (next to set with greatest coeff.). The coefficients for the small filters may then be taken from the corresponding neighbouring coef¬ ficients of the coefficients Cl from the filter LMS1. The positioner can be described as follows: 1. Begin with a large filter of (n+1) coefficients, C(0) to C(n). 2. Calculate the squares (or absolute values) of these coef¬ ficients, ' A0. to An. 3. For each coefficient position i, form the running sum m(i) of the L coefficients surrounding and including A. , where L is the small filter length: (L-l)/2 m(i) = ∑ A. . . j=-(L-l)/2 1+J The values of m(i) represent the coefficient energy which would be covered by a small filter centred on position i. 4. For each small filter desired: 4.1 Find the maximum of m(i) . Select a small filter at this po¬ sition. 4.2 Set the L values of m(i) surrounding and including this po¬ sition to zero. The result of this algorithm is to select a set of non-overlap¬ ping small filters which try to match the important parts of the large filter as closely as possible. However, under special con¬ ditions the positioner may not work correctly. Therefore, in a second embodiment of the positioner step 3 above can be modified to assign a higher weight to the central coefficient in the sli¬ ding window of L coefficients. The formula for m(i) then beco¬ mes: (L-l)/2 m(i) = σA. + ∑ A. . . 1 j=-(L-l)/2 (j not 0) J The value of σ must be chosen as a compromise between making the improvement work and not assigning too much importance to indi¬ vidual coefficients. For example, with small filters of length L = 5 a good value has been found to be σ = 1.3 . Fig. 12 to 14 depict the operation of the second embodiment of the positioner. Index i runs from 0 to n and L = 5. A number of k+1 small filters is used. Fig. 12A corresponds to steps 1 and 2, e.g. A_ = C(2)*C(2). Fig. 12B corresponds to step 3, e.g. m_ = σA + (A Q +A- +A +A.) . Fig. 13 corresponds to step 4. From the running sum m(i) the ma¬ ximum MAX = m(n Q ) is detected in Fig. 13A. Position n is the centre of a first small filter. If this maximum is not zero, the running sums m(i), i = n U_— (, τ jLi—.1. ) j.«. to n n U+. , are set (134) to zero. If the maximum m(n n ) of the sums at position n 0 is zero, a fallback 131 is switched on (132, 133), in which a small filter position n- adjacent to the last significant filter position is selected by adding L to position n "0. ' After zero setting of the L running sums the steps of Fig. 13A are repeated for receiving a further maximum. Fig. 13B shows the respective steps for getting the last small filter centre position n, . In Fig. 14 the small filter centre positions n 0 , n , ..., n, of (k+1) small filters are resorted in a sorter 141 into ascending order of the positions n J.U_, n.± 1 f ..., n J.K, for small filters num- ber '0', •!', ..., 'k'. From the centre position n. for small filter '0' the value L/2 (integer) is subtracted in a first subtractor 142, resulting in delay time α for the first of the variable delays mentioned above. From centre position n. for small filter '1' the value L and the first centre position n. n are subtracted in a second sub¬ tractor 143, resulting in delay time β for the second of the va¬ riable delays mentioned above. This procedure is continued respectively. From the last centre position n., for small filter 'k' the value L and the centre po- J κ sition n. ,, . are subtracted in a last subtractor 144, resul- ting in delay time λ for the last of the variable delays mentio¬ ned above. E.g. five error classes for error E can be used according to Fig. 10. A counter Cl ... C5 is assigned to each error class. If an error according to a specific error class occurs the re¬ spective counter is incremented and the counters of the other classes are set to zero. If the counter of the specific error class is greater than a preselected constant C0N1 ... CON5 , the value for μ is adapted according to Fig. 10 and all counters are set to zero. The constants may have the following values: CON1 = 2000, C0N2 = 1000, C0N3 = 500, CON4 = 100, C0N5 = 50. Due to the adaptation of μ the inventive method can work with improved speed and stability compared to known methods. Programming was done in C language. The figures can be changed accordingly in case of other TV systems or of other reception conditions. Advantageously an inventive equalizer with a long time constant and an inventive ghost canceller with a reduced time constant can be connected in series to have a fast response for moving ghosts and to have an exact equalization for static distortions or ghosts. The invention can also be used for audio or data transmission having included a (digital) reference signal, e.g. DAB (digital audio broadcasting) and DTB (digital video broadcasting) . List, of abbreviations AC all counters AP actual position ARG argument C counter CaC calculated coefficient CeC central coefficient CF centred filter CON constant DI divergence E error El error 1 E2 error 2 Y yes LF long filter LFS long filter size MC main coefficient MF main filter N no P position PI position information RLF reduced long filter ROC rest of counters S sum SF short filter SFS short filter size SP selected position S/P sum/position

Claims: Claims 1. Method for ghost cancelling and/or equalizing, wherein the coefficients (Cl) of a digital filter are in principle con¬ tinuously adapted to minimize the error (ε, El) between the filter output signal (y) of a distorted reference signal and an ideal reference signal (12, 22) which is stored or which can be decoded correctly after reception, characteri¬ zed in that said digital filter is a first LMS filter or filter function (LMS1) with a high tap number and that the coefficients (Cl) of this filter or filter function are used by comparing stepwise values derived from such coef¬ ficients of said first LMS filter which represent the tap positions of a small filter with a reduced number of coef¬ ficients to detect depending on the level of said values the position (PI) of one or more variable delays which con¬ nect in series two or more of said small filters or filter functions and that said connection of small filters and delays forms a second LMS filter (LMS2) , of which the coefficients (C2) corresponding to said small filters are adapted and used in a main filter (MF) , wherein the positions and the delay times of said delays remain fixed during the calculation of the coefficients (C2) of said small filters and wherein the signal to be ghost cancelled and/or equalized passes said main filter (MF) at those times where said reference signal is not pre¬ sent. 2. Method according to claim 1, characterized in that the ad¬ aptation constant μ for the LMS calculation in said first LMS filter (LMS1) and/or in said second LMS filter (LMS2) is adapted according to a statistic of said errors (El, E2) stored in memory means and updated during each LMS calcula¬ tion. 3. Method according to claim 1 or 2, characterized in that each of said values is a sum of the squares or absolute va¬ lues of said corresponding filter coefficients. 4. Method according to claim 3, characterized in that before summing up said values to form each of said sums a higher weight is assigned to the central position value involved. 5. Apparatus for a method according to any of claims 1 to 4, comprising: a main filter (MF) which works on a distorted signal with exception of a reference signal contained within said di¬ storted signal; looped delay means (24) which store said reference signal; a controller circuit (25) which controls said main filter (MF) and said delay means (24) ; a central processor (CP) , which exchanges with said con¬ troller circuit control data and which reads from said de¬ lay means (24) said reference signal and from a further in¬ put (22) said ideal reference signal and which calculates said LMS algorithms and adjusts said variable delays within said main filter (MF) and stores said coefficients (C2) for said small filters in said main filter (MF) . 6. Apparatus according to claim 5, characterized in that said central processor (CP) exchanges data with a μ-adaptation circuit (μ-A) and adapts the value for said adaptation con¬ stant μ according to a statistic of said errors (El, E2) stored and updated in said μ-adaptation circuit.

Inventors: BRUNEAU NELLY, HACKETT ANDREW, KNEE MICHAEL, ZIPP ANDREAS, BRUNEAU, NELLY, HACKETT, ANDREW, KNEE, MICHAEL, ZIPP, ANDREAS
Applicants: THOMSON CONSUMER ELECTRONICS, THOMSON CONSUMER ELECTRONICS S.A.
Application year: 1993
Main classification: H04N5
IPC codes: H03H15, H03H17, H03H21, H04B1, H04B3, H04B7, H04N5