Brevet FR2818057A1 — publié le 20020614

La présente invention concerne une méthode et un dispositif de détection multi- utilisateur. Plus particulièrement, la présente invention concerne une méthode et un dispositif de détection multi-utilisateur à maximum de vraisemblance pour un système de télécommunication MC-CDMA (Multi-Carrier Code Division Multiple Access) . L'accès multiple à répartition par codes sur porteuses multiples (MC-CDMA pour Multi-Carrier Code Division Multiple Access) combine la modulation OFDM (Orthogonal Frequency Division Multiplex) et la technique d'accès multiple CDMA. Cette technique d'accès multiple a été proposée pour la première fois par N. Yee et al. dans l'article intitulé " Multicarrier CDMA in indoor wireless radio networks " paru dans Proceedings of PIMRC '93, Vol. 1, pages 109-113, 1993. Les développements de cette technique ont été passés en revue par S. Hara et al. dans l'article intitulé " Overview of multicarrier CDMA " publié dans IEEE Communication Magazine, pages 126-133, Décembre 1997. Contrairement à la méthode DS-CDMA (Direct Sequence Code Division Multiple Access) dans laquelle le signal de chaque utilisateur est multiplié dans le domaine temporel pour étaler son spectre fréquentiel, la signature multiplie ici le signal dans le domaine fréquentiel, chaque élément de la signature multipliant le signal d'une sous-porteuse différente. Plus précisément la Fig. 1 représente la structure d'un émetteur MC-CDMA pour un utilisateur k donné. Soit dk(i) le ième symbole à émettre de l'utilisateur k o dk(i) appartient à l'alphabet de modulation. Le symbole dk(i)est tout d'abord multiplié en 110 par une séquence d'étalement ou signature de l'utilisateur, notée Ck(t), constituée de N, " chips ", chaque " chip" étant de durée To, la durée totale de la séquence d'étalement correspondant à une période symbole T. Les résultats de la multiplication du symbole dk(i) par les différents " chips " sont convertis par le convertisseur série / parallèle 120 en un bloc de L symboles, o L est en général un multiple de N. Nous considérerons, pour des raisons de simplification de présentation, que L= Nc. Le bloc de L symboles est ensuite soumis à une FFT inverse dans le module 130 avant d'être transmis au convertisseur parallèle / série 140. Afin d'éviter l'interférence inter-symbole, un intervalle de garde, de longueur supérieure à la durée de la réponse impulsionnelle du canal de transmission, est adjoint au symbole MC-CDMA. Cet intervalle est obtenu par l'adjonction (non représentée) d'un suffixe choisi identique au début dudit symbole. Le symbole ainsi obtenu est amplifié en 150 avant d'être transmis sur le canal de l'utilisateur. On voit donc que la méthode MC- CDMA s'analyse en un étalement dans le domaine spectral (avant IFFT) suivi d'une modulation OFDM. En pratique, l'utilisateur k transmet ses données sous forme de trames de N symboles, chaque symbole dk(i) étant étalé par une signature réelleck(t) de durée égale à la période symbole T, telle que Ck(t)=0 si t[O,T[. Le signal modulé à l'instantt=i.T+n.Tc peut alors s'écrire, si l'on omet les intervalles de garde entre symboles MC-CDMA: N-I /1 Sk(t)=E>ak.dk(i).ck(n.Tc).exp(j.2,n/Nc) (1) =O0n=0 o ak est l'amplitude du signal transmis par l'utilisateur k. Si l'on se place maintenant au niveau d'une station de base transmettant des symboles vers K utilisateurs, le signal modulé résultant peut s'exprimer simplement comme: K N-1N,-I S(t)=-y ak.dk(i).ckn.exp(j.2mn/Nc) (2) k=l 1=0 n=0 o l'on a noté Ckn=Ck(n.Tc) Un récepteur MC-CDMA pour un utilisateur k donné a été illustré schématiquement en Fig. 2. Le signal reçu démodulé est échantillonné à la fréquence " chip " et les échantillons appartenant à l'intervalle de garde sont supprimés (suppression non représentée). Le signal obtenu peut s'écrire: K N-IL-I R(t)= y''ak.dk( i).ckn.hkn(i).exp(j.2 nzn/NC)+/(t) (3) k=l 1=0 n=0 o hk,, n(fi) traduit la réponse du canal de l'utilisateur k à la fréquence de la sous-porteuse n du symbole MC-CDMA émis au temps i. T et q(t) est le bruit reçu. Les échantillons ainsi obtenus sont parallélisés dans un convertisseur série / parallèle 210 avant de subir une FFT dans le module 220. Les échantillons dans le domaine fréquentiel, en sortie de 220, sont égalisés et désétalés par la signature de l'utilisateur k. Pour ce faire, les échantillons du domaine fréquentiel sont multipliés par les coefficients qk,(i).c*A, dans les multiplieurs 2300,.., 230NCIPUis sommés en 240 pour fournir un symbole de sortie dk(i). Différentes possibilités d'égalisation ont été envisagées dans l'état de la technique dont notamment la combinaison MRC (Maximum Ratio Combining) définie par l'emploi des coefficients qkn(i)= h*kn(i) ou.* est l'opération de conjugaison. Le récepteur illustré en Fig. 2 ne permet de décoder que les données d'un seul utilisateur k. Or il est souvent avantageux de procéder à un décodage des données transmises pour l'ensemble des K utilisateurs, ce afin d'estimer et d'éliminer les interférences entre les différents canaux de transmission. Les techniques de détection multi-utilisateur et de détection conjointe ont été également envisagées pour la méthode MC-CDMA. Par exemple l'article de S. Kaiser et al. intitulé " Multi-carrier CDMA with iterative decoding and sofi-interference cancellation " publié dans GLOBECOM '97 en pages 6-10, 1997, propose une méthode de détection conjointe avec suppression parallèle des interférences (PIC pour Parallel Interference Cancellation). Toutefois, cette technique de détection ne fournit pas nécessairement la solution optimale en terme de maximum de vraisemblance. En outre, l'application directe d'une technique de détection à maximum de vraisemblance à un contexte multi-utilisateur conduirait à une complexité prohibitive. Le but de la présente invention est de proposer une méthode et un dispositif de détection multi-utilisateur dans le cadre d'une transmission MC-CDMA qui ne présente pas les inconvénients des techniques susmentionnées. A cette fin, la présente invention est définie par une méthode de détection d'une pluralité de symboles (dk(i)) transmis par ou pour une pluralité K d'utilisateurs, chaque symbole appartenant à une constellation de modulation et faisant l'objet d'un étalement spectral avant d'être modulé sur une pluralité L de porteuses, ladite méthode comprenant une étape de démodulation et une étape de désétalement spectral du signal reçu (r(i)) pour fournir un vecteur (y(i), y(i),y2(i), y2(i)) caractéristique dudit signal, ladite méthode comprenant en outre une étape de recherche, à l'intérieur d'un réseau de points (A,Q,A2,Q2) généré par les symboles desdites constellations de modulation, d'au moins le plus proche voisin dudit vecteur. Avantageusement, ladite étape de recherche est limitée à un ensemble de points du réseau appartenant à une zone prédéterminée autour du vecteur reçu. Alternativement, ladite étape de recherche est limitée à un ensemble de points du réseau appartenant à une zone prédéterminée autour de l'origine dudit réseau. Ladite zone prédéterminée sera préférablement déterminée par une sphère. Si les symboles transmis ont été étalés spectralement au moyen de séquences à valeurs réelles, ledit vecteur complexe pourra être décomposé en un premier vecteur à composantes réelles et un second vecteur à composantes réelles. Ladite étape de recherche consiste alors à déterminer le plus proche voisin dudit premier vecteur et dudit second vecteur à l'intérieur d'un réseau (A,Q) de points à coordonnées réelles de dimension K Dans le cas général, ledit vecteur complexe étant considéré comme un vecteur à composantes réelles de taille 2.K, ladite étape de recherche consiste à déterminer le plus proche voisin à l'intérieur d'un réseau (A2,Q2) de points à coordonnées réelles de dimension 2.K L'étape de recherche est avantageusement effectuée sur une pluralité de composantes réelles dudit vecteur complexe, la recherche étant limitée pour chacune desdites composantes à un intervalle défini par une borne inférieure et une borne supérieure, lesdites bornes étant choisies de manière à ce que ledit intervalle ne comprenne pas des points relatifs à des symboles ne pouvant appartenir à la constellation de modulation. Selon un mode de réalisation de l'invention, l'étape de démodulation spectrale est suivie d'une étape de désétalement et d'égalisation des symboles obtenus par démodulation du signal reçu aux différentes porteuses, ladite fournissant un vecteur (y(i), y2(i)) de symboles égalisés pour les différents utilisateurs. Avantageusement, ledit vecteur caractéristique (y(i),y2(i)) est obtenu à partir du vecteur de symboles égalisés au moyen d'un traitement matriciel visant à substantiellement décorréler les différentes composantes de bruit de ce dernier. Selon une variante, ladite étape de recherche est étendue à celle d'un ensemble de points voisins dudit vecteur caractéristique et les symboles transmis sont estimés de manière souple à partir des symboles générant lesdits points voisins et des distances séparant lesdits points voisins du point reçu. L'invention est définie également par un dispositif de détection d'une pluralité de symboles (dk(i)) transmis par ou pour une pluralité K d'utilisateurs, chaque symbole appartenant à une constellation de modulation et faisant l'objet d'un étalement spectral avant d'être modulé sur une pluralité L de porteuses, le dispositif comprenant des moyens pour mettre en oeuvre la méthode exposée ci-dessus. Un tel dispositif de détection peut être utilisé dans un système de télécommunication mobile MC-CDMA. Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante faite en relation avec les figures jointes, parmi lesquelles: La Fig. I représente de manière schématique la structure d'un émetteur MC- CDMA connu de l'état de la technique; La Fig. 2 représente de manière schématique la structure d'un récepteur MC- CDMA mono-utilisateur; La Fig. 3 représente un réseau de points utile à la méthode de détection selon l'invention; La Fig. 4 représente de manière schématique la structure d'un récepteur MC- CDMA multi-utilisateur selon un mode de réalisation de l'invention. L'idée à la base de l'invention est d'effectuer une détection multiutilisateur MC-CDMA au moyen d'une représentation par réseau de points. Considérons à nouveau un système de télécommunication MC-CDMA et intéressons nous au signal reçu à l'instant i sur les L différentes sous-porteuses du signal OFDM. Nous supposerons à nouveau que le nombre de sous-porteuses est égal au facteur d'étalement. Soit r(i) = ((i),...,rL(i)) le vecteur des signaux reçus sur les différentes sous-porteuses et d(i)=(di(i),.,dK(i)) le vecteur des K symboles émis à l'instant i. On peut écrire C la matrice des K séquences d'étalement de longueur L: C= I:.'CIL CKI " *CKI, Si l'on se place dans le cas de la liaison descendante, un seul canal de transmission est à prendre en compte. On supposera que le canal est non sélectif en fréquences sur chaque sous-porteuse ú et perturbé par un bruit blanc additif gaussien. La fonction de transfert du canal à l'instant i peut être représentée par L coefficients complexes he(i), ú=1,..,L. Ces coefficients sont regroupés dans la matrice diagonale H=Diag(h(i),...,hL(i)). L'équation (3) donnant le signal reçu s'exprime sous forme matricielle: r(i)=d(i)AC(i)H(zO)+l(i) (4) o t(i) = (ri (i),..., h (i)) est le vecteur de bruit blanc additif gaussien et A la matrice diagonale Diag(ai..,aK) formée par les amplitudes pour les différents utilisateurs. Dans la liaison montante, le signal en provenance de chaque utilisateur traverse un canal différent. On supposera comme ci-dessus que les canaux sont non sélectifs en fréquences sur chaque sous-porteuse ú. L'étalement et l'effet du canal peuvent alors être combinés dans une matrice Cu (i) CtJ (i) = I LCK:IhKl:(i)... CgL (i)h Dans l'hypothèse o tous les utilisateurs sont reçus de façon synchrone, le signal reçu peut alors s'écrire: ir(i)=d(i)ACu(i)+1l(i) (5) On cherche le symbole émis au sens du maximum de vraisemblance, c'est-à-dire le vecteur d(i) des K symboles émis tel que l'écart quadratique: D2(d)=Ilr(i)-d(i)ACu(i)ll2 (6) soit minimal. De manière équivalente on peut minimiser l'expression: Dî(d)=Ild(i)ACu(i) 12-2Red(i)ACu(i);r(i)) (7) le produit scalaire peut encore s'écrire: L K, * K L K (d(i)ACu(i);r(i))=Eakdk (i)ckt (i)hke* (i)n(i) =akdk* (i)ckt* (Ohkt* (i) n(i) =-akdk*(i)yk(i) t= k=l k=l t=l k=l o l'on a défini: L yk(i)=Ckt e(i) hkt (i)n(i) (8) e=l La connaissance du vecteur d'observationy(i)= (y,(i),. ..,y (i)) est suffisante pour permettre la détection au sens du maximum de vraisemblance du vecteur émis b(i). L'observation y(i) peut s'écrire matriciellement à partir de l'équation (8) y(i)=r(i)CuH () (9) ou a" désigne la transposée hermitienne. Pour une liaison descendante, on peut définir de manière similaire, à la différence que l'on peut factoriser la matrice C en une matrice de canal et une matrice d'étalement: A H y(l)=r(i)CD (l) avec CD(I--C(I)H(I) (10) On remarquera que l'expression (8) ou de manière équivalente (9) ou (10) n'est autre qu'une opération de filtrage adaptée à la signature et au canal relatifs à chaque utilisateur k. Elle peut être considérée comme une combinaison MRC (Maximum Ratio Combining) des différents symboles reçus. Alternativement, tout en conservant le désétalement spectral on pourra utiliser, un procédé d'égalisation autre que la combinaison MRC. Ainsi, en lieu et place des coefficients t,'(i) dans l'équation (9), les coefficients qkt(it)= (Equal Gain Combining) ou bien encore qk,t(i)= ( (Orthogonality Restoration Combining) pourront être employés. Toutefois, pour des raisons de simplification de présentation nous supposerons dans la suite que qk,(i)=hkJ(). En remplaçant l'expression (5) dans (9), on obtient l'expression du vecteur d'observation y(i) en fonction du vecteur des symboles émis d(i) pour la liaison montante: y(i)=d(i)ACu(i)CtZl(i)+n(i) soit encore y(i) =d(i)M(i)+n(i) (1 1) avec M(i)=ACu(i)CuiH(i) (12) Bien entendu, l'expression (I 1) s'applique également à la liaison descendante à condition de prendre: M(i)=ACD(i)CDH (i) (13) Nous démontrerons ci-après que y(i) tel que donné par l'équation (11) peut être vu conmme un point d'un réseau A2 de dimension 2K, de matrice génératrice complexe M(i) =ACu(i)CtuH(i) corrompu par un bruit n(i) = (n (),..,nK (i)) tel que: 1, nk (i) = kt (i)k (i)t(i) (14) e=l Nous appellerons réseau réel de points A de dimension K tout ensemble de vecteurs de RK vérifiant: x = blv + b2v2 +... + bKvK o b Z,Vi = 1,....K o {vv2,...,vK} est une base sur RK. Les points du réseau forment un sous-groupe abélien additif de RK, c'est d'ailleurs le plus petit sous-groupe de RK contenant les vecteurs {vl,v2.. ..,vK} et un Z-module de RK. Ces vecteurs de base forment les lignes de la matrice génératrice G du réseau. On peut donc écrire x = bG o b = (bi, ...,bK) ZK. (15) La région délimitée par les vecteurs de base est appelée parallélotope fondamental et son volume, noté vol(A) ou det(A), est nommé volume fondamental. Ce volume fondamental n'est autre que le module du produit vectoriel des K vecteurs de base et est donc égal à Idet(G)] o det désigne le déterminant. S'il existe plusieurs choix possibles pour la matrice génératrice d'un même réseau, il n'existe par contre qu'une unique valeur pour le volume fondamental. La région de Voronoï V ou cellule de Dirichlet d'un point x appartenant au réseau est l'ensemble des points de RK plus proches de x que de tout autre point du réseau. Le volume de cette région est égal au volume fondamental. Le rayon d'empilement p du réseau est le rayon de la plus grande sphère inscrite dans la région de Voronoï et le rayon de recouvrement celui de la plus petite sphère circonscrite à cette même région. Le rayon d'empilement est donc le rayon des sphères dont l'empilement constitue le réseau de points et le rayon de recouvrement est celui des sphères les plus petites qui, centrées sur les points du réseau, permettent de recouvrir tout l'espace RK. La densité du réseau est le rapport entre le volume de la sphère de rayon p et le volume fondamental. Enfin, le coefficient d'erreur (kissing number) T(A) du réseau est le nombre de sphères tangentes à une même sphère dans l'empilement ou, en d'autres termes, le nombre de voisins d'un point du réseau, situés à la distance minimale d,, = 2p. Nous appellerons réseau complexe de points (ou réseau sur C) de dimension K tout ensemble de vecteurs x tels que x=bG o b=bR+j.bI avec bR,b'EZK et o G est une matrice à coefficients complexes de rang K Comme nous allons le montrer, un réseau de dimension K sur C peut être vu comme un réseau réel de dimension 2 K sur R. Les vecteurs y(i), d(i), n(i) ainsi que la matrice M(i) figurant dans l'équation (l11) sont à composantes complexes. La relation (11) peut encore s'écrire sous la forme réelle équivalente: y2(i)=d2(i)M2(i)+n2(i) (16) avec: y2(z)=(yR(i)yl(i),..,yK(iyk(i)" O ykQ(iYyk(i)sont respectivement la partie réelle et la partie imaginaire du symbole yk(i); d2(i)=(d1"(i),d(i),...,dK(i),dk(i)) o dl (iYdLk(i)sont respectivement la partie réelle et la partie imaginaire du symbole dk(i); n2(i)=(nl(i),nl(i),.,nk(i),nk(i)) o nk(i),n(i)sont respectivement la partie réelle et la partie imaginaire de nk(i); et o M2 est la matrice 2Kx2K définie par: MR MI...MI Mll Ml*'"* MiK M,'K1 -/1 / RKMIK l-, M,,....M M M2=:: (17) MKI MKI,' MRK MkK L-MIM,..-MKKMK j avec Mek=MRk+j.Mtk o l'indice i a été omis pour simplifier les notations. Les composantes du vecteur d2(i) appartenant à un alphabet fini de cardinal A. Par exemple, les composantes dkR(i) et dk(i) pourront être des symboles de modulation PAM d'ordre M. Dans ce cas, dkR(i)e{-M+l,-M+3,. .,M-3,M-1} et (18) dk(ie{-M+l,-M+3,..,M-3,M-1} (19) Si l'on effectue la transformation: adR(i)=2(dk(i+M-1) et cd'(i)= (dk(i)+M-l) soit encore de manière vectorielle: d'2(i) -2(d2(i)+VM) (20) O Vw=(M-1,M-1,..,M-1) les composantes dk(i) et dk(i) sont des éléments de Z et par suite d'2(i) est un vecteur de Z2K. De manière générale, l'invention peut s'appliquer à tout alphabet fini de symboles tel qu'il existe une transformation affine transformant les composantes dkR(i) et dkl(i) en des éléments de Z. De manière similaire, on effectue la transformation correspondante sur y2(i), c'est-à-dire: y (i0 2(iy+vuM2) (21) Moyennant cette transformation, que nous supposerons implicite dans la suite, le vecteur d2(i)M2(i)appartient alors à un réseau de points A2 tel que défini par la relation (15) avec G=M2(i). Le vecteur y2(i) peut donc être considéré comme un point du réseau A2 corrompu par un bruit n2(i). Si l'on suppose que les composantes du vecteur de bruit n2(i) sont des variables aléatoires indépendantes gaussiennes centrées, le problème de la détection au sens du maximum de vraisemblance des symboles émis par les différents utilisateurs peut se traduire comme la recherche du point z2 du réseau A2 tel que sa distance à y2(i) soit minimale. En réalité, il résulte de l'expression (14) que les composantes de bruit sont corrélées puisque, si l'on note q2 le vecteur réel de bruit reçu correspondant au vecteur complexe tl, Cu2 la matrice obtenue à partir de Cu selon la transformation donnée en (17), R2 la matrice d'autocorrélation du vecteur de bruit n2(i): R2 E(n2'2)=E(Cu22Cu2)C=u2E(iTiq2)Cu2=No Cu2CU2 (22) pour la liaison montante et, R2=E(n2 n2)=E(CD2T12 T2CDT)=CD2E(1T2 qz) CTz=No CozCtn (23) 2 22Q N.DC (23) pour la liaison descendante. Afin de se ramener au cas décorrélé on effectue préalablement au décodage une opération de blanchiment du bruit. Il La matrice d'autocorrélation R2 est symétrique définie positive et peut donc faire l'objet d'une factorisation de Cholesky: R2=W2 W2 (24) o W2 est une matrice triangulaire inférieure de taille 2Kx2K. On définit un vecteur d'observation blanchie: y2(i)y2(i W2 (25) ainsi qu'un nouveau réseau de points Q2 constitué des vecteurs de composantes (xR(i),1(i.. XRp(iXK (i)) avec x2(i=x2(i)WT-I o X2(i) est un vecteur de composantes (xçl(ixfl (i)..,xR(iYxk(i)) appartenant à A2. On peut facilement montrer, qu'après blanchiment, la matrice de covariance du bruit filtré n2(i)W21'- est égale à NoI2K o I2K est la matrice identité de dimension 2K. Le décodage comprend donc une première étape de blanchiment du vecteur d'observation suivie d'une étape de recherche du plus proche voisin dans le réseau de points Q2. Il importe de noter que la relation (23) (liaison descendante) se simplifie lorsque l'on utilise des séquences d'étalement à valeurs réelles. En effet dans ce cas, la relation (13) peut s'écrire: M(i)=ACD (i)CD (i) =AC(i)H(i)HH(i)CH(i)=AC(i H(i2CH(i) (26) o [H(i){2=Diag(h1(i) 2,...,IL(i) 12) est une matrice réelle. Par suite la matrice génératrice M(i) du réseau est elle-même une matrice réelle et l'on peut modéliser le système par un réseau de points réel A de dimension K et de matrice génératrice M(i) yR(i)=dR(i)M(i)+nR(i) (27) y'(i)=d'(i)M(i)+n'(i) (28) o yR(i),dR(j), nR(i) (resp. y'(i),d'(i),n'(i)) sont les vecteurs constitué des parties réelles (resp. des parties imaginaires) des composantes de y(i), b(i), n(i). Les vecteurs d'observation yR(i) et y'(i) appartiennent à RK. On peut montrer que les vecteurs de bruit nR (i) et n' (i) ont tous deux pour matrice de covariance R(i)=CD(i) CDT(i)No. R(i) étant une matrice symétrique définie positive on peut, comme cidessus, la factoriser selon une décomposition de Cholesky: R = WWT o W est une matrice réelle triangulaire inférieure de taille KxK. Afin de décorréler les composantes de bruit, les vecteurs d'observation réels yR(i) et y'(i) sont tout d'abord soumis à une opération de blanchiment: yR(i=yR(i)W -1 (29) y'(i/=y'(i/w"-, (30) Dans un deuxième temps, on recherche les plus proches voisins des vecteurs yR(i) et y'(i) appartenant au réseau de points Q constitué des vecteurs (i)=x(i)WT- o x(i) appartient à A. On peut montrer facilement, qu'après blanchiment, la matrice de covariance des bruits filtrés nR(i)WT-I est égale à NoIK o IK est la matrice identité de dimension K. On voit donc que dans le cas d'une liaison descendante avec signatures réelles, la méthode de décodage conduit à une recherche de deux plus proches voisins dans un réseau de dimension K alors que dans le cas général, complexe, le décodage nécessite une recherche dans un réseau de dimension 2K La Fig. 3 illustre schématiquement un réseau de points et la méthode de recherche du plus proche voisin d'un vecteur d'observation blanchie y2 dans un réseau de dimension 2K ou, dans le cas de signatures réelles, des vecteurs d'observation blanchis YR, y dans un réseau de dimension K. Nous traiterons ces deux cas avec le même formalisme et noterons par la suite K la taille du réseau. Dans les deux cas le problème est de déterminer le point x du réseau le plus proche du vecteur reçu et blanchi y, ce qui revient à minimiser la métrique /y/x)= -x2= l2y-: (31) /=1 o Y=x+*I, 1l=(?r,...,rp) le vecteur de bruit et x=(xi,..,x) un point appartenant au réseau. Le vecteur de bruit q a des composantes réelles indépendantes suivant une distribution gaussienne de moyenne nulle et de variance o'2. Soit R la matrice de covariance du vecteur de bruit Alternativement, on notera que le vecteur y n'a pas besoin d'être blanchi si l'on utilise une métrique basée sur la matrice de covariance m(y/x)=(y-x)R-'(y-x)T (3 1') On désignera par la suite, pour des raisons de simplification, y le vecteur d'observation blanchi (y) ou non et.1 la métrique intervenant dans la relation (31) ou (31 '). Les points du réseau {x = bG} sont obtenus à partir des vecteurs de données b(,...,b-) dans lesquels les composantes b, appartiennent à l'anneau des entiers Z. On note {Vw,V2,...,VK} les lignes de la matrice G. Par définition ces vecteurs forment une base du réseau. L'ensemble des symboles émis est limité à un alphabet de taille finie AKCZr appelé constellation. Cette constellation est déterminée par les constellations de modulation utilisées par (ou pour) les K utilisateurs et le cardinal de l'alphabet AKest le produit des cardinaux des différents alphabets de modulation. On supposera que les points complexes de chacune de ces constellations possèdent des valeurs réelles et des valeurs complexes régulièrement réparties. Un décodage exhaustif nécessiterait une recherche du plus proche voisin dans la totalité de A,. Le décodeur restreint avantageusement son calcul aux points qui sont situés à l'intérieur d'une zone de la constellation située autour du point reçu, préférentiellement à l'intérieur d'une sphère de rayon donné XC centrée sur le point reçu comme représenté en Fig. 3. Seuls les points du réseau situés à une distance quadratique inférieure à C du point reçu sont donc considérés pour la minimisation de la métrique (31). En pratique, le décodeur effectue la minimisation suivante: minlly-xlI= min IwII (32) XiA WEy-Ai Pour ce faire, le décodeur recherche le plus petit vecteur w dans l'ensemble translaté y - A. On peut exprimer les vecteurs y et w comme: y=pG avec p=(p,...,,,) w=pG avec.=(5.. ,) (33) Il est important de noter que p et, sont des vecteurs réels. Comme w = y - x o x appartient au réseau A, on a la relation t, = p - bi pour i=1,..,K avec w=-, vi i=1 Le vecteurw est un point du réseau dont les coordonnées { sont exprimées dans le repère translaté centré sur le point reçu y. Le vecteurw appartient à une sphère de rayon quadratique C centrée en 0 si: |IWI!2 =Q GGTRT Dans le nouveau système de coordonnées défini par, la sphère de rayon quadratique C centrée en y est donc transformée en une ellipse centrée à l'origine. La factorisation de Cholesky de la matrice de Gram F=GGT donne F=AAT, o A est une matrice triangulaire inférieure d'éléments i. Il faut noter que si le vecteur y a été blanchi, il n'y a pas lieu d'effectuer cette factorisation car la matrice génératrice de Q2 (respectivement de Q) vaut AW2 (respectivement AW) et est donc déjà triangulaire inférieure. Toutefois, dans le cas o l'on n'a pas procédé au blanchiment préalable et donc o la décomposition de Cholesky est nécessaire: O(b.)=AT=| T | Aa= &)iii+ &ei Le décodeur possède K compteurs internes, à savoir un compteur par dimension, chaque compteur comptant entre une borne inférieure et supérieure comme indiqué en (38), étant entendu qu'à chaque compteur est associé un couple de bornes particulier. 1 0 En pratique, ces bornes peuvent être mises à jour de manière récursive. Avantageusement, on liste toutes les valeurs du vecteur b pour lesquelles le point correspondant du réseau x = bG est situé en deçà de la distance quadratique C du point reçu. Les points du réseau situés en dehors de la sphère considérée ne sont pas testés. On voit donc que la complexité de décodage ne dépend pas de la taille de la constellation du réseau. De plus, la recherche à l'intérieur de la sphère peut être considérablement accélérée en mettant à jour le rayon V'5 avec la dernière norme euclidienne calculée lwll. Finalement, on sélectionne comme meilleur point x celui associé à la plus petite norme IfwI. Le rayon de recherche VC doit être choisi de manière appropriée. En effet, le nombre de points du réseau situés à l'intérieur de la sphère de décodage augmente avec C. C'est pourquoi le choix d'une grande valeur de C pénalise l'algorithme de décodage tandis que la sphère de recherche peut être vide si C est trop faible. De manière à être sûr que le décodeur trouve au moins un point du réseau, on choisit avantageusement un rayon de recherche supérieur au rayon de recouvrement du réseau. On peut par exemple le prendre égal à la borne supérieure de Rogers: -,.det(G) XC =(?iogK+gt oglog:+5a:, (39) o VK est le volume d'une sphère de rayon unité dans l'espace réel RK. Il faut noter que le décodeur opère sur un réseau de points et non sur une constellation de modulation. Quand la constellation employée sur une dimension est une constellation PAM d'ordre M, les coordonnées entières du point doivent être comprises entre 0 et M - 1. Plutôt que de tester une fois un point trouvé, si ce point appartient bien à la constellation, on peut avantageusement ajuster les bornes de recherche de (38) pour qu'elles restent comprises entre 0 et M-1. On aura ainsi l'assurance que tous les points trouvés sont dans la constellation et que les compteurs ne parcourent inutilement des points qui, de toutes façons, n'appartiennent pas à la constellation. Cette pré-sélection permet d'accélérer considérablement l'algorithme de décodage. La Fig. 4 illustre schématiquement la structure d'un dispositif de détection multi-utilisateur selon un mode de réalisation de l'invention. Le signal reçu est tout d'abord échantillonné à la fréquence " chip " et les échantillons sont parallélisés par un convertisseur série / parallèle. Les vecteurs de L échantillons obtenus sont transformés en 420 par une FFT dans le domaine temporel. Les L échantillons temporels sont transmis à une batterie de K filtres 430j,..,430K adaptés à la signature et au canal de transmission de chaque utilisateur. Ces filtres adaptés permettent d'obtenir le vecteur complexe y(i) d'après la relation (9) ou (10) selon le cas d'une liaison montante ou descendante. Les composantes de y(i) subissent un blanchiment spectral en 440 afin de décorréler les échantillons de bruit. Le vecteur blanchi, y(i), éventuellement après transformation du type de celle donnée en (21) (non représentée), fait l'objet d'un décodage de maximum de vraisemblance en 450 par recherche du point du réseau A2 le plus proche de l'extrémité du vecteur y(i). La sortie du module de décodage 450 (éventuellement après transformation inverse à celle susmentionnée, non représentée) est un vecteur d(i) dont les composantes sont les symboles estimés transmis par les différents utilisateurs. Dans le cadre d'une liaison descendante utilisant des signatures réelles, le module 450 effectue deux recherches de plus proche voisin dans un réseau de points A de dimension K, comme on l'a vu plus haut. Au lieu de fournir les symboles de constellation estimés, le récepteur peut être adapté pour fournir des de symboles souples. Dans ce cas, la recherche à l'intérieur de la sphère de décodage ne se limite plus au plus proche voisin mais est étendue à une pluralité des plus proches voisins du point relatif au signal reçu. Plus précisément, on associe à chaque point voisin m=l,..,m une probabilité a posteriori pr, probabilité que le vecteurdm(i) défini par ce point aient été émis, étant donné l'observation y(i). On définit un symbole souple d'un utilisateur k comme le Mk-uplet (ri,..., nr') o Mk est le cardinal de la constellation de modulation de l'utilisateur k et o zj est la probabilité que le symbole si ait été émis. On a: mex ffj=p(sjly)=p(sjIdm).pm (40) m=l Les probabilités a posteriori pm pourront par exemple être exprimées par: p=e-e of At. est la distance séparant le point reçu du point correspondant au n=l vecteur dm(i). Bien que certains modes de réalisation de l'invention aient été représentés sous forme de modules fonctionnels, il est clair que le dispositif selon l'invention peut être réalisé sous forme d'un processeur programmé pour exécuter les différentes fonctions représentées ou sous la forme d'une pluralité de processeurs dédiés aptes à mettre en oeuvre une ou plusieurs de ces fonctions. REVENDICATIONS 1) Méthode de détection d'une pluralité de symboles (dk(i)) transmis par ou pour une pluralité K d'utilisateurs, chaque symbole appartenant à une constellation de modulation et faisant l'objet d'un étalement spectral avant d'être modulé sur une pluralité L de porteuses, ladite méthode comprenant une étape de démodulation (420) et une étape de désétalement spectral (430) du signal reçu (r(i)) pour fournir un vecteur (y2(i), y2(i) ) caractéristique dudit signal, caractérisée en ce qu'elle comprend une étape (450) de recherche, à l'intérieur d'un réseau de points (A2,Q2) généré par les symboles desdites constellations de modulation, d'au moins le plus proche voisin dudit vecteur. 2) Méthode de détection selon la revendication 1, caractérisée en ce que ladite étape de recherche est limitée à un ensemble de points du réseau appartenant à une zone prédéterminée autour dudit vecteur caractéristique. 3) Méthode de détection selon la revendication 1, caractérisée en ce que ladite étape de recherche est limitée à un ensemble de points du réseau appartenant à une zone prédéterminée autour de l'origine dudit réseau. 4) Méthode de détection selon la revendication 2 ou 3, caractérisée en ce que ladite zone prédéterminée est une sphère. ) Méthode de détection selon l'une des revendications précédentes, caractérisée en ce que les symboles transmis ayant été étalés spectralement au moyen de séquences à valeurs réelles, ledit vecteur caractéristique est décomposé en un premier vecteur à composantes réelles et un second vecteur à composantes réelles et que ladite étape de recherche consiste à déterminer le plus proche voisin dudit premier vecteur et dudit second vecteur à l'intérieur d'un réseau (A,Q) de points à coordonnées réelles de dimension K. 6) Méthode de détection selon l'une des revendications 1 à 4, caractérisée en ce que, ledit vecteur caractéristique étant considéré comme un vecteur à composantes réelles de taille 2.K, ladite étape de recherche consiste à déterminer le plus proche voisin à l'intérieur d'un réseau (A2,Q2) de points à coordonnées réelles de dimension 2.K 7) Méthode de détection selon la revendication 6, caractérisée en ce que ladite étape de recherche est effectuée sur une pluralité de composantes réelles dudit vecteur caractéristique, la recherche étant limitée pour chacune desdites composantes à un intervalle défini par une borne inférieure et une borne supérieure, lesdites bornes étant choisies de manière à ce que ledit intervalle ne comprenne pas des points relatifs à des symboles ne pouvant appartenir à la constellation de modulation. 8) Méthode de détection selon l'une des revendications précédentes, caractérisée en ce que l'étape de démodulation spectrale est suivie d'une étape de désétalement et égalisation des symboles obtenus par démodulation du signal reçu aux différentes porteuses, ladite fournissant un vecteur (Y2(i) de symboles égalisés pour les différents utilisateurs. 9) Méthode de détection selon la revendication 8, caractérisée en ce que ledit vecteur caractéristique (y2(i)) est obtenu à partir du vecteur de symboles égalisés au moyen d'un traitement matriciel (440) visant à substantiellement décorréler les différentes composantes de bruit de ce dernier. ) Méthode de détection selon l'une des revendications précédentes, caractérisée en ce que ladite étape de recherche est étendue à celle d'un ensemble de points voisins dudit vecteur caractéristique et que les symboles transmis sont estimés de manière souple à partir des symboles générant lesdits points voisins et des distances séparant lesdits points voisins du point reçu. 11) Dispositif de détection d'une pluralité de symboles (dk(i)) transmis par ou pour une pluralité K d'utilisateurs, chaque symbole appartenant à une constellation de modulation et faisant l'objet d'un étalement spectral avant d'être modulé sur une pluralité L de porteuses, le dispositif comprenant des moyens pour mettre en oeuvre la méthode revendiquée selon l'une des revendications précédentes. 12) Récepteur pour système de télécommunication mobile MC-CDMA comprenant un dispositif de détection selon la revendication 11.