CN101207408A - 一种用于主备倒换的综合故障检测装置和方法 - Google Patents
一种用于主备倒换的综合故障检测装置和方法 Download PDFInfo
- Publication number
- CN101207408A CN101207408A CNA2006101680703A CN200610168070A CN101207408A CN 101207408 A CN101207408 A CN 101207408A CN A2006101680703 A CNA2006101680703 A CN A2006101680703A CN 200610168070 A CN200610168070 A CN 200610168070A CN 101207408 A CN101207408 A CN 101207408A
- Authority
- CN
- China
- Prior art keywords
- partner
- machine
- main frame
- cpu
- register
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Hardware Redundancy (AREA)
Abstract
本发明公开了一种用于主备倒换的综合故障检测装置和方法,涉及应用通信领域,为提供主备倒换条件综合检测而发明。主备倒换的综合故障检测装置的本机和伙伴机结构上对称,均包括CPU、以及通过CPU地址/数据/控制总线与该CPU相连的可编程控制电路模块、通信接口模块、硬件复位寄存器和软件复位寄存器,可编程控制电路模块内部包含有累加计数器。主备倒换的综合故障检测方法包括步骤:可编程控制电路及应用软件进行初始化;本机、伙伴机周期性地进行状态检测和数据同步,并根据检测结果决定是否在硬件复位寄存器和软件复位寄存器写入标志。本发明适用于重要工作单元需要具有主备倒换功能的通信和控制总线的分布式的系统。
Description
技术领域
本发明涉及通信领域,尤其涉及一种应用通信和控制总线的分布式的体系,其中的重要工作单元需要具有主备倒换功能。
背景技术
在具有通信和控制总线的分布式的体系中,经常需要为比较重要的单元提供热备份(所谓热备份,是指备份的单元处于上电状态,在受保护的单元失效的时候,能够自动进入工作状态,代替失效单元的功能,同时不影响系统中其他单元的正常工作)。
专利1494228谈及一种实现单板主备倒换的方法及其电路,在本单板和对方板上分别设置状态监控,接收对方板的状态信息,根据对方板所处状态,调整本单板状态;对方板接收本单板的状态信息后,作相应状态调整。该专利使用的电路包括与门、非门、异或门和上下拉电阻。不需在背板和其它单板上增加控制模块以参与主备倒换,这就使背板设计可以做到无源,因而简化了设计,而且避免了在控制模块失效时无法带电更换的缺陷,在一定程度上提高了系统的可靠性。当单板出现故障时,可以在不影响主板业务的情况下更换备用故障单板。而专利1463081则指出了一种通信设备中实现主备设备快速倒换的方法,包括利用FPGA(现场可编程门列阵)建立主备设备倒换控制模块,主备设备倒换控制模块包括:主备设备倒换检测子模块、主备设备倒换指令发出子模块及执行,主备设备的倒换速度有所提高。专利1437326提供了一种通讯设备中的主备倒换方法,在主备倒换系统的两块单板上设置四条状态信号线,即本板实际态信号线、本板申请态信号线、对板实际态信号线和对板申请态信号线,能够在主备倒换过程中对主备板的状态进行制约,可以避免两块单板双主状态的出现,并协调两块单板状态的跃迁,使得两块单板的主备倒换过程快速可靠,减少对业务处理的影响。
现有的技术中,要实现主备倒换的快速诊断和处理,往往需要对整个系统架构,尤其是背板和其他单元进行很大的改造,实现热备份往往带来业务的中断,不能自动的实现工作状态和备用状态的灵活迁移,不能在主备之间数据同步的基础上快速实现倒换,并且往往会影响到系统中其他单元的工作,或者需要对其他单元的软硬件结构进行改变。
发明内容
本发明所要解决的一个技术问题是提供一种用于主备倒换的综合故障检测装置,对设备软件故障和硬件故障提供综合检测,进一步可以实现设备软硬件运行可靠性的保障。
本发明所要解决的另一个技术问题是提供一种用于主备倒换的综合故障检测方法,为设备的主备倒换提供硬件故障和软件故障的综合检测,为设备的主备倒换提供一个综合的判据。
为解决上述第一个技术问题,本发明所采用的技术方案为:一种用于主备倒换的综合故障检测装置,包括互为主备状态的主机和伙伴机,主机和伙伴机在结构上是对称的,各自均包括CPU、以及通过CPU地址/数据/控制总线与该CPU相连的可编程控制电路模块、通信接口模块、硬件复位寄存器和软件复位寄存器;其中,可编程控制电路模块用于进行逻辑控制,通信接口模块用于主机和伙伴机之间数据同步和备份;通信接口模块的状态和属性由可编程控制电路模块控制;主机和伙伴机之间连有主备检测和控制线;硬件复位寄存器用于记录硬件异常,软件复位寄存器用于记录软件异常;主机、伙伴机周期性地进行状态检测和数据同步,并根据检测结果决定是否在硬件复位寄存器和软件复位寄存器写入标志。
其中,所述可编程控制电路模块内部包含有累加计数器;该累加计数器通过地址/数据/控制总线挂接在CPU上,用于对CPU的并行输入/输出的计数;CPU通过地址/数据/控制总线完成对主机和伙伴机中所述累加计数器的读写;连接主机和伙伴机的信号有:伙伴机中所述累加计数器的当前值的信号和伙伴机对主机的清零信号。
上述装置还包括系统控制总线和系统数据总线;该系统控制总线和系统数据总线与所述CPU、可编程控制电路模块、主备检测和控制线组成所述主备倒换的综合故障检测装置的控制部分,用于在确认倒换信号后执行逻辑组合、复位和倒换动作。
在主机和伙伴机上分别设置有手动切换健。
为解决上述第二个技术问题,本发明所采用的技术方案为:一种用于主备倒换的综合故障检测方法,包括步骤:
(1)可编程控制电路及应用软件进行初始化;
(2)主机、伙伴机周期性地进行状态检测和数据同步,并根据检测结果决定是否在硬件复位寄存器和软件复位寄存器写入标志。
其中,所述步骤(1)具体为:
(11)可编程控制电路进行初始化设置,设置主机和伙伴机的主备状态,及可编程控制电路逻辑以及处理策略;
(12)应用软件进行初始化,如果状态为“主”,应用软件进入正常的初始化过程,创建和启动所有的应用层进程,如果状态为“备”,则只创建和启动进行数据备份和定时检测的相关进程,其余的应用进程不创建和启动。
所述步骤(2)具体为:
当伙伴机发现自身硬件和软件出现异常,则通过主备检测和控制线分别选择写入主机的硬件复位寄存器和软件复位寄存器;
当主机当向伙伴机周期性的发送HELLO包无应答,或主机与伙伴机之间数据同步不成功,或主机收到伙伴机的自杀申请,则根据处理策略决定是否写入标志软件复位寄存器;
当主机检测到伙伴机硬件异常,包括伙伴机的CPU的“心跳”故障,则在主机的硬件复位寄存器写入标志。
其中,所述主机对伙伴机的CPU的“心跳”故障检测的步骤具体为:
(a1)主机的CPU对主机可编程控制电路内部的累加计数器进行周期性的累加,伙伴机的CPU对伙伴机可编程控制电路内部的累加计数器进行周期性的累加;
(a2)伙伴机的CPU对主机可编程控制电路内部的累加计数器定期置零,当有伙伴机的清零信号到达时,主机的累加计数器便复位到零,重新开始计数;否则主机的累加计数器一直计数到溢出为止;
(a3)定期查看主机和伙伴机的累加计数器的状态;若伙伴机的累加计数器的数据发生静止,和/或主机累加计数器的内容不被周期性地清零,则主机判断伙伴机的CPU“心跳”出现故障。
伙伴机的累加计数器的输入时钟信号同时作为主机累加器的清零信号。
主机和伙伴机之间综合故障检测是相互对称的。
在所述步骤(2)之后还包括步骤:
(3)CPU不断读取硬件复位寄存器和软件复位寄存器的状态,并根据处理策略决定是否启动异常处理。
所述步骤(3)具体为:
若主机检测到伙伴机出现故障,则仅对伙伴机进行复位;若伙伴机检测到主机出现故障,则在对主机进行复位的同时,在主机和伙伴机之间进行主备状态倒换。
上述方法还支持主机和伙伴机之间的手动切换。
与现有技术相比,主备用机的硬件和软件模块体系完全一致,能够对系统进行灵活的升级,最大限度的保证原有背板和工作单元不动,各个工作单元能够独立升级,实现热备份,减小了开发,生产和维护的工作量。
采用本发明所述方法,可以不仅仅对系统中的关键单元进行备份,任何单元都可以在不影响背板和其他单元的结构的情况下,实现热备份;对互连环境的要求简单,任何一个单元发生主备倒换,都不影响到其他单元的正常运行,甚至可以不知晓,也可以独立发出报警。
当工作单元发现自身软件或者硬件出现异常时,亦可以在对方的硬件复位寄存器和软件复位寄存器写入标志,主动要求主备倒换。
采用本发明所描述的心跳故障检测装置,倒换检测电路逻辑清晰,控制简单,最大限度的防止了误判,完全适合硬件故障的检测。
通过采用本技术,提高了控制系统的可靠性,使得主备单元相对独立,便于实现自动倒换,自动回复,便于和其他各种冗余方式结合使用。
附图说明
图1是本发明所述主备倒换的综合故障检测装置的系统结构图。
图2是本发明所述的主备倒换的综合故障检测方法的主备倒换故障判断过程。
图3是一种用于主备倒换的心跳故障检测装置。
图4是主备控制板心跳故障检测装置。
具体实施方式
为了克服现有技术中的复杂性和低可靠性等缺点,本发明是基于分布式的结构,多个相互通讯的单元组成的系统中,提出了一种主备倒换条件综合检测的硬件装置和方法,对设备软件故障和硬件故障提供综合检测,为设备的主备倒换提供一个综合的判据。进一步可以实现设备软硬件运行可靠性的保障。
要实施检测的目标包括:
1.主、备机作为控制器与系统中其他单元之间的通信是否正常;
2.主、备机之间的通信是否正常;
3.主、备机的硬件是否有故障;
4.主、备机的应用软件模块是否正常运行。
作为综合检测的硬件装置部分,这里还提出了一种主备倒换心跳检测的硬件装置,该装置为系统控制部分进行主备倒换操作提供了基于硬件检测的判断依据。
如图1所示,主备倒换条件综合检测的硬件装置包括互为主备状态的主机1和伙伴机2,主机1和伙伴机2在结构上是对称的,各自均包括CPU、以及通过CPU地址/数据/控制总线A与该CPU相连的可编程控制电路模块、通信接口模块、硬件复位寄存器和软件复位寄存器;其中,可编程控制电路模块用于进行逻辑控制,通信接口模块用于主机和伙伴机之间数据同步、备份和故障判断;通信接口模块的状态和属性由可编程控制电路模块控制;主机和伙伴机制之间连有主备检测和控制线;硬件复位寄存器用于记录硬件异常,软件复位寄存器用于记录软件异常。
具体地,主机包括CPU1、可编程控制电路模块1、通信接口模块1、硬件复位寄存器H1和软件复位寄存器S1;伙伴机包括CPU2、可编程控制电路模块2、通信接口模块2、硬件复位寄存器H2和软件复位寄存器S2。
主备倒换条件综合检测系统由图1所示,由的检测部分和控制部分组成。其中检测部分包括CPU,可编程控制电路,主备检测和控制线,主要进行主备状态的识别和故障的检测和通知;控制部分包括CPU,可编程控制电路,主备检测和控制线,系统控制总线,并结合系统数据总线来实现,这部分主要用来在确认倒换信号后执行各种形式的逻辑组合,复位和倒换动作。
其中,H1用于记录伙伴机硬件异常,包括心跳检测故障;S1用于记录伙伴机软件异常,判断依据包括:
1、周期性的HELLO包无应答,则写入标志;
2、伙伴机之间数据同步不成功,则写入标志;
3、伙伴机自杀申请。
CPU中故障判断过程,读取H1,S1标志进行综合判断,并根据可编程逻辑电路设定的策略机制来进行处理。
基于硬件故障检测的心跳检测装置主要包括CPU,地址/数据/控制总线和可编程逻辑电路内部的累加计数器,其中硬件检测部分由累加计数器来实现,而主备倒换的控制部分由CPU来完成。累加计数器通过地址/数据/控制总线挂接在CPU上,CPU通过该总线完成对当前板和伙伴板累加计数器的读写。可编程逻辑电路内部的累加计数器完成对CPU的并行I/O(PIO)的计数功能。连接主备板的信号有:伙伴板的累加计数器的当前值的信号和伙伴板对本板的清零信号。
下面就针对实现的核心思想,算法和操作步骤进行描述:
步骤1:初始化过程——设置主、备状态,(主、备工作差别),及可编程控制电路逻辑,以及处理策略;
步骤2:主单元承担系统中必要的通信和控制功能,备份单元进入创建和启动进行数据备份和定时检测相关的进程;
步骤3:主、备单元周期性地进行状态检测和数据同步;
步骤4:不断读取S1,H1的状态;
步骤5:当主机发现自身硬件和软件出现异常,则通过主备检测和控制总线写入分别选择写入对方H2和S2,返回步骤;
步骤6:对主机来说,当向伙伴机周期性的发送HELLO包无应答;伙伴机之间数据同步不成功;收到伙伴机的自杀申请:则可以根据一定的策略决定是否写入标志S1;
步骤7:当发现伙伴机硬件异常,包括心跳检测故障等,则写入标志H1;
步骤8:当发现S1或者H1被写入,则根据逻辑处理策略决定是否启动对伙伴机异常的处理,返回步骤2。
其中基于硬件故障检测的心跳检测故障的方法是伙伴板通过读取主机累加计数器来相互判断故障,步骤是:
步骤一:通过伙伴板上的CPU2对主机上的累加计数器定期置0。
步骤二:主机上的CPU1对可编程逻辑电路内部的累加计数器每隔一定周期进行一次累加,该心跳信号直接反映了CPU1当前的工作状态。
步骤三:当有伙伴板的清零信号到达的时候,本板的累加计数器便会复位到零,重新开始计数。除非有伙伴板的清零信号到来,否则计数器一直计数到溢出为止。
步骤四:定期通过伙伴板的主备倒换控制总线查看累加计数器1和2的状态。
步骤五:当不能察觉“心跳”,也就是出现下面两种情况中的一种或全部,可以认为对方系统出了问题,CPU2实现对CPU1硬件故障的判断:
1、累加计数器1的数据发生静止;
2、累加计数器2的内容不被周期性地清0;
上述故障是多种情况下可能出现的结果,包括以下故障可能:
(1)CPU不能对伙伴板发出清零信号;
(2)清零信号发出,但对方没有收到;
(3)累加寄存器不能对自身周期性的加1;
(4)不能读取对方累加寄存器的状态。
主机和伙伴机之间综合故障检测是相互对称的。上述“心跳”检测装置在结构上对称,也适用于主机对伙伴板的监视,如果主机察觉不到伙伴板的“心跳”,即可判断认为备用板发生问题,也可以将备用板执行倒换操作。
主机对伙伴机的CPU的“心跳”故障检测的步骤具体为:
1、主机的CPU对主机可编程控制电路内部的累加计数器进行周期性的累加,伙伴机的CPU对伙伴机可编程控制电路内部的累加计数器进行周期性的累加;
2、伙伴机的CPU对主机可编程控制电路内部的累加计数器定期置零,当有伙伴机的清零信号到达时,主机的累加计数器便复位到零,重新开始计数;否则主机的累加计数器一直计数到溢出为止;
3、定期查看主机和伙伴机的累加计数器的状态;若伙伴机的累加计数器的数据发生静止,和/或主机累加计数器的内容不被周期性地清零,则主机判断伙伴机的CPU“心跳”出现故障。
下面结合附图,详细描述技术方案的实施。
在图1所示实施例中,检测部分包括CPU,可编程控制电路,主备检测和控制线,主要进行主备状态的识别和故障的检测和通知;控制部分包括CPU,可编程控制电路,主备检测和控制线,系统控制总线,并结合系统数据总线来实现,这部分主要用来在确认倒换信号后执行各种形式的逻辑组合,复位和倒换动作。
CPU通过地址/数据/控制总线来进行主备状态的检测,异常的识别,数据的同步,以及对出现异常后的处理。
FPGA由H1:硬件复位寄存器和S1:软件复位寄存器组成,其中H1用于记录伙伴机硬件异常,包括心跳检测故障,还可以接受对方的自杀申请(可以直接被写入);S1用于记录伙伴机软件异常,判断依据包括:
(1)主机和伙伴机之间周期性的相互发送HELLO包,如果一定时间内收不到对方的的应答,则写入主机标志S1;
(2)主机和伙伴机之间数据同步不成功,则写入标志S1;
(3)收到伙伴机的自杀申请,则写入标志S1。
主备检测和控制线包括:软件故障识别线、硬件故障识别线、主备标志识别线、复位线
通信接口承担了主机和伙伴机之间数据同步的工作,通讯接口的状态和属性受到FPGA的控制;可以通过通讯接口来进行数据同步,并周期性的相互发送HELLO包。
在智能光网络设备中,机架单元的分布式控制总线体系的实现主备倒换检测和控制的具体实施过程如下所述:
智能光网络设备中,控制板有一个以太网口用来进行主机和伙伴机之间的数据同步。FPGA的H1和S1寄存器用来标识和记录自身和伙伴机软件和硬件是否正常,缺省状况下设置为0;复位控制线负责控制另一个控制板的故障检测和复位。
节点上电初始化过程中,首先是FPGA初始化过程,FPGA初试设置主机和伙伴机的状态,完成初试化的FPGA通过软件故障识别线和硬件故障识别线,主备标志识别线查看伙伴机的状态。
当FPGA完成初始化设置后,应用软件进行初始化,在软件初试化之前首先查看FPGA主备状态寄存器的状态,不同的状态进入不同的初始化流程。如果状态是“主”,那么应用软件进入正常的初始化过程,创建和启动所有的应用层进程。如果状态是“备”,那么只创建和启动进行数据备份和定时检测的相关进程,其它应用进程不创建和启动。主备控制板都初试化完成后,主控制板运行应用软件的所有功能,备份控制板只负责检测主控制板状态,并且主备控制板的数据要同步,需要主控制板将数据库中的信息通过通讯接口备份到备控制板上。
当前工作的主控制板故障后,要发生主备倒换,故障的检测机制如下:
1、主机和伙伴机相互之间使用全双工的硬件故障识别线周期性的对对方进行心跳检测,如果一定时间内察觉不到对方的“心跳”,则将自己的H1寄存器设置为1。
2、如果主机认为自身出现了故障,可以通过软件故障识别线向伙伴机发出自杀申请,方法是直接写入对方的S2寄存器。
3、如果主机向对方周期性的发送HELLO包时,一定时间内收不到对方的应答,同时判断主机和伙伴机之间数据同步不成功,两种情况同时发生时可以写入自身软件故障寄存器S1设置为1(当然也可以设置策略为任何一种情况发生都可以置位自身的软件故障寄存器),如果收到伙伴机的自杀申请,也可以直接设置自身软件寄存器S1设置为1。
4、主机的CPU周期性的查看自己的H1和S1的状态,如果发现他们中的任何一个从缺省状态的0变成了1,则将对方复位,并发出告警。上述过程是对称的,也同样适用于伙伴机通过查看自身H2和S2寄存器的状态变化检测主机的故障。之所以同时选择软件和硬件两种故障检测机制,主要为考虑到单一机制的不可靠性,比如有时应用软件已经跑飞,但系统控制进程(响应“心跳”)的工作仍然正常进行的情况等。
当伙伴机发现主机出现异常时,对主控制板进行复位,在主机被复位的同时,主机和伙伴机的主备状态发生改变,并发出声光告警,同时向网管发出告警消息,通讯接口的状态也发生改变。
当主机发现自身出现异常时,也可以直接向伙伴机发出请求倒换申请;收到申请后,伙伴机对主机进行复位。
强制倒换的实施例:
强制倒换的机制实际就是给管理员提供了一种可以手动启动倒换的机制,在不需要理由的情况下,管理员可以按下主控制板或者备用板上的手动倒换键。主机和伙伴机之间支持手动切换。
其他机制都和实施例1所说的类似或相同,只是当强制信号到来时,当管理员按下手动倒换键,单板首先确认自己是主机还是伙伴机,如果是主机,则将伙伴机的H2寄存器置1;如果是伙伴机,则将主机的H1寄存器置1;如果上述操作没有效果,则管理员应该按下另外一个单板上的手动倒换键。
在这个机制基础上,也支持让主机被突然拔掉或者调电的时候,伙伴机一旦发现主机消失(通过主备检测和控制总线影响到H2和S2的状态),就马上启动倒换进程,将自己的状态由“备”转为“主”,同时启动应用软件进程,担负起数据处理和网元内部数据通讯的作用。
在图3所示实施例所述的情况是:
当系统正常工作时,主备板上的CPU分别通过并行IO(PIO)对本板上累加计数器进行累加操作。PIO由CPU控制每隔50ms产生一次翻转(心跳),该心跳信号直接反映了CPU当前的工作状态。
每检测到PIO上的一个上跳变,计数器便进行加一操作。除非有伙伴板的清零信号到来,否则计数器一直计数到全1(即1111)为止。在计数的过程中,当有伙伴板的清零信号到达的时候,本板的累加计数器便会复位到零,重新开始计数。
为了简化设计,本板的累加计数器的输入时钟(CPU的PIO)信号同时作为伙伴板累加计数器的清零信号,即CPU在控制本板累加计数器进行累加操作的同时还要复位伙伴板的累加计数器。
当下面两种情况同时出现时:
●当本板的累加计数器已经累加到全1时;
●伙伴板的累加计数器长期停留在某一固定值的时候。
认为伙伴板已经离线或者跑飞,应该产生中断通知主机CPU对伙伴板进行复位操作。因此主机判断伙伴机是否出现故障的可靠判断依据包括:1、累加计数器2的数据发生静止、2、累加计数器1的内容不被周期性地清0,则CPU1实现对CPU2硬件故障的判断。
由于主机和伙伴板的结构和逻辑设计相同,CPU2和CPU1同时进行相互的“心跳”检测进程,判断过程和判断依据相同。
这种检测结果可能发生在主用板也可能发生在备用板,当发生在主用板时,只需复位备用板即可;当发生在备用板时除了要复位主用板外,还要进行倒换操作。
当伙伴板不在线时,CPU需要屏蔽中断产生的条件,此时当前板恒为主用板。
在图4所示实施例所述的情况是:
智能光网络中的控制板主备故障检测装置由CPU,FPGA定时累加寄存器,FPGA定时检测寄存器,主备状态寄存器等组成。其中FPGA定时累加寄存器是一个4位的寄存器,FPGA定时检测寄存器是一个两比特寄存器,低位用来标识对方累加寄存器的状态,有故障为1;高位用来自身累加寄存器的状态,有故障为1;双方都正常的时候寄存器的值为00。
智能光网络中对控制板进行主备倒换操作时的故障检测过程是:
首先是FPGA初始化过程,FPGA初试设置主备控制板的FPGA主备状态寄存器都为备份状态,完成初试化的FPGA通过复位控制线查看另一控制板状态,如果状态为“主”,则将本板FPGA主备状态寄存器设置为“备”,反之设置为“主”。如果状态是“主”,那么应用软件进入正常的初始化过程,创建和启动所有的应用层进程。如果状态是“备”,那么只创建和启动进行数据备份和定时检测的相关进程。主备控制板的定时检测寄存器的缺省状态都是00。
备控制板对主控制板进行主备倒换故障“心跳检测”的机制如下:
1、主控制板CPU以50ms为周期将主控制板的FPGA定时累加寄存器加1;
2、如果主控制板FPGA定时累加寄存器不等于0,则备控制板将主控制板的定时累加寄存器置0,重复步骤1~2;
3、备份控制板的FPGA定时检测寄存器通过以200ms为周期检测主控制板FPGA定时累加寄存器的状态;
4、如果备份控制板发现主控制板的定时累加寄存器保持0,说明主控制板CPU失去对主控制板FPGA定时累加寄存器的累加操作能力,备控制板的定时检测寄存器低位置1;
5、备份控制板的FPGA定时检测寄存器以200ms为周期检测备控制板FPGA定时累加寄存器的状态;
6、如果备控制板的定时累加寄存器出现1111,说明主控制板无力对备控制板进行定期清零操作,备控制板的定时检测寄存器的高位置1;
7、如果备控制板的定时检测寄存器的值变成11,判断认为主控制板出现了故障,执行对主控制板的主备倒换进程。
上述过程中,主控制板检测备份控制板的故障也执行上述程序,判断依据相同。
Claims (13)
1.一种用于主备倒换的综合故障检测装置,包括互为主备状态的主机和伙伴机,其特征在于,主机和伙伴机在结构上是对称的,各自均包括CPU、以及通过CPU地址/数据/控制总线与该CPU相连的可编程控制电路模块、通信接口模块、硬件复位寄存器和软件复位寄存器;
其中,可编程控制电路模块用于进行逻辑控制,通信接口模块用于主机和伙伴机之间数据同步和备份;通信接口模块的状态和属性由可编程控制电路模块控制;主机和伙伴机之间连有主备检测和控制线;硬件复位寄存器用于记录硬件异常,软件复位寄存器用于记录软件异常;
主机、伙伴机周期性地进行状态检测和数据同步,并根据检测结果决定是否在硬件复位寄存器和软件复位寄存器写入标志。
2.根据权利要求1所述的综合故障检测装置,其特征在于,所述可编程控制电路模块内部包含有累加计数器;该累加计数器通过地址/数据/控制总线挂接在CPU上,用于对CPU的并行输入/输出的计数;CPU通过地址/数据/控制总线完成对主机和伙伴机中所述累加计数器的读写;
连接主机和伙伴机的信号有:伙伴机中所述累加计数器的当前值的信号和伙伴机对主机的清零信号。
3.根据权利要求2所述的综合故障检测装置,其特征在于,还包括系统控制总线和系统数据总线;该系统控制总线和系统数据总线与所述CPU、可编程控制电路模块、主备检测和控制线组成所述主备倒换的综合故障检测装置的控制部分,用于在确认倒换信号后执行逻辑组合、复位和倒换动作。
4.根据权利要求3所述的综合故障检测装置,其特征在于,在主机和伙伴机上分别设置有手动切换健。
5.一种用于主备倒换的综合故障检测方法,其特征在于,包括步骤:
(1)可编程控制电路及应用软件进行初始化;
(2)主机、伙伴机周期性地进行状态检测和数据同步,并根据检测结果决定是否在硬件复位寄存器和软件复位寄存器写入标志。
6.根据权利要求5所述的综合故障检测方法,其特征在于,所述步骤(1)具体为:
(11)可编程控制电路进行初始化设置,设置主机和伙伴机的主备状态,及可编程控制电路逻辑以及处理策略;
(12)应用软件进行初始化,如果状态为“主”,应用软件进入正常的初始化过程,创建和启动所有的应用层进程,如果状态为“备”,则只创建和启动进行数据备份和定时检测的相关进程,其余的应用进程不创建和启动。
7.根据权利要求6所述的综合故障检测方法,其特征在于,所述步骤(2)具体为:
当伙伴机发现自身硬件和软件出现异常,则通过主备检测和控制线分别选择写入主机的硬件复位寄存器和软件复位寄存器;
当主机当向伙伴机周期性的发送HELLO包无应答,或主机与伙伴机之间数据同步不成功,或主机收到伙伴机的自杀申请,则根据处理策略决定是否写入标志软件复位寄存器;
当主机检测到伙伴机硬件异常,包括伙伴机的CPU的“心跳”故障,则在主机的硬件复位寄存器写入标志。
8.根据权利要求7所述的综合故障检测方法,其特征在于,所述主机对伙伴机的CPU的“心跳”故障检测的步骤具体为:
(a1)主机的CPU对主机可编程控制电路内部的累加计数器进行周期性的累加,伙伴机的CPU对伙伴机可编程控制电路内部的累加计数器进行周期性的累加;
(a2)伙伴机的CPU对主机可编程控制电路内部的累加计数器定期置零,当有伙伴机的清零信号到达时,主机的累加计数器便复位到零,重新开始计数;否则主机的累加计数器一直计数到溢出为止;
(a3)定期查看主机和伙伴机的累加计数器的状态;若伙伴机的累加计数器的数据发生静止,和/或主机累加计数器的内容不被周期性地清零,则主机判断伙伴机的CPU“心跳”出现故障。
9.根据权利要求8所述的综合故障检测方法,其特征在于,伙伴机的累加计数器的输入时钟信号同时作为主机累加器的清零信号。
10.根据权利要求9所述的综合故障检测方法,其特征在于,主机和伙伴机之间综合故障检测是相互对称的。
11.根据权利要求5至10任一权利要求所述的综合故障检测方法,其特征在于,在所述步骤(2)之后还包括步骤:
(3)CPU不断读取硬件复位寄存器和软件复位寄存器的状态,并根据处理策略决定是否启动异常处理。
12.根据权利要求10所述的综合故障检测方法,其特征在于,所述步骤(3)具体为:
若主机检测到伙伴机出现故障,则仅对伙伴机进行复位;
若伙伴机检测到主机出现故障,则在对主机进行复位的同时,在主机和伙伴机之间进行主备状态倒换。
13.根据权利要求11所述的综合故障检测方法,其特征在于,主机和伙伴机之间支持手动切换。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006101680703A CN101207408B (zh) | 2006-12-22 | 2006-12-22 | 一种用于主备倒换的综合故障检测装置和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006101680703A CN101207408B (zh) | 2006-12-22 | 2006-12-22 | 一种用于主备倒换的综合故障检测装置和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101207408A true CN101207408A (zh) | 2008-06-25 |
CN101207408B CN101207408B (zh) | 2012-07-11 |
Family
ID=39567336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006101680703A Active CN101207408B (zh) | 2006-12-22 | 2006-12-22 | 一种用于主备倒换的综合故障检测装置和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101207408B (zh) |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101997815A (zh) * | 2009-08-20 | 2011-03-30 | 华为技术有限公司 | 一种串并转换接口异常恢复装置及方法 |
CN101770211B (zh) * | 2008-12-31 | 2011-12-14 | 中国航空工业第一集团公司第六三一研究所 | 可实现实时故障切换的车辆综合数据处理方法 |
CN101741601B (zh) * | 2008-11-06 | 2012-02-15 | 上海市医疗保险信息中心 | 结构化灾难备份系统和备份方法 |
CN102521086A (zh) * | 2011-12-08 | 2012-06-27 | 上海交通大学 | 基于锁步同步的双模冗余系统及其实现方法 |
CN101782754B (zh) * | 2009-12-30 | 2012-07-18 | 北京宇航系统工程研究所 | 一种用于运载火箭地面测试发控系统的冗余切换电路 |
CN103246585A (zh) * | 2013-05-06 | 2013-08-14 | 浙江宇视科技有限公司 | 一种存储控制器故障检测方法 |
CN103279404A (zh) * | 2013-05-07 | 2013-09-04 | 清华大学 | 一种基于心跳状态字的多机系统同步及可靠性检测方法 |
CN104065499A (zh) * | 2013-03-19 | 2014-09-24 | 鼎点视讯科技有限公司 | 主控板、主备系统、信息的备份方法及装置 |
CN104539466A (zh) * | 2015-01-21 | 2015-04-22 | 华为技术有限公司 | 数据发送方法和设备 |
CN105094004A (zh) * | 2014-05-12 | 2015-11-25 | 罗伯特·博世有限公司 | 用于运行控制设备的方法 |
CN105634779A (zh) * | 2014-11-04 | 2016-06-01 | 中兴通讯股份有限公司 | 主备设备的运行处理方法及装置 |
CN105656541A (zh) * | 2014-11-11 | 2016-06-08 | 武汉中兴软件有限责任公司 | 光网络保护控制器的部署方法、装置及网络管理系统 |
CN105974906A (zh) * | 2016-05-12 | 2016-09-28 | 深圳市中工巨能科技有限公司 | 一种双监控-激活测控装置 |
US9471408B2 (en) | 2011-05-30 | 2016-10-18 | Huawei Technologies Co., Ltd. | Method, node and system for determining fault indication state |
CN107438010A (zh) * | 2016-05-25 | 2017-12-05 | 中兴通讯股份有限公司 | 故障保护方法、第一、第二处理器、网络存储设备和系统 |
CN107819617A (zh) * | 2017-11-01 | 2018-03-20 | 京信通信系统(中国)有限公司 | 一种通信设备的监控方法和通信设备 |
CN108513196A (zh) * | 2018-04-08 | 2018-09-07 | 歌尔股份有限公司 | 一种无线耳机及其配对方法 |
CN108847879A (zh) * | 2018-06-14 | 2018-11-20 | 上海卫星工程研究所 | 基于总线控制器的双机故障检测及恢复方法 |
CN109459635A (zh) * | 2018-11-09 | 2019-03-12 | 杭州妙娱科技有限公司 | 虚拟现实游戏设备故障监测方法及装置 |
CN111065007A (zh) * | 2019-12-27 | 2020-04-24 | 电信科学技术第五研究所有限公司 | 一种光纤网络时频同步方法、装置、介质及设备 |
CN113917999A (zh) * | 2021-08-31 | 2022-01-11 | 湖南同有飞骥科技有限公司 | 一种控制板冗余切换和恢复的方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1109416C (zh) * | 2000-04-25 | 2003-05-21 | 华为技术有限公司 | 交换机的主备倒换方法及其实现装置 |
CN1275155C (zh) * | 2002-08-24 | 2006-09-13 | 中兴通讯股份有限公司 | 嵌入式操作系统中异常故障定位方法 |
CN100382452C (zh) * | 2005-11-15 | 2008-04-16 | 中兴通讯股份有限公司 | 一种实现主备倒换的装置和方法 |
-
2006
- 2006-12-22 CN CN2006101680703A patent/CN101207408B/zh active Active
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101741601B (zh) * | 2008-11-06 | 2012-02-15 | 上海市医疗保险信息中心 | 结构化灾难备份系统和备份方法 |
CN101770211B (zh) * | 2008-12-31 | 2011-12-14 | 中国航空工业第一集团公司第六三一研究所 | 可实现实时故障切换的车辆综合数据处理方法 |
CN101997815A (zh) * | 2009-08-20 | 2011-03-30 | 华为技术有限公司 | 一种串并转换接口异常恢复装置及方法 |
CN101997815B (zh) * | 2009-08-20 | 2013-01-02 | 华为技术有限公司 | 一种串并转换接口异常恢复装置及方法 |
CN101782754B (zh) * | 2009-12-30 | 2012-07-18 | 北京宇航系统工程研究所 | 一种用于运载火箭地面测试发控系统的冗余切换电路 |
US9471408B2 (en) | 2011-05-30 | 2016-10-18 | Huawei Technologies Co., Ltd. | Method, node and system for determining fault indication state |
CN102521086B (zh) * | 2011-12-08 | 2014-07-16 | 上海交通大学 | 基于锁步同步的双模冗余系统及其实现方法 |
CN102521086A (zh) * | 2011-12-08 | 2012-06-27 | 上海交通大学 | 基于锁步同步的双模冗余系统及其实现方法 |
CN104065499B (zh) * | 2013-03-19 | 2017-06-27 | 鼎点视讯科技有限公司 | 主控板、主备系统、信息的备份方法及装置 |
CN104065499A (zh) * | 2013-03-19 | 2014-09-24 | 鼎点视讯科技有限公司 | 主控板、主备系统、信息的备份方法及装置 |
CN103246585A (zh) * | 2013-05-06 | 2013-08-14 | 浙江宇视科技有限公司 | 一种存储控制器故障检测方法 |
CN103246585B (zh) * | 2013-05-06 | 2017-04-19 | 浙江宇视科技有限公司 | 一种存储控制器故障检测方法 |
CN103279404A (zh) * | 2013-05-07 | 2013-09-04 | 清华大学 | 一种基于心跳状态字的多机系统同步及可靠性检测方法 |
CN103279404B (zh) * | 2013-05-07 | 2016-06-15 | 清华大学 | 一种基于心跳状态字的多机系统同步及可靠性检测方法 |
CN105094004B (zh) * | 2014-05-12 | 2020-10-13 | 罗伯特·博世有限公司 | 用于运行控制设备的方法 |
CN105094004A (zh) * | 2014-05-12 | 2015-11-25 | 罗伯特·博世有限公司 | 用于运行控制设备的方法 |
CN105634779A (zh) * | 2014-11-04 | 2016-06-01 | 中兴通讯股份有限公司 | 主备设备的运行处理方法及装置 |
CN105634779B (zh) * | 2014-11-04 | 2019-09-03 | 南京中兴软件有限责任公司 | 主备设备的运行处理方法及装置 |
CN105656541A (zh) * | 2014-11-11 | 2016-06-08 | 武汉中兴软件有限责任公司 | 光网络保护控制器的部署方法、装置及网络管理系统 |
CN105656541B (zh) * | 2014-11-11 | 2019-09-06 | 武汉中兴软件有限责任公司 | 光网络保护控制器的部署方法、装置及网络管理系统 |
CN104539466B (zh) * | 2015-01-21 | 2018-10-30 | 华为技术有限公司 | 数据发送方法和设备 |
CN104539466A (zh) * | 2015-01-21 | 2015-04-22 | 华为技术有限公司 | 数据发送方法和设备 |
CN105974906A (zh) * | 2016-05-12 | 2016-09-28 | 深圳市中工巨能科技有限公司 | 一种双监控-激活测控装置 |
CN105974906B (zh) * | 2016-05-12 | 2019-12-17 | 深圳市中工巨能科技有限公司 | 一种双监控-激活测控装置 |
CN107438010A (zh) * | 2016-05-25 | 2017-12-05 | 中兴通讯股份有限公司 | 故障保护方法、第一、第二处理器、网络存储设备和系统 |
CN107819617A (zh) * | 2017-11-01 | 2018-03-20 | 京信通信系统(中国)有限公司 | 一种通信设备的监控方法和通信设备 |
CN107819617B (zh) * | 2017-11-01 | 2021-08-24 | 京信网络系统股份有限公司 | 一种通信设备的监控方法和通信设备 |
CN108513196A (zh) * | 2018-04-08 | 2018-09-07 | 歌尔股份有限公司 | 一种无线耳机及其配对方法 |
CN108513196B (zh) * | 2018-04-08 | 2020-02-21 | 歌尔股份有限公司 | 一种无线耳机及其配对方法 |
CN108847879A (zh) * | 2018-06-14 | 2018-11-20 | 上海卫星工程研究所 | 基于总线控制器的双机故障检测及恢复方法 |
CN109459635A (zh) * | 2018-11-09 | 2019-03-12 | 杭州妙娱科技有限公司 | 虚拟现实游戏设备故障监测方法及装置 |
CN111065007A (zh) * | 2019-12-27 | 2020-04-24 | 电信科学技术第五研究所有限公司 | 一种光纤网络时频同步方法、装置、介质及设备 |
CN113917999A (zh) * | 2021-08-31 | 2022-01-11 | 湖南同有飞骥科技有限公司 | 一种控制板冗余切换和恢复的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101207408B (zh) | 2012-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101207408B (zh) | 一种用于主备倒换的综合故障检测装置和方法 | |
CN104798349B (zh) | 响应于端口故障的故障转移 | |
JP5337022B2 (ja) | フォールト・トレランス・コンピューティング・システムにおけるエラー・フィルタリング | |
CN101589370B (zh) | 一种并行计算机系统以及在其上进行故障恢复的方法 | |
CN107229221A (zh) | 用于多个热和冷备用冗余的容错模式和切换协议 | |
US20070220367A1 (en) | Fault tolerant computing system | |
CN101192960A (zh) | 分布式体系中主备倒换检测和控制装置和方法 | |
CN102724083A (zh) | 基于软件同步的可降级三模冗余计算机系统 | |
JP2006178557A (ja) | コンピュータシステム及びエラー処理方法 | |
JP2008097164A (ja) | 複数の機能要素から構成されるシステムの故障監視方法 | |
CN101714108A (zh) | 同步控制设备、信息处理设备以及同步管理方法 | |
JP3595033B2 (ja) | 高信頼化コンピュータシステム | |
JP2011043957A (ja) | 障害監視回路、半導体集積回路及び故障個所特定方法 | |
CN110427283A (zh) | 一种双余度的燃油管理计算机系统 | |
WO2010100757A1 (ja) | 演算処理システム、再同期方法、およびファームプログラム | |
US10621024B2 (en) | Signal pairing for module expansion of a failsafe computing system | |
JP2008176477A (ja) | 計算機システム | |
CN111858187A (zh) | 一种电子设备及业务切换方法、装置 | |
JP5176914B2 (ja) | 伝送装置及び冗長構成部の系切替え方法 | |
JP2002024050A (ja) | コントローラシステム | |
US6581121B1 (en) | Maintenance link system and method | |
CN106656437A (zh) | 冗余热备平台 | |
CN100490343C (zh) | 一种通讯设备中主备用单元倒换的实现方法和装置 | |
KR100333484B1 (ko) | 이중화된 데이터 채널을 갖는 동시 쓰기 방식을 적용한결함 허용 제어 시스템 | |
JPH06325008A (ja) | リセット機能を備えるコンピュータシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |