动态加载的仿真验证方法及其系统技术方案

技术编号:37852133 阅读:10 留言:0更新日期:2023-06-14 22:43
本申请提供了一种动态加载的仿真验证方法及其系统,该方法包括:保存现场数据任务;修改所述现场数据任务中执行的测试用例的配置文件并将其保存于测试用例配置模块中;恢复所述现场数据任务,并且,加载所述测试用例配置模块中的配置文件,并根据配置文件加载测试用例或者重新加载与所述现场数据任务中执行的测试用例不同的测试用例;执行加载的所述测试用例。本申请可以降低成本,提高集成电路验证仿真效率。仿真效率。仿真效率。

【技术实现步骤摘要】
动态加载的仿真验证方法及其系统


[0001]本申请涉及一种集成电路仿真测试
,更涉及一种动态加载的仿真验证方法及其系统。

技术介绍

[0002]现有的电路仿真测试技术基于UVM(Universal Verification Methodology,通用验证方法学)框架下的技术应用,可以解决实现电路仿真测试环境的标准化和模块化。测试的流程数据都来自于UVM的序列(Sequence),这些序列一般指仿真激励数据的顺序组合并作为测试环境的一部分编译在整个测试环境中。
[0003]在开发的过程中,开发人员会花费大量的时间和精力去开发自己的测试用例和测试序列,并编译和运行测试用例从而完成仿真测试,但是测试用例的每一个细微的修改都需要重新编译和运行。而且,有些被验证的模块需要在测试用例执行之前被初始化,初始化阶段有可能会占用大量的仿真时间,甚至超过了用例本身的运行时间,这将大大降低仿真效率。
[0004]主流的EDA(Electronic design automation,电子设计自动化)工具支持保存和恢复(Save and Restore)或者检查点(checkpoint)的功能,能够将某个时间点电路仿真的上下文数据保存下来,并能在下次运行中直接加载到该时间点。这个功能可以解决上述的初始化阶段时间过长的问题,EDA工具仅在测试用例和仿真环境不变的情况下能够缩短初始化时间,但对于电路仿真工作中最常出现的仿真环境不变而测试用例需要改变的情况,EDA工具就无能为力了。
[0005]另外一种主流的仿真加速技术通常是通过软硬件协同的方式,通过软硬件接口将一些耗时的仿真放在专用的硬件上执行。这种技术往往处于电路验证中后期的阶段,并且需要额外的硬件支持,成本较高。

技术实现思路

