Brevet FR2795255A1 — publié le 20001222

Procédé et dispositif de pré-codage de données L'invention est du domaine général des procédés de transfert d'informations. Elle concerne plus particulièrement un procédé et un dispositif de pré-codage. La présente invention a pour contexte initial une demande de brevet précédente des mêmes inventeurs FR 98109100, non encore publiée, intitulée "Procédé et dispositif de codage et de transmission utilisant un sous-code d'un code produit". L'objet de la présente invention est de lutter contre les erreurs apparaissant lors de la transmission d'information, notamment dans le cadre d'une transmission sans fil. En effet, les signaux transmis, notamment ceux de nature électrique, sont perturbés par du bruit. Dans une transmission d'information, on utilise de façon classique l'introduction de redondance dans le signal transmis, c!est à dire que des signaux excédentaires, fonction (souvent combinaison linéaire) des autres signaux sont transmis avec les signaux élémentaires eux-mêmes, et permettent dans une certaine mesure de corriger des signaux que l'on détermine comme reçus d'une façon erronée, lorsque le signal de redondance n'est pas égal à la combinaison linéaire des signaux reçus (cette présentation très résumée couvre une technique bien connue de l'homme du métier). On appelle cet ajout de redondance un codage des séquences entrantes, qui sont de préférence présentées sous forme binaire. Un codeur est un dispositif permettant de réaliser un tel codage. Un type classique de codeur, dit codeur produit, utilise une disposition en matrice des séquences d'information à coder et émettre. Dans le procédé de codage par code produit, connu de l'homme du métier, les données sont placées dans un tableau matriciel, et des lignes et des colonnes supplémentaires sont ajoutées à ce tableau pour fournir des équations de redondance sur les symboles des lignes et des colonnes du tableau matriciel initial. On comprend que dans un tel procédé de codage, on a créé des redondances sur les lignes et les colonnes de la matrice des symboles élémentaires d'information à transmettre, et que l'on peut donc corriger un certain nombre d'erreurs de transmission. Les codes produits sont bien connus et particulièrement adaptés à un décodage itératif. Pour décoder un message reçu r représenté aussi sous la forme d'un tableau matriciel n, x n2, on peut commencer par décoder les lignes et on fait les corrections, s'il y a lieu. Puis avec les données corrigées, on décode les colonnes et on fait les corrections. On peut ainsi itérer le procédé. Il est également possible d'utiliser une méthode de décodage itératif à entrées et sorties douces, ce qui améliore les performances de la transmission. On parle alors de turbo-décodage. On pourra consulter à ce propos l'article de R. Pyndiah, A. Glavieux, A. Picart et S. Jacq intitulé "near optimum decoding of product codes", paru dans les actes de IEEE Globecom'94 Conférence, San Francisco, pp 339-343, Dans le but d'augmenter encore la performance de correction d'erreurs, avec décodage itératif, il a été introduit par les mêmes inventeurs (dans la demande de brevet française non publiée 98/09100) un procédé de codage particulier qui créé des redondances non seulement sur les lignes et les colonnes de la matrice émise, mais également sur certaines diagonales de pentes prédéterminées. On utilise dans cette invention des sous-codes de codes produits pour lesquels chaque mot de code u doit avoir non seulement, dans sa représentation matricielle, ses lignes et ses colonnes, mais également certaines diagonales (dites diagonales à redondance) faisant partie d'un code binaire prédéterminé. Si l'on considère les lignes et les colonnes comme des diagonales particulières, l'invention précitée impose que des fonctions de redondance soient réalisées sur au moins trois diagonales passant par une composante quelconque de la matrice de symboles. On a vu dans ce document que des codes dits codes Abéliens sont particulièrement bien adaptés à cette approche. Par ailleurs, un procédé de décodage itératif a été décrit dans l'invention précitée, qui utilise non seulement les équations de vérification de parité sur les lignes et les colonnes des matrices représentant les mots de code des mots reçus en sortie du canal bruité, mais aussi les équations de vérification de parité qui correspondent aux diagonales à redondance. Les inventeurs ont démontré que cet ajout de redondance diagonale additionnelle ne réduit pas de façon exagérée le rendement de codage, par rapport à celui des codes par produit direct (sans diagonales à redondance). Or il se trouve que, dans le cadre de l'utilisation d'un système de communication pré-existant, un utilisateur peut être contraint d'utiliser un codeur fonctionnant avec un procédé de correction d'erreurs, tel que par exemple le produit direct de codes cycliques, qui est moins puissant que le procédé de codage (à code produit et diagonale à redondance) décrit dans la demande de brevet citée plus haut (FR 98/09100) et qui vient d'être brièvement résumé. Cet utilisateur ne peut alors a priori profiter de la performance améliorée du procédé de codage décrit dans l'invention précitée. Le problème fondamental formulé dans la présente invention est alors de permettre d'utiliser un procédé de codage de type produit direct tout en retrouvant les performances de l'invention précitée (redondance additionnelle liée aux diagonales à redondance). Le but de la présente invention est de proposer un procédé et un dispositif de pré-codage permettant de résoudre ce problème, au moins pour un certain type de codeur. De façon résumée, le dispositif selon l'invention est un pré-codeur, destiné à être inséré en amont d'un dispositif de codage de type utilisant une technique dite de produit direct de codes cycliques, Ce pré-codeur effectue une transformation logique sur des séquences d'information entrantes, de manière à ce que les données ainsi précodées, envoyées dans le dispositif de codage à produit direct de codes cycliques, se trouvent en sortie du codeur sous forme de séquences codées dont les lignes, les colonnes et certaines diagonales correspondent à des mots de code d'un code Abélien (tel que ceux décrits dans le document 98109100), ce qui est une conformation favorable comme on l'a expliqué en préambule. On comprend que dest la combinaison du pré-codage et du codage par produit direct de codes cycliques, qui aboutit au résultat. Le pré-codeur en tant que tel est un dispositif électronique de type connu. Il met en ceuvre un procédé qui peut être réalisé sous forme logicielle ou matérielle (processeur spécifique) sur tout type de données (séquences d'information) entrantes, par exemple des images, ou toutes autres données numériques. L'invention vise en premier lieu un procédé de pré-codage d'une information représentative d'une grandeur physique et représentée par un ensemble (SO) de premiers symboles binaires, ledit procédé de pré-codage comportant une opération de calcul à partir dudit ensemble (SO) d'un mot binaire précodé (SI), ensemble de deuxièmes symboles binaires, dits précodés et prévus pour être disposés dans un tableau rectangulaire, caractérisé en ce que, étant donné un sous-code prédéterminé (Cl) d'un code prédéterminé (C) de type produit direct, le mot précodé (SI) lorsqu'il est considéré comme ensemble d'information pour le code (C), soit codé par un codeur du code (C) en un mot du sous-code (CI). L'invention vise plus particulièrement un procédé de pré-codage tel qu'exposé succinctement ci-dessus, caractérisé en ce que il comporte les caractéristiques suivantes : 11 les symboles de l'ensemble (SO) de premiers symboles binaires apparaissent tels quels dans un sous ensemble des positions du tableau rectangulaire ou est disposé le mot binaire précodé (SI) 21 le pré-codage de l'ensemble (SO) pour obtenir le mot binaire précodé (SI) fait usage de matrices (Gi) d'un premier type pour les symboles de (SO) apparaissant dans les positions (i, 0) du tableau représentant le mot binaire précodé (SI), et de matrice (G".- ) d'un second type pour les symboles de l'ensemble (SO) apparaissant dans les positions (i, j) du tableau représentant le mot binaire précodé (SI) telles que j>O. Selon une variante, le procédé de pré-codage comporte les caractéristiques suivantes : 11 les symboles de l'ensemble (SO) de premiers symboles binaires apparaissent tels quels dans un sous ensemble des positions du tableau rectangulaire ou est disposé le mot binaire précodé (SI) 2/ le pré-codage de l'ensemble (SO) pour obtenir le mot binaire précodé (SI) fait usage de matrices (Gj) d'un premier type pour les symboles de (SO) apparaissant dans les positions (0, j) du tableau représentant le mot binaire précodé (SI), et de matrice (G'#q- ) d'un second type pour les symboles de l'ensemble (SO) apparaissant dans les positions (i, j) du tableau représentant le mot binaire précodé (SI) telles que >0. Selon des mises en ceuvre particulières de l'invention, éventuellement utilisées en conjonction : - le sous-code (CI) prédéterminé est un code abélien du code (C) à produit direct, ce code abélien (CI) étant défini comme le sous-ensemble de tous les mots du code produit (C) dont certaines diagonales prédéterminées sont également des mots du code cyclique (B) de type (n, k) tel que le code (C) est le produit direct du code cyclique (B) par lui-même, tout mot de ce code produit (C) pouvant être représenté par un matrice binaire (n x n). - l'ensemble (1) de positions d'information (dont le nombre (ki) de positions est égal à la dimension (ki) du sous-code (CI pour ce code abélien (CI), est un sous-ensemble du coin supérieur gauche de taille k x k de l'ensemble des n x n positions. Le procédé comporte, dans une mise en #uvre particulière, la création et la mémorisation de matrices du premier type (Gi) en nombre (NL) égal au nombre de lignes de l'ensemble de positions d'information (1) dans le code (CI) choisi, cet ensemble de positions d'information (1) étant représenté sous forme matricielle, chaque matrice du premier type (Gi) étant définie comme la matrice binaire de type k x n des k premières lignes de la matrice n x n représentant le mot de code qui a un 'T' en position (i, 0) et des "0" dans les toutes les autres positions d'information de l'ensemble (1). Les matrices du second type (G'#q-) destinées à être utilisées pour le pré- codage d'un symbole d'information apparaissant dans une position (i, j), avec un numéro de l igne i compris entre 0 et NU 1, sont obtenues par itération j fois et au maximum un nombre de fois (nbp(i égal au nombre de positions dinformation sur ladite ligne i, de l'étape suivante, en prenant comme première matrice intermédiaire la matrice Gi.- - décalage de la matrice intermédiaire de une colonne vers la droite pour former une matrice décalée notée Gi, - et dans cette nouvelle matrice Gli, pour chaque ligne j comprise entre 0 et NL-1 (valeurs incluses), où un 'T' apparaît dans la première colonne d'indice zéro, ajout modulo 2 de la matrice Gj à cette nouvelle matrice Gli. pour aboutir finalement à une nouvelle matrice intermédiaire, - la matrice intermédiaire finalement obtenue en fin d'itération étant la matrice du second type GliJ. L'invention vise sous un autre aspect un procédé de transmission d'une information SO représentative d'une grandeur physique et représentée par des premiers symboles binaires, comportant : - une opération de pré-codage comprenant une opération de calcul de seconds symboles binaires, dits symboles binaires précodés, à partir de ladite information, lesdits symboles binaires précodés étant prévus pour être disposés dans un tableau carré, - une opération de codage par codeur à produit direct comprenant une opération de calcul de troisièmes symboles binaires, dits symboles binaires codés, à partir desdits symboles binaires précodés, lesdits symboles binaires codés étant prévus pour être disposés dans un tableau carré, - une opération de transfert desdits symboles binaires codés, comprenant une opération de démodulation en des symboles dits symboles reçus, - une opération de correction desdits symboles reçus fournissant des symboles binaires dits symboles corrigés, et - une opération de décodage de l'information à partir desdits symboles corrigés, caractérisé en ce que pour chaque dit symbole binaire codé, il existe au moins trois diagonales distinctes dans le tableau, qui contiennent ce symbole binaire codé et qui, privées de ce symbole binaire codé, permettent encore, chacune à elle seule, de recalculer ledit symbole binaire codé. L'invention vise également un dispositif employant un procédé de pré- codage ou de transmission tels que ceux succinctement présentés ci-dessus. L'invention vise plus généralement un téléphone, un appareil photographique, une imprimante, un scanner, une caméra, un ordinateur, un télécopieur, un téléviseur, un lecteur audio/vidéo, caractérisés en ce que ces dispositifs comportent un dispositif tel qu'exposé brièvement ci-dessus. L'invention vise également un moyen de stockage d'informations et un moyen de stockage d'informations amovible, partiellement ou totalement, lisibles par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, permettant la mise en oeuvre du procédé exposé succinctement ci-dessus La description et les dessins qui suivent permettront de mieux comprendre les buts et avantages de l'invention. Il est clair que cette description est donnée à titre d'exemple, et n'a pas de caractère limitatif. Dans les dessins : - la figure 1 représente un exemple d'ensemble de positions d'information pour le code Abélien (961, 486) ; - le figure 2 représente sous forme de matrice 31 x 31, une ligne (0, 0) d'une matrice génératrice correspondant à l'exemple de la figure 1 ; - le figure 3 représente sous forme de matrice 26 x 31, une ligne (0, 1) d'une matrice génératrice correspondant à l'exemple de la figure 1 ; - le figure 4 représente sous forme de matrice 26 x 31, une ligne (1, 0) d'une matrice génératrice correspondant à l'exemple de la figure 1 ; - la figure 5 représente sous forme de matrice 26 x 31, une matrice associée à la position (2, 0) pour l'exemple de la figure 1 ; - la figure 6 représente un schéma bloc du procédé selon l'invention, dans le même exemple -, - la figure 7 illustre schématiquement la constitution d'une station de réseau ou station de codage informatique, sous forme de schéma synoptique; - la figure 8 représente un organigramme du procédé selon l'invention; - la figure 9 représente un détail de l'organigramme de la figure 8. Avant de décrire un mode particulier de réalisation de la présente invention, nous donnons ci-dessous une présentation mathématique de son fonctionnement, explicitée sur un exemple. On revient en premier lieu sur le fondement mathématique du code produit, avant de rappeler quelques éléments de la demande de brevet 98109100 citée en référence. On définit un message comme étant une séquence numérique (sous forme par exemple de séquence de symboles d'information binaires). On appelle codeur un dispositif qui produit une séquence d'un alphabet de codage prédéterminé, à partir d'une séquence de données entrantes. On appelle code un ensemble de séquences codées produites par le codeur, à partir d'une séquence de données entrantes. Pour spécifier un code, ou pour préciser la manière de calculer la redondance à adjoindre à une information, on fait classiquement, comme on l'a dit, usage de matrices, du moins si l'alphabet a une structure d'anneau. Par exemple, si à k symboles d'information binaires (vo, vi, - - ., v k-1), on veut adjoindre des symboles redondants (vk, V k1l, - - ., v -,) pour former un mot v (vo, vi, ... v,,-,) de longueur n (appelée longueur du code, k étant alors appelé dimension du code), on choisit une matrice H (dite matrice de contrôle de parité ou matrice de parité) à n colonnes et n - k lignes sur l'alphabet (0, 1), et on impose au mot binaire v de satisfaire l'équation V *W= 0 n-k où désigne le produit matriciel, où Ht désigne la matrice transposée de la matrice H, où 0 ,-k est un (n-k)-uple ligne de valeurs nulles, et où les additions sont effectuées modulo 2 - on dit alors que le mot v est orthogonal à la matrice H. On note que la dimension du code k est toujours strictement inféheure à la longueur du code n. On peut aussi faire usage d'une matrice G de type k x n, dite matrice génératrice. Dans ce cas, un mot u fflo, ul, ..., un-,) de longueur n est dans le code C si et seulement si il peut s'écrire : u=aG où a (ao, ai, ..., ak-1) est un k-uple binaire. Il est notable que la matrice H peut également être utilisée comme matrice génératrice (codeur) pour un code linéaire, de la même façon que G. Le code correspondant est alors appelé code C orthogonal et noté C', et il est l'ensemble de tous les mots de code v (vO, vl, ... vn-1) qui peuvent être exprimés par v=bH (3) où b = (bo, bi, .. .,bn-k-1) est un (n-k)-uple binaire, et où tous les calculs sont effectués modulo 2. En conséquence, pour tout mot de code u e C et pour tout mot v c C", on a u v=O. Ceci signifie que tout mot v e C#' définit une relation de parité qui doit être satisfaite par tous les mots de code u c C. En particulier, en écrivant v (vo, vi, ...v,-,), et avec un nombre i prédéterminé, considérons un sous-ensemble S(i) de tous les mots v de C># tels que vi=l. Chacun de ces mots v de Sffl définit une relation de parité qui doit être satisfaite par le symbole ui de tous les mots de code u de C. Pour chaque tel mot v de S(i), notons P(vi) l'ensemble de tous les indices j différents de i pour lesquels vj=1. A partie de ce mot de code v, il est possible de recalculer ui pour tous les éléments u de C, dès lors que l'ensemble des couples (uj, j) (avecjélément de P(vi) etj différent de i) est connu. En d'autres termes, on peut reconstituer une composante d'une ligne d'un mot de code u reçu de façon erronée grâce au codage "orthogonal" introduit. On étudie le cas où un mot de code u faisant partie de l'ensemble C (code linéaire binaire (n, k , est transmis sur un canal bruité, et est reçu sous la forme d'un rnot reçu r, n-uple (ro, ri, ... r,-,) de valeurs de l'alphabet de sortie du canal. La réception de la Mème composante ri, lorsque la Même composante ui est transmise, est le résultat de la fonction aléatoire réalisée par le canal bruité. On supposera toujours que cette fonction effectuée par le canal bruité est non corrélée dans le temps. Dans cette situation générale, pour laquelle les composantes ri ne font plus nécessairement partie de l'ensemble {0,11, il est possible de démontrer sans aucune difficulté, que pour tout élément v de S(i) (sous-ensemble de tous les mots de code v de C" tels que vi=I), le sous-ensemble de symboles rj, avec j élément de P(vi) d'une part, et le symbole ri lui-même d'autre part, transportent tous deux des informations sur la valeur réelle de la composante transmise ui. Cette propriété est utilisable pour améliorer la reconstitution d'une information reçue de façon erronée sur un canal bruité. Dans le but d'améliorer les performances de la transmission par un codage permettant la correction d'erreurs, sans trop augmenter la complexité de sa mise en ceuvre, on a donc recours à la notion de code produit. Sur ce principe, si on considère deux codes linéaires binaires Cl et C2, de types respectivement (ni, ki) et (n2, k2), il est possible de construire un nouveau code C (dit code produit) de longueur ni x n2. Les mots de code de C sont représentés par des matrices binaires à ni lignes et n2 colonnes, et une telle matrice u est un mot de code de C si toutes ses lignes sont des mots de code de C2 et si toutes ses colonnes sont des mots de code de Ci. Dans ce contexte, on note uq le symbole placé en position (ij) dans une telle représentation matricielle du mot de code u de C, avec i compris entre 0 et ni-1 (en pouvant prendre ces valeurs), et j compris entre 0 et n2-1 (en pouvant prendre ces valeurs). Rappelons alors quelques éléments de la demande de brevet 98109100 citée plu haut, et de son enseignement technique relatif à un procédé de codage avec "redondance diagonale additionnelle". On considère à titre de simplification le cas où ni et n2 prennent la même valeur notée n. Dans ce cas on définit un sous mot de code diagonal u (") de la matrice n x n comme étant de la forme : U (") Oc, U l,c+d, U 2,c,2d,..., Uic+idp ---,Un-1, c+(n-I)d) dans laquelle c est un entier quelconque compris entre 0 et n-1 et pouvant prendre ces valeurs, et d est un entier relativement premier avec n et compris entre 1 et n-1 (en pouvant prendre ces valeurs). Le nombre d étant relativement premier avec n, il est possible de trouver son inverse modulo n, c'est à dire qu'il existe un entier unique e compris entre 1 et n-1 (en pouvant prendre ces valeurs) tel que le reste de e x d modulo n soit égal à 1. Cet entier e est appelé pente du sous mot de code diagonal u (c,'O dans la représentation matricielle n x n du mot de code u. A titre d'exemple, on reprend un cas décrit dans le document précité. On choisit n (nombre de colonne de la matrice) égal à 31, et soit C le code produit direct du code binaire B de Hamming (31, 26) par lui-même, qui est donc de ce fait un code (31 x 31, 26 x 26) soit (961, 676). Comme on l'a vu plus haut, il est possible de représenter tout mot de ce code produit C par un matrice binaire 31 x 31 (comportant 961 éléments). Pour appliquer le procédé décrit en préambule, on définit un code particulier CI comme le sous-ensemble de tous les mots de ce code produit C dont certaines diagonales sont également des mots du code de Hamming (31, 26). Il a été mentionné dans le document FR 98/09100 que si on impose, par exemple, que toutes les diagonales de pente égale à 5 ou à 10 soient également des mots de code du code de Hamming (31, 26), alors la dimension ki du sous-code CI du code produit C correspondant est 486. L'homme du métier peut alors aisément trouver par calcul matriciel basé sur une méthode échelon classique par ligne (ou colonne), un ensemble 1 de 486 (ki) positions d'information pour ce code CI, qui soit préférablement un sous-ensemble du coin supérieur gauche de taille 26 x 26 (676 éléments) de l'ensemble des 31 x 31 positions (961 éléments). Dans cet exemple, un tel ensemble 1 de positions d'information est représenté sur la figure 1. Cette figure représente une matrice carrée 31 x 31 à coefficients binaires, et comportant des 1 " en position (i, j) (où i désigne la ligne et j la colonne de la matrice, avec 0 :g i, j #g30) si et seulement si uij est une position faisant partie de cet ensemble 1 de positions d'information. De plus, par un calcul matriciel, l'homme du métier peut obtenir une quelconque des 486 (=kl) lignes de longueur 961 (=n*n) d'une matrice G génératrice de Cl, qui soit systématique par rapport aux 486 positions d'information référencées sur la figure 1 # Dans les figures 2 à 4 sont présentées, sous forme de matrices 31 x 31, trois lignes de cette matrice génératrice G présentant des 'T' respectivement dans les positions (0,0) (figure 2), (0,1) (figure 3) et (1,0) (figure 4), et des "0" dans les autres positions d'information (correspondant aux positions des 'T' de la matrice illustrée sur la figure 1). Dans ces matrices des figures 2 à 4, le coin supérieur gauche de taille 26 x 26 est représenté explicitement. Dans cet exemple, le sous-ensemble de positions d'information noté 1 est alors défini par: 1={(0,0),(0,1),...., (0,25),(1,0),....,(16,25),(17,O)#...,(17,20),(18,0),....(21,5 et sa cardinalité est de 486 (puisque le nombre de 1 " de la figure 1 est de 16x26 + 2x2l + 16 + 2 x6). Dans cet exemple, le problème se formule alors de la façon suivante : on veut utiliser une matrice génératrice (codeur) classique du code C (961,676) obtenu par produit direct du code B de Hamming (n=31, k=26) par lui-même, d'une manière telle que le mot de code 31 x 31 produit (lorsque on code une séquence d'information entrante) fasse partie du sous code CI de dimension 486 obtenu quand on impose en plus des équations de vérification de parité sur les diagonales de pente el=5 et e2=10. Le principe de la solution choisie est - de définir le coin supérieur gauche de dimension 26 x 26 d'une matrice 31 x 31 (décrivant un mot de code de C) comme un mot de pré-code SI, dest à dire comme un mot de code obtenu par pré-codage d'une séquence d'information entrante SO, lequel mot de pré-code SI est ensuite considéré par le codeur classique (961, 676) (de matrice génératrice à produit direct) comme une simple séquence d'informations à coder. - d'imposer sur ces mots de pré-code SI une condition telle que lorsque ce mot de pré-code SI est codé par le codeur classique à produit direct (961, 676), le mot de code S2 résultant fasse partie du sous-ensemble CI désiré du code C, dit par produit direct complet, et satisfasse de ce fait les équations de vérification de parité imposées sur les diagonales de pente 5 et 10 (dans cet exemple particulier), créant ainsi une redondance supplémentaire, ainsi qu'on l'a expliqué dans le préambule. En conséquence, il est donc nécessaire de créer un pré-codeur (676, 486) qui produise, à partir de 486 éléments d'information, les matrices 26 x 26 correspondantes (mots de pré-code SI de longueur 676), considérées ensuite par le codeur classique (961, 676) à produit direct comme de simples séquences d'information. Ainsi, la combinaison du pré-codage et du codage classique produira, à partir de séquences SO d'une longueur 486 (au lieu de séquences de longueur 676 si on entrait directement dans le codeur classique C), des mots de code S2 de longueur 961 faisant partie du code Abélien (961, 486 , et vérifiant donc des conditions de redondance sur quatre (dans l'exemple décrit ici à titre non limitatif) diagonales de pentes distinctes (en considérant ici encore que les lignes et les colonnes sont des cas particuliers de diagonales). Dans une mise en ceuvre du procédé décrite à titre d'exemple non limitatif (illustrée figure 6), on utilise le fait que le code Abélien (961, 486) a un ensemble de positions d'information 1 concentré dans les 21 premières lignes (plus généralement dans un nombre NL de lignes) des matrices 31 x 31 représentant les mots de code (ce qu'on voit clairement sur la figure 1). Dans ce cas, le pré-codeur utilise 21 (plus généralement NL) matrices binaires de type 26 x 31 notées Gi, avec i compris entre 0 et 20 (en pouvant prendre ces valeurs). Plus généralement, le pré-codeur utilise autant (NQ de matrices binaires qu'il y a de lignes de positions d'information dans le Code Abélien choisi. La matrice notée Go est la première de ces matrices. Elle est donc définie comme la matrice des 26 premières lignes de la matrice 31 x 31 représentée figure 2. De même, G, est définie comme la matrice des 26 premières lignes de la matrice 31 x 31 représentée figure 4 (la figure 3 correspondant à une position d'information sur la même ligne - la première- que la matrice de la figure 2). De même, G2 est définie comme la matrice des 26 premières lignes de la matrice 31 x 31 représentée figure 5. Et plus généralement, Gi est définie comme la matrice des 26 premières lignes de la matrice 31 x 31 représentant le mot de code qui a un 1 " en position (i, 0) et des "0" dans les 485 autres positions d'information de l'ensemble 1 illustré par la figure 1. Le calcul de ces matrices est réalisable de façon connue de l'homme du métier, comme il a été dit plus haut, et ces 21 matrices Gi de type 26 x 31 peuvent alors être stockées dans un dispositif mémoire du pré-codeur. li A partir de ces vingt et une matrices Gi le pré-codage des symboles d'information apparaissant dans les positions (i, 0) est complètement défini. 2/ Pour pré-coder un symbole d'information apparaissant dans une position (i, 1), on utilise le procédé suivant: on décale la matrice initiale Gi de une colonne vers la droite (la dernière colonne à droite devenant la première colonne, et toutes les autres colonnes étant décalées d'une position vers la droite). Des 'T' peuvent donc apparaître dans la première colonne (d'indice zéro) de cette matrice décalée notée Gi, et pour chaque ligne j comprise entre 0 et 20 (valeurs incluses), de cette nouvelle matrice Gi, où un 'T' apparaît dans la première colonne d'indice zéro, on ajoute modulo 2 la matrice Gj à cette nouvelle matrice Gli. pour aboutir finalement à une matrice G"i, 1. On utilise alors le 676-uple représenté par le coin supérieur 26 x 26 de cette matrice Gli, 1 pour pré-coder l'information associée à la position (il 1) - 3/ Pour pré-coder un symbole d'information apparaissant dans une position (i, m), on utilise le procédé suivant : Pour i compris entre 0 et 15 (valeurs incluses), la méthode du point 2/ ci- dessus est itérée m fois et au maximum jusqu'à m=25 (puisque la matrice de la figure 1 présente des positions d'information comportant vingt six 'T' dans les 26 premières colonnes, pour les lignes d'indices 0 à 15)# La matrice initiale Gi est remplacée après une itération par la première matrice intermédiaire Gli, 1 obtenue, et ainsi de suite. Pour i compris entre 16 et 17, la méthode du point 2/ ci-dessus est itérée m fois et au maximum jusqu'à m=20 (les positions d'information s'arrêtent à la 21-ème colonne). Pour i cette même méthode est itérée m fois et au maximum jusqu'à 15 (les positions d'information s'arrêtent à la 16-ième colonne). Pour i compris entre 19 et 20, cette même méthode est itérée m fois et au maximum jusqu'à m=5 (les positions d'information s'arrêtent à la 6-ème colonne). Plus généralement, pour pré-coder un symbole d'information Sim apparaissant dans une position (i, m), avec un numéro de ligne i compris entre 0 et NL-1, la méthode du point 2/ est itérée m fois et au maximum un nombre de fois noté nbp(i) égal au nombre de positions d'information sur ladite ligne i. On est alors capable de pré-coder en une matrice 26 x 26 tous les symboles d'informations appartenant à l'ensemble des 486 positions d'information 1, et donc toute séquence SO qui soit une combinaison de ces 486 positions. 0 n peut écri re S 1 =1 Gi x S(i, o) +1 G "q- x Scq? Comme on l'a démontré plus haut, tous les mots SI de pré-code (26, 26) issus de ce pré-codage de mots SO, une fois codés par un codeur classique (961, 676) à produits direct, feront partie du code CI Abélien (961, 486) et présenteront donc les caractéristiques de redondance diagonale recherchées. Il est clair que ce qui a été réalisé dans l'exemple décrit avec n=31 peut être réalisé pour toute autre valeur de la longueur n du code de Hamming B choisi initialement, même si, dans le cas où n n'est pas un nombre premier (n=15 par exemple), la structure algébrique du sous-code du code produit est plus complexe. Plus généralement, la même opération peut être réalisée avec des codes cycliques généraux et pas seulement avec des codes de Hamming. En résumé, le Procédé de pré-codage d'une information (SO) représentée par des premiers symboles binaires, ledit procédé de pré-codage comportant une opération de calcul à partir de ladite information (SO), d'un mot binaire précodé (SI), ensemble de symboles binaires dits précodés, prévus pour être disposés dans un tableau matriciel k x k, la séquence d'information (SO) étant une combinaison de positions d'informations (i, j) appartenant à un ensemble (1) prédéterminé, comporte des étapes de 11 pré-codage des symboles d'information de l'information (SO) apparaissant dans les positions (i, 0) par des matrices (Gi) d'un premier type; 21 pré-codage des symboles d'information apparaissant dans les positions (i, j) j>O, par des matrices (G",-,,.) d'un second type. L'ensemble (1) prédéterminé est un ensemble de positions d'information d'un sous-code (CI) prédéterminé d'un code (C) à produit direct d'un code cyclique prédéterminé (B) de type (n, k) par lui-même, tout mot de ce code produit (C) pouvant être représenté par un matrice binaire (n x n). Le sous-code (CI) prédéterminé est un code abélien du code (C) à produit direct, ce code abélien (CI) étant défini comme le sous-ensemble de tous les mots du code produit (C) dont certaines diagonales prédéterminées sont également des mots du code cyclique (B). L'ensemble (1) de positions d'information (dont le nombre (ki) de positions est égal à la dimension (ki) du sous-code (Cl pour ce code abélien (Cl), est un sous-ensemble du coin supérieur gauche de taille k x k de l'ensemble des n x n positions. Le procédé comporte la création et la mémorisation de matrices du premier type (Gi) en nombre (NL) égal au nombre de lignes de l'ensemble de positions d'information (1) dans le code (Cl) choisi, cet ensemble de positions d'information (1) étant représenté sous forme matricielle, chaque matrice du premier type (Gi) étant définie comme la matrice binaire de type k x n des k premières lignes de la matrice n x n représentant le mot de code qui a un 1 " en position (i, 0) et des "0" dans les toutes les autres positions d'information de l'ensemble (1). De la même manière, les matrices du second type (G"ij) destinées à être utilisées pour le pré-codage d'un symbole d'information apparaissant dans une position (i, j), avec un numéro de ligne i compris entre 0 et NL-1, sont obtenues par itération j fois et au maximum un nombre de fois (nbp(i égal au nombre de positions d'information sur ladite ligne i, de l'étape suivante, en prenant comme première matrice intermédiaire la matrice Gi: - décalage de la matrice intermédiaire de une colonne vers la droite pour former une matrice décalée notée Gi, - et dans cette nouvelle matrice Gli, pour chaque ligne j comprise entre 0 et NUI (valeurs incluses), où un 'T' apparaît dans la première colonne d'indice zéro, ajout modulo 2 de la matrice Gj à cette nouvelle matrice Gli. pour aboutir finalement à une nouvelle matrice intermédiaire, - la matrice intermédiaire finalement obtenue en fin d'itération étant la matrice du second type GliJ. La description d'un mode particulier de réalisation du dispositif mettant en #uvre la présente invention va maintenant se poursuivre en regard des figures 6 à 9. La figure 7 illustre schématiquement la constitution d'un dispositif de pré- codage, sous forme de schéma synoptique. Ce dispositif comporte une source d'informations externe 1, un port d'entrée-sortie 2 (adapté à être relié à un codeur classique) et une carte de traitement 3. La carte de traitement 3 comporte, reliés entre eux par un bus d'adresses et de données 4 - - une unité centrale de traitement 5 - une mémoire vive RAM 6; - une mémoire morte ROM 71 - le port d'entrée-sortie 2 -1 Chacun des éléments illustrés en figure 7 est bien connu de l'homme du métier des systèmes de transmission et, plus généralement, des systèmes de traitement de l'information. Ces éléments communs ne sont donc pas décrits ici. On observe, cependant, que - - la source d'informations 1 est, par exemple, un périphérique d'interface, un capteur, un démodulateur, une mémoire externe ou un autre système de traitement d'information (non représenté), et est préférentiellement adaptée à fournir des séquences de signaux représentatifs de parole, de messages de service ou de données multimédia, sous forme de séquences de données binaires. On observe, en outre, que le mot "registre" utilisé dans la description désigne, dans chacune des mémoires 6 et 7, aussi bien une zone mémoire de faible capacité (quelques données binaires) qu'une zone mémoire de grande capacité (permettant de stocker un programme entier). La mémoire vive 6 conserve des données, des variables et des résultats intermédiaires de traitement, dans des registres de mémoire portant, dans la description, les mêmes noms que les données dont ils conservent les valeurs. La mémoire vive 6 comporte notamment - - un registre "données_primaires" dans lequel sont conservées, dans l'ordre de leur arrivée sur le bus 4, des données binaires en provenance de la source d'information 1, - un registre "nb-données" qui conserve un nombre entier correspondant au nombre de données binaires, dans le registre "données#_Primaires - un registre SO, - un registre Sl, - les matrices G'01 G'l, ... G #j, ... G'NL-1 - les matrices G" m, G",,, ... G'#-,,,, ... G" 01 0, NU 1, m On note que ces matrices peuvent être pré-stockées en mémoire morte ou calculées une seule fois et stockées en mémoire vive au début du pré-codage (ce qui augmente l'espace mémoire requis, mais réduit le temps de calcul de pré-codage). - la matrice Gint - les variables i, j, m, q La mémoire morte 6 est adaptée à conserver par exemple, dans des registres qui, par commodité, possèdent les mêmes noms que les données qu'ils conservent : - le programme de fonctionnement de l'unité centrale de traitement 5, dans un registre "program", - la longueur n du code de Hamming B, - la dimension de ce code k, - l'ensemble de positions d'information 1, pour le code Cl, - le nombre NL de lignes de positions d'information dans la représentation matricielle de l'ensemble 1, - le nombre de positions d'information nbp(i) sur chaque ligne i de la représentation matricielle de 1, - les matrices Go, Gi, ...Gi, ... G NL-1 L'unité centrale de traitement 5 est adaptée à mettre en #uvre le procédé de codage des séquences d'informations SO, à l'aide des matrices Gi, G'i, Gli,m, ainsi qu'il a été exposé plus haut, pour obtenir des mots de pré-code SI qui sont envoyés au codeur à produit direct. Plus précisément, un organigramme du procédé est illustré dans les figures 8 et 9. Dans cet exemple, les matrices du premier type Gi sont préalablement stockées en mémoire vive 6 dans une opération El, et les matrices du second type G",,,, sont calculées et stockées en mémoire vive 6 dans une opération E2. Pour chaque information entrante SO, le mot précodé est alors calculé par simple combinaison linéaire des matrices des premier et second type Gi, G'#,,, et transmis vers le codeur produit, dans une étape E3. Dans l'opération El, l'unité centrale 5 initialise à 0 les variables i et m, ainsi que toutes les matrices du second type G",,,n, (pour i et m compris entre 0 et k, dimension du code de Hamming B), qui sont stockées en mémoire vive 6, et stocke également en mémoire vive 6 les valeurs de n et k et l'ensemble des positions d'informations 1, ainsi que le nombre de lignes d'information NL et le nombrire de position d'information nbpffl sur chacune des NL lignes d'information de 1 (étape E10). Pour ce faire, les valeurs de n, k, 1, nbp(i) et de NL sont lues dans la mémoire morte 7. Tant que la variable i reste inférieure à la variable NL (test de comparaison El 1), une matrice Gi est lue dans la mémoire morte 7 et stockée en mémoire vive 6 (étape El 2). Puis la variable i est incrémentée dans une étape El 2. Lorsque la variable i atteint la valeur NL (dans l'étape El 1), c'est que NL matrices Gi ont été lues. La variable m, correspondant au numéro de colonne des positions d'information est alors portée à la valeur 1 dans l'étape E14, tandis que la variable i est ramenée à 0. Ces variables i, m sont stockées en mémoire vive 6 par l'unité centrale 5. Dans l'opération E2, tant que la valeur de la variable i reste inférieure à NL (test de comparaison E21), l'unité centrale 5 procède au calcul de la matrice du second type G"1,m, dans des étapes E22 à E28. Dans une étape E22, la variable de travail q est initialisée à 0 et stockée en mémoire vive 6 par l'unité centrale 5. Dans cette même étape E22, la matrice intermédiaire Gint est initialisée à la valeur de la matrice Gi. Tant que la variable q reste inférieure au minimum de m et de nbpffl (test de comparaison E23), une nouvelle matrice intermédiaire Gint est calculée (de manière itérative) dans une étape E24, détaillée figure 9. Comme on le voit sur cette figure, la matrice Gint est décalée vers la droite pour former la matrice G', dans une étape E240. Puis une variable de travail j est initialisée à 0 et stockée en mémoire vive 6 dans une étape E241. Tant que cette variable j reste inférieure à la valeur NL (test de comparaison E242), l'unité centrale 5 vient tester si, dans la matrice G',- obtenue à l'étape E240, l'élément de ligne j et colonne 0 est égal à la valeur 1, dans une étape de test E243. Dans le cas où cet élément, noté par commodité G76,O), est égal à la valeur 1, l'unité centrale 5 calcule pour la matrice intermédiaire Gint une nouvelle valeur égale à la somme modulo 2 des matrice Gli et Gj (matrice du premier type correspondant à la ligne j) dans une étape E244. Puis, le variable j est incrémentée dans une étape E245. Après l'étape E24 de calcul de la nouvelle matrice intermédiaire Gint, la variable q est incrémentée dans une étape E25. Lorsque la variable q atteint le plus petit de m et de nbp(i), la matrice du second type G"1,m est initialisée à la valeur de la matrice intermédiaire Gint dans une étape E26. Tant que la variable m reste inférieure au nombre de position d'information sur la ligne i noté nbp(i) (test de comparaison E27), une incrémentation de la variable m est réalisée dans une étape E28, et cette opération de calcul des matrices de second type G'#,m se poursuit. Lorsque m atteint la valeur nbpffl dans l'étape E27, la variable i est incrémentée dans une étape E29. L'ensemble des matrices des premier et second types se trouvent alors stockées en mémoire vive 6. Dans l'opération E3, tant qu'un nouveau codage est demandé (test E32), une lecture de l'information entrante SO est réalisée dans une opération E30, puis le calcul du mot de pré-code et le transfert de ce mot SI vers le codeur produit C sont réalisés dans une étape E31. Dans des variantes : - il existe un entier n supérieur ou égal à deux, tel que, au cours de l'opération de calcul, pour un élément r nul ou infini ou entier premier avec n, chaque diagonale de pente r est un mot d'un code BCH. - il existe un entier m supérieur ou égal à 2, un entier n égal à 2m - 1 et un entier k égal à n - m, tel que, au cours de l'opération de calcul, pour un élément e nul ou infini ou entier premier avec l'entier n, chaque diagonale de pente e est un mot d'un code de Hamming du type (n, k). - il existe un entier m supérieur ou égal à 2, un entier n égal à 2m - 1 à et un entier k égal à n - m, tel que, au cours de l'opération de calcul, pour au moins deux éléments p et q, avec p nul ou infini ou entier premier avec l'entier n et q nul ou infini ou entier premier avec l'entier n, chaque diagonale de pente p et chaque diagonale de pente q est un mot d'un même code de Hamming du type (n, k)- - il existe au moins un entier n supérieur ou égal à deux, tel que, au cours de l'opération de calcul, pour un élément s nul ou infini ou entier premier avec l'entier n, chaque diagonale de pente s est un mot du code de parité de type (n, n - 1). Dans une variante de procédé de pré-codage, on conserve dans la mémoire du pré-codeur l'ensemble des 486 matrices 26 x 26 représentant les 486 lignes du pré-codeur (676, 486) qu'il faut mettre en ceuvre pour satisfaire la condition expliquée au début de la description du procédé. Dans une autre variante, on utilise un codeur quelconque pour le code Abélien (961, 486). On consultera à ce propos le papier de Sakata (Tinding a minimal set of finear recurring relations capable of generating a given finite 2- dimensional array", dans Journal of Symbolic Computation, 1988, V, pp321- 337), ainsi que les références qui y sont mentionnées. On peut aussi utiliser une méthode de codage basée sur des idempotents minimaux mais le codeur n'est alors pas systématique. Après obtention du mot de code Abélien de longueur 961, on réduit le mot à la longueur 676 en ne conservant que les 26 x 26 positions dans le coin supérieur gauche de la représentation matricielle du mot. Il est clair également que, si dans la présente description, on a toujours utilisé le coin supérieur gauche des matrices pour des facilités de représentation, on peut tout aussi bien utiliser un autre coin de la matrice, sans modification substantielle du procédé. De la même manière, on a travaillé en privilégiant la première colonne des tableaux représentant les mots. On peut tout aussi bien privilégier la première ligne de ces tableaux et remplacer les matrices Gi associées aux éléments en positions (iO) du tableau représentant un mot, par des matrices Gj associées aux éléments en position U, 0) de ce tableau. Bien entendu, la présente invention ne se limite pas aux détails des formes de réalisation décrits ici à titre d'exemple, mais s'étend au contraire aux modifications à la portée de l'homme de l'art. REVENDICATIONS 1. Procédé de pré-codage d'une information représentative d'une grandeur physique et représentée par un ensemble (SO) de premiers symboles binaires, ledit procédé de pré-codage comportant une opération de calcul à partir dudit ensemble (SO) d'un mot binaire précodé (SI), ensemble de deuxièmes symboles binaires, dits précodés et prévus pour être disposés dans un tableau rectangulaire, caractérisé en ce que, étant donné un sous-code prédéterminé (Cl) d'un code prédéterminé (C) de type produit direct, le mot précodé (SI) lorsqu'il est considéré comme ensemble d'information pour le code (C), soit codé par un codeur du code (C) en un mot du sous-code (CI). 2. Procédé de pré-codage selon la revendication 1, caractérisé en ce que il comporte les caractéristiques suivantes : Il/ les symboles de l'ensemble (SO) de premiers symboles binaires apparaissent tels quels dans un sous ensemble des positions du tableau rectangulaire ou est disposé le mot binaire précodé (SI) 21 le pré-codage de l'ensemble (SO) pour obtenir le mot binaire précodé (SI) fait usage de matrices (Gi) d'un premier type pour les symboles de (SO) apparaissant dans les positions (i, 0) du tableau représentant le mot binaire précodé (SI), et de matrice (G'#,,- ) d'un second type pour les symboles de l'ensemble (SO) apparaissant dans les positions (i, j) du tableau représentant le mot binaire précodé (SI) telles quej>O. 3. Procédé selon la revendication 1, caractérisé en ce qu'il comporte les caractéristiques suivantes 11 les symboles de l'ensemble (SO) de premiers symboles binaires apparaissent tels quels dans un sous ensemble des positions du tableau rectangulaire ou est disposé le mot binaire précodé (SI) 21 le pré-codage de l'ensemble (SO) pour obtenir le mot binaire précodé (SI) fait usage de matrices (Gj) d'un premier type pour les symboles de (SO) apparaissant dans les positions (0, J) du tableau représentant le mot binaire précodé (SI), et de matrice (G'#j ) d'un second type pour les symboles de ij l'ensemble (SO) apparaissant dans les positions (i, j) du tableau représentant le mot binaire précodé (SI) telles que >0. 4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que le sous-code (CI) prédéterminé est un code abélien du code (C) à produit direct, ce code abélien (CI) étant défini comme le sous-ensemble de tous les mots du code produit (C) dont certaines diagonales prédéterminées sont également des mots du code cyclique (B) de type (n, k) tel que le code (C) est le produit direct du code cyclique (B) par lui-même, tout mot de ce code produit (C) pouvant être représenté par un matrice binaire (n x n).. 5. Procédé selon la revendication 4, caractérisé en ce que l'ensemble (1) de positions d'information (dont le nombre (ki) de positions est égal à la dimension (ki) du sous-code (CI pour ce code abélien (CI), est un sous- ensemble du coin supérieur gauche de taille k x k de l'ensemble des n x n positions. 6. Procédé selon la revendication 5, caractérisé en ce que il comporte la création et la mémorisation de matrices du premier type (Gi) en nombre (NQ égal au nombre de lignes de l'ensemble de positions d'information (1) dans le code (CI) choisi, cet ensemble de positions d'information (1) étant représenté sous forme matricielle, chaque matrice du premier type (Gi) étant définie comme la matrice binaire de type k x n des k premières lignes de la matrice n x n représentant le mot de code qui a un 'T' en position (i, 0) et des "0" dans les toutes les autres positions d'information de l'ensemble (1). 7. Procédé selon la revendication 6, caractérisé en ce que les matrices du second type (G"ij) destinées à être utilisées pour le pré-codage d'un symbole d'information apparaissant dans une position (i, j), avec un numéro de ligne i compris entre 0 et NL-1, sont obtenues par itération j fois et au maximum un nombre de fois (nbp(i égal au nombre de positions d'information sur ladite ligne i, de l'étape suivante, en prenant comme première matrice intermédiaire la matrice Gi - décalage de la matrice intermédiaire de une colonne vers la droite pour former une matrice décalée notée Gi, - et dans cette nouvelle matrice Gli, pour chaque ligne j comprise entre 0 et NUI (valeurs incluses), où un 'T' apparaît dans la première colonne d'indice zéro, ajout modulo 2 de la matrice Gj à cette nouvelle matrice Gï pour aboutir finalement à une nouvelle matrice intermédiaire, - la matrice intermédiaire finalement obtenue en fin d'itération étant la matrice du second type GliJ. 8. Procédé de transmission d'une information (SO) représentative d'une grandeur physique et représentée par des premiers symboles binaires, comportant , - une opération de pré-codage comprenant une opération de calcul de seconds symboles binaires, dits symboles binaires précodés, à partir de ladite information, lesdits symboles binaires précodés étant prévus pour être disposés dans un tableau matriciel, - une opération de codage par codeur (C) à produit direct comprenant une opération de calcul de troisièmes symboles binaires, dits symboles binaires codés, à partir desdits symboles binaires précodés, lesdits symboles binaires codés étant prévus pour être disposés dans un tableau matriciel, - une opération de transfert desdits symboles binaires codés, comprenant une opération de démodulation en des symboles dits symboles reçus, - une opération de correction desdits symboles reçus fournissant des symboles binaires dits symboles corrigés, et - une opération de décodage de l'information à partir desdits symboles corrigés, caractérisé en ce que pour chaque dit symbole binaire codé, il existe au moins trois diagonales distinctes dans le tableau, qui contiennent ce symbole binaire codé et qui, privées de ce symbole binaire codé, permettent encore, chacune à elle seule, de recalculer ledit symbole binaire codé. 9. Procédé selon la revendication 8, caractérisé en ce que l'opération de décodage utilise des entrées douces et produit des sorties douces.. 10 Procédé selon la revendication 8 ou 9, caractérisé en ce que l'opération de décodage est effectuée de manière itérative. 11. Procédé selon l'une quelconque des revendications 8 à 10, caractérisé en ce que, au cours de l'opération de calcul, il existe un code abélien tel que, pour toute information, le tableau de symboles binaires codés est un mot dudit code abélien. 12. Procédé selon l'une quelconque des revendications 8 à 11, caractérisé en ce qu'il existe un entier n supérieur ou égal à deux, tel que, au cours de l'opération de calcul, pour un élément r nul ou infini ou entier premier avec n, chaque diagonale de pente r est un mot d'un code BCH. 13. Procédé selon l'une quelconque des revendications 8 à 12, caractérisé en ce qu'il existe un entier m supérieur ou égal à 2, un entier n égal à 2m - 1 et un entier k égal à n - m, tel que, au cours de l'opération de calcul, pour un élément e nul ou infini ou entier premier avec l'entier n, chaque diagonale de pente e est un mot d'un code de Hamming du type (n, k). 14. Procédé selon l'une quelconque des revendications 8 à 13, caractérisé en ce qu'il existe un entier m supérieur ou égal à 2, un entier n égal à 2m - 1 à et un entier k égal à n - m, tel que, au cours de l'opération de calcul, pour au moins deux éléments p et q, avec p nul ou infini ou entier premier avec l'entier n et q nul ou infini ou entier premier avec l'entier n, chaque diagonale de pente p et chaque diagonale de pente q est un mot d'un même code de Hamming du type (n, k). 15. Procédé selon l'une quelconque des revendications 8 à 14, caractérisé en ce qu'il existe au moins un entier n supérieur ou égal à deux, tel que, au cours de l'opération de calcul, pour un élément s nul ou infini ou entier premier avec l'entier n, chaque diagonale de pente s est un mot du code de parité de type (n, n - 1). 16. Dispositif de pré-codage d'une information représentative d'une grandeur physique et représentée par un ensemble (SO) de premiers symboles binaires, ledit dispositif de pré-codage comportant des moyens de calcul à partir dudit ensemble (SO) d'un mot binaire précodé (SI), ensemble de deuxièmes symboles binaires, dits précodés et prévus pour être disposés dans un tableau rectangulaire, caractérisé en ce que, étant donné un sous-code prédéterminé (CI) d'un code prédéterminé (C) de type produit direct, le mot précodé (SI) lorsqu'il est considéré comme ensemble d'information pour le code (C), soit codé par un codeur du code (C) en un mot du sous-code (Cl). 17. Dispositif de pré-codage selon la revendication 16, caractérisé en ce que il comporte des moyens tels que l/ les symboles de l'ensemble (SO) de premiers symboles binaires apparaissent tels quels dans un sous ensemble des positions du tableau rectangulaire ou est disposé le mot binaire précodé (SI) 2/ le pré-codage de l'ensemble (SO) pour obtenir le mot binaire précodé (SI) fait usage de matrices (Gi) d'un premier type pour les symboles de (SO) apparaissant dans les positions (i, 0) du tableau représentant le mot binaire précodé (SI), et de matrice (G",,. ) d'un second type pour les symboles de l'ensemble (SO) apparaissant dans les positions (i, j) du tableau représentant le mot binaire précodé (SI) telles que j>O. 18. Dispositif selon la revendication 16, caractérisé en ce qu'il comporte des moyens tels que: l/ les symboles de l'ensemble (SO) de premiers symboles binaires apparaissent tels quels dans un sous ensemble des positions du tableau rectangulaire ou est disposé le mot binaire précodé (SI) 21 le pré-codage de l'ensemble (SO) pour obtenir le mot binaire précodé (SI) fait usage de matrices (Gj) d'un premier type pour les symboles de (SO) apparaissant dans les positions (0, j) du tableau représentant le mot binaire précodé (SI), et de matrice (G'#j ) d'un second type pour les symboles de l'ensemble (SO) apparaissant dans les positions (i, j) du tableau représentant le mot binaire précodé (SI) telles que >0. 19. Dispositif selon l'une quelconque des revendications 16 à 18, caractérisé en ce que le sous-code (Cl) prédéterminé est un code abélien du code (C) à produit direct, ce code abélien (Cl) étant défini comme le sous- ensemble de tous les mots du code produit (C) dont certaines diagonales prédéterminées sont également des mots du code cyclique (B) de type (n, k) tel que le code (C) est le produit direct du code cyclique (B) par lui-même, tout mot de ce code produit (C) pouvant être représenté par un matrice binaire (n x n).. 20. Dispositif selon la revendication 19, caractérisé en ce que l'ensemble (1) de positions d'information (dont le nombre (ki) de positions est égal à la dimension (ki) du sous-code (Cl pour ce code abélien (CI), est un sous- ensemble du coin supérieur gauche de taille k x k de l'ensemble des n x n positions. 21 . Dispositif selon la revendication 20, caractérisé en ce que il comporte des moyens de création et de mémorisation de matrices du premier type (Gi) en nombre (NQ égal au nombre de lignes de l'ensemble de positions d'information (1) dans le code (Cl) choisi, cet ensemble de positions d'information (1) étant représenté sous forme matricielle, chaque matrice du premier type (Gi) étant définie comme la matrice binaire de type k x n des k premières lignes de la matrice n x n représentant le mot de code qui a un 'T' en position (i, 0) et des "0" dans les toutes les autres positions d'information de l'ensemble (1). 22. Dispositif selon la revendication 21, caractérisé en ce qu'il comporte des moyens d'obtenir les matrices du second type (G"jj) destinées à être utilisées pour le pré-codage d'un symbole d'information apparaissant dans une position (i, j), avec un numéro de ligne i compris entre 0 et NL-1, par itération j fois et au maximum un nombre de fois (nbp(i égal au nombre de positions d'information sur ladite ligne i, de l'étape suivante, en prenant comme première matrice intermédiaire la matrice Gi: - décalage de la matrice intermédiaire de une colonne vers la droite pour former une matrice décalée notée Gi, - et dans cette nouvelle matrice Gli, pour chaque ligne j comprise entre 0 et NUI (valeurs incluses), où un 'T' apparaît dans la première colonne d'indice zéro, ajout modulo 2 de la matrice Gj à cette nouvelle matrice Gli. pour aboutir finalement à une nouvelle matrice intermédiaire, - la matrice intermédiaire finalement obtenue en fin d'itération étant la matrice du second type G"ij. 23. Dispositif de transmission d'une information représentative d'une grandeur physique et représentée par des premiers symboles binaires, comportant : - un moyen de codage par codeur à produit direct comprenant un moyen de calcul de deuxièmes symboles binaires, dits symboles binaires codés, à desdits symboles binaires précodés, lesdits symboles binaires étant prévus pour être disposés dans un tableau matriciel, - un moyen de transfert desdits symboles binaires codés, comportant un moyen de démodulation en des symboles dits symboles reçus, - un moyen de correction desdits symboles reçus adapté à fournir des symboles binaires dits symboles corrigés, et - un moyen de décodage de l'information à partir desdits symboles corrigés, caractérisé en ce que ledit moyen de calcul est adapté à ce que, pour chaque dit symbole binaire codé, il existe au moins trois diagonales distinctes dans le tableau, qui contiennent ce symbole binaire codé et qui, privées de ce symbole binaire codé, permettent encore, chacune à elle seule, de recalculer ledit symbole binaire codé. 24. Dispositif selon la revendication 23, caractérisé en ce que le moyen de décodage est adapté à mettre en #uvre un procédé de décodage à entrées douces et à sorties douces. 25. Dispositif selon la revendication 23 ou 24, caractérisé en ce que le moyen de décodage est adapté à mettre en #uvre un procédé de décodage itératif. 26. Dispositif selon l'une quelconque des revendications 23 à 25, caractérisé en ce qu'il existe un code abélien tel que, pour toute information, le tableau de symboles binaires calculés est un mot dudit code abélien. 27. Dispositif selon l'une quelconque des revendications 23 à 26, caractérisé en ce qu'il existe un entier n supérieur ou égal à deux, tel que pour un élément r nul ou infini ou entier premier avec n, chaque diagonale de pente r est un mot d'un code BCH. 28. Dispositif selon l'une quelconque des revendications 23 à 27, caractérisé en ce qu'il existe un entier m supérieur ou égal à 2, un entier n égal à 2m - 1 et un entier k égal à n - m, tel que, pour un élément e nul ou infini ou entier premier avec l'entier n, chaque diagonale de pente e est un mot d'un code de Hamming du type (n, k). 29. Dispositif selon l'une quelconque des revendications 23 à 28, caractérisé en ce qu'il existe un entier m supérieur ou égal à 2, un entier n égal à 2m - 1 à et un entier k égal à n - m, tel que pour au moins deux éléments p et q, avec p nul ou infini ou entier premier avec l'entier n et q nul ou infini ou entier premier avec l'entier n, chaque diagonale de pente p et chaque diagonale de pente q est un mot d'un même code de Hamming du type (n, k). 30. Dispositif selon l'une quelconque des revendications 23 à 29, caractérisé en ce qu'il existe un entier n supérieur ou égal à deux, tel que, pour un élément s nul ou infini ou entier premier avec l'entier n, chaque diagonale de pente s est un mot du code de parité de type (n, n - 1). 31. Caméra, caractérisée en ce qu'elle comporte un dispositif selon l'une quelconque des revendications 16 à 30. 32. Télécopieur, caractérisé en ce qu'il comporte un dispositif selon l'une quelconque des revendications 16 à 30. 33. Appareil photographique, caractérisé en ce qu'il comporte un dispositif selon l'une quelconque des revendications 16 à 30. 34. Ordinateur, caractérisé en ce qu'il comporte un dispositif selon l'une quelconque des revendications 16 à 30.