KR100416201B1 - Information processor and real-time distributed processing system - Google Patents

Information processor and real-time distributed processing system Download PDF

Info

Publication number
KR100416201B1
KR100416201B1 KR10-2001-0056548A KR20010056548A KR100416201B1 KR 100416201 B1 KR100416201 B1 KR 100416201B1 KR 20010056548 A KR20010056548 A KR 20010056548A KR 100416201 B1 KR100416201 B1 KR 100416201B1
Authority
KR
South Korea
Prior art keywords
task
tasks
execution
operator
calculator
Prior art date
Application number
KR10-2001-0056548A
Other languages
Korean (ko)
Other versions
KR20020070071A (en
Inventor
사토야스오
다니코시고이치로
요코야마다카노리
나카무라도모하루
기도미츠야스
Original Assignee
가부시끼가이샤 히다치 세이사꾸쇼
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가부시끼가이샤 히다치 세이사꾸쇼 filed Critical 가부시끼가이샤 히다치 세이사꾸쇼
Publication of KR20020070071A publication Critical patent/KR20020070071A/en
Application granted granted Critical
Publication of KR100416201B1 publication Critical patent/KR100416201B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)
  • Remote Monitoring And Control Of Power-Distribution Networks (AREA)

Abstract

보호릴레이 기능을 정지시키는 가능성을 억제하여, 보호릴레이 기능을 실현하는 복수의 태스크를 연산기에 할당하기 위하여, 본 발명은 네트워크에 의해 접속된 복수의 연산기로 보호릴레이 기능을 실현하는 복수의 태스크를 처리하는 정보처리장치로서, 복수의 태스크 중에서 특정한 연산기에 의해 처리될 태스크의 조합을 저장하는 수단과, 상기 특정한 연산기에 의해 처리될 태스크의 조합 중 어느 하나를 선택하여, 상기 선택된 조합의 태스크를 상기 특정한 연산기로 실행하는 수단을 구비한다.In order to suppress the possibility of stopping the protection relay function and assign a plurality of tasks for realizing the protection relay function to the calculator, the present invention processes a plurality of tasks for realizing the protection relay function with a plurality of computers connected by a network. An information processing apparatus comprising: means for storing a combination of tasks to be processed by a specific operator among a plurality of tasks and a combination of tasks to be processed by the specific calculator to select the task of the selected combination; Means for executing with a calculator.

Description

정보처리장치 및 실시간 분산처리시스템{INFORMATION PROCESSOR AND REAL-TIME DISTRIBUTED PROCESSING SYSTEM}Information processing device and real-time distributed processing system {INFORMATION PROCESSOR AND REAL-TIME DISTRIBUTED PROCESSING SYSTEM}

본 발명은 복수의 프로그램을 실행하는 네트워크에 접속된 복수의 연산기를 구비한 분산처리시스템의 구성에 관한 것으로서, 특히 전력설비의 보호제어장치로대표되는 실시간 제어를 요구하는 처리시스템에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a configuration of a distributed processing system having a plurality of computing devices connected to a network for executing a plurality of programs, and more particularly to a processing system for requesting real-time control represented by a protection control device of a power facility.

종래의 일반적인 분산처리시스템에 있어서는, 처리능력 및 신뢰성을 향상시키기 위하여 여러 가지의 태스크 할당방법이 고안되어 실제 사용되고 있다. 예를 들면, 일본국 특개평 05-257908호나 일본국 특개평 07-282013호에는, 각 연산기의 특성 및 상태에 따라 태스크를 할당하는 방법이 제안되어 있다. 연산기 각각의 처리 능력 및 신뢰도 등의 성능 또는 계산 부하 등의 상태를 참조하여, 태스크 할당과 우선순위가 결정된다. 중요성 및 긴급성이 다른 태스크는 적당한 신뢰도를 갖는 연산기에 의해 처리됨으로써, 전체적으로 신뢰성이 높은 분산처리가 수행된다.In a conventional general distributed processing system, various task assignment methods have been devised and actually used to improve processing capacity and reliability. For example, Japanese Patent Laid-Open No. 05-257908 and Japanese Patent Laid-Open No. Hei 07-282013 propose a method of assigning a task in accordance with the characteristics and states of each calculator. Task assignments and priorities are determined by referring to performance such as processing power and reliability of each of the operators, or states such as computational load. Tasks of different importance and urgency are handled by a calculator having appropriate reliability, so that highly reliable distributed processing is performed as a whole.

상술한 구성에 부가하여, 태스크의 상관관계로서 협조처리의 기구가 사용될 수 있다. 예를 들면, 일본국 특개평 09-231183호에는 태스크의 동시 시동 등의 태스크 협조처리에 대한 시간제약을 실현하는 제어기구가 제공되어 있다. 그러나, 신뢰성의 관점에서, 태스크의 상관관계가 해결되지는 않는다.In addition to the above-described configuration, a mechanism of cooperative processing can be used as a correlation of tasks. For example, Japanese Patent Laid-Open No. 09-231183 provides a control mechanism for realizing time constraints on task cooperative processing such as simultaneous starting of tasks. However, in terms of reliability, task correlation is not solved.

한편, 신뢰성이 필요한 실시간 처리장치로는, 다중화에 의한 대책이 종래부터 이루어져 왔다. 예를 들면, 발전, 송전, 배전 등의 전력제어 및 항공, 철도 등의 교통제어 등의 많은 제어장치에 있어서, 오동작 방지는 엄격하게 제한되지만, 실시간성은 요구된다. 따라서, 이러한 실시간 처리에서는, 제어 대상의 다중화, 연산의 다중화 및 알고리즘의 다중화 등에 의하여 고신뢰성이 실현된다.On the other hand, as a real-time processing device that requires reliability, countermeasures by multiplexing have been conventionally taken. For example, in many control devices such as power control such as power generation, power transmission, and distribution, and traffic control such as aviation and railroad, the prevention of malfunction is strictly limited, but real time is required. Therefore, in such real-time processing, high reliability is realized by multiplexing control objects, multiplexing operations, multiplexing algorithms, and the like.

그 결과, 상술한 목적이 고신뢰형 실시간 분산처리로서 설치되는 경우, 분산될 각각의 태스크 사이에는 신뢰성의 관점에서 상관관계가 발생된다. 예를 들어, 동일한 목적에 대하여 복수의 다중화된 태스크를 설치함으로써 신뢰도가 실현되는경우, 그 태스크는 동일한 연산장치에 의해 처리되지 않는 것이 신뢰성의 관점에서 바람직하다. 따라서, 고신뢰형 실시간 분산처리에서는 연산량의 관점에서 태스크의 상관관계 뿐만 아니라, 신뢰성의 관점에서 태스크의 상관관계도 고려할 필요가 있다.As a result, when the above-described object is provided as a highly reliable real-time distributed processing, a correlation is generated between the respective tasks to be distributed in terms of reliability. For example, when reliability is realized by providing a plurality of multiplexed tasks for the same purpose, it is preferable from the viewpoint of reliability that the task is not processed by the same computing device. Therefore, in the highly reliable real-time distributed processing, it is necessary to consider not only the correlation of the task in terms of the computation amount but also the correlation of the task in terms of reliability.

종래에는 신뢰성이 필요한 실시간 처리장치를 분산처리에 설치하고자 하는 경우, 이러한 상대적인 제약은 사전 설계로 만족할 수 밖에 없었다. 예를 들어, 일본국 특개소 57-3516호에는 전력설비의 보호제어장치를 분산처리시스템에 설치하는 방법이 제안되어 있다. 그러나, 연산량의 조정 및 신뢰성의 조정은 설계 시점에서 사람의 손으로 수행된다. 따라서, 각 처리장치 구성에 대하여 최적의 배치를 설계하는 것이 필요하다. 또한, 미리 정해진 태스크 배치만이 사용되기 때문에, 처리장치 구성이 변화되었을 때에는 효과를 상실한다.In the past, when a real-time processing device requiring reliability is to be installed in a distributed process, such relative constraints have to be satisfied by prior design. For example, Japanese Patent Laid-Open No. 57-3516 proposes a method of installing a protection control device of an electric power plant in a distributed processing system. However, adjustment of the amount of calculation and adjustment of the reliability are performed by human hands at the time of design. Therefore, it is necessary to design an optimum arrangement for each treatment device configuration. In addition, since only a predetermined task arrangement is used, the effect is lost when the processing apparatus configuration is changed.

"종래의 기술"에 기술한 바와 같이, 종래의 일반적인 분산처리시스템은 신뢰성이 필요한 제어장치에 적용될 수 없다.As described in "Prior Art", the conventional general distributed processing system cannot be applied to a control device requiring reliability.

이전의 분산처리기술은 각 연산기 또는 각 태스크의 신뢰성 및 긴급성을 규정하여, 고성능과 고신뢰성을 실현할 수 없다.Previous distributed processing techniques prescribe the reliability and urgency of each operator or each task and cannot achieve high performance and high reliability.

신뢰도상의 태스크의 상관관계를 규정하는 수단이 없다.There is no means to define the correlation of tasks in reliability.

따라서, 고신뢰형 분산처리시스템을 실현하기 위해서는, 종래와 같은 연산량상의 태스크의 상관관계에 부가하여, 다중화의 관점에서 신뢰도상의 상관관계를 반영하는 기구가 필요하다.Therefore, in order to realize a highly reliable distributed processing system, a mechanism for reflecting the correlation of reliability in terms of multiplexing is required in addition to the correlation of tasks on the amount of computation as in the prior art.

본 발명의 목적은 각각의 연산기 또는 각각의 태스크의 신뢰성 및 긴급성을 규정하여 고성능과 고신뢰성을 실현하는 것이다.It is an object of the present invention to define the reliability and urgency of each operator or each task to achieve high performance and high reliability.

본 발명의 다른 목적은 보호릴레이 기능을 정지시키는 가능성을 억제하여, 적은 연산기로 보호릴레이 기능을 실현할 수 있도록 태스크를 할당하는 것이다.Another object of the present invention is to suppress the possibility of stopping the protection relay function and to assign a task so that the protection relay function can be realized with a small number of calculators.

도 1은 본 발명이 적용되는 고신뢰성 실시간 분산처리시스템의 구성.1 is a configuration of a high reliability real-time distributed processing system to which the present invention is applied.

도 2는 고신뢰성 실시간 분산처리시스템의 다른 구성(No.1).2 is another configuration of a highly reliable real-time distributed processing system (No. 1).

도 3은 고신뢰성 실시간 분산처리시스템의 다른 구성(No.2).3 is another configuration of a highly reliable real time distributed processing system (No. 2).

도 4는 장치 고장시의 동작(No.1).4 is an operation (No. 1) at the time of a device failure.

도 5는 장치 고장시의 동작(No.2).5 is an operation (No. 2) at the time of a device failure.

도 6은 고신뢰성 실시간 분산처리시스템에 의한 태스크 스케쥴링의 예시.6 is an illustration of task scheduling by a highly reliable real time distributed processing system.

도 7은 실행연산기제어기구의 데이터베이스의 개략도의 예시.7 is an illustration of a schematic diagram of a database of an executable operator control mechanism.

도 8은 태스크 스케쥴링의 시간단면(No.1).8 is a time sectional view (No. 1) of task scheduling.

도 9는 태스크 스케쥴링의 시간단면(No.2).9 is a time sectional view (No. 2) of task scheduling.

도 10은 태스크 스케쥴링의 시간단면(No.3).10 is a time sectional view (No. 3) of task scheduling.

도 11은 외부 통신망으로부터의 디자인 툴.11 is a design tool from an external communication network.

도 12는 통신로 감시 태스크를 구비한 분산처리시스템의 구성.12 is a configuration of a distributed processing system having a channel monitoring task.

도 13은 본 발명이 적용되는 디지털보호릴레이장치의 구성.13 is a configuration of a digital protective relay device to which the present invention is applied.

도 14는 디지털보호릴레이의 실행연산기제어기구의 데이터베이스의 개략도의 예시.14 is an illustration of a schematic diagram of a database of an execution operator control mechanism of a digital protection relay.

도 15는 디지털보호릴레이의 입출력제어기구의 데이터베이스의 개략도의 예시.Fig. 15 is an illustration of a schematic diagram of a database of an input / output control mechanism of a digital protection relay.

도 16은 실행연산기제어기구의 데이터베이스의 텍스트 형태의 예시.16 is an illustration of a text form of a database of an executable operator control mechanism.

도 17은 입출력제어기구의 데이터베이스의 텍스트 형태의 예시.17 is an example of a text form of a database of an input / output control mechanism.

도 18은 본 발명이 적용되는 디지털보호릴레이장치의 예시(시스템 구성).18 is an illustration (system configuration) of a digital protective relay device to which the present invention is applied.

도 19는 디지털보호릴레이장치의 예시에 있어서의 태스크의 개념도.19 is a conceptual diagram of a task in an example of a digital protective relay device.

도 20은 디지털보호릴레이장치의 예시에 있어서의 실행연산기제어기구의 시동시 동작 흐름도.Fig. 20 is a flowchart of operation at startup of the execution operator control mechanism in the example of the digital protective relay device.

도 21은 디지털보호릴레이장치의 예시에 있어서의 시동시 초기 태스크 배치.Fig. 21 is an initial task arrangement at start-up in the example of the digital protective relay device.

도 22는 디지털보호릴레이장치의 예시에 있어서의 실행연산기제어기구의 평상시 동작 흐름도.Fig. 22 is a flowchart of the normal operation of the execution operator control mechanism in the example of the digital protection relay device.

도 23은 디지털보호릴레이장치의 예시에 있어서의 연산기 이상의 가정.Fig. 23 is an assumption of more than a calculator in the example of the digital protection relay device.

도 24는 디지털보호릴레이장치의 예시에 있어서의 내고장성(fault tolerant) 동작(1).Fig. 24 is a fault tolerant operation 1 in the example of the digital protective relay device.

도 25는 디지털보호릴레이장치의 예시에 있어서의 내고장성 동작(2).25 is a fault-tolerant operation (2) in the example of the digital protective relay device.

전력제어 및 항공, 철도 등의 교통제어 등의 신뢰성이 필요한 실시간 처리장치에서는, 연산기의 이상에 대하여 정상 동작을 유지하기 위하여, 다중화에 의한 2중 안전 백업(fail safe backup)을 실현하는 것이 필요하다. 이 처리 목적을 분산처리시스템에 의해 실현하고자 하는 경우에는, 시스템 자체의 내고장성을 강하게 하는 것만으로는 오동작을 방지할 수 없다. 연산의 다중화 및 알고리즘의 다중화의 개념에 기초하여, 복수의 태스크를 설치함으로써 2중 안전 백업을 실현하는 것이 필요하다.In a real-time processing device that requires reliability such as power control and traffic control such as aviation and railway, it is necessary to realize a fail safe backup by multiplexing in order to maintain normal operation against anomaly of the calculator. . When this processing purpose is to be realized by a distributed processing system, malfunction cannot be prevented only by strengthening the failure resistance of the system itself. Based on the concept of multiplexing of operations and multiplexing of algorithms, it is necessary to realize a double safety backup by providing a plurality of tasks.

이 경우, 복수의 태스크의 관계를 고려하는 것이 필요하다. 태스크의 상관관계로서, 동일한 연산기로 연산하는 것은 제약되거나 적절하지 않을 수 있다. 따라서, 본 발명의 고신뢰형 실시간 분산처리시스템에서는 이러한 상관관계를 제어하는 실행연산기제어기구가 설치된다.In this case, it is necessary to consider the relationship of a plurality of tasks. As a correlation of tasks, computing with the same operator may not be constrained or appropriate. Therefore, in the highly reliable real-time distributed processing system of the present invention, an execution operator control mechanism for controlling such correlation is provided.

실행연산기제어기구는, 각 태스크가 실행될 연산기를 판단하기 위하여, 각 태스크의 실행시간의 긴급성 및 중요성과, 태스크 상관관계인 신뢰도상의 배타성의 정도에 대해 데이터베이스내에 관리하고 있다.The execution operator control mechanism manages in the database about the urgency and importance of the execution time of each task, and the degree of reliability exclusivity related to the task correlation, in order to determine the operator to execute each task.

실행연산기제어기구는 데이터베이스내의 규정을 참조하여, 분산처리시스템의상황에 가장 적합한 태스크 배치를 판단할 수 있다.The execution operator control mechanism may refer to the regulations in the database to determine the task arrangement most suitable for the situation of the distributed processing system.

각 태스크의 실행시간의 긴급성과 중요성을 고려하여, CPU 사용효율을 최대로 하고, 가장 중요한 태스크에 우선순위를 부여하며, 태스크의 상관관계인 신뢰도상의 배타성의 정도를 손상시키지 않고도 실행대상 태스크를 선택하는 처리 및 그 관련된 태스크가 할당되는 연산기를 선택하는 처리를 실시할 수 있다.Considering the urgency and importance of each task's execution time, it maximizes CPU utilization, prioritizes the most important tasks, and selects tasks to run without compromising the degree of reliability exclusivity associated with the tasks. A process of selecting an operator to which the process and its related tasks are assigned can be performed.

또한, 상술한 분산처리시스템상에서 태스크 스케쥴링을 실행하면, 항상 계획적으로 높은 신뢰도를 실현할 수 있다. 연산기의 고장이나 보수시에도, CPU 사용효율과 신뢰도의 양립을 실현하는 기능 유지가 얻어진다.In addition, if task scheduling is executed on the above-mentioned distributed processing system, high reliability can always be realized intentionally. Even in the case of failure or maintenance of the calculator, function retention is achieved to realize both CPU usage efficiency and reliability.

또한, 본 발명은 보호릴레이 기능을 실현하는 복수의 태스크를, 네트워크에 의해 접속된 복수의 연산기로 처리하는 정보처리장치로서, 복수의 태스크 중에서 특정한 연산기에 의해 처리될 태스크의 조합을 저장하는 수단과, 상기 특정한 연산기에 의해 처리될 태스크의 조합 중 어느 하나를 선택하여, 상기 선택된 조합의 태스크를 상기 특정한 연산기로 수행하는 수단을 구비한다.In addition, the present invention is an information processing apparatus for processing a plurality of tasks for realizing a protection relay function with a plurality of calculators connected by a network, comprising: means for storing a combination of tasks to be processed by a specific calculator among a plurality of tasks; Means for selecting any one of the combinations of tasks to be processed by the particular calculator, and performing the selected combination of tasks with the particular calculator.

또한, 본 발명은 보호릴레이 기능을 실현하는 복수의 태스크를, 네트워크에 의해 접속된 복수의 연산기로 처리하는 정보처리장치로서, 복수의 태스크 중에서 특정한 연산기에 의해 처리되지 않는 태스크의 조합을 저장하는 수단과, 상기 특정한 연산기에 의해 처리되지 않는 태스크의 조합을 제외한 조합의 태스크를 상기 특정한 연산기로 실행하는 수단을 구비한다.In addition, the present invention is an information processing apparatus for processing a plurality of tasks for realizing a protection relay function with a plurality of calculators connected by a network, the means for storing a combination of tasks not processed by a specific calculator among the plurality of tasks. And means for executing a combination of tasks except for the combination of tasks not processed by the specific calculator with the specific calculator.

이하, 본 발명의 실시예를 첨부 도면을 참조하여 상세히 설명한다. 제1실시예는 도 1에 도시되어 있다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. The first embodiment is shown in FIG.

