众所周知,数字IC设计的岗位分为:前端设计、功能验证、DFT、后端设计。
抛开市场需求较少的DFT,剩下三者在岗位选择上都是各有优劣的。
但对于大多数转行IC的同学来说,都有一个错误的认知:数字IC后端不如前端设计和验证。
一来是从字面上去判断了“前后”的优先级,二是看了些所谓的“天花板理论”就匆匆下了判断。
这就让很多原本更适合从事后端设计工作的同学,只是一知半解的程度,就一股脑选了验证。
短期来看可能影响不大,但对于IC设计十几年甚至数十年的职业规划上来说,还是相当关键的。
今天,就来聊聊关于后端设计的那些刻板印象。
01验证比后端更容易转行?
一般来说,参照大公司设计、验证、后端的1:3:1的岗位需求,确实验证的市场需求更大,要招的人更多,正因如此,验证成了绝大多数其他专业转行IC的同学的首选。 选的人多了,自然要求也就高了,往年面试考些IC常规题就能过,现在SV、UVM都要懂一些。 而后端目前而言,反倒是成了最容易的那个。 后端基本不死卡学历,本科作为底线,技术到位基本上都有机会。 除此之外,后端对于是否科班出身看的不重,我自己知道的基本上做后端的出身专业比较多样化:电子类、信息类、自动化类、物理类、化学类等工科专业都见过,侧面证明后端入行并不难。
02后端薪资不如设计、验证
无论是往年的数据,还是今年的行情,都可以说明一个事实:前端设计、功能验证、后端设计三个岗位的薪资水平是不相伯仲的。
至少在应届offer拿到的价格上来说,是没有所谓的优劣之分。
三十多万的设计不少,四十多万的后端也很寻常。
而之后的岗位晋升所带来的薪资涨幅,那就是不同岗位上成长速度不同的情况了。
比如说你更适合做后端,原本在后端上你两年就可以升至中级工程师,结果验证上则需要三年。
这就需要一开始的选择就要想到之后的规划。
03后端薪资不如设计、验证
说这话的一般有两类人,一类是没做过后端,但是大概知道是做什么甚至懂点术语的;另一类是做过后端但项目经历都是小芯片、性能功耗要求不高且非先进工艺的。
越是不懂的人越敢说话,懂得越多反而更加谨慎,如果把这类人说的话当做自己选择方向的指导意见的话,那自然是要摔跤的。
诚然,复杂度不高的芯片确实不需要太多人工干预了,尤其是产品线和流程比较成熟,按部就班更新,加上对功耗、性能和面积没有强烈要求的芯片,在后端EDA工具已经相当强大的今天,跑几遍就可以开始ECO,几轮下来问题不大。
这里直接借用某位后端大佬的发言:
能做完这些项目就能代表你能独立做出这款芯片的全部后端吗?请问自己以下几个问题:
芯片为什么做成现在的面积?
如果有一款新的芯片你能合理定义它的面积吗?
IO为什么摆成当前的位置?
电源网络为什么设计成现在的模样,有什么约束?
时序为什么signoff在当前的电压范围?
时序signoff的corner是怎么决定的?
不同corner的margin为什么加这么多?
如果只给你一个综合网表和相应的SDC以及库文件,你能独立建立flow并实现满足所有signoff条件的GDSII吗?
如果这些问题你都回答不了,那么你真的只是在跑流程。
对于后端工程师,如果说你一直在做这样跑流程的工作,那么我劝你多去理解思考一下项目深层次的东西,尝试一下不同的项目类型,在高频、低功耗、复杂时钟、复杂电源和先进工艺方面至少精通一种,熟悉两三种。
如果你能在上述某一个或者几个领域做到精通,那么你已经有了自己的一定程度的壁垒,比多数人已经强很多了。
所以说,不是后端技术要求低,是你对自己的要求低罢了。
04什么样的人适合做后端设计?
后端设计的主要工作就是将前端设计的RTL代码转化成门级网表,最终生成GDSⅡ文件,最终拿到工厂进行流片生产了。
这其中涉及的工作内容包括:逻辑综合、形式验证、布图规划、布局布线等。
而后端所起的价值,就是在满足设计要求的情况下,尽可能通过自己的经验知识来加速设计的迭代,加快项目的进展,让一颗芯片成功实现从代码到实物。 大公司对于前后端的分工较为明确,各司其职。但是也有一些设计公司,给后端设计者们的是rtl的代码和基本的约束,需要其他岗位去做逻辑综合。
而对于转行的同学来说,什么样才算适合做后端设计呢?
相比验证需要较高的代码基础,后端则是需要较高的英语水平和一定逻辑思维能力,要有动脑思辨的想法,不然真就成了“跑个流程”而已。
如果是天生对代码头疼,还想要入行IC设计的同学,不如选择一条更适合自己的转行路线,数字IC后端设计将是你最好的选择。