QUANTIZATION OF CHANNEL STATE INFORMATION IN MULTIPLE ANTENNA SYSTEMS

0Associated
Cases 
0Associated
Defendants 
0Accused
Products 
0Forward
Citations 
0
Petitions 
4
Assignments
First Claim
1. A method for wireless reception by a user device comprising a multipleantenna receiver, from a multipleantenna transmitter, the method comprising:
 storing a codebook including prequantized channel vectors each having a length N, wherein N is a number of antennas at the transmitter, and wherein N is greater than 1; and
in a multiuser multiple input and multiple output (MIMO) mode;
transmitting one index corresponding to one of the prequantized channel vectors to the multipleantenna transmitter;
receiving a signal from the multipleantenna transmitter including data for at least two and no more than N user devices based on the transmitted index; and
recovering data from the received signal, the data transmitted using the prequantized vector corresponding to the index.
4 Assignments
0 Petitions
Accused Products
Abstract
A method of transmission over multiple wireless channels in a multiple antenna system includes storing channel modulation matrices at a transmitter; receiving quantized channel state information at the transmitter from plural receivers; selecting a transmission modulation matrix using the quantized channel state information from the stored channel modulation matrices; and transmitting over the multiple channels to the plural receivers using the selected transmission modulation matrix. In another embodiment, the method includes storing, at one or more receivers, indexes of modulation matrices generated by a capacity enhancing algorithm; upon a selected one of the one or more receivers receiving a transmission from the transmitter, the selected receiver selecting a modulation matrix from the stored modulation matrices that optimizes transmission between the transmitter and the selected receiver; the selected receiver sending an index representing the selected modulation matrix; and receiving the index at the transmitter from the selected receiver.
0 Citations
No References
No References
21 Claims
 1. A method for wireless reception by a user device comprising a multipleantenna receiver, from a multipleantenna transmitter, the method comprising:
storing a codebook including prequantized channel vectors each having a length N, wherein N is a number of antennas at the transmitter, and wherein N is greater than 1; and in a multiuser multiple input and multiple output (MIMO) mode; transmitting one index corresponding to one of the prequantized channel vectors to the multipleantenna transmitter; receiving a signal from the multipleantenna transmitter including data for at least two and no more than N user devices based on the transmitted index; and recovering data from the received signal, the data transmitted using the prequantized vector corresponding to the index.  View Dependent Claims (2, 3, 4, 5, 6, 7)
 8. A user device comprising:
a processor; a plurality of antennas; a transceiver coupled to the processor and the plurality of antennas; and a memory coupled to the processor which stores a codebook including prequantized channel vectors each having a length N, wherein N is a number of antennas at a multipleantenna transmitter, and wherein N is greater than 1; and wherein the processor, the transceiver, and the plurality of antennas are operable to, in a multiuser multiple input and multiple output (MIMO) mode; transmit one index corresponding to one of the prequantized channel vectors to the multipleantenna transmitter; receive a signal from the multipleantenna transmitter including data for at least two and no more than N user devices based on the transmitted index; and recover data from the received signal, the data transmitted using the prequantized vector corresponding to the index.  View Dependent Claims (9, 10, 11, 12, 13, 14)
 15. A nontransitory computerreadable medium comprising instructions stored thereon which when executed by a processor of a user device operate the user device to:
store a codebook including prequantized channel vectors each having a length N, wherein N is a number of antennas at a multipleantenna transmitter, and wherein N is greater than 1; and in a multiuser multiple input and multiple output (MIMO) mode; transmit one index corresponding to one of the prequantized channel vectors to the multipleantenna transmitter; receive a signal from the multipleantenna transmitter including data for at least two and no more than N user devices based on the transmitted index; and recover data from the received signal, the data transmitted using the prequantized vector corresponding to the index.  View Dependent Claims (16, 17, 18, 19, 20, 21)
1 Specification
This application is a continuation of U.S. application Ser. No. 14/628,570, filed Feb. 23, 2015, which is a continuation of U.S. application Ser. No. 13/289,957, filed Nov. 4, 2011, now U.S. Pat. No. 8,971,467, issued Mar. 3, 2015, which is a division of U.S. application Ser. No. 11/754,965, filed May 29, 2007, now U.S. Pat. No. 8,116,391 issued Feb. 14, 2012, which claims the benefits under 35 U.S.C. § 119(e) of U.S. Provisonal Patent Application No. 60/808,806, filed May 25, 2006, the entire disclosure of which is incorporated herein by reference.
The development of the modern Internetbased data communication systems and ever increasing demand for bandwidth have spurred an unprecedented progress in development of high capacity wireless systems. The major trends in such systems design are the use of multiple antennas to provide capacity gains on fading channels and orthogonal frequency division multiplexing (OFDM) to facilitate the utilization of these capacity gains on rich scattering frequencyselective channels. Since the end of the last decade, there has been an explosion of interest in multipleinput multipleoutput systems (MIMO) and a lot of research work has been devoted to their performance limits and methods to achieve them.
One of the fundamental issued in multiple antenna systems is the availability of the channel state information at transmitter and receiver. While it is usually assumed that the perfect channel state information (CSI) is available at the receiver, the transmitter may have perfect, partial or no CSI. In case of the single user systems, the perfect CSI at the transmitter (CSIT) allows for use of a spatial waterfilling approach to achieve maximum capacity. In case of multiuser broadcast channels (the downlink), the capacity is maximized by using the so called dirty paper coding, which also depends on the availability of perfect CSIT. Such systems are usually refereed to as closedloop as opposed to openloop systems where there is no feedback from the receiver and the transmitter typically uses equalpower division between the antennas.
In practice, the CSI should be quantized to minimize feedback rate while providing satisfactory performance of the system. The problem has attracted attention of
 community and papers provided solutions for beamforming on flatfading MIMO channels where the diversity gain is the main focus. Moreover, some authors dealt with frequencyselective channels and OFDM modulation although also those papers were mainly devoted to beamforming approach.
