?

一種嵌入式計算機系統的看門狗設計

2021-02-05 08:47劉宵辰劉衛華
山西電子技術 2021年1期
關鍵詞:看門狗低電平中斷

劉宵辰,趙 剛,劉衛華

(航空工業西安航空計算技術研究所,陜西 西安 710068)

0 引言

看門狗機制在嵌入式計算機系統中應用十分普遍,在嵌入式計算機系統中,看門狗通常用來監控處理器芯片的工作狀態,防止處理器芯片工作異常從而導致系統出現故障,提高了嵌入式計算機產品的可靠性和安全性[1]。

看門狗機制可以通過軟件或硬件的方式實現,在一定的時間周期內監控系統運行的情況,若系統在規定的時間周期內沒有發出觸發信號,則看門狗會強制系統復位,以保證系統即使受到干擾仍能夠恢復正常工作[2]??撮T狗的工作流程如圖1所示。

圖1 看門狗工作流程

看門狗電路通常應具備的功能有:使能、禁止、喂狗、狗叫中斷、復位。當處理器芯片程序正常運行時,在小于狗叫時間間隔內,處理器輸出一個喂狗信號,看門狗就不會產生狗叫復位信號或者中斷信號。當程序執行異常時,處理器無法在小于狗叫時間間隔內輸出喂狗信號,則看門狗產生狗叫復位信號或中斷信號,進而使處理器發生復位或中斷,最終可使處理器軟件從起始位置開始執行,使軟件恢復正常。軟件看門狗電路集成在處理器的內部,此類看門狗雖然方便設計,但很容易失效,會發生看門狗無法啟動的情況。軟件看門狗失效的主要原因有:1) 很多處理器自帶的看門狗需要將相應的寄存器進行配置后才能啟動,若因為程序跑飛無法對寄存器進行配置,看門狗就無法啟動,從而發生看門狗失效;2) 若程序執行異常,進入了死循環,但是這個死循環中卻包含了喂狗操作,則看門狗不會狗叫、系統無法復位,看門狗發生失效[3];3) 硬件損壞,在運行過程中處理器硬件發生損壞也會造成看門狗失效。一些硬件看門狗電路將RESET引腳連接到處理器的復位引腳上,當狗叫發生后,系統無法記錄狗叫發生的時機,不利于故障分析。

本文設計了一種看門狗機制,采用看門狗芯片結合處理器實現,既能實現系統監控,還能對狗叫的時刻進行信息記錄,通過分析記錄的信息有助于故障定位[4]。

1 方案設計

1.1 基本電路

基本電路如圖2所示。復位芯片的RESET引腳連接至處理器的復位引腳,WDI引腳與處理器任意一個I/O引腳(如GPIO5)相連,MR引腳與處理器另一I/O引腳(如GPIO6)連接,WDO引腳接入處理器的非屏蔽中斷(NMI)輸入引腳。當處理器定時翻轉GPIO5引腳的高低電平,可實現看門狗芯片的喂狗操作,看門狗芯片不會發出復位信號。當處理器的程序跑飛,出現“死機”等異常情況的時候,處理器無法完成定時喂狗操作,看門狗芯片的WDO引腳將輸出一個低電平信號,該低電平將觸發處理器的非屏蔽中斷。處理器在中斷服務程序中可對此次中斷進行信息記錄,比如將中斷發生的時間記錄至NVRAM或FLASH中,還可以記錄中斷發生的總次數。處理器記錄完信息后,將GPIO6輸出一個低電平,觸發看門狗芯片的手動復位功能,看門狗芯片RESET引腳產生復位信號,完成處理器的復位。

圖2 看門狗電路

1.2 處理器中斷服務程序設計

處理器中斷服務程序所做的工作有如下三點:

1) 從NVRAM或FLASH中讀取處理器進入非屏蔽中斷的次數,將該次數加1后,將新的次數重新寫入NVRAM或FLASH中,此外將中斷發生的時間記錄到NVRAM或FLASH中;

2) 實現一次看門狗喂狗操作;

3) 將指定的GPIO引腳輸出一個低電平。

具體流程見圖3。

圖3 處理器中斷服務程序流程框圖

2 結語

本文設計的看門狗機制,將看門狗芯片與處理器進行了結合,不但能實現看門狗功能,避免了單一采用軟件看門狗易出現看門狗失效的問題,還能對狗叫的時刻進行信息記錄,通過分析記錄的信息將有助于故障定位。此看門狗電路實際測試功能符合設計要求,可提高系統的安全性和可靠性,已經在實際項目中廣泛使用,對其他類似的看門狗機制設計具有借鑒意義。

[1] 施偉,劉建輝.看門狗在實際應用中的問題分析及對策研究[J].世界科技研究與發展,2009,31(5):842-843.

[2] 賈鵬,曾少航,賈秀玲.M054硬件看門狗重啟記錄設計與應用[J].工業控制計算機,2019,32(6):63-64.

[3] 谷智明.新型純硬件看門狗電路設計分析研究[J].無線互聯科技,2019,16(7):121-122.

[4] 劉博,強凱,詹思維.PowerPC數據處理模塊的看門狗設計[J].航空計算技術,2019,49(2):105-107.

[5] 胡瑞忠.英飛凌XC2336B單片機看門狗編程——基于DAVE2.0平臺[J].山西電子技術,2014(6):59-60.

[6] 杜璧秀.基于DSP2812的“看門狗”設計[J].數字技術與應用,2015(1):153-153.

猜你喜歡
看門狗低電平中斷
把他叫醒
“單片機中斷概述”微課教學設計
一種考慮GPS信號中斷的導航濾波算法
一種實用的電腦接口判斷方法
2017款凱迪拉克2.8L/3.0L/3.2L/3.6L車型低電平參考電壓總線電路圖
Linux中斷線程化分析及中斷延時測試
跟蹤導練(二)(5)
數字電子技術的應用
淺談物理電路與數字電路
把它叫醒
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合