(3)通知通道
FPGA通過PCIE向CPU發(fā)送中斷請求,CPU收到中斷請求后保存當(dāng)前工作現(xiàn)場,然后轉(zhuǎn)入中斷處理程序執(zhí)行,必要時(shí)會(huì)關(guān)閉中斷執(zhí)行中斷處理程序。CPU執(zhí)行完中斷處理程序后,會(huì)重新打開中斷,然后重載到之前的工作現(xiàn)場繼續(xù)執(zhí)行。
目前FPGA行業(yè)面臨的問題
在行業(yè)內(nèi),微軟在數(shù)據(jù)中心使用FPGA架構(gòu),Amazon也推出了FPGA的計(jì)算實(shí)例,那么是不是說明整個(gè)行業(yè)對FPGA的使用比較廣泛呢?實(shí)際上,F(xiàn)PGA是個(gè)硬件芯片,它本身不能直接使用,也缺乏類似操作系統(tǒng)這樣的系統(tǒng)軟件支持。長期以來,F(xiàn)PGA行業(yè)在數(shù)據(jù)計(jì)算加速方向可以分為以下幾個(gè)參與方:
1.芯片原廠:Xilinx和Altera(已被Intel收購)提供FPGA的芯片,直供或者給代理商分銷。
2.IP提供商:提供各種功能的IP,比如訪問DDR內(nèi)存的IP,支持PCIE設(shè)備的IP,圖片編解碼的IP。一些共同的通用IP由芯片原廠提供。
3.集成商:集成商提供硬件和軟件的支持。由于直接用戶缺乏硬件設(shè)計(jì)和制造能力,往往希望集成商提供成熟完善的硬件,并完成IP的集成,提供驅(qū)動(dòng)和使用方式,方便最終用戶的使用。
4.用戶:最終使用者。在數(shù)據(jù)中心領(lǐng)域,用戶一般目的是希望使用FPGA對計(jì)算進(jìn)行加速。
在FPGA行業(yè),芯片原廠并不提供直接使用的硬件板卡,這個(gè)工作由集成商完成。由于硬件板卡使用量小和分擔(dān)設(shè)計(jì)、生產(chǎn)成本,硬件板卡價(jià)格往往高于芯片價(jià)格,甚至達(dá)到十倍之多。
IP提供商因?yàn)閾?dān)心產(chǎn)權(quán)泄露,通常不會(huì)迅速提供可用的可執(zhí)行文件(網(wǎng)表文件)給用戶,而是需要簽署一系列的協(xié)議和法律文件,甚至有的IP提供商根本不提供給用戶測試的機(jī)會(huì)。這樣就造成最終用戶很難得到可用的硬件板卡,更難以及時(shí)獲得使用最新工藝芯片的硬件板卡,造成用戶無法快速對不同IP進(jìn)行驗(yàn)證,從而挑選適合自身業(yè)務(wù)的IP。另外,F(xiàn)PGA的開發(fā)使用硬件描述語言,缺乏軟件領(lǐng)域非常廣泛使用的框架概念,導(dǎo)致開發(fā)周期漫長。一般來說,F(xiàn)PGA開發(fā)周期是軟件開發(fā)的三倍左右。
綜上所述的這些問題,決定了云對FPGA行業(yè)的顛覆和革命。
騰訊云FPGA平臺(tái)具體能解決哪些問題
騰訊云FPGA平臺(tái)解決的是FPGA整個(gè)行業(yè)的一些問題。FPGA用戶比較少,屬于一個(gè)相對封閉的圈子,F(xiàn)PGA開發(fā)門檻高、開源的優(yōu)質(zhì)IP比較缺乏、芯片價(jià)格昂貴等問題一直為大家所詬玻
針對開發(fā)者,騰訊云FPGA平臺(tái)提供了FPGA的底層硬件支撐平臺(tái),類似操作系統(tǒng)的部分功能,簡化了開發(fā)者對底層通用設(shè)備的訪問,比如DDR和PCIE這些通用設(shè)備,可以使開發(fā)者更聚焦到業(yè)務(wù)功能的開發(fā)。
FPGA行業(yè)內(nèi)的IP提供者和使用者缺乏一個(gè)公開的交易平臺(tái)和信用保證機(jī)制,IP交易環(huán)節(jié)冗長,價(jià)格不透明,很難達(dá)成交易,獲取IP后還需要搭建硬件平臺(tái)來驗(yàn)證IP性能,這些都嚴(yán)重影響產(chǎn)品上市進(jìn)程,經(jīng)常耗時(shí)幾個(gè)月之久。騰訊云提供了FPGAIP商店,IP開發(fā)者和IP提供商可以通過FPGAIP商店為其他客戶無償或有償?shù)靥峁〧PGAIP和對應(yīng)的測試程序。這些IP都是基于騰訊云FPGA的標(biāo)準(zhǔn)硬件來開發(fā)定制的,IP的驗(yàn)證和測試可以很方便地在云平臺(tái)上完成,一個(gè)IP的交易可以由幾個(gè)月縮短到一天之內(nèi),提高交易效率,也使得IP交易變得更加透明。
針對一些希望使用低延時(shí)的高質(zhì)量計(jì)算服務(wù)的小型公司而言,可以使用FPGA云計(jì)算加速服務(wù),不用耗費(fèi)大量人力進(jìn)行高性能計(jì)算方面的開發(fā),很簡單地就可以把高性能的云計(jì)算服務(wù)集成到自己的網(wǎng)絡(luò)平臺(tái),達(dá)到提升用戶體驗(yàn)的目的。比如:低延時(shí)的圖片格式轉(zhuǎn)換、基于深度學(xué)習(xí)的圖片分類等服務(wù),類似的服務(wù)后續(xù)還會(huì)進(jìn)一步豐富。
對于學(xué)校的FPGA教學(xué)而言,以前學(xué)校需要為每個(gè)學(xué)生購買一個(gè)開發(fā)板卡,有了騰訊云平臺(tái)之后可以節(jié)省學(xué)校購買開發(fā)板的成本,現(xiàn)在只需要給每個(gè)學(xué)生申請一個(gè)FPGA云平臺(tái)的賬戶即可,學(xué)生登錄上去直接可以根據(jù)demo進(jìn)行學(xué)習(xí)開發(fā)即可。騰訊云平臺(tái)同時(shí)會(huì)為用戶提供便于學(xué)習(xí)的操作指導(dǎo)和實(shí)驗(yàn)課程方案,用戶學(xué)習(xí)的東西更接近企業(yè)的實(shí)際應(yīng)用場景,可以很好地跟將來的工作需要對接起來。