首页
学习
活动
专区
圈层
工具
发布

汽车通信的秘密!CAN FD如何实现比CAN快5倍的传输速度?

CAN与CAN FD 的区别

首先,是大家比较熟知的,CAN协议,国际标准化串行通信协议。这种协议首先是在德国bosch公司提出,使用在汽车行业的,目的就是提供一种,高速率,信号布线少,可挂载外围器件多,高抗电磁干扰性,并且还能检测出通信过程中是否产生错误的总线协议。下面就是CAN协议简化示意图:

can协议总线网络主要分为开环网络和闭环网络两种,闭环网络中,在收发两端会各连接一个120欧的电阻,这种网络适用于短距离的总线布置,速率也相对较快,通常在几百kbit/s。

而开环网络,两根信号线是独立的,并且两根信号线都串联了一个2.2千欧的电阻,这种开环网络则适用于,长距离的总线布置,速率较低通常只有几十kbit/s,但是最长总线布置可以达到千米级别。

can总线的数据传输通常采用双绞线传输,内部为差分信号,这也是抗干扰性的主要来源,can总线协议主要包含5种类型的帧:

常见的数据帧结构如下图所示,帧起始就是代表数据帧开始的段,仲裁段是代表这条消息在总线中的优先级,高优级将在总线中被优先处理(当多个挂在设备同时发送数据帧时,发送单元将从仲裁段第一位开始仲裁,连续输出显性电平最多的单元获得发送权,向外发送数据,其他待发送单元等待发送结束),控制段表示数据长度,数据段也就是数据本身,最后是CRC校验段,这是为了保证传输过程中数据没有被篡改,ACK段表示是否正常接收到了,帧结束则表示这条数据帧传输结束了。

而CAN FD,可以理解为升级版的CAN协议,也就是说在物理层,也就是总线的呈现形式上,没有改变,只有协议层发生了改变。而CAN FD产生的原因,是因为现在的电子设备负载信息,越来越大,也就是说现在一个总线,挂载的设备会比以前多,并且传输的数据会比以前大(也就是总线压力可能出现很大的情况),在CAN协议设计期并没有这么大的传输需求,所以才对CAN协议进行扩充,来满足当下的需求。

首先第一个最大的不同,在于传输速率不同,总线传输速率和总线布置长度呈反比,也就是布线越长,通信速率越低,这一点没有改变,但是CAN FD采用了两种速率传输的方式,也就是从BRS位到ACK应答位之间,会使用可变速率,而其他位置采用原CAN总线速率的方式,可以使其中数据部分以更快的形式传输,以此节约传输时间。

第二个不同在于,数据域长度的不同,CAN FD的数据区长度最大可以达到64字节,而CAN协议只有8个字节,那么一条数据,CAN FD协议的有效部分(数据区才是我们想要传输的东西)比例更大,会有更高的传输效率,再加上前面提到,CAN FD协议在传输数据区的时候会变速率加速传输,两个因素共同加持,让CAN FD的传输效率与速度比CAN快很多

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OdaJ-dOdE-u_4_bH9C7Mebew0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。
领券