[发明专利]车载电子总线静态段通讯扩容方法有效

专利信息
申请号: 201010569884.4 申请日: 2010-11-29
公开(公告)号: CN102035706A 公开(公告)日: 2011-04-27
发明(设计)人: 顾宗华;李红;李楠;孙征;杨国青 申请(专利权)人: 浙江大学
主分类号: H04L12/40 分类号: H04L12/40
代理公司: 杭州裕阳专利事务所(普通合伙) 33221 代理人: 江助菊
地址: 310027 浙*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 车载 电子 总线 静态 通讯 扩容 方法
【权利要求书】:

1.一种车载电子总线静态段通讯扩容方法,其特征在于包括以下步骤:

步骤一:构建车载总线系统

对于通过现有拓扑总线相连的多个传感器、ECU和执行器构成的拓扑结构系统,确定ECU的任务和消息的属性和发送接收关系、以及每个任务的最坏情况处理时间和每个信号的大小;

步骤二:实现任务到ECU的映射和分配

将仅发送信号的任务分配到传感器上,将仅接收信号的任务分配到执行器上,其余的任务既要接收信号也要发送信号,将他们分配到各个ECU上;

步骤三:完成每个静态槽的归属,信号到静态槽的映射,任务配置和消息配置的依赖关系

将FlexRay总线特征与约束总结为三个方面,即任务与消息配置约束,FlexRay总线配置约束与数据依赖关系约束,将所述约束规则通过约束规划的函数转化成可以求解的公式,每个任务采用一个三元组<P,C,D>来表示,其中P是任务的周期,C是任务的最坏情况处理时间,而D是其截止期,每个信号也用一个二元组<S,D>来表示,其中S是其位大小,D是其截止期,设任务和信号的周期为FlexRay通讯周期的2n(n=0,1,2……)倍,应用周期H定义为所有任务周期的最小公倍数,用SigSenderi和SigReceiveri来分别表示第i个信号的发送和接收任务,对于一个给定的任务映射,可以得到所有需要在总线上发送的信号集合,称之为OutSignal,对于一个信号signali,若其SigSenderi和SigReceiveri是不同的ECU,则signali属于OutSignal信号集;而信号集InSignal则表示ECU内部通讯的信号,这些信号不需要在总线上进行传输,SignalInEcui用于表示发送signali的ECU的ID,具体的约束规划包括:

a.任务和消息配置

在应用周期H中,每个周期性任务都处理固定次数,ai,k表示任务i的第k个实例的调用时间,fi,k则表示其结束时间,假设初始的任务释放补偿是0,因此ai,k可以通过以下公示计算,其中forall函数用来列举遍历一个集合中的所有元素,Ntask表示任务task的个数:

forall(iinNtask,kinHPi)ai,k=(k-1)×Pi---(1)]]>

用ri,k来表示ai,k和fi,k之间的时间间隔,这也是任务i在周期k中的响应时间,Ri代表任务i的最坏响应时间,也就是ri,k能取到的最大值,

fi,k=ai,k+ri,k    (2)

任务在实时系统中固定优先级配置下的最坏响应时间有以下公式,

在公式(3)中,hp(i)表示比任务i优先级更高的任务集合;

每个静态槽的开始和结束时间必定是静态槽长度的整数倍,用Ssi,k来表示通讯周期k的第i个静态槽的开始时间,

forall(iinNslot,kinHCC)---(4)]]>

Si,ks=(i-1)×Lslot+(k-1)×CC]]>

对于信号i,SigLengthi,k表示时间的时间间隔,其长度等于Lslot,如果消息涉及的任务部署在同一个ECU上,传输不通过总线,就认为其通讯时间为0,否则就需要将消息打包并且通过一个静态槽进行传输,消息将在静态槽的开始时间进行传输,开始时间是静态槽长度的整数倍,其中,startOf函数表示某一段数值间隔的起始数值,mod操作符为求余函数,

forall(iin OutSignal,kinHCC)---(5)]]>

startOf(SigLengthi,k)modLslot==0]]>

b.FlexRay总线配置

EtoSMapi,k代表静态槽k是否归属于ECU i,如果静态槽k归属于ECU i,则EtoSMapi,k为1,否则为0,sum函数为求和函数,

forall(k in Nslot),sum(i in Necu)EtoSMapi,k≤1(6)

forall(k in Necu),sum(i in Nslot)EtoSMapk,i≥1(7)

在FlexRay总线的静态槽中传输的消息包含了从一个ECU发送到另一个ECU的信号,因此打包在这个消息中的信号的总的大小不能超过静态槽的大小,StoSMapi,m,n代表了一个消息是否映射到了周期n的第m个静态槽里,如果存在映射关系则为1,否则为0,

forall(m in Nslot,n in Ncycle)

                                 (8)

sum(i in OutSignal)Si×StoSMapi,m,n≤Bslot

如果OutSignal信号集当中的信号i可以在周期n的静态槽m中进行传输,换言之StoSMapi,m,n值为1,那么静态槽m必须是分配属于信号i的发送任务所在的ECU的,

forall(m inNslot,n inNcycle,i in OutSignal)StoSMapi,m,nEtoSMapSignalInEcui,m---(9)]]>

c.数据依赖关系

数据的传输分为两种,对于ECU之间的情况,信号会打包到消息中,通过总线进行传输,而对于ECU内部的,信号可以不通过总线传输,直接从发送者发给接收者,

endOf函数表示某一段数值间隔的终止数值,当一个任务i要发送消息m给同一个ECU上的另一个任务j,则有

forall(m in InSignal)]]>

endOf(taskSigSenderm)---(10)]]>

startOf(taskSigReceiverm)]]>

当ECU之间通讯,则有,

forall(m in OutSignal)]]>

endOf(taskSigSenderm)]]>

startOf(signalm);---(11)]]>

endOf(signalm)]]>

startOf(taskSigReceiverm)]]>

公式(10)和(11)用于限制周期相同或者不同的发送和接收任务,如果二者周期相同,在每个周期内用以上两个公式,否则,在一个完成的消息传输周期中应用公式;

d.最小化所占用的静态槽

目标函数中的minimize表示最小化约束函数,

minimize sum(i in Necu,j in Nslot)EtoSMapi,j(12)

上述关系式中,BR(Bit Rate),即比特率,有三种选择,2.5MBit/s,5MBit/s和10MBit/s;CC(Cycle Length),即FlexRay周期的长度,这项参数可以配置为一些预订值,例如1000us,5000us,8000us等等;Nchannel是FlexRay总线中物理信道的数量,在本发明中设置为1;Nslot是FlexRay静态段中静态槽的数量,其取值范围是2到1023;Lslot是每个静态槽的长度,其取值可以通过以下计算公式计算得到:Lslot=CC/Nslot;Bslot是一个静态槽中的位大小,它的取值限定了一个静态槽中所能传输的消息的大小;

步骤四:求解

将传感器、ECU和执行器上的任务和总线上的消息数据按照步骤三建立配置系统,并且使用IBM ILOG OPL-CPLEX Analyst Studio Teaching Edition Trial6.3来对约束规划配置进行求解,求出所需的最小静态槽个数。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201010569884.4/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top