Abstract:
A signal received by a base station is fed to a set of filters matched to spreading codes allocated to pilot channels originating from radio terminals. The outputs from the matched filters are processed so as to estimate parameters comprising, for each channel, eigenvectors representing propagation paths associated with respective amplitudes of reception along these paths. The processing of the output signals from the matched filters comprises an estimation of parameters for a first channel received with a fairly high power by the base station, a correction of the output from the matched filter of a second channel having less energy, taking account of at least one of the eigenvectors of the first channel, and an estimation of parameters for this second channel on the basis of the modified output from said matched filter.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    The present invention relates to mobile radio communication systems using code division multiple access (CDMA) techniques. It lies within the receivers used in the fixed stations of these systems and operating a coherent demodulation of spread spectrum signals originating from a set of radio terminals.  
           [0002]    Coherent demodulation requires various parameters representing the propagation channel between the transmitter and the receiver. Some of these parameters vary relatively slowly and can be estimated by statistical survey procedures. Such is the case for example for the delays assigned to the multiple propagation paths in the conventional rake receiver. The delays specific to the various paths can be updated at fairly low frequency, for example of the order of about a hundred milliseconds. Other parameters have abrupt variations, on the scale of the duration of an information symbol, which are due to the phenomenon of fading. Such is the case in particular for the instantaneous amplitudes of reception of the symbols following the propagation paths taken into consideration, which are necessary for coherent demodulation. These instantaneous amplitudes are complex amplitudes, manifesting the attenuation and the phase shift which are undergone at each instant along the paths. In general, these complex amplitudes are estimated from symbols known a priori, or pilot symbols, interspersed among the information symbols transmitted so as to allow coherent demodulation.  
           [0003]    It is known that CDMA receivers are affected by the near-far problem according to which transmission from mobiles near a base station tends to mask that from distant mobiles. The reason is that all these mobiles share the same uplink frequency at the same time, the distinction between them resulting from the quasi-orthogonality of the spreading codes. Transmission power controls procedures are implemented in order to limit the impact of this problem, but nonetheless the base station does not receive with the same power the signals transmitted by the various mobiles, in particular when the spreading factors of the various channels are not the same or when a mobile is moving fast, which may bias the power control algorithm.  
           [0004]    In general, channel estimation methods make the assumption that the noise present on a channel is white noise. This assumption is correct in the case of thermal noise, although not for the noise generated by the other transmitters. The estimation methods then generate errors which are especially appreciable when the power received on a channel dominates that received on one or more other channels.  
           [0005]    An object of the present invention is to make the estimates of superposed CDMA channels more reliable in order to improve the performance of the receivers.  
         SUMMARY OF THE INVENTION  
         [0006]    The invention thus proposes a signal processing method for a base station of a code division multiple access radio communication system, wherein a first signal received by the base station is fed to a set of filters matched to spreading codes allotted to pilot channels originating from respective radio terminals, and output vectors from the matched filters are processed so as to estimate parameters representing said channels. The estimated parameters for a channel originating from a radio terminal comprise eigenvectors representing propagation paths between this radio terminal and the base station, respectively associated with amplitudes of reception along said paths. According to the invention, the processing of the output vectors from the matched filters comprises an estimation of parameters for at least one first channel on the basis of the output vector from a first filter matched to the spreading code allocated to said first channel, a modification of the output vector from a second filter matched to the spreading code allocated to at least one second channel, the output vector from the second matched filter having on average less energy than the output vector from the first matched filter, and an estimation of parameters for said second channel on the basis of the modified output vector of the second matched filter. The modification of the output vector from the second matched filter comprises at least one subtraction of a vector proportional to a projection of said output vector from the second matched filter parallel to a vector of the form M H .M 1 .v 1,i , where M 1  and M are matrices determined by the spreading codes respectively allocated to said first and second channels, v 1,i  is one of the estimated eigenvectors for the first channel, and (.) H  designates the conjugate transpose.  
           [0007]    The eigenvector v 1,i  is advantageously the estimated eigenvector for the first channel which is associated with the amplitude whose modulus is on average the highest. It is also possible to take account of several eigenvectors associated with eigenvalues of high modulus in the diagonalization of the autocorrelation matrices of the fading on the various channels.  
           [0008]    A correction of the estimated impulse responses of channels received relatively weakly is thus undertaken, after the matched filtering, so as to take account of the interference caused by one or more paths of one or more channels received with more power.  
           [0009]    This correction does not introduce very much complexity into the receiver, especially when short spreading codes are used.  
           [0010]    It amounts to projecting the estimated impulse response vector of the low-energy channel (at the output of the matched filter) onto a subspace orthogonal to the eigenvector associated with the strongest path of the channel received with the most power. The bias thus introduced is very weak and it avoids the estimation errors due to the possible presence of a powerful interferer.  
           [0011]    To avoid any problems of noise amplification when the white noise is more powerful than the interferer, a weighting of the projection is preferably undertaken. The subtracted vector is then given by  
             α   i         α   i     +   N0              J   i     ·     J   i   H     ·     h   ^         ,                         
 
           [0012]    where ĥ is the output vector from the second matched filter,  
           J   i     =       1   Q     ·     M   H     ·     M   1     ·     v     1   ,   i           ,                         
 
           [0013]    Q is the spreading factor on the pilot channels, α i  is an average power of reception along the propagation path represented by the eigenvector v 1,i  (eigenvalue associated with v 1,i ) and N0 is an estimated noise power on the second channel.  
           [0014]    The method is applicable when the signals are transmitted on two parallel pathways or channels between the transmitter and the receiver, for example two quadrature pathways, one of which comprises pilot symbols known a priori and the other of which comprises unknown information symbols. This case is that of the uplink in third-generation cellular systems of UMTS (“Universal Mobile Telecommunications System”) type.  
           [0015]    Each of the pilot channels is then formed jointly with a quadrature data channel emanating from the same radio terminal. A second signal, received by the base station in phase quadrature with respect to said first signal, is fed to a second set of filters matched to spreading codes respectively allocated to the data channels originating from the radio terminals. Some at least of the output vectors from the matched filters of the second set are modified, and information symbols transmitted on a data channel originating from a radio terminal are estimated by feeding the modified output vector from the second filter matched to the spreading code allocated to this data channel to a rake receiver defined by the parameters estimated for the pilot channel originating from said radio terminal. The modification of the output vector from said matched filter of the second set comprises at least one subtraction of a vector proportional to a projection of said output vector parallel to a vector of the form M′ H .M 1 .v 1,i , where M′ is a matrix determined by the spreading code allocated to said data channel.  
           [0016]    Stated otherwise, the same correction by projection is performed on the pilot channels and on the data channels.  
           [0017]    Another aspect of the present invention relates to a signal processing device for a base station, tailored to the implementation of the above method. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0018]    [0018]FIG. 1 is a block diagram of the reception part of a base station according to the invention.  
         [0019]    [0019]FIGS. 2 and 3 are schematic diagrams of receivers belonging to the base station of FIG. 1. 
     
    
     DESCRIPTION OF PREFERRED EMBODIMENTS  
       [0020]    The invention is described below within the framework of a spread spectrum radio communication system using a code-division multiple access technique (CDMA) of which UMTS is an example. A channel of such a system on a carrier frequency is defined by a spreading code composed of discrete samples called “chips”, having real values (±1) or complex values (±1±j)/{square root}{square root over (2)}, which follow one another at a chip rate F c .  
         [0021]    In the case of the uplink (from the terminals to the base stations) of a UMTS network in frequency division duplex (FDD) mode, a terminal uses two quadrature channels each using a real-valued spreading code together with binary phase modulation (BPSK, “Binary Phase Shift Keying”) and F c =3.84 Mchip/s. The two BPSK signals modulate two quadrature radio waves. One of these two channels (I pathway) carries the user data, and the other (Q pathway) carries control information.  
         [0022]    This control information comprises pilot bits known a priori to the base station and which allow it to estimate the parameters of the propagation channel. In what follows, reference will therefore be made to the I pathway as being the pilot channel.  
         [0023]    [0023]FIG. 1 shows the reception part of a base station (“node B”) of a UMTS type network in FDD mode operating on the two quadrature pathways (I and Q). The I pathway (real part of the complex baseband signal) transports the data bits, while the Q pathway (imaginary part) transports the control bits, in particular the pilot bits, with for example a spreading factor Q=256. For a precise description of these uplink channels reference may be made to the technical specification 3G TS 25.211, version 3.3.0, “Physical Channels and Mapping of Transport Channels onto Physical Channels (FDD) (Release 1999)”, published in June 2000 by the 3GPP (“3 rd  Generation Partnership Project”), section 5.2.1.  
         [0024]    The base station illustrated by FIG. 1 comprises a radio stage  1  which performs the analogue processing required on the radio signal picked up by the antenna  2 . The radio stage  1  delivers a complex analogue signal whose real and imaginary parts are digitized by the analogue/digital converters  3  on respective processing pathways I and Q. On each pathway, a matched filter  4  tailored to the pulse shaping by the transmitter produces a digital signal r I , r Q  at the chip rate of the spreading codes.  
         [0025]    The resultant complex signal r=r I +j.r Q  is fed to receivers  5  which effect the processing for estimating the responses of k channels and the symbols sent on these k channels.  
         [0026]    The signals transmitted by a terminal to a base station propagate along multiple paths, and arrive at the base station together with signals sent by other terminals with other spreading codes.  
         [0027]    Consider the reception by the base station of an unknown information bit b on the I pathway from a mobile terminal, in synchronism with a known pilot bit (equal to 1 for example) on the Q pathway. The duration 1/F S  of a symbol (bit) on the channel is a multiple of the chip duration, the ratio of the two being the spreading factor Q=F C /F S  of the channel. In the example of UMTS, the spreading factor Q is a power of 2 lying between 4 and 256.  
         [0028]    Moreover, L denotes the number of propagation paths allowed for by the receiver  5 , and W the length of the impulse response of the channel, expressed in terms of number of chips (for example W=6.Q for a response over 400 μs).  
         [0029]    The receiver  5  uses a “rake” receiver  10  of conventional type (FIGS. 2 and 3). The channel propagation profile is defined by a set of eigenvectors v i  and of associated eigenvalues λ i  for 0≦i&lt;L, which is calculated with a relatively large periodicity (for example of the order of about a hundred milliseconds) by a channel analysis module  11 . Each eigenvector v i , of dimension W, is a waveform associated with an echo in the impulse response of the channel. In a traditional “rake” receiver, each eigenvector v i  represents a pulse suffering a time shift. In the “rake” receiver  10 , each eigenvector v i  is associated with an amplitude a i  which varies from one bit to another. The amplitude a i , calculated for each bit by the module  11 , is a random variable such that the mathematical expectation of |a i | 2  is equal to the eigenvalue λ i . The “rake” receiver  10  receives an input vector of dimension W, calculates the scalar product of this input vector with each of the eigenvectors v i , then the sum of these L scalar products weighted by the amplitudes a i *. This weighted sum is a soft estimate of the bit sent b.  
         [0030]    In a manner known per se, the channel analysis module  11  can proceed as follows in order to estimate the pairs of parameters (v i , a i ) from successive input vectors X of dimension W representing successive estimates of the impulse response of the relevant channel which are obtained by means of the pilot bits:  
         [0031]    calculation of the mathematical expectation K of the matrix X.X H  over a typical duration of the order of about a hundred milliseconds;  
         [0032]    diagonalization of the matrix K, and selection of the L eigenvalues of largest moduli λ i  (0≦i&lt;L, with |λ 0 |≧|λ 1 |≧ . . . ≧|λ L−1 |) respectively associated with eigenvectors v i ;  
         [0033]    projection of the vector X onto each of the eigenvectors retained v i , so as to obtain the amplitudes a i . These amplitudes may be obtained by simple projection (a i =v i   H .X), or by weighted projection so as to produce the estimate according to the maximum a posteriori criterion  
         (       MAP        :                     a   i       =         λ   i         λ   i     +   N0       ·     v   i   H     ·   X       )     ,                         
 
         [0034]    N0 designating an estimate of the noise power on the channel). Other known estimation procedures are also useable (estimation in the sense of least squares, under zero constraint, etc.);  
         [0035]    calculation of the noise power N0 equal to the mathematical expectation of the energy per bit |B| 2  of the residual noise  
       B   =     X   -       ∑     i   =   0       L   -   1              a   i     ·       v   i     .                                 
 
         [0036]    In regard to the terminal handled by a receiver  5 , the signal r received by the base station in respect of the relevant bit b can be written in the form of a vector of dimension Q+W−1:  
           r =( b.M′+j.M ). h+n   (1)  
         [0037]    where:  
         [0038]    ĥ is a vector of dimension W containing the impulse response of the channel between the terminal and the base station, sampled at the chip rate;  
         [0039]    M and M′ are Toeplitz matrices with Q+W−1 rows and W columns, whose columns are defined by the spreading codes c=[c(0), c(1), . . . , c(Q−1)] and c′=[c′(0), c′(1), . . . , c′(Q−1)] used by the terminal on the Q pathway and on the I pathway, respectively:  
             M   =     (           c        (   0   )           0       …       0             c        (   1   )             c        (   0   )           ⋰       ⋮           ⋮         c        (   1   )           ⋰       0             c        (     Q   -   1     )           ⋮       ⋰         c        (   0   )               0         c        (     Q   -   1     )                         c        (   1   )               ⋮       ⋰       ⋰       ⋮           0       …       0         c        (     Q   -   1     )             )             (   2   )                 M   ′     =     (             c   ′          (   0   )           0       …       0               c   ′          (   1   )               c   ′          (   0   )           ⋰       ⋮           ⋮           c   ′          (   1   )           ⋰       0               c   ′          (     Q   -   1     )           ⋮       ⋰           c   ′          (   0   )               0           c   ′          (     Q   -   1     )                           c   ′          (   1   )               ⋮       ⋰       ⋰       ⋮           0       …       0           c   ′          (     Q   -   1     )             )             (   3   )                               
 
         [0040]    n is a vector containing samples of additive noise. This noise is not necessarily white noise since it incorporates the contributions from the other channels, emanating from the other terminals transmitting at the same time.  
         [0041]    On the I pathway, the real part r I  of this signal r is fed to a matched filter  12  corresponding to the spreading code c′ assigned to the data bits of the channel. On the Q pathway, another matched filter  13 , operating with the spreading code c, receives the imaginary part r Q  of the signal r and produces a first estimate of the impulse response of the channel:  
           ĥ=M   H   .r   I   (4)  
         [0042]    [0042]FIG. 2 uses similar notation to that of FIG. 3. An index  1  is appended thereto to signify that the receiver of FIG. 2 is the one which processes the channel having the most energy. This channel is easily identified, for example by maximizing the average of the norm of the vectors ĥ over the period of updating of the eigenvectors by the modules  11 .  
         [0043]    In this receiver  5  assigned to the most powerful channel (FIG. 2), the channel analysis module  11  operates on the basis of the vectors X=ĥ 1  successively supplied by the matched filter  13 . It deduces therefrom the eigenvectors v 1,i  and the associated instantaneous amplitudes a 1,i  (0≦i&lt;L) supplied to the “rake” receiver  10 . The eigenvalues corresponding to the eigenvectors v 1,i  are denoted α i =λ 1,i .  
         [0044]    The highest-energy path of the response of this most powerful channel corresponds to the eigenvector v 1,0  and to the eigenvalue λ 1,0 =α 0 . This eigenvector v 1,0  defines in the signal space a direction along which interference may affect the other channels. After projection onto the signal subspace corresponding to another channel after matched filtering, the direction of interference is defined by the normed vector:  
                 J   0     =       1   Q     ·     M   H     ·     M   1     ·     v     1   ,   0                
            for                 a                 Q                 pathway     ,             (   5   )                 J   0   ′     =       1   Q     ·     M     ′                 H       ·     M   1     ·     v     1   ,   0                 (   6   )                               
 
         [0045]    for an I pathway, where M 1  is the matrix of codes which relates to the pilot channel received with the most power, taking account of the possible time shift δ (in terms of number of chips) between the relevant channel and the most powerful channel:  
               M   1     =     (             c   1          (   δ   )           0       …       0               c   1          (     δ   +   1     )               c   1          (   δ   )           ⋰       ⋮           ⋮           c   1          (     δ   +   1     )           ⋰       0               c   1          (     δ   +   Q   -   1     )           ⋮       ⋰           c   1          (   δ   )               0           c   1          (     δ   +   Q   -   1     )                           c   1          (     δ   +   1     )               ⋮       ⋰       ⋰       ⋮           0       …       0           c   1          (     δ   +   Q   -   1     )             )             (   7   )                               
 
         [0046]    The matrices  
           1   Q     ·     M   H     ·     M   1                     and                     1   Q     ·     M     ′                 H       ·     M   1                             
 
         [0047]    involved in the expressions (5) and (6) are constant when short codes are used (periodicity of one bit time), thereby minimizing the calculations. Otherwise, the vectors J 0  and J′ 0  need to be calculated for each bit.  
         [0048]    These two matrices are calculated by respective modules  15  and  16  in the receivers of the type represented in FIG. 3, as a function of the codes c and c 1  and the shift δ for  
         1   Q     ·     M   H     ·     M   1                           
 
         [0049]    (module  15 ) and as a function of the codes c′ and c 1  and of the shift δ for  
         1   Q     ·     M     ′                 H       ·     M   1                           
 
         [0050]    (module  16 ). In each receiver (FIG. 3), the eigenvector v 1,0  is multiplied by the matrices  
         1   Q     ·     M   H     ·     M   1                           
 
         [0051]    and  
         1   Q     ·     M     ′                 H       ·     M   1                           
 
         [0052]    produced by the modules  15  and  16  so as to obtain the normed vectors J 0  and J′ 0  according to relations (5) and (6), respectively.  
         [0053]    A module  16  is also present in the receiver of FIG. 2 so as to calculate the matrix  
         1   Q     ·     M   1     ′                 H       ·     M   1                           
 
         [0054]    as a function of the codes c′ 1  and c 1  (the shift δ is zero between the I and Q pathways which are synchronous). This matrix serves also to determine an interferer direction J′ 0  for the data pathway.  
         [0055]    In the receiver according to FIG. 3, the interference direction J 0  is supplied to a module  17  which projects the estimate ĥ of the impulse response delivered by the matched filter  13  onto a subspace orthogonal to J 0 , thereby giving rise to a corrected response vector H ⊥ . The correction consists more precisely in deducting from ĥ a vector proportional to its projection along the direction J 0 . We can in particular take:  
               h   ⊥     =         h   ^     -         α   0         α   0     +   N0              J   0     ·     J   0   H     ·     h   ^           =       [     Id   -         α   0         α   0     +   N0              J   0     ·     J   0   H           ]     ·     h   ^                 (   8   )                               
 
         [0056]    where the weighted projection matrix  
       [     Id   -         α   0         α   0     +   N0              J   0     ·     J   0   H           ]                         
 
         [0057]    is updated at relatively low frequency. It is the corrected vector h ⊥ =X which is supplied to the channel analysis module  11 .  
         [0058]    Likewise, in each receiver, the interference direction J′ 0  is supplied to a module  18  which projects the output vector y from the matched filter  12  onto a subspace orthogonal to J′ 0 , thereby giving rise to a corrected vector y′. The correction consists in deducting from y a vector proportional to its projection along the direction J′ 0 . We can in particular take:  
               y   ⊥     =         y   ^     -         α   0         α   0     +   N0              J   0   ′     ·     J   0     ′                 H       ·     y   ^           =       [     Id   -         α   0         α   0     +   N0              J   0   ′     ·     J   0     ′                 H             ]     ·     y   ^                 (   9   )                               
 
         [0059]    where the weighted projection matrix  
       [     Id   -         α   0         α   0     +   N0              J   0   ′     ·     J   0     ′                 H             ]                         
 
         [0060]    is updated at relatively low frequency. It is the corrected vector y ⊥  which is supplied to the “rake” receiver  10  to estimate the information symbol sent.  
         [0061]    In the foregoing description, the projection of the vectors ĥ and ŷ is performed onto a subspace orthogonal to a single interference direction J 0  or J′ 0 . It will be noted that it is possible to extend the procedure to several interference directions defined by several energy-containing paths (within the limit of the dimension of the subspace).  
         [0062]    For example, for p&gt;1 paths, we can take the p eigenvectors v 1,0 , v 1,1 , . . . , v 1,p−1  corresponding to the eigenvalues of largest moduli α 0 =λ 1,0 , α 1 =λ 1,1 , . . . , α p−1 =λ 1,p−1  identified by the analysis module  11  processing the response ĥ 1 , and we can determine the normed vectors:  
                   J   i     =       1   Q     ·     M   H     ·     M   1     ·     v     1   ,   i                
        for                 a                 Q                 pathway     ,              and           (   10   )                 J   i   ′     =       1   Q     ·     M     ′                 H       ·     M   1     ·     v     1   ,   i                 (   11   )                               
 
         [0063]    for an I pathway (0≦i&lt;p). The weighted projection matrices of relations (8) and (9) are then replaced by  
       [     Id   -       ∑     i   =   0       p   -   1                α   i         α   i     +   N0              J   i     ·     J   i   H             ]                         
 
         [0064]    and  
         [     Id   -       ∑     i   =   0       p   -   1                α   i         α   i     +   N0              J   i   ′     ·     J   i     ′                 H               ]     ,                         
 
         [0065]    respectively. The p relevant paths may also be identified by analysis modules  11  belonging to distinct receivers.  
         [0066]    The method is also applicable in the case where the base station possesses several distinct reception antennas, whose signals are combined to afford space diversity. In a case with two antennas, the subspace described by the main interferer (for a Q pathway) is generated by the matrix:  
               J   s     =     (           J   0             -     ρ        ρ            ·     J   0                   ρ        ρ          ·     J   0             J   0           )             (   12   )                               
 
         [0067]    and the weighted projection matrix of relation (8) becomes:  
         [     Id   -       J   s     ·     (               α   0     ·     (     1   +        ρ          )             α   0     ·     (     1   +        ρ          )       +   N0           0           0             α   0     ·     (     1   -        ρ          )             α   0     ·     (     1   -        ρ          )       +   N0             )     ·     J   s   H         ]     ,                         
 
         [0068]    where ρ is the correlation factor for the two antennas.