[IEEE 2008 15th IEEE International Conference on Electronics, Circuits and Systems - (ICECS 2008) -...

4

Click here to load reader

Transcript of [IEEE 2008 15th IEEE International Conference on Electronics, Circuits and Systems - (ICECS 2008) -...

Page 1: [IEEE 2008 15th IEEE International Conference on Electronics, Circuits and Systems - (ICECS 2008) - St. Julien's, Malta (2008.08.31-2008.09.3)] 2008 15th IEEE International Conference

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

Page 2: [IEEE 2008 15th IEEE International Conference on Electronics, Circuits and Systems - (ICECS 2008) - St. Julien's, Malta (2008.08.31-2008.09.3)] 2008 15th IEEE International Conference

{ }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

Page 3: [IEEE 2008 15th IEEE International Conference on Electronics, Circuits and Systems - (ICECS 2008) - St. Julien's, Malta (2008.08.31-2008.09.3)] 2008 15th IEEE International Conference

{ }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

Page 4: [IEEE 2008 15th IEEE International Conference on Electronics, Circuits and Systems - (ICECS 2008) - St. Julien's, Malta (2008.08.31-2008.09.3)] 2008 15th IEEE International Conference

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