CN102148762A - 一种用于CAN-FlexRay网关的混合调度方法 - Google Patents
一种用于CAN-FlexRay网关的混合调度方法 Download PDFInfo
- Publication number
- CN102148762A CN102148762A CN2011101071922A CN201110107192A CN102148762A CN 102148762 A CN102148762 A CN 102148762A CN 2011101071922 A CN2011101071922 A CN 2011101071922A CN 201110107192 A CN201110107192 A CN 201110107192A CN 102148762 A CN102148762 A CN 102148762A
- Authority
- CN
- China
- Prior art keywords
- priority
- time
- information
- queuing
- real
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种用于CAN-FlexRay网关的混合调度方法,以等差EDF调度算法和多阈值的WRR调度算法为基础,通过将两种方法同时应用到CAN-FlexRay网关系统中来实现对缓冲区里数据的管理。等差EDF调度算法用于队内数据的调度,多阈值的WRR调度算法用于队间数据的调度。通过将两种调度算法混合使用可以有效地提高系统的可调度性以及实时性,保证带宽的有效利用。
Description
技术领域
本发明涉及汽车CAN网络与FlexRay网络之间数据传输调度领域,具体为一种用于CAN-FlexRay网关的混合调度方法。
背景技术
随着汽车电子技术的不断发展,现场总线技术被越来越广泛的应用于汽车网络。但是,至今仍没有一个通信网络可以完全满足未来汽车的有关成本和性能的所有要求。CAN总线是当前汽车网络主流的协议,被广泛应用于汽车中所使用的电子控制系统中。FlexRay总线是高速串行的汽车网络,具有带宽高、可靠性高、灵活、实时性强等特点,可以很好地满足现代车载控制系统的强实时需求,可以运用在汽车网络中高可靠性和安全性部分。
FlexRay高速总线作为新兴的通信技术,其通讯的特点表现在以下几个方面:
(1)、带宽方面:FlexRay带宽不受协议机制的限制,每个信道的速度可达10Mbps,当采用双通道冗余系统时,可达20Mbps的速率,远大于CAN总线的通信速率。(2)可靠性方面:FlexRay可采用单、双通道两种模式,并可实现混合配置。(3)、灵活性方面:FlexRay共有3种网络拓扑结构,即总线型、星型和混合型。而每一种类型都有单通道和双通道之分。在星型结构中,还存在联级方式。物理层设备可选用电缆或光缆,同时其通讯数据包括静态段和动态段两种,FlexRay的帧ID是和时隙数对应的,也表示了发送方地址。以上都是FlexRay灵活的通讯机制的表现。(4)实时性方面:FlexRay静态段严格采用基于时间触发的总线访问方式,而动态段可采用有限确定性的灵活时间触发的总线访问方式。FlexRay总线以大约10Mbps的速率支持同步和异步数据传输,它确保数据稳定传输、容错和对信息的反应时间,并以双通道模式提供冗余措施。
可见FlexRay总线能满足现代汽车网络的性能需求,但是当前,FlexRay总线成本较高,在一定的时间里,FlexRay总线无法完全代替CAN总线。因此,对于汽车网络,需要建立CAN-FlexRay网关实现CAN网络与FlexRay网络之间的数据通信,并同时能够满足系统成本和网络性能的双重约束。
CAN-FlexRay网关负责CAN网络和FlexRay网络间的交互和共享,它连接的两种不同的协议,它们的有效载荷、数据率和对实时处理的需求都不一样,网关必须能够有效地处理所有来自这些接口的进出数据。在设计汽车网络网关时需要考虑许多的问题。
CAN与FlexRay有着很大的区别,网关搭建的目的在于实现两种不同总线间信息的通信,CAN与FlexRay在帧的结构与长度有着明显的不同,CAN节点以8位数据包传输信息,而FlexRay节点最多可以传输254个字节的数据。除了信息长度的不同外,信息也有不同的类型(硬实时性信息、软实时性信息和非实时性信息)。
由于FlexRay和CAN数据的结构和长度的不同,因此关键的问题就是每个FlexRay信息中放多少个CAN信息以及延迟时间的问题,对于1 Mb/s的输入CAN速率的系统数据包进入有10Mb/s的FlexRay网络,缓冲足够的数据可能会导致CAN数据出现很大的延迟。因此采用合适的数据帧转换方法和数据调度方法对网关缓冲区的数据进行管理,可以有效的提高系统的有效负载和降低数据在网关的延迟时间,同时可以保证实时数据的传送实时性。
采用合适的数据帧转换方法和数据调度方法对网关缓冲区的数据进行管理成为了网关的关键问题。
发明内容
本发明的目的是提供一种用于CAN-FlexRay网关的混合调度方法,以实现对CAN-FlexRay网关缓冲区的数据调度,降低数据在网关中的延时时间,保证数据传送的实时性要求。
为了达到上述目的,本发明所采用的技术方案为:
一种用于CAN-FlexRay网关的混合调度方法,所述CAN-FlexRay网关中待发送的信息分为非实时性队列信息、软实时性队列信息、硬实时性队列信息三种队列信息,其特征在于:采用等差EDF调度算法和WRR调度算法混合对所述CAN-FlexRay网关中待发送的三种队列信息进行优先级设定,其中优先级高的信息先通过所述CAN-FlexRay网关发送,优先级低的信息后通过所述CAN-FlexRay网关发送;
所述CAN-FlexRay网关中各队列内部采用等差EDF调度算法设定优先级,所述等差EDF调度算法,即时间轴进行等差分配的EDF算法,根据队内信息距离截止期的时间长短分配信息的优先级,距离截止期越近的信息优先级设定越高;
所述CAN-FlexRay网关中三种队列信息之间采用WRR调度算法设定优先级,利用WRR调度算法,计算非实时性队列信息、软实时性队列信息、硬实时性队列信息三种队列信息分别占总发送信息的比例,并分别设定各种队列信息所述比例的上、下阈值;将各种队列信息的比例和其各自对应的上、下阈值进行比较,对于队列信息的比例大于其上阈值情况的队列信息设定优先级高,对于队列信息的比例小于其下阈值情况的队列信息设定优先级低,对于队列信息的比例位于其上、下阈值之间情况的队列信息设定优先级中间;相同情况下均按硬实时性队列信息优先级>软实时性队列信息优先级>非实时性队列信息设定优先级。
所述的一种用于CAN-FlexRay网关的混合调度方法,其特征在于:采用等差EDF调度算法设定队内信息的优先级时,队内信息的优先级是随时间变化的,具体过程为队内信息首先根据距离截止时间的长短决定优先级,当优先级高的队内信息发送时,发送所述优先级高的信息的时候是不允许被打断的,不发送队内信息时,队内信息的优先级仍然根据距截止时间长短来动态调整。
CAN到FlexRay信息发送时的调度处理,信息是具有不同优先级的。信息可以分为三种不同的队列,即非实时性队列、软实时性队列和硬实时性队列。队内为每个队列自身的内部,队间为两种队列之间。非实时性信息对发送时间要求不是很高,硬实时性信息对时间的要求最高,软实时性信息次之。所以发送时应该对要发送的信息进行列队,不同的队列有着不同的优先级,使用不同的方法来处理队内和队间信息发送。
本发明优点为:(1)队内使用等差分段EDF调度算法后,可调度的条件更容易实现,系统的实时性和可调度性得到加强,并且更充分的利用了带宽。(2)队间采用WRR调度算法,其中加入了多阈值用以判断发送信息中各信息所占比例,一方面保证了实时数据不多时总线的有效利用,从而防止了非实时性信息过度冗余;另一方面保证了在实时性信息多的时候可以把更多的实时性数据发送,从而保证可靠性。(3)通过两种方法分别在队内和队间的混合使用,可以大大的提高系统的可调度性,使得系统的实时性得以保证,同时充分利用带宽。
附图说明
图1是本发明中CAN数据帧格式转换成的FlexRay数据帧格式示意图。
图2是本发明中信息调度示意图。
图3是本发明中等差EDF调度算法的时间轴分配。
图4是本发明中权值、动态实时比例及阈值分配示意图。
图5是本发明中多阈值的WRR调度算法详细步骤流程图。
具体实施方式
如图1所示。帧格式的转换,采用多信息帧打包的方法。为了提高发送的效率,选取CAN发送队列里面的前K个信息帧合并存储在FlexRay帧有效数据部分,打包成FlexRay数据帧的形式发送。CAN的信息帧包括CAN数据帧的仲裁场、控制场、数据场信息,最多不超过13个字节,FlexRay的有效数据最多为254个字节,所以K的取值在1-19之间。
如图2所示。对于信息调度,本发明采用了多队列混合调度方法。在队列内部采用等差EDF调度算法,队列之间采用多阈值的WRR调度算法。
如图3所示。在队列内选择采用等差EDF调度算法。即时间段不是按照平均分配,而是按照等差数列分段,不记第零段,即第一段时常U1为 ,第二段U2为2… … 地h段为,但是每段时间内部都包含有相同数目的时间片,设q是一个变量, 但假定1/ q 必定是一个整数,每个片断包含1/ q个最基本的时间单元,另第一个基本时间单元为。
根据等差分区的等差EDF调度算法进行优先级的划分时,量化误差的影响有如下分析。对于第i个信息,有 ,这个时间段内,最基本时间单元为,量化误差影响X设为,且,所以有。
经过推导得知,对于每个信息帧,其量化误差不会大于q。
量化误差对调度性的影响,如果该仲裁中有n个位数用来表示优先级,那么总共可以表示个优先级,且,每个时间段都分成1/x个时间单元。则有下列公式:,其中du为从到的时间片数,由,近似有方程,且有此关系式:,令为G, 最后可得。
假定在一个CAN总线的控制系统中用于表示优先级的位数为8,所有信息相对截至期的变化范围,运用平均分区方法的时候,而运用等差分区的等差EDF调度算法时候。 因此量化误差对等差分区的影响要远小于平均分区的影响。
使用等差分区的等差EDF调度算法后,X变小很多,可调度的条件更容易实现,系统的实时性和可调度性得到加强,并且更充分的利用了带宽。
如图4所示。多阈值的WRR调度算法描述如下,首先设硬实时数据队列的权值为W1,软实时数据队列为W2,非实时性数据队列为W3。设定好各队列的上下阈值分别为X1u、X1d、X2u、X2d、X3u、X3d。在每隔一定时间计算各队列数据占总发送信息总数的比例X1D、X2D、X3D。初始化时,为保证实时信息的发送,W1与W2应尽可能的较W3要大。
如图5所示。基本的WRR方法的描述如下:WRR方法主要有两种,在传输前首先赋予不同队列信息不同的权值Wi(下述为W1、W2、W3分别为硬实时、软实时、非实时数据的权值,有W1>W2>W3)以判定优先级,方法一为对某i队列信息连续发送Wi次,再对下一队列发进行发送;方法二为整体循环式进行发送,在每个循环中一次轮询每一个队列。每个队列服务的次数等于队列的权值。队列如果不为空,则对队列的第一个数据帧进行处理。所有队列处理完后,就开始进行下一轮的循环,将根据队列权重的大小来决定队列的处理与否,如果轮询次数大于或者等于队列的权值,则不对该队列进行服务。(1)在进行数据调度过程中,将求得的动态实时比例与其阈值进行比较。非实时性数据相对较多,而实时性数据比例不多,却占用了较多的资源,该种情况对应X3D>X3u,以及X1D<X1d和X2D<X2d三种情况,为了防止非实时性数据的过度冗余,保证带宽的有效利用,将W3加1,如果实时信息比例达到下限,则将W1或W2减1。(2)非实时性数据相对较少,而实时性数据较多,为了保证系统的可靠性,应当增加实时数据的发送,适当减少非实时性数据所占带宽,该种情况对应X1D<X1d,以及X2D>X2u和X3D>X3u三种情况,为了保障特殊情况下的系统可靠性,应当将W3减1,如果实时信息比例达到上限则将W1或者W2加1。
注:这里应该注意的是在进行加减运算的时候应该保证W1>=W2>=W3>=0,用来保证传输的实时性和正确性。
Claims (2)
1.一种用于CAN-FlexRay网关的混合调度方法,所述CAN-FlexRay网关中待发送的信息分为非实时性队列信息、软实时性队列信息、硬实时性队列信息三种队列信息,其特征在于:采用等差EDF调度算法和WRR调度算法混合对所述CAN-FlexRay网关中待发送的三种队列信息进行优先级设定,其中优先级高的信息先通过所述CAN-FlexRay网关发送,优先级低的信息后通过所述CAN-FlexRay网关发送;
所述CAN-FlexRay网关中各队列内部采用等差EDF调度算法设定优先级,所述等差EDF调度算法,即时间轴进行等差分配的EDF算法,根据队内信息距离截止期的时间长短分配信息的优先级,距离截止期越近的信息优先级设定越高;
所述CAN-FlexRay网关中三种队列信息之间采用WRR调度算法设定优先级,利用WRR调度算法,计算非实时性队列信息、软实时性队列信息、硬实时性队列信息三种队列信息分别占总发送信息的比例,并分别设定各种队列信息所述比例的上、下阈值;将各种队列信息的比例和其各自对应的上、下阈值进行比较,对于队列信息的比例大于其上阈值情况的队列信息设定优先级高,对于队列信息的比例小于其下阈值情况的队列信息设定优先级低,对于队列信息的比例位于其上、下阈值之间情况的队列信息设定优先级中间;相同情况下均按硬实时性队列信息优先级>软实时性队列信息优先级>非实时性队列信息设定优先级。
2.根据权利要求1所述的一种用于CAN-FlexRay网关的混合调度方法,其特征在于:采用等差EDF调度算法设定队内信息的优先级时,队内信息的优先级是随时间变化的,具体过程为队内信息首先根据距离截止时间的长短决定优先级,当优先级高的队内信息发送时,发送所述优先级高的信息的时候是不允许被打断的,不发送队内信息时,队内信息的优先级仍然根据距截止时间长短来动态调整。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101071922A CN102148762A (zh) | 2011-04-28 | 2011-04-28 | 一种用于CAN-FlexRay网关的混合调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011101071922A CN102148762A (zh) | 2011-04-28 | 2011-04-28 | 一种用于CAN-FlexRay网关的混合调度方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102148762A true CN102148762A (zh) | 2011-08-10 |
Family
ID=44422772
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011101071922A Pending CN102148762A (zh) | 2011-04-28 | 2011-04-28 | 一种用于CAN-FlexRay网关的混合调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102148762A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102421161A (zh) * | 2012-01-04 | 2012-04-18 | 北京工商大学 | Epidemic机制下基于优先级的机会网络路由算法 |
CN103618658A (zh) * | 2013-11-29 | 2014-03-05 | 合肥工业大学 | 一种基于时间碎片最小化的汽车FlexRay总线设计方法 |
CN104009940A (zh) * | 2014-05-30 | 2014-08-27 | 长城汽车股份有限公司 | 控制器局域网中的数据调度方法及装置 |
CN104486250A (zh) * | 2014-12-03 | 2015-04-01 | 中国航空工业集团公司第六三一研究所 | 一种面向Deadline满足时间确定性的调度方法 |
CN105515929A (zh) * | 2015-12-01 | 2016-04-20 | 电子科技大学 | FlexRay总线网络数据传输可靠度下限的计算方法 |
CN105915425A (zh) * | 2016-06-16 | 2016-08-31 | 厦门理工学院 | 一种面向车载can fd网络的信号分组打包方法 |
CN108027789A (zh) * | 2015-09-14 | 2018-05-11 | 高通股份有限公司 | 具有多级仲裁的互连件的服务质量 |
CN109167713A (zh) * | 2018-07-19 | 2019-01-08 | 郑州云海信息技术有限公司 | 一种can总线控制网络的混合调度方法 |
CN111510359A (zh) * | 2020-03-23 | 2020-08-07 | 许昌中科森尼瑞技术有限公司 | 一种基于can总线的低时延端对端通讯方法 |
CN116521234A (zh) * | 2023-06-09 | 2023-08-01 | 芯动微电子科技(珠海)有限公司 | 一种处理器管线指令轮询调度的方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US254518A (en) * | 1882-03-07 | Calvin g | ||
US20050254518A1 (en) * | 2004-05-12 | 2005-11-17 | Nec Electronics Corporation | Communication message conversion device, communication method and communication system |
CN101339521A (zh) * | 2008-07-28 | 2009-01-07 | 华中科技大学 | 一种任务优先级动态调度算法 |
-
2011
- 2011-04-28 CN CN2011101071922A patent/CN102148762A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US254518A (en) * | 1882-03-07 | Calvin g | ||
US20050254518A1 (en) * | 2004-05-12 | 2005-11-17 | Nec Electronics Corporation | Communication message conversion device, communication method and communication system |
CN101339521A (zh) * | 2008-07-28 | 2009-01-07 | 华中科技大学 | 一种任务优先级动态调度算法 |
Non-Patent Citations (2)
Title |
---|
李传斌等: "《FlexRay-CAN网关中的多队列消息处理方法》", 《合肥工业大学学报》 * |
王跃飞等: "《CAN消息的动态调度截止期选取研究》", 《合肥工业大学学报》 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102421161B (zh) * | 2012-01-04 | 2015-04-22 | 北京工商大学 | Epidemic机制下基于优先级的机会网络路由算法 |
CN102421161A (zh) * | 2012-01-04 | 2012-04-18 | 北京工商大学 | Epidemic机制下基于优先级的机会网络路由算法 |
CN103618658A (zh) * | 2013-11-29 | 2014-03-05 | 合肥工业大学 | 一种基于时间碎片最小化的汽车FlexRay总线设计方法 |
CN103618658B (zh) * | 2013-11-29 | 2016-08-17 | 合肥工业大学 | 一种基于时间碎片最小化的汽车FlexRay总线设计方法 |
CN104009940B (zh) * | 2014-05-30 | 2017-09-29 | 长城汽车股份有限公司 | 控制器局域网中的数据调度方法及装置 |
CN104009940A (zh) * | 2014-05-30 | 2014-08-27 | 长城汽车股份有限公司 | 控制器局域网中的数据调度方法及装置 |
CN104486250A (zh) * | 2014-12-03 | 2015-04-01 | 中国航空工业集团公司第六三一研究所 | 一种面向Deadline满足时间确定性的调度方法 |
CN108027789A (zh) * | 2015-09-14 | 2018-05-11 | 高通股份有限公司 | 具有多级仲裁的互连件的服务质量 |
CN105515929A (zh) * | 2015-12-01 | 2016-04-20 | 电子科技大学 | FlexRay总线网络数据传输可靠度下限的计算方法 |
CN105515929B (zh) * | 2015-12-01 | 2019-12-10 | 电子科技大学 | FlexRay总线网络数据传输可靠度下限的计算方法 |
CN105915425A (zh) * | 2016-06-16 | 2016-08-31 | 厦门理工学院 | 一种面向车载can fd网络的信号分组打包方法 |
CN109167713A (zh) * | 2018-07-19 | 2019-01-08 | 郑州云海信息技术有限公司 | 一种can总线控制网络的混合调度方法 |
CN111510359A (zh) * | 2020-03-23 | 2020-08-07 | 许昌中科森尼瑞技术有限公司 | 一种基于can总线的低时延端对端通讯方法 |
CN111510359B (zh) * | 2020-03-23 | 2022-03-11 | 许昌中科森尼瑞技术有限公司 | 一种基于can总线的低时延端对端通讯方法 |
CN116521234A (zh) * | 2023-06-09 | 2023-08-01 | 芯动微电子科技(珠海)有限公司 | 一种处理器管线指令轮询调度的方法和装置 |
CN116521234B (zh) * | 2023-06-09 | 2023-12-01 | 芯动微电子科技(珠海)有限公司 | 一种处理器管线指令轮询调度的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102148762A (zh) | 一种用于CAN-FlexRay网关的混合调度方法 | |
CN102014052B (zh) | 一种虚拟动态优先级分组调度方法 | |
JP3454405B2 (ja) | データ通信システムおよびデータ通信方法 | |
CN101621460B (zh) | 一种分组调度方法和装置 | |
CN102238068B (zh) | 一种报文的传输方法和系统 | |
CN109314673B (zh) | 一种客户业务传输方法和装置 | |
JP3306705B2 (ja) | パケット転送制御装置及びそのスケジューリング方法 | |
CN110808920B (zh) | 一种ccsds帧和ip报文共存的卫星通信流量控制方法 | |
CN103841041A (zh) | 一种多流业务并发传输控制方法及装置 | |
CN103596224A (zh) | 一种高速移动环境下基于多级映射的资源调度方法 | |
CN102318312A (zh) | 控制带宽共享 | |
CN101714947A (zh) | 一种可扩展的全流优先级调度方法 | |
CN115473855A (zh) | 网络系统、数据传输方法 | |
CN101562841A (zh) | 业务调度方法、装置和系统 | |
CN100525245C (zh) | 一种用于多业务分组数据调度的装置和方法 | |
CN102904836A (zh) | 多频时分多址接入系统实时业务时隙封装方法 | |
CN101557346B (zh) | 轮询式分组排队输出调度方法及分组交换节点 | |
CN112005528B (zh) | 一种数据交换方法、数据交换节点及数据中心网络 | |
CN103402205A (zh) | 一种无线树状网接入控制方法及网络节点设备 | |
US20120275412A1 (en) | Method of multi-carrier communication | |
CN101854622A (zh) | 一种高速上行分组接入终端及其数据传输方法 | |
CN109218217A (zh) | 一种负荷分担方法、装置、路由设备及存储介质 | |
CN104022966B (zh) | 基于NC的PON中保障QoS的ONU内部调度方法 | |
CN111194056A (zh) | 数据分组的封装 | |
CN102594670B (zh) | 多端口多流的调度方法、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110810 |