符合ASIL-D的看门狗应用设计

控制/MCU

1876人已加入

描述

当下,一边汽车自动化驾驶的发展势头节节攀高,一边频频出现各类痛心的质量事故。需求促进变革,需求促进功能安全在汽车电子的快速落地,本文就带你领略高安全等级设计中的看门狗。

在汽车安全性要求越来越高的电子系统中,为保证系统程序按照预期流程运行,看门狗对程序的监控措施已成为功能安全需求不可或缺的部分。比如实现程序运行逻辑的监控,实现程序运行时间的监控等,这样的看门狗应用需求,一般的看门狗是无法满足的,ZLG为用户推荐使用FS45/65电源管理芯片,其看门狗基于“question/answer”原理实现,可以很好的支持相关功能安全设计。

计数器

一、看门狗介绍

计数器

图1 Challenger WD

FS45/65的看门狗是Challenger WD,基于“question/answer”原理实现看门狗刷新:FS45/65基于线性移位寄存器(LFSR)生成8位伪随机数,MCU可以发送自定义LFSR的seed或使用FS45/65默认的LFSR值(0xB2),执行预定义的计算,通过SPI发送结果给FS45/65进行验证。验证正确,会产生新的伪随机数;验证错误,WD错误计数器递增,WD_LFSR的值不变,WD错误计数器按照预定的配置,达到一定阈值,对RSTB和FS0B进行控制,从而使系统进入安全状态。

任何WD的刷新都会重新启动窗口,这样可确保MCU与FS65之间的同步,同时与MCU系统独立的外部看门狗更能保证系统的稳定性。

二、看门狗窗口

计数器

图2 看门狗窗口

第一个看门狗刷新在INIT阶段,第一次看门狗刷新后,设备进入正常WD刷新模式,MCU必须在看门狗窗口打开期间刷新看门狗。看门狗窗口时间可以在WD_WINDOW[3:0]位配置为1.0ms到1024ms。看门狗只能在INIT阶段禁用,以允许“重新编程”。

  • 无论好的、坏的WD刷新或WD超时,都会重新启动新的WD窗口;
  • 可以在任意阶段更改窗口时间,更改窗口时间将在下一次WD刷新之后体现;
  • 窗口的占空比为50%±10%,不可修改。

三、看门狗错误计数

计数器

图3 看门狗错误计数器

FS45/65实现看门狗错误计数器管理,器件在INIT阶段通过配置看门狗错误计数阈值来决定RSTB和FS0B的动作,保证系统在发生严重的看门狗故障时,能够迅速进入安全状态。

出现看门狗故障时,WD错误计数器加2;正确刷新时,WD错误计数器减1。该原理确保循环的“OK/NOK”行为收敛于故障检测。为了允许应用程序的灵活性,在INIT阶段,该计数器的最大值可以使用WD_CNT_RFR[1:0]位进行配置。

看门狗错误计数器值可由单片机读取WD_ERR[2:0]位,用于诊断看门狗是否刷新正确。

四、看门狗刷新计数器

计数器

图4 看门狗刷新计数器

看门狗刷新计数器用于递减故障错误计数器。每次看门狗正确刷新时,看门狗刷新计数器将增加1,每当看门狗刷新计数器达到6,如果下一次WD刷新也很好,故障错误计数器递减1。

无论看门狗刷新计数器的当前值是多少,每次刷新看门狗出现错误时,看门狗刷新计数器将复位为0。

五、ZLG资源

图5 ZLG资源

ZLG为用户准备了完善的器件使用及功能安全资源,包括器件的评测套件、基础功能使用说明文档、基础功能代码、功能安全使用说明文档以及功能安全SafetyLib。

六、总结

FS45/65在看门狗应答策略、故障计数管理功能和诊断等一系列特性都远远优于传统窗口看门狗,能够有效保证系统稳定运行,并且符合国标GB/T 34590-5程序序列监控相关技术要求,可达到很高等级的诊断覆盖率。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分