詹景坤,王小輝,解春雷,仇公望,祝樹生,呂殿君(中國運(yùn)載火箭技術(shù)研究院研發(fā)中心,北京,100076)
微內(nèi)核實(shí)時(shí)操作系統(tǒng)在彈載綜合電子系統(tǒng)中的應(yīng)用研究
詹景坤,王小輝,解春雷,仇公望,祝樹生,呂殿君
(中國運(yùn)載火箭技術(shù)研究院研發(fā)中心,北京,100076)
針對導(dǎo)彈武器系統(tǒng)“綜合化、模塊化、智能化”的發(fā)展要求,隨著導(dǎo)彈武器功能與性能的日益強(qiáng)大、應(yīng)用軟件日益增多,為了實(shí)現(xiàn)其密集計(jì)算和集中管理的新需求,提出了面向彈載綜合電子系統(tǒng)的微內(nèi)核實(shí)時(shí)操作系統(tǒng)設(shè)計(jì)思想,操作系統(tǒng)作為軟件平臺實(shí)現(xiàn)應(yīng)用軟件集成、調(diào)度和資源配置,為未來先進(jìn)彈載綜合電子系統(tǒng)的設(shè)計(jì)與開發(fā)進(jìn)行前期探索,為綜合化設(shè)計(jì)在工程上的應(yīng)用積累經(jīng)驗(yàn)。
彈載綜合電子系統(tǒng);微內(nèi)核;嵌入式;實(shí)時(shí)操作系統(tǒng)
彈載綜合電子系統(tǒng)是導(dǎo)彈武器系統(tǒng)的重要組成部分。它是一個(gè)由多系統(tǒng)、多環(huán)境、多任務(wù)和多資源構(gòu)成的相互關(guān)聯(lián)、支持、集成和制約的復(fù)雜系統(tǒng),是集合飛行控制、能源管理、任務(wù)管理、目標(biāo)探測、導(dǎo)航、通信等軟硬件構(gòu)成的綜合信息密集管理系統(tǒng),具有多信息、多專業(yè)、多任務(wù)、多功能、多資源和多過程的復(fù)雜交聯(lián)的耦合特征,新一代彈載綜合電子系統(tǒng)將兼?zhèn)渚C合化、模塊化、網(wǎng)絡(luò)化、信息化、智能化、體系化、高精度、高可靠的技術(shù)特點(diǎn)。
隨著導(dǎo)彈武器系統(tǒng)正朝著綜合化、智能化和體系化的方向發(fā)展,彈載綜合電子系統(tǒng)逐步從分布式、聯(lián)合式架構(gòu)向綜合化、高度綜合化方向演變,對彈載綜合電子系統(tǒng)的軟硬件架構(gòu)也提出了顛覆性的改變。一方面,硬件資源平臺采用“多核CPU+多核DSP”為核心處理器的一體化處理架構(gòu),以滿足開放性、擴(kuò)展性和柔性設(shè)計(jì)的應(yīng)用需求,是適應(yīng)未來新一代導(dǎo)彈武器系統(tǒng)的通用硬件處理平臺。另一方面,在通用硬件處理平臺的基礎(chǔ)上,引入基于微內(nèi)核的嵌入式分區(qū)實(shí)時(shí)操作系統(tǒng),實(shí)現(xiàn)對多任務(wù)、多應(yīng)用軟件的統(tǒng)一集成、管理和調(diào)度,構(gòu)建彈載綜合電子系統(tǒng)軟件處理平臺。
新型的“多核CPU+多核DSP”處理器架構(gòu)突破了異構(gòu)混搭多核分區(qū)操作系統(tǒng)、多模態(tài)密集計(jì)算并行編程框架、多級健康管理系統(tǒng)、模型驅(qū)動(dòng)開發(fā)環(huán)境等關(guān)鍵技術(shù),實(shí)現(xiàn)了彈載綜合電子系統(tǒng)信息的集中管理和密集計(jì)算,提高了應(yīng)用軟件的運(yùn)行效率、集成度和可移植性,將全面提升新一代導(dǎo)彈武器系統(tǒng)綜合化和智能化技術(shù)水平。
本文以微內(nèi)核實(shí)時(shí)操作系統(tǒng)基于多核底層硬件資源上的高效應(yīng)用為出發(fā)點(diǎn),提出了基于微內(nèi)核實(shí)時(shí)操作系統(tǒng)的軟硬件一體化設(shè)計(jì)思路和典型應(yīng)用,為新一代導(dǎo)彈武器綜合電子系統(tǒng)的設(shè)計(jì)提供借鑒。
彈載微內(nèi)核實(shí)時(shí)操作系統(tǒng)是一種強(qiáng)實(shí)時(shí)、多任務(wù)、多應(yīng)用的嵌入式分區(qū)操作系統(tǒng)。依托“多核CPU+多核DSP”處理器硬件資源平臺,充分利用CPU處理器作為控制/管理的優(yōu)勢和DSP處理器作為數(shù)據(jù)運(yùn)算的優(yōu)勢,對彈載綜合電子系統(tǒng)軟硬件資源進(jìn)行高效靈活配置。在操作系統(tǒng)運(yùn)行過程中,任務(wù)作為系統(tǒng)獨(dú)立運(yùn)行的基本單元,支持同時(shí)存在多個(gè)任務(wù),并根據(jù)事先定義好的調(diào)度表規(guī)則內(nèi)容實(shí)現(xiàn)任務(wù)的切換與調(diào)度。支持同時(shí)存在多個(gè)應(yīng)用,通過應(yīng)用層接口接入多個(gè)應(yīng)用,并根據(jù)系統(tǒng)分區(qū)配置合理分配應(yīng)用分區(qū),利用時(shí)間片輪轉(zhuǎn)調(diào)度規(guī)則實(shí)現(xiàn)應(yīng)用的切換與調(diào)度。
微內(nèi)核實(shí)時(shí)操作系統(tǒng)采用層次化、結(jié)構(gòu)化架構(gòu)總體方案,如圖1所示。操作系統(tǒng)自頂向下由應(yīng)用層、操作系統(tǒng)層、模塊支持層等組成。
應(yīng)用層是用戶單獨(dú)開發(fā)的分區(qū)應(yīng)用,該應(yīng)用軟件運(yùn)行在操作系統(tǒng)之上。在應(yīng)用層開發(fā)的應(yīng)用軟件,支持開發(fā)單一分區(qū)的應(yīng)用,也支持開發(fā)多個(gè)分區(qū)的應(yīng)用。一般而言。根據(jù)應(yīng)用軟件的設(shè)計(jì)規(guī)劃,首選將應(yīng)用軟件與分區(qū)建立一一對應(yīng)關(guān)系。
操作系統(tǒng)層主要由核心操作系統(tǒng)、可配置組件等組成。操作系統(tǒng)層對下主要完成對系統(tǒng)運(yùn)行的硬件資源的配置與管理,包括空間資源、時(shí)間資源、對象資源、設(shè)備資源等;對上主要完成對應(yīng)用軟件的調(diào)度與管理,為應(yīng)用軟件提供API訪問接口和可以使用的組件。
模塊支持層主要實(shí)現(xiàn)底層硬件與操作系統(tǒng)層之間的隔離,主要包括結(jié)構(gòu)支持包、板級支持包、映射管理等內(nèi)容。該層為操作系統(tǒng)的正常運(yùn)行提供接口支持,為系統(tǒng)訪問的設(shè)備提供驅(qū)動(dòng)支持。模塊支持層軟件與底層硬件平臺密切相關(guān),需要針對性的為操作系統(tǒng)開發(fā)設(shè)計(jì)模塊支持層軟件、驅(qū)動(dòng)等。
應(yīng)用編程接口為操作系統(tǒng)提供分區(qū)應(yīng)用可訪問的接口。操作系統(tǒng)提供應(yīng)用調(diào)用的接口包括APEX接口、分區(qū)內(nèi)擴(kuò)展接口和可配置組件接口(含C運(yùn)行庫接口、BIT管理接口、文件系統(tǒng)接口)。
模塊支持層與操作系統(tǒng)接口為支持操作系統(tǒng)的運(yùn)行專門提供的一組接口,該部分接口涉及體系結(jié)構(gòu)、映像管理與部署、故障處理等功能。
圖1 操作系統(tǒng)軟件層次結(jié)構(gòu)圖
根據(jù)彈載綜合電子系統(tǒng)的功能需求,嵌入式實(shí)時(shí)操作系統(tǒng)的底層硬件資源平臺采用了異構(gòu)混搭的多微內(nèi)核(即“多核CPU+多核DSP”)設(shè)計(jì)架構(gòu)。通過異構(gòu)混搭多核分區(qū)設(shè)計(jì),利用不同處理器對控制、管理、計(jì)算的優(yōu)勢分析,完成密集控制分區(qū)、密集計(jì)算分區(qū)和健康管理分區(qū)等功能分區(qū)的構(gòu)建,實(shí)現(xiàn)分區(qū)間任務(wù)的安全隔離、可靠通信和分區(qū)內(nèi)任務(wù)的實(shí)時(shí)調(diào)度。實(shí)時(shí)操作系統(tǒng)運(yùn)行的異構(gòu)混搭的底層硬件資源平臺設(shè)計(jì)架構(gòu)如圖2所示。
圖2 異構(gòu)混搭式底層處理器平臺架構(gòu)
隨著彈載綜合電子系統(tǒng)功能和性能的大幅提升,引入實(shí)時(shí)操作系統(tǒng)是綜合化技術(shù)發(fā)展的必然趨勢。經(jīng)過前期方案論證和設(shè)計(jì)分析,同時(shí)參考其它項(xiàng)目實(shí)踐驗(yàn)證,實(shí)時(shí)操作系統(tǒng)雖與彈載綜合電子系統(tǒng)的硬件資源之間存在密切的關(guān)系,但實(shí)時(shí)操作系統(tǒng)作為軟件資源的集成、管理與調(diào)度平臺,在選型開發(fā)和集成設(shè)計(jì)時(shí)應(yīng)遵循如下原則:
a)高質(zhì)量設(shè)計(jì)原則。實(shí)時(shí)操作系統(tǒng)作為彈載綜合電子系統(tǒng)平臺軟件,選型設(shè)計(jì)中應(yīng)優(yōu)先考慮保證平臺軟件運(yùn)行的穩(wěn)定性和可靠性,對可能導(dǎo)致操作系統(tǒng)運(yùn)行失效的場景進(jìn)行充分考慮,并設(shè)計(jì)有效的預(yù)防和修復(fù)措施,能夠保證應(yīng)用軟件的高效運(yùn)行。
b)成熟化設(shè)計(jì)原則。設(shè)計(jì)中應(yīng)盡量采用經(jīng)過大量應(yīng)用驗(yàn)證的成熟產(chǎn)品或成熟技術(shù),盡可能減少新研制或新開發(fā)的軟件模塊,盡量避免或減少對現(xiàn)有成熟技術(shù)的修改,若存在新研和修改的內(nèi)容,需要完成相關(guān)驗(yàn)證性試驗(yàn),以降低系統(tǒng)研制風(fēng)險(xiǎn)。
c)標(biāo)準(zhǔn)化設(shè)計(jì)原則。實(shí)時(shí)操作系統(tǒng)與應(yīng)用軟件、底層硬件模塊接口應(yīng)符合相關(guān)標(biāo)準(zhǔn)要求。平臺軟件在設(shè)計(jì)中產(chǎn)生的新研部分,應(yīng)符合已有產(chǎn)品的接口要求,以保障操作系統(tǒng)的兼容性和可擴(kuò)展性,提高系統(tǒng)的可維護(hù)性和保障性。
d)經(jīng)濟(jì)性設(shè)計(jì)原則。實(shí)時(shí)操作系統(tǒng)應(yīng)充分結(jié)合已有軟硬件資源,有針對性的開發(fā)設(shè)計(jì),通過提高資源利用率、結(jié)合項(xiàng)目實(shí)際情況優(yōu)化設(shè)計(jì)策略和實(shí)現(xiàn)方式等手段,提升系統(tǒng)運(yùn)行效率,以達(dá)到減少項(xiàng)目研發(fā)成本的目的。
3.1分區(qū)設(shè)計(jì)技術(shù)及應(yīng)用。彈載綜合電子系統(tǒng)突破了傳統(tǒng)的模塊直聯(lián)架構(gòu)方式,采用了綜合化、模塊化、構(gòu)件化電子系統(tǒng)的設(shè)計(jì)思想和技術(shù),其核心設(shè)計(jì)理念是利用單一的運(yùn)算平臺來運(yùn)行多個(gè)應(yīng)用程序,以達(dá)到有效減少系統(tǒng)上的處理器數(shù)量,充分發(fā)揮處理器計(jì)算能力,減少系統(tǒng)對空間、重量、能源、備件等資源的需求。結(jié)合實(shí)際情況,彈載綜合電子系統(tǒng)應(yīng)完成導(dǎo)航解算、飛行控制、飛行管理、時(shí)序管理、載荷數(shù)據(jù)流實(shí)時(shí)計(jì)算、圖像目標(biāo)識別與處理、實(shí)時(shí)任務(wù)規(guī)劃、地形跟蹤/回避、協(xié)同作戰(zhàn)、突防對抗、故障檢測、健康管理等集中管理和密集計(jì)算的任務(wù)。
針對彈載綜合電子系統(tǒng)上述功能需求,根據(jù)信息耦合、處理器特點(diǎn)和歷史設(shè)計(jì)傳統(tǒng)等設(shè)計(jì)原則,通過頂層設(shè)計(jì)形成了八種彈載綜合電子系統(tǒng)應(yīng)用軟件,基本上涵蓋了飛行管理應(yīng)用(含時(shí)序管理、電源管理)、飛行控制應(yīng)用(含導(dǎo)航解算、實(shí)時(shí)任務(wù)規(guī)劃)、任務(wù)規(guī)劃應(yīng)用、攻防對抗應(yīng)用(含協(xié)同作戰(zhàn))、圖像處理應(yīng)用、射頻綜合應(yīng)用、系統(tǒng)測試應(yīng)用、健康管理應(yīng)用等應(yīng)用設(shè)計(jì)框架。分區(qū)設(shè)計(jì)框圖如圖3所示。
圖3 彈載綜合電子系統(tǒng)分區(qū)規(guī)劃設(shè)計(jì)
微內(nèi)核實(shí)時(shí)操作系統(tǒng)作為系統(tǒng)級應(yīng)用軟件集成、調(diào)度和管理平臺,通過分區(qū)設(shè)計(jì)技術(shù),為各應(yīng)用軟件規(guī)劃設(shè)計(jì)獨(dú)立運(yùn)行分區(qū),支持不同關(guān)鍵等級的應(yīng)用程序互不干擾的、高效的、安全性和可靠性運(yùn)行在微內(nèi)核硬件平臺上。操作系統(tǒng)可以提供有效的分區(qū)間通信和分區(qū)內(nèi)通信,如圖4所示。
圖4 各應(yīng)用分區(qū)間/內(nèi)通信機(jī)制
3.2密集計(jì)算技術(shù)及應(yīng)用。針對彈載綜合電子系統(tǒng)密集計(jì)算需求,為了滿足高性能導(dǎo)彈平臺對海量數(shù)據(jù)、復(fù)雜任務(wù)和實(shí)時(shí)流處理要求,通過多核DSP陣列并行編譯技術(shù),利用多模態(tài)并行運(yùn)行時(shí)系統(tǒng)和分區(qū)調(diào)度內(nèi)核實(shí)現(xiàn)與多DSP核及核間數(shù)據(jù)的高速交換,支持多路信號復(fù)雜解算、圖像壓縮和模式識別、彈上地形匹配、彈上導(dǎo)航解算、彈上實(shí)時(shí)彈道規(guī)劃的并行計(jì)算,解決了計(jì)算資源不足和資源整合復(fù)用的難題,并行計(jì)算總體架構(gòu)如圖5所示。
圖5 密集計(jì)算分區(qū)的并行框架圖
3.3實(shí)時(shí)調(diào)度技術(shù)及應(yīng)用。實(shí)時(shí)操作系統(tǒng)提供時(shí)間隔離保障機(jī)制,采用基于主時(shí)間框架的應(yīng)用分區(qū)進(jìn)行輪轉(zhuǎn)調(diào)度技術(shù),通過調(diào)度表靜態(tài)定義每一分區(qū)的調(diào)度時(shí)間。操作系統(tǒng)將嚴(yán)格按照時(shí)間框架定義對分區(qū)進(jìn)行調(diào)度執(zhí)行。任何分區(qū),均在被調(diào)度時(shí)刻占有CPU資源,調(diào)度時(shí)間一到,都將被剝奪CPU所有權(quán),從而保證任何分區(qū)的正常執(zhí)行。
彈載綜合電子系統(tǒng)飛行控制分區(qū)需要具備強(qiáng)實(shí)時(shí)的調(diào)度需求,即要求控制周期大不于10ms,如果其它的應(yīng)用分區(qū)調(diào)度周期均大于該調(diào)度周期,那么在設(shè)計(jì)調(diào)度表配置時(shí),需要采用以飛行控制分區(qū)作為強(qiáng)實(shí)時(shí)調(diào)度響應(yīng)配置,同時(shí)順序循環(huán)調(diào)度各個(gè)分區(qū)的調(diào)度表設(shè)計(jì)方案。
分區(qū)調(diào)度表包含了一組具有先后順序的分區(qū)、每個(gè)分區(qū)的調(diào)度起始時(shí)間和每個(gè)分區(qū)的調(diào)度時(shí)長。綜合設(shè)計(jì)后給出了在36ms的主時(shí)間框架內(nèi),任一時(shí)刻系統(tǒng)CPU的所有權(quán)歸屬結(jié)果。
3.4故障診斷與輔助決策技術(shù)及應(yīng)用
利用實(shí)時(shí)操作系統(tǒng)提供的三層次健康監(jiān)控技術(shù),對健康管理分區(qū)應(yīng)用軟件進(jìn)行綜合設(shè)計(jì),開展進(jìn)程級健康監(jiān)控、分區(qū)級健康監(jiān)控和模塊級健康監(jiān)控設(shè)計(jì)。進(jìn)程級健康監(jiān)控負(fù)責(zé)用戶故障診斷與進(jìn)程級故障的處理;分區(qū)級健康監(jiān)控負(fù)責(zé)分區(qū)內(nèi)故障診斷與分區(qū)級的故障處理;模塊級健康監(jiān)控負(fù)責(zé)系統(tǒng)各單元模塊的故障診斷與故障處理。三級故障診斷與健康監(jiān)控形成分層分布式的健康管理處理機(jī)制,根據(jù)就近原則首先由相應(yīng)監(jiān)控模塊完成故障診斷和處理,如果某級別的健康監(jiān)控功能無法實(shí)現(xiàn)故障事件的處理,將報(bào)送到高一級的健康監(jiān)控模塊。
彈載綜合電子系統(tǒng)各組成單元自行完成運(yùn)行狀態(tài)數(shù)據(jù)的采集、整理,各模塊狀態(tài)數(shù)據(jù)通過I2C總線發(fā)送至通用處理器核心模塊,通用處理器模塊將依據(jù)邏輯推理和綜合判斷等診斷算法,給出各模塊的工作狀態(tài),并形成故障處理輔助決策信息。
微內(nèi)核分區(qū)實(shí)時(shí)操作系統(tǒng)能夠有效管理彈載綜合電子系統(tǒng)硬件和軟件資源,是強(qiáng)大的多任務(wù)、多應(yīng)用運(yùn)行軟件平臺。在未來導(dǎo)彈武器綜合電子系統(tǒng)中發(fā)揮不可替代的作用,廣泛適用于多應(yīng)用場景和綜合化系統(tǒng)環(huán)境。微內(nèi)核實(shí)時(shí)操作系統(tǒng)在新一代彈載綜合電子系統(tǒng)中的應(yīng)用與探索,改變了傳統(tǒng)分布式低能效的軟件實(shí)現(xiàn)架構(gòu),實(shí)現(xiàn)了彈載綜合電子系統(tǒng)硬件資源整合復(fù)用,以及彈載信息的集中處理,軟件運(yùn)行效率和可靠性需求,實(shí)時(shí)操作系統(tǒng)有效降低系統(tǒng)軟件架構(gòu)、設(shè)計(jì)、開發(fā)、測試、維護(hù),提高應(yīng)用軟件的可移植性。應(yīng)用分區(qū)綁定、并行密集計(jì)算、故障診斷與輔助決策和等一系列關(guān)鍵技術(shù),對新一代彈載綜合電子系統(tǒng)進(jìn)行高度綜合化設(shè)計(jì),將促進(jìn)未來導(dǎo)彈武器系統(tǒng)跨越式發(fā)展。
[1] 李化云.嵌入式實(shí)時(shí)操作系統(tǒng)在航天器軟件中的應(yīng)用研究[J].微計(jì)算機(jī)信息,2012,(8), 73-74.
[2] 宋征宇.嵌入式實(shí)時(shí)操作系統(tǒng)在運(yùn)載火箭中的應(yīng)用研究[J].航天控制, 2013,(3), 3-10.
[3] 雷杰,文順安. 嵌入式實(shí)時(shí)多任務(wù)操作系統(tǒng)在強(qiáng)實(shí)時(shí)系統(tǒng)中的應(yīng)用[J].戰(zhàn)術(shù)導(dǎo)彈控制技術(shù),2002,(4),37-40.
[4] 曹寧. 組合導(dǎo)航系統(tǒng)中實(shí)時(shí)多任務(wù)的軟件設(shè)計(jì)[J]. 導(dǎo)航,2007, (2), 35-40.
[5] 劉宗玉, 王瑋, 陳明, 田洪波. 綜合導(dǎo)航系統(tǒng)中的實(shí)時(shí)多任務(wù)軟件設(shè)計(jì)[J]. 計(jì)算機(jī)工程與應(yīng)用, 2004, 40, (27), 185-187.
[6] 李林, 王向暉, 陶利民, 張猛. 航天器用實(shí)時(shí)操作系統(tǒng)設(shè)計(jì)[J]. 計(jì)算機(jī)測量與控制, 2012, 20(4):1026-1028, 1032. (LI Lin, WANG Xianghui, TAO Li, ZHANG Meng. Type of Reali-Time Systems Designing Which Applied in Aeroships[J]. Computer Measurement&Control, 2012,20(4): 1026-1028, 1032.)
The Application Study on Mirco-Kernel Real-Time Operation System in Missile-Borne Integrated Electronic System
Zhan Jingkun,Wang Xiaohui,Xie Chunlei,Qiu Gongwang,Zhu Shusheng,Lv Dianjun
(R&D Center, China Academy of Launch Vehicle Technology,Beijing,100076)
The development trend of the missle weapon system is “integration,miniaturization & intelligent”.With the powerful fuctions and more applications softwares of the missle weapon.In order to realize the strong requirement of the dense computation and centralized management,the paper puts forword to a new kind of design method which is applying the mirco-kernel real-time operation system in missile-borne integrated electronic system.The integration,schedule and resource allocation of application softwares can be realized by the operation system platform.which has done some preliminary exploration and has provided a good direction for applying integrated design technology to engineering.
Missile-borne Integrated electronic system;Mirco-kernel;Embedded;Real-time operation system
TP316.2
A
詹景坤(1981-),男,工程師,主要研究方向?yàn)殡姎庀到y(tǒng)設(shè)計(jì)