Sie sind auf Seite 1von 6

Unequal Error Protection Using Maximum

A-Posteriori Probability (MAP) Algorithm,


Soft Output Viterbi (SOVA) Algorithm
and Modified SOVA
Abstract- When the information is transmitted through the
channel its gets corrupted due to noise and interference. To
detect and correct the errors, which had occurred in the
information due to the noise, channel coding techniques are
used. Various channel coding Technique are used like linear
block coding, convolutional coding, Reed Solomon coding, turbo
coding etc. With in these Turbo coding has achieved near to the
Shannon limit. So it is an efficient channel coding method than
all the other codings. Turbo decoder uses any one of the
decoding algorithm of Maximum a-posteriori Probability
algorithm (MAP) or Soft Output Viterbi Algorithm (SOVA).
Both are Soft in Soft out (SISO) decoding algorithm.
MAP is three times more complex than SOVA. It
compute a-posteriori Probability(APP) for each data bit which
is followed by choosing a data bit value that corresponds to the
maximum a-posteriori Probability for that data bit. Upon
reception of a corrupted code bit sequence, the MAP algorithm
determines the most likelihood bit to have been transmitted at
each time. Since it determine APP bit by bit. It makes more
complex, but it has higher error correction performance.
SOVA provides an efficient way to find the most likely
sequence of state transitions of a finite state chain. SOVA
determine the most likely sequence to have been transmitted
instead of determining most likelihood for each data bit. SOVA
is 1/3 time less complex than MAP and hence it is easy to
implement.
The traditional turbo code system use Equal Error
Protection (EEP). It means all the information transmitted are
having equal error protection by allocating equal number of
redundancy bit for each message bit. But in many applications
all the information dont need equal importance. So we need a
new method Unequal Error Protection (UEP).
The UEP is achieved by designing new puncturing
matrix scheme to EEP. By doing so the important message is
more protected than the other message bits. By allocating more
redundancy bit for each message bit with in the important class.
Here the encoded messages are transmitted to the AWGN
Channel and Rayleigh Fading Channel. In UEP important
message have less Bit Error Rate (BER) than the EEP and
unimportant message have closer (BER) to EEP.
In this paper BER performance of UEP in fading
channel is analyzed. BER performance substantially improved
for the important class messages in UEP. In MAP the important
class of message gained 0.4 dB over EEP. In SOVA and modified
SOVA the important class of message gained 0.6 dB and 0.8 dB
over EEP respectively. Modified SOVA produces a gain of 0.4 dB
compared to MAP.
Key words- Turbo codes, MAP, SOVA, Modified SOVA,
Rayleigh fading channel, AWGN channel, EEP, UEP.

I. INTRODUCTION
UEP Turbo Code [1] [2] is development of traditional
Turbo code in practical application. In the application of
some fields, information has different important degree, such
as digital video broadcasting and digital audio broadcasting.
The UEP Turbo Codes carry on extra protection to the
important part in information source, thus improving the
accuracy of decoding about the important information. Such
unequal protection characteristic can be used for telephone
communication of moving satellites and transmitting the
picture data compressed, by setting information bit that
should be protected carefully; the whole communication
performance of some system would be improved.
This paper introduces an implementation of UEP Turbo
Codes by designing a new puncturing matrix scheme. We
assume the source encoders produce the binary symbol
frames. Each frame of the source signal can be divided into
important and not important information. As to the fixed code
rate, decoding delay and complexity, better code scheme can
get lower bit error rate (BER) while decoding to the important
information part, and can get relatively higher BER to the non
important information part properly. For the decoding of
traditional Turbo Codes, the BER have nothing to do with the
position of information symbol, and these codes are called the
Equal Error Protection (EEP) Turbo Codes.
II.

EQUAL ERROR PROTECTION TURBO


CODES

Turbo Code is an outstanding channel code scheme,


proposed by Frenchmen Berrout originally in 1993[3]. In
Fig. 1 represent a generic Turbo Encoder with Equal Error
Protection. The input sequence of the information bits is
organized in blocks of length N. The first block of data will
be encoded by the RSC ENCODER1 block, which is rate
half-recursive systematic encoder. The same block of
information bits is interleaved by the interleaver, and
encoded by RSC ENCODER2, which is also rate half
systematic recursive encoder. The code word in framed by
concatenating Xk, Y1k,Y2k.
Due to similarities with product codes, we can call the RSC
ENCODER1 block the encoder in the horizontal dimension
and the RSC ENCODER2 block the encoder in the vertical

dimension. The interleaver block, rearranges the order of the


information bits for input to the second encoder. The main
purpose of the interleaver is to increase the minimum
distance of the turbo code such that after correction in one
dimension the remaining errors should become correctable
error patterns in the second dimension.
X
Data in d

Compounding Device

RSC Code
Y1k
RSC
Encoder 1

Interleaver

RSC
Encoder 2

In modified SOVA[9], the extrinsic information is


multiplied by the scaling factor which is the empirical value;
which enrich the extrinsic information to the decoder
(DEC1).

Y2k
RSC Code

Fig. 1 Block diagram of Turbo Encoder

Ignoring for the moment the delay for each block, we


assume both encoders output data simultaneously. This is
rate 1/3 turbo code, the output of the turbo encoder being
the triplet (Xk, Y1k,Y2k). This triplet is than modulated for
transmission across the communication channels, Additive
White Gaussian Noise (AWGN) channel and Rayleigh
fading channel. Since the code is systematic, dK is the input
data at time k. Y1k and Y2k are the two parity bits at time k.
The two encoders do not have to be identical. In Fig. 1 the
two encoders are rate systematic encoders with only one
parity bit shown. The parity bits can be punctured as in
Fig 1. Where puncturing is implemented by a multiplexing
switch in order to obtain higher coding rates. A rate turbo
codes can be implemented by alternatively selecting the
outputs of the two encoders in order to produce the
following output sequence:
C= (Xk,Y1k,Xk,Y2k,Xk,Y1k,..)

(1)

De interleaver

XK
Y1k
Y
Demux

DEC 1

Random
Interleaver

DEC 2

Random
Interleaver

Y2k

that of the encoder. Each decoder takes three inputs: 1) The


systematically encoded channel output bits C; 2) the parity
bits transmitted from the associated component encoder; and
3) the information from the associated component decoder
about the likely values of the bits concerned. This information
from the other component decoder is referred to as a-priori
information. The component decoders have to exploit both
the inputs from the channel and this a-priori information.
They must also provide what are known as soft outputs for
the decoded bits. This means that as well as providing the
decoded output bit sequence, the component decoders must
also give the associated probabilities for each bit it has been
correctly decoded. The decoding algorithms used are SOVA
proposed by Hagenauer and Hoeher [7], modified SOVA and
the MAP algorithm of Bahl [8].

De interleaver
Hard
Decision
Output

De
interleaver

SF
xk

DEC 1

y1k
Demux

Random
Interleaver
Random
Interleaver

y2k

DEC 2
De
interleaver
Hard
Decision
Output

Fig. 3 The decoder of the Turbo Codes with scaling factor

The soft outputs from the component decoders are typically


represented in terms of the so-called Log-Likelihood Ratios
(LLRs), the magnitude of which gives the sign of the bit, and
the amplitude the probability of a correct decision. The LLRs
are simply, as their name implies the logarithm of the ratio of
two probabilities. For example, the LLR L ( u k ) for the
value of decoded bit uk is given by
P (u k 1)

L (u k ) ln
P (u k 1)

Where P (u k 1)

(2)

is the probability that the bit

uk 1 , and similarly for P (u k 1) . Notice that the


two possible values of the bit u k are taken to be +1 and -1,

Fig. 2 The decoder of the Turbo Codes

rather than 1 and 0, as this simplifies the derivations that


follow.

In iterative Turbo Decoder structure two component


decoders are linked by interleavers in a structure similar to

The decoder operates iteratively, and in the first iteration


the first component decoder takes channel output values only,

and produces a soft output as its estimate of the data bits. The
soft output from the first decoder is then used as additional
information for the second decoder, which uses this
information along with the channel outputs to calculate its
estimate of the data bits. Now the second iteration can begin,
and the first decoder decodes the channel output again, but
now with additional information about the value of the input
bits provided by the output of the second decoder in the first
iteration.

by puncturing redundant vectors. Vector y (y 1k and y2k) can be


expressed with binary vector Pi. Binary bits 0 and 1 in the
vector show puncturing and un-puncturing in this location of
information respectively. Let w(p) denote Hamming weight
then the rate of the resulting punctured Turbo Codes with
trellis termination is,

This additional information allows the first decoder to


obtain a more accurate set of soft outputs, which are then
used by the second decoder as a-priori information. This
cycle is repeated, and with every iteration the BER of the
decoded bits tends to fall. How ever, the error decrease as the
number of iterations increases. When the iteration is finished,
the soft outputs of second decoder are deinterleaved and a
hard decision is made to obtain message bits C.

Where t is the number of input symbols necessary for


trellis termination. In EEP, puncturing matrix has a unified
form, for example:
1 0
P=
(4)
0 1

k t
k w( p1 ) w( p2 )

(3)

The parity bits y1k,y2k are through puncturing matrix y1k,y2k


and information bits xk are formatted as the following form:

III. UNEQUAL ERROR PROTECTION TURBO CODE


UEP Turbo Codes [1] is development about traditional
Turbo code in practical application. In many applications,
information has different important degree, such as digital
video broadcasting and digital audio broadcasting. The UEP
Turbo Codes carry on extra protection to the important part in
information source, thus improving the accuracy of decoding
about the important information. Such unequal error
protection (UEP) characteristic can be used for telephone
communication of moving satellites and transmitting the
picture data compressed, by setting information bit that
should be protected carefully; the whole communication
performance of system would be improved.
The UEP is implemented by designing a new puncturing
matrix scheme to existing turbo code. Assume the source
encoders produce the binary symbol frames. Each frame of
the source signal can be divided into important and not
important information. As to the fixed code rate, decoding
delay and complexity, a better code scheme can get lower bit
error rate (BER) while decoding to the important information
part, and can get relatively higher BER to the non important
information part properly. For the decoding of traditional
Turbo Codes, the BER have nothing to do with the position
of information symbol, and these codes are called the Equal
Error Protection (EEP) Turbo Codes.

X1,Y1K,1,X2 ,Y2K,2,X3,Y1K,3......

(5)

As we can see, in the encoding information bits, important


information and non important information have the same
puncturing pattern, and the codes scheme has not got valid
protection with the important information.
Unequal Error Protection is generated by assuming the
information m=dk of size k are partitioned into

Ci , i [1, Cmax ] classes,


criterion. ki , i [1, Cmax ]

according

to

importance

shows the set of the length of


each Ci class. Without loss of generality, in usual audio and
video coding applications, the proportion of important part in
the whole information bits is smaller than others relatively.
So, we can suppose this inequality is tenable.

ki ki 1
And:

(6)

k
(7)
Usually, the more redundant bits of the code words,
the lower BER in decipher of the code words. The Fig 3
shows the generator matrix is (7, 5) in the Turbo encoders.
The rate in the un-punctured Turbo Codes system (EEP) is
1/3.
i

Fig. 4Data
Block
in diagram of unequal error protection Turbo X
encoder
k

Suppose Cmax=3, the unequal error protection turbo codes


+
+
(UEP) increase the redundant
information
in C1 and C2
D
Y1k
classes. In order to+ balance
the Drate of total turbo codes,
it is
+
necessary to reduce the redundant
information
of
C3
P1
corresponsively. In case of keeping the rate of turbo codes
P2
certain, we can achieve the goal of unequal protection.

Compounding Device

Unequal Error Protection is made up of two same RSC


component encoders and one pseudo-random interleaver. For
being convenient, we can regard a trellis termination Turbo
Codes as a section of systematic block codes [5], code words
were concatenated by a binary input block m=d k of size k,
redundancy vectors y1k and y2k. As figure shows, the input
arrays turn into parity bits of y 1k and y2k through two RSC
component encoders and interleavers. If the rate of RSC
component encoders is 1/n, the rate of turbo codes is
impossible to exceed 1/(2n-1). However, we can raise the rate

Cn=

+
Block
In order to realize this idea
of +unequal protection,
it is
Interleaver
Block
+a new
D puncturing
D
necessary
to
design
scheme.
It
is
different
Interleaver
+

P2

Y2k

from traditional puncturing matrix, two pieces of component


encoders corresponding to an unequal puncturing matrix
separately. Parity bits y1k and y2k pass ones own unequal
puncturing matrix P1 and P2, and then are sent to the
compounding device respectively. Because of the change of
puncturing scheme, it is necessary to design a new
compounding device cooperating with the puncturing matrix.
To realize this puncturing scheme, it must be confirmed
each puncturing state of the trellis termination turbo codes.
The element of puncturing matrix are the same as that of the
block codes, The binary bit 1 in the puncturing matrix means
keeping the corresponding bit, while the binary bit 0 means
deleting the corresponding bit. Because the information
passes the interleaver, and is encoded by the RSC component
encoder2, it is necessary to interleave P2, before puncturing
y2k.

TABLE I The contrast between EEP and UEP


Classes
Symbols

b) Interleaving the puncturing matrix P2 with the interleaver.


The puncturing matrix P2 after being interleaved can be
achieved. The reason of doing this is that the interleavers of
turbo codes have various forms, such as block interleaver and
Smile-Helical interleaver etc, while puncturing happens after
the finishing of RSC component encoder encoding.
c) The information to be encoded passes two component
encoders and two puncturing matrix, and then get the parity
bits y1k, y2k.
d) Xk, y1k and y2k are input to the channel through
compounding device.
Unequal Error Protection Turbo Codes (UEP) is similar to
traditional Turbo Codes in course of decoding. The deference
between them is a new compounding device is needed.
IV.

EXPERIMENTS AND RESULTS

In our experiment the generator matrix of Turbo Codes is


(7,5), the size of the frame to be encoded is 182. We apply
EEP and UEP to the information. The frame is divided into 3
classes according to the importance. And let k1=28 K2=28
and k3=126. The Table 1 provides the contrast of EEP and
UEP. Turbo codes and redundancy weight of each class.

EEP
UEP
EEP
UEP

Code rate
Redundancy
weight

2
28
1/2
1/3
28
56

3
126
1/2
0.64285
126
70

The partial rate of C1 and C2 in UEP are both 1/3. The


partial rate of C3 is 0.64285. Without loss of generality,
suppose the distribution of important bits in the information
has the following forms:

C11

2
C C29
C3
57

So, the operation principles of the unequal error protection


turbo codes encoder are as follows:
a) According the structure of frame to design the puncturing
matrix. Firstly: we must accord the importance of each part
of information and equation (3) to confirm the partial rate of
Ci class and Hamming weight of puncturing matrix P1, P2.
There are many solutions here. For convenience, the
puncturing matrix P1 and P2 are the same in Hamming
weight. Then, we need to design the structure of puncturing
matrix P1 and P2, to confirm the protection situation of the
information bits to be encoded.

1
28
1/2
1/3
28
56

TABLE II.

.......

C28

....... C562
3
....... C182

(8)

Puncturing Matrix P1

P11

P21

P31

P41

1
P14

1
P15

1
P16

1
P17

1
P18

1
P56

0
P57

1
P58

0
P59

1
P60

0
P70

..
0
P169

0
P170

1
P171

TABLE III.

0
P172

0
P182

Puncturing Matrix P2

P11

P21

P31

P41

1
P14

1
P15

1
P16

1
P17

1
P18

1
P56

0
P57

1
P58

0
P59

1
P60

0
P70

..
1
P169

1
P170

0
P171

1
P172

1
P182

As we can see class 1 and class 2 have kept all parity


information of two component encoders. The information bits
in class 3 have been punctured according to the Hamming
weight of redundancy vector.
Fig 5. Shows the simulated result for the MAP algorithm in
AWGN channel. It shows the simulated BER against Eb/No
(dB) for the EEP, and for UEP turbo codes described above
on the AWGN channel.

Class 1 and class 2 messages have lower BER than EEP.


The UEP Turbo Codes achieves a coding gain over the EEP
codes of about 0.6 dB for class 1 (C1) and class 2 (C2)
messages.

Fig 7. Unequal Error Protection using Modified SOVA in AWGN channel

Fig 5. Unequal Error Protection using MAP in AWGN channel

Fig 6. Unequal Error Protection using SOVA in AWGN channel

Fig 7. Shows the simulated result for the modified SOVA


algorithm in AWGN channel. Class 1 and class 2 messages
have lower BER than EEP. The UEP Turbo Codes achieves a
coding gain over the EEP codes of about 0.6dB for class 1
(C1) and class 2 (C2) messages.

Fig 8. Unequal Error Protection using MAP in Rayleigh fading channel

Fig 6. Shows the simulated result for the SOVA algorithm


in AWGN channel. Class 1 and class 2 messages have lower
BER than EEP. The UEP Turbo Codes achieves a coding gain
over the EEP codes of about 0.4dB for class 1 (C1) and class
2 (C2) messages.

Fig 9. Unequal Error Protection using SOVA in Rayleigh fading channel

channel. Hence we recommend modified SOVA for fading


and AWGN channels.
REFERENCES
[1]

[2]

[3]

[4]
Fig 10. Unequal Error Protection using Modified SOVA in Rayleigh fading
channel
[5]

Fig 8. Shows the simulated result for the MAP algorithm in


Rayleigh fading channel. It shows the simulated BER against
Eb/No (dB) for the EEP, and for UEP turbo codes described
above on the Rayleigh fading channel.
Class 1 and class 2 messages have lower BER than EEP.
The UEP Turbo Codes achieves a coding gain over the EEP
codes of about 0.4 dB for class 1 (C1) and class 2 (C2)
messages.
Fig 9. Shows the simulated result for the SOVA algorithm
in Rayleigh fading channel. The UEP Turbo Codes achieves a
coding gain over the EEP codes of about 0.6dB for class 1
(C1) and class 2 (C2) messages. Fig 10. Shows the simulated
result for the modified SOVA algorithm in Rayleigh fading
channel. The UEP Turbo Codes achieves a coding gain over
the EEP codes of about 0.6dB for class 1 (C1) and class 2
(C2) messages.
V. CONCLUSION
In this paper we proposed a new Unequal Error Protection
Turbo Codes using modified SOVA. Better results have been
achieved by using this UEP Turbo Codes for the selected bits
in the information with certain rate of turbo codes. The
experimental results have proved that it not increasing the
system complexity.
In AWGN channel, the UEP Turbo Codes using MAP
achieves 0.6 dB coding gain for class 1 (C1) and class 2 (C2).
Where SOVA and modified SOVA achieve coding gain of 0.4
dB and 0.6 dB over EEP respectively.
In Rayleigh fading channel, the UEP Turbo Codes using
MAP achieves 0.4 dB coding gain for class 1 (C1) and class 2
(C2). Where SOVA and modified SOVA achieve coding gain
of 0.6 dB and 0.8dB over EEP respectively.
Modified SOVA and MAP having same performance in
AWGN channel but modified SOVA have better performance
than MAP in Rayleigh fading channel. Since SOVA has 1/3
times lesser complexity than MAP, modified SOVA is better
decoding algorithm for both the AWGN and Rayleigh fading

[6]
[7]
[8]
[9]

Zude Zhou; Chao Xu, An improved Unequal error protection turbo


Codes Communications, Technical Program Conference Record,
IEEE International Conference on, vol. VOL NO?, pp. 284-287, 2005.
Neri, M.; Vanelli-Coralli, A.; Corazza, G.E., Unequal error
Protection:a turbo multi level coding approach, Global
Telecommunications Conference, 2003. GLOBECOM 03. IEEE,
vol. 1, pp. 102-106, 1-5 Dec. 2003
Berrou, C.; Glavieux, A.; Thitimajshima, P., Near Shannon
limit error-correcting coding and decoding: Turbo-codes. 1
Communications, 1993. ICC 93. Geneva. Technical Program,
Conference Record, IEEE International Conference on, vol. 2, pp.
1064-1070, 23-26 May. 1993
Zhang zongcheng, The application and principle of Error
correction codes, Beijing, China: publishing house of electronics
Industry pp. 246-249, 2003
Blackert, W.J.; Hall, E.K.; Wilson, S.G., Turbo code termination
and interleaver conditions, Electronics Letters, vol. 31, Issue 24,
pp. 2082-2084, 23 Nov. 1995
Caire, G.; Lechner, G., Turbo codes with unequal error protection,
Electronics Letters, vol 32, Issue 7, pp. 629-631, 28 March 1996
J.Hagenauer, E.Offer, and L.Papke,Viterbi algorithm with softdecision outputs and its applications, IEEE GLOBECOM, pp.
1680-1686, 1989
L.R Bahl, J.Cocke, F.Jelinek, and J.Raviv, Optimal decoding of
linear codes for minimizing symbol error rate, IEEE Trans. Inform.
Theory, vol. VOL NO?, pp. 284-287 Mar. 1974
Coastas chaikalis, James M.Noras and Felip Riera-Palou Improving
the reconfigurable SOVA /log MAP Turbo coder for 3GPP university
of Bradford, Department of Electronics and Telecommunication,
Bradford, West Yorkshire, BD7,1DP,UK,2005.

Das könnte Ihnen auch gefallen