《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于BF537的雙冗余以太網(wǎng)的設(shè)計與實現(xiàn)
基于BF537的雙冗余以太網(wǎng)的設(shè)計與實現(xiàn)
鮑敬源 現(xiàn)代電子技術(shù)
摘要: 隨著信息技術(shù)的高速發(fā)展,網(wǎng)絡(luò)通信也顯得越發(fā)重要,以太網(wǎng)也成為了各種控制系統(tǒng)接口互聯(lián)的主要媒介。在金融機構(gòu)、政府部門、軍事應(yīng)用等特殊應(yīng)用場合對網(wǎng)絡(luò)系統(tǒng)的穩(wěn)定性要求非常高,為了提高系統(tǒng)的可靠性和抗毀性,常常采用雙冗余的設(shè)計方式。雙冗余網(wǎng)絡(luò)的實現(xiàn)是以故障檢測為基礎(chǔ),通過軟件檢查、交換機及網(wǎng)絡(luò)節(jié)點的網(wǎng)卡協(xié)同處理共同完成的。冗余網(wǎng)絡(luò)的構(gòu)建方式通常是在每個網(wǎng)絡(luò)節(jié)點采用雙網(wǎng)卡,中間用兩個HUB或交換機相連。這樣當(dāng)某個節(jié)點的一塊網(wǎng)卡、網(wǎng)線或者HUB出現(xiàn)故障時,系統(tǒng)會馬上啟用另一塊冗余網(wǎng)卡使得系統(tǒng)仍能夠正常運行。本文基于BF537提出了兩種冗余網(wǎng)絡(luò)的構(gòu)建方案和實現(xiàn)方法。
Abstract:
Key words :

       隨著信息技術(shù)的高速發(fā)展,網(wǎng)絡(luò)通信也顯得越發(fā)重要,以太網(wǎng)也成為了各種控制系統(tǒng)接口互聯(lián)的主要媒介。在金融機構(gòu)、政府部門、軍事應(yīng)用等特殊應(yīng)用場合對網(wǎng)絡(luò)系統(tǒng)的穩(wěn)定性要求非常高,為了提高系統(tǒng)的可靠性和抗毀性,常常采用雙冗余的設(shè)計方式。雙冗余網(wǎng)絡(luò)的實現(xiàn)是以故障檢測為基礎(chǔ),通過軟件檢查、交換機及網(wǎng)絡(luò)節(jié)點的網(wǎng)卡協(xié)同處理共同完成的。冗余網(wǎng)絡(luò)的構(gòu)建方式通常是在每個網(wǎng)絡(luò)節(jié)點采用雙網(wǎng)卡,中間用兩個HUB或交換機相連。這樣當(dāng)某個節(jié)點的一塊網(wǎng)卡、網(wǎng)線或者HUB出現(xiàn)故障時,系統(tǒng)會馬上啟用另一塊冗余網(wǎng)卡使得系統(tǒng)仍能夠正常運行。本文基于BF537提出了兩種冗余網(wǎng)絡(luò)的構(gòu)建方案和實現(xiàn)方法。

  1 BF537結(jié)構(gòu)特點
  BF537是Blackfin家族的升級產(chǎn)品,其在標準Blackfin內(nèi)核的基礎(chǔ)上擁有更加豐富的接口,并在內(nèi)部集成了一個以太網(wǎng)MAC控制器。BF537的內(nèi)部結(jié)構(gòu)如圖1所示。
  Blackfin內(nèi)核包含2個乘/累加器(MAC),2個40位的ALU,4個視頻專用8位ALU和1個40位移位器。運算單元處理來自寄存器組的8位、16位或者32位數(shù)據(jù)。每個MAC每周期可完成一個16位乘16位的乘法運算,并把結(jié)果累加到40位的累加器中,提供8位的精度擴展。ALU單元執(zhí)行標準的算術(shù)和邏輯運算,由于2個ALU具備對16位或32位數(shù)據(jù)操作的能力,因此運算單元具備的靈活性可以滿足各種應(yīng)用中信號處理的要求。每個32位的輸入寄存器可以作為2個16位的寄存器,因此每個ALU可以完成非常靈活的單16位算術(shù)運算。通過把寄存器當(dāng)作2個16位的操作數(shù)使用,雙16位或單32位操作可以在1個周期中完成。更好地利用第二個ALU,四個16位操作可以簡單地完成,加速了每個周期的吞吐量。強大的40位移位器功能豐富,可以對數(shù)據(jù)進行移位、循環(huán)移位、歸一化、提取和存儲等操作。運算單元所使用的數(shù)據(jù)來自具有16個16位操作數(shù)或8個32位操作數(shù)的寄存器組。
 
  同時BF537把存儲器視為一個統(tǒng)一的4 GB的地址空間,使用32位地址并采用分級的存儲器結(jié)構(gòu)。Level(L1)存儲器一般以全速運行,沒有或只有很少的延遲。Level 2(L2)/Level 3(L3)分布在片內(nèi)或片外,對它的訪問會耗費多個處理器周期。在L1級,指令存儲器只存放指令,2個數(shù)據(jù)存儲器存放數(shù)據(jù),一個專用的臨時數(shù)據(jù)存儲器存放堆棧和局部變量信息。在L2/L3級可以存放指令和數(shù)據(jù)。
 
  2 雙冗余以太網(wǎng)構(gòu)建方案
  從硬件角度看,以太網(wǎng)接口電路主要由MAC控制器和物理層接口(PHY)兩大部分構(gòu)成,本文從是否具備獨立的MAC控制器出發(fā)提出了兩種不同的構(gòu)建雙冗余以太網(wǎng)的方案。
 
  2.1 基于獨立MAC控制器的設(shè)計方案
  上文中提到,BF537在內(nèi)部集成了一個支持IEEE802.3 MAC控制層協(xié)議的MAC控制器,只需要在外部外接一個以太網(wǎng)接口芯片,便可以形成一個完整的以太網(wǎng)通道。因此本文選擇了SMSC公司的LAN8187,它提供了標準的MII總線接口,可以方便地與BF537相連接,連接方式如圖2所示。其中在MII總線上進行數(shù)據(jù)的收發(fā),MDC和MDIO則用來完成對接口芯片LAN8187寄存器的讀寫。本文在下面稱由BF537的MAC控制器與物理層接口芯片LAN8187構(gòu)成的以太網(wǎng)通道為主網(wǎng)絡(luò)通道。
 
  如果要求雙冗余網(wǎng)絡(luò)通道擁有獨立的MAC控制器,則需在BF537外部擴展一個以太網(wǎng)控制器,見圖2,選擇同樣來自于SMSC公司的LAN91C-111,通過BF537的外部總線與之相連。選擇LAN91C111的16位總線工作方式,其A0~A15與BF537的地址總線相連,DO~D15與BF537的數(shù)據(jù)總線相連,并由BF537的AMS信號控制LAN91C111的片選,外部PF管腳來響應(yīng)來自LAN91C111的中斷請求。
 
  具有獨立MAC控制器的雙冗余以太網(wǎng)的設(shè)計方案如圖2所示。

  2.2 基于共用MAC控制器的設(shè)計方案
  從應(yīng)用角度分析,即使系統(tǒng)擁有獨立的MAC控制器,在實際應(yīng)用中也需要要求兩個MAC控制器擁有相同的物理地址,因為若MAC地址不同,冗余切換將引起協(xié)議層中ARP綁定表的變化,重新映射ARP表中物理地址和IP地址之間的關(guān)系將增加冗余切換的時間,影響到網(wǎng)絡(luò)通信實時性。
 
  因此本文提出了一套MAC控制器,兩個以太網(wǎng)接口芯片的方案。該設(shè)計方案通過一片CPLD將BF537的MII總線分別轉(zhuǎn)接到兩片LAN8187上,并由BF537來控制轉(zhuǎn)接的時機,如圖3所示。這樣形成了兩個以太網(wǎng)通信通道,大大簡化了設(shè)計,提高了冗余切換的實時性。
      3 冗余切換軟件設(shè)計
 
  3.1 網(wǎng)絡(luò)狀態(tài)監(jiān)測
  冗余切換的實現(xiàn)首先在于對網(wǎng)絡(luò)實時在線監(jiān)測,本文中檢測的方法基于LAN8187的寄存器。LAN8187寄存器定義如表1所示。其中,Basic Control Register為基本控制寄存器,通過配置其各位,可以完成芯片軟復(fù)位、lO/100 MHz選擇、全雙工/半雙工選擇、LookBack模式選擇、自協(xié)商等功能。Basic Status Register為基本狀態(tài)寄存器,對其查詢可以得到自協(xié)商結(jié)果、網(wǎng)絡(luò)物理連接狀態(tài)等網(wǎng)絡(luò)基本狀態(tài)。PHY IdenTIfier 1/PHY Identitier 2兩個寄存器標識了芯片的Chip ID。
  因此,對網(wǎng)絡(luò)狀態(tài)的實時監(jiān)測實際上就是實時讀取Basic Status Register,并對結(jié)果做出判斷。
 
  3.2 程序設(shè)計
  可以通過操作BF537的寄存器EMAC_STAADD完成其對LAN8187寄存器的讀寫。
 
  對LAN8187寄存器讀寫的函數(shù)定義為:
 
  u16 RdPHYReg(u16 PHYAddr,u16 RegAddr);
 
  void WrPHYReg(u16 PHYAddr,u16 RegAddr,u32 Data);
 
  其中PHYAddr為芯片的物理地址,RegAddr為寄存器地址。
 
  對Basic Status Register的監(jiān)測采用輪詢的機制,即設(shè)定一個信號量Link_status,其周期為2ms,因此每隔2 ms,Ether_moniter線程被觸發(fā)一次。在Ether_moniter中通過調(diào)用RdPHYReg()函數(shù),讀取Basic Status Register的值,并判斷Link位。Ether-moniter線程流程圖如圖4所示。
 
  對于設(shè)計方案1來講,當(dāng)檢測到需要進行網(wǎng)絡(luò)切換時,需要停用當(dāng)前網(wǎng)卡初始化備用網(wǎng)絡(luò)LAN91C111并設(shè)定相同的lP地址以及MAC地址。對于方案2,則只需要通知CPLD將通道切換至備用的LAN8187接口。
 
  4 冗余切換測試
  用Visual C++6.O開發(fā)簡單的上位機測試程序,每隔1 ms發(fā)送一個UDP數(shù)據(jù)報,并給每個數(shù)據(jù)報編寫不同的序號。在BF537中編寫程序不斷接收上位機發(fā)來的數(shù)據(jù)報。然后制造網(wǎng)絡(luò)通信故障,本文構(gòu)建的冗余網(wǎng)絡(luò)將會自動切換到備用通道繼續(xù)接收上位機的數(shù)據(jù)報。最后通過檢測接收到數(shù)據(jù)報的序號來確定冗余切換所消耗的時間。分別對兩種方案所構(gòu)建的冗余網(wǎng)絡(luò)的切換進行測試,結(jié)果如表2所示。
  從實驗結(jié)果可以看出方案2具有快速切換的優(yōu)點,丟包率低;方案1平均丟包數(shù)遠大于方案2,并且切換時間長。
 
  5 結(jié)語
  提出了兩種基于BF537構(gòu)建雙冗余以太網(wǎng)的方案,分別論述了其原理、器件選擇、連接方法,并做出軟件設(shè)計。最后經(jīng)過測試,方案2的切換效果和時間非常理想,最終在實際項目中得到了應(yīng)用。
 
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲欧洲一区二区在线播放| 亚洲国产日韩欧美综合久久 | 欧美理论片在线观看| 欧美在线三级| 亚洲欧美美女| 亚洲视频一区二区| 亚洲色诱最新| 一区二区三区欧美在线观看| 亚洲精品免费在线观看| 亚洲国产午夜| 亚洲人线精品午夜| 亚洲精品一区二区三区不| 亚洲国产精品va在线看黑人动漫| 欧美一区二区视频97| 先锋资源久久| 性刺激综合网| 欧美在线视频在线播放完整版免费观看| 亚洲欧美日本国产有色| 亚洲一区二区三区在线看| 一区二区三区视频在线播放| 99精品国产99久久久久久福利| 亚洲美女精品一区| 日韩午夜电影| 一区二区动漫| 亚洲性线免费观看视频成熟| 亚洲一区观看| 午夜精品一区二区三区在线| 欧美一区二区视频97| 久久国产欧美| 久久精品国产第一区二区三区| 久久国产成人| 亚洲精品久久嫩草网站秘色| 亚洲另类自拍| 亚洲一区二区三区中文字幕在线 | 国产一区二区三区在线免费观看| 国产午夜精品一区二区三区视频| 国产一区二区三区在线观看网站| 黄色亚洲免费| 亚洲欧洲综合另类在线| 99re热这里只有精品视频| av不卡在线| 亚洲在线播放| 久久精品一区二区| 亚洲免费av电影| 在线一区二区三区四区| 午夜一区在线| 久久在线精品| 欧美美女操人视频| 国产精品二区影院| 国产一区二区三区在线观看网站| 亚洲国产成人精品久久| 日韩天天综合| 亚洲欧美日韩第一区| 亚洲国产视频a| 亚洲午夜高清视频| 久久久久久久久久久久久9999| 欧美成人午夜影院| 欧美体内she精视频| 国产日韩一区二区三区| 亚洲黄色毛片| 亚洲综合电影一区二区三区| 久久精品视频在线免费观看| 夜色激情一区二区| 欧美在线一二三| 欧美韩国日本一区| 国产女人aaa级久久久级| 在线欧美日韩国产| 亚洲天堂免费在线观看视频| 久久精品九九| 亚洲在线电影| 久久婷婷综合激情| 欧美性猛交xxxx免费看久久久| 国产在线拍偷自揄拍精品| av成人免费| 亚洲国产欧美久久| 亚洲欧美日韩精品一区二区 | 久久亚洲色图| 国产精品国产三级国产普通话三级 | 麻豆乱码国产一区二区三区| 国产精品v欧美精品v日韩| 国外精品视频| 制服诱惑一区二区| 亚洲日本va午夜在线影院| 性欧美长视频| 欧美日本一区| 有坂深雪在线一区| 亚洲欧美日韩在线观看a三区| 亚洲裸体视频| 久久躁狠狠躁夜夜爽| 国产精品久久久| 亚洲人成在线观看一区二区| 西瓜成人精品人成网站| 亚洲午夜精品久久久久久app| 久久躁日日躁aaaaxxxx| 国产精品一区二区三区免费观看| 亚洲国产小视频| 欧美在线免费| 亚洲欧美资源在线| 欧美日韩岛国| 亚洲国产精品久久久| 欧美一级大片在线观看| 亚洲欧美日韩成人| 欧美日韩亚洲视频| 亚洲黑丝在线| 91久久视频| 久久久久久久久久久久久久一区| 国产精品视频久久| 一本色道久久综合亚洲精品不| 亚洲精品乱码久久久久久黑人| 久久午夜国产精品| 国产日韩欧美制服另类| 亚洲综合视频一区| 午夜精品久久| 国产精品乱子久久久久| 99热这里只有精品8| 在线亚洲一区观看| 欧美日韩国产在线| 亚洲精品午夜| 日韩视频在线永久播放| 欧美福利在线观看| 在线免费高清一区二区三区| 亚洲第一精品福利| 久久亚洲精品一区二区| 国产综合一区二区| 亚洲二区在线| 老司机久久99久久精品播放免费 | 欧美一级理论片| 国产精品一区二区欧美| 一区二区三区日韩欧美精品| 亚洲综合国产| 国产乱子伦一区二区三区国色天香 | 一区二区三区高清| 亚洲永久视频| 国产精品青草久久久久福利99| 亚洲视频一区在线观看| 午夜精品久久久| 国产精一区二区三区| 亚洲欧美另类国产| 久久精品国产亚洲一区二区三区| 国产日韩精品一区二区| 欧美一区二区三区精品电影| 久久青草欧美一区二区三区| 在线观看日韩| aa国产精品| 国产精品红桃| 西西裸体人体做爰大胆久久久| 久久久女女女女999久久| 精品1区2区3区4区| 日韩亚洲在线| 欧美午夜宅男影院| 欧美亚洲色图校园春色| 免费成人高清| 亚洲精品一区二区在线观看| 亚洲主播在线观看| 国产日韩精品视频一区| 亚洲黄色精品| 欧美日韩一区视频| 亚洲欧美中文另类| 久久噜噜噜精品国产亚洲综合 | 韩国av一区二区三区| 亚洲欧洲在线播放| 欧美日韩国产在线播放网站| 亚洲网站在线| 久久乐国产精品| 亚洲伦理自拍| 先锋亚洲精品| 1000部国产精品成人观看| 一卡二卡3卡四卡高清精品视频| 国产精品久久久久aaaa| 欧美中文字幕不卡| 免费在线观看日韩欧美| av成人老司机| 久久影音先锋| 一区二区免费在线观看| 久久精品免费播放| 亚洲欧洲精品一区二区三区| 欧美一级免费视频| 亚洲人成亚洲人成在线观看| 欧美亚洲视频一区二区| 在线观看国产成人av片| 亚洲专区一二三| 精品电影一区| 亚洲欧美日韩久久精品| 亚洲国产高清自拍| 欧美影片第一页| 亚洲国产欧美日韩| 久久成人精品视频| 日韩视频免费观看高清完整版| 久久精品国产精品亚洲精品| 日韩视频免费观看| 理论片一区二区在线| 亚洲免费网址| 欧美日本一道本在线视频| 久久国产88| 国产精品欧美一区二区三区奶水| 亚洲欧洲日韩女同| 国产精品视频大全| 日韩一区二区精品视频| 国外成人在线视频| 性欧美办公室18xxxxhd|