数据链路层CAN XL和CAN FD之间的区别?

浏览:982来源:本站时间:2022-06-22

我们在之前的文章中介绍了CAN总线的发展和CAN XL的介绍(CAN XL——CAN总线的第三代通信技术),我们继续介绍一下CAN-XL协议的数据链路层部分,以及在数据链路层CAN-XL和 CAN FD 有什么区别。


CAN-XL目前的发展状态

CAN XL当前规范基本最终确定。CiA 610-1 CAN XL协议规范已由工作小组完成并进行最后的CiA内部审核,不久将作为规范建议草案发布在会员范围内。同时,CAN XL规范会提交到ISO国际标准化组织,将添加在新版的ISO 11898-1标准中,但确切的发布时间依旧未知。而在7月初CiA 协会举行了第一次 CAN XL Plugfest —可兼容性测试,主要测试与传统的CAN、  CAN FD在物理层和数据链路层的兼容性。博世、Fraunhofer IPMS、英飞凌、Vector 和 Rohde&Schwarz 的设备参与了此次测试,其中测试了他们首次研发的CAN XL IP核和收发器应用。


CAN-XL协议数据链路层

和经典CAN和CAN FD一样CAN XL也分为物理层和数据链路层。CAN XL在数据链路层已经决定的是数据字段长度最大为2048字节和11位优先级字段,而CAN FD 最大的数据场长度为64字节。CAN XL是对CAN和CAN FD的进一步扩展,并且在很大程度上遵循相同的运行原理。CAN报文分为仲裁场和数据场。通信速率CAN FD在仲裁场的通信速率和传统的CAN一致,但是在数据场CAN FD的通信速率理论上达到了2Mbit/s至10Mbit/s,目前的具体应用上各大厂商最多达到8Mbit/s。

尽管CAN XL在仲裁场使用500kbit/s至1Mbit/s的低速率,但数据场的传输速率却可提升至2Mbit/s至10Mbit/s或者更高的10+Mbit/s。相对于CAN FD的可选速率切换功能,CAN XL强制执行速率切换。


当前开发阶段协议版本格式如下


图片


在帧格式上CAN XL与CAN FD的区别


图片

与CAN FD相比,CAN XL增加了位的数量主要是在帧头帧尾和CRC校验位。CRC校验位的增加主要是为了确定增加数据域和其他位的传输是否正确。

帧头:

图片

我们可以看到:

1、SOF和11位的ID一致;

2、RTR一致:所以CAN FD 和 CAN XL都不支持远程请求;

3、CAN XL不支持IDE标识符扩展(29位CAN ID),该位始终处于显性;

4、FDF位指示CAN FD,CAN XL 在FDF位多出了XLF位用以决定CAN XL;

5、RES位一致始终处于显性,CAN FD隐性BRS位(波特率切换)会提升传输速率;

6、CAN FD中ESI位通常处于显性,但处于被动错误时会变为隐性;

7、相对于CAN FD,CAN XL中多出了resXL、 AL1、DH1、DL1和 Payload 8-bi主要用于将来的扩展、新的波特率切换序列,同数据包的预定义等;

8、CAN XL中DLC是一个11位整数,其中数据字节数是该整数加1;

9、CAN XL中Header-CRC用于保证DLC正确;

帧尾:

图片

相较于帧头帧尾变化较少。

对于相同的数据长度,CAN XL中较长的报头和数据需要较长的CRC来校验;CAN XL包含用于波特率切换位,确保向前的兼容性;CAN XL CRC之后是波特率的切换模式,而不是CRC定界符;为了确保重新同步到未来格式的帧末尾集成格式:将CAN XL中放置NACK添加到旧ACK中。


免责声明:文章参考:https://zhuanlan.zhihu.com/p/146568453,如涉及作品版权问题,请与我联系删除。

京ICP备:京ICP备05011254号-1 版权归北京麦克泰软件技术有限公司所有
北京麦克泰软件技术有限公司