FPGA(現(xiàn)場可編程門陣列)自誕生以來就一直在沖擊著專用集成電路(ASIC,,Application Specific Integrated Circuit)芯片界的神經(jīng),。在20世紀80年代中期,,RossFreeman和他的同事從Zilog手中購買了這項技術(shù),,并著手創(chuàng)辦了針對ASIC仿真和教育市場的Xilinx。(Zilog出自??松梨谑凸?,因為在20世紀70年代,人們已經(jīng)開始擔(dān)心石油會在30年后枯竭,,這一點在今天仍然適用),。同時,Altera也以類似的技術(shù)為核心成立,。
FPGA是由電路編程的芯片,,支持“仿真”該電路。這種仿真的運行速度比使用ASIC實現(xiàn)的實際電路運行速度慢--它的時鐘頻率更慢,,使用更多的功率,,但它可以每隔幾百毫秒重新編程一次。
制作ASIC的人們一開始先使用FPGA來仿真ASIC,,然后再將它們進行掩碼處理并批量制造,。英特爾、AMD和許多其他公司在制造芯片之前都會使用FPGA來仿真芯片。
觸動電信業(yè)的神經(jīng)
電信行業(yè)一直是FPGA的主要用戶,。電信標準不斷變化,,建造電信設(shè)備非常困難,因此首先提供電信解決方案的公司往往會占領(lǐng)最大的市場份額,。由于ASIC需要很長時間才能完成,,F(xiàn)PGA提供了一個捷徑。電信設(shè)備的最初版本一般采用FPGA,,但FPGA高昂的價格引發(fā)了沖突,。盡管FPGA的價格對ASIC仿真市場無關(guān)緊要,但對電信行業(yè)而言,,芯片的價格卻很重要,。許多年前,AT&T和朗訊制造了自己的FPGA,,稱為ORCA(優(yōu)化的可重配置單元陣列),,但就硅片的速度或尺寸而言,它們與Xilinx或Altera相比不具有競爭力,。
如今,,華為已成為FPGA的最大客戶,。華為兩年前即提供了世界上最早的5G電信設(shè)備解決方案,,相較于其他供應(yīng)商處于明顯優(yōu)勢,但中美之間最近的緊張關(guān)系很可能會導(dǎo)致產(chǎn)于美國的FPGA影響華為提供5G電信設(shè)備,。
FPGA價格觸及神經(jīng)
早期,,F(xiàn)PGA被用于SDR(軟件定義的無線電)——在同一時間建立多個不同標準的無線電通信,本質(zhì)上是一部講多種語言的單一電話,。這一次,,F(xiàn)PGA挑動了一個巨大的神經(jīng)。
SDR技術(shù)的實施方式存在分歧,。商業(yè)供應(yīng)商開發(fā)了經(jīng)濟高效的解決方案,,如今地球上的每個基站都有SDR技術(shù)。另一方面,,在國防界,,SDR是由大型國防承包商建造的,他們用有利可圖的傳統(tǒng)產(chǎn)品線來建造,。其結(jié)果是基于FPGA的無線電產(chǎn)品價格非常高,,以至于美國部分國防市場對使用FPGA產(chǎn)生了持續(xù)的過敏反應(yīng)。
接下來,,F(xiàn)PGA試圖在DSP(數(shù)字信號處理器)和嵌入式市場中發(fā)展,。在角落里有一些微處理器的FPGA開始出現(xiàn)。銷售這些新型FPGA的壓力太大,以至于如果客戶拒絕新的芯片系列,,它們將被列入黑名單,,有時甚至?xí)芙^提供服務(wù)好幾個月。鑒于FPGA產(chǎn)品具有巨大的覆蓋率和知識產(chǎn)權(quán)層而無法降低其價格,,因此,,發(fā)展FPGA市場的壓力一直是巨大的,F(xiàn)PGA公司征服新市場失敗的規(guī)模也是如此,。
觸動HPC和數(shù)據(jù)中心的神經(jīng)
在過去的幾年里,,F(xiàn)PGA一直試圖在HPC(高性能計算)和數(shù)據(jù)中心市場發(fā)展。2017年,,微軟宣布在數(shù)據(jù)中心使用Altera FPGA,,而英特爾則收購了Altera。2018年Xilinx公司宣布其“數(shù)據(jù)中心優(yōu)先”戰(zhàn)略,,Xilinx首席執(zhí)行官在眾多分析師面前宣布Xilinx不再是一家FPGA公司了,。這可能是一種輕微的戲劇化表現(xiàn),但從歷史上看是有關(guān)聯(lián)的,。
在高性能計算機和數(shù)據(jù)中心使用FPGA時,,目前的主要障礙是布局和布線——運行專有FPGA供應(yīng)商軟件將電路映射到FPGA元件所花費的時間,在大型FPGA和高速CPU服務(wù)器上,,布局和布線需要長達三天,,而且很多時候即使在使用三天后,很多軟件仍無法解決映射問題,。
觸動石油和天然氣的神經(jīng)
在石油和天然氣實施領(lǐng)域中,,2007年左右出現(xiàn)了一個利基市場。傳統(tǒng)計算機模擬地球上的鉆孔以發(fā)現(xiàn)石油所花費的時間比實際建造的鉆井場地和鉆井本身還要長,,F(xiàn)PGA加速器的使用極大地改變了這種顛倒時序,。石油公司數(shù)據(jù)中心中的第一個FPGA,用于計算地震圖像,,由MaxelerTechnologies制造,,并交付給Chevron。
幾年來,,F(xiàn)PGA在石油和天然氣領(lǐng)域的應(yīng)用不斷擴大,,直到來自ASIC行業(yè)的壓力導(dǎo)致CPU技術(shù)回歸標準化。如今,,石油和天然氣中的預(yù)測和模擬仍然很重要,,地震成像大多在CPU和GPU上完成,但FPGA的機會仍然存在,。我們需要注意的是,,“今天的新事物是明天的遺產(chǎn)”,,當然,如今的新事物是對AI和數(shù)據(jù)的關(guān)注,。
盡管如此,,F(xiàn)PGA仍然是一種快速進入市場的方式,是獲得競爭優(yōu)勢的簡單方法以及在許多關(guān)鍵任務(wù)情況下必不可少的技術(shù)——盡管與ASIC相比,,芯片價格昂貴,。然而,在與CPU或GPU上運行軟件相比,,在HPC和數(shù)據(jù)中心中,,F(xiàn)PGA的運營成本大大降低。與CPU和GPU相比,,所需的FPGA更少,,所需的冷卻也更少。FPGA使得數(shù)據(jù)中心規(guī)模更小,,這觸及了運營商擔(dān)心數(shù)據(jù)中心可能會縮小的神經(jīng),。
ASIC與FPGA
使用FPGA的另一種方法是增強ASIC。構(gòu)建ASIC的目的是保持固定功能,,同時添加FPGA,,為產(chǎn)品的最新更改或適應(yīng)不同市場提供一定的靈活性。
現(xiàn)代FPGA集成了越來越多的硬功能,,變得越來越像ASIC,,而ASIC有時會在其設(shè)計中添加一些FPGA結(jié)構(gòu),用于調(diào)試,、測試,、現(xiàn)場修復(fù)以及根據(jù)需要靈活地添加少量功能,。
盡管如此,,ASIC團隊一直在與FPGA概念抗爭。ASIC設(shè)計師問:“您想要什么功能,?”如果回答是“我還不知道”,,他們會很不耐煩。
無人駕駛汽車行業(yè)就是這樣一個新的戰(zhàn)場,。由于算法不斷變化,,并且法律法規(guī)可能會在汽車進入市場時發(fā)生變化,需要駕駛員更新,,因此解決方案需要靈活,。FPGA的時鐘頻率較低,散熱片較小,,因此物理尺寸比CPU和GPU小,。更低的功耗和更小的尺寸使FPGA成為顯而易見的選擇,。盡管如此,GPU易于編程,,并且不需要三天時間來實現(xiàn)布局和路線,,因此對FPGA形成了一定挑戰(zhàn)。
此外,,至關(guān)重要的是能夠在汽車和云中運行相同的代碼(主要用于模擬和測試),,因此FPGA必須先在云中使用,然后才能在汽車中使用,。由于這些原因,,許多開發(fā)人員更喜歡GPU。
FPGA的發(fā)展
FPGA在不斷發(fā)展?,F(xiàn)代接口正試圖使FPGA更易于編程,,更加模塊化,并與其它技術(shù)更加協(xié)作,。FPGA支持AXI(高級可擴展接口)總線,,這使它們更易于編程,但也帶來了極大的效率低下,,使得FPGA的性能降低,,最終競爭力大大降低。學(xué)術(shù)工作方面,,例如Eric Chung的關(guān)于“FPGA動態(tài)網(wǎng)絡(luò)”的論文有助于解決路由問題,,但這種先進的思想尚未被業(yè)界所接受。
FPGA如何實現(xiàn)連接,?對于具有大量數(shù)據(jù)流的HPC工作負載,,可以使用PCI Express并部署通信隱藏技術(shù)。但是,,像NFV(網(wǎng)絡(luò)功能虛擬化)這樣的小型工作負載如何能同時為大量用戶提供服務(wù)呢,。通常,對于NFV和虛擬機加速而言,,F(xiàn)PGA必須直接連接到CPU,,并可能使用緩存一致性作為一種通信機制,這是VMware最近研究的結(jié)果,。當然,,關(guān)鍵的功能是具備FPGA崩潰時CPU不崩潰的能力,反之亦然,。超標量技術(shù)公司正在重新發(fā)現(xiàn)IBM大型機的時代需求,,從而將越來越多的復(fù)雜性帶入標準化平臺。
其它組織也有機會,。在提供FPGA平臺時,,組織無需進行ASIC開發(fā)的預(yù)算,,也無需了解最新的硅制造挑戰(zhàn)和解決方案,便可以開發(fā)電路,,并在其產(chǎn)品中建立競爭優(yōu)勢,,例如物聯(lián)網(wǎng)網(wǎng)絡(luò)邊緣的新興計算機會,靠近傳感器,、顯示器,、或在數(shù)據(jù)流過時直接在線計算。
同時,,F(xiàn)PGA公司正在垂直向上推堆棧,,并將其推入CPU插槽,英特爾在該市場上占據(jù)主導(dǎo)地位,,其中包括針對NFV的特殊指令,。數(shù)據(jù)中心中新CPU和FPGA進入的主要障礙不僅在于速度和成本,還在于所有可能的I/O設(shè)備的軟件和驅(qū)動程序的可用性,。
使FPGA在數(shù)據(jù)中心中工作的關(guān)鍵是使其易于使用——例如,,使用自動工具來驅(qū)動FPGA的使用而不會產(chǎn)生布局和布線困難。微軟率先在超標量數(shù)據(jù)中心中使用FPGA來加速Bing,、NFV和AI算法,。Microsoft還構(gòu)建了抽象,特定于領(lǐng)域的語言和靈活的硬件基礎(chǔ)設(shè)施,。在商業(yè)上,,F(xiàn)PGA的主要問題是上市策略。
構(gòu)建新芯片然后開始考慮該軟件可能為時已晚,。如何通過調(diào)整硬件來適配軟件以及從現(xiàn)有軟件中獲取價值,?這也帶來了重新思考FPGA架構(gòu)的機會。但是,,值得警告的是:硅產(chǎn)業(yè)正在吞噬現(xiàn)金,。構(gòu)建ASIC是一種撲克游戲,多年來賭注不斷增加,。這是一場贏家通吃的比賽,,F(xiàn)PGA之類的威脅在比賽初期就被淘汰,。
FPGA正在為硅產(chǎn)業(yè)帶來額外的突增風(fēng)險,。
利基技術(shù)
軟件設(shè)計師總是會說,“如果它能在軟件中實現(xiàn),,它就會在軟件中實現(xiàn)”,,而ASIC設(shè)計師會說,“如果它能在ASIC中實現(xiàn),,它就會在ASIC中完成,?!弊钣腥さ氖牵叭绻梢杂密浖瓿?,那么你就不必和那些像FPGA一樣思考的人打交道,。”與制造ASIC所需的龐大“軍隊”以及世界范圍內(nèi)的軟件程序員的數(shù)量相比,,F(xiàn)PGA擁有一個很小的社區(qū),,其中包含許多有時表現(xiàn)古怪的程序員。FPGA公司規(guī)模較小,。FPGA社區(qū)也較小,。
英特爾正在推動FPGA的靈活性。它遵循構(gòu)建硬件以運行現(xiàn)有軟件的原則,,并成為這一領(lǐng)域最成功的公司,。
FPGA可以比CPU和GPU更快,但是行業(yè)和投資界的艱難教訓(xùn)是,,在計算機存在的大部分時間里,,速度無關(guān)緊要,而實時性也無關(guān)緊要,。因此,,很少有僅為了速度而購買計算機。確實有這種情況,,但這更多是隨機事件,,而不是一個建立業(yè)務(wù)的市場。另外,,F(xiàn)PGA沒有標準,、開源、友好的編程模型——因此,,對于在所有FPGA芯片上均可工作或易于交叉編譯的FPGA程序,,也沒有標準的市場。Maxeler Technologies可以提供此類接口作為一種高級解決方案,,但廣泛的行業(yè)采用需要信任,。為了從早期采用者發(fā)展到讓所有人受益,信任需要數(shù)據(jù)中心領(lǐng)域中既有供應(yīng)商的協(xié)調(diào)和支持,。
現(xiàn)實世界中的應(yīng)用程序人員說:“我不在乎它是什么,,只是給我一種方法去做我想做的事情就行了?!鄙形磸V泛探索的FPGA可能有哪些應(yīng)用領(lǐng)域,?對于實時計算、制造業(yè),、無人機的計算機視覺,,這是FPGA的重量和功耗優(yōu)勢能展現(xiàn)的地方,。在衛(wèi)星上進行硬件升級是非常昂貴的,因此FPGA提供了至關(guān)重要的長期靈活性,。FPGA需要找到一種能產(chǎn)生共鳴的產(chǎn)品,,并且它們必須易于編程,不只是硬件或軟件,,還包括生態(tài)系統(tǒng),。這是完整的解決方案。
超越當前市場限制的一種方法是實時編譯和自動FPGA程序生成,。這說起來容易做起來難,,但隨著AI破壞了應(yīng)用程序空間,機會越來越多,。如今,,一切都由AI完成。甚至諸如石油和天然氣地震成像之類的傳統(tǒng)算法也都采用了AI,。我們需要用科學(xué)和工程解決方案來處理AI,。FPGA可能是一個很好的起點,可能最初是連接AI模塊,,然后將它們整合到FPGA架構(gòu)中,,例如Xilinx的下一代芯片——帶有AI架構(gòu)、CPU,、100G接口和FPGA單元都集成在同一個7納米芯片中,。
從另一個角度來看,隨著AI芯片產(chǎn)生并消耗大量數(shù)據(jù),,我們將需要FPGA來滿足需求并能迅速轉(zhuǎn)移輸出,。隨著用于所有AI處理的新型ASIC的面世,F(xiàn)PGA可以為AI芯片公司提供差異化服務(wù),。
預(yù)測
我們是否可以提前10或25年預(yù)測下述發(fā)展,?盡管世界在變化,但預(yù)測似乎保持不變,。
1.將會有成功的CPU+ FPGA服務(wù)器芯片,,或直接訪問CPU緩存層次結(jié)構(gòu)的FPGA。有人說會有,,有人說不會有,。
2. SoC(片上系統(tǒng))FPGA芯片將不斷發(fā)展壯大,推動醫(yī)療,、下一代電信和汽車行業(yè)等,。
3.開發(fā)人員將使用FPGA做一些令人驚奇的事情,讓世界變得更美好,,但必須掩蓋內(nèi)部存在FPGA的事實,。
4.將保留FPGA的名字,并制造被稱為FPGA的芯片,,但內(nèi)部的一切將完全不同,。
5.當我們放棄(數(shù)據(jù)流)優(yōu)化以使FPGA易于編程時,F(xiàn)PGA的性能將降低,,因此它們將不再與CPU競爭,,而CPU總是更易于編程。
6.將有具有動態(tài)路由,、演進互動以及運行時靈活的數(shù)據(jù)移動的FPGA,。
7.放置和布線軟件以及FPGA頂部的完整軟件堆棧將是開源的。Yosys和Lattice FPGA已經(jīng)開始努力,。
8.所有半導(dǎo)體架構(gòu)都將與TPU,、GPU、CPU,、ASIC和FPGA組合成單個芯片,。一些可能是每個整體的組合,其它將是每個部分的組合,。
9.更多的芯片將集中在有限的應(yīng)用空間上,,而更少的集中在通用芯片上。從某種意義上說,,一切都變成了SoC,。
評論
本文解決了多少個沖突,并創(chuàng)造了多少個新沖突,?從這個意義上講,,沖突是對現(xiàn)有工作方式的挑戰(zhàn)。這種現(xiàn)有的做事方式可能會影響人們的思維方式,,從而影響他們的行為方式,。但也許更重要的是,這將影響開發(fā)者的謀生方式,。