Signal Processing 82 (2002) 961 – 969 www.elsevier.com/locate/sigpro
Interference suppression in multiuser DS-CDMA communication systems using RMGS algorithm Abdullah I. Hassan ∗ , D.K. Mehra Department of Electronics and Computer Engineering, University of Roorkee, Roorkee, U.P. 247667, India Received 19 May 2001
Abstract A direct sequence code division multiple access (DS-CDMA) adaptive receiver for suppressing multiple access interference (MAI), based on the minimum mean squared error (MMSE) criterion, is introduced using the recursive modi0ed Gram– Schmidt (RMGS) algorithm. It is shown, by simulation, that the RMGS algorithm is stable unlike the RLS algorithm, while requiring similar or less number of operations as compared to RLS and QRD-LS algorithms. Parallel implementation of the RMGS algorithm using systolic arrays, which will reduce its complexity to O(N) using N-parallel processors, is also described. The performance of the RMGS algorithm has been evaluated and compared to the normalized LMS and RLS algorithms. ? 2002 Elsevier Science B.V. All rights reserved. Keywords: MMSE receiver; DS-CDMA systems; Interference suppression; RMGS algorithm
1. Introduction In direct sequence code division multiple-access (DS-CDMA) systems several users transmit asynchronously their message by modulating it with distinct PN spreading code. The conventional matched 0lter receiver su
∗
Corresponding author. E-mail addresses:
[email protected] (A.I. Hassan),
[email protected] (D.K. Mehra).
detector (MLSD) su
0165-1684/02/$ - see front matter ? 2002 Elsevier Science B.V. All rights reserved. PII: S 0 1 6 5 - 1 6 8 4 ( 0 1 ) 0 0 1 6 9 - 4
962
A.I. Hassan, D.K. Mehra / Signal Processing 82 (2002) 961 – 969
convergence rate but it requires larger number of multiplications and also it su
The rest of the paper is organized as follows: The asynchronous CDMA signal model is introduced in Section 2. In Section 3, we describe the RMGS based adaptive receiver for interference suppression in DS-CDMA systems. The parallel implementation of the RMGS receiver on systolic arrays is also described. Simulation results and discussion of the adaptive DS-CDMA receiver based on the RMGS algorithm are presented in Section 4. Finally, Section 5 concludes this work. 2. CDMA model In CDMA systems, the channel is shared by K users, where each user is assigned a spreading waveform ck (t), which is zero outside the interval [0; T ], de0ned by ck (t) =
N −1
cn; k (t − nTc );
(1)
n=0
where T is the signaling bit interval, N = T=Tc is the processing gain, (t) is the chip waveform assumed to be of rectangular shape and duration Tc , and cn; k ∈ {−1; 1} is the nth element of the spreading sequence of the kth user given by ck = [c0; k c1; k : : : cN −1; k ]T . The kth user transmit
Fig. 1. Block diagram of the adaptive DS-CDMA receiver.
A.I. Hassan, D.K. Mehra / Signal Processing 82 (2002) 961 – 969
a signal, in the interval 0 6 t 6 T corresponding to 0rst bit, of the form sk (t) = dk (t)ck (t) cos(!c t + k ) 0 6 t 6 T;
(2)
where dk (t) is the kth user data bit, !c is the carrier frequency and k is the phase of the carrier. The input data is a binary randomly generated zero mean sequence. The received signal is K Pk sk (t − k ) + n(t) 0 6 t 6 T; (3) r(t) = k=1
where Pk is the received power of the kth user and k is its delay which is assumed to be uniformly distributed over [0; T ], and n(t) is additive white Gaussian noise. It is assumed that the desired user’s parameters are P1 = 1; 1 = 0 and 1 = 0. The block diagram of DS-CDMA receiver is shown in Fig. 1. After the baseband conversion, the received signal is passed through a chip-matched 0lter and is sampled at the end of each chip interval. The output of the chip-matched 0lter at the mth chip sample corresponding to the nth bit is then √ (m+1)Tc +1 rm (n) = 2 r(t) (t − mTc ) mTc +1
×cos(wc t + 1 ) dt
(4)
and the contents of the TDL 0lter r(n) = [r1 (n) r2 (n) : : : rN (n)]T . 3. RMGS-based adaptive interference suppression The output of the TDL 0lter (Fig. 1) is sampled at the bit interval, and hard-limited to form an estimate of the desired data bit. The output of the TDL 0lter may be written as y(n) = rT (n)w(n);
(5) T
where w(n) = [w0 (n); w1 (n); : : : ; wN −1 (n)] , the TDL 0lter weights during interval (n − 1)T ¡ t ¡ nT , which minimizes (n), the exponentially weighted sum of squared errors de0ned as n n−i e2 (i) (n) = i=1
=
n i=1
n−i [d1 (i) − rT (i)w(n)]2 ;
(6)
963
where the forgetting factor is less than but close to unity and d1 (i) is the desired user data bit. The minimization of Eq. (6) is equivalent to the LS problem for solving the linear system of equations: A(n)w(n) = D(n) (7) √ √ where D(n) = [ n d1 (1); n−1 d1 (2); : : : ; d1 (n)]T and A(n) = [r(1); r(2); r(3); : : : ; r(n)]T . The above problem can be solved using the RMGS algorithm [4]. First, we combine A(n) and D(n) as At (n) = [A(n); D(n)]
(8)
and de0ne a set of N +1 (n+1)-dimensional orthogonal vectors qi (n); (i = 1; : : : ; N ) and e(n), that satisfy At (n) = [q1 (n); q2 (n); : : : ; qN (n); e(n)]Kt (n)
(9)
where Kt (n) is an (N + 1) × (N + 1) upper-triangular matrix with unit diagonal elements, given as 1 k12 (n) k13 (n) : : : k1N (n) k1d (n) 1 k23 (n) : : : k2N (n) k2d (n) ::: ::: ::: ::: Kt (n) = d 1 kN −1; N kN −1 (n) d 0 1 kN (n) 1
=
K(n) Kd (n) 0
1
:
(10)
It can been shown that w(n) satis0es the equation K(n)w(n) = Kd (n) which can be solved by back substitution. The RMGS algorithm and its error feedback form [4] are summarized in Tables 1 and 2, respectively. 3.1. Parallel implementation on systolic arrays The RMGS algorithm can be implemented using a highly modular structure (systolic array) shown in Fig. 2. The systolic array operates directly on the input data represented by rT (n). The output of the systolic array is the estimated weight vector w(n). The structure consists of two sections: the triangular systolic array and the linear systolic array. A single clock controls the entire systolic array. Each
964
A.I. Hassan, D.K. Mehra / Signal Processing 82 (2002) 961 – 969 Table 2 The RMGS algorithm using the error feedback formula
Table 1 The RMGS algorithm
Input: ri (n) (i = 1; : : : ; N ); d1 (n); Initialization: 1 (n) = 1 qi(i) (n) = ri (n) (I = 1; : : : ; N ); e(1) (n) = d1 (n) For i = 1 to N do qi (n) = qi(i) (n) aii (n) = aii (n − 1) + qi2 (n)=i (n) i+1 (n) = i (n) − qi2 (n)=aii (n) For j = i + 1 to N do aij (n) = aij (n − 1) + qj(i) (n)qji (n)=i (n) kij (n) = aij (n)=aii (n) qj(i+1) (n) = qj(i) (n) − kij (n) − kij (n)qi (n) d ai (n) = adi (n − 1) + e(i) (n)qi (n)=i (n) kid (n) = adi (n)=aii (n) e(i+1) (n) = e(i) (n) − kid (n)qi (n) e(n) = eN +1 (n)
(T1.1) (T1.2) (T1.3) (T1.4) (T1.5) (T1.6) (T1.7) (T1.8) (T1.9) (T1.10) (T1.11) (T1.12)
Input: ri (n) (i = 1; : : : ; N ); d1 (n); Initialization: 1 (n) = 1 aii (−1) = (i = 1; : : : ; N ) qi(i) (n) = rn (i) (i = 1; : : : ; N ); e(1) (n) = d1 (n) For i = 1 to N do qi (n) = qi(i) (n) aii (n) = aii (n − 1) + i (n)qi2 (n) i+1 (n) = i (n) − i2 (n)qi2 (n)=aii (n) For j = i + 1 to N do qji+1 (n) = qj(i) (n) − kij (n − 1)qi (n) kij (n) = kij (n − 1) + +i (n)qj(i+1) (n)qi (n)=aii (n) (i+1) (n) = e(i) (n) − kid (n − 1)qi (n) e kid (n) = kid (n − 1) + i (n)e(i+1) (n)qi (n)=aii (n) e(n) = eN +1 (n)
Fig. 2. Systolic array implementation of the RMGS algorithm.
(T2.1) (T2.2) (T2.3) (T2.4) (T2.5) (T2.6) (T2.7) (T2.8) (T2.9) (T2.10) (T2.11)
A.I. Hassan, D.K. Mehra / Signal Processing 82 (2002) 961 – 969 Table 3 Computational complexity of various adaptive algorithms
Algorithm
Multiplications
Divisions
Squareroots
RLS QR-RLS Inverse QR-RLS RMGS RMGSEF
3N 2 + 3N 3:5N 2 + 7N 4N 2 + 9N 2N 2 + 4N 1:5N 2 + 4:5N
N 3N 3N 3N 2N
— N N — —
section of the triangular systolic array consists of two types of processing cells: internal cells (represented by squares) and boundary cells (represented by circles). The internal cells compute Eqs. (T1:4) and (T1:5), while, the boundary cells, on the other hand, compute Eqs. (T1:6), (T1:7) and (T1:8) or (T1:9), (T1:10) and (T1:11). When the entire orthogonal triangularization is completed, each particular row of the upper triangular matrix KT (n) or the associated 1-by-N vector [Knd ]T is clocked out for subsequent processing by the linear systolic array section. This section computes the estimated weight vector w(n) by the method of backward substitutions using the following equations: zi(N ) = 0; zi(k−1) = zi(k) + kik (n)wk (n); wk (n) =
kid (n) − zi(i) ; kii (n)
(11)
where i; k = N − 1; : : : ; 1, and zik are intermediate variables, kik (n) are elements of upper triangular matrix KT (n), kid (n) are elements of the vector Kd (n), and wk (n) are elements of the weights vector w(n). The linear systolic array section consists of one boundary cell and (N − 1) internal cells that perform the arithmetic functions de0ned in Fig. 2 according to Eq. (11). The elements of the weight vector appear at the output of the boundary cell at di
965
addition it requires 2N divisions. Using the error feedback form of the RMGS algorithm (RMGSEF), the number of multiplications required is N 2 + 5N in addition to N divisions per output bit. If it is required to calculate the weights, then using backward substitution method, then an additional N (N − 1)=2 multiplications and N divisions are required. The computational complexity of the some adaptive methods is given in Table 3. It is clear that the highest complexity is required when using the square root algorithms (i.e. QR-RLS, inverse QR-RLS and the SQRT-KF algorithms) since they involve the calculation of further N square roots, which is computationally expensive. 4. Simulation results and discussion In order to illustrate the performance of the RMGS algorithm in suppressing the MAI in DS-CDMA systems over NLMS and RLS algorithms, several examples have been simulated. In the adopted system, unless stated otherwise, each interferer has 10 dB power advantage over the desired user, the input signal to noise ratio is 20 dB, and the length of the PN spreading sequence is 31. The convergence characteristics curves for the NLMS, RLS and RMGS algorithms are shown in Fig. 3. The step-size of the NLMS algorithm has been tuned such that the same residual MSB is achieved using the three algorithms and hence a fair comparison is performed. It is clear that the RMGS and RLS convergence curves are almost identical, and are much faster as compared to the NLMS convergence characteristics for 4- and 8-interferers cases. Fig. 4 shows the behavior of the RLS and RMGS algorithms during the training and decision-directed modes. Eight hundred bits are used in the training mode after which the receiver switches to the decision directed mode. It is clear that in using the RLS algorithm, the receiver loses its convergence and becomes unstable after about 1800 bits during the decision-directed mode. Periodic reinitialization of the RLS algorithm is required to maintain its stability as in Ref. [2]. The probability of error, which is obtained by simulation, for the adaptive DS-CDMA receiver using
966
A.I. Hassan, D.K. Mehra / Signal Processing 82 (2002) 961 – 969
Fig. 3. Comparison of the convergence characteristics for the adaptive DS-CDMA receiver using NLMS, RLS and RMGS algorithms.
Fig. 4. Convergence characteristics for the adaptive DS-CDMA receiver using RLS and RMGS algorithms in both training and decision directed modes.
A.I. Hassan, D.K. Mehra / Signal Processing 82 (2002) 961 – 969
967
Fig. 5. Probability of error performance for the adaptive DS-CDMA receiver using the RMGS algorithm with eight-interferers.
Fig. 6. Comparison of the output SNR for the adaptive DS-CDMA receiver using NLMS and RMGS algorithms with di
968
A.I. Hassan, D.K. Mehra / Signal Processing 82 (2002) 961 – 969
Fig. 7. Probability of error performance for the desired user as a function of the second user’s power relative to the desired user, at input SNR 10 and 12 dB for the NLMS and RMGS algorithms.
the RMGS algorithm, is shown in Fig. 5, along with the upper and lower bounds. Theoretical values of the probability of error based on Gaussian approximation to the interference plus noise inherited in the desired signal [6] is also provided. It may be seen that the values obtained by simulation match the theoretical values. The number of users, i.e. the capacity, which an adaptive DS-CDMA system can support, is limited by the residual MSE [7]. The capacity of the DS-CDMA receiver is determined by plotting SNR out as a function of the number of users and the input SNR as a parameter. The input signal to noise ratio (SNR in ) is de0ned by SNR in = 10 ∗ Log10
"d2 ; "2
(12)
where "2 is the AWGN variance and "d2 is the power of the desired user symbol (equal to 1). The output
signal to noise ratio (SNR out ) is de0ned by SNR out = 10 ∗ Log10
"d2 ; #
(13)
where # is the residual MSE. Fig. 6 shows the output, SNR out , for an adaptive CDMA receiver using the RMGS and NLMS algorithms for the situation when SNR in is 50 or 30 dB. It is clear that the RMGS algorithm performs better than the NLMS algorithm, the performance of which degrades faster as the number of users increase. For SNR out = 30 dB the RMGS algorithm can support about 21 users compared to 13 users for the NLMS at the value of SNR in = 50 dB. In order to demonstrate the near-far resistance of the proposed receiver, the probability of error has been plotted (Fig. 7) for the desired user, when the value of SNR in = 10 or 12 dB, as a function of the power level of second user relative to that of the 0rst user. The plot shows that the probability of error is una
A.I. Hassan, D.K. Mehra / Signal Processing 82 (2002) 961 – 969
level of the interference power, which demonstrates the near–far resistance of the receiver. 5. Conclusions A recursive modi0ed Gram–Schmidt algorithm for interference suppression in DS-CDMA systems has been presented. It is shown by simulation that the RMGS-based receiver is near–far resistant, more stable and provides improved numerical accuracy compared to the conventional RLS algorithm. The computational complexity of this algorithm is shown to be lower than that of the RLS [3], QRD and the inverse QRD [1] algorithms. Moreover, the RMGS algorithm has a highly modular structure suitable for parallel implementations over systolic array. Using N -parallel processors, the RMGS algorithm will reduce the computational complexity to O(N ) per processor, i.e., linear in the 0lter length. The attractive features of this algorithm over the LMS algorithm are also provided in terms of increase in capacity.
969
References [1] S.T. Alexander, A.L. Ghirnikar, A method for recursive least squares 0ltering based upon an inverse QR decomposition, IEEE Trans. Signal Process. 44 (January 1993) 20–30. [2] E. Eleftheriou, D.D. Falconer, Tracking properties and steady state performance of RLS adaptive algorithms, IEEE Trans. Acoust. Speech Signal Process. 34 (October 1986) 1097–1110. [3] S. Haykin, Adaptive Filter Theory, Prentice-Hall, Englewood Cli