JP2010003081A - Arithmetic processing unit multiplexing control system - Google Patents
Arithmetic processing unit multiplexing control system Download PDFInfo
- Publication number
- JP2010003081A JP2010003081A JP2008160877A JP2008160877A JP2010003081A JP 2010003081 A JP2010003081 A JP 2010003081A JP 2008160877 A JP2008160877 A JP 2008160877A JP 2008160877 A JP2008160877 A JP 2008160877A JP 2010003081 A JP2010003081 A JP 2010003081A
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- control
- main
- slave
- processing unit
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2033—Failover techniques switching over of hardware resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1658—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2028—Failover techniques eliminating a faulty processor or activating a spare
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2038—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2097—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Hardware Redundancy (AREA)
Abstract
Description
本発明は、プラント制御等に用いる演算処理装置(以降CPUと略する)の多重化システムに関する技術である。 The present invention is a technique related to a multiplexing system of arithmetic processing devices (hereinafter abbreviated as CPU) used for plant control and the like.
従来、制御用プラント等に用いる制御用CPUを2重あるいは多重構成にして、主系のCPUに障害が発生した場合にも停止することなく制御を行ったり、制御用プログラムの更新を行う際にはプラントを停止することなく待機系のCPUにプログラム更新を行うことによりシステムの可用性を高めることが行われており、その場合には、前記更新時、障害発生時に速やかに切り替わることが必要となる。 Conventionally, when a control CPU used in a control plant or the like has a double or multiple configuration, even when a failure occurs in the main CPU, control is performed without stopping, or when a control program is updated In order to increase the availability of the system by updating the program to the standby CPU without stopping the plant, in that case, it is necessary to switch quickly when the failure occurs. .
当該速やかな切り替えのためには、複数台のCPUは制御対象からの制御情報を同一態様で取得している必要があり、当該複数のCPUが同一態様で取得するための手段としては、各CPUが独立して制御対象からの制御情報を取得することや、2重化を構成するCPUの1方のCPUから他方のCPUがメモリデータをスヌープ(Snoop)することにより取得すること(特許文献1、特許文献2参照)等が従来より知られていた。
しかしながら、前記従来例においては、主系のCPUとそのメモリを結ぶラインからメモリデータ信号をスヌープ(Snoop)し、当該メモリデータ信号を、パラレルバスを用いた一致化バスを介して従系のCPUが取得するもので、ノイズに弱いパラレルバスを用いていることから長距離伝送には不向きである点、スヌープ(Snoop)するデータが主系にメモリされるデータであるために従系が主系と同時に処理できずに遅れることによるシステムの応答速度が犠牲になってしまう点、さらに、プログラムの更新に際してはプラントを止めることなく行うための機能を別途備える必要があり、機能が複雑になる点等の問題点を有していた。 However, in the conventional example, the memory data signal is snooped from the line connecting the main CPU and its memory, and the memory data signal is sent to the secondary CPU via the matching bus using the parallel bus. It is not suitable for long-distance transmission because it uses a parallel bus that is vulnerable to noise, and the subordinate system is the main system because the data to be snooped is stored in the main system At the same time, the response speed of the system due to being unable to process and being delayed is sacrificed, and further, it is necessary to provide a separate function for updating the program without stopping the plant, which complicates the function. Etc. had problems such as.
本発明は、上記の課題を解決するためになされたものであり、主系と従系間が長距離であってもノイズに強く、しかも、システムの応答速度を犠牲にすることなく、プログラム更新時、障害発生時にスムーズに主系、従系が切り替わるCPU2重化制御システムの提供を目的とする。 The present invention has been made to solve the above problems, and is resistant to noise even when the distance between the main system and the subordinate system is long, and the program is updated without sacrificing the response speed of the system. It is an object of the present invention to provide a redundant CPU control system in which a primary system and a secondary system are smoothly switched when a failure occurs.
さらに、プログラム更新を行うための機能を別途備えずに、プラントシステムを停止させることなくプラント制御用プログラムを更新できるCPU2重化制御システムの提供を目的とする。 It is another object of the present invention to provide a CPU redundant control system that can update a plant control program without stopping the plant system without separately providing a function for performing a program update.
本発明では、2重化制御システムにおいて、待機系である従系のCPUが実行系である主系のCPUからスヌープ(Snoop)するデータを、主系のCPUが取得する制御対象からの制御情報とすること、さらに、有利的には従系の制御周期の位相を主系の制御周期の位相より進めることを特徴とする。 In the present invention, in the duplex control system, the control information from the control target that the master CPU acquires the data that the slave CPU as the standby system snoops from the master CPU as the execution system Further, it is advantageous that the phase of the control cycle of the slave system is advanced from the phase of the control cycle of the main system.
本発明は、制御を実行している主系のCPUが取得する制御対象からの制御情報を、待機状態である従系のCPUがスヌープ(Snoop)することにより、CPU2重化制御システムにおいて必要な同期化(ホットスタンバイ)に際し、従系のCPUが新たに制御対象からの制御情報取得の為の処理を行うことなく、同期化(ホットスタンバイ)することができ、さらに、応答速度を犠牲にすることなくCPU2重化制御システムが可能であり、障害発生時に速やかに主系のCPU、従系のCPU切り替え処理が可能となる効果を有する。 The present invention is necessary in a CPU redundant control system by causing a standby CPU in the standby state to snoop control information from a control target acquired by a primary CPU that is executing control. At the time of synchronization (hot standby), the slave CPU can perform synchronization (hot standby) without newly performing processing for acquiring control information from the control target, and further sacrifices the response speed. Therefore, the CPU redundant control system is possible, and it is possible to quickly switch between the primary CPU and the secondary CPU when a failure occurs.
また、従系のCPUを主系のCPUに対してその位相を進めておくことにより、従系のCPUは入力待機状態になっているのでより早い応答が可能となる効果を奏する。 Further, by causing the slave CPU to advance its phase with respect to the master CPU, the slave CPU is in an input standby state, so that it is possible to respond faster.
また、主系のCPUと従系のCPUとの一致化バスがシリアル回線であるので、パラレルバスに比べてノイズに強く、長距離伝送が可能になる効果を有する。 In addition, since the matching bus between the main CPU and the subordinate CPU is a serial line, it is more resistant to noise than the parallel bus and has the effect of enabling long-distance transmission.
また、主系のCPUが取得する制御対象からの制御情報を、待機状態である従系のCPUが同時にスヌープ(Snoop)しているので、プラントシステムを停止せずにプラント制御用プログラムの更新に際しては、プログラム更新を行うための別途機能を不要にする効果を有する。 In addition, since the standby CPU is simultaneously snooping the control information from the control target acquired by the master CPU, the plant control program can be updated without stopping the plant system. Has the effect of eliminating the need for a separate function for program update.
次に、本発明を実施するための最良の形態(以下、「実施形態」という)について図面を参照して説明する。 Next, the best mode for carrying out the present invention (hereinafter referred to as “embodiment”) will be described with reference to the drawings.
図1はCPU2重化制御システムのブロック図、図2乃至図3はCPU2重化制御システムの通常時におけるタイムチャート、図4は主系のCPU障害発生における従系のCPUへの切替処理を示すタイムチャート、図5は従系のCPUが主系のCPUからスヌープ(Snoop)確認要求を受信できないときに従系のCPUへの切替処理を示すタイムチャートである。 FIG. 1 is a block diagram of a CPU redundant control system, FIGS. 2 to 3 are time charts in a normal state of the CPU redundant control system, and FIG. 4 shows a switching process to a slave CPU when a main CPU failure occurs. FIG. 5 is a time chart showing a process of switching to a slave CPU when the slave CPU cannot receive a snoop confirmation request from the master CPU.
図1における当該2重化制御システムは、CPU1、CPU1と同一のシステムであるCPU2、CPU1とCPU2に接続される入出力機器であるI/O3、I/O3につながる制御対象4、CPU1とCPU2及びI/O3を接続する通信路5、CPU1とCPU2を接続する通信路6等から構成される。
The duplex control system in FIG. 1 includes
前記通信路5は、RS-485等に代表されるバスマスタが存在するバスI/O3に対してCPU1とCPU2とが通信可能であり、しかも2重化制御を行うCPU1とCPU2とが同期化する際に使用可能であり、さらに、前記バスマスタ権は、主系となるCPUが保持し、同期が要請されるI/03との通信に専ら使用される。
The communication path 5 allows the
また、前記通信路6は、CPU1とCPU2間で通信可能な通信路であり、2重化制御を行うCPU1とCPU2で同期をあまり要請されない通信に専ら使用される、例えば、イーサネット(登録商標)に代表される通信路である。
The communication path 6 is a communication path that can communicate between the
次に、本発明におけるCPU2重化制御システムの処理について、CPU1を主系、CPU2を従系として説明する。
Next, the processing of the CPU duplication control system according to the present invention will be described with
主系であるCPU1は実際に制御対象に対して制御指示を行うCPUであり、従系であるCPU2は制御対象への制御を行わず、主系のCPUに障害が発生した際に切り替わるために待機状態にあるCPUである。
The
なお、いずれのCPUを最初に主系とするかの決定は、本発明におけるCPUが同一の機能を有してCPU間において主系/従系の切り替えが可能であるから、予め何れかが主系のCPU、従系のCPUであると決定しても良いし、あるいは、いずれかのCPUが主系/従系であるかを決定せずに、例えば早く起動が完了したCPUを主系としても良い。 The determination of which CPU to be the primary system first is based on the fact that the CPU in the present invention has the same function and can be switched between the primary system and the secondary system between the CPUs. It may be determined that the CPU is a secondary CPU or a slave CPU, or a CPU that has been started up early is determined as a primary system without determining whether any of the CPUs is a primary / secondary CPU. Also good.
CPU2重化制御における通常制御の例を図2のタイムチャートを用いて説明する。 An example of normal control in CPU duplex control will be described with reference to the time chart of FIG.
当該図において、点線で示した矢印は通信路6を介した通信を示し、実線で示した矢印は通信路5を介した通信を示す。 In the figure, an arrow indicated by a dotted line indicates communication via the communication path 6, and an arrow indicated by a solid line indicates communication via the communication path 5.
最初に主系となったCPU1は、CPU2に対し制御開始のためのコマンドである制御開始信号11を、通信路6を介して送信する。
The
制御開始信号11を受信した従系のCPU2は、制御開始確認応答12を主系のCPU1に対して送信すると、主系のCPU1、従系のCPU2はそれぞれ制御を開始する為の設定及び初期化の処理13を行う。
When the
初期化処理13終了後、主系のCPU1及び従系のCPU2はそれぞれ自己が正常に動作しているかの自己診断14を行った結果を主系のCPU1から従系のCPU2に対し、自己診断結果15として通信路6を介して送信する。
After the
CPU1からの診断結果15を受信したCPU2は、自己診断結果16を主系のCPU1に対して通信路6を介して送信する。
The
主系のCPU1の自己診断の結果、異常がある場合は従系のCPU2と主系、従系切り替え動作を行うこととなるが、この処理については後述する。
If there is an abnormality as a result of the self-diagnosis of the
従系であるCPU2の自己診断14の結果、異常がある場合には従系のCPU2への切り替え動作を禁止し、また、各々の自己診断14の結果、お互いに問題がなければ、主系のCPU1は、従系のCPU2に対し同期化要求17を通信路5を介して送出する。
If there is an abnormality as a result of the self-
当該同期化要求17を受信した時点において従系のCPU2は、トリガをかけて同期化処理18を行い、従系のCPU2制御周期21を開始させると共に同期化確認応答19を主系のCPU1に対して、通信路5を用いて送出する。
At the time when the
当該同期化確認応答19を受信した時点で、主系のCPU1は同期処理20を行うと共にCPU1制御周期22を開始する。この処理により、主系のCPU1は自己の制御周期の位相が、従系のCPU2に対して相対的に遅れることとなる。
When the
すなわち、従系のCPU2は、主系のCPU1からの同期化要求17を受信した時点でCPU2制御周期21が開始されるのに対し、主系のCPU1は従系のCPU2からの同期化確認応答19を受けてからCPU1制御周期22が開始されるので、当該CPU1制御周期22の開始は、従系のCPU2が同期化要求17を受信した時点と同期化確認応答19を主系のCPU1が受信した時点との時間だけCPU1制御周期22の開始が遅れることとなる。
That is, the
したがって、従系のCPU2は主系のCPU1に対して、相対的に位相が進んだ状態となるので、従系のCPU2は主系のCPU1に対して同期処理の後に行われる通信及び制御に必要な処理等を主系のCPU1に対して先行して行うことが出来、CPU1より先行して入力待機状態になる。
Therefore, the
その後、主系であるCPU1は、従系であるCPU2に対しデータのスヌープ(Snoop)可能な状態であるかを確認するスヌープ(Snoop)可否確認31を、通信路5を介して送出し、当該スヌープ(Snoop)可否確認31を受信した従系のCPU2は、主系のCPU1に対してスヌープ(Snoop)可能確認応答32を通信路5を介して主系のCPU1に対し送信することとなるが、従系のCPU2は主系のCPU1に対して位相が相対的に先行しているので、スヌープ(Snoop)可能状態にてスタンバイしていることとなる。
Thereafter, the
したがって、スヌープ(Snoop)可否確認31を受信したら速やかにスヌープ(Snoop)可能確認応答32を、通信路5を介して主系であるCPU1に対し送信することができる。
Therefore, when the
すなわち、従系のCPU2がスヌープ(Snoop)でスタンバイしているので、主系のCPU1は従系のCPU2がスヌープ(Snoop)状態になるまで待機する必要がなくなり、直ちに従系のCPU2からスヌープ(Snoop)可能確認応答32を受信することができるので、主系のCPU1は応答速度を犠牲にすることがなくなる。
That is, since the
次に、主系のCPU1はI/O3に対し、制御上必要となる制御対象の入力情報の送出を要求する入力情報送出要求33を送出すると、I/O3は、主系のCPU1からの入力情報送出要求33を受けて制御対象4から取得した制御対象情報34を主系のCPU1に対して通信路5を用いて送出する。
Next, when the
このとき従系のCPU2は、I/O3から主系のCPU1に対して通信路5を介して送出される制御対象情報34を同時にスヌープ(Snoop)する。
At this time, the
主系のCPU1はI/O3から得た制御対象4の入力情報をもとにI/O3に対し制御命令35を行うが、従系のCPU2はI/O3に対しては制御命令を行わない。
The
当該制御命令35を受信したI/O3は、制御命令確認応答36を、主系のCPU1に対して通信路5を用いて送信する。
The I /
ここで、主系のCPU1は、従系のCPU2に対して当該制御命令35に対応するI/O3から送信された制御対象の情報をスヌープ(Snoop)できたか否かを確認するスヌープ(Snoop)確認要求37を通信路5を介して出力し、当該スヌープ(Snoop)確認要求37を受信した従系のCPU2は、スヌープ(Snoop)に成功した場合はスヌープ(Snoop)確認応答38を主系のCPU1に対して送出する。
Here, the
主系のCPU1は、従系のCPU2からのスヌープ(Snoop)確認応答38に基づいて従系のCPU2がスヌープ(Snoop)に成功した否かを確認し、従系のCPU2が連続してスヌープ(Snoop)に複数回失敗した場合には、従系のCPU2には何らかの障害が発生している状態であると判断して、主系のCPU1から従系のCPU2への主系、従系切り替え動作を以後禁止する。
Based on the snoop
一方、従系のCPU2がスヌープ(Snoop)に成功したことを確認した主系のCPU1は、先に示したそれぞれ自己が正常に動作しているかの自己健全情報のやりとりを行い、自己診断結果15及び16、及び同期化要求処理である同期化処理20を行う。
On the other hand, the
以上までの処理を1周期として行うことにより、主系のCPU1に対して、従系のCPU2の制御周期の位相を相対的に進め、かつ、主系のCPU1が制御対象から取得した情報を従系のCPUがスヌープ(Snoop)することにより、制御対象に対する主系のCPU1の応答速度を犠牲にすることなくCPU2重化制御システムにおけるホットスタンバイが可能となる。
By performing the above processing as one cycle, the phase of the control cycle of the
ここで、主系のCPU1に対して進める従系のCPU2の制御周期の位相は、CPU1制御周期22の全期間に亘って主系のCPU1が制御動作を行うわけではないので、主系のCPU1の制御動作終了時点と主系のCPU1制御周期22の終了時点との範囲の時間内で適宜位相を遅らせて良い。
Here, the phase of the control cycle of the
また、ここでいうスヌープ(Snoop)とは、特許文献2に記載(参照)するように、データを分岐信号線を介して盗み読むことである。
In addition, snoop here means to read data via a branch signal line as described (referred to) in
次に主系のCPU1が何らかの理由にて障害が発生してシステムダウンした場合の切り替えについてCPU1を主系、CPU2を従系として図4のタイムチャートに基づいて説明する。
Next, switching when the
前記のように、主系のCPU1及び従系のCPU2はお互いに通信路6を介して自己が健全であるか否かの情報である自己診断結果15,16をやり取りするが、主系のCPU1において、自己診断によってエラーが検出され自己健全情報内にエラー情報が含まれた際の切り替え処理に関して説明する。
As described above, the
主系のCPU1の自己診断14においてエラーが発生すると、主系のCPU1は自己に障害が発生したと判断して主系のCPU1から従系のCPU2に対して送出される自己診断結果15内にエラー発生の情報を含めて通信路6を介して送出する。
If an error occurs in the self-
当該、自己診断結果15を受信した従系のCPU2は、自己診断結果16を、通信路6を介して送信し、当該自己診断結果16を受信した主系のCPU1は、その診断結果が健全であるという内容である場合は、従系のCPU2に対して主系/従系切替要求41を通信路6を用いて送出し、当該主系/従系切替要求41を受信した従系のCPU2は、主系/従系切替要求確認応答42を主系のCPU1に対して通信路6を用いて送出する。
The
次いで、主系のCPU1は、従系のCPU2からの主系/従系切替要求確認応答42を受信した後、I/O3に対してCPU切替要求43を送出すると、I/O3はCPU切替が行われることを確認するCPU切替要求確認応答44を主系のCPU1へ通信路5を用いて出力する。
Next, when the
次に、主系のCPU1は、従系のCPU2に対して通信路5切替要求45を送出すると、従系のCPU2は、当該通信路5切替要求45を受信してその旨を確認した後に、主系のCPU1に対して通信路5切替要求確認応答46を送出すると、当該通信路5切替要求確認応答46を受信した主系のCPU1は通信路5のマスタ権移行の処理を行って通信路5切替実行47の一連の処理により、通信路5のマスタ権が主系のCPU1から従系のCPU2に切り替わり、従系のCPU2は、主系のCPU1の通信路5切替実行47を以て従系から主系へと切り替わる。
Next, when the
この切替は、主系のCPU1が取得していた制御対象4の制御情報等をスヌープ(Snoop)処理によりあらかじめ従系のCPU2が取得している為、主系としてシステムを制御するにあたり新たに制御情報等を取得することがなく速やかに主系のCPUとして動作することが可能となる。
This switching is newly controlled when the system is controlled as the main system because the
ここでは、主系のCPU1の自己診断結果15により主系/従系切替要求41を主系のCPU1が出力したが、主系のCPU1に対し外部からのコマンドにより主系/従系切替要求41を発行し、マニュアルにて主系/従系切替を実行することも可能である。
Here, the
一方、このような自己診断結果にエラーがない場合においては、前記通常状態の時と同様に、従系となったCPU1の制御周期の位相を主系となったCPU2の位相に対し進めることが可能である。
On the other hand, when there is no error in the self-diagnosis result, the phase of the control cycle of the
すなわち、主系と従系が入れ替わって主系となったCPU2は、前記通常状態の主系のCPU1と同様の作用、すなわち、同期化要求17を従系のCPUとなったCPU1に対し通信路5を介して送信すると、従系となったCPU1は、同期化要求17を受信した時点においてトリガをかけて同期化処理18を行い、CPU1制御周期22を開始させると共に、同期化確認応答19を主系となったCPU2に対して、通信路5介して送出すると、当該同期化確認応答19を受けて主系となったCPU2は、同期化処理20を行い、CPU2制御周期22を開始することにより、主系となったCPU2は自己の制御周期の位相を、従系となったCPU1に対して相対的に遅らせることは、前記通常状態の時の動作と同様である。
That is, the
次にCPUの主系/従系が切り替わるもう一つの条件となる、従系のCPUが主系のCPUからの制御情報のスヌープ(Snoop)要求を連続して受信できない場合の処理について図5を用いて説明する。 Next, FIG. 5 shows processing when the slave CPU cannot continuously receive the control information snoop request from the master CPU, which is another condition for switching the master / slave of the CPU. It explains using.
制御周期の中において、従系のCPU2は主系のCPU1が正常動作しているときには、一定周期にて送られる情報である、スヌープ(Snoop)可否確認31、スヌープ(Snoop)確認要求37及び、自己診断結果15の処理が複数回連続して確認できない場合、例えば、通信路5及び通信路6においてあらかじめ設定されている通信路のタイムアウト検出により確認することができない場合に、従系のCPU2は、主系のCPU1が何らかの異常状態にあると判断する。
In the control cycle, when the
すると、従系のCPU2は、主系のCPUに自ら移行し、通信路5のマスタ権を自ら取得し、通信路5を介してI/O3に対しCPU主系/従系切り替えの指示となるCPU切替要求51を出力し、当該CPU切替要求51を受信したI/O3は、CPU切替確認応答52をCPU2に対して通信路5を介して出力すると、CPU2は主系へ切り替わって制御を行い、これ以降において、異常状態と判断されたCPU1への切り替え処理は行われない。
Then, the
以上のように、主系のCPUの応答が無くなった状態においても、CPUの主系/従系のCPU切替が可能となる。 As described above, even when there is no response from the main CPU, the CPU can be switched between the main system and the subordinate CPU.
本CPU2重化制御システムを用いることにより、CPUが制御しているプラントを止めることなく、CPU制御用プログラムの入れ替え処理について、主系をCPU1、従系をCPU2として説明する。 By using this CPU duplication control system, the CPU control program replacement processing will be described with the main system as CPU1 and the subordinate system as CPU2 without stopping the plant controlled by the CPU.
システムを止めることなくプログラムを更新するときは、従系のCPU2に対してプログラムの更新を行うこととなるが、従系のCPU2は、通常前記のように(参照)直接システムの制御は行っていないので、システムを止めることなく、プログラムの入れ替ができ、さらに、従系のCPU2は、主系のCPU1がI/O3より得た制御情報をスヌープ(Snoop)により取得しているので、システムを制御している主系のCPU1と同一態様で動作することができる。
When the program is updated without stopping the system, the program is updated to the
そこで、
プログラムを更新した従系のCPU2は、主系のCPU1からスヌープ(Snoop)して得た制御情報を元に、更新したプログラムを用いて作成したシステムへの制御命令と、主系のCPU1が出力したシステムへの制御命令とを比較し、当該比較結果である、制御対象への制御命令が一致、もしくは、想定される結果であれば、更新したプログラムはシステムを制御する上において問題ないと判断して、主系のCPU1に対し、外部コマンドにて主系/従系切替要求41を発行させて前記したように主系/従系を切り替える。
Therefore,
The
すると、プラントなどのシステムを止めることなく導入当初に発生すると想定されるプログラムの入れ替え作業を、従系のCPUにおいてあらかじめ評価したうえで行うことが出来、プログラム入れ替えに伴うシステム停止等の事故を回避することが可能となる。 Then, it is possible to perform program replacement work, which is expected to occur at the beginning of installation without stopping the system such as the plant, after evaluating it in advance in the slave CPU, and avoid accidents such as system stoppage due to program replacement. It becomes possible to do.
1 CPU1
2 CPU2
3 I/O
4 制御対象
11 制御開始信号
12 制御開始確認応答
13 設定及び初期化処理
14 自己診断
15、16 自己診断結果
17 同期化要求
18 CPU2同期化処理
19 同期化確認応答
20 CPU1同期化処理
21 CPU2制御周期
22 CPU1制御周期
31 Snoop開始要求
32 Snoop開始確認応答
33 制御対象入力情報要求
34 制御対象情報出力
35 制御命令
36 制御命令確認応答
37 スヌープ(Snoop)確認要求
38 スヌープ(Snoop)確認応答
41 主系/従系切替要求
42 主系/従系切替要求確認応答
43 CPU切替要求
44 CPU切替確認応答
45 通信路5切替要求
46 通信路5切替要求確認応答
47 通信路5切替
51 CPU切替要求
52 CPU切替確認応答
1 CPU1
2 CPU2
3 I / O
4
Claims (5)
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008160877A JP5243113B2 (en) | 2008-06-19 | 2008-06-19 | Arithmetic processing unit multiplexing control system |
CA2668835A CA2668835C (en) | 2008-06-19 | 2009-06-15 | Duplexed operation processor control system, and duplexed operation processor control method |
US12/457,682 US9208037B2 (en) | 2008-06-19 | 2009-06-18 | Duplexed operation processor control system, and duplexed operation processor control method |
CN2009101503011A CN101609421B (en) | 2008-06-19 | 2009-06-19 | Duplexed operation processor control system, and duplexed operation processor control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008160877A JP5243113B2 (en) | 2008-06-19 | 2008-06-19 | Arithmetic processing unit multiplexing control system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010003081A true JP2010003081A (en) | 2010-01-07 |
JP5243113B2 JP5243113B2 (en) | 2013-07-24 |
Family
ID=41432459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008160877A Active JP5243113B2 (en) | 2008-06-19 | 2008-06-19 | Arithmetic processing unit multiplexing control system |
Country Status (4)
Country | Link |
---|---|
US (1) | US9208037B2 (en) |
JP (1) | JP5243113B2 (en) |
CN (1) | CN101609421B (en) |
CA (1) | CA2668835C (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013025765A (en) * | 2011-07-26 | 2013-02-04 | Nippon Telegr & Teleph Corp <Ntt> | Master/slave system, control device, master/slave switching method and master/slave switching program |
WO2015152167A1 (en) * | 2014-03-31 | 2015-10-08 | 日本信号株式会社 | Redundant control device and system switching method |
US10033546B2 (en) | 2012-12-31 | 2018-07-24 | Hyundai Motor Company | Method and system for reprogramming |
KR102199243B1 (en) * | 2020-03-16 | 2021-01-06 | 공주대학교 산학협력단 | System and method for displaying hard disk status of server using parallel port |
KR102199244B1 (en) * | 2020-03-16 | 2021-01-06 | 공주대학교 산학협력단 | System and method for displaying hard disk status of server using serial port |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016170614A1 (en) * | 2015-04-22 | 2016-10-27 | 三菱電機株式会社 | Programmable logic controller, slave device, and duplex system |
CN109188986B (en) * | 2018-10-25 | 2021-09-07 | 深圳易能电气技术股份有限公司 | Dual-controller parallel bus communication device and method and communication equipment |
CN109782578A (en) * | 2018-12-24 | 2019-05-21 | 中国船舶重工集团公司第七一0研究所 | A kind of high reliability deep-sea autonomous underwater vehicle control method |
CN112540877B (en) * | 2019-09-20 | 2023-01-24 | 奇酷互联网络科技(深圳)有限公司 | Method and device for switching CPU, intelligent terminal and storage medium |
CN110877584A (en) * | 2019-11-28 | 2020-03-13 | 安徽中车瑞达电气有限公司 | Cab operation interlocking method of double-head mining electric locomotive |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0371201A (en) * | 1989-08-03 | 1991-03-27 | Internatl Business Mach Corp <Ibm> | Real time fail-safe processing control system and method for the same |
JPH0721030A (en) * | 1993-07-06 | 1995-01-24 | Toshiba Corp | Loading method |
JPH07244598A (en) * | 1994-03-08 | 1995-09-19 | Fuji Electric Co Ltd | Switching method for dual controller and the dual controller |
JPH1115502A (en) * | 1997-06-24 | 1999-01-22 | Mitsubishi Electric Corp | Digital controller |
JPH11212626A (en) * | 1998-01-21 | 1999-08-06 | Toshiba Corp | Plant monitoring system |
JP2001060159A (en) * | 1999-08-24 | 2001-03-06 | Hitachi Ltd | Method for improving reliability of computer system |
JP2003036101A (en) * | 2001-07-25 | 2003-02-07 | Yokogawa Electric Corp | Redundant controller |
JP2006031526A (en) * | 2004-07-20 | 2006-02-02 | Sony Corp | Information processor and method, recording medium and program |
JP2006209565A (en) * | 2005-01-31 | 2006-08-10 | Yokogawa Electric Corp | Information processor and information processing method |
WO2007057271A1 (en) * | 2005-11-18 | 2007-05-24 | Robert Bosch Gmbh | Apparatus and method for eliminating errors in a system having at least two execution units with registers |
JP2007280313A (en) * | 2006-04-12 | 2007-10-25 | Yokogawa Electric Corp | Redundant system |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3862777B2 (en) | 1996-03-05 | 2006-12-27 | 株式会社日立製作所 | Duplex data matching method and duplex control device |
JP3299115B2 (en) | 1996-05-16 | 2002-07-08 | 株式会社日立製作所 | Redundant system |
JP3606281B2 (en) | 2002-06-07 | 2005-01-05 | オムロン株式会社 | Programmable controller, CPU unit, special function module, and duplex processing method |
JP4117684B2 (en) * | 2004-12-20 | 2008-07-16 | 日本電気株式会社 | Fault-tolerant / duplex computer system and its control method |
-
2008
- 2008-06-19 JP JP2008160877A patent/JP5243113B2/en active Active
-
2009
- 2009-06-15 CA CA2668835A patent/CA2668835C/en active Active
- 2009-06-18 US US12/457,682 patent/US9208037B2/en active Active
- 2009-06-19 CN CN2009101503011A patent/CN101609421B/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0371201A (en) * | 1989-08-03 | 1991-03-27 | Internatl Business Mach Corp <Ibm> | Real time fail-safe processing control system and method for the same |
JPH0721030A (en) * | 1993-07-06 | 1995-01-24 | Toshiba Corp | Loading method |
JPH07244598A (en) * | 1994-03-08 | 1995-09-19 | Fuji Electric Co Ltd | Switching method for dual controller and the dual controller |
JPH1115502A (en) * | 1997-06-24 | 1999-01-22 | Mitsubishi Electric Corp | Digital controller |
JPH11212626A (en) * | 1998-01-21 | 1999-08-06 | Toshiba Corp | Plant monitoring system |
JP2001060159A (en) * | 1999-08-24 | 2001-03-06 | Hitachi Ltd | Method for improving reliability of computer system |
JP2003036101A (en) * | 2001-07-25 | 2003-02-07 | Yokogawa Electric Corp | Redundant controller |
JP2006031526A (en) * | 2004-07-20 | 2006-02-02 | Sony Corp | Information processor and method, recording medium and program |
JP2006209565A (en) * | 2005-01-31 | 2006-08-10 | Yokogawa Electric Corp | Information processor and information processing method |
WO2007057271A1 (en) * | 2005-11-18 | 2007-05-24 | Robert Bosch Gmbh | Apparatus and method for eliminating errors in a system having at least two execution units with registers |
JP2007280313A (en) * | 2006-04-12 | 2007-10-25 | Yokogawa Electric Corp | Redundant system |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013025765A (en) * | 2011-07-26 | 2013-02-04 | Nippon Telegr & Teleph Corp <Ntt> | Master/slave system, control device, master/slave switching method and master/slave switching program |
US10033546B2 (en) | 2012-12-31 | 2018-07-24 | Hyundai Motor Company | Method and system for reprogramming |
WO2015152167A1 (en) * | 2014-03-31 | 2015-10-08 | 日本信号株式会社 | Redundant control device and system switching method |
JP2015194971A (en) * | 2014-03-31 | 2015-11-05 | 日本信号株式会社 | redundant system control device |
CN106233260A (en) * | 2014-03-31 | 2016-12-14 | 日本信号株式会社 | Redundant system controls device and system switching method thereof |
KR102199243B1 (en) * | 2020-03-16 | 2021-01-06 | 공주대학교 산학협력단 | System and method for displaying hard disk status of server using parallel port |
KR102199244B1 (en) * | 2020-03-16 | 2021-01-06 | 공주대학교 산학협력단 | System and method for displaying hard disk status of server using serial port |
Also Published As
Publication number | Publication date |
---|---|
JP5243113B2 (en) | 2013-07-24 |
US20090319756A1 (en) | 2009-12-24 |
CN101609421A (en) | 2009-12-23 |
CN101609421B (en) | 2013-11-20 |
CA2668835C (en) | 2014-01-14 |
CA2668835A1 (en) | 2009-12-19 |
US9208037B2 (en) | 2015-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5243113B2 (en) | Arithmetic processing unit multiplexing control system | |
US9170569B2 (en) | Method for electing an active master device from two redundant master devices | |
JP4168403B2 (en) | Fault tolerant system, control device used therefor, access control method, and control program | |
JP2006178659A (en) | Fault tolerant computer system and interrupt control method therefor | |
CN107038095B (en) | Method for redundantly processing data | |
JP2009098988A (en) | Fault tolerant computer system | |
JP2006155678A (en) | Multiplexing control system and multiplexing method | |
JP2007018026A (en) | Controller | |
JP6187508B2 (en) | Control device, bus circuit, method, and program | |
US11526137B2 (en) | Operation verification program, operation synchronization method, and error detection apparatus | |
JP2009259134A (en) | Safety plc | |
JPWO2011074147A1 (en) | Dual system controller | |
JP4810488B2 (en) | Duplex control apparatus and tracking method thereof | |
JP4816983B2 (en) | Disk array device, power control method and power control program for disk array device | |
JP2010039628A (en) | Control system, monitoring method, and program | |
JP6540142B2 (en) | Baseboard Management Controller, Information Processing System, and Baseboard Management Controller Processing Execution Method | |
JP4117685B2 (en) | Fault-tolerant computer and its bus selection control method | |
JP2016009499A (en) | Methods and systems for managing interconnection | |
JP7023726B2 (en) | Duplex control system | |
JP6214346B2 (en) | Dual system controller | |
JP2016091480A (en) | Duplex control system | |
WO2014118985A1 (en) | Bus module and bus system | |
JP6312948B2 (en) | Control system and control unit | |
JPH03154901A (en) | Duplex controller | |
JP2009276983A (en) | Multiplexing computer system and its processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100726 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120613 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120619 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120809 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20121204 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130228 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20130307 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130326 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130404 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160412 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5243113 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |