METHOD AND DEVICE FOR TRANSMITTING/RECEIVING INFORMATION IN CLOSED-LOOP MULTI-ANTENNA SYSTEM

Abstract
The present invention discloses a method for transmitting information in a closed loop multiple antenna system. The method includes that: a transmission apparatus receives information transmitted from a reception apparatus, wherein the information includes codeword index information; the transmission apparatus selects a corresponding codeword from a double-layer-structure-based codebook according to the codeword index information; the transmission apparatus generates a precoding matrix according to the selected codeword; the transmission apparatus performs precoding for data to be transmitted according to the precoding matrix; the transmission apparatus transmits the precoded data to the reception apparatus. The present invention can enable a formed and used codebook to match channel distribution characteristic of a dual-polarized antenna as much as possible, and minimize performance loss brought by codebook quantization, thereby performance of a precoding system can be effectively improved.
Description
FIELD OF HE INVENTION

The present invention relates to the field of communications and particularly to a method and device for transmitting/receiving information in a closed-loop multi-antenna system.


BACKGROUND OF THE INVENTION

At present, a multi-antenna technology at physical layer has become one of crucial technologies in a next-generation wireless communication system. The multi-antenna technology has numerous advantages, for example, the throughput of the system can be improved with a multiplexing gain of multiple antennas, the performance of the system can be improved with a diversity gain of the multiple antennas, receiving terminals can be distinguished from each other with a directivity gain of the antennas to remove interference between the receiving terminals, etc.


A Multiple-Input Multiple-Output (MIMO) system uses multiple transmitting and receiving antennas and utilizes joint processing of a signal in the space, time and frequency domains to obtain rate, diversity and array gains. In the MIMO system, if a transmitter can acquire channel state information somehow, a transmission signal can be optimized dependent upon a channel characteristic to improve a reception quality and lower required complexity of a receiver. In a real system, typically a feedback of quantized channel state information is adopted to lower feedback overhead and feedback delay. The channel state information can be quantized in terms of a channel matrix and a statistic thereof or of a pre-processing parameter recommended by the receiver for use. The quantized channel state information is mapped into a set of a limited number of elements, which is referred to as a codebook.


In a codebook-based closed-loop MIMO system, a codebook is a key factor influencing the performance of the system. In each of the transmission modes 4, 5 and 6 of the Rel-8 long Term Evolution (LTE), a Precoding Matrix Indicator (PMI) feedback mechanism is adopted, that is, a User Equipment (UE) measures a channel according to a common pilot and reports index information of a codeword that it recommends for use to an eNodeB (eNB). With four common pilot ports, for example, a Householder transformation-based codebook is adopted, and there are sixteen selectable pre-coding matrices for each Rank of the closed-loop spatially multiplexing mode, i.e., the transmission mode 4. General characteristics of an Rel-8 LTE 4-antenna codebook include: 1) a Rank1 codebook is obtained by searching while considering a tradeoff between uncorrelated and correlated channels; 2) a nesting relationship holds between codebooks at the other Ranks and the Rank1 codebook; 3) a 8PSK (Phase Shift Keying) element is adopted for each codebook element to lower calculation complexity; 4) there are constant modulus and unitary characteristics; and 5) complexity of selecting a codeword can be lowered with a characteristic of the Householder transformation.


In an MIMO-based wireless communication system, e.g., an Rd-10 LTE-A system, the use of the PMI feedback mechanism can be continued, but the number of configuration combinations of Ranks and the numbers of transmitting antenna ports is far larger than that in the Rel-8 LTE due to an increased number (possibly eight, for example) of transmitting antennas. On one hand, no codebook has been defined for a large number of configuration combinations of Ranks and the number of transmitting antenna ports. On the other hand, the necessity to design a codebook for a spatially correlated channel has become more prominent as compared with the Rel-8 LTE system because the number of antennas constantly increases and the size of a base station is limited so that it is inevitably necessary to shorten the spacing between antennas and/or adopt polarized antennas. In view of the foregoing considerations, a linear codebook for a spatially correlated channel and a designing method thereof are indispensable technology issues in future wireless communication system researches and standardization. Furthermore, researchers consider as much as possible reserving the characteristics of the Rel-8 LTE codebook while designing a codebook in view of the good performance and excellent characteristics of the Rel-8 LTE 4-antenna codebook.


The existing Householder transformation method can not be applied directly to designing of an 8-antenna codebook. Generally the following several codebooks can inherit the characteristics (or a part thereof) of the Rel-8 LTE codebook at present.


A codebook 1: The Rel-8 codebook is transformed into an 8-antenna array codebook at the Rank1 The codebook 1 has a drawback of failing to satisfy a nesting relationship although the codebook 1 inherits a part of the characteristics of the Rel-8 LTE 4-antenna codebook, i e., the constant modulus and the use of an 8PSK element. Since the codebook 1 is based upon extending the Rel-8 LTE 4-antenna codebook which results from optimization in view of both spatially correlated and spatially uncorrelated channels and a part of codewords of which is not suitable for the spatially correlated channel, there is a performance loss of the codebook 1 for an array of antennas at a small spacing.


A codebook 2: A number 47 of 5×8 complex matrices with their elements being 8PSK elements are constructed in complex Hadamard transformation, and then a Rank1 codebook is obtained by searching in the optimizing method with a tradeoff between uncorrelated and correlated channels. The codebook 2 has a drawback of adopting only 8PSK elements although the codebook 2 inherits most of the characteristics of the Rel-8 LTE codebook, i.e., the constant modulus, unitary and nesting characteristics. Since a space consists of a number 47 of 8×8 complex matrices with their elements being 8PSK elements is searched for the codebook 2 in a search criterion considering a performance tradeoff between spatially correlated and spatially uncorrelated channels, the performance of the codebook 2 over the spatially correlated channel is degraded.


A codebook 3: The Rank codebook is derived by multiplying sixteen different diagonal matrices by a 8-DFT (Discrete Fourier Transform) matrix, and the Rank1 codebook is composed of first columns of the sixteen 8×8 complex matrices. The codebook 3 has such a drawback that although the codebook 3 inherits a part of the characteristics of the Rel-8 LTE codebook, i.e., the constant modulus, unitary and nesting characteristics, complexity of pre-coding calculation will be increased because 16PSK elements are adopted. If there is no significant performance gain over other codebooks, the increased complexity of pre-coding calculation will become an extra burden.


A codebook 4: the codebook consists of respective rows (or columns) of one 8-DFT matrix and one 8×8 unitary matrix. The codebook 4 has a drawback of adopting only 8PSK elements although the codebook 4 inherits a part of the characteristics of the Rel-8 LTE codebook, i.e., the constant modulus, unitary and nesting characteristics. Also since the DFT matrix complies with the construction of an array response, both the codebook 3 and the codebook 4 are suitable for a pre-coding MIMO system over a spatially correlated channel. However, the angles of corresponding array responses of respective codewords in the codebook 3 and the codebook 4 are unchanged regardless of a specific distribution characteristic of the channel, so a performance loss of the pre-coding MIMO system may be incurred in a specific scenario.


Therefore, it is desired to propose an efficient design of a codebook and a solution to information transmission and reception using the codebook.


SUMMARY OF THE INVENTION

An object of embodiments of the invention is intended to address at least one of the foregoing drawbacks in the prior an particularly by designing and using a codebook in a two-stage structure and an information transmitting/receiving method using the codebook to improve the performance of a closed-loop multi-antenna system.


in order to attain the foregoing object, an aspect of the invention proposes a method for transmitting information in a closed-loop multi-antenna system, which includes the steps of: receiving, by a transmitting device, information including codeword index information transmitted from a receiving device; selecting, by the transmitting device, a corresponding codeword from a codebook in a two-stage structure according to the codeword index information; generating, by the transmitting device, a pre-coding matrix according to the selected codeword; pre-coding, by the transmitting device, data to be transmitted according to the pre-coding matrix; and transmitting, by the transmitting device, the pre-coded data to the receiving device.


A further aspect of the invention proposes a method for receiving information in a closed-loop multi-antenna system, which includes the steps of: receiving, by a receiving device, information transmitted from a transmitting device and estimating channel state information according to the information; selecting, by the receiving device, a corresponding codeword from codebook in a two-stage structure according to the channel state information and generating codeword index information of the selected codeword; and transmitting, by the receiving device, the codeword index information of the codeword to the transmitting device.


A further aspect of the invention proposes a transmitting device including a receiving module, a codeword determining module, a pre-coding matrix calculating module, a pre-coding module and a transmitting module, wherein: the receiving module is configured to receive information including codeword index information transmitted from a receiving device; the codeword determining module is configured to select a corresponding codeword from a codebook in a two-stage structure according to the codeword index information; the pre-coding matrix calculating module is configured to generate a pre-coding matrix according to the selected codeword; the pre-coding module is configured to pre-code data to be transmitted according to the pre-coding matrix; and the transmitting module is configured to transmit the pre-coded data to the receiving device.


