本发明涉及芯片检测领域,具体而言,涉及一种fpga的测试系统、方法和电子设备。
背景技术:
1、在fpga芯片的验证过程中,程序员根据软件需求设计编写可编程逻辑代码后,开展软件验证与确认工作。验证工程师首先需要具备基础仿真平台,根据已有平台模拟被测对象在加入测试激励及建立预期模型作用下的实际和预期输出情况,然后通过自动化比对日志以及观察仿真软件输出的波形图定位与确认问题等手段,来分析判断被测对象是否符合预期的功能。
技术实现思路
1、本发明要解决的技术问题是为了克服现有技术中芯片测试过程复杂并要求fpga芯片的测试人员精通底层语法及编译环境配置,对测试人员有较高的水平要求,且测试时间长,效率低的缺陷,提供一种fpga的测试系统、方法和电子设备。
2、本发明是通过下述技术方案来解决上述技术问题:
3、一种fpga的测试系统,包括:
4、配置文本验证模块,根据获取的配置信息生成预期配置文本,并将所述预期配置文本与fpga的开发配置文本进行比对,检测所述开发配置文本的错误;
5、建模模块,用于获取fpga组件和组件连接方式数据,依据所述组件连接方式建立所述fpga组件的连接关系,以生成fpga的仿真模型;
6、激励模块,用于获取输入配置参数,通过自动化脚本和所述输入配置参数生成测试激励,并将所述测试激励发送到所述仿真模型,得到仿真模型的第一输出值;
7、对比模块,用于将检测无误的开发配置文本和测试激励下装至存储设备,以由所述fpga读取所述存储设备中的所述开发配置文本和测试激励,得到fpga的第二输出值;
8、所述对比模块还用于根据所述第一输出值和所述第二输出值实时比对生成所述fpga的测试结果。
9、可选地,配置文本验证模块包括:
10、第一展示单元,用于展示配置参数候选项;
11、第一获取单元,用于根据被选中的配置参数候选项确定所述配置信息;所述配置信息包括以下至少之一:超时时间、开关延迟时间、发送周期、模块调用类型。
12、可选地,建模模块包括:
13、第二展示单元,用于展示组件图标;每一组件图标对应一功能模块;
14、建模单元,将被选中的组件图标对应的功能模块确定为fpga组件,根据所述连接方式数据建立所述fpga组件的连接关系。
15、可选地,对比模块包括:
16、输出单元,用于输出测试结果,所述测试结果包括测试日志和/或波形图;所述波形图包括以下至少之一:输入测试激励后fpga的输出值、仿真模型的输出值和测试激励。
17、可选地,所述fpga的测试系统还包括:
18、边界点测试模块,用于在所述测试激励的输入值范围内生成随机测试激励检测fpga输出结果,并检测测试激励的输入值是否全范围覆盖。
19、可选地,所述fpga的测试系统还包括:
20、覆盖率测试模块,用于利用语句测试所述fpga内的代码,当语句测试对代码的覆盖率未达到百分之百时,存在未验证的部分或者代码异常,执行报警提示。
21、可选地,所述覆盖率测试模块包括:
22、循环语句测试单元,用于测试循环语句的覆盖率;
23、表达式测试单元,用于测试表达式的覆盖率;
24、状态机测试单元,用于测试状态机的覆盖率;
25、条件语句测试单元,用于测试条件语句的覆盖率;
26、分支语句测试单元,用于测试分支语句的覆盖率。
27、可选地,所述fpga的测试系统还包括:
28、回归测试模块,生成自动化脚本,不间断执行fpga测试。
29、一种fpga的测试方法,利用以上任一项所述的测试系统实现,所述测试方法包括:
30、根据获取的配置信息生成预期配置文本,并将所述预期配置文本与fpga的开发配置文本进行比对,检测所述开发配置文本的错误;
31、获取fpga组件和连接方式数据,依据所述组件连接方式建立所述fpga组件的连接关系,以生成fpga的仿真模型;
32、获取输入配置参数,通过自动化脚本和所述输入配置参数生成测试激励,并将所述测试激励发送到所述仿真模型,得到仿真模型的第一输出值;
33、将检测无误的开发配置文本和测试激励下装至存储设备,以由所述fpga读取所述存储设备中的所述开发配置文本和测试激励,得到fpga的第二输出值;
34、根据所述第一输出值和所述第二输出值生成所述fpga的测试结果。
35、一种电子设备,包括存储器、处理器及存储在存储器上并用于在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的fpga的测试方法。
36、本发明的积极进步效果在于:该系统通过自动化验证开发配置文本,生成预期模型和测试激励,将开发配置文本与fpga芯片分层检测,大大缩短了测试需要的时间,提升了测试工作的效率并降低了人为错误率,克服了测试执行者在执行测试必须要精通底层语法及编译环境配置等痛点。
1.一种fpga的测试系统,其特征在于,包括:
2.如权利要求1所述的fpga的测试系统,其特征在于,配置文本验证模块包括:
3.如权利要求1所述的fpga的测试系统,其特征在于,建模模块包括:
4.如权利要求1所述的fpga的测试系统,其特征在于,对比模块包括:
5.如权利要求1所述的fpga的测试系统,其特征在于,所述fpga的测试系统还包括:
6.如权利要求1所述的fpga的测试系统,其特征在于,所述fpga的测试系统还包括:
7.如权利要求6所述的fpga的测试系统,其特征在于,所述覆盖率测试模块包括以下至少之一:
8.如权利要求1所述的fpga的测试系统,其特征在于,所述fpga的测试系统还包括:
9.一种fpga的测试方法,其特征在于,利用权利要求1-8中任一项所述的测试系统实现,所述测试方法包括:
10.一种电子设备,包括存储器、处理器及存储在存储器上并用于在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求9所述的fpga的测试方法。