開發網路平台系統產品 FPGA平台深具實力

2004-06-16
要設計出一套能創造出市場佳績的路由器需要一套理想的技術平台,提供充足的封包處理效能(即使在最差的流量情況下),並能以較低的成本提供充裕的彈性...
要設計出一套能創造出市場佳績的路由器需要一套理想的技術平台,提供充足的封包處理效能(即使在最差的流量情況下),並能以較低的成本提供充裕的彈性。隨著FPGA技術迅速地演進,業者能運用FPGA開發出整套路由器以及交換機(switchblades)。現今的FPGA平台為實現封包處理、分類、監控、流量管理、背板通訊以及系統介面等功能提供一套完整的平台。  

網路處理器屬於高度最佳化設計的現成元件,是用來處理網路資料流量,並在產品即時上市以及彈性等功能上皆超越傳統的ASIC。它們能擷取、分類以及過濾流入的資料流,判斷目的地通訊埠;並可透過選用型流量管理功能將資料封包轉送至交換器。  

為達到封包處理所需要的效能,多家廠商將相關功能細分成以下種類圖1。  

‧分類協同處理器:將封包分配給某個資料流。  

‧監控引擎:確保資料流使用的頻寬不會超過SLA(服務水準協議)規範。它通常在高運作穩定(QoS)網路的週邊執行,不符規定的封包不是被棄置,不然就會被標上標籤,以配合後續處理作業。  

‧流量管理器:針對傳輸資料流套用SLA。一般來說,不同資料流中的封包有不同的SLA限制,通常會再重新排列順序及丟棄。同一個資料流內的封包永遠不會重新排列順序。  

流量管理包括流量控制、排序以及排程,是網路處理流程中頻寬最密集且最重要的功能。流量規畫能協助管理壅塞現象,並解決網路流量擁擠的情況。排序與排程引擎能決定封包離開的時間以及封包傳輸的次序。它們建立層次式的排序機制,將資料流匯整成分類(class),再將分類(class)以埠(port)來進行層次化。  

每個分層可使用不同的排序演算法,設定各個資料流的優先次序。流量管理器通常是獨立晶片,根據分類器所決定的管理策略執行流量控制、排序以及排程等作業。它們提供可微調的QoS並執行SLA的規範。  

外部處理器可能僅用來執行設定或刪除傳輸流,不須處理每個封包/資料元。每種系統在流量管理協定、記憶體管理、承載、介面等方面都有差異之處。典型的監控演算法包括雙漏桶(leaky bucket)、單信號桶(token bucket)演算法。壅塞管理演算法包括隨機型初期偵測(RED)、加權型RED(WRED)等。排程演算法包括優先排序(PQ)、公平排序(FQ)、加權型FQ(WFQ)以及輪轉法(RR)等。  

立即可用的網路處理單元(NPU)很少能滿足每一層面的效能需求,支援SONET/SDH網路的典型OC-48c流量管理器需要在流入或流出管道上配置獨立的流量管理器,或是配置一組全雙工(5Gbps)流量管理器。但它們很少支援所有需要的演算法。此外,成本昂貴的ASIC讓它不適合支援這方面的應用。  

FPGA支援流量管理與背板系統  

流量管理需要高效能、高彈性的方案,並須支援各種排序與排程演算法與協定、記憶體種類以及介面。FPGA平台元件具備以下的特性,為流量管理提供許多關鍵優勢。  

‧高速介面:高達24組嵌入型多重gigabit收發器(MGT)支援極高的傳輸速度(高達10.3125Gbps),並且帶來改良的抗雜訊能力、更低的耗電率,並可減少訊號數以及降低背板複雜度。同時,這些元件亦支援17組單端式與6組差動式標準,搭配以下元件進行排程作業:  

。HSTL支援高速介面,連結至訊框器與記憶體  

。SSTL能連結訊框器、記憶體以及ASSP  

。PECL支援時脈輸入/輸出  

。LVDS/CML支援刀鋒型或背板系統的通訊  

。 為CPU晶片組建構PCI傳輸介面  

。 LVCMOS/LVTTL支援大部份其它應用  

此外,FPGA平台亦提供大量的封裝類型及IO針腳數(最多為1200),以支援介面連結所需的流量,且FPGA上的每個針腳都提供數位控制阻抗 (DCI),可減少晶片外部數百或數千組終端電阻,進而簡化背板配線的工作。它能減少背板層並縮短PCB上的線路,造就出更高的系統可靠度。  

‧數位時脈管理器(DCM)以及時脈散佈樹:流量管理器能連結多組外部元件,並須在不同的時脈頻率下處理多重時脈領域。DCM能補償因時脈散佈延遲以及背板配線限制所形成的訊號扭曲。通常每個外部高速介面使用一個DCM與時脈樹。12 組DCM能提供相位轉移與頻率合成機制,適合支援具有多重時域以及關鍵時序需求的系統。DCM支援超過400MHz的時脈輸出,以支援各種先進介面,例如像RapidIO與SPI-4。數位化的DCM不受系統溫度與電壓變動的影響。  

DCM提供零延遲的時脈緩衝區,能產生精準的50/50作業週期。精準的相位控制以誤差在1%內的時脈週期準確度,能關鍵性地支援設定及暫存作業。它能精準地產生24MHz至420MHz之間的頻率。  

‧BlockRAM:超過10Mbit的嵌入型BlockRAM適合用來儲存經常存取的物件,故能提升系統的效能。嵌入型記憶體支援眾多的應用,例如像快取記憶體、儲存統計資料與記錄資料、儲存位圖以利執行傳輸排程以及各種緩衝區管理作業、時脈領域交換、以及支援晶片間通訊的高彈性緩衝區。  

‧加乘器:流量管理器需要進行密集的封包排程運算。排程作業包括整數與浮點數的加乘(Tsi (t+) ≦ Tsi (t) + Lpkt/(i)。典型的演算法需要在100 MHz效能的環境下執行18位元的加乘運算。FPGA平台每個元件提供556組18 x 18加乘器,運算時脈超過300MHz。加乘器與邏輯元件讓設計業者能開發出各種客制化的硬體加速核心,例如像加密、加總檢查碼計算以及DSP。  

‧大量的高效能可編程邏輯(高達1000萬組邏輯閘)以及繞線資源:排程器能以極高的速度執行大量的複雜運算。此外,所有運算元都會儲存在暫存器中。由於每個排程決策都須在每個週期內完成,故須採用較深的管線,但卻也會因此增加資料流失的風險並降低系統的效率。大量的晶片內部正反器能滿足這些設計上的目標。 FPGA提供超過300MHz的邏輯效能,並提供許多內部繞線資源,創造出無數寬頻通訊通道並能用來儲存鏈結清單。  

‧PowerPC 處理器、CoreConnect以及各種工具:現今的平台FPGA嵌入4組300MHz(420 D-MIPS)IBM PowerPC核心,以協助處理各種功能,例如像統計資料監視、控制以及突發狀況處理等。包括IBM CoreConnect匯流排在內的解決方案能用來存取各種週邊元件,並提供一套流暢的硬體與軟體設計作業環境,可搭配支援PowerPC的System Generator、GNU編譯器、軟體除錯工具鏈、WindRiver VxWorks、Monta-Vista HardHat Linux等系統,以及像是Chip-Scope Pro等除錯工具。  

FPGA平台可協助開發下一代系統  

FPGA平台以更高階的效能與功能,為業者提供一套性能強大的平台,協助他們開發各種能創造營收的路由器與交換器。同時,FPGA平台亦結合硬體平行處理、硬體-軟體子系統以及IP核心,建構出一套高效能、高彈性的平台,協助業者開發各種新一代流量管理系統。  

(本文作者為Xilinx策略解決方案行銷事業群資深經理)  

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!