• 沒有找到結果。

Chapter 2 Turbo Code

2.3 Interleaver

The purpose of the interleaver in turbo codes is to ensure that information patterns that cause low weight words for the first encoder is not interleaved to low-weight patterns for the second encoder, thus improving the code weight spectrum [11].

Consequently, the excellent interleaver is an essential condition for achieving good distance properties. Note that achieving good distance properties require not only the excellent interlever, but also recursive constituent encoders. In this thesis, the interleaver is referred to a vectorπ . Here ( )π i is the interleaved position after the information at position ith is interleaved in the nature order. In other hands, is defined as de-interleaver, which is a converse operation of the interleaver. This is, the de-interleaver implies that the interleaved order information

1( )i π

( )i

π is conversely interleaved into the nature order at ith position. In other words, Considering the block size N in the original information sequence u=(u0,u2,…,uN-1) are interleaved into the interleaved information uπ =

(

uπ(0),uπ(1), ,uπ(N1)

)

2.3.1 Block Interleaver

A simple structured interleaver is block interleaver, often also called as rectangular interleaver in the literature. It is constructed by a rectangular of M rows by N columns, where the interleaver size is K=M*N. This interleaving is performed as follows. From the beginning of upper left corner of rectangular, the data are in turns written into the

rectangular with column by column, and then read the interleaved data with row by row, or vice versa. Further, the block interlaver can be expressed

as ( ) i mod K

i i N

π =⎜⎝ i +⎢⎣M⎥⎦⎟⎠ , where ⎢ ⎥⎣ ⎦x is the floor function, which means the largest integer of x.

However, the block interelaver is not an excellent interlaver. From the view of codeword weight, this interleaver produces a larger number of long distance codewords caused by input sequences of weight 2 and 3, but yields a large number of low distance codewords caused by that of weight 4. This is, for block interleaver, both the distance properties and error performance constrained by the input sequences of weigh 4, leading to no significantly improving BER capacity [12].

2.3.2 Prime Interleaver

The permutation is defined byπ( )i =

(

p i si +

)

modK, where s, p are known as offset and step size, respectively. Note that the value of p must be chosen relatively prime to block size K, ensuring that the element in the interleaver differ from each other. This interleaver is also referred as circular-shifting interleaver in the literature.

For the view of distance properties, this interleaver can permute the low distance codeword for the first recursive encoder into the high distance codeword for the other recursive encoder. However, this type of interleaver is less likely to permute an input sequence of weigh higher than 2 with low codeword weights into another input sequence with high codeword weights.

2.3.3 Random Interleaver

Random interleaver is generated by a random manner without any restriction on the selected element. This interelaver is also referred as pseudo-random interleaver in the literature. Modified random interleaver with some useful criterion is likely to achieve better performance. Usually, the performance of this type is significantly increased as the block size increases.

2.3.4 S - Interleaver

The S interleaver is of one of spread interleavers. Usually, the codeword of minimum distance are contributed by the input pattern with low weigh. The goal of these types is to spread the low weight input patterns, generating higher weight codewords. Here, the

Spread factor S is usually chosen less than or equal to 2

K . This interleaver can be

described as follows. Select a random element from the selected set {0,1,…,K-1} as the first element in the interleaver and delete it from the set. Then, each subsequence elements are moved from the selected set if current candidate position is selected within range compared with the previous selected element. Otherwise, current candidate is rejected until the selection criterion is satisfied. Repeat this process until all K integers are selected.

±S

This interleaver can achieve better performance than average to generate higher weight codewords. Unfortunately, the search time increases with the designed amount of separation, S, and the interleaer length K. Another drawback is that there is no guarantee that the search process will finish successfully. Further, another design criterion based on the constituent encoders adding into S interleaver is presented in [13]

[14]. This goal of modified S interleaver is to eliminate low-weigh codwords with

significant contributions to the error performance. In general, the elimination of a specific codeword can be done by breaking up the input pattern. This modified S interleaver, however, is no guarantee to eliminate all low-weight codewords and find a properly solution.

Usually, the random-like intelreaver structure, their performance degradation is significantly sharp than that of structure interleaver, such as the prime interleaver, in the highly codeword puncturing.

2.3.5 Characteristic of Interelaver

Minimum distance of the interleaver algorithm is a major factor which affects the error floor as defined as duo-distance between position i and j for a given interleaver:

(2.7) ( , ) | | | ( ) ( ) |

dduo i j = − +i j π iπ j

whereπ( )i , π( )j are “interleaved positions” of i, j, where i, j=0, 1, 2, ... , K-1 (K is the number of the interleaver block), and i≠j [15].

A better interleaver algorithm design usually should have three characteristics as the following:

z The should be as large as possible in order to “lower correlation” between input sequences and interleaver output sequences.

dduo

z The distances between any two input information bits before and after the interleaver, denoted d( i , j )=| i – j | and d(π(i) -π(j)), i, j = 0, 1, 2, … , N-1 should not be multiple of the intrinsic period to avoid the change of the feeding self-terminating weight-2, where the intrinsic period are 2v -1, if the memory of the RSC encoder is v. Due to the intrinsic period has a significant effect on the performance of turbo code, a better generator function of Turbo

encoder usually chooses an appropriate primitive polynomial ( of degree v ) as the feedback polynomial go(D).

z The positions of any input information bit before and after interleaver, i.e., i and (0≦i≦K-1), should not be both near the end of the interleaver block in order to avoid edge effects. This is, if i is nearly K, then both

and should be much smaller than K.

( )i π

( )i

π π1( )i

One of Interleaver designs that is optimum in the sense of breaking up the weigh-2 input sequences was introduced in [16]. However, it is also noted in [16]

that braking up only the weight-2 input sequences is not sufficient to achieve good distance properties. This is because input sequences of weigh higher than 2 are not broken up and can still lead to low codeword weights.

For achieving good distance properties, this suggests an additional design criterion based on the correlation between the extrinsic information. This is, an interleaver with good properties is designed to minimize correlation between the extrinsic information of constituent decoder and input sequence [17].

相關文件