Improved Turbo Decoder Structures for Burst Error Channels Bartosz Mielczarek, Arne Svensson Department of Signals and Systems, Communication Systems Group Chalmers University of Technology, SE 412-96 G¨oteborg, Sweden, fBartosz.Mielczarek,
[email protected] Abstract In this paper we present an extended version of a turbo decoder which can cope with occasional phase shifts of the received signal. Such shifts are usually caused by noise bursts which prevent a proper synchronization of the incoming signal. To model such a channel we propose a concatenation of the BSC and the AWGN channel which can easily be incorporated into the classical turbo decoding algorithm by extending the state space. The proposed algorithm improves the performance by 0.2-0.6 dB as compared to the classical turbo decoder. A simplified version of the algorithm is also presented and shown to perform as good as the full version.
1. Introduction The system performance analysis of turbo coded systems in wireless packet transmission applications usually assumes that the channel has been perfectly estimated and synchronization parameters are properly set. Such an approach simplifies the analysis but in realistic applications synchronization problems can cause significant decrease of performance (see [5]). The synchronization of the phase in rapidly changing fading environment can cause particular problems. Even assuming that some pilot sequence is used to track the phase changes, some occasional noise bursts can occur causing the short-lived bursts of phase mismatch - phase ambiguity [4]. Assuming that a channel interleaver is used before transmitting the encoded data, such phase shifts will be scattered among the packet after deinterleaving the received signal (see Figure 1). In such a case, apart from the obvious decrease in channel capacity, the additional performance loss is caused by using a channel model which does not incorporate such phase shifts. To improve the system performance, a special channel model including random phase shifts should be imple-
Figure 1. Effect of the burst error
mented in the turbo decoder. We present a solution which increases the number of the states in the decoder; a model easily extended to different channel models (see [6]). An alternative solution involving reformulating the likelihood function and modifying the metrics for the missynchronized channel (see for example [3]) will not be discussed in this paper.
2. System model The system architecture discussed in this paper is presented in Figure 2. First, the data bits are encoded using the typical turbo encoder. The encoded sequence is then interleaved, modulated and transmitted over the time-varying channel. The first stage of the receiver deals with channel estimation and signal synchronization (frequency and phase). After demodulation, the received symbols are deinterleaved and decoded using a turbo decoder. When dealing with turbo codes, the usual assumption is that the channel estimator is perfect and the signal has been perfectly synchronized and demodulated. Such an assumption, however, is not valid since estimating rapidly changing channels is never perfect. One of the typical problems is
Figure 2. The system architecture
phase estimation with coherent detection, i.e., when no differential decoding is used. When a channel rapidly changes (for example due to a noise burst), the synchronizer at the receiver (for example a PLL loop) must quickly acquire the new phase of the signal, otherwise some of the code bits will be reversed. To resolve such a situation and estimate a channel, coherent detectors usually use so-called pilot signals periodically inserted into the data stream. Unfortunately, such a method does not guarantee that the phase recovery will always succeed (for example, when a noise burst corrupts the pilot signal). The system analyzed in this paper uses a typical parallel rate 1/2 turbo encoder with two RSC (037,033) encoders connected by a pseudo-random interleaver of size 1000. The streams of input bits xsk and parity bits xpk produced by the encoders form code symbols ck , which are interleaved, BPSK-modulated and transmitted over the AWGN channel. The number of reversed bits is set to 1,3 and 5% of the whole block (i.e., 30, 90 and 150 code bits).
probability of a transition for the Gaussian channel is defined as
(s0 ; s) = p(x )p(y ; y jx k
= exp
s k
1 2
x (L (^u s k
L(^u
k)
=
L y
L y C
P + k;1 (s0 ) PS
(s0 ; s) (s) ; ; (s0 ) (s0 ; s) (s) k
1
k
k
k
k
(1)
where the k;1 (s0 ) values are the probabilities of arriving at trellis state s0 with forward transitions, the k (s) values are the probabilities of arriving at trellis state s with backward transitions and k (s0 ; s) values are the probabilities of transitions between states s0 and s. The sums are performed over S + states corresponding to data bit xsk = 1 and S ; states corresponding to data bit xsk = ;1, respectively. The
s ) k
exp
1 2
L yx
C
p
p
k
k
L (^u ) + ! ( ) + ;1 (s0 ) ~ (s0 ; s) (s) P ( ) ; ;1 (s0 ) ~ (s0 ; s) (s)
s k
C
+
P
S
+ log
(2)
e
k
e
k
k
k
(3)
e
S
k
k
k
where the modified probability of transition is given as e
The most commonly used algorithm for decoding turbo codes is the BCJR algorithm [1], which calculates the loglikelihood ratio L(^ uk ) as
S
+
s k)
where yks is the received systematic bit, ykp is the received parity bit, Le (^ uk ) is the extrinsic information about the transmitted bit and LC = 4Ec =N0 is the channel reliability factor. Joining equation (1) with (2) and cancelling the common terms, equation (1) can be expressed as
k
k ) = log
k)
e
k
~( ) (s0 ; s) = exp
3. BCJR algorithm
L(^u
p
s k
1 2
L yx C
p
p
k
k
(4)
Equation (3) shows the principle of the turbo decoder operation (see [2]). The first term LC yks , called the channel value, is the scaled systematic bit value; its weight increases for a good channel (large LC ). The second term, Le (^ uk ), is the a priori information provided by the second BCJR decoder. Finally, the third term is the unique value calculated by the first BCJR decoder which is based on the whole received sequence and the code trellis. This value is the extrinsic information passed to the second decoder in the next iteration. The crucial point lies in separating the systematic channel value of yks from the extrinsic information calculated in the third term. Failure to do so may result in incorrect convergence of the algorithm.
Figure 3. The burst channel model
4. Burst channel model Assuming that the burst errors are rare and the channel interleaver is used, it is possible to assume that the resulting phase shifts are scattered pseudo-randomly across the whole encoded packet. Such a situation can be modeled by a concatenation of a Binary Symmetric Channel BSC() (where the parameter represents the crossover probability, i.e., the probability that a bit is reversed) and the typical AWGN channel. The channel model is shown in Figure 3. Formally, the signal after such a channel can be described as
y
k
=
ac k
k
n
+
(5)
k
where ak is the random BSC inversion process and nk is the Gaussian noise (with double-sided power density N0 =2). The BSC process can be described as (
a
k
=
P r (a
1
; ;1) =
k
= 1) = 1
k
=
;1 P r(a
(6)
Note that the concatenation of the AWGN channel and the BSC channel has no memory which facilitates its implementation in a turbo decoder. If no channel interleaver was used, the channel will not be memoryless and would require much mode complicated modifications of the decoder.
5. Modified BCJR algorithm
0 (s0 ; s) = p(x )p(a y ; a y jx )p(a ; a k
= exp
exp exp
s k
1 2
1 2 1 2
s k
p
p
k
x L (^u s k
L xay C
s k
s k
L xay C
k
s k
s k
s k
p
p
k
k
k
k
1
;
;
exp
1 2
L xy s k
C
s k
exp
1 2
2
L yx C
x L (^u s k
k)
e
p
p
k
k
(8)
0 ; S(1 0)) = (1 ; ) exp
0 (S(0 0) k
) k
;
;
C
s k
s k
exp
1 2
1 2
L yx C
x L (^u s k
e
k)
p
p
k
k
(9)
The metric will for parity bit inversion is
p(a
s ) k
p
0 ; S(0 0) ) = (1 ; )2 exp
0 (S(0 0)
exp ; 12 L x y
p
k)
e
where ask is the systematic bit inversion process and apk is the parity bit inversion process. Note that according to the independence assumption p(ask ; apk ) = p(ask )p(apk ). Since there are four possible inversion possibilities, i.e., no inversion, systematic bit inversion, parity bit inversion and both bits inversion, the number of transitions between states must be increased to test all of them. This suggests increasing the number of states to four times the original to accommodate all possible inversion possibilities. The proposed structure of the enhanced trellis is shown in Figure 4. Each state has been extended to four new ones, described by subscripts (0; 0),(1; 0),(0; 1) and (1; 1) for no inversion, systematic bit inversion, parity bit inversion and both bits inversion, respectively. Each of the new states is connected to the next set of states by properly weighed transition branches. For example, the transition from the state 0 for no inversion case has the following metric S(0 ;0)
The metric for systematic bit inversion is
Using the channel model defined in equations (5) and (6) the probability of a transition k0 (s0 ; s) can be redefined as s k
Figure 4. The extended trellis
p(a
p k
)
(7)
0 (S 0 k
(0;0)
exp
; S(0 1) ) = (1 ; ) exp
1 2
;
L xy C
s k
s k
exp
1 2
;2L y x 1
C
x L (^u
p
p
k
k
s k
e
k)
(10)
Finally, the metric for both bits reversal is
0 (S 0 k
(0;0)
; S(1 1)) =
2
;
exp ; 2 L x y 1
s k
C
s k
exp
exp
1 2
x L (^u s k
k)
e
;2L y x 1
C
p
p
k
k
(11)
Similar metrics can be derived for all other states. Using equation (7) in (1) and summing over all the states in the extended trellis we get P (s0 ) L(^uk ) = log PS+ k;1 0 S
0 (s0 ; s) (s) ; ; (s ) 0 (s0 ; s) (s) k
1
k
k
k
k
(12)
Unfortunately, the simplification of the equation (12) as in (3) is difficult since both the and ;the denom- ; numerator inator contain the terms exp 21 LC yks and exp ; 21 LC yks (as opposed to the basic formula when ;1 the numerator s contained only terms with exp 2 and denominator L y C k ; 1 s terms with exp ; 2 LC yk ). The proper separation of the channel value of the systematic bit from the extrinsic value in (12) may be rather complicated. In this paper, we assume that the similar formula as (3) may be used to approximate the actual log-likelihood ratio. This yields
L(^u
k)
' L y P+ L (^u C
+ log
s k
k)
e
PS S
(13) + ;1 (s0 ) ~ 0 (s0 ; s) (s) 0 0 0 ; ;1 (s ) ~ (s ; s) (s) k
k
k
k
k
k
where the modified probability of transition is given as
~0 (s0 ; s) = exp k
1 2
L yax C
p
p
p
k
k
k
p(a )p(a s k
p k
)
(14)
Implementation of equations (13) and (14) is basically the same as in (3) and (4). The only difference is that four times as many terms are summed in numerator and denominator and that weight factors p(ask ) and p(apk ) are present in all terms. The accuracy of the approximation in (13) is a subject of current research and other possible solutions will be presented in future papers.
6. Simplified algorithm The extended trellis in Figure 4 may be too complex to implement in a real decoder. A possible simplification is to collapse all additional states corresponding to one or two bits being reversed to one state representing all such situations. In other words, the simplified trellis will have only twice as many states - one state corresponding to no phase reversal and one state corresponding to all other situations. Figure 5 shows the principle of such a simplification. Using the same example as with the fully extended trellis 0 for no inversion case the transition from the state Snoinv
Figure 5. The simplified trellis
will have the following metric
~0 (S 0 k
noinv
;S
noinv )
= (1
; )
2
exp
The metric for bit reversals is
0 (S 0 k
noinv
;S
inv ) = (1
+ (1 +
; ) exp
1
L yx C
2
1 2
p
k
k
L yx C
p
p
k
k
2 exp
; 12 L y x C
(15)
; ) exp ; 21 L y x C
p
p
p
k
k
(16)
p
p
k
k
where we simply averaged the metrics from equations (9), (10) and (11). The modified metrics from equations (15) and (16) are used in equation (13) in the same way as in the full trellis case. This time, however, the number of states is only twice as large as the original one.
7. Performance The system presented in this paper was simulated for different number of phase shifts on the AWGN channel (note that our discussion can be easily extended to any channel type). Each packet consisted of random data which was turbo encoded and transmitted over the channel according to the system description in earlier sections. The received packets were then decoded using three independent turbo decoders: the first one without any modifications, the second one with fully extended trellis and the third one with simplified trellis. The bit error rate (BER) simulations were conducted on 10000 packets and the number of iterations was set to 15 (the convergence of the modified decoding is somewhat slower which motivated using a larger than usual number of iterations). Note that EACH packet had a fixed number of random phase shifts, a condition which is stricter than the BSC channel model. This was done to simulate the system’s performance for a given number of shifts per packet which can be easily extended to the true BSC channel. Figure 6 presents the BER curves for three different values of BSC channel parameter = 0:01, = 0:03 and
0
10
No phase shifts Normal decoding Full decoding Simplified decoding
−1
10
−2
10 BER
ε=0.05
−3
10
ε=0.03
−4
10
ε=0.01 −5
10
0
1
2 3 Eb/N0 (dB)
4
5
Figure 6. The performance of the proposed algorithms
= 0:05. In addition, a BER curve for a perfectly synchronized decoder (solid line) is shown as the lower bound on any system’s performance. It can be clearly seen that the proposed algorithms improve the performance quite significantly, especially in the medium-distorted channel. The gain in this case can be as large as 0.6 dB. The improvement for the low-distorted channel is in the range of 0.2 dB. The simplified algorithm performs practically identical as the full one even though its complexity is reduced. In case of the low-distorted channel, the difference is almost invisible. The reason for it is that the low crossover probability makes it very unlikely that two adjacent bits will be reversed after channel deinterleaving and the state space can be safely reduced. Obviously, since the channel capacity is reduced, even the full algorithm cannot cope with all possible phase shifts. If the number of phase shifts increases over 4-5%, another modulation and/or synchronization technique must be used to reduce this number. Otherwise, only an increase of SNR can improve the bit error rate performance.
8. Conclusions To gain full insight into the performance of turbo codes, the analysis must include the non-perfect channel estimation. Analytical modeling of synchronization errors is generally difficult but simulations show that turbo code performance can be severely impaired if the decoder has no knowledge of the real channel statistics. We have shown that including such statistics (even if the used model is very simple) can significantly improve the
system’s performance. As usual, such algorithms increase the hardware complexity but there exist techniques which allow to reduce it. For example, a simple averaging operation can reduce the hardware complexity twice, while only slightly decreasing the performance. The future work will concentrate on the analysis of the modified turbo decoder properties. The convergence properties should be discussed since increasing the number of states increases the number of needed iterations. Additional modification to the classical turbo decoder architecture may additionally improve the performance. A possible modification, for example, is to pass the information about the detected shifts from one BCJR decoder to the other (see [6]). Such exchange of information could reduce the number of iterations and improve detection of the phase shifts, reducing BER. A discussion of such an algorithm will be presented in future papers.
9. Acknowledgments This work was supported by the Swedish Foundation for Strategic Research under the Personal Computing and Communication grant, a scholarship of Telefonaktiebolaget LM Ericsson’s Stiftelsen f¨or fr¨amjande av elektroteknisk forskning and a scholarship of Stiftelsen f¨or internationalisering av h¨ogre utbildning och forskning (STINT).
References [1] L. Bahl, J. Cocke, F. Jelinek, and J. Raviv. Optimal decoding of linear codes for minimizing symbol error rate. IEEE Transactions on Information Theory, IT-20(2):284–287, Mar. 1974. [2] S. A. Barbulescu. Iterative decoding of turbo codes and other concatenated codes. PhD thesis, School of Electrical Engineering, Faculty of Engineering, University of South Australia, Feb. 1996. [3] P. Frenger. Turbo decoding on Rayleigh fading channels with noisy channel estimates. In Proc. IEEE Vehicular Technology Conference, pages 884–888, Houston, Texas, May 1999. [4] H. Meyr, M. Moeneclaey, and S. Fechtel. Digital Communication Receiver. Wiley, 1998. [5] B. Mielczarek. Synchronization in Turbo Coded Systems. Licentiate thesis, Department of Signals and Systems, Chalmers University of Technology, G¨oteborg, Sweden, 2000. [6] B. Mielczarek and A. Svensson. Improving phase estimation with enhanced turbo decoders. In PCC Workshop, page to be published, Nyn¨ashamn, Sweden, 2001. [7] E. A. Ratzer and D. J. C. MacKay. Codes for channels with insertions, deletions and substitutions. In 2nd International Symposium on Turbo Codes and Related Topics, pages 149– 156, Brest, France, 2000.