FR2915645A1 - Composant de traitement d'un signal numerique, dispositif de modulation et/ou de demodulation, procede de modulation et/ou de demodulation et programme d'ordinateur correspondants - Google Patents

Composant de traitement d'un signal numerique, dispositif de modulation et/ou de demodulation, procede de modulation et/ou de demodulation et programme d'ordinateur correspondants Download PDF

Info

Publication number
FR2915645A1
FR2915645A1 FR0702984A FR0702984A FR2915645A1 FR 2915645 A1 FR2915645 A1 FR 2915645A1 FR 0702984 A FR0702984 A FR 0702984A FR 0702984 A FR0702984 A FR 0702984A FR 2915645 A1 FR2915645 A1 FR 2915645A1
Authority
FR
France
Prior art keywords
signal
function
component
elementary
modules
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR0702984A
Other languages
English (en)
Inventor
Chawki Sahnine
Denis Callonnec
Nacer Eddine Zergainoh
Frederic Petrot
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
France Telecom SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Priority to FR0702984A priority Critical patent/FR2915645A1/fr
Priority to PCT/FR2008/050703 priority patent/WO2008145915A2/fr
Publication of FR2915645A1 publication Critical patent/FR2915645A1/fr
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2697Multicarrier modulation systems in combination with other modulation techniques
    • H04L27/2698Multicarrier modulation systems in combination with other modulation techniques double density OFDM/OQAM system, e.g. OFDM/OQAM-IOTA system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2626Arrangements specific to the transmitter only
    • H04L27/2627Modulators
    • H04L27/2628Inverse Fourier transform modulators, e.g. inverse fast Fourier transform [IFFT] or inverse discrete Fourier transform [IDFT] modulators
    • H04L27/263Inverse Fourier transform modulators, e.g. inverse fast Fourier transform [IFFT] or inverse discrete Fourier transform [IDFT] modulators modification of IFFT/IDFT modulator for performance improvement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2647Arrangements specific to the receiver only
    • H04L27/2649Demodulators
    • H04L27/265Fourier transform demodulators, e.g. fast Fourier transform [FFT] or discrete Fourier transform [DFT] demodulators
    • H04L27/2651Modification of fast Fourier transform [FFT] or discrete Fourier transform [DFT] demodulators for performance improvement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2647Arrangements specific to the receiver only
    • H04L27/2649Demodulators
    • H04L27/26524Fast Fourier transform [FFT] or discrete Fourier transform [DFT] demodulators in combination with other circuits for demodulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2647Arrangements specific to the receiver only
    • H04L27/2649Demodulators
    • H04L27/26534Pulse-shaped multi-carrier, i.e. not using rectangular window
    • H04L27/2654Filtering per subcarrier, e.g. filterbank multicarrier [FBMC]

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Digital Transmission Methods That Use Modulated Carrier Waves (AREA)

Abstract

L'invention concerne un composant (81) de traitement d'un signal numérique, comprenant :- un ensemble de modules élémentaires de calcul ayant des ports de connexion, et- une unité de contrôle (83) apte à configurer les connexions des ports d'au moins une partie des modules élémentaires pour réaliser au moins deux structures de connexion avec lesdits modules élémentaires assurant respectivement une fonction de transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel, et une fonction de filtrage du signal.

Description

Composant de traitement d'un signal numérique, dispositif de modulation
et/ou de démodulation, procédé de modulation et/ou de démodulation et programme d'ordinateur correspondants. 1. Domaine de l'invention Le domaine de l'invention est celui des télécommunications, par voie filaire ou sans fil. Plus précisément, l'invention concerne les communications basées sur les modulations à porteuses multiples, par exemple de type OFDM (en anglais Orthogonal Frequency Division Multiplexing , en français Multiplexage par répartition orthogonale de la fréquence ). Notamment, la technique selon l'invention est bien adaptée à la modulation et la démodulation de signaux de type OFDM/QAM (en anglais OFDM / Quadrature Amplitude Modulation ), ou OFDM/OQAM (en anglais OFDM / Offset Quadrature Amplitude Modulation ) pour laquelle les porteuses sont mises en forme par une fonction prototype, par exemple la fonction IOTA ( Isotropic Orthogonal Transform Algorithm ). L'invention concerne plus particulièrement un composant de la couche physique d'un système de communication, réalisant des opérations de traitement du signal, et notamment des opérations de modulation et/ou de démodulation. 2. Art antérieur 2.1 Les modulations et démodulations OFDM/OQAM On décrit ci-après l'art antérieur relatif aux modulations avancées de type OFDM/OQAM (en anglais Offset Quadrature Amplitude Modulation ), associées à une forme d'onde IOTA.
Les opérations de modulation ou de démodulation dans un système de transmission multiporteuses de ce type sont classiquement réalisées en utilisant deux composants séparés, l'un réalisant une transformation de Fourier rapide du signal (en anglais FF1' pour Fast Fourier Transform ) et l'autre un filtrage polyphase par la fonction prototype IOTA, pour la synthèse du signal OFDM/OQAM.
Les figures 1 et 2 illustrent ainsi respectivement l'architecture d'un modulateur et d'un démodulateur OFDM/OQAM avec filtrage de mise en forme, selon l'art antérieur. Ainsi qu'illustré en relation avec la figure 1, un modulateur met 5 classiquement en oeuvre les étapes suivantes : décomposition 11 des données complexes d'un train binaire entrant x(t) (avec x(t) = a(t) + jb(t)) en deux données réelles a(t) et b(t) ; modulation en quadrature 12, mettant en oeuvre une multiplication des données réelles a(t) et b(t) par (j)n+,n (_1rn+c,) , où L est la longueur de 10 troncature de la fonction prototype, c'est-à-dire le nombre de symboles du signal OFDM/OQAM que filtre la fonction prototype. Cette étape de modulation en quadrature assure un déphasage de r / 2 en temps et en fréquence de chaque porteuse, ce qui permet de garantir une orthogonalité complète des sous-porteuses 15 - conversion série/parallèle 13 transformation de Fourier inverse (IFFT) 14 ; mise en attente 15 dans une mémoire tampon ; filtrage 16 par la fonction prototype ; conversion parallèle/série 17, délivrant un signal OFDM/OQAM/IOTA 20 s(t). Un démodulateur correspondant, tel qu'illustré en relation avec la figure 2, met classiquement en oeuvre les étapes suivantes : conversion série/parallèle 21 du signal reçu y(t) ; filtrage 22 par la fonction prototype ; 25 - mise en attente 23 dans une mémoire tampon ; transformation de Fourier directe (FFT) 24 ; conversion parallèle/série 25 correction de phase et d'amplitude 26, mettant en oeuvre une multiplication - j0m 1 ( n+m` m(n+L) -jem,l du signal par e -j) -1) ù , où e- permet de Pm,l W Pm,l 3 corriger la phase et l'amplitude du signal altéré par le canal, et W la bande allouée au signal, telle que W = M ro avec M le nombre d'échantillons 0 d'un symbole et ro la durée d'un symbole ; extraction (27) de la partie réelle et recombinaison (28) des données réelles par deux, pour former une donnée complexe, et reconstruire le train binaire x(t). 2.2 La transformée de Fourier
On présente ci-après quelques rappels sur la transformée de Fourier.
L'équation de la transformée de Fourier discrète s'écrit : N-1 X(k) = x(n)WNÀ , n=0 2znk où WN = e-J N = cos ( 2 k a û Î j sin (2nk ) 1 (appelés facteurs de l l
rotations), avec :
n les indices des échantillons temporels ;
k les indices des échantillons fréquentiels ; N le nombre de points de la FF l', qui correspond également au nombre de sous-porteuses dans la modulation OFDM.
L'algorithme de calcul de la FFI', ou transformée de Fourier rapide, repose sur la mise en oeuvre d'opérations de base, connues sous le nom de papillon , ou Butterfly (13F) en anglais.
Plus précisément, chaque module Butterfly est composé d'un ensemble d'additionneurs complexes. Certains modules Butterfly comprennent également un ensemble de multiplieurs complexes.
On rappelle que par définition, une addition complexe permet d'additionner deux nombres complexes (de la forme a+jb, où a représente la partie réelle et b la partie imaginaire). Un additionneur complexe est donc composé de deux additionneurs réels. Une multiplication complexe permet quant à elle de multiplier deux nombres complexes. Un multiplieur complexe est composé de quatre multiplieurs réels et deux additionneurs/soustracteurs réels. 4 Plus précisément, la réalisation d'une FFÏ' à N points nécessite log2 N étages comprenant chacun N papillons, pour un total de N loge N papillons. 2 2
Ainsi, la figure 3 illustre un exemple de calcul d'une 1'1~1' à 8 points, utilisant l'algorithme radix-2 (ce qui signifie que chaque papillon a deux entrées) selon un entrelacement en temps.
Comme indiqué ci-dessus, la réalisation d'une FFI à 8 points nécessite log2 8 = 3 étages 31, 32, 33, comprenant chacun N = 4 papillons (correspondant aux croisements sur la figure 3), pour un total de -`- loge N = 12 papillons. La figure 4 illustre les opérations de calcul effectuées au niveau d'un papillon dans le cas d'un algorithme radix-2. Matériellement, l'algorithme de calcul de la FFI' peut être implémenté dans une architecture telle qu'illustrée à la figure 5, comprenant un module de calcul butterfly 51 (encore noté BF), une mémoire 52 à N points contenant les échantillons en entrée de la FFI', et une unité de contrôle 53.
Ainsi, l'algorithme de FFT consiste à prendre les échantillons deux par deux dans la mémoire 52, à effectuer l'opération butterfly 51, et à écrire les résultats dans la même mémoire.
Ces opérations sont effectuées papillon par papillon, et étage par étage, jusqu'au dernier papillon du dernier étage.
Par exemple, en reprenant l'algorithme illustré en figure 3, les échantillons x [0] et x [4] sont lus dans la mémoire, traités au niveau du papillon 311, et les résultats de l'opération butterfly sont mémorisés dans la même mémoire ; puis c'est au tour des échantillons x [2] et x [6] , x [1] et x [5], et x [3] et x {7], du premier étage 31.
On considère ensuite les papillons des étages suivants. Plus précisément, une fois le premier étage 31 parcouru, on reprend l'algorithme pour le deuxième étage 32, mais cette fois-ci dans un ordre différent, en prenant les échantillons x[0] et x[2] , x{4] et x[6] , x[1] et x[3] , et x[5] et x[7]. Puis on reprend l'algorithme pour le troisième étage 33, avec les échantillons x [0] et x [1] , x[4] et x[51, x[2] et x{3], et x[6] et x[7]. Afin d'augmenter le débit de traitement, des architectures de type pipeline ont été proposées, par exemple dans le document "New radix-2 to the
5 4th power pipeline FFT processor" de J.-Y. Oh et M.-S. Lim (The institute of Electronics, Information and Communication Engineer, Volume E88, No. 8, 2005). Ces architectures permettent de traiter simultanément plusieurs étages.
Selon cette approche, illustrée par exemple en figure 6 pour une 1-F 1 à 256 points utilisant un algorithme radix-23, on utilise loge N papillons en même temps (soit 8 papillons), et un papillon par étage (donc huit étages).
L'architecture reçoit les données (échantillons) une par une, selon le rythme de l'horloge CLK. L'opération papillon est mise en oeuvre tous les deux échantillons reçus, et son résultat envoyé à l'étage suivant.
Dans cet exemple, le symbole 0 correspond à un multiplieur complexe 15 optimisé, et le symbole à un multiplieur complexe complet. On rappelle que les multiplieurs complexes optimisés correspondent à des multiplications par des facteurs de rotations égaux à j . Les multiplications par ces facteurs 2 2
peuvent être réalisées en utilisant des multiplieurs par des constantes, qui peuvent être implémentés par des registres à décalages et des additionneurs. Les
20 multiplieurs complexes optimisés ont donc une complexité inférieure aux multiplieurs complexes complets.
2.3 Le filtrage polyphase
Le filtrage consiste à pondérer (c'est-à-dire à multiplier) les échantillons à la sortie de la transformée de Fourier inverse (IFFT) par les coefficients de la
25 fonction prototype (par exemple la fonction IOTA), et à additionner les résultats aux résultats du filtrage des L-1 précédentes sorties de la 1 1 inverse.
Plus précisément, le signal OFDM/OQAM/IOTA obtenu en sortie de l'étape de filtrage est de la forme suivante : c' j2~n•mv t S(t)OFDMIOQAM/IOTA = L L an,mjn+mZ'(t - rrc0)e n=-oo m=0 avec an m les échantillons réels à l'entrée de l'étape de filtrage. Dans le domaine discret, le signal OFDM/OQAM/IOTA en sortie du modulateur peut s'exprimer sous la forme suivante : 2L-1 Sk+IM [aq,kCl_q,k + 13q,kCl--q,k+M ] q=0 avec :
OsksMù1 ;
lE ;
OsgsLù1 ; 0 si q impair aq,k gk+qM si q pair J gk+qM si q impair
0 si q pair ou gk+qM sont les échantillons de la fonction Iota calculés tous les ro m . Les figures 7A à 7C illustrent ainsi la mise en oeuvre de l'algorithme de filtrage polyphase, selon une fonction prototype de type IOTA de longueur de
15 troncature L = 2 , représentée par une fonction triangulaire 71, et traitant M = 4
échantillons. On note Cn k les échantillons à la sortie de l'étape de transformation de Fourier inverse, à chaque temps/symbole OFDM/OQAM, et Sk+1M les échantillons à la sortie de l'étape de filtrage, à chaque temps/symbole 20 OFDM/OQAM.
Plus précisément, à la sortie de la FF'l' inverse, l'expression des
échantillons peut prendre la forme suivante : 2M-1 mk C m+n(ù1)m(n+L)ei2n2M n,k = a n mJ m=0 +o0 2M-1 1q k = 2M-1 m(k+ M) et Cn,k+M = a n,mim+n(-1)m(n+L)''i2n 2M m=0 où Cn k et Cn,k+M représentent respectivement les M premiers et les M derniers échantillons de la transformée de Fourier inverse. Comme illustré en relation avec la figure 7A, la fonction IOTA est 5 échantillonnée à une fréquence M , et 2ML valeurs de la fonction IOTA sont 0 obtenues (la symétrie de la fonction IOTA permet de stocker dans une mémoire ROM, en anglais read-only memory , en français mémoire morte , seulement ML+1 valeurs). Autrement dit, seize valeurs (2ML =16) de la fonction IOTA 71, notés go à g15, sont échantillonnées, tous les tm . 10 Comme illustré en relation avec la figure 713 pour le premier symbole OFDM/OQAM (K = 0 ), huit (2M = 8) nouveaux échantillons complexes de la h'r'l' inverse (Co,o,Co,1,CO32,CO33,CO34,CO35,CO36,CO37) sont multipliés par la fonction IOTA à chaque temps symbole OFDM/OQAM, et délivrent M = 4 échantillons complexes (C0 ,0g0, Co,1g1, Co,2g2, CO33g3 ). 15 Aux itérations suivantes, le tableau de résultats est décalé et M zéros sont introduits à la fin du tableau. Ainsi, comme illustré en relation avec la figure 7C pour le deuxième symbole OFDM/OQAM (K = 1), quatre zéros sont introduits à la fin du tableau de résultats. Les huit (2M = 8) nouveaux échantillons 20 C1,o,C1,1,C1,2,C1,3,C1,4,C1,5,C1,6,C1,7 sont alors pondérés par les coefficients IOTA, et additionnés aux résultats précédents et ainsi de suite. À la 2Liéme itération, le calcul des échantillons en sortie de l'étape de filtrage atteint un régime stationnaire 72, et les échantillons de sortie correspondent à la somme de 2L échantillons de la FFI' inverse pondérés. 25 Un exemple d'architecture optimisée pour cet algorithme de filtrage, utilisant 2L multiplieurs réels et 2L additionneurs réels, est décrit dans le brevet européen EP 1 005 748 déposé le 30/06/1998 aux noms de FRANCE TELECOM et TELEDIFFUSION DE FRANCE. En particulier, pour tenir compte de la partie réelle et de la partie imaginaire des échantillons complexes à la sortie de la FFT, il est nécessaire d'utiliser deux fois plus de multiplieurs et d'additionneurs réels, soit 2.2L multiplieurs réels et 2.2L additionneurs réels. 2.4 Inconvénients des techniques de l'art antérieur Ces techniques de l'art antérieur présentent plusieurs inconvénients. Tout d'abord, il est à noter que ces techniques nécessitent une importante puissance de calculs, ainsi qu'une grande capacité de mémorisation. Par exemple, le filtrage nécessite l'utilisation de mémoires supplémentaires, de taille (2L -1) M . Ainsi, pour une longueur de troncature de la fonction IOTA L = 4 , l'architecture optimisée de l'algorithme de filtrage nécessite 2L • 2 = 16 multiplieurs réels, et 2L • 2 = 16 additionneurs réels ainsi qu'une mémoire d'échantillons complexes de taille (2L -1) M = 3,5N. Il est à noter que d'autres valeurs de L, ne dépassant pas la valeur 8, peuvent être utilisées.
De plus, il est nécessaire d'utiliser une interface entre l'unité de transformation de Fourier inverse et l'unité de filtrage côté modulateur, ou entre l'unité de filtrage et l'unité de transformation de Fourier directe côté démodulateur. Cette interface permet de stocker des échantillons dans une mémoire tampon, jusqu'à l'arrivée d'un échantillon voulu. En effet, l'unité de filtrage ne peut travailler que lorsqu'elle dispose du premier échantillon en sortie de l'unité de transformation de Fourier inverse, ainsi que de l'échantillon situé M = N / 2 échantillons après. Par ailleurs, les techniques classiques ne permettent pas d'atteindre un haut débit de traitement, tout en limitant la consommation. Notamment, ces techniques ne permettent pas d'atteindre de très hauts débits, comme par exemple un débit de 480 Mb/s sur une largeur de bande de 528 MHz et 128 porteuses, pour le cas de l'ultra large bande (UWB, en anglais Ultra Wide Bande ). Pour de telles applications, il est possible de paralléliser et de pipelines le traitement des données, pour accroître le débit de traitement. On entend 30 notamment par parallélisme le traitement concurrent de plusieurs papillons d'un même étage, et par pipeline le traitement concurrent de plusieurs papillons de différents étages. Toutefois, cette solution comporte encore des inconvénients, puisque l'utilisation d'un algorithme de pipeliné impose une architecture comprenant autant de papillons que d'étages (soit loge N ), multiplié par le degré de parallélisme. Par exemple, si l'on considère une FFT de 4096 points pipelinée sur 12 étages (loge 4096 =12 ), et un parallélisme de 4, l'architecture correspondante nécessite l'utilisation de 24 multiplieurs complexes et 48 papillons pour la mise en oeuvre de l'algorithme de transformée de Fourier.
Un nombre important de ressources arithmétiques et de mémoires est donc nécessaire, auquel il faut encore ajouter les ressources pour le filtrage en tenant compte des ressources supplémentaires dues au parallélisme. En considérant de nouveau un parallélisme de 4 pour le filtrage (soit 4 unités de filtrage en parallèle), l'architecture correspondante nécessite l'utilisation de 64 multiplieurs réels et 64 additionneurs réels pour la mise en oeuvre de l'algorithme de filtrage. Ainsi, selon cet exemple, le modulateur délivrant un signal OFDMIOQAM/IOTA repose sur la mise en oeuvre de 160 multiplicateurs réels et 304 additionneurs réels, ce qui demande une puissance de calcul importante et une grande capacité de mémorisation. 3. Exposé de l'invention L'invention propose un nouveau composant. de traitement d'un signal numérique, c'est-à-dire un signal discret comprenant une suite de valeurs numériques discrètes, nécessitant moins de ressources arithmétiques et de mémoires que les composants de l'art antérieur pour réaliser à la fois une opération de transformation mathématique du signal entre les domaines temporel et fréquentiel (par exemple une transformée de Fourier directe ou inverse) et une opération de filtrage. Selon l'invention, un tel composant comprend : un ensemble de modules élémentaires de calcul ayant des ports de connexion, et une unité de contrôle apte à configurer les connexions des ports d'au moins une partie des modules élémentaires pour réaliser au moins deux structures de connexion avec lesdits modules élémentaires assurant respectivement une fonction de transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel, et une fonction de filtrage du signal. Ainsi, l'invention repose sur une approche nouvelle et inventive de la mise en oeuvre des fonctions de transformation mathématique entre le domaine temporel et le domaine fréquentiel et de filtrage dans un composant de traitement d'un signal. On note qu'on entend par transformation mathématique entre le domaine temporel et le domaine fréquentiel aussi bien une transformation d'un signal numérique du domaine temporel vers le domaine fréquentiel, qu'une transformation d'un signal numérique du domaine fréquentiel vers le domaine temporel. La technique proposée repose sur l'utilisation d'un composant générique, dont les connexions internes (c'est-à-dire les connexions des ports des modules élémentaires) peuvent être modifiées pour réaliser différentes fonctions entrant notamment dans la modulation ou la démodulation d'un signal multi-porteuses, telles que des fonctions de filtrage ou de transformation mathématique, du domaine temporel vers le domaine fréquentiel ou l'inverse. L'invention permet donc de réutiliser des modules élémentaires de calcul du composant pour effectuer soit des opérations de filtrage, soit des opérations de transformation mathématique entre les domaines temporel et fréquentiel.
Selon un mode de réalisation particulier, l'unité de contrôle est adaptée pour configurer les ports de connexion de manière à réaliser les structures de connexion de manière alternative. Autrement dit, l'unité de contrôle permet de réaliser une première structure de connexion en configurant les ports de connexion (entrées/sorties) d'au moins certains modules élémentaires de l'ensemble, puis de réaliser au moins une deuxième structure de connexion en reconfigurant les ports de ces modules élémentaires. Par exemple, l'ensemble de modules élémentaires forme une matrice comprenant P x Q modules élémentaires, P et Q représentant respectivement un degré de parallélisme et un nombre d'étages, les modules élémentaires formant la matrice étant interconnectés dans la structure de connexion assurant la fonction de transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel, de manière à former Q étages, comportant chacun P modules élémentaires aptes à opérer des traitements parallèles, et P canaux parallèles, comportant chacun Q modules élémentaires aptes à opérer des traitements séquentiels. L'utilisation d'une telle structure assurant la transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel permet une reconfiguration aisée en structure de filtrage.
On rappelle que le degré de parallélisme P permet un traitement simultané de plusieurs modules élémentaires d'un même étage, et le nombre d'étages ou profondeur de pipeline Q permet un traitement simultané de plusieurs modules élémentaires d'étages différents. En particulier, il est possible de choisir le nombre d'étages Q et de canaux P en fonction de la rapidité de traitement autorisée pour atteindre un débit désiré. Par exemple, le degré de parallélisme P et le nombre d'étages Q sont tels que Q = log2(2P). Selon un aspect avantageux de l'invention, chaque étage de la matrice comprend au moins quatre modules élémentaires.
Une telle structure présentant plusieurs étages comportant chacun au moins quatre modules élémentaires permet d'atteindre des débits de l'ordre de plusieurs centaines de mégahertz. En particulier, un tel composant de traitement d'un signal numérique est bien adapté pour assurer une modulation et/ou une démodulation d'un signal de type OFDMIOQAM/IOTA.
Les modules élémentaires sont notamment composés d'additionneurs et/ou de multiplieurs complexes complets, un module élémentaire formant un papillon. Selon une caractéristique particulière de l'invention, la transformation mathématique est une transformée de Fourrier directe ou inverse. Ainsi, le composant permet aussi bien de réaliser une structure assurant une fonction de transformation mathématique du domaine temporel vers le domaine fréquentiel au moyen d'une transformation de Fourier directe, qu'une structure assurant une fonction de transformation mathématique du domaine fréquentiel vers le domaine temporel au moyen d'une transformation de Fourier inverse.
En particulier, la structure assurant la fonction de transformation mathématique est adaptée pour mettre en oeuvre l'algorithme radix-21 sur i étages de l'ensemble de modules élémentaires, formant par exemple une matrice. Selon une caractéristique particulière de l'invention, le composant de traitement d'un signal comporte des premiers moyens de stockage de coefficients issus de la transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel, des deuxièmes moyens de stockage de coefficients de filtrage et des troisièmes moyens de stockage de coefficients issus de la transformation mathématique et du filtrage, au moins une partie des modules élémentaires étant, dans la structure de connexion assurant la fonction de filtrage, connectés en entrée aux premiers, deuxièmes et troisièmes moyens de stockage. Par exemple, la fonction de filtrage est réalisée à partir des coefficients issus de la transformation mathématique du signal entre les domaines temporel et fréquentiel, qui sont stockés dans les premiers moyens de stockage. Ces coefficients sont alors multipliés par des coefficients de filtrage mémorisés dans les deuxièmes moyens de stockage, correspondants par exemple aux coefficients de la fonction prototype IOTA, puis additionnés aux coefficients issus de la transformation mathématique et du filtrage déterminés précédemment, par exemple pour un symbole précédent dans le cadre d'une modulation OFDM, mémorisés dans les troisièmes moyens de stockage.
Selon un aspect particulier de l'invention, l'unité de contrôle tient compte d'au moins un paramètre appartenant au groupe comprenant : un type de modulation ; un nombre de points associé à ladite transformation mathématique ; un type de fonction prototype ; - un nombre de recouvrement L de la fonction prototype. Ainsi, les connexions des ports des modules élémentaires dépendent de différents paramètres, qui peuvent être programmés. Par exemple, le nombre de modules élémentaires de calcul utilisés dans la structure assurant la fonction de transformation mathématique est choisi en fonction du nombre de points associé à ladite transformation mathématique et de la largeur de bande du signal. Un autre aspect de l'invention concerne également un dispositif de modulation et/ou de démodulation comportant un composant de traitement d'un signal tel que décrit précédemment. En d'autres termes, un composant de traitement d'un signal tel que décrit précédemment permet d'assurer à la fois les fonctions de transformation mathématique du domaine fréquentiel vers le domaine temporel et de filtrage dans un dispositif de modulation, et/ou les fonctions de filtrage inverse et de transformation mathématique du domaine temporel vers le domaine fréquentiel dans un dispositif de démodulation.
Ainsi, un tel dispositif de modulation est adapté pour réaliser une structure de connexion assurant une fonction de transformation mathématique du signal du domaine fréquentiel vers le domaine temporel, et une structure de connexion assurant une fonction de filtrage. Un dispositif de démodulation est quant à lui adapté pour réaliser une structure de connexion assurant une fonction de transformation mathématique du signal du domaine temporel vers le domaine fréquentiel, et une structure de connexion assurant une fonction de filtrage. Encore un autre aspect de l'invention concerne un équipement d'émission et/ou de réception d'un signal comportant un dispositif de modulation et/ou de 30 démodulation comme ci-dessus.
Un tel équipement d'émission est notamment adapté à mettre en oeuvre une modulation d'un signal numérique. Il s'agit par exemple d'une station de base, ou d'un terminal de type radiotéléphone, ordinateur portable, assistant personnel de type PDA (en anglais Personal Digital Assistant ), etc.
Un équipement de réception est quant à lui adapté à mettre en oeuvre une démodulation d'un signal numérique. Il s'agit par exemple d'un terminal de type radiotéléphone, ordinateur portable, assistant personnel de type PDA (en anglais Personal Digital Assistant ), etc.
Dans un autre mode de réalisation, l'invention concerne un procédé de modulation ou de démodulation d'un signal numérique. Un tel procédé comprend : une étape de configuration des connexions des ports d'au moins une partie d'un ensemble de modules élémentaires de calcul, apte à définir au moins 1.5 deux structures de connexion avec lesdits modules élémentaires assurant respectivement une fonction de transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel, et une fonction de filtrage du signal ; une étape de transformation mathématique du signal entre le domaine 20 temporel et le domaine fréquentiel, selon une première structure de connexion dudit ensemble ; une étape de filtrage du signal selon une deuxième structure de connexion dudit ensemble. Un tel procédé est par exemple mis en oeuvre dans le dispositif de 25 modulation et/ou démodulation décrit précédemment. Un autre aspect de l'invention concerne également un programme d'ordinateur comprenant des instructions de code de programme pour mettre en oeuvre les étapes du procédé de modulation ou démodulation décrit ci-dessus, lorsque le programme est exécuté par l'ordinateur. 30 Un tel programme peut être stocké dans ou transmis par un support de données. Encore un autre aspect de l'invention concerne donc un support d'enregistrement lisible par un ordinateur, sur lequel est enregistré le programme d'ordinateur.
Celui-ci peut être un support matériel de stockage, par exemple un CD-ROM, une disquette magnétique ou un disque dur, ou bien un support transmissible tel qu'un signal électrique, optique ou radio. Par exemple, le programme d'ordinateur peut être téléchargé depuis un réseau de communication. 4. Liste des figures 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 particulier, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : - les figures 1 et 2 illustrent respectivement une chaîne de modulation et une chaîne de démodulation selon l'art antérieur ; la figure 3 présente l'algorithme radix-2 pour une FFl à huit points ; la figure 4 illustre une opération papillon selon l'algorithme radix-2 ; la figure 5 propose une architecture pour la réalisation d'une 11.1' ; - la figure 6 présente une architecture pipelinée pour une FFI' à 256 points utilisant l'algorithme radix-23 ; les figures 7A à 7C illustrent l'algorithme de filtrage selon l'art antérieur ; la figure 8 illustre un composant de traitement d'un signal selon l'invention ; - la figure 9 présente lesprincipales étapes du procédé de modulation et/ou démodulation selon l'invention ; les figures 10A et 10B illustrent un premier exemple de structures des connexions pour assurer une fonction de transformation mathématique (figure 10A) et de filtrage (figure 10B) ; et - les figures 11A et 11B illustrent un deuxième exemple de structures des connexions pour assurer une fonction de transformation mathématique (figure 11A) et de filtrage (figure 11B). 5. Description d'un mode de réalisation de l'invention 5.1 Principe général Le principe général de l'invention repose sur l'utilisation d'un unique composant permettant d'assurer à la fois les fonctions de transformation mathématique du domaine fréquentiel vers le domaine temporel et de filtrage côté modulation, et/ou les fonctions de filtrage inverse et de transformation mathématique du domaine temporel vers le domaine fréquentiel côté démodulation. En d'autres termes, en reprenant les figures 1 et 2, l'invention propose un composant regroupant les étapes de transformation mathématique 14, de mise en attente 15 et de filtrage 16, ou les étapes de filtrage 22, de mise en attente 23, et transformation mathématique 24.
Si l'on considère par exemple une modulation avancée de type OFDMIOQAM associée à une forme d'onde IOTA, l'invention propose un composant générique effectuant les deux principales opérations pour la synthèse du signal OFDM/OQAM, à savoir la transformée de Fourier rapide et le filtrage polyphase par la fonction prototype IOTA, au lieu de deux composants séparés réalisant respectivement chacune des deux fonctions comme proposé dans les architectures classiques. Ainsi, la solution proposée définit une nouvelle architecture : permettant de réaliser une modulation ou une démodulation à porteuses multiples comprenant un nombre quelconque de sous- porteuses (multiple de 2), permettant d'atteindre un très haut débit, de l'ordre de plusieurs centaines de mégahertz pour un signal OFDM/OQAM/IOTA, et fonctionnant à basse consommation, en utilisant un minimum de ressources matérielles (c'est-à-dire d'opérateurs arithmétiques, de mémoires, etc).
Pour ce faire et comme illustré en figure 8, un composant 81 de traitement d'un signal numérique selon l'invention comprend un ensemble 82 de modules élémentaires de calcul, notés BF, et une unité de contrôle 83 apte à configurer les connexions des ports d'au moins une partie des modules élémentaires pour réaliser au moins deux structures de connexion avec les modules élémentaires, de façon à assurer respectivement une fonction de transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel, et une fonction de filtrage du signal. Plus précisément, l'opération de transformation mathématique entre les domaines temporel et fréquentiel repose sur une structure semi-pipelinée, qui permet de stopper la dépendance au nombre d'étages nécessaires selon la valeur du nombre de points de la transformation mathématique. De plus, cette structure est toujours compatible avec un certain degré de parallélisme, par exemple d'au moins 4.
L'opération de filtrage réutilise quant à elle au moins certains des modules élémentaires de calcul utilisés pour l'opération de transformation mathématique. Les structures assurant respectivement les fonctions de transformation mathématique et de filtrage sont donc réalisées de manière alternative, autrement dit à tour de rôle.
On utilise ainsi des multiplieurs complexes complets pour effectuer les opérations de multiplication lors de la transformation mathématique et lors du filtrage. Un tel composant de traitement d'un signal peut notamment être intégré dans un dispositif de modulation, ou un dispositif de démodulation.
Un dispositif de modulation est notamment adapté à moduler un signal de données pour délivrer un signal à porteuses multiples, en réalisant alternativement une structure de connexion assurant une fonction de transformation mathématique du signal du domaine fréquentiel vers le domaine temporel, et une structure de connexion assurant une fonction de filtrage.
Un dispositif de démodulation est quant à lui adapté à démoduler un signal à porteuses multiples pour récupérer un signal de données, en réalisant alternativement une structure de connexion assurant une fonction de filtrage, et une structure de connexion assurant une fonction de transformation mathématique du signal du domaine temporel vers le domaine fréquentiel.
L'invention concerne également un procédé de modulation ou de démodulation d'un signal tel qu'illustré en figure 9, comprenant : une étape de configuration 91 des connexions des ports d'au moins une partie d'un ensemble de modules élémentaires de calcul, apte à définir au moins deux structures de connexion avec lesdits modules élémentaires assurant respectivement une fonction de transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel, et une fonction de filtrage du signal ; une étape de transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel 92, selon une première structure de connexion de l'ensemble de modules élémentaires ; une étape de filtrage du signal 93 selon une deuxième structure de connexion de l'ensemble de modules élémentaires. Un dispositif de modulation et/ou démodulation tel que présenté ci-dessus peut comprendre une unité de traitement, équipée par exemple d'un microprocesseur et pilotée par un programme d'ordinateur comprenant des instructions de code de programme pour mettre en oeuvre les étapes du procédé de modulation et/ou démodulation décrit ci-dessus lorsqu'il est exécuté par le dispositif. Ce programme peut être stocké dans ou transmis par un support de données. Celui-ci peut être un support matériel de stockage, par exemple un CD-ROM, une disquette magnétique ou un disque dur, ou bien un support transmissible tel qu'un signal électrique, optique ou radio. Un composant de traitement d'un signal selon l'invention permet donc d'assurer au moins deux fonctions distinctes avec les modules élémentaires, parmi lesquelles au moins une fonction de transformation mathématique entre les domaines temporel et fréquentiel et au moins une fonction de filtrage, tout en conservant à la fois les avantages du pipeline et du parallélisme. On rappelle qu'on entend par parallélisme le traitement concurrent de plusieurs modules élémentaires d'un même étage de l'ensemble de modules élémentaires, et par pipeline le traitement concurrent de plusieurs modules élémentaires de différents étages. En particulier, on considère que l'ensemble des modules élémentaires de calcul forme une matrice. 5.2 Exemples de réalisation On décrit ci-après deux exemples de réalisation de l'invention, dans le cadre d'une modulation avancée OFDM de type OQAM, mettant en oeuvre la 10 fonction prototype IOTA. Il est bien entendu que l'invention ne se limite pas à ce type de modulation, et peut également s'appliquer à d'autres modulations à porteuses multiples, et notamment aux modulations classiques, par exemple de type OFDM/QAM, ne mettant pas en oeuvre de filtrage. 15 De plus, d'autres fonctions prototype peuvent être utilisées, comme par exemple la fonction de Nyquist, la fonction Hermite ou toute nouvelle forme d'onde reposant sur la modulation OFDM/OQAM. A) Premier exemple : degré de parallélisme égal à 4 Selon la rapidité de traitement autorisée pour atteindre le débit désiré, le 20 composant de traitement d'un signal comprend différents degrés de parallélisme et de pipeline. Par exemple, pour atteindre un débit de plusieurs centaines de mégahertz pour un signal OFDM/OQAM/IOTA et une taille de transformée mathématique entre 2 et 4096 points (et donc 12 étages), le composant peut être réalisé avec un 25 parallélisme d'au moins 4. Les figures 10A et l0B illustrent deux structures de connexion avec les modules élémentaires d'un ensemble 101 de modules élémentaires de calculs formant une matrice, notés BF1, BF2, ... BF12, pour un parallélisme de 4, et un degré de pipeline de 3, côté modulation. Plus précisément, la figure 10A illustre 30 une structure de connexion permettant d'assurer une fonction de transformation mathématique du domaine fréquentiel vers le domaine temporel si l'on se place côté modulation, par exemple une transformée de Fourier inverse. La figure 10B illustre une structure de connexion permettant d'assurer une fonction de filtrage, par exemple par la fonction prototype IOTA.
Ainsi, le composant de traitement d'un signal comprend une matrice 101 de modules élémentaires de calculs, comprenant P x Q modules élémentaires permettant de réaliser les opérations de transformation mathématique et de filtrage, avec P le degré de parallélisme et Q le nombre d'étages de la matrice (encore appelé profondeur ou degré du pipeline), tel que Q = loge (2P) , et manipulant 2P données à la fois à l'entrée du composant. Autrement dit, la structure de connexion est composée de Q étages comportant chacun P modules élémentaires aptes à opérer des traitements parallèles, et P canaux parallèles, comportant chacun Q modules élémentaires aptes à opérer des traitements séquentiels. 1.5 Par exemple, pour les figures 10A et IOB, on a un parallélisme P = 4 et un pipeline de Q = 3, définissant une matrice de 12 modules élémentaires de calcul, et on manipule huit données à la fois à l'entrée du composant (huit entrées sur le premier étage de la matrice comprenant les modules élémentaires BF1, BF2, BF3 et BF4, huit entrées sur le deuxième étage de la matrice comprenant les modules 20 élémentaires BF5, BF6, BF7 et BF8, et huit entrées sur le troisième étage de la matrice comprenant les modules élémentaires BF9, BF10, BF11 et BF12). L'unité de contrôle comprend notamment des moyens de court-circuit (102) d'au moins un étage de la matrice. Ainsi, l'architecture est modulaire et la matrice peut être utilisé en totalité ou en partie en court-circuitant des étages de la matrice lors de la 25 FF1', ce qui permet d'obtenir plusieurs degrés de parallélisme ou de profondeur de pipeline. Une telle architecture est particulièrement efficace avec les algorithmes de type radix-2', pour i allant de 1 à 4. Le cas i = 1 correspond à l'algorithme radix-2. Concernant ces algorithmes radix-2`, on rappelle que selon la valeur de i, la 30 matrice des modules élémentaires doit comprendre i étages, c'est-à-dire un degré de pipeline égal à i. L'opération de transformée de Fourier inverse de la figure 10A illustre le cas de l'algorithme radix-2 d'entrelacement en fréquence. Toutefois, il est bien entendu que l'entrelacement en temps (opération duale de l'entrelacement en fréquence), tel qu'illustré par exemple en relation avec la figure 3, peut également être utilisé. Il suffit pour ce faire d'inverser les entrées et les sorties des modules élémentaires, en modifiant de façon correspondante les facteurs de rotation. La matrice 101 de modules élémentaires est interconnectée, selon cet exemple de réalisation, en respectant le flot de données d'une FFT radix-2.
Chaque module élémentaire BFi, 1 s i s 12 , met donc en oeuvre un papillon, tel qu'illustré en figure 4. L'opération de transformation de Fourier met également en oeuvre deux mémoires de taille N, c'est-à-dire de la taille de la FFT, notées 103 et 104. Ces mémoires sont de type RAM, en anglais random access memory , en français mémoire vive et servent de mémoire tampon. Une mémoire non représentée sur la figure (par exemple une mémoire ROM ou une FIFO, en anglais first in, first out , en français premier entré, premier sorti ) de taille (2L -1) M dépendant de la valeur de la longueur de troncature L, avec M = N / 2 , est également utilisée, notamment pour stocker les coefficients de pondération de la fonction prototype. Si une fonction prototype différente de la fonction IOTA est utilisée, par exemple une fonction de Nyquist, ou la fonction Hermite, il est nécessaire de stocker les coefficients de cette fonction prototype dans cette mémoire ROM. Plus précisément, les deux mémoires 103 et 104 fonctionnent en alternance. L'utilisation de deux mémoires selon l'invention permet une écriture directe des résultats dans le bon ordre, ne nécessitant pas une relecture et une réorganisation des résultats comme dans l'art antérieur. Avant que l'algorithme de calcul de la 1.F1' commence, on attend que les N points de la I'N1' soient mémorisés dans une des deux mémoires, par exemple la 30 mémoire 103.
Dès lors, cette mémoire 103 sert au calcul de la FFi1', tandis que l'autre mémoire 104 sert à mémoriser les N points de la FFI' suivante. Ainsi, les deux mémoires deviennent actives pour le traitement de la FFT à tour de rôle. Une fois les N points prêts à être traités mémorisés dans la mémoire 103, les points sont lus dans la mémoire 103 suivant une séquence bien précise qui correspond au chemin de donnée (en anglais dataflow ) de l'algorithme FFT radix-2', tel que décrit dans le document "Designing pipeline FFT processor for OFDM (de)modulation" de S. He et M. Torkelson (International Symposium on Signais, Systems, and Electronics, pp. 257 ù 262, 29 Sept. ù 2 Oct. 1998). Les points sont traités par les modules élémentaires de calcul de la matrice 101 et réécrits dans la mémoire 103, aux mêmes adresses que lors de la lecture. Cette démarche est mise en oeuvre de façon continue, jusqu'à la réalisation complète de la FFI. Une fois l'ensemble des coefficients de la FFI calculés, l'unité de contrôle modifie la configuration des connexions des ports d'au moins un module élémentaire de la matrice 101, définissant une deuxième structure de connexion avec les mêmes modules élémentaires BFi, 1 s i s 12 , permettant d'assurer une fonction de filtrage. Une telle structure est illustrée en figure IOB. Le filtrage consiste à multiplier les échantillons à la sortie de l'Il-'FI mémorisés dans une des deux mémoires de la F,'F1', par exemple la mémoire 103 (encore appelée premiers moyens de stockage), par les coefficients IOTA stockés dans des deuxièmes moyens de stockage, et à additionner les résultats aux résultats du filtrage du symbole précédent mémorisés dans une mémoire de filtrage (encore appelée troisièmes moyens de stockage). Ainsi, des multiplexeurs permettent de sélectionner les coefficients IOTA, les échantillons du résultat de la F'F~'l stockés dans les mémoires 103 ou 104, et les résultats du filtrage précédent dans des mémoires de filtrage 105. Plus précisément, lors du filtrage, chaque module élémentaire nécessaire pour le filtrage devient une unité de calcul indépendante, réalisant des opérations de base pour le filtrage. Autrement dit, on utilise les opérations arithmétiques d'au moins certains modules élémentaires pour la mise en oeuvre de la fonction de filtrage. Par exemple, l'architecture de filtrage est basée sur l'architecture proposée dans le brevet européen EP 1 005 748 précité.
Ainsi, il existe des connexions entre les mémoires de filtrage 105 et chacun des modules élémentaires, par exemple BFi, 5 s i s 12 , utilisés pour le filtrage. Par exemple, les mémoires de filtrage 105 comprennent trois mémoires 1051, 1052 et 1053 de taille N, et une mémoire 1054 de taille N / 2 . On réutilise donc pour le filtrage les modules élémentaires du composant mis en oeuvre pour la transformation mathématique. En particulier, on peut noter qu'on utilise uniquement les modules élémentaires nécessaires pour un traitement en temps réel de la modulation. Ainsi, on constate qu'un dispositif de modulation et/ou démodulation comprenant un composant de traitement d'un signal selon cet exemple de réalisation de l'invention ne nécessite que 64 multiplicateurs réels et 80 additionneurs réels pour un parallélisme de 4, alors que selon les techniques de l'art antérieur, un modulateur délivrant un signal OFDM/OQAM/IOTA repose sur la mise en oeuvre de 160 multiplicateurs réels et 304 additionneurs réels. B) Deuxième exemple : degré de parallélisme égal à 8 On décrit ci-après en relation avec les figures 11A et 11B deux structures de connexion avec les modules élémentaires d'un ensemble 111 de modules élémentaires de calculs formant une matrice, notés BF1, BF2, ... BF32, pour un parallélisme de 8, et un degré de pipeline de 4, côté modulation. Autrement dit, la matrice 111 de modules élémentaires de calculs, comprend P x Q = 8 x 4 = 32 modules élémentaires permettant de réaliser les opérations de transformation mathématique et de filtrage, avec P le degré de parallélisme et Q le nombre d'étages de la matrice. Plus précisément, la figure 11A illustre une structure de connexion permettant d'assurer une fonction de transformation mathématique du domaine fréquentiel vers le domaine temporel, par exemple une transformée de Fourier inverse. La figure 1lB illustre une structure de connexion permettant d'assurer une fonction de filtrage, par exemple par la fonction prototype IOTA. On considère par exemple une 1 F1' à 128 points, c'est-à-dire nécessitant log2128 = 7 étages, et utilisant un degré de parallélisme de 8 manipulant seize données à la fois à l'entrée du composant (par exemple seize entrées sur le premier étage de la matrice comprenant les modules élémentaires BF1 à BF8, seize entrées sur le deuxième étage de la matrice comprenant les modules élémentaires BF9 à BF16, seize entrées sur le troisième étage de la matrice comprenant les modules élémentaires BF17 à BF24, seize entrées sur le quatrième étage de la matrice comprenant les modules élémentaires BF25 à BF32). On considère donc huit séquences successives de seize données pour parcourir les 128 points de la FF1' (128 / 16 = 8 ). Pour réaliser les sept étages de la F'H à 128 points avec un degré de pipeline égal à 4, il est possible de considérer trois étages de la matrice sur lesquels on utilise l'algorithme radix-23, et quatre étages de la matrice sur lesquels on utilise l'algorithme radix-24. Ainsi, il est possible de court-circuiter (112) le premier étage de la matrice comprenant les modules élémentaires BF1 à BF8, en entrant directement au niveau du deuxième étage de la matrice comprenant les modules élémentaires BF9 à BF16, et d'utiliser l'algorithme radix-23 pour effectuer les trois premiers étages de la FFT. Les quatre derniers étages de la FFT sont réalisés en utilisant l'algorithme radix24 en entrant cette fois-ci directement au niveau du premier étage de la matrice. Comme décrit précédemment en relation avec la figure 10A, 128 points de la 1-F 1 sont tout d'abord mémorisés dans une première mémoire 113, de taille N=128. On lit ensuite les huit séquences de seize points l'une après l'autre, à chaque coup d'horloge. Comme indiqué ci-dessus, on entre directement sur le deuxième étage de la matrice grâce au court-circuit 112, et on utilise l'algorithme radix-23. Une fois que la première séquence Seq. 1 a atteint le dernier étage de la matrice (quatrième étage), on reçoit les résultats des sept autres séquences, l'un après l'autre à chaque coup d'horloge. Les séquences sont alors mémorisées dans la mémoire 113, à la même adresse que lors de la lecture.
Ainsi, les adresses lues dans la mémoire 113, pour des adresses allant de 0 à 127 points, sont pour les huit séquences : Seq. 1) 0, 8, 16, 24, 32,..., 104, 112,120 Seq. 2) 1, 9, 17, 25, 33,..., 105, 113,121 Seq. 3) 2, 10, 18, 26, 34,..., 106, 114,122 Seq. 4) 3, 11, 19, 27, 35,..., 107, 115,123 Seq. 5) 4, 12, 20, 28, 36,..., 108, 116,124 Seq. 6) 5, 13, 21, 29, 37,..., 109, 117,125 Seq. 7) 6, 14, 22, 30, 38,..., 110, 118,126 Seq. 8) 7, 15, 23, 31, 39,..., 111, 119,127 Les trois premiers étages de la H-1 sont alors réalisés, et il ne reste qu'à calculer les quatre derniers étages de la 1.11. Ces quatre derniers étages de la FN"l correspondent à huit F1-1' de seize points. On lit donc les huit séquences de seize points l'une après l'autre, à chaque coup d'horloge.
Comme indiqué ci-dessus, on entre au niveau du premier étage de la matrice, et on utilise l'algorithme radix-24. On prend donc seize points à la fois, une séquence après l'autre à chaque coup d'horloge, et on parcourt les quatre étages de la matrice. Ainsi, les adresses lues dans la mémoire 113, pour des adresses allant de 0 25 à 127 points, sont pour les huit séquences : Seq. 1) 0 à 15 Seq. 2) 16 à 31 Seq. 3) 32 à 47 Seq. 4) 48 à 63 30 Seq. 5) 64 à 79 Seq. 6) 80 à 95 Seq. 7) 96 à 111 Seq. 8) 112 à 127 Les résultats sont alors mémorisés dans la mémoire 113, à la même adresse que lors de la lecture. La mémoire 113 comprend alors le résultat de. la FI-1 de 128 points. Une deuxième mémoire 114, également de taille N = 128, permet de mémoriser les N points de la FF1 suivante. On rappelle que bien que la figure 11A illustre un algorithme radix-2` selon un entrelacement en fréquence, l'invention ne se limite pas à ce type d'entrelacement, et s'applique également aux entrelacements en temps. Une fois l'ensemble des coefficients de la FFT calculés et mémorisés dans les premiers moyens de stockage (113, 114), l'unité de contrôle modifie la configuration des connexions des ports d'au moins un module élémentaire de la matrice 111, définissant une deuxième structure de connexion avec les mêmes modules élémentaires BFi, 1 s i s 32, permettant d'assurer une fonction de filtrage. Une telle structure est illustrée en figure 11B. Comme indiqué précédemment, le filtrage consiste à multiplier les échantillons à la sortie de l'IFFT mémorisés dans les premiers moyens de stockage, par les coefficients IOTA stockés dans des deuxièmes moyens de stockage, et à additionner les résultats aux résultats du filtrage du symbole précédent mémorisés dans une mémoire de filtrage (encore appelée troisièmes moyens de stockage). Ainsi, des multiplexeurs permettent de sélectionner les coefficients IOTA, les échantillons du résultat de la F1l' stockés dans les mémoires 113 ou 114, et les résultats du filtrage précédent dans des mémoires de filtrage 115. Il existe notamment des connexions entre les mémoires de filtrage 115 et chacun des modules élémentaires, par exemple BFi pour 17 s i 32 , utilisés pour le filtrage. Par exemple, les mémoires de filtrage 115 comprennent trois mémoires 1151, 1152 et 1153 de taille N, et une mémoire 1154 de taille N / 2 .
La procédure de filtrage est alors la suivante : 1. lecture des échantillons à la sortie de l'IFFT dans une des deux mémoires de la 1~1~1', par exemple la mémoire 113 (premiers moyens de stockage) ; 2. multiplication de ces échantillons par les coefficients IOTA, mémorisés dans une mémoire ROM (deuxièmes moyens de stockage) ; 3. lecture des échantillons du symbole précédent dans la mémoire de filtrage 115 (troisièmes moyens de stockage) et addition avec les résultats de l'étape 2 ; 4. écriture du résultat de la sommation dans la mémoire de filtrage aux mêmes adresses que lors de la lecture des échantillons du symbole précédent à l'étape 3. On réutilise donc pour le filtrage les modules élémentaires du composant mis en oeuvre pour la transformation mathématique entre les domaines temporel et fréquentiel. En particulier, on peut noter qu'on utilise uniquement les modules élémentaires nécessaires pour un traitement en temps réel de la modulation. On constate qu'un dispositif de modulation et/ou de démodulation comprenant un composant de traitement d'un signal selon l'invention ne nécessite que 128 multiplicateurs réels et 192 additionneurs réels pour un parallélisme de 8, alors que selon les techniques de l'art antérieur, un modulateur délivrant un signal OFDM/OQAM/IOTA repose sur la mise en oeuvre de 160 multiplicateurs réels et 304 additionneurs réels pour un parallélisme de 4. Ainsi, le composant de traitement d'un signal selon l'invention permet d'atteindre un très haut débit de traitement (de l'ordre de quelques centaines de mégahertz), tout en restant basse consommation, du fait de la diminution du nombre d'opérateurs arithmétique utilisés. Le composant proposé permet donc une grande flexibilité et une grande puissance de calculs, grâce à une architecture reposant sur le parallélisme et le pipeline, et la réutilisation des mêmes modules élémentaires pour réaliser différentes fonctions comme une transformation mathématique entre les domaines temporel et fréquentiel ou un filtrage. La taille de la transformée de Fourier peut bien entendu être supérieure à 4096 points. Dans la forme de réalisation décrite, elle est limitée par la taille (N) des mémoires (103 et 104 ; 113 et 114). 5.3 Démodulateur Un composant selon l'invention peut également être utilisé dans un dispositif de démodulation, en remplaçant les fonctions de transformation de Fourier inverse et de filtrage par des fonctions de filtrage inverse et de transformation de Fourier directe. Un tel composant comprend les mêmes éléments que décrits précédemment, à savoir un ensemble de modules élémentaires de calcul, et une unité de contrôle apte à configurer les connexions des ports d'au moins une partie des modules élémentaires pour réaliser au moins deux structures de connexion avec lesdits modules élémentaires assurant respectivement une fonction de transformation mathématique du signal entre les domaines temporel et fréquentiel (par exemple une FFT directe), et une fonction de filtrage du signal (par exemple un filtrage polyphase inverse). On peut donc utiliser un même composant pour réaliser les opérations de transformation de Fourier directe et inverse par exemple. Par exemple, comme pour l'algorithme de filtrage et le mode de fonctionnement de l'architecture lors du filtrage en émission, l'algorithme de filtrage et le mode de fonctionnement de l'architecture à la réception peuvent reposer sur la structure présentée dans le brevet européen EP 1 005 748 précité.
On peut également noter que contrairement à l'émission, le filtrage à la réception nécessite seulement 2.2(L ù 1) additionneurs réels (pour la partie réelle et imaginaire) au lieu des 2.2L additionneurs réels à l'émission.

Claims (16)

REVENDICATIONS
1. Composant (81) de traitement d'un signal numérique, caractérisé en ce qu'il comprend : un ensemble (101 ; 111) de modules élémentaires de calcul ayant des ports de connexion, et une unité de contrôle (83) apte à configurer les connexions des ports d'au moins une partie des modules élémentaires pour réaliser au moins deux structures de connexion avec lesdits modules élémentaires assurant respectivement une fonction de transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel, et une fonction de filtrage du signal.
2. Composant (81) selon la revendication 1, caractérisé en ce que l'unité de contrôle est adaptée pour configurer les ports de connexion de manière à réaliser lesdites structures de connexion de manière alternative,.
3. Composant (81) selon l'une quelconque des revendications 1 et 2, caractérisé en ce que l'ensemble de modules élémentaires forme une matrice comprenant P x Q modules élémentaires, P et Q représentant respectivement un degré de parallélisme et un nombre d'étages, les modules élémentaires formant la matrice étant interconnectés entre eux dans la structure de connexion assurant la fonction de transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel de manière à former Q étages, comportant chacun P modules élémentaires aptes à opérer des traitements parallèles, et P canaux parallèles, comportant chacun Q modules élémentaires aptes à opérer des traitements séquentiels.
4. Composant (81) selon la revendication 3, dans lequel le degré de parallélisme P et le nombre d'étages Q sont tels que Q = log2(2P) .
5. Composant (81) selon l'une quelconque des revendications 3 et 4, caractérisé en ce que chaque étage de ladite matrice (101 ; 111) comprend au moins quatre modules élémentaires.
6. Composant (81) selon l'une quelconque des revendications 1 à 5,caractérisé en ce que lesdits modules élémentaires sont composés d'additionneurs et/ou de multiplieurs complexes complets, un module élémentaire formant un papillon.
7. Composant (81) selon l'une quelconque des revendications 1 à 6, caractérisé en ce que ladite transformation mathématique est une transformée de Fourrier directe ou inverse.
8. Composant (81) selon l'une quelconque des revendications 1 à 7, caractérisé en ce qu'il comporte des premiers moyens (103, 104) de stockage de coefficients issus de la transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel, des deuxièmes moyens de stockage de coefficients de filtrage et des troisièmes moyens (105) de stockage de coefficients issus de la transformation mathématique et du filtrage, au moins une partie des modules élémentaires étant, dans la structure de connexion assurant la fonction de filtrage, connectés en entrée aux premiers, deuxièmes et troisièmes moyens de stockage.
9. Composant (81) selon l'une quelconque des revendications 1 à 8, caractérisé en ce que ladite unité de contrôle (83) tient compte d'au moins un paramètre appartenant au groupe comprenant : un type de modulation ; - un nombre de points associé à ladite transformation mathématique ; - un type de fonction prototype ; un nombre de recouvrement de la fonction prototype.
10. Dispositif de modulation comportant un composant (81) de traitement d'un signal numérique selon la revendication 1, adapté pour réaliser : -une structure de connexion assurant une fonction de transformation mathématique du signal du domaine fréquentiel vers le domaine temporel, et une structure de connexion assurant une fonction de filtrage.
11. Dispositif de démodulation comportant un composant (81) de traitement d'un signal numérique selon la revendication 1, adapté pour réaliser :une structure de connexion assurant une fonction de transformation mathématique du signal du domaine temporel vers le domaine fréquentiel, et une structure de connexion assurant une fonction de filtrage.
12. Equipement d'émission d'un signal comportant un dispositif de modulation selon la revendication 10.
13. Equipement de réception d'un signal comportant un dispositif de démodulation selon la revendication 11.
14. Procédé de modulation ou de démodulation d'un signal numérique, caractérisé en ce qu'il comprend : une étape de configuration (91) des connexions des ports d'au moins une partie d'un ensemble (101 ; 111) de modules élémentaires de calcul, apte à définir au moins deux structures de connexion avec lesdits modules élémentaires assurant respectivement une fonction de transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel, et une fonction de filtrage du signal ; une étape de transformation mathématique du signal entre le domaine temporel et le domaine fréquentiel (92), selon une première structure de connexion dudit ensemble (101 ; 111) ; - une étape de filtrage du signal (93) selon une deuxième structure de connexion dudit ensemble (101 ; 111).
15. Programme d'ordinateur, caractérisé en ce qu'il comprend des instructions de code de programme pour mettre en oeuvre les étapes du procédé selon la revendication 14 lorsque le programme est exécuté par l'ordinateur.
16. Support d'enregistrement lisible par un ordinateur sur lequel est enregistré le programme d'ordinateur selon la revendication 15.
FR0702984A 2007-04-24 2007-04-24 Composant de traitement d'un signal numerique, dispositif de modulation et/ou de demodulation, procede de modulation et/ou de demodulation et programme d'ordinateur correspondants Pending FR2915645A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR0702984A FR2915645A1 (fr) 2007-04-24 2007-04-24 Composant de traitement d'un signal numerique, dispositif de modulation et/ou de demodulation, procede de modulation et/ou de demodulation et programme d'ordinateur correspondants
PCT/FR2008/050703 WO2008145915A2 (fr) 2007-04-24 2008-04-18 Composant de traitement d'un signal numerique, dispositif de modulation et/ou de demodulation, procede de modulation et/ou de demodulation et programme d'ordinateur correspondants

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0702984A FR2915645A1 (fr) 2007-04-24 2007-04-24 Composant de traitement d'un signal numerique, dispositif de modulation et/ou de demodulation, procede de modulation et/ou de demodulation et programme d'ordinateur correspondants

Publications (1)

Publication Number Publication Date
FR2915645A1 true FR2915645A1 (fr) 2008-10-31

Family

ID=38984444

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0702984A Pending FR2915645A1 (fr) 2007-04-24 2007-04-24 Composant de traitement d'un signal numerique, dispositif de modulation et/ou de demodulation, procede de modulation et/ou de demodulation et programme d'ordinateur correspondants

Country Status (1)

Country Link
FR (1) FR2915645A1 (fr)

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
DICK, HARRIS: "CONFIGURABLE LOGIC FOR DIGITAL COMMUNICATIONS: SOME SIGNAL PROCESSING PERSPECTIVES", IEEE COMMUNICATIONS MAGAZINE, vol. 37, no. 8, August 1999 (1999-08-01), New York, US, pages 107 - 111, XP000835327 *
EBELING ET AL.: ""Implementing an OFDM receiver on the RaPiD reconfigurable architecture", FIELD-PROGRAMMABLE LOGIC AND APPLICATIONS, 2003, Berlin, DE, pages 21 - 30, XP002467799 *
GRAYVER, DANESHRAD: "A RECONFIGURABLE 8 GOP ASIC ARCHITECTURE FOR HIGH-SPEED DATA COMMUNICATIONS", IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, vol. 18, no. 11, November 2000 (2000-11-01), Piscataway, US, pages 2161 - 2171, XP001063601 *
PIONTECK ET AL: "Exploring the capabilities of reconfigurable hardware for OFDM-based WLANs", VLSI-SOC: FROM SYSTEMS TO CHIPS, 2006, Boston, pages 149 - 164, XP008088312 *
WEI WU ET AL.: "A coarse-grained fpga architecture for reconfigurable baseband modulator/demodulator", ASILOMAR CONFERENCE ON SIGNALS, SYSTEMS, & COMPUTERS, 3 November 2002 (2002-11-03), New York, US, pages 1613 - 1618, XP010638468 *

Similar Documents

Publication Publication Date Title
EP2484075B1 (fr) Systèmes de transmission multiporteuse de données numériques et procédés de transmission utilisant de tels systèmes
EP0441731B1 (fr) Procédé de diffusion de données à entrelacement temps-fréquence et démodulation cohérente
EP1941547B1 (fr) Procédé de transmission d'un signal multiporteuse conçu pour limiter l'interférence, signal, dispositif d'émission, procédé et dispositif de réception, et programmes d'ordinateur correspondants
EP2681889B1 (fr) Procede de modulation d'un signal multiporteuse de type oqam, programme d'ordinateur et modulateur correspondants
EP3042480B1 (fr) Procédé et dispositif de transmission de blocs de symboles de données complexes, procédé et dispositif de réception et programmes d'ordinateur correspondants
EP3300325B1 (fr) Émetteur ofdm à filtrage par blocs et système d'émission/réception correspondant
EP2803174A1 (fr) Procede, dispositifs et produit de programme d'ordinateur de modulation et de demodulation delivrant des symboles ofdm/oqam
FR2935856A1 (fr) Systeme de transmission numerique multiporteuse d'un signal utilisant des bancs de filtres et le prechargement de memoires pour l'initialisation
EP0595710A1 (fr) Procédé et dispositif de segmentation en sous-bandes et de reconstruction d'un signal numérique, et dispositif correspondant
FR2588680A1 (fr) Dispositif de calcul d'une transformee de fourier discrete, et son application a la compression d'impulsion dans un systeme radar
EP3469720A1 (fr) Procédé de génération d'un signal modulé en position d'impulsions, procédé de démodulation, produit programme d'ordinateur et dispositifs correspondants
EP1216557B1 (fr) Procede de transmission d'un signal multiporteuse biorthogonal module avec offset (bfdm/om)
FR2885471A1 (fr) Procede de decodage iteratif d'un signal ofdm/oqam utilisant des symboles a valeurs complexes, dispositif et programme d'ordinateur correspondants
EP1061704B1 (fr) Procédé et dispositif de calcul d'une transformation rapide de Fourier pour une demodulation OFDM
FR2915645A1 (fr) Composant de traitement d'un signal numerique, dispositif de modulation et/ou de demodulation, procede de modulation et/ou de demodulation et programme d'ordinateur correspondants
EP1005748B1 (fr) Modulation multiporteuse employant des fonctions prototypes ponderees
WO2010072963A1 (fr) Decomposition polyphase d ' un banc de filtres pour ofdm surechantillonne
WO2008145915A2 (fr) Composant de traitement d'un signal numerique, dispositif de modulation et/ou de demodulation, procede de modulation et/ou de demodulation et programme d'ordinateur correspondants
EP1354453B1 (fr) Procede de transmission et reception d'un signal multiporteuse biorthogonal module synchroniquement, dispositifs d'emission et de reception correspondants
EP1058435B1 (fr) Procédé et dispositif de calcul d'une transformation de Fourier inverse à architecture dite "pipelinée"
FR2935819A1 (fr) Dispositif de traitement numerique pour transformee de fourier et filtrage a reponse impulsionnelle finie
EP1101283B1 (fr) Procede de realisation de filtres numeriques de nyquist a interferences nulles entre symboles, et dispositif de filtrage correspondant
FR3032321A1 (fr) Procede et dispositif de modulation de symboles complexes, procede et dispositif de demodulation et programmes d'ordinateur correspondants.
FR3111760A1 (fr) Modulateur OFDM pour émetteur OFDM à filtrage par blocs, émetteur OFDM à filtrage par blocs et système d’émission/réception associés
WO2016097631A1 (fr) Procédé et dispositif d'émission, procédé et dispositif de réception