KR20190004521A - 다중화 로직 기반 락스텝 실행 장치 및 방법 - Google Patents

다중화 로직 기반 락스텝 실행 장치 및 방법 Download PDF

Info

Publication number
KR20190004521A
KR20190004521A KR1020170084839A KR20170084839A KR20190004521A KR 20190004521 A KR20190004521 A KR 20190004521A KR 1020170084839 A KR1020170084839 A KR 1020170084839A KR 20170084839 A KR20170084839 A KR 20170084839A KR 20190004521 A KR20190004521 A KR 20190004521A
Authority
KR
South Korea
Prior art keywords
logic
operation result
error
processors
result values
Prior art date
Application number
KR1020170084839A
Other languages
English (en)
Other versions
KR101977172B1 (ko
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 KR1020170084839A priority Critical patent/KR101977172B1/ko
Publication of KR20190004521A publication Critical patent/KR20190004521A/ko
Application granted granted Critical
Publication of KR101977172B1 publication Critical patent/KR101977172B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • 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

Landscapes

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

Abstract

본 발명은 유도 조종 시스템에 관한 것으로서, 더 상세하게는 비행 중인 유도조종 시스템의 동작 오류, 기능 장애에 의해 발생할 수 있는 위험상황을 회피 또는 피해를 감소시키기 위한 결함 허용력 증대를 위한 락스텝 실행 장치 및 방법 에 관한 것이다.
본 발명에 따르면, 잉여 프로세서의 성능(capability)을 활용하여 시스템의 결함 허용력을 증대시킬 수 있다는 점이다.

Description

다중화 로직 기반 락스텝 실행 장치 및 방법{Apparatus and Method for executing lockstep based redundant logic}
본 발명은 유도 조종 시스템에 관한 것으로서, 더 상세하게는 비행 중인 유도조종 시스템의 동작 오류, 기능 장애에 의해 발생할 수 있는 위험상황을 회피 또는 피해를 감소시키기 위한 결함 허용력 증대를 위한 락스텝 실행 장치 및 방법 에 관한 것이다.
기존과 같이 시스템의 결함 허용력 증대를 위해 단순 중복 로직을 두는 것은 시스템 오버헤드를 증가시켜 효율적이지 못하다. 또한 중복 기능을 HW(Hardware)로 구현하는 것을 비용을 증가시키는 요인이므로 효과적이지 않다.
시스템의 신뢰성 관점에서 기능 안전 레벨에 따라 대응 기술의 레벨도 적응적으로 변경해야 하는 기술 조건에서는 동일한 방식의 기술로는 최선이라고 할 수 없다. 따라서 이러한 3가지 관점의 문제를 해소하면서 결함 허용력을 개선하고 최종적으로 시스템의 신뢰성을 확보하기 위한 기술이 요구되고 있다.
1.한국등록특허 제10-1657086호 2.일본공개특허 제4019544호 3.한국등록특허 제10-1560497호
본 발명은 배경기술에서 기술된 문제점을 해소하기 위해 제안된 것으로서, 비행 중인 유도조종 시스템의 동작 오류, 기능 장애에 의해 발생할 수 있는 위험상황을 회피 또는 피해를 감소시키기 위한 결함 허용력 증대를 위한 락스텝 실행 장치 및 방법을 제공하는데 그 목적이 있다.
본 발명은 위에서 제시된 과제를 달성하기 위해, 비행 중인 유도조종 시스템의 동작 오류, 기능 장애에 의해 발생할 수 있는 위험상황을 회피 또는 피해를 감소시키기 위한 결함 허용력 증대를 위한 락스텝 실행 장치를 제공한다.
상기 락스텝 실행 장치는,
다수의 주로직 프로세서; 및
락스텝 방식을 이용하여 모니터링되는 상기 다수의 주로직 프로세서의 로직 연산 결과값들과 상기 다수의 주로직 프로세서의 로직을 복사하여 중복 연산되는 중복 연산 결과값들을 비교하고, 비교 결과에 따라 결함 유형을 식별하고 상기 유형에 따라 결함 허용치를 증대시키고 갱신하는 체계 락스텝 제어기;를 포함하는 것을 특징으로 한다.
이때, 상기 락스텝 실행 장치는, 상기 결함 유형에 따른 대응 알고리즘, 추적기의 제어 파라미터, 및 복구 요구 사항을 포함하는 복구 로직 정보를 저장하는 저장소;를 더 포함하는 것을 특징으로 할 수 있다.
또한, 상기 결함 유형은, 통신 오류, 중지(abort) 오류, 로직값 오류 중 어느 하나인 것을 특징으로 할 수 있다.
또한, 상기 통신 오류는 상기 다수의 주로직 프로세서간 물리적 통신 인터페이스의 오동작, 신호왜곡, 결선에 의한 결함이고, 상기 중지 오류는 상기 다수의 주로직 프로세서에서 로직 수행중 발생되는 메시지이고, 상기 로직값 오류는 상기 다수의 주로직 프로세서로부터 전달된 값들의 오류 여부인 것을 특징으로 할 수 있다.
또한, 상기 다수의 주로직 프로세서는 체계 주로직 프로세서 및 여러개의 부체계 주로직 프로세서로 이루어지며 각기 다른 운용 주파수대를 갖는 것을 특징으로 할 수 있다.
또한, 상기 체계 락스텝 제어기는, 상기 로직 연산 결과값들을 모니터링하는 결함 모니터링 모듈; 상기 중복 연산 결과값들을 산출하는 다수의 중복 로직 모듈; 상기 로직 연산 결과값들과 중복 연산 결과값들을 비교하고, 비교 결과 차이를 판단하여 결함의 유형을 식별하고 상기 유형에 따라 결함 허용치를 증대시키는 로직값 비교 상관기; 및 증대된 결함 허용치를 갱신하는 추적 관리자 모듈;을 포함하는 것을 특징으로 할 수 있다.
또한, 상기 다수의 중복 로직 모듈은 실행주기가 가변적인 것을 특징으로 할 수 있다.
또한, 상기 증대는 모니터링되는 상기 로직 연산 결과값들의 경향 또는 오차 허용치를 추적하여 상기 로직 연산 결과값들이 비정상적으로 추정되면 추적기(tracker) 파라미터를 제어하여 다수의 중복 로직 모듈의 중복 연산 결과값들을 보상하거나 다수의 체계 주로직의 로직 연산 결과값들을 보정함으로써 이루어지는 것을 특징으로 할 수 있다.
또한, 상기 추적기 파라미터는 모니터링에 따라 변경되는 상기 로직 연산 결과값들을 추적 필터를 통해 생성되는 변수 적응형 파라미터인 것을 특징으로 할 수 있다.
또한, 상기 추적 필터는 칼만 필터 또는 알파-베타 필터인 것을 특징으로 할 수 있다.
또한, 상기 갱신은 테이블에 입력됨으로써 이루어지는 것을 특징으로 할 수 있다.
또한, 상기 복구 요구사항은 상기 결함 유형이 해결되어 복구되는 필요한 시간을 포함하여 룩업 테이블로 이루어지는 것을 특징으로 할 수 있다.
또한, 상기 결함 유형이 상기 중지 오류이면 상기 대응 알고리즘은 로직의 절차 중 이전 몇 단계로 이동 수행, 보조 로직 코드로 주로직 코드 대체, 및 시스템 리부팅인 것을 특징으로 할 수 있다.
또한, 상기 결함 유형이 상기 통신 오류이면 상기 대응 알고리즘은 중복 로직값 대체 활용, 시뮬레이션 데이터 대체 활용인 것을 특징으로 할 수 있다.
또한, 상기 결함 유형이 상기 로직값 오류이면 상기 대응 알고리즘은 추적(Tracking) 값으로 대체 활용, 중복 로직값 대체 활용, 시뮬레이션 데이터 대체 활용인 것을 특징으로 할 수 있다.
다른 한편으로, 본 발명의 다른 일실시예는, (a) 체계 락스텝 제어기가 다수의 주로직 프로세서를 모니터링하여 로직 연산 결과값들을 생성하는 단계; (b) 상기 체계 락스텝 제어기가 락스텝 방식을 이용하여 모니터링되는 상기 로직 연산 결과값들과 상기 다수의 주로직 프로세서의 로직을 복사하여 중복 연산되는 중복 연산 결과값들을 비교하는 단계; (c) 상기 체계 락스텝 제어기가 비교 결과에 따라 결함 유형을 식별하고 상기 유형에 따라 결함 허용치를 증대시키고 갱신하는 단계; 를 포함하는 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 방법을 제공할 수 있다.
이때, 상기 락스텝 실행 방법은, 상기 (a) 단계 이전에, 상기 결함 유형에 따른 대응 알고리즘, 추적기의 제어 파라미터, 및 복구 요구 사항을 포함하는 복구 로직 정보를 저장소에 저장하는 단계;를 더 포함하는 것을 특징으로 할 수 있다.
또한, 상기 락스텝 실행 방법은, (e) 상기 체계 락스텝 제어기가 상기 복구 로직 정보를 상기 저장소로부터 불러오는 단계; 및 (f) 상기 체계 락스텝 제어기가 상기 복구 로직 정보를 실행하여 상기 결함을 처리하는 단계;를 포함하는 것을 특징으로 할 수 있다.
본 발명에 따르면, 잉여 프로세서의 성능(capability)을 활용하여 시스템의 결함 허용력을 증대시킬 수 있다는 점이다.
또한, 본 발명의 다른 효과로서는 결함 허용력을 증대함으로써 시스템의 신뢰성을 확보할 수 있다는 점을 들 수 있다.
또한, 본 발명의 또 다른 효과로서는 추가 하드웨어(HW) 구성이 필요하지 않고 소프트웨어(SW) 로직으로만 구현되므로 비용 증가없이 기술 실현이 가능하다는 점을 들 수 있다.
도 1은 본 발명의 일실시예에 따른 락스텝 실행 장치의 구성 블럭도이다.
도 2는 도 1에 도시된 체계 락스텝 제어기의 상세 구성 블럭도이다.
도 3은 본 발명의 일실시예에 따른 결함 모니터링 동작 과정을 보여주는 흐름도이다.
도 4는 본 발명의 일실시예에 따른 값비교 상관기의 동작 흐름을 보여주는 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 구체적으로 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다.
제 1, 제 2등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. "및/또는" 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않아야 한다.
이하 첨부된 도면을 참조하여 본 발명의 일실시예에 따른 공유 추적기 및 저주기 다중화 로직 기반 락스텝 실행 장치 및 방법을 상세하게 설명하기로 한다.
도 1은 본 발명의 일실시예에 따른 락스텝 실행 장치의 구성 블럭도이다. 도 1을 참조하면, 락스텝 실행 장치(100)는, 다수의 주로직 프로세서(110,111-1,111-2), 락스텝 방식을 이용하여 모니터링되는 상기 다수의 주로직 프로세서(110,111-1,111-2)의 로직 연산 결과값들과 상기 다수의 주로직 프로세서의 로직을 복사하여 중복 연산되는 중복 연산 결과값들을 비교하고, 비교 결과에 따라 결함의 유형을 식별하고 상기 유형에 따라 결함 허용치를 증대시키는 체계 락스텝 제어기(120), 유형에 따른 대응 알고리즘 및 파라미터, 복구 요구사항에 대한 복구 정보를 저장하는 저장소(130) 등을 포함하여 구성될 수 있다.
락스텝(Lockstep) 방식은 중복 컴퓨팅 시스템을 이용하여 동일한 시점에 동일한 연산 세트를 수행하는 방식이다. 락스텝이라는 용어는 동일한 연산이 두 프로세서에서 수행되는 것이 마치 여러 죄수들의 발을 사슬로 채워 함께 걷게 만든 것(lockstep)을 연상하게 하여 파생되었다. 따라서, 락스텝 방식의 시스템은 둘 이상의 프로세서 코어들에서 동일한 연산을 수행하여 결과를 비교함으로써 연산의 무오류를 검증할 수 있다.
또한, 다수의 주로직 프로세서(110,111-1,111-2)는 외부의 물리적 프로세서이며, 체계 주로직 프로세서(110), 제 1 및 제 2 부체계 주로직 프로세서(111-1,111-2) 등을 포함하여 구성된다. 이들 프로세서(110,111-1,111-2)는 각기 다른 운용 주파수대를 갖는다. 예를 들면, 체계 주로직 프로세서(110)는 aaHz, 제 1 부체계 주로직 프로세서(111-1)는 bbHz, 제 2 부체계 주로직 프로세서(111-2)는 ccHz의 운용 주파수대를 갖는다. 물론, 3개 이상의 주로직 프로세서를 구성하는 것도 가능하다.
도 2는 도 1에 도시된 체계 락스텝 제어기(120)의 상세 구성 블럭도이다. 도 2를 참조하면, 본 발명의 일실시예는, 체계 및 부체계를 위한 다중 프로세서 구성하에서 락스텝 기능을 위한 모듈들을 배치하고 데이터 송-수신 및/또는 제어용 통신 라인을 연결함으로써 실현될 수 있다.
체계 락스텝 제어기(120)는 크게 결함 모니터링 및 대응 로직 부분(201,202,210), 중복 로직 부분(220.221-1,221-2), 비교 상관기 및 추적 부분(230,240,260,250), 코어 제어 로직(270), 그리고 외부 저장소(130)에 저장되는 결함 대응 로직 DB(280) 등으로 구성된다.
결함 모니터링 모듈(210)은 다수의 주로직 프로세서(110,111-1,111-2)으로부터 로직 연산 결과값들(즉, 신호들)을 모니터링하는 기능을 수행한다.
다수의 중복 로직 모듈(220,221-1,221-2)는 체계 시스템과 연결된 다수의 체계 주로직(110,111-1,111-2)에서 운용되는 주요 로직(알고리즘, 제어 소프트웨어)과 동일한 로직이 저주기로 중복 연산되는 모듈을 의미한다. 다수의 체계 주로직(110,111-1,111-2)의 소프트웨어(SW) 로직을 그대로 복사한 형태가 될 것이며 단지 실행 주기가 가변적으로 수행될 수 있다. 물론, 다수의 중복 로직 모듈(220,221-1,221-2)도 체계 중복 로직(220), 제 1 부체계 중복 로직(221-1), 제 2 부체계 중복 로직(221-2)로 구성된다.
주요한 제어 파라미터인 실행 주기는 로직값 비교 상관기(230) 및 추적 관리자 모듈(260)의 결과에 따라 코어 제어 로직(270에 의해 제어되는 것을 특징으로 한다.
로직값 비교 상관기(230)는 다수의 체계 주로직(110,111-1,111-2)의 로직에서 수행되며 주요하게 모니터링해야 하는 주요 연산 결과값들을 다수의 중복 로직 모듈(220,221-1,221-2)에서 생성되는 연산 결과값과 페어링하여 연속적으로 비교하고 차이를 판단하는 기능을 담당한다. 모니터링되는 결과값의 경향 또는 오차 허용치를 추적하여 값이 비정상적으로 추정되는 경우 추적기(tracker) 파라미터를 제어하여 다수의 중복 로직 모듈(220,221-1,221-2)의 중복 연산 결과값을 보상하거나 다수의 체계 주로직(110,111-1,111-2)의 값을 보정한다.
실시 예로, 체계 주로직(110)에서 모니터링이 필요한 연산 결과 값인 a이 로직값 비교상관기(230)로 입력되어 들어오고 이와 동기화되어 운용되는 중복 로직 모듈(220)에서도 연산 결과값인 중복 로직 결과 a'값(a'은 a값에 오차를 갖는 값임을 표현)을 생성하고 있다고 가정한다. 이상적인 시스템에서는 두 로직의 결과 값이 동일해야하지만 중복 로직의 저주기 운용으로 이 두 값은 차이를 갖게 되지만 이런 차이를 추적기(tracker)로 추적하고 있으므로 체계 주로직의 값 a와 중복 로직의 값 a'의 차이는 특정 오차 범위 밖으로 벗어나는 않을 것이다.
하지만 체계 주로직 모듈이 비정상으로 동작하여 체계 로직 결과 a값이 추적 오차 범위 밖으로 벗어나거나 랜덤 노이즈에 의해 튀는 경우 이를 결함 상황으로 인지하고 체계 주로직에 중복 로직 모듈(220)의 결과값인 a'을 전달하여 보정하도록 한다.
또는, 이와 반대로 중복 로직 모듈(220)의 비정상 동작으로 a'값이 추적 오차 범위 밖으로 벗어나거나 랜덤 노이즈에 의해 튀는 경우 이를 결함 상황으로 인지하고 중복 로직 모듈(220)에 체계 주로직 모듈(110)의 결과값인 a를 전달하여 보정하도록 한다. 이러한 방식으로 모니터링 값의 비정상을 확인하고 복구하는 절차를 수행한다.
로직값 비교 상관기(230)의 상세 알고리즘은 도 4에 기술되어 있으며 후술하기로 한다.
추적 관리자 모듈(260)은 추적이 필요한 다수의 체계 주로직(110,111-1,111-2)의 복수개의 로직 연산 결과값들에 대해 식별, 생성, 갱신, 해제 등으로 관리된다.
변수 적응형 추적기(250)는 범용적으로 활용되는 추적 필터(tracking filter)를 사용할 수 있으며, 추적 필터로는 칼만 필터, 알파-베타 필터등이 적용될 수 있다. 따라서, 변수 적응형 추적기(250)는 모니터링되는 특정 로직 연산 결과값들을 추적하여 예측값을 생성하며, 이 예측값은 추적 관리자 모듈(260)에서 관리되는 테이블(table)을 갱신하기 위해 사용된다.
본 발명의 일실시예에서 적용된 추적기 파라미터 모듈(240)은 변수 적응형으로 모니터링 변수에 따라 개별적, 적응적으로 추적기(tracker) 파라미터를 제어할 수 있는 것을 특징으로 할 수 있다.
결함 모니터링 모듈(210)에서 결함이 인지되면 결함 제어 모듈(201) 에서는 결정된 제어 방식을 수행하는 기능을 담당한다. 주요하게는 다수의 중복 로직 모듈(220,221-1,221-2)을 제어하거나 코어 제어 로직(270)의 운용 파라미터를 제어한다.
로직 매칭 모듈(120) 은 앞의 모듈에서 판단된 결함 유형에 따라 수행해야 할 복구 로직을 저장소(130)에 저장되어 있는 대응 로직 DB(280)에서 로딩하고 결함 유형 별 요구사항 등을 매칭하는 기능을 수행한다.
수행 결과로써 식별된 특정 결함에 대응되는 복구 로직 수행에 필요한 모든 값, 자료, 허용치 등이 준비된다.
코어 제어 로직(270)은 중복 로직 모듈(220,221-1,221-2), 추적 관리자 모듈(260), 변수 적응형 추적기(250), 로직값 비교 상관기(230) 등을 제어하고 결함 모니터링의 제어를 수행하는 기능을 한다.
저장소(130)는 결함 유형 별 대응 로직, 추적기의 제어 파라미터, 복구 요구 사항 등을 포함하는 복구 로직 정보를 저장한 대응 로직 DB(280)를 구비한다. 상세하게는 결함 유형 별로 대응하는 방법(SW 로직)이 다르므로 이를 저장하고 필요 시 로딩할 있어야 하며 결함 상황과 복구 요구사항에 따라 로딩한 로직에 적절한 파라미터가 셋팅되어야 한다.
여기서 복구 요구사항이란, 특정 결함이 해결되어 복구되는데 필요한 시간, 값등에 대한 요인들을 정리하여 룩업 테이블(Lookup table)로 작성한 것을 의미한다.
저장소(130)는 플래시 메모리 디스크(SSD: Solid State Disk), 하드 디스크 드라이브, 플래시 메모리, EEPROM(Electrically erasable programmable read-only memory), SRAM(Static RAM), FRAM (Ferro-electric RAM), PRAM (Phase-change RAM), MRAM(Magnetic RAM) 등과 같은 비휘발성 메모리 및/또는 DRAM(Dynamic Random Access Memory), SDRAM(Synchronous Dynamic Random Access Memory), DDR-SDRAM(Double Date Rate-SDRAM) 등과 같은 휘발성 메모리의 조합으로 구성될 수 있다.
도 3은 본 발명의 일실시예에 따른 결함 모니터링 동작 과정을 보여주는 흐름도이다. 도 3을 참조하면, 결함 모니터링 모듈(210)은 외부 부체계, 체계 프로세서인 다수의 주로직 프로세서(110,111-11,111-2)와 물리적으로 연결되어 있으며 모니터링을 통해 통신 오류, 중지(abort) 오류, 로직 값 오류 등를 인식하고 유형을 판단하는 기능을 담당한다.
일단 결함 모니터링 모듈(210)이 모니터링을 지속적으로 수행하면서 결함이 인지되면 결함 유형을 식별한다(단계 S310,S320). 결함 유형 중 중지(abort) 오류는 부체계 또는 체계에서 로직 수행 중 의도되지 않는 현상이 발견되어 abort 메시지를 전송하는 것을 인지하는 것이다.
통신 오류는 부체계 간 물리적 통신 인터페이스의 오동작, 신호왜곡, 결선등에 의한 결함을 의미한다. 로직 값 오류는 체계 또는 부체계의 주로직으로부터 전달된 값들의 오류 여부를 의미한다.
결함 모니터링 모듈(210)은 이러한 3가지 오류를 인지하고 처리하기 위한 절차들을 SW로 구현한 로직들의 집합으로 구성된다.
우선 결함 식별 단계(S320)에서 abort 오류가 식별되는 경우, abort 오류 처리 로직으로 진입한다. 이어 abort 유형을 판단하고 abort 유형 별 SIL 등급을 판단한다(단계 S330,S331,S333). 마지막으로 특정 abort 오류에 대한 SIL 등급에 따른 대응 로직을 수행한다(단계 S335,S360).
여기서 Abort 유형 별 SIL(Safety integrity level) 등급의 의미를 정의하는 것이 중요하다. 시스템에 abort 오류를 분류해보면 가벼운 오류부터 심각한 오류로 분류할 수 있다. 가벼운 오류는 전체 시스템 운용에 큰 영향을 주지 않거나, 해당 오류는 간단한 대응으로 복구 가능하거나, 또는 해당 오류를 해결하지 않더라도 위험 요인이 발생할 소지가 적은 결함으로 정의할 수 있다.
심각한 오류는 전체 시스템 운용에 큰 영향을 주거나, 해당 오류를 복구하기 위해서는 복잡한 대응 로직이 필요하거나, 해당 오류를 해결하지 않으면 심각한 위험이 발생할 수 있는 결함으로 정의할 수 있다. 이러한 결함은 MIL-STD등에서와 같이 표준화된 SIL 등급이 부여될 수 있으며 결함의 경중에 따라 대응 로직이 달라짐을 의미한다. 따라서 단계 S330 내지 S335는 이러한 결함을 판단하고 최적의 대응 로직을 수행하도록 하는 일련의 로직 절차를 묘사하고 있다.
SIL 등급 별 대응 로직들의 예로는, (1) 로직의 절차 중 이전 몇 단계로 이동 수행, (2) 보조 로직 코드로 주로직 코드 대체, (3)시스템 리부팅등이 될 수 있으며 결함 유형에 따라 다양한 방식 중 어느 하나를 채용할 수 있다. 중요한 것은 이러한 대응 로직들이 저장소(130)에 저장되어 있다가 결함 모니터링 절차에서 로딩되어 수행된다는 것이다.
한편, 결함 식별 단계(S320)에서 통신오류가 식별되는 경우, 통신 오류 처리 로직으로 진입 후 곧바로 결함이 발생하는 채널을 인지한다. 다양한 통신 채널 중 어느 통신 방식의 채널이 오류인지 유형을 판단하고 유형 별 SIL 등급을 판단한다(단계 S340,S341,S343). 이어 SIL 등급 별 대응 로직을 수행하여 결함을 처리한다(단계 S345,S360).
통신 오류 별 대응 로직들의 예로는, (1) 중복 로직값 대체 활용, (2)시뮬레이션 데이터 대체 활용 등이 될 수 있으며 결함 유형에 따라 다양한 방식 중 어느 하나를 채용할 수 있다. 중요한 것은 이러한 대응 로직들이 저장소(130)에 저장되어 있다가 결함 모니터링 절차에서 로딩되어 수행된다는 것이다.
마지막으로, 결함 식별 단계(S320)에서 로직 값 오류가 식별되는 경우, 진입 후 로직 값 상태를 확인한다. 로직 값 오류 유형으로는 특정 로직에서 생성되는 결과 값이 발산하는 경우, 결과 값이 허용치 범위내에 있지 않은 경우등이 될 수 있으며 유형에 따라 대응 로직을 수행한다(단계 S350,S351). 로직 값 오류 별 대응 로직들의 예로는, (1) 추적(Tracking) 값으로 대체 활용, (2) 중복 로직값 대체 활용, (3) 시뮬레이션 데이터 대체 활용 등이 될 수 있으며 결함 유형에 따라 다양한 방식 중 어느 하나를 채용할 수 있다. 중요한 것은 이러한 대응 로직들이 저장소(130) 에 저장되어 있다가 결함 모니터링 절차에서 로딩되어 수행된다는 것이다.
도 4는 본 발명의 일실시예에 따른 값비교 상관기의 동작 흐름을 보여주는 흐름도이다. 로직 값 비교 상관기(도 2의 230)에서는 주로직 프로세서(110,111-1,111-2)와 중복 로직 모듈(220,221-1,221-2)의 데이터를 수신하여 결과값들을 매칭하고 매칭되는 값들을 상관비교하는 기능을 수행한다.
우선, 서로 다른 동작 주기를 갖는 주로직 값(즉, 로직 연산 결과값)과 중복 로직 값(즉, 중복 연산 결과값)을 동기화 시켜 수집한다(단계 S410).
다음으로 단계 S420에서는 주로직 값이 정상 허용치 범위에 있는지 확인하고 중복로직과의 상관값을 산출한다. 이어 단계 S430에서는 주로직의 값이 허용치 범위 여부에 따라 오류 여부를 판단하여 오류 대응 제어를 수행하거나 상관값 허용범위를 확인한다(단계 S431,S440).
부연하면, 단계 S430에서 제어가 필요한 경우, 오류 대응 DB(도 2의 280)로부터 대응 로직을 불러들여 수행한다(단계 S431). 또한 수행 결과에 따라 진단 모듈로 메시지를 전달한다(단계 S433).
단계 S440에서 상관값이 허용범위에 있는지 확인 후 허용 범위에 존재하지 않는 경우 추적(tracking) 파라미터와 중복로직의 동작 사이클을 제어한다(단계 S441). 제어를 통해 상관값이 허용범위내로 들어오도록 반복적으로 제어 루프를 수행한다.
앞의 절차를 통해 업데이트된 로직 연산 결과값 및 중복 연산 결과값들은 추적 테이블에 저장되고 갱신된다(단계 S450).
100: 다중화 로직 기반 락스텝 실행 장치
110: 체계 주로직 프로세서
111-1: 제 1 부체계 주로직 프로세서
111-2: 제 2 부체계 주로직 프로세서
120: 체계 락스텝 제어기
130: 저장소

Claims (20)

  1. 다수의 주로직 프로세서; 및
    락스텝 방식을 이용하여 모니터링되는 상기 다수의 주로직 프로세서의 로직 연산 결과값들과 상기 다수의 주로직 프로세서의 로직을 복사하여 중복 연산되는 중복 연산 결과값들을 비교하고, 비교 결과에 따라 결함 유형을 식별하고 상기 유형에 따라 결함 허용치를 증대시키고 갱신하는 체계 락스텝 제어기;
    를 포함하는 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  2. 제 1 항에 있어서,
    상기 결함 유형에 따른 대응 알고리즘, 추적기의 제어 파라미터, 및 복구 요구 사항을 포함하는 복구 로직 정보를 저장하는 저장소;를 더 포함하는 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  3. 제 2 항에 있어서,
    상기 결함 유형은, 통신 오류, 중지(abort) 오류, 로직값 오류 중 어느 하나인 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  4. 제 3 항에 있어서,
    상기 통신 오류는 상기 다수의 주로직 프로세서간 물리적 통신 인터페이스의 오동작, 신호왜곡, 결선에 의한 결함이고, 상기 중지 오류는 상기 다수의 주로직 프로세서에서 로직 수행중 발생되는 메시지이고, 상기 로직값 오류는 상기 다수의 주로직 프로세서로부터 전달된 값들의 오류 여부인 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  5. 제 1 항에 있어서,
    상기 다수의 주로직 프로세서는 체계 주로직 프로세서 및 여러개의 부체계 주로직 프로세서로 이루어지며 각기 다른 운용 주파수대를 갖는 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  6. 제 1 항에 있어서,
    상기 체계 락스텝 제어기는,
    상기 로직 연산 결과값들을 모니터링하는 결함 모니터링 모듈;
    상기 중복 연산 결과값들을 산출하는 다수의 중복 로직 모듈;
    상기 로직 연산 결과값들과 중복 연산 결과값들을 비교하고, 비교 결과 차이를 판단하여 결함의 유형을 식별하고 상기 유형에 따라 결함 허용치를 증대시키는 로직값 비교 상관기; 및
    증대된 결함 허용치를 갱신하는 추적 관리자 모듈;을 포함하는 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  7. 제 6 항에 있어서,
    상기 다수의 중복 로직 모듈은 실행주기가 가변적인 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  8. 제 6 항에 있어서,
    상기 증대는 모니터링되는 상기 로직 연산 결과값들의 경향 또는 오차 허용치를 추적하여 상기 로직 연산 결과값들이 비정상적으로 추정되면 추적기(tracker) 파라미터를 제어하여 다수의 중복 로직 모듈의 중복 연산 결과값들을 보상하거나 다수의 체계 주로직의 로직 연산 결과값들을 보정함으로써 이루어지는 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  9. 제 8 항에 있어서,
    상기 추적기 파라미터는 모니터링에 따라 변경되는 상기 로직 연산 결과값들을 추적 필터를 통해 생성되는 변수 적응형 파라미터인 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  10. 제 9 항에 있어서,
    상기 추적 필터는 칼만 필터 또는 알파-베타 필터인 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  11. 제 6 항에 있어서,
    상기 갱신은 테이블에 입력됨으로써 이루어지는 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  12. 제 2 항에 있어서,
    상기 복구 요구사항은 상기 결함 유형이 해결되어 복구되는 필요한 시간을 포함하여 룩업 테이블로 이루어지는 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  13. 제 3 항에 있어서,
    상기 결함 유형이 상기 중지 오류이면 상기 대응 알고리즘은 로직의 절차 중 이전 몇 단계로 이동 수행, 보조 로직 코드로 주로직 코드 대체, 및 시스템 리부팅인 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  14. 제 3 항에 있어서,
    상기 결함 유형이 상기 통신 오류이면 상기 대응 알고리즘은 중복 로직값 대체 활용, 시뮬레이션 데이터 대체 활용인 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  15. 제 3 항에 있어서,
    상기 결함 유형이 상기 로직값 오류이면 상기 대응 알고리즘은 추적(Tracking) 값으로 대체 활용, 중복 로직값 대체 활용, 시뮬레이션 데이터 대체 활용인 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  16. (a) 체계 락스텝 제어기가 다수의 주로직 프로세서를 모니터링하여 로직 연산 결과값들을 생성하는 단계;
    (b) 상기 체계 락스텝 제어기가 락스텝 방식을 이용하여 모니터링되는 상기 로직 연산 결과값들과 상기 다수의 주로직 프로세서의 로직을 복사하여 중복 연산되는 중복 연산 결과값들을 비교하는 단계;
    (c) 상기 체계 락스텝 제어기가 비교 결과에 따라 결함 유형을 식별하고 상기 유형에 따라 결함 허용치를 증대시키고 갱신하는 단계;
    를 포함하는 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 방법.
  17. 제 16 항에 있어서,
    상기 (a) 단계 이전에, 상기 결함 유형에 따른 대응 알고리즘, 추적기의 제어 파라미터, 및 복구 요구 사항을 포함하는 복구 로직 정보를 저장소에 저장하는 단계;를 더 포함하는 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 방법.
  18. 제 16 항에 있어서,
    상기 결함 유형은, 통신 오류, 중지(abort) 오류, 로직값 오류 중 어느 하나인 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 방법.
  19. 제 18 항에 있어서,
    상기 통신 오류는 상기 다수의 주로직 프로세서간 물리적 통신 인터페이스의 오동작, 신호왜곡, 결선에 의한 결함이고, 상기 중지 오류는 상기 다수의 주로직 프로세서에서 로직 수행중 발생되는 메시지이고, 상기 로직값 오류는 상기 다수의 주로직 프로세서로부터 전달된 값들의 오류 여부인 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 장치.
  20. 제 17 항에 있어서,
    (e) 상기 체계 락스텝 제어기가 상기 복구 로직 정보를 상기 저장소로부터 불러오는 단계; 및
    (f) 상기 체계 락스텝 제어기가 상기 복구 로직 정보를 실행하여 상기 결함을 처리하는 단계;를 포함하는 것을 특징으로 하는 다중화 로직 기반 락스텝 실행 방법.
KR1020170084839A 2017-07-04 2017-07-04 다중화 로직 기반 락스텝 실행 장치 및 방법 KR101977172B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170084839A KR101977172B1 (ko) 2017-07-04 2017-07-04 다중화 로직 기반 락스텝 실행 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170084839A KR101977172B1 (ko) 2017-07-04 2017-07-04 다중화 로직 기반 락스텝 실행 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20190004521A true KR20190004521A (ko) 2019-01-14
KR101977172B1 KR101977172B1 (ko) 2019-05-10

Family

ID=65027543

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170084839A KR101977172B1 (ko) 2017-07-04 2017-07-04 다중화 로직 기반 락스텝 실행 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101977172B1 (ko)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS649544A (en) 1987-07-02 1989-01-12 Fujitsu Ltd Enq resource monitoring system
JPH0934856A (ja) * 1995-02-27 1997-02-07 Internatl Business Mach Corp <Ibm> ロック・ステップ作動回路の同期を有効にする方法および装置
KR19990057809A (ko) * 1997-12-30 1999-07-15 김영환 오류 방지 시스템
JP2001523855A (ja) * 1997-11-14 2001-11-27 マラソン テクノロジーズ コーポレイション 故障回復/耐故障計算機
KR101560497B1 (ko) 2014-09-26 2015-10-15 성균관대학교산학협력단 락스텝으로 이중화된 프로세서 코어들의 리셋 제어 방법 및 이를 이용하는 락스텝 시스템
KR101657086B1 (ko) 2015-02-11 2016-09-19 한국항공대학교산학협력단 고정 카메라를 장착한 무인 항공기의 영상기반 유도 제어시스템

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS649544A (en) 1987-07-02 1989-01-12 Fujitsu Ltd Enq resource monitoring system
JPH0934856A (ja) * 1995-02-27 1997-02-07 Internatl Business Mach Corp <Ibm> ロック・ステップ作動回路の同期を有効にする方法および装置
JP2001523855A (ja) * 1997-11-14 2001-11-27 マラソン テクノロジーズ コーポレイション 故障回復/耐故障計算機
US20020026604A1 (en) * 1997-11-14 2002-02-28 Marathon Technologies Corporation, A Delaware Corporation Fault resilient/fault tolerant computing
KR19990057809A (ko) * 1997-12-30 1999-07-15 김영환 오류 방지 시스템
KR101560497B1 (ko) 2014-09-26 2015-10-15 성균관대학교산학협력단 락스텝으로 이중화된 프로세서 코어들의 리셋 제어 방법 및 이를 이용하는 락스텝 시스템
KR101657086B1 (ko) 2015-02-11 2016-09-19 한국항공대학교산학협력단 고정 카메라를 장착한 무인 항공기의 영상기반 유도 제어시스템

Also Published As

Publication number Publication date
KR101977172B1 (ko) 2019-05-10

Similar Documents

Publication Publication Date Title
US7793147B2 (en) Methods and systems for providing reconfigurable and recoverable computing resources
US5742753A (en) Mesh interconnected array in a fault-tolerant computer system
EP1703401B1 (en) Information processing apparatus and control method therefor
US10114356B2 (en) Method and apparatus for controlling a physical unit in an automation system
US20160085642A1 (en) Fault Tolerant Industrial Automation Control System
US10345801B2 (en) Ensuring a correct program sequence in a dual-processor architecture
AU2023223006A1 (en) Self-healing process control system
US20170242760A1 (en) Monitoring device, fault-tolerant system, and control method
US20050229035A1 (en) Method for event synchronisation, especially for processors of fault-tolerant systems
KR101977172B1 (ko) 다중화 로직 기반 락스텝 실행 장치 및 방법
KR20050121729A (ko) 프로그램 제어식 유닛 및 방법
KR101581309B1 (ko) 보드단위별 연동고장검출 및 배제 방식 항공전자장비
US20190079823A1 (en) Signal Pairing for Module Expansion of a Failsafe Computing System
JP4232589B2 (ja) 二重化コントローラ、その等値化モード決定方法
EP3316135B1 (en) Control system
JP5227653B2 (ja) 多重化計算機システム、及びその処理方法
JP3397861B2 (ja) プロセス制御装置
KR102059575B1 (ko) 무기 체계의 bit 운용 장치 및 그 방법
JP5325032B2 (ja) 多重系システムの高信頼性制御装置
JP2021189988A (ja) 電子制御装置及び電子制御装置の制御方法
Kornecki Assesment of software safety via catastrophic events coverage
CN113849335A (zh) 一种通讯故障自愈方法及系统
Kirrmann 2.5 Dependable Automation
CN117111438A (zh) 一种工业控制器的冗余控制方法
Malynyak Reducing complexity methods of safety-related system

Legal Events

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