Brevet FR2776146A1 — publié le 19990917

La présente invention concerne un procédé démodulation de signaux représentatifs de séquences émises dans un système de communications, par exemple, un système de communications à étalement de spectre utilisant une modulation orthogonale ou bi-orthogonale. Un tel système de communication est par exemple un système de communication à accès multiple, tel qu'un système téléphonique sans fil ou un système de communication du type répéteur de satellite. Par exemple, la présente invention s'applique à un système de communications qui utilise la technique à accès multiple et à division par code CDMA (Code Division Multiple Access). Un système de communications à étalement de spectre auquel le procédé de l'invention s'applique est connu et est par exemple du type de celui qui est décrit dans le document de brevet US-A-5 602 833. Comme on l'a représenté à la Fig. 1, un tel système est essentiellement constitué, côté émission, d'un codeur 10, d'un modulateur et d'une unité d'émission 30 sur un canal 40. Côté réception, il est constitué d'une unité de réception 50, d'un démodulateur 60 dual du modulateur 20 et d'un décodeur 70 dual du codeur 10. Généralement, de tels systèmes comprennent également un entrelaceur 15 qui est situé entre le codeur 10 et le modulateur 20 ainsi qu'un désentrelaceur 65 dual de l'entrelaceur 15 et situé entre le démodulateur 60 et le décodeur 70. Le codeur 10 ainsi que l'entrelaceur 15 sont connus dans l'état de la technique et sont prévus pour coder avec répétition et entrelacement un train de bits entrant représentatif de signaux de voix, de données ou autres, par exemple préalablement amplifiés, filtrés et numérisés. Ce codage est du type qui permet la mise en oeuvre de fonctions de détection et de correction d'erreurs. Associé à un traitement d'entrelacement, ce codage permet également au système de fonctionner à des rapports de signal sur bruit et de signal d'interférence faibles. Les signaux résultant du codage et de l'entrelacement sont une suite de mots ou symboles k-aires constitués de k éléments généralement notés 1 et -1 (ou 0 et 1). Cette suite de symboles subit, dans le modulateur 20, une modulation dite modulation orthogonale ou une modulation dite bi-orthogonale. Dans le cas d'une modulation orthogonale, le modulateur 20 comprend un générateur 21 de mots orthogonaux les uns aux autres. De tels mots sont également appelés séquences ou fonctions. Dans la suite de la description, ils seront désignés par le terme de fonctions. Ces fonctions peuvent être des fonctions de Walsh, lesquelles sont engendrées, à partir de matrices de Walsh, également connues sous le nom de matrices dHadamard. On rappelle que les matrices de Hadamard sont des matrices qui sont engendrées de manière récursive telle qu'une matrice de fonctions d'ordre n peut s'écrire: W(n) / 2 W(n / 2) W(n) = W(n/2) W(n/2) o W représente le complément logique de la matrice W. De plus, la matrice de dimension 1, W(J), est égale à 1. Chaque colonne ou ligne d'une matrice W(n) d'ordre n est appelée une fonction de Walsh et est notée Sp(n) o p est le numéro de colonne ou de ligne de la fonction considérée et n est la dimension de la fonction. Elle sera plus simplement notée également Sp. Par exemple, la matrice de Walsh de dimension 8 s'écrit de la manière suivante: 1 I I I 1 1-1- 1 -1 1 -1 1 -1 I -1 1 1 -1 -1 J i -1 -1 1 -1 1 - 1 1 1- 1 1 W, (8)= 1 1 -1 1 -1 -1 1 -1 1 -I i -I -1 I -1 I J I -1 -1 -J -1I J1 I -l -I I -I I J -I Toujours à titre d'exemple, la séquence S4 s'écrit {1,-1,-1,1,1,-1,-1,1}. On notera que l'on a utilisé les éléments 1 et -1 mais que l'on pourrait respectivement utiliser les éléments 0 et 1. Une modulation numérique consiste à attribuer à chaque symbole p possible issu de l'entrelaceur 15, une séquence à émettre SEp. Dans le cas de la modulation orthogonale, les séquences attribuées SEp correspondent aux fonctions de Walsh S,(n). Ainsi, des symboles de trois bits pourront être modulés au moyen de fonctions de Walsh de dimension 8 et de manière générale, des symboles à k bits seront modulés au moyen de N (=2k) séquences SEp de dimension n (= 2k). Par exemple, pour des symboles d'entrée à deux bits, on donne dans le tableau I ci-dessous la liste des séquences émises SEp correspondantes attribuées par le modulateur 20. TABLE I Symbole d'entrée Séquence attribuée 1 SE1=SI(4) I 1 SE2=S,,(4) = {1,1,1,1} -1 I SE2=S2(4) = {1,-1,1,-1} 1 -1 SE3=S3(4) = {,1,-1,-1} -1 -1 SE4=S4(4)= {1,-1,-1,1} Quant à la modulation bi-orthogonale, elle consiste à attribuer à un symbole d'entrée p une séquence SEp correspondant, soit à une fonction orthogonale, par exemple une fonction de Walsh Sq de dimension n = 2k'l quand le dernier élément (ki' élément) est dans un premier état, soit au complément logique de cette fonction Sq de même dimension n quand le dernier élément (kiwe élément) est dans un second état. De manière générale, des symboles à k bits seront modulés au moyen de N (=2k) séquences SEp de longueur n (= 2k-1). La modulation bi-orthogonale est par exemple décrite dans le document de brevet européen EP-A-809 364. Par exemple, pour des symboles d'entrée à deux bits, on donne dans le tableau II ci-dessous la liste des séquences correspondantes attribuées par le modulateur 20. TABLE II Symbole d'entrée Séquence attribuée 1 1 SE, = S,(2) = { 1,l} -1 1 SE2 = S2(2) = { 1,-1} 1 -1 SE3=-S,(2) = {-1,-1} -1 -1 SE4= - S2(2) = {-1,1} Les séquences SEp attribuées lors de la modulation orthogonale ou bi- orthogonale sont ensuite traitées puis transmises par l'unité d'émission 30. Elles sont transmises, via le canal 40, à l'unité de réception 50, puis au démodulateur 60 respectivement dual de l'unité d'émission 30 et du modulateur 20. Le procédé de démodulation mis en oeuvre dans le démodulateur 60 consiste par conséquent à recouvrer, dans le signal transmis par l'unité de réception 50, la séquence SEp utilisée lors de la modulation, puis à recouvrer, à partir de cette séquence, le symbole p modulé. Plusieurs procédés peuvent être mnis en oeuvre. Le premier consiste à sélectionner la séquence dont la valeur de corrélation entre le signal transmis par l'unité de réception 50 et la fonction correspondante est la plus forte. Elle consiste donc à choisir la séquence SEp dont la probabilité qu'elle ait été émise soit la plus forte. La séquence SEp, étant choisie, le symbole p associé à cette séquence est ensuite recouvré et fourni au désentrelaceur 65 puis au décodeur 70. Le décodeur 70 est, par exemple, un décodeur du type à maximum de vraisemblance, par exemple tel que celui qui a été décrit par A.J. Viterbi dans un article paru dans IEEE Transactions on Communication Technology d'octobre 1971 et intitulé " Convolutional codes and their performance in communication systems ". Cette méthode est dite, dans le domaine de la technique, Hard Decision Method (Méthode de décision dure). Une autre méthode dite Soft Decision Method (Méthode de décision souple) consiste à déterminer, à partir des valeurs de corrélation obtenues par corrélation entre le signal transmis par l'unité de réception 50 et chacune des fonctions susceptibles d'avoir été utilisées lors de la modulation, une valeur de confiance pour chaque séquence SE1 à SEN associée à chacune desdites fonctions. Il consiste encore à déduire de cet ensemble de valeurs de confiance, une valeur de décision souple à attribuer à chaque élément du symbole p démodulé. Le symbole démodulé alors constitué de chacune de ces valeurs de décision est ensuite, comme précédemment fourni au désentrelaceur 65 puis au décodeur 70. On peut montrer que la formulation théorique de cet ensemble de valeurs de décision souple prises selon le critère de maximum de vraisemblance est donnée de manière générale par la relation suivante: 1 P(SEX [y) L(ûk) = In Vxpourlequelu, =+1 V P(SEx ly) Vx_ pour_ lequel_uI =-1 o P(xly) représente la probabilité, sachant que le signal y a été reçu, de décider que la séquence SE,, avait été émise, et ui est l'élément d'ordre i du symbole x correspondant à la séquence SE,, considérée. Un procédé de démodulation qui appliquerait telle quelle cette formulation aurait l'inconvénient de nécessiter, pour son calcul, de nombreuses opérations mathématiques relativement longues à mettre en oeuvre. Par ailleurs, on peut montrer que les valeurs optimales de décision souple nécessitent la connaissance préalable du comportement statistique du canal de transmission, par exemple le rapport signal sur bruit, ou bien encore le comportement statistique de ce rapport (loi de Gauss, de Rice, de Rayleigh...). Le document de brevet US-A-5 442 627 décrit un démodulateur qui a pour objet de résoudre ces problèmes. Un tel démodulateur est représenté à la Fig. 2. Il est essentiellement constitué de moyens de corrélation 61 qui reçoivent les signaux issus de l'unité de réception 50, lesquels se présentent sous la forme d'échantillons de données. Ces moyens de corrélation 61 sont par exemple constitués de moyens de calcul d'une transformée de Hadamard rapide (dite Fast Hadamard Transform ou F.H.T dans le domaine de la technique) ou des moyens de calcul de corrélation. Ils délivrent, pour chaque fonction de Walsh Si à S susceptible d'avoir été utilisée lors de la modulation, une valeur al à an de corrélation avec le signal présent. Ces moyens 61 sont suivis de moyens 62 qui permettent de déterminer une valeur de confiance qui correspond à la portion d'énergie w1 à WN du signal reçu associée à chaque séquence SE, à SEN susceptible d'avoir été émise. Pour chaque séquence SEF égale à une fonction Sp, la portion d'énergie wp associée à ladite séquence est généralement calculée dans les moyens 62 comme étant le carré de la valeur de corrélation ap, avec ladite fonction (wp = ap2). Le démodulateur comprend ensuite des moyens de calcul de métriques 63 qui déterminent, sur la base de l'ensemble des valeurs w1 à WN délivrées par les moyens de corrélation 62, l'ensemble des valeurs de décision souple (Soft Decision Value) Ci à Ck et les attribuent respectivement aux éléments u. à uk du symbole démodulé. Ainsi, chaque valeur de décision souple est donnée par la relation suivante: Ci = max(wp) - max(wp ') p_ pour lequel_u, =+1 p'_pour_lequel_u, =-1 dans laquelle la première fonction max correspond à la plus élevée des portions d'énergie wp des séquences SEp pour lesquelles les symboles démodulés p correspondants ont l'élément u, égal à +1 et la seconde fonction max correspond à la plus élevée des portions d'énergie wp, des séquences SEp. pour lesquelles les symboles démodulés p' correspondant ont l'élément ui égal à -1. Un des inconvénients d'une telle méthode résulte dans le fait qu'elle n'est pas directement applicable à la modulation bi-orthogonale. En effet, dans le cas de la modulation bi-orthogonale, les moyens 61 précédents (transformée de Hadamard rapide F.H.T ou moyens de calcul de corrélation entre le signal présent en sortie de l'unité de réception 50 et chaque séquence de Walsh) ne sont pas applicables tel quels. Le but de la présente invention est donc de prévoir un procédé de démodulation dont la complexité de mise en oeuvre est relativement aussi faible que celui qui vient d'être décrit et qui puisse, d'une part, tenir compte de tous les éléments des symboles démodulés et, d'autre part, être appliquée aussi bien à la modulation orthogonale qu'à la modulation biorthogonale. Pour atteindre ce but, un procédé de démodulation selon l'invention est caractérisé en ce qu'il consiste: à déterminer une valeur de corrélation entre chaque fonction orthogonale susceptible d'avoir été utilisée lors du processus de modulation et les signaux à démoduler, à déduire desdites valeurs de corrélation une valeur de confiance attribuée à chaque séquence susceptible d'avoir été émise, ladite valeur de confiance étant calculée de la manière suivante: si, le symbole associé à ladite séquence a son dernier élément qui est dans un premier état, ladite valeur est, soit égale au carré de la valeur de corrélation entre le signal à démoduler et la fonction utilisée pour ladite séquence si ladite valeur de corrélation est positive, soit nulle si ladite valeur de corrélation est négative, si, le symbole associé à ladite séquence a son dernier élément qui est dans un second état, ladite valeur est, soit nulle si ladite valeur de corrélation est positive, soit égale au carré de la valeur de corrélation entre le signal issu dudit récepteur et ladite séquence si ladite valeur de corrélation est positive, à déduire desdites valeurs de confiance lesdites valeurs de décision souple à attribuer à chaque élément du symbole démodulé. Par ailleurs, on a prévu un procédé tel que la détermination des valeurs de décision souple permette, contrairement au procédé décrit ci-dessus, de prendre complètement en compte les valeurs de confiance de tous les éléments du symbole démodulé. Ainsi, selon une autre caractéristique de l'invention, la valeur de décision à attribuer à un élément du symbole démodulé est calculée comme étant égale à la somme de toutes les valeurs de confiance attribuées aux séquences associées aux symboles dont ledit élément est égal à une première valeur à laquelle est ôtée la somme de toutes les valeurs de confiance associées aux séquences correspondant aux symboles dont ledit élément est égal à une seconde valeur. Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante d'un exemple de réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels: la Fig. 1 est un schéma synoptique d'un système de communications auquel la présente invention s'applique, et la Fig. 2 est un schéma synoptique d'un démodulateur pour la mise en oeuvre d'un procédé de démodulation selon la présente invention. Un démodulateur qui exploite le procédé de démodulation selon l'invention est essentiellement constitué, comme celui de l'art antérieur représenté à la Fig. 2, de moyens de corrélation 61 qui reçoivent les signaux issus d'une unité de réception 50 et qui délivrent des valeurs ai à an de corrélation de ces signaux d'entrée avec les n fonctions orthogonales (par exemple des fonctions de Walsh) Si à Sn susceptibles d'avoir été utilisées lors de la modulation. Ces valeurs de corrélation sont transmises à des moyens 62 qui délivrent à des moyens 63 de calcul de métriques des valeurs de confiance wl à WN respectivement associées à chaque séquence susceptible d'avoir été émise SE1 à SEN. Les valeurs de confiance w à wivN représentent la portion d'énergie associée à chaque séquence SE, à SEN. Pour qu'un démodulateur selon l'invention puisse fonctionner alors que la modulation opérée côté émetteur a été une modulation bi-orthogonale, il diffère de ceux qui sont connus essentiellement par le procédé qui est mis en oeuvre dans les moyens 62 de calcul de portion d'énergie wp associée à chaque séquence SEp susceptible d'avoir été émise. Ce procédé est maintenant décrit. On va considérer un symbole p comprenant k éléments ui avec i variant de I à k. La séquence émise correspondant à ce symbole est la séquence notée SEp. Si ce symbole a été modulé par modulation bi-orthogonale, deux cas se présentent. Dans le premier cas, son dernier élément (kit élément), noté uk, est dans un premier état (par exemple + 1) et la séquence émise SEp correspond à une fonction de Walsh, notée Sq. Dans le second cas, son ki0l élément est dans un second état (par exemple -1), la séquence émise SEp correspond au complément logique Sq de la même fonction de Walsh Sq. Dans le premier cas, selon l'invention, la valeur de confiance ou portion d'énergie wp associée à la séquence SEp, est, soit égale au carré de la valeur de corrélation ctp (wp = ap2) entre le signal d'entrée et la fonction de Walsh 5q correspondant à cette séquence SEp, si cette valeur de corrélation a. est positive, soit, si la valeur de corrélation ap est négative, égale à zéro (wp = 0). Dans le second cas, la valeur de confiance wp associée a la séquence est, soit égale au carré de la valeur de corrélation ap (wp = ap2) entre le signal d'entrée et la fonction de Walsh Sq correspondant à cette séquence SFp si cette valeur de corrélation ap est négative, soit, si la valeur de corrélation ap est positive, égale à zéro (wp = 0). Par exemple, si l'on considère une modulation bi-orthogonale selon le tableau II ci-dessus, on aura deux valeurs de corrélation respectivement a, et a2. Le tableau III ci-dessous donne les valeurs des portions d'énergie w1 à w4 correspondant à ces deux valeurs ai et a2 quand celles-ci sont positives. TABLE III Symbole d'entrée Portion d'énergie I 1 w= a2 -1 1W2= a2 1 -1 w3 = 0 -1 -1 w4 = 0 Quant au tableau IV ci-dessous, il donne la valeur des portions d'énergie w1 à w4 correspondant à ces deux valeurs a, et a2, la première étant, à titre d'exemple, positive alors que la seconde est négative. TABLE IV Symbole d'entrée Portion d'énergie iI wia 1l w.= 2 -1 1 w2 =O 0 1 -I W3 = 0 --1 - W4 = a2 Selon une autre caractéristique de l'invention, la valeur de confiance wp associée à la séquence SEp est calculée comme précédemment mais pondérée par un facteur, noté m qui est fonction de l'ensemble des valeurs de corrélation a, à an. Avantageusement, la valeur du facteur de pondération m est donnée par la relation: In m = 1 S Les moyens de métriques 63 qui sont prévus pour délivrer k = Log2(N) valeurs de décision souple Ci à Ck associées à chaque élément du symbole démodulé peuvent être du type de ceux qui sont été décrits précédemment. On rappelle que la valeur de décision souple Ci associée à l'élément ui du symbole démodulé est alors donnée par la relation suivante: Ci = max(wp) - maX(wp') p_pour_lequelu, =+1 p'_pour_lequel_u =-1 Par exemple, dans le cas décrit dans le tableau mI ci-dessus, et si la valeur absolue de ai est supérieure à celle de a2, on aurait: Ci = w - O = w1 et, C2 = W - W2 De même, dans le cas décrit dans le tableau IV ci-dessus, et si la valeur absolue de ai est supérieure à celle de a2, on aurait: CI = wl - w4 et, C2 = Wl -w4 Néanmoins, comme cela a déjà été mentionné ci- dessus, ce calcul des métriques ne tient pas compte de tous les éléments ui du symbole démodulé puisqu'il opère un choix. Ainsi, pour pouvoir tenir compte de tous les symboles, selon une variante de réalisation de l'invention, les moyens de métriques 63 sont tels que la valeur calculée de décision Ci associée au il élément ui du symbole démodulé est égale à la somme des portions d'énergie wi associées aux séquences susceptibles d'avoir été émises pour lesquelles ledit im élément ui du symbole correspondant est égal à une première valeur (par exemple + 1) à laquelle on ôte la somme des portions d'énergie w, associées aux séquences susceptibles d'avoir été émises pour lesquelles ledit il' élément aui du symbole correspondant est égal à une seconde valeur (par exemple - 1) Mathématiquement, cette définition peut s'écrire: ci = _(wp) - (Wp,) Pour tous_p_pour_lesquels_u, =+1 Pour_tous p'_pour_lesquels_u. =-1 Ce calcul de métrique est maintenant basé sur une somme pondérée des valeurs de confiance, plutôt que sur une sélection des valeurs les plus fortes. Par exemple, dans le cas décrit dans le tableau III ci-dessus, on aurait: CI = (w. + w2) - O C2 = w - w2 De même, dans le cas décrit dans le tableau IV ci-dessus, on aurait: Cl = wl - W2 C2 = wl - w2 On notera que, dans le cas de modulation orthogonale, des moyens 63 tels qu'ils viennent d'être décrits pourraient être utilisés. Les valeurs de portion d'énergie wp Il 2776146 seraient alors égales à a2 et l'on aurait alors, pour chaque élément ui du symbole démodulé, la valeur de décision C, qui, comme précédemment, s'écrirait: Ci= y(wp) - Y(wp,) Pour_tous_p_ pour_ lesquels_ u = +1 Pour_ tous p'_ pour_ lesquels u. =-1 s REVENDICATIONS 1) Procédé de démodulation de signaux représentatifs de séquences (SE, à SEN) émises dans un système de communications, chaque séquence (SE, à SEN) susceptible d'être émise étant le résultat d'une modulation biorthogonale qui associe à un symbole (p), soit une fonction orthogonale (Si à S,) si ledit symbole (p) a son dernier élément (uk) qui est dans un premier état, soit le complément logique de ladite fonction orthogonale (Si à S.) si ledit symbole (p) a son dernier élément (uk) qui est dans un second état, ledit procédé étant prévu pour déterminer chacune des valeurs de décision souple (Ci à Ck) à attribuer à chaque élément du symbole démodulé au vu d'un décodage subséquent du type à maximum de vraisemblance, caractérisé en ce qu'il consiste: à déterminer une valeur de corrélation (ai à a,) entre chaque fonction orthogonale (Si à S.) susceptible d'avoir été utilisée lors du processus de modulation et les signaux à démoduler, à déduire desdites valeurs de corrélation (ai à a,,) une valeur de confiance (w1 à WN) attribuée à chaque séquence (SE, à SEN) susceptible d'avoir été émise, ladite valeur de confiance (w, à WN) étant calculée de la manière suivante: si, le symbole (p) associé à ladite séquence (SEp) a son dernier élément (uk) qui est dans un premier état, ladite valeur (we) est, soit égale au carré de la valeur de corrélation (aq) entre le signal à démoduler et la fonction (Sq) utilisée pour ladite séquence (SEp) si ladite valeur de corrélation (aq) est positive, soit nulle si ladite valeur de corrélation (aq) est négative, si, le symbole (p) associé à ladite séquence (SEp) a son dernier élément (uk) qui est dans un second état, ladite valeur (wp) est, soit nulle si la valeur de corrélation (aq) entre le signal à démoduler et la fonction (Sq) utilisée pour ladite séquence (SEp) est positive, soit égale au carré de la valeur de corrélation (at) si ladite valeur de corrélation (aq) est positive, à déduire desdites valeurs de confiance (w. à wN) lesdites valeurs de décision souple (C, à Ck) à attribuer à chaque élément du symbole démodulé. 2) Procédé selon la revendication 1, caractérisé en ce que la valeur de décision (C,) à attribuer à un élément (ui) du symbole démodulé est calculée comme étant égale à la somme de toutes les valeurs de confiance attribuées aux séquences (SEj) associées aux symboles (p) dont ledit élément (ut) est égal à une première valeur, somme à laquelle est ôtée la somme de toutes les valeurs de confiance (wj) associées aux séquences (SEj) correspondant aux symboles (p') dont ledit élément (ui) est égal à une seconde valeur. 3) Procédé selon la revendication 2, caractérisé en ce qu'il consiste à multiplier, avant calcul des valeurs de décision, chaque valeur de confiance (w1 à WN) par un facteur de pondération (m) qui est fonction de l'ensemble des valeurs de corrélation (ai à an). 4) Procédé selon la revendication 3, caractérisé en ce que la valeur du facteur de pondération m est donnée par la relation: = 1 o reprsente la valeur de corration associe la fonction orthogonale S. o a1 représente la valeur de corrélation associée à la fonction orthogonale Sj.