概要
了解網絡基礎設施功能迅速增長的一種便捷方法是回顧一下過去四十年的發展歷程(如下圖所示)。蜂窩網絡技術的創新,加上新型的數據存儲和搜索技術,正在轉變行業的發展模式。創新的技術不僅為公司和個人提供了全新的應用場景,也使他們去認真思考如何利用那些原本不屬于其產品組合的技術。也許最能說明問題的變化的是新的商業模式導致了價值從基礎設施轉向了服務。
聯網設備正在從2G向5G演進,以支持移動應用的爆發,并為不斷增長的用戶群擴展連接。一個日趨成熟的行業需要一種具有競爭力的商業模式,而這種模式可以被詮釋為優化帶寬管理。據估計,到2023年,聯網設備的數量將超過全球人口的三倍(如圖1所示)。
圖1:網絡基礎設施的演進
廣告
圖2:全球移動設備和連接增長(來源:思科)
注:此圖表包括M2M。LPWA包括蜂窩LPWA(例如NB-IoT)和非蜂窩LPWA(例如LoRa)
*數據(n)為2018 - 2023年網絡連接類型份額
5G的興起和數據中心的重構將更好和更多地集成和應用加速技術,這給通信和網絡設計人員帶來了巨大的壓力,要求他們去打造每秒可處理和轉發萬億字節數據的系統。這些新的系統不僅必須要具備高度可靠性,而且還需要滿足人類思維級別的響應時間,以確保嚴格的性能保證(如圖3所示),這就需要全新的架構。
盡管可編程邏輯提供了最佳的功能組合,以支持新一代通信和網絡系統的復雜需求,但是傳統的可編程芯片產品無法滿足這些需求。為了平衡片上的處理、互連和外部I / O,必須對整個FPGA架構進行重新考慮。需要最先進的片上網絡(NoC)和總線布線能力,來實現所需的帶寬和性能。集成的NoC是唯一可行的方法來構建可支持高效計算、巨大數據吞吐量和深度內存層次結構的系統。大規模的并行性與FPGA獨特的卸載和加速功能相結合,以實現單位功耗可實現的最高的性能和最高的性價比。
圖3:5G性能指標
不斷變化的網絡技術格局
對由高帶寬連接提供的先進服務的需求正在重塑通信和網絡領域。數據中心、邊緣系統和接入設備中的新型應用正在推動對傳輸海量數據的需求,但同時又要滿足嚴格的延遲要求。FPGA正在成為所有實際網絡的核心,如下面的圖4所示。
圖4:各種實際網絡中的FPGA
例如,為了支持諸如增強現實和機器人控制等應用,與之前的蜂窩無線通信技術相比,5G基站及其背后的網絡設備必須保證極低的延遲。這項要求同時還與對更高的每用戶吞吐量需求相伴而來,因而它們利用了多種不同的技術,包括多天線、波束成形以及作為網絡密集化進程的一部分而增加使用的小基站。所有這些因素都導致了在集中式基帶單元中進行更密集的處理,這些基帶單元通過光纖鏈路與多個遠程射頻單元進行協同。
運營商已經采用了諸如軟件驅動網絡(SDN)和網絡功能虛擬化(NFV)等技術來提高其系統的響應能力。為了運行這些服務,數據中心所有者正在為其服務器添加智能網卡(SmartNIC),以便將許多網絡功能有效地卸載到加速器上。
智能網卡能夠處理傳入和傳出服務器的大部分數據流,只有在需要處理異常情況時,才會請求核心服務器上的處理器來提供幫助。借助足夠的加速功能,此類智能網卡能夠以線速度執行一系列服務。這些服務范圍從對傳輸中的數據進行壓縮到詳細的數據流控制,再到能夠檢測異常和可能的安全漏洞的深度數據包檢查應用。隨著智能網卡技術的成熟,正在考慮引入諸如機器學習等越來越先進的功能,以最大程度地發揮數據流和數據包分析的潛力。下面的圖5顯示了智能網卡的一些功能。
圖5:智能網卡功能原理圖
對傳輸高速數據和快速響應不斷變化的條件的需求,要求系統能夠同時處理高吞吐量和低延遲。在傳統的架構中,很難同時滿足這兩個要求。現在,基于微處理器的架構集成了高度并行化的流水線,能夠處理高帶寬數據。但由于需要不斷地將數據從復雜的內存體系結構中傳入和傳出,結果使得確保低延遲變得極其困難。即使借助于專用的卸載處理器,智能網卡也面臨著由不斷增加的數據速率和延遲要求所帶來的挑戰。
應對智能網卡設計的挑戰
在傳統的FPGA架構中,用戶需要設計電路來連接加速器,從而導致不理想的布局和布線。更新的FPGA架構使用了一種網絡,在邏輯陣列內的處理單元與各種片上高速接口和內存端口之間傳輸數據(如下面的圖6所示)。
圖6:在傳統的FPGA架構中連接加速器
圖7:先進的FPGA減少了所需電路的數量
硬連線架構極大地改善了處理的延遲和能效,但是缺乏應對需求變化的靈活性。對于數據壓縮和加密等應用,數據中心運營商希望能夠接納算法的改進,并更加容易地應對不斷變化的威脅態勢。對加速器進行(重新)編程以適應這些變化的能力是一個關鍵的需求。一種能夠實現這種重新編程的方法是通過部分重新配置,利用內置的地址轉換表來簡化實現(如下面的圖8所示)。
圖8:Speedster7t器件中的地址轉換表
一種可編程邏輯架構為實現靈活的控制和數據流結構提供了堅實的基礎,從而可以為諸如數據包處理等多種通信操作提供高吞吐量。但是其他FPGA架構中的傳統方法仍然受到了許多限制,難以達到下一代5G和數據中心網絡設備所需的性能等級。
Achronix Speedster7t系列FPGA通過一種平衡的架構克服了這些限制,其結果是在計算密度和數據傳輸能力上都有重大改進。
Speedster7t系列中的第一款FPGA器件AC7t1500提供了一系列高速接口,包括可分段(fracturable)以太網控制器(支持高達400G的速率)、PCI Gen 5端口和多達32個SerDes通道,其速率高達112 Gbps。AC7t1500器件是首款部署多通道GDDR6存儲器接口的FPGA,它滿足了需要高速緩存海量數據和存儲大型查找表的通信系統的需求。除了可編程邏輯架構采用的面向位(bit-oriented)的布線結構外,這些外圍設備還通過一個智能二維片上網絡(NoC)進行互連。因此,Speedster7t FPGA是第一款能夠實現太比特以太網(TbE)交換功能的器件,對于數據中心、網絡和電信基礎設施提供商來說,這是一項關鍵的賦能技術。
這種架構使得網絡設計再向前更進一步成為了可能。例如,它集成的面向矩陣的算術單元可實現網絡內機器學習。使用諸如深度學習或更簡單的統計技術等技術,網絡設備可以分析數據流量模式,以觀察和增強通過網絡的數據包流量,并對不斷變化的情況作出快速反應。
針對性能而優化的Speedster7t架構
在通信和網絡中,對任何FPGA的關鍵要求是支持最新協議的密集I / O需求。Speedster7t系列FPGA通過在器件的I / O環中實現的全套硬件I / O控制器來滿足了這一需求,包括400G以太網、PCI Gen 5和GDDR6接口。
為了避免由于需要將一些核心功能置入可編程邏輯而造成的瓶頸,Speedster7t FPGA提供了完整的400 Gbps以太網MAC。這些MAC處理前向糾錯(FEC),支持400G配置的4×100G和8×50G選項。但是要充分利用這些功能,FPGA架構還需要更多的東西 —— 一個能釋放其全部性能的互連框架。
通常來講,FPGA已經使用了通過可編程互連來實現的超寬總線,以使高速串行通道與內核中可編程邏輯的處理能力相匹配。互連矩陣的可任意編程性質限制了數據在邏輯模塊之間的傳輸速度。為了彌補這種速度上的代價,從事網絡類設計的FPGA用戶經常采用極寬的總線——通常寬達1024位——這些總線是由面向位的互連矩陣匯聚合成。例如,在傳統的FPGA架構中,為實現400Gbps所需的總線寬度將需要2048位(運行速率為642MHz),或1024位(運行速率為724MHz)。如此寬的總線難以布線,因為它們會消耗FPGA架構內大量的布線資源。其結果是,即使在最先進的FPGA中,也不太可能用所需的時鐘速率來處理輸入數據并實現時序收斂。
Speedster7t架構通過提供一個聚合帶寬可高達20 Tbps的多級NoC層級化結構,消除了由于需要將高速I/O通道直接連接到以較低時鐘速率運行的可編程邏輯所造成的瓶頸。與采用FPGA邏輯陣列實現互連方式相比,NoC不僅在速度上有了巨大的提升,而且NoC還能夠在不消耗任何FPGA可編程資源的情況下傳輸大量的數據。內部NoC不僅提供了更高的帶寬,Speedster7t系列FPGA中的智能連接機制還簡化了將數據從NoC端口傳輸到邏輯陣列中的任務。
NoC有兩個主要部分。NoC的外部設備部分負責PCIe Gen 5接口、內存控制器和核心FPGA邏輯陣列之間的數據傳輸。NoC的另一部分由在FPGA結構頂部運行的行和列組成。NoC提供雙向的、256位寬的水平和垂直通道,這些通道在可編程集群之間運行。每個NoC行或列可以同時在相反方向上以512 Gbps的速率處理數據流。為了最大限度地利用基礎架構及其在Speedster7t器件上快速分發數據的能力,NoC還直接連接到片上400G以太網控制器,并采用智能數據流分配策略,通過易于實現的256位寬接口,沿NoC通道將數據流劃分為并行的可編程邏輯集群組。
NoC數據模式
為了實現400 Gbps的性能,設計人員可以使用一種稱為數據包模式的全新處理模式,在這種模式下,傳入以太網的數據流被重新排列(如圖9所示)成四個較小的32字節的數據包。這些數據包在四條獨立的256位總線上以506MHz的頻率運行。這種模式的優點包括:當數據包結束時,浪費的字節更少;并且數據可以并行傳輸(前后相接),而不是必須等到在第一個數據包完成傳輸后才開始第二個數據包的傳輸。
對于運行在分組化數據上的典型網絡應用,每個模塊可以對其接收到的數據包報頭進行分類和標記,并通過調用NoC接口的服務來連接片外GDDR6或DDR4存儲器,將不需要進一步處理的工作負載卸載到外部存儲器的緩沖區存儲。對每個數據包的處理完成后,通過NoC引導來自外部和內部緩沖區的數據流,將必要的數據傳送到相關的以太網出口端口。因此,許多操作并不需要調用FPGA邏輯陣列中的資源,并且可以充分利用NoC和以太網端口之間的直接連接。
圖9:數據包模式(Packet Mode)下的數據總線重新排列
圖10:使用數據包模式(Packet Mode)的400 Gbps以太網
通過NoC通道的數據分發也可以采用非數據包化的模式來完成,以支持目前在以太網上使用的、盡可能多樣化的協議,例如5G系統中的eCPRI,并幫助設計人員避免在邏輯架構中不得已去創建超寬總線。
高速存儲接口
Speedster7t的架構師對存儲接口的選擇反映了以太網和NoC連接可提供的巨大容量。一種可能的方法是在一系列設計中采用即將推出的HBM2接口。盡管這樣的接口可以提供所需的性能水平,但HBM2價格昂貴,這將迫使客戶去等待必要的組件和集成技術的出現。
與此不同,Speedster7t系列則采用了GDDR6標準,該標準為當今片外存儲器提供了最高的性能。Speedster7t FPGA是市場上首款支持該接口的器件,每個片上GDDR6內存控制器可維持512 Gbps的帶寬。在單個AC7t1500器件中最多可帶有8個GDDR6控制器,使總的內存帶寬可達到4 Tbps。
對PCIe Gen 5的支持
除了以太網和存儲控制器,Speedster7t FPGA上提供的對PCIe Gen 5的支持還能夠與主機處理器緊密集成,以支持諸如sidecar智能網卡(SmartNIC)設計等高性能加速器應用。PCI Gen 5控制器使其能夠讀取和寫入存儲在FPGA內存層級結構中的數據,包括許多位于邏輯架構內的塊RAM,以及連接到FPGA存儲控制器的外部GDDR6和DDR4 SRAM設備。在FPGA邏輯陣列中實例化的數據傳輸控制器(例如DMA引擎),可以類似地通過PCIe Gen 5總線訪問與主機處理器共享的內存,而無需消耗FPGA邏輯陣列內的任何資源即可實現這種高帶寬連接,并且設計時間幾乎為零。用戶只需要啟用PCIe和GDDR6接口,就可以通過NoC發送事務數據。
下面的圖11展示了PCIe子系統與任何GDDR6或DDR4存儲接口之間的直接連接。
圖11:無需消耗FPGA邏輯陣列即可實現PCIe和GDDR6之間的數據傳輸
112-Gbps SerDes
AC7t1500器件搭載了400G以太網通道用于物理層訪問,該器件可提供多達32個高速SerDes通道,它們可用于需要數據速率高達112 Gbps的其他標準,并完全支持PAM4信令。這些SerDes通道支持器件間實現極短距離(XSR)和超短距離(USR)通道,事實證明這些通道對一系列通信系統都非常重要。SerDes實現方式的靈活性加上對各種以太網速度的支持(因為已集成了一個可分解型控制器)為設計提供了現成可用的支持,這些設計將能夠與任何規劃的CPRI和eCPRI格式(用于5G前端傳輸設計)一起使用。
機器學習處理器
對于計算密集型任務,在Speedster7t FPGA上部署的Speedster7t機器學習處理器(MLP)是靈活的且可分解的算術單元。MLP是高密度乘法器陣列,帶有支持多種數字格式的浮點和整數MAC模塊。MLP帶有集成的內存塊,可以在不使用FPGA資源的情況下執行操作數和內存級聯功能。MLP適用于一系列矩陣數學運算,從5G無線電控制器的波束成形計算到加速深度學習應用,諸如數據流模式和數據包內容分析。
圖12:機器學習處理器原理框圖
結論
從5G網絡的邊緣到數據中心內部的交換機,通信和網絡系統對芯片的功能帶來了極大的壓力,以支持其所需的計算能力和數據傳輸速率。傳統的可編程邏輯為這些系統提供了靈活性和速率的最佳組合,但是近年來卻因以太網等協議的速度提高到100G和400G而面臨新挑戰。Speedster7t架構通過采用創新的、多層級片上網絡,使數據能夠在器件周圍輕松傳輸,而不影響FPGA的邏輯陣列,從而充分保障所有已集成在內的全球最先進的I / O接口,諸如400G以太網、GDDR6和PCI Gen 5,以支持充分發揮核心的可編程邏輯結構的潛在能力。
評論
查看更多