<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

EEPW首頁(yè) > 安全與國防 > 設計應用 > 基于天脈1型嵌入式操作系統光纖航姿軟件開(kāi)發(fā)

基于天脈1型嵌入式操作系統光纖航姿軟件開(kāi)發(fā)

作者:張 斌 (陜西寶成航空儀表有限責任公司,陜西 寶雞 721006) 時(shí)間:2021-04-27 來(lái)源:電子產(chǎn)品世界 收藏
編者按:本文介紹了基于國產(chǎn)天脈1型操作系統的光纖航姿軟件開(kāi)發(fā)。在充分分析國產(chǎn)天脈1型操作系統特點(diǎn)、開(kāi)發(fā)環(huán)境和任務(wù)調度方式的基礎上,結合光纖航姿軟件的功能需求和結構組成,重點(diǎn)進(jìn)行了軟件周期的劃分、設計和實(shí)現。測試和試驗結果表明,基于國產(chǎn)天脈1型操作系統的光纖航姿軟件具備強實(shí)時(shí)、穩定性高并支持多任務(wù)的特點(diǎn)。

作者簡(jiǎn)介:張斌(1973—),男,碩士,高級工程師,現從事嵌入式系統航空軟件開(kāi)發(fā)及機載慣性導航技術(shù)研究。

本文引用地址:http://dyxdggzs.com/article/202104/424951.htm

0   引言

斯諾登的棱鏡門(mén)和中興事件曝光后,如何在國防裝備中采用國產(chǎn)系統以提高裝備自主性、安全性,防范可能存在的漏洞和后門(mén),已經(jīng)成為國防裝備戰線(xiàn)迫切需要解決的問(wèn)題。

型嵌入式操作系統(簡(jiǎn)稱(chēng):,英文名:)是航空工業(yè)西安航空計算所研發(fā)的針對航空、航天應用需求而設計的具有完全自主知識版權的嵌入式國產(chǎn)操作系統[1];是在航空、航天等對系統實(shí)時(shí)性、安全性、可靠性有極高需求的領(lǐng)域中使用的嵌入式操作系統。目前, 嵌入式操作系統已在我國多型軍、民用航空裝備上得到廣泛應用。本文介紹了基于天脈1 操作系統設計的光纖航姿系統的組成和原理,描述了的任務(wù)劃分、任務(wù)調度。

1   天脈1操作系統簡(jiǎn)介

天脈1 采用標準C 語(yǔ)言與匯編語(yǔ)言混合開(kāi)發(fā),按照GJB 和DO-178B 進(jìn)行研發(fā)和測試,是一款面向多任務(wù)應用的強實(shí)時(shí)嵌入式系統平臺,能夠協(xié)助編程者管理嵌入式系統硬件資源,顯著(zhù)降低應用軟件開(kāi)發(fā)和維護難度。

天脈1 主要有如下功能:

●   采用微內核設計,組件可配置、裁剪;

●   支持PPC、x86、ARM 等主流處理器,支持龍芯、飛騰等國產(chǎn)處理器;

●   采用層次化微結構,微內核和硬件相隔離開(kāi)來(lái),方便硬件平臺的升級;

●   存儲管理支持MMU 存儲保護,關(guān)鍵數據區用戶(hù)可進(jìn)行防篡改保護;

●   采用實(shí)時(shí)多任務(wù)調度,支持優(yōu)先級搶占和時(shí)間片輪轉,任務(wù)切換以及中斷響應可達到微秒級;

●   提供消息隊列、環(huán)形緩沖等多種任務(wù)間通信機制,提供信號量、事件等任務(wù)同步機制;

●   支持對高速數據/ 指令緩存(CACHE)的管理;

●   支持周期任務(wù);

●   提供與VxWorks 兼容的API 接口。

天脈1 在應用系統中處于硬件層和應用層之間的中間位置,如圖1 所示,其主要任務(wù)是管理計算機板軟、硬件資源,并為應用軟件的運行提供服務(wù)。

對于CPU 硬件,天脈1 提供MSL 層軟件管理計算機板硬件設備;對于應用軟件,操作系統負責應用軟件的管理,主要實(shí)現應用任務(wù)的調度、系統硬件資源的分配,為應用軟件提供必要的運行設備。天脈1 依據ASAAC 標準所定義三層軟件架構進(jìn)行設計開(kāi)發(fā)而成,其包含硬件模塊支持層(MSL),操作系統層(OSL)及應用軟件層(APL)。三層結構相互獨立,互相分隔,OSL 層和OSL 層組件可配置、裁剪,提供靈活的硬件及空間配置,開(kāi)發(fā)人員可根據軟件及硬件特點(diǎn)進(jìn)行針對性開(kāi)發(fā)設計[2]。

image.png

圖1 天脈1操作系統體統結構

天脈1 相比其它操作系統具有以下幾個(gè)核心優(yōu)勢。

(1) 實(shí)時(shí)性強

天脈1 的任務(wù)切換和中斷響應時(shí)間可達微秒級;其采用了優(yōu)先級搶占、同優(yōu)先級時(shí)間片輪轉算法,確保任務(wù)的實(shí)時(shí)性;采用優(yōu)先級位圖法、最小化任務(wù)法切換開(kāi)銷(xiāo);通過(guò)匯編實(shí)現的中斷處理代碼以及中斷嵌套機制,實(shí)現對外部事件的實(shí)時(shí)響應及處理要求。

(2) 可裁剪性

天脈1 開(kāi)發(fā)環(huán)境采用中文的圖形界面,使用圖形化界面進(jìn)行環(huán)境配置和裁剪,最小可運行環(huán)境配置不大于256 kb;提供的圖形、網(wǎng)絡(luò )協(xié)議棧、多種文件系統、USB、SATA 等常用組件裁剪、配置。

(3) 可靠性

天脈1 采用基于存儲管理單元(MMU) 的存儲保護機制,用戶(hù)可以對指定的區域的代碼/ 數據空間進(jìn)行讀/ 寫(xiě)保護,可以從內核層面阻止地址空間的非法訪(fǎng)問(wèn);提供錯誤接管機制,支持用戶(hù)對操作系統和應用軟件的錯誤加以接管;采用優(yōu)先級天花板和優(yōu)先級繼承策略處理任務(wù)優(yōu)先級翻轉,確保高優(yōu)先級任務(wù)優(yōu)先執行;提供硬件資源泄露預防措施和空間冗余策略,保證硬件資源的回收和配置數據的正確性。

(4) 可移植性

天脈1 向用戶(hù)提供VxWorks 兼容包,方便用戶(hù)將原先運行在VxWorks 操作系統上的應用軟件移植到天脈1 上,代碼修改比例一般不超過(guò)千分之四,提供C/C++ 語(yǔ)言支持,用戶(hù)可以根據項目構架的設計自由選擇。

(5) 適應性強

天脈1 支持PPC、x86、ARM 等主流處理器,支持龍芯、飛騰等國產(chǎn)處理器,提供典型的設備驅動(dòng)模塊可為/ 協(xié)助用戶(hù)定制專(zhuān)用驅動(dòng)模塊,并向用戶(hù)提供可擴展接口,針對異常處理提供用戶(hù)自行擴展;天脈1 中應用程序、操作系統分別位于A(yíng)PL 層和OSL 層,模塊支持層(MSL)將兩者相連接,各層可獨立升級、維護。這樣使用戶(hù)可以專(zhuān)注于應用軟件的開(kāi)發(fā)。

2   光纖航姿的組成和原理

光纖航姿系統是基于光纖陀螺感測技術(shù)以及捷聯(lián)計算技術(shù)而設計的航向姿態(tài)系統。系統采用光纖陀螺、加速度計和捷聯(lián)磁傳感器作為敏感元件來(lái)感測飛機飛行過(guò)程中沿機體三個(gè)軸向上的運動(dòng)角速率、線(xiàn)加速度信號及地磁信號分量,經(jīng)相應電子線(xiàn)路量化、補償后傳輸給產(chǎn)品中的航姿解算計算機,由航姿解算計算機解算得出飛機的航向、姿態(tài)等信號。同時(shí)系統通過(guò)總線(xiàn)接口接收機上北斗系統輸出緯度等數據,并將捷聯(lián)解算得到的航向、姿態(tài)以及系統工作狀態(tài)字等數字信號通過(guò)RS422 接口發(fā)送至機上其它設備,系統組成結構見(jiàn)圖2 所示。

