Sie sind auf Seite 1von 5

A Class of Multirate Convolutional Codes by Dummy Bit Insertion

Wen Xu and Jac Romme


Department of Mobile Phone Development, Siemens AG, Hofmannstr. 5 1,81359 Munich, Germany
Abstract We present a method to construct lower rate codes from a known high rate code by inserting known dummy bits into the information bit sequence before encoding. Like other multirate codes based on puncturing or repetition, this new class of codes can adjust the amount of protection given to the information bits, and can be decoded using the same decoder as for the mother codes. Specifically, we focused on the recursive systematic insertion convolutional (RSIC) codes. Our analysis and simulation results show that the proposed RSIC code achieves a performance which is comparable to the corresponding optimal recursive systematic repetition convolutional (RSRC) code.

[7], where a method was proposed to construct ratecompatible repetition convolutional (RCRC) codes from
known high-rate convolutional codes, obtained from best rate 1/2 codes. In [8],an alternative algorithm was presented to find large families of the optimum RCRC codes from the best rate 1/2, 1/3 and 1/4 codes with memory m = 2...10. A significant advantage o f the punctured and repetition convolutional codes is that the decoder (e.g. Viterbi algorithm) operates always with the mother codes and can therefore remain unchanged, which greatly reduces the receiver complexity. For decoding of punctured convolutional codes, the channel soft values of the punctured code bits can be simply set to zero and in repetition convolutional decoding the repeated code bits are first combined (code combining) before VA decoding. In this study, we present a new class of multirate convolutional codes called the insertion convolutional (IC) codes which are lower rate codes constructed from a known high rate code. Like the other multirate codes based on puncturing or repetition, this new class of codes are able to adjust the amount of protection given to the information bits according to their importance, and can be decoded by using the same decoder as well. Concretely, the known dummy bits are inserted into the information bit sequence before encoding (thereafter the insertion convolutional codes). The principle of IC codes has a lot of resemblance with the termination of convolutional codes, where m (= code memory) dummy bits are attached to the information sequence to force the encoder to end in a given state. For decoding of IC codes, the a priori information about the known dummy bits can be utilized, e.g. by employing the Apri-Viterbi algorithm (APRI-VA) [9][ 101. For an RSC code, the dummy bits are contained in the code bits and thus do not need to be transmitted (or equivalently they will be punctured). This class of IC codes is denoted here by recursive systematic insertion convolutional (RSIC) codes. To decode the RSIC codes, the channel soft values of the punctured (systematic) dummy bits can be simply set to have the maximum reliability (+- or --) corresponding to the dummy bits (+1 or -1). Then, the normal V A decoder without any modification, similar to the punctured convolutional codes, can directly be used for RSIC decoding. In comparison to the repetition codes, the IC codes have the advantage that no code combining is required. O r analysis and simulation u results show that the proposed RSIC code achieves a performance which is comparable to the corresponding optimal recursive systematic repetition convolutional (RSRC) code.

I. INTRODUCT~ON Flexible multirate encoding and adaptive decoding are often needed since different data to be transmitted have usually different error protection requirements, and/or the channel is time varying and/or unknown to some extent. The most common way to design a multirate channel coding scheme on the basis of a fixed code with a certain rate and correction capability is puncturing or/and repetition, i.e. puncturing to obtain high rate codes and repetition to obtain low rate codes. Such a multirate scheme has for instance been standardized as the rate-matching algorithm in 3GPP (third generation partner project) mobile communicationsystem [I]. Here we focus on convolutional codes, which are widely used in practice. Specifically. a subclass of them, the socalled recursive systematic convolutional (RSC) codes have gained great attention recently, since compared to their equivalent non-systematic counterparts they can provide a better error protection in bad channel conditions and/or when the code rate is relatively high [2]. For instance the unequal error protection (UEP) channel coding schemes based on RSC codes were standardized for the newly developed adaptive multirate (Ah4R) speech codec in the GSM (global system for mobile communications), where the UEP matching to different classes of speech encoded bits is realized by puncturing and repeating the RSC mother codes [3]. Moreover, the RSC codes as component codes have been successfully used to construct the very powerful "Turbo" codes, which can achieve a coding gain near the Shannon limit [4]. Punctured convolutional (PC) codes were first introduced in 1 1 mainly for the purpose of obtaining simple Viterbi algo5 rithm (VA) decoding for rate kJn codes with two branches arriving at each node instead of 2' branches. By adding the rate compatibility restriction to the puncturing tables, Hagenauer [61 generated a family of rate-compatible punctured convolutional (RCPC) codes. The notation of repetition convolutional (RC) codes was introduced by Kallel and Haccoun

0-7803-6451-1/00/$10.00Q Zoo0 E E E

830

11. PROPERTIES OF IC CODES


A. Encoder Structure

and z ( D )=@ O D $ I D 4 . +

(8)

An IC encoder first inserts i dummy bits into an information bit sequence u(D) of length n, which results in a bit sequence w(D) of length n + i. The bit sequence w(D) is fed to the convolutional (mother) encoder of rate Re, where the information bits together with dummy bits are woven to a codeword. It is clear that the rate R of the overall code can be adjusted by varying the amount of dummy bits inserted.

B. Linearity The IC encoding scheme is linear, if both the insertion operation and the convolutional encoder are linear. Since G(D) is linear, to verify whether the insertion operation W(u(D)) is linear, we need to check if the following equality holds for any uI(D)and u((D) w(u()( D )+ U (2) ( D ) )= W ( U (I) ( D ) )+ W ( U (2) ( D ) ). (9) Substitute (1) into (9). (9) becomes F(u)(D ) + U() (0)) z( D ) +
= F(u(D))

UP) I

