RocketIO及其在高速數(shù)據(jù)傳輸中的應(yīng)用
2.1 Aurora協(xié)議
Aurora協(xié)議是一種可配置的、簡便的數(shù)據(jù)鏈路層協(xié)議,可以通過使用一條或多條高速串行通道實(shí)現(xiàn)點(diǎn)對點(diǎn)的數(shù)據(jù)傳輸。Aurora協(xié)議可為私有上層協(xié)議或標(biāo)準(zhǔn)上層協(xié)議提供透明接口的串行互聯(lián)協(xié)議,允許任何數(shù)據(jù)分組通過Aurora協(xié)議封裝,并在芯片間、電路板間甚至機(jī)箱之間傳輸。Xilinx還開發(fā)了實(shí)現(xiàn)該協(xié)議的Aurora IP核,當(dāng)使用Virtex5 FPGA提供的RocketIO時(shí),Aurora可實(shí)現(xiàn)每個(gè)物理通道500 Mb/s到3.75 Mb/s的傳輸速率。Aurora可將1~16個(gè)物理通道綁定在一起,形成一個(gè)由16個(gè)通道綁定而成的虛擬鏈路,提供最高60 Gb/s的傳輸波特率[1]。其結(jié)構(gòu)如圖5所示。
圖5 Aurora核結(jié)構(gòu)
Aurora核可以幀模式或流模式傳輸數(shù)據(jù)[4]。Aurora的幀可以是任意大小,并可以在任意時(shí)刻被中斷。有效數(shù)據(jù)之間被自動以空閑(idles)序列信號填充,以維持通道的鎖定。幀模式下有可選的數(shù)據(jù)流控制信號,以降低接收數(shù)據(jù)速率,或傳送簡短而優(yōu)先級高的信息。流模式在Aurora核中以一個(gè)無結(jié)尾的幀方式實(shí)現(xiàn)。在數(shù)據(jù)傳輸?shù)拈g隙補(bǔ)以空閑序列信號。
2.2 PCI Express協(xié)議
PCI Express是PCI、PCIX協(xié)議的下一代協(xié)議,是一種廣泛適用于計(jì)算和通信平臺的高性能通用互聯(lián)結(jié)構(gòu)。同Aurora協(xié)議相似,PCI Express協(xié)議采用點(diǎn)到點(diǎn)的串行鏈接,單通道可實(shí)現(xiàn)2.5 Gb/s的傳輸速率,最高可使用16個(gè)通道實(shí)現(xiàn)40 Gb/s的高速通信。Xilinx公司開發(fā)的集成的PCIE IP核(Integrated Endpoint Block)可實(shí)現(xiàn)最高8個(gè)RocketIO通道的綁定,以此為物理層基礎(chǔ)實(shí)現(xiàn)20 Gb/s的傳輸速率。PCI Express協(xié)議包含傳輸層、數(shù)據(jù)鏈路層和物理層,其在FPGA上基于RocketIO實(shí)現(xiàn)的結(jié)構(gòu)框架如圖6所示。
圖6 Xilinx PCIE IP核結(jié)構(gòu)框圖
2.3 高速信號傳輸系統(tǒng)的共性
RocketIO可應(yīng)用于多種高速數(shù)據(jù)處理應(yīng)用的場合,這是由于高速信號傳輸系統(tǒng)結(jié)構(gòu)都可以概括為三個(gè)組成部分,并且傳輸協(xié)議分層實(shí)現(xiàn)的方式使得系統(tǒng)協(xié)議與硬件系統(tǒng)之間具有一定的獨(dú)立性。
圖7 高速信號傳輸系統(tǒng)框架圖
高速信號傳輸系統(tǒng)的實(shí)現(xiàn)方式多種多樣,但一般均由上層協(xié)議、高速收發(fā)器以及傳輸接口組成。其結(jié)構(gòu)框架如圖7所示。
上層協(xié)議:根據(jù)不同的任務(wù)需要,為實(shí)現(xiàn)高速信號傳輸制定的傳輸協(xié)議多種多樣,包含的層數(shù)也不同。如PCI Express協(xié)議具有物理層、數(shù)據(jù)鏈路層以及傳輸層,Aurora協(xié)議具有物理層和數(shù)據(jù)鏈路層,10 Gb/s以太網(wǎng)協(xié)議(XAUI)包含物理層和數(shù)據(jù)鏈路層。用戶程序可使用這些傳輸協(xié)議實(shí)現(xiàn)數(shù)據(jù)的收發(fā)。
高速收發(fā)器:高速收發(fā)器是所有傳輸協(xié)議都必須具備的物理層,是實(shí)現(xiàn)高速信號傳輸?shù)幕A(chǔ)。一般實(shí)現(xiàn)串并轉(zhuǎn)換、時(shí)鐘數(shù)據(jù)恢復(fù)、線路編碼、線路綁定等功能,可為多種上層協(xié)議提供硬件支持。Xilinx公司推出的RocketIO與Altera公司推出的Rapid IO等都可看作高速收發(fā)器。
傳輸接口:在高速的信號傳輸系統(tǒng)中傳輸接口與高速收發(fā)器之間通過差分線連接,可實(shí)現(xiàn)全雙工的雙向傳輸。接口形式與具體應(yīng)用相關(guān),如實(shí)現(xiàn)PCI Express傳輸協(xié)議的PCIE接口、實(shí)現(xiàn)光線傳輸協(xié)議的光線接口以及實(shí)現(xiàn)高速以太網(wǎng)通信的網(wǎng)絡(luò)接口等。
其中相同的高速收發(fā)器可以應(yīng)用于使用不同傳輸協(xié)議的系統(tǒng)中,所連接的接口根據(jù)不同應(yīng)用而有不同形式。如RocketIO既可用于Aurora光纖通信協(xié)議,也可用于PCI Express協(xié)議。而在Aurora協(xié)議中,RocketIO與光纖接口相連,在PCI Express協(xié)議中,RocketIO與PCIE接口相連。
結(jié)語
綜上所述,RocketIO通過提供高速的串并轉(zhuǎn)換、時(shí)鐘與復(fù)位管理、線路編解碼等功能,為實(shí)現(xiàn)高速的串行數(shù)據(jù)傳輸提供了良好的物理層基礎(chǔ)。RocketIO對多種高速傳輸協(xié)議的支持使得其在嵌入式系統(tǒng)中得到了廣泛的應(yīng)用,也使得用戶在選擇使用成熟的IP核之外,可以根據(jù)實(shí)際需要利用RocketIO開發(fā)專用模塊,實(shí)現(xiàn)高效、穩(wěn)定的數(shù)據(jù)傳輸。
評論