Brevet FR2944171A1 — publié le 20101008

Procédé et dispositif de modulation mettant en oeuvre une modulation différentielle, procédé et dispositif de démodulation, signal et produits programme d'ordinateur correspondants. 1. Domaine de l'invention Le domaine de l'invention est celui des communications numériques. Plus précisément, l'invention concerne la transmission de données mettant en oeuvre un format de modulation de type modulation différentielle. Une telle modulation différentielle permet de transformer une séquence binaire en un signal modulé. La séquence binaire en entrée de l'étape de modulation correspond aux transitions entre les états de la constellation de la modulation utilisée pour générer les symboles modulés. Une modulation différentielle peut donc être vue comme un encodage différentiel d'une séquence binaire, délivrant une autre séquence binaire, suivi d'une modulation classique. L'invention trouve des applications dans tout système de transmission utilisant une modulation différentielle. Notamment, l'invention trouve des applications dans le domaine des communications optiques : à détection directe selon un format de modulation de type DBPSK (en anglais � Differential Binary Phase Shift Keying �) ou DQPSK (en anglais � Differential Quadrature Phase Shift Keying �) à 1OGb/s et 40Gb/s, ou à détection cohérente selon un format de modulation de type QPSK (en anglais � Quadrature Phase Keying �) ou PDM-QPSK (en anglais � Polarization Division Multiplexing- QPSK �) à 4OGb/s et 100Gb/s. 2. Art antérieur Dans le domaine des communications optiques, notamment à très haut débit, la modulation de phase présente de nombreux avantages, autant d'un point de vue de l'efficacité spectrale que de la qualité de transmission (par la réduction d'effets non linéaires liés à la modulation d'intensité notamment). Par exemple, le format de modulation DBPSK est particulièrement avantageux pour des transmissions non cohérentes. En détection directe, la phase du signal transmis est perdue à la réception, mais il est possible de la retrouver en mesurant la différence de phase entre deux symboles successifs, grâce à une démodulation optique réalisée par un interféromètre de type MZDI (en anglais � Mach- Zender Delay Interferometer �) par exemple. L'encodage différentiel des données à transmettre s'avère nécessaire pour pouvoir utiliser une modulation de phase en détection directe. Les formats de modulation QPSK et PDM-QPSK sont quant à eux particulièrement intéressants pour des transmissions cohérentes présentant un débit supérieur ou égal à 40Gb/s. Grâce à l'utilisation d'un récepteur cohérent, la phase du signal transmis devient directement accessible. On peut donc utiliser des formats de modulation à haute efficacité spectrale. Cependant, le bruit de phase reste un problème majeur, que les algorithmes de récupération de phase (de type Viterbi) n'arrivent pas à traiter totalement. L'encodage différentiel des données à transmettre s'avère là aussi nécessaire. On constate ainsi que l'encodage différentiel combiné à une modulation de phase permet d'améliorer les performances des systèmes de transmission. Malheureusement, la mise en oeuvre d'un encodage différentiel conduit à un taux d'erreur plus élevé qu'un encodage classique, car une erreur de transmission produit deux erreurs sur les données transmises sous la forme de symboles d'information. De manière plus générale, k erreurs de transmission successives produisent k+l erreurs sur les symboles d'information... Plus précisément, dans le cas d'une modulation de type QPSK par exemple, l'encodage classique tel qu'illustré en figure lA permet d'associer un symbole d'information comprenant deux bits, à un symbole modulé, correspondant à un état ai de la constellation. Pour une modulation QPSK, les états de la constellation associés aux symboles modulés sont : al = ei7c/4 a2 = e3i7c/4 etc. L'encodage différentiel tel qu'illustré en figure 1B permet quant à lui de coder les données à transmettre par la transition entre les états de la constellation utilisée. En d'autres termes, un symbole d'information correspond aux deux bits qui encodent le changement de phase entre deux états ai de la constellation, c'est-à-dire entre deux symboles modulés. Par exemple, la séquence de symboles d'information `10' `11' `00' est transformée en symboles modulés correspondants aux états al, a4, a2, a2. Si, après passage dans le canal de transmission, les symboles modulés reçus correspondent aux états al, a4, al, a2 , ce qui correspond à une erreur de transmission, alors les symboles d'information reconstruits seront `10' `01' `01', ce qui correspond à deux erreurs sur les données transmises (apparaissant en caractère souligné). L'encodage différentiel conduit donc à des taux d'erreur plus élevés que l'encodage 30 classique, car une erreur de transmission corrompt deux symboles d'information consécutifs. Il existe donc un besoin pour une nouvelle technique de transmission mettant en oeuvre une modulation différentielle, permettant de reconstruire de manière plus fiable les données transmises. 3. Exposé de l'invention L'invention propose une solution nouvelle qui ne présente pas l'ensemble de ces inconvénients de l'art antérieur, sous la forme d'un procédé de modulation d'une séquence binaire source, délivrant des symboles modulés. Selon l'invention, un tel procédé met en oeuvre les étapes suivantes : ù codage correcteur d'erreurs de la séquence binaire source, délivrant une pluralité de mots de code ; - entrelacement des mots de code, délivrant une séquence entrelacée ; - modulation différentielle de la séquence entrelacée, délivrant des symboles modulés. Chaque mot de code est décomposé en au moins un groupe présentant un nombre de bits égal au logarithme en base deux du nombre d'états de la modulation mise en oeuvre lors de l'étape de modulation différentielle. L'étape d'entrelacement répartit les groupes dans la séquence entrelacée, de façon que deux groupes adjacents dans la séquence entrelacée appartiennent à des mots de code distincts. L'invention propose ainsi une nouvelle technique de transmission permettant de reconstruire de manière plus fiable les données transmises, en combinant l'utilisation de techniques de codage correcteur d'erreurs et d'encodage différentiel. Pour ce faire, l'invention repose sur une décomposition en groupes des mots de code issus de l'étape de codage correcteur d'erreurs et sur un entrelacement particulier de ces mots de code, délivrant une séquence entrelacée dans laquelle deux groupes de bits consécutifs appartiennent à des mots de code distincts. On note qu'il est possible d'entrelacer n'importe quel nombre de mots de code selon l'invention (deux, trois, quatre ou plus), du moment que deux groupes adjacents dans la séquence entrelacée n'appartiennent pas au même mot de code. De cette façon, quant bien même une erreur de transmission corrompt deux groupes de bits consécutifs, ces groupes appartiennent à des mots de code différents. Les performances de décodage des mots de code ne sont donc que très peu diminuées. En particulier, chacun des groupes de la séquence entrelacée est représentatif d'une transition entre deux symboles modulés. Ainsi, la taille de ces groupes (i.e. le nombre de bits par groupe) dépend de la modulation mise en oeuvre. Par exemple, pour une modulation BPSK, le nombre de bits par groupe est égal à 1 ; pour une modulation QPSK, le nombre de bits par groupe est égal à 2 ; pour une modulation 8PSK, le nombre de bits pas groupe est égal à 3, etc. Deux groupes adjacents correspondent donc à deux transitions consécutives, correspondant par exemple aux sauts de phase consécutifs entre trois symboles modulés pour une modulation de phase. Par ailleurs, si le nombre de bits formant un mot de code ne correspond pas à un multiple du nombre de bits par groupe, il est possible d'avoir un groupe particulier présentant un nombre de bits inférieur au logarithme en base deux du nombre d'états de la modulation. Ce groupe particulier peut notamment être complété par des bits égaux à `0' ou `1', pour obtenir une taille égale à celle des autres groupes. Selon un aspect particulier de l'invention, l'étape de codage correcteur d'erreurs met en oeuvre au moins deux codes correcteur d'erreurs distincts, délivrant chacun des 10 mots de code distincts. Il est ainsi possible d'utiliser des codes correcteurs d'erreurs présentant des performances différentes, et notamment un premier code correcteur d'erreurs présentant une capacité de correction supérieure à celle d'un deuxième code correcteur d'erreurs. L'invention concerne également un produit programme d'ordinateur téléchargeable 15 depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur et/ou exécutable par un processeur comprenant des instructions de code de programme pour la mise en oeuvre du procédé de modulation tel que décrit précédemment. Le procédé de modulation selon l'invention peut donc être mis en oeuvre de diverses manières, et notamment sous forme câblée ou sous forme logicielle. 20 Dans un autre mode de réalisation, l'invention concerne un dispositif de modulation d'une séquence binaire source, délivrant des symboles modulés, comprenant : ù des moyens de codage correcteur d'erreurs de la séquence binaire source, délivrant une pluralité de mots de code ; - des moyens d'entrelacement des mots de code, délivrant une séquence 25 entrelacée ; - des moyens de modulation différentielle de la séquence entrelacée, délivrant des symboles modulés. Selon l'invention, chaque mot de code est décomposé en au moins un groupe présentant un nombre de bits égal au logarithme en base deux d'un nombre d'états d'une 30 modulation différentielle mise en oeuvre par les moyens de modulation différentielle, et les moyens d'entrelacement répartissent les groupes dans la séquence entrelacée, de façon que deux groupes adjacents dans la séquence entrelacée appartiennent à des mots de code distincts. Un tel dispositif de modulation est notamment adapté à mettre en oeuvre le procédé de modulation décrit précédemment. Il peut notamment être intégré à un émetteur utilisé pour les communications optiques. Ce dispositif de modulation pourra bien sûr comporter les différentes caractéristiques relatives au procédé de modulation selon l'invention. Ainsi, les caractéristiques et avantages de ce dispositif sont les mêmes que ceux du procédé de modulation, et ne sont pas détaillés plus amplement. L'invention concerne aussi un signal comprenant des symboles modulés obtenus à partir d'une séquence binaire source ayant subi avant émission : un codage correcteur d'erreurs délivrant une pluralité de mots de code ; un entrelacement des mots de code, délivrant une séquence entrelacée ; une modulation différentielle de la séquence entrelacée, délivrant des symboles modulés ; chaque mot de code étant décomposé en au moins un groupe présentant un nombre de bits égal au logarithme en base deux d'un nombre d'états de ladite modulation différentielle, et l'entrelacement répartissant les groupes dans la séquence entrelacée, de façon que deux groupes adjacents dans la séquence entrelacée appartiennent à des mots de code distincts. Un tel signal peut notamment être formé de symboles modulés obtenus selon le procédé de modulation décrit ci-dessus. Ce signal pourra bien sûr comporter les différentes caractéristiques relatives au procédé de modulation selon l'invention. Dans un autre mode de réalisation, l'invention concerne un procédé de démodulation de symboles reçus, correspondant à des symboles modulés selon le procédé de modulation décrit précédemment après passage dans un canal de transmission, délivrant une séquence binaire reconstruite. Selon l'invention, un tel procédé met en oeuvre les étapes suivantes : démodulation différentielle des symboles reçus, mettant en oeuvre un traitement inverse à la modulation différentielle mise en oeuvre en émission, délivrant une séquence démodulée ; désentrelacement de la séquence démodulée, mettant en oeuvre un traitement inverse à l'entrelacement mis en oeuvre en émission, délivrant une pluralité de 30 mots de code ; décodage des mots de code, délivrant la séquence binaire reconstruite. Un tel procédé de démodulation est notamment adapté à démoduler un signal modulé selon le procédé de modulation décrit précédemment. Ainsi, la séquence démodulée obtenue en sortie de l'étape de modulation différentielle correspond à la séquence entrelacée obtenue côté modulation, éventuellement affectée par des erreurs de transmission, et peut être décomposée en groupes de bits tels que deux groupes consécutifs appartiennent à des mots de code distincts. En particulier, l'étape de décodage met en oeuvre les étapes suivantes : o correction, à partir d'au moins un code correcteur d'erreurs, d'au moins un premier mot de code comprenant au moins un groupe comprenant au moins un bit erroné, dit groupe courant, délivrant un premier mot de code corrigé ; o correction, à partir du premier mot de code corrigé, d'au moins un mot de code distinct comprenant un groupe adjacent au groupe courant dans la séquence démodulée, dit groupe voisin. De cette façon, il est possible de décoder de manière classique certains mots de code, en utilisant le ou les codes correcteurs d'erreurs mis en oeuvre en émission (en utilisant un décodage algébrique pour des codes correcteurs d'erreurs de type BCH ou Reed Solomon par exemple, ou d'autres techniques de décodage pour des codes correcteurs d'erreurs de type LDPC par exemple), et d'en déduire le décodage d'autres mots de code. Plus précisément, si l'on détecte une erreur affectant un groupe courant, le groupe adjacent précédant ou suivant le groupe courant dans la séquence démodulée est nécessairement lui aussi affecté par des erreurs, puisque lorsqu'un encodage différentiel est utilisé, une erreur de transmission corrompt deux groupes de bits consécutifs. Or on rappelle que deux groupes consécutifs dans la séquence démodulée appartiennent nécessairement à des mots de code distincts, grâce à l'entrelacement spécifique utilisé côté modulation. Il est donc possible de localiser, puis de corriger, les erreurs affectant un mot de code distinct, une fois que l'on a détecté et corrigé une erreur affectant un groupe courant d'un premier mot de code. Selon une première variante de réalisation, le procédé de démodulation comprend une étape d'affectation d'une première valeur de confiance au symbole reçu obtenu à partir du groupe voisin précédent le groupe courant dans la séquence démodulée (c'est-à-dire au symbole reçu à l'origine de la transition encodée par le groupe courant), et d'une deuxième valeur de confiance au symbole reçu obtenu à partir du groupe courant (c'est-à-dire au symbole reçu destinataire de la transition encodée par le groupe courant). En d'autres termes, on caractérise : ù la confiance accordée au groupe voisin précédent, à partir du symbole reçu modulé à l'origine de la transition encodée par le groupe courant, et la confiance accordée au groupe voisin suivant, à partir du symbole reçu modulé destinataire de (ou suivant) la transition encodée par le groupe courant. L'étape de correction du mot de code distinct est alors mise en oeuvre pour le groupe voisin précédant le groupe courant dans la séquence démodulée et/ou pour le groupe voisin suivant le groupe courant dans la séquence démodulée en tenant compte de ces valeurs de confiance. En particulier, les valeurs de confiance sont égales au logarithme du rapport de vraisemblance (LLR) associé au symbole reçu correspondant. Ces valeurs de confiance permettent ainsi de décider si c'est le groupe voisin précédent, le groupe voisin suivant, ou les deux groupes voisins qui est (ou sont) probablement erronés, et donc de réduire le nombre de mots de code � candidats � associés à un mot de code. On augmente ainsi la rapidité de l'algorithme de décodage. En particulier, la décision de corriger le groupe voisin précédent et/ou le groupe voisin suivant peut dépendre d'un seuil s, permettant de définir si les deux symboles reçus sont équivalemment fiables ou pas. Si le seuil est égal à 100%, cela signifie que les deux symboles reçus sont équivalemment fiable, et il faut corriger chacun des groupes voisins. Dans ce cas, puisqu'on cherche à corriger à la fois le groupe voisin précédant et le groupe voisin suivant, il n'est pas nécessaire de déterminer ces valeurs de confiance. Selon une deuxième variante, l'étape de correction du mot de code distinct comprend : une étape de détermination d'au moins un mot de code candidat pour le mot de code distinct ; une étape de détermination du syndrome associé au(x) mot(s) de code candidats ; une étape de sélection du mot de code candidat présentant un syndrome nul, 25 délivrant le mot de code distinct corrigé. Ces étapes permettent notamment de déterminer si une erreur affecte le groupe voisin précédant, le groupe voisin suivant, ou les deux groupes voisins. Elle permet aussi de réduire le nombre de mots de code candidats associés à un mot de code, puisqu'elles permettent de conserver uniquement les mots de codes candidats présentant un syndrome 30 nul. On augmente donc la rapidité de l'algorithme de décodage. La première et la deuxième variantes peuvent aussi être combinées. L'invention concerne aussi un produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur et/ou exécutable par un processeur, comprenant des instructions de code de programme pour la mise en oeuvre du procédé de démodulation tel que décrit ci-dessus. Le procédé de démodulation selon l'invention peut donc être mis en oeuvre de diverses manières, et notamment sous forme câblée ou sous forme logicielle. Dans un autre mode de réalisation, l'invention concerne un dispositif de démodulation de symboles reçus, correspondant à des symboles modulés après passage dans un canal de transmission, délivrant une séquence binaire reconstruite, les symboles modulés étant obtenus à partir d'une séquence binaire source, ayant subi avant émission : un codage correcteur d'erreurs de la séquence binaire source, délivrant une pluralité de mots de code ; un entrelacement des mots de code, délivrant une séquence entrelacée ; une modulation différentielle de la séquence entrelacée, délivrant des symboles modulés ; chaque mot de code étant décomposé en au moins un groupe présentant un nombre de bits égal au logarithme en base deux du nombre d'états de la modulation différentielle, et l'entrelacement répartissant les groupes dans la séquence entrelacée de façon que deux groupes adjacents dans la séquence entrelacée appartiennent à des mots de code distincts. Selon l'invention, un tel dispositif comprend : des moyens de démodulation différentielle des symboles reçus, mettant en oeuvre un traitement inverse à la modulation différentielle mise en oeuvre en émission, 20 délivrant une séquence démodulée ; des moyens de désentrelacement de la séquence démodulée, mettant en oeuvre un traitement inverse à l'entrelacement mis en oeuvre en émission, délivrant une pluralité de mots de code ; des moyens de décodage des mots de code, délivrant la séquence binaire 25 reconstruite. Un tel dispositif est notamment adapté à mettre en oeuvre le procédé de démodulation décrit précédemment, et à recevoir des symboles modulés selon le procédé de modulation décrit précédemment. Il peut notamment être intégré à un récepteur utilisé pour les communications optiques. 30 Ce dispositif de démodulation pourra bien sûr comporter les différentes caractéristiques relatives au procédé de démodulation selon l'invention. Ainsi, les caractéristiques et avantages de ce dispositif sont les mêmes que ceux du procédé de démodulation, et ne sont pas détaillés plus amplement. 4. Liste des figures D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation particulier, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : - les figures lA et 1B rappellent le fonctionnement d'une modulation classique et d'une modulation différentielle ; - la figure 2 illustre les principales étapes mises en oeuvre par le procédé de modulation selon un mode de réalisation particulier de l'invention ; - les figures 3A et 3B présentent deux exemples de mise en oeuvre du procédé de modulation selon la figure 2 ; - la figure 4 illustre les performances de l'invention, par rapport aux techniques de l'art antérieur ; - la figure 5 illustre les principales étapes mises en oeuvre par le procédé de démodulation selon un mode de réalisation de l'invention ; - la figure 6 présente un exemple de mise en oeuvre du procédé de démodulation selon la figure 5 ; - les figures 7A et 7B représentent la complexité de l'algorithme de décodage, en fonction du nombre de syndromes calculés et du nombre de décodages réalisés, en moyenne, pour un second mot de code ; - les figures 8A et 8B illustrent les structures simplifiées d'un dispositif de modulation et d'un dispositif de démodulation selon un mode de réalisation particulier de l'invention. 5. Description d'un mode de réalisation de l'invention 5.1 Principe général Le principe général de l'invention repose sur un regroupement spécifique des bits composant un mot de code, et un entrelacement spécifique de ces groupes, permettant de répartir les groupes des différents mots de code dans une séquence entrelacée, de façon que deux groupes adjacents (i.e. côte à côte dans la séquence entrelacée) appartiennent à des mots de code distincts. On note que ces groupes adjacents correspondent à des transitions consécutives, correspondant par exemple aux sauts de phase consécutifs entre les symboles modulés pour une modulation de phase. En d'autres termes, l'invention propose de répartir les erreurs survenant au cours de la transmission sur des mots de code différents. On entrelace donc les mots de code issus du codage correcteur d'erreurs de manière à ne pas avoir deux groupes de bits provenant d'un même mot de code côte à côte. Si une erreur de transmission se produit, elle corrompt ainsi deux groupes de bits côte à côte, qui appartiennent à des mots de code différents, et qui sont décodés par un même décodeur s'ils sont issus d'un même code correcteur d'erreurs (ou FEC, en anglais � Forward Error Correction �), et par des décodeurs différents s'ils sont issus de codes correcteurs d'erreurs (FEC) différents. L'invention permet ainsi d'améliorer les performances de transmission en répartissant les erreurs de transmission entre plusieurs mots de code, grâce à une combinaison des techniques de codage correcteur d'erreurs, de modulation utilisant un encodage différentiel, et d'un entrelacement spécifique. On adapte ainsi les techniques de codage correcteur d'erreurs aux particularités de l'encodage différentiel. La figure 2 illustre les principales étapes mises en oeuvre côté modulation, pour la modulation d'une séquence binaire source bs délivrant des symboles modulés e, associés chacun à un état ai d'une constellation correspondante. Ces symboles modulés peuvent ensuite être transmis via une communication optique par exemple, sous la forme d'un signal modulé. Un tel procédé de modulation met tout d'abord en oeuvre une étape de codage correcteur d'erreurs 21 de la séquence binaire source bs, encore notée FEC délivrant une pluralité de mots de code. Cette étape de codage correcteur d'erreurs 21 permet d'encoder les bits d'information de la séquence binaire source bs en utilisant au moins un code correcteur d'erreurs. On obtient ainsi des mots de code en sortie de cette étape 21, qui comprennent à la fois des bits d'information et des bits de redondance. L'étape de codage correcteur d'erreurs 21 peut mettre en oeuvre un ou plusieurs modules de codage FEC, mettant chacun en oeuvre un code correcteur d'erreurs distinct délivrant un mot ou plusieurs mots de code. On note que le nombre de modules de codage FEC ne dépend pas du nombre d'états de la modulation différentielle (ou de la constellation). Au cours d'une étape suivante d'entrelacement 22, les mots de code (deux, trois, quatre, ou plus) sont entrelacés, délivrant une séquence entrelacée. Plus précisément, les mots de code peuvent être décomposés en groupes présentant un nombre de bits égal au logarithme en base deux du nombre d'états de la modulation différentielle. On rappelle que si le nombre de bits formant un mot de code ne correspond pas à un multiple du nombre de bits par groupe, il est aussi possible d'avoir un groupe particulier présentant un nombre de bits inférieur au logarithme en base deux du nombre d'états de la modulation. L'étape d'entrelacement 22 répartit alors les différents groupes de façon que deux groupes adjacents dans la séquence entrelacée appartiennent à des mots de code distincts. Par exemple, si l'on considère deux mots de code distincts, la séquence entrelacée est composée d'un premier groupe de bits du premier mot de code, suivi d'un premier groupe de bits du deuxième mot de code, suivi d'un deuxième groupe de bits du premier mot de code, suivi d'un deuxième groupe de bits du deuxième mot de code, etc. On peut ainsi considérer que les groupes associés à différents mots de code sont placés les uns à la suite des autres dans la séquence entrelacée, en alternant les groupes appartenant à des mots de code différents. On note que cette étape d'entrelacement 22 dépend du nombre d'états de la modulation différentielle. En d'autres termes, on entrelace des paquets (groupes) de plusieurs bits, dont la taille varie en fonction de la constellation associée à la modulation différentielle. Par exemple, on entrelace les bits deux par deux dans le cas d'une modulation QPSK. Finalement, au cours d'une étape de modulation différentielle 23, la séquence entrelacée de groupes de bits est modulée, délivrant des symboles modulés e, associés chacun à un état ai de la constellation. On constate ainsi que chaque symbole modulé est construit à partir d'un groupe de bits provenant d'un même mot de code. On rappelle que la séquence entrelacée en entrée de l'étape de modulation différentielle correspond aux transitions entre les symboles modulés. Chaque groupe de la séquence entrelacée est donc représentatif d'une transition entre deux symboles modulés. Ainsi, les mots de code entrelacés représentent les transitions entre les symboles modulés émis. 5.2 Exemples de mise en oeuvre de la technique de modulation On décrit ci-après quelques exemples de mise en oeuvre de l'invention pour différents formats de modulation, pour lesquels le nombre de bits par groupe est supérieur ou égal à deux. Plus précisément, la figure 3A illustre les principales étapes mises en oeuvre pour une modulation d'amplitude à 16 états (modulation 16QAM). Comme indiqué précédemment, plusieurs mots de code sont délivrés au cours de l'étape de codage correcteur d'erreurs 21. On considère par exemple que cette étape de codage met en oeuvre trois modules de codage FEC 211, 212, 123, mettant chacun en oeuvre un code correcteur distinct. Par exemple, le premier module de codage FEC 211 délivre un premier mot de code `011001...', le deuxième module de codage FEC 212 délivre un deuxième mot de code `010110...' et le troisième module de codage FEC 213 délivre un troisième mot de code `010100...'. On rappelle que le nombre de modules de codage FEC ne dépend pas du nombre d'états de la modulation différentielle. Ces mots de codes sont alors entrelacés au cours d'une étape d'entrelacement 22. Plus précisément, on rappelle que selon l'invention, les mots de code peuvent être décomposés en groupes présentant un nombre de bits égal au logarithme en base deux d'un nombre d'états de la modulation différentielle, soit en groupes de 4 bits pour une modulation 16QAM. La taille d'un groupe, également appelé symbole (d'information ou de redondance), dépend donc de la constellation. On définit ainsi un premier groupe dans le premier mot de code, noté g1,1, comprenant les bits `0110', un deuxième groupe dans le premier mot de code, noté g1,2, comprenant les bits '01..', un premier groupe dans le deuxième mot de code, noté g2,1, comprenant les bits `0101', un deuxième groupe dans le deuxième mot de code, noté g2,2, comprenant les bits '10..', un premier groupe dans le troisième mot de code, noté g3,1, comprenant les bits `0101', un deuxième groupe dans le troisième mot de code, noté g3,2, comprenant les bits '00..', etc. Ces groupes sont alors entrelacés, de façon que deux groupes adjacents n'appartiennent pas au même mot de code. Par exemple, la séquence entrelacée comprend les groupes successifs suivants : g1,1, g2,1, g3,1, g1,2, etc. Selon une variante, la séquence entrelacée comprend les groupes successifs suivants : g1,1, g3,1, g2,1, g1,2, etc. Selon une autre variante, la séquence entrelacée comprend les groupes successifs suivants : g2,1, g1,1, g3,1, g2,2, etc. L'essentiel est que deux groupes consécutifs dans la séquence entrelacée n'appartiennent pas à un même mot de code. On note que l'entrelacement de groupes appartenant à trois mots de code différents permet d'améliorer certaines performances. On rappelle en effet que deux erreurs de transmission produisent en général trois groupes (ou symboles d'information ou de redondance) erronés. Ainsi, en utilisant trois mots de code, deux erreurs de transmission successives peuvent être mieux corrigées. En effet, ces trois groupes sont, selon l'invention, repartis sur trois mots de codes différents. On note qu'avec un entrelacement de deux mots de code seulement et deux erreurs de transmission, un des mots de code aurait eu un seul groupe de bits erroné, et l'autre mot de code aurait eu deux groupes de bits erronés. La séquence entrelacée ainsi obtenue est alors modulée au cours de l'étape de modulation différentielle 23, délivrant les symboles modulés associés par exemple aux points a0 all a3 a14 de la constellation. On présente ci-après, en relation avec la figure 3B, les principales étapes mises en oeuvre pour une modulation de phase à 4 états (modulation QPSK). Comme indiqué précédemment, plusieurs mots de code sont délivrés au cours de l'étape de codage correcteur d'erreurs 21. On considère par exemple que cette étape de codage met en oeuvre deux modules de codage FEC 214, 215 mettant chacun en oeuvre un même code correcteur d'erreurs. Par exemple, le premier module de codage FEC 214 délivre un premier mot de code comprenant des bits d'information `01101001...' et des bits de redondance `11', et le deuxième module de codage FEC 215 délivre un deuxième mot de code comprenant des bits d'information `01101101...' et des bits de redondance '01'. Ces mots de codes sont alors entrelacés au cours d'une étape d'entrelacement 22. Pour ce faire, les mots de code sont décomposés en groupes présentant un nombre de bits égal au logarithme en base deux d'un nombre d'états de la modulation différentielle, soit en groupes de 2 bits pour une modulation QPSK. Le premier mot de code comprend ainsi les groupes `01', `10', `10', `01',..., `11'. Le deuxième mot de code comprend les groupes `01', `10', `11', `01', ..., `01'. Ces groupes sont alors entrelacés, de façon que deux groupes adjacents n'appartiennent pas au même mot de code. Par exemple, la séquence entrelacée comprend les groupes successifs suivants : `01', `01', `10', `10', `10', `11', `01', `O1', ..., `11', `01'. La séquence entrelacée ainsi obtenue est alors modulée au cours de l'étape de modulation différentielle 23, délivrant les symboles modulés associés aux points al a2 a3 a2 al a4 a2 a3 a4 de la constellation. Dans le cas d'une modulation à deux états, comme la modulation DBPSK, la taille d'un groupe est égale à un bit, ce qui revient à faire un entrelacement bit par bit. Afin de corriger plus facilement les erreurs de transmission, il est toujours nécessaire selon l'invention d'appliquer une loi d'entrelacement spécifique, permettant de répartir les bits de façon que deux bits consécutifs n'appartiennent pas à un même mot de code. L'utilisation d'un entrelacement bit par bit classique n'est en revanche pas optimal pour réduire les défauts de l'encodage différentiel, puisqu'il ne permet pas nécessairement de répartir les erreurs sur des mots de code différents. Finalement, on constate qu'un codage correcteur d'erreurs C(n, k, t) , qui délivre des mots de code de taille n à partir de k bits d'informations et qui corrige jusqu'à t erreurs de transmission, combiné à un entrelacement spécifique et un encodage différentiel selon l'invention, présente les mêmes performances en termes de taux de correction d'erreurs qu'un codage correcteur d'erreurs C(2n,2k,2t) sans entrelacement. L'entrelacement offre donc bien un gain de codage, et ce quel que soit le type de modulation utilisé. La figure 4 illustre ainsi les performances de l'invention pour une modulation de type QPSK, en comparant le taux d'erreur binaire (BER, en anglais � Binary Error Rate �) en fonction du rapport signal à bruit en dB (SNR, en anglais � Signal to Noise Ratio �), pour différents types de codage correcteur d'erreurs, combinés à un entrelacement spécifique selon l'invention, ou sans entrelacement selon l'art antérieur. On constate que les performances sont notables lorsque l'étape de codage correcteur d'erreurs met en oeuvre un code correcteur d'erreurs binaire comme le BCH(255,239) ou le code produit BCH(255,239)xBCH(144,128) (avec décodage à décision ferme). Lorsque l'étape de codage correcteur d'erreurs met en oeuvre un code correcteur d'erreurs non binaire comme les Reed-Solomon (RS), la taille du mot de code influe sur les bénéfices de l'entrelacement. Bien entendu, il est possible d'étendre cette technique à un nombre supérieur de mots de code, et à différentes tailles de constellation modulée en différentiel. 5.3 Fonctionnement de la technique de démodulation La figure 5 illustre les principales étapes mises en oeuvre côté démodulation, pour la démodulation de symboles reçus r correspondant à des symboles modulés e après passage dans un canal de transmission, délivrant une séquence binaire reconstruite bs . Ces symboles reçus r peuvent être perturbés par le canal de transmission, ou le récepteur lui même (bruit blanc gaussien additif, distorsion, bruit de phase, interférences, etc). On estime alors le point ai le plus proche de la constellation qui correspond au symbole reçu. Une erreur apparaît si les perturbations font que le symbole reçu se rapproche d'un point de la constellation qui diffère du point correspondant au symbole modulé émis. Un tel procédé de démodulation est notamment adapté à recevoir un signal formé de symboles modulés issus du procédé de modulation décrit précédemment. Plus précisément, un tel procédé met tout d'abord en oeuvre une étape de démodulation différentielle 51 des symboles reçus, mettant en oeuvre un traitement inverse à la modulation différentielle 23 mise en oeuvre en émission, délivrant une séquence démodulée. Si on considère une modulation de phase mise en oeuvre en émission par exemple, il est possible de mesurer le saut de phase entre chaque symbole reçu en réception, et de retrouver les transitions et les groupes de bits encodant ces transitions. La séquence démodulée est donc formée de groupes de bits successifs, puisque l'on code lors de la modulation différentielle chaque transition par un groupe de bits. Grâce à l'entrelacement spécifique mis en oeuvre en émission, deux groupes de bits successifs appartiennent à des mots de codes différents. La séquence démodulée est ensuite désentrelacée au cours d'une étape de désentrelacement 52, mettant en oeuvre un traitement inverse à l'entrelacement 22 mis en oeuvre en émission, délivrant une pluralité de mots de code. Les mots de codes obtenus sont alors décodés au cours d'une étape de décodage 53, délivrant la séquence binaire reconstruite bs . Sachant que la séquence démodulée présente une structure spécifique, selon laquelle deux groupes consécutifs n'appartiennent pas à un même mot de code, il est possible de réduire la complexité de décodage. En effet, il est possible selon l'invention de décoder classiquement certains mots de code, et d'utiliser ces mots de code corrigés pour décoder d'autres mots de code. Par décodage classique, on entend un décodage algébrique pour des codes correcteurs d'erreurs de type BCH ou Reed Solomon par exemple, ou d'autres techniques de décodage classiques pour des codes correcteurs d'erreurs de type LDPC par exemple. Ainsi, l'étape de décodage 53 met par exemple en oeuvre une correction d'au moins un mot de code en utilisant un décodage correspondant au codage utilisé en émission, délivrant un mot de code corrigé, et une correction d'au moins un mot de code distinct à partir du mot de code corrigé précédemment. En effet, on rappelle que les erreurs se produisent toujours au moins par paires dans le cadre d'un encodage différentiel. Ainsi, si on localise une erreur dans un groupe de bits d'un premier mot de code en utilisant un algorithme classique de détection/correction d'erreurs, appelé par la suite groupe courant, alors le groupe adjacent précédant ou suivant le groupe courant dans la séquence démodulée, dit groupe voisin, est nécessairement lui aussi affecté par des erreurs. De plus, de part la fonction spécifique d'entrelacement mise en oeuvre selon l'invention, on est assuré que les deux groupes affectés par des erreurs (groupe courant et groupe voisin) appartiennent à des mots de code distincts. Enfin, la connaissance de la valeur de l'erreur sur le groupe courant permet de déduire la valeur de l'erreur sur le groupe voisin. On peut ainsi localiser et corriger les erreurs affectant un deuxième mot de code, connaissant les erreurs affectant un premier mot de code. Ainsi, si l'on considère que la séquence démodulée comprend deux mots de code entrelacés, on peut ne décoder de manière classique qu'un mot de code sur les deux, et en déduire la correction à effectuer sur le second. Il est ainsi possible de réduire la complexité de décodage par deux. 5.4 Exemple de mise en oeuvre de la technique de démodulation On présente ci-après, en relation avec la figure 6, un exemple de mise en oeuvre de l'étape de décodage 53, lors de la démodulation de symboles reçus correspondant à des symboles modulés ayant subis un codage correcteur d'erreurs délivrant deux mots de code, un entrelacement, et une modulation de phase à 4 états de type QPSK, tel que présenté en relation avec la figure 3B. A l'issue de l'étape de démodulation différentielle 51, on considère que la séquence démodulée obtenue est formée des groupes successifs suivants : `01', `01', `10', `00', `11', `11', `01', `01', ..., `11', `01'. Cette séquence est formée de groupes de bits tels que deux groupes consécutifs appartiennent à des mots de code différents. On rappelle que la séquence entrelacée à l'issue de l'étape d'entrelacement 22 mise en oeuvre côté modulation comprenait les groupes successifs suivants : `01', `01', `10', `10', `10', `11', `01', `01', ..., `11', `01' (voir figure 3B). A l'issue de l'étape de désentrelacement 52, on obtient les deux mots de code 20 suivants : - premier mot de code : `01', `10', `11', `O1', ..., `11' ; û deuxième mot de code : `01', `00', `11', `O1', ..., `01'. Ces mots de codes sont alors décodés au cours d'une étape de décodage 53. Pour ce faire, on utilise une technique de décodage classique FEC 531 pour décoder 25 le premier mot de code, puis on se sert du résultat de ce décodage classique pour localiser et corriger 532 les erreurs du deuxième mot de code. Il n'est donc pas nécessaire de réitérer tous les calculs classiques de décodage pour le deuxième mot de code. Plus précisément, lorsque le module de décodage FEC 531 a détecté et corrigé une erreur dans le premier mot de code, affectant un groupe de bits dit groupe courant, il est 30 certain qu'un groupe adjacent à ce groupe courant dans la séquence démodulée, appartenant donc au deuxième mot de code, est aussi erroné. En référence à la figure 6, lorsque le module de décodage FEC 531 a détecté une erreur affectant le groupe courant g, (` 11' ), le groupe voisin précédant gvp (`00') et/ou le groupe voisin suivant gvs (` 11' ) présentent donc au moins une erreur. On présente ci-après différentes techniques permettant de déterminer si l'erreur affecte le groupe voisin précédant gvp ('00�, le groupe voisin suivant gvs (` 11' ), ou ces deux groupes voisins. Ces différentes techniques peuvent être combinées. Selon une première technique, on calcule la fiabilité des symboles reçus pour savoir s'il faut corriger chacun des groupes voisins ou juste le moins fiable d'entre eux. Cette décision est réalisée en fixant un seuil s, permettant de définir si les deux symboles reçus sont équivalemment fiables ou pas. La valeur de ce seuil s influe sur la complexité de décodage. On affecte ainsi une première valeur de confiance au symbole reçu obtenu à partir du groupe voisin précédant gvp (`00'), correspondant au point a2 de la constellation selon notre exemple, et une deuxième valeur de confiance au symbole reçu obtenu à partir du groupe courant g, (` 11' ), correspondant au point a4 de la constellation selon notre exemple. Par exemple, ces valeurs de confiance sont déterminées à partir du logarithme du 15 rapport de vraisemblance (LLR, en anglais � Log Likelihood ratio �) associé au symbole reçu correspondant : LLR = log P(e = ar Ir) P(e ≠ ar Ir) où e est le symbole émis (encore appelé symbole modulé dans la description), r le symbole QPSK reçu, et ar le point de la constellation correspondant au symbole reçu. 20 Si l'on considère que les valeurs des logarithmes de rapport de vraisemblance sont normalisées, ce seuil prédéterminé s peut s'exprimer en pourcentage. Dans ce cas, si le seuil est égal à 100%, cela signifie que les deux symboles reçus sont équivalemment fiable et aucune décision n'est prise. On considère donc qu'il faut corriger chacun des groupes voisins. Si le seuil est égal à 0%, cela signifie qu'une décision � dure � est prise, et qu'un 25 symbole reçu est plus fiable qu'un autre. On considère donc qu'il faut corriger uniquement le groupe voisin conduisant à la valeur de logarithme de rapport de vraisemblance la plus faible. Dans ce cas, la correction du deuxième mot de code est mise en oeuvre pour le groupe voisin gvp (`00') précédent le groupe courant g, (` 11') dans la séquence démodulée si la première valeur de confiance est inférieure à la deuxième valeur de confiance, ou pour 30 le groupe voisin gvs (` 11') suivant le groupe courant g, (` 11') dans la séquence démodulée si la deuxième valeur de confiance est inférieure à la première valeur de confiance. On considère selon notre exemple que le seuil est égal à 0%. On considère également que la première valeur de confiance est inférieure à la deuxième valeur de confiance. C'est donc le groupe voisin gvp précédant (`00') qui comporte une erreur. Pour savoir quelle correction appliquer une fois que l'on a déterminé qu'au moins une erreur affecte le groupe voisin précédant gvp (`00'), on se base sur une liste de configurations d'erreurs pré-établie, et on essaie toutes les configurations possibles. Pour établir cette liste de configurations d'erreurs, on considère que chaque transition peut être mesurée en nombre de quadrant, pour une modulation QPSK. Ainsi, le groupe de bits `01' correspond par exemple à une transition de `1' quadrant. On peut donc mesurer les erreurs en nombre de quadrants. Par exemple, la réception du groupe `11', correspondant à une transition de deux quadrants, au lieu du groupe `01', correspondant à une transition d'un quadrant, correspond à une erreur de `ùl' quadrant. Si on appelle Nerri la ième erreur, en nombre de quadrants, produite par k erreurs de transmission consécutives, on a: k+l Nerri = 0 mod(4) i=1 On obtient ainsi les configurations suivantes pour une erreur de transmission (k = 1) et deux erreurs de transmission successives (k = 2) : k Nerri Nerr2 Nerr3 +1 -1 1 -1 +1 +2 -2 +1 +1 +2 +2 +1 +1 -1 -1 +2 +2 -1 -1 2 +1 +2 -1 -1 +2 +1 +2 0 +2 +1 0 -1 -1 0 +1 Si l'on considère une seule erreur de transmission (k = 1), une seule correction est possible pour le deuxième mot de code selon notre exemple. Ainsi, si le module de décodage FEC 531 a trouvé une erreur de +1 quadrant sur le groupe courant (réception du groupe `11' au lieu du groupe `10'), alors l'erreur sur le groupe voisin précédant gvp est de -1 quadrant (réception du groupe `00' au lieu du groupe `10'). En effet, la somme des erreurs doit être égale à 0. La correction appliquée au deuxième mot de code correspond donc à l'inverse de celle appliquée au premier mot de code grâce au décodage classique (algébrique ou autre). Dans le cas d'erreurs de transmission successives (k 2 ), plusieurs configurations d'erreurs sont probables et la complexité du décodage augmente. On étudie alors les corrections possibles que l'on pourrait appliquer au deuxième mot de code à partir de la liste de configurations d'erreurs. On définit ainsi un ensemble de mots de code � candidats � pour le deuxième mot de code. En étudiant ces mots de code candidats, on évite de réaliser un décodage classique du deuxième mot de code. Plus précisément, afin de déterminer un mot de code � valide � parmi l'ensemble de mots de codes candidats, c'est-à-dire un mot de code qui correspond à une bonne correction, on calcule le syndrome de chaque mot de code candidat. Par exemple, un tel syndrome peut être déterminé en utilisant la technique décrite par J. G. Proakis dans � Digital Communications � (troisième édition, New York: McGraw-Hill, 1989). Par exemple, pour un module de codage FEC mettant en oeuvre un code linéaire en blocs de type Reed-Solomon, BCH, LDPC, etc, chaque mot de code c doit être orthogonal à la matrice de contrôle de parité H du code : c.HT = 0 . Le syndrome associé à ce module de codage est donc synd = c.HT . Si le syndrome obtenu est nul pour un mot de code candidat, cela signifie que le 20 mot de code candidat est un mot de code valide. On corrige donc le deuxième mot de code en le remplaçant par le mot de code candidat valide. Si on ne trouve aucun syndrome égal à 0 pour les différents mots de code candidats, cela signifie qu'aucun mot de code n'est valide. En d'autres termes, aucune des corrections proposées n'est correcte. On procède alors au décodage du deuxième mot de code, en 25 utilisant une technique de décodage classique FEC. Selon une deuxième technique, il est également possible de déterminer (si une erreur affecte le groupe voisin précédant gvp (`00'), le groupe voisin suivant gvs (`11'), ou ces deux groupes voisins, en utilisant directement la technique du syndrome. Ainsi, connaissant l'erreur affectant le groupe courant, par exemple égale à +1, on 30 sait que l'erreur affectant le groupe voisin précédant gvp (`00') ou le groupe voisin suivant gvs (`11') est égale à -1. On détermine donc un ensemble de mots de code candidats en modifiant les valeurs des bits du groupe voisin précédant gvp et/ou du groupe voisin suivant gvs dans le deuxième mot de code afin d'obtenir une erreur égale à -1. On sélectionne ensuite parmi les mots de code candidats celui qui présente un syndrome égal à 0, s'il existe. Afin de réduire le nombre de mots de code candidats, il est possible de combiner cette deuxième technique à la première technique, en affectant des valeurs de confiance aux symboles reçus, comme décrit précédemment. Finalement, l'algorithme de décodage selon l'invention met en oeuvre les étapes suivantes : décodage classique du premier mot de code ; si le deuxième mot de code est valide : o on arrête l'algorithme de décodage ; sinon : o on teste des configurations d'erreurs possibles en utilisant des mots de code candidats ; o s'il y a un mot de code candidat valide : ^ on arrête l'algorithme de décodage ; o sinon : ^ on met en oeuvre un décodage classique du deuxième mot de code. Par ailleurs, on a décrit en relation avec la figure 6 un exemple de mise en oeuvre de l'étape de décodage 53, lors de la démodulation de symboles reçus correspondants à des symboles modulés ayant subis un codage correcteur d'erreurs délivrant deux mots de code, un entrelacement, et une modulation QPSK. Bien entendu, la technique de décodage à complexité réduite selon l'invention peut être mise en oeuvre quelque soit le nombre de mots de code délivrés par le codage correcteur d'erreurs côté émission. Ainsi, si l'on considère un codage correcteur d'erreurs délivrant trois mots de code, et un entrelacement de ces trois mots de code selon l'invention, on peut décoder classiquement deux mots de code sur les trois, et en déduire le décodage du troisième mot de code. La complexité de décodage est dans ce cas réduite d'un tiers. On note à cet effet, que toutes les configurations de deux erreurs de transmission successives sont détectables et corrigeables. Si l'on considère un codage correcteur d'erreurs délivrant quatre mots de code, et un entrelacement de ces quatre mots de code selon l'invention, on peut décoder classiquement deux mots de code sur les quatre. On peut alors conditionner le décodage d'un troisième mot de code au fait de trouver un mot de code valide pour ce troisième mot de code. Ainsi, si on dispose d'un mot de code valide, on décode le troisième puis le quatrième mot de code en tenant compte des corrections apportées aux premier et deuxième mots de code. Si on ne dispose pas d'un mot de code valide, on décode le troisième mot de code de manière classique, et on cherche à décoder le quatrième mot de code en tenant compte des corrections apportées aux premier, deuxième et troisième mots de code. Ainsi, on note que l'entrelacement de plusieurs mots de code offre la possibilité de détecter et corriger directement beaucoup de configurations d'erreurs. En particulier, la complexité de l'algorithme proposé dépend à la fois du nombre de 10 syndromes calculés et du nombre de décodages effectués, selon le nombre de mots de code entrelacés. Les figures 7A et 7B illustrent le nombre de syndromes calculés (figure 7A) et le nombre de décodages effectués (figure 7B) en moyenne pour le second mot de code (dans le cas où seulement deux mots de code sont entrelacés), en fonction du rapport signal à 15 bruit SNR, pour un codage correcteur d'erreurs de type BCH(1023,883) délivrant deux mots de code et une modulation de type QPSK, et pour différents niveaux de seuil s pour la valeur de confiance : s =100%, courbes 71A et 71B ; s = 20% , courbes 72A et 72B ; 20 s=0%, courbes 73A et 73B ; On constate sur ces courbes qu'à fort SNR et pour un seuil de 0%, c'est-à-dire lorsqu'on choisit de corriger le groupe de bits correspondant au symbole QPSK le moins fiable, le nombre de syndromes et de décodages classiques est négligeable. On ne réalise donc qu'un décodage classique pour le premier mot de code, et on en 25 déduit directement le deuxième, ce qui correspond à une réduction de 50% de la complexité de décodage par rapport aux solutions classiques de l'art antérieur. On note également que, puisqu'il est toujours possible d'effectuer un décodage classique du deuxième mot de code si l'on ne trouve pas de mot de code valide, il n'y a aucune perte de gain accompagnant la réduction de complexité. 30 La solution proposée par l'invention permet ainsi d'obtenir un gain de codage significatif et une réduction de complexité pouvant aller jusqu'à 50%, ce qui est un atout considérable dans le cas de transmission optique très haut débit notamment. Elle repose sur la mise en oeuvre d'une modulation différentielle, et est donc transposable à toute famille de codes correcteurs d'erreurs et à toutes tailles de constellation. 5.5 Réduction de redondance L'algorithme de décodage proposé ci-dessus montre comment le décodage d'un premier mot de code permet de déduire totalement le décodage d'un deuxième mot de code. Il n'apparaît donc pas nécessaire de coder les bits d'information correspondant au deuxième mot de code et d'y ajouter des bits de redondance, si ces bits de redondance ne sont pas utilisés pour le décodage. Néanmoins, dans certaines situations, le décodage classique du deuxième mot de code doit être réalisé (lorsqu'on n'a pas trouvé de mot de code valide). Il apparaît donc préférable d'encoder les bits d'information. On propose donc, selon une caractéristique particulière de l'invention, de mettre en oeuvre des codes correcteurs d'erreurs distincts, délivrant chacun un mot de code distinct. Les mots de code entrelacés peuvent ainsi provenir de modules de codage FEC mettant en oeuvre des codes correcteurs d'erreurs différents. Selon cette caractéristique particulière, on utilise dans le deuxième module de codage un code correcteur d'erreurs moins puissant que celui utilisé dans le premier module de codage, et qui génère donc moins de bits de redondance. Ainsi, si on note Cl(nl,kl) le code utilisé dans le premier module de codage (premier code), et C2 (n2 , k2) le code utilisé dans le deuxième module de codage (deuxième code), avec n2 > ni , la redondance totale (en nombre de bits de redondance par rapport au nombre de bit total) est définie par : rù(ni+n2)ùklùk2 ni+n2 On a aussi r On note que le deuxième code, moins puissant, ne peut pas décoder les erreurs aussi bien que le premier code. Il en résulte donc un palier d'erreur si un décodage classique du deuxième mot de code est mis en oeuvre. Pour abaisser ce palier, on doit considérer le plus de configurations d'erreurs possible, comme par exemple les configurations de deux erreurs successives listées 30 précédemment (k = 2). On note également que même si aucune des corrections proposées ne rend un mot de code valide, l'une de ces corrections doit être proche de la bonne correction. On choisit donc d'effectuer un décodage classique sur la correction qui semble la plus probable, par exemple celle qui correspond aux symboles QPSK les moins fiables. On considère ainsi un algorithme en deux passes, comprenant une première passe au cours de laquelle on corrige certaines erreurs du deuxième mot de code en les déduisant de la correction du premier mot de code, puis une deuxième passe au cours de laquelle on utilise un décodage classique pour corriger les erreurs restantes après la première passe. La capacité de correction nécessaire pour le deuxième module de codage générant le deuxième mot de code dépend donc du nombre d'erreurs restantes après la première passe (erreurs � manquées �) et donc de la qualité du décodage. 5.6 Structure simplifiée des dispositifs de modulation et de démodulation 10 correspondants On présente finalement, en relation avec les figures 8A et 8B, la structure simplifiée d'un dispositif de modulation et d'un dispositif de démodulation mettant respectivement en oeuvre une technique de modulation et une technique de démodulation selon l'un des exemples de réalisation décrits ci-dessus. 15 Un tel dispositif de modulation comprend une mémoire 81, une unité de traitement 82, équipée par exemple d'un microprocesseur �P, et pilotée par le programme d'ordinateur 83, mettant en oeuvre le procédé de modulation selon l'invention. A l'initialisation, les instructions de code du programme d'ordinateur 83 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de 20 l'unité de traitement 82. L'unité de traitement 82 reçoit en entrée une séquence binaire source bs. Le microprocesseur de l'unité de traitement 82 met en oeuvre les étapes du procédé de modulation décrit précédemment, selon les instructions du programme d'ordinateur 83, pour coder, entrelacer, et moduler la séquence binaire source, et émettre des symboles modulés e. Pour cela, le dispositif de modulation comprend, outre la 25 mémoire tampon 81, des moyens de codage correcteur d'erreurs de la séquence binaire source, délivrant une pluralité de mots de code, des moyens d'entrelacement des mots de code, délivrant une séquence entrelacée, et des moyens de modulation différentielle de la séquence entrelacée, délivrant des symboles modulés, tels que décrits précédemment. Ces moyens sont pilotés par le microprocesseur de l'unité de traitement 82. 30 L'unité de traitement 82 transmet donc à destination d'un récepteur, via un canal de transmission, un signal modulé comprenant des symboles modulés. Le dispositif de démodulation de la figure 8B comprend quant à lui une mémoire 84, une unité de traitement 85, équipée par exemple d'un microprocesseur �P, et pilotée par le programme d'ordinateur 86, mettant en oeuvre le procédé de démodulation selon l'invention. A l'initialisation, les instructions de code du programme d'ordinateur 86 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 85. L'unité de traitement 85 reçoit en entrée des symboles reçus r. Le microprocesseur de l'unité de traitement 85 met en oeuvre les étapes du procédé de démodulation décrit précédemment, selon les instructions du programme d'ordinateur 86, pour démoduler, désentrelacer, décoder les symboles reçus r, et reconstruire une séquence binaire bs . Pour cela, le dispositif de démodulation comprend, outre la mémoire tampon 84, des moyens de démodulation différentielle des symboles reçus, délivrant une séquence démodulée, des moyens de désentrelacement de la séquence démodulée, délivrant une pluralité de mots de code, et des moyens de décodage de mots de code, délivrant la séquence binaire reconstruite, tels que décrits précédemment. Ces moyens sont pilotés par le microprocesseur de l'unité de traitement 85. REVENDICATIONS1. Procédé de modulation d'une séquence binaire source, délivrant des symboles modulés, caractérisé en ce qu'il met en oeuvre : un codage correcteur d'erreurs (21) de ladite séquence binaire source, délivrant une pluralité de mots de code ; un entrelacement (22) desdits mots de code, délivrant une séquence entrelacée ; une modulation différentielle (23) de ladite séquence entrelacée, délivrant des symboles modulés ; en ce que chaque mot de code est décomposé en au moins un groupe présentant un nombre de bits égal au logarithme en base deux d'un nombre d'états de ladite modulation différentielle, et en ce que ladite étape d'entrelacement (22) répartit lesdits groupes dans ladite séquence entrelacée, de façon que deux groupes adjacents dans ladite séquence entrelacée appartiennent à des mots de code distincts. 2. Procédé de modulation selon la revendication 1, caractérisé en ce que ledit codage correcteur d'erreurs (21) met en oeuvre au moins deux codes correcteurs d'erreurs distincts, délivrant chacun des mots de code distincts. 3. Produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur et/ou exécutable par un processeur, caractérisé en ce qu'il comprend des instructions de code de programme pour la mise en oeuvre du procédé de modulation selon l'une au moins des revendications 1 et 2. 4. Dispositif de modulation d'une séquence binaire source, délivrant des symboles modulés, caractérisé en ce qu'il comprend : des moyens de codage correcteur d'erreurs (21) de ladite séquence binaire source, délivrant une pluralité de mots de code ; des moyens d'entrelacement (22) desdits mots de code, délivrant une séquence entrelacée ; des moyens de modulation différentielle (23) de ladite séquence entrelacée, délivrant des symboles modulés ; en ce que chaque mot de code est décomposé en au moins un groupe présentant un nombre de bits égal au logarithme en base deux d'un nombre d'états d'une modulation différentielle mise en oeuvre par lesdits moyens de modulation différentielle ;et en ce que lesdits moyens d'entrelacement (22) répartissent lesdits groupes dans ladite séquence entrelacée, de façon que deux groupes adjacents dans ladite séquence entrelacée appartiennent à des mots de code distincts. 5. Signal formé de symboles modulés, caractérisé en ce que lesdits symboles modulés sont obtenus à partir d'une séquence binaire source, ayant subi avant émission : un codage correcteur d'erreurs de ladite séquence binaire source, délivrant une pluralité de mots de code ; un entrelacement desdits mots de code, délivrant une séquence entrelacée ; une modulation différentielle de ladite séquence entrelacée, délivrant des symboles modulés ; chaque mot de code étant décomposé en au moins un groupe présentant un nombre de bits égal au logarithme en base deux d'un nombre d'états de ladite modulation différentielle ; et ledit entrelacement répartissant lesdits groupes dans ladite séquence entrelacée, de façon que deux groupes adjacents dans ladite séquence entrelacée appartiennent à des mots de code distincts. 6. Procédé de démodulation de symboles reçus, correspondant à des symboles modulés après passage dans un canal de transmission, délivrant une séquence binaire reconstruite, lesdits symboles modulés étant obtenus à partir d'une séquence binaire source, ayant subi avant émission : un codage correcteur d'erreurs de ladite séquence binaire source, délivrant une pluralité de mots de code ; un entrelacement desdits mots de code, délivrant une séquence entrelacée ; une modulation différentielle de ladite séquence entrelacée, délivrant des symboles modulés ; chaque mot de code étant décomposé en au moins un groupe présentant un nombre de bits égal au logarithme en base deux d'un nombre d'états de ladite modulation différentielle ; et ledit entrelacement répartissant lesdits groupes dans ladite séquence entrelacée, de façon que deux groupes adjacents dans ladite séquence entrelacée appartiennent à des mots de code distincts, caractérisé en ce que ledit procédé de démodulation met en oeuvre les étapes suivantes : ù démodulation différentielle (51) desdits symboles reçus, mettant en oeuvre un traitement inverse à la modulation différentielle mise en oeuvre en émission, délivrant une séquence démodulée ;ù désentrelacement (52) de ladite séquence démodulée, mettant en oeuvre un traitement inverse à l'entrelacement mis en oeuvre en émission, délivrant une pluralité de mots de code ; - décodage (53) desdits mots de code, délivrant ladite séquence binaire 5 reconstruite. 7. Procédé de démodulation selon la revendication 6, caractérisé en ce que ledit décodage (53) met en oeuvre les étapes suivantes : o correction, à partir d'au moins un code correcteur d'erreurs, d'au moins un premier mot de code comprenant au moins un groupe comprenant au moins 10 un bit erroné, dit groupe courant, délivrant un premier mot de code corrigé ; o correction, à partir dudit premier mot de code corrigé, d'au moins un mot de code distinct comprenant un groupe adjacent audit groupe courant dans ladite séquence démodulée, dit groupe voisin. 8. Procédé de démodulation selon la revendication 7, caractérisé en ce qu'il comprend 15 une étape d'affectation d'une première valeur de confiance au symbole reçu obtenu à partir dudit groupe voisin précédent ledit groupe courant dans ladite séquence démodulée, et d'une deuxième valeur de confiance au symbole reçu obtenu à partir dudit groupe courant, et en ce que ladite étape de correction dudit mot de code distinct est mise en oeuvre pour le groupe voisin précédent ledit groupe courant dans ladite séquence démodulée et/ou pour le 20 groupe voisin suivant ledit groupe courant dans ladite séquence démodulée en tenant compte desdites valeurs de confiance. 9. Procédé de démodulation selon la revendication 8, caractérisé en ce que lesdites valeurs de confiance sont égales au logarithme du rapport de vraisemblance associé au symbole reçu correspondant. 25 10. Procédé de démodulation selon l'une quelconque des revendications 7 à 9, caractérisé en ce que ladite étape de correction dudit mot de code distinct comprend : une étape de détermination d'au moins un mot de code candidat pour ledit mot de code distinct ; une étape de détermination du syndrome associé au ou auxdits mots de code 30 candidats ; une étape de sélection dudit mot de code candidat présentant un syndrome nul, délivrant le mot de code distinct corrigé. 11. Produit programme d'ordinateur téléchargeable depuis un réseau de communicationet/ou enregistré sur un support lisible par ordinateur et/ou exécutable par un processeur, caractérisé en ce qu'il comprend des instructions de code de programme pour la mise en oeuvre du procédé de démodulation selon l'une au moins des revendications 6 à 10. 12. Dispositif de démodulation de symboles reçus, correspondant à des symboles modulés après passage dans un canal de transmission, délivrant une séquence binaire reconstruite, lesdits symboles modulés étant obtenus à partir d'une séquence binaire source, ayant subi avant émission : un codage correcteur d'erreurs de ladite séquence binaire source, délivrant une pluralité de mots de code ; un entrelacement desdits mots de code, délivrant une séquence entrelacée ; une modulation différentielle de ladite séquence entrelacée, délivrant des symboles modulés ; chaque mot de code étant décomposé en au moins un groupe présentant un nombre de bits égal au logarithme en base deux du nombre d'états de ladite modulation différentielle ; et ledit entrelacement répartissant lesdits groupes dans ladite séquence entrelacée, de façon que deux groupes adjacents dans ladite séquence entrelacée appartiennent à des mots de code distincts, caractérisé en ce que ledit dispositif comprend : des moyens de démodulation différentielle (51) desdits symboles reçus, mettant en oeuvre un traitement inverse à la modulation différentielle mise en oeuvre en émission, délivrant une séquence démodulée ; des moyens de désentrelacement (52) de ladite séquence démodulée, mettant en oeuvre un traitement inverse à l'entrelacement mis en oeuvre en émission, délivrant une pluralité de mots de code ; des moyens de décodage (53) desdits mots de code, délivrant ladite séquence binaire reconstruite.