FIELD OF THE INVENTION
[0001] The invention relates to telecommunication systems, and more particularly to signal decoding by a receiver in multiple-input-multiple output (MIMO) systems.
BACKGROUND OF THE INVENTION
[0002] Multiple-input-multiple-output (MIMO) systems are telecommunication architecture where both the emitter and the receiver have several antennas, in order to improve communication performances. Different possibilities exist to make use of such architecture, including antenna diversity and spatial multiplexing.
[0003] Multiple-input-multiple-output (MIMO) systems using spatial multiplexing (SM) allows reaching higher performances (i.e. bitrate) than MIMO systems using diversity technique. However, the receiver's task of decoding the received signal is very complex.
[0004] In general, the receiver decodes the received signal by looking for a best estimate thanks to maximum likelihood (ML) detection methods. This task is very problematic for the receiver as the number of antennas increases due to the huge number of possible multiplexing combinations.
[0005] Some solutions known in the art which make use of ML criteria are based on QR decomposition technique. QR decomposition consists in transforming a matrix A into a product A=Q.R where Q is an orthogonal matrix and R is an upper triangular matrix.
[0006] Among the solutions based on ML decoding, one can mention sphere decoding and QRM-MLD.
[0008] Sphere decoding allows decreasing the complexity, but it still suffers of major drawbacks: for instance, the algorithm is very dependent on the initial value for the search radius: if the search radius is chosen too small, there may be no solution in the hypersphere, but if the search radius is chose too large, the number of points to explore may become too large and the algorithm will encounter the same issue as ML-based detection algorithms.
[0009] Furthermore, the algorithm cannot be parallelized on a hardware platform, preventing it to be efficiently used in a real-time high data rate context. Also, its complexity is very dependent on the signal-to-noise ratio (SNR) and on the channel modeling parameters used for implementing the algorithm.
[0010] Another set of solutions known in the art are based on the so-called "QRM-MLD" techniques, i.e. QR Decomposition with order M Maximum Likelihood Decoding". Such a method has for example been described in the article "
Joint Data Detection and Chanel Estimation of OFDM Systems" by Tao Cui and Chintha Tellambura, in IEEE Transactions on communications, vol. 54n no. 4, April 2006, or in the article "
Likelihood function for QRM-MLD suitable for soft-decision turbo decoding and its performance for OFCDM MIMO multiplexing in multipath fading channel", by H. Kawai, K. Higuichi, N. Maeda et al., in IEICE Transactions on Communications, E88-B(1), 47-57.
[0011] Compared with Sphere Decoding, QRM-MLD techniques which only keeps the best M candidates for the next level search has fixed throughput and is suitable for pipelined hardware implementation. In terms of results' accuracy, it achieves comparable performance with ML-based detection algorithms.
[0012] However, it involves a very high complexity, especially for higher modulation schemes like 256 QAM (Quadrature Amplitude Modulation). Also, like the Sphere Decoding solution, this algorithm cannot be implemented on highly parallel hardware architecture and is thus not suitable for real-time high data rate transmission.
SUMMARY OF THE INVENTION
[0013] The object of the present invention is to alleviate at least partly the above mentioned drawbacks.
[0014] More particularly, the invention aims to reduce the complexity of the decoding of the received signals, while keeping the same performances than maximum likelihood-based detection algorithms. In addition, the proposed solution aims to be deployed on highly parallel hardware architecture and thus to be applicable to real-time high data-rate decoding algorithms. It can therefore be used within OFDM receivers.
[0015] This object is achieved with a method for estimating a vector of emitted symbols over a MIMO transmission channel emitted by a first plurality of emitting antennas, as described in the appended claims 1-4. Another aspect of the invention concerns a computer program comprising program instructions and being loadable into a data processing unit and adapted to cause execution of the method according to any of the previous claims when the computer program is run by the data processing unit.
[0016] Another aspect of the invention concerns a receiver adapted for estimating a vector of emitted symbols over a MIMO transmission channel emitted by a first plurality of emitting antennas, as described in the appended claims 6-8. Further features and advantages of the invention will appear from the following description of embodiments of the invention, given as non-limiting examples, with reference to the accompanying drawings listed hereunder.
BRIEF DESCRIPTION OF THE DRAWINGS
[0017]
Fig. 1 shows a high-level architecture of a spatially-multiplexed MIMO system.
Fig. 2 shows an example for a constellation relating to a 16-QAM modulation scheme
Fig. 3 shows a comparison of the performance of the QRM-MLD method and of the method of an embodiment of the invention, called "LC-QR-MLD"
Fig. 4 shows a comparison of the performance of the QRM-MLD method and of the method of another embodiment of the invention
Fig. 5 shows a possible implementation for an OSIC-based receiver RCV, according to an embodiment of the invention.
Figs. 6a, 6b, 6c, 6d shows constellation diagram on which are depicted steps of determination of a subset of possible vector of emitted symbols according to an embodiment of the invention.
Fig. 7 shows a comparison of the performance of the QRM-MLD method and of the method according to an embodiment of the invention called "OSIC"
DETAILED DESCRIPTION OF THE INVENTION
[0018] FIG. 1 depicts a MIMO system using spatial multiplexing.
[0019] Such a system can be implemented for OFDM communication systems. Orthogonal Frequency-Division Multiplexing (OFDM), also referred to as "multicarrier modulation" (MCM) or "discrete multi-tone modulation" (DMTM), splits up and encodes high-speed incoming serial data, modulating it over a plurality of different carrier frequencies (called "subcarriers") within a communication channel to transmit the data from one user to another. The serial information is broken up into a plurality of sub-signals that are transmitted simultaneously over the subcarriers in parallel.
[0020] By spacing the subcarrier frequencies at intervals of the frequency of the symbols to transmit, the peak power of each modulated subcarrier lines up exactly with zero power components of the other modulated subcarriers, thereby providing orthogonality (independence and separability of the individual subcarriers. This allows a good spectral efficiency (close to optimal) and minima inter-channel interference (ICI), i.e. interferences between the subcarriers.
[0021] For this reason, OFDM is used in many applications. Many digital transmission systems have adopted OFDM as the modulation technique such as digital broadcasting terrestrial TV (DVB-T), digital audio broadcasting (DAB), terrestrial integrated services digital broadcasting ISDB-T), digital subscriber line (xDSL), WLAN systems, e.g. based on the IEEE 802.11 a/g standards, Cable TV systems, etc.
[0022] OFDM systems based on MIMO communication scheme are often referred to as "MIMO-OFDM" and are very used to increase the transmission bit-rate. The invention is however applicable to other implementations of the MIMO principles.
[0023] On the figure 1, only the elements related to the MIMO systems and useful for the understanding of the invention are depicted. This schema shows an emitter EMT and a receiver RCM communicating through a communication channel TC, through an array of N
_{T} emitting antennas and N
_{R} receiving antennas.
[0024] In MIMO systems, each emitting antennas can emit a symbol, respectively x
_{1}, x
_{2}, x
_{3}... x
_{NT} to potentially all the N
_{R} receiving antennas. The symbols are demultiplexed by the spatial stream generator SSG. The symbols x
_{1}, x
_{2}, x
_{3}... x
_{NT} are received as a serial stream by the spatial stream generator SSG, which then generates N
_{T} signals sent in parallel by the N
_{T} emitting antennas.
[0025] The received symbols respectively y
_{1}, y
_{2}, y
_{3}... y
_{NR} are therefore a combination of the symbols emitted by the emitting antennas.
[0026] Between an emitting antenna i and a receiving antenna j, the transmission channel TC can be modeled by a transfer function h
_{ij}. There are therefore N
_{R}×N
_{T} sub channels and transfer functions h
_{ij}.
[0027] The values of the emitted and received symbols, x
_{i}, y
_{j} respectively, and of the transfer functions h
_{ij} are complex values.
[0028] The emitted symbols may comply with different modulation schemes. An example of such a modulation scheme is the QAM scheme (Quadrature Amplitude Modulation).
[0029] The QAM scheme consists in transmitting a signal by two amplitude modulated carriers. The carriers are usually sinusoids and phased by 90° to each other, i.e. in quadrature.
[0030] Some common implementations of the QAM scheme transmit quantified values on both carriers. The different possible values are then often represented as a "constellation" as depicted in the figure 2. The constellation of this example relates to a 16-QAM scheme, i.e. wherein the modulated signal can take one among 16 possible values.
[0031] The signal is represented as a complex value; typically the horizontal axis represents the real axis and the vertical axis represents the imaginary axis. The 16 possible values form an alphabet of the signal and are depicted as dots together with the value in bits (coded on 4 bits).
[0032] Accordingly, each of the emitted symbols x
_{i} takes values among the 16 possible complex values of the alphabet of the constellation.
[0033] From the explanation given above, it is possible to express the received symbols by the equation:
wherein x and y represent respectively the vector of the emitted and received symbols, so that : x=[x
_{1}, x
_{2}, x
_{3}... x
_{NT}]
^{T} and y=[y
_{1}, y
_{2}, y
_{3}... y
_{NR}]
^{T}, H represents the transfer function matrix for the transmission channel TC and z represents the noise over this channel.
[0034] The noise z is usually a white Gaussian noise with a variance of σ
_{z}^{2}. This noise differs according to the subchannels. The noise z is then expressed as a vector of N
_{R} values: z= [z
_{1}, z
_{2}, z
_{3}... z
_{NR}]
^{T}.
[0035] The matrix H is formed with the transfer function h
_{ij} of each sub-channels. Accordingly, the matrix H is a N
_{R}xN
_{T} matrix.
[0036] We can also note h
_{i} the i
^{th} column vector of the matrix H. Therefore, the previous equation can also be written as:
[0037] The problem to be solved, then by the receiver is to detect the emitted symbols x, i.e. to determine the emitted symbols x, knowing the received symbols y and the transfer functions being estimated.
[0038] A typical technique for doing this is to use a Maximum Likelihood (ML) detection method based on a criterion to be minimized. This criterion can be associated to a metric. This metric is typically an Euclidian distance.
[0039] According to an embodiment of the invention, then, using a maximum likelihood-based method consists in calculating the Euclidian distance ∥
y -
H.x∥
^{2} of the criteria
y - H.x, i.e. the Euclidian distance between the received signal vector and the product of possible emitted vectors with the estimated transfer function H for the transmission channel.
[0040] In general, we note C
^{NT} the set of all these possible emitted symbols vectors (which depends on the number N
_{T} of emitting antennas). Each symbol of the vector belongs to the alphabet of the constellation, as depicted in the example of the figure 2.
[0041] Then, the problem to be solved is to calculate the Euclidian distance ∥
y -
H.x∥
^{2} and to determine an estimation
x̂_{ML} of the most probable emitted signal vector x, i.e. the one which minimizes this Euclidian distance. This can be written as:
[0042] It is known in the art that the maximum likelihood method achieves the optimal performance as the maximum a posteriori (MAP) detection, when all the emitted symbols vectors are equally likely.
[0043] However, its complexity increases exponentially according to the modulation order (i.e. the size of the constellation associated with the modulation scheme) and the number of emitting antennas.
[0044] For instance an exhaustive search over the set of possible solutions for a 64-QAM communication system having N
_{R} receiving antennas consists in considering 64
^{NR} possibilities. Even with only 2 receiving antennas, this implies already 4096 possibilities.
[0045] Consequently, this method cannot be used in real-life implementation, but it serves as a basis to which other methods are compared, since its represents the best possible performance.
[0046] According to the invention, only a subset of all possible vectors of emitted symbols is considered for calculating the metric and for selecting an estimate for the emitted vectors of symbols.
[0047] Accordingly, the complexity of the maximum likelihood-based methods is decreased and these methods are usable within the context of real-time systems, like, for instance OFDM transmission systems, for decoding high-order modulated signals (e.g. 16-QAM and above).
[0048] In order to reduce the number of considered possible vectors to a subset of all the possibilities, several methods can be used.
[0049] According to a first embodiment, the subset is determined by defining intervals for each symbols of the vector of emitted symbols. The number of possible emitted vector of symbols is then limited, symbols by symbols: the excursion of each symbol is limited within the interval, so that a subset of all possible vectors of emitted symbols is defined.
[0050] The intervals are provided by a sphere decoding process.
[0051] Accordingly, a QR decomposition of a real channel matrix associated with the transfer function matrix is performed.
[0052] First, the complex equation y = H.x + z is converted into a real system, by decomposing each complex term y,x and z as the sum of its real part and of its imaginary part multiplied by the imaginary number j. The equation can then be written as:
[0053] In this equation, we note x
_{iR}=Re(x
_{i}), i.e. the real part of the complex emitted symbol x
_{i}; and x
_{iI}=Im(x
_{i}), i.e. the imaginary part of the complex symbol x
_{i}. Similarly, we note note y
_{iR}=Re(y
_{i}), i.e. the real part of the complex received symbol y
_{i}; and y
_{iI}=Im(y
_{i}), i.e. the imaginary part of the complex symbol y
_{i}.
[0054] Similarly, we can also note h
_{ijR}=Re(h
_{ij}), and h
_{ijI}=Im(h
_{ij}), as well as z
_{iR}=Re(z
_{i}), and z
_{iI}=Im(z
_{i}).
[0055] Taking the example of a 2x2 MIMO transmission channel TC, this equation becomes as follows:
[0056] The real and imaginary parts for this equation can be respectively expressed as:
and
[0057] These two equations can be merged together to form a new one by putting real and imaginary parts in same vectors and matrices
y,
H,
x,
z :
[0058] Then, according to the sphere detection method, the problem to be solved consists in finding solutions of the following solution
[0059] Using QR decomposition, this equation can also be written :
wherein
reprensents the searched solution, i.e. the value of the vector
x associated with the vector x of emitted symbols to be estimated, and wherein :
[0060] According to the definition of
y,
H,
x,
z given earlier,
The same equation can be decomposed as:
[0062] The principle of the sphere decoding algorithm is to search the closest lattice point to the received vector within a hyper-sphere radius, where each possible vector is represented by a lattice point in a lattice field. It is usually based on the Finke-Pohst enumeration to explore all the lattice points inside the hypersphere centered at the received symbol vector.
[0063] This Sphere Decoding (SD) algorithm allows lowering the computational complexity compared with maximum likelihood decoding approaches.
[0064] However, the average complexity of the SD algorithm is shown to be polynomial in the number N
_{T} of transmit antennas over a certain range of Signal-to-Noise Ratio (SNR) and number of transmit antennas, while the worst case complexity is still exponential.
[0065] According to embodiments of the invention, the sphere decoding is not used for finding the estimate for the emitted vector of symbols, but for reducing the set of the possible emitted vectors of symbol wherein the estimate is searched by maximum-likelihood-based decoding methods.
[0066] In other words, both sphere decoding and maximum-likelihood-based decoding methods are used together, in such a way that the overall complexity is reduced, whereas each of the approaches, separately, presents complexity issues.
[0067] Accordingly a first step can be implemented to use the previous equation for determining a subset among all possible vectors of emitted symbols. This subset will then be used, within a second step, as the space within which an estimate is selected, according to maximum-likelihood-based methods, i.e. as the one which minimizes a given metric, e.g. a Euclidian distance, as it will be exposed below.
[0068] In this first step, the subset is defined by finding intervals for each of the symbols of the vector x: instead of being free to take any possible values of the constellation, each symbol will be limited to an interval, so that the size of the search space used during the second step is considerably reduced.
[0069] As the values of the symbols are complex values, the intervals should be understood as one interval for the real part and one interval for the imaginary part of each symbol.
[0070] The intervals for each symbols of the vector can be determined through an iterative process, wherein the determination of a first interval for a first symbol can allow the determination of a second interval for a second symbol, etc. At the end of the process, intervals for all the symbols are defined.
[0071] Referring again to the previous equation, first, candidate values are chosen for
within the hyper-sphere determined by the radius R
_{SD}, so that
In other words
is chosen in the following range:
wherein R
_{SD} represents the radius of the hypersphere. This radius can be given according to the equation:
[0072] As the purpose of the usage of the sphere decoding is different, some modification to the algorithm can be done, so as to reduce its complexity while still providing the efficiency required for the aim of this first step.
[0073] Accordingly, the error terms, i.e. the differences between evaluated symbols and the estimate, are approximated by a predetermined factor m.d, wherein m and d are two parameters: m representing the complexity and d the constellation distance between consecutive points.
[0074] d is simply the minimum vertical (imaginary) or horizontal (real) distance between two neighboring constellation points as depicted in the example of figure 2.
[0075] m may depend on several factors that determines the receiver performance such as: signal to noise ratio (SNR), channel estimation precision, time recovery precision, frequency synchronization precision, etc.
[0076] A high value for m increases the BNR vs. SNR performance, but increases also the LC-QR-MLD algorithm. For this reason a comprise should be found. In practice, the value for m is determined by simulations; many parametric simulations are done to find the minimum value of m necessary to attain the needed "BER vs. SNR" performance.
[0077] Replacing the error terms by such a predetermined factor allows dramatically reducing the complexity of the sphere decoding process, while keeping it efficient enough for determining good subsets of candidate vectors of emitted symbols. "Good" subset means here that the subset should be narrow enough to decrease the complexity of the second step, but also the subset should contain the optimal solution.
[0078] It has been proved that this embodiment results in a good efficiency, as it will be shown below.
[0079] The radius R
_{SD} of the hypersphere can then be given by the expression
[0080] From this radius R
_{SD}, a range can be determined for the expression
This range implicitly defines an interval for the corresponding symbol of the vector of emitted symbols x. In this example,
x_{4} corresponds to the imaginary part of the symbol x
_{2} for which, thus, an interval is defined.
[0081] Once this interval is defined, the next symbol is considered within the iterative process.
[0082] According to this example, candidate values are chosen for
within the hyper-sphere determined by the radius R
_{SD}, so that
[0083] Knowing the range within which the values of
can be, it is straightforward to determine such range for
This range should be defined so as to be the widest possible (i.e. by using the extreme values of the expression
).
[0084] This range implicitly defines an interval for the real part of the symbol x
_{2}.
[0085] Once this interval is defined, the next symbol is considered within the iterative process.
[0086] According to this example, candidate values are chosen for
within the hyper-sphere determined by the radius R
_{SD}, so that
[0087] Knowing the range within which the values of
and
can be, it is straightforward to determine such range for
This range should be defined so as to be the widest possible (i.e. by using the extreme values of the expressions
and
).
[0088] This range implicitly defines an interval for the imaginary part of the symbol x
_{1}.
[0089] Once this interval is defined, the next symbol is considered within the iterative process.
[0090] According to this example, candidate values are chosen for
within the hyper-sphere determined by the radius R
_{SD}, so that
[0091] Knowing the range within which the values of
and
can be, it is straightforward to determine such range for
This range should be defined so as to be the widest possible (i.e. by using the extreme values of the expressions
and
).
[0092] This range implicitly defines an interval for the real part of the symbol x
_{1}.
[0093] At the end of this last step, the symbols x
_{1}, x
_{2} of the emitted vector x have been limited to intervals, both for their real and imaginary parts. These intervals define subsets C1, C2 for, respectively, the symbols x
_{1} and x
_{2}, among all the possible emitted symbols.
[0094] The subset of the possible vectors, resulting of these two subsets C1, C2, is dramatically reduced compared with the full range of possibilities, leading to a decreased complexity of the estimation method.
[0095] In a second step of the detection method, this subset is used as the space within which an estimate is selected, according to maximum-likelihood-based methods, i.e. as the one which minimizes a given metric.
[0096] According to an embodiment of the invention, the metric is an Euclidian distance ∥
y -
H.x∥
^{2} associated with a criterion
y - H.x.
[0097] This criterion represents a maximum-likelihood-based criterion for which the minimal solution is sought.
[0098] In embodiments of the invention, this criterion can be decomposed by a QR decomposition. QR decomposition is a decomposition of a matrix into a product of an orthogonal matrix Q and an upper triangular matrix R. QR decomposition is often used to solve the linear least squares problem and is the basis for a particular eigenvalue algorithm, the QR algorithm.
[0099] The metric can then be rewritten as follows:
[0100] This QR decomposition is used in the QRM-MLD algorithms (QR decomposition with order M Maximum Likelihood Decoding), like those known in the art and fully described in the literature. In the prior art, the aim is to find the vector x than minimizes this equation, knowing that each symbols of this vector belongs to full set of the constellation's possibilities. In the case of high order QAM constellation (e.g. 64 QAM and above), huge processing is needed to find the best symbols.
[0101] According to the invention, the symbols belong to subsets of this full set, as previously defined.
[0102] Taking back the previous example of a 2x2 MIMO communication system (wherein N
_{T}=N
_{R}=2), the metric expression can be decomposed as:
[0103] According to embodiments of the invention, the aim becomes to find the vector x=(x
_{1},x
_{2})
^{T} minimizing this expression, with x
_{1}∈C1 and x
_{2}∈C2. This vector can be considered as the emitted symbol.
[0104] Except that the symbols are limited to given subset, this minimization problem can be solved according to the known-in-the art algorithms, like the QRM-MLD algorithm. Since these techniques are well documented and thus easily accessible to the man skilled in the art, they won't be described in details here.
[0105] It is considered sufficient to say that the QRM-MLD method is a sort of trial and error method, where M best candidates for a first symbol are determined, as the one which minimizes a first term, and then the other candidates for the other symbols are determined according to the previous determination, until a full vector is determined.
[0106] In the example of the 2x2 MIMO system,
- First, M candidate symbols x_{2} are determined, corresponding to the M smallest values of the term |ỹ_{2} - r_{22}x_{2}|^{2}, knowing that x_{2}∈C2;
- Then, M candidate symbols x_{1} are determined, corresponding to the M smallest values of the expression |ỹ_{2} - r_{22}x_{2}|^{2} + |ỹ_{1} - r_{11}x_{1} - r_{32}x_{2}|^{2}, knowing that x_{1}∈C1 and x_{2} belongs to the M previously determined candidates for x_{2}.
[0107] The symbols which are determined form the estimate for the vector of emitted symbols.
[0108] The figure 3 shows a comparison of the performance of the QRM-MLD method and of the method of the invention, called "LC-QR-MLD" for "Low Complexity QR decomposition based Maximum Likelihood Decoding". It shows BER (Bit Error Rate) versus SNR (Signal to Noise Ratio).
[0109] The QRM-MLD performances are depicted for two complexity values, M=4, M=16.
[0110] It shows clearly that the performance of the LC-QR-MLD method, even with a low complexity parameter (m=4) is similar to the high-complexity QRM-MLD method, supposed to be optimal. However, high-complexity QRM-MLD method is not easily usable in practice, and decreasing its complexity involves a clear loss in performance (see curve of QRM-MLD, with M=4).
[0111] Another embodiment of the invention consists in determining the subset by replacing some of the symbols of the vector of emitted symbols by an approximation.
[0112] For the clarity of the explanation, a 4x4 MIMO system is taken as example (N
_{T}=N
_{R}=4).
[0113] Accordingly, the metric can be written as:
[0114] In order to find the estimate {
x_{1},
x_{2},
x_{3},
x_{4}} for the vector x of emitted symbols, the following equation should be solved:
[0115] Once again, solving such an equation is a highly complex system, when all the symbols belong to the constellation associated with the modulation scheme and if this modulation scheme is 16 QAM or above.
[0116] For example, the symbols x
_{1} and x
_{2} are chosen for being replaced by approximations.
[0117] In this previous equation, the terms |
ỹ_{2} -
r_{22}x_{2} -
r_{23}x_{3} -
r_{24}x_{4}|
^{2} and |
ỹ_{1} -
r_{11}x_{1} -
r_{12}x_{2} -
r_{13}x_{3} -
r_{14}x_{4}|
^{2} are minimized to zero. Due to the orthogonality of the problem formulation, the conditional maximum likelihood decision on the symbols x
_{1} and x
_{2} can be made by a simple threshold test, i.e.:
[0118] The "round" operation is a simple slicing operation to the constellation elements. It allows reducing the complexity of the QRM equation by reducing the number of unknowns.
[0119] These two expressions can then be reintroduced into the previous equation, so that the final estimate is then given by
[0120] This expression contains only two unknowns x
_{3}, x
_{4}, instead of 4 in the regular QRM-MLD algorithm. The number of possibilities to be evaluated is then reduced from C
^{4} to C
^{2}. The decrease in complexity is therefore significant.
[0121] Despite this reduced complexity, the performance of the LC-QR-MLD method according to this embodiment of the invention is comparable to the optimal QRM-MLD as depicted on the figure 4.
[0122] In a similar way than figure 3, figure 4 shows in a BER versus SNR diagram, curves corresponding to this embodiment of the LC-QR-MLD method and to the legacy QRM-MLD with two difference complexities: M=4, M=16
[0123] It clearly shows also that decreasing the complexity of the QRM-MLD to the same level (M=m=4) than the LC-QR-MLD algorithm dramatically reduces its performance.
[0124] A third embodiment of the invention consists in avoiding the non-linear nature of the QRM-MLD approaches.
[0125] The performance of the linear detection methods known in the art is much lower than the non-linear ones, like the QRM-MLD. However, they have the advantage of being less complex and therefore to require simpler hardware implementations.
[0126] It is here proposed to improve the performance without increasing the complexity significantly by a so-called "Ordered Successive Interference Cancellation" (OSIC) method. Such an OSIC method leads to a simple maximum-likelihood verification, with thus similar performances than the non-linear maximum-likelihood methods, without their complexity.
[0127] The figure 5 shows a possible implementation for an OSIC-based receiver RCV. In this example, the emitter has N
_{T}=4 antennas, so that the receiver RCV shall determine estimates for 4 emitted symbols,
x̂_{1},
x̂_{2},
x̂_{3},
x̂_{4}
[0128] The receiver comprises a bank of linear receiving circuits RCV1, RCV2, RCV3, RCV4. Each receiving circuit RCV1, RCV2, RCV3, RCV4 is dedicated to the determination of an estimate symbol, respectively
x̂_{1},
x̂_{2},
x̂_{3},
x̂_{4} and adapted to determine a subset, respectively C
_{1}, C
_{2}, C
_{3}, C
_{4} for each symbol.
[0129] The symbols are estimated in cascade, so that an estimate made by receiving circuit is reintroduced in the next receiving circuit to subtract it from the received signal y. The remaining signal
ỹ_{1},
ỹ_{2},
ỹ_{3} with reduced interference can be used then by the subsequent receiving circuits, RCV2, RCV3, RCV4.
[0130] Each of the receiving circuits computes a part of the equation,
wherein x
_{(i)} represent the symbol to be detected in the i
^{th} order, which may be different from the emitted symbol at the i
^{th} antenna since x
_{(i)} depends on the order of detection.
[0131] A right detection means to have x̂
_{(i)} = x
_{(i)}
[0132] The receiving circuits RCV1, RCV2, RCV3, RCV4 comprises estimating means EM1, EM2, EM3, EM4 respectively, which computes the estimates
x̂_{(1)},x̂
_{(2)},x̂
_{(3)},x̂
_{(4)}. More precisely, the estimating means computes first some raw estimates
,
,
,
which are then sliced to provide the slices estimates
x̂_{(1)},
x̂_{(2)},
x̂_{(3)},
x̂_{(4)}. As it will be explained, these sliced estimates form a subset of all the possible emitted symbols. They are then provided to the ML verification module MLV as candidates within which the final estimate
x̂_{1},
x̂_{2},
x̂_{3},
x̂_{4} is selected. This estimate can be selected as previously explained by calculating a metric associated with a criterion. The metric can be an Euclidian distance ∥
y - H.x∥
^{2} associated with a criterion
y - H.x.
[0133] The raw estimates
,
,
,
can be determined according to any linear algorithms, e.g. techniques known in the art like the Zero Forcing (ZF) technique or the MMSE (Minimum Mean Square Error) decoding technique.
[0135] Other techniques are also possible as this embodiment of the invention is not dependent on any technique, provided this is a linear technique.
[0136] In the following explained example, it is supposed that a MMSE decoding technique is used. According to the MMSE decoding technique, a MMSE weight matrix (or Wiener filter):
[0137] Then, the rows of this matrix can be used separately by the receiving circuits: the first row is used by the receiving circuit RCV1, the second row by the receiving circuit RCV2, etc.
[0138] The sliced estimates at the output of an estimating mean EMi are reintroduced as input of the next receiving circuit RCVi+1, so as to compute the input y
_{i+1} that is provided to the estimating mean EMi+1:
[0139] At any estimation mean EMi, if
x̂_{(i)} =x
_{(i)}, then the interference is successfully cancelled in the course of estimating x
_{(i+1)}. However, if
x̂_{(i)} ≠
x_{(i)} then error propagation is incurred because the MMSE weight that has been designed under the condition of
x̂_{(i)} =x
_{(i)} is used to estimate x
_{(i+1)}.
[0140] To avoid this possibility that impairs the decoding processing, this embodiment of the invention can consider not only the sliced estimate
x̂_{(i)} but also the neighbors of the raw estimate (non-sliced)
.
[0141] The figures 6a, 6b, 6c, 6d show the constellation diagram associated with a QAM 256 modulation scheme, with the successive determination of subsets C1, C2, C3, C4 corresponding the successive receiving circuits RCV1, RCV2, RCV3, RCV4.
[0142] On FIG. 6a, the subset C1 is depicted as a square around the raw estimate
. This subset comprises several possible estimates
x̂_{(1)}. The subset C1 can be determined as the minimal set of constellation points surrounding the raw estimate. In the example, there are 4 possible estimates
x̂_{(1)1},
x̂_{(1)2},
x̂_{(1)3},
x̂_{(1)4}
[0143] These 4 direct neighbors are provided to the next receiving circuit RCV2. Each possible neighbor serves as basis for determining estimates
,
,
,
for the second symbol x
_{(2)}.
[0144] FIG. 6b shows these estimates on the constellation diagram. On the basis of these estimates, a subset C2 is determined as the constellation points which are direct neighbors of
,
,
,
. Consequently, in this example, 9 direct neighbors are determined within C2,
x̂_{(3)1},
x̂_{(3)2},
x̂_{(3)3},
x̂_{(3)4},
x̂_{(3)5},
x̂_{(3)6},
x̂_{(3)7},
x̂_{(3)8}x̂_{(3)9}.
[0145] These 9 direct neighbors are provided to the next receiving circuit RCV3. Each possible neighbor serves as basis for determining estimates
,
,
,
,
,
,
,
for the third symbol x
_{(3)}.
[0146] FIG. 6c shows these estimates on the constellation diagram. On the basis of these estimates, a subset C3 is determined as the constellation points which are direct neighbors of
,
,
,
,
,
,
,
,
. Consequently, in this example, 20 direct neighbors are determined within C3,
x̂_{(4)1},
x̂_{(4)2},
x̂_{(4)3},
x̂_{(4)4},
x̂_{(4)5},
x̂_{(4)6},
x̂_{(4)7},
x̂_{(4)8}....
x̂_{(4)20}.
[0147] These 20 direct neighbors are provided to the next receiving circuit RCV4. Each possible neighbor serves as basis for determining estimates
for the fourth symbol x
_{(4)}.
[0148] FIG. 6d shows these estimates on the constellation diagram. On the basis of these estimates, a subset C4 is determined as the constellation points which are direct neighbors of
.
[0149] Consequently, in this example, 25 direct neighbors are determined within C4.
[0150] Consequently, 4 constellations C1, C2, C3, C4 have been defined, which define a subset of all the possibilities of the vectors x of emitted symbols. Each constellation comprises a much more reduced alphabet than the original alphabet (here 256 for a QAM-256 modulation scheme).
[0151] Then, the ML verification module MLV takes this subset as input to select a final estimate
x̂_{ML} for the vector x.
[0152] This embodiment of the invention allows decreasing the complexity of the ML-based solutions, by taking benefit of a reducing of the possible vectors x to consider through linear estimation methods. However this solution has dramatically better performance than the linear methods.
[0153] The figure 7 shows a comparison of the performance of the QRM-MLD method and of the method of the invention, called "OSIC". It shows BER (Bit Error Rate) versus SNR (Signal to Noise Ratio).
[0154] The QRM-MLD performances are depicted for a high complexity value, M=16. The OSIC method is shown with (OSICML) the ML step implemented by the ML verification module MLV, and without this ML verification.
[0155] It shows clearly that the performance of the OSIC method is similar to the high-complexity QRM-MLD method, supposed to be optimal. Due to the linearity of the method (except the ML verification step), the complexity is far lower and the ML verification step is performed on a limited constellation so that the overall complexity is still far lower.
[0156] The invention has been described with reference to preferred embodiments. However, many variations are possible within the scope of the invention.