Abstract:
A telecommunication MIMO receiver implements soft bit metric calculation with direct matrix inversion MIMO detection. The receiver has a detector that detects data symbols in a received signal by determining distances between received signal points and constellation points; a scaler that scales the distances using a scaling factor; and a soft bit metric calculator that uses the scaled distances to calculate scaled soft bit metrics. The receiver can also have a decoder that decodes the soft bit metrics to determine data values in the received signals. Preferably, the receiver also has a quantizer that dynamically quantizes the soft bit metrics before decoding by the decoder.

Description:
FIELD OF THE INVENTION  
       [0001]     The present invention relates generally to data communication, and more particularly, to data communication in multi-channel communication system such as multiple-input multiple-output (MIMO) systems.  
       BACKGROUND OF THE INVENTION  
       [0002]     A multiple-input-multiple-output (MIMO) communication system employs multiple transmit antennas and multiple receive antennas for data transmission. A MIMO channel formed by the transmit and receive antennas may be decomposed into independent channels, wherein each channel is a spatial subchannel (or a transmission channel) of the MIMO channel and corresponds to a dimension. The MIMO system can provide improved performance (e.g., increased transmission capacity) if the additional dimensionalities created by the multiple transmit and receive antennas are utilized.  
         [0003]     As a solution to the high capacity requirement of future wireless systems, a lot of attention has been drawn to MIMO wireless systems. One possible transmission scenario is to transmit different data streams in parallel simultaneously. In this case, all transmitted streams experience different channel signature, and are received overlapped at the receiver antennas. Therefore, the receiver needs to perform multi-signal detection. In terms of performance, the maximum likelihood bit metric detection is the optimal. However, the computational complexity goes exponentially with respect to constellation size and the number of transmitter antennas.  
         [0004]     There is, therefore, a need for a suboptimal approach which first detects the symbol using linear detector, followed by a soft posterior probability (APP) processing.  
       BRIEF SUMMARY OF THE INVENTION  
       [0005]     The present invention addresses the above shortcomings. In one embodiment the present invention provides a method of soft bit metric calculation for received data signals in a telecommunications receiver, comprising the steps of: detecting data symbols in the received signal using direct matrix inversion type of linear MIMO detection (ZF detection or MMSE detection); determining distances between detected symbol points and constellation points; scaling the distances using a scaling factor; and using the scaled distances to calculate scaled soft bit metrics. Further, the soft bit metrics are decoded to determine data values in the received signals. Preferably, the scaled soft bit metrics are dynamically quantized before decoding.  
         [0006]     In another embodiment, the soft bits metrics are scaled to reduce their effect on path metrics when the distances are not accurate. Preferably, the soft bits metrics are scaled to small values to reduce their effect on path metrics. The steps of scaling further include the steps of using the diagonal elements of a noise variance matrix as scaling factors. Further, the soft bit metric of a first received data stream is divided by a first diagonal element of the noise variance matrix, and the soft metric of a second received data stream divided by a second diagonal element of the noise variance matrix. The steps of scaling can further include the steps of performing direct matrix inversion. Preferably, the receiver comprises a wireless MIMO receiver which receives multiple data streams signals from a transmitter with multiple antennas.  
         [0007]     In another embodiment, the present invention provides a receiver that implements the method of the present invention, wherein the receiver comprises a detector that detects data symbols in the received signal by direct matrix inversion MIMO detection and determines the distances between received signal points and constellation points; a scaler that scales the distances using a scaling factor; and a soft bit metric calculator that uses the scaled distances to calculate scaled soft bit metrics. The receiver can further comprise a decoder that decodes the soft bit metrics to determine data values in the received signals. Preferably, the receiver further comprises a quantizer that dynamically quantizes the soft bit metrics before decoding by the decoder.  
         [0008]     These and other features, aspects and advantages of the present invention will become understood with reference to the following description, appended claims and accompanying figures.  
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0009]      FIG. 1  shows a block diagram of a conventional receiver for soft decoding with a linear MIMO detector.  
         [0010]      FIG. 2  shows an example of distance computation using QPSK.  
         [0011]      FIG. 3  shows an example functional block diagram of a receiver according to an embodiment of the present invention.  
         [0012]      FIG. 4  shows an example performance comparison of a receiver with soft bit metric calculation and dynamic quantization, in relation to conventional receivers over 802.11n channel model B.  
         [0013]      FIG. 5  shows an example performance comparison of a receiver with soft bit metric calculation and dynamic quantization, in relation to conventional receivers over 802.11n channel model D.  
     
    
       [0014]     In the drawings, like reference numbers refer to like elements.  
       DETAILED DESCRIPTION OF THE INVENTION  
       [0015]     In a MIMO telecommunication system, when different data streams are transmitted in parallel simultaneously, all transmitted streams experience different channel signature. The data streams are received overlapped at the receiver antennas, whereby the receiver performs multi-signal detection. This optimal approach allows maximum likelihood bit metric detection at the expense of exponential increase in computational complexity in relation to constellation size and the number of transmitter antennas. In one embodiment, the present invention provides a suboptimal approach to address the computational complexity of the optimal approach. Accordingly, an example metric calculation method according to the present invention first detects an incoming symbol using a linear detector, and then performs a soft posterior probability (APP) processing.  
         [0016]     An example implementation of such a method according to the present invention is described in relation to an example MIMO system having a transmitter TX with N t  transmitter antennas and a receiver RX with N r  receiver antennas. The signal R received at the receiver can be represented as R=HS+N where R is N r ×1 vector, H is N r ×N t  matrix, S is the N t ×1 transmitted signal vector, and N is N r ×1 received noise vector.  
         [0017]     The transmitted signal can be estimated at the receiver as S=H + R=H + HS+H + N, where H +  is the pseudo-inverse which can be calculated according to the Zero Forcing (ZF) or Minimum Mean Square Error (MMSE) criterion. Then, soft bit metrics used in an outer error correction coding can be calculated from the estimated symbol {tilde over (S)}.  FIG. 1  shows a block of a conventional receiver (RX)  100  that receives data signals from the transmitter TX, wherein the receiver  100  provides soft decoding using a linear MIMO detector implementing signal estimation from the estimated symbol {tilde over (S)}. The receiver in  FIG. 1  comprises a MIMO Detector  102 , a Soft Metric Calculator  104  and a Decoder  106 . The MIMO detector  102  inputs the received signal, performs MIMO detection using ZF or MMSE criterion (i.e., calculates H + R), and outputs the estimated symbol {tilde over (S)}.  
         [0018]     The Soft metric calculator  104  inputs the estimated symbol {tilde over (S)}, calculates the bit metric by determining the distance between {tilde over (S)} and the constellation points, and outputs the bit metrics. The decoder  106  inputs the bit metrics, performs Viterbi decoding and outputs decoded information bits.  
         [0019]     The symbols of the received signal are processed in the MIMO detector  102 , one vector symbol at a time, to determine the individual transmitted signals, wherein a vector symbol comprises symbols received on the receive antennas during a symbol period. The Soft Metric Calculator  104  converts the symbols into bit space to obtain soft value bits which indicate if a received bit is a one or zero, and its certainty.  
         [0020]     The bit metrics can be calculated by the Soft Metric Calculator  104  by finding the distance between {tilde over (S)} and the constellation point (as in a single input single output (SISO) case) via the log-likelihood ratio (LLR) as in relation (1) below implemented in the Soft Metric Calculator  104 :  
                   LLR   ji     +     m   ji   1     -     m   ji   0       =         min     a   ∈     C   i   1         ⁢                s   ~     j     -   a          2       -       min     a   ∈     C   i   0         ⁢                s   ~     j     -   a          2           ,           (   1   )             
 
         [0021]     where C i   p  represents the subset of the constellation point such that bit i is equal to p, pε{0,1}.  
         [0022]     An example implementation of distance calculation using Quadrature Phase Shift Keying (QPSK) modulation is shown by example diagrams  200  and  202  in  FIG. 2 , and described by example in: (1) G. D. Golden, C. J. Foschini, R. A. Valenzuela and P. W. Wolniansky, “Detection algorithm and initial laboratory results using V-BLAST space-time communication architecture,” Electronics Letters, Vol. 35, No. 1, and (2) E. Zehavi, “8-PSK trellis codes for a Rayleigh channel”, IEEE Transactions on Communications, Volume: 40, Issue: 5, May 1992, Pages: 873-884, incorporated herein by reference.  
         [0023]      FIG. 2  shows an example of calculating relation (1) using QPSK. For Gray labeled QPSK constellation, there are 4 symbols: (1+j)/√{square root over (2)}, (−1+j)/√{square root over (2)}, (−1−j)/√{square root over (2)} and (1−j)/√{square root over (2)}, which are mapped with 2 bits (b 1 b 0 ), corresponding to 10, 00, 01, 11. When there is an estimated symbol at j th  time slot {tilde over (S)} j , which is a QPSK symbol, the soft bit information (b 1  and b 0 ) must be determined from {tilde over (S)} j . Taking b 0 , for example (graph  200  in  FIG. 2 ), both constellation points (1+j)/√{square root over (2)} (labeled as 10) and (−1+j)/√{square root over (2)} (labeled as 00) have b 0  equals 0. As such, for b 0 =0, the minimum distance of {tilde over (S)} j  to (1+j)/√{square root over (2)} and (−1+j)/√{square root over (2)} must be determined. In graph  200 , the minimum distance,  
           min     a   ∈     C   i   0         ⁢                s   ~     j     -   a          2       ,         
 is the distance between {tilde over (S)} j  and (−1+j)/√{square root over (2)}. Similarly, for b 0 =1,  
         min     a   ∈     C   i   1         ⁢                s   ~     j     -   a          2           
 is the minimum distance between {tilde over (S)} j  and (−1−j)/√{square root over (2)}. The soft metric for b 0  is therefore equal to LLR ji =m ji   1 −m ji   0  for i=0. 
 
         [0024]     Graph  202  in  FIG. 2  show the case for b 1 . Both the constellation point (−1+j)/√{square root over (2)} (labeled as 00) and (−1−j)/√{square root over (2)} (labeled as 01) have b 1 =0. As such,  
         m   ji   0     =       min     a   ∈     C   i   0         ⁢                s   ~     j     -   a          2           
 
 is the distance between {tilde over (S)} j  and (−1+j)/√{square root over (2)}. Similarly, for b 1 =1,  
         m   ji   1     =       min     a   ∈     C   i   1         ⁢                s   ~     j     -   a          2           
 
 is the distance between {tilde over (S)} j  and (1+j)/√{square root over (2)} LLR ji =m ji   1 −m ji   0 , i=1 is the distance shown as  202 . 
 
         [0025]      FIG. 3  shows a block diagram of an example receiver  300  according to an embodiment of the present invention which provides improved soft metric calculation after the linear matrix inversion MIMO detection. The receiver in  FIG. 3  comprises a MIMO Detector  302 , a Scaling function  304 , a Scaled Soft Metric Calculator (SSC)  306  and a Decoder Dynamic Qauntizer (DDQ)  308 . The soft metric is calculated by the SSC  306  and then dynamically quantized by the DDQ  308  before further processing by a soft Viterbi detector in the DDQ  308 . Specifically, the MIMO detector  302  inputs the received signal, performs MIMO detection using ZF or MMSE criterion (i.e., calculate H +  and H + R), and outputs the estimated symbols {tilde over (S)} and H + . The Scaling Function block  304  inputs the symbol H + , calculates the noise variance matrix E{H + NN H H +H }, and outputs diagonal element of the noise variance matrix, i.e., the scaling factor. The Scaled soft metric calculator  306  inputs the estimated symbol {tilde over (S)} and the scaling factor, calculates the bit metric by determining the distance between {tilde over (S)} and the constellation points, scales the distance using the scale factor, and outputs the soft bit metrics. The Decoder Dynamic Qauntizer  308  inputs the soft bit metrics, quantizes the soft bit metric using a fixed number of bits (depending on detailed implementation and hardware) wherein the dynamic range is adaptively adjusted based on the variance of the soft metric and number of quantization bits, performs Viterbi decoding, and outputs decoded information bits.  
         [0026]     After the distance computation in the MIMO Detector  302 , the distance is scaled in the Scaling function  304  by a scaling factor before further processing by the soft Viterbi decoder in the DDQ  308 . The scaling factor is used herein because when performing linear detection, the detector  302  multiples the inverse of the channel matrix to the received signal. If the channel is ill-conditioned, the noise will be very large, whereby the soft bit metric is far from the correct value. When applied to the soft Viterbi decoder, this may lead to an entire incorrect trellis path in the Viterbi decoder. Therefore, according to an embodiment of the present invention, the soft metric is scaled to a very small value, such that even if it is incorrect, it would not unduly contribute to the path metrics in the soft Viterbi detector.  
         [0027]     Mathematically, the noise after the linear detection by the ZF MIMO Detector  302  becomes H + N, which has a variance of E{H + NN H H +H }=H + H +H /σ 2  (where E{ } is the expectation operation, and superscript H means conjugate transpose).  
         [0028]     It can be verified that when the channel condition is large, the off-diagonal part of the noise covariance matrix E{H + NN H H +H } is very large. Whitening this colored noise is computationally expensive (rising exponentially with the number of transmitter antennas). Accordingly, the present invention utilizes a suboptimal approach, using only e.g. the diagonal part of the noise variance matrix for scaling the soft metric.  
         [0029]     Channel condition is defined as the largest eigen-value of the channel matrix H over the smallest eigen-value of H. Large condition number means the MIMO channels are not orthogonal to each other, therefore, it is very difficult to decouple them into multiple parallel channels. As a result, the estimated symbol {tilde over (S)} is less reliable.  
         [0030]     In one example scaling implementation in the Scaling function  304 , the soft bit metric of a first data stream is divided by the first diagonal element, the soft metric of a second data stream divided by the second diagonal element and so on, i.e.,  
           LLR   ji   ′     =       LLR   ji              H   j   +          2         ,       
 
 where H j   +  is the j th  row of H + , and ∥H j   + ∥ 2  is the vector norm. 
 
         [0031]     Because of said scaling, the dynamic range of the soft bit metric is much larger than the original soft metric. Therefore, the soft bit metric is dynamically quantized in the DDQ  308  as described to cope with this large dynamic range. In one example, dynamic quantization is implemented as follows. The hardware implementation of the Viterbi decoder requires quantized soft bit information. More bits used for quantization provide more accurate results, at the expense of more complicated hardware. Once the number of quantized bits is fixed, there is a tradeoff between dynamic range and precision. If the dynamic range is selected to be small, it results in large overflow when quantizing. If the dynamic range is selected to be large, then there is a loss in precision, resulting in many zeros after scaling. Therefore, the dynamic range should be selected based on the detailed implementation (number of bits used in the Viterbi decoder), statistical information of the soft metrics, etc.  
         [0032]     The inventors have found that with limited bit quantization (e.g., 10 bits) there are many zeros in the quantized information. This will cause decoding failure for punctured codes, especially ¾ rate. Therefore, the scaling is further adjusted to  
         LLR   ji   ′     =       LLR   ji                H   j   +          2             
 
 for punctured codes. 
 
         [0033]     Similar dynamic quantization still applies.  FIG. 4  shows example performance comparison of scaled soft metric calculation with dynamic quantization according to the present invention, and the conventional approach over the 802.11n channel model B.  FIG. 5  shows example performance comparison of soft metric calculation with dynamic quantization according to the present invention, and the conventional approach over the 802.11n channel model D.  
         [0034]     As shown in  FIGS. 4-5 , example simulation shows that utilizing a receiver  300  according to the present invention provides more than e.g. 10 dB gain compared with the conventional (original) soft bit metric as calculated in relation (1) above without scaling (e.g., as in original/conventional receiver  100  of  FIG. 1 ). In the examples of  FIGS. 4-5 , results from a conventional/original receiver are designated by O 1 , O 2  and O 3 , corresponding to results from a receiver according to an embodiment of the present invention, designated as SC 1 , SC 2  and SC 3 , respectively. In the simulation example of  FIGS. 4-5 , the constrained length in the soft Viterbi detector is set to e.g. 34. Using larger constrained length results in better performance in both cases. The modes in  FIGS. 4-5 , are defined as the modulation and coding combination similar to 802.11a. Mode  5  reflects 16QAM ½ coding, mode  6  reflects 64QAM with ⅔ coding, mode  8  reflects use 64QAM with ¾ coding.  
         [0035]     The same scaling factor ∥H j   + ∥ 2  for M codes or √{square root over (∥H j   + ∥ 2 )} for punctured codes can be applied to the matrix inversion type of MIMO detector. For MIMO detector follows the ZF criterion, H + =H H (H H H) −1 . For MIMO detector follows the MMSE criterion, H + =H H (H H H+I/σ 2 ) −1 .  
         [0036]     The present invention has been described in considerable detail with reference to certain preferred versions thereof; however, other versions are possible. Therefore, the spirit and scope of the appended claims should not be limited to the description of the preferred versions contained herein.