wildgoat的个人空间 https://blog.eetop.cn/wildgoat [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

[ZZ]四大数字IC岗位(验证、DFT、前端、后端)全解读

热度 4已有 10435 次阅读| 2020-8-7 23:19 |个人分类:Digital|系统分类:芯片设计| 数字IC设计岗位, 验证, DFT, 前端, 后端

数字IC设计基本流程:设计—验证—RTL freeze—综合—STA(静态时序分析)—DFT—PR(自动布局布线)—Design sign-off


当然,有时候前端设计里,也需要做一些DFT的工作。


4310fe780dfb7df89c404a147afea89f.jpg

四大岗位:

  1. 数字前端设计工程师

  2. 数字验证工程师

  3. DFT设计工程师(可测试性设计工程师)

  4. 数字后端设计工程师


值得一提的是,前端的叫法每家公司有所不同,有的公司把前端设计工程师直接叫作数字IC设计工程师,同学们看招聘信息的时候,可以多注意一下这点。

二、数字IC设计流程发展的前世今生

远古时期:芯片规模小,一个人从前到后全部搞定,放到现在基本上是不大可能的。

发展时期:芯片规模变大,前端和后端彻底分开,做少量验证,验证工作一般也由前端完成,用FPGA直接上板调试,没有验证和DFT岗位,基本上是几个前端加一到两个后端,现在很多小规模的公司依然是这种模式。

现在:芯片规模大,流程复杂度上升,需要精细分工,衍生出大量岗位,验证和DFT应运而生。前端设计和验证分开,更容易找出芯片设计中的bug。在大公司里,设计和验证岗位的比例达到1:3,DFT的岗位也逐渐增加。

未来:芯片规模和复杂度继续上升,验证、DFT、后端的人越来越多。

三、四大岗位主要介绍

数字前端设计工程师

①读文档,写文档 :两个文档分别叫Function spec和Design spec。所有工程师都需要写很多文档,依照文档去干活。读文档主要包含很多各种各样的协议,比如USB协议,SD卡协议等。文档占了前端设计工程师很大的工作量。

②编程写代码:主要用到的语言是verilog,有时候也会用到C语言和C++。写出的代码叫RTL,有经验的工程师写出的代码风格都比较好,因为代码最终都要变成电路,他们更加了解每句话最终变成电路是什么样的,这是比较核心的技能。如果是做SOC的工程师,那么对CPU也需要了解。

③各种Debug:非常重要的事情,对于前端设计工程师来说,可能20%的时间用来写代码,而80%的时间则用来debug,且前端设计工程师的debug会贯穿整个流程。

④support:因为最初的源头代码是前端写的,所以前端往往需要从前跟到后,甚至到最后FPGA的上板测试,原型验证流程、点亮都需要进行支持。

数字验证工程师 

①读文档,写文档:Verification spec、Test plan。

②编程搭建验证平台:通常是用Systemverilog/UVM,如果做SOC,则用到C或C++。验证工程师也需要学习很多脚本语言,如Perl,Makefile,python。

③Debug:创建测试用例,跑仿真。

④support

数字前端设计工程师和数字验证工程师的核心能力:

  • 学习各种标准/文档的能力

  • 编程能力

  • Debug能力

DFT工程师

为了测试而加入的设计,在原来的电路里加入了额外的电路,相当于在电路里埋下了“摄像头”,当芯片回来的时候,可以通过外面的端口看到里面的情况,这是DFT的主要目的。

DFT代码是由工具自动生成插入的,比如用EDA工具。

ATE测试:用到ATE测试机台,机台是一个物理机器。

岗位工作内容:

①EDA工具使用:将DFT技术,常见的如Scan,Mbist,Boundary Scan技术,实现到设计中去。

②编程:产生测试向量并验证测试向量,编程其实相对较少,基本是在原来的模板上去修改,对编程技能要求没有那么高,能做基本编程就可以。根据实际情况,有些公司DFT也分为DFT Design和DFT Verification两个岗位。

③协助后端工程师完成test模式的时序收敛。

④协助测试工程师进行机台测试,debug failure,提高芯片良率,后期的ATE测试,也是DFT工程师经常要做的事。

数字后端设计工程师 

很早就存在的一个岗位,需要做的事情特别多。一下列举这个岗位主要做的一些事情:

①逻辑综合:把写的代码变成网表,当然,逻辑综合后面还有一些小流程,包括形式验证。

②自动布局布线:把网表变成版图

③静态时序分析(STA):数字后端非常核心的东西,怎样做好STA,怎样修掉timing是非常重要的。

④物理验证:最终变成版图之后,还需要做一些物理验证,主要是做一些DR,CR,LBS。

⑤功耗分析:对功耗做预估,后续对芯片做酵母分析的时候需要用到这些值

综上,后端设计工程师要做的事情是非常多的,但每家公司对后端的要求都不同,有些大公司里,上面5个步骤,每个步骤都有专门的人做,小点的公司可能就要多做几个步骤,甚至全部都要做,有的小公司可能也根本不会去做功耗分析。

