在人工智能時(shí)代,AI的算法不斷推陳出新,對(duì)于硬件的算力和靈活度要求很高。FPGA的靈活性剛好符合AI的特性。
通過FPGA,可以快速開始定制化運(yùn)算的研究和設(shè)計(jì),因?yàn)槭鞘褂肍PGA,所以,可以保證開發(fā)軟硬件平臺(tái)的兼容,如果要獲得更高性能,就定制ASIC芯片,如果ASIC過于昂貴,或者硬件產(chǎn)品的需求量不足,也可以繼續(xù)使用FPGA。等到應(yīng)用規(guī)模擴(kuò)大到合適時(shí)機(jī),再轉(zhuǎn)換為定制化芯片,以提高穩(wěn)定性,降低功耗和平均成本。
對(duì)今天的AI嵌入式系統(tǒng)的設(shè)計(jì)師而言,必須軟硬兼?zhèn)洳拍艹蔀橐粋€(gè)優(yōu)秀的工程師。換言之,軟件人員要往硬件方向轉(zhuǎn),學(xué)習(xí)硬件知識(shí),硬件工程師也必須向軟件工程師靠攏,理解算法的執(zhí)行過程,為AI算法設(shè)計(jì)新的計(jì)算結(jié)構(gòu)和數(shù)據(jù)通路。這是因?yàn)楝F(xiàn)在AI的軟件編程并不是簡單地編寫一個(gè)程序得到一個(gè)計(jì)算結(jié)果,還必須考慮計(jì)算的速度是不是足夠夠快。所以實(shí)質(zhì)上是一個(gè)如何設(shè)計(jì)合理的并行結(jié)構(gòu)計(jì)算加速核心硬件,以達(dá)到實(shí)時(shí)全面完成算法要求的問題。
轉(zhuǎn)型勢在必行,F(xiàn)PGA工程師要理解新任務(wù)、掌握新工具。
一.對(duì)FPGA產(chǎn)品的需求
硬件性能的提升
盡管FPGA在數(shù)據(jù)中心應(yīng)用處于一個(gè)快速增長過程,但總體規(guī)模還不是很大,這里面有一些限制,也是FPGA廠商需要努力提升的地方。 首先是價(jià)格問題,F(xiàn)PGA的大規(guī)模部署需要FPGA硬件成本盡快降下來,這個(gè)要靠工藝進(jìn)步以及市場規(guī)模來解決;其次是存儲(chǔ)訪問帶寬,HBM技術(shù)以及CCIX是代表性的方向。
軟件工具的提升
FPGA需要軟件工具來輔助工程師完成設(shè)計(jì)過程,在新的應(yīng)用領(lǐng)域?qū)υO(shè)計(jì)的內(nèi)容、流程、驗(yàn)證方法等都提出了新的需求,例如AI應(yīng)用客戶希望具備高層次的模型定制能力,但是目前還沒有廠商可以提供成熟的方案。這也為新的工具提供商提供了機(jī)會(huì)。
生態(tài)系統(tǒng)
GPU獲得了廣泛的認(rèn)同和應(yīng)用,這與CUDA長期的演進(jìn)和積累密不可分。新興應(yīng)用領(lǐng)域大都有流行的設(shè)計(jì)框架和開源項(xiàng)目。FPGA一般作為高性能計(jì)算硬件來加速現(xiàn)有項(xiàng)目,所以需要和這類設(shè)計(jì)框架進(jìn)行融合,也需要大量基礎(chǔ)庫/IP來支持用戶快速完成設(shè)計(jì)。所以一個(gè)成熟的生態(tài)系統(tǒng)至關(guān)重要,目前這塊也還是非常薄弱。
二:對(duì)FPGA工程師的需求
理解新任務(wù)
傳統(tǒng)FPGA工程師面對(duì)的是硬件的設(shè)計(jì)問題,但AI等應(yīng)用與應(yīng)用系統(tǒng)關(guān)系密切,不單純是FPGA片上邏輯設(shè)計(jì)的問題。工程師往往需要了解上層軟件如何與FPGA片上系統(tǒng)的集成與優(yōu)化問題。
掌握新工具
FPGA主流廠商很早就開始布局新興市場的應(yīng)用,一個(gè)主要工作就是提升FPGA設(shè)計(jì)開發(fā)抽象層次,OpenCL/HLS語言就是典型代表,一般情況下可以提升數(shù)倍開發(fā)效率。所以FPGA工程師需要充分掌握這類新的工具,以保障自己能有足夠的效率面對(duì)行業(yè)需求。
抓住新機(jī)遇
新興應(yīng)用領(lǐng)域不僅僅是FPGA市場的簡單擴(kuò)充,它也為FPGA應(yīng)用帶來新的商業(yè)模式,以FaaS為代表的應(yīng)用形式,為FPGA開發(fā)人員帶來眾多新的商業(yè)機(jī)遇。
Achronix的Speedcore IP具有支持先進(jìn)人工智能技術(shù)的正確功能組合。
人工智能(AI)應(yīng)用要求高性能,并且在許多情況下,低延遲能夠成功地響應(yīng)條件和需求的實(shí)時(shí)變化。它們還要求功耗盡可能的低從而意味著無法使用,其解決方案是將機(jī)器學(xué)習(xí)放在供電和制冷能力充足的云服務(wù)器端。對(duì)這些嵌入式系統(tǒng)的進(jìn)一步要求是,即使在沒有網(wǎng)絡(luò)連接到云端的情況下也都能隨時(shí)工作并且準(zhǔn)備好做出響應(yīng)。這些因素的組合要求在硬件設(shè)計(jì)方法上做出改變。
人工智能要求謹(jǐn)慎地平衡數(shù)據(jù)通路的 性能、內(nèi)存延遲 和 吞吐量,這就需要用一種方法來將盡可能多的功能放到專用集成電路(ASIC)或系統(tǒng)級(jí)芯片(SoC)上。通過添加eFPGA技術(shù),則提供了市場需要的一種解決方案,來將靈活性以及客制化邏輯單元支持能力結(jié)合在一起。
作為專為嵌入到SoC和ASIC之中而設(shè)計(jì)的硅知識(shí)產(chǎn)權(quán)(IP),Achronix的Speedcore eFPGA IP是一種高度靈活的解決方案,它支持高性能機(jī)器學(xué)習(xí)應(yīng)用中需要的數(shù)據(jù)吞吐量。通過借助其可切分的架構(gòu),Speedcore IP為設(shè)計(jì)人員提供了滿足其應(yīng)用要求的能力來實(shí)現(xiàn)eFPGA功能的混合和匹配。Speedcore IP的核心功能包括基于四輸入查找表(LUT)的邏輯單元、用于寄存器文件和類似應(yīng)用并面向邏輯單元的小型存儲(chǔ)器(LRAM)、較大的單元塊存儲(chǔ)器(BRAM)和可配置的數(shù)字信號(hào)處理器(DSP)模塊。根據(jù)應(yīng)用的要求,Speedcore基于縱列的架構(gòu)可提供準(zhǔn)確混合資源的能力。
三:FPGA公司在AI時(shí)代的布局
3.1: 賽靈思
之前已經(jīng)提過,2018年,新CEO上任就把方向調(diào)整為數(shù)據(jù)中心方向,推出ACAP的下一代計(jì)算平臺(tái)。實(shí)際上就是在FPGA上集成了AI加速器,2018年,賽靈思收購了中國的AI芯片的初創(chuàng)公司——深鑒科技,這個(gè)公司的創(chuàng)始人韓松就是上節(jié)所述的網(wǎng)絡(luò)剪枝和深度壓縮的發(fā)明人。
2019年,賽靈思發(fā)布了Vitis設(shè)計(jì)軟件,其中包含了專門針對(duì)AI應(yīng)用的面向軟件的開發(fā)框架和庫文件,并提供了一些預(yù)先訓(xùn)練和優(yōu)化過的AI模型。包括上面提到的深度壓縮,量化,剪枝等技術(shù),包括深鑒公司的DNNDK開發(fā)框架,也被整合成Vitis的AI優(yōu)化器。
3.2: 英特爾
和賽靈思相比,英特爾的FPGA業(yè)務(wù)只占它業(yè)務(wù)量很小一部分。由于錯(cuò)過了移動(dòng)時(shí)代的前車之鑒,英特爾不能再錯(cuò)過 AI 數(shù)據(jù)中心這個(gè)重要方向。再加上,英偉達(dá)的GPU已經(jīng)有很強(qiáng)的壟斷地位。各大互聯(lián)網(wǎng)公司也在自主研發(fā)深度學(xué)習(xí)的加速芯片,所以,英特爾一直也在發(fā)力。
英特爾收購了多家AI芯片的初創(chuàng)公司,
3.3: Achronix
這是唯一一家可以和兩在巨頭一較高下的FPGA公司。
2019年5月發(fā)布了Speedster7t的FPGA產(chǎn)品,主打高速網(wǎng)絡(luò)傳輸,機(jī)器學(xué)習(xí)加速。它針對(duì)AI計(jì)算做了充分的優(yōu)化。最多能集成300Mb的片上內(nèi)存,和英特爾的高端產(chǎn)品Stratix10近似。另外,這款FPGA基于臺(tái)積臺(tái)的7nm工藝制造,與賽靈思的ACAP相同,與英特爾的Agilex系列相比,也有很強(qiáng)的竟?fàn)幜?。在芯片架?gòu)上,與賽靈思的ACAP類似,采用橫向和縱向的2D片上網(wǎng)絡(luò)。
四:FPGA在AI時(shí)代的發(fā)展方向
FPGA的方向之一,是集成越來越多的AI相關(guān)資源。
如何提高易用性和工具的支持,是另一個(gè)需要關(guān)注的。讓AI工程師掌FPGA的編程和開發(fā)是不現(xiàn)實(shí)的,因此,如何對(duì)現(xiàn)有人工智能的IP進(jìn)行封裝和復(fù)用,是一個(gè)焦點(diǎn)。
兩個(gè)FPGA公司都支持OpenCL(高層次開發(fā)語言),但是,OpenCL的設(shè)計(jì)移植性并不好,因此,英特爾還發(fā)布于基于OpenVINO的開發(fā)套件,它專門針對(duì)深度學(xué)習(xí)的邊緣計(jì)算場景。
FPGA在AI領(lǐng)域的應(yīng)用逐步擴(kuò)展到網(wǎng)絡(luò)邊緣和端點(diǎn),如:智能安防,視頻采集和處理,自動(dòng)駕駛,機(jī)器人。
精彩推薦 至芯科技12年不忘初心、再度起航12月17日北京中心FPGA工程師就業(yè)班開課、線上線下多維教學(xué)、歡迎咨詢! 至芯科技精品寒假班來襲,1月7號(hào)線上授課,歡迎廣大學(xué)子,電子愛好者前來學(xué)習(xí)! FPGA到底是什么?,F(xiàn)PGA工程師核心競爭力是什么? verilog的時(shí)鐘分頻與時(shí)鐘使能掃碼加微信邀請您加入FPGA學(xué)習(xí)交流群
歡迎加入至芯科技FPGA微信學(xué)習(xí)交流群,這里有一群優(yōu)秀的FPGA工程師、學(xué)生、老師、這里FPGA技術(shù)交流學(xué)習(xí)氛圍濃厚、相互分享、相互幫助、叫上小伙伴一起加入吧!
點(diǎn)個(gè)在看你最好看
原文標(biāo)題:掌握Verilog FPGA設(shè)計(jì)和驗(yàn)證方法是AI時(shí)代系統(tǒng)設(shè)計(jì)師的生命線
文章出處:【微信公眾號(hào):FPGA設(shè)計(jì)論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
-
FPGA
+關(guān)注
關(guān)注
1625文章
21628瀏覽量
601260
原文標(biāo)題:掌握Verilog FPGA設(shè)計(jì)和驗(yàn)證方法是AI時(shí)代系統(tǒng)設(shè)計(jì)師的生命線
文章出處:【微信號(hào):gh_9d70b445f494,微信公眾號(hào):FPGA設(shè)計(jì)論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評(píng)論請先 登錄
相關(guān)推薦
評(píng)論