在云計算和邊緣計算中,業界渴求能夠支持各種應用的高性能。為了滿足這一需求。
亞馬遜(Amazon)、Facebook和微軟(Microsoft)等超大規模用戶采用的第一批加速器都是大幅度定制的設計。這些公司能夠在打造自己的板卡設計中確保所需的規模經濟,無論是基于自己設計的專用集成電路(ASIC),還是采用現成的FPGA和GPU。從成本和時間的角度來看,對于企業數據中心和邊緣計算用戶來說,他們難以在這種定制芯片級設計中找到合理的規模。然而,設計定制的ASIC和板卡并不是必需的。對諸如以太網和PCIe等標準接口的需求,不僅使使用標準板卡級產品成為可能,而且也是可取的。
作為一家長期提供硬件加速產品的供應商,BittWare一直在為從高性能計算到云加速到儀器儀表等眾多領域內的客戶設計采用PCIe尺寸的、基于FPGA的板卡,并在這方面積累了豐富的經驗。現在,作為Molex集團的子公司,BittWare能夠充分借助其全球供應網絡以及與戴爾(Dell)和惠普企業(HP Enterprise)等服務器供應商的深厚關系。BittWare是唯一一家可與多家主流FPGA供應商合作的重要批量化供應商,能夠滿足企業客戶的質量認證、驗證、產品生命周期管理和支持需求,這些客戶希望為關鍵任務型應用去大規模部署FPGA加速器。
在這些應用中,BittWare實現的一個重要差異化在于該公司為其基于FPGA的加速器提供了廣泛的軟件支持。每個加速卡均配有適用于Linux和Windows系統的驅動軟件,可通過PCIe和以太網連接將其快速集成到各種系統中。除了支持主CPU和加速卡之間的通信外,該驅動還支持接入加速卡上的嵌入式固件。這個固件可以處理眾多管理和自檢功能。
它們使FPGA電路能夠根據需要的新功能重新進行配置,此外還提供了一些對功耗、電壓和溫度的監測程序。如果主機系統中的冷卻功能失效,那么擔任管理者的固件可以關閉加速卡,以避免熱過載。此外,軟件組合包還包括各種參考設計,以便開發人員能夠快速構建配置,使他們可以測試加速卡的功能并開始在其自己的應用上工作。
對于最新一代的加速卡,BittWare與Achronix緊密合作。Achronix是唯一一家能夠同時提供獨立FPGA芯片和嵌入式FPGA(eFPGA)半導體知識產權(IP)的FPGA供應商。VectorPath?S7t-VG6加速卡使用了Achronix采用7nm 工藝打造的、結合了很多功能的Speedster?7t FPGA芯片,不僅可以在內部提供高吞吐量數據加速,而且還支持現今從機器學習到先進儀器等系統所需的高度分布式、網絡化的架構。

圖1:VectorPath S7t-VG6加速卡
軟件友好型的硬件提供了最大的靈活性
通過對分布式架構提供直接支持,VectorPath S7t-VG6加速卡中使用的Speedster7t FPGA芯片標志著與傳統FPGA架構不同的重大轉變,它使面向軟件的開發人員更容易地構建定制化的處理單元。這種創新的全新架構與諸如英特爾(Intel)和賽靈思(Xilinx)等供應商生產的傳統FPGA完全不同,傳統FPGA的設計關注點并不在數據加速。
在設計Speedster7t的架構時,Achronix創建了一種可最大限度地提高系統吞吐量的FPGA芯片,同時還為計算機架構師和開發人員提高了易用性。與傳統的FPGA架構相比,Speedster7t FPGA芯片的一個關鍵差異化點在于它包括一個創新的二維片上網絡(2D NoC),可以在邏輯陣列內的處理單元與各種片上高速接口和存儲器端口之間流傳數據。
傳統的FPGA要求用戶去設計電路來將其加速器連接到高速以太網或PCIe數據端口和/或存儲器端口。通常,一個獨立系統是由連接到多個高速端口的多個加速器組成。例如,下圖就說明了一種場景,其中有兩個加速器連接到兩個存儲端口上,以共享一個存儲空間。這種場景使用了FIFO來管理存儲器和FPGA時鐘之間的時鐘域交叉(CDC)。此外,FPGA邏輯架構中還需要一個交換功能來管理尋址、仲裁和反壓。在傳統的FPGA中,這項功能會消耗大量的FPGA資源,并且其復雜程度足以降低系統性能并使時序收斂變得復雜。
Achronix采用了由軟件設計來實現硬件的方法,而這種硬件中的以太網和其他高速I / O端口可用二維片上網絡(2D NoC)輕松地連接到定制的加速器功能上。Speedster7t NoC不再需要設計CDC和交換功能來將加速器連接到高速數據或內存端口。通過簡單地將這些功能連接到NoC,就消除了連接方面的難題,從而簡化了設計,減少了FPGA資源的消耗,提高了性能并簡化了時序收斂。

