Abstract:
The present invention relates to a method for searching a solution point of maximum-likelihood detection. The solution point locates at a symbol constellation. The method includes the following steps: determining a central point and a norm by a zero-forcing detection method; determining a searching range according to the central point and the norm; determining at least one qualified solution point according to the searching range; and determining the solution point of maximum-likelihood detection from the qualified solution points.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a wireless communication system, and in particular, to a multi-input multi-output (MIMO) system for wireless communication. 
     2. Description of the Prior Art 
     Recently, due to the rapid increase in the requirements of wireless communication, academic circles and industrial manufacturers have been continuously researching transmission methods for highly efficient communication. According to basic communication theory, the simplest method for achieving highly efficient communication is to increase the bandwidth of signal transmission. As the bandwidth is restricted and limited, however, it is futile to claim greater efficiency by using a very wide bandwidth to transmit a lot of data. Consequently, a most interesting research subject is how to use a plurality of antennas for transmitting and receiving data under limited bandwidth to achieve highly efficient data communication. That is, in a particular circumstance with limited bandwidth, the amount of transmitted data can be raised through increasing the number of transmitting and receiving antennas. 
     Because different data is assigned to different antennas for transfer at the same time and at the same bandwidth, these signals transferred by different antennas will obviously interfere with each other at the receiving end. Therefore, a receiver utilizes a plurality of antennas to receive signals delivered by a plurality of antennas of a transmitter. As every antenna of the receiver receives signals transferred by a different antenna of the transmitter, however, the receiver cannot identify the signal received by one antenna unless the receiver executes signal processing. Please refer to  FIG. 1 . Assume a transmitter  10  includes M antennas and a receiver  20  includes N antennas. The transmitter  10  delivers M symbols X 1 , X 2 , . . . , X M  during one symbol duration, and then these symbols pass the channel and are received by N antennas of the receiver  20 . y 1 , y 2 , . . . y N  represents signals received by different antennas at the same time, so the relationship between a transmission signal, a receiving signal, and the channel is described through vectors as the following: 
     
       
         
           
             
               
                 
                   
                     Y 
                     = 
                     
                       HX 
                       + 
                       W 
                     
                   
                   ⁢ 
                   
                     
 
                   
                   ⁢ 
                   wherein 
                   ⁢ 
                   
                     
 
                   
                   ⁢ 
                   
                     
                       Y 
                       = 
                       
                         [ 
                         
                           
                             
                               
                                 y 
                                 1 
                               
                             
                           
                           
                             
                               
                                 y 
                                 2 
                               
                             
                           
                           
                             
                               ⋮ 
                             
                           
                           
                             
                               
                                 y 
                                 N 
                               
                             
                           
                         
                         ] 
                       
                     
                     , 
                     
                       X 
                       = 
                       
                         [ 
                         
                           
                             
                               
                                 x 
                                 1 
                               
                             
                           
                           
                             
                               
                                 x 
                                 2 
                               
                             
                           
                           
                             
                               ⋮ 
                             
                           
                           
                             
                               
                                 x 
                                 M 
                               
                             
                           
                         
                         ] 
                       
                     
                     , 
                     
                       W 
                       = 
                       
                         [ 
                         
                           
                             
                               
                                 w 
                                 1 
                               
                             
                           
                           
                             
                               
                                 w 
                                 2 
                               
                             
                           
                           
                             
                               ⋮ 
                             
                           
                           
                             
                               
                                 w 
                                 N 
                               
                             
                           
                         
                         ] 
                       
                     
                     , 
                     
                       
 
                     
                     ⁢ 
                     
                       H 
                       = 
                       
                         [ 
                         
                           
                             
                               
                                 h 
                                 11 
                               
                             
                             
                               
                                 h 
                                 12 
                               
                             
                             
                               ⋯ 
                             
                             
                               
                                 h 
                                 
                                   1 
                                   ⁢ 
                                   M 
                                 
                               
                             
                           
                           
                             
                               
                                 h 
                                 21 
                               
                             
                             
                               
                                 h 
                                 22 
                               
                             
                             
                               ⋯ 
                             
                             
                               
                                 h 
                                 
                                   2 
                                   ⁢ 
                                   M 
                                 
                               
                             
                           
                           
                             
                               ⋮ 
                             
                             
                               ⋮ 
                             
                             
                               ⋱ 
                             
                             
                               ⋮ 
                             
                           
                           
                             
                               
                                 h 
                                 
                                   N 
                                   ⁢ 
                                   
                                       
                                   
                                   ⁢ 
                                   1 
                                 
                               
                             
                             
                               
                                 h 
                                 
                                   N 
                                   ⁢ 
                                   
                                       
                                   
                                   ⁢ 
                                   2 
                                 
                               
                             
                             
                               ⋯ 
                             
                             
                               
                                 h 
                                 NM 
                               
                             
                           
                         
                         ] 
                       
                     
                   
                 
               
               
                 
                   eq 
                   . 
                   
                       
                   
                   ⁢ 
                   1 
                 
               
             
           
         
       
     
     W represents noise received by N antennas of the receiver  20 , and H a represents signals transmitted by different antennas of the transmitter  10  passed to several possible channels to be received by the receiver  20 . In detail, h ij  represents the channel for signal transmission from antenna j of the transmitter  10  to antenna l of the receiver  20 , and at the point of communication, symbols X 1 , X 2 , . . . , X M  delivered by the transmitter  10  may be BPSK, QPSK, 4-QAM, 16-QAM, or other modulation types. Consequently, the purpose of the receiver  20  is to properly process the signal Y received by antennas of the receiver  20  in order to identify symbols X 1 , X 2 , . . . , X M  delivered by M antennas of the transmitter  10 . Furthermore, related art is disclosed in U.S. Pub. No. 2003/0076890, “method and apparatus for detection and decoding of signals received from a linear propagation channel” (this data is incorporated herein by reference). The related art has significant limitations, however. 
     The receiving end still has the unresolved issue of properly processing the receiving signal Y received by antennas of the receiver in order to obtain symbols delivered by M transmission antennas. 
     SUMMARY OF THE INVENTION 
     Therefore, one objective of the present invention is to provide a searching method for searching a solution point of maximum-likelihood (ML) detection, to solve the above-mentioned problem. 
     Another objective of the present invention is to provide a searching method for searching a solution point of ML detection that can be applied in a multi-input multi-output (MIMO) system. 
     A further objective of the present invention is to provide a searching method for searching a solution point of ML detection, and reducing searching time. 
     According to an embodiment of the present invention, a searching method for searching a solution point of ML detection is disclosed. The solution point locates at a symbol constellation, and the method includes: determining a central point and a norm by a zero-forcing detection method, wherein the solution point of ML detection locates inside a sphere that utilizes the central point to be a center and the norm to be a radius; determining a searching range according to the central point and the norm; creating at least one qualified solution point according to the searching range; and determining the solution point of ML detection from the qualified solution points. 
     These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a diagram of a MIMO communication system with M antennas for transmission and N antennas for receiving. 
         FIG. 2  is a diagram of utilizing C ZF  to be a radius and {tilde over (X)} 0  to be a central point to search the solution of ML detection according to an embodiment of the present invention. 
         FIG. 3  is a diagram of the searching range of ML detection, according to an embodiment of the present invention. 
     
    
    
     DETAILED DESCRIPTION 
     In general, maximum-likelihood (ML) detection/decoding is considered as an optimal signal detection/decoding method, but due to its complexity, there also exist many sub-optimal detection/decoding methods with lower complexity such as the well-known zero-forcing (ZF) detection and MMSE detection. The present invention utilizes ZF detection aiding ML detection to reduce the complexity of ML detection. The following description further describes ML and ZF detection. 
     Briefly, the ML detection/decoding method is represented as
 
 {circumflex over (X)}   ML =arg{min{| Y−HX|   2   }}, Xε{QPSK/QAM}   eq. 2
 
The receiver predicts all possible lattices X delivered by the transmitter and utilizes eq. 2 to determine which set X (that is, which lattice X) satisfies eq. 2, to obtain the solution of ML detection {circumflex over (X)} ML . In other words, defining
 
 C=|Y−HX|   2 ,  eq. 3
 
the ML detection means that the receiver guesses all possible sets X delivered by the transmitter and applies eq. 3 to determine which set X creates minimum C, then the set X is the solution of ML detection/decoding and is labeled as {circumflex over (X)} ML . Obviously, ML detection is a highly complex method. For example, every symbol transferred from the transmitter is modulated by 64-QAM, i.e. there are M symbols in one set X, resulting in the receiver having to guess 64 M  combinations to obtain the solution of ML detection. It is difficult to materialize the extremely complex method to commercial products without proper simplification. Therefore, some sub-optimal methods are introduced, such as ZF detection:
 
 {tilde over (X)}   0 =( H   H   H ) −1   H   H   Y, {circumflex over (X)}   ZF =slicer( {tilde over (X)}   0 )  eq. 4
 
     Eq. 4 is utilized while N is greater than M or equal to M, but for the condition N equals to M, ZF detection has another form:
 
 {tilde over (X)}   0   =H   −1   Y, {circumflex over (X)}   ZF =slicer( {tilde over (X)}   0 )  eq. 5
 
     Eq. 4 and eq. 5 are both recognized as ZF detection. The following description explains how to utilize ZF detection aiding ML detection to realize a lower complex ML detection/decoding method. 
     A sphere decoding method is applied to transfer the solution of ML detection into another form:
 
 {circumflex over (X)}   ML =arg{min{|Y−HX| 2 }}≡arg{min(X−{tilde over (X)} 0 ) H   H   H   H ( X−{tilde over (X)}   0 )},  Xε{QPSK/QAM}   eq. 6
 
In eq. 6, {tilde over (X)} 0  is treated as a central point of a sphere, and the solution of ML detection is a lattice that is nearest to the central point. The ML detection searches all lattices X, and finds a lattice {circumflex over (X)} ML  related to the central point {tilde over (X)} 0  with shortest norm to be the solution of ML detection. In other words, {circumflex over (X)} ML  creates a minimum C in the following equation:
 
 C =(X−{tilde over (X)} 0 ) H   H   H   H (X−{tilde over (X)} 0 )  eq. 7
 
     It is therefore possible to define a proper radius or a norm and use {tilde over (X)} 0  to be a center to construct a sphere. If the norm is long enough, the sphere includes the solution point {circumflex over (X)} ML  of ML detection. As mentioned above, the key point is how to determine a suitable radius or a norm. According to eq. 6, {circumflex over (X)} ML  is the solution point of ML detection and is the nearest lattice related to the central point {tilde over (X)} 0 . For this reason, the solution of ZF detection (the lattice {circumflex over (X)} ZF ) must have a norm C ZF  related to the central point {tilde over (X)} 0  that is longer than (or equal to) the norm C ML  between the lattice {circumflex over (X)} ML  and the central point {tilde over (X)} 0 . Please note that, C ZF  and C ML , the result of eq. 7 being applied to {circumflex over (X)} ZF  and {circumflex over (X)} ML  respectively, results in the following relationship:
 
0≦C ML ≦C ZF   eq. 8
 
According to eq. 8, applying {tilde over (X)} 0  to be the central point and C ZF  to be the radius to construct a sphere, guarantees that {circumflex over (X)} ML  locates inside the sphere and means that users can search the solution of ML detection {circumflex over (X)} ML  inside the sphere to simplify the original searching procedures applied in eq. 2. From a viewpoint of eq. 6, searching procedures of eq. 2 are equivalent to searching for {circumflex over (X)} ML  inside a sphere with an unlimited radius, so the complexity is higher than the present invention, which searches for {circumflex over (X)} ML  in a sphere applying {tilde over (X)} 0  to be the central point and C ZF  to be the radius. Meanwhile, from eq. 4 and eq. 5, the solution point of ZF detection {circumflex over (X)} ZF  is the lattice determined through making a hard decision to the central point {tilde over (X)} 0 , and C ZF  is the norm between the lattice {circumflex over (X)} ZF  and the central point {tilde over (X)} 0 . Hence the method utilizing {tilde over (X)} 0  to be the central point and C ZF  to be the radius to construct a sphere and searching for the lattice {circumflex over (X)} ML  inside the sphere is more efficient.
 
     Due to the prior art utilizing {tilde over (X)} 0  to be a center to construct a sphere with a proper radius and then finding the lattice {circumflex over (X)} ML  inside the sphere, it is obvious that if the radius is not long enough, the solution point {circumflex over (X)} ML  will not be included inside the sphere, so the radius should be increased to reconstruct a new sphere and searching procedures of the solution of ML detection {circumflex over (X)} ML  should be repeated again. On the other hand, the present invention utilizes {tilde over (X)} 0  to be a center and C ZF  to be a radius for constructing a sphere and then finds the solution of ML detection {circumflex over (X)} ML  inside the sphere. It is therefore guaranteed that {circumflex over (X)} ML  locates inside the sphere. Please refer to eq. 8 and  FIG. 2 ;  FIG. 2  is a diagram of utilizing C ZF  to be a radius and {tilde over (X)} 0  to be a central point to search the solution of ML detection according to an embodiment of the present invention. 
     Next, how to identify whether the lattice is inside the sphere after defining the sphere radius C ZF  will be further discussed. Now, the concept about searching for the solution point inside the sphere is clear, but there is no clear mathematical equation to accomplish the searching action on the electric circuit. 
     Through a mathematic operation such as Cholesky factorization in the linear algebra, eq. 7 is transformed into:
 
 C =(X−{tilde over (X)} 0 ) H   H   H   H (X−{tilde over (X)} 0 )=(X−{tilde over (X)} 0 ) H   U   H   U (X−{tilde over (X)} 0 )  eq. 9
 
