我是入职半年的数字IC验证工程师ICer消食片。
两年前的我正直研二,对IC行业一无所知,通过自己的一些调研和咨询,一步一步的了解,随后自学了大半年的时间,在2020年秋招期间,顺利拿到几个数字IC的offer。
如果你也想了解这个方向,不妨看看我的一些建议:
0x00
首先,推荐你看两本书,《“胡”说IC菜鸟工程师完美进阶》本书介绍整个流程都有哪些岗位,充分了解IC行业的职业发展方向。《SoC设计方法与实现》强烈推荐这本书,让你了解SoC芯片流程,基本概念以及每个环节是在做什么。
0x04
其次,如果看完之后感兴趣,那你应该是真的感兴趣。那就开始学习专业课程吧!
《数字电路技术基础-阎石》 基础专业课程,建议转行和非科班同学必看,有很多基础且重要的知识点。数字逻辑电路是一定得会的,组合电路时序电路那块内容是重点,凡是和D触发器有关的重点掌握,其他的触发器电路了解了解就行了,用的很少的,等你工作后就会发现,做IC验证基本就得跟寄存器打交道了。这门课一两周内是可以搞定,这里我建议西安电子科技大学的课程【西安电子科技大学】《 数字电路与逻辑设计》任爱锋(64讲全)HD
在这期间顺便可以再看看两门课程作为辅助:《数字CMOS集成电路设计》 了解CMOS数字电路组成,MOS管的开关特性,门的组成等等。专业基础书,主要做个了解,对以后项目工作中有帮助。《硬件架构的艺术》 介绍了工程中的常见问题,工程师的经验总结,很值得阅读。有亚稳态,时钟分频,流水线,异步时钟同步问题等关键性问题的解释。
0x08
然后,这些东西看下来之后,基本掌握了入行的基础知识,现在开始写Verilog吧!
Verilog的书籍特别多,我推荐两本《Verilog数字系统设计教程-夏宇闻》、《轻松成为设计高手 Verilog HDL实用精解》,第一本作为参考书籍,第一部分的内容必看;第二本作为练习,最重要的还是自己手敲RTL代码,纸上得来终觉浅,实战能力非常重要。除此之外,还可以在这个https://hdlbits.01xz.net/wiki/Main_Page网站上实时练习。网课视频比较多,大家自行选择。
0x0c
继续,掌握了以上基础内容,就开始进阶SystemVerilog了。一般推荐初学者看绿皮书《SystemVerilog验证 测试平台编写指南》。刚开始看这本书,我猜百分之八九十的人都处于一种懵逼的状态,不知道重点在哪里,也很难坚持着看下来,整本书也只能有个大致的验证框架概念。确实,学这个还真需要有项目为辅。首先要知道它是在干什么,其次才能了解为什么要这么干。这里最好能找到网上的一些培训视频课程,其实就那几家机构的项目。听说现在自学或者培训转行的基本都会了,面试官基本都会问这几个项目。其次学习SystemVerilog需要有面向对象编程的基础,最好还是了解一些C++的基本概念,类、封装、继承、多态等等。
0x10
最后,当前阶段的数字IC验证都是基于UVM搭建的环境,所以最终要学的还得是验证方法学《UVM实战》。能走到这一步的朋友,说明你的自学之路即将成功了!但是不能掉以轻心,因为这里又是一个比较大的跨越了。基于SystemVerilog的学习之后我们发现,UVM其实就是基于前者的一个知识库一样,但是又添加了很多新的特性。这些特性就是为了让验证工程师更加高效率高质量的完成任务而生的。UVM的学习还得是配合着网课培训视频来,一步步的了解各种机制,慢慢的搭建验证环境。
大致回忆就这些,后期有想起新的内容会继续更新。
最后的最后,我建议有时间有精力的同学,一定要自己装一个Linux(工作环境),并且安装好VCS(编译仿真)和Verdi(看波形),这对你未来工作会有很大的帮助。