• 
    

    
    

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

      VLAN及在千兆以太網(wǎng)MAC中的實(shí)現(xiàn)

      2013-09-19 10:18:08王立瑩王俊芳
      無線電工程 2013年1期
      關(guān)鍵詞:接收數(shù)據(jù)前導(dǎo)以太網(wǎng)

      王立瑩,王俊芳,曹 琨,李 鑫

      (中國電子科技集團(tuán)公司第五十四研究所,河北石家莊050081)

      0 引言

      VLAN是一種將局域網(wǎng)內(nèi)設(shè)備邏輯地劃分成獨(dú)立網(wǎng)段來實(shí)現(xiàn)虛擬工作組的新興技術(shù)。IEEE于1999年頒布了用以標(biāo)準(zhǔn)化虛擬局域網(wǎng)實(shí)現(xiàn)方案的802.1Q協(xié)議標(biāo)準(zhǔn)草案,即Virtual Bridged Local Area Networks協(xié)議[1],規(guī)定了VLAN的國際標(biāo)準(zhǔn)實(shí)現(xiàn),從而使不同廠商之間的VLAN互通成為可能。

      MAC是以太網(wǎng) IEEE 802.3[2]協(xié)議規(guī)定的數(shù)據(jù)鏈路層的一部分,是連接以太網(wǎng)物理層和網(wǎng)絡(luò)層的中間協(xié)議層,MAC協(xié)議是數(shù)據(jù)幀收發(fā)的基礎(chǔ),負(fù)責(zé)上層數(shù)據(jù)和物理層比特流的封裝和解封、流量控制以及差錯(cuò)校驗(yàn)等一系列功能[3]。在實(shí)際應(yīng)用中,要求網(wǎng)絡(luò)接口能對不同的數(shù)據(jù)幀進(jìn)行區(qū)分,VLAN技術(shù)正能滿足設(shè)計(jì)要求。下面從VLAN的基本內(nèi)容介紹出發(fā),討論使用Altera公司FPGA來完成千兆以太網(wǎng)MAC及VLAN的設(shè)計(jì)與實(shí)現(xiàn)。

      1 VLAN基本原理

      1.1 802.1Q的以太網(wǎng)幀結(jié)構(gòu)

      802.1 Q協(xié)議主要規(guī)定了VLAN的實(shí)現(xiàn)。與標(biāo)準(zhǔn)的以太網(wǎng)幀頭相比,VLAN報(bào)文格式在源地址后增加了一個(gè)4字節(jié)的VLAN標(biāo)簽。VLAN幀結(jié)構(gòu)[4]如圖1所示。

      圖1 VLAN幀結(jié)構(gòu)

      各個(gè)字段的詳細(xì)含義如下:

      ①Preamble:前導(dǎo)碼,此部分為7 byte交替出現(xiàn)的0和1;

      ② SFD(Start Frame Delimiter):幀起始符,此段用1 byte(11010101)作為幀開始的信號;

      ③ MAC Dest(MAC Destination Address):以太網(wǎng)幀的目的地址,包含6 byte;

      ④ MAC Source(MAC Source Address):以太網(wǎng)幀的源地址,包含6 byte;

      ⑤ Type/Length:類型或者長度字段,占用2 byte;

      ⑥Info:MAC幀中的有效數(shù)據(jù)字段;

      ⑦ FCS(Frame Check Sequence):幀校驗(yàn)序列字段,占用4 byte;

      ⑧ TPID(Tag Protocol Identifier):標(biāo)簽協(xié)議標(biāo)志,包含了一個(gè)固定的值0x8100;

      ⑨TCI(Tag Protocol Identifier):標(biāo)簽控制信息,占用2 byte,此字段中定義了此幀的優(yōu)先級PCP,占用3 bit,規(guī)范格式指示 CFI,占用1 bit,以及12 bit的VLAN ID。

      1.2 VLAN劃分的策略

      劃分VLAN的基本策略通常有:基于端口的VLAN劃分;基于MAC地址的VLAN劃分;基于網(wǎng)絡(luò)層的VLAN劃分;基于策略的VLAN劃分[5,6]等。

      本文中的千兆以太網(wǎng)MAC采用帶有標(biāo)記的幀結(jié)構(gòu)是為了區(qū)分控制幀和業(yè)務(wù)幀,對控制幀和業(yè)務(wù)幀賦予不同的VLAN ID,對不同類型幀進(jìn)行相應(yīng)的處理,控制幀在MAC中解析后放入接收FIFO中,CPU對控制幀進(jìn)行解析處理,業(yè)務(wù)幀則在去掉MAC頭后放入接收數(shù)據(jù)FIFO中。

      2 系統(tǒng)設(shè)計(jì)

      千兆以太網(wǎng)MAC的結(jié)構(gòu)框圖如圖2所示,主要由MAC發(fā)送模塊、MAC接收模塊和收發(fā) FIFO組成。

      圖2 千兆以太網(wǎng)MAC控制器的結(jié)構(gòu)

      FPGA采用 Altera公司的 CycloneⅡ系列的EP2C70F672芯片,千兆PHY芯片選用MARVEL公司的88E1111,外接RJ45網(wǎng)絡(luò)接口,該器件可工作于10/100/1 000M模式,雙工/半雙工模式可選,用于實(shí)現(xiàn)千兆以太網(wǎng)物理層協(xié)議。

      2.1 MAC接收模塊

      MAC接收模塊數(shù)據(jù)從PHY芯片經(jīng)GMII接口到MAC接收模塊,MAC接收模塊完成功能如下:

      ①移除幀的前導(dǎo)碼和幀起始符;

      ②過濾無效MAC地址的接收幀;

      ③判斷VLAN ID,區(qū)分業(yè)務(wù)幀和控制幀,并刪除VLAN;

      ④把接收幀寫到對應(yīng)接收FIFO;

      ⑤接收業(yè)務(wù)幀、控制幀計(jì)數(shù)。

      以太網(wǎng)接收部分MAC內(nèi)部狀態(tài)轉(zhuǎn)移圖如圖3所示。

      圖3 接收狀態(tài)機(jī)各狀態(tài)之間的轉(zhuǎn)換

      MAC接收模塊復(fù)位后,模塊處于IDLE狀態(tài)并監(jiān)聽總線的狀態(tài)。此狀態(tài)下,當(dāng)RX-DV信號變?yōu)楦唠娖奖砻鹘邮諗?shù)據(jù)有效,此時(shí)如果檢測到以太網(wǎng)幀的前導(dǎo)碼0x55,則自動進(jìn)入RX Premble狀態(tài),如果再接收到以太網(wǎng)數(shù)據(jù)幀的幀定界符0xD5,則MAC接收模塊進(jìn)入MAC Dest Check狀態(tài),通過與配置好的目的地址比對后,判斷是否與本站地址匹配,如果不匹配,則丟棄并返回IDLE狀態(tài),否則,進(jìn)入VLAN Check狀態(tài),通過與預(yù)先配置好的VLAN ID對比,判斷接收數(shù)據(jù)為業(yè)務(wù)幀還是控制幀,如為數(shù)據(jù)幀,則進(jìn)入RX Data狀態(tài)開始接收數(shù)據(jù),否則,進(jìn)入RX Protocol狀態(tài)開始接收控制字段。數(shù)據(jù)接收完畢后,則將接收到的數(shù)據(jù)存貯到對應(yīng)的接收FIFO。

      2.2 MAC發(fā)送模塊

      MAC發(fā)送模塊完成功能如下:

      ①判斷發(fā)送為業(yè)務(wù)字段或控制字段,賦予對應(yīng)的VLAN ID;

      ②幀傳輸以前生成相應(yīng)的前導(dǎo)碼和幀起始符;

      ③幀填充,使Info達(dá)到最小長度46 byte;

      ④計(jì)算并添加FCS到傳輸幀;

      ⑤以正確的間隔發(fā)送幀。

      ⑥發(fā)送業(yè)務(wù)幀、控制幀計(jì)數(shù)。

      以太網(wǎng)發(fā)送部分MAC內(nèi)部狀態(tài)轉(zhuǎn)移圖如圖4所示。

      MAC發(fā)送模塊復(fù)位后,進(jìn)入IDLE狀態(tài)。此狀態(tài)下,如果發(fā)送FIFO不為空,模塊轉(zhuǎn)入Data TYPE Check狀態(tài),如為業(yè)務(wù)幀,則VLAN ID配置成業(yè)務(wù)幀對應(yīng)值,否則,配置成控制幀對應(yīng)值。接著進(jìn)入TX Premble發(fā)送狀態(tài),先發(fā)送7 byte前導(dǎo)碼(0x55),再發(fā)送1 byte的幀起始符(0xD5),然后轉(zhuǎn)入TX VLAN狀態(tài),插入 VLAN TAG,先發(fā)送2 byte的 TPID(0x8100),再發(fā)送對應(yīng)的TCI,再轉(zhuǎn)入TX Data/Protocol狀態(tài),先發(fā)送6 byte的目的地址,然后發(fā)送6 byte的源地址,接著發(fā)送2 byte的數(shù)據(jù)/類型字段,接著發(fā)送有效數(shù)據(jù),如果發(fā)送有效數(shù)據(jù)小于46 byte,則轉(zhuǎn)入PAD狀態(tài),填充數(shù)據(jù)字段到46 byte,否則直接轉(zhuǎn)入TX FCS狀態(tài),填充數(shù)據(jù)發(fā)送后,也進(jìn)入TX FCS狀態(tài),F(xiàn)CS發(fā)送完后,轉(zhuǎn)入 IPG狀態(tài),等待12 byte數(shù)據(jù)傳輸時(shí)間后,返回IDLE狀態(tài),準(zhǔn)備下一幀數(shù)據(jù)發(fā)送。

      圖4 發(fā)送狀態(tài)機(jī)各狀態(tài)之間的轉(zhuǎn)換

      3 系統(tǒng)驗(yàn)證

      設(shè)計(jì)采用 Altera Cyclone II系列 FPGA芯片EP2C70F672,整個(gè)設(shè)計(jì)采用VHDL硬件描述語言來實(shí)現(xiàn),在Altera Quartus II 9.1開發(fā)平臺上完成整個(gè)模塊的設(shè)計(jì)、綜合及布局布線,利用InterWatch M7性能測試與協(xié)議分析儀構(gòu)建以太網(wǎng)數(shù)據(jù)包,并使用Altera Quartus II 9.1自帶的SignalTap II內(nèi)嵌邏輯分析儀在PC機(jī)上對千兆以太網(wǎng)MAC進(jìn)行數(shù)據(jù)包的捕獲分析。測試框圖如圖5所示。

      圖5 測試框圖

      測試步驟如下:

      ①通過以太網(wǎng)線,將電路板RJ45接口與測試儀InterWatch M7的以太網(wǎng)板卡正確連接;

      ②設(shè)置測試儀對應(yīng)以太網(wǎng)接口為自適應(yīng)模式;

      ③配置測試數(shù)據(jù)的鏈路層協(xié)議參數(shù)、IP地址、FCS和包長等;

      ④設(shè)置測試儀端口帶寬,啟動InterWatch M7;

      ⑤啟動SignalTap II內(nèi)嵌邏輯分析儀捕獲千兆以太網(wǎng)接口數(shù)據(jù)。

      SignalTap II邏輯分析儀接收的以太網(wǎng)幀數(shù)據(jù)為流數(shù)據(jù),具體為7 個(gè) 55,D5,00,45,45,45,01,00,00,45,45,45,02,00,81,00,00,21,08,00,45,00,00,2E,00,00,00,00,40,00,7C,CE,7F,00,00,01,7F,00,00,01,00,01,02 ~ 18,00,C6,7C,45,B3。其中,目的MAC地址為00-45-45-45-01-00,源MAC地址為00-45-45-45-02-00,TPID為0x8100,VLAN ID 為0x21,數(shù)據(jù)類型為0x0800,MAC幀中的有效數(shù)據(jù)字段為0x2E個(gè),即46個(gè),最后4個(gè)字節(jié)是FCS序列32’hC67C45B3。

      4 結(jié)束語

      介紹了VLAN的基本原理以及基于FPGA的千兆全雙工以太網(wǎng)MAC中VLAN的實(shí)現(xiàn)。上述設(shè)計(jì)可用于實(shí)現(xiàn)1 000 Mbps的全雙工以太網(wǎng)通信,完成千兆以太網(wǎng)數(shù)據(jù)的收發(fā),VLAN的添加與移除,業(yè)務(wù)幀、控制幀的區(qū)分,MAC地址過濾,包填充功能,并提供了收發(fā)統(tǒng)計(jì)計(jì)數(shù)等功能,通過了FPGA驗(yàn)證。

      [1]IEEE Std 802.1Q.Virtual Bridged Local Area Networks[S],2005.

      [2]IEEE Std 802.3.Telecommunications and Information Exchange between Systems Local and Etropolitan Area Networks Specific Requirements.Part 3:Carrier Sense Multiple Access with Collision Detection(CSMA/CD)Access Method and Physical Layer Specifications[S],2008.

      [3]謝希仁.計(jì)算機(jī)網(wǎng)絡(luò)(第4版)[M].北京:電子工業(yè)出版社,2003.

      [4]周仁邦,毛國華.VLAN干線傳輸協(xié)議[J].現(xiàn)代電子技術(shù),2006(8):93-97.

      [5]孫廣波,謝 俊,張 琛.3G網(wǎng)絡(luò)VLAN劃分方案[J].現(xiàn)代電子技術(shù),2010(15):96-98.

      [6]李德水.基于IEEE 802.1Q幀標(biāo)記的VLAN實(shí)現(xiàn)原理[J].信息技術(shù),2006(10):68-70.

      猜你喜歡
      接收數(shù)據(jù)前導(dǎo)以太網(wǎng)
      沖激噪聲背景下基于幅度預(yù)處理的測向新方法*
      基于1500以太網(wǎng)養(yǎng)豬場的智能飼喂控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      基于“三思而行”的數(shù)學(xué)章前導(dǎo)學(xué)課設(shè)計(jì)——以《數(shù)的開方》(導(dǎo)學(xué)課)為例
      低復(fù)雜度多輸入多輸出雷達(dá)目標(biāo)角度估計(jì)方法
      一種S模式ADS-B前導(dǎo)脈沖檢測方法
      談實(shí)時(shí)以太網(wǎng)EtherCAT技術(shù)在變電站自動化中的應(yīng)用
      電子制作(2017年24期)2017-02-02 07:14:44
      單片機(jī)模擬串口數(shù)據(jù)接收程序的實(shí)現(xiàn)及優(yōu)化
      一種90W高功率以太網(wǎng)供電系統(tǒng)的設(shè)計(jì)
      淺談EPON與工業(yè)以太網(wǎng)在貴遵高速公路中的應(yīng)用
      基于PCMCIA的ARINC429通信卡設(shè)計(jì)
      珲春市| 响水县| 秦安县| 会同县| 抚宁县| 淮滨县| 岳阳市| 安岳县| 株洲市| 宕昌县| 普格县| 嘉鱼县| 汝阳县| 凉城县| 太湖县| 石首市| 呼和浩特市| 老河口市| 亳州市| 尉氏县| 定安县| 手机| 十堰市| 积石山| 周宁县| 措勤县| 中宁县| 正宁县| 砀山县| 剑河县| 南岸区| 朔州市| 锡林郭勒盟| 南宁市| 涞源县| 东莞市| 章丘市| 广灵县| 河北区| 曲水县| 平安县|