wherein U is an M×M upper triangular matrix. In general, the diagonal elements u ii , i=1,2, . . . ,M are all greater than zero. Introducing the concept of the sphere and the above-mentioned radius C ZF , the desired lattice must satisfy:
 
                         C   =         (     X   -       X   ~     0       )     H     ⁢     U   H     ⁢     U   ⁡     (     X   -       X   ~     0       )                     =         ∑     i   =   1     M     ⁢       u   ii   2     ⁢              x   i     -       x   ~     i     +       ∑     j   =     i   +   1       M     ⁢         u   ij       u   ii       ⁢     (       x   j     -       x   ~     j       )                2         ≤     C   ZF                     eq   .           ⁢   10               
wherein the central point {tilde over (X)} 0 =[{tilde over (X)} 1  {tilde over (X)} 2  . . . {tilde over (X)} M ] T  and
 
X=[X 1  X 2  . . . X M ] T , T represent transposition. Referring to eq. 10, if only the term i=M is left, the following equation is obtained:
 
                           u   MM   2     ⁢              x   M     -       x   ~     M            2       ≤     C   ZF       ⇒                x   M     -       x   ~     M            2     ≤       C   ZF       u   MM   2           =     r   M   2             eq   .           ⁢   11               
Please note that a new radius r M   2 =C ZF /u MM   2  is defined. The object of transforming eq. 10 to eq. 11 is to obtain the solution of ML detection {circumflex over (X)} ML =[X′ 1,ML  X′ 2,ML  . . . X′ M,ML ] T  from eq. 10. It is necessary to try all possible sets X=[X 1  X 2  . . . X M  ] T  to find one set {circumflex over (X)} ML =[X′ 1,ML  X 2,ML  . . . X′ M,ML ] T  such that C has a minimum value C ML . From eq. 11, we can determine a searching range about the ML solution X′ M,ML  of X M  delivered by the Mth antenna of the transmitter. That is, there may be several X M  satisfying eq. 11, and the solution X′ M,ML  is among these X M . For every candidate X M  that satisfies eq. 11, eq. 10 can be utilized to obtain two terms i=M−1 and i=M
 
                         u       (     M   -   1     )     ⁢     (     M   -   1     )       2     ⁢              x     M   -   1       -       x   ~       M   -   1       +         u       (     M   -   1     )     ⁢   M         u       (     M   -   1     )     ⁢     (     M   -   1     )           ⁢     (       x   M     -       x   ~     M       )              2       +       u   MM   2     ⁢              x   M     -       x   ~     M            2         ≤     C   ZF             eq   .           ⁢   12               
to find several possible X M−1  corresponding to each X M  satisfying eq. 11. Through repeating the procedure recursively until i=1, several sets X=[X 1  X 2  . . . X M ] T  will be obtained, and can then be applied to eq. 9 and eq. 10, to determine the solution set {circumflex over (X)} ML =[X′ 1,ML  X′ 2,ML  . . . X′ M,ML ] T  with minimum C. But it is still difficult to find all possible X M  satisfying eq. 11, so eq. 11 is rewritten as
 
|X M −{tilde over (X)} M | 2   ≦r   M   2   eq. 13 a  
 
     or:
 
 |X   M   −{tilde over (X)}   M   |≦r   M   eq. 13 b  
 
     The present invention provides a simplified method to be realized in the electric circuit. The simplified method utilizes a searching range a little larger than the original range defined by eq. 13a and eq. 13b to cover the solution point X′ M,ML . 
     Because X M  utilizes BPSK, 4-QAM, 16-QAM, 64-QAM, 256-QAM, or other high-level modulation methods, X M  can be separated into a real part Xi M  and an imaginary part Xj M  respectively. Similarly, {tilde over (X)} M  is also separated into a real part {tilde over (X)}i M  and an imaginary part {tilde over (X)}j M , and eq. 13b can be rewritten as:
 
