CN102521086A - 基于锁步同步的双模冗余系统及其实现方法 - Google Patents
基于锁步同步的双模冗余系统及其实现方法 Download PDFInfo
- Publication number
- CN102521086A CN102521086A CN2011104072486A CN201110407248A CN102521086A CN 102521086 A CN102521086 A CN 102521086A CN 2011104072486 A CN2011104072486 A CN 2011104072486A CN 201110407248 A CN201110407248 A CN 201110407248A CN 102521086 A CN102521086 A CN 102521086A
- Authority
- CN
- China
- Prior art keywords
- lock
- visit
- visit data
- data bag
- inspection control
- 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
本发明公开一种基于锁步同步的双模冗余系统及其实现方法,该系统至少包含第一系统及第二系统,该第一系统包含计算单元核、互连模块、外设桥、I/O设备、检查控制单元、存储器控制器及存储器,该第二系统包含该计算单元核,同时,该第二系统至少还包含该外设桥、该I/O设备、该存储器控制器、该存储器其中之一以及该检查控制单元与该互连模块,其中,两个检查控制单元与两互连模块均相连,以同时接收两个计算单元核的访问信号进行对比,实现故障检测,本发明通过复制模块的增加,增大了单点故障的检测率和修复率,提高了系统整体可靠性,避免了单点失效引起的系统故障。
Description
技术领域
本发明涉及安全控制领域,特别是涉及一种基于锁步同步的双模冗余系统及其实现方法。
背景技术
在一些重要的安全行业领域,往往对于系统的可靠性有着极高的要求。双模锁步冗余容错系统通过对核进行复制,采用锁步同步方式运行,将其输出结果进行对比,可以发现系统运行中的故障,较好的满足了系统可靠性的要求,在工业领域有着强烈的应用需求。
在双模冗余系统中,双模备份的两个计算单元核在相同的时刻执行同一动作,该现象称为锁步同步。然而,目前常见的的锁步同步的双模冗余控制系统只是对CPU进行冗余设计,即,其中一个CPU为主CPU,进行系统控制和计算,另一个CPU是从CPU,仅用于将计算结果与主CPU进行对比,不执行控制功能,且仲裁控制模块单一。由于在这种双模冗余控制系统的架构中,其他模块并未考虑冗余设计,若这些部件出现故障,则系统将没有冗余备份。这样,当这些部件出现单点故障时,系统将输出错误而产生故障,导致系统无法正常运行。因此,传统的锁步双模冗余系统的主要缺点是不能检测到除核之外的其他单点故障引起的系统故障,系统总体可靠性不高;此外,对于系统的检查单元亦没有采用冗余结构,同样,出现故障则整个系统出现不可恢复故障。
综上所述,可知先前技术之锁步双模冗余系统存在无法检测除核之外的其他单点故障导致系统总体可靠性不高且出现故障时整个系统出现不可恢复故障的问题,因此实有必要提出改进的技术手段,来解决此一问题。
发明内容
为克服上述现有技术存在的不足,本发明的主要目的在于提供一种基于锁步同步的双模冗余系统及其实现方法,解决了双模锁步系统中可靠性低的问题。
为达上述及其它目的,本发明提供一种基于锁步同步的双模冗余系统,至少包含第一系统及第二系统,该第一系统包含计算单元核、互连模块、外设桥、I/O设备、检查控制单元、存储器控制器及存储器,该第二系统包含该计算单元核,同时,该第二系统至少还包含该外设桥、该I/O设备、该存储器控制器、该存储器其中之一以及该检查控制单元与该互连模块,其中,两个检查控制单元与两互连模块均相连,以同时接收两个计算单元核的访问信号进行对比,实现故障检测。
进一步地,该第二系统还包括该外设桥、该I/O设备、该存储器控制器、该存储器、该检查控制单元与该互连模块,两个计算单元核分别通过两互连模块、两检查控制单元与两存储器及两I/O设备相连,其中,两I/O设备分别通过两外设桥与两控制单元进行连接,两存储器分别通过两存储器控制器与两控制单元连接。
进一步地,每个检查控制单元至少包括缓冲器、同步对比器及执行器,其中,该缓冲器负责暂时存储来自该第一系统和该第二系统经过互连模块传送来的访问数据、地址和控制信号;该同步对比器负责将两个缓冲器中的数据进行对比;该执行器负责错误检测。
进一步地,若比较结果相同,则该执行器将任意一个系统的访问输出,同时将另一系统的访问数据、地址和控制信息删除;若比较结果不一致,则根据来自系统中所保持的工作状态信息,预先保留来自可靠性高的系统的访问,将来自剩下的系统的访问作为故障系统进行删除。
进一步地,若由于访问结果不相同而发生删除发生故障无法返回对系统响应时,该系统将通过一中断控制器在一定时间内发起异常中断响应。
为达上述及其他目的,本发明还提供一种基于锁步同步的双模冗余系统的实现方法,包括如下步骤:
系统初始化,第一系统与第二系统均进行自检;
从存储器中调用应用软件,以锁步模式运行;
当来自一系统的访问数据包到达检查控制单元时,将该访问数据包均存储于两检查控制单元的缓冲器中;
判断另一系统所对应的访问数据包是否到达;
若另一系统所对应的访问数据包已到达,则在同步比较器中进行两系统之访问数据包的对比;
根据对比结果,执行器删除冗余数据包,并将另一数据包输出。
进一步地,若两个数据包相同,则该执行器将来自任一系统的访问数据包作为冗余访问删除,将另一数据包的访问输出;若两个访问数据包不相同,则根据系统工作信息将可靠性高的系统的访问数据包保留输出,将另一系统的数据包删除。
进一步地,当该执行器将正确数据包输出后,访问的设备对比做出响应,并经过两检查控制单元将访问相应送至两个系统。
进一步地,该判断另一系统所对应的访问数据包是否到达之步骤通过一看门狗进行计时判断。
进一步地,若定时已到,同步访问所对应的同步数据包超时,则不执行访问数据包的对比,直接进行删除冗余数据包的步骤。
与现有技术相比,本发明一种基于锁步同步的双模冗余系统及其实现方法通过复制模块的增加,增大了单点故障的检测率和修复率,提高了系统整体可靠性,避免了单点失效引起的系统故障。
附图说明
图1为本发明一种基于锁步同步的双模冗余系统之系统架构图;
图2为图1中检查控制单元15的结构示意图;
图3为本发明一种基于锁步同步的双模冗余系统实现方法的步骤流程图。
具体实施方式
以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。
图1为本发明一种基于锁步同步的双模冗余系统之系统架构图。如图1所示,本发明一种基于锁步同步的双模冗余系统,包括第一系统10及第二系统20,其中每个系统均包括计算单元核11、互连模块12(Crossbar,交叉开关矩阵或纵横式交换矩阵)、外设桥13、I/O设备14、同时接收两个计算单元核11访问信号的检查控制单元15、存储器控制器16以及存储器17。
计算单元核11通过互连模块crossbar12与存储器17和I/O设备14相连,在此连接过程中,加入了检查控制单元15,检查控制单元15同时接收两个系统从crossbar传来的访问信号,用以对比,实现故障检测。I/O设备14需要通过外设桥13与高速的互联模块12进行连接。
第一系统10和第二系统20同一时刻锁步运行,当检测到故障而停掉其中一个系统时,另外一个系统不受影响仍然继续工作。此外,由于处于锁步同步状态中,对于两个系统均对相同I/O设备14和存储器17进行访问的请求,作为统一的访问请求,在此需要将来自对应I/O设备14和存储器17的单一访问应答返回到两个系统中。
图2为图1中检查控制单元15的结构示意图。在此,为了简略,只画出了跟检查控制单元15直接相关的部件。在功能上,该检查控制单元15负责信号的接收检查与对比,并对系统容错进行处理,其主要包括缓冲器151、同步对比器152和执行器153。
其中缓冲器151负责暂时存储来自第一系统10和第二系统20经过互连模块crossbar12传送来的访问数据、地址和控制信号,缓冲器151分2个,分别负责存储第一系统10和第二系统20的信号;同步对比器152负责将两个缓冲器中相应的数据、地址和控制信号进行对比;执行器153则负责错误检测。
如果访问结果相同,则执行器153将任意一个系统的访问输出,同时,将另一系统的访问数据、地址和控制信息删除;若比较结果不一致,则根据来自系统中所保持的工作状态信息,预先保留来自可靠性高的系统的访问,将来自剩下的系统的访问作为故障系统进行删除。
较佳的,在由于访问结果不相同而删除访问或者I/O设备14发生故障而无法返回对系统响应的情况下,本发明将通过一中断控制器根据其定时功能在一定时间内发起异常中断响应。
图3为本发明一种基于锁步同步的双模冗余系统实现方法的步骤流程图。如图3所示,本发明一种基于锁步同步的双模冗余系统实现方法,包括如下步骤:
步骤301,系统进行上电初始化,第一系统10和第二系统20均进行自检,自检成功后,则顺利进入下一步;
步骤302,系统初始化完成之后,开始从存储器中调用应用软件,以锁步模式运行;
步骤303,当来自互连模块12(crossbar)的访问数据包到达检查控制单元15时,将该信息(访问数据包)存储于缓冲器151中;
步骤304,确定另一系统所对应的访问数据包是否到达,直到准备好两个系统的访问数据包前,由看门狗进行计时,等待某一固定时间,即若准备好两个系统的访问数据包,则进入步骤306,否则进入步骤305;
步骤305,判断定时是否已到,若定时已到,同步访问所对应的同步数据包超时,则不执行数据包的比较,直接进入步骤307进行删除数据包的处理,否则继续等待另一系统的访问数据包;
步骤306,将数据包准备好之后,在同步比较器152中进行访问数据包的对比,确定是否相同;
步骤307,根据对比结果,执行器153删除冗余数据包;
步骤308,在删除冗余数据包之后,执行器153将另一个数据包输出,此时,如果两个数据包相同,则将来自任一系统的访问数据包作为冗余访问删除,将另一数据包的访问输出,如果两个访问数据包不相同,则根据系统工作信息将可靠性高的系统的访问数据包保留输出,将另一系统的数据包删除;
步骤309,当检查控制单元15将正确数据包输出之后,访问的设备对比做出响应,该响应同样经过检查控制单元15将访问相应送至两个系统。
可见,与传统的单纯对处理器核进行冗余备份的双模冗余系统相比,本发明一种基于锁步同步的双模冗余系统及其实现方法在系统实现过程中可以更加清晰的检测出系统单点故障,可以有效提高系统的可靠性。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。
Claims (10)
1.一种基于锁步同步的双模冗余系统,至少包含第一系统及第二系统,该第一系统包含计算单元核、互连模块、外设桥、I/O设备、检查控制单元、存储器控制器及存储器,该第二系统包含该计算单元核,其特征在于:该第二系统至少还包含该外设桥、该I/O设备、该存储器控制器、该存储器其中之一以及该检查控制单元与该互连模块,其中,两个检查控制单元与两互连模块均相连,以同时接收两个计算单元核的访问信号进行对比,实现故障检测。
2.如权利要求1所述的基于锁步同步的双模冗余系统,其特征在于:该第二系统还包括该外设桥、该I/O设备、该存储器控制器、该存储器、该检查控制单元与该互连模块,两个计算单元核分别通过两互连模块、两检查控制单元与两存储器及两I/O设备相连,其中,两I/O设备分别通过两外设桥与两控制单元进行连接,两存储器分别通过两存储器控制器与两控制单元连接。
3.如权利要求2所述的基于锁步同步的双模冗余系统,其特征在于:每个检查控制单元至少包括两个缓冲器、同步对比器及执行器,其中,该两个缓冲器分别负责暂时存储来自该第一系统和该第二系统经过互连模块传送来的访问数据、地址和控制信号;该同步对比器负责将两个缓冲器中的数据进行对比;该执行器负责错误检测。
4.如权利要求3所述的基于锁步同步的双模冗余系统,其特征在于:若比较结果相同,则该执行器将任意一个系统的访问输出,同时将另一系统的访问数据、地址和控制信息删除;若比较结果不一致,则根据来自系统中所保持的工作状态信息,预先保留来自可靠性高的系统的访问,将来自剩下的系统的访问作为故障系统进行删除。
5.如权利要求4所述的基于锁步同步的双模冗余系统,其特征在于:若由于访问结果不相同而发生删除发生故障无法返回对系统响应时,该系统将通过一中断控制器在一定时间内发起异常中断响应。
6.一种基于锁步同步的双模冗余系统的实现方法,包括如下步骤:
系统初始化,第一系统与第二系统均进行自检;
从存储器中调用应用软件,以锁步模式运行;
当来自一系统的访问数据包到达检查控制单元时,将该访问数据包均存储于两检查控制单元的缓冲器中;
判断另一系统所对应的访问数据包是否到达;
若另一系统所对应的访问数据包已到达,则在同步比较器中进行两系统之访问数据包的对比;
根据对比结果,执行器删除冗余数据包,并将另一数据包输出。
7.如权利要求6所述的基于锁步同步的双模冗余系统的实现方法,其特征在于:若两个数据包相同,则该执行器将来自任一系统的访问数据包作为冗余访问删除,将另一数据包的访问输出;若两个访问数据包不相同,则根据系统工作信息将可靠性高的系统的访问数据包保留输出,将另一系统的数据包删除。
8.如权利要求7所述的基于锁步同步的双模冗余系统的实现方法,其特征在于:当该执行器将正确数据包输出后,访问的设备对比做出响应,并经过两检查控制单元将访问相应送至两个系统。
9.如权利要求8所述的基于锁步同步的双模冗余系统的实现方法,其特征在于:该判断另一系统所对应的访问数据包是否到达之步骤通过一看门狗进行计时判断。
10.如权利要求9所述的基于锁步同步的双模冗余系统的实现方法,其特征在于:若定时已到,同步访问所对应的同步数据包超时,则不执行访问数据包的对比,直接进行删除冗余数据包的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110407248.6A CN102521086B (zh) | 2011-12-08 | 2011-12-08 | 基于锁步同步的双模冗余系统及其实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110407248.6A CN102521086B (zh) | 2011-12-08 | 2011-12-08 | 基于锁步同步的双模冗余系统及其实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102521086A true CN102521086A (zh) | 2012-06-27 |
CN102521086B CN102521086B (zh) | 2014-07-16 |
Family
ID=46292019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110407248.6A Active CN102521086B (zh) | 2011-12-08 | 2011-12-08 | 基于锁步同步的双模冗余系统及其实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102521086B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103744752A (zh) * | 2013-12-20 | 2014-04-23 | 北京交控科技有限公司 | 一种内存的在线故障检测方法和装置 |
CN104699550A (zh) * | 2014-12-05 | 2015-06-10 | 中国航空工业集团公司第六三一研究所 | 一种基于lockstep架构的错误恢复方法 |
CN104731666A (zh) * | 2013-12-23 | 2015-06-24 | 深圳市国微电子有限公司 | 一种抗单粒子翻转的自纠错集成电路及其纠错方法 |
CN109032853A (zh) * | 2017-06-09 | 2018-12-18 | 百度在线网络技术(北京)有限公司 | 用于控制fpga卡组的方法和装置 |
CN109815040A (zh) * | 2019-01-12 | 2019-05-28 | 西北工业大学 | 一种基于锁步加监控的高安全性计算机系统及其设计方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1495611A (zh) * | 2002-07-12 | 2004-05-12 | �ձ�������ʽ���� | 容错计算机系统及其再同步方法和再同步程序 |
CN101207408A (zh) * | 2006-12-22 | 2008-06-25 | 中兴通讯股份有限公司 | 一种用于主备倒换的综合故障检测装置和方法 |
CN102023900A (zh) * | 2010-12-06 | 2011-04-20 | 中国航空工业集团公司第六三一研究所 | 一种双通道的故障逻辑仲裁方法及其系统 |
-
2011
- 2011-12-08 CN CN201110407248.6A patent/CN102521086B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1495611A (zh) * | 2002-07-12 | 2004-05-12 | �ձ�������ʽ���� | 容错计算机系统及其再同步方法和再同步程序 |
CN101207408A (zh) * | 2006-12-22 | 2008-06-25 | 中兴通讯股份有限公司 | 一种用于主备倒换的综合故障检测装置和方法 |
CN102023900A (zh) * | 2010-12-06 | 2011-04-20 | 中国航空工业集团公司第六三一研究所 | 一种双通道的故障逻辑仲裁方法及其系统 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103744752A (zh) * | 2013-12-20 | 2014-04-23 | 北京交控科技有限公司 | 一种内存的在线故障检测方法和装置 |
CN104731666A (zh) * | 2013-12-23 | 2015-06-24 | 深圳市国微电子有限公司 | 一种抗单粒子翻转的自纠错集成电路及其纠错方法 |
CN104731666B (zh) * | 2013-12-23 | 2017-12-08 | 深圳市国微电子有限公司 | 一种抗单粒子翻转的自纠错集成电路及其纠错方法 |
CN104699550A (zh) * | 2014-12-05 | 2015-06-10 | 中国航空工业集团公司第六三一研究所 | 一种基于lockstep架构的错误恢复方法 |
CN104699550B (zh) * | 2014-12-05 | 2017-09-12 | 中国航空工业集团公司第六三一研究所 | 一种基于lockstep架构的错误恢复方法 |
CN109032853A (zh) * | 2017-06-09 | 2018-12-18 | 百度在线网络技术(北京)有限公司 | 用于控制fpga卡组的方法和装置 |
CN109032853B (zh) * | 2017-06-09 | 2022-09-02 | 百度在线网络技术(北京)有限公司 | 用于控制fpga卡组的方法和装置 |
CN109815040A (zh) * | 2019-01-12 | 2019-05-28 | 西北工业大学 | 一种基于锁步加监控的高安全性计算机系统及其设计方法 |
CN109815040B (zh) * | 2019-01-12 | 2022-07-08 | 西北工业大学 | 一种基于锁步加监控的高安全性计算机系统及其设计方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102521086B (zh) | 2014-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10120772B2 (en) | Operation of I/O in a safe system | |
CN102822807B (zh) | 控制计算机系统及其控制方法和使用 | |
US6948092B2 (en) | System recovery from errors for processor and associated components | |
US8667372B2 (en) | Memory controller and method of controlling memory | |
KR20190079809A (ko) | 결함 주입 테스트 장치 및 그 방법 | |
CN102521086B (zh) | 基于锁步同步的双模冗余系统及其实现方法 | |
US9367375B2 (en) | Direct connect algorithm | |
US10042812B2 (en) | Method and system of synchronizing processors to the same computational point | |
US7590885B2 (en) | Method and system of copying memory from a source processor to a target processor by duplicating memory writes | |
US6785763B2 (en) | Efficient memory modification tracking with hierarchical dirty indicators | |
US9952579B2 (en) | Control device | |
CN109634171B (zh) | 双核双锁步二取二架构及其安全平台 | |
US6961826B2 (en) | Processor state reintegration using bridge direct memory access controller | |
US6950907B2 (en) | Enhanced protection for memory modification tracking with redundant dirty indicators | |
US9665447B2 (en) | Fault-tolerant failsafe computer system using COTS components | |
JP5620730B2 (ja) | 2重系演算処理装置および2重系演算処理方法 | |
EP3321814B1 (en) | Method and apparatus for handling outstanding interconnect transactions | |
CN109491842B (zh) | 用于故障安全计算系统的模块扩展的信号配对 | |
US6785777B2 (en) | Control logic for memory modification tracking with hierarchical dirty indicators | |
JP2012133456A (ja) | ストレージ装置及びストレージ装置の制御方法 | |
US6981172B2 (en) | Protection for memory modification tracking | |
US9311212B2 (en) | Task based voting for fault-tolerant fail safe computer systems | |
US10621031B2 (en) | Daisy-chain of safety systems | |
Kim et al. | Design of dual-duplex system and evaluation of RAM | |
JP2006338425A (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 |