Abstract:
A wireless communication system is provided which transmits and receives Multiple-Transmit Multiple-Receive (MTMR) signal in which the superimposed substreams of the received MTMR signal are recovered by concurrently estimating all of the substreams of the transmitted signal. A plurality of estimated data symbols are defined as a function of the plurality of signal samples. A difference expression that represents a difference between a function of a plurality of estimated data symbols and a function of the plurality of signal samples is determined and is a sum of plurality of terms. Values for each of a portion of a plurality of estimated data symbols are repeatedly selected such that one of the plurality of terms is minimized. Values for a further portion of the plurality of estimated data symbols are repeatedly selected such that a further one of the plurality of terms is minimized.

Description:
BACKGROUND OF THE INVENTION 
   The present invention is directed to the delivery of data via a wireless connection and, more particularly, to the accurate detection of data received via a wireless connection. 
   In a wireless communications system, data is delivered from a transmitter to a receiver using radio waves or other electromagnetic waves. The waves, however, may be reflected off objects in the environment and scattered randomly while propagating from the transmitter to the receiver so that multiple images of the transmitted signal may arrive at the receiver via different scattered paths. The scattering, known as multipath scattering, can cause the images to arrive at the receiver at slightly different times and interfere destructively, thereby cancelling each other. Thus, multipath scattering may significantly impede the accurate transmission of data over the wireless connection. 
   A known approach for achieving high spectral efficiencies is by transmitting the data using a base transceiver station (BTS) having multiple antennas and then receiving the transmitted data using a remote station having multiple receiving antennas. This approach is known as Multiple Transmit-Multiple Receive (MTMR). As an example, a single data stream is divided into multiple substreams, and an array of transmitter antennas is used to concurrently transmit the parallel substreams using the same frequency band. The transmitted substreams are then picked up by an array of receiver antennas. Each of the receiver antennas receives all of the transmitted substreams as a single, superimposed signal, rather than as a plurality of individual signals. A receiver located at the remote stations then demodulates the superimposed substreams to recover the original, transmitted substreams. 
   The scattered images of the transmitted substreams, however, are also picked up by the array of receiver antennas. Because each of the substreams originates from a different transmitter antenna located at a respectively different point in space, each substream is scattered differently, i.e. independently, and is thus received independently at each receiver antenna. When there is sufficient multipath scattering, the original substreams are not readily recovered. 
   The scattered images of the transmitted substreams may arrive at the receiver antenna at the same time, i.e. with no delay spread, known as flat fading or may arrive with at different times, i.e. with a delay spread, known as frequency selective fading. In the delay spread or frequency selective fading environment, currently transmitted symbols interfere with previously transmitted symbols, which is called inter-symbol intereference (ISI). 
   A known signal processing algorithm, referred to as “Bell Laboratories Layered Space-Time” (BLAST), uses differences in the scattering to identify and recover the transmitted substreams. The substreams are first sorted according to the strength of each channel, and the strongest substream is detected and extracted from the total received signal. Then, the substreams are again sorted based on their signal strength, and the next strongest substream is detected and extracted from the total received signal. The sorting and extracting process is repeated until all of the substreams are determined. The BLAST algorithm assumes that only flat fading is present and is therefore not suitable for delay spread environments, such as in a mobile wireless environment. 
   Thus, in the presence of ISI, the BLAST algorithm is not applicable. Moreover, while detecting the current strongest substream, the BLAST algorithm nulls the remaining substreams. This nulling is often imperfect because of channel estimation errors and, as a result, the performance of the receiver is degraded. 
   It is therefore desirable to recover the received data streams in the presence of ISI and without degrading receiver performance. 
   SUMMARY OF THE INVENTION 
   The present invention provides a wireless communication system for transmitting and receiving a MTMR signal in which the superimposed substreams of the received MTMR signal are recovered by estimating all of the substreams of the transmitted signal concurrently. 
   In accordance with an aspect of the invention, transmitted data symbols estimated from a plurality of signal samples that are received by a plurality of receivers. The data symbols are part of a data stream that is divided into a plurality of substreams. Each of the receives signal samples includes one or more data symbols from each of the plurality of substreams. The plurality of signal samples are represented as a function of a plurality of transmitted data symbols and a plurality of channel response values. Each of the plurality of channel response values represents a respective signal response for a transmission path of at least one of the transmitted data symbols. At least part of the plurality of channel response values includes channel responses caused by multipath scattering. A plurality of estimated data symbols is defined as a function of the plurality of signal samples. The function satisfies a performance related criterion. A difference expression that represents a difference between a function of a plurality of estimated data symbols and a function of the plurality of signal samples is determined and is a sum of a plurality of terms. Values for each of a portion of a plurality of estimated data symbols are repeatedly selected such that one of the plurality of terms if minimized. Values for a further portion of the plurality of estimated data symbols are repeatedly selected such that a further one of the plurality of terms is minimized, where the further one of the plurality of terms is a function of the further portion of the plurality of estimated data symbols and the selected values of the plurality of estimated data symbols, until each of the terms is minimized. 
   In accordance with this aspect of invention, the received signal samples each include at least one data symbol from each of the transmitters or may include at least one data symbol from each of a plurality of users. 
   Other features and advantages of the present invention will become apparent from the following detailed description of the invention with reference to the accompanying drawings. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The invention will now be described in greater detail in the following detailed description with reference to the drawings in which: 
       FIG. 1  is a block diagram showing an example of a MTMR wireless communication arrangement in which plural transmitter antennas concurrently transmit respective substreams of symbols to plural receiver antennas. 
       FIG. 2  diagram showing respective complementary cumulative distribution functions of the capacity for a (1,1), (2,2) and (4,4) diversity communication system. 
       FIG. 3  is a diagram showing respective measured bit error rates as a function of signal-to-noise ratio for a (2, 2) MTMR communications system using 4-PSK modulation with 20 Hz fading for MMSE block decision feedback sequence estimation and for ZF block decision feedback sequence estimation in accordance with the invention and for known MMSE and ZF BLAST estimations. 
       FIG. 4  is a diagram showing respective measured bit error rates as a function of signal-to-noise ratio for a (2, 2) MTMR communications system using 8-PSK modulation with 20 Hz fading for MMSE block decision feedback sequence estimation and for ZF block decision feedback sequence estimation in accordance with the invention and for known MMSE and ZF BLAST estimations. 
   

   DETAILED DESCRIPTION OF THE INVENTION 
   The present invention provides a MTMR architecture for detecting data transmitted over a wireless connection in which superimposed substreams of a signal are received and demodulated by concurrently estimating the substreams. The data is transmitted by multiple antennas or by multiple users. 
     FIG. 1  shows an arrangement for transmitting, receiving and detecting data according to the invention. 
   At a transmitter location, a single, encoded data stream comprised of mN symbols is delivered to a demultiplexer (DEMUX)  102  which divides the data stream into data substreams of symbols each. The DEMUX delivers the substreams to transmitters Tx 1 , Tx 2 , . . . , Txm, respectively. The transmission power is equally divided among the transmit antennas. 
   The transmitters Tx 1  to Txm transmit the substreams over a common wireless channel, typically at a symbol rate 1/T symbols/sec, with synchronized symbol timing. The transmitters may be quadrature amplitude modulation (QAM) transmitters, phase shift keying (PSK) transmitters, or other known transmitters that may be represented as a vector-valued transmitter where components of each transmitted m-vector are symbols drawn from a QAM constellation. 
   Alternatively, the data substreams are transmitted by a single transmitter antenna but represent users. 
   At a receiving location, a plurality of antennas Rx 1 , Rx 2 , . . . , Rxn each receive signals transmitted from all of the transmitter antennas or m users and deliver the received signals to a receiver  104  which concurrently demodulates all of the received signals. The n antennas and the receiver  104  are typically comprise a quadrature amplitude modulation (QAM) receiver system, though over modulation methods may be employed. 
   The capacity C of the transmitters and receivers is defined by the following relation: 
         C   =       log   2     ⁢     det   ⁡     [     I   +       (     ρ   m     )     ⁢     HH   H         ]       ⁢           ⁢   bits   ⁢     /     ⁢   sec   ⁢     /     ⁢   Hz       ,       
 
where H is an m×n channel matrix, ρ is a spatial average of the signal-to-noise ratio (SNR) at each of the n receiver antenna elements.
 
     FIG. 2  shows respective complementary cumulative distribution functions (ccdfs) of the capacity C for: (1) a (1,1) diversity communication system, namely a communication system comprised of one transmitter antenna and one receiver antenna, (2) a (2,2) diversity communication system, namely a communication system comprised of two transmitter antennas and two receiver antennas, and (3) a (4,4) diversity communication system, namely a communication system comprised of four transmitter antennas and four receiver antennas. As  FIG. 2  shows, the capacity increases linearly with the number of transmitter and receiver antennas. 
   The detection operation of the receiver  104  is now described: 
   A signal sample x k   j  is received by an antenna j of the n receiver antennas at a discrete time instant k. The received signal sample x k   j  is represented by a sum of the symbols transmitted by the m antennas according to the following relation: 
           x   k   j     =         ∑     i   =   1     m     ⁢       a   ij     ⁢     s   k   i         +     n   k   j         ,       
 
where a ij  are the channel impulse response coefficients of a signal path from the ith transmitter antenna to the jth receiver antenna, s k   i  is the symbol transmitted by the ith transmitter antenna, or from the ith user, that is received at the time instant k, and n k   j  is a value representing additive white Gaussian noise that is received by the jth receiver antenna at the time instant k. The channel impulse response coefficients a ij  are estimated from training symbols which are embedded in the transmitted symbol sequence and whose values are already known to the receiver. The receiver compares the expected training symbol values with the values that are actually received and uses a least squared channel estimation to determine the values of the channel impulse response coefficient.
 
   The representation of a single signal sample x k   j  received at the receiver antenna j may be extended to a stacked block data model, which represents N signal samples received at the receiver antenna j, by stacking the N received signals x k   j  into a Nx 1  vector  x   j  where:
 
   x     j   =[x   1   j   ,x   2   j   , . . . ,x   N   j ] T ,
 
