首页> 中国专利> 一种分布式仿真系统的实时性监控方法

一种分布式仿真系统的实时性监控方法

摘要

本发明属于实时仿真领域,涉及一种分布式仿真系统的实时性监控方法。所述方法包括以下步骤:1.1)在仿真系统中增加一个监控节点或利用原仿真系统中的一个节点作为监控节点,并在反射内存网空闲空间中划出一块区域,用于监控各个节点的状态,分配好各个节点的状态记录地址Ai、拍数记录地址Bi及统一时钟节拍计数地址C;1.2)定义节点运行状态标志;1.3)对系统实时时钟节点作出处理;1.4)对需要监控的各个仿真节点作下述处理;1.5)监控节点程序设置成中断调用模式;1.6)仿真节点实时行分析。本发明可以实现对系统中各仿真节点运行实时性和同步性的动态监控。

著录项

  • 公开/公告号CN104462664A

    专利类型发明专利

  • 公开/公告日2015-03-25

    原文格式PDF

  • 申请/专利号CN201410664512.8

  • 发明设计人 任明;芦艳宏;

    申请日2014-11-19

  • 分类号G06F17/50(20060101);

  • 代理机构北京慕达星云知识产权代理事务所(特殊普通合伙);

  • 代理人高原

  • 地址 110035 辽宁省沈阳市皇姑区塔湾街40号

  • 入库时间 2023-12-18 08:05:40

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-02-12

    授权

    授权

  • 2016-09-07

    实质审查的生效 IPC(主分类):G06F17/50 申请日:20141119

    实质审查的生效

  • 2015-03-25

    公开

    公开

说明书

技术领域

本发明属于实时仿真领域,涉及一种分布式仿真系统的实时性监 控方法。

背景技术

目前在仿真领域,基于反射内存网的分布式实时仿真系统应用较 为广泛。这类系统一般由多个仿真节点构成。如何判断各仿真节点的 运行是否实时,目前还没有简单有效的监控方法。通常的方法是通过 记录在一定时间内(如二十分钟)各节点实际的运行拍数,通过分析 和比较各节点运行的拍数来判断各节点是否实时运行。这种统计方法 不能确定未能实时运行的节点在什么时刻发生了超时,也不能确定是 否有节点“超实时”(即运行过快)。因此,如何简单有效地监控分布 式仿真系统的实时性和同步性,一直是仿真领域较难解决的问题。

发明内容

本发明所要解决的技术问题是:提供一种基于反射内存网的分布 式仿真系统的实时性监控方法,实现对系统中各仿真节点运行实时性 和同步性的动态监控。

本发明采取的技术方案为:一种分布式仿真系统的实时性监控方 法,其特征为所述方法包括以下步骤:

1.1)在仿真系统中增加一个监控节点或利用原仿真系统中的一 个节点作为监控节点,并在反射内存网空闲空间中划出一块区域,用 于监控各个节点的状态,分配好各个节点的状态记录地址Ai、拍数 记录地址Bi及统一时钟节拍计数地址C;

1.2)定义节点运行状态标志;

1.3)对系统实时时钟节点作出如下处理:

在每个时钟节拍开始时,首先在反射内存网上时钟节拍地址C 上写入时钟节拍计数N,然后利用反射内存网的中断功能,立即向系 统全部节点发出时钟中断信号Clock_INT;

1.4)对需要监控的各个仿真节点作下述处理:

1.4.1)将各节点仿真程序设置成按反射内存网中断指令运行模 式,即检测到反射内存网的时钟中断信号Clock_INT后,调用节点程 序运行一拍;

1.4.2)在仿真程序运行一拍前,在反射内存网中指定的地址Ai 处写入Running标志,同时在Bi处写入当前运行的拍数Ni,然后利 用反射内存网提供的中断服务,立即向监控节点发出节点开始运行中 断信号INTi1;在一拍程序运行后,在Ai处写入Finished标志,然后 立即向监控节点发出节点运行结束中断信号INTi2;

1.5)监控节点程序设置成中断调用模式:在仿真系统运行时, 若反射内存网检测到时钟中断Clock_INT、节点运行开始中断ITNi1、 节点运行结束中断INTi2,则调用相应的中断服务程序,在时钟中断 服务程序中,从反射内存网地址C处读取统一时钟节拍计数N;在节 点运行开始中断服务程序中,从反射内存网地址Ai、Bi读取各节点 实际开始运行的拍数Ni和节点开始运行状态标志;在节点运行结束 中断服务程序中,从反射内存网地址Ai读取节点运行结束状态标志;

1.6)仿真节点实时行分析:

1.6.1)在系统运行过程中,连续监控Ni和N的状态,若:

Ni=N,表明该节点按时钟节拍指令在实时运行;

Ni<N,表明该节点未能按时钟节拍指令实时运行,且运行慢;

Ni>N,表明该节点未能按时钟节拍指令实时运行,且运行快;

1.6.2)若某节点运行状态标志为Running,表明该节点当前正在 运行,若状态标志为Finished,表明该节点上一拍已运行结束;

1.6.3)在系统运行过程中,若同一节点Ni与N在每个时钟节拍 内不完全相同,但Ni=N,Ni<N交替出现,表明该节点每个时钟节拍 内的工作负荷不同,尽管一段时间内累积运行的拍数可能相同,也属 于未能实时运行;通过判断节点的运行状态,可以分析出节点延时和 超时情况:

在连续的Ni=N后首个Ni<N出现时,表明在N-1拍时,节点 程序没有能在规定的时钟节拍内运行完毕,出现延迟;当在Ni<N之 后,首个Ni=N出现时,表明节点程序本应该在N-2和N-1两拍 内运行的程序实际上在一个时钟周期内已运行完毕,该节点在N-2 和N-1时刻出现超时。

本发明的有益效果是:本发明可以实现对系统中各仿真节点运行 实时性和同步性的动态监控。

附图说明

图1为本发明一种具体实施方式的某基于反射内存网的仿真系 统结构示意图。

具体实施方式

下面结合附图对本发明的具体实施方式做进一步说明。

本发明一种分布式仿真系统的实时性监控方法,包括以下步骤:

1.1)在仿真系统中增加一个监控节点(或利用原仿真系统中的 一个节点作为监控节点),并在反射内存网空闲空间中划出一块区域, 用于监控各个节点的状态,分配好各个节点的状态记录地址Ai(i为 节点号,如1,2,3…)、拍数记录地址Bi及统一时钟节拍计数地址 C;

1.2)定义节点运行状态标志,如Running=1,Finished=2;

1.3)对系统实时时钟节点(即在系统运行时,发出统一实时运 行节拍指令的节点)作出如下处理:

在每个时钟节拍开始时,首先在反射内存网上时钟节拍地址C 上写入时钟节拍计数N,然后利用反射内存网的中断功能,立即向系 统全部节点发出时钟中断信号Clock_INT。

1.4)对需要监控的各个仿真节点作下述处理:

1.4.1)将各节点仿真程序设置成按反射内存网中断指令运行模 式,即检测到反射内存网的时钟中断信号Clock_INT后,调用节点程 序运行一拍;

1.4.2)在仿真程序运行一拍前,在反射内存网中指定的地址Ai 处写入Running标志,同时在Bi处写入当前运行的拍数Ni,然后利 用反射内存网提供的中断服务,立即向监控节点发出节点开始运行中 断信号INTi1;在一拍程序运行后,在Ai处写入Finished标志,然后 立即向监控节点发出节点运行结束中断信号INTi2。

1.5)监控节点程序设置成中断调用模式。在仿真系统运行时,, 若反射内存网检测到时钟中断Clock_INT、节点运行开始中断ITNi1、 节点运行结束中断INTi2,则调用相应的中断服务程序,在时钟中断 服务程序中,从反射内存网地址C处读取统一时钟节拍计数N;在节 点运行开始中断服务程序中,从反射内存网地址Ai、Bi读取各节点 实际开始运行的拍数Ni和节点开始运行状态标志;在节点运行结束 中断服务程序中,从反射内存网地址Ai读取节点运行结束状态标志。

1.6)仿真节点实时行分析:

1.6.1)在系统运行过程中,连续监控Ni和N的状态,若:

Ni=N,表明该节点按时钟节拍指令在实时运行;

Ni<N,表明该节点未能按时钟节拍指令实时运行,且运行慢;

Ni>N,表明该节点未能按时钟节拍指令实时运行,且运行快。

1.6.2)若某节点运行状态标志为Running,表明该节点当前正在 运行,若状态标志为Finished,表明该节点上一拍已运行结束。

1.6.3)在系统运行过程中,若同一节点Ni与N在每个时钟节拍 内不完全相同,但Ni=N,Ni<N交替出现,表明该节点每个时钟节拍 内的工作负荷不同,尽管一段时间内累积运行的拍数可能相同,也属 于未能实时运行。通过判断节点的运行状态,可以分析出节点延时和 超时情况:

在连续的Ni=N后首个Ni<N出现时,表明在N-1拍时,节点 程序没有能在规定的时钟节拍内运行完毕,出现延迟。当在Ni<N之 后,首个Ni=N出现时,表明节点程序本应该在N-2和N-1两拍 内运行的程序实际上在一个时钟周期内已运行完毕,该节点在N-2 和N-1时刻出现超时。

本发明在某飞行训练模拟器上实现,该模拟器采用 VMICPCI-5565反射内存网卡构建了一个环形射内存网,如图1所 示,共有13个仿真节点。其中MP节点安装了时钟卡,用于向系统 发出统一的时钟节拍信号;MON节点为监控节点,用于监控各节点 的运行状态;其它节点为模拟器各种功能仿真节点。具体操作步骤如 下:

1.1)在仿真系统中增加一个监控节点(或利用原仿真系统中的 一个节点作为监控节点),在本实例中,采用MON节点作为监控节 点。并在反射内存网空闲空间中划出一块区域,用于监控各个节点的 状态,分配好各个节点的状态记录地址Ai(i为节点号,如1,2,3…)、 拍数记录地址Bi及统一时钟节拍计数地址C;

表1 反射内存网监控地址分配

1.2)定义节点运行状态标志,Running=1,Finished=2;

1.3)对系统实时时钟节点(即在系统运行时,发出统一实时运 行节拍指令的节点,本实例中为MP节点)作出如下处理:

在每个时钟节拍开始时,首先在反射内存网上时钟节拍地址C 上写入时钟节拍计数N,然后利用反射内存网的中断功能,立即向系 统全部节点发出时钟中断信号Clock_INT。

1.4)对需要监控的各个仿真节点作下述处理:

1.4.1)将各节点仿真程序设置成按反射内存网中断指令运行模 式,即检测到反射内存网的时钟中断信号Clock_INT后,调用节点程 序运行一拍;

1.4.2)在仿真程序运行一拍前,在反射内存网中指定的地址Ai 处写入Running标志,同时在Bi处写入当前运行的拍数Ni,然后利 用反射内存网提供的中断功能,立即向监控节点发出节点开始运行中 断信号INTi1;在一拍程序运行后,在Ai处写入Finished标志,然后 立即向监控节点发出节点运行结束中断信号INTi2。

1.5)监控节点程序设置成中断调用模式。在仿真系统运行时, 若反射内存网检测到时钟中断Clock_INT、节点运行开始中断ITNi1、 节点运行结束中断INTi2,则调用相应的中断服务程序,在时钟中断 服务程序中,从反射内存网地址C处读取统一时钟节拍计数N;在节 点运行开始中断服务程序中,从反射内存网地址Ai、Bi读取各节点 实际开始运行的拍数Ni和节点开始运行状态标志;在节点运行结束 中断服务程序中,从反射内存网地址Ai读取节点运行结束状态标志。 这些数据需进行记录,在实时性分析时使用。

1.6)仿真节点实时行分析:

1.6.1)在系统运行过程中,连续监控Ni和N的状态,若:

Ni=N,表明该节点按时钟节拍指令在实时运行;

Ni<N,表明该节点未能按时钟节拍指令实时运行,且运行慢;

Ni>N,表明该节点未能按时钟节拍指令实时运行,且运行快。

1.6.2)若某节点运行状态标志为Running,表明该节点当前正在 运行,若状态标志为Finished,表明该节点上一拍已运行结束。

1.6.3)在系统运行过程中,若同一节点Ni与N在每个时钟节拍 内不完全相同,但Ni=N,Ni<N交替出现,表明该节点每个时钟节拍 内的工作负荷不同,尽管一段时间内累积运行的拍数可能相同,也属 于未能实时运行。通过判断节点的运行状态,可以分析出节点延时和 超时情况:

在连续的Ni=N后首个Ni<N出现时,表明在N-1拍时,节点 程序没有能在规定的时钟节拍内运行完毕,出现延迟。当在Ni<N之 后,首个Ni=N出现时,表明节点程序本应该在N-2和N-1两拍 内运行的程序实际上在一个时钟周期内已运行完毕,该节点在N-2 和N-1时刻出现超时。

举例分析,如表2所示。

表2 根据MON节点记录的数据进行实时性分析

注:①在第1023拍,FLY节点的任务没有在规定的时间内完成,导 致节点运行超时;

②在第1027拍,FLY节点追回了滞后的一拍,但实际上系统是不 实时的,它将第滞后的1025拍和1026拍两拍任务在一拍内完成了;

③AUD节点,在第1024、1026拍连续出现超时。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号