Abstract:
Discrete symbols of transmitted signals, forming part of the components of a vector D of size N, are estimated from a vector Y of L digital samples of a received signal. The vector Y may be broken down into Y=AD+Y N , where A is a matrix of size L×N previously determined from measurements of at least one transmission channel reply and Y N  represents a vector of L noise samples. The method includes determining an upper triangular matrix T of size N×N and a vector Z of size N such that the quadratic criteria ∥TX−Z∥ 2  and ∥AX−Y∥ 2  are minimal for the same vector X of size N, and dividing the vector Z and the matrix T into blocks so as to operate a minimisation of the quadratic criterion block by block along the diagonal of matrix T.

Description:
RELATED APPLICATION 
     This is a 371 of PCT/FR99/00661 filed on Mar. 22,1999. 
    
    
     BACKGROUND OF THE INVENTION 
     The present invention relates to digital equalisation of signals. It finds a major application in the field of radio communications. 
     The method is applicable when the received signal results from a superimposition of different signals, sent from the same transmitter and/or different transmitters, for which the responses of the transmission channels between transmitter and receiver have been determined beforehand. One of the major problems arising in this situation is to strike a compromise between performance of the equaliser and its complexity. A complete maximum likelihood estimation of all the symbols of the overlaid signals is theoretically possible, using the Viterbi algorithm for example (see G. D. Forney Jr.: “The Viterbi Algorithm”, Proc. of the IEEE, Vol. 61, No. 3, March 1973, pages 268-278). However, as the impulse response of the channels becomes long or the number of overlaid signals is high, the exponential complexity of these methods makes them impractical. 
     Spread spectrum radio communications using code division multiple access (CDMA) illustrate this problem. 
     Let us assume that K synchronous logical channels, denoted here by an index k (1≦k≦K), share the same physical channel, i.e. use the same carrier frequency at the same time, and are differentiated by spreading sequences c k  respectively assigned to them. Each channel is used to transmit a respective signal made up of successive sequences d k , or frames, of n symbols d p   k  (1≦p≦n). The symbols d p   k  have discrete values:binary (±1) in the case of a BPSK modulation, quaternary (±1±j) in the case of a QPSK modulation, . . . 
     Let us also assume that the spreading sequences c k  have a rate Q times greater than that of the symbols d p   k , Q being an integer representing a spreading factor (the extreme situation Q=1 corresponds to no spreading), and a periodicity equal to the period of a symbol. The complex-valued samples (generally ±1 or ±1±j) of the spreading sequences c k  or “chips” are written c q   k  (1≦q≦Q). The sequences c k  are selected so as to be mutually orthogonal        (         ∑     q   =   1     Q                       c   q   k     ·     c   q     k   ′           =       0                 where                 k     ≠     k   ′         )                          
     in order to make it easier to distinguish between the channels. However, the propagation conditions, particularly the multiple paths, do not generally preserve this orthogonality, particularly in the case of short spreading sequences. 
     After base band conversion, digitisation and adapted filtering, a vector Y of the received signal reflecting the symbols emitted over a frame period is expressed as follows:              Y   =       (           y   1               y   2             ⋮             y   p             ⋮             y   L           )     =         ∑       k   □     =   1     K                       (           r   1   k         0       0       ⋯       0             r   2   k           r   1   k                                                               r   2   k         ⋰                   ⋮           ⋮                   ⋰                                               ⋮       ⋰       0       0             r   W   k                                   r   1   k         0           0         r   W   k                       r   2   k           r   1   k             0       0                                 r   2   k                                                 ⋮                       ⋮                   ⋰                   ⋮                                                 r   W   k                         0       0       ⋯       0         r   W   k           )          (             c   1   k     ·     d   1   k                   c   2   k     ·     d   1   k               ⋮               c   Q   k     ·     d   1   k                   c   1   k     ·     d   2   k               ⋮               c   q   k     ·     d   p   k               ⋮               c   Q   k     ·     d   n   k             )         +     Y   N                 (   1   )                                
     where W is the length, in number of chips, of the estimated impulse response of the channels, r k =(r 1   k , . . . , r w   k ) is the estimated impulse response of the k-th channel, the r j   k  being complex numbers such that r j   k =0 if j≦0 or j&gt;W, y p  is the p-th complex sample received (at the chip frequency) where 1≦p≦L=nQ+W−1, and Y N  is a vector of size L made up of additive noise samples. The estimated impulse response r k  takes account of the propagation channel, shaping of the signal by the transmitter and filtering on reception. 
     The size of the problem can be reduced by a factor Q by integrating the codes c k  in the responses r k , i.e. by calculating the following convolution products for 1≦j≦L′=Q+W−1:                b   j   k     =       ∑     q   =   1     Q                       r     j   +   1   -   q     k     ·     c   q   k                 (   2   )                                
     Expression (1) then becomes:              Y   =           ∑     k   =   1     K                       (           b   1   k         0       ⋯       0           ⋮       ⋮                                     b   Q   k         0                                     b     Q   +   1     k           b   1   k                     ⋮                       ⋮                                   ⋮         b   Q   k                                                   b     Q   +   1     k         ⋰       0             b     Q   +   W   -   1     k                                   b   1   k             0       ⋮                                ⋮                                                   b   Q   k                           b     Q   +   W   -   1     k                       b     Q   +   1     k             ⋮       0                                                           ⋰       ⋮           0       ⋯       0         b     Q   +   W   -   1     k           )          (           d   1   k               d   2   k             ⋮             d   n   k           )         +     Y   N       =         ∑     k   =   1     K            B   k     ·     D   k         +     Y   N                 (   3   )                                
     The matrices B k  of size L×n have a structure of the Toeplitz type along a diagonal having a slope Q (along the main diagonal if Q=1), i.e. if β i,j   K  denotes the term located on the i-th row and j-th column of a matrix B k , then β ki+Q,j+1 =β i,j   k  where 1≦i≦L−Q and 1≦j≦n−1. The terms of the matrix B k  are given by: β 1,j   k =0 where 1≦j≦n (B k  therefore has only zeros above its main diagonal, and even above its diagonal of slope Q); β i,1   k =0 where Q+W≦i≦L (band-matrix structure); and β i,1   k =b i   k  where 1≦i&lt;Q+W. 
     In simple equalisers, the aim is merely to estimate the contribution of one channel, the contributions of the other channels being assimilated with noise. In other words, the receiver considers that K=1 after having determined the relevant response B 1 . The linear system ( 3 ) reduces to Y=B 1 D 1 +Y N  and can then be processed, using a method such as the Viterbi algorithm, which maximises the likelihood of the symbol estimations D 1 , using an equaliser of reasonable complexity provided the length W of the channel response is not too big. 
     If the contributions of several channels have to be estimated, one option is to use several simple equalisers of the type described above, operating in parallel with the responses of different channels. Obviously, however, it is preferable to resolve the system ( 3 ) in one go where K&gt;1 by trying to maximise the likelihood of the symbol estimates d p   k  as far as possible. This is referred to as joint equalisation. 
     A matrix A of L=nQ+W−1 rows and N=nQ columns and a vector D of N discrete components are defined in order to express the vector Y in the form: 
     
       
           Y=AD+Y   N   (4) 
       
     
     One possible way of expressing the matrix and the vector D is as follows                A   =     (           B   K         ⋯         B   2           B   1           )       ,                  and                 D     =     (           D   K             ⋮             D   2               D   1           )               (   5   )                                
     In this organisation of the matrix A and vector D, the components are arranged channel by channel. 
     The matrix A and vector D of the linear system ( 4 ) can also be organised so that the components are arranged symbol by symbol. The matrix A will then have a blockwise Toeplitz structure, with a same block B of L′=Q+W−1 rows and K columns repeated n times with a offset of Q zero lines between adjacent blocks B, and the vector D is divided into corresponding blocks D i  of a size K (1≦i≦n), i.e.                                         where                 B     =         (           b   1   1           b   1   2         ⋯         b   1   k               b   2   1           b   2   2         ⋯         b   2   k             ⋮       ⋮                   ⋮             b     Q   +   W   -   1     1           b     Q   +   W   -   1     2         ⋯         b     Q   +   W   -   1     K           )                   and                   D   i       =     (           d   i   1               d   i   2             ⋮             d   i   K           )               (   7   )                                 
     One conventional solution for resolving a system such as ( 4 ) is the least square method, by means of which the vector {circumflex over (D)} is determined with N continuous components, which minimises the quadratic error ε=∥A{circumflex over (D)}−Y∥ 2 . Discrete values of the components of the vector {circumflex over (D)} relating to each channel are then obtained, often through a channel decoder. The solution {circumflex over (D)} within the least square meaning is given by: {circumflex over (D)}=(A H A) −1 A H Y, where A H  denotes the conjugated transposed matrix of A. The problem is then reduced to inverting the positive defined Hermitian matrix A H A. This inversion may be performed by means of various conventional algorithms directly (Gauss, Cholesky, . . . methods) or using iterative methods (Gauss-Seidel algorithms, gradient algorithms . . . ). 
     The estimation error D−{circumflex over (D)} is equal to (A H A) −1 A H Y N , which demonstrates that the solution obtained is affected by a noise of variance: 
     
       
         σ 2   =E (∥ D−{circumflex over (D)}∥   2 )= N   0 x Trace[( A   H   A ) −1 ]  (8) 
       
     
     where N 0  is the power spectral density of the noise. The noise is seen to be amplified if the matrix A H A is badly conditioned, i.e. when it has one or more eigenvalues close to 0. 
     This noise amplification is the main disadvantage of conventional resolution methods. In practice, the situations in which the matrix A H A is poorly conditioned arise frequently, especially in the presence of multiple propagation paths. 
     A relatively simple means is known of remedying this drawback to a certain extent by incorporating an interference residue in the solution, i.e. rather than using the optimum solution within the meaning of the least squares, by adopting instead the solution: {circumflex over (D)} MMSE =(A H A+{circumflex over (N)} 0 ) −1 A H Y, where {circumflex over (N)} 0  denotes an estimation of the noise spectral density, which the receiver must therefore compute. This method is known as MMSE (minimum mean square error). It allows the estimation variance to be reduced by introducing a bias. 
     An object of this invention is to alleviate the above-mentioned limitation of the known joint equalisation methods and to propose a sound compromise between the estimation reliability and the complexity of the equaliser. 
     SUMMARY OF THE INVENTION 
     Accordingly, the invention proposes a digital equalisation method for estimating, from a vector Y of L digital samples of a received signal, the discrete symbols of at least one transmitted signal forming part of the components of a vector D of a size N, wherein the vector Y may be decomposed as Y=AD+Y N , where A is a matrix of L rows and N columns, determined beforehand from measurements of the response of at least one transmission channel, and Y N  represents a vector of L noise samples. This method comprises the steps of: 
     determining an upper triangular matrix T of N rows and N columns and a vector Z of a size N such that the quadratic criteria ∥TX−Z∥ 2  and ∥AX−Y∥ 2  are minimum for the same vector X of size N; 
     dividing the vector Z into J blocks Z i  (1≦i≦J) and the matrix T into J(J+1)/2 blocks T i,j  (1≦j≦i≦J), J being an integer greater than 1, the block Z i  being made up of N i  components of the vector Z, where              ∑     i   =   1     J                     N   i       =   N     ,                          
     and the block T i,j  being made up of N i  rows and N j  columns, in the form:                           
     estimating N 1  of the discrete symbols as being the components of a vector {circumflex over (D)} 1  equal to that of the vectors X 1 , made up of N 1  components taking the different possible values of the discrete symbols, which minimises the quantity ∥T 1,1 X 1 −Z 1 ∥ 2 . 
     The method exploits a priori the knowledge that the unknown variables to be estimated (the symbols of the vector D) assume discrete values. Taking this information into account a priori makes it possible to overcome the possible singularities of the linear system ( 4 ) to a certain extent. 
     Making the problem triangular, i.e. passing from matrix A to the triangular matrix T in the quadratic criterion to be minimised, simplifies the search for the optimum to a large extent by exploring the different possible discrete values of the symbols. 
     Sub-dividing the triangular matrix T into blocks enables iterative processing to be applied in order to successively estimate the symbols by blocks of size N i . The method may thus include the following step, performed successively for each of the values of i from i=2 to i=imax, the integer imax being such that 2≦imax≦J: 
     estimating N i  of the discrete symbols, as being the components of a vector {circumflex over (D)} i  equal to that of the vectors X i , made up of N i  components taking the different possible values of the discrete symbols, which minimises the quantity                     T     i   ,   i            X   i       +       ∑     j   =   1       i   -   1                         T     i   ,   j              D   ^     j         -     Z   i            2     .                          
     If the vectors X of size N are broken down into J blocks X i  of size N i  in a manner similar to the vector Z          (     X   =     (           X   J             ⋮             X   1           )       )     ,                          
     and with the notations ε 1 =∥T 1,1 X 1 −Z 1 ∥ 2  and, for 2≦i≦J, ε i =∥T i,i X i −{tilde over (Z)} i ∥ 2  where              Z   ~     i     =       Z   i     -       ∑     j   =   1       i   -   1                         T     i   ,   j            X   j             ,                          
     the global quadratic criterion to be minimised is                 TX   -   Z          2     =       ∑     i   =   1     J                       ɛ   i     .                              
     Applying the minimisation block by block (i.e. by calculating {circumflex over (D)} 1  as the X 1  with discrete values which minimise ε 1 , then {circumflex over (D)} 2  as the X 2  with discrete values which minimise ε 2  where X 1 ={circumflex over (D)} 1  in the expression of {tilde over (Z)} 2 , then {circumflex over (D)} 3  as the X 3  with discrete values which minimise ε 3  where X 1 ={circumflex over (D)} 1  and X 2 ={circumflex over (D)} 2  in the expression of {tilde over (Z)} 3 , etc.) will certainly not lead to the optimum discrete solution {circumflex over (D)} as a general rule, but the solution is very close to the optimal one and the complexity for solving the system is decreased very considerably. 
     The linear system is completely resolved if imax=J. It is also possible to perform a smaller number of iterations (at the limit one only), for example if the receiver needs to estimate the transmitted signals on only some of the channels. This being the case, the algebraic process leading from the matrix A to the matrix T enables characteristics of the response from other channels to be taken into account to a certain extent, which can procure a gain in the likelihood of the estimations. 
     In the method proposed by the invention as outlined above, each iteration leads to determination of a single vector {circumflex over (D)} i . Since the solution obtained is generally sub-optimum, performance can be improved by retaining several candidate vectors for each iteration (on the basis of the discrete vectors for which the criterion ε i  assumes the lowest values) and by selecting at the end of the loop the set of candidate vectors that will have minimised the global criteria. In this alternative embodiment, after having determined the matrix T and the vector Z and having divided them into blocks, the following step is performed successively for each of the values of i from i=1 to i=imax, the integer imax being such that 2≦imax≦J: 
     determining a number M i ≧ 1  of estimation vectors Ê i   (m) , (1≦m≦M i ), made up of          P   i     =       ∑     j   =   1     i                     N   j                              
     components whose values are among the different possible values of the discrete symbols, in the form              E   ^     i     (   m   )       =     (       X   i     (   m   )           E   ^       i   -   1       (     m   ′     )         )       ,                          
     where Ê i−1   (m′)  is an estimation vector of size P i−1  determined at the preceding step if i&gt;1 (1≦m≦M i−1 ) and X i   (m)  is a vector of size N i , whereby said M i  estimation vectors Ê i   (m)  minimise the quantity: 
     
       
         δ i   (m) =δ i−1   (m′)   +∥T   i,i   X   i   (m)   −{tilde over (Z)}   i   (m′) ∥ 2   (10) 
       
     
     where δ 0   (m′) =0, {tilde over (Z)} 1   (m′) =Z 1 , and, for i&gt;1: 
     
       
           {tilde over (Z)}   i   (m′)   =Z   i −( T   i,i−1   ¦. . . ¦T   i,2   ¦T   i,1 ) Ê   i−1   (m′)   (11) 
       
     
     The number M imax  being equal to 1, P imax  discrete symbols are then estimated by the components of the estimation vector Ê imax   (1) . 
     Another aspect of the present invention relates to a radio communication receiver comprising conversion means for producing successive vectors Y of L digital samples from a received radio signal, means for measuring the response of at least one transmission channel, so as to determine, for each of said vectors Y, a matrix A of L rows and N columns such that the vector Y can be decomposed as Y=AD+Y N , where D is a vector of size N made up of discrete symbols of at least one signal transmitted and Y N  represents a vector of L noise samples, and equalisation means implementing the above-defined digital equalisation method for estimating, on the basis of each vector Y, the discrete symbols of at least one transmitted signal forming part of the components of the corresponding vector D. 
    
    
     DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a block diagram of an example of a radio communication receiver as proposed by the invention, 
     FIGS. 2 and 3 are flow charts showing the steps of two embodiments of the equalisation method proposed by the invention; 
     FIG. 4 is a diagram illustrating the performance of the method in the absence of channel encoding/decoding; and 
     FIG. 5 is a diagram similar to that of FIG. 4 with channel encoding/decoding. 
    
    
     DESCRIPTION OF PREFERRED EMBODIMENTS 
     It is assumed that the radio signals processed by the receiver of FIG. 1 are CDMA signals received on K logical channels differentiated by their respective spreading sequences c k  as explained above. 
     The receiver illustrated in FIG. 1 comprises a radio stage  1  which receives the radio signal picked up by the antenna  2  and converts it into base band. The base band signal is digitised by an analogue-to-digital converter  3  and then applied to a reception filter  4 . The filter  4  applies matched filtering corresponding to the signal shaping applied by the transmitter. It provides a digital signal as one complex sample per chip of the spreading sequences. 
     This digital signal is applied to a demodulator, comprising a synchronisation and channel estimation module  6  on the one hand and an equaliser  7  on the other. 
     Channel synchronisation and estimation are performed in a conventional manner, for example, by means of a synchronisation sequence included in each signal frame by the transmitter. Detection of this sequence, known to the receiver, enables the receiver to synchronise with the time structure of the transmitted frames on the one hand and the impulse response r k  of the channel k, on which the frames are transmitted, to be estimated on the other. Having computed the impulse responses r k  of the different channels taken into consideration, the module  6  computes the terms b j   k  in accordance with equation (2) for 1≦k≦K and 1≦j≦L′=Q+W−1, and applies them to the equaliser  7 . 
     The equaliser  7  operates as shown in the flow chart of FIG. 2, for example, so that each synchronised frame of the received signal is processed, being in the form of a vector        Y   =     (           y   1             ⋮             y   L           )                            
     where L=nQ+W−1 taking the notations set out above. 
     In a first step  10 , the equaliser  7  sets up the matrix A in the manner stated in equations (5) above by juxtaposing K blocks B k  of L rows and N=nQ columns, defined on the basis of the terms b j   k  as stated in equation (3). 
     The equaliser  7  then computes an upper triangular matrix T of size N×N and a vector Z of a size N such that the quadratic criteria ∥TX−Z∥ 2  and ∥AX−Y∥ 2  are linked to one another by an increasing function independent of the vector X of size N (Xε N ), so that two criteria on any sub-set of  N  (in particular on the sub-set Φ N , where Φ denotes the discrete set of possible values of the symbols d k   p  are minimised by the same vector X. Several methods may be used to compute this matrix T and this vector Z. 
     The Cholesky method in particular may be used to factorise the positive defined Hermitian matrix A H A in the form 
     
       
           A   H   A=Γ   H Γ  (12) 
       
     
     where Γ is an upper triangular matrix. The matrix T may be taken as being proportional to the Cholesky factor Γ verifying equation (12), multiplied by an arbitrary complex coefficient α≠0 (for example α=1), in which case the matrix A H A is proportional to T H T in a ratio of 1/|α| 2 :                  A   H        A     =         T   H        T            α        2               (   13   )                                
     There are a number of conventional algorithms which may be used to effectively perform the Cholesky factorization of a positive defined Hermitian matrix. For example, reference may be made to the work by Golub &amp; Loane: “Matrix Computation”, published by Baltimore M. B 
     Having thus computed the matrix T at step  11 , the equaliser  7  sub-divides it into blocks T i,j  of size N i ×N j  as stated in equation (9). 
     It is of advantage to apply the division into blocks so that J=K and N i =n where 1≦i≦J. Given the chosen organisation of the matrix A (form (5)), the matrix A H A will have blocks of a size n×n accordingly on its main diagonal, equal respectively to the Toeplitz matrices (B k ) H B k . Under these conditions, all the diagonal blocks T i,i  of the matrix T are top triangular matrices of size n×n which, with a very good approximation, will have a Toeplitz structure along their main diagonal. 
     At step  12 , the equaliser  7  computes the vector Z as follows: 
     
       
           Z=|α|   2 ( T   H ) −1   A   H   Y   (14) 
       
     
     which requires the lower triangular matrix T H  to be inverted. Such a matrix can be inverted by various numerical methods which can be implemented very rapidly. 
     Since the matrix T and the vector Z are chosen in accordance with equations (13) and (14), it can be verified that ∥TX−Z∥ 2 =|α| 2 ∥AX−Y∥ 2 +β, where |α| 2 &gt;0 and β=∥Z∥ 2 −∥αY∥ 2  are real numbers independent of X. This demonstrates that the quadratic criteria ∥TX−Z∥ 2  and ∥AX−Y∥ 2  are minimised by the same vector X. 
     At step  12 , the vector Z is also sub-divided into blocks Z i  (1≦i≦J) of size N i  as stated in equation (9). The equaliser then proceeds to a computation loop, initialised by i=1 at step  13  in order to estimate the symbols of the vector D by successive blocks D i  of size N i . The vector of N i  estimations obtained at the i-th iteration of this loop is written {circumflex over (D)} i . 
     Each iteration commences, at step  14 , by computing a vector {tilde over (Z)} i . This vector {tilde over (Z)} i  of size N i  is equal to Z i  where i=1 and to            Z   ~     i     =       Z   i     -       ∑     j   =   1       i   -   1                         T     i   ,   j              D   ^     j                                  
     where i&gt;1. 
     At step  15 , the equaliser computes the estimation vector {circumflex over (D)} i  as being that of the vectors X i  of size N i , the components of which assume the different possible values of the discrete symbols d p   k  (X i εΦ N     i   ), which minimises the quadratic criterion ε i =∥T i,i X i −{tilde over (Z)} i ∥ 2 . 
     In the preferred situation where J=K and N 1 = . . . =N j =n, the fact that an approximation of the block T i,i  can be made by an upper triangular matrix having a Toeplitz structure along its main diagonal enables the minimisation to be performed at step  15  using a sequential trellis algorithm, supplying the optimum solution within the meaning of maximum likelihood, for example the Viterbi algorithm. The complexity of the Viterbi trellis corresponds to that required to equalise a single channel, with n successive symbols to be estimated and a impulse response length in the order of W/Q symbols. It should be pointed out that the method of jointly equalising K channels as proposed by the invention does not involve any excessive complexity as compared with equalising the different channels separately. The additional complexity is mainly limited to operations which can be effected rapidly, namely, factorisation of the matrix A H A by the Cholesky or a similar method to compute the matrix T, inversion of the triangular matrix T H , and the linear combinations of the steps  14 . 
     The i-th iteration in the loop ends at step  16  with memorisation of the estimation vector obtained {circumflex over (D)} i . The latter corresponds to an estimation of the vector D k  defined in equation (3) where k=i, i.e. it contains the estimates of the n symbols d 1   k  to d n   k  of the frame transmitted on channel k=i:            D   ^     i     =         D   ^     k     =       (             d   ^     1   k             ⋮               d   ^     n   k           )     .                              
     The index i is compared with the predefined number imax of iterations in the loop at step  17 . If i&lt;imax, the index i is incremented at step  18  before reverting to step  14  for the iteration relating to the next channel. When i=imax, the equaliser has terminated the computations for the current frame and it issues the estimations {circumflex over (d)} p   k  of the symbols relating to the different channels. If the receiver needs to estimate the symbols for each of the K channels, then imax=J=K is applied. 
     In general, the symbols d p   k  emitted on a channel are supplied by a channel encoding device which protects the transmitted data symbols a p   k against errors. In the case of mobile radio channels, the actual coding of the channel, which introduces redundancy in an error detection and/or error correction code, is generally followed by interleaving in order to disperse the errors which frequently occur in packets on this type of channel. At the receiver, the estimated symbols {circumflex over (d)} p   k  issued for each channel k by the equaliser  7  are forwarded to a de-interleaving module  8  (FIG. 1) and then to a channel decoder  9  which uses the coding redundancy to detect and correct any transmission errors and finally supply the estimations â p   k  of the relevant information symbols for the channel k. 
     The embodiment illustrated in FIG. 3 essentially differs from that of FIG. 2 in the following two aspects: 
     the matrix A is organised in the manner stated in equations (6) and (7); and 
     in each iteration i, a number M i  of estimation vectors is retained for which the quadratic criterion has the M i  smallest values. 
     The fact of taking M i ≧1 estimation vectors of a size          P   i     =       ∑     j   =   1     i                     N   j                              
     during an iteration i improves optimisation since it avoids eliminating certain symbol values which might appear sub-optimum during the iteration in which these symbols are estimated but which might be regarded as better a posteriori against the global criterion ∥TX−Z∥ 2 . The extreme case where M 1 = . . . =M imax =1 corresponds to the preceding case. 
     In the embodiment illustrated in FIG. 3, the equaliser  7  starts at step  20  by forming the block B of size L′×K and the matrix A of size L×N in accordance with equations (6) and (7). At steps  21  and  22 , it then proceeds to compute T and Z and divide them into blocks T i,j  and Z i  in the same way as in steps  11  and  12  described with reference to FIG.  2 . 
     At this point, it is of advantage to divide the blocks so that J=n and N i =K where 1≦i≦J. In view of the organisation chosen for the matrix A (format ( 6 )), the matrix A H A therefore has identical blocks of a size K×K on its main diagonal, equal to the matrix B H B. Under these conditions, all the diagonal blocks T i,i  of the matrix T are identical with a very good approximation (a negligible boundary effect may cause the diagonal blocks closest to the top left-hand corner of the matrix T to vary slightly (i∓J)). 
     This being the case, as shown at step  23 , all the terms of the form T i,i X i  (X i εΦ K ) can be computed in advance and will then be used in the loop, by taking a single matrix T i,i  equal to T 1,1 , i.e. proportional to the Cholesky factor of the matrix B H B (T i,i   H T i,i =|α| 2 ·B H B). There will be two of these terms in the case of binary symbols. 
     The optimisation loop is initialised by i=1 at step  24 . At step  25 , the equaliser computes M i−1  vectors {tilde over (Z)} i   (m′)  in accordance with equation (11) for 1≦m′≦M i−1 . This step  25  has no object during the first iteration (M 0 =0 and {tilde over (Z)} 1   (0) =Z 1 ). 
     At step  26 , the equaliser scans the pre-computed terms T i,i X i  and, if i&gt;1, the M i−1  estimation vectors Ê i−1   (m′)  determined in the preceding iteration, to determine which are the M i  estimation vectors Ê i   (m)  (1≦m≦M i ) of size P i  and of the form            E   ^     i     (   m   )       =     (           X   i     (   m   )                   E   ^       i   -   1       (     m   ′     )             )                            
     (for i=1: Ê 1   (m) =X 1 ), which minimises the criterion δ i   (m)  given by equation (10) (for i=1, the criterion δ 1   (m) =∥T 1,1 X 1   (m) −Z 1 ∥). 
     The i-th iteration in the loop ends at step  27  when the M i  estimation vectors obtained Ê i   (m)  are stored. These contain provisional estimations of the last P i  symbols of the vector D organised as in equations (6). As long as i&lt;imax (test  28 ), the M i  minimum criteria δ i   (m)  (1≦m≦M i ) are also stored in memory at step  29  for use in the next iteration, after which the index i is incremented at step  30  before returning to step  25  for the next iteration. When i=imax, the equaliser has terminated the computation for the current frame and issues the estimations {circumflex over (d)} p   k  of the symbols relating to the different channels. These estimations are extracted from the vector Ê imax   (1) , it being sufficient to take M imax =1. If the receiver needs to estimate each of the n symbols of each frame, one takes imax=J=n. 
     FIG. 4 illustrates the effectiveness of joint equalisation using the method outlined above (curve I) compared with joint equalisation using the conventional MMSE method (curve II), showing the dependency between the bit error rate BER observed in the estimations {circumflex over (d)} p    k  of the symbols d p   k  (without channel encoding/decoding), expressed in %, and the ratio Eb/NO between the energy per bit and the noise power spectral density expressed in decibels. These curves were obtained by computer simulation under conditions representative of a cellular mobile telephone application, namely: 
     uplink simulation at 2 GHz to a receiving base station from K=8 mobile stations, each having a individual spreading sequence c k  of length Q=8; 
     the modulation used is of the BPSK type, the symbols d p   k  and the chips c q   k  being binary (±1); 
     the frames consist of n=56 symbols of a duration of 3.69 μs; 
     channel of the VEHICULAR A type with a mobile speed of 100 km/h. 
     In these simulations, the method proposed by the invention and described above was used with format ( 6 ) for matrix A, where J=n=imax=56, N 1 = . . . N j =K=8 and M 1 = . . . =M j =1. FIG. 4 demonstrates the considerable improvement which can be achieved by joint equalisation as proposed by the invention. 
     FIG. 5 sets out the results obtained during the same simulations in terms of bit error rate BER observed in the estimates â p   k  of the symbols a p   k , where using channel coding based on a rate 1/3 convolutional code with constraint length  9  and interleaving of the symbols transmitted over a period corresponding to four frames. For a BER of 0.1%, the power gain is in the order of 2 dB. 
     Various algebraic methods other than the above-mentioned Cholesky factorisation may be used to provide the triangular matrix T and the vector Z so that the same vector X minimises the two quadratic criteria ∥TX−Z∥ 2  and ∥AX−Y 2 . 
     For example, the matrix A may also be triangularized using the Householder method (see above-mentioned work by Golub &amp; Loane). This method provides a unitary matrix U of size L×L such that the product UA, which is a matrix L×N, is of the form:              UA   =       (         X       X       ⋯       X           0       X                                   ⋮       0       ⋰                                               ⋰       X                                               0           ⋮                               ⋮           0       ⋯       ⋯       0         )     =     (           Γ   ′             0         )               (   15   )                                
     i.e. formed by a first block Γ=of size N×N having n upper triangular structure and by a second block of L−N rows of zeros. Accordingly, we can take T=αΓ′, where α is an arbitrary complex coefficient that is not zero (for example α=1). By sub-dividing the vector UY of size L into two blocks Y′ and Y″ of sizes N and L−N respectively, i.e.          UY   =     (           Y   ′               Y   ″           )       ,                          
     it is possible to select Z=αY′. With this choice too, the quadratic criteria ∥TX−Z∥ 2  and ∥AX−Y∥ 2  are still linked by a relation ∥TX−Z∥ 2 =|α| 2 ∥AX−Y∥ 2 +β, where |α| 2 &gt;0 and β=−∥αY″∥ 2  are real numbers independent of X. The above-described method can therefore be applied in comparable conditions. 
     On the other hand, it should be pointed out that the upper triangular matrix T could be replaced by a lower triangular matrix, by applying the same approach. This replacement can be made simply by adapting the algebraic method used to move from matrix A to matrix T or alternatively by inverting the order of the components in the vectors Y and D. 
     The field in which the method described above can be applied is not limited to CDMA radio communications. 
     For example, still within the field of radio communications, the specific case where Q=1 might be considered in the explanations given above. In this case, if the matrix A is constructed in accordance with expression ( 5 ), the number L of rows in the matrix A and blocks B k  is equal to n+W−1, where W is the length of the estimation of the impulse response of a channel, expressed by the number of symbols of the signals, each of the blocks B k  having a Toeplitz structure along the main diagonal. If the matrix A is constructed in accordance with format ( 6 ), the number L′ of rows of the block B corresponds to the length W of the estimated channel impulse response, expressed as a number of symbols of the signals, the repeated blocks B being offset by one row. 
     In this case, the system is reduced to one with no spectrum spreading. The method will then allow synchronous interference to be taken into account by the receiver, a phenomenon which may be encountered in particular in cellular networks based on time and/or frequency division multiple access (TDMA/FDMA). Let us consider a cellular network of the GSM type, for example (combined TDMA/FDMA), in which the base stations of a set of cells covering a given geographical zone would be synchronised. A distinction may be made between two cells of this set re-using the same frequencies on the basis of the synchronisation sequences incorporated in the frames of the transmitted signals. These different sequences allow a separate evaluation of the impulse responses of channels sharing the same carrier at the same time and on which signals from different cells are transmitted. In this case, the method described above may be used to equalise the channel relevant to the receiver by processing the transmitted signal on the other channel(s) not as noise, as is usually the case, but as signals constructed in the manner prescribed in the radio communication system. The symbols carried by these latter signals are not necessarily estimated explicitly (it is possible to take imax&lt;J), since they are implicitly taken into account in the algebraic transformation leading to the triangular matrix T. 
     Generally speaking, the method proposed by the invention can be applied whenever the symbols which have to be estimated are components of a vector D such that a received signal vector Y can be modelled by a linear system of format ( 4 ) (see J. G. Proakis: “Digital Communications”, published by MacGraw-Hill, NewYork, 1982).