大多数同学还在学校里敲Verilog的时候,是不知道几年之后自己到底要做哪个方向的工作的。除了问问学长学姐,逛逛论坛,就再没有其他想法了。 所以很多人都会觉得,一样都是写Verilog,FPGA和ASIC其实都一样,到时候能找到哪个就做哪个吧。 实际上,这两者无论是岗位定义,工作内容,还是行业状况和薪资都不一样。 所以,到底选哪个好? 先阐明定义 FPGA:Field(现场) Programmable(可编程) Gate(逻辑门) Array(阵列),FPGA是一种可以重构电路的芯片,是一种硬件可重构的体系结构,通过编程可以随时改变它的应用场景。 ASIC (Application Specific Integrated Circuit),即专用集成电路,是指应特定用户要求和特定电子系统的需要而设计、制造的集成电路。 用玩具来举例,同样是一个玩具小人,FPGA就像是乐高,可以用不同的零件拼接而成,ASIC则是厂家定制手办,只为这一款模型专门设计制作。 这决定了双方的不同特点 FPGA的特点: FPGA能够反复使用,理论上,FPGA允许无限次的编程。 FPGA的编程无须专用的FPGA编程器,快速成品,可以被修改来改正程序中的错误和更便宜的造价。 用户不需要介入芯片的布局布线和工艺问题,而且可以随时改变其逻辑功能,使用灵活。 ASIC的特点: ASIC需要更长的开发周期,更复杂的设计环节,更大的风险,同时需要更多的人员参与。 面向特定用户的需求,ASIC在批量生产时具有体积更小、功耗更低、可靠性提高、性能提高、保密性增强、成本降低等优点。 成本这里需要说明的是,小批量需求时,单片FPGA成本低于ASIC,随着产品量的增加,单片ASIC成本逐步降低。 正因如此,FPGA主要用于要求快速迭代或者小批量产品,或者作为ASIC的算法验证加速。ASIC用于设计规模大,复杂度比较高的芯片,或者是成熟度高,产量比较大的产品。 特点不同,产生不同的市场环境 FPGA多年来被四大巨头Xilinx(赛灵思)、Altera(阿尔特拉)、Lattice(莱迪思)、Microsemi(美高森美)垄断。 近40年来,先后有超过60家以上的公司从事过FPGA技术与产品的研发,其中包括Intel、IBM、AMD、TI、GE、AT&T、摩托罗拉、朗讯、三星、东芝、飞利浦等实力雄厚的大公司,但绝大多数都功亏一篑。 目前Altera已被Intel收购,Xilinx则是被AMD收购。 国内目前有一定规模的FPGA公司: 京微齐力:二次创业,瞄准AI云边端 上海遨格芯:从编译软件切入生态链 广东高云:28nm中高密度FPGA 深圳紫光同创:高性能FPGA已量产商用 西安智多晶:小米为第四大股东 上海安路科技:28nm今年批量供应 成都华微科技:出身国家“909”工程 上海复旦微电子:超大规模亿门级FPGA ASIC就不一样了,因为各类产品定制需求的差异化,造就了百花齐放的局面,不同赛道不同领域都有大大小小的芯片设计公司投身其中,同时也产生了更多的岗位。 ASIC与FPGA的岗位存量,粗略估计可能是500:1,甚至更高,同时ASIC因为更具复杂性,相应的薪资水平也要比同类型FPGA的岗位高一些。 相对的,因为能够活下来的公司不多,所以行业环境更稳定,FPGA的岗位波动更小。 对于应届生来说,更推荐ASIC 做RTL的工程师一定要往系统层面的工程师转,只在RTL和协议这条路上走下去,没有任何希望。 19年的Xilinx 开发者大会(XDF)之后,新的开发平台和自适应芯片降低了FPGA的使用门槛,将软硬件放在同一平台上开发,尽可能的使用高级软件语言(c++、python等)进行整体SOC的开发,这也是将来FPGA开发的趋势,让无论是否会HDL的人都能立马上手使用。 最开始从底层做起,慢慢的积累学习,最终能在SOC上实现软硬件的整体把控设计,才能在当前岗位上提升一个层面。 如果想待在目前的舒适区,做个传统的FPGA工程师也没什么不好,想工作上有突破,就大胆迈向ASIC吧! |