Abstract:
In MIMO wireless communications employing LMMSE receiver, the symbols transmitted through a transmit antenna are estimated at the receiver in the presence of interference consisting of two main components: one due to the additive noise and the other due to (interfering) symbols transmitted via the remaining antennas. This has been shown to hamper the performance of a communication system resulting in incorrect symbol decisions, particularly at low SNR. IMMSE has been devised as a solution to cope with this problem; In IMMSE processing, the symbols sent via each transmit antenna are decoded iteratively. In each stage of processing, the received signal is updated by removing the contribution of symbols detected in the previous iterations. In principle, this reduces the additive interference in which the desired symbols are embedded in. Therefore, the interference level should reduce monotonically as one goes down in processing order. In a noisy environment, however, any incorrect decision made on a symbol in an iteration leaves its contribution in the updated received signal available for processing in the following iterations. Fortunately, if the level of interference is estimated and the soft bits are scaled appropriately by the estimated interference power, the performance of IMMSE receiver can be greatly improved. Preferred embodiments estimate the interference by computing the probability of error in decoding the symbols of the previous stage(s). The computation of decision error probability depends on the constellation size of transmitted symbols and introduces very little processing overhead.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS  
       [0001]     The following copending applications disclose related subject matter and have a common assignee with the present application: application Ser. No. ______, filed ______  
       BACKGROUND OF THE INVENTION  
       [0002]     The present invention relates to communication systems, and more particularly to multiple-input multiple-output wireless systems.  
         [0003]     Wireless communication systems typically use band-limited channels with time-varying (unknown) distortion and may have multi-users (such as multiple clients in a wireless LAN). This leads to intersymbol interference and multi-user interference, and requires interference-resistant detection for systems which are interference limited. Interference-limited systems include multi-antenna systems with multi-stream or space-time coding which have spatial interference, multi-tone systems, TDMA systems having frequency selective channels with long impulse responses leading to intersymbol interference, CDMA systems with multi-user interference arising from loss of orthogonality of spreading codes, high data rate CDMA which in addition to multi-user interference also has intersymbol interference.  
         [0004]     Interference-resistant detectors commonly invoke one of three types of equalization to combat the interference: maximum likelihood sequence estimation, (adaptive) linear filtering, and decision-feedback equalization. However, maximum likelihood sequence estimation has problems including impractically large computation complexity for systems with multiple transmit antennas and multiple receive antennas. Linear filtering equalization, such as linear zero-forcing and linear minimum square error equalization, has low computational complexity but has relatively poor performance due to excessive noise enhancement. The decision-feedback (iterative) detectors, such as iterative zero-forcing and iterative minimum mean square error, have moderate computational complexity and exhibits superior performance compared to linear receivers.  
         [0005]     In an iterative receiver, the symbols from a transmit antenna are first detected. The contribution due to these symbols in the received signal is then removed, followed by detection of symbols from the second transmit antenna. This procedure is followed until all transmitted symbols are detected. Since the soft symbols and soft bits are estimated in the presence of noise, they have to be scaled appropriately before being fed into the Viterbi decoder for the recovery of transmitted bits.  
       SUMMARY OF THE INVENTION  
       [0006]     The present invention provides methods and detectors for multiple-input multiple-output (MIMO) systems with interference cancellation by a adjusting the scaling of soft estimates depending upon interference cancellation error probabilities.  
         [0007]     This has shown advantages including improved performance for wireless systems. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0008]      FIG. 1  is a flow diagram.  
         [0009]      FIGS. 2   a - 2   c  illustrate functional blocks of detectors, receivers, and transmitters.  
         [0010]      FIGS. 3   a - 3   b  show 2×2 MIMO OFDM transmitter and receiver.  
         [0011]      FIG. 4  illustrates simulation results.  
     
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0000]     1. Overview  
         [0012]     Preferred embodiment detectors and detection methods for multi-input, multi-output (MIMO) systems with interference cancellation capabilities compensate for decision errors in the symbols for cancellation by adjusting the scaling (normalization) of the transmitted soft symbol. The scaling factor has additive interference term proportional to a parameter depending upon the probability of decision errors.  FIG. 1  is a flow diagram for a first preferred embodiment method with the additive interference term proportional to an estimate of the mean square decision error.  
         [0013]     Preferred embodiment communication systems, such as wireless local area networks, include preferred embodiment interference cancellation receivers employing preferred embodiment interference cancellation methods. The computations can be performed with digital signal processors (DSPs) or general-purpose programmable processors or application specific circuitry (ASICs) or systems on a chip such as both a DSP, ASIC, and RISC processor on the same chip with the RISC processor in control. Analog-to-digital converters and digital-to-analog converters provide coupling to the real world, and modulators and demodulators (plus antennas for air interfaces) provide coupling for transmission waveforms.  
         [0000]     2. Single Stage Iterative MMSE Detectors  
         [0014]      FIG. 2   a  illustrates a generic MIMO transmitter, and  FIG. 2   b  illustrates a MIMO receiver with an interference-resistant detector; these could be part of a wireless communications system with P transmit antennas (P data streams) and Q receive antennas. The received signal in such a system can be written as: 
   r=H s+w    
 where r is the Q-vector of samples of the received baseband signal (complex numbers) corresponding to a transmission time n:  
         r   =     [             r   1     ⁡     (   n   )                   r   2     ⁡     (   n   )               ⋮               r   Q     ⁡     (   n   )             ]       ;         
 s is the P-vector of transmitted symbols (sets of complex numbers of a symbol constellation) for time n:  
         s   =     [             s   1     ⁡     (   n   )                   s   2     ⁡     (   n   )               ⋮               s   P     ⁡     (   n   )             ]       ;         
 H is the Q×P channel matrix of attenuations and phase shifts; and w is a Q-vector of samples of received (white) noise. That is, the (q,p)th element of H is the channel (including multipath combining and equalization) from the pth transmit source to the qth receive sink, and the qth element of w is the noise seen at the qth receive sink. 
 
         [0015]     Note that the foregoing relation applies generally to various systems with various interference problems and in which n, r, s, P, and Q have corresponding interpretations. For example:  
         [0016]     (i) High data rate a multi-antenna systems such as BLAST (Bell Labs layered space time architecture) or MIMO and multi-stream space-time coding: spatial interference suppression techniques are used in detection.  
         [0017]     (ii) Broadband wireless systems employing OFDM (orthogonal frequency division multiplex) signaling and MIMO techniques for each tone or across tones.  
         [0018]     (iii) TDMA (time division multiple access) systems having frequency-selective channels with long impulse response which causes severe ISI (intersymbol interference). Use equalizers to mitigate ISI.  
         [0019]     (iv) CDMA (code division multiple access) systems having frequency-selective channels which cause MUI (multi-user interference) as a result of the loss of orthogonality between spreading codes. For high data rate CDMA systems such as HSDPA and 1×EV-DV, this problem is more severe due to the presence of ISI. Equalizers and/or interference cancellation may be used to mitigate these impairments.  
         [0020]     (v) Combinations of foregoing.  
         [0021]     P is essentially the number of symbols that are jointly detected as they interfere with one another, and Q is simply the number of collected samples at the receiver. Because there are P independent sources, Q must be at least be as large as P to separate the P symbols. A detector in a receiver as in  FIGS. 2   a - 2   b  outputs soft estimates z of the transmitted symbols s to a demodulator and decoder.  
         [0022]     Presume that different symbols that are transmitted via P different antennas are uncorrelated and may also utilize different modulation schemes. This implies the P×P matrix of expected symbol correlations, Λ=E[ss H ], is diagonal with entries equal the expected symbol energies (λ k =E[|s k | 2 ]); i.e.,  
       Λ   =     [           λ   1         0       ⋯       0           0         λ   2         ⋯       0           ⋮       ⋮       ⋰       ⋮           0       0       ⋯         λ   P           ]         
 
         [0023]     For linear filtering equalization detectors, such as linear zero-forcing (LZF) or linear minimum mean square error (LMMSE), the soft estimates, denoted by P-vector z, derive from the received signal by linear filtering with P×Q matrix F; namely, z=F r. LZF detection essentially takes F to be the pseudoinverse of H; namely, F=[H H H] −1 H H .  
         [0024]     In contrast, LMMSE detection finds the matrix F by minimizing the mean square error, E[∥z−s∥ 2 ]. With perfect estimation of the channel H, the minimizing matrix F is given by:  
       F   =           [         H   H     ⁢   H     +       σ   2     ⁢     Λ     -   1           ]       -   1       ⁢     H   H       =     Λ   ⁢           ⁢         H   H     ⁡     [       H   ⁢           ⁢   Λ   ⁢           ⁢     H   H       +       σ   2     ⁢     I   Q         ]         -   1               
 
 where σ 2  is the variance per symbol of the additive white noise w and I Q  is the Q×Q identity matrix. Note F has the form of a product of an equalization matrix with H H  which is the matrix of the matched filter for the channel. Also, note that this LMMSE detector is biased; however, the normalization (scaling) can correct this as described below and indicated in  FIG. 2   b.  
 
         [0025]     A one-stage iterative (decision-feedback) detector for blocks of P symbols has a series of P linear detectors (P iterations) with each linear detector followed by a (hard) decision device and interference subtraction (cancellation). Each of the P linear detectors (iterations) generates both a hard and a soft estimate for one of the P symbols. The hard estimate is used to regenerate the interference arising from the already-estimated symbols which is then subtracted from the received signal, and the difference used for the next linear symbol estimation. This presumes error-free decision feedback. More explicitly, let s denote the P-vector of transmitted symbols to be estimated, ŝ (i)  denote the ith iteration output P-vector of hard symbol estimates (first i components equal to the hard estimates ŝ 1 , ŝ 2 , . . . , ŝ i  of the first i symbols, s 1 , s 2 , . . . , s i , and the remaining P−i components each equal to 0), and z (i)  denote the ith iteration output P-vector of soft estimates of s 1 −ŝ 1 , s 2 −ŝ 2 , . . . , s i−1 −ŝ i−1 , s i , s i+1 , . . . , s P . That is, estimates of the transmitted symbols with the already-estimated first i−1 symbols subtracted out. The hard decision for the ith symbol, ŝ i , arises from application of a hard decision operator on the soft estimate: ŝ i =D{z i   (i) }. The ith iteration detection is: 
 
 z   (i)   =F r−F H ŝ   (i−1 ) 
 
 where the second term is the soft estimation of the regenerated (propagated by H) hard decision symbol estimates of the prior i−1 iterations. For the first iteration there are no already-estimated symbols, so take ŝ (0) =0 P , a P-vector with each component equal to 0. Ideally, for the ith iteration the soft estimates z 1   (i) , z 2   (i) , . . . , z i−1   (i)  are just estimates of channel noise because the hard estimates would exactly cancel the transmitted symbols. Thus computational simplicity suggests omitting these computations by zeroing-out the corresponding rows (columns) of the matrices. More precisely, take: 
 
 z   (i)   =F   (i)   r−G   (i)   ŝ   (i−1)  
 
 where F (i)  and G (i)  are the P×Q detection matrix and the P×P interference cancellation matrix for the ith iteration, respectively, and defined as:  
         F     (   i   )       =     [           0       (     i   -   1     )     ⁢   xQ                 Φ     (   i   )             ]         
         G     (   i   )       =       F     (   i   )       ⁢     ⌊           B     i   -   1               0     Qx   ⁡     (     P   -   i   +   1     )         ⌋                   
 
 where the inversion matrix for IMMSE is  
         Φ     (   i   )       =           (         A   i   H     ⁢     A   i       +       σ   2     ⁢     Λ   i     -   1           )       -   1       ⁢     A   i   H       =       Λ   i     ⁢         A   i   H     ⁡     (         A   i     ⁢     Λ   i     ⁢     A   i   H       +       σ   2     ⁢     I   Q         )         -   1               
 
 Here the last P−i+1 and first i−1 symbol portions of the channel matrix H are defined in terms of the P column vectors h 1 , h 2 , . . . , h P  of H as: 
 
 A   i   =[h   i   , h   i+1   , . . . , h   P ]
 
 a Q×(P−i+ 1 ) matrix, and 
 
 B   i   =[h   1   , h   2   , . . . , h   i−1 ]
 
 a Q×(i−1) matrix. Also, 0 (i−1)×Q  is the (i−1)×Q matrix of 0s, 0 Q×(P−i+1)  is the Q×(P−i+1) matrix of 0s, and Λ i  is the lower-right (P−i+1)×(P−i+1) diagonal submatrix of Λ and thus the symbol energies of the symbols not-already estimated.  FIG. 2   c  illustrates iterative detection. 
 
         [0026]     Ordered detection based on the symbol post-detection signal-to-interference-plus-noise ratio (SINR) is often used to reduce the effect of decision feedback error. In particular, let the detection order be π(1), π(2), . . . , π(P) where π( ) is a permutation of the P integers {1,2, . . . , P}; that is, the first estimated symbol (hard estimate output) will be ŝ π(1)  and thus also be the corresponding nonzero element of ŝ (1) . The maximum SINR of the components of the first soft estimate z (1) , which estimates all P symbols, determines π(1). Similarly, the SINRs of the components of z (2) , which estimates all of the symbols except the cancelled s π(1) , determines π(2), and so forth. That is, the ith iteration estimates symbol s π(i) , and modifying the foregoing to accommodate the ordering is routine but omitted for clarity in notation. Indeed, simply denote the resulting P soft symbol estimates as z 1 , z 2 , . . . , z P . These MMSE detectors are biased estimators in the sense that E[z k |s k ]−s k ≠0. However, the bias of the MMSE detectors can be removed by applying a scaling factor to the soft outputs. This scaling factor does not affect post-detection SINR, yet results in increased mean square error compared to the regular biased MMSE estimate. While this unbiasing operation does not affect the performance of LMMSE detectors, it improves the performance of IMMSE detectors because the decision device that is used to generate decision feedback assumes unbiased soft output. The unbiasing operation for IMMSE detectors rescales the soft estimates as follows:  
           z   ˇ     k     =       z   k     /     v   k           
     where     
         v   k     =         λ   k     ⁢         h   k   H     ⁡     [         A   k     ⁢     Λ   k     ⁢     A   k   H       +       σ   2     ⁢     I   Q         ]         -   1       ⁢     h   k       ⁢     
     ⁢           =       (         [         A   k   H     ⁢     A   k       +       σ   2     ⁢     Λ   k     -   1           ]       -   1       ⁢     A   k   H     ⁢     A   k       )       1   ,   1             
 
 with {circumflex over (z)} k  denoting the soft output after unbiasing and the subscript 1,1 denoting the (1,1) matrix element. For unbiased IMMSE, variance-based and mean-squared-error-based normalizations are equivalent. 
 
         [0027]     For a channel encoder (see  FIG. 2   a ) using a convolution code, the demodulator (see  FIG. 2   b ) converts the output P soft symbol estimates, z 1 , z 2 , . . . , z P , into (bit-level) conditional probabilities of the transmitted symbols, s 1 , s 2 , . . . , s P ; and a decoder may translate (using a channel model) the conditional probabilities into branch metric values for trellis path searching. In particular, a maximum likelihood (Viterbi) decoder may use a branch metric derived from bit-level versions of log{p(z|s)}, whereas a Fano algorithm sequential decoder may use a branch metric from bit-level versions of log{p(z|s)/p(z)}−K where K is the log 2  of the number of possible inputs. For a channel encoder using a turbo code, the demodulator may provide log-likelihood ratios like log{p(b=0|z)/p(b=1|z)} to an iterative MAP decoder. Of course, a hard decision decoder just directly converts the soft symbol estimates into hard symbol estimates.  
         [0028]     For example, an AWGN channel where the residual interference (interference which is not cancelled) is also a zero-mean, normally-distributed, independent random variable, gives: 
 
 p ( z   k   |s   k   =c )˜ exp(−|z k   −c|   2 /γ k ) 
 
 where c is a symbol in the symbol constellation and γ k  is a normalization (scaling) typically derived from the channel characteristics and the detector type. Of course, γ k  is just twice the variance of the estimation error random variable. 
 
         [0029]     For LZF type detectors the natural choice of γ p  is the variance of the noise term associated with the soft estimate; that is, γ p =var(n p ) where z p =s p +n p . This relates to the AWGN noise power of the channel (σ 2 ) and the corresponding (p,p) diagonal term of the matrix which amplifies the channel noise: 
 
γ p =σ 2   [H   H   H ] −1   p,p  
 
 And for the iterative ZF detector (with numerical ordering) the analog applies: 
 
γ p =σ 2   [A   p   H   A   p ] −1   1,1  
 
 where the (1,1) element corresponds to the channel from the pth symbol source due to the definition of A p  with first column equal h p . 
 
         [0030]     For MMSE-type detectors a natural choice is to take γ p  as the mean square error: 
 
γ p   =E[|z   p   −s   p | 2 ]
 
 For LMMSE this translates to 
 
γ p =σ 2   [H   H   H +σ 2 Λ −1 ] −1   p,p  
 
 and for the unordered iterative MMSE the analog obtains: 
 
γ p =σ 2   [A   p   H   A   p +σ 2 Λ p   −1 ] −1   1,1  
 
 MMSE-type detectors can also use a variance type normalization. 
 
         [0031]     Because MMSE detectors are biased in the sense that the mean of the estimation error, E[z p −s p ], is not zero, the variance normalization becomes 
 
γ p   =E[|z   p −s p | 2   ]−|E[z   p   −s   p ]| 2 . 
 
 For linear MMSE this is 
 
γ p =σ 2 ([ H   H   H +σ 2 Λ −1 ] −1   H   H   H[H   H   H +σ 2 Λ −1 ] −1 ) p,p  
 
 and for unordered iterative MMSE this is: 
 
