《006--刘志伟.pdf》由会员分享,可在线阅读,更多相关《006--刘志伟.pdf(21页珍藏版)》请在三个皮匠报告上搜索。
1、QEMU for RISC-V 的整体进展刘志伟阿里巴巴达摩院 技术专家Contents目录整体进展和推动力量QEMU for RISC-V支持情况01以 Profile 等5个特性为例QEMU for RISC-V最新特性介绍02社区未来一年的工作未来规划和展望03QEMU 对 RISC-V 的支持概况VirtOpentitanShaktiSpike7个开发板动态厂商裸Profile22个CPUmaxRV64C906U54RV32IRV64IRVA22S642个ProfileRVA22RVB23RVA23RVA22S64RVA22U64RVB23U64RVB23U64RVB23U64RVB2
2、3U64110个扩展RV标准扩展草案扩展厂商扩展x-jZicondZcbIAZbbZstcMVVentanaXuanTieQEMU for RISCV 推动力量组织协作社区组织及工作职责厂商扩展设备重点工作项Gap分析制定RISC-V社区的目标技术讨论的主要场所代码仓库的管理QEMU社区RISC-V QEMU SIG公司和其他组织RISEQEMU for RISCV 推动力量开发活跃度评价开发者参与情况提交数评审数开发者数目和其他ARCH的对比历年数据对比010020030040050060019-2020-2121-2222-2323-24提交开发者RISC-V年度代码提交和开发者数量年份8
3、070605040302010031932445486525546449879开发者数量提交数量2023-2024年度各架构代码提交占比ARMRISC-V1386LoongArchPPCARMRISC-V1386LoongArchPPC17.9%29.0%17.1%25.2%10.8%36QEMU for RISCV 进展最近一年合入的重要特性RISCV架构的工作进展CPUaccelTCGKVMVector CryptoProfileDeviceAIAMachineFirmwareACPISMBIOSVendor建立Profile支持机制建立加速器机制完善动态XLEN支持Vector cryp
4、to,AIA,ACPI等重要扩展在PMU,调试等方面也有了进一步的支持完善了对厂商扩展的支持完善了host探测机制,在后端支持了B扩展QEMU for RISCV 进展社区在进行的工作RISCV架构的工作进展CPUDeviceMachineRV32 CPU on RV64-QEMUPointer maskCFISMMTTIOMMUIOPMPIOMTT实现IOMMU,IOPMP,完善对虚拟化的支持实现SMMTT,IOMTT等,支持机密计算实现CFI,Pointer Masking等安全特性TCG后端支持VectorQEMU for RISCV最新特性介绍Profile的支持Profile机制特性
5、可以作为属性存在(-cpu rv64,rva22s64=on),也可以作为cpu存在(-cpu rva22s64)只实现强制扩展支持继承意义开发者可以聚焦Profile的实现局限难以被直接使用。可以尝试通过扩展依赖直接打开M态扩展无法用于厂商CPU的初始化。厂商CPU通常是支持Profile的。加速器机制意义保持主干代码的统一,屏蔽不同加速器的实现差异提高模块化程度机制动态模块加载,根据参数动态选择加速器体系结构无关提供和体系结构相关两个层次探索方向每个CPU子类设计一个加速器 TYPE_OBJECT_TYPE_ACCEL_CPUtcg-riscv-cpukvm-riscv-cpuTYPE_A
6、CCELTYPE_ACCEL_OPSkvm-opstcg-opstcg-accelkvm-accel体系结构无关体系结构相关QEMU for RISCV最新特性介绍加速器机制加速器机制类初始化实例初始化具现化复位接口和共用数据域初始化TCG加速器实例初始化KVM加速器实例初始化创建并设置动态属性设备初始化实例后初始化设备后初始化创建实例对象设备具现化KVM加速器具现化TCG加速器具现化TCG加速器类初始化注册tcg_ops(比如填充TLB)注册不同的动态属性处理动态属性要求的不同资源CPU初始化的中加速器机制QEMU for RISCV最新特性介绍QEM