Abstract:
A method for multi-user detection includes receiving a complex input signal due to a superposition of waveforms encoding symbols in a real-valued constellation, which are transmitted respectively by a plurality of transmitters in a common frequency band. The complex input signal is sampled at sampling intervals over the duration of an observation period to provide a sequence of complex samples. The sequence of complex samples is processed to determine soft decision values corresponding to the symbols transmitted by the plurality of the transmitters in the observation period, while constraining the soft decision values to be real values. The soft decision values are then projected onto the constellation to estimate the transmitted symbols.

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
   This application claims the benefit of U.S. Provisional Patent Application No. 60/254,147, filed Dec. 8, 2000, which is incorporated herein by reference. 

   FIELD OF THE INVENTION 
   The present invention relates generally to digital signal processing, and specifically to methods and systems for simultaneous reception and processing of signals from multiple transmitters sharing a common frequency band using code-division multiple access (CDMA). 
   BACKGROUND OF THE INVENTION 
   CDMA is widely used in cellular and other wireless systems for multiplexing communications among multiple users on a common frequency band. In direct-sequence (DS) CDMA, the transmitter multiplies each user&#39;s signal by a distinct code waveform. The code waveforms of the different users have the form of “pseudo-noise” (PN) sequences, also known as spreading codes, and are chosen so as to be as much as possible mutually orthogonal. The receiver receives a composite signal made up of the sum of all of the users&#39; signals, which overlap in time and frequency. To recover the individual signal of a given user, the receiver correlates the composite signal with that user&#39;s distinct code. 
   Multiple access interference (MAI) limits the capacity and performance of DS-CDMA systems. MAI results from the lack of complete orthogonality between the spreading codes, due to random time offsets between the signals of different users, for example. MAI becomes increasingly problematic as the number of interfering users and their power increases, particularly when there are power imbalances among the users. These imbalances typically result from differences in distance between the users and the base station, as well as from fading and other factors that affect signal power. The problems caused by MAI have led a number of groups to develop multi-user detection techniques, in which information about multiple users and their respective code waveforms is used jointly to better detect each individual user. A survey of these techniques is presented by Moshavi in “Multi-User Detection for DS-CDMA Communications,”  IEEE Communications Magazine  (October, 1996), pages 124–136, which is incorporated herein by reference. 
   To formulate the multi-user detection problem, we consider a CDMA receiver that receives signals from K users. The received complex-envelope baseband signal x(t) is a superposition of the users&#39; individual signal waveforms, including channel distortion and additive noise n(t): 
                   x   ⁡     (   t   )       =         ∑     k   =   1     K     ⁢         h   k     ⁡     (   t   )       *       ξ   k     ⁡     (   t   )           +     n   ⁡     (   t   )                 (   1   )               
Here “*” denotes convolution, and h k (t) is the impulse response of the kth user channel (including delay, attenuation, multipath and filtering effects). In the derivation that follows, n(t) is assumed to be Gaussian with mean zero and without correlation between successive noise samples.
 
   The kth user&#39;s signal waveform is given by: 
                     ξ   k     ⁡     (   t   )       =       ∑     m   =     -   ∞       ∞     ⁢         b   k     ⁡     (   m   )       ⁢       p   Tb     ⁡     (     t   -     m   ⁢           ⁢     T   b         )       ⁢       c   k     ⁡     (   t   )                   (   2   )               
In this equation, b k (m) is the mth symbol transmitted by the kth user, wherein b k  is selected from a predefined constellation (or alphabet) A. For binary phase shift keying (BPSK), which is the most common modulation scheme in current cellular systems, b k  is a bit selected from A={−1,1}. T b  is the symbol duration, and p T (t) is a rectangular pulse with unity value in t ε[0,T) and zero elsewhere. c k (t) is a complex-valued PN spreading waveform, with a chip period T c =T b /N, wherein N is the spreading gain of the DS modulation:
 
                     c   k     ⁡     (   t   )       =       ∑     i   =     -   ∞       ∞     ⁢         1     2       ⁡     [         γ   k     (   I   )       ⁡     (   i   )       +     j   ⁢           ⁢       γ   k     (   Q   )       ⁡     (   i   )           ]       ⁢       p   Tc     ⁡     (     t   -     i   ⁢           ⁢     T   c         )                   (   3   )               
γ k   (I) (i) and γ k   (Q) (i) are independently drawn from {−1,1} with uniform distribution.
 
   The multi-user detection problem can be stated as follows: Let the received signal x(t) be sampled, and assume that the impulse responses h k (t) and the spreading waveforms c k (t) are known. Now estimate the symbols b k (m) from the samples x(t) for all k and m. For the sake of simplicity in framing the problem, it is assumed that the impulse responses of the channels can be expressed as complex scalars h k , that the user signals are mutually synchronized, and that the samples are taken at mid-chip, at a sampling rate equal to the chip rate (i.e., N samples per symbol). It is possible to relax some of these assumptions and still achieve multi-user detection, as described hereinbelow. 
   The symbols transmitted by the K users at symbol interval m can be written as a K×1 real vector:
 
 b ( m ):=( b   1 ( m ), . . .  b   K ( m ) T   (4)
 
The samples taken during the mth symbol interval can be arranged as a N×1 complex vector x(m). Rearranging equations (1) and (2) in similar vector form gives the following expression:
 
 x ( m )= S ( m ) b ( m )+ n ( m )  (5)
 
Here n(m) is a N×1 complex vector of noise samples. S(m) is a complex N×K matrix, whose kth column is a signature vector s k (m) representing the “symbol signature” of the kth user during the mth symbol interval. The elements of the signature vectors s k (m) are samples of the following waveform:
 
 S   k ( t; m ): =h   k   c   k ( t ),  mT   b   ≦t ≦ ( m+ 1)T b    (6)
 
   Given the known elements of x(m) and S(m), in order to solve the multi-user detection problem it is necessary to find the elements of b(m) that best satisfy equation (5). An optimal, maximum-likelihood solution to this problem was framed by Verdu in “Minimum Probability of Error for Asynchronous Gaussian Multiple-Access Channels,”  IEEE Transactions on Information Theory  32:1 (January, 1986), pages 85–96, which is incorporated herein by reference. According to this solution, for each m, we find the elements of b within the applicable constellation A ({−1,1} for BPSK, as noted above) that minimize ∥x−Sb∥ 2 . (For brevity, here and below, we write simply b, S and x to represent b(m), S(m) and x(m).) Although optimal, this detector is usually impractical, since it requires an exhaustive search over all possible bεA K . 
   As a less costly (though suboptimal) alternative, Lupas and Verdu proposed a decorrelating detector in “Linear Multi-User Detectors for Synchronous Code-Division Multiple Access Channels,”  IEEE Transactions on Information Theory  35:1 (January, 1989), pages 123–136, which is also incorporated herein by reference. The decorrelating detector finds a vector {tilde over (b)} that minimizes ∥x−Sb∥ 2  over b εC K , wherein C is the complex plane. The “soft decision” vector {tilde over (b)} is projected onto the constellation A K  to arrive at the hard decision output {circumflex over (b)}. For BPSK modulation, the elements {circumflex over (b)} k  are given simply by the sign of the real part of the corresponding elements {tilde over (b)} k . Assuming K≦N and full column-rank S, the soft decision solution is given by:
 
 {tilde over (b)}=(   S   H   S ) −1   S   H   x   (7)
 
wherein S H  is the conjugate transpose of S.
 
   The decorrelating detector has been found to provide substantial performance gains over conventional single-user detection, with significantly lower computational complexity than the maximum-likelihood detector proposed previously. It performs well even in the presence of substantial power imbalances among the users. It still entails a substantial computational burden, however, in inverting the matrix S H S. 
   A number of different solutions have been proposed in order to improve multi-user detection performance. For example, Duel-Hallen suggests combining the decorrelating detector with decision feedback, in “Decorrelating Decision-Feedback Multiuser Detector for Synchronous Code-Division Multiple-Access Channel,”  IEEE Transactions on Communications  41:2 (February, 1993), pages 285–290, which is incorporated herein by reference. This detector generates decisions {circumflex over (b)} k  iteratively, working down from the stronger user signals to the weaker signals. The decisions made with respect to the stronger users are used in forming decisions for the weaker ones. The decision-feedback detector has been found to outperform the original decorrelating detector as long as the bit-error rate (BER) is not too high, and reliable estimates of the channel gains h k  are available. 
   Various other technique have been suggested in the patent literature for canceling interference among the signals received from multiple CDMA users. For example, U.S. Pat. No. 5,644,592, to Divsalar et al., whose disclosure is incorporated herein by reference, describes a method of parallel interference cancellation, which estimates and subtracts out all of the interference for each user in parallel. U.S. Pat. Nos. 5,363,403, 5,553,062, 5,719,852 and 6,014,373, all to Schilling et al., whose disclosures are also incorporated herein by reference, describe methods for solving the (S H S) −1  matrix using a fast polynomial expansion. 
   SUMMARY OF THE INVENTION 
   Preferred embodiments of the present invention provide simpler, more efficient methods and systems for detecting CDMA multi-user symbols, particularly BPSK symbols, using a real statistical model that inherently incorporates prior knowledge that the symbols are real-valued. As described above, decorrelating detectors known in the art calculate complex-valued soft decisions ({tilde over (b)} k ), and then project these values onto the actual constellation of the user signals to generate the corresponding hard decisions ({circumflex over (b)} k ). In the case of BPSK modulation, however, the constellation consists of the real values ±1, so that {circumflex over (b)} k  must be real, even if the user waveforms themselves are complex due to the use of complex PN signatures. 
   Therefore, in preferred embodiments of the present invention, the soft decisions themselves are constrained a priori to the real axis. This constraint reduces by half the number of unknown parameters that must be solved for, by eliminating the need to find the imaginary part of {tilde over (b)} k . Application of the constraint thus simplifies the decorrelation calculation, improves detection performance and doubles the number of users that can be detected simultaneously. This constrained decorrelation approach is applicable not only to BPSK, but also to other modulation schemes that use real-valued constellations. It can also be used to extract real signals from complex signatures that are introduced by factors other than PN spreading waveforms, such as the complex response of multiple receiving antennas used for spatial diversity in wireless communications. 
   In some preferred embodiments of the present invention, the novel real statistical model is applied in a multi-user decision feedback detector. Like decision feedback detectors known in the art, the constrained decision feedback detector uses decisions made with respect to strong user signals to improve the detection of weaker user signals. By using the novel real statistical model, however, the present detector achieves better performance than prior art detectors. 
   There is therefore provided method for multi-user detection, including: 
   receiving a complex input signal due to a superposition of waveforms encoding symbols in a real-valued constellation, which are transmitted respectively by a plurality of transmitters in a common frequency band; 
   sampling the complex input signal at sampling intervals over the duration of an observation period to provide a sequence of complex samples; 
   processing the sequence of complex samples to determine soft decision values corresponding to the symbols transmitted by the plurality of the transmitters in the observation period, while constraining the soft decision values to be real values; and 
   projecting the soft decision values onto the constellation to estimate the transmitted symbols. 
   In a preferred embodiment, the waveforms include code-division multiple access (CDMA) waveforms transmitted by the plurality of the transmitters, and the symbols transmitted by the transmitters are modulated by respective spreading codes to generate the waveforms. Typically, the spreading codes include complex-valued codes. 
   In a further preferred embodiment, the constellation of the symbols consists of the values +1 and −1, wherein projecting the soft decision values includes taking respective signs of the soft decision values in order to reach a hard decision with respect to the corresponding symbols. 
   The observation period may have a duration substantially equal to a single symbol period, during which each of the transmitters transmits a single one of the symbols, or it may have a duration during which at least some of the transmitters transmit more than a single one of the symbols. 
   Preferably, processing the sequence of complex samples includes partitioning the samples into real and imaginary parts, and processing the real and imaginary parts separately to determine the soft decision values. Typically, the real and imaginary parts of the samples are related to the transmitted symbols by an expression having a form {overscore (x)}={overscore (S)}b+{overscore (n)}, wherein {overscore (x)} is a vector including real vector elements corresponding separately to the real and imaginary parts of the samples, b is a vector including real vector elements corresponding to the values of the symbols, {overscore (S)} is a matrix including columns corresponding to respective complex signatures of the plurality of the transmitter, the columns including real entries corresponding separately to the real and imaginary parts of the signatures, and {overscore (n)} is a vector including real vector elements corresponding separately to real and imaginary noise components in the samples, and wherein processing the sequence of complex samples includes inverting the expression to determine the soft decision values of the elements of b. 
   Preferably, inverting the expression includes finding the real values of the elements of b that minimize a norm given by ∥{overscore (x)}−{overscore (S)}b∥ 2 , wherein finding the real values of the elements of b includes calculating a vector {tilde over (b)} of the soft decision values so that {tilde over (b)}=({overscore (S)} T {overscore (S)}) −1 {overscore (S)} T {overscore (x)}. 
   Alternatively, inverting the expression includes decomposing {overscore (S)} to yield an upper-triangular matrix T that satisfies an equation z=Tb+ν 1 , wherein z and ν 1  are vectors obtained by applying a unitary transformation to {overscore (x)} and {overscore (n)}, respectively, and finding the real values of the elements of b iteratively beginning from a final one of the elements so as to solve the equation. Preferably, processing the sequence of complex samples includes ordering the elements of b in an ascending order of power of the waveforms transmitted respectively by the transmitters, and ordering the entries in {overscore (S)} according to the order of the elements in b, so that finding the real values iteratively includes finding the real values beginning from one of the transmitters having a high power relative to the other transmitters. 
   There is also provided, in accordance with a preferred embodiment of the present invention, a multi-user receiver, including: 
   input circuitry, coupled to receive a complex input signal due to a superposition of waveforms encoding symbols in a real-valued constellation, which are transmitted respectively by a plurality of transmitters in a common frequency band, and to sample the complex input signal at sampling intervals over the duration of an observation period to provide a sequence of complex samples; and 
   multi-user detection circuitry, coupled to receive and process the sequence of complex samples so as to determine soft decision values corresponding to the symbols transmitted by the plurality of the transmitters in the observation period, while constraining the soft decision values to be real values, and to project the soft decision values onto the constellation in order to estimate the transmitted symbols. 

   
     The present invention will be more fully understood from the following detailed description of the preferred embodiments thereof, taken together with the drawings in which: 
     BRIEF DESCRIPTION OF THE DRAWINGS 
       FIG. 1  is a schematic, pictorial illustration of a multi-user communication system, in accordance with a preferred embodiment of the present invention; 
       FIG. 2  is a block diagram that schematically illustrates a transmitter operated by a user in the system of  FIG. 1 ; 
       FIG. 3  is a block diagram that schematically illustrates a receiver with multi-user detection capability, in accordance with a preferred embodiment of the present invention; and 
       FIG. 4  is a flow chart that schematically illustrates a method for multi-user detection with decision feedback, in accordance with a preferred embodiment of the present invention. 
   

   DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
     FIG. 1  is a schematic, pictorial illustration of a wireless communication system  20 , typically a cellular system, in accordance with a preferred embodiment of the present invention. A base station  22  transmits downlink signals to a plurality of users  24 , and receives uplink signals from the users in return. The signals are modulated using a DS-CDMA scheme, with BPSK modulation, as described in the Background of the Invention. In order to separate and process the signals that it receives from multiple users  24 , base station  22  employs a novel detection scheme using a real statistical model, as described in detail hereinbelow. 
     FIG. 2  is a block diagram that schematically illustrates elements of a transmitter  26  operated by users  24  in system  20 . The operation of this transmitter is represented mathematically by equations (2) and (3) above. Each symbol b(t) to be transmitted is multiplied by a complex PN spreading waveform, with different real (I) and imaginary (Q) parts C I (t) and C Q (t), respectively. While b(t) is constrained to the real values ±1, the output of transmitter  26  is a complex-valued signal b(t)[C I (t)+jC Q (t)]e jω   0   t , wherein ω 0  is the carrier frequency. 
     FIG. 3  is a block diagram that schematically illustrates a receiver  28  used in base station  22  for demodulating and decoding the signals from transmitters  26 , in accordance with a preferred embodiment of the present invention. The signals are received over the air by a radio receiver front end  30 , and are then digitized by an analog/digital converter (ADC)  32 . The design and operation of these elements are well known in the art, as are those of other elements typically used in base station receivers, which would normally be included in receiver  28  but are omitted here for the sake of brevity. ADC  32  provides an input to a multi-user detection block  38  that is substantially of the form given by equation (1). A channel estimator  36 , as is known in the art, estimates the respective impulse responses h k (t) of the user channels for use by block  38 . 
   Multi-user detection block  38  receives the superposed signal of all of users  24 , modulated by the respective PN complex signatures of the users. It processes the superposed signal in order to estimate an individual symbol stream {circumflex over (b)} k (m) for each user. The novel operation of block  38  is described in detail hereinbelow. Typically, block  38  comprises a digital signal processor circuit, comprising a single dedicated chip or a group of chips that are configured to carry out the method described below. Alternatively or additionally, some or all of the functions of block  38  may be carried out in software on a suitable general-purpose microprocessor. Still further alternatively or additionally, certain digital processing functions of block  38  that are described below may equivalently be accomplished in the analog domain using suitable matched filters, as are known in the art. 
   The estimated user symbol streams output by multi-user detection block  38  are input to an individual data processing block  40  for each user. This block performs further data decoding and control channel processing for each user, as is known in the art. The operation of blocks  40  is outside the scope of the present invention. 
   Multi-user detection block  38  solves equation (5), above, by constraining the soft decision values {tilde over (b)} k  to the real axis. This model permits equation (5) to be restated as follows in terms of real values only:
 
 {overscore (x)} ( m ) ={overscore (S)} ( m ) b ( m ) +{overscore (n)} ( m )  (8)
 
This equation uses the notation
 
               S   _     :=     [           S   ℜ               S   ??           ]       ,         
in which S            and S          are the separate real and imaginary parts of S, respectively. Similar notation is used for the complex input signal x and noise n. Equation (8) constitutes a real statistical model, which inherently incorporates prior knowledge that the symbols are real. Taking b εR K , the solution to min∥{overscore (x)}−{overscore (S)}b∥ 2  is the real-valued soft decision vector {tilde over (b)}given by:
   {tilde over (b)}= ( {overscore (S)}   T   S ) −1   {overscore (S)}   T   {overscore (x)}   (9) 
Here {overscore (S)} T  is the transpose of {overscore (S)}. The hard decision output of block  38  for each user is simply {circumflex over (b)} k =sign({tilde over (b)} k ).

   Because {tilde over (b)} is constrained to be real, the number of real parameters that must be solved for in equation (8) is only half the number used in methods known in the art, as exemplified by equation (5). In other words, it is evident from this analysis that, at least where BPSK modulation is concerned, methods known in the art use an over-parameterized model for their solution. Over-parameterization tends to increase estimation error, and the inventors have indeed found that in most cases, the constrained decorrelation detector implemented in block  38  achieves a lower bit-error rate (BER) than do decorrelation detectors known in the art. The reduction in the number of parameters also reduces the computational cost of the detector geometrically, so that the cost of block  38  is only about one fourth that of a conventional decorrelating detector for the same number of users. On the other hand, for a given spreading gain N, equation (8) gives 2N simultaneous equations to use in solving for b, which is twice the number given by equation (5). As a result, the usual constraint in decorrelating detectors that the number of users K cannot exceed N is now relaxed to K≦2N, permitting receiver  28  to handle twice the number of users as could be detected by a conventional decorrelating detector. 
   Although for the sake of simplicity, equations (8) and (9) relate to samples x(t) collected during a single symbol interval, the method embodied in these equations can readily be extended to multiple successive symbol intervals, i.e., to samples collected over [0,MT b ). Such an extended observation window is typically necessary in order to deal with loss of synchronism among the user signals and to deal with impulse responses h k (t) whose duration is longer than a single chip period (due to multi-path effects, for example). In this case, the model of equations (1) and (2) can be recast in the following form: 
                   x   ⁡     (   t   )       =         ∑     k   =   1     K     ⁢           ⁢       ∑     m   =     -   ∞       ∞     ⁢         b   k     ⁡     (   m   )       ⁢         s   ⋓     k     ⁡     (     t   ,   m     )             +     n   ⁡     (   t   )                 (   10   )               
Here the symbol signature waveform s k (t;m) of equation (6) is replaced by a composite symbol signature waveform, given by:
   {hacek over (s)}   k ( t,m )= h   k ( t )*[ c   k ( t )p Tb ( t−mT   b )]  (11) 
The composite symbol signature waveform can vary from symbol to symbol and is of finite duration, say (N+L) chip intervals. The size of L reflects the duration of the impulse responses.
 
   If we now restrict our attention to the particular observation window [0,MT b ), equation (10) can be rewritten as follows: 
                     x   ⁡     (   t   )       =         ∑     k   =   1     K     ⁢           ⁢       ∑   m     ⁢         b   k     ⁡     (   m   )       ⁢       s   k     ⁡     (     t   ;   m     )             +     n   ⁡     (   t   )           ,           ⁢     0   ≤   t   &lt;     M   ⁢           ⁢     T   b                 (   12   )               
wherein s k (t;m):={hacek over (s)} k (t; m)p MTb (t), and the summation in m is over all the symbols having non-zero truncated signatures s k (t;m) in the observation window. Ordering the symbols according to their signature-start-times, the sample vector x can now be expressed in the form given by equation (5), x=Sb+n, except that now x is a NM×1 vector, and the columns of S are the sampled truncated signatures. Typically, the columns of S contain a few leading zero entries, followed by (N+L) non-zero entries, and ending with tailing zeros.
 
   Because equation (12) is formally identical to equation (5), multi-user detection block  38  can operate on asynchronous signals in the same manner as was described above with respect to synchronous signals. In other words, the restriction of {tilde over (b)} to real values and the application of equation (9) to find the values of {tilde over (b)} k  can be performed on asynchronous signals, as well. The performance of block  38  in the asynchronous case depends on the width of the observation window. For ideal channels and an observation window synchronized with a symbol interval of one of the users, b should typically have (2K−1) elements, compared with K elements in the synchronous case. For improved performance under non-ideal conditions, the observation window may be even wider. 
     FIG. 4  is a flow chart that schematically illustrates a method for multi-user detection based on decision feedback with the constraint that b is real, in accordance with a preferred embodiment of the present invention. This method can be implemented by multi-user detection block  38  in place of the decorrelation method described above, and gives superior performance when the BER is sufficiently low and reliable estimates of the channel gains are available. 
   The method begins by recasting equation (8) in terms of an upper triangular matrix T, using QR factorization of matrix {overscore (S)}, as is known in the art, at a signal recasting step  50 . The factorization is preferably performed using successive Givens rotations or Householder transformations of the matrix, as described, for example, by Golub and Van Loan in  Matrix Computations  (Johns Hopkins Series in Mathematical Sciences, 1996), which is incorporated herein by reference. Prior to factorization, the columns of the matrix are preferably ordered according to the approximate strengths of the signals received from the respective users, i.e., so that the first column corresponds to the weakest user, and the last column to the strongest. 
   The QR decomposition at step  50  gives the expression:
 
{overscore (S)}=QT 1   (13)
 
wherein Q is a 2N×2N unitary matrix, and T 1  is a 2N×K upper-triangular matrix having the structure
 
               T   1     =     [         T           0         ]       ,         
in which T is a K×K upper-triangular matrix. Q can be partitioned into Q=[Q 1  Q 2 ], wherein Q 1  is a 2N×K matrix having a column span equal to the column span of {overscore (S)}, and Q 2  is its complement. In practice, explicit computation of Q is preferably avoided, by applying the Givens rotations to both {overscore (S)} and {overscore (x)}.
 
   Substituting the representation of equation (13) into equation (8), we are left with the following model:
 
 z=Tb+ν   1   (14)
 
wherein z:=Q 1   T {overscore (x)}, and ν 1 =Q 1   T {overscore (n)}. Thus, the transformed noise vector ν 1  remains Gaussian and uncorrelated in character.
 
   Because T is upper-triangular, the last component of {circumflex over (b)} is determined simply, at a last element determination step  54 , by: 
                     b   ^     k     =     sign   ⁡     (       z   K       T   KK       )               (   15   )               
Assuming that the columns of {overscore (S)} were properly ordered at step  50 , this should give the symbol value for one of the strongest user signals, so that the likelihood of error in determining {circumflex over (b)} k  is relatively small.
 
   The decision value found at step  54  is substituted back into equation (14) to obtain a dimensionally-reduced model, at a row and column elimination step  56 :
 
 z   (K−1)   =T   (K−1)   b   (K−1) +ν 1   (K−1)   (16)
 
Here b (K−1)  contains the first K−1 components of b, T (K−1)  contains the upper-left (K−1)×(K−1) components of T, and the K−1 components of z (K−1)  are given by Z i   (K−1) =Z i   (K) −T iK {circumflex over (b)} K . The model of equation (16) is again triangular in structure. Thus, it is now possible to repeat steps  54  and  56 , in order to find and eliminate {circumflex over (b)} k−1 . The method then proceeds iteratively in this manner until all of the elements of {circumflex over (b)} have been found.
 
   The decision feedback method of  FIG. 4  can also be applied, mutatis mutandis, to the asynchronous case discussed above. For large observation windows (large M), the matrix S is a sparse, banded matrix, having at most N+L non-zero entries in each column, located near the matrix diagonal. Banded structures can be exploited to reduce the computational cost of QR decomposition. {overscore (S)} as defined above, however, loses its banded structure. The banding can be restored if {overscore (x)} is redefined in such a way that the real and imaginary parts of successive samples are interleaved:
 
 {overscore (x)} :=(( x   1 )           , ( x   1 )         , ( x   2 )         , ( x   2 )         ,  . . . , ( x   N )         , ( x   N )         ) T   (17)
 
Now the first row of {overscore (S)} will contain the real part of the first row of S, the second row of {overscore (S)} will contain the imaginary part of the first row of S, and so forth. The real model of equation (8) is still preserved by this new structure, so that the methods of decorrelation and decision feedback detection described above can be applied here, too.

   Although preferred embodiments are described hereinabove with reference to multi-user detection of wireless DS-CDMA signals, with BPSK modulation and complex PN code waveforms, the principles of the present invention may be applied to other multi-user detection problems. For example, when base station  22  uses multiple antennas for spatial diversity, the individual user signatures will be complex even when the PN waveforms are real-valued, due to the inherent complex response of the antennas. 
   It will thus be appreciated that the preferred embodiments described above are cited by way of example, and that the present invention is not limited to what has been particularly shown and described hereinabove. Rather, the scope of the present invention includes both combinations and subcombinations of the various features described hereinabove, as well as variations and modifications thereof which would occur to persons skilled in the art upon reading the foregoing description and which are not disclosed in the prior art.