[心得] IC验证工程师工作经验分享

楼主: lgen7604   2016-10-29 06:57:58
工作五年了 从刚毕业的小菜鸟 到现在也经历了不少Project
发现版上对于IC验证工程师的资料很少
来分享一下自己的工作经验
希望能让更多人知道IC验证工程师的工作内容
如果各位有任何问题欢迎指教及讨论
以下 Digital Designer(简称DE)
指称主要工作是用HDL(台湾多用Verilog)设计数位IC电路的工程师
Digital Verification Engineer(简称DV)
工作相关技能:
1. Linux + shell script
2. scipt language (Perl, Python, Tcl, ...)
3. simulator (IUS, VCS, ModelSim)
4. debugger (通常是Verdi)
5. SystemVerilog/VMM/UVM
6. FPGA
7. 各种Protocal(AMBA, SPI, I2C, SDIO, ...)
IC验证工程师的工作内容说白了很单纯
怎么确定RTL设计是对的?
这也是很多公司不重视DV的原因
验证是种概念
DE把RTL写出来当然会想办法验证自己写的东西是否正确
为什么还需要DV呢?
我们分两个层面来看 IP level和system level
以IP level来说 例如32bit加法器(a+b=c含overflow bit)
这个design超简单的吧
但是要测试完所有的组合是不太可能的
a, b 各有 32bits 组合接近 2^64 种
每秒跑一百万组测资要跑超过50万年......
基本上很多DE就是随便写几组测资试试看
那要跑多少测试资料才算够呢?跑一百万组应该很多了吧
以DV的角度来看这题 重点不是测资数量的多寡
而是用coverage的数据来说话
包含 code coverage, toggle coverage, branch coverage, functional coverage
例如就算跑了一百万组测资 如果有几个bit一直都是0
有可能 input 1 时会发生错误但是没有发现
我的经验是DV的价值在于“如何制订计画,在有限时间内提高IC设计的可靠度”
执行的技能是其次 就算DE自己写verilog testbench验证
只要观念正确也可以有很好的效果
DV可以协助DE突破盲点 也可以提供技术让验证更有效率
从system level来看 验证的复杂度就更高了
通常每个IP都有自己的owner 系统又会由另外一个人整合
有做过design的都知道 就算每个IP测试都是正确的 整合完还是常常发生问题
就算系统运作正常 还可能有效能不足的问题
这通常是因为各个IP间该如何沟通 定义不清楚或是不完整
所以做系统验证必须要对整个系统架构有足够了解
当然 有人会认为做系统整合的工程师也可以做到这件事
某种程度上来说没错 只要系统整合的工程师是超人
以上工作内容都能吃下来的话
为了效率 另外找DV来做这件事
除了平行展开做事会比较快 专业分工也可以做得更深入
总结来说 DV的工作内容大概就是
1. 了解数位设计内容
2. 制订验证计画
3. 建立自动化验证环境并执行
以上是个人经验分享
如果对验证有兴趣的话
可以找《SystemVerilog for Verification》这本书来参考看看
希望台湾的IC设计公司能多重视验证一点...
作者: coollfd (Qoo..)   2016-10-29 07:25:00
作者: stock999 (史托克柰褦錼)   2016-10-29 07:40:00
谢谢分享,请问薪水?
作者: sweet222 (就是要让你感动)   2016-10-29 07:50:00
好文
作者: KnightG ( ~ 风 ~ )   2016-10-29 07:53:00
感谢分享 很好的文章..
作者: ggggggh (ggggggh)   2016-10-29 07:58:00
验证不被重视是薪水喔
作者: KnightG ( ~ 风 ~ )   2016-10-29 07:59:00
台厂好像比较少专职作验证 较不重视是真的(?)都是会和应付客户绑一块
作者: ama (我不知道)   2016-10-29 08:21:00
好文
作者: cajole145 (丹丹)   2016-10-29 08:23:00
电路错不是都从客户那边反馈回来的?
作者: windlins (CHIHHSIEN)   2016-10-29 08:26:00
验证薪水才是重点。
作者: pengpluto (暱称)   2016-10-29 08:38:00
验证什么都得验,除了薪水
作者: eatingshit (别怀疑我叫宜霆谢)   2016-10-29 08:39:00
验证只有出包时候才需要...
作者: yang8696 (雄)   2016-10-29 08:39:00
作者: bcew (bcew)   2016-10-29 08:51:00
谢谢分享,请问UVM在system level有什么参考资料吗看过UVM Prime,但多个IP、每个IP多ports时无法沿用
作者: Verriasen (你好)   2016-10-29 08:55:00
好文
作者: ptta (ptta)   2016-10-29 09:01:00
ic 做对是De 的功劳,做错是DV的责任
作者: ftns8217 (黑雄)   2016-10-29 09:06:00
优质好文
作者: nicegood888 (土城金城路金城武)   2016-10-29 09:10:00
优文 推
作者: mvp1943 (阿吉)   2016-10-29 09:35:00
薪水分享:同年资 验证大该是RD 0.5-0.7倍年薪,越老差约多..
作者: as891339 (Yang_Kai)   2016-10-29 10:07:00
作者: JohnnyXpang   2016-10-29 10:21:00
推好文
作者: u9412038 (u9412038)   2016-10-29 10:24:00
大推 好文 !!!
作者: holeinone   2016-10-29 10:33:00
好文 可让刚找工作的人做参考
作者: nikolas (你花多少时间?)   2016-10-29 10:40:00
这应该算是偏开发端的ic验证 还有一种是比较偏应用端的ic验证
作者: TFnight (二十四夜)   2016-10-29 10:55:00
长知识 推
作者: ACRRBYEK (Howard_Yu)   2016-10-29 11:06:00
推推~
作者: ji3g4m0 (王牌)   2016-10-29 11:08:00
我们公司是系统验证+IC验证+driver modular一人全包
作者: jimboshih (友友)   2016-10-29 11:09:00
推推
作者: maxumin (柏青哥代言人)   2016-10-29 11:15:00
最近也跨入这个行列,学linux shell script
作者: kickdog   2016-10-29 13:04:00
薪资真的差一截..
作者: z75383 (Jerry)   2016-10-29 13:19:00
推 谢谢分享
作者: profiles (pforileS)   2016-10-29 13:24:00
有功无赏,打破要赔的工作,不过日后可以转职系统厂
作者: yyy147892 (yyy)   2016-10-29 13:30:00
作者: Black1231 (肥☑丑☑穷☑宅☑)   2016-10-29 13:30:00
推分享,非常清楚
作者: wind155419   2016-10-29 14:19:00
感谢分享
作者: Rickyyy (Ricky)   2016-10-29 15:59:00
一堆人搞不懂DV,以为是SA or QA
作者: Smile365Day (微笑)   2016-10-29 16:12:00
在台湾好听一点是DV, 领的薪水是QA
作者: jay123peter (萧瑟风雅)   2016-10-29 17:02:00
作者: Acme ( )   2016-10-29 22:09:00
DV可转系统厂?那个系统厂要用UVM,VMM,SV?搞不懂也可推的那么爽
作者: hejux   2016-10-29 23:20:00
推 可以给刚入门的DV参考 很实用
作者: leomichael (蛙)   2016-10-30 07:17:00
以上说薪水低的应都不是DV的,DV薪水很可能比DE高请非DV的不要推文误导大家,DV在台湾非常缺人曾经,我们处长说,愿意从DE转DV的,加薪!希望想加入DV的人别被推文误导了DV跟QA完全不同
作者: ama (我不知道)   2016-10-30 08:47:00
johny srouji就是DV出身薪水: SW > DV > DE > QA
作者: sweetpotatoa (ㄏㄨㄢ ㄕㄨˇ)   2016-10-30 10:51:00
台厂的DV都是被DE当狗使唤吧, DV老板几乎都DE出身
作者: iosian (监督核安支持核能)   2016-10-31 05:52:00
AE呢
作者: i4undying (GO)   2016-10-31 19:47:00
推分享

Links booklink

Contact Us: admin [ a t ] ucptt.com