in which T a transpose operator. The vector  x   j  may be represented as a function of the transmitted symbols in Nx 1  complex space by the relation:
 
   x     j   =A   j     s + n     j   εC   Nx1 ,
 
where A j  is a matrix representing the channel response values of the signal paths between the first to mth transmitter antennas or users and the jth receiver antenna,  s  is an vector of the respective N symbols transmitted by each of the m transmitter antennas, and  n   j  is a vector representing additive white Gaussian noise that is received by the jth receiver antenna at the time that each of the N signal samples is received.
 
   In a flat Rayleigh fading environment, in which there is multipath scattering with no delay spread, the matrix A j  is ordinarily a block diagonal matrix that is defined in N×Nm complex space by the relation:
 
 A   j =[diag( a   1j ),diag( a   2j ), . . . ,diag( a   mj )]ε C   N×Nm ,
 
namely A j  is a N row, Nm column matrix that is arranged as follows: 
         A   j     =       [           a     1   ⁢   j           0       0       0       …         a     2   ⁢   j           0       0       0       …       …         a   mj         0       0       0       …           0         a     1   ⁢   j           0       0       …       0         a     2   ⁢   j           0       0       …       …       0         a   mj         0       0       …           0       0         a     1   ⁢   j           0       …       0       0         a     2   ⁢   j           0       …       …       0       0         a   mj         0       …           0       0       0         a     1   ⁢   j           …       0       0       0         a     2   ⁢   j           …       …       0       0       0         a   mj         …           ⋮       ⋮       ⋮       ⋮       ⋰       ⋮       ⋮       ⋮       ⋮       ⋰       …       ⋮       ⋮       ⋮       ⋮       ⋰         ]     .         
 
   The invention, however, also accounts for multipath scattering with a delay spread, i.e. accounts for the presence of ISI, and therefore the matrix A j  typically includes values that “band” the block diagonal values. Thus, A j  is a block banded matrix with N+v rows and Nm columns that is arranged as follows: 
         A   j     =     [           a     1   ⁢   j     1         0       0       0       …       …         a     2   ⁢   j     1         0       0       0       …       …         a   mj   1         0       0       0       …             a     1   ⁢   j     2           a     1   ⁢   j     1         0       0       …       …         a     2   ⁢   j     2           a     2   ⁢   j     1         0       0       …       …         a   mj   2           a   mj   1         0       0       …             a     1   ⁢   j     3           a     1   ⁢   j     2           a     1   ⁢   j     1         0       …       …         a     2   ⁢   j     3           a     2   ⁢   j     2           a     2   ⁢   j     1         0       …       …         a   mj   3           a   mj   2           a   mj   1         0       …             a     1   ⁢   j     4           a     1   ⁢   j     3           a     1   ⁢   j     2           a     1   ⁢   j     1         …       …         a     2   ⁢   j     4           a     2   ⁢   j     3           a     2   ⁢   j     2           a     2   ⁢   j     1         …       …         a   mj   4           a   mj   3           a   mj   2           a   mj   1         …           ⋮       ⋮       ⋮       ⋮       ⋰       …       ⋮       ⋮       ⋮       ⋮       ⋰       …       ⋮       ⋮       ⋮       ⋮       ⋰             a     1   ⁢   j     v         ⋮       ⋮       ⋮       …       …         a     2   ⁢   j     v         ⋮       ⋮       ⋮       …       …         a   mj   v         ⋮       ⋮       ⋮       …           0         a     1   ⁢   j     v         ⋮       ⋮       …       …       0         a     2   ⁢   j     v         ⋮       ⋮       …       …       0         a   mj   v         ⋮       ⋮       …           0       0         a     1   ⁢   j     v         ⋮       …       …       0       0         a     2   ⁢   j     v         ⋮       …       …       0       0         a   mj   v         ⋮       …           ⋮       ⋮       ⋮       ⋮       ⋰       …       ⋮       ⋮       ⋮       ⋮       ⋰       …       ⋮       ⋮       ⋮       ⋮       ⋰         ]         
 
   The above vector  s  is comprised of the N symbols transmitted by each of the m transmitter antennas and is defined by the relation:
 
   s   [(   s     1 ) T ,(   s     2 ) T , . . . ,(   s     m ) T ] T ,
 
