KR950005524B1 - Reliable computing system - Google Patents

Reliable computing system Download PDF

Info

Publication number
KR950005524B1
KR950005524B1 KR1019910011989A KR910011989A KR950005524B1 KR 950005524 B1 KR950005524 B1 KR 950005524B1 KR 1019910011989 A KR1019910011989 A KR 1019910011989A KR 910011989 A KR910011989 A KR 910011989A KR 950005524 B1 KR950005524 B1 KR 950005524B1
Authority
KR
South Korea
Prior art keywords
signal
selection
processor
signals
calculator
Prior art date
Application number
KR1019910011989A
Other languages
Korean (ko)
Other versions
KR920003158A (en
Inventor
이꾸오 우찌호리
Original Assignee
가부시끼가이샤 도시바
아오이 죠이찌
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 가부시끼가이샤 도시바, 아오이 죠이찌 filed Critical 가부시끼가이샤 도시바
Publication of KR920003158A publication Critical patent/KR920003158A/en
Application granted granted Critical
Publication of KR950005524B1 publication Critical patent/KR950005524B1/en

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/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
    • 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/2035Error 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 without idle spare 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
    • 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/203Failover techniques using migration

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Hardware Redundancy (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

내용 없음.No content.

Description

신뢰성이 높은 계산기 시스템Highly reliable calculator system

제1도는 본발명의 일실시예에 의한 계산기 시스템의 구성을 나타낸 블록도.1 is a block diagram showing the configuration of a calculator system according to an embodiment of the present invention.

제2도는 제1도에 나타낸 계산기 시스템의 프로세서내부의 구성을 나타낸 블록도.2 is a block diagram showing the internal configuration of the processor of the calculator system shown in FIG.

제3a-3e도는 클록신호, 비지제어신호, 통상 모드신호의 신호파형을 나타낸 도면.3A-3E show signal waveforms of a clock signal, busy control signal, and normal mode signal.

제4도는 디지탈회로에서 발생하는 언더슈트를 설명하기 위한 도면.4 is a diagram for explaining the undershoot occurring in the digital circuit.

제5도는 제2도에 나타낸 프로세서의 구성의 변형예를 나타낸 도면.5 is a diagram showing a modification of the configuration of the processor shown in FIG.

제6도는 비지상태를 발생시키기 위한 구성의 다른 예를 나타내 도면.6 shows another example of a configuration for generating a busy state.

제7도는 모드설정을 행하기 위한 다른 구성예를 나타낸 도면.Fig. 7 is a diagram showing another configuration example for performing mode setting.

제8도는 프로세서로 공급되는 클록자체를 변경하는 실시예를 나타낸 도면.8 is a diagram showing an embodiment of changing a clock itself supplied to a processor.

제9도는 그룹단위로 절환되는 계산기 시스템의 예를 나타낸 도면.9 is a diagram showing an example of a calculator system switched in groups.

본 발명은 신뢰성이 높은(즉 다운되는 확율이 작은)계산기 시스템에 관한 것이다.The present invention relates to a highly reliable (i.e. low probability of down) calculator system.

본 발명은 복수의 프로세서를 포함하는 용장화된 계산기 시스템 등에 있어서, 프로세서가 시스템에서 잘려나가는 것을 방지하는 기술에 관한 것이다.The present invention relates to a technique for preventing a processor from being cut out of a system in a redundant calculator system including a plurality of processors.

본발명은 계산기의 내부동작의 실행타이밍을 가변하는 기술에 관한 것이다.The present invention relates to a technique for varying the execution timing of the internal operation of the calculator.

계산기 시스템의 신뢰성을 높이기 위하여 계산기 시스템을 복수의 컴퓨터로 구성하는 기술이 알려져 있다. 이 종류의 시스템에서는 일반적으로 하나의 컴퓨터가 동작되고 다른 컴퓨터는 대기하고 동작중의 컴퓨터가 정지한 경우에 대기하고 있었든 컴퓨터가 처리를 인계받는다. 그러나 이 종류의 시스템에서는 컴퓨터의 절환시에 시스템의 일시적인 정지는 피할 수 없다.In order to increase the reliability of the calculator system, a technique for configuring the calculator system with a plurality of computers is known. In this type of system, generally one computer is running, the other is waiting, and the computer takes over processing, even if it is waiting when the running computer is stopped. In this type of system, however, a temporary stop of the system at the time of computer switching is inevitable.

무정지성을 특히 중시한 FTC(Fault Tolerant Computer)라고 칭하는 계산기 시스템이 주목되고 있다. 무정지를 달성하는 수법은 여러가지가 있으나 예를 들면 다음수법이 일반적이다. 복수의 프로세서에서 동일 처리를 행한다. 복수의 프로세서의 처리결과를 비교하고 비교결과로 이상을 검출한다. 이상이 검출된 프로세스를 시스템에서 떼어내고 나머지 프로세서에서 처리를 속행한다.Attention has been paid to a calculator system called Fault Tolerant Computer (FTC), which places particular importance on nonstop. There are many ways to achieve no stop, but the following methods are common. The same processing is performed by a plurality of processors. The processing results of the plurality of processors are compared, and the abnormality is detected by the comparison result. The process from which the abnormality is detected is removed from the system and the processing continues in the remaining processors.

그러나 이 종류의 컴퓨터라도 컴퓨터의 설계상의 잘못이나 프로그램의 버그에 의해서 이상 등의 발생시에 복수의 프로세서가 연쇄적으로 시스템에서 떨어져 나갈 가능성이 있다. 더 상세하게 설명하면 프로세서의 설계불량이나 소프트웨어의 버그에 의한 시스템의 이상은 일련의 입력데이타나 동작 타이밍등의 특정관계로 된 경우에만 발생하는 경우가 많다. 그리고 용장화된 시스템에서는 전술한 바와같이 동일 프로세서가 동일 소프트웨어에 따라서 동일 입력데이타를 동일 클록에 따라서 처리하고 있는 경우나 고장난 프로세서의 처리를 다른 프로세서가 인계받는 경우가 많다. 이와같은 경우에는 설계불량이나 소프트웨어 버그등에 의해서 복수의 프로세서가 동일한 특정상태로 되어 시스템이 다운해버리는 경우가 있다. 특히 커스텀설계의 프로세서나 소프트웨어를 사용하는 시스템에서는 개발후 얼마않된 시기에 이와같은 설계상의 잘못이나 소프트웨어의 버그가 심각한 문제로 되는 경우가 있다.However, even in this type of computer, a plurality of processors may fall out of the system in series when an error occurs due to a computer design error or a program bug. In more detail, system failure due to poor design of a processor or a bug in software often occurs only when a specific relationship such as a series of input data or operation timing is involved. In a redundant system, as described above, the same processor processes the same input data according to the same clock according to the same software, or the other processor takes over the processing of the failed processor. In such a case, a plurality of processors may be in the same specific state due to a design failure or a software bug, and the system may crash. Especially in a system using a custom design processor or software, such a design error or a software bug may become a serious problem not long after development.

본 발명은 상기 사정에 비추어 행해진 것이며 그 목적은 신뢰성이 높은 계산기 시스템을 제공하는데 있다.The present invention has been made in view of the above circumstances, and an object thereof is to provide a highly reliable calculator system.

본발명의 다른 목적은 설계상의 잘못등에 기인하는 계산기의 이상의 재발을 방지할 수 있는 계산기 시스템을 제공하는데 있다.Another object of the present invention is to provide a calculator system that can prevent abnormal recurrence of the calculator due to design errors and the like.

상기 목적을 달성하기 위한 본 발명에 의한 계산기 시스템은 ; 데이타를 처리하는 데이타 처리수단(21-25)와 이 프로세서의 이상을 검출하는 이상 검출수단(7,53)과, 상기 이상검출수단의 검출결과에 응답하여 이 프로세서의 이상이 검출되었을 때에 상기 데이타처리수단을 웨이팅상태로 설정하는 웨이팅상태 설정수단(12-16, 31-35)을 포함하는 데이타처리 프로세서로 된다.The calculator system according to the present invention for achieving the above object; Data processing means 21-25 for processing data, abnormality detecting means 7 and 53 for detecting abnormality of the processor, and abnormality of this processor in response to the detection result of the abnormality detecting means. And a data processing processor including weighting state setting means 12-16 and 31-35 for setting the processing means to the weighting state.

상기 구성에 의해서 프로세서의 이상이 검출되면 프로세서내부의 각 기본처리의 실행타이밍이 표준타이밍에서 엇갈리게 된다. 그 결과 고장, 노이즈 버그 등에 기인되어 특정 동작타이밍에 발생된 오동작의 재발이 방지된다.When the abnormality of the processor is detected by the above configuration, the execution timing of each basic process inside the processor is staggered from the standard timing. As a result, recurrence of malfunction caused by a specific operation timing due to a failure, noise bug, or the like is prevented.

이하 본 발명의 제1실시예를 도면을 참조하여 설명하겠다.Hereinafter, a first embodiment of the present invention will be described with reference to the drawings.

먼저 제1실시예의 개략에 대해서 설명하겠다.First, the outline of the first embodiment will be described.

복수의 프로세서(계산기)로 구성되는 용장화된 계산기 시스템의 시스템 다운의 원인은 많은 경우에 기본 동작상의 단일 이상에 귀결된다. 이 기본동작상의 단일이상의 원인으로서는 고장, 노이즈, 버그등이 있다. 그러나 어느 원인에 의한 이상도 특정타이밍 관계가 성립된 경우에만 발생되는 경우가 많다. 예를들면 어느 노드에서 생긴 제4도에 나타낸 언더슈트(US)가 통상시에는 프로세서의 동작에 영향을 주지 않으나 어느 특정의 동작조건이 성립된 경우에 프로세서를 오동작시킬 경우가 있다. 최근에는 파이프라인제어가 일반화 되어 있고 시스템의 이상원인이 동작타이밍상의 문제에 기인하는 가능성이 크다.The cause of a system crash of a redundant calculator system consisting of multiple processors (calculators) often results in a single abnormality in basic operation. The causes of a single abnormality in this basic operation include failures, noises, bugs, and the like. However, anomalies due to any cause often occur only when a specific timing relationship is established. For example, the undershoot US shown in FIG. 4 generated at a certain node does not normally affect the operation of the processor, but may cause the processor to malfunction when a certain operating condition is established. In recent years, pipeline control has become commonplace, and the cause of abnormality in the system is most likely due to problems in operation timing.

이 종류의 오동작은 하드웨어의 각 기본동작의 실행타이밍을 통상의 타이밍에서 엇갈리게 하면 또는 기본 동작간의 실행타이밍을 통상과 엇갈리게 함으로써 재발을 방지할 수 있는 가능성이 높다. 예를들면 제4도의 언더슈트가 발생하고 있는 기간 또는 구 전후에 프로세서의 동작을 일순간 정지시키면 오동작은 발생되지 않을 가능성이 높다.This kind of malfunction is likely to prevent recurrence by staggering the execution timing of each basic operation of the hardware at a normal timing or by staggering the execution timing between the basic operations with the normal. For example, if the operation of the processor is temporarily stopped before or after the period or the undershoot of FIG. 4, the malfunction is unlikely to occur.

이 제1실시예에서는 파이프라인중에 특정 주기에 「대기상태」를 생성하여 하드웨어의 각 기본동작의 실행 타이밍을 표준타이밍으로 부터 엇갈리게 한다.In the first embodiment, the "wait state" is generated at a specific period in the pipeline to shift the execution timing of each basic operation of the hardware from the standard timing.

이하 도면을 참조하여 본발명의 제1실시예를 설명하겠다.Hereinafter, a first embodiment of the present invention will be described with reference to the drawings.

제1실시예는 본 발명을 4스테이지의 파이프라인처리를 행하는 프로세서로 구성된 계산기 시스템에 적용시킨 예이다.The first embodiment is an example in which the present invention is applied to a calculator system composed of a processor that performs four stages of pipeline processing.

제1도는 이 실시예에 의한 계산기 시스템의 기본구성을 나타낸다. 제1도에 나타낸 계산기 시스템은 버스(1)와 버스(1)에 접속된 메모리 매니지먼트유니트(3)와 메모리 매니지멘트유니트(3)에 접속된 메모리(5)와 메모리(5)를 공유하는 복수의 프로세서(7-1∼7-m)와 이 프로세서(7)에 동작클록을 공급하는 발진기(9)를 구비한다.1 shows the basic configuration of the calculator system according to this embodiment. The calculator system shown in FIG. 1 has a plurality of memories that share the memory 1 and the memory 5 connected to the memory management unit 3 and the memory management unit 3 connected to the bus 1 and the bus 1. Processors 7-1 to 7-m and oscillators 9 for supplying an operation clock to the processor 7 are provided.

제2도는 각 프로세서(7)의 특징부분을 발췌하여 나타낸 블록도이다. 제2도에서 11은 프로세서내의 동기를 취하기 위하여 발진기(7)에서 공급되는 클록신호이다. 이 클록신호는 시스템클록 그 자체일 필요는 없다. 단 본실시예에서는 클록(11)은 발진기(9)가 출력하는 시스템클록을 이용하고 있다 12-1, 12-2, 12-3, …12-n은 클록신호(11)를 입력하는 비지신호 발생회로이다. 비지신호발생회로(12-1,12-2,…12-n)는 게이트 어레이등으로 구성되고 입력클록신호(11)에 고유의 필터를 걸어(분주하여) 상이한 주기에 하이레벨로 되는 비지제어신호(13-1,13-2,13-3,…13-n)을 발생한다. 14는 상기 로우레벨이고 통상상태에서 사용되는 통상 모드신호이다.2 is a block diagram showing an extract of features of each processor 7. 11 is a clock signal supplied from the oscillator 7 to synchronize the processor. This clock signal need not be a system clock itself. In this embodiment, however, the clock 11 uses a system clock outputted by the oscillator 9 12-1, 12-2, 12-3,... 12-n is a busy signal generation circuit for inputting the clock signal 11. Busy signal generation circuits 12-1, 12-2, ... 12-n are made up of a gate array or the like and have a unique filter applied to the input clock signal 11 to divide them into high levels at different periods. Generate signals 13-1, 13-2, 13-3, ... 13-n. 14 is a low level and normal mode signal used in a normal state.

비지제어신호(13-1,13-2,13-3,…13-n)중에서 신호(13-1)의 주기가 가장 길고 이하 신호(13-2)신호 (13-3)…의 차례로 주기가 짧아지고 신호(13-n)의 주기가 가장 짧다. 비지제어신호(13-1,13-2, 123-3)의 신호파형의 일예를 클록신호(11) 및 통상모드신호(14)와 대비시켜서 제3A-3E도에 나타냈다.Among the busy control signals 13-1, 13-2, 13-3, ... 13-n, the period of the signal 13-1 is the longest and the following signal 13-2, the signal 13-3, ... The cycles are shortened in turn, and the cycle of the signal 13-n is shortest. An example of the signal waveforms of the busy control signals 13-1, 13-2, and 123-3 is shown in FIG. 3A-3E in contrast to the clock signal 11 and the normal mode signal 14. FIG.

재차 제2도를 참조하면 15는 비지신호 발생회로(12-1∼12-n)에서 출력되는 비지제어신호(13-1∼13-n) 및 통상모드신호(14)중의 하나를 선택하는 선택회로이다. 16은 선택회로(15)에 대해서 선택해야할 신호를 지정하는 정보(선택지정정보)가 설정되는 레지스터이다. 레지스터(16)는 도시하지 않은 입력버퍼를 거쳐서 버스(1)에 접속되어 있고 다른 프로세서(7)에 의해서 재기입 가능하다.Referring again to FIG. 2, 15 selects one of the busy control signals 13-1 to 13-n and the normal mode signal 14 outputted from the busy signal generation circuits 12-1 to 12-n. Circuit. 16 is a register in which information (selection designation information) for designating a signal to be selected for the selection circuit 15 is set. The register 16 is connected to the bus 1 via an input buffer (not shown) and can be rewritten by another processor 7.

21은 메인메모리(5)상의 명령어군(의 일부)의 카피해두는 명령캐슈유니트이다. 22는 파이프라인의 명령페치스테이지를 이루고 명령캐슈유니트(21)에서 명령어를 파이프라인에 집어넣는 명령페치유니트이다. 23은 파이프라인의 데코드스테이지를 이루고 명령어를 데코드하는 데코드유니트이다. 24는 파이프라인의 실행스테이지를 이루고 명령어로 지정된 연산을 실행하는 실행유니트이다. 26은 파이프라인의 라이트백스테이지를 이루고 연산결과를 지정된 장소에 격납하는 라이트백유니트이다. 31-35는 파이프라인을 구성하는 유니트 21∼25내의 비지제어회로이다.21 denotes an instruction cash unit for copying an instruction group (part of) on the main memory 5. 22 is an instruction fetch unit which forms an instruction fetch stage of the pipeline and injects the instructions into the pipeline in the instruction cache unit 21. 23 is a decode unit that makes up the pipeline's decode stage and decodes instructions. 24 is an execution unit that forms the execution stage of the pipeline and executes the operation specified by the instruction. 26 is a writeback unit that forms a writeback stage of the pipeline and stores the calculation result in a designated place. 31-35 are busy control circuits in units 21 to 25 constituting the pipeline.

비지제어회로(31∼35)는 여러가지 원인에 의한 파이프라인 해저드시에 비지신호(41∼45)를 발생하여 대응하는 유니트의 후속처리를 기다리게 한다(웨이트상태로 한다) 이 비지제어회로(31∼35)에는 선택회로(15)의 출력신호가 비지제어의 조건의 하나로서 다른 신호와 함께 입력되어 있다. 비지제어회로(31∼35)는 선택회로(15)의 출력신호가 하이레벨의 경우에 무조건으로 비지신호(41∼45)를 발생하고 대응하는 스테이지의 동작을 정지(웨이트상태)하게 한다.The busy control circuits 31 to 35 generate busy signals 41 to 45 at the time of pipeline hazards caused by various causes to wait for the subsequent processing of the corresponding unit (to be in a weighted state). 35, an output signal of the selection circuit 15 is input together with another signal as one of the busy control conditions. The busy control circuits 31 to 35 generate busy signals 41 to 45 unconditionally when the output signal of the selection circuit 15 is at a high level, and stops the operation of the corresponding stage (weight state).

다음에 제1,2도의 구성을 갖는 계산기 시스템의 동작을 설명한다.Next, the operation of the calculator system having the configuration of FIGS. 1 and 2 will be described.

통상의 시스템운용중에는 각 프로세서의 내부의 레지스터(16)에는 통상모드신호(14)의 선택을 지정하기 위한 통상상태(통상모드)를 나타낸 정보가 설정되어 있다. 메인메모리(5)에는 각 프로세서(7)의 레지스터(16)의 값의 카피가 보지되어 있다.During normal system operation, information indicating the normal state (normal mode) for specifying the selection of the normal mode signal 14 is set in the register 16 inside each processor. A copy of the value of the register 16 of each processor 7 is held in the main memory 5.

선택회로(15)는 레지스터(16)에 통상상태를 나타낸 정보가 설정되어 있는 경우에는 비지제어신호(13-1∼13-n) 및 통상모드신호(14)중의 통상모드신호(14)를 선택한다. 선택회로(15)에 의해서 선택된 통상모드신호(14)는 파이프라인을 구성하는 유니트(21∼25)내의 비지제어회로(31∼35)로 입력된다. 선택된 통상모드신호는 상시 로우레벨이므로 이 입력신호에 의해서는 비지신호(41∼45)를 발생하는 일은 없다. 따라서 다른 원인이 존재하지 않는 한 파이프라인을 구성하는 유니트(21∼25)는 연속적으로 동작한다.The selecting circuit 15 selects the normal mode signal 14 among the busy control signals 13-1 to 13-n and the normal mode signal 14 when the information indicating the normal state is set in the register 16. do. The normal mode signal 14 selected by the selection circuit 15 is input to the busy control circuits 31 to 35 in the units 21 to 25 constituting the pipeline. Since the selected normal mode signal is always at low level, busy signals 41 to 45 are not generated by this input signal. Therefore, unless there is another cause, the units 21 to 25 constituting the pipeline operate continuously.

상기 구성의 컴퓨터동작중에 어느 프로세서(7)에서 하드웨어이상 또는 소프트웨어이상이 검출되었다고 하면, 이 경우에 이상이 발생된 프로세서(7)는 하드웨어 또는 소프트웨어에 의해서 시스템으로 부터 떨어져 나간다. 그렇게 되면 이상이 생긴 프로세서(7-1)내의 레지스터(16)에는 비지제어신호(13-1)의 선택을 지정하기 위한 제1이상레벨을 나타내는 정보가 하드웨어적 또는 소프트웨어적으로 설정된다.If a hardware error or a software error is detected in a processor 7 during the computer operation of the above configuration, the processor 7 in which an error has occurred in this case is separated from the system by hardware or software. In this case, information indicating the first abnormal level for designating the selection of the busy control signal 13-1 is set in hardware or software in the register 16 in the abnormal processor 7-1.

레지스터(16)의 기억정보를 재기입하는 방법의 예를 구체적으로 설명하겠다.An example of a method of rewriting the storage information in the register 16 will be described in detail.

제1도의 시스템에서는 통상 각 프로세서(7)는 자기가 버스에 접속되어 있는 것을 나타낸 온라인신호를 버스를 거쳐서 다른 프로세서로 출력하고 있다. 각 프로세서(7)는 소프트웨어적 또는 하드웨어적으로 자기의 이상을 검지하면 이 온라인신호를 OFF시킨다. 따라서 각 프로세서(7)는 이 온라인신호를 체크함으로써 다른 프로세서(7)의 이상유무를 체크할 수 있다. 그런데 예를들면 프로세서(7-1)이 온라인신호를 OFF하고 프로세서(7-2)가 이것을 검지한 경우에 프로세서(7-2)는 메인메모리(5)를 체크하여 프로세서(7-1)의 레지스터(16)의 값이 통상상태를 나타내고 있는 것을 검지하고 레지스터(16)에 제1이상레벨을 나타내는 정보를 설정하는 동시에 메모리의 대응데이타를 재기입한다. 또 시스템의 프로세서의 이상을 오퍼레이터에 통지하도록 구성되어 있으면 레지스터(16)의 데이타의 재기입은 오퍼레이터가 행하여도 된다.In the system of FIG. 1, each processor 7 normally outputs an on-line signal indicating that it is connected to the bus to another processor via the bus. Each processor 7 turns off this online signal when it detects an abnormality in software or hardware. Therefore, each processor 7 can check the abnormality of the other processor 7 by checking this online signal. For example, when the processor 7-1 turns off the on-line signal and the processor 7-2 detects this, the processor 7-2 checks the main memory 5 to determine the processor 7-1. It detects that the value of the register 16 indicates the normal state, sets the information indicating the first abnormal level in the register 16, and rewrites the corresponding data in the memory. If the operator is configured to notify the operator of an abnormality in the processor of the system, the operator may rewrite the data in the register 16.

선택회로(15)는 레지스터(16)에 제1이상레벨을 나타낸 정보가 설정되어 있는 경우에는 비지제어신호(13-1∼13-n) 및 통상모드신호(14)중에서 가장 주기가 긴 비지제어신호(13-1)를 선택한다. 즉 선택회로(15)는 주기적으로 하이레벨을 출력한다. 파이프라인을 구성하는 유니트(21∼25)내의 비지제어회로(31∼35)는 선택회로(15)에서 공급되는 주기적인 하이레벨신호(비지제어신호(13-1))에 동기되어 비진신호(41-45)를 발생한다. 이때문에 이상 프로세서의 파이프라인을 구성하는 유니트(21∼25)는 때때로 웨이트상태로 된다. 이때문에 각 기본동작의 실행타이밍이 통상 상태로 엇갈린다. 이때문에 외부에서 보면 하드웨어 이상의 같은 동작에서도 프로세서내부의 동작은 통상상태의 것과 다르다. 따라서 전술한 바와같이 많은 하드웨어불편(고장을 포함하여)의 재발이 방지된다. 따라서 당해 프로세서를 시스템으로 복귀시킬 수 있다.When the information indicating the first abnormal level is set in the register 16, the selection circuit 15 performs the busy control with the longest period among the busy control signals 13-1 to 13-n and the normal mode signal 14. Select signal 13-1. That is, the selection circuit 15 outputs a high level periodically. The busy control circuits 31 to 35 in the units 21 to 25 constituting the pipeline are synchronized with the periodic high level signal (the busy control signal 13-1) supplied from the selection circuit 15 to perform the busy signal ( 41-45). For this reason, the units 21-25 which comprise the pipeline of the abnormal processor are sometimes in a weighted state. For this reason, the execution timing of each basic operation is staggered to the normal state. For this reason, the operation inside the processor is different from the normal state even when the same operation is performed on the hardware. Thus, as described above, recurrence of many hardware inconveniences (including failures) is prevented. Thus, the processor can be returned to the system.

이상의 동작에서도 프로세서의 하드웨어 불편의 재발이 방지되어 않았던 경우 또는 다른 원인으로 하드웨어 이상이 검출된 경우에 따라서 당해 프로세서가 재차 시스템에서 떨어진 경우에는 당해 프로세서내의 레지스터(16)에 상기와 같은 수순으로 제2이상레벨을 나타낸 정보가 설정된다. 이 제2이상레벨을 나타내는 정보에 의해서 이번에는 앞선 비지제어신호(13-1)의 다음에 주기가 긴 비지제어신호(13-2)가 선택회로(15)에 의해서 선택된다. 각 파이프라인의 유니트(21∼25)내의 비지제어 회로(31-35)에 의한 제2이상레벨시의 비지제어에 사용된다.In the above operation, if the processor is not prevented from recurring hardware inconvenience or if a hardware error is detected due to another cause, the processor is removed from the system again. Information indicating the abnormal level is set. By the information indicating the second abnormal level, the busy control signal 13-2 with a long period next to the previous busy control signal 13-1 is selected by the selection circuit 15 at this time. It is used for busy control at the second abnormal level by the busy control circuits 31-35 in the units 21 to 25 of each pipeline.

만일 이 제2이상레벨시의 비지제어로도 프로세서의 하드웨어 불편의 재발이 방지되지 않았던 경우 또는 다른 요인으로 하드웨어 이상이 검출된 경우에는 이번에는 비지제어신호(13-3)에 따른 제3이상레벨의 비지제어가 행해진다. 이하 마찬가지로 행하여 가장 주기가 짧은 비지제어신호(13-n)에 따른 제n이상 레벨까지 진행되어도 또 하드웨어이상으로 된 경우에는 프로세서의 시스템으로의 복귀는 행해지지 않고 최종적으로 이상이 생긴 프로세서는 시스템에서 떨어진다.If the busy control at the second abnormal level does not prevent recurrence of hardware inconvenience of the processor or if a hardware abnormality is detected due to another factor, the third abnormal level according to the busy control signal 13-3 at this time. Busy control is performed. In the same manner, even if the process proceeds to the nth or higher level according to the busiest control signal 13-n having the shortest period, and the hardware is abnormal, the processor does not return to the system and finally the processor is abnormal. Falls.

프로세서가 이상레벨로 동작중에는 그 성능은 통상시보다도 몇할이 저하된다. 그러나 시스템적으로 관찰하면 즉시 프로세서를 떼어낸 것보다는 성능저하도 적고 무정지성도 향상된다. 일반적으로 프로세서가 떨어진 경우에는 당해 프로세서가 그 시점에서 실행중이었든 처리를 다른 프로세서가 인계받게 된다. 그러나 하드웨어버그에 기인되는 이상의 경우에는 종래이면 처리를 인계받은 프로세서도 같은 요인으로 이상으로 되어 연속적으로 떨어져나가게 되므로 시스템이 정지하게 된다. 그런데 본실시예에서는 특히 이와같은 경우에 상기한 동작의 타이밍을 엇갈리게 함으로써 하드웨어버그를 포함하여 구제될 가능성이 높기 때문에 무정지성이 대폭으로 향상된다.While the processor is operating at an abnormal level, its performance is several times lower than usual. However, systemic observations result in less performance and better downtime than removing the processor immediately. In general, when a processor runs out, another processor takes over processing whether the processor was running at that time. However, in the case of an abnormality caused by a hardware bug, in the past, the processor which takes over the processing is abnormal due to the same factor and is continuously dropped, so that the system stops. In the present embodiment, however, in such a case, since the timing of the above operation is staggered, there is a high possibility of salvation including a hardware bug, so that non-stoppage is greatly improved.

상기 실시예에서는 선택회로(15)의 출력에 응하여 파이프라인을 구성하는 각 유니트가 동시에 비지상태(웨이트상태)로 되어 있으나 본발명은 이에 한정되지 않는다. 예를들면 제5도에 나타낸 바와같이 파이프라인을 구성하는 복수의 유니트의 일부만을 비지상태로 하여도 된다. 이 경우에는 각 유니트의 상호동작 타이밍도 엇갈리므로 더 효과적이다.In the above embodiment, each unit constituting the pipeline in response to the output of the selection circuit 15 is in a busy state (weight state), but the present invention is not limited to this. For example, as shown in FIG. 5, only a part of the plurality of units constituting the pipeline may be busy. In this case, the timing of interaction of each unit is also staggered, which is more effective.

상기 실시예에서도 외부에서 공급되는 클록신호(11)를 필터, 선택회로를 사용하여 파이프라인에 주기적으로 하이레벨로 되는 신호를 공급하였으나, 본발명은 상기 실시예에 한정되지 않는다. 예를들면 제6도에 나타낸 바와같이 레지스터(16)의 설정치에 응하여 발진주파수를 변경하는 가변주파수발진기(51)를 클록신호(11), 비지신호발생기(13) 및 선택회로(15) 대신으로 사용해도 된다.Also in the above embodiment, the clock signal 11 supplied from the outside is supplied to the pipeline periodically by using a filter and a selection circuit, but the present invention is not limited to the above embodiment. For example, as shown in FIG. 6, instead of the clock signal 11, busy signal generator 13, and selection circuit 15, a variable frequency oscillator 51 for changing the oscillation frequency in response to the set value of the register 16 is shown. You may use it.

또 상기 실시예에서는 이상이 발생된 프로세서이외의 프로세서 또는 오퍼레이터가 이상이 발생된 프로세서의 레지스터(16)의 내용을 재기입하였다. 그러나 본발명은 이에 한정되지 않는다. 예를들면 제7도에 나타낸 바와같이 구성을 채용해도 좋다. 제7도에서는 프로세서(7)내의 이상을 검출하는 하드웨어센서의 출력, 소프트웨어 이상을 나타내 신호, 다른 프로세서로 부터의 신호의 논리오어를 취하는 오어게이트(53)의 출력이 카운터(55)로 공급되어 카운터(55)의 카운트치가 레지스터(16)의 출력대신에 선택회로(15)로 공급된다.In the above embodiment, the processor or the operator other than the processor in which the abnormality has occurred rewrites the contents of the register 16 of the processor in which the abnormality has occurred. However, the present invention is not limited thereto. For example, you may employ | adopt a structure as shown in FIG. In FIG. 7, the output of the hardware sensor for detecting an abnormality in the processor 7, the signal indicating a software abnormality, and the output of the or gate 53 which takes a logic order of the signal from another processor are supplied to the counter 55. The count value of the counter 55 is supplied to the selection circuit 15 instead of the output of the register 16.

오어게이트(53)에 이상을 나타내는 신호가 입력되면 카운터(55)의 카운트치는 1이 증가되고 이상레벨이 갱신된다. 전원상승시나 외부스위치로 부터의 리세트신호에 의해서 카운터(55)의 카운트치는 영(0)으로 크레어 되어 통상상태로 된다. 이와같은 구성으로 하면 외부의 프로세서로 부터의 지시를 기다리지 않고 프로세서 내부에서 검출할 수 있는 이상이 발생된 경우는 파이프라인을 비지상태로 설정할 수 있다.When a signal indicating an abnormality is input to the orifice 53, the count value of the counter 55 is increased by 1 and the abnormal level is updated. When the power supply rises or the reset signal from the external switch causes the count value of the counter 55 to be cleared to zero and returns to a normal state. With such a configuration, the pipeline can be set to the busy state when an abnormality that can be detected inside the processor occurs without waiting for an instruction from an external processor.

상기 실시예에서는 파이프라인 동작을 프로세서를 예로들어 설명하였으나 이에 한정되지 않고 제8도에 나타낸 바와같이 파이프라인 동작을 행하지 않는 프로세서로 공급하는 클록을 변경하도록 하여도 좋다.In the above embodiment, the pipelined operation has been described using the processor as an example, but the present invention is not limited thereto, and the clock supplied to the processor that does not perform the pipelined operation may be changed as shown in FIG.

상기 실시예에서는 이상이 검출된 프로세서에 있어서만 상기한 비지제어가 행해지는 것으로 설명했다. 그러나 용장화된 계산기 시스템중에는 제9도에 나타낸 바와같이 복수의 프로세서로 되는 몇개의 그룹으로 구성되고 그룹단위로 처리의 인계가 행해지고 그룹내에서는 각 프로세서가 동일 처리를 행하는 것이 있다. 이와같은 경우에는 이상이 검출된 프로세서가 속하는 그룹내의 전체 프로세서에서 상기한 비지제어를 행하도록 하여도 좋다.In the above embodiment, the busy control described above is performed only in the processor in which the abnormality is detected. However, in the redundant calculator system, as shown in FIG. 9, there are some groups composed of a plurality of processors, the processing is carried out in group units, and each processor performs the same processing in the group. In such a case, the above busy control may be performed by all the processors in the group to which the abnormality is detected.

상기 실시예에서는 프로세서 이상시의 비지제어를 제1이상레벨로 부터 차례로 이상이 해소되도록 까지 단계적으로 행할 경우에 대해서 설명하였으나 이에 한정되는 것은 아니다. 예를들면 특정주기의 비지제어신호를 하나만 마련하고 1레벨의 비지제어를 행하도록 해도 좋다. 또 상기 실시예에서는 복수의 프로세서로 구성되는 용장화된 계산기 시스템에 대해서 설명하였으나 단체의 프로세서로 구성되는 계산기 시스템에도 마찬가지로 응용가능하다.In the above embodiment, the case where the busy control at the time of processor abnormality is sequentially performed from the first abnormal level until the abnormality is resolved is not limited thereto. For example, only one busy control signal of a specific period may be provided and busy control of one level may be performed. In the above embodiment, the redundant calculator system composed of a plurality of processors has been described, but it is similarly applicable to a calculator system composed of a single processor.

이상 상세히 설명한 바와같이 본발명에 의하면 계산기(프로세서)의 이상발생시에 계산기 내부의 각 기본동작의 실행타이밍을 통상과 엇갈리게 하는 구성으로 한다. 이에 의해서 설계상의 잘못이나 소프트웨어에러등에 기인되는 계산기의 이상의 재발을 방지할 수 있는 경우가 많다. 따라서 그 계산기를 시스템에서 떼어내지 않고 시스템으로 복귀시킬 수 있게 되어 시스템의 무정지정을 향상시킬 수 있다.As described in detail above, according to the present invention, when an abnormality occurs in the calculator (processor), the execution timing of each basic operation in the calculator is staggered from the ordinary. This often prevents an abnormal recurrence of the calculator caused by a design error or a software error. Thus, it is possible to return the calculator to the system without removing it from the system, thereby improving the system's designation.

Claims (3)

각각 동작타이밍 신호에 따라 제어되며, 복수의 제어수단을 포함하며, 데이타를 처리하는 복수의 데이타 처리수단(21∼25)과, 각각의 주기에 제1 및 제2논리치를 취하며, 상기 제1 및 제2논리치간에서 교호하며, 또한 계산기 시스템의 이상 상태를 나타내는 복수의 제1신호(13)을 공급하는 신호발생수단(12)과, 상기 계산기 시스템의 정상상태를 나타내는 제3논리치만을 취하는 제2신호(14)를 공급하는 수단과, 상기 제1 및 제2신호를 수신하여 그중 하나를 선택하는 선택수단(15)과,, 상기 선택수단(15)에 의해 선택될 신호를 지정하는 선택신호를 발생하여 상기 선택신호를 상기 선택수단에 공급하는 선택지정수단(16)을 포함하며, 상기 데이타 처리수단(21-25)중 하나에 상응하는 복수의 제어수단은 상기 선택수단(15)으로부터 출력된 상기 제1신호들중 하나를 수신시 비지신호를 발생하여 각각의 동작 타이밍 신호를 이동하고, 또한 상기 제2신호수신시 각각의 동작타이밍 신호를 유지하는 것을 특징으로 하는 계산기 시스템.A plurality of data processing means (21 to 25) for controlling data, each of which is controlled according to an operation timing signal, and takes first and second logic values at respective periods, Alternately between the second logic value and the signal generating means 12 for supplying a plurality of first signals 13 indicating an abnormal state of the calculator system, and a third logic value indicating the steady state of the calculator system. Means for supplying a second signal 14, selection means 15 for receiving the first and second signals and selecting one of them, and selection for specifying a signal to be selected by the selection means 15; And a selection designation means (16) for generating a signal and supplying the selection signal to the selection means, wherein a plurality of control means corresponding to one of the data processing means (21-25) is provided from the selection means (15). Receive one of the output first signals And a time busy signal to move each operation timing signal, and to maintain each operation timing signal upon receiving the second signal. 제1항에 있어서, 상기 선택신호는 상기 계산기의 정상상태에서는 복수의 제어수단에 공급될 상기 제2신호(14)의 선택을 지정하고, 상기 계산기의 이상 상태에서는 상기 제1신호(13)들중 하나의 선택을 지정하는 것을 특징으로 하는 계산기 시스템.2. The selection signal according to claim 1, wherein the selection signal designates the selection of the second signal 14 to be supplied to a plurality of control means in the normal state of the calculator, and the first signals 13 in the abnormal state of the calculator. A calculator system, characterized by specifying one of the choices. 제1항에 있어서, 상기 선택지정수단(16)은 상기 복수의 제1신호들중의 하나의 선택지정에 의해 상기 데이타 처리수단(21-25)의 기본동작의 기본동작의 동작타이밍을 바꾸어도 상기 데이타 처리수단의 이상상태가 회복되지 않는 경우에 상기 복수의 제1신호중 현재 선택되어 있는 신호보다도 높은 주파수에서 상기 제1 및 제2논리치간에서 교호하는 상기 제1신호들중 다른 신호의 선택을 지정하는 것을 특징으로 하는 계산기 시스템.The method of claim 1, wherein the selection specifying means (16) changes the operation timing of the basic operation of the basic operation of the data processing means (21-25) by selecting one of the plurality of first signals. Designating the selection of another one of the first signals alternated between the first and second logic values at a higher frequency than the currently selected one of the plurality of first signals when the abnormal state of the data processing means is not recovered. Calculator system characterized in that.
KR1019910011989A 1990-07-17 1991-07-15 Reliable computing system KR950005524B1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP1990-187252 1990-07-17
JP2-187252 1990-07-17
JP2187252A JP2839664B2 (en) 1990-07-17 1990-07-17 Computer system

Publications (2)

Publication Number Publication Date
KR920003158A KR920003158A (en) 1992-02-29
KR950005524B1 true KR950005524B1 (en) 1995-05-25

Family

ID=16202715

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019910011989A KR950005524B1 (en) 1990-07-17 1991-07-15 Reliable computing system

Country Status (3)

Country Link
US (1) US5426778A (en)
JP (1) JP2839664B2 (en)
KR (1) KR950005524B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812822A (en) * 1995-12-19 1998-09-22 Selway; David W. Apparatus for coordinating clock oscillators in a fully redundant computer system
US7716528B2 (en) * 2004-09-07 2010-05-11 Broadcom Corporation Method and system for configurable trigger logic for hardware bug workaround in integrated circuits

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3702463A (en) * 1970-12-23 1972-11-07 Nasa Data processor with conditionally supplied clock signals
JPS57164636A (en) * 1981-04-03 1982-10-09 Hitachi Ltd Control method for transmission system
JPH0812621B2 (en) * 1981-10-01 1996-02-07 ストレイタス・コンピュータ・インコーポレイテッド Information transfer method and device
US4644498A (en) * 1983-04-04 1987-02-17 General Electric Company Fault-tolerant real time clock
US4651277A (en) * 1983-09-16 1987-03-17 Sanyo Electric Co., Ltd. Control system for a magnetic disk drive unit
BR8503913A (en) * 1984-08-18 1986-05-27 Fujitsu Ltd ERROR RECOVERY SYSTEM AND PROCESS IN A CHANNEL DATA PROCESSOR HAVING A CONTROL MEMORY DEVICE AND ERROR RECOVERY PROCESS IN A CHANNEL TYPE DATA PROCESSOR
US4835728A (en) * 1986-08-13 1989-05-30 Amdahl Corporation Deterministic clock control apparatus for a data processing system
US5261082A (en) * 1987-11-20 1993-11-09 Hitachi, Ltd. Semiconductor integrated circuit having a plurality of oscillation circuits
JPH0387909A (en) * 1989-05-10 1991-04-12 Seiko Epson Corp Information processor and microprocessor
US5235698A (en) * 1989-09-12 1993-08-10 Acer Incorporated Bus interface synchronization control system

Also Published As

Publication number Publication date
US5426778A (en) 1995-06-20
KR920003158A (en) 1992-02-29
JPH0474222A (en) 1992-03-09
JP2839664B2 (en) 1998-12-16

Similar Documents

Publication Publication Date Title
US7698594B2 (en) Reconfigurable processor and reconfiguration method executed by the reconfigurable processor
US7320091B2 (en) Error recovery within processing stages of an integrated circuit
US8407537B2 (en) Error recover within processing stages of an integrated circuit
US7124318B2 (en) Multiple parallel pipeline processor having self-repairing capability
US9448875B2 (en) Error recovery within integrated circuit
US7117389B2 (en) Multiple processor core device having shareable functional units for self-repairing capability
KR20010005956A (en) Fault tolerant computer system
JPH0683663A (en) Multiprocessor computer system
Azeem et al. Error recovery technique for coarse-grained reconfigurable architectures
US7237148B2 (en) Functional interrupt mitigation for fault tolerant computer
JP2000187600A (en) Watchdog timer system
KR950005524B1 (en) Reliable computing system
US6810489B1 (en) Checkpoint computer system utilizing a FIFO buffer to re-synchronize and recover the system on the detection of an error
US20080229134A1 (en) Reliability morph for a dual-core transaction-processing system
WO2006115474A1 (en) Error recovery within processing stages of an integrated circuit
US6014757A (en) Fast domain switch and error recovery in a secure CPU architecture
JPH1063541A (en) Program hang-up monitor device for computer system
US20200125463A1 (en) Fault Tolerant Computer Systems and Methods
JP5888419B2 (en) Data processing apparatus, processor, and operation history recording method
JPH0462641A (en) Multiprocessor system
JPH06214831A (en) Abnormality detector for central processing unit
Popli et al. A Reconfiguration Technique for Reliable VLSI DSP Array Processors
JPS63231552A (en) Memory device
KR20040003870A (en) Circuit for clocking change of MCU and method for the same
JPH08212069A (en) Data processor

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20070430

Year of fee payment: 13

LAPS Lapse due to unpaid annual fee