U.S. patent application number 13/547422 was filed with the patent office on 2012-11-01 for codebook method for a multiple input multiple output wireless system.
This patent application is currently assigned to NEC LABORATORIES AMERICA, INC.. Invention is credited to Mohammad A. Khojastepour, Mohammad Madihian, Xiaodong Wang.
Application Number | 20120275535 13/547422 |
Document ID | / |
Family ID | 39939494 |
Filed Date | 2012-11-01 |
United States Patent
Application |
20120275535 |
Kind Code |
A1 |
Khojastepour; Mohammad A. ;
et al. |
November 1, 2012 |
Codebook Method for a Multiple Input Multiple Output Wireless
System
Abstract
A method for wireless encoding includes encoding wireless
multiple input and multiple output signals in accordance with a
codebook being one of a discrete codebook restricting elements of
codebook entries to be within a predetermined finite set of complex
numbers and a constant amplitude codebook including each entry in
its codebook having equal column norm and equal row norm. In a
preferred embodiment the digital codebook further includes
restricting elements of a finite set in the discrete codebook to be
in the form of k.sup.a+jk.sup.b for a base-k computer and the
constant amplitude codebook further includes being obtained through
a series of successive householder transformations. In a preferred
embodiment the codebook is configured as one of a constrained
codebook in which the codebook is configured for multiple scenarios
and a discrete codebook.
Inventors: |
Khojastepour; Mohammad A.;
(Lawrenceville, NJ) ; Wang; Xiaodong; (New York,
NY) ; Madihian; Mohammad; (Plainsboro, NJ) |
Assignee: |
NEC LABORATORIES AMERICA,
INC.
Princeton
NJ
|
Family ID: |
39939494 |
Appl. No.: |
13/547422 |
Filed: |
July 12, 2012 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
13370441 |
Feb 10, 2012 |
|
|
|
13547422 |
|
|
|
|
12112110 |
Apr 30, 2008 |
8135083 |
|
|
13370441 |
|
|
|
|
60915239 |
May 1, 2007 |
|
|
|
Current U.S.
Class: |
375/267 |
Current CPC
Class: |
H04L 25/03006 20130101;
H04L 2025/03426 20130101; H04L 25/03343 20130101 |
Class at
Publication: |
375/267 |
International
Class: |
H04B 7/06 20060101
H04B007/06; H04B 7/08 20060101 H04B007/08 |
Claims
1. A base station used in a multi-rank beamforming wireless
communication system, the base station comprising: a precoding unit
to precode a signal in accordance with a codebook comprising a
plurality of codebook entries per rank, the codebook restricting
elements of codebook entries to be within a predetermined finite
set of complex numbers, and each entry in the codebook having both
equal column norm and equal row norm; and a transmission unit to
transmit the precoded signal to a mobile terminal, wherein the
wireless communication system has at least 4 transmission
antennas.
2. The base station as in claim 1, wherein the predetermined finite
set consists of numbers in a form of 2.sup.a+j2.sup.b, where a and
b are positive integers.
3. The base station as in claim 1, wherein the predetermined finite
set consists of numbers in a form of k.sup.a+jk.sup.b, where a and
b are positive integers.
4. The base station as in claim 1, wherein the codebook is obtained
through a series of successive householder transformations.
5. The base station as in claim 4, wherein, for 4 transmit antenna
communication, the codebook comprises a set of 4 by 1 vectors where
elements of each vector are taken from a set of complex numbers in
a form of {1, e.sup.2.pi.ja.sup.1, e.sup.2.pi.ja.sup.2, . . . ,
e.sup.2.pi.ja.sup.g}, and the first element of each vector is 1,
where a.sub.1, . . . , and a.sub.g are complex numbers.
6. The base station as in claim 1, wherein the codebook is
configured for multiple scenarios.
7. The base station as in claim 6, wherein the multiple scenarios
comprise a different set of channel statistics.
8. The base station as in claim 7, wherein the codebook comprises a
union set configuration wherein a union of the set of all channel
realizations is taken for all scenarios and the codebook is
configured for such union set.
9. The base station as in claim 6, wherein the codebook is obtained
through a successive approach wherein the codebook is configured of
a smaller size for one scenario.
10. The base station as in claim 6, wherein the codebook is
obtained through a successive approach wherein the codebook is
configured with fixing designed entries and expanding the codebook
by: adding more entries to the codebook; configuring new entries
responsive to a new scenario and considering a constraint on fixed
entries; fixing all configured entries; adding more entries; and
configuring the more entries responsive to a next scenario until
all scenarios are accounted for.
11. The base station as in claim 10, wherein the codebook is
obtained through optimization of the number of codebook entries
that are added in each step, and depends on the order in which the
scenarios are treated, picking at each step the scenario which
requires a smaller codebook for a given performance with respect to
other remaining scenarios.
12. The base station as in claim 1, wherein the predetermined
finite set of complex numbers consists of {1, -1, j, -j}.
13. The base station as in claim 1, wherein the predetermined
finite set of complex numbers consists of {1, -1, j, -j, 1+j, 1-j,
-1+j, -1-j}.
14. The base station as in claim 1, wherein the predetermined
finite set of complex numbers consists of {.+-.1, .+-.2, .+-.j,
.+-.2j, .+-.1.+-.j, .+-.1.+-.2j, .+-.2, .+-.j, .+-.2.+-.2j}.
15. The base station as in claim 1, wherein the predetermined
finite set of complex numbers consists of {e.sup.2.pi.ja.sup.1,
e.sup.2.pi.ja.sup.2, e.sup.2.pi.a.sup.3, e.sup.2.pi.ja.sup.4},
where a.sub.1, a.sub.2, a.sub.3, and a.sub.4 are complex
numbers.
16. The base station as in claim 1, wherein the predetermined
finite set of complex numbers consists of {1, -1, j, -j, a(1+j),
a(1-j), a(-1+j), a(-1-j)}, where a = 1 2 . ##EQU00006##
17. A user equipment used in a multi-rank beamforming wireless
communication system, the user equipment comprising: a receiving
unit to receive from a base station a signal precoded in accordance
with a codebook comprising a plurality of codebook entries per
rank, wherein the codebook restricts elements of codebook entries
to be within a predetermined finite set of complex numbers and each
entry in the codebook has both equal column norm and equal row
norm, and wherein the wireless communication system has at least 4
transmission antennas.
18. A method implemented in a multi-rank beamforming wireless
communication system, the method comprising: transmitting from a
base station to a user equipment a signal precoded in accordance
with a codebook comprising a plurality of codebook entries per
rank, wherein the codebook restricts elements of codebook entries
to be within a predetermined finite set of complex numbers and each
entry in the codebook has both equal column norm and equal row
norm, and wherein the wireless communication system has at least 4
transmission antennas.
Description
[0001] This application is a divisional of co-pending U.S. patent
application Ser. No. 13/370,441, filed on Feb. 10, 2012, which in
turn is a divisional of Ser. No. 12/112,110, filed on Apr. 30,
2008, which in turn claims the benefit of U.S. Provisional
Application No. 60/915,239, entitled "Constrained and discrete
precoding codebook design for MIMO systems", filed on May 1, 2007,
the contents of which are incorporated by reference herein.
BACKGROUND OF THE INVENTION
[0002] The present invention relates generally to wireless
communications and, more particularly, to a method for generating a
codebook for multiple input multiple output MIMO wireless
systems.
[0003] We consider a MIMO system with m transmit antennas at the
base station and a user each with n receive antennas. The complex
baseband signal model is given by
y=Hx+w
where x is the m.times.1 transmitted signal vector, H is the
n.times.m channel matrix, w.about.(0, I) is a circularly symmetric
complex additive white Gaussian noise vector, and y is the
n.times.1 received signal vector. We consider a block fading
channel model in which the channel remains constant during the
transmission of each packet (or codeword of length T) and it
changes independently from one block to another, where the
distribution of the channel state is known a priori. The average
power constraint is given by E[x.sup.Hx].ltoreq.P.
[0004] We consider maximizing the throughput in single user (SU-)
MIMO systems (or sum-rate throughput for multiple user (MU-) MIMO
systems) which is usually the primary goal in downlink
transmissions. We make the following assumptions: (1) the user
feeds back the quantized channel state via a limited feedback link;
(2) based on the feedback information, the base station performs a
linear precoding (and only linear precoding is allowed) of the
transmitted streams.
[0005] Let UDV* be the singular value decomposition (SVD) of the
channel matrix H. With B bits of feedback, the user quantizes the
first k column of V (where k.ltoreq.min(n, m) is a fixed number
predetermined by the base station) using a quantization codebook
Q={Q.sub.1, Q.sub.2, . . . , Q.sub.2.sup.B}, Q.sub.i.di-elect
cons.C.sup.m.times.n, as follows
V ( 1 : k ) = arg arg Q .di-elect cons. Q d ( V ( 1 : k ) , Q ) ( 2
) ##EQU00001##
where d(.,.) is some distance metric. The codebook design problem
and the appropriate choice of the distance metric have been
considered in prior art. The columns of the quantized precoding
matrix {circumflex over (V)}(1:k) correspond to possible different
streams for this user.
[0006] The transmitted signal x from the base station then consists
of L data streams, u.sub.1, u.sub.2, . . . u.sub.L, sent through
column vectors g.sub.1, g.sub.2, . . . g.sub.L of a linear precoder
G. We have
x = Gu = i = 1 u i g i ( 3 ) ##EQU00002##
In SU-MIMO systems, we have L=k while in MU-MIMO systems we have
L.gtoreq.k, where one or more than one stream may be intended for
each user.
[0007] Conventionally, the quantized precoding codebook design for
a m.times.n MIMO system deals with a packing of the n dimensional
subspaces of an m dimensional vector space over the grassmanian
manifold G(m, n). Different performance measures for such a design
has been derived based on different distance metric over
grassmanian manifolds. As a result, the element of each codebook
entry is generally an arbitrary complex number.
[0008] Accordingly, there is a need for a method for codebook
design that utilizes vector codebooks to generate the corresponding
matrix codebooks for different transmission ranks, allow efficient
precoder selection and the codebooks can be optimized for different
scenarios (propagation environments/antenna configurations), In
addition, the vector codebooks can also be designed to obtain a
single codebook offering a robust performance across different
scenarios.
SUMMARY OF THE INVENTION
[0009] In accordance with the invention, a method for wireless
encoding includes encoding wireless multiple input and multiple
output signals in accordance with a codebook being one of a
discrete codebook restricting elements of codebook entries to be
within a predetermined finite set of complex numbers and a constant
amplitude codebook including each entry in its codebook having
equal column norm and equal row norm.
[0010] In a preferred embodiment the digital codebook further
includes restricting elements of a finite set in the discrete
codebook to be in the form of k.sup.a+jk.sup.b for a base-k
computer and the constant amplitude codebook further includes being
obtained through a series of successive householder
transformations. In a preferred embodiment the codebook is
configured as one of a constrained codebook in which the codebook
is configured for multiple scenarios and a discrete codebook.
[0011] The constrained codebook includes a union set configuration
wherein a union of the set of all channel realizations is taken for
all scenarios and the codebook is configured for such union set and
a successive approach wherein the codebook is configured of a
smaller size for one scenario. With the successive approach the
codebook is configured with fixing the designed entries and
expanding the codebook by adding more entries to the codebook, then
configuring new entries responsive to a new scenario and
considering a constraint on fixed entries, then again fixing all
configured entries and adding more entries and configuring the more
entries responsive to a next scenario until all scenarios are
accounted for.
[0012] The discrete codebook configuration includes finding a
codebook with minimum distance of at least r which includes picking
a random entry at the beginning and then trying to add other
entries to the codebook, at each step finding the set of all
possible entries of M such that their distances to all of the
already picked entries of the codebook are greater than r, then
picking the one entry which is closest to the current entries of
the codebook, repeating this process until finding K elements which
give a solution or to get to the point that the process cannot pick
enough elements to form a codebook of size K.
BRIEF DESCRIPTION OF DRAWINGS
[0013] These and other advantages of the invention will be apparent
to those of ordinary skill in the art by reference to the following
detailed description and the accompanying drawings.
[0014] FIG. 1 is a block diagram of codebook classes in accordance
with the invention; and
[0015] FIG. 2 Is a block diagram of codebook designs in accordance
with the invention.
DETAILED DESCRIPTION
[0016] Multi-rank beamforming MRBF is an attractive low-complexity
precoding scheme which adapts the transmission rank on a fast basis
(i.e. once per coherent feedback) and employs a precoding codebook
having a nested structure. The nested structure allows efficient
SVD based selection to pick the best precoder codeword from the
codebook for the given channel state. It also allows a low
complexity channel quality information (CQI)-metric based precoder
selection. Moreover, the nested codebook structure itself imposes
no performance penalty when compared to the optimal unstructured
codebook. The inventive codebook accommodates antenna selection and
the rest of the codebook has its elements from a multiplicative
group of size 16 GF(16).
[0017] Referring to the diagram 10 of FIG. 1, initially a codebook
is partitioned into classes 11 as one of a discrete codebook 12 or
a constant amplitude codebook 13. A discrete codebook includes a
digital codebook 14 structure and a constant amplitude codebook
includes a constant amplitude householder codebook 15
structure.
[0018] With a Discrete Codebook 12 we restrict the elements of the
codebook entries to be within a predetermined finite set of complex
numbers, for example: {1, -1, -j}, or {1, -1, j, -j, 1+j, 1-j,
-1+j, -1-j}, or {.+-.1, .+-.2, .+-.j, .+-.2j, .+-.1.+-.j,
.+-.1.+-.2j, .+-.2, .+-.j, .+-.2.+-.2j}, or {e.sup.2.pi.ja.sup.1,
e.sup.2.pi.ja.sup.2, e.sup.2.pi.ja.sup.3, e.sup.2.pi.ja.sup.4}, or
{1, -1, j, -j, a(1+j), a(1-j), a(-1+j), a(-1-j)} where
a = 1 2 . ##EQU00003##
The advantage of a discrete codebook is a reduction in the
complexity of the precoder selection algorithm.
[0019] With a Digital Codebook 14 we further restrict the elements
of the finite set in the discrete codebook to be in the form of
2.sup.a+j2.sup.b. For examples, any of the first three sets in the
above example can be used to generate a digital codebook while the
last two sets do not satisfy the condition. The advantage of the
digital codebook is a reduction of the code complexity. Digital
codebooks can practically avoid most of the multiplications by
replacing the multiplication by doing a shift operation. It is well
known that for the binary computers the multiplication in the form
of 2.sup.a.times. can be efficiently performed by using a shift
operation. Today's computers are all binary based, thus we use the
elements of the form 2.sup.a+j2.sup.b, otherwise, we can use the
general form k.sup.a+jk.sup.b for the elements considering a
possible base-k computer.
[0020] With a Constant Amplitude Codebook 13 each entry of the
codebook has equal column norm and also equal row norm. The
advantage of such a codebook is that the average transmit power
across all antennas is equal. Therefore, for the system for which
we use one power amplifier per each transmit antenna, the constant
amplitude codebook structure is very essential and useful.
[0021] If the codebook has a constant amplitude property and is
furthermore obtained through a series of successive householder
transformation it is called a Constant Amplitude
[0022] Householder Codebook 15. In particular for a system with 4
transmit antenna we use the following. Consider a set of 4 by 1
vectors where each elements of the vector is taken from a set of
complex number in the form {1, e.sup.2.pi.ja.sup.1,
e.sup.2.pi.ja.sup.2, . . . , e.sup.2.pi.ja.sup.g} which has g+1
elements, and the first element of each vector is 1. Then the
householder transformation of any such 4 by 1 vector has the
property that all elements of such matrix are also phase elements
in the form e.sup.2.pi.ja.sup.1.
[0023] Referring now to the block diagram 20 of FIG. 2, codebook
designs 21 in accordance with the invention include a discrete
codebook design 22, and a constrained codebook design 23. The
constrained codebook design 23 is further broken down into a union
set approach 24 and a successive approach 25.
[0024] With respect to the Constrained Codebook Design 23,
traditionally, the codebook is optimized for given channel
statistics. If we design a codebook for multiple scenarios, i.e.,
different set of channel statistics the procedure is called
constrained codebook design. Two approaches are considered, the
union approach 24 and a successive approach 25.
[0025] In the Union Approach 24 we take the union of the set of all
channel realizations for all scenarios and design a codebook for
such union set.
[0026] In the Successive Approach 25 we design a codebook of
smaller size for one scenario. We fixed the designed entries and
expand the codebook by adding more entries to the codebook. We then
design the new entries by considering the new scenario and
considering the constraint on the fixed entries. Again, we fix all
the designed entries and add more entry and design for the next
scenario till all scenarios are treated. Note that this second
approach requires the optimization of the number of codebook
entries that are added in each step, also depends on the order in
which the scenarios are treated. Intuitively, at each step we pick
the scenario which requires smaller codebook for a given
performance with respect to other remaining scenarios.
[0027] With respect to the Discrete Codebook Design 22, the
approach to design a discrete codebook is to pick a set of entries
that have maximum minimum distance. Different distance metric has
been considered in the prior art. Since it is a discrete
optimization problem, the solution is usually very hard to find.
Let M denote all possible entry of a codebook where its elements
are taken from the finite set G. Define a weighted graph where each
node correspond to a possible entry of the codebook in the set M
and each link between two node a and b is weighted by the distance
between the two entry a and b, e.g., d(a,b). Finding the codebook
of size K is equivalent to finding a clique of size K where the
minimum of all the gains in this clique is maximized. Such problem
is NP-hard, and thus hard to solve. In the following we propose an
algorithm that can solve this problem within reasonable time for
most practical cases.
[0028] Instead of trying to find a codebook with maximum minimum
distance, we take the following approach to find a codebook with
minimum distance of at least r. To do so, we pick a random entry at
the beginning and then try to add other entries to the codebook. At
each step, we find the set of all possible entries of M such that
their distances to all of the already picked entries of the
codebook are greater than r. Then, we pick the one which is closest
to the current entries of the codebook. We repeat this process
until we find K elements which gives a solution, or to get to the
point that we cannot pick enough elements to form a codebook of
size K. The detailed algorithm is given in Algorithm 1 in the IR
form. By changing the value of r, we can optimize the designed
codebook. Example of such optimized codebook is given as
follows.
[0029] The following example gives a codebook which is a `discrete
codebook` and has `householder structure` and `constant amplitude
property`. We consider the case when 16 possibilities are allowed
per-rank and suggest the following constituent vector codebooks:
V.sup.1={v.sub.i.sup.1.di-elect cons.C.sup.4}.sub.i=1.sup.16,
V.sup.2=[1,0,0].sup.T.di-elect
cons.c.sup.3,V.sup.3=[1,0].sup.T.di-elect cons.C.sup.2, where
C.sup.N denotes the N-dimensional complex space and all the vectors
have their first elements to be real-valued. Matrix code-words are
formed using these vectors along with the unitary Householder
matrices of the form,
HH ( w ) = I - 2 ww * w 2 ( which is completely determined by the
vector w ) . ##EQU00004##
[0030] Let e.sub.1.sup.N=[1,0, . . . , 0].sup.T.di-elect
cons.C.sup.N. Since householder formula is not defined for
e.sub.1.sup.N=[1,0, . . . , 0].sup.T.di-elect cons.C.sup.N, we
define HH(e.sub.1.sup.N)=I.sub.N.times.N.
[0031] The matrix codebook for 4.times.4 cases is obtained using
the householder formula defined as
A ( v i 1 , v j 2 , v j 2 , ) = [ v i 1 , HH ( v i 1 - e 1 4 ) [ 0
v j 2 ] HH ( v i 1 - e 1 4 ) [ 0 HH ( v j 2 - e 1 4 ) [ 0 v k 3 ] ]
, ] , 1 .ltoreq. i .ltoreq. 16 , 1 .ltoreq. j , k .ltoreq. 1.
##EQU00005##
[0032] In the special case of the vector codebook defined in
Appendix 1 below, we can simplify the above matrix codebook as a
formula as A(v.sub.i.sup.1,v.sub.j.sup.2,v.sub.j.sup.2, . . .
)=HH(v.sub.i.sup.1-e.sub.l.sup.4),1.ltoreq.i.ltoreq.16, which is
the codebook of size 16 for rank 4 transmission. The codebook for
rank one is obtained by collecting the first columns of these 16
matrices. The codebook of rank 3 is the collection of matrices
obtained by choosing the last 3 columns of each matrix, and the
codebook of rank 2 is optimized by selecting 4.times.2 matrices by
choosing the columns as defined in appendix 1 below. For the
CQI-metric based precoder selection with linear minimum mean square
error (LMMSE) receiver it has been shown that due to the nested
structure of the codebook, significant complexity savings can be
accrued by avoiding the redundant computations.
[0033] Moreover, the elements of the codeword matrices also belong
to a multiplicative group of complex numbers, defined as GF(16)
where the 16 elements of the group are defined as
exp(j2.pi.k/16),1.ltoreq.k.ltoreq.16. It can be shown that for a
4TX antenna system, if all elements of the vector codebook belong
to a multiplicative group of GF(N) then all the elements of the
matrix codebook belong to the same group. Considering the above
property, the number of multiplications is much less than the case
where the codebook elements are arbitrary complex numbers.
TABLE-US-00001 APPENDIX 1 MRBF Vector Codebooks MRBF- Vector
codebook in C with elements from GF(16) Vector index First element
Second element Third element Fourth element 1 1 1 1 1 2 1 -i -i -1
3 1 i I -1 4 1 -0.3826 + 0.9239i -0.7070 - 0.7071i 0.9239 - 0.3826i
5 1 0.3826 - 0.9239i -0.7070 - 0.7071i -0.9239 + 0.3826i 6 1
-0.7071 + 0.7071i -i 0.7071 + 0.7071i 7 1 -0.7071 + 0.7071i I
-0.7071 + 0.7071i 8 1 -0.9239 - 0.3826i 0.7071 + 0.7071i -0.3826 -
0.9239i 9 1 0.7071 - 0.7071i -i -0.7071 - 0.7071i 10 1 0 0 0 11 0 1
0 0 12 0 0 1 0 13 0 0 0 1 14 1 i -i -0.7071 - 0.7071i 15 1 -i -i
0.7071 + 0.7071i 16 1 1 -0.7071 + 0.7071i 1 MRBF-Vector codebook in
C Second Vector index First element element Third element 1 1 0 0
MRBF-Vector codebook in C.sup.2 Vector index First element Second
element 1 1 0 MRBF- rank 2 codebook index Codebook index 4 .times.
4 matrix index First column Second column 1 1 1 2 2 2 1 2 3 3 1 2 4
7 1 3 5 8 1 3 6 10 2 3 7 13 1 3 8 10 3 4 9 10 1 4 10 10 2 4 11 9 1
3 12 14 3 4 13 10 1 2 14 10 1 3 15 11 3 4 16 12 1 2
[0034] Simulation results for the inventive codebook technique show
that for both link level and the improved link level that the MRBF
scheme employing the inventive codebook design provides gains over
the discrete fourier transform DFT-codebook based schemes at low
geometries, hence benefiting cell-edge users. Moreover, the MRBF
scheme with the inventive codebook design also results in lower
complexity than the DFT-codebook due to its codebook structure as
well as its simple vector codebooks.
[0035] The proposed MRBF codebook structure in accordance with the
invention utilizes vector codebooks to generate the corresponding
matrix codebooks for different transmission rank and allows
efficient precoder selection via either the singular value
decomposition SVD or continuous quality improvement CQI metric. The
constituent vector codebooks can be optimized for different
scenarios (propagation environments/antenna configurations), which
allows us to leverage the flexibility offered by multiple
codebooks. In addition the vector codebooks can also be designed to
obtain a single codebook offering a robust performance across
different scenarios. Simulation results demonstrate that the MRBF
scheme outperforms the DFT codebook based scheme as well as the
conventional Householder codebook based scheme.
[0036] The present invention has been shown and described in what
are considered to be the most practical and preferred embodiments.
It is anticipated, however, that departures may be made therefrom
and that obvious modifications will be implemented by those skilled
in the art. It will be appreciated that those skilled in the art
will be able to devise numerous arrangements and variations which,
not explicitly shown or described herein, embody the principles of
the invention and are within their spirit and scope.
* * * * *