IPADS主导RISC-V浮点扩展合入国际标准:指令集架构的历史性突破

发布时间:2026/9/4 10:05:48
IPADS主导RISC-V浮点扩展合入国际标准:指令集架构的历史性突破 1. 先把事情讲清楚IPADS团队到底把什么写进了标准1.1 一次让国内体系结构圈子集体亢奋的提交无论是做操作系统、编译器还是CPU设计的人这几天朋友圈应该都被同一条消息刷屏了上海交大IPADS团队主导的RISC-V指令集扩展正式合入了国际RISC-V指令集标准。这个“扩展”不是普通意义上的补丁而是直接在指令集架构层面动了刀。很多读者可能一时半会儿没反应过来这件事的分量。我给你翻译一下RISC-V从2010年在伯克利诞生到现在一直是全球开源硬件运动中最核心的那面旗帜。它的特殊之处在于指令集本身是开放的任何人都可以基于它设计自己的芯片但这不意味着任何人都有资格去改它的标准。能在国际标准组织里提一个扩展提案并且最终被接纳合入这件事的难度和含金量大致相当于你在一个全球开发者共同维护的开源社区里提交了一份patch结果不仅没人喷你反而全票通过还把你的代码直接合进了主线。而IPADS团队这次做的事情恰恰就是这种级别的事。他们主导的是RISC-V在浮点处理、指令集效率优化方向上的一组扩展。直白点说就是从指令集层面去解决“芯片在跑浮点运算时不够快、不够省电”的问题。我始终觉得很多人对RISC-V的理解存在一个误区觉得它只是一个新的CPU指令集和ARM、x86的区别无非是“开源与闭源”。但实际上RISC-V最核心的价值不在“免费”而在“可参与”。x86的指令集是Intel说了算ARM的指令集是Arm公司说了算第三方即使拿到了架构授权也只能在人家划好的圈子里做文章。RISC-V不一样它把定义指令集这件事本身变成了一个开放的、有流程、有博弈、有版本管理的全球协作项目。IPADS这次合入标准的内容就是在这个开放协作框架下完成的一次“中国主导”的架构定义。注意我的措辞是“主导”不是“参与”。一字之差含义差之千里。1.2 技术层面这次进入标准的到底是什么先把专业细节拆开来看。IPADS团队这次主导合入的RISC-V指令集扩展核心焦点在浮点单元场景的指令集效率优化上。更准确地说是围绕浮点指令相关的一组扩展定义。很多年以前芯片设计里有一句老话叫“AI的训练靠显卡AI的推理靠CPU”。这几年随着RISC-V逐步进入高性能计算和AI加速场景浮点运算单元也就是常说的FPU的效率变得越来越重要。FPU负责处理浮点数运算包括加减乘除、开方、比较、类型转换等。别看这些东西听起来像是数学课上的基础概念AI推理、科学计算、区块链哈希碰撞、图形渲染、信号处理全部压在FPU身上。IPADS团队这次的方案对于浮点运算指令集的定义做了重要的扩展和优化。具体到实现层面涉及到浮点寄存器、状态寄存器之间的协同、新的异常处理行为以及如何在保持指令集向后兼容的前提下显著降低浮点运算在上下文切换和中断处理时的开销。如果你对操作系统的调度机制有了解会明白“上下文切换开销”这几个字的份量。每一次CPU从一个任务切换到另一个任务都需要保存当前任务的寄存器状态、程序计数器等即使是做嵌入式开发这也是一个再熟悉不过的场景。而在浮点密集型的应用里FPU的寄存器数量多、宽度大保存和恢复的成本比其他通用寄存器高得多。IPADS团队在指令集层面提供的解决方案本质上就是降低这种开销的架构手段。但这只是技术细节的表层。更深一层的意义在于当这类扩展被写入RISC-V国际标准后所有基于RISC-V的处理器、编译工具链、操作系统、虚拟化平台都会向这个方向演进。也就是说这件事影响的不是某一个团队、某一个产品而是整个RISC-V生态。1.3 为什么说这是“历史的突破”这个标题里“历史性突破”四个字不是媒体夸张。回看过去几年RISC-V国际标准的发展历程来自国内的贡献虽然在不断增加但“主导一个扩展并成功合入标准”,依然是一件凤毛麟角的事。原因不太好听但很真实过去国内在基础架构领域的积累整体偏薄。很长一段时间里我们的芯片产业走的是“引进—消化—再创新”的路子从ARM拿授权、从Intel买产品架构定义、生态规则、工具链标准基本都由别人说了算。在这样的格局下国内团队很难有资格去主导国际通用的架构标准制定。RISC-V把整个游戏规则改了。它把指令集的“立法权”开放了出来任何团队、任何公司、任何高校只要你拿得出像样的技术方案、经得起全球社区的review和质疑你就可以把自己的设计写进标准让全世界的人用你定义的规则去造芯片。这件事IPADS做到了实处这是零到一的跳跃所以用“历史性突破”来描述一点都不为过。2. 为什么IPADS能做成这件事2.1 RISC-V标准制定到底是怎么运作的聊IPADS为什么能成功之前得先弄明白RISC-V国际基金会组织的工作机制否则你很难理解这项工作的难度。RISC-V国际基金会的标准制定不是几个大佬关起门来拍板而是通过一个个技术小组Task Group来推进的。每个小组关注一个技术方向比如向量扩展、安全扩展、虚拟化、浮点性能等等。任何人、任何公司只要加入基金会都可以申请加入小组参与讨论。但要注意两点第一标准提案要经得起全球范围内来自芯片公司、工具链开发者、学术机构的反复评审第二最终合入标准需要一定比例的投票通过而不是提案人自己觉得行就行。这个机制的总体取向是“保守的”。它对向后兼容的要求极高对指令编码空间的使用非常慎重对每一条新指令是否有足够的使用场景都有严格考量。因为一旦某条指令写进标准就意味着未来几十年里每一颗落地的RISC-V芯片都要为它买单CPU设计者要为它付出晶体管开销编译器要为它做调度优化工具链要为它更新指令编码。在这种语境下任何轻率的提案都是不可能被接受的。IPADS团队能走到最后说明他们的方案在底层逻辑、指令编码设计、效能收益上都经受住了全球同行的严苛检验。这一点值得所有做技术的人尊敬。2.2 这个团队不是第一次让人意外说实话上海交大IPADS团队的名气在业内一直是有的实验室全称是“并行与分布式系统实验室”长期深耕操作系统、虚拟化、系统安全方向在学术界和工业界的产出都很亮眼。如果只是看他们发了多少篇顶会论文其实还不足以让人真正敬畏因为发论文和改标准是两种完全不同的能力。论文考察的是“新”你提出一个别人没做过的东西证明它有效就是一篇好论文。但标准考察的是“稳”、是“兼容”、是“对未来所有可能性的预判”。一条指令设计出来不能只看它在某个benchmark上快了20%还要看它在未来所有处理器实现里都不会引入歧义不会导致某些芯片厂商实现出来的行为和另一些厂商不同。这种严谨度是系统研究领域长期训练出来的功底。IPADS团队做操作系统和虚拟化研究了这么多年对“指令集—编译器—操作系统—应用”这条完整软件栈有比一般芯片设计团队更深刻的理解。做CPU设计的人往往更关注硬件资源怎么省、频率怎么提但IPADS做系统的脑子里面始终有一根弦指令集设计出来是要给软件用的如果某条指令让编译器不知道怎么生成代码让操作系统不知道怎么处理异常那再厉害的硬件设计也等于白搭。这种“软件视角”可能正是他们能提出被全球标准组织接受的浮点扩展方案的核心原因。2.3 从改开源代码到定义架构规则是质的跃迁在IPADS之前国内很多团队对RISC-V的参与方式停留在“用”和“改”的层面用开源的RISC-V处理器核做芯片改一改工具链适配自家的SoC或者基于openEuler、Debian等系统做软件迁移。这些工作当然有价值但它们属于“生态应用层”是在别人的架构规则框架内做优化。IPADS这次做的事情是直接跳到了规则的制定层。以前你用的是别人定义的指令现在你定义指令让别人用。这个跃迁的意义不是单个技术项目能衡量的。做一个类比如果说RISC-V是一套全球通用的“芯片语言语法”那过去我们的角色是“用这套语法写句子的人”写得再好也只是表达者。而IPADS这次的角色是“参与修订语法本身的人”直接改了语言的规则。3. 浮点扩展项目拆解他们到底在解决什么真实痛点3.1 学术界和产业界共同面对的一道坎我前面提到浮点运算很消耗CPU资源。但“消耗资源”其实不够准确更核心的问题是“浮点上下文的切换成本”。做过系统软件的人对这个应该不陌生操作系统在调度线程时需要保存和恢复每个线程的浮点寄存器状态否则线程A在FPU里留下的中间结果就会污染线程B的运算。这类内容在经典教材的“上下文切换”章节里都提到了。传统做法里很多操作系统选择偷懒干脆在每一次上下文切换时无条件保存全部浮点寄存器。毕竟浮点寄存器别名多、数量大做一次全量保存复位虽然痛但是简单、不会出错。然而在AI推理、高频交易、科学计算这类场景里线程切换本来就极其频繁每次切换都全量保存浮点状态性能开销会变得非常难看。更麻烦的是RISC-V规范里浮点状态和管理控制相关的寄存器还有一个“状态依赖”的问题。指令集标准如果表达不清晰就会导致操作系统不知道该在什么时机保存什么、可以延迟保存什么、什么时候必须立即处理异常。这就像一份合同里的模糊条款每个律师看了都有自己的解读执行起来就会出问题。IPADS团队在指令集层面的扩展核心就是要把这些问题从标准和指令编码层面解决掉定义更清晰的异常处理路径、提供更细粒度的浮点状态控制、优化上下文切换时的指令流。他们做的事情不只是“提几个新的指令码”而是在定义一套新的“行为和规则的契约”。3.2 从提案到合入标准工作的真实流程很多读者可能不熟悉把一个扩展从原始想法变成RISC-V官方标准的一部分周期不是以月计而是以年计的。大致流程如下首先是前期调研要在RISC-V基金会的技术小组里发起讨论说明你发现的问题、你的方案思路、已经做过的实验数据争取其他成员对这个方向的认可。接着是提案撰写把你的扩展设计以RISC-V标准要求的规范文档形式写下来包括指令编码、操作语义、异常行为、与现有指令的交互关系全都要写清楚。然后是评审阶段这是整个流程里最“残酷”的部分。全球范围内的芯片架构师、编译器工程师、操作系统专家会轮番轰炸你的方案。有人会质疑指令编码空间分配不合理有人会指出你的扩展和现有标准在边界情况下有冲突有人会拿着PostgreSQL或Swipe的负载测试数据说你的方案收益不明显。每个问题都必须正面回答要么修改设计要么给出足够有说服力的论据。之后是软硬件验证阶段要让别人相信你的扩展真的有用光靠纸面推演是不够的。你需要把它实现在模拟器、FPGA或真实芯片里让工具链能够生成对应的指令序列让操作系统能够正确处理相关状态把所有实现层的细节问题逐一打通。最后才是投票合入阶段走正式的投票流程通过后你的扩展才会正式被锁定为RISC-V标准的一部分。IPADS团队能走完全程说明他们在软硬件协同设计上的功底是真材实料的。能写好论文的团队很多能干到把标准啃下来的团队少之又少。3.3 浮点扩展和AI加速、RISC-V笔记本之间有哪些潜在关联标题里提到RISC-V FPU、指令集架构这些热词背后其实是更大的产业叙事。过去一年RISC-V生态里最炙手可热的话题有两个一个是面向AI应用的向量扩展RVV另一个是RISC-V笔记本和高性能桌面芯片的进展。向量扩展和浮点扩展之间是强相关的——向量运算单元处理的数据绝大多数是浮点类型浮点指令的效率直接决定了向量扩展的实战表现。IPADS在浮点指令集层面的优化对于RISC-V往AI推理端走的整体规划来说客观上提供了更扎实的底层支撑。RISC-V笔记本方面很多新发布的SoC产品都已经把支持高性能计算、复杂多媒体处理作为重点卖点。这些场景全部绕不开浮点运算效率和任务切换效率。从这个角度看IPADS此次合入标准的扩展可能是未来RISC-V往更高性能场景渗透时不可或缺的一块拼图。4. 对国内开发者和整个生态意味着什么4.1 从“跟随者”到“共同定义者”的身份转变如果说以前的RISC-V对于国内开发者而言是“好用、免费、无套件”的开源工具那么IPADS这次合入标准之后整个叙事已经开始改变。它意味着国内团队在这个生态中的身份正在从“使用者”“跟随者”慢慢转换成“共同定义者”。这个身份转变带来的最直接红利是话语权。过去RISC-V指令集的每一条扩展都带着其他团队的审美烙印、技术取舍和设计哲学。好的设计固然可以学习但学习永远是二手的直接参与定义才是第一手的。当国内做了越来越多这种从0到1的贡献整个生态也会越来越习惯看到来自中国的技术方案这比任何宣传都更有说服力。更深一层的产业影响是未来的国产CPU可以有更底层的主动权。过去我们用ARM架构怎么演进、支持什么新指令、什么时候引入新特性全是Arm说了算。如今在RISC-V上国内团队可以通过主导扩展的方式让指令集层面的演进更贴合国内市场的真实需求。比如面向AI负载做定制优化、面向云端场景做虚拟化增强、面向嵌入式场景做功耗控制这些需求都可以通过主动定义扩展来实现。4.2 对工具链、操作系统和编译器生态的连带影响指令集层面定义好之后带动的是一整条产业链的连锁反应。编译器要跟进GCC和LLVM必须能正确生成新的指令序列而且在寄存器分配、指令调度上要能真正把新扩展的性能优势发挥出来。操作系统要适配Linux内核需要正确处理新扩展带来的寄存器状态变化虚拟化层也要能在Guest和Host之间正确切换上下文。调试器和性能分析工具同样要跟上否则开发者拿到支持新扩展的芯片却不知道该怎么调试、怎么优化生态的落地效率就会大打折扣。这正是RISC-V生态里常说的一句话指令集只是种子工具链和软件栈才是土壤。IPADS团队作为系统领域的研究团队对这条软件栈的理解绝对不浅。他们主导的扩展在设计之初就会把工具链和操作系统的适配难度降到最低这种“从系统视角设计指令集”的路线对下游生态的友好程度会高很多。4.3 我比较关心的这件事对普通开发者的“传染力”最后这一段是纯粹的个人观察可能也是很多开发者看完新闻后真正想问的这跟我有什么关系我觉得关系是绕不开的。如果你是做嵌入式开发的未来几年基于RISC-V的MCU芯片会越来越多出现在你的项目里这些芯片的浮点性能和上下文切换效率会有肉眼可见的提升。如果你是做底层系统软件的标准合入意味着Linux内核、QEMU等软件栈会逐步引入对新扩展的支持你在做中断优化、虚拟化适配时会有更多新的工具可用。如果你是做AI应用开发的长期来看RISC-V芯片的AI推理能力会因为底层指令集更顺手而逐步增强这会真实影响你在NPU上做算子优化时的选择空间。所以IPADS这次做的事表面上是一个象牙塔里的学术成果但实际上它在为未来几年整个RISC-V生态的硬件和软件演进做地基。我们现在用不上不代表两年后还用不上。5. 延伸思考指令集研究为什么这么难5.1 设计空间极小动辄“牵一发动全身”在PC世界待过的人都知道指令集设计是一门极其烧脑的学问真正的“戴着镣铐跳舞”。首先编码空间是极其有限的。RISC-V基础指令集的编码长度大部分情况下是32位整个编码空间里哪些位置留给基础指令哪些留给标准扩展哪些预留给厂商自定义扩展事先都有严格的规划。每新增一条扩展指令都要如履薄冰地考虑它对整个编码空间的影响。然后是兼容性问题。指令集标准一旦发布基本就“冻结”了。Intel到今天还在为x86的指令集背负沉重的历史包袱就是最好的反面教材。x86里的很多指令当时设计时看起来合理后来发现效率不高、语义模糊但因为历史原因没法轻易修改只能为了兼容继续保留。RISC-V的国际标准组织对这件事极其警惕宁可扩展上得慢一点也绝不轻易锁定一个设计不完善的指令。IPADS团队的设计能被接受意味着它在编码空间分配、语义定义、边界行为处理上都经得起最严苛的审视。这需要顶尖的架构功底也需要足够的实战经验积累。5.2 一个真实的案例为什么“能跑”离“能定标准”还差很远说一个比较能反映问题复杂度的真实情况RISC-V的向量扩展RVV前后经历了差不多6年时间才真正走向成熟。RVV 0.7.1版本的时候很多芯片公司已经开始用开源实现做芯片了但等RVV 1.0标准发布之后所有基于0.7.1的芯片设计方案全部作废因为1.0的指令编码、向量寄存器布局、尾端处理逻辑和0.7.1完全不兼容。这件事在社区里引发了巨大的争议。有些芯片公司的方案已经流片回来了结果因为标准变了整颗芯片变成了“非标产品”性能和软件生态都大打折扣。而之所以会这样就是因为0.7.1版本在设计时对向量长度未知、尾部元素处理等边界情况考虑不足导致后来不得不推倒重来。这个例子充分说明了指令集标准制定的难度和严肃性。IPADS团队能一次走通标准合入的完整流程而且合入的扩展还涉及如此复杂的浮点状态管理这个成就的含金量是实打实的。5.3 芯片设计是长跑不是百米冲刺再往深了说IPADS这次合入标准给国内技术圈最大的启示可能不是技术层面的而是心态和认知层面的。过去这些年“卡脖子”“自主可控”成了热门词汇芯片行业获得了海量关注和资源。但越是这个时候越需要清醒地认识到芯片设计、指令集标准、基础软件生态这些方向没有一招制胜的捷径靠的是长期主义的积累。IPADS做了十几年操作系统研究才在RISC-V标准组织里拿到“主导者”的位置。这不是靠某个时间段的突击投入就能实现的而是几代研究生、十几年如一日的知识沉淀、系统能力训练才攒出来的底气。做技术的人尤其是做底层技术的人应该从这个案例里感受到坚持长期价值的力量。6. 这件事给不同人群的启发6.1 对在校学生和刚入门的研究生IPADS的事例告诉在校学生尤其是计算机体系结构和操作系统方向的学生顶会论文只是阶段性的里程碑不是研究的终点。真正有价值的研究是能影响产业、影响生态的东西。如果条件允许不妨把眼光放得更远一点不要只盯着论文录用通知而是在学习阶段就有意识地锻炼系统能力、工程能力试着从完整软件栈的视角去理解硬件设计。RISC-V给了这个时代最好的机会你不用进入一家芯片公司也能通过开源的处理器核、开源的仿真环境、开放的标准提案流程接触到世界级的体系结构研究课题。这种条件是十年前完全不敢想的。6.2 对开发者如果你是一个应用层开发者也许短期内用不到这些底层技术但也值得保持关注。指令集层面的每次演进都会自上而下地改变编译器行为、系统调用接口、运行时的调度策略最终影响你写的每一行代码的性能表现。理解底层架构选择的逻辑能帮你在做技术选型时多一个判断维度在排查问题时多一条排查思路。即使是做应用开发理解CPU的指令集架构对你跑的程序意味着什么也能帮你在复杂的性能问题面前快速定位方向。6.3 对行业观察者从一个更广阔的视角来看IPADS这次成果的价值不应该只是被安放在“国产替代”的叙事框架里去解读。我更愿意把它看作一次中国基础研究者在全球技术舞台上正常发挥的例子——不是靠资源堆砌不是靠特殊照顾而是在开放的全球协作体系中凭硬实力赢得位置。这在过去是稀缺品在未来会越来越常见。像这样正常发挥的案例积累得越多整个产业对基础研究的信任感才越扎实。7. 一些值得持续关注的方向最后落回到RISC-V生态本身。IPADS这次的成就给国内团队做出了一个很好的示范标准合入是一条走得通的路。接下来值得关注的是这条路的延伸方向第一虚拟化扩展方向。国内云计算产业规模庞大如果能有团队在RISC-V虚拟化扩展上做出有分量的贡献对国产云基础设施的意义会非常大。虚拟化涉及内存管理、中断处理、设备直通等复杂话题既是操作系统的传统强项也是IPADS团队的拿手领域有理由期待他们继续发力。第二安全扩展方向。可信执行环境、内存安全、指针认证这些都是当前架构设计的前沿课题。RISC-V在安全扩展上还处于相对早期国内团队完全有机会在这个方向上做出更多有影响力的提案。第三经典RISC-V内核的深度优化。IPADS团队做的是指令集定义这是架构层面的“立法”但如何让指令集在具体微架构上跑得更快还需要大量CPU设计团队跟进。在这条链路里架构师和系统软件专家的协同会越来越紧密这个交叉领域也是未来几年人才需求最旺盛的地方。第四AI向量扩展和浮点扩展的协同演进。RISC-V的向量扩展1.0已经发布但它在AI场景的落地还有很长的路要走。浮点扩展的合入为向量扩展在AI推理场景的铺路提供了更好的基础。未来如果国内团队能在向量扩展的演进上继续发出声音RISC-V在全球AI芯片格局中的分量会再上一个台阶。IPADS团队这次合入标准很可能更像一声发令枪而不是终点的庆祝。RISC-V的标准大厦还远未完工后面还有很多房间等着来自不同团队的声音去填充。