Les architectures de calcul actuelles doivent répondre à de nombreux défis scientifiques et sociétaux. D’un point de vue scientifique, l’augmentation des performances et de l’efficacité énergétique reste sans aucun doute l’objectif premier de leur évolution, et la technologie, permettant d’intégrer toujours plus de transistors, facilite la conception d’architectures parallèles basées sur des multicœurs. Pour pouvoir échanger de l’information entre les cœurs de calcul, ces architectures sont organisées autour d’un médium de communication de type réseau sur puce offrant de la souplesse et de l’efficacité [3,4].
D’un point de vue sociétal, des problématiques de réduction de l’empreinte énergétique de l’électronique et de lutte contre l’obsolescence sont de plus en plus prégnantes et doivent être intégrées dès la phase de conception. L’intégration au plus tôt de ces contraintes vise à permettre la conception de circuits efficaces, tolérants aux fautes et donc durables dans le temps [5, 6]. En effet, l’apparition de fautes peut être provoquée par (a) le contexte d’utilisation du circuit (rayonnement électromagnétique, particules, …) mais également (b) par le vieillissement du composant [7].En réponse à ces défis, la conception d’architectures de calcul ouvertes et résilientes aux fautes est une voie de recherche qu’il convient de développer et d’amplifier pour proposer une électronique soutenable répondant toutefois aux attentes applicatives.
Les travaux que nous proposons dans ce sujet de thèse adressent ces problématiques et s’articulent autour de la tolérance aux fautes permanentes des réseaux sur puce intégrés dans les architectures multicœurs ouvertes. L’objectif principal vise à proposer des architectures plus résilientes aux fautes, notamment celles liées au vieillissement, ce qui permettra de lutter contre l’obsolescence en allongeant la durée de vies des équipements électroniques en général.
Alors que de nombreux travaux ont adressé la robustification des cœurs de calcul [1,2], nous proposons de focaliser nos travaux sur le réseau d’interconnexion [8, 9]. En s’appuyant sur l’architecture ouverte et libre du jeu d’instructions RISC V, nous proposons d’investiguer le couplage entre les cœurs de calcul et les routeurs associés du réseau sur puce. Notre proposition vise à revoir la conception du routeur d’un réseau sur puce en proposant de le décliner comme une extension matérielle du cœur et de le contrôler au travers de l’extension du jeu d‘instructions de ce dernier. Le routeur sera doté de capacités de détection de fautes et de contournement de celles-ci.
Du point de vue du cœur de calcul, le routeur sera donc vu comme un accélérateur spécialisé, et l’extension du jeu d’instructions offrira au système d’exploitation la flexibilité nécessaire pour réagir en cas de fautes. Des fautes locales, voire plus distantes obtenues par propagation d’informations de routeur à routeur, pourront être détectées, et analysées en vue d’enclencher les stratégies adéquates pour répondre aux contraintes de l’application et en adéquation avec les capacités du système défaillant. Les techniques que nous proposerons dans ces travaux permettront donc de concilier i) performance, au travers d’un fort couplage entre les deux éléments étudiés (cœur de traitement et routeur), et ii) lutte contre l’obsolescence des circuits en s’assurant que le modèle de l’architecture disposera de capacités et dispositifs de résiliences. Enfin, en s’appuyant sur une architecture ouverte et libre, l’architecture RISC-V, ces travaux assureront la pérennité des systèmes conçus et une indépendance vis-à-vis des évolutions des architectures commerciales.
Ce sujet de thèse est en cohérence avec les thèmes de recherche de l’équipe TARAN puisqu’il adresse la conception de systèmes multicœurs tolérants aux fautes, faible consommation et libres d’accès. Les travaux proposés contribueront à l’une des problématiques sociétales majeures de l’électronique actuelle, la durabilité du matériel, et notamment celle des systèmes à base de processeurs. Par ailleurs, ces travaux renforceront l’expertise de l’équipe Taran en tant qu’acteur important du développement des architectures ouvertes qui participe à la soutenabilité et souveraineté de l’électronique de demain.
[1] S. Safari et al., « A Survey of Fault-Tolerance Techniques for Embedded Systems From the Perspective of Power, Energy, and Thermal Issues », IEEE Access, vol. 10, p. 12229‑12251, 2022, doi: 10.1109/ACCESS.2022.3144217.
[2] R. Yarzada, D. Singh, et H. Al-Asaad, « A Brief Survey of Fault Tolerant Techniques for Field Programmable Gate Arrays », in 2022 IEEE 12th Annual Computing and Communication Workshop and Conference (CCWC), Las Vegas, NV, USA: IEEE, janv. 2022, p. 0823‑0828. doi: 10.1109/CCWC54503.2022.9720746.
[3] « Performance Evaluation of Application Mapping Approaches for Network-on-Chip Designs | IEEE Journals & Magazine | IEEE Xplore ». https://ieeexplore.ieee.org/abstract/document/9044826
[4] I. A. Alimi et al., « Network-on-Chip Topologies: Potentials, Technical Challenges, Recent Advances and Research Direction », in Network-on-Chip - Architecture, Optimization, and Design Explorations, IntechOpen, 2021. doi: 10.5772/intechopen.97262.
[5] « On the environmental impact of High Performance Computing », Sifflez.org. https://sifflez.org/publications/environment-hpc/
[6] TECHDesign, « Embracing the Future: The Rise of Sustainable Hardware », TECHDesign Blog. https://blog.techdesign.com/embracing-the-future-the-rise-of-sustainable-hardware/
[7] Z. Li, P. Yang, Z. Huang, et Q. Wang, « AM&FT: An Aging Mitigation and Fault Tolerance Framework for SRAM-Based FPGA in Space Applications », J CIRCUIT SYST COMP, vol. 31, no 07, p. 2250136, mai 2022, doi: 10.1142/S0218126622501365.
[8] M. Rashid et al., « Fault-Tolerant Network-On-Chip Router Architecture Design for Heterogeneous Computing Systems in the Context of Internet of Things », Sensors, vol. 20, no 18, Art. no 18, janv. 2020, doi: 10.3390/s20185355.
[9] R. F. Faccenda, L. L. Caimi, et F. G. Moraes, « Detection and Countermeasures of Security Attacks and Faults on NoC-Based Many-Cores », IEEE Access, vol. 9, p. 153142‑153152, 2021, doi: 10.1109/ACCESS.2021.3127468.