当前位置:   article > 正文

IC验证工作随笔--工作1年_数字ic验证1年工作经验

数字ic验证1年工作经验

目前,从事IC验证工作已经满1年了,正巧昨天OPPO宣布终止ZEKU业务,写在未来大事件的开幕。
感觉这只是一个开端,未来会有更多集中成立在19-23年的公司倒闭,因为4年差不多会有成熟的公版芯片流片完成,如果在这个时候不能抢占下老玩家的市场,那就凉凉了。
工作时间久了,掌握的知识多了,就感觉以前写的关于UVM和SV的相关总结不够细致,但是这又是一个庞大的工程,以后再一点点的总结。接下来还是会从以下几个方面进行:住房、身体、精神、工作。工作在我这的排序依然是最低的(笑)。
1、住房
虽然我本人没有这方面的困扰,但是身边同事,同学已经开始为这方面的问题开始烦恼了,买了房的苦恼房贷装修问题,没买房的焦虑要不要买房,同届的同事目前因为苏州的优租房政策还不需要担心这个问题,但是这始终是一个问题,一个长期的问题。目前来看,我们公司业务稳定且现金流充足,作为一个在中国开了20多年的公司,可能工资没有能比得过新成立3,4年的新公司,但是它稳定,培训机制成熟。如果是想得到工作经验和留下来,建议还是选择成立多年的公司,可能进去成为螺丝钉,但是作为一个行业新人,先成为合格的螺丝钉已经是成功了。

2、身体&精神
工作一年后,我感觉到了“迷失”,就是会出现找不到方向的感觉,沉沦其中固然舒服,但是这样就代表着停下来脚步。我目前依然在坚持着锻炼,但很明显的感觉,锻炼过程中,精神上的疲惫让我没办法冲击更大重量了。并且,节假日唯一想做的就是在家恢复精神,但节日后还是会出现假日综合症(头晕)。我需要想办法来解决这个问题,岁月的沉沦,需要身体和精神或许还需要“信仰”的力量来与之对抗。

3、工作
工作一年后渐渐意识到,验证效率或者说验证出bug的能力,取决于以下几个方面:代码能力,test plan规划,验证平台架构,注释。
代码能力:代码能力主要分为写代码能力和debug能力。写代码能力的话就是说你写出来的代码最好是简洁清晰,可读性强的。“less is more”这句话不同阶段读都有不同的感悟,debug能力就是说你在compile阶段能不出现或者很快解决问题,如果工作一年编译上的问题其实应该就不多了,就是些小问题,影响不会很大。比较重要的就是仿真时候出现的问题,vcs版本问题,vcs的option少了什么导致的仿真错误,amba vip的config少加什么option,代码中逻辑漏洞,这些都可能对导致仿真无法random跑很长时间,或者跑了很长时间没有达到很高coverage的情况。
test plan规划:这方面的能力我认为应该是重中之重,这代表这对项目的掌控能力,需要在项目一开始就花时间进行规划,然后在项目中进行调整和添加,需要知道design spec,以及verification spec。design spec需要designer 来完成,但是我们也需要对其有个自己独立的理解,verification spec就需要我们来完成了,那需要完成以下几个方面的内容了:
设计verification flow,我们需要知道整个验证的流程是怎么样的,比如说,
如果IP有register model那么就需要根据这些register来制定约束,如果IP没有register model那么就需要根据spec配置不同的cmd,那么这些其实都是以item的形式产生的。
设计完约束或者命令后,需要将driver dut了,将这些item发送给DUT让它可以运行起来。其中我们可以增加monitor checker,来证明我们给的item是正确的,而DUT也正确接收到了我们发送的item。
当DUT中接收command的register正确后,那我们就可以开始增加我们的scoreboard和checker了。哪些checker是需要加的,哪些内容是需要检测的。当然这是一个漫长的过程,因为你不知道后续项目会需要添加什么功能,所以这部分需要在一开始就想好让它们各自独立,不要互相影响。不然新版本对你来说就是新项目了。
验证平台架构:这部分其实就是见仁见智的一个部分了,如果是一个从零开始的新IP,你可以吸取之前类似IP的验证平台架构,把它的架子搬过来,然后将其中对你有用的部分保留,没用的部分删除,这就比较完美了。
但是大部分新人应该就没有机会直接开始新IP,而是用一个已经开始很久的老IP了,这就代表这你无法或者说不能修改架构了,因为老IP就代表着很多个项目就可以会使用到这个IP,没办法修改它,没时间修改它,领导知道需要修改,但是项目太多了,需要验证的太多了,你就只能保证使用它,而无法修改它,即使它真的需要修改。
注释:我依然认为添加注释的能力,是工程师的道德的体现。简洁的注释,关键逻辑的注释,以及合理的文件名,合理的class名,合理的function,task名称,合理的变量名这些都是需要的。让自己看懂,让review code的同事能看懂很重要。

我认为第一年应该是一个从新手慢慢成长的一个过程,包括工程能力,社交能力,沟通能力,生活能力。学会换位思考,学会理解他人,在工作4个月的时候我会抱怨项目接手的问题,项目验证环境的问题,以后我应该不会抱怨了,工作就是工作。离职之后,项目就不应该和你有关系了,甚至下班就不应该和你有关系了,work just is work ,life is best。

IC行业应该感谢曾经有ZEKU,就是因为有鲇鱼的存在才能拉高整个行业的发展水平,薪资水平。都是现在鲇鱼中的排头兵没了,也许行业的雪花终于从华为那样的巨人头上,落到了矮一些的巨人的头上,最终也会平等的落到我们每个行业中人的头上。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/码创造者/article/detail/986826
推荐阅读
相关标签
  

闽ICP备14008679号