ComM(通信管理)和CanNm(network)

1      网络管理组成部分
网络管理部分由通信管理器(简称ComM),通用网络管理器接口(简称NmIf),总线相关的网络管理器(简称NM,包括CanNM,LinNM,FrNM),总线相关的状态管理器(简称SM,包括CanSM,LinSM,FrSM)四个模块构成。
1.1ComM 模块
ComM模块简化用户对通信栈的使用,包括对网络管理使用的简化,同时协调一个ECU上多个独立的软件对总线通信模型的分时复用。可以通过ComM唤醒启动和保持物理信道唤醒;限制通信模式;协调通信请求;透明化软件组件和物理信道的关系;保持物理信道独立性;请求通信;支持不同的通信模式;询问当前的通信模式;获得通信模式变换的通知;支持多种物理通道类型;支持禁止唤醒物理通道;提供用户到通信通道的映射;询问当前请求的通信模式;提供被抑制的通信请求的计数器;对被抑制的通信请求的计数器清零;重设ComM模式限制;提供当前通信模式的计算。
1.2NmIf模块
 通用网络管理接口模块是ComM和总线相关的网络管理模块(比如CAN网络管理和FlexRay网络管理)之间的适配层,这是它的基本功能。此外,NmIf还提供了一种相同ECU上多个互联网络之间的交互功能,这被称为NM协调功能,其中“交互”指的是让这些网络可以同步进入网络睡眠状态。
1.3总线相关的网络管理模块
总线相关的网络管理模块是一个只适用于同一种总线上的硬件无关的协议,提供了一个通用网络管理接口层和对应总线接口模块之间的适配层。总线相关的网络管理模块对每一个网络都维护一个状态机以及两种请求(网络请求和网络释放)模式。这主要是为了协调网络在正常操作模式和总线睡眠模式之间的变换,也是它的核心功能。
总线相关的网络管理模块还提供了一些可选功能,如实现服务检查所有当前的节点,检查其他的节点是否已经准备睡眠等。
1.4总线相关的状态管理器模块
每个通信总线也有自己的和总线相关的状态管理器模块。这个模块实现了对应总线的控制流。总线相关的状态管理器模块主要负责维护两个状态机:
1)        网络通信模式状态机:负责维护网络通信模式;
2)        总线离线恢复状态机:负责把总线从离线事件中恢复。
比如CAN总线的状态管理器CanSM,负责实现CAN网络控制流程的抽象。CanSM提供API以便ComM来请求CAN网络进行通信模式的切换。ComM请求切换网络模式的时候,会传递一个参数(用来标识是哪个网络)。对应网络收到这个请求之后,会执行对应的通信模式切换。在网络通信模式切换的过程中,会执行对应的CAN外设控制和PDU处理。
由于延迟等原因,网络的通信模式可能会和ComM请求的不一致。这就需要CanSM通过以下两种方式来提供接口向ComM反馈当前的通信模式:
1)        CanSM自己提供API,ComM可以通过这个API调用来得到CAN网络当前的通信模式。
2)        CanSM使用ComM提供的回调函数来通知通信模式的改变。
            2        网络管理关键技术
2.1网络管理架构设计
网络管理的架构如图 2.1所示。最上层是通信管理器ComM模块,负责简化用户对网络管理和总线通信状态的控制等。网络管理部分使用通信服务栈来发送和接收维护网络激活态的网络管理帧。总线相关的状态管理器通过使用通信服务栈的服务来控制总线通信状态。网络管理的在ECU抽象层和微控制器抽象层直接使用通信服务栈的模块。
图 2.1 网络管理架构设计
2.2总线状态管理器网络模式管理机制
本小节以CanSM为例,阐述总线状态管理器中的网络模式管理机制。
CanSM管理的网络模式总线状态如表 2.1所示。
表 2.1 CAN总线网络模式的所有状态
名字
  • 3
    点赞
  • 76
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值