Abstract:
The signal received comprises contributions from several channels multiplexed by respective spreading codes. After having estimated response parameters of the channels, soft estimates of the symbols transmitted are calculated. These symbols are then apportioned between a first set of symbols satisfying a confidence criterion applied to the calculated soft estimates and a second set of symbols not satisfying this criterion. A modified signal is determined by subtracting estimated contributions corresponding to the symbols of the first set from the signal received. New soft estimates of the symbols of the second set only are calculated, as a function of the modified signal and of the estimated response parameters, and this may be done with a detection algorithm of more complex nature, in particular a multi-user algorithm, by virtue of the size reduction performed by restricting oneself to the symbols of the second set.

Description:
BACKGROUND OF THE INVENTION  
         [0001]    The present invention relates to digital radiocommunication techniques using Code Division Multiple Access (CDMA).  
           [0002]    A CDMA signal processed by a receiver can be expressed, after filtering and transposition to baseband, as follows:  
               y        (   t   )       =         ∑     u   =   1     U                       y   U          (   t   )         +     n        (   t   )                 (   1   )                               
 
           [0003]    where n(t) is additive noise and U is the number of channels multiplexed on the CDMA carrier, whose contributions y u (t) have as a general expression:  
                 y   u          (   t   )       =       ∑   i            b   i   u     ·       s   i   u          (     t   -   iT     )                   (   2   )                               
 
           [0004]    where:  
           [0005]    b i   u  is the information symbol of rank i transmitted on the u-th channel;  
           [0006]    s i   u (t) is a generalized code given by the convolution of the impulse response of the u-th channel with the portion corresponding to the symbol of the spreading code c u  assigned to the channel.  
           [0007]    The number U corresponds to the number of user if each user involved utilizes a single channel. There may however be several channels per user.  
           [0008]    The spreading codes c u  are sequences of discrete samples called “chips”, with real values (±1) or complex values (±1±j), having a given chip rate. The symbols b i   u  also have real values (±1) or complex values (±1±j). The duration of a symbol on a channel is a multiple of the chip duration, the ratio of the two being the channel spreading factor Q.  
           [0009]    In certain systems, the spreading factor may vary from one channel to another. In such a case, a common spreading factor Q is considered, equal to the greatest common divisor (GCD) of the U spreading factors Q u . A symbol on the channel u is then regarded as the concatenation of Q u /Q consecutive symbols b i   u  whose values are identical.  
           [0010]    The duration of the generalized response S i   u (t) corresponds to Q+W−1 chips if W denotes the length of the impulse response expressed as a number of chips.  
           [0011]    By sampling at the chip rate the CDMA signal y(t) received for a block of n symbols on each of the channels, the receiver obtains complex samples that can be modeled by a vector Y of n×Q+W−1 components:  
             Y=A.b+N   (3)  
           [0012]    where:  
           [0013]    b denotes a column vector of size n×U, which can be decomposed into b T =(b 1   T ,b 2   T , . . . ,b n   T ), where (.) T  represents the transposition operation, the vectors b i  being of size U for 1≦i≦n, with b i   T =(b i   1 , b i   2 , . . . ,b i   U );  
           [0014]    N is a random noise vector of size n×Q+W−1;  
           [0015]    A=(A 1 , A 2 , . . . , A n ) is a matrix of generalized codes of size (n×Q+W−1)×(n×U) which can be subdivided into n sub-matrices A i  of size (n×Q+W−1)×U. In the matrix A i  (1≦i≦n), the u-th column (1≦u≦U) is a convolution of the impulse response of the u-th channel and of the Q samples of the spreading code of the u-th channel corresponding to the i-th symbol of the block.  
           [0016]    In other words, the matrices A i  may be written:  
             A   i =(Ω i   1 , Ω i   2 , . . . ,Ω i   u )  (4)  
           [0017]    with:  
           Ω i   u   =M   i   u   .H   i   u   (5)  
           [0018]    where M i   u  is a Toeplitz matrix of size (n×Q+W−1)×(n×Q+W−Q) obtained from the values c i   u (q) of the chips of the spreading code c u  of the u-th channel over the duration of the i-th bit of the block:  
               M   i   u     =     (             c   i   u          (   1   )           0       ⋯       0               c   i   u          (   2   )               c   i   u          (   2   )           ⋰       ⋮                           c   i   u          (   2   )           ⋰       0               c   i   u          (   Q   )                       ⋰           c   i   u          (   1   )               0           c   i   u          (   Q   )                           c   i   u          (   2   )               ⋮       ⋰       ⋰       ⋮           0       ⋯       0           c   i   u          (   Q   )             )             (   6   )                               
 
           [0019]    and H i   u  is a column vector of size (n−1)×Q+W which, when the U channels are received synchronously, contains (i−1)×Q zero components, followed by the W samples of the u-th channel&#39;s impulse response relating to the i-th symbol b i   u , and followed by (n−i)×Q other zero components. The time offsets in reception along the various channels, in numbers of chips, are manifested as corresponding offsets of the W samples of the impulse response of the channels along the vector H i   u .  
           [0020]    The receiver most commonly used, the so-called rake receiver, uses one or more matched filters to estimate the value of the symbols transmitted on each channel from an estimate of the impulse response of the channel along one or more propagation paths.  
           [0021]    The operation performed by such receivers amounts to performing the matrix product:  
             Z=Â*.Y   (7)  
           [0022]    where Â* is the conjugate transpose of an estimate Â=(Â 1 , Â 2 , . . . , Â n ) of the matrix A, the matrices Â i  stemming from the impulse responses estimated by applying relations (4) and (5).  
           [0023]    The n×U components Z i   u  of the vector Z are respective soft estimates of the n×U symbols b i   u  of the vector b. If the decodings performed downstream admit soft estimates as input, the components of the vector Z can be used directly. Otherwise, the sign of these components is taken to form the hard estimates of the symbols.  
           [0024]    The matched filter receiver is optimal when the generalized codes (vectors Ω i   u ) are pairwise orthogonal, i.e. when the correlation matrix R=A*.A is diagonal. In general, the systems adopt pairwise orthogonal spreading codes having good autocorrelation properties, whereby this condition is fulfilled to a first approximation.  
           [0025]    However, when the impulse response of the channel is taken into account, the orthogonality condition is no longer fulfilled. The above approximation becomes poor especially in the presence of multiple propagation paths.  
           [0026]    Certain receivers carry out a posteriori correction of the soft estimates of the symbols emanating from the matched filter receiver by taking account of the inter-users interference and/or of the inter-symbol interference on one and the same channel, thereby substantially improving the performance. Such a procedure, based on a so-called MFPIC (“Matched Filter Parallel Interference Cancellation”) algorithm, is disclosed in WO 01/99301. Its advantage is that it does not overly increase the global complexity of the calculations with respect to the traditional “rake” receiver. However, these a posteriori corrections follow upon an optimization of the system (3) relying on the above approximation.  
           [0027]    This MFPIC algorithm belongs to the class of multiuser detection algorithms (MUD) that offer better performance than the regular matched filter receiver. This class includes more accurate algorithms than MFPIC, in that they can take into account the terms of the matrix R that are farther from its diagonal.  
           [0028]    A good example of a MUD algorithm useable in such a context is the SDP algorithm described in the article by M. Abdi, et al., “Semidefinite Positive Relaxation of the Maximum-Likelihood Criterion Applied to Multiuser Detection in a CDMA Context”, IEEE Signal Processing Letters, Vol. 9, No. 6, June 2002, pp. 165 167.  
           [0029]    The better performance of these MUD algorithms is obtained at the price of greatly increased complexity. In general, their complexity is more than linear in the size n×U of the problem to be solved, this rendering them very expensive by comparison with more conventional receivers such as the “rake” or the MFPIC.  
           [0030]    An object of the present invention is to find a good compromise between the performance and the complexity of a CDMA receiver.  
         SUMMARY OF THE INVENTION  
         [0031]    The invention thus proposes a method of processing a signal received via a radio interface and including contributions from a plurality of channels multiplexed by respective spreading codes. The method comprises the steps of:  
           [0032]    /a/ estimating response parameters of the multiplexed channels;  
           [0033]    /b/ calculating soft estimates of symbols transmitted over the multiplexed channels, as a function of the received signal and of the estimated response parameters;  
           [0034]    /c/ dividing the symbols whose soft estimates have just been calculated between a first set of symbols satisfying a confidence criterion applied to said soft estimates and a second set of symbols not satisfying the confidence criterion;  
           [0035]    /d/ determining a modified signal by subtracting estimated contributions corresponding to the symbols of the first set, respectively, from the signal subjected to the previous calculation of soft estimates; and  
           [0036]    /e/ calculating new soft estimates of the symbols of the second set only, as a function of the modified signal and of the estimated response parameters.  
           [0037]    The symbols for which the first calculation affords sufficiently reliable estimates are no longer to be estimated in the second calculation. Their contribution to the signal is deducted so as to take into account the interference that they generate for the other symbols.  
           [0038]    Various detection algorithms can be employed for the successive calculations of soft estimates.  
           [0039]    In a preferred embodiment of the method, step /e/ is executed according to a detection algorithm of more complex nature than step /b/, in particular according to a multi-user detection algorithm. The method then profits from the performance of a complex algorithm of MUD type, but by applying the latter to a problem of smaller size than the problem forming the subject of the first calculation.  
           [0040]    The method thus makes it possible to achieve a compromise between the symbols detection performance and the complexity of the required calculations. In the design or the configuration of the receiver, it is possible to favor the performance or the complexity in this compromise, by appropriate adjustment of the confidence criterion employed.  
           [0041]    It is moreover possible to repeat the sequence of steps /c/ to /e/ one or more times. The larger or smaller number of iterations and/or the severity of the confidence criterion applied at each iteration (this confidence criterion may vary from one iteration to the next) are parameters that may also be adjusted as a function of the performance/complexity compromise sought.  
           [0042]    Another aspect of the present invention pertains to a device for processing a signal received via a radio interface, including contributions from a plurality of channels multiplexed by respective spreading codes. This device comprises means for estimating response parameters of the multiplexed channels, first means for calculating soft estimates of symbols transmitted over the multiplexed channels, as a function of the received signal and of the estimated response parameters, means for dividing the symbols between a first set of symbols satisfying a confidence criterion applied to the soft estimates produced by the first means for calculating and a second set of symbols not satisfying the confidence criterion, means for determining a modified signal by subtracting estimated contributions corresponding to the symbols of the first set, respectively, from the received signal, and second means for calculating new soft estimates of the symbols of the second set only, as a function of the modified signal and of the estimated response parameters.  
           [0043]    Such a device can in particular be incorporated into a base station of a CDMA radiocommunication system.  
           [0044]    When several iterations are envisaged, the device further comprises second means for dividing the symbols of the second set between a first subset of symbols satisfying a second confidence criterion applied to the soft estimates produced by the second means for calculating and a second subset of symbols not satisfying the second confidence criterion, means for determining a second modified signal by subtracting estimated contributions corresponding to the symbols of the first subset, respectively, from the modified signal which was subjected to the second means for calculating, and third means for calculating new soft estimates of the symbols of the second subset only, as a function of the second modified signal and of the estimated response parameters.  
           [0045]    Another aspect of the present invention pertains to a computer program to be installed in a radiocommunication receiver, the program comprising instructions for implementing a method as defined hereinabove during execution of the program by a signal processing unit of the receiver. 
       
    
    
     BRIEF DESCRIPTION THE DRAWINGS  
       [0046]    [0046]FIG. 1 is a schematic diagram of an exemplary reception device according to the invention.  
         [0047]    [0047]FIG. 2 is a flow chart of an exemplary method according to the invention. 
     
    
     DESCRIPTION OF PREFERRED EMBODIMENTS  
       [0048]    The device represented in FIG. 1 is part of the receiving stage of a radiocommunication station able to communicate with several remote stations  1 .  
         [0049]    The uplink channels used by these distant stations  1  are multiplexed by the CDMA technique, so that the radio signal picked up by the antenna  2 , and converted to baseband, can be represented in the form (1)-(2) for U multiplexed channels originating from V stations (1≦V≦U).  
         [0050]    The station incorporating the device is for example a base station of a third-generation cellular radiocommunication system of the UMTS (“Universal Mobile Telecommunication System”) type.  
         [0051]    In FIG. 1, the unit  3  diagrammatically represents the modules performing in a conventional manner the signal reception preprocessing (amplification, filtering, conversion to baseband, sampling at the chip frequency). This unit  3  delivers blocks Y of n×Q+W−1 samples, corresponding to blocks of n symbols transmitted simultaneously on the U channels. If the blocks of n symbols follow one another without interruption on the channels, there is an overlap of W samples (chips) between the successive blocks Y, corresponding to the duration of the impulse response.  
         [0052]    The received-signal blocks Y are provided to a module  4  which estimates the impulse responses Ĥ i   u  of the U multiplexed CDMA channels, with the aid of correlations with the spreading codes produced by pseudorandom code generators  5  (1≦u≦U, 1≦i≦n). The module  6  then estimates the matrix Â of the generalized codes according to (4) and (5), i.e. its [(i−1)×U+u]-th column is given by {circumflex over (Ω)} i   u =M i   u .Ĥ i   u .  
         [0053]    With the aid of the parameters of the matrix Â, a first calculation of soft estimates is applied to the block Y. In the example represented, this first calculation is effected by the modules  7  to  9  according to the MFPIC algorithm described in WO 01/99301. The module  7  performs a conventional detection of “rake” type on each channel, according to relation (7) above. It produces first soft estimates Z i   u  of the transmitted symbols b i   u . These first estimates Z i   u  could be used directly, but their representativity is improved by refining them in the module  8 , which applies the correction envisaged in the MFPIC algorithm to take account of inter-symbol interference and/or inter-user interference. In the case where the symbols transmitted are bits, this correction is expressed by:  
               sf   i   u     =       Z   i   u     -       ∑       j   =   1       j   ≠   i       n                         R   ^       i   ,   j       u   ,   u       ·     sgn        (     Z   j   u     )           -       ∑       v   =   1       v   ≠   u       U            ∑     j   =   1     n              R   ^       i   ,   j       u   ,   v       ·     sgn        (     Z   j   v     )                       (   8   )                               
 
         [0054]    where sgn(.) designates the sign function with values in {−1, +1} and {circumflex over (R)} i,j   u,v  designates the term situated in the [(i−1)×U+u]-th row and the [(j−1)×U+v]-th column of the correlation matrix {circumflex over (R)}=Â*.Â calculated by the module  9 .  
         [0055]    The first term subtracted in (8) corresponds to inter-symbol interference on the u-th channel while the second term subtracted corresponds to the inter-channel interference. The estimates sf i   u  produced by the module  8  are approximations of the “softbits”, to within a multiplicative coefficient 4/σ 2 , where a designates the power of the additive noise picked up, an estimate of which is conventionally made available by the probing module  4 . The sign of sf i   u  forms a hard estimate of the bit b i   u , while its absolute value measures the likelihood of this estimate.  
         [0056]    According to the invention, these soft estimates sf i   u  are examined by a module  10  in such a way as to identify a set F of symbols whose estimates are regarded as the most reliable.  
         [0057]    By way of example, the module  10  sorts the estimates sf i   u  in the order of descending absolute values and places in the set F the K% of the symbols whose estimates are ranked first. Another possibility is to place in the set F the symbols whose estimates sf i   u  have an absolute value greater than a confidence threshold ρ that can be taken proportional to 4/σ 2 . The threshold ρ or the percentage K can be made adaptive, for example as a function of the signal-to-noise ratio observed by the receiver.  
         [0058]    For the symbols of the set F which is thus determined, the device will deliver the soft estimates sf i   u  produced by the module  8  or hard estimates {circumflex over (b)} i   u  consisting of their signs, according to the requirements of the processing circuits situated downstream.  
         [0059]    The symbols that do not form part of this set will form the subject of a second calculation of soft estimates which preferably uses an MUD algorithm.  
         [0060]    The columns of the matrix of the generalized codes Â are sorted by a module  11 . Each column {circumflex over (Ω)} i   u  associated with a symbol of the set F is extracted from Â so as to be multiplied by the hard estimate {circumflex over (b)} i   u  of this symbol (multiplier  12 ), thereby giving an estimate of the contribution of the interference caused by this symbol on the others. This contribution {circumflex over (b)} i   u .{circumflex over (Ω)} i   u  is subtracted from the vector Y representing the input signal by the subtractor  13 . Such a subtraction is performed for each symbol of the set F:  
               Y   ′     =     Y   -       ∑       (     i   ,   u     )     ∈   F                b   ^     i   u     ·       Ω   ^     i   u                   (   9   )                            =         ∑     i   =   1     n                       ∑     u   =   1     U                       b   i   u     ·     Ω   i   u           +   N   -       ∑       (     i   ,   u     )     ∈   F                b   ^     i   u     ·       Ω   ^     i   u                     (   10   )                            ≈         ∑       (     i   ,   u     )     ∉   F                b   ^     i   u     ·       Ω   ^     i   u         +   N               (   11   )                               
 
         [0061]    The relation (11) shows that by taking into account the contributions of the properly estimated symbols, the size of the system to be processed is reduced from n×U to n×U−card(F). The size reduction is very appreciable if it has been possible to properly estimate sufficient symbols during the first pass. This facilitates recourse to an algorithm of more complex nature for the second estimate of the remaining symbols, in particular to an MUD algorithm.  
         [0062]    This second estimate is performed by the detection module  14  of FIG. 1, to which the modified signal Y′ is subjected. Each column vector {circumflex over (Ω)} i   u  with (i,u)∈F is removed from the matrix Â by the module  11  so as to form a reduced matrix of generalized codes according to which the module  15  obtains the reduced correlation matrix {circumflex over (R)}=Â*.Â. The vector Y′ and the reduced matrices Â and {circumflex over (R)} constitute the input data for the MUD algorithm implemented by the module  14 , which is for example the aforesaid SDP algorithm.  
         [0063]    The soft estimates sf i   u  (or hard estimates) produced by the MUD module  14  are ultimately combined with the estimates determined in a sufficiently reliable manner by the MFPIC algorithm in the course of the first pass, so as to reconstruct the set of demodulated data.  
         [0064]    The soft estimates sf i   u  produced by this MUD module  14  may also form the subject of a sorting between reliable estimates and unreliable estimates, the latter then forming the subject of a new calculation of estimates. This sorting and re-estimation process can be repeated a certain number of times. Such iterative procedure is illustrated by FIG. 2.  
         [0065]    The first two steps  20  and  21 , prior to the iterations, consist of the conventional estimation of the responses of the channels and of the generalized codes {circumflex over (Ω)} i   u  (operations of the modules  4  and  6  of FIG. 1). In step  22 , the set E of the symbols to be estimated in the course of the next iteration is initialized to the Cartesian product {1,2, . . . ,n}×{1,2, . . . ,U} corresponding to the entirety of the symbols transmitted within the current block over the channels to be processed.  
         [0066]    In each iteration, the first step  23  consists in assembling the column vectors {circumflex over (Ω)} i   u  associated with the symbols of the set E to form the matrix of codes Â which will be used for the next detection, and in calculating the correlation matrix {circumflex over (R)}=Â*.Â. The detection is effected in the next step  24  on the basis of the block Y with the aid of the matrices Â and {circumflex over (R)}. By way of example, the algorithm employed in step  24  is the MFPIC in the first iteration and the SDP in each subsequent iteration.  
         [0067]    The soft estimates obtained in step  24  are subjected to the confidence criterion so as to construct, in step  25 , the set F of indices (i,u) of the most reliable symbols, which are for example the indices (i,u) of the set E such that |sf i   u |≧ρ.  
         [0068]    If all the estimates are deemed sufficiently reliable (F=E in test  26 ), the detection procedure is terminated and the soft estimates sf i   u  which were calculated may be delivered in step  27 . The threshold p can vary in the course of the iterations. It may in particular decrease so as to make the confidence criterion less and less severe. To limit the procedure to a maximum number X of iterations, it is possible to set ρ=0 for the X-th iteration.  
         [0069]    If certain estimates are not sufficiently reliable (F≠E in test  26 ), the hard estimates {circumflex over (b)} i   u  of the symbols of F are determined in step  28 . The estimated contributions {circumflex over (b)} i   u .{circumflex over (Ω)} i   u  of these symbols are subtracted from block Y in step  29  (operation of the modules  12  and  13  of FIG. 1). To initialize the next iteration, the set E of symbols to be estimated is updated in step  30  by deleting therefrom the correctly estimated symbols of the set F.  
         [0070]    A procedure such as that illustrated by FIG. 2 can be implemented by programming a digital signal processor provided in the radio receiver.