PicoRV32
Ekosystem RISC-VPicoRV32 to rdzeń RV32IMC napisany w Verilogu i zaprojektowany tak, aby zajmował jak najmniejszy obszar FPGA. Napisała go Claire Wolf, autorka zestawu do syntezy Yosys, i często służy jako procesor pomocniczy wewnątrz większych układów.
Przegląd
PicoRV32 to mały rdzeń RISC-V napisany w Verilogu, języku do opisywania sprzętu. Rdzeń to część układu, która wykonuje instrukcje. Implementuje RV32IMC, 32-bitowy bazowy zestaw instrukcji z mnożeniem i instrukcjami skompresowanymi, i może zostać zredukowany do RV32E, wersji z mniejszą liczbą rejestrów.
FPGA to układ, który można przekonfigurować tak, aby zachowywał się jak inny obwód. W układach FPGA Xilinx serii 7 PicoRV32 wykorzystuje od 750 do 2000 tablic look-up, podstawowych komórek logicznych FPGA, i działa z częstotliwością od 250 do 450 MHz. Łączy się z pamięcią przez własny prosty interfejs lub przez AXI4-Lite, powszechny standard magistrali wewnątrzukładowej, i oferuje opcjonalne przerwania oraz interfejs koprocesora dla niestandardowych instrukcji.
Historia
Claire Wolf, twórczyni narzędzia do syntezy Yosys, opublikowała PicoRV32 w 2015 roku. Yosys przekształca opisy sprzętu w układy, a PicoRV32 stał się popularnym projektem testowym dla narzędzi FPGA o otwartym kodzie źródłowym. Repozytorium zostało przeniesione do organizacji YosysHQ i jest teraz zarchiwizowane, a rdzeń nie jest już aktywnie rozwijany.
Gdzie jest używane
PicoRV32 pełni rolę procesora pomocniczego, rdzenia wspomagającego, który wykonuje zadania sterujące wewnątrz większego projektu FPGA lub układu. Jego wysoka częstotliwość taktowania pozwala mu dołączyć do istniejących projektów z ich własną częstotliwością taktowania. PicoSoC, przykładowy system dołączony do repozytorium, uruchamia PicoRV32 na tanich płytach FPGA iCE40.
