一种热备份计算机中多模冗余总线容错架构及其控制方法与流程

文档序号:14296073阅读:97来源:国知局

本发明涉及一种热备份计算机中多模冗余总线容错架构及其控制方法,特别适用于总线数据量庞大且具有长时间高可靠任务需求的多模冗余热备份计算机系统中,属于通信技术领域。



背景技术:

传统热备份计算机中均采用单总线方式与其他敏感器、执行机构、部件以及其它分系统通信,这种总线具有结构简单、造价低、容易实现等优点,但同时其存在三个显著的缺点:

1、当控制周期较短,且每个控制周期内需要传输的总线数据量较大时,单总线方式无法满足需求。

2、单总线结构中,若总线故障会引起制导导航控制分系统功能失效,无法满足长时间高可靠的性能需求。

3、在单总线结构中,除总线故障外,总线控制器故障也会引起总线通讯故障,造成单机失效,系统降级。

空间站具有多个舱段,制导导航控制分系统庞大,与传统航天器相比,需要更多的敏感器、执行机构以及部件与制导导航控制计算机配合完成制导导航控制任务,即制导导航控制计算机需要跟更多的敏感器、执行结构、部件及其它分系统通信,造成星载总线每个控制周期需要传输的数据量增大,负载加重。单总线结构中,当星载总线数据传输速率一定时,总线数据量增加势必使传输所耗机时加大。当控制周期较短时,总线传输时间将成为系统性能瓶颈,不能满足制导导航控制分系统对总线的需求。

空间站要求在轨工作15年,这就要求制导导航控制分系统总线能够长时间高可靠地工作。单总线结构亦不能满足此需求。

空间站制导导航控制计算机采用拜占庭容错结构,设计有4台单机,是一种多机热备份计算机。拜占庭容错体系一个重要特点是各个单机可以分工同时获取异源敏感器数据,然后通过热备份计算机内部交换比对,确保每台单机获得全部、统一的正确数据,作为决断依据。若采用单总线结构,拜占庭容错体系中各个单机分工同时获取异源数据的优势不能发挥,使系统性能降低。



技术实现要素:

本发明解决的技术问题是:克服现有技术的不足,提出一种热备份计算机多模冗余总线容错架构及其控制方法。空间站制导导航控制分系统设计寿命长,机构复杂,部件多,制导导航控制计算机与敏感器以及制导导航控制计算机与执行机构之间存在大量的数据传输。为了突破传统单总线结构数据传输速率小的瓶颈,并满足空间站长寿命高可靠性的要求,需要设计一种适用于拜占庭容错架构的热备份计算机多模冗余总线容错架构及其控制方法,以满足空间站制导导航控制分系统对总线高效,长期高可靠的性能要求。

本发明的技术解决方案是:

一种热备份计算机多模冗余总线容错架构,该容错架构包括热备份控制计算机和m条总线,m为自然数且m大于等于2;其中热备份计算机中含有k个单机,k为自然数且k大于等于4;每个单机上包含有n路总线控制器,n为自然数;热备份计算机中总线控制器的总数(k×n)为m的f倍,f为自然数,f大于等于2,且m优选不小于n;热备份计算机中k×n个总线控制器均匀分布在m条总线上;所述的多模冗余总线架构为:总线数量m大于等于2且热备份计算机中总线控制器总数(k×n)为m的f倍,f为自然数,f大于等于2;

当m为偶数时,上述的m条总线中,出现故障的总线数大于等于m/2时,热备份计算机不能正常工作;

当m为奇数时,上述的m条总线中,出现故障的总线数大于等于(m-1)/2时,热备份计算机不能正常工作;

热备份计算机中的每个单机最多能够控制两条总线;

当某条总线上的当班总线控制器发生故障时,需要将该条总线上处于监听/休眠状态的总线控制器切换为当班总线控制器,该过程中优先保证各个单机仍只控制一条总线。

一种热备份计算机多模冗余总线容错架构的控制方法,该方法的步骤包括:

(1)建立m条总线上总线控制器的当班优先级查询列表,记为表i,该列表包括了所有总线控制器当班情况,该表中每一项代表一种当班情况,第一项的优先级最高,依次类推;

(2)建立每个单机上的总线控制器的状态以及该单机自己负责的总线的状态列表,记为表ii;

(3)建立热备份计算机中所有的总线控制器的状态及m条总线状态列表,记为表iii;

(4)建立当前当班控制列表,记为表iv,各个单机按照该表进行总线控制器当班设置;

(5)热备份计算机中每个单机均在每个控制周期检测本单机上的总线控制器的状态以及该单机负责的总线状态,实时更新步骤(2)中的表ii;更新后的表ii在各个单机之间进行数据交换;每个单机通过与其它单机进行数据交换得到其它单机的表ii内容后,将自己更新后的表ii以及其它单机的表ii进行汇总并根据汇总结果对步骤(3)中的表iii进行更新,更新时如果发现某条总线故障,则把能够控制该总线的所有总线控制器无条件置于故障状态;如果每条总线上的所有总线控制器故障,则无条件将该总线置于故障状态;

(6)当m条总线和热备份计算机中所有的总线控制器均无故障时,每个单机优先选择表i中的第一项代表的当班情况作为当班项,并把该当班项写入表iv;

当有任一总线或任一控制器故障时,首先更新表ii,更新后的表ii在各个单机之间进行数据交换,每个单机将自己更新后的表ii以及其他单机的表ii进行汇总后对步骤(3)中的表iii进行更新;更新后根据表i中的优先级顺序选择第二项作为当班项;

(7)该当班项与表iii中的控制器状态位按位与,根据按位与的结果分情况说明如下:

第一种情况,如果按位与后的结果与该当班项相同,则把该当班项写入表iv;

第二种情况,如果按位与后的结果与该当班项不同,则检查表iii中的总线状态位,如果按位与结果中与当班项不同的bit位对应的总线控制器所控制的总线在表iii中的总线状态位中已经标记为故障状态,且m条总线中故障总线条数不大于(m-1)/2或m/2条,则将按位与结果写入表iv;

若不符合上述两种情况,则放弃该当班项,根据表i中的优先级顺序选择第三项作为当班项;

(8)重复步骤(7),以此类推,直至遍历完表i中的所有当班情况,如果仍然没有满足要求的当班情况,则热备份计算机失效。

有益效果

(1)根据空间站制导导航控制分系统特性,设计一种包含m条总线的热备份计算机多模冗余总线容错架构。根据任务需求,使众多的敏感器、执行结构合理的分布于m条总线上。空间站制导导航控制计算机的各个单机设计有n路总线控制线路,分别连接在m条总线中的n条总线。正常情况下,每台单机控制一条总线,即每台单机的一路总线控制器工作在主控模式,其他n-1路总线控制器作为冗余备份工作在监听/休眠模式。此时各个单机可以同时获取异源敏感器信息,然后通过交换比对将各自获得的敏感器数据分发给其它所有单机,最终使每个单机获得全部敏感器数据。各个单机根据控制算法和敏感器数据经过计算将控制命令通过各自负责的总线同时发送给各个执行机构。此种热备份计算机多模冗余总线容错架构可以大大提高总线访问效率,降低总线访问时间。

(2)整机工作工程中,可以对总线状态和总线控制器的状态进行周期性检测和诊断,当发现工作在主控模式的控制器故障后,通过合理有效的总线控制方法让工作在监听/休眠模式的总线控制器接替故障总线控制器,使系统性能不受影响。

(3)采用该种热备份计算机多模冗余总线容错架构及其控制方法,满足了复杂长寿命制导导航控制分系统对总线长期高可靠且总线数据吞吐带宽高的性能要求。

附图说明

图1为实施例中容错架构的结构组成及总线控制器与总线的连接示意图。

具体实施方式

一种热备份计算机多模冗余总线容错架构,该容错架构包括热备份控制计算机和m条总线,m为自然数且m大于等于2;其中热备份计算机中含有k个单机,k为自然数且k大于等于4;每个单机上包含有n路总线控制器,n为自然数;热备份计算机中总线控制器的总数(k×n)为m的f倍,f为自然数,f大于等于2,且m优选不小于n;热备份计算机中k×n个总线控制器均匀分布在m条总线上;所述的多模冗余总线架构为:总线数量m大于等于2且热备份计算机中总线控制器总数(k×n)为m的f倍,f为自然数,f大于等于2;

根据空间站制导导航控制分系统级总线冗余、热备份控制计算机每个单机能够接纳总线控制器的吞吐能力以及如何实现总线任务均摊、整机效率最大化,制定以下总线控制规则:

当m为偶数时,上述的m条总线中,出现故障的总线数大于等于m/2时,热备份计算机不能正常工作;

当m为奇数时,上述的m条总线中,出现故障的总线数大于等于(m-1)/2时,热备份计算机不能正常工作;

热备份计算机中的每个单机最多能够控制两条总线;

当某条总线上的当班总线控制器发生故障时,需要将该条总线上处于监听/休眠状态的总线控制器切换为当班总线控制器,该过程中优先保证各个单机仍只控制一条总线。

一种热备份计算机多模冗余总线容错架构的控制方法,该方法的步骤包括:

(1)建立m条总线上总线控制器的当班优先级查询列表,记为表i,该列表包括了所有总线控制器当班情况,该表中每一项代表一种当班情况,第一项的优先级最高,依次类推;

(2)建立每个单机上的总线控制器的状态以及该单机自己负责的总线的状态列表,记为表ii;

(3)建立热备份计算机中所有的总线控制器的状态及m条总线状态列表,记为表iii;

(4)建立当前当班控制列表,记为表iv,各个单机按照该表进行总线控制器当班设置;

(5)热备份计算机中每个单机均在每个控制周期检测本单机上的总线控制器的状态以及该单机负责的总线状态,实时更新步骤(2)中的表ii;更新后的表ii在各个单机之间进行数据交换;每个单机通过与其它单机进行数据交换得到其它单机的表ii内容后,将自己更新后的表ii以及其它单机的表ii进行汇总并根据汇总结果对步骤(3)中的表iii进行更新,更新时如果发现某条总线故障,则把能够控制该总线的所有总线控制器无条件置于故障状态;如果每条总线上的所有总线控制器故障,则无条件将该总线置于故障状态;

(6)当m条总线和热备份计算机中所有的总线控制器均无故障时,每个单机优先选择表i中的第一项代表的当班情况作为当班项,并把该当班项写入表iv;

当有任一总线或任一控制器故障时,首先更新表ii,更新后的表ii在各个单机之间进行数据交换,每个单机将自己更新后的表ii以及其他单机的表ii进行汇总后对步骤(3)中的表iii进行更新;更新后根据表i中的优先级顺序选择第二项作为当班项;

(7)该当班项与表iii中的控制器状态位按位与,根据按位与的结果分情况说明如下:

第一种情况,如果按位与后的结果与该当班项相同,则把该当班项写入表iv;

第二种情况,如果按位与后的结果与该当班项不同,则检查表iii中的总线状态位,如果按位与结果中与当班项不同的bit位对应的总线控制器所控制的总线在表iii中的总线状态位中已经标记为故障状态,且m条总线中故障总线条数不大于(m-1)/2或m/2条,则将按位与结果写入表iv;

若不符合上述两种情况,则放弃该当班项,根据表i中的优先级顺序选择第三项作为当班项;

(8)重复步骤(7),以此类推,直至遍历完表i中的所有当班情况,如果仍然没有满足要求的当班情况,则热备份计算机失效。

实施例

根据任务需求,空间站制导导航控制分系统中采用热备份计算机多模冗余总线容错架构,该容错架构包括热备份控制计算机和m=4条总线,其中热备份计算机中含有k=4个单机,每个单机上包含有n=3路总线控制器,热备份计算机中总线控制器的总数为k×n=12;每个单机上的n=3路总线控制器分布于不同的总线上,热备份计算机中k×n=12个总线控制器均匀分布在m=4条总线上,如图1所示;即空间站制导导航控制分系统采用k=4,m=4,n=3的热备份计算机多模冗余总线容错结构;

根据空间站制导导航控制分系统级总线冗余、热备份计算机每个单机能够接纳总线控制器的吞吐能力以及如何实现总线任务均摊、整机效率最大化,以下为总线控制规则:

(1)热备份计算机能够容忍四条总线中任意二条总线故障(或者负责本条总线的所有总线控制器故障),三条以上总线故障,热备份计算机故障。

(2)每个单机最多能够控制两条总线;

(3)当总线控制器故障,需要总线控制权切换时,优先保证各个单机仍只控制一条总线,其次要保证切换开销最小;

上述的空间站制导导航控制分系统中采用的热备份计算机多模冗余总线容错架构的控制方法,步骤包括:

(1)建立4条总线上总线控制器的当班优先级查询列表,记为附表1,该列表包括了所有总线控制器当班情况,该表中每一项代表一种当班情况,第一项的优先级最高,依次类推;

(2)建立每个单机上的总线控制器的状态以及该单机自己负责的总线的状态列表,记为附表2;

(3)建立热备份计算机中12个总线控制器的状态及4条总线状态列表,记为附表3;

(4)建立当前当班控制列表,记为附表4,各个单机按照该表进行总线控制器当班设置;

(5)热备份计算机中每个单机均在每个控制周期检测本单机上的总线控制器的状态以及该单机负责的总线状态,实时更新步骤(2)中的附表2;更新后的附表2在各个单机之间进行数据交换;每个单机通过与其它单机进行数据交换得到其它单机的附表2内容后,将自己更新后的附表2以及其它单机的附表2进行汇总并根据汇总结果对步骤(3)中的附表3进行更新,更新时如果发现某条总线故障,则把能够控制该总线的所有总线控制器无条件置于故障状态;如果每条总线上的所有总线控制器故障,则无条件将该总线置于故障状态;

(6)当4条总线和热备份计算机中所有的总线控制器均无故障时,每个单机优先选择附表1中的第一项代表的当班情况作为当班项,并把该当班项写入附表4;

当有任一总线或任一控制器故障时,首先更新附表2,更新后的附表2在各个单机之间进行数据交换,每个单机将自己更新后的附表2以及其他单机的表ii进行汇总后对步骤3中的附表3进行更新;更新后根据附表1中的优先级顺序选择第二项作为当班项;

(7)该当班项与附表3中的控制器状态位按位与,根据按位与的结果分情况说明如下:

第一种情况,如果按位与后的结果与该当班项相同,则把该当班项写入附表4;

第二种情况,如果按位与后的结果与该当班项不同,则检查附表3中的总线状态位,如果按位与结果中与当班项不相同的bit位对应的总线控制器所控制的总线在附表3中的总线状态位中已经标记为故障状态,且4条总线中故障总线条数不大于2条,则将按位与结果写入附表4;

若不符合上述两种情况,则放弃该当班项,根据附表1中的优先级顺序选择第三项作为当班项;

(8)重复步骤7,以此类推,直至遍历完附表1中的所有当班情况,如果仍然没有满足要求的当班情况,则热备份计算机失效。

附表说明

附表14条总线上总线控制器的当班优先级查询列表

附表1说明:

当班优先级查询列表由当班项构成,每个当班项包括4个字段,每个字段为3bit。每bit的定义如附表1.1所示:

附表1.1当班优先级查询列表当班项定义表

附表2单机总线控制器的状态以及该单机自己负责的总线的状态列表

a机

b机

c机

d机

附表3热备份计算机中12个总线控制器的状态及4条总线状态列表

附表4当前当班控制列表

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1