Patent Publication Number: US-7218906-B2

Title: Layered space time processing in a multiple antenna system

Description:
This invention was made with United States government support awarded by the following agencies: NSF CCR-9875805, NSF ECS-9979408, and DARPA F30602-00-2-0555. The United States has certain rights in this invention. 

   BACKGROUND OF THE INVENTION 
   1. Field of Invention 
   The present invention is directed to wireless communication systems. In particular, the present invention is directed to wireless communication systems utilizing multiple antenna arrays. 
   2. Description of Related Art 
   Presently, multiple antenna arrays are used for transmitting data in wireless communication systems. For example, multiple antennas are used at both the transmitter and at the receiver for transmitting data. These multiple antenna arrays can increase wireless channel capacity linearly by the number of transmit antennas, providing the number of receive antennas is greater or equal to the number of transmit antennas. Unfortunately, the relatively high dimensional nature of multiple antenna array systems has high computational complexity in practical systems. 
   One example of a wireless communication system for generating a high data rate using a multiple antenna array is disclosed in U.S. Pat. No. 6,097,771, issued Aug. 1, 2000. This system is otherwise known as a Bell Laboratories Layered Space-Time (BLAST) system. The BLAST system utilizes multiple transmit antennas and multiple receive antennas along with signal processing for interference cancellation. 
   An example of such systems utilizes, for example, four transmitter antennas and four receiver antennas. This system can create four independent sub-channels within a single bandwidth by coding the sub-channels individually as opposed to coding them jointly. Thus, the system increases capacity within a bandwidth by four-fold by exploiting the idea of diversity such that each channel corresponds with transmitting over many Raleigh fading channels. Accordingly, even if one channel is bad, it is combined with the other good channels to reduce the fluctuation of signal strength. This is because each channel then has enough diversity so that each one ends up appearing as a traditional additive white Gaussian noise channel from clear signal processing. However, the creation of the sub-channels requires signal processing to remove interference between the sub-channels. 
   In operation, the BLAST system performs signal processing to create four parallel sub-channels in a sequential procedure. This sequential method involves removing channel interference by sequentially subtracting the signal of one sub-channel from the other sub-channels. Unfortunately, the system ends up starting with the sub-channel with the lowest diversity. This is a problem because the sub-channel with the lowest diversity order is, in essence, the worst channel. The higher diversity sub-channels are created by subtracting decisions from the worst sub-channel to create more reliable sub-channels. Therefore, this method is backward in the sense that it starts with the least reliable decision to create successive, more reliable sub-channels. Thus, problems with the worst sub-channel can create problems with the more reliable sub-channels. Also, this method is excessively complex and thus requires a significant amount of processing power. Furthermore, this method has the problem in that it creates unequal levels of diversity. For example, in a four sub-channel system, one sub-channel has a first order diversity, another sub-channel has a second order diversity, another sub-channel has a third order diversity, and the last sub-channel has a fourth order diversity. This creates more unreliability because the lower order diversity sub-channels are more unreliable. 
   SUMMARY OF THE INVENTION 
   The present invention provides a more reliable wireless communication system utilizing a multiple antenna array. The system is more reliable at least because it begins with a higher order diversity sub-channel. Additionally, the present invention provides a less complex method of determining initial decisions on sub-channels. Also, the present invention is very efficient. Furthermore, the present invention provides dramatic performance improvements over traditional systems. 
   These features, along with other features described below, are provided for by a system and method for performing space-time processing method for removing interference for a multiple antenna array system. A decision of a desired sub-channel of the signal vector is generated by nulling out the interference of a first set of sub-channels by multiplying the received signal vector by a unitary matrix generated from a QR decomposition of a channel matrix. An improved symbol decision is generated by successively canceling channel interference due to a second set of sub-channels. The symbol represents transmitted bits, transmitted coded bits, or other useful transmitted information. For example, the symbol represents the decoded or coded bits of a digital transmission. 
   According to another embodiment, the system and method performs an extended space-time processing. An improved symbol decision of a desired sub-channel of the signal vector is generated by generating a baseline decision for the sub-channel. This baseline decision can be generated by the baseline method, by the BLAST system, or by any other method useful for generating a decision for a sub-channel. Next, a contribution of a strongest sub-channel is subtracted from the signal vector to generate a modified signal vector. The modified signal vector is multiplied by a unitary matrix generated from a QR decomposition of another channel matrix. Channel interference of the remaining sub-channels of the modified signal vector is successively cancelled from a remaining sub-channel. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The preferred embodiments of the present invention will be described with reference to the following figures, wherein like numerals designate like elements, and wherein: 
       FIG. 1  is an exemplary block diagram of a wireless system according to one embodiment; 
       FIG. 2  is an exemplary flowchart outlining the operation of the processor according to a baseline method; 
       FIG. 3  is an exemplary illustration of a space-time processing schematic for a six transmitter and six receiver system according to one baseline embodiment; 
       FIG. 4  is an exemplary illustration of a schematic for processing similar to BLAST for a (6, 6) system according to one embodiment; 
       FIG. 5  is an exemplary illustration of performance analysis of the baseline method according to one embodiment; 
       FIG. 6  is an exemplary flowchart outlining the operation of the processor according to the extended method according to one embodiment; and 
       FIG. 7  is an exemplary illustration of performance analysis of the extended method according to one embodiment. 
   

   DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
     FIG. 1  is an exemplary block diagram of a wireless system  100  according to a first embodiment. The wireless system  100  includes a transmitter  110  including an array of transmit antennas  120 , a receiver  130  including an array of receive antennas  140 , and a controller or processor  150 . Preferably, the number of transmit antennas n T  is equal to the number of receive antennas n R . In operation, the transmitter  110  transmits a signal vector via the array of transmit antennas  120 . The signal vector is received by the receiver  130  via the array of receive antennas  140 . For example, the transmitter  110  transmits different bit streams on different sub-channels on different transmit antennas  120 . The number of sub-channels preferably corresponds to the number of receive antennas n R . 
   The signal vector received by the receive antennas  140  can be represented as:
 
 r   t   =A   s   H   t   s   t   +n   t 
 
