JPH10326199A - デュアルシステムにおける割込同期装置 - Google Patents
デュアルシステムにおける割込同期装置Info
- Publication number
- JPH10326199A JPH10326199A JP9137054A JP13705497A JPH10326199A JP H10326199 A JPH10326199 A JP H10326199A JP 9137054 A JP9137054 A JP 9137054A JP 13705497 A JP13705497 A JP 13705497A JP H10326199 A JPH10326199 A JP H10326199A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- count value
- program
- systems
- processing
- 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.)
- Pending
Links
Landscapes
- Programmable Controllers (AREA)
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
- Safety Devices In Control Systems (AREA)
Abstract
(57)【要約】 (修正有)
【課題】 プログラムの複雑化を回避するとともに、処
理実行速度の低下及び割り込み応答性の悪化を回避し、
かつ任意の時点での割り込み処理を可能にする。 【解決手段】 デュアルシステムにおける割込同期装置
において、一方及び他方のシステムA、Bが、それぞ
れ、自システム内のプログラムの進行状態を示すカウン
タ12、22と、他システム内のプログラムの進行状態
を示すカウント値を保持するレジスタ13、23と、前
記自システムのカウント値とレジスタ13、23で保持
された前記他システムのカウント値とを比較する比較器
14、24と、割込み要求があったときは、比較器1
4、24により、前記両システム内のプログラムの進行
状態を示すカウント値が一致したときに、前記自システ
ム及び前記他システムで実行される前記割込みを許可す
る制御手部11、21とを具備した。
理実行速度の低下及び割り込み応答性の悪化を回避し、
かつ任意の時点での割り込み処理を可能にする。 【解決手段】 デュアルシステムにおける割込同期装置
において、一方及び他方のシステムA、Bが、それぞ
れ、自システム内のプログラムの進行状態を示すカウン
タ12、22と、他システム内のプログラムの進行状態
を示すカウント値を保持するレジスタ13、23と、前
記自システムのカウント値とレジスタ13、23で保持
された前記他システムのカウント値とを比較する比較器
14、24と、割込み要求があったときは、比較器1
4、24により、前記両システム内のプログラムの進行
状態を示すカウント値が一致したときに、前記自システ
ム及び前記他システムで実行される前記割込みを許可す
る制御手部11、21とを具備した。
Description
【0001】
【発明の属する技術分野】本発明は、一方及び他方のシ
ステムで実行される各プログラムの同一タイミングで割
り込み処理を実行するためのデュアルシステムにおける
割込同期装置に関する。
ステムで実行される各プログラムの同一タイミングで割
り込み処理を実行するためのデュアルシステムにおける
割込同期装置に関する。
【0002】
【従来の技術】処理システムをデュアル構成とし、制御
処理を実行している一方のシステムに障害が発生してダ
ウンした場合に、制御処理を実行していない他方のシス
テムに切り替えて処理制御を継続して実行するデュアル
システムは、プログラムコントローラの障害対策として
有効な手段である。このようなデュアルシステムでは、
一方のシステムから他方のシステムへの即時に切り替え
る必要があるため、各処理システム内の処理状態を常に
同一に維持しなければならない。このため、各処理シス
テムは、一定周期で実行される同期命令により同期が確
立されている。また、このようなデュアルシステムで
は、割込み処理についても各処理システムで同一タイミ
ングで実行されねばならないため、各処理システム内の
プログラムの実行ステップの同一位置で割込み信号を受
け付ける必要がある。
処理を実行している一方のシステムに障害が発生してダ
ウンした場合に、制御処理を実行していない他方のシス
テムに切り替えて処理制御を継続して実行するデュアル
システムは、プログラムコントローラの障害対策として
有効な手段である。このようなデュアルシステムでは、
一方のシステムから他方のシステムへの即時に切り替え
る必要があるため、各処理システム内の処理状態を常に
同一に維持しなければならない。このため、各処理シス
テムは、一定周期で実行される同期命令により同期が確
立されている。また、このようなデュアルシステムで
は、割込み処理についても各処理システムで同一タイミ
ングで実行されねばならないため、各処理システム内の
プログラムの実行ステップの同一位置で割込み信号を受
け付ける必要がある。
【0003】図3は従来のデュアルシステムにおける割
込同期装置の構成を示すブロック図である。図3におい
て、このデュアルシステムはシステムA,Bと、このシ
ステムA,B間での同期命令実行時の同期を確立するた
めの同期回路1を有している。システムA,Bはそれぞ
れ同一構成であり、システムAはCPU、メモリ、入出
力(I/O)回路等を備えた制御部2aと、この制御部
2aへの割り込み処理を実行するための割込信号Saa
を出力する割込回路3aとを備えている。システムBも
同様であり、CPU、メモリ、入出力(I/O)回路等
を備えた制御部2b及び割込回路3bを有している。
込同期装置の構成を示すブロック図である。図3におい
て、このデュアルシステムはシステムA,Bと、このシ
ステムA,B間での同期命令実行時の同期を確立するた
めの同期回路1を有している。システムA,Bはそれぞ
れ同一構成であり、システムAはCPU、メモリ、入出
力(I/O)回路等を備えた制御部2aと、この制御部
2aへの割り込み処理を実行するための割込信号Saa
を出力する割込回路3aとを備えている。システムBも
同様であり、CPU、メモリ、入出力(I/O)回路等
を備えた制御部2b及び割込回路3bを有している。
【0004】次に、この従来例の動作について説明す
る。システムA,Bはプログラム中に一定間隔で配置さ
れた同期命令を実行し、この同期命令実行時に制御部2
a,2bからの同期命令信号Sba,Sbbを同期回路
1に送出する。この同期命令信号Sba,Sbbによっ
て同期回路1がシステムA,B間の同期を確立する。シ
ステムA,B間の同期が確立した後に同期回路1がシス
テムA,Bへ割込許可信号Scを出力する。割込許可信
号Scは、システムA,Bの各割込回路3a,3bに入
力され、割込回路3a,3bから出力される割込信号S
aa,Sabがそれぞれ制御部2a,2bに入力され
る。すなわち、プログラム処理による同期命令処理の終
了後の同期が確立した状態で割り込みを受け付けてい
る。
る。システムA,Bはプログラム中に一定間隔で配置さ
れた同期命令を実行し、この同期命令実行時に制御部2
a,2bからの同期命令信号Sba,Sbbを同期回路
1に送出する。この同期命令信号Sba,Sbbによっ
て同期回路1がシステムA,B間の同期を確立する。シ
ステムA,B間の同期が確立した後に同期回路1がシス
テムA,Bへ割込許可信号Scを出力する。割込許可信
号Scは、システムA,Bの各割込回路3a,3bに入
力され、割込回路3a,3bから出力される割込信号S
aa,Sabがそれぞれ制御部2a,2bに入力され
る。すなわち、プログラム処理による同期命令処理の終
了後の同期が確立した状態で割り込みを受け付けてい
る。
【0005】
【発明が解決しようとする課題】このように上記従来例
のデュアルシステムにおける割込同期装置では、プログ
ラム中に同期命令を適当な一定間隔で配置する必要があ
り、このためプログラムが複雑化する。また、この同期
命令を順次実行するために、システムの実行速度が低下
する。さらに、割り込みの受け付けが割込命令実行時の
みとなるため、任意の時点で割り込み処理することがで
きず、割り込みの自由度が得られず、応答性が悪化す
る。換言すれば、従来例ではデュアル構成のプログラマ
ブルコントローラ(PC)などでの確実かつ効率的な割
り込み同期処理ができ難いという欠点がある。
のデュアルシステムにおける割込同期装置では、プログ
ラム中に同期命令を適当な一定間隔で配置する必要があ
り、このためプログラムが複雑化する。また、この同期
命令を順次実行するために、システムの実行速度が低下
する。さらに、割り込みの受け付けが割込命令実行時の
みとなるため、任意の時点で割り込み処理することがで
きず、割り込みの自由度が得られず、応答性が悪化す
る。換言すれば、従来例ではデュアル構成のプログラマ
ブルコントローラ(PC)などでの確実かつ効率的な割
り込み同期処理ができ難いという欠点がある。
【0006】本発明は、上記事情に鑑みて成されたもの
で、プログラムの複雑化を回避するとともに、処理実行
速度の低下及び割り込み応答性の悪化を回避し、かつ任
意の時点での割り込み処理の可能にするデュアルシステ
ムにおける割込同期装置を提供することを目的とする。
で、プログラムの複雑化を回避するとともに、処理実行
速度の低下及び割り込み応答性の悪化を回避し、かつ任
意の時点での割り込み処理の可能にするデュアルシステ
ムにおける割込同期装置を提供することを目的とする。
【0007】
【課題を解決するための手段】本発明に係わるデュアル
システムにおける割込同期装置は、一方及び他方のシス
テムで実行される各プログラムの同一タイミングで割り
込み処理を実行するためのデュアルシステムにおける割
込同期装置において、前記一方及び他方のシステムが、
それぞれ、自システム内のプログラムの進行状態を示す
カウント値を出力する計数手段と、他システム内のプロ
グラムの進行状態を示すカウント値を保持する保持手段
と、前記計数手段で計数された前記自システムのカウン
ト値と前記保持手段で保持された前記他システムのカウ
ント値とを比較する比較手段と、割込み要求があったと
きは、前記比較手段により、前記自システム内のプログ
ラムの進行状態を示すカウント値と前記他システム内の
プログラムの進行状態を示すカウント値とが一致したと
きに、前記自システム及び前記他システムで実行される
前記割込みを許可する制御手段とを備えたものである。
システムにおける割込同期装置は、一方及び他方のシス
テムで実行される各プログラムの同一タイミングで割り
込み処理を実行するためのデュアルシステムにおける割
込同期装置において、前記一方及び他方のシステムが、
それぞれ、自システム内のプログラムの進行状態を示す
カウント値を出力する計数手段と、他システム内のプロ
グラムの進行状態を示すカウント値を保持する保持手段
と、前記計数手段で計数された前記自システムのカウン
ト値と前記保持手段で保持された前記他システムのカウ
ント値とを比較する比較手段と、割込み要求があったと
きは、前記比較手段により、前記自システム内のプログ
ラムの進行状態を示すカウント値と前記他システム内の
プログラムの進行状態を示すカウント値とが一致したと
きに、前記自システム及び前記他システムで実行される
前記割込みを許可する制御手段とを備えたものである。
【0008】さらに、本発明は、前記自システムの前記
カウント値が前記他システムの前記カンウト値より小さ
いときは、前記自システムでプログラムを実行するとと
もに前記他システムでプログラムを中断し、前記自シス
テムの前記カウンタ値と前記他システムの前記カウンタ
値とが一致したときに前記割込みを許可し、前記自シス
テムの前記カウント値が前記他システムの前記カンウト
値より大きいときは、前記自システムでプログラムを中
断するとともに前記他システムでプログラムを実行し、
前記自システムの前記カウンタ値と前記他システムの前
記カウンタ値とが一致したときに前記割込みを許可する
ものである。
カウント値が前記他システムの前記カンウト値より小さ
いときは、前記自システムでプログラムを実行するとと
もに前記他システムでプログラムを中断し、前記自シス
テムの前記カウンタ値と前記他システムの前記カウンタ
値とが一致したときに前記割込みを許可し、前記自シス
テムの前記カウント値が前記他システムの前記カンウト
値より大きいときは、前記自システムでプログラムを中
断するとともに前記他システムでプログラムを実行し、
前記自システムの前記カウンタ値と前記他システムの前
記カウンタ値とが一致したときに前記割込みを許可する
ものである。
【0009】このような構成の本発明では、一方及び他
方のシステムでのプログラムの進行状態を示すカウント
値が一致するまで、一方又は他方のシステムのプログラ
ムの実行を中断して待機状態になり、待機後、一方及び
他方のシステムでのカウント値が一致して一方及び他方
のシステムの同期が確立した時点で割込みが許可され
る。
方のシステムでのプログラムの進行状態を示すカウント
値が一致するまで、一方又は他方のシステムのプログラ
ムの実行を中断して待機状態になり、待機後、一方及び
他方のシステムでのカウント値が一致して一方及び他方
のシステムの同期が確立した時点で割込みが許可され
る。
【0010】したがって、従来例のように、プログラム
中に一定間隔で同期命令を配置する必要がなくなり、そ
のプログラムの複雑化が回避される。また、同期命令に
よるプログラム実行の遅延が生じなくなる。さらに、任
意の時点で割り込み処理が実行可能であるため、割り込
み処理の自由度が得られる。
中に一定間隔で同期命令を配置する必要がなくなり、そ
のプログラムの複雑化が回避される。また、同期命令に
よるプログラム実行の遅延が生じなくなる。さらに、任
意の時点で割り込み処理が実行可能であるため、割り込
み処理の自由度が得られる。
【0011】
【発明の実施の形態】次に、本発明のデュアルシステム
における割込同期装置の実施の形態を添付図面を参照し
て詳細に説明する。図1は本発明のデュアルシステムに
おける割込同期装置の構成を示すブロック図である。図
1において、このデュアルシステムにおける割込同期装
置は、NC工作機械などを制御するデュアル構成のプロ
グラマブルコントローラ(PC)などに適用されるもの
であり、非同期で動作するシステムA,Bと、このシス
テムA,Bに接続されて、システムA,B間でのデータ
転送するための共有メモリ20とで概略構成されてい
る。
における割込同期装置の実施の形態を添付図面を参照し
て詳細に説明する。図1は本発明のデュアルシステムに
おける割込同期装置の構成を示すブロック図である。図
1において、このデュアルシステムにおける割込同期装
置は、NC工作機械などを制御するデュアル構成のプロ
グラマブルコントローラ(PC)などに適用されるもの
であり、非同期で動作するシステムA,Bと、このシス
テムA,Bに接続されて、システムA,B間でのデータ
転送するための共有メモリ20とで概略構成されてい
る。
【0012】システムA,Bは同一構成であり、システ
ムAはCPU、メモリ、入出力(I/O)回路等を備え
た制御部11と、プログラムの進行状態に対応してカウ
ント値をアップするカウンタ12とを有している。さら
に、システムBから取り込んだカウント値を記憶するた
めのレジスタ13と、カウンタ12のカウント値とレジ
スタ13からのカウント値とを比較する比較器14と、
この比較器24からの一致信号S11と制御部11から
の許可信号S12とをオア処理して一致割込信号S13
を出力するオアゲート15と、オアゲート15からの一
致割込信号S13と外部割込信号S25とをオア処理し
て割込信号S14を制御部11に出力するオアゲート1
6とを有している。
ムAはCPU、メモリ、入出力(I/O)回路等を備え
た制御部11と、プログラムの進行状態に対応してカウ
ント値をアップするカウンタ12とを有している。さら
に、システムBから取り込んだカウント値を記憶するた
めのレジスタ13と、カウンタ12のカウント値とレジ
スタ13からのカウント値とを比較する比較器14と、
この比較器24からの一致信号S11と制御部11から
の許可信号S12とをオア処理して一致割込信号S13
を出力するオアゲート15と、オアゲート15からの一
致割込信号S13と外部割込信号S25とをオア処理し
て割込信号S14を制御部11に出力するオアゲート1
6とを有している。
【0013】システムBも同様の構成であり、制御部2
1、カウンタ22、レジスタ23、比較器24及びOR
ゲート25,26とで構成され、比較器24から一致信
号S21が出力され、制御部11から許可信号S22が
出力される。また、オアゲート25からの一致割込信号
S23と外部割込信号S25とをオア処理して得られる
割込信号S24が制御部21に出力される。
1、カウンタ22、レジスタ23、比較器24及びOR
ゲート25,26とで構成され、比較器24から一致信
号S21が出力され、制御部11から許可信号S22が
出力される。また、オアゲート25からの一致割込信号
S23と外部割込信号S25とをオア処理して得られる
割込信号S24が制御部21に出力される。
【0014】次に、実施形態の動作について説明する。
なお、以下の説明における論理処理でのハイ(論理値
1)レベル又はロー(論理値0)レベルの設定は、論理
回路の構成によって、その変更が可能である。
なお、以下の説明における論理処理でのハイ(論理値
1)レベル又はロー(論理値0)レベルの設定は、論理
回路の構成によって、その変更が可能である。
【0015】最初に割り込みを実行しない通常動作時、
例えば、外部割込信号S25がローレベルの場合の動作
につい説明する。以下、括弧内はシステムBでの構成要
素の番号を示し、この括弧内を含む二つの構成要素が連
記されている場合は、システムA,Bの対応する構成要
素が同時に動作していることを示す。
例えば、外部割込信号S25がローレベルの場合の動作
につい説明する。以下、括弧内はシステムBでの構成要
素の番号を示し、この括弧内を含む二つの構成要素が連
記されている場合は、システムA,Bの対応する構成要
素が同時に動作していることを示す。
【0016】割り込みを行わない通常動作時は、外部割
込信号S25がローレベルに設定され、オアゲート16
(26)の二つの入力端子がローレベルになるため、こ
の出力端子からはローレベルの割込信号S14(S2
4)が制御部11(21)に送出される。すなわち、割
り込み禁止状態となる。
込信号S25がローレベルに設定され、オアゲート16
(26)の二つの入力端子がローレベルになるため、こ
の出力端子からはローレベルの割込信号S14(S2
4)が制御部11(21)に送出される。すなわち、割
り込み禁止状態となる。
【0017】割り込みを受け付けて実行する処理は外部
割込信号S25がハイレベルに設定されることによって
実行される。外部割込信号S25による割り込みは、同
時にシステムA,Bで発生するが、システムA,Bは非
同期動作であるため、システムA,Bがデータ処理を実
行する際のクロック信号の周波数(位相)のばらつきに
よって、徐々に同期が取れない状態で動作することにな
る。この結果、割り込み発生時のシステムA,Bでのプ
ログラム実行の進行位置が一致していないことになる。
割込信号S25がハイレベルに設定されることによって
実行される。外部割込信号S25による割り込みは、同
時にシステムA,Bで発生するが、システムA,Bは非
同期動作であるため、システムA,Bがデータ処理を実
行する際のクロック信号の周波数(位相)のばらつきに
よって、徐々に同期が取れない状態で動作することにな
る。この結果、割り込み発生時のシステムA,Bでのプ
ログラム実行の進行位置が一致していないことになる。
【0018】以下、このような場合のシステムA,Bで
同期を確立して、すなわち、プログラム実行位置を一致
させて割り込みを受け付けて実行する、その動作につい
て説明する。
同期を確立して、すなわち、プログラム実行位置を一致
させて割り込みを受け付けて実行する、その動作につい
て説明する。
【0019】図2は、システムA,Bが実行する割り込
みを一致させる処理手順を示すフローチャートである。
図2において、まず、割り込み処理時は、許可信号S1
2(S22)はハイレベルに設定されており、例えば、
ハイレベルの外部割込信号S25がオアゲート16(2
6)の一方の入力端子に入力される。この場合、オアゲ
ート16(26)の他方の入力端子がローレベルであ
り、制御部11(21)にオアゲート16(26)の出
力端子からハイレベルの割込信号S14(S24)が出
力される。
みを一致させる処理手順を示すフローチャートである。
図2において、まず、割り込み処理時は、許可信号S1
2(S22)はハイレベルに設定されており、例えば、
ハイレベルの外部割込信号S25がオアゲート16(2
6)の一方の入力端子に入力される。この場合、オアゲ
ート16(26)の他方の入力端子がローレベルであ
り、制御部11(21)にオアゲート16(26)の出
力端子からハイレベルの割込信号S14(S24)が出
力される。
【0020】制御部11(21)が、この時点でのハイ
レベルの割込信号S14(S24)によって、割り込み
発生を認識し、制御部11(21)がハイレベルの許可
信号S12(S22)をアンドゲート15(25)の一
方の入力端子に出力し、外部割込信号S25の取り込み
を制御部11(21)が停止する。この時点で、比較器
14(24)からの一致信号S11(S21)はローレ
ベルであるため、オアゲート15(25)の出力端子か
らの一致割込信号S13(S23)はローレベルとな
る。
レベルの割込信号S14(S24)によって、割り込み
発生を認識し、制御部11(21)がハイレベルの許可
信号S12(S22)をアンドゲート15(25)の一
方の入力端子に出力し、外部割込信号S25の取り込み
を制御部11(21)が停止する。この時点で、比較器
14(24)からの一致信号S11(S21)はローレ
ベルであるため、オアゲート15(25)の出力端子か
らの一致割込信号S13(S23)はローレベルとな
る。
【0021】システムA(B)では、制御部11(2
1)がメモリに格納されたプログラムを実行しており
(S1)、システムA(B)のカウンタ12(22)
が、制御部11(21)のCPUがメモリをアクセスす
るごとに、プログラムの進行状態を示すカウント値CA
(CB)を「+1」づつアップする(S2)。このカウ
ント値CAを制御部11が共有メモリ20を通じてシス
テムBに転送する(S3)。
1)がメモリに格納されたプログラムを実行しており
(S1)、システムA(B)のカウンタ12(22)
が、制御部11(21)のCPUがメモリをアクセスす
るごとに、プログラムの進行状態を示すカウント値CA
(CB)を「+1」づつアップする(S2)。このカウ
ント値CAを制御部11が共有メモリ20を通じてシス
テムBに転送する(S3)。
【0022】システムBでは、制御部21がシステムA
からのカウント値CAを取り込み、レジスタ23に記憶
し、かつ、自システムB内でのプログラムの進行状態を
示すカウント値CBを共有メモリ20を通じてシステム
Aに転送し、システムAではシステムBからのカウント
値CBを制御部11が取り込んでレジスタ13に記憶さ
せる(S4,S5)。
からのカウント値CAを取り込み、レジスタ23に記憶
し、かつ、自システムB内でのプログラムの進行状態を
示すカウント値CBを共有メモリ20を通じてシステム
Aに転送し、システムAではシステムBからのカウント
値CBを制御部11が取り込んでレジスタ13に記憶さ
せる(S4,S5)。
【0023】システムA(B)では比較器14(24)
がカウンタ12(22)のカウント値CA(CB)とレ
ジスタ13(23)に記憶しているカウント値CB(C
A)とを比較する(S6)。ここで一致している場合
(S6:Yes)、比較器14(24)からハイレベル
の一致信号S11(S21)をアンドゲート15(2
5)の一方の入力端子に出力する。
がカウンタ12(22)のカウント値CA(CB)とレ
ジスタ13(23)に記憶しているカウント値CB(C
A)とを比較する(S6)。ここで一致している場合
(S6:Yes)、比較器14(24)からハイレベル
の一致信号S11(S21)をアンドゲート15(2
5)の一方の入力端子に出力する。
【0024】制御部11(21)からのローレベルの許
可信号S12(S22)がアンドゲート15(25)の
他方の入力端子に入力されており、ここからハイレベル
の一致割込信号S13(S23)をオアゲート16(2
6)の一方の入力端子に出力する。この結果、オアゲー
ト16(26)の出力端子からはハイレベルの割込信号
S14(S24)が制御部11(21)に送出される。
制御部11(21)は、外部割込信号S25がハイレベ
ルに設定された割り込みの認識後、許可信号S12(S
22)をローレベルに設定した後に、再度、一致割込み
信号S13(S23)がハイレベルになったときに、ハ
イレベルの割込信号S14(S24)を取り込むことに
よって、プログラムの実行の進行状態が一致して同期が
取れた時点での割り込みであると認識して、その割り込
みを受け付けて実行する(S7)。
可信号S12(S22)がアンドゲート15(25)の
他方の入力端子に入力されており、ここからハイレベル
の一致割込信号S13(S23)をオアゲート16(2
6)の一方の入力端子に出力する。この結果、オアゲー
ト16(26)の出力端子からはハイレベルの割込信号
S14(S24)が制御部11(21)に送出される。
制御部11(21)は、外部割込信号S25がハイレベ
ルに設定された割り込みの認識後、許可信号S12(S
22)をローレベルに設定した後に、再度、一致割込み
信号S13(S23)がハイレベルになったときに、ハ
イレベルの割込信号S14(S24)を取り込むことに
よって、プログラムの実行の進行状態が一致して同期が
取れた時点での割り込みであると認識して、その割り込
みを受け付けて実行する(S7)。
【0025】S6で不一致の場合(S6:No)、次に
システムAの制御部11は、カウント値CAがシステム
Bから取り込んだカウント値CBより小さいか否かを判
断する(8)。同様にシステムBの制御部21もカウン
ト値CA、カウント値CBの値を判断する。ここでカウ
ント値CAがカウント値CBより小さい場合、換言すれ
ば、システムAのカウント値CAよりシステムBのカウ
ント値CBが大きい場合(S8:Yes)、一旦、シス
テムA,Bが割り込み処理を停止する(S9)。さら
に、システムBの制御部21が、自システムのプログラ
ム実行の進行を示すカウント値CBが大きいことを認識
してへプログラム実行を停止させて待機状態にする(S
10)。
システムAの制御部11は、カウント値CAがシステム
Bから取り込んだカウント値CBより小さいか否かを判
断する(8)。同様にシステムBの制御部21もカウン
ト値CA、カウント値CBの値を判断する。ここでカウ
ント値CAがカウント値CBより小さい場合、換言すれ
ば、システムAのカウント値CAよりシステムBのカウ
ント値CBが大きい場合(S8:Yes)、一旦、シス
テムA,Bが割り込み処理を停止する(S9)。さら
に、システムBの制御部21が、自システムのプログラ
ム実行の進行を示すカウント値CBが大きいことを認識
してへプログラム実行を停止させて待機状態にする(S
10)。
【0026】制御部11からハイレベルの許可信号S1
2がアンドゲート15の一方の入力端子に送出される
(S11)。この後、制御部11でプログラムが実行さ
れ、このプログラムの進行とともに、カウンタ12がカ
ウント値CAを「+1」づつ増加する(S12,S1
3)。この順次増加するカウント値CAを共通メモリ2
0を通じてシステムBへ転送し、順次、制御部21の制
御でレジスタ23に記憶している前回のカウント値CA
を消去して上書きする(S14,S15)。
2がアンドゲート15の一方の入力端子に送出される
(S11)。この後、制御部11でプログラムが実行さ
れ、このプログラムの進行とともに、カウンタ12がカ
ウント値CAを「+1」づつ増加する(S12,S1
3)。この順次増加するカウント値CAを共通メモリ2
0を通じてシステムBへ転送し、順次、制御部21の制
御でレジスタ23に記憶している前回のカウント値CA
を消去して上書きする(S14,S15)。
【0027】システムA,Bでは、比較器14(24)
でカウンタ12(22)からのカウント値CA(CB)
とレジスタ13(23)に格納しているカウント値CB
(CA)とが比較器14(24)で比較される(S1
6)。比較器14(24)はカウント値CA(CB)と
カウント値CB(CA)とが一致した時点で、ハイレベ
ルの一致信号S11(S21)をアンドゲート15(2
5)の一方の入力端子に送出する。ここでアンドゲート
15(25)は制御部11(21)からローレベルの許
可信号S12とハイレベルの一致信号S11とのアンド
処理によってハイレベルの一致割込信号S13(S2
3)を出力する。
でカウンタ12(22)からのカウント値CA(CB)
とレジスタ13(23)に格納しているカウント値CB
(CA)とが比較器14(24)で比較される(S1
6)。比較器14(24)はカウント値CA(CB)と
カウント値CB(CA)とが一致した時点で、ハイレベ
ルの一致信号S11(S21)をアンドゲート15(2
5)の一方の入力端子に送出する。ここでアンドゲート
15(25)は制御部11(21)からローレベルの許
可信号S12とハイレベルの一致信号S11とのアンド
処理によってハイレベルの一致割込信号S13(S2
3)を出力する。
【0028】ハイレベルの一致割込信号S13(S2
3)がオアゲート16(26)に入力され、この出力端
子からハイレベルの割込信号S14(S24)が制御部
11(21)に送出される。制御部11(21)は、外
部割込信号S25がハイレベルに設定された割り込みの
認識後、許可信号S12(S22)をローレベルに設定
した後のハイレベルの割込信号S14(S24)を取り
込むことによって、システムA,Bのカウント値が等し
いプログラムの進行状態が一致して同期が確立した時点
でのシステムA,Bでの割り込みであると認識して、そ
の割り込みを受け付けて実行する。
3)がオアゲート16(26)に入力され、この出力端
子からハイレベルの割込信号S14(S24)が制御部
11(21)に送出される。制御部11(21)は、外
部割込信号S25がハイレベルに設定された割り込みの
認識後、許可信号S12(S22)をローレベルに設定
した後のハイレベルの割込信号S14(S24)を取り
込むことによって、システムA,Bのカウント値が等し
いプログラムの進行状態が一致して同期が確立した時点
でのシステムA,Bでの割り込みであると認識して、そ
の割り込みを受け付けて実行する。
【0029】次に、システムBの制御部21は、停止し
ていたプログラム実行の進行を開始する(S17,S1
8)。S16でカウント値CA(CB)とカウント値C
B(CA)とが一致しない場合は、S3に戻ってカウン
ト値CAをシステムBに転送し、カウント値CA,CB
が一致するまでルーチンを繰り返す。
ていたプログラム実行の進行を開始する(S17,S1
8)。S16でカウント値CA(CB)とカウント値C
B(CA)とが一致しない場合は、S3に戻ってカウン
ト値CAをシステムBに転送し、カウント値CA,CB
が一致するまでルーチンを繰り返す。
【0030】このように、割り込み発生時にあって、シ
ステムAのカウント値CAがシステムBのカンウト値C
Bより小さい場合は、システムA,Bが割り込み処理
を、一旦、停止し、そのプログラムの進行でカウント値
CAが増加してシステムBのカンウト値CBに一致する
までシステムBが、プログラム実行の進行を停止する待
機状態に設定され、この待機後にシステムA,Bでのプ
ログラム実行位置が一致した時点でシステムA,Bでの
割り込みを同期して実行する。
ステムAのカウント値CAがシステムBのカンウト値C
Bより小さい場合は、システムA,Bが割り込み処理
を、一旦、停止し、そのプログラムの進行でカウント値
CAが増加してシステムBのカンウト値CBに一致する
までシステムBが、プログラム実行の進行を停止する待
機状態に設定され、この待機後にシステムA,Bでのプ
ログラム実行位置が一致した時点でシステムA,Bでの
割り込みを同期して実行する。
【0031】また、S8でカウント値CAがカウント値
CBより大きい場合(S8:No)、前記の動作と反対
にシステムAが、プログラム実行の進行を停止して待機
状態になる。すなわち、一旦、システムA,Bが割り込
み処理を停止する(S19)。さらに、システムAがプ
ログラム実行の進行を停止させて待機状態になる(S2
0)。制御部11からローレベルの許可信号S12をア
ンドゲート15の一方の入力端子に送出する(S2
1)。
CBより大きい場合(S8:No)、前記の動作と反対
にシステムAが、プログラム実行の進行を停止して待機
状態になる。すなわち、一旦、システムA,Bが割り込
み処理を停止する(S19)。さらに、システムAがプ
ログラム実行の進行を停止させて待機状態になる(S2
0)。制御部11からローレベルの許可信号S12をア
ンドゲート15の一方の入力端子に送出する(S2
1)。
【0032】この後、制御部21でプログラムが実行さ
れ、このプログラム実行の進行とともに、カウンタ22
がカウント値CBを「+1」づつ増加する(S22,S
23)。この増加するカウント値CBを共通メモリ20
通じてシステムAへ転送し、順次、制御部11の制御で
レジスタ13に記憶している前回のカウント値CBを消
去して上書きする(S24,S25)。
れ、このプログラム実行の進行とともに、カウンタ22
がカウント値CBを「+1」づつ増加する(S22,S
23)。この増加するカウント値CBを共通メモリ20
通じてシステムAへ転送し、順次、制御部11の制御で
レジスタ13に記憶している前回のカウント値CBを消
去して上書きする(S24,S25)。
【0033】これ以降は比較器14(24)でカウンタ
12(22)からのカウント値CA(CB)とレジスタ
13(23)に格納しているカウント値CB(CA)と
が比較器14(24)で比較される(S26)。この比
較でカウント値CA(CB)とカウント値CB(CA)
とが一致した時点、すなわち、システムA,Bのシステ
ムA,Bでのプログラム実行位置が一致する同期が取れ
た時点でシステムA,Bでの割り込みを受け付けて実行
し、次に、システムAの制御部11は、停止していたプ
ログラム実行の進行を開始する(S27,S28)。S
26でカウント値CA(CB)とカウント値CB(C
A)とが一致しない場合は、S3に戻ってカウント値C
AをシステムBに転送し、カウント値CA,CBが一致
するまでルーチンを繰り返す。
12(22)からのカウント値CA(CB)とレジスタ
13(23)に格納しているカウント値CB(CA)と
が比較器14(24)で比較される(S26)。この比
較でカウント値CA(CB)とカウント値CB(CA)
とが一致した時点、すなわち、システムA,Bのシステ
ムA,Bでのプログラム実行位置が一致する同期が取れ
た時点でシステムA,Bでの割り込みを受け付けて実行
し、次に、システムAの制御部11は、停止していたプ
ログラム実行の進行を開始する(S27,S28)。S
26でカウント値CA(CB)とカウント値CB(C
A)とが一致しない場合は、S3に戻ってカウント値C
AをシステムBに転送し、カウント値CA,CBが一致
するまでルーチンを繰り返す。
【0034】このようにシステムAのカウント値CAが
システムBのカンウト値CBより大きい場合は、プログ
ラム実行の進行でシステムAでのカウント値CAとシス
テムBでのカンウト値CBに一致するまでシステムAが
待機状態に設定される。
システムBのカンウト値CBより大きい場合は、プログ
ラム実行の進行でシステムAでのカウント値CAとシス
テムBでのカンウト値CBに一致するまでシステムAが
待機状態に設定される。
【0035】このように、この実施形態では、システム
A,Bでのプログラムの実行の進行状態を示すカウント
値を転送し、このカウント値が等しいシステムA,Bで
のプログラム実行位置が一致した時点で、システムA,
Bでの割り込みを同期させて、その受け付けを行って実
行している。
A,Bでのプログラムの実行の進行状態を示すカウント
値を転送し、このカウント値が等しいシステムA,Bで
のプログラム実行位置が一致した時点で、システムA,
Bでの割り込みを同期させて、その受け付けを行って実
行している。
【0036】
【発明の効果】以上の説明から明らかなように、本発明
のデュアルシステムにおける割込同期装置によれば、割
込み要求があったときに、一方及び他方のシステムでの
プログラムの進行状態を示すカウント値が一致したとき
に割込みを実行し、またカウント値が一致しないとき
は、一方又は他方のシステムでのプログラムの進行を中
断して待機状態となり、待機後、一方又は他方のシステ
ムでのプログラム実行が進行して、カウント値が一致し
て一方及び他方のシステムの同期が確立した時点で割り
込み処理が実行される。
のデュアルシステムにおける割込同期装置によれば、割
込み要求があったときに、一方及び他方のシステムでの
プログラムの進行状態を示すカウント値が一致したとき
に割込みを実行し、またカウント値が一致しないとき
は、一方又は他方のシステムでのプログラムの進行を中
断して待機状態となり、待機後、一方又は他方のシステ
ムでのプログラム実行が進行して、カウント値が一致し
て一方及び他方のシステムの同期が確立した時点で割り
込み処理が実行される。
【0037】この結果、従来のようにプログラム中に一
定間隔で同期命令を配置する必要がなくなるためプログ
ラムの複雑化が回避される。また、この同期命令による
プログラム実行の遅延が生じなくなる。さらに、任意の
時点で割り込み処理可能であるため、割り込み処理の自
由度が得られる。すなわち、処理実行速度の低下及び割
り込み応答性の悪化を招くことなく、割り込み同期処理
が可能になる。
定間隔で同期命令を配置する必要がなくなるためプログ
ラムの複雑化が回避される。また、この同期命令による
プログラム実行の遅延が生じなくなる。さらに、任意の
時点で割り込み処理可能であるため、割り込み処理の自
由度が得られる。すなわち、処理実行速度の低下及び割
り込み応答性の悪化を招くことなく、割り込み同期処理
が可能になる。
【図1】本発明のデュアルシステムにおける割込同期装
置の構成を示すブロック図である。
置の構成を示すブロック図である。
【図2】実施形態の動作の処理手順を示すフローチャー
トである。
トである。
【図3】従来のデュアルシステムにおける割込同期装置
の構成を示すブロック図である。
の構成を示すブロック図である。
11,21 制御部 13,23 レジスタ 12,22 カウンタ 14,24 比較器 15,16,25,26 ORゲート 20 共有メモリ A,B システム
Claims (2)
- 【請求項1】 一方及び他方のシステムで実行される各
プログラムの同一タイミングで割り込み処理を実行する
ためのデュアルシステムにおける割込同期装置におい
て、前記一方及び他方のシステムが、それぞれ、 自システム内のプログラムの進行状態を示すカウント値
を出力する計数手段と、 他システム内のプログラムの進行状態を示すカウント値
を保持する保持手段と、 前記計数手段で計数された前記自システムのカウント値
と前記保持手段で保持された前記他システムのカウント
値とを比較する比較手段と、 割込み要求があったときは、前記比較手段により、前記
自システム内のプログラムの進行状態を示すカウント値
と前記他システム内のプログラムの進行状態を示すカウ
ント値とが一致したときに、前記自システム及び前記他
システムで実行される前記割込みを許可する制御手段と
を具備したことを特徴とするデュアルシステムにおける
割込同期装置。 - 【請求項2】 前記自システムの前記カウント値が前記
他システムの前記カンウト値より小さいときは、前記自
システムでプログラムを実行するとともに前記他システ
ムでプログラムを中断し、前記自システムの前記カウン
タ値と前記他システムの前記カウンタ値とが一致したと
きに前記割込みを許可し、 前記自システムの前記カウント値が前記他システムの前
記カンウト値より大きいときは、前記自システムでプロ
グラムを中断するとともに前記他システムでプログラム
を実行し、前記自システムの前記カウンタ値と前記他シ
ステムの前記カウンタ値とが一致したときに前記割込み
を許可することを特徴とする請求項1記載のデュアルシ
ステムにおける割込同期装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9137054A JPH10326199A (ja) | 1997-05-27 | 1997-05-27 | デュアルシステムにおける割込同期装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9137054A JPH10326199A (ja) | 1997-05-27 | 1997-05-27 | デュアルシステムにおける割込同期装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH10326199A true JPH10326199A (ja) | 1998-12-08 |
Family
ID=15189811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9137054A Pending JPH10326199A (ja) | 1997-05-27 | 1997-05-27 | デュアルシステムにおける割込同期装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH10326199A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7107484B2 (en) | 2002-07-12 | 2006-09-12 | Nec Corporation | Fault-tolerant computer system, re-synchronization method thereof and re-synchronization program thereof |
KR101127038B1 (ko) | 2011-01-13 | 2012-03-26 | 두산중공업 주식회사 | 타이밍 동기화 기능을 갖는 시스템 |
JP2014137795A (ja) * | 2013-01-18 | 2014-07-28 | Mitsubishi Electric Corp | 二重化プログラマブルコントローラ及びその同期化方法 |
-
1997
- 1997-05-27 JP JP9137054A patent/JPH10326199A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7107484B2 (en) | 2002-07-12 | 2006-09-12 | Nec Corporation | Fault-tolerant computer system, re-synchronization method thereof and re-synchronization program thereof |
KR101127038B1 (ko) | 2011-01-13 | 2012-03-26 | 두산중공업 주식회사 | 타이밍 동기화 기능을 갖는 시스템 |
JP2014137795A (ja) * | 2013-01-18 | 2014-07-28 | Mitsubishi Electric Corp | 二重化プログラマブルコントローラ及びその同期化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7127626B2 (en) | Data processing apparatus configured to operate with one of more clock frequencies determined by a priority order derived from one or more interrupt signals from a CPU | |
JPS63238630A (ja) | マイクロプロセツサの割込み制御装置 | |
JPH10326199A (ja) | デュアルシステムにおける割込同期装置 | |
JPH01258163A (ja) | ダイレクトメモリアクセス制御装置 | |
JPH0736720A (ja) | 二重化コンピュータ装置 | |
JP2526835B2 (ja) | プログラマブルコントロ―ラの二重化同期制御方式 | |
JP2969844B2 (ja) | プログラマブルコントローラ | |
JPH07287608A (ja) | プログラマブルコントローラの二重化同期制御装置 | |
JPH0573296A (ja) | マイクロコンピユータ | |
JPH02307124A (ja) | 割込み制御方式 | |
JP3405513B2 (ja) | プログラマブルコントローラの二重化制御装置 | |
JP2002215421A (ja) | デバッグ装置およびデバッグ装置のブレーク方法 | |
JP2000020456A (ja) | Romデータ確認用回路 | |
JP2905259B2 (ja) | システム構成変更制御方式 | |
JPH10171654A (ja) | 高速データ演算処理装置 | |
KR100672550B1 (ko) | 멀티플 인터럽트 처리 방법 | |
JPS6220041A (ja) | デ−タ処理装置の非同期デ−タ転送回路 | |
JPH06214606A (ja) | 二重化pcシステムにおける入出力方法 | |
JPH10312354A (ja) | 割り込み処理システム | |
JPH05341883A (ja) | 非同期回路リセット方式 | |
JPH03206530A (ja) | 割込みテスト機能を有するプロセッサ | |
JPS6089269A (ja) | 同期運転調整方式 | |
JP2003131890A (ja) | 割込み制御装置 | |
JPH0293756A (ja) | 並列処理計算機 | |
JPS58168150A (ja) | ル−プカウンタ付プログラムカウンタ制御方式 |