복수의 연산기, 이것의 예로는 3개의 연산기(102 내지 104)가 통신망(101)을 통해 네트워크에 접속된다. 여기서의 각 연산기는 디지털 연산을 실행하는 연산기이다. 하나의 연산기는 전원, CPU 및 메모리 등의 기본 구성을 독립적으로 구비하며, 타 연산기의 정지 또는 고장에 의하여 동작 성능에 영향을 받지 않는 장치이다. 또한, 각 연산기는 동일한 프로그램 실행 환경을 가지므로, 독립적인 프로그램 모듈이 전체 연산기에 의해 실행될 수 있다. 도면에서, 연산기(102 내지 104) 내부에 기재된 박스형 참조부호(105 내지 109)는 각 연산기 내부에서 실행될 프로그램 모듈을 추상적으로 나타낸다. 각각의 연산기는 복수의 독립적인 프로그램 모듈을 동시에 실행할 수 있다.A plurality of calculators, examples of which are three calculators 102 to 104 are connected to the network via the communication network 101. Each operator here is an operator that performs digital operation. One calculator has a basic configuration such as a power supply, a CPU, and a memory independently, and is a device that is not affected by operation performance by a stop or failure of another calculator. In addition, since each operator has the same program execution environment, independent program modules can be executed by the entire operator. In the figure, box-shaped references 105-109 described inside the calculators 102-104 represent abstractly program modules to be executed inside each calculator. Each operator can execute a plurality of independent program modules simultaneously.

상술된 복수의 연산기를 이용하여 복수의 태스크를 실행하는 것이 요구된다. 각각의 태스크에 대하여, 실행시간은 제한된다. 도 1에 도시된 예시에서는, 태스크 1 내지 태스크 5 의 5개의 태스크(105 내지 109) 전부를 실행하는 것이 요구된다.It is required to execute a plurality of tasks using the plurality of calculators described above. For each task, execution time is limited. In the example shown in FIG. 1, it is required to execute all five tasks 105 to 109 of tasks 1 to 5.

상술된 복수의 태스크에는 태스크간의 상관관계로서, 동일한 연산기에 의한 계산이 제한될 수 있거나 또는 적절하지 않을 수 있다. 예를 들면, 오동작을 방지하기 위하여 다중화된 태스크의 연산 결과의 AND를 계산하도록 하나의 기능이 갖춰지는 경우, 이들 태스크를 동일한 연산기로 계산하는 것은 신뢰성을 이유로 바람직하지 않다. 이하, 이것을 신뢰성에 있어서의 태스크간 제약 조건이라 한다.In the above-described plurality of tasks, the calculation by the same operator may be limited or not appropriate as the correlation between the tasks. For example, if one function is equipped to calculate the AND of the operation results of the multiplexed tasks in order to prevent malfunctions, it is not desirable to calculate these tasks with the same operator for reliability reasons. This is hereinafter referred to as intertask constraint in reliability.

하나 또는 복수의 처리장치에 설치된 실행연산기제어기구(110 내지 112)는 신뢰성에 있어서의 태스크간 제약 조건의 룰을 고려하여 태스크의 할당을 실시하는 처리를 행한다. 이를 위한 실현 수단으로는 몇가지 방법이 있다.Execution operator control mechanisms 110 to 112 provided in one or a plurality of processing apparatuses perform processing for assigning tasks in consideration of the rule of inter-task constraints in reliability. There are several ways to realize this.

우선, 도 1에 도시된 바와 같이, 실행연산기제어기구(110 내지 112)가 데이터베이스를 보유하는 구성으로 실현될 수 있다. 상기 실행연산기제어기구는 미리 각각의 태스크의 신뢰도상의 태스크간 제약조건을 획득하여 그것을 데이터베이스 내용(113)으로서 저장한다.First, as shown in Fig. 1, the execution operator control mechanisms 110 to 112 can be realized in a structure that holds a database. The execution operator control mechanism obtains in advance inter-task constraints on the reliability of each task and stores it as the database contents 113.

데이터베이스 내용은 각각의 태스크의 실행시간 제약 및 신뢰도상의 태스크간 제약조건을 기술한다. 도 1에서, 태스크 1에 관련되는 기술(114)은 실시간성을 결정하는 실행시간 제약에 관련되는 실행시간 평가지표(115) 및 태스크 1과 태스크 4와의 관계에 관련되는 실행연산기 평가지표(116)를 표현한다.The database contents describe the runtime constraints of each task and the inter-task constraints on reliability. In Fig. 1, the technique 114 associated with task 1 includes a runtime evaluation index 115 relating to runtime constraints for determining real time and an execution operator evaluation index 116 relating to a relationship between task 1 and task 4. Express

이것에 따르면, 태스크 1에서는 실행시간의 긴급성과 중요성이 실행시간 평가지표(115)에 의해 규정되고, 태스크 4로부터의 신뢰도상의 배타성의 정도(degree)가 실행연산기 평가지표(116)에 의해 규정된다. 동일한 방식으로, 다른 각각의 태스크 및 상호(mutual) 태스크가 기술된다. 즉, 프로세서는 데이터베이스 내용(113)으로부터 복수의 태스크로 구성된 처리 내용의 긴급도, 중요도, 신뢰도를 판단하는 정보를 획득하도록 구성된다.According to this, in task 1, the urgency and importance of the execution time are defined by the execution time evaluation index 115, and the degree of reliability exclusivity from task 4 is defined by the execution operator evaluation index 116. . In the same way, each of the other tasks and the mutual task is described. That is, the processor is configured to obtain information for determining the urgency, importance, and reliability of the processing contents composed of the plurality of tasks from the database contents 113.

실행연산기제어기구(110 내지 112)는 데이터베이스 내용(113)의 정보를 획득하고, 각각의 태스크를 실행하는 연산기를 판단한다. 각각의 태스크의 실행시간 제약을 고려하면, 실행연산기제어기구(110 내지 112)는 CPU의 사용효율을 최대로 하고, 가장 중요한 태스크에 우선순위를 주며, 신뢰도상의 태스크간 제어조건을 해치지 않으면서 실행될 태스크를 선택하는 처리(태스크 선택처리) 및 고려된 태스크가 할당될 연산기를 선택하는 처리(연산기 선택처리)를 행한다.Execution operator control mechanisms 110 to 112 obtain information of the database contents 113 and determine an operator that executes each task. Considering the execution time constraints of each task, the execution operator control mechanisms 110 to 112 maximize CPU utilization, give priority to the most important tasks, and execute without compromising control conditions between tasks in terms of reliability. Processing for selecting a task (task selection processing) and processing for selecting an operator to which the considered task is assigned (operator selection processing) are performed.

도 1에 도시된 예시에서는, 엄격한 신뢰도상의 태스크간 제약조건이 태스크 1과 태스크 4, 태스크 1과 태스크 2, 태스크 2와 태스크 3, 태스크 3과 태스크 5에 부과된다. 따라서, 태스크 설치패턴은 이들 조합들이 동일한 연산기에 설치되지 않도록 작성된다. 솔루션 하나는 도 1에 도시된 태스크 할당 패턴이다. 태스크 1과 태스크 3은 연산기 X에, 태스크 2와 태스크 4는 연산기 Y에, 태스크 5는 연산기 Z에 할당된다. 상술된 신뢰도상의 태스크간 제약조건은 모두 만족된다.In the example shown in FIG. 1, strict reliability inter-task constraints are imposed on task 1 and task 4, task 1 and task 2, task 2 and task 3, task 3 and task 5. Therefore, the task installation pattern is created so that these combinations are not installed in the same calculator. One solution is the task assignment pattern shown in FIG. Tasks 1 and 3 are assigned to operator X, tasks 2 and 4 are assigned to operator Y, and task 5 is assigned to operator Z. All of the above-described intertask tasks of reliability are satisfied.

다음, 실행연산기제어기구가 신뢰도상의 태스크간 제약조건의 룰을 고려하는 다른 수단을 설명한다. 실행연산기제어기구는 데이터베이스를 구비하지 않고도 상술한 효과를 얻을 수 있다.Next, another means by which the execution operator control mechanism considers the rule of inter-task constraint on reliability is described. The execution operator control mechanism can achieve the above-described effects without having a database.

도 2에 도시된 예시에서, 각 태스크는 상기 태스크에 대한 실행시간 평가지표 및 프로그램 모듈에서의 다른 태스크간의 상관관계 각각에 대한 실행연산기 평가지표를 가진다. 통신망(101)과 복수의 연산기(102 내지 104)는 도 1에 설명된 구성과 동일하다. 도 1에 도시된 실시예와의 차이점은 태스크(201 내지 205)들이 상술된 지표를 내장하고 있는 점이다. 도 2에 도시된 실행연산기제어기구(206 내지 208)는 태스크(201 내지 205)에 내장된 지표를 통신을 통해 획득하는 기구가 부가된다. 따라서, 실행연산기제어기구는 필요시에 태스크로부터 통신하여 송신된 지표를 참조함으로써, 상술된 태스크 선택처리 및 연산기 선택처리를 행할 수 있다.In the example shown in FIG. 2, each task has an execution operator evaluation index for each of the correlations between the execution time evaluation index for the task and other tasks in the program module. The communication network 101 and the plurality of calculators 102 to 104 are the same as those described in FIG. The difference from the embodiment shown in FIG. 1 is that tasks 201 to 205 incorporate the aforementioned indicators. Execution operator control mechanisms 206 to 208 shown in FIG. 2 are added with a mechanism for acquiring, via communication, an indicator embedded in tasks 201 to 205. Therefore, the execution operator control mechanism can perform the above-mentioned task selection process and operator selection process by referring to the indicators communicated from the task and transmitted when necessary.

실행연산기제어기구가 신뢰도상의 태스크간 제약조건의 룰을 고려하는 수단으로 다른 방법을 설명한다. 다른 태스크 모두에 대한 지표가 프로그램 모듈에 미리 내장되어 있지 않더라도 상술한 효과를 얻을 수 있다. 도 3에 도시된 예시에서는 각각의 태스크가 소정의 문법에 기초한 태스크명을 보유하는 방법이 도시되어 있다. 통신망(101)과 복수의 연산기(102 내지 104)는 도 1에 설명된 구성과 동일하다. 도 1에 도시된 실시예와의 차이점은 태스크(301 내지 305)가 사전설정된 태스크명을 가진다는 점이다. 도 3에 도시된 실행연산기제어기구(306 내지 308)는 태스크(301 내지 305)의 태스크명을 참조하여 실행연산기 평가지표를 계산한다. 이것을 행하기 위하여, 실행연산기제어기구(306 내지 308)는 소정의 문법 룰(309)을 보유한다. 문법(310 내지 312)은 2개의 태스크명 패턴의 관계로서 동일 연산기에 의한 배타제약조건을 기술한다.Another method is described as the means by which the execution operator control mechanism considers the rules of inter-task constraints on reliability. Even if the indicators for all other tasks are not pre-built in the program module, the above-described effects can be obtained. In the example shown in FIG. 3, a method is shown in which each task holds a task name based on a predetermined grammar. The communication network 101 and the plurality of calculators 102 to 104 are the same as those described in FIG. The difference from the embodiment shown in FIG. 1 is that tasks 301-305 have a preset task name. Execution operator control mechanisms 306 to 308 shown in Fig. 3 refer to the task names of tasks 301 to 305 to calculate execution operator evaluation indexes. To do this, the execution operator control mechanisms 306 to 308 hold predetermined grammar rules 309. The grammars 310 to 312 describe exclusive constraints by the same operator as a relationship between two task name patterns.

실행연산기제어기구(306 내지 308)는 프로그램 모듈의 설치 단계에서 태스크명을 인식한다. 실행연산기제어기구(306 내지 308)는 문법 룰(309)을 참조하여 상기 문법(310 내지 312)으로부터 태스크명이 매칭되는 문법을 추출함으로써, 신뢰도상의 태스크간 제약조건을 얻을 수 있다. 도 1 및 도 2에 도시된 실시예와 동일한 방식으로, 실행연산기제어기구(306 내지 308)는 태스크 선택처리 및 연산기 선택처리를 행할 수 있다.The execution operator control mechanisms 306 to 308 recognize the task name at the installation stage of the program module. The execution operator control mechanisms 306 to 308 extract the grammar matching the task name from the grammars 310 to 312 with reference to the grammar rules 309 to obtain the inter-task constraints on reliability. In the same manner as the embodiment shown in Figs. 1 and 2, the execution operator control mechanisms 306 to 308 can perform task selection processing and operator selection processing.

도 1 내지 도 3에 도시된 바와 같이, 실행연산기제어기구는 하나의 연산기에 의해 실행될 필요는 없다. OS의 기능으로서, 상기 기구는 전체 연산기에 설치될 수 있다. 마스터-슬레이브 구성이 사용될 수 있다. 더 나아가, 통신망(101) 대신에 외부 통신로를 통해 단속적으로 접속된 계산기, 예를 들면 원격제어콘솔에 설치될 수 있다.As shown in Figs. 1 to 3, the execution operator control mechanism does not need to be executed by one calculator. As a function of the OS, the mechanism can be installed in the entire calculator. Master-slave configurations can be used. Furthermore, it may be installed in a calculator, for example, a remote control console, which is intermittently connected through an external communication channel instead of the communication network 101.

상술된 실행연산기제어기구를 도입함으로써, 연산기의 구성 및 성능에 따라서 실시간성과 신뢰성의 제약조건의 양립이 실현될 수 있다.By introducing the above-described execution operator control mechanism, both of the constraints of real-time and reliability can be realized according to the configuration and performance of the calculator.

다음, 본 발명을 이용하여 고신뢰성을 유지하는 태스크의 활용기능을 실현하는 구성을 설명한다. 본 발명의 태스크 선택처리 및 연산기 선택처리의 기능에 부가하여, 태스크 재생 및 연산기 이동의 기능을 구비하는 분산처리시스템이 상정된다.Next, a configuration for realizing a function of utilizing a task maintaining high reliability using the present invention will be described. In addition to the functions of the task selection process and the operator selection process of the present invention, a distributed processing system having functions of task reproduction and operator movement is assumed.

상기 구성을 도 4를 참조하여 설명한다. 도 4에 도시된 예시에서는, 도 1에 도시된 예시를 기초로 하여, 연산기 X에 고장이 발생하는 경우를 가정한다. 연산기 X에서 고장이 발생한 것 이외에, 통신로(401), 복수의 연산기(402 내지 404), 태스크(405 내지 409) 및 실행연산기제어기구(410 내지 412)는 도 1에 도시된 것과 동일하다.The above configuration will be described with reference to FIG. In the example shown in FIG. 4, on the basis of the example shown in FIG. 1, it is assumed that a failure occurs in the calculator X. FIG. In addition to the failure in the calculator X, the communication paths 401, the plurality of calculators 402 to 404, the tasks 405 to 409, and the execution operator control mechanisms 410 to 412 are the same as those shown in FIG.

이 도면에 도시된 예시에서, 태스크 1 내지 태스크 5는 동일한 연산량을 필요로하는 태스크들이다. 그러나, 태스크의 긴급도 및 중요도에 있어서, 태스크 5는 최고 우선순위 상태에 있다고 가정한다. 또한, 연산기 Y 및 연산기 Z에서는 태스크 1 내지 태스크 5 가운데 4개만이 실행될 수 있다.In the example shown in this figure, tasks 1 to 5 are tasks requiring the same amount of computation. However, for the urgency and importance of the task, assume that task 5 is in the highest priority state. In addition, only four of the tasks 1 to 5 may be executed in the calculator Y and the calculator Z.

이러한 상태에서 연산기 X에 설치된 실행연산기제어기구(410) 또는 연산기 Y와 연산기 Z에 설치된 실행연산기제어기구(411, 412)의 정규 감시에 의하여 연산기 X의 고장이 검출되면, 실행연산기제어기구(411 내지 412)는 연산기 X의 고장에 대응하는 태스크 선택처리 및 연산기 선택처리를 재실행한다.In this state, if a failure of the operator X is detected by the regular monitoring of the execution operator control mechanism 410 installed in the operator X or the execution operator control mechanisms 411 and 412 provided in the operator Y and the operator Z, the execution operator control mechanism 411 412 to redo the task selection process and the operator selection process corresponding to the failure of the calculator X.

재실행 후의 분산처리시스템의 상태가 도 5에 도시되어 있다. 통신로(501)상에 고장 연산기(502) 및 정상 연산기(503, 504)가 접속된다. 태스크 선택처리 및연산기 선택처리는 실행연산기제어기구(505, 506)에 의해 수행된다. 3개의 태스크(507 내지 509)(태스크 2, 태스크 4, 태스크 5)의 할당은 고장발생 전으로부터 변화되지 않는다. 고장발생 전과의 차이점은 연산기(502)에 의해 계산된 태스크 1 대신에 태스크(510)가 연산기(504)에 새롭게 할당된다는 점이다.The state of the distributed processing system after reexecution is shown in FIG. The failure calculator 502 and the normal calculators 503 and 504 are connected to the communication path 501. The task selection processing and the operator selection processing are performed by the execution operator control mechanisms 505 and 506. The assignment of the three tasks 507 to 509 (task 2, task 4, task 5) does not change from before the failure occurs. The difference from before the failure is that task 510 is newly assigned to operator 504 instead of task 1 calculated by operator 502.

이러한 할당은 태스크 개별의 성질과 태스크의 상관관계의 성질의 양립을 실현하는 조합으로부터 유도된다. 태스크 선택처리는 전체 태스크의 중요도와 긴급도를 최대화하고, 연산기 선택처리는 동일한 연산기에 설치될 태스크의 조합의 신뢰도를 최대화한다. 도 5에 도시된 예시에서, 각 태스크의 연산량은 동일하므로 2개의 연산기에서는 4개의 태스크를 실행시키는 복수의 설치 패턴이 고려될 수 있다. 그러나, 설치 패턴중 도 1에 도시된 실행시간 평가 및 실행연산기 평가를 가장 만족하는 설치 패턴은,This assignment is derived from a combination that realizes both the nature of the task individual and the nature of the correlation of the task. The task selection process maximizes the importance and urgency of the entire task, and the operator selection process maximizes the reliability of the combination of tasks to be installed in the same calculator. In the example shown in FIG. 5, since the computation amounts of each task are the same, a plurality of installation patterns for executing four tasks in two calculators may be considered. However, among the installation patterns, the installation pattern that satisfies the execution time evaluation and the execution operator evaluation shown in FIG.

연산기 Y(태스크 2, 태스크 4), 연산기 Z(태스크 1, 태스크 5)라는 것을 유일하게 얻을 수 있다.The only ones obtained are operator Y (task 2, task 4) and operator Z (task 1, task 5).

실행연산기제어기구가 상기 태스크 선택 및 연산기 선택을 처리하는 경우에는 도 5에 도시된 바와 같이 고장 검출을 트리거로, 연산기(502)에 의해 계산된 태스크 1의 대체 태스크(510)를 연산기(504)에 자동으로 할당하는 기능이 실현될 수 있다.When the execution operator control mechanism processes the task selection and the operation selection, as shown in FIG. 5, the failure detection is triggered, and the replacement task 510 of task 1 calculated by the operation unit 502 is calculated by the operation unit 504. The function of automatically assigning to can be realized.

