KR101825568B1 - Failure Detection and Mitigation in Logic Circuits - Google Patents

Failure Detection and Mitigation in Logic Circuits Download PDF

Info

Publication number
KR101825568B1
KR101825568B1 KR1020110056952A KR20110056952A KR101825568B1 KR 101825568 B1 KR101825568 B1 KR 101825568B1 KR 1020110056952 A KR1020110056952 A KR 1020110056952A KR 20110056952 A KR20110056952 A KR 20110056952A KR 101825568 B1 KR101825568 B1 KR 101825568B1
Authority
KR
South Korea
Prior art keywords
parallel
logic circuit
circuit
logic
output
Prior art date
Application number
KR1020110056952A
Other languages
Korean (ko)
Other versions
KR20120137841A (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 웨스팅하우스 일렉트릭 컴퍼니 엘엘씨
Priority to KR1020110056952A priority Critical patent/KR101825568B1/en
Publication of KR20120137841A publication Critical patent/KR20120137841A/en
Application granted granted Critical
Publication of KR101825568B1 publication Critical patent/KR101825568B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/27Built-in tests
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • 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/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/25Testing of logic operation, e.g. by logic analysers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/273Tester hardware, i.e. output processing circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Hardware Redundancy (AREA)

Abstract

본 발명은 고장에 대해 논리 회로를 모니터링하는 방법에 관한 것이다. 특히, 방법은 병렬 논리 코어들을 확립하는 것에 관련되고, 고장은 리던던시 체커에 의해 핵심 위치들에서 등가에 대한 병렬 경로들을 비교하는 것에 의해 검출된다. 부정합은 미리결정된 고장안전 운영 모드를 초래할 것이다. 부가적으로, 모니터되거나 또는 제어되는 어떠한 프로세스도 방해하지 않는 방법으로 논리 코어가 검증되는 것을 보장하기 위해 중요한 기법들은 개별 병렬 경로들을 주기적으로 실행하도록 적용된다. 이 특징은 원자력 산업과 같은 일부 산업에서 중요하고, 안전 임계 운영은 드물게 사용될 수 있는 논리 회로 블록 상에서 신뢰성의 높은 수준을 요구한다.The present invention relates to a method for monitoring a logic circuit against a fault. In particular, the method relates to establishing parallel logic cores, and failures are detected by comparing redundant paths to equivalents at core locations by redundancy checkers. The mismatch will result in a predetermined failure safe operating mode. Additionally, important techniques are applied to periodically run individual parallel paths to ensure that the logical core is verified in a way that does not interfere with any processes that are monitored or controlled. This feature is important in some industries, such as the nuclear industry, and safety critical operations require a high level of reliability on logic circuit blocks that can be used infrequently.

Description

논리 회로에서의 고장 검출 및 완화{Failure Detection and Mitigation in Logic Circuits}{Failure Detection and Mitigation in Logic Circuits}

본 출원은 2008년 02월 06일에 출원된 미국 특허 출원 제 12/026,703호의 부분 계속 출원이다. 전체 내용이 참조를 위해 여기에 포함된다. This application is a continuation-in-part of U.S. Patent Application No. 12 / 026,703 filed on February 6, 2008. The entire contents are hereby incorporated by reference.

본 발명은 일반적으로 높은 무결성(high integrity) 논리 회로를 설계하기 위한 방법에 관한 것이다. 그것은 특히 원자력 발전소 원자로 보호 시스템을 포함하는 안전 관련 제어 시스템에 관한 것이고, 여기서 무결성 및 신뢰성은 가장 중요하다. 본 발명은 특히 PAL, CPLD, FPGA, ASIC, 또는 게이트 어레이와 같은 논리 장치에서, 또는 복합 논리 장치들의 조합에서 이 방법들을 실행하는 것에 관한 것이다. 그러한 논리 장치들은 인쇄 회로 기판 상에 일반적으로 설치된다.The present invention generally relates to a method for designing high integrity logic circuits. It is particularly concerned with safety-related control systems, including nuclear plant reactor protection systems, where integrity and reliability are paramount. The present invention particularly relates to performing these methods in a logic device such as a PAL, CPLD, FPGA, ASIC, or gate array, or a combination of multiple logic devices. Such logic devices are generally mounted on a printed circuit board.

다른 발명들은 컴퓨터화된 시스템에서 미션 크리티컬(mission critical) 논리 구성요소의 신뢰성을 개선하기 위해 시도해왔다. 예를 들어, 미국 특허 7,290,169호는 두 개의 마이크로프로세서가 병렬로 작동되고, 그것들 각각이 비교되는 외부 출력 신호를 제공하는 코어 레벨 프로세서 락(lock) 스텝핑 시스템을 설명한다. 마이크로프로세서는 락스텝(lockstep)에서 작동하도록 즉, 그 출력이 신뢰할만한 방법으로 매칭하기 위해 단단히 조정된 방법으로 작동하도록 의도된다. 실제 실행에서, 이 방법은 안전 임계(safety critical) 시스템에 관한 많은 문제를 가진다. 락스텝에서 마이크로프로세서를 완전하게 유지하는 것은 어렵다. 시스템이 실제로 사용될 때까지 드러나지 않는 시스템의 잠재 고장이 있을 수 있다.Other inventions have attempted to improve the reliability of mission critical logic components in computerized systems. For example, U.S. Patent 7,290,169 describes a core level processor lock stepping system in which two microprocessors are operated in parallel and each provides an external output signal to be compared. The microprocessor is intended to operate in a tightly coordinated manner to operate in a lockstep, i. E., To match its output in a reliable manner. In actual practice, this method has a number of problems with safety critical systems. It is difficult to keep the microprocessor completely in the lockstep. There may be potential failures in the system that are not exposed until the system is actually used.

미국 특허 제 7,237,114호는 유사한 작동 사고 및 문제점을 제공하나 "소프트 오류"에 대항하기 위해 검사하는 칩 락스텝을 제공한다. 그것은 직전에 설명한 바와 동일한 문제점을 가진다.U.S. Patent No. 7,237,114 provides a chip lock step to provide similar operating accidents and problems but to inspect against "soft errors ". It has the same problems as described immediately before.

미국 특허 제 6,233,702호는 하드웨어를 사용하는 것(예를 들어, 기능적 고장, 리던던시(redundancy)를 사용하는 것) 및 소프트웨어 기법을 사용하는 것(빠른 실패 예를 들어, 높은 데이터 무결성 하드웨어를 갖는 소프트웨어 복구를 사용하는 것)에 의한 고장 허용 데이터 프로세싱을 제공하는 복잡한 복합 프로세서 시스템을 설명한다. 오류 검사는 특히 병렬 프로세서들 사이의 키 데이터 포인트를 비교하기 위한 리던던시의 사용을 회피하고, 대신에 단지 I/O 포인트에서 또는 메인 메모리에서 보다 늦은 속도로 작동하는 포인트를 비교한다. 이 설계는 전체적으로 복잡하고, 간략히 논의될 비고지된 오류를 갖는 문제를 가진다. 그것은 역시 간략히 논의될 문제를 갖는 소프트웨어 기반 시스템이다.U.S. Patent No. 6,233,702 discloses a method of using software (e.g., using functional failures, redundancy) and software techniques (fast failures, e.g., software recovery with high data integrity hardware) ≪ RTI ID = 0.0 > and / or < / RTI > using fault tolerant data processing). The error checking avoids the use of redundancy, especially for comparing key data points between parallel processors, and instead only compares points operating at an I / O point or at a later rate than in main memory. This design is complex in its entirety and has problems with unprecedented errors to be discussed briefly. It is also a software-based system with problems to be briefly discussed.

미국 특허 제 7,134,104호는 논리적 함수의 적어도 세개의 병렬 카피를 생성하고, 그때 임의 특정 카피가 결함이 있는지 판단하기 위한 보우팅 스킴(voting scheme)을 사용하는 것에 의해 FPGA에서 고장 허용을 개선하는 방법을 설명한다. 이 방법이 일반적으로 고장 허용을 개선하는 반면에, 다수결 투표가 항상 비결함 결과라는 것을 확신할 수 없는 안전 임계 환경에 대해 만족스러운 스킴은 아니다.U.S. Patent No. 7,134,104 describes a method for improving fault tolerance in an FPGA by generating at least three parallel copies of a logical function and then using a voting scheme to determine if any particular copy is defective Explain. While this method generally improves fault tolerance, it is not a satisfactory scheme for a safety critical environment where majority voting is not always convincing that it is a non-defective result.

미국 특허 제 5,144,230호는 사이클 스틸링(cycle stealing)이라 불리는 방법에 의한 셀프 테스트 회로를 설명한다. 출력 신호가 그것을 정상 기능으로 수행하도록 요구되지 않을 때, '테스트 하의 회로'로부터의 출력 신호는 테스트 입력 신호를 선택적으로 적용하는 것에 의해 테스트된다. 이것이 프로세서를 체킹하는 하나의 가능한 방법임에도, 테스팅은 의존 시스템에 영향을 주는 고장에 대한 어떠한 보호도 제공하지 않는다. 병렬 리던던시가 사용될 때, 보우터 스팀은 비결합 결과인지 판단하도록 사용된다. 이들 방법들은 매우 신뢰할만한 시스템이 소망되는 안전 임계 환경에 대해 허용가능하지 않다. U.S. Patent No. 5,144,230 describes a self-test circuit by a method called cycle stealing. When the output signal is not required to perform it as a normal function, the output signal from the 'circuit under test' is tested by selectively applying the test input signal. While this is one possible way to check the processor, testing does not provide any protection against failures affecting the dependent system. When parallel redundancy is used, bowter steam is used to determine if it is an unjoined result. These methods are not acceptable for a safe critical environment where a highly reliable system is desired.

미국 출원 2007/0022348은 코어로부터의 중간값 역시 출력과 비교된다는 점을 제외하고 이미 설명된 미국 특허 제7,290,169호와 유사한 병렬 락 스텝 코어를 설명한다. 그러나 이 시스템은 락스텝에서 두 개 코어를 유지하는데 있어서 모든 문제를 가진다. 예를 들어, 오류가 있을 때, 캐쉬는 락스텝이 전진하도록 유지된다는 것을 보장하기 위해 시스템 메모리로 로드되어야만 한다. 시스템 또는 프로그래밍 변경이 있을 때 캐쉬는 유지되어야만 하고 지속적으로 검증되어야만 한다. 시스템 역시 소프트웨어에 기반한다. US application 2007/0022348 describes a parallel lockstep core similar to the previously described U.S. Patent No. 7,290,169, except that the median value from the core is also compared to the output. However, this system has all the problems in maintaining two cores in the lockstep. For example, when there is an error, the cache must be loaded into system memory to ensure that the lockstep is kept forward. When there is a system or programming change, the cache must be maintained and continuously validated. The system is also software based.

소프트웨어 기반 시스템이 아닌 매우 신뢰할만한 시스템을 제공하는 것에 대한 기술분야에서의 요구가 있다. 예를 들어, 원자력 발전소 보호 시스템과 같은 안전 임계 시스템에서, 잠재적 오류의 성향 때문에 실행가능한 소프트웨어에 의존적이도록 소망되지 않는다. 소프트웨어는 해결하기 어려운 고유한 작동상의 문제점을 가진다. 심지어 상대적으로 단순한 시스템조차 프로그램 코드의 상당한 양을 요구한다. 특히, 소프트웨어 마이크로프로세서 시스템은 결함 조건 때문에 병렬 중복 시스템이 동시에 고장일 수 있는 공통 모드 고장을 대상으로 한다. There is a need in the art for providing a highly reliable system rather than a software based system. For example, in a safety critical system such as a nuclear power plant protection system, it is not desired to be dependent on executable software because of the tendency of potential errors. The software has inherent operational problems that are difficult to resolve. Even relatively simple systems require a significant amount of program code. In particular, software microprocessor systems target common mode faults where parallel redundant systems can fail simultaneously due to fault conditions.

소프트웨어 마이크로프로세서 시스템 내에 포함될 수 있는 리던던시에도 불구하고, 결함은 종종 정확하게 비결함 결과를 고르는 것이 가능하지 않을만큼 중복 기능에 충분히 영향을 줄 수 있고, 시스템은 공통 모드 고장을 경험할 것이다. 공통 모드 고장은 단일 결함 또는 여러가지 결함에서 초래될 수 있다. 시스템에 기반한 마이크로프로세서는 소프트웨어의 중복 카피가 동일한 결함 하에서 고장인 공통 모드 고장에 취약하다는 점이 알려져 있다. 특히, 공통 모드 결함은 발전소 보호 시스템에서 소프트웨어 마이크로프로세서 시스템을 소망하지 않도록 한다. Despite the redundancies that may be included in a software microprocessor system, defects can often fully impact redundancy functionality, such that it is not possible to accurately select non-defective results, and the system will experience common mode failures. Common mode faults can result from single faults or various faults. System-based microprocessors are known to be vulnerable to common mode failures where duplicate copies of software fail under the same defects. In particular, common mode faults prevent a software microprocessor system from being desired in a plant protection system.

본 발명의 목적을 위해, 다음의 정의를 적용한다. 고장은 요구되는 기능을 수행하기 위한 능력의 중단이다. 미션 고장 역시 참조하라. 고장은 비고지된 고장이라 불리는 다음의 테스트까지 고지되지 않거나 검출되지 않을 수 있다. 그것들은 고지된 고장이라 불리는 발생의 순간에 많은 방법에 의해 고지되거나 검출될 수 있다. 미션은 단일한 대상, 태스크, 또는 아이템 또는 시스템의 목적이다. 미션 고장은 언급된 제한 내에서 언급된 미션을 완료하는 것에 대한 불가능이다. 임계 기능은 미션을 수행하기 위해 논리 회로에서 요구되는 기능이다. For purposes of the present invention, the following definitions apply. The failure is the interruption of the ability to perform the required function. See also mission failure. Failure may not be noticed or detected until the next test, which is called unannounced failure. They can be acknowledged or detected in many ways at the moment of occurrence, called a known fault. A mission is a single object, task, or item or system purpose. Mission failures are impossible to complete the mission mentioned within the limits mentioned. A critical function is a function required in a logic circuit to perform a mission.

제어 시스템과 관련된 안전에서, 높은 무결성 시스템은 이하의 두가지 임계 특성을 가질 것이다: In the context of safety associated with a control system, a high integrity system will have the following two critical characteristics:

