FlexRay设计分析

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

FlexRay设计、功能和应用

Mathias Rausch博士,飞思卡尔半导体

在协议制定5年后,该协议规范(V2.1)的第二版也在2005年春季出版[1]。第一批产品已于2003年推出,另外还将在今年推出更多产品。由于新技术能实现经济高效的新应用的实施,整个行业对它产生了浓厚的兴趣。

在FlexRay功能的基础上,我们将在下文中探讨潜在的应用领域。然后,我们将更加详细地介绍在FlexRay 中使用的三种机制,并列举一系列示例来讨论FlexRay的几种应用。最后,我们将讨论可行和不可行拓扑的示例,并简要论述唤醒集群的场景。在本文的最后,我们将讨论如何计算最优的消息大小。

本文的主要目的是介绍FlexRay的相关知识,帮助用户了解FlexRay及其应用的潜力。

返回

FlexRay概况

特性

FlexRay提供了传统车内通信协议所不具备的大量特性。这些特性能为新型应用创造大量的机会。这些基本特性包括:

∙ 2 x 10 Mbit/s的数据速率

FlexRay支持两个通信信道:每个信道的速度达到10 Mbit/sec。与CAN协议相比,取决于配置

和比较模式的不同,它能将可用带宽提高10-40倍。

∙同步时基

FlexRay中使用的访问方法是基于同步时基的。该时基通过协议自动建立和同步,以提供给应用。

时基的精确度介于0.5 μs 和10 μs之间(通常为1--2μs)。

∙提前知道消息的延迟时间,保证偏差幅度

通信是在周期循环中进行的。特定消息在通信循环中拥有固定位置,因此接收器已经提前知道了消息到达时间。到达时间的临时偏差幅度会非常小,并能得到保证。

∙冗余和非冗余通信

为了增强系统的可用性,FlexRay提供了冗余传输消息的选项。消息能够冗余传输,但并不是所有消息都必须冗余传输,否则会导致带宽的过多损失。

∙灵活性

在FlexRay开发过程中,主要重点是灵活性。不仅提供消息冗余传输或非冗余传输两种选择,系统还可以进行优化,以提高可用性(静态带宽分配)或吞吐量(动态带宽分配)。用户还可以扩展系统,而无需调整现有节点中的软件。同时,它还支持总线或星状拓扑。它提供了大量配置参数,可以支持对系统进行调整,以满足特定应用的需求,如通信循环的持续时间、消息长度等。

应用领域

2.1章节中列出的特性使它适合于大量应用领域:

∙CAN的替代技术

在数据速率要求超过CAN的应用中,人们现在同时使用了两条或多条CAN总线。FlexRay是替代这种多总线解决方案的理想技术。

∙骨干

FlexRay具备很高的数据速率,因而非常适合汽车骨干网络,用于连接多个独立网络。

∙实时应用,分布式控制系统

用户可以提前知道消息到达时间,消息循环偏差非常小,这就使FlexRay成为具有严格的实时要求的分布式控制系统的首选技术。

∙以安全为导向的系统

FlexRay本身不能确保系统安全,但它具备大量功能,可以支持以安全为导向的系统(如线控系统)的设计。

在车内通信方面,FlexRay提供了一次"典型转移",从事件驱动通信(CAN)迁移到时间驱动通信。这种迁移需要一定时间,因为它不仅会影响新技术的推出,还要求对涉及到的所有方面都进行重新培训。一旦这个迁移步骤完成,就会发现更多应用领域。

协议分类

目前已经存在大量专门为汽车应用设计的各种协议。图1进行了简要介绍。历史最悠久、同时最广为人知的协议是CAN(大多数情况下是高速CAN:CAN-C)。该协议既部署在动力系统中,也部署在车身应用中(低速CAN最为普遍)。它能够实现的最高数据速率为1 Mbit/sec,但网络的传输速率通常低于500 kbit/sec。

虽然LIN协议在几年前才制定,但其应用却已十分广泛。该协议是为传输速率要求较低的经济高效的模块开发的。它还特别部署在车身应用中,如座位和后视镜调整、电动窗等。它可以达到20 kbit/sec的速率,足以满足此类应用的需求。

图1:汽车通信协议

D2B协议、MOST协议及其新版本协议是专为多媒体应用开发的,并且通常只在该领域使用。该协议不适合部署到其它领域。

在速度方面,FlexRay的速度介于CAN协议和MOST协议之间,但是由于它具有容错功能,所以更为复杂。

返回

功能

本章节将更详细地介绍FlexRay中使用的部分机制,包括访问方法、时钟同步和集群启动等。

访问方法

使用FlexRay的通信是在周期循环中进行的。一个通信循环始终包括静态部分和网络闲置时间(NIT)。协议内部流程需要网络闲置时间,并且,在这个时段内,集群的节点之间不进行任何通信(图2)。

通信循环的静态部分基于TDMA(时分多址)技术。该技术将固定时槽分配给各个节点,在这个时槽内,允许节点传输数据。所有时槽大小相同,并且是从1开始向上编号。将1个或1个以上时槽固定分配给每个节点。在运行期间,该时槽的分配不能修改。

图2:带静态和动态段的通信循环

除了静态部分以外,通信循环还选择性地组成动态部分。所谓的"小时槽法"用来访问动态部分的通信媒介。呼出消息永远分配给动态时槽。与大小都相同、始终用于传输的静态时槽相反,只要时槽分配给了节点,动态部分就只能在需要时才进行传输。因此,动态部分的可用带宽是动态分配的。如果消息号码(ID)和时槽号码对应,带有待发呼出消息的节点就会进行传输。如果没有节点传输,所有节点就会等候,等待的时间长度正是时槽的长度,然后它们的时槽读数也会增加。在时槽读数增加以后,所有节点都将检查该时槽号码是否与呼出消息对应。如果两者匹配,该节点将发送消息。所有节点接受这条消息,并且一直等到它们完全接收了这条消息后再增加时槽读数。这一过程将会持续,直至到达动态部分。如果在循环中,没有或者只有少数节点传输消息,在动态部分的结尾,就会达到更高的时槽数量。如果有大量节点进行传输,则到达的时槽数量就比较少。因此,拥有较高编号的(即优先权较低)呼出消息的节点可能在一个循环中传输,而不在另一个循环中传输,具体取决于动态部分在其之前已经传输的节点的数量。要确定消息已经传输,用户必须在静态部分发送该消息,或者必须将它分配给动态部分中的较低消息编号(即优先权较高)。

时钟同步

如果使用基于TDMA的通信协议,则通信媒介的访问在时间域中控制。因此,每个节点都必须保持时间同步,这一点非常重要。所有节点的时钟必须同步,并且最大偏差必须在限定范围内,这是实现时钟同步的前提条件。最大偏差称为精确。

图3:时钟同步机制

时钟偏差可以分为相位和频率偏差。相位偏差是两个时钟在某一特定时间的绝对差别。频率偏差是相位偏差随着时间推移的变化。它反映了相位偏差在特定时间的变化。

相关文档
最新文档