其他
9年FPGA工作经验,转行了,苦海无涯……
整理:付斌,内容来自网络
我很少说话,因为怕被人鄙视。工作了9年的fpga,总要总结……
话说转行也没想象的费尽。刚毕业那会儿在冠捷被虐画pcb 画了一年,现在隔了几年再搞,也不是难事。而且过了几年,思想沉淀,做的还好的。公司招了一个另外硬件工程师,工作了10年,比我更垃圾,要不是做板子有pcb 炒,这个硬件工程师必死无疑。
02
类似岗位还有哪些?
岗位对比
据我了解,涉及FPGA逻辑开发和ASIC相关的岗位主要有,
FPGA相关岗位
FPGA算法工程师 逻辑开发工程师 FPGA验证工程师
ASIC相关岗位
ASIC算法工程师 数字前端工程师 IC验证工程师
03
FPGA算法工程师 VS ASIC算法工程师
ASIC算法工程师主要工作职责有:协议学习、文献调研、系统整体框架和接口确定、算法仿真、RTL实现与数据对比、FPGA验证。
FPGA算法工程师主要的要求对基础知识的掌握能力,如通信、信号处理、图像相关知识的运用,对于算法RTL实现和FPGA验证这是都需要具备的能力,对于这个岗位之间没有实质上的区别。匹配度高达100%。
04
逻辑开发工程师 VS 数字前端工程师
数字前端工程师分为做IP的和做应用的,主要技能是RTL的设计,数字电路的基础以及使用处理器IP和总线的能力。这些同样是逻辑开发工程师具备的技能。FPGA厂商工具中有众多自己的IP,提供应用开发速度。ASIC设计中也会用到众多IP,来缩短产品开发周期。
IC设计里几乎所有工具都在Linux下,Linux的基本命令,TCL/Shell等脚本是前端工程师必备技能。逻辑工程师Windows平台用的多,TCL也是常用脚本,所以更多只是工具不同而已,逻辑开发工程师可以转型为数字前端工程师。
05
FPGA验证工程师 VS IC验证工程师
这两个职位差别还是很大的,FPGA验证工程师也是属于IC行业,主要工作内容是将前端设计好的RTL代码,进行分割成子模块或子系统放在FPGA上进行验证,提高验证速度。进行分割的原因是系统过大,普通的FPGA片子单片装不下。
IC验证工程师主要是基于一套叫UVM的方法学,主要使用语言是SV进行验证测试用例的开发,这一点与FPGA验证工程师有本质的区别。
现在由于电路的集成度越来越高,IC验证工程师也越加重要,需求也更多,但是IC验证有自己专有的方法学和知识体系,所以要想转成IC验证工程师还是需要系统的进行学习。这两种岗位无法互换。
06
选择FPGA还是IC行业
很多非微电子相关专业的学生也都开始玩起了FPGA,准确来说,这类学生应该归到硬件工程师的类别。用FPGA做应用开发,还需要具备的调试开发板、各类测试仪器的使用等能力。用FPGA做应用我们都清楚,是针对于低成本,需求量小,更新快的应用。涉及到大规模的量产,单片的成本还是做成ASIC更划算。
我认为行业没有好坏,不过是有兴衰,但任何行业只要做到Top级别的人都可以实现自己的个人价值。众所周知,IC行业在美国已经是夕阳产业,硅谷早已无硅,在中国这两年推动发展看还不错,尤其是XX事件后,我觉得可以投身一下。
选择FPGA还是IC还是看个人选择,我还挺喜欢玩FPGA,选择IC一是当时这方面很热,二是想去参与设计一款芯片,感觉应该会比较有意思,三是其实IC的公司和岗位还是非常多,甚多于FPGA方向岗位,而数字IC前端,我们玩FPGA的也是完全可以胜任的。
参考文献
【1】《胡说IC—菜鸟工程师完美进阶》——胡运旺
【2】论坛主题帖
-END-
推荐阅读
【01】FPGA技术怎么就这么牛?【02】详解FPGA的四大设计要点【03】工程师深度:FPGA 高手养成记【04】Xilinx和Intel之外,还有谁掌握了"万能芯片"密钥?FPGA厂商大盘点【05】详解FPGA四大设计要点