Enhanced Successive Interference Cancellation (SIC) Receiver for Multiple-Input Multiple-Output (MIMO) Systems

Information

  • Patent Application
  • 20080069262
  • Publication Number
    20080069262
  • Date Filed
    September 18, 2007
    17 years ago
  • Date Published
    March 20, 2008
    16 years ago
Abstract
A method includes the steps of: i) listing out all possibilities for first symbol of a two stream signal; ii) determining a second symbol of the two stream signal for each said first symbol listed out, iii) evaluating a metric for each said first symbol and second symbol pair, iv) determining the exact maximum log likelihood ratio for all bits associated with said first symbol using said metrics, v) decoding a codeword-1 using the maximum log likelihood ratios, vi) re-encoding said codeword-1, vii) modulating said re-encoded codeword-1, viii) subtracting said modulated re-encoded codeword-1 from said two stream signal, ix) determining metrics for all possibilities for second symbol in the signal obtained in viii, x) determining the maximum log likelihood ratios for all bits associated with second symbol, and xi) decoding said codeword-2 using the maximum log likelihood ratios for all bits associated with said second symbol.
Description

BRIEF DESCRIPTION OF DRAWINGS

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.



FIG. 1 is a flow diagram of a brute force maximum likelihood two stream wireless reception, in accordance with the prior art.



FIG. 2 is a flow diagram of Deterministic Sequential Monte-Carlo (D-SMC) two stream reception, in accordance with the prior art.



FIG. 3 is a flow diagram of successive interference cancellation SIC two stream wireless reception, in accordance with the prior art.



FIG. 4 is a flow diagram of an enhanced successive interference cancellation for two stream wireless reception, in accordance with the invention.



FIG. 5 is a flow diagram of the second version of the enhanced successive interference cancellation for two stream wireless reception, in accordance with the invention.





DETAILED DESCRIPTION

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 FIG. 4.


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 FIG. 5.


Also, described are methods to extend the inventive two-stream receivers to multiple streams.


Referring again to FIG. 4, the inventive enhanced SIC receiver 40 method for two stream reception includes listing out all possibilities for symbol-141, for each choice of symbol-1 efficiently finding the best choice of symbol-2 and evaluating the metric for that pair 42, using the metrics to determine the exact max-log LLRs for all bits associated with symbol-143, decoding the codeword-1 using the computed LLRs 44, re-encoding the codeword-1 and then modulating and subtracting it from the received signal 45, listing out all possibilities for symbol-1 and computing the metrics 46, using the metrics to determine the max-log LLRs for all bits associated with symbol-247, and decoding the codeword-2 using the computed LLRs 48. This inventive enhanced SIC receiver method has a higher latency (delay), a higher memory requirement due to buffering, and much less error propagation since reliable decisions are obtained for codeword-1.


We now describe the inventive two stream enhanced SIC receiver. Consider the model









y
=


H


[




x
1






x
2




]


+
v





(
1
)







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










u
1

=








h
1






h
2



2


-

h
2


<

h
1


,


h
2

>







h
2



2









h
1



2






h
2



2


-





<

h
1


,


h
2

>




2












u
2

=




h
2





h
2



2









where <h1, h2>=h2*h1 is the (complex) inner product of the two vectors and









L
=



[




L
11



0





L
21



1



]








L
11

=










h
1



2






h
2



2


-





<

h
1


,


h
2

>




2







h
2



2









L
21

=





<

h
1


,


h
2

>






h
2



2









Then we obtain









[




z
1






z
2




]

=



U
*


y

=



[




L
11



0





L
21



1



]



[




x
1






x
2




]


+

v
~







(
2
)







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+minx2|z2−L21x1,j−x2|2   (2b)


Defining qij=z2−L21x1,j we can express Q(x1,j) as





Q(x1,j)=|z1−L11x1,j|2+minx2R|q1jR−x2R|2+minx2I|q1,jI−x2I|2


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+minx2|q1,j−x2|2   (3b)


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:bi=0Q(x1,j)−minj:bi=1Q(x1,j)) . . . 1≦i≦log (M)


Thus we have shown that the complexity of our method to determine the max-log output for each of the log(M) bits is O(M) instead of the O(M2) complexity of the usual method.

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:bi=0Q(x2,j)−minj:bi=1Q(x2,j)) . . . log (M)+1≦i≦2 log (M)


The max-log outputs are fed to the outer code or FEC decoder for codeword-2.

Referring again to FIG. 5, the second enhanced SIC receiver (E-SIC-2) 50 method for two stream reception includes listing out all possibilities for symbol-151, for each choice of symbol-1 efficiently finding the best choice of symbol-2 and evaluating the metric for that pair 52, using the metrics to determine the exact max-log LLRs for all bits associated with symbol-153, decoding the codeword-1 using the computed LLRs 54, conducting a cyclic redundancy check (CRC) on the decoded codeword-155, checking if CRC is true for codeword-156, in case the step in 56 is true re-encoding the codeword-1 and then modulating and subtracting it from the received signal 57, listing out all possibilities for symbol-2 and computing the metrics 58, using the metrics to determine the max-log LLRs for all bits associated with symbol-259, and decoding the codeword-2 using the computed LLRs 60, in case the step in 56 is false listing out all possibilities for symbol-2 in the two stream signal 61, for each choice of symbol-2 efficiently finding the best choice of symbol-1 and evaluating the metric for that pair 62, using the metrics to determine the exact max-log LLRs for all bits associated with symbol-263, decoding the codeword-2 using the computed LLRs 64. This inventive second version of the enhanced SIC receiver has a higher complexity but in general better performance compared to the original E-SIC receiver.


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:bi=0Q(x2,j)−minj:bi=1Q(x2,j)) . . . log (M)+1≦i≦2log (M)


The obtained LLRs are used to decode the second codeword.

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










v
2

=








h
2






h
1



2


-

h
1


<

h
2


,


h
1

>










h
1



2









h
1



2






h
2



2


-





<

h
1


,


h
2

>




2













v
1

=




h
1





h
1



2









where <h2,h1>=h1*h2 is the complex conjugate of <h1,h2> and









R
=



[



1



R
12





0



R
22




]








R
22

=










h
1



2






h
2



2


-





<

h
1


,


h
2

>




2







h
1



2









R
12

=





<

h
2


,


h
1

>






h
1



2









Using V we determine w=V*y which can be expressed as







[




w
1






w
2




]

=



V
*


y

=



[



1



R
12





0



R
22




]



[




x
1






x
2




]


+

v
^







Next, for each x2,j we define the metric





Q(x2,j)=|w2−R22x2,j|2+minx1|w1−R12x2,j−x1|2   (2c)


Defining q2j=w1−R12x2,j, we can express Q(x2,j) as





Q(x2,j)=|w2−R22x2,j|2+minx1R|q2jR−x1R|2+minx1I|q2jI−x1I|2


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:bi=0Q(x2,j)−minj:bi=1Q(x2,j)) . . . log (M)+1≦i≦2log (M).


The obtained LLRs are used to decode the second codeword.

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.

Claims
  • 1. A method comprising the steps of: i) listing out all possibilities for first symbol of a two stream signal;ii) determining a second symbol of the two stream signal for each said first symbol listed out,iii) evaluating a metric for each said first symbol and second symbol pair,iv) determining the exact maximum log likelihood ratio for all bits associated with said first symbol using said metrics,v) decoding a codeword-1 associated with said first symbol using the maximum log likelihood ratios,vi) re-encoding said codeword-1,vii) modulating said re-encoded codeword-1,viii) subtracting said modulated re-encoded codeword-1 from said two stream signal,ix) determining the metrics for all possibilities of second symbol in the signal obtained in step viii,x) determining the maximum log likelihood ratios for all bits associated with second symbol, andxi) decoding codeword-2 associated with said second symbol using the maximum log likelihood ratios LLRs for all bits associated with said second symbol.
  • 2. The method of claim 1, wherein each symbol interval {Q(x1,j)}j=1M, and the max-log outputs {λi}i=1log (M) are obtained efficiently with O(M) complexity.
  • 3. The method of claim 2, wherein the max-log outputs are fed to an outer code or FEC decoder and decisions {{circumflex over (x)}1} are obtained.
  • 4. The method of claim 1, wherein for each symbol interval, {circumflex over (z)}2=z2−L21{circumflex over (x)}1 is computed 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:bi=0Q(x2,j)−minj:bi=1Q(x2,j) . . . log (M)+1≦i≦2log (M)
  • 5. A method comprising of the steps i to v of claim 1 and: vi) Conducting a CRC on decoded codeword-1,vii) In the case CRC is true for decoded codeword-1, performing steps vi to xi of claim 1viii) In case CRC is false: viii-a) listing out all possibilities for second symbol of a two stream signal;viii-b) determining a first symbol of the two stream signal for each said second symbol listed out,viii-c) evaluating a metric for each said first symbol and second symbol pair,viii-d) determining the exact maximum log likelihood ratio for all bits associated with said second symbol using said metrics,viii-e) decoding a codeword-2 associated with said second symbol using the maximum log likelihood ratios.
  • 6. The method of claim 5, wherein each symbol interval {Q(x2,j)}j=1M and the max-log outputs {λi}i=log (M)+12 log (M) are obtained efficiently with O(M) complexity.
  • 7. The method of claim 5, wherein the max-log outputs are fed to an outer code or FEC decoder to decode codeword-2.
  • 8. The method of claim 1, wherein said steps i) to xi) are extended to multiple (K>2) signal streams, retaining the structure of a conventional successive interference cancellation SIC receiver. In particular, to obtain the log likelihood ratios (LLRs) for the ith stream, the previously decoded streams 1 to i−1 are subtracted and streams i+2 to K are suppressed via MMSE filtering. Assuming perfect cancellation of the subtracted streams and whitening the suppressed interference plus noise, the ith stream is decoded and re-constructed in accordance with steps i)-vii) of claim 1.
  • 9. Another extension of the method of claim 5 to multiple (K>2) signal streams. Here to obtain the LLRs for the ith stream, only those streams from 1 to i−1 for which the decoded codewords pass the CRC are subtracted and streams i+2 to K as well as the remaining ones from 1 to i−1, are suppressed using MMSE filtering. Assuming perfect cancellation of the subtracted streams and whitening the suppressed interference plus noise, the ith stream is decoded and subject to a CRC in accordance with steps i)-vi) of claim 5.
Parent Case Info

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.

Provisional Applications (1)
Number Date Country
60826119 Sep 2006 US