다음, 본 발명을 이용하여, 고신뢰도를 유지하는 태스크 스케쥴링을 실행하기 위한 기능을 실현하는 구성을 설명한다. 태스크 스케쥴링을 실행하는 실행연산기제어기구는, 앞서 설명된 기능에 부가하여, 현재 계산 단면으로부터 장래에 발생될 태스크의 유무를 파악한다. 실행연산기제어기구는 처리대상 태스크가 발생되는 시간단면마다 상술된 태스크 선택처리 및 연산기 선택처리를 행하고, 복수의 시간단면을 통해 최적해를 구하며, 태스크 스케쥴링을 실현한다.Next, using the present invention, a configuration for realizing a function for executing task scheduling maintaining high reliability will be described. The execution operator control mechanism that executes task scheduling, in addition to the function described above, grasps the presence or absence of a task to be generated in the future from the current calculation cross section. The execution operator control mechanism performs the above-described task selection processing and arithmetic selection processing for each time section in which the task to be processed is generated, obtains an optimal solution through a plurality of time sections, and realizes task scheduling.

본 실시예는 도 6 내지 도 10을 참조하여 설명한다. 도 6은 실행연산기제어기구에 의해 파악된 태스크의 발생의 스케쥴 및 이들 태스크를 연산기에 할당하는 태스크 스케쥴링의 결과를 개념적으로 도시한다. 도면에서, 횡축(601)은 태스크 1에 관련된 태스크의 발생과 그 처리를 표시하는 시간축을 나타낸다. 횡축(601) 하부의 화살표(602)는 태스크 1의 실행요구의 발생을 나타낸다. 횡축(601) 상부의 장방형(603)은 태스크 1의 실행을 나타낸다. 장방형(603) 내부의 연산기명은 실행을 담당하는 연산기를 나타낸다. 이 경우는 태스크 1 실행요구(602)가 연산기 X에 의해 실행(603)에 할당되는 것을 의미한다. 또한, 실행(603)시, 새로운 실행요구(604)에 대응하는 실행이 할당되는 경우, 장방향(605)과 같이 나타나는 것도 있다.This embodiment will be described with reference to FIGS. 6 to 10. Fig. 6 conceptually illustrates the schedule of occurrence of tasks identified by the execution operator control mechanism and the results of task scheduling assigning these tasks to a calculator. In the figure, the horizontal axis 601 represents a time axis indicating the occurrence of a task related to task 1 and its processing. An arrow 602 below the horizontal axis 601 indicates the occurrence of a request to execute task 1. The rectangle 603 above the horizontal axis 601 represents the execution of task 1. The operation name inside the rectangle 603 represents an operation responsible for execution. In this case, the task 1 execution request 602 is assigned to the execution 603 by the calculator X. In the execution 603, when an execution corresponding to the new execution request 604 is allocated, the operation may appear as the long direction 605. FIG.

최초 시간단면(606)에 있어서는, 앞서 설명된 실행연산기제어기구에 의한 태스크 할당에 의하여 상기 처리가 실현될 수 있다. 시간단면(604)에서 발생되는 태스크 요구는 제1실시예와 동일한 내용을 가진다. 즉, 도 1에 도시된 태스크 할당 구성이 사용된다. 즉, 도 6에 도시된 태스크 1 내지 태스크 5의 연산기의 할당은 도 1의 내용과 일치한다.In the first time section 606, the above processing can be realized by task assignment by the execution operator control mechanism described above. The task request generated in the time section 604 has the same contents as in the first embodiment. That is, the task assignment configuration shown in FIG. 1 is used. That is, the assignment of the calculators of the tasks 1 to 5 shown in FIG. 6 is consistent with the contents of FIG. 1.

제2시간단면(607)에서는 태스크 1 요구(604)가 새롭게 발생한다. 이러한 요구에 대응하여, 실행연산기제어기구에 의한 태스크 스케쥴링은, 도 7에 도시된 신뢰도상의 태스크간 제약조건을 유지하여, 제2시간단면에서의 태스크 할당을 새롭게 계획한다. 도 1에 도시된 태스크 할당 상태에 부가하여, 상기 태스크 1은 실행(605)과 같이 연산기 Z에 새롭게 할당된다. 그 결과는 도 8에 도시된 상태이다. 도 8에서, 연산기 Z(801)에는, 새롭게 할당된 태스크(802)(도면에서 두꺼운 선으로 나타낸 태스크)와 실행중인 태스크(803)간의 신뢰도상의 태스크간 제약조건은 존재하지 않는다. 전체로서, 도 7에 도시된 신뢰도상의 태스크간 제약조건이 만족된다.In the second time section 607, a new task 1 request is generated. In response to this request, task scheduling by the execution operator control mechanism maintains the reliability inter-task constraints shown in FIG. 7 to newly plan task assignment in the second time section. In addition to the task assignment state shown in FIG. 1, task 1 is newly assigned to operator Z, such as execution 605. The result is the state shown in FIG. In Fig. 8, in the operator Z 801, there is no inter-task constraint on the reliability between the newly assigned task 802 (the task shown by the thick line in the figure) and the task 803 being executed. In total, the inter-task constraints of reliability shown in FIG. 7 are satisfied.

제3시간단면(608)의 시점에서, 연산기 X에 의해 실행된 태스크 1 실행처리(603)와 연산기 Y에 의해 실행된 태스크 2 실행처리(603)가 종료되고, 역으로 태스크 5 실행요구(611)가 수신된다. 실행연산기제어기구에 의한 태스크 스케쥴링은 도 9에 도시된 태스크 할당을 실행한다. 연산기의 처리 성능의 관점으로부터, 태스크 5를 실행할 수 있는 연산기는 연산기 X(901) 또는 연산기 Y(902)이다. 그러나, 태스크 5가 연산기 X에 할당되는 경우, 실행중인 태스크(903)(태스크 3)를 고려하면, 신뢰도상의 태스크간 제약조건이 뒤따르지 않는다. 최고의 평가를 얻기 위한 할당 결과로서, 연산기 Y에 의한 신규 태스크(904)(태스크 5)의 실행이 선택된다. 그 이유는 실행중인 태스크(905)(태스크 4)와의 신뢰도상에 부과된 문제가 없기 때문이다.At the time point of the third time section 608, the task 1 execution process 603 executed by the calculator X and the task 2 execution process 603 executed by the calculator Y are ended, and conversely, the task 5 execution request 611 is performed. ) Is received. Task scheduling by the execution operator control mechanism executes the task assignment shown in FIG. From the viewpoint of the processing performance of the calculator, the calculator capable of executing task 5 is the operator X 901 or the operator Y 902. However, if task 5 is assigned to operator X, considering task 903 (task 3) being executed, the inter-task constraints in reliability are not followed. As an assignment result for obtaining the best evaluation, execution of the new task 904 (task 5) by the operator Y is selected. This is because there is no problem imposed on the reliability with the task 905 (task 4) being executed.

제4시간단면(609)의 시점에서, 연산기 Y에 의해 실행된 태스크 5 실행처리(612) 이외의 태스크의 실행처리는 모두 종료된다. 여기서, 태스크 1 내지 태스크 5의 실행요구(613)가 수신된다. 상술된 바와 동일한 처리에 의하여, 실행연산기제어기구에 의한 태스크 스케쥴링은 도 10에 도시된 태스크 할당을 실행한다. 연산기 Y(1001)에 의하여 실행중인 태스크(1002)(태스크 5) 이외에, 5개의 태스크(1003 내지 1007)가 새롭게 할당된다. 신뢰도상의 태스크간 제약조건에 있어 위반이 없다.At the time point of the fourth time section 609, all execution processing of tasks other than the task 5 execution processing 612 executed by the calculator Y ends. Here, the execution request 613 of task 1 to task 5 is received. By the same processing as described above, task scheduling by the execution operator control mechanism executes the task assignment shown in FIG. In addition to the task 1002 (task 5) being executed by the calculator Y 1001, five tasks 1003 to 1007 are newly allocated. There is no violation of the inter-task constraints on reliability.

상술한 바와 같이, 실행요구가 발생하는 각 시간단면에 있어서, 태스크 선택 및 연산기 선택이 현재 실행중인 태스크와 함께 처리될 때, 태스크 스케쥴링이 실현될 수 있다.As described above, in each time section in which an execution request occurs, task scheduling can be realized when the task selection and the operator selection are processed together with the currently executing task.

복수의 시간단면에서의 태스크의 할당에 의하여 태스크 스케쥴링을 행하는 방법에 있어서는, 최적화 수단의 설치방법의 차이에 따라 복수의 방법이 고려될 수 있다. 상술된 예시에서, 태스크 스케쥴링은 시간단면의 흐름을 따라 축차적으로 실행된다. 이것과 별개로, 전체 시간단면에서의 태스크 할당을 동시에 최적화하여 인접하는 시간단면들간의 태스크 할당 상태의 차이를 최소화하는 조합의 문제를 해결함으로써, 태스크 스케쥴링이 실행될 수 있다.In the method for performing task scheduling by assigning tasks in a plurality of time sections, a plurality of methods may be considered depending on the difference in the method of installing the optimization means. In the example described above, task scheduling is performed sequentially along the flow of the time section. Apart from this, task scheduling can be executed by optimizing the task assignment in the entire time section simultaneously to solve the combination problem of minimizing the difference in task assignment status between adjacent time sections.

이러한 태스크 스케쥴링 기능에 의하여, 분산처리시스템은 항상 계획적인 고신뢰도를 실현할 수 있다. 예를 들면, 실행연산기제어기구에 의해 파악된 태스크 이외의 신규 태스크의 시동요구가 시스템내에서 발생하거나, 신규 태스크의 시동명령을 외부적으로 받았을 때에도, 태스크 스케쥴링은 반영된 변경으로 재실행됨으로써, 변경 후의 고신뢰도가 유지될 수 있다. 또한, 연산기의 고장 및 유지보수에 있어서, 외부 연산기를 경유하여 연산기의 활용상태에 대한 명령을 받았을 때에도, 상기 명령 내용에 따라 연산기의 활용상태가 상정된 후, 태스크 스케쥴링이 재실행되고, 이에 따라 CPU의 사용효율과 신뢰도의 양립을 실현하는 기능이 유지될 수 있다.By this task scheduling function, the distributed processing system can always realize the planned high reliability. For example, even when a start request for a new task other than the task identified by the execution operator control mechanism occurs in the system or externally received a start command for a new task, task scheduling is re-executed with the reflected change, thereby performing High reliability can be maintained. In addition, in the failure and maintenance of the calculator, even when a command for the utilization state of the calculator is received via the external calculator, the task scheduling is re-executed after the utilization state of the calculator is assumed according to the instruction contents. The function of realizing both use efficiency and reliability can be maintained.

다음, 제2실시예로서, 본 발명이 적용되는 개발 툴이 도 11에 도시되어 있다.Next, as a second embodiment, a development tool to which the present invention is applied is shown in FIG.

개발대상 처리시스템은 도 1에 도시된 실시예와 동일하다. 제어에 사용되는 통신로(1101)를 통해, 복수의 연산기, 즉 본 예시에서는 3개의 연산기(1102 내지 1104)가 네트워크에 접속된다. 이들 연산기에서는 실행시간이 제약되는 복수의 태스크(1105 내지 1109)를 실행하는 것이 요구된다.The development target processing system is the same as the embodiment shown in FIG. Through a communication path 1101 used for control, a plurality of calculators, that is, three calculators 1102 to 1104 in this example, are connected to a network. These calculators are required to execute a plurality of tasks 1105 to 1109 whose execution time is limited.

이러한 처리시스템을 설계하기 위하여, 외부 개발용 연산기가 사용된다. 개발용 연산기(1111)는 제어에 사용되지 않는 외부 통신망(1110)을 통해 접속된다. 이러한 개발용 연산기를 사용함으로써, 상술된 태스크의 기본 설계 및 각종 설정값의 설정을 행한다.In order to design such a processing system, an external development calculator is used. The development calculator 1111 is connected via an external communication network 1110 which is not used for control. By using such a development calculator, the basic design of the above-described task and various setting values are set.

개발용 연산기(1111)는 도 1에 도시된 실시예에 설명된 것과 동일한 기능을 갖는 실행연산기제어기구(1112)를 구비한다. 따라서, 개발대상 처리시스템(1101 내지 1104)의 장치 구성을 지시함으로써, CPU 사용효율과 신뢰도의 양립을 실현하는 초기 태스크 할당이 실시될 수 있다.The development calculator 1111 has an execution operator control mechanism 1112 having the same function as described in the embodiment shown in FIG. Therefore, by instructing the device configuration of the development target processing systems 1101 to 1104, initial task assignment can be performed to realize both CPU usage efficiency and reliability.

이러한 개발 툴을 사용함으로써, 실행대상 태스크의 선택처리 및 상기 선택된 태스크를 계산하는 연산기의 선택처리를 실시하는 초기 설계가 수행될 수 있고, 고신뢰형 실시간 분산처리시스템이 설계될 수 있다. 또한, 외부 통신망을 통해 태스크가 부가, 삭제 또는 수정되고, 이에 따라 처리시스템을 구성하는 연산기에 실행연산기제어기구를 부가하지 않고도, 고신뢰형 실시간 분산처리시스템에 의해 유지되는 기능들 대부분을 실현할 수 있다.By using such a development tool, an initial design for performing the selection process of the task to be executed and the selection process of the calculator for calculating the selected task can be performed, and a highly reliable real time distributed processing system can be designed. In addition, tasks can be added, deleted, or modified through an external communication network, thereby realizing most of the functions maintained by the highly reliable real-time distributed processing system without adding an execution operator control mechanism to the computing operator constituting the processing system. .

제3실시예로서, 통신로를 감시하는 기능을 구비한 분산처리시스템을 본 발명을 활용하여 아래에 설명한다.As a third embodiment, a distributed processing system having a function of monitoring a communication path will be described below utilizing the present invention.

처리시스템을 구성하기 위하여, 복수의 연산기, 즉 본 예시에서는 3개의 연산기(1202 내지 1204)가 통신로(1201)를 통해 네트워크에 접속된다.In order to configure the processing system, a plurality of calculators, that is, three calculators 1202 to 1204 in this example, are connected to the network through the communication path 1201.

여기서는, 통신로를 검증하는 통신로 감시 태스크가 추가되어, 처리시스템이 신뢰도가 더욱 높게 만들어진다. 통신로 감시 방법으로서, 감시대상 통신로를 통해 통신을 하는 복수의 태스크는 한 세트로 형성되어, 상호 통신 내용의 유효성이 검증되고, 이에 따라 통신로의 정상성(normalcy)이 감시된다.Here, a channel monitoring task for verifying the communication path is added, making the processing system more reliable. As a communication channel monitoring method, a plurality of tasks communicating through a monitored communication channel are formed as a set, and the validity of the mutual communication contents is verified, thereby monitoring the normality of the communication path.

이 경우, 이들 감시 태스크의 할당 및 태스크 스케쥴링은 복잡한 문제를 일으킨다. 우선, 감시 기능을 실현하기 위해서는, 최저로 필요한 감시 태스크 뿐만 아니라, 실행되어야 할 감시 태스크도 가능한 한 많이 실행되는 것이 바람직하다. 그러나, 본래의 처리 목적인 태스크 실행이 방해되어서는 안된다. 두번째로, 세트를 구성하는 개별적인 태스크는 동일한 세트의 태스크와 상이한 연산기에 의해 실행되어야 한다. 복수의 제약을 갖는 이러한 감시 태스크의 할당 및 스케쥴링은 본 발명을 이용하여 실현될 수 있다.In this case, the assignment and task scheduling of these monitoring tasks presents a complex problem. First, in order to realize the monitoring function, it is preferable that not only the minimum required monitoring task but also the monitoring task to be executed are executed as much as possible. However, task execution, which is the original purpose of processing, should not be interrupted. Second, the individual tasks that make up the set must be executed by different operators than the tasks of the same set. Allocation and scheduling of such monitoring tasks with a plurality of constraints can be realized using the present invention.

도 1에 도시된 실시예에 설명된 예시와 동일한 방식으로, 처리시스템내의 복수의 연산기는 실행연산기제어기구(1205 내지 1207)를 구비한다. 이들 실행연산기제어기구는 실행대상 태스크의 의미를 데이터베이스 내용(1208)으로서 제어한다.데이터베이스 내용은 각 태스크의 실행시간 제약 및 신뢰도상의 태스크간 제약조건을 기술한다. 도 12에서, 태스크 1에 관련되는 기술(1209)은 실시간성을 결정하는 실행시간 제약에 관련되는 실행시간 평가지표(1210) 및 태스크 1과 태스크 4의 관계에 관련되는 실행연산기 평가지표(1211)를 표현한다.In the same manner as the example described in the embodiment shown in Fig. 1, the plurality of calculators in the processing system are provided with execution operator control mechanisms 1205-1207. These execution operator control mechanisms control the meaning of the task to be executed as the database contents 1208. The database contents describe constraints on execution time of each task and constraints between tasks on reliability. In FIG. 12, the technique 1209 related to task 1 includes execution time evaluation indicators 1210 related to execution constraints for determining real-time and execution operator evaluation indicators 1211 related to the relationship between task 1 and task 4. Express

이 예시에서는, 도 1에 도시된 실시예와 비교하여 2가지 차이점이 있다고 가정한다. 우선, 통신로 감시 태스크 A(1212)에 관련되는 실행시간 평가지표(1213), 통신로 감시 태스크 B(1214)에 관련되는 실행시간 평가지표(1215) 및 태스크간의 실행연산기 평가지표(1216)가 추가된다고 가정한다.In this example, it is assumed that there are two differences compared with the embodiment shown in FIG. First, the execution time evaluation index 1213 related to the channel monitoring task A 1212, the execution time evaluation index 1215 related to the channel monitoring task B 1214 and the execution operator evaluation index 1216 between tasks are provided. Suppose it is added.

두번째로, 태스크 5에 관련되는 실행시간 평가지표(1217)는 태스크 1 내지 태스크 4의 실행시간 평가지표 및 감시 태스크의 실행시간 평가지표보다 실행에 관련되는 우선순위가 낮게 설정된다. 즉, 태스크 5는 필요한 태스크가 아니라고 설정된다.Secondly, the execution time evaluation index 1217 related to task 5 is set to have a lower priority than the execution time evaluation indicators of the task 1 to task 4 and the execution time evaluation index of the monitoring task. In other words, task 5 is set to not be a required task.

여기서, 2개의 태스크는 한 세트로서 형성되어, 통신로를 감시하는 기능이 추가된다. 감시 기능은 최저로 필요하므로, 태스크 5보다 높은 실행 우선순위가 설정된다.Here, two tasks are formed as a set, and the function of monitoring a communication path is added. Since the watchdog function is required at the minimum, a higher execution priority than task 5 is set.

이러한 설정이 실행연산기제어기구(1205 내지 1207)에 주어지면, 3개의 연산기(1202 내지 1204)에 대해 태스크 할당(1220 내지 1225)이 실행된다. 태스크 5의 실행은 생략된다. 또한, 다른 6개의 태스크에 대하여, 각각의 태스크의 배치는 상호 배타관계를 만족하게 결정된다.Given this setting to the execution operator control mechanisms 1205 to 1207, task assignments 1220 to 1225 are executed for the three operators 1202 to 1204. Execution of task 5 is omitted. In addition, for the other six tasks, the arrangement of each task is determined to satisfy the mutually exclusive relationship.

통신로를 감시하는 태스크들이 실행연산기제어기구의 제어 대상의 일부로서설정되면, 통신로의 정상성을 파악하는 고신뢰형 실시간 분산처리시스템이 실현될 수 있다.When the tasks for monitoring the communication paths are set as part of the control object of the execution operator control mechanism, a highly reliable real time distributed processing system for grasping the normality of the communication paths can be realized.

더 나아가, 실행연산기제어기구를 사용하여 태스크 스케쥴링을 이용함으로써, 상기 통신로는 주기적으로 감시될 수 있다. 실행 우선순위가 더 낮은 감시 태스크의 세트의 처리를 주기적으로 요구함으로써, 처리시스템의 과도한 연산 능력 범위내에서, 가능한 한 높은 신뢰도가 실현될 수 있다.Furthermore, by utilizing task scheduling using an executable operator control mechanism, the communication path can be periodically monitored. By periodically requiring the processing of a set of monitoring tasks with a lower execution priority, as high a reliability as possible can be realized within the range of excessive computing power of the processing system.

상술한 실시예에 있어서, 통신로의 감시를 기술한다. 동일한 방법에 의하여, 연산기의 감시 기능이 설치될 수 있다. 우선, 연산기 감시 태스크로서, 소정의 연산식을 검산하는 시험이 실행되고, 네트워크에 의해 접속된 복수의 다른 연산기 및 통신을 통해 결과를 검증하는 복수의 태스크가 준비된다. 그 후, 실행연산기제어기구에 대하여, 각각의 연산기 감시 태스크가 상이한 연산기에 의해 실행되는 제약 또는 조건이 주어진다. 이렇게 함으로써, 연산기 감시 태스크는 자동적으로 적당한 태스크 할당 및 스케쥴링이 이루어지고, 이상(abnormal) 연산기의 특정 또는 네트워크의 고장의 검출이 실현될 수 있다.In the above-described embodiment, monitoring of the communication path is described. By the same method, the monitoring function of the calculator can be installed. First, as an operator monitoring task, a test for checking a predetermined expression is executed, and a plurality of tasks for verifying a result through communication with a plurality of other calculators connected by a network are prepared. Then, for the execution operator control mechanism, a constraint or condition is given that each operator monitoring task is executed by a different operator. By doing so, the operator monitoring task is automatically subjected to proper task assignment and scheduling, and detection of abnormality of the operator or failure of the network can be realized.

제4실시예로서, 본 발명이 적용되는 처리시스템을 이용하여, 하나 또는 복수의 전력기기를 보호하는 디지털보호릴레이장치가 실현되는 예시를 고려한다. 이것은 도 13에 도시되어 있다.As a fourth embodiment, consider an example in which a digital protection relay device for protecting one or a plurality of power devices is realized using a processing system to which the present invention is applied. This is shown in FIG.

우선, 입력대상 기기로서, 버스, 변압기 및 송전선 등의 보호 및 제어대상 전력기기(1301) 각각에 대하여, 장치 보호에 필요한 사고 검출 기능 및 각종 제어에 필요한 관측 기능에 사용되는 전압전류정보(1302)는 그것에 접속된입력장치(1303)로 전달된다. 동일한 방식으로, 출력대상 기기로서, 차단기 등의 제어대상 전력기기(1304)에 대하여, 차단 명령 등의 제어신호(1305)는 각각의 장치에 접속된 출력장치(1306)로 전송된다.First, as an input target device, voltage and current information 1302 used for an accident detection function required for device protection and an observation function required for various controls for each of the power target devices 1301 to be protected and controlled, such as a bus, a transformer, and a transmission line. Is transmitted to an input device 1303 connected thereto. In the same manner, for the control target power device 1304 such as a breaker as the output target device, a control signal 1305 such as a shutoff command is transmitted to the output device 1306 connected to each device.

이들 입력장치(1303) 및 출력장치(1306)는 통신로(1307)를 통해 복수의 연산기(1308 내지 1311)에 접속된다. 이 경우, 상기 연산기는 디지털 연산을 실행하는 계산기이다. 하나의 연산기는 전원, CPU 및 메모리 등의 기본 구성을 독립적으로 구비하여, 기타 연산기의 정지 또는 고장에 의해 연산 성능에 영향을 주지 않는 장치이다. 또한, 각 연산기는 동일한 프로그램 실행환경을 구비하므로, 독립적인 프로그램 모듈이 전체 연산기에 의하여 실행될 수 있다. 도면에서, 연산기(1308 내지 1310) 내부에 기재된 박스형 참조부호(1311)는 각 연산기 내부에서 실행될 프로그램 모듈을 추상적으로 나타낸다. 각각의 연산기는 하나 또는 복수의 독립적인 프로그램 모듈을 동시에 실행할 수 있다.These input devices 1303 and output devices 1306 are connected to the plurality of calculators 1308 to 1311 through a communication path 1307. In this case, the calculator is a calculator that performs digital calculation. One calculator is a device which is provided with basic components such as a power supply, a CPU, and a memory independently, and does not affect the computing performance by stopping or malfunctioning other calculators. In addition, since each calculator has the same program execution environment, independent program modules can be executed by the entire calculator. In the figure, box-shaped reference numerals 1311 described inside the calculators 1308 to 1310 abstractly represent a program module to be executed inside each calculator. Each operator can execute one or a plurality of independent program modules simultaneously.

각각의 프로그램 모듈의 실행을 상기 연산기에 할당하는 것은 실행연산기제어기구(1312)에 의해 제어된다. 이것은 상술한 도 1에 도시된 제1실시예의 실행연산기제어기구와 동일한 기능이다. 따라서, 실행연산기제어기구 내부의 데이터베이스에는 각 태스크의 실행시간 제약 및 신뢰도상의 태스크간 제약조건이 기술된다.The assignment of the execution of each program module to the operator is controlled by the execution operator control mechanism 1312. This is the same function as the execution operator control mechanism of the first embodiment shown in Fig. 1 described above. Therefore, the database inside the execution control device describes the execution time constraints of each task and the inter-task constraints on reliability.

도 13에서, 실행연산기제어기구는 도 14에 도시된 데이터베이스 내용을 제어한다. 각 태스크의 실행시간 제약 및 신뢰도상의 태스크간 제약조건이 기술된다. 도 14에 도시된 기술에 있어서, 각 태스크에 관련되는 기술은 실시간성을 결정하는 실행시간 제약에 관련되는 실행시간 평가지표(1402) 및 다른 태스크에 관련되는 실행연산기 평가지표(1403)를 포함한다.In FIG. 13, the execution operator control mechanism controls the database contents shown in FIG. Execution constraints on the execution time and reliability of each task are described. In the technique shown in Fig. 14, the technique associated with each task includes a runtime evaluation index 1402 relating to runtime constraints for determining real time and an execution operator evaluation index 1403 relating to other tasks. .

예를 들면, 기기 A를 보호하는 연산기 중에서, 메인보호연산을 항상 실행하는 프로그램 모듈 "기기 A, 메인, 상시계(normal system)" 및 프로그램 모듈이 실행불능될 때 즉시 전환되어 백업되도록 대기하는 "기기 A, 메인, 대기계(standby system)"는 상이한 연산기에 의해 실행되어야 한다. 따라서, 신뢰도상의 태스크간 제약은 태스크 "기기 A, 메인, 상시계" 및 태스크 "기기 A, 메인, 대기계"와의 관계에 부과된다.For example, among the calculators protecting the device A, the program modules "device A, the main system, the normal system" that always execute the main protection operation, and the "waiting to be immediately switched and backed up when the program module becomes inoperable" Device A, Main, Standby System "must be implemented by different operators. Therefore, the inter-task constraint on reliability is imposed on the relationship between the task "device A, main, clock" and the task "device A, main, atmospheric system".

동일한 방식으로, 오동작을 방지하기 위하여, "기기 A, 메인, 상시계" 및 "기기 A, 2중 안전(fail safe), 상시계"는 상이한 연산기에 의해 실행되어야 한다. 따라서, 신뢰도상의 태스크간 제약은 2개의 태스크의 관계에 부과된다. 이러한 연산기 제약이 부과되는 경우, 상기 2개의 태스크를 의미하는 프로그램 모듈이 실행되는 2개의 연산기가 동시간대에 연산불능상태에 빠지지 아니하면, 기기 A에 대한 보호기능의 오동작의 가능성이 발생되지 않는다.In the same way, in order to prevent malfunctions, "Device A, Main, Clock" and "Device A, fail safe, Clock" must be executed by different calculators. Therefore, the constraint between tasks on reliability is imposed on the relationship of two tasks. When such an operator constraint is imposed, the possibility of malfunction of the protection function for the device A does not occur if two calculators on which the program modules representing the two tasks are executed are not inoperable at the same time.

또한, 장치의 단일 고장이 발생되더라도, 고신뢰성을 유지하는 태스크 할당이 더 부과될 수 있다. 예를 들면, 상시계의 임의의 태스크가 장치고장으로 인하여 대기계로 전환되는 상황에서도, 메인 태스크 및 2중 안전 태스크가 상이한 연산기에 의해 실행되도록 설계된다면, "기기 A, 메인, 상시계" 및 "기기 A, 2중 안전, 대기계"의 태스크 관계에서, 신뢰도상의 태스크간 조건으로서, 태스크 실행연산기 평가지표가 설정될 수 있다. 이 경우, 배타조건(1404)은 신뢰도상의 태스크간 제약(1403)보다 낮은 우선순위로 설정될 수 있다.In addition, even if a single failure of the device occurs, task assignments that maintain high reliability may be further imposed. For example, even when a task of the clock is switched to the standby system due to a device failure, if the main task and the double safety task are designed to be executed by different calculators, the "device A, main, clock" and In the task relationship of " device A, dual safety, standby system ", a task execution operator evaluation index can be set as an inter-task condition on reliability. In this case, the exclusive condition 1404 may be set to a priority lower than the inter-task constraint 1403 on reliability.

상술한 바와 같이, 도 14에 도시된 설계는 기기 A에 관련되는 태스크 모두에 대해 실행된다. 또한, 동일한 개념에 따르면, 기기 B에 관련되는 태스크가 설계된다. 이러한 데이터베이스를 구비한 실행연산기제어기구에 의하여, 각 프로그램 모듈을 실행하는 연산기가 적절하게 결정된다. 그 결과, 도 13에 도시된 태스크 할당이 얻어진다. 전체 신뢰도상의 태스크간 제약 및 부과되는 조건을 연산기의 개수로 만족시킬 수 없다. 우선순위가 높은 제약(1403)을 만족시키는 동시에 배타조건(1404)을 가능한 한 만족시키는 배치가 설정된다. 임의의 시점에서 시스템 전체의 처리능력을 활용하여, 신뢰도가 높은 시스템을 실현할 수 있다.As described above, the design shown in FIG. 14 is executed for all tasks related to the device A. FIG. In addition, according to the same concept, a task related to the device B is designed. By the execution operator control mechanism provided with such a database, an operator for executing each program module is appropriately determined. As a result, the task assignment shown in Fig. 13 is obtained. The number of operators cannot satisfy the constraints and imposed conditions between tasks on overall reliability. An arrangement is set which satisfies the high priority constraint 1403 and at the same time satisfies the exclusive condition 1404 as much as possible. At any point in time, a system with high reliability can be realized by utilizing the processing power of the entire system.

더 나아가, 상술한 실시예에 있어서, 제어기구는 또한 상술된 입출력관계를 제어하도록 설치된다. 도 13에 도시된 바와 같이, 입출력장치(J 내지 M)는 기기 A 내지 기기 D에 고정적으로 접속된다. 상기 제어기구는 멀티-드롭(multi-drop) 통신망을 통해 기기의 입출력정보를 송수신하도록 구성된다. 입출력관계제어기구(1313)는 연산기내의 태스크가 임의의 입력장치의 V, I 정보를 사용하여 임의의 출력장치로 제어신호를 전송하는 상황을 데이터베이스로 관리한다.Furthermore, in the above embodiment, the control mechanism is also provided to control the above-described input / output relationship. As shown in Fig. 13, the input / output devices J to M are fixedly connected to the devices A to D. The control mechanism is configured to transmit and receive input and output information of the device via a multi-drop communication network. The input / output relation control mechanism 1313 manages a situation in which a task in the calculator transmits a control signal to an arbitrary output device using the V and I information of the arbitrary input device.

예로서, 입력장치 J(1314) 및 입력장치 J'(1315)가 기기 A에 접속된 입력장치로서 준비되는 도 13에 도시된 시스템상의 동작을 고려한다. 입출력관계제어기구는 입력장치 J(1501) 및 입력장치 J'(1502)가 도 15에 개략적으로 도시된 데이터베이스 내용에 의해 상호 대체가능한 관계에 있는 지정(1503)을 수신한다. 따라서, 입력장치 J의 고장을 검출하면, 상기 입출력관계제어기구는 각각의 연산기에 입력장치 J에 의해 전송될 입력데이터를 입력장치 J'에 의해 전송될 입력데이터로 대체하도록 지시한다. 이렇게 함으로써, 입력장치 J의 고장의 영향을 피할 수 있다.As an example, consider the operation on the system shown in FIG. 13 in which the input device J 1314 and the input device J '1315 are prepared as input devices connected to the device A. As shown in FIG. The input / output relation control mechanism receives a designation 1503 in which the input device J 1501 and the input device J '1502 are in mutually interchangeable relationship by the database contents schematically shown in FIG. Therefore, upon detecting a failure of the input device J, the input / output relation control mechanism instructs each calculator to replace the input data to be transmitted by the input device J with the input data to be transmitted by the input device J '. By doing so, the influence of the failure of the input device J can be avoided.

상술한 설명에 있어서, 도 14 및 도 15에 도시된 데이터베이스의 내용은 처리시스템의 설계단계에서 또는 그것의 유지보수시에 룰 베이스(rule base)상에 지정하여 설치된다. 이 방법을 예시를 참조하여 설명한다.In the above description, the contents of the database shown in Figs. 14 and 15 are specified and installed on a rule base at the design stage of the processing system or during its maintenance. This method is described with reference to the examples.

도 16은 실행연산기제어기구에 주어질 데이터 형식을 나타낸다. 도 14에 개략적으로 표현된 내용은 소정의 문법에 따라 텍스트데이터로 주어질 수 있다.16 shows the data format to be given to the execution operator control mechanism. The contents schematically represented in FIG. 14 may be given as text data according to a predetermined grammar.

도 16에서, 1행(1601)은 코멘트문을 가리킨다. 2행(1602) 이하에는 기기 A 및 기기 B에 관련되는 보호 기능들이 설정된다.In Fig. 16, one line 1601 indicates a comment sentence. Below 2 rows 1602, protection functions associated with device A and device B are set.

우선, 기기 A의 보호에 관련되는 태스크가 선언된다. 3행(1603)의 기술에 의하여, 기기 A, 메인, 상시계의 기능을 보호하는 프로그램 모듈은 상시처리를 수행하는 태스크로서 "module_A1"의 명칭으로 선언된다. 마크 # 이하의 "기기 A, 메인, 상시계" 문자열은 코멘트문이다. 나아가, 4행(1604)의 기술에 의하여, 기기 A, 메인, 대기계의 기능을 처리하는 프로그램 모듈은 대기처리를 수행하는 태스크로서 "module_A2"의 명칭으로 선언된다. 동일한 방식으로, 기기 A에 대하여, 합계 4개의 태스크가 선언된다. 각 태스크의 실시간성에 관련되는 기술, 예를 들면 태스크 처리 개시시간, 종료시간 및 우선순위는 별도로 설정된다.First, a task related to protection of the device A is declared. By the description in the third row 1603, a program module that protects the functions of the device A, the main, and the clock is declared under the name of "module_A1" as a task that always performs processing. The string "Device A, Main, Clock" below the mark # is a comment. Further, by the description in the fourth row 1604, a program module for processing the functions of the device A, the main, and the standby system is declared under the name of "module_A2" as a task for performing the standby processing. In the same way, for device A, a total of four tasks are declared. Techniques related to the real time of each task, for example, task processing start time, end time and priority, are set separately.

다음, 기기 A의 보호에 관련되는 상시계와 대기계간의 관계가 선언된다. 7행(1605)에는 module_A1이 module_A2에 의해 백업되는 것이 정의된다. 이하, 동일한 방식으로, 2중 안전 기능의 백업을 기술한다.Next, the relationship between the clock and the atmospheric system related to the protection of the device A is declared. In line 7605, it is defined that module_A1 is backed up by module_A2. Hereinafter, a backup of the double safety function is described in the same manner.

기기 A의 정의 데이터의 최후에는 태스크간 배타관계가 선언된다. 9행(1606)에는 "기기 A, 메인, 상시계" 기능 및 "기기 A, 2중 안전, 상시계" 기능이 상이한 연산기에 할당되는 제약이 최고 우선순위로 정의된다. 11행(1607)에는, "기기 A, 메인, 상시계" 기능 및 "기기 A, 2중 안전, 상시계" 기능을 상이한 연산기로 할당하는 것이 바람직한 것을 우선순위가 더 낮은 조건으로서 정의한다. 이하, 동일한 방식으로, 4개의 태스크간에 존재하는 5개의 관계들이 정의된다.At the end of the definition data of the device A, an exclusive relationship between tasks is declared. In line 9606, the constraint that the "Device A, Main, Clock" function and the "Device A, Dual Safety, Clock" function are assigned to different calculators is defined as the highest priority. In 11 lines 1607, it is defined as a lower priority condition that it is preferable to assign the "device A, main, clock" function and the "device A, dual safety, clock" function to different calculators. In the same way, five relationships existing between four tasks are defined below.

도 16에 도시된 실행연산기제어기구에 주어진 텍스트데이터에는, 상기 기기 A에 관련되는 보호와 동일한 방식으로, 상기 기기 B에 관련되는 설정도 기술된다. 이러한 방식으로, 도 14에 개략적으로 도시된 신뢰도상의 태스크간 제약조건의 룰을 얻을 수 있다.In the text data given to the execution operator control mechanism shown in Fig. 16, the setting relating to the device B is also described in the same manner as the protection relating to the device A. In this way, a rule of reliability inter-task constraints schematically shown in FIG. 14 can be obtained.

다음, 입출력관계제어기구에 주어질 데이터 형식을 설명한다. 도 15에 개략적으로 표현되는 내용은 소정의 문법에 따라 도 17에 도시된 텍스트데이터로 주어질 수 있다.Next, the data format to be given to the input / output relation control mechanism will be described. Contents schematically represented in FIG. 15 may be given as text data shown in FIG. 17 according to a predetermined grammar.

도 17에서, 1행(1701)은 코멘트문을 가리킨다. 2행(1702) 이하에는 입력장치에 관련되는 설정, 출력장치에 관련되는 설정 및 입출력에 관련되는 설정이 실행된다.In Fig. 17, one line 1701 indicates a comment sentence. Below two lines 1702, settings relating to an input device, settings relating to an output device, and settings relating to input and output are executed.

우선, 입력장치 J에 의해 전송될 입력량이 선언된다. 3행(1703)의 기술에 의하여, "a_bus_v1"의 명칭은 입력장치 J의 첫번째 입력량으로 설정된다. 이하, 입력장치 J에 의해 송신되는 전체 입력량이 선언되고 그 명칭들이 설정된다.First, the input amount to be transmitted by the input device J is declared. By the description in the third row 1703, the name of "a_bus_v1" is set as the first input amount of the input device J. Hereinafter, the total amount of input transmitted by the input device J is declared and its names are set.

동일한 방식으로, 출력장치에 의해 수신되는 출력량도 선언된다. 17행(1704) 이하에는 출력장치 L이 정의된다. 입력량에 관련되는 기술과 동일한 방식으로, 18행(1705)에는 출력량이 선언되고 그 명칭이 설정된다.In the same way, the amount of output received by the output device is also declared. The output device L is defined below the 17th line 1704. In the same manner as the description relating to the input quantity, an output quantity is declared and the name is set in 18 lines 1705.

최종적으로, 각 태스크마다, 태스크에 의해 사용되는 입출력량이 설정된다. 22행(1706) 이하에는, 태스크 module_A1의 입출력량이 설정된다. 전술한 태스크를 실현하는 프로그램 모듈에 의해 보유되는 인수들은 순차적으로 설정된다. 23행(1707)에는, 첫번째 인수로서 입력 a_bus_v1을 사용하는 것이 정의된다. 동일한 방식으로, 전술한 프로그램 모듈에 의하여 필요한 입출력량이 모두 정의된다. 그 후, 상기 태스크에 의해 사용되는 입출력량에 대해 대체될 수 있는 것이 설정된다. 28행(1708)에는, 첫번째 인수로서 사용된 입력 a_bus_v1에 에러가 발생할 때, a2_bus_v1을 대신 사용하는 것이 정의된다.Finally, for each task, the input / output amount used by the task is set. Below 22 lines 1706, the input / output amount of the task module_A1 is set. Arguments held by the program module for realizing the above-described task are set sequentially. In line 23 1707, it is defined to use the input a_bus_v1 as the first argument. In the same manner, all the necessary inputs and outputs are defined by the above-described program module. Then, it is set that can be substituted for the input / output amount used by the task. In line 1708, when an error occurs in the input a_bus_v1 used as the first argument, it is defined to use a2_bus_v1 instead.

도 17에 도시된 입출력관계제어기구에 주어진 텍스트데이터에 의하여, 도 15에 개략적으로 도시된 입출력량의 관계와 그것의 대체에 관련되는 룰이 주어질 수 있다.By the text data given to the input / output relationship control mechanism shown in Fig. 17, a rule relating to the relationship between the input / output amount schematically shown in Fig. 15 and its replacement can be given.

도 16 및 도 17에 도시된 문법에 기초한 표현방법을 도입하면, 설계자와 운용자는 직접 룰을 텍스트에 쓸 수 있다. 또한, GUI를 구비한 설계 및 운용 툴로부터 상기 표현의 텍스트 파일을 출력하는 기구에 의하여, 설계자 및 운용자는 더 용이한 설계 및 운용의 환경을 얻는다.By introducing the expression method based on the grammar shown in Figs. 16 and 17, designers and operators can write rules directly in the text. In addition, by a mechanism for outputting the text file of the representation from a design and operation tool with a GUI, designers and operators obtain an easier environment for design and operation.

상술한 바와 같이, 실시예 1에 도시된 실행연산기제어기구를 구비한 고신뢰형 실시간 분산처리시스템이 전력기기의 디지털보호릴레이를 실현하는 태스크를 제어하면, 고신뢰형 보호릴레이시스템이 실현될 수 있다.As described above, if the highly reliable real time distributed processing system having the execution operator control mechanism shown in Embodiment 1 controls the task of realizing the digital protection relay of the power equipment, the highly reliable protection relay system can be realized.

제어대상 태스크의 상관관계는 여러 가지가 있다. 예를 들면, 상술한 실시예3에 설명된 바와 같이, 첫번째 연산 목적의 상시계 태스크와 대기계 태스크의 상관관계로서, 상이한 연산기에 의한 실행의 제약 또는 조건이 인용될 수 있다. 이것에 따르면, 연산기 고장시의 보호릴레이 기능 정지를 방지하는 디지털보호릴레이가 실현된다.There are several correlations between the tasks to be controlled. For example, as described in the above-described Embodiment 3, as a correlation between the upper clock task for the first calculation purpose and the waiting system task, the constraints or conditions of execution by different calculators can be cited. According to this, a digital protection relay is realized which prevents the protection relay function from being stopped in the event of a calculator failure.

또한, 보호릴레이의 메인 검출 기능을 실현하는 메인 검출 태스크 및 2중 안전 요소로서 사고 검출 기능을 실현하는 사고 검출 태스크를 구비하는 보호릴레이에는, 동일한 보호릴레이의 메인 검출 태스크와 사고 검출 태스크간의 상관관계로서, 상이한 연산기에 의한 실행의 제약 또는 조건이 인용될 수 있다. 이것에 따르면, 오동작을 방지하는 디지털보호릴레이가 실현된다.In addition, a protection relay including a main detection task for realizing the main detection function of the protection relay and an accident detection task for realizing the accident detection function as a double safety element has a correlation between the main detection task and the accident detection task of the same protection relay. As constraints or conditions of execution by different operators may be cited. According to this, a digital protection relay for preventing malfunction is realized.

이에 부가하여, 버스보호릴레이의 패키지 버스 보호 기능을 실현하는 패키지 버스 보호 태스크 및 분할 버스 보호 기능을 실현하는 분할 버스 보호 태스크를 구비하는 보호릴레이에는, 동일한 버스에 대한 패키지 버스 보호 태스크 및 분할 버스 보호 태스크간의 상관관계로서, 상이한 연산기에 의하여 실행의 제약 또는 조건이 인용될 수 있다. 이것에 따르면, 버스보호릴레이 오동작을 방지하는 디지털보호릴레이가 실현된다.In addition, a protection bus including a package bus protection task for realizing a package bus protection function of a bus protection relay and a split bus protection task for realizing a split bus protection function includes a package bus protection task and a split bus protection for the same bus. As a correlation between tasks, constraints or conditions of execution may be cited by different operators. According to this, a digital protection relay for preventing a bus protection relay malfunction is realized.

더 나아가, 병렬회선으로 구성된 송전선의 각각에 대하여, 송전선보호릴레이 기능을 실현하는 송전선 태스크를 구비한 보호릴레이에는, 동일한 병렬회선에 속하는 송전선 보호에 대한 복수의 송전선 태스크의 상이한 연산기에 의하여 실행의 제약 또는 조건이 인용될 수 있다. 이것에 따르면, 병렬 송전선의 보호에 대한 연산기 고장의 영향을 최소화하는 디지털보호릴레이가 실현된다.Furthermore, for each of the transmission lines composed of parallel lines, a protection relay having a transmission line task for realizing the transmission line protection relay function is restricted in execution by different calculators of a plurality of transmission line tasks for transmission line protection belonging to the same parallel line. Or conditions may be cited. According to this, a digital protection relay is realized which minimizes the effect of a calculator failure on the protection of parallel transmission lines.

상술한 바와 같이, 고신뢰형 실시간 분산처리시스템에 의해 제어되는 고신뢰형 보호릴레이시스템을 도면을 참조하여 제5실시예로서 설명한다.As described above, a highly reliable protection relay system controlled by a highly reliable real time distributed processing system will be described as a fifth embodiment with reference to the drawings.

우선, 전체 시스템 이미지가 도 18에 도시되어 있다. 광매체의 통신을 실현하는 광통신로(1801)를 통하여, 복수의 연산기, 예를 들어 본 예시에서는 3개의 연산기(1802 내지 1804)가 네트워크에 접속된다. 여기서 나타낸 각 연산기는 디지털 연산을 실행하는 계산기이다. 하나의 연산기는 전원, CPU 및 메모리 등의 기본 구성을 독립적으로 구비하며, 타 연산기의 정지 또는 고장에 의하여 동작 성능에 영향을 받지 않는 장치이다. 또한, 각 연산기는 동일한 프로그램 실행 환경을 가지므로, 독립적인 프로그램 모듈이 전체 연산기에 의해 실행될 수 있다. 또한, 각 연산기는 광통신망(1801)을 통해 상용 주파수에 동기된 신호를 획득한다. 따라서, 상용 주파수의 전기각과 동기된 보호릴레이연산이 수행될 수 있다.First, the entire system image is shown in FIG. A plurality of calculators, for example, three calculators 1802 to 1804 are connected to a network through an optical communication path 1801 for realizing communication of an optical medium. Each calculator shown here is a calculator that performs digital calculations. One calculator has a basic configuration such as a power supply, a CPU, and a memory independently, and is a device that is not affected by operation performance by a stop or failure of another calculator. In addition, since each operator has the same program execution environment, independent program modules can be executed by the entire operator. In addition, each operator obtains a signal synchronized with a commercial frequency through the optical communication network 1801. Therefore, the protection relay operation synchronized with the electric angle of the commercial frequency can be performed.

광통신망(1801)에는 연산기 뿐만 아니라, 입출력 장치가 접속된다. 이러한 형태는 전력선의 하나의 상(phase)을 고려하여 도면에 도시되어 있다. 상용 전력을 공급하는 전력선(1805)에는 차단기(1806) 및 변압기(1807)가 설치되고, 상기 각각의 장치는 입출력 장치(1808 내지 1811)을 구비한다. 상기 시스템은 이들 입출력 장치가 광통신망(1801)에 접속되는 형태를 가진다.The optical communication network 1801 is connected to an input / output device as well as a calculator. This form is shown in the figure taking into account one phase of the power line. A breaker 1806 and a transformer 1807 are installed in the power line 1805 for supplying commercial power, and each of the devices includes input and output devices 1808 to 1811. The system has a form in which these input / output devices are connected to the optical communication network 1801.

상기 입출력 장치(1808 내지 1811)는 아날로그-디지털 변환 기능, 통신 기능 및 전기-광 변환 기능을 구비하고, 상기 차단기(1806)와 변압기(1807)에 장착된다. 상기 입출력 장치(1808, 1809)는 차단기(1806)의 2중통신단으로서 차단기로부터 연산기로의 전압-전류 정보 및 연산기로부터 차단기로의 차단제어 정보를 위한 통신기능을 실현한다. 동일한 방식으로, 입출력 장치(1810, 1811)는 변압기(1807)의 2중통신단으로서 통신 기능을 실현한다. 각각의 입출력 장치 및 연산기는 전원의 관점에서 뿐만 아니라 절연의 관점에서도 서로 독립적이다.The input / output devices 1808 to 1811 have an analog-to-digital conversion function, a communication function, and an electro-optical conversion function, and are mounted to the breaker 1806 and the transformer 1807. The input / output devices 1808 and 1809 are dual communication terminals of the breaker 1806 and realize communication functions for voltage-current information from the breaker to the calculator and cutoff control information from the calculator to the breaker. In the same manner, the input / output devices 1810 and 1811 realize a communication function as a dual communication end of the transformer 1807. Each input and output device and operator are independent of each other in terms of isolation as well as in terms of power supply.

앞서 설명한 실시예와 동일한 방식으로, 이러한 시스템에서는 실행연산기제어기구(1812) 및 입출력관계제어기구(1813)가 하나 또는 복수의 임의의 연산기에 설치된다.In the same manner as the embodiment described above, in such a system, an execution operator control mechanism 1812 and an input / output relation control mechanism 1813 are installed in one or a plurality of arbitrary calculators.

전술한 구성을 구비한 고신뢰형 실시간 분산처리시스템에 의하여 제어되는 고신뢰형 보호릴레이시스템에 있어서는, 실시간성을 구비한 복수의 태스크의 처리가 요구된다. 그러한 태스크들은 도 19에 추상적으로 표현된다. 도 19에 도시된 박스형 참조부호(1901 내지 1906)는 연산기(1802 내지 1804)에 의해 처리되는 태스크를 가리킨다.In a highly reliable protection relay system controlled by a highly reliable real time distributed processing system having the above-described configuration, processing of a plurality of tasks with real time is required. Such tasks are represented abstractly in FIG. 19. Boxed reference numerals 1901 to 1906 shown in FIG. 19 indicate tasks processed by the calculators 1802 to 1804.

참조부호(1901)로 나타낸 태스크는 이하 "Task1" 또는 "TrPrMN"이라 칭한다. Task1은 메인 변압기 차동 릴레이 요소 87T 연산 및 상기 요소의 발화조건을 규정하는 시퀀스 연산을 실현하기 위한 태스크이다.The task indicated by reference numeral 1901 is hereinafter referred to as "Task1" or "TrPrMN". Task1 is a task for realizing the main transformer differential relay element 87T operation and the sequence operation that defines the firing condition of the element.

참조부호(1902)로 나타낸 태스크는 이하 "Task2" 또는 "TrPrFD"라 칭한다. Task2는 상술한 Task1의 2중 안전 기능을 수행하는 상이한 알고리즘 사고 검출 기능 및 상기 요소의 발화조건을 규정하는 시퀀스 연산을 실현하기 위한 태스크이다.The task indicated by reference numeral 1902 is hereinafter referred to as "Task2" or "TrPrFD". Task2 is a task for realizing a different algorithm accident detection function that performs the double safety function of Task1 described above and a sequence operation that defines the firing condition of the element.

참조부호(1903)로 나타낸 태스크는 이하 "Task3" 또는 "TrPrMN-FT"라 칭한다. Task3은 상술한 Task1의 내고장성 기능을 수행하는 대기 기능을 실현하기 위한 태스크이다. Task1이 실행불능이면, 즉시 그 기능을 백업하기 위하여, Task3은Task1과 동일한 알고리즘의 최소부분의 연산을 수행하여 계속해서 대기한다. Task3은 입력량의 리딩 또는 디지털 필터링 처리 등의 앞선 값(preceding value)을 유지하는데 필요한 처리를 계속하는 연산을 실시한다.The task indicated by reference numeral 1903 is hereinafter referred to as "Task3" or "TrPrMN-FT". Task3 is a task for realizing the standby function which performs the fault tolerance function of Task1 mentioned above. If Task1 is inoperative, in order to immediately back up its functionality, Task3 performs the least amount of operations of the same algorithm as Task1 and continues to wait. Task3 performs an operation that continues processing required to maintain a prioring value such as reading of an input amount or digital filtering.

참조부호(1904)로 나타낸 태스크는 이하 "Task4" 또는 "TrPrFD-FT"라 칭한다. Task4는, Task3과 동일한 방식으로, 상술한 Task2의 내고장성 기능을 수행하는 대기 기능을 실현하기 위한 태스크이다.The task indicated by reference numeral 1904 is hereinafter referred to as "Task4" or "TrPrFD-FT". Task4 is a task for realizing the standby function of performing the above fault tolerance function of Task2 in the same manner as Task3.

참조부호(1905)로 나타낸 태스크는 이하 "Task5" 또는 "SS-P/P'"라 칭한다. Task5는 도 18에 설명된 입출력 장치 P(도 18에 도시된 1808) 및 입출력 장치 P'(도 18에 도시된 1809)의 정상성을 감시하는 기능을 수행한다. 예를 들면, 입출력 장치에는, 전력선으로부터 입력되는 전기량(아날로그값)에 상용 주파수에 대한 제12차 고조파 성분을 검사용 신호로서 중첩하는 하드웨어 기능이 추가된다. 이렇게 함으로써, 임의의 연산기가 입출력 장치로부터 송신 또는 수신된 정보에 포함된 검사용 고조파 성분을 감시하는 경우, 입력신호의 정상성이 감시될 수 있다.The task indicated by reference numeral 1905 is hereinafter referred to as "Task5" or "SS-P / P '". Task5 performs the function of monitoring the normality of the input / output device P (1808 shown in FIG. 18) and the input / output device P '(1809 shown in FIG. 18) described in FIG. For example, a hardware function is added to the input / output device that superimposes the twelfth harmonic component with respect to the commercial frequency as an inspection signal on the amount of electricity (analog value) input from the power line. By doing so, when an arbitrary operator monitors the test harmonic component included in the information transmitted or received from the input / output device, the normality of the input signal can be monitored.

참조부호(1906)로 나타낸 태스크는 이하 "Task6" 또는 "SS-Q/Q'"라 칭한다. Task6은, Task5와 동일한 방식으로, 도 18에 설명된 입출력 장치 Q(도 18에 도시된 1810) 및 입출력 장치 Q'(도 18에 도시된 1811)의 정상성을 감시하는 기능을 수행한다.The task indicated by reference numeral 1906 is hereinafter referred to as "Task6" or "SS-Q / Q '". Task6 performs the function of monitoring the normality of the input / output device Q (1810 shown in FIG. 18) and the input / output device Q '(1811 shown in FIG. 18) described in FIG. 18 in the same manner as Task5.

이들 복수의 태스크에 대해서는 실시간성이 요구된다. 도 19에 도시된 예시에 있어서는, 도 18에 도시된 3개의 연산기(1802 내지 1804)를 이용하여 Task1 내지 Task6의 6개의 태스크를 소정의 실행시간 이내에 실시하는 것이 요구된다.Real time is required for these multiple tasks. In the example shown in FIG. 19, it is required to perform six tasks of Task1 to Task6 within a predetermined execution time using the three calculators 1802 to 1804 shown in FIG.

도 19에 있어서, Task1 내지 Task6의 6개의 태스크 각각에 대하여 사전에 결정된 실행시간 제약은 1907 내지 1912로 도시되어 있다. 상술한 실시예와 동일한 방식으로, 이들 실행시간 제약에 관련되는 데이터는 실행연산기제어기구에 의해 제어되는 데이터베이스에 사전에 주어진다. 이하, 각각의 실행시간 제약의 내용을 설명한다.In FIG. 19, the predetermined runtime constraints for each of the six tasks of Tasks 1-6 are shown 1907-1912. In the same manner as the above-described embodiment, the data relating to these runtime constraints is given in advance to a database controlled by the execution operator control mechanism. The contents of each runtime constraint will be described below.

실행시간 제약(1907)에 도시된 내용은, Task1은 Level 1의 실행 우선순위를 가지고, 상기 태스크에 대한 요구는 30 deg의 시간빈도로 발생하며, 발생으로부터 처리까지의 기한이 30 deg라는 것이다. Level 1에 대해서는, 더 작은 값이 더 높은 우선순위를 가리키므로, Level 1은 최고 우선순위 태스크를 의미한다. 처리기한단위 deg는 상용 주파수의 1 사이클에 대한 전기각의 단위로 표현되고, 도 18에 설명된 바와 같이, 상용 주파수의 전기각과 동기인 보호릴레이연산을 수행할 때의 시각을 지정한다.Shown in the runtime constraint 1907 is that Task1 has an execution priority of Level 1, the request for the task occurs at a time frequency of 30 deg, and the deadline from generation to processing is 30 deg. For Level 1, Level 1 means the highest priority task, because smaller values indicate higher priority. The processing time period deg is expressed in units of an electric angle for one cycle of a commercial frequency, and designates a time when performing a protective relay operation synchronous with the electric angle of a commercial frequency as described in FIG. 18.

동일한 방식으로, 실행시간 제약(1908)은, Task2가 Level 1의 실행 우선순위를 가지고, 발생빈도는 30 deg이며, 처리기한은 30 deg라는 것을 가리킨다. 즉, 메인 보호 기능을 실현하는 Task1 및 Task2는 최고 우선순위 태스크라는 것이 규정된다.In the same way, the runtime constraint 1908 indicates that Task2 has an execution priority of Level 1, the frequency of occurrence is 30 deg, and the processing time is 30 deg. In other words, it is defined that Task1 and Task2 which implement the main protection function are the highest priority tasks.

