一种功能覆盖率代码生成方法、系统、设备及介质与流程

文档序号:34864078发布日期:2023-07-23 16:02阅读:29来源:国知局
一种功能覆盖率代码生成方法、系统、设备及介质与流程

本发明属于芯片验证领域,具体涉及一种功能覆盖率代码生成方法、系统、设备及可读存储介质。


背景技术:

1、在芯片的设计开发过程中功能验证是最重要的环节之一,而功能覆盖率作为衡量功能验证完备性的重要指标就显得日益重要。功能覆盖率是通过验证工程师根据dut的功能要求所提取的一系列的覆盖组和覆盖点来验证dut功能所编写的程序代码,这些覆盖组和覆盖点对特定的信号在特定的采样时刻进行采样,通过获取与预期值相一致的采样值来衡量dut的功能验证是否完整。倘若在芯片验证过程中能够快速且准确的定义覆盖率代码,不仅能够保证芯片验证工作的质量而且能够加快验证进程,从而加快流片的速度,使芯片产品尽可能早地进行量产和上市,从而占据市场的先机。

2、目前有很多自动生成覆盖率的工具,它们都有能够实现自动生成覆盖率代码的功能。但是这些工具也存在或多或少的缺点,这些工具基本上采取模板输入的方式为生成工具输入验证环境、采样信号和覆盖率的配置等信息。这种方式往往需要输入很多信息,如验证环境顶层描述信息、接口信息、覆盖组的配置等信息,这样就会填写多个输入信息模板,使用步骤繁杂,不利于初次接触者使用。另一方面,这些工具通常生成的最终产物是含有覆盖率代码的完整验证环境,而实际的芯片验证过程中往往是先搭建验证环境,再进行测试用例仿真,待到环境和用例稳定之后才会进行收集覆盖率的工作。因此,在收集覆盖率之前,芯片架构或dut的设计势必要经过许多次改动,倘若生成工具生成的是完整的验证环境,在环境和用例稳定之前可能需要修改验证环境和覆盖率代码。所以最终产物是含有覆盖率代码的验证环境的最大局限性是在开展收集覆盖率的工作之前要多次修改环境或者覆盖率代码,工具使用不够灵活,复用性不强。

3、因此,亟需一种灵活高效的解决方案来解决上述问题。


技术实现思路

1、为解决上述问题,本发明提出一种功能覆盖率代码生成方法,包括:

2、获取基于验证环境的覆盖组信息;

3、基于所述覆盖组信息生成可实例化于对应验证平台的覆盖率代码文件和/或将所述覆盖组信息保存到覆盖率配置文件,并将所述覆盖率代码文件注册到所述验证平台环境中。

4、在本发明的一些实施方式中,获取基于验证环境的覆盖组信息包括:

5、根据用户提供的验证环境的基础文件提取验证环境的采样信号,并根据所述采样信号按照预定方式生成覆盖组信息。

6、在本发明的一些实施方式中,根据所述采样信号按照预定方式生成覆盖组信息包括:

7、将所述采样信号通过图形界面展示给用户,并基于用户在所述图形界面对采样信号的分组操作生成覆盖组;或者

8、根据验证环境的各个模块的功能,将满足互联要求的模块所对应的采样信息随机分配生成对应的覆盖组。

9、在本发明的一些实施方式中,获取基于验证环境的覆盖组信息包括:从所述覆盖率配置文件获取覆盖组信息;

10、在本发明的一些实施方式中,方法还包括:

11、响应于用户需要对覆盖组信息进行修改,将所述覆盖率配置文件中覆盖组信息和/或基于所述覆盖组信息转换而成的采样信号加载到图形界面,并将用户在图形界面对覆盖组信息的修改重新生成覆盖率配置文件;

12、基于所述重新生成的覆盖率配置文件重新生成覆盖率代码文件,并将重新生成的覆盖率代码文件注册到所述验证平台环境中。

13、在本发明的一些实施方式中,基于所述覆盖组信息生成可实例化于对应验证平台的覆盖率代码文件包括:

14、将所述覆盖组信息根据验证平台的编程语言生成对应的代码类;以及

15、响应于覆盖组信息中存在引用传递的覆盖组,将所述覆盖组信息以代码块的方式生成并在所述覆盖率代码文件的预定区域进行声明。

16、在本发明的一些实施方式中,将所述覆盖率代码文件注册到所述验证平台环境中包括:

17、将所述覆盖率代码文件中的内容在所述验证平台环境文件中的指定区域进行声明,以及将所述覆盖率代码文件的路径添加对应的扩展配置文件中。

18、本发明的另一方面还提出一种功能覆盖率代码生成系统,包括:

19、数据解析模块,所述数据解析模块配置用于获取基于验证环境的覆盖组信息;

20、代码生成模块,所述代码生成模块配置用于基于所述覆盖组信息生成可实例化于对应验证平台的覆盖率代码文件和/或将所述覆盖组信息保存到覆盖率配置文件,并将所述覆盖率代码文件注册到所述验证平台环境中。

21、本发明的又一方面还提出一种计算机设备,包括:

22、至少一个处理器;以及

23、存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现上述实施方式中任意一项所述方法的步骤。

24、本发明的再一方面还提出一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述实施方式中任意一项所述方法的步骤。

25、通过本发明提出的一种功能覆盖率代码生成方法,将原有的生成整体环境的方式修改为仅生成覆盖率代码文件和覆盖率配置文件,当覆盖组对应的测试方案改变时,仅通过修改覆盖率配置文件即可,再通过覆盖率配置文件重新生成覆盖率代码文件进行覆盖率测试。可有效提高芯片验证测试工作时的效率,无需每次修改都生成完整的验证环境,验证工程时无需在生成验证环境时等待。大大提高芯片验证效率



技术特征:

1.一种功能覆盖率代码生成方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述获取基于验证环境的覆盖组信息包括:

3.根据权利要求2所述的方法,其特征在于,所述根据所述采样信号按照预定方式生成覆盖组信息包括:

4.根据权利要求1所述的方法,其特征在于,所述获取基于验证环境的覆盖组信息包括:从所述覆盖率配置文件获取覆盖组信息。

5.根据权利要求1所述的方法,其特征在于,所还包括:

6.根据权利要求1所述的方法,其特征在于,所述基于所述覆盖组信息生成可实例化于对应验证平台的覆盖率代码文件包括:

7.根据权利要求1所述的方法,其特征在于,所述将所述覆盖率代码文件注册到所述验证平台环境中包括:

8.一种功能覆盖率代码生成系统,其特征在于,包括:

9.一种计算机设备,其特征在于,包括:

10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任意一项所述方法的步骤。


技术总结
本发明属于芯片验证领域,具体涉及一种功能覆盖率代码生成方法、系统、设备及可读存储介质。其中方法包括:获取基于验证环境的覆盖组信息;基于覆盖组信息生成可实例化于对应验证平台的覆盖率代码文件和/或将覆盖组信息保存到覆盖率配置文件,并将覆盖率代码文件注册到验证平台环境中。本发明将原有的生成整体环境的方式修改为仅生成覆盖率代码文件和覆盖率配置文件,当覆盖组对应的测试方案改变时,仅通过修改覆盖率配置文件即可,再通过覆盖率配置文件重新生成覆盖率代码文件进行覆盖率测试。可有效提高芯片验证测试工作时的效率,无需每次修改都生成完整的验证环境,验证工程时无需在生成验证环境时等待。大大提高芯片验证效率。

技术研发人员:赵经纬,曹铸,邵海波
受保护的技术使用者:山东云海国创云计算装备产业创新中心有限公司
技术研发日:
技术公布日:2024/1/13
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1