• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Interlaken協(xié)議的高速數(shù)據(jù)流接口設(shè)計與性能分析

      2011-05-21 00:42:14陳世文李玉峰楊柳青
      電子設(shè)計工程 2011年13期
      關(guān)鍵詞:數(shù)據(jù)流條帶數(shù)據(jù)包

      陳世文, 郭 通,李玉峰,2,王 鵬, 楊柳青,3

      (1.解放軍信息工程大學(xué) 河南 鄭州450002;2.防空兵指揮學(xué)院 信息控制系,河南 鄭州450052;3.中國移動河南信陽分公司 河南 信陽464000)

      互聯(lián)網(wǎng)鏈路速率的飛速發(fā)展對路由器線路接口板的設(shè)計不斷提出新的要求。為解決線路接口板中器件間的高速數(shù)據(jù)交互問題,帶時鐘與數(shù)據(jù)恢復(fù)的新串行技術(shù)、差分信號技術(shù)等被普遍應(yīng)用,使器件的數(shù)據(jù)總線速率從每管腳約100 Mb/s提升到每差分對管腳可達(dá)數(shù)Gb/s,從而使單個器件的數(shù)據(jù)流吞吐速率大大提高。在核心路由器40 Gb/s POS線路接口板的設(shè)計中,鏈路層處理芯片與轉(zhuǎn)發(fā)、調(diào)度處理FPGA間的數(shù)據(jù)交互速率高,且要求采用8對差分線完成,每對差分線為一個通道,每通道速率需達(dá)到6.25 Gb/s。為滿足這一器件間的高速數(shù)據(jù)流接口設(shè)計需求,除了考慮硬件設(shè)計工藝外,還必須采用高效率、高可靠的包傳輸互連協(xié)議,利用多個串行鏈接,完成具有通道化、流控背壓和數(shù)據(jù)完整性保護(hù)能力的數(shù)據(jù)通信。系統(tǒng)設(shè)計中采用Interlaken協(xié)議[1],在FPGA中實(shí)現(xiàn)其功能IP核,傳輸時先將數(shù)據(jù)包切割成一個個突發(fā)數(shù)據(jù)字,前后加入控制字,然后將由數(shù)據(jù)字與控制字組成的突發(fā)按照每8字節(jié)一個通道進(jìn)行條帶化后成幀進(jìn)行傳輸[2]。通過利用高端FPGA的高速通道和Interlaken IP核[3]設(shè)計技術(shù),完成了鏈路層處理芯片與FPGA之間數(shù)據(jù)包的高速互聯(lián),滿足系統(tǒng)40 Gb/s吞吐率的要求,并就不同應(yīng)用場景中IP核關(guān)鍵參數(shù)與控制寄存器的配置進(jìn)行了探索。

      1 高速數(shù)據(jù)流接口需求分析

      核心路由器40 Gb/s POS線路接口板原理框圖如圖1所示,鏈路層處理模塊采用Cortina公司的CS1999芯片,內(nèi)含Interlaken硬核。FPGA采用Xilinx V5系列器件XC5VTX240T[4],在FPGA內(nèi)部實(shí)現(xiàn)高速串行連接、Interlaken接口協(xié)議與轉(zhuǎn)發(fā)、調(diào)度處理等功能。鏈路層處理芯片和轉(zhuǎn)發(fā)、處理FPGA之間按要求采用8對差分線連接,每對差分線速率為6.25 Gb/s。

      圖1 40 Gb/s POS線路接口板原理框圖Fig.1 Line interface board block diagram of 40Gb/s POS

      2 高速數(shù)據(jù)流接口設(shè)計

      2.1 Interlaken協(xié)議概述

      Interlaken協(xié)議采用與SPI4.2[5]類似的簡單包控制字結(jié)構(gòu)和64 B/67 B編碼,支持256個邏輯通道(可擴(kuò)展至64 k)和帶內(nèi)、帶外流控模式,串行通道數(shù)量與數(shù)據(jù)速率可擴(kuò)展性強(qiáng),具有頻率可編程的連續(xù)元幀格式用來保證通道對齊、同步擾碼器、時鐘補(bǔ)償和CRC校驗。由于采用了數(shù)據(jù)突發(fā)層CRC24檢驗、通道層CRC32校驗和數(shù)據(jù)擾頻器,從而確保了數(shù)據(jù)完整性和鏈路魯棒性。Interlaken的過程是:在發(fā)送端對數(shù)據(jù)包按一定數(shù)量的高速串行通道進(jìn)行條帶化后組成幀傳送,在接收端由接收器件再重新解幀與組合還原原始數(shù)據(jù)。

      其中,數(shù)據(jù)條帶化的過程是:將數(shù)據(jù)包根據(jù)參數(shù)BurstMax,BurstMin,BurstShort切割成一個個突發(fā)數(shù)據(jù)字,前后加入相應(yīng)的控制字,然后將由數(shù)據(jù)字與控制字組成的突發(fā)按照每8字節(jié)一個通道進(jìn)行條帶化,每個通道對應(yīng)一個物理SerDes。

      在成幀時,每個通道將條帶化的突發(fā)字封裝至其自帶的“元幀”,根據(jù)幀長加入1個同步字,1個擾頻器狀態(tài)字,1個診斷字,1個或多個跳脫字。元幀結(jié)構(gòu)如圖2所示。

      圖2 元幀結(jié)構(gòu)Fig.2 Meta frame structure

      傳輸時通常都是發(fā)送一個長為BurstMax的突發(fā)數(shù)據(jù),緊跟著一個控制字。最短突發(fā)的執(zhí)行是通過在下一個突發(fā)控制字前加額外的空閑控制字而實(shí)現(xiàn)的,最小突發(fā)保證的最小間隔示意圖如圖3所示。

      圖3 最小突發(fā)間隔示意圖Fig.3 Minimum burst interval diagram

      2.2 FPGA中的Interlaken IP核

      在FPGA中實(shí)現(xiàn)的高速通道與Interlaken IP核頂層模塊框圖如圖4所示。

      圖4 Interlaken頂層模塊框圖Fig.4 Block diagram of Interlaken top-level module

      Interlaken IP核頂層模塊由接收和發(fā)送兩個模塊組成。接收模塊從串行通道接收Interlaken比特流,去除Interlaken封裝,并將512位寬原始數(shù)據(jù)流提交給用戶,供后面的FPGA邏輯處理。發(fā)送模塊接收用戶側(cè)512位寬包原始數(shù)據(jù),按照Interlaken規(guī)范封裝數(shù)據(jù),并將封裝數(shù)據(jù)發(fā)送至串行通道,通過控制/配置輸入對數(shù)據(jù)進(jìn)行封裝。狀態(tài)/控制接口用于設(shè)置接口特性并監(jiān)視其操作。包括:接收元幀狀態(tài)信號,接收錯誤狀態(tài)信號,發(fā)送速率限制信號,CRC32診斷檢測信號(用于監(jiān)測每個通道的工作狀態(tài)是否正常),Interlaken接收狀態(tài)信息,Interlaken發(fā)送狀態(tài)信息,發(fā)送多重使用比特,接收多重使用比特,發(fā)送流控輸入,接收流控輸入,發(fā)送FIFO門限等。

      2.3 接口時序關(guān)系

      發(fā)送端總線接口同步接收任意長度的包原始數(shù)據(jù),所有信號都與clk上升沿同步。一個65字節(jié)包發(fā)送端采樣波形時序示意圖如圖5所示。

      圖5 發(fā)送波形采樣時序示意圖Fig.5 Timing diagram of the transimitting waveform samples

      接收端總線接口同步接收包原始數(shù)據(jù)。一個65字節(jié)包接收端采樣波形時序示意圖如圖6所示。

      圖6 接收波形采樣時序示意圖Fig.6 Timing diagram of the receiving waveform samples

      3 高速數(shù)據(jù)流接口實(shí)現(xiàn)

      3.1 實(shí)現(xiàn)方案

      按照自頂向下的設(shè)計思路,給出發(fā)送側(cè)硬件電路模塊級設(shè)計方案,如圖7所示。

      圖7 發(fā)送側(cè)硬件電路模塊設(shè)計示意圖Fig.7 Hardware circuit design module of transmit block

      其中,速率調(diào)整緩存模塊接收用戶側(cè)送來的傳送數(shù)據(jù),若用戶側(cè)發(fā)送速率高于Interlaken傳送速率,則調(diào)整該模塊的輸出速率,并對新進(jìn)入數(shù)據(jù)緩存;數(shù)據(jù)切割模塊按照Interlaken協(xié)議的切割算法和控制與狀態(tài)模塊配置的Burstmax、Burstmin和 Burstshort參數(shù)對輸入數(shù)據(jù)包進(jìn)行切割;突發(fā)字組裝模塊按照8字節(jié)數(shù)據(jù)字格式將切割后的數(shù)據(jù)組裝成數(shù)據(jù)字,同時按照控制字格式和控制與狀態(tài)模塊的配置信息組裝相應(yīng)的控制字;CRC24模塊完成協(xié)議層CRC24(x24+x21+x20+x17+x15+x11+x9+x8+x6+x5+x+1)[6]計算;突發(fā)組合模塊基于CRC24計算結(jié)果和突發(fā)字組裝結(jié)果完成一次突發(fā)組合;條帶化模塊將輸入突發(fā)字按照條帶數(shù)量實(shí)施條帶化,每8字節(jié)數(shù)據(jù)輪詢發(fā)送至N個條帶;64/67模塊按照64B/67B編碼格式對各個條帶數(shù)據(jù)進(jìn)行編碼;同步和跳脫模塊按照同步和跳脫字的結(jié)構(gòu)及下發(fā)的控制狀態(tài)組成各條帶新幀的同步字和跳脫字;CRC32對各條帶原幀進(jìn)行CRC32計算并生成新的診斷字,計算多項式[6]為:x32+x28+x27+x26+x25+x23+x22+x20+x19+x18+x14+x13+x11+x10+x9+x8+x6+1

      加擾模塊根據(jù)當(dāng)前擾碼狀態(tài)字加擾數(shù)據(jù)流;組幀及對齊模塊根據(jù)原幀結(jié)構(gòu)組成原幀,并根據(jù)需要決定是否實(shí)施通道對齊;serdes模塊是串行/解串行模塊,完成并串轉(zhuǎn)換,將高速串行數(shù)據(jù)輸出??刂婆c狀態(tài)模塊對各協(xié)議層處理模塊和幀層處理模塊進(jìn)行控制和配置。

      Interlaken協(xié)議硬件處理在性能上要以線速轉(zhuǎn)發(fā)處理為目標(biāo),對 40字節(jié)分組來說,Interlaken接口為 OC-768(40 Gb/s)時,線速分組時間僅為8 ns,可見,要實(shí)現(xiàn)對OC-768或者更高速率的Interlaken接口支持,必須引入并行流水線硬件設(shè)計技術(shù),由此,上述模塊級設(shè)計中遵循兩個原則:

      1)次序保證原則 該原則要求在任務(wù)劃分過程中,必須保證各串行子任務(wù)在處理時間上的順序性,以保證IP分組得到正確處理;

      2)并行處理原則 在次序保證原則的基礎(chǔ)上,該原則要求所有可并行處理的子任務(wù)作并行處理,以縮短IP分組的處理時間。

      遵循上述兩個原則,可進(jìn)一步對各個模塊內(nèi)部作更深入的電路設(shè)計,本文不再給出。接收流程與發(fā)送流程相反,模塊設(shè)計也相反,本文也不再給出。

      3.2 基于XILINX FPGA的實(shí)現(xiàn)思路

      目前,高端FPGA普遍支持高速串行/解串行模塊,例如XILINX V5 FPGA[5]的 GTX 可支持 6.25 Gb/s,而 Altera Stratix IV GX FPGA[7]的GTX可支持6.5 Gb/s。下面以XILINX V5 FPGA實(shí)現(xiàn)40 Gb/s接口為例,給出Interlaken接口FPGA內(nèi)部實(shí)現(xiàn)思路。

      1)根據(jù)接口速率選定配置方案,常見的為8×6.25 G和16×3.125 G,其中 8×6.25 G 使用 tile數(shù)量是 16×3.125 G 的 1/2,但單對差分線速率達(dá)到6.25 G,對PCB設(shè)計要求高。確定配置后,即可選定tile,若選擇8×6.25 G則可盡量選擇4個相鄰tile,以便tile時鐘可以公用。

      2)設(shè)計系統(tǒng)數(shù)據(jù)寬帶和時鐘方案:若內(nèi)部總線為32,單個lane內(nèi)部的處理時鐘需達(dá)到6.25 G/32,與GTX的發(fā)送和接收時鐘同步;此外,用戶側(cè)時鐘和數(shù)據(jù)配置時鐘和總線既要滿足帶寬需求:>40 G,又要滿足頻率要求:>(8×6.25 G)/32,常見配置為512寬帶或者256寬帶,總線頻率為200 MHz。

      3)選擇GTX功能模塊并例化GTX核:PCS部分BYPASS 8 B/10 B,選擇gearbox模塊,并選擇其模式為外部順序控制,PMA部分選擇PISO,并根據(jù)需要配置預(yù)加重和均衡等。

      4)按照2.1實(shí)現(xiàn)除serdes之外Interlaken協(xié)議處理模塊。

      5)將Interlaken協(xié)議處理模塊和gTX核對接,完成整個設(shè)計。

      4 測試數(shù)據(jù)與性能分析

      高速通道硬件設(shè)計和Interlaken IP核是滿足系統(tǒng)吞吐率要求的關(guān)鍵因素,為驗證系統(tǒng)功能,采用的基本調(diào)試與測試方法是:通過上位機(jī)單板處理軟件控制鏈路層商用芯片PRBS或固定負(fù)載的定長包和變長包作為數(shù)據(jù)源,發(fā)出數(shù)據(jù)包,由FPGA Interlaken核接收端經(jīng)FIFO打環(huán)再由核發(fā)送端送回商用芯片,并對發(fā)送包與接收包進(jìn)行統(tǒng)計對比分析。表1是在40 Gb/s速率下,突發(fā)分割參數(shù)BurstShort=64,BurstMax=256時,各種數(shù)據(jù)包長的發(fā)送接收傳輸測試數(shù)據(jù)。

      由表1可以看出,當(dāng)BurstShort=64,BurstMax=256時,40Gb/s速率下,各種包長的數(shù)據(jù)報環(huán)回時無丟包發(fā)生。證明高速通道硬件設(shè)計滿足要求,相應(yīng)的Interlaken IP突發(fā)配置參數(shù)下性能可以達(dá)到40 Gb/s的吞吐率。

      表1 速率為40 Gb/s時的發(fā)送與接收包數(shù)據(jù)Tab.1 Number of transmiting and receiving packets at 40 Gb/s wire-speed

      為驗證Interlaken IP核突發(fā)分割參數(shù)配置對數(shù)據(jù)吞吐率的影響,在不同速率下對各種包長的數(shù)據(jù)包進(jìn)行了大量測試。其中,特定分割參數(shù)(BurstShort=192,BurstMax=256)時,得到的定長數(shù)據(jù)包在各種速率下的傳輸性能測試數(shù)據(jù)特性圖如圖8所示。

      圖8 不同速率下的數(shù)據(jù)包丟包率(BurstShort=192,BurstMax=256)Fig.8 Packet loss rate under different Rates(Burstshort is 192 and BurstMax is 256)

      由圖8可以看出,當(dāng)BurstShort=192,BurstMax=256時,在38Gb/s速率以下,各種包長的數(shù)據(jù)包無丟包發(fā)生。在40Gb/s速率時,某些包長的數(shù)據(jù)包存在丟包現(xiàn)象。說明IP核突發(fā)分割參數(shù)配置對數(shù)據(jù)吞吐率有影響,因此需要在應(yīng)用時優(yōu)化IP核的參數(shù)配置。

      5 結(jié)束語

      在核心路由器40 G POS線路接口板設(shè)計任務(wù)中,基于Interlaken協(xié)議,利用Xilinx V5TX240T FPGA的GTX高速通道完成了鏈路層處理芯片與轉(zhuǎn)發(fā)、處理FPGA之間數(shù)據(jù)包的高速互聯(lián),采用8個高速通道,每通道速率6.25 Gb/s,滿足了系統(tǒng)40 Gb/s吞吐率的要求。下一步的研究思路是:在實(shí)際網(wǎng)絡(luò)環(huán)境中,綜合考慮數(shù)據(jù)流的流長分布特征與IP核參數(shù)的關(guān)系,實(shí)現(xiàn)參數(shù)的在線可重構(gòu)配置,基本方法是將數(shù)據(jù)傳輸效率與正確率的統(tǒng)計結(jié)果反饋給單板軟件,利用單板軟件和處理機(jī)接口,對Interlaken核的參數(shù)進(jìn)行修改,以數(shù)據(jù)包的包長分布、數(shù)據(jù)包流量以及包速率為主要特征,建立應(yīng)用現(xiàn)場的包分布特征模型,從而實(shí)現(xiàn)IP核關(guān)鍵參數(shù)與控制寄存器的自適應(yīng)、動態(tài)可重構(gòu)配置。

      [1]Cortina,Cisco.Interlaken protocol definition, version 1.2[EB/OL].(2008-10-07).http://wenku.baidu.com/view/90303e 3610661ed9ad51f31a.html.

      [2]Cisco.Interlakentechnology:new-generationpachetinterconnect protocol[EB/OL].(2007-03-08).http://read.pudn.com/downloads139/doc/comm/596874/Interlaken_White_Paper-March_2007.pdf.

      [3]ASIC Interlaken IP Core.SLE interlaken SLE interlaken IP key features[EB/OL].(2007-01).http://www.siliconlogic.com/pdfs/SLE_Interlaken_IP_Data_Sheets.pdf.

      [4]XILINX.Virtex-5 FPGA rocketIO GTX transceiver user GuideUG198[EB/OL].(2009-10-30).http://www.datasheetarchive.com/datasheet-pdf/0100/DSA00219189.html.

      [5]Optical internetworking forum.System packet interface level 4(SPI-4)Phase 2:OC-192 system interface for physical and link layer devices[EB/OL].(2001-01).http://www.docin.com/p-213161926.html.

      [6]Castagnoli G,Brauer S,Herrmann M.Optimization of cyclic redundancy-check codes with 24 and 32 parity bits[J].IEEE Transactions on Communications,1993,41(6):883-892.

      [7]Altera Corporation.Stratix IV device handbook.[EB/OL](2011-04).http://www.altera.com.cn/literature/hb/stratix-iv/stx4_5v4.pdf.

      猜你喜歡
      數(shù)據(jù)流條帶數(shù)據(jù)包
      汽車維修數(shù)據(jù)流基礎(chǔ)(下)
      SmartSniff
      一種提高TCP與UDP數(shù)據(jù)流公平性的擁塞控制機(jī)制
      基于條帶模式GEOSAR-TOPS模式UAVSAR的雙基成像算法
      基于數(shù)據(jù)流聚類的多目標(biāo)跟蹤算法
      基于 Savitzky-Golay 加權(quán)擬合的紅外圖像非均勻性條帶校正方法
      北醫(yī)三院 數(shù)據(jù)流疏通就診量
      基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計與實(shí)現(xiàn)
      一種基于MATLAB的聲吶條帶圖像自動拼接算法
      海岸工程(2014年4期)2014-02-27 12:51:28
      視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
      万源市| 荣成市| 金门县| 南昌市| 徐闻县| 海晏县| 神池县| 西畴县| 寿光市| 任丘市| 吉安县| 咸阳市| 溆浦县| 高尔夫| 巧家县| 永平县| 松原市| 古浪县| 台湾省| 福建省| 玉林市| 墨脱县| 汝州市| 东台市| 云南省| 六枝特区| 开阳县| 平乡县| 缙云县| 崇州市| 阳西县| 日土县| 郴州市| 同江市| 鹿泉市| 共和县| 建德市| 观塘区| 丰都县| 舞钢市| 临汾市|