張弛 毛寧 謝宇辰 中國航空工業集團公司西安航空計算技術研究所
在機載計算機應用領域,為確保系統的高可靠性和強測試性,設計時分別會從系統、硬件、軟件等角度進行故障模式分析,找出影響系統安全的所有故障,并對故障進行檢測和管理。通常會在軟件中進行BIT測試,包括上電BIT、初始化BIT、周期BIT等,檢測和定位計算機自身的各種故障,首先會將故障信息進行存儲,存儲內容涉及故障編碼、故障時間、故障信息狀態等;其次會根據設計好的故障管理策略,采取適當的措施,以保證系統發生故障時,將性能損失降低到最小,從而保證飛行安全。
本文介紹一種機載計算機故障分類方法,可從不同維度對故障進行判定和管理,在系統檢測到故障發生時,根據故障分類的不同,軟件采取不同的管理辦法,有效保證了故障管理的正確性和可靠性。
為方便進行故障查詢、記錄、傳輸、管理和維護,設計時應對每條故障都設置一個唯一的故障編碼。故障發生,首先則會置故障標志并存放在以故障編碼為檢索索引的連續內存區域中。故障按照嚴重程度可以被劃分為不同等級,等級越高表明故障越嚴重。各種故障信息,既可以通過各類通訊接口發送給其他機載計算機或設備,同時如果該故障需在內部非易失存儲器中存儲,則將該故障寫入。
不同的故障檢測可在軟件的不同部分進行,例如可以在初始化程序、后臺任務、實時任務中進行。一般大多數故障檢測是在實時任務中完成的。而在實時任務中,又可以根據故障檢測所需要的頻繁程度將故障分置在不同的周期任務中。
因為故障的發生可能是偶然因素導致或是“硬傷”導致,不同故障對系統的影響程度也不同,且許多故障往往具有很強的關聯性和誘發性,因此需對所有故障建立不同的分類,從各個維度進行故障類型標記,建立并實施不同的管理策略。根據故障發生的頻繁程度,可以分為瞬時故障和永久故障;根據故障發生對系統產生的影響,可以分為一般故障和嚴重故障;根據故障之間的因果關系,可以設置關聯故障。
機載計算機的故障從故障時間或者故障特性角度分為瞬時故障和永久故障。瞬時故障一般是由于外界擾動引起的,短時間內可恢復正常的故障;永久故障是指機載計算機不可恢復的硬故障。
瞬態故障和永久故障的判斷可以采用雙閾值方法進行,不在設計時進行預設,其中,較低的閾值用于永久性故障的判斷,較高的閾值用于瞬態故障的判斷。當某條故障由于持續多個周期發生而較快達到故障時延,則該故障為永久性故障;當某條故障經過多次反復才達到故障時延,則該故障為瞬態故障。瞬態故障和永久故障的判斷流程見圖1所示。
機載計算機的故障從故障信息狀態或者系統控制角度分為一般故障和嚴重故障。一般故障是指機載計算機的某個通道或通道中的某個模塊故障,仍可對系統進行控制情況下的故障;嚴重故障是指計算機的故障,導致其喪失對系統進行控制的能力。一般故障和嚴重故障是設計時預設的。
當機載計算機的一般故障發生時,只需對故障進行記錄和上報操作,對故障可能造成的影響,利用預設的安全值進行保護輸出。
機載計算機嚴重故障一般包括CPU故障、FLASH校驗和錯誤、SRAM訪問錯誤、周期任務超時、堆棧越界、軟件跑飛導致看門狗報警、重要參數無法獲得等,這些故障一旦發生,一方面需要在非易失存儲器中進行故障編碼記錄,另一方面應進行產品自動復位和復位次數紀錄,若復位次數未達到預設的上限,且在復位重啟后產品工作正常,不再有任何的嚴重故障發生,則無需再對產品進行復位或其他操作,若復位后又不斷有嚴重故障發生,一旦達到預設上限,則產品無需繼續不斷復位,將進入保護模式,可以只進行輸入信號的采集,不應再對外輸出,因為這時產品被認為是不可靠的。無論是否達到復位次數的預設上限,一旦復位次數不為零,就應通過通訊接口將故障信息發送到維護設備中,可以進行故障分析和處理,保證產品的安全可靠。

圖1 瞬態故障和永久故障的判斷流程
關聯故障是為了提高產品的測試性而設計,可以避免某個故障的發生導致其他故障一起發生時,所有故障都被記錄和顯示,造成故障定位的困難。其含義可解釋如下:若B、C……故障可引起A故障的發生,則將B、C……故障標記為A故障的關聯故障,這樣的關聯關系是設計時預設的。利用關聯故障可以將一些觸發條件較多的故障細化,同時避免不必要的故障記錄占據存儲單元。當某故障的一條或多條關聯故障發生時,該故障不會被記錄,只會記錄其關聯故障,計算機產品認為該故障是由其關聯故障引起的,但是該故障及其關聯故障均應通過通訊接口送到維護設備中進行檢查。
本文通過預設或實時監測的方法,對瞬時故障和永久故障,一般故障和嚴重故障,以及關聯故障進行了描述,通過對不同故障增加類型標記,可以在故障發生時,采取有效合理的管理策略,這樣的分類方法可以廣泛應用于機載計算機領域。