22.01.2014 Views

Error Control - From Theory to Near-Capacity Implementation

Error Control - From Theory to Near-Capacity Implementation

Error Control - From Theory to Near-Capacity Implementation

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Error</strong> <strong>Control</strong> -<br />

<strong>From</strong> <strong>Theory</strong> <strong>to</strong> <strong>Near</strong>-<strong>Capacity</strong><br />

<strong>Implementation</strong><br />

Pål Orten<br />

Nera Research<br />

Outline<br />

• Why error control?<br />

• What is possible with error control<br />

coding?<br />

• Traditional Coding Schemes<br />

• New <strong>Capacity</strong> Approaching Schemes<br />

• Coding for High Spectral Efficiency<br />

• Example applications - Nera Products<br />

© Nera Research/P. Orten<br />

1


Why <strong>Error</strong> <strong>Control</strong> Coding<br />

Transmitter<br />

Channel<br />

Receiver<br />

• Thermal noise<br />

• Channel: Fading and inter-symbol interference<br />

• Interference: from system itself and other<br />

systems<br />

• May be combated by channel coding (there are<br />

other ways also)<br />

© Nera Research/P. Orten<br />

Interference<br />

Noise<br />

Principle of error control<br />

• Add redundancy <strong>to</strong> enable<br />

– <strong>Error</strong> detection<br />

– <strong>Error</strong> correction<br />

– or both<br />

• d min =10, correct 4 errors, detect d min -1 errors<br />

C1<br />

d min<br />

C2<br />

© Nera Research/P. Orten<br />

2


Some <strong>Theory</strong><br />

© Nera Research/P. Orten<br />

Shannon Limit<br />

⎛ S ⎞<br />

C = W ⎜1<br />

+ ⎟<br />

⎝ N ⎠<br />

⇔<br />

E<br />

N<br />

b<br />

0<br />

log 2<br />

C<br />

( 2 1)<br />

/ W<br />

−<br />

=<br />

W<br />

C<br />

W → ∞ ⇒ E<br />

/ N0 → −1.6 dB<br />

No limit on input, AWGN channel<br />

b<br />

© Nera Research/P. Orten<br />

3


W/C<br />

8<br />

6<br />

4<br />

2<br />

W/C versus E b /N 0<br />

Shannon Limit<br />

Asymp<strong>to</strong>te -1.6 dB<br />

0<br />

-2 0 2 4 6<br />

© Nera Research/P. Orten E b<br />

/N 0<br />

[dB]<br />

• No limit on<br />

input<br />

• AWGN<br />

channel<br />

• To reach the<br />

limit:<br />

– infinite<br />

bandwidth<br />

– infinite code<br />

word length<br />

I praksis?<br />

• For praktiske systemer:<br />

– koderate R c > 0<br />

– begrensninger på input (gitt av modulasjon)<br />

– endelig kodeordslengde<br />

⇒<br />

-1.6 dB grensen vil ikke nås<br />

• Praktisk grense for<br />

© Nera Research/P. Orten<br />

– koderate eller bit/s/Hz<br />

– modulasjonsformat<br />

– kodeordslengde<br />

4


Effect of Coding<br />

© Nera Research/P. Orten<br />

E b /N 0<br />

<strong>Capacity</strong> for given Code Rate<br />

C<br />

=<br />

1<br />

2<br />

log<br />

2<br />

(1 +<br />

2RcE<br />

N<br />

0<br />

b<br />

)<br />

R<br />

c<br />

© Nera Research/P. Orten<br />

C<br />

≤<br />

1−<br />

H ( e)<br />

b<br />

Find (P b , E b /N 0 ) pair<br />

⇒<br />

<strong>From</strong> the converse<br />

<strong>to</strong> the coding theorem<br />

Limit for given code rate<br />

5


<strong>Capacity</strong> for different code rates<br />

10 0 E b<br />

/N 0<br />

[dB]<br />

BER<br />

10 -2<br />

R c =0.75<br />

R c<br />

=0.5<br />

R c =0.33<br />

R c =0.1<br />

Unconstrained<br />

AWGN<br />

Channel<br />

10 -4<br />

10 -6<br />

-2 -1 0 1 2<br />

© Nera Research/P. Orten<br />

<strong>Capacity</strong> as function of code<br />

rate - binary input (1)<br />

Example: Binary-input (+/- A), AWGN channel<br />

∞<br />

1<br />

p(<br />

y | A)<br />

1<br />

p(<br />

y | −A)<br />

C =<br />

∫<br />

p(<br />

y | A) log<br />

2<br />

dy +<br />

∫<br />

p(<br />

y | −A) log<br />

2<br />

dy<br />

2<br />

p(<br />

y)<br />

2<br />

p(<br />

y)<br />

−∞<br />

∞<br />

−∞<br />

Constrained<br />

AWGN Channel,<br />

(<strong>From</strong> Proakis)<br />

© Nera Research/P. Orten<br />

6


<strong>Capacity</strong> as function of code<br />

rate - binary input (2)<br />

Code Rate<br />

1<br />

0.9<br />

0.8<br />

0.7<br />

0.6<br />

0.5<br />

0.4<br />

0.3<br />

Unconstrained Input<br />

Binary Input<br />

© Nera Research/P. Orten<br />

0.2<br />

-1 0 1 2 3 4 5 6<br />

<strong>Capacity</strong> Limit E /N [dB] b 0<br />

Theoretical limit for given<br />

spectral efficiency<br />

•Limited bandwidth, W<br />

•Data rate R (bits/s)<br />

•Shannons capasity can be expressed as:<br />

R<br />

η =<br />

W<br />

© Nera Research/P. Orten<br />

E b<br />

N<br />

0<br />

η<br />

2 −1<br />

≥<br />

η<br />

is spektral-efficiency in bit/s/Hz<br />

7


Theoretical limit for given<br />

spectral efficiency (plot)<br />

Spectral Effeciency [bit/s/Hz]<br />

5<br />

4<br />

3<br />

2<br />

1<br />

0<br />

-2 0 2 4 6 8<br />

<strong>Capacity</strong> Limit E /N (dB) b 0<br />

© Nera Research/P. Orten<br />

Unconstrained<br />

AWGN<br />

Channel<br />

Larger Modulation Alphabets-<br />

Higher Spectral Efficiency<br />

<strong>Capacity</strong> Limit E b<br />

/N 0<br />

(dB)<br />

10<br />

8<br />

6<br />

4<br />

2<br />

0<br />

QPSK<br />

16-QAM<br />

64-QAM<br />

Constrained<br />

Additive Gaussian<br />

Channel<br />

0.3 0.4 0.5 0.6 0.7 0.8 0.9<br />

Code Rate<br />

© Nera Research/P. Orten<br />

8


<strong>Capacity</strong> as function of<br />

spectral efficiency<br />

Spectral Effeciency [bit/s/Hz]<br />

6<br />

5<br />

4<br />

3<br />

2<br />

1<br />

0<br />

-2 0 2 4 6 8 10<br />

<strong>Capacity</strong> Limit E /N (dB) b 0<br />

© Nera Research/P. Orten<br />

Unconstrained<br />

QPSK<br />

16-QAM<br />

64-QAM<br />

Constrained<br />

Additive Gaussian<br />

Channel<br />

Calculation:<br />

η = log 2 (M)*R c<br />

<strong>Capacity</strong> Limit E b<br />

/N 0<br />

(dB)<br />

<strong>Capacity</strong> as function of<br />

Packet Length<br />

Based on paper:<br />

3<br />

2<br />

1<br />

0<br />

-1<br />

R c<br />

=0.1<br />

R c<br />

=0.33<br />

R c<br />

=0.5<br />

R c<br />

=0.75<br />

10 2 10 3 10 4 10 5 10 6<br />

Block length N information bits<br />

© Nera Research/P. Orten<br />

Code Performance as<br />

Function of Block<br />

Size, av Dolinar,<br />

Divsalar & Simon<br />

Expression given as<br />

function of N, R c and<br />

P w (Word <strong>Error</strong><br />

Probability)<br />

9


Traditional Coding Schemes<br />

© Nera Research/P. Orten<br />

Basic Terms<br />

• Code rate<br />

k<br />

R = =<br />

n<br />

• Soft Decisions<br />

# Information<br />

# Code<br />

word<br />

symbols<br />

symbols<br />

– Principle idea (more or less correct/wrong)<br />

– Erasures decoding (3 level soft decision - very simple)<br />

– 8 level soft decision - often used in many coding<br />

schemes<br />

– Soft decision gain: ca 2 dB for AWGN channels<br />

– Typically 7-9 dB possible for fading channels<br />

© Nera Research/P. Orten<br />

10


Traditional Coding Schemes<br />

●<br />

Block Codes<br />

– Long Codes<br />

●<br />

Convolutional Codes<br />

– Short Codes<br />

– Hard desisjon<br />

– Soft desisjon (Viterbi)<br />

– Good at low bit error<br />

rates (10 -4 and down)<br />

– Good at high bit-error<br />

rates (10 -3 - 10 -4 )<br />

– Many types<br />

• Ex. Hamming, Golay,<br />

Reed-Muller, Reed<br />

Solomon, BCH, etc<br />

– Used for instance in CD<br />

players (RS), Intelsat<br />

(RS), Voyager (Golay)<br />

– Used in Inmarsat, 3G and<br />

various wireless systems<br />

– Long constraint length<br />

codes with sequential<br />

decoding<br />

© Nera Research/P. Orten<br />

Basic Block Code<br />

• Operates on one block at a time<br />

c = mG<br />

• Algebraic decoding (often)<br />

• Soft decision decoding - high complexity<br />

• Typically good performance at high code<br />

rates<br />

© Nera Research/P. Orten<br />

11


Performance Golay Code<br />

• Extended Golay<br />

Code (24,12)<br />

• Hard decision<br />

• Erasure decoding<br />

• Soft decoding using<br />

Chase algorithm<br />

• Used in WLL<br />

• Low complexity<br />

decoding<br />

© Nera Research/P. Orten<br />

Convolutional Codes<br />

– Described by trellis<br />

– Maximum Likelihood Decoding (ML) by Viterbi<br />

algorithm<br />

– Soft Decision decoding easily implemented<br />

– Used in very many applications, Deep Space, SatCom,<br />

various wireless systems like 3G<br />

– Rate 1/(n+1) encoder:<br />

1<br />

2<br />

3<br />

K-2 K-1 K<br />

g 0<br />

© Nera Research/P. Orten<br />

g n<br />

12


Convolutional Code - BER<br />

• K=7 Feed<br />

Forward Code<br />

• MFD (and ODS)<br />

• Viterbi Decoding<br />

• Rate 3/4<br />

obtained by<br />

puncturing rate<br />

1/2<br />

BER<br />

BER<br />

10 0 1/2-rate<br />

3/4-rate<br />

10 -2<br />

10 -4<br />

10 -6<br />

10 -8<br />

0 1 2 3 4 5 6<br />

EbNo (dB)<br />

© Nera Research/P. Orten<br />

E b /N 0<br />

Foldningskode - Tap<br />

Koderate<br />

Yting ved Kapasitet<br />

10 -6 Constrained<br />

Binary Input<br />

Tap pga<br />

avgrensa<br />

blokklengde<br />

½ 5.0 0.2 ?? 4.8<br />

¾ 6.0 1.6 ?? 4.4<br />

Tap til<br />

Constrained<br />

input<br />

Grense<br />

•Implementert i ASIC<br />

•Relativt s<strong>to</strong>rt tap til kapasitetsgrensa<br />

•Blokklengde - vanskelig å definere<br />

© Nera Research/P. Orten<br />

13


Concatenated Coding<br />

RS<br />

encoder<br />

Convolutional<br />

Encoder<br />

Viterbi<br />

Decoder<br />

RS<br />

decoder<br />

• Traditional scheme for very low error rate<br />

• Typically RS + Convolutional<br />

• Viterbi - soft decisions<br />

• RS burst error correction<br />

• Viterbi gives moderate BER where RS<br />

takes over and brings it further down<br />

• Long Code with practical complexity<br />

© Nera Research/P. Orten<br />

Alternative <strong>to</strong> Concatenation<br />

• Use a very long<br />

constraint length (K)<br />

convolutional code<br />

• Typically - K=30-50<br />

• <strong>Error</strong> rate decreases<br />

exponentially with<br />

constraint length<br />

• Viterbi decoding:<br />

– 2 30 ~ 10 9 states<br />

• NOT IMPLEMENTABLE<br />

• Solution: Sequential<br />

Decoding<br />

– Limited but smart<br />

search<br />

– Search the most likely<br />

paths<br />

– Complexity depends<br />

on channel conditions<br />

– Can calculate<br />

conditions for when<br />

decoding is possible<br />

© Nera Research/P. Orten<br />

14


Sekvensiell dekoding<br />

Koderate<br />

Pare<strong>to</strong><br />

eksponent<br />

lik 1 ved:<br />

Kapasitet<br />

Constrained<br />

Binary Input<br />

Tap pga<br />

avgrensa<br />

blokklengde<br />

Tap til<br />

Constrained<br />

Grense<br />