in which  s   i  is a vector representing the N symbols transmitted by the ith transmitter antennas. The vector  s   i  is defined by the relation:
 
   s     i   =[s   1   i   ,s   2   i   , . . . ,s   i   N ] T .
 
   The vector  n   j  represents the additive white Gaussian noise and is defined by the relation:
 
   n     j   =[n   1   j   ,n   2   j   , . . . ,n   N   j ] T .
 
   The signal samples received by each of the n receiver antennas may be then combined into a single vector representation as follows: 
           x   _     =       ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁢       x   _     j           ,       
 
where the vector A is defined according to the relation 
       A   =       ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁡     [     A   j     ]             
 
in which [A j ] H  is the complex conjugate transpose of [A j ]. When the above relation for  x   j  is inserted into x, the following relation is obtained: 
               x   _     =         ∑     j   =   1     n     ⁢           [     A   j     ]     H     ⁡     [     A   j     ]       ⁢     s   _         +         [     A   j     ]     H     ⁢       n   _     j                       =         A   ⁢     s   _       +     n   _       ∈     C     Nm   ×   1           ,             
 
where  n  represents the additive white Gaussian noise,  n =Σ j=1   n [A j ] H   n   j , with a covariance matrix given by the relation: 
               R   nn     =     ɛ   ⁢     {       (       ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁢       n   _     j         )     ⁢       (       ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁢       n   _     j         )     H       }                   =     σ   ⁢       ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁡     [     A   j     ]                         =       σ   2     ⁢   A       ,             
 
where ε is an expectation operator, σ 2  is the noise variance, and it is assumed that: 
         ɛ   ⁢     {         [       n   _     j     ]     ⁡     [       n   _     i     ]       H     }       =     {             σ   2     ⁢   I           i   =   j             0         i   ≠     j   .                   
 
   Using the above relation for  x , the values within the transmitted data symbols vector  s  are determined using decision-feedback sequence estimation to satisfy a performance related criterion, such as a minimum mean squared error (MMSE) or a zero forcing (ZF) criterion. When MMSE is the performance related criterion, a minimum mean squared error-block linear estimator (MMSE-BLE) is derived from which a minimum mean squared error-block decision feedback sequence estimator (MMSE-BDFSE) is obtained. When ZF is the performance related criterion, a zero forcing-block linear estimator (ZF-BLE) is derived from which a zero forcing-block decision feedback sequence estimator (ZF-BDFSE) is obtained. 
   To determine the MMSE block level estimator, the values within the matrix of the transmitted data symbols  s  are estimated by minimizing the following quadratic form Q MMSE : 
                 min     s   _       ⁢       Q   MMSE     ⁡     (     s   _     )         =       min     s   _       ⁢     ɛ   ⁢     {                s   _     ^     -     s   _            2     }                       =       min     s   _       ⁢     ɛ   ⁢     {         (         s   _     ^     -     s   _       )     H     ⁢     (         s   _     ^     -     s   _       )       }           ,             
 
where  ŝ  is an vector of estimated data symbols, 
                    s   _     ^     -     s   _            2     =         (         s   _     ^     -     s   _       )     H     ⁢     (         s   _     ^     -     s   _       )           
 
is the magnitude of the vector  ŝ − ŝ , and  ŝ  is the estimated value of  s . By solving for  ŝ , the following relation is obtained: 
                 s   _     ^     =     arg   ⁢           ⁢       min     s   _       ⁢       Q   MMSE     ⁡     (       s   _     ^     )                       =         (         A   H     ⁢     R   nn     -   1       ⁢   A     +     R   ss     -   1         )       -   1       ⁢     A   H     ⁢     R   nn     -   1       ⁢     x   _                     =         (         ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁡     [     A   j     ]         +       σ   2     ⁢     R   ss     -   1           )       -   1       ⁢     (       ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁢       x   _     j         )         ,             
 
where is it assumed that  s  is distributed according to a Gaussian distribution having a zero mean value and a covariance matrix R ss , namely  s ˜N ( 0 , R ss ), and  n  is distributed according to a Gaussian distribution having a zero mean value and a covariance matrix R nn , namely  n ˜N( 0 , R nn ), and R ss =ε{ ss   H }=I.
 
   To determine the ZF block level estimator, the values within the vector of the transmitted data symbols  s  are estimated by minimizing the following quadratic form Q ZF : 
                 min     s   _       ⁢       Q   ZF     ⁡     (     s   _     )         =       min     s   _       ⁢     {              x   _     -     A   ⁢     s   _                R   nn     2     }                       =       min     s   _       ⁢         {         (        ⁢     x   _       -     A   ⁢     s   _         )     H     ⁢       R   nn     -   1       ⁡     (       x   _     -     A   ⁢     s   _         )             }     .             
 
The solution for  ŝ  is given by the relation: 
                 s   _     ^     =     arg   ⁢           ⁢       min     s   _       ⁢       Q   ZF     ⁡     (     s   _     )                       =         (       A   H     ⁢     R   nn     -   1       ⁢   A     )       -   1       ⁢     A   H     ⁢     R   nn     -   1       ⁢     x   _                     =         (       ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁡     [     A   j     ]         )       -   1       ⁢     (       ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁢       x   _     j         )         ,             
 
where it is assumed that  n  is distributed according to a Gaussian distribution having a zero mean value and a covariance matrix R nm , namely  n ˜N ( 0 , R nn ).
 
   The proof of the solutions for the MMSE block level estimator and the ZF block level estimator are known, such as is described in “Fundamentals of Statistical Signal Processing—Estimation Theory”, Vol. 1, S. M. Kay, Prentice Hall, 1993. 
   Improved detection performance is obtained using the MMSE block decision feedback sequence estimator and the ZF block decision feedback sequence estimator, instead of the MMSE block level estimator and the ZF block level estimator. The MMSE block decision feedback sequence estimator and the ZF block decision feedback sequence estimator are derived using a Cholesky decomposition of the inverse portions of the above expressions for the MMSE block decision feedback sequence estimator and the ZF block decision feedback sequence estimator. Namely, using the expression for the MMSE block level estimator, the relation 
         (         ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁡     [     A   j     ]         +       σ   2     ⁢     R   ss     -   1           )     =     LL   H         
 
is defined and then substituted into the above MMSE expression for  ŝ  to obtain the following relation: 
           s   _     ^     =       L     -   H       ⁢         L     -   1       ⁡     (       ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁢       x   _     j         )       .           
 
Similarly, using the ZF block level estimator, the relation 
         (       ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁡     [     A   j     ]         )     =     LL   H         
 
is defined and then substituted into the corresponding ZF expression for  ŝ  to likewise obtain the relation: 
           s   _     ^     =       L     -   H       ⁢         L     -   1       ⁡     (       ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁢       x   _     j         )       .           
 
For both MMSE and ZF, the above expression for  ŝ  can be multiplied by L H  to obtain a parameter  z  that is defined by the relation: 
           z   _     ≡       L   H     ⁢       s   _     ^         =         L     -   1       ⁡     (       ∑     j   =   1     n     ⁢         [     A   j     ]     H     ⁢       x   _     j         )       .         
 
The solution for  ŝ  is a continuous valued function.
 
   To obtain a discrete valued solution, an absolute difference value  Δ , defined as 
           Δ   _     =                L   H     ⁢       s   _     ^       -     z   _            2       ,       
 
is minimized for all possible estimated values  ŝ  of the transmitted symbols  s , such as the phase shift keying (M-PSK) constellation points, to obtain the following expression: 
         Δ   _     =              [           δ   1               δ   2             ⋮             δ   N           ]          2     =                  [           l   11           l   12         …         l     1   ⁢   N               0         l   22         …         l     2   ⁢   N               ⋮       ⋮       ⋰       ⋮           0       0       …         l   NN           ]     ⁡     [             s   ^     1                 s   ^     2             ⋮               s   ^     N           ]       -     [           z   1               z   2             ⋮             z   N           ]            2     .           
 
   To reduce the estimation error and increase the speed of the estimation, the discrete value minimization is applied to respective blocks of data symbols, rather than to the data symbols individually, so that an entire block of data symbols can be estimated at a time. The above expansion can therefore be rewritten to obtain the following cost function: 
           Δ   _     =              [             Δ   _     1                 Δ   _     2             ⋮               Δ   _     Q           ]          2     =                [           L   11           L   12         …         L     1   ⁢   Q               0         L   22         …         L     2   ⁢   Q               ⋮       ⋮       ⋰       ⋮           0       0       …         L   QQ           ]     ⁡     [               s   ^     _     1                   s   ^     _     2             ⋮                 s   ^     _     Q           ]       -     [             z   ─     1                 z   ─     2             ⋮               z   ─     Q           ]            2         ,       
 
where 
             Δ   _     i     =       [           δ   1             ⋮             δ       (     W   -   1     )     ⁢   i             ]     ∈     C     W   ×   1           ,     
     ⁢       L   ij     =       [           l       W   ⁡     (     i   -   1     )       ,     W   ⁡     (     j   -   1     )               …         l       W   ⁡     (     i   -   1     )       ,       (     W   -   1     )     ⁢   j                 ⋮       ⋮       ⋮             l         (     W   -   1     )     ⁢   i     ,     W   ⁡     (     j   -   1     )               …         l         (     W   -   1     )     ⁢   i     ,       (     W   -   1     )     ⁢   j               ]     ∈     C     W   ×   W           ,       
             s   _     ^     i     =       [             s   ^       W   ⁡     (     i   -   1     )                 ⋮               s   ^         (     W   -   1     )     ⁢   i             ]     ∈       C     W   ×   1       ⁢           ⁢   and           
           z   _     i     =       [           z     W   ⁡     (     i   -   1     )                 ⋮             z       W   ⁡     (     i   -   1     )       ⁢   i             ]     ∈       C     W   ×   1       .           
 
The value W is the size of the block of data symbols, namely the number of data symbols in a block, and the value Q is the number of blocks in the N transmitted data symbols, namely Q=N/W.
 
   By substituting the above relations, the cost function can be rearranged into the following form: 
                      L   H     ⁢       s   _     ^       -     z   _              ︸     =     Δ   ─           2     =                      L   QQ     ⁢         s   _     ^     Q       -       z   _     Q            ︸       =       Δ   ─     Q         2     +                    L       Q   -   1     ,     Q   -   1         ⁢         s   _     ^       Q   -   1         +       L       Q   -   1     ,   Q       ⁢         s   _     ^     Q       -       z   _       Q   -   1              ︸       =       Δ   ─       Q   -   1           2     +   …   +                    ∑     j   =   1     Q     ⁢       L   ij     ⁢         s   _     ^     j         -       z   _     i            ︸       =       Δ   ─     i         2     +   …   +                    ∑     j   =   1     Q     ⁢       L     1   ⁢   j       ⁢         s   _     ^     j         -       z   _     1            ︸       =       Δ   ─     i         2           
 
Then, the parameter  Δ  is minimized using the following iterative algorithm:
         (1) For the first error term  Δ   Q  in the cost function, possible values for the estimated symbols  ŝ   Q  are tested until a W sized sequence of symbols that minimizes the first error term  Δ   Q ( ŝ   Q ) is obtained. This operation is referred to as sequence estimation.   (2) Using the symbols  ŝ   Q  estimated in the previous step, possible values of  ŝ   Q-1  are tested until a W sized sequence of symbols is obtained that minimizes the error term  Δ   Q-1 ( ŝ   Q-1 ,  ŝ   Q ). This operation is known as decision-feedback.   (3) The above decision-feedback operation is repeated to minimize the error term  Δ   Q-2 . Namely, using the symbols  s   Q  and  s   Q-1  estimated in the previous step, possible values of  ŝ   Q-2  tested to obtain a W sized sequence of symbols that minimizes the error term  Δ   Q-2 ( ŝ   Q-2 ,  ŝ   Q-1 ,  ŝ   Q ).   (4) The above decision-feedback operation is repeated for each error term until the final error term  Δ   1  is estimated, i.e, until, using the symbols  s   2 , . . . ,  s   Q  estimated in the previous steps, possible values of  ŝ   1  are tested until a W sized sequence of symbols is obtained that minimizes the error term  Δ   1 ( ŝ   1 , . . . ,  ŝ   Q ).       

   The number of possible symbol states that are tested for each block is M W . Thus, the size of W should be restricted to values that attain an acceptable detection performance while the complexity of processing the test values is kept within the capability of the digital signal processor or other processor that carries out the above iterative process. As an example, for eight phase state phase shift keying (8-PSK) modulation, W preferably has the value 3 or 4. 
     FIG. 3  shows a measured bit error rate (BER) as a function of the signal-to-noise ratio (SNR) for a two transmit antenna, two receive antenna, known as (2, 2), MTMR communication system using 4-PSK modulation with 20 Hz fading. Five thousand independent time slots are averaged for each BER calculation using twenty five training symbols for each antenna used for channel estimation. The lower solid curve (identified as MMSE-BDFSE) represents a MMSE block decision feedback sequence estimation of the invention, and the upper solid curve (ZF-BDFSE) represents a ZF block decision feedback sequence estimation of the invention. The lower dashed curve (MMSE-BLAST) and the upper dashed curve (ZF-BLAST) represent MMSE BLAST and ZF BLAST estimations, respectively. The MMSE block decision feedback estimation of the invention attains a lower BER for a given SNR than the MMSE BLAST estimation, and the ZF block decision feedback estimation of the invention attains a lower BER for a given SNR than the ZF BLAST estimation. 
     FIG. 4  illustrates the measured BER as a function of the SNR for a (2, 2) MTMR communication system using 4-PSK modulation with 20 Hz fading. Five thousand independent time slots are averaged for each BER calculation using twenty five training symbols for each antenna used for channel estimation. The lower solid curve (MMSE-BDFSE) represents a MMSE block decision feedback sequence estimation of the invention, and the upper solid curve (ZF-BDFSE) represents a ZF block decision feedback sequence estimation of the invention. The lower dashed curve (MMSE-BLAST) and the upper dashed curve (ZF-BLAST) represent MMSE BLAST and ZF BLAST estimations, respectively. The MMSE block decision feedback estimation of the invention attains a lower BER for a given SNR than the MMSE BLAST estimation, and the ZF block decision feedback estimation of the invention attains a lower BER for a given SNR than the ZF BLAST estimation. 
   In contrast to existing techniques, such as the BLAST algorithm, the receiver scheme of the invention allows for the estimation of the transmitted symbols in the presence of inter-symbol interference (ISI). Thus, the above process may also be applied to other communication systems, such as those incorporating Turbo processing and orthogonal frequency division multiplexing (OFDM). 
   In OFDM based wireless systems, for example, the same subcarriers are used in different transmit antennas. The invention may be used to demodulate the transmitted signal. The invention may also be applied to multi-user detection or multi-code detection in third generation, universal mobile telecommunication system (UMTS) base transceiver station (BTS) products. 
   Although the present invention has been described in relation to particular embodiments thereof, many other variations and modifications and other uses may become apparent to those skilled in the art. It is preferred, therefore, that the present invention be limited not by this specific disclosure herein, but only by the appended claims.