또한, 실행시간 제약(1909, 1910)은, 보호 기능의 내고장성을 실현하는 Task3 및 Task4가 최우선에 버금가는 우선순위 태스크이고, 동일한 방식으로, 발생빈도는 30 deg이며, 처리기한은 30 deg라는 것을 규정한다.In addition, the execution time constraints 1909 and 1910 are priority tasks in which Task 3 and Task 4, which realize fault tolerance of protection functions, are the highest priority, and in the same manner, the frequency of occurrence is 30 deg and the processing time is 30 deg. To stipulate.

한편, 실행시간 제약(1911, 1912)은 설계상 최저 실행 우선순위를 가진다.발생빈도는 10 sec이고, 처리는 2 sec의 기한내에 완료될 수 있다. 또한, Task6에 대해서는, 시스템 시동 후 1 분 동안 상기 태스크가 발생되지 않도록 비주기적인 태스크 발생 룰도 기재된다.On the other hand, the execution time constraints 1911 and 1912 have the lowest execution priority by design. The frequency of occurrence is 10 sec, and the processing can be completed within the time limit of 2 sec. In addition, for Task6, a non-periodic task generation rule is also described so that the task does not occur for one minute after system startup.

본 실시예에 있어서, 상술한 각각의 태스크에 대해 규정되는 실행시간 제약에 부가하여, 고신뢰형 실시간 분산처리시스템의 앞선 실시예와 동일한 방식으로, 태스크의 상관관계를 규정하는 신뢰도상의 태스크간 제약조건이 고신뢰도 보호릴레이시스템으로서 필요하다.In this embodiment, in addition to the execution time constraints defined for each of the above-described tasks, the reliability inter-task constraints that define the correlation of the tasks in the same manner as in the previous embodiment of the highly reliable real-time distributed processing system. This high reliability protection relay system is required.

배타제약(1913 내지 1916)은 Task1 내지 Task4의 관계에 의존하는 신뢰도상의 태스크간 제약조건을 나타낸다. 상술한 실시예와 동일한 방식으로, 이들 신뢰도상의 태스크간 제약조건에 관련되는 데이터는 실행연산기제어기구에 의해 제어되는 데이터베이스에 사전에 주어진다. 이하, 신뢰도상의 각각의 태스크간 제약의 내용을 설명한다.Exclusion constraints 1913 to 1916 represent inter-task constraints in reliability that depend on the relationship of Task 1 to Task 4. In the same manner as the above-described embodiment, the data relating to these inter-task constraints on reliability are given in advance to a database controlled by the execution operator control mechanism. The contents of the constraints between the tasks in the reliability will be described below.

배타제약(1913)에 도시된 내용은 Task1과 Task3이 Level 1의 배타 우선순위를 가진다는 것을 나타낸다. Level 1에 대해서는, 더 작은 값이 더 높은 우선순위를 나타내므로, Level 1은 연산기의 배타적인 배치가 최우선으로 고려된다는 것을 의미한다. 그 이유는 Task1의 내고장성 기능을 실현하는 Task3이 상이한 연산기에 의해 처리되지 않는다면, 전적으로 무의미하기 때문이다.Exemplary content shown in exclusive constraints 1913 indicates that Task1 and Task3 have an exclusive priority of Level 1. For Level 1, since smaller values represent higher priorities, Level 1 means that the exclusive placement of the operator is considered top priority. The reason is that Task3, which realizes the fault tolerance function of Task1, is completely meaningless unless it is handled by different operators.

동일한 방식으로, 배타제약(1914)은, Task2와 Task4에 대해서, 연산기의 배타적인 배치가 최우선으로 고려된다는 것을 규정한다.In the same way, the exclusion constraint 1914 specifies that, for Task2 and Task4, the exclusive placement of the calculator is considered first.

한편, 배타제약(1915)은 Task1 및 Task2가 배타우선순위 Level 2에 있는 것을 나타낸다. Task1의 2중 안전 기능을 실현하는 태스크는 원칙적으로 상이한 연산기에 의해 처리되어야 한다. 그러나, Task2는 사고 검출 시스템으로서 상이한 알고리즘으로 구성되어 있으므로, 메인 검출 Task1과 동일한 연산기에 의해 처리되더라도 무의미하지는 않다. 따라서, 가능한 한 연산기의 배타적인 배치를 고려하도록 신뢰도상의 태스크간 제약이 규정된다.Exclusive constraints 1915 indicate that Task1 and Task2 are in exclusive priority Level 2. Tasks that realize the double safety feature of Task1 should, in principle, be handled by different operators. However, since Task2 is composed of different algorithms as the accident detection system, even if it is processed by the same calculator as the main detection Task1, it is not meaningless. Thus, inter-task constraints on reliability are defined to take into account the exclusive placement of the operator as much as possible.

동일한 방식으로, 배타제약(1916)은 Task3과 Task4에 대하여 가능한 한 연산기의 배타적인 배치를 고려하도록 신뢰도상의 태스크간 제약을 규정한다.In the same way, exclusive constraints 1916 define inter-task constraints on reliability to take into account the exclusive placement of the calculator as much as possible for Task3 and Task4.

상술한 실행시간 제약 및 신뢰도상의 태스크간 제약의 규정된 내용에 기초하여, 실행연산기제어기구는 태스크의 배치를 결정하고 실행 명령을 제어한다. 그 처리단계를 순차적으로 설명한다. 우선, 시스템 시동시의 동작, 즉 본 실시예의 초기 동작을 구체적으로 설명한다.Based on the above-mentioned contents of the execution time constraint and the inter-task constraint on reliability, the execution operator control mechanism determines the placement of the task and controls the execution instruction. The processing steps will be described sequentially. First, the operation at system startup, that is, the initial operation of the present embodiment will be described in detail.

도 20은 시스템 시동시 실행연산기제어기구의 동작을 도시한 흐름도이다. 우선, 처리(2001)에서, 실행연산기제어기구는 전체 연산기를 초기화한다. 그런 다음, 각 연산기의 처리능력 상태를 파악하고, 각 연산기의 연산능력을 파악하는 처리(2002)를 실시한다. 다음, 처리(2003)에서, 실행연산기제어기구는 데이터베이스로부터 전체 태스크와 관련되는 특정된 내용을 호출한다. 구체적으로는, 상술된 실행시간 제약 및 신뢰도상의 태스크간 제약들이다. 이 중에서, 시스템 시동의 개시부터 시동요구를 갖는 태스크를 선택하는 처리(2004)를 실시한다. 도 19에 도시된 예시에서, Task1 내지 Task5는 초기 시동요구 태스크이지만 Task6은 아니다.20 is a flowchart showing the operation of the execution operator control mechanism at system startup. First, in process 2001, the execution operator control mechanism initializes all the operators. Then, a process 2002 is performed to grasp the state of the processing capability of each computing unit and to grasp the computing capability of each computing unit. Next, in process 2003, the execution operator control mechanism calls the specified contents relating to the entire task from the database. Specifically, the above-described runtime constraints and inter-task constraints on reliability. Among these, a process 2004 for selecting a task having a start request from the start of system startup is performed. In the example shown in FIG. 19, Task 1 to Task 5 are initial start request tasks but not Task 6.

처리(2004)에 의하여, 초기 시동요구 태스크에 관련되는 실행시간 제약 및신뢰도상의 태스크간 제약의 파악이 완료된다. 제약조건에 관련되는 데이터에 기초하여, 처리(2005)에서, 실행연산기제어기구는 위반량을 최소화하고, 즉 각 태스크의 실행시간 제약을 따르고, CPU 사용효율을 최대화하며, 중요한 태스크에 우선순위를 주고, 신뢰도상의 태스크간 제약조건이 훼손되는 것을 방지함으로써, 실시될 태스크 및 상기 태스크가 할당되는 연산기를 선택한다. 그것을 위하여, 조합 최적화 문제를 해결하는 연산처리를 수행하고, 이 결과로부터 태스크 배치를 결정한다. 각 태스크의 배치위치가 결정되면, 실행연산기제어기구는 상기 태스크의 프로그램 모듈(이하, 태스크 모듈이라 함)을 실행형식으로 할당하는 처리(2006) 및 상기 할당된 태스크 모듈을 실행하는 명령을 출력하는 처리(2007)를 행한다.By the process 2004, grasp of the execution time constraints related to the initial start request task and the constraints between the tasks on the reliability is completed. Based on the data relating to the constraints, in process 2005, the execution control mechanism can minimize the amount of violations, that is, follow the runtime constraints of each task, maximize CPU utilization, and prioritize important tasks. And preventing the inter-task constraints on reliability from being broken, thereby selecting a task to be implemented and an operator to which the task is assigned. For that purpose, arithmetic processing to solve the combinatorial optimization problem is performed, and task assignment is determined from these results. When the arrangement position of each task is determined, the execution operator control mechanism outputs a process of allocating a program module (hereinafter, referred to as a task module) of the task in an execution form (2006) and an instruction to execute the assigned task module. Process 2007 is performed.

나아가, 실행연산기제어기구는 초기 태스크의 시동 뿐만 아니라 차기시간단면에서의 태스크 배치를 사전에 연산하여 태스크 모듈을 할당한다. 차기시간단면은 태스크 발생 요구가 다음에 존재하는 시간단면이다. 본 실시예의 차기시간단면은, 도 19에 도시된 바와 같이, 최소 태스크 발생빈도가 30 deg이므로, 시동시로부터 전기각에 동기하여 30 deg 후의 것이다.Further, the execution operator control mechanism allocates the task module by precomputing not only the start of the initial task but also the task arrangement in the next time section. The next time section is the time section in which the task occurrence request is next. As shown in Fig. 19, the next time cross section of the present embodiment has a minimum task frequency of 30 deg, so that it is 30 deg later in synchronization with the electric angle from the start time.

처리(2008)에서, 실행연산기제어기구는 차기시간단면에서의 태스크 요구를 앞서 설명된 실행시간 제약에 규정된 태스크의 실시간성으로부터 파악하여, 전술한 바와 동일한 방식으로 차기 태스크 배치 최적화 처리(2009)를 행한다. 할당된 초기 태스크 모듈의 배치와 지금 결정된 차기 태스크 모듈의 배치를 비교하여, 필요에 따라 차기 태스크 모듈을 목적 연산기에 할당하는 처리(2010)를 행한다. 이렇게 함으로써, 차기시간단면에는 외부 요인으로 인하여 발생되는 태스크가 없고, 태스크요구가 예정대로 발생되면, 상기 태스크는 최적의 배치에서 실행될 수 있다.In the process 2008, the execution operator control mechanism grasps the task request in the next time section from the real time of the task defined in the execution time constraint described above, and the next task batch optimization process 2009 in the same manner as described above. Is done. The arrangement of the assigned initial task module is compared with the arrangement of the next task module which is now determined, and a process 2010 is performed to assign the next task module to the destination calculator as necessary. In this way, there is no task generated due to external factors in the next time section, and if the task request is generated as scheduled, the task can be executed in an optimal arrangement.

도 21은 상술한 실행연산기제어기구의 시동시 동작에 의해 할당된 초기 태스크 배치의 상태를 나타낸다. 연산기 X(도면에서 2101)에는 Task1(도면에서 2102)과 Task5(도면에서 2103)가 배치되고, 연산기 Y(도면에서 2104)에는 Task2(도면에서 2105)과 Task3(도면에서 2106)이 배치되며, 연산기 Z(도면에서 2107)에는 Task4(도면에서 2108)가 배치된다. 이러한 배치에 있어서, 도 19의 1913 내지 1916으로 도시된 신뢰도상의 태스크간 제약(여기서는 2개의 태스크의 배타제약)은 모두 만족된다. 현단계에서 요구된 전체 태스크의 처리가 실행되어, 전체 시스템은 건전한 상황에 있다. 예를 들면, 시간이 경과하여 Task6 요구가 발생되더라도, 실행연산기제어기구는 Task5의 배치부분에 자동적으로 Task6을 할당하고, 종료후 Task5로 그것을 복귀시키는 처리를 계획할 수 있으므로, 전체 시스템의 건전한 상태가 유지될 수 있게 한다.Fig. 21 shows the state of the initial task arrangement allocated by the startup operation of the above-described execution operator control mechanism. Task1 (2102 in the drawing) and Task5 (2103 in the drawing) are arranged in the calculator X (2101 in the drawing), Task2 (2105 in the drawing) and Task3 (2106 in the drawing) are arranged in the calculator Y (2104 in the drawing), Task 4 (2108 in the drawing) is arranged on the calculator Z (2107 in the drawing). In this arrangement, all of the inter-task constraints (here, exclusive constraints of two tasks) on reliability, shown at 1913-1916 in FIG. 19, are satisfied. The processing of the entire task required at this stage is executed, and the whole system is in a healthy situation. For example, even if a Task6 request occurs over time, the executor operator can automatically assign Task6 to the batch portion of Task5, and plan the process of returning it to Task5 after completion, thus keeping the whole system healthy. To be maintained.

시스템 전체로서 상기 계획 이외의 상황이 발생되면, 예를 들어 임의의 연산기가 사용불능이 되면, 실행연산기제어기구는 태스크의 재할당을 실시하여야 한다. 그 처리 흐름은 도 22에 도시되어 있다.If a situation other than the above plan occurs as a whole of the system, for example, if any computing device becomes unavailable, the execution operator control mechanism should reassign the task. The processing flow is shown in FIG.

우선, 실행연산기제어기구는, 실행연산기제어기구 자신의 전회(前回) 시동으로부터 상정된 시간(본 실시예에서는 30 deg)이 경과하면, 상기 처리를 시작한다. 그것은 전기각에 동기된 신호를 인터럽션 트리거로 설정하는 처리(2201)에 의해 설치된다.First, the execution operator control mechanism starts the above process when the estimated time (30 deg in this embodiment) elapses from the last start of the execution operator control mechanism itself. It is provided by the process 2201 for setting the signal synchronized with the electric angle as an interruption trigger.

실행연산기제어기구는, 시동후 우선, 연산능력 테이블, 즉 연산기의 상태가각종 감시 결과를 수집함으로써 변화되는지의 여부를 판단하는 처리(2202)를 실시한다. 장치 이상이 발견되면, 내고장성 기능을 수행하는 처리를 시작한다. 이것을 후술한다. 이하, 장치 이상이 없을 때의 처리를 설명한다.After the start-up, the execution operator control mechanism first performs processing 2202 to determine whether or not the arithmetic capability table, that is, the state of the arithmetic operator is changed by collecting various monitoring results. If a device abnormality is found, the process of performing the fault tolerance function is started. This will be described later. Hereinafter, the process when there is no apparatus abnormality is demonstrated.

우선, 처리(2203)에서, 실행연산기제어기구는 현시점 태스크 요구를 읽는다. 본 시스템의 임의의 태스크는, 자신의 동작의 결과로서 또 다른 태스크를 시동하는 것이 필요할 때, 실행연산기제어기구에 태스크 요구를 제시하여야 한다. 예를 들어, Task1의 메인 검출 태스크는 이상 입력량을 내보내는 기능을 구비하고, 그 때에 정밀한 이상 감시를 행하는 요구를 제시하도록 하는 구성이다. 즉, Task1은 이상 입출력의 검출의 조건하에서 실행연산기제어기구에 Task6 요구를 발신한다. 이러한 요구는 처리(2203)에 의해 읽힌다.First, in process 2203, the execution operator control mechanism reads the current task request. Any task of this system must present a task request to the execution operator control mechanism when it is necessary to start another task as a result of its operation. For example, the main detection task of Task1 has a function of outputting an abnormal input amount, and is configured to present a request for precise abnormality monitoring at that time. That is, Task1 sends a Task6 request to the execution operator control mechanism under the condition of detecting abnormal input / output. This request is read by process 2203.

이러한 현시점 태스크 요구와 실행연산기제어기구의 전회 실행에서의 차기단면의 예정된 태스크간의 차이가 있는지의 여부는 예정외 태스크 요구의 존재의 판정처리(2204)에 의해 판단되어 상기 처리가 분기된다.Whether there is a difference between the present task request and the scheduled task of the next section in the previous execution of the execution operator control mechanism is judged by the determination process 2204 of the existence of the unscheduled task request, and the process branches.

예정외 태스크가 없으면, 이 시간단면에서 실행하는 태스크 모듈은 실행연산기제어기구의 전회 실행에 미리 할당된다. 따라서, 현시점 태스크 실행 명령은 처리(2205)에 의해 즉시 송신된다.If there are no unscheduled tasks, the task module executing in this time step is previously assigned to the previous execution of the execution operator control mechanism. Thus, the current task execution command is immediately sent by the process 2205.

예정외 태스크가 있으면, 처리(2206)에서는 실행가능한 태스크, 즉 연산기에 할당된 태스크군의 태스크 모듈의 배치를 재최적화한다. 예정외 태스크의 실행시간 제약이 높은 우선순위라면, 실행연산기제어기구는 태스크들을 재배치할 수 있다. 그것들이 실제로 재배치되는지의 여부는 다른 할당된 태스크와의 신뢰도상의 태스크간 제약에 의존한다.If there is an unscheduled task, the process 2206 reoptimizes the placement of the executable task, that is, the task module of the task group assigned to the calculator. If the execution time constraint of an unscheduled task is a high priority, the execution operator control mechanism may relocate the tasks. Whether they are actually relocated depends on constraints between tasks in terms of reliability with other assigned tasks.

어느 한 경우에, 실행연산기제어기구는 실행가능한 태스크내에서 최적의 배치를 자동적으로 선택한다. 그 후, 처리(2207)에서는 상술한 실행가능한 태스크내에서 최적의 배치 태스크로 실행 명령을 송신한다. 태스크 모듈 할당에 비해 시간 허용(time allowance)이 있으면, 처리(2208)에서는 보충 태스크로서 일부의 태스크를 할당하고, 처리(2209)에서는 상기 보충 태스크에 즉시 실행 명령을 송신한다.In either case, the executive operator control mechanism automatically selects the optimal placement within the executable task. Processing 2207 then sends an execution command to the optimal batch task within the executable task described above. If there is a time allowance compared to the task module assignment, the process 2208 allocates some tasks as supplementary tasks, and the process 2209 sends an immediate execution command to the supplementary tasks.

예정외 태스크가 있거나 또는 예정외 태스크가 없더라도, 처리(2210 내지 2212)는 차기시간단면에서의 태스크 요구에 대한 배치 최적화 처리를 수행하고, 필요에 따라 차기 태스크 모듈을 목적 연산기에 할당하는 처리를 실시한다. 이 공정은 도 20에 설명된 2008 내지 2010과 완전히 동일하다.Even if there is an unscheduled task or no unscheduled task, the processes 2210 to 2212 perform batch optimization processing for the task request in the next time section, and perform the process of assigning the next task module to the destination calculator as necessary. do. This process is exactly the same as in 2008-2010 described in FIG.

다음, 장치 이상이 판정처리(2202)에 의해 인식되어, 내고장성 기능이 수행되는 경우를 설명한다.Next, the case where the device abnormality is recognized by the determination process 2202 and the fault tolerance function is performed will be described.

우선, 처리(2213)에서는 이상이 발생하는 장치내에서 실행된 태스크에 대하여 내고장성 기능을 수행하는 대기계 태스크(이하, 내고장성 태스크라 함)의 존재를 검색한다. 도 19에 도시된 예시에서, [Task1] TrPrMN에 대해서는, [Task3] TrPrMN-FT가 내고장성 태스크라는 것이 규정된다. 상술한 바와 같이, 이상 발생시 장치에서 실행중인 태스크에 대한 내고장성 태스크는 데이터베이스로부터 검색된다.First, the process 2213 searches for the existence of a waiting system task (hereinafter referred to as a fault tolerance task) that performs a fault tolerance function on a task executed in the apparatus in which an abnormality occurs. In the example shown in FIG. 19, for [Task1] TrPrMN, it is specified that the [Task3] TrPrMN-FT is a fault tolerant task. As described above, the fault-tolerant task for the task running in the apparatus in case of an abnormality is retrieved from the database.

이 경우, 내고장성 태스크가 존재하면, 이에 대응하는 태스크를 대기 처리 모드로부터 메인 처리 모드로 즉시 전환하는 것이 필요하다. 이것은 처리(2213) 및처리(2214)에 의하여 검색된 내고장성 태스크로 주종모드전환명령을 송신하여 실현된다. 상기 주종모드를 전환함으로써, 상기 기능이 즉시 유지된다.In this case, if a fault tolerance task exists, it is necessary to immediately switch the corresponding task from the standby processing mode to the main processing mode. This is realized by sending a master / slave mode switch command to the fault-tolerant task retrieved by the processes 2213 and 2214. By switching the master / slave mode, the function is immediately maintained.

주종모드의 전환 후, 상기 태스크는 재배치된다. 이 개념은 기본적으로 이미 설명된 예정외 태스크의 발생에 대한 처리와 동일하다. 이미 배치된 태스크 모듈의 조합에서, 상기 기구는 최적의 실행 모듈을 선택한다. 그러나, 연산기 이상이 이미 발생되었으면, 우선, 처리(2215)에서는 연산능력 테이블을 재작성하여, 실행연산기제어기구에 의해 파악된 연산기의 상태를 갱신한다. 그런 다음, 앞서 설명된 처리(2206 내지 2209)에서는 현 상황에서 실행가능한 최적의 태스크를 선택하고, 그것에 실행 명령을 송신한다. 또한, 차기시간단면에서의 태스크 배치 최적화도 앞서 설명된 처리(2210 내지 2212)에 의해 실시된다.After switching the master / slave mode, the task is relocated. This concept is basically the same as the handling for the occurrence of an out-of-date task already described. In a combination of already deployed task modules, the instrument selects an optimal execution module. However, if an arithmetic abnormality has already occurred, first, in process 2215, the arithmetic capability table is re-created to update the state of the arithmetic operator grasped by the execution operator control mechanism. Then, the processes 2206 to 2209 described above select the optimal task executable in the current situation, and send an execution command to it. Further, task placement optimization in the next time section is also performed by the processes 2210 to 2212 described above.

상술한 도 22의 처리 흐름도에 따르면, 연산기 이상이 발생되면, 내고장성 기능이 즉시 수행된 후, 차기시간단면, 즉 30 deg의 스텝 후에는 최적의 태스크 배치가 자율적으로 얻어지고, 실행이 계속된다.According to the above-described process flow chart of FIG. 22, when an arithmetic abnormality occurs, the fault tolerance function is immediately performed, and after the next time section, that is, after 30 deg steps, an optimal task arrangement is autonomously obtained and execution continues. .

이하, 도 21에 도시된 태스크 배치의 예시를 이용하여, 연산기 이상 발생시의 동작을 도 23을 참조하여 설명한다. 태스크 규정 내용(실행시간 제약 및 신뢰도상의 태스크간 제약)은 도 19에 도시된 것과 동일하고, 태스크 배치가 도 21에 도시된 것과 동일한 시간단면에서 연산기 이상이 발생하는 경우를 고려한다.Hereinafter, the operation | movement at the time of an operator abnormality occurrence is demonstrated using the example of the task arrangement | movement shown in FIG. 21 with reference to FIG. The task specification contents (time constraints and inter-task constraints on reliability) are the same as those shown in FIG. 19, and consider a case where an operator abnormality occurs in the same time section as the task arrangement is shown in FIG.

도 23에서, 연산기(2301 내지 2303)는 도 21에 도시된 연산기(2101, 2104, 2107)과 동일하고, 태스크 배치도 같다. 연산기(2301)가 사용불능이 되면, [Task1] TrPrMN(도면에서 2304로 도시됨) 및 [Task5] 입출력 P/P' 감시(도면에서 2305로 도시됨)가 실행불능이 된다. 이 때의 실행연산기제어기구의 동작을 도 22에 도시된 흐름도에 따라 아래에 설명한다.In Fig. 23, the calculators 2301 to 2303 are the same as the calculators 2101, 2104, and 2107 shown in Fig. 21, and the task arrangement is the same. When the operator 2301 is disabled, [Task1] TrPrMN (shown as 2304 in the figure) and [Task5] input / output P / P 'monitoring (shown as 2305 in the figure) are disabled. The operation of the execution operator control mechanism at this time will be described below according to the flowchart shown in FIG.

우선, 처리(2201)에서 인터럽트 및 시동하는 실행연산기제어기구는 처리(2202)에서의 연산기 X(도 23에서 2301로 도시됨)의 이상을 판단한다. 이 경우, 프로그램은 즉시 내고장성 시동 처리로 이행한다. 처리(2213)에서, 상기 기구는 내고장성 태스크 [Task3] TrPrMN-FT가 [Task1] TrPrMN에 대하여 연산기 Y(도 23에서 2302로 도시됨)에 의해 실행되는 것을 파악한다. [Task5] 입출력 P/P' 감시에 대해서는, 내고장성 태스크가 존재하지 않는다. 그 후, 즉시 처리(2214)에서, 상기 기구는 [Task3] TrPrMN-FT에 주종모드를 전환하도록 지시한다. 도 24에 도시된 바와 같이, 도면에 도시된 [Task3] TrPrMN-FT(2401)는 [Task1] TrPrMN 또는 등가 대신에 Task1의 기능을 계속해서 제공한다.First, the execution operator control mechanism that interrupts and starts in the process 2201 determines the abnormality of the operator X (shown as 2301 in FIG. 23) in the process 2202. In this case, the program immediately proceeds to the fault tolerance start process. In process 2213, the instrument knows that the fault tolerant task [Task3] TrPrMN-FT is executed by operator Y (shown as 2302 in FIG. 23) for [Task1] TrPrMN. [Task5] For I / O P / P 'monitoring, there is no fault tolerance task. Thereafter, in immediate processing 2214, the instrument instructs [Task3] TrPrMN-FT to switch the master / slave mode. As shown in FIG. 24, [Task3] TrPrMN-FT 2401 shown in the figure continues to provide the functionality of Task1 instead of [Task1] TrPrMN or equivalent.

다음, 처리(2215)에서, 연산기 X가 사용될 수 없는 상황을 반영한 후, 상기 기구는, 만일 있으면, 할당된 태스크 모듈에 의하여, 더 나은 태스크 실행 형태를 계획하는 처리(2216)를 실시한다. 여기서, 구체적으로, 상기 기구는 도면에 도시된 [Task1] TrPrMN(2401)와 도면에 도시된 [Task2] TrPrFD(2402)의 신뢰도상의 태스크간 제약 위반(배타 Level 2) 및 임의의 연산기에 의해 실행되지 않은 [Task3] TrPrMN-FT의 실행시간 제약 위반(실행 우선순위 Level 2)을 해소하는 조합에 대하여 검색하지만, 본 예시에서는 그 해(解)가 존재하지 않는다. 따라서, 도 24에 도시된 태스크 배치 형태는 연산기 X의 이상에 대한 긴급 배치이다. 처리(2207)에서, 실행 명령은 태스크(2401 내지 2403)에 송신된다. 보충되어 실행될 수 있는 태스크가 존재하지 않으므로, 처리(2208, 2209)에서는 태스크 할당 및 실행 명령 이슈를 실행하지 않는다.Next, at process 2215, after reflecting the situation where operator X cannot be used, the mechanism, if any, performs process 2216 by which the assigned task module plans a better task execution form. Here, specifically, the apparatus is executed by a constraint violation (exclusive Level 2) between tasks in reliability of [Task1] TrPrMN 2401 shown in the drawings and [Task2] TrPrFD 2402 shown in the drawings, and any operator. [Task3] Although a search is performed for a combination that solves the runtime constraint violation (execution priority level 2) of TrPrMN-FT, the solution does not exist in this example. Accordingly, the task arrangement form shown in FIG. 24 is an emergency arrangement for the abnormality of the calculator X. FIG. In process 2207, execution instructions are sent to tasks 2401-2403. Since there are no tasks that can be supplemented and executed, processes 2208 and 2209 do not execute task assignment and execution command issues.

다음, 상기 기구는 차기시간단면, 즉 전기각 30 deg 경과 후의 장래단면에서의 최적 배치를 계획하고, 태스크 모듈을 할당한다. 우선, 처리(2210)에서, 상기 기구는 태스크 요구를 조사한다. 이 경우, 도 19에 도시된 태스크 규정 내용에 기초하여, 상기 기구는 Task1 내지 Task4의 태스크 요구를 파악한다. 그 후, 처리(2211)에서, 상기 기구는 차기 태스크 배치 최적화를 실시한다. 그 결과, 상기 기구는 도 24에 도시된 해(태스크 배치)를 얻을 수 있다.The instrument then plans the optimal placement in the next time section, ie in the future section after 30 deg of electrical angle, and assigns a task module. First, in process 2210, the mechanism examines the task request. In this case, based on the task specification shown in Fig. 19, the mechanism grasps the task request of Task1 to Task4. Then, in process 2211, the mechanism performs next task batch optimization. As a result, the instrument can obtain the solution (task arrangement) shown in FIG.

도 25에 도시된 태스크 배치를 도 24에 도시된 것과 비교하면, 도면의 [Task1] TrPrMN(2501)의 배치는 변하지 않지만, 도면에 도시된 [Task4] TrPrFD-FT(2502) 및 도면에 도시된 [Task2] TrPrFD(2503)의 배치는 교체된다. 따라서, [Task1] TrPrMN 및 [Task2] TrPrFD의 신뢰도상의 태스크간 제약 위반(배타 Level 2)은 해소될 수 있다. 그러나, [Task3] TrPrFD-FT의 실행시간 제약 위반(실행 우선순위 Level 2)에 대해서는, 이것을 해소하는 배치가 발견되지 않는다. 따라서, 도 25에 도시된 태스크 배치가 얻어진다.When the task arrangement shown in FIG. 25 is compared with that shown in FIG. 24, the arrangement of [Task1] TrPrMN 2501 in the figure does not change, but the [Task4] TrPrFD-FT 2502 shown in the figure and the figure shown in the figure. [Task2] The arrangement of TrPrFD 2503 is replaced. Accordingly, the inter-task constraint violation (exclusive level 2) on the reliability of [Task1] TrPrMN and [Task2] TrPrFD can be solved. However, for a runtime constraint violation (execution priority level 2) of [Task3] TrPrFD-FT, no batch is found to solve this. Thus, the task arrangement shown in FIG. 25 is obtained.

최종적으로, 상기 기구는 처리(2212)에서 차기 태스크 모듈을 할당한다. 구체적으로, 상기 기구는 [Task4] TrPrFD-FT의 태스크 모듈은 연산기 Y에, [Task2] TrPrFD의 태스크 모듈은 연산기 Z에 할당한다. 이렇게 함으로써, 도 25에 도시된 태스크 배치를 실현하는데 필요한 태스크 모듈은 차기시간단면에 준비된다.Finally, the instrument allocates a next task module in process 2212. Specifically, the mechanism assigns the task module of [Task4] TrPrFD-FT to operator Y and the task module of [Task2] TrPrFD to operator Z. By doing so, the task module necessary for realizing the task arrangement shown in Fig. 25 is prepared in the next time section.

차기시간단면, 즉 전기각 30 deg 경과후의 장래단면에서의 연산기 상태 및태스크 요구 상태에 변화가 없다면, 실행연산기제어기구는 실행 명령을 태스크(2501 내지 2503)에 송신함으로써만 최적의 태스크 처리를 계속할 수 있다.If there is no change in the operator state and the task request state in the next time section, that is, in the future section after 30 deg of the electric angle, the execution operator control mechanism will continue to perform the optimal task processing only by sending an execution command to the tasks 2501 to 2503. Can be.

본 발명의 분산처리시스템에 의하면, 실시간성과 신뢰성의 양립을 실현하는 태스크 할당이 연산기의 구성 및 능력에 따라 실행된다. 또한, 태스크 스케쥴링을 실행함으로써, 상기 분산처리시스템은 항상 계획적으로 고신뢰도를 실현할 수 있다. 또한, 태스크 시동 요구가 수시로 발생하는 처리에 대해서, 또는 연산기의 고장이나 보수의 경우에도, CPU 사용효율과 신뢰도의 양립을 실현하는 기능 유지를 얻을 수 있다.According to the distributed processing system of the present invention, task assignment for realizing both real-time and reliability is executed according to the configuration and capability of the calculator. Further, by executing task scheduling, the distributed processing system can always realize high reliability intentionally. In addition, it is possible to obtain a function maintenance that achieves both CPU usage efficiency and reliability for processing in which a task start request frequently occurs, or even in the case of a failure or maintenance of the calculator.

Claims (24)

보호릴레이 기능을 실현하는 복수의 태스크를, 네트워크에 의해 접속된 복수의 연산기로 처리하는 정보처리장치로서,An information processing apparatus for processing a plurality of tasks for realizing a protection relay function with a plurality of calculators connected by a network, 상기 복수의 태스크 중에서 특정한 연산기에 의하여 처리되도록 하는 태스크의 조합을 정의하는 정보를 저장하는 수단;Means for storing information defining a combination of tasks to be processed by a particular operator among the plurality of tasks; 정의된 상기 조합에 따라 상기 특정한 연산기에 의해 처리될 태스크의 상기 조합 중 어느 하나를 선택하는 수단; 및Means for selecting any one of said combinations of tasks to be processed by said particular operator in accordance with said combination defined; And 상기 특정한 연산기에 의해 상기 선택된 조합의 상기 태스크를 실행하는 수단을 포함하여 이루어지는 것을 특징으로 하는 정보처리장치.And means for executing the task of the selected combination by the specific operator. 제 1항에 있어서,The method of claim 1, 상기 복수의 태스크는 보호릴레이에 포함되는 처리를 항상 수행하는 상시계 태스크 및 상기 보호릴레이에 포함되는 상기 처리를 비상시에 수행하는 대기계 태스크를 포함하고,The plurality of tasks include a phase clock task that always performs a process included in a protection relay and a standby system task that performs the process included in the protection relay in an emergency. 상기 특정한 연산기에 의하여 처리될 수 있는 상기 태스크의 상기 조합은 상기 상시계 태스크와 상기 대기계 태스크의 조합을 포함하지 않는 것을 특징으로 하는 정보처리장치.And the combination of the tasks that can be processed by the particular calculator does not include a combination of the clock clock task and the standby system task. 제 1항에 있어서,The method of claim 1, 상기 복수의 태스크는 보호릴레이의 메인 검출 기능을 실현하는 메인 검출태스크 및 보호릴레이의 사고 검출 기능을 실현하는 사고 검출 태스크를 포함하고,The plurality of tasks include a main detection task for realizing the main detection function of the protection relay and an accident detection task for realizing the accident detection function of the protection relay, 상기 특정한 연산기에 의해 처리될 수 있는 상기 태스크의 상기 조합은 동일한 보호릴레이의 메인 검출 태스크와 사고 검출 태스크를 포함하지 않는 것을 특징으로 하는 정보처리장치.And said combination of said tasks that can be processed by said particular calculator does not include a main detection task and an accident detection task of the same protection relay. 제 1항에 있어서,The method of claim 1, 상기 복수의 태스크는 버스보호릴레이의 패키지 버스 보호 기능을 실현하는 패키지 버스 보호 태스크 및 보호릴레이의 분할 버스 보호 기능을 실현하는 분할 버스 보호 태스크를 포함하고,The plurality of tasks include a package bus protection task for realizing a package bus protection function of a bus protection relay and a split bus protection task for realizing a split bus protection function of a protection relay, 상기 특정한 연산기에 의해 처리될 수 있는 상기 태스크의 상기 조합은 동일한 버스에 대한 패키지 버스 보호 태스크 및 동일한 버스에 대한 분할 버스 보호 태스크를 포함하지 않는 것을 특징으로 하는 정보처리장치.And said combination of said tasks that can be processed by said particular operator does not include a package bus protection task for the same bus and a split bus protection task for the same bus. 제 1항에 있어서,The method of claim 1, 상기 복수의 태스크는 병렬회선으로 구성되는 각각의 송전선의 송전선보호릴레이 기능을 실현하는 송전선 태스크를 구비하고,The plurality of tasks includes a power transmission line task for realizing a power line protection relay function of each power transmission line composed of parallel lines, 상기 특정한 연산기에 의해 처리될 수 있는 상기 태스크의 상기 조합은 동일한 병렬회선에 속하는 송전선 보호에 대한 복수의 송전선 태스크를 포함하지 않는 것을 특징으로 하는 정보처리장치.And said combination of said tasks that can be processed by said particular operator does not include a plurality of transmission line tasks for transmission line protection belonging to the same parallel line. 보호릴레이 기능을 실현하는 복수의 태스크를, 네트워크에 의해 접속된 복수의 연산기로 처리하는 정보처리장치로서,An information processing apparatus for processing a plurality of tasks for realizing a protection relay function with a plurality of calculators connected by a network, 상기 복수의 태스크 중에서 특정한 연산기에 의해 처리되지 않는 태스크의 조합을 저장하는 수단과,Means for storing a combination of tasks among the plurality of tasks that are not processed by a particular operator; 상기 특정한 연산기에 의해 처리되지 않는 상기 태스크의 상기 조합을 제외한 조합의 태스크를 상기 특정한 연산기로 실행하는 수단을 포함하여 이루어지는 것을 특징으로 하는 정보처리장치.And means for executing a combination of tasks other than the combination of the tasks not processed by the specific calculator by the specific calculator. 제 6항에 있어서,The method of claim 6, 상기 복수의 태스크는 보호릴레이에 포함되는 처리를 항상 수행하는 상시계 태스크 및 상기 보호릴레이에 포함되는 상기 처리를 비상시에 수행하는 대기계 태스크를 포함하고,The plurality of tasks include a phase clock task that always performs a process included in a protection relay and a standby system task that performs the process included in the protection relay in an emergency. 상기 특정한 연산기에 의해 처리되지 않는 상기 태스크의 상기 조합은 상기 상시계 태스크와 상기 대기계 태스크의 조합을 포함하는 것을 특징으로 하는 정보처리장치.And said combination of said tasks not processed by said specific calculator comprises a combination of said clock clock task and said standby system task. 제 6항에 있어서,The method of claim 6, 상기 복수의 태스크는 보호릴레이의 메인 검출 기능을 실현하는 메인 검출 태스크 및 상기 보호릴레이의 사고 검출 기능을 실현하는 사고 검출 태스크를 포함하고,The plurality of tasks include a main detection task for realizing the main detection function of the protection relay and an accident detection task for realizing the accident detection function of the protection relay, 상기 특정한 연산기에 의해 처리되지 않는 상기 태스크의 상기 조합은 동일한 보호릴레이의 메인 검출 태스크와 사고 검출 태스크를 포함하는 것을 특징으로 하는 정보처리장치.And said combination of said tasks not processed by said specific calculator comprises a main detection task and an accident detection task of the same protection relay. 제 6항에 있어서,The method of claim 6, 상기 복수의 태스크는 버스보호릴레이의 패키지 버스 보호 기능을 실현하는 패키지 버스 보호 태스크 및 보호릴레이의 분할 버스 보호 기능을 실현하는 분할 버스 보호 태스크를 포함하고,The plurality of tasks include a package bus protection task for realizing a package bus protection function of a bus protection relay and a split bus protection task for realizing a split bus protection function of a protection relay, 상기 특정한 연산기에 의해 처리되지 않는 상기 태스크의 상기 조합은 동일한 버스에 대한 패키지 버스 보호 태스크 및 동일한 버스에 대한 분할 버스 보호 태스크를 포함하는 것을 특징으로 하는 정보처리장치.And said combination of said tasks not processed by said particular operator comprises a package bus protection task for the same bus and a split bus protection task for the same bus. 제 6항에 있어서,The method of claim 6, 상기 복수의 태스크는 병렬회선으로 구성되는 각각의 송전선의 송전선보호릴레이 기능을 실현하는 송전선 태스크를 구비하고,The plurality of tasks includes a power transmission line task for realizing a power line protection relay function of each power transmission line composed of parallel lines, 상기 특정한 연산기에 의해 처리되지 않는 상기 태스크의 상기 조합은 동일한 병렬회선에 속하는 송전선 보호에 대한 복수의 송전선 태스크를 포함하는 것을 특징으로 하는 정보처리장치.And said combination of said tasks not processed by said particular calculator comprises a plurality of transmission line tasks for protecting transmission lines belonging to the same parallel line. 하나 또는 복수의 네트워크에 의해 접속된 복수의 연산기로 복수의 태스크를실행하는 고신뢰형 실시간 분산처리시스템으로서,A highly reliable real-time distributed processing system for executing a plurality of tasks with a plurality of calculators connected by one or a plurality of networks, 상기 복수의 태스크 각각에 대하여, 상기 태스크의 실행을 소정의 시간내에 완료하는 제약 또는 조건이 부가되는 계산 처리가 실행될 때, 복수의 임의의 태스크간의 제약이나 상관관계 또는 각각의 제약이나 상관관계를 상이한 연산기로 실행하는 제약 또는 조건의 충족도를 판단하는 처리가 실행됨으로써, 전체 상기 연산기에 의해 실행가능한 범위내에서, 최대 또는 충분한 신뢰성이 얻어지는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.For each of the plurality of tasks, when a calculation process is executed in which a constraint or condition for completing the execution of the task is completed within a predetermined time is executed, the constraints or correlations among the plurality of arbitrary tasks or the respective constraints or correlations are different. A process of determining the degree of satisfaction of a constraint or condition to be executed by an operator is performed, whereby maximum or sufficient reliability is obtained within a range executable by the entire calculator. 제 11항에 있어서,The method of claim 11, 상기 복수의 태스크 각각에 대하여, 상기 실행을 상기 소정의 시간내에 완료하는 것에 대한 실행시간 평가지표가 제공되고, 상기 복수의 태스크간의 상기 상관관계 각각을 상이한 연산기로 실행하는 실행연산기 평가지표가 제공되며,For each of the plurality of tasks, an execution time evaluation index for completing the execution within the predetermined time is provided, and an execution operator evaluation index for executing each of the correlations between the plurality of tasks with a different operator is provided. , 상기 시스템은, 상기 전체 연산기에 의하여 실행가능한 범위내에서 상기 평가지표군이 최대가 되도록, 실행대상 태스크의 선택처리 및 상기 선택된 태스크를 계산하는 연산기의 선택처리를 실행하는 실행연산기제어기구를 구비하는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.The system includes an execution operator control mechanism that executes a selection process of a task to be executed and a selection process of a calculator that calculates the selected task such that the evaluation index group is maximum within a range executable by the entire calculator. High reliability real-time distributed processing system, characterized in that. 제 12항에 있어서,The method of claim 12, 상기 시스템은, 각각의 상기 태스크에 대한 상기 실행시간 평가지표와 상기 태스크 이외의 태스크간의 상기 상관관계 각각에 대한 상기 실행연산기 평가지표를사전에 데이터베이스에 저장하고, 상기 지표들을 참조하여 상기 태스크 선택처리 및 상기 연산기 선택처리를 실행하는 상기 실행연산기제어기구를 구비하는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.The system stores in advance in the database the execution operator evaluation indicators for each of the correlations between the execution time evaluation indicators for each of the tasks and tasks other than the task, and references the indicators to perform the task selection process. And the execution operator control mechanism that executes the operator selection process. 제 12항에 있어서,The method of claim 12, 상기 각각의 태스크에 대한 상기 실행시간 평가지표와 상기 태스크 이외의 태스크간의 상기 상관관계 각각에 대한 상기 실행연산기 평가지표는 사전에 상기 태스크를 실현하기 위한 프로그램 모듈에 설정되고, 상기 시스템은 상기 태스크로부터 송신되는 상기 지표를 참조하여, 상기 태스크 선택처리 및 상기 연산기 선택처리를 실행하는 상기 실행연산기제어기구를 구비하는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.The execution operator evaluation indicators for each of the correlations between the execution time evaluation indicators for the respective tasks and the tasks other than the task are set in advance in a program module for realizing the task, and the system is configured from the task. And said execution operator control mechanism for executing said task selection process and said operator selection process, with reference to said indicator to be transmitted. 제 12항에 있어서,The method of claim 12, 상기 각각의 태스크를 제어하는 이름이 제공될 때, 상기 태스크명을 표시하는 기호에, 상기 태스크에 대한 상기 실행시간 평가지표를 기술하는 기호 및 상기 태스크 이외의 태스크간의 상기 상관관계 각각에 대한 상기 실행연산기 평가지표를 기술하는 기호가 포함됨으로써, 상기 시스템은 사전에 부여되는 상기 태스크명으로부터 상기 실행시간 평가지표 및 상기 실행연산기 평가지표를 추출하는 상기 실행연산기제어기구를 구비하는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.The execution of each of the correlations between a symbol describing the execution time evaluation index for the task and a task other than the task, in a symbol indicating the task name, when a name for controlling each task is provided. By including a symbol describing an operator evaluation index, the system includes the execution operator control mechanism for extracting the execution time evaluation index and the execution operator evaluation index from the task name given in advance. Real time distributed processing system. 제 12항 내지 제 15항 중 어느 한 항에 있어서,The method according to any one of claims 12 to 15, 상기 실행연산기제어기구의 처리는 상기 네트워크상의 복수의 연산기에 의해 실행되는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.The processing of the execution operator control mechanism is performed by a plurality of operators on the network. 제 12항 내지 제 15항 중 어느 한 항에 있어서,The method according to any one of claims 12 to 15, 상기 실행연산기제어기구의 처리는 상기 네트워크에 항상 접속되어 있지는 않은 하나 또는 복수의 연산기에 의해 실행되는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.The processing of the execution operator control mechanism is performed by one or a plurality of calculators not always connected to the network. 제 12항 내지 제 16항 중 어느 한 항에 있어서,The method according to any one of claims 12 to 16, 상기 실행연산기제어기구는 항상 상기 연산기의 동작 상태를 감시하여, 상기 네트워크상의 임의의 상기 연산기의 상태에 변화가 검출되면, 상기 태스크 선택처리 및 상기 연산기 선택처리를 재실행하는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.The execution operator control mechanism always monitors the operation state of the calculator, and if a change is detected in the state of any of the calculators on the network, a highly reliable real time characterized in that the task selection process and the operator selection process are executed again. Distributed processing system. 제 18항에 있어서,The method of claim 18, 상기 실행연산기제어기구는 현재의 계산단면으로부터 장래에 발생될 태스크의 존재 및 상기 태스크에 관련되는 상기 평가지표군을 관리함으로써, 복수의 시간단면을 통하여 상기 태스크 선택처리 및 상기 연산기 선택처리에 대한 최적해를 구하여, 태스크 스케쥴링을 실행하는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.The execution operator control mechanism manages the existence of a task to be generated in the future from the current calculation section and the evaluation index group related to the task, thereby making it possible to optimize the task selection process and the operator selection process through a plurality of time sections. Obtaining a high reliability real-time distributed processing system, characterized in that for performing the task scheduling. 제 18항에 있어서,The method of claim 18, 상기 실행연산기제어기구에 의해 제어되는 내용에 포함되지 않은 신규 태스크의 시동 요구가 발생하거나 신규 태스크의 시동 명령이 외부로부터 이루어졌을 때, 상기 실행연산기제어기구는 상기 태스크 선택처리 및 상기 연산기 선택처리를 재실행하는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.When a start request of a new task that is not included in the content controlled by the execution operator control mechanism occurs or a start instruction of a new task is issued from the outside, the execution operator control mechanism performs the task selection process and the operator selection process. High reliability real-time distributed processing system, characterized in that the re-execution. 제 18항에 있어서,The method of claim 18, 외부 연산기를 통하여 상기 연산기의 활용 상태에 대해 명령이 이루어졌을 때, 상기 실행연산기제어기구는 상기 명령의 내용에 따라 상기 연산기의 활용 상태를 상정함으로써, 상기 태스크 선택처리 및 상기 연산기 선택처리를 재실행하는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.When an instruction is made for the utilization state of the calculator through an external calculator, the execution operator control mechanism assumes the utilization state of the calculator according to the contents of the instruction, thereby re-executing the task selection process and the operator selection process. High reliability real-time distributed processing system, characterized in that. 제 11항에 있어서,The method of claim 11, 상기 복수의 태스크 각각의 상기 실행을 상기 소정의 시간내에 완료하는 실행시간 평가지표가 제공되고, 상기 복수의 태스크간의 상기 상관관계 각각을 상이한 연산기로 실행하는 실행연산기 평가지표가 제공되며,An execution time evaluation index for completing the execution of each of the plurality of tasks within the predetermined time is provided, and an execution operator evaluation index for executing each of the correlations between the plurality of tasks with a different calculator is provided. 상기 시스템은, 상기 전체 연산기에 의한 상기 실행가능한 범위내에서 상기 평가지표군이 최대가 되도록, 실행대상 태스크의 선택처리 및 상기 선택된 태스크를 계산하는 연산기의 선택처리를 실행하는 초기 설계를 행할 수 있는 개발 툴을 구비하는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.The system is capable of performing an initial design that executes the selection process of the task to be executed and the selection process of the calculator that calculates the selected task such that the evaluation index group is maximum within the executable range by the entire calculator. A highly reliable real-time distributed processing system comprising a development tool. 제 11항 내지 제 22항 중 어느 한 항에 있어서,The method according to any one of claims 11 to 22, 상기 시스템은, 복수의 연산기 사이를 접속하는 복수의 통신로 각각에 대하여, 상기 태스크로서 통신 내용의 정상성을 검증하는 통신로 감시 태스크의 세트를 구비하고,The system includes a set of communication channel monitoring tasks for verifying the normality of communication contents as the task, for each of the plurality of communication paths connecting between a plurality of computing devices, 상기 시스템은 동일한 통신로를 검증하는 통신로 감시 태스크의 세트로 구성되는 각각의 태스크를 상이한 연산기로 실행하는 제약 또는 조건의 충족도를 판단하는 처리를 실시함으로써, 상기 각 통신로의 정상성을 파악하는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.The system grasps the normality of each communication path by performing a process for determining the degree of satisfaction of a constraint or condition for executing each task composed of a set of communication channel monitoring tasks verifying the same communication path with a different calculator. High reliability real-time distributed processing system, characterized in that. 제 11항 내지 제 22항 중 어느 한 항에 있어서,The method according to any one of claims 11 to 22, 상기 시스템은, 상기 태스크로서 소정의 연산식을 검산하는 시험을 실행하여, 네트워크에 의해 접속되는 복수의 다른 연산기와의 통신을 통해 결과를 검증하는 복수의 연산기 감시 태스크를 구비하고,The system includes a plurality of operator monitoring tasks for executing a test for checking a predetermined expression as the task and verifying a result through communication with a plurality of other calculators connected by a network, 상기 시스템은 상기 연산기 감시 태스크 각각을 상이한 연산기로 실행하기 위한 제약 또는 조건의 충족도를 판단하는 처리를 실시함으로써, 이상있는 연산기를 특정하거나 상기 네트워크의 고장을 검출할 수 있는 것을 특징으로 하는 고신뢰형 실시간 분산처리시스템.The system is capable of specifying a faulty operator or detecting a failure of the network by performing a process of determining the degree of satisfaction of a constraint or condition for executing each of the operator monitoring tasks with a different operator. Real time distributed processing system.
KR10-2001-0056548A 2001-02-27 2001-09-13 Information processor and real-time distributed processing system KR100416201B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2001-00051377 2001-02-27
JP2001051377A JP2002259147A (en) 2001-02-27 2001-02-27 Information processor and real time distributed processing system

Publications (2)

Publication Number Publication Date
KR20020070071A KR20020070071A (en) 2002-09-05
KR100416201B1 true KR100416201B1 (en) 2004-01-31

Family

ID=18912171

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0056548A KR100416201B1 (en) 2001-02-27 2001-09-13 Information processor and real-time distributed processing system

Country Status (6)

Country Link
JP (1) JP2002259147A (en)
KR (1) KR100416201B1 (en)
CN (1) CN1200366C (en)
HK (1) HK1049051B (en)
SG (1) SG109465A1 (en)
TW (1) TW525060B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106444685A (en) * 2016-12-06 2017-02-22 中国船舶重工集团公司第七〇九研究所 Distributed control system and method of distributed control system for dynamic scheduling resources

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4345334B2 (en) * 2003-03-28 2009-10-14 日本電気株式会社 Fault tolerant computer system, program parallel execution method and program
US7287179B2 (en) * 2003-05-15 2007-10-23 International Business Machines Corporation Autonomic failover of grid-based services
JP4457581B2 (en) 2003-05-28 2010-04-28 日本電気株式会社 Fault-tolerant system, program parallel execution method, fault-detecting system for fault-tolerant system, and program
CN101061464B (en) 2004-11-17 2012-07-04 日本电气株式会社 Information processing device, program thereof, modular type system operation management system, and component selection method
FR2882165B1 (en) * 2005-02-11 2007-06-29 Airbus France Sas SYSTEM AND METHOD FOR ONBOARD FLIGHT TEST PROCESSING
US8112527B2 (en) 2006-05-24 2012-02-07 Nec Corporation Virtual machine management apparatus, and virtual machine management method and program
KR100856468B1 (en) * 2007-01-08 2008-09-04 재단법인서울대학교산학협력재단 A method to allocate the object-oriented task model of embedded software into MPSoC hardware architecture
JP4458119B2 (en) * 2007-06-11 2010-04-28 トヨタ自動車株式会社 Multiprocessor system and control method thereof
CN102387208B (en) * 2011-10-21 2014-11-05 百度在线网络技术(北京)有限公司 Distribution type task scheduling method and system
JP5959452B2 (en) * 2013-02-27 2016-08-02 株式会社東芝 Control system
WO2015135182A1 (en) * 2014-03-13 2015-09-17 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for evaluating performance of real-time system
JP6861895B1 (en) 2019-05-17 2021-04-21 三菱電機株式会社 Data processing equipment, data processing systems, data processing methods and programs
JP2021033567A (en) * 2019-08-22 2021-03-01 株式会社デンソー Electronic control device
KR102575524B1 (en) * 2022-12-22 2023-09-07 한화시스템(주) Distributed information processing device for virtualization based combat system and method for allocating resource thereof

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000029198A (en) * 1998-10-22 2000-05-25 니시무로 타이죠 Electric power system protective control system, method of controlling electric power system protective control system and storage medium storing program module
US6148324A (en) * 1998-01-05 2000-11-14 Lucent Technologies, Inc. Prioritized load balancing among non-communicating processes in a time-sharing system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5991749A (en) * 1996-09-11 1999-11-23 Morrill, Jr.; Paul H. Wireless telephony for collecting tolls, conducting financial transactions, and authorizing other activities
DE19844677C2 (en) * 1998-08-07 2001-05-31 Khaja Ali Hassan Al Method and device for wireless electronic transaction processing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6148324A (en) * 1998-01-05 2000-11-14 Lucent Technologies, Inc. Prioritized load balancing among non-communicating processes in a time-sharing system
KR20000029198A (en) * 1998-10-22 2000-05-25 니시무로 타이죠 Electric power system protective control system, method of controlling electric power system protective control system and storage medium storing program module

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106444685A (en) * 2016-12-06 2017-02-22 中国船舶重工集团公司第七〇九研究所 Distributed control system and method of distributed control system for dynamic scheduling resources

Also Published As

Publication number Publication date
JP2002259147A (en) 2002-09-13
HK1049051B (en) 2005-11-18
KR20020070071A (en) 2002-09-05
SG109465A1 (en) 2005-03-30
HK1049051A1 (en) 2003-04-25
CN1372204A (en) 2002-10-02
CN1200366C (en) 2005-05-04
TW525060B (en) 2003-03-21

Similar Documents

Publication Publication Date Title
KR100416201B1 (en) Information processor and real-time distributed processing system
US11106454B2 (en) Software update control device, software update control method, and recording medium having software update control program stored thereon
CN105683919B (en) Multi-core processor fault detect for security critical software application
CN107390511A (en) For the method for the automated system for running redundancy
JP2012524354A (en) Safety controller for controlling an automation system and method for generating a user program
Bhat et al. Practical task allocation for software fault-tolerance and its implementation in embedded automotive systems
WO2012005637A1 (en) Method for configuring a distributed avionics control system
US20150095690A1 (en) Redundant Automation System
Kirrmann Fault tolerance in process control: An overview and examples of european products
Kurose et al. Load sharing in soft real-time distributed computer systems
CN109407573A (en) A kind of CAN bus based moonlet Integrated Electronic System and method for allocating tasks
EP3251121B1 (en) Safety critical system
Kopetz et al. Real-time operating systems
US20130185726A1 (en) Method for Synchronous Execution of Programs in a Redundant Automation System
WO2015111142A1 (en) System analysis device, design defect analysis device, failure mode analysis device, failure tree analysis device, autonomous action device, and autonomous action control system
Sanfridson Timing problems in distributed real-time computer control systems
Li et al. Redundant and fault-tolerant algorithms for real-time measurement and control systems for weapon equipment
JP6343071B2 (en) System analysis device, design failure analysis device, failure mode analysis device, failure tree analysis device, autonomous operation device, and autonomous operation control system
RU2150739C1 (en) Responding signal processing system and method for detection of maximal duration of automatic process completion using responding system
Craveiro et al. Adaptability support in time-and space-partitioned aerospace systems
JP2006323863A (en) Information processor and real time distributed processing system
Pillay et al. Optimizing resources in real-time scheduling for fault tolerant processors
Ali et al. Safe reconfigurations of agents-based embedded control systems
IT201600127390A1 (en) FIRE-FIGHTING CENTRAL
US20210173371A1 (en) Data processing procedure for safety instrumentation and control (i&c) systems, i&c system platform, and design procedure for i&c system computing facilities

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
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee