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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 8824|回复: 32

流行的验证技术

[复制链接]
发表于 2006-10-8 08:57:20 | 显示全部楼层 |阅读模式

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

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

x
大家可否讨论一下流行的验证技术,或者就给验证提出点想法的讨论一下啊
 楼主| 发表于 2006-10-8 08:57:54 | 显示全部楼层
自己先顶一下
 楼主| 发表于 2006-10-8 08:59:45 | 显示全部楼层
RVM参考验证方法在进行模块级验证时,优势没有体现出来,在进行系统级验证时其有才真正的发挥出来了,是这样吗?
发表于 2006-10-8 19:51:48 | 显示全部楼层
通常所说的验证工程师一般不是做模块级验证吧,一般都是系统级验证。模块通常是设计者自己验证。
除非项目很大,模块也需要专门的工程师验证。
发表于 2006-10-26 11:06:24 | 显示全部楼层
。。。。。。。。。。。。。。。
发表于 2006-10-27 10:33:59 | 显示全部楼层
验证工程师的工作范围是比较广的.从前端设计到后端设计,都需要验证.因为在ASIC的全部设计流程中,没经过一个设计阶段,就有增加新的bug的可能,而验证工程师的主要工作就是要保证没一个中间与设计规范保持功能的一致. 这包括前期的RTL设计,中间的物理网表,和后面的版图. 目前我们讨论的验证工作还是指前端的RTL设计.
验证技术不过分为基于模拟仿真和基于形式化的两种方法. 其中还是以模拟仿真方法为主导.
使用模拟仿真的方法进行的验证的主要验证环境(testbench)可以分三个主要问题:
1 测试生成:
2 结果检测:
3 覆盖率分析
在考虑测试生成时经常使用的方法是:
a 手工的编写测试向量,这种方法更有针对性,当然需要验证工程师对设计也必须相当的熟悉.这种方法的工作量也是很大的.主要有两种场合比较适合这种方法,第一在验证的前期,由设计人员进行的初步测试,针对设计的基本结构. 二 在进行一定的测试后,针对测试遗留下来的一些覆盖率漏洞,编写相应的测试向量.
b 自动的测试向量生成方法: 主要是使用随机以及带约束的随机方法来生成测试向量.这种方法可以用来进行主要的验证工作,通过不同的约束条件来控制测试的主要验证方向.
其他的方法:使用相同设计的测试向量. 如果是处理器设计可以使用相应的应用程序来作为测试向量等.
结果检测方法:
a 参考模型比较方法: 这是最常用的结果检测方法,需要开发相应的参考模型,将生成的测试向量同时输入设计和参考模型,并比较两者的结果,以次来发现设计错误. 比较的方法可以使用仿真时同步比较,也可以在一段测试完成后进行比较. 两种方法也会对参考模型提出不用的要求
b 自检测的方法:主要在编写测试程序时加入检测的代码, 在仿真的过程中自动检测.
覆盖率分析: 主要来衡量验证工作的完备程度.主要分为代码覆盖率和功能覆盖率.
代码覆盖率主要衡量设计代码在仿真过程中的执行情况,可以分为line, condition, toogle, expression, FSM等.
功能覆盖率主要是由验证工程师编写的监控模型,针对验证的测试点,比如某些事件 事件序列, 状态非法迁移等.功能覆盖率更能直观的反应验证的程度,也越来越受到工程师的重视.

其实一个验证环境把上面三个问题考虑清楚后就可以了,至于使用verilog C systemC vera e systemverilog等,只不过是工具的问题,比如在开发参考模型的时候可能使用C 或者systemC 等会由优势,因为它的高抽象级别.
开发功能覆盖率模型时使用vera, systemverilog等会更有优势,
至于什么覆盖率驱动的验证(coverage driven verification) 基于断言的验证(assertion based verification)等不过是提高验证的效率一些高级方法而以,其基本思想还是一样的.

我的一点认识,呵呵,希望大家多交流.
发表于 2006-10-27 20:44:42 | 显示全部楼层
楼上的说的真好!!顶个!!!我也去做verification但是现在被调到hardware去开发板子了
发表于 2006-10-28 21:22:34 | 显示全部楼层
说的好,顶一个
发表于 2006-10-29 19:11:37 | 显示全部楼层
那么有没有专门做数字前端的职位啊
发表于 2006-10-29 20:00:10 | 显示全部楼层

回复 #6 lucky9318 的帖子

个人觉得理解DUT的功能是验证的第一步,不理解功能,根本就不可能正确的产生测试向量
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-26 01:06 , Processed in 0.037899 second(s), 9 queries , Gzip On, Redis On.

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