[0006]本申请的目的在于提供一种动态加载的仿真验证方法及其系统,可以降低成本,提高集成电路验证仿真效率。
[0007]本申请公开了一种动态加载的仿真验证方法,包括:
[0008]保存现场数据任务;
[0009]修改所述现场数据任务中执行的测试用例的配置文件并将其保存于测试用例配置模块中;
[0010]恢复所述现场数据任务,并且,加载所述测试用例配置模块中的配置文件,并根据配置文件加载测试用例或者重新加载与所述现场数据任务中执行的测试用例不同的测试用例;以及
[0011]执行加载的所述测试用例。
[0012]在一个优选例中,保存所述现场数据任务之前,还包括:
[0013]编译测试环境和/或测试用例;和
[0014]初始化所述测试环境和所述测试用例。
[0015]在一个优选例中,恢复所述现场数据任务之后,还包括:判断是否从初始时间运行,若不是,则从保存时间运行测试环境。
[0016]在一个优选例中,还包括:判断是否继续下一个测试用例,若是,加载并执行该测试用例。
[0017]在一个优选例中,所述测试用例采用脚本语言或自定义语言编写,或采用软件动态加载符号表的方式。
[0018]在一个优选例中,所述现场数据任务包括在保存时间点的电路状态和测试环境的上下文数据。
[0019]在一个优选例中,所述配置文件包括测试用例的名称、执行流程、任务调度、电路行为控制和参数。
[0020]本申请还公开了一种动态加载的仿真验证系统,包括:
[0021]任务保存和恢复模块,用于保存或恢复现场数据任务;
[0022]测试用例配置模块,用于保存所述现场数据任务中执行的测试用例的配置文件并解析所述配置文件;
[0023]测试用例管理模块,用于在恢复所述现场数据任务后加载所述测试用例配置模块中的配置文件;
[0024]测试用例模块,用于存储测试用例文件;以及
[0025]测试用例加载和执行模块,用于从所述测试用例模块中加载并执行测试用例。
[0026]在一个优选例中,所述测试用例加载和执行模块通过验证/直接编程接口库与测试环境交互。
[0027]相对于传统的技术方案,本申请实施方式中可以降低成本,提高集成电路验证仿真效率。
附图说明
[0028]图1为根据本申请一实施例的动态加载的仿真验证方法的流程图。
[0029]图2为根据本申请一实施例的实现动态加载的仿真验证的系统框图。
[0030]图3为根据本申请一实施例的实现动态加载的仿真验证的过程图。
具体实施方式
[0031]在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。
[0032]为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请的实施方式作进一步地详细描述。
[0033]本申请一实施方式提供一种动态加载的仿真验证方法,图1示出了本申请一实施例的动态加载的仿真验证方法的流程图,该方法包括如下步骤:
[0034]步骤101,保存电路仿真的现场数据任务。在一个实施例中,所述现场数据任务包
括对应于保存时间点的电路状态和测试环境的上下文数据。
[0035]在一个实施例中,在保存所述现场数据任务之前,所述方法还包括如下步骤:编译测试环境和/或测试用例,以及初始化所述测试环境和所述测试用例。
[0036]应当注意,当硬件电路设计或者仿真环境有更改时,则需要重新执行编译测试环境或测试用例。当硬件电路无更改,同时对应的仿真环境也无更改的时候,可以不需要重新编译而直接进行初始化。本领域技术人员可以理解的是,在一些情况下,硬件电路设计和仿真环境在一段时间内是不变的,此时不需要重新编译测试环境和测试用例,即跳过编译环节直接进入运行初始化阶段。然而,当需要切换硬件电路或者仿真环境的参数和配置的情况下,则重新执行测试环境和测试用例的编译。
[0037]当硬件电路设计和仿真环境在一段时间内不变的情况下,并且,硬件电路或者仿真环境的参数和配置无更改的时候,可以进一步跳过初始化阶段,即,可以不需要重新编译和运行初始化阶段,而直接运行测试用例。应当理解,在硬件电路设计和仿真环境稳定下来后,对于某种参数和配置下的仿真测试也会在一段时间内反复执行,此时硬件电路或者仿真环境的参数和配置无更改,可以跳过运行初始化阶段。
[0038]本实施例中,可以不需要重新运行编译和初始化阶段,修改测试用例的配置文件,并且直接运行测试。
[0039]步骤102,修改所述现场数据任务中执行的测试用例的配置文件并将其保存于测试用例配置模块中。在一个实施例中,所述配置文件包括测试用例的名称、执行流程、任务调度、电路行为控制和参数等等。
[0040]步骤103,恢复所述现场数据任务,并且,加载所述测试用例配置模块中的配置文件,并根据配置文件加载测试用例或者重新加载与所述现场数据任务中执行的测试用例不同的测试用例。
[0041]参见图本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种动态加载的仿真验证方法,其特征在于,包括:保存现场数据任务;修改所述现场数据任务中执行的测试用例的配置文件并将其保存于测试用例配置模块中;恢复所述现场数据任务,并且,加载所述测试用例配置模块中的配置文件,并根据配置文件加载测试用例或者重新加载与所述现场数据任务中执行的测试用例不同的测试用例;以及执行加载的所述测试用例。2.根据权利要求1所述的动态加载的仿真验证方法,其特征在于,保存所述现场数据任务之前,还包括:编译测试环境和/或测试用例;和初始化所述测试环境和所述测试用例。3.根据权利要求1所述的动态加载的仿真验证方法,其特征在于,恢复所述现场数据任务之前,还包括:判断是否从初始时间运行,若不是,则从保存时间运行测试环境。4.根据权利要求1所述的动态加载的仿真验证方法,其特征在于,还包括:判断是否继续下一个测试用例,若是,加载并执行该测试用例。5.根据权利要求1所述的动态加载的仿真验证方法,其特征在于,所述测试用例采用...

【专利技术属性】
技术研发人员:乔海龙李茂张君
申请(专利权)人:澜起科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1