本发明涉及芯片设计验证,特别是涉及一种自适应时序变化的设计自动化验证方法、系统及验证平台。
背景技术:
1、随着集成电路的发展,芯片功能越来越复杂,设计规模越来越大,同时由于流片费用昂贵,芯片设计的验证要求也越来越高。因此,全面高效的功能验证对芯片的成功开发具有重要意义。
2、现有芯片设计验证大都采用基于通用验证标准搭建的验证平台,利用其可重构组件构建具有标准层次结构和接口的功能验证环境。比如,在uvm(universal verificationmethodology)验证平台结构中,通常被验设计(design under test,dut)的每一组输入输出接口需要一个测试(test)项目,每个测试项目包括环境(environment)组件、事务(transaction)组件和序列组(sequence)组件;使用验证平台时,通常采用基于测试用例(case)管理的方式,根据被验设计的功能提取出关键的特性,每个测试用例针对其中的一种或几种特性进行验证。如果想验证不同的特性,需要在验证平台的各个测试项目中添加不同的测试用例,才能完成验证工作,且若dut功能改动,就需要建立新的测试用例,还需要对environment组件、transaction组件、sequence组件进行新建或修改,并不能实现transaction组件的复用,且不能根据验证需求变化自适应更新验证平台执行新功能验证,大大增加设计人员工作量,浪费大量人力资源成本的同时,还会严重影响验证效率,进而导致芯片设计开发进度延缓。
技术实现思路
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、上述本技术提供了一种自适应时序变化的设计自动化验证方法、系统、计算机设备和存储介质,通过所述方法实现了定时扫描测试用例的预设约束配置路径,获取包括至少一个新增激励约束文件、和\或至少一个更新激励约束文件的目标激励约束文件,读取并解析各个目标激励约束文件,得到对应的端口信号时序配置信息,并将所述端口信号时序配置信息转换为宏定义插入至当前运行的验证平台,得到时序更新验证平台后,根据时序更新验证平台对被验设计进行仿真验证,得到对应的用例验证结果的技术方案。与现有技术相比,该自适应时序变化的设计自动化验证方法,能在复用现有测试用例的情况下,根据实际时序变动情况快速自动更新验证平台,有效满足同一被验设计在不同时序场景下的全自动化验证需求的同时,减少人力资源成本,提高验证效率和验证可靠性,为芯片设计开发进度和开发质量提供可靠保障。