在嵌入式系統領域,系統的可靠性至關重要,尤其在一些關鍵應用場景中,如工業控制、醫療設備、航空航天等,任何微小的故障都可能導致嚴重的后果。看門狗電路作為保障系統可靠性的重要手段之一,其作用不容小覷。本文深入剖析看門狗電路的工作機制、設計要點以及應用場景,助力工程師在嵌入式系統設計中充分發揮看門狗電路的優勢。
一、看門狗電路的核心功能與工作原理
看門狗型復位電路在嵌入式系統中扮演著系統守護者的角色,其主要職責是實時監控系統的運行狀態,并在檢測到異常時迅速采取措施恢復系統的正常運行。當系統出現故障或停機時,看門狗電路能夠自動檢測到這一異常狀態,并觸發系統復位操作,使系統重新回到可控的初始狀態,從而避免系統長期處于故障狀態,降低潛在風險。
其工作原理相對簡潔而巧妙。在 CPU 正常工作時,系統會定期發送 “喂狗” 信號,這一信號的作用在于復位計數器,確保計數器的值始終處于一個安全范圍內。然而,一旦 CPU 無法正常工作,無論是由于軟件故障、硬件干擾還是其他原因,計數器將無法得到及時復位,其計數會持續增加直至超過設定的閾值。此時,看門狗電路便會觸發復位脈沖,強制 CPU 進行復位,重新啟動系統,以期恢復系統的正常運作。
二、典型應用案例與設計優化策略
在實際的嵌入式系統設計中,看門狗電路的可靠性很大程度上取決于軟件設計的合理性。通常情況下,工程師會將定時向復位電路發出脈沖的程序置于定時器中斷服務子程序中。然而,這種設計在某些特殊情況下仍存在潛在的缺陷。例如,當程序 “走飛” 發生在定時器初始化及開啟中斷之后,即使程序陷入異常狀態,定時器中斷仍可能持續產生,導致看門狗電路被正常復位,從而無法有效地對系統進行復位校正。
針對這一問題,提出了一種定時器加預設的設計改進方案。在初始化階段,將一個特定的地址壓入堆棧,在該地址處執行的是一條關閉中斷指令以及一條死循環語句。此外,在所有未被程序代碼占用的地址空間中,盡可能地填充子程序返回指令 RET。這樣做的目的是增加程序 “走飛” 后進入陷阱的概率。一旦程序陷入陷阱,定時器將停止工作并關閉中斷,此時看門狗電路由于無法及時得到復位信號,便會觸發復位脈沖,將 CPU 復位,使系統重新啟動并嘗試恢復正常運行。


三、硬件復位與軟件復位的選擇
看門狗復位既可以通過硬件方式實現,也可以通過軟件方式實現,具體的選擇取決于系統的設計需求以及實現的便利性。
硬件復位是指在硬件層面上實現看門狗復位功能。這種情況下,看門狗電路直接監控系統的狀態,當檢測到系統未能及時 “喂狗” 或出現其他異常情況時,由看門狗電路生成復位信號,通過直接控制復位引腳來重置整個系統。這種方式的優勢在于復位操作迅速、可靠,不受軟件狀態的影響,能夠有效應對系統出現嚴重故障時的情況。
軟件復位則是在軟件層面上實現的復位操作。當系統自身的監測機制檢測到需要進行復位時,由軟件執行相應的復位程序或代碼,對系統進行重新初始化和重啟。軟件復位的優點在于靈活性高,可以根據不同的系統狀態和需求,執行更為精細和復雜的復位流程。然而,其局限性在于,如果軟件本身已經陷入故障狀態,可能無法正常執行復位程序,從而無法實現有效的復位操作。
在實際的系統設計中,往往需要根據系統的可靠性要求、故障模式以及成本等因素,綜合考慮選擇硬件復位、軟件復位或者兩者相結合的方式,以達到最佳的系統可靠性保障效果。


