SlideShare une entreprise Scribd logo
1  sur  59
Télécharger pour lire hors ligne
Présenté par :
Mr : CHABANE . M
Mlle: ALLALI . N
Option : Réseaux & Télécommunication
Université TAHRI Mohammed
Béchar
MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE
SCIENTIFIQUE
La transmission est perturbée par un bruit et un système de
codage est utilisé pour détecter, ou même corriger les erreurs
provoquées par le bruit. C'est ce qu'on appelle un code correcteur
d'erreurs. Ce mécanisme est utilisé sur tous les moyens de
transmission de données informatiques.
Origine des codes correcteurs d’erreurs : C’est la théorie de l’information initiée par C. Shannon dans les années 50.
[Shannon] Fin des années 40 :
 Limites du codage pour les canaux discrets sans mémoire.
 Codes aléatoires atteignent cette limite !.
Problèmes :
- constructions explicites ?
- codage efficace ?
- décodage efficace ?
Codage efficace :
codes linéaires
Constructions explicites :
- codes de Hamming.
- codes de Golay, (décodage possible car n = 23).
- codes BCH, (décodage algébrique).
- codes de Reed-Muller, (décodage performant seulement pour les
codes de rendement proches de 0 ou 1).
- codes de Reed-Solomon, (décodage algébrique)..
[Elias,Hamming,Golay,Muller,Reed,Solomon,...] fin des années 40-50
[Elias,Fano, Viterbi, Wozencraft,...] années 50-60
Codage Convolutif :
- constructions explicites,
- codage très efficace.
- quand la mémoire µ du codeur est petite (0 ≤−µ ≤−15) décodage
au maximum de vraisemblance réalisable en temps réel pour tous les
canaux sans mémoire (décodage de Viterbi) !
- quand µ est plus grand, décodage séquentiel avec des
performances proches du décodage au maximum de vraisemblance
en dessous d’un niveau critique du bruit.
La concaténation de codes (Forney, 1966)
Applications : Le décodage est simple à mettre
en œuvre, mais n’exploite pas l’intégralité de
l’information disponible.
Les Turbocodes Convolutifs (Berrou & Glavieux, 1990)
Obtenus par la combinaison de 2 ingrédients clés
Chaque décodeur profite ici d’une information, délivrée par l’autre
décodeur, pour améliorer ses propres décisions (consensus).
La problématique des Codes Correcteurs d’Erreur est la suivante : un
expéditeur A envoie un message M à B, durant la transmission de ce
message des erreurs se produisent éventuellement, et B reçoit un message
M’ qui comporte peut-être des erreurs. Il s’agit de trouver comment faire
pour que B,
1- d’une part détecte l’existence d’erreurs,
2- d’autre part, si elles ne sont pas trop nombreuses, sache les corriger.
les codes de correction d'erreur :
1. Code en Bloc
2. Code Convolution
3. Code Turbo
 Techniquement un code de bloc
 Fonctionne comme deux codes bloc et Convolutional
