CAN-FD总线通信光纤转换器应用

一、概述

CAN-FD(CAN-Flexible Data-rate)是一种改进的车载通信协议,它基于传统的CAN总线技术,在继承了CAN总线绝大多数特性的同时,通过引入更高的数据传输速率和更大的数据帧容量,让其最高通信速率可达12MBit/s,同时又可兼容传统CAN网络,以此去满足当下汽车电子系统对更高带宽的需求。


二、关键特性

2.1.增强型数据传输速率

CAN-FD中的“Flexible Data-rate”,便强调了其相对于CAN2.0的一个重要特性,即其数据段的数据速率可动态调整,这使得CAN-FD能够在保证兼容性的同时,显著提高数据传输效率和带宽利用率。

首先,在传统的CAN 2.0协议中,整个信息帧(包括报头和数据部分)都是以相同速率发送的,这么一来,无论该信息的优先级如何,其数据在传输过程中的速率都将是固定的。

而在CAN-FD的通信交互中,消息的发送开始于仲裁阶段,在该阶段中,所有想要发送数据的控制节点都会将它们的消息标识符(包括如ID、控制域、远程发送请求、CRC段等报头部分)发送到总线上,由于每个节点的标识符都是唯一的,因此通过比较这些标识符的优先级便可确定哪个节点可优先获得总线的使用权。在该阶段,CAN-FD使用的是标准的CAN速度,此时通常最高为1Mbps,以确保与CAN 2.0的兼容性。

一旦某个节点赢得了仲裁权并开始发送相关数据,此时它就可以使用更高的传输速率,在数据段,CAN-FD可支持高达12Mbps的数据传输速率。但为了适应车载节点对数据需求的多样性,同时可更高效地利用带宽资源,通常CAN-FD支持数据速率的动态调整,即在数据段内,传输速率可以根据实际需求进行改变。


这是由于在CAN-FD中,数据段可分为同步段和传播段两部分。其中,同步段是数据段的初始部分,其长度固定通常是1个时间量子(Tq),目的是用于确保所有接收节点能够正确同步,此部分由CAN-FD标准明确定义。传播段长度可变,它决定了数据传输的实际速率,较长的传播段对应较低的数据速率,而较短的传播段则对应较高的数据速率。在需要对传输速率进行调整时,便是通过调整传播段的长度,来实现数据传输速率的变化。

如节点间在进行数据交互时,它可基于当前的通信需求和网络负载情况来选择合适的数据速率。当数据量较小或对实时性要求不高,通过增加传播段长度以降低数据的传输速率,反之,则减小传播段的长度去提高传输速率,以此对带宽利用率实现灵活应用。


2.2.更大有效载荷

在CAN2.0中,无论是标准帧还是扩展帧,其数据字段的最大长度都是8字节,而在CAN-FD中,其数据帧的最大可以携带长度增加到了64字节,同时还支持从8字节到64字节之间的任意数据长度。在实际车载通信中,各节点可根据需要选择适当的数据长度,以减少数据传输的次数,从而提高数据传输的效率。


如在网络架构的设计过程中,我们首先进行需求分析后确定每个节点的最大数据长度,并将其配置成DBC文件,那么在此最大数据长度的应用背景下,在整车网络中发送节点可以根据当前的数据量和实时性要求来动态选择合适的实际数据长度进行发送数据。如我们对某信息的配置长度为32字节,那么当需要发送的数据长度不超过32字节时,都可以进行一次性发送或根据需要进行分批发送,从而灵活的利用带宽资源。而在传统的CAN2.0中,超过8字节的部分,都将会产生额外的信息发送量。


如某时刻需要传输1000字节的数据,由于传统CAN节点最大只能携带8字节的数据,因此完成所有数据传输需要125次,而CAN-FD只需要传输16次便可完成所有数据的传输任务,这使得总线上数据包的数量减少了约80%,大大降低了总线负载率。


2.3.增强错误检测机制

在CAN2.0中,通常采用一个15位的校验值即CRC校验机制来检测数据的完整性和准确性。而在CAN-FD中,不仅保留了CRC校验机制,还通过增加填充位检查等方式以增强错误检测功能,从而提高数据传输的可靠性。

如接收节点在接收到相关数据后,会检查数据字段中的填充位数量是否正确,通常数据字段中的数据位数需要是整数倍的时间量子(Tq),如果数据位数不是整数倍Tq,那么便需要添加填充位来保证数据同步性,因此如果发现填充位的数量与预期不符,那么就会认为该数据在传输中出现了错误。若检测到错误,CAN-FD会采用重传机制来纠正错误或在数据帧中添加错误标志,以通知发送节点或其他接收节点数据传输中发生了错误。


2.4.兼容性

在车载应用中,CAN-FD在物理层上同样使用双绞线连接并通差分信号传输数据,同时保留了传统CAN标准下的报头格式,如此一来,传统的CAN节点在物理应用上可与CAN-FD节点互用,同时CAN-FD节点所发送的报文信息也可被传统CAN的节点识别到,这便意味着CAN-FD节点可与传统CAN节点进行无障碍通信。因此在实际应用中,现有CAN节点便可与CAN-FD节点混用,从而提高数据交互能力。


在数据段部分,由于CAN-FD可支持最高64字节的数据段,而CAN节点只能识别8字节的数据段,因此在混合网络中,CAN-FD可识别并处理由CAN2.0A/B节点所发送的标准数据帧(向下兼容),但当CAN-FD发送的数据超过8字节时,尽管CAN节点可以收到该数据,但无法识别超过8字节的数据段(向上兼容局限)。


基于上述提到的在兼容性上的局限性,当进行混合CAN网络设计时,在网络配置中,需要确保传统CAN节点不会去解析超过8字节的数据段。

image.png


推荐

  • QQ空间

  • 新浪微博

  • 人人网

  • 豆瓣

取消
  • 首页
  • 电话
  • 分类
  • 留言