FPGA 自上世紀(jì) 80 年代進(jìn)入市場以來,就與通用 CPU、ASIC 乃至 GPU 競爭共存。FPGA 的低功耗、可編程、規(guī)格適中等特性,使其在市場中占據(jù)一席之地。本文分析了通信、HPC、數(shù)據(jù)中心等多個領(lǐng)域的現(xiàn)狀,對市場、價格和競品對比等方面進(jìn)行了概要分析,并預(yù)測了 FPGA 未來的一些發(fā)展方向,對了解 FPGA 提供了很好的參考。本文概要總結(jié)了 2019 年 9 月在斯坦福大學(xué)一次三小時討論情況,其中匯聚了來自多家企業(yè)和研究機(jī)構(gòu)的實踐經(jīng)驗,包括 Zilog、Altera、Xilinx、Achronix、Intel、IBM、Stanford、MIT、伯克利、威斯康星大學(xué)、Technion、Fairchild、貝爾實驗室、Bigstream、谷歌、DIGITAL(DEC )、SUN,諾基亞、SRI、日立、Silicom、Maxeler Technologies、VMware、施樂 PARC、思科等。上述各家并不對本文內(nèi)容承擔(dān)任何責(zé)任,只是在某種程度上激發(fā)了作者們的思考,進(jìn)而構(gòu)成了 FPGA 的多維發(fā)展之路。
FPGA(現(xiàn)場可編程門陣列,F(xiàn)ield-Programmable Gate Arrays) 自誕生以來,就與 ASIC 社區(qū)糾纏不清。上世紀(jì) 80 年代中期,Ross Freeman 及其同事從 Zilog 處購買了該項技術(shù),初創(chuàng)了面向 ASIC 仿真和教育市場的 Xilinx 公司。Zilog 來自于埃克森美孚石油公司,其創(chuàng)立源自于上世紀(jì) 70 年代人們對石油將在 30 年內(nèi)耗盡的擔(dān)憂——盡管時至今日這一說法依然大行其道。幾乎與此同時,以類似技術(shù)為核心的 Altera 成立。
FPGA 是支持電路編程的芯片,實現(xiàn)對該電路的“仿真”。對于 ASIC 中的實現(xiàn),這種仿真的運行性能要慢于實際的電路。它的時鐘頻率更低,耗能更高,但可以每幾百毫秒重新編程一次。
FPGA 用于在 ASIC 制造商做光罩并提交工廠制造前仿真 ASIC。Intel、AMD 等企業(yè)在芯片生產(chǎn)前,使用 FPGA 仿真芯片。
電信領(lǐng)域的爭奪
FPGA 一直在電信行業(yè)大量使用。由于電信標(biāo)準(zhǔn)的不斷變化增加了電信設(shè)備的制造難度,因此能率先給出電信解決方案的企業(yè)往往會占領(lǐng)最大的市場份額。ASIC 的制造周期很長,而 FPGA 提供了一種快捷方式。電信設(shè)備開始在初期版本上采用 FPGA,這引發(fā)了 FPGA 價格的波動。盡管 ASIC 仿真市場并不受 FPGA 價格的影響,但芯片的價格對電信企業(yè)卻至關(guān)重要。多年前,AT&T 和朗訊制造了自己的 FPGA,稱為 ORCA(優(yōu)化的可重配置單元陣列,optimized reconfigurable cell arrays)。但與 Xilinx 或 Altera 相比,它們在硅片的速度和規(guī)格上并不具有競爭優(yōu)勢。
如今,華為已成為 FPGA 的最大客戶。美國制造的 FPGA 可能正是中美之間最近的緊張關(guān)系的導(dǎo)火索。這些芯片令華為在 5G 電信設(shè)備交付上占據(jù)優(yōu)勢,領(lǐng)先世界上其他任何準(zhǔn)備參與競爭的供應(yīng)商達(dá)兩年。
FPGA 價格之爭
FPGA 很早就用于 SDR(軟件無線電,software-defined radios)。SDR 技術(shù)可同時支持多種通信標(biāo)準(zhǔn)的無線電,類似于一部可講多種語言的電話。這一次 FPGA 遇上了麻煩,因為 SDR 技術(shù)走上了兩條不同的采用道路。一方面,商業(yè)供應(yīng)商基于成本效益考慮開發(fā)了很多解決方案,并在當(dāng)前地球上所有的基站都部署了 SDR 技術(shù)。另一方面,在國防領(lǐng)域,大型國防承包商是為了保護(hù)有利可圖的傳統(tǒng)產(chǎn)品線而構(gòu)建 SDR 的。這導(dǎo)致基于 FPGA 的無線電產(chǎn)品的價格居高不下,以至美國的部分國防市場一直抵制它們的應(yīng)用。
下一步,F(xiàn)PGA 試圖進(jìn)入 DSP 和嵌入式市場發(fā)展,開始推出部分使用硬核微處理器的 FPGA。但銷售這些新型 FPGA 的壓力很大,以至于如果客戶拒絕這一新系列的芯片,就會被芯片廠商列入黑名單,有時甚至?xí)芙^提供服務(wù)數(shù)月。鑒于 FPGA 企業(yè)攻克新市場頻頻失敗,F(xiàn)PGA 市場的增長壓力依然巨大。因為 FPGA 的芯片面積巨大,涉及的知識產(chǎn)權(quán)眾多,所以 FPGA 產(chǎn)品難以降低價格。
在 HPC 和數(shù)據(jù)中心領(lǐng)域碰壁
在過去數(shù)年中,F(xiàn)PGA 試圖在 HPC(高性能計算)和數(shù)據(jù)中心市場中發(fā)展。2017 年,微軟宣布在數(shù)據(jù)中心使用 Altera FPGA,而英特爾則收購了 Altera。2018 年,Xilinx 宣布了其“數(shù)據(jù)中心優(yōu)先”戰(zhàn)略。其 CEO 面對廣大分析師時,宣稱 Xilinx 不再是一家單純的 FPGA 企業(yè)。這頗具戲劇化,但這是歷史必然。
在 HPC 和數(shù)據(jù)中心使用 FPGA,主要障礙在于布局布線(place & route),即運行 FPGA 供應(yīng)商特定軟件將電路映射(mapping)為 FPGA 元件所耗費的時間。針對大型 FPGA,使用快速的 CPU 服務(wù)器,布局布線耗時可能多至三天。并且在很多情況下,三天之后軟件依然無法找到映射。
在石油天然氣領(lǐng)域碰壁
2007 年前后,石油和天然氣領(lǐng)域的應(yīng)用形成了利基市場。在傳統(tǒng)計算機(jī)上模擬鉆探地球發(fā)現(xiàn)石油所花費的時間,比現(xiàn)場實際施工和鉆探的時間還要長。使用 FPGA 加速器,極大地改變了這種耗時顛倒的情況。首個用于計算地震圖像的石油企業(yè)數(shù)據(jù)中心的 FPGA,是由 Maxeler Technologies 制造并交付給 Chevron 的。
FPGA 在油氣領(lǐng)域的應(yīng)用經(jīng)過了數(shù)年擴(kuò)展,直到來自 ASIC 產(chǎn)業(yè)的壓力,才讓標(biāo)準(zhǔn)的 CPU 技術(shù)重新回歸。當(dāng)下,預(yù)測和仿真在油氣領(lǐng)域依然重要,地震成像大多使用 CPU 和 GPU 完成,不過 FPGA 依然占據(jù)了一席之地。我們知道,“當(dāng)前的新事物,會成為明日黃花”。當(dāng)然,人工智能和對數(shù)據(jù)的關(guān)注是當(dāng)前的新事物。
盡管如此,F(xiàn)PGA 依然是一種進(jìn)入市場的快捷方式、獲取競爭優(yōu)勢的簡單方法,以及許多關(guān)鍵任務(wù)中必不可少的技術(shù)。FPGA 的每個芯片價格要比 ASIC 昂貴,但是對 HPC 和數(shù)據(jù)中心而言,相比 CPU 和 GPU 而言需要的 FPGA 芯片更少,制冷開銷更低,因此 FPGA 的運行費用要顯著低于在 CPU 或 GPU 上運行軟件。FPGA 使得數(shù)據(jù)中心規(guī)模更小,這會使運營商感到不安,因為他們擔(dān)心自己的數(shù)據(jù)中心可能會縮水。
ASIC vs. FPGA
FPGA 的另一用途,是作為 ASIC 的補充。構(gòu)建 ASIC 的目的在于實現(xiàn)固定的功能,添加 FPGA 則可為產(chǎn)品的最新更改以及適應(yīng)不同的市場提供一定的靈活性。
現(xiàn)代 FPGA 集成了越來越多的硬核功能,變得越來越像是 ASIC。而 ASIC 也時常會在設(shè)計中添加一些 FPGA 結(jié)構(gòu),以便于調(diào)試、測試、現(xiàn)場修復(fù),以及增加添補小功能的靈活性。
但 ASIC 團(tuán)隊卻一直在與 FPGA 概念做抗?fàn)帯SIC 設(shè)計師詢問“用戶需要什么功能?”,并在得到“我也不確定”的回答后會失去耐心。
無人駕駛汽車行業(yè)就是這樣的一個新戰(zhàn)場。由于算法的不斷變化,并且法律法規(guī)可能會在汽車入場時發(fā)生變化,需要不斷對駕駛技術(shù)做相應(yīng)調(diào)整,這需要靈活可變的解決方案。FPGA 的時鐘頻率更低、散熱片較小,物理尺寸小于 CPU 和 GPU。更低的功耗和更小的尺寸,使 FPGA 成為顯而易見的選擇。盡管如此,GPU 更易于編程,并且不需要耗時三天的布局布線。
另一個至關(guān)重要的考慮是,出于模擬和測試等方面的考慮,需要在汽車上和云中運行相同的代碼。這樣需要 FPGA 必須在云中可用,然后才能在汽車中使用。由于上述問題,許多開發(fā)人員更喜歡選擇 GPU。
FPGA 的演進(jìn)
FPGA 正處于不斷發(fā)展中。現(xiàn)代接口正使 FPGA 更易于編程,更為模塊化,更易于與其他技術(shù)協(xié)作。FPGA 支持 AXI(高級可擴(kuò)展接口,Advanced Extensible Interface)總線,使其更易于編程,但也會引入很多嚴(yán)重的效率損失,結(jié)果降低了 FPGA 的性能,最終導(dǎo)致其競爭力下降。一些學(xué)術(shù)工作提出了解決布線問題的研究,例如 Eric Chung 的關(guān)于 FPGA 動態(tài)網(wǎng)絡(luò)的論文,但是這些先進(jìn)的理念尚未為產(chǎn)業(yè)界所接受。
FPGA 是如何連接的?對于具有大量數(shù)據(jù)流的 HPC 工作負(fù)載,可以使用 PCI Express,并部署通信隱藏技術(shù)。但是像 NFV(網(wǎng)絡(luò)功能虛擬化,network function virtualization)這樣的小規(guī)模但卻能同時為大量用戶提供服務(wù)的工作負(fù)載呢?VMware 最近的調(diào)查結(jié)果指出,對于 NFV 和虛擬機(jī)加速,F(xiàn)PGA 必須直接連接到 CPU,并使用緩存一致性作為通信機(jī)制。當(dāng)然,一個關(guān)鍵的特性是 FPGA 的崩潰不會導(dǎo)致 CPU 崩潰,反之亦然。大型技術(shù)企業(yè)正在重新審視 IBM 大型機(jī)時代的需求,意圖使用標(biāo)準(zhǔn)化平臺涵蓋越來越多的復(fù)雜性。
在大眾化的企業(yè)市場也存在著機(jī)會。在提供 FPGA 平臺時,企業(yè)即便沒有進(jìn)行 ASIC 開發(fā)的預(yù)算,也不了解最新的硅制造挑戰(zhàn)和解決方案,也可以去開發(fā)電路,并在其產(chǎn)品中建立競爭優(yōu)勢。例如新興的物聯(lián)網(wǎng)(IoT)邊緣計算,實現(xiàn)在近傳感器、顯示器端甚至在數(shù)據(jù)流經(jīng)過時進(jìn)行計算。
同時,F(xiàn)PGA 企業(yè)正將技術(shù)棧上推直至 CPU 插槽。英特爾在該市場上占據(jù)主導(dǎo)地位,其掌握了 NFV 特殊指令等技術(shù)。在數(shù)據(jù)中心中添加新 CPU 和 FPGA 的主要障礙不僅是速度和成本,還在于所有可能的 I/O 設(shè)備的軟件和驅(qū)動程序是否可用。
在數(shù)據(jù)中心中推行 FPGA 的關(guān)鍵是易用性。例如,使用自動工具去驅(qū)動 FPGA 的應(yīng)用,避免產(chǎn)生布局布線上的難題。微軟率先在大型數(shù)據(jù)中心中使用 FPGA 來加速 Bing、NFV 和人工智能算法,此外還構(gòu)建了抽象、領(lǐng)域特定語言和靈活的硬件基礎(chǔ)結(jié)構(gòu)。在商業(yè)上,F(xiàn)PGA 的主要問題在于入市策略。
構(gòu)建新的芯片后才去考慮軟件就為時已晚了。如何讓硬件適應(yīng)軟件而從現(xiàn)有軟件中獲益?這也提供了重新思考 FPGA 架構(gòu)的機(jī)會。但是需要警告的是:硅產(chǎn)業(yè)是個吞金獸。構(gòu)建 ASIC 是一種賭注多年持續(xù)攀升的撲克游戲。這是一場贏家通吃的比賽,在比賽初期就剔除了 FPGA 的威脅。
FPGA 正在為硅項目帶來額外的不良風(fēng)險。
利基市場
正如軟件設(shè)計師常說,“軟件能完成的事情,就應(yīng)由軟件實現(xiàn)”。ASIC 設(shè)計師會說,“ASIC 能完成的事情,就應(yīng)由 ASIC 來完成。”最有趣的說法是,“如果可以用軟件完成,那么就不必和一切 FPGA 思維的人打交道了。”相比 ASIC 的團(tuán)隊規(guī)模,以及全球范圍內(nèi)軟件開發(fā)人員的規(guī)模,F(xiàn)PGA 的公司很小,社區(qū)也很小,其中只有一些甚至是古怪的程序員。
英特爾正在推進(jìn) FPGA 的靈活性。在遵循“構(gòu)建硬件以運行現(xiàn)有軟件”這一原則的公司中,英特爾是最成功的一家。
FPGA 性能可能比 CPU 和 GPU 更快,但是來自產(chǎn)業(yè)界和投資界的切實經(jīng)驗教訓(xùn)是,自計算機(jī)出現(xiàn)以來的絕大多數(shù)時間中,速度和實時性并沒那么重要。很少有人僅僅為了高性能而購買計算機(jī)。盡管此事時有發(fā)生,卻不能根據(jù)這樣的隨機(jī)事件去建立業(yè)務(wù)市場。此外,F(xiàn)PGA 缺失標(biāo)準(zhǔn),沒有開源代碼,也沒有令人愉悅的編程模型。因此,并沒有標(biāo)準(zhǔn)市場支持可在所有 FPGA 芯片上工作或易于交叉編譯的 FPGA 程序。Maxeler Technologies 具有提供此類接口的高級解決方案,但廣泛的行業(yè)采用需要的是信任。信任才能推動技術(shù)從早期采用者的玩物發(fā)展到讓所有人受益,但這需要現(xiàn)有數(shù)據(jù)中心領(lǐng)域供應(yīng)商的推動和支持。
現(xiàn)實中,應(yīng)用的用戶會說:“我并不在乎具體方法,只要能完成我想要做的事情。” 在尚未廣泛探索的應(yīng)用領(lǐng)域中,哪些是 FPGA 可一展身手的?對于實時計算,F(xiàn)PGA 可用于工業(yè)界。對于無人機(jī)上的計算機(jī)視覺,F(xiàn)PGA 在重量和功耗上具有優(yōu)勢。在衛(wèi)星上的硬件升級代價很大,對此 FPGA 提供了至關(guān)重要的長期靈活性。FPGA 需要的是休戚與共的產(chǎn)品。此類產(chǎn)品必須易于編程,光是硬件或軟件還不夠,還需要生態(tài)系統(tǒng),需要完整的解決方案。
實時編譯和自動 FPGA 程序生成是拓寬當(dāng)前市場局限的好方法。說起來容易,但做起來難,但是隨著人工智能對應(yīng)用空間的突破,越來越多的機(jī)會出現(xiàn)了。當(dāng)前,一切皆可由人工智能完成,甚至油氣領(lǐng)域地震成像等的傳統(tǒng)算法也都采用了人工智能。處理人工智能模塊需要科學(xué)和工程上的解決方案。FPGA 可提供一個很好的出發(fā)點,從連接 AI 模塊開始進(jìn)而整合到 FPGA 架構(gòu)中。例如,Xilinx 的下一代芯片將人工智能架構(gòu)、CPU、100G 接口和 FPGA 單元整合到同一個 7 納米芯片中。
從另一個角度來看,隨著人工智能芯片生成并處理大量數(shù)據(jù),需要 FPGA 提供大量輸入并迅速取走輸出。隨著用于人工智能處理的新 ASIC 的面世,F(xiàn)PGA 將在人工智能芯片公司大展身手。
預(yù)測
將出現(xiàn)成功的 CPU+FPGA 服務(wù)器芯片,或直接訪問 CPU 緩存層次結(jié)構(gòu)的 FPGA。有人贊同,有人否定。
SoC(片上系統(tǒng),system on a chip)FPGA 芯片將不斷發(fā)展壯大,帶動醫(yī)療、下一代電信和汽車等行業(yè)。
開發(fā)人員將使用 FPGA 實現(xiàn)神奇的事情,推動世界的進(jìn)步,但對內(nèi)部存在 FPGA 的事實必須秘而不宣。
FPGA 的名稱將會保留,稱為 FPGA 的芯片也會繼續(xù)出現(xiàn),但是其內(nèi)部將大相徑庭。
一旦我們?yōu)楹喕?FPGA 編程而放棄(數(shù)據(jù)流)優(yōu)化,F(xiàn)PGA 的性能將降低,進(jìn)而將無法與易于編程的 CPU 競爭。
FPGA 將具有動態(tài)布線、不斷發(fā)展的互連,以及運行時靈活的數(shù)據(jù)移動。
和 FPGA 之上完整的軟件棧一樣,布局布線軟件將會開源。Yosys 和 Lattice FPGA 已經(jīng)著手于此。
所有半導(dǎo)體架構(gòu)都將組合為融合了 TPU、GPU、CPU、ASIC 和 FPGA 的單個芯片。芯片中可融合所有技術(shù),也可融合部分技術(shù)。
更多的芯片將聚焦于特定應(yīng)用空間,只有少部分實現(xiàn)通用用途。從某種意義上說,一切都會成為 SoC。
責(zé)任編輯:PSY
原文標(biāo)題:漫談FPGA的過去與將來
-
FPGA
+關(guān)注
關(guān)注
1629文章
21729瀏覽量
603012 -
芯片
+關(guān)注
關(guān)注
455文章
50714瀏覽量
423158 -
電信
+關(guān)注
關(guān)注
2文章
730瀏覽量
61923 -
數(shù)據(jù)中心
+關(guān)注
關(guān)注
16文章
4761瀏覽量
72035
原文標(biāo)題:漫談FPGA的過去與將來
文章出處:【微信號:c-stm32,微信公眾號:STM32嵌入式開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論