-
Notifications
You must be signed in to change notification settings - Fork 6
KVM RISC V 64bit on FireSim
Currently, we can boot RISC-V 64bit SMP Guest using KVM RISC-V on FireSim. The FPGA design is based on Rocket core with H extension enabled. The Rocket-H design is developed by @sandro2pinto & @josecm and available in Firesim Framework. This document will focus on the instructions on how to build/run various components to boot Guest Linux using KVM RISC-V.
To achieve this, we need following components:
- Rocket core RISC-V Hypervisor Extension enabled image in FireSim
- OpenSBI Firmware
- Common Host & Guest Kernel
- KVMTOOL
- Host RootFS with KVMTOOL and Guest Kernel
The below sub-sections provide detailed steps to build and run RISC-V KVM on FireSim. All components except FireSim require a RISC-V 64bit cross-compiler so for we use Linux multilib toolchain from RISC-V GNU Compiler Toolchain project (Refer, https://github.com/riscv/riscv-gnu-toolchain). If you have a different RISC-V 64bit cross-compiler then set CROSS_COMPILE environment variable appropriately in steps below.