《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于單片機的機載千兆交換機系統(tǒng)設(shè)計與實現(xiàn)
基于單片機的機載千兆交換機系統(tǒng)設(shè)計與實現(xiàn)
茹 偉,張軍才,趙臘才
(中航工業(yè)西安航空計算技術(shù)研究所,陜西 西安710068)
摘要: 針對機載千兆交換機系統(tǒng)配置與自測試(BIT)要求,設(shè)計了一種基于單片機的嵌入式交換機系統(tǒng)。針對軟件的移植性、擴(kuò)展性要求,采用基于UML的面向?qū)ο笤O(shè)計方法,建立了軟件的靜態(tài)模型,給出了軟件運行流程圖及設(shè)計。通過在單片機平臺上實現(xiàn),表明硬件功能正常,軟件能實現(xiàn)交換機系統(tǒng)的配置與自測試
中圖分類號: TP302.1
文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.2015.09.010

中文引用格式: 茹偉,張軍才,趙臘才. 基于單片機的機載千兆交換機系統(tǒng)設(shè)計與實現(xiàn)[J].電子技術(shù)應(yīng)用,2015,41(9):39-41.
英文引用格式: Ru Wei,Zhang Juncai,Zhao Lacai. Design and implementation of airborne gigabit switch system based on micro control unit[J].Application of Electronic Technique,2015,41(9):39-41.
Design and implementation of airborne gigabit switch system based on micro control unit
Ru Wei,Zhang Juncai,Zhao Lacai
Aeronautical Computing Technique Research Institute,Xi′an 710068,China
Abstract: Forcusing on the requirement of airborne gigabit switch system configuration and Build-In-Test(BIT), a kind of embedded gigabit switch system is designed based on micro control unit(MCU). Focusing on requirement of software portability and scalability, object-oriented design based on unified modeling language(UML) is adopted, static model of software is established,and software flow char and design are given. Via design and implementation on the MCU platform, the hardware function is normal,and the software can well implement the configuration and BIT for switch system.
Key words : embedded system;switch;MCU;object-oriented

  

0 引言

  隨著A380、B787等大型民用飛機的出現(xiàn),為滿足乘客旅途及舒適度要求而逐步提供了機上休閑及娛樂功能,當(dāng)乘客娛樂功能及數(shù)據(jù)迅速發(fā)展而帶來大量數(shù)據(jù)傳輸,傳統(tǒng)的AFDX網(wǎng)絡(luò)100 Mb/s傳輸帶寬已不適應(yīng)大量數(shù)據(jù)傳輸,基于IEEE802.3ah協(xié)議的EPON技術(shù)及基于時間觸發(fā)以太網(wǎng)的TTE技術(shù)都具有更高的傳輸速率[1]。

  目前,嵌入式技術(shù)已在機載軟件[2]、物聯(lián)網(wǎng)[3]等方面廣泛應(yīng)用,傳統(tǒng)的面向過程開發(fā)方法已不適應(yīng)當(dāng)前嵌入式軟件的大規(guī)模、高復(fù)雜的需求,面向?qū)ο?/a>設(shè)計技術(shù)采用封裝、繼承等抽象機制降低了系統(tǒng)復(fù)雜性,在嵌入式軟件的開發(fā)過程過中用來提高軟件的可重用性、可擴(kuò)展性[4]。本文設(shè)計了一種基于單片機的嵌入式千兆交換機系統(tǒng),實現(xiàn)對交換機進(jìn)行配置以及自測試,從而實現(xiàn)飛機娛樂系統(tǒng)對大量數(shù)據(jù)傳輸?shù)囊?。采用面向?qū)ο蟮腢ML開發(fā)技術(shù)[5],使嵌入式開發(fā)后軟件具有可移植性及良好擴(kuò)展性。

1 機載千兆交換機系統(tǒng)總體設(shè)計

  機載交換機系統(tǒng)需根據(jù)外部ID1~ID3離散量的不同配置,實現(xiàn)交換機的不同工作模式配置,并通過CPCI對外提供20路千兆以太網(wǎng);同時需周期性對交換機進(jìn)行自測試,將測試結(jié)果通過串口輸出。

  根據(jù)交換機系統(tǒng)需求,本文設(shè)計了一種機載交換機系統(tǒng)。通過單片機實現(xiàn)交換機不同工作模式的配置和自測試(BIT),實現(xiàn)對外提供20路千兆以太網(wǎng)。交換機選用Broadcom公司的一款二層9 口千兆以太網(wǎng)交換芯片BCM53118[6],芯片符合IEEE 802.3規(guī)范,8路10/100/1 000 Mb/s自適應(yīng)以太網(wǎng)口,對交換機進(jìn)行讀寫操作可通過SPI總線;同時此交換機有下電控制寄存器,可實現(xiàn)異常狀態(tài)下低功耗工作要求。

  根據(jù)系統(tǒng)需求及嵌入式軟件存儲要求,單片機程序存儲空間應(yīng)不低于128 KB的Flash,輸出測試結(jié)果的串口不少于1路,對交換機讀寫操作的SPI不少于1路,BIT測試觸發(fā)的定時器不少于1個,GPIO不少于3個,同時單片機應(yīng)有支持調(diào)試接口的JTAG。

  根據(jù)上述要求,單片機采用TI的TM4C1231H6PGE[7](簡稱TM4C)。TM4C是一款基于Cortex-M4F的處理器、具有256 KB的Flash、32 KB的SRAM、8路串口UART、4路SPI、多個定時器、1個JTAG口。機載千兆交換機系統(tǒng)硬件設(shè)計如圖1所示。

001.jpg

  圖1中,根據(jù)ID1~ID3離散量的不同值,實現(xiàn)交換機3種不同工作模式,即:(1)3個交換機獨立工作,此時SW2的Port5與SW1的Port5、SW2的Port6與SW3的Port6斷開;(2)3個交換機級聯(lián)工作,此時SW2的Port5與SW1的Port5、SW2的Port6與SW3的Port6連接;(3)3個交換機靜默工作,即3個交換機下電。

2 機載千兆交換機系統(tǒng)軟件總體設(shè)計

  2.1 軟件靜態(tài)模型


002.jpg

  按照機載千兆交換機系統(tǒng)要求,軟件功能劃分為初始化、交換機配置、BIT測試、總線接口。為實現(xiàn)嵌入式交換機系統(tǒng)軟件的移植性、擴(kuò)展性,本文采用基于UML的面向?qū)ο笤O(shè)計方法。交換機系統(tǒng)的靜態(tài)模型如圖2。類Sw_Config實現(xiàn)交換機配置功能;類BIT實現(xiàn)對交換機硬件檢測、交換機狀態(tài)的檢測結(jié)果輸出;類Timer實現(xiàn)整個軟件中精確定時事件觸發(fā);類UART實現(xiàn)通過串口收發(fā)數(shù)據(jù);類SPI實現(xiàn)單片機對交換機的讀寫操作;類Initialization實現(xiàn)對定時器、SPI、UART的初始化配置。

  2.2 軟件流程圖


003.jpg


  機載交換機系統(tǒng)軟件的運行流程如圖3。首先對所需要使用的資源進(jìn)行初始化,包括定時器、串口、SPI,當(dāng)初始化成功后讀取ID1~ID3離散量,根據(jù)不同離散量值完成對交換機的配置;周期執(zhí)行BIT測試,在BIT檢測結(jié)果無故障后通過串口將測試結(jié)果輸出。在初始化失敗或者周期執(zhí)行BIT測試時交換機有故障,則立即停止運行。

  2.3 軟件設(shè)計

  2.3.1 Initialization

  初始化是交換機系統(tǒng)軟件的入口,其主要功能如下:(1)完成UART的初始化,包括波特率、數(shù)據(jù)位、奇偶校驗、停止位;(2)完成SPI的初始化;(3)完成Timer初始化,包括定時器工作模式、定時器分辨率等。

  2.3.2 Sw_Config

  Sw_Config主要功能為:(1)ID1、ID2、ID3離散量值的獲取;(2)實現(xiàn)對交換機不同工作模式的配置。

  系統(tǒng)上電后,單片機首先讀取外部ID1~ID3的離散量值,然后根據(jù)離散量值對交換機進(jìn)行工作模式配置,即當(dāng)離散量ID1、1D2、ID3的取值為001b時,交換機配置為獨立工作模式;當(dāng)離散量ID1、DI2、ID3的取值為010b時,交換機配置為級聯(lián)工作模式;當(dāng)ID1、DI2、ID3的取值為其他時,交換機配置模式為下電模式。

  2.3.3 BIT

  機載交換機系統(tǒng)周期性BIT測試交換機硬件、交換機端口連接狀態(tài)。交換機硬件的檢測內(nèi)容是交換機是否有故障,交換機端口連接狀態(tài)內(nèi)容包含端口狀態(tài)(Up/Down)、端口速度(10 Mb/s、100 Mb/s、1 000 Mb/s)、傳輸方式(Full-Duplex/Half-Duplex)。在進(jìn)行周期性BIT時,檢測到任一交換機故障,則軟件終止運行。

  2.3.4 UART/SPI/TIMER

  UART類實現(xiàn)串口收發(fā)數(shù)據(jù),周期性BIT測試結(jié)果無故障后輸出測試結(jié)果。

  SPI類實現(xiàn)單片機對交換機的讀寫操作,SPI類包含SPI的讀寫操作。

  Timer實現(xiàn)整個交換機系統(tǒng)的精確定時,當(dāng)定時周期到時,完成周期性BIT測試。

3 機載千兆交換機系統(tǒng)實現(xiàn)

  根據(jù)上述基于單片機嵌入式千兆交換機系統(tǒng)硬件平臺及軟件設(shè)計,軟件在Keil 4.5.3開發(fā)環(huán)境上完成開發(fā),并通過J-LINK仿真器將程序下載到單片機上。通過串口調(diào)試助手,對以下3種情形的實現(xiàn)進(jìn)行驗證。

  (1)BIT測試結(jié)果無故障,離散量ID1、1D2、ID3的取值為001b時,交換機配置為獨立工作模式——模式1。當(dāng)SW1/SW2/SW3的Port7分別連接到PC上,實現(xiàn)驗證結(jié)果如圖4所示。

004.jpg

  (2)BIT測試結(jié)果無故障,散量ID1、DI2、ID3的取值為010b時,交換機配置為級聯(lián)工作模式——模式2。當(dāng)SW1的Port7連接到PC時,實現(xiàn)驗證結(jié)果如圖5所示。

005.jpg

  (3)BIT測試結(jié)果無故障,離散量ID1、1D2、ID3的取值為非001b/010b時,交換機配置為靜默工作模式——模式3,此時所有的交換機任何時候均處于down(非連接)狀態(tài)。實現(xiàn)驗證結(jié)果如圖6所示。

006.jpg

  (4)BIT測試結(jié)果有故障,SW1/SW2/SW3實現(xiàn)驗證結(jié)果與圖6一致,即任何時候均處于down(非連接)狀態(tài)。

4 結(jié)束語

  本文設(shè)計了一種基于單片機的嵌入式千兆交換機系統(tǒng)硬件平臺及軟件,根據(jù)外部離散量實現(xiàn)交換機不同工作模式的配置,實現(xiàn)了交換機的BIT測試功能。

  采用基于UML的面向?qū)ο笤O(shè)計方法,使得低層驅(qū)動獨立而不依賴硬件平臺,上層應(yīng)用具有良好的移植性。機載交換機系統(tǒng)軟件已在不同的單片機平臺上測試運行,均表明功能正常,滿足移植性、擴(kuò)展性要求。本文對機載交換機進(jìn)行自測試,可以有效地實現(xiàn)交換機健康管理,為故障診斷、維護(hù)測試的研究進(jìn)行了一些探索。

  參考文獻(xiàn)

  [1] 徐科華,陳謀,徐揚,等.民用飛機機載電子系統(tǒng)分布式體系架構(gòu)研究[J].工程設(shè)計學(xué)報,2012,19(6):494-498.

  [2] 黃志球,徐丙鳳,闞雙龍,等.嵌入式機載軟件安全性分析標(biāo)準(zhǔn)、方法及工具研究綜述[J].軟件學(xué)報,2012,25(2):200-218.

  [3] 張鋒,劉美.基于嵌入式與物聯(lián)網(wǎng)技術(shù)的城市綠化在線監(jiān)控系統(tǒng)[J].電子技術(shù)應(yīng)用,2014,40(7):13-16,20.

  [4] 王道乾,張楊.基于UML的嵌入式系統(tǒng)模型設(shè)計[J].計算機科學(xué),2006,33(11):293-295.

  [5] 車葵,程保中,牛曉太,等.UML在嵌入式系統(tǒng)開發(fā)中的研究與應(yīng)用[J].計算機工程與設(shè)計,2009,30(15):3559-3564.

  [6] Broadcom Corporation.BCM53118 datasheet[Z].2009.

  [7] Texas Instruments Incorporated. Stellaris TM4C1231H6PGE,Microcontroller datasheet[Z].2011.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。