Building a Full-System RISC-V Simulation Platform from Scratch
- Time
- 2026-08-09 12:10 ~ 12:40
- Speaker
- 莊易騰, 蕭珮珊
- Room
- TR515
- Co-write
Abstract
Inspired by open-source processor projects such as XiangShan, BOOM, and CVA6, we built a RISC-V full-system simulation platform from scratch. The goal of this platform is to support processor design, software deployment, RTL verification, and performance exploration. It includes a RISC-V instruction set simulator capable of booting Linux and FreeRTOS, and has successfully integrated two in-house RTL RISC-V cores: a 6-stage in-order processor capable of booting Linux, and an 11-stage out-of-order processor capable of booting FreeRTOS.
At the system level, we use Verilator to compile the RTL core into a C++ model, and use SystemC to build the bus and peripheral devices. This allows the RTL design to perform full-system simulation at the C++ level and successfully boot within one hour. To accelerate processor development, we also built a co-simulation mechanism. Whenever the core commits an instruction, the architectural state is compared against the instruction set simulator in real time. When an error occurs in the core, the simulation can stop immediately and provide debugging information.
In this talk, we will share the architecture of the platform, our experience booting Linux and FreeRTOS, the RTL co-simulation debugging flow, and how we implemented a high-performance non-blocking cache model in C++ with configurable cache size, associativity, hit latency, replacement policy, and prefetcher. We will also demonstrate how Konata can be used to observe the pipelined behavior of the core and cache, and how DRAMSys is integrated to perform performance evaluation under conditions closer to a real system.
Speaker
莊易騰
畢業於國立成功大學電機工程研究所,主要研究領域為 RISC-V CPU Design、處理器微架構設計與 performance modeling。研究期間專注於 RISC-V 處理器核心、全系統模擬平台、RTL 驗證流程與快取/記憶體系統效能評估,並具備從指令集模擬器、RTL Core、Verilator/SystemC 模擬環境,到 Linux/FreeRTOS 開機與 co-simulation debug 流程的實作經驗。
對開源硬體、RISC-V 生態系與處理器設計工具鏈有高度興趣,持續關注 XiangShan、BOOM、CVA6 等開源處理器專案,並希望透過實作與分享,讓更多人了解如何從軟體、硬體與系統層級切入 CPU 設計與效能分析。
蕭珮珊
我是國立成功大學電機工程研究所碩士生,研究方向聚焦於電腦架構、RISC-V 設計以及 CPU 微架構最佳化研究。 我目前於電腦架構與系統實驗室(Computer Architecture and System Laboratory, CASLab)進行研究。
目前我的主要研究內容包括 RISC-V CPU 微架構設計、RTL 實作,以及 Linux/FreeRTOS 移植,並著重於前端與記憶體子系統最佳化,例如分支預測與快取微架構。 我透過架構層級的設計探索、效能分析,以及硬體/軟體協同設計技術,致力於提升系統效率。