Patent Publication Number: US-7711066-B2

Title: Uniform channel decomposition for MIMO communications

Description:
FIELD OF THE INVENTION 
   The invention is generally related to the field of communications, and, more particularly, to communications over multiple-input-multiple-output channels. 
   BACKGROUND OF THE INVENTION 
   Communications over multiple-input-multiple-output (MIMO) channels has been the subject of intense research in recent years and has emerged as one of the most significant breakthroughs in modern communications. Communications over MIMO channels can support significantly higher data rates and greater reliability relative to communications using single-input-single-output (SISO) channels. MIMO-based communications may help, for example; to resolve the bottleneck problem limiting traffic capacity in future Internet-intensive wireless networks. Many researchers also believe that MIMO-based technology is poised to penetrate large-scale, standards-driven commercial wireless products and networks such as broadband wireless access systems, wireless local area networks (WLAN), and third-generation (3G) as well as fourth-generation (4G) networks. 
   An essential feature of a MIMO communications system is that, by appropriately coding signals transmitted from multiple transmitting antennas to multiple receiving antennas, the system is able to turn multipath-propagation—long a problem in wireless communications—into an advantage. MIMO communications systems take advantage of random channel fading and, when possible, multipath delay spread to increase channel capacity. This is accomplished by combining at a receiver the signals transmitted from multiple transmitting antennas to multiple receiving antennas so as to increase quality in terms of the bit-error rate (BER) or the data rate (bits per second). The prospect of improvements of orders of magnitude relative to more conventional communications systems is one reason for the increased interest in MIMO-based technologies. 
   With respect to transceivers, most research to date has focused on linear transceiver designs. According to conventional linear transceiver designs, a channel matrix that models the characteristics of a transmission channel is diagonalized using the known technique of singular value decomposition (SVD) in order to maximize channel throughput. This conventional approach, however, can add considerable complexity to the modulation-demodulation and coding-decoding procedures needed to successfully convey signals over multiple subchannels resulting from the SVD. For example, to achieve a desired channel capacity, the MIMO system must perform bit allocation to match each subchannel capacity. 
   Bit allocation not only complicates the needed modulation but also reduces capacity due to the granularity of a finite symbol constellation corresponding to the coding scheme employed. Alternatively, if the same symbol constellation is used for each subchannel, as for example according to the HIPERLAN/2 and IEEE 802.11 standards for WLANs, then more power should be allocated to the poorer or less robust subchannels. Using the same constellation for each subchannel can lead to significant performance degradation. The conventional linear transceiver designs, therefore, pose a tradeoff between channel capacity and performance in terms of BER if the complexity of bit allocation is to be avoided. It follows that there is a need for an effective and efficient alternative to conventional linear transceiver designs. 
   SUMMARY OF THE INVENTION 
   The present invention provides systems and method for implementing a uniform channel decomposition scheme. The uniform decomposition scheme decomposes a MIMO channel into a plurality of subchannels over which communication signals are conveyed. 
   One embodiment of the invention is a multi-input-multi-output (MIMO) communications system for conveying signals over a MIMO channel. The system can include a precoder for precoding a signal based upon a uniform channel decomposition scheme. The system can further include a transmitter in communication with the precoder for conveying the precoded signal over a subchannel of the MIMO channel. 
   A system for conveying signals over a MIMO channel, according to another embodiment of the invention, can include a transmitting unit having an array of transmitting antennas and a uniform channel decomposition module for decomposing a transmission channel into multiple subchannels having equal capacities over which multiple communications signal are conveyed. The system also can include a receiving unit having an array of receiving antennas for receiving the multiple communications signals. 
   Another embodiment of the invention is a method for conveying signals over a MIMO channel. The method can include precoding a signal based upon a uniform channel decomposition scheme. The method further can include transmitting the precoded signal over a subchannel of the MIMO channel. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     There are shown in the drawings, embodiments which are presently preferred, it being understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown. 
       FIG. 1  is a schematic diagram of a multiple-input-multiple-output communications system that implements a uniform channel decomposition, according to one embodiment of the invention. 
       FIG. 2  is a schematic diagram of a multiple-input-multiple-output communications system that implements a uniform channel decomposition, according to another embodiment of the invention. 
       FIG. 3  is a schematic diagram of a multiple-input-multiple-output communications system that implements a dual form of the uniform channel decomposition, according to still another embodiment of the invention. 
       FIG. 4  is a schematic diagram of a MIMO-OFDM transmitter, according to yet another embodiment of the invention. 
       FIG. 5  is a schematic diagram of a MIMO-OFDM receiver, according to still another embodiment of the invention. 
       FIG. 6  is a schematic diagram of a matrix transformation based on a geometric mean decomposition according to one aspect of the invention. 
   

   DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
   The invention provides a uniform channel decomposition scheme for multiple-input-multiple-output (MIMO) communications systems. The uniform channel decomposition scheme decomposes a MIMO channel into multiple subchannels such that each subchannel has the same, or approximately the same, capacity in the sense that the output of each subchannel has the same signal-to-noise plus interference ratio (SNIR). As explained herein, this affords an opportunity to simplify modulation and demodulation as well as coding and decoding of transmitted signals. The channel decomposition effected by the uniform channel decomposition scheme also can decompose a MIMO channel into multiple subchannels that are strictly capacity lossless. The uniform channel decomposition scheme also can enable the MIMO communications system to achieve maximal diversity gain. UCD can achieve an optimal tradeoff between diversity gain and multiplexing gain with relatively low processing complexity. 
   As described herein, the uniform channel decomposition scheme can be implemented in different forms. The invention also can be applied to a variety of communication protocols, including those based on orthogonal frequency division multiplexing (OFDM), code division multiple access (CDMA), time division multiple access (TDMA), and the global system for mobile communications (GSM). 
   Although described herein primarily in the context of wireless communications systems, it will be readily apparent to one of ordinary skill in the art, that the invention can be applied to other communications systems and devices as well. The systems include voice and data systems such as those utilizing digital telecommunications protocols and those utilizing digital subscriber lines (DSL). The devices with which the invention can be implemented include, for example, cellular phones, personal digital assistants (PDA), and computing devices such as laptop computers. 
     FIG. 1  schematically illustrates a UCD-based MIMO communications system  100  according to one embodiment of the invention. The communications system  100  illustratively comprises a transmitting unit  105  and a receiving unit  110 , the transmitting unit conveying information-carrying signals to the receiving unit over a transmission medium, or MIMO channel  115 . The transmitting unit  105  illustratively connects to a plurality of transmitting antennas  145  that simultaneously transmit differently encoded signals, or symbols. The receiving unit  110  illustratively connects to a plurality of receiving antennas  146  that simultaneously receive the different signals, or symbols, conveyed via the channel  115 . 
   The transmitting unit  105  illustratively comprises a processing unit  135  implemented in dedicated hardwired circuitry and/or machine-readable code configured to be processed by logic-based circuitry. The processing unit  135  samples input signal S(t) and maps sampled bit sequences into a vector comprising corresponding symbols x k . Illustratively, the plurality of transmitting antennas  145  comprises M t  antennas, and the processing unit  135  generates M t  symbols, where the i-th symbol, x k   (i) , is conveyed as a signal transmitted by the i-th transmitting antenna. 
   According to one embodiment, each x k   (i) , 1≦i≦M t , symbol is a complex quadrature amplitude modulation (QAM) symbol. The symbols, however, can be coded according to any other scheme, including quadrature phase shift keying (QPSK), M-ary phase shift keying (MPSK), cross-QAM, and offset-QPSK, for example. 
   The transmitting unit  105  further includes a uniform channel decomposition (UCD) module  140  that effects the UCD scheme described more particularly below. According to one embodiment, the UCD module  140  comprises a precoder, implemented in hardwired circuitry and/or machine-readable code, which precodes the symbols x k  in accordance with the UCD scheme prior to their conveyance via the Channel  115  to the receiving unit  110 . In effecting the UCD scheme, the UCD module  140  effectively decomposes the channel  115  into multiple subchannels, each having the same, or substantially the same, capacity as each of the other subchannels. Equivalently, each of the multiple subchannels decomposed according to the UCD scheme has an identical, or nearly identical, SNIR. 
   The UCD scheme is now described in the context of the channel  115 , which is characterized herein as a frequency-selective channel. The channel can be represented by an M t ×M r  complex matrix, Hε   M     t     ×M     r   , of rank K. Each element of the complex matrix, H, denotes a fading channel coefficient. For example, a 2×2 MIMO channel characterized by inter-symbol interference (ISI) and spatial correlation can be modeled with the following matrix: 
                     H   ⁡     (   t   )       =         R   r     1   /   2       ⁡     [             h   11     ⁡     (   t   )               h   12     ⁡     (   t   )                   h   21     ⁡     (   t   )               h   22     ⁡     (   t   )             ]       ⁢     R   t     1   /   2           ,     0   ≤   t   ≤       (     L   -   1     )     ⁢   T       ,           (   1   )               
