为何会出现 CAN 波形解码和报文解码不一致的现象?
时间:2019-11-01 15:27来源:ZLG立功科技·致远电子
摘要:使用CANScope测量CAN总线信号,在干扰很严重的情况下会出现CAN总线波形解码与CAN报文解码不一致的情况,具体表现为某些正确报文对应的波形解码却是错误的,或者收到的错误报文对应的波形解码却是正确的,如图1中,帧ID为0x721的正确报文对应的波形解码却为CRC错误。本文将对这种现象产生的原因及其存在的意义进行详细的说明。
使用CANScope测量CAN总线信号,在干扰很严重的情况下会出现CAN总线波形解码与CAN报文解码不一致的情况,具体表现为某些正确报文对应的波形解码却是错误的,或者收到的错误报文对应的波形解码却是正确的,如图1中,帧ID为0x721的正确报文对应的波形解码却为CRC错误。本文将对这种现象产生的原因及其存在的意义进行详细的说明。
CANScope对CAN信号的处理包含2部分:报文处理部分和波形处理部分。报文处理部分通过CAN收发器将总线上的CANH和CANL差分信号转成单端的数字信号RXD,再使用专用的CAN控制器接收RXD信号并进行CAN协议解码,最后将解码后的报文进行接收存储;波形处理部分通过信号调理电路将CAN总线信号进行隔离等必要的处理后通过ADC电路将模拟信号数字化后顺序保存,完成对波形信号的采集。
如图3所示,带有高频尖脉冲干扰信号的总线信号CANH和CANL,在经过低带宽的收发器后,其携带的干扰信号被滤除(输出的RXD信号是无干扰的数字信号);而同样的CANH和CANL信号,在经过高带宽的信号调理电路后,其携带的干扰信号依然保留(波形采集模块采集到有干扰的CANH和CANL信号后,经过软件差分后,得到的差分信号依然存在干扰,所以软件转换后的逻辑信号依然存在干扰)。
二、CAN总线采样规则
CAN控制器先将高频时钟进行预分频,生成较低频率的时钟信号,这个时钟信号的周期定义为1个时间份额,1位CAN信号的码元宽度包含有数倍的时间份额,如控制器时钟频率为16MHz,预分频为8MHz的时钟,则1个时间份额为125ns,对于1M波特率的CAN信号,1位CAN信号的码元宽度即为8个时间份额。
以1个时间份额为最小单位,将1位CAN信号码元分为3段:同步段、相位段1、相位段2。同步段固定为1个时间份额,相位段1和相位段2可设置成不同参数,控制器在相位段1和相位段2之间对CAN总线进行采样。
三、软件逻辑滤波
CANScope采用软件滤波的方式,即对采集到的CAN总线模拟波形信号经过软件差分和逻辑化后的数字信号进行软件滤波,滤波后允许通过的信号带宽随着波特率的不同而不同,波特率越小,滤波后允许的信号带宽越小;通过这样的滤波处理,最大程度提高了对干扰信号的容忍度,甚至在报文解码出现错误的情况下仍然能对波形做出正确的解码。这样,在干扰很严重的情况下就可能会出现文章开头所说的报文解码正确而波形解码错误或者报文解码错误而波形解码正确的现象。
四、解码差异存在的意义
使用过CAN卡的人可能会有这样一个印象:在使用CAN卡的过程中,几乎遇不到有些节点收到正确报文而有些节点收到错误报文的现象,因为只要一个节点(处于错误主动状态的节点)收到错误报文,其它所有节点都会收到错误报文,最多就是错误的类型不同而已。这一点跟CANScope的报文解码和波形解码的差异现象是不同的,那这又是何原因呢?这是因为正常的CAN网络中,当某个节点解码到有错误时,会向总线发出错误帧破坏当前报文,从而导致所有节点都接收到错误报文。与之不同的是,CANScope作为测量设备,只对CAN总线进行监听和采集,不影响CAN总线,将总线上的波形细节(包括波形细节导致的解码差异)尽可能地展示出来,这正是解码差异存在的意义。
总结
使用CANScope测量CAN总线信号,在总线信号干扰很严重的情况下会出现CAN波形解码与CAN报文解码不一致的情况,这是由于CANScope独立两路的报文处理和波形处理所导致,而CANScope作为测量设备,只对CAN总线进行静默监听,不影响CAN总线,并将总线上的波形细节(包括波形细节导致的解码差异)尽可能地展示出来,这正是CANScope的价值所在。
图1 报文解码与波形解码不一致
一、解码差异错误的主要原因CANScope对CAN信号的处理包含2部分:报文处理部分和波形处理部分。报文处理部分通过CAN收发器将总线上的CANH和CANL差分信号转成单端的数字信号RXD,再使用专用的CAN控制器接收RXD信号并进行CAN协议解码,最后将解码后的报文进行接收存储;波形处理部分通过信号调理电路将CAN总线信号进行隔离等必要的处理后通过ADC电路将模拟信号数字化后顺序保存,完成对波形信号的采集。
图2 CAN总线信号处理
如图2所示,报文处理和波形处理两部分的电路和控制是完全独立的,CAN信号经过这两部分电路之后会有所差异,主要的不同在于:1、经过收发器之后的信号延时和经过信号调理电路的延时不同,但这个不同对解码的影响比较小,本文不做讨论;2、CAN收发器内部有迟滞比较器,具有相当于低通滤波器的功能,能通过的信号带宽不高,而波形采集由于需要观测高频干扰等信号,要求信号调理电路的带宽比较高,所以带宽的差异对后续解码的差异影响比较大。如图3所示,带有高频尖脉冲干扰信号的总线信号CANH和CANL,在经过低带宽的收发器后,其携带的干扰信号被滤除(输出的RXD信号是无干扰的数字信号);而同样的CANH和CANL信号,在经过高带宽的信号调理电路后,其携带的干扰信号依然保留(波形采集模块采集到有干扰的CANH和CANL信号后,经过软件差分后,得到的差分信号依然存在干扰,所以软件转换后的逻辑信号依然存在干扰)。
图3 波形差异
根据以上分析,干扰信号的存在使得后续的CAN波形解码会出现与报文解码不同的情况。我们继续往下深究:是否有干扰信号就一定会导致波形解码与报文解码不同呢?其实也不然,这还得从CAN总线的采样规则说起。二、CAN总线采样规则
CAN控制器先将高频时钟进行预分频,生成较低频率的时钟信号,这个时钟信号的周期定义为1个时间份额,1位CAN信号的码元宽度包含有数倍的时间份额,如控制器时钟频率为16MHz,预分频为8MHz的时钟,则1个时间份额为125ns,对于1M波特率的CAN信号,1位CAN信号的码元宽度即为8个时间份额。
以1个时间份额为最小单位,将1位CAN信号码元分为3段:同步段、相位段1、相位段2。同步段固定为1个时间份额,相位段1和相位段2可设置成不同参数,控制器在相位段1和相位段2之间对CAN总线进行采样。
图4 采样点位置
当干扰信号出现的位置不在采样点位置时,解码是不会因为被干扰而出现错误的,只有当干扰信号刚好位于采样位置时,解码才会因为干扰而出现错误。图5 干扰位置
CAN总线通常工作在比较恶劣的环境中,常常有干扰信号的存在,CAN总线组网时为了保证解码的一致性,要求所有节点的采样点位置设置应该一致。CANScope中的报文处理和波形处理两部分电路可看成2个CAN节点,CANScope的波形解码的采样点位置设置是跟报文解码的采样点位置保持一致的,然而,当高频干扰信号出现在采样点位置时,即使是在相同采样点位置进行采样,因为波形处理和报文处理电路的带宽差异,还是有较大概率出现波形解码和报文解码不一致的现象。三、软件逻辑滤波
CANScope采用软件滤波的方式,即对采集到的CAN总线模拟波形信号经过软件差分和逻辑化后的数字信号进行软件滤波,滤波后允许通过的信号带宽随着波特率的不同而不同,波特率越小,滤波后允许的信号带宽越小;通过这样的滤波处理,最大程度提高了对干扰信号的容忍度,甚至在报文解码出现错误的情况下仍然能对波形做出正确的解码。这样,在干扰很严重的情况下就可能会出现文章开头所说的报文解码正确而波形解码错误或者报文解码错误而波形解码正确的现象。
四、解码差异存在的意义
使用过CAN卡的人可能会有这样一个印象:在使用CAN卡的过程中,几乎遇不到有些节点收到正确报文而有些节点收到错误报文的现象,因为只要一个节点(处于错误主动状态的节点)收到错误报文,其它所有节点都会收到错误报文,最多就是错误的类型不同而已。这一点跟CANScope的报文解码和波形解码的差异现象是不同的,那这又是何原因呢?这是因为正常的CAN网络中,当某个节点解码到有错误时,会向总线发出错误帧破坏当前报文,从而导致所有节点都接收到错误报文。与之不同的是,CANScope作为测量设备,只对CAN总线进行监听和采集,不影响CAN总线,将总线上的波形细节(包括波形细节导致的解码差异)尽可能地展示出来,这正是解码差异存在的意义。
图6 解码错误不影响总线
如图6所示,CAN总线被严重干扰,CANScope的报文解码出错,但这时CANScope并不会向总线发出错误帧,而其它节点没有解码出错,当前帧被正常应答并正常完成传输,这些情况可通过波形及波形解码全部展现出来且不影响CAN总线网络。总结
使用CANScope测量CAN总线信号,在总线信号干扰很严重的情况下会出现CAN波形解码与CAN报文解码不一致的情况,这是由于CANScope独立两路的报文处理和波形处理所导致,而CANScope作为测量设备,只对CAN总线进行静默监听,不影响CAN总线,并将总线上的波形细节(包括波形细节导致的解码差异)尽可能地展示出来,这正是CANScope的价值所在。
免责声明:本文若是转载新闻稿,转载此文目的是在于传递更多的信息,版权归原作者所有。文章所用文字、图片、视频等素材如涉及作品版权问题,请联系本网编辑予以删除。
我要投稿
近期活动
- 安森美汽车&能源基础设施白皮书下载活动时间:2024年04月01日 - 2024年10月31日[立即参与]
- 2023年安森美(onsemi)在线答题活动时间:2023年09月01日 - 2023年09月30日[查看回顾]
- 2023年安森美(onsemi)在线答题活动时间:2023年08月01日 - 2023年08月31日[查看回顾]
- 【在线答题活动】PI 智能家居热门产品,带您领略科技智慧家庭时间:2023年06月15日 - 2023年07月15日[查看回顾]
- 2023年安森美(onsemi)在线答题活动时间:2023年06月01日 - 2023年06月30日[查看回顾]
分类排行榜
- 汽车电子电源行业可靠性要求,你了解多少?
- 内置可编程模拟功能的新型 Renesas Synergy™ 低功耗 S1JA 微控制器
- Vishay 推出高集成度且符合 IrDA® 标准的红外收发器模块
- ROHM 发布全新车载升降压电源芯片组
- 艾迈斯半导体推出行业超薄的接近/颜色传感器模块,助力实现无边框智能手机设计
- 艾迈斯半导体与 Qualcomm Technologies 集中工程优势开发适用于手机 3D 应用的主动式立体视觉解决方案
- 维谛技术(Vertiv)同时亮相南北两大高端峰会,精彩亮点不容错过
- 缤特力推出全新商务系列耳机 助力解决开放式办公的噪音难题
- CISSOID 和泰科天润(GPT)达成战略合作协议,携手推动碳化硅功率器件的广泛应用
- 瑞萨电子推出 R-Car E3 SoC,为汽车大显示屏仪表盘带来高端3D 图形处理性能
编辑推荐
小型化和稳定性如何兼得?ROHM 推出超小型高输出线性 LED 驱动器 IC,为插座型 LED 驱动 IC 装上一颗强有力的 “心脏”
众所周知,LED的驱动IC担负着在输入电压不稳定的情况下,为LED提供恒定的电流,并控制恒定(可调)亮度的作用。无论是室内照明,还是车载应用,都肩负着极为重要的使命。
- 关于反激电源效率的一个疑问
时间:2022-07-12 浏览量:10173
- 面对热拔插阐述的瞬间大电流怎么解决
时间:2022-07-11 浏览量:8933
- PFC电路对N线进行电压采样的目的是什么
时间:2022-07-08 浏览量:9573
- RCD中的C对反激稳定性有何影响
时间:2022-07-07 浏览量:7189
- 36W单反激 传导7~10M 热机5分钟后超标 不知道哪里出了问题
时间:2022-07-07 浏览量:5965
- PFC电感计算
时间:2022-07-06 浏览量:4176
- 多相同步BUCK
时间:2010-10-03 浏览量:37865
- 大家来讨论 系列之二:开机浪涌电流究竟多大?
时间:2016-01-12 浏览量:43160
- 目前世界超NB的65W适配器
时间:2016-09-28 浏览量:60023
- 精讲双管正激电源
时间:2016-11-25 浏览量:128103
- 利用ANSYS Maxwell深入探究软磁体之----电感变压器
时间:2016-09-20 浏览量:107555
- 【文原创】认真的写了一篇基于SG3525的推挽,附有详细..
时间:2015-08-27 浏览量:100286