[Présentation PFE] Conception et implémentation d'un estimateur conjoint de l'angle d'arrivée moyen, de l'étalement angulaire et de l'étalement de Doppler dans une plateforme matérielle à base de FPGA
[Présentation PFE] Conception et implémentation d'un estimateur conjoint de l'angle d'arrivée moyen, de l'étalement angulaire et de l'étalement de Doppler dans une plateforme matérielle à base de FPGA
Similar a [Présentation PFE] Conception et implémentation d'un estimateur conjoint de l'angle d'arrivée moyen, de l'étalement angulaire et de l'étalement de Doppler dans une plateforme matérielle à base de FPGA
Similar a [Présentation PFE] Conception et implémentation d'un estimateur conjoint de l'angle d'arrivée moyen, de l'étalement angulaire et de l'étalement de Doppler dans une plateforme matérielle à base de FPGA(20)
[Présentation PFE] Conception et implémentation d'un estimateur conjoint de l'angle d'arrivée moyen, de l'étalement angulaire et de l'étalement de Doppler dans une plateforme matérielle à base de FPGA
6. Problématique(3/3) 4
LE PRTOTYPAGERAPIDE
Contrainte: Réduire le «Time-to-market»
Solution: Développer uneméthode deprototypage rapide:
les plateformes radio-logicielles
SDRSOFTWAREDEFINEDRADIO
► Reconfigurables (à base de FPGAs)
► Conception à haut niveau d’abstraction
7. ECOLE NATIONALED’INGÉNIEURSDETUNIS
Conception et implémentation d’un estimateur conjoint de l’angle d’arrivée moyen,
l’étalement angulaire et l’étalement du Doppler dans une plateforme matérielle à base de
FPGA
PROJET DE FIN D’ÉTUDES POURL’OBTENTION DU
DIPLÔME NATIONAL D’INGÉNIEUR EN TÉLÉCOMMUNICATIONS
Présenté par:
Yassine SELMI
Encadré par:
M. Faouzi BAHLOUL -ENIT
M. Rabah ATTIA– ENIT
M. Abdelaziz SAMET -INRSEMT
M. Sofiène AFFES– INRSEMT
8. Démarche du projet 5
Etudede
l’estimateur
conjoint
Développement dumodèle
MATLAB/Simulink
Intégration du modèle dans
unechaîneSIMO
Test etvalidation du
modèle par SAO
Génération ducanal radio
Implémentation ettest
del’estimateur
1
2
3
4
5
6
10. Présentationde l’estimateur(1/3) 6
HYPOTHÈSES ETALGORITHME
► Environnementmacro-cellulaire
► Communication uplinkvia un canalde Rayleigh
► Communication Single-InputMultiple-Output (SIMO)
Signal reçu en bandede base à la ième antenne:
y
x
Station de base
dkl
mobile
16. Conception matériellede l’estimateur(3/13) 11
LE CONTRÔLLEUR
► 3 machines à états finis
► Moorevs. Mealy
► Machinesde Moore: les sorties nedépendent que de l’état courant
► Synchronisation entrele contrôleur et le Datapath
► MCode: Programmer des machinesà états finis avec le
langage MATLAB
19. Conception matériellede l’estimateur(5/13) 13
LE DATAPATH
► Ensemble des fonctions pour manipulerle signal reçu
► Unitéarithmétique etlogique (ALU)
► 3 blocs: Acquisition + cross-correlation + newJE
20. Conception matériellede l’estimateur(6/13) 14
LE DATAPATH
CH1
SAMPLE
RAM
CH2
SAMPLE
RAM
CORDIC
ATAN
CORDIC
ATAN
X
ARSIN
LUT
|.|
|.|
SQRT(-LOG)
LUT
SQRT(-LOG)
LUT
X
COS
|.|
SQRT(-LOG)
LUT
(.)²
CORDIC
DIVIDER
X
COS
CORDIC
ATAN
SIN
(.)²
SQRT
LUT
ACCUACCU
CORDIC
DIVIDER
CORDIC
DIVIDER
REG
R11(1)
REG
R12(1)
REG
R12(10
0)
ACCU
CORDIC
DIVIDER
NEW JEBLOCKCROSS-CORRELATION COMPUTING
BLOCK
ACQUISITION
BLOCK
RECEIVED
SIGNAL CH1
RECEIVED
SIGNAL CH2
MEAN AoA
PROCESS
AS PROCESS
DS PROCESS
26. Conception matériellede l’estimateur(12/13) 20
TESTETVALIDATIONDU DESIGN PAR SAO
► Approche de conception « down-to-top»
► Exploitation des MATLAB/Simulink blocks pour
tester le design au lieu dedévelopper les
testbenchs
► Exemples:Scope, ToWorkspace,WaveScope…
31. Implémentationdans la plateforme (2/4) 23
Préparation à la co-simulation
► Mux (Tx) et Demux (Rx) I/Q
► des cartes Radio420xde NutaqPicoSDR
► Ajout des registres decontrôle
► Ajout d’unemémoire SDRAM
32. Implémentationdans la plateforme (3/4) 24
Génération dubitstream
► Configuration de la plateforme cible: horloge 12,5ns
► Compilation: Perseus601x
► Xilinx iMPACT: Chargerle bitstream dans la RAM de la
plateforme
33. Implémentationdans la plateforme (4/4) 25
Configuration del’émulateurdecanal
► Configuration (SISO/SIMO/MISO/MIMO)
► SNR
► Fréquenceporteuse
► Covariance entreles antennes
► Fréquencede Doppler
► Bilan de puissance
40. Conclusion etperspectives (1/2) 329
2
Conclusion
► Modèle MATLABde l’estimateur conjoint selon le standard LTE
► Modèle embarqué avec Xilinx System Generator
► SAOdu design proposé
► Design dans uneplateforme radio logicielle
► Test dufonctionnement de l’estimateur
41. Conclusion etperspectives (2/2) 30
Perspectives
► Scénarios de co-simulation
► Effet HF dans le modèle mathématique du signal
► Étude d’autres distributions angulaires
► Application réelle: Antennesintelligentes
42. ECOLE NATIONALED’INGÉNIEURSDETUNIS
Conception et implémentation d’un estimateur conjoint de l’angle d’arrivée moyen,
l’étalement angulaire et l’étalement du Doppler dans une plateforme matérielle à base de
FPGA
PROJET DE FIN D’ÉTUDES POURL’OBTENTION DU
DIPLÔME NATIONAL D’INGÉNIEUR EN TÉLÉCOMMUNICATIONS
Présenté par:
Yassine SELMI
Encadré par:
M. Faouzi BAHLOUL -ENIT
M. Rabah ATTIA– ENIT
M. Abdelaziz SAMET -INRSEMT
M. Sofiène AFFES– INRSEMT
C’est dans de contexte que PERSWADE a été crée.
Destiné aux étudiants et chercheurs, et orienté par des besoins concrets de l’industrie, PERSWADE est un programme unique de formation avancée à la recherche en sans-fil. Il a pour but d’aider ses participants à mieux s’outiller pour relever les défis technologiques et économiques de l’avenir.
Ayant siège au centre EMT de l’INRS, Perswade réunit plusieurs collaborateurs universitaires et industriels comme l’université de Concordia, Polytechnique Montreal… Focus microwave, ERICSSON, HUAWEI… et d’autres partenaires.
Ce programme de recherche interdisciplinaire cherche à résoudre plusieurs problèmes rencontrés avec la 4ème génération.
la propagation multi-trajet est l'un des phénomènes communs dans les communications sans fil. En fait, ce phénomène provoque l’évanouissement de l’amplitude du signal transmis à cause des interférences constructives et destructives. Ceci est expliqué par le fait que le signal reçu est la superposition des multiples ondes radio qui arrivent au niveau du récepteur, chacune a son propre angle d’arrivée. Ainsi, l’ensemble de ces angles peut être modélisé par une distribution angulaire qui se caractérise par un étalement angulaire (AS) et un angle d’arrivée moyen.
D’autre part, lorsque le mobile est en mouvement, sa vitesse introduit un décalage au niveau de la fréquence porteuse pour chaque trajet. Ce phénomène est connu comme l’effet de Doppler. Ainsi, la fréquence du signal reçu peut être considérée comme une variable aléatoire qui suit généralement une distribution de Rayleigh ou de Rice. La superposition des multiples ondes radio au récepteur provoque donc un étalement du spectre du signal reçu: cet étalement est appelé étalement du Doppler.
La’estimation de ces trois paramètres semble cruciale pour améliorer la qualité de la liaison.
Or, le déploiement des nouvelles infrastructures ou l’intégration des nouveaux algorithmes prend beaucoup de temps et coute énormément d’argent, surtout lorsqu’on se trouve face à la contrainte time-to-market.
Pour faire face à ce problème, les plateformes radio logicielle ont été proposées comme une méthode de prototypage rapide des systèmes de communications sans-fil. Ce sont généralement des plateformes reconfigurables à base de FPGA, et qui offrent un niveau d’abstraction très haut, assurant la conception embarqué sans avoir recours aux méthodes classiques comme la programmation VHDL
En adoptant cette nouvelle approche, ce projet de fin d’études à pour but de concevoir et implémenter ….
Il a été effectué en collaboration avec le laboratoire WirelessLab du centre EMT de l’INRS
La démarche du projet est comme suit:
Premièrement, j’ai étudié l’estimateur conjoint, ensuite j’ai développé son modèle MATLAB/Simulink. L’intégration de ce modèle dans une chaine de communication SIMO était en 3ème partie. Une simulation assistée par ordinateur m’a permis de tester et valider le design proposé afin qu’il soit implémenté dans la plateforme radio logicielle. Un émulateur de canal a été utilisé afin de simuler le canal radio. Finalement, l’ensemble du design a été implémenté dans la plateforme SDR pour testé le fonctionnement de l’estimateur conjoint avec une co-simulation hardware-in-the-loop.
Commençons alors par présenter l’estimateur choisi!
L’algorithme de l’estimateur conjoint, développé par une équipe de recherche au laboratoire SERCOM de l’école polytechnique de Tunisie, suppose une communication uplink depuis une source vers un réseau d’antennes linéaire et uniforme à la réception, à travers un canal de Rayleigh. Ces hypothèses, permettent de modéliser le signal reçu à la ième antenne comme étant la somme des signaux composites dus au phénomène de la propagation multitrajet plus un bruit blanc gaussien et additif.
En exploitant simultanément l’intercorrélation spatiale et temporelle, cet algorithme permet d’estimer d’une manière conjointe les trois paramètres.
Le choix de cet estimateurs n’était pas arbitraire. En fait un benchmark m’a permis verifier que l’estimateur conjoint réalise le meilleur compromis attractif entre la complexité et la précision
Cependant, cet estimateur est développé et vérifié en considérant une période d’émission égale à 60 10-5 secondes ce qui n’est pas adaptée au standard LTE.
L’implémentation en script MATLAB de l’estimateur avec une période adaptée au standard LTE, m’a permis de constater que le changement de cette valeur dégrade les performances de l’estimateurs pour les trois paramètres. Ceci peut être expliqué par le fait que la durée d’émission est très petite devant le temps de cohérence du canal. J’ai proposé donc d’augmenter la periode d’observation du signal et donc augmenter le nombre d’échantillons. Cependant, cette opération augmente la complexité de l’estimateur vu qu’il est proportionnel au nombre d’échantillons, et ça risque de devenir non implémentable sur la plateforme. Pour ésoudre ce problèm j’ai considéré un sous-échantillonage ou décimation du signal. C’est à die prendre 1 échantillons par 64 symbole émis. Le résultat obtenu montre que l’opération de la décimation n’a aucun effet sur la performance de l’algorithme
Je viens maintenant à la conception matérielle de l’estimateur
Comme j’ai déjà présenté à l’introduction, les plateformes radio logicielles offrent généralement une interface de conception avec un haut niveau d’abstraction. La plateforme cible ayant une FPGA de type Xilinx virtex6 . C’est pourquoi, j’ai utilisé le framework Xilinx System Generator qui permet de concevoir des systèmes embarqué pour des applications de traitement de signal numérique en se basant au modèle MATLAB/Simulink. Ce framework offre une bibliothèque riche des blocks prédéfini permettent de faciliter la tache de conception embarqué aux ingénieurs de traitement du signal.
Comme tous systèmes numériques, le design que j’ai proposé se compose d’une unité de control et un datapath. L’unité de control ou aussi appelé controleur est un module qui sert à controler les mouvement des données dans le Datapath. Ce dernier contient l’ensemble des fonctions qui manipulent les échantillons reçus.
L’unité de control intègre 3 automates à états finis. Un automate est un circuit séquentiel qui peut être à instant donné, dans un et un seul état parmi plusieurs. Il existe deux approches pour modéliser le comportement des automates à états finis: ce sont l’approche de Moore et l’approche de Mealy. Dans ce projet, j’ai utiliser le concept de Moore pour concevoir les 3 automates. En effet, les sorties d’un automate de Moore ne dépendent que de l’état courant contrairement aux automates de Mealy où il existe un chemin combinatoire direct entre les entrées et les sorties. Ceci permet d’assurer plus de synchronisation au traitement des données vue que les automes de Moore changent leurs états seulement aux front d’horloge.
La programmation de ces 3 automates est fait par le biais du block Mcode qui permet de modéliser leur comportement avec le langage MATLAB.
Les diagrammes états/transitions permettent de mieux présenter ce comportement. Comme son nom l’indique, le premier automate assure la tache d’échantillonage et le stockage de ces échantillons dans des mémoires vives.
Ainsi, pour assurer plus de flexiblité du design, j’ai choisi de mettre le nombre d’échantillons à capturer comme un paramètre externe au système.
A la fin de la tache d’acquisition un drapeau permet de déclencher l’exécution du 2éme automate qui sert à controler l’estimation des coefficient d’intercorrelation.
Cet automate à 3 états prend la valeur du décalage temporel tau comme un paramètre en gardant le meme esprit de la flexibilité du design. De la même façon, la fin de cette tache est indiqué par le flag finish_xcorr qui sera utiliser comme un trigger pour déclencher le 3ème automate.
Cet automate est celui qui surveille la tache d’estimation des 3 paramètres. De plus, j’ai intégré le control de la boucle Monte-Carlo dans cet automates pour assurer plus de performance et de rapidité de la tache d’estimation. Un signal de control appelé « retry » permet de remmetre à 0 tout le design sauf la mémoire qui contient les valeurs déjà estimé. Le nombre d’itération est gardé bien évidement comme un paramètre externe.
Je passe maintenant à décrire le deuxième module: c’est le datapath. En fait ce module, qui représente l’unité arithmétique et logique du notre système, contient l’ensemble des fonctions permettant de manipuler le signal reçu. Il intègre 3 blocs.
Pour résoudre ce problème, j’ai utilisé des Look-up tables pour évaluer ces fonctions. En fait, un LUT est une structure de données stockée en mémoire ROM assurant le mapping des valeurs d’inputs par son équivalent en output. Un sous-bloc de préprocessing joue le role d’une bijection pour convertir la valeur de l’input à l’adresse mémoire contenant l’output approprié.
Pour résoudre ce problème, j’ai utilisé des Look-up tables pour évaluer ces fonctions. En fait, un LUT est une structure de données stockée en mémoire ROM assurant le mapping des valeurs d’inputs par son équivalent en output. Un sous-bloc de préprocessing joue le role d’une bijection pour convertir la valeur de l’input à l’adresse mémoire contenant l’output approprié.
Le choix de cet estimateur n’était pas arbitraire. En fait, un benchmark effectué entre des algorithmes existants dans la littérature ouverte, m’as permis de juger la performance de cet estimateur en terme de précision et complexité.
Ce benchmark inclut principalement 4 algorithmes. Les deux algorithmes Two-Stage et Spread Root Music permettent d’estimé l’angle d’arrivée moyen et l’étalement angulaire. L’approche two-rays sert à estimer l’étalement de Doppler, et le new joint estimator, celui que j’ai choisi, permet d’estimer les trois paramètres d’une manière conjointe.
En outre, on compare l‘ordre de complexité de ces algorithmes en terme de nombre d’opérations en virgule flottante. Si on considère un cas de figure d’un réseau de 5 antennes à la réception et une estimation avec 1024 échantillons, on trouve que le New JE présente une complexité de l’ordre de 25000 opérations pour estimer les trois paramètres d’une manière conjointe alors que la combinaison de TS et TR donne une complexité très importante comparé à celle de new JE. Ceci est expliqué par le fait que le new JE ne présente aucune inversion ou décomposition matricielle qui sont généralement très couteuses en terme de complexité. C’est pourquoi cet algorithme est considéré à faible complexité. Finalement, un tel compromis attractif entre précision et complexité permet de sélectionner le new JE pour estimer ces trois paramètres.
Cependant, cet estimateur est développé et vérifié en considérant une période d’émission égale à 600 micro secondes ce qui n’est pas adaptée au standard LTE.
C’est pourquoi, une étude de l’impact de la période symbole sur l’erreur d’estimation est nécessaire. L’implémentation en script MATLAB de l’estimateur avec une période adaptée au standard LTE, (en bleu) permet de constater que le changement de cette valeur dégrade les performances de l’estimateurs pour les trois paramètres. Ceci peut être expliqué par le fait qu’on envoie 1024 symbole avec la periode LTE, prend une durée de l’ordre de 10 ms qui est très petite devant le temps de cohérence du canal radio et par conséquent, un slow fading a eu lieu qui résulte une perte quasi-totale de l’information émise.
Pour résoudre ce problème, il est nécessaire d’augmenter la durée d’observation du signal et donc augmenter le nombre des symboles émis. Une étude de l’effet de ce nombre sur la performance de l’estimateur, m’a permis de constater que l’erreur d’estimation dans le cas théorique est presque la même si on adopte le standard LTE en émettant 2^16 symboles. C’est pour la simple raison que les deux scénarios considère une émission sur une durée égale à 0,65 secondes.
Bien évidement, une estimation avec 65536 échantillons résout le problème de l’adaptation de l’algorithme au standard LTE. Or, comme j’ai déjà présenté, l’ordre de complexité de l’estimateur est proportionnelle au nombre d’échantillons Ns, donc dans cette situation elle sera très élevée et ça risque de devenir une solution non implémentable sur la plateforme.
Pour faire face à cette contrainte matérielle, j’ai proposé de sous-échantillonner le signal reçu.
C’est veut dire qu’on ne tient compte que de quelques symboles émis pour estimer l’aoa, as et DS. Pour cela, j’ai proposé une décimation de 64 échantillons et ça permet de revenir à une periode d’échantillonage presque égale à celle développée dans la théorie de l’estimateur.
C’est veut dire qu’on ne tient compte que de quelques symboles émis pour estimer l’aoa, as et DS. Pour cela, j’ai proposé une décimation de 64 échantillons et ça permet de revenir à une periode d’échantillonage presque égale à celle développée dans la théorie de l’estimateur.
C’est veut dire qu’on ne tient compte que de quelques symboles émis pour estimer l’aoa, as et DS. Pour cela, j’ai proposé une décimation de 64 échantillons et ça permet de revenir à une periode d’échantillonage presque égale à celle développée dans la théorie de l’estimateur.
type SIPO, Serial In - Parallel Out
C’est veut dire qu’on ne tient compte que de quelques symboles émis pour estimer l’aoa, as et DS. Pour cela, j’ai proposé une décimation de 64 échantillons et ça permet de revenir à une periode d’échantillonage presque égale à celle développée dans la théorie de l’estimateur.
C’est veut dire qu’on ne tient compte que de quelques symboles émis pour estimer l’aoa, as et DS. Pour cela, j’ai proposé une décimation de 64 échantillons et ça permet de revenir à une periode d’échantillonage presque égale à celle développée dans la théorie de l’estimateur.
C’est veut dire qu’on ne tient compte que de quelques symboles émis pour estimer l’aoa, as et DS. Pour cela, j’ai proposé une décimation de 64 échantillons et ça permet de revenir à une periode d’échantillonage presque égale à celle développée dans la théorie de l’estimateur.
C’est veut dire qu’on ne tient compte que de quelques symboles émis pour estimer l’aoa, as et DS. Pour cela, j’ai proposé une décimation de 64 échantillons et ça permet de revenir à une periode d’échantillonage presque égale à celle développée dans la théorie de l’estimateur.
C’est veut dire qu’on ne tient compte que de quelques symboles émis pour estimer l’aoa, as et DS. Pour cela, j’ai proposé une décimation de 64 échantillons et ça permet de revenir à une periode d’échantillonage presque égale à celle développée dans la théorie de l’estimateur.
C’est veut dire qu’on ne tient compte que de quelques symboles émis pour estimer l’aoa, as et DS. Pour cela, j’ai proposé une décimation de 64 échantillons et ça permet de revenir à une periode d’échantillonage presque égale à celle développée dans la théorie de l’estimateur.
C’est veut dire qu’on ne tient compte que de quelques symboles émis pour estimer l’aoa, as et DS. Pour cela, j’ai proposé une décimation de 64 échantillons et ça permet de revenir à une periode d’échantillonage presque égale à celle développée dans la théorie de l’estimateur.
C’est veut dire qu’on ne tient compte que de quelques symboles émis pour estimer l’aoa, as et DS. Pour cela, j’ai proposé une décimation de 64 échantillons et ça permet de revenir à une periode d’échantillonage presque égale à celle développée dans la théorie de l’estimateur.