新闻中心

EEPW首页>嵌入式系统>设计应用> 车载网络技术革新-CAN FD浅析

车载网络技术革新-CAN FD浅析

作者: 时间:2016-12-19 来源:网络 收藏

  CAN FD保留了所有的CAN错误界定机制,包括错误帧、错误计数器、主动错误/被动错误状态等。文献【3】中提到相对于标准CAN,CAN FD允许更长的数据场,因此选择两种新BCH型CRC多项式:数据场长度小于16个字节采用g17,数据场长度多于16个字节时采用g21,海明距离HD=6。

本文引用地址://m.amcfsurvey.com/article/201612/331249.htm

  通过帧控制场的EDL位确定帧格式后发送DLC,并从g17、g21以及标准CAN帧多项式中选择正确的多项式计算CRC序列。接收节点也选择相应的多项式计算CRC序列并决定是否对发送帧进行应答。
  2.3CAN FD位时间转换
  CAN FD有两套位时间配置寄存器,应用于仲裁段的第一套的位时间较长,而应用于数据段的第二套位时间较短。首先对BRS位进行采样,如果显示隐性位,即在BRS采样点转换成较短的位时间机制,并在CRC界定符位的采样点转换回第一套位时间机制。为保证其他节点同步CAN FD选择在采样点进行位时间转换。
  2.4收发器延迟补偿
  目前应用的CAN收发器存在回路延迟,延迟时间最高可达255ns。CAN FD协议中,帧的数据段位时间有可能小于255ns,如果当采样点到来时发送节点还没有收到其发出的位,发送节点就会报错,因此 CAN FD通过可选择性的收发器延迟补偿机制避免这种情况发生。发送节点将这种补偿机制应用到帧的高速数据段,接收节点不需要收发器延迟补偿。
  在收发器延迟补偿机制中,定义一个次级采样点SSP(Second Sample Point)并在接收位的SSP处比发送的位值进行比较检查位错误,同时忽略原来采样点的位值。CAN FD协议控制器在位速率转换之前的EDL位到r0位的下降沿上测量收发器的回路延迟Trv_Delay,延迟Trv_Delay通过计数器测量,起始于CAN_tx的r0下降沿终止于CAN_rx的r0下降沿。
  Trv_Delay加上一个可变的偏移量(例如1/2高速位时间)即为SSP的位置。如果SSP发生在发送位发送结束后,那么将发送位缓存等待SSP到达再进行位错误检查。如果在SSP处检测到位错误,那么将这个位错误的信息缓存,直到下一个采样点到达时才对位错误做处理,此时位速率转换回仲裁段的低速率进行数据传输。如果直到CRC界定符的采样点到达都没有检测到位错误,CAN FD协议控制器转换位速率并返回到标准位错误检测模式。
  2.5硬件支持
  在CAN总线基础上发展起来的CAN FD协议,实际应用时需要对原来的CAN网络物理层做一些改变,对软件和应用程序的修改较小。一般地要在车载CAN网络中进行CAN FD通信时,需要添加CAN FD控制器。目前CAN FD控制器还没有产品问世,Bosch在实验室中将CAN IP模块嵌入FPGA中实现了CAN FD控制器的功能,这种方法目前也主要用于仿真验证和实验室测试。CAN IP模块如图3所示,它由2个CAN FD IP core在FPGA上运行,上层由CPU控制。

  图3 CAN IP Module结构图

  NXP宣布将在2013年上半年发布TJA1145 FD收发器的样片,这款收发器支持CAN局部网络(PN, Partial Networking)并且配置了额外的寄存器可以忽略CAN FD消息,这为CAN FD节点和传统的CAN节点兼容于一个网络提供了条件,即CAN FD节点通信时,CAN节点进入睡眠状态,CAN FD通信结束后由一个CAN唤醒消息将CAN节点唤醒。同时NXP宣布将在2013年第三季度发布SJA1145样片,这是一款集成片上收发器的CAN FD协议控制器,支持64个字节的传输负载和2M的传输速率,但是SJA1145需要精确的外部时钟。Etas和Vector等工具厂商也跃跃欲试,发布了其支持CAN FD总线通信的工具及其发展计划。
  3.CAN FD应用意义
  CAN FD可以有效提高车载网络的数据传输速率,并且保持现有软硬件不做大的改变。图4为Bosch提供的位速率增长曲线,从曲线可以看出当仲裁段的位速率一定时,随着数据段速率的增大数据帧的平均位速率是逐渐增大的,随着帧数据场长度的增加平均位速率也是变大的。当仲裁段位速率选定1Mbit/s、数据场长度为64个字节、数据段的位速率为8Mbit/s时,CAN FD总线的带宽可以提高到5 Mbit/s多,这是相当可观的[4]。

  图4 CAN FD数据帧平均位速率

  Bosch还提供了一组数据:在软件下载时标准CAN帧速率为500Kbit/s时,传输4个8字节的CAN帧并包括15%的填充位,其在总线上耗时1021μs;而如果传输1个32字节的CAN FD帧并包括15%的填充位其在总线上耗时仅为229μs,节省了3/4的传输时间。同时由于数据场的加长,即使长报文也无需分成多包发送,有利于总线传输层管理。
  CAN FD显著提高了车载CAN网络的带宽,更长的数据场长度可以避免使用多包传输。CAN FD的成本与CAN总线基本接近,并且对目前的软件和应用程序改动较小,CAN FD保留了车载CAN网络的物理层和拓扑结构,能够提供CAN总线网络的无缝升级,这些优越性为CAN FD提供了良好的发展前景。
  4.结语
  CAN FD是一种新协议,它保持了CAN协议的核心特征,并且拥有更高的带宽以及更长的数据长度,CAN FD在车载网络中可以沿用CAN总线的收发器,随着技术的发展也可以采用专用收发器,当采用CAN总线收发器时,其传输速率期望值为2.5 Mbit/s,相当于低速的FlexRay车载网络[5]。目前CAN FD还处于引入阶段,CAN FD通信可以用于特定用途,例如软件下载,此时其他不支持CAN FD的节点就保持睡眠状态。采用CAN FD协议的ECU无需改变应用程序以及CAN物理层便可用于现有网络系统,CAN网络向CAN FD网络过渡是简单方便而且易于实现的。
参考文献
  [1] Robert Bosch GmbH.CAN with Flexible Data-Rate, Version 1.1; Date Aug.2011,http://www.semiconductors.bosch.de/media/...pdf/canliteratur/can_fd.pdf
  [2] G. Cena, A. Valenzano. Overclocking of Controller Area Networks. IEE Electronics Letters, vol. 35, 1999, pp. 1923-1925, No. 22, 28th October.
  [3] CRC for CAN with flexible data rate(CAN FD)[EB/OL]. [2012-02-21].http://www.bosch-semicon-ductors.de/media/pdf/ipmodules_1/Whitepaper_CRC_CAN_FD_20111128.pdf.
  [4] VeCo12_8_NewBusSystems_3_Lindenkreuz_Lecture.pdf
  [5] Florian Hartwich, Robert Bosch GmbH.CAN with Flexible Data-Rate. The 13th International CAN Conference 2012.


上一页 1 2 下一页

评论


技术专区

关闭