广告

成为一个优秀的FPGA工程师需要具备的七大特征

2021-09-10 歪睿老哥 阅读:
如何成长为一个合格的FPGA工程师?武林中,乾坤大挪移有七层的修炼境界,FPGA工程师技术修炼之路也是如此。

如何成长为一个合格的FPGA工程师?JsJednc

武林中,乾坤大挪移有七层的修炼境界,FPGA工程师技术修炼之路也是如此。JsJednc

第一层:熟悉代码,能做仿真。JsJednc

作为FPGA初级工程师,首先应该要会写veriog代码,会写testbench。会用modelsim或者VCS仿真工具能够写模块级别的代码,能够仿真,算是精通第一层。JsJednc

虽然第一层看似简单,但是修炼不好就会影响进阶之路,主要是verilog设计基本功,电路模块设计思想,而不是简单凑时序。代码编程质量以及设计的高内聚,低耦合的模块划分原则。这一层是后续修炼的基础。JsJednc

第二层:熟悉架构,能写约束JsJednc

对于FPGA内部资源如数家珍,能够有效利用FPGA内部资源,例如各种类型的RAM,LUT,BUG,serdes等等。通过熟悉这些知识,工程师可以进行FPGA选型。JsJednc

根据需要约束设计:JsJednc

(1)IO的约束:这个相对简单;JsJednc

(2)时序的约束:这个需要对外部芯片接口时序非常熟悉;JsJednc

(3)位置的约束:这个需要在布局布线不通时,或者时序比较紧张时,通过位置约束来满足设计需求;JsJednc

精通此层的人,可以称得上算是会FPGA了,略窥门径,有所小成。JsJednc

第三层:熟悉接口,能担项目JsJednc

此层的工程师熟悉掌握XILINX等FPGA的IP。如PCIE的IP,XDMA, SATA,rapid  IO,Ethernet等等。JsJednc

可以把XILILNX厂商的用例跑通,可以在用例的基础上,通过添加及修改实现用户需求及功能。JsJednc

客户有需求,工程师可以很快接手,进行功能分解,完成代码开发,交付项目。JsJednc

精通此层的人,可以成为FPGA项目负责人。JsJednc

 JsJednc

第四层:定位问题,解决问题JsJednc

可以通过各种调试解决问题,熟悉使用各种硬件,软件,FPGA内部逻辑分析仪等调试手段。JsJednc

解决包括且不限于硬件问题,软件问题,FPGA问题。一句话:解决别人解决不了的问题。JsJednc

在公司里面,大家有FPGA解决不了的问题就找他解决。专业解决各种疑难杂症。JsJednc

精通此层的人,通常在公司被称为大牛。JsJednc

第五层:略懂算法,庖丁解牛;JsJednc

此层境界,可以将某些算法协议,创造性实现在FPGA上。JsJednc

这些算法协议经常的例子包括:JsJednc

AI的inference。这种能力可以将AI的python程序变成verilog在FPGA上高效实现。JsJednc

TCP的offload。这种能力可以将系统kernel级别的C程序,别人不知道如何下手,可以在FPGA上干净利索的实现。JsJednc

核心指标是在FPGA上能够完成别人搞不定的算法,或者别人达不到的性能。(注意:这个复杂度是AI的性能指标比被人强或者TCP卸载并发数据流比别人多来衡量的,并不是一般的算法实现)JsJednc

精通此层的人,经常被称为架构师或者技术专家。JsJednc

第六层:体系结构,软硬划分。JsJednc

修炼此层境界的人才精通体系结构,实现软硬件划分。熟悉例如kernel,虚拟化,容器,SRIOV,virtIO等。了解如何这些需求和FPGA的硬件能力配合,JsJednc

精通此层的人,可以实现例如虚拟化OVS卸载,P4协议实现,裸金属云管理,云端AI加速等等。JsJednc

此层大神可以通过FPGA实现类似DPU的卸载,目前的确也有很多公司做FPGA来实现做DPU。JsJednc

的确FPGA挺合适来做DPU的,尤其是在DPU功能比较不确定的情况下。ASPLOS 2020阿里案例的裸金属云bm-hypervisor管理网卡,就是FPGA实现(见端芯片之战-小乌云还是大风暴)。JsJednc

精通此层的人,可以去技术创业,大公司做研究员,小公司可以做技术总监。JsJednc

7:第七层:“日盈昃,月满亏蚀”。JsJednc

乾坤大挪移的第七层,张无忌也没有练成过,JsJednc

原来当年创制乾坤大挪移心法的那位高人,内力虽强,却也未到相当于九阳神功的地步,只能练到第六层而止。他所写的第七层心法,自己已无法修炼,只不过是凭着聪明智慧,纵其想象,力求变化而已。张无忌所练不通的那一十九句,正是那位高人单凭空想而想错了的,似是而非,已然误入歧途。” JsJednc

电影《苏乞儿》中,周星驰扮演的主人公苏乞儿最后一掌“亢龙有悔”解决掉大boss,悟到了第十八掌是前十七掌的组合。苏乞儿通过这些基本招式的组合成额外的一招,提升了掌法的威力,JsJednc

JsJednc

通过上述案例,类比一下。JsJednc

那么,FPGA的第七层,那就是能够融汇贯通前面6层的能力,实现的从顶层到底层全栈能力。JsJednc

精通此层人,通常被称之为“大神”。JsJednc

不过大神啥都做,容易累死!JsJednc

“日盈昃,月满亏蚀”JsJednc

把握一个方向,勤于修炼,总能不断精进。JsJednc

但行好事,莫问前程,心之所向,无问西东。JsJednc

文章来源及版权属于歪睿老哥,EDN电子技术设计仅作转载分享,对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。如有疑问,请联系Demi.xia@aspencore.com
歪睿老哥
一个芯片设计行业老哥;忙时研发,闲时写作;聚焦芯片行业的那些事,唯武侠与芯片不可辜负。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
广告
广告
热门推荐
广告
广告
EE直播间
在线研讨会
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了