摘要:作為飛機機電管理系統(UMS) 的核心設備之一,某機載遠程接口單元(RIU) 在使用過程中頻繁出現上電FLASH校驗失敗故障,影響了飛機任務出動。文章運用故障樹分析法,排查了RIU上電FLASH校驗失敗的根本原因:看門狗測試觸發NMI后未對中斷標志位進行清除,NMI重復執行期間NvRAM的“寫”操作被CPU的復位終止,造成FLASH校驗值被改寫。通過在軟件中增加“中斷標志清除”操作和增加“CPU等待復位”操作,解決了RIU上電FLASH校驗失敗問題。
關鍵詞:機電管理系統;遠程接口單元;FLASH校驗;故障樹分析;中斷標志清除
中圖分類號:V243 文獻標識碼:A
文章編號:1009-3044(2025)09-0103-03 開放科學(資源服務) 標識碼(OSID) :
0 引言
在飛機的機電管理系統中,遠程接口單元扮演著至關重要的角色[1-2],它負責收集機電設備的狀態信息并執行機電管理計算機(UMC)的輸出控制,從而成為連接飛機上傳感器、作動器與UMC之間信息的樞紐。基本的機電管理系統拓撲結構如圖1所示[3]。當RIU 發生故障時,傳感器收集的實時數據無法準確傳輸至UMC,導致飛行員無法獲取飛機當前的真實狀態,進而影響飛行決策。作動器的輸出控制也將受到影響,可能導致飛機的某些系統如環控系統等機電設備無法正常工作,嚴重時甚至引發飛行事故。本文分析并解決了RIU上電FLASH校驗失敗問題,顯著提高了飛機的出勤率和安全性。
1 問題概述
RIU投入使用以來,飛機在地面上進行通電檢查時多次發生監控設備報告RIU“FLASH 校驗失敗故障”,RIU無法進入“正常工作模式”。通過對故障數據的綜合分析,發現了在RIU上電自檢過程中,其CPU內部應用程序所計算的校驗和與預先固化于非易失隨機存儲器(NvRAM) 中的校驗和不匹配。一旦出現這種故障,會導致RIU無法進入“正常工作模式”,同時監控設備報告RIU發生“FLASH校驗失敗故障”。
2 工作原理
2.1 看門狗測試原理
RIU在上電自檢階段軟件會首先做看門狗測試,然后做FLASH檢驗測試。看門狗測試的目的是檢測在看門狗叫的情況下,應用軟件是否可以正常被復位。如圖2所示為看門狗測試原理框圖,其步驟如下。
①看門狗在100 ms內未收到“喂狗指令”時,微處理器監控電路(MSC) 將產生“喂狗超時信號WDO”。
②FPGA查詢到“喂狗超時信號WDO”有效時,產生非屏蔽中斷(NMI)“ 看門狗中斷WDG_I”。
③應用軟件記錄中斷服務程序后,通過“復位指令RST_OUT”復位MSC。
④MSC 發出“ 系統復位指令 SYS_OUT”復位FPGA和CPU。
當RIU上電自檢進行看門狗測試時,“看門狗中斷WDG_I”使軟件進入NMI進程,流程如圖3所示,該進程會對NvRAM進行讀和寫操作。
2.2 校驗電路及原理
FLASH大小為256 kB,集成在CPU內部,用于存儲RIU軟件。NvRAM存儲空間為32 kB,用于在RIU 下電時存儲RIU工作時間等重要信息。如圖4所示,CPU與NvRAM通過SPI接口進行數據讀寫。RIU上電自檢時,首先讀取NvRAM中的校驗和A,然后讀取CPU內部FLASH的數據按4字節累加計算校驗和B,校驗二者是否匹配。
3 故障原因分析
通過故障診斷[4]和RIU工作原理分析,NvRAM中FLASH校驗和A被改寫的原因可能為:一是NvRAM 功能異常造成存儲的數據錯誤,二是NvRAM在RIU 下電的正常寫入時數據錯誤,三是NvRAM在看門狗測試NMI中寫操作使數據錯誤。因此,以“NvRAM中的FLASH校驗和A被改寫”為頂層事件,“NvRAM功能異常”“NvRAM在RIU下電的正常寫操作異常”和“NvRAM在看門狗測試NMI中寫操作異常”為底層事件開展故障樹分析,故障樹如圖5所示。
3.1 NvRAM功能異常
NvRAM功能異常可能會造成非易失存儲單元或SRAM存儲的數據被改寫。使用示波器檢測VCC供電電源在建立過程中不存在抖動等異常情況,檢測NvRAM的片選信號CS、保持信號HOLD信號正常,檢測SPI對NvRAM讀寫操作時序符合設計手冊要求。在高低溫試驗箱對NvRAM進行讀寫測試和上下電數據保持測試,NvRAM 功能均正常。因此可以排除“NvRAM功能異常”的底層事件。
3.2 NvRAM在RIU下電的正常寫操作異常
NvRAM在RIU下電的正常寫操作如圖6所示,CS 為低有效,分別寫入“寫使能指令0x06”“寫操作指令0x02”“高8位地址”“低8位地址”和“數據”。該過程發生異常可能造成數據被改寫。經過清查,該NvRAM寫操作為Burst模式,若要將32kB地址空間全部改寫,需要按地址遍歷操作,必然需要相應的軟件分支才可以完成。經查詢應用軟件,未發現具備該功能的分支。因此可以排除“NvRAM在RIU下電的正常寫操作異常”的底層事件。
3.3 NvRAM在看門狗測試NMI中寫操作異常
NvRAM在看門狗測試NMI中寫操作異常,可能導致NvRAM中數據被改寫。如圖7所示,以CPU響應系統復位信號SYS_OUT為觸發,捕捉到看門狗測試中NMI被重復執行的現象。從圖中可以看出,喂狗超時信號WDO 發出到CPU 復位的時間Td 約為58.07 μs,NMI進程執行時間為Ti約為21.09 μs,完整地重復執行了2次,第3次執行未完成。CPU手冊中對NMI觸發過程約定:CPU內部進入NMI進程中必須清除“中斷標志”,否則當退出中斷服務進程時,會重新被請求而重復執行。
清查RIU軟件,未對“中斷標志”進行清除,故從MSC復位指令發出到CPU響應復位信號的時間內存在重復執行NMI進程的問題,第3次執行未完成造成NvRAM寫操作中斷,因此無法排除該底層事件。
3.4 故障定位結論
依據故障樹分析,故障定位結論為:看門狗測試觸發NMI后未對中斷標志位進行清除,NMI重復執行期間NvRAM 的“寫”操作被CPU 的復位終止,造成NvRAM中FLASH校驗和A被改寫。
RIU上電自檢時首先讀取NvRAM中的校驗和A,然后讀取CPU內部FLASH區域的軟件,按字節累加計算其校驗和B。校驗和A為被改寫,與校驗和B不匹配,RIU自檢結束后轉入“降級工作模式”,并通過總線將“FLASH校驗失敗故障”上報至監控設備。
4 解決措施及驗證
綜上所述,解決RIU上電FLASH校驗失敗故障的措施是:RIU軟件在上電自檢看門狗測試中進入NMI進程后,增加對“中斷標志”的清除操作。同時在MSC 發出系統復位后,使CPU內部處于等待復位狀態,不進行其他操作。由于“FLASH校驗失敗故障”發生在RIU上電過程中,因此將修改后的軟件固化至RIU后,連續進行了大量的上電、下電試驗[5],“FLASH校驗失敗故障”未再發生,因此故障定位準確,解決措施驗證有效。
5 結束語
通過對RIU上電FLASH校驗失敗故障的分析,研究制定了針對性的解決措施,徹底解決了RIU上電FLASH校驗失敗問題,提高了飛機機電管理系統的可靠性和飛機出動的效率,對保證飛行任務的完成具有積極意義。未來研究將繼續聚焦在深入研究NvRAM 存儲器特性,優化校驗算法以提高其適應性和魯棒性,以及探索新型存儲技術,為飛機FLASH校驗提供更加可靠、高效的解決方案等方向。