综合核心处理系统评价工具设计

2012-08-27 13:13李昕颖李佳妮熊华钢
电光与控制 2012年2期
关键词:延迟时间分区处理器

李昕颖, 李佳妮, 熊华钢

(1.北京航空航天大学,北京 100191; 2.中航工业航空动力机械研究所,湖南 株洲 412000)

0 引言

随着微电子技术和计算机技术的发展,航空电子系统得到了突飞猛进的发展,其结构已打破了传统各分系统的界限,通过按功能分区将整个航空电子系统划分为一个核心处理区和几个相应的综合区[1]。其中核心处理区可以说是新一代航空电子系统的大脑,它完成雷达、电子战、光电等传感器的信号处理和数据处理,并完成数据融合、导航计算、火控计算、显示控制管理等任务处理功能[2]。如何用合理有效的方法对综合核心处理系统的性能进行评价和分析是系统设计和系统实施阶段所关注的重要问题。

本文首先建立处理器模型、任务模型和双层调度模型,然后建立了基于离散事件仿真方法的系统仿真模型[3],并使用 VC++设计和实现“评价工具”,最后用“评价工具”对系统性能进行分析评价;在整个过程中,ICD文件提供了系统仿真所需要的任务流及消息流的特征参数。

1 系统模型

1.1 处理器模型

处理器接收到ICD文件输入的任务流之后,由全局调度器统一进行任务分配,并划分好相应的分区时间执行窗口。分配到同一分区中的任务,由本地调度器按某种调度策略,对任务进行实时调度。任务之间的通信,可以通过消息发布器或消息订购器来完成[4]。处理器模型如图1所示。

图1 处理器模型Fig.1 Model of the processor

1.2 任务模型

假设有 n 个实时任务,分别用 τ1,τ2,…,τn表示,它们组成一个任务集合 Γ,即 Γ ={τ1,τ2,…,τn}。任务特征定义:1)任务最坏情形执行时间Ci,表示第i个任务在最坏情况下无中断执行所需的处理器时间;2)任务的周期Ti,表示第i个任务的产生周期,对于非周期任务,则表示任务产生的最小时间间隔;3)任务的截止期限可以小于或者等于任务的周期,即Di≤Ti;4)任务之间相互独立(不存在因共享资源而导致阻塞)。

任务在处理器上交替运行,其状态也在不断地发生变化,任务的五态模型如图2所示。

图2 任务五态模型Fig.2 Model of task

执行状态:当一个任务作业在处理器上运行时,则作业处于执行状态。就绪状态:一个任务作业获得了除处理器外的一切所需资源,一旦得到处理器即可运行,则作业处于就绪状态。处于就绪状态的作业获得CPU后,将转变为执行状态;而处于执行状态的作业,若CPU被抢占,则转变为就绪状态等待CPU。阻塞状态:也称等待状态,一个任务作业正在等待某一事件发生而暂时停止运行,则该作业处于阻塞状态。释放状态:作业刚刚释放时,等待系统创建作业所需的必要信息,对于周期任务,任务的作业按周期释放。

1.3 调度模型

ASAAC[5]和 ARINC 653[6-7]中都提出了分层分区的体系结构,分区架构作为一种安全关键性的保障机制被引入。为了实现系统高度的容错能力,航空电子系统通过分区的方式,将系统中不同的功能应用限制在其活动范围内,从而不对其他功能应用产生影响。在ARINC 653标准中,特别强调分区管理的概念。多个航电应用软件划分成一个单元,即分区。双层分区的调度模型如图3所示。

图3 双层调度模型Fig.3 Two-level scheduling model

操作系统层根据ARINC 653标准,采用轮转调度的方式激活每个分区。在区间层,各个分区分配指定的内存空间和CPU时间槽,在时间上和空间上互不影响,互相隔离[8]。因此,系统内高优先级任务的故障或异常会被限制在一个分区内,不会蔓延到整个系统中,系统具有良好的错误隔离能力。

分区调度在时间上具有严格的确定性。分区调度主要按照固定的、基于周期的时间序列进行CPU资源分配,每个分区只有在分配给它的分区窗口被激活时才能被调度执行。

在ARINC 653中,分区调度原则是:

1)调度单元是分区;

2)分区没有优先级;

3)分区调度算法预先确定,并按照固定周期重复执行,在每个周期内至少为每个分区分配一个分区窗口。

假定分区PΩ由NΩ个任务组成,可表示为:ΓΩ={τΩi(Ci,Ti),i=1,2,…,NΩ}。其中 τΩi的下标表示第 Ω个分区中的第i个任务。分区调度模型如图4所示。

图4 分区内任务执行模型Fig.4 Partition task execution model

分区函数定义为Π(t),它的取值为{0,1},如果在时间t,分区允许执行,则Π(t)=1,否则Π(t)=0。在系统层,采用周期性的轮转调度激活分区PΩ,我们定义轮转周期时长为TRL,则

在每一个轮转周期内,TΩ表示分区PΩ的执行时间,在其余TRL-TΩ时间段内,分区PΩ处于阻塞状态。如果被激活的分区在某个时刻没有任务可以执行,则处理器空闲,也不运行其他分区中可以执行的任务。定义∂Ω为分区PΩ的执行能力,即每一次轮转周期内分区PΩ的执行时间与轮转周期时长之比,则

1.4 仿真模型

按照双层分区的调度机理,图5所示为仿真模型。

图5 仿真模型Fig.5 Simulation model

在操作系统层,任务根据其安全关键性划分到不同的分区。一旦确定了∂Ω,则每个分区的执行时间都是固定的,发生分区切换的时刻ti为

式中,n为分区轮转的次数。

这样定时器在每一个分区切换时刻会请求一个中断,一旦在ti时刻收到一个定时器中断,系统调度器将切换分区,即将当前分区挂起而激活下一个分区,同时再次设置定时器在ti+1时刻切换分区。

在每一个分区内部,使用单调速率(RM)或者最早时限优先(EDF)等调度算法,执行任务五态的转换。仿真开始后,首先检测是否有作业释放,释放的作业进入就绪作业优先级队列,优先级排队后,从就绪队列中选择优先级最高的作业,进入执行状态。在作业的执行过程中,若有高优先级的作业释放,则进行作业抢占,否则作业执行完成。

2 仿真实现

在仿真模型的基础上,图6给出了仿真程序的结构框架。其中,仿真环境建立部分用于仿真参数的设置和仿真程序的初始化,调度机理仿真部分实现仿真模型,性能指标统计用于对系统性能进行统计与分析。

图6 仿真流程图Fig.6 Flow chart of simulation

考虑到仿真程序的实现,设计了如图7所示的数据结构。

图7 仿真程序的数据结构设计Fig.7 Data structure design of the simulation system

图7中,用链表来实现分区对处理器资源的占用,同时每个分区的任务队列也采用链表的结构,并给出了分区任务的实现方式。

3 实例分析

依据ICD接口控制文件抽取了相应的任务流参数,假设航电系统包括两个分区,分区所涉及任务的参数如表1所示。

表1 系统任务Table 1 System task

系统层采用固定周期调度,分区内各任务采用单调速率调度算法调度,各分区及其任务的调度顺序如图8所示。通过该图可以分析系统调度流程以及任务调度效率。

图8 任务调度图Fig.8 Task scheduling

在航空电子系统工程中,系统实时性是评价和分析系统性能的关键[9]。实验中,把任务延迟时间率作为衡量系统实时性的指标,任务延迟时间率定义为任务的实际执行延迟时间与任务的截止期限的比率。最大延迟时间率、最小延迟时间率和平均延迟时间率分别表示任务执行的最大延迟时间、最小延迟时间和平均延迟时间与任务截止期限的比率[10]。实验结果如图9所示,在本例中,没有任务实际执行延迟时间超过其截止时限,最大延迟时间率76.923%,超过截止时限的周期任务数为0。

图9 任务延迟时间率结果Fig.9 Results of task delay percentage

4 结束语

利用计算机对综合模块化航电系统进行辅助设计、系统分析具有重要意义。从评价工具得到的结果是进行航空电子系统设计的重要依据,为细致深入地研究新一代航电系统性能提供了一种有效途径。此外,系统仿真软件的仿真结果进行调整和优化ICD文件设计,从而提高了设计阶段的可靠性和工作效率,达到系统设计优化的目标。

[1] 熊华钢.先进综合航空电子技术[M].北京:国防工业出版社,2009.

[2] 袁晓晗.航空电子综合核心处理技术研究[J].航空电子技术,2004,35(3):6-10.

[3] CASSANDRAS C G,LAFORTUNE S.Introduction to discrete event systems[M].2nd ed.Springer,2008.

[4] LI Xinying,XIONG Huagang.Modelling and simulation of intergated modular avionics[C]//Proceedings of 28th Digital Avionics Systems Conference,2009:1-8.

[5] ASSAC phase II stage 2 second draft of proposed standards for architecture[Z].UK Defence Procurement Agency,2004.

[6] Airlines electronic engineering committee,avionics application software standard interface[Z].ARINC Specification 653,Aeronautical Radio Inc.,Annapolis,MD,1997.

[7] Airlines electronic engineering committee,avionics application software standard interface[Z].ARINC Specification 653-1-2003,Aeronautical Radio Inc.,Annapolis,MD,2003.

[8] 张凤鸣,褚文奎,樊晓光,等.综合模块化航空电子体系结构研究[J].电光与控制,2009,16(10):47-51.

[9] 宋丽茹,何锋,熊华钢.航空电子蓝图系统实时性设计[J].电光与控制,2010,17(6):5-8.

[10] 李昕颖,顾健,何峰,等.硬实时系统在强分区约束下的双层分区调度[J].计算机学报,2010,33(6):1-8.

猜你喜欢
延迟时间分区处理器
上海实施“分区封控”
二氧化碳对乙烷燃烧着火延迟时间的影响
LTE 系统下行链路FDRX 节能机制研究
基于分层COX模型的跟驰反应延迟时间生存分析
浪莎 分区而治
延迟时间对气辅注射成型气体穿透行为影响的数值模拟和实验研究
基于SAGA聚类分析的无功电压控制分区
基于多种群遗传改进FCM的无功/电压控制分区
Imagination的ClearCallTM VoIP应用现可支持Cavium的OCTEON® Ⅲ多核处理器
ADI推出新一代SigmaDSP处理器