½ 2.2 dB 0.2 dB ?? 2 dB<br />

¾ 3.7 dB 1.6 dB ?? 2.1 dB<br />

• K=36, R=1/2 Implementert i DSP<br />

• Problem: Overflyt i buffere<br />

© Nera Research/P. Orten<br />

© Nera Research/P. Orten<br />

Eksempel frå Nera Produkt<br />

• Inmarsat M&B<br />

– Foldningskode K=7 (1/2 og 3/4-rate)<br />

– Sekvensiell dekoding K=36 (1/2 rate)<br />

• Nera World Communica<strong>to</strong>r<br />

– Turbo 1/2-rate med 16-QAM<br />

• DVB-RCS<br />

– Foldningskode og Reed-Solomon (255,239,8)<br />

– Turbo<br />

•BGAN (next generation mobile terminals)<br />

– Turbo 16 tilstander<br />

15


New iterative capacity<br />

approaching schemes<br />

© Nera Research/P. Orten<br />

Turbo Codes<br />

ICC 1993 - Presentation of Turbo Codes<br />

- a huge step <strong>to</strong>wards the Shannon limit<br />

• Convolutional Turbo:<br />

– Parallel Concatenated<br />

Convolutional (PCC) codes<br />

– Serially Concatenated<br />

Convolutional (SCC) Codes<br />

– Separated by interleaver<br />

– Soft in and soft out, iterative<br />

decoding<br />

• Block based Turbo:<br />

– Turbo Product Codes<br />

(TPC)<br />

– PA-Codes<br />

– LDPC Codes<br />

– Soft decision, iterative<br />

decoding<br />

Long codes, soft decision, iterative decoding<br />

© Nera Research/P. Orten<br />

16


PCC Turbo Principle<br />

• Encoder<br />

– Recursive convolutional<br />

encoders<br />

– Interleaver essential<br />

X m<br />

• Decoder<br />

– Soft in soft out<br />

– Many iterations<br />

Xd<br />

KODER<br />

I<br />

X s<br />

Ys<br />

Y m<br />

DEKODER<br />

I<br />

Le<br />

(Soft info)<br />

INTER-<br />

LEAVER<br />

INTER-<br />

LEAVER<br />

DEINTER-<br />

LEAVER<br />

KODER<br />

II<br />

Zs<br />

Zm<br />

DEKODER<br />

II<br />

L e<br />

(Soft info)<br />

X'd<br />

© Nera Research/P. Orten<br />

PCC codes - properties<br />

© Nera Research/P. Orten<br />

– The ”original” Turbo code as presented by<br />

Berrou in 1993<br />

– Good overall performance, also at 10 -3<br />

– Good convergence of iterative decoder (few<br />

iterations necessary)<br />

– Possible candidates:<br />

• BGAN (16-states)<br />

• UMTS (8-states)<br />

• DVB-RCS (8-states, duo-binary)<br />

– The above codes must be punctured <strong>to</strong> get<br />

high rate => affects BER performance<br />

17


Performance Example<br />

BER<br />

10 -1 <strong>Capacity</strong> Limit<br />

Uncoded<br />

10 -2<br />

Sequential limit<br />

Convolutional Coding<br />

Concatenated Coding<br />

DVB-RCS Turbo<br />

10 -3<br />

10 -4<br />

Convolutional<br />

• MPEG block<br />

lengths (188<br />

bytes)<br />

• R=1/2<br />

10 -5<br />

10 -6<br />

Turbo<br />

Concatenated<br />

RS+Convolutional<br />

10 -7<br />

0 2 4 6 8 10 12 14<br />

© Nera Research/P. Orten<br />

E b /N 0<br />

Code Rate<br />

DVB-RCS<br />

1<br />

0.9<br />

0.8<br />

0.7<br />

0.6<br />

0.5<br />

0.4<br />

0.3<br />

-1 0 1 2 3 4 5 6<br />

Required E b /N 0<br />

Code Performance Comparison for MPEG (1 packet) and PER=10 -5<br />

© Nera Research/P. Orten<br />

Required Eb/No <strong>to</strong> get 1e-5 (MPEG)<br />

<strong>Capacity</strong> Binary Input<br />

<strong>Capacity</strong> MPEG Block<br />

Turbo Codes<br />

Concatenated Codes<br />

18


Iterative decoding - Block Codes<br />

• Turbo Product Codes (TPC)<br />

• Product Accumulate Codes<br />

• Low Density Parity Check Codes (LDPC)<br />

