Building a Multi‑Guest Virtualized System with Bao on CVA6 in Automotive
summary
Hands‑on build of a multi‑guest system on a CVA6 (MCU, no MMU) using the Bao hypervisor, QEMU/docker flows and FPGA bitstreams; the workshop implements CVA6 (MCU, no MMU) + Bao hypervisor with the ratified supervisor‑level PMP extensions and the hypervisor SPMP plus second‑stage SPMP + AIA for interrupts, runs a Zephyr guest and a bare‑metal guest connected by a shared‑memory IPC, and exposes the real constraint that limited PMP entries force bitstream switches and single‑core time‑sharing where a single register toggles guest PMP contexts.
AI-written summary · about
chapters (13)
- 0:00Introduction and welcome
- 2:13Consolidation trend in automotive
- 5:25Virtualization as key enabler
- 9:05Why Bao hypervisor for MCUs
- 11:12RISC-V virtualization primitives
- 14:48Workshop goals and setup
- 22:08Running milestone zero
- 33:25Configuring milestone one
- 45:29Running milestone one demo
- 52:31Milestone two and IPC
- 57:41Final demo and results
- 58:23Key takeaways and next steps
- 1:00:21Q&A session
related talks
18mZVM: Zephyr-based Virtual Machine
14mAn Open-Source CVA6S+ High-Performance, Cache-Coherent Cluster for 64b Automotive MPUs
36mShared Virtual Addressing for High Performance Arm Infrastructure Platforms
54mCombat complexity - build your own open OS and hardware
33mNext Generation Xen Architecture for Automotive
32mDeveloping the RISC-V Hypervisor Extensions in QEMU
31mDebugging Tools and Techniques for Virtualized/Containerized Automotive Systems
11mQEMU Based Hardware Modeling Of A Multi Hart RISC V Based FPGA With Execution Contexts Free...