1) 그것은 요청될 때 그 미션을 수행할 것이다. 입력 조건의 미리 정해진 집합이 존재할 때, 미션은 일반적으로 필드 장치를 작동해야 한다. 미션을 수행하는 것에 관한 높은 확신을 갖기 위해, 요청될 때 시스템에 어떠한 고지되지 않은 고장도 존재하지 않아야 한다. 고지되지 않은 고장은 미션이 요청되는 순간에 시스템이 오작동하도록 야기할 수 있다. 이것은 모든 고장이 검출되고 고지되어야만 한다는 것을 의미한다. 1) It will perform its mission when requested. When there is a predetermined set of input conditions, the mission should normally operate the field device. In order to have a high degree of confidence in performing the mission, there should be no undetected failures in the system when requested. Unknown failures can cause the system to malfunction at the moment the mission is requested. This means that all faults must be detected and noticed.

2) 논리 회로 고장 때문에 제어 시스템의 비의도된 액추에이션은 회피되어야만 한다. 이들 액추에이션은 필드 장치가 종종 값비싼 안전 기능을 수행하도록 야기한다. 이렇게 하기 위해 모든 고장은 필드 장치에 닿기 전에 나누어지도록 분리되어야만 한다.2) Unintended actuation of the control system due to logic circuit failure must be avoided. These actuations cause field devices to often perform expensive safety functions. In order to do this, all faults must be separated before they reach the field devices.

크리티컬 어플리케이션에서 사용된 논리 회로에서의 신뢰성 및 이용가능성을 증가시키기 위한 일반적인 방법은 트리플 또는 그이상의 리던던시(TMR)를 사용하는 것이다. 이것은 일반적으로 원자력, 우주 및 군용 어플리케이션에서 수행된다. 다수결 보우팅 스킴을 갖는 TMR 논리 회로를 구비하는 것은 고장 허용을 허용한다. 만일 중복 논리 회로의 다수가 고장이 없다면, 시스템은 그 기능을 수행할 것이다. 불행히, 다수가 소수와 비교해서 오류 상태에 있다면, 시스템은 그 기능에서 오류를 사용할 것이다.A common way to increase reliability and availability in logic circuits used in critical applications is to use triple or more redundancy (TMR). This is typically done in nuclear, space, and military applications. Having a TMR logic circuit with a majority convoy scheme allows fault tolerance. If many of the redundant logic circuits do not fail, the system will perform its function. Unfortunately, if the majority is in error compared to a decimal, the system will use the error in that function.

만일 고장이 TMR 시스템에서 누적하도록 허용된다면, 그것은 치명적인 효과를 가질 수 있다. 특히, 만일 그것이 안전 임계 어플리케이션에 적용된다면, 시스템은 심각해지기 전에 문제를 제거하기 위해 적합한 시정 조치를 취하거나 또는 시스템을 종료하는 그 기능에서 고장을 일으킬 수 있다.If a fault is allowed to accumulate in the TMR system, it can have a fatal effect. In particular, if it is applied to a safety critical application, the system can fail to take appropriate corrective action to eliminate the problem before it becomes serious, or to fail its function of shutting down the system.

TMR 논리 회로에서 고장은 중복 논리 회로 사이의 출력을 비교하는 것에 의해 검출될 수 있다. 그러나 그것은 비고지된 고장, 즉, 출력 변경을 초래하지 않는 논리 회로에서의 고장을 검출할 수 없다. 시스템에서 비고지된 고장은 특정 논리 기능이 수행될 때까지 발견되지 않는다. 즉, 특정 논리 경로가 사용될 때까지 그러하다.Faults in the TMR logic circuit can be detected by comparing the outputs between the redundant logic circuits. However, it can not detect faults in logic circuits that do not result in unannounced faults, i. E. Output changes. Unpredicted faults in the system are not detected until a specific logical function is performed. That is, until a particular logical path is used.

비고지된 고장은 어떠한 입력 또는 출력도 상태를 변경하지 않는 정상적으로 "대기" 위치에 있는 원자력 안전 시스템에서 특히 문제이다. 안전 시스템은 비고지된 고장이 누적하는 것을 허용하는 시간의 확장된 기간에 대해 이러한 상태에 남아있을 수 있다. 비고지된 고장은 몇주, 몇 개월, 또는 심지어 몇 년 동안 검출되지 않은 상태로 있을 수 있다.Unpredicted faults are particularly problematic in nuclear safety systems that are normally in a "standby" position where no input or output changes state. The safety system may remain in this state for extended periods of time that allow unannounced failures to accumulate. Unposted failures can be undetected for weeks, months, or even years.

TMR을 시스템에 고유하게 부가하는 것은 전체 신뢰성을 감소시키는 복잡성을 부가한다. 유지는 부가적인 논리 및 부가된 프로그래밍에 의해 증가된다. 부가적인 중복 모듈을 부가하는 것(4개 또는 그 이상)은 보우팅 논리를 세우고 그것에 영향을 미치는 가능성을 감소시키는 것에 의해 비고지된 고장에 대한 보호를 개선할 것이나, 신뢰성에서의 비례적인 감소의 손실에서 복잡성을 증가시킨다.Uniquely adding a TMR to a system adds complexity that reduces overall reliability. Maintenance is increased by additional logic and additional programming. The addition of additional redundant modules (four or more) will improve protection against unannounced failures by establishing the booting logic and reducing the likelihood of affecting it, but a proportionate reduction in reliability Increases complexity from loss.

본 발명 목적은 시스템의 잠재고장과 같은 선행 기술의 문제를 갖지 않는 고장에 대해 논리 회로를 모니터링하는 방법을 제공하는데 있다.It is an object of the present invention to provide a method of monitoring a logic circuit for failures that do not have prior art problems, such as potential failure of the system.

본 발명은 높은 무결성 논리 회로를 고안하고 올바른 작동을 검증하기 위해 그것들을 모니터링하는 방법에 관한 것이다. 특히, 방법은 리던던시 체커에 의해 핵심 위치에서 등가에 대한 병렬 경로를 비교하는 것에 의해 고장이 검출되는 병렬 논리 회로 코어를 확립하는 것에 관한 것이다. 어떠한 부정합도 미리 결정된 고장안전 작동 모드를 초래할 것이다. 부가적으로, 방법은 논리 회로 경로가 모니터되거나 또는 제어되는 어떠한 프로세스도 방해하지 않는 한편 비고지된 고장을 노출하는 방법으로 수행되도록 보장하기 위해 주기적으로 개별 병렬 경로를 수행하도록 전개된다.The present invention relates to a method of devising high integrity logic circuits and monitoring them to verify correct operation. In particular, the method relates to establishing a parallel logic circuit core in which faults are detected by comparing redundant paths to equivalents at a core location by a redundancy checker. Any mismatch will result in a predetermined failure safe operating mode. Additionally, the method is deployed to periodically perform individual parallel paths to ensure that the logic circuit path is monitored, or to ensure that it is performed in such a way that it does not interfere with any controlled process, but exposes unannounced faults.

본 발명의 특징은 원자력 산업과 같은 일부 산업에서 중요하고, 이러한 안전 임계 운영은 논리 회로 블록 상에서 신뢰성의 높은 수준이 요구된다.The features of the present invention are important in some industries, such as the nuclear industry, and such safety critical operations require a high level of reliability on logic circuit blocks.

도 1은 리던던시 체커를 사용하는 두개 병렬 코어의 실행의 그래픽 일러스트레이션을 나타낸다.
도 2 및 도 3은 리던던시 체커를 사용하는 두개의 병렬 코어의 실행의 또 다른 그래픽 일러스트레이션을 나타낸다.
도 4는 본 발명의 빌트 인 셀프 테스트의 중요한 세부사항을 나타낸다.
Figure 1 shows a graphical illustration of the execution of a cascaded core using a redundancy checker.
Figures 2 and 3 illustrate another graphical illustration of the execution of two parallel cores using redundancy checkers.
Figure 4 shows important details of the built-in self-test of the present invention.

본 발명의 중요한 목적은 요청될 때 의도된 미션을 수행할 수 있다는 보장을 갖는 매우 신뢰할만한 논리 회로를 제공하는 것이다.An important object of the present invention is to provide a highly reliable logic circuit with a guarantee that it can perform the intended mission when requested.

본 발명의 또 다른 목적은 PAL, CPLD, ASIC, 게이트 어레이, 또는 FPGA와 같은 단일 논리 장치에서 실행되는 고장안전 논리 회로를 설계하는 방법을 제공하는 것이다. 대안적으로 그리고 동등하게, 논리 회로는 단일 인쇄 회로 기판(PCB) 상의 다중 논리 장치의 조합에서 실행된다. 대안적으로 그리고 동등하게, 그것들은 PAL, CPLD, FPGA, ASIC, 또는 게이트 어레이와 같은 하나 또는 그이상의 논리 장치를 갖는 다중 인쇄 회로 기판의 조합에서 실행된다.It is a further object of the present invention to provide a method of designing a fault-safe logic circuit that runs in a single logic device such as a PAL, CPLD, ASIC, gate array, or FPGA. Alternatively and equivalently, the logic circuitry is implemented in a combination of multiple logic devices on a single printed circuit board (PCB). Alternatively and equivalently, they are implemented in a combination of multiple printed circuit boards having one or more logic devices such as PAL, CPLD, FPGA, ASIC, or gate array.

본 발명은 미션을 수행하는 것이 가능한 다중 병렬 시스템을 갖는 것에 의해 어플리케이션 레벨에서 리던던시 및/또는 고장 허용과 조합될 수 있다. 만일 이들 시스템들 중 하나가 고장이고 고장안전 상태로 진입하면, 다른 시스템(들)은 미션을 수행하는 것이 가능한 상태로 남는다. 무결성을 개선하기 위한 또 다른 방법은 테스팅 모드에서 두개는 고장안전 작동을 제공하도록 사용되고 제 3 논리 코어는 오프라인인 세개 또는 그이상의 병렬 논리 회로 코어를 갖는 것이다. 코어는 그때 적어도 두개의 코어가 항상 온라인이고 하나는 항상 테스트되도록 주기적으로 회전된다. 대안적으로 테스팅 스케쥴은 모든 코어가 정상적으로 온라인이고, 주기적으로 하나의 코어가 테스팅 동안 오프라인이 되도록 확립된다.The present invention can be combined with redundancy and / or fault tolerance at the application level by having multiple parallel systems capable of performing missions. If one of these systems fails and enters a fail-safe state, the other system (s) remains available to perform the mission. Another way to improve integrity is to have three or more parallel logic circuit cores in testing mode where two are used to provide fail safe operation and the third logic core is offline. The core is then periodically rotated so that at least two cores are always online and one is always tested. Alternatively, the testing schedule is established such that all cores are normally online and periodically one core is offline during testing.

병렬 논리 코어는 동일한 미션을 수행하도록 정확하게 복제되거나, 또는 유사하게 복제된다. 나중의 경우에서 코어는 다양하게 복제된 코어 또는 병렬로 다양한 코어이다.Parallel logic cores are correctly replicated, or similarly replicated, to perform the same mission. In later cases, the cores are variously replicated cores or various cores in parallel.

본 발명은 산업 프로세스 모니터링 및 제어에 적용가능하다. 본 발명은 특히 신뢰성과 무결성이 가장 중요한 원자력 발전소 원자로 보호 시스템을 포함하는, 안전 임계 제어 시스템에 관한 것이다.The present invention is applicable to industrial process monitoring and control. The present invention relates to a safety critical control system, in particular including nuclear plant reactor protection systems, where reliability and integrity are paramount.

논리 회로는 다음과 같은 오류에 대해 감수성이 있다:Logic circuits are susceptible to the following errors:

1. 우주선(cosmic ray) 또는 높은 에너지 프로톤에 의해 야기되는 싱글 이벤트 이펙트(Single Event Effect; SEE), 논리에서 과도 펄스를 야기하는 싱글 이벤트 업셋(upset)(SEU), 메모리 셀 및 레지스터에서의 비트플립(bitflip), 및 싱글 이벤트 래치업(latchup)(SEL).1. Single Event Effect (SEE) caused by cosmic ray or high energy proton, single event upset (SEU) causing transient pulse in logic, bit in memory cell and register Bitflip, and single event latchup (SEL).

2. 정전기 방전(ESD) 및 전기적 과부하(EOS).2. Electrostatic discharge (ESD) and electrical overload (EOS).

3. 장치 고장, 장치 설계 고장, 또는 과도한 가열에 의해 야기되는 플래쉬 셀 붕괴/고장.3. Flash cell collapse / breakdown caused by device failure, device design failure, or excessive heating.

4. 산화물 고장, 금속층 고장, 전자 이동, 와이어 침식 결합, 습기로부터의 오염 효과, 또는 공정에서 사용되는 화학물질 등과 같은 제조 고장 및/또는 고장과 관련된 에이징(aging).4. Aging associated with manufacturing failures and / or failures such as oxide failure, metal layer failure, electron transfer, wire erosion bonding, contamination effects from moisture, or chemicals used in the process.

원자력 발전소와 같은 안전 임계 시스템에서, 위의 항목들은 관심과 중요성이 증가하고 있다. In safety critical systems such as nuclear power plants, the above items are of increasing interest and importance.

모든 위의 고장에 관한 공통점은 그것들이 일반적으로 시간 및 위치에서 일정하지 않게 발생하고, 대체로 단지 하나 또는 몇몇 트랜지스터에 영향을 미친다는 점이다. 이들 오류는 심각한 문제를 야기할 수 있다.The common point about all the above faults is that they generally occur non-uniformly in time and location, and generally affect only one or several transistors. These errors can cause serious problems.

본 발명은 다른 독립 시스템이 역으로 영향받지 않는 방법으로 고장이 자동적으로 검출되고 완화되는 논리 회로를 설계하기 위한 방법을 설명한다.The present invention describes a method for designing a logic circuit in which failures are automatically detected and mitigated in a way that other independent systems are not adversely affected.

본 발명은 복잡성의 최소 부가를 제공하고 유지의 최저치로 전체 신뢰성을 증가시킨다. The present invention provides a minimum addition of complexity and increases overall reliability to a minimum of maintenance.

본 발명은 고장 허용 스킴과 결합될 수 있다.The present invention can be combined with a fault tolerant scheme.

본 발명의 일실시예는 다음의 세개 기법의 조합이다:One embodiment of the present invention is a combination of the following three techniques:

1. 모든 고장이 리던던시 체커에 의해 즉각적으로 검출되고 분리되는 것을 보장하기 위한 병렬 중복 코어의 사용.1. The use of parallel redundant cores to ensure that all failures are immediately detected and separated by redundancy checkers.

2. 비고지된 고장에 대한 보호를 위해 코어 내에서 임계 기능을 실행하기 위한 빌트 인 셀프 테스트 엔진의 사용. 만일 고장이 실제 사용 전에 검출된다면 고장은 고지된다.2. Use of a built-in self-test engine to perform critical functions within the core for protection against unannounced failures. If a fault is detected before actual use, the fault is noticed.

3. 외부 통신에 대한 병렬 중복 코어 인터페이스는 다음에 의해 고유하게 보호된다:3. The parallel redundant core interface for external communication is uniquely protected by:

a) 일련의 또는 병렬의 인터페이스는 리던던시 또는 사이클릭(cyclic) 리던던시 체크(CRC)에 의해 보호된다.a) A series or parallel interface is protected by a redundancy or cyclic redundancy check (CRC).

b) 입력상의 '토글 테스트'. 토글 테스트는 입력 회로 및 그 연결이 기능적이라는 것을 보장하기 위한 방법이다. 이 테스트는 소싱 장치로부터의 입력을 차단하는 것과 논리회로에 테스트 입력 신호를 인가하는 것을 일반적으로 포함한다. 만일 입력이 테스트 입력을 미러링한다면 입력 회로가 기능적이라고 판단될 수 있다.b) 'toggle test' on input. The toggle test is a method to ensure that the input circuit and its connections are functional. This test generally involves blocking the input from the sourcing device and applying a test input signal to the logic circuit. If the input mirrors the test input, the input circuit can be judged to be functional.

c) 출력의 독립적인 리드 백. 이것은 입력에 대한 피드백을 포함하는 것에 의해 출력의 상태를 검증하는 독립적인 방법이다. 일 예는 입력을 구동하기 위한 릴레이 상에 스페어 컨택트를 사용하는 것에 의해 요청될 때 릴레이가 실제 작용되는지를 검증하는 것에 의한 것일 수 있다. 다양한 다른 아날로그 및 디지털 출력이 이 방법으로 검증을 위해 직렬로 또는 병렬로 입력에 와이어링될 수 있다.c) Independent readback of the output. This is an independent method of verifying the state of the output by including feedback on the input. An example may be by verifying that the relay is actually actuated when requested by using a spare contact on the relay to drive the input. A variety of different analog and digital outputs can be wired to the input in series or in parallel for verification in this way.

본 발명의 바람직한 실시예에서, 빌트 인 셀프 테스트(BIST) 구조는 프로그래머블 논리 장치 상에 놓여지고 그 기능은 논리 회로 출력에 영향을 주지 않는 방법으로 수행된다. BIST의 중요한 특징은 병렬 코어에서 임의의 비고지된 고장을 노출하는 것이다. BIST는 다음과 같은 임계 기능을 가진다:In a preferred embodiment of the present invention, a built-in self test (BIST) structure is placed on the programmable logic device and its function is performed in a manner that does not affect the logic circuit output. An important feature of the BIST is that it exposes any unrecognized faults in the parallel core. BIST has the following critical functions:

1. BIST 엔진은 슈도(pseudo) 랜덤 입력 스티뮬리(stimuli)에 의해 병렬 코어를 테스트한다.1. BIST engine tests parallel cores by pseudo random input stimuli.

2. BIST 엔진은 계획되거나 또는 프로그램된 입력 스티뮬리 시퀀스를 적용하는 것에 의해 병렬 코어를 테스트한다.2. The BIST engine tests parallel cores by applying a planned or programmed input stealing sequence.

3. 그것은 모든 상태 트랜지션과 출력 조합을 테스트한다.3. It tests all state transitions and output combinations.

4. 그것은 미션을 수행하기 위한 병렬 코어 능력을 검증한다.4. It verifies the ability of the parallel core to perform the mission.

5. 그것은 임의 단일 항목 또는 위의 조합을 행한다.5. It does any single item or combination of the above.

부가적으로 일실시예에서 BIST는 다음에 의해 병렬 코어를 테스트한다:Additionally, in one embodiment, the BIST tests the parallel core by:

1. 코어로부터 중요한 내부 상태를 모니터링.1. Monitor critical internal conditions from the core.

2. 코어로부터 중요한 출력을 모니터링.2. Monitor critical output from the core.

3. 선택된 위치에서 비교에 의해 서로 대한 두개의 중복 코어를 테스팅.3. Testing two redundant cores for each other by comparison at the selected location.

4. 각 병렬 코어에서 체크섬(checksum)으로 내부 상태를 '누적'.4. 'Cumulate' the internal state with a checksum on each parallel core.

5. 각 병렬 코어에서 체크섬으로 출력 응답을 '누적'5. In each parallel core, the output response is 'cumulative'

6. 그것은 임의 단일 항목 또는 위의 조합을 행한다.6. It does any single item or combination of the above.

일 중요한 실시예에서, BIST가 병렬 코어를 검증하는 것에 의한 테스트 방법은 다음에 관한 것이다:In one important embodiment, a test method by which a BIST verifies a parallel core involves:

1. 임의 입력 또는 출력의 상태에 영향을 주지 않기 위해서 테스트 모드에 병렬 코어 중 하나를 위치시키고,1. Place one of the parallel cores in test mode to avoid affecting the state of any input or output,

2. 테스트된 코어에 대해 리던던시 체커를 기능억제시키며,2. Disable redundancy checkers for the tested cores,

3. 앞서 설명된 테스트되는 코어에 대해 적어도 하나의 입력 또는 내부 상태에 미리결정된 입력의 집합을 적용시킴.3. Apply a predetermined set of inputs to at least one input or internal state for the previously tested core.

4. 체크섬에 대해 또는 미리결정된 패턴에 대해 내부 상태 변화 및 코어 출력을 모니터링하는 것에 의해 입력에 대한 코어의 응답을 검증함.4. Verify the core's response to the input by monitoring the internal state change and core output for a checksum or for a predetermined pattern.

5. 정상 작동에 코어 및 기능억제된 리던던시 체커를 재저장함.5. Restore core and disabled suppression redundancy checkers in normal operation.

BIST가 병렬 코어를 검증하는 것에 의한 또 다른 실시예 테스트 방법은 다음에 관한 것이다:Another embodiment test method by which the BIST verifies the parallel core relates to the following:

1. 임의 출력의 상태가 영향을 받지 않는 테스트 모드로 논리 회로를 위치시키고,1. Place the logic circuit in a test mode where the state of any output is not affected,

2. 앞서 설명된 바와 같은 모든 병렬 코어에 동일한 미리결정된 입력의 집합을 적용시키며,2. Applying the same predetermined set of inputs to all parallel cores as described above,

3. 리던던시 체커에 의해모든 병렬 코어의 응답을 검증함.3. Verify the response of all parallel cores by the redundancy checker.

일 바람직한 실시예에서, 리던던시 오류가 발생한 후에 논리 회로가 작동을 계속할 수 없다는 것을 보장하기 위해 다중 배리어가 존재한다. 발전소 보호 환경에서, 고장안전 신호는 모든 작동을 정지하기 위해 모든 영향을 받은 병렬 코어로 보내진다. 모든 적합한 기능 코어는 이 신호에 복종하고 작동을 정지할 것이다. 이 상태를 야기하는 부정합된 병렬 코어 중 하나는 오류를 야기하는 것과 같은 이유로 이 신호에 복종하지 못할 수 있다. 이것을 해결하기 위해:In one preferred embodiment, there are multiple barriers to ensure that the logic circuit can not continue operation after a redundancy error has occurred. In a plant protection environment, fault-safe signals are sent to all affected parallel cores to stop all operations. All suitable functional cores will obey this signal and stop operating. One of the mismatched parallel cores that cause this condition may not be able to submit to this signal for the same reason as causing an error. To solve this:

1. 성공하기 위해 병렬 코어가 매칭해야만하는 방법으로 다른 시스템으로의 통신이 구성된다. 이 방법은 고장난 논리 회로가 오류 데이터를 영향받지 않은/의존적인 시스템에 전달할 수 없다. 이것은 다음에 의해 행해진다:1. Communication to other systems is configured in such a way that the parallel cores must match to succeed. This method does not allow faulty logic to deliver error data to unaffected / dependent systems. This is done by:

a) 무효 CRC 체크섬을 의도적으로 생성하기 위한, 통신 데이터의 앤드(AND) 또는 오알(OR) 게이트.a) An AND or OR gate of communication data for intentionally generating an invalid CRC checksum.

b) AND 게이트 온(ON) 통신 데이터 출력 인에이블(enable). 이것은 데이터가 전달되는 것을 방지한다.b) AND gate ON (ON) Enable communication data output (enable). This prevents data from being transmitted.

본 발명의 바람직한 실시예는 주요한 제어 기능을 실행하기 위해 FPGA를 사용한다. 다른 실시예에서, FPGA에 대한 대안은 ASIC(주문형반도체), CPLD(복합 프로그램가능 논리 소자), 게이트 어레이, 및 PAL(프로그램가능 어레이 논리)를 포함하는 것으로 사용된다. 이들 장치들은 일반적으로 프로그램가능 논리 장치, 복합 논리 장치, 또는 논리 장치로 불려진다. 이들 장치들 모두는 실행가능한 소프트웨어의 사용 없이 작동하도록 적합한 프로그래밍을 통해 사용될 수 있다. 이들 장치에 의해 제어되는 시스템은 하드웨어 기반으로 설명될 수 있다.A preferred embodiment of the present invention uses an FPGA to perform major control functions. In alternate embodiments, alternatives to FPGAs are used that include ASICs (application specific integrated circuits), CPLDs (compound programmable logic devices), gate arrays, and PALs (programmable array logic). These devices are commonly referred to as programmable logic devices, complex logic devices, or logic devices. All of these devices may be used through appropriate programming to operate without the use of executable software. Systems controlled by these devices may be described on a hardware basis.

논리 장치는 주어진 어플리케이션의 요구에 기반해 맞춤화된 논리를 사용하여 프로그램되고, AND 게이트, OR 게이트, XOR 게이트, 플립 플롭(D, JK, SR), 카운터, 타이머, 멀티플렉서, 및 유한 상태 기계(FSM)를 일반적으로 포함하는 디지털 빌딩 블록의 임의 유형을 포함한다. 적합하게 프로그램될 때, 논리 장치는 매우 예측가능하게, 결정론적인 방법으로 거동할 것이다. Logic devices are programmed using logic tailored to the needs of a given application and can be programmed using AND gates, OR gates, XOR gates, flip flops (D, JK, SR), counters, timers, multiplexers, ≪ RTI ID = 0.0 > and / or < / RTI > When properly programmed, the logic device will behave in a highly predictable, deterministic manner.

일 중요한 실시예에서, 논리 회로는 베릴로그 또는 VHDL, 및 스키매틱 캡처(schematic capture)와 같은 하드웨어 기술 언어를 포함하는 레지스터 전송 수준에서 설명된다. 전체 논리 회로, 또는 논리 회로의 임계 기능은 중복 코어에 의해 복제된다. 에러 프리(error free)를 내부 코어 레지스터로 전송하는 것을 보장하는 방법으로 코어에 대한 입력이 설계된다.In one important embodiment, the logic circuitry is described at a register transfer level that includes a hardware description language such as the verilog or VHDL, and schematic capture. The critical function of the entire logic circuit, or logic circuit, is duplicated by the redundant core. The input to the core is designed in such a way as to ensure that error free is transferred to the internal core register.

논리 회로는 외부 입력을 수신할 것이다. 논리 회로에 대한 입력은 리던던시로 보호된 직렬 인터페이스, 이산 입력, 또는 디지털화된 아날로그 값 중 어느 하나를 포함할 수 있다. 중요한 입력은 리던던시 테스팅, XOR 토글 테스트, CRC 및/또는 외부 루프백(loopback) 테스트에 의해 보장된다. 임의 입력 테스팅은 입력 데이터에 영향을 주지 않는 방법으로 실행된다. 전형적인 입력 회로는 버스 통신 회로(직렬 및 병렬), 디지털 채널(직렬 및 병렬), 및 디지털화된 아날로그 회로를 포함한다.The logic circuit will receive an external input. The input to the logic circuit may include either a serial interface protected by redundancy, a discrete input, or a digitized analog value. Critical inputs are guaranteed by redundancy testing, XOR toggle testing, CRC and / or external loopback testing. Random input testing is performed in a way that does not affect input data. Typical input circuits include bus communication circuits (serial and parallel), digital channels (serial and parallel), and digitized analog circuits.

병렬 코어로부터의 출력은 출력이 기능하는 것을 보장하는 방법으로 설계된다. 확신은 리던던시 테스팅, XOR 토글 테스팅, CRC 및/또는 외부 루프백 테스트에서 비롯된다. 외부 루프백 테스트는 출력 신호를 입력으로 되돌려 루팅(routing)하는 것에 의한 출력 신호의 독립적인 검증이다. 출력 신호는 그때 실제 측정된 값과 비교된다. 전형적인 출력 회로는 버스 통신 회로(직렬 및 병렬), 디지털 채널(직렬 및 병렬), 디지털 채널(직렬 및 병렬), 통신 회로(직렬 및 병렬), 디지털 회로(직렬 및 병렬), 및 디지털화된 아날로그 회로를 포함한다.The output from the parallel core is designed in such a way as to ensure that the output functions. Confidence comes from redundancy testing, XOR toggle testing, CRC and / or external loopback testing. The outer loopback test is an independent verification of the output signal by routing the output signal back to the input. The output signal is then compared to the actual measured value. Typical output circuits include bus communication circuits (serial and parallel), digital channels (serial and parallel), digital channels (serial and parallel), communication circuits (serial and parallel), digital circuits (serial and parallel) .

논리 회로로부터의 I/O는 일반적으로 다음의 중요한 특징을 포함한다:I / O from logic circuits generally includes the following important features:

1. 리던던시로 보호된 직렬 또는 병렬 인터페이스.1. Serial or parallel interface protected by redundancy.

2. 중복 코어로부터의 직렬 또는 병렬 인터페이스는 통신에서 CRC 고장때문에 고장이 발생할 때 다른 시스템에 대한 모든 통신이 정지되는 것을 보장하기 위해 CRC에서 리던던시 체커에 의해 AND되거나 또는 OR된다.2. A serial or parallel interface from redundant cores is ANDed or ORed by the redundancy checker in the CRC to ensure that all communications to other systems are stopped when a failure occurs due to a CRC failure in the communication.

3. 이산 입력으로부터의 입력.3. Input from discrete inputs.

4. 릴레이, 솔리드 스테이트(solid state) 릴레이, 필드 컴포넌트, 또는 다른 시스템 입력을 구동할 수 있는 이산 출력.4. Discrete outputs that can drive relays, solid state relays, field components, or other system inputs.

5. 중요한 출력은 다음과 같은 수단에 의해 테스트된다.5. Significant output is tested by the following means.

a) 리던던시에 의해 보장되고,a) Guaranteed by redundancy,

b) XOR 토글 테스트,b) XOR toggle test,

c) CRC, 및 c) CRC, and

d) 외부 루프백 테스트.d) External loopback test.

출력 테스트는 비소망된 필드 액추에이션을 야기하지 않는 방법으로 실행된다.The output test is performed in a manner that does not cause undesired field actuation.

일 바람직한 실시예에서, BIST는 다음에 의해 실행된다:In one preferred embodiment, the BIST is executed by:

1. 유한 상태 기계 또는 단지 상태의 특정 집합에서 모든 상태를 트래버싱하는 것과 같은 임계 기능을 실행하도록 설계됨.1. Designed to perform critical functions such as traversing all states in a finite state machine or a specific set of complex states.

2. 논리 회로의 임계 기능은 만족스러운 작동을 위해 판단되고 테스트된다. 이것은 회로의 모든 기능을 포함할 수 있다.2. The critical function of the logic circuit is judged and tested for satisfactory operation. This can include all the functions of the circuit.

3. 논리 회로에서 고착고장(stuck-at fault)이 존재할 수 없는 방법으로 테스트 입력 신호를 주입.3. In the logic circuit, inject the test input signal in such a way that a stuck-at fault can not exist.

4. 출력에 영향을 주지 않는 방법으로 설계됨. 이것은 다음에 의해 행해질 수 있다:4. Designed in such a way that it does not affect the output. This can be done by:

a) 테스트 동안 출력을 정지(freezing), 또는a) freezing the output during the test, or

b) 출력이 업데이트되지 않는 시간의 기간에서 테스트를 수행.b) Perform the test in a period of time when the output is not updated.

5. 다음에 의해 논리 회로의 작동을 검증:5. Verify the operation of the logic circuit by:

a) BIST 엔진을 구비하는 것은 내부 상태(즉, 임계 상태로 불려지는 코어에서의 키 값 또는 레지스터, 및 코어 출력)를 모니터링하는 것에 의해 기능성을 검증한다. 데이터 압축의 형태는 BIST 입력 자극(stimulation)에 기반한 코어 출력 또는 내부 상태 조건을 단순화하기 위해 사용될 수 있다.a) Having a BIST engine verifies functionality by monitoring the internal state (i. e., the key value or register in the core, called the critical state, and the core output). The form of data compression can be used to simplify core output or internal state conditions based on BIST input stimulation.

b) 다중 BIST 엔진을 구비하는 것은 중복 코어 사이의 동기 루틴을 실행시킨다. 이 경우에 BIST 엔진은 출력을 검증하는 것이 필요하지 않다. 이것은 키 포인트에서 두개의 코어를 비교하거나, 또는 매치를 위해 두개의 코어의 출력을 비교할 수 있는 리던던시 체커에 의해 행해질 것이다. b) Having multiple BIST engines enables synchronization routines between redundant cores. In this case, the BIST engine does not need to verify the output. This will be done by a redundancy checker that can compare two cores at a key point, or compare the outputs of two cores for a match.

6. BIST의 완료에 따라, 논리 회로는 그 적합한 상태로 재저장된다. 즉, 테스트되는 임의 병렬 코어가 정상 작동으로 재저장된다. 6. Upon completion of the BIST, the logic circuit is restored to its proper state. That is, the arbitrary parallel core being tested is restored to normal operation.

일 바람직한 실시예에서, 리던던시 체커 논리 회로는 논리 회로가 고장인지여부를 판단하고, 논리 회로를 고장안전 상태에 위치시키기 위해 사용된다. 리던던시 체커는 논리 회로 구조에서 키 리던던시 체크 포인트를 모니터한다(즉, 중복 논리 코어의 각각에서 소정 회로로부터의 신호는 리던던시 체커 논리 회로로 와이어링된다). 리던던시 체커는 그때 정확한 매치를 위해 중복 코어의 각각으로부터의 두개의 신호를 비교하는 것에 의해 두개의 코어 사이의 불일치를 찾는다. 만일 값들이 매칭되지 않는다면, 리던던시 고장(즉, 오류)이 검출된다. 부가적으로, 리던던시 체커는 임계 내부 상태 및 출력 둘 모두를 바람직하게 포함하는 임계 신호(임계 데이터)를 비교하는 것에 의해 실행된다.In one preferred embodiment, the redundancy check logic is used to determine whether the logic circuit is faulty and to place the logic circuit in a fault-safe state. The redundancy checker monitors key redundancy checkpoints in the logic circuitry (i. E., The signal from a given circuit in each of the redundant logic cores is wired to the redundancy checker logic). The redundancy checker then finds the discrepancy between the two cores by comparing the two signals from each of the redundant cores for an exact match. If the values are not matched, a redundancy failure (i.e., an error) is detected. Additionally, the redundancy checker is implemented by comparing the threshold signal (threshold data) preferably including both the critical internal state and the output.

바람직한 실시예에서, 시스템이 하드웨어 기반이기 때문에, 병렬 중복 코어 사이에 부정합이 존재하지 않아야 한다. 그들은 동일한 입력을 정확히 동일한 시간에 수신하고, 코어는 완벽한 동시성에서 작동할 것이다.In the preferred embodiment, there is no mismatch between parallel redundant cores because the system is hardware based. They will receive the same input at exactly the same time, and the core will work at full concurrency.

각각의 중복 코어로부터 내부 상태 및 출력을 모니터링하는 것에 의해, 리던던시 체커는 즉각적으로 고장 때문에 코어에 의해 발생되는 비의도된 액추에이션 신호와 같은, 임계 기능의 상태 변화를 검출할 것이다. 이 고장을 완화하고 논리 회로를 고장안전 상태로 강제하기 위한 리던던시 체커 없이, 고장은 의존적인 시스템으로 전파될 수 있고 비의도된 발전소 과도현상(transient)을 야기할 수 있다.By monitoring the internal state and output from each redundant core, the redundancy checker will immediately detect a state change in the critical function, such as an unintended actuation signal generated by the core due to a failure. Without redundancy checks to mitigate this fault and force the logic circuit into a fault-safe state, the fault can propagate to the dependent system and cause unintended power plant transients.

바람직한 실시예에서, 리던던시 체커에 의해 모니터링되는 논리 회로의 임계 기능은 논리 결정, 리미트(limit) 체크, 상태 기계, 검출 논리, 및 제어 논리를 포함한다.In a preferred embodiment, the critical functions of the logic circuit monitored by the redundancy checker include logic determination, limit checking, state machine, detection logic, and control logic.

본 발명의 또 다른 중요한 실시예에서, 병렬 코어는 정확하게 복제되지 않는다. 즉, 병렬 코어는 동일한 미션 또는 기능을 완료하나, 설계에서의 다양성에 의한 것이다. 코어는 병렬로 다양한 코어로 언급된다. 다양성은 프로그램이 물리적으로 FPGA 내에 위치시켜지는 방법에 의해, 예를 들어, 상호연결된 자원이 사용되는 방법을 변경하는 것에 의해, 또는 동일한 할당이 주어진 프로그래머들 사이의 사소한 프로그래밍 차이에 의해 확립될 수 있다. 만일 다른 논리 장치가 실행에서 사용된다면 다양성은 매우 넓어질 수 있다(예를 들어, 다른 FPGA 벤더 또는 논리의 일부를 수행하기 위해 마이크로프로세서를 사용하는 것).In another important embodiment of the present invention, the parallel cores are not correctly replicated. That is, parallel cores complete the same mission or function, but due to the variety in design. The cores are referred to as various cores in parallel. Diversity can be established by how the program is physically located within the FPGA, for example, by changing the way the interconnected resources are used, or by minor programming differences between the given programmers . The diversity can be very wide if other logic devices are used in execution (for example, using a microprocessor to perform part of a logic or other FPGA vendor).

다양성은 프로그래밍 오류가 오퍼레이션의 전체 안전에 영향을 미치지 않을 것임을 보장하기 위한 매우 중요한 운영(operational) 안전 특징이다. 두개,세개, 또는 그이상의 코어는 둘 또는 그이상의 프로그래머에 의해 개별적으로 프로그램될 수 있다. 다양성을 향상시키기 위해, 다른 프로그래머가 심지어 꽤 간단한 프로그래밍 미션을 갖고, 다른 접근을 취하기 위해 태스크된다. 다양성 또는 다른 실행을 보장하기 위한 방법은 계층적 최적화를 사용하거나, 그렇지 않으면 플래트닝(flattening)을 사용하거나, 그렇지 않으면 프로그램이 복잡한 논리 장치 상에 놓여지는지는 방법을 사용하는 다양한 상태 인코딩("원 핫(one hot)" 대 "그레이 코드(gray code)")을 포함한다.Diversity is a very important operational safety feature to ensure that programming errors do not affect the overall safety of the operation. Two, three, or more cores may be individually programmed by two or more programmers. To improve diversity, other programmers have even a fairly simple programming mission and are tasked with taking different approaches. The method for ensuring diversity or other performance may be achieved by using various optimization techniques such as using a hierarchical optimization, or otherwise using a flattening, or various state encodings Quot; one hot "versus" gray code ").

병렬로 다양한 코어를 사용하는 경우에서, 리던던시 체커는 코어 내에 선택된 포인트로부터의 값, 출력 포인트로부터의 값, 또는 그 둘 모두를 비교한다. In the case of using various cores in parallel, the redundancy checker compares the value from the selected point in the core, the value from the output point, or both.

본 발명의 일 실시예에서, 다양성은 실행가능한 소프트웨어의 사용에서 자유로운 FPGA 기반 시스템과 병렬로 실행가능한 소프트웨어를 갖는 마이크로프로세서의 사용을 포함하도록 확장될 수 있다. 예를 들어, 하나의 병렬 코어는 논리 장치에서 실행될 수 있고 또 다른 병렬 코어는 소프트웨어 기반 프로세서 장치에서 실행될 수 있다. 리던던시 체커는 그때 부정합을 모니터하기 위해 코어 둘 모두에서 출력을 룩킹(look)하도록 사용될 수 있다. In one embodiment of the invention, diversity can be extended to include the use of a microprocessor with software executable in parallel with an FPGA-based system free from the use of executable software. For example, one parallel core may be executed in a logic device and another parallel core may be executed in a software based processor device. The redundancy checker can then be used to look at the output at both cores to monitor the mismatch.

소프트웨어 기반 병렬 코어의 경우에서, 빌트 인 셀프 테스트는 워치 독(watch dog), 런타임 어설션(assertion) 및 셀프 테스팅의 조합을 사용하는 것에 의해 정확한 오퍼레이션 및 미고지된 고장의 검출을 보장하기 위한 특징을 포함할 수 있다. 일 바람직한 실시예에서, 소프트웨어 기반 BIST는 임계 기능을 실행하고, 테스트 입력 신호를 주입하며, 테스트 동안 출력을 정지하고, 출력이 업데이트되는 시간의 기간에서 테스트를 수행하며, 프로세서의 오퍼레이션을 검증하고, 키 값 또는 레지스터를 모니터링하는 것에 의해 기능성을 검증하는 것과 같은 이미 설명된 기법을 사용하는 것에 의해 프로세서를 테스트하도록 설계될 수 있다. BIST의 완료에 따라, 프로세서는 그 적합한 상태로 재저장된다.In the case of software-based parallel cores, the built-in self-test is characterized by the use of a combination of watch dog, runtime assertion and self-testing to ensure accurate operation and detection of untested failures. . ≪ / RTI > In one preferred embodiment, the software-based BIST executes a threshold function, injects a test input signal, stops the output during the test, performs a test in a period of time during which the output is updated, verifies the operation of the processor, And may be designed to test the processor by using a previously described technique, such as verifying functionality by monitoring a key value or register. Upon completion of the BIST, the processor is restored to its proper state.

도 1은 리던던시 체커를 사용하여 두개의 병렬 코어의 실행의 그래픽 일러스트레이션을 나타낸다. 제 1 코어 A(101) 및 제 2 코어 B(102)는 논리 회로의 병렬 및 중복 표현이다. 이미 설명된 리던던시 체커 회로(103)는 코어의 무결성 오퍼레이션을 검증하기 위해 사용된다. BIST(104, 105)는 코어 구조의 각각의 일부로서 도시되나, 대안적으로 그리고 동등하게 개별적으로 도시될 수 있다. 전체 논리 회로 구조는 단일 FPGA(106) 또는 다른 논리 장치 내에 있다. 대안적으로, 논리 회로는 다중 논리 장치 상에 위치될 수 있다. 동일한 입력이 코어 A 및 코어 B에 의해 수신되고 그 출력이 정확한 매치를 위해 리던던시 체커에 의해 모니터링된다. 리던던시 체커로부터의 고장안전 신호는 물론, 두개의 코어로부터의 출력은 FPGA로부터의 출력이다. 출력 고장안전 게이트가 사용되나, 도 1에서 미도시된다. 이 특징은 도 2에서 설명된다. Figure 1 shows a graphical illustration of the execution of two parallel cores using a redundancy checker. The first core A 101 and the second core B 102 are parallel and redundant representations of logic circuits. The redundancy checker circuit 103 already described is used to verify the integrity operation of the core. The BISTs 104 and 105 are shown as each part of the core structure, but can alternatively and equally be shown separately. The overall logic circuitry is within a single FPGA 106 or other logic device. Alternatively, the logic circuitry may be located on multiple logical devices. The same input is received by core A and core B and its output is monitored by the redundancy checker for an exact match. The fault signal from the redundancy checker, as well as the output from the two cores, is the output from the FPGA. An output failure safety gate is used but is not shown in FIG. This feature is illustrated in Fig.

