本文框架
- 1. 系列介绍
- 1.1 FIM模块概述
- 2. FIM相关概念
- 2.1 FID概念
- 2.2 FIM数据结构
- 3. FIM模块作用过程
- 4. Autosar系列文章快速链接
1. 系列介绍
UDS(Unified Diagnostic Services)协议,即统一的诊断服务,是面向整车所有ECU的一种诊断通信方式,是基于ISO 14229规范的规范化诊断服务标准,其位于OSI模型中的应用层,UDS可基于不同的总线实现,如基于CAN总线可再结合ISO1576协议进一步实现传输层,本篇将介绍FIM模块相关内容:
1.1 FIM模块概述
FIM即功能禁止模块,其主要功能为根据DEM模块传入的每个Event的当前及历史故障状态并结合Event与FID之间的mapping关系,输出功能降级标志位,SWC模块根据功能降级标志位的置位情况作出是否功能降级的处理。
2. FIM相关概念
2.1 FID概念
FID即FunctionIdentifier,在FIM实现功能是否允许的计算,计算的对象是SWC或逻辑单元,它们接收信息“授予权限”/“拒绝权限”。在FIM模块中配置这些组件,并通过接口分配FunctionIdentifier来分配这些组件。
根据分配给特定FID对应的EventId计算每个FID的许可状态。然后,计算出的每个FID的许可状态(如FID_K),以确定最终的许可状态。此外,FiM可以轮询monitor状态以重新计算许可状态。轮询由请求其许可状态的功能(SW-C或BSW)或在循环任务中触发。
2.2 FIM数据结构
可配置多个EventId和抑制掩码分配给一个FID。每个FID的EventId和FIM掩码的数量必须对应匹配,以便每个配置的事件都存在相应的禁止掩码,禁止掩码中包含FID的禁止条件。
3. FIM模块作用过程
Step1:Dem模块调用接口FIM_DemTriggerOnMonitorStatus()告知Fim诊断状态发生改变;
Step2:FIM模块调用接口Dem_GetMonitorStatus()读取Event的最新状态;
Step3:SWC调用FIM_GetFunctionPermission()判断是否进行功能禁用/降级。
4. Autosar系列文章快速链接
Autosar系列文章概览及快速链接