(57)【要約】【課題】各ＰＣＩマスタにＰＣＩバスのバス使用権を連続的に与えることができるＰＣＩバス使用権調停装置を得ること。【解決手段】連続バス使用権回数比較部２４が、連続バス使用回数記憶部２２に記憶されたバス使用権回数と連続バス使用権カウント部２３がカウントした連続バス使用権回数を比較し、調停信号生成部２９は、連続バス使用権回数比較部２４の比較結果がバス使用権回数と連続バス使用権回数とが異なることを示す場合、現在バス使用権を与えているＰＣＩマスタ１２〜１４からのバス使用権要求信号に対してのみバス使用権許可信号を出力し、バス使用権回数と連続バス使用権回数とが合致することを示す場合、予め定められた優先順位に基づいて他のＰＣＩマスタ１２〜１４にバス使用権を移行してＰＣＩマスタ１２〜１４から入力されたバス使用権要求信号に対してバス使用権許可信号を出力する。【選択図】図１
2008071019.tif 000002
【特許請求の範囲】
【請求項１】
複数のＰＣＩマスタが接続されるＰＣＩバスに接続され、前記複数のＰＣＩマスタが出力するバス使用権要求信号に応じて該バス使用権要求信号を出力したＰＣＩマスタの１つにＰＣＩバスの使用を許可するバス使用権許可信号を出力してバス使用権を与えるＰＣＩバス使用権調停装置において、
前記ＰＣＩマスタ毎に前記ＰＣＩバスを連続して使用するバス使用権回数を記憶する連続バス使用回数記憶手段と、
前記ＰＣＩマスタに連続して与えたバス使用権の回数をカウントする連続バス使用権カウント手段と、
前記連続バス使用回数記憶手段に記憶されたバス使用権回数と前記連続バス使用権カウント手段によってカウントされたバス使用権の回数とを比較する連続バス使用権回数比較手段と、
前記連続バス使用権回数比較手段の比較結果が、前記連続バス使用回数記憶手段に記憶されたバス使用権回数と前記連続バス使用権カウント手段によってカウントされたバス使用権の回数とが異なることを示す場合、バス使用権を与えているＰＣＩマスタとは異なる他のＰＣＩマスタに対してバス使用権を与えることなく、現在バス使用権を与えているＰＣＩマスタからのバス使用権要求信号に対してのみバス使用権許可信号を出力し、前記連続バス使用回数記憶手段に記憶されたバス使用権回数と前記連続バス使用権カウント手段によってカウントされたバス使用権の回数とが合致することを示す場合、予め定められた優先順位に基づいて他のＰＣＩマスタにバス使用権を移行し、バス使用権を移行したＰＣＩマスタから入力されたバス使用権要求信号に対してバス使用権許可信号を出力する調停信号生成手段、
を備えることを特徴とするＰＣＩバス使用権調停装置。
【請求項２】
前記ＰＣＩバスを監視して、バス使用権を与えているＰＣＩマスタが発行したトランザクションに対してターゲット・イニシエーティッド・ターミネーションが発生し当該ＰＣＩマスタのデータ転送が中断されたことを検出するターミネーション監視手段、
をさらに備え、
前記連続バス使用権カウント手段は、
前記ターミネーション監視手段によってターゲット・イニシエーティッド・ターミネーションが検出されなかったトランザクションに対するバス使用権の回数をカウントすること、
を特徴とする請求項１に記載のＰＣＩバス使用権調停装置。
【請求項３】
前記ＰＣＩマスタ毎に当該ＰＣＩマスタがデータ転送に必要な許容時間を示す連続転送時間を記憶する連続転送時間設定手段と、
バス使用権を与えたＰＣＩマスタがバス使用権要求信号を出力してから前記連続バス使用権回数比較手段の比較結果が前記連続バス使用回数記憶手段に記憶されたバス使用権回数と前記連続バス使用権カウント手段によってカウントされたバス使用権の回数とが合致したことを示すまでの連続転送計測時間を計測する連続転送時間カウント手段と、
前記連続転送時間設定手段に設定された連続転送時間と前記連続転送時間カウント手段によってカウントされた連続転送計測時間とを比較する連続転送時間比較手段と、
をさらに備え、
前記調停信号生成手段は、
前記連続バス使用権回数比較手段の比較結果が、前記連続バス使用回数記憶手段に記憶されたバス使用権回数と前記連続バス使用権カウント手段によってカウントされたバス使用権の回数とが合致することを示し、かつ前記連続転送時間比較手段の比較結果が、前記連続転送時間設定手段に設定された連続転送時間より前記連続転送時間カウント手段によってカウントされた連続転送計測時間の方が大きいことを示す場合、現在バス使用権を与えているＰＣＩマスタとは異なる他のＰＣＩマスタに対してバス使用権を与えることなく、現在バス使用権を与えているＰＣＩマスタからのバス使用権要求信号に対してのみバス使用権許可信号を出力すること、
を特徴とする請求項１または２に記載のＰＣＩバス使用権調停装置。
【請求項４】
前記調停信号生成手段は、
前記連続バス使用権回数比較手段の比較結果が、前記連続バス使用回数記憶手段に記憶されたバス使用権回数と前記連続バス使用権カウント手段によってカウントされたバス使用権の回数とが合致することを示し、かつ前記連続転送時間比較手段の比較結果が、前記連続転送時間設定手段に設定された連続転送時間が前記連続転送時間カウント手段によってカウントされた連続転送計測時間以下であることを示す場合、予め定められた優先順位に基づいて現在バス使用権を与えたＰＣＩマスタを除く他のＰＣＩマスタにバス使用権を移行し、バス使用権を移行したＰＣＩマスタから入力されたバス使用権要求信号に対してバス使用権許可信号を出力すること、
を特徴とする請求項３に記載のＰＣＩバス使用権調停装置。
【請求項５】
調停モードを記憶する調停モード設定手段、
をさらに備え、
前記調停信号生成手段は、
前記調停モード設定手段に記憶されている調停モードに基づいて、前記連続バス使用権回数比較手段からの比較結果を用いてバス使用権を与えるＰＣＩマスタを選択するか、前記連続バス使用権回数比較手段および前記連続転送時間比較手段からの比較結果を用いてバス使用権を与えるＰＣＩマスタを選択するか、または、前記連続バス使用権回数比較手段および前記連続転送時間比較手段からの比較結果を用いることなくバス使用権を与えるＰＣＩマスタを選択するかを選択すること、
を特徴とする請求項１〜４の何れか一つに記載のＰＣＩバス使用権調停装置。
【請求項６】
前記調停信号生成手段は、
自装置とは異なるＰＣＩバス使用権調停装置と接続するインタフェース手段、
を備えることを特徴とする請求項１〜５の何れか一つに記載のＰＣＩバス使用権調停装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスのバス使用権調停装置が、ＰＣＩマスタに対して複数のトランザクションを連続的に与えることを特徴とするＰＣＩバス使用権調停装置に関するものである。
【背景技術】
【０００２】
ＰＣＩバスは、高速なローカルバス拡張回路として特定のＣＰＵの制御動作に依存しない目的のため用いられており、複数のＰＣＩマスタを接続することが可能となっている。ＰＣＩバスに接続された複数のＰＣＩマスタからのバス使用権の要求を調停するために、ＰＣＩバス使用権調停装置が用いられる。
【０００３】
図７は、従来のＰＣＩバス使用権調停装置の構成を示すブロック図である。図７において、１０１は、ＰＣＩバス、１０２〜１０４は、ＰＣＩバス１０１に接続されＰＣＩバス１０１に対してマスタ動作を行うＰＣＩマスタ、１０５は、ＰＣＩマスタ１０２〜１０４からの要求に応じてＰＣＩバスの調停を行うアービタである。
【０００４】
ＰＣＩマスタ１０２〜１０４は、ＰＣＩバス１０１に接続してＰＣＩバス１０１のマスタとして動作する。ＰＣＩマスタ１０２〜１０４は、ＰＣＩバス１０１を使用する際に、ＰＣＩバス１０１に対するバス使用権を要求するリクエスト番号（ＲＥＱ＃）信号をアービタ１０５に出力し、アービタ１０５からＰＣＩバス１０１のバス使用権を与えることを示すグラント番号（ＧＮＴ＃）信号を受けてＰＣＩバス１０１の使用を開始する。
【０００５】
アービタ１０５は、ＰＣＩバス使用権調停装置であり、ＰＣＩマスタ１０２〜１０４からリクエスト番号（ＲＥＱ＃）信号を受けると、ラウンドロビン方式などの優先順位アルゴリズムに基づいてＰＣＩバス１０１の使用を許可するＰＣＩマスタ１０２〜１０４を選択するＰＣＩバス使用権調停処理を行う。アービタ１０５は、ＰＣＩバス使用権調停処理によってＰＣＩバス１０１に対するバス使用権を与えるＰＣＩマスタ１０２〜１０４を選択し、選択したＰＣＩマスタ１０２〜１０４にグラント番号（ＧＮＴ＃）信号を出力する。
【０００６】
つぎに、従来のＰＣＩバス使用権調停装置の動作について説明する。ＰＣＩマスタ１０２〜１０４は、ＰＣＩバス１０１を使用する場合、バス使用権を要求するリクエスト番号（ＲＥＱ＃）をアービタ１０５に出力する。アービタ１０５は、ＰＣＩバス１０１に接続されるＰＣＩマスタ１０２〜１０４からのリクエスト番号（ＲＥＱ＃）を受けると、予め定められた優先順位アルゴリズムに基づいて、ＰＣＩマスタ１０２〜１０４の一つにバス使用権を示すグラント番号（ＧＮＴ＃）信号を出力する。
【０００７】
アービタ１０５がバス使用権を決定する優先順位アルゴリズムは、図８に示すようなラウンドロビン方式を用いる場合が多い。たとえば、ＰＣＩマスタ１０２がＰＣＩバス１０１を使用した後、ＰＣＩマスタ１０３がＰＣＩバス１０１を優先的に使用する。つぎに、ＰＣＩマスタ１０３がＰＣＩバス１０１を使用した後、ＰＣＩマスタ１０４がＰＣＩバス１０１を優先的に使用する。同様に、ＰＣＩマスタ１０４がＰＣＩバス１０１を使用した後、再度ＰＣＩマスタ１０２にＰＣＩバス１０１を使用する優先権が移動する。このように、ラウンドロビン方式による優先順位アルゴリズムでは、予め定められた順番、もしくは予め設定された順番でＰＣＩバス１０１の使用の優先順位が移動する。
【０００８】
しかしながら、上記従来のＰＣＩバス使用権調停装置では、バス使用権の優先順位が移動する順番が定められているため、ＰＣＩマスタ１０２〜１０４に与えられるバス使用権は平等であり、特定のＰＣＩマスタを優先することはできない。
【０００９】
このような問題を改善するために、たとえば、（特許文献１）には、バス使用権の優先度を設定する優先度遷移アルゴリズムの循環経路を、入力設定によって変更して多用なシステムにおける汎用的なＰＣＩバスのバス使用権の調停を可能にするＰＣＩバス使用権調停装置に関する技術が開示されている。
【００１０】
具体的には、キーボードからＰＣＩデバイスやＰＣＩスロット（ＰＣＩマスタ）のそれぞれのバス使用権の優先度（優先度遷移アルゴリズム）をアービトレーション優先度変更装置に設定し、ＰＣＩマスタからリクエスト番号（ＲＥＱ＃）信号を受けると、アービタは、アービトレーション優先度変更装置に設定されているＰＣＩバスにおけるバス使用権の優先度に基づいた順序でＰＣＩバスのバス使用権を与えるＰＣＩマスタを決定し、決定したＰＣＩマスタにグラント番号（ＧＮＴ＃）信号を出力する。
【特許文献１】特開平１１−２５０００４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記従来のＰＣＩバス使用権調停装置および上記（特許文献１）に記載のＰＣＩバス使用権調停装置では、各ＰＣＩマスタから同時にリクエスト番号（ＲＥＱ＃）信号が入力された場合、すなわちリクエスト番号（ＲＥＱ＃）信号が競合した場合の優先順位を調停するものであり、リクエスト番号（ＲＥＱ＃）信号が競合しない場合には、リクエスト番号を出力した（アサートにした）ＰＣＩマスタに対してバス使用権を与えることとなる。したがって、従来のＰＣＩバス使用権調停装置および上記（特許文献１）に記載のＰＣＩバス使用権調停装置では、あるＰＣＩマスタが予め定められた時間内に連続的に複数のＰＣＩトランザクションを実行したい場合でも、この複数のトランザクション間に別のＰＣＩマスタのトランザクションが実行されてしまい、予め定められた時間内に連続的に複数のトランザクションを実行したいＰＣＩマスタが時間内に複数のＰＣＩトランザクションを完了することができない可能性が生じるという問題があった。
【００１２】
たとえば、ＰＣＩバスインタフェースを有する画像処理用デバイスをＰＣＩバスに接続し、メモリに置かれたＲＧＢ方式のＲ、Ｇ、Ｂの面順次データをＰＣＩバスを経由してリードし、ＹＵＶ方式のＹ、Ｃｒ、Ｃｂの面順次データに色変換する場合について考える。Ｙ、Ｃｒ、Ｃｂの１画素データの色変換にはＲ、Ｇ、Ｂの１画素データが必要であり、高速に色変換するためには、Ｒ、Ｇ、Ｂのデータを連続的にリードする必要がある。しかし、上記従来のＰＣＩバス使用権調停装置および上記（特許文献１）に記載のＰＣＩバス使用権調停装置ではＲ、Ｇ、Ｂのデータをリードする間に、別のＰＣＩマスタのトランザクションが発生し、Ｙ、Ｃｒ、Ｃｂへの色変換が遅れてしまう。
【００１３】
また、従来のＰＣＩバス使用権調停装置および上記（特許文献１）に記載のＰＣＩバス使用権調停装置では、ＰＣＩバスのシーケンスを監視していないため、ターゲット・イニシエーティッド・ターミネーションが発生し、転送が中断、もしくはリトライされた場合でも優先権を移動させることとなり、無駄なトランザクションが発生する場合がある。
【００１４】
たとえば、ＰＣＩマスタがＰＣＩターゲットに対してメモリ・リードを要求した場合、ＰＣＩターゲットはリトライ応答し、リードデータを用意して再度同じ要求を待つ。しかし、従来のＰＣＩバス使用権調停装置および上記（特許文献１）に記載のＰＣＩバス使用権調停装置では、ＰＣＩバスのバス使用権が別のＰＣＩマスタに与えられ、ＰＣＩターゲットが用意したリードデータはつぎにＰＣＩマスタがＰＣＩバスのバス使用権を与えられるまで転送されない。その間に別のＰＣＩマスタからの無駄なメモリ・リードが発生する可能性がある。
【００１５】
このように上記従来のＰＣＩバス使用権調停装置および上記（特許文献１）に記載のＰＣＩバス使用権調停装置では、優先順位に従ったアービトレーションは可能であるが、ＰＣＩマスタへの複数回のＰＣＩバス使用権を連続的に与えることができない場合があるため、ＰＣＩマスタが複数のトランザクションをある時間内に完了できないことがあるという問題があった。
【００１６】
また、上記従来のＰＣＩバス使用権調停装置および上記（特許文献１）に記載のＰＣＩバス使用権調停装置では、ＰＣＩバスのシーケンスを監視していないため、ターゲット・イニシエーティッド・ターミネーションが発生し、転送が中断、もしくはリトライされたことを認識することができず、無駄なトランザクションが発生することがあるという問題があった。
【００１７】
本発明は、上記に鑑みてなされたものであって、ＰＣＩバスのシーケンスを監視し、各ＰＣＩマスタにＰＣＩバスのバス使用権を連続的に与えることができるＰＣＩバス使用権調停装置を得ることを目的とする。
【００１８】
第２の目的は、ＰＣＩマスタが要求する転送レートでＰＣＩバスを効率的に使用できるＰＣＩバス使用権調停装置を得ることを目的とする。
【課題を解決するための手段】
【００１９】
上記課題を解決するために本発明のＰＣＩバス使用権調停装置は、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが異なる場合にはバス使用権を与えているＰＣＩマスタにバス使用権を保持し、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致した場合にはバス使用権を与えているＰＣＩマスタとは異なるＰＣＩマスタにバス使用権を移行するようにするものである。
【００２０】
また、本発明のＰＣＩバス使用権調停装置は、バス使用権を与えているＰＣＩマスタが発行したトランザクションに対してターゲット・イニシエーティッド・ターミネーションが発生し当該ＰＣＩマスタのデータ転送が中断されたことを検出した場合には、連続して与えられたバス使用権の回数に含めないようにしたものである。
【００２１】
また、本発明のＰＣＩバス使用権調停装置は、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致し、かつ予め定められた連続転送時間より連続してバス使用権を与えてから予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致するまでの連続転送計測時間のほうが大きい場合、現在バス使用権を与えているＰＣＩマスタにバス使用権を保持するようにするものである。
【００２２】
また、本発明のＰＣＩバス使用権調停装置は、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致し、かつ予め定められた連続転送時間が連続してバス使用権を与えてから予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致するまでの連続転送計測時間以下の場合、現在バス使用権を与えているＰＣＩマスタとは異なるＰＣＩマスタにバス使用権を移行するものである。
【００２３】
また、本発明のＰＣＩバス使用権調停装置は、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数との比較結果を用いてバス使用権を与えるＰＣＩマスタを選択するか、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数との比較結果および予め定められた連続転送時間と連続してバス使用権を与えてから予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致するまでの連続転送計測時間との比較結果を用いてバス使用権を与えるＰＣＩマスタを選択するのか、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数との比較結果または予め定められた連続転送時間と連続してバス使用権を与えてから予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致するまでの連続転送計測時間との比較結果を用いることなくバス使用権を与えるＰＣＩマスタを選択するのかを選択するようにしたものである。
【００２４】
また、本発明のＰＣＩバス使用権調停装置は、自装置とは異なるＰＣＩバス使用権調停装置と接続可能としたものである。
【発明の効果】
【００２５】
本発明によれば、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが異なる場合にはバス使用権を与えているＰＣＩマスタにバス使用権を保持し、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致した場合にはバス使用権を与えているＰＣＩマスタとは異なるＰＣＩマスタにバス使用権を移行するようにしているため、ＰＣＩバスに接続される各ＰＣＩマスタが予め設定された回数のトランザクションを連続して実行可能なようにＰＣＩマスタにバス使用権を与えることができるＰＣＩバス使用権調停装置を得ることができるという効果を奏する。
【００２６】
また、本発明によれば、上記の発明において、バス使用権を与えているＰＣＩマスタが発行したトランザクションに対してターゲット・イニシエーティッド・ターミネーションが発生し当該ＰＣＩマスタのデータ転送が中断されたことを検出した場合には、連続して与えられたバス使用権の回数に含めないようにしているため、ＰＣＩマスタが要求するデータ量を連続して転送可能なようにＰＣＩマスタにバス使用権を与えることができるＰＣＩバス使用権調停装置を得ることができるという効果を奏する。
【００２７】
また、本発明によれば、上記の発明において、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致し、かつ予め定められた連続転送時間より連続してバス使用権を与えてから予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致するまでの連続転送計測時間のほうが大きい場合、現在バス使用権を与えているＰＣＩマスタにバス使用権を保持するようにしているため、ＰＣＩマスタの転送速度の低下を防止し、ＰＣＩマスタが要求する転送レートでＰＣＩバスを効率的に使用することができるようにＰＣＩマスタにバス使用権を与えることができるＰＣＩバス使用権調停装置を得ることができるという効果を奏する。
【００２８】
また、本発明によれば、上記の発明において、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致し、かつ予め定められた連続転送時間が連続してバス使用権を与えてから予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致するまでの連続転送計測時間以下の場合、現在バス使用権を与えているＰＣＩマスタとは異なるＰＣＩマスタにバス使用権を移行するようにしているため、必要以上にＰＣＩマスタにバス使用権を与えることなく、ＰＣＩマスタが要求する転送レートでＰＣＩバスを効率的に使用することができるようにＰＣＩマスタにバス使用権を与えることができるＰＣＩバス使用権調停装置を得ることができるという効果を奏する。
【００２９】
また、本発明によれば、上記の発明において、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数との比較結果を用いてバス使用権を与えるＰＣＩマスタを選択するか、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数との比較結果および予め定められた連続転送時間と連続してバス使用権を与えてから予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致するまでの連続転送計測時間との比較結果を用いてバス使用権を与えるＰＣＩマスタを選択するのか、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数との比較結果または予め定められた連続転送時間と連続してバス使用権を与えてから予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致するまでの連続転送計測時間との比較結果を用いることなくバス使用権を与えるＰＣＩマスタを選択するのかを選択するようにしているので、柔軟にバス使用権を与えるＰＣＩマスタを選択するアルゴリズムを選択することができるＰＣＩバス使用権調停装置を得ることができるという効果を奏する。
【００３０】
また、本発明によれば、上記の発明において、自装置とは異なるＰＣＩバス使用権子湯低装置と接続可能としているため、既存のＰＣＩバスのシステムに接続することができるＰＣＩバス使用権調停装置を得ることができるという効果を奏する。
【発明を実施するための最良の形態】
【００３１】
第１の発明のＰＣＩバス使用権調停装置は、複数のＰＣＩマスタが接続されるＰＣＩバスに接続され、複数のＰＣＩマスタが出力するバス使用権要求信号に応じて該バス使用権要求信号を出力したＰＣＩマスタの１つにＰＣＩバスの使用を許可するバス使用権許可信号を出力してバス使用権を与えるＰＣＩバス使用権調停装置において、ＰＣＩマスタ毎にＰＣＩバスを連続して使用するバス使用権回数を記憶する連続バス使用回数記憶手段と、ＰＣＩマスタに連続して与えたバス使用権の回数をカウントする連続バス使用権カウント手段と、連続バス使用回数記憶手段に記憶されたバス使用権回数と連続バス使用権カウント手段によってカウントされたバス使用権の回数とを比較する連続バス使用権回数比較手段と、連続バス使用権回数比較手段の比較結果が、連続バス使用回数記憶手段に記憶されたバス使用権回数と連続バス使用権カウント手段によってカウントされたバス使用権の回数とが異なることを示す場合、バス使用権を与えているＰＣＩマスタとは異なる他のＰＣＩマスタに対してバス使用権を与えることなく、現在バス使用権を与えているＰＣＩマスタからのバス使用権要求信号に対してのみバス使用権許可信号を出力し、連続バス使用回数記憶手段に記憶されたバス使用権回数と連続バス使用権カウント手段によってカウントされたバス使用権の回数とが合致することを示す場合、予め定められた優先順位に基づいて他のＰＣＩマスタにバス使用権を移行し、バス使用権を移行したＰＣＩマスタから入力されたバス使用権要求信号に対してバス使用権許可信号を出力する調停信号生成手段、を備えることを特徴とする。
【００３２】
この第１の発明のＰＣＩバス使用権調停装置によれば、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが異なる場合にはバス使用権を与えているＰＣＩマスタにバス使用権を保持し、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致した場合にはバス使用権を与えているＰＣＩマスタとは異なるＰＣＩマスタにバス使用権を移行するようにしているため、ＰＣＩバスに接続される各ＰＣＩマスタが予め設定された回数のトランザクションを連続して実行可能なようにＰＣＩマスタにバス使用権を与えることができる。
【００３３】
第２の発明のＰＣＩバス使用権調停装置は、ＰＣＩバスを監視して、バス使用権を与えているＰＣＩマスタが発行したトランザクションに対してターゲット・イニシエーティッド・ターミネーションが発生し当該ＰＣＩマスタのデータ転送が中断されたことを検出するターミネーション監視手段、をさらに備え、連続バス使用権カウント手段は、ターミネーション監視手段によってターゲット・イニシエーティッド・ターミネーションが検出されなかったトランザクションに対するバス使用権の回数をカウントすること、を特徴とする。
【００３４】
この第２の発明のＰＣＩバス使用権調停装置によれば、バス使用権を与えているＰＣＩマスタが発行したトランザクションに対してターゲット・イニシエーティッド・ターミネーションが発生し当該ＰＣＩマスタのデータ転送が中断されたことを検出した場合には、連続して与えられたバス使用権の回数に含めないようにしているため、ＰＣＩマスタが要求するデータ量を連続して転送可能なようにＰＣＩマスタにバス使用権を与えることができる。
【００３５】
第３の発明のＰＣＩバス使用権調停装置は、ＰＣＩマスタ毎に当該ＰＣＩマスタがデータ転送に必要な許容時間を示す連続転送時間を記憶する連続転送時間設定手段と、バス使用権を与えたＰＣＩマスタがバス使用権要求信号を出力してから連続バス使用権回数比較手段の比較結果が連続バス使用回数記憶手段に記憶されたバス使用権回数と連続バス使用権カウント手段によってカウントされたバス使用権の回数とが合致したことを示すまでの連続転送計測時間を計測する連続転送時間カウント手段と、連続転送時間設定手段に設定された連続転送時間と連続転送時間カウント手段によってカウントされた連続転送計測時間とを比較する連続転送時間比較手段と、をさらに備え、調停信号生成手段は、連続バス使用権回数比較手段の比較結果が、連続バス使用回数記憶手段に記憶されたバス使用権回数と連続バス使用権カウント手段によってカウントされたバス使用権の回数とが合致することを示し、かつ連続転送時間比較手段の比較結果が、連続転送時間設定手段に設定された連続転送時間より連続転送時間カウント手段によってカウントされた連続転送計測時間の方が大きいことを示す場合、現在バス使用権を与えているＰＣＩマスタとは異なる他のＰＣＩマスタに対してバス使用権を与えることなく、現在バス使用権を与えているＰＣＩマスタからのバス使用権要求信号に対してのみバス使用権許可信号を出力すること、を特徴とする。
【００３６】
この第３の発明のＰＣＩバス使用権調停装置によれば、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致し、かつ予め定められた連続転送時間より連続してバス使用権を与えてから予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致するまでの連続転送計測時間のほうが大きい場合、現在バス使用権を与えているＰＣＩマスタにバス使用権を保持するようにしているため、ＰＣＩマスタの転送速度の低下を防止し、ＰＣＩマスタが要求する転送レートでＰＣＩバスを効率的に使用することができるようにＰＣＩマスタにバス使用権を与えることができる。
【００３７】
第４の発明のＰＣＩバス使用権調停装置は、調停信号生成手段は、連続バス使用権回数比較手段の比較結果が、連続バス使用回数記憶手段に記憶されたバス使用権回数と連続バス使用権カウント手段によってカウントされたバス使用権の回数とが合致することを示し、かつ連続転送時間比較手段の比較結果が、連続転送時間設定手段に設定された連続転送時間が連続転送時間カウント手段によってカウントされた連続転送計測時間以下であることを示す場合、予め定められた優先順位に基づいて現在バス使用権を与えたＰＣＩマスタを除く他のＰＣＩマスタにバス使用権を移行し、バス使用権を移行したＰＣＩマスタから入力されたバス使用権要求信号に対してバス使用権許可信号を出力すること、を特徴とする。
【００３８】
この第４の発明のＰＣＩバス使用権調停装置によれば、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致し、かつ予め定められた連続転送時間が連続してバス使用権を与えてから予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致するまでの連続転送計測時間以下の場合、現在バス使用権を与えているＰＣＩマスタとは異なるＰＣＩマスタにバス使用権を移行するようにしているため、必要以上にＰＣＩマスタにバス使用権を与えることなく、ＰＣＩマスタが要求する転送レートでＰＣＩバスを効率的に使用することができるようにＰＣＩマスタにバス使用権を与えることができる。
【００３９】
第５の発明のＰＣＩバス使用権調停装置は、調停モードを記憶する調停モード選択手段、をさらに備え、調停信号生成手段は、連続バス使用権回数比較手段からの比較結果を用いてバス使用権を与えるＰＣＩマスタを選択するか、連続バス使用権回数比較手段および連続転送時間比較手段からの比較結果を用いてバス使用権を与えるＰＣＩマスタを選択するか、または、連続バス使用権回数比較手段および連続転送時間比較手段からの比較結果を用いることなくバス使用権を与えるＰＣＩマスタを選択するかを選択することを特徴とする。
【００４０】
この第５の発明のＰＣＩバス使用権調停装置によれば、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数との比較結果を用いてバス使用権を与えるＰＣＩマスタを選択するか、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数との比較結果および予め定められた連続転送時間と連続してバス使用権を与えてから予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致するまでの連続転送計測時間との比較結果を用いてバス使用権を与えるＰＣＩマスタを選択するのか、予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数との比較結果または予め定められた連続転送時間と連続してバス使用権を与えてから予め定められたバス使用権回数と同一のＰＣＩマスタに連続して与えられたバス使用権の回数とが合致するまでの連続転送計測時間との比較結果を用いることなくバス使用権を与えるＰＣＩマスタを選択するのかを選択するようにしているので、柔軟にバス使用権を与えるＰＣＩマスタを選択するアルゴリズムを選択することができる。
【００４１】
第６の発明のＰＣＩバス使用権調停装置は、調停信号生成手段は、自装置とは異なるＰＣＩバス使用権調停装置と接続するインタフェース手段、を備えることを特徴とする。
【００４２】
この第６の発明のＰＣＩバス使用権調停装置によれば、自装置とは異なるＰＣＩバス使用権調停装置と接続可能としているため、既存のＰＣＩバスのシステムに接続することができる。
【００４３】
以下、本発明の実施の形態について説明する。
【００４４】
（実施の形態１）
図１〜図３を参照して本発明の実施の形態１を説明する。図１は、本発明におけるＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス使用権調停装置が適用されるシステムの実施の形態１の構成を示すブロック図である。図１において、１１は、ＰＣＩバス、１２〜１４は、ＰＣＩバス１１に接続されＰＣＩバス１１に対してマスタ動作を行うＰＣＩマスタ、１５は、ＰＣＩマスタ１２〜１４からの要求に応じてＰＣＩバス使用権調停処理を行うアービタ、２２は、ＰＣＩマスタ１２〜１４に対して連続的に与えるバス使用権の回数を記憶する連続バス使用回数記憶部、２３は、ＰＣＩマスタ１２〜１４に連続的に与えたバス使用権の回数をカウントする連続バス使用権カウント部、２４は、連続バス使用回数記憶部２２に記憶された回数と連続バス使用権カウント部２３のカウント値とを比較する連続バス使用権回数比較部、２５は、ＰＣＩバス１１を監視してターゲット・イニシエーティッド・ターミネーションが発生し、データ転送が中断、もしくはリトライされたことを検出するターミネーション監視部、３０は、ＰＣＩマスタ１２〜１４に対してバス使用権許可を与えてから連続的に転送する時間を記憶する連続転送時間設定部、２６は、連続的に転送する時間をカウントする連続転送時間カウント部、２７は、連続転送時間設定部３０に記憶された設定値と連続転送時間カウント部２６のカウント値とを比較する連続転送時間比較部、２８は、ＰＣＩバス使用権調停処理に用いるＰＣＩバス使用権調停アルゴリズムの調停モードが設定される調停モード設定部、２９は、ターミネーション監視部２５の監視結果、連続バス使用権回数比較部２４の比較結果、連続転送時間比較部２７の比較結果、および調停モード設定部２８の設定値に基づいてＰＣＩバス使用権調停処理を行う調停信号生成部である。
【００４５】
ＰＣＩマスタ１２〜１４は、たとえば、画像処理用デバイスなどであり、ＰＣＩバス１１に接続してＰＣＩバス１１のマスタとして動作する。ＰＣＩマスタ１２〜１４は、ＰＣＩバス１１を使用する際に、ＰＣＩバス１１に対するバス使用権を要求するリクエスト番号（ＲＥＱ＃）信号（バス使用権要求信号）をアービタ１５に出力し、アービタ１５からＰＣＩバス１１のバス使用権を与えること（バス使用権許可を与えること）を示すグラント番号（ＧＮＴ＃）信号（バス使用権許可信号）を受けてＰＣＩバス１１の使用を開始する。
【００４６】
アービタ１５は、ＰＣＩバス１１のバス使用権調停装置であり、ＰＣＩマスタ１２〜１４からリクエスト番号（ＲＥＱ＃）信号を受けると、ラウンドロビン方式や優先順位固定方式などの従来のＰＣＩバス使用権調停アルゴリズム、または連続的にバス使用権を与える本発明のＰＣＩバス使用権調停アルゴリズム（連続ＰＣＩバス使用権調停アルゴリズム）に基づいてＰＣＩバス１１へのバス使用権を与えるＰＣＩマスタ１２〜１４を選択する。アービタ１５は、選択したＰＣＩマスタ１２〜１４にグラント番号（ＧＮＴ＃）信号を出力する。
【００４７】
アービタ１５は、連続バス使用回数記憶部２２、連続バス使用権カウント部２３、連続バス使用権回数比較部２４、ターミネーション監視部２５、連続転送時間設定部３０、連続転送時間カウント部２６、連続転送時間比較部２７、調停モード設定部２８、および調停信号生成部２９を備えている。
【００４８】
連続バス使用回数記憶部２２は、ＰＣＩマスタ１２〜１４毎に対応付けて当該ＰＣＩマスタに対して連続的に与えるバス使用権の回数（バス使用権回数）を記憶する。各バス使用権回数は、予め定められた設定値であってもよいし、図示しない入力手段を用いて使用者によって設定される任意の設定値であってもよい。
【００４９】
ターミネーション監視部２５は、ＰＣＩバス１１を監視して、ターゲット・イニシエーティッド・ターミネーションが発生し、データ転送が中断、もしくはリトライされたことを検出する。また、ターミネーション監視部２５は、ＰＣＩバス１１を監視して、ＰＣＩバス１１のトランザクションの進行状態を検出する。
【００５０】
ＰＣＩマスタ１２〜１４は、グラント番号（ＧＮＴ＃）信号を受けるとＰＣＩバス１１を介してデータの転送先または転送元となるＰＣＩターゲット（図示せず）とのデータ転送を開始する。データ転送は、ＰＣＩ規格に定められた各制御信号（ＦＲＡＭＥ＃、ＩＲＥＤＹ＃、ＴＲＤＹ＃、ＤＥＶＳＥＬ＃、ＳＴＯＰ＃など）によって制御される。ターミネーション監視部２５は、ＰＣＩバス１１上の各制御信号の状態をシーケンス的に監視することで、トランザクションの進行状態や、データ転送時にターゲット・イニシエーティッド・ターミネーションが発生したか否かを認識する。ターミネーション監視部２５は、イニシエーティッド・ターミネーションが発生することなくデータ転送が終了したことを認識した場合、その旨を連続バス使用権カウント部２３に通知する。また、ターミネーション監視部２５は、トランザクションの進行状態を監視結果として調停信号生成部２９に出力する。
【００５１】
連続バス使用権カウント部２３は、ターミネーション監視部２５からターゲット・イニシエーティッド・ターミネーションが発生することなくデータ転送が終了したことが通知されるとカウント値（連続バス使用権カウント値）をインクリメントする。すなわち、連続バス使用権カウント部２３は、トランザクションにおいてターゲット・イニシエーティッド・ターミネーションが発生しなかったことをカウントすることで、ＰＣＩマスタ１２〜１４に連続的に与えたバス使用権の回数をカウントする。連続バス使用権カウント部２３は、連続バス使用権カウント値を連続バス使用権回数比較部２４に出力する。
【００５２】
連続バス使用権回数比較部２４は、連続バス使用回数記憶部２２に記憶されているバス使用権を与えたＰＣＩマスタ１２〜１４に対応付けられたバス使用権回数と、連続バス使用権カウント部２３から入力される連続バス使用権カウント値とを比較する。連続バス使用権回数比較部２４は、比較結果を調停信号生成部２９と連続転送時間カウント部２６とに出力する。
【００５３】
連続転送時間カウント部２６は、計時機能を有しており、調停信号生成部２９によってグラント番号（ＧＮＴ＃）信号が出力されたＰＣＩマスタ１２〜１４、すなわちＰＣＩバス１１のバス使用権が与えられたＰＣＩマスタ１２〜１４が出力したリクエスト番号（ＲＥＱ＃）信号を受けてから連続バス使用権回数比較部２４から入力される比較結果がバス使用権回数と連続バス使用権カウント値とが合致することを示すまでの時間を計測する。すなわち、連続転送時間カウント部２６は、ＰＣＩマスタ１２〜１４がターゲット・イニシエーティッド・ターミネーションを発生することなく当該ＰＣＩマスタに対応付けられたバス使用権回数だけトランザクションが実行された時間（連続転送計測時間）を計測する。連続転送時間カウント部２６は、連続転送計測時間を連続転送時間比較部２７に出力する。
【００５４】
連続転送時間設定部３０は、ＰＣＩマスタ１２〜１４毎に対応付けて当該ＰＣＩマスタがリクエスト番号（ＲＥＱ＃）信号を出力してから連続的にバス使用権を与えてすべてのデータ転送が終了するまでの許容時間となる連続転送時間、または連続転送時間を考慮したＰＣＩバス使用権調停処理を有効にするか否かを記憶する。連続転送時間、または連続転送時間を考慮したＰＣＩバス使用権調停処理の有無は、予め定められた設定値であってもよいし、図示しない入力手段を用いて使用者によって設定される任意の設定値であってもよい。
【００５５】
連続転送時間比較部２７は、連続転送時間設定部３０にＰＣＩバス使用権調停処理を有効にすることが設定されている場合、連続転送時間設定部３０に設定された連続転送時間の値と、連続転送時間カウント部２６によって計測された連続転送計測時間とを比較する。連続転送時間比較部２７は、比較結果を調停信号生成部２９に出力する。
【００５６】
調停モード設定部２８は、ＰＣＩバス使用権調停処理に用いるＰＣＩバス使用権調停アルゴリズムの調停モードを記憶する。調停モードは、ラウンドロビン方式や優先順位固定方式などの従来のＰＣＩバス使用権調停アルゴリズムを用いてＰＣＩバス使用権調停を行うＰＣＩバス使用権調停モードと、連続的にバス使用権を与える連続ＰＣＩバス使用権調停アルゴリズムを用いてＰＣＩバス使用権調停を行う連続ＰＣＩバス使用権調停モードとがあるが、設定値は連続ＰＣＩバス使用権調停モード固定であってもよいし、図示しない入力手段を用いて使用者が従来のＰＣＩバス使用権調停モードまたは連続ＰＣＩバス使用権調停モードを設定するようにしてもよい。
【００５７】
調停信号生成部２９は、調停モード設定部２８に記憶されている調停モードに基づいてＰＣＩバス使用権調停アルゴリズムを選択してＰＣＩバス使用権調停処理を行なう。調停信号生成部２９は、調停モード設定部２８に記憶されている調停モードがＰＣＩバス使用権調停モードの場合には、連続バス使用権回数比較部２４および連続転送時間比較部２７の比較結果を用いることなく、ＰＣＩマスタ１２〜１４から入力されるリクエスト番号（ＲＥＱ＃）信号に基づいてラウンドロビン方式や優先順位固定方式などの従来のＰＣＩバス使用権調停アルゴリズムを用いたＰＣＩバス使用権調停処理を行なって、リクエスト要求（ＲＥＱ＃）信号を出力したＰＣＩマスタ１２〜１４の何れか１つにグラント番号（ＧＮＴ＃）信号を出力する。
【００５８】
調停信号生成部２９は、調停モード設定部２８に記憶されている調停モードが連続ＰＣＩバス使用権調停モードの場合には、ＰＣＩマスタ１２〜１４から入力されるリクエスト番号（ＲＥＱ＃）信号、連続バス使用権回数比較部２４から入力される比較結果、ターミネーション監視部２５から入力される監視結果、および連続転送時間比較部２７から入力される比較結果に基づいて連続ＰＣＩバス使用権調停処理を行ってＰＣＩマスタ１２〜１４の何れか１つにグラント番号（ＧＮＴ＃）信号を出力する。
【００５９】
つぎに、図２を参照して、連続ＰＣＩバス使用権調停アルゴリズムについて説明する。
【００６０】
図２は、ＰＣＩバス使用権調停装置が用いる連続ＰＣＩバス使用権調停アルゴリズムによるバス使用権の状態遷移図である。
【００６１】
図２に示すように、連続ＰＣＩバス使用権調停アルゴリズムでは、ＰＣＩマスタ１２にバス使用権が与えられている場合、条件１が成立するとＰＣＩマスタ１２がバス使用権を保持し、条件２が成立するとバス使用権はＰＣＩマスタ１２からＰＣＩマスタ１３に移行し、条件３が成立するとバス使用権はＰＣＩマスタ１２からＰＣＩマスタ１４に移行する。また、ＰＣＩマスタ１３にバス使用権が与えられている場合、条件４が成立するとＰＣＩマスタ１３がバス使用権を保持し、条件５が成立するとバス使用権はＰＣＩマスタ１３からＰＣＩマスタ１２に移行し、条件６が成立するとバス使用権はＰＣＩマスタ１３からＰＣＩマスタ１４に移行する。さらに、ＰＣＩマスタ１４にバス使用権が与えられている場合、条件７が成立するとＰＣＩマスタ１４がバス使用権を保持し、条件８が成立するとバス使用権はＰＣＩマスタ１４からＰＣＩマスタ１２に移行し、条件９が成立するとバス使用権はＰＣＩマスタ１４からＰＣＩマスタ１３に移行する。
【００６２】
図２に示した条件１〜９を下記に示す。
条件１：（ａ）ＰＣＩマスタ１２の連続バス使用権カウント値とＰＣＩマスタ１２のバス
使用権回数が不一致の場合
（ｂ）ＰＣＩマスタ１２の連続転送計測時間がＰＣＩマスタ１２の連続転送時間
より大きい場合
条件２：条件１が不成立であって、かつＰＣＩマスタ１３からリクエスト番号（ＲＥＱ＃
）を受けた場合
条件３：条件１が不成立であって、かつＰＣＩマスタ１４からリクエスト番号（ＲＥＱ＃
）を受けた場合
条件４：（ａ）ＰＣＩマスタ１３の連続バス使用権カウント値とＰＣＩマスタ１３のバス
使用権回数が不一致の場合
（ｂ）ＰＣＩマスタ１３の連続転送計測時間がＰＣＩマスタ１３の連続転送時間
より大きい場合
条件５：条件４が不成立であって、かつＰＣＩマスタ１２からリクエスト番号（ＲＥＱ＃
）を受けた場合
条件６：条件４が不成立であって、かつＰＣＩマスタ１４からリクエスト番号（ＲＥＱ＃
）を受けた場合
条件７：（ａ）ＰＣＩマスタ１４の連続バス使用権カウント値とＰＣＩマスタ１４のバス
使用権回数が不一致の場合
（ｂ）ＰＣＩマスタ１４の連続転送計測時間がＰＣＩマスタ１４の連続転送時間
より大きい場合
条件８：条件７が不成立であって、かつＰＣＩマスタ１２からリクエスト番号（ＲＥＱ＃
）を受けた場合
条件９：条件７が不成立であって、かつＰＣＩマスタ１３からリクエスト番号（ＲＥＱ＃
）を受けた場合
なお、条件１は、ＰＣＩマスタ１２の連続転送時間を考慮することが「有効」の場合には（ａ）または（ｂ）が成立した時であり、ＰＣＩマスタ１２の連続転送時間を考慮することが「無効」の場合には（ａ）のみが成立した時である。また、条件２は、ＰＣＩマスタ１３の連続転送時間を考慮することが「有効」の場合には（ａ）または（ｂ）が成立した時であり、ＰＣＩマスタ１３の連続転送時間を考慮することが「無効」の場合には（ａ）のみ成立した時である。さらに、ＰＣＩマスタ１４の連続転送時間を考慮することが「有効」の場合には（ａ）または（ｂ）が成立した時であり、ＰＣＩマスタ１４の連続転送時間を考慮することが「無効」の場合には（ａ）のみが成立した時である。
【００６３】
つぎに、図３のフローチャート、および図１，２を参照して本発明におけるＰＣＩバス使用権調停装置が適用されるシステムの動作について説明する。なお、ここでは、調停モード設定部２８には連続ＰＣＩバス調停モードが設定され、連続バス使用回数記憶部２２には、ＰＣＩマスタ１２に対応付けて連続バス使用権回数「３」が設定されＰＣＩマスタ１３に対応付けて連続バス使用権回数「１」が設定され、ＰＣＩマスタ１４に対応付けて連続バス使用権回数「１」が設定され、連続転送時間設定部３０には、ＰＣＩマスタ１２に対応付けて「有効」と連続転送時間が設定され、ＰＣＩマスタ１３に対応付けて「無効」が設定され、ＰＣＩマスタ１４に対応付けて「無効」が設定されている場合を例に挙げて説明する。
【００６４】
調停信号生成部２９は、ＰＣＩマスタ１２〜１４が出力するリクエスト番号（ＲＥＱ＃）信号を監視して、リクエスト番号（ＲＥＱ＃）信号がアサートになると、図２に示したＰＣＩマスタ１２〜１４に対するバス使用権の状態遷移にしたがって、ＰＣＩマスタ１２〜１４の何れか一つにグラント番号（ＧＮＴ＃）信号を出力して、当該ＰＣＩマスタにバス使用権を与える。調停信号生成部２９は、複数のリクエスト番号（ＲＥＱ＃）がアサートになった場合には、予め定められた循環優先順位アルゴリズムにしたがってバス使用権を与えるＰＣＩマスタ１２〜１４を選択し、選択したＰＣＩマスタ１２〜１４にグラント番号（ＧＮＴ＃）信号を出力する。
【００６５】
現在、調停信号生成部２９は、ＰＣＩマスタ１３またはＰＣＩマスタ１４にグラント番号（ＧＮＴ＃）を出力してバス使用権を与えており、ＰＣＩマスタ１２が、バス使用権を要求するリクエスト信号（ＲＥＱ＃）をアサートにしたとする。
【００６６】
連続バス使用回数記憶部２２には、ＰＣＩマスタ１３，１４に対応付けて連続バス使用権回数「１」が記憶され、連続転送時間設定部３０には、ＰＣＩマスタ１３，１４に対応付けて「無効」が設定されている。よって、ＰＣＩマスタ１３またはＰＣＩマスタ１４に対してグラント番号（ＧＮＴ＃）信号を出力し、このグラント番号（ＧＮＴ＃）信号によってターゲット・イニシエーティッド・ターミネーションが発生することなくトランザクションが終了したことにより、上記条件４（ａ）または条件７（ａ）は不成立となり、条件５または条件８が成立する。したがって、調停信号生成部２９は、ＰＣＩマスタ１２に対するグラント番号（ＧＮＴ＃）信号をアサートにすることでＰＣＩマスタ１２にバス使用権を与える（ステップ１）。
【００６７】
また、調停信号生成部２９は、ＰＣＩマスタ１２にバス使用権を与えたことを連続バス使用権回数比較部２４および連続転送時間比較部２７に通知するとともに、連続転送時間カウント部２６に連続転送計測時間の計測を開始させる。
【００６８】
ターミネーション監視部２５は、ＰＣＩマスタ１２が発行したトランザクションにてターゲット・イニシエーティッド・ターミネーションが発生したか否かを判定する（ステップ２）。ターミネーション監視部２５は、判定結果を調停信号生成部２９および連続バス使用権カウント部２３に出力する。
【００６９】
ターミネーション監視部２５から入力された判定結果が、ターゲット・イニシエーティッド・ターミネーションが発生したことを示す場合（ステップ２，Ｙｅｓ）、調停信号生成部２９は、バス使用権をＰＣＩマスタ１２に保持し、ＰＣＩマスタ１３，１４からのリクエスト番号（ＲＥＱ＃）信号がアサートになってもＰＣＩマスタ１３，１４に対してグラント番号（ＧＮＴ＃）信号をアサートにすることなく、ＰＣＩマスタ１２からのリクエスト番号（ＲＥＱ＃）信号がアサートになった場合のみＰＣＩマスタ１２にグラント番号（ＧＮＴ＃）信号をアサートにして、ＰＣＩマスタ１２にバス使用権を与える（ステップ１）。
【００７０】
ターミネーション監視部２５から入力された判定結果が、ターゲット・イニシエーティッド・ターミネーションが発生しなかったことを示す場合（ステップ２，Ｎｏ）、連続バス使用権カウント部２３は連続バス使用権カウント値をインクリメントする。
【００７１】
連続バス使用権カウント部２３の連続バス使用権カウント値が変化すると、連続バス使用権回数比較部２４は、連続バス使用権カウント値と連続バス使用回数記憶部２２に記憶されているＰＣＩマスタ１２に対応付けられた連続バス使用回数とを比較して、ＰＣＩマスタ１２が要求するデータ量の転送が終了したか否かを判定する（ステップ３）。
【００７２】
具体的には、連続バス使用権カウント部２３は、連続バス使用権カウント値と連続バス使用回数記憶部２２に記憶されているＰＣＩマスタ１２に対応付けられた連続バス使用回数とが合致した場合にＰＣＩマスタ１２が要求するデータ量の転送が終了したと判定し、連続バス使用権カウント値と連続バス使用回数記憶部２２に記憶されているＰＣＩマスタ１２に対応付けられた連続バス使用回数とが合致しない場合にＰＣＩマスタ１２が要求するデータ量の転送は終了していないと判定する。すなわち、連続バス使用権回数比較部２４は、上記条件１（ａ）が成立するか否かを判定する。連続バス使用権回数比較部２４は、比較結果（判定結果）を調停信号生成部２９と連続転送時間カウント部２６とに通知する。また、連続バス使用権カウント部２３は、連続バス使用権カウント値と連続バス使用回数記憶部２２に記憶されているＰＣＩマスタ１２に対応付けられた連続バス使用回数とが合致した場合、比較結果を出力した後に連続バス使用権カウント値をクリアする。
【００７３】
連続バス使用権回数比較部２４から通知された比較結果が連続バス使用権カウント値と連続バス使用回数記憶部２２に記憶されているＰＣＩマスタ１２に対応付けられた連続バス使用回数とが合致しないことを示す場合（ステップ３，Ｎｏ）、すなわちＰＣＩマスタ１２が要求するデータ量の転送が終了していないことを示す場合、連続転送時間カウント部２６は、連続転送計測時間の計測を継続する。
【００７４】
また、ＰＣＩマスタ１２が要求するデータ量の転送が終了していないことを示す場合、すなわち連続バス使用権回数比較部２４から通知された比較結果が連続バス使用権カウント値と連続バス使用回数記憶部２２に記憶されているＰＣＩマスタ１２に対応付けられた連続バス使用回数とが合致しないことを示す場合、上記条件１（ａ）が成立する。よって、調停信号生成部２９は、ステップ１に戻って、バス使用権をＰＣＩマスタ１２に保持する。ここでは、ＰＣＩマスタ１２の連続バス使用権回数は「３」であるので、連続バス使用権カウント値が「１」または「２」の場合にバス使用権はＰＣＩマスタ１２に保持される。
【００７５】
ＰＣＩマスタ１２が要求するデータ量の転送が終了したことを示す場合（ステップ３，Ｙｅｓ）、すなわち連続バス使用権回数比較部２４から通知された比較結果が連続バス使用権カウント値と連続バス使用回数記憶部２２に記憶されているＰＣＩマスタ１２に対応付けられた連続バス使用回数とが合致したことを示す場合、連続転送時間カウント部２６は、連続転送計測時間を連続転送時間比較部２７に通知する。連続転送時間カウント部２６は、連続転送計測時間を連続転送時間比較部２７に通知した後、連続転送計測時間をクリアする。
【００７６】
連続転送計測時間が通知されると、連続転送時間比較部２７は、連続転送時間カウント部２６の連続転送計測時間と連続転送時間設定部３０に記憶されているＰＣＩマスタ１２に対応付けられた連続転送時間とを比較して、連続転送時間設定部３０に設定されている連続転送時間以上に転送が完了するまでに時間を要したか否かを判定し（ステップ４）、判定結果（連続転送時間と連続転送計測時間との比較結果）を調停信号生成部２９に通知する。
【００７７】
連続転送時間比較部２７から通知された判定結果が、連続転送時間以上に転送が完了するまでに時間を要した場合（ステップ４，Ｙｅｓ）、すなわち連続転送計測時間が連続転送時間以上の場合、上記条件１（ｂ）が成立する。よって、調停信号生成部２９は、ステップ１に戻って、バス使用権をＰＣＩバス１１に保持する。
【００７８】
連続転送時間比較部２７から通知された判定結果が、連続転送時間以上に転送が完了するまでに時間を要しなかった場合（ステップ４，Ｎｏ）、すなわち連続転送計測時間が連続転送時間より小さい場合、上記条件１（ａ）および条件１（ｂ）は成立しない。よって、バス使用権をＰＣＩマスタ１３，１４に移行することが可能となり、調停信号生成部２９は、ＰＣＩマスタ１３からのリクエスト番号（ＲＥＱ＃）信号を受信したか否か、すなわちＰＣＩマスタ１３からのリクエスト番号（ＲＥＱ＃）信号がアサートであるか否かを判定する（ステップ５）。
【００７９】
ＰＣＩマスタ１３からのリクエスト番号（ＲＥＱ＃）信号がアサートの場合（ステップ５，Ｙｅｓ）、上記条件２が成立する。よって、調停信号生成部２９は、バス使用権をＰＣＩマスタ１２からＰＣＩマスタ１３に移行して、ＰＣＩマスタ１３に対するグラント番号（ＧＮＴ＃）信号をアサートにする（ステップ７）。
【００８０】
ＰＣＩマスタ１３からのリクエスト番号（ＲＥＱ＃）信号がアサートではない場合（ステップ５，Ｎｏ）、すなわちＰＣＩマスタ１３からのリクエスト番号（ＲＥＱ＃）信号がネゲートの場合、調停信号生成部２９は、ＰＣＩマスタ１４からのリクエスト番号（ＲＥＱ＃）信号を受信したか否か、すなわちＰＣＩマスタ１４からのリクエスト番号（ＲＥＱ＃）信号がアサートであるか否かを判定する（ステップ６）。
【００８１】
ＰＣＩマスタ１４からのリクエスト番号（ＲＥＱ＃）信号がアサートの場合（ステップ６，Ｙｅｓ）、上記条件３が成立する。よって、調停信号生成部２９は、バス使用権をＰＣＩマスタ１２からＰＣＩマスタ１４に移行して、ＰＣＩマスタ１４に対するグラント番号（ＧＮＴ＃）信号をアサートにする（ステップ８）。
【００８２】
ＰＣＩマスタ１４からのリクエスト番号（ＲＥＱ＃）信号がアサートではない場合（ステップ６，Ｎｏ）、すなわちＰＣＩマスタ１４からのリクエスト番号（ＲＥＱ＃）信号がネゲートの場合、調停信号生成部２９は、ＰＣＩマスタ１２からのリクエスト番号（ＲＥＱ＃）信号を受信したか否か、すなわちＰＣＩマスタ１２からのリクエスト番号（ＲＥＱ＃）信号がアサートであるか否かを判定する（ステップ８）。
【００８３】
ＰＣＩマスタ１２からのリクエスト番号（ＲＥＱ＃）信号がアサートの場合（ステップ８，Ｙｅｓ）、調停信号生成部２９は、ステップ４に戻って、連続転送時間比較部２７からの比較結果に基づいて、バス使用権をＰＣＩマスタ１２に保持するか否かを判定する。
【００８４】
ＰＣＩマスタ１２からのリクエスト番号（ＲＥＱ＃）信号がアサートではない場合（ステップ８，Ｎｏ）、すなわちＰＣＩマスタ１２からのリクエスト番号（ＲＥＱ＃）信号がネゲートの場合、調停信号生成部２９は、ＰＣＩマスタ１２〜１４からのリクエスト番号（ＲＥＱ＃）信号がアサートであるか否かを判定する動作を、ＰＣＩマスタ１２〜１４からのいずれかのリクエスト番号（ＲＥＱ＃）信号がアサートになるまで繰り返す（ステップ５〜Ｓ８）。
【００８５】
このように、この実施の形態１においては、連続バス使用回数記憶部２２が、ＰＣＩマスタ１２〜１４毎にＰＣＩバス１１を連続して使用するバス使用権回数を記憶し、連続バス使用権回数比較部２４が、連続バス使用回数記憶部２２に記憶されたバス使用権回数と、連続バス使用権カウント部２３によってカウントされたバス使用権の回数とを比較し、調停信号生成部２９が、連続バス使用回数記憶部２２に記憶されたバス使用権回数と連続バス使用権カウント部２３によってカウントされたバス使用権の回数とが異なることを示す場合、バス使用権を与えているＰＣＩマスタ１２〜１４とは異なる他のＰＣＩマスタ１２〜１４に対してバス使用権を与えることなく、現在バス使用権を与えているＰＣＩマスタ１２〜１４からのバス使用権要求信号に対してのみバス使用権許可信号を出力し、前記連続バス使用回数記憶手段に記憶されたバス使用権回数と連続バス使用権カウント部２３によってカウントされたバス使用権の回数とが合致することを示す場合、予め定められた優先順位に基づいて他のＰＣＩマスタ１２〜１４にバス使用権を移行し、バス使用権を移行したＰＣＩマスタ１２〜１４から入力されたバス使用権要求信号に対してバス使用権許可信号を出力する。これにより、ＰＣＩバス１１に接続される各ＰＣＩマスタ１２〜１４が予め設定された回数のトランザクションを連続して実行可能なようにＰＣＩマスタ１２〜１４にバス使用権を与えることができる。
【００８６】
また、この実施の形態１においては、ターミネーション監視部２５が、ＰＣＩバス１１を監視して、バス使用権を与えているＰＣＩマスタ１２〜１４が発行したトランザクションに対してターゲット・イニシエーティッド・ターミネーションが発生し当該ＰＣＩマスタ１２〜１４のデータ転送が中断されたことを検出し、連続バス使用権カウント部２３は、ターミネーション監視部２５によってターゲット・イニシエーティッド・ターミネーションが検出されなかったトランザクションに対するバス使用権の回数をカウントするようにしているため、ＰＣＩマスタ１２〜１４が要求するデータ量を連続して転送可能なようにＰＣＩマスタにバス使用権を与えることができる。
【００８７】
さらに、この実施の形態１においては、連続転送時間設定部３０がＰＣＩマスタ１２〜１４毎に当該ＰＣＩマスタ１２〜１４がデータ転送に必要な許容時間を示す連続転送時間を記憶し、連続転送時間カウント部２６が、バス使用権を与えたＰＣＩマスタがバス使用権要求信号を出力してから連続バス使用権回数比較部２４の比較結果が連続バス使用回数記憶部２２に記憶されたバス使用権回数と連続バス使用権カウント部２３によってカウントされたバス使用権の回数とが合致したことを示すまでの連続転送計測時間を計測し、連続転送時間比較部２７が、連続転送時間設定部３０に記憶された連続転送時間と連続転送時間カウント部２６によってカウントされた連続転送計測時間とを比較し、調停信号生成部２９は、連続転送時間比較部２７の比較結果が、連続バス使用回数記憶部２２に記憶されたバス使用権回数と連続バス使用権カウント部２３によってカウントされたバス使用権の回数とが合致することを示し、かつ連続転送時間比較部２７の比較結果が、連続転送時間設定部３０に設定された連続転送時間より連続転送時間カウント部２６によってカウントされた連続転送計測時間の方が大きいことを示す場合、現在バス使用権を与えているＰＣＩマスタ１２〜１４とは異なる他のＰＣＩマスタ１２〜１４に対してバス使用権を与えることなく、現在バス使用権を与えているＰＣＩマスタ１２〜１４からのバス使用権要求信号に対してのみバス使用権許可信号を出力する。これにより、ＰＣＩマスタ１２〜１４の転送速度の低下を防止し、ＰＣＩマスタ１２〜１４が要求する転送レートでＰＣＩバス１１を効率的に使用することができるようにＰＣＩマスタ１２〜１４にバス使用権を与えることができる。
【００８８】
さらにまた、この実施の形態１においては、調停信号生成部２９は、連続バス使用権回数比較部２４の比較結果が、連続バス使用回数記憶部２２に記憶されたバス使用権回数と連続バス使用権カウント部２３によってカウントされたバス使用権の回数とが合致することを示し、かつ連続転送時間比較部２７の比較結果が、連続転送時間設定部３０に設定された連続転送時間が連続転送時間カウント部２６によってカウントされた連続転送計測時間以下であることを示す場合、予め定められた優先順位に基づいて現在バス使用権を与えたＰＣＩマスタ１２〜１４を除く他のＰＣＩマスタ１２〜１４にバス使用権を移行し、バス使用権を移行したＰＣＩマスタ１２〜１４から入力されたバス使用権要求信号に対してバス使用権許可信号を出力するようにしているため、必要以上にＰＣＩマスタ１２〜１４にバス使用権を与えることなく、ＰＣＩマスタ１２〜１４が要求する転送レートでＰＣＩバス１１を効率的に使用することができるようにＰＣＩマスタ１２〜１４にバス使用権を与えることができる。
【００８９】
また、この実施の形態１においては、調停信号生成部２９は、調停モード設定部２８に記憶されている調停モードに基づいて、連続バス使用権回数比較部２４からの比較結果を用いてバス使用権を与えるＰＣＩマスタ１２〜１４を選択するか、連続バス使用権回数比較部２４および連続転送時間比較部２７からの比較結果を用いてバス使用権を与えるＰＣＩマスタ１２〜１４を選択するか、または、連続バス使用権回数比較部２４および連続転送時間比較部２７からの比較結果を用いることなくバス使用権を与えるＰＣＩマスタ１２〜１４を選択するかを選択するようにしているため、柔軟にバス使用権を与えるＰＣＩマスタを選択するアルゴリズムを選択することができる。
【００９０】
（実施の形態２）
図４〜図６を参照して本発明の実施の形態２を説明する。図４は、本発明におけるＰＣＩバス使用権調停装置が適用されるシステムの実施の形態２の構成を示すブロック図である。図４に示した実施の形態２のシステムは、先の図１に示した実施の形態１のシステムに従来のＰＣＩバス使用権調停装置である既存のアービタ３１が追加され、調停信号生成部２９の代わりに、調停信号生成部２９の機能に既存のアービタ３１と接続するインタフェース機能が追加された調停信号生成部２９ａを有するＰＣＩバス使用権調停装置であるアービタ１５ａを備えている。先の図１に示した実施の形態１のシステムと同じ機能を持つ構成部分には同一符号を付し、重複する説明は省略する。
【００９１】
調停信号生成部２９ａは、調停モード設定部２８に記憶されている調停モード、連続バス使用権回数比較部２４から入力される比較結果、ターミネーション監視部２５から入力される監視結果、および連続転送時間比較部２７から入力される比較結果に基づいて、従来のＰＣＩバス使用権調停処理、または連続ＰＣＩマスタ使用権調停処理によってＰＣＩマスタ１２〜１４にバス使用権を与える先の実施の形態１の調停信号生成部２９の機能に加え、既存のアービタ３１に対してリクエスト番号（ＲＥＱ＃）信号を出力するとともに、既存のアービタ３１からのグラント番号（ＧＮＴ＃）信号を受信するインタフェース機能を備えている。
【００９２】
なお、図４に示したシステムにおいては、アービタ１５ａはＰＣＩマスタ１２〜１４とは別のデバイスであり、ＰＣＩマスタ１２〜１４の外部に存在しているが、図５に示すように、アービタ１５ａがＰＣＩマスタを含むデバイスの内部に存在してもかまわない。図５においては、アービタ１５ａは、ＰＣＩマスタデバイス４１の内部にＰＣＩマスタ１４とともに存在している。
【００９３】
つぎに、図６のフローチャート、および図４を参照して、本発明におけるＰＣＩバス使用権装置が適用されるシステムの実施の形態２の動作を説明する。なお、この実施の形態２のＰＣＩバス使用権装置が適用されるシステムのバス使用権の遷移動作は、先の実施の形態１のＰＣＩバス使用権装置が適用されるシステムと同じであり、相違点は既存のアービタ３１のインタフェース機能の有無であるので、アービタ３１とのインタフェースに関する動作に着目して説明する。
【００９４】
調停信号生成部２９ａは、ＰＣＩマスタ１２〜１４からのリクエスト番号（ＲＥＱ＃）信号を監視する（ステップ１１）。ＰＣＩマスタ１２〜１４からのリクエスト番号（ＲＥＱ＃）信号の少なくとも１つがアサートになると（ステップ１１，Ｙｅｓ）、調停信号生成部２９ａは、アサートになったリクエスト番号（ＲＥＱ＃）信号が現在バス使用権を与えているＰＣＩマスタ１２〜１４からのリクエスト番号（ＲＥＱ＃）信号であるか否かを判定する（ステップ１２）。
【００９５】
アサートになったリクエスト番号（ＲＥＱ＃）信号が現在バス使用権を与えているＰＣＩマスタ１２〜１４からのリクエスト番号（ＲＥＱ＃）信号ではない場合（ステップ１２，Ｎｏ）、調停信号生成部２９ａは、既存のアービタ３１に対するリクエスト番号（ＲＥＱ＃）信号、およびＰＣＩマスタ１２〜１４に対するグラント番号（ＧＮＴ＃）信号の何れもアサートにすることなく、ステップ１１に戻ってＰＣＩマスタ１２〜１４からのリクエスト番号（ＲＥＱ＃）信号を監視する。
【００９６】
アサートになったリクエスト番号（ＲＥＱ＃）信号が現在バス使用権を与えているＰＣＩマスタ１２〜１４からのリクエスト番号（ＲＥＱ＃）信号の場合（ステップ１１，Ｙｅｓ）、調停信号生成部２９ａは、既存のアービタ３１にリクエスト番号（ＲＥＱ＃）信号をアサートし（ステップ１３）、既存のアービタ３１からのグラント番号（ＧＮＴ＃）信号を監視する（ステップ１４）。
【００９７】
既存のアービタ３１からのグラント番号（ＧＮＴ＃）信号がアサートになる（ステップ１５）、調停信号生成部２９ａは、現在バス使用権を与えているＰＣＩマスタ１２〜１４に対するグラント番号（ＧＮＴ＃）信号をアサートにし（ステップ１５）、ステップ１１に戻ってＰＣＩマスタ１２〜１４からのリクエスト番号（ＲＥＱ＃）信号を監視する。
【００９８】
このように、この実施の形態２においては、調停信号生成部２９ａが、自装置とは異なる既存のＰＣＩバス使用権調停装置である既存のアービタ３１と接続するインタフェース機能を有し、調停信号生成部２９ａが選択したＰＣＩマスタ１２〜１４からのリクエスト番号（ＲＥＱ＃）信号を既存のアービタ３１に出力するとともに、既存のアービタ３１からのグラント番号（ＧＮＴ＃）信号を選択したＰＣＩマスタ１２〜１４に対して出力するようにしているため、既存のＰＣＩバスのシステムに接続することができる。
【産業上の利用可能性】
【００９９】
以上のように、本発明にかかるＰＣＩバス使用権調停装置は、ＰＣＩバスに接続されるＰＣＩマスタが連続してバス使用権を必要とするシステムに有用であり、特に、画像処理デバイスなど高速なデータ転送が要求されるシステムに適している。
【図面の簡単な説明】
【０１００】
【図１】本発明におけるＰＣＩバス使用権調停装置が適用されるシステムの実施の形態１の構成を示すブロック図
【図２】ＰＣＩバス使用権調停装置が用いる連続ＰＣＩバス使用権調停アルゴリズムによるバス使用権の状態遷移図
【図３】本発明におけるＰＣＩバス使用権調停装置が適用されるシステムの実施の形態１の動作を説明するためのフローチャート
【図４】本発明におけるＰＣＩバス使用権調停装置が適用されるシステムの実施の形態２の構成を示すブロック図
【図５】本発明におけるＰＣＩバス使用権調停装置が適用されるシステムの実施の形態２の別の構成を示すブロック図
【図６】本発明におけるＰＣＩバス使用権装置が適用されるシステムの実施の形態２の動作を説明するためのフローチャート
【図７】従来のＰＣＩバス使用権調停装置が適用されるシステムの構成を示すブロック図
【図８】従来のＰＣＩバス使用権調停装置が用いるＰＣＩバス使用権調停アルゴリズムによるバス使用権の状態遷移図
【符号の説明】
【０１０１】
１１，１０１    ＰＣＩバス
１２，１３，１４，１０２，１０３，１０４    ＰＣＩマスタ
１５，１５ａ，１０５    アービタ
２２    連続バス使用回数記憶部
２３    連続バス使用権カウント部
２４    連続バス使用権回数比較部
２５    ターミネーション監視部
２６    連続転送時間カウント部
２７    連続転送時間比較部
２８    調停モード設定部
２９，２９ａ    調停信号生成部
３０    連続転送時間設定部
３１    既存のアービタ
４１    ＰＣＩマスタデバイス
【図１】
2008071019.tif 000003
【図２】
2008071019.tif 000004
【図３】
2008071019.tif 000005
【図４】
2008071019.tif 000006
【図５】
2008071019.tif 000007
【図６】
2008071019.tif 000008
【図７】
2008071019.tif 000009
【図８】
2008071019.tif 000010