도 2는 리던던시 체커의 또 다른 실시예를 사용하여 두개 병렬 코어의 실행을 나타낸다. 두개 병렬 중복 코어(215, 225)는 논리 회로를 실행하기 위해 사용된다. 중복 코어의 부가적인 세부사항이 입력 레지스터(210, 220), 출력 레지스터(211, 221) 및 빌트 인 셀프 테스트(BIST) 특징(214, 224)을 포함하여 도시된다. 리던던시 체커(205)는 신뢰성 및 오류 체킹을 위해 그리고 고장 안전 모드(203)를 활성화시키기 위해 사용된다. 중복 코어의 일부는 임계 상태(213, 223) 변수 또는 정보가 머무는 임계 기능(212, 222)이다. 이 정보는 도시된 바와 같은 리던던시 체커(205)에 의한 오류 체킹을 위해 사용된다.Figure 2 shows the implementation of a cascaded core using another embodiment of the redundancy checker. The cascaded redundant cores 215 and 225 are used to implement the logic circuit. Additional details of the redundant cores are shown including input registers 210 and 220, output registers 211 and 221 and built-in self-test (BIST) features 214 and 224. The redundancy checker 205 is used for reliability and error checking and for activating the fail safe mode 203. Some of the redundant cores are the critical functions 212, 222 where the critical state 213, 223 variable or information resides. This information is used for error checking by the redundancy checker 205 as shown.

입력(201)은 병렬 입력 레지스터(210, 220)로 흐른다. 입력은 시스템 설계에 따라 논리 회로에 의해 사용되고 출력 레지스터(211, 221)는 업데이트된다. 코어 출력은 그때 결합되는 출력 고장안전 게이트(204)를 통해 출력 레지스터로부터 그때 흐르고, 시스템을 위한 출력(202)이 된다. 이것은 게이트 ON 통신 데이터 출력 인에이블이다. 이것은 고장 검출된 리던던시 체커가 있을 때 데이터가 전달되는 것을 방지한다. 오류가 시스템에 경고하기 위해 검출될 때 출력 고장안전(203)은 리던던시 체커(205)에 의해 활성화된다. 고장안전은 릴레이 컨택트 클로저(closure), 알람 또는 일부 종류의 통신일 수 있다. 전체 논리 회로(200)는 PAL, CPLD, FPGA, ASIC, 또는 게이트 어레이와 같은 단일 논리 장치 상에 머문다. 대안적으로, 논리 회로는 다중 논리 장치 상에 위치될 수 있다.Input 201 flows to parallel input registers 210 and 220. The inputs are used by the logic circuit according to the system design and the output registers 211, 221 are updated. The core output then flows from the output resistor through the output failure safety gate 204 that is then coupled and becomes the output 202 for the system. This is the gate ON communication data output enable. This prevents data from being transmitted when there is a redundancy check that has been detected as a failure. Output failure safety 203 is activated by redundancy checker 205 when an error is detected to warn the system. Failure safety can be a relay contact closure, an alarm or some kind of communication. The entire logic circuit 200 stays on a single logic device, such as a PAL, CPLD, FPGA, ASIC, or gate array. Alternatively, the logic circuitry may be located on multiple logical devices.

도 2는 도 1과 유사한 리던던시 체커의 또 다른 실시예이다. 도 2에서, 리던던시 체커는 부가적으로 비교를 위해 각 중복 코어 내의 임계 상태(즉, 값)를 사용한다. 이 부가적인 정보는 미고지된 고장을 급속히 드러내기에 유용하다.Figure 2 is another embodiment of a redundancy checker similar to Figure 1. In Fig. 2, the redundancy checker additionally uses the critical state (i. E., Value) in each redundant core for comparison. This additional information is useful for rapidly exposing an undisclosed failure.

이 경우에서 BIST는 셀프 테스트에서 중복 코어를 모니터링하는 것이다. In this case, the BIST monitors the redundant cores in the self-test.

유사하게, 도 3은 리던던시 체커의 또 다른 실시예를 도시한다. 두개 병렬 중복 코어(315, 325)는 입력 레지스터(310, 320), 출력 레지스터(311, 321) 및 빌트 인 셀프 테스트(BIST) 특징(314, 324)을 사용하여 논리 회로를 실행하기 위해 사용된다. 리던던시 체커(305)는 신뢰성 및 오류 체킹을 위해 그리고 고장 안전 모드(303)를 활성화하기 위해 사용된다. 중복 코어의 일부는 임계 상태(313, 323) 변수 또는 정보가 머무는 임계 기능(312, 322)이다. 이 정보는 도시된 바와 같은 리던던시 체커(305)에 의한 오류 체킹을 위해 사용된다.Similarly, Figure 3 shows another embodiment of the redundancy checker. The cascaded redundant cores 315 and 325 are used to execute the logic circuit using input registers 310 and 320, output registers 311 and 321 and built-in self test (BIST) features 314 and 324 . The redundancy checker 305 is used for reliability and error checking and for activating the failure safe mode 303. Some of the redundant cores are threshold functions (312, 322) where the threshold state (313, 323) variable or information resides. This information is used for error checking by the redundancy checker 305 as shown.

유사하게, 이전에서와 같이, 입력(301)은 병렬 입력 레지스터(310, 320)로 흐른다. 입력은 시스템 설계에 따라 논리 회로에 의해 사용되고 출력 레지스터(311, 321)는 업데이트된다. 코어 출력은 그때 결합되는 출력 고장안전 게이트(304)를 통해 출력 레지스터로부터 그때 흐르고, 시스템을 위해 출력(302)이 된다. 오류가 시스템에 경고하기 위해 검출될 때 출력 고장안전(303)은 리던던시 체커(305)에 의해 활성화된다. 전체 논리 회로(300)는 단일 논리 장치 상에 머문다. 대안적으로, 논리 회로는 다중 논리 장치 상에 위치될 수 있다.Similarly, as before, the input 301 flows to the parallel input registers 310, 320. The inputs are used by the logic circuit according to the system design and the output registers 311 and 321 are updated. The core output then flows from the output register through the output failure safety gate 304 that is then coupled and becomes the output 302 for the system. The output failure safety 303 is activated by the redundancy checker 305 when an error is detected to warn the system. The entire logic circuit 300 stays on a single logic device. Alternatively, the logic circuitry may be located on multiple logical devices.

이 경우에서 BIST는 셀프 테스트에서 임계 상태 및 출력 레지스터를 부가적으로 사용한다.In this case, the BIST additionally uses a threshold state and an output register in the self-test.

도 4는 전형적인 빌트 인 셀프 테스트(BIST)(314)의 중요한 세부사항을 나타낸다. 이 경우에서, 도 4는 도 3으로부터의 부가적인 세부사항이다. 중복 코어(315) 및 임계 상태(313)로부터의 출력 레지스터 값은 BIST 유한 상태 기계(FSM)(402)를 통과하는 출력 검증 루틴(401)으로 입력된다. BIST는 FSM에 의해 제어된다. 오퍼레이터, 타이머, 또는 이벤트에 의해 활성화될 때, BIST는 랜덤 시퀀스 또는 입력 레지스터(310)로 프로그램된 시퀀스(403) 중 어느 하나로서 입력 스티뮬리를 발생시킬 것이다. BIST는 정확한 오퍼레이션을 검증하기 위해 중복 코어, 중복 코어 출력, 및 임계 상태를 모니터한다. 이 검증은 저장된 레퍼런스(reference) 대해 비교하는 것, 또 다른 중복 코어에 대해 비교하는 것, 또는 모니터된 출력의 체크섬을 발생시키는 것 및 레퍼런스 체크섬에 대해 이것을 검증하는 것을 포함한다.FIG. 4 shows important details of a typical built-in self test (BIST) 314. In this case, Figure 4 is additional detail from Figure 3. The output register values from the redundant core 315 and the critical state 313 are input to an output verification routine 401 that passes through the BIST finite state machine (FSM) The BIST is controlled by the FSM. When activated by an operator, timer, or event, the BIST will generate input styli as either a random sequence or as a sequence 403 programmed into the input register 310. BIST monitors redundant cores, redundant core outputs, and critical status to verify correct operation. This verification includes comparing against a stored reference, comparing to another redundant core, or generating a checksum of the monitored output and verifying it against a reference checksum.

그것은 논리 회로의 정상 작동 동안 BIST를 실행하기 위한 본 발명의 바람직한 실시예이다. 즉, 논리 회로가 미션을 수행하는 동안 BIST를 활성화시키기 위해서이다. 이것은 다음을 포함하는 방법에 의해 다른 시스템 또는 출력에 영향을 주지 않고 행해진다:It is a preferred embodiment of the present invention for executing the BIST during normal operation of the logic circuit. That is, the logic circuit activates the BIST while performing the mission. This is done without affecting other systems or outputs by methods including:

1. 테스트 동안 출력을 정지.1. Stop output during test.

2. 출력이 업데이트되는 시간의 기간 동안 테스트를 수행.2. Perform the test during the time that the output is updated.

3. 특화된 테스트 모드에 병렬 코어 중 하나를 배치, 그것이 임의 입력 또는 출력의 상태에 영향을 미치지 않도록 그것을 분리, 및 테스트되는 코어와 관련된 리던던시 체커를 기능억제.3. Place one of the parallel cores in a specialized test mode, isolate it so that it does not affect the state of any input or output, and suppress the redundancy checker associated with the core being tested.

논리 회로를 위한 전형적인 미션은 설계에 따른 입력 및 출력 사이에 프로세스 기능을 제공하는 것이다. 설계는 준비성(readiness), 또는 발전소 보호 시스템에서와 같은 안전 관련 기능 중 어느 하나일 수 있다. 설계는 만일 그것이 프로세스 제어라면 더 포함될 수 있다.A typical mission for a logic circuit is to provide a process function between the input and the output according to the design. The design may be either readiness, or safety related functions such as in a plant protection system. The design may be further included if it is process control.

논리 회로 미션 역시 제어 회로와의 인터페이싱을 포함할 수 있다. 그것들은 외부 논리, 결정, 검출, 및 제어 회로를 포함한다. 이들 회로는 프로세스 제어 및 안전 관련된 발전소 결정에서 일반적이다. 그들은 회로의 이진(온/오프(off)) 유형일 수 있고, 또는 그것들은 센서, 스위치, 프로세스 제어기, 및 액추에이터(actuator)를 포함하는 제어 관련된 회로일 수 있다. 그것들은 릴레이 기반된 시스템 및 다른 컴퓨터화된 시스템으로의 인터페이스의 일부일 수 있다.The logic circuit mission may also include interfacing with the control circuitry. They include external logic, decision, detection, and control circuitry. These circuits are common in power plant determinations involving process control and safety. They can be binary (on / off) types of circuits, or they can be control related circuits including sensors, switches, process controllers, and actuators. They may be part of an interface to a relay-based system and other computerized systems.

본 발명의 또 다른 실시예에서, 리던던시 체커는 병렬 코어가 위치되는 논리 장치 상에 위치되지 않는다. 리던던시 체커는 또 다른 논리 장치 상에 개별적으로 위치된다. 그것은 그때 리던던시 체킹을 제공하기 위해 코어의 출력으로 통신 경로에 의해 연결된다. 리던던시 체커는 그때 고장 안전 신호 등에 의해 도 1-3에서 설명된 바와 같이 작동한다.In another embodiment of the present invention, the redundancy checker is not located on the logic device in which the parallel core is located. The redundancy checkers are individually located on another logical unit. It is then connected by a communication path to the output of the core to provide redundancy checking. The redundancy checker then operates as described in Figures 1-3 by failure signal or the like.

바람직한 실시예에서, 본 발명은 소프트웨어 기반 마이크로프로세서 시스템보다는 하드웨어 플랫폼에 기반한다. 그것은 실행가능한 소프트웨어 및 소프트웨어 공통 모드 고장과 같은 소프트웨어 기반 마이크로프로세서 시스템이 갖는 문제를 제거함으로써 논리 장치에서 논리 회로를 실행하는 것에 의한, 소프트웨어 기반 마이크로프로세서 제어 시스템 구조와 상당히 다르다. 그것은 원자력 발전소에서 원자로 보호 시스템을 포함하는 안전 임계 제어 시스템에 적합한 매우 신뢰가능한 시스템을 제공한다. In a preferred embodiment, the present invention is based on a hardware platform rather than a software based microprocessor system. It differs significantly from a software-based microprocessor control system architecture by running logic in logic devices by eliminating problems with software-based microprocessor systems, such as executable software and software common mode failures. It provides highly reliable systems suitable for safety critical control systems, including nuclear reactor protection systems at nuclear power plants.

본 발명의 다양한 실시예가 설명되어온 반면에, 본 발명은 해당 기술분야의 당업자들에 있어서 다양한 작동 방법으로 수정되고 개조될 수 있다. 그러므로 본 발명은 여기서 도시된 설명 및 도해에 제한되지 않고 청구항의 범위에 의해 포함되는 모든 그러한 실시예, 변경들, 및 변형들을 포함한다.While various embodiments of the present invention have been described, the present invention can be modified and modified in various ways by those skilled in the art. The invention, therefore, is not intended to be limited to the illustrations and illustrations shown herein but embraces all such embodiments, modifications, and variations that fall within the scope of the claims.

101: 코어 A
102: 코어 B
103: 리던던시 체커
104, 105: BIST
200: 논리 회로
201, 301: 입력
202, 302: 출력
203, 303: 고장안전
204, 304: 출력 고장안전 게이트
205, 305: 리던던시 체커
210, 220, 310, 320: 입력 레지스터
211, 221, 311, 321: 출력 레지스터
212, 222, 312, 322: 임계 기능
213, 223, 313, 323: 임계 상태
214, 224, 314, 324: BIST
215, 225, 315, 325: 중복 코어
401: 출력 검증
402: BIST FSM
403: 입력 스티뮬리 발생기 랜덤 또는 프로그램된 시퀀스
101: Core A
102: Core B
103: Redundancy Checker
104, 105: BIST
200: logic circuit
201, 301: Input
202, 302: Output
203, 303: Fail safe
204, 304: output failure safety gate
205, 305: redundancy checker
210, 220, 310, 320: input register
211, 221, 311, 321: output register
212, 222, 312, 322: critical function
213, 223, 313, 323: Critical state
214, 224, 314, 324: BIST
215, 225, 315, 325: redundant cores
401: Output verification
402: BIST FSM
403: Input styli generator random or programmed sequence