• Nera: Theoretical Studies and Simulations<br />

• Interesting because:<br />

© Nera Research/P. Orten<br />

– Typically better than convolutional based Turbo<br />

codes at high code rates<br />

– Fewer patents<br />

– TPC included in IEEE802.16 standard<br />

– PA codes - low complexity<br />

– LDPC has “World Record” 0.05 dB from Shannon<br />

– Complexity -> high-capacity systems<br />

Turbo Product Codes (TPC)<br />

• Two (or more) block codes<br />

concatenated<br />

• Soft in soft out, iterative decoding<br />

• Component codes - e.g. BCH<br />

d 11<br />

d 12<br />

d 13<br />

d 14<br />

d 15<br />

p 16<br />

p 17<br />

d 21<br />

d 22<br />

d 23<br />

d 24<br />

d 25<br />

p 26<br />

p 27<br />

d 31 d 32<br />

d 33<br />

d 34<br />

d 35<br />

p 36<br />

p 37<br />

p 41 p 42<br />

p 43<br />

p 44<br />

p 45<br />

p 46 p 47<br />

© Nera Research/P. Orten<br />

19


Ytelse TPC<br />

• Simulert med AWGN, QPSK and 16QAM<br />

• Ytelse ved 10 -5 BER<br />

(TPC)<br />

Koderate<br />

Ytelse ved Kapasitet<br />

10 -5 Constrained<br />

Binary Input<br />

Blokklengde<br />

(kodet)<br />

Ekstra tap<br />

Blokklengde<br />

Tap til<br />

Praktisk<br />

Grense<br />

0.66 3.0 dB 1.2 dB 1024 (32x32) 1.0 dB 0.8 dB<br />

0.79 3.3 dB 2.0 dB 4096 (64x64) 0.5 dB 0.8 dB<br />

16-QAM<br />

0.79 6.8 dB 5.1 dB 4096 (64x64) 0.5 dB 1.3 dB<br />

© Nera Research/P. Orten<br />

TPC Performance vs TCM<br />

TCM and TPC with 64 QAM, comparable<br />

spectral efficiency ((64,57) TPC code)<br />

BER<br />

10 -2 <strong>Capacity</strong> Limit<br />

TPC and 64QAM<br />

64-TCM<br />

10 -4<br />

10 -6<br />

• Good at high code<br />

rates<br />

• Interesting for radio<br />

link systems<br />

• In IEEE802.16<br />

standard<br />

10 -8<br />

4 6 8 10 12 14 16 18<br />

© Nera Research/P. Orten<br />

E b /N 0<br />

20


Product Accumulate Codes<br />

PA-I<br />

SPC<br />

π 1<br />

π 2<br />

+<br />

T<br />

SPC<br />

PA-II<br />

TPC<br />

TPC<br />

TPC<br />

/SPC<br />

/SPC<br />

/SPC<br />

π 2<br />

+<br />

T<br />

© Nera Research/P. Orten<br />

PA code -properties<br />

– A new low complexity scheme, presented in<br />

2001<br />

– PA-codes have good overall performance<br />

– No puncturing, assumed <strong>to</strong> have better<br />

performance at low BER<br />

– Few/no patents<br />

– Slower convergence than PCC<br />

• PA-I<br />

• PA-II<br />

• Generalised PA- codes (for lower rates)<br />

© Nera Research/P. Orten<br />

21


Low Density Parity Check<br />

(LDPC) Codes<br />

• Block Code<br />

• Iterative decoding<br />

c=mG GH T =0<br />

1 1<br />

1<br />

1<br />

© Nera Research/P. Orten 1<br />

1<br />

H<br />

1<br />

1<br />

1<br />

1<br />

LDPC codes -properties<br />

– Proposed by Gallager i 1963<br />

– Good performance, especially for high code<br />

rates and long block lengths<br />

– 0.005 dB from Shannon limit!!<br />

– Low decoder complexity<br />

– Few (no?) patents<br />

– Disadvantages:<br />

• Some error flattening for some codes<br />

• Not ready for implementation, much ongoing<br />

research<br />

© Nera Research/P. Orten<br />

22


Ytelse - LDPC koder<br />

• Simulert ytelse, BPSK/QPSK, AWGN<br />

• ATM og MPEG blokker<br />

• Regulære LDPC koder, BER=10 -5<br />

(LDPC)<br />

Koderate<br />

Ytelse ved Kapasitet<br />

10 -5 Constrained<br />

Binary Input<br />

Blokklengde<br />

(kodet)<br />

Ekstra tap<br />

Blokklengde<br />

Tap til<br />

Praktisk<br />

Grense<br />

1/2 1.8 dB 0.2 dB 1504 MPEG 0.7 dB 0.9 dB<br />

4/5 3.7 dB 1.6 dB 1504 MPEG 0.7 dB 1.4 dB<br />

1/2 2.8 dB 0.2 dB 424 ATM 1.2 dB 1.4 dB<br />

4/5 4.5 dB 1.6 dB 424 ATM 1.2 dB 1.7 dB<br />

© Nera Research/P. Orten<br />

Performance Example LDPC Codes<br />

Spectral<br />

Efficiency<br />

1<br />

0.8<br />

0.6<br />

0.4<br />

•PER=10 -5<br />

• BER=10 -5<br />

for LDPC<br />

• MPEG packets<br />

<strong>Capacity</strong><br />

0.2<br />

Concatenated<br />

PCC<br />

TPC<br />

LDPC<br />

0<br />

-1 0 1 2 3 4 5 6 7<br />

© Nera Research/P. Orten<br />

Required E b /N 0<br />

23


Mapping <strong>to</strong> higher order<br />

constellations<br />

TCM<br />

x n<br />

x m+1<br />

n<br />

: :<br />

n-m<br />

: :<br />

MAPPING<br />

Select signal<br />

from subset<br />

a i<br />

xm<br />

x1<br />

: :<br />

Convolutional<br />

Encoder<br />

Rate m/(m+1)<br />

z m<br />

: :<br />

z1<br />

Select<br />

Subset<br />

z0<br />

• Optimised mapping necessary in order <strong>to</strong><br />

achieve coding gain<br />

• Effective “block length” of code is short<br />

© Nera Research/P. Orten<br />

Mapping <strong>to</strong> higher order<br />

constellations<br />

Turbo-TCM<br />

/ TCM<br />

x 1<br />

Turbo-TCM / TCM<br />

Encoder <strong>to</strong>gether with<br />

optimised mapping<br />

ai<br />

Encoder +<br />

Gray mapping<br />

© Nera Research/P. Orten<br />

MAPPING<br />

x1 y 1<br />

Turbo<br />

Simple<br />

Encoder<br />

Gray<br />

Mapping<br />

ai<br />

24


Mapping<br />

• Turbo + Gray mapping works well,<br />

because<br />

© Nera Research/P. Orten<br />

– Code is long and give good coding gain<br />

anyway<br />

– Distance properties of individual symbols in<br />

the code is less important<br />

– Also more flexible with respect <strong>to</strong><br />

• Modulation schemes<br />

• Code rate<br />

– Confirmed by several papers<br />

Code Comparison<br />

• Block lengths K=1000 and 4000<br />

– With 2.5*N <strong>to</strong>tal delay16µs and 64 µs<br />

• Modulation/Code rate Schemes<br />

• 64-QAM Code rate ≈ 0.85<br />

• 128-QAM Code rate ≈0.93<br />

© Nera Research/P. Orten<br />

25


BER Performance 64-QAM<br />

Short Delay (K=1000)<br />

© Nera Research/P. Orten<br />

BER Performance 64-QAM<br />

Long Delay (K=4000)<br />

© Nera Research/P. Orten<br />

26


Evaluation of Iterative Decoding<br />

BER<br />

BER<br />

Flattening<br />

is possible Bad implemena<strong>to</strong>n of<br />

iterative algorithm<br />

Given by<br />

minimum distance<br />

of code<br />

Eb/N 0<br />

© Nera Research/P. Orten<br />

1000<br />

Decoding Complexity of Coding<br />

Schemes<br />

900<br />

800<br />

700<br />

600<br />

500<br />

400<br />

300<br />

200<br />

100<br />

0<br />

LDPC (tree) PCC-BGAN PCC-UMTS PA-I PA-II PA-II (tree) TCM<br />

R=0.84 R=0.93<br />

Complexity of coding schemes in # of max-log or min-sum operations pr decoded bit<br />

© Nera Research/P. Orten<br />

27


Conclusion<br />

• For practical systems we can not achieve<br />

the -1.6 dB limit<br />

• “Practical limit” - depend on rate,<br />

constellation, block length<br />

• New techniques with iterative decoding<br />

approach capacity<br />

• For High Data Rates - Complexity is a<br />

consern<br />

• Mapping not critical for long codes<br />

© Nera Research/P. Orten<br />

28

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!