γ p =σ 2 ([ A   p   H   A   p +σ 2 Λ p   −1 ] −1   A   p   H   A   p   [A   p   H   A   p +σ 2 Λ p   −1 ] −1 ) 1,1  
 
 The bias of the MMSE detectors can be removed as previously described, and for unbiased detectors the mean-square-error normalization and the variance normalization are thus equivalent. 
 
         [0032]     An alternative normalization simply takes 
 
γ p =σ 2 /(λ p   ∥h   p ∥ 2 ) for  p =1, 2 , . . . , P  
 
 where μh p ∥ 2  is the square of the norm of the channel Q-vector h p , that is, the sum of the squared magnitudes of the Q components of the pth column of channel matrix H. 
 
         [0033]     In more detail, in terms of the bits b kj  which define the symbol s k  in its constellation (e.g., two bits for a QPSK symbol, four bits for a 16 QAM symbol, etc.), take as a practical approximation p(z k |b kj =1)=p(z k |s k =c kj=1 ) where c kj=1  is the symbol in the sub-constellation of symbols with jth bit equal 1 and which is the closest to z k ; that is, c kj−1  minimizes |z k −c j=1 | 2  for c j=1  a symbol in the sub-constellation with jth bit equal to 1. Analogously for p(z k |b kj =0) using the sub-constellation of symbols with jth bit equal 0.  
         [0034]     Similarly, the decoder for a binary trellis may use log likelihood ratios (LLRs) which are defined as  
               LLR   ⁡     (     b   kj     )       =       ⁢     log   ⁢     {       p   ⁡     [       b   kj     =     1   ❘     z   k         ]       /     p   ⁡     [       b   kj     =     0   ❘     z   k         ]         }                   =       ⁢       log   ⁢     {     p   ⁡     [       b   kj     =     1   ❘     z   k         ]       }       -     log   ⁢     {     p   ⁡     [       b   kj     =     0   ❘     z   k         ]       }                     =       ⁢       log   ⁢     {       p   ⁡     (         z   k     |     b   kj       =   1     )       /     p   ⁡     (         z   k     |     b   kj       =   0     )         }       +                     ⁢     log   ⁢     {       p   ⁡     [       b   kj     =   1     ]       /     p   ⁡     [       b   kj     =   0     ]         }                 
 
 where the first log term includes the probability distribution of the demodulated symbol z k  which can be computed using the channel model. The second log term is the log of the ratio of a priori probabilities of the bit values and typically equals 0. Then again using the approximation p(z k |b kj =1)=p(z k |s k =c kj=1 ) where c kj=1  is the symbol in the sub-constellation of symbols with jth bit equal 1 and which is the closest to z k  together with equal a priori probabilities yields:  
               LLR   ⁡     (     b   kj     )       =       ⁢     log   ⁢     {       p   ⁡     (         z   k     ❘     b   kj       =   1     )       /     p   ⁡     (         z   k     ❘     b   kj       =   0     )         }                   ≅       ⁢       1   /     γ   k       ⁢     {         min     j   =   0       ⁢              z   k     -     c     j   =   0              2       -       min     j   =   1       ⁢              z   k     -     c     j   =   1              2         }                 
 
 Thus the LLR computation just searches over the two symbol sub-constellations for the minima. The magnitude of LLR(b kj ) indicates the reliability of the hard decision b kj =0 when LLR(b kj )&lt;0 and b kj =1 when LLR(b kj )≧0. 
 
         [0035]     The LLRs are used in decoders for error correcting codes such as Turbo codes (e.g., iterative interleaved MAP decoders with BCJR or SOVA algorithm using LLRs for each MAP) and convolutional codes (e.g. Viterbi decoders). Such decoders require soft bit statistics (in terms of LLR) from the detector to achieve their maximum performance (hard bit statistics with Hamming instead of Euclidean metrics can also be used but result in approximately 3 dB loss). Alternatively, direct symbol decoding with LLRs as the conditional probability minus the a priori probability could be used.  
         [0000]     3. 2×2 OFDM System First Preferred Embodiment Scalings  
         [0036]     First preferred embodiment methods of compensation for interference-cancellation decision error apply generally to the foregoing MIMO systems, but the methods will be described in terms of an orthogonal frequency division multiplex (OFDM) system with a two-antenna transmitter and a two-antenna receiver as illustrated in  FIGS. 3   a - 3   b . Such a system could be part of a wireless LAN. In particular, the IEEE 802.11 standards include a 20 MHz channel (center frequency about 2.4 or 5 GHz) containing 64 equispaced distinct tones with a separation of 0.3125 MHz between adjacent tones, and each tone is modulated (e.g., BPSK, QPSK, 16 QAM, 64 QAM). An IFFT combines the modulated tones for transmission as illustrated in  FIG. 3   a ; the symbol interval of 4 μs (microseconds) has 3.2 μs for the data signal and 0.8 μs of guard interval to lessen interference. 48 of the 64 tones are used as data tones, 4 are used as pilot tones, and 12 are unused; and the set of 48 complex numbers corresponding to the data tone modulations constitutes an OFDM symbol. The 4 pilot tones enable the system to track variations in phase and frequency over the duration of a data packet (e.g., 1000 symbols). The 12 unused tones limit interference with adjacent channels. The inverse discrete Fourier transform converts the 64 complex tone modulations into a 64-sample complex time-domain signal for transmission: each complex sample maps to in-phase and quadrature waveforms.  
         [0037]     The forward error correction (FEC) coding may be a packet-based convolution code with a memory length of 7 (i.e., 64 states) such as the PBCC of the 802.11 standards. A packet preamble (direct sequence spread spectrum) of 96 μs allows time for estimation of channel parameters (sent to the decoder) during synchronization and training. The FFT of the receiver separates the tones, and each tone has a corresponding set of channel parameters (i.e., h 11 (k), h 12 (k), h 21 (k), and h 22 (k)). That is, for the kth tone the received baseband signals from antennas  1  and  2  are (with the time dependence omitted) r 1 (k) and r 2 (k), respectively, and are given by  
         [             r   1     ⁡     (   k   )                   r   2     ⁡     (   k   )             ]     =         [             h   11     ⁡     (   k   )               h   21     ⁡     (   k   )                   h   12     ⁡     (   k   )               h   22     ⁡     (   k   )             ]     ⁡     [             s   1     ⁡     (   k   )                   s   2     ⁡     (   k   )             ]       +     [             n   1     ⁡     (   k   )                   n   2     ⁡     (   k   )             ]           
 
 where the kth tone symbol (e.g., point of the constellation) s 1 (k) was from transmitter antenna  1 , symbol s 2 (k) from transmitter antenna  2 , and with corresponding received noise n 1 (k) and n 2 (k). This can also be written in terms of 2-vectors as: 
 
 r ( k )= h   1 ( k ) s   1 ( k )+ h   2 ( k ) s   2 ( k )+ n ( k ) 
 
 where  
           h   j     ⁡     (   k   )       =     [             h   j1     ⁡     (   k   )                   h   j2     ⁡     (   k   )             ]         
 
 is the subchannel from the jth antenna to the two receiver antennas for the kth tone. 
 
         [0038]     The detector generates soft estimates z 1 (k) and z 2 (k) for each tone (such as by LZF or LMMSE) and for each tone selects the symbol estimate with the larger SINR to be used for cancellation and re-estimation of the other symbol. In particular, consider LMMSE detection with the 2×2 detection matrix F (1)  of section 2 and, after unbiasing, express the detection as weights W j,k *:  
         [             z   1     ⁡     (   k   )                   z   2     ⁡     (   k   )             ]     =       [               w     1   ,   1       ⁡     (   k   )       *               w     1   ,   2       ⁡     (   k   )       *                   w     2   ,   1       ⁡     (   k   )       *               w     2   ,   2       ⁡     (   k   )       *           ]     ⁡     [             r   1     ⁡     (   k   )                   r   2     ⁡     (   k   )             ]           
 
 The weights are given by: 
 
 w   1 ( k )={[Σ+ h   2 ( k ) h   2 ( k ) H ] −1   h   1 ( k )}/{ h   1 ( k ) H   [Σ+h   2 ( k ) h   2 ( k ) H ] −1   h   1 ( k ) }
 
 w   2 ( k )={[Σ+ h   1 ( k ) h   1 ( k ) H ] −1   h   2 ( k )}/{ h   2 ( k ) H   [Σ+h   1 ( k ) h   1 ( k ) H ] −1   h   2 ( k )}
 
 where  
             w   j     ⁡     (   k   )       =         [           w     j   ,   1                 w     j   ,   2             ]     ⁢           ⁢   and   ⁢           ∑     =     [             σ   1   2     ⁡     (   k   )           0           0           σ   2   2     ⁡     (   k   )             ]         ,       
 
 the covariance of the AWGN noise  
         [             n   1     ⁡     (   k   )                   n   2     ⁡     (   k   )             ]     .       
 
 Note that the w j (k) satisfy h j (k) H w j (k)=1 and correspond to the rows of detection matrix F( 1 ) of section 2. The corresponding SINRs are: 
 
         [0039]      SINR   1 ( k )= h   1 ( k ) H   [Σ+h   2 ( k ) h   2 ( k ) H ] −1   h   1 ( k ) 
   SINR   2 ( k )= h   2 ( k ) H   [Σ+h   1 ( k ) h   1 ( k ) H ] 31 1   h   2 ( k )  
 where h 1 (k) H  . . . h 1 (k) relates to the signal power, Σ relates to the AWGN noise power, and h 2 (k) h 2 (k) H  relates to the interference power in SINR 1 (k); SINR 2 (k) is analogous. 
 
         [0040]     As illustrated in  FIG. 3   b , implement the iterative detection with interference cancellation by using a hard decision on the soft estimate with the larger SNR. Without loss of generality, take z 1 (k)=w 1 (k) H r(k) as having the larger SNR and let ŝ 1 (k) be the corresponding hard decision for s 1 (k). Then cancel the signal regenerated from ŝ 1 (k), and use this to re-estimate s 2 (k). That is, define: 
 
 r ′( k )= r ( k )− h   1 ( k )ŝ 1 ( k ) 
 
 and determine z′ 2 (k), a soft estimate for s 2 (k), from this interference-cancelled signal by 
 
 z′   2 ( k )= w   3 ( k ) H   r ′( k ) 
 
 where the weights w 3 (k) correspond to the interference cancelled signal in contrast to the weights w 2 (k) which estimate s 2 (k) from the signal including s 1 (k) interference. Thus the detector output to the demodulator for conditional probability computations would be z 1 (k) and z′ 2 (k), together with the normalizations (scalings). And these soft estimates may be unbiased as previously noted. In particular, preliminarily consider the case of no error in ŝ 1 . This is equivalent to just setting h 1 (k)=0 in the foregoing expression for w 2 (k); namely, 
 
 w   3 ( k )={Σ −1   h   2 ( k )}/{ h   2 ( k ) H Σ −1   h   2 ( k )}
 
         [0041]     The detector also supplies normalizations (scalings) γ 1  and γ 2  for z 1 (k) and z′ 2 (k), respectively, to the demodulator for computation of the conditional probabilities (and branch metrics) for decoding. For γ 1  use the noise variance scaling (reciprocal of SINR) analogous to that of section 2 and cited above: 
 
