本发明涉及芯片验证,更具体地说,它涉及一种自适应随机激励验证方法、系统、终端及介质。
背景技术:
1、在当今智能互联网时代,为满足高速高性能的市场应用需求,芯片系统功能越来越复杂,芯片集成度越来越高,芯片外部接口以及芯片内部的模块之间,流量控制与配合成为通用功能。而芯片验证作为芯片开发过程中的重要一环,必然要求验证平台能以更简单的架构,实现自适应的复杂激励,以更少的搭建时间和更高的仿真运行效率,对模块的功能进行充分验证。
2、现有技术中的模块验证,一种是将接口采集到的数据全部送到参考模型,在参考模型中进行统一解析,将解析结果通过事务级传输接口传递到激励发生器,从而影响激励的产生;另一种是激励发生器和事务驱动器之间插入专用的协议解析器和激励仲裁模块,将接口采集到的数据传递给解析器和仲裁模块,对产生的随机激励进行约束,例如申请号为cn115357441a的中国专利申请,公开了一种基于uvm(通用验证方法学)的通用验证组件及反馈控制方法,其将事务检测器的输出结果通过port(端口)/imp(缓存)等uvm组件发送到协议管理器和虚拟仲裁器,通过协议管理器和虚拟仲裁器对虚拟序列的控制,来达到对反馈电路激励发生的控制。
3、然而,各验证组件接口需要层层连接,且不同反馈场景需要配置不同的虚拟序列仲裁器,验证平台组件较多连接复杂,组件之间需要层层数据传递,实时性不强,配合效率也不高。因此,如何研究设计一种能够克服上述缺陷的自适应随机激励验证方法、系统、终端及介质是我们目前急需解决的问题。
技术实现思路
1、为解决现有技术中的不足,本发明的目的是提供一种自适应随机激励验证方法、系统、终端及介质,通过无差别的组件封装方式,将组件之间的事务传输转变为组件内部的缓存,免除了组件间的层层接口连接和仲裁模块,激励产生和反馈获取在同一时刻同一位置进行,节约了从比对模型产生结果到激励产生模块获取反馈的周转时间,来自待测模块的反馈作用于激励的延时接近为零。
2、本发明的上述技术目的是通过以下技术方案得以实现的:
3、第一方面,提供了一种自适应随机激励验证方法,包括:
4、模拟待测模块的验证环境,并配置待测模块在验证环境中进行验证所需的参数;
5、依据输入的虚拟序列生成协议事务包;
6、依据协议事务包和组件配置器所配置的协议参数驱动待测模块完成数据传输;
7、采集待测模块输入的第一数据流信息,并以uvm类型的先入先出队列存储第一数据流信息;
8、采集待测模块反馈的第二数据流信息,并以uvm类型的先入先出队列存储第二数据流信息;
9、通过虚拟序列解析第二数据流信息后得到解析结果,并依据解析结果调整下一轮虚拟序列的随机方向;
10、通过参考模型读取第一数据流信息作预期处理后得到参考信息,并读取第二数据流信息与参考信息进行对比,得到随机激励验证结果。
11、进一步的,所述第一数据流信息包括待测模块输入的数据包和控制信息;
12、和/或,第二数据流信息包括待测模块输出的数据包和控制信息;
13、其中,数据流信息都会打包成uvm通用帧结构的格式存入序列发生器的先入先出队列中。
14、进一步的,所述通过虚拟序列解析第二数据流信息后得到解析结果的过程具体为:
15、虚拟序列从序列发生器中获取uvm通用帧结构,并将uvm通用帧结构包转化成平台自定义的包格式,解析出每个字段的值;再由协议处理函数,解析出具体字段包含的信息,包括待测模块是否收到平台激励并正确回复,数据接口的拥塞情况。
16、进一步的,所述依据解析结果调整下一轮虚拟序列的随机方向的过程具体为:
17、若虚拟序列中解析出待测模块收到的平台激励中包含错误,则根据协议,可以部分或者整体重发该包;
18、若虚拟序列中解析出待测模块存在严重拥塞,则暂停发包,直到拥塞消除,并且减少后续发送激励的频率;
19、若虚拟序列中解析出待测模块处理顺畅,则加大发包频率或者根据随机约束改变包的类型或者长度。
20、进一步的,所述参考模型通过配置指针地址与相应的序列发生器绑定,并通过指针地址直接读取一数据流信息和/或第二数据流信息。
21、第二方面,提供了一种自适应随机激励验证系统,包括:
22、参考模型,用于模拟待测模块的验证环境;
23、组件配置器,用于配置待测模块在验证环境中进行验证所需的参数;
24、序列发生器,用于依据输入的虚拟序列生成协议事务包;
25、事务驱动器,用于依据协议事务包和组件配置器所配置的协议参数驱动待测模块完成数据传输;
26、第一事务监视器,用于采集待测模块输入的第一数据流信息;
27、第一fifo模块,用于以uvm类型的先入先出队列存储第一数据流信息;
28、第二事务监视器,用于采集待测模块反馈的第二数据流信息;
29、第二fifo模块,用于以uvm类型的先入先出队列存储第二数据流信息;
30、其中,虚拟序列解析第二数据流信息后得到解析结果,并依据解析结果调整下一轮虚拟序列的随机方向;
31、以及,参考模型读取第一数据流信息作预期处理后得到参考信息,并读取第二数据流信息与参考信息进行对比,得到随机激励验证结果。
32、进一步的,所述uvm类型的先入先出队列与相应事务监视器中uvm类型的port端口相连;
33、所述序列发生器中生成一个uvm类型的port端口,并与验证组件中uvm类型的先入先出队列出口相连。
34、进一步的,所述待测模块的验证组件分为输入组件和输出组件;
35、所述第一fifo模块位于输入组件中,且实例化有多个与序列发生器一一对应的先入先出队列;
36、所述第二fifo模块位于输出组件中,且实例化有多个与序列发生器一一对应的先入先出队列。
37、第三方面,提供了一种计算机终端,包含存储器、处理器及存储在存储器并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面中任意一项所述的一种自适应随机激励验证方法。
38、第四方面,提供了一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行可实现如第一方面中任意一项所述的一种自适应随机激励验证方法。
39、与现有技术相比,本发明具有以下有益效果:
40、1、本发明提供的一种自适应随机激励验证方法,通过无差别的组件封装方式,将组件之间的事务传输转变为组件内部的缓存,免除了组件间的层层接口连接和仲裁模块,激励产生和反馈获取在同一时刻同一位置进行,节约了从比对模型产生结果到激励产生模块获取反馈的周转时间,来自待测模块的反馈作用于激励的延时接近为零;
41、2、本发明能根据实时反馈调整激励的随机特性,具有高内聚低耦合的封装性,在提升平台搭建效率的同时,最大程度模拟真实应用场景;
42、3、本发明相对激励的反馈约束来自于参考模型的方式,来自数据采集模块的信息直接作用于激励,反馈效率接近实时;
43、4、本发明不需要插入解析和仲裁模块,验证平台层次少,且各组件之间高内聚低耦合,验证架构更简洁高效。
1.一种自适应随机激励验证方法,其特征是,包括:
2.根据权利要求1所述的一种自适应随机激励验证方法,其特征是,所述第一数据流信息包括待测模块输入的数据包和控制信息;
3.根据权利要求1所述的一种自适应随机激励验证方法,其特征是,所述通过虚拟序列解析第二数据流信息后得到解析结果的过程具体为:
4.根据权利要求1所述的一种自适应随机激励验证方法,其特征是,所述依据解析结果调整下一轮虚拟序列的随机方向的过程具体为:
5.根据权利要求1所述的一种自适应随机激励验证方法,其特征是,所述参考模型通过配置指针地址与相应的序列发生器绑定,并通过指针地址直接读取一数据流信息和/或第二数据流信息。
6.一种自适应随机激励验证系统,其特征是,包括:
7.根据权利要求6所述的一种自适应随机激励验证系统,其特征是,所述uvm类型的先入先出队列与相应事务监视器中uvm类型的port端口相连;
8.根据权利要求6所述的一种自适应随机激励验证系统,其特征是,所述待测模块的验证组件分为输入组件和输出组件;
9.一种计算机终端,包含存储器、处理器及存储在存储器并可在处理器上运行的计算机程序,其特征是,所述处理器执行所述程序时实现如权利要求1-5中任意一项所述的一种自适应随机激励验证方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征是,所述计算机程序被处理器执行可实现如权利要求1-5中任意一项所述的一种自适应随机激励验证方法。
