支持RISC-V,EDA有两把刷子

类别:业界动态  出处:网络整理  发布于:2025-07-28 10:36:02 | 83 次阅读

  RISC-V具有高度可定制、模块化、场景多样的特点,在为计算产业带来高效、灵活、开放、易协作等一系列优势的同时,也对芯片的验证调试带来新的考验。在近日举行的第五届RISC-V中国峰会(以下简称“峰会”)上,如何从IP、EDA等设计工具层面,提升RISC-V处理器的开发、验证和调试效率,以充分发挥RISC-V指令集的优势,成为业界关心的焦点。
  新的验证方法学:提升RISC-V处理器验证效率和质量
  仿真验证是芯片实现设计目标和功能正确的必备步骤,直接影响芯片设计的成功率。在峰会展区,记者在思尔芯、芯华章等EDA企业展台都看到了原型验证平台。据思尔芯工作人员介绍,基于FPGA原型验证平台和操作系统,RISC-V设计企业可以将写好的代码通过FPGA进行硬件实现和模拟,继而开展功能开发和Debug,完整这套流程后就可以进行客户演示。“这样的好处有两个,一是给客户信心;二是客户可以将这套完整的、堪比流片后的环境融入自己的系统,做进一步的开发。”
  目前,RISC-V处理器常用的仿真框架是协同仿真验证,其原理是将待测设计(DUT)与参考模型(REF)一起仿真。DUT每执行一条指令,REF也执行一条指令,并且对比二者执行指令之后的结果是否一致。
  但RISC-V的技术趋势,正在给协同仿真验证带来挑战。首先是RISC-V指令集的复杂度迅速膨胀。比如RVA23有33个必选扩展、830页指令集手册,相比2019年已经翻倍,且不同的RISC-V扩展有不同的验证需求,导致验证难度提升。其次是处理器的电路仿真速度正在放慢。尤其是常使用的软件仿真,其速度随着处理器规模扩大而大幅下降。
  为了改善芯片验证质量与效率,产业界转向基于Emulator(硬件仿真器)、FPGA的硬件仿真平台,其特点在于将REF部署在Host环境,以软硬件(RTL-Host)通信为核心,利用PCIE、以太网、InfiniBand等连接手段在软件(Host侧)和硬件(RTL侧)之间传递信息,实现了对电路仿真的数量级加速。比如香山团队长期维护的DiffTest框架,已经支持硬件仿真加速。
  但香山团队发现,RTL-Host架构带来的通信开销,限制了DiffTest对香山等复杂处理器的验证加速效果。面向这一瓶颈,香山团队提出了SVM(可综合验证方法),把整个REF映射到FPGA上或者Emulator上,使REF与DUT的通信都在片上完成,从而避免通信开销。
  但SVM架构的构建,也面临一些挑战。对此,香山团队进行了一系列技术和模型创新。
  一是如何确保REF的电路代码实现。REF通常为软件指令集模拟器,如何用硬件描述和实现,尚处于空白。香山团队采用了语义代码迁移技术,通过构造指令操作树,将Spike的基本语义转变成REF或者RTL的语义,支持指令功能、控制和状态寄存器(CSR)、常量等语义信息自动迁移。
  二是如何提升硬件REF的执行效率。香山团队提出了硬件参考模型(SRef)设计:当DUT提交N条指令,SRef执行N条指令,并对比结果。同时,通过全流水无阻塞的工作流程,消除RISC-V指令间的控制依赖。
  三是如何提升SVM框架的可调试性。香山团队提出了一种可综合的调试技术,当CPU执行出错时,将REF转换为独立执行的通用CPU。这意味着REF可以作为CPU去读取片上提取器,判断是哪个硬件化断言出错,从而用于调试。
  随着香山处理器迭代到第三代架构“昆明湖”,核心数量增加至16核,并构建了面向高性能计算场景的系统级SoC架构,其CPU系统复杂性进一步提升,亟需大规模FPGA平台与自动化工具链。围绕香山昆明湖16核CPU的大级联FPGA系统验证,香山团队与EDA企业合见工软进行了实践。
  图片
  昆明湖处理器验证挑战
  合见工软验证产品线市场总监曹梦侠表示,构建大型FPGA系统有三个难点。首先是如何将大规模设计切割到不同的FPGA中,这是困扰产业界几十年的难题;其次是切割后如何保证功能正确;再次是怎么建立的时序模型。
  面向以上难点,合见工软和香山团队建立了提出了一套系统化的多核处理器 FPGA验证方法论,包括设计移植与适配、编译迭代效率与资源优化使用的化平衡、渐进式启动策略与软硬协同调试技术。
  基于这套方法论,双方实现了四个成果。一是自动化的编译流程。除了必要的Porting之外,时钟转换、自动分割、TDM IP绑定等关键工作都可以交给EDA工具,让用户将宝贵的时间留给项目本身。二是达成了性能目标,在16核完整版本中将CPU主时钟稳定运行在10.2 MHz。三是在FPGA原型验证平台上,完整运行一个未经裁剪的、可启动OS的16核高性能昆明湖RISC-V处理器系统。四是相比传统方法,整体验证效率提升约40%,大幅缩短产品上市时间。
  未来,双方希望EDA企业协同推动RISC-V验证方法学标准化。北京开源芯片研究院(以下简称“开芯院”)工程师李贤飞表示,希望EDA厂商能开发更多支持CPU核心之外验证场景的特性,包括动态功耗验证和低功耗验证。同时,开芯院希望与EDA厂商一起构建工具链,包括Emulator与UVHS(原型验证)的混合验证模式;在多核验证方法学上,构建存储一致性协议的验证方法学,探索跨核事件的追踪框架。此外,基于EDA厂商提供的新方案、新技术和新方法,探索温榆河NOC的相关应用,开发基于Emulator的CPU Tracer类的调试工具,并增加功耗—性能联合分析能力,为SoC设计提供更全面的评估维度。
  更精微的工具链:释放RISC-V可定制可扩展优势
  可定制、可扩展是RISC-V的天然优势,但要让开发者便捷高效地开发出能运行在CPU上的定制化指令,依然需要工具链从更细颗粒度予以支持。
  在演讲中,晶心科技介绍了其Andes ACE框架与AndesCycle模拟平台,助力加速RISC-V自定义指令的开发与验证流程。据晶心软件工程师颜敬哲介绍,开发者将ACE定义文件和精简Verilog文件提交至ACE框架的COPILOT代码生成器,就能获取C语言编程辅助函数接口、汇编器、OpenOCD调试工具等所需的扩展文件。COPILOT还会自动生成控制逻辑(ACE引擎)与指令模块的Verilog代码,开发者可将这些代码集成至现有的AndesCore处理器架构,从而得到定制化的CPU指令。接下来,开发者可基于AndesCycle模拟器,对指令进行性能分析和调试,从而加速自定义指令的开发。
  基于RISC-V指令集的ASIC(专用集成电路)芯片被视为AI芯片架构创新的重要契机。威尔逊研究小组研报显示,ASIC项目平均50%的时间用于验证,验证耗时少的项目通常复用经过预验证的IP模块。反之,验证耗时较长的项目往往涉及大量新开发的IP模块。
  为降低RISC-V企业的IP验证成本,西门子EDA团队带来了端到端RISC-V调试和追踪解决方案Ultra Sight-V,包括硬件IP层面的运行控制、高效追踪、高效调试IP、经过预验证和量产验证的IP、UVM(通用验证方法学)验证环境、系统可扩展性等,USB、JTAG、AXI等接口,主机软件套件和兼容第三方工具的用户环境。在调试RISC-V核心的IP硬件中,西门子团队提供了RISC-V高效追踪(E-Trace),能够对RISC-V指令进行高度压缩。开启RISC-V追踪的可扩展功能后,压缩率——即测试基准程序的BPI(记录一条指令所需比特数)下降40%。这意味着利用E-Trace进行追踪,在相同时间下消耗的带宽更少,在相同的存储空间和带宽下可以追溯更长时间之前发生的错误。
  随着RISC-V生态系统的快速发展,SoC系统建模需求日益增长。当前主流的RISC-V仿真工具主要包括QEMU、Spike和Gem5,其建模优势各有不同,比如QEMU运行性能较强,Spike开发较容易,Gem5模拟精度高且可兼容SystemC TLM。但也存在一些痛点。一是QEMU、Spike的精度仅为functional水平,至少需将其精度提升至Near-Cycle级别,才能支持Profiling(性能分析)等工具的扩展。二是QEMU、Spike不支持SystemC TLM-2.0——作为通过事务级通信抽象的标准化接口,SystemC TLM-2.0实现了不同厂商RISC-V模型在同一虚拟平台上的即插即用兼容性,方便集成到第三方VP。三是模型软件接口不友好,没有为集成自定义指令提供足够便利。
  面向以上痛点,芯来科技构建了Nuclei Model。据芯来科技建模工程师徐子泰介绍,Nuclei Model在ISS基础上建立Timing Model(时序模型),使RISC-V SoC系统达到 Near Cycle的建模精度。构建时序模型之后,还需进行Profiling。Nuclei Model有两种Profiling方式,其一是将指令解码后,将PC(程序计数器)和Cycle(周期数)输出给Profiling处理单元,再通过Gprof等性能分析工具呈现CPU占用率,进而分析性能瓶颈。其二是通过火焰图,芯来团队结合了Flame Chart和Flame Graph两种火焰图的优点,实现了带时间轴属性,调用栈关系以及多线程应用程序可视化等特点的火焰图。基于Profiling定位热点函数后,再结合自定义指令,可以快速优化算法程序。
  为了进一步发挥RISC-V“任何用户都可以不受限制地获得RISC-V指令集”的开放性优势,中国科学院大学于2019年启动“一生一芯”开源处理器芯片教学流片实践项目计划,以开源处理器芯片为切入点,让学生可以带着自己设计的处理器芯片毕业。中国科学院计算所副研究员解壁伟在峰会现场表示,RISC-V的价值在于人人都可以定制自己的芯片,这一目标的实现需要开源EDA。
  “开源EDA的作用,就如GCC等开源编译器之于开源软件生态。”解壁伟表示。其所在的开源芯片生态团队推出了ECOS Studio开源芯片设计解决方案,推动EDA工具及工具链开源,构建基于开源EDA工具链的SoC和后端学习流程及讲义。据悉,这套解决方案已经在今年7月“一生一芯”暑期宣讲会正式开放内测。
关键词:RISC-V

全年征稿 / 资讯合作

稿件以电子文档的形式交稿,欢迎大家砸稿过来哦!

联系邮箱:3342987809@qq.com

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

维库芯视频>>

红外LED在红外报警器上的应用

热点排行