CN103544087B - 一种锁步的处理器总线监控方法与计算机 - Google Patents
一种锁步的处理器总线监控方法与计算机 Download PDFInfo
- Publication number
- CN103544087B CN103544087B CN201310529919.5A CN201310529919A CN103544087B CN 103544087 B CN103544087 B CN 103544087B CN 201310529919 A CN201310529919 A CN 201310529919A CN 103544087 B CN103544087 B CN 103544087B
- Authority
- CN
- China
- Prior art keywords
- bus
- lock
- processor
- monitoring module
- modular converter
- 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.)
- Active
Links
Landscapes
- Debugging And Monitoring (AREA)
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明涉及一种锁步的处理器总线监控方法与计算机,用于实现计算机的实时的高概率故障检测和隔离。本发明采用总线锁步监控电路模块,对两个处理器总线周期操作事务(读取,写入,中断与异常处理等)进行同步“位—位”比较。其第一处理器与第一总线锁步监控模块和第二总线锁步监控模块分别连接,第二处理器与第一总线锁步监控模块和第二总线锁步监控模块分别连接,第一总线锁步监控模块和第二总线锁步监控模块之间互相连接,第一总线桥转换模块实现第一总线锁步监控模块与PCI总线等的桥接,第二总线桥转换模块实现第二总线锁步监控模块与PCI总线等的桥接。本发明故障检测率很高、故障检测的实时性好、实现简便。
Description
技术领域
本发明属于计算机技术,涉及一种锁步的处理器总线监控方法与计算机。
背景技术
计算机的高故障检测率对于其在安全关键领域的应用具有非常重要的意义。传统的计算机的故障检测主要采用看门狗、闭环检测等方法实现,故障检测率很难到达到98%以上,计算结果比较监控可实现很高的故障检测率,但故障检测的实时性不高。锁步(Lock-Step)计算机是另一种实现高完整性计算的方法,Lock-Step既能以很高的概率检测故障又能实时地检测故障。
发明内容
本发明的目的是:为解决背景技术中的问题,提供一种锁步的处理器总线监控方法与计算机,能实现计算机的实时的高概率故障检测和隔离,保证计算机数据处理的高完整性。
本发明的技术解决方案是:
一种锁步的处理器总线监控计算机,包括处理器和总线桥转换模块,处理器通过总线桥转换模块与PCI总线连接,其特殊之处在于:所述处理器包括第一处理器和第二处理器,所述总线桥转换模块包括第一总线桥转换模块和第二总线桥转换模块,所述计算机还包括第一总线锁步监控模块和第二总线锁步监控模块;所述第一处理器与第一总线锁步监控模块和第二总线锁步监控模块分别连接,第二处理器与第一总线锁步监控模块和第二总线锁步监控模块分别连接,第一总线锁步监控模块和第二总线锁步监控模块之间互相连接,第一总线桥转换模块实现第一总线锁步监控模块与PCI总线等的桥接,第二总线桥转换模块实现第二总线锁步监控模块与PCI总线等的桥接,第一总线锁步监控模块工作模式选择端接高电平,第二总线锁步监控模块工作模式选择端接低电平。
上述总线锁步监控模块包括比较监控逻辑、定时器、错误处理逻辑、多路开关、第一缓存器和第二缓存器;第一处理器与第一缓存器和比较监控逻辑连接,第一缓存器与比较监控逻辑连接,第二处理器与第二缓存器和比较监控逻辑连接,第二缓存器与比较监控逻辑连接,比较监控逻辑具有多个输出端,分别作为处理器、定时器、多路开关的输入,比较监控逻辑与错误处理逻辑互相连接,第一缓存器的输出作为多路开关的输入,多路开关的输出端与总线桥转换模块连接;定时器与错误处理逻辑连接。
上述处理器与总线锁步监控模块之间通过60X总线连接,总线锁步监控模块与总线桥转换模块之间也通过60X总线连接,所述总线桥转换模块是用于实现60X总线接口与存储器总线接口、PCI总线接口、异步串行总线接口、离散信号接口的转换的60X总线桥转换模块。
一种锁步的处理器总线监控方法,其特殊之处在于,包括以下步骤:
1】两个处理器执行相应指令时,触发总线周期操作事务,每个处理器给两个总线锁步监控模块均发送处理器总线请求信号;
2】若总线锁步监控模块检测到某个处理器总线请求信号,则对总线信号进行存储,并给该处理器发送等待信号,同时等待另一处理器的总线请求信号;
3】若总线锁步监控模块检测到另一处理器的总线请求信号,对该总线信号进行存储,也给另一处理器发送等待信号;若在一定时间内检测不到另一处理器的总线请求信号,进行故障处理,撤销等待信号,返回步骤1】。
4】总线锁步监控模块对两个处理器发出的总线请求信号进行比较;若比较结果匹配,总线锁步监控模块将信号输出,根据总线桥转换模块回馈信号,撤销等待信号,返回步骤1】,若比较结果不匹配,进行故障处理,撤销等待信号,返回步骤1】。
上述步骤4中故障处理具体步骤是:
总线锁步监控模块向两个处理器发送中断信号、向外部发送错误指示信号和故障隔离信号。
上述总线周期操作事务包括读取、写入、中断与异常处理。
本发明具有的优点效果是:采用Lock-Step模块,能实时高概率的检测和隔离处理器故障,故障检测率达到98%以上,保证了计算机数据处理的高完整性;将总线信号比较检测、故障隔离与总线桥接功能分离,系统实现简便。
附图说明
图1是Lock-Step计算机硬件构成图;
图2是Lock-Step模块工作状态与转换图;
图3是Lock-Step模块功能框图。
具体实施方式
锁步的处理器总线监控计算机组成结构:
锁步的处理器总线监控计算机组成如附图1所示,核心部分是2个总线锁步监控模块,一个以主模式工作,另一个以从模式工作,其余部分可采用通用器件、电路实现;其余部分主要包括以下结构:
1、处理器
处理器包括第一处理器和第二处理器,具有60X总线接口的处理器。如:POWERPC系列处理器。
2、60X总线桥转换模块
总线桥转换模块包括第一总线桥转换模块和第二总线桥转换模块,实现60X总线接口与存储器总线接口、PCI总线接口、异步串行总线接口、离散信号接口的转换。
3、ROM存储器与RAM存储器
ROM存储器采用快速电子擦除只读存储器,用于存储程序,RAM存储器采用SDRAM、DDRAM,用于存储应用程序和数据。
4、时钟模块
提供33MHz-100MHz时钟信号。
5、电源转换模块
提供总线锁步监控模块、处理器、60x总线桥转换模块等所需电源。
设计的Lock-Step模块实现对两个处理器所有总线周期操作事务(读取,写入,中断、异常处理等)的同步、实时比较与故障检测,其结构包括比较监控逻辑、定时器、错误处理逻辑、多路开关、第一缓存器和第二缓存器。
以上各部分的连接关系是:
第一处理器与第一总线锁步监控模块和第二总线锁步监控模块分别连接,第二处理器与第一总线锁步监控模块和第二总线锁步监控模块分别连接,第一总线锁步监控模块和第二总线锁步监控模块之间互相连接,第一总线桥转换模块实现第一总线锁步监控模块与PCI总线等的桥接,第二总线桥转换模块实现第二总线锁步监控模块与PCI总线等的桥接,第一总线锁步监控模块工作模式选择端接高电平,第二总线锁步监控模块工作模式选择端接低电平。
总线锁步监控模块包括比较监控逻辑、定时器、错误处理逻辑、多路开关、第一缓存器和第二缓存器;第一处理器与第一缓存器和比较监控逻辑连接,第一缓存器与比较监控逻辑连接,第二处理器与第二缓存器和比较监控逻辑连接,第二缓存器与比较监控逻辑连接,比较监控逻辑与错误处理逻辑互相连接,第一缓存器的输出作为多路开关的输入,多路开关的输出端与总线桥转换模块连接;比较监控逻辑具有多个输出端,分别作为处理器、定时器、多路开关的输入,定时器与错误处理逻辑连接。
以上结构中处理器与总线锁步监控模块之间通过60X总线连接,总线锁步监控模块与总线桥转换模块之间通过60X总线连接,所述总线桥转换模块为60X总线桥转换模块;也可以采用其他类型的总线进行连接,相应的总线桥转换模块也要适应性的更换。
总线桥转换模块与总线锁步监控模块可以做在一个芯片中,也可以做成两个单独的芯片。
一种锁步的处理器总线监控方法,包括以下步骤:
1】两个处理器执行相应指令时,触发总线周期操作事务,每个处理器给两个总线锁步监控模块均发送处理器总线请求信号;
2】若总线锁步监控模块检测到某个处理器总线请求信号,则对总线信号进行存储,并给该处理器发送等待信号,同时等待另一处理器的总线请求信号;
3】若总线锁步监控模块检测到另一处理器的总线请求信号,对该总线信号进行存储,也给另一处理器发送等待信号;若在一定时间内检测不到另一处理器的总线请求信号,进行故障处理,撤销等待信号,返回步骤1】。
4】总线锁步监控模块对两个处理器发出的总线请求信号进行比较;若比较结果匹配,总线锁步监控模块将信号输出,根据总线桥转换模块回馈信号,撤销等待信号,返回步骤1】,若比较结果不匹配,进行故障处理,撤销等待信号,返回步骤1】。
故障处理具体步骤是:总线锁步监控模块向两个处理器发送中断信号、向外部发送错误指示信号和故障隔离信号。
总线周期操作事务包括读取、写入、中断与异常处理。
Lock-Step模块状态与转换:
Lock-Step模块上电后、或工作中检测到复位(Reset)信号,将自动进入初始状态:Wait状态。
Lock-Step模块工作状态与转换关系如附图2所示:Wait状态为初始状态,此状态下Lock-Step模块等待处理器请求总线周期操作事务,当Lock-Step模块检测到处理器总线请求信号,将进入State1状态,对60X总线信号进行处理,完成后模块进入State2状态,等待另一处理器的总线请求信号。一旦检测到另一处理器的总线请求信号,模块将进入State3状态,对相应总线周期操作事务对应的两个60X总线上相关信号进行比较,完成后模块进入State4状态,对两个60X总线信号进行处理,如果比较结果匹配,模块返回初始Wait状态,如果不匹配,模块进入State5状态,完成故障处理后也返回初始Wait状态。
Lock-Step模块功能框图如附图3所示,有多种工作状态,实现两个处理器总线周期操作事务同步、实时比较、故障指示功能。总线周期操作事务包括读取,写入,中断与异常处理。
(1)写入操作锁步
处理器执行写入指令时,将触发总线写周期操作事务,发送信号到60X总线。Lock-Step模块在Wait状态实时检测60X总线上的BR、DWBO等信号,一旦检测到,比较监控逻辑立即给处理器发送总线保持(wait)信号,暂停处理器写入操作,并将地址、数据等信号写入Lock-Step模块内部相应的缓存器中,如附图3所示。同时等待另一处理器触发写总线周期操作事务,一旦检测到,立即给另一处理器的发送总线保持(wait)信号,暂停处理器写入操作,并将另一60X总线地址、数据等信号写入模块内部另一缓存器中。之后,比较监控逻辑对两个缓存器中的所有对应数据进行逐位比较,完成后,撤销两个处理器的总线保持(wait)信号,两个处理器执行后续总线周期操作事务,实现两个处理器的总线同步操作。如果比较结果匹配,Lock-Step模块将主处理器(Master)的缓存信号送入60X总线桥转换模块,进而将数据写入存储器。如果不匹配,Lock-Step模块发送中断、错误指示与故障隔离信号。
Lock-Step模块若检测到一个处理器触发写总线周期操作事务,若在其内部定时器预定期限内未检测到另一个处理器触发写总线周期操作事务,将撤销此处理器的总线保持(wait)信号,并发送中断、错误指示与故障隔离信号。
(2)读取操作锁步
处理器执行读取指令时,将触发总线读取周期操作事务,发送信号到60X总线。Lock-Step模块在Wait状态实时检测60X总线上的BR、ACK等信号,一旦检测到,直接将60X总线上的所有输出信号送入60X总线桥转换模块,同时Lock-Step模块将60X总线地址、控制等信号、60X总线桥转换模块从存储器读出的数据信号写入模块内部的缓存器中,并给处理器发送总线保持(wait)信号,暂停处理器读取操作。此后,等待另一处理器触发总线读取周期操作事务,一旦检测到,立即给另一处理器的发送总线保持(wait)信号,并将另一60X总线地址、控制等信号写入模块内部的缓存器中。之后,Lock-Step模块对两个缓存器中缓存的地址、控制等信息进行逐位比较,完成后,将60X总线桥转换模块回送的数据信号同时发送给60X总线并撤销两个处理器的总线保持(wait)信号,两个处理器执行后续总线周期操作事务,实现两个处理器的总线同步操作。如果Lock-Step模块比较结果不匹配,将发送中断、错误指示与故障隔离信号。
Lock-Step模块检测到一个处理器触发读取总线周期操作事务,若在其内部定时器预定期限内未检测到另一个处理器触发读取总线周期操作事务,将撤销此处理器的总线保持(wait)信号,并发送中断、错误指示与故障隔离信号。
(3)中断、异常等操作锁步
中断,异常等其他60X总线周期事务操作的锁步与同步采用(1)、(2)类似的实现方法。
Lock-Step模块故障处理
Lock-Step模块在检测出错误之后,即认为计算机已经不可靠、将发送中断、错误指示与故障隔离信号。故障隔离信号用于隔离计算机,中断信号强制处理器进入故障处理例程进行故障处理与恢复,直到两个处理器恢复锁步,计算机恢复正常工作,错误指示与故障隔离信号自动撤销。
Claims (5)
1.一种锁步的处理器总线监控计算机,包括处理器和总线桥转换模块,处理器通过总线桥转换模块与PCI总线连接,其特征在于:所述处理器包括第一处理器和第二处理器,所述总线桥转换模块包括第一总线桥转换模块和第二总线桥转换模块,所述计算机还包括第一总线锁步监控模块和第二总线锁步监控模块;所述第一处理器与第一总线锁步监控模块和第二总线锁步监控模块分别连接,第二处理器与第一总线锁步监控模块和第二总线锁步监控模块分别连接,第一总线锁步监控模块和第二总线锁步监控模块之间互相连接,第一总线桥转换模块实现第一总线锁步监控模块与PCI总线的桥接,第二总线桥转换模块实现第二总线锁步监控模块与PCI总线的桥接,第一总线锁步监控模块工作模式选择端接高电平,第二总线锁步监控模块工作模式选择端接低电平;所述第一总线锁步监控模块和第二总线锁步监控模块均包括比较监控逻辑、定时器、错误处理逻辑、多路开关、第一缓存器和第二缓存器;第一处理器与第一缓存器和比较监控逻辑连接,第一缓存器与比较监控逻辑连接,第二处理器与第二缓存器和比较监控逻辑连接,第二缓存器与比较监控逻辑连接,比较监控逻辑具有多个输出端,分别作为处理器、定时器、多路开关的输入,比较监控逻辑与错误处理逻辑互相连接,第一缓存器的输出作为多路开关的输入,多路开关的输出端与总线桥转换模块连接;定时器与错误处理逻辑连接。
2.根据权利要求1所述锁步的处理器总线监控计算机,其特征在于:处理器与总线锁步监控模块之间通过60X总线连接,总线锁步监控模块与总线桥转换模块之间也通过60X总线连接,所述总线桥转换模块是用于实现60X总线接口与存储器总线接口、PCI总线接口、异步串行总线接口、离散信号接口的转换的60X总线桥转换模块。
3.一种锁步的处理器总线监控方法,其特征在于,包括以下步骤:
1】两个处理器执行相应指令时,触发总线周期操作事务,每个处理器给两个总线锁步监控模块均发送处理器总线请求信号;
2】若总线锁步监控模块检测到某个处理器总线请求信号,则对总线信号进行存储,并给该处理器发送等待信号,同时等待另一处理器的总线请求信号;
3】若总线锁步监控模块检测到另一处理器的总线请求信号,对该总线信号进行存储,也给另一处理器发送等待信号;若在一定时间内检测不到另一处理器的总线请求信号,进行故障处理,撤销等待信号,返回步骤1】;
4】总线锁步监控模块对两个处理器发出的总线请求信号进行比较;若比较结果匹配,总线锁步监控模块将信号输出,根据总线桥转换模块回馈信号,撤销等待信号,返回步骤1】,若比较结果不匹配,进行故障处理,撤销等待信号,返回步骤1】。
4.根据权利要求3所述的锁步的处理器总线监控方法,其特征在于,步骤4中故障处理具体步骤是:
总线锁步监控模块向两个处理器发送中断信号、向外部发送错误指示信号和故障隔离信号。
5.根据权利要求4所述的锁步的处理器总线监控方法,其特征在于,所述总线周期操作事务包括读取、写入、中断与异常处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310529919.5A CN103544087B (zh) | 2013-10-30 | 2013-10-30 | 一种锁步的处理器总线监控方法与计算机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310529919.5A CN103544087B (zh) | 2013-10-30 | 2013-10-30 | 一种锁步的处理器总线监控方法与计算机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103544087A CN103544087A (zh) | 2014-01-29 |
CN103544087B true CN103544087B (zh) | 2015-10-28 |
Family
ID=49967560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310529919.5A Active CN103544087B (zh) | 2013-10-30 | 2013-10-30 | 一种锁步的处理器总线监控方法与计算机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103544087B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104699550B (zh) * | 2014-12-05 | 2017-09-12 | 中国航空工业集团公司第六三一研究所 | 一种基于lockstep架构的错误恢复方法 |
CN104484299B (zh) * | 2014-12-05 | 2017-12-22 | 中国航空工业集团公司第六三一研究所 | 一种松耦合的Lockstep处理器系统 |
CN109815040B (zh) * | 2019-01-12 | 2022-07-08 | 西北工业大学 | 一种基于锁步加监控的高安全性计算机系统及其设计方法 |
CN110147343B (zh) * | 2019-05-09 | 2023-08-04 | 中国航空工业集团公司西安航空计算技术研究所 | 一种全比较的Lockstep处理器架构 |
CN112015599B (zh) * | 2019-05-31 | 2022-05-13 | 华为技术有限公司 | 错误恢复的方法和装置 |
CN111581003B (zh) * | 2020-04-29 | 2021-12-28 | 浙江大学 | 一种全硬件双核锁步处理器容错系统 |
CN113535447A (zh) * | 2021-06-30 | 2021-10-22 | 浙江中控技术股份有限公司 | 一种双处理器结构的安全控制装置及实现方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201191407Y (zh) * | 2008-03-28 | 2009-02-04 | 上海华平信息技术股份有限公司 | 带有远程报警的usb看门狗 |
CN103309760A (zh) * | 2012-03-12 | 2013-09-18 | 英飞凌科技股份有限公司 | 用于故障包容的方法和系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7020800B2 (en) * | 2002-01-24 | 2006-03-28 | Hewlett-Packard Development Company L.P. | System and method for memory failure recovery using lockstep processes |
US20050120278A1 (en) * | 2003-11-19 | 2005-06-02 | Smith Zachary S. | Systems and methods for verifying lockstep operation |
-
2013
- 2013-10-30 CN CN201310529919.5A patent/CN103544087B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201191407Y (zh) * | 2008-03-28 | 2009-02-04 | 上海华平信息技术股份有限公司 | 带有远程报警的usb看门狗 |
CN103309760A (zh) * | 2012-03-12 | 2013-09-18 | 英飞凌科技股份有限公司 | 用于故障包容的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103544087A (zh) | 2014-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103544087B (zh) | 一种锁步的处理器总线监控方法与计算机 | |
CN102055633B (zh) | 一种星载双can总线节点故障自恢复系统 | |
CN102377586B (zh) | 一种网络旁路装置及其处理网络旁路的方法 | |
CN102360311A (zh) | 计算机系统 | |
CN103377083A (zh) | 用于运行冗余的自动化系统的方法 | |
CN103631360A (zh) | 一种支持睡眠模式的芯片及方法 | |
CN203858624U (zh) | 一种双备份式总线看门狗电路 | |
CN105760241A (zh) | 一种内存数据导出方法和系统 | |
CN102736594A (zh) | 一种智能配电终端统一平台模块化设计方法 | |
CN116150051A (zh) | 命令处理方法、装置、系统 | |
CN116699964A (zh) | 一种工业过程控制器冗余运行方法和系统 | |
CN202261334U (zh) | 环网链路冗余控制系统 | |
CN105550131A (zh) | 一种基于有限状态机和arinc659总线的接口数据处理系统及方法 | |
CN110247809B (zh) | 双环网控制系统的通信控制方法 | |
CN104597814B (zh) | 一种高稳定性的控制系统冗余的系统和方法 | |
CN103309346B (zh) | 星载四通道FlexRay总线节点故障检测与恢复系统及方法 | |
CN103376877A (zh) | 一种多核处理器时钟控制装置及控制方法 | |
CN204631571U (zh) | 一种工业机器人安全控制系统及备份安全电路、安全模块 | |
CN204721205U (zh) | 并联逆变器冗余控制装置 | |
CN203587997U (zh) | 一种多路数字量输入输出装置 | |
CN101602263B (zh) | 一种基于双cpu的离合器控制方法与控制系统 | |
CN112463445A (zh) | 一种链路恢复方法、装置、设备及计算机可读存储介质 | |
CN213213493U (zh) | 一种环网结构双冗余总线式执行机构控制器 | |
CN111651944A (zh) | 核反应堆计算系统 | |
CN205507453U (zh) | 一种用于舰船冗余网络的高速can总线扩展板 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |