CN108228391A - 一种LockStep处理机及管理方法 - Google Patents

一种LockStep处理机及管理方法 Download PDF

Info

Publication number
CN108228391A
CN108228391A CN201611153880.1A CN201611153880A CN108228391A CN 108228391 A CN108228391 A CN 108228391A CN 201611153880 A CN201611153880 A CN 201611153880A CN 108228391 A CN108228391 A CN 108228391A
Authority
CN
China
Prior art keywords
processor
failure
ram
cpu
management
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
Application number
CN201611153880.1A
Other languages
English (en)
Other versions
CN108228391B (zh
Inventor
徐奡
刘帅
周啸
郑久寿
李鹏
夏德天
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Aeronautics Computing Technique Research Institute of AVIC
Original Assignee
Xian Aeronautics Computing Technique Research Institute of AVIC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xian Aeronautics Computing Technique Research Institute of AVIC filed Critical Xian Aeronautics Computing Technique Research Institute of AVIC
Priority to CN201611153880.1A priority Critical patent/CN108228391B/zh
Publication of CN108228391A publication Critical patent/CN108228391A/zh
Application granted granted Critical
Publication of CN108228391B publication Critical patent/CN108228391B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1604Error detection or correction of the data by redundancy in hardware where the fault affects the clock signals of a processing unit and the redundancy is at or within the level of clock signal generation hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/165Error detection by comparing the output of redundant processing systems with continued operation after detection of the error
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2015Redundant power supplies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2033Failover techniques switching over of hardware resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明属于计算机系统可靠性设计技术,涉及一种实时监测故障并实时故障恢复的高可靠多处理器计算机架构。包括处理器系统采用单模块设计,包括处理器单元、存储器单元、供电管理单元、时钟单元、系统管理单元;所述处理器单元包含3个并行工作的相似或非相似的处理器CPU;所述存储器单元由3个并行工作的随机存储器RAM、2个主备工作只读存储器ROM以及1个非易失存储器NVM组成;所述供电管理单元实现系统双余度供电的监控与管理以及系统二次电源的转换与管理;所述时钟单元实现双余度时钟电路的监控与管理;所述系统管理单元负责监控系统资源的工作情况,针对资源的故障进行定位、隔离与恢复。

Description

一种LockStep处理机及管理方法
技术领域
本发明属于计算机系统可靠性设计技术,涉及一种故障实时监测并实时恢复的高可靠多处理器计算机架构。
背景技术
计算机的容错能力对于其在安全关键领域的应用具有非常重要的意义。硬件冗余技术是一种有效提高计算机系统容错能力的技术,通过引入多重硬件部件完成同一任务,当系统中的某个冗余部件出现故障,系统将重新组织余下的正常部件继续完成任务。锁步(Lockstep)技术是容错多处理器系统中一种有效组织冗余处理器部件实现高完整性计算的方法。在传统Lockstep处理器系统中,2只处理器分别作为主处理器和监控处理器严格同步地执行相同指令,主处理器操作系统存储器并负责驱动系统输出,而监控处理器连续地监控主处理器总线上的数据、地址等信息与所执行代码的一致性。一旦发生不一致,则说明出现差错,本次计算结果将不输出,从而实现故障静默。采用该方法实现了非常高的故障检测率,但无法有效地实现故障恢复,系统降级较快。本发明提出的Lockstep处理机及管理方法采用以3模并行工作的处理器CPU、3模并行工作的RAM、2模主备工作的ROM为核心的Lockstep计算机架构,通过硬件表决实现了处理器的同步表决监控,在发生单个处理器资源故障时可实现故障实时恢复。
发明内容
本发明的目的是:提供一种锁步的高可靠多处理器架构及其管理方法。可实现计算机实时故障检测和恢复,可保证计算机数据处理的高可靠性,显著降低软件开发成本。处理器系统框图如附图1所示;
本发明的技术方案是:
1.一种LockStep处理机的管理方法,包括正常、降级、停机3种工作模态;
(1)正常模态下,处理器系统中的3个处理器CPU锁步运行,在处理器前端总线上同步处理器总线周期操作如读取,写入等,以及对处理器系统内存RAM数据进行同步操作如读取、写入;处理器总线周期操作和内存数据的同步操作通过系统管理单元FPGA实现并对数据进行多数表决,如果通过表决可以得到表决值,则实际操作数据采用表决后的同一值。如果通过表决未得到表决值,说明发生1:1:1的奇异故障,处理器系统进入故障停机模态;处理器系统针对每个冗余CPU及RAM设置故障计数器;
(2)对于Lockstep处理机中的CPU,若其总线周期操作数据与表决值不一致连续累计次数超过门限,则认为该CPU运行故障,系统管理单元中的复位系统将复位该故障CPU,复位完成后故障CPU根据复位前系统存储于RAM中上下文进行重同步操作,重同步成功后系统继续按照表决策略运行。当故障CPU处于复位恢复过程或无法成功恢复情况下,处理器系统进入降级模态,剩余的两个CPU采用比较工作模式,2模Lockstep处理机主控监控架构,在该模式下一旦发生不一致则系统进入故障静默状态即停机模态;
(3)对于RAM,若某个RAM读取数据与表决值不一致次数超过门限,系统管理单元将根据另外2个RAM表决内容对故障RAM进行刷新操作。刷新操作成功完成后继续按照表决策略运行;故障RAM刷新过程中或无法成功刷新情况下,处理器系统进入降级模态,剩余RAM采用比较工作模式,在该模式下一旦发生不一致则系统进入故障静默状态即停机模态。
2.一种LockStep处理机,包括处理器系统采用单模块设计,包括处理器单元、存储器单元、供电管理单元、时钟单元、系统管理单元;所述处理器单元包含3个并行工作的相似或非相似的处理器CPU;所述存储器单元由3个并行工作的随机存储器RAM、2个主备工作只读存储器ROM以及1个非易失存储器NVM组成;所述供电管理单元实现系统双余度供电的监控与管理以及系统二次电源的转换与管理;所述时钟单元实现双余度时钟电路的监控与管理;所述系统管理单元负责监控系统资源的工作情况,针对资源的故障进行定位、隔离与恢复。
本发明的优点是:实现了极高的处理器故障检测率,在故障发生时能够实现可靠的实时故障恢复,能够显著降低软件开发成本。
附图说明:
图1是本发明处理器系统框图
图2是本发明处理器系统的余度供电控制与管理图
图3是本发明处理器系统的状态转换图
具体实施方式
下面对本发明做进一步详细说明。
本发明的Lockstep处理机采用单模块设计,主要由3模并行工作处理器CPU、3模并行工作RAM、2模主备工作的ROM、2模主备工作的时钟单元及系统管理逻辑单元组成(参见图1),并采用冗余供电设计(参见图2),系统状态转换参见图3。其特征在于:
1、系统内功能部件根据其对系统可靠性和安全性的影响划分为,并行工作部件区(图1阴影区域)和主备工作部件区。并通过系统管理逻辑单元分别进行容错管理。
2、并行工作部件主要包含3模并行工作的处理器CPU和3模并行工作的RAM。
(1)正常工作模态下,处理器系统3个处理器锁步运行,在处理器前端总线上同步处理器总线周期操作(读取,写入等),以及对处理器系统内存数据进行同步。处理器总线周期操作和内存数据的同步通过系统管理逻辑单元(FPGA)实现并对数据进行多数表决,如果通过表决可以得到表决值,则实际操作数据采用表决后的同一值。如果通过表决未得到表决值,说明发生1:1:1的奇异故障,处理器系统进入故障静默状态(停机模态)。
(2)处理器系统针对每个冗余CPU及RAM设置故障计数器。对于CPU,若其总线周期操作数据与表决值不一致次数超过门限,则认为该CPU运行故障,系统管理逻辑单元中的复位系统将复位故障CPU,复位完成后故障CPU根据复位前系统存储于RAM中上下文进行重同步操作,重同步成功系统继续按照表决策略运行。当故障CPU处于复位恢复过程或无法成功恢复情况下,处理器系统进入降级模态,剩余CPU采用比较工作模式(2模Lockstep处理机主控-监控架构),在该模式下一旦发生不一致则系统进入故障静默状态(停机模态);对于RAM,若某个RAM读取数据与表决值不一致次数超过门限,系统管理逻辑单元将根据另外2个RAM表决内容对故障RAM进行刷新操作。刷新操作成功完成后继续按照表决策略运行。故障RAM刷新过程中或无法成功刷新情况下,处理器系统进入降级模态,剩余RAM采用比较工作模式,在该模式下一旦发生不一致则系统进入故障静默状态(停机模态)。
2、主备工作部件主要包含程序存储器ROM和系统时钟单元。正常工作模态下系统使用主部件工作,当主部件出现故障后由备部件实现故障主部件功能。
(1)对于程序存储器ROM,如果系统通过主程序存储器ROM启动失败,则系统管理逻辑单元将尝试从备用程序存储器ROM启动。
(2)对于系统时钟单元,系统采用2余度工作时钟与监控时钟设计,监控时钟实时对工作时钟进行频率监控,如果当前工作时钟出现故障,系统管理逻辑单元将根据时钟监控结果将系统工作时钟切换至正常工作时钟。
3、系统管理逻辑单元主要包含:存储器控制及表决管理模块、接口管理模块和余度管理模块。其中,存储器控制及表决管理模块实现3模处理器的锁步运行,处理器、RAM等冗余资源的表决监控管理;接口管理模块实现主备程序存储ROM和主备工作时钟的监控切换管理以及系统外围接口的管理;余度管理模块实现系统冗余资源工作状态的综合与管理以及系统调试支持。
4、处理器系统采用双冗余供电设计,系统内二次电源划分为4个独立的供电区域(参见图2)。供电区1至3分别对应处理器与存储器组合1至3。供电区4向系统管理逻辑FPGA及其他资源供电。

Claims (2)

1.一种LockStep处理机的管理方法,其特征在于:包括正常、降级、停机3种工作模态;
(1)正常模态下,处理器系统中的3个处理器CPU锁步运行,在处理器前端总线上同步处理器总线周期操作如读取,写入等,以及对处理器系统内存RAM数据进行同步操作如读取、写入;处理器总线周期操作和内存数据的同步操作通过系统管理单元FPGA实现并对数据进行多数表决,如果通过表决可以得到表决值,则实际操作数据采用表决后的同一值。如果通过表决未得到表决值,说明发生1:1:1的奇异故障,处理器系统进入故障停机模态;处理器系统针对每个冗余CPU及RAM设置故障计数器;
(2)对于Lockstep处理机中的CPU,若其总线周期操作数据与表决值不一致连续累计次数超过门限,则认为该CPU运行故障,系统管理单元中的复位系统将复位该故障CPU,复位完成后故障CPU根据复位前系统存储于RAM中上下文进行重同步操作,重同步成功后系统继续按照表决策略运行。当故障CPU处于复位恢复过程或无法成功恢复情况下,处理器系统进入降级模态,剩余的两个CPU采用比较工作模式,2模Lockstep处理机主控监控架构,在该模式下一旦发生不一致则系统进入故障静默状态即停机模态;
(3)对于RAM,若某个RAM读取数据与表决值不一致次数超过门限,系统管理单元将根据另外2个RAM表决内容对故障RAM进行刷新操作。刷新操作成功完成后继续按照表决策略运行;故障RAM刷新过程中或无法成功刷新情况下,处理器系统进入降级模态,剩余RAM采用比较工作模式,在该模式下一旦发生不一致则系统进入故障静默状态即停机模态。
2.一种LockStep处理机,其特征在于:处理器系统采用单模块设计,包括处理器单元、存储器单元、供电管理单元、时钟单元、系统管理单元;所述处理器单元包含3个并行工作的相似或非相似的处理器CPU;所述存储器单元由3个并行工作的随机存储器RAM、2个主备工作只读存储器ROM以及1个非易失存储器NVM组成;所述供电管理单元实现系统双余度供电的监控与管理以及系统二次电源的转换与管理;所述时钟单元实现双余度时钟电路的监控与管理;所述系统管理单元负责监控系统资源的工作情况,针对资源的故障进行定位、隔离与恢复。
CN201611153880.1A 2016-12-14 2016-12-14 一种LockStep处理机及管理方法 Active CN108228391B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611153880.1A CN108228391B (zh) 2016-12-14 2016-12-14 一种LockStep处理机及管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611153880.1A CN108228391B (zh) 2016-12-14 2016-12-14 一种LockStep处理机及管理方法

Publications (2)

Publication Number Publication Date
CN108228391A true CN108228391A (zh) 2018-06-29
CN108228391B CN108228391B (zh) 2021-08-03

Family

ID=62638517

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611153880.1A Active CN108228391B (zh) 2016-12-14 2016-12-14 一种LockStep处理机及管理方法

Country Status (1)

Country Link
CN (1) CN108228391B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109815040A (zh) * 2019-01-12 2019-05-28 西北工业大学 一种基于锁步加监控的高安全性计算机系统及其设计方法
CN110147343A (zh) * 2019-05-09 2019-08-20 中国航空工业集团公司西安航空计算技术研究所 一种全比较的Lockstep处理器架构
CN111581003A (zh) * 2020-04-29 2020-08-25 浙江大学 一种全硬件双核锁步处理器容错系统
CN112115659A (zh) * 2020-09-16 2020-12-22 天津津航计算技术研究所 多余度技术的高可靠系统封装集成芯片
RU2763092C1 (ru) * 2021-06-15 2021-12-27 Александр Иванович Парфенцев Отказоустойчивая система управления

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2046239U (zh) * 1988-08-24 1989-10-18 张鹰 一种z80系列微机容错中央处理器
US6732300B1 (en) * 2000-02-18 2004-05-04 Lev Freydel Hybrid triple redundant computer system
US20110209021A1 (en) * 2008-02-06 2011-08-25 Steen Ditlev Sorensen Failure Detection and Mitigation in Logic Circuits
CN104182305A (zh) * 2014-08-28 2014-12-03 上海航天电子通讯设备研究所 三模冗余控制和数据管理计算机及其使用方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN2046239U (zh) * 1988-08-24 1989-10-18 张鹰 一种z80系列微机容错中央处理器
US6732300B1 (en) * 2000-02-18 2004-05-04 Lev Freydel Hybrid triple redundant computer system
US20110209021A1 (en) * 2008-02-06 2011-08-25 Steen Ditlev Sorensen Failure Detection and Mitigation in Logic Circuits
CN104182305A (zh) * 2014-08-28 2014-12-03 上海航天电子通讯设备研究所 三模冗余控制和数据管理计算机及其使用方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
王长龙: "星载设备抗单粒子效应的设计技术初探", 《控制工程》 *
陈浩: "处理器Lockstep技术研究", 《数字技术与应用》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109815040A (zh) * 2019-01-12 2019-05-28 西北工业大学 一种基于锁步加监控的高安全性计算机系统及其设计方法
CN109815040B (zh) * 2019-01-12 2022-07-08 西北工业大学 一种基于锁步加监控的高安全性计算机系统及其设计方法
CN110147343A (zh) * 2019-05-09 2019-08-20 中国航空工业集团公司西安航空计算技术研究所 一种全比较的Lockstep处理器架构
CN110147343B (zh) * 2019-05-09 2023-08-04 中国航空工业集团公司西安航空计算技术研究所 一种全比较的Lockstep处理器架构
CN111581003A (zh) * 2020-04-29 2020-08-25 浙江大学 一种全硬件双核锁步处理器容错系统
CN112115659A (zh) * 2020-09-16 2020-12-22 天津津航计算技术研究所 多余度技术的高可靠系统封装集成芯片
RU2763092C1 (ru) * 2021-06-15 2021-12-27 Александр Иванович Парфенцев Отказоустойчивая система управления

Also Published As

Publication number Publication date
CN108228391B (zh) 2021-08-03

Similar Documents

Publication Publication Date Title
CN108228391A (zh) 一种LockStep处理机及管理方法
CN103870353A (zh) 一种面向多核的可重构容错系统及方法
CN111352338B (zh) 一种双余度飞控计算机及余度管理方法
RU2577465C2 (ru) Система, способ и устройство для коррекции ошибки в мультипроцессорных системах
US20050240806A1 (en) Diagnostic memory dump method in a redundant processor
CN107634855A (zh) 一种嵌入式系统的双机热备方法
CN102799104B (zh) 一种用于全智能主控系统的安全控制冗余系统及冗余方法
CN109189600A (zh) 一种基于多模冗余嵌入式软件的计算机系统及设计方法
WO2022147990A1 (zh) 一种可动态配置的多核处理器容错系统
JPH0833874B2 (ja) 複数のプロセッサを同期する装置
US10078565B1 (en) Error recovery for redundant processing circuits
CN101556551B (zh) 设备故障日志的硬件获取系统及方法
CN105760241B (zh) 一种内存数据导出方法和系统
CN112559395B (zh) 基于双Soc存储系统异常处理机制的继电保护装置及方法
CN104572326B (zh) 一种基于回读自重构的SoPC芯片容错方法
CN105279049A (zh) 一种故障自主恢复三模冗余容错计算机ip核的设计方法
CN111800345B (zh) 一种高可靠星座组网空间路由器电路
CN106933145B (zh) 一种星载处理系统及其控制运行方法
CN102360315B (zh) 一种容错控制系统看门狗电路管理方法
CN104850530B (zh) 一种立方星星载计算机
CN114116280A (zh) 交互式bmc自恢复方法、系统、终端及存储介质
CN108958987A (zh) 一种低轨小卫星容错系统及方法
CN105243708A (zh) 一种智能锁内分层程序及冗余控制架构
CN111124780B (zh) 一种UPI Link降速测试方法、系统、终端及存储介质
CN110764829B (zh) 一种多路服务器cpu隔离方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant