VexRiscv
Ekosystem RISC-VVexRiscv to 32-bitowy rdzeń napisany w SpinalHDL. Wtyczki decydują, które etapy potoku, pamięci podręczne i rozszerzenia zawiera dana kompilacja. Stworzył go Charles Papon, a LiteX używa go jako domyślnego procesora dla systemów FPGA na chipie.
Przegląd
VexRiscv to 32-bitowy rdzeń RISC-V napisany w SpinalHDL, języku opisu sprzętu zbudowanym na Scali. Rdzeń to część układu, która wykonuje instrukcje. VexRiscv jest przeznaczony dla FPGA, układów, które można rekonfigurować tak, aby zachowywały się jak inny obwód, i unika bloków powiązanych z jednym producentem, dzięki czemu ten sam projekt działa na FPGA różnych dostawców.
Projekt jest składany z pluginów. Plugin dodaje jedną funkcję, taką jak pamięć podręczna, mnożnik, jednostka zmiennoprzecinkowa lub jednostka zarządzania pamięcią, a potok może mieć od dwóch do ponad pięciu stopni. Najmniejsza kompilacja używa około 500 tablic lookup FPGA, a pełna kompilacja z jednostką zarządzania pamięcią uruchamia Linuksa.
Historia
Charles Papon, twórca SpinalHDL, rozpoczął pracę nad VexRiscv w 2017 roku. Papon później stworzył NaxRiscv, rdzeń z wykonaniem poza kolejnością zbudowany z użyciem tego samego podejścia opartego na wtyczkach.
Gdzie jest używane
LiteX, powszechnie używany framework do budowania systemów FPGA na chipie, używa VexRiscv jako domyślnego procesora. Projekt Linux on LiteX VexRiscv uruchamia Linuksa na tanich płytach FPGA, a rdzeń obsługuje również Zephyr i FreeRTOS, dwa systemy operacyjne dla urządzeń wbudowanych.