A further aspect of the invention proposes a receiving device including a receiving module, a channel estimating module, a codeword selecting module, a codeword index information generating module and a transmitting module, wherein: the receiving module is configured to receive information transmitted from a transmitting device; the channel estimating module is configured to estimate channel state information according to the information; the codeword selecting module is configured to select a corresponding codeword from a codebook in a two-stage structure according to the channel state information; the codeword index information generating module is configured to generate codeword index information of the selected codeword; and the transmitting module is configured to transmit the codeword index information of the codeword to the transmitting device.


In the foregoing solutions proposed according to the embodiments of the invention, a formed and used codebook matches as closely as possibly a channel distribution characteristic of a dually polarized antenna to minimize a performance loss due to quantization of the codebook, thereby improving effectively the performance of a pre-coding system. Furthermore, the codebook proposed by the invention has a two-stage structure and can support both a feedback of one PMI and a feedback of two PMIs.


Additional aspects and advantages of the invention will be partly presented in the following description, partly become apparent from the following description or be learned from practicing of the invention.





BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and/or additional aspects and advantages of the invention will become apparent and readily understood from the following description of embodiments in connection with the drawings in which:



FIG. 1 is a schematic diagram of the convention of an antenna indexing method of a dually polarized antenna according to an embodiment of the invention;



FIG. 2 is a flow chart of a method for transmitting information in a closed-loop multi-antenna system according to an embodiment of the invention;



FIG. 3 is a flow chart of a method for receiving information in a closed-loop multi-antenna system according to an embodiment of the invention;



FIG. 4 is a schematic structural diagram of a transmitting device according to an embodiment of the invention; and



FIG. 5 is a schematic structural diagram of a receiving device according to an embodiment of the invention.





DETAILED DESCRIPTION OF THE EMBODIMENTS

Embodiments of the invention will be described in details below; and examples of the embodiments to be described will be illustrated in the drawings throughout identical or similar reference numerals denote identical or similar elements or elements with identical or similar functions. The embodiments to be described below with reference to the drawings are illustrative and merely intended to explain the invention but will not be construed as limiting the invention.


Firstly a codeword of the invention will be introduced below, and then a method and device for transmitting/receiving information in a multi-antenna system according to embodiments of the invention will be introduced in details in the form of particular embodiments.


Assumed an MIMO system includes NT transmitting antennas and NR receiving antennas, and the number of ranks is r, where is an even number and NR≧1 and r≧1. For the convenience of a description, firstly the convention of an antenna indexing method of a dually polarized antenna will be described. As illustrated in FIG. 1, an antenna indexing method is to index firstly antennas sequentially in one polarization direction and then antennas sequentially in the other polarization direction. It shall be noted that a codebook of a dually polarized antenna system and a designing method thereof are independent of an antenna indexing method of dually polarized antennas, and if the convention of the antenna indexing method is changed, corresponding adjusting of indexes of the antennas in the codebook will suffice.


In an embodiment of the invention, a codeword cnr in a Rank-r codebook in a two-stage structure satisfies the following relationship:











c
n
r

=









[



Φ
k
r



(

:

,
1


)





w
m
r



(

:

,
1


)









Φ
k
r



(

:

,
2


)





w
m
r



(

:

,
2


)

















Φ
k
r



(

:

,
r


)





w
m
r



(

:

,
r


)



]










=



[






Φ
k
r



(

1
,
1

)





w
m
r



(

:

,
1


)








Φ
k
r



(

1
,
2

)





w
m
r



(

:

,
2


)











Φ
k
r



(

1
,
r

)





w
m
r



(

:

,
r


)










Φ
k
r



(

2
,
1

)





w
m
r



(

:

,
1


)








Φ
k
r



(

2
,
2

)





w
m
r



(

:

,
2


)











Φ
k
r



(

2
,
r

)





w
m
r



(

:

,
r


)






]





,




where Φkr is a 2×r-dimension matrix, k=0,1, . . . , Kr-1, wmr is a NT/2×r-dimension matrix, m=0,1, . . . , Mr-1, X(:,l) represents the lth column of a matrix X, X(l1,l2) represents an element in the l1th row and in the l2th column of the matrix X, and custom-character represents a direct product of matrices; and a set consists of a number Kr of Φkr is a transformation codebook of the codebook in the two-stage structure, and a set consists of a number Mr of wmr codebook of the codebook in the two-stage structure.


Since the codebook proposed according to the invention has a two-stage structure, both a feedback of one PMI and a feedback of two PM's can be supported.


Specific codebooks will be described below as examples.


Codebook 1:

In an embodiment of the invention, M3=M4=8.


Basic codebook:















Rank3 basic
Rank4 basic


Index
codebook wm3
codebook wm4







0
[v0 v6 v6]
[v0 v0 v6 v6]


1
[v1 v7 v7]
[v1 v1 v7 v7]


2
[v2 v0 v0]
[v2 v2 v0 v0]


3
[v3 v1 v1]
[v3 v3 v1 v1]


4
[v4 v2 v2]
[v4 v4 v2 v2]


5
[v5 v3 v3]
[v5 v5 v3 v3]


6
[v6 v4 v4]
[v6 v6 v4 v4]


7
[v7 v5 v5]
[v7 v7 v5 v5]









Transformation codebook:















Rank3 transformation
Rank4 transformation


Index k
codebook Φk3
codebook Φk4







0





[



1


1


1




1


1



-
1




]











[



1


1


1


1




1



-
1



1



-
1




]











1





[



1



2



0




1


0



2




]











[



1


0


1


0




0


1


0


1



]















Codebook 1:














Index
Rank3 codebook
Rank4 codebook

















0





[




v
0





2



v
6




0





v
0



0




2



v
6





]











[




v
0



0



v
6



0




0



v
0



0



v
6




]











1





[




v
1





2



v
7




0





v
1



0




2



v
7





]











[




v
1



0



v
7



0




0



v
1



0



v
7




]











2





[




v
2





2



v
0




0





v
2



0




2



v
0





]











[




v
2



0



v
0



0




0



v
2



0



v
0




]











3





[




v
3





2



v
1




0





v
3



0




2



v
1





]











[




v
3



0



v
1



0




0



v
3



0



v
1




]











4





[




v
4





2



v
2




0





v
4



0




2



v
2





]











[




v
4



0



v
2



0




0



v
4



0



v
2




]











5





[




v
5





2



v
3




0





v
5



0




2



v
3





]











[




v
5



0



v
3



0




0



v
5



0



v
3




]











6





[




v
6





2



v
4




0





v
6



0




2



v
4





]











[




v
6



0



v
4



0




0



v
6



0



v
4




]











7





[




v
7





2



v
5




0





v
7



0




2



v
5





]











[




v
7



0



v
5



0




0



v
7



0



v
5




]











8





[




v
0




v
6




v
6






v
0




v
6




-

v
6





]











[




v
0




v
0




v
6




v
6






v
0




-

v
0





v
6




-

v
6





]











9





[




v
1




v
7




v
7






v
1




v
7




-

v
7





]











[




v
1




v
1




v
7




v
7






v
1




-

v
1





v
7




-

v
7





]











10





[




v
2




v
0




v
0






v
2




v
0




-

v
0





]











[




v
2




v
2




v
0




v
0






v
2




-

v
2





v
0




-

v
0





]











11





[




v
3




v
1




v
1






v
3




v
1




-

v
1





]











[




v
3




v
3




v
1




v
1






v
3




-

v
3





v
1




-

v
1





]











12





[




v
4




v
2




v
2






v
4




v
2




-

v
2





]











[




v
4




v
4




v
2




v
2






v
4




-

v
4





v
2




-

v
2





]











13





[




v
5




v
3




v
3






v
5




v
3




-

v
3





]











[




v
5




v
5




v
3




v
3






v
5




-

v
5





v
3




-

v
3





]











14





[




v
6




v
4




v
4






v
6




v
4




-

v
4





]











[




v
6




v
6




v
4




v
4






v
6




-

v
6





v
4




-

v
4





]











15





[




v
7




v
5




v
5






v
7




v
5




-

v
5





]











[




v
7




v
7




v
5




v
5






v
7




-

v
7





v
5




-

v
5





]















Where:













Index
vn







0
v0 = [1 1 1 1]T


1
v1 = [1 (1 − j)/{square root over (2)} −j (−1 − j)/{square root over (2)}]T


2
v2 = [1 −j −1 j]T


3
v3 = [1 (−1 − j)/{square root over (2)} j (1 − j)/{square root over (2)}]T


4
v4 = [1 −1 1 −1]T


5
v5 = [1 (−1 + j)/{square root over (2)} −j (1 + j)/{square root over (2)}]T


6
v6 = [1 j −1 −j]T


7
v7 = [1 (1 + j)/{square root over (2)} j (−1 + j)/{square root over (2)}]T









It shall he noted that vn is a truncated 8-DFT vector or any other truncated 2K-DFT vector, where 2K is larger than or equal to NT/2 and K is a natural number. If a codeword with the unitary characteristic is constructed, mutually orthogonal column vectors of the codeword wm of the basic codebook, corresponding to mutually non-orthogonal columns of the codeword Φk in the transformation codebook, will suffice. For example, first two columns of the codeword







Φ
k
3

=

[



1


1


1




1


1



-
1




]





with k=0 in the transformation codebook of the codebook 1 are non-orthogonal, and then first two columns of the codeword of the basic codebook shall be kept orthogonal; and 1st and 3rd columns of and 2nd and 4th columns of the codeword







Φ
k
4

=

[



1


1


1


1




1



-
1



1



-
1




]





with k=0 in the transformation codebook are non-orthogonal, and then and 3rd columns of and also 2nd and 4th columns of the codeword wm4 of the basic codebook shall be kept orthogonal.


vn can be applied to codebooks of the following respective embodiments.


Codebook 2:

Matrices Φk and wm are defined as follows:
















Index
Φk









0






Φ
0

=

[



1


1


1


1




1



-
1



1



-
1




]














1






Φ
1

=

[



1


1


1


1





-
1



1



-
1



1



]














2






Φ
2

=

[



1


1


1


1




j



-
j



j



-
j




]














3






Φ
3

=

[



1


1


1


1





-
j



j



-
j



j



]














4





Φ
4

=

[



1


1


1


1






1
+
j


2





-


1
+
j


2







1
+
j


2





-


1
+
j


2






]












5






Φ
5

=

[



1


1


1


1





-


1
+
j


2







1
+
j


2





-


1
+
j


2







1
+
j


2





]














6






Φ
6

=

[



1


1


1


1







-
1

+
j


2






1
-
j


2







-
1

+
j


2






1
-
j


2





]














7






Φ
7

=

[



1


1


1


1






1
-
j


2







-
1

+
j


2






1
-
j


2







-
1

+
j


2





]




























Index
wm







0
[v0 v1 v2 v3]


1
[v1 v2 v3 v4]


2
[v2 v3 v4 v5]


3
[v3 v4 v5 v6]


4
[v4 v5 v6 v7]


5
[v5 v6 v7 v0]


6
[v6 v7 v0 v1]


7
[v7 v0 v1 v2]









Basic codebook:

















Rank1
Rank2
Rank3
Rank4



basic
basic
basic
basic


Index
code-
code-
code-
code-


m
book wm1
book wm2
book wm3
book wm4







0
w0(:,1)
[w0(:,1) w0(:,2)]
[w0(:,1) w0(:,2)
w0





w0(:,3)]


1
w1(:,1)
[w1(:,1) w1(:,2)]
[w1(:,1) w1(:,2)
w1





w1(:,3)]


2
w2(:,1)
[w2(:,1) w2(:,2)]
[w2(:,1) w2(:,2)
w2





w2(:,3)]


3
w3(:,1)
[w3(:,1) w3(:,2)]
[w3(:,1) w3(:,2)
w3





w3(:,3)]


4
w4(:,1)
[w4(:,1) w4(:,2)]
[w4(:,1) w4(:,2)
w4





w4(:,3)]


5
w5(:,1)
[w5(:,1) w5(:,2)]
[w5(:,1) w5(:,2)
w5





w5(:,3)]


6
w6(:,1)
[w6(:,1) w6(:,2)]
[w6(:,1) w6(:,2)
w6





w6(:,3)]


7
w7(:,1)
[w7(:,1) w7(:,2)]
[w7(:,1) w7(:,2)
w7





w7(:,3)]









Transformation codebook:

















Rank1
Rank2
Rank3
Rank4



transfor-
transfor-
transfor-
transfor-



mation
mation
mation
mation


Index
code-
code-
code-
code-


k
book Φk1
book Φk2
book Φk3
book Φk4







0
Φ0(:,1)
0(:,1) Φ0(:,2)]
0(:,1) Φ0(:,2)
Φ0





Φ0(:,3)]


1
Φ1(:,1)
1(:,1) Φ1(:,2)]
1(:,1) Φ1(:,2)
Φ1





Φ1(:,3)]









Codebook 2:
















Index
Rank1 codebook
Rank2 codebook
Rank3 codehook
Rank4 codebook



















0





[




v
0






v
0




]











[




v
0




v
1






v
0




-

v
1





]











[




v
0




v
1




v
2






v
0




-

v
1





v
2




]











[




v
0




v
1




v
2




v
3






v
0




-

v
1





v
2




-

v
3





]











1





[




v
1






v
1




]











[




v
1




v
2






v
1




-

v
2





]











[




v
1




v
2




v
3






v
1




-

v
2





v
3




]











[




v
1




v
2




v
3




v
4






v
1




-

v
2





v
3




-

v
4





]











2





[




v
2






v
2




]











[




v
2




v
3






v
2




-

v
3





]











[




v
2




v
3




v
4






v
2




-

v
3





v
4




]











[




v
2




v
3




v
4




v
5






v
2




-

v
3





v
4




-

v
5





]











3





[




v
3






v
3




]











[




v
3




v
4






v
3




-

v
4





]











[




v
3




v
4




v
5






v
3




-

v
4





v
5




]











[




v
3




v
4




v
5




v
6






v
3




-

v
4





v
5




-

v
6





]











4





[




v
4






v
4




]











[




v
4




v
5






v
4




-

v
5





]











[




v
4




v
5




v
6






v
4




-

v
5





v
6




]











[




v
4




v
5




v
6




v
7






v
4




-

v
5





v
6




-

v
7





]











5





[




v
5






v
5




]











[




v
5




v
6






v
5




-

v
6





]











[




v
5




v
6




v
7






v
5




-

v
6





v
7




]











[




v
5




v
6




v
7




v
0






v
5




-

v
6





v
7




-

v
0





]











6





[




v
6






v
6




]











[




v
6




v
7






v
6




-

v
7





]











[




v
6




v
7




v
0






v
6




-

v
7





v
0




]











[




v
6




v
7




v
0




v
1






v
6




-

v
7





v
0




-

v
1





]











7





[




v
7






v
7




]











[




v
7




v
0






v
7




-

v
0





]











[




v
7




v
0




v
1






v
7




-

v
0





v
1




]











[




v
7




v
0




v
1




v
2






v
7




-

v
0





v
1




-

v
2





]











8





[




v
0






-

v
0





]











[




v
0




v
1






-

v
0





v
1




]











[




v
0




v
1




v
2






-

v
0





v
1




-

v
2





]











[




v
0




v
1




v
2




v
3






-

v
0





v
1




-

v
2





v
3




]











9





[




v
1






-

v
1





]











[




v
1




v
2






-

v
1





v
2




]











[




v
1




v
2




v
3






-

v
1





v
2




-

v
3





]











[




v
1




v
2




v
3




v
4






-

v
1





v
2




-

v
3





v
4




]











10





[




v
2






-

v
2





]











[




v
2




v
3






-

v
2





v
3




]











[




v
2




v
3




v
4






-

v
2





v
3




-

v
4





]











[




v
2




v
3




v
4




v
5






-

v
2





v
3




-

v
4





v
5




]











11





[




v
3






-

v
3





]











[




v
3




v
4






-

v
3





v
4




]











[




v
3




v
4




v
5






-

v
3





v
4




-

v
5





]











[




v
3




v
4




v
5




v
6






-

v
3





v
4




-

v
5





v
6




]











12





[




v
4






-

v
4





]











[




v
4




v
5






-

v
4





v
5




]











[




v
4




v
5




v
6






-

v
4





v
5




-

v
6





]











[




v
4




v
5




v
6




v
7






-

v
4





v
5




-

v
6





v
7




]











13





[




v
5






-

v
5





]











[




v
5




v
6






-

v
5





v
6




]











[




v
5




v
6




v
7






-

v
5





v
6




-

v
7





]











[




v
5




v
6




v
7




v
0






-

v
5





v
6




-

v
7





v
0




]











14





[




v
6






-

v
6





]











[




v
6




v
7






-

v
6





v
7




]











[




v
6




v
7




v
0






-

v
6





v
7




-

v
0





]











[




v
6




v
7




v
0




v
1






-

v
6





v
7




-

v
0





v
1




]











15





[




v
7






-

v
7





]











[




v
7




v
0






-

v
7





v
0




]











[




v
7




v
0




v
1






-

v
7





v
0




-

v
1





]











[




v
7




v
0




v
1




v
2






-

v
7





v
0




-

v
1





v
2




]















Codebook 3:

The codebook 3 is structured substantially the same as the codebook 2.


Basic codebook:

















Rank1
Rank2
Rank3
Rank4



basic
basic
basic
basic


Index
code-
code-
code-
code-


m
book wm1
book wm2
book wm3
book wm4







0
w0(:,1)
[w0(:,1) w0(:,2)]
[w0(:,1) w0(:,2)
w0





w0(:,3)]


1
w1(:,1)
[w1(:,1) w1(:,2)]
[w1(:,1) w1(:,2)
w1





w1(:,3)]


2
w2(:,1)
[w2(:,1) w2(:,2)]
[w2(:,1) w2(:,2)
w2





w2(:,3)]


3
w3(:,1)
[w3(:,1) w3(:,2)]
[w3(:,1) w3(:,2)
w3





w3(:,3)]


4
w4(:,1)
[w4(:,1) w4(:,2)]
[w4(:,1) w4(:,2)
w4





w4(:,3)]


5
w5(:,1)
[w5(:,1) w5(:,2)]
[w5(:,1) w5(:,2)
w5





w5(:,3)]


6
w6(:,1)
[w6(:,1) w6(:,2)]
[w6(:,1) w6(:,2)
w6





w6(:,3)]


7
w7(:,1)
[w7(:,1) w7(:,2)]
[w7(:,1) w7(:,2)
w7





w7(:,3)]









Transformation codebook:

















Rank1
Rank2
Rank3
Rank4



transfor-
transfor-
transfor-
transfor-



mation
mation
mation
mation


Index
code-
code-
code-
code-


k
book Φk1
book Φk2
book Φk3
book Φk4







0
Φ0(:,1)
0(:,1) Φ0(:,2)]
0(:,1) Φ0(:,2)
Φ0





Φ0(:,3)]


1
Φ1(:,1)
1(:,1) Φ1(:,2)]
1(:,1) Φ1(:,2)
Φ1





Φ1(:,3)]


2
Φ2(:,1)
2(:,1) Φ2(:,2)]
2(:,1) Φ2(:,2)
Φ2





Φ2(:,3)]


3
Φ3(:,1)
3(:,1) Φ3(:,2)]
3(:,1) Φ3(:,2)
Φ3





Φ3(:,3)]









Codebook 3:

















Rank1
Rank2




Index
codebook
codebook
Rank3 codebook
Rank4 codebook



















0





[




v
0






v
0




]











[




v
0




v
1






v
0




-

v
1





]











[




v
0




v
1




v
2






v
0




-

v
1





v
2




]











[




v
0




v
1




v
2




v
3






v
0




-

v
1





v
2




-

v
3





]











1





[




v
1






v
1




]











[




v
1




v
2






v
1




-

v
2





]











[




v
1




v
2




v
3






v
1




-

v
2





v
3




]











[




v
1




v
2




v
3




v
4






v
1




-

v
2





v
3




-

v
4





]











2





[




v
2






v
2




]











[




v
2




v
3






v
2




-

v
3





]











[




v
2




v
3




v
4






v
2




-

v
3





v
4




]











[




v
2




v
3




v
4




v
5






v
2




-

v
3





v
4




-

v
5





]











3





[




v
3






v
3




]











[




v
3




v
4






v
3




-

v
4





]











[




v
3




v
4




v
5






v
3




-

v
4





v
5




]











[




v
3




v
4




v
5




v
6






v
3




-

v
4





v
5




-

v
6





]











4





[




v
4






v
4




]











[




v
4




v
5






v
4




-

v
5





]











[




v
4




v
5




v
6






v
4




-

v
5





v
6




]











[




v
4




v
5




v
6




v
7






v
4




-

v
5





v
6




-

v
7





]











5





[




v
5






v
5




]











[




v
5




v
6






v
5




-

v
6





]











[




v
5




v
6




v
7






v
5




-

v
6





v
7




]











[




v
5




v
6




v
7




v
0






v
5




-

v
6





v
7




-

v
0





]











6





[




v
6






v
6




]











[




v
6




v
7






v
6




-

v
7





]











[




v
6




v
7




v
0






v
6




-

v
7





v
0




]











[




v
6




v
7




v
0




v
1






v
6




-

v
7





v
0




-

v
1





]











7





[




v
7






v
7




]











[




v
7




v
0






v
7




-

v
0





]











[




v
7




v
0




v
1






v
7




-

v
0





v
1




]











[




v
7




v
0




v
1




v
2






v
7




-

v
0





v
1




-

v
2





]











8





[




v
0






-

v
0





]











[




v
0




v
1






-

v
0





v
1




]











[




v
0




v
1




v
2






-

v
0





v
1




-

v
2





]











[




v
0




v
1




v
2




v
3






-

v
0





v
1




-

v
2





v
3




]











9





[




v
1






-

v
1





]











[




v
1




v
2






-

v
1





v
2




]











[




v
1




v
2




v
3






-

v
1





v
2




-

v
3





]











[




v
1




v
2




v
3




v
4






-

v
1





v
2




-

v
3





v
4




]











10





[




v
2






-

v
2





]











[




v
2




v
3






-

v
2





v
3




]











[




v
2




v
3




v
4






-

v
2





v
3




-

v
4





]











[




v
2




v
3




v
4




v
5






-

v
2





v
3




-

v
4





v
5




]











11





[




v
3






-

v
3





]











[




v
3




v
4






-

v
3





v
4




]











[




v
3




v
4




v
5






-

v
3





v
4




-

v
5





]











[




v
3




v
4




v
5




v
6






-

v
3





v
4




-

v
5





v
6




]











12





[




v
4






-

v
4





]











[




v
4




v
5






-

v
4





v
5




]











[




v
4




v
5




v
6






-

v
4





v
5




-

v
6





]











[




v
4




v
5




v
6




v
7






-

v
4





v
5




-

v
6





v
7




]











13





[




v
5






-

v
5





]











[




v
5




v
6






-

v
5





v
6




]











[




v
5




v
6




v
7






-

v
5





v
6




-

v
7





]











[




v
5




v
6




v
7




v
0






-

v
5





v
6




-

v
7





v
0




]











14





[




v
6






-

v
6





]











[




v
6




v
7






-

v
6





v
7




]











[




v
6




v
7




v
0






-

v
6





v
7




-

v
0





]











[




v
6




v
7




v
0




v
1






-

v
6





v
7




-

v
0





v
1




]











15





[




v
7






-

v
7





]











[




v
7




v
0






-

v
7





v
0




]











[




v
7




v
0




v
1






-

v
7





v
0




-

v
1





]











[




v
7




v
0




v
1




v
2






-

v
7





v
0




-

v
1





v
2




]











16





[




v
0






jv
0




]











[




v
0




v
1






jv
0




-

jv
1





]











[




v
0




v
1




v
2






jv
0




-

jv
1





jv
2




]











[




v
0




v
1




v
2




v
3






jv
0




-

jv
1





jv
2




-

jv
3





]











17





[




v
1






jv
1




]











[




v
1




v
2






jv
1




-

jv
2





]











[




v
1




v
2




v
3






jv
1




-

jv
2





jv
3




]











[




v
1




v
2




v
3




v
4






jv
1




-

jv
2





jv
3




-

jv
4





]











18





[




v
2






jv
2




]











[




v
2




v
3






jv
2




-

jv
3





]











[




v
2




v
3




v
4






jv
2




-

jv
3





jv
4




]











[




v
2




v
3




v
4




v
5






jv
2




-

jv
3





jv
4




-

jv
5





]











19





[




v
3






jv
3




]











[




v
3




v
4






jv
3




-

jv
4





]











[




v
3




v
4




v
5






jv
3




-

jv
4





jv
5




]











[




v
3




v
4




v
5




v
6






jv
3




-

jv
4





jv
5




-

jv
6





]











20





[




v
4






jv
4




]











[




v
4




v
5






jv
4




-

jv
5





]











[




v
4




v
5




v
6






jv
4




-

jv
5





jv
6




]











[




v
4




v
5




v
6




v
7






jv
4




-

jv
5





jv
6




-

jv
7





]











21





[




v
5






jv
5




]











[




v
5




v
6






jv
5




-

jv
6





]











[




v
5




v
6




v
7






jv
5




-

jv
6





jv
7




]











[




v
5




v
6




v
7




v
0






jv
5




-

jv
6





jv
7




-

jv
0





]











22





[




v
6






jv
6




]











[




v
6




v
7






jv
6




-

jv
7





]











[




v
6




v
7




v
0






jv
6




-

jv
7





jv
0




]











[




v
6




v
7




v
0




v
1






jv
6




-

jv
7





jv
0




-

jv
1





]











23





[




v
7






jv
7




]











[




v
7




v
0






jv
7




-

jv
0





]











[




v
7




v
0




v
1






jv
7




-

jv
0





jv
1




]











[




v
7




v
0




v
1




v
2






jv
7




-

jv
0





jv
1




-

jv
2





]











24





[




v
0






-

jv
0





]











[




v
0




v
1






-

jv
0





jv
1




]











[




v
0




v
1




v
2






-

jv
0





jv
1




-

jv
2





]











[




v
0




v
1




v
2




v
3






-

jv
0





jv
1




-

jv
2





jv
3




]











25





[




v
1






-

jv
1





]











[




v
1




v
2






-

jv
1





jv
2




]











[




v
1




v
2




v
3






-

jv
1





jv
2




-

jv
3





]











[




v
1




v
2




v
3




v
4






-

jv
1





jv
2




-

jv
3





jv
4




]











26





[




v
2






-

jv
2





]











[




v
2




v
3






-

jv
2





jv
3




]











[




v
2




v
3




v
4






-

jv
2





jv
3




-

jv
4





]











[




v
2




v
3




v
4




v
5






-

jv
2





jv
3




-

jv
4





jv
5




]











27





[




v
3






-

jv
3





]











[




v
3




v
4






-

jv
3





jv
4




]











[




v
3




v
4




v
5






-

jv
3





jv
4




-

jv
5





]











[




v
3




v
4




v
5




v
6






-

jv
3





jv
4




-

jv
5





jv
6




]











28





[




v
4






-

jv
4





]











[




v
4




v
5






-

jv
4





jv
5




]











[




v
4




v
5




v
6






-

jv
4





jv
5




-

jv
6





]











[




v
4




v
5




v
6




v
7






-

jv
4





jv
5




-

jv
6





jv
7




]











29





[




v
5






-

jv
5





]











[




v
5




v
6






-

jv
5





jv
6




]











[




v
5




v
6




v
7






-

jv
5





jv
6




-

jv
7





]











[




v
5




v
6




v
7




v
0






-

jv
5





jv
6




-

jv
7





jv
0




]











30





[




v
6






-

jv
6





]











[




v
6




v
7






-

jv
6





jv
7




]











[




v
6




v
7




v
0






-

jv
6





jv
7




-

jv
0





]











[




v
6




v
7




v
0




v
1






-

jv
6





jv
7




-

jv
0





jv
1




]











31





[




v
7






-

jv
7





]











[




v
7




v
0






-

jv
7





jv
0




]











[




v
7




v
0




v
1






-

jv
7





jv
0




-

jv
1





]











[




v
7




v
0




v
1




v
2






-

jv
7





jv
0




-

jv
1





jv
2




]















In other embodiments of the invention, codebooks resulting from column-exchange of the foregoing codebooks can also be applied in the invention. For example:


Codebook 4 (Resulting from Column-Exchange of the Codebook 1):














Index
Rank3 codebook
Rank4 codebook

















0





[




v
0





2



v
6




0





v
0



0




2



v
6





]











[




v
0



0



v
6



0




0



v
0



0



v
6




]











1





[




v
1





2



v
7




0





v
1



0




2



v
7





]











[




v
1



0



v
7



0




0



v
1



0



v
7




]











2





[




v
2





2



v
0




0





v
2



0




2



v
0





]











[




v
2



0



v
0



0




0



v
2



0



v
0




]











3





[




v
3





2



v
1




0





v
3



0




2



v
1





]











[




v
3



0



v
1



0




0



v
3



0



v
1




]











4





[




v
4





2



v
2




0





v
4



0




2



v
2





]











[




v
4



0



v
2



0




0



v
4



0



v
2




]











5





[




v
5





2



v
3




0





v
5



0




2



v
3





]











[




v
5



0



v
3



0




0



v
5



0



v
3




]











6





[




v
6





2



v
4




0





v
6



0




2



v
4





]











[




v
6



0



v
4



0




0



v
6



0



v
4




]











7





[




v
7





2



v
5




0





v
7



0




2



v
5





]











[




v
7



0



v
5



0




0



v
7



0



v
5




]











8





[




v
0




v
6




v
6






v
0




v
6




-

v
6





]











[




v
6




v
0




v
6




v
0






v
6




v
0




-

v
6





-

v
0





]











9





[




v
1




v
7




v
7






v
1




v
7




-

v
7





]











[




v
7




v
1




v
7




v
1






v
7




v
1




-

v
7





-

v
1





]











10





[




v
2




v
0




v
0






v
2




v
0




-

v
0





]











[




v
0




v
2




v
0




v
2






v
0




v
2




-

v
0





-

v
2





]











11





[




v
3




v
1




v
1






v
3




v
1




-

v
1





]











[




v
1




v
3




v
1




v
3






v
1




v
3




-

v
1





-

v
3





]











12





[




v
4




v
2




v
2






v
4




v
2




-

v
2





]











[




v
2




v
4




v
2




v
4






v
2




v
4




-

v
2





-

v
4





]











13





[




v
5




v
3




v
3






v
5




v
3




-

v
3





]











[




v
3




v
5




v
3




v
5






v
3




v
5




-

v
3





-

v
5





]











14





[




v
6




v
4




v
4






v
6




v
4




-

v
4





]











[




v
4




v
6




v
4




v
6






v
4




v
6




-

v
4





-

v
6





]











15





[




v
7




v
5




v
5






v
7




v
5




-

v
5





]











[




v
5




v
7




v
5




v
7






v
5




v
7




-

v
5





-

v
7





]
















Codebook 5 (Resulting from Column-Exchange of the Codebook 2):

















Rank1
Rank2
Rank3
Rank4


Index
codebook
codebook
codebook
codebook



















0





[




v
0






v
0




]











[




v
0




v
1






v
0




-

v
1





]











[




v
0




v
1




v
2






v
0




-

v
1





v
2




]











[




v
0




v
1




v
2




v
3






v
0




-

v
1





v
2




-

v
3





]











1





[




v
1






v
1




]











[




v
1




v
2






v
1




-

v
2





]











[




v
1




v
2




v
3






v
1




-

v
2





v
3




]











[




v
1




v
2




v
3




v
4






v
1




-

v
2





v
3




-

v
4





]











2





[




v
2






v
2




]











[




v
2




v
3






v
2




-

v
3





]











[




v
2




v
3




v
4






v
2




-

v
3





v
4




]











[




v
2




v
3




v
4




v
5






v
2




-

v
3





v
4




-

v
5





]











3





[




v
3






v
3




]











[




v
3




v
4






v
3




-

v
4





]











[




v
3




v
4




v
5






v
3




-

v
4





v
5




]











[




v
3




v
4




v
5




v
6






v
3




-

v
4





v
5




-

v
6





]











4





[




v
4






v
4




]











[




v
4




v
5






v
4




-

v
5





]











[




v
4




v
5




v
6






v
4




-

v
5





v
6




]











[




v
4




v
5




v
6




v
7






v
4




-

v
5





v
6




-

v
7





]











5





[




v
5






v
5




]











[




v
5




v
6






v
5




-

v
6





]











[




v
5




v
6




v
7






v
5




-

v
6





v
7




]











[




v
5




v
6




v
7




v
0






v
5




-

v
6





v
7




-

v
0





]











6





[




v
6






v
6




]











[




v
6




v
7






v
6




-

v
7





]











[




v
6




v
7




v
0






v
6




-

v
7





v
0




]











[




v
6




v
7




v
0




v
1






v
6




-

v
7





v
0




-

v
1





]











7





[




v
7






v
7




]











[




v
7




v
0






v
7




-

v
0





]











[




v
7




v
0




v
1






v
7




-

v
0





v
1




]











[




v
7




v
0




v
1




v
2






v
7




-

v
0





v
1




-

v
2





]











8





[




v
0






-

v
0





]











[




v
1




v
0






v
1




-

v
0





]











[




v
0




v
1




v
2






-

v
0





v
1




-

v
2





]











[




v
0




v
1




v
2




v
3






-

v
0





v
1




-

v
2





v
3




]











9





[




v
1






-

v
1





]











[




v
2




v
1






v
2




-

v
1





]











[




v
1




v
2




v
3






-

v
1





v
2




-

v
3





]











[




v
1




v
2




v
3




v
4






-

v
1





v
2




-

v
3





v
4




]











10





[




v
2






-

v
2





]











[




v
3




v
2






v
3




-

v
2





]











