新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 中国项目组目标:在AMD Zen处理器上运行RISC-V代码

中国项目组目标:在AMD Zen处理器上运行RISC-V代码

—— 为什么不为 x86 CPU 重写代码呢?
作者: 时间:2025-04-11 来源:Toms hardware 收藏

上个月,一个 Google 安全研究人员团队发布了一个工具,该工具可以修改基于 Zen 微架构的 处理器的微码,即 Zentool。虽然这是一个安全漏洞,但对某些人来说,这是一个机会:来自中国某项目组的成员正在举办一项竞赛,旨在为  基于 Zen 的现代 CPU 开发微码,使其能够本地执行 程序。最终目标可能是使用现有的芯片构建终极 CPU。

本文引用地址:https://www.eepw.com.cn/article/202504/469319.htm

x86 是大约 48 年前开发的复杂指令集计算机 (CISC) 指令集架构 (ISA)。但是,在内部,现代 x86 内核依赖于运行精简指令集计算机 (RISC) ISA 的专有引擎来处理复杂的指令。内部 RISC ISA 没有记录在案,但它们通常应类似于众所周知的 RISC ISA,例如 Arm 或 。CPU 微码是一个低级层,它将复杂的 x86 CISC 指令转换为 CPU 硬件执行的简单类似 RISC 的内部指令。CPU 微码只能由 CPU 供应商修改,但有时情况并非如此,显然 的 Zen 1/2/3/4 微码的某些部分可以使用 Zentool 进行更改。

简辰项目成员希望找到可以在现代处理器(例如 EPYC 9004 系列)上修改 AMD 的 Zen CPU 微码以执行 RISC-V 二进制文件的人。与使用相同硬件的仿真相比,该补丁有望实现 RISC-V 程序的直接执行或显著提高其运行时速度。该作品必须使用 Coremark 或 Dhrystone 等 RISC-V 版本的基准测试。完整的提交包括二进制文件或源、配置文件、依赖项和测试说明。如果在 6 月 6 日截止日期之前仅提交二进制文件,则必须稍后通过拉取请求添加相同的源。获胜者将获得 20,000 日元(约合 2,735 美元)。

AMD 的 EPYC 9004 系列和类似处理器提供的性能和内核数量在当前可用的基于 RISC-V 的处理器上无法实现,因此在 EPYC 上执行专有的 RISC-V 程序是一个合理的想法。然而,Ycombinator 的人指出,微码旨在修复内部错误,而不是完全取代前端 ISA,甚至不清楚微码是否可以完全重写。

早在 2010 年代中期,AMD 就计划同时提供 x86-64 和 Armv8-A Zen CPU(AMD 首席架构师 Mike Clarke 最近召回了这一点),因此很可能有一个支持 Aarch64 前端 ISA 的 Zen 1 微架构微码。也就是说,Zen 1 CPU 可以具有多个微码层“插槽”,一个支持 x86-64,另一个支持 Aarch64。但我们怀疑情况是否如此,因为现代 CPU 具有非常彻底的硬件性能优化,其中包括微码和内核其余部分之间的硬线优化。AMD 几乎没有开发过支持 Zen 64/2/3/4 处理器的 Aarch3 或 RISC-V 的微码,因此这些 CPU 的微码层严格来说是 x86-64,几乎没有足够的微码空间从头开始重写它们。

“这是不可能实现的,”一位名叫 Monocasa 的评论者写道。“没有足够的可重写微码来做到这一点,即使是一个超级慢的黑客攻击。即使所有微码都是可重写的,微码也是现代 x86 内核上的一种后备路径,快速路径是 x86 指令的硬连线解码。即使情况并非如此,微码解码和跳转本身也是针对 x86 指令格式的硬连线。即使情况并非如此,微作也非常非 RISC。

一位评论者批评了比赛形式,认为这是一种以不到 3,000 美元的薪水完成复杂工作的方法。



评论


相关推荐

技术专区

关闭