Ibex
Awesome RISC-V

Ibex

RISC-V-Ökosystem

Ibex ist ein kleiner 32-Bit-Kern mit einer zweistufigen Pipeline, geschrieben in SystemVerilog und gepflegt von lowRISC. Er begann als zero-riscy im PULP-Projekt an der ETH Zürich, und OpenTitan verwendet ihn als seinen Hauptprozessor.

Übersicht

Ibex ist ein kleiner 32-Bit-RISC-V-Kern, geschrieben in SystemVerilog, einer Sprache zur Beschreibung von Hardware. Ein Kern ist der Teil eines Chips, der Anweisungen ausführt. Ibex ist für eingebettete Steuerung ausgelegt, die Arbeit kleiner Prozessoren, die Geräte innerhalb größerer Systeme verwalten.

Ibex unterstützt den Basis-Befehlssatz für Ganzzahlen oder seine reduzierte eingebettete Version sowie die Erweiterungen M, C und B für Multiplikation, komprimierte Anweisungen und Bitmanipulation. Seine Konfigurationen reichen von einem minimalen RV32EC-Build bis zu schnelleren Builds mit einem Einzyklus-Multiplizierer und Speicherschutz. lowRISC veröffentlicht dafür nächtliche Testberichte, und Ibex hat mehrere Tape-outs durchlaufen, was bedeutet, dass es in echten Chips gefertigt wurde.

Verlauf

Ibex begann als zero-riscy, ein Kern der PULP-Plattform, einem Forschungsprojekt der ETH Zürich und der Universität Bologna, das stromsparende Prozessoren entwickelt. zero-riscy wurde 2017 als kleinerer Verwandter des RI5CY-Kerns vorgestellt. Das Design wurde anschließend an lowRISC gespendet, eine gemeinnützige Organisation in Cambridge, Vereinigtes Königreich, die es in Ibex umbenannte und weiterentwickelt.

Wo es verwendet wird

OpenTitan, ein Open-Source-Design für Sicherheitschips, die die Software prüfen, die ein Computer startet, verwendet Ibex als Prozessor. Ibex erscheint auch in Forschungs-Chips und in Designs, die einen kleinen Kern mit einer starken Verifikationsbilanz benötigen.

Quellen

  1. Ibex README
  2. Zero-riscy, PATMOS 2017
  3. OpenTitan