FR2837331A1 - Procede d'entrelacement d'une sequence binaire - Google Patents
Procede d'entrelacement d'une sequence binaire Download PDFInfo
- Publication number
- FR2837331A1 FR2837331A1 FR0203115A FR0203115A FR2837331A1 FR 2837331 A1 FR2837331 A1 FR 2837331A1 FR 0203115 A FR0203115 A FR 0203115A FR 0203115 A FR0203115 A FR 0203115A FR 2837331 A1 FR2837331 A1 FR 2837331A1
- Authority
- FR
- France
- Prior art keywords
- column
- sequence
- sequences
- polynomial
- binary
- 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/27—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 using interleaving techniques
- H03M13/2771—Internal interleaver for turbo codes
-
- 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/29—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
- H03M13/2993—Implementing the return to a predetermined state, i.e. trellis termination
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
Pour entrelacer une séquence binaire a représentée par un polynômeoù n = R. M avec R ≥ M, i étant un entier pouvant s'écrire i = r. M + c, r et c étant des entiers, r ≥ 0 et ∈ [0, M-1] : on obtient, à partir de la séquence a, une séquence binaire entrelacée a* représentée par un polynômeoù i* = [r - h (c)]. M + c mod n, les h (c) étant obtenus par le choix d'un M-uplet h0 = [h0 (0),..., h0 (M-1)] d'entiers non négatifs inférieurs à R-1 tel que, étant donné un ensemble prédéterminé Π de matrices circulantes P de dimension MxM, pour toute matrice P de Π, les résidus modulo R des composantes du vecteur h0.P soient non nuls; et le choix correspondant d'un M-uplet h obtenu à partir de h0 en appliquant une permutation déplaçant h0 (c) en position Lxc mod M, l'entier L étant relativement premier avec M.
Description
programmable. n-1 a(x)= Zajx i=o n-1.* a * tx) = Za jx i=o
PROCEDE D'ENTRELACEMENT D'UNE SEQUENCE BINAIRE
La presente invention se rapporte a un procede d'entrelacement
d'une sequence binaire.
Wile concerne les systemes de communication dans lesquels, afin d'ameliorer la fidelite de la transmission, les donnees a transmettre vent soumises a un codage de canal. Wile est decrite ici a titre d'exemple non limitatif
dans son application aux turbocodes.
On rappelle que le codage dit "de canal" consiste, quand on forme les "moss de code" envoyes au recepteur, a introduire une certaine redondance dans les donnees a transmettre. Au niveau du recepteur, le procede de decodage associe exploite alors judicieusement cette redondance pour detecter
d'eventuelles erreurs de transmission et si possible les corriger.
On definit la distance de Hamming entre deux sequences binaires de meme longueur comme etant le nombre d'emplacements ou les deux sequences possedent un element binaire different. Les mots de code obeissent a certaines regles definies par le procede de codage considere, ce qui permet au recepteur de remplacer le mot de code re,cu par le mot de code (appartenant done au dictionnaire des mots de code) situe a la distance de Hamming la plus
course de ce mot recu.
Cette procedure de correction d'erreurs est d'autant plus gable que la
distance de Hamming minimale entre les divers mots de code est plus grande.
Or il est bien connu que pour un code lineaire, cette distance minimale est egale au poids minimal des mots de code non nuls, le poids etant le nombre d'elements binaires egaux a 1. Un procede de codage utilisant un code lineaire sera done d'autant meilleur, toutes choses egales par ailleurs, que le minimum
des poids de ses mots non nuls est eleve.
En outre, la correction d'erreurs de transmission est d'autant plus efficace que le code de canal utilise possede un faible pourcentage de mots de code dont le poids est voisin de la distance minimale du code. Dans certains cas, on obtient meme de meilleurs resultats avec un code dont les mots ont presque tous un poids nettement superieur a la distance minimale de ce code, qu'avec un autre code de distance minimale plus grande, mais dont beaucoup
de mots ont un poids a peine superieur a cette distance minimale.
L'objectif de la presente invention est notamment de permettre de construire des codes de canal beneficiant chacun d'une grande distance minimale et dont la plupart des mots ont un poids nettement superieur a cette
distance minimale.
Parmi les procedes de codage connus, certains vent appeles "codes cycliques redondants". Dans un tel procede, on fait le choix d'un polynome g(x), dit "polynome generateur", a coefficients binaires, de degre d et de terme constant egal a 1. On met chaque sequence d'informations a transmettre, eventuellement en la prolongeant avec des elements nuls, sous la forme d'une sequence binaire u ayant une longueur I fixe. Puis on forme une sequence a en prolongeant la sequence u au moyen d'un nombre de bits egal a d, ces bits dits de "bourrage" (en anglais "padding bits") etant choisis de fa,con que le 1 5 polynome l+d-1 a(x)= ajxi i=o associe a a soit divisible par g(x) (modulo 2). Ce vent les sequences a, de longueur n = I + d, qui vent envoyees au recepteur. Si la demodulation des signaux recus est "cure" (en anglais "hard"), c'est-a-dire si les signaux re,cus vent directement etiquetes a la reception par un des deux symboles binaires, les erreurs de transmission peuvent etre detectees en examinant le reste de la
division du polynome representant le mot recu par le polynome generateur.
On a propose recemment des procedes de codage tres efficaces, appeles turbocodes, dans lesquels on accro^'t la redondance en transmettant, pour chaque sequence u de donnees "d'information" initiales, outre la sequence u elle-meme, plusieurs sequences supplementaires appelees "sequences de parite", chacune de ces sequences de parite resultant du passage de la sequence u au travers d'un codeur"elementaire" (ou d'un enchanement de
plusieurs codeurs elementaires successifs) correspondent a cette "parite".
On decrit a present une classe particulierement avantageuse de turbocodes a deux parites. Selon ces turbocodes, on transmet, pour chaque sequence u de donnees initiales, trots sequences a, b et_ obtenues comme suit. La sequence b est produite par un premier codeur, habituellement sur la base de la representation polynomiale b(x) = a(x).f(x)/g(x) ou a(x) est le polynome associe a la sequence a, g(x) un premier polynome predetermine a coefficients binaires de degre d et de terme constant egal a 1, et f(x) un deuxieme polynome predetermine a coefficients binaires sans diviseur commun avec g(x). Le polynome g(x) est appele "polynome de retroaction" pour des raisons liees a la realisation concrete de la division par g(x) impliquees par
I'expression de b(x).
Quant a la sequence a, elle peut etre prise identique a u, mais elle est de preference obtenue, comme dans les codes cycliques redondants, en prolongeant la sequence u au moyen de bits de bourrage choisis de fa,con que a(x) soit divisible par g(x). Soit n la longueur de a(x). En pratique, on choisira n = r.m, ou m est le plus petit entier strictement positif tel que g(x) divise (xm + 1)
et ou r est un entier strictement positif.
La sequence _ est produite par un second codeur, habituellement sur la base de la representation polynomiale c(x) = a*(x).f2(x)/g*(x), ou g*(x) est un troisieme polynGme predetermine a coefficients binaires de degre d et de terme constant egal a 1, ou f2(x) est un quatrieme polyndme predetermine a coefficients binaires, sans diviseur commun avec g*(x), et ou le polynGme a*(x) represente une sequence binaire a* qui resulte de fa, con predeterminee d'une permutation des elements binaires de a ou de u (avec ou sans adjonction de bits de parite), cette operation etant aussi appelee entrelacement (en anglais "interleaving"). Dans la suite, on suppose que g(x) = g*(x). Le cas general ou
g*(x) g(x) ne presente pas de difficultes particulieres par rapport au cas traite.
Le turbodecodage du message re,cu fonctionne de la fa,con suivante: le decodeur recoit trots sequences de nombres, notees a', b' et c', et qui ont ete produites par ['action du bruit du canal de transmission sur les sequences emises a, b et _. Le turbodecodeur met alors en ceuvre un processus iteratif, utilisant b' et c' en alternance, destine a calculer une valeur estimee a de a avec une fiabilite qui cro^'t avec le nombre dtiterations choisi. Si on a utilise des bits de bourrage, il suffit, une fois la valeur finale de a obtenue, de supprimer ces
bits de bourrage pour obtenir la valeur estimee u de u.
On rappelle a present la notion d'entrelaceur verrou (en anglais
"wheel inferleavef').
Un entier N = R.M etant fixe avec R 2 M, on associe ['ensemble de sequences binaires N-1 U(X)= UjX' i=0 a la matrice U de dimension RxM ayant le nombre jM + k en position 0,k), 0 < j < R-1, 0 < k < M-1. Par exemple, pour R = 7 et M = 5, N = R.M = 35 et la matrice U est donnee par
0 1 2 3 4
6 7 8 9
11 12 13 14
U= 15 16 17 18 19
21 22 23 24
26 27 28 29
31 32 33 34
Puis, pour un M-uplet d'entiers h = [ho,..., hM 1], on applique, pour tout j, une permutation circulaire vers le teas d'amplitude hj sur la jeme colonne de U. La matrice obtenue est notee U*. Ainsi, si U est la matrice ci-dessus et si h = [0 2 5 1 3], la matrice U* est donnee par
0 26 12 33 24
31 17 3 29
1 22 8 34
U*= 15 6 27 13 4
11 32 18 9
16 2 23 14
21 7 28 19
Au couple (U,U*), ou, de facon equivalente, au M-uplet h, on associe ltentrelaceur qui produit, a partir de toute sequence u(x) = u0 + ux +... + U34X34, la sequence entrelacee u*(x) = u0 + U4X26 + U2X42 +... + U34xi9, qui peut etre reecrite sous la forme u*(x) = u0 + u,x + U27X2 + + U j4X34. Plus generalement, un entrelaceur verrou de taille R.M defini par h = [ho,..., hM] produit, a partir de la sequence
U(X) = XKU(K) (XM) (1)
K=0 ou u(K)(x) est de degre R-1, la sequence entrelacee M1 XK-hKMu(K) (XM) modulO X -1 (2) K=0
Appliquons maintenant les entrelaceurs verrous aux turbocodes.
Comme on l'a vu precedemment, un turbocodeur de rendement 1/3 se caracterise par trots polynomes a coefficients binaires g(x), f(x) et f2(x), une longueur de frame n et un entrelacaur, comme l'illustre la figure 1. Si a(x) est un polynome a coefficients binaires representant ['information, le turbocodeur produit, en plus de la sequence a(x) ellememe, les sequences b(x) = a(x)f,(x)/g(x) et c(x) = a*(x)f2(x)/g(x), ou a*(x) est la representation polynomiale de la version entrelacee de a(x). Ces sequences af/g et a*f2/g vent produites
par des registres a decalage appropries.
On conna^'t, notamment par la demande de brevet fran,cais de numero de depot 01 11479, des entrelaceurs ayant la structure suivante. On choisit tout d'abord, par exemple, g(x) = 1 + X2 + x3 et on note que g(x) divise 1
+ x7 et ne divise pas 1 + xt pour 1 s t < 6. On dit que la periode m de g(x) est 7.
La sequence d'information a(x) s'ecrit alors a(x)= xka(k)(xm) (3) k=0 ou a(k)(x) = Z ajm+kx j=0 est ce qu'on appelle la version simplifiee de la keme "composante homogene" a(k)(xm) de a(x); a(k)(xm) decrit done la contribution a a(x) des elements binaires aj de a tels que le residu de i modulo m est egal a k. On factorise alors r en r = R.M avec R 2 M. Avec un M-uplet h bien choisi, chaque a(k)(x) est entrelace par I'entrelaceur verrou associe a un multiple dkh de h et multiplie par xek modulo xRM-1, pour produire a*(k)(x). La sequence entrelacee a*(x) est alors definie par a * (x) = Xka *(k) (xm) (4) k=0 et est divisible par g(x) lorsque a(x) est divisible par g(x). Dans une telle situation, on dit que a(x) jouit de la propriete de retour a zero ou RZ. Dans ce contexte, la definition d'un entrelaceur consiste a choisir le M-uplet h et deux m-uplets d = [do, ..., dm] et e = [eO,..., em]. On conna'^t des
methodes de selection de ces parametres.
Dans un article intitule "Design of cyclic shiff interleavers for Turbo Codes" public dans les Annales des Telecommunications, 56, pages 384 a 393, juillet-aout 2001, J. YUAN et al. utilisent un entrelaceur verrou unique au lieu de m entrelaceurs distincts. En outre, I'entrelaceur verrou unique RxM qu'ils considerent est defini par un M-uplet h = [ho,... , hM] tres particulier, pour lequel hK est egal a K.B, B etant un entier judicieusement choisi. Si la sequence d'information a(x) est representee par a(x) = xKa(K) (x K=0 ce choix de h implique que la version entrelacee a*(x) de la sequence a(x) est donnee par -KMBa(K)(xM) modulo x -1 (6) K=0 Cependant, I'article cite ci-dessus n'offre pas un outil systematique pour construire un entrelaceur de turbocodes efficace utilisant un unique
entrelaceur verrou, et non m entrelaceurs verrous differents.
On conna^t un autre entrelaceur defini de la facon suivante.
Considerons tout d'abord le 23-uplet b = [0 2 10 4 20 8 17...] qui est obtenu comme suit. Si on l'ecrit sous la forme b = [bo b b2 b3...], alors, pour i > 3 et avec bo = 0, b' = 2 et b2 = 10, chaque bj est defini comme le residu modulo 23 de 2bj2. On definit alors une matrice B de dimension 47x23 de la facon suivante. La premiere ligne (d'indice 0) de B est le 23uplet b, et pour i 2 1, la ligne d'indice i est obtenue par addition de 23 a tous les elements de la ligne
dtindice i-1.
Soit maintenant h le 23-uplet [0 46 44 40 32...] ou pour i = 0, 1,....
in(i) est obtenu a partir de h(i-1) par soustraction de 2i-4 modulo 47. On construit alors la matrice B* par application de ce 23-uplet h a B comme decrit ci-dessus. On definit finalement la matrice U comme la matrice de dimension 47x23 ayant 23i + j comme entree (i,j), 0 s i s 46, 0 s j s 22. L'entrelaceur est decrit par le couple (U,B*) par la meme correspondence que precedemment: cet entrelaceur deplace le symbole de la position initiale 23i + j vers la position
donnee par ['entree (i,j) de B*.
Cet entrelaceur, pas plus que celui decrit dans ['article de J. YUAN et al., n'est cependant pas produit par un outil systematique pour construire un entrelaceur de turbocodes efficace utilisant un unique entrelaceur verrou, et non
m entrelaceurs verrous differents.
La presente invention a pour but de remedier a ces inconvenients, en proposant une methode systematique de construction d'un entrelaceur fonde
sur un entrelaceur verrou unique.
Pour decrire la propriete de retour a zero pour un entrelaceur quelconque, notons g(x) le polynome de retroaction, suppose identique, comme indique plus haut, pour les deux codeurs systematiques representes sur la figure 1. Soit m sa periode. On suppose ici que g(x) = 1 + X2 + X3, ce qui implique que m vaut 7. La generalisation a un polynome g(x) et a une periode m
quelconques est aisee et n'est pas decrite ici.
Soit n-1 a(x) = akxk, ak {0,1} k=0 la representation de ['information sous forme de sequence binaire et soit n-1 a*(x)= akxk k=0 sa version entrelacee. ll est tres avantageux que a(x) et a*(x) soient tous deux divisibles par g(x). Comme la classe d'entrelaceurs decrite ci-dessous est composee d'entrelaceurs pouvant transformer certaines sequences a(x) divisibles par g(x) en des sequences a*(x) qui ne vent plus divisibles par g(x), la divisibilite simultanee de a(x) et de a*(x) par g(x) impose quelques conditions restrictives supplementaires sur ce que peut etre le calcul de a(x) a partir de ['information u(x). Voici une procedure pratique qui permet de resoudre ce probleme. Etant donne ltentrelaceur, on s'interesse tout d'abord a ltensemble des positions k qui vent congrues a i mod m = 7 et qui vent deplacees par
l'entrelaceur vers une position k* qui est congrue a j mod 7, 0 s i,j < 6.
L'ensemble des monomes correspondents de a(x) peut s'ecrire xiAj,j(x7) et, apres entrelacement, il peut etre represente par xiA*j,j(x7), ou les coefficients de A*j,j(x) vent une permutation des coefficients de Aj,j(x). En particulier, les
nom b res d e coefficients egaux a 1 da ns Aj,j(x7) et da ns A*j,j(x7) vent eg aux.
Ainsi, les residue modulo x7 + 1 de ces deux polynomes vent egaux. Ils vent simultanement egaux a 0 si le nombre de coefficients non nuls est pair, et ils vent simultanement egaux a 1 si ce nombre est impair. A fortiori, les residue modulo g(x) de A',j(x7) et A*j,j(x7) seront aussi simultanement egaux a 0 ou 1, etant donne que g(x) est un diviseur de x7 + 1. On utilise maintenant ces notations pour ecrire a(x) et a*(x) sous la forme suivante: 6 6 6 a(x) = Ao j(x7)+xiA1 j(x7)+ +x5 A6 j(x7) (7) =o j=o j=o 6 6 6 a*(x)= A*jo (x7)+xiA*j (x7)+ +x6A*j6 (x7) (8) i=o i=o i=o Lorsque g(x) est irreductible, comme l'est par exemple g(x) = 1 + x2 + X3, il est equivalent de dire que a(x) (respectivement a*(x)) est divisible par g(x), ou de dire que a(oc) = 0 (respectivement a*() = 0) pour une racine x quelconque de g(x). Sachant que toute racine de g(x) = 1 + X2 + X3 satisfait oc7 = 1, une de ces racines est telle que Aj,j(cc7) = A*j, j(a7) = Aj,j(1) = A*j,j(1) et cette valeur commune, notee bj,j, est soit 0 soit 1. La condition que a(x) soit divisible par g(x) peut ainsi etre exprimee par la condition equivalente que a(oc) = 0 ou, plus explicitement, par 6 6 6 boj+ab1j+ +a6b6j=0 (9) j=o j=o j=o De fa,con similaire, la condition que a*(x) soit divisible par g(x) peut etre exprimee par la condition equivalente 6 6 6 bj O + abj,1 + + a bi,6 = 0 (10) i=o i=o i=o Considerons maintenant la matrice B de dimension 7x7 ayant bj, comme entree (i,j), O < i,j < 6, et definissons u = [1 1 1 1 1 1 1]. Les equations (9) et (10) peuvent alors etre mises sous la forme [1 a... a6]BuT = 0 (1 1) [1 a... a6]BTUT = 0 (12) ou T designe la transposition. Chacune de ces equations donne une condition sur les elements du corps de Galois GF(23), ou, de fa,con equivalente, trots conditions sur les elements de GF(2). Le systeme d'equations (11)-(12) definit ainsi six coefficients aj de a(x) en fonction des n-6 coefficients restarts, choisis librement. Une fa,con de resoudre ce systeme d'equations consiste a selectionner un ensemble I de six couples (i,j) et a definir Aj j(x7) = Aj j (x7) pour (i,j) I (13) Aj j(x7) = Aj j(x7)-c7r(j j)x7r(i i) pour (i,j) I (14) ou c7r(j,jx7r(ii' est un monome de Aj,j(x7). De fa,con similaire, on definit bj j = A j j (1), cj j = c7r(j, j) pour (i,j) I et cj, j = 0 pour (i,j) I. Enfin, on definit la matrice B (respectivement C) de dimension 7x7
comme la matrice ayant bj j (respectivement c; j) en position (i,j), O < i,j < 6.
Les equations (11) et (12) deviennent [1 a... a6]C UT = [1 a... a6]B uT (15) [1 a a6]CTUT=[1 a a6]BTuT (16) Le seul probleme qui subsiste est de trouver un ensemble I pour iequel les equations (15) et (16) peuvent etre resolues pour trouver les c-jj correspondents. Une bonne solution consiste a choisir un ensemble I de la forme I = {(1,(1)),(2,7(2)),...,(6, (6))} ou 11 est une permutation de {1,...,6} et d'ecrire c; a la place de c7r(j,j) pour (i,j) I. Les equations (15) et (16) peuvent alors s'ecrire c1x + C2Oc2 +... + c6OC6 = (17) c1OC) + C2O.(2) + + C6oC(6) = (18) ou = d2cc2 + d1 + do et s = e2Oc2 + e1Oc + eO designent les membres de droite des equations (15) et (16). On note aussi xi = X2f2(i) + xf1(i)+ f0(i) ou les fs(i) vent des symboles binaires. L'equation (15) peut alors stecrire FcT = dT, avec
0 1 1 1 0 1
F= 1 0 0 1 1 1.
O 0 1 1 1 0
c = [c1 c2 c6] et d = [d2 d1 do]. Enfin, on choisit T(i) = 7-i. L'equation (16) peut alors s'ecrire FcT = eT avec e = [e2 e1 eO] et le systeme (15)-(16) est equivalent a
0 1 1 1 0 1
1 0 0 1 1 1
0 0 1 1 1 0 cT = [d e]T
1 0 1 1 1 0
1 1 1 0 0 1
0 1 1 1 0 0
ou la matrice du membre de droite est non singuliere, ce qui permet de calculer
les coefficients c;.
Une methode similaire s'applique dans le cas plus general ou le polynome g*(x) de retroaction du second codeur n'est pas identique, mais
equivalent a g(x), c'est-a-dire de meme periode que g(x).
Dans le but mentionne plus haut, la presente invention propose un procede d'entrelacement d'une sequence binaire a representee par un n-1 polynome a(x)= ajx, n etant le produit de deux entiers R et M tels que R 2 i=o M, i etant un entier pouvant stecrire i = r.M + c, r etant un entier non negatif et c etant un entier compris dans l'intervalle [0, M-1], ce procede etant remarquable en ce qu'il consiste a obtenir, a partir de la sequence a, une sequence binaire n-1 entrelacee a* representee par un polynome a * (x) = a j xi ou i* = [r - h (c)]. M i=o + c mod n, les nombres in(c) etant obtenus par: - le choix d'un M-uplet ho = [ho(0),..., ho(M-1)] d'entiers non negatifs inferieurs a R-1 tel que, etant donne un ensemble predetermine n de matrices circulantes P de dimension MxM, pour toute matrice P de fI, les residue modulo R des composantes du vecteur ho. P solent non nuls; et - le choix correspondent d'un M-uplet h = [h(0),..., h(M-1)] obtenu a partir du M-uplet ho par application d'une permutation depla,cant ['element ho(C) en position Lxc mod M, L etant un entier relativement premier avec M. On rappelle qutune matrice carree est cite circulante lorsque chacune de ses colonnes, a partir de la deuxieme, se deduit de la precedente
par une permutation circulaire d'amplitude 1.
Le procede d'entrelacement conforme a la presente invention a une action relativement homogene sur les residue modulo L des indices i des symboles de la sequence a(x). Soit en effet T(d,d*) I'ensemble des indices i qui vent congrus a d modulo L et qui vent tels que l'indice i* correspondent est congru a d* modulo L. Le procede conforme a ['invention a pour avantage d'induire des ensembles T(d,d*) dont les tailles vent proches les unes des autres. Dans un mode particulier de realisation, I'ensemble contient des matrices circulantes P et P2 telles que: - la premiere colonne de P est [1 -2 1 0... 0]T et - la premiere colonne de P2 est [2 2 0 0... 0]T,
OU T designe la transposition.
Dans un autre mode particulier de realisation, I'ensemble fI contient des matrices circulantes P3 a P.3 telles que: - la premiere colonne de P3 est [1 -1 -1 1 0 0]T, - la premiere colonne de P4 est [1 -1 1 -1 0 0]T, - la premiere colonne de P5 est [1 0 -2 1 0 0]T, - la premiere colonne de P6 est [1 -2 0 1 0 0]T, - la premiere colonne de P7 est [2 -1 -1 0 0 0]T et
- la premiere colonne de Pe est [1 1 -2 0 0... O]T.
Dans un autre mode particulier de realisation, I'ensemble II contient des matrices circulantes Pc a P20 telles que: - la premiere colonne de Pg est [1 1 -1 -1 0 O]T, - la premiere colonne de P1O est [1 -1 0 1 -1 0 O]T, la premiere colonne de P est [1 -1 0 -1 1 0 O]T, - la premiere colonne de P2 est [1 0 -1 -1 1 0 O]T, - la premiere colonne de P3 est [1 -1 -1 0 1 0 O]T, - la premiere colonne de P4 est [1 0 -1 1 -1 0 O]T, - la premiere colonne de Pj5 est [1 -1 1 0 -1 0 O]T, - la premiere colonne de P6 est [1 0 -2 0 1 0 O]T, - la premiere colonne de P47 est [1 0 0 -2 1 0 O]T, - la premiere colonne de Pe est [1 -2 0 0 1 0 O]T, - la premiere colonne de Pg est [1 0 1 -2 0 0 O]T et
- la premiere colonne de P20 est [2 -1 0-1 0 0 O]T.
Dans un autre mode particulier de realisation, I'ensemble II contient des matrices circulantes P2 a P24 telles que: - la premiere colonne de P2 est [1 -3 2 0 0 O]T, - la premiere colonne de P22 est [2 -3 1 0 0 O]T, - la premiere colonne de P23 est [1 -2 2 -1 0 O]T et
- la premiere colonne de P24 est [3 -3 0 0 0 O]T.
Dans un autre mode particulier de realisation, I'ensemble lI contient
les matrices circulantes P a Pe definies precedemment.
Dans un autre mode particulier de realisation, I'ensemble fI contient
les matrices circulantes P a P20 definies precedemment.
Dans un autre mode particulier de realisation, I'ensemble [I contient
les matrices circulantes P a P24 definies precedemment.
Dans un autre mode particulier de realisation, I'ensemble fI contient
les matrices circulantes P, P2 et P2 a P24 definies precedemment.
Dans un autre mode particulier de realisation, I'ensemble II contient
les matrices circulantes P a Pe et P2 a P24 definies precedemment.
On definit ainsi des conditions plus ou moins severes et telles que, s'il est possible de les satisfaire, I'action sur les residue modulo L des indices i des symboles de la sequence a(x) sera non seulement relativement homogene, mais se traduira en outre par une amelioration plus ou moins prononcee de la portee totale (en anglais "full span") des sequences de faible poids (on rappelle
plus loin la definition de la portee totale).
Dans le meme but que celui indique plus haut, la presente invention propose un procede de codage pour la transmission dtinformations, remarquable en ce qutil met en ceuvre un procede d'entrelacement tel que decrit succinctement ci-dessus, et en ce que: - I'entier L mentionne plus haut est la periode commune a un premier et a un second polynomes predetermines a coefficients binaires g(x) et g*(x) de degre d et de terme constant egal a 1; - on presente les informations sous la forme de sequences binaires u de longueur I = n - 2d, ou n est un multiple predetermine de L; - on produit, pour chacune des sequences u, un triplet _ de sequences binaires (a,b,_) destinees a etre transmises et obtenues comme suit: - la sequence b est representee par le polynome b(x) = a(x). f(x)/g(x), ou f(x) est un deuxieme polynGme a coefficients binaires predetermine, sans diviseur commun avec g(x), - la sequence _ est representee par le polynome c(x) = a*(x).f2(x)/g*(x), ou f2(x) est un troisieme polynome a coefficients binaires predetermine, sans diviseur commun avec g*(x), et ou a*(x) est un polynome associe a une sequence a* produite par entrelacement de la sequence a, et - la sequence a est de longueur n et obtenue en inserant dans la n-1 sequence u 2d bits de bourrage de fa,con que le polynome a(x)= ajxi i=o associe a a soit divisible par g(x) et que le polynome a*(x) soit divisible par g*(x). Dans un mode particulier de realisation, les premier et second
polynomes g(x) et g*(x) vent identiques.
Toujours dans le meme but, la presente invention propose aussi un procede de decodage, remarquable en ce qutil permet de decoder des sequences re, cues qui ont ete emises apres avoir ete codees par l'intermediaire
d'un procede de codage tel que ci-dessus.
Toujours dans le meme but, la presente invention propose egalement un dispositif de codage de sequences de donnees destinees a etre transmises, ces sequences etant codees par l'intermediaire d'un procede de codage tel que ci-dessus, ce dispositif etant remarquable en ce qutil comporte: - des moyens pour obtenir, pour chaque sequence de donnees u, la sequence a associee a u en inserant dans la sequence u les 2d bits de bourrage precites, et - au moins un codeur comportant un entrelaceur apte a realiser la
permutation prevue dans le procede d'entrelacement precise.
Toujours dans le meme but, la presente invention propose en outre un dispositif de decodage destine a mettre en ceuvre un procede de decodage tel que ci-dessus, remarquable en ce qutil comporte: - au moins un decodeur comportant deux entrelaceurs apses a realiser la permutation prevue dans le procede d'entrelacement precitb, et un desentrelaceur apte a inverser cette permutation, et - une unite adaptee a produire une sequence binaire u en otant 2d bits de la sequence estimee a obtenue a ['issue du decodage de sequences re,cues a', b' et _' correspondent respectivement aux sequences emises a, b et _, les 2d bits a oter correspondent aux 2d bits inseres dans la sequence u pour
obtenir la sequence a.
La presente invention vise egalement: - un appareil d'emission de signaux numeriques codes, comportant un dispositif de codage tel que ci-dessus et comportant une unite adaptee a emettre les sequences codees a, b et_; - un appareil de reception de signaux numeriques codes, comportant un dispositif de decodage tel que ci-dessus et comportant une unite adaptee a recevoir les sequences a', b' et_'; - un reseau de telecommunications, comportant au moins un appareil d'emission ou un appareil de reception tel que ci-dessus; - une station de base dans un reseau de telecommunications, comportant au moins un appareil d'emission ou un appareil de reception tel que ci-dessus; - une station mobile dans un reseau de telecommunications, comportant au moins un appareil d'emission ou un appareil de reception tel que ci-dessus; - un moyen de stockage d'informations risible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, permettant la mise en ceuvre d'un procede d'entrelacement eVou d'un procede de codage et/ou d'un procede de decodage tels que ci-dessus; - un moyen de stockage d'informations amovible, partiellement ou totalement, risible par un ordinateur ou un microprocesseur conservant des instructions d'un programme informatique, permettant la mise en ceuvre d'un procede d'entrelacement eVou d'un procede de codage eVou d'un procede de decodage tels que ci-dessus; - un produit programme d'ordinateur comportant des sequences d/instructions pour mettre en couvre un procede d'entrelacement eVou un
procede de codage eVou un procede de decodage tel que ci-dessus.
Les caracteristiques particulieres et les avantages du procede et du dispositif de codage, du procede et du dispositif de decodage, des appareils d'emission et de reception de signaux numeriques, du reseau de telecommunications, de la station de base, de la station mobile, des differents moyens de stockage et du produit programme d'ordinateur etant similaires a
ceux du procede d'entrelacement selon ['invention, ils ne vent pas rappeles ici.
D'autres aspects et avantages de ['invention appara^tront a la lecture
de la description detaillee qui suit d'un mode particulier de realisation, donne a
titre d'exemple non limitatif. La description se refere aux dessins qui
I'accompagnent, dans lesquels: - la figure 1, deja decrite, representeschematiquement un turbocodeur classique de rendement 1/3; - la figure 2 est un organigramme illustrant les principales etapes d'un procede d'entrelacement conforme a la presente invention, dans un mode particulier de realisation; - la figure 3 est un graphique illustrant les performances comparatives de plusieurs entrelaceurs; - la figure 4 represente schematiquement un appareil d'emission de signaux numeriques selon un mode particulier de realisation de ['invention; - la figure 5 represente schematiquement un mode de realisation de ['invention au sein d'un dispositif de turbodecodage a deux parites; - la figure 6 represente schematiquement un appareil de reception de signaux numeriques selon un mode particulier de realisation de ['invention; et - la figure 7 represente schematiquement un mode de realisation de reseau de telecommunications sans fil susceptible de mettre en ceuvre
1 5 I'invention.
n-1
Soit a(x) = a jxi un polynome representant une sequence binaire a.
i=o Par abus de langage, a(x) est parfois appelee sequence d'information. Dans toute la suite, les entrelaceurs verrous de l'art anterieur dvoques precedemment vent appeles "multiverrous" (en anglais "multiwheet') car ils utilisent un entrelaceur verrou elementaire pour chaque composante homogene de la sequence d'information a(x). A ['inverse, les entrelaceurs verrous conformes a la presente invention vent appeles "monoverrou" (en anglais "monowheet') car
ils n'utilisent qu'un seul entrelaceur verrou.
n-1 * Soit a*(x)= ajx' le polynome representant la sequence a* i=o obtenue apres entrelacement de a(x). On suppose que n est le produit de deux entiers R et M tels que R > M. Soit h = [h(0),..., h(M-1)] un M- uplet d'entiers
non negatifs inferieurs a R-1.
On ecrit tout i [0,n-1] sous la forme i = rM + c, ou c [0,M-1]. Si la permutation: i i* = (i) peut Gtre definie par i* = [r-h(c)]M + c mod n, I'entrelaceur correspondent est appele entrelaceur monoverrou. Le turbocode associe a cet entrelacaur est ['ensemble de tous les triplets v(x) = [a(x) a(x)f1 (x) / g(x) a * (x)f2 (x) / g(x)] qui correspondent a des polynomes a(x) tels que a(x) et a*(x) vent tous deux divisibles par un polynome g(x) de degre t. Comme on l'a explique plus haut, ce couple de contraintes peut, pour la majorite des entrelaceurs, etre satisfait si on choisit judicieusement 2t bits parmi les n bits de a(x) pour les calculer en fonction des n-2t bits restarts, lesquels dont les veritables bits d'information. Dans toute la suite, on suppose queg(x)=1 +x2+x3,f(x) =1 +x+x3etquef2(x)=1 +x+x2+x3.Onadonct _ - J. La general isatio n a d 'a utres polynomes g (x) est aisee et non decrite ici. De fa,con similaire, la generalisation au cas ou a*(x) doit etre divisible, non par g(x), mais par un polynome equivalent g*(x) (c'est-a-dire de meme periode)
est aisee et non decrite ici.
Si a(x) et a*(x) vent tous deux divisibles par g(x), a(x) est une sequence cite TTC (a prendre en compte, en anglais "To be Taken into Consideration"). La presente invention cherche a optimiser le choix de h pour rendre l'entrelaceur correspondent aussi efficace que possible lors du traitement de sequences TTC. Conformement a ['invention, le choix de h est tel que pour les polynomes a(x) qui vent TTC et ont un poids binaire ou poids de Hamming (c'est-a-dire un nombre de coefficients non nuls) egal a 2, 3 ou 4, le
poids de v(x) est relativement eleve.
On pose comme hypothese generale que M n'est pas divisible par 7 et que c d implique in(c) in(d) mod R. Comme le montre la figure 2, le procede d'entrelacement conforme la presente invention consiste tout d'abord, iors d'une etape 20, a determiner un M-uplet ho = [ho(0),..., ho(M-1)] d'entiers non negatifs inferieurs a R-1 tel que, etant donne un ensemble predetermine lI de matrices circulantes P de dimension MxM, pour toute matrice P de II, les residue modulo R des
composantes du vecteur ho.P soient non nuls.
On peut determiner le M-uplet ho en imposant deux conditions, a savoir, en choisissant un ensemble II contenant les matrices circulantes P et P2 definies dans ['introduction En variante, on peut imposer davantage de conditions. Dans l'une de ces variantes, I'ensemble n contient les matrices circulantes P3 a P8 definies dans ['introduction. Dans une autre variante, I'ensemble fI contient les matrices Pg a P20 definies dans ['introduction. Dans une autre variante, I'ensemble
contient les matrices P2 a P24 definies dans ['introduction.
Dans d'autres variantes, on peut determiner le M-uplet ho en procedant par selections successives. Ainsi, dans une autre variante, I'ensemble II contient a la fois les matrices P., P2 et les matrices P3 a P8, c'est adire que parmi les M-uplets d'entiers non negatifs inferieurs a R-1 tels que les residue modulo R des composantes des vecteurs ho. P. et ho. P2 solent non nuls, on ne retient que ceux qui vent en outre tels que les residue modulo R des composantes des vecteurs ho.P3 a ho.P8 soient non nuls. De fa,con similaire: - dans une autre variante, I'ensemble II contient a la fois les matrices P a P8 et les matrices Pg a P20, - dans une autre variante, I'ensemble contient a la fois ies matrices P a P20 et les matrices P2 a P24, - dans une autre variante, I'ensemble lI contient a la fois les matrices P, P2 et les matrices P2 a P24, - dans une autre variante, I'ensemble n contient a la fois les
matrices P a P8 et les matrices P2 a P24.
Puis, comme le montre la figure 2, lors d'une etape 22, on permute les composantes du M-uplet ho = [ho(0),, ho(M-1)] pour obtenir un M-uplet h = [h(0),..., h(M-1)] dont les composantes vent definies par h(Lxc mod M) = ho(C), ou L est un entier relativement premier avec M. Dans toute la suite, on decrit l'exemple particulier ou L = 7 est la periode d'un polynome g(x) dans
['application non limitative de ['invention aux turbocodes.
Enfin, lors d'une etape 24, on obtient, a partir de la sequence a, une sequence binaire entrelacee a* representee par un polynome a*(x)= ajx i=o
ou i* = [r- h(c)].M + c mod n.
Considerons tout d'abord les sequences a(x) de poids 2.
Soit a(x) = xi + xi et a*(x) = xi* + xi avec i=rM+c,j=sM+d, (19) i = [rh(c)]M + c, j* = [s-h(d)]M + d. (20) Pour une sequence a(x) TTC de poids 2, on definit la portee totale (en anglais "full span") fsp(a(x)) par liil + li*-i*l. Les conditions qui font de a(x) une sequence TTC vent i _j mod 7, i*-j* mod 7, (21) . ce qu'sgnifie (r-s)M + (c-d) _ 0 mod 7, (22) (r-s)M + (c-d) _ [h(c)-h(d)]M mod 7. (23) Comme M a ete suppose relativement premier avec 7, ces deux conditions ne peuvent etre simultanement satisfaites que si h(c)-h(d) _ 0 mod 7. (24) En supposant que la condition (24) soit satisfaite, determinons ia valeur minimale de fsp(a). A partir des equations (19) et (20), on obtient fsp(a) = I(r-s)M + (c-d)| + |(r-s)M + (c-d) - [h(c)-h(d)]MI Si c = d, alors le fait que M soit relativement premier avec 7 implique, en utilisant ltequation (22), lr-sl = 7t avec t 2 1, ce qui donne fsp(a) 2 7M. Si c d, fsp(a) est de la forme IFI + IF - [h(c)-h(d)]MI ou F designe le membre de gauche de ['equation (22) et ou Ih(c)-h(d)l = 7t pour t 2 1. On a a nouveau fsp(a)
2 7M.
A titre d'exemple nullement limitatif, pour R = 35 et M = 11, si toutes les composantes in(i) de h vent differentes, la portee totale des sequences TTC de poids 2 est superieure a 7x11 = 77. En consequence, le poids minimal des
sequences codees correspondantes v(x) est superieur a 50.
Considerons maintenant les sequences a(x) de poids 4.
Soita(x)=xi+xi+xk+xieta*(x)=xi +xi +xk +x avec i = rM + c, j = sM + d, k = tM + e, I = uM + f, (25) i* = [r-h(c)]M + c, j* = [s-h(d)]M +d, k = [th(e)]M + e, I* = [u-h(f)]M + f (26) On ne considere ici qu'une partie des cas ou a(x) est une sequence TTC. Ces cas se caracterisent comme suit. En supposant que i < j < k < I, les residue modulo 7 de i et j vent egaux, de meme que les residue modulo 7 de k et de 1. De plus, on suppose que les quatre entiers i*, j*, k* et l* vent tels que les deux plus petite d'entre eux ont le meme residu modulo 7 et que les deux plus
grands d'entre eux ont aussi le meme residu modulo 7.
Pour une sequence a(x) TTC de poids 4, la portee totale fsp(a(x)) est definie par f + f* avec f = 0-i) + (I-k) et f* = f* + f2* ou f* (respectivement f2*) est la valeur absolue de la difference entre les deux plus petite (respectivement les deux plus grands) entiers de ['ensemble {i*, j*, k*, I*}. Dans ces conditions, qui font de a(x) une sequence TTC, il est avantageux que pour i "proche" de j et pour k "proche" de 1, les nombres f,* et f2* soient suffisamment grands pour
rendre fsp(a(x)) suffisamment elevee.
II existe 24 ordonnancements possibles pour les quatre entiers i*, j*,
k* et l*.
Les situations quton cherche a eviter vent celles ou j = i + 7 et I = k + 7 et ou l'une quelconque des huit situations suivantes se produit apres entrelacement: 1. k*=i*+7etl*=j*+7 2. k*=i*+7etl*=j*-7 3. k*=i*-7etl*=j*+ 7 4. k*=i*-7etl*=j*-7 5. I*=i*+7etk*=j*+7 6. I*=i*+7etk*=j*-7 7. I*=i*7etk*=j*+7 8. I*=i*-7etk*=j*-7
On traite ci-dessous a titre d'exemple trots de ces huit situations.
Situation 1 Supposons que k* = i* + 7 et l* = j* + 7. On obtient, par (25) et (26), [t-h(e)]M + e = [r-h(c)]M + c + 7 (27) [t-h(e+7)]M + e + 7 = [rh(c)]M + c + 14 (28) Ici et dans toute la suite, e + 7 et c + 7 vent calcules modulo M. Cela . mplque [h(e+7) - h(e)]M - 7 = [h(c+7) - h(c)]M 7 (29) De plus, le fait que M soit suppose relativement premier avec 7 implique, en partant de (27) ou (28), que e _ c + 7 mod M. On obtient alors, a partir de ['equation (29): h(c+14) - 2h(c+7) + in(c) - 0 mod R (30) Cela constitue une condition necessaire pour avoir les egalites
exprimees au point 1 ci-dessus.
Situation 2 Supposons que k* = j* - 7 et l* = i* + 7. On obtient [t-h(e+7) ]M + e + 7 = [r-h(c)]M + c - 7 (31) [t-h(e)]M + e = [r-h(c+7)]M + c (32) ce qui implique (29) et 2[h(c+7) - h(c)] _ 0 mod R (33) Cela constitue une condition necessaire pour avoir les egalites
exprimees au point 6 ci-dessus.
Situation 3 Supposons que k* = i* + 7 et l* = j* - 7. On obtient [t-h(e)] M + e = [r-h(c)]M + c + 7 (34) [t-h(e+7)]M + e + 7 = [r-h(c+7)]M + c (35) ce qui implique e _ c + 7 mod M en utilisant ['equation (34) et e _ c - 7 mod M en utilisant ['equation (35). Sachant que M est suppose etre relativement premier avec 7, les deux conditions vent incompatibles et l'obtention des egalites exprimees au point 2 ci-dessus est impossible lorsque j = i + 7 et I = k + 7. Les autres points peuvent etre traites de fa,con similaire. Ils
n'engendrent pas d'autre condition necessaire que (30) et (33).
En resume, on a obtenu deux conditions telles qutau moins l'une d'elles est satisfaite si la portee totale d'une sequence a(x) TTC de poids 4 est egale a 28. Pour s'assurer que cette portee totale vaut au moins 35 ou plus, il convient de choisir les elements in(i) de h (qui est suppose satisfaire les conditions propres aux sequences a(x) de poids 2) de telle fa,con que, lorsque les indices i de in(i) vent calcules modulo M, ces in(i) ne verifient ni la condition (30), ni la condition (33). Des conditions semblables peuvent etre imposees pour garantir que cette portee totale soit egale ou superieure a tout multiple de 7 prealablement choisi. Wiles ont ete explicitees ci-dessus en termes de matrices Pj. II n'est toutefois pas garanti qu'elles seront realisables si les valeurs
de R et de M ne vent pas assez elevees.
Considerons maintenant les sequences a(x) de poids 3.
Soit a(x) = xi + xj + xk et a*(x) = xi + xi* + xkA avec i=rM+c,j=sM+d, k=tM+e, (36) i = [r-h(C)]M + c, j* = [s-h(d)]M + d, k* = [t-h(e)]M + e (37) Pour une sequence a(x) TTC de poids 3, la portee totale fsp(a(x)) de a(x), est definie par max{i,j,k} - min{i,j,k} + max{i*,j*,k*} - min{i*, j*,k*}. Le poids de la sequence codee v(x) correspondent a une sequence dtinformation a(x) de poids 3 depend etroitement de la portee totale de a(x) associee a la permutation a(x) a*(x). Dans le cas d'entrelaceurs monoverrou, une solution tres simple existe pour maximiser la portee totale minimale des sequences de poids 3. Dans ce cas, la portee totale fsp(a(x)) est fsp(a(x)) = k - i + max(i*,j*,k*) - min(i*,j*,k*) (38) Pour garantir une bonne portee totale pour toute sequence a(x) de poids 3, on choisit de poser des conditions sur les trots quantites li-il + li*-i*l, li kl + Ij*-k*l et Ik-il + Ik*-i*l. Bien entendu, la valeur de fsp(a(x)) sera plus grande que l'une quelconque de ces quantites. Considerons par exemple j - i = (s-r)M + (d-c), (39) j*- i* = (s-r)M + (d-c) - M(h(d)-h(c) ) (40) On observe que 10-i) - 0*-i*)l = M Ih(d) - h(c)l. Cela implique que li-il + li*-i*l 2 M Ih(d) - h(c)l. Ainsi, si on choisit les elements du M-uplet h dans un ensemble d'entiers relativement premiers avec R et tels que, pour tout couple (c,d) de cet ensemble, Ih(d) - h(c)l 2 u avec u > 0, la portee totale de toute
sequence a(x) de poids 3 sera superieure a Mu.
On illustre ci-dessous par un exemple comment appliquer les regles
et observations faites precedemment.
On choisit R = 35 et M = 11. Puis, pour satisfaire les conditions decrites precedemment, on suppose qu'on restreint les valeurs possibles des entiers in(i) au soul-ensemble {3,6,9,12,16,19,22,26,29,32} des entiers non negatifs inferieurs a 34. Ensuite, on applique une regle de selection connue, decrite dans le document FR-A-2 805 103, pour trouver, dans ['ensemble de tous les 11-uplets ho avec ho(0) = 0 et ho(i) appartenant au soul-ensemble ci dessus pour 1 < i < 10, un 11-uplet ko qui satisfait des proprietes A1, A2, A3 et A4 definies comme suit: Propriete A1: supposons que R 2 M 2 2. Toute sequence z(x) de poids egal a 2 et entrelacee par un entrelaceur verrou de taille RxM specific par un M-uplet ho verifiera fsp(z) 2 2 lorsque tous les residue modulo R des
composantes de ho vent differents.
Propriete A2: supposons que R 2 M 2 6. Soit P la matrice circulante de dimension MxM dont la premiere colonne est [1 -2 1 0... 0]T et soit P2 la
matrice circulante de dimension MxM dont la premiere colonne est [2 -2 0.. .
0]T. Toute sequence z(x) de poids egal a 4 entrelacee par un entrelaceur verrou de taille RxM specific par un M-uplet ho verifiera fsp(z) 2 6 si ho verifie la propriete A1 et si les residue modulo R des composantes de hoP et de hoP2
vent non nuls.
Propriete A3: supposons que R 2 M 2 8. Considerons alors les matrices circulantes Pj, i = 3,..., 8 de dimension MxM dont les premieres colonnes vent respectivement: [1 -1 -1 1 0 0]T pour P3, [1 -1 1 -1 0 0]T pour P4, [1 0-2 1 0 0]T pour P5, [1 -2 0 1 0 0]T pour P6, [2 -1 -1 0 0]T pour P7,
[1 1 -2 0 0]T pour P8.
Toute sequence z(x) de poids egal a 4 entrelacbe par un entrelaceur verrou de taille RxM specific par un M-uplet ko verifiera fsp(z) 2 8 si ko verifie les proprietes A1 et A2 et si, pour tout i, i = 3,..., 8, les residue modulo R des
composantes de toPi vent non nuls.
Propriete A4: supposons que R 2 M 2 8. Considerons les quatre matrices circulantes Pj, i = 21,..., 24 de dimension MxM dont les premieres colonnes vent respectivement: [1 -3 2 0... 0]T pour P2, [2 -3 1 0... 0]T pour P22, [1 -2 2 -1 0 0]T pour P23,
[3-3 0... 0] pour P24.
Toute sequence z(x) de poids egal a 6 entrelacee par un entrelaceur verrou de taille RxM specific par un M-uplet ko verifiera fsp(z) 2 8 si ko verifie la propriete A1 et si, pour tout i, i = 9,..., 12, les residue modulo R des
composantes toPi vent non nuls.
Le 11 -uplet ko = [O. 3, 12, 16, 6, 19, 26, 9, 32, 29, 22] (41)
satisfait ces proprietes.
Enfin, pour i = 0,..., 10, I'element ho(i) de ko est deplace vers la position 7i mod 11 pour aboutir a un nouveau 11-uplet k donne par k = [O. 32,19, 12, 22, 9, 6, 3, 29, 26, 16] Pour le turbocode correspondent a cet entrelaceur monoverrou, la longueur des sequences d'information est egale a 35x11 = 385. Ce turbocode a ete simule sur un canal a bruit blanc gaussien additif ou AWGN (en anglais "Additive White Gaussian Noise") et compare a trots autres entrelaceurs de la meme taille. Les taux d'erreur frame (en anglais "frame error rate") de ces quatre entrelaceurs vent representes sur la figure 3 en fonction du rapport signal sur bruit. Le premier de ces entrelaceurs, represente par des triangles sur le graphique, est l'entrelaceur standard 3GPP, le deuxieme, represente par des cercles, est un entrelaceur du type dit "x vers xe" avec e = 71. On rappelle qu'un entrelaceur du type "x vers xe" est defini comme suit: si u designe une sequence d'entree de longueur n et u* la sequence permutee, I'entrelaceur deplace chaque bit qui se trouve initialement en position i dans u, vers une position (e.i modulo n) dans u*. Le troisieme entrelaceur, represente par des
croix sur le dessin, est un entrelaceur multiverrous.
On observe que c'est l'entrelaceur correspondent a la presente invention, represente par des etoiles sur le dessin, qui est le plus efficace. La figure 4 montre, de fa,con tres schematique, un appareil d'emission de signaux numeriques 48 mettant en ceuvre ['invention. Ce dispositif comprend un clavier 911, un ecran 909, une source d'informations externe 910, un emetteur hertzien 906, conjointement relies a des ports d'entree/sortie 903 d'un dispositif de codage 901 qui est realise ici sous la forme
d'une unite logique.
Le dispositif de codage 901 comporte, relies entre eux par un bus d'adresses et de donnees 902: - une unite centrale de traitement 900, une memoire vive RAM 904, - une memoire morte 905, et
- lesdits ports d'entree/sortie 903.
L'unite centrale de traitement 900 est adaptee a mettre en ceuvre
l'organigramme illustre en figure 2.
Chacun des elements illustres en figure 4 est bien connu de l'homme du metier des micro-ordinateurs et des systemes de transmission et, plus generalement, des systemes de traitement de ['information. Ces elements connus ne vent done pas decrits ici. On observe, cependant, que: - la source d'informations 910 pourrait etre, par exemple, un peripherique d'interface, un capteur, un demodulateur, une memoire externe ou un autre systeme de traitement de ['information (non represente), et pourrait par exemple fournir des sequences de signaux representatifs de parole, de messages de service ou de donnees multimedia notamment de type IP ou ATM, sous forme de sequences de donnees binaires, - I'emetteur hertzien 906 est adapte a mettre en ceuvre un protocole de transmission par paquets sur un canal non filaire, et a transmettre ces
paquets sur un tel canal.
La memoire vive 904 conserve des donnees, des variables et des resultats intermediaires de traitement, dans des registres de memoire portent,
dans la description, les memes noms que les donnees dont ils conservent les
valeurs. On observera, au passage, que le mot "registre" designe, a travers la
presente description, aussi bien une zone memoire de falble capacite (quelques
donnees binaires) qu'une zone memoire de grande capacite (permettant de stocker un programme entier) au sein d'une memoire vive ou d'une memoire morte. La memoire vive 904 comporte notamment les registres suivants: - un registre "nb_donnees" dans lequel est conservee la longueur k de la sequence de donnees u, - un registre "a", dans lequel est conservee la sequence a obtenue en prolongeant la sequence u au moyen de bits de bourrage, - un registre "a*", dans lequel est conservee la sequence entrelacee a*, - un registre "a,b,c" dans lesquels vent conservees les sequences a, b et _ resultant du turbocodage, et - un registre "trame_radio" dans lequel est conservee l'integralite de
la frame radio a emettre.
La memoire morte 905 est adaptee a conserver, dans des registres qui, par commodite, possedent les memes noms que les donnees qu'ils conservent: le programme de fonctionnement de ['unite centrale de traitement 900, dans un registre"programme", - les coefficients du polynome g(x), dans un registre "g", - les coefficients du polynome f(x), dans un registre "f", les coefficients du polynome f2(x), dans un registre "f", - la longueur des sequences a et a*, dans un registre "n", - la permutation definissant l'entrelaceur, dans un registre "entrelaceu/', et
- la valeur L de la periode de g dans un registre "L".
La figure 5 represente un dispositif de decodage 1101 apte a decoder des donnees fournies par un appareil tel que celui de la figure 4. Le decodage apres reception est effectue par un turbodecodeur constitue de deux decodeurs, de deux entrelaceurs, d'un desentrelaceur 12, d'un additionneur 70 et d'une unite de decision 80. Les decodeurs, qui vent designee par "Decodeur 1" et "Decodeur 2" sur la figure 5, vent de preference des decodeurs MAP (en anglais "Maximum A Posteriori Probabiliff', c'est-a-dire "Probabilite Maximum A Posteriori"), par exemple du type BCJR, ctest-a-dire utilisant l'algorithme de Bahl, Cocke, Jelinek et Raviv; mais on pourra egalement utiliser d'autres genres de decodeurs, par exemple du type SOVA (en anglais: "Soff Outpuf Viferbi Algorithm"). De preference aussi, le decodage tient compte de la
valeur courante du rapport signal sur bruit.
Un turbodecodeur classique necessite egalement un rebouclage de la sortie du desentrelaceur 2 sur ['entree du premier decodeur afin de transmettre au premier decodeur ['information cite extrinseque produite par le
second decodeur.
Le turbodecodeur 300 re,coit les sequences codees a', b' et_' en provenance d'un recepteur 1106 (voir figure 6 decrite ci-apres). Une fois le decodage "ermine, la sequence a, qui est une estimation de la sequence a emise par l'emetteur 906, est envoyee a un module tronqueur 335. Ce tronqueur 335, selon ['invention, produit une sequence u en otant les d derniers bits de correspondent aux bits de bourrage ajoutes avant codage. Enfin,
cette sequence u est envoyee vers un destinataire d'informations 1110.
Le schema synoptique de la figure 6 represente un appareil de reception de signaux numeriques 333 incorporant le dispositif de la figure 5. II comprend un clavier 1111, un ecran 1109, un destinataire d'informations externe 1110, un recepteur hertzien 1106, conjointement relies a des ports d'entree/sortie 1103 d'un dispositif de decodage 1101 qui est realise ici sous la
forme d'une unite logique.
Le dispositif de decodage 1101 comporte, relies entre eux par un bus d'ad resees et de donnees 1102: - une unite centrale de traitement 1100, - une memoire vive RAM 1104, - une memoire morte 1105, et
- lesd its ports d'entree/sortie 1 103.
Chacun des elements illustres en figure 6 est bien connu de l'homme du metier des micro-ordinateurs et des systemes de transmission et, plus generalement, des systemes de traitement de ['information. Ces elements connus ne vent done pas decrits ici. On observe, cependant, que: - le destinataire d'informations 1110 pourrait etre, par exemple, un peripherique d'interface, un afficheur, un modulateur, une memoire externe ou un autre systeme de traitement de ['information (non represente), et pourrait etre adapte a recevoir des sequences de signaux representatifs de parole, de messages de service ou de donnees multimedia notamment de type IP ou ATM, sous forme de sequences de donnees binaires, - le recepteur hertzien 1106 est adapte a mettre en ceuvre un protocole de transmission par paquets sur un canal non filaire, et a transmettre
ces paquets sur un tel canal.
La memoire vive 1104 conserve des donnees, des variables et des resultats intermediaires de traitement, dans des registres de memoire portent,
dans la description, les memes noms que les donnees dont ils conservent les
valeurs. La memoire vive 1104 comporte notamment les registres suivants: un registre "donnees_reques", dans lequel vent respectivement conservees les sequences re,cues a', b', et_', - un registre "inf extrinseques", dans lequel vent respectivement conservees les sequences intermediaires de decodage en sortie du Decodeur 2 de la figure 5, - un registre "donnees_estimees", dans lequel vent conservees la sequence decodee a et la sequence entrelacee correspondante a*, - un registre "nb_iterafions", dans lequel est conservee la valeur du nombre d' iterations deja effectuees par le turbodecodeu r, - u n reg istre "nb_donnees" dans lequel est conservee la long ueu r de la sequence u issue du tronqueur 335, et un registre "trame_radio" dans lequel est conservee l'integralite de
la frame radio re,cue.
La memoire morte 1105 est adaptee a conserver, dans des registres qui, par commodite, possedent les memes noms que les donnees qu'ils conservent: le programme de fonctionnement de ['unite centrale de traitement 1100, dans un registre "Programme", - les coefficients du polynome g(x), dans un registre "g", - les coefficients du polynome f(x), dans un registre "f", les coefficients du polynome f2(x), dans un registre "f2', - la longueur des sequences a et a*, dans un registre "n", - la permutation definissant l'entrelaceur, dans un registre "entrelacou/', - la valeur L de la periode de g dans un registre "L", et - le nombre maximal alliterations dans un registre "nb_iteration_max". Dans certaines applications, il est commode d'utiliser le meme dispositif informatique (fonctionnant en mode multi-taches) pour ['emission et la reception de signaux selon ['invention. Dans ce cas, les unites 901 (figure 4) et
1101 (figure 6) vent physiquement identiques.
Le procede conforme a ['invention peut etre mis en couvre au sein d'un reseau de telecommunications, comme le montre la figure 7. Le reseau represente, qui peut par exemple etre constitue par un des future reseaux de communication tels que les reseaux UMTS, est constitue d'une station cite station de base SB designee par la reference 64, et de plusieurs stations peripheriques SPj, i = 1,..., p, ou p est un entier superieur ou egal a 1, respectivement designees par les references 66, 662,..., 66p. Les stations peripheriques 66, 662,..., 66p vent eloignees de la station de base SB, reliees chacune par une liaison radio avec la station de base SB et susceptibles de se
* deplacer par rapport a cette derriere.
La station de base SB et cheque station peripherique SPj peuvent comprendre un dispositif de codage 901 tel que decrit en reference aux figures 4, 5 et 6, un bloc d'emission et un module radio muni d'un emetteur classique
comportant un ou plusieurs modulateurs, des filtres et une antenne.
La station de base SB et chaque station peripherique SPj selon ['invention peuvent comprendre egalement un dispositif de decodage 1101 tel que decrit en reference aux figures 5 et 6, un bloc de reception et un module
radio avec son antenne.
La station de base SB et les stations peripheriques SPj peuvent comprendre de surcro^'t, selon les besoins, une camera numerique, un ordinateur, une imprimante, un serveur, un telecopieur, un scanner ou encore
un appareil photographique numerique, ces exemples ntetant pas limitatifs.
c 2837331
Claims (20)
1. Procede d'entrelacement d'une sequence binaire a representee n-1 par un polynome a(x)= ajxi, n etant le produit de deux entiers R et M tels i=o que R 2 M7 i etant un entier pouvant s'ecrire i = r.M + c, r etant un entier non negatif et c etant un entier compris dans l'intervalle [0, M-1] , ledit procede etant caracterise en ce qu'il consiste a obtenir, a partir de la sequence a, une sequence binaire entrelacee a* representee par un polynome a*(x)= ajxi i=o ou i* = [r- h(c)].M + c mod n, les nombres in(c) etant obtenus par: - le choix d'un M-uplet ho = [ho(O),, ho(M-1)] d'entiers non negatifs inferieurs a R-1 tel que, etant donne un ensemble predetermine n de matrices circulantes P de dimension MxM, pour toute matrice P de n, les residue modulo R des composantes du vecteur ho P soient non nuls; et - le choix correspondent d'un M-uplet h = [h(O),..., h(M-1)] obtenu a partir du M-uplet ho par application d'une permutation deplagant ltelement ho(C) en position Lxc mod M, L etant un entier relativement premier avec M.
2. Procede selon la revendication 1, caracterise en ce que ['ensemble II contient des matrices circulantes P. et P2 teiles que: - la premiere colonne de P' est [1 -2 1 0 O]T et - la premiere colonne de P2 est [2 -2 0 0 O]T,
OU T designe la transposition.
3. Procede selon la revendication 1, caracterise en ce que ['ensemble n contient des matrices circulantes P3 a P telles que: - la premiere colonne de P3 est [1 -1 -1 1 0 O]T, - la premiere colonne de P4 est [1 -1 1 -1 0 O]T, - la premiere colonne de P5 est [1 0-2 1 0 O]T, - ia premiere colonne de P6 est [1 -2 0 1 0 O]T, - la premiere colonne de P7 est [2 -1 - 1 0 0 O]T et - la premiere colonne de Pe est [1 1 -2 0 0 O]T,
OU T designe la transposition.
4. Procede selon la revendication 1, caracterise en ce que ['ensemble n contient des matrices circulantes Pg a P20 telles que: - la premiere colonne de Pg est [1 1 -1 -1 0 O]T, - la premiere colonne de P1O est [1 1 0 1 -1 0 O]T, - la premiere colonne de P, est [1 -1 0 -1 1 0 O]T, - la premiere colonne de P2 est [1 0-1 -1 1 0... O]T, - la premiere colonne de P43 est [1 -1 -1 0 1 0... O]T, - la premiere colonne de P4 est [1 0 -1 1 1 0... O]T, - la premiere colonne de P45 est [1 -1 1 0 -1 0. O]T, - la premiere colonne de P6 est [1 0 -2 0 1 0... O]T, - la premiere colonne de Pj7 est [1 0 0 -2 1 0... O]T, - la premiere colonne de P'8 est [1 -2 0 0 1 0... O]T, - la premiere colonne de P'g est [1 0 1 -2 0 0... O]T et - la premiere colonne de P20 est [2 -1 0 -1 0 0 O]T,
OU T designe la transposition.
5. Procede selon la revendication 1, caracterise en ce que ltensemble n contient des matrices circulantes P2, a P24 telles que: - la premiere colonne de P2 est [1 -3 2 0 0 O]T, - la premiere colonne de P22 est [2 -3 1 0 0 O]T, - la premiere colonne de P23 est [1 -2 2 -1 0 O]T et - la premiere colonne de P24 est [3 -3 0 0 0 O]T,
OU T designe la transposition.
6. Procede selon la revendication 1, caracterise en ce que I'ensemble II contient des matrices circulantes P. a Pe telles que: - la premiere colonne de P est [1 -2 1 0 O]T, - la premiere colonne de P2 est [2 -2 0 0 O]T, - la premiere colonne de P3 est [1 -1 -1 1 0 O]T, - la premiere colonne de P4 est [1 -1 1 -1 0 O]T, - la premiere colonne de P5 est [1 0 2 1 0 O]T, - la premiere colonne de P6 est [1 -2 0 1 0 O]T, - la premiere colonne de P7 est [2 -1 -1 0 0 O]T et - la premiere colonne de Pe est [1 1 -2 0 0... O]T,
OU T designe la transposition.
7. Procede selon la revendication 1, caracterise en ce que ['ensemble n contient des matrices circulantes P' a P20 telles que: - la premiere colonne de P' est [1 -2 1 0 O]T, - la premiere colonne de P2 est [2 -2 0 0 O]T, - la premiere colonne de P3 est [1 -1 -1 1 0 O]T, - la premiere colonne de P4 est [1 -1 1 -1 0 O]T, - la premiere colonne de P5 est [1 0 2 1 0 O]T, - la premiere colonne de P6 est [1 -2 0 1 0. O]T, - la premiere colonne de P7 est [2 -1 -1 0 0... O]T, - la premiere colonne de Ps est [1 1 -2 0 0 O]T, - la premiere colonne de Pe est [1 1 -1 -1 0 O]T, - la premiere colonne de P1O est [1 -1 0 1 -1 0 O]T, - la premiere colonne de P' est [1 -1 0-1 1 0 O]T, - la premiere colonne de P'2 est [1 0-1 -1 1 0 O]T, - la premiere colonne de Pi3 est [1 -1 -1 0 1 0 O]T, - la premiere colonne de P,4 est [1 0-1 1 -1 0 O]T, - la premiere colonne de Pj5 est [1 -1 1 0 -1 0 O]T, - la premiere colonne de P'6 est [1 0 -2 0 1 0 O]T, - la premiere colonne de Pi7 est [1 0 0 -2 1 0 O]T, - la premiere colonne de P',3 est [1 -2 0 0 1 0 O]T, - la premiere colonne de Pg est [1 0 1 -2 0 0... O]T et - la premiere colonne de P20 est [2 -1 0 -1 0 0... O] T,
ou T designe la transposition.
8. Procede selon la revendication 1, caracterise en ce que ['ensemble II contient des matrices circulantes P' a P24 telles que: - la premiere colonne de P. est [1 -2 1 0 O]T, - la premiere colonne de P2 est [2 -2 0 0 O]T, - la premiere colonne de P3 est [1 -1 -1 1 0 O]T, - la premiere colonne de P4 est [1 -1 1 -1 0 O]T, - la premiere colonne de P5 est [1 0 2 1 0 O]T, - la premiere colonne de P6 est [1 -2 0 1 0... O]T, - la premiere colonne de P7 est [2 -1 -1 0 0... O]T7 - la premiere colonne de P8 est [1 1 -2 0 0... O]T, - la premiere colonne de Pg est [1 1 -1 -1 0 O] T, - la premiere colonne de P1O est [1 -1 01 -1 0 O]T, - la premiere colonne de P', est [1 -1 0-1 1 0 O]T, - la premiere colonne de P,2 est [1 0 -1 -1 1 0... O]T, - la premiere colonne de P43 est [1 -1 -1 0 1 0... O] T, - la premiere colonne de P,4 est [1 0-1 1 -1 0... O]T, - la premiere colonne de P45 est [1 -1 1 0 -1 0 O]T, - la premiere colonne de P6 est [1 0 -2 0 1 0... O]T, - la premiere colonne de P'7 est [1 0 0 -2 1 0... O]T, - la premiere colonne de P'8 est [1 -2 0 0 1 0... O]T, - la premiere colonne de Pe est [1 0 1 -2 0 0... O]T, - la premiere colonne de P20 est [2 -1 0 -1 0 0 O]T, - la premiere colonne de P2, est [1 -3 2 0 0... O]T, la premiere colonne de P22 est [2 -3 1 0 0... O]T, - la premiere colonne de P23 est [1 -2 2 -1 0... O]T et - la premiere colonne de P24 est [3 -3 0 0 0... O]T,
ou T designe la transposition.
9. Procede selon la revendication 1, caracterise en ce que ['ensemble n contient des matrices circulantes P, P2 et P2' a P24 telles que: - ia premiere colonne de P' est [1 -2 1 0 O]T, - la premiere colonne de P2 est [2 -2 0 0 O]T, - la premiere colonne de P2 est [1 -3 2 0 0 O]T, - la premiere colonne de P22 est [2 -3 1 0 0 O]T, - la premiere colonne de P23 est [1 -2 2 -1 0... O]T et - la premiere colonne de P24 est [3 -3 0 0 0... O]T,
OU T designe la transposition.
10. Procede selon la revendication 1, caracterise en ce que lensemble II contient des matrices circulantes P a P8 et P2 a P24 telles que: - la premiere colonne de P. est [1 -2 1 0... O]T, - la premiere colonne de P2 est [2 -2 0 0 O]T, - la premiere colonne de P3 est [1 -1 -1 1 0 O]T, - la premiere colonne de P4 est [1 -1 1 -1 0 O]T, - la premiere colonne de P5 est [1 0 -2 1 0 O]T, - la premiere colonne de P6 est [1 -2 0 1 0 O]T, - la premiere colonne de P7 est [2 -1 -1 0 0 O]T, - la premiere colonne de P est [1 1 -2 0 0 O]T, - la premiere colonne de P2 est [1 -3 2 0 0 O]T, - la premiere colonne de P22 est [2 -3 1 0 0 O]T, - la premiere colonne de P23 est [1 -2 2 -1 0 O]T et - la premiere colonne de P24 est [3 -3 0 0 0.. . O]T,
OU T designe la transposition.
11. Procede de codage pour la transmission d'informations, caracterise en ce qutil met en ceuvre un procede d'entrelacement selon l'une
quelconque des revendications precedentes, et en ce que:
- ledit entier L est la periode commune a un premier et a un second polynomes predetermines a coefficients binaires g(x) et g*(x) de degre d et de terme constant egal a 1; - on presente lesdites informations sous la forme de sequences binaires u de longueur I = n - 2d, ou n est un multiple predetermine de L; - on produit, pour chacune desdites sequences u, un triplet _ de sequences binaires (a,b,_) destinees a etre transmises et obtenues comme suit: - ladite sequence b est representee par le polynome b(x) = a(x).f(x)/g(x), ou f(x) est un deuxieme polynome a coefficients binaires predetermine, sans diviseur commun avec g(x), - ladite sequence _ est representee par le polynome c(x) = a*(x).f2(x)/g*(x) , ou f2(x) est un troisieme polynome a coefficients binaires predetermine, sans diviseur commun avec g*(x), et ou a*(x) est un polynome associe a une sequence a* produite par entrelacement de ladite sequence a, et 36: - ladite sequence a est de longueur n et obtenue en inserant dans la n-1 sequence u 2d bits de bourrage de fa,con que le polynOme a(x)= ajxi i=o associe a a soit divisible par g(x) et que le polynOme a*(x) soit divisible par
g (x).
12. Procede de codage selon la revendication precedente, caracterise en ce que lesdits premier et second polynOmes g(x) et g*(x) vent identiques.
13. Procede de decodage, caracterise en ce qu'il inclut le decodage de sequences regues qui ont ete emises apres avoir ete codees par
I'intermediaire d'un procede de codage selon la revendication 11 ou 12.
14. Dispositif de codage (901) de sequences de donnees destinees a etre transmises, lesdites sequences etant codees par l'intermediaire d'un procede de codage selon la revendication 11 ou 12, ledit dispositif etant caracterise en ce qu'il comporte: - des moyens pour obtenir, pour cheque sequence de donnees u, ladite sequence a associee a u en inserant dans la sequence u lesdits 2d bits de bourrage, et - au moins un codeur comportant un entrelaceur apte a realiser la
permutation prevue dans ledit procede d'entrelacement.
15. Dispositif de decodage (1101) destine a mettre en ceuvre un procede de decodage selon la revendication 13, caracterise en ce qu'il comporte: - au moins un decodeur (300) comportant deux entrelaceurs apses a realiser la permutation prevue dans led it procede d'entrelacement, et u n desentrelaceur apte a inverser cette permutation, et - des moyens (335) pour produire une sequence binaire u en Otant 2d bits de la sequence estimee a obtenue a ['issue du decodage de sequences re,cues a', b' et _' correspondent respectivement auxdites sequences emises a, b et _, les 2d bits a Oter correspondent aux 2d bits inseres dans la sequence u
pour obtenir la sequence a.
eel n ^
16. Appareil d'emission de signaux numeriques codes (48), caracterise en ce qu'il comporte un dispositif de codage selon la revendication 14 et en ce qu'il comporte des moyens (906) pour emettre lesdites sequences
codees a, b et_.
17. Appareil de reception de signaux numeriques codes (333), caracterise en ce qu'il comporte un dispositif de decodage selon la revendication 15 et en ce qutil comporte des moyens (1106) pour recevoir
lesdites sequences a', b' et_'.
18. Reseau de telecommunications7 caracterise en ce qu'il comporte au moins un appareil d'emission selon la revendication 16 ou un appareil de
reception selon la revendication 17.
19. Station de base dans un reseau de telecommunications, caracterisee en ce q u 'el le comporte au moins u n appa reil d 'emission selon la
revendication 16 ou un appareil de reception selon la revendication 17.
20. Station mobile dans un reseau de telecommunications, caracterisee en ce qu'elle comporte au moins un appareil d'emission selon la
revendication 16 ou un appareil de reception selon la revendication 17.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0203115A FR2837331B1 (fr) | 2002-03-13 | 2002-03-13 | Procede d'entrelacement d'une sequence binaire |
US10/386,722 US7069492B2 (en) | 2002-03-13 | 2003-03-13 | Method of interleaving a binary sequence |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0203115A FR2837331B1 (fr) | 2002-03-13 | 2002-03-13 | Procede d'entrelacement d'une sequence binaire |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2837331A1 true FR2837331A1 (fr) | 2003-09-19 |
FR2837331B1 FR2837331B1 (fr) | 2004-06-18 |
Family
ID=27772081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0203115A Expired - Fee Related FR2837331B1 (fr) | 2002-03-13 | 2002-03-13 | Procede d'entrelacement d'une sequence binaire |
Country Status (2)
Country | Link |
---|---|
US (1) | US7069492B2 (fr) |
FR (1) | FR2837331B1 (fr) |
Families Citing this family (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7236480B2 (en) * | 2002-06-07 | 2007-06-26 | Sandbridge Technologies, Inc. | Method of first interleaving of a two interleaver transmitter |
FR2845220B1 (fr) * | 2002-09-30 | 2004-12-17 | Canon Kk | Procedes et dispositifs pour le decodage des codes de geometrie algebrique a un point |
FR2849514A1 (fr) | 2002-12-26 | 2004-07-02 | Canon Kk | Code de geometrie algebrique adapte aux erreurs en rafale |
FR2853976B1 (fr) * | 2003-04-16 | 2005-06-03 | Canon Kk | Codage d'informations par code de geometrie algebrique offrant deux options de decodage |
FR2858141A1 (fr) * | 2003-07-21 | 2005-01-28 | Canon Kk | Codage d'informations par codes de reed-solomon raccourcis |
FR2860360B1 (fr) * | 2003-09-29 | 2005-12-09 | Canon Kk | Dispositif de codage /decodage utilisant un codeur/decodeur de reed-solomon |
FR2863794B1 (fr) * | 2003-12-16 | 2006-03-03 | Canon Kk | Procedes et dispositifs de localisation d'erreurs pour les codes de geometrie algebrique |
FR2865083B1 (fr) * | 2004-01-13 | 2006-04-07 | Canon Kk | Decodage pour code de geometrie algebrique associe a un produit fibre. |
FR2866998B1 (fr) * | 2004-02-27 | 2006-05-19 | Canon Kk | Decodage et correction d'erreurs pour codes de geometrie algebrique |
FR2867925B1 (fr) * | 2004-03-22 | 2006-05-19 | Canon Kk | Codage de canal adapte aux erreurs rafale |
FR2873518B1 (fr) * | 2004-07-22 | 2008-12-19 | Canon Kk | Procede de codage et de decodage d'une sequence de mots, signal, codeur, decodeur, programmes d'ordinateur et moyens de stockage correspondants |
US7543212B2 (en) * | 2004-09-13 | 2009-06-02 | Idaho Research Foundation, Inc. | Low-density parity-check (LDPC) encoder |
FR2880218B1 (fr) * | 2004-12-23 | 2007-02-16 | Canon Kk | Procede de decodage pour codes de geometrie algebrique et dispositif associe |
US20060282713A1 (en) * | 2005-05-31 | 2006-12-14 | Yi Weng | Efficient interleaver/de-interleaver desigh for the turbo decoder in a 3g wcdma system |
US7489538B2 (en) * | 2005-11-14 | 2009-02-10 | University Of Idaho | Radiation tolerant combinational logic cell |
US7576562B1 (en) | 2006-06-19 | 2009-08-18 | The United States Of America As Represented By The United States National Aeronautics And Space Administration | Diagnosable structured logic array |
US8312551B2 (en) * | 2007-02-15 | 2012-11-13 | Harris Corporation | Low level sequence as an anti-tamper Mechanism |
US7937427B2 (en) * | 2007-04-19 | 2011-05-03 | Harris Corporation | Digital generation of a chaotic numerical sequence |
US8611530B2 (en) * | 2007-05-22 | 2013-12-17 | Harris Corporation | Encryption via induced unweighted errors |
US7921145B2 (en) * | 2007-05-22 | 2011-04-05 | Harris Corporation | Extending a repetition period of a random sequence |
US7995757B2 (en) | 2007-05-31 | 2011-08-09 | Harris Corporation | Closed galois field combination |
US7962540B2 (en) * | 2007-06-07 | 2011-06-14 | Harris Corporation | Mixed radix number generator with chosen statistical artifacts |
US7974413B2 (en) * | 2007-06-07 | 2011-07-05 | Harris Corporation | Spread spectrum communications system and method utilizing chaotic sequence |
US7970809B2 (en) * | 2007-06-07 | 2011-06-28 | Harris Corporation | Mixed radix conversion with a priori defined statistical artifacts |
US8005221B2 (en) * | 2007-08-01 | 2011-08-23 | Harris Corporation | Chaotic spread spectrum communications system receiver |
US7995749B2 (en) * | 2007-10-30 | 2011-08-09 | Harris Corporation | Cryptographic system configured for extending a repetition period of a random sequence |
US8180055B2 (en) * | 2008-02-05 | 2012-05-15 | Harris Corporation | Cryptographic system incorporating a digitally generated chaotic numerical sequence |
US8363830B2 (en) | 2008-02-07 | 2013-01-29 | Harris Corporation | Cryptographic system configured to perform a mixed radix conversion with a priori defined statistical artifacts |
US8040937B2 (en) * | 2008-03-26 | 2011-10-18 | Harris Corporation | Selective noise cancellation of a spread spectrum signal |
US8139764B2 (en) * | 2008-05-06 | 2012-03-20 | Harris Corporation | Closed galois field cryptographic system |
US8320557B2 (en) | 2008-05-08 | 2012-11-27 | Harris Corporation | Cryptographic system including a mixed radix number generator with chosen statistical artifacts |
US8200728B2 (en) * | 2008-05-29 | 2012-06-12 | Harris Corporation | Sine/cosine generator |
US8145692B2 (en) * | 2008-05-29 | 2012-03-27 | Harris Corporation | Digital generation of an accelerated or decelerated chaotic numerical sequence |
US8064552B2 (en) * | 2008-06-02 | 2011-11-22 | Harris Corporation | Adaptive correlation |
US8068571B2 (en) * | 2008-06-12 | 2011-11-29 | Harris Corporation | Featureless coherent chaotic amplitude modulation |
US8325702B2 (en) * | 2008-08-29 | 2012-12-04 | Harris Corporation | Multi-tier ad-hoc network in which at least two types of non-interfering waveforms are communicated during a timeslot |
US8165065B2 (en) * | 2008-10-09 | 2012-04-24 | Harris Corporation | Ad-hoc network acquisition using chaotic sequence spread waveform |
US8406276B2 (en) * | 2008-12-29 | 2013-03-26 | Harris Corporation | Communications system employing orthogonal chaotic spreading codes |
US8351484B2 (en) * | 2008-12-29 | 2013-01-08 | Harris Corporation | Communications system employing chaotic spreading codes with static offsets |
US8457077B2 (en) * | 2009-03-03 | 2013-06-04 | Harris Corporation | Communications system employing orthogonal chaotic spreading codes |
US8509284B2 (en) * | 2009-06-08 | 2013-08-13 | Harris Corporation | Symbol duration dithering for secured chaotic communications |
US8428102B2 (en) * | 2009-06-08 | 2013-04-23 | Harris Corporation | Continuous time chaos dithering |
US8428103B2 (en) * | 2009-06-10 | 2013-04-23 | Harris Corporation | Discrete time chaos dithering |
US8340295B2 (en) * | 2009-07-01 | 2012-12-25 | Harris Corporation | High-speed cryptographic system using chaotic sequences |
US8428104B2 (en) | 2009-07-01 | 2013-04-23 | Harris Corporation | Permission-based multiple access communications systems |
US8406352B2 (en) | 2009-07-01 | 2013-03-26 | Harris Corporation | Symbol estimation for chaotic spread spectrum signal |
US8379689B2 (en) * | 2009-07-01 | 2013-02-19 | Harris Corporation | Anti-jam communications having selectively variable peak-to-average power ratio including a chaotic constant amplitude zero autocorrelation waveform |
US8363700B2 (en) | 2009-07-01 | 2013-01-29 | Harris Corporation | Rake receiver for spread spectrum chaotic communications systems |
US8369376B2 (en) * | 2009-07-01 | 2013-02-05 | Harris Corporation | Bit error rate reduction in chaotic communications |
US8385385B2 (en) | 2009-07-01 | 2013-02-26 | Harris Corporation | Permission-based secure multiple access communication systems |
US8848909B2 (en) * | 2009-07-22 | 2014-09-30 | Harris Corporation | Permission-based TDMA chaotic communication systems |
US8369377B2 (en) | 2009-07-22 | 2013-02-05 | Harris Corporation | Adaptive link communications using adaptive chaotic spread waveform |
US8081010B1 (en) | 2009-11-24 | 2011-12-20 | Ics, Llc | Self restoring logic |
US8345725B2 (en) | 2010-03-11 | 2013-01-01 | Harris Corporation | Hidden Markov Model detection for spread spectrum waveforms |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1098445A1 (fr) * | 1999-11-04 | 2001-05-09 | Canon Kabushiki Kaisha | Méthode d'entrelacement pour le turbocodage de données |
FR2804806A1 (fr) * | 2000-02-08 | 2001-08-10 | Canon Kk | Procede et dispositif d'entrelacement, procedes et dispositifs de codage et de decodage et systemes les mettant en oeuvre |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2740925A1 (fr) * | 1995-11-08 | 1997-05-09 | Canon Kk | Procede et dispositif de detection et de correction d'une eventuelle erreur dans une suite de nombres |
EP0884879A3 (fr) * | 1997-06-13 | 1999-03-17 | Canon Kabushiki Kaisha | Transmission MAQ, utilisant un spèctre étalé et une estimation de séquences |
US6543021B1 (en) * | 1998-07-16 | 2003-04-01 | Canon Kabushiki Kaisha | Method and device for coding and transmission using a sub-code of a product code |
FR2785741B1 (fr) * | 1998-11-09 | 2001-01-26 | Canon Kk | Dispositif et procede de codage et d'entrelacement pour des turbocodes series ou hybrides |
FR2785744B1 (fr) * | 1998-11-09 | 2001-01-26 | Canon Kk | Procede et dispositif de codage de sequences de donnees, procede et dispositif de decodage associes |
DE69943198D1 (de) * | 1998-12-30 | 2011-03-31 | Canon Kk | Kodierungsvorrichtung und Verfahren, Dekodierungsvorrichtung und Verfahren und dazugehörige Systeme |
FR2789824B1 (fr) * | 1999-02-12 | 2001-05-11 | Canon Kk | Procede de correction d'erreurs residuelles a la sortie d'un turbo-decodeur |
US6543013B1 (en) * | 1999-04-14 | 2003-04-01 | Nortel Networks Limited | Intra-row permutation for turbo code |
US6785859B2 (en) * | 2000-08-04 | 2004-08-31 | Texas Instruments Incorporated | Interleaver for variable block size |
FR2815199B1 (fr) * | 2000-10-10 | 2003-01-17 | Canon Kk | Procedes de turbocodage circulaire de grande distance minimale, et systemes pour leur mise en oeuvre |
-
2002
- 2002-03-13 FR FR0203115A patent/FR2837331B1/fr not_active Expired - Fee Related
-
2003
- 2003-03-13 US US10/386,722 patent/US7069492B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1098445A1 (fr) * | 1999-11-04 | 2001-05-09 | Canon Kabushiki Kaisha | Méthode d'entrelacement pour le turbocodage de données |
FR2804806A1 (fr) * | 2000-02-08 | 2001-08-10 | Canon Kk | Procede et dispositif d'entrelacement, procedes et dispositifs de codage et de decodage et systemes les mettant en oeuvre |
Non-Patent Citations (1)
Title |
---|
YUAN J ET AL: "DESIGN OF CYCLIC SHIFT INTERLEAVERS FOR TURBO CODES STRUCTURE D'ENTRELACEMENTS A DECALAGE CYCLIQUE POUR LES TURBOCODES", ANNALES DES TELECOMMUNICATIONS - ANNALS OF TELECOMMUNICATIONS, PRESSES POLYTECHNIQUES ET UNIVERSITAIRES ROMANDES, LAUSANNE, CH, vol. 56, no. 7/8, July 2001 (2001-07-01), pages 384 - 393, XP001100319, ISSN: 0003-4347 * |
Also Published As
Publication number | Publication date |
---|---|
US20030177430A1 (en) | 2003-09-18 |
FR2837331B1 (fr) | 2004-06-18 |
US7069492B2 (en) | 2006-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2837331A1 (fr) | Procede d'entrelacement d'une sequence binaire | |
US6145111A (en) | High-performance low-complexity error-correcting codes | |
JP2644382B2 (ja) | 通信装置およびインタリーブ装置 | |
FR2815199A1 (fr) | Procedes de turbocodage circulaire de grande distance minimale, et systemes pour leur mise en oeuvre | |
EP1193936A2 (fr) | Combinaison de codes de mise en forme spectrale et "turbo" | |
Steinberg | Coding and common reconstruction | |
EP0481549A1 (fr) | Système et procédé de codage/décodage de signaux numériques transmis en modulation codée | |
AU2008332040A1 (en) | Method and apparatus for encoding and decoding channel in a communication system using low-density parity-check codes | |
WO2009075831A2 (fr) | Systèmes et procédés pour décodeurs itératifs | |
WO1997038495A1 (fr) | Procede et dispositif de codage convolutif de blocs de donnees, et procede et dispositif de decodage correspondants | |
WO2006113486A1 (fr) | Code d'accumulation de repetitions irregulieres sans conflit | |
KR20110006666A (ko) | 신호 디코딩을 위한 장치 및 방법 | |
WO2009044031A1 (fr) | Procede et dispositif d'encodage de symboles avec un code du type a contrôle de parite et procede et dispositif correspondants de decodage | |
EP1098445B1 (fr) | Méthode d'entrelacement pour le turbocodage de données | |
EP1841078A1 (fr) | Circuit de réception double canaux | |
FR2790621A1 (fr) | Dispositif et procede d'entrelacement pour turbocodage et turbodecodage | |
FR2900294A1 (fr) | Chargement de la memoire d'entree d'un decodeur ldpc avec des donnees a decoder | |
JP3674851B2 (ja) | スケーリングフィードバックターボ復号器 | |
FR2778040A1 (fr) | Procede et dispositif de codage correcteur d'erreur pour des transmissions de donnees numeriques a debit eleve, et procede et dispositif de decodage correspondant | |
FR2838581A1 (fr) | Procede de codage et/ou de decodage de codes correcteurs d'erreurs, dispositifs et signal correspondants | |
Klaimi | Study of non-binary turbo codes for future communication and broadcasting systems | |
FR2822608A1 (fr) | Selection flexible de bits en utilisant une modulation codee par treillis et son procede | |
FR2888062A1 (fr) | Codeur et turbo decodeur de code produit | |
FR2796780A1 (fr) | Procede et dispositif de codage a au moins deux codages en parallele et permutation amelioree, et procede et dispositif de decodage correspondants | |
FR2654887A1 (fr) | Procede et dispositif de codage et de decodage compatibles d'images de television de resolutions differentes. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |
Effective date: 20141128 |