FRV2000 MCU Core: A RISC-V @ FPGA

 

Introduction

 

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.

License

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.

 

© 2020 by PulseRain Technology, LLC.