在AUTOSAR中,WDG模块从上到下,是由WdgM、WdgIf和Wdg Driver组成,这三部分在不同的运行层次中,却与紧密相关,共同实现功能。
一、WdgIf是将WdgM和Wdg Driver联系起来的中间层,他将底层进行抽象供上层调用,同时将WdgM的控制操作传递给底层Wdg Driver。
二、Wdg Driver是Wdg底层驱动,控制其运行模式,可以设置为Slow Mode、Fast Mode和OFF Mode。
三、WdgM是实现WDG模块功能的核心模块,其有如下的作用:
1.提供用户操作的API。
2.判断各Supervision Entity的Local Status,汇总得到整个WDG的Global Status。
3.提供故障处理和喂狗。
4.下发指令给下层WdgIf,并获取其反馈结果。
其组成如下所示:
(SE:Supervision Entity)
Mode:
- WDG可以有多个Mode,不同的Mode有不同的检测对象和参数
- 不同Mode可以共享相同的Supervision Entity
- Wdgm_SetMode Api可用于切换Mode
Supervision Entity(SE:监督实体)
- SE由Checkpoint、Alive Supervision、Deadline Supervision和Logical Supervision组成
- 即使该SE中由Checkpoint,但无Supervision,配置工具将不生成该SE,因为其无实际作用。
- SE的状态体现为Local Status,其取决于其下的各种Supervision状态
- Mode切换将导致SE的状态改变