Abstraction du développement sur FPGA pour l'intégrer dans un flot de développement logiciel moderne

par Jean Bruant

Projet de thèse en Nano electronique et nano technologies

Sous la direction de Olivier Muller et de Frédéric Pétrot.

Thèses en préparation à Grenoble Alpes , dans le cadre de École doctorale électronique, électrotechnique, automatique, traitement du signal (Grenoble) , en partenariat avec Techniques de l'Informatique et de la Microélectronique pour l'Architecture des systèmes intégrés (laboratoire) et de Groupe microsystèmes (equipe de recherche) depuis le 01-10-2018 .


  • Résumé

    Cette thèse a pour but l'exploration des outils de développement matériels dits de haut niveau innovants pour concevoir et en mettre en place en production un flot de développement robuste, flexible et open source. La synthèse de haut-niveau est la solution communément admise pour répondre répondre à ce problème. Elle vise à produire du code matériel à partir d'une fonctionnalité décrite en code logiciel.La démarche proposée se différencie de la synthèse de haut-niveau en permettant une élévation incrémentale de l'abstraction à partir des descriptions élémentaires, toujours au niveau HDL, comme le permette les langages aujourd'hui utilisé comme le VHDL ou le Verilog. Le flot de développement devra ainsi permettre des développements matériels HDL classiques, et également fournir des fonctionnalités de génération avancées comme par exemple la génération automatisée de pipeline, d'interfaces, ou d'API logicielles.

  • Titre traduit

    Abstracting FPGA development flow as a modern software development flow


  • Résumé

    This thesis aims at exploring innovative high-level hardware development tools, in order to design and implement a flexible, resilient and open-source hardware development flow. It differs from the standard HLS (High-Level Synthesis) which aims at converting a software-defined feature in its hardware description directly. Here the goal is to incrementally increase the level of abstraction, building on elementary hardware description as they are currently expressed with languages such as Verilog or VHDL. The development flow shall allow raw hardware development and also provide advanced code generation features, such as the automated generation of pipelines, interfaces or even software API.