Next Article in Journal
A Critical Appraisal of Various Implementation Approaches for Real-time Pothole Anomaly Detection: Toward Safer Roads in Developing Nations
Previous Article in Journal
A New Approach for Carrying Out Sentiment Analysis of Social Media Comments Using Natural Language Processing
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Proceeding Paper

A High-Level Synthesis Approach for a RISC-V RV32I-Based System on Chip and Its FPGA Implementation †

Electrical and Computer Engineering, Florida Polytechnic University, Lakeland, FL 33805, USA
Presented at the 10th International Electronic Conference on Sensors and Applications (ECSA-10), 15–30 November 2023; Available online: https://ecsa-10.sciforum.net/.
Eng. Proc. 2023, 58(1), 72; https://doi.org/10.3390/ecsa-10-16212
Published: 15 November 2023

Abstract

In this paper, we present a RISC-V RV32I-based system-on-chip (SoC) design approach using the Vivado high-level synthesis (HLS) tool. The proposed approach consists of three separate levels: The first one is an HLS design and simulation purely in C++. The second one is a Verilog simulation of the HLS-generated Verilog implementation of the CPU core, a RAM unit initialized with a short assembly code, and a simple output port which simply forwards the output data to the simulation console. Finally, the third level is the implementation and testing of this SoC on a low-cost FPGA board (Basys3) running at a clock speed of 100 MHz. A sample C code was compiled using the GNU RISC-V compiler tool chain and tested on the HLS-generated RISC-V RV32I core as well. The HLS design consists of a single C++ file with fewer than 300 lines, a single header file, and a testbench in C++. Our design objectives are that (1) the C++ code should be easy to read for an average engineer, and (2) the coding style should dictate minimal area, i.e., minimal resource utilization, without significantly degrading the code readability. The proposed system was implemented for two different I/O bus alternatives: (1) a traditional single clock cycle delay memory interface and (2) the industry-standard AXI bus. We present timing closure, resource utilization, and power consumption estimates. Furthermore, by using the open-source synthesis tool yosys, we generated a CMOS gate-level design and provide gate count details. All design, simulation, and constraint files are publicly available in a GitHub repo. We also present a simple dual-core SoC design, but detailed multi-core designs and other advanced futures are planned for future research.
Keywords: high-level synthesis; RISC-V; system on chip; FPGA; multi-core architectures high-level synthesis; RISC-V; system on chip; FPGA; multi-core architectures

Share and Cite

MDPI and ACS Style

Toker, O. A High-Level Synthesis Approach for a RISC-V RV32I-Based System on Chip and Its FPGA Implementation. Eng. Proc. 2023, 58, 72. https://doi.org/10.3390/ecsa-10-16212

AMA Style

Toker O. A High-Level Synthesis Approach for a RISC-V RV32I-Based System on Chip and Its FPGA Implementation. Engineering Proceedings. 2023; 58(1):72. https://doi.org/10.3390/ecsa-10-16212

Chicago/Turabian Style

Toker, Onur. 2023. "A High-Level Synthesis Approach for a RISC-V RV32I-Based System on Chip and Its FPGA Implementation" Engineering Proceedings 58, no. 1: 72. https://doi.org/10.3390/ecsa-10-16212

APA Style

Toker, O. (2023). A High-Level Synthesis Approach for a RISC-V RV32I-Based System on Chip and Its FPGA Implementation. Engineering Proceedings, 58(1), 72. https://doi.org/10.3390/ecsa-10-16212

Article Metrics

Back to TopTop