JP3332098B2 - 二重化プロセッサ装置 - Google Patents

二重化プロセッサ装置

Info

Publication number
JP3332098B2
JP3332098B2 JP01374893A JP1374893A JP3332098B2 JP 3332098 B2 JP3332098 B2 JP 3332098B2 JP 01374893 A JP01374893 A JP 01374893A JP 1374893 A JP1374893 A JP 1374893A JP 3332098 B2 JP3332098 B2 JP 3332098B2
Authority
JP
Japan
Prior art keywords
processor
standby
processor device
control
execution memory
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.)
Expired - Fee Related
Application number
JP01374893A
Other languages
English (en)
Other versions
JPH06230995A (ja
Inventor
流 狭間
博樹 伊藤
創 赤井
年彦 松田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric Corp
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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP01374893A priority Critical patent/JP3332098B2/ja
Publication of JPH06230995A publication Critical patent/JPH06230995A/ja
Application granted granted Critical
Publication of JP3332098B2 publication Critical patent/JP3332098B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Hardware Redundancy (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、プロセスの制御のため
に適用される二重化プロセッサ装置に関し、更に詳しく
は、単体で実行可能な2つのプロセッサ装置をシステム
バスで結合し、一方のプロセッサ装置が実作業につき他
方のプロセッサ装置が実作業に関与せず待機する方式の
二重化プロセッサ装置に関する。
【0002】
【従来の技術】プロセス制御を行うプロセッサ装置にお
いては、信頼性を高めるためにプロセス制御演算を行う
プロセッサ装置を二重化構成とし、一方のプロセッサ装
置の故障に備えて他方のプロセッサ装置を待機させるよ
うに構成した二重化プロセッサ装置が広く実用化されて
いる。
【0003】この様な二重化プロセッサ装置を構成する
場合、2つのプロセッサ装置をどの様に結合して動作さ
せるかが課題となるが、従来考えられている結合方式と
して、以下のものがある。 (a)2つのプロセッサ装置を、互いに同期をとりなが
ら同一のソフトウェアにより動作させると共に、これら
のプロセッサ装置につながる入出力装置(I/O)も二
重化構成とし、双方で常に同期をとるように構成する。 (b)2つのプロセッサ装置で、同一のソフトウェアを
制御側と待機側とで分けて動作させる。2つのプロセッ
サ装置内の各CPUは、独立して動作する。入出力装置
は、プロセッサ装置の外部に信号を出力する場合は制御
側が動作し、それ以外の内部で動作が完結する処理は、
各プロセッサ装置で独立してその処理を実行する。制御
側にあるプロセッサ装置による処理は、システムの任意
のタイミングで待機側となっているプロセッサ装置へ等
値化する。待機側のプロセッサ装置は、常にこの等値化
による処理を実行しながら、制御側のプロセッサ装置の
ダウンに備える。 (c)2つのプロセッサ装置で、同一のソフトウェアを
制御側と待機側とで分けて動作させる。2つのプロセッ
サ装置内の各CPUは、独立して動作する。入出力装置
は、制御側でのみ動作し、もう片方は実行可能な状態で
待機しておく。制御側にあるプロセッサ装置による処理
で操作したデータに関しては、制御側にあるプロセッサ
装置のアプリケーションソフトウェアが、任意のタイミ
ングで待機側となっているプロセッサ装置へ等値化す
る。待機側のプロセッサ装置は、常にこの等値化による
処理を実行しながら、制御側のプロセッサ装置のダウン
に備える。制御側のプロセッサ装置がダウンした場合
は、等値化した内容に従って処理を継続する。 (d)2つのプロセッサ装置で、同一もしくは独自のソ
フトウェアを独立して動作させる。2つのプロセッサ装
置は、お互いの装置のアプリケーションソフトウェア間
で、任意のタイミングで同期通信を行い、制御側のプロ
セッサ装置がダウンした場合は、それまで待機側にあっ
たプロセッサ装置が代行する。
【0004】
【発明が解決しようとする課題】2つのプロセッサ装置
を、前述したように結合する従来方式において、(a)
の方式は、プロセッサ装置内の各CPU間でインストラ
クションの度に同期をとる必要があり、CPUの処理ス
ピードが著しく低下するという問題がある。(b)の方
式は、実行状態にあるプロセッサ装置から待機側となっ
ていたプロセッサ装置に実行権が切り替えられた際、そ
れまで待機側となっていたプロセッサ装置は、すでに実
行済みの処理を再び実行することになる。この時、待機
実行のための時間を必要とするため、リアルタイム性を
要求されるようなプロセス制御システムとしては不向き
である。
【0005】(c)の方式は、等値化するデータの設計
が複雑となり、特に高級言語を使用して作成されたアプ
リケーションソフトウェアでは、データエリアをどのよ
うにとるかはコンパイラが決定することであるために、
対応が困難になるという問題がある。(d)の方式は、
お互いの装置のアプリケーションソフトウェアによって
のみ二重化の切替えを実現することになるために、汎用
的な二重化構成のシステムとは言えない。
【0006】本発明は、これらの点に鑑みてなされたも
ので、制御側がダウンしたような場合における待機側プ
ロセッサ装置への制御動作の切替えを、継続性を維持し
ながら即座に行うことができるとともに、二重化構成と
したプロセッサ装置において、オペレーティングシステ
ム(OS)の管理下で動作するアプリケーションソフト
ウェアに、二重化の意識をさせることなく、従って、二
重化切替え制御のための構成が簡単で、信頼性の高い二
重化プロセッサ装置を提供することを目的とする。
【0007】
【課題を解決するための手段】この様な目的を達成する
本発明は、次のとおりの二重化プロセッサ装置である。 (1) 単体で実行可能な2つのプロセッサ装置をシステ
ムバスで結合し、一方のプロセッサ装置が実作業に関与
する制御側になり、他方のプロセッサ装置が実作業に関
与しない待機側になっている二重化プロセッサ装置であ
って、各プロセッサ装置に、オペレーティングシステム
を格納したOS実行メモリ手段と、オペレーティングシ
ステムの機能を使用(システムコール)しながら動作す
るアプリケーションプログラムを格納したプログラム実
行メモリ手段と、前記各メモリに格納されているプログ
ラムに従って動作するCPU装置と、自身が実作業に関
与しているとき制御側プロセッサ装置が自身のプログラ
ム実行メモリ手段に書き込んだ内容を、待機側プロセッ
サ装置内のプログラム実行メモリ手段の同じアドレスに
コピーするデータ等値化手段と、自身が実作業に関与し
ているとき受けた割り込みを待機状態にある相手のプロ
セッサ装置側に行うプロセス装置間割り込み発生手段
と、前記アプリケーションプログラムがシステムコール
を行った際制御側プロセッサ装置と待機側プロセッサ装
置とでその動作が同期するように待ち合わせを行って割
り込み処理の同期をとる待ち合わせ手段とを備え、制御
側プロセッサ装置及び待機側プロセッサ装置の待ち合わ
せ手段は、アプリケーションプログラムがシステムコー
ルする毎に、自分側のプログラム実行メモリ手段の指定
したアドレスにデータを書き込み、次に相手側のプログ
ラム実行メモリ手段の同じアドレスをチェックして、何
らかのデータが相手側プロセッサ装置から書き込まれる
まで待ち合わせを行い、書き込まれたのを確認すると、
相手側のプログラム実行メモリ手段のデータをクリア
し、続いて、自分側のプログラム実行メモリ手段のデー
タがクリアされるまで待つ待ち合わせ動作を行うことを
特徴とする二重化プロセッサ装置。 (2) 待機側プロセッサ装置は、制御側のプロセス装置
間割り込み発生手段による割り込みを受けると、待機側
のCPU装置に対して、疑似的な割り込みを発生し、制
御側と同様の割り込み処理を待機側で行うことを特徴と
する(1)記載の二重化プロセッサ装置。
【0008】
【0009】
【0010】
【0011】
【実施例】以下図面を用いて本発明の一実施例を詳細に
説明する。図1は、本発明に係わる装置の基本的な機能
を示す機能ブロック図である。図において、MD1,M
D2はそれぞれ単体で実行可能な2つのプロセッサ装置
で、互いにシステムバスSBにより結合しており、一方
のプロセッサ装置、例えばMD1が実作業(制御)につ
き、他方のプロセッサ装置MD2が実作業に関与せず待
機する側となっている。
【0012】各プロセッサ装置は、オペレーションシス
テム(OS)の管理下で動作する汎用化された言語(例
えばC言語)で記述されたアプリケーションソフトウェ
アに従って、データの処理や制御を行うように構成され
ている。また、各プロセッサ装置は、外部からの割り込
み処理以外に、OSによる多重実行の発生はなく、アプ
リケーションプログラムが連続に実行する処理を中断す
るのは、そのアプリケーションプログラムがOSをコー
ルするか、又は、OSが動作するような処理を実行した
場合のみであり、また、各プログラム間でのデータの授
受および通信は、全てOSを経由して行われるように構
成されている。
【0013】各プロセッサ装置MD1,MD2におい
て、11はOSを格納したOS実行メモリ手段、12は
アプリケーションプログラムを格納したプログラム実行
メモリ手段である。ここに格納されているアプリケーシ
ョンプログラムは、OSの機能を使用しながら(システ
ムコールを行いながら)動作するもので、各種のアプリ
ケーションに応じて用意されるが、その設計あるいは作
成は、二重化処理を意識することなく行われる。13は
各メモリ手段11,12に格納されている各プログラム
に従って動作するCPU装置で、データの演算処理,各
種の制御や通信処理などを行う機能を有している。
【0014】14は自身が実作業に関与しているとき、
プログラム実行メモリ手段12の内容を、待機状態にあ
る相手のプロセッサ装置内のプログラム実行メモリ手段
に転送するデータ等値化手段である。このデータ等値化
手段14は、システムの立ち上げ時においては、はじめ
に、シングル運転状態に入ったプロセッサ装置側(制御
側)のOS実行メモリ手段11とプログラム実行メモリ
手段12の内容を、待機側にあるプロセッサ装置に転送
する機能も備えている。
【0015】15は各プロセッサ装置MD1,MD2に
対応して設けられている入出力装置(I/O装置)であ
る。ここでは、2つのプロセッサ装置を結ぶシステムバ
スSBに接続され、各プロセッサ装置内に設けている例
を示すが、プロセッサ装置の外部に設けられるものでも
よく、また、各プロセッサ装置にそれぞれ独立して結合
し、独自に動作するものでもよい。
【0016】16は自身のプロセッサ装置が実作業に関
与しているとき、I/O装置15から割り込みを受けた
場合、待機状態にある相手のプロセッサ装置側に対し
て、同様の割り込みを行うプロセス装置間割り込み発生
手段である。待機側プロセッサ装置は、制御側のプロセ
ス装置間割り込み発生手段16による割り込みを受ける
と、自身のCPU装置に対して、疑似的な割り込みを発
生させ、制御側と同様の割り込み処理を行う。この場合
の割り込み処理は、通常はアプリケーションの動作とは
全く非同期に行われることになる。
【0017】17はアプリケーションプログラムがシス
テムコールを行った際、制御側プロセッサ装置と待機側
プロセッサ装置とで、その動作が同期するように待ち合
わせを行うための待ち合わせ手段である。2つのプロセ
ッサ装置は、制御側も待機側もそれぞれのCPU装置1
3によって独自に動作しているが、各プロセッサ装置
は、いずれも1つのCPU装置で動作しているために、
それらの動作が正常に行われていれば、互いの動作は同
期したものとなる。しかしながら、一方のプロセッサ装
置において、割り込み処理などが発生すると同期がとれ
なくなる。
【0018】従って、本発明の装置においては、OSが
コールされるたびに、待ち合わせ手段17による同期の
ための待ち合わせが行われるように構成してある。待ち
合わせが行われる場合としては、CPU装置13から割
り込みが発生した場合、プロセッサ装置が自身のI/O
装置15に対してアクセスを行った(この場合、制御側
から待機側にデータ転送が行われる)場合、プログラム
実行メモリ手段12で動作するプログラムからのI/O
装置15に対してアクセス要求を行った場合等である。
【0019】図2は、本発明の一実施例のハードウェア
を示す構成ブロック図である。各プロセッサMD1,M
D2は、いずれも、マイクロプロセッサMPとI/O装
置15とからなり、二重化構成としたシステムバスSB
1,SB2を介して互いに結合している。各マイクロプ
ロセッサMPは、図1における、OS実行メモリ手段1
1とプログラム実行メモリ手段12として機能するメモ
リ10、データの演算処理,各種の制御や通信処理など
を行う機能を代表する制御演算手段13、データ等値化
手段14、プロセッサ間割り込み発生手段16が設けら
れている。
【0020】なお、システムバスSBを二重化構成とし
ない場合は、各プロセッサ装置に対応するI/O装置1
5は、それぞれ同一のシステムバスに結合されることと
なる。この様に構成した装置の動作を次に、システムの
立ち上げ時、同期実行時、切替え時、シングル運転時の
各処理に分けて説明する。
【0021】(システムの立ち上げ時の動作)図3,図
4は、システム立ち上げ時の動作を示すフローチャート
である。はじめに、2つのプロセッサ装置とも、ハード
ウェアの自己診断を行い、異常がなければ、自身が制御
側になるのか待機側になるのかの診断を行う(ST1
1,12,21,22)。制御側になるのか待機側にな
るのかの診断により、例えば、あらかじめハードウェア
によって決められた側、あるいは、はじめに、動作状態
になった(CPUがレディ信号CPURDYを最初に出
力した)プロセッサ装置が制御側、他方が待機側にな
る。
【0022】制御側になったプロセッサ装置(例えばM
D1)において、メモリが揮発していればシステムロー
ディングが行れ、CPURDYを宣言して制御側として
の準備を完了する(ST13,14)。待機側となった
プロセッサ装置MD2は、制御側となったプロセッサ装
置からの信号を受け、待機側として設定され、初期化処
理を行う(ST23)。
【0023】制御側となったプロセッサ装置MD1は、
制御側としての準備が完了すると、次に各種ソフトウェ
アの初期化処理と自身に結合するI/O装置の初期化処
理を行い、シングルシステムとして動作を開始する(S
T15〜18)。この間、待機側プロセッサ装置MD2
からのデータ等値化要求(APC要求)があるか確認を
行っている。一方、待機側となったプロセッサ装置MD
2は、制御側となったプロセッサ装置が動作状態(オン
ライン)になったのを確認し、初期化処理が完了する
と、自身のプロセッサ装置間割り込み発生手段16を使
用して、制御側のプロセッサ装置MD1にデータ等値化
要求(APC要求)を行う(ST24)。
【0024】制御側プロセッサ装置MD1において、A
PC要求を受理すると、定周期での割り込み処理によ
り、データ等値化処理を行う(ST19,20)。図5
は、システム立ち上げ時における、各プログラム実行メ
モリ手段12の構成概念図である。データ等値化要求を
待機側プロセッサ装置MD2から受けた制御側プロセッ
サ装置MD1は、自身のデータ等値化手段14を使用し
て、自身のCPU装置13がプログラム実行メモリ手段
12の内容を、待機側プロセッサ装置MD2のプログラ
ム実行メモリ手段12の同じアドレスに、定周期の割り
込み処理によりコピーする。
【0025】ここで、データのコピー処理を一時期に全
て行おうとすると、制御側プロセッサ装置の通常処理に
支障を来す恐れがある。このため、立ち上げ時における
データコピー処理は、システムを動作させながら徐々に
行われる。この様なコピー処理の中で、データ転送が完
了するまでの間にシステムが動作して、自身のCPU装
置13がプログラム実行メモリ手段12に書き込んだ内
容(データ)は、データ等値化手段14によって、待機
側プロセッサ装置MD2のプログラム実行メモリ手段1
2の同じアドレスに等値化される。
【0026】システム立ち上げ時のこの様なデータコピ
ー処理が完了すると、2つのプロセッサ装置MD1,M
D2内の各プログラム実行メモリ手段12の内容は、同
じ(等値)になり、このタイミングで、制御側と待機側
の各プロセッサ装置を同一のアドレスから実行させるこ
とで、2つのプロセッサ装置は同期実行(FCS稼働)
を開始する(ST25,26,27)。なお、待機側プ
ロセッサ装置MD2でのI/O装置の初期化処理は、同
期実行を開始した後の稼働中に直ちに行われるものとす
る。
【0027】(同期実行時の動作)図6は、同期実行時
の動作を示す概念図である。この図において、120は
プログラム実行メモリ手段12に格納されているアプリ
ケーションソフトウェアを総括的に示したブロックであ
り、110はOS実行メモリ手段11に格納されている
OSを実行するカーネル処理実行部である。121はア
プリケーションソフトウェア120からのシステムコー
ルを受け付けるシステムコール受付部、122はOS内
のアプリケーションソフトウェア120の実行をコント
ロールするディスパッチャーである。111は2つのプ
ロセツサ装置間でのデータの送受信、およびI/O装置
15のアクセスを行うドライバで、アプリケーションソ
フトウェア120に代わって、カーネル処理実行部11
0(OS)から起動される。160は割り込み処理部
で、CPU装置13,I/O装置15,プロセッサ装置
間割り込み発生手段16からの割り込みを受付けて、そ
れらの割り込み処理を行うブロックを示している。
【0028】通常の動作において、アプリケーションソ
フトウェア120は、システムコール受付部121を介
して、OSの機能を使用しながら所定のアプリケーショ
ンを実行している。この様な動作の中で、アプリケーシ
ョンソフトウェア120がシステムコールを行うと、待
ち合わせ手段17が起動され、2つのプロセッサ装置M
D1,MD2の動作が同期するように待ち合わせ処理を
行う。
【0029】図7は、制御側と待機側とのそれぞれのプ
ロセッサ装置において、この様な待ち合わせ処理(同期
処理)をソフトウェアにより行う場合のフローチャート
である。制御側と待機側とでは、図示するように同様の
処理が並行して行われるもので、はじめに、自分のプロ
グラム実行メモリ手段12内において、同期処理を行う
ために用意されているメモリ領域(同期メモリ)に、デ
ータの書込みを行う。なお、この同期メモリ領域は、同
期を行う個所によりアドレスが異なるものとする。
【0030】次に相手プロセッサ装置のプログラム実行
メモリ手段12の同期メモリ(同じアドレス)の内容を
リードし、そこにデータが存在するか監視する。データ
が存在すると(データが書き込まれると)、その同期メ
モリをクリアし、今度は、自分の同期メモリの内容をリ
ードし、データが存在しなくなるまで(自身の同期メモ
リがクリアされるまで)待つ。
【0031】なお、この例では、待ち合わせ処理をソフ
トウェアにより実現したものであるが、例えば、同期個
所ごとに、同期処理のためのデータを転送するハードウ
ェアを設け、前述したと同様の動作を行うようにしても
よい。この様な待ち合わせ処理により、2つのプロセッ
サ装置内で実行されるアプリケーションソフトウェア1
20の実行に関して、同期がとれることになる。また、
ディスパッチャー122により複数のアプリケーション
の制御が可能であるが、この場合も、複数のアプリケー
ション間の制御に関して同期がとられる。
【0032】また、各プロセッサ装置に結合するI/O
装置15に関しても、各I/O装置をアクセスするドラ
イバ111(このドライバはカーネル処理実行部(O
S)110により起動される)で、同期をとることによ
り、制御側と待機側とのI/O処理に関して、同期をと
ることができる。この時、制御側のI/O装置15が取
り込んだ入力データに関しては、ドライバ111を経て
待機側に転送され、2つのプロセッサ装置間で入力デー
タに関する等値化が行える。
【0033】制御側プロセッサ装置において、I/O装
置15側から非同期で割り込みが発生した場合、OSに
よる割り込み処理部160の機能によりその割り込み処
理が行われるとともに、プロセツサ装置間割り込み発生
手段16は、待機側プロセッサ装置に対して疑似割り込
みを発生させる。OSがコールされると、待ち合わせ手
段17による待ち合わせが行われ、この割り込み処理の
同期がとられる。これにより、ドライバ111によるI
/O装置15へのアクセスのタイミングを合わせること
ができる。なお、CPU装置13内で発生する例外的割
り込みに関しては、制御側と待機側とで同時に同じアプ
リケーションソフトウェアが実行されているために、双
方で発生するはずであり、その割り込み処理が同期して
行われることとなる。
【0034】この様に、アプリケーションソフトウェア
120がシステムコールを行う毎に、また、ドライバが
起動され通信処理あるいはI/O装置をアクセスする処
理中で、待ち合わせ手段17による同期がとられること
となる。 (切替え時の処理)制御側のプロセッサ装置MD1は、
図示していないが公知の技術による自己診断機能を備え
ていて、自身の異常を検出すると待機側プロセッサ装置
MD2に対して、実行権の切替えの通知を行う。それま
で待機側にあったプロセッサ装置MD2は、この切替え
の通知を受け、制御側としての処理を継続する。この場
合の切替えは、それまで待機側にあったプロセッサ装置
が、プロセッサ装置MD1と同期して同じアプリケーシ
ョンソフトウェアを実行しているので、継続性を維持し
ながら引き継ぐことができる。なお、それまで待機側に
あったI/O装置による処理の継続性は、切り替えられ
る前の処理をリトライすることで維持することが可能と
なる。
【0035】(シングル運転時の処理)2つのプロセッ
サ装置が同期して動作している状態から、一方がダウン
したような場合に、他方のプロセッサ装置が制御側とな
って運転を行うシングル運転になる。この状態では、制
御権を有するプロセッサ装置は、他方がダウンしている
あるいは存在していない等の情報を受けて、待ち合わせ
手段17の機能を停止させ、同期処理を実行しないこと
で対応する。
【0036】次に、各種のシステム異常が発生した場合
の動作について説明する。システム異常が発生する場合
としては、各プロセッサ装置の電源が停電した場合、各
種ハードウェアの動作を監視するウォッチ・ドッグ・タ
イマがタイムアップした場合、CPU自身の自己診断に
より異常が検出された場合、同様にI/O装置に異常が
検出された場合などである。これらの場合には、2つの
プロセッサ装置の間で同期ずれが起きる可能性がある。
【0037】図8は、待機側プロセッサ装置MD2にお
いて、電源異常(ACfail)が発生した場合の切替
え動作を示すフローチャートである。この場合、待機側
プロセッサ装置MD2は、電源異常(ACfail)を
確認すると、システムダウン通知を制御側プロセッサ装
置MD1に送る(ST31,32)。その後、ACが復
活するのを待ち、ACが復活するとイニシャルスタート
する(ST33,34)。一方、制御側プロセッサ装置
MD1は、自身が制御側として正常な動作を継続してい
て、その途中で待機側プロセッサ装置MD2側からシス
テムダウンの通知を受けると、シングル運転に設定さ
れ、シングル運転として制御動作を継続する(ST35
〜37)。
【0038】図9は、制御側プロセッサ装置MD1にお
いて、電源異常(ACfail)が発生した場合の切替
え動作を示すフローチャートである。この場合、制御側
プロセッサ装置は、電源異常を検出すると待機側プロセ
ッサ装置に電源異常を示すACfail通知を行う(S
T41)。その後、現在稼働状態にあるI/O装置に対
してシャットダウン処理を行い、電源の復活を待つ(S
T42,43)。一定の時間が経過しても電源の復活が
無い場合、CPUレディ信号をオフとして、ダウンさせ
る(ST44,45)。電源が復活した場合は、待機側
プロセッサ装置に対して電源復活通知を行い、I/O装
置に対してリカバリー処理を行い、そのまま制御側とし
ての動作を継続する(ST46,47)。
【0039】待機側プロセッサ装置において、制御側プ
ロセッサ装置からACfail通知を受け取ると、制御
側プロセッサ装置がダウン状態になるか(CPUレディ
信号がオフとなるか)監視し、制御側がダウンした場
合、自分が制御側となり制御運転を開始する(ST5
1,52)。また、制御側プロセッサ装置側から、電源
復活通知を受けると、2つのプロセッサ装置の間では、
既に同期ずれが発生しているため再起動する(ST5
3)。
【0040】図10は、ウォッチ・ドッグ・タイマがタ
イムアップした場合の切替え動作を示すフローチャート
である。ハードウェア等の障害により制御側のみのウォ
ッチ・ドッグ・タイマがタイムアップした場合、制御側
のシステムダウンを受けて、それまで待機側となってい
たプロセッサ装置が制御側となり制御動作を引き継ぐこ
ととなる。
【0041】図11は、制御側プロセッサ装置で暴走も
しくは不可抗力によりシステムダウンした場合の切替え
動作を示すフローチャートである。この場合、制御プロ
セツサ装置は、CPUエラーが検知されたのを受けて自
らをシステムダウンとし、待機側プロセッサ装置は、こ
のシステムダウンをチェックして、自分が制御側となり
制御動作を引き継ぐこととなる。
【0042】図12は、制御側プロセッサ装置で、CP
U異常を検知した場合、CPU例外が発生し、同期が採
れなくなった場合、自己診断によりエラーが検出された
場合の切替え動作を示すフローチャートである。いずれ
の場合とも、制御側が自らをシステムダウンさせ、待機
側プロセッサ装置は、このシステムダウンを受けて、自
分が制御側となり制御動作を引き継ぐこととなる。
【0043】図13は、制御側プロセッサ装置に結合す
るI/O装置において、異常が発生した場合の切替え動
作を示すフローチャートである。この場合は、ドライバ
111により、I/O装置の切替えが行われ、制御側の
プロセッサ装置は待機側の状態を確認(CPUがレディ
状態にあることを確認)した後、自らをダウンさせる。
待機側プロセッサ装置において、制御側のダウンが検知
されると、待機側プロセッサ装置が自分が制御側となり
制御動作を引き継ぐこととなる。
【0044】
【発明の効果】本発明では、制御側プロセッサ装置で受
けた割り込みを待機側プロセッサ装置側にも行い、制御
側プロセッサ装置と待機側プロセッサ装置とで待ち合わ
せを行って割り込み処理の同期をとっている。また、制
御側プロセッサ装置が自身のプログラム実行メモリ手段
に書き込んだ内容を、待機側プロセッサ装置内のプログ
ラム実行メモリ手段の同じアドレスにコピーしている。
これによって、制御側がダウンしたような場合における
待機側プロセッサ装置への制御動作の切替えを、継続性
を維持しながら即座に行うことができる。
【0045】また、アプリケーションプログラムがシス
テムコールをすると、待ち合わせ手段が動作して2つの
プロセッサを同期させるための待ち合わせを行ってい
る。これによって、二重化構成としたプロセッサ装置に
おいて、オペレーティングシステム(OS)の管理下で
動作するアプリケーションソフトウェアに、二重化の意
識をさせることなく、二重化切替え制御のための構成が
簡単で、信頼性の高い二重化プロセッサ装置を実現でき
る。
【図面の簡単な説明】
【図1】本発明に係わる装置の基本的な機能を示す機能
ブロック図である。
【図2】本発明の一実施例のハードウェアを示す構成ブ
ロック図である。
【図3】システム立ち上げ時の動作を示すフローチャー
トである。
【図4】システム立ち上げ時の動作を示すフローチャー
トである。
【図5】システム立ち上げ時における各プログラム実行
メモリ手段の構成概念図である。
【図6】同期実行時の動作を示す概念図である。
【図7】制御側と待機側とのそれぞれのプロセッサ装置
において行われる待ち合わせ処理(同期処理)の動作を
示すフローチャートである。
【図8】待機側プロセッサ装置において電源異常が発生
した場合の切替え動作を示すフローチャートである。
【図9】制御側プロセッサ装置において電源異常が発生
した場合の切替え動作を示すフローチャートである。
【図10】ウォッチ・ドッグ・タイマがタイムアップし
た場合の切替え動作を示すフローチャートである。
【図11】制御側プロセッサ装置で暴走もしくは不可抗
力によりシステムダウンした場合の切替え動作を示すフ
ローチャートである。
【図12】制御側プロセッサ装置で、CPU異常を検知
した場合、CPU例外が発生し、同期が採れなくなった
場合、自己診断によりエラーが検出された場合の切替え
動作を示すフローチャートである。
【図13】I/O装置において異常が発生した場合の切
替え動作を示すフローチャートである。
【符号の説明】
MD1,MD2 プロセッサ装置 SB システムバス 11 OS実行メモリ手段 12 プログラム実行メモリ手段 13 CPU装置 14 データ等値化手段 15 入出力装置(I/O装置) 16 プロセス装置間割り込み発生手段 17 待ち合わせ手段である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 松田 年彦 東京都武蔵野市中町2丁目9番32号 横 河電機株式会社内 審査官 浜岸 広明 (56)参考文献 特開 昭57−86968(JP,A) 特開 昭52−48445(JP,A) 特開 平1−258057(JP,A) 特開 平2−202638(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 11/16 - 11/20 G06F 15/16 - 15/177 G06F 9/46

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】単体で実行可能な2つのプロセッサ装置を
    システムバスで結合し、一方のプロセッサ装置が実作業
    に関与する制御側になり、他方のプロセッサ装置が実作
    業に関与しない待機側になっている二重化プロセッサ装
    置であって、 各プロセッサ装置に、 オペレーティングシステムを格納したOS実行メモリ手
    段と、 オペレーティングシステムの機能を使用(システムコー
    ル)しながら動作するアプリケーションプログラムを格
    納したプログラム実行メモリ手段と、 前記各メモリに格納されているプログラムに従って動作
    するCPU装置と、 自身が実作業に関与しているとき制御側プロセッサ装置
    が自身のプログラム実行メモリ手段に書き込んだ内容
    を、待機側プロセッサ装置内のプログラム実行メモリ手
    段の同じアドレスにコピーするデータ等値化手段と、 自身が実作業に関与しているとき受けた割り込みを待機
    状態にある相手のプロセッサ装置側に行うプロセス装置
    間割り込み発生手段と、 前記アプリケーションプログラムがシステムコールを行
    った際制御側プロセッサ装置と待機側プロセッサ装置と
    でその動作が同期するように待ち合わせを行って割り込
    み処理の同期をとる待ち合わせ手段とを備え、制御側プロセッサ装置及 び待機側プロセッサ装置の待ち
    合わせ手段は、アプリケーションプログラムがシステム
    コールする毎に、自分側のプログラム実行メモリ手段の
    指定したアドレスにデータを書き込み、次に相手側のプ
    ログラム実行メモリ手段の同じアドレスをチェックし
    て、何らかのデータが相手側プロセッサ装置から書き込
    まれるまで待ち合わせを行い、書き込まれたのを確認す
    ると、相手側のプログラム実行メモリ手段のデータをク
    リアし、続いて、自分側のプログラム実行メモリ手段の
    データがクリアされるまで待つ待ち合わせ動作を行うこ
    とを特徴とする二重化プロセッサ装置。
  2. 【請求項2】待機側プロセッサ装置は、制御側のプロセ
    ス装置間割り込み発生手段による割り込みを受けると、
    待機側のCPU装置に対して、疑似的な割り込みを発生
    し、制御側と同様の割り込み処理を待機側で行うことを
    特徴とする請求項1記載の二重化プロセッサ装置。
JP01374893A 1993-01-29 1993-01-29 二重化プロセッサ装置 Expired - Fee Related JP3332098B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP01374893A JP3332098B2 (ja) 1993-01-29 1993-01-29 二重化プロセッサ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01374893A JP3332098B2 (ja) 1993-01-29 1993-01-29 二重化プロセッサ装置

Publications (2)

Publication Number Publication Date
JPH06230995A JPH06230995A (ja) 1994-08-19
JP3332098B2 true JP3332098B2 (ja) 2002-10-07

Family

ID=11841877

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01374893A Expired - Fee Related JP3332098B2 (ja) 1993-01-29 1993-01-29 二重化プロセッサ装置

Country Status (1)

Country Link
JP (1) JP3332098B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003296133A (ja) * 2002-04-05 2003-10-17 Fuji Electric Co Ltd コントローラ
JP4899615B2 (ja) * 2006-04-28 2012-03-21 株式会社明電舎 二重化プログラマブルコントローラの等値化方式
JP4819644B2 (ja) 2006-10-12 2011-11-24 株式会社日立製作所 情報処理システム、情報処理方法、情報処理装置
JP5268469B2 (ja) * 2008-07-23 2013-08-21 株式会社東芝 高可用システム及び実行状態制御方法

Also Published As

Publication number Publication date
JPH06230995A (ja) 1994-08-19

Similar Documents

Publication Publication Date Title
JP2505928B2 (ja) フォ―ルト・トレラント・システムのためのチェックポイント機構
US4941087A (en) System for bumpless changeover between active units and backup units by establishing rollback points and logging write and read operations
US5896523A (en) Loosely-coupled, synchronized execution
JP3156083B2 (ja) フォルトトレラント・コンピュータ装置
JPH07117903B2 (ja) 障害回復方法
JPH07306794A (ja) 分散システム及び分散システムの高信頼化方法
JPH0973436A (ja) 多重化計算機における動作モード切替方式
JPH06230995A (ja) 二重化プロセッサ装置
JPH06242979A (ja) 二重化コンピュータ装置
JP3536293B2 (ja) 二重化コンピュータ装置
JP2823230B2 (ja) 処理の継続実行方法
JP2693627B2 (ja) プログラマブルコントローラの二重化システム
JPH08287030A (ja) 多重系計算機システムの自動再起動装置および方法
KR19990050460A (ko) 고 가용성 시스템의 장애 복구방법 및 장치
JPH07200334A (ja) 二重化同期運転方式
JP2879480B2 (ja) 冗長計算機システムの同期外れ時の切替方式
JP2871372B2 (ja) 二重化プロセッサ装置
JP2985188B2 (ja) 二重化計算機システム
JP3470454B2 (ja) マルチプロセッサシステムの通信制御方法
JPS62212865A (ja) マルチプロセツサ制御方式
JP3903688B2 (ja) バンク切替システム
JP3102381B2 (ja) タスクデバッグ装置、タスクデバッグ方法及びその記録媒体
JPH04171539A (ja) 二重化計算機システム
JPH05233576A (ja) 二重システム
JPH08329026A (ja) 2重化プロセッサシステム

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080726

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090726

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100726

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110726

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110726

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120726

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees