Transcript
Page 1: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

1

Turbo coding (CH 16)

• Parallel concatenated codes

• Distance properties

• Not exceptionally high minimum distance

• But ”few” codewords of ”low” weight

• Trellis complexity

• Usually extremely high trellis complexity

• Decoding

• Suboptimum (but close to ML) iterative (turbo) decoding

• Performance

• Low error probability at SNRs close to the Shannon limit

Page 2: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

2

History• Shannon (1948):

• The channel’s SNR (AWGN channel) determines the capacity C, in the sense that for code rates R < C we can have error-free transmission

• For each code rate R we can compute the Shannon limit

• Difficult to approach the Shannon limit by classical methods

• But... Gallager (1961) and Tanner (1981)

• Berrou, Glavieux, and Thitimajshima invented turbo codes in 1993

Page 3: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

3

Encoding• Encode information by a systematic encoder

• Usually a recursive systematic rate ½ convolutional encoder

• Reorder information bits

• Encode permuted information bits again, using a recursive systematic encoder (may be the same). Delete the systematic bits this time

Page 4: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

4

Example, more detailed

Page 5: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

5

Remarks• Starting with rate ½ component codes we get approximately rate 1/3

• Can be punctured (parity or information bits) to adjust the rate

• Can add more interleavers and component codes to lower the rate

• Large information blocks give

• Better distance properties

• Better working decoding algorithm

• Simple component codes (ν=4?) are best for moderate BERs

• Interleaver design is difficult, and there is no known technique to design the best one. Design criteria are:

• Implementation complexity

• Performance at low SNR (pseudorandom-like)

• Performance at high SNR (high minimum distance)

• Disadvantage: Delay in decoding

Page 6: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

6

Example

ν = 4, K = 65536

Waterfall region

Error floor region

Page 7: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

7

Distance properties of turbo codes

• Classical coding approach is to maximize minimum distance

• New approach: Few codewords with low weights

• Recall:

• In a feedforward encoder, a low-weight codeword is usually generated by a low-weight input sequence

• In a feedback encoder, a low-weight codeword is usually generated by an input information sequence that is a multiple of the feedback polynomial. Often higher input weights

• Spectral thinning

Page 8: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

8

Spectral thinning: Example

Page 9: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

9

Spectral thinning: Example

Page 10: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

10

Spectral thinning: Example

Page 11: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

11

Spectral thinning: Remarks

• Requires feedback encoder

• Single one input in feedforward encoder: Local weight gain effect

• Single one input in feedback encoder: Gains weight (at least) until next input one is seen

• Requires an interleaver to make the code time-varying

• Stronger effect for longer block lengths; similar weight spectrum as random codes

• Moderate effect on minimum distance

Page 12: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

12

Interleavers for turbo codes• Goal: Input patterns which produce low-weight words in one

component code should map through the interleaver to patterns which produce high-weight words in the other component code

• Interleavers with ”traditional” structure is usually bad for turbo codes

• Interleavers with a randomlike structure achieve the above goal to a larger extent

• Interleavers which are pseudorandom with constraints on spreading properties, and with additional constraints based on the particular component encoders, have provided good results

• But such ”randomlike” interleavers may be hard to implement in an efficient manner

• Dithered relative prime (DRP) and quadratic permutation polynomial (QPP) interleavers are easy to implement and have very good properties as well*

Page 13: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

13

Block interleaver: Example• Critical input sequence is (1+D5)Dl

Page 14: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

14

Effects of block interleaver

Page 15: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

15

Pseudorandom interleavers• Your favourite (pseudo)random generator together with

table lookup

• Quadratic congruence

• cm ≡ km(m+1)/2 (mod K), 0 ≤ m < K, to generate an

index mapping function cm→ cm+1 (mod K), k is an odd integer

• Example with K = 4 and k = 1: (cm) = (0,1,3,2) and interleaver is defined by (1,3,0,2). This pattern can also be shifted cyclically

• Statistical properties are similar to random interleavers when K is a power of 2

Page 16: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

16

Turbo decoding

Channel

Page 17: Turbo coding (CH 16) - Universitetet i Bergeneirik/INF244/Lectures/Lecture14.pdf · Interleavers for turbo codes • Goal: Input patterns which produce low-weight words in one

17

Turbo decodingLc = 4Es /N0

ExtrinsicApriori

L(1)(ul) = ln(P(ul = +1|r1, La(1)) / P(ul = -1|r1, La

(1)))

SISO 1 SISO 2


Top Related