FR 2906659 A1 20080404 FR 0654064 A 20061003 PROCÉDÉ DE CODAGE SPATIO-TEMPOREL POUR SYSTÈME DE COMMUNICATION MULTI-ANTENNE DE TYPE UWB IMPULSIONNEL DESCRIPTION 5 DOMAINE TECHNIQUE La présente invention concerne à la fois le domaine des télécommunications en ultra-large bande ou UWB (Ultra Wide Band) et celui des systèmes multiantenne à codage spatio-temporel ou STC (Space Time 10 Coding). ÉTAT DE LA TECHNIQUE ANTÉRIEURE Les systèmes de télécommunication sans fil de type multi-antenne sont bien connus de l'état de la technique. Ces systèmes utilisent une pluralité 15 d'antennes à l'émission et/ou à la réception et sont dénommés, selon le type de configuration adoptée, MIMO (Multiple Input Multiple Output), MISO (Multiple Input Single Output) ou SIMO (Single Input Multiple Output). Par la suite nous emploierons le même terme MIMO pour 20 couvrir les variantes MIMO et MISO précitées. L'exploitation de la diversité spatiale à l'émission et/ou à la réception permet à ces systèmes d'offrir des capacités de canal nettement supérieures à celles des systèmes mono-antenne classique (ou SISO pour Single 25 Input Single Output). Cette diversité spatiale est généralement complétée par une diversité temporelle au moyen d'un codage spatio-temporel. Dans un tel codage, un symbole d'information à transmettre se trouve codé sur plusieurs antennes et plusieurs instants de 30 transmission. On connaît deux grandes catégories de 2906659 2 systèmes MIMO à codage spatio-temporel : les systèmes à codage en treillis ou STTC (Space Time Trellis Coding) et les systèmes à codage par blocs ou STBC (Space Time Block Coding). Dans un système à codage en treillis, le codeur spatio-temporel peut être vu comme une machine à états finis fournissant P symboles de transmission aux P antennes en fonction de l'état courant et du symbole d'information à coder. Le décodage à la réception est réalisé par un algorithme de Viterbi multidimensionnel dont la complexité augmente de manière exponentielle en fonction du nombre d'états. Dans un système à codage par blocs, un bloc de symboles d'information à transmettre est codé en une matrice de symboles de transmission, une dimension de la matrice correspondant au nombre d'antennes et l'autre correspondant aux instants consécutifs de transmission. La Fig. 1 représente schématiquement un système de transmission MIMO 100 avec codage STBC. Un bloc de symboles d'information S=(al,...,ab) par exemple un mot binaire de b bits ou plus généralement de b symboles M-aires est codé en une matrice spatio-temporelle : C11 1 C12 2 C1,p c= C2,1 C22 2 C2,p (1) CT,1 CT 2 CTpJ où les coefficients et p, t =1,..,T; p =1,..,P du code sont en règle générale des coefficients complexes dépendant des symboles d'information, P est le nombre d'antennes utilisées à l'émission, T est un entier indiquant 2906659 3 l'extension temporelle du code, c'est-à-dire le nombre d'instants d'utilisation du canal ou PCUs (Per Channel Use). La fonction f qui à tout vecteur S de symboles 5 d'information fait correspondre le mot de code spatio-temporel C est appelée fonction de codage. Si la fonction f est linéaire on dit que le code spatio- temporel est linéaire. Si les coefficients ctp sont réels le code spatio-temporel est dit réel. 10 Sur la Fig. 1, on a désigné par 110 un codeur spatio-temporel. A chaque instant d'utilisation de canal t, le codeur fournit au multiplexeur 120 le t-ème vecteur-ligne de la matrice C. Le multiplexeur transmet aux modulateurs 1301,...,130p les coefficients du 15 vecteur ligne et les signaux modulés sont transmis par les antennes 1401,...,140p . Le code spatio-temporel est caractérisé par son débit, c'est-à-dire par le nombre de symboles d'information qu'il transmet par instant d'utilisation 20 de canal (PCU). Le code est dit à plein débit s'il est P fois plus élevé que le débit relatif à une utilisation mono-antenne (SISO). Le code spatio-temporel est caractérisé en outre par sa diversité qui peut être définie comme le rang de 25 la matrice C. On aura une diversité maximale si pour deux mots de code C1 et C2 quelconques correspondant à deux vecteurs S1 et S2, la matrice C1-C2 est de rang plein. Le code spatio-temporel est enfin caractérisé par son gain de codage qui traduit la distance minimale 2906659 4 entre différents mots du code. On peut le définir comme : min det((Cl- C2)H (CI- Cz)) c,c2 ou, de manière équivalente, pour un code linéaire : min det(CHC) co 10 où det(C) signifie le déterminant de C et CH est la matrice conjuguée transposée de C. Pour une énergie de transmission par symbole d'information, le gain de codage est borné. 15 En règle générale, le gain de codage n'est pas fixe mais décroît avec l'ordre de modulation d'information, ordre dont dépend l'efficacité spectrale. Dans certains cas, lorsque l'efficacité spectrale augmente, le gain de codage ne tend pas vers 20 zéro mais vers une valeur asymptotique non nulle. Un tel code est dit à déterminant sans anéantissement. On veille enfin à ce que l'énergie moyenne transmise par le système soit uniformément répartie entre antennes et instants de transmission. 25 On appelle code parfait un code à plein débit, à diversité maximale, à déterminant sans anéantissement et à énergie répartie au sens ci-dessus. (2) 5 (3) 30 2906659 5 Un exemple de tel codage spatio-temporel pour un système MIMO à deux antennes de transmission a été proposé dans l'article de J-C Belfiore et al. intitulé 5 The Golden code : a 2x2 full-rate space-time code with non-vanishing determinants publié dans IEEE Transactions on Information Theory, vol. 51, N 4, pages 1432-1436, Avril 2005. Le code proposé, dit code d'or, est basé sur une 10 double extension algébrique K du corps des nombres rationnels Q : K=Q (i, 6) où est racine du polynôme X2+1 et 6 est le nombre d'or 9= 1+~ , racine du polynôme X2-X-1. Le code d'or peut être représenté par la matrice suivante : 15 a(al + 012) a(a3 + 014) a1(a3 +91x4) a1(a1 +91x2) C gold ù (4) où S=(a1,a2,a3,a4) est un vecteur de symboles d'information. a1,a2,a3,a4 sont des symboles complexes 20 d'une constellation 2b-QAM, sous-ensemble de Z[i] où Z est l'anneau des entiers. 91=1 est la racine 2 conjuguée de a=1+i(1-9) et a1 =1+i(1û91) . On trouvera également des exemples de codes spatio-temporels parfaits pour un système MIMO à 2,3,4 25 ou 6 antennes de transmission dans l'article de Frédérique Oggier et al. intitulé Perfect space time block codes soumis à publication dans IEEE 2906659 6 Transactions on Information Theory et disponible sous le site www.comeîec.enst.fr/-belfiore. Un autre domaine des télécommunications fait 5 actuellement l'objet de recherches considérables. Il s'agit des systèmes de télécommunication UWB, pressentis notamment pour le développement des futurs réseaux personnels sans fil (WPAN). Ces systèmes ont pour spécificité de travailler directement en bande de 10 base avec des signaux très large bande. On entend généralement par signal UWB un signal conforme au masque spectral stipulé dans la réglementation du FCC du 14 Février 2002 et révisé en Mars 2005, c'est-à-dire pour l'essentiel un signal dans la bande spectrale 3.1 15 à 10.6 GHz et présentant une largeur de bande d'au moins 500 MHz à -10dB. En pratique, on connaît deux types de signaux UWB, les signaux multi-bande OFDM (MBOFDM) et les signaux UWB de type impulsionnel. Nous nous intéresserons par la suite uniquement à ces 20 derniers. Un signal UWB impulsionnel est constitué d'impulsions très courtes, typiquement de l'ordre de quelques centaines de picosecondes, réparties au sein d'une trame. Afin de réduire l'interférence multi-accès 25 (MAI pour Multiple Access Interference), un code de sauts temporels (TH pour Time Hopping) distinct est affecté à chaque utilisateur. Le signal issu ou à destination d'un utilisateur k peut alors s'écrire sous la forme: 30 2906659 7 NS -1 Sk(t)= W(tùnTs ùCk(n)TC) (5) n=0 où w est la forme de l'impulsion élémentaire, T0 est une durée bribe (ou chip), Ts est la durée d'un 5 intervalle élémentaire avec NS = N,T, où Nc est le nombre de chips dans un intervalle, la trame totale étant de durée Tf =NSTS où Ns est le nombre d'intervalles dans la trame. La durée de l'impulsion élémentaire est choisie inférieure à la durée chip, soit TN, ù P et N, N' premiers entre eux. Selon une variante, la matrice orthogonale 15 s'exprime sous la forme R = OV où V est une matrice dont les colonnes sont constituées par des vecteurs v(p) =(v(p~ v(p~,...,v(P1 T p -- 0..>Pù1 dont les coefficients sont o 1 rationnels. 2906659 16 L'invention concerne également un procédé de transmission d'une pluralité de symboles d'information appartenant à un alphabet de modulation M-PPM ou de modulation composite M-PPM-M'-PAM avec M 5 pair. Lesdits symboles d'information sont codés au moyen du codage spatio-temporel défini ci-dessus pour fournir P2 vecteurs de dimension M, éléments de ladite matrice C, les composantes de chacun de ces vecteurs modulant la position ou bien la position et l'amplitude 10 des impulsions composant un signal UWB impulsionnel, pour obtenir P2 signaux UWB impulsionnels modulés correspondants, les signaux étant respectivement transmis par les P éléments radiatifs pendant P intervalles de transmission. 15 Les éléments radiatifs peuvent être des antennes UWB, des diodes laser ou des diodes électroluminescentes. Le signal impulsionnel sera avantageusement un signal TH-UWB, un signal DS-UWB ou encore un signal 20 TH-DS-UWB. BRÈVE DESCRIPTION DES DESSINS D'autres caractéristiques et avantages de 25 l'invention apparaîtront à la lecture d'un mode de réalisation préférentiel de l'invention fait en référence aux figures jointes parmi lesquelles : la Fig. 1 représente schématiquement un système de transmission MIMO avec codage STBC connu de 30 l'état de la technique ; 2906659 17 les Fig. 2A à 2C représentent les formes respectives de signaux TH-UWB, DS-UWB et TH-DS-UWB ; la Fig. 3 représente un exemple de constellation d'une modulation PPM-PAM ; 5 la Fig. 4 représente schématiquement un système de transmission MIMO utilisant le codage spatio-temporel selon l'invention. EXPOSÉ DÉTAILLÉ DE MODES DE RÉALISATION PARTICULIERS 10 L'idée à la base de l'invention est de créer un code spatio-temporel s'affranchissant à la fois des valeurs complexes a et al figurant dans le code d'or (4), incompatibles comme on l'a dit avec l'utilisation de signaux UWB impulsionnels, et des scalaires 15 figurant dans les codes (13) et (14), à l'origine d'une distribution déséquilibrée de l'énergie sur les antennes. Le code spatio-temporel proposé s'applique aux systèmes MIMO avec un nombre quelconque P d'antennes 20 de transmission utilisant des signaux UWB impulsionnels dans lesquels les symboles d'information sont des éléments d'une modulation M-PPM-M'-PAM ou d'une modulation M-PPM, avec M pair. 25 Le code proposé est représenté par la matrice de dimension MPxP : 2906659 18 /s1,1 s2" s3" sP,l \ ~SP'2 s"2 s2'2 SP-1,2 C = ~sP'3 s1 3 (19) ~S3'P-1 s2,P-1 \S2s2'P ~S3'P ns" où les termes s`', i=1,..,P, j=1,..,P sont des vecteurs de dimension M dont les composantes seront précisées plus 5 loin et il est une matrice de taille MxM définie par : 2x2 w SZ = 02x2 2x2 (20) \ 2x2 2x2 w 2 10 où la matrice 02x2 est la matrice de taille 2x2 dont tous les éléments sont nuls et w est une matrice de rotation d'un angle 9 qui sera précisé par la suite, soit : 15 w= 'cose ùsine' usine cose (20') D'après (20) la matrice il obtenue par la réplication M/2 fois de la matrice élémentaire w sur la diagonale, les autres éléments étant nuls. 20 Les vecteurs sont obtenus de la manière suivante : 19 2906659 /a (i-1)P+1 J = (Ri OIM) a(i-1)P+P aiP (21) où IM est la matrice identité de taille MxM , O est le produit tensoriel (ou de Kronecker) et les termes 5 a,e, sont des vecteurs de dimension M représentant les P2 symboles d'information à coder. On rappelle que ces symboles sont des éléments d'une constellation de modulation M-PPM-M'-PAM ou M-PPM, c'est-à-dire a~=(a0 a1~ ••• aM1,j où les coefficients de 10 ce vecteur sont des éléments d'un alphabet de modulation M'-PAM dans le premier cas et égaux à 1 dans le second. Le vecteur ligne R. de taille lxP correspondant correspond à la j "me ligne de la matrice R suivante : 15 /p-1 P-1 v(0)ep I v(1)ep p op 0 p=0 p=0 P-1 P-1 v(0)ep v(1)ep R p 1 p 1 p=0 p=0 P-1 P-1 1v(0)ep 1v(1)ep p P 1 p P 1 vp=0 p=0 P-1 V (P-1)OP p 0 p=0 P-1 (P-1) p vp e (22) p=0 P-1 V Vp(P-1)ep P-1 p=0 ~ où les termes Op') pour p = 0,..,Pû1 et q = 0,..,Pû1 sont des 20 nombres rationnels et les valeurs définies par : ep, p=O,..,Pû1 sont 20 2906659 9p = 2 cos 2(P +1),c N , (23) où N est un entier positif choisi tel que ço(N) = 2P où ç(.) est l'indicateur d'Euler, donnant pour chaque 5 entier N le nombre d'entiers positifs inférieurs ou égaux à N et premiers avec ce dernier. L'angle 9 dans l'expression (20') est choisi tel que 6s= N' avec ç (N')>_ P et N, N' premiers entre eux. 10 La matrice R est choisie orthogonale, c'est-àdire RRT =I, où I, est la matrice unité de taille PxP. On remarque que R = OV où 0 est la matrice de Vandermonde : 15 0= 90 o 1 e 9P-1 (24) op 9P-1 -1 p_1) et V est la matrice dont les colonnes sont constituées des vecteurs vu') _ (v;P) vY') v(I)T . Si l'on considère le réseau de points A=L(0) de 20 dimension P engendré par la base constituée des vecteurs colonne de 0, c'est-à-dire : A = {u0u ZP{, la détermination de la matrice R revient à la recherche d'une base orthogonale de A. Celle-ci peut être obtenue par exemple au moyen de l'algorithme de 25 Lenstra-Lovàsz-Lenstra, dit aussi LLL, dont on trouvera 2906659 21 une description dans l'article de A.K. Lenstra et al. intitulé Factoring polynomials with rational coefficients publié en 1982 dans Math. Ann. vol. 261, pages 515-534. On trouvera des exemples de matrices de 5 rotation R dans l'article d'E. Bayer-Fluckiger et al. intitulé New algebric constructions of rotated Znlattice constellations for the Rayleigh fading channel publié dans IEEE Transactions on Information Theory, vol. 50, N 4, 2004, pages 702-714. 10 Comme on peut le constater d'après l'expression (22), la matrice R est réelle et par conséquent la matrice du code spatio-temporel C définie en (19) l'est aussi. De même, étant donné la nature orthogonale de la matrice R, la répartition d'énergie du code 15 spatio-temporel sur les différentes antennes est uniforme. En outre, le code spatio-temporel C permet de coder P2 symboles d'information en utilisant P antennes et P utilisations du canal (PCU). Il est donc à débit maximal. 20 On peut montrer que le code est à diversité maximale VP >_ 2 . Enfin, on peut également montrer qu'il présente un gain supérieur au code spatio-temporel réel connu de l'état de la technique. 25 Il est important de noter qu'une permutation des lignes et/ou des colonnes de la matrice C n'affecte pas les propriétés du code spatio-temporel. En effet, une permutation de colonnes revient à une simple permutation des antennes et une permutation de lignes 30 (on entend ici par ligne, une ligne de vecteurs de 2906659 22 dimension M) à une simple permutation des instants d'utilisation du canal. En pratique, les éléments de la matrice C sont quantifiés sous forme numérique. On a pu toutefois 5 constater qu'une erreur de quantification de moins de 10% par excès ou par défaut n'affectait pas sensiblement les performances du code. La Fig. 4 illustre un exemple de système de transmission utilisant le codage spatio-temporel selon 10 l'invention. Le système 400 reçoit des symboles d'informations par bloc S = (a1,a2...,ai,2) où les symboles a,e, L =1,..,P2 sont des vecteurs de dimension Al représentant des éléments d'une constellation de modulation M-PPM ou M-PPM-M'- 15 PAM. Alternativement, les symboles d'information peuvent provenir d'une constellation M.M'-aire à condition de subir préalablement un transcodage (mapping) dans une constellation M-PPM-M'-PAM. Bien entendu, les symboles d'information peuvent être issus 20 d'une ou plusieurs opérations bien connues de l'homme du métier telles que codage source, codage canal de type convolutionnel, par bloc ou bien encore turbocodage série ou parallèle, entrelacement, etc. Le bloc de symboles d'information subit une 25 opération de codage dans le codeur spatio-temporel 410. Plus précisément, le module 410 calcule les termes de la matrice C selon (19) ou l'une des variantes précitées. Les P vecteurs colonnes constituant la première 30 ligne de C sont d'abord transmis respectivement aux modulateurs UWB 4201r...,420p pour la première trame, puis 2906659 23 les P vecteurs colonnes constituant la seconde ligne, pour la seconde trame et ainsi de suite jusqu'à la transmission des P vecteurs colonnes de la dernière ligne de C, pour la P sème trame. 5 Chaque vecteur colonne possède M composantes correspondant aux M positions de la modulation PPM. Les modulateurs UWB 4201r...,420p génèrent, à partir des vecteurs colonnes qu'ils reçoivent, les signaux UWB impulsionnels modulés correspondants. De manière 10 générale, les signaux UWB impulsionnels servant de support à DS-UWB ou UWB 420p, la matrice, le signal 15 premier intervalle de transmission sera 8) N , -1 M-1 s' (t) = sm'1.w(t ù nTS ù ck (n)TC û m) (25) n=0 m=0 20 où les valeurs sm'1 sont les composantes PAM du vecteur sp'1 Les signaux UWB impulsionnels ainsi modulés sont transmis ensuite aux éléments radiatifs 4301 à 430p. Ces éléments radiatifs peuvent être des antennes UWB ou 25 bien des diodes laser ou des DELs, fonctionnant par exemple dans le domaine infrarouge, associées à des modulateurs électro-optiques. Le système de transmission proposé peut alors être utilisé dans le domaine des télécommunications optiques sans fil. la modulation peuvent être du type TH-UWB, TH-DS-UWB. Par exemple, pour un modulateur de type TH-UWB, associé à la pième colonne de UWB impulsionnel modulé pour le (cf. équation 2906659 24 Les signaux UWB transmis par le système illustré en Fig. 4 peuvent être traités par un récepteur multiantenne de manière classique. Le récepteur pourra par exemple comprendre un étage de corrélation de type Rake 5 suivi d'un étage de décision, utilisant par exemple un décodeur par sphère connu de l'homme du métier. REVENDICATIONS 1. Procédé de codage spatio-temporel pour système de transmission UWB comprenant au moins deux éléments radiatifs, ledit procédé codant un bloc de symboles d'information (S = (al,a2...,aP2)) appartenant à un alphabet de modulation M-PPM ou de modulation composite M-PPM-M'-PAM avec M pair, en une séquence de vecteurs les composantes d'un vecteur étant destinées à moduler un signal UWB impulsionnel pour un élément radiatif dudit système et pour un intervalle de transmission donné (Tf), caractérisé en ce que lesdits vecteurs sont définis comme les éléments de la matrice : /sl'l 1 53'1 SP,1 \ nSP'2 s1'2 s2'2 SP-1,2 C= ils" s 1'3 ~S3'P 1 s2,P-1 ~S2S2'P ns3'P nsP'P s1'P définie à une permutation près de ses lignes et/ou ses colonnes, une ligne correspondant à un intervalle de transmission et une colonne à un élément radiatif, où P est le nombre d'éléments radiatifs et fl est une matrice de taille MxM définie par où c o= cose sine' sine cos e, et 02x2 est la iW 2x2 il= 2x2 02x2 V) % matrice nulle de taille 2x2, 26 2906659 (Ri IM) /a (i-1)P+1 a(t-1)P+P à une marge de 10% près, où IM est a1. la matrice identité de taille MxM, O est le produit tensoriel, a,e =1,..,P2 sont les symboles d'information, RU est un vecteur ligne de dimension P correspondant à 5 la fie' ligne d'une matrice orthogonale R générant le réseau de points A= {uOu e ZP} avec 0= /1 9 9P o 1 9P-1 1 1 où P-1 eP-1 2 0, =2COS 2(P + 1),c N , où N est un entier positif tel que çp(N)=2P où çp(.) est l'indicateur d' Euler et 0=ùN' où N' est un entier positif tel que çp(N')>- P et N, N' 10 premiers entre eux. 2. Procédé de codage spatio-temporel, caractérisé en ce que la matrice orthogonale s'exprime 15 sous la forme R = OV où V est une matrice dont les colonnes sont constituées par des vecteurs vu), =(v(p~,1 v(PIT p -0>..>Pû1 dont les coefficients sont 0 v(p~,..., rationnels. 20 3. Procédé de transmission d'une pluralité de symboles d'information appartenant à un alphabet de modulation M-PPM ou de modulation composite M-PPM-M'- 2906659 27 PAM avec M pair, caractérisé en ce que lesdits symboles d'information sont codés au moyen du codage spatio- temporel selon la revendication 1 ou 2 pour fournir P2 vecteurs de dimension M, éléments de ladite matrice C, 5 les composantes de chacun de ces vecteurs modulant la position ou bien la position et l'amplitude des impulsions composant un signal UWB impulsionnel, pour obtenir PZ signaux UWB impulsionnels modulés correspondants, les signaux étant respectivement 10 transmis par les P éléments radiatifs pendant P intervalles de transmission. 4. Procédé de transmission selon la revendication 3, caractérisé en ce que les éléments 15 radiatifs sont des antennes UWB. 5. Procédé de transmission selon la revendication 3, caractérisé en ce que les éléments radiatifs sont des diodes laser ou des diodes électroluminescentes. 6. Procédé selon l'une des revendications 3 à 5, caractérisé en ce que ledit signal impulsionnel est un signal TH-UWB. 7. Procédé selon l'une des revendications 3 à 5, caractérisé en ce que ledit signal impulsionnel est un signal DS-UWB. 2906659 28 8. Procédé selon l'une des revendications 3 à 5, caractérisé en ce que ledit signal impulsionnel est un signal TH-DS-UWB.