1. Codes en blocs (TCB):
Le codage en blocs consiste à associer à un bloc de données d de
k symboles issus de la source d’information un bloc c, appelé
mot de code, de n symboles avec n ≥ k. La différence (n−k)
représente la quantité de redondance introduite par le code. La
connaissance de la règle de codage en réception permet de
détecter et de corriger, sous certaines conditions, des erreurs. Le
rapport k/n est appelé rendement ou taux de codage du code.
2. Les Codes Convolutifs :
ils forment une classe extrêmement souple et efficace de CCE.
Ce sont les codes les plus utilisés dans les systèmes de
télécommunications fixes et mobiles. Contrairement aux codes
en blocs chaque mot du code dépend du message à l’instant t
mais aussi des messages précédents  longueur de contrainte .
Le codeur qui génère un code convolutif
comporte un effet mémoire:
Le mot de code ne dépends pas que du bloc
de k symboles entrants, mais aussi des m
codes qui l'on précédé, stocké dans des
registres.Il spécifié par 3parametres (n,k,m)
2.1 Exemple Codeur Convolutif :
2.1 Exemple Codeur Convolutif :
2.1 Exemple Codeur Convolutif :
2.1 Exemple Codeur Convolutif :
Les codeurs convolutifs génèrent un mot de code de
longueur n à partir de plusieurs messages de longueurs k.
- Le rendement du code est :
- La longueur de contrainte du code est : (m+1)
La valeur du mot de code dépend des mots de code calculés
précédemment.
n
k
R
2.2 Représentations graphiques de l’encodeur convolutif :
2.2.1 Le graphe d’état :
La distance minimale est le poids du
chemin partant de ‘00’ et y revenant le
plus vite possible : poids=4, dmin=4
2.2 Représentations graphiques de l’encodeur convolutif :
2.2.2 Le treillis:
Le treillis de codage est obtenu en étendant le diagramme d’état dans le temps. Il possède les
propriétés suivantes :
- Chaque sommet correspond à un état du codeur.
- Chaque arc correspond à une transition et a pour étiquette la sortie correspondante du codeur.
- Tout chemin correspond à une séquence codée, obtenue en concaténant les étiquettes.
2.3 Décodeur Veterbi (Hard Décision)
Message Reçu
2.3 Décodeur Veterbi (Hard Décision)
Message Reçu
2.3 Décodeur Veterbi (Hard Décision)
Message Reçu
2.3 Décodeur Veterbi (Hard Décision)
Message Reçu
2.3 Décodeur Veterbi (Hard Décision)
Message Reçu
2.3 Décodeur Veterbi (Hard Décision)
Message Reçu
2.3 Décodeur Veterbi (Hard Décision)
Message Reçu
2.3 Décodeur Veterbi (Hard Décision)
Message Reçu
2.3 Décodeur Veterbi (Hard Décision)
Message Reçu
2.3 Décodeur Veterbi (Hard Décision)
Message Reçu
2.3 Décodeur Veterbi (Hard Décision)
Message Reçu
2.3 Décodeur Veterbi (Hard Décision)
Séquence Reçu : 10 11 01 00 11 10
Séquence Décodé : 00 11 01 00 10 10
Message : 0 1 0 1 1 0
 Nature aléatoire des codes convolutifs récursifs .
 Potentiellement optimaux pour le codage de canal !!!
 Décodage ? : Algorithme de Viterbi, mais décoder 2v états
Solution : Turbo Codage
Créer un codeur équivalent à un codeur convolutif recursif
de v très grand
3.1. Entrelaceurs (Interleavers) :
Existe plusieurs types:
- Entrelaceur ligne colonne.
- Entrelaceur aléatoire.
- Entrelaceur « Pair / Impair ».
ETC ..
3. Turbo Code :
Un Turbo codeur est constitué d’au moins deux codeurs
élémentaires de codes convolutifs systématiques (RSC) codes
séparés par un entrelaceur
3.1.1 Entrelaceur « ligne - colonne » :
3.1.2 Entrelaceur aléatoire
3.2 Exemple de turbo codeur
(Utilisation de 2 codeur systématique et récursive)
3.2.1 Génération de treillis
3.2.2 Exemple pratique 1er codeur
Input Bits: 1010100
3.2.2 Exemple pratique 1er codeur
Input Bits: 1010100
3.2.2 Exemple pratique 1er codeur
Input Bits: 1010100
3.2.2 Exemple pratique 1er codeur
Input Bits: 1010100
3.2.2 Exemple pratique 1er codeur
Input Bits: 1010100
3.2.2 Exemple pratique 1er codeur
Input Bits: 1010100
3.2.2 Exemple pratique 1er codeur
Input Bits: 1010100
3.2.2 Exemple pratique 1er codeur
Input Bits: 1010100
3.1.3 Entrelaceur (Pseudo Aléatoire) :
Input Bits: 1110000
3.2.3 Exemple pratique 2eme codeur
Input Bits: 1110000
3.2.3 Exemple pratique 2eme codeur
Input Bits: 1110000
3.2.3 Exemple pratique 2eme codeur
Input Bits: 1110000
3.2.3 Exemple pratique 2eme codeur
Input Bits: 1110000
3.2.3 Exemple pratique 2eme codeur
Input Bits: 1110000
3.2.3 Exemple pratique 2eme codeur
Input Bits: 1110000
3.2.3 Exemple pratique 2eme codeur
Input Bits: 1110000
3.2.3 Exemple pratique 2eme codeur
3.2.3 Exemple pratique Turbo Décodeur
EL
Coder1
Coder2
/X°
Y2
Y1
Dec2
Dec1
/X
X
Y1
Y2
X
X°
EL
R EL
Turbo Codeur
Turbo Décodeur
Quels nouveaux défis pour les Turbo-Codes ?
 Optimisation des performances :
 Seuil de convergence.
 Distance minimale.
 Importance de la permutation
 Combinaison avec les modulations à haute efficacité spectrale
(modulations turbo-codées) ƒ:
 Choix des codes.
 Stratégie de mapping, d’entrelacement
 Réduction de la latence :
 Le décodage analogique semble particulièrement prometteur
à ce niveau !
En résumé
Les Turbocodes ont bouleversé les communications numériques
 Réalité des limites théoriques
 Principe Turbo = nouvel outil de l’ingénieur
 Nouveaux paradigmes de conception des systèmes
Le principe Turbo connaît régulièrement de nouvelles extensions
 Turbo-Synchronisation.
 Turbo-MIMO (Turbo Space-Time Processing & Coding).
 L’accès multiple ! (Interleave Division Multiple Access)
Néanmoins, le principe Turbo n’apporte pas aujourd’hui toutes les réponses. Il doit
donc être utilisé avec circonspection !
Quelques références
« Turbo-codes : some simple ideas for efficient communications » Claude
Berrou, 7th Int. Workshop on DSP Techniques for Deep Space Communications,
October 2001 (http://www.estec.esa.nl/conferences) ƒ
 « The ten-year-old turbo-codes are entering into service » Claude Berrou, IEEE
Commun. Mag., August 2003.
ƒ« Closing in on the perfect code » Erico Guizzo, IEEE Spectrum, March 2004.
ƒ« The turbo principle : tutorial and state of the art » Joachim Hagenauer, 1st
Int. Symp. on Turbo-Codes, Brest, September 1997.
ƒ« Turbo equalization » Ralf Kötter, Andrew C. Singer and M. Tüchler, IEEE
Signal Proc. Mag., January 2004.
ƒ« Iterative multiuser detection » Harold V. Poor, IEEE Signal Proc. Mag.,
January 2004.
Illustration du Turbo-Décodage
image reçue
[ Simulations réalisées par Joseph Boutros, ENST, Dépt. COMELEC ]
Après la 1ére itération
de Turbo-Décodage
Après 8 itérations
de Turbo-Décodage
Turbo code

Contenu connexe

Tendances

Tp 1 transmission de donné inisiallisation à simulink matlab
Tp 1 transmission de donné inisiallisation à simulink matlabTp 1 transmission de donné inisiallisation à simulink matlab
Tp 1 transmission de donné inisiallisation à simulink matlab
hamdinho
 
Low power ldpc decoder implementation using layer decoding
Low power ldpc decoder implementation using layer decodingLow power ldpc decoder implementation using layer decoding
Low power ldpc decoder implementation using layer decoding
ajithc0003
 
Xilinx ISE introduction Tutorial #1
Xilinx ISE introduction Tutorial #1Xilinx ISE introduction Tutorial #1
Xilinx ISE introduction Tutorial #1
guest1e88645e
 

Tendances (20)

2 codage source
2 codage source2 codage source
2 codage source
 
Tp 1 transmission de donné inisiallisation à simulink matlab
Tp 1 transmission de donné inisiallisation à simulink matlabTp 1 transmission de donné inisiallisation à simulink matlab
Tp 1 transmission de donné inisiallisation à simulink matlab
 
ECDSA/EdDSA
ECDSA/EdDSAECDSA/EdDSA
ECDSA/EdDSA
 
Code Correcteurs d'Erreurs : Code linéaire, code cyclique , code goppa
Code Correcteurs d'Erreurs :  Code linéaire, code cyclique , code goppa  Code Correcteurs d'Erreurs :  Code linéaire, code cyclique , code goppa
Code Correcteurs d'Erreurs : Code linéaire, code cyclique , code goppa
 
Théorie de l'information
Théorie de l'informationThéorie de l'information
Théorie de l'information
 
chap2 genéralites-chaine_de_transmission_15-16
chap2 genéralites-chaine_de_transmission_15-16chap2 genéralites-chaine_de_transmission_15-16
chap2 genéralites-chaine_de_transmission_15-16
 
Low power ldpc decoder implementation using layer decoding
Low power ldpc decoder implementation using layer decodingLow power ldpc decoder implementation using layer decoding
Low power ldpc decoder implementation using layer decoding
 
Microcontroleurs
MicrocontroleursMicrocontroleurs
Microcontroleurs
 
Chapitre 2.1 - architecture d'un microprocesseur - bus et communication
Chapitre 2.1 -  architecture d'un microprocesseur - bus et communicationChapitre 2.1 -  architecture d'un microprocesseur - bus et communication
Chapitre 2.1 - architecture d'un microprocesseur - bus et communication
 
Implementation of reed solomon codes basics
Implementation of reed solomon codes basicsImplementation of reed solomon codes basics
Implementation of reed solomon codes basics
 
Projet de communication numérique Réalisation d'une chaîne de transmission nu...
Projet de communication numérique Réalisation d'une chaîne de transmission nu...Projet de communication numérique Réalisation d'une chaîne de transmission nu...
Projet de communication numérique Réalisation d'une chaîne de transmission nu...
 
Thesis_Presentation
Thesis_PresentationThesis_Presentation
Thesis_Presentation
 
Huffman ppt
Huffman ppt Huffman ppt
Huffman ppt
 
Xilinx ISE introduction Tutorial #1
Xilinx ISE introduction Tutorial #1Xilinx ISE introduction Tutorial #1
Xilinx ISE introduction Tutorial #1
 
Basic concepts in Verilog HDL
Basic concepts in Verilog HDLBasic concepts in Verilog HDL
Basic concepts in Verilog HDL
 
Huffman Algorithm and its Application by Ekansh Agarwal
Huffman Algorithm and its Application by Ekansh AgarwalHuffman Algorithm and its Application by Ekansh Agarwal
Huffman Algorithm and its Application by Ekansh Agarwal
 
Transmission de signal
Transmission de signalTransmission de signal
Transmission de signal
 
Pic 16f877 ..
Pic 16f877 ..Pic 16f877 ..
Pic 16f877 ..
 
verilog code for logic gates
verilog code for logic gatesverilog code for logic gates
verilog code for logic gates
 
Huffman Coding
Huffman CodingHuffman Coding
Huffman Coding
 

En vedette

Convolution codes and turbo codes
Convolution codes and turbo codesConvolution codes and turbo codes
Convolution codes and turbo codes
Manish Srivastava
 
Introduction to turbo c
Introduction to turbo cIntroduction to turbo c
Introduction to turbo c
Hanielle Cheng
 
Serie equations fondamentales d'hydraulique
Serie  equations fondamentales d'hydrauliqueSerie  equations fondamentales d'hydraulique
Serie equations fondamentales d'hydraulique
Sadok Kzadri
 
Rapport W-CDMA Coding & Multiplexing
Rapport W-CDMA  Coding & MultiplexingRapport W-CDMA  Coding & Multiplexing
Rapport W-CDMA Coding & Multiplexing
Anouar Loukili
 

En vedette (20)

Turbo Codes
Turbo CodesTurbo Codes
Turbo Codes
 
Turbo codes
Turbo codesTurbo codes
Turbo codes
 
Turbo code
Turbo codeTurbo code
Turbo code
 
Turbo codes.ppt
Turbo codes.pptTurbo codes.ppt
Turbo codes.ppt
 
Convolution codes and turbo codes
Convolution codes and turbo codesConvolution codes and turbo codes
Convolution codes and turbo codes
 
Codage
CodageCodage
Codage
 
LDPC Codes
LDPC CodesLDPC Codes
LDPC Codes
 
Convolution Codes
Convolution CodesConvolution Codes
Convolution Codes
 
Presentation finale
Presentation finalePresentation finale
Presentation finale
 
Introduction to turbo c
Introduction to turbo cIntroduction to turbo c
Introduction to turbo c
 
Digital Preservation at Norfolk Record Office
Digital Preservation at Norfolk Record OfficeDigital Preservation at Norfolk Record Office
Digital Preservation at Norfolk Record Office
 
Serie equations fondamentales d'hydraulique
Serie  equations fondamentales d'hydrauliqueSerie  equations fondamentales d'hydraulique
Serie equations fondamentales d'hydraulique
 
Formations en Hydraulique - Mécanique des Fluides
Formations en Hydraulique - Mécanique des FluidesFormations en Hydraulique - Mécanique des Fluides
Formations en Hydraulique - Mécanique des Fluides
 
géneralité sur le mecanique de fluide
géneralité sur le mecanique de fluidegéneralité sur le mecanique de fluide
géneralité sur le mecanique de fluide
 
Digital Preservation
Digital PreservationDigital Preservation
Digital Preservation
 
Présentation Power Agility
Présentation Power AgilityPrésentation Power Agility
Présentation Power Agility
 
Rapport W-CDMA Coding & Multiplexing
Rapport W-CDMA  Coding & MultiplexingRapport W-CDMA  Coding & Multiplexing
Rapport W-CDMA Coding & Multiplexing
 
Monde de l'énergie & informatique, la mutation industrielle
Monde de l'énergie & informatique, la mutation industrielleMonde de l'énergie & informatique, la mutation industrielle
Monde de l'énergie & informatique, la mutation industrielle
 
Iii exercice d
Iii   exercice dIii   exercice d
Iii exercice d
 
An Introduction to Digital Preservation
An Introduction to Digital PreservationAn Introduction to Digital Preservation
An Introduction to Digital Preservation
 

Similaire à Turbo code

Le traitement du signal en Audio. Les procédés de compression audio. Présent...
Le traitement du signal en Audio. Les  procédés de compression audio. Présent...Le traitement du signal en Audio. Les  procédés de compression audio. Présent...
Le traitement du signal en Audio. Les procédés de compression audio. Présent...
Vincent RECIPON
 
Inf_theory_lect4.pdf
Inf_theory_lect4.pdfInf_theory_lect4.pdf
Inf_theory_lect4.pdf
kohay75604
 
Codage_Information.pptx
Codage_Information.pptxCodage_Information.pptx
Codage_Information.pptx
OlyvierNzighou1
 
examen en DSP 2023.pdf
examen en DSP 2023.pdfexamen en DSP 2023.pdf
examen en DSP 2023.pdf
kamouf
 
adcdac-3.pptx
adcdac-3.pptxadcdac-3.pptx
adcdac-3.pptx
BesmaOthmaniKrifa
 
Inf_theory_lect2.pdf
Inf_theory_lect2.pdfInf_theory_lect2.pdf
Inf_theory_lect2.pdf
kohay75604
 

Similaire à Turbo code (20)

Le traitement du signal en Audio. Les procédés de compression audio. Présent...
Le traitement du signal en Audio. Les  procédés de compression audio. Présent...Le traitement du signal en Audio. Les  procédés de compression audio. Présent...
Le traitement du signal en Audio. Les procédés de compression audio. Présent...
 
Réseaux partie 2.ppt
Réseaux partie 2.pptRéseaux partie 2.ppt
Réseaux partie 2.ppt
 
Inf_theory_lect4.pdf
Inf_theory_lect4.pdfInf_theory_lect4.pdf
Inf_theory_lect4.pdf
 
Codage_Information.pptx
Codage_Information.pptxCodage_Information.pptx
Codage_Information.pptx
 
TRANSMISSION NUMERIQUE Année 2022-2023 CEFIB
TRANSMISSION NUMERIQUE Année 2022-2023 CEFIBTRANSMISSION NUMERIQUE Année 2022-2023 CEFIB
TRANSMISSION NUMERIQUE Année 2022-2023 CEFIB
 
Toip slide
Toip slideToip slide
Toip slide
 
codeurs_de_positioncodeurs_de_position.ppt
codeurs_de_positioncodeurs_de_position.pptcodeurs_de_positioncodeurs_de_position.ppt
codeurs_de_positioncodeurs_de_position.ppt
 
cours1 (1).pdf
cours1 (1).pdfcours1 (1).pdf
cours1 (1).pdf
 
Canaux logiques et codage dans le gsm
Canaux logiques et codage dans le gsmCanaux logiques et codage dans le gsm
Canaux logiques et codage dans le gsm
 
03- couche physique - Médias et transmission - ESTG.pptx
03- couche physique - Médias et transmission - ESTG.pptx03- couche physique - Médias et transmission - ESTG.pptx
03- couche physique - Médias et transmission - ESTG.pptx
 
examen en DSP 2023.pdf
examen en DSP 2023.pdfexamen en DSP 2023.pdf
examen en DSP 2023.pdf
 
adcdac-3.pptx
adcdac-3.pptxadcdac-3.pptx
adcdac-3.pptx
 
Cours compilation
Cours compilationCours compilation
Cours compilation
 
Le chiffrement
Le chiffrementLe chiffrement
Le chiffrement
 
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
OSIS18_IoT: L'approche machine virtuelle pour les microcontrôleurs, le projet...
 
Cours programmation en langage C.pdf
Cours  programmation  en  langage  C.pdfCours  programmation  en  langage  C.pdf
Cours programmation en langage C.pdf
 
Ch1 circuits logiques_p2_transcodeurs
Ch1 circuits logiques_p2_transcodeursCh1 circuits logiques_p2_transcodeurs
Ch1 circuits logiques_p2_transcodeurs
 
Inf_theory_lect2.pdf
Inf_theory_lect2.pdfInf_theory_lect2.pdf
Inf_theory_lect2.pdf
 
Cours de PIC Généralités.pdf
Cours de PIC Généralités.pdfCours de PIC Généralités.pdf
Cours de PIC Généralités.pdf
 
Nuit du Hack 2K16 - Scénarios d'attaques sur un système industriel
Nuit du Hack 2K16 - Scénarios d'attaques sur un système industrielNuit du Hack 2K16 - Scénarios d'attaques sur un système industriel
Nuit du Hack 2K16 - Scénarios d'attaques sur un système industriel
 

Plus de n allali (6)

A Dashboard of ITS - Tableau de bord du STI
A Dashboard of ITS - Tableau de bord du STIA Dashboard of ITS - Tableau de bord du STI
A Dashboard of ITS - Tableau de bord du STI
 
Cours conversation 10_base_b
Cours conversation 10_base_bCours conversation 10_base_b
Cours conversation 10_base_b
 
base de donnée (Modèle Relationnel)
base de donnée (Modèle Relationnel)base de donnée (Modèle Relationnel)
base de donnée (Modèle Relationnel)
 
Base de donnée (BD)
Base de donnée (BD)Base de donnée (BD)
Base de donnée (BD)
 
Page de garde arabe
Page de garde arabePage de garde arabe
Page de garde arabe
 
Page de garde fr
Page de garde frPage de garde fr
Page de garde fr
 

Turbo code

  • 1. Présenté par : Mr : CHABANE . M Mlle: ALLALI . N Option : Réseaux & Télécommunication Université TAHRI Mohammed Béchar MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE
  • 2. La transmission est perturbée par un bruit et un système de codage est utilisé pour détecter, ou même corriger les erreurs provoquées par le bruit. C'est ce qu'on appelle un code correcteur d'erreurs. Ce mécanisme est utilisé sur tous les moyens de transmission de données informatiques. Origine des codes correcteurs d’erreurs : C’est la théorie de l’information initiée par C. Shannon dans les années 50.
  • 3. [Shannon] Fin des années 40 :  Limites du codage pour les canaux discrets sans mémoire.  Codes aléatoires atteignent cette limite !. Problèmes : - constructions explicites ? - codage efficace ? - décodage efficace ?
  • 4. Codage efficace : codes linéaires Constructions explicites : - codes de Hamming. - codes de Golay, (décodage possible car n = 23). - codes BCH, (décodage algébrique). - codes de Reed-Muller, (décodage performant seulement pour les codes de rendement proches de 0 ou 1). - codes de Reed-Solomon, (décodage algébrique).. [Elias,Hamming,Golay,Muller,Reed,Solomon,...] fin des années 40-50
  • 5. [Elias,Fano, Viterbi, Wozencraft,...] années 50-60 Codage Convolutif : - constructions explicites, - codage très efficace. - quand la mémoire µ du codeur est petite (0 ≤−µ ≤−15) décodage au maximum de vraisemblance réalisable en temps réel pour tous les canaux sans mémoire (décodage de Viterbi) ! - quand µ est plus grand, décodage séquentiel avec des performances proches du décodage au maximum de vraisemblance en dessous d’un niveau critique du bruit.
  • 6. La concaténation de codes (Forney, 1966) Applications : Le décodage est simple à mettre en œuvre, mais n’exploite pas l’intégralité de l’information disponible.
  • 7. Les Turbocodes Convolutifs (Berrou & Glavieux, 1990) Obtenus par la combinaison de 2 ingrédients clés Chaque décodeur profite ici d’une information, délivrée par l’autre décodeur, pour améliorer ses propres décisions (consensus).
  • 8. La problématique des Codes Correcteurs d’Erreur est la suivante : un expéditeur A envoie un message M à B, durant la transmission de ce message des erreurs se produisent éventuellement, et B reçoit un message M’ qui comporte peut-être des erreurs. Il s’agit de trouver comment faire pour que B, 1- d’une part détecte l’existence d’erreurs, 2- d’autre part, si elles ne sont pas trop nombreuses, sache les corriger.
  • 9. les codes de correction d'erreur : 1. Code en Bloc 2. Code Convolution 3. Code Turbo  Techniquement un code de bloc  Fonctionne comme deux codes bloc et Convolutional
  • 10. 1. Codes en blocs (TCB): Le codage en blocs consiste à associer à un bloc de données d de k symboles issus de la source d’information un bloc c, appelé mot de code, de n symboles avec n ≥ k. La différence (n−k) représente la quantité de redondance introduite par le code. La connaissance de la règle de codage en réception permet de détecter et de corriger, sous certaines conditions, des erreurs. Le rapport k/n est appelé rendement ou taux de codage du code.
  • 11. 2. Les Codes Convolutifs : ils forment une classe extrêmement souple et efficace de CCE. Ce sont les codes les plus utilisés dans les systèmes de télécommunications fixes et mobiles. Contrairement aux codes en blocs chaque mot du code dépend du message à l’instant t mais aussi des messages précédents  longueur de contrainte . Le codeur qui génère un code convolutif comporte un effet mémoire: Le mot de code ne dépends pas que du bloc de k symboles entrants, mais aussi des m codes qui l'on précédé, stocké dans des registres.Il spécifié par 3parametres (n,k,m)
  • 12. 2.1 Exemple Codeur Convolutif :
  • 13. 2.1 Exemple Codeur Convolutif :
  • 14. 2.1 Exemple Codeur Convolutif :
  • 15. 2.1 Exemple Codeur Convolutif :
  • 16. Les codeurs convolutifs génèrent un mot de code de longueur n à partir de plusieurs messages de longueurs k. - Le rendement du code est : - La longueur de contrainte du code est : (m+1) La valeur du mot de code dépend des mots de code calculés précédemment. n k R
  • 17. 2.2 Représentations graphiques de l’encodeur convolutif : 2.2.1 Le graphe d’état : La distance minimale est le poids du chemin partant de ‘00’ et y revenant le plus vite possible : poids=4, dmin=4
  • 18. 2.2 Représentations graphiques de l’encodeur convolutif : 2.2.2 Le treillis: Le treillis de codage est obtenu en étendant le diagramme d’état dans le temps. Il possède les propriétés suivantes : - Chaque sommet correspond à un état du codeur. - Chaque arc correspond à une transition et a pour étiquette la sortie correspondante du codeur. - Tout chemin correspond à une séquence codée, obtenue en concaténant les étiquettes.
  • 19. 2.3 Décodeur Veterbi (Hard Décision) Message Reçu
  • 20. 2.3 Décodeur Veterbi (Hard Décision) Message Reçu
  • 21. 2.3 Décodeur Veterbi (Hard Décision) Message Reçu
  • 22. 2.3 Décodeur Veterbi (Hard Décision) Message Reçu
  • 23. 2.3 Décodeur Veterbi (Hard Décision) Message Reçu
  • 24. 2.3 Décodeur Veterbi (Hard Décision) Message Reçu
  • 25. 2.3 Décodeur Veterbi (Hard Décision) Message Reçu
  • 26. 2.3 Décodeur Veterbi (Hard Décision) Message Reçu
  • 27. 2.3 Décodeur Veterbi (Hard Décision) Message Reçu
  • 28. 2.3 Décodeur Veterbi (Hard Décision) Message Reçu
  • 29. 2.3 Décodeur Veterbi (Hard Décision) Message Reçu
  • 30. 2.3 Décodeur Veterbi (Hard Décision) Séquence Reçu : 10 11 01 00 11 10 Séquence Décodé : 00 11 01 00 10 10 Message : 0 1 0 1 1 0
  • 31.  Nature aléatoire des codes convolutifs récursifs .  Potentiellement optimaux pour le codage de canal !!!  Décodage ? : Algorithme de Viterbi, mais décoder 2v états Solution : Turbo Codage Créer un codeur équivalent à un codeur convolutif recursif de v très grand
  • 32. 3.1. Entrelaceurs (Interleavers) : Existe plusieurs types: - Entrelaceur ligne colonne. - Entrelaceur aléatoire. - Entrelaceur « Pair / Impair ». ETC .. 3. Turbo Code : Un Turbo codeur est constitué d’au moins deux codeurs élémentaires de codes convolutifs systématiques (RSC) codes séparés par un entrelaceur
  • 33. 3.1.1 Entrelaceur « ligne - colonne » :
  • 35. 3.2 Exemple de turbo codeur (Utilisation de 2 codeur systématique et récursive)
  • 37. 3.2.2 Exemple pratique 1er codeur Input Bits: 1010100
  • 38. 3.2.2 Exemple pratique 1er codeur Input Bits: 1010100
  • 39. 3.2.2 Exemple pratique 1er codeur Input Bits: 1010100
  • 40. 3.2.2 Exemple pratique 1er codeur Input Bits: 1010100
  • 41. 3.2.2 Exemple pratique 1er codeur Input Bits: 1010100
  • 42. 3.2.2 Exemple pratique 1er codeur Input Bits: 1010100
  • 43. 3.2.2 Exemple pratique 1er codeur Input Bits: 1010100
  • 44. 3.2.2 Exemple pratique 1er codeur Input Bits: 1010100
  • 45. 3.1.3 Entrelaceur (Pseudo Aléatoire) :
  • 46. Input Bits: 1110000 3.2.3 Exemple pratique 2eme codeur
  • 47. Input Bits: 1110000 3.2.3 Exemple pratique 2eme codeur
  • 48. Input Bits: 1110000 3.2.3 Exemple pratique 2eme codeur
  • 49. Input Bits: 1110000 3.2.3 Exemple pratique 2eme codeur
  • 50. Input Bits: 1110000 3.2.3 Exemple pratique 2eme codeur
  • 51. Input Bits: 1110000 3.2.3 Exemple pratique 2eme codeur
  • 52. Input Bits: 1110000 3.2.3 Exemple pratique 2eme codeur
  • 53. Input Bits: 1110000 3.2.3 Exemple pratique 2eme codeur
  • 54. 3.2.3 Exemple pratique Turbo Décodeur EL Coder1 Coder2 /X° Y2 Y1 Dec2 Dec1 /X X Y1 Y2 X X° EL R EL Turbo Codeur Turbo Décodeur
  • 55. Quels nouveaux défis pour les Turbo-Codes ?  Optimisation des performances :  Seuil de convergence.  Distance minimale.  Importance de la permutation  Combinaison avec les modulations à haute efficacité spectrale (modulations turbo-codées) ƒ:  Choix des codes.  Stratégie de mapping, d’entrelacement  Réduction de la latence :  Le décodage analogique semble particulièrement prometteur à ce niveau !
  • 56. En résumé Les Turbocodes ont bouleversé les communications numériques  Réalité des limites théoriques  Principe Turbo = nouvel outil de l’ingénieur  Nouveaux paradigmes de conception des systèmes Le principe Turbo connaît régulièrement de nouvelles extensions  Turbo-Synchronisation.  Turbo-MIMO (Turbo Space-Time Processing & Coding).  L’accès multiple ! (Interleave Division Multiple Access) Néanmoins, le principe Turbo n’apporte pas aujourd’hui toutes les réponses. Il doit donc être utilisé avec circonspection !
  • 57. Quelques références « Turbo-codes : some simple ideas for efficient communications » Claude Berrou, 7th Int. Workshop on DSP Techniques for Deep Space Communications, October 2001 (http://www.estec.esa.nl/conferences) ƒ  « The ten-year-old turbo-codes are entering into service » Claude Berrou, IEEE Commun. Mag., August 2003. ƒ« Closing in on the perfect code » Erico Guizzo, IEEE Spectrum, March 2004. ƒ« The turbo principle : tutorial and state of the art » Joachim Hagenauer, 1st Int. Symp. on Turbo-Codes, Brest, September 1997. ƒ« Turbo equalization » Ralf Kötter, Andrew C. Singer and M. Tüchler, IEEE Signal Proc. Mag., January 2004. ƒ« Iterative multiuser detection » Harold V. Poor, IEEE Signal Proc. Mag., January 2004.
  • 58. Illustration du Turbo-Décodage image reçue [ Simulations réalisées par Joseph Boutros, ENST, Dépt. COMELEC ] Après la 1ére itération de Turbo-Décodage Après 8 itérations de Turbo-Décodage