| X   M   −{tilde over (X)}   M |=|( Xi   M   −{tilde over (X)}i   M )+ j ( Xj   M   −{tilde over (X)}j   M )|≦ r   M   eq. 14
 
Utilizing a simple algebra relationship
 
| Xi   M   −{tilde over (X)}i   M |≦|( Xi   M   −{tilde over (X)}i   M )+ j ( Xj   M   −{tilde over (X)}j   M )| and
 
| Xj   M   −{tilde over (X)}j   M |≦|( Xi   M   −{tilde over (X)}i   M )+ j ( Xj   M   −{tilde over (X)}j   M )|,eq. 14 can be further analyzed to obtain the following relationship:
 
     
       
         
           
             
               
                 
                   { 
                   
                     
                       
                         
                           
                              
                             
                               ( 
                               
                                 
                                   xi 
                                   M 
                                 
                                 - 
                                 
                                   
                                     x 
                                     ~ 
                                   
                                   ⁢ 
                                   
                                     i 
                                     M 
                                   
                                 
                               
                               ) 
                             
                              
                           
                           ≤ 
                           
                             r 
                             M 
                           
                         
                       
                     
                     
                       
                         
                           
                              
                             
                               ( 
                               
                                 
                                   xj 
                                   M 
                                 
                                 - 
                                 
                                   
                                     x 
                                     ~ 
                                   
                                   ⁢ 
                                   
                                     j 
                                     M 
                                   
                                 
                               
                               ) 
                             
                              
                           
                           ≤ 
                           
                             r 
                             M 
                           
                         
                       
                     
                   
                 
               
               
                 
                   eq 
                   . 
                   
                       
                   
                   ⁢ 
                   15 
                 
               
             
           
         
       
     
     The solution that satisfies eq. 14 also surely satisfies eq. 15. Please refer to  FIG. 3 .  FIG. 3  is a diagram illustrating the searching range of ML detection according to an embodiment of the present invention. 
     From  FIG. 3 , it is obvious that the solution point satisfying eq. 14 locates inside a circle. The central point of the circle in  FIG. 3  is {tilde over (X)} M , due to the solution point satisfying eq. 15 locates inside the square (shown in  FIG. 3 ); as the square surrounds the circle, the solution point satisfying eq. 14 must satisfy eq. 15 too. Originally, we have to find solutions including X′ M,ML  through eq. 14, and it is very complex to realize this on integrated circuits. By the method disclosed in the present invention, the searching method is transferred to a simpler method for finding the solution of eq. 15. Taking a 16-QAM modulation illustrated in  FIG. 3  for example, the present invention constructs a square with the smallest area to exactly surround the circle, and defines a searching range about the real and imaginary part of the solution X′ M,ML  through separate projection for axis I and axis Q. Explicitly speaking, the searching range of X′ M,ML  on axis I and Q, x′i M,ML  and X′j M,ML , is limited by the following equations:
 
┌ {tilde over (X)}i   M   −r   M   ┐≦Xi   M   ≦└{tilde over (X)}i   M   +r   M ┘  eq. 15 a  
 
┌ {tilde over (X)}j   M   −r   M   ┐≦Xj   M   ≦└{tilde over (X)}j   M   +r   M ┘  eq. 15 b  
 
wherein function ┌ ┐ means a minimum integer not less than the operated parameter. Similarly, function └ ┘ means a maximum integer not greater than the operated parameter. As a result, the solutions satisfying eq. 15a must include X′i M,ML  and the solutions satisfying eq. 15a must include X′j M,ML . Consequently, the present invention provides eq. 15a and eq. 15b for easily completing on circuits through limiting the searching range of X′ M,ML  on both axes Q and I. In a preferred embodiment, X′ M,ML  utilizes separate projection for I and Q to respectively define a searching range, or processes I and Q together for creating a square on the complex plane to define the searching range of X′ M,ML . Furthermore, in the procedure of recursively performing sphere decoding to find remaining X M−1 , X M−2 , . . . , X 1 , the searching range is capable of using eq. 15a and eq. 15b to search the solution of ML detection X M−1 , X M−2 , . . . , X 1 . Another embodiment of the present invention replaces the circle with a square to respectively search the ML solution on axes Q and I. In fact, for requirements of particular circuit application, the method for searching X′ M,ML  on the complex plane through respectively searching I and Q is variable, i.e. separately defining searching ranges of I and Q. For example, shortening the searching range of the axis I to reduce circuit complexity, enables the solution point X′ M,ML  to be searched for inside a rectangle or a square on the complex plane.
 
     Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.