FR2675970A1 - Procede de codage convolutif correcteur d'erreurs pseudo-systematique, procede de decodage et dispositifs correspondants. - Google Patents
Procede de codage convolutif correcteur d'erreurs pseudo-systematique, procede de decodage et dispositifs correspondants. Download PDFInfo
- Publication number
- FR2675970A1 FR2675970A1 FR9105278A FR9105278A FR2675970A1 FR 2675970 A1 FR2675970 A1 FR 2675970A1 FR 9105278 A FR9105278 A FR 9105278A FR 9105278 A FR9105278 A FR 9105278A FR 2675970 A1 FR2675970 A1 FR 2675970A1
- Authority
- FR
- France
- Prior art keywords
- binary
- values
- coded
- source
- coding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/23—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
L'invention concerne un procédé de codage convolutif correcteur d'erreurs d'une séquence d'éléments binaires source dk , destinés à être transmis notamment dans un canal très bruité avec un rendement supérieur à 1/2, du type mettant en œuvre des moyens (32) de mémorisation provisoire des nu dernières valeurs d'une série de valeurs binaires intermédiaires (ak ), nu étant supérieur ou égal à deux, et associant à chacun desdits éléments binaires source dk deux éléments binaires codés Xk et Yk , l'un desdits éléments binaires codés Xk ou Yk étant égal audit élément binaire source dk et, le second desdits éléments binaires codés Yk ou Xk étant déterminé selon une première combinaison mathématique (31) d'un premier ensemble d'au moins deux valeurs binaires systématiquement sélectionnées parmi lesdites valeurs binaires intermédiaires ak , ..., ak - nu stockées dans lesdits moyens (32) de mémorisation provisoire, chaque valeur binaire intermédiaire ak étant déterminée selon une seconde combinaison mathématique (33) dudit élément binaire source dk et d'un second ensemble d'au moins une valeur binaire systématiquement sélectionnée parmi les valeurs intermédiaires précédentes ak - 1 , ..., ak - nu . Ce code peut être avantageusement poinçonné. Il permet dans ce cas d'obtenir de meilleures performances que les codes classiques, lorsque le rapport signal à bruit est de l'ordre de 2 à 3 dB.
Description
Procédé de codage convolutif correcteur d'erreurs pseudo-systématique, procédé de décodage et dispositifs correspondants.
Le domaine de l'invention est celui du codage de données numériques appartenant à une séquence de données source destinée à être transmise, ou diffusée, notamment en présence de bruit.
Plus précisément, l'invention concerne un nouveau procédé de codage convolutif correcteur d'erreurs, dont les performances sont supérieures à celles des codes classiques, en particulier lorsque le rapport signal à bruit à l'entrée du décodeur est faible et que le rendement du code est proche de 1.
Le procédé de l'invention s'applique avantageusement dans tous les cas où le canal de transmission est très bruité.
On connaît déjà de nombreux types de codage convolutif, et notamment les codes systématiques, ou codes séparables. Un exemple de codeur convolutif systématique connu est présenté en figure 1. Ces codes sont dits systématiques car ils assurent la transmission de la donnée d'origine non codée, accompagnée d'une redondance permettant de détecter et corriger les erreurs, à la réception.
Ainsi, en figure 1, le codeur systématique transmet la donnée source dk, et lui associe une redondance Rk, calculée en fonction d'un certain nombre des données source précédentes dk, ..., dk V. Ces données précédentes sont mémorisées dans un registre à décalage i1 comprenant v cellules 11A, 11B, et sont combinées par un OU exclusif 12 pour produire la redondance Rk.
De fanon connue, ces codes systématiques ne sont pas efficaces, et ne sont pas utilisés. On préfère en effet faire appel à des codeurs convolutifs tels que celui représenté en figure 2, qui associe à chaque donnée source dk deux valeurs distinctes Xk et Yk, obtenues par les sommes modulo 2 (OU exclusif) 21 et 22 de cette donnée source dk avec l'une au moins des données source précédentes dk l, dk-2 > ... mémorisées dans les cellules 23A, 23B d'un registre à décalage 23.
L'invention a notamment pour objectif de fournir un procédé de codage encore plus efficace que ces codes de types connus à complexité équivalente.
Plus précisément, un objectif de l'invention est de fournir un nouveau procédé de codage convolutif très performant, en terme de taux d'erreurs, en présence d'un bruit de transmission élevé, en particulier pour des rendements proches de 1. Le procédé de codage selon l'invention permet ainsi d'assurer des transmissions avec de très bons résultats, même lorsque le rapport signal à bruit est de l'ordre de 2 à 3 dB.
L'invention a également pour objectif de fournir un tel procédé de codage, présentant une grande efficacité de correction des erreurs de transmission, à un débit de transmission aussi élevé que celui permis par les codes classiques.
De façon complémentaire, un autre objectif de l'invention est de fournir un tel procédé de codage permettant, à performances égales par rapport aux procédés connus, de réduire la puissance mise en oeuvre à l'émission, par exemple de20à40 %.
Un autre objectif de l'invention est de fournir un tel procédé de codage ne nécessitant pas de calculs complexes, ni au codage, ni au décodage, et en particulier un procédé très proche, en terme de complexité, de ceux connus.
L'invention a également pour objectif de fournir un tel procédé de codage, aisément implantable industriellement, tant dans des codeurs que dans des décodeurs. Notamment, un objectif de l'invention est de fournir un tel procédé, qui puisse être mis en oeuvre dans un circuit intégré, à faible coût.
L'invention a bien sûr pour autre objectif de fournir un procédé de décodage correspondant, ainsi que des dispositifs mettant en oeuvre ces procédés de codage et de décodage.
Ces objectifs, ainsi que d'autres qui apparaîtront par la suite, sont atteints selon l'invention à l'aide d'un procédé de codage convolutif correcteur d'erreurs d'une séquence d'éléments binaires source dk, du type mettant en oeuvre des moyens de mémorisation provisoire des v dernières valeurs d'une série de valeurs binaires intermédiaires (ak), v étant supérieur ou égal à deux, et associant à chacun desdits éléments binaires source dk deux éléments binaires codés Xk et Yk , l'un desdits éléments binaires codés Xk ou Yk étant égal audit élément binaire source dk et, le second desdits éléments binaires codés Yk ou Xk étant déterminé selon une première combinaison mathématique d'un premier ensemble d'au moins deux valeurs binaires systématiquement sélectionnées parmi lesdites valeurs binaires intermédiaires ak,..., ak V stockées dans lesdits moyens de mémorisation provisoire, chaque valeur binaire intermédiaire ak étant déterminée selon une seconde combinaison mathématique dudit élément binaire source dk et d'un second ensemble d'au moins une valeur binaire systématiquement sélectionnée parmi les valeurs intermédiaires précédentes a1,..., ak
Ce procédé de codage assure donc la transmission systématique de la valeur source dk, sans transformation. On le désignera donc par la suite par le terme "code pseudo-systématique", afin de rappeler son caractère systématique, tout en le distinguant des codes systématiques connus.
Ce procédé de codage assure donc la transmission systématique de la valeur source dk, sans transformation. On le désignera donc par la suite par le terme "code pseudo-systématique", afin de rappeler son caractère systématique, tout en le distinguant des codes systématiques connus.
La caractéristique essentielle du procédé de codage de l'invention est de tenir compte d'une série de valeurs intermédiaires (ak), obtenues par une sorte de contre-réaction sur les valeurs source dk. Au contraire, tous les procédés de codage convolutif connus prennent en compte directement la série des valeurs source précédentes.
De façon avantageuse, ladite première combinaison mathématique et/ou ladite seconde combinaison mathématique sont des opérations de somme modulo 2.
En effet, ce type d'opérations est particulièrement simple à mettre en oeuvre, et se décode directement par la réalisation d'une seconde somme modulo 2.
Dans un mode de réalisation préférentiel de l'invention, le codage comprend une étape de poinçonnage, un desdits éléments binaires codés Xk ou étant sélectivement non-transmis, lors d'instants de transmission sélectivement choisis.
Avantageusement, le procédé de l'invention comprend au moins deux chaînes de codage distinctes et sélectivement activables, ledit premier ensemble et/ou ledit second ensemble de valeurs binaires systématiquement sélectionnées étant distincts pour chacune des dites chaînes de codage.
Lorsqu'un poinçonnage est réalisé, il est ainsi particulièrement avantageux que le procédé comprenne au moins une chaîne de codage selon laquelle ledit élément binaire codé Xk est égal audit éléments binaires source dk, et au moins une chaîne de codage selon laquelle ledit élément binaire codé Yk est égal audit élément binaire source dk. Lorsqu'un seul desdits éléments binaires codés Xk ou est transmis, la chaîne de codage activée est une chaîne de codage selon laquelle l'élément binaire codé transmis Xk ou Yk est égal audit élément binaire source dk.
En effet, il est nécessaire de faire en sorte que la donnée source dk soit toujours transmise, pour obtenir un taux d'erreur minimal du code pseudosystématique de l'invention.
De façon préférentielle, ledit premier ensemble de valeurs binaires systématiquement sélectionnées parmi lesdites valeurs intermédiaires pour ladite première combinaison mathématique comprend au moins la première valeur ak et la dernière valeur ak s de ladite série de valeurs binaires intermédiaires (au).
De même, il est avantageux que ledit second ensemble de valeurs binaires systématiquement sélectionnées parmi lesdites valeurs intermédiaires pour ladite seconde combinaison mathématique comprend au moins la dernière valeur ak v de ladite série de valeurs binaires intermédiaires (au).
L'invention concerne également un procédé de décodage de données codées tel que décrit ci-dessous. De façon avantageuse, ce procédé de décodage comprend les étapes suivantes:
- estimation desdites valeurs binaires intermédiaires ak, à partir des éléments binaires codés reçus X'k et/ou Y'k' selon un algorithme de décision à maxxnum de vraisemblance;
- mémorisation d'une série des dites valeurs binaires intermédiaires ak,..., akv;;
- détermination des éléments binaires source dlp selon une combinaison mathématique inverse de ladite seconde combinaison mathématique, à partir desdites valeurs binaires intermédiaires au, ..., ak
Dans un mode de réalisation particulier de l'invention, ledit algorithme de décision à maximum de vraisemblance comprend une étape de décision selon un algorithme du type de l'algorithme de Viterbi.
- estimation desdites valeurs binaires intermédiaires ak, à partir des éléments binaires codés reçus X'k et/ou Y'k' selon un algorithme de décision à maxxnum de vraisemblance;
- mémorisation d'une série des dites valeurs binaires intermédiaires ak,..., akv;;
- détermination des éléments binaires source dlp selon une combinaison mathématique inverse de ladite seconde combinaison mathématique, à partir desdites valeurs binaires intermédiaires au, ..., ak
Dans un mode de réalisation particulier de l'invention, ledit algorithme de décision à maximum de vraisemblance comprend une étape de décision selon un algorithme du type de l'algorithme de Viterbi.
Par ailleurs, l'invention concerne aussi un dispositif de codage selon le procédé décrit, comprenant un registre à décalage à v cellules, pour la mémorisation provisoire des dites v dernières valeurs de la série des valeurs binaires intermédiaires (ak), et des moyens de sommation modulo 2, pour le calcul des dites première et seconde combinaisons mathématiques, ainsi qu'un dispositif de décodage, comprenant des moyens de décodage selon un algorithme de décision à maximum de vraisemblance, un registre à décalage à v cellules, pour la mémorisation provisoire des dites v dernières valeurs de la série des valeurs binaires intermédiaires (ak), et des moyens de sommation modulo 2, pour le calcul de ladite combinaison mathématique inverse.
D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description suivante d'un mode de réalisation préférentiel de l'invention, donné à titre illustratif et non limitatif, et des dessins annexés dans lesquels
- les figures 1 et 2 sont les schémas synoptiques de chaînes de codage de types connus, déjà décrites en préambule;
les figures 3 et 4 présentent deux exemples de chaînes de codage "pseudo- systématique" selon l'invention, ayant une longueur de contrainte v = 2 et un rendement R = 1/2, et les figures 5 et 6 les chaînes de décodage correspondantes;
- la figure 7 donne un exemple de masque de poinçonnage, ayant un rendement de 7/8, qui peut être utilisé après le codage selon les chaînes de codage des figures 3 et 4;;
- la figure 8 présente une comparaison des résultats obtenus avec un codeur classique, du type de celui décrit en figure 2, et avec un codeur selon l'invention, tel que ceux des figures 3 et 4, après application du masque de poinçonnage de la figure 7.
- les figures 1 et 2 sont les schémas synoptiques de chaînes de codage de types connus, déjà décrites en préambule;
les figures 3 et 4 présentent deux exemples de chaînes de codage "pseudo- systématique" selon l'invention, ayant une longueur de contrainte v = 2 et un rendement R = 1/2, et les figures 5 et 6 les chaînes de décodage correspondantes;
- la figure 7 donne un exemple de masque de poinçonnage, ayant un rendement de 7/8, qui peut être utilisé après le codage selon les chaînes de codage des figures 3 et 4;;
- la figure 8 présente une comparaison des résultats obtenus avec un codeur classique, du type de celui décrit en figure 2, et avec un codeur selon l'invention, tel que ceux des figures 3 et 4, après application du masque de poinçonnage de la figure 7.
Dans les différents exemples décrits en relation avec les figures, on présente des codeurs convolutifs de longueur de contrainte v = 2. Cette longueur de contrainte représente le nombre d'éléments mémoire, et par exemple de bascules, utilisés dans le registre à décalage qui permet de mémoriser une série de valeurs prises en compte pour le codage.
ll est clair que la valeur v = 2 n'est prise qu'à titre d'exemple, et qu'elle peut être plus élevée. On sait en effet que plus v est grand, meilleures sont les performances du code, les décodeurs voyant en contre-partie leur complexité augmenter. Pour des transmissions particulières, telles que les liaisons spatiales, on peut par exemple choisir une longueur de contrainte v = 6.
Par ailleurs, bien que le mode de réalisation préférentiel décrit concerne le codage d'éléments source binaires, il est à noter que le procédé de l'invention peut être aisément généralisé au codage de tout type d'éléments source numériques, ou n-uplets, n étant supérieur ou égal à deux.
Ainsi qu'on le constate en figure 2, déjà commentée, les codeurs convolutifs classiques calculent, pour chaque valeur source dk, deux données codées Xk et à l'aide d'une combinaison 21, 22 de la valeur source dk avec au moins une des valeurs sources dk l, dk 2 mémorisées dans les cellules 23A et 23B du registre à décalage 23.
On sait que ce type de codage s'avère beaucoup plus efficace que le codage systématique de la figure 1, selon lequel la donnée source dk est systématiquement transmise, conjointement à une donnée Rk calculée de façon similaire à Y Xk ou
Toutefois, contrairement aux idées reçues, l'inventeur de la présente invention a montré qu'il était très intéressant de transmettre systématiquement la donnée source dl, à partir du moment où la donnée conjointe était calculée d'une façon nouvelle.
Toutefois, contrairement aux idées reçues, l'inventeur de la présente invention a montré qu'il était très intéressant de transmettre systématiquement la donnée source dl, à partir du moment où la donnée conjointe était calculée d'une façon nouvelle.
En effet, on constate que, de façon surprenante, le taux d'erreurs de transmission est très fortement abaissé lorsque la donnée conjointe n'est pas calculée directement sur une série des données sources précédentes du 1, du 2, ....
mais sur une série de données intermédiaires ak, obtenues à partir de ces données source.
En d'autres termes, ainsi qu'on peut le constater en figure 3, un codeur
selon l'invention associe à chaque donnée source dk deux valeurs codées Xk et
La donnée Xk est systématiquement prise égale à la valeur source dk.
selon l'invention associe à chaque donnée source dk deux valeurs codées Xk et
La donnée Xk est systématiquement prise égale à la valeur source dk.
La donnée Yk est calculée, de façon classique, à l'aide d'une combinaison
31 d'au moins deux éléments binaires contenus dans un registre à décalage 32. En revanche, ce registre 32 ne contient pas, dans ces cellules 32A et 32B, les valeurs
source précédentes dut 1, dk 2, mais des valeurs intermédiaires distinctes au 1, au 2.
31 d'au moins deux éléments binaires contenus dans un registre à décalage 32. En revanche, ce registre 32 ne contient pas, dans ces cellules 32A et 32B, les valeurs
source précédentes dut 1, dk 2, mais des valeurs intermédiaires distinctes au 1, au 2.
La caractéristique essentielle de l'invention est en effet de déterminer la valeur codée de Yk à partie de valeurs particulières ak obtenues par une combinai
son mathématique, et par exemple un OU exclusif 33, de la donnée source dk avec l'une au moins des valeurs intermédiaires précédentes au 2.
son mathématique, et par exemple un OU exclusif 33, de la donnée source dk avec l'une au moins des valeurs intermédiaires précédentes au 2.
Cela revient, en quelque sorte, à effectuer une contre-réaction sur les valeurs sources dk. ll apparaît que cette contre-réaction permet d'obtenir des performances supérieures à celles des codeurs classiques, tout en ne nécessitant que l'ajout d'un OU exclusif 33 à ces codeurs.
I1 semble que ce gain puisse notamment être attribué au fait que les emplacements des erreurs de transmission dans une séquence de données reçues ne sont que rarement complètement décorrélées. L'application d'une combinaison par OU exclusif sur ces données peut alors entraîner l'annulation de certaines de ces erreurs.
La figure S est le schéma synoptique d'un décodeur correspondant au codeur de la figure 3. Les données reçues X'k et Y'k par ce décodeur sont en général perturbées par le bruit de transmission. On a donc:
X'k = Xk + bruit
Y'k = y + bruit
Le décodage du code transmis par le codeur de la figure 3 s'effectue en deux étapes. Dans un premier temps, un module 51 de décision fournit les valeurs estimées ak, à partie des données reçues X'k et Y'k, selon un algorithme de décodage classique d'un code convolutif, tel que par exemple l'algorithme de
Viterbi.
X'k = Xk + bruit
Y'k = y + bruit
Le décodage du code transmis par le codeur de la figure 3 s'effectue en deux étapes. Dans un premier temps, un module 51 de décision fournit les valeurs estimées ak, à partie des données reçues X'k et Y'k, selon un algorithme de décodage classique d'un code convolutif, tel que par exemple l'algorithme de
Viterbi.
Dans un second temps, les données source dk sont recalculées à partir des valeurs ak estimées par le module 51 de décision. Les valeurs ak étant mémorisées dans un registre à décalage 52 à deux cellules 52A et 52B, comme lors du codage, la valeur dk est obtenue par une opération 53 de somme modulo 2 sur les valeurs du registre, aux mêmes lieux et places que ceux qui ont servi à calculer Xk dans le codeur.
On constate donc qu'un décodeur selon l'invention ne nécessite que l'ajout d'un registre à décalage et de moyens de sommation modulo 2, par rapport aux décodeurs classiques. Il peut donc aisément être implanté industriellement, notamment sur circuit intégré, sans surcoût par rapport aux décodeurs connus. En revanche, l'invention permet de réduire le coût des codeurs, en permettant de réduire la puissance d'émission, puisque son efficacité est supérieure ainsi qu'on le verra par la suite.
La figure 4 présente un autre type de codeur selon l'invention, dans lequel la donnée Yk est égale à la donnée source dk, et la donnée codée Xk est calculée de façon similaire à la donnée Yk de la figure 3.
Toutefois, dans ce second cas, la donnée ak tient compte des valeurs dk, ak l et ak 2 mémorisées dans les cellules 42A et 42B d'un registre à décalage 42, combinées par le OU exclusif 41, et non plus seulement des valeurs dk et au 2.
De même, Yk est obtenue en ne tenant compte que des valeurs ak et au 2, additionnées par le OU exclusif 43, et non plus des trois valeurs ak, ak l et au 2.
Plus généralement, toute autre combinaison de valeurs intermédiaires peut être utilisée, tant pour le calcul des valeurs ak que des valeurs Xk, notamment pour des codeurs à longueur de contrainte v supérieure à 2.
Préférentiellement, on choisit ces combinaisons de façon que ak tienne compte au moins de ak vu c'est-à-dire de la valeur intermédiaire la plus ancienne, et que Xk (ou Yk) tienne compte d'au moins ak et
La figure 6 présente le décodeur correspondant au codeur de la figure 4.
La figure 6 présente le décodeur correspondant au codeur de la figure 4.
Son fonctionnement est clairement similaire à celui décrit en relation avec la figure 5. Seule diffère l'opération de combinaison 61, qui tient compte des trois valeurs ak, ak 1 et au 2 de façon symétrique au codage réalisé par le codeur de la figure 4.
Dans les exemples décrits, les opérations de combinaison sont des sommes modulo 2. I1 est clair, cependant, que d'autres types de combinaisons mathématiques peuvent être utilisées, notamment pour des longueurs de contrainte supérieures à 2, à partir du moment où celles-ci sont réversibles, afin de permettre le décodage.
I1 peut être bien sûr prévu d'utiliser, dans un même codeur, plusieurs chaînes de codage distinctes. La sélection d'une chaîne de codage peut par exemple se faire en fonction du type de données source à transmettre, ou du taux d'erreur mesuré pour chaque chaîne, dans des conditions particulières. Dans la pratique, il est clair que l'existence de plusieurs chaînes de codage n'entraîne pas la duplication du registre à décalage 32, 42 et des moyens de sommation 31, 33, 41, 43. En effet, seules les entrées de ces moyens de sommation doivent vaner.
Le principe de codage de l'invention permet par ailleurs le poinçonnage.
I1 apparaît même qu'il est particulièrement bien adapté aux codes poinçonnés de rendement supérieur à 1/2. Le rendement d'un code est le rapport entre les données à coder et les données émises. Il définit le taux de redondance, et est directement lié à la qualité du code, en termes de correction d'erreurs.
Les codes poinçonnés sont obtenus à partir d'un code non poinçonné par effacement, c'est-à-dire non-transmission périodique des valeurs Xk ou Yk, suivant un "masque" de poinçonnage approprié. La figure 7 donne, à titre d'exemple, le masque de poinçonnage généralement utilisé pour un rendement de 7/8 et une longueur de contrainte v égale à 2. Selon ce masque, seules les données Xk ou correspondant à 1 sont transmises. Ainsi, pour une série de données Xk, Xk+l,..., Xk+6 et Yk, Yak+1 ..., Yk+6 déterminée, seules seront transmises les données
Xk Xk+2 Xk+3 Xk+4 Xk+5 Xk+6
Yk Yk+l
Pour tirer du principe de codage de l'invention les meilleures performances, il est nécessaire de faire en sorte que la donnée source dk soit toujours transmise.Cela impose donc d'utiliser au moins deux codeurs distincts, lorsque l'on réalise un poinçonnage, l'un assurant la transmission Xk = dk, et l'autre k = dk, tels que par exemple les codeurs des figures 3 et 4.
Xk Xk+2 Xk+3 Xk+4 Xk+5 Xk+6
Yk Yk+l
Pour tirer du principe de codage de l'invention les meilleures performances, il est nécessaire de faire en sorte que la donnée source dk soit toujours transmise.Cela impose donc d'utiliser au moins deux codeurs distincts, lorsque l'on réalise un poinçonnage, l'un assurant la transmission Xk = dk, et l'autre k = dk, tels que par exemple les codeurs des figures 3 et 4.
En d'autres termes, il faut coder les données à transmettre en commutant, suivant l'ordre donné par le masque de poinçonnage, entre le codeur correspondant à Xk = dk (figure 3) et le codeur correspondant à k = dk (figure 4). La même commutation doit évidemment être effectuée sur les deux décodeurs correspondant à l'émission de Xk = dk (figure 5) ou de k = dk (figure 6).
Bien sûr, pour que cette commutation soit efficace, il faut que les deux codeurs soient distincts, c'est-à-dire que la valeur intermédiaire ak et/ou la donnée codée Xk ou Yk soient obtenues par des combinaisons différentes.
La figure 8 présente le résultat comparé de simulations effectuées d'une part (courbe 81) sur le décodage, selon l'algorithme de Viterbi, de données émises de manière classique par un codeur standard tel que représenté en figure 2, avec une longueur de contrainte v = 2 et un rendement de 7/8, et suivant le masque de poinçonnage donné en figure 6, et d'autre part (courbe 82) sur le décodage du code selon l'invention de mêmes longueur de contrainte et rendement, tel que décrit plus haut.
L'abscisse de cette figure 8 représente le rapport signal à bruit EJNo où:
- ex est l'énergie reçue par bit utile,
- No est la densité spectrale monolatérale de bruit dans le cas d'un canal gaussien.
- ex est l'énergie reçue par bit utile,
- No est la densité spectrale monolatérale de bruit dans le cas d'un canal gaussien.
L'ordonnée représente le taux d'erreurs en sortie du décodeur, après qu'un décodage en décisions fines sur 3 bits a été effectué.
La courbe 84 fournit le taux d'erreur d'une transmission de données non codées sur un canal à bruit gaussien. A taux d'erreur donné (par exemple 104), la différence entre l'abscisse correspondant à cette courbe 84 et celle correspondant à la courbe obtenue avec codage, exprimée en dB, représente le gain de codage.
Cet exemple de résultats met clairement en évidence que le taux d'erreurs en sortie du décodeur du code selon l'invention est borné par le taux d'erreurs sur les données présentées à l'entrée de ce décodeur. Cette borne correspond ici à l'asymptote 83 obtenue par décalage horizontal de la courbe donnant le taux d'erreurs sans codage d'une valeur égale à 1 10.1Oglo(R)lu où R représente le rendement du code.
Dans le cas décrit, cette borne est égale à 1 10.1Oglo(7/8) 1 = 0,58 dB.
En revanche, on constate que pour le codage classique (81), le taux d'erreur s'avère très élevé, dès que le rapport signal à bruit est en deçà de 3 dB.
De nombreuses autres simulations, avec des longueurs de contraintes et/ou des rendements différents de ceux présentés en figure 8 ont permis de constater que dans tous les cas de figures, le procédé de codage selon l'invention présente des performances supérieures aux codeurs convolutifs classiques équivalents (en terme de rendement et de longueur de contrainte) notamment lorsque le signal reçu est très bruité (EbiNo inférieur ou égal à 3 dB).
Claims (11)
1. Procédé de codage convolutif correcteur d'erreurs d'une séquence d'éléments binaires source du type mettant en oeuvre des moyens (32; 42) de mémorisation provisoire des v dernières valeurs d'une série de valeurs binaires intermédiaires (ak), v étant supérieur ou égal à deux, et associant à chacun desdits éléments binaires source dk deux éléments binaires codés Xk et caractérisé en ce que l'un desdits éléments binaires codés Xk ou Yk est égal audit élément binaire source dk, et en ce que le second desdits éléments binaires codés Yk ou Xk est déterminé selon une première combinaison mathématique (31 ; 43) d'un premier ensemble d'au moins deux valeurs binaires systématiquement sélectionnées parmi lesdites valeurs binaires intermédiaires ak, ..., ak v stockées dans lesdits moyens (32; 42) de mémorisation provisoire, chaque valeur binaire intermédiaire ak étant déterminée selon une seconde combinaison mathématique (33 ; 41) dudit élément binaire source dk et d'un second ensemble d'au moins une valeur binaire systématiquement sélectionnée parmi les valeurs intermédiaires précédentes aki,..., ak V
2. Procédé selon la revendication 1, caractérisé en ce que ladite première combinaison mathématique (31; 43) et/ou ladite seconde combinaison mathématique (33; 41) sont des opérations de somme modulo 2.
3. Procédé selon l'une quelconque des revendications 1 ou 2 caractérisé en ce qu'il comprend une étape de poinçonnage, un desdits éléments binaires codés
Xk ou Yk étant sélectivement non-transmis, lors d'instants de transmission sélectivement choisis.
4. Procédé selon l'une quelconque des revendications 1 à 3 caractérisé en ce qu'il comprend au moins deux chaînes de codage distinctes et sélectivement activables, ledit premier ensemble et/ou ledit second ensemble de valeurs binaires systématiquement sélectionnées étant distincts pour chacune des dites chaînes de codage.
5. Procédé selon les revendications 3 et 4 caractérisé en ce qu'il comprend au moins une chaîne de codage selon laquelle ledit élément binaire codé Xk est égal audit éléments binaires source dl, et au moins une chaîne de codage selon laquelle ledit éIément binaire codé Yk est égal audit élément binaire source et en ce que, lorsqu'un seul desdits éléments binaires codés Xk ou Yk est transmis, la chaîne de codage activée est une chaîne de codage selon laquelle l'élément binaire codé transmis Xk ou Yk est égal audit élément binaire source dk.
6. Procédé selon l'une quelconque des revendications 1 à 5 caractérisé en ce que ledit premier ensemble de valeurs binaires systématiquement sélectionnées parmi lesdites valeurs intermédiaires pour ladite première combinaison mathémati que comprend au moins la première valeur ak et la dernière valeur ak V de ladite série de valeurs binaires intermédiaires (au).
7. Procédé selon l'une quelconque des revendications 1 à 6 caractérisé en ce que ledit second ensemble de valeurs binaires systématiquement sélectionnées parmi lesdites valeurs intermédiaires pour ladite seconde combinaison mathémati que comprend au moins la dernière valeur ak V de ladite série de valeurs binaires intermédiaires (au).
8. Procédé de décodage d'une séquence d'éléments binaires reçus X'k et/ou
Y'k codés selon le procédé de rune quelconque des revendications 1 à 7, caractérisé en ce qu'il comprend les étapes suivantes:
- estimation (51) desdites valeurs binaires intermédiaires ak, à partir des éléments binaires codés reçus X'k et/ou Y'k, selon un algorithme de décision à maximum de vraisemblance;
- mémorisation (52) d'une série desdites valeurs binaires intermédiaires ak, ..., akV ;
- détermination des éléments binaires source dk, selon une combinaison mathématique (53) inverse de ladite seconde combinaison mathématique, à partir desdites valeurs binaires intermédiaires aI,..., ak V.
9. Procédé selon la revendication 8 caractérisé en ce que ledit algorithme de décision à maximum de vraisemblance comprend une étape de décision selon un algorithme du type de l'algorithme de Viterbi.
10. Dispositif de codage selon le procédé de l'une quelconque des revendications 2 à 7 caractérisé en ce qu'il comprend un registre à décalage (32; 42) à v cellules (32A,32B; 42A,42B), pour la mémorisation provisoire des dites v dernières valeurs de la série des valeurs binaires intermédiaires (ak), et des moyens (31,33 ; 41,43) de sommation modulo 2, pour le calcul desdites première et seconde combinaisons mathématiques.
11. Dispositif de décodage selon le procédé de l'une quelconque des revendications 8 ou 9 caractérisé en ce qu'il comprend des moyens (51) de décodage selon un algorithme de décision à maximum de vraisemblance, un registre à décalage (52) à v cellules (52A,S2B), pour la mémorisation provisoire desdites v dernières valeurs de la série des valeurs binaires intermédiaires (ak), et des moyens (61) de sommation modulo 2, pour le calcul de ladite combinaison mathématique inverse.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9105278A FR2675970B1 (fr) | 1991-04-23 | 1991-04-23 | Procede de codage convolutif correcteur d'erreurs pseudo-systematique, procede de decodage et dispositifs correspondants. |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9105278A FR2675970B1 (fr) | 1991-04-23 | 1991-04-23 | Procede de codage convolutif correcteur d'erreurs pseudo-systematique, procede de decodage et dispositifs correspondants. |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2675970A1 true FR2675970A1 (fr) | 1992-10-30 |
FR2675970B1 FR2675970B1 (fr) | 1993-08-06 |
Family
ID=9412372
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR9105278A Expired - Lifetime FR2675970B1 (fr) | 1991-04-23 | 1991-04-23 | Procede de codage convolutif correcteur d'erreurs pseudo-systematique, procede de decodage et dispositifs correspondants. |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2675970B1 (fr) |
Cited By (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6304996B1 (en) | 1999-03-08 | 2001-10-16 | General Electric Company | High-speed turbo decoder |
US6400290B1 (en) | 1999-11-29 | 2002-06-04 | Altera Corporation | Normalization implementation for a logmap decoder |
US6516437B1 (en) | 2000-03-07 | 2003-02-04 | General Electric Company | Turbo decoder control for use with a programmable interleaver, variable block length, and multiple code rates |
US6594792B1 (en) | 1999-04-30 | 2003-07-15 | General Electric Company | Modular turbo decoder for expanded code word length |
US6715120B1 (en) | 1999-04-30 | 2004-03-30 | General Electric Company | Turbo decoder with modified input for increased code word length and data rate |
US6954832B2 (en) | 2002-05-31 | 2005-10-11 | Broadcom Corporation | Interleaver for iterative decoder |
US7032164B2 (en) | 2002-05-31 | 2006-04-18 | Broadcom Corporation | Efficient design to calculate extrinsic information for soft-in-soft-out (SISO) decoder |
US7062700B2 (en) | 2002-05-31 | 2006-06-13 | Broadcom Corporation | 16 QAM and 16 APSK TTCM (Turbo Trellis Coded Modulation) with minimum bandwidth efficiency of 3 bit/s/Hz using a rate 2/4 constituent encoder |
US7065695B2 (en) | 2002-05-31 | 2006-06-20 | Broadcom Corporation | Metric calculation design for variable code rate decoding of broadband trellis, TCM, or TTCM |
US7085985B2 (en) | 2002-05-31 | 2006-08-01 | Broadcom Corporation | Close two constituent trellis of a turbo encoder within the interleave block |
US7093187B2 (en) | 2002-05-31 | 2006-08-15 | Broadcom Corporation | Variable code rate and signal constellation turbo trellis coded modulation codec |
US7107512B2 (en) | 2002-05-31 | 2006-09-12 | Broadcom Corporation | TTCM decoder design |
US7111226B1 (en) | 2002-05-31 | 2006-09-19 | Broadcom Corporation | Communication decoder employing single trellis to support multiple code rates and/or multiple modulations |
US7137059B2 (en) | 2002-11-20 | 2006-11-14 | Broadcom Corporation | Single stage implementation of min*, max*, min and /or max to perform state metric calculation in SISO decoder |
US7188301B1 (en) | 2002-05-31 | 2007-03-06 | Broadcom Corporation | Parallel concatenated turbo code modulation encoder |
US7203893B2 (en) * | 2003-05-05 | 2007-04-10 | Her Majesty The Queen In Right Of Canada As Represented By The Minister Of Indusrty, Though The Communications Research Centre Canada | Soft input decoding for linear codes |
US7210092B1 (en) | 2002-05-31 | 2007-04-24 | Broadcom Corporation | Symbol by symbol variable constellation type and/or mapping capable communication device |
US7221714B2 (en) | 2003-05-12 | 2007-05-22 | Broadcom Corporation | Non-systematic and non-linear PC-TCM (Parallel Concatenate Trellis Coded Modulation) |
US7239667B2 (en) | 2003-03-18 | 2007-07-03 | Broadcom Corporation | 8 PSK rotationally invariant turbo trellis coded modulation without parallel transitions |
US7321633B1 (en) | 2002-05-31 | 2008-01-22 | Broadcom Corporation | Determination of variable code rates for a rate control sequence |
US7360146B1 (en) | 2002-08-15 | 2008-04-15 | Broadcom Corporation | Inverse function of min*:min*- (inverse function of max*:max*-) |
US7383485B2 (en) | 2000-09-12 | 2008-06-03 | Broadcom Corporation | Fast min*- or max*-circuit in LDPC (low density parity check) decoder |
US7395487B2 (en) | 2002-08-15 | 2008-07-01 | Broadcom Corporation | Common circuitry supporting both bit node and check node processing in LDPC (Low Density Parity Check) decoder |
US7409628B2 (en) | 2002-08-15 | 2008-08-05 | Broadcom Corporation | Efficient design to implement LDPC (Low Density Parity Check) decoder |
US7447981B2 (en) | 2005-04-01 | 2008-11-04 | Broadcom Corporation | System correcting random and/or burst errors using RS (Reed-Solomon) code, turbo/LDPC (Low Density Parity Check) code and convolutional interleave |
US7447985B2 (en) | 2002-08-15 | 2008-11-04 | Broadcom Corporation | Efficient design to implement min**/min**- or max**/max**- functions in LDPC (low density parity check) decoders |
US7447984B2 (en) | 2005-04-01 | 2008-11-04 | Broadcom Corporation | System correcting random and/or burst errors using RS (Reed-Solomon) code, turbo/LDPC (Low Density Parity Check) code and convolutional interleave |
US7472335B1 (en) | 2002-05-31 | 2008-12-30 | Broadcom Corporation | Symbol by symbol variable code rate capable communication device |
US7657822B2 (en) | 2002-05-31 | 2010-02-02 | Broadcom Corporation | True bit level decoding of TTCM (turbo trellis code modulation) of variable rates and signal constellations |
US7689896B2 (en) | 2006-06-21 | 2010-03-30 | Broadcom Corporation | Minimal hardware implementation of non-parity and parity trellis |
US7694210B2 (en) | 2002-07-31 | 2010-04-06 | Broadcom Corporation | Turbo-coding DOCSIS information for satellite communication |
US7729373B2 (en) | 2002-07-02 | 2010-06-01 | Broadcom Corporation | Modified range requests enabling bandwidth requests and state of health reporting |
US7738596B2 (en) | 2002-09-13 | 2010-06-15 | Broadcom Corporation | High speed data service via satellite modem termination system and satellite modems |
US7765577B2 (en) | 2002-12-27 | 2010-07-27 | Broadcom Corporation | Turbo coding for upstream and downstream transmission in cable systems |
US7827473B2 (en) | 2006-10-10 | 2010-11-02 | Broadcom Corporation | Turbo decoder employing ARP (almost regular permutation) interleave and arbitrary number of decoding processors |
US7831894B2 (en) | 2006-10-10 | 2010-11-09 | Broadcom Corporation | Address generation for contention-free memory mappings of turbo codes with ARP (almost regular permutation) interleaves |
US7882416B2 (en) | 2006-10-10 | 2011-02-01 | Broadcom Corporation | General and algebraic-constructed contention-free memory mapping for parallel turbo decoding with algebraic interleave ARP (almost regular permutation) of all possible sizes |
US7975203B2 (en) | 2007-01-17 | 2011-07-05 | Broadcom Corporation | Quadratic polynomial permutation (QPP) interleaver providing hardware savings and flexible granularity adaptable to any possible turbo code block size |
US8065587B2 (en) | 2006-10-10 | 2011-11-22 | Broadcom Corporation | Reduced complexity ARP (almost regular permutation) interleaves providing flexible granularity and parallelism adaptable to any possible turbo code block size |
US8065588B2 (en) | 2007-01-17 | 2011-11-22 | Broadcom Corporation | Formulaic flexible collision-free memory accessing for parallel turbo decoding with quadratic polynomial permutation (QPP) interleave |
US8069400B2 (en) | 2007-08-13 | 2011-11-29 | Broadcom Corporation | Optimal circular buffer rate matching for turbo code |
US8069387B2 (en) | 2007-07-16 | 2011-11-29 | Broadcom Corporation | Turbo coding having combined turbo de-padding and rate matching de-padding |
US8074155B2 (en) | 2006-09-28 | 2011-12-06 | Broadcom Corporation | Tail-biting turbo coding to accommodate any information and/or interleaver block size |
US8091009B2 (en) | 2006-03-23 | 2012-01-03 | Broadcom Corporation | Symbol by symbol map detection for signals corrupted by colored and/or signal dependent noise |
WO2013124449A1 (fr) | 2012-02-23 | 2013-08-29 | Universite De Bretagne Sud | Dispositif auto-configurable d'entrelacement/desentrelacement de trames de donnees |
US8904265B2 (en) | 2007-05-02 | 2014-12-02 | Broadcom Corporation | Optimal period rate matching for turbo coding |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2166310A1 (fr) * | 1972-01-07 | 1973-08-17 | Thomson Csf | |
US3882457A (en) * | 1974-01-30 | 1975-05-06 | Motorola Inc | Burst error correction code |
US4547887A (en) * | 1983-11-30 | 1985-10-15 | The United States Of America As Represented By The Secretary Of The Army | Pseudo-random convolutional interleaving |
-
1991
- 1991-04-23 FR FR9105278A patent/FR2675970B1/fr not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2166310A1 (fr) * | 1972-01-07 | 1973-08-17 | Thomson Csf | |
US3882457A (en) * | 1974-01-30 | 1975-05-06 | Motorola Inc | Burst error correction code |
US4547887A (en) * | 1983-11-30 | 1985-10-15 | The United States Of America As Represented By The Secretary Of The Army | Pseudo-random convolutional interleaving |
Non-Patent Citations (2)
Title |
---|
IEEE Global Telecommunications Conference & Exhibition vol. 1, 28 novembre 1988, New York pages 131 - 135; M. Ohashi et al.: "Development of a variable rate syndrome sequential decoder based on a stack algorithm" * |
IEEE TRANSACTIONS ON COMMUNICATIONS vol. 37, no. 12, décembre 1989, NEW YORK US pages 1381 - 1385; G. Bégin et al: "High Rate Punctured Convolutional Codes: Structure Properties and Construction Technique" * |
Cited By (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6304996B1 (en) | 1999-03-08 | 2001-10-16 | General Electric Company | High-speed turbo decoder |
US6594792B1 (en) | 1999-04-30 | 2003-07-15 | General Electric Company | Modular turbo decoder for expanded code word length |
US6715120B1 (en) | 1999-04-30 | 2004-03-30 | General Electric Company | Turbo decoder with modified input for increased code word length and data rate |
US6400290B1 (en) | 1999-11-29 | 2002-06-04 | Altera Corporation | Normalization implementation for a logmap decoder |
US6516437B1 (en) | 2000-03-07 | 2003-02-04 | General Electric Company | Turbo decoder control for use with a programmable interleaver, variable block length, and multiple code rates |
US7383485B2 (en) | 2000-09-12 | 2008-06-03 | Broadcom Corporation | Fast min*- or max*-circuit in LDPC (low density parity check) decoder |
US7093187B2 (en) | 2002-05-31 | 2006-08-15 | Broadcom Corporation | Variable code rate and signal constellation turbo trellis coded modulation codec |
US7321633B1 (en) | 2002-05-31 | 2008-01-22 | Broadcom Corporation | Determination of variable code rates for a rate control sequence |
US7065695B2 (en) | 2002-05-31 | 2006-06-20 | Broadcom Corporation | Metric calculation design for variable code rate decoding of broadband trellis, TCM, or TTCM |
US7085985B2 (en) | 2002-05-31 | 2006-08-01 | Broadcom Corporation | Close two constituent trellis of a turbo encoder within the interleave block |
US7032164B2 (en) | 2002-05-31 | 2006-04-18 | Broadcom Corporation | Efficient design to calculate extrinsic information for soft-in-soft-out (SISO) decoder |
US7107512B2 (en) | 2002-05-31 | 2006-09-12 | Broadcom Corporation | TTCM decoder design |
US7111226B1 (en) | 2002-05-31 | 2006-09-19 | Broadcom Corporation | Communication decoder employing single trellis to support multiple code rates and/or multiple modulations |
US7472335B1 (en) | 2002-05-31 | 2008-12-30 | Broadcom Corporation | Symbol by symbol variable code rate capable communication device |
US7188301B1 (en) | 2002-05-31 | 2007-03-06 | Broadcom Corporation | Parallel concatenated turbo code modulation encoder |
US6954832B2 (en) | 2002-05-31 | 2005-10-11 | Broadcom Corporation | Interleaver for iterative decoder |
US7210092B1 (en) | 2002-05-31 | 2007-04-24 | Broadcom Corporation | Symbol by symbol variable constellation type and/or mapping capable communication device |
US7657822B2 (en) | 2002-05-31 | 2010-02-02 | Broadcom Corporation | True bit level decoding of TTCM (turbo trellis code modulation) of variable rates and signal constellations |
US20100077282A1 (en) * | 2002-05-31 | 2010-03-25 | Broadcom Corporation | True bit level decoding of TTCM (Turbo Trellis Coded Modulation) of variable rates and signal constellations |
US7062700B2 (en) | 2002-05-31 | 2006-06-13 | Broadcom Corporation | 16 QAM and 16 APSK TTCM (Turbo Trellis Coded Modulation) with minimum bandwidth efficiency of 3 bit/s/Hz using a rate 2/4 constituent encoder |
US7729373B2 (en) | 2002-07-02 | 2010-06-01 | Broadcom Corporation | Modified range requests enabling bandwidth requests and state of health reporting |
US7694210B2 (en) | 2002-07-31 | 2010-04-06 | Broadcom Corporation | Turbo-coding DOCSIS information for satellite communication |
US8010882B2 (en) | 2002-07-31 | 2011-08-30 | Broadcom Corporation | Turbo-coding DOCSIS information for satellite communications |
US7447985B2 (en) | 2002-08-15 | 2008-11-04 | Broadcom Corporation | Efficient design to implement min**/min**- or max**/max**- functions in LDPC (low density parity check) decoders |
US7395487B2 (en) | 2002-08-15 | 2008-07-01 | Broadcom Corporation | Common circuitry supporting both bit node and check node processing in LDPC (Low Density Parity Check) decoder |
US7409628B2 (en) | 2002-08-15 | 2008-08-05 | Broadcom Corporation | Efficient design to implement LDPC (Low Density Parity Check) decoder |
US7360146B1 (en) | 2002-08-15 | 2008-04-15 | Broadcom Corporation | Inverse function of min*:min*- (inverse function of max*:max*-) |
US8718182B2 (en) | 2002-09-13 | 2014-05-06 | Broadcom Corporation | High speed data service via satellite modem termination system and satellite modems |
US7738596B2 (en) | 2002-09-13 | 2010-06-15 | Broadcom Corporation | High speed data service via satellite modem termination system and satellite modems |
US7137059B2 (en) | 2002-11-20 | 2006-11-14 | Broadcom Corporation | Single stage implementation of min*, max*, min and /or max to perform state metric calculation in SISO decoder |
US7765577B2 (en) | 2002-12-27 | 2010-07-27 | Broadcom Corporation | Turbo coding for upstream and downstream transmission in cable systems |
US8555134B2 (en) | 2002-12-27 | 2013-10-08 | Broadcom Corporation | Turbo coding for upstream and downstream transmission over a channel |
US8301967B2 (en) | 2002-12-27 | 2012-10-30 | Broadcom Corporation | Turbo coding for upstream and downstream transmission in cable systems |
US7239667B2 (en) | 2003-03-18 | 2007-07-03 | Broadcom Corporation | 8 PSK rotationally invariant turbo trellis coded modulation without parallel transitions |
US7203893B2 (en) * | 2003-05-05 | 2007-04-10 | Her Majesty The Queen In Right Of Canada As Represented By The Minister Of Indusrty, Though The Communications Research Centre Canada | Soft input decoding for linear codes |
US7221714B2 (en) | 2003-05-12 | 2007-05-22 | Broadcom Corporation | Non-systematic and non-linear PC-TCM (Parallel Concatenate Trellis Coded Modulation) |
US7447984B2 (en) | 2005-04-01 | 2008-11-04 | Broadcom Corporation | System correcting random and/or burst errors using RS (Reed-Solomon) code, turbo/LDPC (Low Density Parity Check) code and convolutional interleave |
US7447981B2 (en) | 2005-04-01 | 2008-11-04 | Broadcom Corporation | System correcting random and/or burst errors using RS (Reed-Solomon) code, turbo/LDPC (Low Density Parity Check) code and convolutional interleave |
US8091009B2 (en) | 2006-03-23 | 2012-01-03 | Broadcom Corporation | Symbol by symbol map detection for signals corrupted by colored and/or signal dependent noise |
US7689896B2 (en) | 2006-06-21 | 2010-03-30 | Broadcom Corporation | Minimal hardware implementation of non-parity and parity trellis |
US8074155B2 (en) | 2006-09-28 | 2011-12-06 | Broadcom Corporation | Tail-biting turbo coding to accommodate any information and/or interleaver block size |
US7827473B2 (en) | 2006-10-10 | 2010-11-02 | Broadcom Corporation | Turbo decoder employing ARP (almost regular permutation) interleave and arbitrary number of decoding processors |
US7882416B2 (en) | 2006-10-10 | 2011-02-01 | Broadcom Corporation | General and algebraic-constructed contention-free memory mapping for parallel turbo decoding with algebraic interleave ARP (almost regular permutation) of all possible sizes |
US7831894B2 (en) | 2006-10-10 | 2010-11-09 | Broadcom Corporation | Address generation for contention-free memory mappings of turbo codes with ARP (almost regular permutation) interleaves |
US8065587B2 (en) | 2006-10-10 | 2011-11-22 | Broadcom Corporation | Reduced complexity ARP (almost regular permutation) interleaves providing flexible granularity and parallelism adaptable to any possible turbo code block size |
US8065588B2 (en) | 2007-01-17 | 2011-11-22 | Broadcom Corporation | Formulaic flexible collision-free memory accessing for parallel turbo decoding with quadratic polynomial permutation (QPP) interleave |
US7975203B2 (en) | 2007-01-17 | 2011-07-05 | Broadcom Corporation | Quadratic polynomial permutation (QPP) interleaver providing hardware savings and flexible granularity adaptable to any possible turbo code block size |
US8904265B2 (en) | 2007-05-02 | 2014-12-02 | Broadcom Corporation | Optimal period rate matching for turbo coding |
US8069387B2 (en) | 2007-07-16 | 2011-11-29 | Broadcom Corporation | Turbo coding having combined turbo de-padding and rate matching de-padding |
US8069400B2 (en) | 2007-08-13 | 2011-11-29 | Broadcom Corporation | Optimal circular buffer rate matching for turbo code |
WO2013124449A1 (fr) | 2012-02-23 | 2013-08-29 | Universite De Bretagne Sud | Dispositif auto-configurable d'entrelacement/desentrelacement de trames de donnees |
US9971684B2 (en) | 2012-02-23 | 2018-05-15 | Universite De Bretagne Sud | Self-configurable device for interleaving/deinterleaving data frames |
Also Published As
Publication number | Publication date |
---|---|
FR2675970B1 (fr) | 1993-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2675970A1 (fr) | Procede de codage convolutif correcteur d'erreurs pseudo-systematique, procede de decodage et dispositifs correspondants. | |
EP0511141B1 (fr) | Procédé de codage correcteur d'erreurs à au moins deux codages convolutifs systématiques en parallèle, procédé de décodage itératif, module de décodage et décodeur correspondants | |
EP0891656B1 (fr) | Procede et dispositif de codage convolutif de blocs de donnees, et procede et dispositif de decodage correspondants | |
EP0654910B1 (fr) | Procédé de décodage itératif de codes en blocs concaténés | |
EP0827285B1 (fr) | Procédé de transmission de bits d'information avec codage correcteur d'erreurs, codeur et décodeur pour la mise en oeuvre de ce procédé | |
EP0827284B1 (fr) | Procédé de transmission de bits d'information avec codage correcteur d'erreurs, codeur et décodeur pour la mise en oeuvre de ce procédé | |
EP0848501B1 (fr) | Système et procédé de transmission numérique comportant un code produit combiné à une modulation multidimensionnelle | |
EP0995272B1 (fr) | Decodage iteratif de codes produits | |
EP3443678B1 (fr) | Methode de décodage d'un code polaire avec inversion de bits peu fiables | |
EP0946014B1 (fr) | Procédé de détection d'une séquence de symboles discrets à partir d'un signal d'observation, et processeur de viterbi mettant en oeuvre un tel procédé | |
FR2647990A1 (fr) | Procede et dispositif de codage en treillis pour des taux d'emission fractionnaires | |
FR2730370A1 (fr) | Dispositif de reception de signaux numeriques a structure iterative, module et procede correspondants | |
WO2002084931A1 (fr) | Procede de codage/decodage d'un flux de donnees numeriques codees abec entrelacement sur bits en emission et un reception multiple en presence d'interference intersymboles et systeme correspondant | |
FR2866167A1 (fr) | Egaliseur et procede d'actualisation de coefficients de filtre | |
EP2415193B1 (fr) | 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 | |
EP1345350A1 (fr) | Procédé de modulation et de détermination du nombre de bits à transmettre sur un canal de transmission | |
FR2952252A1 (fr) | Procede et dispositif de decodage, produit programme d'ordinateur, moyen de stockage correspondants et noeud destination correspondants | |
EP0463598B1 (fr) | Circuit de décodage de codes convolutionnels pour l'exécution de l'étape de stockage et d'exploration inverse des chemins survivants d'un algorithme de viterbi | |
EP0774840A1 (fr) | Procédé de transmission d'une séquence de bits d'information avec protection sélective contre les erreurs de transmission, procédés de codage et de correction pouvant être mis en oeuvre dans un tel procédé de transmission | |
FR2805418A1 (fr) | Procede de transmission numerique de type a codage correcteur d'erreurs | |
EP1050987A1 (fr) | Procédé d'accès multiple de type CDMA à capacité améliorée | |
EP0758167B1 (fr) | Procédé de décodage à sorties ponderées mettant en oeuvre l'algorithme de Viterbi en fonctionnement par blocs | |
FR2835666A1 (fr) | Module acs dans un decodeur | |
EP1366608B1 (fr) | Dispositif d'egalisation et de decodage de canaux selectifs en frequence | |
FR2972877A1 (fr) | Procede d'encodage correcteur d'erreur, procede de decodage et dispositifs associes. |