一种自动化生成IP核测试激励的方法及系统技术方案

技术编号:37812562 阅读:8 留言:0更新日期:2023-06-09 09:42
一种自动化生成IP核测试激励的方法及系统,能够自动生成IP核测试激励,不需要测试人员根据每个IP核待测用例单独生成测试激励,既能节省时间,也能遍历所有激励状态,做到充分测试,对于不同的IP核可以结束很多测试时间,同时易于掌握,降低了对测试人员的技术要求,大大提高了测试效率,降低了测试成本。方法包括:(1)获取IP核顶层端口信号及其逻辑;(2)定义字典,存储IP核端口信息;(3)生成待测试IP核设计集列表文件;(4)获取设计集列表,遍历待测设计,然后结束仿真,判断网表输出信号是否和设计输出一致,若一致,则结果正确,若不一致则打印错误信息。打印错误信息。打印错误信息。

【技术实现步骤摘要】
一种自动化生成IP核测试激励的方法及系统


[0001]本专利技术涉及可编程逻辑器件的设计仿真测试的
,尤其涉及一种自动化生成IP核测试激励的方法,以及一种自动化生成IP核测试激励的系统。

技术介绍

[0002]随着集成电路技术的发展,FPGA(Field-Programmable Gate Array,现场可编程门阵列)的EDA(Electronics Design Automation,电子设计自动化)软件尤为重要,FPGA的EDA软件不同于其他的软件系统,它集成了包括设计电路、编译电路、调试电路、分析电路等功能。
[0003]FPGA EDA工具的主要功能是将电路先转换为网表文件,再对网表文件做后续的装箱、布局、布线、生成配码等处理流程。
[0004]综合,是将数字设计的高层次描述转化为门级网表的过程。转化,是在标准单元库和特定的设计约束基础上进行的,无论是数字芯片设计,还是FPGA开发,都需要用到逻辑综合。逻辑综合是EDA软件的一部分,是数字设计的第一步,必须要保证经过逻辑综合后生成的网表功能同原设计是一致的。要证明逻辑综合的功能需要通过大量的测试来实现,用IP核设计来测试逻辑综合也是一种方法,每个IP核可以生成很多设计文件,可以通过每个设计文件(即,设计用例)来验证设计经过逻辑综合后功能是否改变。因为IP核的设计文件可以生成很多,每个都要生成对应的激励,所以用IP核设计来测试逻辑综合是一项重复且大量的工作。

技术实现思路

