PicoRV32
Ecosistema RISC-VPicoRV32 è un core RV32IMC scritto in Verilog e progettato per occupare la minor area FPGA possibile. Claire Wolf, autrice della suite di sintesi Yosys, lo ha scritto, e spesso funge da processore ausiliario all'interno di chip più grandi.
Panoramica
PicoRV32 è un piccolo core RISC-V scritto in Verilog, un linguaggio per descrivere l'hardware. Un core è la parte di un chip che esegue le istruzioni. Implementa RV32IMC, il set di istruzioni di base a 32 bit con moltiplicazione e istruzioni compresse, e può essere ridotto a RV32E, una versione con meno registri.
Un FPGA è un chip che può essere riconfigurato per comportarsi come un circuito diverso. Sui FPGA Xilinx 7-Series, PicoRV32 utilizza tra 750 e 2000 lookup table, le celle logiche di base di un FPGA, e funziona a 250-450 MHz. Si connette alla memoria tramite la propria interfaccia semplice o tramite AXI4-Lite, uno standard comune di bus on-chip, e offre interrupt opzionali e un'interfaccia coprocessore per istruzioni personalizzate.
Cronologia
Claire Wolf, la creatrice dello strumento di sintesi Yosys, ha pubblicato PicoRV32 nel 2015. Yosys converte le descrizioni hardware in circuiti, e PicoRV32 è diventato un progetto di test comune per gli strumenti FPGA open source. Il repository è stato spostato nell'organizzazione YosysHQ ed è ora archiviato, e il core non riceve più sviluppo attivo.
Dove viene utilizzato
PicoRV32 funge da processore ausiliario, un core di supporto che esegue attività di controllo all'interno di un design FPGA o di un chip più grande. La sua elevata frequenza di clock gli consente di unirsi a design esistenti alla loro stessa frequenza di clock. PicoSoC, un sistema di esempio incluso nel repository, esegue PicoRV32 su schede FPGA iCE40 a basso costo.