四、看門狗電路設計實例與關鍵注意事項
以下展示了一個典型的看門狗電路設計示例,其中 “WATCHDOG_KICK” 為 “喂狗” 信號,用于定期復位看門狗計數器;RESET 為復位信號,通常與單片機的 reset 引腳相連,用于觸發系統的復位操作;U1、U2、U3、U4 為邏輯反相器,用于信號的邏輯轉換;Q1、Q2、Q3 為 N 型 MOSFET,作為開關元件控制復位信號的輸出;VCC 一般為 5V 電壓,為電路提供工作電源。
在設計和應用看門狗電路時,需要注意以下幾個關鍵要點:
(一)系統電壓匹配
選擇看門狗電路時,必須依據系統內部的電壓軌進行選型,即根據 MCU 或 DSP 的驅動電壓來選擇適配的電壓監控器。確保看門狗電路的工作電壓與系統電壓相匹配,是保障電路正常工作的基礎。
(二)看門狗輸入端(WDI)功能保障
當 MCU 無法正常工作,且其片內看門狗功能也失效時,具有集成看門狗功能的監控器能夠通過外部 WDI 輸入端檢測到這一異常狀態,并及時觸發復位操作,從而顯著提高系統的可靠性,避免系統因軟件故障而陷入長期不可控的狀態。
(三)手動復位(MR)功能的必要性
手動復位功能為系統維護和調試提供了極大的便利。在某些特殊情況下,如系統出現未知故障或需要進行軟件更新時,可以通過手動復位方式對電路進行強制復位,或者通過應用中的另一個器件來主動控制監控器電路,實現對系統的快速恢復和重新配置。
(四)有效高電平輸出適配性
如果處理器的復位輸入要求采用有效高電平復位信號,則在選擇和設計看門狗電路時,應確保其輸出能夠滿足這一要求,無需增加額外的電平轉換器件,從而簡化電路設計,降低系統成本。
(五)電源故障輸入 / 輸出(PFI/PFO)的擴展應用
利用看門狗電路中的比較器功能,可以實現電源故障輸入 / 輸出(PFI/PFO)功能。這一功能為系統提供了更大的靈活性,例如可以用于電池電量的長時間監測以及電壓跌落預警,提前發現電源問題并采取相應措施,保障系統的穩定運行。
(六)延遲時間的優化設置
合理的延遲時間設置對于系統的穩定運行至關重要。在系統復位過程中,一定的延遲時間可以確保電源電壓和電路中的其他器件在正常操作重新開始之前先穩定下來,降低電壓波動對系統的影響,從而提高系統的可靠性。
(七)通道數的合理配置
系統中所需的監控器功能的數量主要取決于處理器及外圍器件的電壓配置。例如,如果處理器工作在獨立的電壓軌上,同時系統中的存儲器又工作在另一個不同的電壓軌上,那么可能需要多通道的監控器來分別對不同的電源軌進行監控,確保整個系統的供電穩定性和可靠性。
(八)芯片啟動選通功能的重要性
當電源電壓處于欠壓狀態時,看門狗電路的芯片啟動選通功能能夠有效防止錯誤數據寫入 CMOS RAM,避免數據的損壞和系統的進一步惡化。這一功能在系統上電啟動以及電源波動較大的情況下尤為重要,能夠保障系統數據的完整性和可靠性。
五、總結
看門狗電路作為嵌入式系統中不可或缺的可靠性保障機制,其設計和應用需要綜合考慮系統的硬件架構、軟件流程以及實際應用場景等因素。通過深入理解看門狗電路的工作原理、優化設計策略以及關鍵注意事項,工程師能夠為嵌入式系統構建一個高效、可靠的守護屏障,確保系統在各種復雜環境下的穩定運行。在追求高可靠性的現代電子系統設計中,合理運用和精心設計看門狗電路,是實現系統長期穩定運行和降低維護成本的重要手段之一。
〈烜芯微/XXW〉專業制造二極管,三極管,MOS管,橋堆等,20年,工廠直銷省20%,上萬家電路電器生產企業選用,專業的工程師幫您穩定好每一批產品,如果您有遇到什么需要幫助解決的,可以直接聯系下方的聯系號碼或加QQ/微信,由我們的銷售經理給您精準的報價以及產品介紹
〈烜芯微/XXW〉專業制造二極管,三極管,MOS管,橋堆等,20年,工廠直銷省20%,上萬家電路電器生產企業選用,專業的工程師幫您穩定好每一批產品,如果您有遇到什么需要幫助解決的,可以直接聯系下方的聯系號碼或加QQ/微信,由我們的銷售經理給您精準的報價以及產品介紹
聯系號碼:18923864027(同微信)
QQ:709211280