where R t  and R r  quantify the spatial correlations of the channel fading. The elements of the matrix, more particularly, are:
 
                       h   ij     ⁡     (   t   )       =       ∑     l   =   1       L   -   1       ⁢       h   ij     (   l   )       ⁢     δ   ⁡     (     t   -   lT     )             ,     1   ≤   i     ,     j   ≤   2     ,           (   2   )               
where h ij  denotes the channel link between the j-th transmitter antenna and the i-th receiver antenna, L denotes the channel link and T represents the sampling period.
 
   A more general frequency-selective channel can be represented by a spatial-time channel with larger dimensionality. Using M t  transmitting antennas and M r  receiving antennas for conveying signals over a frequency flat fading channel, the sampled baseband signal can be represented as
 
 y=HFx+z,   (3)
 
The x is an L×1 vector of complex elements, xε   L×1 , representing the information symbols precoded by a linear precoder Fε   M     r     ×L . The vector y is an M r ×1 vector of complex elements, yε   M     r     ×1 , representing the received signal. The matrix Hε   M     t     ×M     r    is the rank K channel matrix, the (i,j)-th elements of which denote the fading coefficient between the j-th transmitting antenna and the i-th receiving antenna. The vector z represents inherent noise in the channel. It can be assumed that E[xx*]=σ x   2 I L , where E(•) denotes the expected value, (•)* denotes the conjugate transpose, and I L  is an identity matrix of dimension L. It can be further assumed that the noise is circularly symmetric complex Gaussian noise; that is, z˜N(0,σ z   2 I L ). The signal to noise ratio therefore can be defined as
 
                   ρ   =         E   ⁡     [     x   *   F   *   Fx     ]         σ   z   2       =           σ   x   2       σ   z   2       ⁢   Tr   ⁢     {     F   *   F     }       ⁢     =   Δ     ⁢       1   α     ⁢   Tr   ⁢     {     F   *   F     }             ,           (   4   )               
where Tr{•} denotes the trace of a matrix. It should be noted that because a more general frequency-selective channel can be represented by a spatial-time channel with larger dimensionality, Equation 3, accordingly, provides a general representation of the channel  115 .
 
   If the vector of information symbols, x, is a Gaussian random vector, then the capacity of the channel  115  is 
                   C   =       log   2     ⁢                σ   z   2     ⁢   I     +       σ   x   2     ⁢   HFF   *   H   *                     σ   z   2     ⁢   I                ,           (   5   )               
where |•| denotes the determinant of a matrix. If the channel state information at the transmitter (CSIT) and the channel state information at the receiver (CSIR) are both available, the channel capacity can be maximized with respect to a linear precoder F given the input power constraint σ x   2 Tr{FF*}≦P; that is,
 
                     C   IT     =       max         σ   x   2     ⁢   Tr   ⁢     {     FF   *     }       ≤   P       ⁢       log   2     ⁢          I   +       α     -   1       ⁢   HFF   *   H   *                  ,           (   6   )               
where, from equation 4,
 
             α   =       σ   z   2       σ   x   2         ,         
and C IT  is the charnel capacity of an “informed transmitter.”
 
   A singular-value decomposition (SVD) of the channel matrix, H, yields H=UΛV*, where U and V* are unitary matrices and Λ is a K×K matrix whose diagonal elements {λ H,k } k=1   K  are the nonzero singular values of H. A conventional form of a MIMO channel linear precoder, F, is F=VΦ 1/2 , where V is the conjugate transpose of V* determined from the SVD of the channel matrix, H. With L=K, Φ is a diagonal matrix whose k-th diagonal element, φ k (μ), 1≦k≦K, is the power loaded to the k-th subchannel. Each of the diagonal elements, φ k (μ), can be determined from the following equation based on the known “water filling” technique: 
                       ϕ   k     ⁡     (   μ   )       =       (     μ   -     α     λ     H   ,   k     2         )     +       ,           (   7   )               
with μ being chosen such that
 
               σ   x   2     ⁢       ∑     k   =   1     K     ⁢       ϕ   k     ⁡     (   μ   )           =     P   .           
The solution to equation 6, therefore, is
 
   
     
       
         
           
             
               
                 
                   C 
                   IT 
                 
                 = 
                 
                   
                     ∑ 
                     
                       k 
                       = 
                       1 
                     
                     K 
                   
                   ⁢ 
                   
                     
                       
                         log 
                         2 
                       
                       ⁡ 
                       
                         ( 
                         
                           1 
                           + 
                           
                             
                               
                                 ϕ 
                                 k 
                               
                               α 
                             
                             ⁢ 
                             
                               λ 
                               
                                 H 
                                 , 
                                 k 
                               
                               2 
                             
                           
                         
                         ) 
                       
                     
                     ⁢ 
                     
                         
                     
                     ⁢ 
                     
                       bit 
                     
                     ⁢ 
                     
                       / 
                     
                     ⁢ 
                     s 
                     ⁢ 
                     
                       / 
                     
                     ⁢ 
                     
                       Hz 
                       . 
                     
                   
                 
               
             
             
               
                 ( 
                 8 
                 ) 
               
             
           
         
       
     
   
   The conventional linear precoder, F, can be used to obtain a conventional linear transceiver design that is, in an information-theoretic sense, optimal. However, owing to the usually very different diagonal elements {λ H,k}   k=1   K  obtained by performing an SVD of the channel matrix, H, the resulting conventional linear transceiver is typically characterized by multiple subchannels that each have very different SNRs. This gives rise to particular difficulties with respect to the subsequent modulation/demodulation and coding/decoding procedures that must be utilized with conventional linear transceivers. 
   One aspect of the UCD scheme of the present invention is the implementation of a precoding technique that yields a modified precoder, {tilde over (F)}, superior to conventional precoders, F. When coupled with an appropriate sequential nulling and cancellation procedure, the precoding procedure can, in a strictly lossless sense, decompose a MIMO channel into multiple subchannels whose capacities in terms of a SNIR, as noted above, are identical or nearly so. The UCD scheme can ease the computational burden of modulation/demodulation and coding/decoding by obviating the need for bit allocations. Moreover, for signals with sufficiently high SNRs, channel throughput and bit-error rates (BERs) can be simultaneously optimized using the UCD scheme. 
   The UCD scheme and the various embodiments by which a UCD is accomplished can be rigorously described in a mathematical context using the following theorem: 
   Theorem 
   Any rank K matrix Hε   M×N  having singular values λ H,1 ≧λ H,2 ≧ . . . ≧0 can be decomposed into
 
H=QRP*,  (9)
 
where Rε   K×K  is an upper triangular matrix, the equal diagonal elements of which are defined as
 
               r   ii     =         λ   _     H     ⁢     =   Δ     ⁢     (       ∏     n   =   1     K     ⁢     λ     H   ,   n         )         ,     1   ≤   i   ≤   K     ,         
and where Qε   M×K  and Pε   N×K  are each semi-unitary matrices whose columns are orthonormal with one another. A computationally efficient and numerically stable algorithm for effecting the decomposition reflected in equation 9 is provided below.
 
   According to one embodiment, the UCD is accomplished using a precoder matrix that is a modification of a conventional precoder matrix. This modified precoder matrix, {tilde over (F)}, has the following form
 
{tilde over (F)}=VΦ 1/2 Ω*.  (10)
 
The first term on the left-hand side of equation (1), V, is a unitary matrix indirectly derived by performing an SVD of the channel matrix, H, which as already described yields the following:
 
H=UΛV*,
 
where the middle term, Λ, is a K×K matrix whose diagonal elements {λ H,k } k=1   K  are the nonzero singular values of H. The first term on the left-hand side of equation 10, V, accordingly is the conjugate transpose of V*.
 
   The middle term on the left-hand side of equation 10, Φ 1/2 , is based on the diagonal matrix Φdiagonal elements, φ k , k=1, 2, . . . , K, of which are determined based on the known “water filling” technique also described above: 
               ϕ   k     ⁡     (   μ   )       =         (     μ   -     α     λ     H   ,   k     2         )     +     .           
The last term on the left-hand side of equation 10, Ω, is a real-valued L×K matrix, such that L≧K and Ω*Ω=I. The introduction of the L×K matrix, Ω, is one step leading to the UCD. As will be apparent from the following discussion, introduction of Ω provides several distinct advantages. Firstly, however, the design of Ω is described.
 
   Precoding transmitted signals using the precoder matrix, {tilde over (F)}, gives rise to the following virtual channel, which mathematically represents the channel over which the signals are conveyed: 
                 G   ⁢     =   Δ     ⁢       H   ⁢     F   ~       =       U   ⁢           ⁢   Λ   ⁢           ⁢     Φ     1   /   2       ⁢     Ω   *       ⁢     =   Δ     ⁢     U   ⁢           ⁢   Σ   ⁢           ⁢     Ω   *                   (   11   )               
where Σ=Λφ 1/2  is a diagonal matrix, the diagonal elements of which are {σ i}   i=1   K .
 
   The following augmented matrix can be obtained from the representation of the virtual channel, where α is the ratio of the variance in noise in the channel, σ z   2 , to the variance within the transmitted signals, σ x   2 ; that is, 
   
     
       
         
           α 
           = 
           
             
               
                 σ 
                 z 
                 2 
               
               
                 σ 
                 x 
                 2 
               
             
             ⁢ 
             
               : 
             
           
         
       
     
   
                   G   a     =       [           U   ⁢           ⁢     ΣΩ   *                   α     ⁢     I   L             ]     .             (   12   )               
A semi-unitary matrix Ωε   L×K  is found such that a standard QR decomposition of G a  yields an upper triangular matrix having equal diagonal elements. This is more particularly demonstrated by rewriting the augmented matrix, G a , as follows:
 
                     G   a     =     [             U   ⁡     [     Σ⋮0     K   ×     (     L   -   K     )         ]       ⁢     Ω   0   *                   α     ⁢     I   L             ]       ,           (   13   )               
where Ω 0 ε   L×L  is a unitary matrix. The matrix Ω is formed from the first K columns of the matrix Ω 0 . The augmented matrix G a  can be further rewritten as
 
   
     
       
         
           
             
               
                 
                   G 
                   a 
                 
                 = 
                 
                   
                     
                       [ 
                       
                         
                           
                             
                               I 
                               
                                 M 
                                 τ 
                               
                             
                           
                           
                             0 
                           
                         
                         
                           
                             0 
                           
                           
                             
                               Ω 
                               0 
                             
                           
                         
                       
                       ] 
                     
                     ⁡ 
                     
                       [ 
                       
                         
                           
                             
                               U 
                               ⁡ 
                               
                                 [ 
                                 
                                   Σ⋮0 
                                   
                                     K 
                                     × 
                                     
                                       ( 
                                       
                                         L 
                                         - 
                                         K 
                                       
                                       ) 
                                     
                                   
                                 
                                 ] 
                               
                             
                           
                         
                         
                           
                             
                               
                                 α 
                               
                               ⁢ 
                               
                                 I 
                                 L 
                               
                             
                           
                         
                       
                       ] 
                     
                   
                   ⁢ 
                   
                     
                       Ω 
                       0 
                       * 
                     
                     . 
                   
                 
               
             
             
               
                 ( 
                 14 
                 ) 
               
             
           
         
       
     
   
   The middle term of the right-hand side of the equation can be decomposed according to a geometric mean decomposition GMD, which follows from the theorem, above. The decomposition yields the following matrix: 
                   J   ⁢     =   Δ     ⁢       [           U   ⁡     [     Σ⋮0     K   ×     (     L   -   K     )         ]                   α     ⁢     I   L             ]     =       Q   J     ⁢     R   J     ⁢     P   J   *           ,           (   15   )               
where R J ε   L×L  is an upper triangular matrix with equal diagonal elements, Q J ε   (M     r     ×L)×L  is a semi-unitary matrix, and P j ε   L×L  is a unitary matrix. By substitution of equation 15 into equation 14, the following form of the augmented matrix is obtained:
 
                   G   a     =       [           I     M   r           0           0         Ω   0           ]     ⁢     Q   J     ⁢     R   J     ⁢     P   J   *     ⁢       Ω   0   *     .               (   16   )               
Setting Ω 0 =P* J  and
 
                     Q     G   a       =       [           I     M   r           0           0         Ω   0           ]     ⁢     Q   J         ,           (   17   )               
it follows that equation 16 can be rewritten as G a =Q G     a   R J , which is the QR decomposition of G a . The semi-unitary matrix Ω associated with G a  comprises the first K columns of Ω 0  or, alternatively, P* J , since Ω 0 =P* J .
 
   Given the singular-value decomposition (SVD) of H and the “water filling” level Φ 1/2 , only the GMD of equation 15 need be calculated. The desired linear precoder, {tilde over (F)}=VΦ 1/2 Ω*, follows directly from the GMD. The term Ω comprises the first K columns of P* J . If Q G     a     u  denotes the first M r  rows of Q G     a   , or equivalently, the first M r  rows of Q J , then it can be shown that an appropriate set of nulling vectors can be calculated as
 
w i =r J,ii   −1 q G     a,i   , i=1, 2, . . . , L,  (18)
 
where r J,ii  is the i th  diagonal element of R J  and q G     a     ,i  is the i th  column of Q G     a     u .
 
   The computational complexity can be reduced by making several additional observations. For any matrix Bε   M×N  for which the SVD yields B=U B Λ B V* B  and a corresponding augmented matrix for which the SVD yields 
                   A   =       [         B               α     ⁢   I           ]     =       U   A     ⁢     Λ   A     ⁢     V   A   *           ,           (   19   )               
it follows that the diagonal elements λ A,i  and λ B,i  of Λ A  and Λ B , respectively, satisfy λ A,i =√{square root over (λ B,i   2 +α)}, i=1, 2, . . . , N.
 
   Moreover, 
                   U   A     =         (             U   B     ⁢     Λ   B     ⁢     Λ   A     -   1                     α     ⁢     V   B   *     ⁢     Λ   A     -   1               )     ⁢           ⁢   and   ⁢           ⁢     V   A       =       V   B     .               (   20   )               
Accordingly the SVD of J, above, is
 
                   J   ⁢     =   Δ     ⁢       [           U   [     ∑       ⋮0     Kx   ⁡     (     L   -   K     )         ⁢       ∑   ~       -   1                         α     ⁢       ∑   ~       -   1               ]     ⁢       ∑   ~     ⁢     I   L           ,           (   21   )               
where {tilde over (Σ)} is an L-by-L diagonal matrix with the following diagonal elements
 {tilde over (σ)} i =√{square root over (σ i   2 +α)}, 1≦i≦K  (22a) and {tilde over (σ)} i =√{square root over (α)}, K=1≦i≦L.  (22b) 
Performing a GMD of {tilde over (Σ)} yields
 {tilde over (Σ)}=( Q   1   Q   2    . . . Q   L-1 ) R   J ( P   L-1   T   P   L-2   T    . . . P   1   T )  (23) 
Hence, it follows that
 
                   [           U   [     ∑     ⋮0     Kx   ⁡     (     L   -   K     )                         α     ⁢     I   L             ]     =       [             U   ⁡     [     ∑     ⋮0     Kx   ⁡     (     L   -   K     )           ]       ⁢       ∑   ~       -   1                     α     ⁢       ∑   ~       -   1               ]     ⁢     (       Q   1     ⁢     Q   2     ⁢   …   ⁢           ⁢     Q     L   -   1         )     ⁢       R   J     ⁡     (       P     L   -   1     T     ⁢     P     L   -   2     T     ⁢   …   ⁢           ⁢     P   1   T       )                 (   24   )               
Therefore the linear precoder, {tilde over (F)}, has the following form:
 {tilde over (F)}=V[Φ 1/2   0 K×(L-K)]P   1 P 2  . . . P L-1 .  (25) 
Moreover, the matrix, Q G     a     u , above, can be written in the following form
 Q G     a     u =U[Σ 0 K×(L-K) ]{tilde over (Σ)} −1 Q 1  Q 2  . . . Q L-1 .  (26) 
   It should be noted the Q l  and P l , l=1, 2, . . . , L, are each Givens rotation matrices, as will be readily understood by one of ordinary skill in the art. Accordingly, calculating (25) and (26) can be accomplished in O(M t L) and O(M r L) flops, respectively. 
   Algorithmically, the UCD scheme can be accomplished through a sequence of operations. Firstly, a singular-value decomposition of the channel matrix is obtained, yielding H=UΛV*. The matrix Φ 1/2  is subsequently obtained, where Φ is the diagonal matrix whose k-th diagonal element, φ k , (1≦k≦K), determines the power loaded to the k-th subchannel, as described above; that is, using the known “water filling” technique described above, each of the k-th diagonal elements is determined to be: 
   
     
       
         
           
             
               ϕ 
               k 
             
             ⁡ 
             
               ( 
               μ 
               ) 
             
           
           = 
           
             
               
                 ( 
                 
                   μ 
                   - 
                   
                     α 
                     
                       λ 
                       
                         H 
                         , 
                         k 
                       
                       2 
                     
                   
                 
                 ) 
               
               + 
             
             . 
           
         
       
     
   
   Using the middle term of the right-hand side of the equation resulting from the singular-value decomposition of the channel matrix and the matrix obtained through the “water filling” technique, the following matrix product is the obtained: Σ=ΛΦ 1/2 . Next, the L×L diagonal matrix {tilde over (Σ)} is obtained by computing the diagonal elements to be {tilde over (σ)} i =√{square root over (σ i   2 +α)} for each 1≦i≦K and {tilde over (σ)} i =√{square root over (α)} for each K=1≦i≦L. Applying the geometric mean decomposition algorithm to {tilde over (Σ)} then yields {tilde over (Σ)}(Q 1 Ω 2  . . . Q L-1 )R J (P L-1   T P L-2   T  . . . P 1   T ). From these operations the linear precoder, {tilde over (F)}, is obtained as F=V[Φ 1/2   0 K×(L-K) ]P 1  P 2  . . . P L-1 . The matrix Q G     a     u , corresponding to the first M r  rows of the matrix Q G     a   , defined above, is obtained as Q G     a     u =U[Σ 0 K×(L-K) ]Q q Ω 2  . . . Q L-1 . 
   Finally, the nulling vectors are determined so that nulling and cancellation can be performed on any signal precoded by the linear precoder {tilde over (F)}. An appropriate sequential nulling and cancellation procedure is described by the following pseudo code:
 
v M     t   =y
 
for i=M t :−1:1
 
{circumflex over (x)} i =w i *v i (nulling step)
 
{tilde over (x)} i =C[{circumflex over (x)} i ]
 
 v   i-1   =v   i   −h   i   {tilde over (x)}   i (cancellation step)
 
end,
 
where C represents a mapping to the nearest symbol of a predefined symbol constellation.
 
     FIG. 2  schematically illustrates an array-to-array communications system  200  which operatively performs the UCD scheme, according to one particular embodiment. As illustrated, the system  200  comprises a transmitting unit  205  connected to a plurality of transmitting antennas  245  and a receiving unit  210  connected to a plurality of receiving antennas  246  for transmitting and receiving, respectively, encoded signals over a transmission medium or MIMO channel  215 . The transmitting unit  205  illustratively includes a processor  220  that performs the matrix operations described previously using a linear matrix precoder  225 . The processor  220  can be implemented in dedicated hardwired circuitry or in machine readable code configured to run on an application-specific or general-purpose computing device. Alternatively, the processing unit can be implemented in a combination of hardwired circuitry and machine-readable code. More particularly, the hardwired circuitry can, for example, comprise input/output (I/O) interfaces, one or more microprocessors and/or digital signal processors (DSPs), and memory elements. The machine-readable code can comprise, for example, programming logic to provide signal processing functions such as sampling, encoding, and other processing functions known to those of ordinary skill in the art. 
   An input signal, S(t), is provided as an input to the processing unit  220 . Although illustrated as the initial interface for an input signal, S(t), some of the functions, hardwired circuitry, and/or machine-readable code embodied in the processor  220  can be located apart from the other illustrated components of the transmitting system  205 . Moreover, it will be readily appreciated that the functions performed by the processor  220  can be implemented in discrete components within or external to the transmitting system  205 . 
   The processor  220  samples the received input signal, S(t), and maps the sampled bit sequences into a sequence of symbols, x k   (i) , i=1, 2, . . . , M t . The M t  symbol sequences drive identical, or substantially identical, pulse-shape filters g(t), such as filter  230 . The resultant shaped signals are then upconverted by upconverters  240 , to an RF carrier frequency, ƒ 0 , and transmitted across the transmission medium  215  using a plurality of transmitting antennas  245 . 
   In one implementation, transmission medium  215  comprises a quasi-static fading channel, which as previously described can be mathematically represented by the channel matrix, H. With the transmitted signals represented by row vectors, H, is described by an M t ×M r  matrix, where M t  is the number of transmit antennas, and M r  is the number of receive antennas. Thus, reference to a channel is, again, to be understood to mean an M t ×M r  matrix, H, whose elements are channel coefficients as described above. Note that interference in the transmission medium  215 , such as co-channel interference, is represented by the diagonal arrows from transmitting system  205  to the receiving system  210 . 
   At the receiving unit  210 , M r  passband observations are downconverted by downconverters  250 , filtered by a filter  255  and sampled at a predetermined symbol rate by samplers  260  to produce M r  received sequences r k   (i) , i=1, 2, . . . , M r . Note that filtering, downconverting, and sampling can be performed in discrete components or in integrated components at the receiving unit  210  or at one or more components located external to the receiving unit. Moreover, the functions can be implemented in hardwired circuitry, machine-readable code, or a combination of circuitry and code. 
   The sampled signals are illustratively supplied to signal extractor or detector  265 . The signal extractor or detector  265 , is preferably embodied as a decision feedback equalizer, such as one based on the minimum mean-squared-error vertical Bell Labs layered space-time (MMSE-VBLAST) architecture familiar to those of ordinary skill in the art. The VBLAST detector cancels out known interference prior to signal detection. A particular embodiment of the communication  200  in which the decision feedback equalizer is implemented with a VBLAST detector is referred to herein as a UCD-VBLAST system. 
   Combining the UCD scheme implemented by the precoder  225  of the processor  220  with a detector such as the MMSE-VBLAST yields particular advantages. Beyond decomposing the transmission channel into multiple subchannels having identical, or nearly identical, channel capacities, the combination mitigates or eliminates the need for bit allocation. The combination also mitigates or eliminates the inherent zero-forcing aspect that typically accompanies the use of a conventional zero-forcing VBLAST architecture or zero forcing algorithm and that can cause significant capacity loss, particularly for signals characterized by low SNRs. 
   To this point, it has been assumed that both the CSIR and CSIT are known. The assumption regarding the CSIR is reasonable given that it can be easily obtained by the sending of training symbols. In a system based on frequency division duplexing (FDD), the CSIT can be obtained through feedback from the receiver. Conventional FDD systems, however, are subject to errors if the feedback is not frequently updated. With the present invention, however, there is no need to assume a known CSIT. Instead, the CSIT, Ĥ, need not be precise, even though the channel matrix, H, characterizing the transmission medium  215  is known at the receiving system  210 . The receiving system  210  can be assumed to the CSIT, Ĥ, since it is the feedback, albeit delayed, of the CSIR. 
   Under the latter assumption, the above-described UCD-VBLAST, according to still another embodiment of the invention, can be made robust against error in the CSIT. The particular embodiment is referred to herein as a robust UCD-VBLAST scheme. In accordance with this embodiment, the precoder  225  of the processor  220  at the transmitting system  205  calculates the precoder, {tilde over (F)}, as previously described, but here the precoder  225  performs the calculation based on the CSIT, Ĥ. The resulting equivalent channel yields 
                 y   =         H   ⁢     F   ~     ⁢   x     +   z     ⁢     =   Δ     ⁢     Gx   +     z   .                 (   27   )               
Instead of the precoder  225  calculating the nulling vectors according to equation 18, however, the receiving system  210  includes a processor (not shown) that calculates a virtual channel G=H{tilde over (F)}. The processor of the receiving system  210  can apply the algorithm of an optimally ordered MMSE-VBLAST detector. Since the receiving unit  210  has perfect knowledge of the matrix G, the robust UCD-VBLAST scheme performs at least as well as an open-loop MMSE-VBLAST scheme even if the CSIT is not perfectly accurate. Accordingly, the robust MMSE-VBLAST scheme is particularly robust against CSIT errors.
 
   A dual form of the UCD scheme is obtained by reversing the roles of the transmitter and receiver. The received signal is then represented as
 
 y=H*x+z,   (28)
 
where H* is the conjugate transpose of the previously described channel matrix, x is the transmitted signal symbol, and z denotes the channel noise assumed to have a particular distribution (e.g., additive white Gaussian noise). The reversal yields a precoder F rev  and, with respect to cancellation, an equalizer {w i } i=1   L . Normalizing the {w i } i=1   L  to correspond to the unit Euclidean norm yields {  w   i } i=1   L , which forms the vector W=[  w   1 ,  w   L ]. It follows from the uplink-downlink duality that the precoder is F=WD q , where D q  is a diagonal matrix whose diagonal elements are {√{square root over (q i )}} l=1   L . F rev , the linear precoder in the reverse channel, can be used as a linear equalizer. Therefore, the equivalent MIMO channel is
 
 y=F   rev   *HWD   q   x+z,   (29)
 
where the i-th scalar subchannel of the MIMO channel is
 
                   y   i     =         f   i   *     ⁢   H   ⁢           ⁢       w   _     i     ⁢     q     ⁢           x   i           i             +       ∑     j   =     i   +   1       L     ⁢       f   i   *     ⁢   H   ⁢       w   _     j     ⁢       q   j       ⁢     x   j         +       ∑     j   =   1       i   -   1       ⁢       f   i   *     ⁢   H   ⁢       w   _     j     ⁢       q   j       ⁢     x   j         +       f   i     ⁢     z   .                 (   30   )               
By applying a dirty, paper (DP) precoder to x i  and treating
 
             ∑     j   =   1       i   -   1       ⁢       f   i   *     ⁢   H   ⁢       w   _     j     ⁢       q   j       ⁢     x   j             
as the interference known at the transmitter, the following equivalent subchannel is obtained
 
                   y   i     =         f   i   *     ⁢   H   ⁢       w   _     i     ⁢     q     ⁢     x   i           i           +       ∑     j   =     i   +   1       L     ⁢       f   i   *     ⁢   H   ⁢       w   _     j     ⁢     q     ⁢     x   j           j             +       f   i   *     ⁢   z               (   31   )               
having the following SNIR
 
   
     
       
         
           
             
               ρ 
               i 
             
             = 
             
               
                 
                   q 
                   i 
                 
                 ⁢ 
                 
                   
                      
                     
                       
                         f 
                         i 
                         * 
                       
                       ⁢ 
                       H 
                       ⁢ 
                       
                         
                           w 
                           _ 
                         
                         i 
                       
                     
                      
                   
                   2 
                 
               
               
                 
                   α 
                   ⁢ 
                   
                     
                        
                       
                         f 
                         i 
                       
                        
                     
                     2 
                   
                 
                 + 
                 
                   
                     ∑ 
                     
                       j 
                       = 
                       
                         i 
                         + 
                         1 
                       
                     
                     L 
                   
                   ⁢ 
                   
                     
                       q 
                       j 
                     
                     ⁢ 
                     
                       
                          
                         
                           
                             f 
                             i 
                             * 
                           
                           ⁢ 
                           H 
                           ⁢ 
                           
                             
                               w 
                               _ 
                             
                             j 
                           
                         
                          
                       
                       2 
                     
                   
                 
               
             
           
           , 
           
             
               for 
               ⁢ 
               
                   
               
               ⁢ 
               i 
             
             = 
             1 
           
           , 
           2 
           , 
           … 
           ⁢ 
           
               
           
           , 
           
             L 
             . 
           
         
       
     
   
   The next step is to calculate {q i}   i=1   L  such that ρ i =  ρ , 1≦i≦L. In matrix form, with α ij =|f i *H  w   j | 2 , the SNIR representation is 
                     [           a   11             -     ρ   _       ⁢     a   12           …           -     ρ   _       ⁢     a     1   ⁢   L                 0         a   22         …           -     ρ   _       ⁢           ⁢     a     2   ⁢   L                 ⋮       ⋰       ⋰       ⋮           0       …       0         a   LL           ]     ⁡     [           q   1               q   2             ⋮             q   L           ]       =       ρ   _     ⁢           ⁢       α   ⁡     [                  f   1          2                      f   2          2             ⋮                    f   L          2           ]       .               (   32   )               
It can easily be shown that q i &gt;0, for 0≦i≦L. Moreover, it can be proven that
 
   
     
       
         
           
             
               ∑ 
               
                 i 
                 = 
                 1 
               
               L 
             
             ⁢ 
             
               q 
               i 
             
           
           = 
           
             
               tr 
               ⁡ 
               
                 ( 
                 
                   FF 
                   * 
                 
                 ) 
               
             
             = 
             
               
                 tr 
                 ⁡ 
                 
                   ( 
                   
                     
                       F 
                       rev 
                     
                     ⁢ 
                     
                       
                         F 
                         rev 
                       
                       * 
                     
                   
                   ) 
                 
               
               . 
             
           
         
       
     
   
     FIG. 3  schematically illustrates a communications system  300  that, according to still another embodiment of the invention, implements the above-described dual form of the UCD scheme. The system  300  illustratively includes a transmitting unit  305  and a receiving unit  310 . The transmitting unit  305  illustratively includes a plurality of filters  330 , a plurality of upconverters  340  in communication with the filters, and a plurality of transmitting antennas  345  in communication with the upconverters. 
   The transmitting unit  305  further includes a DP precoder  318 , such as the familiar Tomlinson-Harashima precoder, which precodes a signal input S(t) to suppress known interference prior to transmitting the signal. The transmitting unit  305  further includes a processor  320  for processing the signal and a linear matrix precoder  325  that additionally precodes the signal in accordance with the dual form of the UCD scheme described above. The resulting vector or sequence of symbols, x k , are subsequently filtered by the filters  330  and upconverted in the upconverters  340  prior to their transmission using the plurality of antennas  345 . 
   The transmitted symbols are received by the receiving unit  310 . The receiving unit  310  illustratively includes a plurality of receiving antennas  346 , a plurality of downconverters  350  in communication with the receiving antennas, a plurality of filters  355  in communication with the downconverters, and a plurality of samplers  360  in communication with the downconverters. The receiving unit  310  further illustratively includes a linear equalizer  366  in communication with the plurality of samplers and a DP decoder  368  in communication with the samplers. 
   Operatively, the encoded signals transmitted over a channel  315  are received at the receiving unit  310  using the plurality of receiving antennas  350 . The received symbols are then downconverted in the downconverters  350 , filtered by the filters  355 , and sampled by the samplers  360 . The sampled signals are detected in the feedback equalizer  366  and the relevant information extracted in the DP decoder  368  in order to effect completion of the dual form UCD scheme. 
   Yet another embodiment of the invention is a closed-loop design of WLAN based on a MIMO communications system utilizing orthogonal frequency division multiplexing, the system being defined herein as a MIMO-OFDM system. A MIMO-OFDM-based WLAN, according to the invention, combines uniform channel decomposition, as already described, with horizontal encoding and successive, non-iterative decoding. 
   The MIMO-OFDM-based WLAN incorporates both a MIMO-OFDM transmitter and a MIMO-OFDM-based WLAN. One embodiment of the MIMO-OFDM transmitter  400  is schematically illustrated in  FIG. 4 . The MIMO-OFDM transmitter  400  illustratively includes a signal processor  402  for generating signal output in response to information data received from an external information source. Signal output form the signal processor  402  is supplied to a pair of convolution encoders  404 . The respective outputs of the convolution encoders  404  are supplied to a pair of combined interleaving and data-mapping processing units  406 , the outputs of which are fed to a precoder  408 . Two sets of parallel signal outputs from the precoder  408  are supplied to a pair of combined inverse discrete Fourier transform (IDFT) and cylic prefix processing units  410 . The resulting output of each IDFT and cylic prefix processing unit  410  is transmitted by one of a pair of transmitting antennas  412 . 
   The MIMO-OFDM transmitter  400  implements horizontal encoding, according to which the respective pairs of convolution encoders  404  and interleaving and data-mapping processing units  406  form two parallel branches for separately performing encoding, bit interleaving, and data mapping. The i-th encoded data symbol, i=1, 2, on the k-th subcarrier is x ik . The vector of transmitted data symbols, accordingly, is x k =[x ik ,x 2k ] T , where (•) T  again denotes the transpose of the vector. A 2×2 precoder matrix P k  is applied at the precoder  408  with respect to each of N data subcarriers to obtain {tilde over (x)} k =P k x k , 1≦k≦N. The {P k } k=1   N  are calculated and quantized at a MIMO-OFDM receiver, as described below, and then fed back from the receiver to the transmitter  400 . The data symbol of the i-th branch on the k-th subcarrier is {tilde over (x)} ik , which is the i-th element of the vector {tilde over (x)} k . Each precoded branch is then OFDM modulated by a corresponding one of the pair of IDFT and cylic prefix processing units  410 , each of which performs an N c -point IFFT and adds a cyclic prefix (CP) to the corresponding signal prior to its transmission. 
   Referring additionally now to  FIG. 5 , one embodiment of a corresponding MIMO-OFDM receiver  500  is schematically illustrated. The MIMO-OFDM  500  illustratively includes a pair of antennas  502  which receive signals from the MIMO-OFDM transmitter  400 . The received signals are fed, again as parallel branches, to a pair of processing units  504  that first remove the CP and apply an N c -point FFT to each branch, respectively. Preferably, the conditions are such that perfect, or near-perfect, synchronization, frequency offset estimation, and channel estimation can be assumed. 
   The received signal vector on the k-th data subcarrier is therefore
 
 y   k   H   k   P   k   x   k   +z   k   , k= 1, 2, . . . , N,  (33)
 
where the noise component is z k ˜N(0, σ z   2 I); the noise component is assumed to be circularly symmetric Gaussian noise. The received branches are then supplied to an equalizer  506 , described more particularly below. The respective branches are subsequently fed from the equalizer  506  to a second pair of processing units  508 , which each perform de-interleaving and soft de-mapping on a respective branch. Each branch is then fed to a corresponding (soft) Viterbi decoder, denoted herein as an upper and lower branch Viterbi decoder  510   a  and  510   b , respectively. The respective outputs of the upper and lower branch Viterbi decoders  510   a  and  510   b  are subsequently supplied to another processor  512  for recovering the original information transmitted from the transmitter. The lower branch Viterbi decoder  510   b  also provides a feedback to the equalizer  506  via connection  514 .
 
   Precoder and Equalizer Design 
   A key component of the closed-loop design is the precoder matrix P k  applied by the precoder  408  at the transmitter  400  and the operations performed by the equalizer  506  at the receiver  500 . The precoder matrix P k  can be determined as described above. A geometric mean decomposition (GMD) of the channel matrix H k  at the receiver  500  yields
 
H k =Q k R k P k *,  (34)
 
from which the precoder matrix P k  is determined. The precoder matrix is fed back to the transmitter  400 . Note that P k P k *=I. Applying the precoder matrix P k  at the transmitter  400  results in the transmission of a symbol-encoded signal that when received at the receiver  500  has the following data vector form:
 
 y   k   =Q   k   R   k   x   k   +z   k   , k= 1, 2, . . . , N.  (35)
 
   At the receiver, the data vector, y k , is multiplied by Q k *, yielding
 
 {tilde over (y)}   k   R   k   x   k   +{tilde over (z)}   k ,
 
where R k =Q k *H k P k  is a 2×2 upper triangular matrix with constant diagonal elements and z k ˜N(0,σ z   2 I). The information symbols x k  can then be successively detected starting with the last element of the vector.
 
   Successive Soft Decoding 
   The matrix R k  is an upper triangular matrix. As already noted, the receiver  500  performs de-interleaving and soft de-mapping. A low-complexity soft Viterbi decoder can be used for each branch separately. The data sequence of the lower branch is detected initially to get the soft information. After the data of the lower branch is decoded, the interference due to the lower branch is subtracted from the upper branch prior to the latter being decoded. Interference cancellation based on a GMD can be accomplished in two stages: an initial stage and a cancellation stage. 
   At the initial stage, the following are obtained: 
                     σ     2   ⁢   k     2     =       E   ⁡     [                z   ~       2   ⁢   k       /       (     R   k     )     22            2     ]       =       σ   z   2     /       (     R   k     )     22   2           ,   and           (     36   ⁢   a     )                       x   ^       2   ⁢   k       ⁢       x   ^       2   ⁢   k         =         y   ~       2   ⁢   k       /       (     R   k     )     22         ,     k   =   1     ,   …   ⁢           ,     N   .             (     36   ⁢   b     )               
Note that the σ 2k   2  and {circumflex over (x)} 2k  values provide the soft information of the lower branch. The lower branch data sequence can be decoded using the soft Viterbi decoder.
 
   At the cancellation stage, the following are obtained: 
                     σ     1   ⁢   k     2     =       E   ⁡     [                  z   ~       1   ⁢   k       /     (     R   k     )       ⁢   11          2     ]       =       σ   z   2     /       (     R   k     )     11   2           ,   and           (     37   ⁢   a     )                     x   ^       1   ⁢   k       =       [         y   ~       1   ⁢   k       -         (     R   k     )     12     ⁢       x   _       2   ⁢   k           ]     /       (     R   k     )     11         ,     l   =   1     ,   …   ⁢           ,   N   ,           (     37   ⁢   b     )               
where the σ 1k   2  and {circumflex over (x)} 1k  values provide the soft information for the upper branch;  x   2k  denotes the re-encoded lower branch data symbol sequence obtained via feedback from the lower branch Viterbi decoder. Given the soft information for the upper branch, the upper branch data sequence can be decoded using the soft Viterbi decoder. Uniform channel decomposition (UCD) ensures that the diagonal elements of the R k  are identical. Accordingly, in each of the two branches, σ 1k   2 =σ 2k   2 . This provides an advantage over conventional techniques, such as the V-BLAST, with which the two branches typically exhibit unbalanced gains and in which the weaker branch dominates the overall BER.
 
   Precoder Quantization 
   The overhead of feeding back the precoders, P k , k=1, . . . , N, to the transmitter can be reduced by quantizing the precoder matrix P k . Note that a 2×2 semi-unitary precoder matrix P k  can be 
                     P   ⁡     (     θ   ,   ϕ     )       =     [           cos   ⁢           ⁢   θ             -   sin     ⁢           ⁢   θ   ⁢           ⁢     ⅇ       -   j     ⁢           ⁢   ϕ                   sin   ⁢           ⁢   θ   ⁢           ⁢     ⅇ     j   ⁢           ⁢   ϕ               cos   ⁢           ⁢   θ           ]       ,     0   ≤   θ   &lt;   π     ,     0   ≤   ϕ   ≤     2   ⁢           ⁢     π   .                 (   40   )               
The two methods can be utilized for quantization: scalar quantization and vector quantization.
 
   Scalar Quantization 
   A precoder according to the scalar quantization scheme presented here can be represented as 
                     P   ⁡     (       θ     n   ⁢           ⁢   1       ,     ϕ     n   ⁢           ⁢   2         )       =     [           cos   ⁢           ⁢     θ     n   ⁢           ⁢   1                 -   sin     ⁢           ⁢     θ     n   ⁢           ⁢   1       ⁢     ⅇ       -   j     ⁢           ⁢     ϕ     n   ⁢           ⁢   2                       sin   ⁢           ⁢     θ     n   ⁢           ⁢   1       ⁢     ⅇ     j   ⁢           ⁢     ϕ     n   ⁢           ⁢   2                   cos   ⁢           ⁢     θ     n   ⁢           ⁢   1               ]       ,           (   41   )               
where
 
               θ     n   ⁢           ⁢   1       =       π   ⁢           ⁢     n   1         N   1         ,         
0≦n 1 ≦N 1 −1, and
 
               ϕ     n   ⁢           ⁢   2       =       2   ⁢           ⁢   π   ⁢           ⁢     n   2         N   2         ,         
0≦n 2 ≦N 2 31 1; N 1  and N 2  denote the quantization levels of θ n1  and φ n2 , respectively. After obtaining the precoder matrix P k  using the UCD scheme, the precoder P k  can be quantized to the “closest” grid point. Thus only the index (n 1 ,n 2 ) needs to be fed back to the transmitter. The total bit number required, therefore, is log 2 (n 1 ,n 2 ). To reduce the effect of quantization error, {tilde over (Q)} k * is used in lieu of applying the original equalizer {tilde over (Q)} k * at the receiver. {tilde over (Q)} k * is obtained via a QR decomposition:
 H k P(θ n1 ,φ n2 ) {tilde over (Q)} k {tilde over (R)} k , k=1, . . . , N.  (42) 
   Vector Quantization 
   Vector quantization can be adopted to further reduce the overhead associated with feeding the precoders the precoders, P k , k=1, . . . , N, back to the MIMO transmitter  400 . The following is a geometric approach for performing the vector quantization. Vector quantization can be used to quantize the precoder P(θ,φ) to P({circumflex over (θ)}, {circumflex over (φ)}). Instead of transmitting the desired data vector P(θ,φ)x k  at the transmitter, x k  being an encoded data vector, P({tilde over (θ)},{tilde over (φ)})x k  is instead transmitted. The following cost function is minimized in order to optimize the quantization scheme:
 
 d=∥P (θ,φ) x   k   −P ({tilde over (θ)},{tilde over (φ)}) x   k ∥ 2   =x   k   *[P (θ,φ)− P ({tilde over (θ)},{tilde over (φ)})]*[ P (θ,φ)− P ({tilde over (θ)},{tilde over (φ)})] x   k ,  (43)
 
where ∥•∥ is the Euclidean norm. Moreover, by straightforward algebraic manipulation
 
[ P (θ,φ)− P ({tilde over (θ)},{tilde over (φ)})]*[ P (θ,φ)− P ({tilde over (θ)},{tilde over (φ)}]=2 I   2 −2[cos θ cos {tilde over (θ)}+sin θ sin {tilde over (θ)} cos(φ−{circumflex over (φ)})] I   2 ,  (44)
 
where I 2  is the identity matrix of dimension 2. Because the value of ∥x k ∥ does not affect the quantization, ∥x k ∥ can be taken to be one without loss of generality. Accordingly,
 
   
     
       
         
           
             
               
                 
                   2 
                   - 
                   
                     2 
                     ⁡ 
                     
                       [ 
                       
                         
                           cos 
                           ⁢ 
                           
                               
                           
                           ⁢ 
                           θ 
                           ⁢ 
                           
                               
                           
                           ⁢ 
                           cos 
                           ⁢ 
                           
                               
                           
                           ⁢ 
                           
                             θ 
                             ^ 
                           
                         
                         + 
                         
                           sin 
                           ⁢ 
                           
                               
                           
                           ⁢ 
                           θ 
                           ⁢ 
                           
                               
                           
                           ⁢ 
                           sin 
                           ⁢ 
                           
                               
                           
                           ⁢ 
                           
                             θ 
                             ^ 
                           
                           ⁢ 
                           
                               
                           
                           ⁢ 
                           
                             cos 
                             ⁡ 
                             
                               ( 
                               
                                 ϕ 
                                 - 
                                 
                                   ϕ 
                                   ^ 
                                 
                               
                               ) 
                             
                           
                         
                       
                       ] 
                     
                   
                 
                 ⁢ 
                 
                   = 
                   Δ 
                 
                 ⁢ 
                 
                   2 
                   - 
                   
                     2 
                     ⁢ 
                     
                         
                     
                     ⁢ 
                     
                       ϛ 
                       . 
                     
                   
                 
               
             
             
               
                 ( 
                 45 
                 ) 
               
             
           
         
       
     
   
   Note that there is a one-to-one and onto mapping from the unitary precoder set {P(θ,φ)|0≦θ&lt;π, 0≦φ&lt;2π} to the surface of a three dimensional sphere {vε   3 |∥v∥=1}. Any point on the surface of a three dimensional unit sphere with angles (θ,φ)) can be represented in the Cartesian coordinate as v=[cos θ, sin θ cos φ, sin θ sin φ] T , where the first element of v is the (1,1)-element of P(θ,φ) and the second and third elements of v, respectively, are the real and imaginary parts of the (1,2)-th element of P(θ,φ). Each P(θ,φ) corresponds to a point v on the surface of the three dimensional unit sphere. Similarly, any point on the surface of the unit sphere with angles ({circumflex over (θ)}, {circumflex over (φ)}) can be represented by the Cartesian coordinate {circumflex over (v)}=[cos {circumflex over (θ)}, sin {circumflex over (θ)} cos {circumflex over (φ)}, sin {circumflex over (θ)} sin {circumflex over (φ)})] T . Accordingly, a geometric interpretation of ζ is that it is just the inner product between v and {circumflex over (v)}. If ψ is the angle between v and {circumflex over (v)}, then ζ=cos ψ and
 
 d =(2−2 cos ψ)=∥ v−{circumflex over (v)}∥   2 .  (46)
 
   The quantized vector {circumflex over (v)} of v can be obtained from a predefined codebook {  v } i=1   Nv , which is know at both the transmitter and the receiver. The following steps can be used to determine the codebook. First, a training set {v n , n=1, 2, . . . , N t } can be generated by randomly picking N t  points on the surface of a three dimensional unit sphere, where N t  is a large number. Then, starting with an initial codebook obtained, for example, via the known splitting technique, the codebook is iteratively updated until no further improvement in the minimum distance is observed according to the following criteria:
         1. The nearest neighbor condition (NNC). For a given codebook {  v   t } i=1   Nv , assign v n  to the i-th region:       

   
     
       
         
           
             
               S 
               i 
             
             = 
             
               { 
               
                 
                   
                     
                       v 
                       n 
                     
                     ⁢ 
                     ⋮ 
                     ⁢ 
                     
                       
                          
                         
                           
                             v 
                             n 
                           
                           - 
                           
                             
                               v 
                               _ 
                             
                             i 
                           
                         
                          
                       
                       2 
                     
                   
                   ≤ 
                   
                     
                        
                       
                         
                           v 
                           n 
                         
                         - 
                         
                           
                             v 
                             _ 
                           
                           j 
                         
                       
                        
                     
                     2 
                   
                 
                 , 
                 
                   ∀ 
                   
                     j 
                     ≠ 
                     i 
                   
                 
               
               } 
             
           
           , 
         
       
     
       
       
         
           
             
               where S i , i=1, 2, . . . , N v , is the partition set for the i-th code vector; and 
             
           
           2. The centroid condition (CC). For a given partition, S i , the optimum code vectors {  v   i } i=1   Nv  satisfy 
         
       
     
  
                 v   ~     i     =     arg   ⁢             ⁢             ⁢   min   ⁢           ⁢     E   [                v     n              v   _     i          =   1         -       v   ~     i            2     ❘       v   n     ∈     S   i         ]         ,     i   =   1     ,   2   ,   …   ⁢           ,       N   v     .           
It can be shown that the solution to the above optimization problem is
 
                 v   ~     i     =         v   _     i              v   _     i              ,     i   =   1     ,   2   ,   …   ⁢           ,     N   v     ,         
where
 
               v   _     i     =         ∑       v   n     ∈     S   i         ⁢           ⁢     v   n           ∑       v   n     ∈     S   i         ⁢           ⁢   1             
is the mean vector for the partition set S i , i=1, 2, . . . , N v .
 
   Accordingly, for each k-th subcarrier, the precoder P k  is first mapped as a random point v on the surface of the a three dimensional unit sphere. According to NNC, the quantized vector  v  is obtained from the codebook with index i. The index i is fed back to the transmitter to reconstruct the precoder P({circumflex over (θ)}, {circumflex over (φ)}). The total bit number required is log 2 (N v ). As in scalar quantization, to reduce the effect of quantization err, the QR decomposition and MMSE V-BLAST algorithm can be applied to H k P({circumflex over (θ)}, {circumflex over (φ)}) when using GMD and UCD. 
   Geometric Mean Decomposition Algorithm 
   As already noted, the UCD scheme implemented by the system and procedures described herein incorporates a procedure referred to as a geometric mean decomposition. An algorithm for evaluating the geometric mean decomposition (GMD) starts with the singular value decomposition H=UΛV*. The algorithm generates a sequence of upper triangular matrices, R ({tilde over (K)}) , 1≦{tilde over (K)}≦K, with R (1) =Λ. Each matrix R ({tilde over (K)})  has the following properties:
     (a) r ij   ({tilde over (K)}) =0, if i≧j or j≧max{{tilde over (K)},i}, and   (b) r ii   ({tilde over (K)}) =  λ   H  for all i&lt;{tilde over (K)}.
 
The geometric mean of r ii   ({tilde over (K)}) , K≦i≦K, is  λ   H .
   

   These orthogonal matrices are constructed using a symmetric permutation and a pair of Givens rotations, as known in the art. R ({tilde over (K)})  is assumed to satisfy properties (a) and (b). If r kk   (k) ≧  λ   H , then a permutation matrix Π can be chosen having the property that ΠR (k) Π exchanges the (k+1) diagonal element R (k)  with any element r pp , p&gt;k, for which r pp ≦  λ   H . If r kk   (k) &lt;  λ   H , then the permutation matrix Π is chosen to exchange the (k+1) diagonal element with any element r pp , p&gt;k, for which r pp ≧  λ   H . The new diagonal elements at locations k and k+1 associated with the permuted matrix ΠR (k) Π are denoted δ 1 =r kk   (k)  and δ 2 =r pp   (k) . 
   Orthogonal matrices G 1  and G 2  are subsequently constructed by modifying the elements in the identity matrix that lie at the intersection of rows k and k+1 and columns k and k+1. The permuted matrix ΠR (k) Π is multiplied on the left by G 2   T  and on the right by G 1 . The multiplications change the elements in the 2-by-2 submatrix at the intersection of rows k and k+1 with columns k and k+1. The choice of elements for G 1  and G 2  according to the procedure, focusing on the relevant 2-by-2 submatrices of G 2   T , ΠR (k) Π, and G 1 , are 
                     λ   _     H     -   1       ⁢           [           c   ⁢           ⁢     δ   1             s   ⁢           ⁢     δ   2                   -   s     ⁢           ⁢     δ   2             c   ⁢           ⁢     δ   1             ]           [           δ   1         0           0         δ   2           ]             [         c         -   s             s       c         ]     =           [             λ   _     H         x           0       y         ]               G   2   T           Π   ⁢           ⁢     R     (   k   )       ⁢   Π           G   1           (     R     (     k   +   1     )       )                   (   47   )               
If δ 1 =δ 2 =  λ   H , then c is taken to be one and s is taken to be zero; if δ 1 ≠δ 2 , then c and s, respectively, are taken to be
 
                 c   =                 λ   _     H   2     -     δ   2   2           δ   1   2     -     δ   2   2           ⁢           ⁢   and   ⁢           ⁢   s     =             δ   1   2     -       λ   _     H   2           δ   1   2     -     δ   2   2           .               (   48   )               
Note that since  λ   H  lies between δ 1  and δ 2 , c and s are nonnegative real-valued scalars.
 
     FIG. 6  schematically illustrates a transformation from R (k)  to G 2   T ΠR (k) ΠG 1 . The dashed box is the 2-by-2 submatrix on the right-hand side of equation 47. Note that c and s, defined as in 48, are real-valued scalars chosen such that
   c   2   +s   2 =1 and ( cδ   1 ) 2 +( sδ   2 ) 2 =  λ   H   2 . 
The validity of equation 47 follows by direct computation with the above identities. Defining Q k =ΠG 2  and P k =ΠG 1 , the matrix R (k+1)  is set equal to Q k   T R (k) P k :
 R (k+1) =Q k   T R (k) P k .  (49) 
It follows from  FIG. 6 , equation 47, and the identity |R (k+1) |=|R (k) | that both conditions (a) and (b), above, hold for {tilde over (K)}=k+1. There thus exists a real-valued upper triangular matrix R (k) , with  pλ   H  on the diagonal of the matrix, and unitary matrices Q i  and P i , i=1, 2, . . . , K−1, such that
   R   (K) =( Q   K-1   T    . . . Q   2   T   Q   1   T )Σ( P   1   P   2    . . . P   1 ).  (50) 
H=QRP* is obtained by combining the identity 50 with the singular value decomposition, where
 
   
     
       
         
           
             Q 
             = 
             
               U 
               ⁡ 
               
                 ( 
                 
                   
                     ∏ 
                     
                       i 
                       = 
                       1 
                     
                     
                       K 
                       - 
                       1 
                     
                   
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   
                     Q 
                     i 
                   
                 
                 ) 
               
             
           
           , 
           
             R 
             = 
             
               R 
               
                 ( 
                 K 
                 ) 
               
             
           
           , 
           
             
               and 
               ⁢ 
               
                 
                     
                 
                 ⁢ 
                 
                     
                 
               
               ⁢ 
               P 
             
             = 
             
               
                 V 
                 ⁡ 
                 
                   ( 
                   
                     
                       ∏ 
                       
                         i 
                         = 
                         1 
                       
                       
                         K 
                         - 
                         1 
                       
                     
                     ⁢ 
                     
                         
                     
                     ⁢ 
                     
                       P 
                       i 
                     
                   
                   ) 
                 
               
               . 
             
           
         
       
     
   
   Given the SVD, this algorithm for the GMD requires O((M r +M t )K) flops. By contrast, the reduction of H to bi-diagonal form using the known Golub-Reinsch bi-diagonalization scheme, often the initial step in obtaining the SVD, requires O(M r  M t  K) flops. 
   The invention as already noted can be realized in hardware, software, or a combination of hardware and software. The invention can be realized in a centralized fashion in one computer system, or in a distributed fashion where different elements are spread across several interconnected computer systems. Any kind of computer system or other apparatus adapted for carrying out the methods described herein is suited. A typical combination of hardware and software can be a general purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein. 
   The invention, moreover, can be embedded in a computer program product, which comprises all the features enabling the implementation of the methods described herein, and which when loaded in a computer system is able to carry out these methods. Computer program in the present context means any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: a) conversion to another language, code or notation; b) reproduction in a different material form. 
   This invention can be embodied in other forms without departing from the spirit or essential attributes thereof. Accordingly, reference should be made to the following claims, rather than to the foregoing specification, as indicating the scope of the invention.