一种三模冗余计算机数字仿真系统的制作方法

文档序号:8259159阅读:244来源:国知局
一种三模冗余计算机数字仿真系统的制作方法
【技术领域】
[0001]本发明属于计算机仿真技术领域,具体涉及一种三模冗余计算机数字仿真系统。
【背景技术】
[0002]针对计算机系统的仿真技术已经有较多的研宄和成果,但是对于安全关键领域广泛使用的三模冗余计算机,由于其专业性和复杂性,当前研宄仍然集中在计算机系统的实现,数字仿真技术国际上也很少有研宄。
[0003]三模冗余计算机在航空航天等安全关键领域具有广泛应用,能够显著提升系统的可靠性和安全性。如图1所示,一个典型三模冗余计算机硬件平台的抽象示意图,具有以下特点:(I)、三个同构计算机;(2)、任意两个计算机之间能够通过FIFO进行通信;(3)、三个计算机挂载于共享总线上。针对抽象模型特征,在进行数字仿真时,需要进行以下考虑:
(I)、处理器配置:处理器数量、类型、频率;(2)、设备配置:每个设备所连接处理器(一个或多个)、在处理器地址空间中的位置、对应处理器触发中断号、对应处理器访问延迟等。
[0004]由于三模冗余计算机的专业性和复杂性,通常具有成本高、数量少的特点,而基于该计算机系统的嵌入式软件开发面临诸多困难,例如软件调试缺陷复现困难、三机故障定位复杂、故障处理功能验证难以开展等。

【发明内容】

[0005]发明目的:本发明针对上述现有技术存在的问题做出改进,即本发明公开了一种三模冗余计算机数字仿真系统。
[0006]技术方案:一种三模冗余计算机数字仿真系统,包括以下模块:
[0007]处理器仿真模块,实现指令集、寄存器、存储空间和流水线的时钟精确仿真;
[0008]设备仿真模块,完成处理器私有的设备功能仿真或处理期间共享的设备功能仿真;
[0009]计算机间通信和同步仿真模块,完成三模冗余计算机处理器之间的通信和同步控制功能。
[0010]作为本发明中一种三模冗余计算机数字仿真系统的一种优选方案,处理器仿真模块包含:
[0011]指令集仿真模块,实现指令集的逻辑功能仿真;
[0012]寄存器仿真模块,实现寄存器的时钟精确仿真;
[0013]存储空间仿真模块,实现存储层次的时钟精确仿真;
[0014]流水线仿真模块,实现流水线的时钟精确仿真。
[0015]作为本发明中一种三模冗余计算机数字仿真系统的一种优选方案,设备仿真模块包含:
[0016]处理器私有的设备功能仿真,完成处理器私有的设备的初始化、读取、中断和卸载的仿真;
[0017]处理器共享的设备功能仿真,完成处理器共享的设备的初始化、读取、中断和卸载的仿真。
[0018]作为本发明中一种三模冗余计算机数字仿真系统的一种优选方案,计算机间通信和同步仿真模块包含:
[0019]计时模块,记录计算机的运行时钟周期数;在获得令牌处理模块的启动指令后,运行约定的同步周期,然后停止运行,等待新的令牌到来;
[0020]令牌处理模块,获取令牌后启动当前计算机,执行约定的同步周期,运行完毕后向下一个计算机传递令牌。
[0021]有益效果:本发明公开了一种三模冗余计算机数字仿真系统,其具有以下有益效果:
[0022](I)以三模冗余计算机构建为例,可扩展为更多计算机冗余架构;
[0023](2)实现冗余计算机间不同粒度的同步,保证性能和精度的权衡;
[0024](3)支持不同处理器和设备的替换,实现跨平台支持。
【附图说明】
[0025]图1为三模冗余计算机硬件平台的构成示意图;
[0026]图2为三模冗余计算机数字仿真系统的仿真框架;
[0027]图3为三处理器令牌同步机制的示意图。
【具体实施方式】
:
[0028]下面对本发明的【具体实施方式】详细说明。
[0029]—种三模冗余计算机数字仿真系统,包括以下模块:
[0030]处理器仿真模块,实现指令集、寄存器、存储空间和流水线的时钟精确仿真;
[0031]设备仿真模块,完成处理器私有的设备功能仿真或处理期间共享的设备功能仿真;
[0032]计算机间通信和同步仿真模块,完成三模冗余计算机处理器之间的通信和同步控制功能。
[0033]作为本发明中一种三模冗余计算机数字仿真系统的一种优选方案,处理器仿真模块包含:
[0034]指令集仿真模块,实现指令集的逻辑功能仿真;
[0035]寄存器仿真模块,实现寄存器的时钟精确仿真;
[0036]存储空间仿真模块,实现存储层次的时钟精确仿真;
[0037]流水线仿真模块,实现流水线的时钟精确仿真。
[0038]作为本发明中一种三模冗余计算机数字仿真系统的一种优选方案,设备仿真模块包含:
[0039]处理器私有的设备功能仿真,完成处理器私有的设备的初始化、读取、中断和卸载的仿真;
[0040]处理器共享的设备功能仿真,完成处理器共享的设备的初始化、读取、中断和卸载的仿真。
[0041]作为本发明中一种三模冗余计算机数字仿真系统的一种优选方案,计算机间通信和同步仿真模块包含:
[0042]计时模块,记录计算机的运行时钟周期数;在获得令牌处理模块的启动指令后,运行约定的同步周期,然后停止运行,等待新的令牌到来;
[0043]令牌处理模块,获取令牌后启动当前计算机,执行约定的同步周期,运行完毕后向下一个计算机传递令牌。
[0044]如图2所示,三模冗余计算机数字仿真系统组成可以抽象为两类,即处理器和外围设备,其中前者为运算器和控制器,后者包括地址空间的所有设备(假设只有内存映射模式)。根据该定义,嵌入式系统抽象为处理器和设备两类,通过两者的关系组合形成复杂系统。
[0045]仿真框架主体分为两部分,一是处理器表,包括处理器配置信息、外部访问的接口以及处理器地址空间的映射信息;二是设备表,包括设备配置信息、外部访问设备的函数接口以及所属的处理器号。处理器地址空间的映射包括地址段和设备编号,如处理器I地址空间0x80000000起始的IMB为设备I。处理器和设备之间的相互访问都通过各自信息表提供的函数接口,如处理器可以读写设备,设备可以向处理器触发中断等。
[0046]为实现软件模拟的高速运行,多个数字仿真计算机通常采用独立线程,时钟计算相互独立,在多核多线程宿主机上运行时,计算机之间可能产生较大仿真时间偏差,如一个计算机完成1000个时钟周期仿真,而另一个可能只完成500个时钟周期。嵌入式系统通常对多机之间的时序要求非常高,为保证机间的协同执行,避免时钟周期偏差,多个计算机之间应每隔一段时间进行同步,但是同步周期的大小非常关键,过小会降低仿真性能,而过大则可能造成时序语义错误,因此需要根据实际仿真环境进行调优。
[0047]针对仿真多机的时钟同步问题,提出基于令牌环的传递机制,如图3所示,通过用户可配置的同步周期设置,计算机在规定仿真时间节点进行同步,只有获得令牌的计算机才能够继续执行,否则必须等待其他处理器令牌的到达。根据令牌的粒度,可以精确控制多个计算机之间的同步节拍,如每个时钟周期都同步,抑或是每1000个时钟周期同步等。
[0048]上面对本发明的实施方式做了详细说明。但是本发明并不限于上述实施方式,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。
【主权项】
1.一种三模冗余计算机数字仿真系统,其特征在于,包括以下模块: 处理器仿真模块,实现指令集、寄存器、存储空间和流水线的时钟精确仿真; 设备仿真模块,完成处理器私有的设备功能仿真或处理期间共享的设备功能仿真; 计算机间通信和同步仿真模块,完成三模冗余计算机处理器之间的通信和同步控制功會K。
2.如权利要求1所述的一种三模冗余计算机数字仿真系统,其特征在于,处理器仿真模块包含: 指令集仿真模块,实现指令集的逻辑功能仿真; 寄存器仿真模块,实现寄存器的时钟精确仿真; 存储空间仿真模块,实现存储层次的时钟精确仿真; 流水线仿真模块,实现流水线的时钟精确仿真。
3.如权利要求1所述的一种三模冗余计算机数字仿真系统,其特征在于,设备仿真模块包含: 处理器私有的设备功能仿真,完成处理器私有的设备的初始化、读取、中断和卸载的仿真; 处理器共享的设备功能仿真,完成处理器共享的设备的初始化、读取、中断和卸载的仿真。
4.如权利要求1所述的一种三模冗余计算机数字仿真系统,其特征在于,计算机间通信和同步仿真模块包含: 计时模块,记录计算机的运行时钟周期数;在获得令牌处理模块的启动指令后,运行约定的同步周期,然后停止运行,等待新的令牌到来; 令牌处理模块,获取令牌后启动当前计算机,执行约定的同步周期,运行完毕后向下一个计算机传递令牌。
【专利摘要】本发明属于计算机仿真技术领域,具体涉及一种三模冗余计算机数字仿真系统。一种三模冗余计算机数字仿真系统,包括以下模块:处理器仿真模块,实现指令集、寄存器、存储空间和流水线的时钟精确仿真;设备仿真模块,完成处理器私有的设备功能仿真或处理期间共享的设备功能仿真;计算机间通信和同步仿真模块,完成三模冗余计算机处理器之间的通信和同步控制功能。发明公开了一种三模冗余计算机数字仿真系统,其具有以下有益效果:(1)以三模冗余计算机构建为例,可扩展为更多计算机冗余架构;(2)实现冗余计算机间不同粒度的同步,保证性能和精度的权衡;(3)支持不同处理器和设备的替换,实现跨平台支持。
【IPC分类】G06F17-50
【公开号】CN104573288
【申请号】CN201510062150
【发明人】魏明, 任永青, 刘姝, 李尚杰, 周启平, 程胜
【申请人】北京神舟航天软件技术有限公司
【公开日】2015年4月29日
【申请日】2015年2月5日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1