BOOM
Écosystème RISC-VBOOM est un cœur RISC-V hors ordre écrit en Chisel. Il peut exécuter les instructions dans un ordre différent de celui dans lequel le programme les liste, ce qui maintient davantage d'unités d'exécution occupées. SonicBOOM, sa troisième version, est sorti en 2020.
Aperçu
BOOM, the Berkeley Out-of-Order Machine, est un cœur RISC-V 64 bits écrit en Chisel, un langage de construction matérielle basé sur Scala. Un cœur est la partie d'une puce qui exécute les instructions. Un cœur out-of-order peut exécuter les instructions dans un ordre différent de celui dans lequel le programme les liste. Lorsqu'une instruction attend des données de la mémoire, les instructions suivantes qui n'en dépendent pas continuent, et davantage d'unités d'exécution du cœur restent occupées.
BOOM implémente RV64GC, le jeu d'instructions 64 bits à usage général avec instructions compressées, prend en charge la mémoire virtuelle et démarre Linux. Sa troisième version, SonicBOOM, obtient 6,2 CoreMark par MHz. CoreMark est un programme de benchmark standard, et diviser son score par la fréquence d'horloge mesure la quantité de travail que le cœur effectue par cycle d'horloge.
Historique
Christopher Celio a lancé BOOM au sein du Berkeley Architecture Research group de l'UC Berkeley et décrit sa conception dans un rapport technique de 2015. Une deuxième version a suivi en 2017. Jerry Zhao, Ben Korpan, Abraham Gonzalez et Krste Asanović ont présenté SonicBOOM, la troisième version, en 2020.
Où il est utilisé
BOOM est un cœur de recherche. Ses paramètres définissent la largeur du pipeline, le nombre d'unités d'exécution et la taille des files internes, ce qui permet aux chercheurs de mesurer l'effet de chaque choix sur les performances. Les utilisateurs construisent des systèmes BOOM via Chipyard car le dépôt ne contient que le cœur.
