<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 電源與新能源 > 設(shè)計應用 > 基于Virtex-6 FPGA的三種串行通信協(xié)議測試及對比(一)

          基于Virtex-6 FPGA的三種串行通信協(xié)議測試及對比(一)

          作者: 時間:2016-12-06 來源:網(wǎng)絡 收藏

            在高性能雷達信號處理機研制中,高速串行總線正逐步取代并行總線。業(yè)界廣泛使用的Xilinx公司Virtex-6系列FPGA支持多種高速串行通信協(xié)議,本文針對其中較為常用的Aurora 8B/10B和PCI Express 2.0,Serial RapidIO 2.0三種協(xié)議進行了測試及對比分析。首先搭建了基于Virtex-6 FPGA的高速串行協(xié)議測試平臺;然后設(shè)計并分別實現(xiàn)了三種協(xié)議的高速數(shù)據(jù)通信,測算了協(xié)議的實際傳輸速率;最后結(jié)合測試結(jié)果,從協(xié)議層次結(jié)構(gòu)、鏈路數(shù)目、鏈路線速率、數(shù)據(jù)傳輸方式、協(xié)議開銷、拓撲結(jié)構(gòu)、設(shè)備尋址方式、應用領(lǐng)域等方面對三種協(xié)議進行了比較。本文研究工作可為三種協(xié)議的選用、測試和工程實現(xiàn)提供參考。

          本文引用地址:http://www.ex-cimer.com/article/201612/326825.htm

            1引言

            隨著雷達帶寬和AD采樣率的提高,在高性能雷達信號處理機研制中,系統(tǒng)對數(shù)據(jù)傳輸帶寬的要求不斷增加,高速串行總線正逐步取代傳統(tǒng)的并行總線。

            Xilinx公司推出的Virtex-6系列FPGA,在片上集成了固化的GTX模塊,以提供高速串行通信支持。同時Xilinx公司提供有多種串行通信協(xié)議IP核,便于用戶進行開發(fā)。Aurora 8B/10B,PCI Express 2.0和Serial RapidIO 2.0是其中較為常用的三種協(xié)議。目前已有眾多文獻涉及到三種協(xié)議基于FPGA的實現(xiàn)方案。然而這些方案未能充分發(fā)揮協(xié)議性能,存在線速率較低(僅為2.5Gb/s)或未實現(xiàn)多通道綁定。針對上述問題,本文基于Virtex-6 FPGA,分別實現(xiàn)了三種協(xié)議在4x鏈路,5.0Gb/s線速率模式下的數(shù)據(jù)通信,測得協(xié)議的實際傳輸速率,并對三種協(xié)議的特點與應用進行了對比分析。

            2測試平臺簡介

            本文以實驗室自行開發(fā)設(shè)計的PCIe光纖接收處理板(以下簡稱測試電路板)為測試平臺。測試電路板的結(jié)構(gòu)圖和實物圖分別如圖1,圖2所示。其中,F(xiàn)PGA選用XC6VLX240T-2FF1156,該芯片含20個GTX收發(fā)器,鏈路線速率可達6.6Gb/s.DSP選用TMS320C6678,該芯片含有SRIO接口,支持1x、2x和4x鏈路。光電轉(zhuǎn)換模塊選用FCBG410QB1C10,它包含4條鏈路,帶寬可達40Gb/s.故而測試電路板的硬件設(shè)計符合本測試對數(shù)據(jù)傳輸速率的要求。

            

            圖1測試電路板模塊結(jié)構(gòu)和鏈路連接圖

            

            圖2測試電路板實物圖

            如圖3所示,將測試電路板插入服務器主板的PCIe插槽中,并將光纖接入測試電路板,完成測試平臺的搭建。本測試中,PCI Express 2.0協(xié)議用于實現(xiàn)FPGA與服務器的數(shù)據(jù)通信,Serial RapidIO 2.0協(xié)議用于實現(xiàn)FPGA與DSP的數(shù)據(jù)通信,Aurora 8B/10B協(xié)議用于實現(xiàn)FPGA的光纖自發(fā)自收通信。由于三種協(xié)議都在物理層進行8B/10B編碼,故在本測試工作模式下,它們的極限速率均為

            

            圖3測試平臺搭建

            3 AURORA 8B/10B通信測試

            Aurora 8B/10B協(xié)議是Xilinx公司針對高速傳輸開發(fā)的一種可裁剪的輕量級鏈路層協(xié)議,通過一條或多條串行鏈路實現(xiàn)兩設(shè)備間的數(shù)據(jù)傳輸。協(xié)議Aurora協(xié)議可以支持流和幀兩種數(shù)據(jù)傳輸模式,以及全雙工、單工等數(shù)據(jù)通信方式。

            本測試中,Aurora 8B/10B IP核配置為雙工、流模式,參考時鐘頻率250MHz.

            使用ChipScope軟件觀察FPGA相關(guān)信號如圖4所示。觀察RX_SRC_RDY_N可以發(fā)現(xiàn),平均每4992周期出現(xiàn)7個周期的數(shù)據(jù)無效信號。由于接收數(shù)據(jù)時鐘頻率為250MHz,數(shù)據(jù)位寬為64bit,故本測試中,Aurora 8B/10B協(xié)議單向傳輸速率為,

            

            

            圖4 Aurora 8B/10B協(xié)議通信測試信號波形

            下面分析協(xié)議理論傳輸速率和實際通信效率。該協(xié)議的幀格式比較簡單,除2字節(jié)的起始標志,2字節(jié)終止標志和至多1字節(jié)的填裝字符外,其余為數(shù)據(jù)部分。本測試采用的流模式是以無結(jié)尾的幀方式實現(xiàn)。故協(xié)議除8B/10B編碼外,基本上不存在其他開銷。故根據(jù)(1)式可得,協(xié)議的理論速率為2.0GB/s,協(xié)議的實際通信效率為99.75%.

            4 PCI Express 2.0通信測試

            PCI Express(簡稱PCIe)總線技術(shù)是取代PCI的第三代I/O技術(shù)。PCIe采用串行點對點互連,允許每個設(shè)備擁有專屬的一條連接,不爭奪帶寬資源,同時保證了數(shù)據(jù)的完整性。PCI Express 2.0協(xié)議的鏈路線速率達到5Gb/s,最高支持32x鏈路。

            本測試中,PCIe 2.0通信測試通過FPGA對服務器內(nèi)存的DMA讀/寫操作來實現(xiàn)。

            服務器方面,本測試選用Windriver軟件進行PCIe驅(qū)動程序的開發(fā)。利用該軟件提供的PCIe驅(qū)動程序及用戶接口函數(shù),編寫符合本測試功能需求的程序。

            FPGA方面,本測試通過設(shè)計用戶模塊,實現(xiàn)對PCIe IP核的控制,完成DMA讀/寫操作。FPGA模塊結(jié)構(gòu)如圖5所示。

            

            圖5 PCIe 2.0通信測試FPGA模塊結(jié)構(gòu)  為便于服務器對測試電路板FPGA進行控制,在FPGA的PCIe存儲空間模塊中,定義了若干控制/狀態(tài)寄存器,這些寄存器的作用有:DMA讀/寫初始化,控制DMA讀/寫的啟動與停止,標志一次DMA傳輸是否完成,設(shè)置一次DMA傳輸?shù)臄?shù)據(jù)量等。

            服務器通過PCIe接口對測試板FPGA控制/狀態(tài)寄存器進行讀/寫操作,來控制DMA的進程。每次DMA完成后,處理板FPGA會向服務器CPU發(fā)送一次中斷。服務器對測試電路板FPGA DMA傳輸?shù)目刂屏鞒倘鐖D6所示。

            

            圖6 PCIe 2.0 DMA傳輸控制流程圖

            本測試將TLP包載荷數(shù)設(shè)為256Bytes(IP核允許的最大值),每次DMA傳輸?shù)腡LP包的數(shù)量為16384,故每次DMA傳輸?shù)臄?shù)據(jù)量為4MB.使用ChipScope軟件觀察FPGA內(nèi)部的PCIe 2.0 DMA讀/寫相關(guān)信號,如圖7,圖8所示。本測試開發(fā)了PCIe讀寫功能測試軟件,實現(xiàn)PCIe傳輸數(shù)據(jù)量和傳輸速率的實時顯示。傳輸速率通過1s內(nèi)DMA傳輸完成的次數(shù)來計算。測試結(jié)果如圖9(a)、(b)所示。PCIe 2.0 DMA讀的數(shù)據(jù)傳輸速率為1.770GB/s,DMA寫的數(shù)據(jù)傳輸速率為1.820GB/s.

            

            圖7 PCIe 2.0 DMA讀測試信號波形

            

            圖8 PCIe 2.0 DMA寫測試信號波形

            

            圖9 PCIe 2.0 DMA讀寫速率測試結(jié)果(a)DMA讀測試(b)DMA寫測試

            下面分析并計算本測試條件下PCIe 2.0 DMA讀/寫的理論傳輸速率和實際通信效率。

            PCIe 2.0協(xié)議主要開銷為8B/10B編碼開銷和數(shù)據(jù)包傳送開銷。PCIe總線以包的形式在不同器件之間交換信息。數(shù)據(jù)在進入處理層后會被封裝一個包頭,該包頭長度在32bit地址下為12字節(jié)(本測試采用32bit地址)。當數(shù)據(jù)包進入數(shù)據(jù)鏈路層后,會添加2字節(jié)的序列號和4字節(jié)的LCRC字段。數(shù)據(jù)包進入物理層后,使用1字節(jié)的開始字符和1字節(jié)的結(jié)束字符將其封裝成幀。

            在DMA寫測試中,F(xiàn)PGA每發(fā)送一次存儲器寫報文(含256字節(jié)數(shù)據(jù))會帶來20字節(jié)的額外開銷。在DMA讀測試中,F(xiàn)PGA向服務器發(fā)送存儲器讀報文,并由服務器返回完成報文(含256字節(jié)數(shù)據(jù))。每返回一次完成報文會帶來20字節(jié)的額外開銷。由于PCIe 2.0定義了流量控制緩存管理機制,允許服務器返回完成報文的同時接收FPGA發(fā)來的存儲器讀報文,故DMA讀測試中可忽略FPGA發(fā)送存儲器讀報文帶來的開銷。

            故PCIe 2.0 DMA讀/寫的理論速率相同,均為

            

            5 Serial RapidIO 2.0通信測試

            RapidIO是針對嵌入式系統(tǒng)芯片間和板間互連而設(shè)計的一種開放式的基于包交換的高速串行標準,已在電信、國防等行業(yè)大量使用。

            Serial RapidIO(簡稱SRIO)是物理層采用串行差分模擬信號傳輸的RapidIO標準。SRIO 2.0協(xié)議性能進一步增強,鏈路線速率可達6.25Gb/s,在電氣層支持熱插拔,并新添了控制符號和空閑模式功能。

            本測試以測試電路板FPGA作為發(fā)起端,以測試電路板DSP作為目標端。通過FPGA向DSP發(fā)送SWRITE包,進行SRIO 2.0寫測試,通過FPGA向DSP發(fā)送NREAD包,DSP向FPGA返回RESPONSE包,進行SRIO 2.0讀測試。



          關(guān)鍵詞: Virtex-6FPGA通信協(xié)

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();