采用串行RapidIO連接功能增強DSP協(xié)處理能力
目前,對高速通信與超快計算的需求正與日俱增。有線和無線通信標準的應用隨處可見,數(shù)據(jù)處理架構每天都在擴展。較為普遍的有線通信方式是以太網(wǎng)(LAN、WAN和MAN網(wǎng)絡)。手機通信是最為常見的無線通信方式,由應用了DSP的架構實現(xiàn)。電話作為語音連接的主要工具,目前正在不斷滿足日益增強的語音、視頻和數(shù)據(jù)要求。
系統(tǒng)設計人員在創(chuàng)建架構時不僅需考慮三網(wǎng)合一模式這一高端需求,還需滿足以下要求:高性能、低延遲、較低的系統(tǒng)成本(包括NRE)、可擴展、可延伸架構、集成現(xiàn)成(OTS)組件、分布式處理、支持多種標準和協(xié)議。
這些挑戰(zhàn)涉及到兩個主要方面:有線或無線架構中計算平臺/箱間的連接以及這些平臺/箱中的具體計算資源。
計算平臺間的連接
基于標準的連接目前較為普遍。并行連接標準(PCI、PCI-X、EMIF)可以滿足現(xiàn)在的需求,但在擴展性和延伸性方面略顯不足。隨著基于包處理方式的出現(xiàn),使用趨勢明顯偏向高速串行連接(圖1)。
圖1:串行連接趨勢。 |
臺式電腦和網(wǎng)絡工業(yè)已采用了PCI Express(PCIe)和千兆位以太網(wǎng)/XAUI等標準。不過,無線架構中數(shù)據(jù)處理系統(tǒng)的互連要求略有不同:低引腳數(shù)、背板芯片對芯片連接、帶寬和速度可擴展、DMA和信息傳輸、支持復雜的可擴展拓撲、多點傳輸、高可靠性、絕對時刻同步、服務質量(QoS)。
串行RapidIO(SRIO)協(xié)議標準可輕易滿足并超過大多數(shù)上述要求。因此,SRIO成了無線架構設備中數(shù)據(jù)平面連接的主要互連。
圖2:SRIO網(wǎng)絡構建模塊。 |
SRIO網(wǎng)絡圍繞兩個基本模塊構建而成:端點和交換機(圖2)。端點對包進行源端(source)和宿端(sink)處理,而交換機在端口間傳送包,對其不加解析。SRIO以一個三層架構層級指定(圖3):
圖3:分層SRIO架構。 |
1. 物理層規(guī)范說明器件級接口的細節(jié),如包傳輸機制、流量控制、電氣參數(shù)及低級錯誤管理。
2. 傳輸層規(guī)范為包在端點間移動提供必需布線信息。交換機通過使用基于器件的布線在傳輸層中運行。
3. 邏輯層規(guī)范定義總體協(xié)議和包格式。所有包的有效載荷字節(jié)數(shù)為256或更少。事務使用指向34-/50-/66位地址空間的加載/存儲/DMA操作。事務包括:NREAD-讀操作(返回數(shù)據(jù)即為響應)、NWRITE-寫操作,無響應、NWRITE_R-強韌型寫入,響應來自目標端點、SWRITE-流式寫入、ATOMIC-原子性讀/改/寫、MAINTENANCE-系統(tǒng)查找、探測、初始化、配置和維護操作。
SRIO-優(yōu)勢前景
以3.125Gbps運行的4通道SRIO鏈路可以提供10Gbps的流量,且保證數(shù)據(jù)完整性。由于SRIO類似于微處理器總線(存儲器和器件尋址,而非LAN協(xié)議的軟件管理),因此包處理是通過硬件實現(xiàn)的。這意味著可大幅削減I/O處理方面的額外開銷,降低延遲并增加系統(tǒng)帶寬。但與多數(shù)總線接口不同,SRIO接口的引腳數(shù)較少,帶寬在鏈路為3.125Gbps的基礎上可繼續(xù)擴展。
平臺中的計算資源
如今的應用對處理資源的數(shù)量要求較高。基于硬件的應用發(fā)展迅猛。壓縮/解壓縮算法、反病毒和入侵監(jiān)測等防火墻應用以及要求AES、三倍DES和Skipjack等加密引擎的安全應用起初都是通過軟件實現(xiàn)的,但目前都已轉為硬件實現(xiàn)。這就需要帶寬和處理能力能夠實現(xiàn)共享的大型并行生態(tài)系統(tǒng)。系統(tǒng)需要使用CPU、NPU、FPGA或ASIC,從而實現(xiàn)共享或分布式處理。
在構建能夠適應未來發(fā)展變化的系統(tǒng)時,需考慮所有這些針對具體應用的要求,對計算資源的要求包括:
1. 多個主機-分布式處理;
2. 直接點對點通信;
3. 多個異構操作系統(tǒng);
4. 復雜拓撲結構;
5. 發(fā)現(xiàn)機制;
6. 多余通路(故障恢復);
7. 可支持高可靠性;
8. 無損協(xié)議;
9. 自動重新培訓和器件同步;
10. 系統(tǒng)級錯誤管理;
11. 能夠支持通信數(shù)據(jù)平面;
12. 多點傳輸;
13. 流量管理(有損)操作;
14. 鏈路、級別和基于流的流量控制;
15. 協(xié)議互通;
16. 較高事務并發(fā)度;
17. 模塊化、可擴展;
18. 支持廣泛生態(tài)系統(tǒng)。
由無線架構中計算器件所派生出的各種各樣的要求,SRIO協(xié)議都可支持。
SRIO規(guī)范(圖4)對基于包的分層架構進行了定義,可支持多個域或市場區(qū)間,從而有利于系統(tǒng)架構設計師設計新一代計算平臺。通過將SRIO用作計算互連,可輕松實現(xiàn)以下功能:使架構獨立;部署可靠性為運營商級的可擴展系統(tǒng);實現(xiàn)高級流量管理;提供高性能、高流量。此外,由大批供應商構成的生態(tài)群使得OTS部件與組件的選擇十分容易。
RIO為基于包的協(xié)議,該協(xié)議支持:
1. 通過基于包的操作(讀、寫、消息)移動數(shù)據(jù);
2. I/O非連貫功能和緩存連貫功能;
3. 通過支持數(shù)據(jù)流、數(shù)據(jù)分區(qū)和重組功能而實現(xiàn)高效互通和協(xié)議封裝;
4. 通過啟用數(shù)百萬個流而實現(xiàn)流量管理框架,支持256流量級別和有損操作;
5.流控制,支持多個事務請求流,提供QoS;
6. 支持優(yōu)先級別,從而可緩解帶寬分配和事務順序等問題,并避免死鎖;
7. 支持拓撲,通過系統(tǒng)發(fā)現(xiàn)、配置和維護支持標準(樹狀和網(wǎng)格)與任意硬件(菊花鏈)拓撲,包括支持多個主機;
8. 錯誤管理和分類(可恢復、提醒和致命性)。
圖4:SRIO規(guī)范。 |
Xilinx針對SRIO的IP解決方案
用于SRIO的Xilinx端點IP解決方案針對RapidIO規(guī)范(v1.3)而設計。用于SRIO的完整Xilinx端點IP解決方案包括以下部分(圖5):
圖5:用于SRIO的Xilinx端點IP架構。 |
1. 用于SRIO的Xilinx端點IP為軟性LogiCORE解決方案。對于通過邏輯(I/O)和傳輸層上的目標和發(fā)起接口源出和接收用戶數(shù)據(jù),都支持完全兼容的最大有效載荷操作。
2. 緩沖層參考設計作為源代碼提供,可自動重新劃分包的優(yōu)先級別并調整隊列。
3. SRIO物理層IP可實現(xiàn)鏈路培訓和初始化、發(fā)現(xiàn)和管理以及錯誤和重試恢復機制。另外,高速收發(fā)器在物理層IP中例化,可支持線速率為1.25Gbps、2.5Gbps和3.125Gbps的1通路和4通路SRIO總線鏈路。
4. 寄存器管理器參考設計允許SRIO主機器件設定并維護端點器件配置、鏈路狀態(tài)、控制和超時機制。另外,寄存器管理器上提供的端口可供用戶設計探測端點器件的狀態(tài)。
用于SRIO的整個Xilinx端點IP LogiCORE解決方案已全面經過測試,硬件驗證也已進行,目前正在就與主要SRIO器件供應商之間的協(xié)同工作能力接受測試。LogiCORE IP通過Xilinx CORE Generator軟件GUI工具提供,該工具允許用戶定制波特率和端點配置,并支持流量控制、重發(fā)送壓縮、門鈴和消息接發(fā)等擴展功能。這樣,您便可創(chuàng)建一個靈活、可擴展的定制SRIO端點IP,對自己的應用進行優(yōu)化。
Virtex-5 FPGA計算資源
用于SRIO的Xilinx端點IP可確保在使用SRIO協(xié)議的鏈路雙方間建立高速連接。在最小的Virtex-5器件中,IP僅占用不到20%的可用邏輯資源,因此可確保用戶設計使用大多數(shù)邏輯/存儲器/I/O,集中實現(xiàn)系統(tǒng)應用。讓我們一起看一下Virtex-5器件資源。
邏輯模塊
Virtex-5邏輯架構帶有基于65nm工藝的六輸入查找表(LUT),可提供最高的FPGA容量。進位邏輯經過改進后,該器件的性能比之前的器件高出30%。由于所需LUT減少,該器件的功耗明顯降低,且具備高度優(yōu)化的對稱布線架構。
存儲器
Virtex-5存儲器解決方案包括LUT RAM、Block RAM及與大型存儲器進行接口的存儲器控制器。Block RAM結構包括預制FIFO邏輯,即可用于外部存儲器的嵌入式檢錯和糾錯(ECC)邏輯。另外,Xilinx可通過存儲器接口生成器(MIG)工具向系統(tǒng)設計中的例化存儲器控制器模塊提供綜合設計資源。這樣,您便可利用經過硬件驗證的解決方案,并將精力集中于設計中的其他關鍵部位。
并行和串行I/O
SelectIO技術幾乎可在設計中實現(xiàn)客戶所需的任何并行源同步接口。使用SelectIO接口,可方便地針對40多種不同的電氣標準創(chuàng)建符合行業(yè)標準的各類接口,也可創(chuàng)建專用接口。SelectIO接口提供的最大速率為700Mbps(單端)和1.25Gbps(差分)。
所有Virtex-5 LXT FPGA都裝有一個GTP收發(fā)器,運行速度介于100Mbps到3.2Gbps之間。另外,GTP收發(fā)器在業(yè)界屬于最低功率MGT之一,每個收發(fā)器的功率小于100mW。引入用來簡化設計的成熟設計技術和方法后,高速串行設計的流程變得簡單快捷。
另外,通過新設計工具(RocketIO收發(fā)器向導與IBERT)和新硅片性能(TX和RX均衡與內置偽隨機位序列(PRBS)生成器和檢查器),可以開發(fā)移植架構的各種功能和優(yōu)勢,從并行I/O標準到30多種串行標準及新興的串行技術。
DSP模塊
每個DSP48E Slice可提供550MHz的性能水平,允許您創(chuàng)建要求單精度浮點性能的各類應用,如多媒體、視頻和圖像應用以及數(shù)字通信。這擴展了器件的功能,使其優(yōu)于之前的器件,同時還提供了功率優(yōu)勢,動態(tài)功耗的降低幅度超過了40%。Virtex-5 FPGA中還增加了DSP48E Slice的數(shù)量,這些模塊相對于可用邏輯資源及存儲器的比率從而得到了優(yōu)化。
集成I/O模塊
所有Virtex-5 LXT FPGA器件都具備一個端點模塊,用來實現(xiàn)PCIe功能。通過這種硬IP端點模塊,只需簡單地重新進行配置即可不費吹灰之力輕松地從x1擴展至x2和x4或x8。該模塊(x1、x4和x8鏈路)已通過嚴格的PCI-SIG兼容性和協(xié)同工作能力測試,用戶可放心用于PCIe。
另外,所有Virtex-5 LXT FPGA器件均裝有三態(tài)以太網(wǎng)媒體訪問控制器(TEMAC),速度可達10/100/1,000Mbps。該模塊可提供專用以太網(wǎng)功能,再結合Virtex-5 LXT RocketIO收發(fā)器和SelectIO技術,可方便您與許多網(wǎng)絡器件進行連接。
利用針對PCIe和以太網(wǎng)的這兩種模塊,可以創(chuàng)建一系列定制包處理和網(wǎng)絡產品,這些產品可大幅降低資源利用率和功耗。通過使用Xilinx FPGA中提供的這些各式資源,可以輕松創(chuàng)建并部署智能解決方案。
讓我們看一下利用SRIO和DSP技術的一些系統(tǒng)設計示例。
SRIO嵌入式系統(tǒng)應用
可以考慮圍繞基于x86架構的CPU構建一個嵌入式系統(tǒng)。CPU架構已高度優(yōu)化,可輕易滿足要求玩弄數(shù)字于股掌的各類應用。您可以輕松地在使用CPU資源的硬件和軟件中實現(xiàn)各類算法,以執(zhí)行不需要進行大量乘法運算的電子郵件、數(shù)據(jù)庫管理以及文字處理等功能。性能以每秒鐘所產生的指令/運算為數(shù)百萬還是數(shù)十億來衡量,而效率通過完成特定運算所需的時間/周期來衡量。
需進行大量定點和浮點運算的高性能應用在處理數(shù)據(jù)時需花費較長時間。這方面的示例包括信號過濾、快速傅里葉變換、矢量乘法和搜索、圖像/視頻分析和格式轉換以及簡單的數(shù)字處理算法。在DSP中實現(xiàn)的高端信號處理架構可輕松執(zhí)行這些任務,并可優(yōu)化此類運算。這些DSP的性能以每秒鐘進行多少次乘法和累加運算來衡量。
您可以方便地設計使用CPU和DSP的嵌入式系統(tǒng),以充分利用兩種處理技術。圖6表示使用FPGA、CPU和DSP架構的系統(tǒng)示例。
圖6:基于CPU的可擴展、高性能、嵌入式系統(tǒng)。 |
高端DSP中的主要數(shù)據(jù)互連為SRIO。x86 CPU中的主要數(shù)據(jù)互連為PCIe。如圖6所示,您可輕松部署FPGA以擴展DSP應用或對離散數(shù)據(jù)互連標準(如PCIe和SRIO)進行橋接。
在圖6所示系統(tǒng)中,PCIe系統(tǒng)由根聯(lián)合體芯片組托管。SRIO系統(tǒng)由DSP托管。32/64位PCIe地址空間(基址)可智能化地被映射至34/66位SRIO地址空間(基址)。PCIe應用可通過存儲器或I/O讀寫與根聯(lián)合體進行通信。這些事務會通過NRead/NWrite/SWrite輕松映射至SRIO空間。
在Xilinx FPGA中設計此類橋接功能很簡單,因為這些Xilinx端點功能模塊、PCIe和SRIO的后端接口都很相似。這樣,“包隊列”模塊便可執(zhí)行從PCIe到SRIO或反方向的交叉任務,從而建立可穿越兩個協(xié)議域的包流。
SRIO DSP系統(tǒng)應用
在DSP處理為主要架構要求的應用中,系統(tǒng)架構可按圖7進行設計。
圖7:DSP密集型陣列。 |
基于Virtex-5 FPGA的DSP處理與系統(tǒng)中的其他DSP器件結合即可構成智能協(xié)處理解決方案。如果使用SRIO作為數(shù)據(jù)互連,整個DSP系統(tǒng)解決方案就可以方便地進行擴展。此類解決方案能夠適應未來的發(fā)展變化,提供了延伸性,而且受多種形狀因子的支持。在DSP密集型應用中,通過將相應處理任務卸載至x86架構中可實現(xiàn)快速數(shù)字分析或數(shù)據(jù)處理。使用Virtex-5 FPGA可輕易地連接PCIe子系統(tǒng)和SRIO架構,從而實現(xiàn)高效功能卸載。
SRIO基帶系統(tǒng)應用
現(xiàn)有3G網(wǎng)絡正在以較快的步伐邁向成熟,OEM也在為緩解特定容量和覆蓋率問題而部署新的形狀系數(shù)。要解決此類特殊問題,對市場趨勢做出評估,基于FPGA的DSP架構是理想選擇,該架構將SRIO用作數(shù)據(jù)層面標準。另外,早期DSP系統(tǒng)可快速升級,變?yōu)榭焖佟⒌凸腇PGA DSP架構,從而獲得可擴展性優(yōu)勢。
如圖8中的系統(tǒng)所示,您可以對Virtex-5 FPGA進行設計,以滿足現(xiàn)有對天線流量的線速率處理需求,還可通過SRIO提供與其他系統(tǒng)資源間的連接?,F(xiàn)有早期DSP應用的固有并行連接速度較慢,因可應用于Virtex-5 FPGA的SRIO端點功能的存在,移植這些應用極為方便。
圖8:可擴展基帶上行鏈路/下行鏈路卡。 |
本文小結
SRIO正出現(xiàn)在大量新應用中,主要以有線和無線應用中的DSP為中心。在Xilinx器件中實現(xiàn)SRIO架構的主要優(yōu)勢包括:
1. 整個SRIO端點解決方案的可用性;
2. 靈活性和可擴展性,便于使用同樣的硬件和軟件架構制成不同級別的產品;
3. 通過新GTP收發(fā)器和65nm技術實現(xiàn)了低功耗;
4. 通過CORE Generator軟件GUI工具輕松進行配置;
5. 與業(yè)界領先的供應商間的硬件協(xié)同工作能力經過了驗證,支持其器件上的SRIO連接;
6. 通過使用PCIe和TEMAC等集成I/O模塊,實現(xiàn)了系統(tǒng)集成,從而降低了總體系統(tǒng)成本。
另外,Virtex-5 FPGA所具備的DSP資源可在功耗、性能和帶寬方面滿足現(xiàn)有早期DSP系統(tǒng)的要求。更多優(yōu)勢還體現(xiàn)在系統(tǒng)集成方面,諸如以太網(wǎng)MAC的功能模塊、用于PCIe的端點模塊、處理器IP模塊、存儲元件及控制器等等。另外,由于IP核的詳盡列表支持在FPGA中進行多種源整合,可以大大節(jié)省總體系統(tǒng)成本。
評論