CN115496017A - Chisel断言语言的类SVA扩展及形式化验证方法 - Google Patents

Chisel断言语言的类SVA扩展及形式化验证方法 Download PDF

Info

Publication number
CN115496017A
CN115496017A CN202211084241.XA CN202211084241A CN115496017A CN 115496017 A CN115496017 A CN 115496017A CN 202211084241 A CN202211084241 A CN 202211084241A CN 115496017 A CN115496017 A CN 115496017A
Authority
CN
China
Prior art keywords
chisel
migration system
assertion
firrtl
language
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202211084241.XA
Other languages
English (en)
Other versions
CN115496017B (zh
Inventor
于世禛
董一凡
李勇
吴志林
杨大卫
张立军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Software of CAS
Original Assignee
Institute of Software of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Software of CAS filed Critical Institute of Software of CAS
Priority to CN202211084241.XA priority Critical patent/CN115496017B/zh
Publication of CN115496017A publication Critical patent/CN115496017A/zh
Application granted granted Critical
Publication of CN115496017B publication Critical patent/CN115496017B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/02Reliability analysis or reliability optimisation; Failure analysis, e.g. worst case scenario performance, failure mode and effects analysis [FMEA]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种Chisel断言语言的类SVA扩展及形式化验证方法,其步骤包括:1)将SVA支持的若干算子引入Chisel断言语言中,得到断言语言中对应的扩展算子;2)接收用户编写的算子序列;3)将Chisel硬件设计代码编译成FIRRTL,并利用FIRRTL生成设计代码的迁移系统;4)在FIRRTL层次生成相应的Büchi自动机;5)将结构调整后的自动机翻译到FIRRTL的迁移系统上,得到断言转换后的迁移系统;6)将转换后的迁移系统与硬件设计对应的迁移系统做同步得到一全局迁移系统;7)根据全局迁移系统生成btor2文件;8)对btor2文件进行模型检测,完成对断言所描述性质的形式化验证。

Description

