串行RapidIO連接功能增強(qiáng)DSP協(xié)處理能力
目前,對(duì)高速通信與超快計(jì)算的需求正與日俱增。有線(xiàn)和無(wú)線(xiàn)通信標(biāo)準(zhǔn)的應(yīng)用隨處可見(jiàn),數(shù)據(jù)處理架構(gòu)每天都在擴(kuò)展。較為普遍的有線(xiàn)通信方式是以太網(wǎng)(LAN、 WAN和MAN網(wǎng)絡(luò))。手機(jī)通信是最為常見(jiàn)的無(wú)線(xiàn)通信方式,由應(yīng)用了DSP的架構(gòu)實(shí)現(xiàn)。電話(huà)作為語(yǔ)音連接的主要工具,目前正在不斷滿(mǎn)足日益增強(qiáng)的語(yǔ)音、視頻和數(shù)據(jù)要求。
本文引用地址:http://m.butianyuan.cn/article/257473.htm系統(tǒng)設(shè)計(jì)人員在創(chuàng)建架構(gòu)時(shí)不僅需考慮三網(wǎng)合一模式這一高端需求,還需滿(mǎn)足以下要求:高性能、低延遲、較低的系統(tǒng)成本(包括NRE)、可擴(kuò)展、可延伸架構(gòu)、集成現(xiàn)成(OTS)組件、分布式處理、支持多種標(biāo)準(zhǔn)和協(xié)議。
這些挑戰(zhàn)涉及到兩個(gè)主要方面:有線(xiàn)或無(wú)線(xiàn)架構(gòu)中計(jì)算平臺(tái)/箱間的連接以及這些平臺(tái)/箱中的具體計(jì)算資源。
計(jì)算平臺(tái)間的連接
基于標(biāo)準(zhǔn)的連接目前較為普遍。并行連接標(biāo)準(zhǔn)(PCI、PCI-X、EMIF)可以滿(mǎn)足現(xiàn)在的需求,但在擴(kuò)展性和延伸性方面略顯不足。隨著基于包處理方式的出現(xiàn),使用趨勢(shì)明顯偏向高速串行連接(圖1)。
圖1 串行連接趨勢(shì)
臺(tái)式電腦和網(wǎng)絡(luò)工業(yè)已采用了PCI Express(PCIe)和千兆位以太網(wǎng)/XAUI等標(biāo)準(zhǔn)。不過(guò),無(wú)線(xiàn)架構(gòu)中數(shù)據(jù)處理系統(tǒng)的互連要求略有不同:低引腳數(shù)、背板芯片對(duì)芯片連接、帶寬和速度可擴(kuò)展、DMA和信息傳輸、支持復(fù)雜的可擴(kuò)展拓?fù)?、多點(diǎn)傳輸、高可靠性、絕對(duì)時(shí)刻同步、服務(wù)質(zhì)量(QoS)。
串行RapidIO(SRIO)協(xié)議標(biāo)準(zhǔn)可輕易滿(mǎn)足并超過(guò)大多數(shù)上述要求。因此,SRIO成了無(wú)線(xiàn)架構(gòu)設(shè)備中數(shù)據(jù)平面連接的主要互連。
圖2 SRIO網(wǎng)絡(luò)構(gòu)建模塊
SRIO網(wǎng)絡(luò)圍繞兩個(gè)基本模塊構(gòu)建而成:端點(diǎn)和交換機(jī)(圖2)。端點(diǎn)對(duì)包進(jìn)行源端(source)和宿端(sink)處理,而交換機(jī)在端口間傳送包,對(duì)其不加解析。SRIO以一個(gè)三層架構(gòu)層級(jí)指定(圖3)。
圖3 分層SRIO架構(gòu)
1. 物理層規(guī)范說(shuō)明器件級(jí)接口的細(xì)節(jié),如包傳輸機(jī)制、流量控制、電氣參數(shù)及低級(jí)錯(cuò)誤管理。
2. 傳輸層規(guī)范為包在端點(diǎn)間移動(dòng)提供必需布線(xiàn)信息。交換機(jī)通過(guò)使用基于器件的布線(xiàn)在傳輸層中運(yùn)行。
3. 邏輯層規(guī)范定義總體協(xié)議和包格式。所有包的有效載荷字節(jié)數(shù)為256或更少。事務(wù)使用指向34-/50-/66位地址空間的加載/存儲(chǔ)/DMA操作。事務(wù)包括:NREAD-讀操作(返回?cái)?shù)據(jù)即為響應(yīng))、NWRITE-寫(xiě)操作,無(wú)響應(yīng)、NWRITE_R-強(qiáng)韌型寫(xiě)入,響應(yīng)來(lái)自目標(biāo)端點(diǎn)、SWRITE-流式寫(xiě)入、ATOMIC-原子性讀/改/寫(xiě)、MAINTENANCE-系統(tǒng)查找、探測(cè)、初始化、配置和維護(hù)操作。
SRIO-優(yōu)勢(shì)前景
以3.125Gbps運(yùn)行的4通道SRIO鏈路可以提供10Gbps的流量,且保證數(shù)據(jù)完整性。由于SRIO類(lèi)似于微處理器總線(xiàn)(存儲(chǔ)器和器件尋址,而非LAN協(xié)議的軟件管理),因此包處理是通過(guò)硬件實(shí)現(xiàn)的。這意味著可大幅削減I/O處理方面的額外開(kāi)銷(xiāo),降低延遲并增加系統(tǒng)帶寬。但與多數(shù)總線(xiàn)接口不同,SRIO接口的引腳數(shù)較少,帶寬在鏈路為3.125Gbps的基礎(chǔ)上可繼續(xù)擴(kuò)展。
平臺(tái)中的計(jì)算資源
如今的應(yīng)用對(duì)處理資源的數(shù)量要求較高。基于硬件的應(yīng)用發(fā)展迅猛。壓縮/解壓縮算法、反病毒和入侵監(jiān)測(cè)等防火墻應(yīng)用以及要求AES、三倍DES和 Skipjack等加密引擎的安全應(yīng)用起初都是通過(guò)軟件實(shí)現(xiàn)的,但目前都已轉(zhuǎn)為硬件實(shí)現(xiàn)。這就需要帶寬和處理能力能夠?qū)崿F(xiàn)共享的大型并行生態(tài)系統(tǒng)。系統(tǒng)需要使用CPU、NPU、FPGA或ASIC,從而實(shí)現(xiàn)共享或分布式處理。
在構(gòu)建能夠適應(yīng)未來(lái)發(fā)展變化的系統(tǒng)時(shí),需考慮所有這些針對(duì)具體應(yīng)用的要求,對(duì)計(jì)算資源的要求包括:
1. 多個(gè)主機(jī)-分布式處理;
2. 直接點(diǎn)對(duì)點(diǎn)通信;
3. 多個(gè)異構(gòu)操作系統(tǒng);
4. 復(fù)雜拓?fù)浣Y(jié)構(gòu);
5. 發(fā)現(xiàn)機(jī)制;
6. 多余通路(故障恢復(fù));
7. 可支持高可靠性;
8. 無(wú)損協(xié)議;
9. 自動(dòng)重新培訓(xùn)和器件同步;
10. 系統(tǒng)級(jí)錯(cuò)誤管理;
11. 能夠支持通信數(shù)據(jù)平面;
12. 多點(diǎn)傳輸;
13. 流量管理(有損)操作;
14. 鏈路、級(jí)別和基于流的流量控制;
15. 協(xié)議互通;
16. 較高事務(wù)并發(fā)度;
17. 模塊化、可擴(kuò)展;
18. 支持廣泛生態(tài)系統(tǒng)。
由無(wú)線(xiàn)架構(gòu)中計(jì)算器件所派生出的各種各樣的要求,SRIO協(xié)議都可支持。
SRIO規(guī)范(圖4)對(duì)基于包的分層架構(gòu)進(jìn)行了定義,可支持多個(gè)域或市場(chǎng)區(qū)間,從而有利于系統(tǒng)架構(gòu)設(shè)計(jì)師設(shè)計(jì)新一代計(jì)算平臺(tái)。通過(guò)將SRIO用作計(jì)算互連,可輕松實(shí)現(xiàn)以下功能:使架構(gòu)獨(dú)立;部署可靠性為運(yùn)營(yíng)商級(jí)的可擴(kuò)展系統(tǒng);實(shí)現(xiàn)高級(jí)流量管理;提供高性能、高流量。此外,由大批供應(yīng)商構(gòu)成的生態(tài)群使得OTS部件與組件的選擇十分容易。
RIO為基于包的協(xié)議,該協(xié)議支持:
1. 通過(guò)基于包的操作(讀、寫(xiě)、消息)移動(dòng)數(shù)據(jù);
2. I/O非連貫功能和緩存連貫功能;
3. 通過(guò)支持?jǐn)?shù)據(jù)流、數(shù)據(jù)分區(qū)和重組功能而實(shí)現(xiàn)高效互通和協(xié)議封裝;
4. 通過(guò)啟用數(shù)百萬(wàn)個(gè)流而實(shí)現(xiàn)流量管理框架,支持256流量級(jí)別和有損操作;
5.流控制,支持多個(gè)事務(wù)請(qǐng)求流,提供QoS;
6. 支持優(yōu)先級(jí)別,從而可緩解帶寬分配和事務(wù)順序等問(wèn)題,并避免死鎖;
7. 支持拓?fù)洌ㄟ^(guò)系統(tǒng)發(fā)現(xiàn)、配置和維護(hù)支持標(biāo)準(zhǔn)(樹(shù)狀和網(wǎng)格)與任意硬件(菊花鏈)拓?fù)洌ㄖС侄鄠€(gè)主機(jī);
8. 錯(cuò)誤管理和分類(lèi)(可恢復(fù)、提醒和致命性)。
圖4 SRIO規(guī)范
Xilinx針對(duì)SRIO的IP解決方案
用于SRIO的Xilinx端點(diǎn)IP解決方案針對(duì)RapidIO規(guī)范(v1.3)而設(shè)計(jì)。用于SRIO的完整Xilinx端點(diǎn)IP解決方案包括以下部分(圖5)。
圖5 用于SRIO的Xilinx端點(diǎn)IP架構(gòu)
1. 用于SRIO的Xilinx端點(diǎn)IP為軟性L(fǎng)ogiCORE解決方案。對(duì)于通過(guò)邏輯(I/O)和傳輸層上的目標(biāo)和發(fā)起接口源出和接收用戶(hù)數(shù)據(jù),都支持完全兼容的最大有效載荷操作。
2. 緩沖層參考設(shè)計(jì)作為源代碼提供,可自動(dòng)重新劃分包的優(yōu)先級(jí)別并調(diào)整隊(duì)列。
3. SRIO物理層IP可實(shí)現(xiàn)鏈路培訓(xùn)和初始化、發(fā)現(xiàn)和管理以及錯(cuò)誤和重試恢復(fù)機(jī)制。另外,高速收發(fā)器在物理層IP中例化,可支持線(xiàn)速率為1.25Gbps、 2.5Gbps和3.125Gbps的1通路和4通路SRIO總線(xiàn)鏈路。
4. 寄存器管理器參考設(shè)計(jì)允許SRIO主機(jī)器件設(shè)定并維護(hù)端點(diǎn)器件配置、鏈路狀態(tài)、控制和超時(shí)機(jī)制。另外,寄存器管理器上提供的端口可供用戶(hù)設(shè)計(jì)探測(cè)端點(diǎn)器件的狀態(tài)。
用于SRIO的整個(gè)Xilinx端點(diǎn)IP LogiCORE解決方案已全面經(jīng)過(guò)測(cè)試,硬件驗(yàn)證也已進(jìn)行,目前正在就與主要SRIO器件供應(yīng)商之間的協(xié)同工作能力接受測(cè)試。LogiCORE IP通過(guò)Xilinx CORE Generator軟件GUI工具提供,該工具允許用戶(hù)定制波特率和端點(diǎn)配置,并支持流量控制、重發(fā)送壓縮、門(mén)鈴和消息接發(fā)等擴(kuò)展功能。這樣,您便可創(chuàng)建一個(gè)靈活、可擴(kuò)展的定制SRIO端點(diǎn)IP,對(duì)自己的應(yīng)用進(jìn)行優(yōu)化。
Virtex-5 FPGA計(jì)算資源
用于SRIO的Xilinx端點(diǎn)IP可確保在使用SRIO協(xié)議的鏈路雙方間建立高速連接。在最小的Virtex-5器件中,IP僅占用不到20%的可用邏輯資源,因此可確保用戶(hù)設(shè)計(jì)使用大多數(shù)邏輯/存儲(chǔ)器/I/O,集中實(shí)現(xiàn)系統(tǒng)應(yīng)用。讓我們一起看一下Virtex-5器件資源。
邏輯模塊
Virtex-5邏輯架構(gòu)帶有基于65nm工藝的六輸入查找表(LUT),可提供最高的FPGA容量。進(jìn)位邏輯經(jīng)過(guò)改進(jìn)后,該器件的性能比之前的器件高出30%。由于所需LUT減少,該器件的功耗明顯降低,且具備高度優(yōu)化的對(duì)稱(chēng)布線(xiàn)架構(gòu)。
存儲(chǔ)器
Virtex-5存儲(chǔ)器解決方案包括LUT RAM、Block RAM及與大型存儲(chǔ)器進(jìn)行接口的存儲(chǔ)器控制器。Block RAM結(jié)構(gòu)包括預(yù)制FIFO邏輯,即可用于外部存儲(chǔ)器的嵌入式檢錯(cuò)和糾錯(cuò)(ECC)邏輯。另外,Xilinx可通過(guò)存儲(chǔ)器接口生成器(MIG)工具向系統(tǒng)設(shè)計(jì)中的例化存儲(chǔ)器控制器模塊提供綜合設(shè)計(jì)資源。這樣,您便可利用經(jīng)過(guò)硬件驗(yàn)證的解決方案,并將精力集中于設(shè)計(jì)中的其他關(guān)鍵部位。
評(píng)論