一种基于UVM和VIP的SMBus模块级验证系统的制作方法

文档序号:36007032发布日期:2023-11-16 22:33阅读:247来源:国知局
一种基于UVM和VIP的SMBus模块级验证系统的制作方法

本发明涉及集成电路验证领域,特别涉及一种基于uvm和vip的smbus模块级验证系统。


背景技术:

1、芯片验证作为在流片前发现设计代码漏洞、提高流片成功率的重要手段,随着数字集成电路的发展,芯片验证方面的需求也日益增长,数字芯片验证方法也随之迅速发展,从早期采用verilog(硬件描述语言)搭建简单的验证环境平台对不同设计代码依次进行简单验证的方式,到引入面向对象的更高层次语言systemverilog(sv语言)创建功能更完善的验证平台进行验证的方式,再到如今基于uvm(universal verification methodology,一种标准化用于验证设计的方法学)验证的方式,验证方法学得到发展与完善,大大提高了验证环境的重用性和芯片验证人员的工作效率。

2、为了更节省时间和更低风险的完成验证任务,eda(electron designautomation,电子设计自动化)产商cadence、synopsys等相继推出更高效更可靠的vip(verification intellectual property,验证模板),能够植入用户的验证环境中,用于协议标准和接口的连接和检查。vip基于systemverilog和uvm验证方法学提供了接口,因此,用户可直接将vip引入到自己的验证环境中使用,通过vip模仿特定需求的协议并创造相应激励进行验证。引用可靠的vip可以极大程度的减少芯片验证人员的验证工作,提高验证效率,加快项目进度。

3、目前i2c(inter integrated circuit,内部集成电路)、ahb(advanced highperformance bus,高级高性能总线)、apb(advanced peripheral bus,高级外设总线)等总线的vip使用较为频繁与广泛,应用也相对成熟完善,相比之下,基于i2c的smbus(systemmanagement bus,系统管理总线)vip使用较少。虽然smbus vip也是基于i2c vip,但在具体使用过程中却与i2c vip有很多不同,这导致部分i2c vip验证的方法在smbus模块验证中难以实现。


技术实现思路

1、为克服现有技术在smbus模块验证中的缺陷问题,本发明提供了一种基于uvm和vip的smbus模块级验证系统,实现smbus模块在不同传输数据格式之间的转换验证,并能有效提升效率。

2、本发明采用的技术方案如下:一种基于uvm和vip的smbus模块级验证系统,包括顶层模块,用于模块例化,顶层模块包括:

3、dut模块,由待测的smbus模块实现,提供smbus接口;

4、接口模块,用于将待测的smbus模块接入验证环境;

5、测试用例层,用于例化验证环境和配置参数模块,创建测试用例与产生激励;其中,验证环境包括例化的vip的smbus验证环境与自定义验证子环境,通过验证环境生成测试用例完成smbus模块的验证;配置参数模块提供验证环境所需的基本参数。

6、作为一种优选方案,所述接口模块包括smbus接口与自定义接口;其中,smbus接口由vip提供,直接例化即可;自定义接口根据实际dut接口在例化的自定义验证子环境中对应设置。

7、作为一种优选方案,所述自定义验证子环境为除smbus总线以外的vip总线自带的验证环境,或为与芯片自定义总线相适配的验证环境,或为仅监控/驱动smbus模块的验证环境。

8、作为一种优选方案,所述smbus验证环境中直接引用了vip提供的driver组件、monitor组件、sequencer组件,完成测试激励的产生与发送。

9、作为一种优选方案,所述自定义验证子环境根据需求例化不同的组件。

10、作为一种优选方案,所述配置参数模块还包括smbus vip config文件的参数配置,包括主机参数及从机参数。

11、作为一种优选方案,所述配置参数模块中例化有多个子参数配置模块,在同一用例下,使用不同参数配置dut模块的工作模式,并发起读写事务完成验证。

12、作为一种优选方案,所述测试用例层还包括rm(reference model,参考模型)组件和scb(scoreboard,计分板)组件,分别与smbus验证环境、自定义验证子环境连接;所述rm组件模拟待测的smbus模块行为并将smbus验证环境与自定义验证子环境中monitor组件发送的读或写数据进行处理,再发送给scb组件,scb组件将rm组件发送的数据与smbus验证环境或自定义验证子环境中monitor组件发过来的数据进行比较,并打印相关信息。

