Method and apparatus for multiple antenna communications, and related systems and computer program
09794103 · 2017-10-17
Assignee
Inventors
Cpc classification
H04L27/34
ELECTRICITY
International classification
H04B7/02
ELECTRICITY
H04L27/34
ELECTRICITY
Abstract
A method of detecting sequences of multi-level encoded symbols. The multi-level encoded symbols are mapped and modulated with a modulation scheme having a number of constellation points identified by a sequence of bits arranged in at least a first and a second group. The first group is encoded with a first encoding scheme, and the second group is encoded with a second coding scheme, and the multi-level encoded symbols are transmitted by multiple transmitting sources and received as a received vector by multiple receiving elements. A first set of candidate sequences is selected and a first set of probability information is calculated for the first set of candidate sequences. Then the first group of bits of the symbols are decoded. The decoded bits of the first group are re-encoded and used to select a sub-set of constellation points. A second set of candidate sequences is selected based on this sub-set of constellation points and a second set of probability information is calculated for the second set of candidate sequences. Finally, the second group of bits of the symbols are decoded.
Claims
1. A method of detecting sequences of multi-level encoded symbols, comprising: receiving, by multiple receiving elements, the multi-level encoded symbols that are mapped and modulated with a modulation scheme having a number of constellation points identified by a sequence of bits arranged in at least a first and a second group, the first group being encoded with a first encoding scheme and the second group being encoded with a second encoding scheme, and wherein the multi-level encoded symbols are transmitted by multiple transmitting elements, the multiple transmitting and receiving elements jointly defining a transmission channel modeled by a channel state information matrix and the received symbols being grouped as a received vector; calculating a soft decision for each of the receiving elements based on the received vector and on the channel state information matrix; for each of the receiving elements, selecting a first set of candidate sequences based upon constellation points of the modulation scheme and the received symbols, the selecting the first set of candidate sequences including, selecting a local sub-set of constellation points for each possible sequence of bits for the first group of bits; selecting a local sub-set of candidate symbols for each sub-set of constellation points; selecting as candidate symbols the constellation points in the sub-set of constellation points based upon the soft decision; and combining the sets of candidate symbols in order to form the first set of candidate sequences.
2. The method of claim 1 further comprising: calculating a first set of probability information for the first set of candidate sequences; decoding the first group of bits of the symbols encoded with a first encoding scheme based on the first set of probability information; re-encoding the decoded first group of bits of the symbols; selecting a sub-set of constellation points based on the re-encoded first group of bits; selecting a second set of the candidate sequences based on the sub-set of constellation points and the received symbols; calculating a second set of probability information for the second set of candidate sequences; and decoding the second group of bits of the symbols encoded with a second encoding scheme based on the second set of probability information.
3. The method of claim 2, wherein said selecting a first set of candidate sequences includes: selecting for each receiving element a set of candidate symbols, and combining said sets of candidate symbols in order to form said set of candidate sequences.
4. The method of claim 3, wherein said selecting for each receiving element a set of candidate symbols includes: selecting a local sub-set of constellation points for each possible sequence of bits for said first group of bits, selecting a local sub-set of candidate symbols for each sub-set of constellation points, and combining said local sub-set of candidate symbols in order to form said set of candidate sequences.
5. The method of claim 4, wherein said selecting a local sub-set of candidate symbols for each sub-set of constellation points includes selecting as candidate symbols the constellation points in said sub-set of constellation points having the shortest Euclidean distance from said soft decision.
6. The method of claim 1 wherein said selecting a sub-set of constellation points as a function of said re-encoded first group of bits includes selecting the constellation points of said modulation scheme having said first group of bits fixed to said re-encoded first group of bits.
7. The method of claim 2, wherein calculating a set of probability information for a set of candidate sequences includes calculating Log-Likelihood Ratios as a function of a-posteriori bit information for said set of candidate sequences.
8. The method of claim 2, wherein said first group of bits is encoded with a higher coding rate than said second group of bits.
9. The method of claim 1, wherein said modulation scheme includes a 64QAM mapping.
10. The method of claim 1, wherein said modulation scheme includes an OFDM modulation.
11. The device of claim 1, wherein said device has at least one pipeline for performing said detecting sequences of multi-level encoded symbols.
12. The receiver of claim 1, wherein said transmitting sources and said receiving elements are antennas.
13. A device, comprising: a receiver for receiving symbols mapped with a modulation scheme having a number of constellation points identified by a sequence of bits, wherein the received symbols are grouped as a received vector; a first selector configured to select a first set of candidate sequences based on the constellation points of the modulation scheme and the received symbols, wherein the first selector further includes a number of soft decision logic blocks that is equivalent to a number of receiving antennae associated with the device and wherein the first selector is further configured to, calculate a soft decision, for each of the receiving antennas, based on the received vector and on a channel state information matrix modelling a transmission channel; select a set of candidate symbols for each antenna, wherein the first selector is configured to, select a local sub-set of constellation points for each possible sequence of bits for said first group of bits, select a local sub-set of candidate symbols for each sub-set of constellation points, wherein the first selector is further configured to select as candidate symbols the constellation points in said sub-set of constellation points having the shortest Euclidean distance from the soft decision, combine said local sub-set of candidate symbols in order to form said set of candidate sequences, and combine the sets of candidate symbols in order to form the set of candidate sequences; a first calculator configured to calculate a first set of probability information for the first set of candidate sequences; a first decoder configured to decode the first group of bits of the symbols encoded with a first encoding scheme based on the first set of probability information; an encoder configured to re-encode the decoded first group of bits of the symbols, a second selector configured to select a sub-set of constellation points based on the re-encoded first group of bits, a third selector configured to select a second set of said candidate sequences based on the sub-set of constellation points and the received symbols, a second calculator configured to calculate a second set of probability information for the second set of candidate sequences, and a second decoder configured to decode the second group of bits of the symbols encoded with a second encoding scheme based on the second set of probability information.
14. A non-transitory computer-readable medium having computer-executable instructions for receiving multi-level encoded symbols mapped with a modulation scheme having a number of constellation points identified by a sequence of bits arranged in at least a first group and a second group, the first group being encoded with a first encoding scheme and the second group being encoded with a second encoding scheme, and wherein the multi-level encoded symbols are transmitted by multiple transmitting elements and received by multiple receiving elements, the multiple transmitting and receiving elements jointly defining a transmission channel modeled by a channel state information matrix and the received symbols being grouped as a received vector, wherein the computer-executable instructions, when executed on a computer, are operable for: calculating a soft decision for each of a plurality of the receiving elements based on the received vector and on the channel state information matrix; for each of the receiving elements, selecting a first set of candidate sequences as a function of the constellation points of the modulation scheme and the received symbols, the selecting the first set of candidate sequences including, selecting a local sub-set of constellation points for each possible sequence or bits for the first group of bits; selecting a local sub-set of candidate symbols for each sub-set of constellation points; selecting as candidate symbols the constellation points in the sub-set of constellation points based upon the soft decision; and combining the sets of candidate symbols in order to form the first set of candidate sequences; calculating a first set of probability information for the first set of candidate sequences, decoding the first group of bits of the symbols encoded with a first encoding scheme as a function of the first set of probability information, re-encoding the decoded first group of bits of said symbols, selecting a sub-set of constellation points as a function of the re-encoded first group of bits, selecting a second set of said candidate sequences as a function of the sub-set of constellation points and the received symbols, calculating a second set of probability information for the second set of candidate sequences, and decoding the second group of bits of the symbols encoded with a second encoding scheme as a function of the second set of probability information.
15. The device of claim 13, wherein the modulation scheme includes a 64QAM mapping.
16. The device of claim 13, wherein the modulation scheme includes an OFDM modulation.
17. The device of claim 13, wherein the first calculator is operable to calculate the first set of probability information for the first set of candidate sequences based on calculating Log-Likelihood Ratios as a function of a-posteriori bit information for the set of candidate sequences.
18. The non-transitory computer-readable medium of claim 14, wherein the multi-level symbols are mapped with a QAM modulation scheme.
19. The non-transitory computer-readable medium of claim 18, wherein the QAM modulation scheme further includes OFDM modulation.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) For a more complete understanding of this disclosure and its features, reference is now made to the following description of exemplary embodiments, taken in conjunction with the accompanying drawings.
(2)
(3)
(4)
(5)
(6)
DETAILED DESCRIPTION
(7)
(8)
(9) As shown in
(10) As well known to those skilled in the art, such a MIMO system receives an input bit stream IB, which is encoded by an encoder 12 and de-multiplexed by a demultiplexer 16 to one of several transmission chains 18 (denoted T.sub.x1 to T.sub.XN), each transmission chain 18 being coupled to one of the transmit antennas 20. Instead of a single encoder 12, each transmission chain 18 may have its own encoder operating independently from the other transmission chains 18.
(11) Similarly, a MIMO receiver may comprise several receiving chains 34 (denoted R.sub.z1 to R.sub.xM) coupled to the receive antennas 22. In an embodiment, each receive antenna 22 receives signals from all of the transmit antennas 20. In an embodiment, the MIMO receiver 30 comprises also a signal processing unit 32 to detect and decode the symbols in order to reconstruct the original data stream, which may then be provided as output data stream OB.
(12) In an embodiment, the global average radiated power of the OFDM signal is fixed to S and is independent of the total number of transmitting antennas.
(13) As well known to those skilled in the art, the communication channel for a MIMO system having N transmit antennas and M receive antennas may be modeled, for each sub-carrier, as a flat fading channel described by a channel state information matrix H of dimension M×N:
r=H.Math.ã+w
where ã=[ã.sub.1, . . . , ã.sub.N].sup.r denotes the vector of transmitted symbols, each chosen from a set A, r corresponds to the received M-dimensional vector, and w is a vector of complex Gaussian random variables with zero mean and variance σ.sub.w.sub.
(14) The vector ã may be considered as a point in the A.sup.N space, and usually the elements of the channel matrix H have a uniform distributed phase and Rayleigh-distributed magnitude with average power equal to 1.
(15) Moreover, such channel matrix H may be considered as being independent of both ã and w and is typically known at the receive side.
(16) In an embodiment of this disclosure, a multilevel coded modulation scheme is used.
(17)
(18) In an embodiment, natural mapping on each dimension is used. As well known to those skilled in the art, a 64QAM constellation may be considered as being constructed by two orthogonal 8PAM constellations whose labeling is shown in
(19) Multilevel coding may be used to provide a higher code protection for the least significant bit. In an embodiment of this disclosure, the number of bits of the constellation symbols is divided into three portions denominated in the following as least significant bits (LSB), most significant bits (MSB) and the remaining bits therebetween (MidSB).
(20) In the exemplary embodiment shown, the 6 bits of a 64QAM modulated symbol are organized in two LSBs, two MidSBs, and two MSBs.
(21) Accordingly, the MIMO transmitter 10 has three different levels each being composed of an encoder 132, an optional interleaver 134, and a demultiplexer 136.
(22) Input data IB is sent, e.g. by means of a switch SW1, to one of the encoding chains 13.sub.LSB, 13.sub.MidSB, or 13.sub.MSB, where the data is encoded by one of the encoders 132. Subsequently, the encoded data is de-multiplexed by the corresponding demultiplexer 136 to one of two transmission chains T.sub.x1 or T.sub.x2, each being composed of a mapper 142, such as a 64QAM mapper, and a modulator 144, such as an OFDM modulator.
(23) In an embodiment, the encoder 132 of the first level 13.sub.LSB provides the two LSBs of the 64QAM constellation symbol, which are encoded with a higher coding rate than the encoders of the other levels.
(24) In an embodiment, two independent encoders may be used as the encoder 132 of the first level 13.sub.LSB, each providing the least significant bit of an 8PAM constellation symbol.
(25) Once the sequence of LSBs has been successfully decoded at the receiver side, the decoder of the second level bits (MidSB) may operate with a higher Euclidean distance and therefore the second level bits may have a lower code protection.
(26) In an embodiment, the encoder 132 of the second level 13.sub.MidSB provides the two MidSBs of the 64QAM constellation symbol with a lower coding rate than the encoder 132 of the first level 13.sub.LSB.
(27) Finally, the MSBs have the largest Euclidean distance and therefore may have the lowest protection or, in particular cases, may even be left un-coded.
(28) In an embodiment, the encoder 132 of the third level 13.sub.MSB provides the two MSBs of the 64QAM constellation symbol with the lowest coding rate compared to the encoders of the other levels.
(29) As mentioned in the foregoing, also the higher level encoders may be realized by two independent encoders which provide the respective bits of two independent 8PAM constellations.
(30) Those skilled in the art will appreciate that the number of groups (i.e. levels of the multilevel encoder) and the number of bits in each group may change according to the used modulation scheme. Moreover, the groups may not necessarily have the same number of bits.
(31) Those skilled in the art will similarly appreciate that a single configurable encoding chain may be used, wherein the encoding rate is changed.
(32)
(33) In an embodiment, the signal processing unit 32 comprises a hierarchical architecture comprised of three detection and decoding stages 34.sub.LSB, 34.sub.MidSB and 34.sub.MSB which provide the LSB, MidSB and MSB bits of the symbols, respectively. In an embodiment the hierarchical architecture is implemented with a pipeline.
(34) The complexity of LLR computation in a MIMO spatial multiplexing system depends on the size of the constellation p and on the number of transmitting antennas N. For example, a classical APP computation would require the computation of p.sup.N correlations. In the case of 64QAM constellation and 2 transmitting antennas the computational cost would be 4096 correlations.
(35) An embodiment of this disclosure relates to a reduction of the computational complexity by means of a reduction of the number of correlations to be calculated, while maintaining performance comparable to the optimal one.
(36) In an embodiment, not all possible sequences are verified but only a sub-set of candidate sequences is verified. In an embodiment, the first stage 34.sub.LSB comprises a block 342.sub.LSB, which selects a sub-set of candidate sequences and calculates the LLRs for these candidate sequences.
(37) These candidate sequences and/or the LLRs may then be de-interleaved by a deinterleaver 344.sub.LSB, and decoded by a decoder 346.sub.LSB. Specifically, the decoder 346.sub.LSB of the first level 34.sub.LSB is responsible for selecting the most suitable LSBs based on the set of candidate sequences and/or the LLRs.
(38) In the following, a possible arrangement will be described to select the candidate sequences for the first level. Those skilled in the art will however appreciate that any other arrangement may be used to select such candidate sequences.
(39) In an embodiment, a minimum mean square error (MMSE) linear interface 322 is used, which provides soft decision statistic for the symbols sent via the multiple antennas.
(40) Such a MMSE linear interface 322 may use the following error vector:
e=ã−â=ã−G.Math.r
where G is a N×M linear weight matrix.
By minimizing the mean square error defined as:
MSE=E{∥e∥.sup.2}=E{∥ã−G.Math.r∥.sup.2}
and in the case of average power radiated from each transmit antenna 20 equal to 1/N, the following MMSE weight matrix may be calculated [4]:
G.sub.MMSE=(H′.Math.H+α.Math.I.sub.N).sup.−1.Math.H′
where α=N.Math.σ.sup.2, I.sub.N is an N×N identity matrix and “′” denotes a conjugate transposition.
(41) The soft decision statistics for the symbol sent from i-th antenna may therefore be calculated as:
y.sub.i=G.sub.MMSE,i.Math.r
where G.sub.MMSE,i is the i-th row of the matrix G.sub.MMSE.
(42) These soft decision statistics are then sent to the block 342.sub.LSB in order to select possible candidate sequences and to calculate LLRs.
(43)
(44) In an embodiment, the 64 possible constellation symbols of the 64QAM modulation are divided into four local sub-lists 52 one for each of the four sub-constellations having the LSB fixed to “00”, “01”, “10”, “11”. Such sub-lists 52 may be interpreted as four independent 16QAM modulations. The number of sub-lists may depend on the number of bits identified as LSBs on the transmitter side and the number of elements in each sub-list may depend on the used modulation scheme.
(45) For each local sub-list 52 of constellation symbols a local sub-list with C.sub.LSB candidate symbols may be determined, wherein the candidate symbols are typically the symbols closest (i.e. in terms of Euclidean distance) to the soft decision y.sub.i. Moreover, block 52 may also consider a-priori or a-posteriori information in order to select the candidate symbols.
(46) In an embodiment, a local list 54 associated with the i-th transmit antenna is obtained as the union of the four local sub-lists of candidate symbols.
(47) In an embodiment, a block 56 then generates a global list L.sub.Global of candidate sequences having (4.Math.C.sub.LSB).sup.N elements by combining, e.g. in all possible ways, the candidate symbols of the local lists 54. Duplicate candidate sequences may be removed in order to further reduce complexity.
(48) A block 58 is then able to calculate the LLRs for the candidate sequences. In an embodiment, a max-log Maximum-A-Posteriori-Probability (MAP) computation is used to calculate the LLRs:
(49)
where L.sub.Global(b.sub.k=0,1) indicates the elements of the global list having b.sub.k=0,1.
(50) The first level LLRs output by block 342.sub.LSB can then be processed by the first level channel decoder 346.sub.LSB in order to extract the bits used to create the LSBs of the symbols.
(51) These bits may be used to select the winner sub-constellations among the four sub-constellations. Specifically, once the first level is decoded, these bits are re-encoded by an LSB encoder 348.sub.LSB and, where needed, re-interleaved by an interleaver 350.sub.LSB.
(52) The second level 34.sub.MidSB may operate then on the selected sub-constellations in a similar manner as the first level 34.sub.LSB.
(53) In an embodiment, the 16 possible constellation symbols of the 64QAM modulation, which have been selected by the first level 34.sub.LSB for a specific antenna, are divided into four local sub-lists, one for each of the four sub-constellations having the MidSB fixed to “00”, “01”, “10”, “11”. Such sub-lists may be interpreted as four independent QPSK modulations. Again, the number of sub-lists may depend on the number of bits identified as MidSB bits on the transmitter side and the number of elements in each sub-list may depend on the modulation scheme used.
(54) Subsequently, the block 342.sub.MidSB is able to generate a global list of candidate sequences for the second level having (4.Math.C.sub.MidSB).sup.N elements by combining, e.g. in all possible ways, the candidate symbols of the local lists of the second level and to calculate the LLRs for the MidSB bits of all antennas.
(55) The candidate sequences and/or the LLRs of the second level output by block 342.sub.MidSB are then optionally de-interleaved by a deinterleaver 344.sub.MidSB and processed by the second level channel decoder 346.sub.MidSB in order to extract the bits used to create the MidSB of the symbols.
(56) These bits may be used to select the winner sub-constellations among the four sub-constellations of the second level. Specifically, once the second level is decoded, these bits are re-encoded by a MidSB encoder 348.sub.MidSB and, where needed, re-interleaved by an interleaver 350.sub.MidSB.
(57) Also the third level 34.sub.MSB may operate on the sub-constellations selected by the second level in a similar manner as the previous levels.
(58) In an embodiment, the four possible constellation symbols of the 64QAM modulation, which have been selected by the second level for a specific antenna, are divided into four local sub-lists one for each of the four sub-constellations having the MSB fixed to “00”, “01”, “10”, “11”. Again, the number of sub-lists may depend on the number of bits identified as MSBs on the transmitter side and the number of elements in each sub-list may depend on the modulation scheme used.
(59) Subsequently, block 342.sub.MSB is able to generate a global list of candidate sequences for the third level having (4.Math.C.sub.MSB).sup.N elements by combining, e.g. in all possible ways, the candidate symbols of the local lists of the third level and to calculate the LLRs for the MSB bits of all antennas.
(60) The candidate sequences and/or the LLRs of the third level output by block 342.sub.MSB the are then optionally de-interleaved by a deinterleaver 344.sub.MSB and processed by the third level channel decoder 346.sub.MSB in order to extract the bits used to create the MSB of the symbols.
(61) The final bit stream OB may then be created by combining e.g. by means of a switch SW2 the separate bits used for the creation of the LSBs, MidSBs and MSBs of the symbols.
(62) The overall complexity, in term of correlations, of the complete detection algorithm, can be calculated, for a 64QAM constellation having three levels, as follows:
(63)
(64) By choosing C.sub.LSB=C.sub.MidSB=C.sub.MSB=1 and N=2, the system presents the minimum computational complexity, while the system has the highest complexity for C.sub.LSB=16, C.sub.MidSB=4, C.sub.MSB=1.
(65) The arrangement is therefore tunable, because the number of candidate symbols selected for each level may be chosen according to the desired performance requirements and computational power. Such a re-configuration may also be performed in real-time in order to take into account the current transmission conditions. For example, the number of candidate sequences may be increased due to a high error rate.
(66) Consequently, without prejudice to the underlying principles of the disclosure, the details and the embodiments may vary, even appreciably, with reference to what has been described by way of example only, without departing from the scope of the disclosure.
LIST OF REFERENCES
(67) [1] M. Magarini, A. Spalvieri. A suboptimal detection scheme for MIMO systems with non-binary constellations. [2] L. Lampe, R. Schober, R. Fischer. Multilevel coding for multiple-antenna transmission. IEEE Trans. on Wireless Comms., vol. 3, No. 1, January 2004. [3] H. Imai, S. Hirakawa. A new multilevel coding method using error-correcting codes. IEEE Trans. on Information Theory, vol. IT-23, No. 3, 1977. [4] B. Hassibi, “An efficient square-root algorithm for BLAST”, in Proc. ICASSP, Istanbul, Turkey, vol. II, pp. 737-740, 5-9 Jun. 2000.