本发明涉及系统验证领域,特别涉及一种系统验证扩展方法、装置、设备及可读存储介质。
背景技术:
1、在系统验证工作中,待验证的rtl(register transfer level,寄存器转换级电路)代码形成的模块,往往因系统集成需要,会存在多次例化的情况。在这种情况下,例化出来的模块内部完全相同,外部连线和使用方向会略有不同。
2、虽然例化出来的模块内部完全相同,但考虑到系统外部的连线、地址分配、功能预配置等原因,因此不能直接进行简单的复制代码。现阶段对于例化模块通常的验证方法为:针对各个例化模块的具体情况编写相对应的测试用例,并进行编译调试,检查是否存在语法问题和运行问题,当检查测试用例无误后,再利用各自对应的测试用例代码对例化模块进行验证。
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、通过所述脚本修改所述宏函数的变量名,得到所有例化模块相对应的配置函数;所述变量名为所述例化模块的代号;
26、根据各个所述例化模块的配置函数自动生成相对应的测试用例。
27、本发明还提供了一种系统验证扩展装置,包括:
28、单一模块配置模块,用于对多个例化模块中的一个例化模块进行完整的配置,得到一套完整的配置函数;所述例化模块为模块内部结构相同、实现功能不同的模块;
29、形式转化模块,用于将所述完整的配置函数转化为固定形式的配置函数;所述固定形式包括例化模块的代号和例化模块的地址;
30、宏函数构造模块,用于基于所述固定形式的配置函数构造预留代号接口的宏函数;
31、批量生成模块,用于通过脚本和所述宏函数,批量生成各个例化模块的配置函数和测试用例;
32、验证模块,用于通过各个例化模块的测试用例对相应的例化模块进行验证。
33、本发明还提供了一种系统验证扩展设备,包括:
34、存储器,用于存储计算机程序;
35、处理器,用于执行所述计算机程序时实现上述的系统验证扩展方法的步骤。
36、本发明还提供了一种可读存储介质,所述可读存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现上述的系统验证扩展方法的步骤。
37、本发明还提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述的系统验证扩展方法的步骤。
38、可见,本发明通过对多个例化模块中的一个例化模块进行完整的配置,得到一套完整的配置函数;例化模块为模块内部结构相同、实现功能不同的模块;将完整的配置函数转化为固定形式的配置函数;固定形式包括例化模块的代号和例化模块的地址;基于固定形式的配置函数构造预留代号接口的宏函数;通过脚本和宏函数,批量生成各个例化模块的配置函数和测试用例,通过各个例化模块的测试用例对相应的例化模块进行验证。本发明的有益效果在于:实现了针对于同一代码的多个例化模块,通过一套配置函数能够快速扩展得到多套配置函数,进而可以快速生成多套测试用例,快速实现对所有例化模块的验证工作,而不需要对于每个例化模块单独撰写测试用例,减少了验证人员测试用例编写时间和编译调试时间,大大提高了验证效率。同时,自动化扩展还避免了人工编写测试用例导致的信号名称错误和地址错误,从而提高了验证精确度。
39、此外,本发明还提供了一种系统验证扩展装置、设备、可读存储介质和计算机程序产品,同样具有上述有益效果。
1.一种系统验证扩展方法,其特征在于,包括:
2.根据权利要求1所述的系统验证扩展方法,其特征在于,所述对多个例化模块中的一个例化模块进行完整的配置,得到一套完整的配置函数,包括:
3.根据权利要求2所述的系统验证扩展方法,其特征在于,获取待验证模块相关的所有例化模块,包括:
4.根据权利要求1所述的系统验证扩展方法,其特征在于,所述将所述完整的配置函数转化为固定形式的配置函数;所述固定形式包括例化模块的代号和例化模块的地址,包括:
5.根据权利要求1所述的系统验证扩展方法,其特征在于,所述基于所述固定形式的配置函数构造预留代号接口的宏函数,包括:
6.根据权利要求5所述的系统验证扩展方法,其特征在于,所述宏函数还包括预留特殊接口,以通过所述宏函数的预留特殊接口根据特殊变量名对需进行特殊配置的例化模块进行特殊处理。
7.根据权利要求1所述的系统验证扩展方法,其特征在于,所述通过脚本和所述宏函数,批量生成各个例化模块的配置函数和测试用例,包括:
8.一种系统验证扩展装置,其特征在于,包括:
9.一种系统验证扩展设备,其特征在于,包括:
10.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如权利要求1至7任一项所述的系统验证扩展方法的步骤。