where r t  represents the received signal vector, A s  represents a power normalization constant, H t  represents the channel matrix, s t  represents the transmitted signal vector, n t  represents a noise vector, and t represents a discrete time instant. For simplification, the time index may be ignored in the following descriptions.
 
   The received signal vector values can further be represented as: 
   
     
       
         
           r 
           = 
           
             ( 
             
               
                 
                   
                     r 
                     1 
                   
                 
               
               
                 
                   
                     r 
                     2 
                   
                 
               
               
                 
                   ⋮ 
                 
               
               
                 
                   
                     r 
                     
                       n 
                       R 
                     
                   
                 
               
             
             ) 
           
         
       
     
     
       
         
           s 
           = 
           
             ( 
             
               
                 
                   
                     s 
                     1 
                   
                 
               
               
                 
                   
                     s 
                     2 
                   
                 
               
               
                 
                   ⋮ 
                 
               
               
                 
                   
                     s 
                     
                       n 
                       T 
                     
                   
                 
               
             
             ) 
           
         
       
     
     
       
         
           H 
           = 
           
             ( 
             
               
                 
                   
                     h 
                     
                       1 
                       , 
                       1 
                     
                   
                 
                 
                   ⋯ 
                 
                 
                   
                     h 
                     
                       1 
                       , 
                       
                         n 
                         T 
                       
                     
                   
                 
               
               
                 
                   
                       
                   
                 
                 
                   ⋮ 
                 
                 
                   
                       
                   
                 
               
               
                 
                   
                     h 
                     
                       
                         n 
                         R 
                       
                       , 
                       1 
                     
                   
                 
                 
                   ⋯ 
                 
                 
                   
                     h 
                     
                       
                         n 
                         R 
                       
                       , 
                       
                         n 
                         T 
                       
                     
                   
                 
               
             
             ) 
           
         
       
     
     
       
         
           n 
           = 
           
             ( 
             
               
                 
                   
                     n 
                     1 
                   
                 
               
               
                 
                   
                     n 
                     2 
                   
                 
               
               
                 
                   ⋮ 
                 
               
               
                 
                   
                     n 
                     R 
                   
                 
               
             
             ) 
           
         
       
     
   
   The noise vector can be assumed to be an n r  dimensional complex Gaussian vector with zero mean and covariance matrix I. Noise is assumed to be independent at different time instants. A k-dimensional complex (real) Gaussian random vector with mean m and covariance matrix R can be denoted by:
 
CN k (m, R)(N k (m, R)).
 
   Each entry h i,j  in the channel matrix H represents the path gain between the i-th receive antenna and the j-th transmit antenna. In a rich scattering environment, all entries are modeled as independent identically distributed (iid) CN 1 (0,1) random variables. A chi-squared variable with K degrees of freedom denoted by χ k   2  is defined as: 
             ∑     i   =   1     k     ⁢     a   i   2           
where a i  represents independent identically distributed N 1 (0, ½) random variables.
 
   For further analysis, E[•] denotes expectation, t means transpose for real matrices where the transpose is Hermitian for complex matrices, and ⊥ stands for “orthogonal to.” 
   Generally, transmitted power is equally distributed between transmit antennas and the same signal constellation is used at all transmit antennas. The power normalization constant A s  normalizes the signal constellation to have unit average power. Since the noise has unit power in the channel model, the signal to noise ratio (SNR) is represented as:
 
 SNR=n   T   A   s   2  
 
The transmitted power is generally fixed independent of the number of transmit antennas.
 
   Generally, the channel matrix H changes over time due to channel fading. A quasi-static approximation of the fading channel is adopted. For example, the channel remains unchanged during a coherent channel period which lasts T coh  time instants. However, the channel changes independently from one coherence period to another. Also, H is generally known to the receiver  130 , but not to the transmitter  110 . 
   The ergodic capacity of the multiple antenna system  100  can be represented as:
 
 C=E[C ( H )]= E [log  det ( I +( SNR/n   T ) HH   t )]
 
In particular, C(H)=log(1+SNRχ 2k   2 ) for a k-order diversity (1,k) system.
 
   According to one embodiment, the processor performs baseline space-time processing method or baseline method for removing interference for n T =n R =n. 
   In this method, the processor generates a decision of a desired sub-channel of the signal vector by nulling out the interference of a first set of sub-channels by multiplying the received signal vector by a unitary matrix generated from a QR decomposition of a channel matrix and the processor further generates the improved symbol decision by successively canceling channel interference due to a second set of sub-channels. The symbol represents transmitted bits, transmitted coded bits, or other useful transmitted information. For example, the symbol represents the decoded or coded bits of a digital transmission. 
   A more detailed description of the baseline method is described below. 
   For initial definitions, a tight lower bound of C(H) for a n transmitter and n receiver, (n,n), system is found according to: 
   
     
       
         
           
             C 
             ⁡ 
             
               ( 
               H 
               ) 
             
           
           &gt; 
           
             
               ∑ 
               
                 k 
                 = 
                 1 
               
               n 
             
             ⁢ 
             
               log 
               ( 
               
                 1 
                 + 
                 
                   
                     ( 
                     
                       S 
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       N 
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       
                         R 
                         / 
                         n 
                       
                     
                     ) 
                   
                   ⁢ 
                   
                     χ 
                     
                       2 
                       ⁢ 
                       k 
                     
                     2 
                   
                 
               
             
           
         
       
     
   
   While this baseline space-time processing analysis is calculated for a (n,n) system, it can also apply to a n T  transmitter and n R  receiver, (n T ,n R ), system. The channel matrix H can be written as (h 1 , h 2 , . . . , h n ) where h j  with 1≦j≦n denotes the j-th column of H. Then, let H j  denote the linear space spanned by h 1 , h 2 , . . . , h j . Accordingly, H j =Span(h 1 , h 2 , . . . , h j ). 
     FIG. 2  is an exemplary flowchart  200  outlining the more detailed operation of the processor  150  according to the baseline method. In step  205 , the operation begins. In step  210 , the processor  150  performs a QR decomposition of the channel matrix H. In particular, H=QG, where Q is a unitary matrix and G is an upper triangular matrix (the variable G is used instead of the classic R because R is already used as a variable in the process). Accordingly, 
           H   =       Q   ⁢           ⁢   G     =       (       q   1     ⁢           ⁢   …   ⁢           ⁢     q     n   -   1       ⁢     q   n       )     ⁢     (           g     1   ,   1           ⋯       ⋯       ⋯           0       ⋰       ⋮       ⋮           ⋮       0         g       n   -   1     ,     n   -   1               g       n   -   1     ,   n               0       ⋯       0         g     n   ,   n             )               
Where Q is a unitary matrix with the following properties:
   H   j   =Span ( q   1   , . . . , q   j ),1 ≦j≦n     H   j−1   ⊥q   j , 1 ≦j≦n.   
The entries in the upper triangular matrix G have particular distributions summarized as:
 | g   j,j | 2 ˜χ 2   2(n−j+1)   2 , 1 ≦j≦n   | g   i,j | 2 ˜χ 2   2 ,1 ≦i&lt;j≦n   
The signal vector received by the receive antennas  140  can be rewritten as:
 
   
     
       
         
           r 
           = 
           
             
               
                 A 
                 s 
               
               ⁢ 
               
                 
                   ∑ 
                   
                     j 
                     = 
                     1 
                   
                   n 
                 
                 ⁢ 
                 
                   
                     h 
                     j 
                   
                   ⁢ 
                   
                     s 
                     j 
                   
                 
               
             
             + 
             n 
           
         
       
     
   
   Symbols from different antennas interfere with each other. Accordingly, in step  215 , the processor  150  performs interference nulling in one step by multiplying r by Q t . This is a significant simplification over present systems that perform extensive processing to null out interfering sub-channels. In particular, present systems perform interference nulling by decoding s n  by projecting r onto H n−1   ⊥ , thus avoiding interference from symbols s 1 , . . . , s n . The signal due to s n  is then subtracted from r and s n−1  is decoded by nulling out interference from s 1  to s n−2 . This processing proceeds until the signal is decoded. 
   According to the present invention, the processor  150  determines the symbol y=Q t r, where r is the received signal and Q t  is the Hermitian transpose of Q. In other words, y=Gs+w, where s is the transmitted signal and w is the noise. Therefore, the interference nulling pattern is created directly by the unitary transformation. In step  220 , the processor  150  decodes the symbol y n  of the n th  transmit antenna according to:
 
 y   n   =A   s   g   n,n   s   n   +w   n 
 
Again, where A s  is the power normalization constant, g n,n  is the upper triangular matrix, s n  is the transmitted signal, and w n  is the noise. The corresponding decision is denoted ŝ n .
 
   In the following steps, the processor  150  successively decodes the symbols from n−1 to the first transmit antenna. Accordingly, in step  225 , the processor sets j=n−1. In step  230 , the processor determines if j&lt;1. If true, then the processor exits the operation in step  235 . If false, the processor proceeds to step  240  where it subtracts interference from the next symbol according to: 
               y   ~     j     =       y   j     -       ∑     k   =     j   +   1       n     ⁢       A   s     ⁢     g     j   ,   k       ⁢       s   ^     k                 
which can be rewritten as:
 
           =         A   s     ⁢     g     j   ,   j       ⁢     s   j       +       ∑     k   =     j   +   1       n     ⁢       A   s     ⁢       g     j   ,   k       ⁡     (       s   k     -       s   ^     k       )           +     w   j             
In step  245 , the processor  150  decodes the symbol decision ŝ j  based on {tilde over (y)} j . In step  250 , the processor decrements j by one and returns to step  230 .
 
   This process effectively creates n non-interfering one-dimensional sub-channels where the j th  sub-channel is described as:
 
 {tilde over (y)}   j,t   =A   s   g   j,j,t   s   j,t   +w   j,t ,1 ≦j≦n 
 
where
 
| g   j,j,t | 2 ˜χ 2(n−j+1)   2 
 
In particular, the j th  sub-channel corresponds to n−j+1 order diversity.
 
     FIG. 3  is an exemplary illustration of a space-time processing schematic for a six transmitter and six receiver (6, 6) system according to one baseline embodiment. Tx represents the transmitter index and D represents the diversity order associated with the corresponding sub-channel. The horizontal direction indicates time instants and the vertical direction indicates spatial sub-channels created by the baseline method. As shown, each sub-channel is associated with a particular transmit antenna. The space-time processing is visualized by a two dimensional stack of rectangles where ST j,t  denotes the rectangle corresponding to the j th  sub-channel at the t th  time instant. This symbolizes a space-time processing unit aimed at retrieving information from the j th  sub-channel at the t th  time instant by subtracting interference from other transmitters and forming decisions ŝ j  according to the particular coding scheme used. Similarly, a row of rectangles represent the processing with respect to the corresponding spatial sub-channel at different time instants and a column of rectangles represent the processing at the corresponding time instant for all spatial sub-channels. Accordingly, the system equation for ST j,t  can be written as 
             y     j   ,   t       =         A   s     ⁢     g     j   ,   j   ,   t       ⁢     s     j   ,   t         +       ∑     k   =     j   +   1       n     ⁢       A   s     ⁢     g     j   ,   k   ,   t       ⁢     s     k   ,   t           +     w     j   ,   t               
which shows that interference from the transmit antennas  120  corresponding to rectangles above the unit have been nulled out and that interference from transmit antennas  120  corresponding to rectangles below the unit must be cancelled by using decision feedbacks. Therefore, the baseline method provides a framework to construct various layered space-time structures.
 
     FIG. 4  is an exemplary illustration of a schematic for processing similar to BLAST for a (6, 6) system. According to this processing, a layer is composed of six units in the diagonal direction where the arrow indicates the processing from left to right. Accordingly, each of the six diagonal unit in the schematic comprises a layer upon which codes can be applied. Different layers are processed from left to right for interference cancellation. The baseline method improves on BLAST at least in its simplicity and efficiency of operation. 
   For performance analysis, a D order diversity channel is described as y=hx+n where |h| 2 ˜χ 2D   2 ,n˜CN 1 (0,σ 2 ) and A s  normalizes the signal constellation to have unit power. The average SNR per diversity branch is denoted 
           p   =         A   s   2       σ   2       .           
The probability of bit error, P e , of the binary phase shift keying (BPSK) is then determined according to:
 
   
     
       
         
           
             P 
             e 
           
           = 
           
             
               
                 [ 
                 
                   
                     1 
                     2 
                   
                   ⁢ 
                   
                     ( 
                     
                       1 
                       - 
                       μ 
                     
                     ) 
                   
                 
                 ] 
               
               D 
             
             ⁢ 
             
               
                 ∑ 
                 
                   d 
                   = 
                   0 
                 
                 
                   D 
                   - 
                   1 
                 
               
               ⁢ 
               
                 
                   
                     ( 
                     
                       
                         D 
                         - 
                         1 
                         - 
                         d 
                       
                       d 
                     
                     ) 
                   
                   ⁡ 
                   
                     [ 
                     
                       
                         1 
                         2 
                       
                       ⁢ 
                       
                         ( 
                         
                           1 
                           + 
                           μ 
                         
                         ) 
                       
                     
                     ] 
                   
                 
                 d 
               
             
           
         
       
     
     
       
         
           w 
           ⁢ 
           
               
           
           ⁢ 
           h 
           ⁢ 
           
               
           
           ⁢ 
           e 
           ⁢ 
           
               
           
           ⁢ 
           r 
           ⁢ 
           
               
           
           ⁢ 
           e 
         
       
     
     
       
         
           μ 
           = 
           
             
               ρ 
               
                 1 
                 + 
                 ρ 
               
             
           
         
       
     
   
   The term 
               ∑     k   =     j   +   1       n     ⁢       A   s     ⁢       g     j   ,   k       ⁢     (       s   k     -       s   ^     k       )           +     w   j           
is the interference term due to imperfect decision feedbacks. In order to quantify the effect of interference, it is approximated as a Gaussian random variable, {tilde over (w)} j . P e  is defined for s k  to be p k . That is, Pr(s k ≠ŝ k )=p k . Given an equal probability of 1 and −1 under BPSK modulation, it is easy to verify that
   E[s   k   −ŝ   k ]=0 and   E[|s   k   −ŝ   k | 2 ]=4 p   k . 
Therefore, the mean and variance of {tilde over (w)} j  are given by:
   E[{tilde over (w)}   j ]=0 
             E   ⁡     [     |       w   ~     j     ⁢     |   2       ]       =     4   ⁢     A   s   2     ⁢       ∑     k   =   j       n   T       ⁢     p   k               
by using g j,k ˜χ 2   2  and it is independent of s k −ŝ k . Then, P e  is calculated for all sub-channels under a Gaussian approximation of interference. P e  is calculated by first calculating p n     T    of the n T   th  sub-channel by using the equation for P e  with a diversity order of D=n R −n T +1 and ρ=|A s | 2 . Second, p k  is calculated successively from n T −1 to 1. For a given k, the interference power {tilde over (ρ)} 2  is calculated. Then, p k  is calculated by utilizing the equation for P e  with D=n R −k+1 and
 
             ρ   ~     =         |     A   s     ⁢     |   2         1   +       σ   ~     2         .           
Third, the overall probability of bit error, P e , is obtained by averaging across all the sub-channels. Accordingly,
 
   
     
       
         
           
             
               P 
               b 
             
             ⁢ 
             
               ( 
               
                 S 
                 ⁢ 
                 
                     
                 
                 ⁢ 
                 N 
                 ⁢ 
                 
                     
                 
                 ⁢ 
                 R 
               
               ) 
             
           
           = 
           
             
               
                 ∑ 
                 
                   k 
                   = 
                   1 
                 
                 
                   n 
                   T 
                 
               
               ⁢ 
               
                 p 
                 k 
               
             
             
               n 
               T 
             
           
         
       
     
   
     FIG. 5  is an exemplary illustration of performance analysis of the baseline method. This performance analysis illustrates the lower bound for the probability of bit error. This is based on a simulation of baseline processing for a 6 transmitter and 6 receiver (6,6) system with T coh =10,000 time instants. BPSK was used at the transmitter. The estimated performance was averaged over 10,000 channel coherence periods, or a total of 10 8  time instants. The nominal P e  performance, assuming perfect interference cancellation was computed using the above equations and served as a lower bound on the actual P e  performance. As described in the Background, since feedback from sub-channels with low diversity are used to create sub-channels with high diversity, imperfect decision feedbacks can compromise the performance of the sub-channels with a high diversity order. In  FIG. 5 , the nominal and the actual P e  is plotted for several sub-channels in the (6,6) system. In comparing nominal performance with actual simulation data, it is shown that imperfect decision feedbacks can affect sub-channels with large diversity order. Also, the system performance can be limited by the worst sub-channel. Thus, the worst sub-channel in a layered space-time structure can be a bottleneck in limiting system performance. 
   According to another embodiment, the processor  150  performs an extended space-time processing method or extended method. 
   As shown above, the strongest sub-channel with the largest diversity order is formed by successive decision feedbacks from the rest of the sub-channels. Accordingly, the strongest sub-channel has better performance than those with less diversity. Unfortunately, this fact is not utilized in a BLAST-type space-time processing structure. The present inventors have recognized that a direct way to improve system performance is to subtract the strongest sub-channel from the total received signal using the strongest sub-channel&#39;s decision. This is defined as a “loopback” process because it forms a feedback flow in a reverse order. Loopback operation can effectively remove the contribution of the transmit antenna corresponding to the strongest sub-channel. 
   A (6,6) system can be used to further explain the loopback procedure. First, decisions are generated for the sub-channels using the baseline operation, BLAST, or the like. The resulting diversity order for each respective sub-channel is 6, 5, 4, 3, 2, 1. From the generated decisions, a signal due to, for example, the 1 st  transmit antenna is effectively reconstructed. This signal is subtracted from the received signal. The received signal is now effectively a 5 transmitter and 6 receiver (5,6) system. If the baseline operation is performed, the diversity order of all of the sub-channels from 2 to 6 is improved by 1 diversity order. These improved sub-channels produce improved decisions which thus assist in the decoding of the 1 st  sub-channel. Thus, the first iteration of a loopback operation results in a diversity order for each respective sub-channel being 6, 6, 5, 4, 3, 2. This accordingly improves the diversity order of the second sub-channel to full diversity. The loopback operation can be continued by subtracting successively improving sub-channels. For example, both the 1 st  and 2 nd  sub-channels are next subtracted, thus effectively forming a (4,6) system. 
   The depth of the loopback operation is defined as I loopback . Therefore, sub-channels 1 to I loopback  are used successively in the loopback cancellation. Since processing structure evolves after each loopback operation, the final structure has the property that the first I loopback +1 sub-channels have full diversity order, while the rest have 5 down to 1+I loopback . For example, the baseline operation corresponds to I loopback =0. Also, the loopback processing can iterate at the final stage I final  times without looping back to the next sub-channel. 
   In the extended method, the processor  150  generates an improved symbol decision of a desired sub-channel of the signal vector by first generating a baseline decision for the sub-channel. This baseline decision can be generated by the baseline method, by the BLAST system, or by any other method useful for generating a decision for a sub-channel. Next, the processor  150  subtracts a contribution of a strongest sub-channel from the signal vector to generate a modified signal vector. Then, the processor  150  multiplies the modified signal vector by a unitary matrix generated from a QR decomposition of another channel matrix. Finally, the processor  150  successively cancels channel interference of the remaining sub-channels of the modified signal vector from a remaining sub-channel. 
   A more detailed description of the extended method is described below: 
     FIG. 6  is an exemplary flowchart  600  outlining the operation of the processor  150  according to the extended method. In step  605 , the operation begins. In step  610 , the processor  150  generates the initial symbol decisions (ŝ 1 , ŝ 2 , . . . ŝ n     T   ). The processor  150  can generate these symbol decisions by utilizing the baseline method, a method such as BLAST, or any like method. For example, the processor  150  decodes each sub-channel utilizing the baseline method for (n T , n R  ). The decision at the k th  sub-channel is denoted ŝ k . In step  615 , the processor  150  sets i=1 to begin a loop for i=1 to I loopback  to use sub-channels 1 to I loopback  successively in loopback cancellation. In step  620 , the processor  150  determines if i&gt;I loopback . If so, the processor advances to step  660 . If i≦I loopback , the processor  150  advances to step  625 . 
   In step  625 , the processor subtracts the signals from the sub-channels 1 to i to generate an improved received signal {tilde over (r)} according to: 
                     r   ~     =     r   -       ∑     j   =   1     i     ⁢       A   s     ⁢     h   j     ⁢       s   ^     j                       =         A   s     ⁢     H   i     ⁢     s   i       +       ∑     j   =   1     i     ⁢       A   s     ⁢       h   j     ⁡     (       s   j     -       s   ^     j       )           +   n                 =         A   s     ⁢     H   i     ⁢     s   i       +     n   ~                         
In step  630 , the processor  150  decodes the received signal {tilde over (r)} to generate symbol decisions ŝ i =(ŝ i+1 , . . . , ŝ n     T   ) t , where t stands for the transpose. The processor  150  can decode the received signal {tilde over (r)} by utilizing the baseline method, a method such as BLAST, or any like method.
 
   In step  635 , the processor  150  sets k=1 to begin a loop for k=i to 1 to cancel interference from the other sub-channels. In step  640 , the processor determines whether to exit the loop based on k&lt;1. If k≧1 , the processor advances to step  645 . In step  645 , the processor cancels the interference from the other sub-channels according to: 
               r   ~     k     =     r   -       ∑     j   ≠   k       ⁢       A   s     ⁢     h   j     ⁢       s   ^     j                 
and then updates symbol decision ŝ k  by decoding {tilde over (r)} k . In step  650 , the processor  150  decrements k and returns to step  640 .
 
   If k≦1 in step  640 , the processor  150  increments i in step  665  and returns to step  620 . If i&gt;I loopback  in step  620 , the processor  150  advances to step  660  where it fixes i=I loopback . In step  665 , the processor  150  performs the functions of steps  625 – 650  for I final −1 iterations. In step  670 , the operation ends. 
     FIG. 7  is an exemplary illustration of performance analysis of the extended method. As discussed above, the performance can be studied analytically by approximating the residual interference after the decision feedback as Gaussian random variables. P e  in each step of the extended algorithm is obtained by calculating the variance of residual interference. The performance algorithm is given by setting p=(p 1 , . . . , p n     T   ) t  to be a vector of P e &#39;s of all sub channels at each step of the extended algorithm with a specific I loopback  and I final . Then set p=(p 1 , . . . , p n     T   ) t . Given a SNR, 
             |     A   s     ⁢     |   2       =         S   ⁢           ⁢   N   ⁢           ⁢   R       n   T       .           
Then, p is calculated in accordance with the baseline structure. Next, a loop is set from i=1 to I loopback . By Gaussian approximation of residual interference, the noise ñ is distributed as CN n     R   (0, {tilde over (σ)} 2 ) with
 
               σ   ~     2     =     1   +     4   ⁢     A   s   2     ⁢       ∑     j   =   1     i     ⁢     p   j                 
Then, p i  is generated as described above with respect to the baseline operation. Next, from k=i to 1, p k  is updated using the above equations with a diversity order of D=n R  and
 
   
     
       
         
           ρ 
           = 
           
             
               
                 A 
                 s 
                 2 
               
               
                 1 
                 + 
                 
                   4 
                   ⁢ 
                   
                     A 
                     s 
                     2 
                   
                   ⁢ 
                   
                     
                       ∑ 
                       
                         j 
                         ≠ 
                         k 
                       
                     
                     ⁢ 
                     
                       p 
                       j 
                     
                   
                 
               
             
             . 
           
         
       
     
   
     FIG. 7  illustrates the performance improvement with loopback cancellation in the extended method for a (6,6) system. As before, bits are sent using BPSK at each transmit antenna. I final  is fixed to be 1 while varying the loopback depth I loopback  from 1 to 5. The performance of a baseline or BLAST-type algorithm is included for comparison. As illustrated, large performance gain is achieved by using loopback cancellation. For example, the system with full loopback at 4 dB already achieves P e  of the BLAST system at 9 dB, thus resulting in a 5 dB savings. Performance gain increases as SNR increases, which projects more power savings at higher SNR&#39;s. Also, a few loopback cancellations can be sufficient. As illustrated in  FIG. 7 , large performance improvements are achieved with only 1 or 2 levels of loopback. 
   While this invention has been described with specific embodiments thereof, it is evident that many alternatives, modifications, and variations will be apparent to those skilled in the art. For example, various elements and various steps of different aspects and embodiments may be combined with various elements and various steps of other aspects and embodiments. Accordingly, the preferred embodiments of the invention as set forth herein are intended to be illustrative, not limiting. Various changes may be made without departing from the spirit and scope of the invention.