• Aucun résultat trouvé

1.5 Les radios logicielles

1.5.2 Partie matérielle

La section suivante présente les principaux composants d'une radio logicielle. Mélangeur

En fonctionnement réception, les radios logicielles nécessitent d'échantillonner les si-gnaux analogiques captés par l'antenne. De la même manière, il est nécessaire en émission qu'elles génèrent des signaux analogiques à une fréquence porteuse adaptée à l'antenne. Mais les signaux utilisés dans le domaine des télécommunications peuvent atteindre des fréquences élevées (plusieurs dizaines de GHz) pour être directement échantillonnés sans perte d'information. On préfère donc ramener le signal analogique dans des bandes de fréquences plus basses en premier lieu. On utilise généralement un mélangeur de fré-quences pour cela. Il s'agit d'un circuit électronique non linéaire pouvant transposer des signaux électriques d'une fréquence vers une autre, en fonction de la fréquence à laquelle le circuit est alimenté (généralement à l'aide d'un oscillateur local). Dans un récepteur radio, le mélangeur permet généralement de ramener le signal reçu vers une bande de fréquence plus basse pour un traitement plus facile. Dans un émetteur au contraire, les traitements sont d'abord réalisés sur des signaux basse fréquence avant d'être transpo-sés vers des fréquences plus élevées, adaptées à l'antenne utilisée pour l'émission. Un mélangeur est en principe un multiplicateur de tension, et permet ainsi de créer des si-gnaux de sortie à des fréquences correspondant à des sommes pondérées des fréquences d'entrée. On s'attarde ici sur le cas d'un mélangeur supposé idéal. On suppose que les deux signaux en entrée sont des sinusoïdes pures de pulsations respectives ω1 et ω2. Le premier signal d'entrée est arbitrairement choisi comme référence de phase. Le second signal est supposé déphasé de φ par rapport à la référence de phase. Puisque le circuit est un multiplieur de tensions, le signal de sortie sout s'écrit alors :

sout = cos(ω1t) cos(ω2t + ϕ) = cos([ω1+ ω2]t + ϕ)

2 +

cos([ω1− ω2]t − ϕ)

2 (1.66)

La gure 1.27 montre un mélangeur supposé idéal. Un signal de pulsation ω1 (cor-respondant à une fréquence f1) est appliqué en entrée et le mélangeur est alimenté avec un oscillateur local oscillant à la pulsation ω2. Le signal de sortie présente alors, d'après l'équation 1.66, les pulsations ω1+ ω2 et |ω1− ω2|:

Figure 1.27  Principe d'un circuit mélangeur idéal, pour un signal de pulsation ω1 en entrée et alimenté par un oscillateur à la pulsation ω2.

L'équation 1.66 montre qu'un mélangeur idéal alimenté par le signal que l'on souhaite décaler en fréquence et le signal d'un oscillateur local permet de transposer le signal d'in-térêt dans une autre bande de fréquence tout en préservant la phase du signal d'origine. Les radios logicielles peuvent donc être utilisées pour imposer les déphasages voulus aux échantillons reçus ou émis en bande de base numérique. Les signaux analogiques asso-ciés préservent ces déphasages aux imperfections des mélangeurs près, permettant un fonctionnement en alignement de phase.

Hétérodynage

En pratique, les antennes captent une multitude de signaux dans les bandes de fré-quences autour de la fréquence porteuse. Ces signaux sont bruités et de faible puissance à cause de la distance entre l'émetteur et le récepteur. En réception, il est donc nécessaire d'amplier et de ltrer les signaux analogiques reçus. Le LNA (Low-Noise Amplier en anglais) est chargé de l'amplication des signaux en limitant le bruit ajouté. Les ltres passe-bande permettent, eux, de sélectionner le canal d'intérêt autour de la fréquence porteuse pour éliminer les signaux reçus dans les bandes de fréquences avoisinantes.

Cependant, la conception de ltres sélectifs à fréquence variable est plus dicile à hautes fréquences qu'à des fréquences plus basses. La solution généralement admise consiste à d'abord transposer les signaux reçus dans une bande de fréquence intermé-diaire, pour laquelle les ltres sont plus faciles à réaliser et orent un meilleur gain (ce qui limite le besoin de rajouter des amplicateurs supplémentaires). C'est le principe d'hétérodynage. Selon les besoins et architectures, plusieurs étages peuvent aussi être mis en cascade pour assurer la qualité des signaux reçus transposés en bande de base. Dans un émetteur, des transpositions de fréquence sont également utilisées pour assurer l'amplication et limiter les harmoniques des signaux émis.

Convertisseurs

L'idée de base de la radio logicielle est d'implémenter un maximum de ses compo-sants en logiciel, mais pour cela seuls des signaux numériques, c'est-à-dire des valeurs quantiées et discrétisées du signal codées sur un nombre n déni de bits, peuvent être traités. Les ondes électromagnétiques utilisées dans les télécommunications captées par l'antenne sont converties en tensions analogiques. Les convertisseurs sont chargés de convertir les signaux analogiques reçus (une fois ces signaux analogiques ramenés dans des bandes de fréquences adaptées aux composants numériques) en signaux numériques et, inversement, de générer à partir des signaux numériques des tensions analogiques permettant, après reconversion en bande de fréquence RF, de transmettre correctement l'information. En réception, on parle de convertisseur analogique-numérique ou "ADC" pour "Analog to Digital Converter" en anglais. En émission au contraire, on parle de convertisseur numérique-analogique, ou "DAC" pour "Digital to Analog Converter".

Figure 1.28  Principe d'un convertisseur, analogique-numérique ou numérique-analogique [73].

La gure 1.28 montre le principe de fonctionnement d'un convertisseur de fréquence d'échantillonnage fe= 1/Te= 400échantillons/s, capable de quantier les signaux ana-logiques sur n = 4 bits, donc de coder 2n = 16 valeurs diérentes pour ladite tension. Si le convertisseur est analogique-numérique, la tension analogique est le signal d'entrée. La valeur de cette tension est mesurée à des instants précis Te, par exemple à l'aide d'un système échantillonneur-bloqueur, et discrétisée en la valeur la plus proche per-mise par le nombre de valeurs qui peuvent être codées par le convertisseur sur n bits. Le résultat est la tension en rouge sur la gure 1.28. Pour chaque valeur discrète de cette tension, le convertisseur associe alors une valeur codée sur n bits qui peut être utilisée pour traitement numérique du signal par logiciel. Le principe est le même pour un convertisseur numérique-analogique, sauf que les données d'entrée sont les valeurs codées sur n bits. La sortie du convertisseur est alors la tension marquée noire sur la gure 1.28, une tension analogique puisque les temps de montée réels du convertisseur ne sont jamais nuls. Evidemment, dans un sens comme dans l'autre, plus le nombre de bits sur lequel les valeurs binaires peuvent être codées est grand et plus la fréquence d'échantillonnage fe est élevée, plus la tension analogique originelle (en noir sur la gure 1.28) peut être approximée nement, mais plus la quantité de données à traiter dans un temps donné est importante. Les convertisseurs d'aujourd'hui peuvent atteindre des fréquences d'échantillonnages de l'ordre du gigasample/s pour une résolution faible (6 à 8 bits) ou des fréquences de centaines de mégasamples/s pour des résolutions plus élevées (entre 12 et 18 bits) [74, 75].

Oscillateur contrôlé en tension (VCO)

Un oscillateur contrôlé en tension, souvent appelé VCO pour Voltage-Controlled Oscillator, est un circuit électronique capable de générer un signal périodique dont la fréquence dépend de la tension appliquée à son entrée. En faisant varier cette tension d'entrée, il est ainsi possible de contrôler la fréquence à laquelle oscille le signal de sor-tie. Cette propriété explique leur utilisation dans de nombreuses applications, parmi lesquelles les boucles à verrouillage de phase présentées ci-après. On peut citer comme applications les circuits générateurs d'horloge [76], les générateurs de fréquence (produc-tion de musique avec de l'électronique par exemple), ou même le pilotage de réseaux phasés à l'aide de réseaux de VCO couplés [77, 78].

Boucle à verrouillage de phase

Une boucle à verrouillage de phase, ou "PLL" pour "Phase-Locked Loop" en anglais, est un circuit électronique dont la phase du signal de sortie (et par extension, sa fré-quence) est asservie sur la phase (ou la fréquence, respectivement) du signal d'entrée. La gure 1.29 présente un montage de boucle à verrouillage de phase.

Un circuit comparateur de phase permet de générer une tension VP proportionnelle au déphasage entre la tension variable d'entrée Vi et la tension vosc utilisée comme référence de phase. Après ltrage, la tension Vs est à la fois une tension de sortie du circuit et la tension d'entrée d'un VCO pour régulation. Le ltre de boucle est choisi selon l'application visée (ici un passe-bas permet d'éliminer les variations de phase hautes-fréquences). Cette régulation est réalisée par le biais du VCO et assure qu'en régime permanent, les tensions Vs et Vosc demeurent constantes. En eet, comme la tension de sortie Vs est proportionnelle au déphasage entre les deux tensions Vi et Vosc, une augmentation de ce déphasage (signe que la fréquence de Viest supérieure à celle de Vosc) entraîne une augmentation de Vs. Puisque la tension Vs en entrée du VCO augmente, la fréquence du signal de sortie, Vosc, augmente à son tour, réduisant ainsi le déphasage avec la tension Viet entraînant une régulation dans le sens opposé. Cette boucle ne peut converger que si les fréquences de Vi et Vo sont égales et maintiennent un déphasage constant entre les deux signaux (la sortie d'intérêt dans cette application est Vosc). Comme les VCO, les boucles à verrouillage de phase sont utilisées pour de nombreuses applications. Dans notre cas, les signaux d'horloge nécessaires au fonctionnement des radios logicielles sont synchronisés à l'aide de boucles à verrouillage de phase, ce qui introduit la nécessité de calibrer les diérentes voies de l'émetteur-récepteur, comme développé plus tard dans ce manuscrit.

FPGA

"FPGA" vient de l'anglais "Field-Programmable Gate Array". Il s'agit d'un circuit électronique intégré constitué d'un grand nombre de portes logiques et qui peut être programmé par l'utilisateur à l'aide d'un langage de description matériel, le VHDL (de "VHSIC-HDL" pour "Very High Speed Integrated Circuit Hardware Description Lan-guage"). Selon les caractéristiques du circuit FPGA utilisé et le programme implémenté, il est possible de modier les fonctions logiques réalisées par le circuit, et ainsi de décrire par des algorithmes le comportement de diérents matériels. Dans le cadre des travaux présentés ici cependant, on utilise les fonctions logiques implémentées dans le FPGA des radios commerciales utilisées, sans intervenir directement sur ce FPGA pour modier la partie du matériel émulée.

Processeur et Digital Signal Processor (DSP)

Un processeur est un circuit électronique capable d'exécuter des instructions machine, base de tout programme informatique. Ces instructions peuvent être des opérations arith-métiques plus ou moins compliquées selon les cas, des opérations logiques ou de contrôle, ou des opérations de lecture ou d'écriture sur diérentes entrées/sorties. Le processeur rassemble la majeure partie des capacités de calcul d'un système embarqué. Il est capable de réaliser un nombre limité d'instructions élémentaires, et a pour but de permettre de réaliser la plus grande diversité d'applications logicielles possible, par opposition aux unités de calcul spécialisées et optimisées pour un type de calcul précis, comme les pro-cesseurs graphiques ("GPU" pour "Graphics Processing Unit") ou les propro-cesseurs de signal numérique (plus souvent appelés "DSP" pour "Digital Signal Processor").

Une radio logicielle ayant pour principe de réaliser les opérations de traitement de signal dans le domaine numérique, elle repose sur l'utilisation d'une unité de calcul. La présence d'un DSP, optimisé pour les calculs de traitement numérique du signal, est un atout pour une radio logicielle en termes de performance, mais l'utilisation d'un proces-seur peut être justiée par des contraintes d'embarquement et de coût : la radio logicielle s'occupe alors de numériser les signaux à grande vitesse et de les transmettre à un or-dinateur qui réalise la majeure partie des opérations de traitement de signal numérique

[79]. Les radios logicielles commerciales utilisées dans ces travaux, les Universal Software Radio Peripherals (USRPs) [80], utilisent cette dernière architecture.