(57)【要約】【課題】優先度の低いチャネル装置のオーバーランやアンダーランの発生を防止しバスを効率的に使用可能としたバス調停を実現すること。【解決手段】バス優先値を生成する優先値生成部２６を有するチャネル装置２０と、各チャネル装置２０からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置２０にバスの使用許可を与える優先順位判定部１１とを有し、優先値生成部２６は、チャネル装置２０に設定されたバスの優先度の基本値を保持する基本値レジスタ２１と、チャネル装置２０に設定されたバスの待ち時間の許容値を保持する許容値レジスタ２２と、バスの使用許可を待ち合わせる時間を計数するカウンタ２３と、基本値レジスタ２１の値とカウンタ２３の値とさらにカウンタ２３の値が許容値以上になった場合には固定値を加算してバス優先値を生成する加算器２５とを有する。【選択図】　　　図１
2004118546.tif 000002
【特許請求の範囲】
【請求項１】
バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するバス使用装置と、それぞれのバス使用装置からバス使用要求とバス優先値とを受けてバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
バス使用装置に設定されたバスの優先度の基本値とカウンタの値とを加算してバス優先値を生成することを特徴とするバス調停方式。
【請求項２】
バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するバス使用装置と、それぞれのバス使用装置からバス使用要求とバス優先値とを受けてバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有し、
前記優先値生成部は、バス使用装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、基本値レジスタの値とカウンタの値とを加算してバス優先値を生成する加算器とを有することを特徴とするバス調停方式。
【請求項３】
バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するバス使用装置と、それぞれのバス使用装置からバス使用要求とバス優先値とを受けてバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とバス使用装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がバス使用装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とするバス調停方式。
【請求項４】
バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するバス使用装置と、それぞれのバス使用装置からバス使用要求とバス優先値とを受けてバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有し、
前記優先値生成部は、バス使用装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、バス使用装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とするバス調停方式。
【請求項５】
バスに接続してデータを転送するバス使用装置と、バス使用装置のバス優先値を生成する優先値生成部をバス使用装置に対応して有するとともにそれぞれのバス使用装置からバス使用要求を受けるとバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有するバス制御装置とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
バス使用装置に設定されたバスの優先度の基本値とカウンタの値とを加算してバス優先値を生成することを特徴とするバス調停方式。
【請求項６】
バスに接続してデータを転送するバス使用装置と、バス使用装置のバス優先値を生成する優先値生成部をバス使用装置に対応して有するとともにそれぞれのバス使用装置からバス使用要求を受けるとバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有するバス制御装置とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とバス使用装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がバス使用装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とするバス調停方式。
【請求項７】
バスに接続してデータを転送するバス使用装置と、バス使用装置のバス優先値を生成する優先値生成部をバス使用装置に対応して有するとともにそれぞれのバス使用装置からバス使用要求を受けるとバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有するバス制御装置とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とバス使用装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がバス使用装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とするバス調停方式。
【請求項８】
バスに接続してデータを転送するバス使用装置と、バス使用装置のバス優先値を生成する優先値生成部をバス使用装置に対応して有するとともにそれぞれのバス使用装置からバス使用要求を受けるとバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有するバス制御装置とを有し、
前記優先値生成部は、バス使用装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、バス使用装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とするバス調停方式。
【請求項９】
バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するチャネル装置と、それぞれのチャネル装置からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部を有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置と有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
チャネル装置に設定されたバスの優先度の基本値とカウンタの値とを加算してバス優先値を生成することを特徴とするデータ転送装置。
【請求項１０】
バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するチャネル装置と、それぞれのチャネル装置からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部を有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置と有するデータ転送装置であって、
前記優先値生成部は、チャネル装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、基本値レジスタの値とカウンタの値とを加算してバス優先値を生成する加算器とを有することを特徴とするデータ転送装置。
【請求項１１】
バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するチャネル装置と、それぞれのチャネル装置からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部を有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置と有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とチャネル装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がチャネル装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とするデータ転送装置。
【請求項１２】
バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するチャネル装置と、それぞれのチャネル装置からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部を有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置と有するデータ転送装置であって、
前記優先値生成部は、チャネル装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、チャネル装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とするデータ転送装置。
【請求項１３】
バスに接続してデータを転送するチャネル装置と、チャネル装置のバス優先値を生成する優先値生成部をチャネル装置に対応して有するとともにそれぞれのチャネル装置からバス使用要求を受けるとバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部とを有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置とを有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
チャネル装置に設定されたバスの優先度の基本値とカウンタの値とを加算してバス優先値を生成することを特徴とするデータ転送装置。
【請求項１４】
バスに接続してデータを転送するチャネル装置と、チャネル装置のバス優先値を生成する優先値生成部をチャネル装置に対応して有するとともにそれぞれのチャネル装置からバス使用要求を受けるとバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部とを有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置とを有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とチャネル装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がチャネル装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とするデータ転送装置。
【請求項１５】
バスに接続してデータを転送するチャネル装置と、チャネル装置のバス優先値を生成する優先値生成部をチャネル装置に対応して有するとともにそれぞれのチャネル装置からバス使用要求を受けるとバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部とを有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置とを有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とチャネル装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がチャネル装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とするデータ転送装置。
【請求項１６】
バスに接続してデータを転送するチャネル装置と、チャネル装置のバス優先値を生成する優先値生成部をチャネル装置に対応して有するとともにそれぞれのチャネル装置からバス使用要求を受けるとバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部とを有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置とを有するデータ転送装置であって、
前記優先値生成部は、チャネル装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、チャネル装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とするデータ転送装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はバス調停方式及びデータ転送装置に関し、特にバスに接続する各装置の特性に応じて優先度に関する固有値を与えてバスを効率的に調停する技術に関する。
【０００２】
【従来の技術】
従来大型の情報処理装置から携帯型の情報処理装置にいたる情報処理装置や通信制御装置等を含むデータ転送装置に実装されるバスの調停においては、調停の対象となるバスを使用するバス使用装置（例えばチャネル装置）のバス要求が競合した場合予め決められた基準に従ってバスの使用を許可するバス使用装置を決定している。
【０００３】
ラウンドロビン方式のように特定のバス使用装置が有利にならないようにバスの優先順位をバスの獲得実績に従って動的に変更し各バス使用装置が平均的にバスを獲得できるようにする方法や、バス使用装置が例えば異なる入出力装置や通信装置を制御するチャネル装置のようにそれぞれバスに要求される処理時間が異なるような場合は各バス使用装置に固定的に優先順位を与える方法が知られている。
【０００４】
例えば、特開平１１−６５９９３号公報では、バス使用装置毎に優先順位を割り振っておき、複数のバス使用装置のバス要求が競合した場合この優先順位に従ってバスの使用許可を与えるバス使用装置を決定しているが、この公報では同じ特性を有するプロセッサ間での調停に関するものであり、バスの使用時間や待ち時間の制限等にそれぞれ異なった特性・条件を有する入出力装置やチャネル装置のような装置に対してそれぞれの特性を配慮した調停はされていない。
【０００５】
【特許文献１】
特開平１１−６５９９３号公報
【０００６】
【発明が解決しようとする課題】
このように、従来のバス調停の技術においては、バス使用装置の持つ特性や動作内容に基づいた条件に考慮してバス調停をしていなかったため、各バス使用装置の特性を配慮した効率的な調停が実行されていなかった。特に、入出力装置を制御するバス使用装置のように入出力装置の使用に応じて動作速度、バスの使用時間、待ち時間の条件等がそれぞれ異なるバス使用装置で構成されたバスでは効率のよい調停技術が無かった。
【０００７】
例えば、優先順位を固定にすると、優先度の低いバス使用装置では待ち時間を超過することによりオーバーランやアンダーランが発生しやすくなり、優先度を均一にすると高速のデータ転送を必要とするバス使用装置ではバス使用時間の長いのバス使用装置が連続してバスを使用すると長時間バスの使用を待たされシステム全体の性能が悪化するといった問題があった。
【０００８】
本発明の目的は、優先度の低いチャネル装置のオーバーランやアンダーランの発生を防止し、バス使用を効率的に使用可能としたバス調停方式及びデータ転送装置を提供することにある。
【０００９】
【課題を解決するための手段】
本発明の第１のバス調停方式は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するバス使用装置と、それぞれのバス使用装置からバス使用要求とバス優先値とを受けてバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
バス使用装置に設定されたバスの優先度の基本値とカウンタの値とを加算してバス優先値を生成することを特徴とする。
【００１０】
本発明の第２のバス調停方式は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するバス使用装置と、それぞれのバス使用装置からバス使用要求とバス優先値とを受けてバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有し、
前記優先値生成部は、バス使用装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、基本値レジスタの値とカウンタの値とを加算してバス優先値を生成する加算器とを有することを特徴とする。
【００１１】
本発明の第３のバス調停方式は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するバス使用装置と、それぞれのバス使用装置からバス使用要求とバス優先値とを受けてバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とバス使用装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がバス使用装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とする。
【００１２】
本発明の第４のバス調停方式は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するバス使用装置と、それぞれのバス使用装置からバス使用要求とバス優先値とを受けてバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有し、
前記優先値生成部は、バス使用装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、バス使用装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とする。
【００１３】
本発明の第５のバス調停方式は、バスに接続してデータを転送するバス使用装置と、バス使用装置のバス優先値を生成する優先値生成部をバス使用装置に対応して有するとともにそれぞれのバス使用装置からバス使用要求を受けるとバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有するバス制御装置とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
バス使用装置に設定されたバスの優先度の基本値とカウンタの値とを加算してバス優先値を生成することを特徴とする。
【００１４】
本発明の第６のバス調停方式は、バスに接続してデータを転送するバス使用装置と、バス使用装置のバス優先値を生成する優先値生成部をバス使用装置に対応して有するとともにそれぞれのバス使用装置からバス使用要求を受けるとバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有するバス制御装置とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とバス使用装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がバス使用装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とする。
【００１５】
本発明の第７のバス調停方式は、バスに接続してデータを転送するバス使用装置と、バス使用装置のバス優先値を生成する優先値生成部をバス使用装置に対応して有するとともにそれぞれのバス使用装置からバス使用要求を受けるとバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有するバス制御装置とを有し、
前記優先値生成部は、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とバス使用装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がバス使用装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とする。
【００１６】
本発明の第８のバス調停方式は、バスに接続してデータを転送するバス使用装置と、バス使用装置のバス優先値を生成する優先値生成部をバス使用装置に対応して有するとともにそれぞれのバス使用装置からバス使用要求を受けるとバス優先値が最大のバス使用装置にバスの使用許可を与える優先順位判定部とを有するバス制御装置とを有し、
前記優先値生成部は、バス使用装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、バス使用装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、バス使用装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とする。
【００１７】
本発明の第１のデータ転送装置は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するチャネル装置と、それぞれのチャネル装置からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部を有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置と有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
チャネル装置に設定されたバスの優先度の基本値とカウンタの値とを加算してバス優先値を生成することを特徴とする。
【００１８】
本発明の第２のデータ転送装置は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するチャネル装置と、それぞれのチャネル装置からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部を有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置と有するデータ転送装置であって、
前記優先値生成部は、チャネル装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、基本値レジスタの値とカウンタの値とを加算してバス優先値を生成する加算器とを有することを特徴とする。
【００１９】
本発明の第３のデータ転送装置は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するチャネル装置と、それぞれのチャネル装置からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部を有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置と有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とチャネル装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がチャネル装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とする。
【００２０】
本発明の第４のデータ転送装置は、バスに接続してデータを転送するとともにバス優先値を生成する優先値生成部とを有するチャネル装置と、それぞれのチャネル装置からバス使用要求とバス優先値とを受けてバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部を有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置と有するデータ転送装置であって、
前記優先値生成部は、チャネル装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、チャネル装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とする。
【００２１】
本発明の第５のデータ転送装置は、バスに接続してデータを転送するチャネル装置と、チャネル装置のバス優先値を生成する優先値生成部をチャネル装置に対応して有するとともにそれぞれのチャネル装置からバス使用要求を受けるとバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部とを有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置とを有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
チャネル装置に設定されたバスの優先度の基本値とカウンタの値とを加算してバス優先値を生成することを特徴とする。
【００２２】
本発明の第６のデータ転送装置は、バスに接続してデータを転送するチャネル装置と、チャネル装置のバス優先値を生成する優先値生成部をチャネル装置に対応して有するとともにそれぞれのチャネル装置からバス使用要求を受けるとバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部とを有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置とを有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とチャネル装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がチャネル装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とする。
【００２３】
本発明の第７のデータ転送装置は、バスに接続してデータを転送するチャネル装置と、チャネル装置のバス優先値を生成する優先値生成部をチャネル装置に対応して有するとともにそれぞれのチャネル装置からバス使用要求を受けるとバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部とを有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置とを有するデータ転送装置であって、
前記優先値生成部は、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタを有し、
カウンタの値とチャネル装置に設定されたバスの優先度の基本値とを加算し、カウンタの値がチャネル装置に設定されたバスの待ち時間の許容値以上となると前記加算結果にさらに固定値を加算してバス優先値を生成することを特徴とする。
【００２４】
本発明の第８のデータ転送装置は、バスに接続してデータを転送するチャネル装置と、チャネル装置のバス優先値を生成する優先値生成部をチャネル装置に対応して有するとともにそれぞれのチャネル装置からバス使用要求を受けるとバス優先値が最大のチャネル装置にバスの使用許可を与える優先順位判定部とを有しチャネル装置とプログラムやデータを記憶する主記憶装置との間のデータ転送を制御するチャネル制御装置とを有するデータ転送装置であって、
前記優先値生成部は、チャネル装置に設定されたバスの優先度の基本値を保持する基本値レジスタと、チャネル装置に設定されたバスの待ち時間の許容値を保持する許容値レジスタと、チャネル装置がバス使用要求を発行してからバスの使用許可を受けるまでの間一定周期でカウントアップするカウンタと、カウンタの値が許容値レジスタの値以上となると固定値の加算指示を行う比較器と、基本値レジスタの値とカウンタの値とさらに固定値の加算指示があった場合は固定値とを加算してバス優先値を生成する加算器とを有することを特徴とする。
【００２５】
【発明の実施の形態】
次に、本発明の第１の実施の形態について図面を参照して詳細に説明する。図１は本発明の第１の実施の形態の構成を示したブロック図である。図１を参照すれば、本発明のバス調停方式又はデータ転送装置は、チャネル制御装置１０と、複数のバス使用装置であるチャネル装置２０（図では２０−１〜２０−３の３つを記載）とを有し、バスＸ３０で接続されデータ転送を実行する。チャネル制御装置１０は主記憶装置３８とＣＰＵ３９（中央処理装置）３９と接続する。
【００２６】
また、チャネル制御装置１０と各チャネル装置２０との間はそれぞれ制御信号Ｘ３１、Ｘ３３、Ｘ３５にて接続され、制御信号Ｘ３１、Ｘ３３、Ｘ３５はそれぞれチャネル装置２０からチャネル制御装置１０に対してバス使用要求を行うバス要求信号とチャネル制御装置１０からチャネル装置２０へバス要求に対してバス使用を許可する使用許可信号とを含んでいる。Ｘ３２、Ｘ３４、Ｘ３６はそれぞれのチャネル装置２０のバス優先度の重み値をチャネル制御装置１０へ伝えるバス優先値信号である。
【００２７】
チャネル制御装置１０は、チャネル装置２０と主記憶装置３８或いはＣＰＵ３９との間のデータ転送を実行するデータ転送部１２と、バスＸ４０の調停を制御する優先順位判定部１１とを有する。優先順位制御部１１は、複数のチャネル装置２０からバス要求が競合した場合、バス優先値信号Ｘ３２、Ｘ３４、Ｘ３６を比較して一番大きなバス優先値を持つチャネル装置２０にバス使用許可を与え、バス使用許可信号で通知する。
【００２８】
チャネル装置２０はバスＸ３０に複数接続し、図１ではチャネル装置２０−１とチャネル装置２０−２とチャネル装置２０−３の３つが接続した場合を示しているが接続数を限定するものではない。各チャネル装置２０はバス接続部２７と優先値生成部２６とを有し、優先値生成部２６は基本値レジスタ２１と、許容値レジスタ２２と、カウンタ２３と、比較器２４と、加算器２５とを有している。チャネル装置２０の内部の説明についてチャネル装置２０−１を代表として説明する。
【００２９】
バス接続部２７は、バスＸ３０と接続してデータの送受信を行い、バスの使用権について信号Ｘ３１により制御する。例えば、主記憶装置３８からデータの読み出しを実行する場合は、まずバス使用要求信号をＸ３１で送り、チャネル制御装置１０にて調停が行われバスの使用権を獲得した場合はバス使用許可信号をＸ３１で受けてバスＸ３０に主記憶の読み出し要求とアドレスを送出し、主記憶装置３８からの読み出しデータの到着を知らせる信号をＸ３１で受けるとともにデータを受け取る。
【００３０】
基本値レジスタ２１は、チャネル装置２０に与えられた優先順位を数値化した基本値を保持するレジスタであり、基本値は大きいほど優先される。また、基本値はチャネル装置２０が制御する入出力装置や通信装置の特性に応じて決めるべきものであり、例えば、キーボードのような入力装置は優先順位を高くする必要はないし、磁気ディスク装置のように高速なアクセスが求められる装置は優先順位を高くする必要があり、通信装置は通信速度を満足する程度の優先順位が必要となるので、システム構成や運用条件により決めるべきものであるが、ここでは決め方については限定しない。
【００３１】
許容値レジスタ２２は、チャネル装置２０のバス要求の待ち時間の許容値を保持するレジスタである。待ち時間の許容値はチャネル装置２０の配下の装置の動作において動作を正常に実行するための処理時間に対してバス使用待ち時間の最大値或いは最大値に余裕を持たせた最大値に近い値である。従ってバス使用待ち時間が許容値以上となった場合は最優先にてバス使用許可を得る必要がある。
【００３２】
カウンタ２３は、バス使用要求信号の発行によって起動され一定時間毎にカウントアップするカウンタであり、バス使用許可信号を受信するとリセットされる。比較器２４は、許容値レジスタ２２とカウンタ２３とを比較しカウンタ２３の値が許容値レジスタ２２の値以上となった場合加算器２５に固定値（ここでは“１００”とするが値を制限するものではない）を加算するよう指示する。
【００３３】
加算器２５は、基本値レジスタ２１の値とカウンタ２３の値とを加算し、さらに比較器２４から指示があった場合固定値“１００”を加算してバス優先値を作成し、バス優先値信号として信号線Ｘ３２を介してチャネル制御装置１０へ送る。
【００３４】
次に、本発明の第１の実施の形態の動作について図面を参照して説明する。まず、図２のフローチャートを参照してチャネル装置２０のバス優先値を生成する優先値生成部２６の内部の動作について説明し、次に具体的な状態における動作を図３を参照して説明する。
【００３５】
まず、チャネル装置２０のバス接続部２７が主記憶装置３８或いはＣＰＵ３９とのデータ転送のためにバス使用要求を信号線Ｘ３１に出力すると（Ｓ８１）、バス接続部２７はカウンタ２３に対してカウント動作の開始を指示する（Ｓ８２）。カウンタ２３はカウント有効の指示を受けると一定時間毎にカウンタ２３の内容に“１”を加算する。なお、カウンタ２３のカウント周期は各チャネル装置２０で同じでもいいし異なるように設定してもよい。基本値と許容値との関係でより効率のよい設定をすることができる。
【００３６】
バス使用許可信号を受信するまでの間は（Ｓ８３）、カウンタ２３の値が許容値レジスタ２２の値以上となるかを比較器２４が監視し（Ｓ８４）、カウンタ２３の値が許容値レジスタ２２未満の場合は加算器２５は基本値レジスタ２１の値とカウンタ２３の値を加算してバス優先値を生成する。カウンタ２３の値が許容値レジスタ２２の値と同じ又は大きくなると比較器２４は加算器２５へ指示し、加算器２５は指示を受けると基本値レジスタ２１の値とカウンタ２３の値に加えてさらに固定値“１００”を加算してバス優先値を生成する。
【００３７】
チャネル制御装置１０からバス使用許可信号を受信すると（Ｓ８３）、バス接続部２７はカウンタ２３に対してリセットを指示する（Ｓ８６）。カウンタ２３はリセット指示を受けると内容を“０”にリセットし、カウント動作を停止する。これ以降新たなバス使用要求を発行するまでの間はカウンタ２３は“０”のままである。このようにバス優先値が各チャネル装置２０で生成され、各チャネル装置２０からチャネル制御装置１０のデータ転送部１２へバス優先値信号として出力される。
【００３８】
次に、バス調停の動作を具体的な状態について説明する。図３は（１）から（４）までの４つの具体的な状態における、チャネル装置２０−１からチャネル装置２０−３のそれぞれの状態を表で示している。チャネル装置２０−１は基本値＝“４０”、許容値＝“３０”が設定され、チャネル装置２０−２は基本値＝“２５”、許容値＝“５０”が設定され、チャネル装置２０−３は基本値＝“１０”、許容値＝“１００”が設定されているものとする。
【００３９】
まず図３（１）は、バス使用要求がどのチャネル装置２０からも出力されていない状態を示したものである。この状態では各チャネル装置２０のカウンタ２３の値は“０”なのでバス優先値＝基本値となっており、チャネル装置２０−１がバス優先値＝“４０”で最も優先順位が高く、次いでバス優先値＝“２５”のチャネル装置２０−２が優先順位が高く、バス優先値＝“１５”のチャネル装置２０−３が一番低い優先順位となっている。
【００４０】
従って、この状態で各チャネル装置２０から同時にバス使用要求が出力されると、優先順位判定部１１はバス優先値の一番大きいチャネル装置２０−１にバス使用許可を与えるよう調停する。この場合、バス使用許可を獲得できなかったチャネル装置２０−２とチャネル装置２０−２とはバス使用許可が得られるまでそれぞれのカウンタ２３のカウントを開始し、カウントに伴ってそれぞれのバス優先値が大きくなり待ち時間に応じてバス優先値が大きくなるので、時間の経過とともにバスを獲得しやすいようになっていく。
【００４１】
次に、図３（２）はチャネル装置２０−３がバス要求を出力した状態で待ち続けカウンタ２３の値が“１０”になった際に、チャネル装置２０−１のバス使用要求と競合した状態を示している。この時、チャネル装置２０−３のバス優先値は基本値“１０”＋カウンタ２３の値“１０”＝“２０”となっておりチャネル装置２０−１のバス優先値“４０”より小さいため、チャネル装置２０−１にバス使用権が与えられる。このように、バスが込み合った場合は基本値の小さいチャネル装置２０はバス使用権がなかなか獲得できない状態が続くことが起こりうる。図１ではチャネル装置２０は３つのみ示しているが多くのチャネル装置２０がバスＸ４０に接続し基本値の大きいチャネルの数が多くなるとこの傾向は顕著となる。
【００４２】
次に、図３（３）は図３（２）の状態からチャネル装置２０−３がバス要求を出力した状態でさらに待ち続けカウンタ２３の値が“４０”になった際に、チャネル装置２０−１のバス使用要求と競合した状態を示している。この場合はバス優先値はチャネル装置２０−３の方が“５０”となりチャネル装置２０−１よい大きいのでチャネル装置２０−３にバス使用権が与えられる。このように、チャネル装置２０−３は基本値が小さくても待ち続けることによりバス優先値が加算されて大きくなり基本値の大きなチャネル装置２０と競合してもバス使用権を獲得できるようになる。
【００４３】
次に、図３（４）はチャネル装置２０−２とチャネル装置２０−３がともにバス使用権を獲得できずに待たされチャネル装置２０−２のカウンタ２３の値が許容値になった状態を示している。この場合、チャネル装置２０−２とチャネル装置２０−３の基本値とカウンタ２３の値との和はそれぞれ“７５”と“８０”であり、このままではチャネル装置２０−３の方が優先順位が高くなるが、チャネル装置２０−２はすでにバス待ち時間の限界になっておりこれ以上待たされるとチャネル装置２０−２の処理が正常に終わらない可能性が大きくなる。従って、チャネル装置２０−２の優先順位を上げる必要があり、この機能を比較器２４によって実行する。比較器２４はカウンタ２３の値＝許容値を検出し加算器２５に固定値“１００”を加算するように指示するので、チャネル装置２０−２のバス優先値は“１７５”となりバスの使用権を獲得できる。
【００４４】
以上説明したように、本発明第１の実施の形態の構成では、各チャネル装置２０の特性に応じて基本値を割り振ったのでバスの調停を効率よく実行でき、基本値の低いチャネル装置２０は待ち時間に応じて優先度を上げるようにしたので待ち時間に応じてバスを獲得できるようになり、さらにバスの待ち時間の許容値を設定し待ち時間すなわちカウンタ２３の値が許容値に達すると優先度を大幅に上げて優先的にバスの使用権を与えるようにしたので優先度の低いチャネル装置２０でもオーバーランやアンダーランを起こしにくくすることができる。
【００４５】
次に、本発明の第２の実施の形態について図面を参照して説明する。図４は本発明の第２の実施の形態のバス調停方式又はデータ転送装置の構成を示す図である。第１の実施の形態では各チャネル装置２０にて優先値生成部２６を有していたのに対して、第２の実施の形態は優先値生成部２６をチャネル制御装置１０内に設けて、各チャネル装置２０とチャネル制御装置１０間の信号線数を減らした点に特徴がある。
【００４６】
図４を参照すると、本発明の第２の実施の形態のバス調停方式又はデータ転送装置の構成は、チャネル制御装置４０とチャネル装置５０−１、チャネル装置５０−２とチャネル装置５０−３とを有し、これらをバスＸ７０で接続する。また、チャネル制御装置４０は、第１の実施の形態のチャネル制御装置１０と同様に主記憶装置３８，ＣＰＵ３９と接続し、各チャネル装置５０と主記憶装置３８又はＣＰＵ３９との間のデータ転送を制御する。
【００４７】
チャネル装置５０は図４では３つ示しているが接続数は特に限定しない。チャネル装置５０はバス接続部５７と、チャネル装置５０に設定された基本値を保持する元基本値レジスタ５１と、チャネル装置５０に設定された許容値保持する元許容値レジスタ５２とを有し、バス接続部５７は図１のバス接続部２７に対応し、バス接続部２７の機能に加えてチャネル制御装置４０からに要求に応じて元基本値レジスタ５１と元許容値レジスタ５２の値を読み出して返送する機能を含んでいる。なお、元基本値レジスタ５１と元許容値レジスタ５２はチャネル装置５０のメモリ手段等に設けてもよい。
【００４８】
チャネル制御装置４０は優先順位判定部４１と、データ転送部４２と、優先値生成部４３−１と、優先値生成部４３−２と、優先値生成部４３−３と、初期設定部４６を有している。優先値生成部４３、優先値生成部４３−２、優先値生成部４３−３はそれぞれチャネル装置５０−１、チャネル装置５０−２、チャネル装置５０−３に対応したバス優先値を生成し、内部の構成は図１の優先値生成部２６と同じであり図１の各構成要素と同じ番号を付けているので説明は省略する。ただし、基本値レジスタ２１と許容値レジスタ２２は初期設定部４６に従って値がセットされる。
【００４９】
優先順位判定部４１とデータ転送部４２とはそれぞれ図１の優先順位判定部１１とデータ転送部１２に対応し同じ機能を有する。ただし、データ転送部４２はバスＸ７０から読み出したデータ（基本値と許容値）を優先値生成部４３、優先値生成部４３−２、優先値生成部４３−３に供給する機能を有する。
【００５０】
初期設定部４６はシステムの初期化時又はチャネル装置５０のシステム組み込みの際にチャネル装置５０の元基本値レジスタ５１と元許容値レジスタ５２からそれぞれ基本値と許容値とをデータ転送部４２とバスＸ７０とバス接続部５７を介して読み出し、読み出した値をそれぞれ基本値レジスタ２１と許容値レジスタ２２へ設定する。
【００５１】
図４の構成では、図１の各チャネル装置２０の優先値生成部２６をチャネル制御装置４０にまとめて実装しているので、バス優先値の信号線Ｘ３２、Ｘ３４、Ｘ３６に相当する信号は不要となり、チャネル制御装置４０と各チャネル装置５０との間の信号線数が少なくなっている。信号線Ｘ７１、Ｘ７２、Ｘ７３は図１の信号線Ｘ３１、Ｘ３３、Ｘ３５に相当し、それぞれバス使用要求信号やバス使用許可信号を含んでいる。
【００５２】
次に本発明の第２の実施の形態の動作について説明する。まず、図４に示すシステムの初期化の際に初期設定部４６が動作し、バスＸ７０に接続するチャネル装置５０−１〜チャネル装置５０−３に対してそれぞれの基本値と許容値とを読み出してそれぞれ対応する優先値生成部４３−１〜優先値生成部４３−３の基本値レジスタ２１と許容値レジスタ２２にセットする。なお、システム動作中にチャネル装置５０を組み込む場合は、初期設定部４６が同様に動作して組み込まれるチャネル装置５０の基本値と許容値とをセットする。
【００５３】
この後の優先値生成部４３の動作は図２に示すフローチャートのように動作し、優先順位判定部４１はチャネル装置５０からのバス使用要求が競合した場合は、対応する優先値生成部４３の優先値を比較して一番値の大きなチャネル装置５０へバス使用許可信号を通知しバスの使用権を与える。このように初期化の処理を除くとバスの調停動作や優先値の生成の動作は第１の実施の形態と同様に動作するので詳細な説明は省略する。
【００５４】
このように、第２の実施の形態の構成では第１の実施の形態と同様に優先度の低いチャネル装置でもオーバーランを抑えた効率のよい調停を可能とするとともに、優先値生成部４３をチャネル制御装置４０に集中して実装したので各チャネル装置５０とチャネル制御装置４０との間の信号線数を減らし遅延時間の少ない調停を可能とする。なお、図４ではチャネル装置５０を３つ接続する構成を示したが、接続するチャネル装置５０の数の最大値に応じて優先値生成部４３をチャネル制御装置４０に実装することにより論理的には多数のチャネル装置５０に対応することが可能である。
【００５５】
これに対して第１の実施例の構成では優先値生成部２６を各チャネル装置２０に実装しているので、第２の実施の形態のようにチャネル装置５０の接続数に関わらず最大接続数の優先値生成部４３を実装する必要が無く無駄な回路が省けるという特徴がある。従ってシステムの構成の特性に応じていずれかを選択することができる。
【００５６】
以上第１又は第２の実施の形態の説明では、複数のチャネル装置間でバス使用要求が競合した場合に、優先値が等しくなった場合の動作について説明を省略したが、第１の実施の形態の場合は例えばチャネル装置の番号のように予め決められた情報に基づいて決める方法があり、第２の実施の形態ではさらに基本値の大きさによって決める方法もある。さらに、優先値が一致した場合にラウンドロビンのような方法を適用する方法もあるが特に制限しない。
【００５７】
【発明の効果】
優先度の低いチャネル装置のオーバーランやアンダーランの発生を防止し、バス使用を効率的にした効率のよいバス調停を可能とする効果がある。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態の構成を示す図である。
【図２】本発明の第１の実施の形態の動作を示すフローチャートである。
【図３】本発明の第１の実施の形態の競合状態の例を示す表である。
【図４】本発明の第２の実施の形態の構成を示す図である。
【符号の説明】
１０　　チャネル制御装置
１１　　優先順位判定部
１２　　データ転送部
２０　　チャネル装置
２１　　基本値レジスタ
２２　　許容値レジスタ
２３　　カウンタ
２４　　比較器
２５　　加算器
２６　　優先値生成部
２７　　バス接続部
３８　　主記憶装置
３９　　ＣＰＵ
４０　　チャネル制御装置
４１　　優先順位判定部
４２　　データ転送部
４３　　優先値生成部
５１　　元基本値レジスタ
５２　　元許容値レジスタ
５７　　バス接続部
【図１】
2004118546.tif 000003
【図２】
2004118546.tif 000004
【図３】
2004118546.tif 000005
【図４】
2004118546.tif 000006