MODAP2

36
Principaux ´ el´ ements d’une chaˆ ıne DVB-S2 Codes LDPC ecodage it ´ eratif Codes QC-LDPC El´ ements d’une chaˆ ıne DVB-S2 8 juin 2012

Transcript of MODAP2

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Elements d’une chaıne DVB-S2

8 juin 2012

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Plan

1 Principaux elements d’une chaıne DVB-S2

2 Codes LDPC

3 Decodage iteratif

4 Codes QC-LDPC

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Plan

1 Principaux elements d’une chaıne DVB-S2

2 Codes LDPC

3 Decodage iteratif

4 Codes QC-LDPC

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Principaux elements

Robert Vallet 14/04/2005 39

DVB-S2

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Trame ”bande de base”

Robert Vallet 14/04/2005 41

Base Band Frame

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Structure Trame Codee

Robert Vallet 14/04/2005 42

FEC encoding

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Codage de canal

Robert Vallet 14/04/2005 43

Coding Parameters

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Entrelacement

Robert Vallet 14/04/2005 44

Interleaver

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Modulations

Moreover their performance on linear channels are almost as good as their QAM competitors.

(a) QPSK (b) 8-PSK

(c) 16-APSK (d) 32-APSK Figure 6. Constellation Labelings

00

I

Q

ρ=1ρ=1ρ=1ρ=1

10

11 01

000

I

Q

ρ=1ρ=1ρ=1ρ=1

011

111

001

101

010

110

100

text

1100

11011111

1110

0000

0100

0101

0001

10011011

0011

0111

0110

0010

1010 1000

I

Q

R1

R2

text

10001

1001110111

10101

00000

10000

10010

00010

0001100111

00110

10110

10100

00100

00101 00001

I

Q

R1

R2

R3

11000

01000

11001

0100101101

11101

01100

11100

11110

01110

11111

0111101011

11011

01010

11010

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Modulations

Moreover their performance on linear channels are almost as good as their QAM competitors.

(a) QPSK (b) 8-PSK

(c) 16-APSK (d) 32-APSK Figure 6. Constellation Labelings

00

I

Q

ρ=1ρ=1ρ=1ρ=1

10

11 01

000

I

Q

ρ=1ρ=1ρ=1ρ=1

011

111

001

101

010

110

100

text

1100

11011111

1110

0000

0100

0101

0001

10011011

0011

0111

0110

0010

1010 1000

I

Q

R1

R2

text

10001

1001110111

10101

00000

10000

10010

00010

0001100111

00110

10110

10100

00100

00101 00001

I

Q

R1

R2

R3

11000

01000

11001

0100101101

11101

01100

11100

11110

01110

11111

0111101011

11011

01010

11010

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Modulations

Robert Vallet 14/04/2005 45

Constellations

Constellation Peak to average =2.15 dB

Robert Vallet 14/04/2005 46

32 APSK

Constellation Peak to average =4.1 dB

2 1/R Rγ =

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Trame Couche Physique

Robert Vallet 14/04/2005 47

PL Frame

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Scrambling

Robert Vallet 14/04/2005 48

PLFrame Scrambler

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Mise en forme par racine de cosinus sureleves

Robert Vallet 14/04/2005 49

Square root Nyquist Filter

0.2;0.25;0.35α =

Mono carrier for QPSK or 8PSK

Multi carrier for 16APSK or 32APSKWith non linear compensation

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2PerformancesFig. 22. Required E =N versus spectrum efficiency in the AWGN channel (ideal demodulation).

Fig. 23. Comparison of BER curves for QPSK 1/2 and 8PSK 2/3 inAWGN and nonlinear channels (with and without synch losses).

quasi-linear operating region (i.e., with large OBO) to avoidexcessive intermodulation interference between signals. Inthis case the AWGN performance figures may be adopted forlink budget computations.

V. EXAMPLES OF POSSIBLE USE OF THE SYSTEM

The following examples give some possible applicationsof the DVB-S2 system, showing the advantages offered byits excellent performance and flexibility with respect to thefirst-generation standards DVB-S and DVB-DSNG.

First of all, the case of TV broadcasting is analyzed:Table 2 compares DVB-S2 and DVB-S broadcasting ser-vices via 36 MHz (at 3 dB) satellite transponders, with

Fig. 24. Comparison of BER curves for 16 APSK 3/4 and 32APSK 4/5 inAWGN and nonlinear channels (with and without synch losses).

Table 1C /N Loss [dB] on the Satellite Channel

satellite EIRPs of 53.7 dBW at the service area contour,using 60-cm receiving antenna diameters. The required C/Nof the two systems, DVB-S and DVB-S2, have been bal-anced by exploiting different transmission modes (constant

MORELLO AND MIGNONE: DVB-S2: THE SECOND GENERATION STANDARD FOR SATELLITE BROAD-BAND SERVICES 223

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Performances Fig. 22. Required E =N versus spectrum efficiency in the AWGN channel (ideal demodulation).

Fig. 23. Comparison of BER curves for QPSK 1/2 and 8PSK 2/3 inAWGN and nonlinear channels (with and without synch losses).

quasi-linear operating region (i.e., with large OBO) to avoidexcessive intermodulation interference between signals. Inthis case the AWGN performance figures may be adopted forlink budget computations.

V. EXAMPLES OF POSSIBLE USE OF THE SYSTEM

The following examples give some possible applicationsof the DVB-S2 system, showing the advantages offered byits excellent performance and flexibility with respect to thefirst-generation standards DVB-S and DVB-DSNG.

First of all, the case of TV broadcasting is analyzed:Table 2 compares DVB-S2 and DVB-S broadcasting ser-vices via 36 MHz (at 3 dB) satellite transponders, with

Fig. 24. Comparison of BER curves for 16 APSK 3/4 and 32APSK 4/5 inAWGN and nonlinear channels (with and without synch losses).

Table 1C /N Loss [dB] on the Satellite Channel

satellite EIRPs of 53.7 dBW at the service area contour,using 60-cm receiving antenna diameters. The required C/Nof the two systems, DVB-S and DVB-S2, have been bal-anced by exploiting different transmission modes (constant

MORELLO AND MIGNONE: DVB-S2: THE SECOND GENERATION STANDARD FOR SATELLITE BROAD-BAND SERVICES 223

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Modulations

5 Performance Results: Even though the above design restricts the parity check matrix to be structured, the performance is still very good due to the careful choice of check node/bit node connections. Performance of various code rates with different constellations on AWGN channel is depicted in Figure 7. Maximum number of decoder iterations is 50. If a valid codeword is not found by then, the decoder outputs its current bit estimates at the end of 50 iterations. Each LDPC frame is divided to form multiple MPEG packets, 188 bytes each. Since the error rate requirements of DVB-S2 are rather stringent (10-7 packet error rate), an outer BCH code with the same block length as LDPC frame and an error correction capability of up to 12 bits is employed.

Figure 7. Performance of LDPC+BCH Codes over AWGN Channel, N=64800 bits

C/N requirements of DVB-S2 concatenated LDPC and BCH codes at 10-7 MPEG PER for various code rates and modulation schemes are shown in Figure 8. For comparison, the performance of DVB-S code and Shannon limits of constellations are also plotted. It is

1.E-07

1.E-06

1.E-05

1.E-04

1.E-03

1.E-02

1.E-01

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Es/No (dB)

Pack

et E

rror

Rat

e

2/3

1/23/4

9/108/9

4/5 5/6

QPSK 8-PSK

2/33/4 3/4

16-APSK

4/5

5/6

8/9

32-APSK

3/5

8/9

5/6

9/10

4/5

5/6

8/9

3/4

9/10

2/3

3/5

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Modulations

9

Performance:

More than 2dB better than DVB-S/DSNG

Less than 1dB from Shannon Limit

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Modulations

DIGITAL VIDEO BROADCASTING

EBU TECHNICAL REVIEW – October 2004 6 / 10A. Morello and V. Mignone

budget evaluations have been carried out for a typical Ku-band 36 MHz satellite with European-wideup-link and down-link coverage, following the simplified analysis method described in [5]. Idealtarget carrier-to-noise ratios are derived from Fig. 3; implementation margins are included, asderived from [3] for DVB-S and [6] for DVB-DSNG. The following link characteristics have beenadopted:

Up-link: ITU climatic zone L; frequency: 14.29 GHz; Atmospheric loss and rain attenuation for99.9% of average year (a.y.): 0.2 + 5.6 dB.

Satellite: G/T(dB/°K): 4.3; transmitted EIRP at saturation: 46.5 dBW.

Down-link: ITU climatic zone K; frequency: 10.99 GHz; antenna efficiency: 60%; coupling loss:0.5 dB, pointing loss: 0.5 dB; LNB noise figure: 1.1 dB; Atmospheric loss and rain attenuationfor 99.9% a.y.: 0.1 + 2.4 dB.

SDTV and HDTV broadcasting (CCM and VCM)

Table 2 compares DVB-S2 and DVB-S broadcasting services via 36 MHz (at –3 dB) satellite trans-ponders in Europe, using 60 cm receiving antenna diameters. The example video coding bitratesare: 4.4 Mbit/s (SDTV) and 18 Mbit/s (HDTV) using traditional MPEG-2 coding, or 2.2 Mbit/s (SDTV)and 9 Mbit/s (HDTV) using advanced video coding (AVC) systems which the DVB Project iscurrently defining for future applications.

The required C/N of the two systems, DVB-S and DVB-S2, have been balanced by exploitingdifferent transmission modes and by fine tuning the DVB-S2 roll-off factor and symbol rate. Theresults confirm the capacity gain of DVB-S2 versus DVB-S, exceeding 30%. Furthermore, bycombining DVB-S2 and AVC coding, an impressive number of 21 to 26 SDTV channels per trans-ponder are obtained, thus dramatically reducing the cost per channel of the satellite capacity. Thecombination of DVB-S2 and new AVC coding schemes can favour the introduction of new HDTVservices, with an adequate number of programmes per transponder (e.g. 5 to 6), reducing the satel-lite capacity cost increase with respect to current SDTV services.

The DVB-S2 system may also deliver broadcasting services over multiple Transport Streams,providing differentiated error protection per multiplex (VCM). A typical application is broadcasting ofa highly protected multiplex for SDTV, and of a less protected multiplex for HDTV. Assuming wetransmit a symbol rate of 27.5 Mbaud and use 8PSK 3/4 and QPSK 2/3 modulation, 40 Mbit/s couldbe available for two HDTV programmes and 12 Mbit/s for two to three SDTV programmes, with adifference in C/N requirements of around 5 dB.

Table 2Example comparison between DVB-S and DVB-S2 for TV broadcasting

Satellite EIRP (dBW) 51 53.7

System DVB-S DVB-S2 DVB-S DVB-S2

Modulation & coding QPSK 2/3 QPSK 3/4 QPSK 7/8 8PSK 2/3

Symbol rate (Mbaud) 27.5 (α = 0.35) 30.9 (α = 0.0) 27.5 (α = 0.35) 29.7 (α = 0.25)

C/N (in 27. 5 MHz) (dB) 5.1 5.1 7.8 7.8

Useful bitrate (Mbit/s) 33.8 46 (gain = 36%) 44.4 58.8 (gain = 32%)

Number of SDTVprogrammes

7 MPEG-2

15 AVC

10 MPEG-2

21 AVC

10 MPEG-2

20 AVC

13 MPEG-2

26 AVC

Number of HDTVprogrammes

1-2 MPEG-2

3 - 4 AVC

2 MPEG-2

5 AVC

2 MPEG-2

5 AVC

3 MPEG-2

6 AVC

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

DVB-S2Modulations

Fig. 25. Block diagram of a DVB-S2 ACM link.

encoders. DVB-S (QPSK1/2) would instead require a 5 dBmore powerful station to offer a constant bit rate of 6.1 Mb/s.

VI. CONCLUSION

In this paper we have presented the main characteristicsof the DVB-S2 system, and described the main modulation/demodulation algorithms for a modem implementation, in-cluding receiver synchronization. The algorithms have beenpresented in detail and analyzed by means of theory and com-puter simulations, including real-channel distortions such asnonlinear satellite channel (IMUX, TWTA, OMUX), predis-tortion algorithms in the uplink station, and front-end phasenoise.

End-to-end performance simulation results have beenshown with all the designed modulation/demodulation algo-rithms active. Performance losses with respect to the idealcase have been computed, showing very limited penaltieswith respect to the ideal case. Results show that high-ordermodulation schemes up to 32APSK can be successfully usedwithout excessive penalties.

The DVB Project does not see DVB-S2 replacing DVB-Sin the very short term for conventional TV broadcasting ap-plications. Millions of DVB-S decoders are already operatingreliably, contributing to successful digital satellite businessesaround the world. New applications are being envisaged forsatellite services such as the delivery of consumer HDTV andthe delivery of IP-based services, where DVB-S2 may finda rapid application. Two examples can highlight the revolu-tion we have in front of us. Combining DVB-S2 and newvideo and audio coding schemes (e.g., MPEG-4/H.264), upto 20–25 SDTV or 5–6 HDTV programs may be broadcastin a conventional Ku-band 36-MHz transponder (while stillbeing able to decode current DVB-S services). In the area ofinteractive data services, the DVB-S2 ACM tool may halve

Fig. 26. Pictorial view of the static predistortion algorithm.

the satellite capacity costs, and thus it may relaunch the per-spectives of fast Internet by satellite, at least in rural areas anddeveloping countries, where terrestrial xDSL infrastructuresare not available. In these new application areas, DVB-S2will do what DVB-S could never have done.

APPENDIX A.MODULATOR PRECOMPENSATION ALGORITHMS

APSK modulation is characterized by constellation pointslying on concentric circles. Two main kinds of impairment(pictorially represented in Fig. 26) affect it over nonlinearchannels (see [3] for typical AM/AM and AM/PM satelliteTWTA amplifier).

1) The constellation centroids warping, due to nonlinearcharacteristics of the AM/AM and AM/PM HPA. Thecentroid is the compilation of received constellationcluster centers of mass, conditioned to each constel-lation point. The warping effect is responsible for areduction in the distance among APSK rings (AM/AMcompression) and a differential phase rotation amongthem (AM/PM differential phase).

MORELLO AND MIGNONE: DVB-S2: THE SECOND GENERATION STANDARD FOR SATELLITE BROAD-BAND SERVICES 225

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Plan

1 Principaux elements d’une chaıne DVB-S2

2 Codes LDPC

3 Decodage iteratif

4 Codes QC-LDPC

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes LDPCIntroduction

�� ��1963 : Gallager, codes LDPC regulier, decodeur A et B�� ��1981 : Tanner, codes definis sur les graphes.�� ��1995 : MacKay, decodage par BP�� ��2001 : Richardson et Urbanke, codes LDPC irreguliers etevolutions de densites.

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes Low-Density Parity-Check (LDPC)Introduction

Definition

CH = {c ∈ GF (2)×N |H.c> = 0}

H est la matrice de parite du code de taille M × N,Si H de rang plein : R = K/N avec K = N −M,Equations de parite :

⊕j:hij 6=0 cj = 0, ∀i = 1 . . .M,

H est dıte a faible densite si

elements non nulsN.M

−→N 7→+∞

0

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes Low-Density Parity-Check (LDPC)Representation

Chapitre 4 Analyse et optimisation de recepteurs iteratifs impliquant des codes LDPC

De maniere equivalente, un code LDPC peut etre represente par un graphe bi-nodal, com-munement appele graphe factoriel [KFL01] ou graphe de Tanner [R.M81, Wib96], composes dedeux types de nœuds : des nœuds de variables representant les bits du mot de code et les nœudsde contraintes de parite representant les fonctions de verification de parites. Les nœuds de va-riables et de contraintes de parite sont connectes entre eux par des branches qui indiquent aquelles equations de parite participent les differents nœuds de variables et donc les bits associes.Ainsi le n-ieme nœud de variable et le m-ieme nœud de contrainte de parite seront connectessi Hn,m = 1. On appellera degre de connection d’un nœud de variable (idem pour un nœud decontrainte de parite) le nombre de branches connectees a ce nœud. Un nœud sera dit de degrei s’il est connecte a i branches. La figure 4-2 nous donne la representation d’un code regulier deparametres (N = 8, dv = 2, dc = 4). Les deux premieres representations sont les representationsequivalentes d’un code particulier a l’aide de sa matrice de parite et du graphe factoriel associe.Ce code est issu de la famille de codes parametree par (N = 8, dv = 2, dc = 4) et dont larepresentation est donnee par le troisieme graphe de la figure 4-2. Un code correspond alors aune realisation particuliere de l’entrelaceur.

��������

��������

��������

��������

������������

������������

��������

��������

��������

��������

��������

��������

������������

������������

��������

��������

11 010111

110 11 1111

1010H = 00

00 0

00 00 00

m0 m1 m2 m3m0 m1 m2 m3

Entrelaceur �

Mot de CodeV�eri�cation de parit�e

Mot de CodeV�eri�cation de parit�e

m4 m5 m6m7m7

m6m5m4Fig. 4-2 – Representation d’un code regulier de parametres (N, dv, dc) = (8, 2, 4). Le premier grapherepresente un code particulier (une realisation de l’entrelaceur) issu de la famille (N = 8, dv = 2, dc = 4)representee par le second graphe.

- 49 -

Chapitre 4 Analyse et optimisation de recepteurs iteratifs impliquant des codes LDPC

De maniere equivalente, un code LDPC peut etre represente par un graphe bi-nodal, com-munement appele graphe factoriel [KFL01] ou graphe de Tanner [R.M81, Wib96], composes dedeux types de nœuds : des nœuds de variables representant les bits du mot de code et les nœudsde contraintes de parite representant les fonctions de verification de parites. Les nœuds de va-riables et de contraintes de parite sont connectes entre eux par des branches qui indiquent aquelles equations de parite participent les differents nœuds de variables et donc les bits associes.Ainsi le n-ieme nœud de variable et le m-ieme nœud de contrainte de parite seront connectessi Hn,m = 1. On appellera degre de connection d’un nœud de variable (idem pour un nœud decontrainte de parite) le nombre de branches connectees a ce nœud. Un nœud sera dit de degrei s’il est connecte a i branches. La figure 4-2 nous donne la representation d’un code regulier deparametres (N = 8, dv = 2, dc = 4). Les deux premieres representations sont les representationsequivalentes d’un code particulier a l’aide de sa matrice de parite et du graphe factoriel associe.Ce code est issu de la famille de codes parametree par (N = 8, dv = 2, dc = 4) et dont larepresentation est donnee par le troisieme graphe de la figure 4-2. Un code correspond alors aune realisation particuliere de l’entrelaceur.

��������

��������

��������

��������

������������

������������

��������

��������

��������

��������

��������

��������

������������

������������

��������

��������

11 010111

110 11 1111

1010H = 00

00 0

00 00 00

m0 m1 m2 m3m0 m1 m2 m3

Entrelaceur �

Mot de CodeV�eri�cation de parit�e

Mot de CodeV�eri�cation de parit�e

m4 m5 m6m7m7

m6m5m4Fig. 4-2 – Representation d’un code regulier de parametres (N, dv, dc) = (8, 2, 4). Le premier grapherepresente un code particulier (une realisation de l’entrelaceur) issu de la famille (N = 8, dv = 2, dc = 4)representee par le second graphe.

- 49 -

Matrice de Parite Graphe bipartite associe dıt de Tanner

Graphe de Tanner

Noeuds de variables : associes au bits du mot de codes,Noeuds de parite : associes au equations de parites,branches : lien entre noeuds de variables et noeuds de parite.Un noeud de variable n sera connecte au noeud de parite m sihmn = 1 dans la matrice.

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes Low-Density Parity-Check (LDPC)Codes LDPC : profils

Codes LDPC reguliers

Parametres : (dv ,dc),dv : nombre de ′1′ par colonne,dc : nombre de ′1′ par ligne,R ≥ 1− dv/dc

Chapitre 4 Analyse et optimisation de recepteurs iteratifs impliquant des codes LDPC

De maniere equivalente, un code LDPC peut etre represente par un graphe bi-nodal, com-munement appele graphe factoriel [KFL01] ou graphe de Tanner [R.M81, Wib96], composes dedeux types de nœuds : des nœuds de variables representant les bits du mot de code et les nœudsde contraintes de parite representant les fonctions de verification de parites. Les nœuds de va-riables et de contraintes de parite sont connectes entre eux par des branches qui indiquent aquelles equations de parite participent les differents nœuds de variables et donc les bits associes.Ainsi le n-ieme nœud de variable et le m-ieme nœud de contrainte de parite seront connectessi Hn,m = 1. On appellera degre de connection d’un nœud de variable (idem pour un nœud decontrainte de parite) le nombre de branches connectees a ce nœud. Un nœud sera dit de degrei s’il est connecte a i branches. La figure 4-2 nous donne la representation d’un code regulier deparametres (N = 8, dv = 2, dc = 4). Les deux premieres representations sont les representationsequivalentes d’un code particulier a l’aide de sa matrice de parite et du graphe factoriel associe.Ce code est issu de la famille de codes parametree par (N = 8, dv = 2, dc = 4) et dont larepresentation est donnee par le troisieme graphe de la figure 4-2. Un code correspond alors aune realisation particuliere de l’entrelaceur.

��������

��������

��������

��������

������������

������������

��������

��������

��������

��������

��������

��������

������������

������������

��������

��������

11 010111

110 11 1111

1010H = 00

00 0

00 00 00

m0 m1 m2 m3m0 m1 m2 m3

Entrelaceur �

Mot de CodeV�eri�cation de parit�e

Mot de CodeV�eri�cation de parit�e

m4 m5 m6m7m7

m6m5m4Fig. 4-2 – Representation d’un code regulier de parametres (N, dv, dc) = (8, 2, 4). Le premier grapherepresente un code particulier (une realisation de l’entrelaceur) issu de la famille (N = 8, dv = 2, dc = 4)representee par le second graphe.

- 49 -

Matrice de Parite (2,dc)

Codes LDPC irreguliers

non regulier : degres differents possible pour chaque noeud,R ≥ 1− dv/dc

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Plan

1 Principaux elements d’une chaıne DVB-S2

2 Codes LDPC

3 Decodage iteratif

4 Codes QC-LDPC

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes Low-Density Parity-Check (LDPC)Decodage par Propagation de croyance (Belief Propagation, BP)

Decodage iteratif des codes LDPC

Decodage par Maximum de vraisemblance : trop complexe,Mise en oeuvre d’un algorithme iteratif de decodage : algorithmede propagation de croyances (Belief Propagation, BP) par mise ajour successive de ”messages” (croyances) en sortie de noeudde variables et de parite,Hypotheses : entrelacement parfait⇒ les messages arrivant a un noeud de variable ou de paritesont consideres comme independants⇒ hypothese d’arbre local qui permet un calcul explicite desmessages (probabilites ou log-rapport de probabilites (LLR))transitant sur les branches du graphe de Tanner associe,les messages transitant sur le graphe sont par nature”extrinseques”,Algorithme BP : algorithme iteratif sous-optimal a relativementfaible complexite.

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes Low-Density Parity-Check (LDPC)Decodage par Propagation de croyance

Mise a jour des noeuds de variables

les messages consideres sont des LLR v = log( p(c=0|{z})p(c=1|{z}) )

Chapitre 4 Analyse et optimisation de recepteurs iteratifs impliquant des codes LDPC

4.1.1.2 Decodage des codes LDPC par propagation de croyances

Si il est possible de decoder les codes LDPC au sens du maximum de vraisemblance [Gal63],la complexite devient trop importante des lors que l’on considere des mots de code de taillessignificatives, hypothese importante pour obtenir des performances convenables.

Ainsi [Gal63], puis [R.M81] proposerent un algorithme sous-optimal fournissant de bonnes per-formances. Puis l’algorithme fut revu par [MN96] et par [KFL01] dans le cas de graphes factoriels.On le retrouve dans la litterature sous les appellations suivantes : Propagation de croyances (Be-lief Propagation, BP) ou algorithme Somme-Produit (Sum-Product). Comme son nom l’indique,cet algorithme propage le long des branches du graphe associe au code des messages par na-ture extrinseques. A chaque branche sont associes deux messages, un dans chaque direction depropagation de l’information. Le principe de la propagation de croyance est l’application de laregle de Bayes localement (sur chaque nœud fonctionnel du graphe) et de maniere iterative afind’estimer les probabilites a posteriori de chaque bit. Il a ete montre que sur un graphe sanscycle (le graphe est alors un arbre), la factorisation locale des regles de Bayes conduit au calculexact des probabilites a posteriori des nœuds de variables [KFL01]. Dans ce cas, les messagestransitant sur le graphe sont tous independants. Cependant, dans le cas de graphes avec cycles(ce qui est le cas des codes LDPC a taille finie), la dependance des messages resultante ne permetplus d’assurer le calcul exact des probabilites a posteriori, ce qui induit une sous-optimalite del’algorithme dans ce contexte.

Les messages transitant sur les branches du graphe sont generalement des vecteurs probabi-lites. Cependant, dans le cas binaire, on peut utiliser comme representation des messages unerepresentation mono-dimensionnelle donnee grace a l’utilisation des log-rapports de vraisem-blances (log likelihood ratio, LLR). Nous presentons maintenant l’algorithme BP en prenant

une representation a l’aide des LLR. Nous noterons v = log(p(c=0∣{z})p(c=1∣{z})), le message de sortie sur

une branche d’un nœud de variable et u = log(p(c′=0∣{z′})

p(c′=1∣{z′})) le message de sortie sur une branche

d’un nœud de contrainte de parite. {z} (resp. {z′}) represente l’ensemble des messages entrantsur un nœud de variable (resp. nœud de contrainte de parite) hormis la branche de de sortieconsideree.

Pour l’algorithme BP, chaque iteration ℓ de decodage est composee de deux etapes:

∙ Mise a jour des nœuds de variables (pour un nœud de degre i) (cf. notations figure 4-3) :

Observation du canal

u0

Noeud de donnee

Noeud de parite

u(l−1)1 i v

(l)m

u(l−1)k

Fig. 4-3 – Mise a jour des nœuds de variables

- 51 -

v (l)m = u0 +

∑ik=1,k 6=m u(l−1)

k , ∀m = 1 . . . iu0 = log( p(x=0|y)

p(x=1|y) ) = log( p(y|x=0)p(y|x=1) )

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes Low-Density Parity-Check (LDPC)Decodage par Propagation de croyance

Mise a jour des noeuds de parite

les messages consideres sont des LLR u = log( p(c′=0|{z′})p(c′=1|{z′}) )

Codes LDPC binaires et codes LDPC binaires structures Section 4.1

v(l)m = u0 +i∑

k=1,k ∕=m

u(l−1)k , ∀m = 1 . . . i

vm est le message (LLR) de la m-ieme branche a la sortie d’un nœud de variable . Lesmessages uk sont les LLR a l’entree d’un nœud de variable et u0 est le LLR de l’observation

du canal. A la premiere iteration, tous les messages u(0)k sont nuls. On a egalement u0 =

log(p(x=0∣y)p(x=1∣y)) = log(p(y∣x=0)

p(y∣x=1)) si x, qui represente un bit du mot de code, est une variable

aleatoire equi-distribuee a valeur dans {0, 1}.∙ Mise a jour des nœuds de contraintes de parite (pour un nœud de degre j) (cf. notations

figure 4-4):

Noeud de parite

Noeuds de donnee

v(l)1 v

(l)m

u(l)k

j

Fig. 4-4 – Mise a jour des nœuds de contraintes de parite

tanhu(l)k

2=

j∏

m=1,m∕=k

tanhv(l)m

2, ∀k = 1 . . . j

uk est le message (LLR) de la k-ieme branche a la sortie d’un nœud de contrainte de parite.Les messages vm sont les LLR a l’entree d’un nœud de contrainte de parite.

Une iteration de l’algorithme de propagation de croyance est realisee lorsque tous les messagesdans le graphe ont ete calcules une fois a l’aide des equations precedentes. Apres L iterations,pour la decision, il est possible de calculer le rapport a posteriori pour chacun des nœuds devariable qui sera donne par

vapp,n = u0 +

i∑

k=1

u(L)k ,∀n = 1 . . . N

Et finalement la decision sur la valeur binaire est donnee pour chaque nœud de variable par

mn =1− sign(vapp,n)

2,∀n = 1 . . . N

4.1.1.3 Evolution de densite et approximation gaussienne

Nous discutons dans cette section de l’analyse et de l’optimisation des codes LDPC dans uncadre asymptotique quand l’algorithme BP est utilise.

- 52 -

tanh u(l)k2 =

∏jm=1,m 6=k tanh v (l)

m2 , ∀k = 1 . . . j

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes Low-Density Parity-Check (LDPC)Decodage par Propagation de croyance

Decodage et decision

vapp,n = u0 +i∑

k=1

u(L)k ,∀n = 1 . . .N

mn =1− sign(vapp,n)

2,∀n = 1 . . .N

Messages initiaux pour differents canaux

BEC : u0 ∈ {+∞,−∞,0},BSC : u0 = (−1)y [n] log( 1−p

p ),

Gaussien : u0 = 2σ2

by [n],

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes Low-Density Parity-Check (LDPC)Algorithme BP simplifie : Min-Sum

u(l)k =

j∏m=1,m 6=k

sign(v (l)m )

[minm 6=k

(|v (l)m |)

], ∀k = 1 . . . j

Algorithme Min-Sum attenue

u(l)k = α

(l)k

j∏m=1,m 6=k

sign(v (l)m )

[minm 6=k

(|v (l)m |)

], ∀k = 1 . . . j

0 < α < 1 est un facteur d’attenuation, eventuellement variable.

Algorithme Min-Sum avec offset

u(l)k =

j∏m=1,m 6=k

sign(v (l)m )

[max{

minm 6=k

(|v (l)m |)− β,0

}], ∀k = 1 . . . j

0 < α < 1 est un facteur d’attenuation, eventuellement variable.

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Plan

1 Principaux elements d’une chaıne DVB-S2

2 Codes LDPC

3 Decodage iteratif

4 Codes QC-LDPC

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes Low-Density Parity-Check (LDPC)Codes Quasi-cycliques : definitions et proprietes

Definitions1 chaque mot de code de taille N = n × L comportent n sections

de L bits,2 toute permutation circulaire des mots de codes restreinte a la

longueur d’une section est un mot de code.

Representation

Matrice polynomiale : ces matrices peuvent etre representeespar une matrice dıte polynomiale dont les elements sont despolynomes associes a la matrice de permutation,

P =

0 1 0 . . . . . . 0

0 0 1 0. . .

.

.

.

.

.

.. . .

. . .. . .

.

.

.

.

.

.. . . 1 0

0 0 11 0 . . . . . . . . . 0

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes Low-Density Parity-Check (LDPC)Codes Quasi-cycliques : definitions et proprietes

Exemple :

H =

(I + P2 I + P4 I 0I + P P + P3 0 I

)

Definitions

Matrice de base : on peut associer a la matrice H une matrice debase HB dont les elements sont le nombre de monomes achaque elements non nul de taille L× L,Ordre de lift/extension/expansion : on dıt que H est obtenue parextension ou “lifting” de HB d’ordre L.

HB =

(2 2 1 02 2 0 1

)

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes Low-Density Parity-Check (LDPC)Codes Quasi-cycliques : definitions et proprietes

Representation par protographes

on peut associer un graphe de Tanner a HB qui represente ladescription synthetique des connections de H,le graphe resultant est appele protographe (projected-graph),

Representation du graphe projete (protographe)

Principaux elements d’une chaıne DVB-S2 Codes LDPC Decodage iteratif Codes QC-LDPC

Codes Low-Density Parity-Check (LDPC)Codes Quasi-cycliques : interets pratiques

le codage peut etre realise de maniere lineaire en temps car lamatrice generatrice peut etre realisee a l’aide de simplesregistres a decalage,representation de H simplifiee par utilisation conjointe de lamatrice de base et des polynomes associes a l’extension,le decodage peut-etre realise de maniere fortement parallelisee⇒ codes ayant en general un tres bon compromiscomplexite/performance⇒ de facto, le type de codes utilises dans les standards