The present disclosure relates to a method of managing control information in a multi-user multi-input, multi-output system.
The present disclosure also relates to a multi-user multi-input multi-output system, different units belonging to such a system, and to various computer program elements whereby an inventive method or inventive units can be realized.
In a multiple-input, multiple-output (MIMO) communication system using wireless orthogonal frequency division multiplexing (OFDM), the use of multiple antennas is much preferred in order to increase the performance of the system. When multiple antenna transmission at the transmitter side, either the base station or the mobile station, is used, then the space dimension can be exploited for scheduling of the transmission to the different users in the system.
To increase the throughput of the cell, an OFDM time-frequency resource can simultaneously be shared by multiple users. This is described in publications “Philips, 3GPP Technical document R1-071403”, “Samsung, 3GPP Technical document R1-060335”, “On the optimality of multiantenna broadcast scheduling using zero forcing beamforming” by T. Yoo and A. Goldsmith, IEEE journal on selected areas in communications, Vol. 24, No. 3, March 2006, pp. 528-541.
When two or more users share the same time-frequency resource, the transmissions to the co-scheduled users will mutually interfere with each other at the receiver side.
To minimize this interference between the co-scheduled users, precoding at the base station is performed in form of a linear mapping of each users signal to the transmitter antennas. This linear mapping is easily described by a matrix multiplication, where a precoding matrix, is jointly selected by the scheduled mobile users to minimize the mutual interference. Hence, precoded MU-MIMO is a closed loop MIMO scheme where the transmission is adjusted based on the channel to the co-scheduled mobile users.
In more detail, each mobile user selects a channel quantization vector (CQV) from a finite mobile user codebook of precoding vectors. The CQV is a quantization of the estimated channel vector from the NT base station transmitter antennas to the receiver antenna at the mobile user. If the mobile user has multiple receive antennas, the mobile user can find a receiver filter to combine the multiple receive antennas to obtain a virtual single antenna. The CQV is then estimated as the channel from the NT base station transmitter antennas to the single virtual receive antenna, i.e. after receiver filtering.
The selected CQV from the mobile user codebook is signalled to the base station. The scheduler in the base station then determines which mobile users are to be co-scheduled in an OFDM time frequency resource and selects the precoding matrix based on the reported CQV from these users.
For correct reception and demodulation of the transmitted signals, the mobile users need to have knowledge of the used transmitter precoding matrix and this information needs to be signalled to the mobile users.
Furthermore, knowledge of the full precoding matrix at the mobile user enables the use of interference suppression algorithms to minimize the residual interference from co-scheduled mobile users.
In “Philips, 3GPP Technical document R1-071403”, a method to solve the large signalling overhead problem is discussed where it is suggested to use dedicated precoded reference signals, one set of reference signals per scheduled mobile user. The overhead of this method is compared with the overhead of signalling the used base station precoding matrix index. However, no attempt was made in the comparison to reduce the signalling overhead in the downlink from the upper limit value of log2(KL) bits where K is the user codebook size and L is the number of co-scheduled users.
One problem with MU-MIMO signalling lies in the overhead of signalling the used precoding matrix at the base station transmitter to all the scheduled mobile users. If L mobile users are scheduled together in a mutual OFDM time-frequency resource, and there is a one-to-one correspondence between the selected vectors in the mobile user codebook and the selected base station precoding matrix, then there are KL possible base station transmitter precoding matrices where K is the number of vectors in the mobile user codebook. To signal the used transmitter precoding matrix in the downlink, L·log2(K) bits are needed, which generally is too large to be practical.
In present disclosure the predefined function is known to each user unit, the control information to each user unit only contains information on the index from every other user unit, and respective user unit regenerates the precoding matrix according to its own index, other user units' indices and the predefined function.
Since the base unit must have used the index of the user unit in the construction of the precoding matrix, the user unit has a prior knowledge of how the precoding matrix is constructed and this need not to be re-confirmed; only the residual information needs to be signalled to user unit. This will limit the required number of bits to represent the precoding matrix in the control message from L·log2(K) bits to (L−1)·log2(K) bits, which is a significant reduction of the control signalling. The index from the user codebook could for instance correspond to a requested channel quantization vector.
In one embodiment of the present disclosure the base unit and respective user unit agree on forbidden combinations of indices from co-scheduled user units and take these forbidden combinations into consideration when selecting/regenerating the precoding matrix. Defined forbidden combinations of indices limits the possible amount of precoding matrices and thus limits the number of bits required to represent all possible precoding matrices to (L−1)·log2(S) bits where S<K.
One proposed way of deciding on forbidden combinations is to have the base unit and respective user units to agree on a real-valued positive threshold (T), where a first user unit (A) and a second user unit (B) is only allowed to be co-scheduled if their respective indices represent vectors (ūa, ūb) that fulfils the condition |ūa*ūb|≦T.
There are different functions that can be used to create the precoding matrix and one proposed predefined function is the Zero Forcing precoder, which for L co-scheduled user units can be written as:
ƒ(
and the output of the function ƒ is a NT by L precoding matrix.
If a user unit is not co-scheduled with another user unit, then the base unit transmits a single stream and indicates this in the control information to the user unit. It is also taught that if the least amount of bits required to represent the possible amount of precoding matrices has at least one free bit combination, then it is possible to allow one bit combination to represent single stream transmission.
In a method, system, a base unit, a user unit and a computer program element according to the present disclosure, less number of bits are required to represent the used precoding matrix in the control messages form the base unit to the user units. This will significantly reduce the signalling overhead for MU-MIMO communication systems.
A method, a system, units and various computer program elements according to the present disclosure will now be described in detail with reference to the accompanying drawings, in which:
An inventive method of managing control information will now be described with reference to
Respective user unit 31 sends an index a1 representing a vector ū from a user codebook 311 belonging to the user unit 31.
Respective user unit 32 sends an index a2 representing a vector ū from a user codebook 321 belonging to the user unit 32.
A user codebook, e.g. 311,321, can be defined consisting of K vectors
UN
and each user unit 31, 32 reports its preferred vector ū through their respective index a1,a2.
Assume that L users are MU-MIMO co-scheduled which have reported indices a1, a2, . . . , aL from the user codebooks, e.g. 311,321, where 1≦al≦K, l=1, 2, . . . , L. It is well known that users which have reported the same user unit codebook index can not be MU-MIMO co-scheduled together since it makes user separation with linear receiver impossible, so all al are unique. Without loss of generality, rearrange the user indices and define a new set as a1, . . . , aL such that 1≦al<a2< . . . ≦K.
Similar to the user codebook, e.g. 311,321, a base unit codebook 21 is defined as
ΨN
where each precoding matrix Wp is a NT·L matrix. The size of the codebook 21 is generally much larger than the user codebook, e.g., 311,321. The precoding matrix used at the base unit is a function of the selected user unit codebook vectors, hence
Wp=ƒ(ūa
where the function ƒ is a unique mapping function from the set of vectors indicated by the scheduled user unit codebook indices a1, . . . , aL. The unique mapping between the subset of user unit codebook indices a1, . . . , aL and a base unit codebook index p can be defined as p=I(a1, . . . , aL).
The mapping assures that for each subset a1, . . . , aL one and only one base unit codebook index p is defined.
The mapping also assures that for each base unit codebook index p, one and only one subset a1, . . . , aL is defined.
Each of the allowed combinations a1, . . . , aL gives a unique base unit codebook index p and thus define the base unit codebook.
Furthermore, for some particular sets a1, . . . , aL, no precoding matrix is defined, thereby the particular a1, . . . , aL is in this case a forbidden selection. The forbidden selections of a1, . . . , aL are known in the system to both the transmitter and the receivers. For instance, we have already introduced the forbidden selection a1=a2= . . . =aL above.
As described above, the base unit 2 co-schedules compatible user units 31, 32 to simultaneously share one time-frequency resource, and in doing so the base unit 2 selects a precoding matrix from the base unit codebook based on the indices a1, a2 received from co-scheduled user units, the selection being made according to a predefined function ƒ.
The control signalling is to indicate to each scheduled user unit, which precoding matrix from the base unit codebook is used. Since the size of the base unit codebook 21 is P matrices, log2(P) bits are needed for this control signalling, and in conventional art the same message is sent to each user.
However, the present disclosure is to reduce this overhead. The disclosure relies in that each scheduled user unit get residual information only, that is, only new information. Therefore, the message 23r, 23r′ to each user unit will be different.
For a certain user A, which has reported a user unit codebook index aA, there exists an ordered subset of the base unit codebook 21. This subset can be described as {Wb1 Wb2 . . . WbQ}.
The subset can be identified using the Q indices to the base unit codebook
bq=I(a1, . . . ,aA, . . . ,aL)q=1, . . . ,Q
Therefore, for each user unit codebook vector defined by an index a, there exists a subset of base unit codebook indices as
Ba={b1(a). . . bQ(a)}.
So, when a user unit has selected a vector a in the user unit codebook, it knows, that if it is scheduled, the base unit precoding matrix will have an index belonging to Ba. This fact is the key which is used to reduce the control signalling, since it is only necessary to inform this user which of the indices in Ba is used.
The number Q and the subsets Ba are determined by obeying the restrictions
When the used base unit precoding matrix is signalled to user unit 31, only the index q from the ordered Ba={b1(a) . . . bQ(a)}, q=1, . . . , Q needs to be signalled and thus log2(Q) bits needs to be signalled to the user unit 31. The procedure is repeated for the other user unit 32 and log2(Q) bits are thus also signalled to the user unit 32, however, the bits to the user unit 31 is different to those to the user unit 32.
Since the predefined function ƒ is known to each user unit 31, 32 it is thus enough that the control information to each user unit, for example user unit 31 only contains information on the index a2 from every other user unit 32. This enables respective user unit to regenerate the precoding matrix Wp according to its own index a1, other user units indices a2 and the predefined function ƒ.
It is proposed that the index from the user codebook 311 corresponds to a requested channel quantization vector (CQV).
To reduce the signalling even more it is proposed that the base unit 21 and respective user unit 31, 32 agree on forbidden combinations of indices from co-scheduled user units and takes these forbidden combinations into consideration when regenerating the precoding matrix.
One way of using forbidden combinations of indices is to introduce a restriction on the relation between reported user unit codebook vectors in a co-scheduled resource, i.e., forbidden selections of user codebook indices are introduced. If a first user unit 31, A and a second user unit 32, B are co-scheduled and the first user unit A has reported the vector ūa from the user codebook 311 and the second user unit B has reported ūb, the restriction could be that the two user units A, B can only be co-scheduled in a time-frequency resource if |ūa*ūb|≦T where T is a real-valued positive threshold known in the system. With this restriction, the size of the base unit codebook 21 is reduced and it will also impact the number Q above.
A practical example of the present disclosure will now be disclosed. A user unit codebook 311 consisting of CQVs is defined. Also a base unit codebook 21 consisting of precoding matrices is defined. Each co-scheduled user unit has reported an index corresponding to a vector in the user unit codebook 311. A scheduling unit 22, belonging to the base unit 2, selects L users and finds the matrix p in the base unit codebook by p=I(a1, . . . , aL). To signal the selection p to the L scheduled users, L individual control messages are assembled as follows. To a first user unit which has reported user codebook index aA the set
Ba
is generated where
bq(a
for all allowed combinations of {a1, . . . , aL} which includes aA. The first user unit A is thus signalled the position number q in Ba where
bq(a
Since the first user unit knows aA, and that the subset of indices a1, . . . , aL are ordered such that 1≦a1<a2< . . . <aL≦K; it can generate Ba and from q it can obtain p. Also, from the ordering a1, . . . , aL, the first user unit A gets information on which of the columns of the precoding matrix p is intended for the first user unit A.
Assume that the number of transmitter antennas NT is 4 at the base unit, that the user unit codebook size is K=16 and L=2 user units that are possible to MU-MIMO co-schedule. In total, there are 162=256 “possible” precoding matrices which then will require 8 bits to signal to the two user units which precoding matrix is used.
Assume a threshold of T=0.25 to introduce forbidden selections of indices. This gives P=56 allowed precoding matrices assuming a Discrete Fourier Transform mobile user codebook according to “Samsung, 3GPP Technical document R1-060335” and by a method which indicates which one of the allowed base unit precoding matrices is used, the required signalling is 6 bits.
The signalling can be reduced further according to the present disclosure by only signalling the uplink reported user unit codebook index of the MU-MIMO co-scheduled users. Due to the forbidden selections of indices, for each particular vector ūa there are only Q=7 “allowed” vectors ūb that can be paired with ūa. Therefore, only 3 bits needs to be signalled.
For the example above, the mapping p=I(a,b) is given in table 1.
Furthermore, for the control signalling, for each selection of user unit codebook index a, there exists a table of the possible co-scheduled vectors b, defined as Ca and shown for this example and the cases a=1 and b=14 in table 2 below. These sets are easily derived from table 1.
If the first user unit A has reported a user unit codebook index a=1 and it is MU-MIMO co-scheduled with a second user unit B which has reported b=14, then from table 1, p=I(1, 14)=6 is the index of the used base unit precoding matrix. It is regenerated as
W6ƒ(ū1,ū14).
Furthermore, since the first user unit A signalled a=1 in the uplink it knows that Cl will be used when indicating the used precoding matrix so r=6 is signalled in the downlink and the user first unit is thereby informed that its co-scheduled user has b=14. It can thereby deduce the index to the precoder as p=I(1, 14)=6. Since it has the lowest reported user codebook index of the two co-scheduled users units, it knows that the first column of W6 is the precoding vector for the first user unit A.
To the second user unit B, which has signalled b=14, r=1 is signalled in the downlink, hence, from C14, it know that it has been co-scheduled with a user unit which has reported a=1. The second user unit B then orders the pair according to a<b and finds the index to the precoder as p=I(1, 14)=6. Also, since it has the higher reported user codebook index of the two co-scheduled user units, it knows that the second column of W6 is the precoding vector for the second user unit B.
The example above shows one way of sending information on the index from every other user unit, which is to send the index r for the other user unit, whereby it is possible to recreate the precoding matrix.
Another example using table 1 above shows that the information from the base unit to each user unit could be to send the index p, where p=I(a,b). Using the same selections as in the example above with the cases a=1 and b=14, a table 3 shows possible matrices p depending on selection a, b would then be:
Furthermore, since the first user unit A signalled a=1 in the uplink it knows that B1 will be used when indicating the used precoding matrix so r=6 is signalled in the downlink and the user first unit is thereby informed that p=6=I(1, 14). It can thereby deduce that its co-scheduled user has b=14. Since it has the lowest reported user codebook index of the two co-scheduled users units, it knows that the first column of W6 is the precoding vector for the first user unit A.
To the second user unit B, which has signalled b=14, r=1 is signalled in the downlink, hence, from B14, it know that p=6=I(1, 14), and that it has been co-scheduled with a user unit which has reported a=1. Also, since it has the higher reported user codebook index of the two co-scheduled user units, it knows that the second column of W6 is the precoding vector for the second user unit B.
There are different functions f and one proposed function to use is the Zero Forcing precoder, which for L co-scheduled user units can be written as:
ƒ(
If a user unit 31 is not co-scheduled with another user unit, then the base unit 2 transmits a single stream and indicates this in the control information to the user unit 31.
If there is room in the sets Ba={b1(a) . . . bQ(a)}, it is possible to signal that only a single stream will be transmitted, i.e. L=1. For instance, in the example above, table 2 will in this case be modified to table 4 below.
With reference to
A scheduling unit 22, belonging to the base unit 2, is adapted to co-schedule compatible user units 31, 32 to simultaneously share one time-frequency recourse, where the base unit 2 is adapted to select a precoding matrix from a base unit codebook 21 based on the indices a1, a2 received from co-scheduled user units 31, 32. The scheduling unit 22 is adapted to make the selection according to a predefined function.
The predefined function is known to each user unit 31, 32, that the control information 23r, 23r′ to each user unit only contains information on the indices from every other user unit, and that respective user unit is adapted to regenerate the precoding matrix according to its own index, other user units indices and the predefined function.
It is proposed that the index a1, a2 from the user codebook corresponds to a requested channel quantization vector (CQV).
It is also proposed that the base unit 2 and respective user unit 31, 32 are adapted to take agreed forbidden combinations of indices from co-scheduled user units into consideration when selecting/regenerating the precoding matrix.
One way of agreeing to forbidden combinations is that the base unit and respective user unit are adapted to agree on a real-valued positive threshold T, and that the scheduling unit is adapted to co-schedule a first user unit A and a second user unit B only if their respective indices represents vectors ūa, ūb that fulfils the condition |ūa*ūb|≦T.
The scheduling unit and respective user unit can be adapted to use the Zero Forcing precoder as a predefined function, which for L co-scheduled user units can be written as:
ƒ(
It is also proposed that if a user unit 31 is not co-scheduled with another user unit, then the base unit 2 is adapted to transmit a single stream and to indicate this in the control information to the user unit 31.
The present disclosure also relates to a base unit 2 adapted to communicate with one or several user units 31, 32 in a multi-user multi-input multi-output system 1, where the base unit 2 is adapted to receive, from each user unit 31, 32 an index a1, a2 representing a vector from a user codebook belonging to respective user unit 31, 32.
A scheduling unit 22, belonging to the base unit 2, is adapted to co-schedule compatible user units 31, 32 to simultaneously share one time-frequency recourse, where the scheduling unit 22 is adapted to select a precoding matrix from a base unit codebook 21 based on received indices from co-scheduled user units. The scheduling unit 21 is adapted to make the selection according to a predefined function.
A transmitting unit 23, belonging to the base unit 2, is adapted to transmit control information 23r, 23r′ regarding selected precoding matrix to each co-scheduled user unit 31, 32.
The control information 12r, 12r′ to each user unit only contains information on indices from every other user unit.
It is proposed that the index from respective user unit corresponds to a requested channel quantization vector (CQV).
An inventive base unit 2 can be adapted to take agreed forbidden combinations of indices from co-scheduled user units 31, 32 into consideration when selecting the precoding matrix.
Such an agreement could be that the scheduling unit 22 is adapted to co-schedule a first user unit A and a second user unit B only if their respective indices related to vectors (ūa, ūb) that fulfils the condition |ūa*ūb|≦T, where T is a real-valued positive threshold.
It is proposed that the scheduling unit 22 is adapted to use the Zero Forcing precoder as the predefined function, which for L co-scheduled user units can be written as:
ƒ(
If a user unit is not co-scheduled with another user unit, then the base unit is adapted to transmit a single stream and to indicate this in the control information to the user unit.
The present disclosure also relates to an inventive user unit 31 adapted to communicate with a base unit 2 in a multi-user multi-input multi-output system 1, where the user unit 31 is adapted send an index a1 to the base unit, the index representing a vector coming from a user codebook 311 belonging to the user unit 31.
The user unit 31 is adapted to receive control information 23r regarding a selected precoding matrix related to possibly other co-scheduled user units 32 from the base unit 2.
A predefined function used by the base unit 2 to select the precoding matrix is known to the user unit 31, and that the control information only contains information on indices a2 from other co-scheduled user units 32.
The user unit 31 is adapted to regenerate the precoding matrix according to its own index a1, other user units indices a2 and the predefined function.
It is proposed that the index corresponds to a channel quantification vector, CQV, and that the user unit 31 is adapted to make a request of a desired channel quantization vector by sending the index a1 to the base unit 2.
It is also proposed that the user unit 31 is adapted to take agreed forbidden combinations of indices from other co-scheduled user units into consideration when regenerating the precoding matrix. One way of realising this is to adapt the user unit 31 to take a real-valued positive threshold T into consideration when regenerating the precoding matrix, the threshold representing a value where a first user unit A and a second user unit B is only allowed to be co-scheduled if their respective indices represents vectors ūa, ūb that fulfils the condition |ūa*ūb|≦T.
The user unit 31 may be adapted to use the Zero Forcing precoder as predefined function, which for L co-scheduled user units can be written as:
ƒ(
It is also proposed that if the control information indicates that the user unit 31 is not co-scheduled with another user unit, then the user unit 31 is adapted to communicate with the base unit 2 through a single stream.
The present disclosure also relates to a number of different computer program elements.
One inventive computer program element 4 comprises computer program code means 41 to make a computer unit execute the steps of a base unit 2 according to the inventive method.
Another inventive computer program element 5 comprises computer program code means 51 to make a computer unit execute the steps of a user unit 31 according to the inventive method.
Another computer program element 6 comprises computer program code means 61 which when executed by a computer unit enables the computer unit to function as an inventive base unit 2.
Another computer program element 7 comprises computer program code means 71 which when executed by a computer unit enables the computer unit to function as an inventive user unit 31.
It will be understood that the invention is not restricted to the aforedescribed and illustrated exemplifying embodiments thereof and that modifications can be made within the scope of the inventive concept as illustrated in the accompanying claims.
This application is a continuation of International Patent Application No. PCT/CN2007/001454, filed Apr. 29, 2007, which is hereby incorporated by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
7961807 | Kotecha et al. | Jun 2011 | B2 |
20050286663 | Poon | Dec 2005 | A1 |
20060209980 | Kim et al. | Sep 2006 | A1 |
20070042720 | Pan et al. | Feb 2007 | A1 |
20070049218 | Gorokhov et al. | Mar 2007 | A1 |
20070053460 | Ashikhmin | Mar 2007 | A1 |
20070191066 | Khojastepour et al. | Aug 2007 | A1 |
20080227495 | Kotecha et al. | Sep 2008 | A1 |
20110032839 | Chen et al. | Feb 2011 | A1 |
20110255632 | Khojastepour et al. | Oct 2011 | A1 |
20120039411 | Khojastepour et al. | Feb 2012 | A1 |
20120057558 | Prasad et al. | Mar 2012 | A1 |
Number | Date | Country |
---|---|---|
WO 2006007148 | Jan 2006 | WO |
WO 2006049417 | May 2006 | WO |
WO 2007036073 | Apr 2007 | WO |
Number | Date | Country | |
---|---|---|---|
20100046461 A1 | Feb 2010 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2007/001454 | Apr 2007 | US |
Child | 12605462 | US |