Chisel断言语言的类SVA扩展及形式化验证方法
技术领域
本发明属于硬件设计验证领域和硬件可靠性领域,涉及一种Chisel断言语言的类SVA扩展及形式化验证方法,主要应用于使用Chisel语言的寄存器传输级(RegisterTransfer Level)硬件设计中。
背景技术
Chisel由加州伯克利的Bachrach等人于2012年提出,是一种基于Scala的硬件构建语言,具有参数化、模块化、复用性高的特点。由于其与敏捷开发的理念一致,已经被广泛得使用于RISC-V处理器和片上系统(System On Chip,简称SoC)设计中,例如加州伯克利开发的开源SoC生成器Rocket Chip、RISC-V处理器BOOM,以及中科院计算所开发的RISC-V处理器“果壳”和“香山”。
Chisel自身的断言语言较为简单,只支持最基本的布尔表达式断言,即要求断言内的布尔表达式在硬件运行中值恒为“1”。在官方配套的验证工具ChiselTest中,允许断言中出现“past”算子,可以描述简单的时序性质,例如:“满足某个条件a时,信号b的值与若干个周期前信号c的值相等”。但这种时序上的扩展不够充分,例如“布尔信号a一直处在高电平直到布尔信号b到达高电平”这样的性质就无法被很好描述。
SVA是一种在硬件领域被广泛使用的断言语言。在硬件设计中添加断言来描述信号之间应满足的关系是验证硬件设计正确性的有效手段。从语法上说,一般的SVA可看作有布尔表达式层,序列层,性质层和属性层四层。一个布尔表达式是由布尔信号以及布尔运算符(与,或,非等)组成;布尔表达式与序列算子(序列拼接,序列重复等)的组合构成序列,一个序列对应若干信号随时间变化大的模式;序列与“交叠蕴含算子”,LTL(Linear TemporalLogic)算子(G,F,U…)组合构成性质,性质可以描述硬件设计需满足哪些规范;属性层则指定了断言类型,有“assert”,“assume”,“cover”等。
发明内容
针对目前Chisel断言语言表达能力较弱、不支持描述和验证复杂的时序性质的问题,本发明的目的在于提供一种Chisel断言语言的类SVA扩展及形式化验证方法。本发明从语法上扩展了Chisel断言语言,并设计了与Chisel耦合度较高的形式化验证框架,填补了该方面的空缺,为保证Chisel硬件设计的可靠性提供了有力手段,同时提高了硬件验证效率,进一步保证Chisel硬件设计的可靠性。
本发明的技术方案为:
一种Chisel断言语言的类SVA扩展及形式化验证方法,其步骤包括:
1)将SVA支持的若干算子引入Chisel断言语言中,得到Chisel断言语言中对应的扩展算子;
2)接收用户利用Chisel断言语言中的算子及所述扩展算子编写的算子序列;所述算子序列为待验证的Chisel断言;
3)将Chisel硬件设计对应的代码编译成Chisel的中间表示语言FIRRTL,并利用所述中间表示语言FIRRTL生成所述Chisel硬件设计对应的迁移系统;所述中间表示语言FIRRTL包括High FIRRTL和Low FIRRTL;利用FIRRTL提供的Annotation对所述算子序列进行编译并维护所述Chisel硬件设计的代码和所述算子序列的同名信号一致性;
4)在FIRRTL层次对编译后的所述算子序列添加部分语义信息,得到所述算子序列刻画的时序性质,以字符串的形式作为中间输出,并调用外部工具Spot接收所述字符串生成相应的Büchi自动机;
5)调整Büchi自动机的结构,使得Büchi自动机中的每个状态在其对应的输入信息固定时只有唯一的后继状态,然后将结构调整后的Büchi自动机翻译到FIRRTL的迁移系统上,得到所述Chisel断言转换后的迁移系统;
6)将所述Chisel断言转换后的迁移系统与所述Chisel硬件设计对应的迁移系统利用步骤3)维护的信号一致性做同步,得到一全局FIRRTL迁移系统;
7)将所述全局FIRRTL迁移系统是否为空这一活性性质编码成安全性质,以适应所选硬件模型检测工具;然后将所述全局FIRRTL迁移系统编译成该所选硬件模型检测工具能够读取的btor2文件;
8)调用该所选硬件模型检测工具对所述btor2文件进行模型检测,完成对所述Chisel断言所描述性质的形式化验证。
进一步的,步骤2)中,利用Scala的语法糖简化所述用户撰写算子序列的过程;然后进行步骤3)。
进一步的,调整Büchi自动机的结构,通过添加辅助变量的方法使得Büchi自动机中的每个状态在其对应的输入信息固定时只有唯一的后继状态。
进一步的,将所述Chisel断言转换后的迁移系统与所述Chisel硬件设计对应的迁移系统相乘,得到所述全局迁移系统。
进一步的,通过L2S算法将所述全局迁移系统是否为空这一活性性质编码成安全性质。
进一步的,利用工具ChiselTest将所述全局FIRRTL迁移系统编译成该所选硬件模型检测工具能够读取的btor2格式文件。
进一步的,该所选硬件模型检测工具为硬件模型检测工具BtorMC;调用该所选硬件模型检测工具对所述btor2文件进行界限模型检测,完成对所述Chisel断言所描述性质的形式化验证。
一种服务器,其特征在于,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行上述方法中各步骤的指令。
一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述方法的步骤。
本发明的优点如下:
本发明通过扩展了Chisel的断言语言,采用Annotation和Target机制维护硬件设计和断言同名信号的一致性,并在ChiselTest的基础上实现了基于自动机理论的形式化验证框架,支持对本发明扩展过的可以描述复杂时序性质的断言利用限界模型检测进行形式化验证,为保证Chisel硬件设计的可靠性提供了有力手段。
本发明适用于使用Chisel程序描述的单时钟的硬件设计的有效性验证。本发明中对Chisel断言语言的扩展较为充分,断言的描述能力与SVA对应类型(“assert”)的表达能力一致。本发明在只考虑验证性质在设计中是否成立时不限制硬件模型检测工具的使用,主流的支持btor2格式的硬件模型检测工具Pono,AVR均可。
附图说明
图1为复杂时序性质形式化验证框架。
具体实施方式
下面结合附图对本发明进行进一步详细描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
本发明的流程如下:
1.将SVA支持的部分序列算子和性质算子引入Chisel断言语言中(引入算子和SVA算子的对应关系如表1、表2所示),得到Chisel断言语言中对应的扩展算子,用户根据Chisel断言所描述性质利用Chisel断言语言中的算子及扩展算子编写的算子序列,使用算子的序列来表示断言,同时利用Scala的语法糖简化断言书写。
表1为支持的序列算子及SVA算子的对应关系
布尔序列 序列交叠 序列连接 序列析取 重复0次 -
SVA u ##(0) ##1 or [*0] [*1:$]
本发明 ap(u) ###(0) ###(1) | *(0) *(1,-1)
表2为支持的性质算子及与SVA算子的对应关系
Figure BDA0003834390090000041
2.(下述步骤的数据流如图1所示)Chisel硬件设计在进行验证时会被编译成FIRRTL(Chisel的中间表示语言,包括High FIRRTL和Low FIRRTL),生成所述Chisel硬件设计对应的迁移系统;后续检查硬件设计代码所表达的Chisel硬件设计是否满足算子序列组成的断言对应的性质。在该过程中,Chisel中的信号名可能会发生改变。当使用本发明扩展过的断言时,利用Chisel和FIRRTL提供的Annotation和Target机制实现对断言的编译,以此保证设计在编译过程中信号名字上的改变也对断言中的信号有效,从而维护硬件设计和断言同名信号在编译过程中的一致性。图1所示的Annotation为记录断言信息的载体。
3.在FIRRTL层次对编译后的断言进行语法上的简单处理,添加部分语义信息后得到断言刻画的时序性质,以字符串的形式作为中间输出,并调用外部工具Spot接收字符串生成相应的Büchi自动机。关于Spot工具可以参考Duret-Lutz,A.,Lewkowicz,A.,Fauchille,A.,et al.:Spot 2.0:a framework for LTL andω-automatamanipulation.In:ATVA.LNCS,vol.9938,pp.122–129.Springer,Cham(2016).https://doi.org/10.1007/978-3-319-46520-3_8。
4.调整Büchi自动机的结构,通过添加辅助变量的方法使得自动机中的每个状态在其对应的输入信息固定时只有唯一的后继状态,然后将调整过结构的Büchi自动机翻译到FIRRTL的迁移系统(Transition System)上。
5.将步骤4中对断言转换得到的迁移系统和Chisel硬件设计对应的迁移系统(由步骤2中硬件设计对应的FIRRTL代码生成的)利用之前维护的信号一致性做同步,即将两个迁移系统做乘积得到一个“全局”的FIRRTL迁移系统。
6.实现L2S算法将“全局”的FIRRTL迁移系统是否为空这一活性性质编码成安全性质,以适应目前的硬件模型检测工具。利用已有工具ChiselTest将“全局”的FIRRTL迁移系统编译成硬件模型检测工具可以读取的btor2格式文件。关于L2S算法可以参考Biere,A.,Artho,C.,Schuppan,V.:Liveness checking as safety checking.Electr.NotesTheor.Comput.Sci.66(2),160–177(2002).https://doi.org/10.1016/S1571-0661(04)80410-9;
7.调用硬件模型检测工具BtorMC对生成的btor2文件进行模型检测(比如限界模型检测),即实现了在设计中对断言所描述性质的形式化验证。如果性质满足输出“pass”结果,否则给出违反性质的一个反例。
为了验证本发明的有效性,本发明选择了Chisel的GCD(greatest commondivisor)计算模块和Wishbone协议接口设计。GCD计算模块实现较为简单,使用的是基础的欧几里得算法。Wishbone协议接口设计是对github上的开源设计https://github.com/merledu/caravan进行简单改写。
实验步骤:
针对GCD模块的终止性进行验证:
1.在GCD模块中添加(扩展后的断言)作为测试类,其中该断言描述的是指示GCD模块正在运行的busy信号为高电平时,需要在1-15个周期内变为低电平(即GCD计算完成):
ap(busy)|->###(1,15)ap(!busy)。
2.选择BtorMC作为后端,限界模型检测中阈值k=150,对输入(即待计算最大公约数的两操作数)为4-bits的GCD模块进行测试。
3.修改测试类中的断言如下:
ap(busy)|->###(1,16)ap(!busy)。
4.选择相同参数对设计进行验证。
针对Wishbone协议接口设计的性质检验
1.在Wishbone协议的Host模块中添加(扩展后的断言)作为测试类,其中该断言描述的是主机端发送的代表占用信道的“stb”信号为高电平时,直到接收到客户端返回的应答信号“ack”或报错信号“err”前都需要保持“stb”信号处在高电平:
ap(stbo)|->|-ap(stbo)U ap(acki|erri)-|||G ap(stbo)
2.选择与GCD模块验证的相同参数对设计进行验证
实验结果
针对GCD模块的终止性进行验证:
检查出第一条断言无法满足,并会得到一条反例,即当输入的两个运算数为15和1时,该模块设计并不能保证在15个时钟周期内完成计算,对该反例进行分析可以发现在这种情况下,需要16个时钟周期完成运算,因此调整断言内容,而第二条断言在工具运行后返回验证通过的结论,这说明该模块计算4-bits运算数的最大公约数时在观察窗口设置为150个周期内没有违背性质的情况。
针对Wishbone协议接口设计的性质检验
检查出该断言可以得到满足,表明在观察窗口设置为150个时钟周期时,该设计没有违背Wishbone协议接口设计要求的情况。
综上所述,本发明中提出的Chisel断言语言的类SVA扩展及形式化验证可以通过添加断言的方式检查单时钟的Chisel硬件设计的是否符合规范,为保证Chisel硬件设计的可靠性提供了有力手段。
尽管为说明目的公开了本发明的具体实施例,其目的在于帮助理解本发明的内容并据以实施,本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。因此,本发明不应局限于最佳实施例所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。

