基于RVM的层次化SoC芯片验证平台设计及应用

[09-12 18:11:59]   来源:http://www.88dzw.com  单片机学习   阅读:8113

文章摘要:测试层在测试层,用户可以编写不同的测试例对DUT的功能进行验证。在测试例中,通过对约束的限制、环境类的例化、配置类的约束来实现对DUT的功能覆盖,以达到100%的功能覆盖率。验证平台的重用对单个模块验证完毕之后可以进行系统级的验证。根据RVM验证方法学搭建的层次化验证平台可以被重用到系统级的验证中。系统级验证侧重于检查各模块间的接口和数据交互是否符合设计规范,某些模块级验证的模块可以被复用到系统级验证中。对SIMc模块来说,系统级验证时,ARM端的驱动器、监视器以及激励产生器都可以被APB总线代替,SIM卡端的各模块可以继续使用,达到重用的目的。应用RVM验证方法的 注意事项与技巧RVM验证方

基于RVM的层次化SoC芯片验证平台设计及应用,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com

测试层

在测试层,用户可以编写不同的测试例对DUT的功能进行验证。在测试例中,通过对约束的限制、环境类的例化、配置类的约束来实现对DUT的功能覆盖,以达到100%的功能覆盖率。

验证平台的重用

对单个模块验证完毕之后可以进行系统级的验证。根据RVM验证方法学搭建的层次化验证平台可以被重用到系统级的验证中。系统级验证侧重于检查各模块间的接口和数据交互是否符合设计规范,某些模块级验证的模块可以被复用到系统级验证中。对SIMc模块来说,系统级验证时,ARM端的驱动器、监视器以及激励产生器都可以被APB总线代替,SIM卡端的各模块可以继续使用,达到重用的目的。

应用RVM验证方法的 注意事项与技巧

RVM验证方法学由synopsys公司提出,利用RVM验证方法学首选的编程语言是openVera硬件验证语言。笔者在应用RVM验证方法学搭建验证平台过程中的一些技巧和注意事项归纳如下:

1、验证某个模块前,首先要阅读相关文档,熟悉模块的功能特性,然后搭建验证平台的基本框图,选择RVM的相关技术,在验证平台基本框图指导下编程实现。

2、验证平台中功能覆盖点的定义是验证成败的关键,验证过程中利用RVM的覆盖率驱动技术,分析所定义的覆盖点的覆盖情况,改善该验证平台,每个功能覆盖点都必须被覆盖到。

3、RVM基类库提供了丰富的函数,但是synopsys没有开放RVM基类的源代码,所以验证代码的编写过程中应随时查阅RVM文档,尽量使用RVM基类提供的函数,而不是自己去重新开发一个函数。

4、RVM验证平台中各个模块之间通信有很多种方法,可以用RVM的callbacks类,也可以使用双通道等。 5、RVM为验证平台中的进程间通信提供了多种数据结构,例如semaphore、region、mailbox等,编程时应根据需要进行选择。例如,在某一时刻有多个并行的进程对同一个信号进行驱动,仿真工具会停止仿真并打印出错信息。解决的方法是应用semaphores数据结构,每个进程得到semaphore才可以驱动信号,对信号驱动后再释放semaphore供其他进程使用。

6、如果要打印信息,应使用rvm_log类而不是printf()函数。rvm_log类除了将信息打印出来,还可以显示出信息来源于验证平台中的哪个模块以及该模块的仿真时间,便于编程人员调试代码。

7、随机激励的产生不是真正意义上的随机,而是一种伪随机。编程人员在多次运行同一个测试例时应改变验证平台的随机种子,可通过调用srandom()函数来实现。

结语

用RVM验证方法学搭建的层次化验证平台将大大提高验证环境的执行效率。RVM验证方法学中的随机测试技术可以在很短的时间内达到更高的功能覆盖率,提高验证工程师的工作效率,达到有效缩短验证周期的目的。



上一页  [1] [2] [3] 


Tag:单片机学习单片机开发,单片机原理,单片机教程单片机学习

《基于RVM的层次化SoC芯片验证平台设计及应用》相关文章

分类导航
最新更新
热门排行