• 
    

    
    

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

      ?

      基于FPGA的千兆網(wǎng)絡(luò)數(shù)據(jù)采集系統(tǒng)設(shè)計與實現(xiàn)

      2011-08-20 05:18:26顧薛平
      關(guān)鍵詞:物理層寄存器以太網(wǎng)

      朱 晴,吳 寧,顧薛平

      (南京航空航天大學(xué) 電子信息工程學(xué)院,江蘇 南京 210016)

      隨著互聯(lián)網(wǎng)的迅猛發(fā)展,對網(wǎng)絡(luò)管理的需求日益迫切,而流量監(jiān)測和統(tǒng)計分析是整個網(wǎng)絡(luò)管理的基礎(chǔ)。為了實現(xiàn)對網(wǎng)絡(luò)進行綜合管理,有必要及時全面地收集、管理網(wǎng)絡(luò)的流量信息,準(zhǔn)確獲取網(wǎng)絡(luò)流量數(shù)據(jù),對網(wǎng)絡(luò)流量態(tài)勢進行分析,對網(wǎng)絡(luò)健康狀況及未來的發(fā)展趨勢作出準(zhǔn)確判斷。然而,隨著網(wǎng)絡(luò)帶寬的增加和規(guī)模的擴大,大規(guī)模網(wǎng)絡(luò)流量采集面臨著數(shù)據(jù)規(guī)模龐大和數(shù)據(jù)到達速度過快的挑戰(zhàn)。為了克服上述困難,通常采用硬件實現(xiàn)完成流量采集功能[1]。當(dāng)前采用硬件實現(xiàn)的流量采集方法(如 Cisco的 NetFlow或者 InMon的 sFlow)都是基于對數(shù)據(jù)報文周期性地采樣來進行流量采集,這種方法存在處理速度緩慢、統(tǒng)計結(jié)果不精確、實現(xiàn)代價大、單個流處理訪存次數(shù)多等缺點。

      隨著FPGA的發(fā)展,其內(nèi)部資源日益豐富,速度和性能大大提高,特別是內(nèi)部嵌入了大量 IP核[2],這些使得在FPGA上進行高速網(wǎng)絡(luò)流數(shù)據(jù)的采集和分析成為可能。流量管理系統(tǒng)主要包含網(wǎng)絡(luò)數(shù)據(jù)采集系統(tǒng)、網(wǎng)絡(luò)數(shù)據(jù)統(tǒng)計與分析和網(wǎng)絡(luò)數(shù)據(jù)分流三部分,如圖1所示。

      圖1 流量管理系統(tǒng)

      本系統(tǒng)基于FPGA,獲取RJ45端口的網(wǎng)絡(luò)數(shù)據(jù),然后對數(shù)據(jù)進行流量統(tǒng)計和分析,最后根據(jù)分析結(jié)果,將網(wǎng)絡(luò)數(shù)據(jù)包進行分流再重新轉(zhuǎn)發(fā)回網(wǎng)絡(luò)中。

      1 網(wǎng)絡(luò)數(shù)據(jù)采集系統(tǒng)總體設(shè)計

      本文基于FPGA,重點研究了前端網(wǎng)絡(luò)數(shù)據(jù)采集系統(tǒng),該系統(tǒng)總體框圖如圖2所示,網(wǎng)絡(luò)數(shù)據(jù)由RJ45端口接入系統(tǒng),經(jīng)Marvell 88E1111和千兆以太網(wǎng)核的解析,獲取完整的數(shù)據(jù)包,暫存在指定地址的片內(nèi)RAM中進行統(tǒng)計和分析。

      圖2 網(wǎng)絡(luò)數(shù)據(jù)采集

      網(wǎng)絡(luò)數(shù)據(jù)采集系統(tǒng)主要通過Marvel 88E1111物理層芯片和Altera公司的千兆以太網(wǎng)IP硬核來實現(xiàn),兩者通過標(biāo)準(zhǔn)的SGMII接口連接。

      在發(fā)送數(shù)據(jù)的過程中,88E1111物理層芯片將FPGA的千兆以太網(wǎng)IP硬核產(chǎn)生的高速串行數(shù)據(jù)流經(jīng)RJ45以太網(wǎng)口,由5類雙絞線傳遞出去。在接收數(shù)據(jù)的過程中,88E1111物理層芯片檢測從5類雙絞線傳遞進來的電信號,如果有有效電信號到來,將高速串行數(shù)據(jù)流傳遞給千兆以太網(wǎng)MAC核。

      2 物理層器件88E1111

      Altera公司的千兆以太網(wǎng)硬核默認支持的物理層器件有支持10/100 Mb/s的National DP83848C,支持10/100/1000 Mb/s的National DP83865以及支持雙物理層和10/100/1000 Mb/s的Marvell 88E1111。

      Marvell公司的物理層芯片88E1111是一款高性能的 芯 片 , 支 持 包 括 GMII、RGMII、SGMII、TBI、RTBI 等 接口的MAC層和物理層的連接方式,可以直接接入千兆以太網(wǎng)MAC或交換機端口,10/100/1000 Mb/s的物理傳輸層的媒介,光纖傳輸線連接方式以及雙絞線的連接方式[3]。88E1111支持的最高速率為1.25 GHz,I/O電平標(biāo)準(zhǔn)為3.3 V LVTTL。系統(tǒng)選擇Marvell 88E1111作為PHY器件。

      3 千兆以太網(wǎng)

      以太網(wǎng)技術(shù)是一種廣泛應(yīng)用的網(wǎng)絡(luò)技術(shù),千兆以太網(wǎng)在兼容原有以太網(wǎng)技術(shù)的基礎(chǔ)上進行了一系列改進,網(wǎng)絡(luò)數(shù)據(jù)傳輸速率得到了大幅度提高。特別是IEEE802.3ab(1 000Based-T)千兆網(wǎng)標(biāo)準(zhǔn)的出臺,將 5類非屏蔽雙絞線應(yīng)用在千兆網(wǎng)中,使得網(wǎng)絡(luò)性能在原有布線基礎(chǔ)上獲得大幅度提高[4]。如今,千兆網(wǎng)已經(jīng)發(fā)展成為主流的網(wǎng)絡(luò)技術(shù)。

      千兆網(wǎng)兼容了原來以太網(wǎng)標(biāo)準(zhǔn)所規(guī)定的全部技術(shù)規(guī)范,其中包括CSMA/CD協(xié)議、以太網(wǎng)幀、全雙工、流量控制等。千兆網(wǎng)的標(biāo)準(zhǔn)化結(jié)構(gòu)包括介質(zhì)訪問控制(MAC)、物理編解碼(PCS)和物理介質(zhì)接入(PMA)三個主要部分。

      3.1 千兆以太網(wǎng)FPGA硬核

      Altera提供可參數(shù)化的千兆以太網(wǎng)IP核解決方案,該方案可在 Altera的 CycloneII、CycloneIII、Stratix等系列FPGA上工作,可配置使其包含MAC、PCS和PMA模塊中的一種或多種,選擇相應(yīng)的接口標(biāo)準(zhǔn)[5]。

      構(gòu)建千兆以太網(wǎng)系統(tǒng)必須先了解MAC、PCS和PMA三個模塊的功能及其帶來的影響。MAC模塊主要用于全雙工模式下的流量控制及MAC幀的發(fā)送和接收,其主要操作有MAC幀的封裝與解包以及錯誤檢測。MAC模塊通過MII/GMII/RGMII接口與PHY器件或者PCS模塊進行通信,同時為用戶提供了基于Aalon-ST的8 bit/32 bit接口[6]。

      PCS和PMA分別代表物理層的物理編碼子層和物理介質(zhì)接入層,這兩個模塊在配置過程中是可選的。PCS模塊專門負責(zé)信道的編解碼、糾錯和擾碼等,可以通過GMII或MII接口訪問,同時提供了TBI接口與物理介質(zhì)接入層進行通信。PMA模塊主要功能是實現(xiàn)數(shù)據(jù)在物理線路上串并或并串轉(zhuǎn)換,同時連接外部物理介質(zhì)相關(guān)(PMD)的設(shè)備,可以驅(qū)動銅線或光纖網(wǎng)路進行工作,與PMD設(shè)備接口為1.25 Gb/s串行口或者SGMII接口。整個千兆以太網(wǎng)系統(tǒng)模塊關(guān)系圖如圖3所示。

      圖3 千兆以太網(wǎng)模塊

      在 Altera提供的千兆以太網(wǎng) IP核中,MAC、PCS和PMA這三個模塊都是可選和可配置的。不同的選擇和配置,千兆以太網(wǎng)IP核與系統(tǒng)和物理芯片的接口是不同的,如表 1所示,‘’表示選擇了這個模塊,‘-’表示該模塊未被選中。

      表1 千兆以太網(wǎng)模塊配置及接口

      3.2 物理器件88E1111與千兆以太網(wǎng)的接口設(shè)計

      FPGA千兆以太網(wǎng)硬核與物理芯片88E1111的接口采用標(biāo)準(zhǔn)的SGMII接口。SGMII為串行吉比特媒體獨立接口,支持10/100/1 000 Mb/s的全雙工BASE-T功能,支持8 bit/10 bit編碼,速率為1.25 Gb/s。此外,SGMII是串行的,在連接千兆以太網(wǎng)硬核和物理芯片時,不需要提供額外的時鐘,容易實現(xiàn)。

      系統(tǒng)中SGMII接口如圖4所示,RX和TX為1.25 Gb/s的差分輸入和輸出信號,MDC/MDIO為MAC控制接口對88E1111芯片的控制方式,以實現(xiàn)對其的管理。

      圖4 物理芯片和千兆以太網(wǎng)的SGMII接口

      SGMII是1.25 Gb/s串行數(shù)據(jù)接口,根據(jù)表 1內(nèi)容選定系統(tǒng)中千兆以太網(wǎng)IP核包含MAC、PCS和PMA三個模塊。

      3.3 千兆以太網(wǎng)IP核的配置

      Altera提供千兆以太網(wǎng)控制器IP核,通過配置界面可將IP核配置為所需模式并進行IP核參數(shù)設(shè)置,配置界面分為以下4個配置頁面[6]。

      (1)Core Configuration:核配置選項,配置以太網(wǎng)功能模塊,是否包含PCS模塊、FIFO模塊,配置接口類型、端口數(shù)等。系統(tǒng)配置包含PCS和FIFO模塊,同時配置PCS接口類型為LVDS I/O(SGMII要求)。

      (2)MAC Options:MAC配置選項,配置 MAC模塊功能,系統(tǒng)配置包含MDIO模塊。

      (3)FIFO Options:FIFO存儲器選項,可設(shè)置FIFO存儲器類型以及存儲器數(shù)據(jù)長度。

      (4)PCS/SGMII Options:物理介質(zhì)接入層模塊配置頁面,配置物理層,系統(tǒng)配置包含SGMII橋接口。

      4 網(wǎng)絡(luò)數(shù)據(jù)采集系統(tǒng)設(shè)計

      網(wǎng)絡(luò)數(shù)據(jù)采集系統(tǒng)是基于Altera強大的SoPC Builder開發(fā)工具來完成系統(tǒng)設(shè)計。SoPC Builder是一個軟件工具,它屬于一種基于IP或平臺的設(shè)計方法。平臺包括Altera的Nios處理器、Avalon總線以及片內(nèi)外存儲器。利用SoPC Builder,用戶可以很方便地將各種IP模塊通過Avalon總線連接起來,形成一個完整的系統(tǒng)[7]。SoPC Builder已包含一些常用的外設(shè)IP模塊,用戶也可自定義外設(shè)IP。

      Avalon總線標(biāo)準(zhǔn)規(guī)定了Avalon-MM(Memory Mapped)和Avalon-ST(Strming)兩種接口。千兆以太網(wǎng)接口邏輯采用Avalon總線作為與其他模塊的互聯(lián)總線[8]。

      4.1 系統(tǒng)介紹

      為更好地實現(xiàn)數(shù)據(jù)鏈路和控制鏈路的分離,提高系統(tǒng)的執(zhí)行效率,千兆以太網(wǎng)模塊通過Avalon-ST接口和用戶程序進行網(wǎng)絡(luò)數(shù)據(jù)通信,以提升數(shù)據(jù)流傳遞過程中的效率。同時,系統(tǒng)自定義網(wǎng)絡(luò)數(shù)據(jù)接收模塊將千兆以太網(wǎng)解析的數(shù)據(jù)從Avalon-ST接口讀出,并存入指定地址處暫存,等待用戶程序處理。自定義網(wǎng)絡(luò)數(shù)據(jù)發(fā)送模塊將處理好的數(shù)據(jù)從RAM中讀出千兆以太網(wǎng)的Avalon-ST接口。

      系統(tǒng)自定義千兆以太網(wǎng)控制模塊,通過MAC核的Avalon-MM接口實現(xiàn)對MAC核、PCS和物理芯片的控制。系統(tǒng)詳細結(jié)構(gòu)圖如圖5所示。

      圖5 網(wǎng)絡(luò)數(shù)據(jù)包采集系統(tǒng)框圖

      4.2 控制模塊設(shè)計

      千兆以太網(wǎng)采用Avalon-MM從端口作為控制接口,接口提供了8 bit地址信號線,32 bit的讀寫控制信號,同時還提供了一些狀態(tài)信號。系統(tǒng)通過該控制接口,對MAC、PCS和外部物理器件進行寄存器初始化,實現(xiàn)對MAC、PCS和外部PHY的控制。

      自定義Control模塊是一個Avalon-MM主端口模塊,通過Avalon-MM總線接入MAC控制接口。在Control模塊內(nèi)部定義了一個狀態(tài)機,如圖6所示,依次實現(xiàn)對千兆以太網(wǎng)各模塊的控制。

      圖6 自定義control模塊狀態(tài)轉(zhuǎn)換

      Control模塊首先初始化外部PHY(Marvell 88E1111)的寄存器,啟動外部物理器件;然后,初始化PCS寄存器,實現(xiàn)PCS模塊的幀同步;最后,對MAC寄存器初始化,設(shè)置其工作模式并啟動MAC開始工作。

      初始化PHY的寄存器是通過MDC/MDIO端口實現(xiàn)的,MDC/MDIO是一個二線的控制端口,MDC是控制時鐘,MDIO是串行的輸入輸出數(shù)據(jù)。自定義Control模塊通過MAC的控制端口,對PHY寄存器初始化。初始化信號通過MAC模塊的翻譯,最終通過MDC/MDIO端口送入到PHY寄存器中。

      初始化PCS和MAC的寄存器都是直接通過Avalon-MM從端口映射實現(xiàn)的。

      4.3 自定義收發(fā)模塊設(shè)計

      千兆以太網(wǎng)解析模塊通過Avalon-ST接口和用戶程序進行通信。Avalon-ST接口本質(zhì)上已經(jīng)不同于Avalon-MM接口,它是一種非總線形式的連接,給設(shè)備之間提供了總線之外的點對點專用連接,以提升數(shù)據(jù)流傳遞過程中的效率。

      Avalon-ST提供的點到點數(shù)據(jù)傳輸不能直接將網(wǎng)絡(luò)數(shù)據(jù)流按網(wǎng)絡(luò)數(shù)據(jù)包為單位傳輸?shù)焦潭ㄎ恢?。將各網(wǎng)絡(luò)數(shù)據(jù)以包為單位送到RAM指定地址存儲,更方便用戶對網(wǎng)絡(luò)數(shù)據(jù)進行統(tǒng)計處理。

      因此,系統(tǒng)自定義網(wǎng)絡(luò)數(shù)據(jù)接收模塊將千兆以太網(wǎng)解析的數(shù)據(jù)從Avalon-ST接口讀出,并存入指定地址處暫存,等待用戶程序處理。自定義網(wǎng)絡(luò)數(shù)據(jù)發(fā)送模塊將處理好的數(shù)據(jù)從RAM中讀出,并送入千兆以太網(wǎng)的Avalon-ST接口。

      5 測試及結(jié)果分析

      為了測試千兆以太網(wǎng)的性能,本文采用Stratix IV FPGA與PC機通信的方式對千兆以太網(wǎng)的通信速率進行測試。PC機的硬件平臺為Intel奔騰3.0 GHz CPU,2 GB內(nèi)存,Broadcom netxtreme gigabitethernet網(wǎng)卡,TCP/IP最大傳輸單元大小為1 500。測試方法為PC機向StratixIV發(fā)送4 GB的測試數(shù)據(jù),經(jīng)千兆位解析后,重新發(fā)送返回至PC機。測試系統(tǒng)結(jié)構(gòu)圖如圖7所示。

      圖7 測試系統(tǒng)結(jié)構(gòu)圖

      自定義接收模塊將接收的數(shù)據(jù)重新由發(fā)送模塊發(fā)送回PC機。數(shù)據(jù)傳輸率最高達1 000 Mb/s。

      本文以Altera StratixGX系列FPGA為平臺,結(jié)合Marvell 88E1111網(wǎng)絡(luò)芯片,實現(xiàn)了千兆網(wǎng)絡(luò)數(shù)據(jù)采集系統(tǒng)。設(shè)計過程中采用SoPC技術(shù),利用Altera提供的千兆以太網(wǎng)IP核,完成FPGA系統(tǒng)無縫連接千兆以太網(wǎng),實現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)采集。測試表明,該系統(tǒng)能有效、高速地滿足網(wǎng)絡(luò)管理系統(tǒng)的要求。

      [1]王宏,龔正虎.Hits和Holds:識別大象流的兩種算法[J].軟件學(xué)報,2010(6):1392-1402.

      [2]李璇,敖光良.基于 FPGA的千兆以太網(wǎng)設(shè)計[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2008(5):63-64.

      [3]Marvell.88E1111 Data Sheet Integrated 10/100/1000 Ultra Gigabit Ethernet Transceiver[Z].2004-11

      [4]IEEE802.3.Part3:Carrier sense multiple access with collision detection(CSMA/CD)acess method and physicallayer specification[S],2005.

      [5]柳利軍,熊良芳.基于FPGA的千兆以太網(wǎng)交換芯片的設(shè)計[J].微電子學(xué)與計算機,2006,23(3):80-82.

      [6]Altera Corportion.Triple speed ethernet megacore function user guide[Z].2008.

      [7]徐欣,于紅旗.基于FPGA嵌入式系統(tǒng)設(shè)計[M].北京:機械工業(yè)出版社,2005.

      [8]李蘭英.Nios II嵌入式軟核-SOPC設(shè)計原理及應(yīng)用[M].北京:航天航空出版社,2006.

      猜你喜歡
      物理層寄存器以太網(wǎng)
      基于K-ML-MPWFRFT的物理層安全傳輸技術(shù)
      基于1500以太網(wǎng)養(yǎng)豬場的智能飼喂控制系統(tǒng)的設(shè)計與實現(xiàn)
      Lite寄存器模型的設(shè)計與實現(xiàn)
      公路聯(lián)網(wǎng)電子不停車收費系統(tǒng)路側(cè)單元物理層自動測試軟件研發(fā)
      分簇結(jié)構(gòu)向量寄存器分配策略研究*
      談實時以太網(wǎng)EtherCAT技術(shù)在變電站自動化中的應(yīng)用
      電子制作(2017年24期)2017-02-02 07:14:44
      多天線物理層安全傳輸系統(tǒng)性能分析
      一種90W高功率以太網(wǎng)供電系統(tǒng)的設(shè)計
      淺談EPON與工業(yè)以太網(wǎng)在貴遵高速公路中的應(yīng)用
      1Gbps電力線載波通信物理層算法設(shè)計
      電測與儀表(2014年8期)2014-04-04 09:19:26
      阿鲁科尔沁旗| 伊宁市| 稻城县| 富锦市| 涟水县| 白河县| 台中县| 阿巴嘎旗| 锡林浩特市| 万载县| 沙田区| 昔阳县| 丹阳市| 广饶县| 綦江县| 增城市| 吴忠市| 正安县| 尉氏县| 芦溪县| 巩义市| 黑龙江省| 方城县| 嵊泗县| 宝清县| 靖安县| 大关县| 万载县| 金川县| 寿宁县| 普兰店市| 伊川县| 凤冈县| 启东市| 石景山区| 三穗县| 霍林郭勒市| 威宁| 株洲县| 托克逊县| 许昌市|