Procédé de détermination de codes d'étalement utilisés dans un signal CDMA et dispositif de communication correspondant. Le domaine de l'invention est celui des radiocommunications. Plus précisément, l'invention concerne la réception d'un signal de radiocommunication de type CDMA (en anglais « Code Division Multiple Access », en français
AMRC pour « Accès Multiple par Répartition de Code ») transmis notamment via un canal de propagation à trajets multiples. L'invention s'applique notamment, mais non exclusivement, au système de radiotéléphonie mobile UMTS (en anglais « Universal Mobile Télécommunications System », en français « Système de Télécommunication Mobile Universel »), et plus particulièrement au système d'accès multiple UMTS- FDD (pour « Frequency Division Duplex ») en liaison descendante. On rappelle que le CDMA est une technique large bande dans laquelle le spectre radiofréquence est utilisé par une pluralité de canaux orthogonaux. Chaque canal de trafic, ou voie, est étalé par un code unique de longueur prédéterminée.
Un signal d'usager, ou signal source, peut contenir plusieurs canaux de trafic ou une voie. Le système CDMA est donc une technologie à « étalement de spectre ». Le code numérique appliqué, côté émetteur, aux symboles de données émis par un usager particulier est connu par le récepteur approprié, de façon que ce dernier puisse désétaler le signal source qui le concerne. Dans le système d'accès multiple UMTS en liaison descendante, l'orthogonalité entre les canaux de trafic, ou voies, est assurée pour un canal de transmission sans trajets multiples, ainsi qu'illustré schématiquement par la figure 1. Par analogie avec le domaine de la colorimétrie, le signal UMTS 1 peut être symbolisé par un signal blanc, correspondant à la somme 2 d'une pluralité de « couleurs » correspondant chacune à un signal source modulé par un code d'étalement Cl à C6 approprié. Ces différents codes d'étalement constituent des séquences orthogonales. Dans le système UMTS, les symboles d'information sont étalés en temps par des codes d'étalement dits codes ONSF (« Orthogonal Variable Spreading
Factor » en anglais, soit « Facteur d'Etalement Variable Orthogonal » en français). La longueur de ses codes est toujours une puissance de 2, mais les codes peuvent être de longueurs différentes. Grâce à une méthodologie de sélection de codes basée sur une arborescence illustrée par la figure 7, les codes (de longueurs différentes) restent, dans le cas synchrone, orthogonaux entre eux (orthogonalité dans le sens du produit scalaire). La longueur des codes est de la forme 2k, et on peut donc passer d'un code à l'autre par multiplication/division par 2, 4, 8, etc. Les codes sont constitués de +1 ou -1. Un exemple de code de longueur 4 peut être : +1 +1 -1 -1, +1 -1 -1 +1, ces deux codes sont orthogonaux car leur produit scalaire est nul : (+l*+l)+(+l*-l)+(-l*-l)+(-l*+l)=+l-l+l-l=0. A la réception, le mobile peut être concerné par un ou plusieurs codes à la fois. Il connaît alors ses codes : la longueur, la composition ainsi que les puissances avec lesquelles ces codes sont transmis (ce qui correspond à la puissance avec laquelle les symboles d'information sont envoyés). Avec ces informations, le mobile peut désétaler chaque code ce qui lui permet de retrouver les informations transmises (étalées) avec chaque code. Etant concerné par un nombre limité de codes, le mobile n'a pas des informations sur les autres codes utilisés dans le système (inter et intra cellulaire). Lors de la transmission du signal UMTS 1 par un canal de transmission parfait 3, le signal UMTS 1 ne subit aucune déformation, de sorte que le signal reçu 4 est encore un signal « blanc ». Ce signal reçu 4 peut être traité par un récepteur optimal 5, équivalent à un prisme optique, qui redécompose le signal 4 en différentes couleurs Cl à C6 (à savoir les différents codes d'étalement) le constituant. Cependant, lorsque le canal de propagation contient plusieurs trajets, caractérisés par des retards et des gains complexes différents, l'orthogonalité des voies n'est plus assurée, et une interférence entre les différents canaux de trafic apparaît, ainsi qu'illustré par la figure 2. Cette interférence dépend du canal de
transmission et peut être très handicapante pour la communication numérique, en induisant une forte dégradation du signal reçu. Ainsi, lorsque le canal de propagation 6 est à trajets multiples, le signal reçu n'est plus un signal « blanc » comme le signal UMTS émis 1, mais peut être vu comme la somme de plusieurs signaux « gris » référencés 7 à 9. Lorsque ces signaux 7, 8 et 9 sont décomposés par le récepteur équivalent à un prisme optique 5, la décomposition obtenue n'est plus une décomposition en couleurs élémentaires Cl à C6 : on récupère au contraire six nouvelles couleurs Cl' à C6' correspondant chacune au mélange de plusieurs couleurs de départ Cl à C6. Plusieurs techniques ont d'ores et déjà été envisagées pour tenter de résoudre ce problème, et obtenir une réception de bonne qualité, en dépit de l'apparition d'interférences liées à l'existence de trajets multiples. Quatre exemples de telles techniques sont présentés en annexe. L'invention a notamment, selon un aspect de l'invention, pour objectif de proposer une méthode permettant d'améliorer la réception en présence de trajets multiples. Plus précisément, un objectif de l'invention est de fournir une technique de réception d'un signal CDMA permettant d'extraire un signal plus représentatif de la voie d'intérêt que selon les techniques de l'art antérieur. Un autre objectif de l'invention est de mettre en œuvre une telle technique qui permette d'accroître la qualité du signal que l'on extrait. L'invention a encore pour objectif de fournir une telle technique qui permette une meilleure annulation de l'interférence induite par l'existence de trajets multiples dans le canal de propagation. L'invention a aussi pour objectif de mettre en oeuvre une telle technique qui présente une complexité réduite, et qui soit peu consommatrice en termes de ressources. Les inventeurs ont observé qu'il serait souhaitable, pour répondre à ces objectifs, de connaître dans le récepteur l'ensemble des codes d'étalement utilisés.
Mais il n'existe pas de méthode permettant d'effectuer cette opération, sans que l'information correspondante soit transmise par les émetteurs. Un autre objectif de l'invention est donc de fournir une technique permettant de déterminer les codes d'étalement utilisés en aveugle, c'est-à-dire sans que l'information correspondante ne soit diffusée. Dans le cas d'un système cellulaire, cette approche pourra être utilisée dans une cellule, ou dans un ensemble de cellules voisines. Il convient de noter que cette approche est, en soi, nouvelle et inventive. L'invention a également pour objectif de fournir une telle technique, qui soit utilisable dans d'autres applications, et donc de fournir de telles applications, permettant d'améliorer, d'une façon générale, le fonctionnement des dispositifs de radiocommunication. Ces objectifs, ainsi que d'autres qui apparaîtront par la suite sont atteints à l'aide d'un procédé de détermination des codes d'étalement utilisés dans un signal CDMA comprenant au moins deux voies, portant chacune un signal source distinct codés à l'aide d'un code d'étalement, lesdits codes d'étalement étant orthogonaux entre eux. Un tel procédé comprend avantageusement la série d'étapes suivantes : - réception d'une séquence dudit signal CDMA ; - désétalement de ladite séquence par chaque code d'étalement possible présentant une longueur de code prédéterminée N, par projection de ladite séquence reçue sur l'espace défini par lesdits codes d'étalement présentant une longueur de code prédéterminée N ; - décision sur la présence de chacun desdits codes d'étalement, un code d'étalement étant considéré comme non présent, ou non détecté, si le résultat de ladite projection pour ledit code appartient à un intervalle prédéterminé. De façon préférentielle, dans l'étape de décision, un code d'étalement de longueur N est considéré comme présent si le résultat de la projection pour le code appartient à un intervalle prédéterminé.
De façon préférentielle, les codes d'étalement présentent au moins deux longueurs différentes correspondant chacune à une puissances de 2. Avantageusement, l'étape de désétalement est mise en oeuvre également pour l'ensemble des codes virtuels de longueur N = 2M, un code virtuel correspondant à la répétition de 2k codes de désétalement de longueur 2M k, où chaque code est multiplié par un coefficient propre De façon avantageuse, la série d'étapes est répétée un nombre fini de fois, de façon à effectuer un traitement statistique. Préférentiellement, un code de longueur inférieure à la longueur prédéterminée N est considéré comme présent s'il est détecté au moins un nombre de fois prédéterminé dans la séquence. De façon également préférentielle, un code d'étalement de longueur 2M k est considéré présent lorsque l'occurrence des codes virtuels qui en découlent est proche de l/2k, lors de la répétition de la série d'étapes. Avantageusement, à chaque série d'étapes, on incrémente une donnée de comptage d'apparition pour chaque code d'étalement possible lorsque le résultat de la projection appartient à un intervalle prédéterminé. Également de façon avantageuse, on établit un histogramme des données d'apparition, permettant de déterminer les codes d'étalement, y compris les éventuels codes virtuels, utilisés. Préférentiellement, les séquences étant organisées en trames, la série d'étapes est répétée sur une période correspondant à la durée d'au moins une trame. De façon préférentielle, la projection de désétalement met en œuvre une transformée de Hadamard rapide (FHT). Avantageusement, le procédé selon l'invention comprend une étape d'estimation de la puissance associée à chaque code d'étalement détecté. De façon encore avantageuse, l'étape d'estimation de la puissance prend en compte le résultat de la projection de désétalement.
L'incrément de la donnée de comptage est avantageusement, à chaque itération, une valeur proportionnelle au résultat correspondant de la projection de désétalement, représentative de la puissance associée au code d'étalement correspondant. Préférentiellement, on associe à chacun des codes d'étalement une valeur estimée de puissance relative, par rapport à la puissance du code d'intérêt. Encore de façon préférentielle, les codes d'étalement sont des codes OVSF (en anglais : « Orthogonal Variable Spreading Factor », en français : « Facteur de d'étalement Variable Orthogonal »). Avantageusement, les codes d'étalement peuvent avoir des longueurs valant 4, 8, 16, 32, 64, 128, 256 et 512. De façon préférentielle, le procédé selon l'invention est mis en œuvre dans un procédé de réception d'au moins une voie d'intérêt que l'on veut extraire, la voie d'intérêt étant codée à l'aide d'un code d'étalement dit code d'intérêt. De façon avantageuse, le procédé de réception met en œuvre une étape d'égalisation et une étape d'annulation d'interférence, et en ce que l'étape d'annulation d'interférence, l'étape de désétalement et/ou l'étape d'estimation de puissance utilise la même opération de projection à l'aide d'une transformation mathématique. Encore de façon avantageuse, le procédé selon l'invention est mis en œuvre dans un procédé de réception, pour déterminer un code d'étalement disponible parmi l'ensemble des codes d'étalement possibles. De façon préférentielle, le procédé d'émission est mis en œuvre dans un système de type « talkie-walkie » numérique, dans lequel un terminal peut émettre à tout moment vers au moins un autre terminal, sans l'intermédiaire d'une station de base. L'invention concerne également de façon avantageuse un dispositif de communication comprenant des moyens de détermination des codes d'étalement utilisés dans un signal CDMA comprenant au moins deux voies, portant chacune un signal source distinct codés à l'aide d'un code d'étalement, les codes
d'étalement étant orthogonaux entre eux. Dans un tel dispositif, les moyens de détermination comprennent avantageusement : - des moyens de réception d'une séquence dudit signal CDMA ; - des moyens de désétalement de la séquence par chaque code d'étalement possible présentant une longueur de code prédéterminée N, par projection de la séquence reçue sur l'espace défini par les codes d'étalement présentant une longueur de code prédéterminée N ; - des moyens de décision de la présence de chacun des codes d'étalement, un code d'étalement étant considéré comme non présent, ou non détecté, si le résultat de la projection pour ledit code appartient à un intervalle prédéterminé. Un tel dispositif comprend préférentiellement des moyens d'estimation de la puissance associée à chaque code d'étalement détecté, en fonction des résultats de la projection. Un tel dispositif comprend également de façon avantageuse des moyens d'égalisation et d'annulation d'interférence coopérant avec les moyens de détermination des codes d'étalement utilisés. Dans une variante de l'invention, un tel dispositif comprend également de façon préférentielle des moyens de radiotéléphonie. De façon encore avantageuse, un tel dispositif selon l'invention comprend des moyens de détermination d'un code d'étalement disponible parmi l'ensemble des codes d'étalement possibles. alimentés par les moyens de détermination des codes d'étalement utilisés. Dans une autre variante de l'invention, le dispositif comprend préférentiellement des moyens pour émettre des données selon une technique de type « talkie-walkie » numérique, dans lequel un terminal peut émettre à tout moment vers au moins un autre terminal, sans l'intermédiaire d'une station de base. Egalement de façon préférentielle, le dispositif précité selon l'invention reçoit et/ou émet avantageusement des signaux selon le standard UMTS.
D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation préférentiel, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : - la figure 1, déjà commentée en relation avec l'art antérieur, présente le principe général de la transmission d'un signal CDMA via un canal de propagation parfait, exposé par analogie avec le domaine de la colorimétrie ; la figure 2 illustre le principe de la transmission du signal de la figure 1 via un canal multi-trajets, à nouveau par analogie avec le domaine de la colorimétrie ; la figure 3, commentée en annexe, décrit l'architecture d'un récepteur de type RAKE ; la figure 4, également présentée en annexe, illustre l'architecture d'un récepteur de l'art antérieur de type « RAKE + PIC » ; la figure 5, décrite en annexe, présente l'architecture d'un récepteur de l'art antérieur mettant en œuvre une technique d'égalisation ; la figure 6, également présentée en annexe, illustre l'architecture générale d'un récepteur, mettant conjointement en œuvre des techniques d'égalisation et d'annulation d'interférence ; la figure 7 présente un exemple d'arborescence des codes OVSF, telle que mise en œuvre dans l'UMTS ; la figure 8 est un exemple d'un ensemble de codes d'étalement de longueurs différentes, pouvant être reçus par un récepteur à un instant donné ; la figure 9 présente un histogramme d'apparition des codes d'étalement (réels et virtuels) obtenu selon l'approche de l'invention ; la figure 10 illustre les règles sur lesquelles reposent l'histogramme de la figure 9 ; - la figure 11 est un autre histogramme, présentant les puissances des
différents codes d'étalement utilisés ; la figure 12 est un organigramme simplifié, résumant le fonctionnement de l'invention ; la figure 13 illustre la mise en œuvre de l'invention, dans un dispositif d'élimination d'interférence mettant également en œuvre la technique de la figure 6. L'invention concerne donc un procédé de détermination des codes d'étalement utilisés dans un signal CDMA. L'approche de l'invention permet, comme on le verra par la suite, de distinguer des codes « réels » et des codes « virtuels » et, dans une variante avantageuse, de prendre en compte les puissances associées à chaque code d'étalement. L'approche de l'invention est ainsi une méthode simple et efficace pour identifier en aveugle les codes utilisés en lien descendant par les autres utilisateurs ainsi que leurs puissances. Le mode de réalisation décrit ci-après s'applique au cas de l'UMTS. Par souci de simplification, le procédé de l'invention est cependant présenté dans le cas d'une seule cellule. Une extension au niveau cellulaire est directe. On suppose également, pour la clarté de la présentation, que le mobile est concerné par un seul code à la fois. A nouveau, l'extension à plusieurs codes est directe. Le signal reçu au niveau d'un mobile (plus généralement, d'un dispositif de radiocommunication) contient la somme de tous les codes utilisés, chacun étant modulé par les informations transmises à chaque utilisateur. Les codes mis en jeu restent les mêmes pendant une durée d'au moins une trame UMTS, soit l'équivalent de 10 ms. Un principe de l'invention est de désétaler le signal reçu selon tous les codes qui ont la même longueur que le code d'intérêt, et de faire un traitement, préférentiellement statistique, sur l'apparition (utilisation) des codes. Cette étape peut être réalisée avec la transformée d'Hadamard rapide (FHT : « Fast Hadamard
Transform » en anglais) qui a une complexité très réduite, puisqu'elle ne met en œuvre que des additions et des soustractions. Avant de présenter en détail un mode de réalisation, on explique ci-après la notion de code virtuel. Les codes d'étalement mis en jeu dans la cellule sont de longueur variable (OVSF), mais pour une séquence de longueur correspondant à un code utilisé par le système, les codes sont orthogonaux. Ceci est garanti grâce à la méthode de sélection des codes selon l'arborescence. Ainsi, lorsque l'on s'intéresse à un code donné de longueur N par exemple, tous les codes de la même longueur (N) lui sont orthogonaux, et toutes les séquences de longueur N qui sont constituées de codes de longueur moindre (N/2,
N/4, etc.) sont aussi orthogonales au code en question. Chaque séquence peut être considérée comme un code de longueur N orthogonal au code d'intérêt. Du fait que ce code apparaît dans le signal reçu sans être utilisé dans le système, on l'appelle « code virtuel ». Un code virtuel est donc une séquence qui a la même longueur du code d'intérêt, qui lui est orthogonale et qui est constituée du code d'étalement de longueur différente (plus petite ou plus grande). Le code OVSF correspondant au code virtuel n'est pas utilisé par le système pendant cette phase de transmission. La figure 7, déjà commentée, illustre cette méthode d'arborescence. La règle qui garantit l'orthogonalité est la règle de l'exclusion : si un code est utilisé (par exemple : S8_3), tous les codes qui le suivent dans l'arbre et qui sont issus de la même branche sont exclus (dans l'exemple précédent : S16_5,
S16_6, S32_9, S32_10, S32_ll et S32_12) Une séquence de longueur 16 par exemple peut être constituée d'un seul code de longueur 16, deux codes consécutifs de longueur 8, 4 codes consécutifs de longueur 4, une moitié de code de longueur 32, et ainsi de suite. Tous ces codes sont orthogonaux entre eux par construction. Afin de mieux illustrer cette notion des codes virtuels, on considère l'exemple illustré en figure 8.
On considère le code S16_3, dit code d'intérêt 81, qui étale une information quelconque, et on suppose que le système utilise le code S4_2, S16_4, S32_2. On suppose que, pour une séquence de longueur N=16, ces quatre codes transportent les informations suivantes : ([l] pour S16_3), ([l ; l ; -l ; l] pour S4_2), ([1] pour S16_4) et ([1] pour S32_2). Donc à la réception, on aura l'empilement de : (S16_3), (S4_2 S4_2 -S4_2 S4_2), (S16_4) et la première moitié de S32_2 = S16_l. On remarque que la séquence de longueur 16 constituée de 4 occurrences du code réel S4_2 82 [S4_2 ; S4_2 ; -S4_2 ; S4_2] est orthogonale au code S16_3, donc elle peut être considérée comme étant un code de longueur 16 qui est orthogonal à tous les autres codes dans le système, ce code est donc un code virtuel 83. On comprend que la séquence suivante de longueur 16 contient le code
S16_3 , S16_l, S16_4, et une autre combinaison de code S4_2. Par exemple, si les informations envoyées sont [-1 ; 1 ; -1 ; -1] on aura [-S4_2 ; S4_2 ; -S4_2 ; - S4_2j ce qui donne un autre code virtuel. Ainsi, l'ensemble des codes virtuels de longueur 16 liés à S4_2 est donné par toutes les combinaisons possibles de longueur 4 (=16/4) dont chaque position prend deux valeurs (+1 ou -1). Selon un premier aspect, l'invention permet la détermination des codes d'étalement utilisés. Le procédé propose donc de désétaler la séquence reçue selon tous les codes d'étalement de la même longueur que le code d'intérêt (N). Ce désétalement
(projection sur l'espace des codes d'étalement) va indiquer les codes de longueur N qui sont présents dans la séquence reçue. Cette projection donnera 1 ou -1 (selon l'information modulante) si le code est présent, et 0 si le code ne l'est pas. Dans l'exemple précédent, N=16, un résultat de 1 doit s'afficher pour le code S16_3, le code virtuel [S4_2 ; S4_2 ; -S4_2; S4_2], le code S16_3 et le code S16_l (rappelons encore une fois que tous ces codes sont orthogonaux). Dans l'hypothèse où les codes d'étalement (les vrais et non pas les virtuels) ne changent pas d'une séquence à l'autre, ils sont présents dans toutes les séquences. La projection de la séquence reçue sur ces codes donnera donc toujours un résultat non nul (+1 ou -1). La projection sur les codes virtuels est plus aléatoire. Le résultat n'est pas nul que sur le code virtuel actuellement présent dans la séquence. Dans l'exemple précédent, la première séquence met en jeu le code virtuel [S4_2 ; S4_2 ; -S4_2; S4_2] alors que dans la deuxième on trouve le code virtuel [-S4_2 ; S4_2 ; -S4_2 ; -S4_2]. En regardant ce qui se passe sur une période assez longue (une trame de 10 ms peut être suffisante), on trouve que les codes d'étalement de la même longueur (N) que le code d'intérêt sont soit toujours présents soit toujours non présents. Ce qui donne une probabilité de 1 ou de 0 (certitude) de leur présence. Les codes virtuels ne sont en revanche pas présents tout le temps (d'ailleurs un seul code virtuel existe à la fois). Ils auront donc une probabilité de présence. Dans l'exemple précédent, le nombre des codes virtuels (de longueur N=16) construits à partir du code S4_2 (de longueur N/4) est 24 = 16. Sachant qu'un résultat de 1 ou -1 signifie la présence du code (donc deux résultat possibles pour un code), toute chose égale par ailleurs, chaque code virtuel a une probabilité d'apparition de 2 x 1/16 = 1/8 ≈ 0.125 (ceci revient à ne détecter la présence que de la moitié des codes). Ceci ne concerne évidemment que les codes virtuels issus d'un code d'étalement de longueur d'un quart la longueur du code d'intérêt (N/4).
Les codes d'étalement de longueur N/2 génèrent 4 codes virtuels de longueur N correspondant à toutes les combinaisons possibles. Avec deux résultats (+1 ou -1) pour indiquer la présence du code, la probabilité de la présence d'un code virtuel issu d'un code de longueur N/2 est égale à 2 xl/4 = 1/2 = 0.5. Plus généralement, pour un code virtuel de longueur N construit à partir d'un code d'étalement de longueur N/2k, la probabilité d'apparition de ce code est 2 xl/2k = 2 k. Selon l'invention, on détecte donc plusieurs fois la présence ou l'absence des différents codes, par exemple à l'aide d'une transformée de Hadamard
(désétalement). Chaque fois que le code est présent, on incrémente (de 1 ou d'une valeur P, comme expliqué par la suite) une valeur d'apparition stockée dans une mémoire. On notera que la taille de cette mémoire reste donc limitée. Finalement, en traçant l'histogramme des apparitions des codes, on peut déterminer si le code d'étalement est virtuel ou non. Pour les codes virtuels, à partir de la fréquence relative d'apparition des codes, on peut déterminer le code d'étalement qui est véritablement utilisé (le code S4_2 dans l'exemple précédent). La figure 9 illustre un exemple d'un tel histogramme. La figure 10 présente, de façon synthétique, le principe de cette analyse, qui permet de regrouper les codes par famille selon leur longueur. En fait, lorsque le code d'étalement est utilisé, la sortie de la projection (désétalement) n'est pas exactement +1 ou -1. Elle vaut +P ou -P où P est la puissance transmise selon le code d'étalement détecté. Il est donc possible d'exploiter le principe présenté ci-dessus pour déterminer la puissance de chaque code d'étalement utilisé. Cette puissance dépend de l'information transmise. Pour chaque code d'étalement on trouvera donc une valeur de puissance spécifique (cette valeur peut être la même pour plusieurs codes d'étalement). En moyennant sur l'apparition des codes, on trouve un histogramme tel qu'illustré en figure 11.
On dispose donc aisément d'une information sur les codes d'étalement utilisés, mais également d'une information sur la puissance avec laquelle on les reçoit, par un traitement simple et effectué en aveugle. La figure 12 résume l'approche de l'invention. On répète (121) plusieurs fois, par exemple sur la durée d'une trame (10 ms) les opérations suivantes : réception (122) d'un échantillon de signal ; désétalement (123) de cet échantillon de signal, par exemple à l'aide d'une transformée de Hadamard rapide ; décision (124) sur la présence ou l'absence d'un code, un code étant absent si la sortie correspondante de la transformée vaut 0 ; incrémentation (125) à l'aide des valeurs délivrées par la transformée, d'une table de valeurs d'apparition (dans la pratique, l'étape 24 est virtuelle, et n'est mentionnée que pour aider à la compréhension. On incrémente directement, avec une valeur nulle si le code est absent). On effectue ensuite un montant statistique (126) qui revient simplement à tracer l'histogramme de la figure 11. On dispose alors d'une double information : 127 : liste des codes présents ; 128 : puissance associée à ces codes. Cette méthode peut être utilisée pour différentes applications qui nécessitent la connaissance des codes d'étalement utilisés ou les puissances mises en jeu. Elle est ainsi très intéressante dans le cas où l'on souhaite procéder à une élimination d'interférence à la réception. En fait, comme déjà discuté en préambule, l'orthogonalité des codes d'étalement est garantie lorsque les signaux restent synchrones (ce qui est le cas à l'émission). Lorsque le canal de transmission contient de trajets multiples (des échos), la synchronisation à la réception n'est plus respectée, donc l'orthogonalité ne l'est plus, ce qui fait apparaître une interférence entre les informations transmises avec les différents codes.
Cette interférence peut dégrader les performances d'une façon significative. Afin de remédier à cela, une méthode d'égalisation et d'élimination d'interférence en parallèle (Egalisation + PIC) a été développée par les inventeurs. Elle est développée en annexe, au paragraphe 4. Cette méthode suppose connues les puissances à la réception même si elle se limite à l'utilisation des codes d'étalement virtuels sans se soucier des codes d'étalement véritablement utilisés. La méthode Egalisation+PIC utilise déjà la projection du signal reçu sur l'espace des codes d'étalement via l'opération IFHT (pour « Inverse Fast Hadamard Transform » en anglais ou « Transformée Rapide Inverse de Hadamard » en français). Afin d'implanter la méthode de l'invention dans le dispositif décrit en annexe, il suffit de construire l'histogramme des codes d'étalement et les puissances détectées. Par rapport au dispositif illustré en figure 6, il suffit donc de rajouter des moyens de détection de la présence et de la puissance, selon procédé décrit ci- dessus. Cette approche est illustrée en figure 13. L'ensemble des éléments du cadre 131 sont déjà décrits en relation avec la figure 6, et son mis en œuvre de la même façon. La sortie de la transformée de Hadamard 1311 alimente un nouveau module 132 selon l'invention, qui aliment le désembrouillage 1312. Le module de détection 132 effectue les opérations correspondant notamment aux étapes 125 et 126 de la figure 12. Ceci requiert uniquement deux vecteurs (codes et puissance) de taille très réduite dépendant de la longueur du code d'intérêt et la longueur minimale des codes d'étalement qu'on souhaite prendre en compte. Sachant que, dans le cas de l'UMTS, la taille minimale des codes d'étalement est de 4 et la taille maximale est 128, il y aura au maximum 252 valeurs par vecteur (128+64+32+16+8+4). Cette valeur prend en compte que tous les codes d'étalement de toutes les longueurs sont utilisés ce qui n'est jamais le cas.
La complexité de calcul est par ailleurs très réduite : il s'agit juste de mettre à jour les moyennes déjà enregistrées dans les mémoires en prenant en compte les nouvelles valeurs. Parmi les autres applications pouvant être envisagées, on peut citer l'application à la transmission en mode « talkie-walkie » (ou « push to talk » en anglais) basé sur le système UMTS. Dans ce cas, afin de ne pas utiliser des codes qui sont déjà utilisés, l'invention permet aux mobiles de détecter les codes OVSF libres dans la cellule, donc de les utiliser.
ANNEXE
TECHNIQUES D'ANNULATION D'INTERFERENCES DUES A DES TRAJETS MULTIPLES
1. Récepteur RAKE On a tout d'abord conçu un récepteur, appelé RAKE, susceptible d'être utilisé dans les terminaux mobiles UMTS. Ainsi qu'illustré sur la figure 3, le RAKE 31 est un filtre adapté au canal de propagation : dans l'exemple de la figure 3, la voie d'intérêt est le canal de trafic n° 1. Le signal reçu et échantillonné 30 alimente le récepteur RAKE 31, qui comprend plusieurs branches en parallèles associées chacune à un retard τ0 à τL et à un gain h0 * à hL *. Chacune de ces branches correspond à l'un des trajets discernables du canal de propagation. Les coefficients τ0 à τL et h0 à hL sont donc respectivement les retards et les gains du canal de propagation liés à chaque trajet possible. En sortie du récepteur RAKE 31, les signaux récupérés sur chacune de ces branches, qui correspondent à plusieurs versions égalisées du signal reçu, sont fournis en entrée d'un bloc 32 regroupant le code de brouillage (en anglais « scrambling ») et le code d'étalement (en anglais « spreading ») de la voie d'intérêt n° 1. Ce bloc 32 permet de « dé-brouiller » et « désétaler » le signal reçu, de façon à extraire un symbole estimé 33 a pour la voie d'intérêt n°l. Un inconvénient de cette technique de l'art antérieur est que le récepteur RAKE considère les interférences des autres voies, ou canaux de trafic, induites par les trajets multiples, comme un bruit blanc, ce qui rend leur élimination impossible. 2. Récepteur RAKE + PIC Pour tenter de pallier cet inconvénient du récepteur RAKE, on a envisagé de le compléter au moyen d'un bloc d'annulation d'interférence en parallèle de
type PIC (en anglais « Parallel Interférence Cancellation »), ainsi qu'illustré par la figure 4. Le principe général d'un tel récepteur « RAKE +PIC » est, dans le cas où tous les codes d'étalement de toutes les voies, ou canaux de trafic, sont connus, d'utiliser les décisions des symboles de chaque voie, et de les repasser dans le canal de transmission estimé, afin de les retrancher du signal reçu, et faire ainsi diminuer l'interférence affectant la voie d'intérêt. La qualité de la voie d'intérêt obtenue selon cette technique est donc fortement accrue par rapport à la technique du seul récepteur RAKE décrite ci- dessus en relation avec la figure 3. Il n'est cependant pas nécessaire que les codes d'étalement des voies autres que la voie d'intérêt soient connus. En effet, grâce à la méthodologie arborescente de sélection des codes d'étalement prévue dans le système UMTS, on peut considérer, en réception, que tous les codes d'étalement ont la même longueur que le code d'étalement de la voie d'intérêt, car, lorsqu'un code est utilisé, tous les codes qui le suivent dans l'arbre des codes ne le sont pas. Le désétalement peut donc se faire très facilement par une Transformée d' Hadamard
Rapide. En d'autres termes, on estime l'interférence induite par tous les codes de la même longueur, et on retranche leur influence du signal reçu. Lorsqu'un code n'est pas utilisé, les symboles estimés à sa sortie sont faibles, et ont donc une influence négligeable sur le résultat final. Plus précisément, en relation avec la figure 4, on identifie tout d'abord tous les trajets discernables du canal de propagation, en l'occurrence L+l trajets numérotés de 0 à L. Le signal reçu 30 subit alors les opérations 31 de retard et de gain du récepteur RAKE, caractéristiques de chacun des trajets, sur chacune des branches numérotées de 0 à L. On réalise ensuite une transformée d'Hadamard
Rapide 40 (FHT pour « Fast Hadamard Transform », encore appelée « Fast Walsh
Transform » ou FWT) sur chacune des branches 0 à L, de façon à réaliser le désétalement du signal.
Les différentes versions égalisées du signal, disponibles sur chacune des branches 0 à L du récepteur, sont combinées dans le bloc MRC 41 (en anglais « Maximum Ratio Combiner »), par addition, avec un retard adéquat. Si l'on considère un système comprenant K codes d'étalement distincts, on peut choisir d'éliminer l'interférence induite par M canaux de trafic parmi ces K. On sélectionne alors (44) les M voies les plus perturbatrices, par exemple en fonction de leur puissance. Après utilisation du code d'étalement C, à CM associé à chacune de ces voies, et combinaison 45, on peut régénérer 46 le canal multi- trajet, que l'on peut soustraire 47 au signal reçu 30, afin d'affiner la décision 42 permettant d'extraire le symbole b(i) 43 de la voie d'intérêt n°i. On obtient ainsi, par rapport à la technique RAKE décrite précédemment en relation avec la figure 3, un signal b(i) plus représentatif de la voie d'intérêt n°i, puisque épuré de certains termes d'interférences. Un inconvénient de cette technique de l'art antérieur est qu'elle est très coûteuse en termes de ressources de calcul, puisqu'il est nécessaire de réaliser une transformée de type FWT sur chacune des branches associées à l'un des trajets discernables du canal de propagation. En outre, bien que plus performante que la technique du RAKE, cette technique dite « RAKE+PIC » ne permet pas une annulation suffisante de l'interférence, de sorte que la courbe représentative du taux d'erreur binaire en fonction du rapport signal à bruit (voir figure 7) pour cette technique décroît trop lentement. 3. Récepteur à égaliseur Une troisième technique d'élimination de l'interférence induite par l'existence de trajets multiples est une technique d'égalisation, illustrée par la figure 5. Le signal reçu 30 alimente un égaliseur 50 de type MMSE (en anglais « Minimum Mean Squared Error »), dont le calcul peut être simplifié grâce aux méthodes de filtrage à rang réduit, de type A-CGRRF (en anglais « Adaptive Conjuguate Gradient Reduced Rank Filter ») ou SG-MSWF (en anglais « Stochastic Gradient MultiStage Wiener Filter »). Ces méthodes, qui, comme
pour un égaliseur de Wiener à rang complet, n'ont besoin que du signal reçu 30 et du canal pilote 51 pour estimer l'égaliseur MMSE sont notamment décrites par B. Mouhouche, N. Ibrahim, K. Abed Meraim et P. Loubaton dans « Reduced-Rank Adaptive Chip-Level MMSE Equalization for the Forward Link of Long Code CDMA Systems », Proceedings of the International Symposium on Signal Processing Applications (ISSPA), Paris, 1-4 juillet 2003. On rappelle que, dans un système CDMA, le canal pilote 51 est utilisé par le terminal mobile pour se synchroniser sur le réseau et identifier les cellules qu'il reçoit. Il y a un canal pilote 51 par cellule. En sortie de l'égaliseur 50, le signal égalisé est « débrouillé » 52 par application du code de brouillage caractéristique de la cellule considérée, puis subit un désétalement 54, permettant de prendre une décision 53 sur le symbole bx de la voie d'intérêt considérée, en l'occurrence la voie n°l. Un tel désétalement 54 est par exemple un désétalement direct par multiplication avec la séquence d'étalement et accumulation sur la longueur de cette séquence. Cette technique d'égalisation présente l'avantage, par rapport aux techniques de RAKE et de « RAKE+PIC », d'être de complexité très réduite. Cependant, comme illustré par la figure 7, les résultats obtenus par égalisation traduisent des performances moindres que celles de la technique dite « RAKE+PIC ».
4. Récepteur à égalisation et PIC Le principe général de cette technique, objet de la demande de brevet français FR 0310987, non encore publiée, repose sur la mise en œuvre conjointe d'une égalisation du signal reçu et de l'annulation de l'interférence induite par l'existence de trajets multiples dans le canal de propagation. On présente, en relation avec la figure 6, l'architecture d'un récepteur de l'invention. Le signal reçu 30 alimente un égaliseur 60, qui met en œuvre l'étape d'égalisation du signal reçu du procédé de l'invention, délivrant un signal égalisé unique. Ainsi, contrairement aux techniques de l'art antérieur de type « RAKE »
ou « RAKE+PIC », l'égalisation 60 se fait directement sur le signal reçu, considéré dans sa globalité, et non plus sur chacune des L branches correspondant aux L trajets discernables du canal de propagation multi-trajets. Le bloc d'égalisation 60 fonctionne en deux étapes. Au cours d'une première étape (apprentissage ou mise à jour), on procède au débrouillage puis au désétalement du signal reçu, le désétalement étant réalisé avec le code d'étalement du pilote. On décale ensuite le signal reçu pour le débrouiller et le désétaler de nouveau. Cette opération est répétée G fois, où G est la taille de l'égaliseur. Les sorties du débrouillage et désétalement constituent un vecteur de taille G. L'algorithme à rang réduit utilise ce vecteur comme signal d'entrée et le symbole pilote (connu) comme sortie désirée pour mettre à jour l'égaliseur. La deuxième étape (égalisation directe) consiste à appliquer l'égaliseur mis à jour au signal d'entrée pour donner un signal égalisé qui servira d'entrée au bloc référencé 61. Le signal égalisé unique subit ensuite un « débrouillage » 61, par multiplication terme à terme du signal par la séquence de brouillage, puis alimente un module 62 dans lequel il subit une Transformée d'Hadamard Rapide Inverse (ou IFHT). Ce module 62 met en œuvre une multiplication par la matrice d'Hadamard contenant des +1 ou des -1, qui peut être rendue rapide en utilisant les techniques de papillon utilisées par la FFT (Fast Fourier Transform pour « Transformée de Fourier rapide »). On notera que, selon cette architecture, une seule transformation mathématique inverse 62 doit être mise en œuvre, sur le signal égalisé et débrouillé, ce qui constitue une forte économie en termes de ressources de calcul par rapport à la technique « RAKE + PIC » selon laquelle une FWT devait être réalisée sur chacune des L branches du RAKE (voir figure 4). Dans l'exemple de la figure 6, on considère que la voie d'intérêt que l'on cherche à extraire est la voie n°l. Les signaux issus de la IFHT 62 alimentent K-l modules de décision en parallèle, référencés 632 à 63κ, correspondant chacun à l'une des voies 2 à K autres que la voie d'intérêt n° 1.
Les décisions 632 à 63κ peuvent être des décisions dures ou des décisions souples. Par exemple, on peut adopter comme critère de décision souple le signe du résultat obtenu en pondérant la sortie de l'opération IFHT 62 par la longueur de la séquence d'étalement considérée. Après décisions, l'ensemble des signaux subit une transformée d'Hadamard directe, ou FHT 64 (selon une technique similaire à celle mise en œuvre dans le bloc référencé 62, mais avec une restructuration différente), suivie d'une nouvelle étape de brouillage 65 (similaire au brouillage 61), destinée à permettre de régénérer une estimée 66 des K-2 voies autres que la voie d'intérêt, susceptibles d'interférer avec cette dernière. Le bloc référencé 66 met ainsi en œuvre un filtrage par le filtre correspondant au canal estimé. Les blocs référencés 61 à 66 de la figure 6 réalisent donc l'étape d'estimation de l'interférence induite par les signaux sources des voies autres que la voie d'intérêt du procédé de réception de l'invention. L'estimation 66 de l'interférence induite par les voies autres que la voie d'intérêt est ensuite retranchée 67 au signal reçu 30, selon une soustraction mathématique simple, de façon à ne récupérer que le signal représentatif de la voie d'intérêt n°l, ce qui constitue l'étape de retrait de l'interférence du procédé de réception de l'invention. Grâce à la IFHT 62, on génère donc les K-l estimations d'interférence des
K-l signaux sources correspondant aux K-l plus puissants canaux (virtuels). Ces interférences (estimées ou décidées) sont retranchées (67) du signal reçu 30 pour obtenir une meilleure estimée du signal émis. L'estimation d'interférence peut également ne concerner que M≤K signaux. On notera que, dans les modules de décision 632 à 63κ, les codes d'étalement autres que celui de la voie d'intérêt ne sont pas connus, mais estimés en aveugle. On considère tous les codes OVSF (virtuels) orthogonaux au code d'étalement d'intérêt. On utilise pour ce faire le fait que les codes vus par la voie
d'intérêt sont toujours orthogonaux à son code d'étalement, même s'ils ne sont pas « originellement » de la même longueur. Le signal obtenu après soustraction 67 subit ensuite l'étape de traitement du procédé de réception de l'invention, au cours de laquelle il est égalisé 68, selon une méthode similaire à celle mise en œuvre par l'égaliseur 60, puis alimente le bloc 69 regroupant les codes d'étalement et de brouillage de la voie d'intérêt. Le bloc référencé 69 met en œuvre une multiplication par la séquence conjointe de brouillage et d'étalement du signal d'intérêt, suivie d'une sommation sur la longueur de la séquence d'étalement du signal d'intérêt. A l'issue de ces différentes opérations, une décision ferme 70 est prise, sur le signe de la quantité résultant du bloc référencé 69, qui permet d'extraire le symbole bt émis sur la voie d'intérêt n° 1.