查看: 1455|回復: 1
打印 上一主題 下一主題

什么是FPGA工程師的核心競爭

[復制鏈接]
跳轉到指定樓層
樓主
發(fā)表于 2020-4-23 14:18:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
什么是FPGA工程師的核心競爭力
這個(gè)問(wèn)題是老石在知乎上看到的,大家的回答都是調板子、“debug”、硬件實(shí)現等等。作為FPGA工程師,老石看了實(shí)在要報以一個(gè)禮貌的微笑。
file:///C:\Users\Administrator.WIN-STED6B9V5UI\AppData\Local\Temp\ksohtml12920\wps5.png
換個(gè)角度看,難道其他硬件工程師就不具備調板子、debug、硬件實(shí)現的能力了?或者,為什么說(shuō)這些是專(zhuān)屬于FPGA工程師的核心競爭力?
老石認為,這個(gè)問(wèn)題其實(shí)可以引申為以下兩點(diǎn):
1.
什么是只有FPGA工程師能做的
2.
3.
作為FPGA工程師,我們應該如何培養這些能力
4.
接下來(lái)就是老石的解答。
什么是只有FPGA工程師能做到的
對于上面提到的一些回答,的確是FPGA工程師不可或缺的能力,但老石總覺(jué)得沒(méi)有說(shuō)清楚這個(gè)問(wèn)題的本質(zhì)。
首先給出老石的回答:FPGA工程師最核心的就是全棧能力。
這里的全棧,指的是系統級的軟硬件全棧能力。它既包括了在系統層面的架構設計、芯片開(kāi)發(fā)的前后端流程,也包括了軟件設計的全棧流程,甚至還有后期的項目維護、技術(shù)支持、與客戶(hù)的溝通等等軟技能。它可以看成是綜合多種技能的技能樹(shù)。
老石隨手寫(xiě)了一下FPGA工程師的全棧技能樹(shù),見(jiàn)下圖,盡管很不完整,但仍可供大家參考。之前很多人提到的,諸如調試與分析的能力,其實(shí)是這個(gè)全棧技能樹(shù)里的一片樹(shù)葉,或一個(gè)分支。
file:///C:\Users\Administrator.WIN-STED6B9V5UI\AppData\Local\Temp\ksohtml12920\wps6.png
只有FPGA工程師能做到一人成團,在短時(shí)間內將想法落實(shí)到高質(zhì)量的軟硬件系統實(shí)現。這是其他系統架構師、ASIC工程師、單片機工程師、軟件工程師等等都無(wú)法單獨完成的。與這些工程師相比,FPGA工程師有著(zhù)很強的單兵作戰能力。當然,技能樹(shù)過(guò)于龐大也是為什么很多人認為FPGA難學(xué)的本質(zhì)原因。
有人會(huì )問(wèn),為什么其他類(lèi)型的工程師沒(méi)有這種全棧能力,或者換句話(huà)說(shuō),為什么只有FPGA工程師才能做到全棧?這和FPGA本身的特點(diǎn)有關(guān)。
在下圖中,老石對比了FPGAASIC、CPU(或單片機)的特點(diǎn)與主要開(kāi)發(fā)方式和風(fēng)格。
file:///C:\Users\Administrator.WIN-STED6B9V5UI\AppData\Local\Temp\ksohtml12920\wps7.png
對于傳統的IC工程師而言,他們的具體職責可以大致分成前端和后端兩部分。前端主要負責邏輯實(shí)現,后端負責芯片物理實(shí)現。兩路人馬通常有各自的技能樹(shù),需要互相配合才能完成產(chǎn)品級的芯片,這個(gè)過(guò)程往往很久,而且伴隨著(zhù)巨大的前期投入和風(fēng)險。
對于單片機或CPU工程師而言,更多的是基于給定的單片機架構和API,使用諸如CC++的高層語(yǔ)言編寫(xiě)應用程序。如果要寫(xiě)出高質(zhì)量的應用,固然需要了解目標芯片的硬件結構,但并不需要對硬件的邏輯實(shí)現有過(guò)多了解。雖然基于CPUMCU可以靈活實(shí)現各種應用,但由于架構限制,在很多諸如人工智能的應用領(lǐng)域里并不能達到很好的性能。
FPGA很大程度上結合了兩者的優(yōu)點(diǎn)。在硬件方面,FPGA底層架構固定,因此不需要做太多芯片后端的工作,但仍需要FPGA工程師掌握時(shí)序優(yōu)化、面積優(yōu)化、功耗優(yōu)化等后端技能。因此一個(gè)優(yōu)秀的FPGA工程師憑借自身的前后端與軟硬件技能,就可以完成一個(gè)完整的而且質(zhì)量比較高的FPGA項目。
軟件方面,FPGA可以靈活定義API與軟件架構,并可以通過(guò)內置的處理器內核完成軟硬件協(xié)同開(kāi)發(fā),這樣也能兼顧應用的靈活性。因此,一個(gè)優(yōu)秀的FPGA工程師通常也具有優(yōu)秀的軟件編程能力。
在系統層面,FPGA工程師可以自定義軟硬件整體架構,不會(huì )像CPU或單片機一樣存在明顯的架構瓶頸,也不會(huì )像ASIC一樣需要考慮過(guò)多底層電路單元以及工藝的具體實(shí)現。
綜上,只有FPGA工程師能擁有軟硬件系統的全棧能力,這也是FPGA工程師的核心競爭力。并且,這種能力可以在工程實(shí)踐中不斷自我豐富和提升。這使得優(yōu)秀的FPGA工程師不需要太過(guò)依賴(lài)其他人,能夠自己或少量人很快完成完整的系統級方案。
現在很多AI初創(chuàng )公司選擇使用FPGA作為硬件平臺的主要原因之一,就是看中FPGA工程師的全棧能力,使得公司能在較少投入的情況下,取得性能、靈活性、可擴展性等多個(gè)方面的良好平衡。
全棧能力是FPGA工程師需要的完整技能樹(shù)。至于很多答友提到的調試和debug能力,更多的是在回答這個(gè)技能樹(shù)的技能點(diǎn)分配問(wèn)題。這就是老石要講的第二個(gè)方面:
作為FPGA工程師,我們應該如何培養這些能力
相信很多人會(huì )問(wèn),老石你說(shuō)的這種全棧能力,究竟是不是在畫(huà)大餅吹牛逼?在實(shí)際生活中,到底是不是真的有人能全部精通技能樹(shù)中的所有分支?老石的答案是,雖然很少,但確實(shí)有這樣的大牛,而且老石有幸和他在一個(gè)團隊里工作。
一般來(lái)說(shuō),如果一個(gè)FPGA工程師能在這個(gè)FPGA技能棧里精通某一項,就可以成為這個(gè)領(lǐng)域的大牛和權威。比如,像很多人提到的,如果你特別會(huì )調板子,硬件調試能力很強,那你就可以很好的負責項目中的硬件測試環(huán)節。再比如,你RTL寫(xiě)的很好,或者驗證很強,或者對系統架構有很深的理解,你都能在項目里成為不可或缺的人。
但是,在老石所在團隊里就有一位帶頭大哥,可以從系統架構、模塊設計、驗證、系統整合、FPGA后端優(yōu)化、硬件測試、軟件開(kāi)發(fā)和調試等等全部環(huán)節一個(gè)人搞定,可以說(shuō)是點(diǎn)滿(mǎn)了技能樹(shù)上所有的技能點(diǎn)。
這樣的人就像阿里的多隆,一個(gè)人可以頂一支團隊,公司缺他不可。因此如果一個(gè)FPGA工程師能夠獲取軟硬件的全棧能力,將是團隊乃至全公司的最主要競爭能力。
file:///C:\Users\Administrator.WIN-STED6B9V5UI\AppData\Local\Temp\ksohtml12920\wps8.png
作為一個(gè)新人,應該如何培養自己的FPGA全棧能力呢?其實(shí),帶頭大哥的技術(shù)功底也并非通過(guò)一天練成的,最重要的是時(shí)間的積累,不斷的鉆研以及真正的興趣。這些道理在任何行業(yè)都是一樣的。一開(kāi)始可以先重點(diǎn)突破技能樹(shù)的某個(gè)分支,但最終的目標還是要讓整個(gè)技能樹(shù)枝繁葉茂。
此外,工程師需要的軟技能也是不可或缺的,例如獨立思考的能力、溝通、寫(xiě)作以及良好的英語(yǔ)等等。
希望以上的回答能對各位朋友有所幫助。


沙發(fā)
發(fā)表于 2020-5-19 11:46:13 | 只看該作者
謝謝樓主分享
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页