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

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

3天内不再提示

CANFD协议中的概念

AGk5_ZLG_zhiyua ? 来源:ZLG致远电子 ? 作者:ZLG致远电子 ? 2022-07-08 14:30 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

CANFD协议中,有个重要的概念TDC(Transmitter Delay Compensation)即发送延迟补偿。为什么会存在发送延迟,又为什么CANFD要对发送延迟做补偿?

为什么存在发送延迟?

54fa560c-fe70-11ec-ba43-dac502259ad0.jpg

众所周知,CAN控制器发送信号时,是经过收发器后发往CAN总线后,再经过收发器反馈总线信号。那么发送过程中,控制器发送位信号到接收位信号就不可避免地存在环路延迟。发送延迟时间的总和如下:

CAN控制器内部产生TX信号到Tx引脚的传播延迟;

Tx引脚到收发器TxD引脚的传播延迟;

收发器环路延迟TxD到RxD;

收发器RxD引脚到CAN控制器Rx引脚延迟;

CAN控制器Rx引脚到控制器内部收到Rx信号的延迟。

CAN协议中规定:发送方发送位时,需检测接收到的位与发送是否一致,若不一致则产生错误帧(位错误)。如果发送延迟过长,则将直接导致发送与接收位不一致而产生错误帧。由于传统CAN协议规定最高波特率为1Mbps,即位宽1us,正常情况下,传输延迟不会超过位宽的采样点(当然具体延迟取决于收发器环路延迟、传输距离、传输线缆质量等),因此不会因为发送延迟而产生错误。

为什么CANFD要对发送延迟做补偿?

在CANFD中,数据段的波特率是比CAN更高的(BRS位为隐性时),此时波特率越高,位宽越小,在发送报文时发送延迟影响越大,越容易产生位错误。由于发送延迟无法避免,此时就需要一种机制来保证发送与接收的位对应上,以避免产生位错误。这种机制就是发送延迟补偿了。

发送延迟补偿(TDC)

TDC实际上就是在发送BRS位为隐性的CANFD报文时(BRS隐性即开启数据域波特率),在发送时延迟一定时间后,在第二采样点采样接收位,以正确采样到发送位对应的接收位。

1. 发送延迟测量那么延迟采样的延迟时间是多久呢?实际上,开启TDC后,控制器将自动测量Tx信号线上FDF位到r0位下降沿与Rx信号线上FDF位到r0位边沿的之间的延迟时间,如下图中所示,TDCV即为延迟时间。发送延迟测量的时间单位为CAN控制器时钟(TDC寄存器中一般对TDCV的值有限制,若超过寄存器最大位数,则发送延迟测量失败)。

55b91768-fe70-11ec-ba43-dac502259ad0.png

2. 第二采样点(SSP)

在达到延迟时间后,控制器此时需要采样接收位,该采样点我们称为第二采样点(SSP=Second Sample Point),以区别未延迟之前的采样点(SP),如下图所示。

55c39a26-fe70-11ec-ba43-dac502259ad0.png

SSP等于测量延迟TDCV+发送延迟补偿偏移TDCO(TDC Offset)之和。一般TDCO设置与第一采样点一致,即(PROP+TSEG1) * DBRP。主要注意是:实际填入寄存器的波特率参数一般为实际值减一,具体可参考控制器手册说明。此外,ISO11898-1:2015中还对TDC做了一些规定:

开启TDC后,数据段波特率的预分频值(DBRP)应设置为1或2;

控制器实现TDC机制应能补偿至少两个位时间。

TDC配置建议

当CANFD数据域波特率大于1Mbps时,应开启TDC;

数据段波特率的预分频值(DBRP)建议设置为1或2;

第二采样点SSP=发送延迟测量值TD + Offset, 其中Offset设置与第一采样点一致或早1Tq。

当然,USBCANFD-200U系列CANFD卡的TDC也同样遵循上述配置,用户使用时,无需再手动配置。

原文标题:【Z站推荐】为什么发送CANFD加速报文要开启发送延迟补偿(TDC)?

文章出处:【微信公众号:ZLG致远电子】欢迎添加关注!文章转载请注明出处。

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

    关注

    10

    文章

    3691

    浏览量

    108532
  • 控制器
    +关注

    关注

    114

    文章

    17261

    浏览量

    185506
  • CAN
    CAN
    +关注

    关注

    57

    文章

    2937

    浏览量

    468918
  • CANFD
    +关注

    关注

    0

    文章

    91

    浏览量

    5439

原文标题:【Z站推荐】为什么发送CANFD加速报文要开启发送延迟补偿(TDC)?