[0005]为克服现有技术的缺陷,本专利技术要解决的技术问题是提供了一种自动化生成IP核测试激励的方法,其能够自动生成IP核测试激励,不需要测试人员根据每个IP核待测用例单独生成测试激励,既能节省时间,也能遍历所有激励状态,做到充分测试,对于不同的IP核可以结束很多测试时间,同时易于掌握,降低了对测试人员的技术要求,大大提高了测试效率,降低了测试成本。
[0006]本专利技术的技术方案是:这种自动化生成IP核测试激励的方法,其包括以下步骤:(1)获取IP核顶层端口信号及其逻辑;(2)定义字典,存储IP核端口信息;(3)生成待测试IP核设计集列表文件;(4)获取设计集列表,遍历待测设计,然后结束仿真,判断网表输出信号是否和设计输出一致,若一致,则结果正确,若不一致则打印错误信息。
[0007]本专利技术获取IP核顶层端口信号及其逻辑,定义字典,存储IP核端口信息,生成待测试IP核设计集列表文件,获取设计集列表,遍历待测设计,然后结束仿真,判断网表输出信号是否和设计输出一致,来确认逻辑综合生成的网表是否正确,因此该方法能够自动生成IP核测试激励,不需要测试人员根据每个IP核待测用例单独生成测试激励,既能节省时间,
也能遍历所有激励状态,做到充分测试,对于不同的IP核可以结束很多测试时间,同时易于掌握,降低了对测试人员的技术要求,大大提高了测试效率,降低了测试成本。
[0008]还提供了一种自动化生成IP核测试激励的系统,其包括:读取模块,其配置来获取IP核顶层端口信号及其逻辑;存储模块,其配置来定义字典,存储IP核端口信息;生成模块,其配置来生成待测试IP核设计集列表文件;遍历模块,其配置来获取设计集列表,遍历待测设计,然后结束仿真,判断网表输出信号是否和设计输出一致,若一致,则结果正确,若不一致则打印错误信息。
附图说明
[0009]图1示出了根据本专利技术的自动化生成IP核测试激励的方法的流程图。
[0010]图2示出了根据本专利技术的自动化生成IP核测试激励的方法的一个具体实施例的流程图。
具体实施方式
[0011]本专利技术主要针对EDA工具中逻辑综合功能正确性的验证。在逻辑综合功能验证时,通过比较IP核设计的功能和逻辑综合生成的网表功能是否一致,来确认逻辑综合生成的网表是否正确。
[0012]如图1所示,这种自动化生成IP核测试激励的方法,其包括以下步骤:(1)获取IP核顶层端口信号及其逻辑;(2)定义字典,存储IP核端口信息;(3)生成待测试IP核设计集列表文件;(4)获取设计集列表,遍历待测设计,然后结束仿真,判断网表输出信号是否和设计输出一致,若一致,则结果正确,若不一致则打印错误信息。
[0013]本专利技术获取IP核顶层端口信号及其逻辑,定义字典,存储IP核端口信息,生成待测试IP核设计集列表文件,获取设计集列表,遍历待测设计,然后结束仿真,判断网表输出信号是否和设计输出一致,来确认逻辑综合生成的网表是否正确,因此该方法能够自动生成IP核测试激励,不需要测试人员根据每个IP核待测用例单独生成测试激励,既能节省时间,也能遍历所有激励状态,做到充分测试,对于不同的IP核可以结束很多测试时间,同时易于掌握,降低了对测试人员的技术要求,大大提高了测试效率,降低了测试成本。
[0014]优选地,所述步骤(1)中,首先获取待测试IP核的所有可能端口,了解端口逻辑;对于输入端口,确定是否为具有控制逻辑的端口(具有控制逻辑的端口包括:时钟信号端口、同步清零端口、异步清零端口等),对于这些输入端口,获取该IP适用的时钟频率范围,清零信号是高有效还是低有效,每个控制信号的位宽,时钟使能和时钟信号的对应关系;除了具有控制逻辑的端口,其他输入端口为数据端口,获取端口名及位宽信息;对于输出端口,获取端口名及位宽信息。
[0015]优选地,所述步骤(2)中,字典为三个:字典a的key值为对应IP核名,value为对应IP核的时钟端口名及对应频率范围;字典b的key值为对应IP核名,value为对应IP核的同步清零信号名、异步清零信号名以及有效电平;字典c的key值为对应IP核名,value值是一个
列表,里面存储该IP核所有的输入控制信号。
[0016]优选地,所述步骤(3)中,将待测试IP核设计集整理到一个列表文件中,列表文件每行存储一个待测设计的信息,每个待测试设计包括:路径信息、顶层文件名、IP核类型。
[0017]优选地,如图2所示,所述步骤(4)包括以下步骤:(4.1)用脚步读取列表文件,遍历文件每行内容,对于每个待测设计,根据路径信息和顶层文件名,解析顶层文件,获取到待测设计的端口信息,端口信息包括端口名及位宽,端口类型;(4.2)实例化一个测试,向该实例传递待测设计的路径,顶层文件名,端口信息,待测设计的类型;(4.3)实例化的测试包含一个字符串,此处定义其名为tb_content,这个字符串用来存储最终要生成的测试激励文件的内容,tb_content字符串内容包括:时间单位、仿真精度、模块名字、信号列表、激励时钟生成、数据初始化、激励状态遍历及数据生成、测试模块调用、结果确认;(4.4)初始化激励信号,首先判断是否有时钟信号,如果有时钟信号则通过always语句加延迟时间定义时钟,其他激励信号的初始化统一采用initial方式定义,若有异步清零信号,则根据异步清零的有效电平定义,让电路初始为清零状态,其他激励信号根据位宽均定义为1bit或多bit的0,初始化激励信号后,定义短时间的时间延本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种自动化生成IP核测试激励的方法,其特征在于:其包括以下步骤:(1)获取IP核顶层端口信号及其逻辑;(2)定义字典,存储IP核端口信息;(3)生成待测试IP核设计集列表文件;(4)获取设计集列表,遍历待测设计,然后结束仿真,判断网表输出信号是否和设计输出一致,若一致,则结果正确,若不一致则打印错误信息。2.根据权利要求1所述的自动化生成IP核测试激励的方法,其特征在于:所述步骤(1)中,首先获取待测试IP核的所有可能端口,了解端口逻辑;对于输入端口,确定是否为具有控制逻辑的端口,对于这些输入端口,获取该IP适用的时钟频率范围,清零信号是高有效还是低有效,每个控制信号的位宽,时钟使能和时钟信号的对应关系;除了具有控制逻辑的端口,其他输入端口为数据端口,获取端口名及位宽信息;对于输出端口,获取端口名及位宽信息。3.根据权利要求2所述的自动化生成IP核测试激励的方法,其特征在于:所述步骤(2)中,字典为三个:字典a的key值为对应IP核名,value为对应IP核的时钟端口名及对应频率范围;字典b的key值为对应IP核名,value为对应IP核的同步清零信号名、异步清零信号名以及有效电平;字典c的key值为对应IP核名,value值是一个列表,里面存储该IP核所有的输入控制信号。4.根据权利要求3所述的自动化生成IP核测试激励的方法,其特征在于:所述步骤(3)中,将待测试IP核设计集整理到一个列表文件中,列表文件每行存储一个待测设计的信息,每个待测试设计包括:路径信息、顶层文件名、IP核类型。5.根据权利要求4所述的自动化生成IP核测试激励的方法,其特征在于:所述步骤(4)包括以下步骤:(4.1)用脚步读取列表文件,遍历文件每行内容,对于每个待测设计,根据路径信息和顶层文件名,解析顶层文件,获取到待测设计的端口信息,端口信息包括端口名及位宽,端口类型;(4.2)实例化一个测试,向该实例传递待测设计的路径,顶层文件名,端口信息,待测设计的类型;(4.3)实例化的测试包含一个字符串,此处定义其名为tb_content,这个字符串用来存储最终要生成的测试激励文件的内容,tb_content字符串内容包括:时间单位、仿真精度、模块名字、信号列表、激励时钟生成、数据初始化、激励状态遍历及数据生成、测试模块调用、结果确认;(4.4)初始化激励信号,首先判断是否有时钟信号,如果有时钟信号则通过always语句加延迟时间定义时钟,其他激励信号的初始化统一采用initial方式定义,若有异步清零信号,则根据异步清零的有效电平定义,让电路初始为清零状态,其他激励信号根据位宽均定义为1bit或多bit的0,初始化激励信号后,定义短时间的时间延迟;(4.5)根据所有控制信号的总位宽,定义要测试的激励状态数量,遍历每一个激励状态,保证能测试到所有激励状态下的设计输出;(4.6)遍历完所有激励状态后,通过finish语句结束仿真;(4.7)增加测试模块调用,此处调用两个模块,一个是综合工具生成的网表,一个是原
设计模块;(4.8)增加输出验证,对于输出验证,判断网表输出信号是否和设计输出一致,若一致,则结果正确,若不一致则打印错误信息。6.根据权利要求5所述的自动化生成IP核测试激励的方法,其特征在于:所述步骤(4.3)中,对于tb_content,在定义的时候初始值包括:时间单位、仿真精度、模块名字以及信号列表,信号列表是根据原顶层文件中的端口信息生成,原端口类型为输入的定义为reg类型,其他均定义为wire类型。7.根据权利要求6所述的自动化...

【专利技术属性】
技术研发人员:冯苏红徐维涛
申请(专利权)人:中科亿海微电子科技苏州有限公司
类型:发明
国别省市:

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

1