亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        嵌入式軟件仿真測(cè)試平臺(tái)構(gòu)件化技術(shù)研究

        2012-09-05 10:35:56倩,常

        于 倩,常 江

        (北京控制工程研究所,北京100190)

        嵌入式軟件仿真測(cè)試平臺(tái)構(gòu)件化技術(shù)研究

        于 倩,常 江

        (北京控制工程研究所,北京100190)

        軟件測(cè)試在航天嵌入式軟件研制過(guò)程中占有極為重要的地位,使用全數(shù)字仿真測(cè)試平臺(tái)進(jìn)行軟件測(cè)試是行之有效的方法.對(duì)仿真測(cè)試平臺(tái)進(jìn)行層次化構(gòu)件分解和構(gòu)件設(shè)計(jì),研究航天軟件仿真測(cè)試平臺(tái)構(gòu)件化開(kāi)發(fā)方法,并給出應(yīng)用實(shí)例,證明了該方法可大幅提高平臺(tái)開(kāi)發(fā)效率.

        軟件構(gòu)件;仿真測(cè)試平臺(tái);軟件測(cè)試

        航天軟件為嵌入式軟件,進(jìn)行測(cè)試一般可采用以下2種方式:一是將嵌入式軟件代碼剝離出來(lái),用全數(shù)字仿真測(cè)試平臺(tái)進(jìn)行測(cè)試;二是直接將整個(gè)系統(tǒng)(包括硬件和嵌入式軟件)和其交聯(lián)的物理設(shè)備真實(shí)搭建進(jìn)行測(cè)試.方法二具有測(cè)試費(fèi)用高、可靠性測(cè)試難于實(shí)現(xiàn)等不可克服的缺點(diǎn).

        使用全數(shù)字仿真測(cè)試平臺(tái)對(duì)嵌入式軟件進(jìn)行測(cè)試,是目前國(guó)內(nèi)外公認(rèn)的、行之有效的、具有廣泛應(yīng)用前景的方法[1].全數(shù)字仿真測(cè)試平臺(tái)(簡(jiǎn)稱仿真測(cè)試平臺(tái)),是指使用計(jì)算機(jī)仿真的方式構(gòu)建嵌入式軟件運(yùn)行所需的硬件環(huán)境(處理器、接口芯片)以及運(yùn)行時(shí)所需要的外部接口數(shù)據(jù)源[2],在此基礎(chǔ)上通過(guò)施加各種測(cè)試激勵(lì)(包括故障激勵(lì)),實(shí)現(xiàn)對(duì)軟件的功能、性能、可靠性、安全性以及強(qiáng)度等各項(xiàng)測(cè)試評(píng)估驗(yàn)證工作.

        航天嵌入式軟件有其自身的行業(yè)特點(diǎn):軟件主要功能相對(duì)固定、軟件繼承性強(qiáng)、復(fù)用性強(qiáng)、研發(fā)工作量巨大且時(shí)間緊迫.傳統(tǒng)的仿真測(cè)試平臺(tái)隨著被測(cè)系統(tǒng)的種類、通信接口等發(fā)生變化,需要重新投入大量時(shí)間、人力、物力構(gòu)建新的測(cè)試平臺(tái),已經(jīng)不能滿足當(dāng)前航天嵌入式軟件測(cè)試的需要,基于構(gòu)件的仿真測(cè)試平臺(tái)可有效增強(qiáng)平臺(tái)復(fù)用性,避免測(cè)試平臺(tái)搭建時(shí)間長(zhǎng)、工作重復(fù)的問(wèn)題,提高平臺(tái)搭建效率.

        1 軟件構(gòu)件化

        1.1 軟件構(gòu)件定義

        軟件構(gòu)件是軟件復(fù)用的核心實(shí)體,是一組封裝的、規(guī)范的、可替換的、可重用的系統(tǒng)組成部分,它能在定義完善的體系結(jié)構(gòu)環(huán)境中實(shí)現(xiàn)某一清晰的功能,是一個(gè)與語(yǔ)境無(wú)關(guān)的組合單元,它的思想來(lái)自于工業(yè)產(chǎn)品部件.軟件構(gòu)件技術(shù)是一種類似于“零部件組裝”的集成組裝式軟件生產(chǎn)方式,它把零件、生產(chǎn)線和裝配運(yùn)行的概念運(yùn)用在軟件產(chǎn)業(yè)中,徹底打破了手工作坊式的軟件開(kāi)發(fā)模式.

        1.2 層次化構(gòu)件

        復(fù)合構(gòu)件是可以被逐層分解的,一個(gè)復(fù)合構(gòu)件經(jīng)過(guò)從頂層到底層的層層分解后呈現(xiàn)為樹(shù)結(jié)構(gòu)[3],最終分解為原子構(gòu)件,如圖1所示.

        圖1 軟件系統(tǒng)構(gòu)件分解圖Fig.1 Component decomposition of the software system

        復(fù)合構(gòu)件的規(guī)約中,構(gòu)件對(duì)外提供的功能和要求的外部功能分別被映射到成員構(gòu)件相應(yīng)的功能上,這就意味著,可以把復(fù)合構(gòu)件之間的連接信息逐層進(jìn)行消解,最終歸結(jié)到原子構(gòu)件之間的連接.然后把原子構(gòu)件的接口處的連接映射為構(gòu)件在實(shí)現(xiàn)體中的連接,不應(yīng)對(duì)原子構(gòu)件本身對(duì)應(yīng)的實(shí)現(xiàn)體做任何改動(dòng).最終生成的軟件系統(tǒng)可看作一個(gè)多對(duì)象原子構(gòu)件.

        2 仿真測(cè)試平臺(tái)的構(gòu)件化開(kāi)發(fā)方法

        2.1 構(gòu)件分解

        采用結(jié)構(gòu)分析的方法,依據(jù)嵌入式仿真測(cè)試平臺(tái)的系統(tǒng)構(gòu)成進(jìn)行構(gòu)件分解,共分為5個(gè)頂層構(gòu)件,測(cè)試平臺(tái)系統(tǒng)的構(gòu)件分解圖如圖2所示.

        圖2 測(cè)試平臺(tái)系統(tǒng)構(gòu)件分解圖Fig.2 Component decomposition of the simulation testing platform

        (1)內(nèi)核模擬器構(gòu)件

        內(nèi)核模擬器負(fù)責(zé)模擬軟件運(yùn)行環(huán)境的處理器,包括寄存器、指令系統(tǒng)及存儲(chǔ)器的仿真,以實(shí)現(xiàn)被測(cè)軟件的正確執(zhí)行.空間飛行器軟件檢測(cè)站自主研發(fā)的Vtest就是一個(gè)內(nèi)核模擬器構(gòu)件,支持8086、695等航天常用芯片,另外也可直接使用商用內(nèi)核模擬器,如KeilμVision2為51系列單片機(jī)的內(nèi)核模擬器.

        (2)交聯(lián)系統(tǒng)仿真構(gòu)件

        交聯(lián)系統(tǒng)仿真構(gòu)件是對(duì)被測(cè)軟件外圍環(huán)境的計(jì)算機(jī)仿真,它負(fù)責(zé)模擬軟件接口設(shè)備發(fā)送測(cè)試數(shù)據(jù),驅(qū)動(dòng)被測(cè)軟件運(yùn)行.交聯(lián)系統(tǒng)仿真構(gòu)件是仿真測(cè)試平臺(tái)最重要最復(fù)雜的組成部分.由于每個(gè)軟件的運(yùn)行環(huán)境、系統(tǒng)構(gòu)成均不相同,為增強(qiáng)軟件復(fù)用性,需要對(duì)交聯(lián)系統(tǒng)仿真構(gòu)件進(jìn)行進(jìn)一步分解.

        根據(jù)航天軟件交聯(lián)系統(tǒng)常見(jiàn)硬件接口類型進(jìn)行分解,可將交聯(lián)系統(tǒng)仿真構(gòu)件分解為通信接口構(gòu)件、采集接口構(gòu)件、輸出接口構(gòu)件、看門狗構(gòu)件等,該層構(gòu)件的復(fù)用性主要體現(xiàn)為:支持?jǐn)U充及重用,建立標(biāo)準(zhǔn)的層接口實(shí)現(xiàn)上下兩層之間及同層之間的交互.

        對(duì)各接口類型根據(jù)常用芯片進(jìn)行分解,將各芯片仿真模型構(gòu)件作為原子構(gòu)件,例如通信接口常用芯片有CAN總線、1553B總線、RS422串口等.該層構(gòu)件的復(fù)用性主要體現(xiàn)為:仿真模型的封裝性及通用性,仿真模型從結(jié)構(gòu)上都包括內(nèi)特性和外特性兩部分,建立仿真模型時(shí),內(nèi)特性應(yīng)按真實(shí)系統(tǒng)仿真并封裝,外特性可以通過(guò)配置文件進(jìn)行配置.

        圖3 交聯(lián)系統(tǒng)仿真構(gòu)件分解圖Fig.3 Decomposition of the conjunctive-system simulating component

        圖3為交聯(lián)系統(tǒng)仿真構(gòu)件的構(gòu)件分解圖.

        (3)測(cè)試腳本解釋構(gòu)件

        測(cè)試腳本解釋構(gòu)件負(fù)責(zé)將測(cè)試腳本解釋執(zhí)行,驅(qū)動(dòng)模型運(yùn)行,產(chǎn)生激勵(lì)信號(hào),使得被測(cè)軟件按測(cè)試用例指定的方式運(yùn)行,實(shí)現(xiàn)軟件測(cè)試.測(cè)試腳本解釋構(gòu)件可分解為腳本翻譯構(gòu)件及腳本驅(qū)動(dòng)構(gòu)件,腳本翻譯構(gòu)件將固定格式的腳本文件翻譯為機(jī)器語(yǔ)言,腳本格式為[時(shí)間令];#腳本名稱,參數(shù)1,參數(shù) 2……;腳本名稱及參數(shù)范圍可通過(guò)配置文件進(jìn)行設(shè)置.腳本驅(qū)動(dòng)構(gòu)件依據(jù)翻譯得到機(jī)器語(yǔ)言產(chǎn)生仿真輸入信號(hào)及數(shù)據(jù),腳本驅(qū)動(dòng)構(gòu)件需針對(duì)不同軟件不同測(cè)試方法定制.圖4為測(cè)試腳本解釋構(gòu)件的構(gòu)件分解圖.

        圖4 測(cè)試腳本解釋構(gòu)件分解圖Fig.4 Decomposition of the testing script interpretive component

        (4)測(cè)試結(jié)果分析構(gòu)件

        測(cè)試結(jié)果分析構(gòu)件負(fù)責(zé)收集記錄測(cè)試結(jié)果,并對(duì)收集到的測(cè)試數(shù)據(jù)進(jìn)行分析和自動(dòng)比對(duì),確定是否有軟件錯(cuò)誤,從而實(shí)現(xiàn)自動(dòng)化測(cè)試.測(cè)試結(jié)果分析構(gòu)件可分解為數(shù)據(jù)記錄構(gòu)件及自動(dòng)比對(duì)構(gòu)件,數(shù)據(jù)記錄構(gòu)件收集測(cè)試數(shù)據(jù)(包括輸入數(shù)據(jù)和輸出數(shù)據(jù))形成記錄文件;自動(dòng)比對(duì)構(gòu)件根據(jù)比對(duì)數(shù)據(jù)處理方式進(jìn)行分解,并且可針對(duì)不同軟件進(jìn)行擴(kuò)展.圖5為測(cè)試結(jié)果分析構(gòu)件的構(gòu)件分解圖.

        圖5 測(cè)試結(jié)果分析構(gòu)件分解圖Fig.5 Decomposition of the testing results analysis component

        (5)性能及覆蓋率統(tǒng)計(jì)構(gòu)件

        性能統(tǒng)計(jì)及覆蓋率構(gòu)件負(fù)責(zé)實(shí)時(shí)測(cè)試結(jié)束后統(tǒng)計(jì)軟件運(yùn)行過(guò)程中性能指標(biāo),以及被測(cè)軟件的測(cè)試語(yǔ)句覆蓋率、分支覆蓋率.性能統(tǒng)計(jì)構(gòu)件包括時(shí)間性能及RAM使用量統(tǒng)計(jì)等,可通過(guò)配置文件設(shè)置起始時(shí)刻及位置;覆蓋率統(tǒng)計(jì)構(gòu)件采用空間飛行器軟件檢測(cè)站自主研發(fā)的通用覆蓋率統(tǒng)計(jì)工具UCA和Coverager,該工具用于統(tǒng)計(jì)基于目標(biāo)碼的語(yǔ)句覆蓋率和分支覆蓋率,并對(duì)已執(zhí)行/未執(zhí)行的語(yǔ)句和分支進(jìn)行記錄和顯示.

        2.2 構(gòu)件設(shè)計(jì)

        按照I cube理論,構(gòu)件可以被描述為三層結(jié)構(gòu)[4]:第一層是接口層,聲明為其他構(gòu)件提供的接口;第二層是調(diào)用層,確定需要其他構(gòu)件提供的接口;第三層是實(shí)現(xiàn)層,描述該構(gòu)件的具體行為.為提高構(gòu)件的通用性和復(fù)用性,并結(jié)合測(cè)試平臺(tái)的特性,本文在設(shè)計(jì)構(gòu)件模型時(shí)增加用戶配置層.因此仿真測(cè)試平臺(tái)構(gòu)件采用調(diào)用層、實(shí)現(xiàn)層、接口層、用戶配置層的四層設(shè)計(jì).

        下面以CAN總線仿真構(gòu)件為例,對(duì)構(gòu)件設(shè)計(jì)及具體實(shí)現(xiàn)進(jìn)行說(shuō)明.

        (1)調(diào)用層

        調(diào)用層在CAN總線仿真構(gòu)件中與內(nèi)核模擬器關(guān)系最大,調(diào)用層的功能就是為了屏蔽不同的內(nèi)核模擬器,提供一個(gè)與處理器無(wú)關(guān)的統(tǒng)一接口.調(diào)用層要對(duì)內(nèi)核模擬器中內(nèi)存及I/O口讀寫、時(shí)間管理以及消息輸出的函數(shù)等進(jìn)行統(tǒng)一封裝,方便構(gòu)件中的一致調(diào)用.調(diào)用層設(shè)計(jì)如表1所示.

        表1 調(diào)用層設(shè)計(jì)表Tab.1 Design of the call level

        (2)實(shí)現(xiàn)層

        實(shí)現(xiàn)層是構(gòu)件的主體.CAN總線仿真構(gòu)件的實(shí)現(xiàn)層完成對(duì)CAN總線內(nèi)部特性的計(jì)算機(jī)仿真,共包含4個(gè)C文件,CAN.c、CANBasic.c、CANPeli.c、CANComm.c.CAN.c主要完成對(duì)CAN總線的初始設(shè)置,CANComm.c為輔助函數(shù),CANBasic.c及CANPeli.c為實(shí)現(xiàn)層的核心,分別對(duì)CAN總線BasicCAN和PeliCAN兩種形式進(jìn)行仿真,包括CAN總線數(shù)據(jù)接收、CAN總線數(shù)據(jù)發(fā)送以及CAN總線故障模型的仿真實(shí)現(xiàn).

        (3)接口層

        接口層是仿真測(cè)試平臺(tái)不同組成部分銜接的約定.CAN總線仿真構(gòu)件的接口層由CAN.h頭文件完成,其中定義了供其他構(gòu)件使用的數(shù)據(jù)結(jié)構(gòu)及函數(shù).接口層部分內(nèi)容如表2所示.

        表2 接口層設(shè)計(jì)表Tab.2 Design of the interface level

        (4)用戶配置層

        用戶配置層是增強(qiáng)構(gòu)件復(fù)用性的重要環(huán)節(jié). CAN總線仿真構(gòu)件的用戶配置層由CAN.ini、DATA.ini兩個(gè)配置文件完成,其中CAN.ini用于配置CAN總線外部特性,包括總線基地址、掛接引腳、晶體頻率、通信波特率等;DATA.ini用于配置總線數(shù)據(jù),包括正常數(shù)據(jù)和非法數(shù)據(jù).

        3 仿真測(cè)試平臺(tái)構(gòu)件化應(yīng)用實(shí)例

        下面給出一個(gè)應(yīng)用構(gòu)件搭建的某星載軟件的仿真測(cè)試平臺(tái)實(shí)例.

        被測(cè)軟件(SDIU)為某型號(hào)星載接口軟件,處理器為80C32,編程語(yǔ)言為 C語(yǔ)言,主要功能為通過(guò)1553B總線與CTU進(jìn)行連接,通過(guò)RS422串口為CFI設(shè)備連接,完成數(shù)據(jù)采集轉(zhuǎn)發(fā)及指令處理等功能.

        將該軟件測(cè)試平臺(tái)進(jìn)行層次化構(gòu)件分解,并對(duì)復(fù)用性進(jìn)行分析:內(nèi)核模擬器使用商用模擬器Keil μVision2;交聯(lián)系統(tǒng)仿真構(gòu)件中1553B總線、RS422串口、AD采集均使用常用芯片,端口地址輸出為常見(jiàn)操作,對(duì)應(yīng)構(gòu)件可復(fù)用,看門狗接口使用硬件電路設(shè)計(jì),未采用常見(jiàn)芯片,因此看門狗接口構(gòu)件需新研;測(cè)試腳本解釋構(gòu)件中腳本翻譯構(gòu)件為通用構(gòu)件,測(cè)試驅(qū)動(dòng)構(gòu)件需考慮軟件輸入和測(cè)試方法新研;測(cè)試結(jié)果分析構(gòu)件中數(shù)據(jù)收集構(gòu)件、文件記錄構(gòu)件均為通用構(gòu)件,通過(guò)1553B總線及RS422串口收集的數(shù)據(jù)均為直通型數(shù)據(jù),可復(fù)用直通型數(shù)據(jù)比對(duì)構(gòu)件,通過(guò)端口地址收集的離散指令格式特殊,需新研離散指令比對(duì)構(gòu)件;性能及覆蓋率統(tǒng)計(jì)構(gòu)件為通用構(gòu)件,可復(fù)用.該軟件測(cè)試平臺(tái)構(gòu)件組成如圖6所示.

        該仿真測(cè)試平臺(tái)復(fù)用構(gòu)件代碼量占總代碼量的90%以上,平臺(tái)搭建時(shí)間縮短85%.

        4 結(jié)束語(yǔ)

        本文研究了航天軟件仿真測(cè)試平臺(tái)構(gòu)件化開(kāi)發(fā)方法,對(duì)仿真測(cè)試平臺(tái)進(jìn)行構(gòu)件化分解,舉例說(shuō)明了構(gòu)件的設(shè)計(jì)方法,并經(jīng)過(guò)實(shí)例證明仿真測(cè)試平臺(tái)構(gòu)件化開(kāi)發(fā)方法可加強(qiáng)平臺(tái)復(fù)用性,大幅提高平臺(tái)開(kāi)發(fā)效率.

        圖6 接口軟件測(cè)試平臺(tái)構(gòu)件組成圖Fig.6 Architecture of the SDIU-testing-platform component

        [1] 劉斌,高小鵬,陸民燕,等.嵌入式軟件可靠性仿真測(cè)試系統(tǒng)研究[J].北京航空航天大學(xué)學(xué)報(bào),2000,26 (4):490-493 Liu B,Gao X P,Lu M Y,et al.Study on reliablility simulation testing system for embedded software[J].Journal of Beijing University of Aeronautics and Astronautics,2000,26(4):490-493

        [2] 賀紅衛(wèi).全數(shù)字仿真環(huán)境技術(shù)及其在航天軟件測(cè)試中的應(yīng)用[C].軟件測(cè)試學(xué)術(shù)交流會(huì),黃山,2005 He H W.All-digital simulation environment technology and its application in aerospace software testing[C]. Software Testing Symposium,Huangshan,2005

        [3] 張世琨,張文娟,常欣,等.基于軟件體系結(jié)構(gòu)的可復(fù)用構(gòu)件制作和組裝[J].軟件學(xué)報(bào),2001,12(9):1351-1359 Zhang SK,Zhang W J,Chang X,et al.Building and assembling reusable components based on software architecture[J].Journal of Software,2001,12(9):1351-1359

        [4] Chang C K,Kim S.A petri-net based specification method for architectural components[C].The 23rdAnnual International Computer Software and Application Conference,Phoenix USA,1999

        Com ponent Technology for Em bedded Software Sim ulation Testing Platform

        YU Qian,CHANG Jiang
        (Beijing Institute of Control Engineering,Beijing 100190,China)

        Software testing occupies a very important position in space embedded software development process,and the all-digital simulation testing platform is considered as an effective method for software testing.This paper studies hiberarchy component decomposition and design for simulation testing p latform,and component-based developmentmethod for space software simulation testing platform.Finally,an app lication example is given to verify these methods.

        software component;simulation testing platform;software test

        TP311

        A

        1674-1579(2012)05-0038-04

        10.3969/j.issn.1674-1579.2012.05.007

        于 倩(1982—),女,工程師,研究方向?yàn)檐浖y(cè)試;常 江(1979—),男,工程師,研究方向?yàn)檐浖y(cè)試.

        2012-03-14

        精品无码久久久久久国产| 日本高清一区在线你懂得| 日本最新视频一区二区| 国产成人av乱码在线观看| 无码人妻丰满熟妇片毛片| 欧美日韩中文亚洲另类春色| 视频一区视频二区亚洲| 亚洲成人av一二三四区| 久久无码专区国产精品s| 免费国产a国产片高清网站| 人妻少妇看a偷人无码精品| 国产一区二区三区精品久久呦| 成人国产精品高清在线观看| av一区二区在线免费观看| 色欲欲www成人网站| 精品人妻潮喷久久久又裸又黄 | 亚洲日本VA午夜在线电影| 日韩精品极品系列在线免费视频| 国产尤物精品视频| 久久国产36精品色熟妇| 韩国无码精品人妻一区二| av在线天堂国产一区| 国产免费爽爽视频在线观看| 欧美日韩亚洲精品瑜伽裤| 久久精品国产亚洲Av无码偷窍| 人妻少妇激情久久综合| 午夜性刺激免费看视频| 大陆极品少妇内射aaaaa| 国产av一区二区三区丝袜| 日本精品久久中文字幕| 精品国产亚洲av麻豆| 久久久久香蕉国产线看观看伊| 久久福利资源国产精品999| 国产午夜三级精品久久久| 国产极品女主播国产区| 人妻aⅴ无码一区二区三区| 国产人成视频免费在线观看| av色一区二区三区精品| 亚洲色欲色欲www| 五月天综合社区| 精品亚洲一区二区三区在线播放|