1. Field of the Invention
The present invention relates to methods and apparatus for establishing a precoding codebook for a Multiple Input Multiple Output (MIMO) wireless communication system.
2. Description of the Related Art
Orthogonal Frequency Division Multiplexing (OFDM) is a popular wireless communication technology to multiplex data in frequency domain.
A multiple antenna communication system, which is often referred to as multiple input multiple output (MIMO) system, is widely used in combination with OFDM technology, in a wireless communication system to improve system performance.
In a MIMO system, both transmitter and receiver are equipped with multiple antennas. Therefore, the transmitter is capable of transmitting independent data streams simultaneously in the same frequency band. Unlike traditional means of increasing throughput (i.e., the amount of data transmitted per time unit) by increasing bandwidth or increasing overall transmit power, MIMO technology increases the spectral efficiency of a wireless communication system by exploiting the additional dimension of freedom in the space domain due to multiple antennas. Therefore MIMO technology can significantly increase the throughput and range of the system.
When the transmission channels between the transmitters and the receivers are relatively constant, it is possible to use a closed-loop MIMO scheme to further improve system performance. In a closed-loop MIMO system, the receiver informs the transmitter of feedback information regarding the channel condition. The transmitter utilizes this feedback information, together with other considerations such as scheduling priority, data and resource availability, to optimize the transmission scheme.
A popular closed-loop MIMO scheme is MIMO preceding. With precoding, the data streams to be transmitted are precoded, i.e., pre-multiplied by a precoding matrix, before being passed on to the multiple transmit antennas in a transmitter.
In a contemporary closed-loop MIMO precoding scheme, when a transmitter precodes data before transmitting the data to a receiver, the transmitter informs the receiver of the precoding information such as an identification of the precoding matrix by transmitting dedicated pilots (also referred to as reference signals) or explicit control information that carries the precoding information.
A significant problem with the contemporary single user precoding codebooks is that the codebooks require either too much memory for storage or too complicated math to generate in real time.
It is therefore an object of the present invention to provide an improved system and an improved method for transmitting data in a multiple input multiple output (MIMO) system.
It is another object to provide an improved system and an improved method to establish a simple precoding codebook.
According to one aspect of the present invention, a codebook is established to include a plurality of codebook entries. Each codebook entry includes four sets of vectors for four respective corresponding transmission ranks. The codebook is established by:
where V1 through V20 are certain vectors.
The vectors V1 through V20 may be respectively established by:
V1T=[1 1 1 1],
V
2
T=[1 1 −1 1],
V
3
T=[1 −1 1 −1],
V
4
T=[1 −1 −1 1],
V
5
T=[1 j −1 −j],
V
6
T
=[−j 1 −j 1],
V
7
T=[−1 j 1 −j],
V8T=[j 1 j 1],
V
9
T=└1(1+j)/√{square root over (2)}j(−1+j)/√{square root over (2)}┘,
V
10
T=└1−j)/√{square root over (2)}1(−1−j)/√{square root over (2)}−j┘,
V
11
T
=└−j(−1+j)/√{square root over (2)}1(−1−j)/√{square root over (2)}┘
V
12
T=└(−1−j)/√{square root over (2)}j(−1+j)/√{square root over (2)}1┘,
V
13
T=└1(−1+j)/√{square root over (2)}−j(1+j)/√{square root over (2)}┘,
V
14
T=└(−1−j)/√{square root over (2)}1(1−j)/√{square root over (2)}j┘,
V
15
T
=└j(1+j)/√{square root over (2)}1(1−j)/√{square root over (2)}┘,
V
16
T
=└(1−j)/√{square root over (2)}−j(1+j)/√{square root over (2)}1┘,
V
17
T=[1 1 1 −1],
V
18
T=[1 1 −1 1],
V
19
T=[1 −1 1 1], and
V
20
T=[−1 1 1 1].
Alternatively, the certain vectors V1 through V20 may be established from five matrices M1 to M5 generated from a Householder equation and five input vectors u1 to u5. The five matrices M1 to M5 are given as:
where the five input vectors u1 to u5 are:
u
1
T=[1 −1 −1 −1],
u
2
T=[1 j 1 −j],
u
3
T=└1(−1+j)/√{square root over (2)}j(1+j)/√{square root over (2)}┘,
u
4
T=└1(1+j)/√{square root over (2)}−j(−1+j)/√{square root over (2)}┘, and
u
5
T=[1 −1 −1 1].
Still alternatively, the certain vectors V1 through V20 may be established from five matrices M1 to M5 generated from rotating certain unitary matrices. The rotating operation is established by a rotation matrix Urot given as:
In addition, the five matrices M1 to M5 are established by
Still alternatively, the certain vectors V1 through V20 may be established from five matrices M1 to M5. The five matrices M1 to M5 are established by:
A subset of the vectors in the codebook may be phase shifted to generate a new codebook:
A more complete appreciation of the invention, and many of the attendant advantages thereof, will be readily apparent as the same becomes better understood by reference to the following detailed description when considered in conjunction with the accompanying drawings in which like reference symbols indicate the same or similar components, wherein:
The total bandwidth in an OFDM system is divided into narrowband frequency units called subcarriers. The number of subcarriers is equal to the FFT/IFFT size N used in the system. In general, the number of subcarriers used for data is less than N because some subcarriers at the edge of the frequency spectrum are reserved as guard subcarriers. In general, no information is transmitted on guard subcarriers.
Multiple Input Multiple Output (MIMO) schemes use multiple transmission antennas and multiple receive antennas to improve the capacity and reliability of a wireless communication channel. A MIMO system promises linear increase in capacity with K where K is the minimum of number of transmit (M) and receive antennas (N), i.e. K=min(M,N). A simplified example of a 4×4 MIMO system is shown in
The MIMO channel estimation consists of estimating the channel gain and phase information for links from each of the transmission antennas to each of the receive antennas. Therefore, the channel for M×N MIMO system consists of an N×M matrix:
where hij represents the channel gain from transmission antenna j to receive antenna i. In order to enable the estimations of the elements of the MIMO channel matrix, separate pilots are transmitted from each of the transmission antennas.
An example of single-code word MIMO scheme is given in
In case of multiple codeword MIMO transmission, shown in
In the third Generation Partnership Project (3GPP) Long Term Evolution (LTE) systems, a maximum of two codewords are used for transmission of two, three or four MIMO layers. As shown in
An example of single-user (SU) MIMO system is shown in
In a closed-loop MIMO precoding system, for each transmission antenna size we construct a set of preceding matrices (i.e., codewords) and let this set be known at both the Node-B (i.e., the base station) and the user equipment (UE). We call this set of matrices as the “codebook” and denote it P={(P1 . . . , PL}. Here L=2q denotes the size of the codebook and q is the number of (feedback) bits needed to index the codebook. In a limited feedback precoding MIMO system illustrated in
An example of precoding is discrete Fourier transform (DFT)-based or Fourier precoding. A Fourier matrix is a N×N square matrix with entries given by:
P
N
=e
j2πmn/N
m,n=0, 1 . . . (N−1) (2)
For example, a 2×2 Fourier matrix can be expressed as:
Similarly, a 4×4 Fourier matrix can be expressed as:
Multiple Fourier matrices can be defined by introducing a shift parameter (g/G) in the Fourier matrix. The entry of the multiple Fourier matrices is given by:
A set of four 2×2 Fourier matrices can be defined by taking G=4, and g=0, 1, 2 and 3, and are written as:
In a first embodiment according to the principles of the present invention, we design a SU-MIMO codebook as a function of a set of input vectors. Given a set of input vectors as shown Table 1, we can generate the codebooks per rank as shown in Table 2.
In a second embodiment according to the principles of the present invention, we can apply certain phase shifts to the vectors in order to maximize the chordal distance between each pair of matrices in each rank. Chordal distance is a distance between a pair of matrices. Exemplary phase shifts are given in Table 3.
These two tables can be compressed into a more compact form as shown in the table below.
In a third embodiment according to the principles of the present invention, the basis vectors v1 to v20 in Table 2 and Table 4 may be generated from source unitary matrices M1 to M5 generated from a Householder equation and five input vectors u1 to u5, or any unitary rotation thereof. The input vectors u1 to u5 are given as:
u
1
T=[1 −1 −1 −1] (7)
u
2
T=[1 j 1 −j] (8)
u
3
T=└1(−1+j)/√{square root over (2)}j(1+j)/√{square root over (2)}┘ (9)
u
4
T=└1(1+j)/√{square root over (2)}−j(−1+j)/√{square root over (2)}┘ (10)
u
5
T=[1 −1 −1 1] (11)
Accordingly, the matrices M1 to M5 generated from the Householder equation and the input vectors u1 to u5 are established as:
In addition, matrices M1, M2 and M5 may be rotated to generated new matrices M1′, M2′ and M5′, respectively, to be used as source matrices. The rotation operation may be established by a rotation matrix Urot given as:
Accordingly, the rotated matrices M1′, M2′ and M5′, are established as:
We could also use as source a combination of a DFT matrix M2 as given by Equation (13), a Walsh matrix M1 as given by Equation (12), block diagonal matrix and any unitary rotation thereof. Block diagonal matrix MB refers to a class of matrices that are given by the following 4 by 4 matrix:
where A and B are both 2 by 2 matrices.
Given these source matrices M1 to M5, and M1′, M2′ and M5′, we can generate the codebook as rotated column subset selections of these matrices as listed in Table 4.
One of the properties of the codebooks shown in Table 2 and 4 is that these codebook are fully nested. In other words, the rank-1 vectors are column subsets of the rank-2 matrices, the rank-2 matrices are a subset of the rank-3 matrices, and the rank-3 matrices are a subset of the rank-4 precoding matrices. The advantage of this is that when the precoded channel is calculated for a given rank, no further complex multiplications and additions are required to calculate the precoded channel of the lower ranks. In fact the lower rank precoded channels are column subsets of the higher rank precoded channels.
While the present invention has been shown and described in connection with the preferred embodiments, it will be apparent to those skilled in the art that modifications and variations can be made without departing from the spirit and scope of the invention as defined by the appended claims.
This application makes reference to, incorporates the same herein, and claims all benefits accruing under 35 U.S.C. §119 from a provisional application earlier filed in the U.S. Patent & Trademark Office on 26 Jun. 2007 and there duly assigned Ser. No. 60/929,396.
Number | Date | Country | |
---|---|---|---|
60929396 | Jun 2007 | US |