英语原文共 8 页,剩余内容已隐藏,支付完成后下载完整资料
用于实时应用的CAN-Ethernet架构
摘要
嵌入式系统具有特定的实时要求,导致专用通信协议的开发。 这样的系统必须面对增加的通信需求和交换以太网架构的演进。 但是,由于工业限制,从现有的专用现场总线架构转移到新的基于以太网的架构并不总是可行的
在本文中; 我们比较了不同的解决方案用于整合现有的数据总线(例如CAN,这是汽车上下文中的一个重要标准)在一个尊重增加带宽需求的全局架构上。 在第一步,我们研究经典CAN / CANbridg策略。 第二步,wepropose CAN /以太网桥接策略,在通过可由(非CAN)应用程序共享的以太网网络通信时,尊重CANEnd系统的实时行为。
1.介绍
现场总线 CAN,WorldFIP,Profibus [24]在具有特定通信要求的实时应用(分布式计算机控制系统)的背景下开发,例如:
*有限的端到端传输延迟
*周期性流量的有限和小抖动。
然而,现在在这种系统中交换的信息量一直在增加稳定,现在正达到传统现场总线的极限,特别是在带宽方面[6]。
由于以太网标准的广泛接受及其向更可预测的交换结构的演进,从专用现场总线到以太网的切换是嵌入式系统中的一种经典趋势[23]。
然而,在航空电子系统中引入交换以太网的成功经验(AFDX,[11,10])主要是由于应用通信模型(周期性方案)的保留以及预期实时性质(boundeddelay)。
本文提出的研究目标略有不同,因为目标是构建通过在以太网骨干网上互连现有CAN数据总线而获得的异构架构。
我们已经建立了双重研究:一方面,我们已经开发了一些带有CAN或以太网卡的Linux-PC的原型,另一方面,我们确定了一个更多的理论研究,这篇文章很快在本文中提出。
- 介绍CAN和以太网技术及其扩展,以更有效地应对实时约束。 在第3节,我们研究古典纯CAN架构。 在第4节中,我们考虑CAN /以太网架构,并建议尊重CAN端系统的实时行为。 CAN /以太网桥接策略第5节总结了本文,并为未来的工作提出了一些想法。
2.通信技术
我们提出了我们要使用的两种通信技术,即控制器局域网和以太网。 我们总结了提出的解决方案,使这些技术确定性,特别是在期限和抖动边界方面。
2.1. CAN
控制器局域网(CAN)[12]是一种串行通信协议,适用于网络传感器,执行器和实时系统中的其他节点。 CAN规范定义了用于物理和数据链路层的协议的几个版本。 在他的论文中,我们专注于CAN 2.0 A.已经提出了几种应用层协议。
CAN寻址系统基于消息识别符:帧没有目的地和源地址。 帧在总线上广播。 站点通过标识符的过滤过程获得他们感兴趣的帧。
图1
帧格式如图1所示。不显示每个字段的详细信息。 本文剩余部分的相关字段如下:
*如前所述,标识符字段标识包含在帧中的数据,
* DLC字段给出数据字段的长度(以字节为单位)
*数据字段是帧的有效载荷。
位填充用于避免具有相同值的位的长序列的传输。 一旦发送了相同值的5位,就自动插入一个互补位。 这种机制对整个帧有效,除了IFS,EOF,ACK和CRC的最后一位。
介质访问方法(MAC)是CSMA / CR,总线上帧传输的开始是同步的。 当两个或更多个站同时开始传输时,具有较小帧标识符的站中的一个激活,而其他站停止其传输。 这是通过逐位的碰撞检测实现的。 当站发送1(隐性比特)并且检测到0(独占比特)时,它知道具有较高优先级的帧正在被发送,并且因此,它立即停止发送。 该机制保证对标识符的严格优先级顺序。 这意味着对总线的带宽和最大长度的限制(例如对于40米为1Mb)。
2.2。 增强CAN协议
已经确定了CAN本地MAC的一些缺点。 首先,它是事件触发的:当一个站有一个帧要传输,它试图。 一旦没有具有较高优先级的帧被发送,它将成功。 这种机制可以在周期帧上引起大的抖动。其次,标识符与静态帧相关联。 这强加了使用静态优先级的调度算法,例如 当使用动态优先级的调度算法来获得周期性业务为中等时速率单调[17]。 最早期限[17]。
与由主站周期性地广播的触发消息重新同步。 灵活的TTCAN(FTT-CAN)[1]旨在引入TTCAN的静态调度的灵活性。 该表由唯一的主人记忆。 触发消息包含可以传输的消息的编号,直到下一个触发消息。 此外,为非同步消息保留时间。 如果主机故障,可能会出现问题。 这个问题的解决方案已经在[8]中提出[17] [5]。 它们使用标识符的一部分来编码消息的(动态)优先级,这意味着有限数量的不同消息。 在[21]中,提出了一种基于服务器的方法。 本文将仅考虑本机CAN MAC。 然而,如下文所述,在我们的背景下评估本节中提出的解决方案可能是非常有意义的。
2.3。 以太网
以太网链路层[7]设计用于计算机本地网络,其中高带宽和低成本硬件比保证期限和/或抖动更重要。
以太网链路层[7]专为计算机本地网络设计,其中高带宽和低成本硬件比保证期限和/或故障期更重要:每个以太网实体具有唯一的MAC地址。在每个帧中,插入目的地(单播,广播或多播)和源地址。帧在物理层上广播。实体获得通过过滤过程感兴趣的帧。以太网介质访问方法是CSMA / CD:时间分为插槽。发射总是从时隙开始开始。当两个实体(或更多个)开始同时发射( 信号传播延迟)时,实体检测到冲突,它们立即停止发射并进入重新发射状态(为了确保所有实体具有检测到冲突,至少发送64个字节)。在重传状态下,发送者在[0,2C-1]中均匀地绘制随机整数值n,其中c是已经对该帧观察到的冲突数量(界限为10)。它在重新发射帧之前等待n个时隙。重传次数限制为15.以太网有效载荷可以从46字节变化到1500字节。以太网流量是10Mbs,最常见的是现在的100Mbs,还有一个IGbs解决方案。 10Mbs和100Mb的以太网帧格式在图2中描述。在以太网帧中,存在(至少)26个字节的控制和0个高达1500字节的数据。填充保证最小有效负载为46字节。
表2
2.4。 实时以太网
如前所述,以太网的最初目标是最大化带宽利用率并最小化主题响应时间。 因此,它不能很好地适用于实时应用,其中主要挑战是保证期限(限制响应时间)的尊重和限制抖动。 然而,已经有许多尝试使以太网实时[22]。
第一类方法在于修改媒体访问控制以实现到总线的有界访问时间。 [15]。 最坏情况的传输延迟通常比平均传输时间大几个数量级,导致系统的超标。 此外,它通常意味着修改了禁止使用标准以太网卡的固件。
第二类方法包括在以太网上添加控制层,以便绑定或甚至消除冲突。 这些技术中的一些基于主/从架构,由于主消息,其生成importantoverhead。 其他一些使用令牌传递,这经常引起大的抖动和/或开销.TDMA需要昂贵的精确时钟同步[25]。 在虚拟时间协议[19] [20]中,每个帧在发送之前的特定时间量,并且在发生冲突的情况下,使用概率方法。 这种技术的参数难以优化,而最坏情况下的传输延迟通常比平均值大得多。
最近提出了时间触发方法。它是FTT-CAN对以太网链路的适应,被称为FTT-Ethernet [22]。主机周期性地发送触发消息,其指示应当被发送的帧,直到下一个触发消息和传输的持续时间。它是一种主/从架构,其中主开销减少。我们将在第4节中提出FTT-Ethernet灵感的解决方案。交换式以太网是绕过以太网的媒体接入策略的一种方式:每个站都直接连接到具有全双工链路的以太网交换机。然后,介质总是自由的。因此,保证性能与交换机的策略强烈相关。已经开发了几种方法。一种通用方法是网络微积分([3,4]),已经成功应用于AFDX网络系统中的空中总线嵌入式网络[11,10]。另一个是响应时间分析[17]。这两种方法都已在比较[14]。
如前所述,交换以太网的使用超出了本文的范围。
3.纯CAN架构
本节中考虑的实时网络架构由CAN总线组成。 这些架构的性能将用包括表1中列出的消息集的应用来说明。它包括148个周期性消息。 每个消息的相对期限等于其周期。 长度和传输时间的值对应于1 Mbs CANbus。 让我们看看第一行。 这意味着周期为4 ms的13个周期性CAN消息。 这些消息将在下面称为M1消息。 每次出现的M1消息包含8字节的数据。 消息的发生长度为135位。 它使用以下公式计算:
47是CAN帧的控制位的数量,包括帧间间隔。 8times;DLC是帧的数据位的数量。 公式的其余部分是插入帧中的填充比特的最大数目。 所以,这是一个最坏的情况下的长度。 传输时间为135,us。 M1 CAN消息所需的带宽为0.43Mbs。
表1.应用程序的消息集
3.1。 一个共享的CAN总线
该架构考虑单个CANbus互连所有站。 这是最简单的解决方案。 在下列情况下是不切实际的:
*所有流量所需的累积带宽超过总线的可用带宽(带宽条件),
*站的地理分配与CANbus的最大长度不相符。 在1 Mbs(距离条件)40米。
考虑严格的周期性业务和遵循速率单调策略(消息的周期最小,其优先级最高)的帧标识符的分配,可以静态地评估带宽条件。 距离条件独立于流量。 关于表1中描述的应用,所有流量所需的带宽是2.19Mbs,这显然违反了带宽条件。 因此,应用不能使用一个共享的CAN总线来实现。
3.2。 几个CAN总线通过桥接站互连
此架构旨在满足带宽条件。 它是嵌入式系统中经常使用的经典解决方案。 图3中示出了具有4个CAN总线的示例。每个CANbus包括两个本地站(用于CAN总线1的Si和S2)和两个桥站(用于CAN总线1的S9和S12)。 在本例中,每个CAN总线都是总线1,而不是直接连接到总线3。
图3. CAN总线互联的桥接站
系统操作非常简单。 必须考虑不同种类的框架:
- CAN总线本地的帧:它们只需要通过这条总线传输,连接一个Sk:必须通过总线上的Sa发送,由Sk接收,由总线d上的Sk发送的 收到的Sb,
- 从CAN总线的本地站Sa到CAN总线d,s和d的本地站Sb的帧没有通过网桥直接连接:它们必须在接收到的总线上被发送 桥接到总线,通过总线和桥传输到连接到总线d的桥,然后到站Sb。
我们将假设网络架构是构建的,使得最后一种类型的帧永远不会发生。 第一类型的帧称为局部帧,而第二类型的帧称为远程帧。
表2.纯CAN架构
作为示例,我们将表1的示例映射到图3的网络架构上,其中每个CAN总线的本地站的数量是未知的(在图上是两个)。消息按表2中所述分发(3个第一列)。优先级被分配给表2的列4中所示的消息。更高的优先级对应于值1.应用速率单调策略。对于具有相同周期的消息,本地优先级具有较低的优先级。对于具有相同周期的远程消息,优先分配是任意的。这同样适用于具有相同周期的本地消息。为了验证系统,有必要确保每个消息的每一帧都遵守其死线。一种方法是计算最坏情况的端到端传输延迟。让我们考虑F8,d,m,i是从总线(源总线)上的本地站到总线d(目的地总线)上的本地站的消息Mm的第i个远帧。其最坏情况的端到端传输延迟Ts,d,m,i iS:
其中Tdmi(或者Td mi)表示CAN总线(相应地d)上帧Fs,d,m,i的最坏情况下的传输延迟,TB是由网桥引起的最大开销。我们考虑TB = 0.5 ms 是对于平均微控制器的合理值)。 如果帧Fs,d,m,i变得准备好在时间tstart在总线s上传输,准备好在时间tstart在总线s上传输,则Fs,d,m,i在s上的最坏情况传输延迟Tdmi 在[16] [2] [18]中描述的可调度性测试的非抢占版本之后定义,
我们从t = 0开始并迭代,直到两个连续的迭代产生相同的值。 A是CAN总线上一帧消息Mm的传输时间。 Abloc是由在时间tstart发送的帧beeing引起的最大延迟(系统是非抢占的)。 F s,m,i表示消息M m的帧,其是局部的
到公共汽车。 我们有
作为示例,让我们考虑来自最低优先级远程M4消息的帧F4,1,4,i。 我们有
示例应用的最差情况传输延迟由表2的最后一列给出。我们观察到,对于每个消息,最坏情况的延迟小于周期。 由于期限相等,我们可以认为每个消息的每一帧都将满足其最后期限。
本段中提出的架构是满足带宽解决方案的良好解决方案。 然而,它对于距离条件几乎没有效率。 在下一节中提出的架构旨在作为对这种距离条件的答案
4.几个CAN总线通过以太网上的桥站互连
图4.以太网上的桥站互连的CAN总线
这种架构的示例如图4所示。它包括四条CAN总线和一条以太网链路(本节不考虑交换以太网)。每个CAN总线与以太网共享一个桥站(S9,S10,S1 和图4上的S12)。 必须考虑两种类型的帧:
- CAN总线本地的帧:它们只需要通过这条总线传输,
- 帧从CAN总线的本地站Sa到CAN总线的本地站Sb d:它们必须由总线s上的Sa传输,由与s相关联的网桥接收,通过以太网传输,由与之关联的网桥接收 d,由总线d上的这个网桥发送并由Sb接收。
同样,我们考虑表1和表2中描述的应用。我们必须回答的问题是:CAN和以太网之间的桥接策略是什么? 回答这个问题,我们必须记住,CAN和以太网的特性是非
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[141116],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。