KR101560497B1 - Method for controlling reset of lockstep replicated processor cores and lockstep system using the same - Google Patents
Method for controlling reset of lockstep replicated processor cores and lockstep system using the same Download PDFInfo
- Publication number
- KR101560497B1 KR101560497B1 KR1020140129293A KR20140129293A KR101560497B1 KR 101560497 B1 KR101560497 B1 KR 101560497B1 KR 1020140129293 A KR1020140129293 A KR 1020140129293A KR 20140129293 A KR20140129293 A KR 20140129293A KR 101560497 B1 KR101560497 B1 KR 101560497B1
- Authority
- KR
- South Korea
- Prior art keywords
- processor cores
- lockstep
- reliability
- processor
- reset
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/24—Resetting means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Hardware Redundancy (AREA)
Abstract
Description
본 발명은 이중화 기술에 관한 것으로, 더욱 상세하게는, 락스텝 방식의 이중화 기술에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a redundancy technique, and more particularly, to a lock-step redundancy technique.
이중화 기술 중 락스텝(Lockstep) 방식은 중복 컴퓨팅 시스템을 이용하여 동일한 시점에 동일한 연산 세트를 수행하는 방식이다. 락스텝이라는 용어는 동일한 연산이 두 프로세서에서 수행되는 것이 마치 여러 죄수들의 발을 사슬로 채워 함께 걷게 만든 것(lockstep)을 연상하게 하여 파생되었다.Among the redundancy techniques, the lockstep method is a method of performing the same set of operations at the same time using a redundant computing system. The term lockstep was derived from the idea that the same operation performed on both processors reminded a lockstep of a group of prisoners with their feet packed together.
최근에 일반화되는 멀티코어 프로세서는 통상적으로 속도를 향상시키기 위함이지만, 자동차 분야에서는 오토모티브 안전 표준(ISO 26262)에서 요구하는 차량의 안정성 개념을 충족하여 높은 등급을 받기 위해 복수의 프로세서 코어들에 기초한 락스텝 시스템이 등장하고 있다. While the recent generalization of multicore processors is typically to improve speed, the automotive sector has developed a lock based on multiple processor cores to meet the vehicle stability requirements required by the Automotive Safety Standard (ISO 26262) Step system is emerging.
락스텝 시스템은 둘 이상의 프로세서 코어들에서 동일한 연산을 수행하여 결과를 비교함으로써 연산의 무오류를 검증할 수 있다. 프로세서 코어가 두 개인 이중화 방식(DMR, dual modular redundant)에서는, 두 연산 결과가 다를 경우에 오류가 발생하였다는 점은 알 수 있지만, 어느 프로세서 코어에서 오류를 일으켰는지 알 수 없다는 문제가 있다. 셋 이상의 프로세서 코어를 이용하는 삼중화 방식(TMR, triple modular redundant)라면 다수결로 오류를 교정할 수 있지만, 오류를 일으킨 프로세서 코어를 일시적으로 배제하게 되면 프로세서 코어가 둘인 이중화 시스템과 다를 바 없다.The lockstep system can verify the error of operation by performing the same operation on two or more processor cores and comparing the results. In a dual modular redundant (DMR) system with two processor cores, it can be seen that an error occurred when the two operation results are different, but there is a problem that it is not known which processor core has caused the error. If a triple modular redundant (TMR) with three or more processor cores is used, the majority of the errors can be corrected. However, if the processor core causing the error is temporarily excluded, it is no different from a dual-processor system having two processor cores.
한편, 오류가 발생한 경우에 락스텝 시스템은 오류를 일으킨 프로세서 코어를 리셋하고 리셋된 프로세서 코어의 클록과 내부 상태를 정상 프로세서 코어의 클럭과 내부 상태에 대해 동기화하여야 한다. 프로세서 코어가 두 개인 락스텝 시스템은 어느 프로세서 코어에서 오류가 일어났는지 알 수 없기 때문에 두 프로세서 코어들을 모두 리셋하여야 한다.On the other hand, if an error occurs, the lockstep system must reset the faulty processor core and synchronize the clocked and internal state of the resetted processor core with the clock and internal state of the normal processor core. A lockstep system with two processor cores must reset both processor cores because it is not possible to know which processor core failed.
이중화된 프로세서 코어들의 리셋은 두 프로세서 코어를 동시에 리셋하는 방식 또는 순차적으로 리셋하는 방식이 있을 수 있다. 동시 리셋 방식은 이중화 시스템이 일시적으로 멈추게 되는 단점이 있고, 순차적 리셋 방식은 만약 나중에 리셋되는 프로세서 코어가 오류를 일으켰던 프로세서 코어라면 정상 프로세서 코어가 리셋되는 동안 이중화 시스템이 오류를 일으키는 프로세서 코어에 의해 동작하는 문제가 있다.The reset of the dual processor cores may be a method of simultaneously resetting two processor cores or a method of sequentially resetting them. The simultaneous reset method has the disadvantage that the redundant system temporarily stops, and the sequential reset method is performed by the processor core which causes the redundant system to fail while the processor core is reset when the processor core that is reset later is the processor core that caused the error There is a problem.
본 발명이 해결하고자 하는 과제는 락스텝으로 이중화된 프로세서 코어들의 리셋 제어 방법 및 이를 이용하는 락스텝 시스템을 제공하는 데에 있다.A problem to be solved by the present invention is to provide a reset control method for redundant processor cores in a lock step and a lock step system using the same.
본 발명이 해결하고자 하는 과제는 락스텝 시스템에 오류가 발생할 경우에 락스텝 이중화된 프로세서 코어들 중에 먼저 리셋시킬 프로세서 코어를 선정하는 리셋 제어 방법 및 락스텝 시스템을 제공하는 데에 있다.A problem to be solved by the present invention is to provide a reset control method and a lockstep system for selecting a processor core to be reset first among lockstep duplicated processor cores when an error occurs in the lockstep system.
본 발명의 해결과제는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 해결과제들은 아래의 기재로부터 당업자에게 명확히 이해될 수 있을 것이다.The solution to the problem of the present invention is not limited to those mentioned above, and other solutions not mentioned can be clearly understood by those skilled in the art from the following description.
본 발명의 일 측면에 따른 락스텝 시스템은,A lockstep system according to an aspect of the present invention includes:
락스텝 이중화된 복수의 프로세서 코어들;A plurality of lockstep dual redundant processor cores;
상기 프로세서 코어들 각각에 연결된 주변 회로 모듈들;Peripheral circuit modules connected to each of the processor cores;
상기 프로세서 코어들의 동기화 상태를 제어하고 상기 프로세서 코어들의 연산 결과의 오류를 검증하는 락스텝 제어부; 및A lockstep control unit for controlling a synchronization state of the processor cores and verifying an error of an operation result of the processor cores; And
상기 프로세서 코어들 및 주변 회로 모듈들의 전기적 동작 상태, 상기 프로세서 코어들 및 주변 회로 모듈들 사이 또는 상기 프로세서 코어들 및 상기 락스텝 제어부 사이의 신호 전송 상태를 모니터링하고, 모니터링된 동작 상태 및 오류 상태를 기초로 상기 프로세서 코어들 각각의 신뢰도를 결정하는 신뢰도 모니터링부를 포함할 수 있다.An electrical operating state of the processor cores and peripheral circuit modules, a signal transmission state between the processor cores and the peripheral circuit modules or between the processor cores and the lock step controller, And a reliability monitoring unit that determines reliability of each of the processor cores based on the reliability of the processor core.
일 실시예에 따라, 상기 락스텝 제어부는,According to one embodiment, the lock-
상기 프로세서 코어들의 연산 결과에서 오류가 발생하면 상기 신뢰도 모니터링부에 먼저 리셋될 프로세서 코어의 선정을 요청하고, 요청에 응답하여 상기 신뢰도 모니터링부로부터 통지된 프로세서 코어에 리셋 제어 신호를 전송하도록 동작하며,Requesting the reliability monitoring unit to select a processor core to be reset first when an error occurs in an operation result of the processor cores and to transmit a reset control signal to the processor core notified from the reliability monitoring unit in response to the request,
상기 신뢰도 모니터링부는, The reliability monitoring unit,
상기 락스텝 제어부의 요청에 응답하여 신뢰도가 가장 낮은 프로세서 코어를 선정하고, 선정된 프로세서 코어를 상기 락스텝 제어부에 통지하도록 동작할 수 있다.In response to a request from the lock-step control unit, to select a processor core having the lowest reliability, and notify the lock-step control unit of the selected processor core.
일 실시예에 따라, 상기 락스텝 제어부는,According to one embodiment, the lock-
상기 프로세서 코어들의 연산 결과에서 오류가 발생하면 상기 신뢰도 모니터링부에 먼저 리셋될 프로세서 코어의 선정 및 리셋 제어를 요청하도록 동작하며,And to request the reliability monitoring unit to select and reset the processor core to be reset first when an error occurs in the calculation results of the processor cores,
상기 신뢰도 모니터링부는, The reliability monitoring unit,
상기 락스텝 제어부의 요청에 응답하여 신뢰도가 가장 낮은 프로세서 코어를 선정하고, 선정된 프로세서 코어에 대해 리셋 제어 신호를 전송하도록 동작할 수 있다.In response to a request from the lock-step control unit, to select a processor core having the lowest reliability, and to transmit a reset control signal to the selected processor core.
일 실시예에 따라, 상기 신뢰도 모니터링부는,According to one embodiment, the reliability monitoring unit includes:
상기 프로세서 코어들 및 주변 회로 모듈들 각각의 전압 상태, 클럭 상태, 연산 지연 시간, 신호 전송 지연 시간, 연산 오류 횟수, 신호 전송 오류 횟수, 신호 재전송 발생 횟수, 리셋 횟수 중 적어도 하나의 신뢰성 인자를 모니터링하도록 동작할 수 있다.At least one reliability factor of a voltage state, a clock state, an operation delay time, a signal transmission delay time, a calculation error count, a signal transmission error count, a signal retransmission occurrence count, and a reset count of each of the processor cores and peripheral circuit modules Lt; / RTI >
일 실시예에 따라, 상기 신뢰도 모니터링부는,According to one embodiment, the reliability monitoring unit includes:
상기 적어도 하나의 신뢰성 인자를 기초로 신뢰도를 연산하도록 동작할 수 있다.And to calculate reliability based on the at least one reliability factor.
본 발명의 다른 측면에 따른 락스텝 시스템을 위한 락스텝 프로세서 코어 리셋 제어 방법은,A lockstep processor core reset control method for a lockstep system according to another aspect of the present invention includes:
락스텝 이중화된 복수의 프로세서 코어들, 주변 회로 모듈들 및 락스텝 제어부를 포함하는 락스텝 시스템을 위한 락스텝 프로세서 코어 리셋 제어 방법으로서,CLAIMS 1. A method of controlling a lockstep processor core reset for a lockstep system including a plurality of redundantly-arranged processor cores, peripheral circuit modules, and a lockstep control,
상기 락스텝 시스템이,Wherein the lock step system comprises:
상기 프로세서 코어들의 동기화 상태를 제어하고 상기 프로세서 코어들의 연산 결과의 오류를 검증하는 단계;Controlling a synchronization state of the processor cores and verifying an error in an operation result of the processor cores;
상기 프로세서 코어들 및 주변 회로 모듈들의 전기적 동작 상태, 상기 프로세서 코어들 및 주변 회로 모듈들 사이 또는 상기 프로세서 코어들 및 상기 락스텝 제어부 사이의 신호 전송 상태를 모니터링하는 단계; 및Monitoring an electrical operating state of the processor cores and peripheral circuit modules, a signal transmission state between the processor cores and peripheral circuit modules or between the processor cores and the lockstep control; And
상기 모니터링된 동작 상태 및 오류 상태를 기초로 상기 프로세서 코어들 각각의 신뢰도를 결정하는 단계를 포함할 수 있다.And determining reliability of each of the processor cores based on the monitored operating state and the error state.
일 실시예에 따라, 상기 락스텝 시스템을 위한 락스텝 프로세서 코어 리셋 제어 방법은,According to one embodiment, a lockstep processor core reset control method for the lockstep system comprises:
상기 프로세서 코어들의 연산 결과에서 오류가 발생하면, 먼저 리셋될 프로세서 코어로서 신뢰도가 가장 낮은 프로세서 코어를 선정하는 단계; 및Selecting a processor core having the lowest reliability as a processor core to be reset first if an error occurs in an operation result of the processor cores; And
선정된 프로세서 코어에 리셋 제어 신호를 전송하는 단계를 포함할 수 있다.And transmitting a reset control signal to the selected processor core.
일 실시예에 따라, 상기 모니터링하는 단계는,According to one embodiment, the monitoring comprises:
상기 프로세서 코어들 및 주변 회로 모듈들 각각의 전압 상태, 클럭 상태, 연산 지연 시간, 신호 전송 지연 시간, 연산 오류 횟수, 신호 전송 오류 횟수, 신호 재전송 발생 횟수, 리셋 횟수 중 적어도 하나의 신뢰성 인자를 모니터링하는 단계를 포함할 수 있다.At least one reliability factor of a voltage state, a clock state, an operation delay time, a signal transmission delay time, a calculation error count, a signal transmission error count, a signal retransmission occurrence count, and a reset count of each of the processor cores and peripheral circuit modules .
일 실시예에 따라, 상기 락스텝 시스템을 위한 락스텝 프로세서 코어 리셋 제어 방법은,According to one embodiment, a lockstep processor core reset control method for the lockstep system comprises:
상기 적어도 하나의 신뢰성 인자를 기초로 신뢰도를 연산하는 단계를 더 포함할 수 있다.And calculating reliability based on the at least one reliability factor.
본 발명의 또 다른 측면에 따른 컴퓨터용 프로그램은, 컴퓨터에서 일 실시예에 따른 락스텝 시스템을 위한 락스텝 프로세서 코어 리셋 제어 방법의 각 단계들을 구현하기 위해 컴퓨터로 독출 가능한 기록 매체에 저장된 컴퓨터용 프로그램일 수 있다.A program for a computer according to another aspect of the present invention is a program for a computer stored in a computer readable recording medium for implementing each step of a method of controlling a lockstep processor core reset for a lockstep system according to an embodiment, Lt; / RTI >
본 발명의 락스텝으로 이중화된 프로세서 코어들의 리셋 제어 방법 및 이를 이용하는 락스텝 시스템에 따르면, 락스텝 시스템에 오류가 발생할 경우에 락스텝 이중화된 프로세서 코어들 중에 먼저 리셋시킬 프로세서 코어를 선정할 수 있다.According to the reset control method of the duplicated processor cores in the lock step of the present invention and the lock step system using the same, it is possible to select the processor core to reset first among the lock step duplicated processor cores when a failure occurs in the lock step system .
본 발명의 락스텝으로 이중화된 프로세서 코어들의 리셋 제어 방법 및 이를 이용하는 락스텝 시스템에 따르면, 소정의 판단 근거에 따라 먼저 리셋될 프로세서 코어를 선정하므로 리셋이 수행되는 동안에 이중화 시스템이 오류를 출력할 가능성을 낮출 수 있다.According to the reset control method of the processor cores duplicated in the lock step of the present invention and the lock step system using the same, since the processor core to be reset is selected first according to a predetermined judgment basis, the possibility that the redundancy system outputs an error .
본 발명의 락스텝으로 이중화된 프로세서 코어들의 리셋 제어 방법 및 이를 이용하는 락스텝 시스템에 따르면, 프로세서 코어의 외부에서 프로세서 코어의 오류 가능성을 모니터링하므로 오버헤드가 최소화될 수 있다.According to the reset control method of the redundant processor cores in the lock step of the present invention and the lock step system using the same, overhead can be minimized by monitoring the possibility of error of the processor core outside the processor core.
본 발명의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to those mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the following description.
도 1은 본 발명의 일 실시예에 따른 락스텝 시스템을 예시한 개념도이다.
도 2는 본 발명의 일 실시예에 따른 락스텝 시스템을 위한 이중화된 프로세서 코어들의 리셋 제어 방법을 예시한 순서도이다.1 is a conceptual diagram illustrating a lockstep system according to an embodiment of the present invention.
2 is a flowchart illustrating a method of controlling a reset of duplicated processor cores for a lockstep system according to an embodiment of the present invention.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.For the embodiments of the invention disclosed herein, specific structural and functional descriptions are set forth for the purpose of describing an embodiment of the invention only, and it is to be understood that the embodiments of the invention may be practiced in various forms, The present invention should not be construed as limited to the embodiments described in Figs.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. The same reference numerals are used for the same constituent elements in the drawings and redundant explanations for the same constituent elements are omitted.
도 1은 본 발명의 일 실시예에 따른 락스텝 시스템을 예시한 개념도이다.1 is a conceptual diagram illustrating a lockstep system according to an embodiment of the present invention.
도 1을 참조하면, 락스텝 시스템(10)은 복수의 프로세서 코어들(11, 12), 주변 회로 모듈들(13a, 13b, 14a, 14b), 락스텝 제어부(15) 및 신뢰도 모니터링부(16)를 포함할 수 있다.1, the lockstep system 10 includes a plurality of
복수의 프로세서 코어들(11, 12)은 락스텝 제어부(15)에 의해 락스텝 방식으로 이중화된다. 이를 위해, 락스텝 제어부(15)는 프로세서 코어들(11, 12)의 클럭 동기화 내지 내부 상태 변수들의 동기화와 같은 다양한 속성의 동기화 상태들을 제어하고, 동기화된 프로세서 코어들(11, 12)의 연산 결과들의 비교를 통해 연산 결과의 오류 여부를 검증하도록 동작한다. The plurality of
주변 회로 모듈들(13a, 13b, 14a, 14b)은 복수의 프로세서 코어들(11, 12), 프로세서 코어들 각각에 연결되며, 예를 들어 프로세서 코어(11 또는 12)가 전용으로 사용하는 메모리, 입출력 회로 모듈, 통신 모듈 등을 포함할 수 있다.The
프로세서 코어(11 또는 12)와 주변 회로 모듈들(13a, 13b 또는 14a, 14b)은 끊임없이 신호를 생성하고 처리하며 주고 받는데, 이러한 신호의 생성, 전송, 수신 내지 처리 동작 시에 시간의 흐름에 따라 오류를 일으킬 가능성을 배제할 수 없다.The
이러한 오류는 전압, 클럭, 온도 등의 요인들과 같은 부적절한 동작 조건에 따른 하드웨어적 오류 또는 소프트웨어의 결함에 의한 소프트웨어적 오류로 구분될 수 있다.These errors can be classified into hardware errors due to improper operating conditions such as voltage, clock, temperature, or software errors caused by software defects.
만약 소프트웨어적 오류가 있다면, 두 프로세서 코어들이 동일한 기능과 연산을 중복적으로 수행하기 때문에 소프트웨어적 오류는 두 프로세서 코어들에서 실질적으로 거의 동일하게 일어날 것이므로, 소프트웨어적 오류로써 두 프로세서 코어들의 신뢰도를 결정하기 어렵다. If there is a software error, the software error will occur substantially the same in both processor cores because the two processor cores perform the same functions and operations redundantly, so the reliability of the two processor cores It is difficult to do.
하지만, 하드웨어적 오류는 두 프로세서 코어들에서 서로 다르게 일어날 것이므로, 본 발명의 실시예들은 하드웨어적 오류들로써 두 프로세서 코어들의 신뢰도를 결정할 수 있다.However, since hardware errors will occur differently in the two processor cores, embodiments of the present invention can determine the reliability of the two processor cores with hardware errors.
이를 위한 락스텝 시스템(10)의 신뢰도 모니터링부(16)는 프로세서 코어들(11, 12) 및 주변 회로 모듈들(13, 14)의 전기적 동작 상태, 프로세서 코어들(11, 12 등) 및 주변 회로 모듈들 사이 또는 프로세서 코어(11, 12)들 및 락스텝 제어부(13) 사이의 신호 전송 상태를 모니터링하고, 모니터링된 동작 상태 및 오류 상태를 기초로 프로세서 코어들(11, 12) 각각의 신뢰도를 결정할 수 있다,The reliability monitoring unit 16 of the lockstep system 10 for this purpose is configured to monitor the electrical operating states of the
구체적으로, 신뢰도 모니터링부(16)는 프로세서 코어들(11, 12) 및 주변 회로 모듈들(13, 14) 각각의 전압 상태, 클럭 상태, 연산 지연 시간, 신호 전송 지연 시간, 연산 오류 횟수, 신호 전송 오류 횟수, 신호 재전송 발생 횟수, 리셋 횟수 중 적어도 하나의 신뢰성 인자를 모니터링할 수 있다.Specifically, the reliability monitoring unit 16 monitors the voltage state of each of the
전압 상태는 전압 레벨의 변동에 기초하여, 클럭 상태는 클럭 주파수의 변동에 기초하여 모니터링될 수 있다. 프로세서 코어들(11, 12)은 내부적으로 패리티 내지 체크섬에 기반하여 연산의 오류를 검출하고 재연산하거나 오류를 수정할 수 있는데, 이에 따라 연산 지연 시간 또는 연산 오류 횟수가 모니터링될 수 있다. 프로세서 코어들(11, 12)과 주변 회로 모듈들(13, 14) 사이에 버스나 그밖의 채널을 통한 신호 전송 시에도 패리티나 체크섬에 기반하여 신호 전송의 오류를 검출하고 재전송하거나 오류를 수정할 수 있는데, 이에 따라 신호 전송 오류 횟수나 신호 재전송 발생 횟수가 모니터링될 수 있다. 시동 후 지금까지 중대한 오류로 인해 프로세서 코어들(11, 12)이 리셋된 횟수도 모니터링될 수 있다.The voltage state may be based on variations in the voltage level, and the clock state may be monitored based on variations in the clock frequency. The
이러한 신뢰성 인자들은 소정의 환산 규칙에 따라 수치화 내지 점수화되고, 숫자로 표시된 신뢰성 인자들에 기초하여 신뢰도가 산출될 수 있다. 예를 들어, 수치화된 신뢰성 인자들의 단순 가중 합산 또는 이동 평균으로써 신뢰도가 산출될 수 있다.These reliability factors are quantified and scored according to a predetermined conversion rule, and reliability can be calculated based on numerical reliability factors. For example, reliability can be calculated by simple weighted summation or moving average of the quantified reliability factors.
한편 리셋될 프로세서 코어의 선정 및 프로세서 코어의 리셋 제어는 다음과 같은 실시예들에 따라 수행될 수 있다.On the other hand, the selection of the processor core to be reset and the reset control of the processor core can be performed according to the following embodiments.
일 실시예에서, 락스텝 제어부(15)는, 프로세서 코어들(11, 12)의 연산 결과에서 오류가 발생하면 신뢰도 모니터링부(16)에 먼저 리셋될 프로세서 코어의 선정을 요청할 수 있다. 이러한 요청에 응답하여 신뢰도 모니터링부(16)가 신뢰도가 가장 낮게 산출되어 있는 프로세서 코어를 선정하고, 선정된 프로세서 코어를 락스텝 제어부(15)에 통지할 수 있다. In one embodiment, the lockstep control unit 15 may request the reliability monitoring unit 16 to select a processor core to be reset first when an error occurs in the calculation results of the
이어서 락스텝 제어부(15)는 신뢰도 모니터링부(16)로부터 통지된 프로세서 코어(11 또는 12)에 리셋 제어 신호(RST)를 전송할 수 있다.The lock step control unit 15 can transmit the reset control signal RST to the
다른 실시예에서, 락스텝 제어부(15)는, 프로세서 코어들(11, 12)의 연산 결과에서 오류가 발생하면 신뢰도 모니터링부(16)에 먼저 리셋될 프로세서 코어의 선정 및 리셋 제어를 요청할 수 있다.In another embodiment, the lockstep control unit 15 may request the reliability monitoring unit 16 to select and reset the processor core to be reset first when an error occurs in the calculation results of the
신뢰도 모니터링부(16)는 이러한 락스텝 제어부(15)의 요청에 응답하여 신뢰도가 가장 낮게 산출된 프로세서 코어를 선정하고, 선정된 프로세서 코어에 대해 리셋 제어 신호(RST)를 전송할 수 있다.The reliability monitoring unit 16 may select a processor core having the lowest reliability in response to a request from the lock step control unit 15 and may transmit a reset control signal RST to the selected processor core.
도 2는 본 발명의 일 실시예에 따른 락스텝 시스템을 위한 이중화된 프로세서 코어들의 리셋 제어 방법을 예시한 순서도이다.2 is a flowchart illustrating a method of controlling a reset of duplicated processor cores for a lockstep system according to an embodiment of the present invention.
도 2를 참조하면, 본 발명의 실시예들에 따라, 락스텝 이중화된 복수의 프로세서 코어들, 주변 회로 모듈들 및 락스텝 제어부를 포함하는 락스텝 시스템을 위한 락스텝 프로세서 코어 리셋 제어 방법은 단계(S21)에서 시작한다.Referring to FIG. 2, in accordance with embodiments of the present invention, a method of controlling a lockstep processor core reset for a lockstep system including a plurality of lockstep dualized processor cores, peripheral circuit modules, (S21).
단계(S21)에서 락스텝 시스템(10)이, 프로세서 코어들(11, 12)의 동기화 상태를 제어하고 프로세서 코어들(11, 12)의 연산 결과의 오류를 검증할 수 있다.The lockstep system 10 may control the synchronization state of the
이어서, 단계(S22)에서, 락스텝 시스템(10)이, 프로세서 코어들(11, 12) 및 주변 회로 모듈들(13, 14)의 전기적 동작 상태, 프로세서 코어들(11, 12) 및 주변 회로 모듈들(13, 14) 사이 또는 프로세서 코어들(11, 12) 및 락스텝 제어부(15) 사이의 신호 전송 상태를 모니터링할 수 있다.Next, in step S22, the lockstep system 10 determines whether the
구체적으로, 모니터링되는 신뢰성 인자들은 프로세서 코어들(11, 12) 및 주변 회로 모듈들(13, 14) 각각의 전압 상태, 클럭 상태, 연산 지연 시간, 신호 전송 지연 시간, 연산 오류 횟수, 신호 전송 오류 횟수, 신호 재전송 발생 횟수, 리셋 횟수 중 적어도 하나로 구성될 수 있다.Specifically, the reliability factors monitored are the voltage state of each of the
단계(S23)에서, 락스텝 시스템(10)은, 모니터링된 동작 상태 및 오류 상태를 기초로 프로세서 코어들(11, 12) 각각의 신뢰도를 결정할 수 있다.In step S23, the lockstep system 10 may determine the reliability of each of the
실시예에 따라, 신뢰도를 결정하기 위해, 적어도 하나의 신뢰성 인자를 기초로 신뢰도를 연산할 수 있다.According to an embodiment, to determine reliability, reliability can be calculated based on at least one reliability factor.
추가적으로, 단계(S24)에서, 락스텝 시스템(10)은, 프로세서 코어들(11, 12)의 연산 결과에서 오류가 발생하면, 신뢰도가 가장 낮은 프로세서 코어(11)를 가장 먼저 리셋될 프로세서 코어로서 선정할 수 있다.In addition, in step S24, when an error occurs in the calculation results of the
단계(S25)에서, 락스텝 시스템(10)이, 선정된 프로세서 코어(11)에 리셋 제어 신호(RST)를 전송할 수 있다.The lockstep system 10 can transmit the reset control signal RST to the selected
상술한 락스텝 시스템을 위한 락스텝 프로세서 코어 리셋 제어 방법의 각 단계들은 컴퓨터용 프로그램으로 구현될 수 있고, 컴퓨터용 프로그램은 컴퓨터에서 독출 가능한 기록 매체에 저장된 형태로 컴퓨터에서 구동될 수 있다.Each of the steps of the lockstep processor core reset control method for the lockstep system described above can be implemented as a program for a computer, and the program for a computer can be run on a computer in a form stored in a computer readable recording medium.
본 실시예 및 본 명세서에 첨부된 도면은 본 발명에 포함되는 기술적 사상의 일부를 명확하게 나타내고 있는 것에 불과하며, 본 발명의 명세서 및 도면에 포함된 기술적 사상의 범위 내에서 당업자가 용이하게 유추할 수 있는 변형예와 구체적인 실시예는 모두 본 발명의 권리범위에 포함되는 것이 자명하다고 할 것이다.It is to be understood that both the foregoing general description and the following detailed description of the present invention are exemplary and explanatory and are intended to provide further explanation of the invention as claimed. It will be understood that variations and specific embodiments which may occur to those skilled in the art are included within the scope of the present invention.
또한, 본 발명에 따른 장치는 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽힐 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 기록매체의 예로는 ROM, RAM, 광학 디스크, 자기 테이프, 플로피 디스크, 하드 디스크, 비휘발성 메모리 등을 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.Further, the apparatus according to the present invention can be implemented as a computer-readable code on a computer-readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored. Examples of the recording medium include ROM, RAM, optical disk, magnetic tape, floppy disk, hard disk, nonvolatile memory and the like. The computer-readable recording medium may also be distributed over a networked computer system so that computer readable code can be stored and executed in a distributed manner.
10 락스텝 시스템
11, 12 프로세서 코어
13, 14 주변 회로 모듈들
15 락스텝 제어부
16 신뢰도 모니터링부10 Lockstep Systems
11, 12 processor cores
13, 14 peripheral circuit modules
15 lock step control section
16 reliability monitoring section
Claims (10)
상기 프로세서 코어들 각각에 연결된 주변 회로 모듈들;
상기 프로세서 코어들의 동기화 상태를 제어하고 상기 프로세서 코어들의 연산 결과의 오류를 검증하는 락스텝 제어부; 및
상기 프로세서 코어들 및 주변 회로 모듈들의 전기적 동작 상태, 상기 프로세서 코어들 및 주변 회로 모듈들 사이 또는 상기 프로세서 코어들 및 상기 락스텝 제어부 사이의 신호 전송 상태를 모니터링하고, 모니터링된 동작 상태 및 오류 상태를 기초로 상기 프로세서 코어들 각각의 신뢰도를 결정하는 신뢰도 모니터링부를 포함하고,
상기 락스텝 제어부는,
상기 프로세서 코어들의 연산 결과에서 오류가 발생하면 상기 신뢰도 모니터링부에 먼저 리셋될 프로세서 코어의 선정을 요청하고, 요청에 응답하여 상기 신뢰도 모니터링부로부터 통지된 프로세서 코어에 리셋 제어 신호를 전송하도록 동작하며,
상기 신뢰도 모니터링부는,
상기 락스텝 제어부의 요청에 응답하여 신뢰도가 가장 낮은 프로세서 코어를 선정하고, 선정된 프로세서 코어를 상기 락스텝 제어부에 통지하도록 동작하는 것을 특징으로 하는 락스텝 시스템.A plurality of lockstep dual redundant processor cores;
Peripheral circuit modules connected to each of the processor cores;
A lockstep control unit for controlling a synchronization state of the processor cores and verifying an error of an operation result of the processor cores; And
An electrical operating state of the processor cores and peripheral circuit modules, a signal transmission state between the processor cores and the peripheral circuit modules or between the processor cores and the lock step controller, And a reliability monitoring unit for determining a reliability of each of the processor cores based on the reliability monitoring unit,
The lock-
Requesting the reliability monitoring unit to select a processor core to be reset first when an error occurs in an operation result of the processor cores and to transmit a reset control signal to the processor core notified from the reliability monitoring unit in response to the request,
The reliability monitoring unit,
Wherein the lock step control unit selects the processor core having the lowest reliability in response to the request from the lock step control unit and notifies the lock step control unit of the selected processor core.
상기 프로세서 코어들 각각에 연결된 주변 회로 모듈들;
상기 프로세서 코어들의 동기화 상태를 제어하고 상기 프로세서 코어들의 연산 결과의 오류를 검증하는 락스텝 제어부; 및
상기 프로세서 코어들 및 주변 회로 모듈들의 전기적 동작 상태, 상기 프로세서 코어들 및 주변 회로 모듈들 사이 또는 상기 프로세서 코어들 및 상기 락스텝 제어부 사이의 신호 전송 상태를 모니터링하고, 모니터링된 동작 상태 및 오류 상태를 기초로 상기 프로세서 코어들 각각의 신뢰도를 결정하는 신뢰도 모니터링부를 포함하고,
상기 락스텝 제어부는,
상기 프로세서 코어들의 연산 결과에서 오류가 발생하면 상기 신뢰도 모니터링부에 먼저 리셋될 프로세서 코어의 선정 및 리셋 제어를 요청하도록 동작하며,
상기 신뢰도 모니터링부는,
상기 락스텝 제어부의 요청에 응답하여 신뢰도가 가장 낮은 프로세서 코어를 선정하고, 선정된 프로세서 코어에 대해 리셋 제어 신호를 전송하도록 동작하는 것을 특징으로 하는 락스텝 시스템.A plurality of lockstep dual redundant processor cores;
Peripheral circuit modules connected to each of the processor cores;
A lockstep control unit for controlling a synchronization state of the processor cores and verifying an error of an operation result of the processor cores; And
An electrical operating state of the processor cores and peripheral circuit modules, a signal transmission state between the processor cores and the peripheral circuit modules or between the processor cores and the lock step controller, And a reliability monitoring unit for determining a reliability of each of the processor cores based on the reliability monitoring unit,
The lock-
And to request the reliability monitoring unit to select and reset the processor core to be reset first when an error occurs in the calculation results of the processor cores,
The reliability monitoring unit,
And to select a processor core having the lowest reliability in response to a request from the lock-step control unit, and to transmit a reset control signal to the selected processor core.
상기 프로세서 코어들 및 주변 회로 모듈들 각각의 전압 상태, 클럭 상태, 연산 지연 시간, 신호 전송 지연 시간, 연산 오류 횟수, 신호 전송 오류 횟수, 신호 재전송 발생 횟수, 리셋 횟수 중 적어도 하나의 신뢰성 인자를 모니터링하도록 동작하는 것을 특징으로 하는 락스텝 시스템.The reliability monitoring apparatus according to claim 2 or 3,
At least one reliability factor of a voltage state, a clock state, an operation delay time, a signal transmission delay time, a calculation error count, a signal transmission error count, a signal retransmission occurrence count, and a reset count of each of the processor cores and peripheral circuit modules And the lockstep system.
상기 적어도 하나의 신뢰성 인자를 기초로 신뢰도를 연산하도록 동작하는 것을 특징으로 하는 락스텝 시스템.5. The apparatus of claim 4,
And to calculate reliability based on the at least one reliability factor.
상기 락스텝 시스템이,
상기 프로세서 코어들의 동기화 상태를 제어하고 상기 프로세서 코어들의 연산 결과의 오류를 검증하는 단계;
상기 프로세서 코어들 및 주변 회로 모듈들의 전기적 동작 상태, 상기 프로세서 코어들 및 주변 회로 모듈들 사이 또는 상기 프로세서 코어들 및 상기 락스텝 제어부 사이의 신호 전송 상태를 모니터링하는 단계; 및
상기 모니터링된 동작 상태 및 오류 상태를 기초로 상기 프로세서 코어들 각각의 신뢰도를 결정하는 단계를 포함하고,
상기 락스텝 시스템을 위한 락스텝 프로세서 코어 리셋 제어 방법은,
상기 프로세서 코어들의 연산 결과에서 오류가 발생하면, 먼저 리셋될 프로세서 코어로서 신뢰도가 가장 낮은 프로세서 코어를 선정하는 단계; 및
선정된 프로세서 코어에 리셋 제어 신호를 전송하는 단계를 포함하는 것을 특징으로 하는 락스텝 시스템을 위한 락스텝 프로세서 코어 리셋 제어 방법.CLAIMS 1. A method of controlling a lockstep processor core reset for a lockstep system including a plurality of redundantly-arranged processor cores, peripheral circuit modules, and a lockstep control,
Wherein the lock step system comprises:
Controlling a synchronization state of the processor cores and verifying an error in an operation result of the processor cores;
Monitoring an electrical operating state of the processor cores and peripheral circuit modules, a signal transmission state between the processor cores and peripheral circuit modules or between the processor cores and the lockstep control; And
Determining reliability of each of the processor cores based on the monitored operating state and the error state,
The lockstep processor core reset control method for the lockstep system includes:
Selecting a processor core having the lowest reliability as a processor core to be reset first if an error occurs in an operation result of the processor cores; And
And transmitting a reset control signal to the selected processor core. ≪ RTI ID = 0.0 > 11. < / RTI >
상기 프로세서 코어들 및 주변 회로 모듈들 각각의 전압 상태, 클럭 상태, 연산 지연 시간, 신호 전송 지연 시간, 연산 오류 횟수, 신호 전송 오류 횟수, 신호 재전송 발생 횟수, 리셋 횟수 중 적어도 하나의 신뢰성 인자를 모니터링하는 단계를 포함하는 것을 특징으로 하는 락스텝 시스템을 위한 락스텝 프로세서 코어 리셋 제어 방법.7. The method of claim 6,
At least one reliability factor of a voltage state, a clock state, an operation delay time, a signal transmission delay time, a calculation error count, a signal transmission error count, a signal retransmission occurrence count, and a reset count of each of the processor cores and peripheral circuit modules The method comprising the steps of: (a) providing a lockstep processor core reset control signal for a lockstep system;
상기 적어도 하나의 신뢰성 인자를 기초로 신뢰도를 연산하는 단계를 더 포함하는 것을 특징으로 하는 락스텝 시스템을 위한 락스텝 프로세서 코어 리셋 제어 방법.The method of claim 8,
Further comprising computing reliability based on the at least one reliability factor. ≪ Desc / Clms Page number 21 >
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140129293A KR101560497B1 (en) | 2014-09-26 | 2014-09-26 | Method for controlling reset of lockstep replicated processor cores and lockstep system using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140129293A KR101560497B1 (en) | 2014-09-26 | 2014-09-26 | Method for controlling reset of lockstep replicated processor cores and lockstep system using the same |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101560497B1 true KR101560497B1 (en) | 2015-10-15 |
Family
ID=54357081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140129293A KR101560497B1 (en) | 2014-09-26 | 2014-09-26 | Method for controlling reset of lockstep replicated processor cores and lockstep system using the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101560497B1 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101843397B1 (en) * | 2016-08-03 | 2018-03-30 | 한국전자통신연구원 | Semiconductor device and semiconductor package |
KR20190004521A (en) | 2017-07-04 | 2019-01-14 | 주식회사 한화 | Apparatus and Method for executing lockstep based redundant logic |
WO2020123159A1 (en) * | 2018-12-12 | 2020-06-18 | Intel Corporation | Hardware lockstep checking within a fault detection interval in a system on chip |
CN111400997A (en) * | 2020-03-26 | 2020-07-10 | 超验信息科技(长沙)有限公司 | Processor core verification method, system and medium based on synchronous execution |
US10740167B2 (en) | 2016-12-07 | 2020-08-11 | Electronics And Telecommunications Research Institute | Multi-core processor and cache management method thereof |
WO2021213821A1 (en) * | 2020-04-23 | 2021-10-28 | Robert Bosch Gmbh | Device and method for controlling a technical system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008225752A (en) * | 2007-03-12 | 2008-09-25 | Nec Corp | Fault tolerant computer and synchronization control method in fault tolerant computer |
JP2013206265A (en) * | 2012-03-29 | 2013-10-07 | Fujitsu Semiconductor Ltd | Fault tolerant controller, and method for controlling fault tolerant system |
-
2014
- 2014-09-26 KR KR1020140129293A patent/KR101560497B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008225752A (en) * | 2007-03-12 | 2008-09-25 | Nec Corp | Fault tolerant computer and synchronization control method in fault tolerant computer |
JP2013206265A (en) * | 2012-03-29 | 2013-10-07 | Fujitsu Semiconductor Ltd | Fault tolerant controller, and method for controlling fault tolerant system |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101843397B1 (en) * | 2016-08-03 | 2018-03-30 | 한국전자통신연구원 | Semiconductor device and semiconductor package |
US10740167B2 (en) | 2016-12-07 | 2020-08-11 | Electronics And Telecommunications Research Institute | Multi-core processor and cache management method thereof |
KR20190004521A (en) | 2017-07-04 | 2019-01-14 | 주식회사 한화 | Apparatus and Method for executing lockstep based redundant logic |
WO2020123159A1 (en) * | 2018-12-12 | 2020-06-18 | Intel Corporation | Hardware lockstep checking within a fault detection interval in a system on chip |
US10831628B2 (en) | 2018-12-12 | 2020-11-10 | Intel Corporation | Hardware lockstep checking within a fault detection interval in a system on chip |
CN111400997A (en) * | 2020-03-26 | 2020-07-10 | 超验信息科技(长沙)有限公司 | Processor core verification method, system and medium based on synchronous execution |
CN111400997B (en) * | 2020-03-26 | 2023-08-08 | 超睿科技(长沙)有限公司 | Processor verification method, system and medium based on synchronous execution |
WO2021213821A1 (en) * | 2020-04-23 | 2021-10-28 | Robert Bosch Gmbh | Device and method for controlling a technical system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10229016B2 (en) | Redundant computer system utilizing comparison diagnostics and voting techniques | |
KR101560497B1 (en) | Method for controlling reset of lockstep replicated processor cores and lockstep system using the same | |
US8538602B2 (en) | Flight control system and aircraft comprising it | |
EP1703401B1 (en) | Information processing apparatus and control method therefor | |
CN107229221A (en) | Fault-tolerant mode and handoff protocol for multiple hot and cold standby redundancies | |
US10114356B2 (en) | Method and apparatus for controlling a physical unit in an automation system | |
CN107957692B (en) | Controller redundancy method, device and system | |
US10042812B2 (en) | Method and system of synchronizing processors to the same computational point | |
US9367375B2 (en) | Direct connect algorithm | |
JP6648966B2 (en) | Serial link failure detection system and method | |
KR101448013B1 (en) | Fault-tolerant apparatus and method in multi-computer for Unmanned Aerial Vehicle | |
JP4973703B2 (en) | Failure detection method and monitoring device | |
JP6934346B2 (en) | Computerized and redundant systems | |
JP2006209593A (en) | Information processor and information processing method | |
US10621024B2 (en) | Signal pairing for module expansion of a failsafe computing system | |
US9311212B2 (en) | Task based voting for fault-tolerant fail safe computer systems | |
CN107992018B (en) | Control system | |
US10621031B2 (en) | Daisy-chain of safety systems | |
JP5604799B2 (en) | Fault tolerant computer | |
KR102596572B1 (en) | Uav network topology and synchronization method in the network topology | |
JP6271103B1 (en) | Control apparatus and control method | |
JP3962956B2 (en) | Information processing apparatus and information processing method | |
JP3962956B6 (en) | Information processing apparatus and information processing method | |
JP2016091480A (en) | Duplex control system | |
JP2017111523A (en) | Failsafe arithmetic device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180917 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190905 Year of fee payment: 5 |