后端设计工程师需要掌握的东西会比较多,但是不要求每一项都很精通。

核心技能要求:

1.EDA工具使用:需要掌握Innovus/Encounter,ICC/ICC2,DC等等多种工具

2.脚本语言:TCL、Verilog、Perl、Python

3.分析报告

4.修错误

最近很多同学在问:到底哪个岗位比较好?应该选择前端还是后端?

在回答这个问题之前,Lincoln先给大家展示了工程师的进阶阶梯:大多数人都会从一而终!

意思是如果你选择了前端或者后端,那么大多数人从毕业后开始,都是一直从事本岗位的,不太可能会转岗。

这就意味着,所有工程师的职业进阶路线都是相似的,基本按照下图所示:

一共两条发展路径,一条是技术路线,另一条是管理路线有的同学担心自己做了前端,以后就不好再转别的岗位,不能去做后端了,其实这是没有必要去担心的,如果能够在一个岗位里不断深入钻研,其实也是百利无害。不管你做什么岗位,都大致相同,不用太纠结。

四、岗位选择建议

一、根据自己掌握的技能去匹配岗位:各岗位发展空间及薪资涨幅情况基本相似,只需挑选最合适自己的岗位就好

二、如果什么技能都不会,那么需要问自己以下几个问题:

①是否喜欢/愿意编程?

如果讨厌编程,不想做编程,那就不用考虑数字前端岗位,因为前端设计和验证都需要做很多编程工作,可以考虑做后端或者DFT。

②是否想去二三线城市发展?

四个岗位针对的公司有很大的区别,比如像前面说的,有的小公司根本就没有验证和DFT岗位,而很多二三线城市里的IC公司都比较小。如果想去二三线城市发展,那么学习数字前端设计就会有更大的优势,因为任何一家公司都会有前端这个岗位,只不过比例不太一样。大公司里的前端设计和验证岗位比例是1:3,小公司里可能是3:1或者1:0,有时前端也需要做验证的活。当然,近年来,有些二三线城市比如西安、武汉等,大公司也在慢慢变多了。

③更愿意一个人默默干活?还是经常和人交流?

数字前端设计工程师,因为是verilog的源头,所以从前到后都要全程跟进,哪个岗位出现问题,前端都需要去进行沟通和讨论。如果你属于更愿意自己一个人默默干活的类型,那么做验证或者后端、DFT岗位会比较合适。如果愿意经常和人交流,那么前端岗位就更加合适。

当然,对大多数人来说,这4个岗位都是完全可以胜任的。它们对编程的技能要求也没有大家想象的那么高,有的人即使原来没有学过编程,通过一些学习其实也可以达到岗位要求。

问完自己这三个问题后,大家就可以做出自己的选择了。

五、如何成为技术大牛

就像前面说过的,大多数人都会在一个岗位上从一而终,如果选择走技术路线,那么就需要往技术路线上一直走下去,那么如何成为技术大牛是一个非常关键的问题。

这个岗位能不能做到5、60岁?如果你的技术水平一直停留在刚毕业的时候,那么等你35岁的时候,被裁员的概率是非常大的。

所以如果选择了技术路线,那么我们就要奔着成为技术大牛的方向去发展。行行出状元,四个岗位都能够成为技术大牛!成为大牛后,百万年薪不是梦!我们需要做到:

①有钻研精神:遇到问题,一定要想方设法去搞定,不要总想着等别人来帮忙解决。你搞定一个一个小问题,那么知识也是在不断积累的,最终能力也会提升。

学无止境现在很多验证和后端的工具、语言和协议都在不断更新,我们一定不能停止学习。

从技术路线一路走来,其实归根结底,到最后大家拼的都是软实力学无止境,我们不能停止学习和提升,除了技术知识之外,还要学习一些交流能力、协调能力,组织能力、展示自己的能力、基本职业素养等,永远都要保持主动学习的好习惯。

且我们也要重视自己的每一个承诺,做一个能让别人信任的靠谱的人。公司的团队合作里,如果你表现得不靠谱,那么你得到的机会也会很少。

最后,“吃亏”是福,特别是新人时期,应该像海绵一样不断吸收,学会从失败的经验里吸取教训来提升自己,在工作中不要排斥多做一些可以提升自己能力的事情。

from:https://mp.weixin.qq.com/s/xPBSNmtS4e185u1ulzSNVw

2

点赞

刚表态过的朋友 (2 人)

发表评论 评论 (2 个评论)

回复 zhangwater 2022-6-22 16:42
好文!有功力的人才能写得出。
回复 欧尼酱拌面 2024-2-8 14:37
设计:验证为啥是1:3的比例?不应该是设计多些验证少些吗?(新人刚刚入行,多多指教)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 121

    粉丝
  • 41

    好友
  • 269

    获赞
  • 117

    评论
  • 22095

    访问数
关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-3-29 13:48 , Processed in 0.012030 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部