Unfortunately, availability of full CSIT is unrealistic due to the feedback delay and noise, channel estimation errors and limited feedback bandwidth, which forces CSI to be quantized at the receiver to minimize feedback rate. The problem has attracted attention of the scientific community and papers have provided solutions for singleuser beamforming on flatfading MIMO channels, where the diversity gain is the main focus. More recently, CSI quantization results were shown for multiuser zeroforcing algorithms by Jindal.
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
We present a simple, flexible algorithm that is constructed with multiplexing approach to MIMO transmission, i.e., where the channel is used to transmit multiple data streams. We use a vector quantizer approach to construct codebooks of waterfilling covariance matrices which can be used in a wide variety of system configurations and on frequency selective channels. Moreover, we propose a solution which reduces the required average feedback rate by transmitting the indexes of only those covariance matrices which provide higher instantaneous capacity than the equal power allocation.
The foregoing aspects and many of the attendant advantages of this invention will become more readily appreciated as the same become better understood by reference to the following detailed description, when taken in conjunction with the accompanying drawings, wherein:
Embodiments will now be described with reference to the figures, in which like reference characters denote like elements, by way of example, and in which:
One of the fundamental issues in multiple antenna systems is the availability of the channel state information (CSI) at transmitter and receiver[24]. The perfect CSI at the transmitter (CSIT) enables the use of a spatial waterfilling, dirty paper coding and simultaneous transmission to multiple users, allowing the system to approach their maximum theoretical capacity. Such systems are usually referred to as closedloop as opposed to openloop systems where there is no feedback from the receiver. Closedloop systems enable major increases of system capacities, allowing the operators to multiply their revenue and maintain high quality of service at the same time.
In this work, we describe a flexible approach to CSI encoding, which can be used to construct the linear modulation matrices for both singleuser and multiuser networks. In both cases, the modulation matrices are composed of two independent parts: the eigenmode matrix and the diagonal power division matrix with the sum of entries on the diagonal equal to 1. The system operates as follows:
 1. The receiver(s)[24] estimate(s) the respective multiple antenna channel(s).
 2. Each estimated channel is decomposed using the singular value decomposition (SVD) to form the matrix of eigenmodes[30] and their respective singular values[304].
 3. If the system works in the singleuser mode, all entries in the codebook of transmitter eigenmode modulation matrices[32] and all entries in the codebook of transmitter power division matrices[32A] are tested at the receiver to choose their combination providing highest instantaneous capacity. The indices of the best transmitter eigenmode and power division matrices are then sent[34], [34A] back to the transmitter.
 4. If the system works in the multiuser mode, all entries in the codebook of receiver eigenmode vectors[32] and all entries in the codebook of receiver mode gains[32A] are tested at the receiver[24] for best match with the estimated channel (the matching function can be chosen freely by the system designer). The indices of the best receiver eigenmode and power division matrices[94] are then sent [34] back to the transmitter.
 5. Based on the received[36],[36A] indices, the transmitter chooses[38],[52],[62] the modulation matrix and uses it to transmit[40] the information to one or more users[24] at a time.
Our proposed method allows to simplify the feedback system by implementing only one set of eigenmode matrices for all values of signaltonoise ratio (SNR) and a much smaller set of power division matrices that differ slightly for different values of SNR. As a result, the required feedback bit rate is kept low and constant throughout the whole range of SNR values of interest. The additional advantage of the splitting of the modulation matrix into two parts is that it can lower the feedback bit rate for slowlyvarying channels. If the eigenmodes of the channel stay within the same region for an extended period of time, additionally, nested encoding can be performed to increase the resolution of the CSIT and improve the system capacity.
The actual design of the receiver and transmitter eigenmode and power division matrices can be done using numerical or analytical methods and is not the object of this disclosure. However, our method allows for actual implementations of systems closely approaching the theoretical capacities of MIMO channels without putting any unrealistic demand on the feedback link throughput. This is a major improvement compared to the other stateofthe art CSI quantization methods, which experience problems approaching the theoretical capacities and suffer from the early onset of capacity ceiling due to interuser interference at relatively low SNR.
We assume that the communication system consists of a transmitter equipped with n_{T }attennas[22] and a receiver[24] with N_{R }antennas[26]. A general frequency selective fading channel is modeled by a set of channel matrices H_{j }of dimension n_{R}×n_{T }defined for each subcarrier j=0,1, . . . N_{OFDM}−1. The received signal at the jth subcarrier is then given by the n_{R}dimensional vector y_{j }defined as
y_{j}=H_{j}x_{j}+n_{j } (1)
where x_{j }is the n_{T}dimensional vector of the transmitted signal and n_{j }is the n_{R}dimensional vector consisting of independent circular complex Gaussian entries with zero mean and variance 1. Moreover, we assume that power is allocated equally across all subcarriers x_{j}^{2}=P.
If the transmitter has access to the perfect channel state information about the matrix H_{j}, it can select the signaling vector x_{j }to maximize the closedloop system capacity
where Q_{j}=E[x_{j}x_{j}^{H}]. Unfortunately, optimizing the capacity in (2) requires a very large feedback rate to transmit information about optimum Q_{j }(or correspondingly H_{j}) which is impractical. Instead, we propose using a limited feedback link, with the transmitter choosing from a set of matrices {circumflex over (Q)}(n).
Using the typical approach involving singular value decomposition and optimum waterfilling, we can rewrite (1) as
y_{j}=H_{j}x_{j}+n_{j}=(U_{j}D_{j}V_{j}^{R})(V_{j}{tilde over (x)}_{j})+n_{j } (3)
where E[{tilde over (x)}_{j}{tilde over (x)}_{j}^{H}]=S_{j }constrained with Tr (S_{j})=P is a diagonal matrix describing optimum power allocation between the eigenmodes in V_{j}. Based on (3), the set of matrices Q_{j}=V_{j}S_{j}V_{j}^{H}; maximizes capacity in (2).
To construct the most efficient vector quantizer for channel feedback, the straightforward approach would be to jointly optimize signal covariance matrices {circumflex over (Q)} for all subcarriers at once. Such an approach, however, is both complex and impractical, since any change of channel description and/or power level would render the optimized quantizer suboptimal. Instead, we propose an algorithm which separately quantizes information about eigenmode matrices V_{j }in codebook {circumflex over (V)} and power allocation S_{j }in codebook Ŝ. Note that the first variable depends only on channel description and not on the power level P which simplifies the design.
We optimize the quantizers {circumflex over (V)} and Ŝ for flatfading case and we apply them separately for each subcarrier in case of OFDM modulation. Although such an approach is suboptimal, it allows a large degree of flexibility since different system setups can be supported with the same basic structure.
A. Quantizing Eigenmodes
We assume that the receiver[24] has perfect channel state information (CSIR) and attempts to separate[30] the eigenmode streams {tilde over (x)}_{j }in (3) by multiplying y_{j }with U_{j}^{H}. However, if the transmitter uses quantized eigenmode matrix set: with limited cardinality, the diagonalization of {tilde over (x)}_{j }will not be perfect. To model this, we introduce a heuristic distortion metric which is expressed as
γv(n; H)=∥DV^{H}{circumflex over (V)}(n)−D∥_{F } (4)
where {circumflex over (V)} (n) is the nth entry in the predefined set of channel diagonalization matrices and ∥·∥_{F }is the Frobenius norm. We omitted subscript entries j in (4) for the clarity of presentation.
We assume that n=0,1, . . . 2^{N}^{v}−1 where N_{v }is the number of bits per channel realization in the feedback link needed to represent the vectors {circumflex over (V)} (n). To design the quantizer using (4), we divide the whole space of channel realizations H into 2^{N}^{v }regions V_{i }where
V_{i}={H:γv(i;H)<γv(j:H) for all j≠i}. (5)
It can be shown that minimizing this metric should, on average, lead to maximizing the ergodic capacity of the channel with the quantized feedback (when γ(n;H)=0 the channel becomes perfectly diagonalized). The optimum selection of {circumflex over (V)} and regions V_{i }in (5) is an object of our current work. Here, however, we use a simple iterative heuristic based on a modified form of the Lloyd algorithm, which has very good convergence properties and usually yields good results. The algorithm starts by creating a codebook of centroids {circumflex over (V)} and, based on these results, divides the quantization space into regions V_{F}. The codebook is created as follows:[50]
 1. Create a large training set of L random matrices H(l).[46]
 2. For each random matrix H(l), perform singular value decomposition to obtain D(l) and V(l) as in (3).
 3. Set interation counter i=0. Create a set of 2^{N}^{v }random matrices Ĥ (n).
 4. For each matrix Ĥ (n) calculate corresponding {circumflex over (V)}^{(i)}(n) using singular value decomposition.
 5. For each training element H(l) and codebook entry {circumflex over (V)}^{(i)}(n) calculate the metric in (4). For every l choose indexes n_{opt}(l) corresponding to the lowest values of γv(n;H(i)).
 6. Calculate a new set {circumflex over (V)}^{(i+1)}(n) as a form of spherical average of all entries V(l) corresponding to the same index as using the following method. (The direct averaging is impossible since it does not preserve orthogonality between eigenvectors.) For all n calculate the subsets L(n)={l:n_{opt}(l)=n} and if their respective cardinalities L(n)≠0 the corresponding matrices
Q ^{(i+1)}(n) can be obtained as
where ^{I}O is an n_{T}×n_{T }all zero matrix with the exception of the upperleft corner element equal to 1. Finally, using singular value decomposition, calculate {circumflex over (V)}^{(i+1)}(n) from
where W is a dummy variable.
 7. Calculate the average distortion metric
 8. If distortion metric fulfills 
γ _{v}^{(i+1)}−γ _{v}^{(i)}/γ _{v}^{(i)}<Θ, stop. Otherwise increase i by 1 and go to 5).
 8. If distortion metric fulfills 
Upon completion of the above algorithm, the set of vectors {circumflex over (V)} can be used to calculate the regions in (5). The results of the codebook optimization are presented in
B. Quantizing Power Allocation Vectors
Having optimized[50] powerindependent entries in the codebook of channel eigenmode matrices {circumflex over (V)}, the next step is to create a codebook for power allocation Ŝ[118]. We use a distortion metric defined as
where Ŝ (k) is the kth entry in the predefined set of channel waterfilling matrices and {circumflex over (V)} (n_{opt}) is the entry in the {circumflex over (V)} codebook that minimizes metric (4) for the given H. We use k=0,1, . . . 2^{N}^{s}−1 where N_{S }is the number of bits per channel relization in the feedback link needed to represent the vectors Ŝ (k). Minimizing the metric in (8) is equivalent to minimizing the capacity loss between the optimum waterfilling using Q and the quantized waterfilling using {circumflex over (V)} and Ŝ.
Similarly to the previous problem, we divide the whole space of channel realizations H into 2^{N}^{s }regions S_{i}(P) where
S_{i}(P)={H:γs(i;H;P)<γs(j;H;P) for all j≠i}. (9)
and to create the codebook Ŝ, we use the following method:
 1. Create a large training set of L random matrices H(l).
 2. For each random matrix H(l), perform waterfilling operation to obtain optimum covariance matrices Q(l) and S(l).
 3. Set iteration counter i=0. Create[100],[104] a set of 2^{N}^{s }random diagonal matrices Ŝ^{(i)}(k) with Tr(Ŝ^{(i)}(k))=P.
 4. For every codebook entry Ŝ^{(i) }(k) and matrix Q(l) calculate[112] the metric as in (8). Choose[106] indexes k_{opt}(l) corresponding to the lowest values of γ_{S}(k;H(l);P).
 5. If γ_{S}(k_{opt}(l);H(l);P)>γ_{eq}(H(l);P) where γ_{eq}(H(l);P) is the metric corresponding to equalpower distribution defined as
set the corresponding entry k_{opt}(l)=2^{N}^{s}. For all k calculate the subsets[108] L(k)={1: k_{opt}(l)=k}.
 6. For all k=0,1, . . . 2^{N}^{s}−1[114] for which L(k)≠0, calculate[116] a new Ŝ^{(i+1)}(k) as the arithmetic average

 7. Calculate the average distortion metric

 8. If distortion metric fulfills 
γ _{s}^{(i+1)}−γ _{s}^{(i)}/γ _{s}^{(i)}<Θ stop. Otherwise increase i with 1 and go to 4).
 8. If distortion metric fulfills 
The set of vectors Ŝ is then used to calculate the regions in (9). Since waterfilling strongly depends on the power level P and {circumflex over (V)}, optimally the Ŝ should be created for every power level and number of bits N_{v }in eigenvector matrix codebook. As an example, the results of the above optimization are presented in
An interesting property of the above algorithm is that it automatically adjusts the number of entries in Ŝ according to the number of entries in {circumflex over (V)}. For low values of N_{V}, even if the algorithm for selection of Ŝ is started with high N_{S}, the optimization process will reduce the search space by reducing cardinality L(k) of certain entries to 0. As a result, for N_{V}=2,3, N_{S}=1 will suffice, while for N_{V}=4, the algorithm will usually converge to N_{S}=2. This behavior can be easily explained since for low resolution of the channel eigenvector matrices {circumflex over (V)} only low precision is necessary for describing Ŝ. Only with increasing the precision N_{V}, the precision N_{S }becomes useful.
III. VQ Algorithm for FlatFading MIMO Channels
The vector quantizers from the previous sections are first applied to a flatfading channel case. In such a case, the elements of each matrix H in (1) are independent circular complex Gaussian elements, normalized to unit variance.
The system operation can now be described as follows:
 1. The receiver[24] estimates the channel matrix H.
 2. The receiver[24] localizes the region V_{i }according to (5) and stores its index as n_{opt}.[32]
 3. Using n_{opt}, the receiver[24] places H in a region S_{i }according to (9) and stores its index as k_{opt}.
 4. If the resulting system capacity using the predefined codebook entries is higher than the capacity of equal power distribution as in
C(n_{opt},k_{opt})>log_{2 }det[I+P/n_{r}HH^{H}] (13)
indexes n_{opt }and k_{opt }are fed back to the transmitter.[34],[36]
 5. The transmitter uses[40],[38A] the received indices of a codebook entries to process its signal. If there is no feedback, power is distributed equally between the antennas[22].
