Etude et mise en oeuvre d'un environnement d'exécution pour architecture hétérogène reconfigurable
Auteur / Autrice : | Jonathan Dechelotte |
Direction : | Dominique Dallet, Jérémie Crenne |
Type : | Thèse de doctorat |
Discipline(s) : | Electronique |
Date : | Soutenance le 12/03/2020 |
Etablissement(s) : | Bordeaux |
Ecole(s) doctorale(s) : | École doctorale des sciences physiques et de l’ingénieur (Talence, Gironde ; 1995-....) |
Partenaire(s) de recherche : | Laboratoire : Laboratoire de l'intégration du matériau au système (Talence, Gironde) |
Jury : | Président / Présidente : Jean-Philippe Diguet |
Examinateurs / Examinatrices : Dominique Dallet, Jérémie Crenne, Jean-Philippe Diguet, Guy Gogniat, Lilian Bossuet, Russell Tessier | |
Rapporteurs / Rapporteuses : Guy Gogniat, Lilian Bossuet |
Mots clés
Mots clés contrôlés
Résumé
Aujourd'hui, les systèmes embarqués ont pris une part hégémonique dans notre monde. Leurs utilisation est prépondérante, que ce soit pour communiquer, se déplacer, travailler ou se divertir. Des efforts dans le domaine de la recherche et de l'industrie n'ont de cesse de faire évoluer les parties qui composent ces systèmes dont le processeur, le FPGA, la mémoire et le système d'exploitation.D'un point de vue architectural, l'apport d'une architecture généraliste couplée à une architecture reconfigurable positionne le SoC FPGA comme une cible préférentielle pour une utilisation dans les systèmes embarqués. Leurs adoption est cependant difficile du fait de leur complexité d'implémentation. L'abstraction des couches de bas niveau semble un axe d'investigation qui tend à inverser cette tendance. Au premier abord, l'utilisation d'un système d'exploitation paraît idoine. En effet, il possède l'écosystème de drivers et services disponibles pour l'accès aux ressources matérielles, la capacité d'ordonnancement natif ainsi que des bibliothèques pour la sécurité. Toutefois, cette solution engendre des contraintes qui poussent à évaluer d'autres approches. Ce manuscrit évalue la capacité d'un langage de haut niveau tel que Lua à fournir un environnement d'exécution dans le cas d'une implémentation sans système d'exploitation.À travers un écosystème nommé Lynq, cet environnement d'exécution procure les briques nécessaires à la gestion et l'allocation des ressources présentes sur le SoC FPGA, ainsi qu'une méthode proposant une isolation entre applicatifs.La capacité des architectures généralistes que sont les CPUs à devenir spécialisés lorsqu'ils sont implémentés sur un FPGA a été exploré par la suite. Ceci au travers d'une contribution permettant la génération d'un CPU RISC-V ainsi que son microcode associé.