JP4151362B2 - Bus arbitration method, data transfer device, and bus arbitration method - Google Patents
Bus arbitration method, data transfer device, and bus arbitration method Download PDFInfo
- Publication number
- JP4151362B2 JP4151362B2 JP2002281215A JP2002281215A JP4151362B2 JP 4151362 B2 JP4151362 B2 JP 4151362B2 JP 2002281215 A JP2002281215 A JP 2002281215A JP 2002281215 A JP2002281215 A JP 2002281215A JP 4151362 B2 JP4151362 B2 JP 4151362B2
- Authority
- JP
- Japan
- Prior art keywords
- bus
- value
- priority
- channel
- counter
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Bus Control (AREA)
Description
【0001】
【発明の属する技術分野】
本発明はバス調停方式及びデータ転送装置に関し、特にバスに接続する各装置の特性に応じて優先度に関する固有値を与えてバスを効率的に調停する技術に関する。
【0002】
【従来の技術】
従来大型の情報処理装置から携帯型の情報処理装置にいたる情報処理装置や通信制御装置等を含むデータ転送装置に実装されるバスの調停においては、調停の対象となるバスを使用するバス使用装置(例えばチャネル装置)のバス要求が競合した場合予め決められた基準に従ってバスの使用を許可するバス使用装置を決定している。
【0003】
ラウンドロビン方式のように特定のバス使用装置が有利にならないようにバスの優先順位をバスの獲得実績に従って動的に変更し各バス使用装置が平均的にバスを獲得できるようにする方法や、バス使用装置が例えば異なる入出力装置や通信装置を制御するチャネル装置のようにそれぞれバスに要求される処理時間が異なるような場合は各バス使用装置に固定的に優先順位を与える方法が知られている。
【0004】
例えば、特開平11−65993号公報では、バス使用装置毎に優先順位を割り振っておき、複数のバス使用装置のバス要求が競合した場合この優先順位に従ってバスの使用許可を与えるバス使用装置を決定しているが、この公報では同じ特性を有するプロセッサ間での調停に関するものであり、バスの使用時間や待ち時間の制限等にそれぞれ異なった特性・条件を有する入出力装置やチャネル装置のような装置に対してそれぞれの特性を配慮した調停はされていない。
【0005】
【特許文献1】
特開平11−65993号公報
【0006】
【発明が解決しようとする課題】
このように、従来のバス調停の技術においては、バス使用装置の持つ特性や動作内容に基づいた条件に考慮してバス調停をしていなかったため、各バス使用装置の特性を配慮した効率的な調停が実行されていなかった。特に、入出力装置を制御するバス使用装置のように入出力装置の使用に応じて動作速度、バスの使用時間、待ち時間の条件等がそれぞれ異なるバス使用装置で構成されたバスでは効率のよい調停技術が無かった。
【0007】
例えば、優先順位を固定にすると、優先度の低いバス使用装置では待ち時間を超過することによりオーバーランやアンダーランが発生しやすくなり、優先度を均一にすると高速のデータ転送を必要とするバス使用装置ではバス使用時間の長いのバス使用装置が連続してバスを使用すると長時間バスの使用を待たされシステム全体の性能が悪化するといった問題があった。
【0008】
本発明の目的は、優先度の低いチャネル装置のオーバーランやアンダーランの発生を防止し、バス使用を効率的に使用可能としたバス調停方式及びデータ転送装置を提供することにある。
【0009】
【課題を解決するための手段】
本発明の第1のバス調停方式は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するバス使用装置と、それぞれのバス使用装置からバス使用要求とバス優先値とを受けてバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
バス使用装置に設定されたバスの優先度の基本値とカウンタの値とを加算してバス優先値を生成することを特徴とする。
【0010】
本発明の第2のバス調停方式は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するバス使用装置と、それぞれのバス使用装置からバス使用要求とバス優先値とを受けてバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有し、
前記優先値生成部は、バス使用装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、基本値レジスタの値とカウンタの値とを加算してバス優先値を生成する加算器とを有することを特徴とする。
【0011】
本発明の第3のバス調停方式は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するバス使用装置と、それぞれのバス使用装置からバス使用要求とバス優先値とを受けてバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とバス使用装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がバス使用装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とする。
【0012】
本発明の第4のバス調停方式は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するバス使用装置と、それぞれのバス使用装置からバス使用要求とバス優先値とを受けてバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有し、
前記優先値生成部は、バス使用装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、バス使用装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とする。
【0013】
本発明の第5のバス調停方式は、バスに接続してデータを転送するバス使用装置と、バス使用装置のバス優先値を生成する優先値生成部をバス使用装置に対応して有するとともにそれぞれのバス使用装置からバス使用要求を受けるとバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有するバス制御装置とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
バス使用装置に設定されたバスの優先度の基本値とカウンタの値とを加算してバス優先値を生成することを特徴とする。
【0014】
本発明の第6のバス調停方式は、バスに接続してデータを転送するバス使用装置と、バス使用装置のバス優先値を生成する優先値生成部をバス使用装置に対応して有するとともにそれぞれのバス使用装置からバス使用要求を受けるとバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有するバス制御装置とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とバス使用装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がバス使用装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とする。
【0015】
本発明の第7のバス調停方式は、バスに接続してデータを転送するバス使用装置と、バス使用装置のバス優先値を生成する優先値生成部をバス使用装置に対応して有するとともにそれぞれのバス使用装置からバス使用要求を受けるとバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有するバス制御装置とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とバス使用装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がバス使用装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とする。
【0016】
本発明の第8のバス調停方式は、バスに接続してデータを転送するバス使用装置と、バス使用装置のバス優先値を生成する優先値生成部をバス使用装置に対応して有するとともにそれぞれのバス使用装置からバス使用要求を受けるとバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有するバス制御装置とを有し、
前記優先値生成部は、バス使用装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、バス使用装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とする。
【0017】
本発明の第1のデータ転送装置は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するチャネル装置と、それぞれのチャネル装置からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部を有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置と有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
チャネル装置に設定されたバスの優先度の基本値とカウンタの値とを加算してバス優先値を生成することを特徴とする。
【0018】
本発明の第2のデータ転送装置は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するチャネル装置と、それぞれのチャネル装置からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部を有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置と有するデータ転送装置であって、
前記優先値生成部は、チャネル装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、基本値レジスタの値とカウンタの値とを加算してバス優先値を生成する加算器とを有することを特徴とする。
【0019】
本発明の第3のデータ転送装置は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するチャネル装置と、それぞれのチャネル装置からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部を有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置と有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とチャネル装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がチャネル装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とする。
【0020】
本発明の第4のデータ転送装置は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するチャネル装置と、それぞれのチャネル装置からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部を有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置と有するデータ転送装置であって、
前記優先値生成部は、チャネル装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、チャネル装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とする。
【0021】
本発明の第5のデータ転送装置は、バスに接続してデータを転送するチャネル装置と、チャネル装置のバス優先値を生成する優先値生成部をチャネル装置に対応して有するとともにそれぞれのチャネル装置からバス使用要求を受けるとバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部とを有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置とを有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
チャネル装置に設定されたバスの優先度の基本値とカウンタの値とを加算してバス優先値を生成することを特徴とする。
【0022】
本発明の第6のデータ転送装置は、バスに接続してデータを転送するチャネル装置と、チャネル装置のバス優先値を生成する優先値生成部をチャネル装置に対応して有するとともにそれぞれのチャネル装置からバス使用要求を受けるとバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部とを有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置とを有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とチャネル装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がチャネル装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とする。
【0023】
本発明の第7のデータ転送装置は、バスに接続してデータを転送するチャネル装置と、チャネル装置のバス優先値を生成する優先値生成部をチャネル装置に対応して有するとともにそれぞれのチャネル装置からバス使用要求を受けるとバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部とを有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置とを有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とチャネル装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がチャネル装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とする。
【0024】
本発明の第8のデータ転送装置は、バスに接続してデータを転送するチャネル装置と、チャネル装置のバス優先値を生成する優先値生成部をチャネル装置に対応して有するとともにそれぞれのチャネル装置からバス使用要求を受けるとバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部とを有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置とを有するデータ転送装置であって、
前記優先値生成部は、チャネル装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、チャネル装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とする。
【0025】
【発明の実施の形態】
次に、本発明の第1の実施の形態について図面を参照して詳細に説明する。図1は本発明の第1の実施の形態の構成を示したブロック図である。図1を参照すれば、本発明のバス調停方式又はデータ転送装置は、チャネル制御装置10と、複数のバス使用装置であるチャネル装置20(図では20−1〜20−3の3つを記載)とを有し、バスX30で接続されデータ転送を実行する。チャネル制御装置10は主記憶装置38とCPU39(中央処理装置)39と接続する。
【0026】
また、チャネル制御装置10と各チャネル装置20との間はそれぞれ制御信号X31、X33、X35にて接続され、制御信号X31、X33、X35はそれぞれチャネル装置20からチャネル制御装置10に対してバス使用要求を行うバス要求信号とチャネル制御装置10からチャネル装置20へバス要求に対してバス使用を許可する使用許可信号とを含んでいる。X32、X34、X36はそれぞれのチャネル装置20のバス優先度の重み値をチャネル制御装置10へ伝えるバス優先値信号である。
【0027】
チャネル制御装置10は、チャネル装置20と主記憶装置38或いはCPU39との間のデータ転送を実行するデータ転送部12と、バスX40の調停を制御する優先順位判定部11とを有する。優先順位制御部11は、複数のチャネル装置20からバス要求が競合した場合、バス優先値信号X32、X34、X36を比較して一番大きなバス優先値を持つチャネル装置20にバス使用許可を与え、バス使用許可信号で通知する。
【0028】
チャネル装置20はバスX30に複数接続し、図1ではチャネル装置20−1とチャネル装置20−2とチャネル装置20−3の3つが接続した場合を示しているが接続数を限定するものではない。各チャネル装置20はバス接続部27と優先値生成部26とを有し、優先値生成部26は基本値レジスタ21と、許容値レジスタ22と、カウンタ23と、比較器24と、加算器25とを有している。チャネル装置20の内部の説明についてチャネル装置20−1を代表として説明する。
【0029】
バス接続部27は、バスX30と接続してデータの送受信を行い、バスの使用権について信号X31により制御する。例えば、主記憶装置38からデータの読み出しを実行する場合は、まずバス使用要求信号をX31で送り、チャネル制御装置10にて調停が行われバスの使用権を獲得した場合はバス使用許可信号をX31で受けてバスX30に主記憶の読み出し要求とアドレスを送出し、主記憶装置38からの読み出しデータの到着を知らせる信号をX31で受けるとともにデータを受け取る。
【0030】
基本値レジスタ21は、チャネル装置20に与えられた優先順位を数値化した基本値を保持するレジスタであり、基本値は大きいほど優先される。また、基本値はチャネル装置20が制御する入出力装置や通信装置の特性に応じて決めるべきものであり、例えば、キーボードのような入力装置は優先順位を高くする必要はないし、磁気ディスク装置のように高速なアクセスが求められる装置は優先順位を高くする必要があり、通信装置は通信速度を満足する程度の優先順位が必要となるので、システム構成や運用条件により決めるべきものであるが、ここでは決め方については限定しない。
【0031】
許容値レジスタ22は、チャネル装置20のバス要求の待ち時間の許容値を保持するレジスタである。待ち時間の許容値はチャネル装置20の配下の装置の動作において動作を正常に実行するための処理時間に対してバス使用待ち時間の最大値或いは最大値に余裕を持たせた最大値に近い値である。従ってバス使用待ち時間が許容値以上となった場合は最優先にてバス使用許可を得る必要がある。
【0032】
カウンタ23は、バス使用要求信号の発行によって起動され一定時間毎にカウントアップするカウンタであり、バス使用許可信号を受信するとリセットされる。比較器24は、許容値レジスタ22とカウンタ23とを比較しカウンタ23の値が許容値レジスタ22の値以上となった場合加算器25に固定値(ここでは“100”とするが値を制限するものではない)を加算するよう指示する。
【0033】
加算器25は、基本値レジスタ21の値とカウンタ23の値とを加算し、さらに比較器24から指示があった場合固定値“100”を加算してバス優先値を作成し、バス優先値信号として信号線X32を介してチャネル制御装置10へ送る。
【0034】
次に、本発明の第1の実施の形態の動作について図面を参照して説明する。まず、図2のフローチャートを参照してチャネル装置20のバス優先値を生成する優先値生成部26の内部の動作について説明し、次に具体的な状態における動作を図3を参照して説明する。
【0035】
まず、チャネル装置20のバス接続部27が主記憶装置38或いはCPU39とのデータ転送のためにバス使用要求を信号線X31に出力すると(S81)、バス接続部27はカウンタ23に対してカウント動作の開始を指示する(S82)。カウンタ23はカウント有効の指示を受けると一定時間毎にカウンタ23の内容に“1”を加算する。なお、カウンタ23のカウント周期は各チャネル装置20で同じでもいいし異なるように設定してもよい。基本値と許容値との関係でより効率のよい設定をすることができる。
【0036】
バス使用許可信号を受信するまでの間は(S83)、カウンタ23の値が許容値レジスタ22の値以上となるかを比較器24が監視し(S84)、カウンタ23の値が許容値レジスタ22未満の場合は加算器25は基本値レジスタ21の値とカウンタ23の値を加算してバス優先値を生成する。カウンタ23の値が許容値レジスタ22の値と同じ又は大きくなると比較器24は加算器25へ指示し、加算器25は指示を受けると基本値レジスタ21の値とカウンタ23の値に加えてさらに固定値“100”を加算してバス優先値を生成する。
【0037】
チャネル制御装置10からバス使用許可信号を受信すると(S83)、バス接続部27はカウンタ23に対してリセットを指示する(S86)。カウンタ23はリセット指示を受けると内容を“0”にリセットし、カウント動作を停止する。これ以降新たなバス使用要求を発行するまでの間はカウンタ23は“0”のままである。このようにバス優先値が各チャネル装置20で生成され、各チャネル装置20からチャネル制御装置10のデータ転送部12へバス優先値信号として出力される。
【0038】
次に、バス調停の動作を具体的な状態について説明する。図3は(1)から(4)までの4つの具体的な状態における、チャネル装置20−1からチャネル装置20−3のそれぞれの状態を表で示している。チャネル装置20−1は基本値=“40”、許容値=“30”が設定され、チャネル装置20−2は基本値=“25”、許容値=“50”が設定され、チャネル装置20−3は基本値=“10”、許容値=“100”が設定されているものとする。
【0039】
まず図3(1)は、バス使用要求がどのチャネル装置20からも出力されていない状態を示したものである。この状態では各チャネル装置20のカウンタ23の値は“0”なのでバス優先値=基本値となっており、チャネル装置20−1がバス優先値=“40”で最も優先順位が高く、次いでバス優先値=“25”のチャネル装置20−2が優先順位が高く、バス優先値=“15”のチャネル装置20−3が一番低い優先順位となっている。
【0040】
従って、この状態で各チャネル装置20から同時にバス使用要求が出力されると、優先順位判定部11はバス優先値の一番大きいチャネル装置20−1にバス使用許可を与えるよう調停する。この場合、バス使用許可を獲得できなかったチャネル装置20−2とチャネル装置20−2とはバス使用許可が得られるまでそれぞれのカウンタ23のカウントを開始し、カウントに伴ってそれぞれのバス優先値が大きくなり待ち時間に応じてバス優先値が大きくなるので、時間の経過とともにバスを獲得しやすいようになっていく。
【0041】
次に、図3(2)はチャネル装置20−3がバス要求を出力した状態で待ち続けカウンタ23の値が“10”になった際に、チャネル装置20−1のバス使用要求と競合した状態を示している。この時、チャネル装置20−3のバス優先値は基本値“10”+カウンタ23の値“10”=“20”となっておりチャネル装置20−1のバス優先値“40”より小さいため、チャネル装置20−1にバス使用権が与えられる。このように、バスが込み合った場合は基本値の小さいチャネル装置20はバス使用権がなかなか獲得できない状態が続くことが起こりうる。図1ではチャネル装置20は3つのみ示しているが多くのチャネル装置20がバスX40に接続し基本値の大きいチャネルの数が多くなるとこの傾向は顕著となる。
【0042】
次に、図3(3)は図3(2)の状態からチャネル装置20−3がバス要求を出力した状態でさらに待ち続けカウンタ23の値が“40”になった際に、チャネル装置20−1のバス使用要求と競合した状態を示している。この場合はバス優先値はチャネル装置20−3の方が“50”となりチャネル装置20−1よい大きいのでチャネル装置20−3にバス使用権が与えられる。このように、チャネル装置20−3は基本値が小さくても待ち続けることによりバス優先値が加算されて大きくなり基本値の大きなチャネル装置20と競合してもバス使用権を獲得できるようになる。
【0043】
次に、図3(4)はチャネル装置20−2とチャネル装置20−3がともにバス使用権を獲得できずに待たされチャネル装置20−2のカウンタ23の値が許容値になった状態を示している。この場合、チャネル装置20−2とチャネル装置20−3の基本値とカウンタ23の値との和はそれぞれ“75”と“80”であり、このままではチャネル装置20−3の方が優先順位が高くなるが、チャネル装置20−2はすでにバス待ち時間の限界になっておりこれ以上待たされるとチャネル装置20−2の処理が正常に終わらない可能性が大きくなる。従って、チャネル装置20−2の優先順位を上げる必要があり、この機能を比較器24によって実行する。比較器24はカウンタ23の値=許容値を検出し加算器25に固定値“100”を加算するように指示するので、チャネル装置20−2のバス優先値は“175”となりバスの使用権を獲得できる。
【0044】
以上説明したように、本発明第1の実施の形態の構成では、各チャネル装置20の特性に応じて基本値を割り振ったのでバスの調停を効率よく実行でき、基本値の低いチャネル装置20は待ち時間に応じて優先度を上げるようにしたので待ち時間に応じてバスを獲得できるようになり、さらにバスの待ち時間の許容値を設定し待ち時間すなわちカウンタ23の値が許容値に達すると優先度を大幅に上げて優先的にバスの使用権を与えるようにしたので優先度の低いチャネル装置20でもオーバーランやアンダーランを起こしにくくすることができる。
【0045】
次に、本発明の第2の実施の形態について図面を参照して説明する。図4は本発明の第2の実施の形態のバス調停方式又はデータ転送装置の構成を示す図である。第1の実施の形態では各チャネル装置20にて優先値生成部26を有していたのに対して、第2の実施の形態は優先値生成部26をチャネル制御装置10内に設けて、各チャネル装置20とチャネル制御装置10間の信号線数を減らした点に特徴がある。
【0046】
図4を参照すると、本発明の第2の実施の形態のバス調停方式又はデータ転送装置の構成は、チャネル制御装置40とチャネル装置50−1、チャネル装置50−2とチャネル装置50−3とを有し、これらをバスX70で接続する。また、チャネル制御装置40は、第1の実施の形態のチャネル制御装置10と同様に主記憶装置38,CPU39と接続し、各チャネル装置50と主記憶装置38又はCPU39との間のデータ転送を制御する。
【0047】
チャネル装置50は図4では3つ示しているが接続数は特に限定しない。チャネル装置50はバス接続部57と、チャネル装置50に設定された基本値を保持する元基本値レジスタ51と、チャネル装置50に設定された許容値保持する元許容値レジスタ52とを有し、バス接続部57は図1のバス接続部27に対応し、バス接続部27の機能に加えてチャネル制御装置40からに要求に応じて元基本値レジスタ51と元許容値レジスタ52の値を読み出して返送する機能を含んでいる。なお、元基本値レジスタ51と元許容値レジスタ52はチャネル装置50のメモリ手段等に設けてもよい。
【0048】
チャネル制御装置40は優先順位判定部41と、データ転送部42と、優先値生成部43−1と、優先値生成部43−2と、優先値生成部43−3と、初期設定部46を有している。優先値生成部43、優先値生成部43−2、優先値生成部43−3はそれぞれチャネル装置50−1、チャネル装置50−2、チャネル装置50−3に対応したバス優先値を生成し、内部の構成は図1の優先値生成部26と同じであり図1の各構成要素と同じ番号を付けているので説明は省略する。ただし、基本値レジスタ21と許容値レジスタ22は初期設定部46に従って値がセットされる。
【0049】
優先順位判定部41とデータ転送部42とはそれぞれ図1の優先順位判定部11とデータ転送部12に対応し同じ機能を有する。ただし、データ転送部42はバスX70から読み出したデータ(基本値と許容値)を優先値生成部43、優先値生成部43−2、優先値生成部43−3に供給する機能を有する。
【0050】
初期設定部46はシステムの初期化時又はチャネル装置50のシステム組み込みの際にチャネル装置50の元基本値レジスタ51と元許容値レジスタ52からそれぞれ基本値と許容値とをデータ転送部42とバスX70とバス接続部57を介して読み出し、読み出した値をそれぞれ基本値レジスタ21と許容値レジスタ22へ設定する。
【0051】
図4の構成では、図1の各チャネル装置20の優先値生成部26をチャネル制御装置40にまとめて実装しているので、バス優先値の信号線X32、X34、X36に相当する信号は不要となり、チャネル制御装置40と各チャネル装置50との間の信号線数が少なくなっている。信号線X71、X72、X73は図1の信号線X31、X33、X35に相当し、それぞれバス使用要求信号やバス使用許可信号を含んでいる。
【0052】
次に本発明の第2の実施の形態の動作について説明する。まず、図4に示すシステムの初期化の際に初期設定部46が動作し、バスX70に接続するチャネル装置50−1〜チャネル装置50−3に対してそれぞれの基本値と許容値とを読み出してそれぞれ対応する優先値生成部43−1〜優先値生成部43−3の基本値レジスタ21と許容値レジスタ22にセットする。なお、システム動作中にチャネル装置50を組み込む場合は、初期設定部46が同様に動作して組み込まれるチャネル装置50の基本値と許容値とをセットする。
【0053】
この後の優先値生成部43の動作は図2に示すフローチャートのように動作し、優先順位判定部41はチャネル装置50からのバス使用要求が競合した場合は、対応する優先値生成部43の優先値を比較して一番値の大きなチャネル装置50へバス使用許可信号を通知しバスの使用権を与える。このように初期化の処理を除くとバスの調停動作や優先値の生成の動作は第1の実施の形態と同様に動作するので詳細な説明は省略する。
【0054】
このように、第2の実施の形態の構成では第1の実施の形態と同様に優先度の低いチャネル装置でもオーバーランを抑えた効率のよい調停を可能とするとともに、優先値生成部43をチャネル制御装置40に集中して実装したので各チャネル装置50とチャネル制御装置40との間の信号線数を減らし遅延時間の少ない調停を可能とする。なお、図4ではチャネル装置50を3つ接続する構成を示したが、接続するチャネル装置50の数の最大値に応じて優先値生成部43をチャネル制御装置40に実装することにより論理的には多数のチャネル装置50に対応することが可能である。
【0055】
これに対して第1の実施例の構成では優先値生成部26を各チャネル装置20に実装しているので、第2の実施の形態のようにチャネル装置50の接続数に関わらず最大接続数の優先値生成部43を実装する必要が無く無駄な回路が省けるという特徴がある。従ってシステムの構成の特性に応じていずれかを選択することができる。
【0056】
以上第1又は第2の実施の形態の説明では、複数のチャネル装置間でバス使用要求が競合した場合に、優先値が等しくなった場合の動作について説明を省略したが、第1の実施の形態の場合は例えばチャネル装置の番号のように予め決められた情報に基づいて決める方法があり、第2の実施の形態ではさらに基本値の大きさによって決める方法もある。さらに、優先値が一致した場合にラウンドロビンのような方法を適用する方法もあるが特に制限しない。
【0057】
【発明の効果】
優先度の低いチャネル装置のオーバーランやアンダーランの発生を防止し、バス使用を効率的にした効率のよいバス調停を可能とする効果がある。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態の構成を示す図である。
【図2】本発明の第1の実施の形態の動作を示すフローチャートである。
【図3】本発明の第1の実施の形態の競合状態の例を示す表である。
【図4】本発明の第2の実施の形態の構成を示す図である。
【符号の説明】
10 チャネル制御装置
11 優先順位判定部
12 データ転送部
20 チャネル装置
21 基本値レジスタ
22 許容値レジスタ
23 カウンタ
24 比較器
25 加算器
26 優先値生成部
27 バス接続部
38 主記憶装置
39 CPU
40 チャネル制御装置
41 優先順位判定部
42 データ転送部
43 優先値生成部
51 元基本値レジスタ
52 元許容値レジスタ
57 バス接続部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a bus arbitration method and a data transfer device, and more particularly, to a technique for efficiently arbitrating a bus by giving a specific value related to priority according to the characteristics of each device connected to the bus.
[0002]
[Prior art]
Conventionally, in arbitration of a bus mounted on a data transfer device including an information processing device and a communication control device from a large information processing device to a portable information processing device, a bus using device that uses the bus subject to arbitration When the bus requests of the channel devices (for example, channel devices) compete, the bus using device that permits the use of the bus is determined according to a predetermined criterion.
[0003]
A method of dynamically changing the priority of the bus according to the acquisition result of the bus so that a specific bus using device is not advantageous like the round robin method so that each bus using device can acquire the bus on average, There is known a method for giving priority to each bus using device when the bus using device has different processing time required for each bus such as a channel device for controlling different input / output devices and communication devices. ing.
[0004]
For example, in Japanese Patent Application Laid-Open No. 11-65993, priorities are assigned to each bus using device, and when bus requests of a plurality of bus using devices compete, a bus using device that gives permission to use the bus is determined according to this priority. However, this publication relates to arbitration between processors having the same characteristics, such as I / O devices and channel devices having different characteristics and conditions, such as restrictions on bus use time and waiting time. There is no arbitration for each device considering its characteristics.
[0005]
[Patent Document 1]
JP-A-11-65993
[0006]
[Problems to be solved by the invention]
As described above, in the conventional bus arbitration technology, the bus arbitration is not performed in consideration of the conditions based on the characteristics and operation contents of the bus using device. Mediation was not performed. In particular, it is efficient for buses configured with different bus use devices such as operating speed, bus use time, waiting time conditions, etc. according to the use of the input / output device, such as a bus use device that controls the input / output device. There was no mediation technology.
[0007]
For example, if the priority is fixed, a low-priority bus using device tends to cause overruns and underruns by exceeding the waiting time. If the priorities are uniform, a bus that requires high-speed data transfer There is a problem in that if the bus using device having a long bus use time continuously uses the bus, the use of the device waits for a long time to use the bus and the performance of the entire system deteriorates.
[0008]
An object of the present invention is to provide a bus arbitration method and a data transfer device that can prevent overrun and underrun of a channel device having a low priority and can efficiently use the bus.
[0009]
[Means for Solving the Problems]
The first bus arbitration method of the present invention includes a bus use device having a priority value generation unit that connects to a bus to transfer data and generates a bus priority value, and a bus use request and a bus from each bus use device. A priority determination unit that receives the priority value and gives the bus use permission to the bus using device having the largest bus priority value,
The priority value generation unit has a counter that counts up at a constant period from when the bus use device issues a bus use request until it receives permission to use the bus,
The bus priority value is generated by adding the basic value of the priority of the bus set to the bus using device and the value of the counter.
[0010]
According to a second bus arbitration system of the present invention, a bus use device having a priority value generation unit that connects to a bus to transfer data and generates a bus priority value, and a bus use request and a bus from each bus use device. A priority determination unit that receives the priority value and gives the bus use permission to the bus using device having the largest bus priority value,
The priority value generation unit includes a basic value register that holds a basic value of a priority of a bus set in a bus using device, and a period from when the bus using device issues a bus use request until a bus use permission is received. The counter includes a counter that counts up at a constant period, and an adder that generates a bus priority value by adding the value of the basic value register and the value of the counter.
[0011]
The third bus arbitration system of the present invention includes a bus use device having a priority value generating unit that connects to a bus to transfer data and generates a bus priority value, and a bus use request and a bus from each bus use device. A priority determination unit that receives the priority value and gives the bus use permission to the bus using device having the largest bus priority value,
The priority value generation unit has a counter that counts up at a constant period from when the bus use device issues a bus use request until it receives permission to use the bus,
The counter value and the basic value of the bus priority set for the bus using device are added. If the counter value exceeds the allowable bus waiting time set for the bus using device, the addition result is further fixed. The bus priority value is generated by adding the values.
[0012]
According to a fourth bus arbitration system of the present invention, a bus using device having a priority value generating unit that transfers data by connecting to a bus and generates a bus priority value, and a bus use request and a bus from each bus using device. A priority determination unit that receives the priority value and gives the bus use permission to the bus using device having the largest bus priority value,
The priority value generation unit includes a basic value register that holds a basic value of a bus priority set in a bus using device, and an allowable value register that holds an allowable value of a bus waiting time set in the bus using device. A counter that counts up in a certain period from when the bus using device issues a bus use request until it receives the bus use permission, and when the counter value exceeds the value in the allowable value register, instructs to add a fixed value It has a comparator, and an adder for adding a fixed value when there is an instruction to add a fixed value and a value in a basic value register and a counter, and generating a bus priority value.
[0013]
The fifth bus arbitration system of the present invention has a bus use device that transfers data by connecting to a bus, and a priority value generation unit that generates a bus priority value of the bus use device corresponding to the bus use device, respectively. A bus control device having a priority determination unit that gives a bus use permission to a bus use device having a maximum bus priority value when a bus use request is received from the bus use device of
The priority value generation unit has a counter that counts up at a constant period from when the bus use device issues a bus use request until it receives permission to use the bus,
The bus priority value is generated by adding the basic value of the priority of the bus set to the bus using device and the value of the counter.
[0014]
The sixth bus arbitration system of the present invention has a bus use device that connects to the bus and transfers data, and a priority value generation unit that generates a bus priority value of the bus use device corresponding to the bus use device, respectively. A bus control device having a priority determination unit that gives a bus use permission to a bus use device having a maximum bus priority value when a bus use request is received from the bus use device of
The priority value generation unit has a counter that counts up at a constant period from when the bus use device issues a bus use request until it receives permission to use the bus,
The counter value and the basic value of the bus priority set for the bus using device are added. If the counter value exceeds the allowable bus waiting time set for the bus using device, the addition result is further fixed. The bus priority value is generated by adding the values.
[0015]
The seventh bus arbitration system of the present invention has a bus using device that transfers data by connecting to the bus, and a priority value generating unit that generates a bus priority value of the bus using device corresponding to the bus using device, respectively. A bus control device having a priority determination unit that gives a bus use permission to a bus use device having a maximum bus priority value when a bus use request is received from the bus use device of
The priority value generation unit has a counter that counts up at a constant period from when the bus use device issues a bus use request until it receives permission to use the bus,
The counter value and the basic value of the bus priority set for the bus using device are added. If the counter value exceeds the allowable bus waiting time set for the bus using device, the addition result is further fixed. The bus priority value is generated by adding the values.
[0016]
The eighth bus arbitration system of the present invention has a bus using device that transfers data by connecting to a bus, and a priority value generating unit that generates a bus priority value of the bus using device corresponding to the bus using device, respectively. A bus control device having a priority determination unit that gives a bus use permission to a bus use device having a maximum bus priority value when a bus use request is received from the bus use device of
The priority value generation unit includes a basic value register that holds a basic value of a bus priority set in a bus using device, and an allowable value register that holds an allowable value of a bus waiting time set in the bus using device. A counter that counts up in a certain period from when the bus using device issues a bus use request until it receives the bus use permission, and when the counter value exceeds the value in the allowable value register, instructs to add a fixed value It has a comparator, and an adder for adding a fixed value when there is an instruction to add a fixed value and a value in a basic value register and a counter, and generating a bus priority value.
[0017]
A first data transfer device according to the present invention includes a channel device having a priority value generation unit for transferring data while being connected to a bus and generating a bus priority value, a bus use request and a bus priority value from each channel device. Control device for controlling data transfer between a channel device and a main storage device for storing programs and data, having a priority determination unit for giving permission to use the bus to the channel device having the largest bus priority value A data transfer device having
The priority value generation unit has a counter that counts up at a constant period from when the channel device issues a bus use request until receiving a bus use permission,
The bus priority value is generated by adding the basic value of the priority of the bus set in the channel device and the value of the counter.
[0018]
A second data transfer device according to the present invention includes a channel device having a priority value generation unit for transferring data while being connected to a bus and generating a bus priority value, a bus use request and a bus priority value from each channel device. Control device for controlling data transfer between a channel device and a main storage device for storing programs and data, having a priority determination unit for giving permission to use the bus to the channel device having the largest bus priority value A data transfer device having
The priority value generation unit includes a basic value register that holds a basic value of a priority of a bus set in a channel device, and a fixed period from when the channel device issues a bus use request until the bus use is permitted. And a counter that counts up in (1) and an adder that adds the value of the basic value register and the value of the counter to generate a bus priority value.
[0019]
A third data transfer device according to the present invention includes a channel device having a priority value generation unit that transfers data by connecting to a bus and generates a bus priority value, and a bus use request and a bus priority value from each channel device. Control device for controlling data transfer between a channel device and a main storage device for storing programs and data, having a priority determination unit for giving permission to use the bus to the channel device having the largest bus priority value A data transfer device having
The priority value generation unit has a counter that counts up at a constant period from when the channel device issues a bus use request until receiving a bus use permission,
The counter value and the basic priority value of the bus priority set in the channel device are added. When the counter value exceeds the allowable value of the bus waiting time set in the channel device, a fixed value is further added to the addition result. A bus priority value is generated by addition.
[0020]
A fourth data transfer device according to the present invention includes a channel device having a priority value generation unit for transferring data while being connected to a bus and generating a bus priority value, a bus use request and a bus priority value from each channel device. Control device for controlling data transfer between a channel device and a main storage device for storing programs and data, having a priority determination unit for giving permission to use the bus to the channel device having the largest bus priority value A data transfer device having
The priority value generation unit includes a basic value register that holds a basic value of a priority of a bus set in a channel device, an allowable value register that holds an allowable value of a bus waiting time set in the channel device, and a channel A counter that counts up in a certain period from when the device issues a bus use request until it receives a bus use permission, and a comparator that gives an instruction to add a fixed value when the counter value exceeds the value in the tolerance register And an adder for adding a fixed value and generating a bus priority value when there is an instruction to add a fixed value and a value of a basic value register and a counter.
[0021]
A fifth data transfer device according to the present invention has a channel device connected to a bus for transferring data, and a priority value generation unit for generating a bus priority value of the channel device corresponding to the channel device, and each channel device. Controls data transfer between a channel device and a main storage device that stores programs and data, having a priority determination unit that grants bus use permission to the channel device with the largest bus priority value when a bus use request is received from A data transfer device having a channel control device,
The priority value generation unit has a counter that counts up at a constant period from when the channel device issues a bus use request until receiving a bus use permission,
The bus priority value is generated by adding the basic value of the priority of the bus set in the channel device and the value of the counter.
[0022]
According to a sixth data transfer device of the present invention, each channel device has a channel device connected to the bus for transferring data, and a priority value generating unit for generating a bus priority value of the channel device corresponding to the channel device. Controls data transfer between a channel device and a main storage device that stores programs and data, having a priority determination unit that grants bus use permission to the channel device with the largest bus priority value when a bus use request is received from A data transfer device having a channel control device,
The priority value generation unit has a counter that counts up at a constant period from when the channel device issues a bus use request until receiving a bus use permission,
The counter value and the basic priority value of the bus priority set in the channel device are added. When the counter value exceeds the allowable value of the bus waiting time set in the channel device, a fixed value is further added to the addition result. A bus priority value is generated by addition.
[0023]
According to a seventh data transfer device of the present invention, each channel device has a channel device connected to the bus for transferring data, and a priority value generation unit for generating a bus priority value of the channel device corresponding to the channel device. Controls data transfer between a channel device and a main storage device that stores programs and data, having a priority determination unit that grants bus use permission to the channel device with the largest bus priority value when a bus use request is received from A data transfer device having a channel control device,
The priority value generation unit has a counter that counts up at a constant period from when the channel device issues a bus use request until receiving a bus use permission,
The counter value and the basic priority value of the bus priority set in the channel device are added. When the counter value exceeds the allowable value of the bus waiting time set in the channel device, a fixed value is further added to the addition result. A bus priority value is generated by addition.
[0024]
An eighth data transfer device according to the present invention has a channel device connected to a bus for transferring data, and a priority value generation unit for generating a bus priority value of the channel device corresponding to the channel device, and each channel device. Controls data transfer between a channel device and a main storage device that stores programs and data, having a priority determination unit that grants bus use permission to the channel device with the largest bus priority value when a bus use request is received from A data transfer device having a channel control device,
The priority value generation unit includes a basic value register that holds a basic value of a priority of a bus set in a channel device, an allowable value register that holds an allowable value of a bus waiting time set in the channel device, and a channel A counter that counts up in a certain period from when the device issues a bus use request until it receives a bus use permission, and a comparator that gives an instruction to add a fixed value when the counter value exceeds the value in the tolerance register And an adder for adding a fixed value and generating a bus priority value when there is an instruction to add a fixed value and a value of a basic value register and a counter.
[0025]
DETAILED DESCRIPTION OF THE INVENTION
Next, a first embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 is a block diagram showing the configuration of the first embodiment of the present invention. Referring to FIG. 1, the bus arbitration method or data transfer device of the present invention includes a
[0026]
In addition, the
[0027]
The
[0028]
A plurality of
[0029]
The
[0030]
The
[0031]
The
[0032]
The
[0033]
The
[0034]
Next, the operation of the first exemplary embodiment of the present invention will be described with reference to the drawings. First, the internal operation of the priority
[0035]
First, when the
[0036]
Until the bus use permission signal is received (S83), the
[0037]
When a bus use permission signal is received from the channel controller 10 (S83), the
[0038]
Next, a specific state of the bus arbitration operation will be described. FIG. 3 is a table showing the states of the channel devices 20-1 to 20-3 in four specific states (1) to (4). The channel device 20-1 is set with the basic value = “40” and the allowable value = “30”, and the channel device 20-2 is set with the basic value = “25” and the allowable value = “50”. 3, the basic value = “10” and the allowable value = “100” are set.
[0039]
First, FIG. 3 (1) shows a state in which a bus use request is not output from any
[0040]
Accordingly, when a bus use request is simultaneously output from each
[0041]
Next, FIG. 3 (2) shows that the channel device 20-3 has competed with the bus use request of the channel device 20-1 when the value of the
[0042]
Next, FIG. 3 (3) shows the
[0043]
Next, FIG. 3 (4) shows a state in which both the channel device 20-2 and the channel device 20-3 have waited without acquiring the right to use the bus, and the value of the
[0044]
As described above, in the configuration of the first embodiment of the present invention, the basic value is allocated according to the characteristics of each
[0045]
Next, a second embodiment of the present invention will be described with reference to the drawings. FIG. 4 is a diagram showing the configuration of the bus arbitration system or data transfer apparatus according to the second embodiment of the present invention. In the first embodiment, each
[0046]
Referring to FIG. 4, the bus arbitration method or the data transfer device according to the second embodiment of the present invention includes a
[0047]
Although three
[0048]
The
[0049]
The priority determination unit 41 and the
[0050]
The
[0051]
In the configuration of FIG. 4, the priority
[0052]
Next, the operation of the second exemplary embodiment of the present invention will be described. First, when the system shown in FIG. 4 is initialized, the
[0053]
The subsequent operation of the priority value generation unit 43 operates as shown in the flowchart of FIG. 2, and the priority order determination unit 41 determines that the priority value generation unit 43 of the corresponding priority value generation unit 43 responds when a bus use request from the
[0054]
As described above, the configuration of the second embodiment enables efficient arbitration while suppressing overrun even in a channel device having a low priority as in the first embodiment, and the priority value generation unit 43 Since the mounting is concentrated on the
[0055]
On the other hand, in the configuration of the first example, the priority
[0056]
In the above description of the first or second embodiment, the description of the operation when the priority values are equal when a bus use request conflicts between a plurality of channel devices is omitted. In the case of the form, for example, there is a method of determining based on information determined in advance such as a channel device number. In the second embodiment, there is also a method of determining based on the size of the basic value. Furthermore, there is a method of applying a method such as round robin when the priority values match, but there is no particular limitation.
[0057]
【The invention's effect】
This has the effect of preventing the occurrence of overrun and underrun of a channel device having a low priority, and enabling efficient bus arbitration with efficient use of the bus.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a first exemplary embodiment of the present invention.
FIG. 2 is a flowchart showing the operation of the first exemplary embodiment of the present invention.
FIG. 3 is a table showing an example of a race condition according to the first embodiment of this invention.
FIG. 4 is a diagram showing a configuration of a second exemplary embodiment of the present invention.
[Explanation of symbols]
10 channel controller
11 Priority order determination unit
12 Data transfer unit
20 channel equipment
21 Basic value register
22 Tolerance register
23 Counter
24 comparator
25 Adder
26 Priority value generator
27 Bus connection
38 Main memory
39 CPU
40 channel controller
41 Priority order determination unit
42 Data transfer unit
43 Priority value generator
51 yuan basic value register
52 original tolerance register
57 Bus connection
Claims (11)
前記優先値生成部は、バス使用装置毎に設定されたバスの優先度の基本値とバス使用装置に設定されたバスの待ち時間の許容値と予め決められた固定値とを記憶する手段と、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、バス優先値を生成する加算器と、比較器とを有し、
カウンタの値と基本値とを前記加算器で加算し、カウンタの値が許容値以上であることを前記比較器で検出すると、さらに固定値を前記加算器で加算してバス優先値を生成することを特徴とするバス調停方式。A bus use device having a priority value generation unit for transferring data while connecting to a bus and generating a bus priority value, and receiving a bus use request and a bus priority value from each bus use device, the bus priority value is maximum. A priority determination unit that gives permission to use the bus to the bus use device of
The priority value generation unit stores a basic value of the bus priority set for each bus using device, an allowable value of the bus waiting time set for the bus using device, and a predetermined fixed value; A counter that counts up in a certain period from when the bus use device issues a bus use request until it receives a bus use permission, an adder that generates a bus priority value, and a comparator ;
The values and basic values of the counter are added by the adder, when detected by the comparator that the value of the counter is allowable value or more, a further bus priority value by adding a fixed value by the adder A bus arbitration method characterized by generating.
前記優先値生成部は、バス使用装置毎に設定されたバスの優先度の基本値を保持する基本値レジスタと、バス使用装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とするバス調停方式。A bus use device having a priority value generation unit for transferring data while connecting to a bus and generating a bus priority value, and receiving a bus use request and a bus priority value from each bus use device, the bus priority value is maximum. A priority determination unit that gives permission to use the bus to the bus use device of
The priority value generating unit includes a basic value register for holding a basic value of the priority of the bus that is set to the bus use instrumentation 置毎 allowable value with the allowable value of the bus that is set to a bus use device latency A register, a counter that counts up in a certain period from when the bus using device issues a bus use request until it receives the bus use permission, and instructions for adding a fixed value when the counter value exceeds the value in the tolerance register And a comparator for performing a bus priority value by adding the fixed value to the basic value register value, the counter value, and a fixed value when instructed to add the fixed value. Bus arbitration method.
前記優先値生成部は、バス使用装置毎に設定されたバスの優先度の基本値とバス使用装置に設定されたバスの待ち時間の許容値と予め決められた固定値とを記憶する手段と、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、バス優先値を生成する加算器と、比較器とを有し、
カウンタの値と基本値とを前記加算器で加算し、カウンタの値が許容値以上であることを前記比較器で検出すると、さらに固定値を前記加算器で加算してバス優先値を生成することを特徴とするバス調停方式。Corresponding to the bus using device, a bus using device that connects to the bus and transfers data, and a priority value generating unit that generates a bus priority value of the bus using device, and receives a bus use request from each bus using device A bus control device having a priority determination unit that gives a bus use permission to a bus using device having a maximum bus priority value,
The priority value generation unit stores a basic value of the bus priority set for each bus using device, an allowable value of the bus waiting time set for the bus using device, and a predetermined fixed value; A counter that counts up in a certain period from when the bus use device issues a bus use request until it receives a bus use permission, an adder that generates a bus priority value, and a comparator ;
The values and basic values of the counter are added by the adder, when detected by the comparator that the value of the counter is allowable value or more, a further bus priority value by adding a fixed value by the adder A bus arbitration method characterized by generating.
前記優先値生成部は、バス使用装置毎に設定されたバスの優先度の基本値を保持する基本値レジスタと、バス使用装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とするバス調停方式。Corresponding to the bus using device, a bus using device that connects to the bus and transfers data, and a priority value generating unit that generates a bus priority value of the bus using device, and receives a bus use request from each bus using device A bus control device having a priority determination unit that gives a bus use permission to a bus using device having a maximum bus priority value,
The priority value generating unit includes a basic value register for holding a basic value of the priority of the bus that is set to the bus use instrumentation 置毎 allowable value with the allowable value of the bus that is set to a bus use device latency A register, a counter that counts up in a certain period from when the bus using device issues a bus use request until it receives the bus use permission, and instructions for adding a fixed value when the counter value exceeds the value in the tolerance register And a comparator for performing a bus priority value by adding the fixed value to the basic value register value, the counter value, and a fixed value when instructed to add the fixed value. Bus arbitration method.
前記優先値生成部は、チャネル装置毎に設定されたバスの優先度の基本値とチャネル装置に設定されたバスの待ち時間の許容値と予め決められた固定値とを記憶する手段と、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、バス優先値を生成する加算器と、比較器とを有し、
カウンタの値と基本値とを前記加算器で加算し、カウンタの値が許容値以上であることを前記比較器で検出すると、さらに固定値を前記加算器で加算してバス優先値を生成することを特徴とするデータ転送装置。A channel device having a priority value generation unit for transferring data while connecting to a bus and generating a bus priority value, and a channel having the largest bus priority value in response to a bus use request and a bus priority value from each channel device A data transfer device having a priority control unit for giving permission to use a bus to the device and a channel control device for controlling data transfer between the channel device and a main storage device for storing programs and data,
The priority value generation unit stores a basic value of the priority of the bus set for each channel device, an allowable value of the waiting time of the bus set for the channel device, and a predetermined fixed value; A counter that counts up in a certain period from when the device issues a bus use request until it receives a bus use permission, an adder that generates a bus priority value, and a comparator ;
The values and basic values of the counter are added by the adder, when detected by the comparator that the value of the counter is allowable value or more, a further bus priority value by adding a fixed value by the adder A data transfer device that generates the data transfer device.
前記優先値生成部は、チャネル装置毎に設定されたバスの優先度の基本値を保持する基本値レジスタと、チャネル装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とするデータ転送装置。A channel device having a priority value generation unit for transferring data while connecting to a bus and generating a bus priority value, and a channel having the largest bus priority value in response to a bus use request and a bus priority value from each channel device A data transfer device having a priority control unit for giving permission to use a bus to the device and a channel control device for controlling data transfer between the channel device and a main storage device for storing programs and data,
The priority value generating unit includes a basic value register for holding a basic value of the priority of the bus that is set to the channel instrumentation 置毎, a tolerance register for holding the tolerance of the bus that is set to the channel device latency , A counter that counts up in a certain period from when the channel device issues a bus use request until it receives the bus use permission, and a comparison that gives a fixed value addition instruction when the counter value exceeds the value in the tolerance register And a data transfer device comprising: an adder for adding a fixed value to a basic value register value, a counter value, and a fixed value when there is an instruction to add a fixed value; .
前記優先値生成部は、チャネル装置毎に設定されたバスの優先度の基本値とチャネル装置に設定されたバスの待ち時間の許容値と予め決められた固定値とを記憶する手段と、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、バス優先値を生成する加算器と、比較器とを有し、
カウンタの値と基本値とを前記加算器で加算し、カウンタの値が許容値以上であることを前記比較器で検出すると、さらに固定値を前記加算器で加算してバス優先値を生成することを特徴とするデータ転送装置。A channel device connected to the bus for transferring data, and a priority value generation unit for generating a bus priority value of the channel device corresponding to the channel device, and when a bus use request is received from each channel device, the bus priority value is A priority control unit that gives permission to use the bus to the largest channel device, and a channel control device that controls data transfer between the channel device and a main storage device that stores programs and data,
The priority value generation unit stores a basic value of the priority of the bus set for each channel device, an allowable value of the waiting time of the bus set for the channel device, and a predetermined fixed value; A counter that counts up in a certain period from when the device issues a bus use request until it receives a bus use permission, an adder that generates a bus priority value, and a comparator ;
The values and basic values of the counter are added by the adder, when detected by the comparator that the value of the counter is allowable value or more, a further bus priority value by adding a fixed value by the adder A data transfer device that generates the data transfer device.
前記優先値生成部は、チャネル装置毎に設定されたバスの優先度の基本値とチャネル装置に設定されたバスの待ち時間の許容値と予め決められた固定値とを記憶する手段と、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、バス優先値を生成する加算器と、比較器とを有し、
カウンタの値と基本値とを前記加算器で加算し、カウンタの値が許容値以上であることを前記比較器で検出すると、さらに固定値を前記加算器で加算してバス優先値を生成することを特徴とするデータ転送装置。A channel device connected to the bus for transferring data, and a priority value generation unit for generating a bus priority value of the channel device corresponding to the channel device, and when a bus use request is received from each channel device, the bus priority value is A data transfer apparatus having a priority order determination unit that gives permission to use a bus to the largest channel apparatus and a channel control apparatus that controls data transfer between the channel apparatus and a main storage device that stores programs and data There,
The priority value generation unit stores a basic value of the priority of the bus set for each channel device, an allowable value of the waiting time of the bus set for the channel device, and a predetermined fixed value; A counter that counts up in a certain period from when the device issues a bus use request until it receives a bus use permission, an adder that generates a bus priority value, and a comparator ;
The values and basic values of the counter are added by the adder, when detected by the comparator that the value of the counter is allowable value or more, a further bus priority value by adding a fixed value by the adder A data transfer device that generates the data transfer device.
前記優先値生成部は、チャネル装置毎に設定されたバスの優先度の基本値を保持する基本値レジスタと、チャネル装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とするデータ転送装置。A channel device connected to the bus for transferring data, and a priority value generation unit for generating a bus priority value of the channel device corresponding to the channel device, and when a bus use request is received from each channel device, the bus priority value is A data transfer apparatus having a priority order determination unit that gives permission to use a bus to the largest channel apparatus and a channel control apparatus that controls data transfer between the channel apparatus and a main storage device that stores programs and data There,
The priority value generating unit includes a basic value register for holding a basic value of the priority of the bus that is set to the channel instrumentation 置毎, a tolerance register for holding the tolerance of the bus that is set to the channel device latency , A counter that counts up in a certain period from when the channel device issues a bus use request until it receives the bus use permission, and a comparison that gives a fixed value addition instruction when the counter value exceeds the value in the tolerance register And a data transfer device comprising: an adder for adding a fixed value to a basic value register value, a counter value, and a fixed value when there is an instruction to add a fixed value; .
バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間カウンタを一定周期でカウントアップし、カウンタの値とバス使用装置毎に設定されたバスの優先度の基本値とを加算し、カウンタの値がバス使用装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とするバス調停方法。A bus use device having a priority value generation unit for transferring data while connecting to a bus and generating a bus priority value, and receiving a bus use request and a bus priority value from each bus use device, the bus priority value is maximum. a bus arbitration method in an apparatus for chromatic and priority determination unit that the bus use device gives permission to use the bus,
Bus device counts up at a fixed period between counter after issuing a bus use request until it receives permission to use the bus, the basic priority of the bus that is set to the value of the counter and bus instrumentation 置毎 A bus priority value is generated by adding a fixed value to the addition result when the counter value is equal to or greater than the allowable value of the bus waiting time set in the bus using device. Mediation method.
チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間カウンタを一定周期でカウントアップし、カウンタの値とチャネル装置毎に設定されたバスの優先度の基本値とを加算し、カウンタの値がチャネル装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とするバス調停方法。A channel device having a priority value generation unit for transferring data while connecting to a bus and generating a bus priority value, and a channel having the largest bus priority value in response to a bus use request and a bus priority value from each channel device a bus arbitration method in an apparatus for have a channel controller for controlling data transfer between the main storage for storing channel devices and programs and data has a priority determining unit which gives permission to use the bus system And
Channel device counts up at a fixed period between counter after issuing a bus use request until it receives permission to use the bus, and the basic value of the priority of the bus that is set to the value of the counter and the channel instrumentation 置毎 The bus arbitration method is characterized in that a bus priority value is generated by adding a fixed value to the addition result when the counter value is equal to or greater than an allowable value of the bus waiting time set in the channel device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002281215A JP4151362B2 (en) | 2002-09-26 | 2002-09-26 | Bus arbitration method, data transfer device, and bus arbitration method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002281215A JP4151362B2 (en) | 2002-09-26 | 2002-09-26 | Bus arbitration method, data transfer device, and bus arbitration method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004118546A JP2004118546A (en) | 2004-04-15 |
JP4151362B2 true JP4151362B2 (en) | 2008-09-17 |
Family
ID=32275720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002281215A Expired - Fee Related JP4151362B2 (en) | 2002-09-26 | 2002-09-26 | Bus arbitration method, data transfer device, and bus arbitration method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4151362B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100593777C (en) * | 2005-01-31 | 2010-03-10 | 松下电器产业株式会社 | Access arbiter and arbiterable condition verification device |
JP4974508B2 (en) * | 2005-10-28 | 2012-07-11 | キヤノン株式会社 | Bus master device, bus arbitration device, and bus arbitration method |
JP5267328B2 (en) | 2009-05-26 | 2013-08-21 | 富士通セミコンダクター株式会社 | Interrupt notification control device and semiconductor integrated circuit |
JP5265596B2 (en) * | 2010-02-15 | 2013-08-14 | 京セラドキュメントソリューションズ株式会社 | Bus arbitration apparatus and bus arbitration method |
JP5842639B2 (en) | 2012-01-31 | 2016-01-13 | 富士通株式会社 | Connection device, storage device, connection request transmission control method, and connection request transmission control program |
-
2002
- 2002-09-26 JP JP2002281215A patent/JP4151362B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004118546A (en) | 2004-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5572686A (en) | Bus arbitration scheme with priority switching and timer | |
JP2625589B2 (en) | Multiprocessor system | |
AU687627B2 (en) | Multiprocessor system bus protocol for optimized accessing of interleaved storage modules | |
JP4313607B2 (en) | Bus connection circuit and bus connection system | |
KR100347473B1 (en) | Fast pipelined distributed arbitration scheme | |
KR100708096B1 (en) | Bus system and execution scheduling method for access commands thereof | |
JP2004318340A (en) | Data transfer controller | |
JP4151362B2 (en) | Bus arbitration method, data transfer device, and bus arbitration method | |
US20060179172A1 (en) | Method and system for reducing power consumption of a direct memory access controller | |
JP3766377B2 (en) | Bus control device and information processing system | |
JP5677007B2 (en) | Bus arbitration device and bus arbitration method | |
US6105082A (en) | Data processor used in a data transfer system which includes a detection circuit for detecting whether processor uses bus in a forthcoming cycle | |
JP2000132505A (en) | Bus access method and device therefor, and device and system using the bus access method and device | |
JP2005004563A (en) | Dma transfer controller | |
JPH09185580A (en) | Bus system | |
JP3240863B2 (en) | Arbitration circuit | |
JP7226084B2 (en) | Information processing equipment | |
JPH0830549A (en) | Bus control device | |
KR100243868B1 (en) | Arbiter logic in main computer system | |
JP2006065453A (en) | Data processor | |
JP2004185451A (en) | Memory access arbitration method and memory access arbitration unit | |
JP2002091903A (en) | Bus system | |
JP2002229932A (en) | Dma transfer device and data transfer system | |
KR100583455B1 (en) | Programmable Bus arbiter with simple hardware structure | |
JP2007249597A (en) | Data transfer controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040420 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20050308 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060824 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060912 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061108 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20070119 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070724 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070919 |
|
TRDD | Decision of grant or rejection written | ||
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20080606 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080610 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080623 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110711 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110711 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120711 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120711 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130711 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |