新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 采用串行RapidIO連接功能增強(qiáng)DSP協(xié)處理能力

采用串行RapidIO連接功能增強(qiáng)DSP協(xié)處理能力

作者: 時(shí)間:2011-10-09 來(lái)源:網(wǎng)絡(luò) 收藏

目前,對(duì)高速通信與超快計(jì)算的需求正與日俱增。有線和無(wú)線通信標(biāo)準(zhǔn)的應(yīng)用隨處可見,數(shù)據(jù)處理架構(gòu)每天都在擴(kuò)展。較為普遍的有線通信方式是以太網(wǎng)(LAN、WAN和MAN網(wǎng)絡(luò))。手機(jī)通信是最為常見的無(wú)線通信方式,由應(yīng)用了DSP的架構(gòu)實(shí)現(xiàn)。電話作為語(yǔ)音連接的主要工具,目前正在不斷滿足日益增強(qiáng)的語(yǔ)音、視頻和數(shù)據(jù)要求。

系統(tǒng)設(shè)計(jì)人員在創(chuàng)建架構(gòu)時(shí)不僅需考慮三網(wǎng)合一模式這一高端需求,還需滿足以下要求:高性能、低延遲、較低的系統(tǒng)成本(包括NRE)、可擴(kuò)展、可延伸架構(gòu)、集成現(xiàn)成(OTS)組件、分布式處理、支持多種標(biāo)準(zhǔn)和協(xié)議。

這些挑戰(zhàn)涉及到兩個(gè)主要方面:有線或無(wú)線架構(gòu)中計(jì)算平臺(tái)/箱間的連接以及這些平臺(tái)/箱中的具體計(jì)算資源。

計(jì)算平臺(tái)間的連接

基于標(biāo)準(zhǔn)的連接目前較為普遍。并行連接標(biāo)準(zhǔn)(PCI、PCI-X、EMIF)可以滿足現(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ú)線架構(gòu)中數(shù)據(jù)處理系統(tǒng)的互連要求略有不同:低引腳數(shù)、背板芯片對(duì)芯片連接、帶寬和速度可擴(kuò)展、DMA和信息傳輸、支持復(fù)雜的可擴(kuò)展拓?fù)?、多點(diǎn)傳輸、高可靠性、絕對(duì)時(shí)刻同步、服務(wù)質(zhì)量(QoS)。

(SRIO)協(xié)議標(biāo)準(zhǔn)可輕易滿足并超過(guò)大多數(shù)上述要求。因此,SRIO成了無(wú)線架構(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)提供必需布線信息。交換機(jī)通過(guò)使用基于器件的布線在傳輸層中運(yùn)行。

3. 邏輯層規(guī)范定義總體協(xié)議和包格式。所有包的有效載荷字節(jié)數(shù)為256或更少。事務(wù)使用指向34-/50-/66位地址空間的加載/存儲(chǔ)/DMA操作。事務(wù)包括:NREAD-讀操作(返回?cái)?shù)據(jù)即為響應(yīng))、NWRITE-寫操作,無(wú)響應(yīng)、NWRITE_R-強(qiáng)韌型寫入,響應(yīng)來(lái)自目標(biāo)端點(diǎn)、SWRITE-流式寫入、ATOMIC-原子性讀/改/寫、MAINTENANCE-系統(tǒng)查找、探測(cè)、初始化、配置和維護(hù)操作。

SRIO-優(yōu)勢(shì)前景

以3.125Gbps運(yùn)行的4通道SRIO鏈路可以提供10Gbps的流量,且保證數(shù)據(jù)完整性。由于SRIO類似于微處理器總線(存儲(chǔ)器和器件尋址,而非LAN協(xié)議的軟件管理),因此包處理是通過(guò)硬件實(shí)現(xiàn)的。這意味著可大幅削減I/O處理方面的額外開銷,降低延遲并增加系統(tǒng)帶寬。但與多數(shù)總線接口不同,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ú)線架構(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ò)基于包的操作(讀、寫、消息)移動(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)(樹狀和網(wǎng)格)與任意硬件(菊花鏈)拓?fù)?,包括支持多個(gè)主機(jī);
8. 錯(cuò)誤管理和分類(可恢復(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為軟性LogiCORE解決方案。對(duì)于通過(guò)邏輯(I/O)和傳輸層上的目標(biāo)和發(fā)起接口源出和接收用戶數(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中例化,可支持線速率為1.25Gbps、2.5Gbps和3.125Gbps的1通路和4通路SRIO總線鏈路。

4. 寄存器管理器參考設(shè)計(jì)允許SRIO主機(jī)器件設(shè)定并維護(hù)端點(diǎn)器件配置、鏈路狀態(tài)、控制和超時(shí)機(jī)制。另外,寄存器管理器上提供的端口可供用戶設(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工具提供,該工具允許用戶定制波特率和端點(diǎn)配置,并支持流量控制、重發(fā)送壓縮、門鈴和消息接發(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%的可用邏輯資源,因此可確保用戶設(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ì)稱布線架構(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)鍵部位。

并行和串行I/O

SelectIO技術(shù)幾乎可在設(shè)計(jì)中實(shí)現(xiàn)客戶所需的任何并行源同步接口。使用SelectIO接口,可方便地針對(duì)40多種不同的電氣標(biāo)準(zhǔn)創(chuàng)建符合行業(yè)標(biāo)準(zhǔn)的各類接口,也可創(chuàng)建專用接口。SelectIO接口提供的最大速率為700Mbps(單端)和1.25Gbps(差分)。

所有Virtex-5 LXT FPGA都裝有一個(gè)GTP收發(fā)器,運(yùn)行速度介于100Mbps到3.2Gbps之間。另外,GTP收發(fā)器在業(yè)界屬于最低功率MGT之一,每個(gè)收發(fā)器的功率小于100mW。引入用來(lái)簡(jiǎn)化設(shè)計(jì)的成熟設(shè)計(jì)技術(shù)和方法后,高速串行設(shè)計(jì)的流程變得簡(jiǎn)單快捷。

另外,通過(guò)新設(shè)計(jì)工具(RocketIO收發(fā)器向?qū)cIBERT)和新硅片性能(TX和RX均衡與內(nèi)置偽隨機(jī)位序列(PRBS)生成器和檢查器),可以開發(fā)移植架構(gòu)的各種功能和優(yōu)勢(shì),從并行I/O標(biāo)準(zhǔn)到30多種串行標(biāo)準(zhǔn)及新興的串行技術(shù)。

DSP模塊

每個(gè)DSP48E Slice可提供550MHz的性能水平,允許您創(chuàng)建要求單精度浮點(diǎn)性能的各類應(yīng)用,如多媒體、視頻和圖像應(yīng)用以及數(shù)字通信。這擴(kuò)展了器件的功能,使其優(yōu)于之前的器件,同時(shí)還提供了功率優(yōu)勢(shì),動(dòng)態(tài)功耗的降低幅度超過(guò)了40%。Virtex-5 FPGA中還增加了DSP48E Slice的數(shù)量,這些模塊相對(duì)于可用邏輯資源及存儲(chǔ)器的比率從而得到了優(yōu)化。

集成I/O模塊

所有Virtex-5 LXT FPGA器件都具備一個(gè)端點(diǎn)模塊,用來(lái)實(shí)現(xiàn)PCIe功能。通過(guò)這種硬IP端點(diǎn)模塊,只需簡(jiǎn)單地重新進(jìn)行配置即可不費(fèi)吹灰之力輕松地從x1擴(kuò)展至x2和x4或x8。該模塊(x1、x4和x8鏈路)已通過(guò)嚴(yán)格的PCI-SIG兼容性和協(xié)同工作能力測(cè)試,用戶可放心用于PCIe。

另外,所有Virtex-5 LXT FPGA器件均裝有三態(tài)以太網(wǎng)媒體訪問(wèn)控制器(TEMAC),速度可達(dá)10/100/1,000Mbps。該模塊可提供專用以太網(wǎng)功能,再結(jié)合Virtex-5 LXT RocketIO收發(fā)器和SelectIO技術(shù),可方便您與許多網(wǎng)絡(luò)器件進(jìn)行連接。

利用針對(duì)PCIe和以太網(wǎng)的這兩種模塊,可以創(chuàng)建一系列定制包處理和網(wǎng)絡(luò)產(chǎn)品,這些產(chǎn)品可大幅降低資源利用率和功耗。通過(guò)使用Xilinx FPGA中提供的這些各式資源,可以輕松創(chuàng)建并部署智能解決方案。

讓我們看一下利用SRIO和DSP技術(shù)的一些系統(tǒng)設(shè)計(jì)示例。

SRIO嵌入式系統(tǒng)應(yīng)用

可以考慮圍繞基于x86架構(gòu)的CPU構(gòu)建一個(gè)嵌入式系統(tǒng)。CPU架構(gòu)已高度優(yōu)化,可輕易滿足要求玩弄數(shù)字于股掌的各類應(yīng)用。您可以輕松地在使用CPU資源的硬件和軟件中實(shí)現(xiàn)各類算法,以執(zhí)行不需要進(jìn)行大量乘法運(yùn)算的電子郵件、數(shù)據(jù)庫(kù)管理以及文字處理等功能。性能以每秒鐘所產(chǎn)生的指令/運(yùn)算為數(shù)百萬(wàn)還是數(shù)十億來(lái)衡量,而效率通過(guò)完成特定運(yùn)算所需的時(shí)間/周期來(lái)衡量。

需進(jìn)行大量定點(diǎn)和浮點(diǎn)運(yùn)算的高性能應(yīng)用在處理數(shù)據(jù)時(shí)需花費(fèi)較長(zhǎng)時(shí)間。這方面的示例包括信號(hào)過(guò)濾、快速傅里葉變換、矢量乘法和搜索、圖像/視頻分析和格式轉(zhuǎn)換以及簡(jiǎn)單的數(shù)字處理算法。在DSP中實(shí)現(xiàn)的高端信號(hào)處理架構(gòu)可輕松執(zhí)行這些任務(wù),并可優(yōu)化此類運(yùn)算。這些DSP的性能以每秒鐘進(jìn)行多少次乘法和累加運(yùn)算來(lái)衡量。

您可以方便地設(shè)計(jì)使用CPU和DSP的嵌入式系統(tǒng),以充分利用兩種處理技術(shù)。圖6表示使用FPGA、CPU和DSP架構(gòu)的系統(tǒng)示例。

圖6:基于CPU的可擴(kuò)展、高性能、嵌入式系統(tǒng)。

高端DSP中的主要數(shù)據(jù)互連為SRIO。x86 CPU中的主要數(shù)據(jù)互連為PCIe。如圖6所示,您可輕松部署FPGA以擴(kuò)展DSP應(yīng)用或?qū)﹄x散數(shù)據(jù)互連標(biāo)準(zhǔn)(如PCIe和SRIO)進(jìn)行橋接。

在圖6所示系統(tǒng)中,PCIe系統(tǒng)由根聯(lián)合體芯片組托管。SRIO系統(tǒng)由DSP托管。32/64位PCIe地址空間(基址)可智能化地被映射至34/66位SRIO地址空間(基址)。PCIe應(yīng)用可通過(guò)存儲(chǔ)器或I/O讀寫與根聯(lián)合體進(jìn)行通信。這些事務(wù)會(huì)通過(guò)NRead/NWrite/SWrite輕松映射至SRIO空間。

在Xilinx FPGA中設(shè)計(jì)此類橋接功能很簡(jiǎn)單,因?yàn)檫@些Xilinx端點(diǎn)功能模塊、PCIe和SRIO的后端接口都很相似。這樣,“包隊(duì)列”模塊便可執(zhí)行從PCIe到SRIO或反方向的交叉任務(wù),從而建立可穿越兩個(gè)協(xié)議域的包流。

SRIO DSP系統(tǒng)應(yīng)用

在DSP處理為主要架構(gòu)要求的應(yīng)用中,系統(tǒng)架構(gòu)可按圖7進(jìn)行設(shè)計(jì)。

圖7:DSP密集型陣列。

基于Virtex-5 FPGA的DSP處理與系統(tǒng)中的其他DSP器件結(jié)合即可構(gòu)成智能協(xié)處理解決方案。如果使用SRIO作為數(shù)據(jù)互連,整個(gè)DSP系統(tǒng)解決方案就可以方便地進(jìn)行擴(kuò)展。此類解決方案能夠適應(yīng)未來(lái)的發(fā)展變化,提供了延伸性,而且受多種形狀因子的支持。在DSP密集型應(yīng)用中,通過(guò)將相應(yīng)處理任務(wù)卸載至x86架構(gòu)中可實(shí)現(xiàn)快速數(shù)字分析或數(shù)據(jù)處理。使用Virtex-5 FPGA可輕易地連接PCIe子系統(tǒng)和SRIO架構(gòu),從而實(shí)現(xiàn)高效功能卸載。

SRIO基帶系統(tǒng)應(yīng)用

現(xiàn)有3G網(wǎng)絡(luò)正在以較快的步伐邁向成熟,OEM也在為緩解特定容量和覆蓋率問(wèn)題而部署新的形狀系數(shù)。要解決此類特殊問(wèn)題,對(duì)市場(chǎng)趨勢(shì)做出評(píng)估,基于FPGA的DSP架構(gòu)是理想選擇,該架構(gòu)將SRIO用作數(shù)據(jù)層面標(biāo)準(zhǔn)。另外,早期DSP系統(tǒng)可快速升級(jí),變?yōu)榭焖?、低功耗FPGA DSP架構(gòu),從而獲得可擴(kuò)展性優(yōu)勢(shì)。

如圖8中的系統(tǒng)所示,您可以對(duì)Virtex-5 FPGA進(jìn)行設(shè)計(jì),以滿足現(xiàn)有對(duì)天線流量的線速率處理需求,還可通過(guò)SRIO提供與其他系統(tǒng)資源間的連接?,F(xiàn)有早期DSP應(yīng)用的固有并行連接速度較慢,因可應(yīng)用于Virtex-5 FPGA的SRIO端點(diǎn)功能的存在,移植這些應(yīng)用極為方便。

圖8:可擴(kuò)展基帶上行鏈路/下行鏈路卡。

本文小結(jié)

SRIO正出現(xiàn)在大量新應(yīng)用中,主要以有線和無(wú)線應(yīng)用中的DSP為中心。在Xilinx器件中實(shí)現(xiàn)SRIO架構(gòu)的主要優(yōu)勢(shì)包括:
1. 整個(gè)SRIO端點(diǎn)解決方案的可用性;
2. 靈活性和可擴(kuò)展性,便于使用同樣的硬件和軟件架構(gòu)制成不同級(jí)別的產(chǎn)品;
3. 通過(guò)新GTP收發(fā)器和65nm技術(shù)實(shí)現(xiàn)了低功耗;
4. 通過(guò)CORE Generator軟件GUI工具輕松進(jìn)行配置;
5. 與業(yè)界領(lǐng)先的供應(yīng)商間的硬件協(xié)同工作能力經(jīng)過(guò)了驗(yàn)證,支持其器件上的SRIO連接;
6. 通過(guò)使用PCIe和TEMAC等集成I/O模塊,實(shí)現(xiàn)了系統(tǒng)集成,從而降低了總體系統(tǒng)成本。

另外,Virtex-5 FPGA所具備的DSP資源可在功耗、性能和帶寬方面滿足現(xiàn)有早期DSP系統(tǒng)的要求。更多優(yōu)勢(shì)還體現(xiàn)在系統(tǒng)集成方面,諸如以太網(wǎng)MAC的功能模塊、用于PCIe的端點(diǎn)模塊、處理器IP模塊、存儲(chǔ)元件及控制器等等。另外,由于IP核的詳盡列表支持在FPGA中進(jìn)行多種源整合,可以大大節(jié)省總體系統(tǒng)成本。



關(guān)鍵詞: 串行RapidIO DSP協(xié)處理

評(píng)論


技術(shù)專區(qū)

關(guān)閉