Iterative Multiuser Detection for Convolutionally

0 downloads 0 Views 140KB Size Report
non-coherent receivers with differential modulation both out- ... Coherent and non-coherent itera- .... The non-coherent SISO multiuser detector is based on.
ITERATIVE MULTIUSER DETECTION FOR CONVOLUTIONALLY ENCODED CDMA WITH DIFFERENTIAL MODULATION Yi Wu, Teng Joon Lim Department of Electrical and Computer Engineering, University of Toronto, 10 King’s College Road, M5S 3G4, Toronto, Ontario, Canada, {wuy, limtj}@comm.utoronto.ca

Abstract - This paper explores the use of differential modulation as a rate-1 recursive code to improve performance in an iterative (or turbo) CDMA receiver in a convolutionally encoded system. We would expect an interleaver gain from the recursive nature of the differential encoder, and indeed such a gain over an absolutely encoded CDMA system is easily demonstrated through simulations. The iterative receiver proposed consists of an additional soft-input softoutput (SISO) differential decoder, when compared to turbo multiuser detectors for absolutely modulated systems. Algorithms for iterative decoding with and without phase information at the receiver are developed. The resulting coherent and non-coherent receivers with differential modulation both outperform coherent receivers with absolute modulation at moderate to high signal to noise ratios. Keywords - Code division multi-access, convolutional codes, turbo decoding, multi-user detection, differential modulation, non-coherent demodulation. I. I NTRODUCTION The iterative or turbo decoding principle has been applied to multiuser detection (e.g. [1]), by viewing the code-division multi-access (CDMA) channel as an inner encoder, and the forward error control (FEC) encoders at each transmitter as outer encoders. Interleavers are commonly inserted after FEC encoding in practice, with or without turbo decoding, and therefore the coded CDMA system is effectively a serially concatenated coding structure. In turbo decoding, it is well known that a recursive inner encoder results in a so-called interleaver gain, which is not seen when a non-recursive inner encoder is used. Hence the performance of a system with a recursive inner encoder is expected to be superior to that of a system with a non-recursive one, for a given code rate and number of turbo iterations. In turbo multiuser detection, a coherently modulated (or absolutely encoded) CDMA system is equivalent to a nonrecursive inner encoder but a differentially encoded system (such as one employing binary differential phase shift keying (DPSK) instead of binary PSK) is recursive. Therefore the use of differential modulation in place of coherent modulation may lead to significant performance improvements with little additional complexity at the transmitter. In this paper, we present iterative multiuser detection for convolutionally and differentially encoded multiuser systems

0-7803-7589-0/02/$17.00 ©2002 IEEE

in synchronous AWGN channels with known and unknown phase. The transmitter in this system can be treated as the concatenation of three component encoders: “CDMA channel encoder”, differential encoder and convolutional encoder. Correspondingly, we can construct an iterative receiver consisting of three serially concatenated soft-input soft-output (SISO) component decoders, with reliability information exchanged between them. Coherent and non-coherent iterative detectors for a convolutionally and differentially encoded multiuser system in AWGN channels are presented. The coherent detector is useful for providing comparisons with absolutely encoded systems. The rest of the paper is organized as follows. In Section II, we introduce the convolutionally and differentially encoded CDMA model, including the transmitter and the channel. This is followed in Section III by a description of the noncoherent receiver and details on the new receivers. In Section IV , we develop the coherent receiver and corresponding algorithm; while in Section V, we present the algorithm for SISO convolutional decoder. The results of an investigation into the performance of the systems based on computer simulation, their interpretation, and related discussion are given in Section VI. The results show that both receivers are capable of very good performance, with only a slight noncoherence penalty. Furthermore, the power of this class of system is illustrated as they significantly outperform systems of absolutely encoded CDMA with coherent detection. -

-

-

-

-

-

-

-

{u1 } channel {c1 } {b1 } {d1 } spreader diff. interleaver s1 encoder encoder {u2 } channel {c2 } {b2 } {d2 } spreader diff. interleaver s2 encoder encoder

-

·· ·

-

·· ·

-

·· ·

-

·· ·

{bK } diff. {dK } spreader {uK } channel {cK } interleaver sK encoder encoder

Fig. 1. system.

A

n(t)

A H f- r(t) jAU f- ? H ¢¸ ¢ ¢

Block diagram of the coded CDMA transmission

II. S YSTEM M ODEL We consider a synchronous CDMA system of K users with binary DPSK modulation, signaling through an AWGN channel. The block diagram of the transmitter of such a system

PIMRC 2002

is shown in Fig. 1. The binary information data uk (n) for user k, k = 1, ..., K, are convolutionally encoded with code rate Rk . A code-bit interleaver is used to reduce the influence of error bursts at the input of each channel decoder. The interleaved code-bits of the kth user are passed through a binary differential encoder. The relation between the input data bits and output data bits of the differential encoder can be expressed as: dk (i) = bk (i)dk (i − 1) (1) where both the differential data bits dk (i) and actual data bits bk (i) are elements of {−1, +1}. The differential encoder is assumed to start at the reference bit dk (0) = −1. Each data symbol dk (i) is then modulated by a spreading waveform sk (t), and transmitted through the AWGN channel. The received baseband equivalent complex signal r(t) can, therefore, be expressed as r(t) =

N X K X

ak (i)dk (i)sk (t − iT ) + n(t)

(2)

i=0 k=1

where N + 1 is the number of code bits per user per frame, T is the symbol interval, ak (i) = exp(jθk ) and sk (t) denote, respectively, the channel coefficients and normalized signaling waveform of the kth user, n(t) is a zero-mean complex white Gaussian noise process with variance σ 2 . It is assumed that sk (t) is supported only on the interval [0, T ] and has unit energy. The phase error θk is uniformly distributed over [0, 2π) and assumed to remain constant over one frame. For this synchronous case, a sufficient statistic for demodulating the ith code bits of the K user is given by the K-vector y(i) whose kth component is the output of a filter matched to

¾ y1 (i)

-

y1p (i)

matched

yk (i)

6

- i Λ1 [b1 (i)] −

6

(i+1)T

=

sk (t − iT )r(t) dt

-

filter

-

This sufficient statistic vector y(i)can be written as y(i) =

R A d(i) + n(i)

MAI

·· · bank

canceller yK (i)

-

y2p (i)

6

- i Λ1 [b2 (i)] −

6

·· ·

¾ -

III. N ON -C OHERENT R ECEIVER The non-coherent SISO multiuser detector is based on multi-access interference (MAI) cancellation, while the coherent detector uses a maximum a posteriori (MAP) algorithm. The block diagram of the non-coherent iterative receiver is given in Fig. 2. As can be seen from Fig. 2, the receiver is made up of three parts: a joint soft-decision interference canceller, a single-user SISO DPSK decoder bank and a single-user SISO convolutional decoder bank. The interference canceller is derived by first rewriting (4) as y(i) = A d(i) + (R − I)A d(i) + n(i),

bit deint.

p yK (i)

bit deint.

λ1 [bK (i)]

6

- i Λ1 [bK (i)] −

6

Fig. 2. Block diagram of the noncoherent iterative receiver structure.

(5)

where the second term on the right-hand side represents MAI. The interference canceller estimates and removes the MAI at

λ1 [c1 (n)]

λ1 [c2 (n)]

·· ·

SISO DPSK decoder

(4)

where R denotes the normalized cross-correlation matrix of the signal set {sk }k=1,...,K , i.e. [R]k,l = ρk,l = RT sk (t)sl (t) dt; A = diag (a1 (i), ..., aK (i)); d(i) = 0 [d1 (i), ..., dK (i)]T , and n(i) ∼ N (0, R) is a Gaussian noise vector, independent of d(i).

λ1 [b2 (i)]

SISO DPSK decoder

(3)

iT

Λ2 [u1 (n)] SISO conv. decoder

-

? - i−

-

Λ2 [c1 (n)] λ2 [c1 (n)]

soft

y2 (i)

-

Z

λ1 [b1 (i)]

SISO DPSK decoder

¾ r(t)

sk (t) in the ith code bit interval, i.e.,

bit deint.

λ1 [cK (n)]

λ2 [b1 (i)]

Λ2 [u2 (n)] SISO conv. decoder

-

? - i−

-

Λ2 [c2 (n)] λ2 [c2 (n)]

·· · -

bit interl.

bit interl. λ2 [b2 (i)]

·· · Λ2 [uK (n)]

SISO conv. decoder

-

? - i−

-

Λ2 [cK (n)]λ2 [cK (n)]

bit interl. λ2 [bK (i)]

each iteration, with the help of bit decisions from the previous iteration. This is done by noting that A d(i) = A B(i)d(i − 1) = B(i)A d(i − 1)

(6)

where B(i) = diag(b1 (i), ..., bK (i)). Therefore if z(i) is an estimate of A d(i), we have z(i) ≈ B(i)z(i − 1).

(7)

