林 山,李越雷,陳 穎
(1.四川理工學(xué)院 計(jì)算機(jī)學(xué)院,四川 自貢 643000;2.中國(guó)西南電子技術(shù)研究所,成都 610036)
在航空電子系統(tǒng)領(lǐng)域,隨著系統(tǒng)向著數(shù)字化、模塊化和綜合化的方向發(fā)展,航空電子系統(tǒng)已經(jīng)演變成模塊級(jí)高度綜合集成的系統(tǒng)[1]。傳統(tǒng)的獨(dú)立電子裝備已經(jīng)不再存在,取而代之的是將傳統(tǒng)的多個(gè)功能的獨(dú)立電子裝備作為一個(gè)整體進(jìn)行統(tǒng)一設(shè)計(jì),從而在性能、體積、重量、成本等方面具有傳統(tǒng)方式不可比擬的優(yōu)勢(shì)。但隨著系統(tǒng)規(guī)模的不斷增大,系統(tǒng)的復(fù)雜性也急劇增加,模塊級(jí)高度綜合集成的航電系統(tǒng)已經(jīng)成為了一個(gè)高度復(fù)雜的系統(tǒng),對(duì)其設(shè)計(jì)、開(kāi)發(fā)和維護(hù)帶來(lái)了很大的困難。
構(gòu)建模型是研究復(fù)雜系統(tǒng)的主要方法,由對(duì)象管理組織(Object Management Group,OMG)提出的模型驅(qū)動(dòng)架構(gòu)(Model Driven Architecture,MDA)是以統(tǒng)一建模語(yǔ)言(Unified Modeling Language,UML)為基礎(chǔ)的面向?qū)ο蠼7椒ā5赨ML的MDA缺乏對(duì)特定領(lǐng)域建模的支持,不同的領(lǐng)域可能需要不同的建模語(yǔ)言,人們通常根據(jù)應(yīng)用系統(tǒng)(領(lǐng)域)的需要建立自己的建模語(yǔ)言[2]。本文通過(guò)元模型刻畫(huà)出可以被系統(tǒng)開(kāi)發(fā)人員直接使用的航電系統(tǒng)建模語(yǔ)言,搭建出適合人與人之間溝通的圖示化航電系統(tǒng)模型,再利用可擴(kuò)展標(biāo)記語(yǔ)言(eXtensible Markup Language,XML)描述適合機(jī)器解析的系統(tǒng)模型,從而建立人與人、人與機(jī)器之間的溝通方法。
航空電子系統(tǒng)是高度綜合化復(fù)雜系統(tǒng),對(duì)其不能像其它簡(jiǎn)單系統(tǒng)一樣直接進(jìn)行建模工作,應(yīng)先將復(fù)雜系統(tǒng)按功能劃分為若干個(gè)子系統(tǒng),分別建立各子系統(tǒng)模型,然后建立子系統(tǒng)之間的關(guān)聯(lián)模型,最后通過(guò)關(guān)聯(lián)模型將各子系統(tǒng)模型集成起來(lái),構(gòu)成系統(tǒng)的總體模型[3]。對(duì)復(fù)雜系統(tǒng)分塊之后,出現(xiàn)許多較小的建模對(duì)象,降低了系統(tǒng)建模復(fù)雜度。航電系統(tǒng)按功能可劃分成通信導(dǎo)航與識(shí)別系統(tǒng)、雷達(dá)系統(tǒng)、電子戰(zhàn)系統(tǒng)、光電系統(tǒng)、飛行器管理系統(tǒng)、顯示器和武器系統(tǒng)[4],子系統(tǒng)之間相互作用,從而生成總的系統(tǒng)功能。
從航電系統(tǒng)劃分出的子系統(tǒng)的復(fù)雜度依然很高,對(duì)其從不同層次加以描述,建立起不同層次的模型,可以進(jìn)一步降低系統(tǒng)的復(fù)雜度。通過(guò)對(duì)系統(tǒng)的分層處理,把復(fù)雜系統(tǒng)劃分為若干層次,各層次由不同的實(shí)體構(gòu)成,實(shí)體完成特定的行為功能并具備接口定義,層與層之間、實(shí)體與實(shí)體之間通過(guò)一定的關(guān)聯(lián)關(guān)系關(guān)聯(lián),實(shí)體內(nèi)部高內(nèi)聚,實(shí)體之間松耦合。經(jīng)過(guò)復(fù)雜系統(tǒng)分層邏輯模型處理后,實(shí)體、實(shí)體的屬性、實(shí)體之間的互連關(guān)系構(gòu)成了系統(tǒng)的3個(gè)要素。
典型的航空電子系統(tǒng)分層模型如圖1所示,系統(tǒng)分為應(yīng)用層、組件層及平臺(tái)層。應(yīng)用層包含若干個(gè)應(yīng)用功能線程,它們之間有一定的關(guān)聯(lián)關(guān)系;每個(gè)應(yīng)用功能線程的具體實(shí)現(xiàn)由組件層的若干組件組合完成,組件與組件之間有一定的關(guān)聯(lián)關(guān)系;組件部署在平臺(tái)層上,平臺(tái)層由具體的功能單元(處理器)組成,功能單元與功能單元之間有一定的關(guān)聯(lián)關(guān)系。
圖1 復(fù)雜系統(tǒng)分層模型Fig.1 Multi-level model of complex system
系統(tǒng)可以用構(gòu)成系統(tǒng)的元素及元素與元素之間關(guān)聯(lián)關(guān)系的集合進(jìn)行描述。參考圖1復(fù)雜系統(tǒng)分層模型,在數(shù)學(xué)上,對(duì)于分層后的復(fù)雜系統(tǒng)Y可描述為
式中,S表示系統(tǒng)分層集合,si表示第i層;Rs表示層與層之間的關(guān)聯(lián)關(guān)系集合,Rs,(i-1),i表示第(i-1)層與第i層之間的關(guān)聯(lián)關(guān)系集合。
針對(duì)模塊級(jí)高度綜合集成的復(fù)雜航電系統(tǒng),通過(guò)合理劃分和描述構(gòu)成系統(tǒng)的各部分和各層次以及其相互關(guān)系,可以清晰地表征復(fù)雜系統(tǒng)整體結(jié)構(gòu),大大降低了系統(tǒng)的建模技術(shù)難度。
UML作為一種通用建模語(yǔ)言而顯得過(guò)于通用和復(fù)雜,對(duì)于特定領(lǐng)域的建模效率不高。在不同的領(lǐng)域需要不同的建模語(yǔ)言及其建模工具,人們通常根據(jù)應(yīng)用系統(tǒng)的需要建立自己的建模語(yǔ)言及其建模環(huán)境,元建模技術(shù)的出現(xiàn)解決了這個(gè)問(wèn)題。元建模是指由領(lǐng)域?qū)<覍?duì)特定領(lǐng)域進(jìn)行分析和抽象,得到該領(lǐng)域的共性和變化特征,通過(guò)UML類圖和對(duì)象約束語(yǔ)言(Object Constraint Language,OCL)定義該領(lǐng)域建模語(yǔ)言特有的語(yǔ)法和語(yǔ)義,建立該領(lǐng)域的元模型[5]。元模型建模技術(shù)不是對(duì)系統(tǒng)直接進(jìn)行建模,而是先建立用于刻畫(huà)某個(gè)領(lǐng)域建模語(yǔ)言的元模型,然后通過(guò)該領(lǐng)域建模語(yǔ)言對(duì)某一特定應(yīng)用搭建系統(tǒng)模型。
元模型是陳述建模的模型。元模型用抽象的方式定義了一種建模語(yǔ)言的構(gòu)件及它們之間的關(guān)系,還有約束和建模規(guī)則。元模型是對(duì)模型更高一級(jí)的抽象,是關(guān)于模型的模型,對(duì)如何建模、模型定義、模型間集成和互操作等信息作出了描述[6]。元模型和模型之間是一種類和實(shí)例的關(guān)系,每個(gè)模型都是元模型的一個(gè)實(shí)例,如圖2所示。
圖2 現(xiàn)實(shí)、模型和元模型之間的關(guān)系Fig.2 Relationship between reality,model and metamodel
定義一個(gè)元模型需要一種元建模語(yǔ)言,而且該語(yǔ)言是通過(guò)元元模型描述的?;赨ML類圖的元元模型因?yàn)椴捎妹嫦驅(qū)ο蠹夹g(shù)而顯得自然和直觀,易于學(xué)習(xí),并且可以使用現(xiàn)成的UML建模工具來(lái)建立元模型,已經(jīng)成為主流。
綜合模塊化航空電子系統(tǒng)硬件資源通常包括天線接口單元(AIU)組件、射頻接收激勵(lì)組件(RF)、信號(hào)預(yù)處理組件(SPM)、數(shù)據(jù)復(fù)用組件(DX)、射頻前端接口控制組件(RCM)和通用I/O接口組件(GPIO),可以實(shí)現(xiàn)話音、數(shù)據(jù)傳輸、導(dǎo)航、識(shí)別等功能。
前面已經(jīng)將模塊化航空電子系統(tǒng)劃分為平臺(tái)層、組件層和應(yīng)用層3個(gè)層次。在平臺(tái)層有各種不同端口和處理單元,將這些端口和單元分別抽象為端口類和單元類。端口類是對(duì)物理端口的抽象,這些端口用于信號(hào)和數(shù)據(jù)的傳輸,包括RF端口、LVDS端口、RapidIO端口和CAN端口等。單元類是對(duì)構(gòu)成組件的具體硬件實(shí)體的抽象,通常用來(lái)執(zhí)行具體的計(jì)算,比如PowerPC芯片和DSP芯片等。端口和處理單元都不能再劃分,所以每個(gè)種類的處理單元或端口就是一個(gè)元模型。類可以包含若干屬性,對(duì)象可以繼承類的屬性,對(duì)端口類屬性的描述如圖3所示。這里定義的端口屬性包括端口號(hào)、端口狀態(tài)、端口所屬處理單元,端口所屬處理單元的類型可以根據(jù)需要添加其它的端口屬性。
圖3 端口屬性定義Fig.3 Attribute of port
組件類是對(duì)組件層中組件的抽象,它是對(duì)具有某項(xiàng)特有功能的實(shí)體的抽象,包含端口和處理單元。如SPM組件由若干個(gè)LVDS端口、RapidIO端口和DSP處理單元組成,所以SPM元模型包含LVDS元模型、RapidIO元模型和DSP元模型,并繼承組件類的屬性,如圖4所示。
圖4 SPM元模型定義Fig.4 Metamodel of SPM
在應(yīng)用層,每個(gè)應(yīng)用功能用一個(gè)集合描述。應(yīng)用功能是物理資源上連貫的,是對(duì)執(zhí)行某項(xiàng)特定功能而定義的邏輯實(shí)體。集合描述的是應(yīng)用功能與物理資源之間的映射關(guān)系,這種映射關(guān)系不是固定的??紤]到物理資源可能出現(xiàn)故障的情況,同一應(yīng)用功能必須可以映射到多種物理資源配置,以實(shí)現(xiàn)對(duì)故障資源的屏蔽[7]。任務(wù)階段和系統(tǒng)狀態(tài)的變化也可能導(dǎo)致同一物理資源在不同時(shí)間運(yùn)行不同應(yīng)用功能。所以應(yīng)用功能與物理資源配置之間是多對(duì)多的映射,系統(tǒng)可以對(duì)資源的分配進(jìn)行調(diào)整,因此集合記錄了應(yīng)用功能和資源之間當(dāng)前的配對(duì)狀態(tài)。集合應(yīng)包含所有的組件資源,如圖5所示。
圖5 應(yīng)用功能集合定義Fig.5 Set of application
利用面向?qū)ο蟮募珊蛥f(xié)調(diào)技術(shù)將元類和元實(shí)體組成拼合模型,若干個(gè)下層模型又可合成上層模型,直到形成整個(gè)系統(tǒng)元模型。對(duì)綜合模塊化航空電子系統(tǒng)元模型搭建如圖6所示。系統(tǒng)模型包含了應(yīng)用功能線程集合、組件類、單元類和端口類。組件類包含了構(gòu)成子系統(tǒng)的各種組件,不同的組件又包含了不同類型的處理器模塊和端口。單元類是對(duì)處理器單元的抽象,包含PowerPC處理器和DSP處理器。端口類是對(duì)物理端口的抽象,不同的端口類型用于不同的信號(hào)和數(shù)據(jù)的傳輸。應(yīng)用功能線程集合則包含各種組件。
元模型定義了該領(lǐng)域的語(yǔ)法和語(yǔ)義,針對(duì)系統(tǒng)的元模型搭建完成后,在工具環(huán)境中解釋并注冊(cè),就形成了航電領(lǐng)域建模語(yǔ)言。以SPM為例,建立模塊的域模型。每個(gè)SPM模塊含2個(gè)DSP處理器,每個(gè)DSP處理器對(duì)應(yīng)3個(gè)LVDS端口和2個(gè)RapidIO端口,所有這些約束關(guān)系及屬性定義都是在SPM元模型中實(shí)現(xiàn)。SPM模型如圖7所示。
圖7 SPM模型Fig.7 Model of SPM
SPM模型內(nèi)部結(jié)構(gòu)如圖8所示,采用這種層次化的方式來(lái)組織特征,各層特征之間以整體-部分的關(guān)系構(gòu)成,可清楚地描述系統(tǒng)。
圖8 SPM內(nèi)部模型Fig.8 Internal model of SPM
根據(jù)系統(tǒng)的特點(diǎn)和要求,采用類似“電路圖”的方式,通過(guò)對(duì)模型和元素的拖放連接,可以建立具體的子系統(tǒng)模型。由于整個(gè)系統(tǒng)模型過(guò)大,所以只給出部分模型,如圖9所示。利用這種建模方式,可以根據(jù)具體情況動(dòng)態(tài)地對(duì)系統(tǒng)進(jìn)行配置,能夠快速地響應(yīng)需求的變化,提高開(kāi)發(fā)效率,減少錯(cuò)誤率。
圖9 某IMA系統(tǒng)部分模型Fig.9 Partial model of an IMA system
通過(guò)圖形化建??梢越?fù)雜系統(tǒng)的高度抽象模型,表征復(fù)雜系統(tǒng)整體結(jié)構(gòu)、各分層結(jié)構(gòu)、層與層之間的關(guān)聯(lián)關(guān)系等,從而使得人們對(duì)復(fù)雜系統(tǒng)的內(nèi)部實(shí)體、實(shí)體屬性、實(shí)體之間的關(guān)聯(lián)關(guān)系,以及演變過(guò)程更加清晰,同時(shí)也為項(xiàng)目團(tuán)隊(duì)之間建立了統(tǒng)一的復(fù)雜系統(tǒng)溝通方式。
對(duì)于構(gòu)建好的復(fù)雜系統(tǒng)圖示化模型,需轉(zhuǎn)化為易于機(jī)器解讀的系統(tǒng)模型描述文件??紤]到系統(tǒng)的擴(kuò)展性、易用性和程序處理的方便性,采用XML描述復(fù)雜系統(tǒng)的系統(tǒng)模型,并傳遞系統(tǒng)資源數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)的交互與共享[8]。應(yīng)用XML的目的是希望用一種標(biāo)準(zhǔn)的數(shù)據(jù)組織形式來(lái)傳遞數(shù)據(jù),增強(qiáng)系統(tǒng)內(nèi)外部的交互能力??梢詫ML作為一個(gè)中間件,以統(tǒng)一的模式進(jìn)行數(shù)據(jù)交換。
在基于元模型進(jìn)行復(fù)雜系統(tǒng)建模的基礎(chǔ)上,可以利用XMI(XML Metadata Interchange)規(guī)范生成使用XML語(yǔ)言描述的復(fù)雜系統(tǒng)的系統(tǒng)模型。生成的系統(tǒng)模型XML描述文件部分如下所示:
對(duì)組件的描述在之間,描述了組件的名字
系統(tǒng)模型轉(zhuǎn)化為易于機(jī)器解讀的模型XML表征,模型XML表征文件由XML解析器解析,形成系統(tǒng)的核心框架,通過(guò)框架完成平臺(tái)硬件注冊(cè)、應(yīng)用構(gòu)件注冊(cè)、硬件之間、構(gòu)件之間關(guān)聯(lián)關(guān)系的連接,完成整個(gè)系統(tǒng)應(yīng)用部署過(guò)程(靜態(tài)部署),并根據(jù)系統(tǒng)的備案策略,完成系統(tǒng)在不同工作模式下的智能管理及功能重構(gòu)功能(動(dòng)態(tài)部署)。
在電子信息系統(tǒng)領(lǐng)域,隨著系統(tǒng)規(guī)模的不斷增大,系統(tǒng)的復(fù)雜性也在急劇增加,這一點(diǎn)在模塊級(jí)高度綜合集成的航空電子系統(tǒng)中尤為突出。本文簡(jiǎn)述了基于元模型的系統(tǒng)建模方法,并通過(guò)XML進(jìn)行航電系統(tǒng)的知識(shí)表達(dá)。首先針對(duì)航電系統(tǒng)復(fù)雜性的特點(diǎn),將系統(tǒng)劃分為若干層次,從而大大降低了復(fù)雜性;其次在系統(tǒng)分層的基礎(chǔ)上,根據(jù)元模型建模技術(shù)構(gòu)建系統(tǒng)的元模型,再根據(jù)具體應(yīng)用設(shè)計(jì)搭建出系統(tǒng)模型;最后將系統(tǒng)模型轉(zhuǎn)化為易于機(jī)器解讀的XML格式,完成整個(gè)系統(tǒng)應(yīng)用部署過(guò)程。工程實(shí)踐表明,這種高度抽象的系統(tǒng)集成設(shè)計(jì)方法顯著提高了航電系統(tǒng)開(kāi)發(fā)的進(jìn)度與質(zhì)量。
[1] 陳穎.從復(fù)雜系統(tǒng)觀點(diǎn)看模塊級(jí)綜合集成航空電子結(jié)構(gòu)[J].電訊技術(shù),2009,49(4):98-102.CHEN Ying.The Integrated Modular Avionics Eletronic Architecture from Complex SystemViews[J].Telecommunication Engineering,2009,49(4):98-102.(in Chinese)
[2] 劉輝,麻志毅,邵維忠.元建模技術(shù)研究進(jìn)展[J].軟件學(xué)報(bào),2008,19(6):1317-1327.LIU Hui,MA Zhi-yi,SHAO Wei-zhong.Progress of Research on Metamodeling[J].Journal of Software,2008,19(6):1317-1327.(in Chinese)
[3] 劉興堂,梁炳成,劉力.復(fù)雜系統(tǒng)建模理論、方法與技術(shù)[M].北京:科學(xué)出版社,2008.LIU Xing-tang,LIANG Bing-cheng,LIU Li.Complexity System Modeling:Theory,Method and Technology[M].Beijing:Science Press,2008.(in Chinese)
[4] 孫鑫.綜合化CNI系統(tǒng)的測(cè)試系統(tǒng)設(shè)計(jì)[J].電訊技術(shù),2006,46(5):194-196.SUN Xin.Design of a Test System for Integrated CNI(ICNI)Systems[J].Telecommunication Engineering,2006,46(5):194-196.(in Chinese)
[5] 肖蘇華,李迪,葉峰.基于特定領(lǐng)域建模的數(shù)控系統(tǒng)元建模研究[J].深圳大學(xué)學(xué)報(bào)理工版,2008,25(1):92-96.XIAO Su-hua,LI Di,YE Feng.A meta-model of computer numerical control system based on domain-specific modeling[J].Journal of Shenzhen University Science and Engineering,2008,25(1):92-96.(in Chinese)
[6] 毛媛,劉杰,李伯虎.基于元模型的復(fù)雜系統(tǒng)建模方法研究[J].系統(tǒng)仿真學(xué)報(bào),2002,14(4):411-414,454.MAO Yuan,LIU Jie,LI Bo-hu.Metamodel-Based Modeling Methodology Research of Complex System[J].Journal of System Simulation,2002,14(4):411-414,454.(in Chinese)
[7] 楊斌.模塊化綜合系統(tǒng)的重構(gòu)設(shè)計(jì)[J].電訊技術(shù),2009,49(6):45-48.YANG Bin.Reconfigurable Design in Modular Integrated Systems[J].Telecommunication Engineering,2009,49(6):45-48.(in Chinese)
[8] 韓利芳.可擴(kuò)展標(biāo)記語(yǔ)言及其軍事應(yīng)用[J].電訊技術(shù),2009,49(12):109-114.HAN Li-fang.Extensible Markup Language(XML)and its Military Applications[J].Telecommunication Engineering,2009,49(12):109-114.(in Chinese)