Thèse soutenue

Etude et mise en oeuvre d'un environnement d'exécution pour architecture hétérogène reconfigurable

FR  |  
EN
Auteur / Autrice : Jonathan Dechelotte
Direction : Dominique DalletJé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

FR  |  
EN

Résumé

FR  |  
EN

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é.