系统与设计
的意见

的整体视图RISC-V验证

成功的项目需要超过核心合规ISA。

受欢迎程度

上个月,我们讨论了RISC-V开放生态系统处理器的发展,这两个主要组织驾驶它,OneSpin扮演的角色。此外,我们已成为非常活跃的RISC-V社区和十几名发表技术文章,提出会议洽谈,并接受即将到来的会谈。我们倾向于把重点放在验证的挑战RISC-V IP核和包含这些核心芯片系统(SoC)设计。以来我一直在第一线在许多这样的会议,我想分享我的观点关于这个行业的看法RISC-V验证是成长和发展。

一开始,验证的想法是专注于展示符合RISC-V指令集架构(ISA)文件。ISA的核心定义为任何类型的处理器设计。它定义了指令,寄存器,旗帜,和其他元素,确定设计的能力。有很多谈论合规测试套件来检查RISC-V核心匹配ISA。这样的测试套件是用户熟悉的许多类型的设计标准。他们有时是由组织提供支持的标准作为一个援助实现和互操作性。在多个开发团队有明确价值验证他们的设计第三方遵守相同的套件。

从我们第一次参与RISC-V,我们扩大了合规的视图包括使用正式的验证。没有模拟测试套件,无论多么广泛,能证明符合规范。证明是正式的引擎的专属领域,可以进行详尽的分析和显示,没有可行的方法设计违反行为规则捕获的断言。这正是我们开始:我们在ISA规范规则翻译成SystemVerilog断言,跑正式验证现有RISC-V内核。我们发现一些非常有趣的设计缺陷,已经错过了通过大量模拟大型测试套件。正式的遵从性的价值是显而易见的。

遵从性仅仅是第一步。RISC-V ISA有许多选项的说明,数据宽度,保护等等。断言必须适应反映哪些可选特性应该验证不同的配置一个特定的核心设计。ISA是可扩展的,允许自定义指令来定义。断言和正式的方法也必须是可扩展的,这两种验证添加特性和证明基线ISA功能已经没有其它选择。我开始听到更多认可的这些挑战RISC-V社区,虽然仍比正式更侧重于模拟。

我不是听多讨论(还)在验证处理器内核的微体系结构。RISC-V ISA是明确设计要足够灵活以支持广泛的实现。现代处理器设计利用多级缓存,多级管道、无序的指令执行,分支预测,投机执行指令,指令和数据预取、和其他先进技术。形式验证是强大到足以验证微体系结构支持这些技术。最后,整个处理器核心设计必须验证,不仅ISA的特定特性可能被捕获在一个简单的基于检查表的遵从性测试套件。

我会走得更远:最后,整个SoC包含RISC-V核心(或核)必须得到验证。很可能SoC集成团队想要重新运行形式验证核心作为验收标准的一部分。在许多情况下,配置ISA的核心选项,ISA扩展,并验证微体系结构将尽可能多的SoC的责任团队的核心供应商。一旦团队适应核心本身,工程师需要确认它已经被正确地集成。芯片级正式连接检查能证明这种集成是正确的,远比任何基于仿真的方法更快和更完全。

有更多的这个故事。许多RISC-V核soc使用严格的功能安全的要求,安全,和信任。例如,它可能需要证明的核心和其余的芯片包含任何设计漏洞可以利用恶意代理生产过程中使用。它可能是至关重要的,以确保没有插入到核心硬件木马或SoC在任何阶段的开发过程。这些挑战都是也由正式的验证,这不仅可以证明设计做它应该做什么,而且它不做不应该做的事。

虽然安全,安全,和信任越来越大的担忧,在整个半导体行业,到目前为止我没有关注RISC-V听证会讨论这些话题。OneSpin,我们应对这些挑战的一段时间,一般都是我们的设计完整性解决方案的一部分,特别是在RISC-V的上下文。我们最近编写白皮书“保证RISC-V核的完整性和soc”覆盖全系列的主题,我提到了在这篇文章中。你可以下载它https://www.onespin.com/resources/white-papers/我相信你会发现它的教育和用于开发自己的RISC-V验证计划。



留下一个回复


(注意:这个名字会显示公开)

Baidu