FR 3097388 A1 20201218 FR 1906291 A 20190613 Description Titre de l'invention : Codage LDPC à protection différenciée [0001] L'invention concerne le domaine des télécommunications numériques et plus pré- cisément le domaine du codage de canal qui vise l'utilisation de codes correcteurs dans le but d'augmenter le niveau de redondance de l'information transmise de sorte à pouvoir reconstruire le message initialement généré malgré les erreurs introduites lors de la transmission de ce message à travers un canal de propagation non parfait. [0002] L'invention concerne plus particulièrement le domaine des codes correcteurs du type codes LDPC (Low Density Parity Codes) et porte sur un procédé de codage permettant d'appliquer une protection différenciée aux données à transmettre en fonction de niveaux de priorité différents. L'invention propose à cet effet une structure particulière de matrice de parité de code LDPC. [0003] L'invention s'applique avantageusement aux standards de radionavigation par satellite ou standards GNSS (Global Navigation Satellite System) tels que les standards GPS ou Galileo. [0004] Les standards GNSS définissent des messages GNSS qui sont transmis via des trames de données. De tels messages comprennent des données relatives à des informations de positionnement tels que des éphémérides satellites, des informations sur l'horloge du satellite, des données de service ou encore d'intégrité. [0005] Dans les standards actuels, ces données sont protégées par un code correcteur simple qui est appliqué directement sur l'ensemble d'une trame de données. Cette méthode présente l'inconvénient de ne pas permettre une optimisation fine du compromis entre le débit consommé par l'ajout du code correcteur et le niveau de protection nécessaire. [0006] En effet, les données transmises dans une trame GNSS sont de natures diverses et peuvent être classifiées en plusieurs groupes présentant des niveaux de priorité différents. Par niveau de priorité, on entend ici, un niveau de priorité sur la criticité des données à transmettre. Certaines données sont plus importantes que d'autres et nécessitent donc un niveau de protection par codage correcteur plus important pour assurer leur transmission correcte avec un niveau de fiabilité compatible du niveau de priorité. Par ailleurs, certaines données critiques nécessitent d'être transmises plus rapidement que d'autres. [0007] L'invention peut s'appliquer de façon similaire à d'autres systèmes de transmission de données pour lesquels il est possible de regrouper les données en plusieurs ensembles ayant des niveaux de priorité différents. [0008] Une méthode générale pour protéger des données numériques à transmettre comprenant plusieurs niveaux de priorité consiste à mettre en oeuvre un codage différencié ou un codage à protection inégale. Cette méthode permet d'optimiser la 2 protection des données et/ou le temps nécessaire pour les démoduler en fonction du niveau d'importance des données. [0009] Classiquement, il existe deux manières de réaliser de la protection inégale des données avec un code correcteur d'erreurs. [0010] Une première solution, par exemple décrite dans les références [1] et [2], consiste à construire des codes correcteurs spécifiques, dont la structure naturelle comporte différentes classes de protections. [0011] Ces techniques sont en général applicables uniquement pour des tailles de trames im- portantes (de l'ordre de 4000 bits), ce qui n'est pas compatible des applications GNSS du fait de la latence imposée par ces tailles importantes. Par ailleurs, certaines méthodes, comme celle décrite dans la référence [2], proposent une structure du code qui repose sur l'hypothèse particulière de communications en relayage (ou coopératives) qui permettent de garantir des diversités d'évanouissements en réception. Ces hypothèses sont contraignantes et ne correspondent pas toujours au cas d'application visé. [0012] Une autre méthode, décrite dans la référence [3], consiste à appliquer des rendements de codage différents en fonction des données que l'on cherche à transmettre au niveau applicatif. Cette technique, bien qu'efficace, comporte également plusieurs inconvénients. En premier lieu, cette méthode implique une signalisation importante (depuis la couche applicativc) des différentes classes de bits qu'on cherche à protéger, ce qui entraine un surcout de signalisation inter-couche. Par ailleurs, cela signifie qu'on a plusieurs classes de débits d'un point de vue des couches inférieures, ce qui est difficile à gérer pour des applications de transmission par satellite. [0013] Enfin, l'ensemble de ces techniques comporte un défaut commun. Elles induisent une différence de performances entre les bits les mieux protégés et les bits les moins protégés qui est souvent important. Cela signifie que les bits les moins importants sont très peu protégés ce qui n'est pas toujours souhaitable selon l'application visée. [0014] La demande de brevet FR3035286 du Demandeur permet de répondre à cette pro- blématique, mais en utilisant deux types de codes, un code interne et un code externe. Le code interne est appliqué aux bits de données qui sont estimés prioritaires par rapport aux autres. [0015] L'invention propose une nouvelle méthode de protection inégale aux erreurs qui est basée sur une structure de matrice de parité particulière pour des codes de type LDPC. [0016] Un message encodé à partir de cette matrice permet de générer des données protégées selon deux niveaux de priorité. En réception, les données prioritaires peuvent être décodées avec une probabilité d'erreur plus faible mais aussi plus rapidement car il n'est pas nécessaire de recevoir l'intégralité de la trame codée pour pouvoir décoder les bits prioritaires. 3 [0017] L'invention a pour objet une méthode d'encodage d'un message binaire composé d'un premier sous-message ayant un premier niveau de priorité et d'un second sous-message ayant un second niveau de priorité, à partir d'un code de type LDPC défini par une matrice de parité H ayant une première dimension correspondant aux bits du message binaire codé et une seconde dimension, la matrice de parité H étant constituée de quatre sous-ensembles de deux sous-matrices concaténécs selon la seconde dimension, les quatre sous-ensembles étant concaténés selon la première dimension, la première sous-matrice du premier sous-ensemble étant de la forme y où X est égal à la taille de la moitié du premier sous-message, y >C est égal à la taille de la moitié du second sous-message, lest une matrice identité de dimensions (x,x) et Gi est une matrice non nulle de dimensions (x,y), la seconde sous-matrice du premier sous-ensemble étant une matrice non nulle, la première sous-matrice du deuxième sous-ensemble étant nulle, la seconde sous-matrice du deuxième sous-ensemble étant une matrice non nulle, la première sous-matrice du troisième sous-ensemble étant une matrice non nulle, la seconde sous-matrice du troisième sous- ensemble étant de la forme y où G, est une matrice non nulle de dimensions (x,y), la première sous-matrice du quatrième sous-ensemble étant une matrice non nulle, et la seconde sous-matrice du quatrième sous-ensemble étant nulle, la méthode d'encodage comprenant une étape d'encoder le message binaire à l'aide de la matrice de parité H pour produire un message binaire code. [0018] Selon un aspect particulier de l'invention, le message binaire codé est composé de deux sous-messages codés indépendants comprenant chacun des bits d'information correspondants à une moitié du premier sous-message et à une moitié du second sous-message et des bits de parité. [0019] Selon un aspect particulier de l'invention, le premier sous-ensemble est associé à un ensemble de bits d'information constitué d'une première moitié du premier sous-message et d'une première moitié du second sous-message, le second sous-ensemble est associé aux bits de parité correspondants au premier ensemble de bits d'information, le troisième sous-ensemble est associé à un second ensemble de bits d'information constitué d'une seconde moitié du premier sous-message et d'une seconde moitié du second sous-message et le quatrième sous-ensemble est associé aux bits de parité correspondants au second ensemble de bits d'information. [0020] Selon un aspect particulier de l'invention, la seconde sous-matrice du deuxième sous- ensemble et la première sous-matrice du quatrième sous-ensemble sont de rang maximum. [0021] Selon un autre aspect particulier de l'invention: la seconde sous-matrice du premier sous-ensemble et la première sous-matrice du troisième sous-ensemble ont la même densité de valeurs à « 1 », la seconde sous-matrice du deuxième sous-ensemble et la première sous-matrice du quatrième sous-ensemble ont la même densité de valeurs à « 1 », les sous-matrices G1 et G, ont la même densité de valeurs à « 1 ». [0022] Selon un autre aspect particulier de l'invention, les sous-matrices des quatre sous- ensembles sont carrées de dimensions (x+y,x+y). [0023] L'invention a aussi pour objet un dispositif d'encodage comprenant des moyens configurés pour exécuter la méthode d'encodage d'un message binaire selon l' invention. [0024] L'invention a aussi pour objet un émetteur comprenant un dispositif d'encodage selon l'invention pour encoder un message binaire composé d'un premier sous-message ayant un premier niveau de priorité et d'un second sous-message ayant un second niveau de priorité afin de produire un message binaire codé composé de deux sous-messages codés indépendants comprenant chacun des bits d'information correspondants à une moitié du premier sous-message et à une moitié du second sous-message et des bits de parité, l'émetteur comprenant un moyen de transmission configuré pour transmettre indépendamment chacun des deux sous-messages codés. [0025] L'invention a encore pour objet un programme d'ordinateur comportant des ins- tructions pour l'exécution de la méthode d'encodage selon l'invention, lorsque le programme est exécuté par un processeur ainsi qu'un support d'enregistrement lisible par un processeur sur lequel est enregistré un programme comportant des instructions pour l'exécution de la méthode d'encodage selon l'invention, lorsque le programme est exécuté par un processeur. [0026] D'autres caractéristiques et avantages de la présente invention apparaîtront mieux à la lecture de la description qui suit en relation aux dessins annexés suivants. [0027] [fig.1] la figure 1 représente la structure d'une matrice de parité d'un code correcteur selon un mode de réalisation de l'invention, [0028] [fig.2] la figure 2 représente la matrice de parité de la figure 1 sous une forme sys- tématique, [0029] [fig.3] la figure 3 représente la matrice de parité de la figure 2 avec des éléments de détails, [0030] [fig.4] la figure 4 représente un exemple de structure d'un message codé à l'aide d'une méthode de codage selon l'invention, [0031] [fig.5] la figure 5 représente un organigramme d'une méthode de codage selon l'invention. [0032] [fig.6] la figure 6 représente un exemple de résultats de performances obtenus via la méthode de codage selon l'invention, [0033] [fig.7] la figure 7 représente un synoptique d'un codeur à protection différenciée selon l'invention, [0034] [fig.8] la figure 8 représente un synoptique d'un émetteur comprenant un codeur à protection différenciée selon l'invention. [0035] L'invention propose une nouvelle structure de matrice de parité H d'un code correcteur LDPC. Cette nouvelle structure est représentée à la figure 1. Elle permet d'appliquer deux niveaux de protection différents aux données à transmettre. [0036] La structure de la matrice H est illustrée à la figure 1. Elle est composée de quatre ensembles ESI,ES2,ES3,ES4 composés chacun de deux sous-matrices concaténécs selon la dimension verticale. Au total, la matrice H est constituée de huit sous-matrices carrées de dimensions (x+y ;x-Ey). x et y sont des valeurs entières qui définissent la proportion des bits de haute priorité et des bits de basse priorité dans le message à coder. Si on note M le message binaire à coder, cc message est composé de 2x bits de haute priorité et de 2y bits de basse priorité. [0037] Le premier ensemble ES, est composé de deux sous-matrices J, et HI. Le deuxième ensemble ES2 est composé de la matrice nulle et d'une sous-matrice H2. Le troisième ensemble ES 3 est composé de deux sous-matrices Hi et 72. Le quatrième ensemble ES4 est composé d'une sous-matrice H4 et de la matrice nulle. [0038] Les sous-matrices Ii et J2 sont de la forme r y ou avec I la matrice identité de dimensions (x x) et G1,02 une sous- matrice de dimensions (x,y). Les autres coefficients des sous-matrices J1 et J2 sont nuls. 100391 Le sous-matrices H1. H2, H3, H4, G1, G2 sont des matrices de faible densité qui sont 6 générées par des techniques d'optimisation, par exemple une méthode du type « density cvolution » ou «EXIT chart » décrite dans la référence [7]. [0040] La figure 2 représente la matrice de parité H dans une autre forme selon laquelle les ensembles ES, et ES3 sont permutés. De façon générale, les quatre ensembles de matrice peuvent être permutés selon n'importe quelle permutation sans modifier le principe du codage. La matrice de parité H est représentée sur la figure 2 sous sa forme systématique. C'est-à-dire que la sous-matrice A (composée des ensembles ES, et ES3) correspond aux bits d'information tandis que la sous-matrice B (composée des ensembles ES, et ES4) correspond aux bits de parité. [0041] Si on note M le message binaire à coder, le vecteur des bits de parité P est obtenu à partir des relations suivantes : [0042] [Math.1] AM' B» = [0043] [Math.2[ PT =AB-1MT 100441 La sous-matrice B doit être inversible et de rang maximum. 100451 La figure 3 représente encore une autre illustration de la matrice de parité FI. Chaque sous-matrice HI, F10, H, H4 est composée de deux matrices carrées de dimensions respectives (x,x) et (y,y) et de deux matrices de dimensions respectives (x,y) et (y,x). 100461 La matrice de parité H comporte 4(x+y) colonnes et 2(x+y) lignes. 100471 La figure 4 schématise la structure du message codé M. obtenu après codage du message M à partir de la matrice FI. Le message codé M. est composé de deux trames ou deux blocs I B et 2B distincts qui peuvent être transmis et décodés séparément et indépendamment. [0048] Chaque bloc est composé : d'une première partie 1i1,2i1 contenant une moitié respective des bits de haute priorité du message M, d'une deuxième partie 1i2,2i2 contenant une moitié respective des bits de basse priorité du message M, d'une troisième partie 1p1,2p, contenant les bits de parité associés à la première partie, d'une quatrième partie 1p2,2p2 contenant les bits de parité associés à la deuxième partie. [0049] Sur la figure 3, les notations de la figure 4 sont reprises afin d'indiquer pour chaque ensemble, les bits du message codé correspondants. [0050] Le taux de codage appliqué aux bits de haute priorité est supérieur au taux de codage appliqué aux bits de basse priorité. 7 [0051] Les blocs 1B et 2B peuvent être décodés indépendamment. Le décodage peut être réalisé en utilisant un algorithme de décodage adapté au décodage de code correcteur LDPC, par exemple un algorithme du type « Bel ief Propagation » tel que décrit dans la référence [7], ou tout autre algorithme équivalent. [0052] L'invention présente plusieurs avantages du fait de la structure particulière de la matrice de parité proposée. [0053] Dans le cas d'une transmission des blocs 1B et 2B sur un canal sans erreur, il est possible de récupérer tous les bits de haute priorité du message M à partir du décodage d'un seul des deux blocs. Cette propriété permet d'assurer une transmission plus fiable et plus rapide des bits de haute priorité. [0054] Dans le cas d'une transmission sur un canal avec erreurs (canal radio par exemple), le décodage d'un seul des deux blocs 1B,2B permet de récupérer les bits de haute priorité avec une probabilité d'erreur inférieure à celle obtenue pour un code défini avec une matrice de parité adaptée à un seul niveau de priorité. Une telle matrice est définie par la structure de la figure 1 avec y=0. Elle correspond à un code dit « Root-LDPC » tel que décrit dans la référence [6]. [0055] La capacité de correction d'erreur associée aux bits de haute priorité est liée au ratio x/y. [0056] Dans une variante de réalisation de l'invention, pour obtenir un système robuste, les capacités de correction d'erreur sont rendues équivalentes quel que soit le bloc 1B ou 2B décodé. Pour obtenir ce résultat, les sous-matrices HI et H3 ont la même densité de 1 ». De même, les sous-matrices H, et H4 ont la même densité de « 1 ». Les sous-matrices G1 et G, ont aussi la même densité de « 1 ». [0057] Par exemple, les sous-matrices HI, H2, H3, H4 sont des matrices de parité quasi- cycliques telles que définies dans [7]. [0058] La figure 5 schématise un organigramme d'un exemple de procédé de codage selon l'invention. Un message binaire M est reçu puis une étape 501 de séparation des bits du message en fonction de leurs niveaux de priorité est appliquée. Ensuite, une étape de codage 502 est appliqué aux bits organisés selon leurs niveaux de priorité pour générer le message codé M, qui est composé des deux blocs 1B et 2B. L'étape de codage 502 est réalisée à partir de la matrice de parité H selon l'invention. [0059] La figure 6 représente, sur un diagramme, des exemples de résultats obtenus à l'aide de la méthode de codage selon l'invention. Pour cet exemple particulier, les sous matrices HI, H2, H3, H4 sont des sous-matrices de parité quasi-cycliques ayant une densité égale à 3. Les sous-matrices G1 et G, ont une densité égale à 2. [0060] Les courbes représentées sur la figure 6 sont des courbes de taux d'erreurs binaires en fonction du rapport de la puissance de la porteuse sur la densité spectrale du bruit t C/No 8 [0061] La courbe 501 est une courbe de probabilité d'erreurs sur tous les bits d'information décodés correspondent au code LDPC utilisé dans la composante des données du signal de navigation GPS Ll C tel qu'explicité dans la référence [8]. [0062] Les courbes 502,503,504 et 505 sont des probabilité d'erreurs sur tous les bits d'information décodés lorsque les deux blocs 1B et 2B sont reçus et décodés. [0063] La courbe 502 correspond au cas y=0, c'est-à-dire un codage avec un seul niveau de priorité. Les courbes 503,504 et 505 correspondent respectivement à des valeurs de x égales à 200,100 et 50 pour une valeur de x-Ey= 250 pour tous les cas. Le code correcteur de base est de rendement 11/2. [0064] Les courbes 510,520,530,540 correspondent à la probabilité d'erreur sur les bits de haute priorité lorsque seulement un des deux blocs 1B ou 2B est reçu et décodé. Les courbes en pointillés correspondent au premier bloc 1B et les courbes avec des symboles correspondent au second bloc 2B. Les courbes se superposent. [0065] Les courbes 540 correspondent au cas y=0. Les courbes 510,520,530 correspondent respectivement à des valeurs de x égales à 200,100 et 50 pour une valeur de x-Ey= 250 pour tous les cas. [0066] La proportion de bits de haute priorité a une influence sur la probabilité d'erreur des bits de haute priorité, plus cette proportion est élevée, plus la probabilité d'erreur est faible. [0067] La figure 7 représente schématiquement un synoptique d'un codeur à protection dif- férenciée selon l'invention, apte à mettre en oeuvre le procédé de codage décrit à la figure 5. [0068] Le codeur 700 selon l'invention reçoit en entrée un message binaire M à coder et produit en sortie un message binaire codé M, composé de deux blocs 1B et 2B. Le codeur 700 comprend un premier module 701 d'affectation d'un niveau de priorité aux bits du message M, un deuxième module 702 pour regrouper les bits de mêmes niveau de priorité ensemble et organiser le message avant codage selon la structure attendue. Le codeur 700 comporte en outre un troisième module 703 de codage pour coder le message binaire à partir de la matrice de parité H. [0069] La figure 8 représente un synoptique d'un émetteur 800 comprenant un codeur 802 selon l'invention. L'émetteur 800 peut comporter en outre un module applicatif 801 pour générer des trames de bits M et un module radio 803 pour moduler, filtrer, mettre en forme et convertir analogiquement une trame de bits codée M, avant sa transmission à une antenne 804 pour être émise sur un canal radio. L'émetteur 800 peut, par exemple, être un émetteur compatible d'un système de radio-navigation par satellite. A ce titre, l'émetteur 800 peut être embarqué dans la charge utile d'un satellite. [0070] Les modules du codeur et du décodeur selon l'invention peuvent être implémentés à partir d'éléments matériel et/ou logiciel. A ce titre, l'invention peut notamment être 9 mise en oeuvre en tant que programme d'ordinateur comportant des instructions pour son exécution. Le programme d'ordinateur peut être enregistré sur un support d'enregistrement lisible par un processeur. Le support peut être électronique, magnétique, optique ou électromagnétique. [0071] En particulier, l'invention dans son ensemble ou chaque module du codeur ou du décodeur selon l'invention peut être implémenté par un dispositif comprenant un processeur et une mémoire. Le processeur peut être un processeur générique, un processeur spécifique, un circuit intégré propre à une application (connu aussi sous le nom anglais d'ASIC pour « Application-Specific Integrated Circuit ») ou un réseau de portes programmables in situ (connu aussi sous le nom anglais de FPGA pour « Field-Programmable Gate Array »). [0072] Le dispositif peut utiliser un ou plusieurs circuits électroniques dédiés ou un circuit à usage général. La technique de l'invention peut se réaliser sur une machine de calcul reprogrammable (un processeur ou un micro-contrôleur par exemple) exécutant un programme comprenant une séquence d'instructions, ou sur une machine de calcul dédiée (par exemple un ensemble de portes logiques comme un FPGA ou un ASIC, ou tout autre module matériel). [0073] Selon un mode de réalisation, le dispositif comprend au moins un support de stockage lisible par ordinateur (RAM, ROM, EEPROM, mémoire flash ou une autre technologie de mémoire, CD-ROM, DVD ou un autre support à disque optique, cassette magnétique, bande magnétique, disque de stockage magnétique ou un autre dispositif de stockage, ou un autre support de stockage non transitoire lisible par ordinateur) codé avec un programme d'ordinateur (c'est-à-dire plusieurs instructions exécutables) qui, lorsqu'il est exécuté sur un processeur ou plusieurs processeurs, effectue les fonctions des modes de réalisation de l'invention décrits précédemment. [0074] A titre d'exemple d'architecture matérielle adaptée à mettre en oeuvre l'invention, un dispositif selon l'invention peut comporter un bus de communication auquel sont reliés une unité centrale de traitement ou microprocesseur (CPU, acronyme de « Central Processing Unit » en anglais), une mémoire morte (ROM, acronyme de « Read Only Memory » en anglais) pouvant comporter les programmes nécessaires à la mise en oeuvre de l'invention; une mémoire vive ou mémoire cache (RAM, acronyme de Random Access Memory » en anglais) comportant des registres adaptés à enregistrer des variables et paramètres créés et modifiés au cours de l'exécution des programmes précités ; et une interface de communication ou E/S (I/O acronyme de « Inputiouput » en anglais) adaptée à transmettre et à recevoir des données. [0075] La référence à un programme d'ordinateur qui, lorsqu'il est exécuté, effectue l'une quelconque des fonctions décrites précédemment, ne se limite pas à un programme d'application s'exécutant sur un ordinateur hôte unique. Au contraire, les termes programme d'ordinateur et logiciel sont utilisés ici dans un sens général pour faire référence à tout type de code informatique (par exemple, un logiciel d'application, un micro logiciel, un microcode, ou toute autre forme d'instruction d'ordinateur) qui peut être utilisé pour programmer un ou plusieurs processeurs pour mettre en oeuvre des aspects des techniques décrites ici. Les moyens ou ressources informatiques peuvent notamment être distribués ("Cloud campanile), éventuellement avec selon des technologies de pair-à-pair. Le code logiciel peut être exécuté sur n'importe quel processeur approprié (par exemple, un microprocesseur) ou coeur de processeur ou un ensemble de processeurs, qu'ils soient prévus dans un dispositif de calcul unique ou répartis entre plusieurs dispositifs de calcul (par exemple tels qu'éventuellement accessibles dans l'environnement du dispositif). Le code exécutable de chaque programme permettant au dispositif programmable de mettre en oeuvre les processus selon l'invention, peut être stocké, par exemple, dans le disque dur ou en mémoire morte. De manière générale, le ou les programmes pourront être chargés dans un des moyens de stockage du dispositif avant d'être exécutés. L'unité centrale peut commander et diriger l'exécution des instructions ou portions de code logiciel du ou des programmes selon l'invention, instructions qui sont stockées dans le disque dur ou dans la mémoire morte ou bien dans les autres éléments de stockage précités. Références l00761 [1] C. Poulliat, D. Declercq and I. Fijalkow, "Enhancement of Uncqual Error Protection Propertics of LDPC Codes" EURASIP Journal on Wireless Communications and Networking, vol. 2007, Article ID 92659, 9 pages, 2007. l0077] RI P. Pulini et al, -Unequal Diversity LDPC Codes for Rclay Channels", IEEE Trans. On Wireless Communications, Vol 12, IN° 11, November 2013. l00781 lm C. Lamy-Bergot & B. Gadat, "Embcdding protection insidc I-1.264/AVC and SVC streams", EURASIP Journal on Wireless Communications and Networking, 2010. l0079] [4] C. Poulliat, -Contribution à l'étude et à l'optimisation de systèmes à composantes itératives",HdR 2011. l00801 [5] FR3035286 [0081] [6] J. J. Boutros, A. Guillen i Fabregas, E. Biglieri and G. Zemor, "Low-Density Parity-Check Codes for Nonergodic Block-Fading Channels," in IEEE Transactions on Information Theory, vol. 56, no. 9, pp. 4286-4300, Sept. 2010. [0082] [7] Ryan, W., Lin S (2009). Channel Codes: Classical and Modem. Cambridge: Cambridge University Press. [0083] [8] Marion Roudier. Analysis and Improvement of GNSS Navigation Message De- modulation Performance in Urban Environments . Theses, lNP Toulouse, January 11 2015. 12 [Revendication I] REVENDICATIONSMéthode d'encodage d'un message binaire composé d'un premier sous-message ayant un premier niveau de priorité et d'un second sous-message ayant un second niveau de priorité, à partir d'un code de type LDPC défini par une matrice de parité 1-1 ayant une première dimension correspondant aux bits du message binaire codé et une seconde dimension, la matrice de parité 1-1 étant constituée de quatre sous-ensembles (ESI,ES2,ES4,ES4) de deux sous-matrices concaténées selon la seconde dimension, les quatre sous-ensembles (ES1,ES2,ES ,ES4) étant concaténés selon la première dimension, la première sous-matrice ft) du premier sous-ensemble (ES,) étant de la forme où x est égal à la taille de la moitié du premier (1 sous-message, y est eeal à la taille de la moitié du second sous-message, 1 est une matrice ide uité de dimensions (x,x) et Gi est une matrice non nulle de dimensions x,y), la seconde sous-matrice (H1) du premier sous-ensemble (ES1) étant une matrice non nulle, la première sous-matrice du deuxième sous-ensemble (ES2) étant nulle, la seconde sous-matrice (W) du deuxième sous-ensemble (ES,) étant une matrice non nulle, la première sous-matrice (H3) du troisième sous-ensemble (ES3) étant une matrice non nulle, la seconde sous-matrice (L) du troisième sous- ensemble (ES3) étant de la forme x v où G, est une [Revendication 2] matrice non nulle de dimensions (x,y) la première sous-matrice (H4) du quatrième sous-ensemble (ES4) étant une matrice non nulle, et la seconde sous-matrice du quatrième sous-ensemble (ES4) étant. nulle, la méthode d'encodage comprenant une étape (502) d'encoder le message binaire (M) à l'aide de la matrice de parité H pour produire un message binaire codé (M2). Méthode d'encodage d'un message binaire selon la revendication 1 dans lequel le message binaire codé (M2) est composé de deux sous-messages 13 [Revendication 3] [Revendication 4] [Revendication 5] (1B,2B) codés indépendants comprenant chacun des bits d'information correspondants à une moitié du premier sous-message et à une moitié du second sous-message et des bits de parité. Méthode d'encodage d'un message binaire selon l'une des revendications précédentes dans lequel le premier sous-ensemble (ES,) est associé à un ensemble de bits d'information constitué d'une première moitié du premier sous-message et d'une première moitié du second sous-message, le second sous-ensemble (ES,) est associé aux bits de parité correspondants au premier ensemble de bits d'information, le troisième sous-ensemble (ES3) est associé à un second ensemble de bits d'information constitué d'une seconde moitié du premier sous-message et d'une seconde moitié du second sous-message et le quatrième sous-ensemble (ES4) est associé aux bits de parité correspondants au second ensemble de bits d'information. Méthode d'encodage d'un message binaire selon l'une des revendications précédentes dans lequel la seconde sous-matrice (H2) du deuxième sous-ensemble (ES2) et la première sous-matrice (H4) du quatrième sous-ensemble (ES4) sont de rang maximum. Méthode d'encodage selon l'une des revendications précédentes dans lequel : la seconde sous-matrice (H1) du premier sous-ensemble (ES,) et la première sous-matrice (H,,) du troisième sous-ensemble (ES) ont la même densité de valeurs à « 1 », la seconde sous-matrice (H2) du deuxième sous-ensemble (ES, ) et la première sous-matrice (H4) du quatrième sous-ensemble (ES4) ont la même densité de valeurs à « 1 », les sous-matrices G, et G2 ont la même densité de valeurs à « 1 ». [Revendication 6] Méthode d'encodage d'un message binaire selon l'une des reven- dications précédentes dans lequel les sous-matrices (HI, H2, ft, ftl, JI, J2) des quatre sous-ensembles sont carrées de dimensions (x+y,x+y). [Revendication 7] Dispositif d'encodage (700) comprenant des moyens (703) configurés pour exécuter la méthode d'encodage d'un message binaire selon l'une des revendications précédentes. [Revendication 8] Emetteur (800) comprenant un dispositif d'encodage (802) selon la re- vendication 7 pour encoder un message binaire composé d'un premier 14 [Revendication 9] sous-message ayant un premier niveau de priorité et d'un second sous-message ayant un second niveau de priorité afin de produire un message binaire codé composé de deux sous-messages codés indépendants comprenant chacun des bits d'information correspondants à une moitié du premier sous-message et à une moitié du second sous-message et des bits de parité, l'émetteur comprenant un moyen de transmission (803) configure pour transmettre indépendamment chacun des deux sous-messages codés. [Revendication 10] Programme d'ordinateur comportant des instructions pour l'exécution de la méthode d'encodage selon l'une quelconque des revendications 1 à 6, lorsque le programme est exécuté par un processeur. Support d'enregistrement lisible par un processeur sur lequel est enregistré un programme comportant des instructions pour l'exécution de la méthode d'encodage selon l'une quelconque des revendications 1 à 6, lorsque le programme est exécuté par un processeur.