如何可靠、快速、自动地验证处理器硬件

描述

你是否会遇到以下问题:bug可能比较微妙,不直观,无法手动推断;或者在被观察到之前就被激活很久了,传统的模拟设计需要花很长时间自动;验证工作量随着设计复杂性的增加而增加,人工推理和手动编写属性不再可行,等等。目前验证CPU的主流方法,如 HW Testbench, 

Universal Verification Methodology (UVM), 

SW Testbench, Property Checking,

这些现有方法具有范围受限、仿真较慢、long bug traces、需要手动编写test的特点。

那么,如何可靠、快速、自动地验证处理器硬件,并且生成bug trace?

 

NO.1

 

形式化验证的开展基于形式化规范和自动推理。其中形式化规范是指通过形式化语言将DUV和待证明的属性建模成形式化模型,自动推理是指通过严格的数学方法来推导DUV和待证明属性规范之间的逻辑关系,通常是证明DUV的形式化模型能满足所有形式化属性规范

形式化验证的基本步骤:

系统建模:把系统转换为能被模型检测工具所接受的形式。这是模型检测的首要步骤,构建系统模型时为了提高验证过程的效率及可行性需要将和要验证的属性无关的细节抽象掉,仅保留与此相关的细节,这是一个比较简单但通常会比较繁琐的过程。

形式化规范:在对模型进行验证之前以逻辑公式的形式给出待验证的属性。命题时态逻辑能够表达出系统的行为如何随着时间而发生变化,因而通常被用来描述规范。一条规范只是描述了系统某一个属性,一组规范是否覆盖了系统需要满足的所有属性一直是个开放问题。规范开发的人力投入也是长期困扰形式验证的问题。

形式化验证:模型检测工具对输入的模型的状态空间进行搜索来确定输入的规范是否为真,为真表示模型满足规范;为假则表示模型不满足规范,此时会给出一个反例来说明规范为假的原因。

 

NO.2

 

QED(快速错误检测)是一种识别错误的方法(主要在处理器中,但也可用于其他组件),它将一组原始测试转换为QED检查。这涉及到将寄存器文件分成两部分,其中一半用于原始指令,另一半用于重复的指令序列,原始序列和复制序列都以相同的顺序执行相同的指令,但它们是交错的,在原始指令序列和复制指令序列完成后,寄存器文件的两部分应该匹配。

根据经验,与传统技术相比,这种方法可以将bug trace的长度减少多达6个数量级。

Bounded Model Checking(BMC) 用于验证有限状态模型的正确性。它通过遍历有限长度的路径来检查模型是否满足给定的性质。

SQED基于BMC进行符号运算搜索所有指令序列组合。这为我们提供了一种无需编写测试就可以验证处理器的方法,也不需要提供任何手写属性,只依赖于SQED检查。是对传统的形式验证方法的突破。

 

NO.3

 基于SQED的指令集形式验证具有如下特点

全自动验证:Symbolic Instructions + Self-Consistency Checking,不需要开发属性集。

高覆盖率:BMC工具搜索给定深度的所有指令序列。

最简bug复现:BMC工具自动生成从复位状态到bug site的最短路径。

借助AveMC高性能形式验证平台,AveMC/SQED组合为芯片设计指令集验证提供了全新的验证解决方案。

 

NO.4

 

AveMC在开源RISC-V上的SQED验证过程: 给定RISC-V核的RTL实现和ISA SPEC,从ISA SPEC中自动解析生成QED Module(一个新的RTL),将原有的RISC-V核和QED Module连接起来。这里AveMC就可以直接进行验证了。

cpu

指令集形式验证是芯片设计验证中的新兴方向,在RISCV和AI/ML硬件加速芯片的验证中得到越来越广泛的应用。SQED是指令集形式验证领域的新兴工具,它通过完全自测试的特性解决了验证属性开发的低效和覆盖率问题。在上海阿卡思微电子技术有限公司形式验证平台AveMC上,SQED得到了成功的实现。与开源形式验证工具相比,AveMC/SQED不仅提升了验证速度,还能发现其他工具无法发现的bug。

 

上海阿卡思微电子技术有限公司由硅谷回国的资深电子设计自动化(EDA)专家于2020年在上海张江高科技园区设立,旗下子公司成都奥卡思微电科技有限公司于2018年在成都高新区创立,公司聚集国际知名EDA公司和芯片设计公司具有多年研发经验的尖端人才,基于形式化方法为逻辑芯片设计和工控软件等提供验证工具及咨询服务,凭借在形式化方法领域深厚的技术积累及深入的产品实践,公司已推出系列商用性能优异的验证工具,服务于复杂芯片设计及通用设计流程,获得多个标杆客户的采购使用。在研产品及应用包括高阶等价验证、功能安全等,覆盖数字信息、智能硬件、航空航天、人工智能等行业需求。公司将最新的EDA技术与本土用户需求相结合,服务于中国集成电路自主可控设计;将产品开发与数字产业趋势相结合,服务于中国技术创新与技术赶超;将技术推广与产品优化相结合,服务于海内外需求市场。致力于成为国内领先的形式化技术开发与服务商。

  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分