车载网络FlexRay协议——静态段结构分析
- 格式:pdf
- 大小:959.17 KB
- 文档页数:3
flexray总线原理FlexRay总线是一种新型的高速、实时、可靠的数据通信总线,它的出现填补了CAN总线在某些方面的不足,其主要应用于汽车电子控制系统中。
本文将从FlexRay总线的概念、特征、协议结构、数据传输方法和误码率等方面详细介绍FlexRay总线的原理。
一、FlexRay总线的概念FlexRay总线是一种高速、实时、可靠的数据通信总线。
它可以支持大规模的分布式控制系统,并提供可靠的数据传输服务。
FlexRay总线还支持多协议和多车型的适配能力,能够适应各种不同要求的汽车电子控制应用场景。
二、FlexRay总线的特征1. 高速:FlexRay总线的数据传输速率最高可达10Mbps,比CAN总线的速率高出数倍,可以满足更高的数据传输需求。
2. 实时性强:FlexRay总线具有高精度的时钟同步机制和严格的时间戳标记机制,实时性较为优异,能够满足实时性要求高的控制系统的需求。
3. 可靠:FlexRay总线采用了冗余机制,并支持双节点和多节点之间的数据冗余传输,大大提高了数据传输的可靠性和容错性。
4. 灵活性高:FlexRay总线可以通过配置不同的协议参数,实现灵活的配置,以适应不同车型、控制系统和应用场景。
三、FlexRay总线的协议结构FlexRay总线的协议结构分为物理层、帧封装层和协议控制层三个部分。
1. 物理层:物理层规定了FlexRay总线的电气特性和传输方式。
物理层一般由传输介质、传输速率、线缆拓扑和线缆分布等因素组成。
2. 帧封装层:帧封装层规定了FlexRay总线数据传输的格式和方式。
帧封装的数据格式标准化,其协议规定了帧的长度和格式。
3. 协议控制层:协议控制层规定了FlexRay总线中节点的控制逻辑和数据传输机制。
该层关注的重点是如何正确地控制节点之间的通信和数据传输,包括时钟同步、消息传输、错误检测和容错等。
四、FlexRay总线的数据传输方法FlexRay总线采用了效率高、灵活性强的时间分割多路复用(TDM)和事件触发方式的数据传输方法。
汽车控制系统效能升级!FlexRay网络标准详解自2003年组建以来,AUTOSAR(汽车开放系统架构)联盟一直致力于改变车载网络和电子控制单元(ECU)的设计方式。
AUTOSAR提出了一个符合业界标准的车载网络设计方法,使行业能够集成、交换和传输汽车网络内的功能、数据和信息。
这一标准极大地促进了汽车原始设备制造商(OEM)及其一级供应商之间的合作,使他们能够以一种一致、明确且机器可读的格式来交换设计信息。
一辆汽车的不同部分对安全及性能有不同要求,而支持它们的车载网络必须具备可预测的安全性能。
随着汽车技术的不断演变,人们已经可以用一系列总线技术来连接豪华汽车上最多100个不同的ECU,这些总线技术通常包括LIN、CAN、FlexRay、MOST和基于以太网的架构。
如果靠手动来管理这些ECU 之间数以千计的信息和交互操作是不可能的,因此汽车设计人员必然用自动化设计和合成工具来预测网络性能和调整车载功能。
汽车数据总线一辆典型的现代化汽车将同时装配各类总线和协议并从LIN、CAN、FlexRay、MOST和以太网中选择合适的网络。
多媒体/视听信号和汽车环绕摄像系统需要更高的数据速率,因此汽车制造商和OEM厂商在网络解决方案上选择用以太网代替MOST.但对于许多标准汽车功能而言,LIN和CAN提供的带宽与性能就足够了。
在汽车架构中,ECU组合在一起形成“集群”,这些集群通过通信“网关”相连。
集群通常会共享同一类型的总线,因此要达到高可靠性、高速率的标准,就要采用FlexRay 网络,但要求没那么高的门锁ECU可以由CAN或LIN来负责。
ECU网关往往要连接不同类型的信号,并执行不同总线架构之间的映射和转换功能。
汽车行业对不断提高安全性和ISO26262等标准的合规性提出强烈需求,进而提升了车载网络的性能,同时也降低了制造和元件成本。
不断进步的网络标准可以适应越来越高的数据传输速率,汽车电缆也达到了安全且低成本的目标。
FlexRay一、FlexRay介绍 (2)1.1汽车网络通信协议综述 (2)1.2FlexRay特点 (2)1.3FlexRay协会 (3)1.4FlexRay应用 (3)二、FlexRay协议 (4)2.1FlexRay的ECU结构 (4)2.2FlexRay通信模式 (5)2.3FlexRay拓扑结构 (6)2.4FlexRay帧格式 (8)2.4.1帧头部分 (8)2.4.2有效数据部分 (8)2.4.3帧尾部分 (9)2.5帧编码与解码 (9)2.5.1帧编码 (9)2.5.2特征符编码 (10)2.6时钟同步 (11)2.7唤醒与启动 (12)三、FlexRay物理层 (13)3.1FlexRay总线信号 (13)3.2FlexRay套件(以富士通为例) (13)3.2.1FlexRay开发进程 (13)3.2.2FlexRay产品 (14)3.2.3FlexRay产品特性 (15)四、历史与展望 (16)4.1汽车技术与汽车产业 (16)4.2关于汽车计算平台的思考与机会 (17)一、FlexRay介绍FlexRay通讯协议运用于可靠的车内网络中,是一种具备故障容错的高速汽车总线系统。
它已经成为同类产品的基准,将在未来很多年内,引导汽车电子产品控制结构的发展方向。
FlexRay协议标准中定义了同步和异步帧传输,同步传输中保证帧的延迟和抖动,异步传输中有优先次序,还有多时钟同步,错误检测与避免,编码解码,物理层的总线监控设备等。
1.1汽车网络通信协议综述汽车网络通信协议在保证整个系统正常运行方面起着非常重要的作用。
它可以帮助解决系统很多问题,如数据共享、可扩展性、诊断接口等。
目前,应用于汽车领域的网络标准除了FlexRay还有很多,如CAN、LIN、J1850及MOST等。
CAN总线全称为“控制器局域网总线(Controller Area Network)”,是德国博世公司从80年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议。
汽车ECU通讯新平台——FlexRay(V2.1)协议规范原作者:纪光霁,万茂松一、车载网络概述汽车电子化程度与日俱增,应用在车上的ECU模块数量也随之增加,从而使线束也增加。
汽车电子系统的成本已经超过总成本的20%,并且还将继续增加。
由于汽车生产商对制造成本的严格控制,加上对车身质量的控制,减少线束已经成为一个必须要解决的问题。
另一方面,以网络通讯为基础的线控技术(X-by-wire)将在汽车上普遍应用。
因此,车载网络时代终将来临。
车载网络种类有很多种,应用较多的有LIN,CAN、FlexRay、TIP/C、SAEJ1850、TFCAN、ASRB、MOST等。
美国汽车工程师协会(SAE)根据速率将汽车网络划分为A、B、C3类。
A类总线标准包括TTP/A(Time Triggered Protocol/A)和LIN(Local Interconnect Net-work),其传输速率较低。
①TTP/A协议最初由维也纳工业大学制定,为时间触发类型的网络协议,主要应用于集成了智能变换器的实时现场总线。
②LIN是在1999年由欧洲汽车制造商Audi、BMW、DaimlerChrysler、Volvo、Volkswagen、VCT公司以及Motorola公司组成的LIN协会共同努力下推出的用于汽车分布式电控系统的开放式的低成本串行通讯标准,从2003年开始得到使用。
B类标准主要包括J1850、VAN,低速CAN。
①1994年SAE正式将J1850作为B类网络标准协议。
最早,SAEJ1850被用在美国Ford,GM以及Chrysler公司的汽车中。
现在,J1850协议作为诊断和数据共享被广泛应用在汽车产品中。
②VAN标准是ISO1994年6月推出的,它基于ISO11519-3,主要为法国汽车公司所用。
但目前就动力与传动系统而言,甚至在法国也集中应用CAN总线。
③CAN是德国BOSCH公司从20世纪80年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通讯协议。
FlexRay总线原理及应用1 FlexRay总线介绍1.1 FlexRay产生及发展随着汽车中增强安全和舒适体验的功能越来越多,用于实现这些功能的传感器、传输装置、电子控制单元(ECU)的数量也在持续上升。
如今高端汽车有100多个ECU,如果不采用新架构,该数字可能还会增长,ECU操作和众多车用总线之间的协调配合日益复杂,严重阻碍线控技术(X-by-Wire,即利用重量轻、效率高、更简单且具有容错功能的电气/电子系统取代笨重的机械/液压部分)的发展。
即使可以解决复杂性问题,传统的车用总线也缺乏线控所必需的确定性和容错功能。
例如,与安全有关的信息传递要求绝对的实时,这类高优先级的信息必须在指定的时间内传输到位,如刹车,从刹车踏板踩下到刹车起作用的信息传递要求立即正确地传输不允许任何不确定因素。
同时,汽车网络中不断增加的通信总线传输数据量,要求通信总线有较高的带宽和数据传输率。
目前广泛应用的车载总线技术CAN、LIN等由于缺少同步性,确定性及容错性等并不能满足未来汽车应用的要求。
宝马和戴姆勒克莱斯勒很早就意识到了,传统的解决方案并不能满足汽车行业未来的需要,更不能满足汽车线控系统(X-by-Wire)的要求。
于是在2000年9月,宝马和戴姆勒克莱斯勒联合飞利浦和摩托罗拉成立了FlexRay联盟。
该联盟致力于推广FlexRay通信系统在全球的采用,使其成为高级动力总成、底盘、线控系统的标准协议。
其具体任务为制定FlexRay需求定义、开发FlexRay 协议、定义数据链路层、提供支持FlexRay的控制器、开发FlexRay物理层规范并实现基础解决方案。
1.2 FlexRay特点FlexRay提供了传统车内通信协议不具备的大量特性,包括:(1)高传输速率:FlexRay的每个信道具有10Mbps带宽。
由于它不仅可以像CAN和LIN网络这样的单信道系统一般运行,而且还可以作为一个双信道系统运行,因此可以达到20Mbps的最大传输速率,是当前CAN最高运行速率的20倍。
FlexRay总线网络管理策略车载网络管理的重要作用是协调网络中的节点同步进入睡眠状态。
此外,车载网络管理还应具备网络监测和诊断、网络配置管理的作用。
FlexRay总线协议是FlexRay联盟(FlexRay Consortium)制定的适用于汽车高速网络的新一代车载总线,具备高传输速率、硬实时、安全性和灵活性的特点。
FlexRay联盟目前只规定了物理层协议和数据链路层协议,没有制定网络管理方面的标准。
FlexRay总线协议特性分析(1)通信机制确定性FlexRay总线采用周期通信的方式,一个通信周期(Communication Cycle)可以划分为静态部分、动态部分、特征窗(SW, Symbol Window)和网络空闲时间(NIT, Network Idle Time)4个部分(图1)。
静态部分和动态部分用来传输总线数据,即FlexRay报文。
特征窗用来发送唤醒特征符(WUS, Wake Up Symbol)和媒介访问检测特征符(MTS, Media Access Test Symbol)。
网络空闲时间用来实现分布式的时钟同步和节点参数的初始化。
FlexRay总线所有节点的通信周期必须保持同步。
图1:FlexRay通信周期示例。
FlexRay节点如果通过发送网络管理协议数据单元(NMPDU,Network Management Protocol Data Unit)进行网络管理,NMPDU可以在静态部分或动态部分周期性传输。
而NMPDU 发送的允许或禁止由节点网络管理状态决定,因此所有FlexRay节点的网络管理状态转换必须在通信周期的间隔处执行。
然而,FlexRay总线的通信周期为全局时间,在总线运行过程中会根据部分节点的时间进行实时调整,所以网络管理状态转换不能以内部定时器的方式实现,必须使用计数器的方式配合总线通信周期实现,才能满足所有节点同步转换的要求。
(2)通信调度灵活性FlexRay总线在一个通信周期采用了两种接入时序:静态部分采用时分多址(TDMA, Time Division Multiple Access)的接入时序,动态部分采用柔性时分多址(FTDMA, Flexible TDMA)的接入时序。
FlexRay总线网络管理策略车载网络管理的重要作用是协调网络中的节点同步进入睡眠状态。
此外,车载网络管理还应具备网络监测和诊断、网络配置管理的作用。
FlexRay总线协议是FlexRay联盟(FlexRay Consortium)制定的适用于汽车高速网络的新一代车载总线,具备高传输速率、硬实时、安全性和灵活性的特点。
FlexRay联盟目前只规定了物理层协议和数据链路层协议,没有制定网络管理方面的标准。
FlexRay总线协议特性分析(1)通信机制确定性FlexRay总线采用周期通信的方式,一个通信周期(Communication Cycle)可以划分为静态部分、动态部分、特征窗(SW, Symbol Window)和网络空闲时间(NIT, Network Idle Time)4个部分(图1)。
静态部分和动态部分用来传输总线数据,即FlexRay报文。
特征窗用来发送唤醒特征符(WUS, Wake Up Symbol)和媒介访问检测特征符(MTS, Media Access Test Symbol)。
网络空闲时间用来实现分布式的时钟同步和节点参数的初始化。
FlexRay总线所有节点的通信周期必须保持同步。
图1:FlexRay通信周期示例。
FlexRay节点如果通过发送网络管理协议数据单元(NMPDU,Network Management Protocol Data Unit)进行网络管理,NMPDU可以在静态部分或动态部分周期性传输。
而NMPDU 发送的允许或禁止由节点网络管理状态决定,因此所有FlexRay节点的网络管理状态转换必须在通信周期的间隔处执行。
然而,FlexRay总线的通信周期为全局时间,在总线运行过程中会根据部分节点的时间进行实时调整,所以网络管理状态转换不能以内部定时器的方式实现,必须使用计数器的方式配合总线通信周期实现,才能满足所有节点同步转换的要求。
(2)通信调度灵活性FlexRay总线在一个通信周期采用了两种接入时序:静态部分采用时分多址(TDMA, Time Division Multiple Access)的接入时序,动态部分采用柔性时分多址(FTDMA, Flexible TDMA)的接入时序。
汽车F l e x R a y 网络静态段帧封装机制研究王跃飞1,2张 恒1,2 张亚生1 刘红军11.合肥工业大学,合肥,2300092.安全关键工业测控技术教育部工程研究中心,合肥,230009摘要:在分析F l e x R a y 消息帧格式和帧编码的基础上,推导出静态时隙长度和总线利用率计算公式,分析了影响总线利用率的主要因素;提出帧封装的前提条件,给出了帧有效负载段上下限精确计算方法;在此基础上,以超周期内总线利用率最高为优化目标,建立了解决帧封装问题的整数线性规划模型,并给出求解该模型的启发式算法㊂S A E 实验结果证明该方法不仅能够提高总线利用率,而且可有效缩短算法执行时间㊂关键词:F l e x R a y 总线;静态时隙;总线利用率;帧封装中图分类号:T N 915.04 D O I :10.3969/j.i s s n .1004‐132X.2015.22.007R e s e a r c ho nF r a m eP a c k i n g M e c h a n i s mo f S t a t i c S e g m e n t i nA u t o m o b i l eF l e x R a y Ne t w o r k W a n g Y u ef e i 1,2 Z h a ng H e n g 1,2 Zh a n g Y a s h e n g 1 Li uH o n g ju n 11.H e f e iU n i v e r s i t y o fT e c h n o l o g y,H e f e i ,2300092.E n g i n e e r i n g R e s e a r c hC e n t e r o f S a f e t y Cr i t i c a l I n d u s t r i a lM e a s u r e m e n t a n dC o n t r o l T e c h n o l o g y o fM i n i s t r y ofE d u c a t i o n ,H e f e i ,230009A b s t r a c t :O nt h eb a s i so f a n a l y z i n g F l e x R a y f r a m e f o r m a ta n dc o d i n g,t h ec a l c u l a t i o nf o r m u l ao f t h e l e n gt ho f s t a t i c s l o t a n d b u s u t i l i z a t i o n r a t ew e r e o b t a i n e d ,a n dm a i n f a c t o r s t h a t i n f l u e n c e d b u s u t i l i z a t i o n r a t e w e r e g i v e n .S o m e p r e r e q u i s i t e s o f f r a m e p a c k i n g a n d e x a c t c a l c u l a t i o nm e t h o do f l o w e r a n du p pe r b o u n d s of t h e s i z e o f t h e p a y l o a d s eg m e n tw e r e p r o p o s e d .F i n a l l y ,w i th t h e t a r g e t o f r e a li z i n g h i gh e s t b u s u t i l i z a t i o n r a t e i n s u p e r c y c l e ,t h e i n t e g e r l i n e a r p r o g r a m m i n g m o d e lw a s e s t a b l i s h e d t o s o l v e t h e p r o b l e mo f f r a m e p a c k i n ga n dh e u r i s t i c a l g o r i t h mo f s o l v i n g t h em o d e lw a s g i v e n .T h eA m e r i c a n s o c i t y o f a u t o m o t i v e e n gi n e e r s (S A E )e x p e r i m e n t a l r e s u l t sd e m o n s t r a t e t h ee f f e c t i v e n e s so f t h e p r o po s e d m e t h o d ,w h i c hr a i s e s t h eb u su t i l i z a t i o n r a t e ,a n d r e d u c e s t h e e x e c u t i o n t i m e o f a l go r i t h m.K e y wo r d s :F l e x R a y b u s ;s t a t i c s l o t ;b u s u t i l i z a t i o n r a t e ;f r a m e p a c k i n g 收稿日期:20150430基金项目:国家自然科学基金资助项目(61202096);教育部留学回国人员科研启动基金资助项目([2013]693);中央高校基本科研业务费专项资金资助项目(2013H G C H 0014);安徽省省级高等学校自然科学研究资助项目(K J 2012A 226);江淮汽车技术中心资助项目(W 2014J S K F 0086)0 引言随着人们对汽车安全性㊁舒适性的需求不断增加,现代汽车逐渐向电子化㊁网络化和智能化方向发展,车内电子控制单元(e l e c t r o n i cc o n t r o lu n i t ,E C U )的数量越来越多,E C U 间高速实时的通信需求也越来越大[1‐2]㊂相对于C A N 总线,具有高带宽㊁高容错能力的F l e x R a y 总线更能适应现代汽车的需求,是事实上的下一代汽车总线[3‐4]㊂在F l e x R a y 网络中,信号是以消息帧的形式进行数据传输的㊂因此,帧封装问题成为整个汽车网络设计的关键问题之一㊂目前,国内外学者已经开始对汽车F l e x R a y 网络中帧封装问题进行研究[5‐12]㊂文献[5‐7]对F l e x R a y 静态段帧封装进行了研究,其中,K a n g 等[5]提出将数据长度较大的消息分配到动态段发送,以减少带宽消耗,但未给出该方法的数学模型及算法复杂度;K a n g等[6]提出基于B C MV P S (b a n d w i d t hc o n s u m p -t i o nm i n i m i z i n g w i t hv a r i o u s p e r i o d i c s i gn a l s )的信号封装算法,该算法允许不同周期的信号封装在一起,能够有效地降低带宽消耗,但该方法没有考虑因不同周期的信号封装在一起,造成较大周期的信号多次发送,极大地浪费了带宽㊂文献[8‐9]对F l e x R a y 静态段和动态段帧封装进行了研究,其中S c h m i d t 等[8]建立了解决帧封装问题的整数线性规划模型,但该模型没有考虑通信周期的最大范围,并且在帧封装机制上只允许同周期的信号封装在一起㊂文献[10‐12]对F l e x R a y 静态段优化设计进行了研究,其中,J a n g 等[10]提出优化F l e x R a y 网络参数的两步设计方法,以协议附加载荷和网络空闲浪费最小为目标函数,通过帧封装优化静态时隙长度,通过帧调度优化通信周期长度,但在求解最优静态时隙时,没有考虑静态时隙的精确范围,不能有效地缩短算法执行时间;王跃飞等[11]提出基于最小时间碎片的静态段设计方法,以时间碎片最小为优化目标,在共用时隙的情况下进行信号封装,但没有给出具体的求解算法㊂在以上研究的基础上,本文针对F l e x R a y 网络㊃1203㊃汽车F l e x R a y 网络静态段帧封装机制研究王跃飞 张 恒 张亚生等Copyright ©博看网. All Rights Reserved.静态段,提出总线利用率概念,以超周期内总线利用率最高为优化目标,建立解决帧封装问题的整数线性规划模型,并给出求解该模型的启发式算法㊂1 F l e x R a y 协议1.1 帧格式与帧编码F l e x R a y 消息帧[13]由帧头㊁有效负载数据段和帧尾三部分组成㊂如图1所示,帧头由5个字节(1位保留位㊁1位有效负载预先指示位㊁1位空帧指示位㊁1位同步帧指示位㊁1位启动帧指示位㊁11位帧I D ㊁7位有效负载数据长度㊁11位帧头循环冗余校验(C R C )㊁6位周期计数)组成,有效负载数据段由0~254个字节组成,帧尾由3个字节的帧C R C 组成㊂图1 帧格式与帧编码F l e x R a y 消息帧在传输时需要对其进行编码㊂图1表示传输一个有效负载数据长度为l 个字节的消息帧的编码过程,其中,T S S 表示传输起始序列,F S S 表示帧起始序列,B S S 表示字节起始序列,F E S 表示帧结束序列㊂1.2 媒体访问控制F l e x R a y 总线以通信周期循环的方式传输消息㊂如图2所示,一个通信周期包括静态段(s t a t -i c s e g m e n t ,S S )㊁动态段(d y n a m i c s e gm e n t ,D S )㊁符号窗口(s y m b o lw i n d o w ,S W )和网络空闲时间(n e t w o r k i d l e t i m e ,N I T )四个部分㊂静态段由若干个等长的静态时隙(s t a t i c s l o t )组成,主要用来传输基于时间触发的周期性消息,采用时分多址(t i m e d i v i s i o nm u l t i pl e a c c e s s ,T D MA )媒体访问机制来保证消息传输的确定性;动态段由若干个等长的最小时隙(m i n i s l o t )组成,主要用来传输基于事件触发的偶发性消息,采用柔性时分多址(f l e x i b l eT D MA ,F T D MA )媒体访问机制进行仲裁传输㊂图2 F l e x R a y 通信周期2 总线利用率计算方法2.1 静态时隙长度F l e x R a y 静态段被划分为若干等长的静态时隙,每个消息帧对应唯一的时隙㊂由图1可知,当消息帧在静态段发送时,除了进行帧编码,还需要添加通信空闲分隔符(c o mm u n i c a t i o n i d l ed e l i m -i t e r ,C I D )和行动点偏移量(a c t i o n p o i n to f f s e t,A P O )㊂其中,A P O 在静态时隙开始处,长度为1~63个宏节拍(m a c r o t i c k ,MT )时间㊂设F l e x R a y 网络有n 个节点,通信周期长度为T b u s ,静态段长度为T s s ,静态时隙长度为t s t ,静态时隙数目为N s t ,则T s s =t s t N s t(1)节点i 上的消息帧M (j)i (j =1,2, ,m i )用三元组(B (j )i ,P (j )i ,D (j )i )表示,其中,B (j )i 为消息M (j )i 的有效负载数据位长度,P (j )i 为消息M (j)i 的发送周期,D (j )i 为消息M (j )i 的截止期,m i 为节点i 上消息帧数量㊂设节点i 上的信号S (k )i (k =1,2, ,fi )用三元组(b (k )i ,p (k )i ,d (k )i )表示,其中,b (k )i为信号S (k )i 数据位长度,p (k )i 为信号S (k )i 发送周期,d (k )i 为信号S (k )i 截止期,fi 为节点i 上的信号数目㊂由F l e x R a y 传输协议可知,静态时隙长度t s t必须大于或等于传输最长消息所需的时间㊂则t s t 可由下式求得:t s t =m a x 1≤i ≤n1≤j ≤m ic e i l (gd B i t [(5+B (j)i8+3)㊃(L B S S +8)+δ]+L A P O )(2)其中,c e i l ()为向上取整函数,gd B i t ()为网络中传输一位所用时间函数,B (j)i ㊁δ以位为单位,δ可由下式求得:δ=L T S S +L F S S +L F E S +L C I D(3)其中,L T S S ㊁L F S S ㊁L B S S ㊁L F E S ㊁L C I D ㊁L A P O 分别表示T S S ㊁F S S ㊁B S S ㊁F E S ㊁C I D ㊁A P O 的长度㊂将表1中F l e x R a y 网络参数值代入式(2)㊁式(3),经计算得㊃2203㊃中国机械工程第26卷第22期2015年11月下半月Copyright ©博看网. All Rights Reserved.t s t=B(j)i8+12(4)表1 F l e x R a y网络参数参数值L A P O(MT)1L T S S(b i t)15L F S S(b i t)1L B S S(b i t)2L F E S(b i t)2L C I D(b i t)11传输一位所用时间(μs)0.1一个宏节拍的时间(μs)1波特率(M b i t/s)102.2 总线利用率定义1 总线利用率(b u su t i l i z a t i o nr a t e, B U R)㊂一段时间内,F l e x R a y总线用于传输有效数据所占用的时间与总时间之比为总线利用率,用T B U R表示㊂由于本文只研究静态段帧封装,故总时间只考虑静态段长度㊂定义2 超周期㊂F l e x R a y网络中所有信号发送周期的最小公倍数(l e a s t c o mm o n m u l t i p l e, L C M)为超周期,其长度记为T S P㊂则T S P=L C M(p(1)1,p(2)1, ,p(f1)1,p(1)2,p(2)2, ,p(f2)2, ,p(1)n,p(2)n, ,p(f n)n)(5)式中,L C M()为求最小公倍数函数㊂表2所示为一个F l e x R a y网络信号集合,该网络由3个节点组成,节点1由3个发送周期为2m s的信号组成,节点2由3个发送周期为3m s 和2个发送周期为1m s的信号组成,节点3由3个发送周期为4m s的信号组成,则T S P=L C M(1, 2,3,4)=12m s㊂F l e x R a y网络一个超周期内总线利用率可由下式求得T B U R=g d B i t(∑n i=1∑f i k=1b(k)i T S P p(k)i)c e i l(T S P T b u s)T s s(6)由式(6)可知,在信号参数㊁通信周期已知的情况下,超周期内信号所占用的有效带宽是一定的,总线利用率T B U R与静态段长度T s s成反比,即静态时隙长度t s t与时隙数目N s t的乘积越小,总线利用率越高,即总线上传输有效数据所占用的比例越高,带宽浪费越少㊂表2 F l e x R a y信号集合E C U信号发送周期(m s)截止期(m s)数据位长度(b i t) 112272 122240 132236 243316 253324 263340 271136 281136 394472 3104436 31144323 帧封装帧封装即把节点信号封装成帧的过程㊂由F l e x R a y协议可知,如果每个信号单独作为一帧进行数据传输,由于帧格式及帧编码将会造成很大的带宽浪费,因此,在实际网络中,必须将多个信号封装成帧进行数据传输,而这一过程可以抽象为开放式的装箱问题,即将不同长度的信号作为待装物品,而帧的有效负载段作为承载物品的箱子,箱子的容量即帧负载段长度是可变的㊂如何选取合适的帧负载段长度,使得所有信号封装成帧后的总线利用率最高是解决帧封装问题的关键㊂3.1 帧封装前提条件为了更准确地研究该问题,本文作出如下假设:(1)在F l e x R a y通信系统内没有出现消息发送失败及数据传输错误等故障;(2)F l e x R a y网络中所有信号的发送周期㊁数据位长度㊁截止期是已知的,并且发送周期与截止期相等;(3)所有信号的发送周期都是通信周期T b u s 的整数倍;(4)只有相同E C U的信号才能被封装成一帧,并且每个信号的发送周期必须是帧的发送周期的整数倍㊂由假设(3)可知,通信周期长度T b u s为所有信号发送周期的最大公约数(g r e a t e s t c o mm o nd i-v i s o r,G C D),即T b u s=G C D(p(1)1,p(2)1, ,p(f1)1,p(1)2,p(2)2, ,p(f2)2, ,p(1)n,p(2)n, ,p(f n)n)(7)式中,G C D()为求最大公约数函数㊂由F l e x R a y协议可知,通信周期计数器取值范围是0~63,因此,周期性信号的发送周期不能超过64T b u s㊂㊃3203㊃汽车F l e x R a y网络静态段帧封装机制研究 王跃飞 张 恒 张亚生等Copyright©博看网. All Rights Reserved.由假设(4)可知,本文允许不同周期的信号封装在一起,信号S(k)i封装到帧M(j)i中必须满足:G C D(P(j)i,p(k)i)=P(j)i(8)3.2 帧有效负载段长度上下限帧封装的关键在于帧有效负载段长度的选取㊂设帧有效负载段长度为L p l(以字为单位),由F l e x R a y协议可知,2字≤L p l≤127字,为了更精确地确定L p l上下限,作出如下定义㊂定义3 帧有效负载段长度下限L L p l㊂在每个帧只封装一个信号的情况下,所有信号中数据位长度最大值即为L L p l㊂此时,信号数量即为帧的数量㊂则L L p l=m a x1≤i≤n1≤k≤f ic e i l(b(k)i16)(9)若m a x1≤i≤n1≤k≤f ic e i l(b(k)i16)≤2,则L L p l=2字,所以L L p l=m a x(m a x1≤i≤n1≤k≤f ic e i l(b(k)i16),2)(10)定义4 帧有效负载段长度上限L H p l㊂在每个节点包含的信号各封装成一帧的情况下,节点内所有信号数据位长度之和的最大值即为L H p l㊂此时,节点的数量即为帧的数量㊂则L H p l=m a x1≤i≤nc e i l(∑f i k=1b(k)i16)(11)若m a x1≤i≤nc e i l(∑f i k=1b(k)i16)≥127,则L H p l=127字,所以L H p l=m i n(m a x1≤i≤nc e i l(∑f i k=1b(k)i16),127)(12)如表2所示,F l e x R a y网络所有信号中数据位长度最大的是信号1,则L L p l=c e i l(7216)=5字;同时,每个节点所有信号数据位长度之和最大的是节点2,则L H p l=c e i l(16+24+40+36+3616)= 10字㊂3.3 封装模型的建立设二进制变量矩阵A i=x i(1,1)x i(1,2) x i(1,j) x i(1,m i) x i(2,1)x i(2,2) x i(2,j) x i(2,m i)x i(k,1)x i(k,2) x i(k,j) x i(k,m i)x i(f i,1)x i(f i,2) x i(f i,j) x i(f i,m i éëêêêêêêêêùûúúúúúúúú)其中,A i为节点i上f i×m i的二进制变量矩阵,f i 为节点i上的信号数目,m i为节点i上帧数目的最大值,则m i≤f i㊂二进制变量x i(k,j)=1表示信号S(k)i被封装到帧M(j)i中,x i(k,j)=0表示信号S(k)i没有被封装到帧M(j)i中㊂设矩阵每一列之和为c(j)i,则c(j)i=∑f i k=1x i(k,j)(13) c(j)i=0表示帧M(j)i为空,即没有一个信号被封装到M(j)i中㊂设二进制变量y(j)i=1 c(j)i>00c(j)i={0其中,y(j)i=1表示至少有一个信号被封装到M(j)i 中,y(j)i=0表示帧M(j)i为空㊂设消息封装后,节点i中帧的数目为N i,则N i=∑m i j=1y(j)i(14)静态时隙数目N s t为N s t=∑n i=1N i(15)帧M(j)i的有效负载数据位长度B(j)i为B(j)i=∑f i k=1x i(k,j)b(k)i(16)帧M(j)i的发送周期P(j)i与截止期D(j)i为P(j)i=D(j)i=m i n1≤k≤f i(x i(k,j)p(k)i)(17)根据上述相关内容,建立解决帧封装问题的整数线性规划(I L P)模型:m a x T B U R=g d B i t(∑n i=1∑f i k=1b(k)i㊃T S P p(k)i)c e i l(T S P T b u s)T s s(18) s.t. ∑m i j=1x i(k,j)=1, ∀k=1,2, ,f i(19)∑f i k=1x i(k,j)b(k)i16≤L p l, ∀j=1,2, ,m i(20)L L p l≤L p l≤L H p l(L p l为整数)(21)T s s<T b u s(22)∑f i k=1x i(k,j)f i≤y(j)i≤∑f i k=1x i(k,j),∀j=1,2, ,m i(23)x i(k,j)∈{0,1},∀k=1,2, ,f i,∀j=1,2, ,m i(24)y(j)i∈{0,1},∀j=1,2, ,m i(25)上述帧封装模型以一个超周期内总线利用率最高为优化目标,式(18)为目标函数;式(19)表示信号的唯一性,即每个信号只能封装在一个帧中;式(20)表示封装在一个帧中的信号数据位长度之和不能超过帧有效负载段长度;式(21)为帧有效负载段长度上下限;式(22)表示信号封装后得到的静态段长度要小于通信周期长度㊂其中的㊃4203㊃中国机械工程第26卷第22期2015年11月下半月Copyright©博看网. All Rights Reserved.参数可由式(1)~(5)㊁式(7)㊁式(8)㊁式(10)㊁式(12)㊁式(14)~(17)求得㊂3.4 帧封装启发式算法随着信号和节点数量的不断增多,采用I L P 模型来解决帧封装问题的计算复杂度越来越高㊂为了缩短执行时间,降低算法复杂度,本文提出了基于总线利用率的帧封装启发式算法 首次适应降序算法(f i r s t f i td e c r e a s i n g f r a m i n gp a c k i n g b a s e do nb u su t i l i z a t i o nr a t e,F F D‐F P B U R)㊂图3所示为帧封装算法伪代码,具体步骤如下:(1)获取信号和节点信息,并且将信号按所属节点分类;(2)对于每个节点i,将信号按数据位长度降序排序;(3)计算L L p l和L H p l的值,设帧有效负载段当前值为L C U R p l,并且初始化L C U R p l=L L p l,T B U R=0;(4)对于每个节点i,按照F F D算法进行封装,获得帧集合;(5)通过计算消息最坏响应时间[11]对帧集合进行调度分析(对于可调度性分析,本文不作详细研究,具体可参考文献[11]),如果帧集合可调度,计算当前超周期内总线利用率T C U R B U R的值,如果T B U R<T C U R B U R,则T B U R=T C U R B U R,更新当前帧集合;(6)L C U R p l←L C U R p l+1,重复步骤(4)㊁步骤(5),当L C U R p l=L H p l时结束㊂(7)返回最终帧集合及其对应的最优帧负载段长度L p l㊂1获取节点及节点所对应的信号信息;2将每个节点中的信号按数据位长度大小降序排列;3计算L L p l和L H p l,初始化L C U R p l=L L p l,T B U R=0; 4f o r L C U R p l=L L p l t o L H p l5f o r每个E C U节点6按照F F D算法将每个信号封装到帧中,每帧负载段长度不超过L C U R p l7e n d f o r8对封装结果进行可调度分析;9i f帧集合可调度10计算T C U R B U R;11i f T B U R<T C U R B U R12T B U R=T C U R B U R13更新帧集合;14e n d i f15e n d i f16e n d f o r17r e t u r n最终帧集合及对应的L p l图3 F F D‐F P B U R算法 由图3可知,F F D‐F P B U R算法主要包括两个部分:一部分是对获取的信号进行排序,按照冒泡排序法,该部分的算法时间复杂度为O(n2);另一部分为信号封装,按照F F D算法封装的时间复杂度为O(n l g n),加上外层嵌套的两个f o r循环可以得到该部分总的时间复杂度为O(n3l g n)㊂所以该算法总的时间复杂度为O(n3l g n)㊂4 实验验证为了验证本文建立的帧封装I L P模型的有效性,采用表2数据进行性能评估㊂由式(7)可得,T b u s=G C D(1,2,3,4)=1m s,由2.2节㊁3.2节计算超周期T S P=12m s,帧有效负载段下限L L p l=5字,上限L H p l=10字㊂采用F F D‐F P B U R 算法对信号集合进行封装,最终结果如图4a 所示㊂为进行对比分析,分别采用文献[6]和文献[8]方法对同样的信号集合进行帧封装㊂其中,文献[6]结果与本文方法一致㊂文献[8]结果如图4b所示㊂(a)本文算法封装结果(b)文献[8]封装结果图4 信号封装结果根据以上封装结果得到表3,从表3可以看出:文献[8]得到的总线利用率为15.73%,本文方法与文献[6]得到的结果一致,总线利用率为21.63%,这两种方法与文献[8]相比,在总线利用率上都提高了37.5%㊂但是,本文只需从L L p l=5字到L H p l=10字,而文献[6]需要从L L p l=2字到L H p l=127字,因此,在算法执行效率上,本文明显优于文献[6]㊂同时,本文提出的方法能够精确计算帧有效负载段长度上下限,而文献[6]却无法计算㊂㊃5203㊃汽车F l e x R a y网络静态段帧封装机制研究 王跃飞 张 恒 张亚生等Copyright©博看网. All Rights Reserved.表3 信号封装结果对比对比项本文文献[6]文献[8]帧个数336帧负载段长度(字)10105静态时隙个数336静态时隙长度(μs)323222静态段长度(μs)9696132帧负载段下限(字)522帧负载段上限(字)10127127总线利用率(%)21.6321.6315.73 为了进一步验证当信号数量不断增大时,采用F F D‐F P B U R启发式算法能够有效地缩短帧封装执行时间,本文采用美国汽车工程协会(S A E)的基准数据(表4)进行验证㊂同时,采用MA T L A B2013对3.3节I L P模型进行求解㊂为了增大信号集合,以表4数据为初始数据,采取随机抽取S A E基准数据的方法,将信号添加到初始数据集合中㊂表4 S A E基准数据E C U信号发送周期(m s)截止期(m s)数据长度(b i t)11101016 12101016 1310010016 1410010016 255516 265516 2710010016 385516 391010164105516 4115516 51210010016 5135516 5145516615101016616101016 图5显示了随着信号数量的增加,L L p l与L H p l 值的变化情况㊂从图5可以看出,L L p l为一个固定值,因为L L p l是由所有信号中数据位长度最大值(16b i t s)决定;L H p l是不断增大的,因为随着信号数量的增加,E C U中信号数据位长度之和最大值不断增大㊂为了进行对比,采用文献[6]和文献[8]方法得到的帧有效负载段取值范围为2字≤L p l≤127字㊂这说明采用本文方法能够精确地计算出帧有效负载段取值范围,减少算法的迭代次数,从而缩短算法的执行时间,如图6所示㊂图7为求解I L P模型所用时间T I L P与采用图5 帧有效负载段上下限图6 三种方法执行时间对比F F D‐F P B U R算法所用时间T F F D‐F P B U R比值图㊂从图7中曲线走势可以看出,当信号规模过大时,已经无法通过求解I L P模型得到最优结果,此时,必须采用近似启发式算法求解㊂图7 最优求解与近似求解执行时间比较图8分别为采用求解I L P模型㊁F F D‐F P-B U R算法与文献[6]和文献[8]方法对信号进行图8 总线利用率比较㊃6203㊃中国机械工程第26卷第22期2015年11月下半月Copyright©博看网. All Rights Reserved.封装后的总线利用率㊂从图8中可以看出,采用F F D‐F P B U R算法与求解I L P模型所得结果较为相近,这两种方法都优于文献[6]和文献[8]的方法㊂5 结语本文对F l e x R a y静态段的帧封装方法进行了研究㊂首先引入总线利用率概念,分析影响总线利用率的主要因素;其次,提出帧封装的前提条件,给出帧有效负载段上下限精确计算方法,在此基础上,以超周期内总线利用率最高为优化目标,建立解决帧封装问题的整数线性规划模型,并给出求解该模型的F F D‐F P B U R算法;最后,通过S A E实验证明了本文方法的有效性,即不仅能够提高总线利用率,而且可有效缩短算法执行时间㊂参考文献:[1] 张利,张本宏,王跃飞,等.基于总线占用率的F l e x R a y消息时隙分配方法研究[J].中国机械工程,2012,23(6):699‐703.Z h a n g L i,Z h a n g B e n h o n g,W a n g Y u e f e i,e ta l.R e-s e a r c h o n F l e x R a y M e s s a g e s S l o t D i s t r i b u t i o nM e t h o d sB a s e do nB u s O c c u p a n c y R a t e[J].C h i n aM e c h a n i c a l E n g i n e e r i n g,2012,23(6):699‐703.[2] N a v e t N,S o n g Y e q i o n g,S i m o n o t‐l i o n F,e ta l.T r e n d s i n A u t o m o t i v e C o mm u n i c a t i o n S y s t e m s[J].P r o c e e d i n g so f t h eI E E E,2005,93(6):1204‐1223.[3] 王跃飞,殷健力,张利,等.基于时间约束的汽车F l e x R a y网络动态段参数设计[J].中国机械工程,2014,25(15):2070‐2075.W a n g Y u e f e i,Y i n J i a n l i,Z h a n g L i,e t a l.P a r a m e t e r sD e s i g no fF l e x R a y D y n a m i cS e g m e n tu n d e r T i m eC o n s t r a i n t s[J].C h i n a M e c h a n i c a l E n g i n e e r i n g,2014,25(15):2070‐2075.[4] 王跃飞,王子涵,张利,等.基于改进调度算法的新一代汽车总线及其网关[J].电子测量与仪器学报,2011,25(10):894‐900.W a n g Y u e f e i,W a n g Z i h a n,Z h a n g L i.A N e w G e n e r-a t i o nA u t o m o t i v eB u sa n d R e l a t i v eG a t e w a y B a s e do nI m p r o v e dS c h e d u l i n g A l g o r i t h m[J].J o u r n a lo fE l e c t r o n i c M e a s u r e m e n ta n dI n s t r u m e n t,2011,25(10):894‐900.[5] K a n g M,P a r kK,K i m B.AS t a t i c M e s s a g eS c h e d u-l i n g A l g o r i t h m f o r R e d u c i n g F l e x R a y N e t w o r kU t i l i z a t i o n[C]//I E E EI n t e r n a t i o n a l S y m p o s i u mo nI n d u s t r i a l E l e c t r o n i c s.S e o u l,2009:1287‐1291.[6] K a n g M,P a r kK,M y o n g‐K e eJ.F r a m eP a c k i n g f o rM i n i m i z i n g t h e B a n d w i d t h C o n s u m p t i o n o f t h eF l e x R a y S t a t i cS e g m e n t[J].I E E E T r a n s a c t i o n so nI n d u s t r i a l E l e c t r o n i c s,2013,60(9):4001‐4008.[7] 张建军,于萍,张本宏,等.基于带宽利用率的F l e x R a y静态段研究[J].计算机应用研究,2012,29(12):4974‐4976.Z h a n g J i a n j u n,Y uP i n g,Z h a n g B e n h o n g,e t a l.R e-s e a r c ho nF l e x R a y S t a t i cS e g m e n tB a s e do nB a n d-w i d t hU t i l i z a t i o n[J].A p p l i c a t i o nR e s e a r c ho fC o m-p u t e r s,2012,29(12):4974‐4976.[8] S c h m i d tK,S c h m i d tE G.M e s s a g eS c h e d u l i n g f o rt h eF l e x R a y P r o t o c o l:t h eS t a t i cS e g m e n t[J].I E E ET r a n s a c t i o n so n V e h i c u l a r T e c h n o l o g y,2009,58(5):2170‐2179.[9] S c h m i d tE G,S c h m i d tK.M e s s a g eS c h e d u l i n g f o rt h eF l e x R a y P r o t o c o l:t h e D y n a m i cS e g m e n t[J].I E E E T r a n s a c t i o n s o n V e h i c u l a r T e c h n o l o g y,2009,58(5):2160‐2169.[10] J a n g K,P a r k I,H a n J,e t a l.D e s i g nF r a m e w o r k f o rF l e x R a y N e t w o r kP a r a m e t e rO p t i m i z a t i o n[J].I n-t e r n a t i o n a lJ o u r n a l o f A u t o m o t i v e T e c h n o l o g y,2011,12(4);589‐597.[11] 王跃飞,张纯鹏,张利,等.基于最小时间碎片的汽车F l e x R a y网络设计[J].电子测量与仪器学报,2014,28(3):299‐305.W a n g Y u e f e i,Z h a n g C h u n p e n g,Z h a n g L i,e t a l.D e-s i g no f A u t o m a t i v e F l e x R a y N e t w o r k B a s e d o nM i n i m u m T i m e D e b r i s[J].J o u r n a lo fE l e c t r o n i cM e a s u r e m e n ta n dI n s t r u m e n t,2014,28(3):299‐305.[12] 谢勇,李仁发,阮华斌,等.最优的F l e x R a y静态段配置算法[J].通信学报,2012,11(33):33‐40.X i eY o n g,L iR e n f a,R u a n H u a b i n,e ta l.O p t i m a lC o n f i g u r a t i o n A l g o r i t h m f o r S t a t i c S e g m e n t o fF l e x R a y[J].J o u r n a l o nC o mm u n i c a t i o n s,2012,11(33):33‐40.[13] F l e x R a y C o n s o r t i u m,F l e x R a y P r o t o c o lS p e c i f i c a-t i o nV e r s i o n3.0.1.[E B/O L].[2015‐04‐30].h t t p://w w w.f l e x r a y.c o m.(编辑 王艳丽)作者简介:王跃飞,男,1977年生㊂合肥工业大学机械与汽车工程学院㊁教育部安全关键工业测控技术工程研究中心副教授㊂主要研究方向为汽车网络㊁实时系统㊁网络控制等㊂发表论文20余篇㊂张 恒,男,1987年生㊂合肥工业大学机械与汽车工程学院㊁教育部安全关键工业测控技术工程研究中心硕士研究生㊂张亚生,男,1990年生㊂合肥工业大学机械与汽车工程学院硕士研究生㊂刘红军,男,1990年生㊂合肥工业大学机械与汽车工程学院硕士研究生㊂㊃7203㊃汽车F l e x R a y网络静态段帧封装机制研究 王跃飞 张 恒 张亚生等Copyright©博看网. All Rights Reserved.。