广告

如何验证复杂的RISC-V设计

时间:2020-08-18 作者:Zibi Zalewski 阅读:
随着RISC-V处理器开发渐趋成熟,以及SoC和微控制器中RISC-V内核使用量的不断增加,工程团队面临着新的验证挑战。为使RISC-V内核标准化,业界的验证工作均集中在ISA的合规性上。但现在问题似乎演变成,如何随系统的不断发展进行验证?
广告
ASPENCORE

随着RISC-V处理器开发渐趋成熟,以及SoC和微控制器中RISC-V内核使用量的不断增加,工程团队面临着新的验证挑战;这些挑战与RISC-V内核本身无关,而与基于RISC-V内核或围绕RISC-V内核的系统有关。可以想象,其验证过程与基于Arm处理器的验证一样,复杂且耗时。Re6EETC-电子工程专辑

截至目前,为使RISC-V内核标准化,业界的验证工作均集中在ISA的合规性上。但现在问题似乎演变成,如何随系统的不断发展进行验证?Re6EETC-电子工程专辑

显然,随着内核的增多以及现有外设和定制硬件模块的增多,验证难度也不断增大。Re6EETC-电子工程专辑

我们面临两个验证挑战。首先,确保内核正确且符合ISA;其次,使用内核测试系统。在这两种情况下,事务级硬件仿真都是最佳选择,尤其当仿真基于Accellera SCE-MI标准时,因为这样可以在不同平台和供应商之间复用。再结合自动设计分区和广泛的调试功能,就可以构成一个完整的验证平台。Re6EETC-电子工程专辑

当处理器内核渐趋强大并具有更多功能时,寄存器传输级(RTL)的模拟就显得力不从心了,同时它也不能在一个合理的时间内覆盖完整的测试范围。对于仿真,测试速度要高得多(在MHz级),再加上周期精度,更增加了测试的长度和复杂性(因为运行速度非常快)。Re6EETC-电子工程专辑

进行仿真时,内核自身可能会自动与RISC-V ISS黄金模型进行比较,以确认其精确性且满足ISA合规性要求。图1显示了测试中的RISC-V CPU。Re6EETC-电子工程专辑

图1: 测试中的RISC-V CPU。该测试通过仿真器完成,而RISC-V ISS是高级UVM测试平台的一部分。Re6EETC-电子工程专辑

模拟所使用的测试平台可以在仿真阶段复用,因此即使在模拟阶段,也还是有必要确保测试平台是“仿真就绪”的。这将使模拟器和仿真器之间的平滑切换成为可能,而无需开发新的测试平台。Re6EETC-电子工程专辑

而且,若需要在RISC-V中增加定制指令(如在设计中用于加速算法的指令),这种策略也会很有效。因为相比纯模拟环境,硬件仿真可以根据所开发的算法更快地对这些指令进行测试和基准测验。Re6EETC-电子工程专辑

一旦检查完处理器或CPU子系统,就可以继续验证整个系统。幸运的是,我们可以使用相同的技术来验证SoC的其它硬件模块、定制硬件和外设。所有这些都可以在仿真器中实现,并使用与模拟过程相同的通用验证方法(UVM)或SystemC测试平台进行验证。如图2所示。Re6EETC-电子工程专辑

图2:包括RISC-V内核在内的所有SoC模块都可以在仿真器中运行,并可以使用与模拟过程中相同的UVM或SystemC测试平台进行验证。Re6EETC-电子工程专辑

这种方法允许采用较长的测试序列(例如,UVM受约束的随机序列)来构建复杂的测试场景,并加速SoC架构基准测试的模拟,以优化硬件结构和组件。Re6EETC-电子工程专辑

需要注意的是,现今的SoC开发项目不仅需要开发硬件,而且还需要开发复杂的多层软件代码。这意味着软件和硬件工程团队需要协同工作,因此验证需求更加复杂,并且在软硬接口上面临巨大挑战。软件团队通常使用软件ISS或虚拟平台/虚拟机进行独立开发,在不依赖于新硬件交互的情况下这样是可以的。Re6EETC-电子工程专辑

当系统随外设和自定义模块的增加而变得复杂时,软件不仅要支持RISC-V及其周边环境(可以在软件中建模),而且必须通过提供操作系统驱动程序、API或高级应用程序来支持其余的硬件模块。Re6EETC-电子工程专辑

那么,在开发和测试整个项目时,如何确保这两方面协同工作并保持同步?Re6EETC-电子工程专辑

