当前位置: 首页 > news >正文

CAN FD总线协议深度解析:技术特点与应用优势

📡 核心背景与协议演进

技术背景

  • 经典CAN局限:CAN 2.0A/2.0B协议(1Mbps传输速率、8字节数据位宽)已无法满足现代汽车电子系统对通信数据量和实时性的需求。
  • 协议推出:2012年由博世公司推出CAN FD(Controller Area Network with Flexible Data Rate)协议,旨在解决经典CAN的带宽瓶颈问题。

🔑 KFD三大核心技术特点

一、传输速率可变
  • 双速率机制:同一帧报文采用两种位速率
    • 仲裁段:维持经典CAN速率(最高1Mbps),确保多节点竞争时的稳定性
    • 数据段:从控制场BRS位到ACK场前可变速率,最高可达8Mbps
  • 速率切换控制:通过BRS位(Bit Rate Switch)实现
    • 显性位:数据段与仲裁段速率一致
    • 隐性位:数据段启用高速率
  • 注意事项:总线上的速率参数一旦确定不可动态改变,但可选择始终使用固定速率传输

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

二、数据场容量扩展
  • 容量提升:数据场长度从经典CAN的8字节扩展至64字节(提升8倍)
  • DLC编码规则:4位DLC(Data Length Code)字段采用特殊映射关系

DLC二进制数据场长度(字节)协议类型
0000-10000-8兼容经典CAN
100112CAN FD专用
101016CAN FD专用
101120CAN FD专用
110024CAN FD专用
110132CAN FD专用
111048CAN FD专用
111164CAN FD专用

与传统CAN相比,CAN FD取消了对远程帧的支持,用RRS位替换了RTR位,为常显性。IDE
位仍为标准帧和扩展帧标志位,若标准帧与扩展帧具有相同的前 11 位 ID,那么标准帧将会由
于 IDE 位为 0,优先获得总线。

RTR(Remote Transmission Request Bit):远程发送请求位,RER位在数据帧⾥必须是显性,⽽在远程帧⾥为隐
性。

RRS(Remote Request Substitution):远程请求替换位,即传统CAN中的RTR位,CAN FD中为常显性。

三、CRC校验机制增强

CAN FD对CRC算法作了改变,即CRC以含填充位的位流进⾏计算。在校验和部分为避免再有
连续位超过6个,就确定在第⼀位以及以后每4位添加⼀个填充位加以分割,这个填充位的值是
上⼀位的反码,作为格式检查,如果填充位不是上⼀位的反码,就作出错处理。

CAN FD的CRC场扩展到了21位。由于数据场长度有很⼤变化区间,所以要根据DLC⼤小应用
不同的CRC⽣成多项式,CRC多项式如下图所示:

  • 校验长度优化:根据数据场长度动态调整CRC校验位长度(经典CAN固定15位)
  • 包含填充位:CRC计算包含数据填充位,提升错误检测能力
  • 校验原理:发送端将ID和数据场与生成多项式计算后得到CRC值,接收端进行相同计算验证一致性
    • 示例:SAE J1850 CRC8算法使用生成多项式0XED,通过预计算256长度数组提升效率
    • 计算流程:数据补齐→初始值异或→查表循环计算→生成校验值

📊 帧格式关键变化

字段经典CANCAN FD
远程帧支持(RTR位)取消,替换为RRS位(显性位)
控制场标准结构新增FDF、BRS、ESI位
FDF位保留位隐性表示CAN FD报文
ESI位错误状态指示(显性=主动错误,隐性=被动错误)

🚀 性能提升核心机制

CAN FD通过两种方式提升通信效率:

  1. 缩短位时间:数据段最高8Mbps速率,大幅提升传输速度
  2. 加长数据场:64字节容量减少报文数量,降低总线负载率

📝 补充细节

  • 兼容性:CAN FD可与经典CAN节点共存于同一总线,但需确保仲裁段速率一致
  • 应用场景:特别适用于ADAS(高级驾驶辅助系统)、自动驾驶等高数据量需求场景
  • 工程师关注点:应用层开发更关注数据场中的Message Counter和Check Sum,CRC校验通常由硬件自动处理
http://www.jsqmd.com/news/367724/

相关文章:

  • 【课程设计/毕业设计】基于springboot的农村康养院敬老院平台的设计与实现【附源码、数据库、万字文档】
  • 从零学网络安全 - 数据库安全与 SQL 注入(二)SQL 注入实战:联合查询
  • Z世代语境下的春节营销:海外红人如何为出海品牌“重新定价”
  • 考试满分,实战却“翻车”!《自然·医学》刊文:AI医疗助手为何难以应用?
  • 国际行情波动期的跨境运营:把“团队执行力”做成护城河
  • java+vue+SpringBoot高校专业实习管理系统(程序+数据库+报告+部署教程+答辩指导)
  • 【免费新增】MonkeyCode 支持 Minimax M2.1 模型!零成本解锁复杂场景AI研发,5分钟搞定小游戏/后端接口
  • java+vue+SpringBoot火锅店管理系统(程序+数据库+报告+部署教程+答辩指导)
  • ADC 中的抗体:核心性能要求、功能机制与片段优化方向
  • java+vue+SpringBoot小区团购管理系统(程序+数据库+报告+部署教程+答辩指导)
  • 焊装工艺管理:从经验驱动到数据智能的转型之路
  • 【预测模型】灰狼算法+粒子群+鲸鱼+蝴蝶算法改进LSSVM模型的锂电池SOH预测附Matlab代码
  • java+vue+SpringBoot交通管理在线服务系统(程序+数据库+报告+部署教程+答辩指导)
  • linux开机流程
  • java+vue+SpringBoot社区养老服务系统(程序+数据库+报告+部署教程+答辩指导)
  • 电脑“清灰”劝退指南:你以为的保养,可能是对主板的“酷刑”
  • 新零售商城系统-PHP商城源码-免费开源-亿坊商城系统!
  • 【通信】基于遗传算法多用户MISO系统速率分拆附Matlab代码
  • Java毕设选题推荐:基于springboot的工厂精密设备销售管理系统的设计与实现【附源码、mysql、文档、调试+代码讲解+全bao等】
  • Java毕设选题推荐:基于springboot的助农农产品销售平台小程序基于springboot的小程序助农农产品销售平台【附源码、mysql、文档、调试+代码讲解+全bao等】
  • makefile中的shell变量语法总结
  • BISHI35 【模板】巴什博弈
  • 计算机Java毕设实战-基于springboot的工厂精密设备销售管理系统的设计与实现【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • 带电池产品卖到欧盟:电池法规 (EU) 2023/1542 到底管你什么?先抓住这 4 件事
  • 2025 CRM 系统选型手册:六大主流CRM采购 - 供应链 - 对账全链路能力对比与深度解析
  • android compose webView js交互
  • 为什么中小厂提示工程架构师也要关注Agentic AI?这4大竞争优势太实用
  • 顶尖游资的告白:300万变4000万,靠的是这三步选股法
  • 《GraphQL 强类型架构下的错误处理体系设计指南》
  • 怎么掌握 SEO 的全部基础?