Claims (9)

1.一种Chisel断言语言的类SVA扩展及形式化验证方法,其步骤包括:
1)将SVA支持的若干算子引入Chisel断言语言中,得到Chisel断言语言中对应的扩展算子;
2)接收用户利用Chisel断言语言中的算子及所述扩展算子编写的算子序列;所述算子序列为待验证的Chisel断言;
3)将Chisel硬件设计对应的代码编译成Chisel的中间表示语言FIRRTL,并利用所述中间表示语言FIRRTL生成所述Chisel硬件设计对应的迁移系统;所述中间表示语言FIRRTL包括High FIRRTL和Low FIRRTL;利用FIRRTL提供的Annotation对所述算子序列进行编译并维护所述Chisel硬件设计的代码和所述算子序列的同名信号一致性;
4)在FIRRTL层次对编译后的所述算子序列添加部分语义信息,得到所述算子序列刻画的时序性质,以字符串的形式作为中间输出,并调用外部工具Spot接收所述字符串生成相应的Büchi自动机;
5)调整Büchi自动机的结构,使得Büchi自动机中的每个状态在其对应的输入信息固定时只有唯一的后继状态,然后将结构调整后的Büchi自动机翻译到FIRRTL的迁移系统上,得到所述Chisel断言转换后的迁移系统;
6)将所述Chisel断言转换后的迁移系统与所述Chisel硬件设计对应的迁移系统利用步骤3)维护的信号一致性做同步,得到一全局FIRRTL迁移系统;
7)将所述全局FIRRTL迁移系统是否为空这一活性性质编码成安全性质,以适应所选硬件模型检测工具;然后将所述全局FIRRTL迁移系统编译成该所选硬件模型检测工具能够读取的btor2文件;
8)调用该所选硬件模型检测工具对所述btor2文件进行模型检测,完成对所述Chisel断言所描述性质的形式化验证。
2.根据权利要求1所述的方法,其特征在于,步骤2)中,利用Scala的语法糖简化所述用户撰写算子序列的过程;然后进行步骤3)。
3.根据权利要求1所述的方法,其特征在于,调整Büchi自动机的结构,通过添加辅助变量的方法使得Büchi自动机中的每个状态在其对应的输入信息固定时只有唯一的后继状态。
4.根据权利要求1或2或3所述的方法,其特征在于,将所述Chisel断言转换后的迁移系统与所述Chisel硬件设计对应的迁移系统相乘,得到所述全局迁移系统。
5.根据权利要求1或2或3所述的方法,其特征在于,通过L2S算法将所述全局迁移系统是否为空这一活性性质编码成安全性质。
6.根据权利要求1或2或3所述的方法,其特征在于,利用工具ChiselTest将所述全局FIRRTL迁移系统编译成该所选硬件模型检测工具能够读取的btor2格式文件。
7.根据权利要求1或2或3所述的方法,其特征在于,该所选硬件模型检测工具为硬件模型检测工具BtorMC;调用该所选硬件模型检测工具对所述btor2文件进行界限模型检测,完成对所述Chisel断言所描述性质的形式化验证。
8.一种服务器,其特征在于,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序被配置为由所述处理器执行,所述计算机程序包括用于执行权利要求1至7任一所述方法中各步骤的指令。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一所述方法的步骤。
CN202211084241.XA 2022-09-06 2022-09-06 Chisel断言语言的类SVA扩展及形式化验证方法 Active CN115496017B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211084241.XA CN115496017B (zh) 2022-09-06 2022-09-06 Chisel断言语言的类SVA扩展及形式化验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211084241.XA CN115496017B (zh) 2022-09-06 2022-09-06 Chisel断言语言的类SVA扩展及形式化验证方法

Publications (2)

Publication Number Publication Date
CN115496017A true CN115496017A (zh) 2022-12-20
CN115496017B CN115496017B (zh) 2023-04-11

Family

ID=84469069

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211084241.XA Active CN115496017B (zh) 2022-09-06 2022-09-06 Chisel断言语言的类SVA扩展及形式化验证方法

Country Status (1)

Country Link
CN (1) CN115496017B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116663467A (zh) * 2023-07-27 2023-08-29 北京开源芯片研究院 断言等效硬件库的构建方法、装置、电子设备及存储介质
CN116701085A (zh) * 2023-06-02 2023-09-05 中国科学院软件研究所 RISC-V处理器Chisel设计指令集一致性的形式验证方法及装置
CN117075969A (zh) * 2023-08-28 2023-11-17 中国科学院软件研究所 面向risc-v处理器特权指令集一致性的形式验证方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106294148A (zh) * 2016-08-08 2017-01-04 清华大学 基于扩展符号变迁系统的c语言程序软件验证方法及装置
CN108830085A (zh) * 2018-06-13 2018-11-16 天津大学 基于扩展UML的Web应用形式化建模及验证方法
US20200349236A1 (en) * 2019-05-02 2020-11-05 SiFive, Inc. Generation of dynamic design flows for integrated circuits
CN114637664A (zh) * 2020-12-16 2022-06-17 中国科学院软件研究所 一种针对安卓应用程序性质的检测方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106294148A (zh) * 2016-08-08 2017-01-04 清华大学 基于扩展符号变迁系统的c语言程序软件验证方法及装置
CN108830085A (zh) * 2018-06-13 2018-11-16 天津大学 基于扩展UML的Web应用形式化建模及验证方法
US20200349236A1 (en) * 2019-05-02 2020-11-05 SiFive, Inc. Generation of dynamic design flows for integrated circuits
CN114637664A (zh) * 2020-12-16 2022-06-17 中国科学院软件研究所 一种针对安卓应用程序性质的检测方法及装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
易锦;张文辉;: "从基于迁移的扩展Büchi自动机到Büchi自动机" *
王勤思;: "构建度量区时序逻辑的时间自动机" *
陈先勇;徐伟俊;杨鑫;夏宇闻;: "SystemVerilog断言及其应用" *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116701085A (zh) * 2023-06-02 2023-09-05 中国科学院软件研究所 RISC-V处理器Chisel设计指令集一致性的形式验证方法及装置
CN116701085B (zh) * 2023-06-02 2024-03-19 中国科学院软件研究所 RISC-V处理器Chisel设计指令集一致性的形式验证方法及装置
CN116663467A (zh) * 2023-07-27 2023-08-29 北京开源芯片研究院 断言等效硬件库的构建方法、装置、电子设备及存储介质
CN116663467B (zh) * 2023-07-27 2023-11-10 北京开源芯片研究院 断言等效硬件库的构建方法、装置、电子设备及存储介质
CN117075969A (zh) * 2023-08-28 2023-11-17 中国科学院软件研究所 面向risc-v处理器特权指令集一致性的形式验证方法及装置

