随着汽车电子系统中ECU数量的增加,需要通过CAN总线通信的数据量也急剧增加,根据以往的工程经验,总线负载率超过30%就会造成报文延时的概率增大,不同的总线负载率引起报文延时的概率有多大,能够造成的延时是多少,这些问题采用现有的分析手段和工具都很难回答。同时也引申出两个问题(文中的总线负载率都是指CAN总线):
总线负载率是不是超过了30%就要使用FlexRay总线?
总线负载率在30%以下就不会发生报文响应时间超过Deadline?
菲亚特研发部门使用Symtavision的用户案例可以回答上面两个问题。
总线负载率低于30%会造成报文延时
CAN总线负载率是在一段统计时间内对总线报文占用总线的评估参数,这是一个很宏观参数。如下面的示例CAN总线:有3个ECU,分别按照不同的周期发送不同的CAN报文。
图1:采用SymTA/S建模和分析CAN总线报文延时
在采用SymTA/S分析得到总线负载率是2.85%,这个负载率很小,但是详细分析报文Msg_20ms因为总线仲裁的原因,报文最大响应时间为0.564ms(Deadline是0.5ms); 当优化CAN总线后,响应时间得到有效降低。这只是一个很简单的例子,说明总线负载率低于30%也存在报文延时,工程中需要新的工具来评估总线的有效性和可扩展性,总线负载率是有一定局限性的。
重新认识总线负载率
CAN总线负载率只是一个宏观的参数,已经不能充分的评估总线的有效性和可扩展性。造成这样的原因是一方面以前电子系统都比较简单和总线报文数量少,单纯的限制总线负载率就可以满足报文响应时间的要求,但当参与CAN总线通信的ECU数量或总线报文数量增多了以后,就不能保证较低的总线负载率满足报文响应时间的要求。
另一方面从技术角度分析,以前没有一个工具可以帮助工程师分析CAN负载率背后更为详细的因素,无法具体分析每条报文的延时和该报文对总线的影响。但在工程应用中最终定义或者评估的是某条报文的Deadline,当CAN通信系统复杂了之后,单纯的总线负载率已经不能作为一个完整的技术指标来评估一个CAN总线系统,需要更详细的分析关心的每条报文的最大响应时间(Worst Case Response Time)是否超过了Deadline。
CAN总线负载率可以到70% -Fiat研发工程师
菲亚特研发部门工程师很早就使用德国Symtavision公司的时间建模分析和验证工具SymTA/S来帮助他们开发和验证CAN总线系统,在几个车型中都采用了Symtavision公司的分析工具。工程师在开发下一代车型的时候,在系统ECU数量增多但不采用FlexRay总线的前提下,将CAN总线的通信能力发挥到最大程度,当然这些手段的前提是确保设计的CAN总线是满足对响应时间(Deadline)的要求。
首先菲亚特工程师将总线模型(DBC)文件导入到SymTA/s工具中,然后进行分析发现某些报文的发送时间超过了预先定义的Deadline,然后对总线系统进行了一些优化,确定那些超过预定义Deadline的报文最大响应时间都满足要求,同时分析发现CAN总线的负载率在70%。
结论
Symtavision公司的时间建模、分析和验证工具可以让研发人员在确定CAN总线是否可行的时候,不仅可以分析总线的负载率,更为重要的是可以分析和验证每条报文的最大响应时间,使得对CAN总线的分析更加深入了一步。
- 使用 Infineon Technologies AG 的 IRU3037(A)PBF 的参考设计
- EVALSF3-ICE3DS01G,用于 LCD 显示器的 34W、5V、12V AC 到 DC 多输出电源的评估板
- Protues仿真实例(8051)-4X4矩阵键盘.rar
- SY89465U,用于 GB 以太网交换机时钟缓冲器的评估板
- DC2085A-E,具有 LTC2000A-14、14 位、2.7Gsps DAC 和 DDR LVDS 接口的演示板
- Air103开发板
- TCR2EN13、200mA、1.3V 输出电压 CMOS 低压降稳压器的典型应用
- CUB+2812物联网幻彩灯
- LTC1473L,用于 3.3V 应用的自动电源路径切换
- MC33072ADR2G高速低压比较器典型应用