Brevet FR2922699A1 — publié le 20090424

La présente invention se rapporte d'une façon générale au domaine du codage/décodage dans des réseaux de télécommunications et concerne plus particulièrement un décodeur et un procédé de décodage correcteur d'erreurs associé adaptés à un réseau maillé. Le codage correcteur d'erreurs de données permet de fiabiliser la transmission des données sur un réseau et de corriger d'éventuelles pertes liées à la transmission sur un canal en développant des informations de redondance. Dans la suite du document, les réseaux maillés sont entendus comme des réseaux de télécommunications organisés de manière à ce que certains noeuds répètent un message de données reçu soit pour sa diffusion ("broadcast" selon la terminologie anglo-saxonne), soit lorsque la distance de l'émetteur original au destinataire dépasse la portée physique du signal et nécessite qu'un des noeuds relaie le message de données. Un exemple de réseau maillé est représenté en figure 1 où la source (noeud "0") émet un message en direction du récepteur (noeud "z"). Plusieurs relais (noeuds "r", "s", "t", "u") reçoivent le message puis le décodent en partie afin de déterminer le destinataire du message. Si le destinataire est autre que le relais, ce dernier ré-encode le message et le réémet sur le réseau vers le noeud "z" destinataire car ce dernier est hors de portée directe du noeud source. L'art antérieur propose plusieurs solutions de codage/décodage non spécifiquement dédiées aux réseaux maillés. Notamment on connaît le document US 7,089,477 qui s'appuie sur des principes de répétitions de messages pour créer une classe de codes correcteurs d'erreur dits de répétition accumulation. Dans le système d'encodage/décodage de l'art antérieur, un code de répétition est créé explicitement au niveau de l'émetteur original par la duplication de données d'un message à transmettre et la concaténation des données ainsi répétées. Cette répétition consiste en un code de répétition ou "code externe" qui, selon la théorie sur les codes, constitue des informations supplémentaires aux informations de redondance propre ("code interne") générées par le codage d'une seule copie du message, par exemple par un code convolutionnel. Selon le document US 7 089 477, les données répétées sont ensuite entrelacées en tenant compte de l'ensemble des copies du message. Dans ces conditions, le décodage du message au niveau d'un destinataire requiert la réception de l'intégralité des copies créées et transmises ainsi que la conservation de l'ordre de leur entrelacement le long du ou des canaux de communication. Cependant, dans les réseaux maillés, les noeuds relais créent des copies supplémentaires d'un message reçu. Par exemple, lorsqu'un noeud relais est connecté à plus de deux noeuds, à réception d'un message provenant de l'un des noeuds, il peut retransmettre le message reçu vers les autres noeuds (au moins deux autres noeuds), en dupliquant le message reçu. Les copies créées constituent un code de répétition implicite. Dans le cas de la figure 1, le noeud relais "s" duplique un message reçu de l'émetteur (noeud "0") vers le noeud "t" et le noeud "u". Le noeud "t" transmet les messages reçus des noeuds "0" et "s" au noeud "z". Le noeud "u" transmet également le message reçu du noeud "s" vers le noeud destinataire "z". Le récepteur (noeud "z") reçoit ainsi plusieurs copies d'un même message original, ces copies pouvant chacune être protégée par un code de redondance, par exemple, pour des canaux de transmission sans fil, un code convolutionnel (CC). Ceci implique que les messages transmis peuvent emprunter plusieurs chemins et arriver à des instants variables au niveau du récepteur. L'ordre de réception des messages au niveau du récepteur ne correspond, dans ce cas, pas nécessairement à l'ordre d'émission sur le réseau. Il en résulte une impossibilité pour le décodeur de l'art antérieur de retrouver le message initial. On observe également que certaines copies de données codées peuvent être perdues, parfois à cause de dysfonctionnements non prévisibles (interruption d'un lien physique par exemple) de la couche physique du réseau. L'ensemble des copies initiales ne peut, dans ce cas là, pas être reçu par le décodeur. Encore une fois, le décodeur de l'art antérieur est alors incapable de retrouver le message initial. Le décodeur de l'art antérieur n'est, par conséquent, pas adapté à la topologie des réseaux maillés. Il existe donc un besoin de systèmes décodeurs adaptés aux spécificités des réseaux maillés. A cet effet, l'invention vise notamment un système pour le décodage d'une pluralité de copies codées d'un mot de données, comprenant au moins un premier étage de décodage, ledit premier étage comprenant: ù une pluralité de décodeurs à décision quantifiée, chaque décodeur étant agencé pour décoder une copie codée reçue en entrée de décodeur, et ù un décodeur sur graphe comprenant une pluralité de noeuds, chaque noeud étant agencé pour recevoir la valeur quantifiée de sortie d'un décodeur correspondant, le décodeur sur graphe étant apte à déterminer une valeur de décodage dudit mot de données à partir desdites valeurs quantifiées de sortie. Un mot de donnée peut être un n-uplet de valeurs (symboles) prises parmi un ensemble de valeurs, notamment un mot binaire, par exemple un octet, en particulier un bit unique lorsque n vaut 1. Les données peuvent représenter des images numériques, des documents électroniques, des vidéos, des données audio ou toute donnée représentative d'une grandeur physique acquise par un équipement d'acquisition. Selon l'invention, dans ledit premier étage, un premier niveau décode séparément les différentes copies reçues et un deuxième niveau (le décodeur sur graphe) produit une estimation de décodage du mot. L'estimation est effectuée selon un algorithme de propagation de messages au sein du décodeur sur graphe sur la base d'un support correspondant à un graphe représentatif de contraintes liées au codage. Quelque soit le nombre de copies supplémentaires reçues, elles sont affectées séparément aux différents décodeurs à décision quantifiée du premier niveau. Quelque soit le nombre de ces copies reçues et décodées, le décodeur sur graphe en tient compte dans l'estimation de la valeur de décodage. Le système selon l'invention est ainsi adapté aux réseaux maillés. La présente invention s'applique à tout type de réseau maillé, en particulier aux réseaux maillés sévèrement bruités, par exemple les réseaux reposant sur des supports fortement sensibles à des perturbations extérieures (par exemple l'air, eu égard aux champs électromagnétiques), tels que les réseaux sans fils. Un avantage de l'invention réside dans le fait qu'un décodeur à graphe s'adapte au nombre de valeurs en entrée et permet ainsi une détermination d'autant plus fine de la valeur décodée des données que le nombre de copies reçues est important. Un autre avantage de l'invention est de tirer profit de la topologie particulière des réseaux maillés. En effet, la multiplication des copies par les noeuds relais et la modification du codage de celles- ci par les noeuds lors de leurs passages augmentent le nombre d'informations de redondance. Le décodage final tient compte de ces "nouvelles" informations. Cela permet d'accroître l'efficacité du décodage au niveau du récepteur. Un autre avantage de l'invention est de fournir un système pour le décodage dont le rendement s'adapte au réseau de transmission. On entend par rendement d'un code, le rapport entre le nombre de données (par exemple, bits) à transmettre et la somme de ce nombre et des données de redondance (ou données de parités) ajoutées lors de la communication des données : rendement rt=données/(données+parités). Les données de redondance sont constituées des données supplémentaires introduites par les codes "interne" et "externe". On note que, dans le système du document US 7 089 477, le rendement est prédéterminé par le seul nombre de répétitions initiales du message par l'émetteur. Dans un réseau maillé, le code "externe" évolue au fur et à mesure de la création de copies supplémentaires par les noeuds relais. Le système décodeur en réception tient compte des copies supplémentaires générées ces noeuds. Selon l'invention, le rendement du codage s'adapte donc en fonction du nombre de copies reçues, indépendamment d'éventuelles copies perdues. Par ailleurs, on comprend que l'invention est d'autant plus efficace que le codage utilisé pour coder le mot de données ne comprend qu'un code "interne", c'est-à-dire sans répétition de message avant transmission par l'émetteur original. Dans un mode de réalisation, le système est agencé pour maintenir à un état neutre les noeuds (du décodeur sur graphe) correspondants à des décodeurs à décision quantifiée n'ayant pas reçu de copie codée en entrée. On entend par "état neutre", une valeur ou un état du noeud considéré correspondant à une absence d'information (ici absence de sorties des décodeurs à décision quantifiée). Un état neutre n'influe sensiblement pas sur le calcul des mises à jour des autres noeuds à l'intérieur du graphe de décodage lors de la propagation de messages dans le graphe. Pour maintenir cet état neutre, le système peut comprendre des moyens ad hoc, par exemple un module de contrôle qui applique une valeur constante auxdits noeuds. L'application d'une valeur constante est avantageuse en ce qu'un bruit, aussi petit soit-il, n'est pas amplifié au cours d'itérations calculatoires jusqu'à avoir une valeur significative pour influer le résultat de décodage. Dans un mode de réalisation, ledit décodeur sur graphe est apte à calculer au moins une valeur de vraisemblance pour chacune desdites copies codées à partir des valeurs quantifiées de sortie des décodeurs à décision quantifiée des autres copies codées. Dans ce cas, les sorties des décodeurs à décision quantifiée sont également des valeurs de vraisemblance. Notamment, la valeur quantifiée de sortie du décodeur à décision 30 quantifiée d'une copie codée peut être exclue du calcul de la valeur de vraisemblance associée à cette copie codée. La valeur de vraisemblance d'une donnée est définie par les probabilités pour cette donnée de prendre chaque valeur parmi l'ensemble des valeurs possibles. Notamment, dans le domaine binaire, la vraisemblance d'un bit "b" est constituée de la probabilité p(b=1) de prendre la valeur "1" et la probabilité p(b=O) de prendre la valeur "0". On envisage alors que l'état neutre correspond sensiblement à une valeur de vraisemblance de 1/2 pour chaque probabilité. En particulier, lesdits noeuds du décodeur sur graphe sont agencés pour être mis à jour avec les valeurs de vraisemblance ainsi calculées. Il est également prévu que le décodeur sur graphe est apte à calculer (mettre à jour) les rapports de vraisemblance de ces copies codées à partir des valeurs quantifiées de sortie des décodeurs à décision quantifiée des autres copies codées. Dans ce cas, les sorties des décodeurs à décision quantifiée sont également des rapports de vraisemblance associés à chacune des copies décodées. Notamment, le rapport de vraisemblance comprend la log-vraisemblance définie par Iog(p(b=1)/p(b=O)) où log est une fonction logarithme. Les opérations de calcul du décodeur sur graphe sont alors simplifiées. On envisage alors que l'état neutre correspond sensiblement à une log-vraisemblance nulle. Dans ce mode de réalisation, le décodeur sur graphe est agencé de sorte que le calcul des valeurs de vraisemblance pour chacune desdites copies codées comprend l'addition des valeurs quantifiées de sortie des autres décodeurs à décision quantifiée. Seuls des additionneurs sont alors nécessaires. Les circuits logiciels ou matériels correspondant sont ainsi d'une complexité simple. Egalement dans ce mode de réalisation, le décodeur sur graphe est apte à additionner l'ensemble des valeurs quantifiées de sortie desdits décodeurs à décision quantifiée pour déterminer ladite valeur de décodage dudit mot de données. Dans un mode de réalisation, chaque noeud (du décodeur sur graphe) est passé en paramètre du décodeur à décision quantifiée correspondant, ledit décodeur à décision quantifiée correspondant étant apte à décoder une copie codée reçue en entrée en fonction dudit paramètre passé. Dans cette configuration, ledit premier étage est bouclé sur lui-même ce qui permet de réaliser des itérations successives de décodage des copies reçues pour affiner l'estimation finale en tenant compte des décodages précédents et des estimations précédentes par le décodeur sur graphe. En variante, le système comprend une pluralité d'étages de décodage successifs, chaque noeud (d'un décodeur sur graphe) étant passé en paramètre du décodeur à décision quantifiée recevant en entrée la même copie codée (que le décodeur à décision quantifiée correspondant audit noeud dans le même étage de décodage) dans l'étage de décodage suivant, lesdits décodeurs à décision quantifiée dans l'étage de décodage suivant étant aptes à décoder la copie codée reçue en entrée en fonction dudit paramètre passé. On réalise ainsi également un décodage itératif. Notamment, on prévoit de un à dix étages de décodage, en particulier quatre itérations qui permettent une convergence efficace du décodeur sur graphe. En particulier, chaque décodeur à graphe d'un étage de décodage intermédiaire est apte à déterminer une valeur intermédiaire de décodage dudit mot de données à partir des valeurs quantifiées de sortie des décodeurs à décision quantifiée de l'étage de décodage intermédiaire. Il est ainsi possible de suivre l'évolution des estimations. On peut, par exemple, arrêter le décodage itératif lorsque lesdites valeurs intermédiaires n'évoluent plus (différence entre deux valeurs intermédiaires successives inférieure à une valeur seuil). On prévoit alors des moyens correspondants agencés pour comparer lesdites valeurs intermédiaires estimées. Dans un mode de réalisation où le système maintient l'état neutre des noeuds correspondants à des décodeurs à décision quantifiée dépourvus de copie codée en entrée, le système est apte à libérer, à réception d'une nouvelle copie codée, le noeud de(s) décodeur(s) à graphe correspondant au décodeur à décision quantifiée recevant en entrée ladite nouvelle copie. On entend ici la "libération" d'un noeud par le fait que le système ne force plus le maintien de l'état neutre sur ce noeud. La détection d'une nouvelle copie codée peut être effectuée par exemple en scrutant la sortie des décodeurs à décision quantifiée. Dans un mode de réalisation, le(s)dit(s) étage(s) de décodage comprennent une pluralité de désentrelaceurs associés chacun, respectivement à la sortie d'un décodeur à décision quantifiée. Cette réalisation s'applique notamment lorsque lesdits mots de données comprennent plusieurs symboles. L'utilisation de l'entrelacement des symboles et donc du désentrelacement au niveau du récepteur est avantageuse pour une transmission efficace de données avec possibilité de correction d'erreurs. En effet, selon la théorie de Shannon, il convient de véhiculer les symboles de données sur les canaux de transmission de la façon la plus décorrélée possible. Les désentrelaceurs réalignent les différents symboles sur l'ordre original des symboles dans le mot de données avant entrelacement au niveau d'un codeur en amont lors de la transmission sur le réseau maillé. Cette configuration permet de présenter au décodeur sur graphe des valeurs quantifiées en sortie de décodeur à décision quantifiée qui sont toutes alignées selon un même ordre. Les calculs par le décodeur sur graphe sont ainsi simplifiés. Notamment, on prévoit que le système est apte à déterminer un type d'entrelacement d'une copie codée reçue en entrée de décodeur à décision quantifiée et à configurer ledit désentrelaceur respectif en fonction dudit type déterminé. En particulier, lorsque le système comprend plusieurs étages de décodage, lesdits étages de décodage comprennent une pluralité d'entrelaceurs disposés chacun entre un noeud d'un étage de décodage et le décodeur à décision quantifiée correspondant (recevant en entrée la même copie codée que le décodeur à décision quantifiée correspondant audit noeud dans le même étage de décodage) de l'étage de décodage suivant. En particulier, les désentrelaceur et entrelaceur correspondants aux décodeurs à décision quantifiée d'une même copie codée mettent en oeuvre des fonctions réciproques. L'entrelacement en sortie d'étage de décodage permet de fournir au décodeur à décision quantifiée de l'étage suivant un paramètre (par exemple les valeurs de vraisemblance ou de log-vraisemblance) aligné sur l'ordre des symboles de la copie codée reçue par le décodeur à décision quantifiée de l'étage suivant. L'invention concerne également un système de transmission, par exemple de type émetteurs-récepteur, comprenant un système pour le décodage tel que présenté précédemment, une pluralité de systèmes encodeurs correspondant chacun à un décodeur à décision quantifiée dudit système pour le décodage et une pluralité de canaux de transmission reliant chaque système encodeur et le décodeur à décision quantifiée correspondant. Notamment, chaque système encodeur comprend une paire d'encodeurs convolutionnels aptes à générer deux signaux de parités sur ledit canal de transmission correspondant. En particulier, aucun signal systématique n'est généré et transmis sur ledit canal de transmission par les encodeurs convolutionnels. Il est également prévu que chaque système encodeur comprend un entrelaceur, le désentrelaceur associé à un décodeur à décision quantifiée étant une fonction réciproque de l'entrelaceur du système encodeur correspondant. Dans un mode de réalisation, le système de transmission comprend un réseau maillé incluant lesdits canaux de transmission. Notamment, les canaux de transmission comprennent un support physique de type air d'un réseau sans fil. L'invention a également trait à un procédé de décodage d'une pluralité de copies codées d'un mot de données, comprenant les étapes suivantes: a) premier décodage à décision quantifiée de chacune desdites copies codées en une valeur quantifiée, et b) second décodage par un décodeur sur graphe recevant, dans une pluralité de noeuds, les valeurs quantifiées obtenues lors du premier décodage, ledit second décodage comprenant la détermination d'une valeur de décodage dudit mot de données à partir desdites valeurs quantifiées. Les copies traitées à l'étape a) sont en général les copies reçues par le système de décodage. Notamment, le procédé peut également comprendre une étape c) de mise à jour, par le décodeur sur graphe, desdits noeuds à partir des valeurs quantifiées obtenues lors du premier décodage par les autres noeuds du décodeur sur graphe. En particulier, le procédé comprend les itérations successives des étapes a), b) et c), dans lesquelles ledit premier décodage a) est fonction desdites mises à jour c) des noeuds de l'itération précédente. De façon optionnelle, le procédé peut comprendre des étapes se rapportant aux caractéristiques de système présentées ci-dessus. Un moyen de stockage d'informations, éventuellement totalement ou partiellement amovible, lisible par un système informatique, comprend des instructions pour un programme informatique adapté à mettre en oeuvre le procédé de décodage conforme à l'invention lorsque ce programme est chargé et exécuté par le système informatique. Un programme d'ordinateur lisible par un microprocesseur, comprend des portions de code logiciel adaptées à mettre en oeuvre le procédé de décodage conforme à l'invention, lorsqu'il est chargé et exécuté par le microprocesseur. Les moyens de stockage d'information et programme d'ordinateur présentent des caractéristiques et avantages analogues aux procédés qu'ils mettent en oeuvre. D'autres particularités et avantages de l'invention apparaîtront encore dans la description ci-après, illustrée par les dessins ci-joints, dans lesquels : - la figure 1 représente schématiquement un exemple de réseau maillé de l'art antérieur; - la figure 2 est une représentation schématique d'un système comprenant un décodeur selon la présente invention; - la figure 3 illustre les principes du décodage sur graphe; -la figure 4 illustre un exemple de décodeur à plusieurs étages selon l'invention; - la figure 5 est un ordinogramme représentant les étapes d'un décodage itératif selon l'invention; - la figure 6 est un diagramme illustrant les performances de la présente invention; et - la figure 7 montre une configuration matérielle particulière d'un dispositif de traitement d'information apte à une mise en oeuvre du procédé selon l'invention. L'invention repose sur l'utilisation des décodeurs sur graphe dont on ne manquera pas, dans la suite du présent document, de fournir des précisions, 15 notamment en référence aux figures 3a et 3b. En référence à la figure 2, un décodeur 100 selon l'invention est relié à un réseau maillé 200. Un émetteur initial 300 est également relié au réseau maillé, lequel émetteur est susceptible d'émettre un message 305 comprenant des mots de 20 données à destination d'un récepteur, représenté ici par l'unique décodeur 100. Ici, la transmission du message est effectuée mot par mot et on se concentrera donc sur la transmission d'un tel mot de données. Chaque mot de données est composé, en général, de plusieurs symboles binaires. Comme déjà mentionné en référence à la figure 1, le réseau maillé 25 200 comprend de nombreux noeuds relais dont on a représenté, ici, que les derniers noeuds relais 210; délivrant une copie 320; du mot de données transmis au décodeur 100. On a représenté un unique réseau maillé 200. Il est entendu qu'une pluralité de réseaux maillés, éventuellement interconnectés peut être utilisée. 30 Des réseaux maillés présentant des média physiques différents sont également envisagés. Le cadre 220 en pointillé représente l'ensemble des autres noeuds relais étant intervenus dans la transmission des copies de mot de données jusqu'aux noeuds relais 210;. Bien que l'on ait représenté que quatre noeuds relais 210;, il est entendu qu'un nombre non limité de ces noeuds peut être envisagé. On verra par la suite que le décodeur s'adapte au nombre de ces noeuds 210;. Les noeuds relais 210; comprennent des moyens (non représentés) pour recevoir une copie 310 du mot de données depuis un autre noeud du réseau 200, des moyens (non représentés) pour désentrelacer et décoder la copie reçue afin d'identifier le destinataire. Pour une retransmission de la copie 305 de mot de données en direction du destinataire 100, chaque noeud relais 210; comprend un entrelaceur 212; suivi de deux codeurs convolutifs 214; fournissant sur le réseau maillé des parités po et p;,2 de la copie 310; de mot de données. Les entrelaceurs 212; réalisent une permutation des symboles de la copie 310 de mot de données 305 d'une manière pseudo-aléatoire en contrôlant néanmoins qu'au moins une certaine distance ("span" selon la terminologie anglo-saxonne) résulte entre l'indice de symbole permutant i et l'indice de symbole permuté II(i) en vérifiant la formule: Quels que soient les indices i,j de symbole dans le mot de données, i û j + II(i) û II(j) > S où x est la valeur absolue de x. et S est une valeur de span. Les entrelaceurs créent ainsi un désordre dans les symboles de la copie conforme à la théorie de Shannon pour optimiser la transmission des 25 données sur un canal de communication. On vérifie aussi que deux entrelaceurs III et n2 présentent un span relatif S' suffisant par pl (i)ùIII(j) + II2(i)ûII2(j) > S'. Les entrelaceurs 212; sont du type S-random. On comprend bien que des alternatives peuvent également être utilisées, comme par exemple des 30 entrelaceurs à verrou. Il est à noter que l'entrelaceur laissant inchangée la suite de symboles de la copie (entrelaceur identité) est aussi un entrelaceur possible pour au plus un des canaux de transmission 230;. Comme nous le verrons par la suite, les entrelaceurs 212; diffèrent d'un canal 230; à l'autre afin de tirer profit des différences qu'ils apportent. Si deux entrelaceurs 212; s'avéraient être identiques, le décodeur pourrait ne pas tenir compte de l'un d'entre eux. Plus en détail, on choisit des entrelaceurs 212; obtenus à l'aide de matrice, plus facile à mettre en oeuvre dans des calculs complexes, généralement de type matriciels. On range alors les index des symboles permutants de la copie 310 suivant les lignes de la matrice, par exemple pour cinq symboles indexés de 1 à 5, un exemple de matrice est [2 4 1 5 3 ]. L'entrelaceur est mis en oeuvre sous forme d'un tableau adressable de mémoires (vives ou mortes), une table d'adressage qui contient la permutation de l'adresse de la table, ou bien par un câblage physique. La copie 310; aux symboles entrelacés est ainsi transmise à la paire de codeurs convolutifs 214; du codeur 210;. Ces codeurs effectuent des opérations de somme modulo 2 sur des sorties de registres à décalage pour fournir deux signaux de parités po et p;,2 20 formant la copie codée 320;. On choisit également d'utiliser un code convolutif non systématique afin de tirer profit de la distance (span) plus grande offerte par ce code, afin de corriger un plus grand nombre d'erreurs. Puisque les performances d'un code ne dépendent que de la 25 distribution entre les mots de code, la distance de Hamming minimale introduite par les codeurs convolutifs 214; utilisés ici est relativement faible. Il en résulte que l'utilisation d'un entrelacement 212;, même de faible span S, est bien meilleure qu'un code de répétition sans entrelaceur. On a représenté, dans la figure 2, des canaux de transmission 230; 30 qui correspondent à la dernière liaison dans la réseau maillé 200 entre un des noeuds relais 210; et le récepteur-décodeur 100. Le décodeur 100 reçoit ainsi une copie 320; codée et entrelacée du mot de données 305 initial via divers canaux de communication 230;. Dans le décodeur 100, on a uniquement représenté les parties relatives au décodage à proprement parler. Il va de soi qu'une chaîne de traitement conventionnelle en amont des décodeurs est mise en oeuvre sans être représentée, notamment, et à titre non exhaustif, la mise en oeuvre de modulateurs, sélecteurs et/ou mémoires tampons. On considère qu'une copie 320i est reçue, traitée puis transmise aux circuits de décodage du décodeur 100. Le décodeur 100 comprend un ou plusieurs étages 110 de décodage. Sur la figure 2, l'on a représenté un unique étage de décodage 110. Nous verrons plus loin, en référence à la figure 4, une réalisation mettant en oeuvre plusieurs étages 1110 et 2110. Chaque copie 320; reçue par le décodeur 100 est fournie en entrée d'un décodeur MAP 112; ("Maximum A Posteriori" selon la terminologie anglo-saxonne). Le décodeur MAP reçoit ainsi les deux parités po et p;,2 du signal transmis. Un paramètre de connaissance a priori du signal à décoder est également fourni en entrée des décodeurs MAP. De façon traditionnelle, cette information a priori est issue d'un autre décodeur ou égaliseur MAP ayant contribué à un décodage antérieur du même signal et pouvant donc fournir des indications sur la valeur supposée du signal. Notamment, cette information est le résultat de la démodulation numérique du signal reçu et exprime la distance entre le signal reçu et le signal idéal le plus proche, suivant le principe du maximum de vraisemblance. Cette information a priori permet ainsi au décodeur de fournir une meilleure détermination de décodage au fur et à mesure des itérations. Pour la présente invention, on décrit par la suite les mécanismes permettant de déterminer cette information a priori pour chacun des décodeurs. On utilise notamment des décodeurs log-MAP de type BJCR. En alternative, un décodeur SOVA est également envisagé. Un exemple de décodeur approprié est décrit dans le document "Turbo-coding", Chris Heegard, Stephen Wicker, Kluwer Academy Publishing, 1999. Dans notre exemple, un même type de décodeur est ainsi choisi pour l'ensemble des canaux de communication 230;. Le décodeur 112; effectue un décodage du signal reçu dans le domaine logarithme et émet notamment une valeur 330; de log-vraisemblance des symboles reçus. Puisque aucune information a priori (information extrinsèque) de la valeur des symboles binaires à décoder n'est connue, le paramètre d'entrée des décodeurs 112; est fixé à 0, comme illustré par la figure 2. Il est entendu que la présente invention ne se limite pas au domaine des log-vraisemblances et qu'elle peut s'appliquer à des décodeurs travaillant dans d'autres domaines de calcul. Les copies 320; reçues sont décodées en même temps car le décodage ici n'est pas asynchrone, c'est-à-dire qu'il n'est pas déclenché à chaque arrivée d'une copie. Ainsi, le décodage sur graphe qui suit, voir ci-après, utilise des informations au niveau de chacun des décodeurs MAP ayant décodé une copie. Néanmoins, d'un point de vue macroscopique, et comme vu ci-après en référence par exemple aux tables 1 à 5, le système selon l'invention permet de tenir compte des copies qui arrivent au fur et à mesure du décodage alors même qu'elles n'étaient pas arrivées lors du début du décodage. Le système présenté à titre d'exemple est ainsi synchrone par rapport à des tranches temporelles mais tient compte d'éventuelles copies arrivées de façon asynchrone par rapport à la tranche temporelle initiale. Les log-vraisemblances 330; des symboles de la copie 320; reçue sont ensuite désentrelacées par des désentrelaceurs 114; afin de constituer une suite de log-vraisemblances selon l'ordre initial du mot de donnée 305, c'est-à-dire avant entrelacement par les entrelaceurs 212;. Les désentrelaceurs 114; sont du même type que les entrelaceurs 212; et mettent en oeuvre, pour un même canal de communication 230;, la fonction réciproque de l'entrelaceur 212; correspondant. Pour obtenir une correspondance efficace, le décodeur 100 comprend un module de contrôle 120 capable de paramétrer des désentrelaceurs 114; en fonction de la nature de l'entrelacement des données reçues au niveau d'un canal de communication 230;. Notamment, dans un réseau sans fil où l'accès à l'émission de données est conditionné à un découpage temporel, on peut attribuer à chaque fenêtre temporelle un type d'entrelacement. Dès lors, le module de contrôle 120 pourra aisément déterminer le type d'entrelacement et donc paramétrer en conséquence le désentrelaceur 114; correspondant. Dans un système CDMA, il est envisagé d'associer un entrelacement à un code. Pour mémoire, le code CDMA utilise un ensemble de codes orthogonaux modules en DPSK. Au récepteur 100, on synchronise le signal reçu avec un générateur de code pour chaque code. Un corrélateur peut alors extraire la modulation BPSK de l'ensemble des signaux codés. On connaît alors dès la synchronisation le code porteur associé à un train de données afin de réconcilier les données reçues avec le type d'entrelacement et donc déterminer la nature de paramétrage du désentrelaceur 114; correspondant, pour le module de contrôle 120. En alternative, dans un système stochastique, la trame d'en-tête des données devra véhiculer un identifiant de l'entrelaceur utilisé. Dans ce cas, on évite d'encoder l'en-tête avec le même système de codage. Le module de contrôle 120 récupère alors l'identifiant de l'entrelaceur en réception et paramètre le désentrelaceur 114; correspondant. Quel que soit le mode de transmission et de détermination de l'entrelacement, le module de contrôle 120, qui a connaissance dans sa mémoire des descriptions des différents entrelacements possibles, peut paramétrer les désentrelaceurs 114; en modifier des informations contenues dans la table d'adressage constituant un désentrelaceur. Les copies décodées et désentrelacées 340i sont ensuite fournies en entrées (1160;) d'un décodeur sur graphe 116. Ce dernier 116 reçoit donc depuis chacune des lignes de décodage i, une suite de log-vraisemblances ordonnées selon les symboles leur correspondant dans le mot de données initial 305. Le décodeur sur graphe 116 permet notamment de déterminer une valeur estimée des symboles du mot de données initial 305 à partir de l'ensemble des valeurs décodées des symboles reçus 340;, ici en travaillant sur les log-vraisemblances. Nous faisons ici un rapide rappel sur le décodage sur graphe, en référence aux figures 3a et 3b. Un code appliqué à des mots de données peut être défini comme un ensemble de variables qui satisfont un ensemble de contraintes. Un graphe dit de Tanner 400 peut être construit qui représente ces relations entre variables X; et contraintes. Une variable X; est représentée par un cercle et une contrainte Ci par un carré. Le graphe 400 de la figure 3a illustre notamment un code linéaire 1 1 0 0 1 0- binaire défini par la matrice de vérification de parité 0 1 1 0 0 1 1 0 1 1 0 0 On peut utiliser le graphe de Tanner pour mettre en place un décodage à décisions quantifiées. On associe à chaque variable X; du code la valeur d'un symbole (de la copie 320;) reçu après sa transmission, cette valeur pouvant être quantifiée. Un algorithme dit de propagation de croyance, ou de propagation de message est alors mis en place avec le graphe 400 comme support. Dans le domaine binaire, qui nous intéresse ici même si l'invention ne se limite pas à ce domaine spécifique, chaque variable Xi ou chaque relation de parité peut être représentée par deux variables (probabilités) p et q telles que p + q = 1. Ces variables p et q représentent la probabilité d'une des variables X; du code d'être un 0 ou un 1, aussi bien que la probabilité d'une des fonctions de parité (Ci) d'être satisfaite ou non. A un sommet (variable X; pour un cercle ou fonction Ci pour un carré) du graphe de degré 3, i .e. à un sommet où 3 arcs se terminent, les règles de mise à jour (m.a.j.) des variables p et q sont les suivantes : - la règle de mise à jour des probabilités (P2, q2) d'une fonction de parité (C2) faisant partie d'un ensemble de noeuds représentant des fonctions de parités (Ci, i-o, 1, 2) reliés entre eux par un noeud représentant une variable (X;) est déterminé par la fonction VAR ci-dessous : i PoPi R'oR'i VAR(Po,go,Pi,gi) := m.a.j.(P2,g2) := Popi + gogi Popi + gogi - la règle de mise à jour des probabilités (P2, q2) d'une variable (X2) faisant partie d'un ensemble de noeuds représentant des variables (X;, i=o, 1, 2) reliés entre eux par un noeud représentant une fonction de parité (Ci) est déterminé par la fonction C ci-dessous : C(Po,go,pi,g1) :=m.a.j.(P2,g2):_ (Popi+R'oR'i,Pogi+gopi) C'est à dire que chaque sommet va recevoir un résultat qui apporte la contribution des sommets à un voisinage de distance 2. Ce résultat exclut la propre contribution du sommet récepteur. Le sommet récepteur détient alors sa propre valeur dite intrinsèque (valeur reçue par exemple sur le canal) et une valeur de contribution des autres sommets. Le sommet recevant l'information ajoute la contribution à ses variables s'il est un sommet correspondant à une variable, réalisant ainsi une mémorisation des changements dans ses probabilités de correspondre à un 1 ou à un O. Pour réaliser le décodage, il reste à organiser la propagation des mises à jour. On organise le graphe de Tanner 400 du code pour ranger les sommets en rang de sommets correspondants à des variables et en rang de sommets correspondant à des fonctions de vérification de parité. La figure 3b donne un exemple d'organisation du graphe de la figure 3a, incluant un rang de noeuds variables et un rang de noeuds fonctions. Puis on décide arbitrairement d'un sens de propagation des mises à 25 jour comme par exemple de bas en haut et de gauche à droite. Pour initialiser, on attribue aux sommets-variables X; qui correspondent à des données reçues (320;) la quantification qui leur correspond obtenue à la sortie du canal. On attribue des probabilités 1/2 aux autres sommets pour lesquels il n'y a pas a priori d'information. On note que si le graphe contient un cycle, il n'y a pas d'arrêt naturel à la propagation des mises à jour. De nouveau il faut arbitrairement définir l'arrêt et la reprise de la propagation. On constate qu'au bout d'un certain nombre de mises à jour des sommets variables X; les valeurs d'informations se stabilisent. On peut alors obtenir une estimation des variables meilleure que celle apportée par le canal, si le code est bien construit. Un code bien construit peut notamment être vu comme un code dont le graphe de Tanner a certaines propriétés. Parmi ces propriétés, on note le fait d'être acyclique ou, si cyclique, d'avoir un grand � girth �, c'est-à-dire une grande longueur de chemin cyclique. Pour les codes utilisant un entrelaceur, un grand span est recherché. Comme mentionné plus haut, on utilise un décodage sur graphe à partir de log-vraisemblance. De façon générale, on peut transposer les résultats ci-dessus dans le domaine logarithmique en utilisant la log-vraisemblance. On définit la log-vraisemblance d'une variable binaire aléatoire comme log(p/q). Dans ce domaine, l'absence d'information se concrétise par une log-vraisemblance égale à zéro. La mise à jour sur un sommet variable est alors la somme des log-vraisemblance, la mise à jour sur un sommet fonction nécessite l'utilisation de la formule 2.tanh-'(II tanh(m;/2)), m; représentant les log-vraisemblances des sommets voisins, tanh représentant la fonction tangente hyperbolique et f' représentant la fonction inverse de f. On remarque alors qu'il n'y a de sommet de degré 1 que les sommets correspondant aux valeurs reçues 320; des canaux 230;, et que l'algorithme correspond à simplement passer les mises à jour pour les sommets- fonctions X; de degré 2. Suite au rappel et de retour à la figure 2, le décodeur sur graphe 116 vérifie ici la probabilité d'égalité des signes de log-vraisemblances. En suivant les règles explicitées ci-dessus, l'on constate que, dans ce graphe 116, les messages sont simplement constitués de la somme des log-vraisemblances issus des décodeurs MAP 112;, le décodeur traitant le message exclu, car les sommets des fonctions (carré marqué du symbole "+" sur la figure 2) sont de degré 2. Ainsi, sachant que pour un noeud 1160; il n'y a qu'un voisin m1162 (noeud 1162), on obtient 2.tanh -1( II tanh(m;/2)) = m1162, soit un simple passage des mises à jour. Notamment, au cours du décodage, les valeurs des noeuds 1160; sont les suivantes: - avant le décodage sur graphe, la log-vraisemblance attachée à chaque symbole binaire par le décodeur MAP 112;; - après le décodage sur graphe, la log-vraisemblance résultat du calcul (ici, une simple addition) prenant en compte les autres décodeurs MAP 112; à l'exclusion de celui directement rattaché au noeud. La valeur estimée des symboles du mot de données résultant du décodage sur graphe est fournie au niveau du noeud 1162 comme l'évaluation en log-vraisemblance des symboles ordonnés du mot initial 305 en prenant en compte toutes les copies reçues, ici par simple addition de ces log- vraisemblances 1160;. Dans un deuxième exemple de réalisation de l'invention, en référence à la figure 4, l'on prévoit plusieurs itérations de décodage par un étage de décodage 110. Une pluralité d'étages de décodage peut être raccordée à la suite de l'étage 110 de la figure 2. Dans ce dessein, la valeur estimée 1162 est une valeur intermédiaire. La valeur estimée finale du mot de données est alors fournie par le noeud 1162 du dernier étage du décodeur 100, ici 2100. Ces valeurs intermédiaires permettent notamment de mettre en place des politiques de convergence, et d'arrêter le cas échéant les itérations de décodage si ces valeurs intermédiaires restent sensiblement stables pour deux itérations successives. Plus en détail, chaque étage 1110, 2110, ... est constitué des mêmes éléments que l'étage 110. Notamment, à chaque canal de communication 230;, on a un décodeur MAP 112; et un désentrelaceur 114; associé. On a vu que sur le premier étage 110 de décodage, les décodeurs MAP recevait comme paramètre la valeur 0 signifiant une absence d'information a priori. Ici, les décodeurs MAP des étages de décodage 1110, 2110, ... suivants reçoivent, en paramètre, l'évaluation 1160; faite lors du décodage sur graphe au niveau du décodeur MAP correspondant de l'étage précédent. On entend ici par décodeur MAP correspondant, le décodeur MAP associé au même canal de communication 230; et qui sera donc en charge de décoder à son tour la même copie reçue 320;, c'est-à-dire que le décodeur MAP 112; reçoit également po et p;,2 (identiques aux décodeurs correspondants) en entrée. De la sorte, on tire bénéfice des itérations précédentes pour converger vers une évaluation optimisée au niveau des décodages sur graphe mais aussi au niveau de chaque décodeur MAP. Puisque les décodeurs MAP traitent des copies entrelacées, il est prévu que les valeurs estimées aux noeuds 1160; sont entrelacées de nouveau par un entrelaceur 118; avant d'être fournies en entrée des décodeurs MAP correspondant de l'étage de décodage x110 suivant. Les entrelaceurs 118; sont identiques aux entrelaceurs 212; de la même ligne de transmission 230;, c'est-à-dire mettent en oeuvre la fonction réciproque de l'entrelaceur 114; correspondant. On observe donc que sur une même ligne de décodage i, c'est-à-dire associée à un canal de communication 230;, on trouve des décodeurs MAP et une répétition de paires identiques d'entrelaceurs et désentrelaceurs liés par un même type d'entrelacement (celui de la copie 320; transmise sur le canal 230;) De façon itérative, les différents étages x110 décodent donc les copies reçues (à partir des parités po et p;,2) en tenant compte des estimations précédentes, ici du paramètre a priori X;. Un nouveau décodage sur graphe permet de déterminer une nouvelle valeur estimée (éventuellement intermédiaire) du mot de données et d'estimer une nouvelle valeur Xi', pour un décodeur MAP 112; correspondant de l'étage suivant, en tenant compte des copies décodées. Un intérêt de l'invention réside également dans la gestion du décodeur 100 en l'absence de copies 320; sur une partie des canaux de communication 230;. En l'absence de trame de copie 3204, par exemple, le module de contrôle 120 applique la valeur 0 au noeud 11604 de chacun des étages de décodage afin de signifier qu'aucune information n'est disponible au niveau de la ligne de décodage 4. Ce résultat peut être obtenu en forçant une valeur mémoire à la valeur nulle. Le décodage au niveau des décodeurs MAP est effectué séparément 10 pour chaque ligne de décodage i en tenant compte uniquement du paramètre a priori X calculé à l'itération précédente. Le décodage sur graphe peut ainsi être effectué sans blocage même en l'absence d'information issue du décodeur MAP 1124. Ainsi, lorsqu'une copie 3204 arrive au niveau du décodeur MAP 1124 15 alors que plusieurs itérations de décodage ont été effectuées, le module de contrôle 120 libère les noeuds 11604 des différents étages de décodage. Lors de l'itération suivante de décodage, le décodeur MAP 1124 a un paramètre X; nul et décode, sur la seule base des valeurs po et p;,2 qui viennent d'être reçues, une valeur de log-vraisemblance qu'il fournit au décodeur sur 20 graphe 116. L'étape de décodage sur graphe tient alors compte de cette nouvelle copie arrivée. Ainsi, le module de contrôle 120 permet de faire intervenir une copie du mot de données reçue avec un délai/retard après des premières itérations effectuées sur des copies précédemment reçues. Malgré le délai/retard, 25 l'information apportée par cette nouvelle copie améliore le décodage. Bien que sur la figure 4, on envisage plusieurs étages x110 pour le décodage itératif des données 320;, il est possible de boucler un seul étage, par exemple celui de la figure 2, sur lui-même. On entend ici par bouclage, le fait que l'évaluation X; d'une log-vraisemblance associée à une ligne de décodage i 30 est réinjectée dans le décodeur MAP 112; de la même ligne comme paramètre a priori de décodage pour l'itération suivante. Cette réalisation permet également la réception de copies 320; à des intervalles différents. En référence à la figure 5, on décrit maintenant le processus de décodage dans le cas d'itérations successives appliqué au module de contrôle 5 120 pour commander les différents éléments de décodage. A l'étape E500, un compte d'itérations est initialisé à la valeur O. A l'étape E502, on attend la réception de N copies de mot de données avant de procéder au décodage. On envisage N égal à 1, 2 ou plus. Notamment, si N=1, le résultat de l'estimation sera alors la valeur 10 décodée par le décodeur MAP mis à contribution. Si N=2, on démarre le processus de décodage dans une situation où le décodage par un décodeur MAP apportera, lors de la deuxième itération de décodage, une contribution extrinsèque à l'autre décodeur MAP impliqué dans le décodage. Cette contribution découle, comme explicité ci-dessus, du 15 décodage sur graphe. Ce paramètre N dépend du réseau maillé, de la vitesse d'arrivée des copies et de la performance de décodage souhaitée. En pratique, ce paramètre N peut être fixé par le concepteur du système de communication. Pour fixer la valeur du paramètre, on peut tenir 20 compte du nombre maximum et minimum de copies espérées en fonction du réseau, de la latence et du taux d'erreur que l'application d'encodage peut accepter. Ce paramètre peut même évoluer dynamiquement si la qualité du réseau évolue. A l'étape E504, les entrelaceurs 118; et désentrelaceurs 114; sont 25 associées avec les données codées reçues 320;. Cette opération consiste soit à charger les tables d'adressage que sont les entrelaceurs et désentrelaceurs en mémoire vive, ou si on a choisi une réalisation moins souple, on a préassocié les tables en mémoire morte, voire en câblage avec la ligne de décodage i correspondante. 30 A l'étape E506, on effectue le premier décodage MAP par les décodeurs 112;, sensiblement en même temps, des copies reçues. L'entrée de l'information extrinsèque a priori des premiers décodeurs MAP est la log- vraisemblance O. La sortie est désentrelacée par les désentrelaceurs 114; afin que les symboles soient alignés sur leur ordre original avant la présentation au décodeur sur graphe 116. A l'étape E508, on procède au premier décodage sur graphe. Le décodage consiste, dans le cas des figures 2 et 4, uniquement à la somme des log-vraisemblances de tous les décodages sans la participation des valeurs issues du décodeur 112; adjacent au noeud 1160; du graphe. A ce stade, les noeuds 1160 adjacents à des décodeurs 112 non utilisés sont maintenus à une valeur de log-vraisemblance nulle. Les données sont ensuite entrelacées par les entrelaceurs 118; pour être alignées aux données de parités reçues po et p;,2. A l'étape E510, le premier décodage est fini, on incrémente le nombre d'itérations. A l'étape E512, le module de contrôle 120 vérifie si une nouvelle copie 320; a été reçue pendant le temps de la première itération de décodage. Si cela est le cas (flèche OUI), à l'étape E514, le module de contrôle 120 libère les noeuds 1160; associés à la ligne de décodage i correspondant à cette ou ces nouvelles copies de sorte à en tenir compte dans les décodages ultérieurs, et paramètre dans cette ligne de décodage les entrelaceurs et désentrelaceurs en fonction de l'entrelacement de la nouvelle copie reçue. En l'absence de nouvelle copie 320; (flèche NON) ou après l'étape E514, on effectue, à l'étape E516, un décodage MAP et un désentrelacement similaires à ceux de l'étape E506 en tenant compte cette fois-ci des valeurs extrinsèques X; obtenues lors du décodage sur graphe de l'itération précédente. A l'étape E518, on effectue un nouveau décodage sur graphe suivi d'un entrelacement des nouvelles valeurs extrinsèques X;' obtenues, de façon similaire à l'étape E508. A l'étape E520, le module de contrôle 120 teste si le nombre maximum d'itérations est atteint. Le nombre maximum d'itérations peut être un paramètre pré-déterminé. En alternative, l'étape E520 peut être remplacée par la comparaison entre la différence entre les valeurs estimées intermédiaires 1162 des deux dernières itérations et une valeur seuil. Si oui (flèche OUI), le décodage se termine à l'étape E522 Si non (flèche NON), le module de contrôle 120 retourne à l'étape E510. On illustre maintenant, à l'aide de cinq tables ci-dessous, l'évolution 5 des estimations lors d'un exemple de réception de quatre copies R1 à R4 dans le système de la figure 2. La table 1 ci-dessous indique l'ordre d'arrivée des copies, ici R1, puis R2 et R4 ensembles, puis R3. On a représenté ici l'arrivée des copies par tranche de temps correspondant à une itération de décodage. Ainsi, même si 10 R2 et R4 ne sont pas exactement arrivées ensemble, elles apparaissent toutes les deux comme étant arrivées pendant la tranche 2. Décodeur/tranche 0 1 2 3 4 temps 1 0 R1 0 0 0 0 0 0 0 2 0 0 R2 0 0 0 0 0 0 3 0 0 0 R3 0 0 0 0 0 4 0 0 R4 0 0 0 0 0 0 table 1 : ordre d'arrivée tem • orelle de co • ies 320; au décodeur 110 Les tableaux 2 à 5 représente l'état de décodage à l'issu, respectivement du premier au quatrième étage de décodage 110 où X est la valeur estimée intermédiaire/finale 1162. Décodeur/tranche 0 1 2 3 1 0 0 0 2 0 0 L1 3 0 0 L1 4 0 0 L1 X estimé 0 0 L1 table 2 : état de décodaqe après un étape de décodaqe Décodeur/tranche 0 1 2 3 4 1 0 0 0 L2+L4 2 0 0 0 L1+L4 3 0 0 0 L2+L4+L1 15 20 4 0 0 0 L2+L1 X estimé 0 0 0 L2+L4+L1 table 3 : état de décodaqe après deux étapes de décodaqe Décodeur/tranche 0 1 2 3 4 1 0 0 0 0 L2'+L4'+L3 2 0 0 0 0 L1'+L4'+L3 3 0 0 0 0 L2'+L4'+L1' 4 0 0 0 0 L2'+L1'+L3 X estimé 0 0 0 0 L2'+L4'+L1'+L3 table 4 : état de décodaqe après trois étapes de décodaqe Décodeur/tranche 0 1 2 3 4 5 1 0 0 0 0 0 L2"+L4"+L3' 2 0 0 0 0 0 L1 "+L4"+L3' 3 0 0 0 0 0 L2"+L4"+L1 " 4 0 0 0 0 0 L2"+L1"+L3' X estimé 0 0 0 0 0 L2"+L4"+L1 "+L3' table 5 : état de décodaqe après quatre étapes de décodaqe Dans la table 2, seul R1 est reçu. L1 est la log-vraisemblance sortant du décodeur 1121. On note ici que si aucune autre copie n'était reçue, alors on obtiendrait L1 comme valeur de décodage. A ce stade, le rendement du décodeur 100 est de 1/2 car sur la figure 2 le rendement du codeur interne convolutif 214; est de Dans la table 3, R1, R2 et R4 sont reçus. L1, L2 et L4 sont les log- vraisemblances sortant respectivement des décodeurs 1121, 1122 et 1124. Le rendement est ici de 1/(rendement code convolutif * nombre de copies reçues)=1/(2*3)=1/6. On note que les valeurs L1 obtenues dans la table 2 au niveau des décodeurs 1122 à 1124 sont mises à la valeur nulle par le module de contrôle 120 car aucune copie n'était présente sur ces décodeurs MAP. Dans la table 4, R3 vient d'être reçue. L1' est la log-vraisemblance sortant du décodeur 1121. Elle diffère de L1 car le décodage a été aidé par les log-vraisemblances L2 et L4 du décodage précédent (valeurs extrinsèques ? ). Il en est de même pour L2' et L4' qui ont été aidées respectivement par les valeurs L1 et L4, et L1 et L2. L3 est la log-vraisemblance sortant du décodeur 1123. Dans la table 5, aucune autre copie n'est reçue. Une nouvelle itération de décodage a été effectuée en tenant compte cette fois-ci, au niveau des décodeurs MAP 112; respectifs des valeurs L1', L2', L4' et L3. On obtient ainsi une notation L1", L2", L3' et L4". Le rendement après quatre itérations, dans cet exemple, est de 1/8. On obtient ainsi un décodeur 100 à rendement variable. En outre, malgré l'arrivée différée des copies, le décodeur 110 en prend compte d'une façon automatique. On note également que plus il y a de d'itérations de décodage, plus les log-vraisemblances (et donc les données extrinsèques ?) mémorisent les précédents décodages et donc l'ensemble converge vers une solution de plus en plus fine. En référence à la figure 6, la réalisation décrite ci-dessus à été mise en oeuvre et comparée a un décodage qui prend en compte les répétitions, mais de façon non itérative et sans la propriété de rendement variable. Les courbes de résultat présentées sur la figure 6 sont issues d'une configuration dans laquelle: - une copie compte 16320 bits; - les encodeurs convolutionnels 214; sont dits 67 et 53 en écriture octale, c'est-à-dire que le registre de mémoire mémorise six éléments binaires et que la première sortie présente un XOR des sorties des registres 1, 2, 3, 5 et 6, tandis que la seconde présente un XOR des sorties des registres 1, 2, 4 et 6. Ce dispositif est équivalent à deux encodeurs, mais est parfois considéré comme un encodeur unique de rendement %. Les encodeurs sont identiques pour le système adapté et pour la configuration utilisée pour mettre en oeuvre l'invention; - les entrelaceurs 212;, 118; et désentrelaceurs 114; sont des issus des matrices 15 x 17, 136 x 120, 192 x 85 et l'entrelaceur identité; - les décodeurs 112; sont des décodeurs log-MAP BCJR. Cinq itérations ont suffi pour obtenir le résultat de la figure 6. On constate un gain de 2 dB pour l'invention (courbe 600) par rapport à une configuration utilisant un décodeur non itératif optimum pour la répétition (courbe 610). Les configurations non adaptées (courbe 620) ou en l'absence de codage (courbe 630) sont nettement moins efficaces. La présente invention peut être mise en oeuvre sous forme de programme informatique exécuté sur une machine de calcul reprogrammable, par exemple un ordinateur personnel PC, un processeur de signal numérique DSP ("Digital Signal Processor" selon la terminologie anglo-saxonne) ou un microcontrôleur. Alternativement, il est envisagé de mettre en oeuvre l'invention sous forme matérielle, par exemple par une machine de calcul dédiée, par exemple du type à portes logiques programmables FPGA ou ASIC (respectivement "Field-programmable gate array' "Application-specific integrated circuit" selon la terminologie anglo-saxonne). En référence à la figure 7, il est maintenant décrit à titre d'exemple une configuration matérielle particulière d'un dispositif de traitement d'information apte à une mise en oeuvre du procédé selon l'invention. Un dispositif de traitement d'information mettant en oeuvre l'invention est par exemple un micro-ordinateur 70, une station de travail, un assistant personnel, ou un téléphone mobile connecté à différents périphériques. Selon encore un autre mode de réalisation de l'invention, le dispositif de traitement d'information se présente sous la forme d'un appareil photographique muni d'une interface de communication pour autoriser une connexion à un réseau. Les périphériques reliés au dispositif de traitement d'information comprennent par exemple une caméra numérique 71, ou un scanner ou tout autre moyen d'acquisition ou de stockage d'images, reliée à une carte d'entrée/sortie (non représentée) et fournissant au dispositif de traitement d'information des données multimédia. Le dispositif 70 comporte un bus de communication 701 auquel sont reliés : - Une unité centrale de traitement CPU 702 se présentant par exemple sous la forme d'un microprocesseur ; - Une mémoire morte 703 dans laquelle peuvent être contenus les programmes dont l'exécution permet la mise en oeuvre du procédé selon l'invention ; - Une mémoire vive 704 qui, après la mise sous tension du dispositif 70, contient le code exécutable des programmes de l'invention ainsi que des registres adaptés à enregistrer des variables et paramètres nécessaires à la mise en oeuvre de l'invention ; - Un écran 705 permettant de visualiser des données et/ou de servir d'interface graphique avec l'utilisateur qui peut ainsi interagir avec les programmes de l'invention, à l'aide d'un clavier 706 ou de tout autre moyen tel qu'un dispositif de pointage, comme par exemple une souris 707 ou un crayon optique ; - Un disque dur 708 ou une mémoire de stockage, telle qu'une mémoire de type compact flash, pouvant comporter les programmes de l'invention ainsi que des données utilisées ou produites lors de la mise en oeuvre de l'invention ; - Un lecteur de disquette 709 optionnel, ou un autre lecteur de support de données amovible, adapté à recevoir une disquette 72 et à y lire / écrire des données traitées ou à traiter conformément à l'invention ; et - Une interface de communication 710 reliée au réseau de télécommunications 200, l'interface 710 étant apte à transmettre et à recevoir des données. Dans le cas de données audio, le dispositif 70 est équipé de préférence d'une carte d'entrée/sortie (non représentée) qui est reliée à un microphone 74. Le bus de communication 701 autorise une communication et une interopérabilité entre les différents éléments inclus dans le dispositif 70 ou reliés à celui-ci. La représentation du bus 701 n'est pas limitative et, notamment, l'unité centrale 702 est susceptible de communiquer des instructions à tout élément du dispositif 70 directement ou par l'intermédiaire d'un autre élément du dispositif 70. Les disquettes 72 peuvent être remplacées par tout support d'information tel que, par exemple, un disque compact (CD-ROM) réinscriptible ou non, un disque ZIP ou une carte mémoire. D'une manière générale, un moyen de stockage d'information, lisible par un micro-ordinateur ou par un microprocesseur, intégré ou non au dispositif de traitement d'information, éventuellement amovible, est adapté à mémoriser un ou plusieurs programmes dont l'exécution permet la mise en oeuvre du procédé selon l'invention. Le code exécutable permettant au dispositif de traitement d'information la mise en oeuvre de l'invention peut être indifféremment stocké en mémoire morte 703, sur le disque dur 708 ou sur un support numérique amovible tel que par exemple une disquette 72 comme décrite précédemment. Selon une variante, le code exécutable des programmes est reçu par l'intermédiaire du réseau de télécommunications 200, via l'interface 710, pour être stocké dans un des moyens de stockage du dispositif 70 (tel que le disque dur 708 par exemple) avant d'être exécuté. L'unité centrale 702 commande et dirige l'exécution des instructions ou portions de code logiciel du ou des programmes de l'invention, les instructions ou portions de code logiciel étant stockées dans l'un des moyens de stockage précités. Lors de la mise sous tension du dispositif 70, le ou les programmes qui sont stockés dans une mémoire non volatile, par exemple le disque dur 708 ou la mémoire morte 703, sont transférés dans la mémoire vive 704 qui contient alors le code exécutable du ou des programmes de l'invention, ainsi que des registres pour mémoriser les variables et paramètres nécessaires à la mise en oeuvre de l'invention. On notera également que le dispositif mettant en oeuvre l'invention ou incorporant celle-ci est réalisable aussi sous la forme d'un appareil programmé. Par exemple, un tel dispositif peut alors contenir le code du ou des programmes informatiques sous une forme figée dans un circuit intégré à application spécifique (ASIC). Les exemples qui précédent ne sont que des modes de réalisation de l'invention qui ne s'y limite pas. REVENDICATIONS 1. Système (110) pour le décodage d'une pluralité de copies 5 codées (320i) d'un mot de données (305), comprenant au moins un premier étage de décodage (110), ledit premier étage comprenant: - une pluralité de décodeurs (112;) à décision quantifiée, chaque décodeur étant agencé pour décoder une copie codée reçue en entrée de décodeur, et 10 - un décodeur sur graphe (116) comprenant une pluralité de noeuds (1160;), chaque noeud dudit décodeur sur graphe étant agencé pour recevoir la valeur quantifiée de sortie (330;, 340;) d'un décodeur (112;) correspondant, le décodeur sur graphe étant apte à déterminer une valeur (1162) de décodage dudit mot de données à partir desdites valeurs quantifiées de sortie. 15 2. Système (110) selon la revendication 1, comprenant une pluralité d'étages (110, 1110, 2110) de décodage successifs, chaque noeud (1160;) étant passé en paramètre (X;) du décodeur (112;) à décision quantifiée recevant en entrée la même copie codée (320;) dans l'étage de décodage 20 suivant, lesdits décodeurs à décision quantifiée dans l'étage de décodage suivant étant aptes à décoder la copie codée reçue en entrée en fonction dudit paramètre passé (X;). 3. Système (110) selon la revendication 2, dans lequel chaque 25 décodeur à graphe (116) d'un étage de décodage intermédiaire est apte à déterminer une valeur intermédiaire (1162) de décodage dudit mot de données (305) à partir des valeurs quantifiées de sortie (330;, 340;) des décodeurs (112;) à décision quantifiée de l'étage de décodage intermédiaire. 30 4. Système (110) selon la revendication 1, dans lequel chaque noeud (1160;) est passé en paramètre (X;) du décodeur (112;) à décision quantifiée correspondant, ledit décodeur à décision quantifiée correspondantétant apte à décoder une copie codée reçue (320;) en entrée en fonction dudit paramètre passé (Xi). 5. Système (110) selon l'une quelconque des revendications précédentes, comprenant des moyens (120) agencés pour maintenir à un état neutre les noeuds (1160;) correspondants à des décodeurs (112;) à décision quantifiée n'ayant pas reçu de copie codée (320;) en entrée. 6. Système (110) selon la revendication précédente, comprenant des moyens (120) aptes à libérer, à réception d'une nouvelle copie codée (320;), le noeud de(s) décodeur(s) à graphe correspondant au décodeur à décision quantifiée recevant en entrée ladite nouvelle copie. 7. Système (110) selon l'une quelconque des revendications précédentes, dans lequel ledit décodeur sur graphe est apte à calculer au moins une valeur de vraisemblance pour chacune desdites copies codées à partir des valeurs quantifiées de sortie des décodeurs à décision quantifiée des autres copies codées. 8. Système (110) selon la revendication précédente, dans lequel lesdits noeuds du décodeur sur graphe sont agencés pour être mis à jour avec les valeurs de vraisemblance calculées. 9. Système (110) selon la revendication 7 ou 8, dans lequel la valeur de vraisemblance est la log-vraisemblance. 10. Système (110) selon la revendication précédente, le décodeur sur graphe est agencé de sorte que le calcul des valeurs de vraisemblance pour chacune desdites copies codées comprend l'addition des valeurs quantifiées de sortie des autres décodeurs à décision quantifiée. 11. Système (110) selon la revendication 9 ou 10 en dépendance de la revendication 5, dans lequel l'état neutre correspond sensiblement à une log-vraisemblance nulle. 12. Système (110) selon l'une des revendications 9 à 11, dans lequel le décodeur sur graphe est apte à additionner l'ensemble des valeurs quantifiées de sortie desdits décodeurs à décision quantifiée pour déterminer ladite valeur de décodage dudit mot de données. 13. Système (110) selon l'une quelconque des revendications précédents, dans lequel le(s)dit(s) étage(s) de décodage comprennent une pluralité de désentrelaceurs (114;) associés chacun, respectivement à la sortie d'un décodeur (112;) à décision quantifiée. 14. Système (110) selon la revendication 13, comprenant des moyens (120) aptes à déterminer un type d'entrelacement d'une copie codée reçue en entrée de décodeur à décision quantifiée et à configurer ledit désentrelaceur (114;) respectif en fonction dudit type déterminé. 15. Système (110) selon l'une des revendications 13 et 14 en dépendance de la revendication 2, dans lequel lesdits étages de décodage (110, 1110, 2110) comprennent une pluralité d'entrelaceurs (118;) disposés chacun entre un noeud (1160i) d'un étage de décodage et le décodeur (112;) à décision quantifiée correspondant de l'étage de décodage suivant. 16. Système (110) selon la revendication précédente, dans lequel les désentrelaceur (114;) et entrelaceur (118;) correspondants aux décodeurs (112;) à décision quantifiée d'une même copie codée (320;) mettent en oeuvre des fonctions réciproques. 17. Système de transmission comprenant:30- un système (110) pour le décodage selon l'une quelconque des revendications 1 à 16, - une pluralité de systèmes encodeurs (210;) correspondant chacun à un décodeur (112;) à décision quantifiée dudit système (110) pour le 5 décodage, et - une pluralité de canaux de transmission (230;) reliant chaque système encodeur et le décodeur à décision quantifiée correspondant. 18. Système selon la revendication 17, dans lequel chaque 10 système encodeur comprend une paire d'encodeurs convolutionnels (214i) aptes à générer deux signaux de parités (po; p;,2) sur ledit canal de transmission (230;) correspondant. 19. Système selon la revendication 17 ou 18, dans lequel le 15 système pour le décodage est selon la revendication 13, et dans lequel chaque système encodeur (210;) comprend un entrelaceur (212;), le désentrelaceur (114;) associé à un décodeur (112;) à décision quantifiée étant une fonction réciproque de l'entrelaceur (212;) du système encodeur (210;) correspondant. 20 20. Système selon l'une des revendications 17 à 19, dans lequel le système de transmission comprend un réseau maillé (200) incluant lesdits canaux de transmission (230;). 21. Procédé de décodage d'une pluralité de copies codées (320;) 25 d'un mot de données (305), comprenant les étapes suivantes: a) premier décodage (E506, E516) à décision quantifiée de chacune desdites copies codées (320;) en une valeur quantifiée (330;), et b) second décodage (E508, E518) par un décodeur sur graphe (116) recevant, dans une pluralité de noeuds (1160;), les valeurs quantifiées (330;) 30 obtenues lors du premier décodage, ledit second décodage comprenant la détermination d'une valeur de décodage (1162) dudit mot de données à partir desdites valeurs quantifiées. 22. Procédé selon la revendication précédente, comprenant une étape c) de mise à jour, par le décodeur sur graphe, desdits noeuds à partir des valeurs quantifiées obtenues lors du premier décodage par les autres noeuds du décodeur sur graphe. 23. Procédé selon la revendication précédente, comprenant les itérations successives des étapes a), b) et c), dans lesquelles ledit premier décodage a) est fonction desdites mises à jour c) des noeuds de l'itération précédente. 24. Moyen de stockage d'informations, éventuellement totalement ou partiellement amovible, lisible par un système informatique, comprenant des instructions pour un programme informatique adapté à mettre en oeuvre le procédé de décodage conforme à l'une quelconque des revendications 21 à 23 lorsque le programme est chargé et exécuté par le système informatique. 25. Produit programme d'ordinateur lisible par un microprocesseur, comprenant des portions de code logiciel adaptées à mettre en oeuvre le procédé de décodage selon l'une quelconque des revendications 21 à 23, lorsqu'il est chargé et exécuté par le microprocesseur.