13、作为一种优选方案,所述rm组件与scb组件之间、rm组件与monitor组件之间、scb组件与monitor组件之间通过fifo的方式完成读写数据的传输。

14、作为一种优选方案,smbus验证环境的monitor组件将发出的激励以数据包的形式按协议格式发送到rm和scb组件,rm和scb组件将smbus验证环境的monitor组件发送过来的数据包转换成读写地址和读写数据。

15、与现有技术相比,采用上述技术方案的有益效果为:本发明提出的验证系统对于dut模块重用性较高,能提高smbus模块验证效率,并且还能在同一用例中实现不同数据传输格式之间的转换。



技术特征:

1.一种基于uvm和vip的smbus模块级验证系统,其特征在于,包括顶层模块,用于模块例化,顶层模块包括:

2.根据权利要求1所述的基于uvm和vip的smbus模块级验证系统,其特征在于,所述接口模块包括smbus接口与自定义接口;其中,smbus接口由vip提供,直接例化即可;自定义接口根据实际dut接口在例化的自定义验证子环境中对应设置。

3.根据权利要求2所述的基于uvm和vip的smbus模块级验证系统,其特征在于,所述自定义验证子环境为除smbus总线以外的vip总线自带的验证环境,或为与芯片自定义总线相适配的验证环境,或为仅监控/驱动smbus模块的验证环境。

4.根据权利要求2或3所述的基于uvm和vip的smbus模块级验证系统,其特征在于,所述smbus验证环境中直接引用vip提供的driver组件、monitor组件、sequencer组件,完成测试激励的产生与发送。

5.根据权利要求3所述的基于uvm和vip的smbus模块级验证系统,其特征在于,所述自定义验证子环境根据不同需求选择例化不同的组件。

6.根据权利要求1所述的基于uvm和vip的smbus模块级验证系统,其特征在于,所述配置参数模块还包括smbus vip config文件的参数配置,包括主机参数及从机参数。

7.根据权利要求6所述的基于uvm和vip的smbus模块级验证系统,其特征在于,所述配置参数模块中例化有多个子参数配置模块,在同一用例下,使用不同参数配置dut模块的工作模式,并发起读写事务完成验证。

8.根据权利要求1所述的基于uvm和vip的smbus模块级验证系统,其特征在于,所述测试用例层还包括rm组件和scb组件,分别与smbus验证环境、自定义验证子环境相连;所述rm组件模拟待测的smbus模块行为并将smbus验证环境与自定义验证子环境中monitor组件发送的读或写数据进行处理,再发送给scb组件,scb组件将rm组件发送的数据与smbus验证环境或自定义验证子环境中monitor组件发过来的数据进行比较,并打印相关信息。

9.根据权利要求8所述的基于uvm和vip的smbus模块级验证系统,其特征在于,所述rm组件与scb组件之间、rm组件与monitor组件之间、scb组件与monitor组件之间通过fifo的方式完成读写数据的传输。

10.根据权利要求9所述的基于uvm和vip的smbus模块级验证系统,其特征在于,smbus验证环境的monitor组件将发出的激励以数据包的形式按协议格式发送到rm和scb组件,rm和scb组件将smbus验证环境的monitor组件发送过来的数据包转换成读写地址和读写数据。


技术总结
本发明提供了一种基于UVM和VIP的SMBus模块级验证系统,包括顶层模块,用于模块例化,顶层模块包括:DUT模块,由待测的SMBus模块实现,提供SMBus接口;接口模块,用于将待测的SMBus模块接入验证环境;测试用例层,用于例化验证环境和配置参数模块,创建测试用例与产生激励;其中,验证环境包括例化的VIP的SMBus验证环境与自定义验证子环境,通过验证环境生成测试用例完成SMBus模块的验证;配置参数模块提供验证环境所需的基本参数。本发明提出的验证系统对于验证SMBus模块的DUT模块重用性较高,能提高SMBus模块验证效率,并且还能在同一用例中实现不同数据传输格式之间的转换。

技术研发人员:陈昱锜,韦喆翙,李朝松
受保护的技术使用者:成都电科星拓科技有限公司
技术研发日:
技术公布日:2024/1/16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1