CN103544065B - 一种arinc653标准下的航电系统分区窗口调度方法 - Google Patents
一种arinc653标准下的航电系统分区窗口调度方法 Download PDFInfo
- Publication number
- CN103544065B CN103544065B CN201310542756.4A CN201310542756A CN103544065B CN 103544065 B CN103544065 B CN 103544065B CN 201310542756 A CN201310542756 A CN 201310542756A CN 103544065 B CN103544065 B CN 103544065B
- Authority
- CN
- China
- Prior art keywords
- subregion
- partition
- cycle
- time
- window
- 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.)
- Active
Links
Landscapes
- Small-Scale Networks (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明属于嵌入式时空分区技术,涉及一种ARINC653标准下的航电系统分区窗口调度方法。通过计算基准时间片Tp,以基准时间片为单位积木式拼接分区的执行窗口时间、主时间框架调度时间、系统空闲时间。分区周期、主时间框架均为基准时间片的整数倍,将分区因周期的不同要求而产生的调度排序问题得到简化。通过该方法每个分区的周期释放点均能落在本分区的时间窗口上。设计了两种分区调度中的周期控制模式以适用于不同类型的嵌入式系统:功能分区控制模式和IO分区进行控制模式。
Description
技术领域
本发明属于嵌入式时空分区技术,涉及一种ARINC653标准下的航电系统分区窗口调度方法。
背景技术
针对新型飞机航空电子系统可移植、可重用、高可靠的需要,美国航电委员会于1997年针对新一代飞机数据综合化提出的应用程序接口标准——Arinc653。Arinc653规范中定义了应用程序和操作系统隔离,提出时间隔离、空间分区的概念。我国在2005年提出的GJB5357-2005标准中对这一概念也作出了相关定义。
ARINC653操作系统通过内存管理,给每个单独的应用分区划分一块独享的内存空间,通过软件配置可以调节虚拟内存大小、动态内存总大小。分区的运行空间不会被其他分区所干扰。采用时间调度表的方式调度多分区运行。设定一个总的调度表主时间轴大小,用户可以将时间轴划分多个任意子时间窗口分配给应用分区运行。分区在自己的时间窗口内独享CPU的所有资源,当分区的时间窗口终止时,操作系统将强行将资源切换给调度表中的下一分区。
时分设计的CPU资源划分,使得计算机应用软件的某一子系统故障将不会蔓延到其它系统。CPU资源在时间空间上不会进入某一故障的死锁状态。这种时分设计给系统安全带来了提升。
对于多任务多功能的复杂系统,系统需求、安全等级、周期以及优先级各不相同,如何给出一个合理可靠的分区划分、分区排序、窗口分配、调度顺序,是系统设计能否成功的关键。对于工程应用而言,目前还没有一套关于多分区操作系统时间片调度设计的完整方法。
发明内容
本发明的目的是提出一种对于多任务多功能的复杂系统、系统需求、安全等级、周期以及优先级各不相同的情况下,如何给出一个合理可靠的分区划分、分区排序、窗口分配、调度顺序的在ARINC653标准下的航电系统分区窗口调度方法。
本发明的技术解决方案
窗口调度的假设条件:
(1)完成分区任务划分后进行,适用于分区划分个数在2~20个之内;
(2)分区划分具有唯一独立IO分区,分区中只有IO分区具有对设备外的总线通讯权限,其他分区为功能分区,仅具有离散量通讯权限;
(3)分区划分运算量均衡,针对于特定性能CPU,最大分区任务运算量不大于最小分区任务运算量10倍;
(4)嵌入式系统分区周期定义为毫秒级别,分区任务周期定义为5ms的整数倍;
(5)分区调度周期大于设备CPU处理周期10倍以上;
(6)分区间通讯采用端口通讯方式,支持采样端口或者队列端口;
采用单位时间片Tp方法,将主时间框架、各分区运行窗口、系统空闲时间窗口以单位时间片Tp的整数倍进行排列,最终得到调度顺序。调度工作流程如下:
步骤1:针对机载计算机CPU计算能力,按照各分区分配功能,估算系统分区1、分区2…、分区n运行开销时间为t1、t2、t3…tn;
步骤2。设航电系统对分区运行余量要求为q%,分区时间窗口(i=1,2,…n)计算各分区的窗口时间为Tw1、Tw2…Twn;
步骤3:各分区取整后的窗口时间为Tw1、Tw2…Twn,设分区的任务周期包含P1、P2、P3…Pm共m种不同周期,其中Pi<=Pj(j>i,j=1,2,…m),由上述假设条件(4)P1、P2、P3…Pm为5ms的整倍数,取P1、P2、P3…Pm、Tw1、Tw2…Twn的最大公约数为基准时间片Tp;
步骤4:IO分区负责各分区的数据对外通讯,IO分区周期为所有周期的最小值min(Pi)(i=1,2,…m)。定义主时间框架为Ts,所有分区时间窗口在Ts上进行排列,分区运行从Ts起始运行,逐步运行完所有分区以及系统空闲后到达Ts末端,到达Ts末端后,系统再次从Ts起始循环运行;
步骤5:定义所有任务周期P1、P2、P3…Pm的公约数和公倍数集合Vt,定义任一周期Pi,满足(1)对于任意小于Pi的周期Pj(j=1,2,…i),Pi是Pj(j=1,2,…i公倍数,(2)对于任意大于Pi的周期Pk(k=i,i+1,…m),Pi是Pk(k=i,i+1,…m)公约数;定义所有Pi的集合为Vp,取集合V=Vt∪Vp;
步骤6:设航电系统运行时间余量为p%,分区i的最小周期为Pmi,取为调度表中应用运行总时间;计算为系统调度表最小安全门限;
步骤7:计算航电系统主时间框架为Ts,Ts为满足如下要求的最小值:(1)Ts∈V;(2)Ts应不小于最小安全门限;
步骤8:将主时间框架以Tp为基准时间片进行分割,各个分区以计算后的窗口时间Tw1、Tw2…Twn依次排列于主时间框架之上,主时间框架剩余部分设定为航电系统空闲时间;
步骤9:根据分区1、分区2,分区3…分区n的相互依存关系,以及通讯密集程度将分区1到分区n进行排序;排序原则为:(1)具有生产顺序的相关分区,根据生产的前后顺序排列;(2)对具有系统启动需求的分区设计在调度表最前;(3)数据交互较多的分区相近排列;
(4)在IO分区窗口之间根据均衡分布剩余分区窗口;(5)对于具有任务周期Pmi小于主时间框架Ts的分区i(i=1,2,…n),在调度表中出现[Tw÷Pmi]次,每次相距时间为Pmi,伴随每次分区i出现之间,至少安排一次IO分区出现;(6)IO分区出现次数为[Tw÷min(Pi)](i=1,2,…n),间隔周期为所有周期的最小值min(Pi)(i=1,2,…n);(7)将分区排序后主时间框架上剩余未分配的时间窗口设定为系统空闲窗口;
步骤10:选择分区调度表周期控制方式,周期控制方式为如下之一:
(1)功能分区控制
功能分区控制周期定义为:由功能分区进行周期控制,即功能分区将输出数据根据不同的周期Pi建立不同的周期任务i,由这些周期任务将数据按照周期Pi交给IO分区,IO分区负责接收到数据立即发送设备外部;
(2)IO分区周期控制
IO分区进行周期控制定义为:IO分区负责控制周期,在IO分区中实现P1、P2、P3…Pm等周期任务,各功能分区根据自身的周期需求P1、P2…Pi建立与IO分区的通讯端口1、端口2…端口i。各功能分区在本分区窗口运行结束时刻,将本分区所有周期Pi的发送数据发送给IO分区的相对应周期端口i上,IO分区以周期Pi去获取各分区传递在分区间端口i上的周期消息,组织数据传输;
步骤11:若选择IO分区进行周期控制方式,将IO分区的多个周期控制分散到调度表的多个IO分区中,将周期P1、P2…Pn进行分组,将不同Pi组的周期发送任务分散到不同的IO分区窗口释放,平衡总线负载;若经步骤9计算主时间框架上IO分区仅出现1次,则本条步骤不适用。
本发明的优点和积极效果:
通过计算基准时间片Tp,以基准时间片为单位积木式拼接分区的执行窗口时间、主时间框架调度时间、系统空闲时间。分区周期、主时间框架均为基准时间片的整数倍,将分区因周期的不同要求而产生的调度排序问题得到简化。通过该方法每个分区的周期释放点均能落在本分区的时间窗口上。设计了两种分区调度中的周期控制模式以适用于不同类型的嵌入式系统:功能分区控制模式和IO分区进行控制模式。
对于多任务、多周期、多分区的高可靠性ARINC653嵌入式系统,系统需求、安全等级、周期以及优先级各不相同,一种ARINC653标准下的分区窗口调度方法给出一个合理可靠的分区排序、窗口分配、调度顺序和周期控制的方法;通过该方法设计出的分区运行调度表具有满足周期需求、可靠性高、负载均衡、系统损耗小、易操作等特点。
附图说明
图1是本发明基准时间片的设计方法示意图;
图2是本发明由IO分区进行周期控制示意图;
图3是本发明由功能分区进行周期控制示意图;
图4是本发明排列分区与系统余量IDLE示意图;
图5是本发明IO以最小时间周期(1/2Ts)在主时间框架(Ts)中出校多次示意图;
图6是本发明分区顺序排列示意图;
图7是本发明IO分区控制周期模式下总线负载示意图;
图8是本发明经过多IO分区任务均衡后的总线负载示意图;
图9是本发明实施例计算Ts后的分区排列示意图;
图10是本发明实施例最终的分区调度方案示意图。
具体实施方式
下面对本发明作进一步详细说明。
1.本发明针对于软件架构为基于ARINC653操作系统的多分区平台软件结构、各个分区以事先安排好的时间片调度下,相对独立的实现各自的功能。
2.此外各系统分区间有信号需求,如系统逻辑输入、系统条件、转发信号等。分区与分区之间开辟信息传输通道。软件分区之间的通讯机制主要为port端口通讯,这类通讯模式包括采样方式和队列方式两种,在软件分区建立时设置。
3.针对一般嵌入式系统设计提出的分区时间窗口设计,工程中一般约定:
a)根据系统划分了若干应用分区,分区个数应在2个到20个分区之间,以适用绝大部分嵌入式系统设计;
b)分区划分具有独立的IO分区,IO分区定义为该系统与外部进行主要通讯的唯一接口分区,而其他分区为功能处理分区,接收由IO分区派发的数据,经处理再提交给IO分区进行设备外部发送;
c)分区运算量均衡,即最大分区不宜大于最小分区运算量10倍,均值适中,方差较小;
d)工程应用中,嵌入式系统周期大多定义为毫秒级周期,定义功能分区的周期需求均为5ms周期的整倍数;
e)根据系统设计原则,相对于设备CPU处理能力下,周期任务周期应至少大于周期任务CPU执行时间10倍以上。
4.基准时间片设计
如图1,根据系统需求进行多分区任务划分,由工程约定知分区任务量划分一般相对均衡,最大分区与最先分区任务量不超过10倍,因此划分好的N各分区的CPU执行时间也应相对均衡,在同一量级上,为了灵活的安排分区窗口设计,采用积木化单位时间片的方法进行设计,即通过单位基准时间片来堆积主时间框架和分区时间窗口,这样方便对分区周期任务、调度任务释放点的把握。即取分区1、分区2…、分区N的估算CPU运行时间t1、t2…tn,加上系统CPU运行余量后的向上取整。一般工程嵌入式周期要求大多为5的整倍数,如周期需求为50ms、100ms、200ms、500ms、1s,10s等周期。因此向上取整一般为向5ms的整倍数取整。如分区1所需(某型CPU)任务计算量估算时间为2.1ms,系统余量为30%,则取整后的周期为[2.1*130%]=5ms。
各分区取整后的运行时间为T1、T2…Tn,取T1、T2…Tn运行时间以及各分区周期需求P1、P2、P3…Pm的最大公约数为Tp,定义为基准时间片。该时间片是分区窗口设计的基准时间片,各分区窗口、系统空闲时间窗口、调度表主时间窗口应均为该Tp的整数倍,如图1所示。主时间框架、分区1时间窗口、分区2时间窗口均为基准时间片的若干整数倍;分区1到分区1再一次执行时间间隔为分区1内的周期任务周期,此周期同样为基准时间片的整数倍;IO分区和系统空闲时间作为必须的时间窗口同样可以以基准时间片的整数倍表达;对与具有周期小于主时间框架的分区1,可以安排分区1在主时间框架中出现多次,来满足小周期需求。
5.周期控制
各功能分区(非IO分区)的输出数据需要遵循系统周期需求,因此对于一定周期的输出数据,需要满足时序要求进行数据输出,如分区1的周期任务主要有P1、P2、P3三种,其中P1、P2、P3应是Tp基准时间片的整数倍。由于分区划分原则,所有分区数据输出均通过为IO分区进行,因此为了满足分区1的周期需求,分区1和IO分区必须满足P1、P2、P3所对应周期。要求在分区1窗口执行完毕后,在调度表中经过P1、P2、P3周期后,调度顺序依然处于分区1的时间窗口中;分区1和IO分区必须相伴出现,以保证IO分区即时将分区1运算完毕的数据按照周期进行输出;对于周期控制主要有两种方式:一种为功能分区控制周期,另一种为统一由IO分区进行周期控制。
6.IO分区周期控制方式
该方式由IO分区进行周期控制,IO分区负责控制周期,在IO分区中实现P1、P2、P3…Pn等周期任务,根据周期去获取各分区传递在分区间端口port上的周期消息,并组织数据传输。如分区1有P1、P2、P3三种周期发送类型,则分区1将P1、P2、P3三个发送数据包以分区1最快周期发送给IO分区;发送时,不同周期采用不同的采样端口,同时在端口中设置相应的周期标志;IO分区在接收到分区1端口数据时,选择相应的周期任务进行周期发送。IO分区分别采用P1发送任务、P2发送任务、P3发送任务来处理三个采样端口上的待发送数据。如图2所示。这种周期控制的优点是:(1)总线分区便于进行数据综合;(2)功能分区实现简单;(3)分区切换相对较少。这种周期控制的缺点是:(1)总线负载时间不均衡;(2)IO分区设计相对复杂;(3)CPU资源要求高。该方式适用于周期较为复杂,CPU运行资源宽松的大中型系统中。
7.功能分区控制
由功能分区进行周期控制,即各功能分区将输出数据根据不同的周期建立不同的周期任务,由这些不同的周期任务将周期数据按照需求交给IO分区,IO分区只负责接收到数据立即发送外部总线即可。如分区1有P1、P2、P3三种周期发送类型,则分区1将建立P1、P2、P3三个发送任务分别处理这三种周期发送。在分区1窗口之后需要安排IO分区窗口以便实时发送。如图3所示。这种周期控制的优点是:(1)IO分区设计简单;(2)总线负载均衡;这种周期控制的缺点是:(1)对于来源不同分区的综合数据包IO分区难以进行数据综合;(2)实时性要求更高,分区切换频繁。该方式适用于周期较为简单,CPU运行资源紧张的小型系统中。如图3所示。
8.系统余量
按照ARINC653规范开发的实时操作系统,由域组成操作系统结构。系统中的运行内核CoreOS、分区、共享库都是以域的方式存在。包含CoreOS的域是核心域,CoreOS控制整个系统,运行在特权态,它创建分区,管理分区的调度、分区间的通信,管理系统资源,监视分区和系统的健康。应用运行在应用分区中,每个应用分区包含一个分区核OS。在分区核OS运行时,CoreOS在后台作系统服务,调度分区,并监控分区的运行状态。因此在调度表中除了给应用分区安排足够的时间窗口外,还要有相应的空余窗口“IDLE”,即必须留一定空窗口给系统OS,用于完成整个工程的系统后台服务,为了保证系统安全,这个空窗口应为2~5倍Tp基准时间片。除操作系统必须的空闲开销外,考虑到嵌入式软件安全要求,CPU的安全工作余量一般要求20%~50%以上,调度表还须预留一定的空余窗口IDLE满足系统余量。如图4所示。
9.小周期的IO分区与功能分区的要求
如图5所示,分区2数据发送任务有1/2Ts周期发送要求,相对于Ts的主时间框架,分区2与IO分区需在调度表中出现两次,间隔必须满足1/2Ts要求。因此设计分区2与IO分区窗口相邻,与另一对分区2与IO分区窗口相距1/2Ts时间,其余空闲基准时间片用于安排其他分区窗口。因此在对于有较快周期需求的功能分区与IO分区而言,可以在调度表中安排多次出现,以满足小周期需求。
10.分区顺序与窗口大小
调度表中分区的安排顺序和窗口大小接将根据实际需求而定,例如系统中维护分区为系统初始化的第一个分区,需要完成从初始化的参数状态,同时判断是否进入维护模式,因此将维护分区放在调度表中第一个启动窗口,IO分区作为基础的通讯服务分区,将跟随维护分区进行输入输出操作因此将IO分区排在维护分区之后,其他功能分区无特殊要求将根据执行时间开销在剩余时间片中排列。原则上相邻分区具有较多数据关联的应相邻排列,以保证数据的即时传递;IO分区应均衡分布在调度表中,每一个IO分区时间窗口均是数据输入输出窗口,功能分区窗口出现顺序必须满足自身周期任务的要求,由紧随其后而来的第一个IO分区完成对外数据发送。因此IO分区周期必须满足所有功能分区任务周期P1、P2、P3…Pm的最小值。功能分区窗口的大小根据估算分区任务量的CPU运行时间加上分区运行安全余量而得,通过向上取整,换算为多干单位的基准时间片长度,较大的系统分区窗口分配多个基准时间片;如图6所示,分区4、分区7分配了2个Tp窗口。
11.总线的负载均衡
选择周期控制方式为IO分区控制模式,数据发送总是集中在IO分区执行时间片后一段时间,这将导致总线负载集中加大,由于IO分区是设备嵌入式软件唯一对外的输入输出服务分区,所以对于功能分区执行时间段,总线输出负载将较小,这种总线负载的不均衡将增加总线传输的风险。如图7所示。
为解决这一矛盾,在主时间框架中分割IO分区时间窗口为若干部分,均匀分布在主时间框架上,窗口大小依然保持以Tp为单位,将IO分区的不同周期发送任务控制分散到多个IO分区中,将周期分为P1、P2一组、P3、P4为另一组,P1、P2发送数据与P3、P4发送数据通过不同的IO分区窗口释放,这样可以有效地平衡总线负载。如图8所示。
实施例
飞机的机电系统任务周期需求为50ms、100ms、200ms、500ms、1s五种类型周期,经设计人员系统需求分析后,将机电系统软件需求划分为:起落架分区、液压分区、燃油分区、环控分区、供电分区、照明分区以及IO分区供7个分区。每个分区的周期需求为:
起落架分区:50ms、100ms、200ms、500ms;
液压分区:100ms、200ms、500ms、1s;
燃油分区:100ms、200ms、500ms;
环控分区:100ms、200ms、500ms;
供电分区:100ms、200ms、500ms;
照明分区:100ms、200ms、500ms、1s;
机电核心处理计算机CPU选用PowerPC755,主频为266Mhz,针对该型CPU对各分区的功能软件运算规模进行测试,得到分区运行开销分别为:起落架分区2.3ms、液压分区1.6ms、燃油分区4.8ms、环控分区2.1ms、供电分区1.8ms、照明分区0.9ms、IO分区2.9ms。根据飞机安全性要求分区运行余量要求为40%,CPU系统运行时间余量要求为30%。
按照本发明步骤2计算各分区的窗口执行时间为:起落架分区为5ms、液压分区为5ms、燃油分区为10ms、环控分区为5ms、供电分区为5ms、照明分区为5ms、IO分区为5ms。
按照步骤3计算出基准时间片Tp=5ms;
按照步骤4并确定IO分区周期为50ms;
按照步骤5计算出满足V集合的周期包括V={50ms、100ms、500ms、1s};
按照步骤6计算出调度表最小安全门限为Ts=50ms时最小安全门限为80ms;Ts=100ms时最小安全门限为71ms;
按照步骤7从V集合中选出大于或等于最小安全门限值的最小值为Ts=100ms;
按照步骤8将主时间框架以Tp为基准时间片分割,各个分区窗口时间依次排列于主时间框架之上,如图9所示;
按照步骤9根据起落架分区、液压分区、燃油分区、环控分区、供电分区、照明分区的相互依存关系,以及通讯密集程度进行排序;其中供电分区负责系统启动供电任务应最先启动,所以排列于主时间框架第一个Tp上,IO分区负责供电分区数据输出排列于第二个Tp上;IO分区、起落架分区周期为50ms,在主时间框架中出现两次,每次间隔50ms;其中照明分区、环控分区、液压分区数据交互较多,具有先后顺序,因此将环控分区、照明分区、液压分区顺序排列;燃油分区与其他分区数据交互较少,为了平衡IO分区窗口之间的数据运算量,将其排列于第二个IO分区之后;主时间框架剩余时间窗口为系统空闲时间;排序后的调度表如图10所示;
按照步骤10,由于本系统运算量较大、分区个数较多、周期复杂,采用功能分区IO分区控制方式进行周期控制;
按照步骤11,将系统周期任务以50ms、100ms为一组在第一个IO分区窗口释放周期;50ms、200ms、500ms、1s为一组在第二个IO分区窗口释放周期,如此可以平衡总线输出负载。
Claims (1)
1.一种ARINC653标准下的航电系统分区窗口调度方法,其特征是,窗口调度的假设条件:
(1)完成分区任务划分后进行,适用于分区划分个数在2至20个之内;
(2)分区划分具有唯一独立IO分区,分区中只有IO分区具有对设备外的总线通讯权限,其他分区为功能分区,仅具有离散量通讯权限;
(3)分区划分运算量均衡,针对于特定性能CPU,最大分区不大于最小分区任务运算量10倍;
(4)嵌入式系统分区周期定义为毫秒级别,分区任务周期定义为5ms的整数倍;
(5)分区调度周期大于设备CPU处理周期10倍以上;
(6)分区间通讯采用端口通讯方式,支持采样端口或者队列端口;
采用单位时间片Tp方法,将主时间框架Ts、各分区运行窗口Tw、系统空闲时间窗口Idle以单位时间片Tp的整数倍进行排列,最终得到调度顺序;调度工作流程如下:
步骤1:针对机载计算机CPU计算能力,按照各分区分配功能,估算系统分区1、分区2…、分区n运行开销时间为t1、t2…、tn;
步骤2:设航电系统对分区运行余量要求为q%,分区时间窗口(i=1,2,…n)计算各分区的窗口时间为Tw1、Tw2…Twn;
步骤3:各分区取整后的窗口时间为Tw1、Tw2…Twn,设分区的任务周期包含P1、P2、P3…Pm共m种不同周期,其中Pi<=Pj(j>i,j=1,2,…m),由上述假设条件(4)P1、P2、P3…Pm为5ms的整倍数,取P1、P2、P3…Pm、Tw1、Tw2…Twn的最大公约数为基准时间片Tp;
步骤4:IO分区负责各分区的数据对外通讯,IO分区周期为所有周期的最小值min(Pi)(i=1,2,…m),定义主时间框架为Ts,所有分区时间窗口在Ts上进行排列,分区运行从Ts起始运行,逐步运行完所有分区以及系统空闲后到达Ts末端,到达Ts末端后,系统再次从Ts起始循环运行;
步骤5:定义所有任务周期P1、P2、P3…Pm的公约数和公倍数集合Vt,定义任一周期Px,满足(1)对于任意小于Px的周期Py(y=1,2,…x),Px是Py(y=1,2,…x)公倍数,(2)对于任意大于Px的周期Pk(k=x,x+1,…m),Px是Pk(k=x,x+1,…m)公约数;定义所有Px的集合为Vp,取集合V=Vt∪Vp;
步骤6:设航电系统运行时间余量为p%,分区i的最小周期为Pmi,取为调度表中应用运行总时间;计算为系统调度表最小安全门限;
步骤7:计算航电系统主时间框架为Ts,Ts为满足如下要求的最小值:(1)Ts∈V;(2)Ts应不小于最小安全门限;
步骤8:将主时间框架以Tp为基准时间片进行分割,各个分区以计算后的窗口时间Tw1、Tw2…Twn依次排列于主时间框架之上,主时间框架剩余部分设定为航电系统空闲时间;
步骤9:根据分区1、分区2,分区3…分区n的相互依存关系,以及通讯密集程度将分区1到分区n进行排序;排序原则为:(1)具有生产顺序的相关分区,根据生产的前后顺序排列;(2)对具有系统启动需求的分区设计在调度表最前;(3)数据交互较多的分区相近排列;
(4)在IO分区窗口之间根据均衡分布剩余分区窗口;(5)对于具有任务周期Pmi小于主时间框架Ts的分区i(i=1,2,…n),在调度表中出现[Tw÷Pmi]次,每次相距时间为Pmi,伴随每次分区i出现之间,至少安排一次IO分区出现;(6)IO分区出现次数为[Tw÷min(Pi)](i=1,2,…n),间隔周期为所有周期的最小值min(Pi)(i=1,2,…n);(7)将分区排序后主时间框架上剩余未分配的时间窗口设定为系统空闲窗口;
步骤10:选择分区调度表周期控制方式,周期控制方式为如下之一:
(1)功能分区控制
功能分区控制周期定义为:由功能分区进行周期控制,即功能分区将输出数据根据不同的周期Pi建立不同的周期任务i,由这些周期任务将数据按照周期Pi交给IO分区,IO分区负责接收到数据立即发送设备外部;
(2)IO分区周期控制
IO分区进行周期控制定义为:IO分区负责控制周期,在IO分区中实现P1、P2、P3…Pm等周期任务,各功能分区根据自身的周期需求P1、P2…Pi建立与IO分区的通讯端口1、端口2…端口i,各功能分区在本分区窗口运行结束时刻,将本分区所有周期Pi的发送数据发送给IO分区的相对应周期端口i上,IO分区以周期Pi去获取各分区传递在分区间端口i上的周期消息,组织数据传输;
步骤11:若选择IO分区进行周期控制方式,将IO分区的多个周期控制分散到调度表的多个IO分区中,将周期P1、P2…Pn进行分组,将不同Pi组的周期发送任务分散到不同的IO分区窗口释放,平衡总线负载;若经步骤9计算主时间框架上IO分区仅出现1次,则本条步骤不适用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310542756.4A CN103544065B (zh) | 2013-11-05 | 2013-11-05 | 一种arinc653标准下的航电系统分区窗口调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310542756.4A CN103544065B (zh) | 2013-11-05 | 2013-11-05 | 一种arinc653标准下的航电系统分区窗口调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103544065A CN103544065A (zh) | 2014-01-29 |
CN103544065B true CN103544065B (zh) | 2017-02-22 |
Family
ID=49967540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310542756.4A Active CN103544065B (zh) | 2013-11-05 | 2013-11-05 | 一种arinc653标准下的航电系统分区窗口调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103544065B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462987A (zh) * | 2014-11-29 | 2015-03-25 | 中国航空工业集团公司第六三一研究所 | 一种大型飞机综合处理平台中的任务安全共享方法 |
US9983902B2 (en) * | 2015-05-14 | 2018-05-29 | General Electric Company | System and method for multi-level real-time scheduling analyses |
US10768984B2 (en) | 2015-06-11 | 2020-09-08 | Honeywell International Inc. | Systems and methods for scheduling tasks using sliding time windows |
CN105549966A (zh) * | 2015-12-08 | 2016-05-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种满足综合化要求的资源确定性配置方法 |
CN105550027A (zh) * | 2015-12-09 | 2016-05-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于分区操作系统的多时间调度表切换方法 |
CN105553591B (zh) * | 2015-12-09 | 2018-01-12 | 中国航空工业集团公司西安航空计算技术研究所 | 一种分布式计算机系统节点同步方法 |
CN105577310B (zh) * | 2015-12-12 | 2018-01-12 | 中国航空工业集团公司西安航空计算技术研究所 | 一种时间触发以太网络中任务分区与通信调度的同步方法 |
CN106230750B (zh) * | 2016-09-08 | 2019-07-05 | 中国航空无线电电子研究所 | 综合模块化航空电子系统信息延迟时间分析和分配方法 |
CN106681812B (zh) * | 2016-12-14 | 2020-09-29 | 西北工业大学 | 一种分区调度方法 |
CN109211247B (zh) * | 2017-06-30 | 2022-02-01 | 张晓璇 | 一种时空分区模型及其使用方法 |
CN109840136B (zh) * | 2017-11-27 | 2023-05-23 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于分区操作系统的机电系统软件架构 |
US10908955B2 (en) | 2018-03-22 | 2021-02-02 | Honeywell International Inc. | Systems and methods for variable rate limiting of shared resource access |
US11409643B2 (en) | 2019-11-06 | 2022-08-09 | Honeywell International Inc | Systems and methods for simulating worst-case contention to determine worst-case execution time of applications executed on a processor |
CN112114945A (zh) * | 2020-09-07 | 2020-12-22 | 南京航空航天大学 | 基于多任务实时操作系统的惯性/卫星组合导航任务调度方法 |
CN112579294B (zh) * | 2020-12-25 | 2022-03-25 | 科东(广州)软件科技有限公司 | 一种虚拟机的多核调度的实现方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101452404A (zh) * | 2008-12-09 | 2009-06-10 | 中兴通讯股份有限公司 | 一种嵌入式操作系统的任务调度装置及方法 |
CN102088376A (zh) * | 2010-12-31 | 2011-06-08 | 中国航空工业集团公司第六三一研究所 | 综合化航电系统通信监控系统及方法 |
CN103235756A (zh) * | 2013-04-22 | 2013-08-07 | 北京航空航天大学 | 一种面向嵌入式系统分区应用程序软件的仿真测试方法 |
-
2013
- 2013-11-05 CN CN201310542756.4A patent/CN103544065B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101452404A (zh) * | 2008-12-09 | 2009-06-10 | 中兴通讯股份有限公司 | 一种嵌入式操作系统的任务调度装置及方法 |
CN102088376A (zh) * | 2010-12-31 | 2011-06-08 | 中国航空工业集团公司第六三一研究所 | 综合化航电系统通信监控系统及方法 |
CN103235756A (zh) * | 2013-04-22 | 2013-08-07 | 北京航空航天大学 | 一种面向嵌入式系统分区应用程序软件的仿真测试方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103544065A (zh) | 2014-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103544065B (zh) | 一种arinc653标准下的航电系统分区窗口调度方法 | |
Balachandran | An integer generalized transportation model for optimal job assignment in computer networks | |
CN107943568B (zh) | 综合模块化航空电子系统两级调度模型与原型平台 | |
CN104503838A (zh) | 一种虚拟cpu调度方法 | |
CN103995742B (zh) | 一种基于mcu的嵌入式实时调度控制装置及方法 | |
Duanmu et al. | Measuring manufacturing throughput using takt time analysis and simulation | |
CN105843995A (zh) | 一种基于模型驱动的ima系统时间资源配置验证方法 | |
Pellizzoni et al. | Adaptive allocation of software and hardware real-time tasks for FPGA-based embedded systems | |
Li et al. | MapReduce task scheduling in heterogeneous geo-distributed data centers | |
CN110503318A (zh) | 综合模块化航空电子处理系统资源配置与仿真评估平台 | |
CN101527087A (zh) | 航班过台间隔的实现方法 | |
Kharuddin et al. | Line balancing using heuristic procedure and simulation of assembly line | |
WO2012146406A1 (en) | Method for the design evaluation of a system | |
CN106874129A (zh) | 一种操作系统进程调度顺序确定方法及控制方法 | |
CN107391866A (zh) | 一种基于多处理器的aadl模型的可调度性分析方法 | |
Van Hee et al. | On the optimal allocation of resources in stochastic workflow nets | |
CN112416566B (zh) | 一种ima通用处理模块资源调度的分析方法 | |
Koruca et al. | A priority rule based production scheduling module on faborg-sim simulation tool | |
Duanmu et al. | Production capabilities using takt times, requirements analysis and simulation | |
Desirena-Lopez et al. | On-line scheduling in multiprocessor systems based on continuous control using timed continuous petri nets | |
CN103064727A (zh) | 一种强实时混合任务调度方法 | |
Tagawa et al. | An overview of the integrated modular avionics (IMA) concept | |
Jung et al. | Synchronization of a “Plug-and-Simulate”-capable Co-Simulation of Internet-of-Things-Components | |
CN105553802B (zh) | 一种异构航电网络和总线的数据实时接收方法 | |
CN106453020B (zh) | 一种应用于智能控制系统的神经网络环控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |