These and other advantages of the invention will be apparent to those of ordinary skill in the art by reference to the following detailed description and the accompanying drawings.
In the invention, there is presented an enhanced two-stream SIC receiver where the exact max-log outputs are obtained for all the bits in the stream first decoded (with O(M) complexity) as opposed to the conventional case involving Gaussian approximation. The inventive enhanced two-stream receiver is flow charted in
In another aspect of the invention, there is presented the second version of the enhanced two-stream SIC receiver which aims to avoid error propagation by subtracting only correctly decoded codewords. The inventive second version of the enhanced two-stream receiver is flow charted in
Also, described are methods to extend the inventive two-stream receivers to multiple streams.
Referring again to
We now describe the inventive two stream enhanced SIC receiver. Consider the model
where, H is the N×2 channel matrix (N≧2), v is the additive noise having i.i.d. Gaussian elements. x1 and x2 are symbols from a common M-QAM constellation. Let H=[h1h2] and H=||h2||2 UL be the modified QR decomposition of H with U being a scaled semi-unitary matrix and L being lower triangular with positive diagonal elements. In particular, we obtain U=[u1u2] with
where <h1, h2>=h2*h1 is the (complex) inner product of the two vectors and
and note that transformed noise vector {tilde over (v)} remains white. Let {xi,j}j=1M denote the M-QAM symbols and let xiR, xiI denote the real and imaginary parts of xi,1≦i≦2, respectively. For each x1,j we define the metric
Q(x1,j)=|z1−L11x1,j|2+minx
Q(x1,j)=|z1−L11x1,j|2+minx
Since both x2R,x2I belong to a common √{square root over (M)}-PAM constellation, the two minimizations for computing Q(x1,j) can be done in parallel using simple slicing (rounding) operations with O(1) complexity each. All {Q(xi,j)}j=1M are efficiently determined using the described method. Also, using the fact that L11 is positive along with the symmetry of the M-QAM constellation, we have that {L11x1,jR}j=1√{square root over (M)}={L11x1,jI}j=1√{square root over (M)}. Then since
|z1−L11x1,j|2=|z1R−L11x1,jR|2+|z2I−L11x1,jI|2
we have that only 3√{square root over (M)}(real) multiplications are required to evaluate all {|z1−L11x1,j|2}j=1M instead of 2M complex ones.
The M metrics {Q(x1,j)}j=1M can also be efficiently determined even for other regular constellations. To illustrate, we consider the example of PSK constellation. Let x1 and x2 be symbols from a common unit average energy M-PSK constellation: exp(jGM),GMε{0,2π/M, . . . ,2π(M−1)/M}. Then to efficiently determine {Q(x1,j)} we re-write equation (2b) as
Q(x1,j)=|z1−L11x1,j|2+minx
and obtain q1,j in its polar form as q1,j=r1,j exp(jα1,j) such that r1,j>0,α1,jε[0,2π). Let β1,j=Mα1,j/2π)−½. Then the minimizing x2 in (3b) can now be determined (with O(1) complexity) in closed form and is given by exp(2π(└β1,j┘+1)/M), where └ ┘ denotes the floor operator. In a similar manner the minimizing x2 in (3b) can be determined efficiently for other regular constellations by exploiting their decision regions.
Now each size-M constellation corresponds to log(M) bits so we need to determine the max-log soft output for log(M) bits associated with symbol-1. The M metrics {Q(x1,j)}j=1M, which we efficiently determined are exactly those needed to determine the max-log output for each bit. To see this, suppose bits numbered 1 to log(M) correspond to symbol x1. Then letting λi denote the max-log output of the ith bit bi and assuming equal a-priori probabilities, we have that
λi=||h2||2(minj:b
The max-log outputs are fed to the outer code or FEC decoder for codeword-1 and the decisions {{circumflex over (x)}1} (which correspond to the re-encoded and modulated codeword-1) are obtained.
For each symbol interval, we compute {circumflex over (z)}2=z2−L21{circumflex over (x)}1 and the soft-outputs for the second stream are obtained under the assumption of perfect feedback as
Q(x2,j)=|{circumflex over (z)}2−x2,j|2,1≦j≦M
λi=||h2||2(minj:b
Referring again to
Next, we describe the second version of our enhanced SIC receiver (E-SIC-2 receiver). Our E-SIC-2 receiver works as follows. We use the procedure previously described in the E-SIC receiver to decode codeword-1 and conduct a cyclic redundancy check (CRC) on the decoded codeword. In case CRC is true for codeword-1, for each symbol interval, we compute {circumflex over (z)}2=z2−L21{circumflex over (x)}1 and the soft-outputs for the second stream (codeword) are obtained as
Q(x2,j)=|{circumflex over (z)}2−x2,j|2,1≦j≦M
λi=||h2||2(minj:b
In case CRC is false for codeword-1, we obtain another modified QR decomposition H=||h1||2 VR, with V being a scaled semi-unitary matrix and R being upper triangular with positive diagonal elements. In particular, we obtain V=[v1,v2] with
where <h2,h1>=h1*h2 is the complex conjugate of <h1,h2> and
Using V we determine w=V*y which can be expressed as
Q(x2,j)=|w2−R22x2,j|2+minx
Q(x2,j)=|w2−R22x2,j|2+minx
Again since both x1R,x1I belong to a √{square root over (M)}-PAM constellation, the two minimizations for computing Q(x2,j) can also be done as before in parallel using simple slicing operations. All {Q(x2,j)}j=1M are efficiently determined using the described method. As described previously, the minimizing x1 in (2c) can be determined efficiently for other regular constellations (such as PSK) by exploiting their decision regions. The LLRs for the second stream (codeword) are obtained as
λi·=||h1||2(minj:b
Next, we consider the extension of our enhanced SIC receiver to multiple (K>2) streams. One way is to retain the structure of the conventional SIC receiver. However to obtain the max-log outputs for the ith stream we subtract the previously decoded streams 1 to i−1 and either null out streams i+2 to K or suppress them after assuming them to be Gaussian interferers using MMSE filtering. Then assuming perfect feedback from the subtracted streams and whitening the suppressed interference plus noise, we obtain the LLRs for the ith stream using the procedure described for the stream first decoded in our two-stream enhanced SIC. The obtained LLRs are then used to decode the ith codeword. This procedure is employed for all streams 1 to K−1. For the Kth stream, after subtracting streams 1 to K−1 from the received signal, we assume a single stream model and obtain the max-log outputs using the procedure described for the stream decoded second in our two-stream enhanced SIC. The obtained LLRs are then used to decode the Kth codeword.
We consider another extension of our enhanced SIC receiver to multiple (K>2) streams. In this case we only subtract decoded streams for which the decoded codewords pass the CRC. In particular, to obtain the LLRs for the first stream we suppress streams 3 to K after them after assuming them to be Gaussian interferers using MMSE filtering. Then we whiten the suppressed interference plus noise and obtain the max-log outputs for the first stream using the procedure described for the stream first decoded in our two-stream enhanced SIC and decode the first codeword. We conduct a CRC for the decoded codeword. In case the CRC is true we reconstruct the first stream by re-encoding and modulating the first codeword and subtract the codeword from the received signal. In case CRC is false, we assume that the first stream is an un-decodable Gaussian interferer and suppress it by using the appropriate MMSE filter on the received signal. In either case we can expand the processed received vector as, the output corresponding to a K−1 input streams (streams 2 to K) model. Then to obtain the LLRs for the second stream we suppress streams 4 to K after assuming them to be Gaussian interferers, whiten the suppressed interference plus noise and obtain the max-log outputs using the procedure described for the stream first decoded in our two-stream E-SIC. The second stream is reconstructed and subtracted only if the decoded second codeword passes the CRC. The procedure is used to decode streams 3 to K−1. For the Kth stream, after subtracting or suppressing and whitening streams 1 to K−1 from the received signal, we assume a single stream model and obtain the max-log LLRs using the procedure described for the stream decoded second in our two-stream E-SIC. The obtained LLRs are then used to decode the Kth codeword.
In summary, we considered the two-stream MIMO decoding problem and designed two receivers. The first one is an enhanced successive interference cancellation (SIC) based receiver which significantly outperforms the conventional SIC receiver. The second receiver is another version of the enhanced successive interference cancellation (SIC) based receiver which aims to avoid error propagation by subtracting only correctly decoded codewords. Extensions of the inventive two-stream receivers to the general case with multiple streams were also obtained.
The present invention has been shown and described in what are considered to be the most practical and preferred embodiments. It is anticipated, however, that departures may be made therefrom and that obvious modifications will be implemented by those skilled in the art. It will be appreciated that those skilled in the art will be able to devise numerous arrangements and variations which, although not explicitly shown or described herein, embody the principles of the invention and are within their spirit and scope.
This application claims the benefit of U.S. Provisional Application No. 60/826,119, entitled “Novel two Stream Receivers For MIMO systems and their Extensions”, filed on Sep. 19, 2006, the contents of which is incorporated by reference herein.
Number | Date | Country | |
---|---|---|---|
60826119 | Sep 2006 | US |