AUTOSAR-Specification of Watchdog Manager 阅读
一、开门狗管理有三种机制
1.定周期任务实时监控
2.非定周期任务执行时间监控
3.逻辑监控,执行顺序。
二、受监控的实体和检查点
Watchdog Manager监督软件的执行。监督的逻辑单位是受监督的实体。 AUTOSAR,SW-C,CDD,RTE,BSW模块中的架构块之间没有固定的关系,但通常受监督的实体可能代表SW-C中的一个SW-C或可运行的,a BSW模块或CDD取决于开发人员的选择。
受监督实体中的重要位置被定义为检查点。监督实体的代码与看门狗管理器的调用交织在一起。
每个受监督实体都有一个或多个检查点。受监督实体之间的检查点和过渡形成图。该图称为内部图。此外,来自不同受监督实体的检查点也可以通过外部过渡连接。每个看门狗管理器模式中可以有几个外部图形。
图表可以具有一个或多个初始检查点和一个或多个最终检查点。 最终检查点是正确的(假设检查点属于同一图表)。 在最终检查点之后,可以报告任何初始检查点。
在Watchdog Manager中,可以配置检查点所需的时间以及允许的外部和内部图形。
在运行时,监视程序管理器会验证是否已执行已配置的图。 这称为逻辑监督。 看门狗管理器因此破坏了检查点和转换的时间。 定期检查点的机制称为“活动监督”,对于非周期性检查点,称为“截止日期监督”
Watchdog管理器不会修复检查点的粒度。 很少粗粒度的检查点限制了Watchdog Manager的检测能力。 看门狗管理器只能检测到它是否可运行并检查时序约束。 相反,如果SW-C在每个块处具有检查点并且在可运行中具有分支,则看门狗管理器还可以检测该SW-C的控制流中的故障。 高粒度的检查点会导致监视程序管理器的复杂和大型配置
三个监督机制监督每个受监督实体。 受监督实体可以启用一个,两个或三个机制。 计算受监督实体的状态(称为本地状态)。
确定监督实体,然后根据每个监督状态确定整个MCU的状态(称为全局监督状态)。
三、监督职能
1.Alive Supervision
定期受监管实体对其在给定时间段内执行的次数有限制。 通过“活动监督”,看门狗管理器会定期检查是否在给定限制内达到了受监管实体的检查点。 这意味着看门狗管理器会检查受监管实体是否运行得不太频繁或不太频繁。
2.Deadline Supervision
非周期性或偶发性受监管实体对两个检查点之间的时间安排有各自的限制。 通过截止期限监督,看门狗管理器检查受监管实体的两个检查点之间的过渡时间。 这意味着Watchodog Manager会检查受监管实体中的某些步骤是否花费的时间不在配置的最小值和最大值之间
3.Logical Supervision
逻辑监督是检查嵌入式系统软件是否正确执行的基本技术。 当需要逻辑监督时,请参考安全标准(IEC 61508或ISO26262)。逻辑监督着重于控制流错误,这些错误会导致在应用程序的无错误执行过程中偏离有效(即编码/编译)程序序列。 。 如果一个或多个程序指令以不正确的顺序处理甚至根本没有处理,就会发生错误的控制流程。 控制流错误可能导致数据损坏,微控制器复位或违反故障静默性。
对于控制流程图,这意味着每次受监管实体报告新的检查点时,都必须验证在先前的检查点和所报告的检查点之间配置了转换。
四、Watchdog Handling
门狗管理器与看门狗接口通信以控制硬件看门狗。
与版本V1.x.y相比,Watchdog Manager不再负责通过看门狗接口和看门狗驱动程序触发硬件看门狗。相反,看门狗管理器通过看门狗接口报告看门狗驱动程序的触发条件。然后,看门狗驱动程序负责在条件为真的情况下以正确的时序触发硬件看门狗。触发条件是看门狗管理器循环设置的计数器值。每次触发硬件看门狗时,看门狗驱动程序都会递减此计数器。当计数器达到0时,看门狗驱动程序停止触发硬件看门狗。因此,当看门狗管理器无法执行时,它会自动导致看门狗复位(在递减计数器所需的时间加上HW看门狗的超时值之后)。
看门狗管理器本身可能会发生看门狗管理器错误地设置触发条件并且不会导致看门狗复位的情况。因此,可能需要在Watchdog Manager本身内使用受监督实体和检查点,同时避免在Watchdog Manager中进行递归。
五、错误处理
1.受监管实体中的错误处理
如果受监管实体是SW-C或CDD,则看门狗管理器可以通过RTE模式机制将受监管失败通知受监管实体。 然后,受监管实体可以采取措施从该故障中恢复。看门狗管理器可以在检测到监管故障时向诊断事件管理器(DEM)注册一个条目。 受监管实体可以根据该错误条目采取恢复措施。
2.分区关机
如果看门狗管理器模块检测到位于不受信任分区中的受监管实体中的监管失败,则看门狗管理器模块可以通过调用BswM来请求关闭分区。
3.由硬件看门狗复位
当看门狗接口不再触发硬件看门狗时,看门狗管理器向看门狗接口发出指示。 在硬件看门狗重置ECU或MCU之后。 这导致ECU和/或MCU硬件的重新初始化以及软件的完全重新初始化。
4.立即MCU复位
如果是立即的,看门狗管理器可能直接导致MCU复位。 这将导致MCU硬件和完整软件的重新初始化。 通常,MCU复位不会重新初始化其余的ECU硬件。
请注意,某些类型的微控制器上没有MCU复位功能。
MCU复位和看门狗复位是系统级错误反应。 在安全相关系统中,建议并行使用它们。 通过这种方式,这两种机制形成“冗余关闭路径”。
AUTOSAR-Specification of Watchdog Manager 阅读的更多相关文章
- CSR8670的A2DP与AVRCP的应用笔记
1. A2DP1.1. 基本概念阅读A2DP SPEC V12的1.1章,可知: Advanced Audio Distribution Profile(A2DP)典型应用是立体声音乐播放器的音乐到耳 ...
- Linux是如何启动的?
参考资料: An introduction to the Linux boot and startup processes 这篇随笔,可以理解为是对这篇英文文章的翻译与个人理解.笔记的整合. 扩展阅读 ...
- Programmer's Jokes
1. 一天, 下着小雨, 和同事们一起去上班,一位同事差点滑倒,另一位同事笑话说:如果人走路用爬的就不会摔倒了! 遂反问他:能用两行代码搞定的事情为什么要用4行呢? 2. 有趣的公式( Fr ...
- AUTOSAR-关于配置文件的思考
基于Can: 1. Can_Cfg.h contains compile time configurations. It should be included by Can.h which is sp ...
- Adaptive AUTOSAR 学习笔记 2 - 官方文档下载及阅读建议
目前互联网上没有太多的 Adaptive AUTOSAR 的学习资料,官方文档是一个很不错的途径.看过官方文档才发现,目前很多关于 Adaptive AUTOSAR 的文章都是官方文档的简化翻译,不如 ...
- 如何阅读《ECMAScript 2015 Language Specification》
你不需要把<ECMAScript 2015 Language Specification>通读一遍,因为没那个必要. 阮一峰建议: 对于一般用户来说,除了第4章,其他章节都涉及某一方面 ...
- tomcat源码阅读之session管理器(Manager)
一.UML图分析: (一) Session: Session保存了一个客户端访问服务器时,服务器专门为这个客户端建立一个session用来保存相关的会话信息,session有一个有效时间,这个时间默认 ...
- MINIBASE源代码阅读笔记之buffer manager
BufDesc frame 们的 descriptor(见BufHashTbl注释),包括 pageNo: 这个 frame 在文件里的id,page number prevframe: -1 表示此 ...
- 阅读The Java® Language Specification需要知道的英文单词
In any case/on any account 在任何情况下 “Varargs”是“variable number of arguments”的意思.有时候也被简单的称为“variable ...
随机推荐
- SpringBoot的Banner横幅
SpringBoot的Banner横幅即在SpringBoot应用程序启动过程中,日志输出的如下内容: 如果想替换此部分内容的话,可以在classpath根路径下建立一个文件,命名为:banner.t ...
- VMware Workstation 不可恢复错误: (vcpu-0) vcpu-0:VERIFY vmcore/vmm/main/physMem_monitor.c:1123
在新机器上,启动虚拟机报了个错: 使用VMware® Workstation 11.1.2 build-2780323安装MacOS系统时出现以下错误: VMware Workstation 不可恢复 ...
- 自定义环形进度条RoundProgressBar
一.效果图: Canvas画圆环说明: 圆环宽度不必在意,只是画笔宽度设置后达到的效果. 二.实现步骤 1.自定义View-RoundProgressBar 2.设置属性resources(decle ...
- LICEcap--一款录屏生成Gif的软件
下载地址:http://www.cockos.com/licecap/ 效果图:
- centos7 lvm合并分区脚本初探-linux性能测试 -centos7修改网卡名字-jdk环境安装脚本-关键字查询文件-批量添加用户
1.#!/bin/bash lvmdiskscan | grep centos > /root/a.txt a=`sed -n '1p' /root/a.txt` b=`sed -n '2p' ...
- 送票啦~ | 京东云邀您参加AI顶级盛会GTC CHINA 2019
本年度不可错过的AI顶级盛会 GTC CHINA2019 即将于12月16–19日在苏州举行 京东云重量级技术专家将携 AI前沿热议话题亮相 京东云相关AI最新动态,也会一并为您带上 小小剧透,快来看 ...
- (7)opencv图片内部的基本处理
就是,给定我们一张图片,我们可以对图片的每一个像素的色彩进行处理 比如,我们的原图是这个样子 然后我首先将他变成灰度图(灰度图的行道是1,就是chanaual是1) 然后,我又将灰色图片的黑白进行颠倒 ...
- 吴裕雄--天生自然Django框架开发笔记:Django Admin 管理工具
Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.可以在项目的 settings.py 中的 INSTALLED_APPS 看到它: ...
- jquery散记
感觉jquery的用法都要忘没了,简单捡一下 1.window.onload与$(document).ready的区别 ()编写个数 window.onload = function(){} //不能 ...
- js动态删除行错误
Uncaught TypeError: Failed to execute 'removeChild' on 'Node': parameter 1 is not of type 'Node'. js ...