[0001] La présente invention se rapporte à un procédé d'établissement d'une suite-pilote
inverse pour un désentrelacement utilisé dans une transmission numérique.
[0002] Lorsque les mots à transmettre sont codés par un code correcteur d'erreurs, un nombre
limité de symboles erronés peuvent être corrigés. En revanche, si une majorité du
mot est fausse, il n'existe aucun espoir de pouvoir régénérer ce mot. Pour palier
à cet inconvénient, il est connu d'utiliser un entrelacement des symboles, par lequel
les symboles d'un même mot codé initial sont éparpillés, de sorte qu'un "paquet"
d'erreurs ne rend erronné qu'un seul ou peu de symboles dans plusieurs mots différents,
considérés après entrelacement. Les mots deviennent alors tous récupérables.
[0003] Il existe de nombreux modes d'entrelacement, mais l'invention concerne plus particulièrement
un entrelacement-bloc généré par une suite-pilote d'adresses de la façon suivante
:
[0004] Les symboles sont écrits et lus dans un vecteur de taille donnée. Les adresses de
la suite-pilote définissent les endroits sur le vecteur où le prochain symbole à émettre
devra être lu et où sera écrit le symbole suivant, symbole qui sera émis à son tour
au moment où la même adresse apparaîtra de nouveau dans la suite-pilote.
[0005] Par exemple, pour fixer les idées, supposons que ce vecteur contienne six symboles
et que l'on veuille émettre la suite : a b c d e f g h i j k l... La suite pilote
est une suite de sextuplets. Dans chacun de ces sextuplets, les six adresses 1, 2,
3, 4, 5 et 6 sont choisies une fois et une seule.
[0006] Prenons par exemple comme début de la suite-pilote :

et considérons que les premiers symboles a à f sont déjà dans le registre.
[0007] Ce registre est donc rempli ainsi :
a b c d e f
[0008] Dans ce cas, le premier des symboles suivants (g) est mis dans le registre à la deuxième
place,où se trouve b: b est émis et remplacé par g, puis le second (h) à la sixième
(f est émis et remplacé par h), puis le suivant (i) à la première (a est émis et remplacé
par i), puis le suivant (j) à la cinquième (e est émis et remplacé par j), puis le
suivant (k) en quatrième position dans le registre (d est émis et remplacé par k),
et enfin le douzième (l) à la troisième place (c est émis et remplacé par l).
[0009] A ce moment là, le registre contient les septième au douzième symboles d'origine
dans l'ordre suivant :
i g l k j h
[0010] Le prochain et treizième symbole (m) doit être mis dans le registre en quatrième
position, puisque 4 est le septième chiffre de la suite-pilote. Comme il y a déjà
k à cet endroit, on émet k et on le remplace par m.
[0011] Le quatorzième symbole (n) doit être mis en première position, où il y a déjà i :
on émet donc i et on écrit n, et ainsi de suite... Le train, dit "suite-canal", de
symboles émis lorsque l'entrelacement est réalisé à l'aide de cette suite-pilote est
finalement le suivant :
b f a e d c k i l h j g ...
[0012] A la réception, il faut, pour récupérer le train de symboles initial, désentrelacer
suivant le même schéma, au moyen d'une "suite-pilote inverse" obtenue à partir de
la suite-pilote. Cette suite-pilote inverse est unique, mais plusieurs procédés peuvent
être conçus pour l'obtenir.
[0013] Un procédé simple d'obtention d'une suite-pilote inverse à partir d'une suite-pilote
est le suivant :
[0014] Les n premiers symboles de la suite-canal ci-dessus définie sont écrits dans un
vecteur, ou registre, de réception, de même taille que celui utilisé à l'émission.
Dans l'exemple précédent, n est égal à 6, de sorte que l'on écrit les six premiers
symboles de la suite-canal dans ce registre-réception.
[0015] Le premier élément de la suite-pilote inverse est alors l'adresse, dans ce registre,
du plus petit élément du registre (par "plus petit élément", on entend le symbole
qui a le plus petit numéro d'ordre dans la suite des symboles correspondant au codage
initial, avant entrelacement à l'émission).
[0016] On remplace ce plus petit élément par le symbole suivant de la suite-canal, et on
pose comme deuxième élément de la suite-pilote inverse l'adresse du plus petit élément
du registre ainsi modifié, et ainsi de suite...
[0017] Ainsi, pour trouver chaque élément de la suite-pilote inverse, il faut à chaque
fois parcourir tout le registre réception pour en trouver le plus petit élément.
Lorsque l'on entrelace les symboles non plus avec des registres de six, mais, comme
c'est souvent le cas, avec des registres de l'ordre de 10 0000 symboles, il est alors
nécessaire pour trouver chaque série de 10 000 adresses de la suite-pilote inverse,
de parcourir en tout 10 000 fois un registre de 10 000 éléments et l'ordonner chaque
fois pour en trouver l'élément le plus petit, ce qui a pour inconvénient d'être particulièrement
long.
[0018] L'invention vise à remédier à cet inconvénient, et elle permet de diviser par, à
titre d'exemple, plusieurs milliers le temps de calcul de la suite-pilote inverse.
Le procédé consiste, en divisant la suite-pilote et la suite-pilote inverse en parties
successives ayant chacune la taille du vecteur, ou registre, utilisé à l'émission
ou à la réception, à obtenir chaque partie de la suite-pilote inverse à partir de
la partie précédente de cette suite-pilote inverse et des deux parties correspondantes
de la suite-pilote de la manière suivante : le k-ième élément de la N-ième partie
de la suite-pilote inverse est déterminé en relevant le rang du k-ième élément de
la (N-1)-ième partie de la suite-pilote dans la N-ième partie de la suite-pilote,
et en choisissant alors l'élément qui se trouve à ce rang dans la (N-1)-ième partie
de la suite-pilote inverse. La première partie de la suite-pilote inverse est, quant
à elle, déterminée par un autre procédé, par exemple par celui décrit précédemment
et consistant, après avoir écrit dans le registre réception les premiers éléments,
dans l'ordre, de la suite-canal, à choisir pour chaque élément de la suite-pilote
inverse l'adresse, dans ce registre, du plus petit élément du registre, tout en remplacant
alors, dans ce registre, ce plus petit élément par le symbole suivant de la suite
canal.
[0019] De toute façon, l'invention sera bien comprise, et ses avantages et autres caractéristiques
ressortiront, lors de la description suivante d'un exemple non limitatif d'établissement
d'une suite-pilote inverse à l'aide de ce procédé.
[0020] Cet exemple reprend les données prises ci-dessus, de sorte que les registres, émission
d'une part et réception d'autre part, peuvent contenir chacun six symboles. La série
de symboles codés à émettre est la suivante : a b c d e f g h i j k l... La suite
pilote est la série de sextuplets suivante :

et la suite-canal est, comme déterminé précédemment, la suivante:

[0021] Le premier sextuplet de la suite-pilote inverse est tout d'abord obtenu par le procédé,
plus simple mais long, décrit précédemment :
[0022] Les six premiers symboles :
b f a e d c
de la suite-canal sont tout d'abord écrits dans le registre-réception. Le premier
élément de la suite-pilote inverse est l'adresse du plus petit élément, a, de ce registre,
donc l'adresse 3.
[0023] On lit a et on le remplace par le symbole suivant de la suite-canal, c'est à dire
par k.
[0024] En appliquant en tout six fois de suite ce procédé, on obtient les six premiers éléments
de la suite-pilote inverse, soit :
3 1 6 5 4 2
[0025] On peut alors utiliser, pour calculer les éléments suivants de cette suite-pilote
inverse, le procédé conforme à la présente invention :
[0026] Pour obtenir le septième élément de la suite-pilote inverse, on cherche quel est
le rang, dans le deuxième sextuplet de la suite-pilote, du premier élément du premier
sextuplet de cette suite-pilote. Ce premier élément est 2, et 2 est à la sixième place
dans ce deuxième sextuplet. En conséquence, on prend, pour le premier élément du deuxième
sextuplet de la suite-pilote inverse, l'élément de rang 6 du premier sextuplet de
cette suite-pilote inverse, c'est-à-dire 2.
[0027] Le huitième élément de la suite-pilote inverse est déterminé de la même façon : le
deuxième élément de la suite-pilote est 6, et 6 est quatrième dans la deuxième partie
(deuxième sextuplet) de cette suite- pilote ; le huitième élément cherché est donc
le quatrième élément du premier sextuplet de la suite-pilote inverse, donc 5.
[0028] On continue ainsi jusqu'à épuisemnt total de la suite-pilote. La suite-pilote inverse
alors obtenue est la suivante :
3 1 6 5 4 2 2 5 1 4 3 6...
[0029] Et il est aisé de vérifier que cette suite-pilote inverse est la même que celle que
l'on aurait obtenue à l'aide du premier procédé, plus simple mais beaucoup plus long,
précédemment décrit.
[0030] Comme il va de soi, l'invention n'est pas limitée à l'exemple qui vient d'être décrit.
En particulier, la première partie (premier sextuplet dans l'exemple précédent) de
la suite-pilote inverse pourrait être obtenue par un autre procédé que le procédé
très simple décrit ci-dessus. Le procédé selon la présente invention a pour avantage,
par sa rapidité, de permettre l'obtention d'une suite-pilote inverse en temps réel.
Il est alors possible de réaliser en temps réel un entrelacement, pseudo-aléatoire
ou non, au moyen d'une suite pilote calculée en temps réel, à un débit interessant.
1 - Procédé d'établissement d'une suite-pilote inverse pour un désentrelacement utilisé
dans une transmission numérique avec entrelacement au moyen d'une suite-pilote,
l'entrelacement utilisant un vecteur, ou registre, émission dans lequel les symboles
codés sont successivement lus et écrits à l'aide de la suite-pilote, et le désentrelacement
utilisant un registre réception de même taille et dans lequel les symboles reçus selon
la suite- canal sont successivement lus et écrits à l'aide de la suite-pilote inverse,
caractérisé en ce qu'il consiste, en divisant la suite-pilote (2 6 1 5 4 3 4 1 3 6
5 2...) et la suite-pilote inverse en parties successives (2 6 1 5 4 3, 4 1 3 6 5
2,...) ayant chacune la taille dudit registre émission ou réception, à obtenir chaque
partie (2 5 1 4 3 6) de la suite-pilote inverse à partir de la partie précédente (3
1 6 5 4 2) de cette suite-pilote inverse et des deux parties correspondantes (2 6
1 5 4 3, 4 1 3 6 5 2) de la suite-pilote, en relevant, pour déterminer le k-ième
élément de la N-ième partie de la suite-pilote inverse, le rang du k-ième élément
de la (N-1)-ième partie de la suite-pilote dans la N-ième partie de cette suite-pilote,
et en choisissant alors l'élément qui se trouve à ce rang dans la (N-1)-ième partie
de la suite-pilote inverse, la première partie (2 6 1 5 4 3) de la suite-pilote inverse
étant, quant à elle, déterminée par un autre procédé d'établissement d'une suite-pilote
inverse
2 - Procédé selon la revendication 1, caractérisé en ce que la première partie (3
1 6 5 4 2) de la suite-pilote inverse est déterminée par un autre procédé consistant,
après avoir écrit dans le registre réception les premiers éléments dans l'ordre (2
6 1 5 4 3) de la suite-canal, à choisir pour chaque élément de la suite-pilote inverse
l'adresse, dans ce registre, du plus petit élément (a, puis b, puis c,...) du registre,
tout en remplacant alors, dans ce registre, ce plus petit élément par le symbole suivant
(k, puis i, puis l,...) de la suite-canal.