[




v
2




v
3




v
4






-

v
2





v
3




-

v
4





]











[




v
2




v
3




v
4




v
5






-

v
2





v
3




-

v
4





v
5




]











11





[




v
3






-

v
3





]











[




v
4




v
3






v
4




-

v
3





]











[




v
3




v
4




v
5






-

v
3





v
4




-

v
5





]











[




v
3




v
4




v
5




v
6






-

v
3





v
4




-

v
5





v
6




]











12





[




v
4






-

v
4





]











[




v
5




v
4






v
5




-

v
4





]











[




v
4




v
5




v
6






-

v
4





v
5




-

v
6





]











[




v
4




v
5




v
6




v
7






-

v
4





v
5




-

v
6





v
7




]











13





[




v
5






-

v
5





]











[




v
6




v
5






v
6




-

v
5





]











[




v
5




v
6




v
7






-

v
5





v
6




-

v
7





]











[




v
5




v
6




v
7




v
0






-

v
5





v
6




-

v
7





v
0




]











14





[




v
6






-

v
6





]











[




v
7




v
6






v
7




-

v
6





]











[




v
6




v
7




v
0






-

v
6





v
7




-

v
0





]











[




v
6




v
7




v
0




v
1






-

v
6





v
7




-

v
0





v
1




]











15





[




v
7






-

v
7





]











[




v
0




v
7






v
0




-

v
7





]











[




v
7




v
0




v
1






-

v
7





v
0




-

v
1





]











[




v
7




v
0




v
1




v
2






-

v
7





v
0




-

v
1





v
2




]
















Codebook 6 (Resulting from Column-Exchange of the Codebook 3):

















Rank1
Rank2
Rank3
Rank4


Index
codebook
codebook
codebook
codebook



















0





[




v
0






v
0




]











[




v
0




v
1






v
0




-

v
1





]











[




v
0




v
1




v
2






v
0




-

v
1





v
2




]











[




v
0




v
1




v
2




v
3






v
0




-

v
1





v
2




-

v
3





]











1





[




v
1






v
1




]











[




v
1




v
2






v
1




-

v
2





]











[




v
1




v
2




v
3






v
1




-

v
2





v
3




]











[




v
1




v
2




v
3




v
4






v
1




-

v
2





v
3




-

v
4





]











2





[




v
2






v
2




]











[




v
2




v
3






v
2




-

v
3





]











[




v
2




v
3




v
4






v
2




-

v
3





v
4




]











[




v
2




v
3




v
4




v
5






v
2




-

v
3





v
4




-

v
5





]











3





[




v
3






v
3




]











[




v
3




v
4






v
3




-

v
4





]











[




v
3




v
4




v
5






v
3




-

v
4





v
5




]











[




v
3




v
4




v
5




v
6






v
3




-

v
4





v
5




-

v
6





]











4





[




v
4






v
4




]











[




v
4




v
5






v
4




-

v
5





]











[




v
4




v
5




v
6






v
4




-

v
5





v
6




]











[




v
4




v
5




v
6




v
7






v
4




-

v
5





v
6




-

v
7





]











5





[




v
5






v
5




]











[




v
5




v
6






v
5




-

v
6





]











[




v
5




v
6




v
7






v
5




-

v
6





v
7




]











[




v
5




v
6




v
7




v
0






v
5




-

v
6





v
7




-

v
0





]











6





[




v
6






v
6




]











[




v
6




v
7






v
6




-

v
7





]











[




v
6




v
7




v
0






v
6




-

v
7





v
0




]











[




v
6




v
7




v
0




v
1






v
6




-

v
7





v
0




-

v
1





]











7





[




v
7






v
7




]











[




v
7




v
0






v
7




-

v
0





]











[




v
7




v
0




v
1






v
7




-

v
0





v
1




]











[




v
7




v
0




v
1




v
2






v
7




-

v
0





v
1




-

v
2





]











8





[




v
0






-

v
0





]











[




v
1




v
0






v
1




-

v
0





]











[




v
0




v
1




v
2






-

v
0





v
1




-

v
2





]











[




v
0




v
1




v
2




v
3






-

v
0





v
1




-

v
2





v
3




]











9





[




v
1






-

v
1





]











[




v
2




v
1






v
2




-

v
1





]











[




v
1




v
2




v
3






-

v
1





v
2




-

v
3





]











[




v
1




v
2




v
3




v
4






-

v
1





v
2




-

v
3





v
4




]











10





[




v
2






-

v
2





]











[




v
3




v
2






v
3




-

v
2





]











[




v
2




v
3




v
4






-

v
2





v
3




-

v
4





]











[




v
2




v
3




v
4




v
5






-

v
2





v
3




-

v
4





v
5




]











11





[




v
3






-

v
3





]











[




v
4




v
3






v
4




-

v
3





]











[




v
3




v
4




v
5






-

v
3





v
4




-

v
5





]











[




v
3




v
4




v
5




v
6






-

v
3





v
4




-

v
5





v
6




]











12





[




v
4






-

v
4





]











[




v
5




v
4






v
5




-

v
4





]











[




v
4




v
5




v
6






-

v
4





v
5




-

v
6





]











[




v
4




v
5




v
6




v
7






-

v
4





v
5




-

v
6





v
7




]











13





[




v
5






-

v
5





]











[




v
6




v
5






v
6




-

v
5





]











[




v
5




v
6




v
7






-

v
5





v
6




-

v
7





]











[




v
5




v
6




v
7




v
0






-

v
5





v
6




-

v
7





v
0




]











14





[




v
6






-

v
6





]











[




v
7




v
6






v
7




-

v
6





]











[




v
6




v
7




v
0






-

v
6





v
7




-

v
0





]











[




v
6




v
7




v
0




v
1






-

v
6





v
7




-

v
0





v
1




]











15





[




v
7






-

v
7





]











[




v
0




v
7






v
0




-

v
7





]











[




v
7




v
0




v
1






-

v
7





v
0




-

v
1





]











[




v
7




v
0




v
1




v
2






-

v
7





v
0




-

v
1





v
2




]











16





[




v
0






jv
0




]











[




v
0




v
1






jv
0




-

jv
1





]











[




v
0




v
1




v
2






jv
0




-

jv
1





jv
2




]











[




v
0




v
1




v
2




v
3






jv
0




-

jv
1





jv
2




-

jv
3





]











17





[




v
1






jv
1




]











[




v
1




v
2






jv
1




-

jv
2





]











[




v
1




v
2




v
3






jv
1




-

jv
2





jv
3




]











[




v
1




v
2




v
3




v
4






jv
1




-

jv
2





jv
3




-

jv
4





]











18





[




v
2






jv
2




]











[




v
2




v
3






jv
2




-

jv
3





]











[




v
2




v
3




v
4






jv
2




-

jv
3





jv
4




]











[




v
2




v
3




v
4




v
5






jv
2




-

jv
3





jv
4




-

jv
5





]











19





[




v
3






jv
3




]











[




v
3




v
4






jv
3




-

jv
4





]











[




v
3




v
4




v
5






jv
3




-

jv
4





jv
5




]











[




v
3




v
4




v
5




v
6






jv
3




-

jv
4





jv
5




-

jv
6





]











20





[




v
4






jv
4




]











[




v
4




v
5






jv
4




-

jv
5





]











[




v
4




v
5




v
6






jv
4




-

jv
5





jv
6




]











[




v
4




v
5




v
6




v
7






jv
4




-

jv
5





jv
6




-

jv
7





]











21





[




v
5






jv
5




]











[




v
5




v
6






jv
5




-

jv
6





]











[




v
5




v
6




v
7






jv
5




-

jv
6





jv
7




]











[




v
5




v
6




v
7




v
0






jv
5




-

jv
6





jv
7




-

jv
0





]











22





[




v
6






jv
6




]











[




v
6




v
7






jv
6




-

jv
7





]











[




v
6




v
7




v
0






jv
6




-

jv
7





jv
0




]











[




v
6




v
7




v
0




v
1






jv
6




-

jv
7





jv
0




-

jv
1





]











23





[




v
7






jv
7




]











[




v
7




v
0






jv
7




-

jv
0





]











[




v
7




v
0




v
1






jv
7




-

jv
0





jv
1




]











[




v
7




v
0




v
1




v
2






jv
7




-

jv
0





jv
1




-

jv
2





]











24





[




v
0






-

jv
0





]











[




v
1




v
0






jv
1




-

jv
0





]











[




v
0




v
1




v
2






-

jv
0





jv
1




-

jv
2





]











[




v
0




v
1




v
2




v
3






-

jv
0





jv
1




-

jv
2





jv
3




]











25





[




v
1






-

jv
1





]











[




v
2




v
1






jv
2




-

jv
1





]











[




v
1




v
2




v
3






-

jv
1





jv
2




-

jv
3





]











[




v
1




v
2




v
3




v
4






-

jv
1





jv
2




-

jv
3





jv
4




]











26





[




v
2






-

jv
2





]











[




v
3




v
2






jv
3




-

jv
2





]











[




v
2




v
3




v
4






-

jv
2





jv
3




-

jv
4





]











[




v
2




v
3




v
4




v
5






-

jv
2





jv
3




-

jv
4





jv
5




]











27





[




v
3






-

jv
3





]











[




v
4




v
3






jv
4




-

jv
3





]











[




v
3




v
4




v
5






-

jv
3





jv
4




-

jv
5





]











[




v
3




v
4




v
5




v
6






-

jv
3





jv
4




-

jv
5





jv
6




]











28





[




v
4






-

jv
4





]











[




v
5




v
4






jv
5




-

jv
4





]











[




v
4




v
5




v
6






-

jv
4





jv
5




-

jv
6





]











[




v
4




v
5




v
6




v
7






-

jv
4





jv
5




-

jv
6





jv
7




]











29





[




v
5






-

jv
5





]











[




v
6




v
5






jv
6




-

jv
5





]











[




v
5




v
6




v
7






-

jv
5





jv
6




-

jv
7





]











[




v
5




v
6




v
7




v
0






-

jv
5





jv
6




-

jv
7





jv
0




]











30





[




v
6






-

jv
6





]











[




v
7




v
6






jv
7




-

jv
6





]











[




v
6




v
7




v
0






-

jv
6





jv
7




-

jv
0





]











[




v
6




v
7




v
0




v
1






-

jv
6





jv
7




-

jv
0





jv
1




]











31





[




v
7






-

jv
7





]











[




v
0




v
7






jv
0




-

jv
7





]











[




v
7




v
0




v
1






-

jv
7





jv
0




-

jv
1





]











[




v
7




v
0




v
1




v
2






-

jv
7





jv
0




-

jv
1





jv
2




]















As illustrated in FIG. 2, which is a flow chart of a method for transmitting information in a multi-antenna system according to an embodiment of the invention, the method includes the following steps.


S201: A transmitting device receives information including codeword index information transmitted from a receiving device and extracts the codeword index information therefrom. Specifically, in order to know the channel condition, the transmitting device receives a Channel Quality Indicator (CQI), a selected Rank, a selected codeword and other information fed back from a remote receiver. Such information of the CQI, the selected Rank and the selected codeword will be used in a subsequent transmission process.


In the embodiment of the invention, a codeword cnr codebook satisfies the following relationship:






c
n
r=[Φkr(:,1)custom-characterwmr(:,1) Φkr(:,2)custom-characterwmr(:,2) . . . Φkr(:,r)custom-characterwmr(:,r)],


where Φkr is a 2×r-dimension matrix, k=0,1, . . . , Kr-1, wmr is a NT/2×r-dimension matrix, m=0,1, . . . , Mr-1, X(:,l) represents the lth column of a matrix X, and custom-character represents a direct product of matrices; and a set consists of a number Kr of Φkr is a transformation codebook of the codebook in the two-stage structure, and set consists of a number Mr of wmr is a basic codebook of the codebook in the two-stage structure. Therefore, the fed-back codeword index information can be the codeword index n in the codebook, the codeword indexes k and m in the transformation codebook and the basic codebook, or another combination of k and m. In the codebook 3, for example, if the fed-back codeword index information is n ∈ {0, . . . , 31}, a corresponding codeword can be retrieved directly from the codebook; and if the fed-back codeword index information is k ∈ {0, . . . , 3} and m ∈ {0, . . . , 7}, a corresponding codeword can also be retrieved from the codebook; and also since the codeword in this codebook satisfies the following characteristic:












c
n
r

=



[





c
l
r



(


1
:


N
T

/
2


,
:

)








f


(
l
)





c
l
r



(





N
T

/
2

+
1

:

N
T


,
:

)






]


,


where






f


(
l
)



=

{




1



l

7





j



l
>
7









and










c
l
r

=



[






Φ
k
r



(

:

,
1


)





w
m
r



(

:

,
1


)








Φ
k
r



(

:

,
2


)





w
m
r



(

:

,
2


)











Φ
k
r



(

:

,
r


)





w
m
r



(

:

,
r


)






]





,




where X(l1,l2,:) represents a matrix consists of the l1th to l2th row vectors in the matrix X, therefore, if the fed-back codeword index information is l ∈ {0, . . . , 15} and f(l), a corresponding codeword can also be retrieved from the codebook.


S202: The transmitting device selects a corresponding codeword from a codebook in a two-stage structure according to the codeword index information, and all of the foregoing codebooks 1 to 5 can be applied in this embodiment.


S203: The transmitting device performs a transformation process (e.g., a zero-forcing process, etc.) based upon the codeword to obtain a pre-coding matrix. Of course, the corresponding codeword can alternatively be taken directly as a pre-coding matrix in another embodiment.


S204: The transmitting device pre-codes data to be transmitted according to the pre-coding matrix.


S205: The transmitting device transmits the pre-coded data to the receiving device.


As illustrated in FIG. 3, which is a flow chart of a method for receiving information in a multi-antenna system according to an embodiment of the invention, the method includes the following steps.


S301: A receiving device receives information transmitted from a transmitting device.


S302: The receiving device estimates channel state information according to the received information.


S303: The receiving device selects a corresponding codeword from a codebook in a two-stage structure according to the channel state information, and all of the foregoing codebooks 1 to 5 can be applied in this embodiment.


S304: The receiving device generates codeword index information of the selected codeword. Like the foregoing embodiment, since the codeword satisfies the following relationship:






c
l
r=[Φkr(:,1)custom-characterwmr(:,1) Φkr(:,2)custom-characterwmr(:,2) . . . Φkr(:,r)custom-characterwmr(:,r)],


where Φkr is a 2×r-dimension matrix, k=0,1, . . . , Kr-1, wmr is a NT/2×r-dimension matrix, m=0,1, . . . , Mr-1, X(:,l) represents the lth column of a matrix X, and custom-character represents a direct product of matrices; and a set consists of a number Kr of Φkr is a transformation codebook of the codebook in the two-stage structure, and a set consists of a number Mr of wmr is a basic codebook of the codebook in the two-stage structure, therefore the generated codeword index information can be the codeword index n in the codebook, the codeword indexes k and m in the transformation codebook and the basic codebook, or another combination of k and m. In the codebook 3, for example, the fed-back codeword index information can be n ∈ {0, . . . , 31}; or the fed-back codeword index information can be k ∈ {0, . . . , 3} and m ∈ {0, . . . , 7}, and a transmitting device can retrieve a corresponding codeword from the codebook according to either the codeword index n or the combination of the codeword indexes k and m; and also since the codeword in this codebook satisfies the following characteristic:












c
n
r

=



[





c
l
r



(


1
:


N
T

/
2


,
:

)








f


(
l
)





c
l
r



(





N
T

/
2

+
1

:

N
T


,
:

)






]


,


where






f


(
l
)



=

{




1



l

7





j



l
>
7









and










c
l
r

=






[






Φ
k
r



(

:

,
1


)





w
m
r



(

:

,
1


)








Φ
k
r



(

:

,
2


)





w
m
r



(

:

,
2


)


















Φ
k
r



(

:

,
r


)





w
m
r



(

:

,
r


)



]








,




where X(l1:l2,:) represents a matrix consists of the l1th to l2th row vectors in the matrix X, therefore if the fed-back codeword index information is l ∈ {0, . . . , 15} and f(l), the transmitting device can also retrieve a corresponding codeword from the codebook.


S305: The receiving device transmits information including the codeword index information to the transmitting device.


Reference is made to FIG. 4 illustrating a schematic structural diagram of a transmitting device according to an embodiment of the invention, which includes a receiving module 110, a codebook storing module 120, a codeword determining module 130, a pre-coding matrix calculating module 140, a pre-coding module 150 and a transmitting module 160. The receiving module 110 is configured to receive information including codeword index information transmitted from a receiving device. The codebook storing module 120 is configured to store a codebook in a two-stage structure. The codeword determining module 130 is configured to select a corresponding codeword from the codebook in the two-stage structure stored in the codebook storing module 120 according to the codeword index information. The pre-coding matrix calculating module 140 is configured to generate a pre-coding matrix according to the selected codeword, for example, perform a transformation process (e.g., zero-forcing process, etc.) based upon the codeword to obtain a pre-coding matrix or take the corresponding codeword directly as a pre-coding matrix. The pre-coding module 150 is configured to pre-code data to be transmitted according to the pre-coding matrix. The transmitting module 160 is configured to transmit the pre-coded data to the receiving device.


Reference is made to FIG. 5 illustrating a schematic structural diagram of a receiving device according to an embodiment of the invention, which includes a receiving module 210, a channel estimating module 220, a codebook storing module 230, a codeword selecting module 240, a codeword index information generating module 250 and a transmitting module 260. The receiving module 210 is configured to receive information transmitted from a transmitting device. The channel estimating module 220 is configured to estimate channel state information according to the information received by the receiving module 210. The codebook storing module 230 is configured to store a codebook in a two-stage structure. The codeword selecting module 240 is configured to select a corresponding codeword from the codebook in the two-stage structure according to the e channel state information. The codeword index information generating module 250 is configured to generate codeword index information of the selected codeword. The transmitting module 260 is configured to transmit information including the codeword index information to the transmitting device.


In the foregoing solutions proposed according to the embodiments of the invention, a formed and used codebook matches as closely as possibly a channel distribution characteristic of a dually polarized antenna to minimize a performance loss due to quantization of the codebook, thereby improving effectively the performance of a pre-coding system. Furthermore, the codebook proposed by the invention has a two-stage structure and can support both a feedback of one PMI and a feedback of two PMIs.


Those ordinarily skilled in the art can appreciate that all or a part of the steps in the methods according to the foregoing embodiments of the invention can be perfumed in program instructing relevant hardware, which may be stored in a computer readable storage medium and which upon execution can perform one or combination of the steps in the methods according to the embodiments.


Furthermore, the respective functional elements in the respective embodiments of the invention can be integrated in a processing module or can physically exist separately or two or inure of the elements can be integrated in a module. The integrated module can be embodied in the form of hardware or in the form of a software functional module. If the integrated module is embodied in the form of a software functional module and sold or used as a separate product, it can be stored in a computer readable storage medium.


The storage medium mentioned above can be a read only memory, a magnetic disk, an optical disk, etc.


The foregoing description is merely illustrative of the preferred embodiments of the invention, and it shall be pointed out that those ordinarily skilled in the art can further make several adaptations and modifications without departing from the principle of the invention and these adaptations and modifications shall also be construed as coming into the scope of the invention.

Claims
  • 1. A method for transmitting information in a closed-loop multi-antenna system, comprising; receiving, by a transmitting device, information comprising codeword index information transmitted from a receiving device;selecting, by the transmitting device, a corresponding codeword from a codebook in a two-stage structure according to the codeword index information;generating, by the transmitting device, a pre-coding matrix from the selected codeword;pre-coding, by the transmitting device, data to be transmitted according to the pre-coding matrix; andtransmitting, by the transmitting device, the pre-coded data to the receiving device.
  • 2. The method for transmitting information in a closed-loop multi-antenna system according to claim 1, wherein a codeword cnr in the codebook in the two-stage structure satisfies the following relationship:
  • 3. The method for transmitting information in a closed-loop multi-antenna system according to claim 2, wherein a column vector of the matrix wmr is a truncated 2K-DFT vector, and wherein 2K≧NT/2 and K is a natural number; and if cnr is a codeword with a unitary characteristic, column vectors of the codeword wmr of the basic codebook, corresponding to mutually non-orthogonal columns of the codeword Φkr in the transformation codebook, are mutually orthogonal.
  • 4. The method for transmitting information a closed-loop multi-antenna system according to claim 3, wherein with NT=8, the matrix Φkr takes its values selected from all or a part of matrices in Table 1 below or first r columns in all or a part of matrices in Table 2 below, and the matrix wmr takes its values selected from all or a part of matrices in Table 3 below or first r columns in all or a part of matrices in Table 4 below: Table 1 is:
  • 5. The method for transmitting information in a closed-loop multi-antenna system according to claim 1, wherein the codebook in the two-stage structure comprises a codebook resulting from column exchange.
  • 6. A method for receiving information in a closed-loop multi-antenna system comprising: receiving, by a receiving device, information transmitted from a transmitting device;estimating, by the receiving device, channel state information according to the information;selecting, by the receiving device, a corresponding codeword from a codebook in a two-stage structure according to the channel state information;generating, by the receiving device, codeword index information of the selected codeword; andtransmitting, by the receiving device, the codeword index information of the codeword to the transmitting device.
  • 7. The method for receiving information in a closed-loop multi-antenna system according to claim 6, wherein a codeword cnr in the codebook in the two-stage structure satisfies the following relationship:
  • 8. The method for receiving information in a closed-loop multi-antenna system according to claim 7, wherein a column vector of the matrix wmr is a truncated 2K-DFT vector, and wherein 2K≧NT/2 and K is a natural number; and if is a code cord with a unitary characteristic, column vectors of the code wmr of the basic codebook, corresponding to mutually non-orthogonal columns of the codeword Φkr in the transformation codebook, are mutually orthogonal.
  • 9. The method for receiving information in a closed-loop multi-antenna system according to claim 8, wherein with NT=8 the matrix Φkr takes its values selected from all or a part of matrices in Table 1 below or first r columns in all or a part of matrices in Table 2 below, and the matrix wmr takes its values selected from all or a part of matrices in Table 3 below or first r columns in all or a part of matrices in Table 4 below: Table 1 is:
  • 10. The method for receiving information in a closed-loop multi-antenna system according to claim 6, wherein the codebook in the two-stage structure comprises a codebook resulting from column exchange.
  • 11. A transmitting device, comprising a receiving module, a codeword determining module, a pre-coding matrix calculating module, a pre-coding module and a transmitting module, wherein: the receiving module is configured to receive information comprising codeword index information transmitted from a receiving device;the codeword determining module is configured to select a corresponding codeword from a codebook in a two-stage structure according to the codeword index information;the pre-coding matrix calculating module is configured to generate a pre-coding matrix according to the selected codeword;the pre-coding module is configured to pre-code data to be transmitted according to the pre-coding matrix; andthe transmitting module is configured to transmit the pre-coded data to the receiving device.
  • 12. The transmitting device according to claim 11, wherein a codeword cnr in the codebook in the two-stage structure satisfies the following relationship:
  • 13. The transmitting device according to claim 12, wherein a column vector of the matrix wmr is a truncated 2K-DFT vector, and wherein 2K≧NT/2 and K is a natural number; and if cnr is a codeword with a unitary characteristic, column vectors of the codeword of the basic codebook, corresponding to mutually non-orthogonal columns of the codeword Φkr in the transformation codebook, are mutually orthogonal.
  • 14. The transmitting device according to claim 13, wherein with NT=8, the matrix Φkr takes its values selected from all or a part of matrices in Table 1 below or first r columns in all or a part of matrices in Table 2 below, and the matrix wmr takes its values selected from all or a part of matrices in Table 3 below or first r columns in all or a part of matrices in Table 4 below: Table 1 is:
  • 15. The transmitting device according to claim 11, wherein the codebook in the two-stage structure comprises a codebook resulting from column exchange.
  • 16. A receiving device, comprising a receiving module, a channel estimating module, a codeword selecting module, a codeword index information generating module and a transmitting module, wherein: the receiving module is configured to receive information transmitted from a transmitting device;the channel estimating module is configured to estimate channel state information according to the information;the codeword selecting module is configured to select a corresponding codeword from a codebook in a two-stage structure according to the channel state information;the code-word index information generating module is configured to generate codeword index information of the selected codeword; andthe transmitting module is configured to transmit the codeword index information of the codeword to the transmitting device.
  • 17. The receiving device according to claim 16, wherein a codeword cnr in the codebook in the two-stage structure satisfies the following relationship:
  • 18. The receiving device according to claim 17, wherein a column vector of the matrix wmr is a truncated 2K-DFT vector, and wherein 2K≧NT/2 and K is a natural number; and if cnr is a codeword with a unitary characteristic, column vectors of the codeword w of the basic codebook, corresponding to mutually non-orthogonal columns of the codeword Φkr in the transformation codebook, are mutually orthogonal.
  • 19. The receiving device according to claim 18, wherein with NT=8, the matrix Φkr takes its values selected from all or a part of matrices in Table 1 below or first r columns in all or a part of matrices in Table 2 below, and the matrix wmr takes its values selected from all or a part of matrices in Table 3 below or first r columns in all or a part of matrices in Table 4 below: Table 1 is:
  • 20. The receiving device according to claim 16, wherein the codebook in the two-stage structure comprises a codebook resulting from column exchange.
Priority Claims (1)
Number Date Country Kind
2010101099223.2 Feb 2010 CN national
PCT Information
Filing Document Filing Date Country Kind 371c Date
PCT/CN11/00190 1/31/2011 WO 00 8/8/2012