跳转至

看门狗定时器与系统可靠性设计

难度:🟡 中级 | 领域:系统可靠性 | 关键词:WDT, 窗口看门狗, 复位 | 阅读时间:约 16 分钟

日常类比

宿舍宿管定时查房:太久没应答就断电重启电脑。看门狗定时器(Watchdog Timer, WDT)在软件卡死时强制复位,是嵌入式可靠性底线[1][2]。

摘要

区分独立/窗口看门狗、喂狗策略、复位原因记录与物联网(IoT)现场排障。错误喂狗模式会掩盖死锁或引入误复位[2]。

1. 类型

类型 特点
标准 WDT 超时未喂狗则复位
窗口 WDT 太早/太晚喂狗都复位
外部 WDT 独立芯片,抗同芯片故障
任务级监控 RTOS 钩子检测任务饿死

2. 设计实践

做法 理由
主循环多条件满足再喂狗 避免中断里盲目喂狗
记录复位原因 RCC/标志位帮助诊断
启动宽限 允许初始化
关键任务心跳 窗口或软件看门狗
反模式 后果
仅在 ISR 喂狗 主逻辑死了仍“健康”
超时过短 正常抖动误复位
超时过长 故障恢复慢
关 WDT 调试遗留量产 现场失控

3. 局限、挑战与可改进方向

1. 同芯片共因失效

局限:MCU 时钟域全挂,片内 WDT 也可能失效。 改进:外部 WDT;电源监控[3]。

2. 误复位难复现

局限:现场偶发。 改进:面包屑日志、复位计数、保留 RAM 标记[2]。

3. 安全与看门狗交互

局限:安全状态被复位打断。 改进:按功能安全策略定义复位后安全输出[4]。

4. 多核/无线核

局限:应用核喂狗但协议栈死。 改进:多源健康聚合再喂狗[1]。

总结

看门狗是最后一道保险,不是调试替代品。用正确喂狗语义、复位取证与必要时外部监督,才能提升真实可用性。

参考文献

[1] MCU 看门狗应用笔记(ST/NXP 等). [2] 嵌入式可靠性与复位策略实践. [3] 外部看门狗芯片数据手册. [4] IEC 61508 语境下的监控与复位讨论. [5] 窗口看门狗时序说明. [6] RTOS 任务监控与软件看门狗. [7] 复位原因寄存器解读. [8] 电源监控(brown-out)与 WDT 配合. [9] 现场故障日志设计模式. [10] 汽车电子看门狗要求概述(对照). [11] 多核健康管理案例. [12] 调试时 WDT 处理与量产检查清单.