设计好还是验证好这个问题让很多初入行的ICer困扰纠结,同时也是业内许多工程师热于讨论的话题之一。
总结一下,设计与验证的入行门槛、薪资待遇、岗位容量、发展路线等方面稍有区别,但差距并不算太大。
对于入行5年内的工程师来说,最显著且直观的就是工作内容上的差别了。
IC前端设计
根据功能制定设计方案,制定微架构,编写详细技术文档。
使用Verilog进行RTL逻辑设计,实现模块功能。
进行逻辑综合、时序分析,完成时序收敛。
中小规模的芯片可能还会参与DFT的工作。
参与芯片系统调试,后仿真、FPGA验证等工作。
IC功能验证
阅读design spec,编写verification spec,制定test plan。
搭建验证环境 (C/C++,systemC,systemverilog)。
创建test cases。
监测regression和提升coverage。
support其他工程师。
相应的,工作内容所要求的技能点也有所区别。就设计而言,对理论知识的要求更高一些,比如算法协议、接口、功能、结构等。
对验证来说,对工程师的coding能力要求更高,需要更熟悉各类EDA工具,熟悉各种脚本。
有不少同学关心IC天花板。如果一心搞技术,架构师就是数字岗位天花板了。有工程师说身边从设计出架构师的多,也有工程师说验证更容易培养系统视角成为架构师。如果想走管理路线,设计与验证都有可能成为leader。
行业内有一个非常实际且常见的情况,企业出于成本控制人员配置等方面考虑,并不会严格按照设计与验证1:3来配置团队。验证工程师不够怎么办?
这时就需要设计工程师自己设计、自己验证一些模块,这也对工程师的技能树提出了更高的要求。
所以一种理想的状态是:先做验证,再做设计,逐渐把自己培养成为“全栈型”IC工程师。
但并不是所有人都能遇到转岗机会,尤其是公司内部的转岗机会,就更稀有了。
设计and验证!
有没有一种可能,设计和验证可以一起学?
设计和验证一起学,一个显著的优点是入行时就能通过理论知识和实操项目感受验证和设计的异同点。
一方面培养设计与验证兼施的能力,为未来职业发展打下坚实的基础;另一方面可以明确的岗位意向,求职更多一份筹码和胜算。
基于此,IC修真院上架新课程——DFV(Design & Funcation Verification),结合了设计+验证的理论知识与项目实训。
就当下市场而言,DFV是一个全新的课程体系。但对于IC修真院而言,设计和验证都是我们打磨精良的课程。DFV这门课程经过课程研发部长期的市场调研,也符合当前企业对IC人才的需求。
理论知识方面。融合设计与验证的核心知识与技能,在数字电路的基础上深入学习设计原理及功能验证方法,例如:
常用的EDA仿真工具的使用,Linux使用技巧、SVN、脚本语言,Verilog语法学习。
通过模块练习(同步FIFO、异步FIFO)进一步提高Verilog代码编写能力。
深入学习常用的接口协议(UART、SPI、APB、AHB、AXI)以及实现。
通过SystemVerilog语法学习,全面综合RTL设计、测试平台、断言和覆盖率,为系统级的设计及验证提供支持。
项目实训方面。企业级项目不打折!
以MCU为项目主导,设计并验证主流芯片架构体系,将理论知识融入项目,更好地帮助学员快速融入企业工作中。
但是是否入行IC、选择什么岗位,都需要经历一个全面了解、深思熟虑、冷静判断的过程。
希望诸君三思而后行之,行之而有效。