γ 1 ( k )=1 /{h   1 ( k ) H   |Σ+h   2 ( k ) h   2 ( k ) H ] −1   h   1 ( k )}
 
 Note that this may also be expressed as w 1 (k) H [Σ+h 2 (k)h 2 (k) H ]w 1 (k). 
 
         [0042]     For γ 2 (k) however, the preferred embodiments provide scalings which account for the possibility of error in the hard decision used in the interference cancellation. Indeed, the two symbol streams have been encoded with an error-correcting code (FEC in  FIGS. 2   a ,  3   a ), and so the decoding may actually correct an erroneous hard decision ŝ 1  used in the interference cancellation.  
         [0043]     As illustrated in  FIG. 1 , the first preferred embodiment detectors and methods compensate for this possibility of decision error in the interference cancellation by including a term proportional to the magnitude of detecting a symbol of the first stream as a symbol of the second stream (essentially the inner product of h 1  with h 2 ) as follows: 
 
γ 2 ( k )= w   3 ( k ) H   Σw   3 ( k )+α( k )| w   3 ( k ) H   h   1 ( k )| 2  
 
 The first preferred embodiment methods take the proportionality parameter α(k) equal to E[|s 1 (k)−ŝ 1 (k)| 2 ]; so α explicitly depends upon the likelihood of a decision error. Note when α=0 the scaling reduces to:  
                 γ   2     ⁡     (   k   )       =       ⁢           w   3     ⁡     (   k   )       H     ⁢     ∑           ⁢       w   3     ⁡     (   k   )                       =       ⁢     1   /     {           h   2     ⁡     (   k   )       H     ⁢       ∑     -   1       ⁢       h   2     ⁡     (   k   )           }                   =       ⁢     1   /     {                  h   21     ⁡     (   k   )            2     /         σ   1     ⁡     (   k   )       2       +                h   22     ⁡     (   k   )            2     /         σ   2     ⁡     (   k   )       2         }                 
 
 which just demonstrates that with no interference 1/γ 2  is the sum of the SNRs of the two subchannels from transmitter antenna  2  to the two receiver antennas for the kth tone. 
 
         [0044]     In general, α=E[|s 1 −ŝ 1 | 2 ] can be evaluated for AWGN channels. For example, presume a simple symbol constellation, BPSK, with two possible symbols: −1 and +1. In this case the two Gaussian exponents, (z 1 ±1) 2 /γ 1 , simplify to ±2z 1 /γ 1  plus common terms which factor out and cancel. Thus the probability of a decision error from soft estimate z 1  becomes:  
         p   ⁡     (           s   ^     1     ≠     s   1       ❘     z   1       )       =         exp   ⁡     (       -          z   1            /     γ   1       )       /     {       exp   ⁡     (       -          z   1            /     γ   1       )       +     exp   ⁡     (            z   1          /     γ   1       )         }       ⁢     
     ⁢           =       [     1   -     tanh   ⁡     (            z   1          /     γ   1       )         ]     /   2           
 
 And so α=2 2 p(ŝ 1 ≠s 1 |z 1 )=2[1−tan h(−|z 1 |/γ 1 )] because |s 1 −ŝ 1 |=2 when ŝ 1 ≠s 1  and equals 0 otherwise. Hence, for BPSK the scaling becomes:  
           γ   2     ⁡     (   k   )       =               w   3     ⁡     (   k   )       H     ⁢     ∑       w   3     ⁡     (   k   )           +     4   ⁢     p   ⁡     (           s   ^     1     ≠     s   1       ❘     z   1       )       ⁢                  w   3     ⁡     (   k   )       H     ⁢       h   1     ⁡     (   k   )              2         ⁢     
     ⁢           =             w   3     ⁡     (   k   )       H     ⁢     ∑       w   3     ⁡     (   k   )           +       2   ⁡     [     1   -     tanh   ⁡     (            z   1          /     γ   1       )         ]       ⁢                  w   3     ⁡     (   k   )       H     ⁢       h   1     ⁡     (   k   )              2               
 
 For other symbol constellations the computations are more involved. 
 
         [0045]     Further, the first preferred embodiments allow for over-estimation of the probability of decision error by inserting a positive weighting factor λ into the tanh and thereby use 
 
 p (ŝ 1   ≠s   1   |z   1 )=[1−tan  h (λ| z   1 |γ 1 )]/2 
 
 in γ 2 (k). A positive λ less than 1 makes the tanh smaller and thus increases the probability estimate and consequent interference error compensation. 
 
         [0046]      FIG. 4  shows simulation results of frame error rate as a function of transmit SNR, E s /N 0 , for a coding rate of ¾, QPSK modulation, 200-byte packets, and three path Rayleigh fading. The figure includes this first preferred embodiment compensation method together with a lower bound on frame error rate which takes α(k)=0 when there is no decision error and sets α(k) to the interference power when there is a decision error.  FIG. 4  also shows the frame error rate for the second and third preferred embodiments described in the following section.  
         [0000]     4. Further 2×2 Preferred Embodiment Scalings  
         [0047]     Again consider an interference cancellation 2×2 OFDM system as in the foregoing section 3. Second and third preferred embodiment detectors and methods of compensation for decision error in the cancellation also apply to the parameter α(k) in the scaling for the second detected symbol: 
 
