色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 牛人業(yè)話 > “老司機”:我不推薦因找工作而學習FPGA

          “老司機”:我不推薦因找工作而學習FPGA

          作者: 時間:2018-03-27 來源:網(wǎng)絡 收藏

            最近的幾篇論文都改好投出去了,希望后面有好的結果。暫時也就有點閑暇時間空出來了,好久沒有寫技術文章來總結提煉一下了,今天難得就寫一點。

          本文引用地址:http://cafeforensic.com/article/201803/377448.htm

            每年到了找工作的時節(jié),總會有很多迷茫的小本甚至是小碩在到處訊問說:我是不是應該去參加個培訓班,去學一門什么什么技術。然后學哪個比較好找工作一點,學哪個收入會高一點等等。每當這個時候就有很多抱著就業(yè)目的的人來問到底學什么技術好啊,哪個技術有前途啊,等等。

            一般在這個時候,我是不推薦這幫人去學習的。當然,并不是技術不好,也不是學技術沒有前途,而是有別的很多原因。導致它并不適合推薦給以就業(yè)為目的的這幫人去學習。

            原因一:FPGA的“逼格”太高

            FPGA的應用范圍相對而言一直不寬。之前我也談過,其主要的應用面就是三個:高速接口電路、高速數(shù)學運算與數(shù)據(jù)處理、ASIC/的驗證原型;也有人說可重構計算是FPGA的第四大應用領域,但是我覺得目前還沒有什么真正意義上的可重構計算,即使有也可以將其歸并到第二類里面去。在掌握基本的HDL語言和FPGA開發(fā)流程的基礎上,三個方向分別還需要掌握其它相應的知識。

            第一個方向是傳統(tǒng)的,也是目前國內大量中小公司和部分科研院所使用FPGA的主要方向。主要包括接口擴展、協(xié)議轉換、高速收發(fā)與處理等內容。通常在這個方向混飯還至少需要掌握以下內容:1、高速電路板設計,2、計算機接口技術;可能還要求掌握的技術包括:1、底層驅動開發(fā),2、通信協(xié)議。

            第二個方向涵蓋的內容較多,但是核心都是利用FPGA實現(xiàn)算法或運算加速,從傳統(tǒng)的FFT、FIR到最新的一些所謂的NB的算法都有可能。這個方向門檻相對于第一個方向更高,通常都是需要有一定技術水平的公司才能完成。因為涉及到算法和FPGA的協(xié)同優(yōu)化。目前國內的華為、中興這樣的大的通信公司,以及一些電子通信類的整機研究所會招聘這個方向的人。一些有技術實力的創(chuàng)業(yè)型公司或特殊領域的公司(如金融、石油領域的數(shù)據(jù)分析方案解決)也有這方面的需求。更值得欣慰的是目前google、X訊這樣的互聯(lián)網(wǎng)公司看起來也在考慮引入FPGA實現(xiàn)算法加速。但這個方向混飯吃也不容易,至少需要掌握以下內容:1、常用的數(shù)字信號處理/數(shù)值計算算法,2、基于Matlab/C++的算法仿真,3、常用的數(shù)字算法FPGA實現(xiàn)方式或技巧;可能還要求掌握的技術包括:1、圖像、視頻處理算法,2、通信系統(tǒng)理論,3、其它常見的并行計算算法。

            第三個方向屬于是給ASIC/設計打下手,別人已經(jīng)做好的很多模塊、IP用FPGA的板子去驗證一下。招人不多。而且現(xiàn)在隨著EDA tools的發(fā)展,很多時候也不是靠FPGA去做一個原型能驗證出來的。這一塊需要掌握的技術包括:1、各種驗證方法學,2、板級電路的調試經(jīng)驗;可能還要求掌握的技術包括:前面提到的各種技術……

            原因二:FPGA的“門檻”太高

            FPGA“門檻”高是幾個方面,一個是費用問題。雖然FPGA的價格已經(jīng)一降再降,但是MCU、DSP的價格同樣也是一降再降。在大多數(shù)場合FPGA還是顯得有點“奢侈”。另外一個問題就是就是開發(fā)能力的問題。相比于MCU或者DSP而言FPGA更加靈活,但也意味著對資源的利用和掌控更加“底層”?,F(xiàn)在MCU和DSP的開發(fā)很多時候就是調用一些庫函數(shù),完成一定的功能即可。而FPGA卻要組織更底層的邏輯資源去構建一整套完整的系統(tǒng)。雖然有很多IP可以用,但是一方面這些IP都不是免費的,另一方面使用IP可比調用一個函數(shù)難多了。這也是為什么前面說的3個方向要掌握那么技術的原因,在FPGA開發(fā)上要從底層開始組織好這些資源,一些基本的理論、方法是必須要掌握的。

            門檻太高就導致用它做開發(fā)的公司、機構少。換言之能創(chuàng)造的就業(yè)崗位也就不多。

            原因三:FPGA在面臨轉型

            目前FPGA正在面臨一個轉型的問題,換言之就是傳統(tǒng)市場萎縮,新興市場還待打開的問題。這一轉型既有開發(fā)手段上的轉型,也有行業(yè)應用的變化。因此,目前學習到的這些FPGA開發(fā)的方法,在未來還有沒有用,就成了一個疑問。目前以-FPGA為代表的一種轉型方向,是去搶占傳統(tǒng)的高性能SoC市場。但這個市場好不好搶,是很懷疑的。之前我曾經(jīng)認為這一塊應該是有所作為的,但是現(xiàn)在發(fā)現(xiàn)不是那么簡單的。在ARM外面加上一圈可編程邏輯,用來做什么好呢?做接口?現(xiàn)在的高端SoC芯片上面接口已經(jīng)如此的豐富,在大多數(shù)情況還是基本夠用的。做算法加速?那么去加速什么算法呢?目前移動多媒體設備上面各類圖形圖像加速器也不少了。別的特殊的應用需要加速的又需要是以SoC形式的加速的?也許是一些特種設備,我不是很了解。但是應該不會是通用的市場。剩下的就是做做研究了。另外一種就是以高層語言綜合為代表的轉型方向,如Xilinx的Auto-ESL和Altera的OpenCL Based FPGA開發(fā)。這一類轉型的未來在大數(shù)據(jù)、云計算加速方向。這一塊目前是GPGPU的主場。對于Xilinx的Auto-ESL我不是很清楚。OpenCL Based FPGA開發(fā)目前看來還是很有希望的。但問題在于OpenCL繼承了GPGPU的優(yōu)勢,也繼承了GPGPU的缺陷。那就是傳統(tǒng)的GPU是用來做圖形圖像處理的,數(shù)據(jù)都是一幀一幀加進去算的,而且算完以后就直接輸出了。因此對于數(shù)據(jù)傳輸?shù)膌atency其實并不是很大的問題。而如果涉及到通用計算,這GPU和CPU之間的交互latency就是大問題。上周剛聽了個講座,就是專門講這一方面的。不過我沒怎么聽懂就是了……

            所以在這個轉型期,其實FPGA開發(fā)需要的崗位是在萎縮的。之前聽在華為的同學爆料,美國某大學教授預言FPGA在網(wǎng)絡通信市場大概還有10年的壽命,再往后就全是SDN了。這一大塊FPGA傳統(tǒng)市場的喪失將是一個巨大的危機。而另一大市場,視頻/圖像領域,隨著網(wǎng)絡化視頻監(jiān)控SoC的普及,原來采用FPGA作為主要技術方案的廠家也就逐漸改弦更張或者被淘汰出局了。另外一個風險就是現(xiàn)有的開發(fā)手段可能會存在被淘汰的風險。雖然現(xiàn)在OpenCL去開發(fā)FPGA還存在諸多問題,但是我認為在大數(shù)據(jù)、云計算加速領域,使用OpenCL開發(fā)的便捷是完全可能彌補其效率的暫時低下的。從能效上來說,F(xiàn)PGA比GPGPU要高1到2個數(shù)量級。而這一塊又是傳統(tǒng)的軟件開發(fā)者盤踞的地盤。換言之,這一塊新增的就業(yè)崗位恐怕不是學習現(xiàn)在這些FPGA開發(fā)流程和技術的人能夠去吃得到的。

            以上三點原因,造成了一個即使參加了FPGA培訓或者學習了FPGA半年的新手,其實是很難在就業(yè)市場上找到工作的。另外一方面也不得不感慨我們這個行業(yè)的發(fā)展是如此的迅速。如果放在10年前,甚至5年前有人問我該學什么。我肯定會毫不猶豫的推薦學FPGA。因為在那個時代,會使用FPGA的人才是如此的缺乏。以至于你只要學會了FPGA開發(fā)的一般流程,就可以找到一份還不錯的工作。而現(xiàn)在,這個好時代已經(jīng)一去不回了。類似問題其實也在困擾其它IT技術。以北大青鳥為代表的一大軟件開發(fā)批培訓機構的沒落,也同樣標志著在軟件技術領域只掌握一門編程語言就可以拿到好工作的日子也已經(jīng)過去了。

            所以,從功利的角度上來講,如果是只是為了找工作的話。應該去選擇那些就業(yè)概率更大的技術學習。畢竟,已經(jīng)“淪落”到要靠上培訓班才能找到工作的地步,“理想”也都無從談起了。相比與學習FPGA,恐怕還是去學個什么Java編程更加靠譜一點。



          關鍵詞: FPGA SoC

          評論


          相關推薦

          技術專區(qū)

          關閉