FRV2000 MCU Core: A RISC-V @ FPGA
Putting MCU core into FPGA is becoming a universal practice these days. However, most MCU soft cores available today are tied to specific FPGA vendors. However, the rising of RISC-V has changed the status quo. And in this regard, PulseRain Technology is now offering the FRV2000 soft core MCUs, which support a variety of RISC-V instruction sets like RV32I and RV32IMC. In addition, to facilitate IoT applications, some of the FRV2000 cores are also security hardened.
2 x 2 Pipeline and Von Neumann Architecture
The FRV2000 MCU core has a Von Neumann memory architecture. Its pipeline is composed of 4 stages, as shown below:
• Instruction Fetch (IF)
• Instruction Decode (ID)
• Instruction Execution (IE)
• Register Write Back and Memory Access (MEM)
However, unlike traditional pipelines, FRV2000 MCU’s pipeline stages are mapped to 2 x 2 layout, as illustrated above.
In the 2 x 2 layout, each stage is active every other clock cycle. For the even cycle, only IF and IE stages are active, while for the odd cycle, only ID and MEM stages are active. In this way, the Instruction Fetch and Memory Access always happen on different clock cycles, thus to avoid the structural hazard caused by the single port memory.
Thanks to using single port memory to store both code and data, the FRV2000 soft MCU is quite portable and flexible across all FPGA platforms. Some FPGA platforms, like the Lattice iCE40 UltraPlus family, carry a large amount of SPRAM with very little EBR RAM. And those platforms will find themselves a good match with the PulseRain FRV2xxx when it comes to soft core MCU.
PulseRain RISC-V MCU GitHub Repository
PulseRain FRV2100 Soft Core Processor GitHub Repository
MCU Master Platform - Mock FPGA Platform for PulseRain_RISCV_MCU master branch
FPGA Platform - Lattice MachXO3D Breakout board (Rev A)
FPGA Platform - Step FPGA (Intel Cyclone 10 LP)
FPGA Platform - Efinix Trion T20
Hardware Base Bootloader
PulseRain RTL Library
PulseRain RISC-V board manager package for Arduino IDE
This IP is offered. in dual licenses: an open source license (GPL v3) and a commercial license. Please contact us to request a quote if you are interested in obtaining the commercial license.