圖2:傳統FPGA設計面臨的挑戰

圖3:Speedster7t二維片上網絡支持軟件友好型硬件
為了實現高性能的算術運算,每個Speedster7t器件都具有一個大型可編程計算單元陣列,它們被有序地放置在機器學習處理器(MLP)單元模塊中。MLP是一個高度可配置的計算密集型單元模塊,在每個周期內可支持多達32個乘法/累加(MAC)運算。在以加速器為中心的設計中,MLP的存在使得在完全可編程邏輯和硬連線算術單元之間能夠有效地共享資源。
盡管有些FPGA傾向于使用HBM2存儲器,其中FPGA和存儲器被組裝成一個昂貴的2.5D封裝,而Speedster7t系列卻采用GDDR6內存標準接口。這種接口提供了當今片外存儲器可實現的最高性能,并且成本顯著降低,從而使團隊更容易去實現帶有高帶寬存儲陣列的加速器。一個GDDR6存儲控制器可以支持512 Gbps的帶寬。VectorPath S7t-VG6加速卡可提供八組存儲器,總存儲帶寬可以達到4 Tbps。此外,板上還有一個DDR4接口,可用于訪問頻率較低或不需要GDDR6吞吐量的數據。
VectorPath S7t-VG6加速卡提供了許多高性能接口,用來支持分布式架構和高速主機通信。現在,該加速卡提供了PCIe Gen 3.0的16通道合規性和認證,并提供獲取Gen 4和Gen 5資質認證的途徑。在以太網連接方面,該加速卡采用已獲得廣泛支持的光學接口模塊,依據QSFP-DD和QSFP56標準,能夠處理高達400 Gbps的超高線速。
在加速卡的另一端還有一個OCuLink擴展端口,以支持很多其他的低延遲應用場景。例如,OCuLink端口可用于將加速卡連接到各種外圍設備上,比如用于計算存儲或數據庫加速應用的NVMe存儲陣列。與采用連接到主處理器的PCIe接口相比,OCuLink連接能夠成為一個更好的選擇,因為它提供了一種消除了系統級延遲和抖動的高確定性的連接。OCuLink端口還可以引入其他網絡連接,從而可擴展實現QSPF-DD或QSFP56之外的各種端口規格。

圖4:VectorPath的網絡和存儲接口
在VectorPath S7t-VG6加速卡的前面板上還包括多個時鐘輸入,它們是在將多個加速卡同步到一起時通常需要的。兩個SMB時鐘輸入連接器支持從1PPS和10 MHz的時鐘輸入,它們在進入FPGA之前,就已被連接到抖動清除器。一旦進入FPGA,這些時鐘就可以被倍頻或分頻成為特定應用所需的頻率。
還可以通過通用數字I / O端頭進行進一步擴展。該I / O端口支持單端3.3V連接和低電壓差分(LVDS)信號,支持外部時鐘、觸發器和專用I / O等自定義信號直接連接到Speedster7t FPGA。該擴展端口還可用于將VectorPath加速卡改造為傳統硬件。

圖5:VectorPath時鐘輸入和GPIO
適用于小批量和大批量需求
VectorPath S7t-VG6加速卡已考慮到了每個細節,例如可支持被動和主動空氣散熱和液體散熱。此外,BittWare和Achronix還為醫療等需要更長產品生命周期的領域確保提供長期的供應與支持。在這些市場中,基于GPU的PCIe加速卡較短的產品生命周期與超過10年的系統服務支持需求是不符的。
對于更大批量需求,特別是在邊緣計算等場景中,客戶可以使用BittWare的成本降低計劃來簡化硬件,其設計僅僅支持客戶所需的I / O選項。此外,BittWare也可提供電路板設計文件以及VectorPath S7t-VG6加速卡隨附的軟件和驅動器的使用。利用Achronix的Speedcore eFPGA IP,也可以走向定制系統級芯片(SoC)器件。客戶可以構建自己其中包括Speedster7t可編程性的SoC,但又具有ASIC的成本結構。
為了實現更好的開發和更便捷的部署,VectorPath S7t-VG6加速卡可以由BittWare以其TeraBox平臺的形式來提供預先集成的多核服務器。外形從2U到5U,TeraBox的機架式機箱最多可容納16個BittWare PCIe加速卡,并由雙路英特爾(Intel) Xeon處理器管理。作為一個完整的解決方案,TeraBox為客戶提供了啟動和運行FPGA開發的最快機制。在Bittworks II和FPGA Devkit軟件的支持下,用戶可以直接使用TeraBox并立即開始開發工作。或者,客戶也可以從Dell和HP Enterprise購買包含BittWare加速卡的預配置服務器。

圖6:TeraBox平臺的部署
