
RVA23规范的发布标志着RISC-V社区的又一重要里程碑。尽管它为大规模部署提供了坚实基础,但创新从未止步,未来几年我们将见证更多扩展和配置文件的推出。 upcoming innovations主要集中在几个关键领域:
本文将深入探讨这些内容,并分析Canonical及更广泛的社区对这些扩展的支持策略。
RISC-V拥有多种安全机制,如内存保护、内存管理和权限级别,但这些主要针对合法程序的正确运行。在恶意攻击风险日益增长的现代计算环境中,这些已显不足。幸运的是,针对此类威胁的多层防御机制正在积极开发中。其中,CFI已于2024年由RISC-V国际组织批准,其他扩展预计在2026或2027年完成批准流程。
CFI是一种轻量级可选扩展,旨在防范返回导向编程(ROP)和调用/跳转导向编程(COP/JOP)等控制流攻击。这类攻击通过改变程序执行流,跳转到代码中意外位置,利用程序二进制中的“小工具”片段执行任意代码。
CFI由两个独立扩展组成:
两者均用于控制程序流,防止跳转到非预期代码位置,并最大限度兼容现有RVA23硬件——若硬件未实现相关扩展,指令将被忽略。不过,在未支持Zimop操作码的预RVA23硬件上,Zicfiss指令会触发陷阱。尽管空操作指令(NOP)对性能和代码大小不理想,但这为软件快速采用(如编译器工具链)提供了灵活性,硬件可用后即可无缝工作。
其工作机制如下:
RISC-V Control-Flow Integrity (CFI) – Ved Shanbhogue, Rivos & George Christou
AI/ML是近年来RISC-V增长最快的领域之一,其应用场景多样,大多依赖大量矩阵运算。不同场景(如小型IoT端点与服务器)对扩展的需求不同,RISC-V提供了三种矩阵扩展方案:集成矩阵扩展(IME)、向量矩阵扩展(VME)和附加矩阵扩展(AME)。
从Canonical视角看,更值得关注的是这些扩展对软件和工具链的影响。操作系统需感知架构状态以处理上下文切换:
在之前的文章中,我们讨论了通过sys_riscv_hwprobe() Linux系统调用检测RISC-V定制指令的方法。该函数可向应用程序返回特定扩展的支持状态,同样适用于矩阵指令。这意味着代码库可编译支持多种实现方案,运行时软件可根据实际情况选择合适实现。
架构的演进是必然的。应用场景变化、新应用涌现以及硅实现复杂度的提升,都推动着RISC-V规范的更新。RISC-V国际组织通过小修订(如RVA23.1)引入可选扩展,既保持长期软件稳定性,又允许创新。这些可选扩展分为两类:
开发选项作为预研阶段引入,旨在探索新功能可行性,而扩展选项则针对特定场景优化性能或功能。
关注微信号:智享开源 ,及时了解更新信息。
原文链接:https://ubuntu.com//blog/evolution-of-the-risc-v-isa-what-next-after-rva23
你必须 登录 才能发表评论.
| 微信捐赠 | 支付宝捐赠 |
|---|---|
![]() |
![]() |
扫码关注公众号:智享开源

还没有任何评论,你来说两句吧!