文章出处:【微信号:ZLG_zhiyuan,微信公众号:ZLG致远电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    广成科技CANFD转CAN总线GCAN-418的优势

    作为CAN总线的升级产品,CANFD相较于传统的CAN总线,拥有如下几个方面的优势。
    的头像 发表于 08-05 11:47 ?347次阅读
    广成科技<b class='flag-5'>CANFD</b>转CAN总线GCAN-418的优势

    stm32支持canfd和dma结合使用吗?

    stm32支持canfd和dma结合使用吗
    发表于 08-01 07:15

    CANFD节点的采样点如何测量?

    本文导读为提升CAN/CANFD网络的通信可靠性,各节点需尽可能配置合适且一致的采样点。然而在设备CAN通信采样点参数未知的情况下,如何验证各节点采样点设置的一致性?本文结合ZPS-CANFD设备
    的头像 发表于 07-31 11:34 ?233次阅读
    <b class='flag-5'>CANFD</b>节点的采样点如何测量?

    车规级CANFD芯片在汽车车身控制方案的应用解析

    汽车车身控制系统的关键组件。本文深入探讨国科安芯推出的车规级CANFD芯片ASM1042A在汽车车身控制方案的应用优势与挑战,旨在为汽车车身控制系统的设计与优化提供理论依据和实践参考,推动汽车电子技术的持续发展。 一、引言
    的头像 发表于 07-24 11:05 ?222次阅读

    CANFD 0 通道 2 上收到的所有消息传递到 CANFD 1 通道 0,是否可以使用 DAM 通道?

    你好 我正在尝试将 CANFD 0 通道 2 上收到的所有消息传递到 CANFD 1 通道 0,是否可以使用 DAM 通道?如何。 我在配置 CANFD 1 通道 0 的源 FiFo
    发表于 07-14 06:56

    CANFD模块的CLK_GR5如何配置?

    ,其中描述CANFD会用到两个时钟,其中的CLK_GR5 (CLK_SYS)在SDL例程没有找到相关配置代码,请问这部分在哪里配置,还是使用默认配置即可?
    发表于 07-14 06:06

    LOTO示波器自定义解码功能—CANFD解码

    /?spm_id_from=333.1365.list.card_archive.click 。 视频仅对串口进行解码演示,正好我们从客户手中拿到了一块USB转CAN/CANFD模块,如下图所示, 本文借此对自定义解码功能
    的头像 发表于 07-11 10:34 ?204次阅读
    LOTO示波器自定义解码功能—<b class='flag-5'>CANFD</b>解码

    CANFD协议转换器:搭建通讯桥梁

    局域网络灵活数据速率)协议与其他协议进行转换,以便在物联网环境实现设备之间的互联互通。近期发现了两款产品USR-CAN315(CANFD转以太网)、USR-CAN316(
    的头像 发表于 04-19 09:48 ?435次阅读
    <b class='flag-5'>CANFD</b><b class='flag-5'>协议</b>转换器:搭建通讯桥梁

    车载通信方案为何选择CAN/CANFD

    摘要 随着汽车电子技术的飞速发展,车载通信系统在车辆的智能化、网联化进程扮演着至关重要的角色。控制器局域网络(CAN)及其扩展版本CANFD凭借其卓越的可靠性、高效的数据传输能力和强大的抗干扰特性
    的头像 发表于 03-25 21:38 ?415次阅读

    如何使用ZPS-CANFD观察CAN数据链路层的工作过程

    CAN总线在数据链路层的应用是其通信协议的关键部分、它负责在物理层之上实现数据的可靠传输。致远第二代CAN总线分析仪ZPS-CANFD,除了可以完成CAN、
    的头像 发表于 03-18 11:38 ?504次阅读
    如何使用ZPS-<b class='flag-5'>CANFD</b>观察CAN数据链路层的工作过程

    STM32F743的canfd错误寄存器,TEC,REC等信息怎么复位?

    STM32F743的canfd错误寄存器,TEC,REC等信息怎么复位?重新初始化后寄存器值仍然保持。
    发表于 03-14 07:04

    CAN/CANFD?总线干扰仪TESTBASE-BDI

    总线干扰仪是CAN/CANFD总线一致性测试必不可少的重要设备,用于实现采样点以及故障注入等测试项配合桌面式车载网络自动化测试系统TESTBASE-DESKNAT以及基于VBA的CAN/CANFD一致性测试套件可以便捷、高效、
    的头像 发表于 12-26 11:24 ?1254次阅读
    CAN/<b class='flag-5'>CANFD</b>?总线干扰仪TESTBASE-BDI

    rk3588 canfd发送部分数据失败的问题

    在使用rk3588的板子进行canfd通信时,有些数据发送必然失败: 1,cansend can0 200##065.68.00.00.96.00.00.01 必然成功 2,cansend can0
    发表于 12-18 10:53

    dap协议的基本概念 dap协议在区块链的应用

    DAP协议,即分布式应用协议(Distributed Application Protocol),是一种旨在促进去中心化应用(DApps)在区块链网络上的构建和运行的框架。DAP协议的核心目标是提供
    的头像 发表于 11-22 15:39 ?2595次阅读

    CAN/CANFD卡接口函数使用说明

    电子发烧友网站提供《CAN/CANFD卡接口函数使用说明.pdf》资料免费下载
    发表于 10-15 17:35 ?0次下载