亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于BF537的雙冗余以太網(wǎng)的設計與實現(xiàn)

        2010-04-12 00:00:00鮑敬源
        現(xiàn)代電子技術(shù) 2010年11期

        摘 要:首先對計算機通信中以太網(wǎng)控制器的雙冗余備份技術(shù)進行闡述,然后簡述了BF537及其結(jié)構(gòu)特點,提出了兩種基于Blackfin系列處理器BF537的雙冗余以太網(wǎng)實現(xiàn)方案,并分別介紹了其設計原理、關(guān)鍵技術(shù)及實現(xiàn)技術(shù),實現(xiàn)了以太網(wǎng)的實時在線檢測和切換,并對切換速度進行了測試。

        關(guān)鍵詞:以太網(wǎng); BF537; 冗余; 實時切換

        中圖分類號:TN919 文獻標識碼:A

        文章編號:1004-373X(2010)11-0111-03

        Design and Implementation of Dual-redundant Ethernet Based on BF537

        BAO Jing-yuan

        (PLA Naval Military Representative Office Stationed in the 701 Institute, Wuhan 430064, China)

        Abstract: The dual-redundant backup technology of the Ethernet controller in the computer communication is described, and the BF537 and its structural characteristics is outlined. Two kinds of realization programs based on Blackfin family of processors BF537 are proposed, and its design principle, key technology and implementation techniques are introduced respectively. The real-time online detection and switch of Ethernet are achieved, and the switching speed is tested.

        Keywords: Ethernet; BF537; redundancy; real-time switch

        0 引 言

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

        1 BF537結(jié)構(gòu)特點

        BF537是Blackfin家族的升級產(chǎn)品,其在標準Blackfin內(nèi)核的基礎上擁有更加豐富的接口,并在內(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ù)操作的能力,因此運算單元具備的靈活性可以滿足各種應用中信號處理的要求。每個32位的輸入寄存器可以作為2個16位的寄存器,因此每個ALU可以完成非常靈活的單16位算術(shù)運算。通過把寄存器當作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 1(L1)存儲器一般以全速運行,沒有或只有很少的延遲。Level 2(L2)/Level 3(L3)分布在片內(nèi)或片外,對它的訪問會耗費多個處理器周期。在L1級,指令存儲器只存放指令,2個數(shù)據(jù)存儲器存放數(shù)據(jù),一個專用的臨時數(shù)據(jù)存儲器存放堆棧和局部變量信息。在L2/L3級可以存放指令和數(shù)據(jù)。

        圖1 BF537內(nèi)部結(jié)構(gòu)示意圖

        2 雙冗余以太網(wǎng)構(gòu)建方案

        從硬件角度看,以太網(wǎng)接口電路主要由MAC控制器和物理層接口(PHY)兩大部分構(gòu)成,本文從是否具備獨立的MAC控制器出發(fā)提出了兩種不同的構(gòu)建雙冗余以太網(wǎng)的方案。

        2.1 基于獨立MAC控制器的設計方案

        上文中提到,BF537在內(nèi)部集成了一個支持IEEE 802.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)絡通道。

        圖2 冗余網(wǎng)絡構(gòu)建方案1

        如果要求雙冗余網(wǎng)絡通道擁有獨立的MAC控制器,則需在BF537外部擴展一個以太網(wǎng)控制器,見圖2,選擇同樣來自于SMSC公司的LAN91C111,通過BF537的外部總線與之相連。選擇LAN91C111的16位總線工作方式,其A0~A15與BF537的地址總線相連,D0~D15與BF537的數(shù)據(jù)總線相連,并由BF537的AMS信號控制LAN91C111的片選,外部PF管腳來響應來自LAN91C111的中斷請求。

        具有獨立MAC控制器的雙冗余以太網(wǎng)的設計方案如圖2所示。

        2.2 基于共用MAC控制器的設計方案

        從應用角度分析,即使系統(tǒng)擁有獨立的MAC控制器,在實際應用中也需要要求兩個MAC控制器擁有相同的物理地址,因為若MAC地址不同,冗余切換將引起協(xié)議層中ARP綁定表的變化,重新映射ARP表中物理地址和IP地址之間的關(guān)系將增加冗余切換的時間,影響到網(wǎng)絡通信實時性。

        因此本文提出了一套MAC控制器,兩個以太網(wǎng)接口芯片的方案。該設計方案通過一片CPLD將BF537的MII總線分別轉(zhuǎn)接到兩片LAN8187上,并由BF537來控制轉(zhuǎn)接的時機,如圖3所示。這樣形成了兩個以太網(wǎng)通信通道,大大簡化了設計,提高了冗余切換的實時性。

        圖3 冗余網(wǎng)絡構(gòu)建方案2

        3 冗余切換軟件設計

        3.1 網(wǎng)絡狀態(tài)監(jiān)測

        冗余切換的實現(xiàn)首先在于對網(wǎng)絡實時在線監(jiān)測,本文中檢測的方法基于LAN8187的寄存器。LAN8187寄存器定義如表1所示。其中,Basic Control Register為基本控制寄存器,通過配置其各位,可以完成芯片軟復位、10/100 MHz選擇、全雙工/半雙工選擇、LookBack模式選擇、自協(xié)商等功能。Basic Status Register為基本狀態(tài)寄存器,對其查詢可以得到自協(xié)商結(jié)果、網(wǎng)絡物理連接狀態(tài)等網(wǎng)絡基本狀態(tài)。PHY Identifier 1/ PHY Identifier 2兩個寄存器標識了芯片的Chip ID。因此,對網(wǎng)絡狀態(tài)的實時監(jiān)測實際上就是實時讀取Basic Status Register,并對結(jié)果做出判斷。

        3.2 程序設計

        可以通過操作BF537的寄存器EMAC_STAADD完成其對LAN8187寄存器的讀寫。

        表1 LAN8187寄存器定義

        REGISTER#REGISTERNAMEGroup

        0Basic Control RegisterBasic

        1Basic Status RegisterBasic

        2PHY Identifier 1Extended

        3PHY Identifier 2Extended

        4Auto-Negotiation Advertisement RegisterExtended

        5Auto-Negotiation Link Partner Ability RegisterExtended

        6Auto-Negotiation Expansion RegisterExtended

        16Silicon Revision RegisterVendor-specific

        17Mode Control/Status RegisterVendor-specific

        18Special ModesVendor-specific

        20~23ReservedVendor-specific

        26Symbol Error Counter RegisterVendor-specific

        27Comtrol/Status Indication RegisterVendor-specific

        28ReservedVendor-specific

        29Interrupt Source RegisterVendor-specific

        30Interrupt Mask RegisterVendor-specific

        31PHY Special Control/Status RegisterVendor-specific

        對LAN8187寄存器讀寫的函數(shù)定義為:

        u16 RdPHYReg(u16 PHYAddr, u16 RegAddr);

        void WrPHYReg(u16 PHYAddr, u16 RegAddr, u32 Data);

        其中PHYAddr為芯片的物理地址,RegAddr為寄存器地址。

        對Basic Status Register的監(jiān)測采用輪詢的機制,即設定一個信號量Link_status,其周期為2 ms,因此每隔2 ms,Ether_moniter線程被觸發(fā)一次。在Ether_moniter中通過調(diào)用RdPHYReg()函數(shù),讀取Basic Status Register的值,并判斷Link位。Ether_moniter線程流程圖如圖4所示。

        對于設計方案1來講,當檢測到需要進行網(wǎng)絡切換時,需要停用當前網(wǎng)卡初始化備用網(wǎng)絡LAN91C111并設定相同的IP地址以及MAC地址。對于方案2,則只需要通知CPLD將通道切換至備用的LAN8187接口。

        4 冗余切換測試

        用Visual C++6.0開發(fā)簡單的上位機測試程序,每隔1 ms發(fā)送一個UDP數(shù)據(jù)報,并給每個數(shù)據(jù)報編寫不同的序號。在BF537中編寫程序不斷接收上位機發(fā)來的數(shù)據(jù)報。然后制造網(wǎng)絡通信故障,本文構(gòu)建的冗余網(wǎng)絡將會自動切換到備用通道繼續(xù)接收上位機的數(shù)據(jù)報。最后通過檢測接收到數(shù)據(jù)報的序號來確定冗余切換所消耗的時間。分別對兩種方案所構(gòu)建的冗余網(wǎng)絡的切換進行測試,結(jié)果如表2所示。

        圖4 網(wǎng)絡狀態(tài)監(jiān)測流程圖

        表2 冗余切換測試結(jié)果

        方案平均丟包數(shù)平均切換時間 /ms

        方案11 2001 200

        方案233

        從實驗結(jié)果可以看出方案2具有快速切換的優(yōu)點,丟包率低;方案1平均丟包數(shù)遠大于方案2,并且切換時間長。

        5 結(jié) 語

        提出了兩種基于BF537構(gòu)建雙冗余以太網(wǎng)的方案,分別論述了其原理、器件選擇、連接方法,并做出軟件設計。最后經(jīng)過測試,方案2的切換效果和時間非常理想,最終在實際項目中得到了應用。

        參考文獻

        [1]謝希仁.計算機網(wǎng)絡\\.4版.北京:電子工業(yè)出版社,2006.

        [2]W Richard Stevens.TCP/IP詳解卷1:協(xié)議\\.北京:機械工業(yè)出版社,2000.

        [3]陳堅,陳偉.Visual C++網(wǎng)絡高級編程\\.北京:人民郵電出版社,2001.

        [4]Analog Devices.ADSP-BF537 Blackfin Processor Hardware Reference. Preliminary Revision 0.3\\. Analog Devices,Inc., 2005.

        [5]IEEE. IEEE Std 802.3[EB/OL]. \\. www.IEEE.com, 2002.

        [6]毛曉明,吳玉國.基于嵌入式技術(shù)和CAN總線的車輛配電系統(tǒng)\\.現(xiàn)代電子技術(shù),2009,32(7):144-146,150.

        国产精品无码久久综合网| 亚洲av精品一区二区| 久久想要爱蜜臀av一区二区三区| 色窝窝亚洲av网在线观看| 男人添女人下部高潮全视频| 狠狠躁夜夜躁人人爽天天| 精品少妇人妻久久免费| 中文字幕精品人妻在线| 在线成人爽a毛片免费软件| 中文字幕喷水一区二区| 亚洲一区二区高清在线| 国模91九色精品二三四| 亚洲成在人线av品善网好看| 国产成人无码一二三区视频| 伊人色综合九久久天天蜜桃| 国产精品成人av一区二区三区| 在线观看视频播放| 无码国产精品一区二区免费16| 亚洲av毛片成人精品| 美女在线一区二区三区视频| 凹凸在线无码免费视频| 国产精品第1页在线观看| 一区二区日本影院在线观看| 亚洲av高清一区二区三| 日本一卡2卡3卡四卡精品网站| 国产清品夜色一区二区三区不卡| 国产在线a免费观看不卡| 国产精品亚洲片在线观看不卡| 久久久久国产精品免费免费搜索| 一区二区三区国产高潮| 日本视频在线观看一区二区| 国产h视频在线观看| 亚洲日本一区二区在线观看| 在线视频播放观看免费 | 手机看片久久第一人妻| 成人三级a视频在线观看| 国产va精品免费观看| 亚洲一区二区三区精品久久av | 在线播放国产女同闺蜜| av网站韩日在线观看免费| 亚洲va中文字幕无码一二三区|