Neue Befehlssatz-Regeln RISC-V ratifiziert Spezifikationen für Basis- und privilegierte Architekturen

Richard Oed* |

Anbieter zum Thema

Durch die Freigabe der Spezifikationen für verschiedene Module der offenen Befehlssatzarchitektur RISC-V legt die RISC-V Foundation den Grundstein für ein weiteres Wachstum des Open-Source-Ökosystems.

Festgezurrt: Mit der Ratifizierung der RISC-V-Basisarchitektur und der privilegierten Architektur erreicht die RISC-V Foundation einen wichtigen Meilenstein in der Entwicklung der offenen Befehlssatzarchitektur.
Festgezurrt: Mit der Ratifizierung der RISC-V-Basisarchitektur und der privilegierten Architektur erreicht die RISC-V Foundation einen wichtigen Meilenstein in der Entwicklung der offenen Befehlssatzarchitektur.
(Bild: RISC-V Foundation)

Die für die Entwicklung der offenen und kostenfreien Befehlssatzarchitektur (Instruction Set Architecture, ISA) RISC-V zuständige RISC-V Foundation hat im Juli 2019 die Spezifikationen für die RISC-V-Basisarchitektur und die privilegierte Architektur eingefroren und ratifiziert. Damit wurde nach Aussage von Andrew Waterman, dem Vorsitzenden der RISC-V Priviledged Architecture Task Group, ein Meilenstein für RISC-V erreicht. Nach diesen Spezifikationen geschriebene Software ist zukünftig auch dann auf RISC-V-Prozessoren lauffähig, wenn sich die Architektur aufgrund von neuen Erweiterungen fortentwickelt.

Die jetzt ratifizierten RISC-V-Basismodule RV32I, RV64I und RVWMO (RISC-V Weak Memory Ordering) bilden die grundlegende Schnittstelle zwischen der Applikationssoftware und der Hardware. Entwickelt auf der Basis einer festgeschriebenen einfachen Befehlssatzarchitektur und modularer Standarderweiterungen, vermeiden sie eine Fragmentierung der Plattform und halten die Tür für künftige Erweiterung offen. Zudem stellen sie ein hohes Maß an Interoperabilität zwischen verschiedenen Implementationen sicher.

Verschiedene Modi für Embedded Systeme und Operationssysteme

Ebenfalls ratifiziert wurden die Module Machine ISA für Trusted Code und Supervisor ISA für Betriebssysteme der privilegierten RISC-V-Architektur, beide in der Version 1.11. Die unterschiedlichen Levels dieser Architektur werden verwendet, um einen Schutz zwischen den Komponenten des Software-Stacks sicherzustellen. Wird versucht, Operationen auszuführen, die im aktuellen privilegierten Modus nicht zulässig sind, wird eine Ausnahme ausgelöst.

Ergänzend deckt die privilegierte RISC-V-Architektur alle Aspekte von RISC-V-Systemen ab, die über die nicht privilegierte ISA hinausgehen. Dies schließt privilegierte Anweisungen sowie zusätzliche Funktionen ein, die für den Einsatz von Betriebssystemen und die Verbindung zu externen Geräten erforderlich sind. Jede Berechtigungsstufe verfügt über einen Basissatz an privilegierten ISA-Erweiterungen mit ergänzenden optionalen Erweiterungen und Varianten. Die ebenfalls vorgesehene Hypervisor-ISA für die Virtualisierung der Supervisor-Level Architektur befindet sich aktuell mit der Version 0.3 noch im Entwurfsstatus.

Bei den Integer-Basis-ISAs gilt derzeit der folgende Status:

  • 32-Bit Version der Architektur (RV32I): ratifiziert in der Version 2.1.
  • 64-Bit Version der Architektur (RV64I): ratifiziert in der Version 2.1.
  • 128-Bit Version (RV128I): mit der Version 1.7 noch im Entwurfsstatus.
  • 32-Bit Version für Embedded Systeme (RV32E): mit Version 1.9 noch im Entwurfsstatus.
  • Speicherkonsistenzmodell (RVWMO / RISC-V Weak Memory Ordering): ratifiziert in der Version 2.0.

Mit Stand Juli 2019 ebenfalls ratifiziert sind die folgenden Standarderweiterungen:

  • M (Multiply): Erweitert die ISA um Befehle zur Multiplikation und Division (Version 2.0).
  • F (Floating Point): für 32-Bit-Gleitkommaoperationen nach IEEE 754-2008 (Version 2.2).
  • D (Double Precision Floating Point): für Gleitkommaoperationen nach IEEE 754-2008 mit doppelter Genauigkeit. Erweitert die 32-Bit-Gleitkommaregister auf 64 Bit (Version 2.2).
  • Q (Quad-Precision Floating Point): für Quad-Precision Gleitkommaoperationen nach IEEE 754-2008. Erweitert die 32-Bit Gleitkommaregister auf 128 Bit (Version 2.2).
  • C (Compressed Instructions): Reduziert die Programmgröße durch das Bereitstellen von nur 16 Bit langen Befehlen für häufige Operationen (Version 2.0).
  • Zicsr (Control und Status Register): Definiert Befehle für den Zugriff auf die 4096 Control- und Statusregister eines jeden Harts (Version 2.0).
  • Zifencei (Instruction-Fetch Fence): Ermöglicht die Synchronisation von Speichervorgängen zum Befehlsspeicher und dem Befehlsabruf im selben Hardware-Thread (Hart) (Version 2.0).

Zusätzliche Erweiterungen sind in Vorbereitung

Eingefroren sind derzeit die Erweiterungen A (Atomic) und Ztso (Total Store Ordering). Die A-Standarderweiterung, die in der Version 2.0 vorliegt, fügt der ISA Befehle zum geschützten Lesen, Modifizieren und Schreiben von Speicherwerten zur Synchronisierung mehrerer RISC-V-CPUs, die im selben Speicherbereich laufen, hinzu. Die aktuell in der Version 0.1 verfügbare Erweiterung Ztso unterstützt das gegenüber RVWMO stärkere Speicherkonsistenzmodel RVTSO (RISC-V Total Store Ordering). Zudem soll sie eine Portierung von Programmen erleichtern, die ursprünglich für einen x86- oder SPARC-Prozessor geschrieben wurden.

Die weiteren Standarderweiterungen L (dezimale Gleitkommazahlen), B (Bitmanipulation), J (dynamisch übersetzte Sprachen), T (Transactional Memory), P (Packed-SIMD-Befehle), V (Vektoroperationen), N (User-Level-Interrupts) und Zam (nicht ausgerichtete Atomics) befinden sich noch im Entwurfsmodus, ebenso die Counters-Erweiterung für Zähler.

Mit den jetzt freigegebenen Spezifikationen für die Basis- und privilegierte Architektur sowie den grundlegenden Standarderweiterungen hat die RISC-V Foundation den Grundstein für eine weitere Verbreitung der RISC-V-Architektur gelegt und bei den Entwicklern von Hard- und Software für Sicherheit gesorgt.

Hinweis:Den Beitrag haben wir vom Schwesterportal „Elektronik Praxis“ übernommen.

* Richard Oed ist Branchenexperte und freier Autor

(ID:46080855)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu RZ- und Server-Technik

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung