AsteRISC : architectures de processeur RISC-V flexibles et outils pour l’exploration de l’espace de conception
Auteur / Autrice : | Jonathan Saussereau |
Direction : | Christophe Jego, Jean-Baptiste Begueret |
Type : | Thèse de doctorat |
Discipline(s) : | Electronique |
Date : | Soutenance le 08/01/2024 |
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 : Sébastien Pillement |
Examinateurs / Examinatrices : Nicolas Porez | |
Rapporteurs / Rapporteuses : Kévin Martin, Frédéric Rousseau |
Résumé
Dans l'industrie électronique, les concepteurs sont souvent confrontés au défi de l'évolution des exigences tout au long du cycle de développement et après le déploiement des produits. Ce défi est amplifié par la longue période de temps entre la conception de l'ASIC et la fabrication, ainsi que par l'inflexibilité intrinsèque des architectures numériques une fois gravées sur le silicium. Par conséquent, les approches permettant la modification après fabrication sont des solutions attrayantes.Cependant, une telle flexibilité entraîne généralement des coûts supplémentaires en termes d'utilisation des ressources, de performance et de consommation d'énergie. Pour y faire face, les concepteurs doivent trouver un équilibre optimal entre ces facteurs, en créant une architecture qui minimise ces surcoûts tout en répondant aux exigences du cahier des charges.Ce travail explore une solution basée sur un processeur comme alternative à la solution fixe. Le design proposé est un processeur RISC-V flexible : AsteRISC. L'originalité de ce cœur réside dans le fait qu'il possède des registres optionnels à des points clés de son chemin de données, permettant au concepteur de contrôler directement le chemin critique, afin de trouver celui optimal pour l'application visée. La configuration de registre choisie est sélectionnée par des paramètres avant la synthèse logique. Deux approches architecturales sont explorées : une approche non pipeline, visant à assurer une utilisation limitée des ressources et offrant une grande variété de microarchitectures différentes, et une approche pipeline flexible pour étendre l'espace de conception aux architectures à plus hautes performances.Un environnement flexible de conception de System-On-Chip (SoC) est proposé, présentant une approche indépendante de la cible technologique. Un environnement d'exploration architecturale est également présenté, permettant la recherche en parallèle de la fréquence maximale de fonctionnement pour de nombreuses micro-architectures différentes et facilitant l'interprétation des résultats.Les résultats expérimentaux et leur analyse fournissent des benchmarks, des résultats de performance, autant avec des circuits FPGA que pour les technologies ASIC. Les résultats mettent en évidence les avantages de la flexibilité architecturale pour répondre à des exigences strictes. En effet, ils démontrent que chaque configuration présente des caractéristiques distinctes en fonction de la technologie ciblée et du contexte de l'application, ce qui permet de trouver la plus adaptée au cadre applicatif.L'étude est ancrée dans le développement d'un SoC pour une fonction de pointage radar, intégrant le processeur proposé pour relever le défi du traitement des données dans des contraintes de temps serrées, tout en conservant une faible utilisation des ressources. Les résultats de mise en œuvre, jusqu'au layout, démontrent qu'il est possible d'offrir les mêmes fonctionnalités que l'architecture fixe originale tout en permettant une modification dynamique de son comportement après fabrication, en changeant le logiciel. Les impacts, notamment en termes de surface utilisée, sont présentés, permettant une compréhension des compromis sous-jacents.