BOOM
RISC-V-ÖkosystemBOOM ist ein Out-of-Order-RISC-V-Kern, geschrieben in Chisel. Er kann Befehle in einer anderen Reihenfolge ausführen, als sie im Programm aufgelistet sind, wodurch mehr Ausführungseinheiten beschäftigt bleiben. SonicBOOM, seine dritte Version, erschien im Jahr 2020.
Übersicht
BOOM, die Berkeley Out-of-Order Machine, ist ein 64-Bit-RISC-V-Kern, geschrieben in Chisel, einer auf Scala aufbauenden Hardware-Konstruktionssprache. Ein Kern ist der Teil eines Chips, der Anweisungen ausführt. Ein Out-of-Order-Kern kann Anweisungen in einer anderen Reihenfolge ausführen, als das Programm sie auflistet. Wenn eine Anweisung auf Daten aus dem Speicher wartet, fahren spätere Anweisungen, die nicht von ihr abhängen, fort, und mehr Ausführungseinheiten des Kerns bleiben beschäftigt.
BOOM implementiert RV64GC, den universellen 64-Bit-Befehlssatz mit komprimierten Anweisungen, unterstützt virtuellen Speicher und startet Linux. Seine dritte Version, SonicBOOM, erreicht 6,2 CoreMark pro MHz. CoreMark ist ein Standard-Benchmarkprogramm, und die Division seiner Punktzahl durch die Taktfrequenz misst, wie viel Arbeit der Kern pro Taktzyklus leistet.
Verlauf
Christopher Celio startete BOOM in der Berkeley Architecture Research group an der UC Berkeley und beschrieb das Design in einem technischen Bericht von 2015. Eine zweite Version folgte 2017. Jerry Zhao, Ben Korpan, Abraham Gonzalez und Krste Asanović stellten 2020 SonicBOOM vor, die dritte Version.
Wo es verwendet wird
BOOM ist ein Forschungskern. Seine Parameter legen die Pipelinebreite, die Anzahl der Ausführungseinheiten und die Größe der internen Warteschlangen fest, wodurch Forscher messen können, wie sich jede Wahl auf die Leistung auswirkt. Benutzer bauen BOOM-Systeme über Chipyard, da das Repository nur den Kern enthält.
