The present invention relates to the field of digital communications. It concerns how to decode efficiently digital data transmitted on a frequency-selective MIMO channel at the same time as optimizing the performance/complexity trade-off.
Any communications system managing the access of multiple users to the same channel by allocating specific spreading codes (CDMA) is limited in capacity by multi-user interference (MUI) between users. In the context of the present invention, transmission is envisaged on a channel liable to generate other kinds of interference such as spatial multi-antenna interference (MAI) caused by multiple send antennas and intersymbol interference (ISI) caused by the frequency selectivity of the channel. On reception, these various kinds of interference are cumulative and make recovering the useful information difficult.
Pioneering work carried out by S. Verdu in the 1980s clearly demonstrated the benefit of exploiting the structural properties of multi-user interference (MUI), multi-antenna interference (MAI) and intersymbol interference (ISI) to improve performance for a fixed load (the number of users per chip) or to improve the load for fixed performance.
Many types of linear detectors have been studied, capable of supporting a greater or lesser load, which load may be evaluated analytically under asymptotic conditions. Without recourse to iterative techniques, the performance of these detectors falls far short of the performance of a maximum likelihood (ML) detector (for a system with or without coding).
The class of non-linear LIC-ID detectors based on linear iterative cancellation of the interference thus offers an excellent trade-off between performance and complexity. LIC-ID detectors use the following functions: linear filtering, weighted regeneration of interference (regardless of its nature), subtraction of the regenerated interference from the received signal. They deliver decisions on the modulated data (or symbols) transmitted with a reliability that increases in monotonous fashion with each new attempt. LIC-ID detectors which are intended to eliminate ISI (at block level) asymptotically achieve the performance of an optimum ML detector with a computation complexity similar to that of a linear equalizer. LIC-ID detectors intended to combat MUI approximate the performance of the optimum ML detector with a computation complexity comparable to that of a simple linear detector.
A remarkable feature of LIC-ID detectors is that they can easily be combined with hard or weighted decisions delivered by the channel decoder, thus effecting separate and iterative detection and decoding of the data.
For CDMA systems that are overloaded (by hypothesis by MUI) transmitting on frequency-selective MIMO channels, the level of interference is such that using LIC-ID receivers proves essential. If an iterative strategy is selected, the complexity of the receivers can be reduced, and rendered reasonable, only by simplifying the iterative processing as much as possible. LIC-ID detectors are treated separately for ISI and for MUI in reference [1] (see below) and in the case of ISI+MUI in reference [2] (see below).
Their generalization to MUI+MAI+ISI still constitutes an open subject of research, in particular because of the complexity of the processing to be effected, implying computations on particularly large matrices.
An interesting approach consists in exploiting the ambiguity inherent to any internal linear coding (or spreading process), which may be seen interchangeably as multiple access to K users or K-dimensional linear modulation. The K-dimensional point of view suggests implementing on reception vectorial equalization of K-dimensional symbols. To interact with the channel decoder, it remains to determine the a posteriori probabilities on each bit of each equalized K-dimensional symbol.
A sphere decoding algorithm using lists has recently been proposed in reference [3] (see below) to solve this type of problem for the iterative decoding of interleaved coded modulations on ergotic MIMO channels that are not frequency-selective. This algorithm yields performance close to the performance that could be obtained by direct implementation of the MAP criterion, with a complexity that is broadly polynomial with respect to the number of antennas.
The present invention exploits the existence of this algorithm, adapting it to an entirely different context.
A first aspect of the invention proposes a receiving method according to any one of claims 1 to 22.
A second aspect of the invention proposes a transmission system according to claim 23.
A third aspect of the invention proposes a receiving method according to any one of claims 24 to 29.
An object of the present invention is to propose a receiver for “multicode” CDMA transmission (K>T) and/or overloaded CDMA transmission (K users, spreading factor N<K) on frequency-selective MIMO channels (T send antennas and R receive antennas), on the general assumption of there being no CSI (i.e. no information as to the state of the channel) at the sender and a perfect knowledge of the CSI at the receiver. The receiver is based on a combination of simple mechanisms and techniques to obtain the best possible quality of service at fixed spectral efficiency and signal-to-noise ratio (SNR) or the best possible usable bit rate at fixed quality of service, band and SNR.
To this end, the invention proposes an iterative decoding and equalization device including a data detector receiving data from the various send antennas comprising:
Other features and advantages of the invention will emerge from the following description, which is purely illustrative and non-limiting and should be read with reference to the appended drawings in which:
a and 8b show two equivalent methods of implementing LIC-ID receivers, the
1. General Structure of the Sender
Reception is intimately linked to the sending mode, which can be defined by a modulation/coding scheme of high spectral efficiency, and high adaptability capacity, based on the use of spread spectrum modulation and on the use of multiple send and receive antennas. The proposed solution is pertinent assuming no knowledge of the send channel (no CSI) and a perfect knowledge of the receive channel (CSI). The communications model is briefly described below in order to introduce a third embodiment of the present invention.
Referring to
v=Gom
The external coding yield is:
The length No of the code words is linked to the various parameters of the system by the equation:
No=K×L×q
in which K designates the total number of potential users, L the length of the packets (in symbol times) and q the number of bits per modulation symbol. The code may be of any type, for example a convolutional code, a turbocode, an LDPC code, etc. In a multiple access type configuration, the message m consists in a plurality of multiplexed messages from different sources. Coding is effected independently on each component message. The code word v results from the concatenation 103 of the various code words produced.
The code word v is sent to an interleaver 104 operating at the bit level and, where appropriate, having a particular structure. In a multiple access type configuration, the interleaving acts piece by piece on the various code words placed one after the other. The output of this interleaver is broken up into K×L sets of q bits called integers.
The stream of integers is demultiplexed 105 onto K separate channels, where K may be chosen arbitrarily to be strictly greater than the number T of send antennas. The output from this operation is a K×L integer matrix D. The L columns d[n] n=0, . . . , L−1 of this matrix D have the following structure:
d[n]=[d1[n]T d2[n]T . . . dK[n]T]T∈F2qK
in which the component integers dk[n] k=1, . . . , K are themselves structured as follows:
dk[n]=[dk,1[n] dk,2[n] . . . dk,q[]]T∈F2q
The integers dk[n] of the matrix D are then individually modulated 107 via a modulation table μ:F2q→
to yield modulated data, or more precisely complex symbols sk[n] of a constellation
⊂□ with Q=2q elements. This transforms the integer matrix D into a K×L complex matrix S the L columns s[n] n=0, . . . , L−1 whereof are structured as follows:
s[n]□μ(d[n])=[s1[n] s2[n] . . . sk[n]]T∈K
It is useful to specify the following inverse relationships:
μ−1(s[n])□d[n] μ−1(sk[n])□dk[n] μ−1(sk[n])□dk,j[n]
1.1 Space-Time (or Space-Frequency) Internal Linear Coding (or Spreading) under Overload Conditions
Referring to
N=T×SF SF∈□
This generator matrix is also called a spreading matrix. For example, this matrix may be considered to be constructed from N orthogonal spreading codes with spreading factor N. This internal linear coding therefore corresponds, in this case, to space-time (space-frequency) spreading with spreading factor N. The internal coding yield (or load) of the system is the ratio:
Two options are always available with respect to the definition of the generator matrix G: periodic spreading 108 in which G is re-used in each symbol time (not shown), or aperiodic spreading 108 in which G depends explicitly on the symbol time (see
The hypothesis of periodic or aperiodic spreading can change the characteristics of the linear front-ends on reception.
Here aperiodic spreading is assumed (this is the most general case).
Referring to
z[n]□Gns[n]=[z1[n] z2[n] . . . zN[n]]T∈□N
The chip vectors z[n] are directly multiplexed at 109 onto the T send antennas (there is no posterior chip interleaving here). The effect of this operation is to transform the N×L chip matrix Z:
Z=[z[0] z[1] . . . z[L−1]]∈N×L
into a T×LSF chip matrix X:
X=[x[0] x[1] . . . x[LSF−1]]∈□T×LS
in which the columns x[l] l=0, . . . , LSF−1 constitute the inputs of the MIMO channel:
x[l] =[x1[l] x2[l] . . . xT[l]]T∈□T
The vector z[n] of the N chips sent at the symbolic time n can always be organized in the form of a chip vector x[n] resulting from the juxtaposition of the chip vectors sent over the T antennas between the chip times l=nSF and l=nSF+SF−1:
x[n]□[x[nSF+SF−1]T . . . x[nSF+1]T x[nSF+0]T]T∈□TS
Accordingly, as a general rule, the vectors x[n] z[n] and s[n] sent at the symbolic time n=0, . . . , L−1 are linked by the matrix equations:
x[n]□Πz[n]=ΠGns[n]=Wns[n]
in which Π designates an N×N permutation matrix.
1.2 Special Case: Independent Spreading per Send Antenna (Code Re-Use Principle)
By hypothesis, N is here a multiple of T:
N=T×SF SF∈□
There are SF orthogonal codes of length SF. These SF codes are re-used at each send antenna (this is the code re-use principle). The spreading, effected independently for each antenna, is purely in the time domain (or the frequency domain). This imposes that K be also a multiple of T:
K=T×U U∈□
This condition yields a new expression for the internal coding yield (load):
The generator matrix Gn has a block diagonal structure:
the block Gn(t) of the generator matrix being associated with the antenna t with dimension SF×U.
Referring to
d[n]=[d(1)[n]T d(2)[n]T . . . d(T)[n]T]T∈F2qK
in which the symbol vectors d(t)[n] t=1, . . . , T are themselves defined as follows:
d(t)[n]=[d1(t)[n]T d2(t)[n]T . . . dU(t)[n]T]T∈F2qU
Referring to
s[n]=[s(1)[n]T s(2)[n]T . . . s(T)[n]T]T∈□K
in which the symbol vectors s(t)[n] t=1, . . . , T are themselves defined as follows:
s(t)[n]=[s1(t)[n] s2(t)[n] . . . sU(t)[n]]T∈□U
The multiplication 108 of the K-dimensional symbol vector s[n] by the generator matrix Gn produces a vector of N chips, which also has a particular structure:
z[n]□Gns[n]=[z(1)[n]T z(2)[n]T . . . z(T)[n]T]T∈□N
in which the chip vectors z(t)[n] t=1, . . . , T are themselves defined as follows:
z(t)[n]□Gn(t)s(t)[n]=[z1(t)[n] z2(t)[n] . . . zS
Each chip vector z(t)[n] is then multiplexed onto the send antenna t.
The vector z[n] of the N chips sent at the symbolic time can always be organized in the form of a chip vector x[n] resulting from the juxtaposition of the chip vectors sent over the T antennas between the chip times l=nSF and l=nSF+SF−1:
x[n]□[x[nSF+SF−1]T . . . x[nSF+1]T x[nSF+0]T]T∈□TS
Accordingly, as a general rule, the vectors x[n] z[n] and s[n] sent at the symbolic time n=0, . . . , L−1 are linked by the matrix equations:
x[n]□Πz[n]=ΠGns[n]=Wns[n]
in which Π designates an N×N permutation matrix.
It will be noted that in this sending variant, the recovery of the spatial diversity is effected via the code G0 (at 102) and the external bit interleaving (at 104). The overload capacity, which is known to increase with the length of the spreading codes, is lower.
The sending method fits naturally into the general class of space-time codes. The spectral efficiency of the system (in bits per use of the channel), assuming a limited band ideal Nyquist filter, is equal to:
η=T×ρO×q×α
In practice, the send shaping filter has a non-null overflow factor (roll-off) ε. At the receiver, a filter matched to this send filter is used for all the receive antennas. It is assumed that the channel estimation and timing and carrier synchronization functions are implemented so that the coefficients of the impulse response of the channel are regularly spaced by an amount equal to the chip time (channel equivalent in the discrete baseband to the discrete time). This hypothesis is legitimate, the Shannon sampling theorem imposing sampling at the rate (1+ε)/Tc which may be approximated by 1/Tc when ε is small. Direct generalization is possible for expressions given below for a sampling rate equal to a multiple of 1/Tc.
2. Channel Model
Transmission is effected on a frequency-selective B-block channel with multiple inputs and outputs (MIMO):
H□{H(1), H(2), . . . , H(B)}
The channel H(b) is assumed constant over Lx chips with the convention:
L×SF=B>×LX B∈=□
The chip matrix X may be segmented into B separate T×LX chip matrices X(1), . . . , X(B) (padded on the right and left with physical zeros or guard times if necessary), each matrix X(b) seeing the channel H(b). For what follows, it is useful to introduce a length of the blocks in symbols, defined as:
such that:
L=B×LS
The extreme cases of the B-block model are as follows:
B=1 and LX=LSF→LS=L quasi-static model
B=LSF and LX=1→LS=1 ergodic (chip) model
A renumbering of the symbols and the chips is applied within each block.
2.1 Convolutional Channel Model
For any block index b, the discrete time baseband equivalent channel model (chip timing) is used to write the receive vector y(b)[l]∈□R at the chip time 1 in the form:
where P is the constraint length of the channel (in chips), x(b)[l]∈T is the complex vector of T chips sent at the chip time 1, where Hp(b)∈R×T is the matrix coefficient indexed p of the impulse response of the block MIMO channel indexed b and v(b)[l]∈R is the complex additive noise vector. The complex additive noise vectors v(b)[l] are assumed to be independent and identically distributed in accordance with an R-dimensional Gaussian law of circular symmetry with zero mean and covariance matrix σ2I. The P coefficients of the impulse response are R×T complex matrices, the inputs of which are identically distributed independent Gaussian inputs, with zero mean and with a covariance matrix satisfying the global power normalization constraint:
in the case of a system with power equally distributed between the send antennas. Given these hypotheses, the eigen values of the correlation matrices of the coefficients of the MIMO channel conform to a Wishart distribution. It is emphasized that equal distribution of the power to the send antennas is a legitimate power allocation policy in the case of an absence of knowledge of the sending channel (no CSI).
2.2 Block Matrix Channel Model
To introduce the data decoding algorithm, one must show a matrix system on the set of the type:
y(b)=H(b)x(b)+v(b)
where:
y(b)□[y(b)[LS−1+M]T y(b)[LS−2+M]T . . . y(b)[0]T]T∈□(L
v(b)□[v(b)[LS−1+M]T v(b)[LS−2+M]T . . . v(b)[0]T]T∈□(L
where M is the memory of the channel in symbol times defined as:
and where H(b) is the Sylvester matrix for the channel:
Wn (n=0, . . . , L−1) having been introduced above from the spreading matrix Gn during the description of preferred sending forms (end of sections 1.1 and 1.2).
Whence, finally, the system:
y(b)=H(b)Ws(b)+v(b)=Θ(b)s(b)+v(b)
where Θ(b) represents the matrix of convolution of the channel with the spreading codes:
Θ(b)□H(b)W□(L
2.3 Sliding Window Matrix Channel Model
In practice, to reduce the dimensions, a sliding window model is used of length:
LW=L1+L2+1□LS
The following new system is obtained:
y(b)[n]=H(b)x(b)[n]+v(b)[n]
where:
y(b)[n]=[y(b)[n+L1]T . . . y(b)[n−L2]T]T∈□L
x(b)[n]=[x(b)[n+L1]T . . . x(b)[n−L2−M]T]T∈□(L
v(b)[n]=[v(b)[n+L1]T . . . v(b)[n−L2]T]T∈□L
and where H(b) is the Sylvester matrix for the channel:
Moreover:
Whence, finally, the system:
y(b)[n]=H(b)Wns(b)[n]+v(b)[n]=Θn(b)s(b)[n]+v(b)[n]
where Θn(b) represents the matrix of convolution of the channel with the spreading codes:
Θn(b)□H(b)Wn∈L
3. Multipath MIMO Channel Single-Carrier Transmission (HSDPA)
It is assumed here that the bit rate is very high and that the coherence time of the channel is long, so that LX□SF→LS□1. For the HSDPA mode of the UMTS standard, the channel is quasi-static, i.e. B=1.
4. Multipath MIMO Channel Multicarrier Transmission (MC-CDMA)
The spreading (or the internal linear code) is space-frequency spreading or frequency spreading. With reference to
5. General Structure of the Receiver 200
The receiver 200 uses LIC-ID detection. Two types of linear front end are derived by way of example: non-conditional MMSE and SUMF. In the remainder of the description the definition of the index b of the block concerned of the channel model is omitted, the processing being exactly the same for all of them.
5.1 Sent K-Dimensional Symbol MMSE estimation
On any iteration i, there is assumed an a priori knowledge of the data expressed via logarithmic ratios on the bits of the sent symbols:
By convention, these ratios have the value 0 on the first iteration.
Referring to
With deep space-time interleaving, the a priori probability for a symbol may be approximated by the product of the marginal probabilities of the bits that constitute it:
equality being obtained for an infinite interleaving depth.
To introduce the logarithmic ratio πk,ji[n] of the bit a priori probabilities previously defined, we may write:
and finally find:
5.2 Unconditional MMSE Vectorial Equalization
The invention suggests replacing the optimum detection of the K-dimensional symbols sk[n] in the sense of the MAP criterion by an estimate in the sense of the (biased) MMSE criterion derived on the basis of the sliding window model, the complexity whereof is polynomial in terms of the parameters of the system, and no longer exponential.
On each iteration i, there is calculated at 202 the filter Fni∈□K×L
E[∥ŝ[n]−s[n]∥2]=tr E[(ŝ[n]−s[n])(ŝ[n]−s[n])†]
On the basis of the vector of the estimates of the K-dimensional symbols on the iteration i:
there is defined at 210 the modified version, including a 0 at position L1+1, which serves for the regeneration of the interface for the K-dimensional symbol s[n]:
An interference estimate is therefore regenerated at 210, by multiplying this vector by said “matrix of convolution of the channel with the spreading codes” Θn (computed in section 2.2 or 2.3):
Θn
The Wiener filter is applied at 202 to the observation vector obtained after subtraction at 201 of the interference regenerated at 210:
{tilde over (y)}i[n]=y[n]−Θn
For obvious reasons of complexity, an unconditional MSE and periodic spreading are used such that:
ΘnΘ ∀n=0, . . . , LS−1
This makes the filter Fi invariant in time for the block considered of the particular channel.
It is preferable not to use this MMSE estimate, in favor of a simpler linear front end (polynomial or SUMF, as described in the next section) if the spreading is aperiodic.
This filter minimizes the unconditional MSE on the (biased) estimate of the K-dimensional symbol sk[n] and may easily be derived from the theory of orthogonal projection:
Fi=EΔΘ†[ΘΞΔiΘ†+σ2I]−1
where EΔ is the matrix with dimensions K×(LW+M)K structured as follows:
and where:
ΞΔi□E{(s[n]−
ΞΔi=diag{(σs2−σ
with the term σs2I situated at the position L1+1 on the diagonal and σ
The evaluated ŝi is given by the output of the filter 202:
ŝi[n]□F1{tilde over (y)}i[n]=Ψ0is[n]+ζi[n]
where:
Ψ0i=FiΘEΔ†
and where ζi[n] is the residual interference and covariance matrix noise vector:
Ξζi=σs2(1−Ψ0i)Ψ0i†
The K-dimensional residual interference and noise vector ζi[n] may be whitened by Cholesky decomposition.
5.3 SUMF Vectorial Equalization
The MMSE approach previously described may prove too complex (for aperiodic spreading for example). There may be preferred over it the Single User Matched Filter vectorial filter, for all iterations starting from a certain iteration i. This is expressed for any time n as follows:
Fni=EΔΘn†
Other Possible Equalization Variant:
b represents a variant of either of the detection types described in sections 5.2 and 5.3. This variant relates to a different way of implementing the filter 202′ and the interference regenerator 210′ compared to the filter 202 and the interference regenerator 210 of
Referring to
The filter F′ used and the interference reconstruction matrix B′ used may be deduced trivially from the filter F and the interference reconstruction matrix B previously computed (see above description with reference to
Ŝ=F(Y−B
From which we deduce:
F′=F; B′=FB
5.4 Detection of the Binary Components of the K-Dimensional Symbols
By applying the filter L−1Fi, the following equivalent model is produced:
ŝi[n]=L−1Ψ0is[n]+ζi[n]
in which the vector ζi[n] is of identity covariance matrix.
Vectorial detection is used to calculate at 203 logarithmic ratios of the a posteriori probabilities on each bit of each K-dimensional symbol sent at each time. These probabilistic quantities are defined as follows, in accordance with a maximum a posteriori (MAP) criterion:
and are referenced λ in
in which we introduce:
with
obtained from the πk,ji[n] (see section 5.1).
As for the likelihoods, they are expressed as follows:
p(ŝi[n]|s[n]=μ(d))∝exp(−(ŝi[n]−L−1Ψ0iμ(d))†.(ŝi[n]−L−1Ψ0iμ(d)))
Variant 1:
Here the vectorial processing 203 in accordance with a MAP criterion is replaced by vectorial processing 203 using a sphere decoding algorithm with lists, the complexity of which is lower since polynomial in K (and not exponential in K, as is the MAP criterion).
Variant 2:
Here, the vectorial processing 203 is iterative linear cancellation derived from an MMSE criterion or from a criterion of maximizing a signal-to-noise ratio (MAX SNR) performed by matched filters (SUMF).
Variant 3:
The vectorial processing 203 here comprises the successive implementation of a plurality of different vectorial processing operations from given iteration(s), each of these vectorial processing operations being one of those discussed above in this section. For example, “MAP” processing is executed up to the iteration i, then “sphere with lists” processing up to the iteration i+M, then “MMSE” processing.
This 3rd variant is rendered possible thanks to an additional degree of freedom that is available for effecting a vectorial detection at a given iteration i.
5.5 Exchange of Probabilistic Information with the Channel Decoder 206
On each iteration i, a priori information on the bits of the various symbols coming from the channel decoder 206 is available and usable in the form of logarithmic APP ratios introduced beforehand and the expression for which is:
The extrinsic information on each bit delivered by vectorial detection weighted output demodulators 203 intended for the channel decoder 206 is delivered by a weighted output demodulator 203 in the following form:
ξk,ji[n]□λk,ji[n]−πk,ji[n]
It is denoted Ξ in
All the bit extrinsic information logarithmic ratios for all the blocks are then collected and properly multiplexed and de-interleaved at 205, to be sent to the channel decoder 206. The decoder sees a unique vector φi∈□N
This logarithm λ is then the basis on which are computed at 207a and 207b the bit extrinsic information logarithmic ratios after decoding, formally defined ∀l=1, . . . , No as follows:
The code word extrinsic information logarithmic ratios {ξli} calculated in the iteration i are similar, after bit interleaving and demultiplexing 208a and 208b, to the symbol bit APP logarithmic ratios {πk,ji+1[n]} on the next iteration.
Reception in accordance with the invention refers not only to a method for implementing it but also to the system for executing it and any transmission system incorporating that reception system.
Number | Date | Country | Kind |
---|---|---|---|
04291038.0 | Apr 2004 | EP | regional |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/EP05/04409 | 4/21/2005 | WO | 10/23/2006 |