The foregoing and other aspects of the teachings of this invention are made more evident in the following Detailed Description, when read in conjunction with the attached Drawing Figures, wherein:
The exemplary embodiments of this invention relate to the detection of a MIMO transmission using a reduced lattice basis for the transmitted constellation, where the MIMO detection using lattice reduction provides a low complexity detection technique while maintaining good detection performance.
More specifically, a lattice reduction technique in accordance with exemplary embodiments of this invention calculates a unimodular integer change of a basis matrix T for a channel H such that H*T is nearer to being an orthogonal matrix than H. MIMO detection is then be performed by operating with H*T and T−1x, as opposed to H and x, where x is the transmitted symbol vector. The near orthogonality property of H*T results in a relatively small noise enhancement with linear detection techniques (e.g., Zero Forcing, MMSE), hence good detection performance is maintained. Lattice reduction may also be employed to improve the performance of low complexity non-linear MIMO detectors, such as SIC detectors.
The exemplary embodiments of this invention use the reduced lattice basis to generate soft decisions. The lattice reduction principle and soft decisions generation are closely related. The goal of the reduced lattice basis is to find a basis with short vectors. The goal of the soft decision generation is to find the closest points in the signal constellation that have the opposite bit value compared to the hard decisions. The exemplary embodiments of this invention use the reduced lattice basis to find the constellation points that are close to the hard decision point, and then use the found points to generate the soft decisions.
The following description is made in the context of a non-limiting embodiment, it being realized that other approaches may be used to achieve the same results.
The system model is:
r=Hx+n.
Referring also to the logic flow diagram of
At Block 6B the list L of points used for soft decision calculation is formed using the columns of the matrix HT. The list L contains the received point r and a set of points that are formed by adding to the point r a column of the matrix HT multiplied by a scaling factor (e.g., +0.8, −0.8, +0.8i, −0.8i, or for slightly less accuracy +1, −1, +i, or −i). Slightly better performance was achieved with the scaling 0.8 factors above. As a result, the size of the list L is one plus four times the number of transmit antennas (1+4*Ntx). The multiplication of the columns of the matrix HT by the scaling factor amounts to attempting to efficiently cover the surroundings of the received point such that the best possible point is found for each bit to calculate the soft decision.
At Block 6C, and after the list L has been generated, a MIMO detection is performed for each point in the list. The detection process may use any suitable MIMO detector, but it is natural (and preferred) to use a lattice reduction-aided detector. The detector outputs a list C of constellation points that are then used to calculate the soft decisions. The soft decision calculation method may be the well known MaxLogMAP method, which retains the best candidate point for each possible bit value and then calculates the soft decision based on the retained candidate points.
It is possible that the list C does not contain a candidate for both possible bit values for each of the bits. In this case a constant value may be used as an approximation for the soft decision. The constant may be a preset value, or it may be based on the other soft decisions, or the distances of the points corresponding to points in the list C from the received point. Similarly, the soft decision outputs can be checked for values that are too large (e.g., checked against a preset constant, against a value derived from the channel matrix H or from the reduced basis matrix HT), in which case the magnitude of the too-large value is replaced by the limiting value against which it is compared (without changing sign).
It should be noted that the list L may be generated by other techniques, so long as the reduced lattice is used to find points that are close to the hard decisions point. For example, the order of operations may be changed such that a hard MIMO detection is first performed for the received point r, and then the columns of HT may be added to the to the hard decision point. Another possibility is to use the hard decision estimate of the transmitted vector x and add suitably multiplied columns of the matrix T to the vector x. Combinations of the methods are also possible to enlarge the size of the list.
A still further modification to the foregoing exemplary embodiments uses an iterative approach.
More specifically, the soft decision calculation also improves the hard decision BER of a pure hard decision lattice reduction detection, as can been seen from
On advantage of the use of the exemplary embodiments of this invention is that good quality soft decision are generated with a method that has only polynomial complexity, dependent on the number of antennas or the transmitted constellation. Note that the overall lattice reduction-aided MIMO detection includes the calculation of the reduced lattice basis, which is the most complex single operation of the detection. The performance is good with large numbers of antennas as shown in
Reference is made to
Consider a non-limiting example for a system with three transmit and three receive antennas. The transmitted data is represented as x such that
where the points xi belong to for example QPSK constellation.
The channel H is then a 3×3 matrix:
The noise forms a 3×1 vector:
The received signal r after the channel H effect and noise n is added is
The receiver calculates the change of basis matrix T and the reduced lattice basis HT. This can be done with the LLL-algorithm as noted above. The LLL-algorithm can be implemented to return the matrix T and a QR-decomposition of the reduced lattice basis matrix HT, ie. QR=HT, where Q is a unitary matrix and R is a right triangular matrix. The system is then modeled as:
r=HTT
−1
x+n=
i.e. as the channel was HT and T−1x was transmitted,
Next the list L is generated. The list L is formed, for example, by taking the received point r and adding to it each column of the matrix HT multiplied by some scaling constants, for example +1, −1, +i, −i.
Denote the columns of HT by hti, that is ht1 is the first column of HT and so on. The list L then contains 13 (=1+4*3) points:
L={r, r+ht1, r−ht1, r+i*ht1, r−i*ht1, r+ht2, r−ht2, r+i*ht2, r−i*ht2, r+ht3, r−ht3, r+i*ht3, r−i*ht3}
After the list L is generated, MIMO detection is performed for each point in the list L, with for example a Serial Interference Cancelling (SIC) MIMO detector, known in the art.
For SIC detection, each point in the list L is multiplied by QH, using the Q matrix of the QR decomposition of HT. For the original received value r the result is:
{tilde over (r)}=Q
H
r=Q
H
HTT
−1
x+Q
H
n=Q
H
QRT
−1
x+Q
H
n=RT
−1
x+
The SIC detection proceeds by operating on {tilde over (r)}
All the values of R are zero below the main diagonal, hence an estimate for the last coordinate of
The last row of the matrix equation is {tilde over (r)}3=r33
Next the estimate {circumflex over (x)}3 is quantized to a legal value in the lattice T−1x, i.e.
Now the remaining coordinates of
Then, the estimate of {circumflex over (x)}2 is quantized to a legal value in the lattice T−1x, i.e. {circumflex over (x)}2=Quantize{{circumflex over (x)}2}.
Now the receiver has estimates for the values of
Finally the estimate of {circumflex over (x)}1 is quantized to a legal value in the lattice T−1x, i.e. {circumflex over (x)}1=Quantize{{circumflex over (x)}1}.
Now we have an estimate {circumflex over (x)} for the full vector
The above example used the received point r as the input to the SIC detector, hence we now have a hard decision as the output of the SIC detector. The next step in the soft decision generation process is to repeat the above described SIC detector for all the remaining points in the list L. After this has been done we have a list C that contains the hard decision and a list of additional points used to calculate the soft decisions. C={c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11, c12, c13}, where c1 is the hard decision point and c2 to c13 are the points generated by the SIC detector from the rest of the points in the list L.
The final step of the detector is to calculate the soft decisions. In this example there were three antennas with a QPSK constellation, i.e. a total of six bits was transmitted, (6=3 (antennas)*2 (bits per antenna for QPSK)).
The first step in generating the MaxLogMAP soft decisions is to calculate the squared distances between the received point r and the points obtained by applying the channel effect to the points in the list C. This yields a list D={d1, d2, d3, d4, d5, d6, d7, d8, d9, d10, d11, d12, d13} of squared distances, where di=∥r−Hci∥2.
Now the MaxLogMAP soft decisions are calculated by finding, for each transmitted bit, the smallest distance for which the bit value is 0 and the distance for which the bit value is 1. For example, for the first bit the smallest distance with the first bit value 0 could be d3 and the smallest distance with first bit value 1 could be d7. Then the soft decision for the first bit is
The division by σ2 takes into account the effect of noise variance on the soft decision reliability. This example assumes that negative soft decisions imply that a zero bit was transmitted. The distance search is then repeated similarly for all the transmitted bits to generate the rest of the soft decisions.
Two possible conditions can arise from the limited size of the list L. First there might not be a distance in the list D for both the 0 and 1 bit values for some transmitted bit. In this case the soft decision can be approximated by the techniques described above. Second, the magnitude of some of the soft decisions might be quite large. This results from a case when either the 0 or the 1 bit value distance was calculated from a point that was quite far from the received point. In this case it is possible (or even likely) that there exists a point with that particular bit value that is closer to the received point than the point corresponding to the distance in the list D. In this case it is preferable to limit the soft decision magnitude to some value to prevent too large confidence being given to that bit, as noted above.
In general, the various embodiments of the Rx 2 can include, but are not limited to, cellular telephones, personal digital assistants (PDAs) having wireless communication capabilities, portable computers having wireless communication capabilities, image capture devices such as digital cameras having wireless communication capabilities, gaming devices having wireless communication capabilities, music storage and playback appliances having wireless communication capabilities, Internet appliances permitting wireless Internet access and browsing, as well as portable units or terminals that incorporate combinations of such functions.
Note that in some embodiments, where the Tx 1 is embodied in a mobile device, the Rx 2 may be embodied in a base station or Node B-type of fixed network element.
The exemplary embodiments of this invention may be implemented by computer software stored in a memory device of the Rx 2 and executable by a data processor of the Rx 2 (such as a high speed digital signal processor), or the exemplary embodiments may be implemented by hardware, or by a combination of software and hardware.
In general, the various exemplary embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. For example, some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although the invention is not limited thereto. While various aspects of the exemplary embodiments of this invention may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof.
For example, the logic flow diagram of
As such, it should be appreciated that at least some aspects of the exemplary embodiments of the inventions may be practiced in various components such as integrated circuit chips and modules. The design of integrated circuits is by and large a highly automated process. Complex and powerful software tools are available for converting a logic level design into a semiconductor circuit design ready to be fabricated on a semiconductor substrate. Such software tools can automatically route conductors and locate components on a semiconductor substrate using well established rules of design, as well as libraries of pre-stored design modules. Once the design for a semiconductor circuit has been completed, the resultant design, in a standardized electronic format (e.g., Opus, GDSII, or the like) may be transmitted to a semiconductor fabrication facility for fabrication as one or more integrated circuit devices.
Various modifications and adaptations may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the accompanying drawings and the appended claims. As but some examples, the use of other similar or equivalent algorithms (i.e., other than the LLL-algorithm) for calculating the change of basis matrix T and the reduced lattice basis HT may be attempted by those skilled in the art. However, all such and similar modifications of the teachings of this invention will still fall within the scope of this invention.
Furthermore, some of the features of the examples of this invention may be used to advantage without the corresponding use of other features. As such, the foregoing description should be considered as merely illustrative of the principles, teachings, examples and exemplary embodiments of this invention, and not in limitation thereof.