Description
Date depot: 12 avril 2023
Titre: Elaboration d’une architecture de processeur hybride CPU/FPGA : optimisation et synchronisation pour Edge Computing application
Directeur de thèse:
Lionel TROJMAN (LISITE)
Encadrant :
Frédéric AMIEL (LISITE)
Domaine scientifique: Sciences et technologies de l'information et de la communication
Thématique CNRS : Systèmes et architectures intégrés matériel-logiciel
Resumé: L’industrie du semiconducteur a été bouleversé depuis les années 2000 par un changement du paradigme de la loi de Moore : l’augmentation de la densité de porte logique à un cout énergétique raisonnable pour une stagnation des fréquences d’horloge. Cela a naturellement amené à réfléchir à organiser les transistors dans les processeurs afin d’accroitre la fonctionnalité des architectures en proposant une parallélisation des instructions. Aussi le passage du ‘single core’ aux ‘multi-cores’ succédé par l’ajout de GPU et de cœur à fonction spécifique a été essentiel pour continuer d’augmenter les bénéfices obtenus par le changement de technologie d’une génération à une autre.Afin de profiter au mieux la densité d’intégration (encore dans une phase d’augmentation), la question est : doit-on augmenter le nombre de cœur avec un cout énergétique relativement bas au détriment des performances ou relaxer la contrainte énergétique pour un nombre de cœurs limités à la stratégie CPU/GPU pour une meilleure performance. Cela suggère une question sous-jacente : irons-nous sur un système computationnel complètement centralisé de type Cloud1 quitte à payer le prix de la latence ou alors suivrons nous une voie plus décentralisée pour satisfaire les contraintes satisfaites en performance et temps réel par l’Edge Computing. Les systèmes d’architectures pourraient être marqués par une nouvelle innovation. Plutôt que de surenchérir les exploits technologiques, et nourrir une nécessité dans la rareté des matériaux, nous pourrions revenir sur la dualité CPU/FPGA qui fut longtemps une adversité même commerciale. Combiner leurs avantages pourrait permettre d’allier la performance et la spécificité à des applications tout en offrant un processeur versatile autant utile pour les SoC que pour les calculs haute performances. Plus précisément notre hypothèse est que des architectures mixtes CPU/FPGA permettrait de compiler les programmes en ciblant les fonctions de façon la plus appropriée ou spécifique. Dans cette thèse nous porposons Afin de profiter au mieux la densité d’intégration (encore dans une phase d’augmentation), la question est : doit-on augmenter le nombre de cœur avec un cout énergétique relativement bas au détriment des performances ou relaxer la contrainte énergétique pour un nombre de cœurs limités à la stratégie CPU/GPU pour une meilleure performance. Cela suggère une question sous-jacente : irons-nous sur un système computationnel complètement centralisé de type Cloud1 quitte à payer le prix de la latence ou alors suivrons nous une voie plus décentralisée pour satisfaire les contraintes satisfaites en performance et temps réel par l’Edge Computing.A cela nous tenterons d’amener un élément de réponse de la façon suivante. Les systèmes d’architectures pourraient être marqués par une nouvelle innovation. Plutôt que de surenchérir les exploits technologiques, et nourrir une nécessité dans la rareté des matériaux, nous pourrions revenir sur la dualité CPU/FPGA qui fut longtemps une adversité même commerciale. Combiner leurs avantages pourrait permettre d’allier la performance et la spécificité à des applications tout en offrant un processeur versatile autant utile pour les SoC que pour les calculs haute performances. Plus précisément notre hypothèse est que des architectures mixtes CPU/FPGA permettrait de compiler les programmes en ciblant les fonctions de façon la plus appropriée ou spécifique. Pour ce programme doctorale, nous proposons d’implémenter une architecture hybride ou mixte CPU/FPGA sur la base d'outil de synthèse en appliquant des PDK industriel de 180nm. Nous également ciblons de mesurer les performances de cette solution pour un bechnmark et également de l'utiliser pour une application de type SoC de type Edge Computing.