JPH0696014A - バス使用優先順位制御装置 - Google Patents

バス使用優先順位制御装置

Info

Publication number
JPH0696014A
JPH0696014A JP24457792A JP24457792A JPH0696014A JP H0696014 A JPH0696014 A JP H0696014A JP 24457792 A JP24457792 A JP 24457792A JP 24457792 A JP24457792 A JP 24457792A JP H0696014 A JPH0696014 A JP H0696014A
Authority
JP
Japan
Prior art keywords
bus
master
masters
reference value
priority
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
JP24457792A
Other languages
English (en)
Inventor
Tetsuya Toi
哲也 戸井
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP24457792A priority Critical patent/JPH0696014A/ja
Publication of JPH0696014A publication Critical patent/JPH0696014A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【目的】 複数のバスの調停時における無為保留期間の
差による同一プログラムを実行する際の実行時間の差異
を少なくする。 【構成】 各マスタ12−1〜12−Nにおけるバス1
1の獲得の調停時における無為保留期間の累積値を第1
のレジスタ42で求め、これを第2のレジスタ43に格
納されている基準値と比較回路44で比較する。この比
較結果で累積値の方が基準チェックよりも大きくなって
いるときには、そのマスタ12がバス11を獲得する際
の優先順位を上げるようにした。これにより、バス11
の獲得に要する時間をマスタ間で差異の少ないものにす
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は複数のマスタの間でバス
の使用権の優先順位を制御するようにしたバス使用優先
順位制御装置に係わり、特にバスを相互に接続したバス
ブリッジを備えた計算機システムにおいて有効なバス使
用優先順位制御装置に関する。
【0002】
【従来の技術】図10は、バスブリッジにより2個のバ
スを接続した計算機システムの一例を表わしたものであ
る。この図で第1のバス111 と第2のバス112 は独
立しており、それぞれ第1のマスタ12−11 、12−
2 、第2のマスタ12−21、12−22 、メモリ1
1 、142 および入出力装置(I/O)151 、15
2 のうち対応するものを接続している。第1のバス11
1 と第2のバス112 の間には、これらを接続するため
のバスブリッジ17が配置されている。
【0003】図11は、このような計算機システムで、
マスタがこれと同一のバスに接続されたメモリ等をアク
セスした内部バスアクセス時のバス獲得から開放までの
シーケンスを表わしたものである。同図(イ)に示すよ
うに時刻t1 に例えば第1のマスタ12−11 がバス要
求信号(BR1 )211 をL(ロー)レベルに変化させ
てバスの要求を行うと、同図(ロ)に示すように第1の
バス調停時間Ti が経過した後に許可信号221 がLレ
ベルに変化し、第1のバス111 に対する使用が許可さ
れる。これを基にして、第1のマスタ12−11 は同図
(ハ)に示すようにアドレス情報231 を出力し、続い
て同図(ニ)に示すようにデータ241を出力する。
【0004】例えばアクセス先のメモリ141 がデータ
の格納を終了させると、同図(ホ)に示すように時刻t
2 にアクノリッジ(ACK)信号251 が出力される。
第1のマスタ12−11 がこれを受け取ると、同図
(ロ)に示すように第1のバス111 の開放が行われ
る。
【0005】図12は、これに対してマスタがバスブリ
ッジを介して外部のバスに接続されたメモリ等をアクセ
スした外部アクセス時のバス獲得から開放までのシーケ
ンスを表わしたものである。一例として、第1のバス1
1 に接続された第1のマスタ12−11 が第2のバス
112 に接続されたメモリ142 をアクセスしてデータ
の書き込みを行うものとする。
【0006】この場合、同図(イ)に示すように第1の
マスタ12−11 が時刻t1 にバス要求信号211 を出
力すると、バスブリッジは所定の内部処理時間Ta 経過
後に第2のバス112 の使用を要求するためのバス要求
信号212 (同図(ハ))を出力する。この後、第2の
バス112 を獲得するための第2のバス調停時間Tb
経過した後に、同図(ニ)に示すように第2のバス11
2 の使用を許可することを示す許可信号222 がLレベ
ルに変化する。これから、所定の内部処理時間Tc が経
過した後に、同図(ロ)に示すように第1のバス111
の使用を許可することを示すバス使用許可信号221
出力される。時刻t1 からこのバス使用許可信号221
が出力されるまでの時間(Ta +Tb +Tc )は、見掛
け上の第1のバス調停時間(無為保留時間)Te であ
る。
【0007】第1のマスタ12−11 はこのバス使用許
可信号221 を基に、第1のバス12−11 に対して同
図(ホ)に示すようにアドレス情報232 を出力し、こ
の後にデータ242 を出力する(同図(ホ)および
(ヘ))。アクセス先のメモリ142 がこのデータ24
2 の格納を終了させ、時刻t3 において同図(チ)に示
したようにアクノリッジ(ACK)信号252 を出力す
ると、バスブリッジ17はこれに基づいて第1のバス1
2 に対してアクノリッジ信号251 を出力する(同図
(ト))。第1のマスタ12−11 はこれを受け取っ
て、第1および第2のバス111 、112 の開放が行わ
れることになる。
【0008】図13は、このような従来の計算機システ
ムで第1のバスに接続された第1のマスタが各種のアク
セスを行う様子を表わしたものである。まず、第1のマ
スタ12−11 が図10に示したバスブリッジ17を介
して第2のバス112 に接続されたメモリ142 をアク
セスするものとする。この場合、第1のマスタ12−1
1 はバスブリッジ17内の第1のバスアービタに対して
第2のバスを要求する(ステップS101)。この第2
のバス要求は第1のバスアービタから第2のバス112
を管轄する第2のバスアービタに伝達される(ステップ
S102)。
【0009】第2のバスアービタには、例えば第2のバ
ス112 に接続されている第1のマスタ12−12 から
これと前後して第2のバスの使用要求が来ている場合が
ある(ステップS103)。第2のバスアービタは内部
アクセスの方を外部(第1のバス111 )から第2のバ
ス112 をアクセスするよりも優先度を高く設定してい
るものとする。この場合には、第2のバス111 に接続
された第1のマスタ12−11 に対してバス112 の使
用が許可される(ステップS104)。そこで、第1の
マスタ12−12 はアクセス対象としたメモリ142
対してアクセスを行う(ステップS105)。アクセス
の完了によってメモリ142 が応答を返すと(ステップ
S106)、第2のバス112 の開放が行われる(ステ
ップS107)。
【0010】この時点で第2のバス112 が使用できる
状態になると、第2のバスアービタはこれにより第1の
バスアービタに対して第2のバス112 の使用を許可す
る(ステップS108)。第1のバスアービタはこの許
可を第1のマスタ12−11に伝達する(ステップS1
09)。第1のマスタ12−11 が第2のバス112
使用を要求してからここまでの時間が無為保留時間Te
である。
【0011】第1のマスタ12−11 は、この時点で第
2のバス112 をアクセスし(ステップS110)、第
1のバスアービタはこれを第2のバスアービタに伝達す
る(ステップS111)。第2のバスアービタは、これ
を基にしてメモリ142 のアクセスを行う(ステップS
112)。アクセスの完了によってメモリ142 が応答
を返すと(ステップS113)、これが第2および第1
のバスアービタを介して第1のマスタ12−11 に伝達
される(ステップS114、S115)。第1のマスタ
12−11 はこれを基にしてバス開放を指示し、これが
第1のバスアービタを介して第2のバスアービタに伝達
される(ステップS116、S117)。以上が外部ア
クセスに必要とする全時間である。
【0012】次に第1のマスタ12−11 がメモリ14
1 に対して内部アクセスを行う場合について考察する。
この場合には、第1のマスタ12−11 から第1のバス
アービタに対して第1のバス111 の使用要求が行われ
る(ステップS118)。この場合には第2のバス11
2 との調停を行う必要がない。そこで、第1のバスアー
ビタは使用要求を許可する旨を第1のマスタ12−11
に伝える(ステップS119)。ステップS118にお
ける第1のマスタ12−11 のバス使用要求からここま
での期間が内部アクセス時における無為保留期間Ti
ある。第1のマスタ12−11 はメモリ141 をアクセ
スし(ステップS120)、メモリ14 1 からアクセス
完了の応答があると(ステップS121)、第1のバス
111 の開放を第1のバスアービタに通知する(ステッ
プS122)。
【0013】
【発明が解決しようとする課題】図14は、このような
従来の計算機システムで同一プログラムを実行した場合
のデータアクセス対象の違いによるデータの処理時間の
相違を表わしたものである。ここで同図の左側に示した
折れ線は、第1のマスタ12−11 が〜で示す5つ
の命令を実行する際に第1のバス111 に接続された入
出力装置151 とメモリ141 をデータアクセスの対象
として使用した場合を表わしている。また、同図の右側
に示した折れ線は、第1のマスタ12−11 が〜で
示す全く同一の命令を実行する際に第2のバス112
接続された入出力装置152 とメモリ142 をデータア
クセスの対象として使用した場合を表わしている。この
ように、第1のバス111 に接続された第1のマスタ1
2−11 がバスブリッジ17を介して第2のバス112
に接続された入出力装置152 およびメモリ142 をア
クセスすると、内部アクセスを行っている場合と比べて
より多くの時間を必要にすることになる。
【0014】これは、異なったバスにアクセスを行う外
部アクセスの際の無為保留時間Teの方が同一のバス内
でアクセスを行う内部アクセスの際のそれTi よりも長
いことによるものである。内部アクセスを行う場合には
自己の接続されたバスのみを獲得すれば良いが、外部ア
クセスを行う場合には自己のバスと相手側のバスの双方
を同時に獲得する必要があるからである。
【0015】このように、マスタ(あるいはCPU(中
央処理装置))が互いに同一仕様のメモリあるいは入出
力装置を対象として同一のプログラムを実行した場合で
も、これらアクセス対象のメモリや入出力装置がマスタ
と同一のバスに接続されているかどうかによって処理時
間が異なってくるという問題があった。このような処理
時間の相違は、ロボットの制御のように特に実時間性が
要求される分野で大きな問題となっており、システムの
設計時の懸念事項となっていた。
【0016】そこで本発明の目的は、複数のバスの調停
時における無為保留期間の差による同一プログラムを実
行する際の実行時間の差異を少なくすることのできるバ
ス使用優先順位制御装置を提供することにある。
【0017】
【課題を解決するための手段】請求項1記載の発明で
は、(イ)同一または異なったバスに接続されたCP
U、DMAコントローラ等の複数のマスタと、(ロ)こ
れらのマスタのそれぞれに配置され、バスの獲得の際に
要する無為保留期間の累積時間を測定する累積時間測定
手段と、(ハ)マスタのそれぞれに配置され自己の累積
時間測定手段の測定結果に対する基準値を設定する基準
値設定手段と、(ニ)所定の時点でマスタのそれぞれに
ついてそれぞれの累積時間測定手段の測定した累積値が
基準値設定手段の設定した基準値を越えているか否かを
チェックするマスタ別チェック手段と、(ホ)このマス
タ別チェック手段のチェックが行われるたびにこれらマ
スタのそれぞれの累積時間測定手段の測定値をクリアす
る測定値クリア手段と、(ヘ)マスタ別チェック手段の
チェックした結果に応じてこれらのマスタがバスの使用
権を得る上で競合した際の優先順位を、累積値が基準値
設定手段の設定した基準値を越えているマスタに対して
優位に変更する優先順位更新手段とをバス使用優先順位
制御装置に具備させる。
【0018】すなわち請求項1記載の発明では、同一の
バスあるいはバスブリッジを介して他のバスに接続され
たCPU、DMAコントローラ等の複数のマスタそれぞ
れについて、バスの獲得の際に要する無為保留期間の
累積時間を測定する累積時間測定手段と、自己の累積
時間測定手段の測定結果に対する基準値を設定する基準
値設定手段とを配置しておく。そして、所定の時点で例
えば計算機システムの所定の制御回路がそれぞれのマス
タに対して累積値が基準値を越えているかどうかをチェ
ックし、越えているマスタについてはバス使用について
の調停時の優先順位をより優位に変更するようにする。
これにより、無為保留期間の累積値が相対的に長いよう
なマスタについては優先順位を高めることで累積値の短
縮化を図り、マスタ間のプログラム実行に要する時間の
差異を縮めるようにする。
【0019】請求項2記載の発明では、(イ)同一また
は異なったバスに接続されたCPU、DMAコントロー
ラ等の複数のマスタと、(ロ)これらのマスタのそれぞ
れに配置され、バスの獲得の際に要する無為保留期間の
累積時間を測定する累積時間測定手段と、(ハ)マスタ
のそれぞれに配置され自己の累積時間測定手段の測定結
果に対する基準値を設定する基準値設定手段と、(ニ)
所定の時間間隔を測定する時間間隔測定手段と、(ホ)
バスの使用権の優先順位の変更を指示する命令を解読す
る解読手段と、(ヘ)時間間隔測定手段が所定の時間間
隔を測定するたびに、および解読手段がバスの使用権の
優先順位の変更の指示を解読したときに、前記マスタの
それぞれについてそれぞれの累積時間測定手段の測定し
た累積値が基準値設定手段の設定した基準値を越えてい
るか否かをチェックするマスタ別チェック手段と、
(ト)このマスタ別チェック手段のチェックが行われる
たびにこれらマスタのそれぞれの累積時間測定手段の測
定値をクリアする測定値クリア手段と、(チ)マスタ別
チェック手段のチェックした結果に応じてこれらのマス
タがバスの使用権を得る上で競合した際の優先順位を、
累積値が基準値設定手段の設定した基準値を越えている
マスタに対して優位に変更する優先順位更新手段とをバ
ス使用優先順位制御装置に具備させる。
【0020】すなわち請求項2記載の発明では、同一の
バスあるいはバスブリッジを介して他のバスに接続され
た複数のマスタそれぞれについて、バスの獲得の際に
要する無為保留期間の累積時間を測定する累積時間測定
手段と、自己の累積時間測定手段の測定結果に対する
基準値を設定する基準値設定手段とを配置しておく。そ
して、例えば計算機システムの所定の制御回路がそれぞ
れのマスタに対して累積値が基準値を越えているかどう
かをチェックし、越えているマスタについてはバス使用
についての調停時の優先順位をより優位に変更するよう
にする。このようなチェックは、所定の時間間隔を測定
する時間間隔測定手段によって予め定めた時間間隔で行
われるばかりでなく、バスの使用権の優先順位の変更を
指示する命令を解読する解読手段の解読した指示に応じ
て適宜行われることになる。これにより、無為保留期間
の累積値が相対的に長いようなマスタについては優先順
位を高めることで累積値の短縮化を図り、マスタ間のプ
ログラム実行に要する時間の差異を縮めることができ
る。
【0021】請求項3記載の発明では、(イ)同一また
は異なったバスに接続されたCPU、DMAコントロー
ラ等の複数のマスタと、(ロ)これらのマスタのそれぞ
れに配置され、バスの獲得の際に要する無為保留期間の
平均値を測定する平均値測定手段と、(ハ)マスタのそ
れぞれに配置され自己の平均値測定手段の測定結果に対
する基準値を設定する基準値設定手段と、(ニ)所定の
時点で前記マスタのそれぞれについてそれぞれの平均値
測定手段の測定した平均値が基準値設定手段の設定した
基準値を越えているか否かをチェックするマスタ別チェ
ック手段と、(ホ)マスタ別チェック手段のチェックし
た結果に応じてこれらのマスタがバスの使用権を得る上
で競合した際の優先順位を、平均値が基準値設定手段の
設定した基準値を越えているマスタに対して優位に変更
する優先順位更新手段とをバス使用優先順位制御装置に
具備させる。
【0022】すなわち請求項3記載の発明では、同一の
バスあるいはバスブリッジを介して他のバスに接続され
たCPU、DMAコントローラ等の複数のマスタそれぞ
れについて、バスの獲得の際に要する無為保留期間の
1回当たりの平均値を測定する平均値測定手段と、自
己の平均値測定手段の測定結果に対する基準値を設定す
る基準値設定手段とを配置しておく。そして、所定の時
点で例えば計算機システムの所定の制御回路がそれぞれ
のマスタに対して平均値が基準値を越えているかどうか
をチェックし、越えているマスタについてはバス使用に
ついての調停時の優先順位をより優位に変更するように
する。これにより、無為保留期間の平均値が相対的に長
いようなマスタについては優先順位を高めることで優先
的にバスの獲得を行わせ、マスタ間のプログラム実行に
要する時間の差異を縮めるようにする。
【0023】
【実施例】以下実施例につき本発明を詳細に説明する。
【0024】図1は本発明の一実施例におけるバス使用
優先順位制御装置の原理的な構成を示したものである。
このバス使用優先順位制御装置31は、同一のデータバ
ス11Dとアドレスバス11Aにそれぞれ接続された第
1〜第Nのマスタ12−1〜12−Nの内部にそれぞれ
同一構成のバス使用監視回路33を配置した構成となっ
ている。第1〜第Nのマスタ12−1〜12−Nは、第
1〜第Nの優先順位更新要求信号線34−1〜34−N
によって優先順位保持回路35と接続されており、優先
順位の更新要求を行うようになっている。優先順位保持
回路35は、ラウンドロビン法等の手法によって、各マ
スタ12−1〜12−Nの優先順位を管理するようにな
っており、また、調停時における優先順位を保持するよ
うになっている。この保持された優先順位情報37は、
バスブリッジ17(図10参照)内の対応するバスアー
ビタ36に常に供給されるようになっている。バスアー
ビタ36は、第1〜第Nのマスタ12−1〜12−Nか
ら送出されるそれぞれのバス要求信号(BR)21−1
〜21−Nを入力するようになっており、これらのマス
タ12−1〜12−Nに対してバス使用許可信号(B
G)22−1〜22−Nを出力するようになっている。
【0025】バス使用監視回路33は、それぞれバス要
求信号21とバス使用許可信号22とバスクロック41
を入力する第1のレジスタ42と、データバス11Dに
接続された第2のレジスタ43と、これらのレジスタ4
2、43の内容の比較を行って優先順位更新要求信号線
34に優先順位更新要求信号を出力する比較回路44
と、これらの制御を行う制御回路45とを備えている。
制御回路45にはバスクロック41と、比較開始信号4
7が供給される他、アドレスバス11Aからアドレス情
報の供給も行われるようになっている。ここで、バスク
ロック41はこの計算機システムに共通のクロックとし
て使用されているものである。制御回路45からは、無
為保留期間の累積値の出力のイネーブルを指示する累積
値出力指示信号48が第1のレジスタ42に送出される
ようになっている。また、制御回路45から比較回路4
4には、比較結果のイネーブルを指示する比較結果指示
信号49が出力され、第2のレジスタ43には基準値書
込信号51が出力されるようになっている。
【0026】図2は、第1のバスに接続された第1およ
び第2のマスタとバスアービタにおける調停用の信号の
接続関係を表わしたものである。第1のマスタ12−1
1 からバスアービタ361 には、内部バス(ここでは第
1のバス111 )のみを要求する内部バス要求信号21
I−11 と外部バス(ここでは第2のバス112 )を要
求する外部バス要求信号21E−11 が供給されるよう
になっている。ここで、外部バス要求信号21E−11
は内部バス(ここでは第1のバス111 )の獲得も同時
に要求している。第1のバス111 の管理を行うバスア
ービタ361 からは所定のタイミングでバス許可信号2
2−11 が第1のマスタ12−11 に供給されることに
なる。
【0027】第2のマスタ12−21 とバスアービタ3
1 における調停用の信号の接続関係も全く同様であ
る。なお、図1で第1のマスタ12−11 からバスアー
ビタ36に入力されるバス要求信号21−1は、内部バ
ス要求信号21I−1と外部バス要求信号21E−1を
一緒に表現した信号である。また、図2では添字「1」
を付けているのに対して図1で付けていないのは、図1
では第1のバス111 や第2のバス112 に限定せず
に、一般的なバス11に対するバス使用優先順位制御装
置として表現しているためである。
【0028】図3は、それぞれのマスタの構成を表わし
たものである。マスタ12はCPU(中央処理装置)ま
たはDMAコントローラ(ここではCPUと総称する)
61と、ここから出力されるアドレス情報62を入力す
るデコーダ63およびこれをバス11に出力するために
設けられたトライステートバッファ64と、デコーダ6
3の出力側に配置された2つのオアゲート65、66
と、CPU61のデータ線67をバス11に接続するた
めに設けられた双方向トライステートバッファ69から
構成されている。
【0029】ところで、図4はこのようなマスタがアク
セスするバスを明示するために本実施例で採用されてい
るアドレスの割り付けの仕組みを表わしたものである。
この図に示したように第1のバス111 のアドレスの割
り付けでは、バスブリッジ17(図13)を介した第2
のバス112 に接続されたメモリ142 、入出力装置1
2 等のスレーブ群71についてはアドレス空間の上位
側に配置されており、下位側には自己の第1のバス11
1 に接続されたメモリ141 、入出力装置15 1 等のス
レーブ群72が配置されている。
【0030】これと同様に、第2のバス112 のアドレ
スの割り付けでは、バスブリッジ17を介した第1のバ
ス111 に接続されたメモリ141 、入出力装置151
等のスレーブ群73についてはアドレス空間の上位側に
配置されており、下位側には自己の第2のバス112
接続されたメモリ142 、入出力装置152 等のスレー
ブ群74が配置されている。したがって、アドレスの上
位をデコードしてみて、バスブリッジ17を介する相手
側のバス11を要求している場合には、対応するバス要
求信号(BR)を生成するようにすればよい。
【0031】したがって、図3に示したデコーダ63
は、アドレス情報62の上位ビットをデコードするだけ
で、CPU61が内部バスのみをアクセス使用としてい
るのか、外部バスをアクセス使用としているのかを判別
することができる。デコーダ63の出力は、外部バスに
関する場合には一方のオアゲート65に入力され、アド
レスストローブ信号76と負論理アンドがとられる。そ
して、これが外部バス要求信号21Eとしてバス11に
出力される。
【0032】これに対して、デコーダ63の出力が内部
バスに関する場合には、この出力は他方のオアゲート6
6に入力され、同様にアドレスストローブ信号76と負
論理アンドがとられる。そして、これが内部バス要求信
号21Iとしてバス11に出力されることになる。これ
らの外部バス要求信号21Eおよび内部バス要求信号2
1Iは、バス11を経由して図1に示したバスアービタ
36に入力されることになる。
【0033】トライステートバッファ64と双方向トラ
イステートバッファ69のイネーブル端子ENには、B
G信号77が供給される。また、双方向トライステート
バッファ69のディレクション端子DIRには、CPU
61のリード・ライト信号78が供給されるようになっ
ている。双方向トライステートバッファ69は、これに
よってリード時にバス11から入力する方向に制御さ
れ、ライト時にはバス11へ出力する方向に制御される
ようになっている。
【0034】図5に示したタイミング図を用いて、マス
タがバスの使用の要求を行ってアクセスが完了するまで
の制御の様子を説明する。マスタ12内のCPU61が
同図(イ)に示すようにバス11をアクセスするための
アドレスを出力し、これが確定してアドレスストローブ
信号76(同図(ロ))がLレベルに変化すると、デコ
ーダ63によってデコードされた結果として、同図
(ハ)に示したように外部バス要求信号21EがLレベ
ルにドライブされるか、同図(ニ)に示したように内部
バス要求信号21IがLレベルにドライブされる。
【0035】バスアービタ36はこれを受けてローカル
バスのみ、あるいはローカルバスと外部バスの双方につ
いて調停を開始し、しかる後に、図5(ホ)に示したよ
うにバス許可信号22を出力する。外部バス要求信号2
1Eあるいは内部バス要求信号21IがLレベルに変化
してからバス許可信号22がLレベルに変化するまでの
期間が、マスタ12にとっての無為保留期間である。こ
の無為保留期間はマスタ12にとっての全くの無駄時間
である。
【0036】その後、マスタ12から有意のアドレスが
所望のメモリ14あるいは入出力装置15をアクセスす
るために出力される(同図(ヘ))。そして、これによ
り該当するメモリ14あるいは入出力装置15のアクセ
スが完了した時点で、アクノリッジ信号(ACK)25
が返送され(同図(ト))、これを基にして該当するバ
ス要求信号21Eまたは21Iおよびバス許可信号22
がHレベルにドライブされて、アクセスのための一連の
サイクルが終了することになる。
【0037】図6は、図1に示したバス使用監視回路の
要部を具体的に表わしたものである。バス使用監視回路
33内の第1のレジスタ42には、図3に示した外部バ
ス要求信号21Eと内部バス要求信号21Iの論理オア
をとったバス要求信号21とバスアービタ36(図1)
が出力するバス許可信号22が入力される。バス要求信
号21は、インバータ81で論理を反転されてナンドゲ
ート82の一方の入力端子に入力される。バス許可信号
22はナンドゲート82の他方の入力端子に入力され
る。ナンドゲート82の出力は、ペンディング時間累積
カウンタ83のイネーブル端子ENに入力される。
【0038】このペンディング時間累積カウンタ83に
は、バスクロック41がクロック入力端子に、また優先
順位更新手続完了通知信号85がクリア端子CLRに入
力するようになっている。ここで、優先順位更新手続完
了通知信号85は、図示しない制御回路から出力される
優先順位更新手続きの完了を通知する信号である。優先
順位更新手続完了通知信号85が入力すると、ペンディ
ング時間累積カウンタ83はそのカウント値を“0”に
クリアするようになっている。
【0039】ペンディング時間累積カウンタ83の出力
86は、第2のレジスタ43の出力87と共に比較回路
44内の比較器89に入力するようになっている。比較
器89は、両出力86、87を比較して、ペンディング
時間累積カウンタ83の示す値の方が第2のレジスタ4
3の示す値よりも大きい場合にはその比較出力91をH
レベルに設定する。これ以外の場合には、比較出力91
はLレベルとなる。第2のレジスタ43には、それぞれ
のマスタ12について、許容される無為保留期間の最大
値が予め設定されている。次の表1はこのような第2の
レジスタ43の内容の一例を表わしたものである。
【0040】
【表1】
【0041】ただし、この表1における設定値は、ペン
ディング時間累積カウンタ83に供給されるバスクロッ
ク41を単位とした数値となっている。
【0042】比較出力91は図示しない制御回路から出
力される比較開始信号92と共に比較回路44内のナン
ドゲート93に入力される。ナンドゲート93からは優
先順位変更要求信号94が出力される。この優先順位変
更要求信号94がLレベルになったとき、すなわちペン
ディング時間累積カウンタ83の示す値の方が第2のレ
ジスタ43の示す値よりも大きくなったときには、マス
タ12−1〜12−N間におけるそのマスタ12の優先
順位を従来よりもより高位に変更するための優先順位変
更要求が出されることになる。
【0043】本実施例のバス使用優先順位制御装置で
は、表1に示した第2のレジスタの設定値を固定にして
それらの設定値の比で優先順位をそれぞれの無為保留期
間に応じて順次変更することも可能であるが、更に、こ
れら表1の設定値を変更していくことによって、各マス
タ12−1〜12−N間における無為保留期間の累積値
の平均化を図ることもできる。例えば、あるマスタ12
についての第2のレジスタの設定値を小さく変更する
と、それだけ短時間で優先順位変更要求信号94がLレ
ベルに変化するので、結果的に調停のための優先順位が
高まり、計算機システム内でのバスの使用率が高くなる
ことになる。
【0044】図7は、このように第2のレジスタの設定
値を変更する際に行われる制御の流れの一例を表わした
ものである。図1に示したバスブリッジ17では、所定
のタイミングで比較開始信号92を全マスタ12−1〜
12−Nに出力し(ステップS201)、これらのマス
タ12−1〜12−Nから優先順位変更要求が受信され
るまで、それらの内容を登録する(ステップS202、
S203)。そして、各マスタ12−1〜12−Nから
得られた優先順位変更要求信号94に応じて全マスタ1
2−1〜12−Nの優先順位の変更を行い(ステップS
204)、次にLレベルとなっているマスタ12の第2
のレジスタ43については、その設定値を所定値だけ減
算し、Hレベルとなっているものについては所定値だけ
加算する(ステップS205)。
【0045】このようにして得られたそれぞれのマスタ
12−1〜12−Nについての新しい設定値は、データ
バス11Dを通じてこれらの第1のレジスタ42に送ら
れ、内容の変更が行われる(ステップS206)。この
後、優先順位更新手続完了通知信号85が出力されて、
全マスタ12−1〜12−Nの第1のレジスタにおける
ペンディング時間累積カウンタ83の内容が“0”にク
リアされて(ステップS207)、設定値更新のための
全作業が終了する(エンド)。これ以後、それぞれのマ
スタ12−1〜12−Nでは、ペンディング時間累積カ
ウンタ83の内容が“0”から順次累積される一方で、
第2のレジスタ43に新たに設定された値との比較が行
われることになる。
【0046】変形例
【0047】図8は図6に対応するもので、本発明の第
1の変形例におけるバス使用監視回路を表わしたもので
ある。図6と同一部分には同一の符号を付している。バ
ス使用監視回路33′内の第1のレジスタ42′内に
は、要求回数累積カウンタ101と除算器102が新た
に設けられている。要求回数累積カウンタ101は優先
順位更新手続完了通知信号85によってそのカウント値
をリセットされる一方、バス要求信号21の論理反転後
の信号103をクロック入力端子に入力するようになっ
ており、バス要求のあった回数をカウントするようにな
っている。このカウント値105は、ペンディング時間
累積カウンタ83の出力86と共に除算器102に入力
される。
【0048】除算器102では、カウント値105を除
数とし、ペンディング時間累積カウンタの出力86を被
除数として商106を求めるようになっている。商10
6は、このマスタ12がバス11の要求を行ったときの
無為保留期間の1回当たりの平均値となる。この商10
6は比較器89に入力されて第2のレジスタ43の出力
87と比較される。この出力87は、無為保留期間の1
回当たりの所定の基準値であり、この値は表1に示した
値と異なったものであることはもちろんである。比較器
89から出力される比較出力91は図示しない制御回路
から出力される比較開始信号92と共に比較回路44内
のナンドゲート93に入力される。ナンドゲート93か
らは優先順位変更要求信号94が出力される。この優先
順位変更要求信号94がLレベルになったとき、すなわ
ちペンディング時間累積カウンタ83の示す値の方が第
2のレジスタ43の示す値よりも大きくなったときに、
優先順位をより高位に変更するための優先順位変更要求
が出されることになる。
【0049】なお、除算器102による除算は、要求回
数累積カウンタ101のカウント値105が2n (n=
1、2、3、……、n)に達したことを契機としてペン
ディング時間累積カウンタの出力86を右にnビットシ
フトすることによっても行うことができる。
【0050】図9は、本発明の第2の変形例としての比
較開始信号の発生回路を表わしたものである。先の実施
例では比較開始信号92が指示手段から出力されること
にしたが、この変形例では、これを所定の間隔で発生さ
せるようにした。すなわちインタバルタイマ111はそ
のクロック入力端子にバスクロック41を入力してお
り、所定の間隔でHレベルのキャリー信号112を出力
するようになっている。このキャリー信号112は2入
力オアゲート113の一方の入力となる。
【0051】比較開始信号の発生回路は命令レジスタ1
14を備えており、ここにはアドレスバス11A、デー
タバス11B、アドレスストローブ信号115およびリ
ード・ライト信号116が入力されるようになってい
る。命令レジスタ114は、これらの情報を用いてバス
の調停について特に必要とされるときにHレベルの指示
信号を出力する。この指示信号115は2入力オアゲー
ト113の他方の入力となる。この結果、2入力オアゲ
ート113からは、通常の場合には所定の周期で比較開
始信号92′が出力され、これ以後の場合で意図的に優
先順位の変更を行うような場合には指示信号115に基
づいた比較開始信号92′が出力されることになる。比
較開始信号92′は図示しないインバータによって論理
を反転されて、実施例で説明した比較開始信号92とな
る。
【0052】なお、この変形例の回路では、例えばイン
タバルタイマ111としてカウント値のプリセットが可
能なタイマ回路を使用することにより、比較開始信号9
2′が出力される時間間隔を任意に調整することができ
る。
【0053】
【発明の効果】以上説明したように請求項1記載の発明
によれば、各マスタについて無為保留期間の累積値を求
め、これらを基準値と比較した結果によってこれらのマ
スタがバスを獲得する際の優先順位を再設定することに
した。このように優先順位を組み替えることで、例えば
バスブリッジを介して接続された他のバスのメモリ等を
アクセスする機会の多いマスタや、頻繁に外部のメモリ
等をアクセスするマスタについては、その実態を把握す
ることができ、優先順位を上げることで、統計的に無駄
時間消費の少ないマスタとほぼ同等のバス使用率を得る
ことが可能になる。これにより、同一のCPUおよび同
一の入出力装置を対象として同一のプログラムを実行し
た場合には、CPUと入出力装置が同一のバス上に接続
されているかどうかを問わず、同様の処理時間でプログ
ラムの実行が可能になる。このため、ロボット制御等に
必要とされる実時間保証を容易に確保することができ
る。
【0054】また、請求項2記載の発明によれば、各マ
スタの優先順位の変更のためのチェックを定期的に行う
ことができるばかりでなく、システムの各種要求に対応
してその都度、優先順位の組み替えを行うことができる
ので、例えば各種プログラムの実行の推移に応じて適宜
優先順位を変更することができ、それぞれのプログラム
実行時のマスタの状況に応じた最も理想的な優先順位の
更新が可能になるという効果がある。
【0055】更に請求項3記載の発明によれば、請求項
1記載の効果が得られる他、無為保留期間の累積値を求
める代わりに平均値を求めることにしたので、チェック
に要する期間を長く設定すると、個々のマスタのバス獲
得に要する時間を正確に把握することができ、優先順位
を正確に定めることができる。また、平均値を求めるの
で、累積値を求める場合に比べてそれらの値を格納する
メモリの容量が少なくてよいという利点もある。更に、
平均値を求めるために除算器を使用する場合には、これ
をシフタで構成すれば必要なハードウェア量を効率的に
削減することができるばかりでなく、除算の処理時間の
短縮化も図ることができる。
【図面の簡単な説明】
【図1】 本発明の一実施例におけるバス使用優先順位
制御装置の原理的な構成を示したブロック図である。
【図2】 本実施例で第1のバスに接続された第1およ
び第2のマスタとバスアービタにおける調停用の信号の
接続関係を表わした接続構成図である。
【図3】 本実施例の各マスタの構成を表わした回路図
である。
【図4】 各マスタがアクセスするバスを明示するため
に本実施例で採用されているアドレスの割り付けの仕組
みを表わした説明図である。
【図5】 本実施例でマスタがバスの使用の要求を行っ
てアクセスが完了するまでの制御の様子を説明するため
の各種波形図である。
【図6】 図1に示したバス使用監視回路の要部を具体
的に表わした回路図である。
【図7】 本実施例で第2のレジスタの設定値を変更す
る際に行われる制御の流れの一例を表わした流れ図であ
る。
【図8】 図6に対応するもので、本発明の第1の変形
例におけるバス使用監視回路を表わした回路図である。
【図9】 本発明の第2の変形例で比較開始信号の発生
回路を表わした回路図である。
【図10】 バスブリッジにより2個のバスを接続した
計算機システムの一例を表わしたシステム構成図であ
る。
【図11】 マスタがこれと同一のバスに接続されたメ
モリ等をアクセスした内部バスアクセス時のバス獲得か
ら開放までの様子を表わした各種波形図である。
【図12】 マスタがバスブリッジを介して外部のバス
に接続されたメモリ等をアクセスした外部アクセス時の
バス獲得から開放までの様子を表わした各種波形図であ
る。
【図13】 従来の計算機システムで第1のバスに接続
された第1のマスタが各種のアクセスを行う様子を表わ
した説明図である。
【図14】 従来の計算機システムで同一プログラムを
実行した場合のデータアクセス対象の違いによるデータ
の処理時間の相違を表わした説明図である。
【符号の説明】
11…バス、11A…アドレスバス、11D…データバ
ス、12−1〜12−N…第1〜第Nのマスタ、17…
バスブリッジ、33…バス使用監視回路、35…優先順
位保持回路、36…バスアービタ、42…第1のレジス
タ、43…第2のレジスタ、44…比較回路、45…制
御回路、61…CPU、83…ペンディング時間累積カ
ウンタ、89…比較器、101…要求回数累積カウン
タ、102…除算器、111…インタバルタイマ、11
4…命令レジスタ

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 同一または異なったバスに接続された複
    数のマスタと、 これらのマスタのそれぞれに配置され、バスの獲得の際
    に要する無為保留期間の累積時間を測定する累積時間測
    定手段と、 前記マスタのそれぞれに配置され自己の累積時間測定手
    段の測定結果に対する基準値を設定する基準値設定手段
    と、 所定の時点で前記マスタのそれぞれについてそれぞれの
    累積時間測定手段の測定した累積値が基準値設定手段の
    設定した基準値を越えているか否かをチェックするマス
    タ別チェック手段と、 このマスタ別チェック手段のチェックが行われるたびに
    これらマスタのそれぞれの累積時間測定手段の測定値を
    クリアする測定値クリア手段と、 前記マスタ別チェック手段のチェックした結果に応じて
    これらのマスタがバスの使用権を得る上で競合した際の
    優先順位を、累積値が基準値設定手段の設定した基準値
    を越えているマスタに対して優位に変更する優先順位更
    新手段とを具備することを特徴とするバス使用優先順位
    制御装置。
  2. 【請求項2】 同一または異なったバスに接続された複
    数のマスタと、 これらのマスタのそれぞれに配置され、バスの獲得の際
    に要する無為保留期間の累積時間を測定する累積時間測
    定手段と、 前記マスタのそれぞれに配置され自己の累積時間測定手
    段の測定結果に対する基準値を設定する基準値設定手段
    と、 所定の時間間隔を測定する時間間隔測定手段と、 バスの使用権の優先順位の変更を指示する命令を解読す
    る解読手段と、 前記時間間隔測定手段が所定の時間間隔を測定するたび
    に、および前記解読手段がバスの使用権の優先順位の変
    更の指示を解読したときに、前記マスタのそれぞれにつ
    いてそれぞれの累積時間測定手段の測定した累積値が基
    準値設定手段の設定した基準値を越えているか否かをチ
    ェックするマスタ別チェック手段と、 このマスタ別チェック手段のチェックが行われるたびに
    これらマスタのそれぞれの累積時間測定手段の測定値を
    クリアする測定値クリア手段と、 前記マスタ別チェック手段のチェックした結果に応じて
    これらのマスタがバスの使用権を得る上で競合した際の
    優先順位を、累積値が基準値設定手段の設定した基準値
    を越えているマスタに対して優位に変更する優先順位更
    新手段とを具備することを特徴とするバス使用優先順位
    制御装置。
  3. 【請求項3】 同一または異なったバスに接続された複
    数のマスタと、 これらのマスタのそれぞれに配置され、バスの獲得の際
    に要する無為保留期間の平均値を測定する平均値測定手
    段と、 前記マスタのそれぞれに配置され自己の平均値測定手段
    の測定結果に対する基準値を設定する基準値設定手段
    と、 所定の時点で前記マスタのそれぞれについてそれぞれの
    平均値測定手段の測定した平均値が基準値設定手段の設
    定した基準値を越えているか否かをチェックするマスタ
    別チェック手段と、 前記マスタ別チェック手段のチェックした結果に応じて
    これらのマスタがバスの使用権を得る上で競合した際の
    優先順位を、平均値が基準値設定手段の設定した基準値
    を越えているマスタに対して優位に変更する優先順位更
    新手段とを具備することを特徴とするバス使用優先順位
    制御装置。
JP24457792A 1992-09-14 1992-09-14 バス使用優先順位制御装置 Pending JPH0696014A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24457792A JPH0696014A (ja) 1992-09-14 1992-09-14 バス使用優先順位制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24457792A JPH0696014A (ja) 1992-09-14 1992-09-14 バス使用優先順位制御装置

Publications (1)

Publication Number Publication Date
JPH0696014A true JPH0696014A (ja) 1994-04-08

Family

ID=17120795

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24457792A Pending JPH0696014A (ja) 1992-09-14 1992-09-14 バス使用優先順位制御装置

Country Status (1)

Country Link
JP (1) JPH0696014A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08166922A (ja) * 1994-12-14 1996-06-25 Nec Corp バスアクセス監視型優先制御装置
KR100456696B1 (ko) * 2002-05-21 2004-11-10 삼성전자주식회사 집적회로장치의 버스중재기
KR100484150B1 (ko) * 2002-07-31 2005-04-18 삼성전자주식회사 버스 중재방법 및 장치
JP2006040019A (ja) * 2004-07-28 2006-02-09 Renesas Technology Corp アクセス制御装置
JP2008033896A (ja) * 2006-07-04 2008-02-14 Canon Inc バスシステム
JP2012168773A (ja) * 2011-02-15 2012-09-06 Renesas Electronics Corp バスシステムおよびアクセス制御方法
JP5106630B2 (ja) * 2008-06-06 2012-12-26 三菱電機株式会社 バス調停装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08166922A (ja) * 1994-12-14 1996-06-25 Nec Corp バスアクセス監視型優先制御装置
KR100456696B1 (ko) * 2002-05-21 2004-11-10 삼성전자주식회사 집적회로장치의 버스중재기
US7054970B2 (en) 2002-05-21 2006-05-30 Samsung Electronics Co., Ltd. Bus arbiter for integrated circuit systems
KR100484150B1 (ko) * 2002-07-31 2005-04-18 삼성전자주식회사 버스 중재방법 및 장치
JP2006040019A (ja) * 2004-07-28 2006-02-09 Renesas Technology Corp アクセス制御装置
JP2008033896A (ja) * 2006-07-04 2008-02-14 Canon Inc バスシステム
JP5106630B2 (ja) * 2008-06-06 2012-12-26 三菱電機株式会社 バス調停装置
JP2012168773A (ja) * 2011-02-15 2012-09-06 Renesas Electronics Corp バスシステムおよびアクセス制御方法

Similar Documents

Publication Publication Date Title
EP1899828B1 (en) Device and method for arbitrating between direct memory access task requests
US5129090A (en) System bus preempt for 80386 when running in an 80386/82385 microcomputer system with arbitration
EP1899826B1 (en) Device and method for controlling an execution of a dma task
US6073199A (en) History-based bus arbitration with hidden re-arbitration during wait cycles
EP1899825B1 (en) Device and method for controlling multiple dma tasks
JPH02219156A (ja) アクセス優先順位決定装置およびバス・アービタ
JP2000040061A (ja) バス使用権調停システム
US20050060455A1 (en) Arbiter having programmable arbitration points for undefined length burst accesses and method
EP1899827B1 (en) Device and method for executing a dma task
JPH0696014A (ja) バス使用優先順位制御装置
US6889283B2 (en) Method and system to promote arbitration priority in a buffer queue
JPH01131943A (ja) バスエラー処理システム
WO2007088426A1 (en) Device and method for accessing dynamic memory units
JP4151362B2 (ja) バス調停方式、データ転送装置、及びバス調停方法
JPS62154045A (ja) バス調停方式
US6167478A (en) Pipelined arbitration system and method
JP3124544B2 (ja) バス制御装置
JPH08137785A (ja) Dma制御装置
JP2001117860A (ja) メモリアクセス優先順位切替制御装置
JP2005339107A (ja) パフォーマンス・モニタ回路
JPH1125035A (ja) バス調停装置
JP2000259556A (ja) バス調停装置
JP2000259548A (ja) Dmaバス転送方式
JPH0991247A (ja) バス調停装置
JP2002366511A (ja) バス調停回路