Claims (31)

무결성이 높은 논리 회로로서:
a. 상기 논리 회로의 임계 기능을 실행하기 위해 사용되는 복수의 병렬 코어를 포함하며,
b. 상기 병렬 코어는, 중복되거나 또는 다양하며,
c. 리던던시 체커로서,
ⅰ. 제 1 병렬 코어로부터의 복수의 값이 제 2 병렬 코어로부터의 복수의 값에 매칭하는지 여부를 검증하고, 그리고
ⅱ. 미리결정된 기준에 따라 상기 논리 회로를 고장안전 상태로 활성화하도록 사용되는 상기 리던던시 체커를 포함하며,
d. 복수의 입력 및 복수의 출력으로 인터페이스되는 상기 논리 회로를 포함하며,
e. 상기 논리 회로는 상기 입력 및 상기 출력에 관련된 미션을 수행하고 상기 미션은 안전 임계 미션이고,
f. 상기 논리 회로와 상기 입력 및 상기 출력 사이의 통신으로서:
ⅰ. 리던던시,
ⅱ. 사이클릭 리던던시 체크, 및
ⅲ. 상기 입력 상의 토글 테스트, 및
ⅳ. 상기 출력 상의 리드 백으로 구성되는 그룹으로부터 선택된 적어도 하나의 아이템에 의해 보호되는 상기 논리 회로와 상기 입력 및 상기 출력 사이의 통신을 포함하고,
g. 상기 병렬 코어에서의 미고지된 고장을 노출시키도록 사용되는 빌트 인 셀프 테스트를 포함하고,
h. 상기 논리 회로가 상기 미션을 수행하는 동안 주기적으로 또는 계속적으로 수행되는 상기 빌트 인 셀프 테스트를 포함하며,
i. 적어도 하나의 논리 장치에서 실행되는 상기 논리 회로의 상기 임계 기능을 포함하고, 그리고,
j. 실행가능한 소프트웨어의 사용으로부터 자유롭게 실행되는 상기 적어도 하나의 논리 장치를 포함하는 것을 특징으로 하는 무결성이 높은 논리 회로.
As a logic circuit with high integrity:
a. A plurality of parallel cores used to perform the critical function of the logic circuit,
b. The parallel cores may be redundant or diverse,
c. As a redundancy checker,
I. Verifying whether a plurality of values from the first parallel core match a plurality of values from the second parallel core, and
Ii. Said redundancy checker being used to activate said logic circuit to a fault-safe state in accordance with a predetermined criterion,
d. The logic circuit interfacing with a plurality of inputs and a plurality of outputs,
e. Said logic circuit performing a mission related to said input and said output, said mission being a safety critical mission,
f. Said logic circuit and said input and said output comprising:
I. Redundancy,
Ii. Cyclic redundancy check, and
Iii. A toggle test on the input, and
Iv. The logic circuit being protected by at least one item selected from the group consisting of readback on the output, and communication between the input and the output,
g. A built-in self test that is used to expose an unrecognized fault in the parallel core,
h. The built-in self test in which the logic circuit is periodically or continuously performed while performing the mission,
i. Said threshold function of said logic circuit being executed in at least one logic device,
j. Said at least one logic device being implemented free from the use of executable software.
제 1항에 있어서,
a. 상기 리던던시 체커는 상기 병렬 코어로부터 개별 논리 장치 상에 위치되고, 상기 병렬 코어의 출력에 대한 통신 경로에 의해 상기 병렬 코어에 접촉되거나,
또는,
b. 상기 리던던시 체커는 상기 병렬 코어 중 적어도 하나가 존재하는 동일한 논리 장치 상에 위치되는 것을 특징으로 하는 무결성이 높은 논리 회로.
The method according to claim 1,
a. Wherein the redundancy checker is located on an individual logic device from the parallel core and is in contact with the parallel core by a communication path to the output of the parallel core,
or,
b. Wherein the redundancy checker is located on the same logic device in which at least one of the parallel cores is present.
무결성이 높은 논리 회로로서:
a. 상기 논리 회로의 임계 기능을 실행하도록 사용되고, 중복되거나 또는 다양한 복수의 병렬 코어를 포함하고, 상기 병렬 코어는 입력 회로 및 출력 회로를 인터페이스하며,
b. 상기 병렬 코어에서 오류 검출을 제공하는 리던던시 체커로서:
ⅰ. 상기 병렬 코어 사이의 불일치, 및
ⅱ. 상기 논리 회로의 임계 기능에서의 상태 변화를 포함하는 상기 리던던시 체커를 포함하며,
c. 임의의 상기 오류 검출을 위해 고장안전 상태로 상기 논리 회로를 활성화하는 상기 리던던시 체커를 포함하고,
d. 상기 논리 회로의 임계 기능에서 고장을 노출하는 적어도 하나의 빌트 인 셀프 테스트 구조를 포함하며,
e. 적어도 하나의 논리 장치에서 실행되는 상기 논리 회로의 상기 임계 기능을 포함하고, 그리고
f. 실행가능한 소프트웨어의 사용에서 자유롭게 실행되는 상기 논리 장치를 포함하는 것을 특징으로 하는 무결성이 높은 논리 회로.
As a logic circuit with high integrity:
a. Wherein the parallel core is used to perform a critical function of the logic circuit and includes redundant or various different parallel cores, the parallel core interfaces input and output circuits,
b. A redundancy checker for providing error detection in the parallel core,
I. The mismatch between the parallel cores, and
Ii. The redundancy checker including a state change in a critical function of the logic circuit,
c. And said redundancy checker activating said logic circuit in a fault-safe state for any said error detection,
d. At least one built-in self test structure that exposes a fault in a critical function of the logic circuit,
e. The threshold function of the logic circuit being executed in at least one logic device, and
f. Said logic device being freely executed in use of executable software.
제 3항에 있어서,
상기 논리 회로의 상기 임계 기능은:
a. 단일한 논리 장치,
b. 단일 인쇄 회로 기판 상의 복수의 논리 장치, 및
c. 상기 인쇄 회로 기판 각각 상에 적어도 하나의 논리 장치를 갖는 복수의 인쇄 회로 기판으로 구성되는 그룹으로부터의 선택 상에 실행되는 것을 특징으로 하는 무결성이 높은 논리 회로.
The method of claim 3,
Wherein the threshold function of the logic circuit comprises:
a. A single logical device,
b. A plurality of logic devices on a single printed circuit board, and
c. And a plurality of printed circuit boards each having at least one logic device on each of said printed circuit boards.
삭제delete 제 3항에 있어서,
a. 상기 입력 회로는:
ⅰ. 직렬 버스 통신 회로,
ⅱ. 병렬 버스 통신 회로,
ⅲ. 직렬 디지털 채널, 및
ⅳ. 병렬 디지털 채널로 구성되는 그룹으로부터 적어도 하나의 아이템을 포함하고,
b. 상기 임계 기능은:
ⅰ. 논리 결정,
ⅱ. 리미트 체크, 및
ⅲ. 상태 기계로 구성되는 그룹으로부터 적어도 하나의 아이템을 포함하며,
c. 상기 출력 회로는:
ⅰ. 직렬 버스 통신 회로,
ⅱ. 병렬 버스 통신 회로,
ⅲ. 직렬 디지털 채널, 및
ⅳ. 병렬 디지털 채널로 구성되는 그룹으로부터 적어도 하나의 아이템을 포함하는 것을 특징으로 하는 무결성이 높은 논리 회로.
The method of claim 3,
a. The input circuit comprising:
I. Serial bus communication circuit,
Ii. Parallel bus communication circuit,
Iii. Serial digital channels, and
Iv. And at least one item from the group consisting of parallel digital channels,
b. The threshold function comprises:
I. Logical decision,
Ii. Limit check, and
Iii. Comprising at least one item from the group consisting of state machines,
c. The output circuit comprising:
I. Serial bus communication circuit,
Ii. Parallel bus communication circuit,
Iii. Serial digital channels, and
Iv. And at least one item from the group consisting of parallel digital channels.
제 3항에 있어서,
a. 상기 입력회로는:
ⅰ. 직렬 통신 회로,
ⅱ. 병렬 통신 회로,
ⅲ. 직렬 디지털 회로,
ⅳ. 병렬 디지털 회로, 및
ⅴ. 디지털화된 아날로그 회로로 구성되는 그룹으로부터 적어도 하나의 아이템을 포함하고,
b. 상기 출력 회로는:
ⅰ. 직렬 통신 회로,
ⅱ. 병렬 통신 회로,
ⅲ. 직렬 디지털 회로,
ⅳ. 병렬 디지털 회로, 및
ⅴ. 디지털화된 아날로그 회로로 구성되는 그룹으로부터 적어도 하나의 아이템을 포함하며,
c. 상기 임계 기능은:
ⅰ. 결정 논리,
ⅱ. 검출 논리, 및
ⅲ. 제어 논리로 구성되는 그룹으로부터 적어도 하나의 기능을 포함하는 것을 특징으로 하는 무결성이 높은 논리 회로.
The method of claim 3,
a. The input circuit comprising:
I. Serial communication circuit,
Ii. Parallel communication circuit,
Iii. Serial digital circuit,
Iv. Parallel digital circuit, and
V. At least one item from the group consisting of digitized analog circuits,
b. The output circuit comprising:
I. Serial communication circuit,
Ii. Parallel communication circuit,
Iii. Serial digital circuit,
Iv. Parallel digital circuit, and
V. At least one item from the group consisting of digitized analog circuits,
c. The threshold function comprises:
I. Decision logic,
Ii. Detection logic, and
Iii. And at least one function from the group consisting of control logic.
제 3항에 있어서,
상기 리던던시 체커는 상기 병렬 코어의 각각에 관련된 임계 데이터를 수신하고, 상기 임계 데이터는:
a. 상기 병렬 코어로부터의 임계 내부 상태, 및
b. 상기 병렬 코어로부터의 임계 출력 신호를 포함하는 것을 특징으로 하는 무결성이 높은 논리 회로.
The method of claim 3,
Wherein the redundancy checker receives threshold data associated with each of the parallel cores, the threshold data comprising:
a. The critical internal state from the parallel core, and
b. And a critical output signal from said parallel core.
제 3항에 있어서,
상기 빌트 인 셀프 테스트 구조는 미고지된 고장을 노출하는 목적을 위해 관련된 상기 병렬 코어를 실행하는 것을 특징으로 하는 무결성이 높은 논리 회로.
The method of claim 3,
Wherein said built-in self-test structure executes said parallel core associated for the purpose of exposing an undefined fault.
제 3항에 있어서,
상기 빌트 인 셀프 테스트 구조는:
a. 상기 논리 회로의 미션에 영향을 주지 않거나 또는 출력 회로의 비의도된 액추에이션을 야기하지 않는, 테스트 모드에 단일 선택 병렬 코어를 위치시키고,
b. 상기 리던던시 체커가 상기 선택 병렬 코어에 대해 기능억제되며,
c. 적어도 하나의 입력 또는 상기 선택된 병렬 코어의 내부 상태로 미리결정된 입력의 집합을 인가하고,
d. 내부 상태 변화 및 선택된 병렬 코어 출력을 통해 미리결정된 입력의 상기 집합에 대한 상기 선택된 병렬 코어의 응답을 검증하며, 그리고
e. 정상 오퍼레이션으로 상기 선택 병렬 코어를 재저장하고 리던던시 체커를 재저장하는 것을 수행하도록 설계되는 것을 특징으로 하는 무결성이 높은 논리 회로.
The method of claim 3,
The built-in self-test structure comprises:
a. Placing a single selected parallel core in a test mode that does not affect the mission of the logic circuit or cause unintended actuation of the output circuit,
b. Wherein the redundancy checker is functionally inhibited for the selected parallel core,
c. Applying a predetermined set of inputs to at least one input or an internal state of the selected parallel core,
d. Verifying the response of the selected parallel core to the set of predetermined inputs via an internal state change and a selected parallel core output,
e. Restoring the selected parallel core with normal operation and restoring the redundancy checker. ≪ Desc / Clms Page number 20 >
제 3항에 있어서,
상기 빌트 인 셀프 테스트 구조는:
a. 출력 회로의 어떠한 비소망된 액추에이션도 보장하지 않는 테스트 모드에 상기 논리 회로를 위치시키고,
b. 모든 상기 병렬 코어로 동일한 미리결정된 입력의 집합을 인가하며, 그리고
c. 상기 리던던시 체커의 사용에 의해 동일한 미리결정된 입력의 상기 집합에 대한 모든 상기 병렬 코어의 응답을 검증하는 것을 수행하도록 설계된 것을 특징으로 하는 무결성이 높은 논리 회로.
The method of claim 3,
The built-in self-test structure comprises:
a. Placing the logic circuit in a test mode that does not guarantee any unwanted actuation of the output circuit,
b. Applies the same predetermined set of inputs to all of said parallel cores, and
c. And to verify the response of all said parallel cores to said set of identical predetermined inputs by use of said redundancy checker.
제 3항에 있어서,
a. 상기 논리 회로는 적어도 세개의 병렬 코어를 사용하여 실행되고,
b. 적어도 두개의 병렬 코어는 운영 모드에서 복수의 입력 및 복수의 출력으로 인터페이스되며,
c. 상기 논리 회로는 미리결정된 기준에 따라 상기 입력에 기반한 상기 출력을 운영하고, 그리고
d. 단일 선택 병렬 코어는 운영 모드로부터 주기적으로 제거되고 테스트 모드에 위치되며, 여기서 상기 테스트 모드는:
ⅰ. 상기 입력 또는 상기 출력의 상태에 영향을 주는 것으로부터 상기 선택 병렬 코어를 분리하고,
ⅱ. 적어도 하나의 입력 또는 상기 선택 병렬 코어의 내부 상태로 미리결정된 입력의 집합을 인가하며,
ⅲ. 내부 상태 변화 및 선택된 병렬 코어 출력을 통해 미리결정된 입력의 상기 집합에 대한 상기 선택 병렬 코어의 정확한 응답을 검증하고, 그리고
ⅳ. 정상 오퍼레이션으로 상기 선택 병렬 코어를 재저장하는 것을 포함하는 것을 특징으로 하는 무결성이 높은 논리 회로.
The method of claim 3,
a. Wherein the logic circuit is implemented using at least three parallel cores,
b. At least two parallel cores are interfaced to a plurality of inputs and a plurality of outputs in an operating mode,
c. The logic circuit operating the output based on the input in accordance with a predetermined criterion, and
d. The single selected parallel core is periodically removed from the operating mode and located in a test mode, wherein the test mode comprises:
I. Separating the selected parallel core from the one that affects the state of the input or the output,
Ii. At least one input or a set of predetermined inputs into the internal state of the selected parallel core,
Iii. Verifying the correct response of said selected parallel core to said set of predetermined inputs via internal state changes and selected parallel core outputs, and
Iv. And restoring the selected parallel core with normal operation. ≪ Desc / Clms Page number 21 >
제 3항에 있어서,
모든 상기 병렬 코어 및 모든 상기 리던던시 체커가 상기 논리 회로 내에서 실행되는 것을 특징으로 하는 무결성이 높은 논리 회로.
The method of claim 3,
All the parallel cores and all the redundancy checkers are executed in the logic circuit.
제 3항에 있어서,
상기 적어도 하나의 논리 장치는 PAL, CPLD, FPGA, ASIC, 또는 게이트 어레이를 포함하는 것을 특징으로 하는 무결성이 높은 논리 회로.
The method of claim 3,
Wherein the at least one logic device comprises a PAL, CPLD, FPGA, ASIC, or gate array.
제 3항에 있어서,
상기 리던던시 체커는 상기 병렬 코어로부터 개별 논리 장치 상에 위치되고 상기 리던던시 체커는 상기 병렬 코어 중 적어도 하나가 존재하는 동일한 논리 장치 상에 위치되는 것을 특징으로 하는 무결성이 높은 논리 회로.
The method of claim 3,
Wherein the redundancy checker is located on an individual logic device from the parallel core and the redundancy checker is located on the same logic device in which at least one of the parallel cores is present.
무결성이 높은 논리 회로로서:
a. 상기 논리 회로의 임계 기능을 실행하도록 사용되는 복수의 병렬 코어를 포함하고,
b. 논리 장치에서 실행되는 상기 병렬 코어 중 적어도 하나를 포함하며, 실행가능한 소프트웨어의 사용에서 자유로운 상기 논리 장치를 포함하고,
c. 프로세서에서 실행가능한 소프트웨어를 사용하여 실행되는 상기 병렬 코어 중 적어도 하나를 포함하며,
d. 리던던시 체커로서:
ⅰ. 제 1 병렬 코어로부터의 복수의 값이 제 2 병렬 코어로부터의 복수의 값에 매치하는지 여부를 검증하고, 그리고
ⅱ. 미리결정된 기준에 따라 고장안전 상태로 상기 논리 회로를 활성화하도록 사용되는 상기 리던던시 체커를 포함하고,
e. 복수의 입력 및 복수의 출력으로 인터페이스되는 상기 논리 회로를 포함하며,
f. 상기 입력 및 상기 출력과 관련된 미션을 수행하는 상기 논리 회로를 포함하고,
g. 상기 논리 회로와 상기 입력 및 상기 출력 사이의 통신으로서:
ⅰ. 리던던시,
ⅱ. 사이클릭 리던던시 체크,
ⅲ. 상기 입력 상의 토글 테스트, 및
ⅳ. 상기 출력 상의 리드 백으로 구성되는 그룹으로부터 선택된 적어도 하나의 아이템에 의해 보호되는 상기 논리 회로와 상기 입력 및 상기 출력 사이의 통신을 포함하며,
h. 상기 병렬 코어에서 미고지된 고장을 노출하도록 사용되는 빌트 인 셀프 테스트를 포함하고, 그리고
i. 상기 논리 회로가 상기 미션을 수행하는 동안 주기적으로 또는 계속적으로 수행되는 상기 빌트 인 셀프 테스트를 포함하는 것을 특징으로 하는 무결성이 높은 논리 회로.
As a logic circuit with high integrity:
a. A plurality of parallel cores used to perform the critical function of the logic circuit,
b. Said logic device comprising at least one of said parallel cores running in a logic device and free from use of executable software,
c. At least one of said parallel cores executing using software executable in a processor,
d. As a redundancy checker:
I. Verifying whether a plurality of values from the first parallel core matches a plurality of values from the second parallel core, and
Ii. Said redundancy checker being used to activate said logic circuit in a fail safe state according to a predetermined criterion,
e. The logic circuit interfacing with a plurality of inputs and a plurality of outputs,
f. Said logic circuit performing a mission associated with said input and said output,
g. Said logic circuit and said input and said output comprising:
I. Redundancy,
Ii. Cyclic redundancy check,
Iii. A toggle test on the input, and
Iv. The logic circuit being protected by at least one item selected from the group consisting of readback on the output, and communication between the input and the output,
h. A built-in self test that is used to expose unprecedented failures in the parallel core, and
i. Wherein the built-in self test is performed periodically or continuously while the logic circuit performs the mission.
논리 회로에서 고장 검출하여 고장의 효과를 완화하는 방법으로서:
a. 상기 논리 회로의 임계 기능을 실행하도록 사용되고, 중복되거나 또는 다양한 복수의 병렬 코어를 제공하는 단계를 포함하고,
b. 상기 병렬 코어에서 오류 검출을 제공하는 리던던시 체커를 제공하는 단계로서:
ⅰ. 상기 병렬 코어 사이의 불일치, 및
ⅱ. 상기 논리 회로의 임계 기능에서의 상태 변화를 포함하는 리던던시 체커를 제공하는 단계를 포함하며,
c. 상기 오류 검출을 위해 고장안전 상태로 상기 논리 회로를 활성화하도록 사용되는 상기 리던던시 체커를 포함하고,
d. 상기 논리 회로의 임계 기능에서 고장을 노출하도록 사용되는, 적어도 하나의 빌트 인 셀프 테스트 구조를 제공하는 단계를 포함하며,
e. 상기 논리 회로의 상기 임계 기능이 적어도 하나의 논리 장치 내에서 실행되는, 상기 적어도 하나의 논리 장치를 제공하는 단계를 포함하고, 그리고
f. 실행가능한 소프트웨어에서 자유롭게 실행되는 상기 논리 장치를 포함하며,
이로써 상기 논리 회로는 상기 오류 검출 및 상기 빌트 인 셀프 테스트에 의한 상기 고장 검출을 위해 모니터되고, 그리고
이로써 상기 고장의 효과는 상기 고장안전 상태에 의해 완화되는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
CLAIMS What is claimed is: 1. A method for mitigating the effect of a fault by detecting a fault in a logic circuit, comprising:
a. And providing a plurality of parallel cores that are redundant or various used to perform the critical function of the logic circuit,
b. Providing a redundancy checker that provides error detection in the parallel core,
I. The mismatch between the parallel cores, and
Ii. Providing a redundancy checker comprising a state change in a critical function of the logic circuit,
c. Said redundancy checker being used to activate said logic circuit in a fault-safe state for said fault detection,
d. Providing at least one built-in self test structure, which is used to expose a fault in the critical function of the logic circuit,
e. Providing the at least one logical device, wherein the threshold function of the logic circuit is executed in at least one logical device, and
f. Said logic device being freely executed in executable software,
Whereby the logic circuit is monitored for the fault detection and the fault detection by the built-in self test, and
Whereby the effect of the fault is mitigated by the fault-safe condition. ≪ RTI ID = 0.0 > 11. < / RTI >
제 17항에 있어서,
상기 논리 회로의 상기 임계 기능은:
a. 단일 논리 장치,
b. 단일 인쇄 회로 기판 상의 복수의 논리 장치, 및
c. 각각의 상기 인쇄 회로 기판 상에 적어도 하나의 논리 장치를 갖는 복수의 인쇄 회로 기판으로 구성되는 그룹으로부터의 선택 상에 실행되는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
18. The method of claim 17,
Wherein the threshold function of the logic circuit comprises:
a. Single logical unit,
b. A plurality of logic devices on a single printed circuit board, and
c. Wherein the method is executed on a selection from a group consisting of a plurality of printed circuit boards each having at least one logic device on each of the printed circuit boards.
제 17항에 있어서,
상기 병렬 코어는 입력 회로 및 출력 회로와 인터페이스되는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
18. The method of claim 17,
Wherein the parallel core is interfaced with an input circuit and an output circuit.
제 19항에 있어서,
a. 상기 입력 회로로서,
ⅰ. 직렬 버스 통신 회로,
ⅱ. 병렬 버스 통신 회로,
ⅲ. 직렬 디지털 채널, 및
ⅳ. 병렬 디지털 채널로 구성되는 그룹으로부터 적어도 하나의 아이템을 포함하고,
b. 상기 임계 기능으로서,
ⅰ. 논리 결정,
ⅱ. 리미트 체크, 및
ⅲ. 상태 기계로 구성되는 그룹으로부터 적어도 하나의 아이템을 포함하며,
c. 상기 출력 회로로서,
ⅰ. 직렬 버스 통신 회로,
ⅱ. 병렬 버스 통신 회로,
ⅲ. 직렬 디지털 채널, 및
ⅳ. 병렬 디지털 채널로 구성되는 그룹으로부터 적어도 하나의 아이템을 포함하는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
20. The method of claim 19,
a. As the input circuit,
I. Serial bus communication circuit,
Ii. Parallel bus communication circuit,
Iii. Serial digital channels, and
Iv. And at least one item from the group consisting of parallel digital channels,
b. As the threshold function,
I. Logical decision,
Ii. Limit check, and
Iii. Comprising at least one item from the group consisting of state machines,
c. The output circuit comprising:
I. Serial bus communication circuit,
Ii. Parallel bus communication circuit,
Iii. Serial digital channels, and
Iv. And at least one item from the group consisting of parallel digital channels. ≪ Desc / Clms Page number 19 >
제 19항에 있어서,
a. 상기 입력 회로는:
ⅰ. 직렬 통신 회로,
ⅱ. 병렬 통신 회로,
ⅲ. 직렬 디지털 입력 회로,
ⅳ. 병렬 디지털 입력 회로, 및
ⅴ. 디지털화된 아날로그 입력 회로로 구성되는 그룹으로부터 적어도 하나의 아이템을 포함하고,
b. 상기 출력 회로는:
ⅰ. 직렬 통신 회로,
ⅱ. 병렬 통신 회로,
ⅲ. 직렬 디지털 입력 회로,
ⅳ. 병렬 디지털 입력 회로, 및
ⅴ. 디지털화된 아날로그 입력 회로로 구성되는 그룹으로부터 적어도 하나의 아이템을 포함하며,
c. 상기 임계 기능은:
ⅰ. 결정 논리,
ⅱ. 검출 논리, 및
ⅲ. 제어 논리로 구성되는 그룹으로부터 적어도 하나의 기능을 포함하는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
20. The method of claim 19,
a. The input circuit comprising:
I. Serial communication circuit,
Ii. Parallel communication circuit,
Iii. Serial digital input circuit,
Iv. A parallel digital input circuit, and
V. And at least one item from the group consisting of digitized analog input circuits,
b. The output circuit comprising:
I. Serial communication circuit,
Ii. Parallel communication circuit,
Iii. Serial digital input circuit,
Iv. A parallel digital input circuit, and
V. At least one item from the group consisting of a digitized analog input circuit,
c. The threshold function comprises:
I. Decision logic,
Ii. Detection logic, and
Iii. Control logic, and at least one function from the group consisting of control logic.
제 17항에 있어서,
상기 리던던시 체커는 상기 병렬 코어의 각각과 관련되는 임계 데이터를 수신하고, 상기 임계 데이터는:
a. 상기 병렬 코어로부터의 임계 내부 상태, 및
b. 상기 병렬 코어로부터의 임계 출력 신호를 포함하는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
18. The method of claim 17,
Wherein the redundancy checker receives threshold data associated with each of the parallel cores, the threshold data comprising:
a. The critical internal state from the parallel core, and
b. And a threshold output signal from said parallel core. A method for mitigating a fault effect by detecting a fault in a logic circuit.
제 17항에 있어서,
상기 빌트 인 셀프 테스트 구조는 미고지된 고장을 노출하는 목적을 위해 관련된 상기 병렬 코어를 실행하는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
18. The method of claim 17,
Wherein the built-in self-test structure executes the associated parallel core for the purpose of exposing an undefined fault. ≪ RTI ID = 0.0 > 8. < / RTI >
제 17항에 있어서,
상기 빌트 인 셀프 테스트 구조는:
a. 상기 논리 회로의 미션에 영향을 주지 않거나, 또는 출력 회로의 비의도된 액추에이션을 야기하지 않는, 테스트 모드에 단일 선택 병렬 코어를 위치시키고,
b. 상기 리던던시 체커는 상기 선택 병렬 코어에 대해 기능억제되며,
c. 적어도 하나의 입력 또는 상기 선택 병렬 코어의 내부 상태로 미리결정된 입력의 집합을 인가하고,
d. 내부 상태 변경 및 선택 병렬 코어 출력을 통해 미리결정된 입력의 상기 집합에 대한 상기 선택 병렬 코어의 응답을 검증하며, 그리고
e. 정상 오퍼레이션으로 상기 선택 병렬 코어를 재저장하고 리던던시 체커를 재저장하는 아이템을 수행하도록 설계되는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
18. The method of claim 17,
The built-in self-test structure comprises:
a. Placing a single selected parallel core in a test mode that does not affect the mission of the logic circuit or cause unintended actuation of the output circuit,
b. Wherein the redundancy checker is disabled for the selected parallel core,
c. Applying at least one input or a predetermined set of inputs to the internal state of the selected parallel core,
d. Verifying the response of the selected parallel core to the set of predetermined inputs via an internal state change and a selected parallel core output, and
e. And restoring the selected parallel core in a normal operation and restoring the redundancy checker. A method for mitigating a failure effect by detecting a failure in a logic circuit.
제 24항에 있어서,
상기 빌트 인 셀프 테스트 구조는:
a. 상기 테스트 모드는 출력 회로의 어떠한 비소망된 액추에이션도 보장하지 않는, 테스트 모드로 상기 논리 회로를 위치시키고,
b. 모든 상기 병렬 코어로 동일한 미리결정된 입력의 집합을 인가하며, 그리고
c. 상기 리던던시 체커의 사용에 의해 동일한 미리결정된 입력의 상기 집합에 대한 모든 상기 병렬 코어의 응답을 검증하는 아이템을 수행하도록 설계되는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
25. The method of claim 24,
The built-in self-test structure comprises:
a. The test mode locating the logic circuit in a test mode which does not guarantee any unwanted actuation of the output circuit,
b. Applies the same predetermined set of inputs to all of said parallel cores, and
c. Wherein said redundancy checker is designed to perform an item of verifying the response of all said parallel cores to said set of identical predetermined inputs by use of said redundancy checker.
제 17항에 있어서,
상기 논리 회로는 적어도 세개의 병렬 코어를 사용하여 실행되고,
a. 적어도 두개의 병렬 코어는 운영 모드에서 복수의 입력 및 복수의 출력으로 인터페이스되고,
b. 상기 논리 회로는 미리 결정된 기준에 따라 상기 입력에 기반해 상기 출력을 운영하며, 그리고
c. 단일 선택 병렬 코어는 운영 모드로부터 주기적으로 제거되고 테스트 모드에 위치되고, 상기 테스트 모드는:
ⅰ. 임의의 상기 입력 또는 상기 출력의 상태에 영향을 주는 것으로부터 상기 선택 병렬 코어를 분리하고,
ⅱ. 적어도 하나의 입력 또는 상기 선택 병렬 코어의 내부 상태로 미리결정된 입력의 집합을 인가하며,
ⅲ. 내부 상태 변화 및 선택 병렬 코어 출력을 통해 미리 결정된 입력의 상기 집합에 대한 상기 선택 병렬 코어의 정확한 응답을 검증하고, 그리고
ⅳ. 정상 오퍼레이션으로 상기 선택 병렬 코어를 재저장하는 것을 포함하는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
18. The method of claim 17,
Wherein the logic circuit is implemented using at least three parallel cores,
a. At least two parallel cores are interfaced to a plurality of inputs and a plurality of outputs in an operating mode,
b. Said logic circuit operating said output based on said input in accordance with a predetermined criterion, and
c. The single selected parallel core is periodically removed from the operating mode and placed in a test mode, the test mode comprising:
I. Separating the selected parallel cores from affecting the state of any of the inputs or outputs,
Ii. At least one input or a set of predetermined inputs into the internal state of the selected parallel core,
Iii. Verifying correct response of said selected parallel core to said set of predetermined inputs via internal state change and selected parallel core output, and
Iv. And restoring the selected parallel core in normal operation. ≪ Desc / Clms Page number 20 >
제 17항에 있어서,
모든 상기 병렬 코어 및 모든 상기 리던던시 체커는 상기 논리 회로 내에서 실행되는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
18. The method of claim 17,
Wherein all said parallel cores and all said redundancy checkers are executed in said logic circuit.
제 17항에 있어서,
상기 적어도 하나의 논리 장치는 PAL, CPLD, FPGA, ASIC, 또는 게이트 어레이를 포함하는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
18. The method of claim 17,
Wherein the at least one logic device comprises a PAL, CPLD, FPGA, ASIC, or gate array.
제 17항에 있어서,
상기 리던던시 체커는 상기 병렬 코어로부터 개별 논리 장치 상에 위치되거나 또는 상기 리던던시 체커는 상기 병렬 코어 중 적어도 하나가 존재하는 동일한 논리 장치 상에 위치되는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
18. The method of claim 17,
Wherein the redundancy checker is located on an individual logic device from the parallel core or the redundancy checker is located on the same logic device in which at least one of the parallel cores is present. Lt; / RTI >
논리 회로에서 고장 검출하여 고장의 효과를 완화하는 방법으로서:
a. 상기 논리 회로의 임계 기능을 실행하도록 사용되는 복수의 병렬 코어를 제공하는 단계를 포함하고,
b. 논리 장치에서 실행되는 상기 병렬 코어 중 적어도 하나, 실행가능한 소프트웨어의 사용에서 자유로운 상기 논리 장치를 포함하며,
c. 프로세서에서 실행가능한 소프트웨어를 사용하여 실행되는 상기 병렬 코어 중 적어도 하나를 포함하고,
d. 리던던시 체커를 제공하는 단계로서,
ⅰ. 제 1 병렬 코어로부터의 복수의 값이 제 2 병렬 코어로부터의 복수의 값에 매칭하는지 여부를 검증하고, 그리고
ⅱ. 미리 결정된 기준에 따라 고장안전 상태로 상기 논리 회로를 활성화하도록 사용되는 상기 리던던시 체커를 포함하며,
e. 상기 논리 회로가 복수의 입력 및 복수의 출력으로 인터페이스되는, 상기 복수의 입력 및 상기 복수의 출력을 제공하는 단계를 포함하고,
f. 상기 입력 및 상기 출력과 관련된 미션을 수행하는 상기 논리 회로를 포함하며,
g. 상기 논리 회로와 상기 입력 및 상기 출력 사이의 통신으로서:
ⅰ. 리던던시,
ⅱ. 사이클릭 리던던시 체크,
ⅲ. 상기 입력 상의 토글 테스트, 및
ⅳ. 상기 출력 상의 리드 백으로 구성되는 그룹으로부터 선택되는 적어도 하나의 아이템에 의해 보호되는 상기 논리 회로와 상기 입력 및 상기 출력 사이의 통신을 포함하고,
h. 임의의 상기 병렬 코어에서 미고지된 고장을 노출하도록 사용되는, 빌트 인 셀프 테스트를 제공하는 단계를 포함하며, 그리고
i. 상기 논리 회로가 상기 미션을 수행하는 동안 주기적으로 또는 계속적으로 수행되는 상기 빌트 인 셀프 테스트를 포함하고,
이로써 상기 논리 회로는 상기 리던던시 체커 및 상기 빌트 인 셀프 테스트에 의해 상기 고장 검출에 대해 모니터되고, 그리고
이로써 상기 고장의 효과는 상기 고장안전 상태에 의해 완화되는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
CLAIMS What is claimed is: 1. A method for mitigating the effect of a fault by detecting a fault in a logic circuit, comprising:
a. And providing a plurality of parallel cores to be used to perform the critical function of the logic circuit,
b. At least one of said parallel cores running in a logic device, said logic device being free to use executable software,
c. At least one of said parallel cores executing using software executable on a processor,
d. Providing a redundancy checker,
I. Verifying whether a plurality of values from the first parallel core match a plurality of values from the second parallel core, and
Ii. And the redundancy checker used to activate the logic circuit in a fail safe state according to a predetermined criterion,
e. Providing the plurality of inputs and the plurality of outputs, wherein the logic circuit is interfaced with a plurality of inputs and a plurality of outputs,
f. Said logic circuit performing a mission associated with said input and said output,
g. Said logic circuit and said input and said output comprising:
I. Redundancy,
Ii. Cyclic redundancy check,
Iii. A toggle test on the input, and
Iv. The logic circuit being protected by at least one item selected from the group consisting of readback on the output, and communication between the input and the output,
h. Providing a built-in self test that is used to expose unprecedented faults in any of said parallel cores, and
i. The built-in self-test being performed periodically or continuously while the logic circuit is performing the mission,
Whereby the logic circuit is monitored for the fault detection by the redundancy checker and the built-in self-test, and
Whereby the effect of the fault is mitigated by the fault-safe condition. ≪ RTI ID = 0.0 > 11. < / RTI >
논리 회로에서 고장 검출하여 고장의 효과를 완화하는 방법으로서:
a. 상기 논리 회로의 임계 기능을 실행하도록 사용되는, 복수의 병렬 코어를 제공하는 단계를 포함하고,
b. 중복되거나 또는 다양한 상기 병렬 코어를 포함하며,
c. 리던던시 체커로서:
ⅰ. 제 1 병렬 코어로부터의 복수의 값이 제 2 병렬 코어로부터의 복수의 값에 매칭하는지 여부를 검증하고, 그리고
ⅱ. 미리 결정된 기준에 따라 고장안전 상태로 상기 논리 회로를 활성화하도록 사용되는 상기 리던던시 체커를 제공하는 단계를 포함하고,
d. 상기 논리 회로가 복수의 입력 및 복수의 출력으로 인터페이스되는, 상기 복수의 입력 및 상기 복수의 출력을 제공하는 단계를 포함하며,
e. 상기 입력 및 상기 출력과 관련된 미션을 수행하는 상기 논리 회로를 포함하고,
f. 상기 논리 회로와 상기 입력 및 상기 출력 사이의 통신으로서:
ⅰ. 리던던시,
ⅱ. 사이클릭 리던던시 체크,
ⅲ. 상기 입력 상의 토글 테스트, 및
ⅳ. 상기 출력 상의 리드 백으로 구성되는 그룹으로부터 선택된 적어도 하나의 아이템에 의해 보호되는 상기 논리 회로와 상기 입력 및 상기 출력 사이의 통신을 포함하며,
g. 임의의 상기 병렬 코어에서 미고지된 고장을 노출하도록 사용되는 빌트 인 셀프 테스트를 제공하는 단계를 포함하고,
h. 상기 논리 회로가 상기 미션을 수행하는 동안 주기적으로 또는 계속적으로 수행되는 상기 빌트 인 셀프 테스트를 포함하며,
i. 적어도 하나의 논리 장치에서 실행되는 상기 논리 회로의 상기 임계 기능을 포함하고, 그리고
j. 실행가능한 소프트웨어의 사용에서 자유롭게 실행되는 상기 적어도 하나의 논리 장치를 포함하며,
이로써 상기 논리 회로는 상기 고장 검출 및 상기 빌트 인 셀프 테스트에 의해 상기 고장 검출에 대해 모니터되고, 그리고
이로써 상기 고장의 효과는 상기 고장안전 상태에 의해 완화되는 것을 특징으로 하는 논리 회로에서의 고장을 검출하여 고장 효과를 완화하는 방법.
CLAIMS What is claimed is: 1. A method for mitigating the effect of a fault by detecting a fault in a logic circuit, comprising:
a. Providing a plurality of parallel cores that are used to perform the critical function of the logic circuit,
b. Overlapping or a plurality of said parallel cores,
c. As a redundancy checker:
I. Verifying whether a plurality of values from the first parallel core match a plurality of values from the second parallel core, and
Ii. Providing the redundancy checker used to activate the logic circuit in a fail safe state according to a predetermined criterion,
d. Providing the plurality of inputs and the plurality of outputs, wherein the logic circuit is interfaced with a plurality of inputs and a plurality of outputs,
e. Said logic circuit performing a mission associated with said input and said output,
f. Said logic circuit and said input and said output comprising:
I. Redundancy,
Ii. Cyclic redundancy check,
Iii. A toggle test on the input, and
Iv. The logic circuit being protected by at least one item selected from the group consisting of readback on the output, and communication between the input and the output,
g. Providing a built-in self test that is used to expose unprecedented faults in any of said parallel cores,
h. The built-in self test in which the logic circuit is periodically or continuously performed while performing the mission,
i. The threshold function of the logic circuit being executed in at least one logic device, and
j. The at least one logical device being freely executed in use of executable software,
Whereby the logic circuit is monitored for the fault detection by the fault detection and the built-in self test, and
Whereby the effect of the fault is mitigated by the fault-safe condition. ≪ RTI ID = 0.0 > 11. < / RTI >
KR1020110056952A 2011-06-13 2011-06-13 Failure Detection and Mitigation in Logic Circuits KR101825568B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110056952A KR101825568B1 (en) 2011-06-13 2011-06-13 Failure Detection and Mitigation in Logic Circuits

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110056952A KR101825568B1 (en) 2011-06-13 2011-06-13 Failure Detection and Mitigation in Logic Circuits

