JPH09160840A - バス通信装置 - Google Patents

バス通信装置

Info

Publication number
JPH09160840A
JPH09160840A JP7320262A JP32026295A JPH09160840A JP H09160840 A JPH09160840 A JP H09160840A JP 7320262 A JP7320262 A JP 7320262A JP 32026295 A JP32026295 A JP 32026295A JP H09160840 A JPH09160840 A JP H09160840A
Authority
JP
Japan
Prior art keywords
bus
module
abnormality
register
master
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
Application number
JP7320262A
Other languages
English (en)
Inventor
Tetsuo Ishikawa
徹男 石川
Hideaki Takishita
秀明 瀧下
Akiyoshi Iwamoto
章良 岩本
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.)
Fuji Electric Co Ltd
Fuji Facom Corp
Original Assignee
Fuji Electric Co Ltd
Fuji Facom 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 Fuji Electric Co Ltd, Fuji Facom Corp filed Critical Fuji Electric Co Ltd
Priority to JP7320262A priority Critical patent/JPH09160840A/ja
Publication of JPH09160840A publication Critical patent/JPH09160840A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】バスエラーの発生及び原因を迅速に検出し、適
切なエラー対処を行いバスシステムのバスエラーを迅速
に回復させる。 【解決手段】共通制御部10はバス使用権要求信号BR
(n)を論理値“1”として送信した機能モジュール6
nに対してバス使用許可信号BG(n)を送信したと
き、予め設定したタイミング、例えば、バス使用許可信
号BG(n)を送信した次のバスクロックBCLKの立
ち上がり(時点t13)までの間に、バス使用許可信号
BG(n)を送信した送信元の機能モジュール6nが、
そのバス使用権要求信号BR(n)を論理値“0”にリ
セットするかどうかを監視する。そして、時点t13ま
での間にバス使用権要求信号BR(n)を論理値“0”
にリセットしないとき、この機能モジュール6nの、マ
スタモジュールとして作動する機能を有するハードウェ
アに異常が発生したものとして、バスエラー通知を行
う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、マルチマスタ方式
のシステムバスを含んで構成される、マイクロコンピュ
ータシステム等のバス通信装置の改良に関する。
【0002】
【従来の技術】一般にマイクロコンピュータシステム
等、システムバスを含んで構成されるバス通信装置は、
例えば、図13に示すように、システムバス2に、プロ
セッサモジュール3と、メモリモジュール4と、ハード
ディスク等の入出力装置,シリアル通信等を行う入出力
リンク,LAN(イーサネット)等の通信回線,等との
入出力処理を行う入出力/通信制御モジュール51〜5
mとが接続され、前記システムバス2を介して行われる
各モジュール間のデータ通信の制御を、共通制御部10
によって行うようになっている。
【0003】そして、各モジュール間のデータ通信は、
データ通信の要求を行うモジュールがマスタモジュール
となり、このマスタモジュールにデータ通信先として要
求されたモジュールがスレーブモジュールとなって、マ
ルチマスタ方式によってこれら間でシステムバス2を介
してのデータ通信を行っている。例えば、図13におい
て、LAN経由でデータを受信し、この受信データを入
出力装置に格納する場合を考えると、まず、LANとの
入出力処理を行う入出力/通信制御モジュール5mがマ
スタモジュールとなり、メモリモジュール4をスレーブ
モジュールに指定する。そして、LAN経由で受信した
データ(以後、LANデータという。)をメモリモジュ
ール4に転送する。次に、入出力/通信制御モジュール
5mがマスタモジュールとなって、プロセッサモジュー
ル3をスレーブモジュールに指定し、LANデータを受
信したことを通知する。
【0004】これを受けて、プロセッサモジュール3が
マスタモジュールとなって、メモリモジュール4をスレ
ーブモジュールに指定し、メモリモジュール4に格納さ
れたLANデータに対して所定の処理を行った後、入出
力/通信制御モジュール51をスレーブモジュールに指
定して、メモリモジュール4のLANデータを入出力装
置に格納するように依頼する。そして、入出力/通信制
御モジュール51がマスタモジュールとなって、メモリ
モジュール4をスレーブモジュールに設定し、メモリモ
ジュール4のLANデータを入出力装置に転送するよう
になっている。
【0005】図14は、上述のLAN経由で受信したデ
ータを入出力処理装置に転送する場合の各制御信号のタ
イムチャートを表したものである。なお、図14におい
て、BCLKはバスクロック信号,BR(n)は各モジ
ュールが発信するバス使用権要求信号,BG(n)は、
バス使用権要求信号BR(n)を受けてシステムバスの
共通制御部10が各モジュールに与えるバス使用許可信
号(n=1〜m),Adr,Dta,WT/*RDは、
前記共通制御部10からバス使用許可信号BG(n)を
与えられてマスタモジュールとなったモジュールが送信
する、アドレス,データ,コマンドである。
【0006】ここで、コマンドはデータの転送方向を表
し、WTはマスタモジュールからスレーブモジュールへ
の転送,*RDはスレーブモジュールからマスタモジュ
ールへの転送を表す。また、Ackはマスタモジュール
の送信するアドレスAdrによって選択されたスレーブ
モジュールの、コマンドWT/*RDに対する応答信号
である完了応答信号,BErは完了応答信号Ackと同
一のタイミングで送信される、バスシステムのバスエラ
ーを通知するバスエラー信号である。この完了応答信号
Ack及びバスエラー信号BErは、共通制御部10が
システムバスの異常を検出した場合には、スレーブモジ
ュールに変わって送信する。
【0007】図14に示すように、各制御信号はバスク
ロック信号BCLKに同期して送信され、各モジュール
はデータ通信を行う場合、まず、バス使用権要求信号B
R(n)を共通制御部10に送信し(時点t1)、共通
制御部10からバス使用許可信号BG(n)を受信して
マスタモジュールとなる(時点t2)。そして、データ
通信先のモジュールを特定するアドレスAdr,転送す
るデータDta,転送方向を表すコマンドを送信する。
このコマンドは、例えば論理値“1”を表す信号である
ときWTを表し、論理値“0”を表す信号であるとき*
RDを表す。図14の場合には、WT、すなわち、マス
タモジュールからスレーブモジュールへの転送を表す。
【0008】そして、マスタモジュールの送信するアド
レスAdrで選択されたスレーブモジュールが、コマン
ドを受信してから2クロック後、この場合、時点t4で
完了応答信号Ackを送信する。共通制御部10では、
この完了応答信号Ackを受信したとき、1回のデータ
転送サイクルが終了したものと認識する。このとき、マ
スタモジュールがコマンドを送信してから、スレーブモ
ジュールからの完了応答信号Ackを受信するまでの時
間は、スレーブモジュールの性能によって異なり、一般
的にはこの時間の最大時間をバスプロトコルで規定して
いる。そして、共通制御部10でこの時間を監視し、規
定時間以内に完了応答信号Ackがスレーブモジュール
から送信されない場合に、無応答の時間監視タイムアウ
トエラーとして、図14に一点鎖線で示すようにバスエ
ラーBErをマスタモジュールに送信し、バスの転送サ
イクルを異常終結させている。
【0009】
【発明が解決しようとする課題】しかしながら、上記従
来のバスシステムにおいては、例えば何れかのモジュー
ルの、マスタモジュールとして作動する機能を有するハ
ードウェアに異常が発生し、バス使用権要求信号BR
(n)を送信したままダウンした場合等には、例えば、
このモジュールがデータ通信を行うまでバス使用権がこ
のバスモジュールに占有されてしまうという状態となっ
たり、或いは、このモジュールのバス使用権の優先順位
が高い場合等にはこのモジュールにばかりバス使用権が
与えられることになってしまい、バスシステムの性能が
極端に低下してしまうという問題がある。
【0010】また、マスタモジュールが、データ通信先
のモジュールを特定するアドレスAdrを出力してスレ
ーブモジュールを指定するようになっているが、例えば
誤ってシステムバス2に実装されていない記憶領域に対
してアドレス指定を行った場合等には、完了応答信号A
ckを送信するスレーブモジュールが存在しないため、
共通制御部10ではデータ転送サイクルを終結すること
ができず、バスロック状態に陥ってしまうことになる。
これを回避するために、完了応答信号Ackが送信され
るまでの時間監視を行う方法がとられているが、この方
法の場合、規定時間が経過するまでの間は結果的にバス
ロック状態となることになって、バスシステムの性能が
低下してしまうことになる。
【0011】また、上記のように誤ったアドレスAdr
を送信することは、ソフトウェアのデバッグ中にはしば
しばあることであって、無応答の時間監視タイムアウト
エラーが、スレーブモジュールのソフトウェアの異常に
よるものか、マスタモジュールの未実装領域へのアクセ
スによるものかが識別できないとなると、ソフトウェア
のデバッグ効率を低下させることになる。
【0012】また、システムバスのバスエラーが発生し
た場合等には、共通制御部10に、そのバスエラー発生
時のバスの状態をバスエラー情報として記憶しておき、
このエラー情報をもとにマスタモジュールがエラー処理
を行い、例えば再度データ転送を行ったり、バスエラー
情報をオペレータに通知する等の処理を行うようになっ
ているが、例えば、バスエラーが発生した後、別のモジ
ュールがシステムバス2の使用権を獲得してデータ通信
を行い再度バスエラーとなった場合等には、後に生じた
バスエラー発生時のバスエラー情報が上書きされてしま
うために、初めに生じたバスエラーのバスエラー情報が
消去されてしまい、せっかく、バスエラー情報を収集し
ているのにも関わらず、初めに生じたバスエラーに対す
る的確な対処を行うことができないことになる。これを
回避するため、例えば共通制御部10に複数回分のバス
エラー情報を格納することができるようにすればよい
が、この場合、ハードウェアが複雑になると共に、コス
トアップにつながるという問題もある。
【0013】また、システムバス2にバスエラーが発生
した時点で、マスタモジュールが異常であった場合等に
は、エラー対処を行うことができず、エラー情報をオペ
レータに通知することができないという問題もある。ま
た、共通制御部10には、システム運用のための各種パ
ラメータを設定するような記憶領域があり、誤って書き
込みを行うことがないように保護機構を設ける必要があ
る。そのため、ライトプロテクト方式を採用してプロテ
クトを解除しないと書き込みを行うことができないよう
にしているが、プロテクト対象がレジスタの場合には、
アドレスのコンパレータ等を設ける必要があり、プロテ
クト対象であるレジスタに比較してプロテクト機構が複
雑になり、コストアップにつながるという問題がある。
【0014】さらに、各モジュールは、通常マスタモジ
ュールとして作動するマスタ処理又はスレーブモジュー
ルとして作動するスレーブ処理のみを行い、これら処理
を同時に行うことはないが、例えば、ソフトウェアのデ
バッグ時等、誤って自モジュールに対するアドレスAd
rを設定してしまう場合があり、この場合、マスタ及び
スレーブの両方の処理を行うことになって、場合によっ
てはバスロック状態におちいる可能性がある。自モジュ
ールのメモリ又はレジスタ領域を、システムバス2を経
由してアクセス可能な構成にすることもできるが、もと
もとモジュールの内部バス経由でアクセスできる領域に
対し、システムバス経由でもアクセスできるようにする
ことは、無駄な上にコストアップにもつながることにな
る。
【0015】そこで、この発明は上記従来の未解決の課
題に着目してなされたものであり、バスエラー及びその
原因を迅速に検出し、適切なエラー対処を行って、バス
システムのバスエラーを迅速に回復させることのできる
バス通信装置を提供することを目的としている。
【0016】
【課題を解決するための手段】上記目的を達成するため
に、本発明の請求項1に係るバス通信装置は、システム
バスを介してデータ通信を行うとき前記システムバスの
使用権を要求する使用権要求信号を送信する複数のモジ
ュールと、前記使用権要求信号の送信元のモジュールに
対して前記システムバスの使用権を与える許可信号を送
信するバス制御部と、を備えたバス通信装置において、
前記バス制御部は、前記許可信号を送信後所定時間内に
前記使用権要求信号の送信が停止しないとき、前記使用
権要求信号を送信したモジュールに異常が発生したとみ
なすようにしたことを特徴としている。
【0017】したがって、バス制御部によって使用権要
求信号が監視され、バス制御部が使用権要求信号に対す
る許可信号を送信した時点から所定時間内に、使用権要
求信号の送信が停止しないとき、使用権要求信号を送信
するモジュールに異常が発生したものとして使用権要求
信号を送信したモジュールの異常が検出される。また、
請求項2に係るバス通信装置は、前記バス制御部は、前
記モジュールの異常を検出したとき、当該モジュールを
特定するモジュール特定情報を特定情報記憶手段に格納
すると共に、前記複数のモジュールのうち専用回線で前
記バス制御部と接続されたモジュールであるバス管理モ
ジュールに、前記専用回線を介して異常通知を行い、前
記バス管理モジュールは、前記異常通知が行われたとき
前記特定情報記憶手段に格納された前記モジュール特定
情報をもとに異常が発生したモジュールを特定するよう
にしたことを特徴としている。
【0018】よって、モジュールの異常が発生したモジ
ュールを特定するモジュール特定情報が特定情報記憶手
段に格納され、また、何れかのモジュールに異常発生し
たことが専用回線を介してバス管理モジュールに通知さ
れる。これによって、特定情報記憶手段に格納されたモ
ジュール特定情報がバス管理モジュールによって読みだ
され、このモジュール特定情報をもとに異常があったモ
ジュールが特定され、例えばオペレータに通知する等の
異常発生時の所定の処理が実行される。
【0019】また、請求項3に係るバス通信装置は、前
記複数のモジュールの異常発生状況が設定されるマスク
レジスタと、前記モジュール特定情報に基づいて前記マ
スクレジスタの設定を行うマスクレジスタ設定手段とを
有し、前記バス制御部は、前記マスクレジスタの異常発
生状況に基づき異常が発生したモジュールに前記許可信
号を送信しないようにしたことを特徴としている。
【0020】よって、モジュール特定情報で特定される
異常が発生したモジュールは、マスクレジスタに異常発
生として設定され、バス制御部では、マスクレジスタで
正常として設定されているモジュールからの使用権要求
信号に対してのみ許可信号を送信し、異常が発生したモ
ジュールにはシステムバスの許可信号を送信しない。ま
た、請求項4に係るバス通信装置は、前記システムバス
を介してアクセス可能な領域を検出して当該領域を特定
する領域情報を領域情報記憶手段に格納する領域情報格
納手段を有し、前記バス制御部は、前記モジュールから
の通信先特定情報で特定されるデータ通信先の領域が、
前記領域情報記憶手段に格納された前記領域情報で特定
される領域に該当しないとき、通信先異常とみなすよう
にしたことを特徴としている。
【0021】よって、モジュールからデータ通信先の領
域を特定する通信先特定情報が送信されたとき、この通
信先特定情報で特定される領域が、領域情報記憶手段に
格納された領域情報で特定される領域に該当するか否か
が検出され、通信先特定情報で特定される領域が領域情
報で特定される領域に該当しないとき、アクセス不可能
な領域に対してのアクセス要求であり異常であるものと
して、例えば通信先特定情報を送信したモジュールに通
信先異常が通知される。
【0022】また、請求項5に係るバス通信装置は、前
記バス制御部は、前記通信先異常を検出したとき、前記
通信先特定情報を通信先記憶手段に格納すると共に前記
通信先特定情報の送信元のモジュールに通信先異常を通
知し、以後所定時間、前記送信元のモジュールに対して
のみ前記システムバスの使用権を与える使用権制限を行
い、前記モジュールは前記通信先異常が通知されたと
き、前記通信先記憶手段に格納された前記通信先特定情
報をもとに所定の異常対処処理を行うようにしたことを
特徴としている。
【0023】よって、アクセス不可能な領域に対してア
クセスを行う通信先異常が生じたとき、異常な通信先が
設定されている通信先特定情報が通信先記憶手段に格納
されると共に通信先特定情報の送信元のモジュールに対
して通信先異常が通知され、以後、前記送信元のモジュ
ールに対してのみシステムバスの使用権が与えられる。
よって、通信先記憶手段に格納された通信先特定情報及
びその他異常解析に必要な情報が、通信先異常が通知さ
れたモジュールによってシステムバスを介して迅速に収
集され、これらをもとに異常解析が行われて異常回復が
図られる。
【0024】また、請求項6に係るバス通信装置は、前
記バス制御部が、前記送信元のモジュールによる前記異
常対処処理が終了したときに前記使用権制限を解除する
ようにした場合に、前記バス制御部は、前記通信先異常
を通知した後所定時間内に前記通信先異常が回復しない
とき、前記バス管理モジュールに未回復通知用の専用回
線を介して前記未回復通知を行い、前記バス管理モジュ
ールは、前記未回復通知が行われたとき前記通信先記憶
手段に格納された前記通信先特定情報を読み出すと共
に、前記バス制御部による前記使用権制限を強制的に解
除させるようにしたことを特徴としている。
【0025】よって、通信先異常を前記送信元のモジュ
ールに対して通知した後、所定時間内に前記通信先異常
が回復しないとき、送信元のモジュールが異常とみなし
てシステムバスとは異なる回線を介してバス管理モジュ
ールに未回復通知が行われる。そして、バス管理モジュ
ールによって、通信先記憶手段に格納した通信先特定情
報が読み出されると共に、前記送信元のモジュールにの
みシステムバスの使用権を付与する処理が停止される。
そして、例えばバス管理モジュールによりオペレータに
通信先異常が通知されて、オペレータにより通信先異常
の異常解析が行われると共に、異常が発生したモジュー
ルを除くモジュールによるデータ通信が再開される。
【0026】また、請求項7に係るバス通信装置は、前
記バス制御部は、前記使用権要求信号の送信元のモジュ
ールと、前記通信先特定情報で特定されるデータ通信先
のモジュールとが同一であるとき、通信先同一異常とし
て前記送信元のモジュールに通信先同一異常通知を行う
ようにしたこと特徴としている。よって、使用権要求信
号の送信元のモジュールと、通信先特定情報で特定され
るモジュールとが同一であるとき、自己で管理する領域
に対するアクセス要求であり通信先異常であるものとし
て、送信元のモジュールに通信先同一異常が通知され
る。
【0027】さらに、請求項8に係るバス通信装置は、
予め設定したキーコードが格納されるキーコード格納領
域を有するレジスタと、前記キーコードを伴って前記レ
ジスタに対してアクセス要求を行うレジスタアクセス手
段と、前記レジスタアクセス手段のアクセス先のレジス
タのキーコード格納領域に格納されたキーコード及び前
記レジスタアクセス手段で設定されたキーコードが一致
しないとき、アクセス異常として前記レジスタへのアク
セスを無効とするレジスタ監視手段とを備えることを特
徴としている。
【0028】よって、レジスタに対するアクセス要求を
行うときに、アクセス要求で設定されているキーコード
と、アクセス要求先のレジスタに格納されているキーコ
ードとが一致しないとき、キーコードが不一致であり正
常なアクセス要求ではないものとしてレジスタへのアク
セスが行われないから、例えば、ソフトウェアのバグ等
によるレジスタへの誤った書き込みが防止される。
【0029】
【発明の実施の形態】以下に、本発明の実施の形態を説
明する。図1は、第1の実施の形態におけるバス通信装
置を適用したバスシステムの概略構成を示したものであ
り、このバスシステムは、例えば、システムバス2と、
当該システムバス2に接続された、プロセッサモジュー
ル、入出力制御モジュール、メモリモジュール、等のモ
ジュールとしての機能モジュール60〜6mと、各機能
モジュール間でのシステムバス2を介してのデータ通信
の制御及びバス使用権の調停等を行う共通制御部(バス
制御部)10とから構成され、マルチマスタ方式のバス
システムを構成している。そして、前記機能モジュール
のうち、機能モジュール60は、機能モジュールとして
例えば入出力制御等の所定の処理を行うと共に、このバ
スシステムにおける異常発生時の対処を行うバス管理モ
ジュールとして作動する。そして、共通制御部10と前
記バス管理モジュール60とは、後述のマスタモジュー
ルのハードウェア異常を通知するマスタ異常通知用の専
用回線L1で接続されている。そして、各機能モジュー
ル60〜6mは、これらをシステムバス2に接続された
実装スロットに接続することによって、システムバス2
と接続されるようになっている。
【0030】なお、接続される機能モジュールの数は、
システムの規模によって異なり、4,8,16個等の値
をとる。前記共通制御部10,バス管理モジュール6
0,機能モジュール61〜6mは、それぞれシステムバ
ス2に接続されるバスインタフェース処理部71と、マ
イクロコンピュータ等で構成されデータ伝送制御処理等
を行う演算処理部72と、メモリ73とを少なくとも備
えて構成されている。そして、これら各モジュール60
〜6m及び共通制御部10は、バスクロック信号BCL
Kに同期して所定の処理を行うようになっている。
【0031】前記共通制御部10のメモリ73には、バ
スシステムの各種異常の発生要因が設定されるエラース
テータスレジスタR1 と、システムバス2に接続された
各モジュールの異常発生状況が設定されるマスク設定レ
ジスタR2 とが設けられている。そして、共通制御部1
0では、機能モジュール61〜6mからシステムバス2
の使用権を要求する、使用権要求信号としてのバス使用
権要求信号BR(n)を受信したとき、前記マスク設定
レジスタR2 を参照し、バス使用権要求信号BR(n)
の送信元のモジュールであるマスタモジュールに異常が
発生していないことを確認した後、マスタモジュールに
対してバスクロック信号BCLKの立ち上がりに同期し
て、システムバス2の使用を許可する、許可信号として
のバス使用許可信号BG(n)を送信する。そして、マ
スタモジュールのデータ通信先の機能モジュールである
スレーブモジュールからの応答完了信号Ackを受信し
たとき、1回のデータ転送サイクルを終了する。
【0032】このとき、同時に複数のモジュールからバ
ス使用権要求信号BR(n)を受信した場合には、予め
設定した優先順位に基づいて、各モジュールに順次バス
の使用権を与える。なお、前記バス使用権要求信号BR
(n),バス使用許可信号BG(n)等の制御信号は実
際には、論理値“1”又は論理値“0”を表す2値信号
であり、ここでは、制御信号が論理値“1”であるとき
送信を表すものとし、論理値“0”であるとき送信しな
いことを表すものとする。
【0033】また、前記共通制御部10は前記バス使用
権要求信号BR(n)を監視し、バス使用許可信号BG
(n)を送信した次のバスクロック信号BCLKの立ち
上がりまでにバス使用権要求信号BR(n)の送信が停
止されないとき、すなわち、バス使用権要求信号BR
(n)が論理値“0”にリセットされないとき、マスタ
モジュールの、マスタモジュールとして作動するマスタ
機能を有するハードウェアに異常が発生したものとし
て、マスタ異常が発生したこと及びバス使用権要求信号
BR(n)を送信したモジュールを特定するマスタ番号
M(モジュール特定情報)を、前記エラーステータスレ
ジスタR1 の所定領域に格納すると共に、マスタ異常通
知用の専用回線L1を介してバス管理モジュール60に
マスタ異常を通知する。
【0034】前記マスタ番号Mは、例えば、各機能モジ
ュールが接続される実装スロットに予め各実装スロット
を識別する番号を付与しておき、この番号をマスタ番号
Mとして設定するようにしている。つまり、例えば、1
番の実装スロットに格納されている機能モジュールのマ
スタ番号Mは“1”、2番の実装スロットに格納されて
いる機能モジュールのマスタ番号Mは“2”である。
【0035】前記エラーステータスレジスタR1 は、例
えば、図2に示すように、16ビットのレジスタで構成
され、0から2ビット目(特定情報記憶手段)にマスタ
異常(MASTERERR)が発生したときのマスタモ
ジュールのマスタ番号Mを格納し、7ビット目にマスタ
異常の発生状況を設定するようになっている。つまり、
マスタ異常が発生したとき7ビット目を“1”に設定
し、マスタ異常が発生していないとき“0”に設定する
ようになっている。
【0036】前記バス管理モジュール60は、前記共通
制御部10から専用回線L1を介してマスタ異常が通知
されたとき、これを割り込み入力信号として処理を行
い、エラーステータスレジスタR1 の所定の領域(0か
ら2ビット目)に格納された異常が発生した機能モジュ
ールのマスタ番号Mをシステムバス2を経由して読み出
し、このマスタ番号Mで特定されるマスタモジュールを
検出する。そして、例えば異常通知用の表示装置等に表
示して異常の発生したマスタモジュールをオペレータに
通知し、異常モジュールの交換等を要請する。また、前
記各モジュールの異常発生状況を表すマスク設定レジス
タ(マスクレジスタ)R2 に対し、マスタ番号Mで特定
される機能モジュールに異常が発生したことを設定する
(マスクレジスタ設定手段)。
【0037】このマスク設定レジスタR2 は、例えば図
3に示すように、16ビットのレジスタで構成される。
そして、バスシステムには、例えば8個の機能モジュー
ルが接続可能であり、各機能モジュールのマスタ番号が
それぞれ0から7に設定されているものとすると、マス
ク設定レジスタR2 の0から7ビット目がそれぞれマス
タ番号に対応するようになっている。すなわち、0ビッ
ト目がマスタ番号0の機能モジュールに対応し、1ビッ
ト目がマスタ番号1の機能モジュールに対応し、……、
7ビット目がマスタ番号7の機能モジュールに対応して
いる。そして、マスク設定レジスタR2 に“1”が設定
されているとき、このビットに対応する機能モジュール
のマスタ機能に異常が生じていることを表している。図
1のバスシステムの場合には、バス管理モジュール60
のマスタ番号は“0”、機能モジュール61〜6mのマ
スタ番号は、“1”から順に設定されることになる。
【0038】前記機能モジュール61〜6mは、所定の
処理に基づいてシステムバス2を介して他の機能モジュ
ールとのデータ通信を行う。そして、マスタモジュール
として作動する場合には、バスクロック信号BCLKの
立ち上がりに同期して共通制御部10に対してバス使用
権要求信号BR(n)を送信し、バス使用権の要求を行
う。そして、共通制御部10からバス使用許可信号BG
(n)を受信したとき、データ通信先の機能モジュー
ル、すなわち、スレーブモジュールを特定するアドレス
Adrと、通信データDtaと、転送方向を表すコマン
ドとを送信すると共に、次のバスクロック信号BCLK
の立ち上がりまでの間にバス使用権要求信号BR(n)
を論理値“0”にリセットする。そして、スレーブモジ
ュールからの完了応答信号Ackを受信したとき、スレ
ーブモジュールとのデータ通信が正常に終了したことを
認識する。
【0039】なお、前記コマンドは、データの転送方向
を表し、WTは、マスタからスレーブへの転送,*RD
はスレーブからマスタへの転送を表し、コマンド信号が
論理値“1”であるときWTを表し、論理値“0”のと
き*RDを表す。また、機能モジュール61〜6mは、
マスタモジュールからのアドレスAdrが自己を特定す
るアドレスである場合に、スレーブモジュールとして作
動し、通信データDta,コマンドを受信した後、所定
時間後、例えばコマンド受信後2クロック後に応答完了
信号Ackを送信する。
【0040】次に、上記第1の実施の形態の動作を、共
通制御部10のバス使用権要求信号BR(n)受信時の
処理手順を示す図4のフローチャート及び各制御信号の
出力タイミングを表す図5のタイムチャートに基づいて
説明する。今、例えば、機能モジュール61が機能モジ
ュール62に対してデータを送信するものとする。
【0041】まず、機能モジュール61がマスタモジュ
ールとなって、バスクロック信号BCLKの立ち上がり
(時点t11)で共通処理部10に対してバス使用権要
求信号BR(1)を論理値“1”として送信する。共通
処理部10では、このバス使用権要求信号BR(1)を
受信すると、マスク設定レジスタR2 を参照し、バス使
用権要求信号BR(1)で特定されるモジュールのマス
タ番号、この場合マスタ番号“1”が正常であるか否
か、すなわち、マスタ番号“1”に対応するマスク設定
レジスタR2 の1ビット目が“0”である否かを判定す
る(ステップS11)。そして、1ビット目に“0”が
設定されている場合には、正常であるものとし、バス使
用権要求信号BR(1)を受信した後のバスクロック信
号の立ち上がり(時点t12)で、バス使用権要求信号
BR(1)を送信した機能モジュール61に対してバス
使用許可信号BG(1)を論理値“1”として送信す
る。このとき、他の機能モジュー61からもバス使用権
要求信号BR(n)が送信されている場合には、予め設
定した優先順位に基づいて優先順位の高い機能モジュー
ルに対してバス使用許可信号BG(n)を送信する(ス
テップS12)。
【0042】そして、このバス使用許可信号BG(n)
を送信した次のバスクロック信号BCLK、すなわち、
時点t13までの間にバス使用権要求信号BR(1)が
“0”にリセットされるかどうかを監視する(ステップ
S13)。なお、ステップS11で、マスク設定レジス
タR2 の1ビット目に“1”が設定されており、機能モ
ジュール61が異常として設定されている場合には、処
理を終了してバス使用権要求信号BR(1)を無視し、
マスク設定レジスタR2 の1ビット目が“0”となるま
で、バス使用権要求信号BR(1)を受け付けない。
【0043】機能モジュール61では、バス使用許可信
号BG(1)を受信すると、次のバスクロック信号BC
LKの立ち上がり(時点t13)までの間に、バス使用
権要求信号BR(1)を論理値“0”にリセットし、バ
ス使用権の要求を終了する。また、データ通信先の機能
モジュール62を特定するアドレスAdr,データ送信
するデータDta,コマンド、この場合、マスタモジュ
ール61からスレーブモジュール62に対してデータを
送信するから、コマンドWT、すなわち、論理値“1”
を送信する。
【0044】そして、機能モジュール62〜6mでは、
アドレスAdrを参照し、自己を特定するアドレスAd
rであるとき、自己あてのデータ通信であることを認識
してスレーブモジュールとなる。この場合機能モジュー
ル62がスレーブモジュールとなって、データDta及
びコマンドWTを受信する。そして、コマンドWTを受
信後、2クロック後のバスクロック信号BCLKの立ち
上がり(時点t14)で、完了応答信号Ackを論理値
“1”として送信する。そして、次のバスクロック信号
BCLKの立ち上がり(時点t15)で完了応答信号A
ckを論理値“0”にリセットする。
【0045】共通制御部10では、機能モジュール61
がバス使用権要求信号BR(1)を時点t13までの間
にリセットすることによって、マスタモジュールが正常
に動作していることを認識し(ステップS13)、さら
に、完了応答信号Ackを受信したことによって(ステ
ップS14)、マスタ及びスレーブモジュール間でのデ
ータ通信が正常に行われたことを認識し、1サイクルの
データ転送サイクルを終結する。このとき、完了応答信
号Ackを受信しない場合には、バスエラーとしてデー
タ通信を強制終了し、例えば、再度データ通信を行うよ
うマスタモジュールに通知する等の所定の処理を実行す
る(ステップS15)。
【0046】そして、マスタモジュール61は完了応答
信号Ackを受信することによって、スレーブモジュー
ル62へのデータ通信が終了したことを認識し、アドレ
スAdr,データDta,コマンドをそれぞれ“0”に
リセットする。このとき、例えば、マスタモジュール6
1のマスタ機能にハードウェア異常が発生する等によっ
て、バス使用権要求信号BR(1)が論理値“1”の状
態に保持されてしまったものとする。
【0047】この場合、共通制御部10では、バス使用
権要求信号BR(1)を監視しているから、図5に破線
で示すように時点t13までにバス使用権要求信号BR
(1)が“0”にリセットされないことを検出すると
(ステップS13)、マスタモジュール61にハードウ
ェア異常が発生したことを認識し、エラーステータスレ
ジスタR1 の7ビット目に“1”を設定してマスタ異常
が発生したことを設定する。さらに、バス使用権要求信
号BR(1)で特定されるマスタモジュール61のマス
タ番号M、すなわち、マスタ番号“1”を、0から2ビ
ット目に設定する(ステップS16)。そして、時点t
13でマスタ異常通知用の専用回線L1を介してバス管
理モジュール60にマスタ異常を通知する(ステップS
17)。
【0048】バス管理モジュール60では、マスタ異常
が通知されるとこれを割り込み入力信号として処理を行
い、まず、システムバス2経由でエラーステータスレジ
スタR1 のマスタ番号M、この場合“1”を読み込む。
そして、マスタ番号“1”からマスタモジュールが機能
モジュール61であることを検出し、これを例えば表示
装置等に表示することによって、オペレータに、機能モ
ジュール61にハードウェア異常が発生していることを
通知し、機能モジュール61の交換等の要請を行う。ま
た、マスタ異常が生じた機能モジュール61のマスタ番
号“1”に対応するマスク設定レジスタR2 の位置、す
なわち、1ビット目にシステムバス2を介して“1”を
設定する。
【0049】これによって、共通制御部10では、機能
モジュール61からバス使用権要求信号BR(1)が送
信された場合でも、マスク設定レジスタR2 でマスタ異
常と設定されていることから、機能モジュール61から
のバス使用権要求信号BR(1)を受け付けない。した
がって、機能モジュール61〜6mと共通処理部10と
の間で、バス使用権要求信号BR(n)の送信規約を設
け、共通処理部10でこれを監視するようにしたから、
例えば、マスタモジュールにハードウェア異常等が発生
し、バス使用権要求信号BR(n)が送信されたままの
状態となった場合でも、共通処理部10が規約違反とし
て検出するから、マスタモジュールのマスタ異常、すな
わち、マスタ機能のハードウェア異常を容易且つ迅速に
検出することができる。
【0050】また、共通制御部10では、マスタ異常が
生じた機能モジュールのマスタ番号をエラーステータス
レジスタR1 に格納するようにしたから、エラーステー
タスレジスタR1 のマスタ番号を参照することによっ
て、マスタ異常が生じた機能モジュールを容易に特定す
ることができる。この場合、バス管理モジュール60に
よって、エラーステータスレジスタR1 からマスタ番号
を読み出して機能モジュールを特定するようにしたか
ら、オペレータはマスタ異常が発生した機能モジュール
を容易に認識することができる。よって、マスタ異常が
生じた機能モジュールをオペレータが特定する必要はな
く、通知された時点ですぐに異常が生じた機能モジュー
ルに対する対策をとることができるから、異常回復まで
の処理時間を短縮することができる。
【0051】また、マスタ異常が生じた機能モジュール
を特定してマスク設定レジスタR2に設定し、以後共通
処理部10ではハードウェア異常が回復するまで、この
機能モジュールからのバス使用権要求信号BR(n)を
受け付けないようにしたから、マスタモジュールとして
正常に作動することのできる機能モジュールのみにバス
使用権を与えることになって、バスシステムをより有効
に活用させることができる。
【0052】また、マスタ異常をシステムバス2を介さ
ずに専用回線L1を介してバス管理モジュールに通知
し、バス管理モジュール60では、これを割り込み入力
信号として処理するようにしたから、マスタ異常を検出
した時点でバス管理モジュール60にマスタ異常を通知
することができ、バス管理モジュール60では、通知さ
れた時点でマスタ異常に対する処理を開始するから、マ
スタ異常に対する対処をより早く行うことができ、バス
システムのより早い回復を図ることができる。
【0053】次に、本発明の第2の実施の形態を説明す
る。この第2の実施の形態は、上記第1の実施の形態に
おいて、マスタモジュールから送信されるアドレスを監
視し、システムバス2に実装されないアドレスに対する
データ通信要求を回避するようにしたものである。図6
は、この第2の実施の形態におけるバス通信装置を適用
したバスシステムの概略構成を示したものである。図1
に示す第1の実施の形態において、共通制御部10とバ
ス管理モジュール60との間にエラーリセット依頼用の
専用回線(未回復通知用の専用回線)L2を設け、共通
制御部10のメモリ73に、各実装スロットの記憶領域
の構成が設定される記憶領域構成レジスタ(領域情報記
憶手段)R3 と、後述のアクセスエラーのアドレスAd
rが格納されるアドレスレジスタR4 と、アクセスエラ
ーを強制的にリセットするリセット要求が設定されるバ
スエラーリセットレジスタR5 とがさらに設けられたこ
と以外は同様であるので、同一部には同一符号を付与し
その詳細な説明は省略する。
【0054】前記共通制御部10は、上記第1の実施の
形態で説明したように、マスタモジュールからのバス使
用権要求信号BR(n)に対して所定の処理を実行する
と共に、マスタモジュールから送信される、通信先特定
情報としてのアドレスAdrが、前記記憶領域構成レジ
スタR3 で“実装あり”と設定されている領域に含まれ
るか否かを判定する。そして、記憶領域構成レジスタR
3 で“未実装領域”として設定されている領域に対して
アクセス要求がなされた場合には、そのアドレスAdr
をアドレスレジスタ(通信先記憶手段)R4 に格納する
と共に、マスタモジュールに対してシステムバスのバス
エラーBErを送信し、データ通信を異常終結させると
共に、図7のエラーステータスレジスタR1 の例えば、
6ビット目に未実装領域アクセスエラー発生として
“1”を設定する。
【0055】また、前記共通制御部10では、前記アド
レスAdrと、当該アドレスAdrを送信したマスタモ
ジュールのマスタ番号とをもとに、前記アドレスAdr
がマスタモジュールの領域に該当するかどうか、つま
り、自己モジュールの記憶領域へのアクセスかどうかを
検出する。例えば、前記アドレスAdrの上位ビットを
実装スロットを特定するアドレス,下位ビットを例え
ば、レジスタ、メモリ等の記憶領域を特定するアドレス
として、前記アドレスAdrを構成する。そして、共通
制御部10では、アドレスAdrの上位ビットで特定さ
れる実装スロット、すなわち、マスタ番号と、バス使用
権用要求信号BR(n)で特定されるマスタ番号とを比
較し、これらが同一であるときアクセスエラーとしてい
る。
【0056】そして、バスエラーBErをマスタモジュ
ールに送信すると共に、このアドレスAdrをアドレス
レジスタR4 に格納し、また、バスエラー発生時のバス
の状態等をバスエラー情報として所定の領域に格納する
と共に、図7のエラーステータスレジスタR1 の、例え
ば4ビット目に自モジュール記憶領域アクセスエラー発
生として“1”を設定する。
【0057】そして、共通制御部10は、アクセスエラ
ーによるバスエラーBErをマスタモジュールに送信し
た後、予め設定した期間、例えば最長2048クロック
サイクル間、バスエラーを発生させたマスタモジュール
についてのみバス使用権を与える。すなわち、共通制御
部10は前述のバス使用権要求信号BR(n)の調停処
理を一次的に停止し、マスタモジュールのバス使用権要
求信号BR(n)のみを受け付ける。そして、図8に示
すように、16ビットのレジスタで形成されたバスエラ
ーリセットレジスタR5 の7ビット目に“1”が設定さ
れたとき、バスエラー回復として、この7ビット目を
“0”にリセットすると共に、全機能モジュールからの
バス使用権要求信号BR(n)の受け付けを開始する。
【0058】そして、所定期間、この場合2048クロ
ックサイクル経過後も、バスエラーリセットレジスタR
5 に“1”が設定されない場合には、マスタモジュール
に異常が生じたものとし、バス管理モジュール60に対
し専用回線L2を介して、エラーリセット依頼を通知す
る。前記バス管理モジュール60は、上記第1の実施の
形態で説明したように、専用回線L1を介してマスタ異
常が通知されたとき、これを割り込み入力信号として所
定の処理を実行すると共に、リセットスタート時に、シ
ステムバス2上の全実装スロットについて所定の領域を
読み出し、その応答状況から各実装スロットの記憶領域
の構成状況を検出し、この検出結果を前記記憶領域構成
レジスタR3にシステムバス2を介して設定する(領域
情報格納手段)。
【0059】例えば、各実装スロットに接続可能な機能
モジュールについて、そのメモリ73及びレジスタ74
のアドレスを、例えば全機能モジュールについて共通の
アドレスに予め設定しておく。バス管理モジュール60
は、リセットスタート時に、システムバス2上の全実装
スロットについて、実装スロットに実装可能な記憶領域
に対してアクセスを行う。すなわち、予め設定したメモ
リ73及びレジスタ74のアドレスをもとに、これら領
域の例えば先頭アドレスに対してアクセスを行い、各実
装スロット毎のメモリ73及びレジスタ74へのアクセ
スに対する応答情報を受信したか否かを検出する。そし
て、例えば、前記1番の実装スロットのメモリ73に対
する応答情報を受信した場合には、1番の実装スロット
にはメモリ73が実装されていると判断する。また、レ
ジスタ74に対する応答情報を受信しない場合には、1
番の実装スロットにはレジスタ74が実装されていない
と判断する。
【0060】そして、このようにして検出した各実装ス
ロット毎の記憶領域の構成状況を記憶領域構成レジスタ
3 に設定する。この記憶領域構成レジスタR3 は、図
9に示すようにメモリ用レジスタR3a(図9(a))
と、レジスタ用レジスタR3b(図9(b))とから構成
されている。そして、これらレジスタR3a,R3bは、そ
れぞれ、16ビットのレジスタで構成され、例えば、シ
ステムバス2に実装スロットが8個設けられているもの
とすると、0ビット目が0番の実装スロット,1ビット
目が1番の実装スロットというように各ビットが順に各
実装スロットに対応するようになっている。そして、実
装されていると判断されたメモリ73及びレジスタ74
について、各レジスタR3a及びR3bの実装スロットで特
定される対応するビットに“1”を設定するようになっ
ている。
【0061】なお、前記記憶領域構成レジスタR3 は、
リセットスタート時の初期設定としては、全領域実装状
態を表す状態、すなわち、全ビット“1”に設定されて
いるものとする。また、前記バス管理モジュール60
は、専用回線L2を介してエラーリセット依頼が通知さ
れたとき、これを割り込み入力信号として処理し、図7
のエラーステータスレジスタR1 を参照し、未実装領域
アクセスエラーであることを認識する。そして、アドレ
スレジスタR4 からそのアドレスを読み出すと共に、共
通制御部10の所定領域に格納されたバスエラー情報を
読み出して自己の所定領域に格納した後、共通制御部1
0のバスエラーリセットレジスタR5 (図8)の7ビッ
ト目に“1”を設定し、バスエラーを強制解除する。
【0062】一方、前記機能モジュールは、上記第1の
実施の形態と同様に、マスタ又はスレーブモジュールと
して作動すると共に、バスエラーBErが送信された場
合には、エラーステータスレジスタR1 (図7)を参照
し、未実装領域アクセスエラーを表す6ビット目に
“1”が設定されているか、又は、自モジュール記憶領
域アクセスエラーを表す4ビット目に“1”が設定され
ているかを検出することによって、未実装領域アクセス
エラー又は自モジュール記憶領域アクセスエラーが生じ
ていることを認識する。そして、共通制御部10のアド
レスレジスタR4 からアドレス情報をシステムバス2を
経由して読み出し、また、共通制御部10の所定領域に
格納したバスエラー情報を読み出し、これらをもとに自
己が送信したアドレス情報を解析し、データ転送のリト
ライ、或いはバスエラー情報をオペレータに通知する等
の異常対処を行う。そして、エラー対処処理終了後、バ
スエラーリセットレジスタR5 に“1”を設定し、バス
エラー解除を行う。
【0063】次に、上記第2の実施の形態の動作を、共
通制御部10のアドレスAdrの監視処理の処理手順を
示す図10のフローチャート、及びマスタモジュールの
バスエラーBEr受信時の処理手順を示す図11のフロ
ーチャートに基づいて説明する。例えば、図6に示すバ
スシステムにおいて、0番から7番までの実装スロット
が設けられ、各実装スロット全てに機能モジュールが接
続されているものとする。そして、0番の実装スロット
にはバス管理モジュール60が接続され、1番から7番
の実装スロットにはそれぞれ機能モジュール61から6
7が接続されているものとする。
【0064】また、機能モジュール61及び62には、
記憶領域としてメモリ73とレジスタ74とが構成さ
れ、これらには予め設定された共通のアドレスが付与さ
れているものとする。また、機能モジュール63から6
7には、記憶領域としてメモリ73のみが構成さている
ものとする。このバスシステムをリセットスタートする
と、バス管理モジュール60が、各実装スロットを特定
するアドレスとメモリ73のアドレスとからアドレス情
報を形成し、これをアドレスAdrとして送信して各実
装スロットのメモリ73の実装状況を検索すると共に、
同様にして各実装スロットを特定するアドレスとレジス
タ74のアドレスとからアドレス情報を形成し、各実装
スロットのレジスタ74の実装状況を検索する。各機能
モジュール61から67は、アドレスAdrが自己の記
憶領域に対するアクセスの場合に、指定された記憶領域
の情報を読み出してこれを送信する。
【0065】そして、バス管理モジュール60では、そ
の応答情報に基づき記憶領域構成レジスタR3 の設定を
行う。この場合、機能モジュール61及び62について
は、メモリ73及びレジスタ74へのアクセスに対する
応答情報が送信されるから、1番及び2番の実装スロッ
トについては、記憶領域としてメモリ73及びレジスタ
74が共に形成されているものと判断する。そして、そ
の他の実装スロットについては、レジスタ74が形成さ
れていないため、各機能モジュール63から67がその
アドレスへのアクセスを無視することから、バス管理モ
ジュール60では無応答であることを認識し、3番から
7番の実装スロットには、レジスタ74が未実装である
ものと判定する。また、バス管理モジュール60では、
例えば自モジュールで、メモリ73及びレジスタ74の
実装状況を検出する。
【0066】そして、バス管理モジュール60では、検
出した実装状況に基づいて図7に示す、メモリ用レジス
タR3a及びレジスタ用レジスタR3bの設定をシステムバ
ス2を介して行う。つまり、リセットスタート時には記
憶領域構成レジスタR3 は、全ビット“1”に設定され
ているから、レジスタ用レジスタR3bの無応答であった
3番から7番の実装スロットに対応する、3ビットから
7ビットを“0”に設定する。
【0067】この状態から、例えば、機能モジュール6
1から機能モジュール62に対してデータ通信を行うも
のとすると、上記第1の実施の形態と同様に、機能モジ
ュール61が所定の手順にしたがってバス使用権要求信
号BR(1)を送信し、共通制御部10からバス使用許
可信号BG(1)を受信する。これを受けて機能モジュ
ール61では、データ通信先の機能モジュール62及び
アクセス先を特定するアドレスAdr,データDta,
コマンドを送信する。
【0068】このとき、共通制御部10では、このアド
レスAdrを監視し、このアドレスAdrに対応する領
域が、記憶領域構成レジスタR3 で“実装あり”として
設定されている領域に該当するか否かを判定する(ステ
ップS21)。そして、該当する場合には、続いてアド
レスAdrの上位ビット、すなわち、実装スロットを特
定するアドレスをもとに特定されるマスタ番号が、機能
モジュール61を特定するマスタ番号と一致するか、つ
まり、機能モジュール61が自己の領域に対してアクセ
ス要求を行っていないかを検出する(ステップS2
2)。そして、マスタ番号が一致しない場合には正常で
あるものとしてアドレス監視処理を終了する。これによ
って、上記第1の実施の形態と同様に処理が行われ、一
回の転送サイクルが終了する。
【0069】このとき、例えば、アドレスAdrで特定
される領域が記憶領域構成レジスタR3 に“未実装”と
して設定されている場合には、共通制御部10では、ア
ドレスAdrをアドレスレジスタR4 に格納し、エラー
ステータスレジスタR1 の未実装領域アクセスエラーを
表す6ビット目を“1”に設定する(ステップS2
3)。そして、マスタモジュール61に対してバスエラ
ーBErを送信する(ステップS24)と共に、バスエ
ラーリセットレジスタR5 に対してエラーリセットが設
定されるまでの時間監視を開始する。そして、以後、マ
スタモジュール61からのバス使用権要求信号BR
(1)のみを受け付けてマスタモジュール61にのみシ
ステムバス2のバス使用権を与える(ステップS2
5)。
【0070】また、例えば、アドレスAdrで特定され
るマスタ番号が機能モジュール61を特定するマスタ番
号である場合には、同様にしてアドレスAdrをアドレ
スレジスタR4 に格納すると共に、エラーステータスレ
ジツアR1 の自モジュール記憶領域アクセスエラーを表
す4ビット目に“1”を設定する(ステップS23)。
そして、以後前記と同様に処理を行う。
【0071】マスタモジュールでは、バスエラーBEr
が通知されると、所定の異常時の処理を実行してデータ
転送処理を終了し(ステップS41)、システムバス2
を経由してエラーステータスレジスタR1 を読み出し、
バスエラーの発生要因を検出する(ステップS42)。
そして、4ビット目又は6ビット目に“1”が設定され
ている場合、すなわち、バスエラーの発生要因が未実装
領域アクセスエラー又は自モジュール記憶領域アクセス
エラーである場合、つまり、アドレスに異常がある場合
には(ステップS43)、アドレスレジスタR4 をシス
テムバス2を介して読み出す(ステップS44)。そし
て、これをもとに異常解析を行う等の所定の処理を実行
し(ステップS45)、所定の異常対処処理を実行して
異常を回復させた後、異常回復としてバスエラーリセッ
トレジスタR5 に“1”を設定する(ステップS4
6)。
【0072】なお、アドレス異常でない場合には、上記
第1の実施の形態と同様に、所定の異常対処処理を行っ
て異常回復を図る(ステップS47)。一方、前記共通
制御部10では、エラーリセットレジスタR5 へのエラ
ーリセットがなされたか否かを監視し(ステップS2
6)、予め設定したバスクロック2048サイクル内に
エラーリセットが行われたとき、エラーステータスレジ
スタR1 の、発生したアドレスエラーに対応するビット
及びアドレスレジスタR4,バスエラーリセットレジス
タR5 をそれぞれリセットし(ステップS27)、アド
レス監視処理を終了する。以後、各モジュールからのバ
ス使用権要求信号BR(n)の受け付けを再開する。
【0073】そして、バスクロック2048サイクル内
に、バスエラーリセットレジスタR 5 がエラーリセット
されない場合には(ステップS28)、マスタモジュー
ルが異常であるものとして専用回線L2を介してバス管
理モジュール60にエラーリセット依頼を行う。そし
て、以後、バスエラーリセットレジスタR5 がエラーリ
セットされるまでの間、バス管理モジュール60に対し
てのみ、バス使用権を与える(ステップS29)。
【0074】バス管理モジュール60では、専用回線L
2を介してエラーリセット依頼が通知されると、これを
割り込み入力信号として処理を行い、まず、エラーステ
ータスレジスタR1 をシステムバス2を介して読み出し
て、バスエラーの発生要因を検出し、同様にしてアドレ
スレジスタR4 を読み出す。そして、バスエラーの発生
要因から特定される異常対処処理に必要なバスエラー情
報を共通制御部10の所定領域から読み出して、自己の
所定の領域に格納した後、例えばオペレータに異常通知
を行う等の所定の処理を実行する。
【0075】また、所定のバスエラー情報を共通制御部
10から読み出した後、システムバス2を経由してバス
エラーリセットレジスタR5 に“1”を書き込む。これ
をうけて、共通制御部10では、バスエラーリセットレ
ジスタR5 にエラーリセットが設定されたことから(ス
テップS30)、エラーステータスレジスタR1 の、発
生したアドレスエラーに対応するビット及びアドレスレ
ジスタR4,バスエラーリセットレジスタR5 等をそれ
ぞれリセットし(ステップS27)、アドレス監視処理
を終了する。以後、各モジュールからのバス使用権要求
信号BR(n)の受け付けを再開する。
【0076】したがって、予めリセットスタート時に、
各実装スロット毎に、アクセス可能な記憶領域を検出し
てこれを記憶領域構成レジスタR3 に設定しておき、こ
の記憶領域構成レジスタR3 をもとにマスタモジュール
のアドレスAdrを監視するようにしたから、未実装領
域に対するアクセスエラーを容易に検出することがで
き、スレーブモジュールからの応答完了信号Ackを待
つ待ち状態となることによってバスロック状態となるこ
とを回避できる。特に、ソフトウェアのデバッグ中等に
は、誤って未実装領域に対してアクセスを行うことが多
々あるが、アドレスAdrを送信した時点で未実装領域
へのアクセスエラーであることを検出することができる
から、デバッグ処理の処理効率をより向上させることが
できる。
【0077】また、未実装領域に対するアクセスエラー
と共に、アドレスAdrを監視してマスタモジュールの
自モジュールに対するアクセスエラーを検出するように
したから、機能モジュールがマスタモジュール及びスレ
ーブモジュールとして同時に動作することによって、バ
スロック状態に陥る可能性を取り除くことができ、バス
システムの信頼性をより向上させることができる。
【0078】また、バスエラー発生時には、マスタモジ
ュールに対してのみ、バス使用権を付与するようにした
から、マスタモジュールは優先的にシステムバス2を介
して各部とのデータ通信を行うことができ、必要な情報
を必要な時に各部から収集することができるから、バス
エラー回復までの処理時間を短縮することができ、異常
箇所を迅速に回復しバスシステムをより早く回復させる
ことができる。
【0079】また、マスタモジュールが異常対処処理を
行っているとき、所定時間はバス使用権がマスタモジュ
ールにのみ与えられるから、従来のように、例えばバス
エラー発生後、他の機能モジュールがシステムバス2を
介してデータ通信を行い異常が発生することによって、
後に発生したバスエラーのバスエラー情報が最初のバス
エラー発生時のバスエラー情報に上書きされ、エラー対
処に必要なバスエラー情報が消去される等といったこと
を回避することができ、マスタモジュールは、確実にバ
スエラー情報を得ることができるから、エラー解析を容
易に行うことができ、より早い時点でバスシステムを回
復させることができる。
【0080】また、マスタモジュールの異常対処処理が
所定時間経過しても終了しないとき、マスタモジュール
に異常が発生したものとして、専用回線L2を介してバ
ス管理モジュール60にエラーリセット依頼を行うよう
にしたから、バス使用権がマスタモジュールに付与され
た状態となってバスシステムがバスロック状態となるこ
とを回避することができ、また、専用回線L2によって
異常を通知するようにしたから、マスタモジュールの異
常を検出した時点でバス管理モジュール60は対処する
ことができ、より早い時点でのバスシステムの回復を図
ることができる。また、このとき、共通制御部10に格
納しているバスエラー情報を、バス管理モジュール60
で読み出すようにしたから、オペレータは、バス管理モ
ジュール60を操作することによって、これらバスエラ
ー情報を得ることができ、マスタモジュールに代わって
バスエラー及びマスタモジュールの異常に対する異常解
析を容易に行うことができる。よって、バスシステムの
迅速な回復を図ることができる。
【0081】なお、上記第2の実施の形態においては、
機能モジュールに、異常対処処理を付加したバス管理モ
ジュールを適用した場合について説明したが、異常対処
処理のみを行う専用のバス管理モジュールを設けるよう
にすることも可能であり、この場合、コストアップにつ
ながることになるが、例えば、バス管理モジュール60
自体がバスエラーを発生させた場合には、バスロック状
態に陥る可能性があるが、専用のバス管理モジュールを
設けることによって、バスロックを確実に回避すること
ができ、バスシステムの信頼性をより向上させることが
できる。
【0082】次に、本発明の第3の実施の形態について
説明する。上記第2の実施の形態においては、共通制御
部10ではアドレスAdrをもとに、未実装領域アクセ
スエラー及び自モジュール記憶領域アクセスエラーを検
出するようにした場合について説明したが、この第3の
実施の形態では例えば、各機能モジュール60〜6m、
或いは、共通制御部10の各レジスタにキーコードビッ
ト(キーコード格納領域)を設け、これらレジスタに対
してアクセス要求を行う場合には、アドレスに所定のキ
ーコードを付加してアクセス要求を行う(レジスタアク
セス手段)。そして、受信側でこのキーコードをチェッ
クする。
【0083】図12は、図3に示す共通制御部10のマ
スク設定レジスタR2 に、キーコードビットを設けたも
のであり、8ビット目から15ビット目にキーコードビ
ットを設けている。共通制御部10では、各機能モジュ
ール60〜6mからのマスク設定レジスタR2 への書き
込み要求に対し、その上位ビットが予め設定したキーコ
ード、例えば、16進数で“A5”であるときのみ、マ
スク設定レジスタR2 への書き込みを行う。そして、上
位ビットが予め設定したキーコードと一致しない場合に
は、受信したデータを、例えば共通制御部10に設けた
データラッチレジスタ(図示せず。)に格納する。そし
て、エラーステータスレジスタR1 の空きビット、例え
ば、図7において、5ビット目をレジスタアクセス規約
違反エラーに対応するビットとして設定し、これに
“1”を設定する。そして、マスタモジュールに対して
バスエラーBErを通知する(レジスタ監視手段)。
【0084】これを受けて、マスタモジュールは、前記
と同様に、エラーステータスレジスタR1 を参照して、
レジスタアクセス規約違反が発生したことを認識し、シ
ステムバス2を介して前記データラッチレジスタを読み
出し、違反内容を認識し所定のキーコードを設定して再
送する等の所定の処理を実行する。したがって、各レジ
スタにキーコードを設け、レジスタへの書き込み要求時
には共通制御部10でキーコードをチェックするように
したから、モジュール内ソフトウェアのバグや、プロセ
ッサの暴走等によってレジスタに対して誤って書き込み
を行うことを防止することができる。また、アドレスの
コンパレータ等を設ける必要がなく、複雑なプロテクト
機構を用いることなくレジスタへの書き込み保護を行う
ことができる。
【0085】なお、上記第3の実施の形態では、共通制
御部10のマスク設定レジスタR2に対してキーコード
を設けた場合について説明したが、その他のレジスタに
適用することも可能であり、また、共通制御部10に限
らず、各機能モジュールのレジスタについても設定する
ようにすれば、バスシステムの信頼性をより向上させる
ことができる。
【0086】
【発明の効果】以上説明したように、請求項1に係るバ
ス通信装置は、許可信号を送信した後所定時間内に使用
権要求信号の送信が停止するか否かを監視するようにし
たから、送信元のモジュールの異常を容易且つ迅速に検
出することができ、例えば、使用権要求信号を送信した
後、前記モジュールが異常となること等により生じるバ
スシステムのロック状態を確実に回避し、バスシステム
の信頼性を向上させることができる。
【0087】また、請求項2に係るバス通信装置は、使
用権要求信号の送信元のモジュールの異常を検出したと
き、このモジュールを特定するモジュール特定情報を特
定情報記憶手段に格納すると共に、異常発生をバス管理
モジュールに専用回線を介して通知するようにしたか
ら、バス管理モジュールでは、異常が通知されたときに
特定情報記憶手段に格納されたモジュール特定情報を参
照することによって、迅速に且つ容易に異常が生じたモ
ジュールを特定することができる。
【0088】また、請求項3に係るバス通信装置は、異
常が発生したモジュールからの使用権要求信号は無視
し、正常に作動可能なモジュールからの使用権要求信号
に対してのみ許可信号を送信するようにしたから、異常
が生じているモジュールによるシステムバスを介しての
データ通信を回避し、バスシステムの信頼性を向上させ
ることができる。
【0089】また、請求項4に係るバス通信装置は、シ
ステムバスを介してアクセス可能な領域を予め検出して
おき、各モジュールからのデータ通信先を特定する領域
が前記アクセス可能な領域に該当しないとき、通信先異
常とみなすようにしたから、例えば、アクセス不可能な
領域に対するアクセス要求を行い、相手先からの応答待
ちを行うことによってバスシステムがロック状態となる
ことを確実に防止することができ、バスシステムの信頼
性を向上させることができる。
【0090】また、請求項5に係るバス通信装置は、通
信先異常が生じた通信先特定情報を保持し、以後、当該
通信先特定情報を送信した送信元のモジュールに対して
のみバス使用権を付与するようにしたから、通信先異常
を発生させたモジュールは、システムバスを占有して、
通信先特定情報或いは、その他必要な情報を収集するこ
とができるから、より早く異常回復することができる。
【0091】また、請求項6に係るバス通信装置は、通
信異常を発生させたモジュールに対して通信先異常を通
知した後所定時間内に通信先異常が回復しないとき、バ
ス管理モジュールに対して未回復通知を行い、通信先記
憶手段の通信先特定情報を読み出すと共に、使用権制限
を停止させるようにしたから、モジュールの異常を迅速
に検出することができると共に、通信先異常発生時の通
信先特定情報を確実に収集した後、異常が発生したモジ
ュールを除くモジュールによるデータ通信を再開させる
ことができる。
【0092】また、請求項7に係るバス通信装置は、使
用権要求信号の送信元のモジュールと、前記通信先特定
情報で特定されるモジュールとが同一であるとき、通信
先同一異常として検出するようにしたから、自己で管理
する領域に対するアクセスにより生じるバスロック状態
を確実に回避することができ、バスシステムの信頼性を
より向上させることができる。
【0093】さらに、請求項8に係るバス通信装置は、
予め設定したキーコードが一致するときのみレジスタへ
のアクセスを可能にしたから、レジスタへの誤った書き
込みを、コストアップを伴うことなく容易且つ確実に防
止することができる。
【図面の簡単な説明】
【図1】第1の実施の形態におけるバス通信装置を適用
したバスシステムの一例を示す構成図である。
【図2】第1の実施の形態におけるエラーステータスレ
ジスタR1 のフォーマットの一例である。
【図3】第1の実施の形態におけるマスク設定レジスタ
2 のフォーマットの一例である。
【図4】第1の実施の形態における共通制御部の処理手
順の一例を示すフローチャートである。
【図5】第1の実施の形態の動作説明に供するタイムチ
ャートである。
【図6】第2の実施の形態におけるバス通信装置を適用
したバスシステムの一例を示す構成図である。
【図7】第2の実施の形態におけるエラーステータスレ
ジスタR1 のフォーマットの一例である。
【図8】バスエラーリセットレジスタR5 のフォーマッ
トの一例である。
【図9】記憶領域構成レジスタR3 のフォーマットの一
例である。
【図10】第2の実施の形態における共通制御部の処理
手順の一例を示すフローチャートである。
【図11】第2の実施の形態におけるバスエラー発生時
のマスタモジュールの処理手順の一例を示すフローチャ
ートである。
【図12】第3の実施の形態におけるマスク設定レジス
タR2 のフォーマットの一例である。
【図13】従来のバス通信装置を適用したバスシステム
の一例を示す構成図である。
【図14】従来のバス通信装置の動作説明に供するタイ
ムチャートである。
【符号の説明】
2 システムバス 10 共通制御部 60 バス管理モジュール 61〜6m 機能モジュール R1 エラーステータスレジスタ R2 マスク設定レジスタ R3 記憶領域構成レジスタ R4 アドレスレジスタ R5 エラーリセットレジスタ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 岩本 章良 東京都日野市富士町1番地 富士ファコム 制御株式会社内

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 システムバスを介してデータ通信を行う
    とき前記システムバスの使用権を要求する使用権要求信
    号を送信する複数のモジュールと、前記使用権要求信号
    の送信元のモジュールに対して前記システムバスの使用
    権を与える許可信号を送信するバス制御部と、を備えた
    バス通信装置において、前記バス制御部は、前記許可信
    号を送信後所定時間内に前記使用権要求信号の送信が停
    止しないとき、前記使用権要求信号を送信したモジュー
    ルに異常が発生したとみなすようにしたことを特徴とす
    るバス通信装置。
  2. 【請求項2】 前記バス制御部は、前記モジュールの異
    常を検出したとき、当該モジュールを特定するモジュー
    ル特定情報を特定情報記憶手段に格納すると共に、前記
    複数のモジュールのうち専用回線で前記バス制御部と接
    続されたモジュールであるバス管理モジュールに、前記
    専用回線を介して異常通知を行い、前記バス管理モジュ
    ールは、前記異常通知が行われたとき前記特定情報記憶
    手段に格納された前記モジュール特定情報をもとに異常
    が発生したモジュールを特定するようにしたことを特徴
    とする請求項1記載のバス通信装置。
  3. 【請求項3】 前記複数のモジュールの異常発生状況が
    設定されるマスクレジスタと、前記モジュール特定情報
    に基づいて前記マスクレジスタの設定を行うマスクレジ
    スタ設定手段とを有し、前記バス制御部は、前記マスク
    レジスタの異常発生状況に基づき異常が発生したモジュ
    ールに前記許可信号を送信しないようにしたことを特徴
    とする請求項1又は2記載のバス通信装置。
  4. 【請求項4】 前記システムバスを介してアクセス可能
    な領域を検出して当該領域を特定する領域情報を領域情
    報記憶手段に格納する領域情報格納手段を有し、前記バ
    ス制御部は、前記モジュールからの通信先特定情報で特
    定されるデータ通信先の領域が、前記領域情報記憶手段
    に格納された前記領域情報で特定される領域に該当しな
    いとき、通信先異常とみなすようにしたことを特徴とす
    る請求項1乃至3の何れかに記載のバス通信装置。
  5. 【請求項5】 前記バス制御部は、前記通信先異常を検
    出したとき、前記通信先特定情報を通信先記憶手段に格
    納すると共に前記通信先特定情報の送信元のモジュール
    に通信先異常を通知し、以後所定時間、前記送信元のモ
    ジュールに対してのみ前記システムバスの使用権を与え
    る使用権制限を行い、前記モジュールは前記通信先異常
    が通知されたとき、前記通信先記憶手段に格納された前
    記通信先特定情報をもとに所定の異常対処処理を行うよ
    うにしたことを特徴とする請求項4記載のバス通信装
    置。
  6. 【請求項6】 前記バス制御部が、前記送信元のモジュ
    ールによる前記異常対処処理が終了したときに前記使用
    権制限を解除するようにした場合に、前記バス制御部
    は、前記通信先異常を通知した後所定時間内に前記通信
    先異常が回復しないとき、前記バス管理モジュールに未
    回復通知用の専用回線を介して前記未回復通知を行い、
    前記バス管理モジュールは、前記未回復通知が行われた
    とき前記通信先記憶手段に格納された前記通信先特定情
    報を読み出すと共に、前記バス制御部による前記使用権
    制限を強制的に解除させるようにしたことを特徴とする
    請求項5記載のバス通信装置。
  7. 【請求項7】 前記バス制御部は、前記使用権要求信号
    の送信元のモジュールと、前記通信先特定情報で特定さ
    れるデータ通信先のモジュールとが同一であるとき、通
    信先同一異常として前記送信元のモジュールに通信先同
    一異常通知を行うようにしたことを特徴とする請求項1
    乃至6の何れかに記載のバス通信装置。
  8. 【請求項8】 予め設定したキーコードが格納されるキ
    ーコード格納領域を有するレジスタと、前記キーコード
    を伴って前記レジスタに対してアクセス要求を行うレジ
    スタアクセス手段と、前記レジスタアクセス手段のアク
    セス先のレジスタのキーコード格納領域に格納されたキ
    ーコード及び前記レジスタアクセス手段で設定されたキ
    ーコードが一致しないとき、アクセス異常として前記レ
    ジスタへのアクセスを無効とするレジスタ監視手段と、
    を備えることを特徴とする請求項1乃至7の何れかに記
    載のバス通信装置。
JP7320262A 1995-12-08 1995-12-08 バス通信装置 Pending JPH09160840A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7320262A JPH09160840A (ja) 1995-12-08 1995-12-08 バス通信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7320262A JPH09160840A (ja) 1995-12-08 1995-12-08 バス通信装置

Publications (1)

Publication Number Publication Date
JPH09160840A true JPH09160840A (ja) 1997-06-20

Family

ID=18119548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7320262A Pending JPH09160840A (ja) 1995-12-08 1995-12-08 バス通信装置

Country Status (1)

Country Link
JP (1) JPH09160840A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001005639A (ja) * 1999-06-21 2001-01-12 Toshiba Corp 浮動小数点演算装置
JP2005235214A (ja) * 2004-02-19 2005-09-02 Marconi Intellectual Property (Ringfence) Inc 不具合が存在するときにスイッチ障害を防止する方法、装置及びソフトウエア
JP2007506267A (ja) * 2003-09-15 2007-03-15 エヌヴィディア コーポレイション 半導体機能回路のテストおよび構成のためのシステムおよび方法
US7352480B2 (en) 2002-03-22 2008-04-01 Canon Kabushiki Kaisha Image processing apparatus and image processing method
JP2015135599A (ja) * 2014-01-17 2015-07-27 Necエンジニアリング株式会社 バス制御回路、情報処理装置および共通バス衝突回避方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001005639A (ja) * 1999-06-21 2001-01-12 Toshiba Corp 浮動小数点演算装置
US7352480B2 (en) 2002-03-22 2008-04-01 Canon Kabushiki Kaisha Image processing apparatus and image processing method
JP2007506267A (ja) * 2003-09-15 2007-03-15 エヌヴィディア コーポレイション 半導体機能回路のテストおよび構成のためのシステムおよび方法
JP2005235214A (ja) * 2004-02-19 2005-09-02 Marconi Intellectual Property (Ringfence) Inc 不具合が存在するときにスイッチ障害を防止する方法、装置及びソフトウエア
JP2015135599A (ja) * 2014-01-17 2015-07-27 Necエンジニアリング株式会社 バス制御回路、情報処理装置および共通バス衝突回避方法

Similar Documents

Publication Publication Date Title
EP1588260B1 (en) Hot plug interfaces and failure handling
JPS6053339B2 (ja) 論理装置のエラ−回復方式
US5961622A (en) System and method for recovering a microprocessor from a locked bus state
US20100153602A1 (en) Computer system and abnormality detection circuit
US6922741B2 (en) Method and system for monitoring DMA status
US9473273B2 (en) Memory system capable of increasing data transfer efficiency
US7685473B2 (en) Computer system, method of detecting a stall in a computer system, and signal-bearing medium embodying a program causing a computer system to perform a method of detecting a stall in a computer system
US7281163B2 (en) Management device configured to perform a data dump
US5712967A (en) Method and system for graceful recovery from a fault in peripheral devices using a variety of bus structures
CN112256507A (zh) 芯片故障诊断方法、装置、可读存储介质及电子设备
EP3629176B1 (en) Fault detection circuit with progress register and status register
JPH09160840A (ja) バス通信装置
JP3711871B2 (ja) Pciバスの障害解析容易化方式
WO2021111639A1 (ja) コントローラ
US20060117226A1 (en) Data communication system and data communication method
JP2002543521A (ja) 自動的にモジュールをコンピュータシステムに再び組み込む方法および装置
JPH10228395A (ja) 制御用コントローラの異常診断装置
JPH11120154A (ja) コンピュータシステムにおけるアクセス制御装置および方法
JP3775135B2 (ja) マルチタスク処理システム
EP0655686B1 (en) Retry control method and device for control processor
JPH1091567A (ja) 入出力インタフェース延長装置
CN117499127A (zh) 用于跨域访问的方法、装置、设备和介质
JP2010003268A (ja) スレーブ装置
JP3080150B2 (ja) 汎用インタフェース制御装置及び汎用インタフェース制御方法
JPH06161797A (ja) データ処理装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040706