0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CAN与CAN FD的区别是什么?

智能汽车电子与软件 来源:智能汽车电子与软件 作者:智能汽车电子与软 2023-05-22 10:17 次阅读

一、CAN与CAN FD的概念

1、CAN是什么

控制器局域网总线(CAN,Controller Area Network)是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一。 CAN协议用于汽车中各种不同元件之间的通信,以此取代昂贵而笨重的配电线束。 该协议的健壮性使其用途延伸到其他自动化和工业应用。 CAN协议的特性包括完整性的串行数据通讯、提供实时支持、传输速率高达1Mb/s、同时具有11位的寻址以及检错能力。

wKgaomRq0OWAVGFNAADDLFU_ekw476.png

来源:车技帮

2、CAN FD是什么

CAN FD 是CAN with Flexible Data rate的缩写,翻译为【可变速率的 CAN】。 也可以简单的认为是传统CAN的升级版,其中要说明的是,只升级了协议,物理层没有改变。

3、为什么需要CAN FD?

原因主要是汽车功能越来越多,越来越复杂,传统的CAN总线(CAN2.0)的负载率越来越高,甚至负载率高达95%,以及传统CAN总线还存在一些局限性。

传统CAN总线的局限性包括:

· 传输率最大为1Mbiy/s(典型的<= 500kbit/s);

· 传统CAN数据帧超过50%的额外开销(overhead > 50%)。

对比其他协议,额外开销比例要小得多,如UDP (1500 bytes/datagram, 64 bytes overhead),FlexRay(254 bytes/frame, 8 bytes overhead)。

还有就是历史原因,汽车不可能直接放弃目前的传统CAN总线技术,重头来过。 那么为了解决CAN总线负载率问题,而又能兼容CAN总线,并且研发成本不能太高的问题,因此在2015年最新的修订版ISO 11898-1(classic CAN和CAN FD)发布。

目前的很多应用对于通讯的数据量要求越来越高,对于通讯的速率要求也越来越高,尤其是当速率高于1MBit/s的时候,传统的CAN通讯是无法满足的,所以基于这种应用的需求,CAN FD就应运而生了。 既然是出于这样的目的,CANFD的出现肯定是需要解决传输速率和传输字节的问题,带着这样的思路我们就可以更容易地理解CANFD协议,以及为什么会出现它了。

、CAN与CANFD的比较

CAN与CAN-FD主要区别:传输速率不同、数据域长度不同、帧格式不同、ID长度不同。

1、传输速率不同

CAN的传输速率

一般的工程中比较常用的为500K每秒的通讯速率。 这个速率在实际测试的时候也是非常可靠的。 CAN总线上任意两个节点的最大传输距离与其位速率有关。 最大通信距离指的是同一条总线上两个节点之间的距离。 从下面图中,可以看到速率越低通讯距离就越远,也就是说CAN总线的通讯距离和波特率成反比。 CAN最大传输速率为1Mbps

wKgZomRq0OWAetv7AABNndTvUV4231.png

来源:CSDN编程社区. 何以解忧唯有写!

CANFD的传输速率

CAN-FD 采用了两种位速率:从控制场中的 BRS 位到 ACK 场之前(含 CRC 分界符)为可变速率,其余部分为原 CAN 总线用的速率。 两种速率各有一套位时间定义寄存器,它们除了采用不同的位时间单位 TQ 外,位时间各段的分配比例也可不同。

因此,对于 CAN FD而言,是在 CAN 的基础上增加了一个数据域的传输速率,数据传输速率要大于等于原 CAN 总线用的速率。 也就是说 CAN FD 支持两种传输速率,两种速率可以保持一致,也可以不保持一致。 速率可变,仲裁比特率最高1Mbps,数据比特率最高8Mbps。

wKgZomRq0OWATso0AAE50a3jzvw075.png

来源:博客园. 华夏九州

2、数据域长度不同

CAN的数据域长度,一帧数据最长8字节。 CAN FD数据域长度,一帧数据最长64字节。

传统CAN报文与CANFD报文的DLC长度区别如下所示:

wKgZomRq0OWAJ9R9AAEkhL9a8DY265.png

来源:CSDN编程社区.qq_41256212

传统CAN报文与CANFD报文的最大区别有2点,1、CANFD可以传输更多的数据,2、CANFD报文在传输中由2种传输速率完成传输,一种是标称的CAN总线速率(用于传输非数据域的字段),另一种是数据域传输速度(用于传输数据域的字段)。

3、帧格式不同

在CAN总线上传输的信息称为报文,当总线空闲时任何连接的单元都可以开始发送新的报文。 CAN通信是通过以下5种类型的帧进行的:数据帧 、遥控帧 、错误帧 、过载帧 、帧间隔。

wKgaomRq0OWAMEsLAAD8qwZpgcw349.png

来源:CSDN编程社区. 不脱发的程序猿

CAN FD新增了FDF、BRS、ESI位。

FDF:表示CAN报文还是CAN-FD报文。
BRS:表示位速率转换,该位隐性时,速率可变(即BSR到CRC使用转换速率传输),该位为显性时,以正常的CAN-FD总线速率传输(恒定速率);
ESI:表示发送节点状态。

wKgaomRq0OWAMhX7AAFjwuByhKs431.png

来源:CSDN编程社区 金城孤客

4、ID长度不同

CAN标准帧ID长度最长11bit,CANFD标准帧ID长度可扩展到12bit。

三**、CAN与CANFD的优劣势**

1、CAN优势

具有实时性强、传输距离较远、抗电磁干扰能力强、成本低等优点;

采用双线串行通信方式,检错能力强,可在高噪声干扰环境中工作;

具有优先权和仲裁功能,多个控制模块通过CAN 控制器挂到CAN-bus 上,形成多主机局部网络;

可根据报文的ID决定接收或屏蔽该报文;

可靠的错误处理和检错机制;

发送的信息遭到破坏后,可自动重发;

节点在错误严重的情况下具有自动退出总线的功能;

报文不包含源地址或目标地址,仅用标志符来指示功能信息、优先级信息。

2、CAN缺点

不一致性

CAN总线各节点质量的不一致会引发系统瘫痪、错误、死机等问题,所以CAN一致性测试成为保证CAN网络安全运行的重要手段。

不可预测性

CAN总线将节点状态分为ErrorAcTIve、Error Passive 和Bus Off 三种,这三种状态在一定条件下可以互相转换,不同状态中节点的发送有不同的延迟。 另外,由于CAN 的原子广播特点,其它节点的发送错误或接收错误会开启一个错误帧,从而影响到该节点的接收错误计数器的值,进而影响节点状态。

信道出错堵塞

节点有可能受干扰或其它原因暂时或永久失效,出错的主机会命令CAN 收发器不断发送消息,即所谓的Babbling ldiot 错误。 由于该信息的格式等均合法,因此CAN 没有相应的机制来处理这种情况。

3、CAN FD的优势

CAN FD提高位速率的同时提供更短的CAN帧

延迟时间更短.

更好的实时性能

更高的带宽

CAN FD可以在CAN帧中容纳从8到64字节更多的数据

相对更少的系统开销 = 更好的数据吞吐量

发送较大数据对象时,软件更简单高效

CAN FD具有更高性能的CRC算法

降低未检测到错误的风险

但是因为受制于产品的稳定性考验,改造成本等问题,还没办法快速全面普及CAN FD。

、小结

总的来看,由于现在车辆上需要的通讯数据越来越多,而原有的CAN负载率逐年升高,考虑到传统的CAN通讯的架构已经非常的庞大了,如果将传统的全部推翻更换一个全新的通讯方式所要付出的代价实在太大,所以需要一个既能兼容原有的CAN通讯,又不至于增加太高的成本,CAN FD就是一个折中方案,同时还可以提高数据的传输量。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    15165

    浏览量

    170981
  • CAN
    CAN
    +关注

    关注

    56

    文章

    2460

    浏览量

    459069
  • 总线
    +关注

    关注

    10

    文章

    2698

    浏览量

    87158
  • 通讯协议
    +关注

    关注

    9

    文章

    248

    浏览量

    20171
  • CANFD
    +关注

    关注

    0

    文章

    42

    浏览量

    4800

原文标题:CAN与CAN FD的区别是什么?

文章出处:【微信号:智能汽车电子与软件,微信公众号:智能汽车电子与软件】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何实现CANCAN FD的升级?

    自动驾驶技术迅速发展,车辆中的CAN总线已经无法满足数据吞吐量和传输速度的要求,CAN总线的加速升级版——CAN FD技术正在逐渐替代现有网络。为了进一步了解
    的头像 发表于 09-20 09:31 8618次阅读

    CAN接口和can_fd区别是什么

    1.CAN接口和can_fd区别
    发表于 12-10 08:17

    FlexCAN与普通的CAN区别吗?CAN FDCAN有什么区别

    FlexCAN与普通的CAN区别吗,CAN FDCAN有什么区别
    发表于 11-08 08:30

    CANCAN FD快速升级的实现方案

    自动驾驶技术迅速发展,车辆中的CAN总线已经无法满足数据吞吐量和传输速度的要求,CAN总线的加速升级版——CAN FD技术正在逐渐替代现有网络,为了进一步了解
    的头像 发表于 09-19 16:56 1.3w次阅读

    CAN FD的七个技术问题资料总结

    CAN FD的七个技术问题资料总结包括了:1.CAN FD的数据帧格式变化?2.CAN FD
    发表于 09-27 08:00 28次下载
    <b class='flag-5'>CAN</b> <b class='flag-5'>FD</b>的七个技术问题资料总结

    can总线一帧多少字节多少位_MCU扩展CAN/CAN FD接口方案MCP2518FD+ATA6563

    “本文介绍MCU通过SPI串口扩展CAN/CAN FD接口扩展方案,该方案基于MCP2518FD+ATA6563,可快速部署应用于实际项目。”1.C
    发表于 10-29 11:21 16次下载
    <b class='flag-5'>can</b>总线一帧多少字节多少位_MCU扩展<b class='flag-5'>CAN</b>/<b class='flag-5'>CAN</b> <b class='flag-5'>FD</b>接口方案MCP2518<b class='flag-5'>FD</b>+ATA6563

    CAN FD Driver-裸机模式

    (和本次使用的CAN2517FD有所区别,仅供参考),主要体现在数据链路层这一部分。 应用程序,具体表现在控制器以不同的通信方式、MCP2517FD提供的相应指令集和指令集格式对CAN2517
    发表于 11-25 20:36 27次下载
    <b class='flag-5'>CAN</b> <b class='flag-5'>FD</b> Driver-裸机模式

    STM32设备上的CAN FD

    本文件的目的如下所述: •概述具有灵活数据速率(CAN-FD)协议的控制器局域网(CAN)。 •描述CAN-FD相对于经典CANCAN
    发表于 08-28 10:34 4次下载

    CANCAN FD如何解决彼此的通讯

    因为受制于产品的稳定性考验,改造成本等问题,没法快速全面普及CAN FD。另外,在2012年底提出CAN FD到2015年中成为ISO CAN
    发表于 10-18 14:20 2329次阅读

    CAN FD是什么意思 优点有哪些

    随着总线技术在汽车电子领域越来越广泛和深入的应用,特别是自动驾驶技术的迅速发展,汽车电子对总线宽度和数据传输速率的要求也越来也高,传统CAN(1MBit/s,8Bytes Payload)已难以满足
    的头像 发表于 07-18 10:40 1620次阅读

    CAN FD帧结构介绍

    CAN FD帧结构 CAN FD节点可以正常收、发CAN报文,但CAN节点不能正确收、发
    的头像 发表于 07-18 10:42 4384次阅读
    <b class='flag-5'>CAN</b> <b class='flag-5'>FD</b>帧结构介绍

    经典CAN网络加入CAN FD节点需要注意什么?

    目前,整车的网络拓扑中,CAN FD的使用已经非常普遍。当然,带来的问题也非常的多。CAN FD在设计之初,就考虑了向后兼容Classic CAN
    的头像 发表于 08-22 09:11 826次阅读
    经典<b class='flag-5'>CAN</b>网络加入<b class='flag-5'>CAN</b> <b class='flag-5'>FD</b>节点需要注意什么?

    CAN FD的降噪措施

    CAN FD的降噪措施
    的头像 发表于 12-07 10:48 237次阅读
    <b class='flag-5'>CAN</b> <b class='flag-5'>FD</b>的降噪措施

    can和canfd的区别

    can和canfd的区别  CAN(Controller Area Network)和CAN-FDCAN with Flexible Da
    的头像 发表于 12-07 15:37 2323次阅读

    如何使用DSLogic分析CAN/CAN-FD 信号?

    一文档介绍本文将一步步介绍如何使用DSLogic逻辑分析仪采集并分析CAN/CAN-FD信号,因为CAN信号的测量和CAN-FD的大致一样,所以下文以
    的头像 发表于 01-08 14:54 266次阅读
    如何使用DSLogic分析<b class='flag-5'>CAN</b>/<b class='flag-5'>CAN-FD</b> 信号?