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 ...
随机推荐
- POJ - 2253 Frogger(最短路Dijkstra or flod)
题意:要从起点的石头跳到终点的石头,设The frog distance为从起点到终点的某一路径中两点间距离的最大值,问在从起点到终点的所有路径中The frog distance的最小值为多少. 分 ...
- Tyvj1952 Easy
%%http://hzwer.com/2838.html 比较巧妙的是原来L^2->(l+1)^1=L^2+2*L+1这样就可以递推了 “?”的贡献及时“o”贡献的1/2. #include&l ...
- Swift字符串截取与Range使用
1.String.Index String.Index表示一个位置,使用String与String.Index可以获取该位置的Character let str = "123456789&q ...
- HTML拖放
<html><head><style>.droptarget { float: left; width: 100px; height: 35p ...
- Short Essay你真的会写了吗?
提到short essay(可能其他essay也一样),很多同学都很头疼.“没有思路?不知从何下笔?没有亮点?”等等,这些都是同学们的致命伤,因此,short essay就成为了广大留学生的“送命题” ...
- 数组空值empty
Array构造函数只带一个数字参数时(否则是作为填充),该参数会被作为数组的预设长度,而非填充一个元素,因此数组内是空单元 如果一个数组中存在一个空单元,即length的值大于实际单元数,这样的数组称 ...
- Spring中的注解——@nullable和@notnull
@nullable和@nutNull 在写程序的时候你可以定义是否可为空指针.通过使用像@NotNull和@Nullable之类的annotation来声明一个方法是否是空指针安全的.现代的编译器.I ...
- 2020/2/13 bluecmsv1.6sp1代码审计
0x00 前言 从今天开始审计一些小的cms,一周内至少审计一种,中间可能会写点别的有趣的东西 0x01 安装好后,看到登陆框,用万能密码打一发,无果,尝试重装,可以重装.有robots.txt 看u ...
- kube-controller-manager配置详解
KUBE_MASTER="--master=http://10.83.52.137:8080" KUBE_CONTROLLER_MANAGER_ARGS=" "
- CNN:卷积输出分辨率计算
卷积是CNN非常核心的操作,CNN主要就是通过卷积来实现特征提取的,在卷积操作的计算中会设计到几个概念:步长(strides).补充(padding).卷积核(kernel)等,那卷积的输出分辨率计算 ...