Using the above algorithm, the system'"'"'s performance is lowerbounded by the performance of the corresponding openloop system and improves if the receiver [24] finds a good match between the channel realization and the existing codebook entries. The salient advantage of such an approach is its flexibility and robustness to the changes of channel model. If there are no good matches in the codebook, the feedback link is not wasted and the transmitter uses the equal power distribution. The disadvantage of the system is that the feedback link is characterized by a variable bit rate.
In case of the frequencyselective channel, flat fading algorithm is applied to the separate OFDM subcarriers. Although this approach is clearly suboptimal, it allows us to use a generic vector quantizer trained to the typical flatfading channel in a variety of other channels.
In general case, the feedback rate for such an approach would be upperbounded by N_{OFDM}(N_{V}+N_{D}). However, as pointed out by Kim et al., the correlation between the adjacent subcarriers in OFDM systems can be exploited to reduce the required feedback bit rate by proper interpolating between the corresponding optimum signalling vectors. In this work, we use a simpler method which allows the receiver[24] to simply group adjacent M subcarriers and perform joint optimization using the same codebook entry for all of them (such methods are sometimes called clustering).
A. FlatFading Channel
We tested the system on 2×2 MIMO and 4×4 MIMO channels with varying SNR and feedback rates. We tested 2×2 MIMO channel with N_{V}=2,3,4 and N_{D}=1, corresponding to total feedback rate of between 3 and 5 bits. Correspondingly, in case of 4×4 MIMO, we used N_{V}=10,12,14 and N_{D}=2, corresponding to total feedback rate between 12 and 16 bits. We define an additional parameter called feedback frequency, v which defines how often the receiver[24] requests a specific codebook entry instead of equal power distribution and an average feedback bit rate as R_{b}=v(N_{V}=N_{S}).
It is also interesting to note that increasing the quality of quantization increases the feedback frequency v. This is a consequence of the fact that there is a higher probability of finding a good transmit signal covariance matrix when there are a lot of entries in the codebook.
B. FrequencySelective Channel
We have simulated the 2×2 MIMO system using the OFDM modulation with carrier frequency: f_{c}=2 GHz; signal bandwidth; B=5 MHz, number of subcarriers; N_{OFDM}=256; ITUR M.1225 vehicular A channel model with independent channels for all pairs of transmit and receive antennas[22][26]; the guard interval equal to the maximum channel delay.
The results of simulations are presented in
We assume that the communication system consists of a transmitter equipped with n_{T }antennas[22] and K≥n_{T }mobile receivers[24] with identical statistical properties and n_{R}(k) antennas[26], where k=1,2, . . . K. The mobile user channels are modeled by a set of i.i.d. complex Gaussian channel matrices H_{k }of dimension n_{R}(k)×n_{T}. (Throughout the document we use the uppercase bold letters to denote matrices and lowercase bold letters to denote vectors.) The received signal of the kth user is then given by the n_{R}(k)dimensional vector y_{k }defined as
y_{k}=H_{k}x+n_{k } (14)
where x is the n_{T}dimensional vector of the transmitted signal and n_{k }is the n_{R}(k)dimensional vector consisting of independent circular complex Gaussian entries with zero means and unit variances. Finally, we assume that the total transmit power at each transmission instant is equal to P. The above assumptions cover a wide class of wireless systems and can easily be further expanded to include orthogonal frequency division multiplexing (OFDM) on frequencyselective channels or users with different received powers (due to varying path loss and shadowing).
Although theoretically it is possible to design the optimum CSI quantizer for the above canonical version of the system, such an approach may be impractical. For example, subsets of receivers[24] with different numbers of receive antennas[26] would require different CSI codebooks and quantizer design for such a system would be very complex. To alleviate this problem, we assume that the base station treats each user as if it was equipped with only one antenna[26], regardless of the actual number of antennas[26] it may have. While suboptimal, such an approach allows any type of a receiver[24] to work with any base station and may be even used to reduce the quantization noise as shown by Jindal. We call such system setup virtual multipleinput singleoutput (MISO) since, even though physically each transmitterreceiver link may be a MIMO link, from the base station'"'"'s perspective it behaves like MISO.
We follow the approach of Spencer et al., where each user performs singular value decomposition of H_{k}=U_{k}S_{k}V_{k}^{H }[30] and converts its respective H_{k }to a n_{T}dimensional vector h_{k }as
h_{k}=u_{k}^{H}H_{k}=s_{k}^{max}v_{k}^{h } (15)
[42] where s_{k}^{max }is the largest singular value[30A] of S_{k }and u_{k }and v_{k }are its corresponding vectors[30] from the unitary matrices U_{k }and V_{k}, respectively.
Based on (15), the only information that is fed[36],[36A] back from [34],[34A] the receivers[24] to the transmitter is the information about the vectors h_{k}, which vastly simplifies the system design and allows for easy extensions. For example, if multiple streams per receiver are allowed; the channel information for each stream can be quantized using exactly the same algorithm.
VII. System Design with Full CSIT
In this section, we present typical approaches for the system design when full CSIT is available. As a simple form of multiuser selection diversity, we define a subset a active users with cardinality n_{T }as S. Furthermore, for each subset S, we define a matrix H[S]=[h_{1}^{T}, h_{2}^{T}, . . . , h_{n}_{T}^{T}]^{T}, whose rows are equal to the channel vectors h_{k }of the active users.
A. Cooperative Receivers
The upperbound for system sumrate is obtained when the users are assumed to be able to cooperate. With such an assumption, it is possible to perform singular value decomposition of the joint channel as H[S]=U[S] S [S]V^{H }[S]. Defining s_{i }as the entries on the diagonal of S[S] allows to calculate the maximum sunrate of a cooperative system as
where ξ[S] is the solution of the waterfilling equation Σ_{i=1}^{R}^{T}[ξ[S]−1/s_{i}^{2}]_{+}=P.
B. ZeroForcing DirtyPaper Coding
In practice, the receivers[24] cannot cooperate and the full diagonalization of the matrix H[S] is impossible. The problem can still be solved by using linear zeroforcing (ZF) followed by nonlinear dirty paper precoding, which effectively diagonalizes the channels to the active users. The matrix H[S] is first QRdecomposed as H[S]=L[S]Q[S], where L[S] is lower triangular matrix and Q[S] is a unitary matrix. After multiplying the input vector x by Q[S]^{H}, the resulting channel is equal to L[S], i.e., the first user does not suffer from any multiuser interference (MUI), the second user receives interference only from the first user, etc.
In this case, noncausal knowledge of the previously encoded signals can be used in DPC encoder allowing the signal for each receiver[24]i>1 to be constructed in such a way that the previously encoded signals for users k<i, are effectively canceled at the ith receiver[24]. Since the effective channel matrix is lower triangular, the channel will be diagonalized after the DPC, with l_{i }being the entries on the diagonal of L[S]. This leads to maximum sumrate calculation as
where ξ[S^{ord}] is the solution of the waterfilling equation. Note that, as opposed to (16), the maximization is performed over ordered versions of the active sets S.
C. Linear Modulation
Even though, theoretically, the above approach solves the problem of the receiver[24] noncooperation, its inherent problem is the absence of effective, low complexity DPC algorithms. Moreover, since dirtypaper coding requires full CSIT it is likely that systems employing DPC would require significantly higher quality of channel feedback than simpler, linear preceding systems.
We use the linear block diagonalization approach, which eliminates MUI by composing the modulation matrix B[S] of properly chosen nullspace eigenmodes for each set S. For each receiver[24] i ∈ S, the ith row of the matrix H[S] is first deleted to form H[S_{i}]. In the next step, the singular value decomposition is performed[30],[30A] to yield H[S_{i}]=U[S_{i}]S[S_{i}]V^{H}[S_{i}]. By setting the ith column of B[S] to be equal to the rightmost vector of V[S_{i}], we force the signal to the ith receiver[24] to be transmitted in the nullspace of the other users and no MUI will appear. In other words, the channel will be diagonalized with d_{i }being the entries on the diagonal of H[S]B[S]. This leads to formula
where ξ[S] is the solution of the waterfilling equation.
As an example,
VIII. System Design with Partial CSIT
The systems discussed so far are usually analyzed with assumption that, at any given time, the transmitter will have full information about the matrices H[S]. Unfortunately, such an assumption is rather unrealistic and imperfect CSIT may render solutions relying on full CSIT useless.
In practice, the receivers[24] will quantize the information about their effective channel, vectors h_{k}[30] as ĥ_{k}[32 ], according to some optimization criterion. Based on this information, the transmitter will select[38],[52],[62] the best available modulation matrix {circumflex over (B)} from the predefined transmitter codebook and perform waterfilling using the best predefined power division matrix {circumflex over (D)}. Regardless of the optimization criterion, the finite cardinality of the vector codebooks will increase MUI and lower system throughput.
The fundamental difference between CSI encoding in singleuser and multipleuser systems is that during normal system operation, each receiver[24] chooses its vector ĥ_{k }without any cooperation with other receivers[24]. This means that the design of optimum codebook for h_{k }must precede the design of codebooks {circumflex over (B)} and {circumflex over (D)}. Based on (15), one can see that channel state information in form of the vector h_{k }consists of the scalar value of channel gain[30A] s_{k}^{max }and the eigenmode[30] v_{k}^{H}. Since these values are independent, we propose an algorithm which separately quantizes the information about eigenmodes[32] in codebook ŷ and amplitude gains[32A] in codebook ŝ.
A. Quantization[32],[51] of Receiver Channel Eigenmodes
We assume that N_{v }is the number of bits per channel realization in the feedback link needed to represent the vectors v_{k }in (15). We divide the space of all possible v'"'"'s into 2^{N}^{v }regions v_{i }
v_{i}={v:γ_{v}(i:v)<γ_{v}(j;v) for all j≠i} (19)
where γ_{v}(n; v) is a distortion function. Within each region v_{i}, we define a centroid vector {circumflex over (v)}(i)[49 ], which will be used as a representation of the region. The design of the codebook {circumflex over (v)} can be done analytically and/or heuristically using for example the Lloyd algorithm. In this work, we define the distortion function as the angle between the actual vector v and {circumflex over (v)} (i):γ_{v}(i;v)=cos^{−1}({circumflex over (v)} (i)·v), which has been shown by Rob and Rhao to maximize ergodic capacity, and use Lloyd algorithm to train[47] the vector quantizer. Note that the construction of {circumflex over (v)} is independent of the transmit power.
B. Quantization[32A] of Receiver Amplitude Gains
We assume that N_{s }is the number of bits per channel realization in the feedback link needed to represent the scalar s_{k}^{max }in (15). We divide the space of all possible channel realizations s=s_{k}^{max }into 2^{N}^{s }regions s_{i }
s_{i}={s:ŝ(i)−s<ŝfor all j≠i} (20)
where ŝ(i)[100] are scalar centroids representing regions s_{i}. In this work, we perform the design[102] of the codebook ŝ using the classical nonuniform quantizer design algorithm with distortion function given by quadratic function of the quantization error as ∈ (i;s)=(s−ŝ(i))^{2}.
The construction of the codebook ŝ is generally dependent on the transmit power level. However, as pointed out above the differences between the codebooks ŝ for different power regions are quite small. This allows us to create only one codebook ŝ and use it for all transmit powers.
C. Quantization of the Transmitter Modulation Matrices
The calculation of the modulation matrix {circumflex over (B)} is based on the given codebook {circumflex over (v)}. We assume that the quantization[32] of the channel eigenmodes is performed at the receiver[24] side and each user transmits[34] back its codebook index i_{k}. The indices are then used at the transmitter side to select[38][52][62] the modulation matrix {circumflex over (B)}(i_{1}, i_{2}, . . . , i_{K}). Since, from the linear transmitter point of view, ordering of the users is not important, we will use the convention that the indices (i_{1}, i_{2}, . . . i_{K}) are always presented in the ascending order. For example, in a system with K=2, n_{T}=2 and lbit vector quantizers {circumflex over (v)}, there will exist only three possible modulation matrices corresponding to sets of {circumflex over (v)} indices (1,1), (1,2) and (2,2).
In the context of vector quantizing, the design of the modulation matrices can no longer be based on the algorithm presented in Section VII.C. Using this method with quantized versions of h_{k }produces wrong result when identical indices i_{k}, are returned and the receiver[24] attempts to jointly optimize transmission to the users with seemingly identical channel vectors ĥ_{k}. Instead, we propose the following algorithm to optimize the set of matrices {circumflex over (B)}(i_{1}, i_{2}, . . . , i_{K}):
 1. Create a large set of Nn_{T }random matrices[46] H_{k}, where N is the number of training sets with n_{T }users each.
 2. Far each random matrix H_{k}, perform singular value decomposition[68] and obtain h_{k}[70] as in (15).
 3. For each vector h_{k }store[74] the index i_{k }of the corresponding entry {circumflex over (v)} (i_{k}).
 4. Divide[76] the entire set of matrices H_{k }into N sets with n_{T }elements each.
 5. Sort[78] the indices i_{k }within each set l in the ascending order. Map[78] all unique sets of sorted indices to a set of unique indices I_{B }(for example (1,1)→I_{B}=1; (1,2)→I_{B}=2; (2,2)→I_{B}=3. . . ).
 6. In each set l, reorder the corresponding channel vectors h_{k }according to their indices i_{k }and calculate[80] the optimum B_{l }using the method from Section VII.C.
 7. Calculate[84] a set {circumflex over (B)} (I_{B}) as a columnwise spherical average of all entries B_{1 }corresponding to the same[82] index I_{B}.
After calculation of I_{B} modulation matrices {circumflex over (B)}, the remaining part of system design is the calculation of the waterfilling matrices {circumflex over (D)}, which divide the powers between the eigenmodes at the transmitter. The procedure for creation of codebook {circumflex over (D)}[118] is similar to the above algorithm, with the difference that the entries ŝ(n_{k}) are used instead of {circumflex over (v)}(i_{k}), and the spherical averaging of the waterfilling matrices is performed diagonally, not columnwise. Explicitly:
 1. Create a large set of Nn_{T }random matrices[46] H_{k}, where N is the number of training sets with n_{T }users each.
 2. For each random matrix H_{k}, perform singular value decomposition[104] and obtain h_{k }as in (15).
 3. For each vector h_{k }store the index n_{k }of the corresponding entry ŝ(n_{k}).[106]
 4. Divide the entire set of matrices H_{k }into N sets with n_{T }elements each.[108]
 5. Sort the indices n_{k }within each set l in the ascending order. Map all unique sets of sorted indices to a set of unique indices I_{D }(for example (1, 1)→I_{D}=1; (1, 2)→I_{D}=2; (2,2)→I_{D}=3. . . ).[110]
 6. In each set l, reorder the corresponding channel vectors h_{k }according to their indices n_{k }and calculate the optimum D_{I }using the method of waterfilling from Section VII.C.[112]
 7. Calculate[116] a set {circumflex over (D)} (I_{D}) as a diagonal spherical average of all entries D_{i }corresponding to the same[114] index I_{D}.
