Vous êtes sur la page 1sur 27

1Introduction :

Si la premire moiti du vingtime sicle a t celle de la rvolution analogique par la radio et la tlvision, la seconde moiti de ce sicle est celle de la rvolution numrique et de l'utilisation systmatique de l'algbre dans la transmission de donnes. Ainsi, aprs l'apparition du CD audio dans les annes 198 , il !aut compter sur le dveloppement de la di!!usion par satellite de nouveau" moyens de communication tels la tlcopie, le rseau #nternet ou le tlp$one numrique. %es donnes &te"tes, images et sons' sont maintenant engranges sur des CD()*+ dont les lecteurs sont munis de systmes de codes correcteurs d'erreurs &C.C.D.'. +,me la p$otograp$ie et la radio deviennent par ailleurs numriques.
Notre socit est devenue dpendante de la communication sous toutes ses formes, notamment les messages numriques dont le volume augmente sans cesse. Il faut donc assurer l'intgrit des donnes la rception, malgr des moyens de transmission qui ajoutent parfois des erreurs l'information : ondes radio, ligne tlphonique, support magntique, etc. C'est le r le des codes correcteurs d'erreurs.
Un code correcteur est une technique de codage base sur la redondance. Elle est destine corriger les erreurs de transmission d'une information (plus souvent appele message) sur une voie de communication peu fiable. La thorie des codes correcteurs ne se limite pas qu'aux communications classiques (radio c!ble coaxial fibre optique etc.) mais galement aux supports pour le stoc"age comme les disques compacts la mmoire #$% et d'autres applications o& l'intgrit des donnes est importante.

!our une relle comprhension de la justification et de la mise en "uvre des codes correcteurs, il m'a sem#l utile de s'intresser la gnralit de la grande classe des codes linaires. $n vitera ainsi de se prcipiter sur une description admirative et superficielle de codes trop compliqus pour %tre #ien compris dans les limites d'un &.I.!.'.

[modifier] Problmatique
[modifier] Description intuitive
Les codes correcteurs d'erreurs ont leur source dans un probl'me tr's concret li la transmission de donnes. (ans la grande ma)orit des cas une transmission de donnes se fait

en utilisant une voie de communication le canal de communication qui n'est pas enti'rement fiable. $utrement dit les donnes lorsqu'elles circulent sur cette voie sont susceptible d'*tre altres.

%es codes correcteurs d'erreurs sont utiliss pour combattre ces erreurs de transmission &ou de lecture s'il s'agit d'un support optique ou magntique'. D'une !a-on gnrale, il s'agit de calculer puis de transmettre &ou d'inscrire' des symboles supplmentaires a!in de reconstituer l'in!ormation malgr une communication perturbe. %e plus simple des codes correcteurs d'erreurs est le code . rptition/ en rptant la m,me in!ormation su!!isamment souvent, on !init par ,tre compris. *n peut videmment !aire beaucoup mieu" que cela 0
+ar exemple lors d'une communication radio la prsence de parasites sur la ligne va perturber le son de la voix. ,l - a alors essentiellement deux approches possibles .

augmenter la puissance de l'mission a)outer de la redondance l'information

/i l'on reprend l'exemple de la communication radio augmenter la puissance de l'mission signifie crier ou avoir un meilleur metteur. 0ette technique a bien videmment ses limites et aura du mal *tre utilise dans des sondes spatiales sans m*me prendre en considration des contraintes sur les ressources en nergie. L'autre solution va consister a)outer des donnes ce qui donne lieu au code des aviateurs qui diront 1$lpha 2ango 0harlie3 dans le seul but de transmettre correctemment 1$203 travers leur radio. La squence 1$lpha 2ango 0harlie3 m*me dforme par la friture sera bien plus reconnaissable pour l'oreille humaine qu'un 1$203 dform.

] Classification de la problmatique
Les problmatiques apportes par l'industrie sont diverses. (ans le cas de la transmission de donnes par exemple sur internet le r4le du code correcteur se limite parfois la dtection des erreurs. 0'est le cas pour le protocole 20+. La correction est alors ralise par une nouvelle demande de transmission du message. +our d'autres situations l'ob)ectif est la correction d'erreurs sans nouvelle demande de transmission. L encore plusieurs configurations se prsentent. La communication sur ordinateur par le port srie utilise un code dont l'ob)ectif est la correction de petites erreurs relativement frquentes mais isoles. (ans le cas du disque compact les erreurs sont aussi causes par des ra-ures ou des impurets du support elles sont moins frquentes mais beaucoup plus volumineuses. La norme de la socit +hilips impose la capacit de correction d'erreurs dans le cas d'une ra-ure de 5 6 millim'tre dans la pratique le code utilis corrige )usqu' 7589 bits conscutifs soit une ra-ure de plus d'un millim'tre de large. Le disque compact prsente une nouvelle situation celle de l' e!!acement. (ans ce contexte et la diffrence du paragraphe prcdent le message transmis poss'de l'indication de la dtrioration. La dtection des erreurs n'est plus ncessaire toute l'information se concentre sur la reconstitution du message dtrior. 0ette varit de situations explique la multiplicit des techniques utilises pour les codes correcteurs. :n peut citer les sommes de contr4le pour la simple dtection le code ;0< pour les ports srie ou encore une variante du code de #eed=/olomon pour les disques compacts. ;eaucoup de solutions industrielles sont h-brides comme par exemple le code de <amming ou encore celui utilis pour le %initel. ('autres contraintes industrielles se greffent sur la problmatique des codes correcteurs. Le co>t d'implmentation en est un exemple. +our une solution grand public la technique d'encodage et de dcodage doit *tre peu onreuse. La vitesse de reconstitution des messages est aussi un facteur pris en compte.

2 Dtail du sujet

%e codeur va trans!ormer un !ic$ier de donnes quelconques en un !ic$ier cod &de taille triple environ'. %e simulateur de canal va trans!ormer un !ic$ier cod en un !ic$ier contenant des erreurs binaires &c$aque bit du !ic$ier a une probabilit p d',tre c$ang, la taille ne c$ange pas'. %e dcodeur va trans!ormer un !ic$ier cod erron en un !ic$ier de donnes &la taille est rduite au tiers'. 1ar e"emple/ % coder fichier > fichier.code % canal fichier.code 0.1 > fichier.err % decoder fichier.err 0.1 > fichier.dec % distance fichier fichier.dec Les deux fichiers diffrent de 23 bits% Diapo 9 10 11 12 13
B. canal de transmission

C'est un systme physique permettant la transmission d'une information entre deux points distants (dans le temps ou l'espace). Son taux d'erreur binaire est le rapport entre le nombre de bits modifis et le nombre de bits du message.

Diapo 15 16

C.

thorme de Shannon

En !"#$ Claude Shannon nonce dans % &athematical 'heory of (nformation le thorme fondamental de la thorie de l'information

1.

nonc

&out canal de transmission admet un param(tre C, appel capacit du canal, tel que pour tout e ) * et pour tout + , C, il e-iste un code de rendement + permettant la transmission de l'information avec un taud'erreurs #inaire plus petit que e.. En d'autres termes$ on peut obtenir des transmissions aussi fiables que l'on )eut$ * condition d'utiliser des codes de rendement plus petits que la capacit du canal. Cependant$ ce thorme n'indique pas le moyen de construire de tels codes.

I . Cadre de la correction d'erreurs


S'il n'y avait pas de code correcteur sur un CD audio par exemple, o les erreurs sont dues des rayures, dcalage de la lentille lors de la lecture ou simplement des dfauts de fabrication, il y aurait

environ un claquement par seconde d une inversion de signe de l'c antillon !ou" #ettre en $uvre un code correcteur consiste introduire une redondance dans l'information transmettre" Ceci permet de dtecter et ventuellement de corriger les cas o la transmission a modifi le message" %l peut sembler paradoxal de compresser un fic ier pour liminer toute redondance puis d'en rintroduire" &n code correcteur est en fait une redondance rflc ie et optimise pour minimiser le taux d'erreurs non dtectes et la longueur des bits a!outs"

edondance et fiabilit [modifier]

,llustration d'un code non correcteur et d'un code correcteur

2ous les codes correcteurs subissent une contrainte du m*me ordre. /i le message contient une information altre une information supplmentaire est ncessaire pour soit dtecter l'erreur soit la corriger. La formalisation est la suivante. Le message transmis appel code est plong dans un espace plus vaste comme illustr dans la figure de droite.

'a dtection d'erreur n'est pas tou!ours suffisante ( alors que l'on peut demander la r)mission d'un paquet corrompu entre deux composants d'un ordinateur *erreurs rares, rapidit prioritaire+, les dlais de transmission des satellites imposent de pouvoir dtecter et corriger les invitables erreurs" Cela est vident pour le stoc,age d'information, qui fait aussi partie du cadre de la correction d'erreurs"

Structures mathmatiques
Du point de vue mat matique, l'un des intr-ts de la t orie des codes est de montrer que l'alg.bre s'applique fondamentalement dans notre vie de tous le !ours d.s que nous coutons de la musique ou que nous nous installions devant notre tlviseur, et que des notions aussi abstraites que celles d'espaces vectoriels ou de polyn/mes sur des corps finis nous permettent de lire des message, d'couter de la musique ou de regarder des fils dans des conditions optimum"
$rticle dtaill . corps fini.

?robenius initiateur de la thorie des corps finis

0rer une bonne gomtrie optimale rapide et peu ch're demande de structurer l'espace des codes. 0es structures sont essentiellement ralises avec des outils mathmatiques. L'utilisation des corps finis est presque universelle. L'un est particuli'rement utilis celui not 26 correspondant au corps deux lments 5 et @. La thorie des corps finis dmarre par les travaux de ?robenius (@A78 = @8@B). ,l utilise la thorie de Calois pour expliciter leur comportement. /es travaux sont la base de nombreux dveloppements de la thorie des codes correcteurs. 0es corps sont particuli'rement adapts.

,ls correspondent des structures discr'tes par oppos continu. En consquence ils sont plus simples modliser par l'lectronique et l'informatique. ,ls forment la base de nombreux dveloppements. Les thorie des espaces vectoriels permet la cration de gomtrie utile. L'alg'bre linaire est adapt la mesure du volume des redondances inutiles ils servent de support toute une famille de codes correcteurs. les codes linaires. L'anneau des pol-n4mes coefficients dans un corps fini est riche en proprits. ,l permet de gnraliser la notion de preuve par neuf avec des amliorations notoires (cf l'article /omme de contr4le). (ans ce cas si la dtection d'altrations est possible la correction automatique ne l'est pas. Les pol-n4mes poss'dent des proprits analoguque que que que que que que que rs devient possible. (e plus la multiplication est particuli'rement aise. Elle correspond celle des entiers avec en moins le probl'me de la retenue. :r en informatique la retenue reprsente l'essentiel du temps de calcul. ;eaucoup de codes correcteurs se fondent sur les proprits des pol-n4mes ils sont regroups sous le nom de code c-clique. Enfin l'arithmtique moderne utilise largement les corps finis travers des outils comme les fonctions elliptiques. /'ils demandent un niveau d'abstraction lev ils permettent d'obtenir des rsultats difficiles. Elles sont utilises pour certains codes correcteurs comme celui de Coppa leur importance industrielle est nanmoins pour l'instant encore faible.

Diapo !" !1 !#

Distance de $ammin% [modifier]


$rticle dtaill . (istance de <amming.

h-per=cube binaire de dimension quatre Le concept le plus utilis pour la modlisation de la redondance est celui de la distance de 3amming. $ deux mots du code elle associe le nombre de lettres qui diff'rent. %a distance de 3amming entre 4ramer4 et 4cases4 est 5. La figure de droite illustre le cas o& les lettres de l'alphabet sont binaires et la dimension du code gale quatre. La distance entre "11" et 111" est gale un car il est ncessaire de parcourir un segment du graphique pour )oindre les deux mots. :n peut aussi remarquer que les deux mots diff'rent seulement par leur premi're lettre. La m*me approche montre que la distance entre "1"" et 1""1 est gale trois. 0e concept permet la dfinition suivante .

La distance minimale d'un code correcteur est la plus petite distance au sens de <amming entre deux mots du code.

0ette dfinition permet de formaliser les trois param'tres les plus important d'un code en blocs.

Les paramtres d'un code en blocs sont la longueur du code n le nombre + de mots du code et la distance minimale D. ,ls sont en gnral not En + DF

[modifier] &horie al%brique des codes en blocs

/i l'anal-se qu'apporte la distance de <amming et les codes parfaits propose un cadre permettant d'valuer l'e!!icacit d'un code elle n'offre pas de solution pratique pour en construire. La solution consiste quiper les ensembles 6 et 2 de structures algbriques plus riches. +our cela les alphabets A et A' sont identifis et munis d'une structure de corps fini. Le cas le plus frquent consiste choisir le corps 26 ou l'une de ses extensions finies. 0e corps correspond l'alphabet binaire dont les tables d'addition et de multiplication sont donnes ci=dessous. ' " 1 " 1 5 @ @ 5 . " 1

" 5 5 1 5 @

0e corps ou ses extensions sont adapts un traitement informatique qui dans sa grande gnralit travaille sur l'alphabet binaire.

0ous distinguons les deux classes suivantes de C"C"D" ( les codes en blocs et les codes en treillis" 'a figure ci)dessous donne un simple rsum de la grande famille de codage" Dans la premi.re classe * droite sur la figure+, citons les codes les plus cl.bres comme les codes 1C2, 3eed)Solomon et 4oppa, 4olay et 2amming" 'a deuxi.me classe * gauc e sur la figure+ est moins ric e en varit mais prsente beaucoup plus de souplesse surtout dans le c oix des param.tres et des algorit mes de dcodage disponibles" Citons par exemple, les codes convolutifs binaires systmatiques rcursifs tr.s utiliss dans les modulations codes *5C#+ et les codes concatns parall.les *5urbo Codes+"

Code en bloc
(ans le cas gnral les messages transmettre n'ont pas de longueur fixe. 0ette situation existe par exemple pour une communication tlphonique. En revanche il est plus simple de dvelopper un code correcteur pour des messages d'une longueur fixe. La solution utilise consiste segmenter la difficult. (ans un premier temps est trait le cas d'un message de longueur fixe. +our le cas gnral une solution simple consiste concatner une suite de blocs. La mthode la plus rpandue car la plus efficace est celle du code convolutif.

La lon%ueur d'un message dsigne le nombre de lettres qu'il contient. Un code en bloc est un code correcteur traitant des messages de longueur fixe.

I. Codes en bloc linaires


1. Prsentation 1our un traitement in!ormatique, c7est(.(dire automatis, de l7in!ormation, on numrise le signal . transmettre &une image, un son8'. *n ramne ainsi celui( ci . une squence de bits e1e98. A cause des invitables parasites qui dtriorent le message, on ne peut pas envoyer cette squence telle quelle. 1our amliorer la !iabilit de la transmission des donnes, une des mt$odes de codage les plus simples est alors de rpter c$aque bit / %a squence e1e98 sera ainsi transmise sous la !orme e1e1e9e98. %ors de la rception du message, le dcodeur peut ainsi comparer c$aque couple de bits re-us. :7ils sont di!!rents, alors il y a dtection d7erreur.

*n voit ainsi qu7en doublant la longueur du message &mais aussi le temps de transmission', on parvient . dtecter d7ventuelles erreurs. ;oute!ois, ce codage simple ne permet pas de les corriger. 1our cela, on peut tripler les bits. :i on considre &ce qui est plus que raisonnable' qu7il y a au ma"imum une erreur pour c$aque squence de 5 bits, alors il est possible de les corriger / le dcodeur n7a qu7. c$oisir le symbole qui appara<t deu" !ois dans c$aque triplet re-u. Diapo 34 35
.

[modifier] Codes c(cliques


$rticle dtaill . 0ode c-clique. 0es codes sont plus compliqus et reposent sur l'utilisation des proprits des pol-n4mes dans un corps fini. Le contr4le de redondance c-clique (0#0 pour cyclic redundancy c$ec=) consiste considrer un bloc de donnes comme la reprsentation des coefficients d'un pol-n4me que l'on divise ensuite par un pol-n4me fixe et prdtermin. Les coefficients issus de cette division constituent le 0#0 et servent de code correcteur. La vrification des donnes se fait en multipliant le pol-n4me fixe par les coefficients du 0#0 et en comparant le rsultat avec les donnes. :n peut galement calculer le 0#0 des donnes reGues et comparer avec le 0#0 reGu.

Diapo de 1!1 )usqu*+ 1!, Diapo 1-1.1-#

III. Codes convolutifs (ou convolutionnels)

1. Gnralits %e principe des codes convoluti!s, invents par 1eter 6lias en 19>?, est non plus de dcouper le message en blocs !inis, mais de le considrer comme une squence semi( in!inie a a1a98 de symboles qui passe . travers une succession de registres . dcalage, dont le nombre est appel mmoire du code. 1our simpli!ier, et galement parce que c7est ainsi pour la quasi(totalit des codes convoluti!s utiliss, nous considrerons le cas o@ le message est constitu de bits.

Diapo 209

Diapo 210

2. Codes NSC et RSC Deu" catgories de codes convoluti!s ont t particulirement tudies et prsentent des proprits intressantes / es codes non s!stmati"ues ou #SC $#on S!stematic Con%olutional codes& An code convoluti! est dit systmatique si l7un des bits de sortie est identique au bit d7entre.

%es codes B:C, dont celui prsent ci(dessous est un e"emple, prsentent l7avantage par rapport au" codes systmatiques de !ournir plus d7in!ormation / tout bit de sortie du codeur renseigne sur plusieurs bits du message cod. %e dcodeur dispose donc de plus d7lments dans un code B:C, et permet donc de corriger plus d7erreurs. 1our cette raison, ce sont les codes B:C qui ont t principalement tudis et utiliss Cusqu7au dbut des annes 199 . *n constate e"primentalement que la puissance d7un code &sa capacit . corriger les erreurs' augmente plus ou moins linairement avec la mmoire de ce code. *n s7est donc attac$ . augmenter ce qui pose des problmes car la comple"it du dcodeur est en 9 & D 8 est auCourd7$ui un quasi(ma"imum pour la plupart des applications'. es codes s!stmati"ues rcursi's ou (SC $(ecursi%e S!stematic Con%olutional codes& Un code convolutif est dit rcursi! si la squence passant dans les registres dcalages est 1 alimente 3 par le contenu de ces registres. Un exemple de codeur rcursif est reprsent en ?igure H. /upposons que le codeur reGoive le message @5@@ les registres tant initialement tous deux 5.

La squence code devient. @@ 5@ @5 @5 et les registres seront finalement lItat @@. :n a constat exprimentalement gr!ce aux travaux sur les turbo=codes (et une quipe de chercheurs australiens sIattache le dmontrer) que seuls les codes #/0 sont susceptibles dIatteindre la limite de /hannon.

IV. Entrelacement
%7entrelacement consiste . permuter une squence de bits de manire . ce que deu" symboles 1roc$es . l7origine soient le plus loigns possibles l7un de l7autre. Cela permet en particulier de trans!ormer une erreur portant sur des bits regroups en une erreur rpartie sur l7ensemble de la squence. An e"emple classique de l7utilit de l7entrelacement est celui des codes correcteurs d7erreurs protgeant les disques compacts / il s7agit d7un code en bloc de )eed(:alomon entrelac qui permet de corriger plusde ? erreurs conscutives dues . une poussire, une ra!lure8 *n c$erc$e galement, en particulier pour les turbo(codes, . raliser une permutation aussi E c$aotique F que possible. Aucune rgle n7e"iste encore ici. %e tout est de trouver l7entrelaceur qui donnera les meilleurs rsultats e"primentau" 0 #.-.# .e turbo codeur %a taille ; des blocs du turbo codeur doit ,tre grande, plusieurs milliers de bits d'in!ormation au minimum. %e m,me codeur convoluti! systmatique est utilis deu" !ois. #l !aut prendre en compte le !ait que l'tat du codeur . la !in du codage d'un bloc doit revenir . . #l !audra donc aCouter, pour c$acun des deu" codages, m symboles d'in!ormation et m symboles de redondance. Ces symboles seront a priori di!!rents pour les deu" codeurs.

%a permutation est di!!icile . spci!ier. :on c$oi" est trs important et une mauvaise permutation peut produire de trs mauvais rsultats &par e"emple l'identit'. 6n pratique le plus simple est de c$oisir une permutation alatoire, quitte . la c$anger si elle semble mal !onctionner. :i l'on veut e!!ectuer des simulations pour mesurer les per!ormances du dcodeur en moyenne, on pourra par e"emple c$anger la permutation . c$aque bloc cod. 1our in!ormation, le codeur propos est celui de l'A+;:, la taille des blocs peut varier entre ? et >11? bits. %a d!inition de la permutation est trs comple"e et dpend de la taille du bloc.

! Pour aller plus loin

*n peu tudier, . l'aide de simulations sur un grand nombre de blocs, l'volutions des per!ormances du dcodeur lorsque les di!!rents paramtres voluent. %es paramtres . !aire voluer sont la probabilit d'erreur du canal, la taille de bloc, le nombre d'itrations du dcodage. 1our c$aque essai, les per!ormances du dcodeur seront mesures par le tau" d'erreur rsiduel binaire, c'est(.(dire la proportion de symboles !au" aprs le dcodage. Diapo #/0.#/1

La rvolution des turbo-codes


Introduction
%a communication avec les sondes spatiales, . l7autre bout du systme solaire, pose le problme de la !iabilit du message transmis. Ane transmission sur une telle distance est obligatoirement parasite &notamment . cause de diverses sources de perturbations lectromagntiques'. 1ourtant, dans ce domaine et dans bien d7autres, il est primordial que les in!ormations collectes par les sondes soient bien re-ues. #l y a donc ncessit de E scuriser F la transmission / c7est le rGle des codes correcteurs d7erreurs. *n raCoute au message . transmettre des in!ormations supplmentaires, qui permettent de reconstituer le message au niveau du rcepteur.
)ur*o code est le nom d'un nouveau type de code correcteur, qui permet de s'approc$er bien plus que les anciens codes de la limite de :$annon. ;urbo code est actuellement incontournable lorsque l'on touc$e au codage de l'in!ormation ou au" tlcommunications de pointe / ils sont un standard pour les systmes de tlp$onie mobile H:+ &Hlobal :ystem o! +obile communication' de troisime gnration
2ri%ine

%es turbo codes sont ns au sein de l'Icole nationale suprieure des tlcommunications de Jretagne &6B:; Jretagne', suite au" travau" de Claude Jerrou, Alain Hlavieu" et 1unya ;$itimaCs$ima, publis en 1995 et prsents lors de l'#nternational Con!erence on Communications de Cuin 1995 . Henve en :uisse.

. #ls sont prsents dans la plupart des standards modernes de tlcommunication et commencent . appara<tre dans les applications &par e"emple pour la transmission des donnes dans le tlp$one mobile de troisime gnration A+;:'.

+rincipe des tur*o codes

%e principe des turbo codes, comme tout code correcteur d'erreur, est d'introduire une redondance dans le message a!in de le rendre moins sensible au" bruits et perturbations subies lors de la transmission. %e dcodage, lui, est une collaboration entre deu" dcodeurs, d'o@ l'appellation turbo.

Coda,e
An turbo codeur classique rsulte de l'association en parallele de deu" codeurs. #l s'agit souvent de codeurs convoluti!s rcursi!s systmatiques &):C / )ecursive :ystematic Coder' car leur rcursivit apportent des proprits pseudo(alatoires intressantes.

Concrtement, le turbo codeur produira typiquement trois sorties . envoyer sur le canal de transmission &aprs modulation ventuelle' /
@. la sortie " dite systmatique, c'est(.(dire l'entre m,me du codeur &la

squence u' 9. la sortie de parit y1 / la sortie du premier codeur J. la sortie de parit y9 / la sortie du deu"ime codeur. %a di!!rence entre ces deu" sorties vient du !ait que la trame a est entrelace avant d'entrer dans le deu"ime codeur. 6lle est mlange. Ce codage permet donc de rpartir l'in!ormation apport par un bit de la trame u sur ses voisins &avec le codage de parit 1' et m,me sur toute la longueur de la trame transmise &avec le codage de parit 9'. Ainsi, si une partie du message est !ortement ab<me pendant la transmission, l'in!ormation peut encore se retrouver ailleurs.

Dcoda,e
%e dcodage, nous l'avons dit, est le !ruit de la collaboration de deu" dcodeurs. Ceu"(ci vont s'c$anger de l'in!ormation de manire itrative a!in d'amliorer la !iabilit de la dcision qui sera prise pour c$aque symbole

:i le codage est relativement simple, le dcodage est beaucoup plus comple"e. Bous n7en prsentons ici que le principe. %es entrelaceurs et le dsentrelaceur

utilisent la m,me permutation que l7entrelaceur du codeur. #ls permettent par e"emple la comparaison de la squence K avec la squence L9, entrelace au moment du codage. Cette procdure de dcodage est itre un certain nombre de !ois !i" . l7avance. %a dcision n7intervient qu7aprs. A c$aque tape, le dcodeur dispose des probabilits calcules . l7tape prcdente, et se base sur ces probabilits, et non sur une E pr(decision F. C7est ce qui a valu au" turbo(codes leur nom / comme dans un moteur turbo, les E gaM d7c$appement F sont rutiliss pour augmenter les per!ormances.

-tilisation de tur*o code


6n raison de sa per!ormance, turbo code a t adopt par plusieurs organismes pour ,tre intgr dans leurs standards. C'est ainsi que la BA:A a dcid d'utiliser les turbo codes pour toutes ses sondes spatiales, construites . partir de 9 5. De son cGt, l'Agence spatiale europenne &6:A' a t la premire agence spatiale . utiliser turbo code, avec sa sonde lunaire :mart 1. 1lus prs de nous, turbo code est utilis par l'A+;: et l'AD:% 9. . Performances
Le graphique de la ?igure 8 reprsente le 2aux dIErreurs ;inaire dIun message cod avec un turbo=code de taux # K @ 6 et passant par un canal dont le :B) (:ignal to Boise )atio) est EbLM5. 0e rapport caractrise la fiabilit du canal. +lus celui=ci est lev meilleure est la transmission. La limite de /hannon reprsente 5.6 d; correspond un canal de capacit @ 6 . $insi dIapr's le thor'me de /hannon pour tout :B) suprieur 5.6 d; il existe un code de taux @ 6 telle que le 2E; soit aussi petit que lIon veut. $ 5 JH d; de la limite de /hannon on parvient ramener le 2E; moins de @5=H. $ titre de

comparaison un code convolutif classique ( K A) fournit dans les m*mes conditions un 2E; voisin de 7.@5=6 N En fait si " dsigne la taille des blocs transmis on obtient avec les turbo=codes des performances comparables un code convolutif avec " A soit en pratique de lIordre de @55 ce qui serait bien entendu irralisable. :n constate que la qualit du message reGu augmente avec le nombre dIitration. (e m*me on peut constater exprimentalement que le choix de lIentrelaceur )oue un r4le fondamental.

Conclusion

LIinvention des turbo=codes est ainsi une vritable rvolution dans le domaine des codes correcteurs dIerreurs. Leurs performances qui se rapprochent des limites thoriques tablies par /hannon les prsentent comme incontournables dans la plupart des domaines o& la transmission de donnes intervient. 2outefois ils ont encore un inconvnient . le dlai inhrent la technique itrative de dcodage qui les rend impropres la transmission de la voix en tlphonie.