詹景坤,王小辉,解春雷,仇公望,祝树生,吕殿君(中国运载火箭技术研究院研发中心,北京,100076)
微内核实时操作系统在弹载综合电子系统中的应用研究
詹景坤,王小辉,解春雷,仇公望,祝树生,吕殿君
(中国运载火箭技术研究院研发中心,北京,100076)
针对导弹武器系统“综合化、模块化、智能化”的发展要求,随着导弹武器功能与性能的日益强大、应用软件日益增多,为了实现其密集计算和集中管理的新需求,提出了面向弹载综合电子系统的微内核实时操作系统设计思想,操作系统作为软件平台实现应用软件集成、调度和资源配置,为未来先进弹载综合电子系统的设计与开发进行前期探索,为综合化设计在工程上的应用积累经验。
弹载综合电子系统;微内核;嵌入式;实时操作系统
弹载综合电子系统是导弹武器系统的重要组成部分。它是一个由多系统、多环境、多任务和多资源构成的相互关联、支持、集成和制约的复杂系统,是集合飞行控制、能源管理、任务管理、目标探测、导航、通信等软硬件构成的综合信息密集管理系统,具有多信息、多专业、多任务、多功能、多资源和多过程的复杂交联的耦合特征,新一代弹载综合电子系统将兼备综合化、模块化、网络化、信息化、智能化、体系化、高精度、高可靠的技术特点。
随着导弹武器系统正朝着综合化、智能化和体系化的方向发展,弹载综合电子系统逐步从分布式、联合式架构向综合化、高度综合化方向演变,对弹载综合电子系统的软硬件架构也提出了颠覆性的改变。一方面,硬件资源平台采用“多核CPU+多核DSP”为核心处理器的一体化处理架构,以满足开放性、扩展性和柔性设计的应用需求,是适应未来新一代导弹武器系统的通用硬件处理平台。另一方面,在通用硬件处理平台的基础上,引入基于微内核的嵌入式分区实时操作系统,实现对多任务、多应用软件的统一集成、管理和调度,构建弹载综合电子系统软件处理平台。
新型的“多核CPU+多核DSP”处理器架构突破了异构混搭多核分区操作系统、多模态密集计算并行编程框架、多级健康管理系统、模型驱动开发环境等关键技术,实现了弹载综合电子系统信息的集中管理和密集计算,提高了应用软件的运行效率、集成度和可移植性,将全面提升新一代导弹武器系统综合化和智能化技术水平。
本文以微内核实时操作系统基于多核底层硬件资源上的高效应用为出发点,提出了基于微内核实时操作系统的软硬件一体化设计思路和典型应用,为新一代导弹武器综合电子系统的设计提供借鉴。
弹载微内核实时操作系统是一种强实时、多任务、多应用的嵌入式分区操作系统。依托“多核CPU+多核DSP”处理器硬件资源平台,充分利用CPU处理器作为控制/管理的优势和DSP处理器作为数据运算的优势,对弹载综合电子系统软硬件资源进行高效灵活配置。在操作系统运行过程中,任务作为系统独立运行的基本单元,支持同时存在多个任务,并根据事先定义好的调度表规则内容实现任务的切换与调度。支持同时存在多个应用,通过应用层接口接入多个应用,并根据系统分区配置合理分配应用分区,利用时间片轮转调度规则实现应用的切换与调度。
微内核实时操作系统采用层次化、结构化架构总体方案,如图1所示。操作系统自顶向下由应用层、操作系统层、模块支持层等组成。
应用层是用户单独开发的分区应用,该应用软件运行在操作系统之上。在应用层开发的应用软件,支持开发单一分区的应用,也支持开发多个分区的应用。一般而言。根据应用软件的设计规划,首选将应用软件与分区建立一一对应关系。
操作系统层主要由核心操作系统、可配置组件等组成。操作系统层对下主要完成对系统运行的硬件资源的配置与管理,包括空间资源、时间资源、对象资源、设备资源等;对上主要完成对应用软件的调度与管理,为应用软件提供API访问接口和可以使用的组件。
模块支持层主要实现底层硬件与操作系统层之间的隔离,主要包括结构支持包、板级支持包、映射管理等内容。该层为操作系统的正常运行提供接口支持,为系统访问的设备提供驱动支持。模块支持层软件与底层硬件平台密切相关,需要针对性的为操作系统开发设计模块支持层软件、驱动等。
应用编程接口为操作系统提供分区应用可访问的接口。操作系统提供应用调用的接口包括APEX接口、分区内扩展接口和可配置组件接口(含C运行库接口、BIT管理接口、文件系统接口)。
模块支持层与操作系统接口为支持操作系统的运行专门提供的一组接口,该部分接口涉及体系结构、映像管理与部署、故障处理等功能。
图1 操作系统软件层次结构图
根据弹载综合电子系统的功能需求,嵌入式实时操作系统的底层硬件资源平台采用了异构混搭的多微内核(即“多核CPU+多核DSP”)设计架构。通过异构混搭多核分区设计,利用不同处理器对控制、管理、计算的优势分析,完成密集控制分区、密集计算分区和健康管理分区等功能分区的构建,实现分区间任务的安全隔离、可靠通信和分区内任务的实时调度。实时操作系统运行的异构混搭的底层硬件资源平台设计架构如图2所示。
图2 异构混搭式底层处理器平台架构
随着弹载综合电子系统功能和性能的大幅提升,引入实时操作系统是综合化技术发展的必然趋势。经过前期方案论证和设计分析,同时参考其它项目实践验证,实时操作系统虽与弹载综合电子系统的硬件资源之间存在密切的关系,但实时操作系统作为软件资源的集成、管理与调度平台,在选型开发和集成设计时应遵循如下原则:
a)高质量设计原则。实时操作系统作为弹载综合电子系统平台软件,选型设计中应优先考虑保证平台软件运行的稳定性和可靠性,对可能导致操作系统运行失效的场景进行充分考虑,并设计有效的预防和修复措施,能够保证应用软件的高效运行。
b)成熟化设计原则。设计中应尽量采用经过大量应用验证的成熟产品或成熟技术,尽可能减少新研制或新开发的软件模块,尽量避免或减少对现有成熟技术的修改,若存在新研和修改的内容,需要完成相关验证性试验,以降低系统研制风险。
c)标准化设计原则。实时操作系统与应用软件、底层硬件模块接口应符合相关标准要求。平台软件在设计中产生的新研部分,应符合已有产品的接口要求,以保障操作系统的兼容性和可扩展性,提高系统的可维护性和保障性。
d)经济性设计原则。实时操作系统应充分结合已有软硬件资源,有针对性的开发设计,通过提高资源利用率、结合项目实际情况优化设计策略和实现方式等手段,提升系统运行效率,以达到减少项目研发成本的目的。
3.1分区设计技术及应用。弹载综合电子系统突破了传统的模块直联架构方式,采用了综合化、模块化、构件化电子系统的设计思想和技术,其核心设计理念是利用单一的运算平台来运行多个应用程序,以达到有效减少系统上的处理器数量,充分发挥处理器计算能力,减少系统对空间、重量、能源、备件等资源的需求。结合实际情况,弹载综合电子系统应完成导航解算、飞行控制、飞行管理、时序管理、载荷数据流实时计算、图像目标识别与处理、实时任务规划、地形跟踪/回避、协同作战、突防对抗、故障检测、健康管理等集中管理和密集计算的任务。
针对弹载综合电子系统上述功能需求,根据信息耦合、处理器特点和历史设计传统等设计原则,通过顶层设计形成了八种弹载综合电子系统应用软件,基本上涵盖了飞行管理应用(含时序管理、电源管理)、飞行控制应用(含导航解算、实时任务规划)、任务规划应用、攻防对抗应用(含协同作战)、图像处理应用、射频综合应用、系统测试应用、健康管理应用等应用设计框架。分区设计框图如图3所示。
图3 弹载综合电子系统分区规划设计
微内核实时操作系统作为系统级应用软件集成、调度和管理平台,通过分区设计技术,为各应用软件规划设计独立运行分区,支持不同关键等级的应用程序互不干扰的、高效的、安全性和可靠性运行在微内核硬件平台上。操作系统可以提供有效的分区间通信和分区内通信,如图4所示。
图4 各应用分区间/内通信机制
3.2密集计算技术及应用。针对弹载综合电子系统密集计算需求,为了满足高性能导弹平台对海量数据、复杂任务和实时流处理要求,通过多核DSP阵列并行编译技术,利用多模态并行运行时系统和分区调度内核实现与多DSP核及核间数据的高速交换,支持多路信号复杂解算、图像压缩和模式识别、弹上地形匹配、弹上导航解算、弹上实时弹道规划的并行计算,解决了计算资源不足和资源整合复用的难题,并行计算总体架构如图5所示。
图5 密集计算分区的并行框架图
3.3实时调度技术及应用。实时操作系统提供时间隔离保障机制,采用基于主时间框架的应用分区进行轮转调度技术,通过调度表静态定义每一分区的调度时间。操作系统将严格按照时间框架定义对分区进行调度执行。任何分区,均在被调度时刻占有CPU资源,调度时间一到,都将被剥夺CPU所有权,从而保证任何分区的正常执行。
弹载综合电子系统飞行控制分区需要具备强实时的调度需求,即要求控制周期大不于10ms,如果其它的应用分区调度周期均大于该调度周期,那么在设计调度表配置时,需要采用以飞行控制分区作为强实时调度响应配置,同时顺序循环调度各个分区的调度表设计方案。
分区调度表包含了一组具有先后顺序的分区、每个分区的调度起始时间和每个分区的调度时长。综合设计后给出了在36ms的主时间框架内,任一时刻系统CPU的所有权归属结果。
3.4故障诊断与辅助决策技术及应用
利用实时操作系统提供的三层次健康监控技术,对健康管理分区应用软件进行综合设计,开展进程级健康监控、分区级健康监控和模块级健康监控设计。进程级健康监控负责用户故障诊断与进程级故障的处理;分区级健康监控负责分区内故障诊断与分区级的故障处理;模块级健康监控负责系统各单元模块的故障诊断与故障处理。三级故障诊断与健康监控形成分层分布式的健康管理处理机制,根据就近原则首先由相应监控模块完成故障诊断和处理,如果某级别的健康监控功能无法实现故障事件的处理,将报送到高一级的健康监控模块。
弹载综合电子系统各组成单元自行完成运行状态数据的采集、整理,各模块状态数据通过I2C总线发送至通用处理器核心模块,通用处理器模块将依据逻辑推理和综合判断等诊断算法,给出各模块的工作状态,并形成故障处理辅助决策信息。
微内核分区实时操作系统能够有效管理弹载综合电子系统硬件和软件资源,是强大的多任务、多应用运行软件平台。在未来导弹武器综合电子系统中发挥不可替代的作用,广泛适用于多应用场景和综合化系统环境。微内核实时操作系统在新一代弹载综合电子系统中的应用与探索,改变了传统分布式低能效的软件实现架构,实现了弹载综合电子系统硬件资源整合复用,以及弹载信息的集中处理,软件运行效率和可靠性需求,实时操作系统有效降低系统软件架构、设计、开发、测试、维护,提高应用软件的可移植性。应用分区绑定、并行密集计算、故障诊断与辅助决策和等一系列关键技术,对新一代弹载综合电子系统进行高度综合化设计,将促进未来导弹武器系统跨越式发展。
[1] 李化云.嵌入式实时操作系统在航天器软件中的应用研究[J].微计算机信息,2012,(8), 73-74.
[2] 宋征宇.嵌入式实时操作系统在运载火箭中的应用研究[J].航天控制, 2013,(3), 3-10.
[3] 雷杰,文顺安. 嵌入式实时多任务操作系统在强实时系统中的应用[J].战术导弹控制技术,2002,(4),37-40.
[4] 曹宁. 组合导航系统中实时多任务的软件设计[J]. 导航,2007, (2), 35-40.
[5] 刘宗玉, 王玮, 陈明, 田洪波. 综合导航系统中的实时多任务软件设计[J]. 计算机工程与应用, 2004, 40, (27), 185-187.
[6] 李林, 王向晖, 陶利民, 张猛. 航天器用实时操作系统设计[J]. 计算机测量与控制, 2012, 20(4):1026-1028, 1032. (LI Lin, WANG Xianghui, TAO Li, ZHANG Meng. Type of Reali-Time Systems Designing Which Applied in Aeroships[J]. Computer Measurement&Control, 2012,20(4): 1026-1028, 1032.)
The Application Study on Mirco-Kernel Real-Time Operation System in Missile-Borne Integrated Electronic System
Zhan Jingkun,Wang Xiaohui,Xie Chunlei,Qiu Gongwang,Zhu Shusheng,Lv Dianjun
(R&D Center, China Academy of Launch Vehicle Technology,Beijing,100076)
The development trend of the missle weapon system is “integration,miniaturization & intelligent”.With the powerful fuctions and more applications softwares of the missle weapon.In order to realize the strong requirement of the dense computation and centralized management,the paper puts forword to a new kind of design method which is applying the mirco-kernel real-time operation system in missile-borne integrated electronic system.The integration,schedule and resource allocation of application softwares can be realized by the operation system platform.which has done some preliminary exploration and has provided a good direction for applying integrated design technology to engineering.
Missile-borne Integrated electronic system;Mirco-kernel;Embedded;Real-time operation system
TP316.2
A
詹景坤(1981-),男,工程师,主要研究方向为电气系统设计