Adaptive equaliser using known and pseudo-known symbols

Abstract: A method of calculating the weights for a tapped delay line space/time processor is disclosed. Those symbols having levels for which it is most certain whether they represent a logical zero or a logical one, are used in addition to the training sequence to set the tap weights.

Description: This invention relates to digital communication systems, e.g. mobile cellular telephone systems. In general, symbols are degraded in transmission in a digital communication network. In, for example, a GSM system, received signals are degraded by the delays due to multipath propagation, by interference from terminals using the same channel and by more general noise. Tapped delay line space and/or time processing may be used to reduce the effects of multipath propagation and interference from other terminals, space processing steering an antenna array to reduce signal levels from interferers and time processing reducing the effect of multipath propagation. Space/time processing can be combined in one multi-branch tapped delay line processor to adapt an antenna array. In order to adapt the antenna, each frame of symbols transmitted by a mobile terminal contains a "mid-amble" comprising a known "training" sequence of 26 symbols. The mobile terminal is instructed by the relevant base station to use one of a number of predetermined training sequences so as to enable interfering terminals to be distinguished. Each of the antennas in the array has a respective tapped delay line equaliser in which the tap output signals are weighted and summed. In a known theoretical proposal, the weights W are determined as follows: w = R xx -1 r xd where R xx is the autocorrelation matrix of the input to the system and r xd is the crosscorrelation vector of the input signal and the known sequence. In practice estimates may be obtained by averaging the instantaneous matrices and vectors over the training sequence. The accuracy of the estimates is limited by the short 26 symbol training sequence. United States patents US-A-3633107 and US-A-5331662, United Kingdom patent GB-A-1503083 and European patent application EP-A-0677952 are referred to as background. Against this background, the invention provides a method of adjusting tap weights of a tapped delay line space and/or time processor by successive iterations, with reference to known and pseudo-known symbols, the weighted tap outputs being summed, wherein a first iteration is carried out by reference to known symbols of a training sequence, subsequent iterations being made with reference to both known and pseudo-known symbols, the latter being selected by comparing the real part of the summed tap output signals with a set level, ascribing a symbol value of logical zero to those summed tap output signals which fall to one side of the set level and ascribing a symbol value of logical one to those summed tap output signals which fall to the other side of the set level and selecting as pseudo-known those symbol values for which the level exceeds a threshold distance from the set level, the threshold being varied between iterations and successive iterations being evaluated by: calculating the mean of the levels of those signals ascribed the value logical zero and the mean of the levels of those signals ascribed the value logical one; calculating the distance between the level of each signal ascribed the value logical zero and the respective mean and the level of each signal ascribed the value logical one and the respective mean; calculating the sum of the distances from the means; calculating the distances of the levels of all signals from the set level; calculating the sum of the distances of the levels of all signals from the set level; calculating the ratio of the sum of the distances from the means to the sum of the distances of the levels of all symbols from the set level, selecting the R xx matrix which gives the lowest ratio, where R xx is an estimate of the autocorrelation matrix of the input to the system, and determining the adjusted tap weights from the selected R xx matrix. In effect, those symbols having levels of which it is most certain whether they represent a logical zero or a logical one, are used in addition to the training sequence to set the tap weights. Different thresholds are tried and that producing the lowest ratio may be selected. Preferably, the weights w are determined as follows: W = R xx -1 r xd where R xx is an estimate of the autocorrelation matrix of the input to the system and r xd is an estimate of the crosscorrelation vector of the input signal and the sequence of known or known and pseudo-known symbols. One embodiment of the invention will now be described, by way of example, with reference to the accompanying drawings, in which: Figure 1 is a schematic drawing of an antenna system and its tapped delay space/time processor; and Figure 2 is an illustrative plot of signal levels received in a training sequence. Referring to the drawings, each antenna 2 in an array of M antennas is connected to a respective receiver 4. The signals received by the array are gaussian minimum shift key (GMSK) modulated. The signals are de-rotated in the receivers 4 to remove differential phase encoding of the GMSK signals. The de-rotated signal from each receiver is fed to a respective analog to digital convertor 3 where it is sampled and quantised, and the quantised samples are converted to coded digital signals. The digitised de-rotated signals are stored in a store 5 from which they can be read in sequence. The digitaised de-rotated signals are read in sequence to a respective tapped delay line 6 for each antenna. The tapped delay line may be physical or simulated by one or more data processors. The processing is carried out faster than real time in either case so that several iterations can be caried out in one frame. Whether the tapped delay line is physical or virtual, at each tap, the signal is weighted by individual weights 8, and the weighted signals are summed in a summer 12. The sums from each space/time processor are summed in a summer 14. In each frame of the signal transmitted by a mobile terminal 15, there is a mid-amble comprising a known training sequence of 26 symbols. There is a plurality of different training sequences and the mobile terminal is instructed by the base station which sequence to send. The training sequence is not re-used by mobile terminal which might interfere with the terminal 15, so that they can be distinguished. The theoretical basis for weighting the space/time processors is the Wiener-Hopf equation: w = R xx -1 r xd where R xx is the autocorrelation matrix of the input to the system and r xd is the crosscorrelation vector of the input signal and the known sequence. An estimate of the autocorrelation matrix and the cross correlation vector is made by averaging the instantaneous i.e. symbol by symbol matrices. The output of summer 14 is analysed to temporarily ascribe symbol values so as to enable the estimate of R xx to be refined using a longer sequence of symbols. In order to do that, pseudo-known symbols are selected from outside the training sequence for which there is a fair degree of certainty as to their validity. A temporary decision to ascribe a symbol value of logical zero or a logical one depends on whether the level of the real part of the output of the summer 14 is positive or negative. Thus a set decision level 16 of zero (see Figure 2) distinguishes the level of logical zero symbols 18 from the level of logical one symbols 20. For a second iteration, an average of the distance of all symbols from the decision level 16 is calculated. This average 28 is shown on both sides of the decision level 16 in Figure 2. Any symbol level falling outside the levels 28,28 is treated as known and the R xx matrix is recalculated and evaluated as described below. For further iterations the level 28 is varied in steps in both directions up to 50% larger than the average and 50% less than the average in, for example, 10% steps. For each iteration, a measure of goodness is calculated to enable the estimate of R xx to be evaluated. The mean 22 of the distances d 0 between the set level 16 and the levels of the zero symbols 18 is calculated. The mean 24 of the distances d 1 between the set level 16 and the levels of the logical one symbols 20 is calculated. The distance between the level of each symbol 18 distinguished as logical zero and the respective mean 22 is calculated. The distance between the level of each symbol 24 distinguished as logical one and the respective mean 24 is calculated. The sum of all the distances from the means is calculated. The distances of the levels of all symbols from the set level is calculated. The sum of the distances of the levels of all symbols from the set level is calculated. The ratio of the sum of the distances from the means to the sum of the distances of the levels of all symbols from the set level is calculated. The smaller this is, the better the choice of the qulaity of the output. Ideally, the levels of the symbols distinguished as logical zero would all be the same, the levels of the symbols distinguished as logical one would all be the same and the levels of zero and one symbols would be equally spaced from the decision level 16. In order to take into account that a low value could possibly be obtained even if the error rate in the recovered sequence is high, the ratio is preferably multiplied by (1 + N) where N is the number of errors between the symbols ascribed values by reference to the set level and the symbols in the known sequence. The value of the product so obtained is a measure of goodness i.e. how good the estimate of R xx is. The lower the value the better the estimate. Once the full set of thresholds has bee tried, the R xx matrix producing the best measure of goodness is selected and utilised to determine the weights W 11 to W ML .

Claims: A method of adjusting tap weights of a tapped delay line space (6) and/or time processor by successive iterations, with reference to known and pseudo-known symbols, the weighted tap outputs being summed, wherein a first iteration is carried out by reference to known symbols of a training sequence, subsequent iterations being made with reference to both known and pseudo-known symbols, the latter being selected by comparing the real part of the summed (12) tap output signals with a set level, ascribing a symbol value of logical zero to those summed tap output signals which fall to one side of the set level and ascribing a symbol value of logical one to those summed tap output signals which fall to the other side of the set level and selecting as pseudo-known those symbol values for which the level exceeds a threshold distance from the set level, the threshold (28) being varied between iterations and successive iterations being evaluated by: calculating the mean (24) of the levels of those signals ascribed the value logical zero and the mean (28) of the levels of those signals ascribed the value logical one; calculating the distance between the level of each signal (dl, 20, do, 18) ascribed the value logical zero and the respective mean (22, 24), and the level of each signal ascribed the value logical one and the respective mean; calculating the sum of the distances from the means; calculating the distances of the levels of all signals from the set level (16); calculating the sum of the distances of the levels of all signals from the set level (16); calculating the ratio of the sum of the distances from the means to the sum of the distances of the levels of all symbols from the set level (16), selecting the R xx matrix which gives the lowest ratio, where R xx is an estimate of the autocorrelation matrix of the input to the system, and determining the adjusted tap weights from the selected R xx matrix. A method as claimed in claim 1, wherein the weights w are determined as follows: w = R xx -1 r xd where r xd is an estimate of the crosscorrelation vector of the input signal and the sequence of known or known and pseudo-known symbols. A method as claimed in claim 1 or 2, wherein before selecting the R xx matrix, the ratio is multiplied by (1 + N) where N is the number of errors between the symbols ascribed values by reference to the set level and the symbols in the known sequence or the known and pseudo known sequence.

Inventors: SPEIGHT TIMOTHY JAMES, SPEIGHT, TIMOTHY JAMES
Applicants: LUCENT TECHNOLOGIES INC, LUCENT TECHNOLOGIES INC.
Application year: 1998
Main classification: H04L25
IPC codes: H04L25, H04B7, H04L1, H01Q3