By averaging over two symbol intervals, the MAI component (R − I) Ad(i) within y(i) at the pth iteration can be obtained as [2] ³ ´ 1 ˜ p−1 (i)z(i − 1) mp (i) = (R − I) z(i) + B (8) 2 ³ ´ ˜ p−1 (i) = diag ˜bp−1 (i), . . . , ˜bp−1 (i) is the tentawhere B 1 K tive decisions of B(i) from the (p − 1)th iteration, which can be expressed in terms of the LLRs Λp−1 [bk (i)], obtained from 1 the SISO DPSK decoder at the (p − 1)th iteration, as ˜bp−1 (i) = k =

E {bk (i)} µ ¶ 1 p−1 tanh Λ1 [bk (i)] . 2

=

where (10) follows from using (1) and z(i) = R−1 y(i). Noting that n(i) and n(i − 1) are independent, if we assume the ˜ p−1 (i) = tentative decision for all users are correct, i.e. B B(i), y p (i) can be rewritten as ¢ 1 ¡ −1 R + I n(i) 2 ¢ 1¡ − I − R−1 B(i)n(i − 1) 2 Ad(i) + n0 (i)

= p {ykp (i)| dk (i), ak (i)} ½ ¾ 1 1 p 2 =p exp − |y (i) − dk (i)ak (i)| (14) 2(σkp )2 k 2πσk2 σkp

(9)

y(i) − mp (i) 1 1 ˜ p−1 (i)Ad(i − 1) (R + I)Ad(i) − (R − I)B 2 2 1 + (R−1 + I)n(i) 2 ¢ p−1 1¡ ˜ (i)n(i − 1) (10) − I − R−1 B 2

y p (i)

p{ykp (i)|bk (1), ..., bk (i), dk (0), ak (i)}

with

Note that z(i) at every iteration is the decorrelator output R−1 y(i), since that would be close to Ad(i) at moderate SNRs, and does not require phase information. The MAI-cancelled signal at the pth iteration is y p (i) =

where 0 in (12) is the K × 1 all-zero vector. So we can deliver the new MAI-cancelled version of the matched filter outputs y p (i) to SISO DPSK decoder for next iteration, and approximate the noise term in y p (i) as N (0, σ 2 (R + R−1 )/2 ) Gaussian noise. K single-user SISO DPSK decoders calculate the a posteriori LLRs of the input bits of the differential encoder for every user, denoted by Λ1 [bk (i)], and in doing so compensate for the carrier phase error. To fulfil this goal, we have to get the probability density function (pdf) of the MAI-cancelled signal for each individual user conditioned on each user’s data bit and channel coefficient. By using (6), (11), (12), (13) and disregarding the correlation of the noises between all users at time i, the pdf of the MAI-cancelled signal for each individual user at pth iteration can be written as

if p = 1 if p > 1

p(ykp (i)|bk (N ), y pk (i − 1)) ≈ p(ykp (i)|bk (i − Z + 1), . . . , bk (i), ykp (i − Z), . . . , ykp (i − 1)) ³ = Fk (i)

I0

1 2 σk

¯ ¯´ ¯ p ˆ k (i) exp{jπbk (i)}¯¯ ¯yk (i) + h ¯´ ³ ¯ ¯ˆ ¯ I0 σ12 ¯h k (i)¯

(15)

k

(11)

with

0

where the mean and covariance of n (i) can be computed as µn0 (i) = 0 Rn0 (i) = E[n0 (i)n0 (i)T ] ¢ σ2 ¡ R + R−1 = 2

q σ R−1 k,k q =  √σ R + R−1 k,k k,k 2

and Rk,k and R−1 k,k denote the kth diagonal elements of R −1 respectively. The dependence on the unknown and R ak (i) in (14) can be removed by integrating over the pdf of ak (i) to obtain p(ykp (i)|bk (0), . . . , bk (N )). Letting y pk (i) denote the vector [yk (0), . . . , yk (i)], and bk (i) be the vector [bk (0), . . . , bk (i)], we can find p(y pk (i)|bk (N )) as a product of p(ykp (i)|bk (N )) terms, based on the independence of the additive Gaussian noise in ykp (i) over time. Finally, by Bayes’ Rule we can obtain an expression for the conditional pdf p(ykp (i)|bk (N ), y pk (i − 1)) necessary in a MAP decoding algorithm (such as [4]). However, computing p(ykp (i)|bk (N ), y pk (i − 1)) requires i−1 2 operations, and it is desirable to reduce the complexity of this operation by making the approximation [3]

= Ad(i) +

=

 

(12)

(13)

ˆ k (i) = h

Z X z=1

( ykp (i

− z) exp jπ

z−1 X

) bk (i − n)

(16)

n=1

