Thèse soutenue

Co-conception Logiciel/FPGA pour Edge-computing : promotion de la conception orientée objet
FR  |  
EN
Accès à la thèse
Auteur / Autrice : Xuan Sang Le
Direction : Loïc LagadecNoury Bouraqadi
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 31/05/2017
Etablissement(s) : Brest
Ecole(s) doctorale(s) : École doctorale Santé, information-communication et mathématiques, matière (Brest, Finistère)
Partenaire(s) de recherche : Laboratoire : Laboratoire en sciences et techniques de l'information, de la communication et de la connaissance
Jury : Président / Présidente : Olivier Romain
Examinateurs / Examinatrices : Loïc Lagadec, Noury Bouraqadi, Olivier Romain, Anne Etien, Thomas Ledoux, Ahcène Bounceur
Rapporteurs / Rapporteuses : Olivier Romain, Anne Etien

Résumé

FR  |  
EN

L’informatique en nuage (cloud computing) est souvent le modèle de calcul le plus référencé pour l’internet des objets (Internet of Things).Ce modèle adopte une architecture où toutes les données de capteur sont stockées et traitées de façon centralisée. Malgré de nombreux avantages, cette architecture souffre d’une faible évolutivité alors même que les données disponibles sur le réseau sont en constante augmentation. Il est à noter que, déjà actuellement, plus de50 % des connexions sur Internet sont inter objets. Cela peut engendrer un problème de fiabilité dans les applications temps réel. Le calcul en périphérie (Edge computing) qui est basé sur une architecture décentralisée, est connue comme une solution pour ce problème émergent en : (1) renforçant l’équipement au bord du réseau et (2) poussant le traitement des données vers le bord.Le calcul en périphérie nécessite des noeuds de capteurs dotés d’une plus grande capacité logicielle et d’une plus grande puissance de traitement, bien que contraints en consommation d’énergie. Les systèmes matériels hybrides constitués de FPGAs et de processeurs offrent un bon compromis pour cette exigence. Les FPGAs sont connus pour permettre des calculs exhibant un parallélisme spatial, aussi que pour leur rapidité, tout en respectant un budget énergétique limité. Coupler un processeur au FPGA pour former un noeud garantit de disposer d’un environnement logiciel flexible pour ce nœud.La conception d’applications pour ce type de systèmes hybrides (réseau/logiciel/matériel) reste toujours une tâche difficile. Elle couvre un vaste domaine d’expertise allant du logiciel de haut niveau au matériel de bas niveau (FPGA). Il en résulte un flux de conception de système complexe, qui implique l’utilisation d’outils issus de différents domaines d’ingénierie. Une solution commune est de proposer un environnement de conception hétérogène qui combine/intègre l’ensemble de ces outils. Cependant, l’hétérogénéité intrinsèque de cette approche peut compromettre la fiabilité du système lors des échanges de données entre les outils.L’objectif de ce travail est de proposer une méthodologie et un environnement de conception homogène pour un tel système. Cela repose sur l’application d’une méthodologie de conception moderne, en particulier la conception orientée objet (OOD), au domaine des systèmes embarqués. Notre choix de OOD est motivé par la productivité avérée de cette méthodologie pour le développement des systèmes logiciels. Dans le cadre de cette thèse, nous visons à utiliser OOD pour développer un environnement de conception homogène pour les systèmes de type Edge Computing. Notre approche aborde trois problèmes de conception: (1) la conception matérielle, où les principes orientés objet et les patrons de conception sont utilisés pour améliorer la réutilisation, l’adaptabilité et l’extensibilité du système matériel. (2) la co-conception matériel/logiciel, pour laquelle nous proposons une utilisation de OOD afin d’abstraire l’intégration et la communication entre matériel et logiciel, ce qui encourage la modularité et la flexibilité du système. (3) la conception d’un intergiciel pour l’Edge Computing. Ainsi il est possible de reposer sur un environnement de développement centralisé des applications distribuées† tandis ce que l’intergiciel facilite l’intégration des nœuds périphériques dans le réseau, et en permet la reconfiguration automatique à distance. Au final, notre solution offre une flexibilité logicielle pour la mise en oeuvre d’algorithmes distribués complexes, et permet la pleine exploitation des performances des FPGAs. Ceux-ci sont placés dans les nœuds, au plus près de l’acquisition des données par les capteurs, pour déployer un premier traitement intensif efficace.