解读 ISO11898-1 数据链路层和物理层信号

时间:2017-11-30 09:47来源:ZLG致远电子

摘要:ISO11898-1定义了哪些内容,相关项目如何测试?本文将为你一一解读。

ISO 11898-1 定义了哪些内容,相关项目如何测试?本文将为你一一解读。

1、关 于ISO 11898
ISO 是世界性的标准化组织,主要任务是制定国际标准,协调世界范围内的标准化工作,与其他国际性组织合作研究有关标准化问题。IS0 11898 由以下部分组成:

—  ISO11898-1:数据链路层和物理层信号
—  ISO11898-2:高速接入单元
—  ISO11898-3:低速容错接入单元
—  11898-4:时间触发通讯
—  ISO11898-5:低功耗的高速接入单元
—  ISO11898-6:选择性唤醒的高速接入单元

最新的 ISO 11898-2、ISO 11898-5 和 ISO 11898-6 已经取代 ISO 11898-2:2003、ISO 11898-5:2007 和 ISO 11898-6:2013。

2、ISO11898-1 的定位
对比标准的 OSI 通讯协议模型,ISO 11898-1 定义了 CAN 的数据链路层和部分物理层,如图1。数据链路层和物理层具体可分为逻辑链路控制、媒介访问控制、物理层编码、物理层介质、物理层媒介依赖。


 
图1  ISO 11898 的定位
 
3、适用范围
ISO11898-1 旨在实现 CAN 模块之间数据链路层上的信息规范。控制器区域的网络是一种串行通信协议,用于道路车辆和其他控制领域,支持分布式实时控制和多路复用。ISO11898-1:2015 适用于经典 CAN 帧与灵活 CAN 帧(CAN-FD)。经典的 CAN 帧有效载荷达8个字节,比特率最高允许 1 Mbit/s。最新的 CAN 帧(CAN-FD)帧格式允许比特率高于 1 mbit/s,并且有效载荷大于每帧8字节。新帧架构(CAN-FD)兼容经典帧结构。


 
图2  新旧帧关系
 
4、基本概念
SO11898-1 详细列举出 CAN 总线涉及到的基本概念。具体细节请读者参考原文,此处不再展开。


 
图3  基本概念
 
5、CAN 层体结构
ISO 11898-1 包含逻辑链接控制子层(LLC)、介质访问控制子层(MAC)、物理编码子层(PCS)。其中 LLC 包括接受过滤、过载通知以及恢复管理;MAC 层包括数据封装与解封、帧编码、介质访问管理、错误检测、序列及反序列;PCS 层包括位编码、位解码以及同步。


 
图4  ISO 11898 包含的规范
 
6、MAC 数据的一致性
要传送的消息是由 LLC 产生的,通过节点的控制器主机接口和数据链路层的子层传输到 MAC 子层。MAC 子层将把整个消息存储在一个临时缓冲区中,该缓冲区在传输开始之前被填充。当传送的信息被传送到 MAC 的子层时,LLC 子层应检查数据错误。如果检测到数据错误,就不会启动传输。如果在检测到数据错误时已经启动,那么节点将被切换到总线监控模式或进入受限的操作模式,接收节点将不会看到一条有效消息。


 
图5  自动错误过滤
 
7、错误及恢复
为了避免设备因自身原因影响其他正常节点,11898-1 固定每个 CAN 控制器都有一个发送错误计数器(TEC)和接收错误计数器(REC)。转换流程如图6。

—  主动错误状态:这是设备正常状态,设备正常参加通信,当检测到错误时发送错误标识;
—  被动错误状态:检测出错误后,设备将发送被动错误标识;
—  总线状态关闭:因为自身严重问题使总线自身进入总线关闭状态,该状态下无数据收发。


 
图6  设备状态转换
 
8、一致性测试
CAN 总线实际应用中总会遇到很多问题,因此对总线的各个方面做一致性测试十分必要。CAN 的一致性测试包括物理层一致性测试、数据链路层一致性测试、应用层一致性测试。参考 ISO 11898-1,可使用 CANScope 对 CAN 总线做数据链路层一致性测试,包括图7内的测试项目。


 
图7  一致性测试项目
 
采样点测试:该测试旨在验证 CAN 控制器的波特率采样点位置。采用干扰的手段,将采样点位置的逻辑电平破坏,则这个 CAN 报文将出现错误。以此就可以确定干扰的位置为采样点位置。

 
图8  采样点测试
 
CAN2.0B 兼容测试: 测试被测设备 DUT 是否能兼容 CAN2.0B 的扩展帧,不会发出错误帧。根据 GMW14242,要求在 DUT 在接收扩展帧时,不会有错误帧发出。测试平台架构如图9所示。

 
图9  CAN2.0B 兼容性测试
 
报文标示符测试:测试被测 DUT 发出的报文标识符(ID)是否符合预期。根据 ISO11898-1,要求在 DUT 在发送所有应用报文,都具备正确的 ID。如图10在数据长度框、帧 ID 框内进行关键字检索,查找异常帧。

 
图10  报文标示符测试
我要投稿
帖子推荐更多

Copyright 2008-2017 21dianyuan.com All Rights Reserved 备案许可证号为:津ICP备10002348