集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 1023|回复: 0

牛人对IC验证的独特理解

[复制链接]
zhiweiqiang33 发表于 2012-10-20 14:48:28 | 显示全部楼层 |阅读模式
下面这些问题和回答是基于我个人对验证(主要是动态仿真验证)的理解,可能有理解的不到位、理解有偏差的地方,欢迎大家指正。

Q:验证的目的?

A:发现Bug,发现所有的Bug,或者证明没有Bug(转自夏晶的帖子)

Q:对验证工程师的要求?

Hacker mentality ,Organized testing ,Tool automation。

       如何做更多的testcase、如何覆盖更多的测试点、如何充分的利用服务器、如何尽可能最大化的自动比对

       强调一下:“注重细节”是验证工程师一个非常非常好的工作习惯。

Q:语言、方法学有多重要?

A:我的观点是:这两个都不重要。做事情的是验证工程师,来源是Spec,所以Testplan(全覆盖testplan)最重要。重要的是验证的意识,愿不愿意去实现H-O-T(wolf评论:什么是H-O-T?),即使一开始做的“土”一些也没关系。比如tb里经常要做的“自动比对功能”:1)维护queue,然后foreach的比较2)利用file-operation(fopen fread fwrite fscanf)来做文件比对3)直接$system(diff a b > c)以后看c文件大小。上述三种方法都可以(虽然2)会导致比较多的文件IO,硬盘读写会影响仿真速度,3)不能做实时的比对。不必拘泥于方法,关键是有这个意识。

Q:EDA行业对验证的支持?

A:个人感觉虽然(动态)验证这些年在理论方面的突破不大(静态验证一直是热点),但是EDA行业一直都很重视,实现类的工具主要是在做算法优化,这些年突破不大。但是验证方向上的点工具一直在不停的出(虽然最终可能也没有几个好使的工具),但是说明EDA行业一直在致力于寻求在验证上的突破。而且由于现在做SoC的太多,IP又太多,大家都是越来越重视验证,很多上规模的公司里验证人员较设计人员多不少。个人觉得这可能也是EDA重视验证的一个原因(用牛工具替代掉一些人LL)。

Q:如何跟踪缺陷?

A:可以考虑bug-zillar(wolf评论:What?好用么?有机会尝试一下)这类的工具---- 自动跟踪问题。

Q:作业提交系统(lsf或grid-engine)(wolf评论:What?看来我成井底之蛙了!)

A:充分和合理的利用计算资源。

Q:环境变量的管理?

A:个人推荐使用Module 工具(wolf评论:What?看来我成井底之蛙了!不知原博主是哪家公司?)。很多公司都是用这个免费的工具

Q:Testbench用到的编程语言?

A:我觉得tb里systemverilog(wolf评论:一定要掌握,以后验证就靠这个)和verilog是可以互相替换(当然了,systemverilog特有的内容用verilog来实现会很复杂),所以推荐tb基于systemverilog来搭建,一些仿真模型可以用verilog。C除了Cmodel以外,firmware也会用C和汇编写。

基本上我做过的项目里用到的语言:

脚本:perl、makefile、shell(perl用的很多,其他用的很少)

Tb(包括vmm的组件):基本是systemverilog

仿真模型:systemverilog和verilog混着用

Cmodel :C或C++

Firmware :汇编和C

Q:验证工程师需要掌握的基本技术?

A:分享一份我做的基本培训内容安排,供参考
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

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

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-6-26 11:33 , Processed in 0.086032 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表