D. System Operation
The matrices {circumflex over (B)} and {circumflex over (D)} are used in the actual system in the following way:
 1. The K mobile receivers[24] estimate[30],[30A] their channels and send the indices i_{k}[34] and n_{k}[34A] of the corresponding receiver quantizer entries {circumflex over (v)}(i_{k})[32] and n_{k}[32A] to the base station.
 2. The transmitter forms l sets of users corresponding to all combinations of n_{T }users out of K. Within each set l, the indices i_{k}[58] and n_{k}[63] are sorted in the ascending order and mapped to their respective indices I_{B}(l)[60] and I_{D}(l)[64];
 3. Within each set l, the matrices {circumflex over (B)} [I_{B}(l)][52],[62] and {circumflex over (D)} [I_{D}(l)][54],[38A] are used to estimate[56],[66] instantaneous sumrate R(l).
 4. The base station flags the set of users providing highest R(l) as active for the next transmission epoch.
 5. The transmitter uses the selected matrices to transmit information.
E. Nested Quantization of Channel Eigenmodes
The above algorithm does not assume any previous knowledge of the channel and the feedback rate required to initially acquire the channel may be high. In order to reduce it on slowly varying channels, we propose a nested quantization method shown in
We have implemented our system using a base station with n_{T}=2 and a set of K mobile receivers[24] with identical statistical properties and n_{K}(k)=n_{T}=2. We have varied the number of users from 2 to 10 and optimized vector quantizers using methods presented above. Each system setup has been simulated using 10,000 independent channel realizations.
Note that further feedback rate reduction can be achieved with the algorithm presented by Jindal. However, we will not present these results here.
In case of multiple user systems, multiuser diversity may be achieved by a simple timedivision multiplexing mode (when only one user at a time is given the full bandwidth of the channel) or scheduling the transmission to multiple users[24] at a time. Here we analyze the former approach and assume that the base station will schedule only one user[24] for transmission.
If the system throughput maximization is the main objective of the system design, the transmitter must be able to estimate[56] the throughput of each of the users, given the codebook indices it received from each of them. Assuming that the kth user returned indices requesting the eigenmode codeword {circumflex over (V)}_{k }and power allocation codeword Ŝ_{k}, the user'"'"'s actual throughput is given as
R_{k}^{single}=log_{2 }det[I_{n}_{R}(k)+H_{k}{circumflex over (V)}_{k}Ŝ_{k}{circumflex over (V)}_{k}^{H}H_{k}^{H}] (21)
Using singular value decomposition of channel matrix H_{k }and equality det[I_{n}_{R}(k)+H_{k}{circumflex over (Q)}_{k}H_{k}^{H}]=det[I_{n}_{T}+{circumflex over (Q)}_{k}H_{k}^{H}H_{k}], it can be shown that
R_{k}^{single}=log_{2 }det[I_{n}_{T}+{circumflex over (V)}_{k}Ŝ_{k}{circumflex over (V)}_{k}^{H}H_{k}^{H}H_{k}]=log_{2 }det[I_{n}_{R}(k)+Ŝ_{k}E_{k}^{H}D_{k}^{2}E_{k}] (22)
where E_{k}=V_{k}^{H}{circumflex over (V)}_{k }is a matrix representing the match between the actual eigenmode matrix of the channel and its quantized representation (with perfect match E_{k}=I_{n}_{T}).
In practice, the actual realization of E_{k }will not be known at the transmitter, and its mean quantized value Ê_{k}, matched to {circumflex over (V)}_{k }must be used instead. Similarly, the transmitter must use a quantized mean value {circumflex over (D)}_{k}, which is matched to the reported waterfilling matrix Ŝ_{k}. This leads to the selection criterion for the optimum user[24] k_{opt}.
Similarly to singleuser selection, also in the case of multiuser selection the choice of active users must be made based on incomplete CSIT. The quantized CSI will result in appearance of multiuser interference. We represent this situation using variable Ê_{k,l}={circumflex over (v)}_{k}^{H}[{circumflex over (B)}_{S}]_{l}, which models the dot product of the quantized eigenmode {circumflex over (v)}_{k}^{H }reported by the kth user in the set S, and the lth vector in the selected modulation matrix[52] {circumflex over (B)}_{S}.
Moreover, assuming that the quantized singular value of the kth user in the set S is given by {circumflex over (d)}_{k }and the transmitter uses power allocation matrix[54] Ŝ_{S}, the estimated sumrate of the subset S is given as[56 ]
Note that, due to the finite resolution of the vector quantizer, the multiuser interference will lower the max sumrate R^{multi}(S)<R^{max }for all S.
Based on (24) the choice of the active set of users is then performed as
One can also modify the algorithm presented in section II.A as follows: we use a simple iterative heuristic based on a modified form of the Lloyd algorithm, which has very good convergence properties. The algorithm starts by creating a random codebook of centroids {circumflex over (v)} and iteratively updates it until the mean distortion metric changes become smaller than a given threshold.
The algorithm works as follows:
 1. Create a large training set of L random matrices H_{l}.[46]
 2. For each random matrix H_{l}, perform singular value decomposition to obtain V_{i }as in (3).
 3. Align orientation of each vector in V_{l }to lie within the same 2n_{T}dimensional hemisphere.
 4. Set iteration counter i=0. Create a set of 2^{N}^{v }random matrices Ĥ(n).
 5. For each matrix Ĥ(n), calculate corresponding {circumflex over (V)}^{(i)}(n) using singular value decomposition.
 6. Align orientation of each vector in {circumflex over (V)}^{(i)}(n) to lie within the same 2n_{T}dimensional hemisphere.
 7. For each training element H_{l }and codebook entry {circumflex over (V)}^{(i)}(n), calculate the metric in (4). For every l, choose the index n_{opt}(l) corresponding to the lowest value of γv(n;H_{l}). Calculate the subsets L(n)={l: n_{opt}(l)=n} for all n.
 8. Calculate new matrix {circumflex over (V)}^{(i+1)}(n) as a constrained spherical average
