(57)【特許請求の範囲】
【請求項１】
少なくとも１台の電源装置と該電源装置により駆動されるＣＰＵ装置をそれぞれ含んでなる実行系と待機系とからなる多重化システムにおいて、
前記各系のＣＰＵ装置は、少なくとも相手系電源の状態を監視する他系監視部を備え、
前記各系の電源装置は、ＡＣ入力を遮断する電源遮断スイッチと、該電源遮断スイッチを手動操作する電源スイッチと、前記電源遮断スイッチの遮断を阻止する電源保護部とを備え、
前記他系監視部は、自系電源のリセットまたは保護の制御指令が登録されるコントロールレジスタと、自系停電予告信号状態および相手系停電予告信号状態が登録されるステータスレジスタとを含み、
前記電源保護部は、前記相手系電源が切れている時には前記電源スイッチの操作による自系の前記電源遮断スイッチの遮断を阻止し、前記電源スイッチによる自系の前記電源遮断スイッチが遮断操作されたこと、相手系停電予告信号が出力されていないこと、および前記コントロールレジスタにリセット指令が登録されていることが全て満たされたときに、前記電源遮断スイッチの遮断を許容することを特徴とする多重化システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、実行系および待機系を有する多重化システムに係り、特に、実行系から待機系に共有データを転送して、待機系が共有データのパターンをチェックし、系を相互に監視し健全性を確認する多重化システムの制御に関する。
【背景技術】
【０００２】
実行系および待機系を有する従来の二重化システムにおいては、実行系の電源断時に、電源が正常に動作している待機系に系を切替え、待機系からの指示や指令により、プラントまたは制御対象への運転，監視動作を継続していた。
【０００３】
また、ローカルメモリの一部を共有メモリとして割り当て、実行系ＣＰＵ装置が、共有メモリに書き込むデータを専用一致化バス(ＤＣＭバス)を経由して待機系ＣＰＵ装置に転送し、両系の共有データを一致化する二重化システムの一致化方式を利用して、待機系のＣＰＵ装置が、実行系ＣＰＵ装置の共有メモリ内データパターンをチェックし、互いに健全性をチェックしていた。
【０００４】
待機系ＣＰＵ装置が、実行系の健全性をチェックする手段として、待機系のソフトウエアが、実行系ＣＰＵ装置に対して共有データを転送するように転送要求信号を発行し、実行系共有メモリ内のデータパターンを取得していた。これらのソフトウエアによる転送要求は、データ取得の必要に応じてなされている。
【０００５】
さらに、実行系の停電時または電源スイッチ操作による電源遮断時に、停電予告信号(ＰＯＰ信号)に基づいて生成するメモリ保護要求信号に応じて、メモリバスを電気的に切離し、外部リフレッシュ制御部が、セルフリフレッシュ動作を起動し、メモリをバックアップするメモリ内容保持方式がある。
【０００６】
この方式では、停電時に、実行系ＣＰＵ装置が、ローカルメモリのデータバックアップ処理および停電処理を実行し、実行系の電源装置からの停電信号(ＰＡＶＬ信号)が、ＤＣＭ制御部の動作を停止させてＤＣＭバスを電気的に切離すまでは、ＤＣＭバスを経由する待機系からの転送要求に応じて、共有メモリ内データを待機系ＣＰＵ装置に転送する動作を継続する。
【０００７】
なお、停電時の二重化システムの停電処理に関する技術としては、実行系プロセッサが、実行系電源断による停電予告信号出力に基づいて、割り込み処理として停電処理を実行し、内部レジスタ情報を含む共有データを待機系に転送するとともに、実行系を停止状態に遷移させる方式が提案されている(例えば、特許文献１参照)。しかし、電源スイッチ操作ミスによる両系電源ダウン対策を示していない。
【０００８】
また、実行系ＣＰＵ装置が、共有メモリに書き込むデータをＤＣＭバスを経由して待機系ＣＰＵ装置に転送し、両系の共有データを一致化する二重化システムの一致化方式も提案されている(例えば、特許文献２参照)。
【０００９】
【特許文献１】特開平６−３１８１６０号公報  (第４〜５頁  図１)
【特許文献２】特開平９−３０５４２４号公報  (第４〜５頁  図１〜図３)
【発明の開示】
【発明が解決しようとする課題】
【００１０】
図８は、従来の二重化システムにおけるＣＰＵ装置１００の内部構成を示すブロック図である。二重化システムの実行系ＣＰＵ装置１００は、プログラムやデータを格納するローカルメモリ１１０と、待機系へのデータ転送を制御するバッファ１２２を備えるＤＣＭ制御部１２０と、実行系ＣＰＵ装置１００と待機系ＣＰＵ装置２００とを接続する共通バスであるＤＣＭバス３００と、ローカルメモリ１１０とＤＣＭ制御部１２０とを接続するメモリバス１１２と、電源装置０１０からの停電予告信号０１１に基づいてメモリバス１１２を接続／遮断する指令信号を出力するタイミング生成回路１４０と、停電時にメモリバス１１２を切離した後にＤＲＡＭ，ＳＤＲＡＭなどのローカルメモリ１１０のバックアップ手段としてセルフリフレッシュ動作を制御する外部リフレッシュ制御部１６０と、ＣＰＵ装置１００内部への各指令および制御動作を実行するプロセッサ１５０とから構成される。
【００１１】
プロセッサ１５０は、ＣＰＵ装置１００内のローカルメモリ１１０全エリアに対して、読み出し／書き込みできる。
【００１２】
待機系ＣＰＵ装置２００は、ローカルメモリ１１０内の一部エリアに対して、プロセッサ１５０を介さず、ＤＣＭバス３００およびＤＣＭ制御部１２０を経由して、データの読み出し／書き込みができる。
【００１３】
ローカルメモリ１１０は、メモリの一部の領域を上限アドレス，下限アドレス値として設定した後、プロセッサ１５０から本領域すなわち共有メモリ１１１に書き込むと、ＤＣＭ制御部１２０のバッファ１２２にデータが格納され、ＤＣＭ制御部１２０は、格納されたデータを待機系のＣＰＵ装置２００に転送し、両系の共有メモリ１１１内のデータを一致化させる機能を備えている。
【００１４】
図９は、従来の二重化システムにおける停電後の動作タイミングを示すタイミングチャートである。
【００１５】
実行系停電時の電源断に伴いＡＣ入力０１３が断たれた後、実行系電源装置０１０は、停電予告信号０１１をＣＰＵ装置１００に出力し、一定時間後に停電信号０１２を出力する。停電信号０１２出力までは、電源装置０１０内のコンデンサに蓄えられている電荷でＣＰＵ装置１００に対して電源を供給できるが、停電信号０１２出力後は、電源装置０１０からの電源電圧が低下するため、しばらくすると、ＣＰＵ装置１００に電源を供給できなくなり、動作不可能となる。
【００１６】
ＣＰＵ装置１００が、停電予告信号０１１を検出すると、タイミング生成回路１４０は、一定時間後にメモリ保護要求信号１４１を出力する。メモリ保護要求信号１４１により、ＤＣＭ制御部１２０とローカルメモリ１１０とを接続するメモリバス１１２を電気的に切離し、外部リフレッシュ制御部１６０に接続を切替える。
【００１７】
外部リフレッシュ制御部１６０は、切替え後、セルフリフレッシュ動作を起動し、ローカルメモリ１１０内の内容保持動作を実行する。また、プロセッサ１５０は、停電予告信号０１１を割り込み信号として受信すると、停止処理する。
【００１８】
さらに、一定時間後にＣＰＵ装置１００は、停電信号０１２を検出すると、ＤＣＭ制御部１２０内の切替えスイッチをＯＦＦし、ＤＣＭ制御部１２０とＤＣＭバス３００とを切離す。
【００１９】
ＤＣＭバス３００切離し後は、待機系ＣＰＵ装置２００と電気的に遮断されることになり、待機系への共有メモリ１１１内データ転送は、不可能となる。
【００２０】
共有メモリ１１１内のデータの転送方式には、２つの方式がある。第一の方式は、ローカルメモリ１１０内の共有メモリ１１１に実行系ＣＰＵ装置１００プロセッサ１５０が、ソフトウエア処理内容に基づき、データを書き込んだ場合に、待機系に対して書き込んだデータを転送する方式である。第二の方式は、実行系ＣＰＵ装置１００のＤＣＭ制御部１２０が、他系ＣＰＵ装置２００からＤＣＭバス３００を経由して転送要求信号３０１または転送要求パターン３０１を受信した場合に、実行系ローカルメモリ１１０の共有メモリ１１１内データを待機系に転送する方式である。
【００２１】
第二の方式については、待機系ＣＰＵ装置２００のソフトウエアは、実行系ＣＰＵ装置１００の共有メモリ１１１内データ取得のために転送要求信号３０１(またはデータパターン)を発行し、ＤＣＭ制御部１２０が、転送要求信号３０１を受信すると、マスタ動作となり、ローカルメモリ１１０内の共有メモリ１１１内のデータを読み込み、読み込んだデータをＤＣＭバス３００経由で待機系に転送して書き込む。
【００２２】
しかし、この従来方式では、実行系電源装置０１０が遮断された後に、待機系電源装置０２０が遮断された場合に、両系電源ダウンとなり、プラントまたは制御対象への運転を停止させてしまうという問題があった。
【００２３】
また、待機系のＣＰＵ装置２００のソフトウエア処理が、実行系電源装置０１０の停電予告信号０１１を監視していた場合、停電予告信号０１１の検出に基づいて転送要求信号３０１を発行することを止める方式を採用しても、発行周期やタイミングによっては、メモリバス１１２切離しによる不定データ期間中に、待機系ＣＰＵ装置２００から転送要求信号３０１が重なり、実行系ＤＣＭ制御部１２０が共有メモリ１１１への読み出し動作を実行するため、不定データを待機系ＣＰＵ装置２００に転送してしまうという問題があった。
【００２４】
さらに、実行系ＣＰＵ装置１００のプロセッサ１５０は、停電予告信号０１１を割り込み信号として受信した時に、割り込み処理(停止処理)を実行するため、割り込み処理発生で制御処理能力低下などによる影響を招くので、その改善が求められている。
【００２５】
このように、従来の実行系における停電を原因とする電源遮断時に、待機系の電源が正常な場合は、制御を正常に引き継ぎできるが、待機系の電源が遮断されている場合には、両系の電源がオフするため、両系電源ダウンとなり、制御を継続できなくなってしまう。
【００２６】
これらのケースは、電源スイッチ操作ミスにより発生する可能性もある。
【００２７】
また、実行系電源装置が停電信号によってＤＣＭバスを遮断する前のタイミングに、不定データ期間が存在する。この期間は、メモリ保護要求信号によりメモリバスを切離すと発生する。この期間中に、待機系ＣＰＵ装置からの共有メモリ内データ取得のための転送要求タイミングと、実行系ＣＰＵ装置内の前記不定データ期間とが、重なった場合、実行系の不定データを待機系ＣＰＵ装置に転送する。その結果、待機系ＣＰＵ装置は、誤ったデータパターンを受け取り、一致化データの不整合によるエラーと誤検出してしまう。
【００２８】
待機系が実行系の停電予告信号を監視する手段を採用しても、待機系のソフトウエア処理が、停電予告信号を検出したタイミングに基づいて転送要求を発行すると、不定データ期間との重なりを完全に回避することが困難であり、それらを解決する方式が必要である。
【００２９】
本発明が解決しようとする課題は、一方の系の電源遮断時に、他方の系の電源スイッチの操作ミスなどにより、多重化システムの全系の電源がダウンするという問題を回避することにある。
【課題を解決するための手段】
【００３１】
本発明は、上記目的を達成するために、少なくとも１台の電源装置と該電源装置により駆動されるＣＰＵ装置をそれぞれ含んでなる実行系と待機系とからなる多重化システムにおいて、各系のＣＰＵ装置は、少なくとも相手系電源の状態を監視する他系監視部を備え、各系の電源装置は、ＡＣ入力を遮断する電源遮断スイッチと、該電源遮断スイッチを手動操作する電源スイッチと、電源遮断スイッチの遮断を阻止する電源保護部とを備え、前記電源保護部は、前記相手系電源が切れている時には電源スイッチの操作による自系の前記電源遮断スイッチの遮断を阻止することを特徴とする。
【００３２】
上記の場合において、他系監視部は、自系電源のリセットまたは保護の制御指令が登録されるコントロールレジスタと、自系停電予告信号状態および相手系停電予告信号状態が登録されるステータスレジスタとを含み、電源保護部は、電源スイッチによる自系の電源遮断スイッチの遮断操作されたこと、相手系停電予告信号が出力されていないこと、および記コントロールレジスタにリセット指令が登録されていることが全て満たされたときに、電源遮断スイッチの遮断を許容するようにすることができる。
【００３９】
本発明によれば、多重化システムのそれぞれの系に電源を有し、実行系の電源装置の電源が遮断された状態で待機系に切替えようとする場合に、待機系の電源スイッチにより待機系の電源が遮断されないように保護する機構を備えたので、操作ミスや人為的ミスなどによる全系の同時電源ダウンを防止できる。
【００４０】
また、ソフトウエア処理により電源状態を監視し、停電予告状態を検出したらＣＰＵ装置内部を調停し、電源リセットおよび保護を制御ができるので、従来の割り込み方式と比較して、ソフトウエア処理を優先し、通常の制御処理への影響をなくすることができる。
【発明の効果】
【００４３】
本発明によれば、一方の系の電源遮断時に、他方の系の電源スイッチの操作ミスなどにより、多重化システムの全系の電源がダウンするという問題を回避することができる。
【発明を実施するための最良の形態】
【００４７】
次に、図１ないし図７を参照して、本発明による多重化システムの実施例を説明する。
【００４８】
ここでは二重化システムを例として本発明を説明するが、本発明は、三重化以上の多重化システムにおいても有効である。その場合に、二重化システムにおける両系電源ダウン事象は、全系電源ダウン事象ということになる。
【００４９】
また、各系の電源装置は、多重化されていてもよい。すなわち、実行系または待機系のいずれの系も、複数台の電源装置を含んでいる場合がある。
【実施例１】
【００５０】
図１は、本発明による二重化システムの実施例の全体構成を示す系統図である。図２は、本発明による二重化システムの実施例１における電源装置０１０およびＣＰＵ装置１００の内部構成を示すブロック図である。二重化システムの実行系ＣＰＵ装置１００は、プログラムやデータを格納するローカルメモリ１１０と、待機系へのデータ転送を制御するバッファ１２２を備えるＤＣＭ制御部１２０と、実行系ＣＰＵ装置１００と待機系ＣＰＵ装置２００とを接続する共通バスであるＤＣＭバス３００と、ローカルメモリ１１０とＤＣＭ制御部１２０とを接続するメモリバス１１２と、電源装置０１０からの停電予告信号０１１に基づいてメモリバス１１２を接続／遮断する指令信号を出力するタイミング生成回路１４０と、停電時にメモリバス１１２を切離した後にＤＲＡＭ，ＳＤＲＡＭなどのローカルメモリ１１０のバックアップ手段としてセルフリフレッシュ動作を制御する外部リフレッシュ制御部１６０と、ＣＰＵ装置１００内部への各指令および制御動作を実行するプロセッサ１５０とから構成される。
【００５１】
プロセッサ１５０は、ＣＰＵ装置１００内のローカルメモリ１１０全エリアに対して、読み出し／書き込みできる。
【００５２】
待機系ＣＰＵ装置２００は、ローカルメモリ１１０内の一部エリアに対して、プロセッサ１５０を介さず、ＤＣＭバス３００およびＤＣＭ制御部１２０を経由して、データの読み出し／書き込みができる。
【００５３】
ローカルメモリ１１０は、メモリの一部の領域を上限アドレス，下限アドレス値として設定した後、プロセッサ１５０から本領域すなわち共有メモリ１１１に書き込むと、ＤＣＭ制御部１２０のバッファ１２２にデータが格納され、ＤＣＭ制御部１２０は、格納されたデータを待機系のＣＰＵ装置２００に転送し、両系の共有メモリ１１１内のデータを一致化させる機能を備えている。
【００５４】
本実施例１の電源装置０１０の構成および出力信号(停電予告信号０１１，停電信号０１２)の出力タイミングや、ＣＰＵ装置１００内の基本的構成は、図８の従来回路とかなり共通している。
【００５５】
しかし、本実施例１は、ＤＣＭ制御部１２０内に他系監視部１２１を追加して設置し、電源装置０１０内に電源保護部０１５を新たに設けた点が、従来と大きく異なる。
【００５６】
他系監視部１２１は、自系電源装置０１０を制御するコントロールレジスタ１２４と、自系停電予告信号０１１状態(自系ＰＯＰ)および相手系停電予告信号０２１状態(相手系ＰＯＰ)が反映されるステータスレジスタ１２５とからなり、それらは、ＣＰＵ装置１００のソフトウエア処理に基づくプロセッサ１５０からの指示により操作される。
【００５７】
電源装置０１０内に電源保護部０１５は、手動操作される電源スイッチ０１４と相手系停電予告信号０２１と他系監視部１２１からの電源保護制御信号との論理積を演算するＡＮＤ回路０１９と、ＡＮＤ回路１９の出力に応じてＡＣ入力０１３を遮断する電源遮断スイッチ０１７と、電荷を保持するコンデンサ１８とを含んでおり、定常状態において、ＣＰＵ装置１００に電源電圧ＶCC０１６を供給する。
【００５８】
したがって、自系(実行系)の電源スイッチ０１４の操作などによる電源断時においても、待機系電源装置０２０の電源遮断を防ぎ、両系電源ダウンを防止できる。
【００５９】
実行系ＣＰＵ装置１００のソフトウエアは、他系監視部１２１内のステータスレジスタ１２５を監視する。例えば、実行系電源装置０１０の電源スイッチ０１４を押して電源を遮断する時、待機系電源装置０２０の電源が、生きている状態の場合、他系監視部１２１のステータスレジスタ１２５においては、実行系ＰＯＰ＝‘ＯＦＦ’待機系ＰＯＰ＝‘ＯＮ’となり、ソフトウエアがこの状態を検出した場合には、実行系電源断処理に入る。
【００６０】
具体的には、コントロールレジスタ１２４に対してソフトウエアが、自系電源ＣＴＬ＝‘リセット’と設定すると、電源保護制御信号１２６が‘Ｈ’となり、相手系停電予告信号０２１が、ＯＦＦ(待機系電源正常)であるから、ＡＮＤ回路０１９により電源遮断スイッチ０１７が、切離される。
【００６１】
結果として、ＡＣ入力０１３に基づいて生成される電源電圧ＶCC０１６が、コンデンサ０１８の放電後に供給されなくなり、電源が完全に遮断されたことになる。
【００６２】
これに対して、待機系の電源が切れている時に実行系電源を遮断しようとしても、ＡＮＤ回路０１９においてＡＮＤ条件が成立しないので、ハードウエア的に電源遮断スイッチ０１７が切離されなくなり、実行系の電源スイッチ０１４を切ろうとしても、電源電圧ＶCC０１６は、供給され続ける。
【００６３】
待機系ＣＰＵ装置２００のソフトウエアは、同様に他系監視部２２１を監視し、上記状態において、ステータスレジスタ２２５が、待機系ＰＯＰ＝‘ＯＮ’実行系ＰＯＰ＝‘ＯＦＦ’であると検出した場合には、待機系電源保護処理に入る。
【００６４】
具体的には、コントロールレジスタ２２４に対してソフトウエアが、自系電源ＣＴＬ＝‘保護’と設定すると、電源保護制御信号２２６が‘Ｌ’となり、相手系電源予告信号０１１が、ＯＮ(実行系電源断)であるから、ＡＮＤ回路０２９により電源遮断スイッチ０２７が、保護され、電源遮断スイッチ０２７が、ハードウエア的に切離されることはない。したがって、待機系の電源電圧ＶCC０２６は、供給され続ける。
【００６５】
本実施例１によれば、両系に対する電源断状態の監視および自系電源装置に対するリセット／保護指示を実行でき、ソフトウエア的にＣＰＵ装置内部を調停しながら、実行系の電源遮断時に、二重化システムの両系電源ダウンを回避するために、待機系の電源が誤って遮断されないように電源を保護することができる。
【００６６】
片系電源が、遮断されている場合にもう片系の電源を切ることは、両系電源ダウンにつながり、システムの停止を招き重大な事故を発生させるおそれがあるが、本発明により電源装置内部に設けた保護機構によりハードウエア的にＡＣ入力が、電源スイッチの手動操作などにより遮断されることがなくなり、人為的なミスによるシステムダウンを防止できる。
【実施例２】
【００６７】
図３は、本発明による二重化システムの実施例２におけるＣＰＵ装置１００の内部構成を示すブロック図である。
【００６８】
他系監視部１２１の内部構成は、基本的には実施例１と同じであるが、待機系ＣＰＵ装置２００からの転送要求信号３０１と動作状態とを監視する手段を備えている点が、異なる。したがって、従来問題となっていた不定データ期間中に待機系から転送要求信号３０１を受信した場合に不定データを転送してしまうことをハードウエア的に防止できる。
【００６９】
図４は、本発明による二重化システムの実施例２における停電後の動作タイミングを示すタイミングチャートである。図５は、本発明による二重化システムの実施例２における停電後の他系監視部の処理手順を示すフローチャートである。
【００７０】
図３，図４，図５を参照して、実行系の電源断時におけるＤＣＭ制御部１２０内の他系監視部１２１の動作を説明する。
【００７１】
(Ａ)  停電によりＡＣ入力０１３が断たれた後、実行系ＣＰＵ装置１００のソフトウエアは、電源装置０１０からの停電予告信号０１１の状態を監視する。実行系ＣＰＵ装置１００のソフトウエアは、停電予告信号０１１を検出した場合、他系監視部１２１内の自系電源制御指令を発行し、他系監視部１２１は、以下の動作を実行する。
【００７２】
(Ｂ)  ＤＣＭ制御部１２０内の他系監視部１２１は、待機系ＣＰＵ装置２００のソフトウエア処理により発行されてＤＣＭバス３００上でなされるＤＣＭアクセスをハードウエア的に監視する。
【００７３】
もし、待機系からの転送要求に基づき待機系へのデータ転送がなされていると判断した場合は、転送(アクセスサイクル)が終了するまで待機し、転送(アクセスサイクル)が終了したことを検出した時点で、電源装置０１０への電源リセット指令信号を電源装置０１０に出力すると同時に、電源保護制御信号１２６をタイミング生成回路１４０に出力する。
【００７４】
ただし、プロセッサ１５０が、停電予告信号０１１の検出から電源保護制御信号１２６を出力するまでには、一定時間の間隔を必要とする。
【００７５】
ＣＰＵ装置１００のプロセッサ１５０が、実行系電源断を検出した場合に、停電処理(停止／退避処理)を実行するようなシステムにおいては、停電予告信号０１１検出後にメモリにアクセスする必要があるからである。
【００７６】
具体的には、停電時にプロセッサ１５０内のレジスタ値およびキャッシュ内データなどをローカルメモリ１１０に退避させたり、ＣＰＵ装置１００以外のＩ／Ｏからの停電処理によるメモリアクセス，共有メモリ１１１へのいわゆる死に様情報などのデータの書き込み，待機系ＣＰＵ装置２００への転送報告処理などが発生するので、これらの処理を確実に実行するためにメモリバス１１２を切離すまで、ある一定の処理時間が必要となるからである。
【００７７】
本実施例２では、これらのタイミング管理をするために、他系監視部１２１内には、タイマユニットを備え、タイマユニットにより計測した時間以降に電源保護制御信号１２６を出力するように制御する手段を備えた。
【００７８】
ここで設定する時間は、ソフトウエアの処理時間に依存し、ハードウエア側とソフトウエア側間との約束で定める。ソフトウエアの処理としては、必ず停電，退避処理をこの時間内に完了していなければならない。
【００７９】
(Ｃ)  タイミング生成回路１４０は、停電予告信号０１１入力後に電源保護制御信号１２６を検出すると、メモリ保護要求信号１４１を出力し、メモリバス１１２を切離し、外部リフレッシュ制御部１６０によるリフレッシュ動作に移行させる。
【００８０】
この時点までには、共有メモリ１１１への書き込みによる一致化動作は、停止させているが、ＤＣＭ制御部１２０内のバッファ１２２には、待機系ＣＰＵ装置２００に転送すべきデータが存在するために、それ以降は、ＤＣＭ制御部１２０が、これらのデータを電源装置０１１からの停電信号０１２出力のタイミングまで継続して一致化させる。
【００８１】
(Ｄ)  (Ｃ)以降のタイミングで待機系のソフトウエア処理による転送要求信号３０１を受信した場合は、ＤＣＭ制御部１２０内の他系監視部１２１は、待機系ＣＰＵ装置２００に対して、実行系が停電による不定期間中であることを示す応答コマンドを発行する。
【００８２】
したがって、待機系のＣＰＵ装置２００は、要求した転送アクセスが、不定データ期間中になされたと判断し、そのアクセスを中断する。
【００８３】
待機系ＣＰＵ装置２００が、エラーコマンドを受信した後のエラー処理については、上位プロセッサにエラーを報告するなど手順が考えられるが、本発明は、その手順には限定されない。
【００８４】
また、本実施例２では、停電時の応答手順について説明したが、本発明は、停電時の動作に限定されない。計画切替えによる応答手段についても、同様に、実行系が切替え中であることを示す応答コマンドを待機系ＣＰＵ装置２００に報告すると、待機系ＣＰＵ装置２００は、その応答結果に基づいて実行系の状態を判断し、そのアクセスを中断させる。
【００８５】
(Ｅ)  ＤＣＭ制御部１２０内の他系監視部１２１が、電源装置０１０からの停電信号０１２を検出した後、ＤＣＭバス３００を切離す指令を出力する。したがって、ＤＣＭ制御部１２０は、待機系のＣＰＵ装置２００と完全に切離す状態とする。
【００８６】
本実施例２においては、待機系からの転送要求によるデータ転送アクセスの途中でメモリバス１１２を切離さないように、電源保護制御信号１２６をタイミング生成回路１４０に出力し、アクセス終了時点でメモリバス１１２を外部リフレッシュ制御部１６０に切替え、リフレッシュ動作を実施する手段と、実施例１のように両系電源断を防止する手段と、メモリバス１１２切離し後にＤＣＭ制御部１２０内のバッファ１２２に格納されるデータのみを転送し、他系ＣＰＵ装置２００から発行される転送要求信号３０１を不定データ期間中に受信した場合には、エラーコマンドで応答し、実行系ＣＰＵ装置１００が、不定データ期間中であることを待機系ＣＰＵ装置２００に報告する手段を設けたので、実行系電源断が発生した場合に、待機系電源装置０２０を電源遮断から保護し、両系電源ダウンを防止できる。
【００８７】
さらに、待機系ＣＰＵ装置２００のソフトウエアが、メモリバス１１２切離し期間中に、共有メモリ１１１内のデータ転送要求を出した場合でも、待機系ＣＰＵ装置２００が、実行系ＣＰＵ装置１００からエラー応答を受信すると、待機系ＣＰＵ装置２００への不定データの転送をハードウエア的に防止できる。
【００８８】
従来方式のような割り込みを使用せず、ソフトウエアが、他系監視部１２１のステータスレジスタを読み出し、電源断を判定するので、ソフトウエア処理を優先し、制御処理に対する影響を少なくできる。
【実施例３】
【００８９】
図３は、本発明による二重化システムの実施例３におけるＣＰＵ装置１００の内部構成を示すブロック図である。
【００９０】
他系監視部１２１の内部構成は、基本的には実施例１と同じであるが、待機系ＣＰＵ装置２００からの転送要求信号３０１と動作状態とを監視する機能を備えている点が、異なる。したがって、従来方式で問題となっていた不定データ期間中に待機系から転送要求信号３０１を受信した場合に不定データを転送してしまうことをハードウエア的に防止できる。
【００９１】
図６は、本発明による二重化システムの実施例３における停電後の動作タイミングを示すタイミングチャートである。図７は、本発明による二重化システムの実施例３における停電後の他系監視部の処理手順を示すフローチャートである。
【００９２】
図３，図６，図７を参照して、実行系の電源断時におけるＤＣＭ制御部１２０内の他系監視部１２１の動作を説明する。
【００９３】
(Ａ)  停電によるＡＣ入力０１３が断たれた後、実行系ＣＰＵ装置１００のソフトウエアは、電源装置０１０からの停電予告信号０１１の状態を監視する。実行系ＣＰＵ装置１００のソフトウエアは、停電予告信号０１１を検出した場合、他系監視部１２１内の自系電源制御指令を発行し、他系監視部１２１は、以下のように動作する。
【００９４】
(Ｂ)  ＤＣＭ制御部１２０内の他系監視部１２１は、待機系ＣＰＵ装置２００のソフトウエア処理により発行されてＤＣＭバス３００上でなされるＤＣＭアクセスをハードウエア的に監視する。
【００９５】
もし、待機系からの転送要求に基づき待機系へのデータ転送がなされていると判断した場合は、転送(アクセスサイクル)が終了するまで待機し、転送(アクセスサイクル)が終了したことを検出した時点で、電源装置０１０への電源リセット指令信号を電源装置０１０に出力すると同時に、停電保護制御信号１２６をタイミング生成回路１４０に出力し、ＤＣＭバス３００を切離す。
【００９６】
本実施例３では、停電時の手順について説明したが、本発明は、停電時の動作に限定されない。メモリバス１１２またはＤＣＭバス３００のバス異常発生時にも、同様に、ＤＣＭバス３００を切離す処理を実施できる。
【００９７】
(Ｃ)  タイミング生成回路１４０は、停電予告信号０１１入力後に電源保護制御信号１２６を検出すると、メモリ保護要求信号１４１を出力し、メモリバス１１２を切離し、外部リフレッシュ制御部１６０によるリフレッシュ動作に移行させる。
【００９８】
この時点までには、共有メモリ１１１への書き込みによる一致化動作は、停止していなければならない。
【００９９】
また、ＤＣＭ制御部１２０内のバッファ１２２に格納されているデータを待機系まで転送する動作を上記(Ｂ)のＤＣＭバス３００遮断タイミングまでに実行しなければならない。
【０１００】
(Ｄ)  (Ｃ)以降のタイミングで待機系からの転送要求信号３０１を受信した場合は、ＤＣＭバス３００が、電気的に切離された状態になっているので、ＤＣＭ制御部１２０内の他系監視部１２１は、待機系からの転送要求を認識することはない。
【０１０１】
待機系ＣＰＵ装置２００は、無応答を検出すると、実行系の停電時の不定データ期間中およびバス異常発生時に転送を要求したと判断し、そのアクセスを中断する。
【０１０２】
この一連の処理の後、待機系ＣＰＵ装置２００が実行するエラー処理については、上位プロセッサにエラーを報告するなどの手順が考えられるが、本発明は、それらの手順に限定されない。
【０１０３】
このように、本実施例３においては、待機系からの転送要求によるデータ転送アクセスの途中でメモリバス１１２を切離さないように、電源保護制御信号１２６をタイミング生成回路１４０に出力し、アクセス終了時点でＤＣＭバス３００を切離し、同時にメモリバス１１２を外部リフレッシュ制御部１６０に切替えリフレッシュ動作を実施する手段と、実施例１のように両系電源ダウンを防止する手段とを設けたので、実行系電源断が発生した場合、待機系電源装置０２０を電源遮断から保護し、待機系ＣＰＵ装置２００のソフトウエアが、共有メモリ１１１内のデータ転送要求をメモリバス１１２の切離し期間中に出した場合に、待機系ＣＰＵ装置２００が、実行系ＣＰＵ装置１００からの無応答を検出して、待機系ＣＰＵ装置２００に不定データが転送されることをハードウエア的に防止できる。
【０１０４】
本実施例３では、従来方式のような割り込みを使用せずに、ソフトウエアが、他系監視部１２１のステータスを読み出し電源断を判定するので、ソフトウエア処理を優先し、制御処理に対する影響を少なくできる。
【図面の簡単な説明】
【０１０５】
【図１】本発明による二重化システムの実施例の全体構成を示す系統図である。
【図２】本発明による二重化システムの実施例１における電源装置０１０およびＣＰＵ装置１００の内部構成を示すブロック図である。
【図３】本発明による二重化システムの実施例２および実施例３におけるＣＰＵ装置１００の内部構成を示すブロック図である。
【図４】本発明による二重化システムの実施例２における停電後の動作タイミングを示すタイミングチャートである。
【図５】本発明による二重化システムの実施例２における停電後の他系監視部の処理手順を示すフローチャートである。
【図６】本発明による二重化システムの実施例３における停電後の動作タイミングを示すタイミングチャートである。
【図７】本発明による二重化システムの実施例３における停電後の他系監視部の処理手順を示すフローチャートである。
【図８】従来の二重化システムにおけるＣＰＵ装置１００の内部構成を示すブロック図である。
【図９】従来の二重化システムにおける停電後の動作タイミングを示すタイミングチャートである。
【符号の説明】
【０１０６】
０１０  実行系電源装置
０１１  実行系停電予告信号
０１２  実行系停電信号
０１３  実行系ＡＣ入力
０１４  実行系電源スイッチ
０１５  実行系電源保護部
０１６  実行系電源電圧
０１７  実行系電源遮断スイッチ
０１８  実行系コンデンサ
０１９  実行系ＡＮＤ回路
０２０  待機系電源装置
０２１  待機系停電予告信号
０２２  待機系停電信号
０２３  待機系ＡＣ入力
０２４  待機系電源スイッチ
０２５  待機系電源保護部
０２６  待機系電源電圧
０２７  待機系電源遮断スイッチ
０２８  待機系コンデンサ
０２９  待機系ＡＮＤ回路
１００  実行系ＣＰＵ装置
１１０  実行系ローカルメモリ
１１１  実行系共有メモリ
１１２  実行系メモリバス
１２０  実行系共有データ一致化回路(ＤＣＭ制御部)
１２１  実行系他系監視部
１２２  実行系バッファ
１２４  実行系コントロールレジスタ
１２５  実行系ステータスレジスタ
１２６  実行系電源保護制御信号
１４０  実行系タイミング生成回路
１４１  実行系メモリ保護要求信号
１５０  実行系プロセッサ
１６０  実行系外部リフレッシュ制御部
２００  待機系ＣＰＵ装置
２１０  待機系ローカルメモリ
２１１  待機系共有メモリ
２１２  待機系メモリバス
２２０  待機系共有データ一致化回路(ＤＣＭ制御部)
２２１  待機系他系監視部
２２２  待機系バッファ
２２４  待機系コントロールレジスタ
２２５  待機系ステータスレジスタ
２２６  待機系電源保護制御信号
２４０  待機系タイミング生成回路
２４１  待機系メモリ保護要求信号
２５０  待機系プロセッサ
２６０  待機系外部リフレッシュ制御部
３００  ＤＣＭバス
３０１  転送要求信号
【図１】
0004474614.tif 000002
【図２】
0004474614.tif 000003
【図３】
0004474614.tif 000004
【図４】
0004474614.tif 000005
【図５】
0004474614.tif 000006
【図６】
0004474614.tif 000007
【図７】
0004474614.tif 000008
【図８】
0004474614.tif 000009
【図９】
0004474614.tif 000010