Brevet FR2856535A1 — publié le 20041224

sin n gM + 2 2M cos za - 2 +2 2M p(n) ngM + _-gM +j 2M 1- 20 2 2M 2M Procédé de modulation d'un signal numérique et modulateur pour mettre en oeuvre le procédé. Le domaine de l'invention est celui de la 5 communication numérique o un modulateur recevant un signal numérique en bande de base, transmet ce signal sous forme modulée à un démodulateur distant prévu pour régénérer le signal numérique en bande de base. Les techniques dites xDSL visent à accroître les 10 débits sur paires torsadées dans les réseaux de télécommunication. Ces techniques font l'objet de nombreuses recherches notamment sur les procédés de modulation afin de fournir des services numériques avec un maximum de débit sur liaison filaire au domicile d'un 15 usager. On peut classer les techniques de modulation avancées en essentiellement deux catégories: les modulations simples porteuses et les modulations multiporteuses. Dans la catégorie de modulation simple porteuse, on 20 connaît par exemple la technique nommée CAP (Carrierless Amplitude Phase) qui reprend les principes de la modulation QAM (Quadrature Amplitude Modulation). Une porteuse unique y est modulée en phase et en amplitude. Non retenue par les organismes de normalisation (ANSI, 25 UIT) pour 1'ADSL (Asynchronous Digital Subscriber Line), cette technique de modulation reste sur les rangs pour le VDSL (Very high bit rate Digital Subscriber Line) qui n'est pas encore normalisé. La technologie DMT (Discrete Multi Tone) qui a été 30 choisie comme technique de modulation pour 1'ADSL, est également candidate à normalisation pour le VDSL. Le principe de la DMT est de diviser la bande passante disponible en un grand nombre de sous bandes distinctes et d'effectuer une modulation QAM sur chaque porteuse affectée à chaque sous bande. Une technologie multi-porteuses permet a priori de multiplier le débit propre à une seule sous porteuse par un facteur proche du nombre de porteuses. Cependant, la technologie DMT n'est pas entièrement satisfaisante. Une représentation spectrale résultant du découpage en sous 10 bandes, montre des canaux qui ne sont pas spectralement isolés, comparativement à une réponse fréquentielle idéale. Un recouvrement fréquentiel d'un lobe principal sur les lobes principaux adjacents et une faible différence de hauteur entre lobes principaux et lobes 15 secondaires, y sont source de bruit. Bien que le partage en sous bandes de la technologie DMT fournisse une meilleure utilisation de la bande passante que la technologie simple porteuse, il est nécessaire de prévoir des intervalles de garde entre les trames temporelles pour 20 contenir l'interférence inter-symboles et assurer l'orthogonalité du signal reçu. Ceci présente l'inconvénient de diminuer le débit utile. Le domaine de l'invention est plus particulièrement celui de la modulation DWMT (Discrete Wavelet Multi Tone) 25 en vue de développer des modems xDSL. Le principe de fonctionnement est proche de la DMT notamment en ce qui concerne la division de la bande passante en sous bandes. Elle s'appuie cependant sur une base mathématique différente de la DMT qui est celle des transformées en 30 ondeletttes. 3 2856535 Le chapitre 7.4 du livre de John A.C. Bingham intitulé "ADSL, VDSL, and Multicarrier Modulation" (Wiley Series in Telecommunications and Signal Processing John G. Proakis, Series Editor 2000, ISBN 0-0471029099-08), pages 5 119 à 131, enseigne des principes de bases de la technologie DWMT. Un nombre M de porteuses ont en commun un filtre prototype p(n) de longueur L=gM devant vérifier les relations suivantes: p(n) = p(gM-n-1) g-2s-1 Y-p(n + iM)p(n + iM + 2sM) = 6(s) i=O pour avoir une reconstruction parfaite. A chaque porteuse est associé un filtre de synthèse dont la fonction est le produit du filtre prototype par une fonction en cosinus qui donne la fréquence de la porteuse. Comme l'indique à juste titre ce document, l'utilisation des deux relations ci-dessus mentionnées, pour trouver un filtre prototype, n'est pas une tâche facile. De nombreux filtres prototypes ont déjà été proposés, chacun conduisant à un comportement différent de 20 la modulation sans qu'il soit possible d'établir des règles générales de comportement de filtres prototypes. L'objectif de l'invention est d'obtenir une modulation de signal numérique dans laquelle les lobes secondaires sont significativement plus bas que les lobes 25 secondaires de la technologie DMT avec un maximum d'énergie dans les lobes principaux, de façon à se rapprocher de réponses fréquentielles idéales. Un objet de l'invention est un procédé de modulation d'un signal numérique par ondelettes discrètes dans lequel 30 les bits successifs du signal numérique sont regroupés par symboles distribués sur M voies de traitement o un code est affecté à chaque symbole par modulation d'amplitude d'impulsion, la succession de codes sur chaque voie d'indice k, k variant de O à M-1, étant soumise à un 5 filtre de synthèse fk(n), et dans lequel les sorties des M filtres de synthèse sont sommées pour générer un signal modulé sur M fréquences d'une même forme d'onde donnée par un filtre prototype p(n) commun aux M filtres de synthèse. Le procédé est remarquable en ce que le filtre 10 prototype est donné par la formule: sin cos a 2 2 s4nk2ri2]cos a2 j 2M 2M p(n) =- x+2a n -gM+ ngM 2M 2M o: - un facteur de recouvrement g représente un nombre de codes traités simultanément par voie, - un indice de discrétisation du temps n prend successivement des valeurs entières comprises entre O et gM-1, - un facteur de roulement a donne une largeur de lobe principal et une hauteur de lobe secondaire, - le nombre f étant le rapport connu entre la circonférence d'un cercle et son diamètre. En expérimentant ce filtre, les inventeurs ont obtenu des lobes secondaires à 45 dB sous le lobe principal avec 99,997 % de l'énergie concentrée dans le lobe principal. Des expérimentations sur la valeur du facteur de recouvrement g ont montré qu'il influe essentiellement sur deux propriétés du filtre: d'une part sa longueur qui agit sur l'étalement de trame et d'autre part la hauteur du lobe secondaire qu'il génère. La valeur de g peut varier de 1 à l'infini. Plus g est grand, plus la trame est 5 longue, plus le filtre est long et plus il y a d'échantillons à traiter simultanément. La puissance de calcul nécessaire augmente notablement avec la valeur du facteur de recouvrement. Préférentiellement, la valeur du facteur de 10 recouvrement est telle que g = 6. Des expérimentations sur la valeur du facteur de roulement (roll-off en anglais), ont montré qu'il permet de jouer sur la largeur du lobe principal de chacune des porteuses et sur la hauteur de lobe secondaire. Préférentiellement, la valeur du facteur de roulement est telle que OE = 1,4. Le nombre M de voies de traitement est égal à un nombre de porteuses qui peut être quelconque. Particulièrement, le nombre de voies de traitement, 20 est M = 256. Un objet de l'invention est aussi un modulateur pour moduler un signal numérique comprenant: - un convertisseur série parallèle agencé pour regrouper les bits successifs du signal numérique par symboles 25 distribués sur M voies de traitement, - un codeur de constellation agencé pour affecter un code à chaque symbole par modulation d'amplitude d'impulsion, - un filtre de synthèse fk(n) par voie d'indice k, k variant de 0 à M-1, avec un facteur de recouvrement g de 30 façon à générer en sortie une valeur uk(n) à partir de g codes successifs reçus en entrée, un sommateur agencé pour additionner les sorties des M filtres de synthèse de façon à générer un signal modulé sur M fréquences d'une même forme d'onde donnée par un filtre prototype p(n) commun aux M filtres de synthèse. Le modulateur est remarquable en ce que le filtre prototype est donné par la formule: 0 _ M + l0 gM +1l sin 2g cos La 2 2 2M 2M p(n) =- x 2 2 - + KT ( 2 1- 2a 2 2 2M 2M o: - le facteur de recouvrement g représente un nombre de 10 codes traités simultanément par voie, - un indice de discrétisation du temps n prend successivement des valeurs entières comprises entre O et gM-l, - un facteur de roulement OE donne une largeur de lobe 15 principal et une hauteur de lobe secondaire, - le nombre z étant le rapport connu entre la circonférence d'un cercle et son diamètre. Préférentiellement dans le modulateur, la valeur du facteur de recouvrement est telle que g = 6. Préférentiellement dans le modulateur, la valeur du facteur de roulement est telle que E = 1,4. Particulièrement, le nombre de voies de traitement du modulateur, est M = 256. L'invention sera mieux comprise à partir de sa mise 25 en euvre décrite maintenant en référence aux dessins annexés dans lesquels: - la figure 1 est un schéma de réponse fréquentielle idéale d'un système à M canaux; la figure 2 est un schéma de densité spectrale de puissance en technologie DMT; - la figure 3 est un bloc diagramme de modulateur en technologie DWMT; - la figure 4 est un bloc diagramme de démodulateur en technologie DWMT; - la figure 5 montre une réalisation possible de 10 transformateur inverse rapide en ondelettes; - la figure 6 montre une réalisation possible de transformateur rapide en ondelettes; - la figure 7 est un schéma de densité spectrale de puissance obtenu grâce à l'invention pour quatre 15 porteuses. La figure 1 représente un spectre de puissance portée en ordonnées en fonction d'une fréquence portée en abscisse et normalisée sur un intervalle de 0 à 7. Pour chaque porteuse k, k prenant les valeurs 1, 2, jusqu'à M, 20 la réponse fréquentielle idéale donne une puissance maximale dans l'intervalle de fréquence [(k-1)c/M,kn/M] et une puissance nulle en dehors de cette intervalle. La figure 2 représente un spectre de puissance obtenu en technologie DMT. A chaque porteuse correspond un lobe 25 principal sensiblement centré à l'intérieur de la réponse fréquentielle idéale de cette porteuse et des lobes secondaires adjacents qui empiètent sur les réponses fréquentielles idéales des autres porteuses. On observe des lobes secondaires à seulement 13 dB en dessous des 30 lobes principaux. On observe aussi des lobes principaux qui empiètent les un sur les autres. La figure 3 est un bloc diagramme de modulateur conforme à l'invention. En référence à la figure 3, un convertisseur série/parallèle 1 reçoit en entrée, les données à 5 transmettre qui se présentent sous forme d'une série de bits...0001011011... par exemple. Le convertisseur 1 regroupe les bits reçus à la suite les uns des autres, par paquets qui constituent chacun un symbole que le convertisseur réparti successivement sur une sortie différente parmi M 10 sorties. Chaque sortie du convertisseur 1 correspond à une voie de traitement d'un symbole par cycle de scrutation d'une suite de bits regroupée par paquets constituant M symboles. Comme nous le verrons par la suite, une voie de traitement est agencée pour traiter simultanément 15 plusieurs symboles correspondant à plusieurs cycles de scrutation. Sur l'exemple de la figure 3, chaque symbole correspond à trois bits de la série reçue, mais on comprendra que tout autre quantité de bits par symbole, 20 est possible, y compris une quantité différente selon la sortie vers laquelle le symbole est aiguillé pour tenir compte éventuellement de la capacité de la voie associée, à traiter une taille de symbole exprimée en nombre de bits. Dans l'exemple de la figure 3, le convertisseur 1 25 génère ainsi M symboles à chaque cycle de scrutation de 3M bits reçus en entrée. Un codeur de constellation 2 comprend une entrée associée à chaque voie de traitement, pour recevoir à chaque cycle le symbole émis sur la sortie correspondante 30 du convertisseur 1. Le codeur 2 comprend M sorties, attribuées chacune à une voie de traitement. Pour chaque voie de traitement k, k variant de zéro à M-l, le codeur 2 est agencé pour générer à chaque cycle, un code bk représentatif du symbole recu sur l'entrée correspondante et émettre ce code sur la sortie attribuée à cette voie. 5 Le code est par exemple un nombre entier valant -7 pour le symbole {000}, -5 pour le symbole {OO1}, -3 pour le symbole {Oll}, -1 pour le symbole {OlO}, +7 pour le symbole {lO0}, +5 pour le symbole {lOl}, +3 pour le symbole {ll1}, +1 pour le symbole {llO}. Lors d'un cycle 10 au cours duquel les trois premiers bits représentés en figure 3 de la série revue en entrée du convertisseur 1, constitueraient le symbole émis sur la première sortie du convertisseur 1, b0 vaudrait -7, b1 vaudrait +5, etc. La valeur de bM-1 serait de même fonction des trois derniers 15 bits non représentés de la série en fin de cycle. Les bits suivants sont scrutés à un cycle suivant. Un transformateur rapide inverse d'ondelette 3 (IFWT pour Inverse Fast Wavelet Transform en anglais) comprend M entrées attribuées chacune à une voie de traitement. 20 Chaque entrée est prévue pour recevoir les codes bk émis sur la sortie correspondante du codeur 2 avec un même indice k au cours d'une succession de g cycles de scrutation, k variant de zéro à M-1. Le transformateur 3 est agencé pour générer sur une 25 sortie unique, un nombre réel y(n) qui représente à chaque instant discret n, une valeur de superposition d'ondelettes, correspondant chacune à une voie de traitement avec une fréquence différente, chaque voie de traitement correspondant ainsi à une porteuse. Chaque ondelette résulte du filtrage d'une succession de g codes de symboles traités par une voie de rang k. De façon à mettre en oeuvre la technologie DWMT, la fonction de filtrage fk(n) est donnée par la formule: fk(n)= p(n)cos[(2k+l) (2n+M+1)r/4M] o p(n) représente un filtre prototype indépendant de k 5 modulé par un cosinus qui donne la fréquence de la porteuse de rang k. Le filtre prototype de l'invention est donné par la formule: sin z T2 cosLa 2a 2M 2M O n appartient à l'intervalle [O;gM-1]. On remarque que la formule du filtre prototype vérifie la relation: p(n) = p(gM-n-1) Les valeurs de g pour lesquelles la relation: g-2s-1 E p(n + iM)p(n + iM + 2sM) = 5(s) i=O n'est pas vérifiée, entraîne une reconstruction non parfaite qui nécessite une égalisation que nous verrons par la suite. Le transformateur rapide inverse d'ondelette peut 20 être réalisé de différentes manières. Nous verrons un exemple particulier de réalisation plus tard en référence à la figure 5. La sortie du transformateur 3 est connectée à une entrée de codeur numérique analogique 4 qui génère en 25 sortie une valeur analogique par exemple de tension électrique pour chaque nombre y(n) reçu. Le codeur 4 génère ainsi une valeur analogique s(n) qui est transmise sur une ligne reliant le codeur 4 à un codeur analogique numérique 5. En référence à la figure 4, le codeur 5 reçoit une valeur analogique s' (n) correspondant à la valeur s(n) détériorée par la bande passante de la ligne, par les bruits et par les interférences auxquelles est soumise la ligne de transmission. Le codeur 5 régénère en sortie, un 10 nombre y'(n) à partir de la valeur s' (n) reçue en entrée. Un transformateur rapide d'ondelette 6 (FWT pour Fast Wavelet Transform en anglais) reçoit en entrée le nombre y'(n) régénéré par le codeur 5. Le transformateur 6 comprend M sorties attribuées chacune à une voie de 15 traitement. Chaque sortie est prévue pour émettre des codes b'k qui résultent de la suite de valeurs du nombre y'(n) reçu en entrée au cours du temps. Pour chaque voie de traitement de rang k, k variant de 0 à M-1, le transformateur 6 soumet la succession des 20 valeurs du nombre y'(n) reçues au cours du temps, à un filtrage de fonction hk(n) analysante donnée par la formule: hk(n) = fk(gM-1-n) Les codes b'k résultent directement de ce filtrage. 25 Le transformateur rapide d'ondelette peut être réalisé de différentes manières. Nous verrons un exemple particulier de réalisation plus tard en référence à la figure 6. Un égalisateur 7 reçoit en entrées les codes b'k de façon à annuler ou pour le moins réduire la distorsion 30 introduite par le caractère de reconstruction non parfaite (NPR) du filtre prototype. Différents types d'égalisateurs sont envisageables. L'invention a été mise en oeuvre avec un égalisateur 7 de type suivant. L'égalisateur 7 recevant en entrée à chaque instant 5 discret p, un vecteur {b'j(p)} avec b'j(p)=5jkb'k(p) en notation tensorielle classique, génère en sortie un vecteur {^b'k(p)} avec ^b'k(p)=5kib'i(p) tel que: ^b'i(p) = aijb'j(p) o aij sont les coefficients d'une matrice A inverse d'une 10 matrice C de coefficients cij sont donnés par la formule: gM -I cii = E(f(m) fj(m" pour g=2 m=0 (g-2)M -l cij = (fi(m).-fj(m+(g-2)M)) pour g=4 In=O (g-4)M -I cij = y(f(m).-fj(m+(g-2)M)) pour g=6 mn=O o fi(m) = ômnôikfk(n). Le décodeur de constellation 8 est agencé pour retrouver le symbole correspondant à chaque code ^b'k(p) transmis sur la voie de traitement de rang k par l'égalisateur 7 de façon à transmettre ce symbole à un convertisseur parallèle/série 9. Le convertisseur 9 restitue alors sur une sortie unique la série de bits.. .0001011011... reçue en entrée du convertisseur 1 en concaténant les bits des symboles ^b' k (p) La figure 5 montre un exemple de réalisation du 25 transformateur 3. Une suite de codes bk(m) pour traiter simultanément g échantillons par le transformateur 3, k variant de 0 à M-1, est soumise à un interpolateur 10 sur chaque voie de rang k. L'interpolateur 10 ajoute (M-1) valeurs nulles en aval de chaque code bk(m) de façon à obtenir une suite de gM valeurs vk(n) soumise à un filtre 11 de fonction fk(n) de longueur gM tel que décrit précédemment. Chaque filtre 11 de fonction fk(n) génère en 5 sortie une valeur uk(n) qui peut être interprétée comme étant la réponse impulsionnelle du filtre 11 à la suite de valeurs vk(n). Un sommateur 12 additionne ensuite les uk(n), k variant de 0 à M-1, de façon à obtenir la valeur y(n) 10 précédemment mentionnée. La figure 6 montre un exemple de réalisation du transformateur 6. A chaque arrivée d'une valeur du nombre réel y'(n), celle-ci est communiquée en entrée de M filtres 13 de 15 fonction hk(n), k variant de 0 à M-1. Chaque filtre 13 génère alors en sortie une suite de valeurs V'k(n) résultant des gM valeurs précédentes du nombre y' (n) reçu en entrée. Chaque filtre 13 communique la suite de valeurs 20 V'k(n) en entrée d'un décimateur 14 qui supprime systématiquement (M-1) valeurs avant d'en transmettre une en sortie de façon à générer une suite de g codes b'k(m), m variant de 0 à g-1. La figure 7 représente un spectre de puissance obtenu 25 par mise en oeuvre du système précédemment décrit. A chacune des M porteuses, correspond un lobe principal que l'on observe être à 45 dB au dessus des lobes secondaires avec une énergie concentrée à 99,997% dans le lobe principal. Revendications: 1. Procédé de modulation d'un signal numérique par 5 ondelettes discrètes dans lequel les bits successifs du signal numérique sont regroupés par symboles distribués sur M voies de traitement o un code est affecté à chaque symbole par modulation d'amplitude d'impulsion, la succession de codes sur chaque voie d'indice k, k variant 10 de O à M-l, étant soumise à un filtre de synthèse fk(n), dans lequel les sorties des M filtres de synthèse sont sommées pour générer un signal modulé sur M fréquences d'une même forme d'onde donnée par un filtre prototype p(n) commun aux M filtres de synthèse, caractérisé en ce que le filtre prototype est donné par la formule: n-g n-g sin z 2 2 cos ka 2 2 2M 2M p(n) = - -,lx 2 1- 2a 2 2 2M 2M o - un facteur de recouvrement g représente un nombre de 20 codes traités simultanément par voie, - un indice de discrétisation du temps n prend successivement des valeurs entières comprises entre O et gM-1, - un facteur de roulement a donne une largeur de lobe 25 principal et une hauteur de lobe secondaire, - le nombre z étant le rapport connu entre la circonférence d'un cercle et son diamètre. 2. Procédé de modulation selon la revendication 1, 5 caractérisé en ce que la valeur du facteur de recouvrement est telle que g = 6. 3. Procédé de modulation selon la revendication 1, caractérisé en ce que la valeur du facteur de roulement 10 est telle que E = 1,4. 4. Procédé de modulation selon la revendication 1, caractérisé en ce que le nombre de voies de traitement, est M = 256. 5. Modulateur pour moduler un signal numérique comprenant: - un convertisseur série parallèle agencé pour regrouper les bits successifs du signal numérique par symboles 20 distribués sur M voies de traitement, un codeur de constellation agencé pour affecter un code à chaque symbole par modulation d'amplitude d'impulsion, - un filtre de synthèse fk(n) par voie d'indice k, k variant de 0 à M-1, avec un facteur de recouvrement g de 25 façon à générer en sortie une valeur uk(n) à partir de g codes successifs reçus en entrée, - un sommateur agencé pour additionner les sorties des M filtres de synthèse de façon à générer un signal modulé sur M fréquences d'une même forme d'onde donnée par un 30 filtre prototype p(n) commun aux M filtres de synthèse, caractérisé en ce que le filtre prototype est donné par la formule: gM + 1 gM 1 sinz 2 cosa 2M 2M p(n) x p(n) n - gM + n - M+1 K 2 2 1- 2a 2 2 2M o - le facteur de recouvrement g représente un nombre de codes traités simultanément par voie, - un indice de discrétisation du temps n prend successivement des valeurs entières comprises entre O et gM-1, - un facteur de roulement OE donne une largeur de lobe principal et une hauteur de lobe secondaire, - le nombre z étant le rapport connu entre la circonférence d'un cercle et son diamètre. 6. Modulateur selon la revendication 5, caractérisé en ce que la valeur du facteur de recouvrement est telle que g = 6. 7. Modulateur selon la revendication 5, caractérisé en 20 ce que la valeur du facteur de roulement est telle que a = 1,4. 8. Modulateur selon la revendication 5, caractérisé en ce que le nombre de voies de traitement, est M = 256. 25