JP2004234183A - 計算機制御装置のバスチェック方法およびシステム - Google Patents
計算機制御装置のバスチェック方法およびシステム Download PDFInfo
- Publication number
- JP2004234183A JP2004234183A JP2003020129A JP2003020129A JP2004234183A JP 2004234183 A JP2004234183 A JP 2004234183A JP 2003020129 A JP2003020129 A JP 2003020129A JP 2003020129 A JP2003020129 A JP 2003020129A JP 2004234183 A JP2004234183 A JP 2004234183A
- Authority
- JP
- Japan
- Prior art keywords
- data
- input
- bus
- output
- cpu
- 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
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】バス異常時、外部に誤出力を出力してしまう。本発明は、CPUバスが異常のときには、入出力装置から外部接続装置へ出力情報を誤出力しない、また、CPUに誤った信号を入力することのない計算機制御装置のバスチェック方法およびシステムを提供する。
【解決手段】CPUバスにCPU装置と複数の入出力装置がバスを介して接続され、それぞれバスチェック部を有する計算機制御装置のバスチェック方法であって、前記CPU装置より前記バスを介して前記入出力装置へ第1のデータを出力し、前記入出力装置へ出力データを出力後、前記第1の出力データのビットを反転した第2のデータを前記入出力装置へ再送し、前記入出力装置のバスチェック部では前記第2の出力データのビットを反転した第3のデータを生成し、前記第1のデータと前記第3のデータを比較し、比較した結果の一致/不一致によってバスアクセス時の正常/異常の判定をおこなうものである。
【選択図】 図1
【解決手段】CPUバスにCPU装置と複数の入出力装置がバスを介して接続され、それぞれバスチェック部を有する計算機制御装置のバスチェック方法であって、前記CPU装置より前記バスを介して前記入出力装置へ第1のデータを出力し、前記入出力装置へ出力データを出力後、前記第1の出力データのビットを反転した第2のデータを前記入出力装置へ再送し、前記入出力装置のバスチェック部では前記第2の出力データのビットを反転した第3のデータを生成し、前記第1のデータと前記第3のデータを比較し、比較した結果の一致/不一致によってバスアクセス時の正常/異常の判定をおこなうものである。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、プラントや機器の制御信号を演算してプラントや機器の制御を行う計算機制御装置に係わり、特に計算機制御装置内バスのバスチェック方法およびシステムに関する。
【0002】
【従来の技術】
【特許文献1】特開平8−328973号公報
【特許文献2】特開平10−247899号公報
従来のバスチェック方法には、前記特許文献1による先行技術がある。この文献の記載は、CPUバスにバス監視ユニットを接続し、バス接続装置間のデータ転送バスサイクルの合間、すなわちバスがあいているときを利用してCPUバスを使用し、バス監視ユニットからCPU装置へバスチェック用データを出力し、CPU装置はバスチェック用データをそのまま折り返しバス監視ユニットへ出力する。そして、バス監視ユニットにおいて前記CPU装置へ出力したバスチェック用データと前記CPU装置からの折り返し伝送されたデータを比較し、比較結果が一致したことによりバスを正常と判定、不一致のときはバスの異常と判定するものである。
【0003】
また、前記特許文献2がある。この文献の記載は、送信装置からシリアル伝送フォーマットにしたがって、順次スタートフラグ、正規アドレス、正規データ、エンドフラグ等を送信後、前記データの末尾に引き続いてスタートフラグ、前記正規アドレスのビット反転アドレス、前記正規データのビット反転データ、エンドフラグ等を付加して送信し、受信装置にて前半の正規アドレス、正規データと後半のビット反転アドレス、ビット反転データとが相互に反転したデータとなっていることが確認できたとき、伝送フレームが正常であると判定する。一方、反転データとなっていないときは、伝送フレームが異常であると判定する。
【0004】
【発明が解決しようとする課題】
前記特許文献1の場合は、バス監視ユニットによる周期的なバスチェックであるために、バスが故障してからバス異常を検出するまでにどうしても検出遅れがある。例えば、バス故障直後にCPU装置から入出力装置へデータが出力されたような場合は、入出力装置が誤ったデータを受信し、入出力装置から外部接続装置へ出力情報を出力してしまうので、誤出力となる場合がある。また、逆にバス故障直後にCPU装置が入出力装置からのデータを入力したとき、CPU装置が誤った入力データにより演算制御をおこなってしまうことになる。さらに、監視のためのバス監視ユニットが必要であり、計算制御装置を構成する部品数が多くなるという問題もある。
【0005】
また、前記特許文献2の場合は、シリアル伝送中に一過性のノイズによるデータビット反転および同期誤りを検出し、シリアル伝送データの品質向上を目的としているものであって、バス診断および異常が発生した受信装置の特定はあまり考慮されていない。
【0006】
伝送手順については、前記先行技術では、送信装置から正規データと反転データを同時に送信し、データを受信装置でチェックし異常が発生した時、受信装置でデータを破棄する手順である。これに対し、本発明では、正規データと反転データを送信する度に受信装置からの応答を確認し、バス異常および受信装置の異常を常に監視していることに特徴があり、ここに大きな差異がある。
【0007】
本発明の目的は、上記した従来技術の問題点を克服し、バス故障時、CPU装置からのデータ出力に対し入出力装置から外部接続装置へ出力情報を誤出力せず、CPU装置からの入出力装置のデータ入力に対し、CPU装置が誤ったデータを入力することのないバスチェックを有する計算機制御装置のバスチェック方法およびシステムを提供することにある。
【0008】
【課題を解決するための手段】
本発明は、以下の手段により上記課題を解決することができる。
【0009】
CPU装置と複数の入出力装置がCPUバスを介して接続され、それぞれバスチェック部を有する計算機制御装置のバスチェック方法であって、前記CPU装置より前記バスを介して前記入出力装置へ第1の出力データを出力した後、前記第1の出力データのビットを反転した第2のデータを前記入出力装置へ送信し、前記入出力装置のバスチェック部では前記第2の出力データのビットを反転した第3のデータを生成し、受信した前記第1のデータと前記第3のデータを比較し、比較した結果の一致/不一致によってバスアクセス時の正常/異常の判定をおこない判定結果を前記CPU装置へ通知するバスチェック方法である。
【0010】
また、前記入出力装置のバスチェック部にて前記第1のデータと第3のデータを比較し一致したとき、前記入出力装置から外部接続装置へ前記第1のデータの出力を許可するとともに、前記CPU装置へバスアクセスの正常を通知し、前記比較結果が不一致のときは、前記入出力装置から外部接続装置への前記第1のデータの出力を不許可とし、前記CPU装置へバスアクセス時の異常を通知すること。また、前記CPU装置が前記バスを介して前記入出力装置からデータを入力するとき、前記CPU装置より前記入出力装置へデータを要求して第1の入力データを入力後、前記CPU装置より再度前記入出力装置に前記第1の入力データのビットを反転した第2のデータの伝送を要求し、ビット反転された第2のデータを入力後、前記CPU装置のバスチェック部において前記第2の入力データのビットを反転した第3のデータを生成し、前記第1のデータと前記第3のデータとを比較し、前記比較結果の一致/不一致によってCPU装置のバスアクセス時の正常/異常を判定することにある。
【0011】
また、CPU装置と複数の入出力装置がCPUバスを介して接続され、それぞれバスチェック部を有する計算機制御装置のバスチェックシステムであって、前記CPU装置より前記バスを介して前記入出力装置へ第1のデータを出力した後、前記第1の出力データのビットを反転した第2のデータを前記入出力装置へ伝送するCPU装置側のバスチェック部と、前記第1の出力データを受信し、ビット反転した第2のデータから再度ビット反転した第3のデータを生成し、前記第1のデータと前記第3のデータを比較し、比較した結果の一致/不一致によってバスアクセスの正常/異常の判定をおこなう前記入出力装置側のバスチェック部とを備え、前記判定した結果を前記CPU装置へ通知するバスチェックシステムである。
【0012】
また、前記入出力装置側のバスチェック部は前記第1のデータと第3のデータを比較し一致したとき、前記入出力装置の入出力部から外部接続装置への前記第1のデータの出力を許可するとともに、前記CPU装置へバスアクセスの正常を通知し、前記比較結果が不一致のときは、前記入出力装置の入出力部から外部接続装置への前記第1のデータの出力を不許可とし、前記CPU装置へバスアクセス時の異常を通知すること。また、前記CPU装置が前記バスを介して前記入出力装置からデータを入力するとき、前記CPU装置から前記入出力装置へデータを要求して第1のデータを入力後、前記第1のデータのビットを反転した第2のデータの伝送を前記入出力装置へ要求し、ビット反転された第2のデータを入力後、前記第2の入力データのビットを反転した第3のデータを生成し、前記第1のデータと前記第3のデータとを比較し、前記比較結果の一致/不一致によってCPU装置のバスアクセス時の正常/異常を判定するバスチェック部をCPU側に有するバスチェックシステムである。
【0013】
【発明の実施の形態】
以下、本発明の複数の実施例について図面を参照しながら詳細に説明する。
図1は、本発明の一実施例の計算制御装置を示すブロック構成図である。計算制御装置1は、演算を行うCPU装置3と、CPU装置3からバスを介してデータ入出力要求を受けて外部接続装置2と入出力情報の授受を行う複数の入出力装置7−1〜7−nと、CPU装置3と複数の入出力装置7−1〜7−nを接続するためのCPUバス6から構成されている。また、CPU装置3とバスで接続されている複数の入出力装置7−1〜7−n内は、CPUバス6を通してデータ転送を行うためにCPU側にはバスインタフェース部4、入出力装置側にはバスインタフェース部8を設けている。
【0014】
さらに、本実施例による計算制御装置の特徴は、CPU装置3内にデータ転送時にバスをチェックし演算部11に異常を報告するバスチェック部5を設け、複数の入出力装置7−1〜7−n内には、データ転送時にバスをチェックしCPU装置3に異常を報告するバスチェック部9を設けたことにある。
【0015】
CPU装置3よりCPUバス6を通して入出力装置7(7−1〜7−n)へデータを出力する時、CPU装置3より入出力装置7へ第1の出力データを出力後、前記出力データのビット反転データである第2の出力データを前記CPUから再度入出力装置7へ出力し、入出力装置7のバスチェック部9において前記第1の出力データと前記ビット反転された第2の出力データを再度ビット反転して第3の出力データを生成し、前記第1の出力データと前記第3の出力データとを比較する。
【0016】
バスチェック部9において比較結果が一致した時、入出力装置7から外部接続装置2への入出力部10からの出力を許可する(バスチェック部9から出力許可信号9aを出力する)。外部接続装置へ前記第1の出力データを出力後、CPU装置3へバスアクセスの正常を通知する。前記比較結果が不一致の時、入出力装置7から外部接続装置2へ前記第1のデータの出力は不許可とし、出力せずCPU装置3へバスアクセスの異常を通知する。
【0017】
これを図2によりバス幅8ビットの例について説明する。簡単にするためにH(ハイレベルの信号)およびL(ロウレベルの信号)信号についての例である。図2の(A)は、CPU3から入出力装置7の送られたデータ(第1のデータ)である。これに対して図2の(B)はCPUから図2の(A)の反転データが入出力装置7に伝送される信号(第2のデータ)を表している。バスチェック部9では図2の(B)のデータを再度反転し、図2の(C)の信号(第3のデータ)を生成する。そして図2の(A)のデータと、図2の(C)のデータを比較し、一致あるいは不一致の判定をおこなう。
【0018】
また、逆にCPU装置3がCPUバス6を通して入出力装置7からデータを入力する時もまったく同じである。CPU装置3より入出力装置7へデータを要求してデータを入力後、CPU装置3より再度入出力装置7に前記入力データのビット反転データを要求してビット反転データを入力する。そのあと、CPU装置3のバスチェック部5にて前記入力データと前記ビット反転データを再度ビット反転したデータを生成し、はじめに取り込んだデータと比較し、前記比較した結果、一致/不一致によってCPU装置3のバスアクセスの正常/異常を判定し、演算部11へ報告する。
【0019】
図3は、図1に示す計算制御装置において、CPU装置3よりCPUバス6を通して入出力装置7へデータを出力する時、図3の(A)はCPU装置3側の処理手順、図3の(B)は入出力装置7側の処理手順の一例を示したものである。ここでは入出力装置7のうち、7−1の例について説明する。他の入出力装置についてもまったく同じである。
【0020】
はじめに、図1の演算部11で入出力装置7−1へデータ▲1▼の出力要求命令を実行すると(ステップs101)、バスインタフェース部4を通してCPUバス6へデータ▲1▼を出力し、バスチェック部5は、入出力装置7からの受信完了応答を待つ(ステップs102)。データ出力先となる入出力装置7は、バスチェック部9にてデータ▲1▼を受信して記憶し(ステップs201)、受信完了応答信号1aをCPU装置3へ返送する(ステップs202)。バスチェック部5は、受信完了応答信号1aを受信すると(s102)、バスインタフェース部4を通してCPUバス6へデータ▲2▼(データ▲1▼のビット反転データ)を出力し(s103)、入出力装置7からの受信完了応答を待つ(s104)。入出力装置7−1は、バスチェック部9にてデータ▲2▼を受信して、▲2▼のデータを全ビット反転して(図2の(C))データ▲3▼として記憶する(s203)。そして前記記憶したデータ▲1▼と今回記憶したデータ▲3▼が同値であるかどうかを比較する(s204)。
【0021】
その結果、一致した時、CPU装置3へ正常応答すると共に、入出力部10を通して外部接続装置2へ出力情報の出力を許可し(信号9a)、入出力部10から外部接続装置2へ出力する(s205)。また、前記比較結果が不一致のときは、CPU装置3へ異常応答する(s206)。
【0022】
バスチェック部5は、応答を受信すると(s104)、正常応答か否かを判定し(s105)、正常であれば、演算部11へデータ出力完了を報告する。また、前記応答を判定した結果、異常の応答であった場合は、演算部11へデータ出力異常を報告し、異常処理を実行する(s106)。異状処理の具体的な例としては、バスアクセスを中止し、バスの異状表示等をおこなう。
【0023】
図4は、前記図3の処理を実行し、データがCPU装置3から正常に入出力装置7へ出力された時のCPUバス6上のバスサイクルの一例で図4の(A)はアドレスを、図4の(B)はデータを示している。図3のs101を実行すると出力データ転送サイクルが開始され、CPUバス6のアドレスラインに有効アドレスが出力されると共に、データラインにデータ▲1▼が出力される。図3のs103を実行するとバスチェックサイクルが開始され、CPUバス6のデータラインにデータ▲1▼のビット反転が出力され、図3のs104にて応答を受信するとバスチェックサイクルを終了する。
【0024】
図5は、図1に示す計算制御装置において、CPU装置3がCPUバス6を介して入出力装置7−1からデータ(20a)を入力する時、CPU装置3および入出力装置7−1の処理手順の一例を示す(他の入出力装置についても同様である)。演算部11内にて入出力装置7−1からのデータ入力要求命令を実行すると(s301)、バスインタフェース部4を通してCPUバス6へデータ入力要求を出力し、バスチェック部5は、入出力装置7からのデータ出力応答を待つ(s302)。データ入力先となる入出力装置7は、外部接続装置2から入出力部10を通して入力情報20aを入力後、CPU装置3へデータ▲1▼と共にデータ出力応答を返送する(s401)。
【0025】
バスチェック部5は、入出力装置7−1からの応答受信を確認し(s302)、入出力装置7−1からのデータ▲1▼を受信して記憶し(s303)、入出力装置7−1へビット反転データの送信要求を出力して(s304)入出力装置7からの反転セータの出力応答を待つ(s305)。CPU装置3へデータを送信する入出力装置7−1は、CPU装置3へデータ▲2▼(前記データ▲1▼のビット反転データ)と共にデータ出力応答信号を返送する(s402)。バスチェック部5は、入出力装置7−1からのデータ出力応答受信を確認すると(s305)、受信した▲2▼のデータを、全ビットを反転したデータ▲3▼を記憶する(s306)。そして前記にて記憶したデータ▲1▼(s303)と▲3▼(s306)が同値であるかどうかを比較する(s307)。
【0026】
その結果、前記比較結果が一致した時、バスチェック部5は、演算部11へデータ▲1▼を渡し、演算部11にてデータ▲1▼を正常データとして演算処理する(s308)。一方前記比較結果が不一致のときは、演算部11へデータ入力異常を報告し、異常処理を実行する(s309)。
【0027】
図6は、図5の処理を実行し、CPU装置3が正常にデータを入出力装置7から入力した時のCPUバス6上のバスサイクルの一例を示す。
【0028】
図5のs301を実行すると入力データ転送サイクルが開始され、CPUバス6のアドレスラインに図6の(A)のように有効アドレスが出力されると共に、入出力装置7−1によってデータラインにデータ▲1▼が出力される。図5のs304を実行するとバスチェックサイクルが開始され、CPUバス6のデータラインに図6の(B)に示すように、データ▲1▼のビット反転が出力され、図5のs305にて応答を受信するとバスチェックサイクルを終了する。
【0029】
また、図7は本発明の他の実施例を示すものである。図7の(A)はバスインタフェース部8とバスチェック部9と入出力部10が直列接続された場合である。バスインタフェース部からのデータをバスチェック部9でチェックをおこなう方式である。また、図7の(B)はバスチェック機能を有するバスインタフェース部8aで構成した場合をしめしている。いずれの場合も図1と同様のバスチェックが可能である。
【0030】
本発明によれば、CPU装置から入出力装置へのデータ出力処理実行時に毎回バスチェックを同時に行い、バスが正常であった場合のみ入出力装置がデータを受信して外部接続装置へ出力情報を出力することより、バス故障時に外部接続装置へ誤った出力情報を出力することがない計算制御装置が得られる。また、CPU装置からの入出力装置のデータ入力処理実行時に毎回バスチェックを同時に行い、バスが正常であった場合のみCPU装置が受信データを演算制御に使用することより、CPU装置が誤ったデータにより演算制御をおこなうことがない計算制機御装置が得られる。
【0031】
さらに、バスチェック時に、入出力するデータとそのビット反転データの双方をCPUバス上にデータ出力しチェックすることより、CPUバス全ビットの電圧レベルをロウレベルおよびハイレベルに変化させてチェックするから、バスラインの断線故障および、電圧レベルがロウレベルまたはハイレベルに固定してしまうような故障も検出することができる。また、入出力装置からの応答を監視することより、入出力装置動作の異常をも検出することができる。
【0032】
従来は、バス監視ユニットを必要としたが、バス監視ユニットを必要とせずコンパクトな計算機制御装置を構成することができる。
【0033】
【発明の効果】
本発明によるバスチェックによれば、バスに異常があっても外部接続装置にCPUから誤った信号を出力することはない。また、外部接続装置から誤った信号を入力することもない。
【図面の簡単な説明】
【図1】本発明の一実施例となるバスチェック部を持つ計算制御装置を示すブロック図である。
【図2】バス幅8ビットのデータ説明略図である。
【図3】図1に示す計算制御装置にて、CPU装置から入出力装置へデータを出力するときの処理手順の一例を示す図である。
【図4】図3に示す処理手順を実行時の、CPUバスのバスサイクルの一例を示す図である。
【図5】図1に示す計算制御装置にて、CPU装置が入出力装置からデータを入力するときの処理手順の一例示す図である。
【図6】図5に示す処理手順実行時の、CPUバスのバスサイクルの一例を示す図である。
【図7】本発明の他の実施例を示す図である。
【符号の説明】
1;計算制御装置 2;外部接続装置 3;CPU装置 4;バスインタフェース部 5;バスチェック部 6;CPUバス 7;入出力装置 8;バスインタフェース部 9;バスチェック部 10;入出力部、
11 演算部
【発明の属する技術分野】
本発明は、プラントや機器の制御信号を演算してプラントや機器の制御を行う計算機制御装置に係わり、特に計算機制御装置内バスのバスチェック方法およびシステムに関する。
【0002】
【従来の技術】
【特許文献1】特開平8−328973号公報
【特許文献2】特開平10−247899号公報
従来のバスチェック方法には、前記特許文献1による先行技術がある。この文献の記載は、CPUバスにバス監視ユニットを接続し、バス接続装置間のデータ転送バスサイクルの合間、すなわちバスがあいているときを利用してCPUバスを使用し、バス監視ユニットからCPU装置へバスチェック用データを出力し、CPU装置はバスチェック用データをそのまま折り返しバス監視ユニットへ出力する。そして、バス監視ユニットにおいて前記CPU装置へ出力したバスチェック用データと前記CPU装置からの折り返し伝送されたデータを比較し、比較結果が一致したことによりバスを正常と判定、不一致のときはバスの異常と判定するものである。
【0003】
また、前記特許文献2がある。この文献の記載は、送信装置からシリアル伝送フォーマットにしたがって、順次スタートフラグ、正規アドレス、正規データ、エンドフラグ等を送信後、前記データの末尾に引き続いてスタートフラグ、前記正規アドレスのビット反転アドレス、前記正規データのビット反転データ、エンドフラグ等を付加して送信し、受信装置にて前半の正規アドレス、正規データと後半のビット反転アドレス、ビット反転データとが相互に反転したデータとなっていることが確認できたとき、伝送フレームが正常であると判定する。一方、反転データとなっていないときは、伝送フレームが異常であると判定する。
【0004】
【発明が解決しようとする課題】
前記特許文献1の場合は、バス監視ユニットによる周期的なバスチェックであるために、バスが故障してからバス異常を検出するまでにどうしても検出遅れがある。例えば、バス故障直後にCPU装置から入出力装置へデータが出力されたような場合は、入出力装置が誤ったデータを受信し、入出力装置から外部接続装置へ出力情報を出力してしまうので、誤出力となる場合がある。また、逆にバス故障直後にCPU装置が入出力装置からのデータを入力したとき、CPU装置が誤った入力データにより演算制御をおこなってしまうことになる。さらに、監視のためのバス監視ユニットが必要であり、計算制御装置を構成する部品数が多くなるという問題もある。
【0005】
また、前記特許文献2の場合は、シリアル伝送中に一過性のノイズによるデータビット反転および同期誤りを検出し、シリアル伝送データの品質向上を目的としているものであって、バス診断および異常が発生した受信装置の特定はあまり考慮されていない。
【0006】
伝送手順については、前記先行技術では、送信装置から正規データと反転データを同時に送信し、データを受信装置でチェックし異常が発生した時、受信装置でデータを破棄する手順である。これに対し、本発明では、正規データと反転データを送信する度に受信装置からの応答を確認し、バス異常および受信装置の異常を常に監視していることに特徴があり、ここに大きな差異がある。
【0007】
本発明の目的は、上記した従来技術の問題点を克服し、バス故障時、CPU装置からのデータ出力に対し入出力装置から外部接続装置へ出力情報を誤出力せず、CPU装置からの入出力装置のデータ入力に対し、CPU装置が誤ったデータを入力することのないバスチェックを有する計算機制御装置のバスチェック方法およびシステムを提供することにある。
【0008】
【課題を解決するための手段】
本発明は、以下の手段により上記課題を解決することができる。
【0009】
CPU装置と複数の入出力装置がCPUバスを介して接続され、それぞれバスチェック部を有する計算機制御装置のバスチェック方法であって、前記CPU装置より前記バスを介して前記入出力装置へ第1の出力データを出力した後、前記第1の出力データのビットを反転した第2のデータを前記入出力装置へ送信し、前記入出力装置のバスチェック部では前記第2の出力データのビットを反転した第3のデータを生成し、受信した前記第1のデータと前記第3のデータを比較し、比較した結果の一致/不一致によってバスアクセス時の正常/異常の判定をおこない判定結果を前記CPU装置へ通知するバスチェック方法である。
【0010】
また、前記入出力装置のバスチェック部にて前記第1のデータと第3のデータを比較し一致したとき、前記入出力装置から外部接続装置へ前記第1のデータの出力を許可するとともに、前記CPU装置へバスアクセスの正常を通知し、前記比較結果が不一致のときは、前記入出力装置から外部接続装置への前記第1のデータの出力を不許可とし、前記CPU装置へバスアクセス時の異常を通知すること。また、前記CPU装置が前記バスを介して前記入出力装置からデータを入力するとき、前記CPU装置より前記入出力装置へデータを要求して第1の入力データを入力後、前記CPU装置より再度前記入出力装置に前記第1の入力データのビットを反転した第2のデータの伝送を要求し、ビット反転された第2のデータを入力後、前記CPU装置のバスチェック部において前記第2の入力データのビットを反転した第3のデータを生成し、前記第1のデータと前記第3のデータとを比較し、前記比較結果の一致/不一致によってCPU装置のバスアクセス時の正常/異常を判定することにある。
【0011】
また、CPU装置と複数の入出力装置がCPUバスを介して接続され、それぞれバスチェック部を有する計算機制御装置のバスチェックシステムであって、前記CPU装置より前記バスを介して前記入出力装置へ第1のデータを出力した後、前記第1の出力データのビットを反転した第2のデータを前記入出力装置へ伝送するCPU装置側のバスチェック部と、前記第1の出力データを受信し、ビット反転した第2のデータから再度ビット反転した第3のデータを生成し、前記第1のデータと前記第3のデータを比較し、比較した結果の一致/不一致によってバスアクセスの正常/異常の判定をおこなう前記入出力装置側のバスチェック部とを備え、前記判定した結果を前記CPU装置へ通知するバスチェックシステムである。
【0012】
また、前記入出力装置側のバスチェック部は前記第1のデータと第3のデータを比較し一致したとき、前記入出力装置の入出力部から外部接続装置への前記第1のデータの出力を許可するとともに、前記CPU装置へバスアクセスの正常を通知し、前記比較結果が不一致のときは、前記入出力装置の入出力部から外部接続装置への前記第1のデータの出力を不許可とし、前記CPU装置へバスアクセス時の異常を通知すること。また、前記CPU装置が前記バスを介して前記入出力装置からデータを入力するとき、前記CPU装置から前記入出力装置へデータを要求して第1のデータを入力後、前記第1のデータのビットを反転した第2のデータの伝送を前記入出力装置へ要求し、ビット反転された第2のデータを入力後、前記第2の入力データのビットを反転した第3のデータを生成し、前記第1のデータと前記第3のデータとを比較し、前記比較結果の一致/不一致によってCPU装置のバスアクセス時の正常/異常を判定するバスチェック部をCPU側に有するバスチェックシステムである。
【0013】
【発明の実施の形態】
以下、本発明の複数の実施例について図面を参照しながら詳細に説明する。
図1は、本発明の一実施例の計算制御装置を示すブロック構成図である。計算制御装置1は、演算を行うCPU装置3と、CPU装置3からバスを介してデータ入出力要求を受けて外部接続装置2と入出力情報の授受を行う複数の入出力装置7−1〜7−nと、CPU装置3と複数の入出力装置7−1〜7−nを接続するためのCPUバス6から構成されている。また、CPU装置3とバスで接続されている複数の入出力装置7−1〜7−n内は、CPUバス6を通してデータ転送を行うためにCPU側にはバスインタフェース部4、入出力装置側にはバスインタフェース部8を設けている。
【0014】
さらに、本実施例による計算制御装置の特徴は、CPU装置3内にデータ転送時にバスをチェックし演算部11に異常を報告するバスチェック部5を設け、複数の入出力装置7−1〜7−n内には、データ転送時にバスをチェックしCPU装置3に異常を報告するバスチェック部9を設けたことにある。
【0015】
CPU装置3よりCPUバス6を通して入出力装置7(7−1〜7−n)へデータを出力する時、CPU装置3より入出力装置7へ第1の出力データを出力後、前記出力データのビット反転データである第2の出力データを前記CPUから再度入出力装置7へ出力し、入出力装置7のバスチェック部9において前記第1の出力データと前記ビット反転された第2の出力データを再度ビット反転して第3の出力データを生成し、前記第1の出力データと前記第3の出力データとを比較する。
【0016】
バスチェック部9において比較結果が一致した時、入出力装置7から外部接続装置2への入出力部10からの出力を許可する(バスチェック部9から出力許可信号9aを出力する)。外部接続装置へ前記第1の出力データを出力後、CPU装置3へバスアクセスの正常を通知する。前記比較結果が不一致の時、入出力装置7から外部接続装置2へ前記第1のデータの出力は不許可とし、出力せずCPU装置3へバスアクセスの異常を通知する。
【0017】
これを図2によりバス幅8ビットの例について説明する。簡単にするためにH(ハイレベルの信号)およびL(ロウレベルの信号)信号についての例である。図2の(A)は、CPU3から入出力装置7の送られたデータ(第1のデータ)である。これに対して図2の(B)はCPUから図2の(A)の反転データが入出力装置7に伝送される信号(第2のデータ)を表している。バスチェック部9では図2の(B)のデータを再度反転し、図2の(C)の信号(第3のデータ)を生成する。そして図2の(A)のデータと、図2の(C)のデータを比較し、一致あるいは不一致の判定をおこなう。
【0018】
また、逆にCPU装置3がCPUバス6を通して入出力装置7からデータを入力する時もまったく同じである。CPU装置3より入出力装置7へデータを要求してデータを入力後、CPU装置3より再度入出力装置7に前記入力データのビット反転データを要求してビット反転データを入力する。そのあと、CPU装置3のバスチェック部5にて前記入力データと前記ビット反転データを再度ビット反転したデータを生成し、はじめに取り込んだデータと比較し、前記比較した結果、一致/不一致によってCPU装置3のバスアクセスの正常/異常を判定し、演算部11へ報告する。
【0019】
図3は、図1に示す計算制御装置において、CPU装置3よりCPUバス6を通して入出力装置7へデータを出力する時、図3の(A)はCPU装置3側の処理手順、図3の(B)は入出力装置7側の処理手順の一例を示したものである。ここでは入出力装置7のうち、7−1の例について説明する。他の入出力装置についてもまったく同じである。
【0020】
はじめに、図1の演算部11で入出力装置7−1へデータ▲1▼の出力要求命令を実行すると(ステップs101)、バスインタフェース部4を通してCPUバス6へデータ▲1▼を出力し、バスチェック部5は、入出力装置7からの受信完了応答を待つ(ステップs102)。データ出力先となる入出力装置7は、バスチェック部9にてデータ▲1▼を受信して記憶し(ステップs201)、受信完了応答信号1aをCPU装置3へ返送する(ステップs202)。バスチェック部5は、受信完了応答信号1aを受信すると(s102)、バスインタフェース部4を通してCPUバス6へデータ▲2▼(データ▲1▼のビット反転データ)を出力し(s103)、入出力装置7からの受信完了応答を待つ(s104)。入出力装置7−1は、バスチェック部9にてデータ▲2▼を受信して、▲2▼のデータを全ビット反転して(図2の(C))データ▲3▼として記憶する(s203)。そして前記記憶したデータ▲1▼と今回記憶したデータ▲3▼が同値であるかどうかを比較する(s204)。
【0021】
その結果、一致した時、CPU装置3へ正常応答すると共に、入出力部10を通して外部接続装置2へ出力情報の出力を許可し(信号9a)、入出力部10から外部接続装置2へ出力する(s205)。また、前記比較結果が不一致のときは、CPU装置3へ異常応答する(s206)。
【0022】
バスチェック部5は、応答を受信すると(s104)、正常応答か否かを判定し(s105)、正常であれば、演算部11へデータ出力完了を報告する。また、前記応答を判定した結果、異常の応答であった場合は、演算部11へデータ出力異常を報告し、異常処理を実行する(s106)。異状処理の具体的な例としては、バスアクセスを中止し、バスの異状表示等をおこなう。
【0023】
図4は、前記図3の処理を実行し、データがCPU装置3から正常に入出力装置7へ出力された時のCPUバス6上のバスサイクルの一例で図4の(A)はアドレスを、図4の(B)はデータを示している。図3のs101を実行すると出力データ転送サイクルが開始され、CPUバス6のアドレスラインに有効アドレスが出力されると共に、データラインにデータ▲1▼が出力される。図3のs103を実行するとバスチェックサイクルが開始され、CPUバス6のデータラインにデータ▲1▼のビット反転が出力され、図3のs104にて応答を受信するとバスチェックサイクルを終了する。
【0024】
図5は、図1に示す計算制御装置において、CPU装置3がCPUバス6を介して入出力装置7−1からデータ(20a)を入力する時、CPU装置3および入出力装置7−1の処理手順の一例を示す(他の入出力装置についても同様である)。演算部11内にて入出力装置7−1からのデータ入力要求命令を実行すると(s301)、バスインタフェース部4を通してCPUバス6へデータ入力要求を出力し、バスチェック部5は、入出力装置7からのデータ出力応答を待つ(s302)。データ入力先となる入出力装置7は、外部接続装置2から入出力部10を通して入力情報20aを入力後、CPU装置3へデータ▲1▼と共にデータ出力応答を返送する(s401)。
【0025】
バスチェック部5は、入出力装置7−1からの応答受信を確認し(s302)、入出力装置7−1からのデータ▲1▼を受信して記憶し(s303)、入出力装置7−1へビット反転データの送信要求を出力して(s304)入出力装置7からの反転セータの出力応答を待つ(s305)。CPU装置3へデータを送信する入出力装置7−1は、CPU装置3へデータ▲2▼(前記データ▲1▼のビット反転データ)と共にデータ出力応答信号を返送する(s402)。バスチェック部5は、入出力装置7−1からのデータ出力応答受信を確認すると(s305)、受信した▲2▼のデータを、全ビットを反転したデータ▲3▼を記憶する(s306)。そして前記にて記憶したデータ▲1▼(s303)と▲3▼(s306)が同値であるかどうかを比較する(s307)。
【0026】
その結果、前記比較結果が一致した時、バスチェック部5は、演算部11へデータ▲1▼を渡し、演算部11にてデータ▲1▼を正常データとして演算処理する(s308)。一方前記比較結果が不一致のときは、演算部11へデータ入力異常を報告し、異常処理を実行する(s309)。
【0027】
図6は、図5の処理を実行し、CPU装置3が正常にデータを入出力装置7から入力した時のCPUバス6上のバスサイクルの一例を示す。
【0028】
図5のs301を実行すると入力データ転送サイクルが開始され、CPUバス6のアドレスラインに図6の(A)のように有効アドレスが出力されると共に、入出力装置7−1によってデータラインにデータ▲1▼が出力される。図5のs304を実行するとバスチェックサイクルが開始され、CPUバス6のデータラインに図6の(B)に示すように、データ▲1▼のビット反転が出力され、図5のs305にて応答を受信するとバスチェックサイクルを終了する。
【0029】
また、図7は本発明の他の実施例を示すものである。図7の(A)はバスインタフェース部8とバスチェック部9と入出力部10が直列接続された場合である。バスインタフェース部からのデータをバスチェック部9でチェックをおこなう方式である。また、図7の(B)はバスチェック機能を有するバスインタフェース部8aで構成した場合をしめしている。いずれの場合も図1と同様のバスチェックが可能である。
【0030】
本発明によれば、CPU装置から入出力装置へのデータ出力処理実行時に毎回バスチェックを同時に行い、バスが正常であった場合のみ入出力装置がデータを受信して外部接続装置へ出力情報を出力することより、バス故障時に外部接続装置へ誤った出力情報を出力することがない計算制御装置が得られる。また、CPU装置からの入出力装置のデータ入力処理実行時に毎回バスチェックを同時に行い、バスが正常であった場合のみCPU装置が受信データを演算制御に使用することより、CPU装置が誤ったデータにより演算制御をおこなうことがない計算制機御装置が得られる。
【0031】
さらに、バスチェック時に、入出力するデータとそのビット反転データの双方をCPUバス上にデータ出力しチェックすることより、CPUバス全ビットの電圧レベルをロウレベルおよびハイレベルに変化させてチェックするから、バスラインの断線故障および、電圧レベルがロウレベルまたはハイレベルに固定してしまうような故障も検出することができる。また、入出力装置からの応答を監視することより、入出力装置動作の異常をも検出することができる。
【0032】
従来は、バス監視ユニットを必要としたが、バス監視ユニットを必要とせずコンパクトな計算機制御装置を構成することができる。
【0033】
【発明の効果】
本発明によるバスチェックによれば、バスに異常があっても外部接続装置にCPUから誤った信号を出力することはない。また、外部接続装置から誤った信号を入力することもない。
【図面の簡単な説明】
【図1】本発明の一実施例となるバスチェック部を持つ計算制御装置を示すブロック図である。
【図2】バス幅8ビットのデータ説明略図である。
【図3】図1に示す計算制御装置にて、CPU装置から入出力装置へデータを出力するときの処理手順の一例を示す図である。
【図4】図3に示す処理手順を実行時の、CPUバスのバスサイクルの一例を示す図である。
【図5】図1に示す計算制御装置にて、CPU装置が入出力装置からデータを入力するときの処理手順の一例示す図である。
【図6】図5に示す処理手順実行時の、CPUバスのバスサイクルの一例を示す図である。
【図7】本発明の他の実施例を示す図である。
【符号の説明】
1;計算制御装置 2;外部接続装置 3;CPU装置 4;バスインタフェース部 5;バスチェック部 6;CPUバス 7;入出力装置 8;バスインタフェース部 9;バスチェック部 10;入出力部、
11 演算部
Claims (6)
- CPU装置と複数の入出力装置がCPUバスを介して接続され、CPU装置と入出力装置にそれぞれバスチェック部を有する計算機制御装置のバスチェック方法であって、前記CPU装置より前記バスを介して前記入出力装置へ第1の出力データを出力した後、前記第1の出力データのビットを反転した第2のデータを前記入出力装置へ送信し、前記入出力装置のバスチェック部では前記第2の出力データのビットを反転した第3のデータを生成し、受信した前記第1のデータと前記第3のデータを比較し、比較した結果の一致/不一致によってバスアクセス時の正常/異常の判定をおこない、判定結果を前記CPU装置へ通知する計算機制御装置のバスチェック方法。
- 請求項1の計算機制御装置において、前記入出力装置のバスチェック部にて前記第1のデータと第3のデータを比較し一致したとき、前記入出力装置から外部接続装置へ前記第1のデータの出力を許可するとともに、前記CPU装置へバスアクセスの正常を通知し、前記比較結果が不一致のときは、前記入出力装置から外部接続装置への前記第1のデータの出力を不許可とし、前記CPU装置へバスアクセス時の異常を通知する計算機制御装置のバスチェック方法。
- 請求項1の計算機制御装置において、前記CPU装置が前記バスを介して前記入出力装置からデータを入力するとき、前記CPU装置より前記入出力装置へデータを要求して第1の入力データを入力後、前記CPU装置より再度前記入出力装置に前記第1の入力データのビットを反転した第2のデータの伝送を要求し、ビット反転された第2のデータを入力後、前記CPU装置のバスチェック部において前記第2の入力データのビットを反転した第3のデータを生成し、前記第1のデータと前記第3のデータとを比較し、前記比較結果の一致/不一致によってCPU装置のバスアクセス時の正常/異常を判定する計算機制御装置のバスチェック方法。
- CPU装置と複数の入出力装置がCPUバスを介して接続され、CPU装置と入出力装置にそれぞれバスチェック部を有する計算機制御装置のバスチェックシステムであって、前記CPU装置より前記バスを介して前記入出力装置へ第1のデータを出力した後、前記第1の出力データのビットを反転した第2のデータを前記入出力装置へ伝送するCPU装置側のバスチェック部と、前記第1の出力データを受信し、ビット反転した第2のデータから再度ビット反転した第3のデータを生成し、前記第1のデータと前記第3のデータを比較し、比較した結果の一致/不一致によってバスアクセスの正常/異常の判定をおこなう前記入出力装置側のバスチェック部とを備え、前記判定した結果を前記CPU装置へ通知する計算制御装置のバスチェックシステム。
- 請求項4において、前記入出力装置側のバスチェック部は前記第1のデータと第3のデータを比較し一致したとき、前記入出力装置の入出力部から外部接続装置への前記第1のデータの出力を許可するとともに、前記CPU装置へバスアクセスの正常を通知し、前記比較結果が不一致のときは、前記入出力装置の入出力部から外部接続装置への前記第1のデータの出力を不許可とし、前記CPU装置へバスアクセス時の異常を通知する計算機制御装置のバスチェックシステム。
- 請求項4の計算機制御装置において、前記CPU装置が前記バスを介して前記入出力装置からデータを入力するとき、前記CPU装置から前記入出力装置へデータを要求して第1のデータを入力後、前記第1のデータのビットを反転した第2のデータの伝送を前記入出力装置へ要求し、ビット反転された第2のデータを入力後、前記第2の入力データのビットを反転した第3のデータを生成し、前記第1のデータと前記第3のデータとを比較し、前記比較結果の一致/不一致によってCPU装置のバスアクセス時の正常/異常を判定するバスチェック部をCPU側に有する計算機制御装置のバスチェックシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003020129A JP2004234183A (ja) | 2003-01-29 | 2003-01-29 | 計算機制御装置のバスチェック方法およびシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003020129A JP2004234183A (ja) | 2003-01-29 | 2003-01-29 | 計算機制御装置のバスチェック方法およびシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004234183A true JP2004234183A (ja) | 2004-08-19 |
Family
ID=32949841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003020129A Pending JP2004234183A (ja) | 2003-01-29 | 2003-01-29 | 計算機制御装置のバスチェック方法およびシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004234183A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011248490A (ja) * | 2010-05-25 | 2011-12-08 | Seiko Epson Corp | 記憶装置、基板、液体容器、データ記憶部に書き込むべきデータをホスト回路から受け付ける方法、ホスト回路に対し電気的に接続可能な記憶装置を含むシステム |
JP2012170000A (ja) * | 2011-02-16 | 2012-09-06 | Fujitsu Telecom Networks Ltd | 通信システム、通信装置および接続状態検出方法 |
-
2003
- 2003-01-29 JP JP2003020129A patent/JP2004234183A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011248490A (ja) * | 2010-05-25 | 2011-12-08 | Seiko Epson Corp | 記憶装置、基板、液体容器、データ記憶部に書き込むべきデータをホスト回路から受け付ける方法、ホスト回路に対し電気的に接続可能な記憶装置を含むシステム |
JP2012170000A (ja) * | 2011-02-16 | 2012-09-06 | Fujitsu Telecom Networks Ltd | 通信システム、通信装置および接続状態検出方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4308297B2 (ja) | 通信装置およびスイッチ処理装置 | |
JP2006191338A (ja) | バス内のデバイスの故障診断を行うゲートウエイ装置 | |
US8209594B2 (en) | Sending device, receiving device, communication control device, communication system, and communication control method | |
JPH01293450A (ja) | 障害装置特定システム | |
JP4291384B2 (ja) | 数値制御装置に接続されたioユニットの断線と電源断の検出方法 | |
JP5019983B2 (ja) | 車載通信システム、中継装置及び通信方法 | |
JP2004234183A (ja) | 計算機制御装置のバスチェック方法およびシステム | |
JP4954249B2 (ja) | 電子端末装置及び電子連動装置 | |
JP2013236184A (ja) | 車載通信システム、車載通信システムの通信異常監視方法、及び車載通信システムの通信異常監視プログラム | |
US8264948B2 (en) | Interconnection device | |
JP2003140704A (ja) | プロセス制御装置 | |
WO2008062511A1 (fr) | Système multiprocesseur | |
JP2002330191A (ja) | 異常検出方式、及び、異常検出システム | |
JP2000165424A (ja) | ループ式データ伝送装置 | |
JP3043738B1 (ja) | 障害発生特定システム及びその特定方法 | |
JP3245552B2 (ja) | 転送制御システム | |
KR930007469B1 (ko) | 프로세서 정합 운용시 장애진단 및 복구방법 | |
KR100271299B1 (ko) | Mk5025칩의자동절체방법 | |
JP5545125B2 (ja) | 通信装置 | |
JP2012113481A (ja) | バスモジュール及びバスシステム | |
KR101273875B1 (ko) | 데이터전송 제어방법 및 그 장치 | |
JPH11239197A (ja) | 通信制御装置及び通信制御方法 | |
JP2009015472A (ja) | コンピュータシステムのデバイス監視方式 | |
JPH07334380A (ja) | 故障検出方式 | |
JPH1115698A (ja) | 障害通知方法および障害通知機構 |