V_{l} ^{O }of all entries V_{l }corresponding to the same index n
{circumflex over (V)}^{(i+1)}(n)=
 9. For each region n, where cardinality L(n)≠0, calculate the mean eigenmode match matrix

 10. Calculate the average distortion metric.
 11. If the distortion metric fulfills 
γ _{v}^{(i+1)}−γ _{v}^{(i)}/γ _{v}^{(i)}<Θ, where Θ is a design parameter, stop. Otherwise increase i by 1, and go to 7).
 11. If the distortion metric fulfills 
Upon completion of the above algorithm, the final set or vectors {circumflex over (V)} can be used to calculate the regions V_{i }in (5).
The design of the transmitter modulation matrices presented in section IX.C can be modified as follows: we propose the following algorithm to optimize the set of matrices {circumflex over (B)}(i_{1},i_{2}, . . . i_{R}_{T}:
 1. Create a large set of Ln_{T }random matrices H_{l}, where L is the number of training sets with n_{T }user each.
 2. For each random matrix H_{l}, perform singular value decomposition[68] an obtain h_{l}[70] as in (15).
 3. Align orientation of each vector h_{l }to lie within the same 2n_{T}dimensional hemisphere.
 4. For each vector h_{l}, store[74] the index i_{l }of the corresponding entry {circumflex over (v)}(i_{l}).
 5. Divide[76] the entire set of matrices H_{l }into L sets with n_{T }elements each.
 6. Sort[78] the indices i_{l }within each set in the ascending order, Map[78] all unique sets of sorted eigenmode indices i_{l }to a set of unique modulation matrix indices I_{B }(for example, if n_{T}=2: (1,1)→I_{B}=1; (1,2)→I_{B}=2; (2,2)→I_{B}=3. . . ).
 7. In each set L(I_{B})={l:(i_{1},i_{2}, . . . i_{R}_{T})→I_{B}}, reorder the channel vectors h_{l }according to the indices i_{l }and calculated[80] the optimum B_{l }using the method from Section VII.C.
 8. Calculate[84] the set {circumflex over (B)} (I_{B}) as a columnwise spherical average of all entries B_{l }corresponding to the same[82] index I_{B }as
∀_{n=1,2, . . .n}_{T}[{circumflex over (B)}(I_{B})]_{n}=
After completion of the above algorithm, the transmitter will have the set of I_{B} modulation matrices {circumflex over (B)} (I_{B}) corresponding to all sorted combinations of the channel eigenmode indices that can be reported by the receivers.
To clarify our notation for spherical average used in (26) and (28), we outline a method to calculate a spherical average of a set of unitlength vectors, and a spherical average of a set of unitary matrices, preserving the mutual perpendicularity of the component vectors. We use the notation
where the unitlength vector x is found using one of the constrained nonlinear of optimization algorithms.
In case of the spherical average of a set of unitary matrices, denoted as
Immaterial modifications may be made to the embodiments described here without departing from what is covered by the claims.
While illustrative embodiments have been illustrated and described, it will be appreciated that various changes can be made therein without departing from the spirit and scope of the invention.