ARINC664传输表模式终端的一种新延时分析方法与流程

文档序号:32785669发布日期:2023-01-03 18:38阅读:46来源:国知局
ARINC664传输表模式终端的一种新延时分析方法与流程
arinc664传输表模式终端的一种新延时分析方法
技术领域
1.本发明涉及arinc664终端的延迟分析方法,特别涉及一种arinc664传输表模式终端的一种新延时分析方法,采用改进的擦除算法进行传输表模式的延迟分析。


背景技术:

2.对于arinc664终端的调度表模式,主要是指对fifo缓存中缓存的数据根据传输表的配置来调度传输。当bag的定时器衰减为0时,会设置bit array队列中的指定数据位,传输表利用这个数据位信息决定该虚拟链路上数据是否可以传输。传输表建立了多个并列的时间窗口盒子,对于每个虚拟链路vl只有满足下面三个条件终端才会传输对应数据:1)vl上有数据,2)满足bag条件,3)传输表允许传输;传输表的优势是使得系统集成人员有能力可以配置终端系统以最小化抖动来传输数据流,但会增加某些应用层数据的等待延迟。
3.假设整个传输表的循环周期为128毫秒,传输表被分割成了逻辑上隔离的时间窗口盒子,每个时间窗口盒宽度为50微秒,如表1所示,vl1每100微秒允许发送一次,vl2每400微秒允许发送一次。
[0004][0005]
表1传输表模式的两轮循环举例
[0006]
注意:在一个bin起始时间作为vl是否具备引入传输队列的判断时间。
[0007]
传输表模式的特点是分配令牌,拿到传输令牌的数据帧允许传输,但是在传输表配置过程中会出现,同个时间段配置多个数据帧的情况,在这种情况下虽然多个数据帧都拿到令牌,但是当前周期到达时,只有一个数据帧传输,其他拿到令牌的数据帧没有传输,随着时间的推演,下一个时间段这些拿到令牌的数据帧不会出现传输,但是在常规的传输表延时计算时,将这些不会发送的数据帧延时也进行计算,这种情况随着时间累计会出现数据帧延时无限大问题。
[0008]
arinc664终端传输表模式传统的延时计算方法是根据数据帧在传输表内的等待时间计算在终端最坏发送延时。这样的计算方法计算出来的延时结果比较大并且在一些情况下可能出现计算延时无限大情况。


技术实现要素:

[0009]
为了压低延时上界,本发明的发明目的在于提供一种arinc664传输表模式终端的一种新延时分析方法,把下一次不会进去发送序列的数据帧进行擦除处理,而不是所有数据帧都进入排队,避免无限增大情况,计算出更优的延时结果。
[0010]
本发明的发明目的通过以下技术方案实现:
[0011]
一种arinc664传输表模式终端的一种新延时分析方法,包含以下步骤:
[0012]
第一步:根据传输表将各vl上的数据帧按调度顺序以两个帧的最短间距在时间轴上进行排列;
[0013]
第二步:将各预留时间tj排列在时间轴上,根据前后点的tj值找出凹点作为时间边界;
[0014]
第三步:选择合适的参数对以预留时间划分的区间进行等分切割,得到擦除时间区间。
[0015]
第四步:将擦除时间区间内排列的单个vl上数据帧进行排布,删除不能发送的排布,得到单个vl的传输表;
[0016]
第五步:将擦除时间区间内各个vl的传输表进行叠加,得到区间稀疏传输表;
[0017]
第六步:在首个大周期内,计算区间内单个稀疏传输表的vli最大延迟、区间内所有传输表中vli最大延迟、所有区间内vli最大延迟。
[0018]
依据上述特征,第一步中,两个帧的最短间距为bag-period。
[0019]
较佳地,第四步具体计算方法如下:
[0020]
计算在擦除时间区间数据帧实际发送的最多数量m和发送许可的最多数量n:
[0021][0022][0023]
其中,t为擦除时间区间的长度;
[0024]
以排列在擦除时间区间中的n个数据帧中保留m个为目标构建出各个可能的排布;
[0025]
对每一个可能的排布做判断删除,删除不能发生的排布。
[0026]
较佳地,以y-x《(c-b)
×
bag-period作为排布的删除判断,若符合则删除;
[0027]
其中x为排布中的某个发送许可bin的起始位置;
[0028]
y为排布中的后一个发送许可bin的起始位置相对x的距离;
[0029]
c和b为在该擦除时间区间内的第几个帧发送。
[0030]
较佳地,第六步:单个稀疏传输表的vli最大延迟为:
[0031][0032]
区间内所有传输表中vli最大延迟为:
[0033]
区间内
[0034]
所有区间内vli最大延迟为:
[0035][0036]
较佳地,若第六步中,最后一个区间的计算不等于0的
情况,以再做一次大周期循环,并以第二轮大循环的得出区间内单个稀疏传输表的vli最大延迟、区间内所有稀疏传输表中vli最大延迟、所有区间内vli最大延迟为最终结果;如果第二轮大周期的结果比第一轮还要大,则直接报错或者放大区间上界。
附图说明
[0037]
图1为基于擦除算法的arinc664终端延迟分析方法的流程示意图。
[0038]
图2为预留时间边界示意图。
[0039]
图3为数据传输曲线f(t)示意图。
[0040]
图4为擦除时间区间内各数据帧排列示意图。
具体实施方式
[0041]
下面结合附图和实施例对本发明作进一步的详细说明。
[0042]
本实施例需要使用到的参数大部分参数在arinc664配置中都是明确的,但存在一些参数(主要是受边界划分影响)是可以依据需求来自由划分的,这里我们对这些参数做出如下定义:
[0043]
1.数据发送时延(该定义依照arinc664协议)定义为下列两个测量点之间的持续时间:
[0044]
发送点——主机分区消息的最后一个bit对于端系统通信服务可用。
[0045]
结束点——对应的以太网帧的最后一个bit被发送到物理介质上。
[0046]
2.数据接收时延(该定义依照arinc664协议)定义为下列两个测量点之间的持续时间:
[0047]
起始点——以太网的最后一个bit在物理介质连接器上被接收;
[0048]
结束点——相关的数据的最后一个bit对于端系统主机分区可用。
[0049]
3.vl发送终端抖动:从完整的输出数据开始接受bag整形开始到最后一个bit输入到介质上。
[0050]
说明:由于vl中发送终端抖动的定义中为最后一个bit输入介质为结束,所以该参数的计算受到最大帧长和最小帧长的影响。
[0051]
4.技术时延(该定义依照arinc664协议):在没有其它任何处理的时候,端系统接受和处理应用数据,并开始发送所需的时间。
[0052]
5.帧延迟(传输性技术时延):完整的帧从第一个bit到最后一个bit传输到物理介质的时间,帧延迟由于每一个vl的最大帧长和最小帧长不同,最大和最小帧延迟也不同。
[0053]smax,i
为vli的最大帧长
[0054]smin,i
为vli的最小帧长
[0055]
6.非传输性技术时延:是技术时延中除了传输性技术时延以外的技术时延。技术
时延=非传输性技术时延+传输性技术时延。非传输性技术时延通常是一个常值,但也不排除特殊情况,所以这里把它定义为一个非固定时间,有最大非传输性技术延迟和最小非传输性技术延迟,其最大值是一个常值参数。
[0056]
7.终端抖动中的技术时延抖动:最大非传输性技术时延-最小非传输性技术时延,是一个常值参数。
[0057]
tips:tx是交换机发给终端,rx终端发给交换机。
[0058]
本实施例所示的一种arinc664传输表模式终端的一种新延时分析方法,由纯软件完成,不需要对终端结构进行更改,这套延时分析方法可以在任何计算机上进行运行使用。传输表是一个xml或者txt配置数据文件。这个文件是算法的输入。从传输表获取参数包括vl配置、subvl配置、com端口配置、传输配置等。
[0059]
如图1所示,包含以下步骤:
[0060]
第一步:计算擦除排布的选择:根据传输表将各vl上的数据帧按调度顺序以两个帧的最短间距在时间轴上进行排列。
[0061]
往前(过去):
[0062]
比如任何一个发送许可如果有vli要发送,如果以该bin(包含vli)起始时间为0点,那么往前则有如下递推:
[0063]
1.该帧的整形完毕时间x为在该0点之前的一个(-periodi×
t
bin
,0】内;
[0064]
2.那么同vl的前一个帧b的最贴近的整形完毕时间在区间(-periodi×
t
bin-bag,-bag】内;
[0065]
3.帧b的在调度器的发送时间在(-periodi×
t
bin-bag,-bag+periodi×
t
bin
】内;
[0066]
4.进而在(-bag+periodi×
t
bin
,0)内不会有帧发送进出口队伍中。
[0067]
往后(未来):
[0068]
任何一个发送许可如果有vli要发送,如果以该bin(包含vli)起始时间为0点,x在(-periodi×
t
bin
,0】内,那么往前后有如下递推:
[0069]
1.下一个帧x+1的整形完毕时间在区间(-periodi×
t
bin
+bag,bag】内;
[0070]
2.那么帧x+1在调度器的发送时间为(-periodi×
t
bin
+bag,bag+periodi×
t
bin
】内;
[0071]
3.(0,bag-periodi×
t
bin
)区间内也不会有vli要发送。
[0072]
总结:往前的结论和往后的结论是等价的,即两个帧的最短间距为bag-period。后面第四步中会在这个基础上进一步给出更完整的距离判断,并依次给出擦除距离引理。
[0073]
第二步:对于每次循环预留时间边界计算:将各预留时间tj排列在时间轴上,根据前后tj的值找出凹点作为时间边界。
[0074]
tj为前一个bin给后续bin的预留时间,参见图2所示,tj在时间区间【0,128ms】上的一个离散函数,该离散函数会有相对连续的变化,我们假定一个好的配置会周期性或阶段性清零或者有一个上升和下降状态。
[0075]
经过第一轮计算得到的tj值,可以得到每一个擦除时间区间的边界点。如果有连续多个j点tj值相同,则取这几个连续j点看作是一个tj值集体(如果没有连续的tj值相同,则该集体就一个j点)。取该集体前一个j点(t

)和后一个j点的tj值(t

)来综合判断,具体计算如下:
[0076]
1.如果t

《tj《t

,说明是上升阶段;
[0077]
2.如果t

》tj》t

,说明是下降阶段;
[0078]
3.如果t

》tj《t

,说明是凹地,取该j点为边界点,如果是该连续多个j点构成的集体,则取的第一个j点为区间边界;
[0079]
4.如果t

《tj》t

,说明是凸地;
[0080]
第三步:以预留时间划分的区间再处理:选择合适的参数对以预留时间划分的区间进行等分切割,得到擦除时间区间。
[0081]
通过凹点划分,我们得到了多个时间区间。假定一个不太差的传输表,不会造成一个大的起伏区间,但这往往是一个理想状况。如果时间区间很大,则可以内部切割,可以通过设定一个常数参数(比如1毫秒,bin为50微妙的话,一个区间最多有20格)为一个区间的最大上界。在实际计算中可以1到5毫秒进行逐步放大,区间越大,计算结果越好,但计算量也就越大。可以选定一个区间相对较大,又能接受计算量的一个参数,这是一个调参的过程。
[0082]
第四步:区间内单个vl擦除排布的构造:将擦除时间区间内排列的单个vl上数据帧进行排布,删除不能发送的排布,得到单个vl的传输表。
[0083]
参见图3的中实线部分描述了数据传输曲线f(t),f(t)在(0,t)时间内的数据最大发送量(该图中的一个帧和第二个帧的距离是符合我们前面计算的擦除长度p=bag-period的)。通过数据传输曲线,可以得到擦除长度引理:
[0084]
任意两个帧发送(真实发送)之间的最小长度y-x≥(c-b)
×
bag-period(c和b为在该擦除时间区间内的第几个帧发送)。
[0085]
擦除排布具体计算方法如下:
[0086]
1.n和m的计算:
[0087]
参见图4所示,对一个擦除时间区间和一个vl来说,如果以vl在原始传输表首个发送许可bin的起始时间为0点,在擦除时间区间【0,t)区间内最多有个数据帧实际发送。
[0088]
而在该擦除时间区间内,原始传输表最多有个发送许可。t越大,m和n越大。
[0089]
2.以排列在擦除时间区间中的n个数据帧中保留m个为目标构建出各个可能的排布(比如9个中保留3个,有个排布可能)。
[0090]
3.对每一个可能的排布做判断删除,删除不能发生的排布。伪代码如下:
[0091][0092][0093]
4.共有f
i,c
个分布可能(i表示vl,c表示区间),一种分布就代表着该vl在该区间的一种新稀疏传输表。
[0094]
说明:看起来很复杂,其实并不复杂,因为区间大小可以调整,m和n都不会很大,从计算量上来讲,是可以承受的。
[0095]
第五步:区间内新传输表的叠加:将擦除时间区间内各个vl的传输表进行叠加,得到区间稀疏传输表
[0096]
我们对每一个区间的每一个vl的传输表都单独计算。同一个区间内,每一个vl拿出一个传输表,则可以叠加出该区间的一个传输表。区间c内公有个叠加传输表,作为区间稀疏传输表集合。
[0097]
第六步:在首个大周期内,计算区间内单个稀疏传输表的vli最大延迟、区间内所有传输表中vli最大延迟、所有区间内vli最大延迟。
[0098]
区间拼接引理:
[0099]
每一个区间首bin的t

=max{前一个区间t

}是任何情况下前面对该区间的最坏影响上界。
[0100]
[0101][0102]
求区间内每一个vl的最大延迟:
[0103][0104]
说明:该伪代码从区间内单个稀疏传输表的vli最大延迟计算,到放大到区间内所有传输表中vli最大延迟,最后放大到所有区间内最大。
[0105]
第七步:两轮大周期循环和调参
[0106]
第六步的伪代码描述了一个大周期,该大周期的第一个区间的t

=0,但是我们仍然要考虑可能最后一个区间的计算不等于0的情况。所以如果该值不为0,我们需要更新再做一次大周期循环。并以第二轮大循环的得出区间内单个稀疏传输表的vli最大延迟、区间内所有稀疏传输表中vli最大延迟、所有区间内vli最大延迟为最终结果。如果第二轮大周期的结果比第一轮还要大,则直接报错或者放大区间上界。
[0107]
可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保
护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1