Abstract:
A method and apparatus for soft output decoding of multi-input multi-output (MIMO) channels in order to improve throughput performance is provided. In particular, a low-cost alternative to exhaustive brute-force maximum-likelihood search by using a variant of list decoding that exploits pre-coder linearity to reduce the computational complexity in generating a list of candidate codewords for decoding is disclosed.

Description:
CROSS REFERENCE TO RELATED APPLICATION 
       [0001]    This application claims the benefit of U.S. provisional application No. 60/889,058, filed on Feb. 9, 2007, which are incorporated by reference as if fully set forth. 
     
    
     BACKGROUND 
       [0002]    Wireless communications generally include communication stations which transmit and receive wireless communication signals between each other. Depending upon the type of system, communication stations typically are one of two types: base stations or wireless transmit/receive units (WTRUs), which include mobile units. 
         [0003]    One type of wireless communication called a wireless local area network (WLAN), with one or more access points (APs) can be configured to conduct wireless communications with WTRUs equipped with WLAN modems.  FIG. 1  illustrates an example of a WLAN including WTRUs designated  100 ,  102 ,  103 ,  104 , along with an AP  106 . The AP  106  has a coverage area  110 . WTRUs generally include various components such as a transmitter  100   T , a receiver  100   R , a processor  100   P  and a memory  100   M  are illustrated for example in WTRU  100 . WLANs can operate in infrastructure mode, where the WTRUs communicate with one or more access points, or in ad hoc mode, where non-base station WTRUs can communicate directly with each other in addition to communicating with the APs. 
         [0004]    Some WTRUs are equipped with multiple antennas and are configured to process multi-input multi-output (MIMO) channel signals transmitted and received over such antennas. 
         [0005]    Hereinafter, vectors are denoted by boldface lowercase characters, for example x, and matrices are denoted by boldface uppercase characters, for example H. Z, R, and C refer to the ring of integers, field of real numbers, and field of complex numbers, respectively. 
         [0006]    In wireless communications, linearly pre-coded signals transmitted over an N×M flat-fading multi-input multi-output (MIMO) channel with additive white Gaussian noise (AWGN) are processed by a decoder at a receiver to estimate a transmitted signal. The class of linear pre-coders includes full diversity full rate threaded algebraic space time (TAST) pre-codes. 
         [0007]    In general, a codeword of block length T at the output of the decoder is defined by a set of matrices C c =[c 1   c , . . . , c T   c ] in C M×T . The columns of the codeword C are transmitted in parallel on M transmit antennas in T channel uses. The received signal is designated by the sequence of vectors 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       y 
                       t 
                       c 
                     
                     = 
                     
                       
                         
                           
                             ρ 
                             M 
                           
                         
                          
                         
                           H 
                           c 
                         
                          
                         
                           c 
                           l 
                           c 
                         
                       
                       + 
                       
                         z 
                         t 
                         c 
                       
                     
                   
                   , 
                   
                       
                   
                    
                   
                     t 
                     = 
                     1 
                   
                   , 
                   … 
                    
                   
                       
                   
                   , 
                   T 
                 
               
               
                 
                   Equation 
                    
                   
                       
                   
                    
                   
                     ( 
                     1 
                     ) 
                   
                 
               
             
           
         
       
     
         [0000]    where the complex channel matrix H c  ε C N×M  is composed of independent and identically distributed (i.i.d) Gaussian elements h i,j   c ˜N c (0,1), the noise has i.i.d. Gaussian components z i   c ˜N c (0,1) and ρ denotes the signal-to-noise ratio (SNR) observed at a receive antenna. 
         [0008]    Complex codewords are obtained by multiplexing every two components of a real codeword on one complex dimension. In the present context, a real codeword is defined by an m=2MT-dimension input quadrature amplitude modulation (QAM) vector and a generator matrix as follows: 
         [0000]      c=Gx, for x ε U   Equation (2) 
         [0000]    where U ⊂ Z m  is the QAM alphabet and where the codeword is transmitted over T columns where every column has 2M real components. 
         [0009]    The input-output relationship of the linearly pre-coded MIMO system can be expressed in the following vector form 
         [0000]        y=HGx+z    Equation (3) 
         [0000]    where y ε R n  denotes the received signal vector, z˜(0,1) is the AWGN vector, and H ε R n×m  is proportional through an appropriate scaling factor to the block-diagonal matrix 
         [0000]    
       
         
           
             
               
                 
                   
                     I 
                     T 
                   
                   ⊗ 
                   
                     [ 
                     
                       
                         
                           
                             Re 
                              
                             
                               { 
                               
                                 H 
                                 c 
                               
                               } 
                             
                           
                         
                         
                           
                             
                               - 
                               Im 
                             
                              
                             
                               { 
                               
                                 H 
                                 c 
                               
                               } 
                             
                           
                         
                       
                       
                         
                           
                             Im 
                              
                             
                               { 
                               
                                 H 
                                 c 
                               
                               } 
                             
                           
                         
                         
                           
                             Re 
                              
                             
                               { 
                               
                                 H 
                                 c 
                               
                               } 
                             
                           
                         
                       
                     
                     ] 
                   
                 
               
               
                 
                   Equation 
                    
                   
                       
                   
                    
                   
                     ( 
                     4 
                     ) 
                   
                 
               
             
           
         
       
     
         [0000]    where {circle around (x)} denotes the Kronecker product, and where n=2NT and m=2MT. 
         [0010]    The goal of soft output decoders is to compute a reliability value for each one of the input bits. The maximum a-posteriori (MAP) decoder computes the optimal log-likelihood ratios. In particular, let b i  be the i th  bits of the input vector x, then the log-likelihood ratio at the output of the MAP decoder is given by 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       L 
                       i 
                     
                     = 
                     
                       log 
                        
                       
                         ( 
                         
                           
                             
                               ∑ 
                               
                                 { 
                                 
                                   x 
                                    
                                   
                                     ( 
                                     
                                       
                                         b 
                                         i 
                                       
                                       = 
                                       1 
                                     
                                     ) 
                                   
                                 
                                 } 
                               
                             
                              
                             
                                
                               
                                 
                                   - 
                                   γ 
                                 
                                  
                                 
                                   
                                      
                                     
                                       y 
                                       - 
                                       HGx 
                                     
                                      
                                   
                                   2 
                                 
                               
                             
                           
                           
                             
                               ∑ 
                               
                                 { 
                                 
                                   x 
                                    
                                   
                                     ( 
                                     
                                       
                                         b 
                                         i 
                                       
                                       = 
                                       0 
                                     
                                     ) 
                                   
                                 
                                 } 
                               
                             
                              
                             
                                
                               
                                 
                                   - 
                                   γ 
                                 
                                  
                                 
                                   
                                      
                                     
                                       y 
                                       - 
                                       HGx 
                                     
                                      
                                   
                                   2 
                                 
                               
                             
                           
                         
                         ) 
                       
                     
                   
                   , 
                 
               
               
                 
                   Equation 
                    
                   
                       
                   
                    
                   
                     ( 
                     5 
                     ) 
                   
                 
               
             
           
         
       
     
         [0000]    where [x(b=0)] is the set of input vectors corresponding to b i =0[x(b=1)] is defined similarly), and γ is a constant that depends on the signal-to-noise (SNR) ratio. 
         [0011]    Here, the soft output decoder is the prohibitive computational complexity which grows exponentially with the size of x, where the exponential complexity is in the product of T and the transmission rate. 
       SUMMARY 
       [0012]    A method and apparatus for soft output decoding for a codebook-based multi-input multi-output (MIMO) channels includes a variant of list decoding which exploits the pre-coder linearity in minimizing the computational complexity needed to generate a set of codewords to derive the soft output symbols. The soft output decoding approximates the performance of the maximum a-posteriori (MAP) decoder while avoiding the excessive computational complexity of prior art decoders discussed above. 
         [0013]    Generating a plurality of hard outputs based on the received linearly pre-coded signals to generate a second set of codeword that reduces the complexity to that of the hard-output decoder. The low complexity sequential decoder with simple soft output generation for soft-decision Turbo decoding using offline candidate lists of codewords associated with each codebook. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0014]      FIG. 1  is an illustration of a WLAN having WTRUs for wireless communication. 
           [0015]      FIG. 2  is an illustration of a flow chart  200  of a method for soft output decoding for a codebook-based MIMO channels based on linearly pre-coded signals. 
       
    
    
     DETAILED DESCRIPTION 
       [0016]    When referred to hereafter the terminology base station includes, but is not limited to, a base station, Node B, site controller, access point or other interfacing device in a wireless environment that provides WTRUs with wireless access to a network with which the base station is associated. 
         [0017]    When referred to hereafter the terminology WTRU includes, but is not limited to, a user equipment, mobile station, fixed or mobile subscriber unit, pager, or any other type of device capable of operating in a wireless environment. WTRUs include personal communication devices, such as phones, video phones, and Internet ready phones that have network connections. In addition, WTRUs include portable personal computing devices, such as PDAs and notebook computers with wireless modems that have similar network capabilities. WTRUs that are portable or can otherwise change location are referred to as mobile units. A base station is a type of WTRU. 
         [0018]    A hard decision output is estimated using, for example, minimum mean square error (MMSE) estimation, the Lenstra Lenstra and Lovasz (LLL) algorithm with decision feedback equalization (LLL+DFE), or conventional soft decoding. Soft outputs are generated by selecting an offline candidate list associated with a codebook and shifting the candidate lattice points from the origin to the estimated hard decision output instead of centering them on the received point. Each candidate list is preferably obtained at the origin (or more specifically at a lattice point near the origin) for each codebook realization by executing a list soft decoder (SD) offline. Hence, the preferred candidate list does not depend on the received data points, and is executed only once for every codebook realization offline. In slow quasi-static fading channels, the decoding complexity reduces to that of the hard-output decoder. 
         [0019]    The observation for soft-output list decoders is that the sum in the numerator (and similarly the sum of the denominator) is dominated by a few terms. The main idea in list decoding is, therefore, to approximate each sum by the few largest terms. More specifically, the list decoder identifies a candidate list of codewords C 1 , and computes the i th  log-likelihood ratio as 
         [0000]    
       
         
           
             
               
                 
                   
                     
                       L 
                       i 
                     
                     ≈ 
                     
                       log 
                        
                       
                         ( 
                         
                           
                             
                               ∑ 
                               
                                 { 
                                 
                                   
                                     x 
                                      
                                     
                                       ( 
                                       
                                         
                                           b 
                                           i 
                                         
                                         = 
                                         1 
                                       
                                       ) 
                                     
                                   
                                   ∈ 
                                   
                                     C 
                                     l 
                                   
                                 
                                 } 
                               
                             
                              
                             
                                
                               
                                 
                                   - 
                                   γ 
                                 
                                  
                                 
                                   
                                      
                                     
                                       y 
                                       - 
                                       HGx 
                                     
                                      
                                   
                                   2 
                                 
                               
                             
                           
                           
                             
                               ∑ 
                               
                                 { 
                                 
                                   
                                     x 
                                      
                                     
                                       ( 
                                       
                                         
                                           b 
                                           i 
                                         
                                         = 
                                         0 
                                       
                                       ) 
                                     
                                   
                                   ∈ 
                                   
                                     C 
                                     l 
                                   
                                 
                                 } 
                               
                             
                              
                             
                                
                               
                                 
                                   - 
                                   γ 
                                 
                                  
                                 
                                   
                                      
                                     
                                       y 
                                       - 
                                       HGx 
                                     
                                      
                                   
                                   2 
                                 
                               
                             
                           
                         
                         ) 
                       
                     
                   
                   , 
                 
               
               
                 
                   Equation 
                    
                   
                       
                   
                    
                   
                     ( 
                     6 
                     ) 
                   
                 
               
             
           
         
       
     
         [0000]    where {x(b i =1) ε C l } is the set of input vectors in C l  with b=1. Assuming that C l  is identified by a the candidate list of codewords that approximate the log-likelihood ratio by the fewest terms in the numerator and denominator wherein the complexity of the decoder is only proportional to the list size instead of the set of all possible codewords. 
         [0020]    A challenge in list decoding is to find C l  with a reasonable computational complexity. The disclosed method and apparatus uses linearity of the pre-coder and provides a sequential decoding framework to efficiently identify C l . 
         [0021]    First, a list is identified of size |C l |−1 containing the codewords nearest to the origin for every channel realization (H). This process is implemented through a sphere decoder which finds all codewords within a sphere of radius r l  around the origin, i.e., the sphere decoder finds the set of codewords x ε C′ l  such that 
         [0000]      ∥HGx∥≦r l .   Equation (7) 
         [0022]    This process does not depend on the received codeword y, and hence, needs to be executed only once for every channel realization H. Accordingly, in relatively slow fading channels, the complexity of this step will only result in a marginal increase in the overall decoding complexity. 
         [0023]    The second process corresponds to finding an approximate solution for the maximum likelihood decoding problem defined as 
         [0000]    
       
         
           
             
               
                 
                   
                     x 
                     ML 
                   
                   = 
                   
                     arg 
                      
                     
                         
                     
                      
                     
                       
                         min 
                         
                           x 
                           ∈ 
                           U 
                         
                       
                        
                       
                         
                            
                           
                             y 
                             - 
                             
                               HG 
                                
                               
                                   
                               
                                
                               x 
                             
                           
                            
                         
                         . 
                       
                     
                   
                 
               
               
                 
                   Equation 
                    
                   
                       
                   
                    
                   
                     ( 
                     8 
                     ) 
                   
                 
               
             
           
         
       
     
         [0000]    This can be implemented using any sequential decoding framework known in the art. 
         [0024]    Finally, by using the linearity of the channel and pre-coder, a subset list of codewords is obtained by shifting every vector in C′ l  to be centered around the maximum likelihood solution x ML  according to 
         [0000]        C   l   ={x+x   ML   |x ε C′   l }.   Equation (9) 
         [0025]      FIG. 2  is an illustration of a flow chart  200  of a method for soft output decoding for a codebook-based MIMO channels based on linearly pre-coded signals to generate a candidate list to derive the soft output symbols comprising the steps of  210  to  250 . In step  210  a code book is created offline based on a set of different static channels. In step  220  a candidate list of codewords are created for each element in the codebook for different modulation. This candidate list in step  220  is created by using a list Sphere Decoder (SD), or similar decoder know to one skilled in the art, nearest to the origin for each element within a first distance around the origin. In step  230 , a second list is generated which is subset of the candidate list in step  220  based on the modulation and a second distance where this second list is generated by steps  231  through  233 . In step  231  a hard decision point is found for a received signal. Then, in step  232 , the second list is shifted from the origin to the hard decision point, where in step  233  a log-likelihood ratio (LLR) is computed using the shifted second list. In step  240 , if the channel does not change, then Steps  231  through  233  are repeated for each received signal. If the current channel is changed then go to step  250 . In step  250 , if the changed channel is included in the codebook then go to step  230  to select the codebook for the changed channel and repeat the steps  231  through  233  for each received signal for changed channel. If the changed channel is not in the codebook, then go to step  210  and create a new codebook. 
         [0026]    Accordingly, the overall complexity needed for generating the list is reduced to that of approximating the maximum likelihood (ML) solution, as described above, which provide for much smaller complexities. The sequential decoding framework includes several implementations, for finding x ML , that offer an excellent performance-complexity tradeoff. Also, the sphere radius, and hence the list size, can be varied as a function of the channel realization (H). 
         [0027]    The present invention may be implemented in any type of wireless communication system, as desired. By way of example, the present invention may be implemented in any type of wireless communication system employing multi-input multi-output (MIMO) channels. The present invention may also be implemented on a digital signal processor (DSP), software or middleware. The present invention is preferably implemented as part of a wireless transmit/receive unit (WTRU) or a base station such as illustrated in  FIG. 1 . 
         [0028]    Although the features and elements of the present invention are described in the preferred embodiments in particular combinations, each feature or element can be used alone without the other features and elements of the preferred embodiments or in various combinations with or without other features and elements of the present invention.