where Fk (i) is a quantity that does not depend on (bk (i − Z + 1), ..., bk (i)) and I0 (·) is the modified Bessel function of order zero. From (16) we know that there are 2Z−1 different

ˆ k (i) with respect to the set of all binary (Z − 1)values of h tuples (bk (i − Z + 1), ..., bk (i − 1)). As such, we can construct a trellis structure with the state at time i as Sk (i) = (bk (i − Z + 1), ..., bk (i − 1)), the state transition matrix ST [Sk (i), bk (i)] = Sk (i + 1) and the “output symbol” generation matrix OS[Sk (i), bk (i)] = ((bk (i − Z + 1), ..., bk (i)). If we set the window size Z to be small (Z = 5 has been suggested), then the difference in complexity between the exact expression and its approximation is considerable. With this trellis structure, branch metrics (15) and extrinsic information λp−1 [bk (i)] from the SISO convolutional de2 coder, we can use the standard APP algorithm described in [4] to implement a noncoherent SISO DPSK decoder for each user. While the LLRs of the data bits entering the differential encoder, i.e. Λp1 [bk (i)], is fed back to the soft MAI canceller, the extrinsic information λp1 [bk (i)] is fed forward to corresponding SISO convolutional decoder.

(p−1)th iteration. For the first iteration, we have λ01 [dk (i)] = 0, i.e., no prior information. Then the extrinsic information λp0 [dk (i)] = Λp0 [dk (i)] − λp−1 [dk (i)] is fed into the kth user’s 1 SISO DPSK decoder as the a priori information in the next iteration. K single-user coherent SISO DPSK decoders calculate the a posteriori LLRs of the input and output bits of the differential encoder, denoted respectively, Λ1 [bk (i)] and Λ1 [dk (i)]. Since differential encoding can be viewed as rate-1 recursive convolutional encoding, the APP algorithm in [4] can be used directly to calculate these a posteriori LLRs. While the extrinsic information λp1 [dk (i)] = Λp1 [dk (i)] − λp−1 [dk (i)] 0 are fed back to the SISO multiuser detector as the a prior information in the next iteration, the extrinsic information λp1 [bk (i)] = Λp1 [bk (i)]−λp−1 [bk (i)] are delivered to kth dein2 terleaver. The interleaved extrinsic information, denoted by λp1 [ck (n)], is then fed to the SISO convolutional decoder as the a priori information in the next iteration.

IV. C OHERENT R ECEIVER V. SISO C ONVOLUTIONAL D ECODER

When coherent demodulation is employed, there is no carrier phase error affecting the received samples. The structure of a coherent iterative receiver for the coded DPSK multiuser system is also made up of three parts: a SISO multiuser detector, single-user coherent SISO DPSK decoder bank and single-user SISO convolutional decoder bank. Although it has a structure similar to the non-coherent decoder, the algorithms used here are quite different from the non-coherent decoder’s. The purpose of the SISO multiuser detector is to calculate the a posteriori LLR of each coded bit of each user, denoted by Λ0 [dk (i)], which is needed by coherent SISO DPSK decoder. Under the assumption of coherent demodulation, we can rewrite (4) as

The SISO convolutional decoders of noncoherent and coherent receiver, which decodes convolutional code, also makes use of the APP algorithm in [4]. With the extrinsic information λ1 [ck (n)] from the SISO DPSK decoder, it calculates the a posteriori LLRs of the input and output bits of the convolutional encoder, denoted respectively by Λ2 [uk (n)] and Λ2 [ck (n)]. While Λ2 [uk (n)] is delivered to the decision unit to get information bit decision at the last iteration according to u ˆk (n) = sgn(Λ2 [uk (n)]), the extrinsic information λ2 [ck (n)] = Λ2 [ck (n)] − λ1 [ck (n)] is fed into the kth user’s SISO DPSK decoder as the a priori information in the next iteration.

y(i) = Hd(i) + n(i)

VI. S IMULATION R ESULTS

(17)

where H = RA is assumed to be known at the receiver. Defining the two sets of vectors Dk+ = {(d1 , ..., dk−1 , +1, dk+1 , ..., dK )T : dj ∈ {−1, +1}, j 6= k}, Dk− = {(d1 , ..., dk−1 , −1, dk+1 , ..., dK )T : dj ∈ {−1, +1}, j 6= k} and using (17), the a posteriori LLR of dk (i) at the pth iteration can be calculated as ÃP ! + Γk (d) 2yk (i) d∈Dk p p−1 Λ0 [dk (i)] = λ1 [dk (i)] + + log P − Γk (d) σ2 d∈Dk (18) where iY£ h ¢¤ ¡ 1 + dj tanh yj (i)/σ 2 Γk (d) = exp −dT Hd/2σ 2 Y· j6=k

j6=k

1 + dj tanh

µ

¶¸ 1 p−1 λ [dj (i)] 2 1

and λp−1 [dk (i)] denotes the a priori LLR of the code bit 1 dk (i), which comes from the SISO DPSK decoder at the

The following system parameters were used in the simulation. There are 4 users in the system, where all users have equal power and employ the same rate 1/2 constraint length convolutional code with generator G(23, 35). Each user uses its own random interleaver. The same set of interleavers are used for all simulations. The block size of the information bits for each user is N = 512. The noncoherent SISO DPSK decoder use Z = 3 previous samples to estimate unknown phase error. Simulations were performed on the K-symmetric channel characterized by a cross-correlation matrix given by   1 ρ ··· ρ  ρ 1 ··· ρ    R= . (19)   .. · · · 1 ρ  ρ

···

ρ

1

where ρ is referred to as the cross-correlation parameter. We consider coherent receiver first. The results are plotted in Fig. 3 for ρ = 0.3. Also shown is the performance of the convolutionally encoded, coherently demodulated multiuser

0

tiuser system with five iterations. As can be seen from Fig. 4, the convolutionally and differentially encoded CDMA with iterative noncoherent demodulation still have 1.0dB gain with respect to convolutionally encoded CDMA with iterative coherent demodulation at BER = 10−5 .

10

−1

10

Bit Error Rate (BER)

iteration 1

−2

10

VII. C ONCLUSION

−3

2

10

−4

3

10

4 convolutionally coded with 5 iteration differentially and convolutionally coded

−5

10

0

0.5

1

1.5

2

2.5 Eb/No(dB)

5 3

3.5

4

4.5

5

Fig. 3. Performance of coherently demodulated iterative multiuser system with ρ = 0.3, K=4 and an equal power for all users. system with 5 iterations. As can be seen from Fig. 3, the convolutionally and differentially encoded CDMA with iterative coherent demodulation actually outperforms convolutionally encoded CDMA with iterative coherent demodulation by 1.8 dB at BER = 10−5 . It is actually a very positive reflection on the power of serially concatenated codes with recursive inner code, which have a so-called interleaver effect. 0

10

−1

iteration 1

Bit Error Rate (BER)

10

−2

2

10

−3

3

10

coherent demodulation −4

4

10

convolutionally coded with 5 iteration convolutionally with 5 iterationcoded differentialllycoded and convolutionally differentiallly and convolutionally coded

−5

10

0

0.5

1

1.5

2

2.5 Eb/No(dB)

5 3

3.5

4

4.5

5

Fig. 4. Performance of noncoherently demodulated iterative multiuser system with ρ = 0.3, K=4 and an equal power for all users. The same surprising performance found with coherent receiver also extends to noncoherent receiver. Results are shown in Fig. 4 for ρ = 0.3. Also shown is the performance of the convolutionally encoded, coherently demodulated mul-

In this paper, we proposed two detectors for convolutionally and differentially encoded CDMA system, one for use with coherent demodulation and the other for noncoherent demodulation. These two detectors are iterative decoders for a three-stage serially concatenated system of convolutional code, differential code and CDMA channel. At each iteration, extrinsic information is extracted from each component decoder and is then used as a priori information in the next iteration, just as in turbo decoding. Simulation results show that the convolutionally and differentially encoded CDMA system can perform better than a convolutionally encoded CDMA system when coherent demodulation is used. With non-coherent demodulation, the performance gain is smaller, but the interleaver gain obtained from the recursive nature of differential encoding is very much evident. R EFERENCES [1] H. V. Poor, “Turbo multiuser detection: A primer”, J. Communications and Networks, vol. 3, pp. 196-201, September 2001. [2] C. J. Hegarty and B. Vojcic, “Two-stage multiuser detection for noncoherent CDMA”, in Proc. 33rd Annual Allerton Conf. Comm., Control, Computing, Monticello, IL, pp. 132-136, October 1995. [3] I. D. Marsland and P. T. Mathiopoulos, “On the Performance of Iterative Noncoherent Detection of Coded MPSK Signals”, IEEE Trans. Commun., vol. 48, pp. 588596, April 2000. [4] S. Benedetto, D. Divsalar, G. Montorsi, and F. Pollara, “A soft-input soft-output APP module for iterative decoding of concatenated codes”, IEEE Comms. Letters, vol. 1, pp. 22-24, Jan. 1997.