[IEEE 2008 15th IEEE International Conference on Electronics, Circuits and Systems - (ICECS 2008) -...
Click here to load reader
Transcript of [IEEE 2008 15th IEEE International Conference on Electronics, Circuits and Systems - (ICECS 2008) -...
64-QAM 4x4 MIMO Decoders Based on Successive Projection Algorithm
José Marín-Roig, Vicenç Almenar, Javier Valls, Mª José Canet Instituto de Telecomunicaciones y Aplicaciones Multimedia
Universidad Politécnica de Valencia Gandia, SPAIN
Abstract— This paper presents two algorithms to extend the MIMO-decoding capability of Successive Projection algorithm (SPA). The algorithms, called Flag-SPA and Relaxed-SPA, are based on different methods to avoid repeating the selected path in each iteration of the algorithm, the first by using a flag matrix, the second by assigning a high weight to a selected path. Equivalences with K-Best algorithm in terms of average BER for a SNR range from 25 to 30 dB have been found and it is shown that for low SNR the proposed SPA-based algorithms exhibit lower computational load than their equivalent K-Best algorithm.
I. INTRODUCTION It is well known that multiple-input multiple-output
(MIMO) wireless data transmission technology can improve the current communications systems in terms of spectral efficiency and/or link reliability [1]. However, the optimal Maximum-likelihood (ML) decoder is infeasible for the MIMO system, especially when a large number of antennas together with higher modulation constellations are used [2]. As an alternative, the sphere decoding (SD) [2] and the Schorr-Euchner (SE) [3] algorithms, reaches the ML performance with reasonable complexity, however these algorithms have the disadvantage that the computation requirement varies with the input signal and hence the decoding throughput is also varying, which is not desirable for real time signal detection. The K-Best Algorithm [4] exhibit lower computational load with respect to the conventional lattice decoder and has a fixed throughput. The BER performance is very close to the optimal ML if K is sufficiently large. Furthermore, if the detector works with symbols represented as complex numbers (complex-based K-Best) instead of real ones, the number of iterations is reduced and, hence, the throughput is increased. In such a case, it is also required to use sub-optimal sorting methods to make possible the VLSI implementation, as shown in [5].
Recently, successive projection algorithm (SPA) for MIMO detection has been proposed [6]. Although it is a suboptimal algorithm, authors prove that ML detection can be achieved in a successive manner. However, to achieve an ML decoding with SPA makes no sense as its computational load would be very higher than the one required by an exhaustive search. In fact, it is in the first iterations where the SPA is competitive with respect to K-Best algorithm, as shown in this
paper. In [6] it is indicated that to extend the SPA algorithm the paths must not be repeated, however, they do not propose a mechanism to avoid that problem. In this paper two low complexity algorithms are proposed to extend the SPA algorithm. The first algorithm is based on avoiding an exhaustive sorting by using a matrix of flags, and the second consists of assigning a high weight to a selected path to avoid its repetition by simple comparisons. These algorithms have been evaluated for a 64-QAM 4x4 MIMO systems and their computational load have been compared with the K-Best algorithms that achieve the same performance.
The organization of this paper is the following. Section II establishes the system model and notation used in this paper. Section III introduces the basic SPA algorithm. Section IV presents the two proposed algorithms, Flag-SPA and Relaxed-SPA. Section V depicts the simulation results, and finally, the conclusions are exposed.
II. SYSTEM MODEL AND NOTATION In this paper a symbol synchronized and un-coded MIMO
system with Mt transmits antennas and Nr receives antennas is considered. The base-band equivalent model for this system is
nsHyr~~~~ +=
(1)
The channel H~ is assumed to be a Rayleigh frequency non- selective fading channel and quasi-static, so the entries
ijh~ are assumed to be zero-mean complex Gaussian variables with variance 0.5 per dimension. The transmitted symbol vector is T
Mtssss ]~,...~,~[~21= , with components independently
drawn from a complex QAM constellation, the received symbol vector is T
rNrrrr yyyy ]~,...~,~[~21= , and the noise vector is
TNrnnnn ]~,...~,~[~
21= with zero-mean, variance σ2 and normal distribution.
As shown in [4], the complex equation is converted to its real representation, nHsyr += , as follows:
This research was supported by FEDER, the Spanish Ministerio de Educación y Ciencia, under Grant No. TEC2005-08406-C03-01 and Genelatitad Valenciana under grant ACOMP07/202.
{ }{ }
{ } { }{ } { }
{ }{ }
{ }{ }⎥⎦
⎤⎢⎣
⎡ℑℜ
+⎥⎦
⎤⎢⎣
⎡ℑℜ
⎥⎦
⎤⎢⎣
⎡
ℜℑℑ−ℜ=⎥
⎦
⎤⎢⎣
⎡ℑℜ
nn
ss
HHHH
yy
r
r~~
~~
~~~~
~~
(2)
978-1-4244-2182-4/08/$25.00 ©2008 IEEE. 610
{ }MI ,...,,21←ry y←
( )THL 1−←doeachfor MtofromKlevel 1
sReturn
),,,,,( IiLHyanchTraverseBrCall KK α
),,,,(),,, IXLHyPathSelecti KKK ←δβαK(KiK
s α←ˆ
forend
)(HrankM ←
doeachfor Isetiniindexxly iXxi −← ∈ ,minargα
xly iXxi i−← ∈ ,minarg \αβ
( )( )iii Fyd βδ ,2←forend
iIii δ∈← maxargmax
maxmaxmax,,max iii andi δβαReturn
1:
2:
3:
4:
5:
Function 3 TraverseBranch(y, H,L, , ,I)seliII \←
seliF selselselihyprojy γγ −← )()(
doeachfor Isetiniindex)()0( iFi lprojl
seli←forend
seli selγRemove from index set
Project and shiftProject inverse
Since the elements of H~ are assumed to be complex Gaussian, H has a full rank M=2Mt. The optimal MIMO detection is to find a lattice point s in space MX , such that its transformed point sHˆ , has the minimum Euclidean distance to a noisy observation vector ry , i.e.,
2minargˆ Hsys rXs M−=
∈. (3)
where X is the set of B real entries in the constellation, e.g., { }3,1,1,3 −−=X in the case of 16-QAM.
III. BASIC SPA The SPA algorithm arises from a search of an efficient
sorting algorithm for H matrix [7]. The use of a pre-sorted matrix reduces substantially the complexity of finding the ML solution in algorithms based on SD [2].
While not always optimal sorting is achieved by algorithms that depend on the channel estimation, SPA that depends on the decoding object vector achieves an optimal sorting. A sub-optimal solution to the minimization problem expressed in (3) is obtained in parallel with the process of obtaining the sorting indexes of SPA. Pseudo-codes for basic-SPA algorithm and its functions path-select and traverse-path are listed bellow.
The algorithm performs the selection of the M-component vector based on the cited two functions:
PathSelect is the responsible for selecting the index of the vector components among the rest of the paths within the set I.
The applied criterion is the maximization of the base weights iδ , which are defined as:
( )( ) ( )( )yprojydFydiiFiii )(
22 ,ˆ, ββδ == , (4)
where d is the Euclidean distance and ( )yprojiiF )(β
is the orthogonal projection of the vector y over the affine set
( )iiF β . This projection is computed as:
ii
iiiF l
l
lhyyyproj
ii 2)(
,ˆ)(
ββ
−−= ,
(5)
with <a,b> denoting the inner product.
TraverseBranch computes the orthogonal projection of the residual target over the affine set ( )iiF α , the same way as the projection of the rest columns of the matrix L.
A detailed description of the SPA algorithm is found in [6].
IV. EXTENDED ALGORITHMS Basic-SPA is a single-pass detector [6]. A natural
extension is to keep track of the ζ best paths that were not initially considered (those with lower base weights), and so this extended algorithm can iteratively achieve the ML solution. However in [6] it is neither established any method to control the iterations nor studied the number of iterations required to approach the ML limit with a reasonable computational cost.
Although this detector becomes ML in the extreme case, when MB→ζ , this paper shows that, using only the first iterations, this detector can achieve a sub-optimal decoding with lower complexity than the sub-optimal complex-based K-Best decoder.
The main problem of using the SPA algorithm iteratively is to avoid the repetition of paths in ζ consecutive iterations. Due to the fact that our final aim is not to achieve the ML solution (since its computational load would be higher than the one of an exhaustive search), it does not makes sense to apply a rigorous control of the repetitions, keeping in this way a low computational complexity.
In this Section two methods to extend the SPA algorithm (Extended-SPA) avoiding the repetitions in the first iterations are proposed.
A. Flag-SPA Algorithm 1 shows the pseudo-code for an Extended-SPA
detector. The algorithm returns the matrix of solution vectors S , where 0s matches with the Basic-SPA and the rest match with the ζ successive iterations. The optimal solution will be among all of them, the one that satisfy the equation (3).
The used method to avoid repeated solutions is a flag matrix. Function 4 checks the flag matrix F in each iteration in order to be sure that the first selected path of the solution vector is different from the ones obtained in previous iterations. Once a path is selected, a 0 is set in its corresponding flag (line 17 of algorithm 1).
611
{ }MI ,...,,21←ry y←
( )T1HG −←
doeachfor 1-Mto1fromKlevel
forendSReturn
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
Algorithm 1 ExtendedSPA(yr, H, X, )
doeachfor ζtofromjiteration 0),,,,(),,,( 1 IXGHyPathSelecti ←111 δβα
{ }MI ,...,,21←ry y←
G←L),,( MFlectFlagPathSeisel δ←
),,,,,( IiLHyanchTraverseBrCall selsel γ),,,,(),,, IXLHyPathSelecti KKK ←δβαK(
thenif 0=j
selisel αγ ←else
selisel βγ ←ifend
19:
20:
21:
22:
23:
24:
25:
0←selselif γ,
seljisels γ←,ˆ
1←MxBF
Ksel αγ ←Ksel ii ←
seljisels γ←,ˆ
26:
27:
forend
)(HrankM ← Set dimensionInitialize index set
Initialize target
Compute inverseInitialize flag matrix
Detect symbolSet flag of taken path
Nearest in first iteration
Second nearest in the rest of iterations
1:
2:
3:
4:
5:
6:
Function 4 FlagPathSelect( ,F,M)
minReturn i
iIii δ∈← minargmin
do)()(whileminmin , φβ ≠= Iandfii 0
min\ iII ←iIii δ∈← minargmin
whileend
{ }MI ,...,,21←
7:
Initialize index setFind minimun base weight
Select a not traversed path
This control method guarantees between M and M⋅B iterations without repetitions, i.e. for a 64-QAM 4x4 MIMO system between 8 and 64 iterations.
B. Relaxed-SPA The use of a while loop in Function 4 to control the
repetitions leads to a variable throughput in the decoding process. This problem is solved with the following modification of algorithm 1, which has been called Relaxed-SPA:
Algorithm 2 RelaxedSPA(yr,H,X,ζ)
In Algorithm 1, delete line 5 and replace lines 11 and 17 by:
11: iIiseli δ∈← minarg
17: 102←selδ
25 26 27 28 29 3010
-4
10-3
10-2
10-1
SNR(dB)
Ave
rag
e B
ER
BSPARSPA2RSPA3RSPA4RSPA5RSPA6RSPA7RSPA8FSPA5ML
Figure 1. Average BER for a 64-QAM 4x4 MIMO system decoded with Relaxed-SPA
This modification supposes a relaxation of the repetition control by eliminating the matrix of flags. The first index of each iteration is simply selected looking for the minimum base weight. Once the index is selected, a very high value is assigned to its base weight. This guaranties that the selected path is not selected in the following iteration.
The advantages of this modification are twofold. First, the complexity is reduced. The search in the matrix of flags is substituted by M comparisons. Second, it allows the decoder to achieve a fixed throughput, what is desirable for VLSI implementation. On the other hand, its main drawback is that the algorithm is only suitable for a reduced number of iterations (ζ), i.e. up to 5 iterations are only useful for a 64-QAM 4x4 MIMO system.
V. PERFORMANCE EVALUATION This Section shows the performance of Flag-SPA (FSPA)
and Relaxed-SPA (RSPA) algorithms in terms of average BER and computational load. For comparison purposes, the complex-based K-Best (KB) algorithm has been considered due to its suitability for VLSI implementation [5]. A MIMO system with Mt=Nr=4 antennas is used in the simulations. 10k independent channel realizations (packets) of 100 un-coded 64-QAM symbols are transmitted with 25 symbols from each antenna. The average energy per bit is fixed to Eb=1, and the variance σ2 of the AWGN n is adjusted by
( ) 10/2
2 10)(log2/ SNRS qME −=σ , where 3/)1(2 −= qES is the
average symbol energy of q-QAM (q=4,16,…) when Eb=1. For K-Best simulations, the radius r2 is calculated as 2ρNrσ2[8], where ρ=5 is a predefined constant parameter and σ is the noise standard deviation.
The average BER of Relaxed-SPA for the first 8 iterations together with the 5-iteration Flag-SPA and ML are plotted in Fig. 1. It is shown that Relaxed-SPA algorithm only improves during the first iterations and stops improving from the fifth iteration (ζ=4). On the other hand, Flag-SPA (not shown in Fig. 1) approaches gradually to ML solution as the number of iteration grows.
612
25 26 27 28 29 3010
-4
10-3
10-2
10-1
SNR(dB)
Ave
rag
e B
ER
BSPARSPA5-KB16FSPA7-KB24FSPA10-KB32FSPA25-KB48ML
Figure 2. Average BER for a 64-QAM 4x4 MIMO system: equivalences between SPA-based and K-Best algorithms
TABLE I. EQUIVALENTS ALGORITHMS IN TERMS OF AVERAGE BER
K-Best (K)
Flag-SPA (# iterations)
Relaxed-SPA (# iterations)
ΔSNR (dB)
16 --- 5 <0.08 24 7 --- <0.05 32 10 --- <0.02 48 25 --- <0.02
(ΔSNR < 0.1 dB for a BER=10-3)
The comparison between SPA-based algorithms and complex-based K-Best has been performed in two steps. First, equivalent average BER graphs have been found, being considered equivalents two graphs if the SNR of both have a difference lower than 0.1dB for a BER=10-3. Second, the computational load of equivalent pairs has been obtained. Table I shows the equivalences that have been found.
The average BER of the equivalent pairs for SNR between 25 and 30 dB is depicted in Fig. 2. The basic-SPA (BSPA) algorithm and ML solution have also been included in Fig. 2. Fig. 3 shows the complexity load of the previous equivalent pairs for SNR between 25 and 30 dB. This parameter has been measured in FLOPS considering the operations of multiplication, addition and comparison.
As can be seen in Fig. 3, the computational load of the proposed SPA-based algorithms is independent of the SNR, this fact makes them be more computationally-efficient for low SNR than K-Best algorithms: specifically, the SPA-based algorithms working with few iterations (less than 15) and a low SNR exhibit lower computational load (approximately a half) than their equivalent, in terms of average BER, K-Best algorithms.
25 26 27 28 29 3020
40
60
80
100
120
SNR(dB)
FL
OP
S(X
1000
)
KB16KB24KB32KB48RSPA5FSPA7FSPA10FSPA25
Figure 3. Complexity load of SPA-based and K-Best algorithms
VI. CONCLUSION Two algorithms, Flag-SPA and Relaxed-SPA, have been
proposed to extend the decoding capability of SPA algorithm. It has been shown that a 5-iteration Relaxed- SPA is equivalent in terms of average BER to a K-Best with K=16, and a 7-iteration Flag-SPA is equivalent to a K-Best with K=24. In both cases the proposed algorithms reduces to a half the computational load of their equivalent K-Best for the lowest evaluated SNR.
REFERENCES [1] G.J. Foschini, “Layered space-time architecture for wireless
communication in fading environments when using multiple antennas”, Bell Labs. Tech. J., vol 2, Autumn 1996.
[2] M. O. Damen, H. E. Gamal, and G. Caire “On maximum-likelihood detection and the search for the closest lattice point”, IEEE Trans. on Information Theory, vol. 49,no 10,pp. 2389-2402, October 2003.
[3] E. Agrell, T. Eriksson, A. Vardy, K. Zeger, “Closest point search in lattices“, IEEE Trans. Inform. Theory, vol. 48, pp. 2201-2214, Aug. 2002.
[4] K.-W. Wong, C.-Y. Tsui, Cheng, R.S. Cheng, W.-H. Mow, “A VLSI architecture of a K-best lattice decoding algorithm for MIMO channels”, in Proc. IEEE Int. Symp. Circuits Syst., 2002, pp. III-273-III-276.
[5] Sizhong Chen, Tong Zhang, Yan Xin, “Relaxed K-Best MIMO Signal Detector Design and VLSI Implementation”, IEEE Trans. on Very Large Scale Integration (VLSI) Systems, vol 15, pp. 328-337, March 2007.
[6] K. Su, I. J. Wassell, “Efficient MIMO Detection by Successive Projection,” in Proc. Int Symp. Information Theory, 2005, pp. 1681-1685.
[7] K. Su, I. J. Wassell, “A new ordering for efficient sphere decoding,” in Proc .IEEE Int. Symp. Communications, 2005, vol. 3, pp. 1906-1910.
[8] B. M. Hochwald and S. ten Brink, ”Achieving near-capacity on a multiple-antenna channel,“ IEEE Trans. Commun., vol. 51, no. 3, pp. 389-399, Mar. 2003.
613