JPH09114750A - バス制御装置 - Google Patents
バス制御装置Info
- Publication number
- JPH09114750A JPH09114750A JP7265586A JP26558695A JPH09114750A JP H09114750 A JPH09114750 A JP H09114750A JP 7265586 A JP7265586 A JP 7265586A JP 26558695 A JP26558695 A JP 26558695A JP H09114750 A JPH09114750 A JP H09114750A
- Authority
- JP
- Japan
- Prior art keywords
- retry
- bus
- register
- request
- module
- 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
Abstract
(57)【要約】
【課題】 システムバス上で異常終了した処理のリトラ
イ動作を動的に制御する、又は優先して実行することが
できるバス制御装置を得ることを目的とする。 【解決手段】 各モジュールはバス制御回路を備え、閾
値レジスタに示されたリトライ回数で動的にリトライ間
隔を変化する。また、リトライ動作を優先して実行す
る。
イ動作を動的に制御する、又は優先して実行することが
できるバス制御装置を得ることを目的とする。 【解決手段】 各モジュールはバス制御回路を備え、閾
値レジスタに示されたリトライ回数で動的にリトライ間
隔を変化する。また、リトライ動作を優先して実行す
る。
Description
【0001】
【発明の属する技術分野】この発明は、バス上で処理が
異常終了した場合に再実行処理を行なうバス制御装置に
関するものである。
異常終了した場合に再実行処理を行なうバス制御装置に
関するものである。
【0002】
【従来の技術】図16は従来例におけるシステム構成の
一例を示したもので、図において、101はプロセッ
サ、メモリ、内部バスやバス制御回路から構成されるモ
ジュール、102はシステムバスと内部バスの処理の送
受信制御を行なうバス制御回路、103は複数のモジュ
ールが接続されるシステムバス、104はシステムバス
の使用権を調停する調停回路、105はシステムバスの
使用権を獲得する時にセットされるバス要求信号、10
6はシステムバスの使用権を獲得した時にセットされる
バス許可信号、107はプロセッサ、メモリやバス制御
回路が接続される内部バス、108はアプリケーション
を実行するプロセッサ、109はプログラムやデータを
保持するメモリである。
一例を示したもので、図において、101はプロセッ
サ、メモリ、内部バスやバス制御回路から構成されるモ
ジュール、102はシステムバスと内部バスの処理の送
受信制御を行なうバス制御回路、103は複数のモジュ
ールが接続されるシステムバス、104はシステムバス
の使用権を調停する調停回路、105はシステムバスの
使用権を獲得する時にセットされるバス要求信号、10
6はシステムバスの使用権を獲得した時にセットされる
バス許可信号、107はプロセッサ、メモリやバス制御
回路が接続される内部バス、108はアプリケーション
を実行するプロセッサ、109はプログラムやデータを
保持するメモリである。
【0003】次に動作について説明する。一例として、
モジュール1 101aのプロセッサ108aがモジュ
ール2101bのメモリ109bにアクセスするケース
を説明する。プロセッサ101aは内部バス107aの
使用権を獲得すると、バス制御回路102aに対してア
クセスを行なう。バス制御回路102aは、内部バス1
07aからのアクセスを受信し、システムバス103へ
のアクセスであると判断すると調停回路104にバス要
求信号105aを有意にする。調停回路104はモジュ
ールからのバス要求信号の優先度を調べ、優先度の高い
モジュールのバス許可信号を有意にする。優先度が同じ
ならば、一番早く受信したモジュールのバス許可信号を
有意にする。バス制御回路102aは調停回路104か
らシステムバス許可信号106aが有意になると、モジ
ュール2 101bに対してアクセスを行なう。モジュ
ール2 101b内のバス制御回路102bは、受信可
能であればモジュール1 101aからのアクセスを受
信し、内部バス107bの使用権を獲得した後、メモリ
109bにアクセスを行ない、処理は正常に終了する。
バス制御回路102bがモジュール1 101aからの
アクセスを受信できない場合にはリトライ要求を出力す
る。モジュール1 101aは、リトライ要求を受信す
ると一旦システムバス103を開放した後、一定時間後
にバス要求信号105aを再度、有意にする。バス許可
信号106aが有意になると、モジュール2 101b
に対してアクセスを行なう。モジュール2 102a
は、受信可能であればアクセス要求を受信し、処理は正
常に終了する。受信できないならば、再度リトライ要求
を出力する。モジュール1 101aは、このようにし
て、一定回数リトライ要求を受信するとリトライエラー
と判断し、エラー処理を実行する。
モジュール1 101aのプロセッサ108aがモジュ
ール2101bのメモリ109bにアクセスするケース
を説明する。プロセッサ101aは内部バス107aの
使用権を獲得すると、バス制御回路102aに対してア
クセスを行なう。バス制御回路102aは、内部バス1
07aからのアクセスを受信し、システムバス103へ
のアクセスであると判断すると調停回路104にバス要
求信号105aを有意にする。調停回路104はモジュ
ールからのバス要求信号の優先度を調べ、優先度の高い
モジュールのバス許可信号を有意にする。優先度が同じ
ならば、一番早く受信したモジュールのバス許可信号を
有意にする。バス制御回路102aは調停回路104か
らシステムバス許可信号106aが有意になると、モジ
ュール2 101bに対してアクセスを行なう。モジュ
ール2 101b内のバス制御回路102bは、受信可
能であればモジュール1 101aからのアクセスを受
信し、内部バス107bの使用権を獲得した後、メモリ
109bにアクセスを行ない、処理は正常に終了する。
バス制御回路102bがモジュール1 101aからの
アクセスを受信できない場合にはリトライ要求を出力す
る。モジュール1 101aは、リトライ要求を受信す
ると一旦システムバス103を開放した後、一定時間後
にバス要求信号105aを再度、有意にする。バス許可
信号106aが有意になると、モジュール2 101b
に対してアクセスを行なう。モジュール2 102a
は、受信可能であればアクセス要求を受信し、処理は正
常に終了する。受信できないならば、再度リトライ要求
を出力する。モジュール1 101aは、このようにし
て、一定回数リトライ要求を受信するとリトライエラー
と判断し、エラー処理を実行する。
【0004】また従来、リトライ方式を定義するバスと
してIEEE896(Futurebus+)があり、
図17はビジー状態におけるリトライ回路を示したもの
である。図17において、901はシステムバス103
の使用権を調停回路104に要求し、許可が得られた場
合にシステムバス103上で処理を実行するプロトコル
制御回路、902はRETRY_COUNTERフィー
ルドとRETRY_THRESHOLDフィールドから
なるBUSY_RETRY_COUNTER CSRで
ある。また、903はRETRY_DELAYフィール
ドからなるBUSY_RETRY_DELAY CS
R、904はリトライ開始時間を計数する計数カウン
タ、905は加算器、906は比較器である。なお、R
ETRY_COUNTERフィールドはリトライ実行回
数を示し、RETRY_THRESHOLDフィールド
はモジュールが実行するリトライ回数の最大値を示し、
RETRY_DELAYフィールドはリトライ動作を起
動するまでの時間を示す。尚、102〜106は図16
で相当符号を付したものと同様であり、また、CSRと
はControl and Status Regis
tersの略で、IEEE1212で定義され、レジス
タの値はシステム構成時に設定される。
してIEEE896(Futurebus+)があり、
図17はビジー状態におけるリトライ回路を示したもの
である。図17において、901はシステムバス103
の使用権を調停回路104に要求し、許可が得られた場
合にシステムバス103上で処理を実行するプロトコル
制御回路、902はRETRY_COUNTERフィー
ルドとRETRY_THRESHOLDフィールドから
なるBUSY_RETRY_COUNTER CSRで
ある。また、903はRETRY_DELAYフィール
ドからなるBUSY_RETRY_DELAY CS
R、904はリトライ開始時間を計数する計数カウン
タ、905は加算器、906は比較器である。なお、R
ETRY_COUNTERフィールドはリトライ実行回
数を示し、RETRY_THRESHOLDフィールド
はモジュールが実行するリトライ回数の最大値を示し、
RETRY_DELAYフィールドはリトライ動作を起
動するまでの時間を示す。尚、102〜106は図16
で相当符号を付したものと同様であり、また、CSRと
はControl and Status Regis
tersの略で、IEEE1212で定義され、レジス
タの値はシステム構成時に設定される。
【0005】次に動作について説明する。プロトコル制
御回路901がシステムバス103上で処理を実行中に
ビジーを検出すると、リトライ要求を出力する。リトラ
イ回路はリトライ要求を受信すると、BUSY_RET
RY_COUNTER CSR902のRETRY_C
OUNTERフィールドとRETRY_THRESHO
LDフィールドを比較する。RETRY_COUNTE
Rの値がRETRY_THRESHOLDの値未満であ
れば、RETRY_COUNTERの値をインクリメン
トし、計時カウンタ904をイネーブルにする。計時カ
ウンタ904とBUSY_RETRY_DELAY C
SR903に設定された値が等しくなると、リトライ開
始をプロトコル制御回路901に通知すると共に、計時
カウンタ904をクリアする。RETRY_COUNT
ERの値がRETRY_THRESHOLDの値と等し
ければ、プロトコル制御回路901にビジーリトライエ
ラーを通知する。プロトコル制御回路901は、リトラ
イ開始を受信すると再度バス要求を出力し、ビジーリト
ライエラーを受信すると、エラー処理の実行に入る。
御回路901がシステムバス103上で処理を実行中に
ビジーを検出すると、リトライ要求を出力する。リトラ
イ回路はリトライ要求を受信すると、BUSY_RET
RY_COUNTER CSR902のRETRY_C
OUNTERフィールドとRETRY_THRESHO
LDフィールドを比較する。RETRY_COUNTE
Rの値がRETRY_THRESHOLDの値未満であ
れば、RETRY_COUNTERの値をインクリメン
トし、計時カウンタ904をイネーブルにする。計時カ
ウンタ904とBUSY_RETRY_DELAY C
SR903に設定された値が等しくなると、リトライ開
始をプロトコル制御回路901に通知すると共に、計時
カウンタ904をクリアする。RETRY_COUNT
ERの値がRETRY_THRESHOLDの値と等し
ければ、プロトコル制御回路901にビジーリトライエ
ラーを通知する。プロトコル制御回路901は、リトラ
イ開始を受信すると再度バス要求を出力し、ビジーリト
ライエラーを受信すると、エラー処理の実行に入る。
【0006】
【発明が解決しようとする課題】IEEE896(Fu
turebus+)規格のバス仕様では、リトライ動作
の実行間隔が一意に決定されているので、Future
bus+に接続された他のモジュールが、それぞれにリ
トライ動作を実行した場合、一定間隔で実行されるリト
ライ動作の処理周期が同じタイミングとなり、リトライ
動作に対するリトライ要求が相次いで出力されるという
問題点があった。
turebus+)規格のバス仕様では、リトライ動作
の実行間隔が一意に決定されているので、Future
bus+に接続された他のモジュールが、それぞれにリ
トライ動作を実行した場合、一定間隔で実行されるリト
ライ動作の処理周期が同じタイミングとなり、リトライ
動作に対するリトライ要求が相次いで出力されるという
問題点があった。
【0007】また、バス制御装置が複数のバスアクセス
要求を蓄積する場合、一旦リトライモードに入ると、リ
トライを開始するまでの時間待ちの期間、他の処理も待
たされるため転送処理性能を低下させるという問題点が
あった。
要求を蓄積する場合、一旦リトライモードに入ると、リ
トライを開始するまでの時間待ちの期間、他の処理も待
たされるため転送処理性能を低下させるという問題点が
あった。
【0008】また、エラー時にエラーを発生したバスア
クセス要求のみを切り離すため、アクセスの順番を重視
する処理においては、データ抜けが生じ、データの整合
性がとれなくなることにより処理に異常が発生するとい
う問題点があった。
クセス要求のみを切り離すため、アクセスの順番を重視
する処理においては、データ抜けが生じ、データの整合
性がとれなくなることにより処理に異常が発生するとい
う問題点があった。
【0009】本発明は、上記のような問題点を解決する
ためになされたもので、バスに接続された各モジュール
のリトライ動作の周期が同期した場合においても、動的
にリトライ要求間隔を変化させることでリトライエラー
を回避するようにしたものである。また、複数のバスア
クセス要求を蓄積することによって、例え、リトライ状
態が発生してもリトライ時間待ちの期間に別のモジュー
ルに対するバスアクセスサービスを実行することによ
り、処理効率のよいバス制御装置を提供することを目的
としたものである。さらに、エラー発生時において当該
エラーに関連したバスアクセス要求を消去することによ
り、アクセスシーケンスが重視される処理実行において
も、データの整合を維持することのできるバス制御装置
を提供することを目的としたものである。
ためになされたもので、バスに接続された各モジュール
のリトライ動作の周期が同期した場合においても、動的
にリトライ要求間隔を変化させることでリトライエラー
を回避するようにしたものである。また、複数のバスア
クセス要求を蓄積することによって、例え、リトライ状
態が発生してもリトライ時間待ちの期間に別のモジュー
ルに対するバスアクセスサービスを実行することによ
り、処理効率のよいバス制御装置を提供することを目的
としたものである。さらに、エラー発生時において当該
エラーに関連したバスアクセス要求を消去することによ
り、アクセスシーケンスが重視される処理実行において
も、データの整合を維持することのできるバス制御装置
を提供することを目的としたものである。
【0010】
【課題を解決するための手段】第1の発明に係わるバス
制御装置は、バスプロトコルに従ってデータ転送処理を
行うプロトコル制御部とバス制御部から構成されバスに
接続されたバス制御装置と、バス制御装置からのバス使
用要求に対して優先度を決定する調停回路からなるバス
制御システムにおいて、リトライ間隔を保持する1つま
たは複数からなるリトライ間隔レジスタと、リトライ実
行回数を計数するリトライ実行回数カウンタと、リトラ
イ間隔レジスタの切り換えに要するリトライ回数値を保
持するリトライ間隔閾値レジスタと、最大実行リトライ
回数を保持するリトライエラーレジスタと、リトライ開
始からの経過時間を計数する計時カウンタとを備えるこ
とにより、各リトライ処理が異常終了した際に前記リト
ライ間隔閾値レジスタとリトライ実行回数カウンタの値
を比較して等しい場合、リトライ間隔を他のリトライ間
隔レジスタで規定された値に切替えることによって、リ
トライによる再試行開始までの時間間隔を制御するよう
にしたものである。
制御装置は、バスプロトコルに従ってデータ転送処理を
行うプロトコル制御部とバス制御部から構成されバスに
接続されたバス制御装置と、バス制御装置からのバス使
用要求に対して優先度を決定する調停回路からなるバス
制御システムにおいて、リトライ間隔を保持する1つま
たは複数からなるリトライ間隔レジスタと、リトライ実
行回数を計数するリトライ実行回数カウンタと、リトラ
イ間隔レジスタの切り換えに要するリトライ回数値を保
持するリトライ間隔閾値レジスタと、最大実行リトライ
回数を保持するリトライエラーレジスタと、リトライ開
始からの経過時間を計数する計時カウンタとを備えるこ
とにより、各リトライ処理が異常終了した際に前記リト
ライ間隔閾値レジスタとリトライ実行回数カウンタの値
を比較して等しい場合、リトライ間隔を他のリトライ間
隔レジスタで規定された値に切替えることによって、リ
トライによる再試行開始までの時間間隔を制御するよう
にしたものである。
【0011】第2の発明に係わるバス制御装置は、バス
プロトコルに従ってデータ転送処理を行うプロトコル制
御部とバス制御部から構成されバスに接続されたバス制
御装置と、バス制御装置からのバス使用要求に対して優
先度を決定する調停回路からなるバス制御システムにお
いて、リトライ間隔を保持するリトライ間隔レジスタ
と、リトライ実行回数を計数するリトライ実行回数カウ
ンタと、バスのアイドル時間を監視し測定結果を保持す
るバス監視制御回路と、リトライ間隔レジスタとバス監
視制御回路出力の切り換えに要するリトライ回数値を保
持するリトライ間隔閾値レジスタと、最大実行リトライ
回数を保持するリトライエラーレジスタと、リトライ開
始からの経過時間を計数する計時カウンタとを備えるこ
とにより、各リトライ処理が異常終了した際にリトライ
間隔閾値レジスタとリトライ実行回数カウンタの値を比
較して等しい場合、リトライ間隔をバス監視制御回路の
出力で規定された値に切替えることによって、リトライ
による再試行開始までの時間間隔を制御するようにした
ものである。
プロトコルに従ってデータ転送処理を行うプロトコル制
御部とバス制御部から構成されバスに接続されたバス制
御装置と、バス制御装置からのバス使用要求に対して優
先度を決定する調停回路からなるバス制御システムにお
いて、リトライ間隔を保持するリトライ間隔レジスタ
と、リトライ実行回数を計数するリトライ実行回数カウ
ンタと、バスのアイドル時間を監視し測定結果を保持す
るバス監視制御回路と、リトライ間隔レジスタとバス監
視制御回路出力の切り換えに要するリトライ回数値を保
持するリトライ間隔閾値レジスタと、最大実行リトライ
回数を保持するリトライエラーレジスタと、リトライ開
始からの経過時間を計数する計時カウンタとを備えるこ
とにより、各リトライ処理が異常終了した際にリトライ
間隔閾値レジスタとリトライ実行回数カウンタの値を比
較して等しい場合、リトライ間隔をバス監視制御回路の
出力で規定された値に切替えることによって、リトライ
による再試行開始までの時間間隔を制御するようにした
ものである。
【0012】第3の発明に係わるバス制御装置は、バス
プロトコルに従ってデータ転送処理を行うプロトコル制
御部とバス制御部から構成されバスに接続されたバス制
御装置と、バス制御装置からのバス使用要求に対して優
先度を決定する調停回路からなるバス制御システムにお
いて、リトライ間隔を保持するリトライ間隔レジスタ
と、リトライ実行回数を計数するリトライ実行回数カウ
ンタと、バスアクセス時における優先度を記録した優先
度レジスタと、優先度レジスタの切り換えに要するリト
ライ回数値を保持するリトライ間隔閾値レジスタと、最
大実行リトライ回数を保持するリトライエラーレジスタ
と、リトライ開始からの経過時間を計数する計時カウン
タとを備えることにより、各リトライ処理が異常終了し
た際にリトライ間隔閾値レジスタとリトライ実行回数カ
ウンタの値を比較して等しい場合、バス調停回路に対す
るアクセス要求優先度を他の優先度レジスタの出力で規
定された値に切替えることによって、バス調停回路に対
するアクセス要求優先度を変更するようにしたものであ
る。
プロトコルに従ってデータ転送処理を行うプロトコル制
御部とバス制御部から構成されバスに接続されたバス制
御装置と、バス制御装置からのバス使用要求に対して優
先度を決定する調停回路からなるバス制御システムにお
いて、リトライ間隔を保持するリトライ間隔レジスタ
と、リトライ実行回数を計数するリトライ実行回数カウ
ンタと、バスアクセス時における優先度を記録した優先
度レジスタと、優先度レジスタの切り換えに要するリト
ライ回数値を保持するリトライ間隔閾値レジスタと、最
大実行リトライ回数を保持するリトライエラーレジスタ
と、リトライ開始からの経過時間を計数する計時カウン
タとを備えることにより、各リトライ処理が異常終了し
た際にリトライ間隔閾値レジスタとリトライ実行回数カ
ウンタの値を比較して等しい場合、バス調停回路に対す
るアクセス要求優先度を他の優先度レジスタの出力で規
定された値に切替えることによって、バス調停回路に対
するアクセス要求優先度を変更するようにしたものであ
る。
【0013】第4の発明に係わるバス制御装置は、バス
プロトコルに従ってデータ転送処理を行うプロトコル制
御部とバス制御部から構成されバスに接続されたバス制
御装置と、バス制御装置からのバス使用要求に対して優
先度を決定する調停回路からなるバス制御システムにお
いて、バス制御装置に対してアクセス要求を行ったモジ
ュールを判別するモジュール判別回路と、アクセス要求
のあったモジュールに対してリトライ要求で応答した場
合に該モジュール情報を記憶しておくモジュール情報保
持回路と、リトライを応答した後に受信したアクセス要
求に対し、該アクセス要求を行ったモジュールがモジュ
ール保持回路に記憶されているモジュールと同一の場合
に限り該アクセス要求を受け入れる排他受信回路とを備
えるようにしたものである。
プロトコルに従ってデータ転送処理を行うプロトコル制
御部とバス制御部から構成されバスに接続されたバス制
御装置と、バス制御装置からのバス使用要求に対して優
先度を決定する調停回路からなるバス制御システムにお
いて、バス制御装置に対してアクセス要求を行ったモジ
ュールを判別するモジュール判別回路と、アクセス要求
のあったモジュールに対してリトライ要求で応答した場
合に該モジュール情報を記憶しておくモジュール情報保
持回路と、リトライを応答した後に受信したアクセス要
求に対し、該アクセス要求を行ったモジュールがモジュ
ール保持回路に記憶されているモジュールと同一の場合
に限り該アクセス要求を受け入れる排他受信回路とを備
えるようにしたものである。
【0014】第5の発明に係わるバス制御装置は、バス
プロトコルに従ってデータ転送処理を行うプロトコル制
御部とバス制御部から構成されバスに接続されたバス制
御装置と、バス制御装置からのバス使用要求に対して優
先度を決定する調停回路からなるバス制御システムにお
いて、受信した複数のアクセス要求情報を蓄積する要求
バッファレジスタと、要求バッファレジスタに保持され
ているアドレス情報から転送先モジュールを判別するモ
ジュール判別回路と、要求バッファレジスタに蓄積され
ているアクセス要求の1つを実行した時に実行先モジュ
ールからリトライ要求が返された場合、一定時間経過し
てからリトライを実行させるリトライウエイト回路と、
リトライウエイト期間中に、上記モジュール判別回路に
よって別モジュールへのアクセスと判断された要求バッ
ファレジスタ内のアクセス要求を実行する転送制御回路
とを備えるようにしたものである。
プロトコルに従ってデータ転送処理を行うプロトコル制
御部とバス制御部から構成されバスに接続されたバス制
御装置と、バス制御装置からのバス使用要求に対して優
先度を決定する調停回路からなるバス制御システムにお
いて、受信した複数のアクセス要求情報を蓄積する要求
バッファレジスタと、要求バッファレジスタに保持され
ているアドレス情報から転送先モジュールを判別するモ
ジュール判別回路と、要求バッファレジスタに蓄積され
ているアクセス要求の1つを実行した時に実行先モジュ
ールからリトライ要求が返された場合、一定時間経過し
てからリトライを実行させるリトライウエイト回路と、
リトライウエイト期間中に、上記モジュール判別回路に
よって別モジュールへのアクセスと判断された要求バッ
ファレジスタ内のアクセス要求を実行する転送制御回路
とを備えるようにしたものである。
【0015】第6の発明に係わるバス制御装置は、バス
プロトコルに従ってデータ転送処理を行うプロトコル制
御部とバス制御部から構成されバスに接続されたバス制
御装置と、バス制御装置からのバス使用要求に対して優
先度を決定する調停回路からなるバス制御システムにお
いて、受信した複数のアクセス要求情報を蓄積する要求
バッファレジスタと、要求バッファレジスタに保持され
ているアドレス情報から転送先モジュールを判別するモ
ジュール判別回路と、要求バッファに保持されたアクセ
ス要求の1つを実行した時に異常転送が検出された場
合、同一モジュールへのアクセス要求を保持している要
求バッファレジスタ内のアクセス要求を消去するバッフ
ァレジスタ制御回路を備えるようにしたものである。
プロトコルに従ってデータ転送処理を行うプロトコル制
御部とバス制御部から構成されバスに接続されたバス制
御装置と、バス制御装置からのバス使用要求に対して優
先度を決定する調停回路からなるバス制御システムにお
いて、受信した複数のアクセス要求情報を蓄積する要求
バッファレジスタと、要求バッファレジスタに保持され
ているアドレス情報から転送先モジュールを判別するモ
ジュール判別回路と、要求バッファに保持されたアクセ
ス要求の1つを実行した時に異常転送が検出された場
合、同一モジュールへのアクセス要求を保持している要
求バッファレジスタ内のアクセス要求を消去するバッフ
ァレジスタ制御回路を備えるようにしたものである。
【0016】第7の発明は第5の発明におけるバス制御
装置において、モジュール判別回路に、モジュールのア
ドレスとは処理上独立した領域を特定する領域判別回路
を備えるようにし、リトライウエイト期間中に別領域へ
のアクセス要求を実行するようにしたものである。
装置において、モジュール判別回路に、モジュールのア
ドレスとは処理上独立した領域を特定する領域判別回路
を備えるようにし、リトライウエイト期間中に別領域へ
のアクセス要求を実行するようにしたものである。
【0017】第8の発明は第6の発明におけるバス制御
装置において、モジュール判別回路に、モジュールのア
ドレスとは処理上独立した領域を特定する領域判別回路
を備えるようにし、異常転送検出時に同じ領域へのアク
セス要求をキャンセルするようにしたものである。
装置において、モジュール判別回路に、モジュールのア
ドレスとは処理上独立した領域を特定する領域判別回路
を備えるようにし、異常転送検出時に同じ領域へのアク
セス要求をキャンセルするようにしたものである。
【0018】
実施の形態1.本発明の第1の実施の形態について、図
1、図2に基づいて説明する。図1はバス制御回路の構
成図であり、図中、201はシステムバスのプロトコル
制御を行うプロトコル制御回路、202はリトライエラ
ーを検知するためのリトライ回数を保持しておくエラー
レジスタ、203はリトライ発生時における現在までの
リトライ回数を保持するリトライカウンタ、204はリ
トライ間隔を切替えるまでに実行するリトライの回数を
保持しておく閾値レジスタである。また、205は各々
異なったリトライ動作の実行間隔時間を保持する複数か
らなるリトライ間隔レジスタ群、206はリトライ要求
を受信してからリトライ動作を起動するまでの時間を計
測する計時カウンタ、207は複数のリトライ間隔レジ
スタ群から一個のレジスタを選択するセレクタ、208
cはセレクタ207の出力結果と計時カウンタ206の
出力を比較する比較器、209はリトライ実行の都度、
リトライカウンタ内容をインクレメントしていく加算器
である。なお、図において、符号102〜106は図1
6の相当符号と同様の要素を示す。
1、図2に基づいて説明する。図1はバス制御回路の構
成図であり、図中、201はシステムバスのプロトコル
制御を行うプロトコル制御回路、202はリトライエラ
ーを検知するためのリトライ回数を保持しておくエラー
レジスタ、203はリトライ発生時における現在までの
リトライ回数を保持するリトライカウンタ、204はリ
トライ間隔を切替えるまでに実行するリトライの回数を
保持しておく閾値レジスタである。また、205は各々
異なったリトライ動作の実行間隔時間を保持する複数か
らなるリトライ間隔レジスタ群、206はリトライ要求
を受信してからリトライ動作を起動するまでの時間を計
測する計時カウンタ、207は複数のリトライ間隔レジ
スタ群から一個のレジスタを選択するセレクタ、208
cはセレクタ207の出力結果と計時カウンタ206の
出力を比較する比較器、209はリトライ実行の都度、
リトライカウンタ内容をインクレメントしていく加算器
である。なお、図において、符号102〜106は図1
6の相当符号と同様の要素を示す。
【0019】次に動作について、図1、および図2を用
いて説明する。なお、図2では、予め、エラーレジスタ
202に値”4”を、閾値レジスタ204に値”2”
を、更にリトライ間隔レジスタ1に値”T1 ”を、リト
ライ間隔レジスタ2に値”T2 ”を設定しておいた場合
において、リトライエラーが発生した時の様子を表して
いる。プロトコル制御回路201は、システムバス10
3に対する転送要求を受信すると、バス要求信号105
を有意にする(時刻t1)。調停回路104からのバス
許可信号106が有意になった時点で(時刻t2)、シ
ステムバス103にデータ転送処理を起動する(時刻t
3)。ここで、処理が正常に終了した時は、リトライカ
ウンタ203、計時カウンタ206はリセットされ、プ
ロトコル制御回路201は次のシステムバス要求が来る
までアイドル状態となる。
いて説明する。なお、図2では、予め、エラーレジスタ
202に値”4”を、閾値レジスタ204に値”2”
を、更にリトライ間隔レジスタ1に値”T1 ”を、リト
ライ間隔レジスタ2に値”T2 ”を設定しておいた場合
において、リトライエラーが発生した時の様子を表して
いる。プロトコル制御回路201は、システムバス10
3に対する転送要求を受信すると、バス要求信号105
を有意にする(時刻t1)。調停回路104からのバス
許可信号106が有意になった時点で(時刻t2)、シ
ステムバス103にデータ転送処理を起動する(時刻t
3)。ここで、処理が正常に終了した時は、リトライカ
ウンタ203、計時カウンタ206はリセットされ、プ
ロトコル制御回路201は次のシステムバス要求が来る
までアイドル状態となる。
【0020】一方、システムバス103からリトライ要
求信号を受信した場合(時刻t4)、プロトコル制御回
路201はデータ転送処理を終了させ(時刻t5)、リ
トライ制御回路に対してリトライ要求を出力する。プロ
トコル制御回路201からリトライ要求を受信すると、
比較器208a,208bは各々リトライカウンタ20
3とエラーレジスタ202、およびリトライカウンタ2
03と閾値レジスタ204の内容を比較する。 (ケース1)リトライカウンタ203の値が閾値レジス
タ204、及びエラーレジスタ201のいずれの値とも
等しくない場合(時刻t5,t7,t9)には、加算器
209がイネーブルになり、リトライカウンタ203の
値を1加算する。それと共に、計時カウンタ206がイ
ネーブルになり、時間を計り始める。計時カウンタ20
6は、リトライ開始によりディスエーブルになるまで時
間を計り続ける。 (ケース2)リトライカウンタ203の値と閾値レジス
タ204の値(”2”)が等しい場合(時刻t8)に
は、リトライ間隔を切替えるために、セレクタ207に
セレクト信号が出力される。この例では、次のリトライ
までの時間間隔がこれまでの”T1 ”から”T2 ”に変
化している様子がわかる。 (ケース3)リトライカウンタ203の値とエラーレジ
スタ202の値(”4”)が等しい場合(時刻t10)
には、プロトコル制御回路201にリトライエラーを通
知すると共に、リトライ開始信号をディスイネーブルに
し、リトライカウンタ203および計時カウンタ206
をリセットして一連のリトライ動作を終了する。
求信号を受信した場合(時刻t4)、プロトコル制御回
路201はデータ転送処理を終了させ(時刻t5)、リ
トライ制御回路に対してリトライ要求を出力する。プロ
トコル制御回路201からリトライ要求を受信すると、
比較器208a,208bは各々リトライカウンタ20
3とエラーレジスタ202、およびリトライカウンタ2
03と閾値レジスタ204の内容を比較する。 (ケース1)リトライカウンタ203の値が閾値レジス
タ204、及びエラーレジスタ201のいずれの値とも
等しくない場合(時刻t5,t7,t9)には、加算器
209がイネーブルになり、リトライカウンタ203の
値を1加算する。それと共に、計時カウンタ206がイ
ネーブルになり、時間を計り始める。計時カウンタ20
6は、リトライ開始によりディスエーブルになるまで時
間を計り続ける。 (ケース2)リトライカウンタ203の値と閾値レジス
タ204の値(”2”)が等しい場合(時刻t8)に
は、リトライ間隔を切替えるために、セレクタ207に
セレクト信号が出力される。この例では、次のリトライ
までの時間間隔がこれまでの”T1 ”から”T2 ”に変
化している様子がわかる。 (ケース3)リトライカウンタ203の値とエラーレジ
スタ202の値(”4”)が等しい場合(時刻t10)
には、プロトコル制御回路201にリトライエラーを通
知すると共に、リトライ開始信号をディスイネーブルに
し、リトライカウンタ203および計時カウンタ206
をリセットして一連のリトライ動作を終了する。
【0021】比較器208cは、リトライエラーになる
まで、現在選択されているリトライ間隔レジスタ205
が保持している値と計時カウンタ206の値を比較して
いて、等しくなった場合に、プロトコル制御回路201
にリトライ開始信号を出力すると共に計時カウンタをリ
セットする。プロトコル制御回路201はリトライ開始
信号を受信すると(時刻t6)、調停回路104にバス
要求信号105を出力し、調停回路104からバス使用
権が得られると、システムバス103に対して処理の再
実行を試みる。
まで、現在選択されているリトライ間隔レジスタ205
が保持している値と計時カウンタ206の値を比較して
いて、等しくなった場合に、プロトコル制御回路201
にリトライ開始信号を出力すると共に計時カウンタをリ
セットする。プロトコル制御回路201はリトライ開始
信号を受信すると(時刻t6)、調停回路104にバス
要求信号105を出力し、調停回路104からバス使用
権が得られると、システムバス103に対して処理の再
実行を試みる。
【0022】このように、第1の実施形態によれば、リ
トライ間隔を変更しながらリトライ動作を実行するよう
にしたので、システムバス103上で他のモジュールに
よる処理動作と例え、動作が同期した場合においても、
リトライ間隔を動的に変化させることができるので、無
用なリトライ動作を回避することができるという効果が
ある。
トライ間隔を変更しながらリトライ動作を実行するよう
にしたので、システムバス103上で他のモジュールに
よる処理動作と例え、動作が同期した場合においても、
リトライ間隔を動的に変化させることができるので、無
用なリトライ動作を回避することができるという効果が
ある。
【0023】実施の形態2.この発明の第2の実施の形
態について図3、図4に基づいて説明する。図3はバス
制御回路102の中のバス要求部に関する構成図であ
り、図において、302はシステムバス103上でのア
イドル時間を計測する監視回路、301は監視回路の出
力を保持する監視レジスタである。尚、図において、符
号102乃至106および201〜209は各々図1、
図2記載の相当符号と同様のものである。
態について図3、図4に基づいて説明する。図3はバス
制御回路102の中のバス要求部に関する構成図であ
り、図において、302はシステムバス103上でのア
イドル時間を計測する監視回路、301は監視回路の出
力を保持する監視レジスタである。尚、図において、符
号102乃至106および201〜209は各々図1、
図2記載の相当符号と同様のものである。
【0024】次に動作について説明する。なお、予め、
図3のエラーレジスタ202には値”4”を、閾値レジ
スタ204には値”2”を、またリトライ間隔レジスタ
1には値”T1 ”を設定し、リトライ動作の結果、処理
が正常に終了した場合を表している。プロトコル制御回
路201は、システムバスへの要求を受信するとバス要
求信号105を有意にする(時刻t1)。調停回路10
4からのバス許可信号106が有意になると(時刻t
2)、システムバス103に対してデータ転送処理を起
動する(時刻t3)。データ転送処理が正常に終了する
と、リトライカウンタ203、計時カウンタ206はリ
セットされ、プロトコル制御回路201は次のシステム
バス要求が来るまでアイドル状態となる。ここで、シス
テムバス103からリトライ要求信号を受信した場合
(時刻t4)には、プロトコル制御回路201は処理を
終了させ(時刻t5)、リトライ制御回路に対してリト
ライ要求を出力する。
図3のエラーレジスタ202には値”4”を、閾値レジ
スタ204には値”2”を、またリトライ間隔レジスタ
1には値”T1 ”を設定し、リトライ動作の結果、処理
が正常に終了した場合を表している。プロトコル制御回
路201は、システムバスへの要求を受信するとバス要
求信号105を有意にする(時刻t1)。調停回路10
4からのバス許可信号106が有意になると(時刻t
2)、システムバス103に対してデータ転送処理を起
動する(時刻t3)。データ転送処理が正常に終了する
と、リトライカウンタ203、計時カウンタ206はリ
セットされ、プロトコル制御回路201は次のシステム
バス要求が来るまでアイドル状態となる。ここで、シス
テムバス103からリトライ要求信号を受信した場合
(時刻t4)には、プロトコル制御回路201は処理を
終了させ(時刻t5)、リトライ制御回路に対してリト
ライ要求を出力する。
【0025】プロトコル制御回路201からリトライ要
求を受信すると、比較器208a,208bはリトライ
カウンタ203とエラーレジスタ202、およびリトラ
イカウンタ203と閾値レジスタ204の値を比較す
る。 (ケース1)リトライカウンタ203の値が閾値レジス
タ204、エラーレジスタ202の両方の値と等しくな
い場合(時刻t5,t8)には、加算器209がイネー
ブルになり、リトライカウンタ203の値を1加算す
る。それと共に、計時カウンタ206がイネーブルにな
り、時間を計り始める。計時カウンタ206はリトライ
開始によりディスエーブルになるまで時間を計り続け
る。 (ケース2)リトライカウンタ203の値と閾値レジス
タ204の値が等しい場合(時刻t10)には、リトラ
イ間隔を監視レジスタ301の値に切替えるために、セ
レクタ207にセレクト信号を出力する。この例では、
次のリトライまでの時間間隔がこれまでの”T1 ”から
システムバス上の監視レジスタの値”T2 ”に変化して
いる様子がわかる。 (ケース3)リトライカウンタ203の値とエラーレジ
スタ201の値が等しい場合は、プロトコル制御回路2
01にリトライエラーを通知すると共に、リトライ開始
信号をディスイネーブルにし、リトライカウンタ203
と計時カウンタ206をリセットして一連のリトライ処
理を終了する。
求を受信すると、比較器208a,208bはリトライ
カウンタ203とエラーレジスタ202、およびリトラ
イカウンタ203と閾値レジスタ204の値を比較す
る。 (ケース1)リトライカウンタ203の値が閾値レジス
タ204、エラーレジスタ202の両方の値と等しくな
い場合(時刻t5,t8)には、加算器209がイネー
ブルになり、リトライカウンタ203の値を1加算す
る。それと共に、計時カウンタ206がイネーブルにな
り、時間を計り始める。計時カウンタ206はリトライ
開始によりディスエーブルになるまで時間を計り続け
る。 (ケース2)リトライカウンタ203の値と閾値レジス
タ204の値が等しい場合(時刻t10)には、リトラ
イ間隔を監視レジスタ301の値に切替えるために、セ
レクタ207にセレクト信号を出力する。この例では、
次のリトライまでの時間間隔がこれまでの”T1 ”から
システムバス上の監視レジスタの値”T2 ”に変化して
いる様子がわかる。 (ケース3)リトライカウンタ203の値とエラーレジ
スタ201の値が等しい場合は、プロトコル制御回路2
01にリトライエラーを通知すると共に、リトライ開始
信号をディスイネーブルにし、リトライカウンタ203
と計時カウンタ206をリセットして一連のリトライ処
理を終了する。
【0026】比較器208cは、リトライエラーになる
まで、セレクタ207の出力結果と計時カウンタ206
の値を比較する。一致すると、プロトコル制御回路20
1にリトライ開始信号を出力すると共に、計時カウンタ
をリセットしディスエーブルにする。監視回路302
は、プロトコル制御回路201からリトライ要求を受信
すると(時刻t5)、システムバス103上の処理を監
視し、システムバス103上で処理が行われていない時
間(この例ではT2 )を測定し、監視レジスタ301に
測定結果を出力する。プロトコル制御回路201は、リ
トライ開始信号を受信すると、調停回路104に対して
バス要求信号105を有意にし、調停回路104からの
バス許可信号106が有意になると、システムバスに対
してデータ転送処理を再実行する。
まで、セレクタ207の出力結果と計時カウンタ206
の値を比較する。一致すると、プロトコル制御回路20
1にリトライ開始信号を出力すると共に、計時カウンタ
をリセットしディスエーブルにする。監視回路302
は、プロトコル制御回路201からリトライ要求を受信
すると(時刻t5)、システムバス103上の処理を監
視し、システムバス103上で処理が行われていない時
間(この例ではT2 )を測定し、監視レジスタ301に
測定結果を出力する。プロトコル制御回路201は、リ
トライ開始信号を受信すると、調停回路104に対して
バス要求信号105を有意にし、調停回路104からの
バス許可信号106が有意になると、システムバスに対
してデータ転送処理を再実行する。
【0027】このように、本実施形態によると、システ
ムバス上の他の周期処理とリトライ動作が同期した場
合、システムバス上の現在の負荷状況に従ってリトライ
間隔を動的に変化させながらリトライ動作を実行するよ
うにしたので、システムバス上の他のモジュールによる
動作周期との重なりを極力回避することができ、無用な
リトライ動作を回避し、少ないリトライ回数でデータ転
送を終了することができるという効果がある。
ムバス上の他の周期処理とリトライ動作が同期した場
合、システムバス上の現在の負荷状況に従ってリトライ
間隔を動的に変化させながらリトライ動作を実行するよ
うにしたので、システムバス上の他のモジュールによる
動作周期との重なりを極力回避することができ、無用な
リトライ動作を回避し、少ないリトライ回数でデータ転
送を終了することができるという効果がある。
【0028】実施の形態3.この発明の第3の実施の形
態について、図5、図6に基づいて説明する。図5はバ
ス制御回路102の中のバス要求部に関する構成図であ
り、図において、401はシステムバス要求信号105
の優先度を指定する優先度レジスタである。なお、符号
102乃至106、および201〜209は各々図1、
図2の相当符号と同一要素を表わす。
態について、図5、図6に基づいて説明する。図5はバ
ス制御回路102の中のバス要求部に関する構成図であ
り、図において、401はシステムバス要求信号105
の優先度を指定する優先度レジスタである。なお、符号
102乃至106、および201〜209は各々図1、
図2の相当符号と同一要素を表わす。
【0029】次に動作について説明する。なお、図5で
は予め、エラーレジスタ202に値”4”を、閾値レジ
スタ204に値”2”を、またリトライ間隔レジスタ2
05に値”T1 ”を設定し、リトライ動作において処理
が正常に終了した場合を表している。プロトコル制御回
路201は、システムバスへの要求を受信するとバス要
求信号105を有意にする(時刻t1)。調停回路10
4からのバス許可信号106が有意になると(時刻t
2)、システムバス103に対してデータ転送処理を起
動し(時刻t3)、処理が正常に終了するとリトライカ
ウンタ203、計時カウンタ206はリセットされ、プ
ロトコル制御回路201は次のシステムバス要求が来る
までアイドル状態となる。ここで、システムバス103
からリトライ要求信号を受信した場合(時刻t4)に
は、プロトコル制御回路201はデータ転送処理を終了
させ(時刻t5)リトライ制御回路に対してリトライ要
求を出力する。
は予め、エラーレジスタ202に値”4”を、閾値レジ
スタ204に値”2”を、またリトライ間隔レジスタ2
05に値”T1 ”を設定し、リトライ動作において処理
が正常に終了した場合を表している。プロトコル制御回
路201は、システムバスへの要求を受信するとバス要
求信号105を有意にする(時刻t1)。調停回路10
4からのバス許可信号106が有意になると(時刻t
2)、システムバス103に対してデータ転送処理を起
動し(時刻t3)、処理が正常に終了するとリトライカ
ウンタ203、計時カウンタ206はリセットされ、プ
ロトコル制御回路201は次のシステムバス要求が来る
までアイドル状態となる。ここで、システムバス103
からリトライ要求信号を受信した場合(時刻t4)に
は、プロトコル制御回路201はデータ転送処理を終了
させ(時刻t5)リトライ制御回路に対してリトライ要
求を出力する。
【0030】プロトコル制御回路201からリトライ要
求を受信すると、比較器208a,208bは、各々リ
トライカウンタ203とエラーレジスタ202、および
リトライカウンタ203と閾値レジスタ204の値を比
較する。 (ケース1)リトライカウンタ203の値が閾値レジス
タ204、エラーレジスタ202のいずれの値とも等し
くない場合(時刻t5)には、加算器209がイネーブ
ルになり、リトライカウンタ203の値を1加算する。
それと共に、計時カウンタ206がイネーブルになり、
時間計測を開始し、リトライ開始信号が出力されてディ
スエーブルになるまで時間を計り続ける。 (ケース2)リトライカウンタ203の値と閾値レジス
タ204の値が等しい場合(時刻t10)には、システ
ムバス要求信号105の優先度を切替えるために、プロ
トコル制御回路201に切替信号を出力する。 (ケース3)リトライカウンタ203の値とエラーレジ
スタ202の値が等しい場合、プロトコル制御回路20
1にリトライエラーを通知すると共に、リトライ開始信
号をディスイネーブルにする。
求を受信すると、比較器208a,208bは、各々リ
トライカウンタ203とエラーレジスタ202、および
リトライカウンタ203と閾値レジスタ204の値を比
較する。 (ケース1)リトライカウンタ203の値が閾値レジス
タ204、エラーレジスタ202のいずれの値とも等し
くない場合(時刻t5)には、加算器209がイネーブ
ルになり、リトライカウンタ203の値を1加算する。
それと共に、計時カウンタ206がイネーブルになり、
時間計測を開始し、リトライ開始信号が出力されてディ
スエーブルになるまで時間を計り続ける。 (ケース2)リトライカウンタ203の値と閾値レジス
タ204の値が等しい場合(時刻t10)には、システ
ムバス要求信号105の優先度を切替えるために、プロ
トコル制御回路201に切替信号を出力する。 (ケース3)リトライカウンタ203の値とエラーレジ
スタ202の値が等しい場合、プロトコル制御回路20
1にリトライエラーを通知すると共に、リトライ開始信
号をディスイネーブルにする。
【0031】比較器208cは、リトライエラーになる
までセレクタ207の値と計時カウンタ206の値を比
較し、等しい場合には、プロトコル制御回路201にリ
トライ開始信号を出力すると共に計時カウンタをリセッ
トしディスエーブルにする。プロトコル制御回路201
は、リトライ開始信号と切替信号の両方を受信すると、
高い優先度のバス要求信号105を有意にする(時刻t
10)。調停回路104からバス使用権が得られると、
システムバスに対してデータ転送処理を再実行する。
までセレクタ207の値と計時カウンタ206の値を比
較し、等しい場合には、プロトコル制御回路201にリ
トライ開始信号を出力すると共に計時カウンタをリセッ
トしディスエーブルにする。プロトコル制御回路201
は、リトライ開始信号と切替信号の両方を受信すると、
高い優先度のバス要求信号105を有意にする(時刻t
10)。調停回路104からバス使用権が得られると、
システムバスに対してデータ転送処理を再実行する。
【0032】本実施形態によれば、システムバス上の他
のモジュールの処理周期と同期した場合においても、一
定回数リトライ動作を実行した後は、バス要求信号の優
先度を高くしてバス使用要求を出力するようにしたの
で、優先処理によって徒らにリトライ要求回数を増やす
ことなく処理を行うことができるという効果がある。
のモジュールの処理周期と同期した場合においても、一
定回数リトライ動作を実行した後は、バス要求信号の優
先度を高くしてバス使用要求を出力するようにしたの
で、優先処理によって徒らにリトライ要求回数を増やす
ことなく処理を行うことができるという効果がある。
【0033】実施の形態4.本発明の第4の実施形態に
ついて、図7、図8に基づいて説明する。図7は、バス
制御装置を示す構成図であり、501はマスタモジュー
ルからシステムバス経由で転送されるデータを受信し内
部バスへ転送するスレーブモジュール、502a,50
2bは各々マスタモジュール1および2、503はスレ
ーブモジュール501内のバス制御装置、504はスレ
ーブモジュール501の内部バス、505はスレーブモ
ジュール501がシステムバス103から受信したデー
タを内部バス504へ転送するためのデータバッファ、
506はバス調停回路104が出力する許可信号106
a,106bを入力して、バスを使用しているマスタモ
ジュール番号を識別するエンコーダ、507はリトライ
要求発生時にバスを使用しているマスタモジュールの番
号を記憶するラッチである。また、508はラッチ50
7の保持しているマスタモジュールの番号と現在システ
ムバスを使用しているマスタモジュールの番号を比較す
る比較器、509はデータバッファ505内部にデータ
が転送されずに残っている場合にセットされるバッファ
エンプティ信号、510はバッファエンプティ信号50
9がリセットまたは比較器508の出力がリセットされ
ている時にバスアクセス要求があった場合にシステムバ
スへリトライ要求を発生するリトライ要求信号である。
511はバスアクセスの開始を示すアクセス信号線であ
る。
ついて、図7、図8に基づいて説明する。図7は、バス
制御装置を示す構成図であり、501はマスタモジュー
ルからシステムバス経由で転送されるデータを受信し内
部バスへ転送するスレーブモジュール、502a,50
2bは各々マスタモジュール1および2、503はスレ
ーブモジュール501内のバス制御装置、504はスレ
ーブモジュール501の内部バス、505はスレーブモ
ジュール501がシステムバス103から受信したデー
タを内部バス504へ転送するためのデータバッファ、
506はバス調停回路104が出力する許可信号106
a,106bを入力して、バスを使用しているマスタモ
ジュール番号を識別するエンコーダ、507はリトライ
要求発生時にバスを使用しているマスタモジュールの番
号を記憶するラッチである。また、508はラッチ50
7の保持しているマスタモジュールの番号と現在システ
ムバスを使用しているマスタモジュールの番号を比較す
る比較器、509はデータバッファ505内部にデータ
が転送されずに残っている場合にセットされるバッファ
エンプティ信号、510はバッファエンプティ信号50
9がリセットまたは比較器508の出力がリセットされ
ている時にバスアクセス要求があった場合にシステムバ
スへリトライ要求を発生するリトライ要求信号である。
511はバスアクセスの開始を示すアクセス信号線であ
る。
【0034】次に動作について説明する。尚、図8はマ
スタモジュール2(502b)のアクセスの直後にマス
タモジュール1(502a)がアクセスし、リトライ要
求が成功する例を示したものである。マスタモジュール
1 502a、およびマスタモジュール2 502b
は、スレーブモジュール501へのデータ転送要求が発
生すると、バス調停回路104へバス要求信号105
a,105bをセットしてバス使用要求を出し、バス調
停回路104がセットするバス使用許可信号106a,
106bを受けて、システムバス103へバスプロトコ
ルに従ってデータを出力する。システムバス103の使
用者は1モジュールに限られるので、バス許可信号10
6aと106bが、同時にセットされることはない。
スタモジュール2(502b)のアクセスの直後にマス
タモジュール1(502a)がアクセスし、リトライ要
求が成功する例を示したものである。マスタモジュール
1 502a、およびマスタモジュール2 502b
は、スレーブモジュール501へのデータ転送要求が発
生すると、バス調停回路104へバス要求信号105
a,105bをセットしてバス使用要求を出し、バス調
停回路104がセットするバス使用許可信号106a,
106bを受けて、システムバス103へバスプロトコ
ルに従ってデータを出力する。システムバス103の使
用者は1モジュールに限られるので、バス許可信号10
6aと106bが、同時にセットされることはない。
【0035】マスタモジュール1 502aがシステム
バス103を獲得してスレーブモジュール501とのデ
ータ転送が開始されると、スレーブモジュール501の
バス制御回路503は一旦データをデータバッファ50
5へ格納し、マスターモジュールとのバス接続を開放し
た後、データバッファ505から内部バス504へのデ
ータ転送を開始する。もし、それ以前に受信したデータ
がまだ内部バス504に全て転送され終えてなく、デー
タバッファ505にデータが残っている場合、即ちバッ
ファエンプティ信号509がリセットされている時、リ
トライ要求信号510がセットされマスタモジュール1
501aへリトライ要求として通知される。
バス103を獲得してスレーブモジュール501とのデ
ータ転送が開始されると、スレーブモジュール501の
バス制御回路503は一旦データをデータバッファ50
5へ格納し、マスターモジュールとのバス接続を開放し
た後、データバッファ505から内部バス504へのデ
ータ転送を開始する。もし、それ以前に受信したデータ
がまだ内部バス504に全て転送され終えてなく、デー
タバッファ505にデータが残っている場合、即ちバッ
ファエンプティ信号509がリセットされている時、リ
トライ要求信号510がセットされマスタモジュール1
501aへリトライ要求として通知される。
【0036】一方、リトライ要求信号510のセットに
よって、ラッチ507が入力保持になり、エンコーダ5
06の出力、即ち、この場合はリトライ要求を発生した
時のマスタモジュール1 502aの番号”1”がラッ
チ507に保持される。
よって、ラッチ507が入力保持になり、エンコーダ5
06の出力、即ち、この場合はリトライ要求を発生した
時のマスタモジュール1 502aの番号”1”がラッ
チ507に保持される。
【0037】このような状態で、マスタモジュール2
502bがスレーブモジュール501にデータを転送し
た時、スレーブモジュール501のバス制御回路503
は比較器508において、ラッチ507出力とエンコー
ダ506出力を比較する。ラッチ507出力はマスタモ
ジュール1 502aを示す番号”1”で、エンコーダ
506出力はマスタモジュール2 502bを示す番
号”2”なので、比較結果は為(”0”)となるので、
リトライ要求信号510がセットされて、マスタモジュ
ール2 502bへリトライ要求が出力される。
502bがスレーブモジュール501にデータを転送し
た時、スレーブモジュール501のバス制御回路503
は比較器508において、ラッチ507出力とエンコー
ダ506出力を比較する。ラッチ507出力はマスタモ
ジュール1 502aを示す番号”1”で、エンコーダ
506出力はマスタモジュール2 502bを示す番
号”2”なので、比較結果は為(”0”)となるので、
リトライ要求信号510がセットされて、マスタモジュ
ール2 502bへリトライ要求が出力される。
【0038】次に、マスタモジュール1 502aがス
レーブモジュール501にリトライアクセスを要求した
時、ラッチ507出力とエンコーダ506出力は同じマ
スタモジュール1 502aを示すので、比較器508
は真(”1”)を示し、この時データバッファ505の
データが既に内部バス504へデータ転送を終了し、バ
ッファエンプティ信号509がセットされていれば、リ
トライ要求信号をリセットし、アクセス要求を受け入れ
る。このようにして、ラッチ507に記憶されたマスタ
モジュール1 502aからのリトライアクセスが受信
されるまでは、他のアクセス要求を受け付けないため、
リトライアクセスが再びリトライ要求でリジェクトされ
ることはなく、確実に受信できる。
レーブモジュール501にリトライアクセスを要求した
時、ラッチ507出力とエンコーダ506出力は同じマ
スタモジュール1 502aを示すので、比較器508
は真(”1”)を示し、この時データバッファ505の
データが既に内部バス504へデータ転送を終了し、バ
ッファエンプティ信号509がセットされていれば、リ
トライ要求信号をリセットし、アクセス要求を受け入れ
る。このようにして、ラッチ507に記憶されたマスタ
モジュール1 502aからのリトライアクセスが受信
されるまでは、他のアクセス要求を受け付けないため、
リトライアクセスが再びリトライ要求でリジェクトされ
ることはなく、確実に受信できる。
【0039】また、本実施の形態ではマスタ情報保持回
路としてラッチ507を用い、1つのマスタ情報を保持
しているが、複数のマスタ情報を保持し、アクセス要求
の受け入れに順番付けをしても良い。
路としてラッチ507を用い、1つのマスタ情報を保持
しているが、複数のマスタ情報を保持し、アクセス要求
の受け入れに順番付けをしても良い。
【0040】実施の形態5.本発明の第5の実施形態に
ついて、図9乃至図11に基づいて説明する。図9は、
バス制御回路中のマスタモジュールに関する構成図であ
り、マスタモジュールのバス制御部は、内部バス上位か
ら転送されるアドレスとデータを受信し、それをシステ
ムバスを経由してアドレスに対応するスレーブモジュー
ルへ転送するものである。図において、501a,50
1bは各々スレーブモジュール1および2、503はマ
スタモジュールであり、103はマスターモジュールと
スレーブモジュールを接続するシステムバスである。6
00はマスタモジュール503内のバス制御部、610
は内部バス、601a〜601cは内部バス610から
受信したアドレスおよびデータをシステムバスへ転送す
るまでの期間保持しておくための要求バッファレジス
タ、602a〜602cは要求バッファレジスタ601
a〜601cに格納されているアドレスから個々のスレ
ーブモジュールを判別するID番号に変換するための変
換マップ、603はスレーブモジュールからのリトライ
要求を受信した時にリトライ開始までの時間を管理する
リトライウエイトタイマ、604は要求バッファレジス
タ601a〜601cの内のどの要求をシステムバスへ
転送するかを制御するための転送制御回路である。ま
た、605は要求バッファレジスタ601a〜601c
とシステムバスとのパスを切替えるためのセレクタ、6
06a〜606cは要求バッファレジスタ601a〜6
01cから出力されるアドレス信号、607はスレーブ
モジュールからのリトライ要求信号、608はリトライ
ウエイトタイマ603からの出力であるリトライウエイ
ト信号、609はセレクタ605のセレクタ出力を指定
するセレクト信号、611a〜611cは変換マップ6
02a〜602cの出力であるスレーブモジュールID
である。
ついて、図9乃至図11に基づいて説明する。図9は、
バス制御回路中のマスタモジュールに関する構成図であ
り、マスタモジュールのバス制御部は、内部バス上位か
ら転送されるアドレスとデータを受信し、それをシステ
ムバスを経由してアドレスに対応するスレーブモジュー
ルへ転送するものである。図において、501a,50
1bは各々スレーブモジュール1および2、503はマ
スタモジュールであり、103はマスターモジュールと
スレーブモジュールを接続するシステムバスである。6
00はマスタモジュール503内のバス制御部、610
は内部バス、601a〜601cは内部バス610から
受信したアドレスおよびデータをシステムバスへ転送す
るまでの期間保持しておくための要求バッファレジス
タ、602a〜602cは要求バッファレジスタ601
a〜601cに格納されているアドレスから個々のスレ
ーブモジュールを判別するID番号に変換するための変
換マップ、603はスレーブモジュールからのリトライ
要求を受信した時にリトライ開始までの時間を管理する
リトライウエイトタイマ、604は要求バッファレジス
タ601a〜601cの内のどの要求をシステムバスへ
転送するかを制御するための転送制御回路である。ま
た、605は要求バッファレジスタ601a〜601c
とシステムバスとのパスを切替えるためのセレクタ、6
06a〜606cは要求バッファレジスタ601a〜6
01cから出力されるアドレス信号、607はスレーブ
モジュールからのリトライ要求信号、608はリトライ
ウエイトタイマ603からの出力であるリトライウエイ
ト信号、609はセレクタ605のセレクタ出力を指定
するセレクト信号、611a〜611cは変換マップ6
02a〜602cの出力であるスレーブモジュールID
である。
【0041】図10は、転送制御回路604の動作フロ
ーを示した図である。また、図11は、変換マップ60
2a〜602cの詳細を示した図である。
ーを示した図である。また、図11は、変換マップ60
2a〜602cの詳細を示した図である。
【0042】次に動作について説明する。マスタモジュ
ール503では、内部バス610から受信しシステムバ
スへ出力するアドレスとデータを、要求バッファレジス
タ601a〜601cの空いているレジスタに格納す
る。内部バス610はアドレス、およびデータを転送し
た後に開放され、次のバスサイクルに移ることができ
る。この様にして、内部バス610からシステムバス1
03へのアクセス要求は、システムバス103の使用権
獲得とは独立に次々に受信され、複数の要求バッファレ
ジスタへ分配されて格納される。
ール503では、内部バス610から受信しシステムバ
スへ出力するアドレスとデータを、要求バッファレジス
タ601a〜601cの空いているレジスタに格納す
る。内部バス610はアドレス、およびデータを転送し
た後に開放され、次のバスサイクルに移ることができ
る。この様にして、内部バス610からシステムバス1
03へのアクセス要求は、システムバス103の使用権
獲得とは独立に次々に受信され、複数の要求バッファレ
ジスタへ分配されて格納される。
【0043】要求バッファレジスタ601a〜601c
に格納されたアドレス信号606a〜606cは、各々
アドレス変換マップ602a〜602cによって送信先
のスレーブモジュールを特定するID値へ変換され、転
送制御回路604へ出力される。転送制御回路604は
セレクタ605へセレクト信号609を送り、要求バッ
ファレジスタ601a〜601cからのアクセス要求を
順番にシステムバス103へ転送する。
に格納されたアドレス信号606a〜606cは、各々
アドレス変換マップ602a〜602cによって送信先
のスレーブモジュールを特定するID値へ変換され、転
送制御回路604へ出力される。転送制御回路604は
セレクタ605へセレクト信号609を送り、要求バッ
ファレジスタ601a〜601cからのアクセス要求を
順番にシステムバス103へ転送する。
【0044】ここで、要求バッファレジスタ601a〜
601cに、各々スレーブモジュール1 501a、ス
レーブモジュール1 501a、スレーブモジュール2
501bへのアクセス要求が格納されていたと仮定す
る。要求バッファレジスタ601aの要求をシステムバ
ス103へ転送した後、スレーブモジュール1 501
aからリトライ要求が応答された場合、リトライウエイ
ト回路はタイマを起動し、予め設定されたリトライ待ち
時間の間待ち状態に入る。この時、リトライウエイトタ
イマ603は、リトライ待ち状態にあることを示すため
にリトライウエイト信号608をセットする。
601cに、各々スレーブモジュール1 501a、ス
レーブモジュール1 501a、スレーブモジュール2
501bへのアクセス要求が格納されていたと仮定す
る。要求バッファレジスタ601aの要求をシステムバ
ス103へ転送した後、スレーブモジュール1 501
aからリトライ要求が応答された場合、リトライウエイ
ト回路はタイマを起動し、予め設定されたリトライ待ち
時間の間待ち状態に入る。この時、リトライウエイトタ
イマ603は、リトライ待ち状態にあることを示すため
にリトライウエイト信号608をセットする。
【0045】転送制御回路604は、リトライウエイト
信号608のセットを検出すると、現在アクセス要求中
のスレーブIDを保存した後、他の要求バッファレジス
タ601b,および601cのアドレス変換マップ出力
611b,611cとの値を比較する。その結果、要求
バッファレジスタ601cの転送先が他スレーブモジュ
ール、即ちスレーブモジュール2 501bへのアクセ
ス要求であることを検知すると、セレクタ605へのセ
レクト信号609を制御し、要求バッファレジスタ60
1cに対する転送要求処理を行なう。
信号608のセットを検出すると、現在アクセス要求中
のスレーブIDを保存した後、他の要求バッファレジス
タ601b,および601cのアドレス変換マップ出力
611b,611cとの値を比較する。その結果、要求
バッファレジスタ601cの転送先が他スレーブモジュ
ール、即ちスレーブモジュール2 501bへのアクセ
ス要求であることを検知すると、セレクタ605へのセ
レクト信号609を制御し、要求バッファレジスタ60
1cに対する転送要求処理を行なう。
【0046】要求バッファレジスタ601cに対する転
送要求を終了し、リトライウエイト信号608がリセッ
トされた時点で再び要求バッファレジスタ601aに対
する転送要求の実行を試み、これが成功すると、続いて
要求バッファレジスタ601bの転送要求を実行するこ
とにより、全ての転送処理を終了する。このようにリト
ライウエイト期間を利用して、リトライ要求を返したス
レーブモジュールとは別のスレーブモジュールとの転送
動作を継続することにより、ウエイト期間中におけるバ
ス制御回路の処理低下を防ぐことができる。
送要求を終了し、リトライウエイト信号608がリセッ
トされた時点で再び要求バッファレジスタ601aに対
する転送要求の実行を試み、これが成功すると、続いて
要求バッファレジスタ601bの転送要求を実行するこ
とにより、全ての転送処理を終了する。このようにリト
ライウエイト期間を利用して、リトライ要求を返したス
レーブモジュールとは別のスレーブモジュールとの転送
動作を継続することにより、ウエイト期間中におけるバ
ス制御回路の処理低下を防ぐことができる。
【0047】実施の形態6.この発明の第6の実施形態
について、図12、図13に基づいて説明する。図12
は、バス制御回路中のマスタモジュールに関する構成図
であり、図において、701は異常転送が発生した時
に、要求バッファレジスタ601a〜601cをクリア
するリセット信号を発生するためのバッファレジスタ制
御回路、703a〜703cはこれらレジスタをクリア
するためのレジスタリセット信号であり、702はスレ
ーブモジュール501からの異常転送検出信号である。
また、図13はバッファレジスタ制御回路701の内部
構成を示す図である。
について、図12、図13に基づいて説明する。図12
は、バス制御回路中のマスタモジュールに関する構成図
であり、図において、701は異常転送が発生した時
に、要求バッファレジスタ601a〜601cをクリア
するリセット信号を発生するためのバッファレジスタ制
御回路、703a〜703cはこれらレジスタをクリア
するためのレジスタリセット信号であり、702はスレ
ーブモジュール501からの異常転送検出信号である。
また、図13はバッファレジスタ制御回路701の内部
構成を示す図である。
【0048】次に動作について説明する。内部バス61
0からの転送要求を要求バッファレジスタ601a〜6
01cに格納し、内部バスとは独立に各々システムバス
103へアクセス要求を転送することは、先の第5の実
施の形態と同様である。ここで、要求バッファレジスタ
601a〜601cに各々スレーブモジュール1 50
1a、スレーブモジュール1 501a、スレーブモジ
ュール2 501bへのアクセス要求が格納されていた
と仮定する。要求バッファレジスタ601aの要求をシ
ステムバス103へ転送した時、何らかのバス転送異常
が発生してスレーブモジュール1 501aから異常転
送検出信号702が応答された場合、マスタモジュール
503はシステムバス103のバスサイクルを中止す
る。
0からの転送要求を要求バッファレジスタ601a〜6
01cに格納し、内部バスとは独立に各々システムバス
103へアクセス要求を転送することは、先の第5の実
施の形態と同様である。ここで、要求バッファレジスタ
601a〜601cに各々スレーブモジュール1 50
1a、スレーブモジュール1 501a、スレーブモジ
ュール2 501bへのアクセス要求が格納されていた
と仮定する。要求バッファレジスタ601aの要求をシ
ステムバス103へ転送した時、何らかのバス転送異常
が発生してスレーブモジュール1 501aから異常転
送検出信号702が応答された場合、マスタモジュール
503はシステムバス103のバスサイクルを中止す
る。
【0049】バッファレジスタ制御回路701は、異常
転送検出信号702がセットされると、現在バスへ転送
している要求バッファレジスタ601a中のスレーブモ
ジュール501aのマップ変換出力であるスレーブモジ
ュールID611aと、全要求バッファレジスタ601
a〜601cのマップ変換出力であるスレーブモジュー
ルID611a〜611cを比較し、同じスレーブID
を持つ要求バッファレジスタ601a,601bへリセ
ット信号703a,703bを送り、要求バッファレジ
スタの内容をクリアする。マスタモジュール503は、
残る要求バッファレジスタ601c中に格納されている
スレーブモジュール501bのマップ変換結果であるス
レーブID611cを要求をスレーブモジュール2 5
01bへ転送し、すべての転送を終了する。このよう
に、スレーブモジュール1 501aへのデータ転送で
異常転送が発生した時に、以降、該モジュールが回復す
るまではスレーブモジュール1 501aに対するデー
タ転送を全てキャンセルすることにより、一連の連続し
たデータ転送において、データ抜けによる処理動作の異
常を防ぐことができる。
転送検出信号702がセットされると、現在バスへ転送
している要求バッファレジスタ601a中のスレーブモ
ジュール501aのマップ変換出力であるスレーブモジ
ュールID611aと、全要求バッファレジスタ601
a〜601cのマップ変換出力であるスレーブモジュー
ルID611a〜611cを比較し、同じスレーブID
を持つ要求バッファレジスタ601a,601bへリセ
ット信号703a,703bを送り、要求バッファレジ
スタの内容をクリアする。マスタモジュール503は、
残る要求バッファレジスタ601c中に格納されている
スレーブモジュール501bのマップ変換結果であるス
レーブID611cを要求をスレーブモジュール2 5
01bへ転送し、すべての転送を終了する。このよう
に、スレーブモジュール1 501aへのデータ転送で
異常転送が発生した時に、以降、該モジュールが回復す
るまではスレーブモジュール1 501aに対するデー
タ転送を全てキャンセルすることにより、一連の連続し
たデータ転送において、データ抜けによる処理動作の異
常を防ぐことができる。
【0050】実施の形態7.本発明の第7の実施形態に
ついて、図14、図15に基づいて説明する。図14
は、バス制御回路の中のマスタ制御部に関する構成図で
あり、図において、801a〜801cはアドレスを処
理対応に区分された領域を判別するためのID番号へ変
換する変換マップ、802a〜802cは変換マップ8
01a〜801cによって出力される領域区分ID信号
である。区分された領域とは、作業用メモリ領域、制御
管理レジスタ領域、あるいはI/O領域などのように、
計算機が処理する上で、完全に別の目的で使われるアド
レス領域を指す。図におけるその他の構成要素は実施の
形態5に記載の相当番号と同一である。また図15は、
変換マップ801a〜801cの詳細を記載した図であ
る。
ついて、図14、図15に基づいて説明する。図14
は、バス制御回路の中のマスタ制御部に関する構成図で
あり、図において、801a〜801cはアドレスを処
理対応に区分された領域を判別するためのID番号へ変
換する変換マップ、802a〜802cは変換マップ8
01a〜801cによって出力される領域区分ID信号
である。区分された領域とは、作業用メモリ領域、制御
管理レジスタ領域、あるいはI/O領域などのように、
計算機が処理する上で、完全に別の目的で使われるアド
レス領域を指す。図におけるその他の構成要素は実施の
形態5に記載の相当番号と同一である。また図15は、
変換マップ801a〜801cの詳細を記載した図であ
る。
【0051】次に、動作について説明する。ここで、要
求バッファレジスタ601a〜601cには、スレーブ
モジュール1 501aへのアクセス要求として、各々
メモリ領域1、メモリ領域2、I/O領域に対するアク
セス要求が格納されていたとする。ここでメモリ領域と
は例えば、プロセッサ演算の命令あるいはデータが格納
される領域のことであり、I/O領域とはDMA制御等
の制御コマンドが格納される領域であって、お互いが干
渉し合うことはない。
求バッファレジスタ601a〜601cには、スレーブ
モジュール1 501aへのアクセス要求として、各々
メモリ領域1、メモリ領域2、I/O領域に対するアク
セス要求が格納されていたとする。ここでメモリ領域と
は例えば、プロセッサ演算の命令あるいはデータが格納
される領域のことであり、I/O領域とはDMA制御等
の制御コマンドが格納される領域であって、お互いが干
渉し合うことはない。
【0052】要求バッファレジスタ601aの要求をシ
ステムバス103へ転送し、スレーブモジュール1 5
01aからリトライ要求が応答された場合、転送制御回
路604は、各変換マップの出力である要求バッファレ
ジスタのアドレスの領域区分IDを比較する。そして、
要求バッファレジスタ601cの転送先がメモリ領域と
は異なる他領域、即ちI/O領域へのアクセス要求であ
ることを検知して、リトライウエイトタイマによる先の
メモリ領域に対するリトライ開始待ちの期間を用いて、
要求バッファレジスタ601cに対する転送要求を行な
う。
ステムバス103へ転送し、スレーブモジュール1 5
01aからリトライ要求が応答された場合、転送制御回
路604は、各変換マップの出力である要求バッファレ
ジスタのアドレスの領域区分IDを比較する。そして、
要求バッファレジスタ601cの転送先がメモリ領域と
は異なる他領域、即ちI/O領域へのアクセス要求であ
ることを検知して、リトライウエイトタイマによる先の
メモリ領域に対するリトライ開始待ちの期間を用いて、
要求バッファレジスタ601cに対する転送要求を行な
う。
【0053】要求バッファレジスタ601cの要求に対
する転送処理が終了し、リトライウエイト信号608が
リセットされた時点で、再び要求バッファレジスタ60
1aの要求、即ちメモリ領域に対する転送を再開し、続
いて要求バッファレジスタ601bに対する転送要求
(これも同じくメモリに対する転送)を実行して、全て
の転送処理を終了する。特に、領域区分が異なるアドレ
スへのアクセスは、順序が入れ替わっても問題がないた
め、リトライウエイト時間を利用して先に転送すること
ができる。
する転送処理が終了し、リトライウエイト信号608が
リセットされた時点で、再び要求バッファレジスタ60
1aの要求、即ちメモリ領域に対する転送を再開し、続
いて要求バッファレジスタ601bに対する転送要求
(これも同じくメモリに対する転送)を実行して、全て
の転送処理を終了する。特に、領域区分が異なるアドレ
スへのアクセスは、順序が入れ替わっても問題がないた
め、リトライウエイト時間を利用して先に転送すること
ができる。
【0054】また、図12において、アドレスからスレ
ーブIDへの変換マップ602a〜602cをアドレス
から領域区分IDへの変換マップ801a〜801cに
置き換え、要求バッファレジスタ601a〜601cに
対しては、メモリ領域、メモリ領域、I/O領域へのア
クセス要求が格納されていた場合、要求バッファレジス
タ601aの要求に対しスレーブモジュール1 501
aから異常転送検出が応答された時、バッファレジスタ
制御回路701は、各要求バッファレジスタのアドレス
の領域区分IDを比較し、転送中の要求バッファレジス
タ601aの領域区分IDと要求バッファレジスタ60
1bの領域区分IDが同じ、即ちメモリ領域へのアクセ
ス要求であることを検知して要求バッファレジスタ60
1a,601bをリセットし、マスタモジュール503
は残る要求バッファレジスタ601cの要求をI/O領
域へ転送し、全ての転送を終える。このように、領域区
分が異なるアドレスへのアクセスは、別領域へのデータ
が消去されても処理上問題がないため、異常転送検出時
は同じ領域区分のデータのみを消去するだけで良い。
ーブIDへの変換マップ602a〜602cをアドレス
から領域区分IDへの変換マップ801a〜801cに
置き換え、要求バッファレジスタ601a〜601cに
対しては、メモリ領域、メモリ領域、I/O領域へのア
クセス要求が格納されていた場合、要求バッファレジス
タ601aの要求に対しスレーブモジュール1 501
aから異常転送検出が応答された時、バッファレジスタ
制御回路701は、各要求バッファレジスタのアドレス
の領域区分IDを比較し、転送中の要求バッファレジス
タ601aの領域区分IDと要求バッファレジスタ60
1bの領域区分IDが同じ、即ちメモリ領域へのアクセ
ス要求であることを検知して要求バッファレジスタ60
1a,601bをリセットし、マスタモジュール503
は残る要求バッファレジスタ601cの要求をI/O領
域へ転送し、全ての転送を終える。このように、領域区
分が異なるアドレスへのアクセスは、別領域へのデータ
が消去されても処理上問題がないため、異常転送検出時
は同じ領域区分のデータのみを消去するだけで良い。
【0055】
【発明の効果】本発明は、以上説明したようにして構成
されているので、以下に記載されるような効果を奏す
る。
されているので、以下に記載されるような効果を奏す
る。
【0056】この発明によれば、リトライ間隔を変更し
ながらリトライ動作を実行するようにしたので、バス上
において他のモジュールの処理動作と競合を起こした場
合においても、リトライ間隔を動的に変化させることが
できるので、無用なリトライ動作を回避することができ
るという効果がある。
ながらリトライ動作を実行するようにしたので、バス上
において他のモジュールの処理動作と競合を起こした場
合においても、リトライ間隔を動的に変化させることが
できるので、無用なリトライ動作を回避することができ
るという効果がある。
【0057】また、この発明によれば、バスの負荷状況
に応じてリトライ間隔を動的に変化させるようにしたの
で、バス上の他のモジュールと処理周期が同期した場合
においても、動作周期の重なりを極力回避することがで
きるので、効率の良いリトライ動作を実行することがで
きる。
に応じてリトライ間隔を動的に変化させるようにしたの
で、バス上の他のモジュールと処理周期が同期した場合
においても、動作周期の重なりを極力回避することがで
きるので、効率の良いリトライ動作を実行することがで
きる。
【0058】また、この発明によれば、一定回数のリト
ライ動作を実行した後は、バス使用要求に対する優先度
を高くするようにしたので、バス上の他のモジュール動
作と競合した場合においても、これを回避して効率のよ
いリトライ処理を行うことができる。
ライ動作を実行した後は、バス使用要求に対する優先度
を高くするようにしたので、バス上の他のモジュール動
作と競合した場合においても、これを回避して効率のよ
いリトライ処理を行うことができる。
【0059】また、この発明によれば、アクセス要求の
あったモジュール情報を保持し、リトライ状態発生後
は、保持回路に記録していると同じモジュールからのア
クセス要求に限って受理するようにしたので、他のモジ
ュールの処理要求周期との同期によるリトライエラーを
回避することができる。
あったモジュール情報を保持し、リトライ状態発生後
は、保持回路に記録していると同じモジュールからのア
クセス要求に限って受理するようにしたので、他のモジ
ュールの処理要求周期との同期によるリトライエラーを
回避することができる。
【0060】また、この発明によれば、リトライウエイ
ト期間を利用して、リトライ要求を返したモジュールと
は別のモジュールに対して転送動作を継続するようにし
たので、リトライ時間待ち期間中におけるバス制御回路
の処理低下を防ぐことができる。
ト期間を利用して、リトライ要求を返したモジュールと
は別のモジュールに対して転送動作を継続するようにし
たので、リトライ時間待ち期間中におけるバス制御回路
の処理低下を防ぐことができる。
【0061】また、この発明によれば、データ転送で異
常転送が発生した際に、以降、該モジュールが回復する
までこのモジュールに対するデータ転送を全てキャンセ
ルするようにしたので、一連の連続したデータ転送にお
いてデータ抜けによる処理動作の異常を回避することが
できる。
常転送が発生した際に、以降、該モジュールが回復する
までこのモジュールに対するデータ転送を全てキャンセ
ルするようにしたので、一連の連続したデータ転送にお
いてデータ抜けによる処理動作の異常を回避することが
できる。
【0062】さらに、この発明によれば、各モジュール
を処理上独立した領域区分に分割してアクセスするよう
にしたので、異なる領域に対するアクセス要求実行が可
能となり、リトライ時間待ちによる転送処理性能低下お
よび異常転送のデータ抜けによる処理の異常を回避する
ことができる。
を処理上独立した領域区分に分割してアクセスするよう
にしたので、異なる領域に対するアクセス要求実行が可
能となり、リトライ時間待ちによる転送処理性能低下お
よび異常転送のデータ抜けによる処理の異常を回避する
ことができる。
【図1】 この発明の第1の実施の形態を示す構成図で
ある。
ある。
【図2】 この発明の第1の実施の形態におけるバス制
御装置のタイミングチャートを示す図である。
御装置のタイミングチャートを示す図である。
【図3】 この発明の第2の実施の形態を示す構成図で
ある。
ある。
【図4】 この発明の第2の実施の形態におけるバス制
御装置のタイミングチャートである。
御装置のタイミングチャートである。
【図5】 この発明の第3の実施の形態を示す構成図で
ある。
ある。
【図6】 この発明の第2の実施の形態におけるバス制
御装置のタイミングチャートである。
御装置のタイミングチャートである。
【図7】 この発明の第4の実施の形態を示す構成図で
ある。
ある。
【図8】 この発明の第4の実施の形態におけるバス制
御装置のタイミングチャートである。
御装置のタイミングチャートである。
【図9】 この発明の第5の実施の形態を示す構成図で
ある。
ある。
【図10】 この発明の第5の実施の形態における転送
制御回路の動作を示すフローチャートである。
制御回路の動作を示すフローチャートである。
【図11】 この発明の第5の実施の形態にける変換マ
ップの構成図である。
ップの構成図である。
【図12】 この発明の第6の実施の形態を示す構成図
である。
である。
【図13】 この発明の第6の実施の形態におけるバッ
ファレジスタ制御回路を示す構成図である。
ファレジスタ制御回路を示す構成図である。
【図14】 この発明の第7の実施の形態を示す構成図
である。
である。
【図15】 この発明の第7の実施の形態にける変換マ
ップの構成図である。
ップの構成図である。
【図16】 従来例におけるバス制御装置を示す構成図
である。
である。
【図17】 従来例におけるバス制御装置を示す構成図
である。
である。
101 モジュール、102 バス制御回路、103
システムバス、104調停回路、105 バス要求信
号、106 バス許可信号、107 内部バス、108
プロセッサ、109 メモリ、201 プロトコル制
御回路、202エラーレジスタ、203 リトライカウ
ンタ、204 閾値レジスタ、205リトライ間隔レジ
スタ、206 計時カウンタ、207 セレクタ、20
8比較器、209 加算器、301 監視レジスタ、3
02 監視回路、401優先度レジスタ、501 スレ
ーブモジュール、502 マスタモジュール、503
バス制御装置、504 内部バス、505 データバッ
ファ、506エンコーダ、507 ラッチ、508 比
較器、600 バス制御部、601要求バッファレジス
タ、602 アドレス→スレーブID変換マップ、60
3リトライウエイトタイマ、604 転送制御回路、6
05 セレクタ、609セレクト信号、610 ローカ
ルバス、701 バッファレジスタ制御回路、703
レジスタリセット信号、702 異常転送検出信号、8
01 アドレス→領域区分ID変換マップ。
システムバス、104調停回路、105 バス要求信
号、106 バス許可信号、107 内部バス、108
プロセッサ、109 メモリ、201 プロトコル制
御回路、202エラーレジスタ、203 リトライカウ
ンタ、204 閾値レジスタ、205リトライ間隔レジ
スタ、206 計時カウンタ、207 セレクタ、20
8比較器、209 加算器、301 監視レジスタ、3
02 監視回路、401優先度レジスタ、501 スレ
ーブモジュール、502 マスタモジュール、503
バス制御装置、504 内部バス、505 データバッ
ファ、506エンコーダ、507 ラッチ、508 比
較器、600 バス制御部、601要求バッファレジス
タ、602 アドレス→スレーブID変換マップ、60
3リトライウエイトタイマ、604 転送制御回路、6
05 セレクタ、609セレクト信号、610 ローカ
ルバス、701 バッファレジスタ制御回路、703
レジスタリセット信号、702 異常転送検出信号、8
01 アドレス→領域区分ID変換マップ。
Claims (8)
- 【請求項1】 バスプロトコルに従ってデータ転送処理
を行うプロトコル制御部とバス制御部から構成されバス
に接続されたバス制御装置と、前記バス制御装置からの
バス使用要求に対して優先度を決定する調停回路からな
るバス制御システムにおいて、 前記バス制御装置は、 リトライ間隔を保持する1つまたは複数からなるリトラ
イ間隔レジスタと、 リトライ実行回数を計数するリトライ実行回数カウンタ
と、 前記リトライ間隔レジスタの切り換えに要するリトライ
回数値を保持するリトライ間隔閾値レジスタと、 最大実行リトライ回数を保持するリトライエラーレジス
タと、 リトライ開始からの経過時間を計数する計時カウンタと
を備え、 各リトライ処理が異常終了した際に前記リトライ間隔閾
値レジスタと前記リトライ実行回数カウンタの値を比較
して等しい場合、リトライ間隔を他のリトライ間隔レジ
スタで規定された値に切替えることによって、リトライ
による再試行開始までの時間間隔を制御するようにした
ことを特徴とするバス制御装置。 - 【請求項2】 バスプロトコルに従ってデータ転送処理
を行うプロトコル制御部とバス制御部から構成されバス
に接続されたバス制御装置と、前記バス制御装置からの
バス使用要求に対して優先度を決定する調停回路からな
るバス制御システムにおいて、 前記バス制御装置は、 リトライ間隔を保持するリトライ間隔レジスタと、 リトライ実行回数を計数するリトライ実行回数カウンタ
と、 バスのアイドル時間を監視し測定結果を保持するバス監
視制御回路と、 前記リトライ間隔レジスタとバス監視制御回路出力の切
り換えに要するリトライ回数値を保持するリトライ間隔
閾値レジスタと、 最大実行リトライ回数を保持するリトライエラーレジス
タと、 リトライ開始からの経過時間を計数する計時カウンタと
を備え、 各リトライ処理が異常終了した際に前記リトライ間隔閾
値レジスタと前記リトライ実行回数カウンタの値を比較
して等しい場合、リトライ間隔をバス監視制御回路の出
力で規定された値に切替えることによって、リトライに
よる再試行開始までの時間間隔を制御するようにしたこ
とを特徴とするバス制御装置。 - 【請求項3】 バスプロトコルに従ってデータ転送処理
を行うプロトコル制御部とバス制御部から構成されバス
に接続されたバス制御装置と、前記バス制御装置からの
バス使用要求に対して優先度を決定する調停回路からな
るバス制御システムにおいて、 前記バス制御装置は、 リトライ間隔を保持するリトライ間隔レジスタと、 リトライ実行回数を計数するリトライ実行回数カウンタ
と、 バスアクセス時における優先度を記録した優先度レジス
タと、 前記優先度レジスタの切り換えに要するリトライ回数値
を保持するリトライ間隔閾値レジスタと、 最大実行リトライ回数を保持するリトライエラーレジス
タと、 リトライ開始からの経過時間を計数する計時カウンタと
を備え、 各リトライ処理が異常終了した際に前記リトライ間隔閾
値レジスタと前記リトライ実行回数カウンタの値を比較
して等しい場合、前記バス調停回路に対するアクセス要
求優先度を他の優先度レジスタの出力で規定された値に
切替えることによって、前記バス調停回路に対するアク
セス要求優先度を変更するようにしたことを特徴とする
バス制御装置。 - 【請求項4】 バスプロトコルに従ってデータ転送処理
を行うプロトコル制御部とバス制御部から構成されバス
に接続されたバス制御装置と、前記バス制御装置からの
バス使用要求に対して優先度を決定する調停回路からな
るバス制御システムにおいて、 前記バス制御装置は、 該バス制御装置に対してアクセス要求を行ったモジュー
ルを判別するモジュール判別回路と、 前記アクセス要求のあったモジュールに対してリトライ
要求で応答した場合に該モジュール情報を記憶しておく
モジュール情報保持回路と、 前記リトライを応答した後に受信したアクセス要求に対
し、該アクセス要求を行ったモジュールが前記モジュー
ル保持回路に記憶されているモジュールと同一の場合に
限り該アクセス要求を受け入れる排他受信回路とを備え
たことを特徴とするバス制御装置。 - 【請求項5】 バスプロトコルに従ってデータ転送処理
を行うプロトコル制御部とバス制御部から構成されバス
に接続されたバス制御装置と、前記バス制御装置からの
バス使用要求に対して優先度を決定する調停回路からな
るバス制御システムにおいて、 前記バス制御装置は、 受信した複数のアクセス要求情報を蓄積する要求バッフ
ァレジスタと、 前記要求バッファレジスタに保持されているアドレス情
報から転送先モジュールを判別するモジュール判別回路
と、 要求バッファレジスタに蓄積されているアクセス要求の
1つを実行した時に実行先モジュールからリトライ要求
が返された場合、一定時間経過してからリトライを実行
させるリトライウエイト回路と、 リトライウエイト期間中に、前記モジュール判別回路に
よって別モジュールへのアクセスと判断された要求バッ
ファレジスタ内のアクセス要求を実行する転送制御回路
を備えたことを特徴とするバス制御装置。 - 【請求項6】 バスプロトコルに従ってデータ転送処理
を行うプロトコル制御部とバス制御部から構成されバス
に接続されたバス制御装置と、前記バス制御装置からの
バス使用要求に対して優先度を決定する調停回路からな
るバス制御システムにおいて、 前記バス制御装置は、 受信した複数のアクセス要求情報を蓄積する要求バッフ
ァレジスタと、 前記要求バッファレジスタに保持されているアドレス情
報から転送先モジュールを判別するモジュール判別回路
と、 前記要求バッファに保持されたアクセス要求の1つを実
行した時に異常転送が検出された場合、同一モジュール
へのアクセス要求を保持している前記要求バッファレジ
スタ内のアクセス要求を消去するバッファレジスタ制御
回路を備えたことを特徴とするバス制御装置。 - 【請求項7】 前記モジュール判別回路は、モジュール
のアドレスとは処理上独立した領域を特定する領域判別
回路を備え、リトライウエイト期間中に別領域へのアク
セス要求を実行することを特徴とする請求項5記載のバ
ス制御装置。 - 【請求項8】 前記モジュール判別回路は、モジュール
のアドレスとは処理上独立した領域を特定する領域判別
回路を備え、異常転送検出時に同じ領域へのアクセス要
求を消去することを特徴とする請求項6記載のバス制御
装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7265586A JPH09114750A (ja) | 1995-10-13 | 1995-10-13 | バス制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7265586A JPH09114750A (ja) | 1995-10-13 | 1995-10-13 | バス制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH09114750A true JPH09114750A (ja) | 1997-05-02 |
Family
ID=17419185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7265586A Pending JPH09114750A (ja) | 1995-10-13 | 1995-10-13 | バス制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH09114750A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002008914A1 (fr) * | 2000-07-21 | 2002-01-31 | Fujitsu Limited | Adaptateur d'interface, procede de traitement de temporisation, et support d'enregistrement |
US7076719B2 (en) | 2001-11-28 | 2006-07-11 | Nec Electronics Corporation | Bus system and retry method |
US7096289B2 (en) * | 2003-01-16 | 2006-08-22 | International Business Machines Corporation | Sender to receiver request retry method and apparatus |
JP2007183984A (ja) * | 2007-02-19 | 2007-07-19 | Fujitsu Ltd | 情報処理装置及びトランザクション処理方法 |
JP2008046980A (ja) * | 2006-08-18 | 2008-02-28 | Fujitsu Ltd | リクエスト送信制御装置およびリクエスト送信制御方法 |
US7676621B2 (en) | 2003-09-12 | 2010-03-09 | Hewlett-Packard Development Company, L.P. | Communications bus transceiver |
-
1995
- 1995-10-13 JP JP7265586A patent/JPH09114750A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002008914A1 (fr) * | 2000-07-21 | 2002-01-31 | Fujitsu Limited | Adaptateur d'interface, procede de traitement de temporisation, et support d'enregistrement |
US7076719B2 (en) | 2001-11-28 | 2006-07-11 | Nec Electronics Corporation | Bus system and retry method |
US7096289B2 (en) * | 2003-01-16 | 2006-08-22 | International Business Machines Corporation | Sender to receiver request retry method and apparatus |
US7676621B2 (en) | 2003-09-12 | 2010-03-09 | Hewlett-Packard Development Company, L.P. | Communications bus transceiver |
JP2008046980A (ja) * | 2006-08-18 | 2008-02-28 | Fujitsu Ltd | リクエスト送信制御装置およびリクエスト送信制御方法 |
JP2007183984A (ja) * | 2007-02-19 | 2007-07-19 | Fujitsu Ltd | 情報処理装置及びトランザクション処理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4494190A (en) | FIFO buffer to cache memory | |
EP1133733B1 (en) | Host controller interface descriptor fetching unit | |
KR910001791B1 (ko) | 동기식 버스를 갖고 있는 컴퓨터 시스템용 버스 제어 장치 및 이의 방법 | |
JPH08255124A (ja) | データ処理システムおよび方法 | |
JP6129976B2 (ja) | 高効率アトミック演算を使用した方法および装置 | |
JPH0679305B2 (ja) | 保留バスを用いて割り込みに応じる装置及び方法 | |
CN111290983A (zh) | Usb传输设备及传输方法 | |
KR100708096B1 (ko) | 버스 시스템 및 그 실행 순서 조정방법 | |
US7934043B2 (en) | Data processing apparatus for controlling access to a memory based upon detection of completion of a DMA bus cycle | |
JPH09114750A (ja) | バス制御装置 | |
US5787263A (en) | Method of an apparatus for controlling data transfer | |
CN115840621A (zh) | 一种多核系统的交互方法及相关装置 | |
JP2734246B2 (ja) | パイプラインバス | |
JP5239769B2 (ja) | リクエスト順序制御システム、リクエスト順序制御方法およびリクエスト順序制御プログラム | |
US5708783A (en) | Data bus arbiter for pipelined transactions on a split bus | |
JPH09269927A (ja) | バスアクセス方法、バス、並びにバス接続システム | |
JPH03263158A (ja) | 共通バス調停制御方式 | |
JPS6120154A (ja) | メモリアクセス制御装置 | |
JP3667504B2 (ja) | 調停回路 | |
JP2000315188A (ja) | ライブ・ロック検出方法及びその装置並びに調停回路 | |
JPH0581049A (ja) | メモリの時間管理方式 | |
KR20070061240A (ko) | 절대 우위의 dma 요청을 처리하는 dma 장치 및 그처리 방법 | |
CN117891761A (zh) | 一种直接内存访问系统及数据搬运方法 | |
JPH0666060B2 (ja) | バス優先権制御方式 | |
JP2000099455A (ja) | 先着優先バス競合制御方式 |