CAN网络管理规范AUTOSARCP版本4.3.0文件标题CAN网络管理规范文档拥有者AUTOSAR文件责任AUTOSAR文件识别号码013文件分类标准文档状态最终部分AUTOSAR标准经典平台标准发布的一部分4.3.0文档变更记录日期发布由...更改更改说明2016-11-304.3.0AUTOSAR发布管理API协调改进了生成后的参数支持和依赖关系在NM协调器就绪睡眠位更改时传输附加的NM消息介绍可靠的TX确认2015-07-314.2.2AUTOSAR发布管理澄清NM消息传输开始澄清配置依赖关系通信被禁用时澄清NM定时器2014-10-314.2.1AUTOSAR发布管理删除了过时的配置参数部分网络处理改进重新构建API中的Const用法2014-03-314.1.3AUTOSAR发布管理重新说明并改进部分网络算法要求更正了远程睡眠指示超时处理澄清通信控制期间的网络释放处理2013-10-314.1.2AUTOSAR发布管理固定消息循环时间偏移处理更正主动唤醒处理编辑更改删除了有关变更文档的章节2013-03-154.1.1AUTOSAR管理更正了部分网络处理协调员支持得到改进Prepare-Bus的启动处理澄清了睡眠2011-12-224.0.3AUTOSAR管理支持部分网络支持汽车唤醒立即传输NMPDU通过多个连接的网关支持协调关闭文档变更记录日期发布由...更改更改说明2009-12-184.0.1AUTOSAR管理更改了RxIndication和TriggerTransmit的签名更快的NM唤醒2010-02-023.1.4AUTOSAR管理Nm用户数据可通过PduR访问更改与CanIf的PDU句柄ID交换没有更多实例特定的CanNm_MainFunction()API修改了法定免责声明2008-08-133.1.1AUTOSAR管理修改了法定免责声明2008-02-013.0.2AUTOSAR管理合并CANNM和通用NM扩展文档元信息进行了小型布局调整2007-01-242.1.15AUTOSAR管理引入了构建和链接时间配置变体引入了可配置的NMPDU格式引入被动模式修改了法定免责声明添加了发行说明修改了“给用户的建议”添加了“修订信息”2005-05-311.0AUTOSAR管理初始版本CAN网络管理规范AUTOSARCP版本4.3.0放弃者本规范及其中包含的材料(由AUTOSAR发布)仅用于提供信息。AUTOSAR及其参与的公司对使用该规范不承担任何责任。本说明书中包含的材料受版权和其他类型的知识产权保护。本说明书所含材料的商业开发需要获得这种知识产权的许可。本说明书可以在不做任何修改的情况下以任何形式或通过任何方式进行使用或复制,仅供参考之用。出于任何其他目的,未经出版者书面许可,不得以任何形式或通过任何方式利用或复制规范的任何部分。AUTOSAR规范仅针对汽车应用开发。它们既未开发,也未经过非汽车应用测试。AUTOSAR这个词和AUTOSAR标志是注册商标。给用户的建议AUTOSAR规范可以包含示例性项目(示例性参考模型,“使用案例”,和/或对示例性技术解决方案,设备,过程或软件的参考)。任何这样的示例性项目都包含在说明书中仅用于说明目的,并且它们本身不是AUTOSAR标准的一部分。它们不存在于这些规范中,也没有任何实际上实现这些示例性项目的产品的AUTOSAR一致性的任何后续文档,意味着涵盖这些示例性项目的知识产权按照适用于AUTOSAR标准的相同规则许可。目录1介绍和功能概述本文档介绍了AUTOSARCAN网络管理(CanNm)的概念,核心功能,可配置功能,接口和配置问题。AUTOSARCAN网络管理是一个独立于硬件的协议,只能在CAN上使用(有关限制,请参阅第4.1章节)。它的主要目的是协调网络的正常运行和总线休眠模式之间的转换。除了核心功能之外,还提供了可配置功能,例如,实施服务来检测所有当前节点或检测是否所有其他节点都准备好休眠。CAN网络管理(CanNm)功能提供网络管理接口(NmIf)和CAN接口(CanIf)模块之间的适配。有关AUTOSAR网络管理功能的一般理解,请参阅[6]。2缩略语和缩写下面的术语表包含与CanNm模块相关的首字母缩写词和缩写词,它们不包含在AUTOSAR词汇表中。首字母缩略词/abb复制:描述:CanIfCAN接口的缩写CanNmCAN网络管理的缩写CBV控制位向量CWU汽车唤醒ERA外部请求数组EIRA外部和内部请求数组NM网络管理PNC部分网络集群PNI部分网络信息术语描述:“PDUtransmissionabilityisdisabled”这意味着网络管理PDU传输已被服务CanNm_DisableCommunication禁用。“RepeatMessageRequestBitIndication”CanNm_RxIndication在接收到的网络管理PDU的控制比特向量中找到RptMsgRequest集合。“PNfiltermask”由配置容器(s)CanNmPnFilterMaskByte定义的过滤器掩码字节的向量3相关文件3.1输入文件[1]GeneralRequirementsonBasicSoftwareModulesAUTOSAR_SRS_BSWGeneral.pdf[2]RequirementsonNetworkManagementAUTOSAR_SRS_NetworkManagement.pdf[3]SpecificationofCANInterfaceAUTOSAR_SWS_CANInterface.pdf[4]SpecificationofCommunicationStackTypesAUTOSAR_SWS_CommunicationStackTypes.pdf[5]SpecificationofECUConfigurationAUTOSAR_TPS_ECUConfiguration.pdf[6]SpecificationofGenericNetworkManagementInterfaceAUTOSAR_SWS_NetworkManagementInterface.pdf[7]SpecificationofCommunicationManagerAUTOSAR_SWS_ComManager.pdf[8]SpecificationofStandardTypesAUTOSAR_SWS_StandardTypes.pdf[9]GeneralSpecificationofBasicSoftwareModulesAUTOSAR_SWS_BSWGeneral.pdf3.2相关标准和规范无法使用。3.3相关规范AUTOSAR提供基本软件模块[9](SWSBSWGeneral)的通用规范,该规范也适用于CAN网络管理。因此,规范SWSBSWGeneral应被视为CAN网络管理的附加和必需规范。4制约因素和假设4.1局限性1.CanNm的一个通道只与一个网络中的一个网络管理集群相关联。一个网络管理群集在一个节点中只能有一个CanNm通道。2.CanNm的一个通道仅与同一ECU内的一个网络相关联。3.CanNm仅适用于CAN系统。图4-1显示了示例ECU中的AUTOSAR网络管理堆栈,其中至少包含一个CanNm群集。图4-1CAN上的AUTOSARNM堆栈4.2适用于汽车领域CanNm模块可以应用于任何汽车领域,并且受到上述限制。5与其他模块的依赖关系CAN网络管理(CanNm)主要使用CAN接口(CanIf[3])的服务,并为通用网络管理接口(NmIf[6])提供服务。图5-1与其他模块的依赖关系5.1文件结构5.1.1代码文件结构请参阅“SWS_BSWGeneral”[9]中的5.1.6章节的代码文件结构。5.1.2头文件结构请参阅“SWS_BSWGeneral”[9]中的章节5.1.7头文件结构。[SWS_CanNm_00305]应包括ComStack_Types.h。注意:以下头文件由ComStack_Types.h间接包含Std_Types.h(用于AUTOSAR标准类型)Platform_Types.h(针对平台特定类型)Compiler.h(用于编译器特定的语言扩展)⌋(SRS_BSW_00348,SRS_BSW_00353,SRS_BSW_00361,SRS_BSW_00301)[SWS_CanNm_00307]GeNm_Cbk.h应包含在通用网络管理接口的CanNm特定回调中。⌋(SRS_BSW_00301)[SWS_CanNm_00308]如果配置了DET使用情况,则应包括Det.h以连接DET。⌋(SRS_BSW_00301)[SWS_CanNm_00309]⌋NmStack_Types.h应包括在通用网络管理类型中.⌋(SRS_BSW_00301)[SWS_CanNm_00312]⌋CanIf.h应包含在接口CanIf.⌋中(SRS_BSW_00301)[SWS_CanNm_00326]如果启用了COM用户数据支持,则应包含PduR_CanNm.h。⌋(SRS_BSW_00301)图5-2头文件结构6需求追溯需求描述满足SRS_BSW_00005μC抽象层(MCAL)的模块可能没有硬编码的水平接口SWS_CanNm_NA_1SRS_BSW_00010所有基本软件开发模块的内存消耗应记录在所有支持平台的定义配置中。SWS_CanNm_NA_8SRS_BSW_00160AUTOSARBasicSW模块的配置文件对人类而言应该是可读的SWS_CanNm_NA_8SRS_BSW_00161AUTOSAR基础软件应提供一个微控制器抽象层,为更高级的软件层提供标准化接口SWS_CanNm_NA_1SRS_BSW_00162AUTOSAR基础软件应提供硬件抽象层SWS_CanNm_NA_1SRS_BSW_00164中断服务例程的实现应由操作系统,复杂的驱动程序或模块完成SWS_CanNm_NA_1SRS_BSW_00168SW组件应通过Basis-SW中通用API中定义的功能进行测试SWS_CanNm_NA_0SRS_BSW_00170AUTOSARSW组件应提供有关它们与故障,信号质量,驾驶员要求SWS相关的信息SWS_CanNm_NA_0SRS_BSW_00172基本软件模块内部的调度策略应与系统中使用的策略兼容SWS_CanNm_NA_8SRS_BSW_00301所有AUTOSAR基本软件模块只能导入必要的信息SWS_CanNm_00305,SWS_CanNm_00307,SWS_CanNm_00308,SWS_CanNm_00309,SWS_CanNm_00312,SWS_CanNm_00326SRS_BSW_00314所有内部驱动模块都应该将中断帧定义与服务程序分开SWS_CanNm_NA_1SRS_BSW_00323SRS_BSW_00325SRS_BSW_00334SRS_BSW_00336SRS_BSW_003417功能说明7.1协调算法AUTOSARCanNm基于分散式直接网络管理策略,这意味着每个网络节点只根据在通信系统内接收或传输的网络管理PDU执行自足活动。AUTOSARCanNm算法基于周期性网络管理PDU,由集群中的所有节点通过广播传输接收。网络管理PDU的接收表明发送节点希望保持网络管理集群醒来。如果任何节点准备进入总线睡眠模式,它将停止发送网络管理PDU,但只要收到来自其他节点的网络管理PDU,它就会推迟转换到总线睡眠模式。最后,如果由于没有收到网络管理PDU而经过专用定时器,则每个节点都会启动到总线休眠模式的转换。如果网络管理集群中的任何节点需要总线通信,则可以通过传输网络管理PDU将网络管理集群从总线休眠模式中唤醒。有关唤醒过程本身的更多详细信息,请参阅AUTOSARSWSComM[7]。AUTOSARC