事务级仿真再次成为可选解决方案。采用硬件仿真器时,我们可以使用灵活的调试功能以更高的速度测试所有RTL模块,不仅如此,仿真器主机接口API(通常基于C / C ++)可以连接软件团队使用的虚拟平台,从而为项目的软件和硬件创建一个集成的验证环境,如图3所示。Re6EETC-电子工程专辑

图3:在虚拟平台中采用基于SCE-MI宏的仿真器API和TLM接口,以创建一个“协同仿真”环境。Re6EETC-电子工程专辑

现在,我们可以MHz的速度运行整个系统,从而将操作系统的启动时间大大缩短,比如从几小时缩短到几分钟,并且可以对处理器和硬件子系统进行并行调试。Re6EETC-电子工程专辑

混合协同仿真平台的优势在于,当设计的RTL代码比较成熟时,软件工程师不必迁移到完全不同的环境中去。他们的主要开发工具仍是相同的虚拟平台,而且由于有了协同仿真,这个平台现在代表着完整的SoC,包括定制硬件在内。这样,软件和硬件团队就可以对项目进行同时修订,并且无需互相等待就可以验证设计的正确性和性能。Re6EETC-电子工程专辑

您也许会问,为什么不直接采用FPGA原型呢?原因很简单,原型设计需要为所有系统模块准备好完整的RTL源代码并将其综合到FPGA,这需要花费大量时间,因此软件团队需要单独采用虚拟模型。Re6EETC-电子工程专辑

即使已准备好整个RTL设计,向所有软件开发人员提供原型硬件也可能成本高昂。因此,使用协同仿真方法不仅使我们能够验证整个系统,在项目开发周期的更早阶段发现潜在问题,而且还可以尽量降低验证工具的成本。Re6EETC-电子工程专辑

此外,由于仿真中使用了更加全面的硬件调试工具,因此可以轻松诊断RTL代码中的任何缺陷或错误(这是早期硬件-软件协同验证的另一个优势),而无需回溯至模拟阶段。一旦仿真完成,FPGA原型对于最终的高速测试无疑将非常有用。Re6EETC-电子工程专辑

责编:Amy GuanRe6EETC-电子工程专辑

本文为《电子工程专辑》2020年8月刊杂志文章,版权所有,禁止转载。点击申请免费杂志订阅  Re6EETC-电子工程专辑

ASPENCORE
本文为EET电子工程专辑 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 小米投资杭州芯迈半导体 近日,小米长江产业基金投资杭州芯迈半导体,小米长江产业基金持股比例为2.7027%。公开信息显示,杭州芯迈半导体技术有限公司于2019年09月17日成立。法定代表人任远程,公司经营范围包括……
  • 中国集成电路产业人才白皮书(2019-2020年版)发布 在2020第三届半导体才智大会暨‘中国芯’集成电路产教融合实训基地(南京)成立仪式上,《中国集成电路产业人才白皮书(2019—2020年版)》正式发布。《白皮书》显示,截至2019年年底,我国直接从事集成电路产业的人员规模在51.19万人左右,增长11.04%。与此同时,行业对人才的吸引力也在提升,行业平均薪酬……
  • 芯海科技登陆上交所科创板 9月28日,芯海科技(深圳)股份有限公司成功在上海证券交易所科创板挂牌上市。据介绍,芯海科技专注于高精度ADC、高性能MCU、测量算法以及物联网一站式解决方案的研发设计,是一家集感知、计算、控制于一体的全信号链芯片设计企业……
  • 运用可扩展多核处理器满足嵌入式应用日益增长的性能需 下一代嵌入式应用需要对大型CPU集群和专用硬件加速器提供可扩展的支持,以实现所需的性能。大型多核处理器需要新的架构方法来提供更高的性能,并且不会给嵌入式设计者带来其他实现和时序收敛问题。
  • 挑战永久续航,Atmosic欲重新定义物联网设备电池寿命 据统计,每年全球消耗的电池数量高达数十亿颗。大量的废弃电池给环境带来了巨大的污染,既然对电池的需求是刚需,如何在保障续航的前提下更好地实现技术的应用和升级,成为了大部分科技公司努力的方向。
  • 豪威集团 – 在全球CIS市场上与索尼和三星并驾齐驱的 在全球市场上,豪威集团是与索尼和三星位列同一梯队的CIS厂商。在安防、医疗、笔记本电脑、新兴应用等细分市场,豪威也是长期保持领导地位的CMOS传感器供应商。整合后的豪威集团有什么样的技术和市场策略?其下一个目标是什么呢?
广告
热门推荐
广告
广告
广告
EE直播间
在线研讨会
广告
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了