01機載軟件的基本特征
機載計算機在現代飛機各組成部分中占有舉足輕重的位置,是現代航空電子系統的基礎和核心,其研制、生產和應用水平已成為衡量飛機先進性的重要標志。機載計算機通常是飛機上各種計算機的總稱,包括導航計算機、大氣數據計算機、飛行控制計算機、任務計算機、雷達信號/數據處理機、顯示控制處理機和通用綜合處理機等。
機載計算機系統負責完成飛行的數據采集、信息處理和指揮控制任務。可以毫不夸張地說,現代飛機每一個動作的完成都離不開機載軟件的支持,飛行員的每一個意圖也必須依靠機載軟件才能實現。同時,機載軟件還有一個明顯的發展趨勢,那就是它所完成的功能將越來越多。以美國軍用飛機的發展為例,第二代戰斗機F-111的航電系統,其20%的功能是通過軟件實現的;第三代戰斗機F-16,這個比例達到40%;到最先進的第四代戰斗機F-22中,航電系統功能中竟有80%是通過軟件實現的。機載軟件的規模呈超幾何級數增長。如美國F-106戰斗機的早期型號僅裝備1臺計算機,其作戰飛行程序為4K,占據了計算機存儲器容中的絕大部分;F-111D戰斗機的作戰飛行程序約51K;F-16戰斗機早期型號(F-16A)的作戰飛行程序為128K;70年代末艦載F/A-18戰斗機的作戰飛行程序則增加到約700K;F-22戰斗機機載軟件的規模已達到170多萬條語句。F-35的代碼量是F-22軟件代碼量的4倍多,達到了驚人的800萬條語句。
安全性設計是軟件設計的重要環節,尤其對于機載軟件而言,它的輸出會直接或間接地影響硬件的運行,其重要性不言而喻。但是,在進行安全性工作時卻遇到許多實際的困難,諸如設計手段不規范、沒有明確的驗證方法和有效的評估數據、無法準確評估軟件中錯誤的數量等。盡管如此,軟件界還是形成了共識,即軟件的質量更主要依靠過程(包括規范設計、嚴格管理等)來保障。
02民用飛機機載軟件適航標準及其符合性
2.1 適航管理
民用航空器的適航管理以保障民用航空器的安全性為目標,是政府適航當局在制定的各種最低產品安全標準的基礎上,對民用航空器的設計、制造、使用和維修等環節進行科學統一的審查、鑒定、監督和管理。可相對分為兩大類管理,一類是初始適航管理,另一類是持續適航管理。
適航管理的特點主要反映在以下幾個方面,即權威性或法規性、國際性、完整性和統一性以及動態發展性。
2.2 適航技術和符合性方法
民用航空器產品的安全性實現需要安全性技術,這些安全性技術要求從屬于適航要求才能達到在產品上的具體應用。民用航空器必須在產品生命周期內滿足相應的適航標準和要求,以確保產品的適航性和安全性,其首要環節是產品的型號設計符合規定的適航標準。民用航空產品設計符合適航標準并取證的途徑和方法是:
民用航空產品適航審定過程通常可理解為概念設計、要求確定、符合性計劃制定、計劃實施以及頒發型號合格證后等5個階段。對局方從事適航審定的人員,在適航審定中的技術層面工作主要是適航標準要求確定、評估和批準包括驗證試驗大綱在內的技術文件和做出符合性判定。
因此,無論是民用航空器的適航管理活動還是產品開發活動,都存在確定的適航技術。通常意義上存在三類適航技術:
1)適航標準確定或安全性指標和要求確定的技術
事故及案例分析及安全特征提取、新穎獨特設計安全(適航)設計要求、專項試驗(如燃燒、墜撞)設計及參數或指標確定、機隊運行數據收集與特征提取、新技術應用,特別是成熟、先進工業標準的引用或裁剪技術等;
2)滿足適航標準或要求的工程設計技術
適航標準或適航要求的工程定義或工程需求定義設計技術、系統架構分析與設計技術、系統安全性分析技術、備份或冗余設計技術、在線故障診斷及容錯設計技術、系統工程技術、結構設計技術、載荷設計技術、強度設計技術、顫振設計技術、系統生存環境(空間及區域)設計技術、隔離與保護設計技術、特殊風險分析與防范設計技術、維修與保障性設計技術、設計過程保證技術、硬件及軟件設計技術、HMI(人機環境)設計技術、噪聲抑制或控制設計技術等;
3)滿足適航標準或要求的驗證技術
系統安全性分析技術、各種平臺(臺架、模擬機、風洞及飛機)測試與試驗技術、試驗件和試驗裝置及試驗環境設計技術、計算與分析技術(有限元、流體、運動軌跡、仿真)、工程檢驗技術等;
表1適航符合性驗證方法
03機載軟件的適航與RTCA DO-178C
3.1 軟件的適航符合性標準
運輸類飛機適航標準(CCAR 25、14 CFR part 25、CS 25)是民用飛機進行適航審定的基本依據。其中與機載軟件密切相關的條目CCAR(14CFR/CS)25.1309規定了民用飛機必須滿足的設備、系統與安裝方面的安全性要求,其中包括:
1)凡航空器適航標準對其功能有要求的設備、系統及安裝,其設計必須保證在各種可預期的運行條件下能完成預定功能;
2)飛機系統與有關不見的設計,在單獨考慮以及與其它系統一同考慮的情況下,必須符合下列規定:
·發生任何妨礙飛機繼續安全飛行與著陸的失效狀態的概率極小;
·發生任何降低飛機能力或機組處理不利運行條件能力的其它失效狀態的概率很小。
RTCA DO-178C就是為機載軟件的表明符合性提供指導的一套標準,其目的是指導航空機載軟件開發,并確保航空機載軟件不僅滿足飛機和機載系統對其功能和性能的要求,還要具備不同嚴苛等級的安全置信度。需要注意的是,DO-178C不是單獨存在的,它和ARP 4754A、ARP 4761、DO-254一起構成了現代機載系統(尤其是高度綜合和復雜系統)安全性設計與評估的一組指南材料。四個文件之間的關系如下圖所示。
圖1系統-軟硬件過程保證標準間的關系
其中,DO-178C對航空機載軟件開發應該遵循的基本理念和規則從以下各個方面進行了說明和規定:
·機載系統與機載軟件之間的內在關系;
·機載軟件生命周期;
·機載軟件計劃過程;
·機載軟件的開發過程;
·機載軟件的驗證過程;
·機載軟件的構型管理過程;
·機載軟件質量保證過程;
·適航認證聯絡過程;
·軟件生命周期數據記錄;
·其它考慮。
總之,軟件層面的DO-178C研制過程包含了計劃過程、開發過程、綜合過程在內的三大類過程,對軟件研制的嚴苛程度進行了規定。在減少引入錯誤和增強檢出錯誤兩個維度下,保持機載軟件在不同安全性要求下的適航性。
在DO-178C中,針對每一個過程都涵蓋了以下內容:
·過程需要滿足的目標;
·過程需要產生的數據;
·數據證明目標的滿足;
從以上DO-178C的主要內容可以看出,DO-178C是面向過程和目標的。簡單來說,DO-178C主要通過以下三種形式來指導機載軟件開發者工作,其中包括:規定航空機載軟件生命周期中各個過程的目標;規定達到這些目標的活動和工程實現考慮;規定確認這些目標已經實現的證據記錄。DO-178C通過這三種形式的要求較全面地反映了航空機載軟件工程的基本理念和規則,指導著當今國際航空機載設備開發商的工程開發。
通過以上提及的四個標準及提供的符合性證據,才能完整形成對于CCAR(14CFR/CS) 25.1309在飛機、系統、設備和軟硬件不同層次上的證據鏈。
圖2軟件生命周期過程之間的基本關系
3.2失效狀態和軟件等級
為達到系統所需的安全性水平,標準首先對各類機載軟件定義了軟件等級(Software Level)。例如考慮如下兩種機載軟件情況:
1)飛機尾部廚房中用來控制煮咖啡器的軟件失效;
結果:可能會使一些乘客惱怒,但是不會影響到機上乘客的安全。
2)在低可見度情況下用來控制飛機自主進近的軟件程序失效;
結果:可能會導致機毀人亡。
顯然,這兩種軟件不可能開發成同樣等級,也無法以同樣的嚴格程度來控制開發。需要針對具體情況,根據軟件異常行為可能導致的飛機失效狀態類別來定義軟件的等級。
DO-178C中規定,軟件等級應與軟件失效可能導致的最嚴重的系統安全性影響程度相對應。也就是說軟件等級是由其失效狀態的類別來決定的,而軟件失效狀態的類別定義則與系統失效狀態的類別定義完全相同。同時,軟件失效狀態的類別與系統失效狀態的類別一樣,都是通過系統的安全性評估來確定的,即在確定系統的審定基礎時確定。表2給出了軟件等級與失效狀態類別的對應關系和簡要說明。
表2軟件等級與失效狀態之間的關系
軟件等級由申請人和合格審定局方共同確定,且通常作為軟件審定的基本前提,記錄在相應的審定計劃中。商討確定軟件等級的基本過程如圖3所示。
圖3軟件等級的確定過程
對于軟件等級的確定問題需要注意以下幾個問題:
1)無論系統怎樣設計,系統安全性評估過程確定了一個特定系統的軟件組件應有的軟件等級。失效所造成的功能喪失和故障影響均要在軟件等級確定中加以考慮處理。從系統功能出發,評估系統功能失效的影響等級,考慮是否可能由軟件的錯誤導致這種失效,進行確定軟件所造成的最大的系統失效為何種等級,從而確定軟件自身的等級。
2)一個系統功能可能會被分配給一個或多個彼此相互分割的軟件組件來執行,并行執行過程是指一個系統的功能要靠多個軟件組件來實現,以至于多個軟件組件的異常行為才會引起系統的失效。對于并行執行過程而言,至少要有一個重要或者關鍵的軟件組件的軟件等級由該系統的最嚴重失效狀態類別來確定,其它軟件組件的軟件等級將由系統失去上述功能后的剩余失效狀態類別來確定。
3)串行執行過程是指一個系統的功能要靠多個軟件組件來共同實現,以至于任何軟件組件的異常行為都將會引起系統的失效。對于串行執行過程而言,軟件組件的軟件等級都將由該系統的最嚴重失效狀態類別來確定。
4)如果一個軟件組件的異常行為導致了多個失效狀態的發生,那么最嚴重失效狀態類別就決定了該軟件組件的軟件等級。隨著系統設計技術的演變,產生了各種架構策略,例如在DO-178C標準第2.4節中詳細介紹,這些策略的使用可能會導致軟件等級的修改。例如:
· 分區/隔離
如果使用分區/隔離技術,每個被隔離軟件組件的軟件等級將由該組件所導致的最嚴重失效狀態來確定。如果分區/隔離保護由軟件來實現,那么該軟件的軟件等級將與被隔離軟件中的最高等級相同。
· 安全性監控
如果使用安全性監控技術,被監控功能的軟件等級可以降低至喪失該功能后的對應等級。執行安全性監控功能的軟件其軟件等級則由被監控功能中的最嚴重失效狀態來確定。
5)開發某一等級的軟件并不意味著為軟件分配失效率,因此軟件等級以及基于軟件等級的軟件可靠率(Software Reliability Rate)就不能像硬件失效率那樣在系統評估過程中加以應用。軟件的錯誤并不呈現概率分布。
審核編輯:湯梓紅
-
計算機
+關注
關注
19文章
7489瀏覽量
87877 -
飛機
+關注
關注
7文章
1169瀏覽量
39601
發布評論請先 登錄
相關推薦
評論