The exemplary and non-limiting embodiments of this invention relate generally to wireless communications systems, methods, devices and computer programs and, more specifically, relate to multiple input, multiple output (MIMO) wireless communications systems.
The following abbreviations that may appear in the description are defined as follows:
The use of an efficient detection method is important in order to accommodate multiple antenna transmissions and/or high order constellations. In such cases, detection by the use of an exhaustive search is prohibitive due to the large number of valid signal combinations across multiple transmit antennas (Cartesian product of individual antenna constellations). A reduced search method, that can nonetheless perform very close to optimal (maximum likelihood or ML) detection, will be required for future generations of wireless systems (cellular and non-cellular). In addition, it would be desirable to have available soft information from the detector in order to improve the performance of a decoder, or to enable iterations between detection and decoding. Further, modularization is desirable, as is any simplification over traditional algorithms, such as sphere decoders.
Most good signal constellations exhibit a lattice structure, which can be used to greatly simplify the search. Sphere detectors (as well as decoders) have been developed primarily in response to the need to alleviate the complexity of ML estimation for a large number of hypotheses. Since the underlying problem is a search, any complexity reduction would need to implement a reduced search procedure. Traditionally, the result of a reduced search algorithm is a hard decision. Upon recognizing the importance of soft information at the detector's output, some researchers began to explore sphere detecting algorithms that are capable of providing a soft information output.
A hard decision sphere detector algorithm was based on an algorithm devised by Pohst (M. Pohst, “On the computation of lattice vectors of minimal length, successive minima, and reduced basis with applications”, ACM SIGSAM Bull., vol. 15, pp. 37-44, 1981, and U. Fincke and M. Pohst, “Improved methods for calculating vectors of short length in a lattice, including a complexity analysis”, Math. Comput., vol. 44, pp. 463-471, April 1985), and were described by Viterbo and Boutros (E. Viterbo and J. Boutros, “A universal lattice decoder for fading channels”, IEEE Trans. Inform. Theory, vol. 45, No. 5, pp. 1639-1642, July 1999). An improved algorithm for closest point search in a lattice was proposed by Schnorr and Euchnerr (C. P. Schnorr and M. Euchnerr, “Lattice basis reduction: improved practical algorithms and solving subset sum problems,” Math. Programming, vol. 66, pp. 181-191, April 1994), which starts at the center of the valid range of lattice points, and has better efficiency. Agrell et al. (E. Agrell, T. Eriksson, A. Vardy, and K. Zeger, “Closest point search in lattices”, IEEE Trans. Inform. Theory, vol. 48, No. 2, pp. 2201-2214, August 2002) devised another algorithm that shows a slight gain at a low signal to noise ratio (SNR).
Seeking to obtain a soft information output, Boutros et al. proposed an approach to soft output sphere detecting (J. Boutros, N. Gresset, L. Brunel, and M. Fossorier, “Soft-input soft-output lattice sphere decoder for linear channels”, Proc. IEEE Conf. Globecom '03, pp. 1583-1587, 2003) without resorting to basis conversions (boundaries of search regions are difficult to determine); instead they take advantage of the finite structure of the constellation (finite modulation alphabet).
Other soft information approaches allow for complex non-lattice modulation alphabets, or replace the sphere with a different body, or implement a list (see, for example, S. Baro, J. Hagenauer, and M. Witzke, “Iterative detection of MIMO transmission using a list-sequential (LISS) detector”, IEEE International Conf. Commun., ICC '03, vol. 4, pp. 2653-2657, Anchorage, May 2003; Y. de Jong and T. Willink, “Iterative tree search detection for MIMO wireless systems”, IEEE 56th Vehicular Technology Conf. VTC '02 Proceedings, vol. 2, pp. 1041-1045, September 2002; and B. M. Hochwald and S. ten Brink, “Achieving near-capacity on a multiple-antenna channel”, IEEE Trans. Commun., vol. 51, pp. 389-399, March 2003.)
Regarding the soft-input soft-output lattice sphere detector from J. Boutros et al., it can be noted that it requires three reduced search passes: first a (Schnorr-Euchnerr) reduced sphere detector search is needed to obtain the initial hard decision ML point, a second search pass then enumerates all lattice points in a sphere centered on the newly found ML point, and a third search pass then evaluates the squared distances needed for generating the soft information. This triple-pass strategy to computing a soft-information detector output increases the detector's complexity, especially since in the final pass the Euclidean distances are computed with respect to both the ML point (from the hard decision pass) and the received point.
Current trends in modern and proposed wireless communication systems, such as one known as Evolved Universal Terrestrial Radio Access Network (E-UTRAN), aim at achieving high data rates at relatively low costs, and mandate multi-carrier designs, high spectral efficiencies and MIMO technology.
The foregoing and other problems are overcome, and other advantages are realized, through the use of the exemplary embodiments of this invention.
In a first aspect thereof the exemplary embodiments of this invention provide a method that includes receiving a plurality of signals through a plurality of antennas, the plurality of signals being modulated with a space-time lattice code; removing an effect of a channel matrix from the received signals to provide an equalized received signal; and lattice detecting the equalized received signal based on a Tanner graph representation of the lattice.
In another aspect thereof the exemplary embodiments of this invention provide a computer program product that is embodied in a computer readable medium and that includes instructions, the execution of which result in performing operations that comprise: in response to receiving a plurality of signals through a plurality of antennas, the plurality of signals being modulated with a space-time lattice code, removing an effect of a channel matrix from the received signals to provide an equalized received signal; and lattice detecting the equalized received signal based on a Tanner graph representation of the lattice.
In a still further aspect thereof the exemplary embodiments of this invention provide an apparatus that includes an equalizer configured to respond to a plurality of signals received through a plurality of receive antennas to remove an effect of a channel matrix from the received signals to provide an equalized received signal, the plurality of signals being transmitted from a plurality of transmit antennas modulated with a space-time lattice code. The apparatus further includes a detector configured to operate on the equalized received signal in accordance with a Tanner graph representation of the lattice to perform lattice detection and to output soft information concerning real coordinates of complex symbols from modulation constellations used at the plurality of transmit antennas.
In another aspect thereof the exemplary embodiments of this invention provide an integrated circuit that includes an equalizer circuit configured to respond to a plurality of signals received through a plurality of receive antennas to remove an effect of a channel matrix from the received signals to provide an equalized received signal, the plurality of signals being transmitted from a plurality of transmit antennas modulated with a space-time lattice code; and a detector circuit configured to operate on the equalized received signal in accordance with a Tanner graph representation of the lattice to perform lattice detection and to output soft information concerning real coordinates of complex symbols from modulation constellations used at the plurality of transmit antennas.
In a further aspect thereof the exemplary embodiments of this invention provide an apparatus that includes means for equalizing a plurality of signals received through a plurality of receive antennas to remove an effect of a channel matrix from the received signals to provide an equalized received signal, the plurality of signals being transmitted from a plurality of transmit antennas modulated with a space-time lattice code; and means for operating on the equalized received signal in accordance with a Tanner graph representation of the lattice to perform lattice detection and to output soft information concerning real coordinates of complex symbols from modulation constellations used at the plurality of transmit antennas.
In the attached Drawing Figures:
The exemplary embodiments of this invention relate in general directly or indirectly to transmit antenna diversity, MIMO systems, lattice constellations, lattice detection and decoding, soft information, sphere decoding, iterative receivers, belief propagation, Tanner graphs, multipath channels, closed loop schemes, channel estimation, orthogonal frequency division multiplexing (OFDM), space-time coding, spatial precoding, spatial redundancy, beamforming, transmission parameter adaptation and multi-carrier systems, as non-limiting examples.
In accordance with the exemplary embodiments of this invention there is provided an efficient detection method that accommodates multiple antenna transmissions with high order signal constellations.
Further in accordance with the exemplary embodiments of this invention there is provided a reduced search method that is capable of performing in a manner that closely approaches optimal (ML) detection, and that is suitable for use in implementing future generations of wireless systems (both cellular and non-cellular).
Further in accordance with the exemplary embodiments of this invention there is provided an ability to output soft information from the detector in order to improve decoder performance and/or to enable iterations between detection and decoding.
Further in accordance with the exemplary embodiments of this invention there is provided a modularization capability. Related to the foregoing, exemplary embodiments of this invention employ belief propagation, and this functionality may be exploited in receiver implementations that include some form of, by example, a Low Density Parity Check (LDPC) decoder, wherein the architecture may be designed so that the belief propagation module is reusable.
Still further in accordance with the exemplary embodiments of this invention there is provided a technique to avoid a step back artifact that is a result of operation of conventional sphere decoders.
The transmit control function 12B may include at least one data processor (DP) 12C that is operable to execute program code in order to operate as a MIMO transmitter. The receive control function 14B may include at least one data processor (DP) 14C that is operable to execute program code in order to operate as a MIMO receiver, in particular one that operates in accordance with the exemplary embodiments of this invention. Further in this regard the receiver 14 implements a novel iterative receiver, as shown in block diagram form as having, for example, an Inner Decoder (IC-MMSE) 15A, an Outer Decoder 15B and a Soft Estimator 15C, as is also shown in
In general, the exemplary embodiments of this invention may be implemented by computer software executable by at least the DP 14C, or by hardware, or by a combination of software and hardware, and also firmware.
Embodiments of the receiver 14 may be realized in, but are not limited to, cellular phones, 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 at least one or more of the Inner Decoder (IC-MMSE) 15A, the Outer Decoder 15B and the Soft Estimator 15C may be embodied in one or more integrated circuits.
The exemplary embodiments of this invention beneficially employ an efficient, low-complexity, soft-information detector for MIMO channels and lattice constellations, and are based on, as one example, Tanner graph representations of lattices. Due to the coding gain associated with a lattice, structural relations exist between certain lattice points, which can be associated via an equivalence relation for detection purposes. The detector algorithm in accordance with the exemplary embodiments of this invention is capable of generating both total and extrinsic a posteriori probability at the output of the detector. The step-back artifact (characteristic of traditional sphere decoders) is eliminated. The algorithm applies to general lattices and enables the provisioning of the iterative type of receiver 14.
As non-limiting and exemplary implementations the operation of a novel algorithm was simulated for an uncoded transmission for a super-orthogonal constellation in two scenarios. In a quasi-static (block) fading scenario it was found to achieve ML performance even with one ‘surviving’ label (out of six). In an independent fading scenario, with coordinate (component) interleaving and iterations between equalization and detection, the algorithm was found to perform close to interference-free transmission. The coordinate interleaved scenario was furthermore found to outperform the former scenario, despite the absence of forward error correction coding. In that the presence of one of six labels have been shown to be sufficient in the exemplary implementation, it can be expected that complexity may be reduced to about approximately 17% to 20% of that of the exhaustive (optimal) search, thereby enabling very efficient implementations to be provided.
A more detailed description of the foregoing exemplary aspects of this invention, including the simulations referred to above, is found below.
Sphere detectors (as well as decoders) arose primarily from the need to alleviate the complexity of ML estimation for a large number of hypotheses. Since the underlying problem is a search, complexity reduction must come from a reduced search. Traditionally, the result of the reduced search algorithm was a hard decision; later, upon recognizing the importance of soft information at the detector's output, researchers began looking at sphere detecting algorithms capable of providing a soft information output.
The hard decision sphere detector algorithm was based on an algorithm devised by Pohst [1], [2], and described by Viterbo and Boutros [4] (there was an earlier paper by Viterbo and Biglieri, in 1993). An improved algorithm for closest point search in a lattice was proposed by Schnorr and Euchnerr [3], which starts at the center of the valid range of lattice points, and has better efficiency. Agrell et al. [31] devised another algorithm that shows a slight gain al low SNR.
Seeking to obtain a soft information output, Boutros et al. proposed a clean, elegant approach to soft output sphere detecting [5] without resorting to basis conversions (boundaries of search regions are difficult to determine); instead they take advantage of the finite structure of the constellation (finite modulation alphabet).
Other soft information approaches allow for complex non-lattice modulation alphabets, or replace the sphere with a different body, or implement a list [7], [6].
Regarding the soft-input soft-output lattice sphere detector from [5], we note that it requires three reduced search passes—first a (Schnorr-Euchnerr) reduced sphere detector search needed to obtain the initial hard decision ML point, second to enumerate all lattice points in a sphere centered on the newly found ML point, and third to evaluate the squared distances needed for generating the soft information. This triple-pass strategy to computing a soft-information detector output increases the detector's complexity—especially since in the last pass Euclidean distances are computed with respect to both the ML point (from the hard decision pass) and the received point.
Multiple input multiple output (MIMO) transmission has emerged as a strong scenario for future high-speed wireless communications due to the large capacity potential of MIMO channels. Space-time codes that exploit both spatial diversity and time diversity have been widely proposed as MIMO modulation in the past decade to achieve reliable transmission.
Recently, the importance of lattice MIMO constellations in constructing space-time lattice codes was recognized by El-Gamal et al. [26] from a diversity-multiplexing tradeoff perspective. Superorthogonal space-time codes—first reported in [18], then in [19], [20], [21], [22] (where they were dubbed ‘superorthogonal’)—are in fact lattice space time codes (see [23, Section III] and Example 2). As lattices, such constellations lend themselves to efficient detection algorithms, e.g. sphere decoding. Classic sphere decoding (see [31] and references therein) use hard decision, and a step-back provision; soft-output versions have been imagined, but rely on a list of important candidates, and retain the step-back provision. In [17], lattice partitioning is used to divide the lattice into a finite number of cosets. Each coset is then labeled by a codeword of a finite Abelian group block code. In [29], a Tanner graph (TG) representation for the label code was developed; this opens an opportunity for using belief propagation on the lattice labels.
The sequel takes a qualitatively different approach to soft output closest point search in lattices, via a form of belief propagation on a lattice. Due to the coding gain associated with a lattice, structural relations exist between certain lattice points, which can be associated via an equivalence relation for detection purposes. The algorithm can generate both total and extrinsic a posteriori probability (APP) at the detector's output. The step-back feature is eliminated. For each channel use, a filter bank for interference cancellation with minimum mean square error (IC-MMSE) is used to remove the channel effects. Then, a reduced-complexity lattice decoder based on TG lattice representation is proposed for computing total APP and extrinsic APP. The capability of calculating the extrinsic APP enables decoding schemes that iterate between detection and decoding. This novel lattice detection algorithm is applied to detecting superorthogonal space-time lattice codes [23] in quasistatic fading, and to a coordinate interleaved [34] scenario. The following notation is adhered to. Vectors are denoted by lowercase bold letters; as denotes the i-th element of vector a. Matrices are denoted by uppercase bold letters. The i-th column vector and the b-th element of a matrix, say A, are denoted by ai and aij, respectively. The superscripts T and H are used to denote transposition and complex conjugated transposition, respectively.
Complex and real transmission models are described; a general formulation for lattice constellations for MIMO channels is then introduced, followed by two examples pertaining respectively to linear dispersion and superorthogonal codes.
A. Rayleigh Flat Fading MIMO Channels
Consider MIMO wireless transmission with Nt transmit antennas and Nr receive antennas in Rayleigh flat fading. The channel coefficients are assumed to be constant over a block of T MIMO channel uses and change independently from block to block. The transmission of each block is then given by
Y=√{square root over (1/Nt)}SĤ+N (1)
where YεT×N
where ∥•∥ denotes the Euclidean matrix norm and E{•} denotes expectation, the average signal-to-noise (SNR) ratio per receive antenna is 1/N0.
1 Different alphabets could be used on different transmit antennas, e.g. Aj could be used on the j-th transmit antenna; the alphabets Aj could differ, for example, when identical constellations are assigned with unequal powers to different transmit antennas. While this general case could be accommodated it is secondary in importance for the purpose of this work.
It is important to note that (1) can accommodate various setups, which include the case T=1 that allows for independent (rather than block) fading. Similarly, the arrays S may have a certain structure, e.g. they may represent space-time code matrices; or, they may simply be arrays of unrelated values obtained after interleaving the real coordinates of structured matrices (Section IV-B) then forming new complex valued arrays out of the scrambled coordinates.
B. Equivalent Real-Valued Transmission Model
Eq. (1) is the receive equation for the transmission of complex valued arrays from Nt transmit antennas during T MIMO channel uses. It is also convenient to introduce equivalent real-valued transmission models. To this end, define two isomorphisms from complex domain to real domain, :M2M×1 and φ:M×NMN×1 as follows:
where aεM×1 and A=┌a1, . . . aN┐εM×N. The real-valued transmission model that is equivalent to (1) is
cd,(yT),C d a iV(NT) i:-x E(S)
and
Note that Hc is a 2NrT×2NtT block-diagonal real channel matrix consisting of T identical diagonal replicas the same 2Nr×2Nt matrix (IT is the identity matrix of dimension T and {circle around (×)} denotes the Kronecker product). A similar model has been reported in [26].
In addition, define a new vector y=φ(Y). By definition of φ, it can be seen that the vector y is some permutation π of yc, since y and yc are isomorphisms, via φ, of Y and its transpose YT. One can obtain y from yc as follows:
y=π(yc)=π(Hcx+nc)=π(Hc)x+π(nc)=Hx+n, (6)
where
denotes a row permutation of Hc by π. The real channel models (6) and (5) are both equivalent to the MIMO model in eq. (1), and can be used interchangeably. In the sequel, (6) will be preferred since it is consistent with the transmission model used in [23]—which is referenced in order to address certain important properties of super-orthogonal space-time codes used, in turn, to demonstrate the algorithm for finding the closest point in a lattice.
C. Space-Time Lattice Codes
An m-dimensional real lattice Λ is a discrete additive subgroup of m defined as Λ={Bu:uεn} where the real matrix B of size m×m is the generator matrix of Λ [26]. A lattice code C(Λ, u0, R) is the finite subset of the lattice translate Λ+u0 inside some shaping region R, i.e., C(Λ, u0, R)={Λ+u0}∩R, where R is a bounded region of m [26]. A space-time coding scheme with a space-time code matrix set S, such that φ(ST)εn for all SεS, is a lattice space-time code if the m-dimensional image of S via the isomorphism φ is a lattice code C(Λ, u0, R), i.e., φ({ST})={{Bu:uεn}+u0}∩R. Many well-known space-time modulation schemes in the literature indeed can be treated as space-time lattice codes. Two important examples of space-time lattice codes are given below.
(Linear dispersion codes) A linear dispersion code [27] defines a mapping of a complex vector s=[s0, s1, . . . , sK-1]T to a T×Nt complex matrix S as follows:
where {Pl}=l=0K-1, {Ql}t=0K-1 are T×Nt complex matrices. The linear dispersion code can be further rearranged as
with {tilde over (P)}l=Pl+Ql and {tilde over (Q)}l=iPl−iQl. Let χ=I(s); then one can express the linear dispersion code linearly in terms of χ and a set of matrices
where Ci is the i-th matrix of C. Consequently, the isomorphism of ST via φ, denoted x, is given by
It is clear from (10) that when the vector χ is proportional to a vector of integers a linear dispersion code is a lattice code with generator matrix Γ; this is the case when s is from a particular modulation constellation such as PAM or QAM. In general, χ is not an integer vector, e.g. when the elements of s are from a PSK constellation. However, if, by construction of the linear dispersion code, s is selected to be from a lattice Λ′ then the points χ are carved from the lattice Λ′ via a shaping region Rεm. That is,
xεΛ′∩. (11)
where Λ′={Bu:uεn} and B is the generator matrix of Λ′, and the linear dispersion code is a lattice space-time code with generator matrix ΓB. One may find different pairs of lattice Λ′ and shaping region R defining the same χs; the choice of Λ′ and R will influence the complexity of the corresponding decoder, as discussed in [29] (unless some basis reduction approach is used to process the generator matrix). The real transmission model becomes
y=HΓBu+n, (12)
and is equivalent to using a lattice space-time code with generator matrix ΓB.
(Super orthogonal space-time lattice codes) A super-orthogonal space-time code is constructed [23] by expanding a (generalized) orthogonal design [24], which in turn is obtained as a linear combination of matrices similar to (7), (8), with expansion coefficients derived from a complex vector s; the difference from a linear dispersion code is that the latter matrices verify an additional constraint (see [23, eqs. (2), (3)]). A super-orthogonal space-time construction for T=2, Nt=2, and QPSK constellation, having thirty two codematrices, was described in [18], [19], [20], [21], [22]. A generic codematrix S can be expressed as [23]2
2 Definition (3) of the isomorphism I from a complex vector to a real vector differs slightly from [23], where it was defined by interlacing the real and imaginary parts; i.e., in [23], if a=┌z1, . . . , zK┐TεK then
rather than keeping the real (and imaginary) parts together as done in eq. (3). This is the reason for swapping the second and third matrices in eqs. (15), (16) relative to [23, Sec. III].
above, χ1 and χ′l (l=0, 1, 2, 3) are either 1, −1, or 0 and the nonzero values are real parts of complex elements from a complex QPSK constellation; the two sets of real coefficients χl and χ′l (l=0, 1, 2, 3) are not simultaneously nonzero, i.e. either all χls or all χ′ls vanish. As discussed in [23], the super-orthogonal matrix codebook is embedded into an 8-dimensional real vector space obtained as the direct sum of two 4-dimensional real vector spaces3. The two sets of matrices C1 and C′1 are basis matrices in the component vector spaces that form the direct sum:
The isomorphism of a super-orthogonal space-time codematrix S, denoted by x=φ(ST), is given by
where χ⊕=[χ0, χ1, . . . , χ3, χ0′, χ1′, . . . , χ3′]T=[χTχ/T]Tε=8 is a direct sum of two 4-dimensional vectors, and Γ=[Γ1Γ2] is a 8×8 real matrix with
and
Γ2=[φ(C′0T), . . . ,φ(C′sT)]
(18)
where B is the generator matrix of the checkerboard lattice D4, given in (35). Thereby, x can be viewed as being from a lattice with generator matrix
For a super-orthogonal space-time lattice code the real equivalent transmission model in eq. (6) becomes
y=Hx+n=HΓχ⊕+n=H⊕χ⊕+n=H⊕Bu+n (19
where the second equality is obtained according to (17), and
Note that in [23] the transmission model for the same super-orthogonal space-time code is (see footnote 2):
y⊕=G⊕χ⊕+n⊕. (20)
It can be verified that
Furthermore, the matrix G⊕ was shown in [23] to be proportional with a unitary matrix, i.e., G⊕G⊕H=αI.
Denote
Then, H⊕k, k=1, 2 is unitary up to a scalar, i.e.
While lumping a channel matrix with some (equivalent) generator matrix—as in (19)—might be tempting, the new lattice having generator matrix HΓ or HΓB may have labels with very large label coordinate alphabets (see Section III-B, [29]) for random H—unless some form of basis reduction can be devised. It is more straightforward to illustrate the concept by removing the effect of the channel matrix H via some equalization step, then dealing with the underlying lattice separately. This is the approach taken in the sequel.
A novel soft-information detection algorithm for lattice space-time constellations is introduced below. Detection is performed in two stages: linear minimum mean square error (LMMSE) filtering, and belief propagation (BP) on a lattice. In the first stage, a finite impulse response (FIR) LMMSE filter bank is used to remove the effect of the channel; the lattice redundancy is subsequently exploited by a novel lattice detector based on a Tanner graph representation of the lattice.
A. MMSE Soft Equalizer with Interference Cancellation
The equivalent real transmission model is given in (6). The goal of the MMSE soft equalizer is to remove the effect of the channel H, and provide a soft estimate of each component xi of x so as to minimize the interference due to other coordinates
and to noise n. For the i-th branch the soft estimate denoted as {circumflex over (x)}i is given by
{circumflex over (x)}i=miTy (22)
with the i-th FIR filter mi being
subject to the unit power constraint
miThi=1. (24)
This power constraint mitigates the attenuation effect on the desired signal due to the filtering. The optimal solution is [28]
where
is the covariance matrix of
is the optimal solution for (23) without power constraint, and as αi=1−michi. The MSE
of the i-th branch is
If detection and decoding can be performed iteratively, then soft information about x can be fed back from the FEC decoder and made available to the filter bank in the form of probabilities of valid realizations of transmitted vectors x, or its elements xi; i.e. either at the vector level,
x,{Pr(x=φ(CT))−|φ(CTεC(Λ,u0,)},
or at the coordinate level—e.g. in the case when coordinate interleaving [34] is used to scramble the coordinates of several vectors x prior to transmission. In the latter case the structure present in the different multidimensional lattice points is destroyed during transmission through the channel; not only does this mean that the coordinate probabilities supplied by the decoder have to be unscrambled before being fed back to the LMMSE filter for interference cancellation (IC—see
An iterative receiver aims at iteratively canceling the interference prior to filtering by forming as soft interference estimator in one of two ways:
1) Vector level feedback:
xIC═Σφ(C
2) Coordinate level feedback: If Ki is the ith coordinate alphabet, the average interference value at position i is
xIC,i=Σζε
Let xIC,
ŷi=y−HxIC,
and the soft estimate {circumflex over (x)}i of the i-th branch after IC is
{circumflex over (x)}i=miTŷi
subject to a unit power constraint like (24). The estimation (30) is referred to IC-MMSE. The covariance matrix of ŷi, denoted as RIC,i, is
with
Substituting RIC,i of (31) for R in (25), (26), yields the IC-MMSE solution mi and the corresponding MSE σ2i, respectively. Note that the IC-MMSE filter bank is a more general solution than a MMSE filter bank for removing channel effects in a MIMO scenario. After IC-MMSE filtering the soft estimate of the ith branch is
{circumflex over (x)}i=xi+ni (32)
with
{circumflex over (n)}i˜(0,σi2),
or written in a matrix form as
{circumflex over (x)}=x+{circumflex over (n)}. (33)
B. Belief Propagation Detector for Lattice Code Based on Tanner Graph Representation
After IC-MMSE equalization, the soft estimate {circumflex over (x)} of a lattice point is obtained. Recall that in lattice space-time schemes, the codebook of transmitted vectors x is a lattice code C(Λ, u0, R), where the generator matrix of Λ is ΓB. For simplicity, let B be a generic lattice generator matrix. Lattice detection is to either decide which lattice point inside the shaping region has the minimum distance to {circumflex over (x)}, or calculate the soft information (e.g., in the form of probability or log-likelihood ratio) about each candidate lattice point. The first detection criterion leads to hard decision detectors—e.g., maximum likelihood (ML). The second decoding criterion leads to soft decision detectors, which can be used in iterations between detection and decoding. In this section, a novel Tanner graph based lattice decoding algorithm is introduced. For simplicity, assume an m-dimensional lattice code, i.e., {circumflex over (x)}ε.
The novel lattice decoding algorithm introduced below relies on Tanner graph representations of lattices [29], which are enabled by lattice partitioning; all lattice points (those inside the shaping region are of interest) are partitioned into several subgroups (cosets). Each subgroup includes several different lattice points, and is labeled by a well-defined Abelian group block codeword. Then, a reduced-complexity soft-output lattice detector can be obtained by operating on the smaller number of cosets instead of lattice points. The labels of all cosets form an Abelian block code, which can be represented by a Tanner graph similar to low-density-parity-check (LDPC) codes. Belief propagation on a lattice is performed on its non-binary label Tanner graph to yield the total and extrinsic APP of the labels and their coordinates, as described in the following subsections. The APPs of individual lattice points are obtained in a final step described in Section III-D.
A somewhat subtler point is that lattice partitioning revolves around an orthogonal sublattice Λ′ of Λ, and the quotient group Λ/Λ′; |Λ/Λ′| is finite if Λ and Λ′ have the same dimensionality. The most straightforward way of obtaining Λ′ is by G-S orthogonalization of Λ's generator matrix, whereby all orthogonal G-S directions intercept Λ and the intersection naturally forms a sublattice of the same dimensionality as Λ; in all other cases the orthogonal sublattice will have to be obtained by some means other than G-S orthogonalization.
(Λ=D4) A checkerboard lattice in , denoted D4, has a matrix generator:
The associated Gram-Schmidt vectors are
In the coordinate system, {Wi}i=14=span{wi}i=14
we obtain the following projection and cross-section:
This results in the following quotient groups for D4:
The label code and the dual label code
L(Λ),L(Λ)*⊂×××
are, respectively [29],
The generator set for L(Λ)* is v*={1151, 0240, 0031}. Since lcm(g1, g2, g3, g4)=6, the TG of label code L(Λ) can be constructed accordingly, as given in
Define messages qjiα and rjiα where the subscripts i, j refer to i-th variable node li and j-th qjiα check node vj, respectively. The quantity is the probability of the hypothesis that {circumflex over (x)} is an observation of a lattice point vj; rjiα whose label has i-th coordinate equal to α, given the information obtained via check nodes other than is the probability of check vj being satisfied given that {circumflex over (x)} is an observation of a lattice point whose label has i-th coordinate equal to α. The message passing is [30]:
where Kji are so that Σαqjiα=1, (j) is the set of variable nodes involved in check equation vj, and M(i) is the set of checks nodes connected to variable node li; fiα is the initial probability of event li=α given observation {circumflex over (x)}.
C. Initializing the Lattice Tanner Graph
Belief propagation requires initializing fiα for the TG; this can be done in either projection domain or probability domain. After partitioning the infinite lattice into finitely many labeled cosets, not all labels are used by the points inside the finite shaping region; due consideration must be given to this aspect.
1) In projection domain: The soft estimate {circumflex over (x)} obtained from the LMMSE filters bank is projected onto vector spaces {Wi}mi=1 (see
(1). ∀lεLC(Λ, u0, R)), find closest λεR∩{Λ(l)+u0}:
(2). Calculate the probability of (subgroup with) label l:
with di(λmin(l))=PW
(3). Initialize fαi from Pr(l):
fiα=Σl
Then qαji is initialized to fαi. The belief propagation algorithm is implemented by updating rαji and qαji iteratively until a predetermined number of iterations is achieved.
Lastly, fαi is initialized according to (41). This approach is referred to as simplified initialization, which is less complicated than the previous one—hence a slight performance loss.
2) In probability domain. Given the soft estimates in {circumflex over (x)}, the likelihoods of each coordinate5 of xεΛ at the k-th MIMO channel use are calculated from the soft estimates in {circumflex over (x)}6:
P({circumflex over (x)}i|xi=cj)=K exp(−∥{circumflex over (x)}i−cj∥2/2σi2), (43)
where cj is the j-th real coordinate xi of xεΛ∩R. Then, the likelihood of each value of coordinate xi at the k-th MIMO channel use will form the component Pk(cj; I) of a vector input Pk(c;I) to a SISO APP module, following the model and notations in [32]; as in [32], Cjk will denote a random process enacted by a sequence of (coordinate) symbols taking values from some alphabet
{cj|jεJ}—which nonetheless may be nonbinary, i.e. j is from a set of cardinality |J|>2.
5 A real coordinate of a lattice point, not an integer coordinate of a label.
6 The subscript k, which would indicate the time index of the relevant MIMO channel use, is omitted here and in
D. Computation of Extrinsic APP—Either (Lattice) Point-Wise or Coordinate-Wise—after Belief Propagation
In order to implement iterative receivers it is necessary to compute the a posteriori probability at the end of belief propagation. After the last iteration, the belief propagation returns rαji and qαji, ∀α, i, j. Then, the total a posteriori probability Pr (li=α) is computed as
and the total a posteriori probability of each label is given by
In Appendix I it is shown that when a lattice is represented by a Tanner graph, it is possible to associate a Markov process with the model for soft detection of lattice points, as shown in
where lss(e) is the label indexed by the integer value of the starting state ss(e) of edge e. Pk[ui(e); I] and Pk(ci(e), I) are the a priori probabilities of an unencoded, respectively encoded, symbol element (in this case a coordinate7) at position i, which are associated with edge e [32]. In a serial concatenation such as in
7 i.e., not necessarily a binary symbol, or bit.
Consider the superorthogonal space-time code [18], [19], [20], [21], [22], [23] as the MIMO transmission scheme. The decoding algorithm developed in the previous section combined with hypothesis testing is introduced as an efficient MIMO detector.
A. Receiver for Quasistatic Scenarios
Consider the superorthogonal space-time code given in Example 2. The ML receiver for x⊕ is given by
The ML receiver is usually computationally complicated since it needs to examine all valid lattice points (complexity grows exponentially). The algorithm introduced in Section III offers a computationally efficient solution.
Recall that for a superorthogonal space-time code (see Example 2), either all χ1 or all χ1′ are zeros, which identifies two hypotheses: hypothesis H1 is that χ1′ are all zeros, and the base matrices C are chosen; hypothesis H2 is that χ1 are all zeros, and the base matrices C′ are chosen. When hypothesis H1 is true, the transmission model (19) can be simplified as
y=H⊕1χ+n. (49)
When hypothesis H2 is true, we have
y=H⊕2χ′+n. (50)
Due to the orthogonality of matrices Hk⊕, k=1, 2, the MMSE filters for χ, χ′ are the corresponding matched filters
where Mk are MMSE filters for hypothesis Hk. The output of MMSE filters for hypothesis H1 and H2 are then given by
where ñ1 and ñ2 are estimation noise after filtering for hypothesis H1 and H2, respectively. It is not difficult to see that ñk, k=1, 2 are white multivariate Gaussian random vectors, i.e.,
It should be pointed out that the IC is not necessary for this scenario and the estimations of (52), (53) are interference-free estimates of χ and χ′, respectively, due to the orthogonality of Hk⊕.
The probability of hypothesis H1 given y is:
Pr(H1|y)=ΣχPr(H1,χ|y). (54)
In (54), summing over all valid values among χ becomes infeasible as the length of χ increases. In order to reduce the complexity, use the term that has the maximum value to approximate the summation (54). That is,
where {circumflex over (χ)} is the output of the LMMSE filtering for hypothesis H1 and is given in (52). Similarly,
The log likelihood ratio of hypothesis H1 and H2 is
For each hypothesis one can apply the lattice detection algorithm developed in Section III for detecting x. We treat the information-bearing vector χ as a lattice with generator matrix B, i.e., χ=Bu. For example, the equivalent model for detecting lattice point χ is {circumflex over (χ)}=Bu+ñ1, where {circumflex over (χ)} is the output of matched filtering of hypothesis H1. Since χ is from a D4 lattice, its generator matrix B is given in (35). The APPs can be obtained according to Section III.
B. Iterative Receiver for Coordinate Interleaving in Fast Fading
Coordinate interleaving, along with the outer iteration loop in
{circumflex over (x)}t=Γχ⊕,t+ñt. (62)
Since the information-bearing vector χ⊕;t is a direct sum of two D4 lattices, and the effective channel gain matrix Γ is unitary, the equalization approach in Section IV-A applies to eq. (62). Pr(Hk|{circumflex over (x)}t), k=1, 2, are associated with the following transmission models upon removing Γ1, Γ2 respectively:
H1:{tilde over (χ)}t=But+ñt1 (63)
H2:{tilde over (χ)}t=Bu′t+ñt2 (64)
where
The generator matrix B is given in (35). For each hypothesis, the lattice decoding algorithm can be applied to compute the extrinsic APPs P(u; O) and P(c; O).
Inner-loop iterative decoding between SISO and BP, as shown in
Simulation results for a superorthogonal space-time lattice code with 4PSK constellation (Example 2), in both quasistatic and fast fading channels, are discussed. Each half of the superorthogonal constellation belongs to a D4 lattice, implicitly defining a shaping region; only six of the twelve L(Λ) labels listed in Example 3 (first four, last two) are needed to cover the lattice points in the shaping region. In order to test the algorithm's efficiency, only the most likely label (or two labels)—post belief propagation—are retained; the others receive zero probabilities (re-normalization is performed after setting to zero the probabilities of discarded labels).
A. Quasistatic Fading
The channel is constant over T=2 symbol periods. In our simulations, each data packet includes 500 super-orthogonal codewords. Each point on the curves plotted in
8 One frame is meant to be one super-orthogonal space-time codeword
B. Fast Fading
Fast fading simulations include a coordinate interleaver. In our simulations, a depth-eight traditional block interleaver is considered. QPSK is used and the channel spectral efficiency is 2.5 bits/channel use. Two inner iterations are run between the SISO block and the BP block; one iteration is run on the lattice Tanner graph inside the BP block. We simulate different scenarios where different number of surviving labels are considered. In addition, iterative interference cancellation scheme is considered to improve the overall performance. The soft estimator computes the soft estimates of the coordinates of lattice point based on the output from the BP (P(u; O)).
A soft output closest point search in lattices was introduced, via a form of belief propagation on a lattice. Due to the coding gain associated with a lattice, structural relations exist between certain lattice points, which can be associated via an equivalence relation for detection purposes. This leads to a soft output detection algorithm, which can generate both total and extrinsic a posteriori probability at the detector's output. The step-back feature of classic sphere decoding is eliminated.
Herein, the expressions for extrinsic a posteriori probabilities (46), (47), at the belief propagation detector's output, are derived; the extrinsic probabilities are needed in iterative receivers. Here, the goal of detection is to provide soft information about valid channel alphabet symbols, i.e. real coordinates of the complex symbols from the modulation constellations used on various transmit antennas; this information about coordinates can be used to revert the effect of a coordinate interleaver, or can be forwarded directly to a soft decoder for some coded modulation encoder. Alternatively, it can be used for soft or hard demodulation, e.g. in the case of bit interleaved coded modulation, or with plain uncoded transmission.
When a lattice is represented by a Tanner graph, it is possible to associate a Markov process with the model for soft detection of lattice points in a natural way. This is enabled by first viewing the sequence of lattice points passed through the channel as a Markov source. Another observation is that, in general, simple detection (with or without soft information) is by itself memoryless; thereby, one should expect the Markov process to be somehow degenerated, in order to reflect the memoryless nature of simple (non-iterative) detection. The objective of detection is to determine the aposteriori (total or extrinsic) probabilities of the output of the Markov source. In order to leverage off of known results—even in the case of plain, unencoded transmission (no forward error correcting redundancy added by encoding)—one can view the output c of the Markov source (a lattice point, i.e. a vector of lattice coordinates) as the result of mapping with rate one (i.e. no additional redundancy) an identical replica of the input u=c; this is a degenerated Markov process where even the dependence of the future on the present is removed. The only remaining structure to be captured for the Markov source, in the case when the candidate points are from a lattice, must reflect the partitioning in labeled cosets, as discussed in Section III-B. To this end, note that the labels themselves can be associated with states having integer values by virtue of the following convention: the state Sk−1 at time k−1 is the index of the label that contains the most recent lattice point output by the Markov source, i.e. at time k−1; when the Markov source outputs a new point at time k it transitions into state Sk equal to the integer indexing the label that contains the new point. Alternatively, with respect to the mapping u|→c and omitting the time index, when u=λεΛ occurs at the rate-one block input, the Markov process transitions into the state whose (integer) value indexes the label containing λ. This is represented in
such that, for any integer state sε{1, . . . |L(Λ)|},
is the label associated with s.
The Markov sequence of random points selected from the lattice can be thus viewed as triggered by state transitions triggered by u=λεΛ; although the realizations of u on the lattice grid are random, a state model arises as a result of partitioning the lattice in equivalence classes. That is, there exist certain structural relations between certain points, which can be associated via an equivalence relation. The state probabilities, used in a posteriori probability calculations, are seen to be associated with the probabilities of these equivalence classes (or their labels), which can be obtained separately from belief propagation on the lattice's Tanner graph, as shown next.
In general, for a Markov process generated by triggering state transitions via some input (e.g. a classical convolutional code), the new state depends on the current input and several previous inputs; in the case at hand the new state depends only on the current input. This illustrates the degenerated nature of the Markov process at hand, seen thereby to be memoryless.
The memoryless nature of the Markov process is also apparent in the fact that any state can be reached in one transition from any state, and the probability distribution of the states does not depend on time; it depends only on the probability distribution for u, and so does the probability distribution of the output of the Markov process. The output of the Markov process does not depend on the current state, but rather on the input u; the input determines both the new output and the new state, which implies that the output any time does not depend on any previous state.
The remainder of this appendix will use the state transition diagram in
where Ak-1[sS(e)] and Bk[sE(e)] are the probabilities of the current state and the new state that are associated with edge e.
Following the well-known results and notation in [33] and using the memoryless nature of the Markov process in
where, following [33], yτ0 denotes the observations of the relevant Markov process, as taken at the output of a discrete memoriless channel at time instants 0, 1, . . . , τ. Most importantly, the factor κ0 does not depend on the state s, and is thereby cancelled out during the normalization step that enforces ΣsAk┌s┐=1. Due to the isomorphism between states and labels it follows that Pr{Sk=s; yk} is the label probability Pr (l(s))=Pr(ls) calculated as in (45). From [33] and the properties of the degenerated Markov process,
which does not depend on the state s and behaves as a constant that is cancelled out during the normalization step enforcing ΣsBk[s]=1. Therefore (46), (47) follow.
Referring to
The use of the exemplary embodiments of this invention enables and provides at least the advantages of soft output detection, no step back artifact generation, modularization of receiver implementation, wherein all practical constellations may be viewed as lattices (in a sense that they may be, e.g., degenerated lattices or cubic lattices). The use of the exemplary embodiments of this invention enables and provides a practical and efficient technique and means for decoding large constellations from multiple transmit antennas.
The exemplary embodiments of this invention can be applied to and used in, as non-limiting examples, E-UTRAN systems, OFDM-based systems, WCDMA systems, multi-carrier systems, so-called 3.9G (3.9 generation) systems and so-called 4G (fourth generation) systems, as well as in multi-band and multi-mode user equipment and terminals.
In general, the various 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 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.
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 etched and formed on a semiconductor substrate. Commercially available programs and systems may automatically route conductors and locate components on a semiconductor chip 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 or “fab” for fabrication.
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. However, any and all modifications of the teachings of this invention will still fall within the scope of the non-limiting embodiments of this invention.
Furthermore, some of the features of the various non-limiting embodiments 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 and exemplary embodiments of this invention, and not in limitation thereof.
This patent application claims priority under 35 U.S.C. §119(e) from Provisional Patent Application No. 60/774,436, filed Feb. 17, 2006, the disclosure of which is incorporated by reference herein in its entirety.
Number | Date | Country | |
---|---|---|---|
60774436 | Feb 2006 | US |