`
嘉宾介绍:Mill,MYMINIEYE COO,拥有8年FPGA开发经验,曾任职于紫光FAE,现担任MYMINIEYE COO。涉及CT,核医学,基带等多个大型项目的开发及主导开发。对TCP/IP,Serdes,DDR3存储,LDPC编解码,光纤通信、数字信号处理,数学模型仿真及定点有深入理解
本期社区之星,我们邀请到了MYMINIEYE COO,资深FPGA工程师Mill,来给大家分享一下他从FPGA工程师到创业的过程。
每个人在刚开始工作的时候都很迷茫,您可以讲讲您刚开始工作时的经历吗?
其实,我和大部分工程师一样,一步一步走来,都有过同样的迷惘和苦恼,那故事的开始就应该是这样:
2012年的夏天,我记得那一年雨水特别多,也是6月底的某一天,我坐了12个小时的火车,从罗湖火车站下了车,上了地铁4号线,身边的朋友告诉我,这是深圳唯一的一条港铁,走上民乐天桥,很空旷,他指着说:到了晚上这里就有很多小贩,非常热闹。进了一条小巷,我被带进了一个套间,约莫10平米的地方,有洗手间和厨房,窗户上还可以晾衣服,就这样,工程师的深漂开始了···
我白天窝在房间里改简历等电话,晚上自己弄点饭菜,由于工作没有着落,总是很焦急,感觉这个城市人人都在上班,在奋斗。晚上我也会下楼走走,那一年,东莞还没出事,深圳的城中村是很繁华的,所以每到晚上,如果走在布吉的那条老街,有人会礼貌的给您递上一张名片:“靓仔啊,有车接送呀···”,我知道,这是这个城市的另一面。
那时候的想法很简单,我就想有份工作,然后能让自己学到的东西发挥作用,有口饭吃,有个地方住,我就很幸福,很开心。刚开始找工作并不顺利,我面试了很多次,都失败了,还被狠狠的鄙视过,很失落,也是在最失落的时候,我面试上了。7月份,我找到了在深圳的第一份工作,做医疗器械,公司的主要产品是核磁共振,CT,做过这个行业的朋友都知道,这个行业的技术门槛非常高,很多核心技术和算法一直是欧美垄断。我们项目的带头人是北大的一位教授,而我负责CT底层的高速通信,ADAS1128,128个通道的多个AD数据采集。所以,我的开始并不顺利,但起点很高,我很感激当时招聘我进去的主管,当然,我也没让他失望,之后公司的各类FPGA开发,我都能够很好的完成。
作为一名FPGA工程师,您怎么看待FPGA?
其实每个工程师内心深处都是有一些骄傲的,尤其是FPGA工程师,FPGA做的是最底层的算法和逻辑。当然基础是最重要的,对于FPGA工程师我觉得至少有几项技能是需要掌握的:数字电路、HDL语言(最好是Verilog,VHDL语言用的人并不太多)、信号与系统(如果做无线通信)、通信原理、计算机与网络、Modesim仿真。
FPGA和传统软件开发是有很大区别的,在程序员中,FPGA工程师是唯一属于硬件工程师的那一类,HDL语言的翻译是:硬件描述语言。因此FPGA开发其实是写的硬件,需要对底层有深刻的了解,而Verilog HDL只是参考了C的一些风格演变过来,其理解和深层含义和C相差甚远。C需要经过编译工具翻译成机器语言执行指令。而HDL是直接调用的底层DFF和LUTS等,然后将相应的功能模块连接起来执行相关逻辑。
因此,写到这里大家也应该清楚,设计FPGA芯片有一个很难的东西,那就是EDA工具:就是我们常看到的Quartus(Altera),Diamond(Lattice),ISE(Xilinx),Vivado(Xilinx)等,EDA工具需要对HDL语言进行语义分析,逻辑映射,底层器件布局,布线优化(这整个过程和硬件开发完全类似:原理图设计,摆放器件,PCB layout等,只是FPGA和芯片开发大部分是工具自动完成,而传统PCB大部分依赖人工),而FPGA开发就要像做硬件设计一样,需要了解您都选了哪些器件。
虽然FPGA复杂,但是在我看来,找到好的方法,学好也并不那么难。
首先,对于任何一门学问,并不是您有了所有知识储备才开始,而是您已经开始,才慢慢积累起了所有的知识,FPGA就是这样。并不是我学好了数字电路,HDL,信号与系统,Modesim等所有内容我才开始做FPGA,而是我可能只懂点数字电路,但我已经开始做FPGA,然后在这个过程中我积累了我所有的知识体系,只有这样才会事半功倍。 其次,永远尊重官方手册和标准文档。网上的视频和教程很多,也良莠不齐,有些好的东西是可以借鉴,但永远保持独立的思考,多参照官方的手册,因为芯片是人家做的,他们就是最懂芯片的那一批人。要多看标准文档,比如IEEE Standard for Verilog,我相信网上所有讲Verilog的教程和书籍都是基于自身对该文档的理解,然后编著而成。
再次,永远要有求知的欲望,并保持谦逊和谨慎。每个工程师都有那么一段经历:刚开始,什么都不会,所以很谦虚,也很愿意去学,做了几个项目以后,也许是两三年,突然就有种感觉,感觉自己什么都会了,无论看着谁写的代码,都觉得是垃圾,我接触过很多工程师,有些人的技术就永远停留在了三年,几年过去了,除了代码更熟练了,年纪更大了,所谓的经验更多了以外,再也没有新的突破。这个是很可怕的,工程师出来以后再也不会像在学校那样,每年都会有考试来测试您,老师和同学会来提醒您,在社会最可怕的是,您已经在这种状态很久,止步不前了,其他人走了很远,而您却还没意识到。只有走过了那么一段,您才会发现,对于技术这种东西,人外有人,一山还比一山高,懂得越多,不懂得就越多。
最后,研发很重要的一点,钻研精神。研发是一个非常严谨的事情,中间并不会一帆风顺,而是一个不断迭代的过程,勤奋并且锲而不舍才能把产品做稳定。 在这个行业工作了多年,你认为FPGA行业前景如何?
ZYNQ是一颗划时代的芯片,在那之前FPGA最主要的功能还只是逻辑开发,最多也就跑跑软核,内嵌一些小的处理器,自那以后,FPGA走向了全可编程时代,从事FPGA开发的也不再仅仅是硬件工程师,有很多linux工程师,软件工程师都参与进来了,市场变大了,灵活性也更多了。ZYNQ系统解决了FPGA做复杂标准协议和复杂逻辑开发工作量大的问题,比如TCP/IP,如果用纯逻辑写TCP/IP难度可想而知,但在ARM里面,这些问题就很好解决了。因此对于一个复杂系统,将标准的协议和非实时的运算给ARM,把实时运算交给FPGA,内部采用AMBA总线互联,进行数据交互,大大提高了运算效率。
大概从2012年左右开始,Xilinx和Altera等几家大厂商的很多专利到期,国家也大力扶持,这个时期很多国内的FPGA公司都发展了起来,比如紫光同创,安路,高云等。
但大部分都集中在中小规模的FPGA,细分的市场或者一些特殊应用场景。国产FPGA的起来更进一步激活了整个市场,也抢占了一些本属于Lattice和Altera的份额,与此同时,FPGA也越来越多的受到了关注。
- 2015无人机很火;
- 2016年是VR;
- 2017年是人工智能,ADAS;
- 2018年是区块链;2
- 019年则是5G和半导体。
每一个行业都或多或少的和FPGA相关,无人机的图像传输和无线控制是核心技术,最开始的方案就采用的altera的SOC系列+AD9361方案。
为什么不用WIFI?WIF的协议设计是针对室内联网,信号在高速移动中表现差,多径问题明显,灵敏度也不高。而在VR领域,通常会有一颗小的Spartan6或者Lattice芯片用于驱动屏幕;ADAS,国内大部分厂商用的都是ZYNQ系列,且有相当的出货量。而针对深度学习和图像处理方向,FPGA的可重构特性及并行处理优势已经非常明显,很多公司都采用FPGA做加速处理。5G基站和云端也大量采用FPGA进行数据的加速处理,并已形成多个独立的产业路径。新兴行业的兴起,有很多的需求是传统ASIC无法满足的,因此FPGA就有了旺盛的需求。
近年来,我有很多同事和好友都去了传统的互联网公司:百度,腾讯等。但无论工具再怎么发展,不懂FPGA的软件工程师,还是很难写出高质量的代码,因此,FPGA工程师需求是非常大的,并且这个缺口还在不断增大中。 能够走到今天这个高度,相信您在职场一定有一个好的处理方式吧?
说说我自己的经历吧,我从最基础的FPGA工程师开始,后来去了某FPGA原厂工作,再后来跟着合伙人出来一起创业,现担任公司COO。在研发层面是上,我先后做了CT,核医学,无线图传,涉及知识有:TCP/IP,Serdes,DDR3存储,光纤通信、数字信号处理,数学模型量化等。在原厂跑过一些大客户,也认识很多业内做芯片的朋友,在这个行业也算是见过各种各样的“咖”。现在身边的朋友和同事有些去了大公司继续做研发,有些自己创业。我有几点很深的感触,您不一定认同,但可以去借鉴:
首先,每个人都希望和更加优秀的人做朋友。所以,在一个公司或者团队中,认真做事并能把事情做好的人,人缘关系都会比较好。我刚进第一家公司的时候,技术不成熟,有非常多不懂的地方,但是每次我都会想办法主动去解决问题,把事情处理妥当。所以即使我离职七八年了,我还一直和我之前的领导保持着联系,有问题他也会问问我,他知道我能解决的肯定是会想办法做好,有时间的时候,我还是会回到公司坐坐,聊聊天,就和回家一样亲切。
其次,永远想的比您的主管更多一点。我服务过的第二家公司是一家FPGA原厂。原厂非常多优秀的工程师,我们整个AE组基本上都是华为、海思等大公司的资深工程师,而软件和硬件部门很多都是芯片行业的大佬。我在前东家的履历并不出众,而且他们也都很出色,也很努力。我主要负责对外技术支持,但我负责的每一个客户我都不仅仅是把技术层面的问题解决,我会把这家公司的财务,融资,技术背景都尽可能的描述清楚,一并发给我们主管,好让高层有更好的决策和判断。也正是我为公司考虑的事情多,处处为团队着想,公司对我的评价一直不错。所以尽管我后来离职创业,但是依然和前同事保持很好的关系,在后来的创业过程中,公司的同事和主管也会帮我推荐一些好的投资机构和投资人,介绍一些客户,对此,我也真心非常感激。
最后,少去计较个人小的得失,一切以大局为重,把事情做好。可能在每一个公司都有这种情况:有时候您会觉得某个同事或者领导,研发能力没您强,但职位却比您高,钱也拿的比您多,您就是不爽,有时候做事还会有情绪(有这种想法的工程师一定不少)。其实,我不排除有极少数公司会有这种能力和职位不匹配的情况,但是像北上广这种市场经济充分竞争的地方,大部分公司都有极大的生存压力,能熬出来的公司和站在一定岗位上的人都会有自己的竞争力,请记住,衡量一位工程师是否优秀的,研发实力当然占很大一部分,但绝对不是唯一。您如果有能力,那就把事情做得更好,把能力提得更高,因为能力才是自己的,公司的那种小失小得只会浪费自己宝贵的时间。
对于FPGA工程师来说,您认为就业、创业哪个更好?
FPGA工程师是创业还是就业,我觉得要看自身的情况。首先,FPGA是一个硬件类行业,工程师创业成本会很高,面对的不仅仅是算法和代码的问题,还有硬件,供应链及昂贵的人力成本。所以,开始之前一定要想清楚:如果您是想比较富裕的过一辈子,安安稳稳的,那最好的方式就是学好技术,找一家有潜力的公司一起成长。因为,出来创业不一定能赚到钱;但是,如果您拒绝平凡的生活,想尝试人生不一样的精彩,那,创业吧!
最后,我读到的很喜欢的一句话送给大家:也许您现在很迷惘,找不到方向,但请不要以您现在的能力,束缚对未来的想象!在这里也给大家推荐一下我是你的眼官方旗舰店(淘宝店)里面有各种零部件以及课程的推荐。 【课程推荐】 FPGA软件无线电开发(全阶视频教程+开发板+实例) (了解更多详情联系甜甜微信:18118775427)
------------------------------------------------------- 往期社区之星回顾:
`
|