Also Published As

Publication number Publication date
CN115496017B (zh) 2023-04-11

Similar Documents

Publication Publication Date Title
CN115496017B (zh) Chisel断言语言的类SVA扩展及形式化验证方法
EP3707852B1 (en) Arithmetic enhancement of c-like smart contracts for verifiable computation
US7725851B2 (en) Device, system and method for formal verification
EP1706833B1 (en) System and method for modeling, abstraction, and analysis of software
US7464015B2 (en) Method and apparatus for supporting verification, and computer product
CN113032195A (zh) 芯片仿真验证方法、系统、设备及存储介质
US8799864B2 (en) Providing SystemVerilog testing harness for a standardized testing language
US8589837B1 (en) Constructing inductive counterexamples in a multi-algorithm verification framework
US6131078A (en) Method for design verification of hardware and non-hardware systems
US20070226665A1 (en) Accelerating high-level bounded model checking
US11681509B2 (en) Smart contract processing method and system, computer device, and readable storage medium
CN113297073B (zh) 芯片中算法模块的验证方法、装置、设备及可读存储介质
CN113849162B (zh) 一种利用模型驱动和深度神经网络相结合的代码生成方法
CN111291882A (zh) 一种模型转换的方法、装置、设备和计算机存储介质
WO2023010916A1 (zh) 软件自动修复方法、系统、电子设备及存储介质
Przigoda et al. Verifying the structure and behavior in UML/OCL models using satisfiability solvers
Gurfinkel et al. Proof-like counter-examples
US9720792B2 (en) Information theoretic caching for dynamic problem generation in constraint solving
US20110225559A1 (en) Logic verifying apparatus, logic verifying method, and medium
CN114707444A (zh) 编译验证系统的方法、电子设备及存储介质
US20140282321A1 (en) System and method for a hybrid clock domain crossing verification
CN112733478B (zh) 用于对设计进行形式验证的装置
US10789404B1 (en) System, method, and computer program product for generating a formal verification model
CN109471637B (zh) 电路图的审查脚本调试方法
US7519931B1 (en) Applying CNF simplification techniques for SAT-based abstraction refinement

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant