一种基于并行计算管理的自主导航仿真调度管理系统的制作方法

文档序号:6585121阅读:203来源:国知局
专利名称:一种基于并行计算管理的自主导航仿真调度管理系统的制作方法
技术领域
本发明涉及一种用于航天器仿真的基于并行计算管理的自主导航仿真调度管理
系统。
背景技术
航天器的仿真调度管理系统通常包含在航天器仿真平台体系中,主要负责航天器 仿真系统各组成部分的仿真过程控制和数据管理。 在国外航天器仿真与调度方面,其中成熟的系统工具包括欧洲航天局(ESA/ ESTEC)研制的EuroSim, ES0C开发的公共仿真软件包SIMSAT, EDISON等,但是这些国外产 品不公开核心技术,且难以保证航天器仿真系统的实时性。 国内一般的航天器仿真体系包括其调度系统,例如"小卫星设计、分析与仿真验 证一体化系统",(参见"小卫星设计、分析与仿真验证一体化系统",孙兆伟,《系统仿真学 报》,2001年/13巻/05期)、"空间实验室综合演示验证系统"的研究中也涉及到了仿真体 系的调度系统。但是,这些系统都是针对特定的仿真应用,系统由固定的子节点组成,接口 固化,结构固定,难以扩展,不适用于航天器总体仿真平台的调度管理系统,且这些系统大 都通过以太网进行节点通信,难以满足实时性的要求。 由北京空间飞行器总体设计部研制开发的"数字化航天器柔性仿真平台"中的调 度管理系统,虽然具备了一定的可扩展性,但是该调度管理系统采用串行的模型调度管理 机制,同时其硬件设备也不具备并行性,仅能满足一般航天器系统仿真的实时性。对于具有 仿真模型庞大、模型运行复等特点的自主导航仿真系统采用这种调度管理系统时,受该平 台的硬件与串行机制的限制,整个仿真系统的模型的运行总时间将大大超出仿真步长,不 能保证系统的实时性。

发明内容
本发明的目的是解决针对具有仿真模型庞大、模型计算复杂等特点的自主导航仿 真系统进行仿真时,现有的调度管理系统无法满足实时性指标的问题,提供一种基于数据 驱动的异步流水线并行实时调度方法。 本发明的技术解决方案一种基于并行计算管理的自主导航仿真调度管理系统, 包括硬件系统和软件系统,所述的硬件系统由主控计算机、实时调度计算机、仿真计算节点 机、实时通信网络和高精度时钟卡组成,所述的软件系统由主控端软件、调度控制软件和实 时操作系统组成; 所述的主控计算机运行主控端软件,主控端软件采用TCP/IP协议,通过千兆以太 网网络实现与实时调度计算机之间的仿真数据、仿真状态信息和控制指令数据的交互,通 过人机界面进行仿真状态与数据监视;主控计算机与实时调度计算机之间通过千兆以太网 网络进行数据交互; 所述的仿真计算节点机为iHawk并行计算集群,采用RED-HAWKLINUX作为实时支撑操作系统,运行仿真任务中的仿真应用软件,进行仿真模型自身的计算,并通过 infiniband实时通信网络与实时调度计算机进行数据交互; 所述的实时调度计算机为4CPU并行计算服务器,采用RED-HAWKLINUX实时操作系 统,RCIM时钟卡为系统提供仿真时钟信号;所述的调度控制软件运行于实时调度计算机, 采用基于数据驱动的异步流水线并行实时调度算法进行仿真系统调度,所述的基于数据驱 动的异步流水线并行实时调度算法,其中仿真任务由仿真应用软件实现,仿真应用软件由m 个仿真模型构成,实现如下 (1)对m个仿真模型的运算顺序进行分析,按照运算先后顺序进行排队,得到仿真 模型队列,m为自然数; (2)仿真模型1等候仿真时钟信号,如果收到仿真时钟信号,则仿真模型开始自
身的仿真计算;计算完毕后,将计算结果传给仿真模型2 ;仿真模型1继续等待仿真时钟信
号; (3)仿真模型2监听仿真模型1的数据传输,如果收到数据,则进行仿真模型2的
自身仿真计算;计算结束后,将计算结果与仿真模型l传来的数据汇合,传给仿真模型3 ;仿 真模型2继续监听仿真模型1的数据传输; (4)仿真模型3监听仿真模型2的数据传输,如果收到数据,则进行仿真模型3自
身的仿真计算;计算结束后,将计算结果与仿真模型2传来的数据汇合,传给仿真模型4 ;仿 真模型3继续监听仿真模型2的数据传输; (5)如此进行这样运行,直至仿真模型m监听模型m-l的数据传输,如果收到数据, 则进行仿真模型m的自身仿真计算;计算结束后,将计算结果与仿真模型m-l传来的数据汇 合,形成最终的单步仿真结果数据; (6)继续按照步骤(2)_(5)的模式完成后续多步仿真调度,直至整个仿真任务结 束。 所述的调度算法中,下一个模型在接收到上一个模型传输的数据后,开始自身的 仿真计算,形成一种数据驱动模式。 所述的调度算法具有通用性,不依赖于具体的仿真任务与仿真模型。可以根据具 体的仿真任务任意选择不同数量的仿真模型,选择具有不同仿真计算功能的仿真模型。
本发明与现有技术相比的有益效果在于 (1)在现有的自主导航仿真任务中,各个仿真模型(子任务)之间具有很强的逻
辑先后关系,在仿真中必须保证其执行先后顺序,通常采用串行的调度策略。由于自主导航
仿真系统具有模型复杂、计算量和数据交换量巨大等特点,采用通常的调度管理系统仿真
时间将大大超出仿真步长,无法实现实时仿真。本发明采用infiniband高性能实时网络和
REDHAWK实时操作系统保证了仿真系统的实时性;采用并行计算服务器与刀片服务器从硬
件上保证了系统实现并行计算的可能性;基于数据驱动的异步流水线并行实时调度算法进
行实时调度控制,从软件层次上实现了仿真系统模型间的并行计算,并通过与硬件的结合
大大加快了仿真系统的运算速度,保证了复杂仿真系统的并行性和实时性。 (2)本发明基于数据驱动的异步流水线并行实时调度算法中的仿真模型1的步进
采用仿真时钟驱动,其它仿真模型步进采用数据驱动。这种模式使得只要在仿真模型1所
在的节点上建立一个高精度仿真驱动时钟,其它计算节点上不需要时钟驱动信号,避免了
4高精度同步时钟网络的需求;且采用单步仿真结果数据是由模型逐级传输汇合而成,结果 数据的时间一致性好;采用数据结果逐级传输技术,相对于数据中心统一管理结果数据的 方式,解决了数据中心数据缓存和管理的复杂度;流水线调度方式,可以对执行逻辑上具有 先后顺序的串行程序进行并行计算;可以将计算耗时长的模型拆分成几个小模型,通过增 加流水级数的方法,提高仿真结果的输出频度。 (3)本发明采用了基于Windows的前台主控端软件+基于RED-HAWKLINUX实时操 作系统的后台调度控制软的软件体系架构。该架构充分利用了 Windows图形用户界面友 好,RED-HAWK LINUX系统实时性能好的特点,确保了用户良好的操作体验和系统的实时性 要求。 (4)本发明具有可扩展性,高性能仿真计算节点机可在此基础上自由扩展多台采 用RED-HAWK LINUX实时操作系统的计算服务器。 (5)本发明具有通用性,可以根据不同的需求加载不同数量和运算功能的仿真应 用软件,完成不同的仿真任务。 (6)经过试验验证,本发明具有通用性、灵活性、可扩展性、实时性、并行行等特点, 能够满足不同复杂程度的仿真任务需求,提高了航天器的总体设计与仿真水平。


图1为本发明系统的体系结构图; 图2为本发明的基于数据驱动的异步流水线并行实时调度算法流程图。
具体实施例方式
如图1所示,本发明的自主导航仿真调度管理系统由硬件系统和软件系统组成。
硬件系统由主控计算机、实时调度计算机、高性能仿真计算节点机、实时通信网络和高精度
时钟卡组成;软件系统由支撑操作系统、主控端软件和实时调度控制软件组成。 实时通信网络包括千兆以太网网络和infiniband高性能实时网络。完成计算集
群之间,实时调度计算机与计算集群的实时通信和数据传输。 主控计算机的计算量需求较低、实时性要求不高,为了保证人机界面的友好、主控 计算机采用Windos普通PC机。主控端软件运行于主控计算机中,采用C#语言进行人机交 互界面的开发,采用TCP/IP协议,通过千兆以太网网络实现与实时调度计算机之间的仿真 数据、仿真状态信息和控制指令的交互,通过人机界面进行仿真状态与数据监视。其中仿真 状态是指仿真应用软件中仿真模型计算或结束等,控制指令是指仿真任务开始、终止或暂 停等。 高性能仿真计算节点机采用RED-HAWK LINUX实时操作系统作为支撑系统,运行仿 真任务中的仿真应用软件,进行仿真模型自身的计算,并通过infiniband实时通信网络与 实时调度计算机进行数据交互。高性能仿真计算节点机采用由美国并行计算机公司研制的 iHawk并行计算集群。目前,该集群由2台IBM刀片服务器组成,每台刀片服务器有12个刀 片计算机,整个计算集群共有24台刀片计算机。每个刀片配备2. 5Gbps infiniband端口, 汇总至内置的infiniband交换机,再通过30Gbps的端口分割成3个10Gbps (3个3x)的线 缆和外部infiniband交换机互联。实时调度计算机安装有1块infiniband网卡,通过外部inf iniband交换机与高性能仿真计算节点机中各刀片计算机互连,形成一个全连接的拓扑 结构的inf iniband高速通讯网络。相对于独立计算机构成的计算集群,该结构的性能稳定 可靠得多,确保了长时间仿真任务的运行。另外,该结构还具有占地面积小,便于放置和使 用的特性。由于系统具有灵活的扩展性和适用性,高性能仿真计算节点机可在此基础上自 由扩展多台采用RED-HAWK LINUX实时操作系统的计算服务器。高性能仿真计算节点机可 以根据实时性和仿真模型的数量在上述基础上自由扩展为多台RED-HAWK LINUX实时操作 系统的计算服务器。 实时调度计算机采用RED-HAWK LINUX实时操作系统,RCIM高精度时钟卡为系统 提供仿真时钟信号,运行实时调度控制软件,与主控计算机接口实时调度管理。实时调度计 算机计算任务较多、任务的实时性要求高、与仿真计算节点机需要进行实时的大数据量通 信,因此采用基于美国并行计算机公司RED-HAWK LINUX实时操作系统的1台4CPU高性能 并行计算服务器。利用RED-HAWK LINUX实时操作系统的CPU屏蔽与绑定、FBS调度、RCIM 高精度时钟卡支持、核心全程抢占、固定优先级调度、存储器页面锁定等实时特性,确保系 统强实时性能。实时调度计算机采用美国并行计算机公司的RCI M高精度时钟卡为系统提 供高精度的时钟、分布式系统同步、以及需要对外部事件进行快速响应的时间关键型应用 所设计。RCM卡包括一个可由多个iHawk系统读取的同步时钟、4个可编程实时时钟、4输 入\4输出外部中断线。RCIM卡与REDHAWK实时操作系统配合,建立高精度高稳定性的系统 仿真驱动时钟。 调度控制软件采用基于数据驱动的异步流水线并行实时调度算法进行仿真系统 的调度管理,实现了各仿真模型的并行计算,该算法原理上类似于工厂车间的生产流水线。 调度控制软件为不同的仿真任务提供仿真过程中各仿真应用软件运行的管理控制和仿真 应用软件之间的数据交互。调度控制软件具有通用性,其实现不依赖于具体的仿真应用软 件,所调度的仿真应用软件可以灵活变更,因此仿真应用软件不属于本发明内容。具体的仿 真应用软件根据仿真任务需求选择具有不同自身运算功能的仿真模型。
以完成一颗卫星的动力学仿真任务的调度控制为实施例。该仿真任务由仿真应用 软件实现,仿真应用软件包括航天器轨道动力学模型、航天器轨道控制模型、航天器相对 轨道测量模型、航天器多刚体姿态动力学模型、推进剂消耗仿真模型。上述仿真模型所采 用的算法均为教科书中成熟算法,如《卫星轨道姿态动力学与控制》北京航空航天大学出版 社,1998年出版;《航天器飞行动力学原理》宇航出版社19950年出版等教科书中均有详细 介绍,本领域技术人员完成可以实现。
具体实现如下 (1)对仿真应用软件中的5个仿真模型的运算顺序进行分析,按照运算先后顺序 进行排队,得到仿真模型运行队列仿真模型1为轨道控制仿真模型,仿真模型2为推进剂 消耗仿真模型,仿真模型3为轨道动力学仿真模型,仿真模型4为多刚体姿态动力学模型, 仿真模型5为航天器相对轨道测量模型。 (2)仿真模型1等候来自RCIM高精度时钟卡的仿真时钟信号(实时时钟精度为1 微秒),如果收到该仿真时钟信号,驱动仿真模型1开始自身的仿真计算,生成当前时刻航 天器轨道控制策略。计算完毕后,将计算的结果传给仿真模型2,仿真模型1继续等待仿真 时钟信号。
(3)仿真模型2监听仿真模型1的数据传输,如果收到数据,则驱动仿真模型2开 始自身仿真计算,生成当前时刻航天器的当前质量和推进剂消耗数据。计算结束后,将计算 的结果与仿真模型1传来的数据汇合,传给仿真模型3,仿真模型2继续监听仿真模型1的 数据传输。 (4)仿真模型3监听仿真模型2的数据传输,如果收到数据,则驱动仿真模型3自 身的仿真计算;生成当前时刻航天器的轨道要素、航天器位置速度和时空基准数据。计算结 束后,将计算结果与仿真模型2传来的数据汇合,传给仿真模型4,仿真模型3继续监听仿真 模型2的数据传输。 (5)仿真模型4监听仿真模型3的数据传输,如果收到数据,则驱动仿真模型4自 身的仿真计算,生成当前时刻航天器本体及附件姿态数据。计算结束后,将计算结果与仿真
模型3传来的数据汇合,传给仿真模型5 ;仿真模型4继续监听仿真模型3的数据传输; (6)仿真模型5监听仿真模型4的数据传输,如果收到数据,则驱动仿真模型5自
身的仿真计算,生成当前时刻航天器之间相对位置方位及其变化率数据。计算结束后,将计
算结果与仿真模型4传来的数据汇合,形成最终的当前时刻仿真结果数据。 (7)继续按照步骤(2)_(6)的模式循环反复完成下一时刻的仿真调度,直至整个
仿真任务结束。 在上述算法中,仿真时间的步进由仿真时钟信号来驱动,而仿真模型运行顺序的 推进由仿真数据来驱动。在这两种驱动信号的作用下,构成了一个数据驱动的异步流水线 并行实时计算系统。 在上述算法中,仿真模型1仿真步进采用仿真时钟驱动,其它模型仿真步进采用
数据驱动。这种模式使得只要在仿真模型l所在的节点上建立一个高精度仿真驱动时钟,
其它计算节点上不需要时钟驱动信号,避免了高精度同步时钟网络的需求。 自主导航仿真调度管理系统采用基于美国并行计算机公司RED-HAWKLINUX实时
操作系统的实时仿真平台,确保系统强实时性能;采用了基于数据驱动的异步流水线并行
实时调度技术实现了各仿真模型的并行计算。 本发明的整个仿真调度管理系统运行流程 (1)启动主控计算机、实时调度计算机、高性能仿真计算节点机、以太网和 infiniband交换机; (2)主控端软件加载仿真任务; (3)主控端软件根据仿真需求选择仿真模式(包括实时仿真、数学仿真和仿真回 放三种模式),进行仿真任务初始化; (4)实时调度控制软件将仿真应用软件(例如,仿真应用软件可以为卫星动力学 轨道仿真软件、卫星有效载荷仿真软件、空间环境仿真软件、导航定位信号仿真软件等)分 布式下载到高性能仿真计算节点机的各个刀片计算机; [OO51 ] (5)主控端软件启动仿真任务; (6)实时调度控制软件采用基于数据驱动的异步流水线并行实时调度算法调度高
性能仿真计算节点机各个刀片计算机中仿真应用软件进行仿真计算与数据交互; (7)通过千兆以太网实时调度控制软件实时将仿真数据与仿真状态传输给主控端
软件,主控端软件通过人机界面监视相关数据结果;
(8)主控端软件结束仿真任务。 本发明未详细阐述部分属于本领域的公知技术。
权利要求
一种基于并行计算管理的自主导航仿真调度管理系统,其特征在于包括硬件系统和软件系统,所述的硬件系统由主控计算机、实时调度计算机、仿真计算节点机、实时通信网络和高精度时钟卡组成,所述的软件系统主控端软件、调度控制软件和支撑操作系统组成;所述的主控计算机运行主控端软件,主控端软件采用TCP/IP协议,通过千兆以太网网络实现与实时调度计算机之间的仿真数据、仿真状态信息和控制指令数据的交互,通过人机界面进行仿真状态与数据监视;主控计算机与实时调度计算机之间通过千兆以太网网络进行数据交互;所述的仿真计算节点机为iHawk并行计算集群,采用RED-HAWKLINUX作为实时支撑操作系统,运行仿真任务中的仿真应用软件,进行仿真模型自身的计算,并通过infiniband实时通信网络与实时调度计算机进行数据交互;所述的实时调度计算机为4CPU并行计算服务器,采用RED-HAWKLINUX实时操作系统,RCIM时钟卡为系统提供仿真时钟信号;所述的调度控制软件运行于实时调度计算机,采用基于数据驱动的异步流水线并行实时调度算法进行仿真系统调度,所述的基于数据驱动的异步流水线并行实时调度算法,其中仿真任务由仿真应用软件实现,仿真应用软件由m个仿真模型构成,实现如下(1)对m个仿真模型的运算顺序进行分析,按照运算先后顺序进行排队,得到仿真模型队列,m为自然数;(2)仿真模型1等候仿真时钟信号,如果收到仿真时钟信号,则仿真模型开始自身的仿真计算;计算完毕后,将计算结果传给仿真模型2;仿真模型1继续等待仿真时钟信号;(3)仿真模型2监听仿真模型1的数据传输,如果收到数据,则进行仿真模型2的自身仿真计算,形成这种数据驱动模式;计算结束后,将计算结果与仿真模型1传来的数据汇合,传给仿真模型3;仿真模型2继续监听仿真模型1的数据传输;(4)仿真模型3监听仿真模型2的数据传输,如果收到数据,则进行仿真模型3自身的仿真计算;计算结束后,将计算结果与仿真模型2传来的数据汇合,传给仿真模型4;仿真模型3继续监听仿真模型2的数据传输;(5)如此进行这样运行,直至仿真模型m监听模型m-1的数据传输,如果收到数据,则进行仿真模型m的自身仿真计算;计算结束后,将计算结果与仿真模型m-1传来的数据汇合,形成最终的单步仿真结果数据;(6)继续按照步骤(2)-(5)的模式完成后续多步仿真调度,直至整个仿真任务结束。
2. 根据权利要求l的所述的一种基于并行计算管理的自主导航仿真调度管理系统,其 特征在于所述的仿真计算节点机的iHawk并行计算集群由2台刀片服务器组成,每台刀片 服务器有12个刀片计算机,整个计算集群共有24台刀片计算机。
全文摘要
一种基于并行计算管理的自主导航仿真调度管理系统,由硬件系统和软件系统组成,硬件系统由主控计算机、实时调度计算机、仿真计算节点机、实时通信网络和时钟卡组成,实时通信网络由千兆以太网网络和infiniband高性能实时网络组成,软件系统由支撑操作系统、主控端软件、实时调度控制软件组成。本发明采用infiniband高性能实时网络和REDHAWK实时操作系统保证了仿真系统的实时性;采用并行计算服务器与刀片服务器从硬件上保证了系统实现并行计算的可能性,而且基于数据驱动的异步流水线并行实时调度算法,实现了仿真系统模型间的并行计算,并通过与硬件的结合大大加快了仿真系统的运算速度,保证了复杂仿真系统的并行性和实时性。
文档编号G06F9/46GK101719078SQ200910242499
公开日2010年6月2日 申请日期2009年12月15日 优先权日2009年12月15日
发明者孙亚楠, 张玥, 杨雷, 涂歆滢, 许晓霞, 钟选明, 黄丽霞 申请人:北京空间飞行器总体设计部
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1