image.png

捷聯(lián)計算的原理框圖如圖3 所示。

image.png

3   應用軟件設計

由光纖航姿的組成和原理可知,光纖陀螺輸出的角速率信號必須通過(guò)精確定時(shí)積分計算才能獲得正確航向和姿態(tài)數據。

應用軟件分成5 個(gè)模塊:初始化模塊、IMU 數據采集模塊、周期BIT 模塊、捷聯(lián)解算模塊和數據I/O 模塊[3]。

image.png

同時(shí)采用天脈系統特有的周期任務(wù)將IMU 數據采集任務(wù),捷聯(lián)解算任務(wù),數據輸入/ 輸出任務(wù)以及周期BIT 任務(wù)分別設計為4 個(gè)周期任務(wù),如表1。

image.png

所謂的周期任務(wù)是指每隔相等的時(shí)間間隔就必須就緒的任務(wù);天脈中的周期任務(wù)時(shí)間間隔具有硬時(shí)限,周期的值被認為是恒定不變的,并且任務(wù)兩次就緒的時(shí)間只能等于周期。在周期任務(wù)中,操作的對象是“任務(wù)”。周期任務(wù)調度與普通調度的區別在于:普通的調度側重維護一個(gè)獨立的執行體——任務(wù),使其作為一個(gè)獨立的邏輯單元,維護其走走停停執行的正確性;而周期任務(wù)調度的側重點(diǎn)不僅是維護這樣一個(gè)邏輯單位,周期任務(wù)增加了一個(gè)更重要、更核心的屬性——周期,有了周期的要求后,系統的所有行為,比如狀態(tài)轉換、調度切換都是圍繞“周期”這個(gè)核心發(fā)生的[4]。

4 個(gè)任務(wù)在同步啟動(dòng)時(shí)刻(初始化完成后的0 時(shí)刻)都就緒,然后根據優(yōu)先級搶占的調度方式開(kāi)始運行(IMU數據采集周期任務(wù)、捷聯(lián)解算周期任務(wù)、數據I/O 周期任務(wù)、周期BIT 周期任務(wù)依次運行)。

周期任務(wù)使用注意事項:

●   任務(wù)的預期執行時(shí)間必須小于任務(wù)周期;

●   任務(wù)之間不能存在同步和競爭。

4   結語(yǔ)

本文對天脈1 的內核特點(diǎn)、應用開(kāi)發(fā)環(huán)境和多任務(wù)調度方式進(jìn)行了分析,結合光纖航姿系統功能需求,對光纖航姿軟件的功能模塊進(jìn)行了劃分與設計,采用天脈1 特有的周期任務(wù)對光纖航姿軟件的任務(wù)進(jìn)行了劃分和優(yōu)先級的設置。經(jīng)地面測試和飛行試驗驗證,基于天脈1 的光纖航姿軟件穩定可靠、實(shí)時(shí)性強,可滿(mǎn)足光纖航姿系統功能、性能、可靠性、安全性要求。采用本文介紹的方法、思路進(jìn)行導航類(lèi)軟件設計、開(kāi)發(fā),能夠明顯降低軟件設計難度、有效保證產(chǎn)品實(shí)時(shí)性和可靠性,對相似嵌入式軟件開(kāi)發(fā)具有一定借鑒意義。

參考文獻:

[1] 天脈技術(shù)白皮書(shū)[Z].

[2] ACoreOS機載嵌入式實(shí)時(shí)操作系統參考手冊[Z].

[3] 徐海榮,趙鳴,陳閩葉,等.嵌入式軟件系統的一種層次設計方法[J].現代電子技術(shù),2005(16):29-30,36.

[4] ACoreOS機載嵌入式實(shí)時(shí)操作系統程序員手冊[Z].

(本文來(lái)源于《電子產(chǎn)品世界》雜志2021年3月期)



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>