Publications (2)

Publication Number Publication Date
KR20120137841A KR20120137841A (en) 2012-12-24
KR101825568B1 true KR101825568B1 (en) 2018-02-05

Family

ID=47904764

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110056952A KR101825568B1 (en) 2011-06-13 2011-06-13 Failure Detection and Mitigation in Logic Circuits

Country Status (1)

Country Link
KR (1) KR101825568B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10740186B2 (en) * 2017-05-15 2020-08-11 The Boeing Company High data integrity processing system
US11157374B2 (en) * 2018-12-28 2021-10-26 Intel Corporation Technologies for efficient reliable compute operations for mission critical applications

Also Published As

Publication number Publication date
KR20120137841A (en) 2012-12-24

Similar Documents

Publication Publication Date Title
US8117512B2 (en) Failure detection and mitigation in logic circuits
EP2533154B1 (en) Failure detection and mitigation in logic circuits
CN102841828B (en) Fault detect in logical circuit and alleviating
US10078565B1 (en) Error recovery for redundant processing circuits
EP3428665B1 (en) Fault detection in registers
EP2381266B1 (en) Self-diagnosis system and test circuit determination method
Johnson An introduction to the design and analysis of fault-tolerant systems
Straka et al. Fault tolerant structure for sram-based fpga via partial dynamic reconfiguration
Johnson Fault tolerance
Martin et al. Scrubbing optimization via availability prediction (SOAP) for reconfigurable space computing
KR101825568B1 (en) Failure Detection and Mitigation in Logic Circuits
Wächter et al. Survey of lockstep based mitigation techniques for soft errors in embedded systems
Kastil et al. Dependability analysis of fault tolerant systems based on partial dynamic reconfiguration implemented into FPGA
Voas et al. Reducing uncertainty about common-mode failures
Wang et al. The reliability and availability analysis of SEU mitigation techniques in SRAM-based FPGAs
Gericota et al. A self-healing real-time system based on run-time self-reconfiguration
Sharma Fault tolerant techniques for reconfigurable platforms
Salewski et al. Fault handling in FPGAs and microcontrollers in safety-critical embedded applications: A comparative survey
Agarwal et al. State model for scheduling Built-in Self-Test and scrubbing in FPGA to maximize the system availability in space applications
Villalta et al. Dependability in FPGAs, a review
Szurman et al. Fault tolerant can bus control system implemented into fpga
Espinosa et al. Tolerating multiple faults with proximate manifestations in FPGA-based critical designs for harsh environments
Chizek Programmable Logic Device (PLD) Safety Design Approach
Khaledi et al. Compensating detection latency of FPGA scrubbers with a collaborative functional hardware duplication
Gericota et al. Robust configurable system design with built-in self-healing

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right