Board logo

标题: 优化CAN节点位时序以适应数字隔离器传播延迟 [打印本页]

作者: porereading    时间: 2014-9-5 20:37     标题: 优化CAN节点位时序以适应数字隔离器传播延迟

控制器局域网(CAN)由ISO 11898标准定义,广泛用于工业和汽车应用中。CAN协议(比如DeviceNet或CANOpen)依赖内置的错误检查和差分信号采样。电流隔离可进一步增强鲁棒性,能够抗高压瞬变,但会增加传播延迟。CAN节点经过优化配置,哪怕存在隔离时也具有最大数据速率和传送距离。

为什么传播延迟很重要

传播延迟会影响节点间的并发传输和仲裁。冲裁依赖于CAN信号发送;逻辑0表示“主动”(总线间的差分电压),逻辑1表示“被动”(全部输出为高阻抗),意味着主动位将覆盖被动位。发射时,所有节点监控总线;而发射被动位时则停止,从而允许另一个节点赢得仲裁(图1中的节点A)。



图1.两个节点间的仲裁



传播延迟不可过大,否则可能在其他节点传播主动状态之前会监控总线状态。对于图2中的节点A和节点B,往返时间很关键;该时间等于TPropAB加TPropBA,或者等于通过电缆和收发器延迟时间的两倍,包括隔离(如有)。相比光耦合器,数字隔离器可降低传播延迟,但系统允许的总传播延迟是固定的,因此加入隔离可能会降低最大电缆距离。



图2.带传播延迟的仲裁



传播延迟补偿

若要补偿隔离引起的传播延迟,可调节特定的CAN控制器参数。首先为CAN控制器时钟设置波特率预分频器(BRP)值,该值定义划分位时间的“时间量子”(TQ)。它们适用于3或4段,如图3所示;一个用来同步,另外数个用于传播延迟(PROP)以及相位段1和2(PS1和PS2)。PS2和总TQ表示采样点位置。

第一步:匹配时钟、预分频器和数据速率

对于给定的数据速率来说,第一步是检查如何组合时钟和BRP,才能让TQ等于整数。1 Mbps示例如表1所示。该例采用ADI ADSP-BF548 Blackfin微处理器,内置CAN控制器。采用典型系统时钟(fsclk)值,TQ整数值以粗体显示(用于1 Mbps的有效时钟/BRP组合)。



表1.用于1 Mbps的时钟和BRP组合



第二步:位段配置

下一步是定义位段,并将采样点设得尽可能晚。对于表1中的每一个有效选项,SYNC段必须允许有一个TQ,并且TSEG2 (PS2)段必须适应CAN控制器处理时间(只要BRP大于4,BF548就要低于1 TQ)。TSEG1 (PROP + PS1)为16 TQ(最大值)。



图3. 1 Mbps时最大传播延迟的可能BF548位段


第三步:计算总线长度

图3显示1 Mbps的尽可能最新采样点时,ADSP-BF548的可能配置。除5 TQ总和外的所有配置均为至少85%采样点,但10 TQ时可达最佳值,此时要求fsclk = 50 MHz且BRP = 5.

最后一步是确定最优配置下的最大传播延迟,并决定所选CAN收发器/隔离的可能电缆长度。对于图4中处理器的最佳配置,可能的最大传播延迟为900 ns.


图4.采用ADM3053的隔离式CAN节点,集成isoPower

图1中的ADI ADM3053集成CAN收发器、数字隔离器和隔离式电源。250 ns环路延迟包括隔离器延迟(两个节点为500 ns)。假定电缆传播延迟为5 ns/m,这意味着采用BF548,则总线长度可达40 m(根据ISO 11898标准的1 Mbps最大值)。

结论

隔离可增加鲁棒性,但同时也会增加发送和接收两个方向的传播延迟,并且仲裁时针对两个节点而加倍。为了补偿延迟,可针对可能的最大传播延迟配置CAN控制器。这样,就有可能实现所需的数据速率和总线长度,哪怕是隔离节点的情况下。






欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0