Embodiments of the present invention relate to an apparatus and a method for deriving a submatrix.
For example, in a multiple input and multiple output (MIMO) system, a transmitter sends multiple streams by multiple transmit antennas. Assuming the number of streams in a MIMO system is N, e.g., there are at least N transmit antennas being sources of the streams and at least N receive antennas receiving the streams. The MIMO system could be simply represented with the number of the streams, that is, represented as “N×N MIMO” system.
A popular implementation of a MIMO decoder is based on a K-Best search algorithm. The main idea of this decoder is that the possibly transmitted streams are added to the overall metric in an iterative way rather than joint exhaustive search implemented in the optimal Maximum-Likelihood decoder. At each stage of the decoding process, only the K best optional paths are selected according to a predefined metric.
Performance of the K-Best search algorithm relies on an order in which the streams are added to the decoder decision metric. A right order leads to a good performance, while a wrong order can completely ruin the K-Best detection properties. Therefore, a re-ordering algorithm is introduced to choose a best stream for each stage of the K-Best search. The re-ordering can be dependent on the mutual interference between each stream and all the other streams.
According to the re-ordering algorithm, streams are selected and removed at each stage in an iterative calculation. For example, assume a real valued physical channel matrix is denoted as H, and the post-processing Signal-to-Noise-and-Interference ratio (SINR) is defined by the main diagonal entries of the matrix (G−1)i,i=(H*H)−1. The stream with the lowest SINR is selected and then removed. Thus, a new channel submatrix {tilde over (H)} is constructed where the column corresponding to the removed stream is removed. Then, the next steam is chosen from ({tilde over (G)}−1)i,i. Therefore, at each step of the reordering process a new inverse submatrix should be computed.
As the number of streams grows, the number of matrix inversions and the size of the inverted matrices grow accordingly. To complete a re-ordering process, the required number of calculating is very huge. That is, in the state of the art, the receiver's implementation, especially the K-Best re-ordering implementation, is very resource-consuming.
An apparatus and a method for deriving a submatrix are provided so that an effect of improving the calculation of a submatrix and in particular the calculation of an optimal alternative is achieved.
In at least one embodiment, an apparatus for deriving a submatrix {tilde over (G)}−1 is configured to perform operations that comprise
1) selecting an N-elements-column and an N-elements-row of an N×N-Matrix G or G−1;
2) rearranging the selected column to the rightest column and the selected row to the lowest row of G or G−1 so as to generate a N×N-matrix Gp or Gp−1;
3) calculating an (N−1)×(N−1) submatrix G−1 by
wherein the parameters A, b, d, c are obtained from the Gp or the Gp−1; wherein
It follows directly from the proceeding description that A is an (N−1)×(N−1) matrix, and b, c are (N−1) vectors, and d is a scalar.
By performing the sequence of operations 1, 2 and 3, the apparatus could, in a MIMO example where N represents the number of streams, remove one stream which corresponds to the selected column and row from the received streams. This stream can be the stream that has the least signal-to-noise ratio (SNR). The apparatus reaches the result comprising fewer alternatives without performing a resource intensive matrix inversion as commonly implemented. The apparatus can be a receiver or a device that interacts with the receiver.
In at least one embodiment, wherein if N is an integer larger than 2, the apparatus is configured to repeatedly perform operations 1 to 3 by defining the last calculated {tilde over (G)}−1 as G−1 until N reaches a first predefined value. For example, the first predefined value is 2.
By repeatedly performing the sequence of operations 1, 2 and 3, more calculations needed for removing multiple streams are reduced. Thus, the implementation of the apparatus that acts as a receiver of the streams is more efficient than the state of the art. Especially, when the sequence of operations 1, 2 and 3 is performed with (N−2) times, the efficiency of the apparatus is significant improved compared with the state of the art.
In at least one embodiment, an element at a cross of the selected column and the selected row is the minimum among all the elements of the G or the G−1.
The stream corresponding to the column and row which includes the selected minimum element may be the most interfered stream among all the streams. By selecting the element of the matrix, the most interfered stream could be removed. Therefore, it is more efficient for the apparatus to find the best stream for each stage of the K-Best search.
In at least one embodiment, the G is a covariance matrix of a channel matrix H.
When the apparatus is adapted to an N×N MIMO system, all the calculations associated with both physical meaning and mathematical meaning could be performed by the apparatus based on the matrix, which makes it possible to lower the complexity of the apparatus's implementation and therefore reduce the resource consumption of the apparatus. The efficiency of the apparatus is improved.
In at least one embodiment, a method for deriving a submatrix {tilde over (G)}−1, includes
1) selecting an N-elements-column and an N-elements-row of an N×N-Matrix G or G−1;
2) rearranging the selected column to the rightest column and the selected row to the lowest row of G or G−1 so as to generate a N×N-matrix Gp or Gp−1;
3) calculating a submatrix {tilde over (G)}−1 by
wherein the parameters (N−1)−(N−1)-submatrix A, b, d, c are obtained from the Gp or the Gp−1; wherein
In at least some embodiments, the method achieves the same advantages as described for the apparatus. The method may be carried out with additional method operations, which correspond to the functions carried out by the various implementation forms described for the apparatus.
In at least some embodiments, a computer program comprises a program code for performing, when running on a computer, the method comprising
1) selecting an N-elements-column and an N-elements-row of an N×N-Matrix G or G−1;
2) rearranging the selected column to the rightest column and the selected row to the lowest row of G or G−1 so as to generate a N×N-matrix Gp or Gp−1;
3) calculating a submatrix {tilde over (G)}−1 by
wherein the parameters (N−1)×(N−1)-submatrix A, b, d, c are obtained from the Gp or the Gp−1; wherein
The above aspects and implementation forms of embodiments of the present invention will be explained in the following description of specific embodiments in relation to the enclosed drawings, in which
In the following examples, the apparatus 01 may act as a receiver in the MIMO system. However, it should be understood that, the data between a transmitter and a receiver is not limited to streams in the MIMO system. The data may be considered as a set of values in a processing.
It should be noted that, an N×N MIMO system is taken as an example to describe embodiments the present invention, where N is the number, namely a quantity, of streams in the system. Correspondingly, a size of the matrix in the examples is defined by the number of streams, e.g., N×N. The number of antennas connected to the apparatus may be equal to or larger than the number of streams.
The apparatus 01 shown as
As shown in
wherein the parameters A, b, d, c are obtained from the Gp or the Gp−1; wherein
It could be understood that the mathematical operation performed in the operation 3 is performed based on the well-known Schur complementation.
By performing the sequence of operations 1, 2 and 3, the apparatus 01 could remove at least one data set which is corresponding to the selected column and row from the matrix. This could be motivated, for example by an optimization process. The calculations needed for removing this data set are reduced compared with the calculations needed according to the state of the art.
Further, in a scenario where the apparatus 01 acts in a MIMO system, by performing the sequence of operations 1, 2 and 3, the apparatus 01 could remove one stream which is corresponding to the selected column and row from the received streams. The calculations needed for removing this stream are reduced compared with the calculations needed according to the state of the art. That is, during the re-ordering process which is used to choose a best stream for each stage of the K-Best search, at least one step which has an effect to remove one stream is simplified. Thus, implementation of the apparatus that acts as a receiver of the streams is not as complex as the state of the art.
In an optional example, if N is an integer larger than 2, the selecting unit 10 is configured to repeatedly perform operation 1 by defining the last calculated {tilde over (G)}−1 as an input G−1 where N is updated with N−1 for each time of performing operation 1. The repetition of performing operation 1 continues until an updated N reaches a first predefined value, for example, 2.
It should be noted that, operations 1, 2 and 3 are performed in a sequence, where each output of a former operation is considered as a trigger and an input of a latter operation. That is, with an input, operation 1 generates an output. Then, operation 2 takes the output of operation 1 as an input and generates an output. Then, operation 3 takes the output of operation 2 as an input and generates an output.
Further, the sequence of operations 1, 2 and 3 could be continuously performed until the size of the output submatrix of operation 3 reaches 2×2. That is, operation 1 may take the output of operation 3 as a trigger and an updated input. Then, operation 2 is trigger by the updated output of operation 1, and operation 3 is triggered by an updated output of operation 2. If an updated output of operation 3 has a size larger than 2×2, the updated output of operation 3 could be considered as an updated input of operation 1, and operations 1, 2 and 3 repeatedly performed for another time.
Optionally, the apparatus 01 may also include a receiving unit 18 and a generation unit 19. For example, the receiving unit 18 connects to several antennas (e.g., 18a, 18b, 18c, 18d as shown in
As an example, when the number of streams in the MIMO system including the apparatus 01 is N, it could be assumed that the receiving unit 18 with the N antennas is configured to receive N streams from the sources. The generation unit 19 is configured to generate the G, wherein the G is a covariance matrix of a channel matrix H. The matrix H corresponds to a physical channel between all the transmit antennas and all the receive antennas. Here, all the transmit antennas and all the receive antennas are the antennas being involved in the transmission of the N streams in the MIMO system. That is, the size of the matrix H is denoted with the number of the streams, e.g., N×N. It could be understood, the generated G or its inversion G−1 could be an original input of the selecting unit 10, for example, in operation 1.
As shown in
Assuming there are 4 streams received by the apparatus 01 from the apparatus 02 in the 4×4 MIMO system, an example of the method of deriving the submatrix performed by the apparatus 01 is as follows.
Firstly, when a 4×4 channel matrix is obtained by the receiving unit 18 of the apparatus 01 and represented as H, a covariance matrix is generated by the generating unit 19 of the apparatus 01 and represented as G, where:
An inverse of the G, which is calculated based on G, is represented as G−1, where:
If the minimum of the main diagonal of the inverse matrix G−1 is
The rearranged matrix Gp is obtained (Operation 2) based on the matrix G and the selection of the selecting unit 10, where:
Assume Gp and Gp−1 are respectively represented as follows, where the column including b and d is the selected column and the row including cT and d is the selected row. A is the submatrix maintained when the selected column and row are removed from the matrix Gp−1.
A, b, c, and d are obtained (i.e., defined) based on Gp, and represented as follows.
Finally, the submatrix {tilde over (G)}−1 could be calculated (Operation 3) according to A, b, d, c, where:
In the N×N MIMO system, where N equals to 4, a result of implementation from operation 1 to operation 3 could be considered as the submatrix
Optionally, the minimum element of the submatrix {tilde over (G)}−1 may be the next element selected by the selecting unit 10. The sequence of operations 1, 2 and 3 are subsequently performed by the apparatus 01.
Compared with the state of the art, when a sequence of operations 1 to operation 3 is implemented for one time, the complexity of the calculation during the re-ordering process is reduced. Furthermore, the more the sequence of operations 1 to 3 is implemented by the apparatus 01, more effect of the reduction of the complexity is obtained.
It should be noted that embodiments of the present invention are not limited to the example above. For example, the matrix G and the matrix G−1 have a clear mathematical relationship with each other (one being the inverse of the other). Any calculation or decision based on the matrix G in the example above could be realized based on the submatrix {tilde over (G)}−1.
Embodiments of the invention have been described in conjunction with various MIMO embodiments herein. However, other applications can be understood and effected by those skilled in the art in practicing embodiments of the claimed invention, from a study of the drawings, the disclosure, and the appended claims. A computer program may be stored or distributed on a suitable medium, such as an optical storage medium or a solid-state medium supplied together with or as part of other hardware, but may also be distributed in other forms, such as via the Internet or other wired or wireless telecommunication systems.
This application is a continuation of International Application No. PCT/EP2015/081006, filed on Dec. 22, 2015, the disclosure of which is hereby incorporated by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
20040013212 | Benesty et al. | Jan 2004 | A1 |
20100144302 | Moon | Jun 2010 | A1 |
20110058619 | Arviv | Mar 2011 | A1 |
20130308715 | Young-Han et al. | Nov 2013 | A1 |
Number | Date | Country |
---|---|---|
1725667 | Jan 2006 | CN |
101228755 | Jul 2008 | CN |
104396153 | Mar 2015 | CN |
Number | Date | Country | |
---|---|---|---|
20180302132 A1 | Oct 2018 | US |
Number | Date | Country | |
---|---|---|---|
Parent | PCT/EP2015/081006 | Dec 2015 | US |
Child | 16014232 | US |