CAN总线位定时参数的确定

上传人:德****1 文档编号:1089376 上传时间:2017-05-27 格式:DOC 页数:6 大小:153KB
返回 下载 相关 举报
CAN总线位定时参数的确定_第1页
第1页 / 共6页
CAN总线位定时参数的确定_第2页
第2页 / 共6页
CAN总线位定时参数的确定_第3页
第3页 / 共6页
CAN总线位定时参数的确定_第4页
第4页 / 共6页
CAN总线位定时参数的确定_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《CAN总线位定时参数的确定》由会员分享,可在线阅读,更多相关《CAN总线位定时参数的确定(6页珍藏版)》请在金锄头文库上搜索。

1、CAN 总线位定时参数的确定摘要:CAN 通信中,波特率、位周期内取样点数和位置可以编程设置,这些设置为用户根据其应用优化网络通信性能提供了方便。优化位定时参数,能够保证信息同步,保证传输延迟和时钟误差在极端条件下进行恰当的错误检测。本文说明位定时参数的确定方法。 关键词:CAN 总线 位定时 同步 延迟引言CAN 总线是一种有效支持分布式控制和实时控制的、多主的异步串行通信网络。由于 CAN 总线具有较强的纠错能力,支持差分收发,适合高噪声环境,具有较远的传输距离,并且 Philips 和 Intel 等半导体公司都有支持 CAN 通信协议的集成器件。CAN 总线已经在各个领域中得到了广泛应

2、用。在 CAN 通信协议中规定,通信波特率、每个位周期的取样位置和个数,都可以自行设定。这样的设计理念,为用户在自己的应用中,优化网络通讯性能提供了空间。为了通过设定位定时参数来优化网络通信性能,必须清楚位定时参数与参考时钟误差和系统内信号延迟的关系。如果位周期内的取样位置偏后,将能够容忍较大的信号传输延迟,相应的,总线传输距离可以延长;而如果周期内的取样位置接近中间,则可以容忍系统的节点间的参考时钟误差。但这显然是矛盾的,为了协调这种矛盾,必须对位定时参数进行优化位置。图 1 位周期结构图通过对 CAN 总线位定时参数进行研究,找到矛盾的关键所在,就能够对其进行优化,从而提高通信系统的整体性

3、能。下面以 Philips 公司的独立通信控制器 SJA1000 为例,进行研究。1 相关定义1.1 位周期的组成波特率(fbit)是指单位时间内所传输的数据位的数量,一般取单位时间为 1s。波特率由通信线上传输的一个数据位周期的长度(Tbit)决定,如下式所示。Fbit=1/Tbit (1)根据 Philips 公司的独立通信控制器,一个位周期由 3 个部分组成:同步段(tSYNC_SEG)、相位缓冲段1(tTSEG1)和相位缓冲段 2(tTSEG2)。Tbit=tSYNC_SEG+tTSEG1+tTSEG2 (2)所有这些时间段,都有一个共同的时间单元系统时钟周期(TSCL)。具体到 SJ

4、A1000,TSCL 由总线时序寄存器的值来确定。SJA1000 有 2 个总线时序寄存器,即总线时序寄存器 0(BTR0)和总线时序寄存器1(BTR1)。这 2 个寄存器有自己不同的功能定义,共同作用决定总线的通信波特率。总线时序寄存器 0 定义波特率预设值 BRP(共 6 位,取值区间1,64和同步跳转宽度 SJW(共 2 位,取值区间1,4)的值。位功能说明如表 1 所列。表 1bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0SJW.1 SJW.0 BRP.5 BRP.4 BRP.3 BRP.2 BRP.1 BRP.0CAN 的系统时钟周期 TSCL,可以由

5、 BRP 的数值为决定,计算公式如下:TSCL=2TCLKBRP=2TCLK(32BRP.5+16BRP.4+8BRP.3+4BRP.2+2BRP.1+1BRP.0+1) (3)其中 TCLK 为参考时间的周期。TCLK=1/fCLK (4)为了补偿不同总线控制器的时钟振荡器之间的相位偏移,任何总线控制器必须在当前传送的相关信号边沿重新同步。同步跳转宽度定义了每一位周期可以被重新同步缩短或延长的时钟周期的最大数目。tSJW=TSCL(2SJW.1+1SJW.0+1) (5)总线时序寄存器 1 定义每个位周期长度采样点的位置和在每个采样点的采样数目。位功能说明如表 2 所列,其中 SAM 意义见

6、表 3。表 2bit bit bit bit bit bit bit bitSAM TSEG2.2 TSEG2.1 TSEG2.0 TSEG1.3 TSEG1.2 TSEG1.1 TSEG1.0表 3位 值 功 能0三倍:总线采样三次:建议在中/低速总线(A 和 B 级)使用,有处于过滤总线上毛刺SAM1 单倍:总线采样一次;建议使用在高速总线上(SAEC 级)TSEG1(共 4 位,取值区间1,16)和 TSEG2(共 3 位,取值区间1,8)决定了每一位时钟数目和采样点的位置。这里tSYNC_SEG=1TSCL(此时间段固定) (6)tTSEG1=TSCL(8TSEG1.3+4TSEG1.

7、2+2TSEG1.1+1TESG1.0+1) (7)tTSEG2=TSCL(4TSEG2.2+2TSEG2.1+1TESG2.0+1) (8)位周期的标量值(NBT)定义为,SYNC_SEG(同步段系统时钟周期数)、TSEG1(相位缓冲段 1 系统时钟周期数)、TSEG2(相位缓冲段 2 系统时钟周期数)之和。这决定了它的取值区间为3,25,在 1 个取样点时,最小值一般取 4;在 3 个取样点时,最小值一般取 5。NBT=Tbit/TSCL=SYNC_SEG+TSEG1+TSEG2 (9)位周期的一般结构如图 1 所示。1.2 参考时钟误差在系统中,每一个节点都有自己独立的参考时钟。由于制造

8、工艺、运行时间及环境温度的变化,这些时钟的实际频率往往偏离预期的频率值。我们称这种偏差为参考时钟误差(f)。FCLK,max/min 表示参考时钟频率的最大值或最小值,fCLK,rat 表示参考时钟频率的额定值。相应的系统时钟周期也会有误差。TSCL,min 表示系统时钟周期最小值,TSCL,max 表示系统时钟周期最大值,TSCL,rat 表示系统时钟周期额定值。由于 f0,同步边沿发生在 TSEG1 内;e0,同步边沿发生在 TSEG2 内。如果引起重同步的边沿相位误差 e 的幅值小于或等于 tSJW 编程数值,则得同步导致位时间缩短或延长,与硬同步的作用一样;如果 e 为正值,且幅值大于

9、 tSJW,则增加 tTSEG1 值为 tSJW;如果 e 为负值,且幅值大于 tSJW,则减少值为 tSJW。2 参数计算规则参数确定原则为:保证系统在极端恶劣条件的两节点间,能够正确接收并解码网络上的信息帧。极端恶劣条件是指这两个节点的钟振偏差在系统容忍偏差极限的两端,并且两节点间具有最大的传输延迟。在没有噪音干扰的正常通信情况下,相位误差累计的最坏情况是,重同步边沿之间间隔有 10 个位周期。这是定义 SJW 最小值的条件。在实际的通信系统中,噪音干扰是不可避免的。由于噪音干扰,可能会导致重同步边沿之间的间隔超过 10 个位周期,可能进入错误处理模式。在这种情况下,由于同步边沿之间的时间

10、比较长,所以保证每一位都能够确切地取样就更加重要。如果不能够确切地取样,将会导致检测到错误并进行错误处理。考虑各方面的影响,位定时参数的设置公式如下:1 取样点模式3 取样点模式在计算 SJWmin 时,取大于计算数值的最小整数;在计算 TSEG2max 时,取小于计算数值的最大整数。由公式(15)(18)可见,SJW 和 TSEG2 由 NBF、f、PROP 分别决定。计算得到 SJW 和 TSEG2 后,由公式(9)可以得到 TSEG1。根据 SJA1000 的寄存器说明,可以得到具体寄存器的设置数值。3 参数计算步骤及举例某 CAN 通信系统,采用 1 个取样点模式,其它参数指标如表 4

11、 所列。表 4 参 数 说 明 最小值 典型值 最大值fBit/(kbs-1) 通信波特率 250 tbit/s 位周期时间 4 fCLK/MHz CAN 控制器的时钟频率 24f/% 时钟频率偏差 1.0tran/ns 总线驱动器延时 30 75 157toth/ns 其它设备延时 15 40/(nsm-1) 线路延时 5 6.5L/m 节点间总线长度 3 95tBUS/ns 计算得到线路延时 tBUS=L 15 618fprop/ns 计算得到传输延时,公式(13) 120 1630确定可能的 BRP、NBT 和 PROP。由公式(1)、(3)、(4)及(9)得到NBT=1/(fbitTS

12、CL)=fCLK/(2fbitBRP)所以有 NBTBRP=fCLK/2fbit (19)将参数代入公式(19)得到 NBTBRP 的值为 48,而 NBT 取值为 325,所以 NBT 和 BRP 所有可能的组合如表 5 所列。表 5fCLK NBT BRP TSCL/ns PROPmax PROPmin 有效性4 12 1000 1.63 0.12 无6 8 666.6 2.45 0.18 无8 6 500 3.26 0.24 无12 4 333.3 4.89 0.36 有16 3 250 6.52 0.48 有24MHz24 2 166.6 9.78 0.72 无计算 NBTmin 和

13、NBTmax。由公式(15-1)、(18-1)、(19)、(14)及(3)推出NBT公式(22)代入数据,计算得到 8.31NBT17.9。原则上选 12 和 16 都可以,为了方便取得样点,我们取较大的值 16。根据公式(15-1)计算 SJWmin,如表 6 所列。根据公式(17-1)计算 TSEG2min,如表 6 所列。根据公式(18-1)计算 TSEG2max,如表 6 所列。确定寄存器设置数值,如表 7 所列。表 6最小值 最大值 确定值SJW 3.23,3.67max 4 4TSEG2 2,SJWmax 8,5.54,4.78min 4TSEG1 TSEG1=NBT-TSEG2-SYNC_SEG=16-4-1 11表 7BTR0 SHW BRP BTR1 SAM TSEG2 TSEG1C2 1 1 0 0 0 0 1 0 3A 0 0 1 1 1 0 1 04 结论在不同的系统应用中,可以根据所使用的时钟频率、时钟信号的频率偏差、通信波特率及最大传输距离等因素,对通信控制器位定时参数进行优化确定。确定得到的参数可以提高通信系统整体性能,这使 CAN 总线优势更加明显,以适合更加广泛的应用。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号