吳 斌,張文靜,屈盼讓?zhuān)螘早?/p>
(1.中航工業(yè)西安航空計(jì)算技術(shù)研究所,陜西 西安 710119;2.陜西省建筑設(shè)計(jì)研究院有限責(zé)任公司,陜西 西安 710018)
?
一種基于VxWorks操作系統(tǒng)的余度系統(tǒng)分區(qū)加載技術(shù)
吳斌1,張文靜2,屈盼讓1,任曉琨1
(1.中航工業(yè)西安航空計(jì)算技術(shù)研究所,陜西 西安 710119;2.陜西省建筑設(shè)計(jì)研究院有限責(zé)任公司,陜西 西安 710018)
摘要:針對(duì)機(jī)載余度系統(tǒng),提出一種軟件加載技術(shù)。機(jī)載計(jì)算機(jī)每個(gè)通道中均裝載全部四個(gè)通道的控制軟件,通過(guò)通道識(shí)別信號(hào),加載不同的控制軟件,因此可以實(shí)現(xiàn)各個(gè)余度在控制不同系統(tǒng)功能的同時(shí)具有可互換性,并且大大提高機(jī)載計(jì)算機(jī)的可靠性。
關(guān)鍵詞:余度系統(tǒng);VxWorks;分區(qū)加載;可互換性
隨著機(jī)載電子設(shè)備綜合化程度的不斷深化和出勤率指標(biāo)的不斷提高,越來(lái)越多的與生命安全攸關(guān)的機(jī)載系統(tǒng)運(yùn)行依賴于計(jì)算機(jī),如飛行管理系統(tǒng)、機(jī)電綜合管理系統(tǒng)、環(huán)境與生命防護(hù)系統(tǒng)及發(fā)動(dòng)機(jī)控制系統(tǒng)等。對(duì)于此類(lèi)關(guān)鍵系統(tǒng),機(jī)載計(jì)算機(jī)工作的任務(wù)可靠性將直接關(guān)系飛機(jī)飛行安全,機(jī)載計(jì)算機(jī)一旦運(yùn)行錯(cuò)誤,將造成巨大的生命財(cái)產(chǎn)損失[1]。提高機(jī)載計(jì)算機(jī)任務(wù)可靠性的一個(gè)有效措施就是進(jìn)行余度設(shè)計(jì)。
隨著飛機(jī)飛行高度、速度、機(jī)動(dòng)性和適應(yīng)性的不斷提高,外界工作條件的變化也越來(lái)越復(fù)雜。飛機(jī)需要適應(yīng)外界環(huán)境條件的急劇變化,這就要求機(jī)載計(jì)算機(jī)具有在急劇變化條件下的適應(yīng)性。這不僅增加了機(jī)載計(jì)算機(jī)的復(fù)雜性,而且對(duì)其可靠性也提出了更高要求,所以要求機(jī)載計(jì)算機(jī)在余度設(shè)計(jì)上有新的突破。
本文從有余度設(shè)計(jì)的機(jī)載計(jì)算機(jī)上出發(fā),提出了一種基于VxWorks操作系統(tǒng),適用于多余度機(jī)載計(jì)算機(jī)的分區(qū)加載技術(shù)。通過(guò)對(duì)分區(qū)加載技術(shù)模型的分析,證明該技術(shù)可大大提高機(jī)載計(jì)算機(jī)的可靠性,并在一定程度上可以實(shí)現(xiàn)同機(jī)上多產(chǎn)品的可互換性。
1嵌入式實(shí)時(shí)操作系統(tǒng)VxWorks[2]
VxWorks是WindRiver 公司開(kāi)發(fā)的一種高性能的嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS),以其優(yōu)良的可靠性、開(kāi)放性、實(shí)時(shí)性和易用性贏得了大量的客戶。VxWorks 是目前嵌入式系統(tǒng)領(lǐng)域中使用最廣泛、市場(chǎng)占有率最高的系統(tǒng),被廣泛地應(yīng)用在通信、軍事、航空、航天等高精尖技術(shù)及實(shí)時(shí)性要求極高的領(lǐng)域中。
穩(wěn)定、可靠一直是VxWorks 的一個(gè)突出優(yōu)點(diǎn)。自從對(duì)中國(guó)的銷(xiāo)售解禁以來(lái),VxWorks 以其良好的可靠性在中國(guó)贏得了越來(lái)越多的用戶。
VxWorks實(shí)時(shí)性非常強(qiáng),VxWorks提供的多任務(wù)機(jī)制中對(duì)任務(wù)的控制采用了優(yōu)先級(jí)搶占和輪轉(zhuǎn)調(diào)度機(jī)制,也充分保證了可靠的實(shí)時(shí)性,使同樣的硬件配置能滿足更強(qiáng)的實(shí)時(shí)性要求,為應(yīng)用的開(kāi)發(fā)留下更大的余地。
VxWorks具有可裁剪性,內(nèi)核最小為8 kb,即便加上其它必要模塊,所占用的空間也很小,且不失其實(shí)時(shí)、多任務(wù)的系統(tǒng)特征。由于它的高度靈活性,用戶可以很容易地對(duì)這一操作系統(tǒng)進(jìn)行定制或作適當(dāng)開(kāi)發(fā),來(lái)滿足自己的實(shí)際應(yīng)用需要。
2分區(qū)加載技術(shù)模型
對(duì)于多余度或單余度多裝配機(jī)載計(jì)算機(jī),每個(gè)余度可以使用完全相同的硬件配置分別對(duì)飛機(jī)相關(guān)系統(tǒng)進(jìn)行控制,各個(gè)余度中分別裝載控制不同模塊的應(yīng)用軟件,但此時(shí)對(duì)于機(jī)載產(chǎn)品來(lái)說(shuō),每個(gè)余度在飛機(jī)中裝配位置固定。為了實(shí)現(xiàn)各個(gè)余度在控制不同系統(tǒng)功能的同時(shí)具有可互換性,本文提出了分區(qū)加載技術(shù)[3,4]。
假設(shè)某機(jī)載計(jì)算機(jī)為四余度模型,即機(jī)載計(jì)算機(jī)四個(gè)通道為同樣的硬件配置,每個(gè)通道間通過(guò)系統(tǒng)總線來(lái)進(jìn)行數(shù)據(jù)交互。為后續(xù)描述方便,將四個(gè)控制通道分別稱為UNIT_1A,UNIT_1B,UNIT_2A,UNIT_2B,這四個(gè)控制通道的軟硬件結(jié)構(gòu)和控制功能如圖1所示[3]。
圖1 四余度機(jī)載計(jì)算機(jī)軟硬件結(jié)構(gòu)圖
從圖1中看出,軟件分為板級(jí)支持包(BSP)、操作系統(tǒng)層(WxWorks)和應(yīng)用層(Application)三層。其中,BSP與硬件相關(guān),為操作系統(tǒng)提供對(duì)硬件資源的訪問(wèn)的接口;操作系統(tǒng)為應(yīng)用層軟件提供運(yùn)行平臺(tái),能夠按照優(yōu)先級(jí)對(duì)各種任務(wù)進(jìn)行調(diào)度和切換;應(yīng)用層集成相關(guān)功能的應(yīng)用軟件。該機(jī)載計(jì)算機(jī)的四個(gè)控制通道UNIT_1A,UNIT_1B,UNIT_2A,UNIT_2B的區(qū)別就在于各通道加載的應(yīng)用層軟件不同。
但此種情況下,每個(gè)控制通道只能實(shí)現(xiàn)一種控制功能,四個(gè)余度不具備互換性。本文提出一種分區(qū)加載方法,在每個(gè)通道中均裝載全部四個(gè)通道的控制軟件,并且在每個(gè)通道中設(shè)置通道識(shí)別信號(hào)接口,這樣,只要通過(guò)通道識(shí)別信號(hào),就能加載運(yùn)行相應(yīng)通道控制軟件。
3分區(qū)加載技術(shù)實(shí)現(xiàn)
若實(shí)現(xiàn)四余度機(jī)載計(jì)算機(jī)的軟件分區(qū)加載,需在CPU中的FLASH中進(jìn)行五個(gè)地址分區(qū),分別裝載分區(qū)加載軟件和UNIT_1A,UNIT_1B,UNIT_2A,UNIT_2B四個(gè)通道控制軟件。系統(tǒng)啟動(dòng)后,首先加載FLASH中的分區(qū)加載軟件,根據(jù)分區(qū)加載軟件中通道識(shí)別信號(hào)判斷分支再一次加載另外四個(gè)分配地址中的應(yīng)用軟件。具體加載方式見(jiàn)圖2。
圖2 分區(qū)加載方式圖
所謂加載,是指將程序加載到內(nèi)存并完成程序的相關(guān)初始化工作使之可以運(yùn)行的過(guò)程。分區(qū)加載的關(guān)鍵在于根據(jù)四個(gè)通道通道識(shí)別信號(hào)的不同來(lái)調(diào)用四次該函數(shù),并設(shè)置四個(gè)通道軟件的入口地址。加載過(guò)程的軟件流程見(jiàn)圖3。
對(duì)于分區(qū)加載方式,最重要的條件為通道識(shí)別信號(hào)的獲取。只要通道識(shí)別信號(hào)獲取成功,就會(huì)成功加載運(yùn)行相應(yīng)通道的控制軟件。
圖3 加載運(yùn)行應(yīng)用程序流程
4結(jié)論
分區(qū)加載是利用VxWorks操作系統(tǒng)基本功能,依據(jù)系統(tǒng)需要,對(duì)加載運(yùn)行應(yīng)用程序的一個(gè)擴(kuò)展,經(jīng)過(guò)各項(xiàng)仿真驗(yàn)證,無(wú)設(shè)計(jì)問(wèn)題。目前,該技術(shù)已應(yīng)用于某型號(hào),并安全飛行數(shù)年,為今后多余度系統(tǒng)可互換性積累了經(jīng)驗(yàn),探索了一條可行的道路。軟件分區(qū)加載方式可適用于所有余度系統(tǒng)設(shè)計(jì)中,對(duì)于實(shí)行設(shè)備的可互換性有廣泛的推廣價(jià)值。
參考文獻(xiàn)
[1]於二軍,吳斌,李林,等.機(jī)載機(jī)電管理計(jì)算機(jī)雙余度設(shè)計(jì)[J].微電子學(xué)與計(jì)算機(jī),2012(12):88-89.
[2]李艷軍,高華,顧欣莉.實(shí)時(shí)嵌入式操作系統(tǒng)VxWorks設(shè)備驅(qū)動(dòng)程序的設(shè)計(jì)[J].電子設(shè)計(jì)工程,2011(5):130-133.
[3]Airline Electronic Engineering Committee.429P1-15 Avionics Application Software Standard Interface[S].1995.
[4]Wind River System,Inc.Vxworks AE Programmer’s Guide5.5[Z].2001.
收稿日期:2015-12-22
作者簡(jiǎn)介:吳斌(1984- ),男,內(nèi)蒙古寧城人,工程師,碩士研究生,主要研究方向?yàn)闄C(jī)載計(jì)算機(jī)技術(shù)。
文章編號(hào):1674- 4578(2016)02- 0053- 02
中圖分類(lèi)號(hào):V249.1,TP316.2
文獻(xiàn)標(biāo)識(shí)碼:A
Technology of Distributed-loading of Redundant-system Based on VxWorks Operating System
Wu Bin1, Zhang Wenjing2, Qu Panrang1, Ren Xiaokun1
(1.AeronauticsComputingTechniqueResearchInstitute,Xi’anShaanxi710119,China;2.ShaanxiArchitecturalDesignandResearchInstituteCo.,LTD,Xi’anShaanxi710018,China)
Abstract:This paper proposes a kind of software-loading technology for airborne redundant systems. For each channel of the airborne computer, the controlling software for all four channels is installed, by these channels, the signal is identified and the different controlling software is loaded. So, it can achieve interchangeability among each redundancy and improve the reliability of the airborne computer obviously.
Key words:redundant system; VxWorks; distributed-loading; interchangeability