CAN信号中位定时段的规格

2016年09月21日 11:35    发布者:designapp
CAN通讯中使用的是同步数据传输,CAN控制器在其通讯过程中会不停出现位同步的操作,但不同的数据通讯系统对位同步的要求是不同,为了满足其要求,我们必须更加深入的来探讨另一个概念叫位 定时段的规格。

位定时段的规格是根据数据通信系统的需求而确定的。如果要在特定位速率下实现最大的 总线长度或者在给定总线长度的情况下实现最短的等待时间(最大位速率),那么用于重新同步的保留时间( 相位缓冲段)必须保持最小。当时间缓冲段设定为最小值时,表示在一次重新同步当中只能校正|e|=1的相位误差。因此对位同步的要求非常高,要满足这样的要求只能使用精确的石英晶振(石英晶振的误差通常小于0.1%.)。





图 1 位定时段(位速率和总线长度乘积为最大值)的规格

图 1所示为位定时段(位速率和总线长度乘积为最大值)的规格。这样的要求主要应用于工业自动化系统。

如果对位速率和总线长度的要求不高,那么位速率和总线长度的乘积也因此降低,而用于重新同步的时间缓冲段则可延长。这样根据最大可能的同步跳转宽度,在一次重新同步中可校正|e|=4的相位误差。因此可以使用较为经济的陶瓷振荡器。图 2所示为适用于 汽车电子中最大振荡器误差的位定时规格。





图 2 位定时段的规格(适用于最大振荡器误差)

通常位定时的规格首先通过所需要的位速率来确定。位时间必须为系统时钟周期的整数倍。位时间tbit=n×tq(n=4..25,tq为时间量)。确定位定时参数的一种方法是首先确定传输段的长度,因此必须考虑到最大的总线长度和最大内部延迟时间。将往返的延迟时间转换成对应时间量的数目并取四舍五入为tq的整数倍。由于同步段的长度为1个tq。那么剩下两个相位缓冲段的长度为(tbit-tprog_seg-tq)。如果剩余时间单位的个数m=(tbit-tprog_seg-tq)/tq为偶数,则两个缓冲段的长度相同,如果是奇数,tphase-seq2=tphase_seq1+tq。

还必须注意Phase_Seg2的最小标称长度。由于该段不能短于CAN控制器的数据处理时间(该时间取决于实现方式的不同,介于0到2 tq之间)。同步跳转宽度(SJW)设置为它的最大值Min{4, tphase_Seg1/tq}。

振荡器的允许误差根据下方两条公式进行确定。

公式一: