FR2837331A1 - Procede d'entrelacement d'une sequence binaire - Google Patents

Procede d'entrelacement d'une sequence binaire Download PDF

Info

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
Application number
FR0203115A
Other languages
English (en)
Other versions
FR2837331B1 (fr
Inventor
Philippe Piret
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to FR0203115A priority Critical patent/FR2837331B1/fr
Priority to US10/386,722 priority patent/US7069492B2/en
Publication of FR2837331A1 publication Critical patent/FR2837331A1/fr
Application granted granted Critical
Publication of FR2837331B1 publication Critical patent/FR2837331B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/27Coding, 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/2771Internal interleaver for turbo codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/29Coding, 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/2957Turbo codes and decoding
    • H03M13/2993Implementing 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)

REVENDICATIQNS
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.
FR0203115A 2002-03-13 2002-03-13 Procede d'entrelacement d'une sequence binaire Expired - Fee Related FR2837331B1 (fr)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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&#39;entrelacement d&#39;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 &#34;turbo&#34;
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&#39;accumulation de repetitions irregulieres sans conflit
KR20110006666A (ko) 신호 디코딩을 위한 장치 및 방법
WO2009044031A1 (fr) Procede et dispositif d&#39;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&#39;entrelacement pour le turbocodage de données
EP1841078A1 (fr) Circuit de réception double canaux
FR2790621A1 (fr) Dispositif et procede d&#39;entrelacement pour turbocodage et turbodecodage
FR2900294A1 (fr) Chargement de la memoire d&#39;entree d&#39;un decodeur ldpc avec des donnees a decoder
JP3674851B2 (ja) スケーリングフィードバックターボ復号器
FR2778040A1 (fr) Procede et dispositif de codage correcteur d&#39;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&#39;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&#39;images de television de resolutions differentes.

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20141128