CN117743194B - 芯片验证用例的自动化生成方法、系统及相关设备 - Google Patents
芯片验证用例的自动化生成方法、系统及相关设备 Download PDFInfo
- Publication number
- CN117743194B CN117743194B CN202410182695.3A CN202410182695A CN117743194B CN 117743194 B CN117743194 B CN 117743194B CN 202410182695 A CN202410182695 A CN 202410182695A CN 117743194 B CN117743194 B CN 117743194B
- Authority
- CN
- China
- Prior art keywords
- verification
- case
- passing
- verification passing
- coverage
- 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.)
- Active
Links
- 238000012795 verification Methods 0.000 title claims abstract description 255
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000012360 testing method Methods 0.000 claims abstract description 26
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012216 screening Methods 0.000 claims description 8
- 238000003860 storage Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明适用于芯片验证技术领域,尤其涉及一种芯片验证用例的自动化生成方法、系统及相关设备,所述方法包括:获取配置文件,并生成验证用例代码;根据验证用例代码生成可执行文件,并在测试平台上运行,得到验证通过用例;计算获取验证通过的验证条目覆盖率、覆盖率贡献值和贡献率权重;判断验证通过用例对应的验证条目覆盖率是否满足预设覆盖率规则;若是,判断验证通过用例对应的覆盖率贡献值是否满足预设贡献规则,其中,若否,抛弃验证通过用例;若是,保留验证通过用例,将其输出作为验证用例生成结果。本发明提高了随机验证用例的覆盖率和可用性。
Description
技术领域
本发明适用于芯片验证技术领域,尤其涉及一种芯片验证用例的自动化生成方法、系统及相关设备。
背景技术
芯片设计主要可分为规格指定、详细设计、HDL实现、验证、制片、回片验证、芯片发布使用。若回片验证发现重大缺陷,可能需要再次修改设计或者实现,重新制片,做回片验证。芯片发布后,才可以开发对应的应用软件。
通常,芯片验证可以分为System Test(ST)、Unit Test(UT)、Integrate Test(IT)、BBIT(Building Block Integrated Test)、System Design Verify(SDV)等。不同的阶段有不同的验证侧重点、不同的工具、不同的验证方法。
芯片验证过程中,开发者需要通过分析测试点来编写验证用例,通过软件将部分内容,例如取值,随机化,并生成验证用例可执行文件,运行仿真并和模拟器输出对比来实现系统级验证。验证用例运行时,收集代码覆盖率。得到覆盖率报告后,需要逐点分析报告中未覆盖到的代码。对于应该覆盖,但是未覆盖到的代码,编写针对性验证用例,然后重新运行、收集、分析,直到覆盖率满足要求。
现有技术中,验证用例基本上都通过开发者人为编写,即便在编写过程中有一些便于开发使用的编写软件,也需要人为地构造每个验证用例的验证思路的流程。这种方式不仅耗时长、消耗人力,也有可能无法全方位覆盖所有的测试点和极端情况,对于后期修改测试用例的情况工作量更繁重。从代码覆盖率的角度来讲,现有技术无法高效地提升覆盖率并快速到达瓶颈或百分之百的代码覆盖率。
发明内容
本发明提供一种芯片验证用例的自动化生成方法、系统及相关设备,旨在解决现有验证用例编写过程工作繁重、覆盖率不高的技术问题。
为解决上述技术问题,第一方面,本发明提供一种芯片验证用例的自动化生成方法,所述自动化生成方法包括以下步骤:
S101、获取配置文件,并根据所述配置文件生成验证用例代码,所述配置文件包括待验证芯片状态条目;
S102、根据所述验证用例代码生成可执行文件,并将所述可执行文件在测试平台上运行,根据所述可执行文件在测试平台上验证是否通过的结果,从所述可执行文件中筛选出验证通过的部分,定义为验证通过用例;
S103、计算获取所述验证通过用例的验证条目覆盖率、覆盖率贡献值和贡献率权重;
S104、判断所述验证通过用例对应的所述验证条目覆盖率是否满足预设覆盖率规则,若否,返回步骤S101;若是,执行步骤S105;
S105、判断所述验证通过用例对应的所述覆盖率贡献值是否满足预设贡献规则,若否,抛弃所述验证通过用例;若是,保留所述验证通过用例,将其输出作为验证用例生成结果。
更进一步地,步骤S101中,根据所述配置文件生成验证用例代码的步骤具体为:
对所述配置文件进行语法分析,从预设指令数据库中选择对应所述配置文件的指令语法的指令进行随机生成组合,得到所述验证用例代码。
更进一步地,步骤S103中,所述待验证芯片状态条目包括硬件代码覆盖率的代码行、条件判断、操作位翻转、状态机、分支代码、以及功能覆盖率的断言和覆盖组,定义当前的所述验证通过用例的编号为,第/>个所述验证通过用例的所述验证条目覆盖率为/>,第/>个和第/>个验证通过用例合并后的覆盖率结果为/>,第/>个所述验证通过用例的所述覆盖率贡献值为/>,第/>个所述验证通过用例的所述贡献率权重为/>,所述覆盖率贡献值/>和所述贡献率权重/>分别满足:
;
;
其中,下标表示所述待验证芯片状态条目的个数,/>。
更进一步地,步骤S104中,定义第个所述验证通过用例与之前所有验证通过用例相比的重复率为/>,其满足:
;
定于深度为的队列/>用于存储所述重复率按从小到大排序的前/>个验证通过用例,其中/>,队列/>中所有元素的方差值为/>,所述预设覆盖率规则具体为:
;
其中,为预设覆盖率标准值,/>为预设常量。
更进一步地,步骤S105中,所述预设贡献规则具体为:
;
其中,、/>为常数,且/>;
若,且/>,则抛弃所述验证通过用例;
若,且/>,则抛弃所述验证通过用例;
否则,保留所述验证通过用例。
更进一步地,步骤S105还包括步骤:
在保留所述验证通过用例时,将所述验证通过用例插入队列,并删除队列/>中所述重复率/>最大的元素。
更进一步地,步骤S104还包括步骤:
在返回步骤S101时,根据所述贡献率权重调整所述待验证芯片状态条目/>对应生成验证用例代码的比例。
第二方面,本发明还提供一种芯片验证用例的自动化生成系统,包括:
自动生成模块,用于获取配置文件,并根据所述配置文件生成验证用例代码,所述配置文件包括待验证芯片状态条目;
编译运行模块,用于根据所述验证用例代码生成可执行文件,并将所述可执行文件在测试平台上运行,根据所述可执行文件在测试平台上验证是否通过的结果,从所述可执行文件中筛选出验证通过的部分,定义为验证通过用例;
数据计算模块,用于计算获取所述验证通过用例的验证条目覆盖率、覆盖率贡献值和贡献率权重;
第一决策模块,用于判断所述验证通过用例对应的所述验证条目覆盖率是否满足预设覆盖率规则,若否,返回所述自动生成模块;若是,执行第二决策模块;
第二决策模块,用于判断所述验证通过用例对应的所述覆盖率贡献值是否满足预设贡献规则,若否,抛弃所述验证通过用例;若是,保留所述验证通过用例,将其输出作为验证用例生成结果。
第三方面,本发明还提供一种计算机设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述实施例中任意一项所述的芯片验证用例的自动化生成方法中的步骤。
第四方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例中任意一项所述的芯片验证用例的自动化生成方法中的步骤。
本发明所达到的有益效果,在于提出了一种能够自动生成高覆盖率的芯片验证用例的方法,该方法生成通过随机验证、测试、收集验证用例的覆盖率等信息进行迭代和筛除,使得生成的随机验证用例覆盖用户配置的所有指令和数据,且该过程不需要额外人力投入,能够通过简单的修改配置文件来适配不同芯片类型,并以最少的验证用例生成数量满足高覆盖率,减少计算资源的压力,并提高随机验证用例的可用性。
附图说明
图1是本发明实施例提供的芯片验证用例的自动化生成方法的步骤流程框图;
图2是本发明实施例提供的芯片验证用例的自动化生成系统200的结构示意图;
图3是本发明实施例提供的计算机设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参照图1,图1是本发明实施例提供的芯片验证用例的自动化生成方法的步骤流程框图,所述自动化生成方法包括以下步骤:
S101、获取配置文件,并根据所述配置文件生成验证用例代码,所述配置文件包括待验证芯片状态条目。
步骤S101中,根据所述配置文件生成验证用例代码的步骤具体为:
对所述配置文件进行语法分析,从预设指令数据库中选择对应所述配置文件的指令语法的指令进行随机生成组合,得到所述验证用例代码。
示例性的,实施过程中,所述配置文件用于指明所有支持的指令集合以及指令属于哪一个集合,如RISC-V指令集的IMAFDCV中,vadd.vv属于V集合。
实施过程中,所述配置文件使用树形结构,Json格式存储,单条配置文件的指令结构示例如下表1所示:
表 1 配置文件的指令结构
步骤S101中,根据所述配置文件生成.c格式的验证用例代码,例如,为了为生成100条J类型指令,并且当前指令的rd依赖于前面4条中某一条的rs1,rs1依赖于前面4条中某一条的rs2,使用如表2所示的规则:
表 2 配置文件规则
对应生成的验证用例代码片段如下表3所示:
表 3 验证用例代码示例
所述待验证芯片状态条目包括硬件代码覆盖率(包括LINE代码行、COND条件判断、TOGGLE操作位翻转、FSM状态机、BRANCH分支代码)和功能覆盖率(ASSERT断言和覆盖组(Coverage Group))。
S102、根据所述验证用例代码生成可执行文件,并将所述可执行文件在测试平台上运行,根据所述可执行文件在测试平台上验证是否通过的结果,从所述可执行文件中筛选出验证通过的部分,定义为验证通过用例。
实施过程中,所述测试平台可以基于GCC和LLVM两种编译器,并在VCS、Verilaotr、Spike、FPGA、SoC开发板等平台运行。
对于测试平台上验证未通过的结果,可以单独保存,以用于分析并进行后续配置文件的优化。
S103、计算获取所述验证通过用例的验证条目覆盖率、覆盖率贡献值和贡献率权重。
步骤S103中,定义当前的所述验证通过用例的编号为,第/>个所述验证通过用例的所述验证条目覆盖率为/>,第/>个和第/>个验证通过用例合并后的覆盖率结果为,第/>个所述验证通过用例的所述覆盖率贡献值为/>,第/>个所述验证通过用例的所述贡献率权重为/>,所述覆盖率贡献值/>和所述贡献率权重/>分别满足:
;
;
其中,下标表示所述待验证芯片状态条目的个数,对应上述待验证芯片状态条目的具体数量,/>。
S104、判断所述验证通过用例对应的所述验证条目覆盖率是否满足预设覆盖率规则,若否,返回步骤S101;若是,执行步骤S105。
步骤S104中,定义第个所述验证通过用例与之前所有验证通过用例相比的重复率为/>,其满足:
;
定于深度为的队列/>用于存储所述重复率按从小到大排序的前/>个验证通过用例,其中/>,队列/>中所有元素的方差值为/>,所述预设覆盖率规则具体为:
;
其中,为预设覆盖率标准值,/>为预设常量。
步骤S104还包括步骤:
在返回步骤S101时,根据所述贡献率权重调整所述待验证芯片状态条目/>对应生成验证用例代码的比例。对应预先设置的7种所述待验证芯片状态条目,使用/>函数来进行统一处理(/>函数用于查找特定的字符串,本发明实施例中用于查找对应条目的验证用例代码),对于所述待验证芯片状态条目/>对应的原有比例的部分/>,处理后的比例变为原本的/>,这个策略可以表示为:
。
S105、判断所述验证通过用例对应的所述覆盖率贡献值是否满足预设贡献规则,若否,抛弃所述验证通过用例;若是,保留所述验证通过用例,将其输出作为验证用例生成结果。
步骤S105中,所述预设贡献规则具体为:
;
其中,、/>为常数,且/>;
若,且/>,则抛弃所述验证通过用例;
若,且/>,则抛弃所述验证通过用例;
否则,保留所述验证通过用例。
步骤S105还包括步骤:
在保留所述验证通过用例时,将所述验证通过用例插入队列,并删除队列/>中所述重复率/>最大的元素。
本发明所达到的有益效果,在于提出了一种能够自动生成高覆盖率的芯片验证用例的方法,该方法生成通过随机验证、测试、收集验证用例的覆盖率等信息进行迭代和筛除,使得生成的随机验证用例覆盖用户配置的所有指令和数据,且该过程不需要额外人力投入,能够通过简单的修改配置文件来适配不同芯片类型,并以最少的验证用例生成数量满足高覆盖率,减少计算资源的压力,并提高随机验证用例的可用性。
本发明实施例还提供一种芯片验证用例的自动化生成系统,请参照图2,图2是本发明实施例提供的芯片验证用例的自动化生成系统200的结构示意图,其包括:
自动生成模块201,用于获取配置文件,并根据所述配置文件生成验证用例代码,所述配置文件包括待验证芯片状态条目;
编译运行模块202,用于根据所述验证用例代码生成可执行文件,并将所述可执行文件在测试平台上运行,根据所述可执行文件在测试平台上验证是否通过的结果,从所述可执行文件中筛选出验证通过的部分,定义为验证通过用例;
数据计算模块203,用于计算获取所述验证通过用例的验证条目覆盖率、覆盖率贡献值和贡献率权重;
第一决策模块204,用于判断所述验证通过用例对应的所述验证条目覆盖率是否满足预设覆盖率规则,若否,返回所述自动生成模块;若是,执行第二决策模块;
第二决策模块205,用于判断所述验证通过用例对应的所述覆盖率贡献值是否满足预设贡献规则,若否,抛弃所述验证通过用例;若是,保留所述验证通过用例,将其输出作为验证用例生成结果。
所述芯片验证用例的自动化生成系统200能够实现如上述实施例中的芯片验证用例的自动化生成方法中的步骤,且能实现同样的技术效果,参上述实施例中的描述,此处不再赘述。
本发明实施例还提供一种计算机设备,请参照图3,图3是本发明实施例提供的计算机设备的结构示意图,所述计算机设备300包括:存储器302、处理器301及存储在所述存储器302上并可在所述处理器301上运行的计算机程序。
所述处理器301调用所述存储器302存储的计算机程序,执行本发明实施例提供的芯片验证用例的自动化生成方法中的步骤,请结合图1,具体包括以下步骤:
S101、获取配置文件,并根据所述配置文件生成验证用例代码,所述配置文件包括待验证芯片状态条目。
步骤S101中,根据所述配置文件生成验证用例代码的步骤具体为:
对所述配置文件进行语法分析,从预设指令数据库中选择对应所述配置文件的指令语法的指令进行随机生成组合,得到所述验证用例代码。
S102、根据所述验证用例代码生成可执行文件,并将所述可执行文件在测试平台上运行,根据所述可执行文件在测试平台上验证是否通过的结果,从所述可执行文件中筛选出验证通过的部分,定义为验证通过用例。
S103、计算获取所述验证通过用例的验证条目覆盖率、覆盖率贡献值和贡献率权重。
所述待验证芯片状态条目包括硬件代码覆盖率的代码行、条件判断、操作位翻转、状态机、分支代码、以及功能覆盖率的断言和覆盖组,步骤S103中,定义当前的所述验证通过用例的编号为,第/>个所述验证通过用例的所述验证条目覆盖率为/>,第/>个和第个验证通过用例合并后的覆盖率结果为/>,第/>个所述验证通过用例的所述覆盖率贡献值为/>,第/>个所述验证通过用例的所述贡献率权重为/>,所述覆盖率贡献值/>和所述贡献率权重/>分别满足:
;
;
其中,下标表示所述待验证芯片状态条目的个数,/>。
S104、判断所述验证通过用例对应的所述验证条目覆盖率是否满足预设覆盖率规则,若否,返回步骤S101;若是,执行步骤S105。
步骤S104中,定义第个所述验证通过用例与之前所有验证通过用例相比的重复率为/>,其满足:
;
定于深度为的队列/>用于存储所述重复率按从小到大排序的前/>个验证通过用例,其中/>,队列/>中所有元素的方差值为/>,所述预设覆盖率规则具体为:
;
其中,为预设覆盖率标准值,/>为预设常量。
步骤S104还包括步骤:
在返回步骤S101时,根据所述贡献率权重调整所述待验证芯片状态条目/>对应生成验证用例代码的比例。
S105、判断所述验证通过用例对应的所述覆盖率贡献值是否满足预设贡献规则,若否,抛弃所述验证通过用例;若是,保留所述验证通过用例,将其输出作为验证用例生成结果。
步骤S105中,所述预设贡献规则具体为:
;
其中,、/>为常数,且/>;
若,且/>,则抛弃所述验证通过用例;
若,且/>,则抛弃所述验证通过用例;
否则,保留所述验证通过用例。
步骤S105还包括步骤:
在保留所述验证通过用例时,将所述验证通过用例插入队列,并删除队列/>中所述重复率/>最大的元素。
本发明实施例提供的计算机设备300能够实现如上述实施例中的芯片验证用例的自动化生成方法中的步骤,且能实现同样的技术效果,参上述实施例中的描述,此处不再赘述。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现本发明实施例提供的芯片验证用例的自动化生成方法中的各个过程及步骤,且能实现相同的技术效果,为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,简称RAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,所揭露的仅为本发明较佳实施例而已,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式用等同变化,均属于本发明的保护之内。
Claims (7)
1.一种芯片验证用例的自动化生成方法,其特征在于,所述自动化生成方法包括以下步骤:
S101、获取配置文件,并根据所述配置文件生成验证用例代码,所述配置文件包括待验证芯片状态条目;
S102、根据所述验证用例代码生成可执行文件,并将所述可执行文件在测试平台上运行,根据所述可执行文件在测试平台上验证是否通过的结果,从所述可执行文件中筛选出验证通过的部分,定义为验证通过用例;
S103、计算获取所述验证通过用例的验证条目覆盖率、覆盖率贡献值和贡献率权重;
S104、判断所述验证通过用例对应的所述验证条目覆盖率是否满足预设覆盖率规则,若否,返回步骤S101;若是,执行步骤S105;
S105、判断所述验证通过用例对应的所述覆盖率贡献值是否满足预设贡献规则,若否,抛弃所述验证通过用例;若是,保留所述验证通过用例,将其输出作为验证用例生成结果;
其中,所述待验证芯片状态条目包括硬件代码覆盖率的代码行、条件判断、操作位翻转、状态机、分支代码、以及功能覆盖率的断言和覆盖组,步骤S103中,定义当前的所述验证通过用例的编号为,第/>个所述验证通过用例的所述验证条目覆盖率为/>,第/>个和第个验证通过用例合并后的覆盖率结果为/>,第/>个所述验证通过用例的所述覆盖率贡献值为/>,第/>个所述验证通过用例的所述贡献率权重为/>,所述覆盖率贡献值/>和所述贡献率权重/>分别满足:
;
;
其中,下标表示所述待验证芯片状态条目的个数,/>;
步骤S104中,定义第个所述验证通过用例与之前所有验证通过用例相比的重复率为,其满足:
;
定于深度为的队列/>用于存储所述重复率按从小到大排序的前/>个验证通过用例,其中/>,队列/>中所有元素的方差值为/>,所述预设覆盖率规则具体为:
;
其中,为预设覆盖率标准值,/>为预设常量;
所述预设贡献规则具体为:
;
其中,、/>为常数,且/>;
若,且/>,则抛弃所述验证通过用例;
若,且/>,则抛弃所述验证通过用例;
否则,保留所述验证通过用例。
2.如权利要求1所述的芯片验证用例的自动化生成方法,其特征在于,步骤S101中,根据所述配置文件生成验证用例代码的步骤具体为:
对所述配置文件进行语法分析,从预设指令数据库中选择对应所述配置文件的指令语法的指令进行随机生成组合,得到所述验证用例代码。
3.如权利要求1所述的芯片验证用例的自动化生成方法,其特征在于,步骤S105还包括步骤:
在保留所述验证通过用例时,将所述验证通过用例插入队列,并删除队列/>中所述重复率/>最大的元素。
4.如权利要求1所述的芯片验证用例的自动化生成方法,其特征在于,步骤S104还包括步骤:
在返回步骤S101时,根据所述贡献率权重调整所述待验证芯片状态条目/>对应生成验证用例代码的比例。
5.一种芯片验证用例的自动化生成系统,其特征在于,包括:
自动生成模块,用于获取配置文件,并根据所述配置文件生成验证用例代码,所述配置文件包括待验证芯片状态条目;
编译运行模块,用于根据所述验证用例代码生成可执行文件,并将所述可执行文件在测试平台上运行,根据所述可执行文件在测试平台上验证是否通过的结果,从所述可执行文件中筛选出验证通过的部分,定义为验证通过用例;
数据计算模块,用于计算获取所述验证通过用例的验证条目覆盖率、覆盖率贡献值和贡献率权重;
第一决策模块,用于判断所述验证通过用例对应的所述验证条目覆盖率是否满足预设覆盖率规则,若否,返回所述自动生成模块;若是,执行第二决策模块;
第二决策模块,用于判断所述验证通过用例对应的所述覆盖率贡献值是否满足预设贡献规则,若否,抛弃所述验证通过用例;若是,保留所述验证通过用例,将其输出作为验证用例生成结果;
其中,所述待验证芯片状态条目包括硬件代码覆盖率的代码行、条件判断、操作位翻转、状态机、分支代码、以及功能覆盖率的断言和覆盖组,所述数据计算模块运行时,定义当前的所述验证通过用例的编号为,第/>个所述验证通过用例的所述验证条目覆盖率为/>,第/>个和第/>个验证通过用例合并后的覆盖率结果为/>,第/>个所述验证通过用例的所述覆盖率贡献值为/>,第/>个所述验证通过用例的所述贡献率权重为/>,所述覆盖率贡献值/>和所述贡献率权重/>分别满足:
;
;
其中,下标表示所述待验证芯片状态条目的个数,/>;
所述第一决策模块运行时,定义第个所述验证通过用例与之前所有验证通过用例相比的重复率为/>,其满足:
;
定于深度为的队列/>用于存储所述重复率按从小到大排序的前/>个验证通过用例,其中/>,队列/>中所有元素的方差值为/>,所述预设覆盖率规则具体为:
;
其中,为预设覆盖率标准值,/>为预设常量;
所述预设贡献规则具体为:
;
其中,、/>为常数,且/>;
若,且/>,则抛弃所述验证通过用例;
若,且/>,则抛弃所述验证通过用例;
否则,保留所述验证通过用例。
6.一种计算机设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-4中任意一项所述的芯片验证用例的自动化生成方法中的步骤。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-4中任意一项所述的芯片验证用例的自动化生成方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410182695.3A CN117743194B (zh) | 2024-02-19 | 2024-02-19 | 芯片验证用例的自动化生成方法、系统及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410182695.3A CN117743194B (zh) | 2024-02-19 | 2024-02-19 | 芯片验证用例的自动化生成方法、系统及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117743194A CN117743194A (zh) | 2024-03-22 |
CN117743194B true CN117743194B (zh) | 2024-05-07 |
Family
ID=90281644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410182695.3A Active CN117743194B (zh) | 2024-02-19 | 2024-02-19 | 芯片验证用例的自动化生成方法、系统及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117743194B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8826202B1 (en) * | 2013-05-09 | 2014-09-02 | Taiwan Semiconductor Manufacturing Company, Ltd. | Reducing design verification time while maximizing system functional coverage |
CN105426282A (zh) * | 2015-11-05 | 2016-03-23 | 天津津航计算技术研究所 | 优化数字芯片验证平台测试用例回归次数的方法 |
CN113742202A (zh) * | 2020-05-29 | 2021-12-03 | 上海商汤智能科技有限公司 | Ai芯片验证系统、方法、设备及存储介质 |
CN113850035A (zh) * | 2021-08-27 | 2021-12-28 | 山东云海国创云计算装备产业创新中心有限公司 | 一种芯片验证方法、装置、设备及可读存储介质 |
CN114780423A (zh) * | 2022-04-29 | 2022-07-22 | 山东云海国创云计算装备产业创新中心有限公司 | 一种代码覆盖率的收敛方法、系统及装置 |
CN117172209A (zh) * | 2023-11-03 | 2023-12-05 | 睿思芯科(深圳)技术有限公司 | 芯片的验证系统、方法及相关设备 |
-
2024
- 2024-02-19 CN CN202410182695.3A patent/CN117743194B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8826202B1 (en) * | 2013-05-09 | 2014-09-02 | Taiwan Semiconductor Manufacturing Company, Ltd. | Reducing design verification time while maximizing system functional coverage |
CN105426282A (zh) * | 2015-11-05 | 2016-03-23 | 天津津航计算技术研究所 | 优化数字芯片验证平台测试用例回归次数的方法 |
CN113742202A (zh) * | 2020-05-29 | 2021-12-03 | 上海商汤智能科技有限公司 | Ai芯片验证系统、方法、设备及存储介质 |
CN113850035A (zh) * | 2021-08-27 | 2021-12-28 | 山东云海国创云计算装备产业创新中心有限公司 | 一种芯片验证方法、装置、设备及可读存储介质 |
CN114780423A (zh) * | 2022-04-29 | 2022-07-22 | 山东云海国创云计算装备产业创新中心有限公司 | 一种代码覆盖率的收敛方法、系统及装置 |
CN117172209A (zh) * | 2023-11-03 | 2023-12-05 | 睿思芯科(深圳)技术有限公司 | 芯片的验证系统、方法及相关设备 |
Non-Patent Citations (1)
Title |
---|
基于遗传进化策略的处理器验证方案;杨凯峰 等;微电子学与计算机;20210531;第38卷(第5期);第25-29页 * |
Also Published As
Publication number | Publication date |
---|---|
CN117743194A (zh) | 2024-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2018538587A (ja) | リスク評価方法およびシステム | |
CN110929145A (zh) | 舆情分析方法、装置、计算机装置及存储介质 | |
CN108459958A (zh) | 功能及性能测试脚本的创建方法、装置、设备及存储介质 | |
CN110780879B (zh) | 一种基于智能编译技术的决策执行方法、装置、设备及介质 | |
CN114021440B (zh) | 一种基于matlab的fpga时序仿真验证方法及装置 | |
CN111752846A (zh) | 一种接口测试方法及装置 | |
CN111783843A (zh) | 一种特征选择方法、装置及计算机系统 | |
CN111523888A (zh) | 基于区块链技术的链上数据及信息溯源系统 | |
CN117743194B (zh) | 芯片验证用例的自动化生成方法、系统及相关设备 | |
CN112597718B (zh) | 集成电路设计的验证方法、验证装置以及存储介质 | |
CN111950579A (zh) | 分类模型的训练方法和训练装置 | |
JP2012181666A (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
CN109032946B (zh) | 一种测试方法和装置、计算机可读存储介质 | |
CN114153447B (zh) | 一种自动化生成ai训练代码的方法 | |
CN110244953A (zh) | Java程序的区间分析方法及装置 | |
JPH08221429A (ja) | 文書自動分類装置 | |
CN112783775B (zh) | 特殊字符输入测试方法及装置 | |
CN113849484A (zh) | 一种大数据组件升级方法、装置、电子设备及存储介质 | |
CN112381214A (zh) | 网络模型生成方法、装置及电子设备 | |
CN113240032A (zh) | 一种图像分类方法、装置、设备及存储介质 | |
CN112286800B (zh) | 一种功能测试点辅助分析方法与系统 | |
CN113987522B (zh) | 一种用于源代码漏洞检测的代码属性图压缩方法及装置 | |
Schreiner et al. | Probabilistic model checking on HPC systems for the performance analysis of mobile networks | |
CN114861184A (zh) | 代码漏洞扫描方法、装置、设备及存储介质 | |
CN114780430A (zh) | 一种自动化测试方法、系统、电子设备及介质 |
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 |