Résumé
Le ralentissement de la loi de Moore a conduit à un changement de paradigme dans le calcul haute performance (HPC), forçant les architectes informatiques à explorer des alternatives. Ce changement a donné naissance aux architectures System-on-Chip (SoC) basées sur des chiplets, où la logique est distribuée sur plusieurs dies au sein d'un même package, remplaçant les architectures multicœurs monolithiques traditionnelles. Bien que cette transition améliore la rentabilité et les rendements, elle introduit de nouveaux défis en matière de conception, d'évaluation et d'optimisation. Les conceptions basées sur les chiplets présentent à la fois des défis et des opportunités, introduisant des latences variables entre les cœurs tout en permettant une intégration hétérogène post-tape-out et des interconnexions à haute bande passante. De nouveaux protocoles comme CCIX, UCIe et OpenCAPI ont émergé pour faciliter la communication entre les puces interconnectées. Cette approche permet une flexibilité allant des CPUs à chiplet unique pour les applications edge aux CPUs multi-chiplets pour le cloud computing haute performance. Le maintien de la cohérence dans les systèmes multicœurs modernes est un défi, nécessitant une conception et une validation fréquentes des protocoles. L'extension de la cohérence de cache à plusieurs chiplets augmente significativement la complexité de conception. Bien que la simulation puisse répondre à ces défis sans recourir à des conceptions RTL chronophages ou des tape-outs coûteux, les simulateurs d'architecture existants manquent souvent de flexibilité et de capacités nécessaires pour les protocoles d'interconnexion cohérents modernes. De plus, les simulateurs capables sont souvent propriétaires, entravant la recherche académique. Cette thèse explore la modélisation des protocoles d'interconnexion cohérents pour les systèmes basés sur les chiplets. Nous abordons les principales limitations des solutions existantes : les simulations multi-chiplets actuelles utilisent souvent plusieurs instances parallèles de simulateur avec des environnements OS séparés, représentant mal les architectures ciblées. De plus, les modèles network-on-chip monolithiques étendus échouent souvent à maintenir la cohérence entre les puces, et les plateformes open-source manquent généralement de support natif pour la gestion de multiple network-on-chip. Nos contributions incluent : premièrement, une méthodologie de modélisation dans les simulateurs système open-source modernes, présentant gem5 avec ses aspects clés et stratégies de débogage. Deuxièmement, une analyse des défis de la modélisation des interconnexions cohérentes puce à puce, fournissant des directives pour la simulation d'architectures multi-puces. Enfin, nous implémentons un modèle d'interconnexion puce à puce dans gem5, étendant le protocole Arm CHI à travers plusieurs puces tout en maintenant la cohérence et permettant une simulation full-system. Cette thèse fournit à la fois une méthodologie pour concevoir des modèles de simulation et une implémentation complète d'un modèle d'interconnexion cohérent puce à puce. Notre contribution fait progresser la simulation précise des architectures multi-puces cohérentes en cache et vise à inspirer de futurs travaux d'optimisation. Grâce aux outils et méthodologies open-source, nous cherchons à accélérer la recherche en architecture informatique, permettant des systèmes informatiques plus efficaces.