微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 汽车电子 > FlexRay总线的功能安全性分析

FlexRay总线的功能安全性分析

时间:01-21 来源:3721RD 点击:

2 FlexRay介绍
由于线控技术可以提高车的操控性能,降低生产和使用成本,提升安全性、节能、环保和舒适度,成为整车技术进步的重要一环。但是为了取消机械或液压的后备,对控制装置及其通信的可靠性的要求大为提高。这就对通信的带宽和确定性有更严的要求,CAN总线不能满足这个带宽要求,在确定性上也不足,于是就产生了FlexRay技术。根据标准[3],FlexRay可以有总线、星型、树状等拓扑结构。它提供了双通道的控制器结构,可组态为冗余通信,也可各通道独立运行,有很大的灵活性。每个通道最高可组态工作于10 Mb/s。FlexRay是时间触发通信协议,由分布式时钟实现同步。系统的调度表由cycle\\static slot\\minislot确定。一个cycle有固定数目的static slot和minislot,它们的时间长度都是均等的,由组态时确定。一个节点在一个cycle中可以占用多个static slot,static slot可以散接(multiplxing),即各个cycle的同一static slot可以用于不同节点。FlexRay帧的数据域(payload)可达254字节,它的头部为标识符及帧长等控制信息,有独立的CRC检验,尾部有覆盖全帧的24位CRC检验。FlexRay有对抗时域错的Bus Guardian设计。

关于FlexRay的缺点或弱点,参考文献[4]提到物理层连接的困难,影响到信号完整性,实际上能较易使用的是有源星型,但这带来成本的提高;cycle设计约束多,带来困难;同步和启动节点配置与容错有关,是挑战;由于资源有限,升级演进时很困难(并非像以前强调时间触发协议的composability优点--笔者注)。参考文献[5]介绍了在FlexRay中产生各自独立的时钟同步小集团的可能性,也就是说虽然各节点都在通信,但是2个集团间无有效通信,是一种故障状态。解决办法是用3个冷启动节点、3个同步节点,但是这与时间同步容错的要求矛盾。还有就是将调度表排满,以免形成小集团,这也与留有余地供将来升级扩充的要求矛盾。总之尚无彻底解决方案。再有就是时钟可能产生同向漂移[6],与应用时钟的差造成帧未能就绪或覆盖引起漏帧。FlexRay虽然是为高可信性设计的,但是在传送中出错后处理要通过应用层解决,这带来新的问题,本文将分析如果不作处理会怎么样。

3 Audi和BMW的FlexRay总线应用的功能安全等级
BMW和Audi是首批批量使用FlexRay总线的车厂,它们的具体用法尚未查到,但是参考文献[7]给出了部分使用参数,可以以此作一些初步分析。

3.1 Audi的参数

Audi的cycle为5 ms,每个cycle有62个static slot,slot用于传送42字节payload的帧,静态段为4.03 ms。有8个ECU共传送220个协议数据单元(PDU)。这些PDU经组合,最后在27个slot中传送。由提供的周期分布可见5 ms消息为8个,10 ms消息为1个,20 ms消息为7个,40 ms消息为6个,其余更长周期的消息先忽略。

由payload可以算出使用的帧长为500位,假定误码率为ber=1×10-7(这在铜线中已是相当好的了),那么误帧率为fer=5×10-5/frame。

由周期可算出每小时传送的帧数为n=7.92×105frame/h。假定通信用2个通道同时传送,那么同时失败的概率为fer2=2.5×10-9/frame。1小时内所有帧均成功传送的概率为:P=(1-fer2)n。

1小时内有1次以上错的概率为1-P≈fer2×n=2.5×10-9×7.92×105/h=1.98×10-3/h。SIL2的安全等级要求是系统失效概率为10-7/h,分配到通信上为10-9/h,由此可见存在巨大的差距。

3.2 BMW的参数

参考文献[7]也间接给出了BMW的参数:cycle为5 ms,每个cycle有91个static slot,slot用于传送16字节payload的帧,实际使用的payload为8字节,共有227个PDU。由2.5 ms消息占4%及使用10个slot知,这些PDU没有合并。由提供的周期分布可见5 ms消息为62个,10 ms消息为45个,20 ms消息为80个,40 ms消息为38个,其余更长周期的消息先忽略。

各个消息的payload长度是不同的,由这个分布,在假设误码率为ber=1×10-7时可以算出各自帧长与误帧率,再算出平均误帧率fer=1.51×10-5/frame。假定通信用2个通道同时传送,那么同时失败的概率为fer2=228×10-9/frame。由周期算出传送帧数为n=2.79×106/h。同样算出1小时内有1次以上错的概率为1-P≈fer2×n=2.28×10-9×2.79×106/h=6.36×10-3/h,也远大于SIL2分配给通信的要求。

4 主动重发方案的可行性
有2位作者建议了主动重发的方案,其一见参考文献[8]。主动重发在概念上就是时间上的冗余,帧不但在不同的物理通道上重发,也在不同的时段上重发。由此来分析第3节的两种情况。

4.1 Audi

当每帧被安排用2个static slot传送时,2个通道将有4次传送,同时失败的概率将小得多,为fer4=6.25×10-17/frame。实际传送的帧数加倍,但内容未加倍,故计算仍按n进行,1 h内有1次以上错的概率为1-P≈fer4×n=6.25×10-17×7.92×105/h=4.95×10-11/h。这可以满足SIL2分配给通信的要求。

理论上,原来的应用占用了27/62的static slot,现在加倍为27/31也还够用,但是由于消息送达时限的限制,将使调度变得十分困难,是否有解尚无定论。留给将来扩展升级的空间很小,已经表现出FlexRay的带宽不够。

4.2 BMW

采用主动重发一次时,1 h内有1次以上错的概率为1-P≈fer4×n=5.19×10-18×2.79×106/h=1.45×10-11/h。这可以满足SIL2分配给通信的要求。

但是,原来BMW已占用了2/3的static slot,根本没有足够的空余slot可供主动重发。例如BMW的静态段为3 ms,在2.5~3 ms中总共可安排0.5/3×91=15个slot,它的2.5 ms的消息已占去10个slot,就不可能对它再作冗余传送。这也说明FlexRay的带宽不够。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top