在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 8064|回复: 10

[求助] 求助:关于VMM验证

[复制链接]
发表于 2012-2-15 20:28:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
小弟关于VMM验证方法一直有些疑问。我在测试中自认为是这个验证方法,但是对比规范的测试平台自己的测试又欠缺很多,先将疑问提出:

1.是否所有的测试平台都需要完整的“测试层,场景层,功能层,指令层,信号层”?我一直对其中各层主要负责的任务没有搞清楚。比如,场景层中的测试案例,具体指的是什么?场景层和功能层中的生成器和驱动器,我觉得完成的功能相同,都是为DUT提供激励,其差异在哪呢?

2.针对测试测试平台的定义:测试平台产生受约束的随机激励,并收集功能覆盖数据。假如我为了测试一个模块,比如一个浮点乘法部件。没有完整的测试平台中这些层和部件,只有受约束的随机激励和一个对比模型,也有功能覆盖率模型,来观察最后的覆盖率情况。请问这样的一个验证过程是否也可以成为VMM的验证方法?

3.对于测试人员,关于systemverilog中的具体语法和结构是否都必须掌握,或者说掌握到何种程度?

4.完整的测试平台中,是否其是针对SOC设计,假如针对一个小得设计并不需要完整的测试平台。

大概就这些,自己一直都搞不清楚。还望大家各抒己见,畅所欲言!

谢谢!
 楼主| 发表于 2012-2-16 15:01:53 | 显示全部楼层
自己顶一下,希望不要沉了!
发表于 2012-2-16 15:41:04 | 显示全部楼层
对于测试平台,我觉得不需要严格搭建完整的验证平台,重点是为了项目进行验证服务的,而不是为了搭建验证平台而搭建的,这个可以有一定的灵活调整~
发表于 2012-2-17 12:21:40 | 显示全部楼层
首先你好像对验证和测试划分的不是很清楚,我也没做多长时间,但我觉得验证主要是指流片前的一些debug,也叫EDA验证,对于你所说的那个验证结构,应该不算VMM,只是一个简单验证平台,但对于验证这个模块已经足够了。
至于SV和验证的关系,其实SV是为验证服务的,但验证不一定用SV,比如以前就可以用verilog写浮点模块,但以前没有SV,不是照样设计出来验证完成。方法学之类的东西个人认为不是浮云,但也不一定非得用,它只是建立在SV基础上的一种验证方法,我们用这个方法能更好的发挥SV在验证方面的优势。但你要在验证方向长远发展还是得会一些的。换句话说,你做验证还不学方法学,那你打算学什么呢?靠你那个平台走天下可不现实。
见解比较粗浅,网上可以找到很多介绍。
发表于 2012-2-17 23:25:20 | 显示全部楼层
1.是否所有的测试平台都需要完整的“测试层,场景层,功能层,指令层,信号层”?我一直对其中各层主要负责的任务没有搞清楚。比如,场景层中的测试案例,具体指的是什么?场景层和功能层中的生成器和驱动器,我觉得完成的功能相同,都是为DUT提供激励,其差异在哪呢?

这些层次的分类更多是基于抽象层面,不是所有的环境都需要完整的实现这些层次,但是一般来说,除了场景层其他层应该都有: 信号层必须有(DUT所在的就是信号层), 指令层也必然有,你不可能基于时序去验证,总得把数据抽象出来。功能层就是针对抽象数据的各种操作,例如比对两个数据流的ScoreBoard。测试层也总是有的,testcase就是测试层么。所以除了场景层不是所有环境都有,其他的层一般都是有的。



2.针对测试测试平台的定义:测试平台产生受约束的随机激励,并收集功能覆盖数据。假如我为了测试一个模块,比如一个浮点乘法部件。没有完整的测试平台中这些层和部件,只有受约束的随机激励和一个对比模型,也有功能覆盖率模型,来观察最后的覆盖率情况。请问这样的一个验证过程是否也可以成为VMM的验证方法?
     
当然可以…… vmm书的前言说了,工程师可以根据自己的需要,选择使用书中接受的全部或者一部分方法用于自己的实践。
BTW:我认为纠结于这个名分似乎没啥意义。



3.对于测试人员,关于systemverilog中的具体语法和结构是否都必须掌握,或者说掌握到何种程度?
      基本的控制语句,class建模,constraint, coverage,assertion语法相关熟悉了就差不多了,其他的用到了再学。

4.完整的测试平台中,是否其是针对SOC设计,假如针对一个小得设计并不需要完整的测试平台。
         那得看有多小了,一个乘法器这种,直接写个嵌入式的自测试语句也许都更快……
 楼主| 发表于 2012-2-19 20:38:51 | 显示全部楼层



谢谢。这两天看有关资料,也发现实用的测试平台中,并不是将所有模块都陈列出来。具体难易程度,需要是项目具体而定。
 楼主| 发表于 2012-2-19 20:45:29 | 显示全部楼层


1.是否所有的测试平台都需要完整的“测试层,场景层,功能层,指令层,信号层”?我一直对其中各层主要负责 ...
specmane 发表于 2012-2-17 23:25



谢谢您的回复。近几天我在看一些例子,发现的确如您所说。测试平台的复杂度需要根据DUT的难易程度而定。

但是还有一个问题,我想问您。

关于基类,VMM的库函数,对于一般的测试平台搭建有什么帮助呢?
发表于 2012-2-21 09:42:26 | 显示全部楼层
上面的都不是专业的验证人员,

如果你按着VMM user guide来搭, 这些层都有了.
vmm_test---测试层
vmm_senario---场景层
vmm_xactor -> 扩展出功能层和指令层-> driver和generator
interface -> 信号层.

不管模块大小, 层次必须清楚, 这个对于reuse非常有用. 而且基本代码可以用vmmgen产生出来, 然后往里填东西即可.

SV的语法必须完全, 清楚掌握, 当然太corner的可以了解, 不然你做什么验证.

小模块也要标准化, 不然怎么集成到SoC里? 或者大模块里?
发表于 2012-2-21 09:48:34 | 显示全部楼层
liaojieliaojie
发表于 2012-2-21 14:07:56 | 显示全部楼层
回复 8# loglong


    学习了。。。谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-15 01:44 , Processed in 0.033329 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表