Differential Turbo Coded Modulation over Unsynchronized Channels Sheryl Howard Dept. of Electrical Engineering University of Utah Salt Lake City, UT 84112 email:
[email protected]
Christian Schlegel Dept. of Electrical Engineering University of Alberta Edmonton, AB Canada T6G 2G7 email:
[email protected] Fan Jiang Dept. of Electrical Engineering University of Nebraska-Lincoln Lincoln, NE 68588 email:
[email protected]
ABSTRACT A simple serially concatenated turbo code using differential 8PSK modulation as the inner code and a [3,2,2] parity code as the outer code is studied. This inner code allows for noncoherent operation, but is decoded coherently according to turbo principles with iterative exchange of extrinsic probabilities. Results show a turbo cliff at 4.4 dB, about 1.5 dB away from the 8PSK channel capacity. Detection of these codes on channels without prior synchronization is demonstrated to be feasible even with significant phase offset.
Lance P´erez Dept. of Electrical Engineering University of Nebraska-Lincoln Lincoln, NE 68588 email:
[email protected]
coding [2], [3] is applied to decode the received signal. Iterative decoding has been applied to a serial concatenation of an 8-state, rate 2/3 convolutional code and regular 8-PSK modulation, using hard decision decoding with the Viterbi algorithm in [4]. Differential QPSK modulation, concatenated with a convolutional code, has been decoded iteratively with differential demodulation over multiple symbols in [5]. Differential BPSK modulation, and double differential encoding (DDE), serially concatenated with a rate 1/2 convolutional code, is considered in [6] using coherent detection.
KEY WORDS differential turbo coded modulation, channel estimation
Differential modulation has also been applied to space-time coding [7] and used with serial concatenation of error-control coding with excellent performance results in [8].
1 Introduction
In this paper, we look at an efficient yet simple serially concatenated system consisting of a [3,2,2] parity check code as the outer code and differential 8PSK modulation as the inner code. This system is decoded iteratively according to turbo principles, without using differential demodulation. It provides excellent results, with a turbo cliff only 1.5 dB away from capacity. A specially designed 8PSK mapping is also presented which reduces the error floor w.r.t. natural mapping.
Coherent detection assumes perfect knowledge of the carrier phase at the receiver. Under coherent detection, if the received phase is rotated from the transmitted phase due to channel or local oscillator noise, the received signal will, for phase rotation beyond the symbol decision boundary, not decode to the correct codeword. Differential encoding is the generic method used for signalling if the receiver does not use channel information, i.e., phase synchronization. Differential encoding combines the current M -PSK symbol with the previous transmitted symbol to generate the current transmitted DPSK symbol. Thus the information is contained in the phase difference between two symbols. Differential demodulation of such signals incurs a nearly 3 dB loss in SNR with respect to BER for M > 2 [1]. However, differentially encoded signals may still be coherently detected, which recovers most of the SNR penalty paid. Differential turbo coded modulation concatenates an error-control code with a differential PSK encoder which serves as the inner modulation code. Iterative (turbo) de-
The paper is organized as follows: Section II describes the serially concatenated parity code/differential 8PSK modulation system, from both the encoding and decoding perspective. Section III examines the distance spectrum of this system, explaining the high error floor as well as how to improve it. Section IV discusses EXIT analysis of these respective codes. Section V describes a method of obtaining channel estimates when the system operates non-coherently, without channel information. Section VI presents simulation results, comparing those with EXIT analysis predictions. Conclusions are discussed in Section VII.
2 System Description: Modulation
Differential 8PSK
Pa (w) y
A simple [3,2,2] parity check code is used as a rate 2/3 outer code, serially concatenated with differential 8PSK encoding as the inner code. Figure 1 displays the encoding system. A sequence of information bits u = [u0 , . . . , uL−1 ] of length L is encoded through the [3,2,2] parity code into a sequence of coded bits v = [v0 , . . . , v 3L −1 ] of length 3L 2 . The 2 coded bits v are then bitwise interleaved. These interL 0 leaved bits √ v jθare mapped to 2 8PSK symbols w where k wk = Es e . The naturally mapped 8PSK symbols w = [w0 , . . . , w L −1 ] serve as input to the differential en2 coder. This system has a rate of 2 bits/symbol.
u
[3,2,2] Parity Encoder
v0
v Interleaver
(010) (011)
(001) (000)
(101)
(111) (110)
× D
Figure 1. Serial Turbo Encoder for Differential Turbo Coded Modulation
Differential modulation consists of multiplying the current input symbol wr with the previously transmitted symbol xk−1 to obtain the current transmitted symbol xk = xk−1 wk . We begin the process by initializing x−1 = 1 so that x0 = w0 . The differentially modulated 8PSK symbols x = [x0 , . . . , x L −1 ] are then transmitted across an AWGN 2 channel with noise variance N0 /2 in each dimension. The received symbols y = [y0 , . . . , y L −1 ] consist of the trans2 mitted symbols plus complex noise with variance N0 . We view the differential encoder as an inner code of the serially concatenated system. It can be seen as a recursive non-systematic convolutional code, with a regular and fully-connected trellis. For now, we assume that the received channel phase is known. Decoding of the serially concatenated system proceeds iteratively according to turbo decoding principles. Figure 2 displays the decoding process. The received channel symbols y are converted into channel metrics 2 1 e(−|yk −xk | /N0 ) which are fed into the p(yk |xk ) = √πN 0 APP decoder 1 for the differential code, along with a priori information on the 8PSK symbols w coming from APP decoder 2. In the first iteration, APP decoder 1 has no a priori information available from decoder 2, and the a priori values are set to uniform; Pa (wk = e(j2lπ/M ) ) = 1/M, ∀ l = 0, . . . , M − 1.
Interleave Combine
Pe (v)
APP 2 [3,2,2] Parity SoftOutput Decoder
÷
Deinterleave Marginalize Pa (v) Pe (w) div
Figure 2. Serial Turbo Decoder for Differential Turbo Coded Modulation
Differential Modulator (100)
APP 1 D8-PSK SoftOutput Decoder
x
Using the BCJR [11] (forward-backward) algorithm, APP decoder 1 calculates symbol probabilities on both the 8PSK symbols w and the transmitted D8PSK symbols x, and the 8PSK symbol probabilities on w are passed on to APP decoder 2. Extrinsic probabilities are first found by dividing out the corresponding a priori symbol probabilities Pa (wk = e(j2lπ/M ) ) and then normalizing such that the extrinsic symbol probabilities sum to one. P (wk ) Pe (wk ) = α , α= Pa (wk )
M −1 X l=0
P (wk = l) Pa (wk = l)
!−1
(1)
These extrinsic symbol probabilities now must be converted to bit probabilities before being deinterleaved, as the interleaver works bitwise. This is done through marginalization, i.e. Pe (vi0 = 0) =
X
Pe (w(v10 , v20 , v30 ))
(2)
w,vi0 =0
The bit probabilities Pe (v 0 ) are now deinterleaved and fed into APP decoder 2 as a priori bit probabilities Pa (v). The [3,2,2] parity code is simple enough that its APP decoder can be implemented as 6 equations, giving extrinsic probabilities of the form Pe (v1 = 1) ∝ Pa (v2 = 0)Pa (v3 = 1) + Pa (v2 = 1)Pa (v3 = 0)
(3)
and analogously for v1 = 0, v2 and v3 . The bit probabilities are then interleaved to provide a priori bit probabilities Pa (v 0 ), which are converted back to symbol probabilities Pa (w) for the next iteration of the modulation APP decoder 1. The probability of a symbol is simply the normalized product of its component bit probabilities, Pa (w(v1 , . . . , vm ) = α
m Y
Pa (vi )
(4)
i=1
Iterative decoding continues in this fashion, with APP decoders 1 and 2 exchanging extrinsic probabilities until convergence is reached.
3 Distance Spectrum Analysis As mentioned earlier, the trellis of a differential 8PSK encoder is fully-connected and the shortest error event is thus only 2 branches long. Since error events in this trellis always have the same symbol on the remerging branch, the minimum squared Euclidean distance (MSED) of the two branch error events may be 0.586. With unconstrained input sequences to the encoder, or, equivalently, no outer code, the MSED of DPSK is always 0.586. In the system considered here, the input sequences are constrained to be the codewords of the outer [3, 2, 2] parity-check code which can increase the MSED of the concatenated code. Analysis and experimentation has shown that the concatenated system has a MSED of 1.172 assuming naturally mapped 8PSK and random interleaving with very high probability. This result is independent of interleaver length. Consequently, this system is expected to manifest a clear error floor and simulation results do indeed show an error floor corresponding to weight 1.172 codewords. One reason the outer parity code yields such a modest increase in MSED is that the constrained sequences are poorly matched to naturally mapped 8PSK. That is, the codewords of the [3, 2, 2] parity-check code are simply all sequences with even Hamming weight. For naturally mapped 8PSK, the seven possible input labels of the 2-branch error events are given below. 0 1 0 1 0 1 1
0 1 1 1 1 0 0
1 1 0 0 1 1 0
1 0 1 0 1 0 1
1 0 1 1 0 1 0
1 1 0 0 . 1 1 0
Note that five out of seven of these labels have even weight. Therefore, there is a high probability that they are chosen as code words and thus cause low MSED. This suggests that an 8PSK signal mapping that generates odd-weight 2branch error events would be better matched to the outer parity check code. 001 100
111
000 010
011
101 110
Figure 3. An alternative 8PSK signal mapping.
Consider the 8PSK mapping shown in Figure 3. The
input labels of the 2-branch error events are now 1 1 0 1 1 0 0
1 0 0 1 0 1 1
1 1 1 0 0 1 0
1 1 1 0 0 1 0
0 1 1 0 1 0 1
1 1 0 1 1 0 0
There is now only one even-weight label, (010010), and it generates an error event with a squared Euclidean distance (SED) of 4.000. The error events with labels (111101) and (101111) have a SED of 0.586, but since they are caused by odd weight sequences they cannot be codewords in the concatenated code. Of course, two odd weight error events may be caused by an even weight sequence. Distance spectrum analysis and simulation results indicate that this is very rare and random interleavers result in codes with MSEDs of 2.344 and larger. We thus expect the concatenated system with the new mapping to have a larger MSED and thus a lower error floor, but with a slower onset of the waterfall region.
4 EXIT Analysis Turbo coded systems can be analyzed very elegantly by a method known as EXIT analysis [12], [13]. The reliability of the extrinsic soft information generated by each component decoder is measured by the mutual information I(X; E) between the extrinsic information E and actual symbols x associated with that soft information. Likewise, the reliability of the a priori information A into the same decoder is measured by I(X; A). Plots of I(X; A) versus I(X; E), known as extrinsic information transfer (EXIT) charts, can be used to study the convergence behavior of iterative decoding systems. Mutual information is unchanged by the interleaving process; interleaving scrambles the symbols but leaves the distribution unchanged. Furthermore, the interleaver destroys any correlation between successive symbols. Using this separation assumption, the component decoder EXIT charts may be combined into a single EXIT graph which accurately describes the behavior of the iterative turbo decoding process. The outer parity decoder produces soft information pe (v) and pa (v) on the bitlevel, which are processed as LLRs E2 and A2 . Since the inner differential code operates on 8PSK symbols, pe (w) and pa (w) must be converted from the interleaved bit probabilities p(v 0 ). Figure 4 shows the EXIT chart for our system using the differential 8PSK as the inner code (IA1 = I(X; A1 ) on the horizontal axis and IE1 = I(X; E1 ) on the vertical axis) and the [3,2,2] parity check code as the outer code, with the axes swapped. The inner decoder information
transfer curves are dependent on the SNR and are shown for selected SNR values. The significant advantage of EXIT analysis is that the turbo decoder performance near the ’turbo cliff’ region may be predicted without running simulations of the complete turbo decoder; EXIT transfer curves are obtained for each individual decoder. Ie 1
where E[xk ] is taken to be the expectation over the a posteriori symbol probabilities at time k. A channel estimate may be found as ˆ k = yk xˆ∗ h (6) k where x ˆk is the empirical mean, modified to unit modulus, i.e., |ˆ x| = 1, according to P (x) generated by APP decoder 1 from a previous iteration. Figure 5 shows the iterative decoding process with channel estimation.
Dashed: Differential 8PSK
Pa (w)
0.8 y 0.6 0.4
4.4dB 4dB ˆ h
Parity 0.2
ˆ∗ yx
0
Ia 0 0.2 0.4 0.6 0.8 1 Figure 4. Extrinsic information transfer (EXIT) chart for serial concatenation of a [3,2,2] parity check code with a differential 8-PSK code.
From Figure 4, we see that the turbo threshold occurs around 4.4 dB where a narrow iteration channel exists. This conclusion is supported by simulation results shown in Figure 8. The narrow iteration channel provides for only minimal error rate improvement with each iteration, and thus a large number of iterations are required in the turbo cliff region to reach convergence.
5 Decoding Without Channel Information Let us now consider the case when the received channel phase is unknown and we are operating without channel information. The differential outer code allows the receiver to extract soft information on the symbols w even in the absence of channel knowledge. APP decoder 1 generates extrinsic input symbol probabilies P (wk ), as well as extrinsic output symbol probabilities P (xk ) which will be used to feed a channel estimator for use in the following iteration. This channel estimator must be of low complexity so as not to overwhelm the system and is discussed below. An optimal linear estimator such as the minimum mean square error (MMSE) estimator is therefore not feasible and a simpler filtering estimator is considered [8]. Assuming the channel model to be yk = hk xk + nk , where hk is a complex time-varying gain, we find from the first moment equation E[yk ] = hk E[xk ]
(5)
Interleave Combine
APP 1 D8PSK SoftOutput Decoder
div
Pe (w) Pe (x)
Pe (v) ÷
Deinterleave Marginalize Pa (v)
APP 2 [3,2,2] Parity SoftOutput Decoder
E[xk ] |E[xk ]|
Figure 5. Iterative decoding with channel estimation
APP decoder 1 sends its extrinsic Pe (w) to APP decoder 2 and APP 2 generates a priori Pa (w|y) for use in the ˆ is used to calculate next iteration. The channel estimate h coherent channel metrics for APP 1 in the next iteration. ˆ k |2 (7) P (yk |xk ) ∝ exp −|yk − hx
Each iteration improves the extrinsic values P (x) from ˆ can be APP 1, and thus an improved channel estimate h recalculated at each iteration.
An EXIT chart of the differential 8PSK decoder operating with various phase offsets is shown in Figure 6 for SNR=5 dB. The decoder clearly provides a sizable amount of extrinsic information even when no a priori information is available. Even for φ = π/8 radians offset, the worst case offset between two symbols, there is some extrinsic information, although the decoder is unable to improve on that for this SNR value. This initial extrinsic information will allow decoding to begin but, as indicated by the offset phase curve intersection with the parity curve in Figure 6, will get stuck at an intermediate point which does not correspond to reliable decoding. However, this extrinsic information can be used to form an initial channel estimate, which, in turn, will allow the decoder to improve the extrinsic information beyond what is possible without the channel estimate. This then improves the channel estimate in the next iteration. As the channel phase estimation improves with iterations, the differential 8PSK EXIT curve with phase offset approaches the coherent curve, allowing for convergence as the phase estimate reaches the correct channel offset. Figure 5 shows simulation results of the channel phase estimation with increasing iterations. A phase offset
tunnel, indicating that convergence will only be reached after a large number of iterations.
EXIT chart: inner d8psk code, 5000 symbols, improved mapping, SNR=5 dB
1 0.9 0.8
I(E inner;x)
Bit Error Probability (BER)
1
0.7 0.6
Differential 8PSK
10−1
0.5 0o phase offset 11.25o phase offset o 22.5 phase offset
0.4
1 Iterations
10−2
0.3
8PSK
3 Iterations
5 Iterations
0.2 0.1
10
−3
10
−4
10 Iterations
0 0
0.1
0.2
0.3
0.4
0.5 0.6 I(A inner ;x)
0.7
0.8
0.9
1
Figure 6. EXIT chart of the differential 8PSK decoder for various phase offsets, SNR=5 dB
15 Iterations 25 Iterations 50 Iterations
10−5 10−6
of π/16 radians can be compensated for with our channel estimation technique in 10 iterations at SNR 4.6 dB.
10−7
Eb N0
3 3.5
4
4.5
5
5.5
6
6.5
7
7.5 8 dB
estimated channel phase [deg]; improved mapping, 5000 symbols
Estimated Channel Phase vs. Iterations, constant phase of 11.25 o , SNR=4.6 dB
12
Figure 8. Performance of the serially concatenated differential 8-PSK system, natural mapping, with an outer parity check code, compared to regular and differential 8-PSK modulation.
10
8
6
4
2
0
5
10
15
20
25
30
35
40
45
50
iteration number
Figure 7. Channel Phase Estimation vs. SNR=4.6 dB
Iterations,
6 Simulation Results Simulation results are provided for both the [3,2,2] parity code/differential 8PSK modulation with natural mapping and with the improved mapping. Figure 8 shows results for the [3,2,2] parity outer code with differential 8PSK modulation as inner code. Natural mapping of the 8PSK symbols is used. A block length of 10000 information bits, corresponding to 5000 transmitted D8PSK symbols, is used. A minimum of 100 errors per SNR point is required for BER calculation. The turbo cliff begins at about 4.3 dB but requires more than 50 iterations to achieve a significant drop in error rate. At 4.4 dB, about 1.5 dB away from the 8PSK channel capacity, which is at about 2.9 dB for R=2 bits/channel use, we see significant turbo effect with 50 iterations. This code requires a large number of iterations in the waterfall region, with BER improvement even after 75 iterations (not shown on plot). EXIT analysis predicts this behavior with a long narrow
Figure 9 shows results for the [3,2,2] parity outer code with differential 8PSK modulation and the improved mapping of 8-PSK symbols. The new mapping lowers the error floor but also increases the SNR of turbo cliff onset. This code also requires a significant number of iterations in the waterfall region, showing slow error rate improvement even above 50 iterations. Simulation results for channel estimation with a constant channel phase offset of π/16 radians are shown in Figure 10. The improved mapping was used for these results. Near-coherent performance is achieved without channel knowledge, using the extrinsic information provided by the differential code to form a simple channel estimate which is improved upon with successive iterations. Notice that the number of iterations to convergence is increased slightly. This is due to the fact that an accurate phase estimate is required for the iterative decoding to begin reducing errors.
7 Conclusions We have shown that a very simple serially concatenated system consisting of a [3,2,2] parity code as outer code and differential 8PSK modulation serving as the inner code provides very good results when decoded iteratively according to turbo principles. This system can be very easily encoded and decoded, and could be used in conjunction with packet
1
10
Differential 8PSK
−1
1 Iteration
10−2
Bit Error Rate; improved mapping
10
8PSK
3 Iterations
5 Iterations
10−3
10 Iterations
10−4
BER for diff 8PSK/parity code scc, phase offset=11.25 o; 5000 symbols
1
Bit Error Probability (BER)
d8PSK322 scc:1 iter. 5 iterations 10 iterations 20 iterations 50 iterations
-1
10 -2 10 -3 10 -4 10 -5
25 Iterations
10 -6
10
−5
10 -7 3 50 Iterations
10−6 10−7
Eb N0
3 3.5
4
4.5
5
5.5
6
6.5
7
7.5 8 dB
Figure 9. Performance of the serially concatenated differential 8-PSK system, improved mapping, with an outer parity check code.
transmission, where short messages increase the need for phase offset immunity. Due to the presence of very lowweight codewords with natural 8-PSK mapping, however, this code has a significant error floor. Altering the mapping to one which provides a better distance spectrum lowers the error floor but shifts the turbo cliff onset to a higher SNR. Near-coherent performance is achieved when operating without channel information using a simple channel estimation technique that utilizes the extrinsic information available from the inner code even with phase rotation. Acknowledgement: Many thanks to Lovisa Bj¨orklund for generating the data for the EXIT chart, and to Alex Grant for helpful discussions.
References [1] J.G. Proakis, Digital Communications, 3rd edition, McGraw-Hill, 1995. [2] C. Berrou, A. Glavieux, and P. Thitimajshima, “Near Shannon limit error-correcting coding and decoding: Turbo codes”, Proceedings of the IEEE International Conference on Communications, Geneva, Switzerland, 1993, pp. 1064-1070. [3] S. Benedetto, D. Divsalar, G. Montorsi, and F. Pollara, “Serial concatenation of interleaved codes: Performance analysis, design, and iterative decoding”, IEEE Trans. on Inform. Theory, 44(3), May 1998, pp. 909-926.
3. 5
4
4. 5 5 5. 5 6 6. 5 SNR=10log10( Eb /N0), Eb =E s /rate
7
7. 5
8
Figure 10. Performance of the serially concatenated code without channel knowledge, phase offset=π/16 rads, using channel estimation
[4] X. Li and J.A. Ritcey, “Bit-Interleaved Coded Modulation with Iterative Decoding”, IEEE Communications Letters, 1(6), Nov. 1997, pp. 169-171. [5] P. Hoeher and J. Lodge, “’Turbo DPSK’: Iterative differential PSK demodulation and channel decoding,” IEEE Trans. on Commun. , 47(6), June 1999, pp. 837843. [6] M. Peleg, I. Sason, S. Shamai, A. Elia, “On interleaved, differentially encoded convolutional codes”, IEEE Trans. on Inform. Theory, 45(7), Nov. 1999, pp. 2572-2582. [7] B.L. Hughes, “Differential space-time modulation”, IEEE Trans. on Inform. Theory, 46(7), Nov. 2000, pp. 2567-2578. [8] C. Schlegel and A. Grant, “Concatenated space-time coding,” IEEE Trans. on Commun. , to appear. [9] C. Schlegel, Trellis Coding, IEEE Press, Piscataway, NJ, 1997. [10] S. Pietrobon, G. Ungerb¨ock, L.C. P´erez and D.J. Costello, Jr. “Rotationally Invariant Nonlinear Trellis Codes for Two-Dimensional Modulation”, IEEE Trans. on Inform. Theory, 40(6), Nov. 1994, pp. 17731791. [11] L.R. Bahl, J. Cocke, F. Jelinek and J. Raviv, “Optimal Decoding of Linear Codes for Minimizing Symbol Error Rate”, IEEE Trans. on Inform. Theory, vol. 20, Mar. 1974, pp. 284-287. [12] S. ten Brink, “Convergence behavior of iteratively decoded parallel concatenated codes”, IEEE Trans. on Commun. , 49(10), Oct. 2001, pp. 1627-1737. [13] S. ten Brink, “Design of serially concatenated codes based on iterative decoding convergence”, in 2nd International Symposium on Turbo Codes and Related Topics, Brest, France, 2000.