F(,)

I WfD) 1
I

0)

;I

+ z ( D )+ F(u)(D))+ z ( D )

(10)

Using (4) we can conclude that the IC code is linear if and only if (iff,)the inserted dummy bits sequence z ( D )= 0 (11) i.e. dummy bits must have a value of zero. The codewords of the IC codes in this case become v ( D ) = ( F ( u ( D ) ) + ( D ) ) G ( D )= F ( u ( D ) ) G ( D ) . z (12)
C. Dummy Bits Here, we want to show that the choice of the dummy bit values has no impact on the mutual Hamming distance, thus no impact on their error correcting capabilities. In fact, ac,cording to (l), we obtain the Hamming distance d between which correspond to the any codewords v(D) and V~(D). respectively information sequences u(D) and u*)(D). d(v(D),v*(D)) (3)
= d ( ( F ( u ( D ) ) + ( D ) ) G ( D ) .( F ( u ( ~ ) ( D ) t (+ ) ) G ( D ) ) z ) D

U( D ) =

2uI D
I
I

it holds

F(u(D))=

uI D D

where il is the time delay for bit U,. It is easy to see that the delay operation F(.) is linear since for any u(D) and U() ( D ) ,it holds

(13)
The linearity of G(D) implies
d (J1)0 )d ( ~ ( D ) ) ( . ~

= ~ ( F ( u ( ~ ) ( D ) ) G+ D ) ( z(D)G(D),F(u(~)(D))c(D)G ( D ) ) + z(D)

(4)
= F(u(D))+ ( u ( ) ( D ) ) F As an example, we consider

(14) Since the Hamming distance between two codewords does not change when the same sequence is added to both codewords, we have d(v() D ) ,d2)( ) )= d (F(u() ( D (D))G( F(u( D))G(0)) D), .

U ( D ) = ~ U , Duo + u I D + u 2 D 2+u3D3 =
I

(5)

(15)
Thus, the distance spectra depend on the convolutional encoder G(D) and on the delay F(.) which determines the amount and positions of the inserted dummy bits. However, they are independent of the value of the dummy bits inserted. For this reason, the dummy bit value is always set to zero in this study. This preserves the linearity of the IC code and the results obtained will also be valid for other dummy bit value.

and two dummy bits & and 4 which will be inserted after uo and u2. Then we have
w( D ) =

2 wI D =
I
I

uI D Dit + z ( D )

=uo + $ , D + ~ , Du203 +~

+ U ~5 D

with

D. Trellis Structure and Goodness Criteria


0
2

for t S O
(7)

The insertion of dummy bits into the information sequence increases the length in branches of all possible paths from the

for t > 2

83 1

initial state to the ending state, but the number of possible paths remains unchanged. For any linear code, its error correcting capability is usually upper bounded by the so-called Viterbi's union bound [ 111 for the average event error probability

ca

pc

xadpd d=dfrtc

(16)

and bit error probability


pb
xcdPd d=d free

(17)

where dfreeis the free distance of the code and P d is the probability that the wrong path at distance d is selected. ( a d } and ( c d ) which depend only on the code, are the so-called distance spectra and should be as small as possible. When i dummy bits are inserted in every n information bits, we have an insertion period T = n + i. It can be easily shown that the Viterbi's union bounds can be written as

(21) G(D) [Go GI = Here Go = 1 + D3 + D4and GI = 1 + D + D3 + D4 are the generator polynomials used in the GSM [3]. After each information bit, i dummy bits are inserted. Tab. I shows the distance spectra of this code depending on the amount of dummy bits per period. From the table we see that the free distance dfrecdoes not increase as the number of codewords at a certain Hamming distance decreases. The insertion of dummy bits causes a decrease in the number of codewords, and thus leads to a decrease of the bit error rate (BER) or Pb. However, more dummy bits per period will not automatically improve the error correcting capabilities of an IC code. As shown in Tab. I, a decrease of the IC code rate R from 114 to 116 leads to even worse distance spectra. When more than m dummy bits are inserted at a time, the performance of the IC codes remains unchanged since insertion of m dummy bits terminates the encoder already.

I.

442

1015

2334
ns 1 O
4
18

3504
114

a849
3

1
4

111. NON-RECURSIVE IC CODES By ignoring the termination effect, the overall rate R of a (recursive or non-recursive) non-systematic IC code can be written as

II
l
9

I16

IO
1
4

n'
<I6

>3

Fig. 2 shows the trellis of a non-recursive IC code of memory 2. We assume, unless otherwise stated, that the all zero codeword is transmitted. The trellis is time variant with a period T = 3 and i = 1, which results in R = 113 for R, = 112. Notice that a path can only diverge from the all zero path at an information bit (denoted as x) state transition, not at a dummy bit (denoted as 4) transition. In contrary to the PC or RC codes where a branch weight depends on time and state transition, the branch weights of IC codes are time invariant. In order to show the goodness of IC codes, the distance spectra are calculated by a trellis search. The code used is a mother code of memory 4, rate 112 with generator matrix

IV.RECURSIVE CODES IC In the following, it can be shown that this is not the case for IC codes generated using a recursive convolutional mother code. Specifically, the recursive systematic convolutional (RSC) codes have good distance characteristics similar to their non-recursive counterparts and dummy bits, which are contained as systematic bits in the codewords, can be punctured without any influence on error correcting capabilities. In general, the overall code rate R of a (recursive or nonrecursive) systematic IC code is higher in comparison to the equivalent non-systematic IC code. For systematic convolutional codes in which the same information bits are mapped into codewords only once, it holds

R = R,

n n

+ (1 - R,)i

Fig. 2. Trellis of a non-recursive IC encoder. where the mother code has a memory of 2.

We use the same RSC code as before but in the recursive form, i.e. G(D)=[I G o I G I ] . (23)

832

The distance spectra depending on the number of dummy bits i per period T = 1 + i are given in Tab. 11. Notice that the free distance and distance spectra, contrarily to the non-recursive codes, vary even if more than m dummy bits are inserted. The trellis of a recursive IC code is different from that of the corresponding non-recursive IC code (see Fig. 3).

-..-.
Fig. 4. A general convolutional encoder structure.

dh.

d=db.,,k=O.l.2

:I

13:

18;

74 206 502

I1
111

..... 9
4 4 , Z
3100

Assume that the path j (j = 1, 2) goes through state s '! time t, where the state s( is defined as ,"

at

1242

1015

W ,,

(I) (j) W,-1WI-2

(1) ... w,, .

(24) (25)

7620

The paths 1 and 2 merge at time t + 1 iff


(1) SI+I

IO 0

16

22
4

36
0

I2 64 0

= (2)
SIt1.

Substituting (24) into (25) gives


(2) (2) (2) = w, WI-l Wl ,) . + * (26) Note that w up to ? ' remaining in the shift register are the same for both pathsj = 1.2, i.e. for i = 0,1, ...,m - 1 . (27) w:!: = w: : ! otherwise both paths would Therefore it holds wf.,,,(I)f w,.,,,(~), already have merged. From Fig. 4 we have
a..

0 -

0) 0) w, WI-I

W,.+-l)

0)

e..

~~.(~-~y'

0
2 0

0
0
2

0 0

k=l

k=I

where $f is the value of the inserted dummy bit, which is the same for all paths through the trellis. From (28) we obtain
(2) q,w:', = qmw,-, . (29) As a result, two paths can only merge iff qm= 0 since wf.,,,(I) # wf.,,,(*). Clearly, the conclusion is also valid for any kJn recursive codes since a k-input convolutional encoder can be considered as k 1-input shift registers. To ensure that the paths do not merge, at least one of the k 1-input shift registers fed with a dummy bit must fulfil the condition qm= 1. This is indeed the case for almost all recursive codes used. Furthermore, it can be shown that in most practical situations the free distance of a recursive IC code can be increased to infinity by inserting infinite number of dummy bits. This is for instance the case for the polynomials shown in (23).

Fig. 3. Trellis of a recursive IC encoder, where the mother code has a memo y o 2 and feedback polynomial I + D + DZ. r f

It can be noted that the paths in the trellis do not merge after a non-information bit (@)transition and therefore there is no reduction in the number of states. This is contrary to nonrecursive IC codes. In what follows, we show that two paths in an IC trellis. generated using a recursive convolutional encoder, will not merge after a dummy bit transition iff the last memory position is connected to the feedback loop. Without loss of generality, we consider a recursive convolutional encoder as shown in Fig. 4, where the possible output polynomials have been left out for simplicity.

V. A COMPARISON OFRSICAND RSRC CODES We see that recursive IC codes can be used as an alternative method to RC codes in order to construct lower rate code from higher rate codes. Since we are in particular interested in RSC codes, we would like to compare the lower rate codes generated by repetition (RSRC code) and insertion (RSIC code). The mother code used has the polynomials

[1

l+D+D2+D3+D5tD7+Ds 1+D2 + D' t D 4 t Da

The non-recursive form of this code is also standardized for 3GPP data transmission [I]. The comparison is conducted at rate R = 215 and R = 113. The RSRC code uses an optimal distance spectra (ODS) repetition matrices [ 8 ] , namely

(30)

833

[::]

for rate 2/5,

I:[

for rate 1/3, respectively. The

RSIC code uses a dummy bit insertion pattern [x x $1 (period T = 3, i = 1) for rate R = 215, and a pattern [x $1 ( T = 2,i = 1) for rate R = 1/3, respectively. Fig. 5 and Fig. 6 show simulation results for AWGN channel. Here, both Viterbis union bound (Vit) and simulation results (sim) are provided. It can be seen that the RSIC code can provide even better performance than the ODS RSRC code for a BER ranging from 10 to lo5.

experiments have shown that the free distance and distance spectra of the IC code also depends on the feedback polynomial (see Tab. IV). In addition, it is conceivable that better performance can be obtained using a recursive convolutional mother code by combining insertion and puncturing. This, together with other aspects, such as searching for good recursive IC codes, is under current study.
TAB.111. FREE DISTANCE DEPENDING THE NSERTION PATIERN FOR ON MOTHER CODE[I cdC11.

DEPENDING THE FEEDBACK POLYNOMIAL FOR ON TAB.Iv. FREE DISTANCE MOTHER CODE [I Gi/Go].

10-

05

15

25

a5

Ed

REFERENCES
[I]

Fig. 5 . Comparison between recursive systematic IC and RC codes (R = 2 5 ) .

3GPPTS 25.212, Multiplexing and channel coding, Release 1999 [2] W.Xu, S. Heinen, M. Adrat, P. Vary, T. Hindelang, M. Schmautz and 1. Hagenauer, An adaptive multirate speech codec proposed for the GSM, in Proc. 3rdITG Conj Source and Cltannel Coding, Munich, Germany, pp. 51-56, Jan. 2000.

05

I5
W

2
O

25

35

Fig. 6. Comparison between recursive systematic IC and RC codes (R = 113).

VI. DISCUSSIONS Some simple searches were carried out for patterns of information and dummy bits, which can provide best performance. Tab. 111. lists the best IC codes with different dummy bits in the sense of the ODS criteria. In the patterns shown, x stands for an information bit and $ for a dummy bit. Other

[31 GSM 05.03, Digital cellular telecommunications system (Phase 2+); Channel coding. Release 1999. [4] C. Berrou, A. Glavieux and P. Thitimajshima, Near Shannon limit error-correcting coding and decoding: Turbo-codes (I), in Proc. IEEE ICC93, Geneva, pp. 1064-1070, 1993. (51 J.B. Cain, G.C. Clark and J.M. Geist. Punctured convolutional codes of rate ( n - l y n and simplified maximum likelihood decoding, IEEE Trans. on Inform. Theory, vol. 25, pp. 97-100. 1979. 161 1. Hagenauer, Rate-compatible punctured convolutional codes (RCPC codes) and their applications, IEEE Trans. on Commun., vol. 36, pp. 389-400, 1988. [7] S. Kallel and D. Haccoun, Generalized type II hybrid ARQ scheme using punctured conrolutional coding, IEEE Trans. on Commun.,vol. 38, pp. 1938- 1946, 1990. [8] Z . Lin and A. Svensson, New rate compatible repetition convolutional codes, Submitted to IEEE Trans. on Inform Theory. 1999. [9] J. Hagenauer. Source-controlled channel decoding, IEEE Trans. Coin~itun., 43, pp. 2449-2457, 1995. vol. [IO] W. Xu, J. Hagenauer and J. Hollmann, Joint source and channel decoding of compressed still images, Signal Processing: Image Coituttunicafion.vol. 15, pp. 217-229, 1999. [ I I] A.J. Vilerbi, Convolutional codes and their performance in communication systems, IEEE Trans. on Cormnun.. vol. 19, pp. 751-772, 1971.

834

Das könnte Ihnen auch gefallen