張楊 居慧 廖凱
【摘 要】結合RTCA/DO-254以及機載電子硬件適航符合性驗證過程中的工程經(jīng)驗,提出了一套完整的民用飛機機載電子硬件測試策略。
【關鍵詞】復雜電子硬件;簡單電子硬件;確定性測試;代碼覆蓋率;功能測試
0 引言
機載電子硬件是指安裝在民用飛機上的客戶化的可編程器件,如ASIC、PLD或FPGA等,在民用航空領域其具有廣泛的應用。2005年,美國聯(lián)邦航空局FAA正式將RTCA/DO-254作為民用航空飛機機載電子硬件的符合性方法。
測試過程用于發(fā)現(xiàn)設計中的錯誤或缺陷,因此它是機載電子硬件生命周期過程中的一個重要環(huán)節(jié)。但是該過程在民用飛機的合格審定過程中,卻面臨著兩個問題。一是DO-254針對測試過程的描述過于寬泛,沒有將其與具體的硬件測試活動相結合起來,對具體的工程項目沒有實際的指導意義。二是當前各合格審定當局并未制定統(tǒng)一的機載電子硬件測試接受準則。因此,制定一套可操作和可接受的機載電子硬件測試策略,是當前機載電子硬件合格審定過程中一個亟需解決的問題。
1 機載電子硬件的分類
有別于在工業(yè)界通用的定義和分類,機載電子硬件在民用航空領域,分為簡單電子硬件(以下稱SEH)和復雜電子硬件(以下稱CEH)。
SEH是指能夠在一個適當硬件層級,通過充分組合的確定性測試和分析,即可確保在所有可預見的運行條件下執(zhí)行正確的功能并無異常表現(xiàn)的機載電子硬件。
CEH是指不能被分類為SEH的機載電子硬件。對于此類電子硬件,在其開發(fā)和設計過程中要遵循DO-254中所定義的設計保證過程,測試正是該設計保證過程中的一個重要環(huán)節(jié)。
2 機載電子硬件的測試策略
2.1 機載電子硬件測試流程概述
工業(yè)界通用的電子硬件設計流程通常包括需求/功能定義、設計輸入、功能仿真、綜合優(yōu)化、綜合后仿真、布局布線、時序仿真、板級測試以及最終的調試。該流程同樣適用于機載電子硬件,但因民用飛機存在一定的特殊性,需要在以下幾個方面額外進行考慮。
(1)獨立性要求:測試活動必須要滿足獨立性的要求,即測試人員與開發(fā)人員不能為同一人;
(2)測試用例的編寫:所有的測試用例必須是基于需求的;
(3)工具的使用:對于在測試活動中用到的工具,如果沒有對工具的輸出進行獨立的評審,則需要對該工具進行鑒定;
(4)數(shù)據(jù)的可追溯性:需求、代碼、測試程序以及測試結果之間要保證可追溯性;
(5)數(shù)據(jù)的有效性:在向合格審定當局表明符合性時,功能性仿真以及綜合后仿真由于不能夠完整的考慮到時序的問題,因此其數(shù)據(jù)不能作為符合性數(shù)據(jù)。只有時序仿真以及更高層級的目標機測試的數(shù)據(jù)才能用來表明適航符合性。
結合機載電子硬件的測試過程以及第2章中的分類,分別給出不同類別機載電子硬件的測試策略及要求。
2.2 簡單電子硬件的測試策略
根據(jù)SEH的定義主要從兩個方面考慮對其進行測試。一是完備的充分組合的確定性測試和分析,這是一種類似于窮盡測試的方法,需要通過對硬件運行中各種情況進行充分考慮和驗證,從而保證硬件設計的正確性。二是適合設計保證等級的測試和分析,這意味著針對不同設計保證等級的SEH,其測試和分析的要求會存在不同(E級別電子硬件由于不會對飛機安全性產(chǎn)生影響,因此可不做要求)?;谶@兩個方面,并參考FAA及EASA在此方面的指南,對SEH測試策略進行以下分析和討論。
2.2.1 D級別SEH測試策略
設計保證等級為D級別的SEH,需要通過測試表明其對需求的符合性。該方法在本質上是功能測試,測試人員需要通過實施基于需求的測試,來最終表明SEH所有需求均已得到滿足。
2.2.2 C級別SEH測試策略
在滿足D級別SEH要求的基礎上,對于設計保證等級為C的SEH,還需在管腳級做充分的測試和分析。該方法要求充分考慮輸入管腳狀態(tài)的所有可能情況,也即管腳級的窮盡測試。如一個具有6個輸入管腳的C級別SEH,其管腳級充分測試的用例數(shù)目為26=64個。
2.2.3 A/B級別SEH測試策略
在滿足C級別SEH要求的基礎上,對于設計保證等級為A/B的SEH,還需要深入SEH的內部,進行基于器件內部各邏輯門的確定性測試和分析。該方法需要充分考慮機載電子硬件的特性及內部數(shù)據(jù)間的傳輸?shù)葐栴}。具體的需要從以下3個方面進行考慮。
(1)單個邏輯門方面:對于單個的邏輯運算門,如與門、或門等,需要保證在不同排列組合輸入的情況下,其輸出均是正確的。如一個3輸入單輸出的與門,需要23=8個測試用例,能夠完成該單個邏輯門的完整測試。
(2)狀態(tài)機方面:對于包含有一個或者多個狀態(tài)機的SEH,測試要覆蓋到所有可能的狀態(tài)及狀態(tài)的組合。如圖1所示的狀態(tài)機,在測試的時候,要保證能夠覆蓋到S1-S2-S3-S4-S7以及S1-S2-S5-S6-S7中所有的狀態(tài)。
(3)數(shù)據(jù)的并行處理:在機載電子硬件中,多個獨立的數(shù)據(jù)流可能會在某個時間通過共享資源、仲裁及相互影響的狀態(tài)機等方式,產(chǎn)生數(shù)據(jù)的并行處理問題。在測試的過程中,要保證測試能夠覆蓋到所有可能的并行條件。
2.2.4 SEH測試策略總結
綜上所述,可以得出SEH的測試策略,具體如下表1所示:
2.3 復雜電子硬件的測試策略
在民用飛機上大量使用的CEH,由于其邏輯的復雜性,不能像SEH一樣通過確定性的測試和分析的方法,來保證其設計正確性。因此對于CEH的測試策略,將基于盡可能發(fā)現(xiàn)設計中錯誤這一原則進行考慮。
針對CEH的測試,DO-254中提出了要進行基于需求的測試,對于設計保證等級為A/B級別的CEH,需要額外考慮高級的驗證方法,如元素分析法、形式化方法等。但是對于具體的測試方法和準則,DO-254中并沒有給出明確的說明。結合在實際工程實踐中的經(jīng)驗,從以下幾個方面對CEH的測試進行闡述。
2.3.1 復雜電子硬件的功能測試
對于CEH,首先要進行基于需求的功能性測試,從而保證其功能的正確性。
2.3.2 復雜電子硬件的代碼覆蓋率分析
對于設計保證等級為A/B/C級別的CEH,除了進行功能性測試,保證功能的正確性之外,還必須要對代碼進行分析,從而保證代碼的正確性,因此必要的代碼覆蓋率分析是必不可少的。DO-254附錄B中提出的元素分析法,其本質就是基于代碼覆蓋率所進行的一種分析方法。對于代碼覆蓋率分析的準則,當前在民用航空領域并沒有一個統(tǒng)一的接受準則,結合以往項目的經(jīng)驗,給出如下表2的建議接受準則。
表2 CEH代碼覆蓋率接受準則
2.4 其它考慮
上述對于SEH和CEH測試策略的討論,都是基于正常條件范圍內的測試考慮的。在實際的測試中,還要考慮到設計的健壯性,因此需要對設計進行必要的邊界條件測試,以驗證硬件在邊界條件下可否正常工作。
對于個別在低層級不能測試到的需求,可以放在更高層級進行測試或分析。但是無論是在哪個層級,最終必須保證對需求的全覆蓋。
3 結論
機載電子硬件的測試過程中包含有多種方法和策略,但是當前各合格審定當局并沒有統(tǒng)一的機載電子硬件測試接受準則。本文所提出測試策略,可以有力的推動我國民用飛機機載電子硬件的合格審定工作。
【參考文獻】
[1]FAA, Order 8110.105, Simple and Complex Electronic Hardware Approval Guidance[Z]. 2008.
[2]RTCA/DO-254, Design Assurance Guidance for Airborne Electronic Hardware[Z]. 2000.
[3]FAA, Job Aid, Conducting Airborne Electronic Hardware Reviews[Z]. 2008.
[責任編輯:湯靜]