Design-Praxis RISC-V Von den Grundlagen bis zum Prototyp

Das Vega-Board ist eine Multicore-Plattform für Projekte mit arm- und RISC-V-Architektur.

Die offene RISC-V Befehlsarchitektur soll gleichsam eine entwicklungs- wie ressourceneffektive Befehlsbasis bieten. Etwa 200 Seiten Dokumentation scheinen die Binärstruktur für isolierte und umgebungsabhängige Anwendungsszenarien in pädagogischer Sprache zu spezifizieren.

Damit wird die explizite und implizite Informationsasymmetrie einiger kommerzieller Befehlsarchitekturen auf Binärebene gebrochen. Implizit, da prinzipiell ein reduzierter Satz von 38 Binärbefehlen in Hardware, den vollständigen applikationsspezifischen Befehlsraum aufspannt und explizit mit dem open-source-Versprechen vollständig erforschbar zu sein. Dann entscheidet die Lernkurve des Entwicklers über den Implementierungserfolg.

Eine spannende Frage ist aber, in wie weit diese Transparenz die Komplexität
in das Chipdesign hinein verlagert: historisch sind Umfang und Transparenz einer Plattform nicht allein durch Bequemlichkeit oder Protektionismus gewachsen, sondern im Anwendungsfall tatsächlich Folge der spezifischen Umgebung. Vereinfacht sich die Sprache auf Anwenderebene, so muss die spezifische Umgebung unter Umständen mit einem höheren Integrationsgrad
auf Hardwareebene erkauft werden.

Der vorliegende RISC-V-Praxisbericht arbeitet von der Maschinenbefehlsebene hin zur physikalischen Schicht. Dafür werden zunächst die Design-Prinzipien für isolierte und periphere Anwendungen der offiziellen ISA-Spezifikation [1,2] erarbeitet. Den Aufzeichnungen der DVCon Europe folgend [3] wird aufgezeigt, was diese Spezifizierung für das Chipdesign bedeutet. Zum Abschluss wird das Vega-Board der open-isa.org, das jeweils zwei ähnliche Mikrocontroller der arm- und RISC-Seite trägt, an einem generischen Programm und mit den zugänglichen Debug-Tools unter die Lupe genommen.