“我发现平时工作的时候大多数的验证环境都是从以前项目移植过来的,真正自己从零开始的很少。这样会不会导致自己验证技能其中之一搭建平台的退化。”
验证工程师最核心的能力究竟是什么?
搭建一个环境感觉没什么难度,但是想搭建一个好的环境需要经验积累。尤其比较大的项目中,如何做到环境的可复用性、可扩展性、可移植性,以及环境如何写能有效避免一些常犯的bug(比如一些编码规范,或者类似UVM划分出不同phase)都还是需要功夫的。
只是验证环境往往要与验证业务相结合,要搭一个好用的验证环境还需要对业务和应用场景相当熟悉,这些事情都要花费很多时间精力。而且一个成熟的验证环境中很多功能也都是在验证工作过程中慢慢优化和添加的。
另外还有脚本能力,结果监控是通过脚本在打印的Log查找关键字,如ERROR, UVM_ERROR等。也要去掉一些,比如UVM中最后的UVM_ERROR。这些都是脚本编程能力。
搭环境就是核心竞争力,可以脱离公司,或者说你自己能把公司的工具环境和验证环境在自己的电脑上重写一遍,说明你基本上可以成为一个很不错的验证工程师了,而不是验证搬砖工。
其他ip验证的技术,那都是无非是时间的问题。前提的环境框架,基本验证技术的掌握,说明你的大框架已经起来了。
做工程师,如果你只会公司流程里的一些内容,流程背后的原理,机制不懂,这种情况下学习是很零散的,没有体系,会很被动。
作者:验证哥布林
原文链接:https://mp.weixin.qq.com/s/7LpdcphnTCxExMnpXHcz_w
微信公众号:
推荐阅读
更多IC设计技术干货请关注IC设计技术专栏