γ 2 ( k )= w   3 ( k ) H   Σw   3 ( k )+α( k )| w   3 ( k ) H   h   1 ( k )| 2  
 
 The second preferred embodiments take α=1/(β+SINR 1 (k)) where β is a positive constant. This α depends upon the likelihood of decision error in that as SINR 1 (k) increases the probability of decision error in ŝ 1  decreases; and this α can also account for the case where SINR 2 (k) approaches 0. In particular, the choice of β=1 is intuitively appealing as 1/(1+SINR) also is proportional to the probability of error in a Rayleigh fading environment. This choice of α has low computational complexity because SINR 1 (k) was already evaluated for the selection of which of the two symbols to estimate first and use to regenerate the cancellation signal. 
 
         [0048]     A third preferred embodiment also uses α=1/(β+SINR) as in the second preferred embodiment but simplifies the computation by replacing the SINR 1 (k) with the decorrelator SINR given by  
           SINR   1     ⁡     (   k   )       =                    h   1     ⁡     (   k   )            2     ⁢              h   2     ⁡     (   k   )            2       -                h   1   H     ⁡     (   k   )       ⁢       h   2     ⁡     (   k   )              2                  h   2     ⁡     (   k   )            2           
 
 This replacement relies on the observation that for small AWGN (i.e., small σ j (k)) the SINR 1 (k) is close to the decorrelator SINR. In such a case, with β=1, the scaling essentially is the inverse of SINR 2 (k): 
 
γ 2 ( k )=1 /{h   2 ( k ) H   [Σ+h   1 ( k ) h   1 ( k ) H ] −1   h   2 ( k )}
 
         [0049]      FIG. 4  simulations compare the first preferred embodiment methods with the second and third preferred embodiment methods for β1.  
         [0000]     5. Modifications  
         [0050]     For systems with more than two antennas and symbol streams, the cancellation error compensation methods may be extended and even mixed. For example, if z 1 (k), z 2 (k), and z 3 (k) are detected in this order, then symbol ŝ 1 (k) is detected in the first iteration. The received signal due to ŝ 1 (k) is then regenerated and subtracted from r(k) to give r′(k) and z′ 2 (k) (and z′ 3 (k)) are detected from r′(k) together with scaling for z′ 2 (k) which incorporates an ŝ 1 (k) error statistic. Then obtain ŝ 2 (k) from z′ 2 (k); this constitutes the second iteration. Finally, the contribution due to both ŝ 1 (k) and ŝ 2 (k) is taken out from the received signal to have r″(k) and z″ 3 (k) is detected from this together with a scaling which incorporates an ŝ 1 (k) error and/or an ŝ 2 (k) error statistic. The ŝ 1 (k) error and/or ŝ 2 (k) error statistic could differ from the ŝ 1 (k) error statistic used with the scaling for z′ 2 (k).