(57)【要約】ホスト装置の給電能力に合わせてデバイスの消費電流を調整することができるホスト装置。ホスト装置（１１）には、複数の通信ポート（Ｐ１〜Ｐ３）が設けられ、各通信ポート（Ｐ１〜Ｐ３）にデバイス（２１〜２３）が接続される。ホスト装置（１１）のホストコントローラ（１４）は、各デバイス（２１〜２３）との間で通信を行い、各デバイス（２１〜２３）の消費電流を含む機器情報を取得する。電流供給回路（１５）は、各通信ポート（Ｐ１〜Ｐ３）に接続されているデバイス（２１〜２３）に電流を供給する。ＭＰＵ（１２）は、通信ポート（Ｐ１〜Ｐ３）に新たに接続されたデバイスの消費電流と既に接続認識済みのデバイスの消費電流との合計値が電流供給回路（１５）の供給可能な電流を越えるとき、電流供給回路（１５）からデバイス（２１〜２３）に供給する供給電流を変更する。【特許請求の範囲】
【請求項１】
シリアル通信を行うための複数のバスを介した給電により複数のデバイスを動作させるホスト装置であって、
前記複数のデバイスを接続するための複数の通信ポートと、
前記複数の通信ポートに接続され、前記複数のデバイスとの間での通信によって、前記複数のデバイスの消費電流を含む複数の機器情報を前記複数のデバイスから取得する通信回路と、
前記複数の通信ポートに接続され、前記複数のデバイスに電流を供給する電流供給回路と、
前記通信回路と前記電流供給回路に接続され、前記複数の通信ポートに新たに接続されたデバイスの消費電流と既に接続認識済みのデバイスの消費電流との合計値が前記電流供給回路の供給可能な電流を越えるとき、前記電流供給回路から前記複数のデバイスに供給する供給電流を変更する制御回路と
を備えたことを特徴とするホスト装置。
【請求項２】
前記制御回路は、新たに接続されたデバイス及び接続認識済みのデバイスに対して、供給電流の分配を変更することを特徴とする請求項１に記載のホスト装置。
【請求項３】
前記通信回路は、前記電流供給回路の供給可能な電流値を前記複数のデバイスに送信する機能を持つことを特徴とする請求項１又は２に記載のホスト装置。
【請求項４】
前記バスはユニバーサルシリアルバスであり、
前記通信回路は、そのバス規格に準拠したコマンドを利用して前記供給可能な電流値を前記複数のデバイスに送信し、各デバイスから返信されるＡＣＫパケットとＳＴＡＬＬパケットとのいずれかを受信し、
前記制御回路は、前記通信回路で受信したパケットに基づいて、各デバイスが動作可能であるか否かを判定し、動作可能であるデバイスへの供給電流を変更することを特徴とする請求項３に記載のホスト装置。
【請求項５】
シリアル通信を行うための複数のバスを介した給電により複数のデバイスを動作させるホスト装置であって、
前記複数のデバイスを接続するための複数の通信ポートと、
前記複数の通信ポートに接続され、前記複数のデバイスとの間での通信によって、複数のデバイスの消費電流を含む複数の機器情報を取得する通信回路と、
前記通信回路に接続され、前記複数の機器情報と、各通信ポートに接続されている複数のデバイスを使用状態とするか未使用状態とするかをユーザに選択させるための選択情報とを表示する表示装置と、
前記通信回路及び表示装置に接続され、前記複数のデバイスの消費電流と前記選択情報に基づくユーザの選択結果とに従って、前記通信ポート毎に各デバイスの供給電流を制御する制御回路と
を備えたことを特徴とするホスト装置。
【請求項６】
シリアル通信を行うためのバスを介してホスト装置から電源を受け取り動作するデバイスであって、
前記バスを介して前記ホスト装置と通信を行うための通信回路を含み、該通信回路で送受信される通信データに基づいて動作する内部回路と、
前記内部回路に接続され、前記デバイスが前記ホスト装置に接続される時に、前記内部回路の消費電流が前記ホスト装置の供給可能な電流を超えるとき、前記消費電流を低減する制御回路と
を備えたことを特徴とするデバイス。
【請求項７】
前記通信回路に接続され、前記制御回路が消費電流を低減した後に前記バスと前記通信回路との接続を一時的に切断するスイッチユニットをさらに備えたことを特徴とする請求項６に記載のデバイス。
【請求項８】
前記バスはユニバーサルシリアルバスであり、
前記通信回路は、ユニバーサルシリアルバス規格に準拠したデータ通信により前記内部回路の消費電流値を前記ホスト装置に送信し、
前記制御回路は、前記デバイスの起動を要求する要求コマンドが前記ホスト装置から発行されたか否かを判定し、前記要求コマンドが発行されないときに前記内部回路の消費電流を低減することを特徴とする請求項６又は７に記載のデバイス。
【請求項９】
前記バスはユニバーサルシリアルバスであり、
前記通信回路は、ユニバーサルシリアルバス規格に準拠したデータ通信により前記内部回路の消費電流値を前記ホスト装置に送信し、
前記制御回路は、前記ホスト装置から供給可能な電流が通知されたときに、前記供給可能な電流に合わせて前記内部回路の消費電流を低減することを特徴とする請求項６又は７に記載のデバイス。
【請求項１０】
前記制御回路に接続され、前記内部回路の消費電流値を設定する設定ユニットを、さらに備え、
前記制御回路は、前記設定ユニットの設定値に応じて前記内部回路の消費電流を変更することを特徴とする請求項６〜９のいずれか一項に記載のデバイス。
【請求項１１】
前記制御回路に接続され、前記制御回路が前記内部回路の消費電流を低減することが不可能であると判定したときに、前記バスから供給される供給電流の電流経路を切断するスイッチ回路を、さらに備えたことを特徴とする請求項６〜１０のいずれか一項に記載のデバイス。
【請求項１２】
シリアル通信を行うための複数のバスを介してホスト装置から複数のデバイスに給電し前記複数のデバイスを動作させる通信システムの制御方法であって、
前記ホスト装置が、各デバイスの消費電流を含む機器情報を前記複数のデバイスから取得するステップと、
前記ホスト装置に新たに接続されたデバイスの消費電流と既に接続認識済みのデバイスの消費電流との合計値が前記ホスト装置の供給可能な電流を越えるとき、前記ホスト装置が、前記供給可能な電流に対応して各デバイスに供給する供給電流の配分を変更するステップと
を備えたことを特徴とする通信システムの制御方法。
【請求項１３】
シリアル通信を行うためのバスを介してホスト装置からデバイスに給電し前記デバイスを動作させる通信システムの制御方法であって、
前記デバイスは、前記ホスト装置と通信を行うための通信回路を含み該通信回路で送受信される通信データに基づいて動作する内部回路を有し、
前記内部回路で消費する消費電流が前記ホスト装置の供給可能な電流を超えるとき、前記デバイスがその供給可能な電流に合わせて前記内部回路の消費電流を低減するステップを備えたことを特徴とする通信システムの制御方法。
【請求項１４】
シリアル通信を行うための複数のバスを介してホスト装置から複数のデバイスに給電し前記複数のデバイスを動作させる通信システムの制御方法であって、
前記ホスト装置が、前記複数のデバイスの消費電流を含む機器情報を前記複数のデバイスから取得するステップと、
前記ホスト装置に設けられた表示装置に、前記各デバイスの機器情報と、該各デバイスを使用状態とするか未使用状態とするかをユーザに選択させるための選択情報とを表示するステップと、
前記機器情報に含まれる消費電流と前記選択情報に基づくユーザの選択結果とに従って、前記各デバイスへの供給電流を制御するステップと
を備えたことを特徴とする通信システムの制御方法。
【請求項１５】
前記表示装置は、ＧＵＩに対応した表示画面を表示し、
前記表示するステップは、前記表示画面に前記選択情報である選択ボタンを表示することを含み、
前記制御するステップは、ユーザのマウス操作によって選択された前記選択ボタンに応じて前記各デバイスへの供給電流を制御することを含むことを特徴とする請求項１４に記載の通信システムの制御方法。
【請求項１６】
前記表示するステップは、前記表示装置に、前記ホスト装置が供給可能な許容電流と、該ホスト装置から各デバイスに供給している使用電流と、前記許容電流から使用電流を減算した余裕電流とを表示することを含むことを特徴とする請求項１４又は１５に記載の通信システムの制御方法。
【請求項１７】
前記複数のデバイスは前記ホスト装置に設けられた複数の通信ポートに接続され、前記複数の通信ポートのいずれかに通信を中継する中継デバイスが接続され、
前記表示するステップは、前記中継デバイスを介して複数のデバイスが接続される場合、前記表示装置に、各通信ポートに直接、接続された各デバイスの機器情報に関するステータスウインドウと、前記中継デバイスを介して接続された各デバイスの機器情報に関するステータスウインドウとを別々に表示することを含むことを特徴とする請求項１４〜１６のいずれか一項に記載の通信システムの制御方法。
【請求項１８】
前記複数のバスの各々はユニバーサルシリアルバスであり、
前記シリアル通信は、ユニバーサルシリアルバス規格に準拠したデータ通信を含むことを特徴とする請求項１２〜１７のいずれか一項に記載の通信システムの制御方法。
【請求項１９】
シリアル通信を行うための複数のバスを介した給電により複数のデバイスを動作させるホスト装置であって、
前記複数のデバイスを接続するための複数の通信ポートと、
前記複数の通信ポートに接続され、前記複数のデバイスとの間での通信によって、複数のデバイスの消費電流を含む複数の機器情報を取得する通信回路と、
前記通信回路に接続され、未使用状態にあるデバイスを使用状態に変更することによって増加する消費電流量が前記電流供給回路の供給可能な電流を超えるときに、前記電流供給回路から接続された複数のデバイスに供給する電流量を変更する制御回路と、
を備えたことを特徴とするホスト装置。
【請求項２０】
前記複数の機器情報と、各通信ポートに接続されている複数のデバイスを使用状態とするか未使用状態とするかをユーザに選択させるための選択情報とを表示する表示装置を含み、
前記制御回路は前記表示装置と接続され、前記複数のデバイスの消費電流と前記選択情報に基づくユーザの選択結果とに従って、前記通信ポート毎に各デバイスの供給電流を制御することを特徴とする請求項１９に記載のホスト装置。
【請求項２１】
前記制御回路は、消費電流量が前記電流供給回路の供給可能な電流を超えるときにその旨を示す情報と、前記未使用状態のデバイスを使用状態に変更する処理の継続・停止を選択するための選択情報とを含む警告情報を前記表示装置に表示させ、前記処理の継続が選択された場合には前記デバイスに対する電流供給が可能になるまで待機し、前記処理の停止が選択された場合には前記デバイスを使用する処理を中断する、ことを特徴とする請求項１９又は２０に記載のホスト装置。
【請求項２２】
前記制御回路は、前記電流量の変更に先だって前記機器情報を待避するとともに、前記使用したデバイスに対する電流量を所定の電流量に変更した後に前記待避した機器情報を復帰させることを特徴とする請求項１９〜２１のうちの何れか一項に記載のホスト装置。
【請求項２３】
前記各デバイスにおいて動作中か否かを示すファンクション実行フラグを備え、
前記制御回路は、前記ファンクション実行フラグに基づいて、前記動作中ではないデバイスに供給される電流量を削減することを特徴とする請求項１９〜２２のうちの何れか一項に記載のホスト装置。
【請求項２４】
動作を終了したデバイスのファンクション実行フラグを停止状態に変更することを特徴とする請求項２３に記載のホスト装置。
【請求項２５】
ファンクション実行フラグが停止状態にあるデバイスに供給する電流量を削減することを特徴とする請求項２３に記載のホスト装置。
【請求項２６】
シリアル通信を行うための複数のバスを介してホスト装置から複数のデバイスに給電し前記複数のデバイスを動作させる通信システムの制御方法であって、
前記ホスト装置が、前記複数のデバイスの消費電流を含む機器情報を前記複数のデバイスから取得するステップと、
前記ホスト装置が、未使用状態にあるデバイスの要求値に応じた電流の供給が可能か否かを判断するステップと、
前記電流の供給が不可能な場合に前記電流供給回路から接続された複数のデバイスに供給する電流量を変更するステップと、
を備えたことを特徴とする通信システムの制御方法。
【請求項２７】
前記ホスト装置に設けられた表示装置に、前記複数の機器情報と、各通信ポートに接続されている複数のデバイスを使用状態とするか未使用状態とするかをユーザに選択させるための選択情報とを表示するステップと、
前記複数のデバイスの消費電流と前記選択情報に基づくユーザの選択結果とに従って、前記通信ポート毎に各デバイスの供給電流を制御するステップと、
を含むことを特徴とする請求項２７に記載の通信システムの制御方法。
【請求項２８】
前記ホスト装置に設けられた表示装置に、消費電流量が前記電流供給回路の供給可能な電流を超えるときにその旨を示す情報と、前記未使用状態のデバイスを使用状態にする処理の継続・停止を選択するための選択情報とを含む警告情報とを前記表示装置に表示させるステップと、
前記処理の継続が選択された場合には前記デバイスに対する電流供給が可能になるまで待機するステップと、
前記処理の停止が選択された場合には前記デバイスを使用する処理を中断するステップと、
を含むことを特徴とする請求項２６又は２７に記載の通信システムの制御方法。
【請求項２９】
前記制御回路は、前記電流量の変更に先だって前記機器情報を待避するステップを実行し、前記使用したデバイスに対する電流量を所定の電流量に変更した後に前記待避した機器情報を復帰するステップを実行することを特徴とする請求項２６〜２８のうちの何れか一項に記載の通信システムの制御方法。
【請求項３０】
前記各デバイスにおいて動作中か否かを示すファンクション実行フラグを備え、
前記制御回路は、前記ファンクション実行フラグに基づいて、前記動作を実行中ではないデバイスに供給される電流量を削減するステップを含むことを特徴とする請求項２６〜２９のうちの何れか一項に記載の通信システムの制御方法。
【請求項３１】
動作を終了したデバイスのファンクション実行フラグを停止状態に変更するステップを含むことを特徴とする請求項３０に記載の通信システムの制御方法。
【請求項３２】
ファンクション実行フラグが停止状態にあるデバイスに供給される電流量を削減するステップを含むことを特徴とする請求項３０に記載の通信システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、ホスト装置と複数のデバイスとがシリアル通信を行うためのバスを介して接続され、該ホスト装置のバス給電によって各デバイスを動作させる通信システムに用いられるホスト装置、デバイス、通信システムの制御方法に関する。【０００２】  パーソナルコンピュータの分野では、シリアルバスインターフェース規格であるＵＳＢ２．０／１．１の規格に準拠したＵＳＢ（ユニバーサルシリアルバス）インターフェースを持つ周辺機器（デバイス）が世界標準となりつつあり、今後もその普及の勢いは止まらない状況となっている。ＵＳＢ規格ではポート毎にＵＳＢケーブルを経由して最大５００ｍＡ迄の電流を供給する能力を規定しており、各デバイスがケーブル給電により動作できるようになっている。つまり、ＵＳＢインターフェースによりデータ通信を行う通信システムでは、ホスト機能を持つコンピュータ（ホスト装置）からデバイスにＵＳＢケーブルを介して給電しデバイスを駆動させている。近年では、ＵＳＢインターフェースで通信可能なデバイスの普及によって、多くのデバイスがＵＳＢインターフェースを介してホスト装置に接続されるようになってきている。その通信システムにおいて、ホスト装置に接続されるデバイスが多くなり、ホスト装置側の能力（供給可能な電流）を越えた無理な電力消費が各デバイスで行われると、システム全体が動作不安定になってしまうため、それを回避するための技術が必要となっている。
【背景技術】
【０００３】  ホスト装置とデバイスとをＵＳＢインターフェースで接続する通信システムでは、ホスト装置に電源が投入された状態で各デバイスの接続及び取り外しが可能であり、接続すれば瞬時にデバイスの認識が行われてそのデバイスを使用することができる。すなわち、その通信システムにおいて、新規のデバイスがホスト装置に接続されたときには、接続された新規デバイスを認識するためにホスト装置とデバイスとの間でネゴシエーションが行われる。【０００４】  図４０は、新規に接続されたデバイスを認識するためにホスト装置が実行する処理を示すフローチャートである。
ホスト装置は、先ず、ステップ１において、デバイスの機器情報を要求するための要求コマンドをデバイスに発行し、その要求コマンドに応答してデバイスが送出した機器情報を取得する。なお、供給コマンドを発行する時点では、接続されたデバイスに対して１００ｍＡの電流がＵＳＢケーブルを介して供給され、そのデバイスではネゴシエーションを行うための機能ブロックが活性化されている。【０００５】  ステップ１で取得した機器情報には、デバイスを駆動するために必要となる最大消費電流に関する情報を含み、ホスト装置は、ステップ２に移行して、その最大消費電流を供給することが可能か否かを判定する。ここで、ホスト装置は、供給可能な電流であると判定した場合、ステップ３に移行して、接続されたデバイスを使用可能なデバイスとして認識して、そのデバイスに対してバス給電（バスによる電源供給）を開始する。一方、ステップ２において、ホスト装置は、デバイスの最大消費電流が供給不可能な電流であると判定した場合は、接続されたデバイスを使用可能なデバイスとして認識しない。【０００６】  このように、接続されたデバイスの最大消費電流がホスト装置の供給能力を超える場合には、そのデバイスはホスト装置で認識されず、結果としてホスト装置と通信できなくなってしまう。【０００７】  また、上記の通信システムでは、ホスト装置が該システムのネットワークに接続されている全てのデバイスを制御している。つまり、接続されている各デバイスはホスト装置からの指示に応答してデータ転送等の動作を行い、ホスト装置からの指示がない場合には動作することができない。【０００８】  図４１に示すように、ＵＳＢインターフェースを用いたデータ転送は、トランザクションと呼ばれる単位で行われ、そのトランザクションは複数のパケットで構成される。すなわち、データ転送は、ホスト装置から送出されるトークンパケットによって開始され、デバイスはそのトークンパケットに応答してデータパケットやハンドシェークパケットを返すといった通信形態をとる。そのため、デバイスは、ホスト装置の要求を無視して何らかの情報を伝えることはできない。【０００９】  デバイスには、最大消費電流を低減しその状態で動作できる機能（低消費電力モード等の機能）を持つものがあるが、接続時にその低減した消費電流の情報（自身が低消費電力モードの機能を持つといった情報）をホスト装置に通知することができない。なお、低消費電力モードの機能の具体例としては、例えば、ディスク装置の場合ではディスク回転数を低減することでモータの消費電力を抑える機能であり、プリンタやスキャナの場合では印刷速度やスキャニング速度を遅くしてモータの消費電力を抑える機能である。【００１０】  上述したように、ＵＳＢのケーブルによるバス給電が可能であるか否は、ホスト装置側で一方的に判断されてしまう。そのため、バス給電が不可能と判断されると、接続されたデバイスが消費電流を低減してバス給電による動作が可能となる場合でも、それをホスト装置に通知することができず、デバイスを起動させることができないといった問題がある。【００１１】  また、その場合に新たなデバイスを使いたい時には、他のデバイスのＵＳＢケーブルを抜い���後に新たなデバイスのＵＳＢケーブルを差し込むといったケーブルの抜き差しを行うか、デバイスに電源ケーブルを接続しなければならないといった煩わしい作業が必要となっていた。【００１２】  因みに、ホスト装置とデバイスとをＵＳＢインターフェースで接続し、ホスト装置からのバス給電によりデバイスを動作させる通信システムが、特許文献１等で開示されている。特許文献１等においても、上記の問題を回避するための技術は提案されていない。【００１３】  本発明の目的は、ホスト装置からのバス給電により複数のデバイスを動作させる通信システムにおいて、ホスト装置の給電能力に合わせてデバイスの消費電流を調整することができるホスト装置、デバイス、及び通信システムの制御方法を提供することにある。
【特許文献１】特開平２００１−２４２９６５号公報
【発明の開示】
【００１４】  本発明の第１の態様において、ホスト装置が提供される。シリアル通信を行うための複数のバスを介した給電により複数のデバイスを動作させるホスト装置であって、ホスト装置は、前記複数のデバイスを接続するための複数の通信ポートと、前記複数の通信ポートに接続され、前記複数のデバイスとの間での通信によって、前記複数のデバイスの消費電流を含む複数の機器情報を前記複数のデバイスから取得する通信回路と、前記複数の通信ポートに接続され、前記複数のデバイスに電流を供給する電流供給回路と、前記通信回路と前記電流供給回路に接続され、前記複数の通信ポートに新たに接続されたデバイスの消費電流と既に接続認識済みのデバイスの消費電流との合計値が前記電流供給回路の供給可能な電流を越えるとき、前記電流供給回路から前記複数のデバイスに供給する供給電流を変更する制御回路とを備える。
【００１５】  本発明の第２の態様において、ホスト装置が提供される。シリアル通信を行うための複数のバスを介した給電により複数のデバイスを動作させるホスト装置であって、ホスト装置は、前記複数のデバイスを接続するための複数の通信ポートと、前記複数の通信ポートに接続され、前記複数のデバイスとの間での通信によって、複数のデバイスの消費電流を含む複数の機器情報を取得する通信回路と、前記複数の機器情報と、各通信ポートに接続されている複数のデバイスを使用状態とするか未使用状態とするかをユーザに選択させるための選択情報とを表示する表示装置と、前記通信回路及び表示装置に接続され、前記複数のデバイスの消費電流と前記選択情報に基づくユーザの選択結果とに従って、前記通信ポート毎に各デバイスの供給電流を制御する制御回路とを備える。
【００１６】  本発明の第３の態様において、デバイスが提供される。シリアル通信を行うためのバスを介してホスト装置から電源を受け取り動作するデバイスであって、デバイスは、前記バスを介して前記ホスト装置と通信を行うための通信回路を含み、該通信回路で送受信される通信データに基づいて動作する内部回路と、前記内部回路に接続され、前記デバイスが前記ホスト装置に接続される時に、前記内部回路の消費電流が前記ホスト装置の供給可能な電流を超えるとき、前記消費電流を低減する制御回路とを備える。
【００１７】  本発明の第４の態様において、通信システムの制御方法が提供される。シリアル通信を行うための複数のバスを介してホスト装置から複数のデバイスに給電し前記複数のデバイスを動作させる通信システムの制御方法であって、制御方法は、前記ホスト装置が、各デバイスの消費電流を含む機器情報を前記複数のデバイスから取得するステップと、前記ホスト装置に新たに接続されたデバイスの消費電流と既に接続認識済みのデバイスの消費電流との合計値が前記ホスト装置の供給可能な電流を越えるとき、前記ホスト装置が、前記供給可能な電流に対応して各デバイスに供給する供給電流の配分を変更するステップとを備える。
【００１８】  本発明の第５の態様において、通信システムの制御方法が提供される。シリアル通信を行うためのバスを介してホスト装置からデバイスに給電し前記デバイスを動作させる通信システムの制御方法であって、前記デバイスは、前記ホスト装置と通信を行うための通信回路を含み該通信回路で送受信される通信データに基づいて動作する内部回路を有し、該制御方法は、前記内部回路で消費する消費電流が前記ホスト装置の供給可能な電流を超えるとき、前記デバイスがその供給可能な電流に合わせて前記内部回路の消費電流を低減するステップを備える。
【００１９】  本発明の第６の態様において、通信システムの制御方法が提供される。シリアル通信を行うための複数のバスを介してホスト装置から複数のデバイスに給電し前記複数のデバイスを動作させる通信システムの制御方法であって、制御方法は、前記ホスト装置が、前記複数のデバイスの消費電流を含む機器情報を前記複数のデバイスから取得するステップと、前記ホスト装置に設けられた表示装置に、前記各デバイスの機器情報と、該各デバイスを使用状態とするか未使用状態とするかをユーザに選択させるための選択情報とを表示するステップと、前記機器情報に含まれる消費電流と前記選択情報に基づくユーザの選択結果とに従って、前記各デバイスへの供給電流を制御するステップとを備える。
【００２０】  本発明の第７の態様において、ホスト装置が提供される。シリアル通信を行うための複数のバスを介した給電により複数のデバイスを動作させるホスト装置であって、前記複数のデバイスを接続するための複数の通信ポートと、前記複数の通信ポートに接続され、前記複数のデバイスとの間での通信によって、複数のデバイスの消費電流を含む複数の機器情報を取得する通信回路と、前記通信回路に接続され、未使用状態にあるデバイスを使用状態にすることによって増加する消費電流量が前記電流供給回路の供給可能な電流を超えるときに前記電流供給回路から接続された複数のデバイスに供給する電流量を変更する制御回路と、を備える。
【００２１】  本発明の第８の態様において、通信システムの制御方法が提供される。シリアル通信を行うための複数のバスを介してホスト装置から複数のデバイスに給電し前記複数のデバイスを動作させる通信システムの制御方法であって、前記ホスト装置が、前記複数のデバイスの消費電流を含む機器情報を前記複数のデバイスから取得するステップと、前記ホスト装置が、未使用状態にあるデバイスの要求値に応じた電流の供給が可能か否かを判断するステップと、前記電流の供給が不可能な場合に前記電流供給回路から接続された複数のデバイスに供給する電流量を変更するステップと、を備える。
【図面の簡単な説明】
【００２２】
【図１】本発明の第１実施形態にかかるホスト装置の概略的なブロック回路図である。
【図２】新規デバイスを接続認識するための処理を示すフローチャートである。
【図３】ホスト装置と各デバイスとの間で行われるネゴシエーションを示す説明図である。
【図４】ホスト装置と各デバイスとの間で行われるネゴシエーションを示す説明図である。
【図５】ホスト装置と各デバイスとの間で行われるネゴシエーションを示す説明図である。
【図６】ホスト装置と各デバイスとの間で行われるネゴシエーションを示す説明図である。
【図７】ホスト装置と各デバイスとの間で行われるネゴシエーションを示す説明図である。
【図８】ホスト装置と各デバイスとの間で行われるネゴシエーションを示す説明図である。
【図９】本発明の第２実施形態にかかるデバイスの概略的なブロック回路図である。
【図１０】スイッチユニットの回路図である。
【図１１】第２実施形態の接続認識処理を示すフローチャートである。
【図１２】本発明の第３実施形態にかかるデバイスの概略的なブロック回路図である。
【図１３】第３実施形態の接続認識処理を示すフローチャートである。
【図１４】本発明の第４実施形態の接続認識処理を示すフローチャートである。
【図１５】本発明の第５実施形態にかかるホスト装置の概略的なブロック回路図である。
【図１６】ホスト装置への各デバイスの接続状態を示すブロック回路図である。
【図１７】ステータスウインドウを示す説明図である。
【図１８】ホスト装置への各デバイスの接続状態を示すブロック回路図である。
【図１９】ステータスウインドウを示す説明図である。
【図２０】ステータスウインドウを示す説明図である。
【図２１】ステータスウインドウを表示するための処理を示すフローチャートである。
【図２２】Ｈｕｂにおける各デバイスの接続状態を示す説明図である。
【図２３】Ｈｕｂのステータスウインドウを示す説明図である。
【図２４】Ｈｕｂにおける各デバイスの接続状態を示す説明図である。
【図２５】Ｈｕｂのステータスウインドウを示す説明図である。
【図２６】Ｈｕｂにおける各デバイスの接続状態を示す説明図である。
【図２７】Ｈｕｂのステータスウインドウを示す説明図である。
【図２８】スイッチユニットの別例を示す回路図である。
【図２９】本発明の第６実施形態にかかるホスト装置の概略的なブロック回路図である。
【図３０】第６実施形態のデバイス制御処理を示すフローチャートである。
【図３１】ステータスウインドウを示す説明図である。
【図３２】ステータスウインドウを示す説明図である。
【図３３】ステータスウインドウを示す説明図である。
【図３４】本発明の第７実施形態にかかるホスト装置の概略的なブロック回路図である。
【図３５】第７実施形態のデバイス制御処理を示すフローチャートである。
【図３６】ファンクション実行フラグの状態を示す説明図である。
【図３７】本発明の第８実施形態のデバイス制御処理を示すフローチャートである。
【図３８】第８実施形態のデバイス制御処理を示すフローチャートである。
【図３９】警告スウインドウを示す説明図である。
【図４０】新規デバイスを接続認識するための処理を示すフローチャートである。
【図４１】ＵＳＢのデータ転送を説明するための説明図である。
【発明を実施するための最良の形態】
【００２３】  以下、本発明を具体化した第１実施形態を図面に従って説明する。図１は、第１実施形態におけるホスト装置１１の概略的なブロック回路図である。【００２４】  ホスト装置（具体的には、パーソナルコンピュータ）１１は、ＭＰＵ１２、メモリ１３、ホストコントローラ１４、電流供給回路１５、及び電流監視回路１６を含む。ホスト装置１１において、ＭＰＵ１２は、メモリ１３、ホストコントローラ１４、及び電流供給回路１５に内部バス１７を介して接続され、相互にデータの授受が行われる。ホスト装置１１には、ＵＳＢインターフェースを構成する３つの通信ポートＰ１〜Ｐ３が設けられており、各通信ポートＰ１〜Ｐ３に第１〜第３のデバイス２１〜２３がＵＳＢケーブルＣ１を介して接続される。各デバイス２１〜２３は、ホスト装置１１からＵＳＢケーブルＣ１を介して給電されて動作するバスパワーデバイスである。【００２５】  制御回路であるＭＰＵ１２は、メモリ１３に格納されたプログラムに従って各種の処理を実行し、ホスト装置１１を統括的に制御する。メモリ１３に格納されるプログラムとしては通信プログラムを含み、その通信プログラムによってホストコントローラ１４や電流供給回路１５が制御される。【００２６】  ホストコントローラ１４は、ＵＳＢ規格に準拠した通信回路であり、各デバイス２１〜２３との間の通信を制御する。ホストコントローラ１４は、各通信ポートＰ１〜Ｐ３、及びＵＳＢケーブルＣ１を介して第１〜第３のデバイス２１〜２３に接続されている。ホストコントローラ１４にはレジスタ１４ａが設けられており、該レジスタ１４ａに各デバイス２１〜２３から取得した機器情報が格納される。具体的に、ホスト装置１１は、各デバイス２１〜２３が通信ポートＰ１〜Ｐ３に接続されたとき、その接続認識のための処理（デバイス２１〜２３との間でネゴシエーション）を行い、それにより得られた機器情報（装置名や最大消費電流を含む情報）をホストコントローラ１４のレジスタ１４ａに格納する。【００２７】  電流供給回路１５は、レジスタ１４ａの機器情報に含まれる最大消費電流に応じた電流を、通信ポートＰ１〜Ｐ３及びＵＳＢケーブルＣ１を介して各デバイス２１〜２３に供給する。第１実施形態では、電流供給回路１５と各通信ポートＰ１〜Ｐ３とを結ぶ電流経路の途中にスイッチ回路２５が設けられている。【００２８】  電流監視回路１６は、通信ポートＰ１〜Ｐ３に流れる電流を検出し、通信ポートＰ１〜Ｐ３を介してデバイス２１〜２３に所定値以上の過電流（各デバイスの最大消費電流を越えた電流）が流れないように監視する。電流監視回路１６は、過電流を検出するとスイッチ回路２５をオフして電流供給回路１５と通信ポートＰ１〜Ｐ３とを電気的に遮断する。これにより、例えば、デバイス２１が故障して過電流が流れたときに、該デバイス２１への電流経路が遮断され、過電流が流れ続けることが回避される。その結果、ホスト装置１１と各デバイス２２，２３とで構成される通信システムの動作が不安定な状態になることが防止される。【００２９】  次に、ホスト装置１１のＭＰＵ１２が実行する通信処理のうち新規デバイスの接続を認識するための処理について図２のフローチャートに従い説明する���なお、図２の処理は、ホスト装置１１にデバイス２１〜２３のいずれかが接続されたときに開始される。ここでは、第１及び第２のデバイス２１，２２がホスト装置１１に接続認識されている状態で第３のデバイス２３が新たに接続された場合を一例として説明する。【００３０】  ホスト装置１１の通信ポートＰ３にデバイス２３が接続されると、ＭＰＵ１２は、先ず、ステップ１００でバスリセットをした後、続くステップ１１０に移行して、接続済みデバイス２１，２２を含む各デバイス２１〜２３のアドレス設定を行う。アドレス設定の完了後、ＭＰＵ１２は、ステップ１２０に移行して、デバイス２３の機器情報を取得する。具体的には、ＭＰＵ１２は、ホストコントローラ１４を動作させ、新規に接続されたデバイス２３に対して要求コマンド（Ｇｅｔ  Ｄｅｓｃｒｉｐｔｏｒ）を発行し、その応答としてデバイス２３から送出される機器情報をホストコントローラ１４のレジスタ１４ａに格納する。機器情報としては、機器名、メーカー、最大消費電流等の情報を含む。【００３１】  ＭＰＵ１２は、ステップ１３０において、接続済みデバイス２１，２２と今回接続されたデバイス２３の機器情報をレジスタ１４ａから読み出し、その機器情報に基づいてデバイス２３の最大消費電流を供給可能か否かを判定する。ここで、電流供給回路１５が供給可能な電流は、プログラムデータとしてメモリ１３に予め設定されており、その供給可能な電流とデバイス２３の最大消費電流とが比較される。なお、電流供給回路１５として汎用的な電源ＩＣを用いる場合には、電流供給回路１５の供給可能な電流を測定する電流計測回路を設け、ホスト装置１１の初期化処理等で電流測定回路を用いて実測した電流供給回路１５の供給電流とデバイス２３の最大消費電流とを比較してもよい。【００３２】  ステップ１３０において供給可能であると判定した場合、ＭＰＵ１２はステップ１４０に移行してホストコントローラ１４を動作させ、接続認識をした旨を通知するコマンド（Ｓｅｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ）をデバイス２３に発行した後、本処理を終了する。【００３３】  一方、ステップ１３０において、供給不可能であると判定した場合、ＭＰＵ１２はステップ１５０に移行して供給電流の配分を変更する。すなわち、ＭＰＵ１２は、電流供給回路１５が供給可能な電流の範囲内で、接続済みデバイス２１，２２と新規のデバイス２３とを含む各デバイス２１〜２３への供給電流の配分を変更する。但し、ステップ１５０では、供給電流の配分変更を計画するのみで、実際の各デバイスへの供給電流は現状の電流値を維持する。【００３４】  続く、ステップ１６０において、ＭＰＵ１２は、ホストコントローラ１４を動作させ、供給電流の変更対象となったデバイスにその変更後の電流値を送信する。その後、ＭＰＵ１２は、ステップ１７０において、その電流値をデバイスが了承したか否か（動作可能であるか否か）を確認する。【００３５】  具体的には、ＭＰＵ１２は、変更後の電流値を通知するために、消費電流の設定コマンド（Ｓｅｔ  Ｄｅｓｃｒｉｐｔｏｒ）をホストコントローラ１４から発行する。設定コマンドを受信したデバイスは、設定コマンドで指定される電流値が対応可能な電流値であれば���ＣＫパケットを、対応不可能な電流値であればＳＴＡＬＬパケットを返信する。ＭＰＵ１２はデバイスから返信されてくるＡＣＫパケット又はＳＴＡＬＬパケットに基づいて、デバイスが動作可能であるか否かを判定する。【００３６】  ここで、変更対象となるデバイスが複数ある場合、ステップ１６０でそれら全てに消費電流の設定コマンドが発行され、ステップ１７０において、全てのデバイスからの了承（ＡＣＫパケット）が得られたか否かが判断される。【００３７】  ステップ１７０においてデバイスの了承が得られた場合、ＭＰＵ１２はステップ１８０に移行して、電流供給回路１５から各デバイス２１〜２３に供給する電流値を変更する。ステップ１４０において、接続認識した旨を通知するコマンド（Ｓｅｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ）をデバイス２３に発行した後本処理を終了する。【００３８】  ステップ１７０においてデバイスの了承が得られなかった場合、ＭＰＵ１２はステップ１９０に移行して、各デバイスへの供給電流の配分を再変更（再調整）することが可能か否かを判定し、再変更が可能であると判定した場合は、ステップ１５０に戻り、ステップ１５０以降の処理を再度実行する。一方、再変更する余地がないと判定した場合は、ステップ２００に移行して、新規の接続機器であるデバイス２３の認識（Ｓｅｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎの発行）を行うことなく、本処理を終了する。【００３９】  次に、新規デバイスの認識処理において、ホスト装置１１と各デバイス２１〜２３との間で行われるネゴシエーションの具体例を図３〜図８に従って説明する。なお、第１実施形態において、ホスト装置１１が各デバイス２１〜２３に供給できる最大の供給電流は１Ａである。また、各デバイス２１〜２３の最大消費電流は、第１のデバイス２１が５００ｍＡ、第２のデバイス２２が３００ｍＡ、第３のデバイス２３が３００ｍＡである。さらに、第１のデバイス２１が最大消費電流を５００ｍＡから３００ｍＡまで低減できる機能を持ち、第３のデバイス２３が最大消費電流を３００ｍＡから２５０ｍＡまで低減できる機能を持つ。また、第２のデバイス２２は、最大消費電流の低減機能を持たず、最大消費電流を３００ｍＡから変更することができないものとする。【００４０】  先ず、図３に示すように、第１及び第２のデバイス２１，２２がホスト装置１１に接続認識されており、各々がバス給電によって動作している状態で、第３のデバイス２３がプラグインにより新規に接続される。すると、図４に示すように、ホスト装置１１は第３のデバイス２３に対してプロファイル（機器情報）を要求する要求コマンド（Ｇｅｔ  Ｄｅｓｃｒｉｐｔｏｒ）を発行する。第３のデバイス２３は、その要求コマンドに応答して自身の最大消費電流のパラメータ（ＭａｘＰｏｗｅｒ＝３００ｍＡ）を含む機器情報を通知する。【００４１】  ホスト装置１１は、３００ｍＡの最大消費電流が、自ら供給可能なスペックか否かを判定する。ここで、ホスト装置１１は、第１及び第２のデバイス２１，２２に対して合計で８００ｍＡの電流を既に供給しており、残りの供給可能な能力（スペック）は２００ｍＡ（＝１０００−５００−３００）であるため、第３のデバイス２３への最大消費電流（＝���００ｍＡ）を供給することができないと判断する。【００４２】  従来では、ホスト装置１１の供給可能なスペックを越えている場合、新規に接続された第３のデバイス２３を認識することができない。これに対し、第１実施形態では、ホスト装置１１は、供給可能な電流（＝１Ａ）を越えないように各デバイス２１〜２３にスペックダウンを要求して、スペックダウンした消費電流で各デバイス２１〜２３が動作可能であるか否かを確認する。各デバイス２１〜２３が動作可能であるときに、該各デバイス２１〜２３への供給電流の配分を変更して、新規に接続された第３のデバイス２３を認識する。【００４３】  ホスト装置１１から各デバイス２１〜２３に発行されるスペックダウンの要求コマンド（Ｓｅｔ  Ｄｅｓｃｒｉｐｔｏｒ）としては、コンフィグレーションディスクリプタ（Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｄｅｓｃｒｉｐｔｏｒ）の最大消費電流のフィールド（Ｍａｘ  Ｐｏｗｅｒ  Ｆｉｅｌｄ）を用いている。ホスト装置１１は最大消費電流のフィールドにターゲットスペックである電流値をアサインして発行している。なお、ＵＳＢ規格において、デバイスの最大消費電流は、コンフィグレーションディスクリプタの８番目のパラメータとして規定されている。【００４４】  第１実施形態において、各デバイス２１〜２３の最大消費電流の合計は１１００ｍＡであり、第１及び第２のデバイス２１，２２に加えて、第３のデバイス２３を新たに接続する場合、ホスト装置１１の供給可能なスペック（１０００ｍＡ）に対して１００ｍＡの能力が不足する。そのため、ホスト装置１１は、各デバイス２１〜２３への供給電流の配分を調整するためのネゴシエーションを開始する。【００４５】  ここで、ホスト装置１１は、例えば、不足分の半分にあたる５０ｍＡを第１及び第２のデバイス２１，２２への供給電流から低減することで、１００ｍＡの不足分を確保しようと試みる。【００４６】  具体的に、ホスト装置１１は、図５に示すように、最大消費電流を５０ｍＡだけスペックダウンした２５０ｍＡで動作可能かどうかを第２のデバイス２２に確認する。つまり、ホスト装置１１は、コマンド（Ｓｅｔ  Ｄｅｓｃｒｉｐｔｏｒ）における最大消費電流フィールドに２５０ｍＡのデータをアサインして第２のデバイス２２に送信する。しかし、第２のデバイス２２は、動作するために３００ｍＡの供給電流を必要とするため、対応不可能である旨をＳＴＡＬＬパケットで応答する。【００４７】  次に、ホスト装置１１は、図６に示すように、最大消費電流を５０ｍＡだけスペックダウンした４５０ｍＡで動作可能かどうかを第１のデバイス２１に打診する。このとき、ホスト装置１１は、コマンド（Ｓｅｔ  Ｄｅｓｃｒｉｐｔｏｒ）における最大消費電流フィールドに４５０ｍＡのデータをアサインして第１のデバイス２１に送信する。第１のデバイス２１は、３００ｍＡまで供給電流を低減されても対応可能であるため、対応可能である旨をＡＣＫパケットで応答し、４５０ｍＡの供給電流での動作を了承する。【００４８】  次いで、ホスト装置１１は、図７に示すように、最大消費電流を５０ｍＡだけスペックダウンした２５０ｍＡで動作可能かどうかを第３のデバイス２３に打診する。このとき、ホス��装置１１は、コマンド（Ｓｅｔ  Ｄｅｓｃｒｉｐｔｏｒ）における最大消費電流フィールドに２５０ｍＡのデータをアサインして第３のデバイス２３に送信する。第３のデバイス２３は、２５０ｍＡまで供給電流を低減されても対応可能であるため、対応可能である旨をＡＣＫパケットで応答し、２５０ｍＡの供給電流での動作を了承する。【００４９】  ホスト装置１１は、図８に示すように、第１のデバイス２１への供給電流を４５０ｍＡに低減するとともに、第３のデバイス２３への供給電流を２５０ｍＡとする。これにより、第１のデバイス２１は、低消費電流モードに動作を切り替え、第３のデバイス２３は、低消費電流モードでの動作を開始する。【００５０】  このようにして、ホスト装置１１は第３のデバイス２３を接続認識することができ、全てのデバイス２１〜２３と通信可能な状態となる。
なお上記では、接続認識済みのデバイス２１，２２への供給電流を変更して、新規デバイス２３の接続認識が可能となる場合について説明した。これに対し、デバイス２１，２２への供給電流を変更しても、新規に接続したデバイス２３の動作可能な供給電流が確保できない場合には、従来と同様にデバイス２３を認識することができない。その場合には、第１及び第２のデバイス２１，２２には、デバイス２３の接続前の供給電流がそのまま供給され、ホスト装置１１と各デバイス２１，２２との間の通信は維持される。【００５１】  また、図５〜図８を用いて説明した各デバイス２１〜２３へのネゴシエーションの順序も適宜変更することができる。つまり、上記の具体例では、接続済みデバイス２２に対し供給電流の変更を問い合わせるものであるが、先ず、新規のデバイス２３に対して供給電流の低減を問い合わせ、デバイス２３への供給電流の調整がつかない場合に、接続済みデバイス２１，２２に供給電流の低減を問い合わせるように構成してもよい。【００５２】  もちろん、ホスト装置１１が算出した低減電流値の５０ｍＡもあくまで一例であって、任意の算出結果に基づいてネゴシエーションを行うことができる。例えば、図６において、最大消費電流を１００ｍＡだけスペックダウンした４００ｍＡで動作可能かどうかを第１のデバイス２１に確認してもよい。この場合、第１のデバイス２１は、３００ｍＡまで供給電流を低減されても対応可能であるため、対応可能である旨をＡＣＫパケットで応答し、４００ｍＡの供給電流での動作を了承する。第１のデバイス２１への供給電流の低減によって、新規のデバイス２３への３００ｍＡの供給電流が確保できるため、新規のデバイス２３の供給電流を低減するためのネゴシエーション（図７参照）は不要となる。【００５３】  本発明の第１実施形態のホスト装置１１は、以下の利点を有する。
（１）ホスト装置１１では、接続認識済みのデバイス２１，２２と新規のデバイス２３とにおける消費電流が電流供給回路１５の供給可能な能力を越えるとき、その能力に合わせて各デバイス２１〜２３への供給電流の配分が変更される。第１実施形態では、ホスト装置１１に新規に接続されるデバイス２３に加え、接続認識済みのデバイス２１への供給電流が変更される。供給電流の配分変更によって、新規のデバイス２３を動作させるための供給電流を確保することが可能となり、従来技術と比較してホスト装置１１が接続認識するデバイスの数を増やすことができる。【００５４】  （２）ＵＳＢ規格に準拠したコマンド（Ｓｅｔ  Ｄｅｓｃｒｉｐｔｏｒ）を利用して供給可能な電流値がデバイス２１〜２３に通知され、該デバイス２１〜２３からＡＣＫパケットとＳＴＡＬＬパケットとのいずれかを受信することにより、そのデバイスが動作可能であるか否かが判定される。このように、既存のコマンドを利用してデバイス２１〜２３への供給電流を変更するためのネゴシエーションを行う場合、それを実行するプログラムを容易に作成することができ、実用上好ましい。【００５５】  （３）ホスト装置１１は、通信ポートＰ１〜Ｐ３に流れる電流を検出し、通信ポートＰ１〜Ｐ３を介して各デバイス２１〜２３に所定値以上の過電流が流れないよう監視する電流監視回路１６を備える。電流監視回路１６において過電流を検出したときにデバイスへの電流の供給が停止されることより、通信システム全体への悪影響を回避できる。【００５６】  次に、本発明を具体化した第２実施形態を説明する。図９は、第２実施形態におけるデバイス３１の概略的なブロック回路図である。
デバイス３１は、例えば光ディスク３２を記録媒体としたデータ記録再生装置であり、ＭＰＵ３３、メモリ３４、ＵＳＢコントローラ３５、パワーコントローラ３６、デバイスコントローラ３７、ディスク回転用のモータ３８を含む。ＭＰＵ３３は、メモリ３４、ＵＳＢコントローラ３５、パワーコントローラ３６、及びデバイスコントローラ３７に内部バス３９を介して接続され、相互にデータの授受が行われる。デバイス３１には、ＵＳＢの通信ポートＰ０が設けられており、該通信ポートＰ０に挿入されたＵＳＢケーブルＣ１を介してホスト装置４１が接続されている。第２実施形態のデバイス３１は、ホスト装置４１からのバス給電により動作するバスパワーデバイスである。【００５７】  制御回路であるＭＰＵ３３は、メモリ３４に格納されたプログラムに従って各種の処理を実行し、デバイス３１を統括的に制御する。なお、メモリ３４に格納されるプログラムとしては、ＵＳＢコントローラ３５及びパワーコントローラ３６を制御するための通信プログラムやデバイスコントローラ３７を制御するためのデータ処理プログラムを含む。【００５８】  通信ポートＰ０はスイッチユニット４２を介してＵＳＢコントローラ３５に接続されており、ホスト装置４１からの通信データが信号線Ｄ＋，Ｄ−及びスイッチユニット４２を通してＵＳＢコントローラ３５に伝達される。図１０に示すように、スイッチユニット４２は、２つのスイッチ回路４２ａ，４２ｂを含む。各スイッチ回路４２ａ，４２ｂはＭＰＵ３３からの制御信号Ｓａ，Ｓｂに基づいて制御され、通信ポートＰ０とＵＳＢコントローラ３５とを結ぶ信号線Ｄ＋，Ｄ−を接続又は遮断する。ＭＰＵ３３からの制御信号Ｓａ，Ｓｂにより、スイッチユニット４２（各スイッチ回路４２ａ，４２ｂ）がオフされることで、デバイス３１がホスト装置４１から切り離される。【００５９】  ＵＳＢコントローラ３５は、ＵＳＢ規格に準拠した通信回路であり、ホスト装置４１との間の通信を制御する。具体的に、ＵＳＢコントローラ３５は、ホスト装置４１から受信したパケットに含まれるデータ（書き込みデータ）をデバイスコントローラ３７に転送する。また、ＵＳＢコントローラ３５は、デバイスコントローラ３７からの転送データ（読み出しデータ）に基づいて送信パケットを生成してホスト装置４１に送信する。【００６０】  デバイスコントローラ３７は、モータ３８を駆動して光ディスク３２を回転させ、光ディスク３２からデータを読み出したり、光ディスク３２にデータを書き込んだりする。
パワーコントローラ３６は、通信ポートＰ０（ＶＢＵＳと呼ばれるケーブル端子）に接続され、ホスト装置４１からＵＳＢケーブルＣ１及び通信ポートＰ０を介して電流が供給されている。パワーコントローラ３６は、ＭＰＵ３３、メモリ３４、ＵＳＢコントローラ３５、デバイスコントローラ３７を含む内部回路に供給する供給電流を管理する。【００６１】  具体的に、パワーコントローラ３６は、デバイス３１の消費電流値等の情報を格納するレジスタ３６ａと、内部回路への電流経路を遮断するスイッチ回路３６ｂと、内部回路への供給電流を制御する制御部３６ｃとを含む。制御部３６ｃは、レジスタ３６ａの消費電流値に基づいて、ＭＰＵ３３、メモリ３４、ＵＳＢコントローラ３５、及びデバイスコントローラ３７に供給する電流を調整する。また、スイッチ回路３６ｂは、ＭＰＵ３３からの制御信号に基づいてオン又はオフする。スイッチ回路３６ｂは、通常オンされているが、ホスト装置４１によりデバイス３１が接続認識されない場合、スイッチ回路３６ｂがオフされることでデバイス３１の電源が切断される。【００６２】  次に、デバイス３１のＭＰＵ３３が実行する通信処理のうちホスト装置４１に接続認識させるための処理について図１１のフローチャートに従い説明する。図１１の処理は、ホスト装置４１にデバイス３１が接続された時に開始される。【００６３】  先ず、ＭＰＵ３３はステップ２１０において、ホスト装置４１からの機器情報を要求する要求コマンド（Ｇｅｔ  Ｄｅｓｃｒｉｐｔｏｒ）を受信するまで待機する。ＭＰＵ３３は、要求コマンドを受信したときにステップ２２０に移行して、デバイス３１の機器情報を含む送信パケットをＵＳＢコントローラ３５からホスト装置４１に送信する。【００６４】  その後、ＭＰＵ３３は、ステップ２３０に移行して、ホスト装置４１からの要求コマンド（Ｓｅｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ）を受信したか否かを判断し、要求コマンドを受信したときにはステップ２４０に移行してデバイス３１の起動処理を行った後、本処理を終了する。ここで、ステップ２２０で送信した機器情報に含まれる最大消費電流の供給能力をホスト装置４１が持つ場合、該ホスト装置４１は起動要求コマンドを発行しその最大消費電流をＵＳＢケーブルＣ１を介してデバイス３１に供給する。従って、ステップ２４０においてデバイス３１の起動処理を行った後には、要求した最大消費電流でデータの書き込みや読み出し動作が可能となる。【００６５】  一方、ホスト装置４１がデバイス３１の最大消費電流を供給する能力を持たない場合、該ホスト装置４１は起動要求コマンドを発行しない。この場合、従来のデバイスでは、ホスト装置４１に接続認識されず動作に必要な供給電流を得ることができない。これに対し、第２実施形態のデバイス３１は、ホスト装置４１の電流供給能力が不足する場合、自身の消費電流を低減してホスト装置４１に接続認識させるための処理（ステップ２５０以降の処理）を実施する。【００６６】  具体的には、ステップ２５０において、ＭＰＵ３３は、機器情報を送信した時刻から所定時間が経過したか否かを判定し、所定時間が経過していない場合にはステップ２３０に戻る。ＭＰＵ３３は、所定時間が経過したとき��、自身が要求した最大消費電流をホスト装置４１が供給できない旨を判断してステップ２６０に移行する。ＭＰＵ３３は、最大消費電流値を変更可能であるか否かを判定する。ステップ２６０において、ＭＰＵ３３は、消費電流値の変更が不可能であると判定した場合には、ステップ２７０に移行して、パワーコントローラ３６のスイッチ回路３６ｂをオフすることでデバイス３１の電源を切断した後に、本処理を終了する。【００６７】  一方、ステップ２６０において、消費電流の変更が可能であると判定した場合には、ＭＰＵ３３は、ステップ２８０に移行してパワーコントローラ３６のレジスタ３６ａに記憶しているデバイス３１の機器情報を変更する。ここでは、機器情報に含まれる消費電流値が所定値に低減されるとともに、デバイスコントローラ３７の動作モードが、その低減した電流値に応じた動作モード（低消費電流モード）に設定される。【００６８】  その後、ＭＰＵ３３は、ステップ２９０において、スイッチユニット４２の各スイッチ回路４２ａ，４２ｂを所定時間だけオフした後にオンする。スイッチユニット４２の切り替え動作によって、ホスト装置４１からデバイス３１を一時的に切断状態とした後、ステップ２１０に戻る。【００６９】  ステップ２９０の処理によってデバイス３１が一時的に切断状態になると、ホスト装置４１は、デバイス３１が再接続されたと判断する。このとき、ホスト装置４１は、機器情報を要求する要求コマンドを発行する。ステップ２１０にてその要求コマンドを受信したデバイス３１は、ステップ２２０に移行して機器情報を再度送信する。ここでは、ステップ２８０にて小さい電流値に低減された消費電流値が再送信される。【００７０】  ホスト装置４１は、低減された消費電流を供給できない場合には起動要求コマンドを発行しないため、ステップ２５０以降の処理を再度実施する。一方、ホスト装置４１は、低減された消費電流値を供給できる場合には起動要求コマンドを発行する。そのため、ＭＰＵ３３はステップ２３０からステップ２４０に移行してデバイス３１の起動処理を行った後、本処理を終了する。デバイス３１の起動処理により、デバイス３１は低減した消費電流でデータの書き込みや読み出し動作が可能となる。【００７１】  本発明の第２実施形態のデバイス３１は、以下の利点を有する。
（１）ホスト装置４１にデバイス３１が接続され、デバイス３１の内部回路での消費電流がホスト装置４１の供給可能な能力を超える場合、ホスト装置４１がデバイス３１の起動を要求する要求コマンドを発行しないため、ＭＰＵ３３によりその旨が判断されてデバイス３１の消費電流が低減される。低減した消費電流をホスト装置４１が供給できる場合には、該ホスト装置４１によりデバイス３１が認識され、ホスト装置４１からのバス給電によりデバイス３１を動作させることができる。【００７２】  （２）デバイス３１において、通信ポートＰ０（ＵＳＢケーブルＣ１）とＵＳＢコントローラ３５との接続を一時的に切断するスイッチユニット４２が設けられている。また、パワーコントローラ３６にはデバイス３１の消費電流を記憶するレジスタ３６ａが設けられている。ホスト装置４１の供給可能な能力が不足する場合には、レジスタ３６ａにおけるデバイス３１の消費電流が低減され、その後、スイッチユニット４２が所定時間だけオフされる。スイッチユニット４２の切り替え動作により、通信ポートＰ０とＵＳＢコントローラ３５との接続が一時的に切断され、ホスト装置４１にデバイスが再接続されたと認識させることができる。ホスト装置４１が、デバイス３１の機器情報を要求するコマンドを発行し、デバイス３１がそれに応答して変更後の消費電流を送信する。このようにすれば、ホスト装置４１の指示ではなく、デバイス３１側の動作によって、デバイス３１の消費電流の変更を実現することができる。【００７３】  （３）ＭＰＵ３３がデバイス３１における内部回路の消費電流を低減することが不可能であると判定した時（デバイス３１の不認識時）には、パワーコントローラ３６のスイッチ回路３６ｂによってデバイス３１の電源が遮断される。このようにすれば、ホスト装置４１に認識されないデバイス３１での無駄な電流消費を防止できる。【００７４】  以下、本発明を具体化した第３実施形態を図面に従って説明する。図１２は、第３実施形態におけるデバイス４３の概略的なブロック回路図である。デバイス４３において、第２実施形態のデバイス３１と同等であるものについては同一の符号を付している。以下には第２実施形態との相違点を中心に説明する。【００７５】  すなわち、第３実施形態のデバイス４３では、第２実施形態と相違してデバイスコントローラ４４がスピーカ４５を制御する。また、デバイス４３には設定ユニットであるレベルスイッチ４６が設けられており、パワーコントローラ３６のレジスタ３６ａには、レベルスイッチ４６の操作量（設定値）に基づいて算出した消費電流値が記憶される。デバイス４３がＵＳＢケーブルＣ１を介してホスト装置４１に接続し、該ホスト装置４１がデバイス４３に機器情報を要求したとき、デバイス４３は、レベルスイッチ４６の設定値に応じた消費電流値をホスト装置４１に要求する。【００７６】  以下、接続認識のためにデバイス４３のＭＰＵ３３が実行する処理を図１３のフローチャートに従い説明する。図１３の処理は、ホスト装置４１にデバイス４３が接続された時に開始される。【００７７】  先ず、ステップ３１０において、ＭＰＵ３３は、レベルスイッチ４６の設定値に応じた消費電流値を計算し、計算値を機器情報の消費電流値としてパワーコントローラ３６のレジスタ３６ａに記憶する。その後、ＭＰＵ３３は、ステップ３２０に移行してホスト装置４１から機器情報の要求コマンド（Ｇｅｔ  Ｄｅｓｃｒｉｐｔｏｒ）を受信するまで待機する。ＭＰＵ３３は、要求コマンドを受信したときにステップ３３０に移行して、デバイス４３の機器情報をホスト装置４１に送信する。【００７８】  ここで、ホスト装置４１がその機器情報に含まれる消費電流値をデバイス４３に供給可能である場合、ホスト装置４１から起動要求コマンドが発行される。その場合、ＭＰＵ３３はステップ３４０からステップ３５０に移行してデバイス４３の起動処理を行った後、本処理を終了する。これにより、ホスト装置４１に要求した消費電流でスピーカ４５からの音声出力が可能となる。【００７９】  一方、ホスト装置４１がデバイス４３の消費電流を供給することが不可能である場合、該ホスト装置４１は起動要求コマンドを発行しない。その場合、ＭＰＵ３３は、機器情報を送信した時刻から所定時間が経過するまで、ステップ３４０とステップ３６０との処理を繰り返し実行し、所定時間の経過後にステップ３７０に移行する。【００８０】  ＭＰＵ３３は、ステップ３７０においてレベルスイッチ４６が操作されて設定値が変更されたか否かを判定する。レベルスイッチ４６の設定値が変更された場合、ＭＰＵ３３は、ステップ３８０に移行してレベルスイッチ４６の設定値に応じた消費電流値を再計算してパワーコントローラ３６のレジスタ３６ａに記憶させる。【００８１】  その後、ＭＰＵ３３は、ステップ３９０において、スイッチユニット４２を所定時間だけオフした後にオンすることによって、ホスト装置４１からデバイス４３を一時的に切断状態にした後、ステップ３２０に戻る。【００８２】  ステップ３９０の処理によってデバイス４３が一時的に切断状態になると、ホスト装置４１は、デバイス３１が再接続されたと判断する。このとき、ホスト装置４１は、機器情報を要求する要求コマンドを発行する。ステップ３２０にてその要求コマンドを受信したデバイス４３は、ステップ３３０に移行して機器情報を再度送信する。ここでは、変更されたレベルスイッチ４６の設定値に応じた消費電流値が再送信される。【００８３】  ホスト装置４１は、変更後の消費電流値を供給できない場合には起動要求コマンドを発行しないため、ステップ３６０以降の処理を再度実施する。一方、ホスト装置４１は、変更後の消費電流を供給できる場合には起動要求コマンドを発行する。そのため、ＭＰＵ３３はステップ３４０からステップ３５０に移行して起動処理を行った後、本処理を終了する。デバイス４３の起動処理により、デバイス４３は変更した消費電流でスピーカ４５からの音声出力が可能となる。【００８４】  本発明の第３実施形態のデバイス４３は、以下の利点を有する。
（１）デバイス４３の消費電流がホスト装置４１の供給可能な能力を超え、ホスト装置４１がデバイス４３を認識しないとき、レベルスイッチ４６の設定値が変更されると、その設定値に応じた消費電流が計算されてパワーコントローラ３６のレジスタ３６ａに記憶される。その後、スイッチユニット４２の切り替え動作により、ホスト装置４１にデバイス４３が再接続されたと認識させる。このとき、ホスト装置４１から発行される要求コマンドに応答して、デバイス４３が変更後の消費電流をホスト装置４１に通知することができる。その変更後の消費電流をホスト装置４１が供給できる場合には、該ホスト装置４１によりデバイス４３が認識され、ホスト装置４１からのバス給電によりデバイス４３を動作させることができる。【００８５】  （２）レベルスイッチ４６の設定値に応じた消費電流がホスト装置４１に通知され、その消費電流がホスト装置４１から供給される場合、レベルスイッチ４６の設定値に応じた適切な供給電流でデバイス４３を動作させることができる。【００８６】  以下、本発明を具体化した第４実施形態を説明する。
第４実施形態において、デバイス３１の構成は図９に示す第２実施形態と同様である。また、第４実施形態のホスト装置４１は、接続認識の際にデバイス３１の消費電流を供給できないと判断したとき、デバイス３１に対して供給可能な電流を通知する。ホスト装置４１の供給電流に合わせて、デバイス３１が消費電流を低減することで、ホスト装置にデバイス３１を認識させるようにしている。【００８７】  図１４は、第４実施形態におけるデバイス３１の接続認識のための処理を説明するためのフローチャートである。なお、図１４において、ステップ４１０〜４４０，４７０〜４９０は第２実施形態のステップ２１０〜２４０，２７０〜２９０と同様の処理であり、ステップ４５０，４６０の処理が第２実施形態と相違する。以下、第２実施形態との相違点を中心に説明する。【００８８】  すなわち、ステップ４２０で送信したデバイス３１の消費電流値がホスト装置４１の能力（供給可能な電流値）を越えている場合、ホスト装置４１は、デバイス３１の起動を要求する要求コマンドを発行することなく、供給可能な電流量をデバイス３１に通知する。この場合、デバイス３１のＭＰＵ３３は、ステップ４５０において、ホスト装置４１の供給可能な電流値を受信する。ステップ４６０に移行して、ＭＰＵ３３は、ホスト装置４１の供給可能な電流値でデバイス３１が動作可能か否かを判定する。【００８９】  ステップ４６０で動作不可能と判定した場合、ＭＰＵ３３はステップ４７０に移行して、パワーコントローラ３６のスイッチ回路３６ｂをオフすることでデバイス３１の電源を切断した後に、本処理を終了する。【００９０】  一方、ステップ４６０において動作可能と判定した場合、ＭＰＵ３３は、ステップ４８０に移行して、パワーコントローラ３６のレジスタ３６ａに記憶しているデバイス３１の機器情報を変更する。ここでは、機器情報に含まれる消費電流値をホスト装置４１の供給可能な電流値と同じ値に変更する。また、ＭＰＵ３３は、デバイスコントローラ３７の動作モードをその変更後の電流値に応じた低消費電流モードに設定する。【００９１】  その後、ＭＰＵ３３は、ステップ４９０において、スイッチユニット４２を所定時間だけオフした後にオンすることによって、ホスト装置４１からデバイス３１を一時的に切断状態にした後、ステップ４１０に戻る。【００９２】  ステップ４９０の処理によってデバイス３１が一時的に切断状態になると、ホスト装置４１は、デバイス３１が再接続されたと判断するため、機器情報を要求する要求コマンドを発行する。ステップ４１０にてその要求コマンドを受信すると、ＭＰＵ３３はステップ４２０に移行して、ステップ４８０で変更した機器情報（消費電流値）を再度送信する。ここでは、ホスト装置４１の供給可能な電流値が送信されるため、ホスト装置４１は、デバイス３１の消費電流を供給できると判定して、起動要求コマンドを発行する。従って、ＭＰＵ３３はステップ４４０に移行してデバイス３１の起動処理を行った後、本処理を終了する。デバイス３１の起動処理によって、デバイス３１は低減した消費電流（ホスト装置４１が供給可能な電流）でデータの書き込みや読み出し動作が可能となる。【００９３】  次に、本発明���第４実施形態のデバイス３１は、以下の利点を有する。
（１）デバイス３１の消費電流がホスト装置４１の供給可能な能力を超える場合、ホスト装置４１の能力に合わせてデバイス３１の消費電流を低減することができる。このようにすると、ホスト装置４１の供給可能な電流でデバイス３１の性能（書き込みや読み出し速度）を最大限発揮させることができる。【００９４】  以下、本発明を具体化した第５実施形態を図面に従って説明する。図１５は、第５実施形態のホスト装置５１の概略的なブロック回路図である。
ホスト装置（具体的には、パーソナルコンピュータ）５１は、ＭＰＵ５２、メモリ５３、ホストコントローラ５４、電流供給回路５５、及びディスプレイ５６を含む。ホスト装置５１において、ＭＰＵ５２は、メモリ５３、ホストコントローラ５４、電流供給回路５５、及びディスプレイ５６に内部バス５７を介して接続され、相互にデータの授受が行われる。また、ホスト装置５１には、ＵＳＢデバイスを接続するための第１〜第１０の通信ポートＰ１〜Ｐ１０が設けられている。【００９５】  制御回路であるＭＰＵ５２は、メモリ５３に格納されたプログラムに従って各種の処理を実行し、ホスト装置５１を統括的に制御する。メモリ５３に格納されるプログラムは、ホストコントローラ５４や電流供給回路５５を制御する通信プログラムと、各通信ポートＰ１〜Ｐ１０に接続されている各デバイスの機器情報をＧＵＩ（Ｇｒａｐｈｉｃ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）形式でディスプレイ５６に表示する表示プログラムとを含む。【００９６】  ホストコントローラ５４は、ＵＳＢ規格に準拠した通信回路であり、各通信ポートＰ１〜Ｐ１０に接続されたデバイスとの間の通信を制御する。ホストコントローラ５４にはレジスタ５４ａが設けられており、該レジスタ５４ａに各通信ポートＰ１〜Ｐ１０に接続されたデバイスの機器情報が格納される。具体的には、ホスト装置５１は、通信ポートＰ１〜Ｐ１０のいずれかにデバイスが接続されたとき、その接続を認識するためにデバイスとの間でネゴシエーションを行い、それにより得られた機器情報をレジスタ５４ａに格納する。【００９７】  電流供給回路５５は、レジスタ５４ａの機器情報に含まれる最大消費電流を通信ポートに接続されているデバイスに供給する。また、電流供給回路５５と各通信ポートＰ１〜Ｐ１０とを結ぶ電流経路の途中にリミッタ５８が設けられている。リミッタ５８は、スイッチ回路を含む電流監視回路であり、予め設定された規定電流以上の過電流が流れたときにスイッチ回路をオフして電流経路を遮断する。【００９８】  ＭＰＵ５２は、アプリケーションプログラム（表示用のプログラム）を実行することにより、ホストコントローラ５４のレジスタ５４ａに格納されている機器情報を読み出し、ステータスウインドウを表示装置であるディスプレイ５６に表示する。【００９９】  具体的には、図１６に示すように、ホスト装置５１に複数のデバイス６１〜６７が接続されている場合には、図１７に示すステータスウインドウＷ１をディスプレイ５６に表示する。すなわち、ホスト装置５１における第１の通信ポートＰ１にはマウス付きのキーボード６１が接続され、第２の通信ポートＰ２にはプリンタ６２が接続され、第３の通信ポートＰ３にはハードディスク６３が接続されている。また、第４の通信ポートＰ４には光ディスク６４が接続され、第５の通信ポートＰ５にはスキャナ６５が接続されている。さらに、第８の通信ポートＰ８及び第９の通信ポートＰ９にはデジタルスチルカメラ（ＤＳＣ）６６，６７が接続されている。キーボード６１、プリンタ６２、ハードディスク６３、光ディスク６４、スキャナ６５、及びＤＳＣ６６，６７は、ＵＳＢファンクション（ＵＳＢ通信機能）を内蔵したＵＳＢデバイスであり、それ���れＵＳＢケーブルＣ１を介してホスト装置５１の各通信ポートに接続されている。【０１００】  なお、第５実施形態において、プリンタ６２は、ＵＳＢのバス給電ではなく、別途設けられた電源ケーブル（図示略）からの給電によって動作するデバイスである。その他のデバイスはＵＳＢのバス給電により動作するバスパワーデバイスである。【０１０１】  図１７に示すように、ディスプレイ５６に表示されたステータスウインドウＷ１には、セレクタ、ポート番号（Ｐｏｒｔ  Ｎｏ．）、装置名、メーカー、消費電流（ｍＡ）、状態の各項目欄が設けられている。装置名、メーカー、消費電流は、ホストコントローラ５４のレジスタ５４ａに記憶された機器情報に基づいて通信ポート毎に表示される。また、消費電流の欄には、ホスト装置５１に要求するデバイスの消費電流値（要求値）と、ホスト装置５１からＵＳＢケーブルＣ１を介して供給している現時点での電流値（現在値）とが表示されている。【０１０２】  各ポートのデバイスの要求値は、キーボード６１が１００ｍＡ、プリンタ６２が１００ｍＡ、ハードディスク６３が５００ｍＡ、光ディスク６４が５００ｍＡ、スキャナ６５が３００ｍＡ、ＤＳＣ６６が２００ｍＡ、ＤＳＣ６７が２５０ｍＡである。【０１０３】  セレクタの欄には、各通信ポートに接続されるデバイスをオン状態又はオフ状態（使用状態又は未使用状態）のいずれかに切り替えるための選択ボタンが設けられている。デバイス６１〜６７が接続されている各通信ポートＰ１〜Ｐ５，Ｐ８，Ｐ９では、オン又はオフのいずれか一方のボタンが選択されている。ここでは、第１〜第４の通信ポートＰ１〜Ｐ４と第９の通信ポートＰ９はオンボタンが選択され、第５の通信ポートＰ５と第８の通信ポートＰ８はオフボタンが選択されている。【０１０４】  通信ポートＰ１〜Ｐ４，Ｐ９のオンボタンが選択されると、デバイス６１〜６４，６７が要求する消費電流が電流供給回路５５から供給され、該デバイスにおけるＵＳＢファンクションが活性化される。そのため、状態の欄は「Ａｃｔｉｖｅ」となる。但し、プリンタ６２は、バス給電ではなく自前の電源で動作するため、「Ａｃｔｉｖｅ」の状態は青色で表示され、他のデバイスはバス給電で動作しているため、「Ａｃｔｉｖｅ」の状態は赤色で表示される。消費電流の欄には、要求値と同一の電流値である現在値が表示される。【０１０５】  一方、通信ポートＰ５，Ｐ８のオフボタンが選択されると、デバイス６５，６６が要求する消費電流が電流供給回路５５から供給されることはなく、該デバイス６５，６６のＵＳＢファンクションが停止（非活性化）される。そのため、状態の欄には「ｓｕｓｐｅｎｄ」が表示され、消費電流の現在値は２．５ｍＡが表示される。【０１０６】  また、未使用の通信ポートＰ６，Ｐ７，Ｐ１０については、消費電流の要求値及び現在値には０ｍＡが表示され、状態の欄には「Ｎｏｔ  Ｕｓｅ」が表示されている。
さらに、ステータスウインドウＷ１の下方には、全ポートの要求消費電流と使用電流と許容電流と余裕電流とを表示するための表示欄が設けられている。ここで、要求消費電流は全ての通信ポートの要求値を合計した電流であり、使用電流は全てのポートの現在値を合計した電流である。また、許容電流は電流供給回路５５が出力可能な最大電流であり、余裕電流はその許容電流から使用電流を減算した電流である。【０１０７】  上記の具体例では、要求消費電流は１９５０ｍＡであり、使用電流は１４５５ｍＡである。また、許容電流は２５００ｍＡであり、余裕電流は１０４５ｍＡである。従って、第５の通信ポートＰ５と第８の通信ポートＰ８のオンボタンを選択し、各通信ポートＰ５，Ｐ８に接続されているスキャナ６５とＤＳＣ６６とに要求値の電流を供給した場合でも、使用電流は１９５０ｍＡであるため許容電流の２５００ｍＡを越えることはない。この場合、スキャナ６５とＤＳＣ６６とを正常に動作させることができる。【０１０８】  これに対し、ホスト装置５１の未使用の通信ポートＰ６，Ｐ７，Ｐ１０に、最大消費電流が５００ｍＡであるデバイスを接続して動作させる場合、ホスト装置５１の許容電流を越えてしまう。この場合には、新たに接続されたデバイスの動作に加え、接続済みのデバイスの動作も不安定になってしまう。【０１０９】  そこで、第５実施形態では、図１８に示すように、ホスト装置の通信ポートＰ６，Ｐ７，Ｐ１０に新規のデバイス（ハードディスク７１，７２、Ｈｕｂ７３）が接続されたとき、各デバイスを直ぐには動作可能な状態とせずに、先ず、１００ｍＡのバス給電を許可して情報の授受のみを実行する。ホスト装置５１は、その情報の授受により得られた機器情報に基づいて、図１９に示すステータスウインドウＷ２を表示する。【０１１０】  すなわち、通信ポートＰ６，Ｐ７，Ｐ１０について、装置名、メーカー、消費電流、状態が表示される。ここで、各通信ポートＰ６，Ｐ７，Ｐ１０に新規に接続されたハードディスク７１，７２、Ｈｕｂ７３の要求値は５００ｍＡであり、現在値は１００ｍＡである。各通信ポートＰ６，Ｐ７，Ｐ１０のセレクタの欄では、オンボタンとオフボタンとはいずれも選択されておらず、ＵＳＢファンクションが待機中であるため、状態の欄には「Ｗａｉｔ」が表示される。【０１１１】  また、ステータスウインドウＷ２において、要求消費電流は３４５０ｍＡ、使用電流は１７５５ｍＡ、許容電流は２５００ｍＡ、余裕電流は７４５ｍＡである。
ステータスウインドウＷ２をディスプレイ５６に表示させて、ホスト装置５１を操作するユーザに各デバイスを使用するか否かの判断を求めるようにしている。ここで、ユーザがステータスウインドウＷ２に表示されている許容電流に留意し、キーボード６１のマウスを操作することで、直ぐに使わない光ディスク６４とＤＳＣ６７におけるオフボタンを選択した後、新規に接続したハードディスク７１，７２とＨｕｂ７３におけるオンボタンを選択する。【０１１２】  その結果、図２０に示すように、ステータスウインドウＷ３がディスプレイ５６に表示される。ステータスウインドウＷ３では、図１９のステータスウインドウＷ２と比較して、第４の通信ポートＰ４（光ディスク６４）及び第９の通信ポートＰ９（ＤＳＣ６７）の現在値が２．５ｍＡに変更され、状態の表示が「ｓｕｓｐｅｎｄ」に変更されている。また、第６の通信ポートＰ６（ハードディスク７１）、第７の通信ポートＰ７（ハードディスク７２）、及び第１０の通信ポートＰ１０（Ｈｕｂ７３）の現在値が５００ｍＡに変更され、状態の表示が「Ａｃｔｉｖｅ」に変更されている。なお、Ｈｕｂ７３は、バス給電ではなく自前の電源で動作する機器であり、「Ａｃｔｉｖｅ」の状態は青色で表示される。【０１１３】  この場合、使用電流は２２１０ｍＡとなり、２５００ｍＡの許容電流に対して２９０ｍＡの余裕電流が確保される。よって、ホスト装置５１は、新たなデバイス（ハードディスク７１，７２及びＨｕｂ７３）を接続認識して、各デバイス７１〜７３を正常に動作させることが可能となる。【０１１４】  次に、第５実施形態のＭＰＵ５２が実行する処理のうちステータスウインドウＷ１〜Ｗ３を表示させるための処理について図２１のフローチャートに従い説明する。図２１の処理は、ホスト装置５１の起動時に実施される初期化処理の完了後に開始される。【０１１５】  先ず、ステップ５１０において、ＭＰＵ５２は、各デバイスの機器情報をホストコントローラ５４のレジスタ５４ａから取得した後、ステップ５２０に移行して、その機器情報に応じたステータスウインドウＷ１（図１７参照）をディスプレイ５６に表示する。ステップ５３０において、ＭＰＵ５２は、新規のデバイスが未使用の通信ポートに接続されたり、接続済みのデバイスが通信ポートから外されたりするといった機器接続状態変更の有無を判定する。ここで、変更があると判定した場合は、ＭＰＵ５２はステップ５４０に移行してホストコントローラ５４におけるレジスタ５４ａの機器情報の更新を行う。例えば、新規デバイスが所定の通信ポートに接続された場合、ホストコントローラ５４から新規デバイスに対して要求コマンドを発行し、その要求コマンドによりデバイスから返信される機器情報をレジスタ５４ａに格納する。また、接続済みデバイスが所定の通信ポートから外された場合、そのデバイスに関する機器情報をレジスタ５４ａから消去する。【０１１６】  ステップ５５０において、ＭＰＵ５２は、更新した機器情報に基づいてステータスウインドウを表示する。続くステップ５６０において、ＭＰＵ５２は、ユーザのマウス操作によりステータスウインドウに表示したセレクタ欄のボタンが選択されたか否かを判定し、ボタン選択がな��場合にはステップ５３０の処理に戻る。また、ＭＰＵ５２は、ステップ５３０にて機器接続状態の変更がないと判定した場合にはステップ５４０，５５０の処理を実施することなくステップ５６０に移行する。【０１１７】  従って、ユーザがホスト装置５１に新たなデバイスを接続することなく、かつステータスウインドウＷ１のセレクタ欄のボタンを選択しない場合には、ステップ５３０とステップ５６０の処理が繰り返される。そのため、ディスプレイ５６にはステップ５２０で表示したステータスウインドウＷ１が表示され続けることになる。【０１１８】  また、図１８に示すように、ユーザが各通信ポートＰ６，Ｐ７，Ｐ１０にハードディスク７１，７２、Ｈｕｂ７３を順次接続する場合、ステップ５３０〜５６０の処理が３回繰り返され、その結果、ディスプレイ５６には図１９のステータスウインドウＷ２が表示される。【０１１９】  ユーザがステータスウインドウＷ２におけるセレクタ欄のボタンを選択する。すると、ＭＰＵ５２は、ステップ５６０からステップ５７０に移行し、選択された通信ポートについて電流供給回路５５から供給する電流を変更する。その後、ＭＰＵ５２は、ステップ５８０に移行してユーザのボタン選択に対応するステータスウインドウをディスプレイ５６に表示した後、ステップ５３０の処理に戻る。ステップ５８０では、ボタン選択に応じて状態の欄の変更が行われるとともに、消費電流に関する計算（使用電流と余裕電流の計算）が行われる。【０１２０】  具体的に、ステータスウインドウＷ２において、第４の通信ポートＰ４及び第９の通信ポートＰ９のオフボタンを選択した後、第６の通信ポートＰ６、第７の通信ポートＰ７、及び第１０の通信ポートＰ１０のオンボタンを順次選択する。この場合、ボタン選択の度にステップ５６０〜ステップ５８０の処理が繰り返され、その結果、ディスプレイ５６には図２０のステータスウインドウＷ３が表示される。【０１２１】  上記では図示を省略しているが、各デバイスの最大消費電流よりも大きな過電流が流れリミッタ５８が機能したときには、その過電流が流れた旨をステータスウインドウＷ１〜Ｗ３に表示してユーザに警告することもできる。具体的には、ステータスウインドウＷ１〜Ｗ３における状態の欄に、警告を促すための「Ｗａｒｎｉｎｇ」を表示したり、過電流の現在値を正常値の場合と異なる色で表示したりする。【０１２２】  さらに、ホスト装置５１の第１０の通信ポートＰ１０に接続されているＨｕｂ７３にＵＳＢデバイスが接続されたときには、Ｈｕｂ７３のステータスウインドウを表示してもよい。【０１２３】  具体的には、図２２に示すように、中継デバイスであるＨｕｂ７３に複数のデバイス８１〜８３が接続される場合には、図２３に示すステータスウインドウＷ１１をホスト装置５１のディスプレイ５６に表示する。すなわち、Ｈｕｂ７３にはＵＳＢデバイスを接続するための第１〜第１０の通信ポートＰ１１〜Ｐ２０が設けられており、第１の通信ポートＰ１１に光ディスク８１、第２の通信ポートＰ１２にハードディスク８２、第４の通信ポートＰ４にＤＳＣ８３がそれぞれ接続されている。【０１２４】  また、図２３のステータスウインドウＷ１１において、第１及び第２の���信ポートＰ１１，Ｐ１２はオンボタン、第４の通信ポートはオフボタンが選択されている。従って、光ディスク８１とハードディスク８２には、各々が要求する電流値（＝１００ｍＡ）がＨｕｂ７３の電流供給回路（図示しない電源ＩＣ）から供給される。【０１２５】  なお、Ｈｕｂ７３は、自前の電源で動作する機器（Ｓｅｌｆ  ｐｏｗｅｒｅｄ  Ｈｕｂ）であり、電流供給回路から出力可能な電流（許容電流）は５０００ｍＡである。つまり、Ｈｕｂ７３は、ＵＳＢ規格で規定されている最大５００ｍＡの電流を全ての通信ポートＰ１１〜Ｐ２０に供給することができる。そのため、Ｈｕｂ７３では各デバイスへの供給電流を制御する必要はなく、ステータスウインドウＷ１１は、Ｈｕｂ７３に接続されている各デバイスの使用状態又は未使用状態をユーザに知らせるために表示される。【０１２６】  また、図２４に示すように、Ｈｕｂ７３における通信ポートＰ１３にＨｕｂ８４を接続してもよい。この場合、図２５に示すＨｕｂ７３のステータスウインドウＷ１２に加え、Ｈｕｂ８４のステータスウインドウ（図示略）をホスト装置５１のディスプレイ５６に表示する。なお、複数のステータスウインドウを表示する場合、それぞれのウインドウをポップアップ（Ｐｏｐ−ｕｐ）形式で表示するかスクロール形式で表示する。【０１２７】  勿論、ホスト装置５１のいずれかの通信ポートにバス給電により動作するＨｕｂを接続してもよい。図２６は、そのバス給電により動作するＨｕｂ（Ｂｕｓ  Ｐｏｗｅｒｅｄ  Ｈｕｂ）８５を示している。Ｈｕｂ８５において、第１の通信ポートＰ１１に光ディスク８１、第２の通信ポートＰ１２にハードディスク８２、第４の通信ポートＰ４にＤＳＣ８３がそれぞれ接続されている。図２７に示すように、Ｈｕｂ８５のステータスウインドウＷ１３がホスト装置５１のディスプレイ５６に表示される。この場合、Ｈｕｂ８５の許容電流は４００ｍＡと小さいため、ウインドウＷ１３を表示することによって、ユーザにその許容電流を越えないように必要なデバイスを選択させることが可能となる。【０１２８】  本発明の第５実施形態のホスト装置５１は、以下の利点を有する。
（１）ホスト装置５１のディスプレイ５６には、各通信ポートＰ１〜Ｐ１０に接続されるデバイス６１〜６７，７１〜７３の機器情報を示すステータスウインドウＷ１〜Ｗ３が表示される。ステータスウインドウＷ１〜Ｗ３には、各デバイス６１〜６７，７１〜７３から取得した機器情報（装置名、メーカー、消費電流）に加え、デバイスを使用状態とするか未使用状態とするかをユーザに選択させるための選択ボタン（オンボタンとオフボタン）が表示されている。ステータスウインドウＷ１〜Ｗ３を確認したユーザがボタンを選択すると、その選択結果に基づいて各デバイスへの供給電流が制御される。このようにすれば、ＵＳＢケーブルＣ１の抜き差しを行うことなく、ホスト装置５１に接続されている各デバイス６１〜６７，７１〜７３を使用するか否かを選択できる。また、ステータスウインドウＷ１〜Ｗ３によって、その時点での各デバイスの使用状態を確認することができる。【０１２９】  従来では、ホスト装置における通信ポートのポート数を増やす場合、その通信ポートの増設に伴い電流供給回路の電流供給能力を上げる必要が生じ、回路規模が大きくなるといった問題が生じていた。これに対し、第５実施形態では、電流供給回路５５の電流供給能力に合わせて、各デバイス６１〜６７，７１〜７３への供給電流の管理が可能となるため、回路規模を抑制しつつポートの増設が可能となる。【０１３０】  （２）ディスプレイ５６の表示画面（ステータスウインドウＷ１〜Ｗ３，Ｗ１１〜Ｗ１３の画面）は、ＧＵＩ形式で表示されるので、各ステータスウインドウＷ１〜Ｗ３，Ｗ１１〜Ｗ１３に表示された選択ボタンをマウス操作により容易に選択することができる。【０１３１】  （３）ステータスウインドウＷ１〜Ｗ３には、ホスト装置５１が供給可能な許容電流と該ホスト装置５１から各デバイス６１〜６７，７１〜７３に供給している使用電流と、許容電流から使用電流を減算した余裕電流とが表示される。この場合、ユーザがホスト装置５１の能力を越えないように余裕電流を確認しながら、不必要なデバイスのオフボタンを選択し、必要なデバイスのオンボタンを選択することができる。【０１３２】  （４）ホスト装置５１の通信ポートＰ１０に接続されたＨｕｂ７３，８５のステータスウインドウＷ１１〜Ｗ１３をホスト装置５１のステータスウインドウＷ１〜Ｗ３とは別に表示するようにした。この場合、Ｈｕｂ７３，８５のステータスウインドウＷ１１〜Ｗ１３がユーザによって確認され、Ｈｕｂ７３，８５に接続される各デバイス８１〜８４の供給電流の管理を適切に行うことができる。【０１３３】  （５）ホスト装置５１において、電流供給回路５５と各通信ポートＰ１〜Ｐ１０とを接続する電流経路の途中にリミッタ５８が設けられているので、システム動作が不安定になることを防止できる。【０１３４】  以下、本発明を具体化した第６実施形態を説明する。
図２９は、第６実施形態におけるホスト装置５１ａの概略的なブロック回路図である。
第６実施形態において、ホスト装置５１ａの構成は図１５に示す第５実施形態のホスト装置５１と同様である。そして、図２９に示すように、ホスト装置５１ａは複数の通信ポートＰ１〜Ｐ１０を有し、それら通信ポートＰ１〜Ｐ１０にはＵＳＢデバイスＤ１〜Ｄ１０がそれぞれ接続されている。【０１３５】  デバイスＤ１〜Ｄ９は第５実施形態のデバイス６１〜６５，７１，７２，６６，６７と実質的に同じデバイスであり、同じ電気的特性（ＵＳＢファンクション、要求値）を持つ。デバイスＤ１０は光ディスクであり、その要求値は５００ｍＡである。以下の説明に於いて、デバイス（例えばデバイスＤ１）又は装置名（例えばキーボードＤ１）を適宜使用する。【０１３６】  制御回路であるＭＰＵ５２は、メモリ５３に格納されたプログラムに従って各種の処理を実行し、ホスト装置５１ａを統括的に制御する。メモリ５３に格納されるプログラムは、通信プログラムと表示プログラムと電流制御プログラムとアプリケーションプログラムとを含む。通信プログラムはホストコントローラ５４や電流供給回路５５を制御するプログラムである。表示プログラムは各通信ポートＰ１〜Ｐ１０に接続されている各デバイスＤ１〜Ｄ１０の機器情報をＧＵＩ（Ｇｒａｐｈｉｃ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）形式でディスプレイ５６に表示するプログラムである。電流制御プログラムは、各通信ポートＰ１〜Ｐ１０に接続されたデバイスＤ１〜Ｄ１０に対して供給する電流を制御するプログラムである。【０１３７】  アプリケーションプログラムは、表計算，文章作成，画像処理等のためのプログラムであり、ＭＰＵ５３はアプリケーションプログラムの実行において上記のデバイスを使用することがある。例えば、表計算のためのアプリケーションプログラムを実行する際、ＭＰＵ５３は計算に利用するデータをハードディスクＤ３（，Ｄ６，Ｄ７）から読み出し、それをプリンタＤ２にて印刷する。【０１３８】  上記アプリケーションプログラム等の実行によって各通信ポートＰ１〜Ｐ１０に接続されたＵＳＢデバイスＤ１〜Ｄ１０を使用する場合、ＭＰＵ５２は、それらデバイスの動作状態を変更する。ＭＰＵ５２は、動作状態の変更を、使用するデバイスが非活性状態にある場合に行う。【０１３９】  ＵＳＢファンクションを有するデバイスには、バスパワードデバイスとセルフパワードデバイスがある。バスパワードデバイスは、ＵＳＢファンクション及びデバイス本体がＵＳＢケーブルＣ１を介して供給される電流により稼働する。セルフパワードデバイスは、デバイス本体が外部電源によって稼働し、ＵＳＢファンクションがＵＳＢケーブルを介して供給される電流、又はその電流及び外部電源によって稼働する。また、非活性化状態（ｓｕｓｐｅｎｄ）にあるデバイスは、そのＵＳＢファンクションに対してホスト装置５１ａとの最低限の通信（デバイスリセットやデータ信号の受信）が可能な電流（第５実施形態において２．５ｍＡ）が供給されている。活性化状態（Ａｃｔｉｖｅ）にあるデバイスには、通信速度に応じてそのデバイスが有する全ての動作が可能な電流（要求電流）が供給されている。従って、ＭＰＵ５２は、使用するデバイスのＵＳＢファンクションを活性化する、即ちステータスウ���ンドウの状態を「Ａｃｔｉｖｅ」に変更し、要求される電流を供給する。【０１４０】  この時、デバイスの活性化によって接続された全てのデバイスの合計消費電流値がホスト装置５１ａの許容電流値を超える場合、ＭＰＵ５２は、活性化状態にあるデバイスのいくつかを非活性化して合計消費電流値が許容電流値を超えないようにする必要がある。【０１４１】  このため、ＭＰＵ５２は、ステータスウインドウをディスプレイ５６に表示させて、ホスト装置５１ａを操作するユーザに各デバイスを使用するか否かの判断を求めるようにしている。ここで、ユーザがステータスウインドウに表示されている許容電流に留意し、キーボード６１のマウスを操作することで、この時には使用しないデバイスにおけるオフボタンを選択する。【０１４２】  ＭＰＵ５２は、ユーザの操作に応答して、オフボタンを選択したデバイスのＵＳＢファンクションを停止（非活性化）した後、使用するデバイスのＵＳＢファンクションを動作（活性化）させる。そして、ＭＰＵ５２は、変更した動作状態を含むステータスウインドウをディスプレイ５６に表示する。【０１４３】  この結果、非活性化状態のデバイスをアプリケーション等のプログラムから利用する場合、非活性化するデバイスを選択するだけで、使用するデバイスとして活性化させることができる。このため、ユーザにとって、アプリケーション等のプログラムの使用時に、当該プログラムにて使用するデバイスが活性化状態にあるか非活性状態にあるかを確認する必要がなく、又非活性状態にあるデバイスを活性化状態に変更しなくてもよいため、デバイスを活性化する手間がかからない。【０１４４】  ＭＰＵ５２は、接続されたデバイスＤ１〜Ｄ１０の動作状態を変更する場合、ディスプレイ５６に表示するステータスウインドウを待避する。ステータスウインドウには、セレクタ、ポート番号（Ｐｏｒｔ  Ｎｏ．）、装置名、メーカー【０１４５】、消費電流（ｍＡ）、状態の各項目欄が設けられており、各項目欄に対する表示情報（機器情報、機器の状態、等）は、メモリ５３の第１領域５３ａに記憶されている。ＭＰＵ５２は、第１領域５３ａに記憶された表示情報（機器情報、機器の状態、等）をステータスウインドウの各項目欄に表示する。従って、ステータスウインドウの待避はそれの各項目欄に対応する表示情報を待避することであり、ＭＰＵ５２は、ステータスウインドウの情報（即ち第１領域５３ａに記憶された各種情報）を同メモリ５３の第２領域５３ｂに待避する。【０１４６】  このステータスウインドウの待避は、設定における不具合を防ぐために行われる。即ち、ホスト装置５１ａに接続された複数のデバイスは、デバイスの合計要求値がホスト装置５１ａの許容電流値を超える場合、選択されたいくつかのデバイスが活性化され、それら以外のデバイスは非活性化される。このため、アプリケーションプログラムの実行によって使用するデバイスが非活性状態にある場合、それを活性化しなければならない。しかし、使用したデバイスがそのまま活性化状態にあるとその時のデバイスの設定がユーザが意図する設定と異なり、不具合が発生する場合がある。例えば、使用するデバイスを活性化する場合、デバイスの合計消費電流値がホスト��置５１ａの許容電流値を超えると、活性化状態にあるデバイスを非活性化して使用電流を少なくしなければならない。このため、デバイスが非活性化されると、そのデバイスを次ぎに使用しようとする場合に、設定状態が変わっているために使用できない。更に、ユーザはステータスウインドウを表示させて動作状態を変更しなければならず、手間がかかるからである。【０１４７】  図３０は、アプリケーション等のプログラム実行時におけるデバイス制御処理のフローチャートである。
ＭＰＵ５２は、先ず、ステップ６１０でステータスウインドウを待避し、続くステップ６２０で余裕電流値と使用するデバイスの要求値とを比較しそのデバイスに電流の供給が可能か否かを判断する。【０１４８】  電流の供給が可能（余裕電流値≧要求値）と判断した場合、ＭＰＵ５２はステップ６３０にてメモリ５３の第１領域５３ａに格納された情報のうち、使用するデバイスの状態を「Ａｃｔｉｖｅ」に変更する。【０１４９】  次ぎに、ＭＰＵ５２は、ステップ６４０で使用するデバイスに要求値の電流を供給し、ステップ６５０にてそのデバイスに対する処理を実行する。その処理終了後、ステップ６６０で電流の供給を停止し、ステップ６７０でステータスウインドウを復帰する。【０１５０】  ステップ６２０で電流の供給が不可能（余裕電流値＜要求値）と判断した場合、ＭＰＵ５２は、ステップ６８０でステータスウインドウを表示する。次ぎに、ＭＰＵ５２は、ステップ６９０でユーザによる状態が変更されるのを待機し、状態が変更された場合にはステップ６４０へ移行する。つまり、ユーザによって使用しないデバイスの状態が「ｓｕｓｐｅｎｄ」に変更され、余裕電流が確保される。【０１５１】  尚、ユーザによる状態が変更された場合、その変更によって電流の供給が可能になっているか否かを判断するようにしてもよい。つまり、ステップ６９０からステップ６２０へ移行する。この場合、操作ミス等によって休止するデバイスが間違っていても余裕電流が確保されるまでステップ６２０，６８０，６９０を繰り返し実行するため、余裕電流を確実に確保することができる。【０１５２】  次ぎに、一例として、ホスト装置５１ａからプリンタ６２に対して印刷処理を実行する場合について説明する。
今、ホスト装置５１ａは図３１に示すステータスウインドウＷ１１のように、許容電流が２５００ｍＡであり、余裕電流が１４０ｍＡである。ＭＰＵ５２は、このステータスウインドウＷ１１を図２９に示すメモリ５３の第２領域５３ｂに待避する。【０１５３】  次ぎに、ＭＰＵ５２は、電流の供給が可能か否かを判断する。プリンタＤ２の要求値は１００ｍＡである。従って、プリンタ６２に要求値の電流を供給した場合でも、使用電流は２４６０ｍＡであるため許容電流の２５００ｍＡを越えることはない。このため、ＭＰＵ５２は、プリンタＤ２を活性化し、そのプリンタＤ２に対してコマンド等を送信する印刷処理を実行する。そして、その印刷処理の終了後、ＭＰＵ５２は、ステータスウインドウＷ１１を復帰する。【０１５４】  一方、ホスト装置５１ａは図３２に示すステータスウインドウＷ１２のように、許容電流が２５００ｍＡであり、余裕電流は９０ｍＡである。ＭＰＵ５２は、このステータスウインドウＷ１２を図２９に示すメモリ５３の第２領域５３ｂに待避する。【０１５５】  次ぎに、ＭＰＵ５２は、電流の供給が可能か否かを判断する。プリンタＤ２の要求値は１００ｍＡである。従って、プリンタＤ２に要求値の電流を供給すると、ホスト装置５１ａの許容電流を越えてしまい、動作中のデバイスの動作を不安定にしてしまう。【０１５６】  このため、ＭＰＵ５２は、ステータスウインドウＷ１２をディスプレイ５６に表示させて、ホスト装置５１ａを操作するユーザに各デバイスを使用するか否かの判断を求めるようにしている。ここで、ユーザがステータスウインドウＷ１２に表示されている許容電流に留意し、キーボードＤ１のマウスを操作することで、この処理中に於いて使用していないスキャナＤ５におけるオフボタンを選択する。【０１５７】  その結果、図３３に示すように、ステータスウインドウＷ１３がディスプレイ５６に表示される。ステータスウインドウＷ１３では、図３２のステータスウインドウＷ１２と比較して、第５の通信ポートＰ５（スキャナＤ５）の現在値が２．５ｍＡに変更され、状態の表示が「ｓｕｓｐｅｎｄ」に変更されている。また、第２の通信ポートＰ２（プリンタＤ２）の現在値が１００ｍＡに変更され、状態の表示が「Ａｃｔｉｖｅ」に変更されている。なお、プリンタＤ２は、バス給電ではなく自前の電源で動作する機器であり、「Ａｃｔｉｖｅ」の状態は青色で表示される。【０１５８】  そして、使用電流は２２１０ｍＡとなり、２５００ｍＡの許容電流に対して余裕電流が２９０ｍＡとなる。よって、ホスト装置５１ａは、プリンタＤ２に対してコマンド等を送信する印刷処理を実行する。そして、その印刷処理の終了後、ＭＰＵ５２は、ステータスウインドウＷ１２を復帰する。【０１５９】  本発明の第６実施形態のホスト装置５１ａは、以下の利点を有する。
（１）ホスト装置５１ａは、アプリケーションプログラムの実行において、接続された複数のデバイスＤ１〜Ｄ１０を使用する場合、その使用するデバイスが停止状態にある場合には該デバイスが要求する電流量を供給する。この時、要求量の電流を供給することによって複数のデバイスに供給する電流量の合計値が許容電流量を超えるか否か判断する。そして、合計値が許容電流量を超えない場合、ホスト装置５１ａは、要求量の電流をデバイスに供給してそのデバイスを活性化するようにした。この場合、ユーザがデバイスを活性化する必要がないので、手間がかからず容易にデバイスを使用することができる。又、プログラムの実行によってデバイスが活性化されるため、ユーザが活性化する場合に比べてデバイスが活性化するまでの経過時間が短くなり、処理終了までの時間をユーザがデバイスを活性化する場合に比べて短くすることができる。【０１６０】  （２）ホスト装置５１ａは、デバイスの使用にあたって複数のデバイスに供給する電流量の合計値が許容電流量を越える場合、ディスプレイ５６にステータスウインドウを表示させる。そして、ステータスウインドウを確認したユーザがボタンを選択すると、その選択されたデバイスへの供給電流が低減され、使用するデバイスに要求量の電流が供給される。この場合、ユーザは使用しないデバイスを選択するだけでよいので手間が少なく、容易にデバイスを活性化して使用することができる。【０１６１】  （３）ホスト装置５１ａは、接続された複数のデバイスに対して供給する電流の量を変更するに先立ってそのステータスウインドウを待避し、処理の終了（デバイスの使用終了）後にステータスウインドウを復帰するようにした。この場合、ユーザが意図するデバイスの状態を維持しながら停止状態にあるデバイスを使用することができ、デバイスを活性化する手間を省くことができる。【０１６２】  以下、本発明を具体化した第７実施形態を説明する。
図３４は、第７実施形態におけるホスト装置５１ｂの概略的なブロック回路図である。
第７実施形態において、ホスト装置５１ｂの構成は図２９に示す第６実施形態のホスト装置５１ａと同様である。また、ホスト装置５１が有する複数の通信ポートＰ１〜Ｐ１０には、図３４に示すように、ＵＳＢデバイスＤ１〜Ｄ１０がそれぞれ接続されている。【０１６３】  メモリ５３にはファンクション実行フラグ５３ｃが格納されている。図３６に示すように、ファンクション実行フラグ５３ｃにより、ホスト装置５１ｂが備える通信ポートＰ１〜Ｐ１０に接続されたデバイスが有する動作の状態が、通信ポートＰ１〜Ｐ１０毎に対応付けて示される。図中、「Ａｃｔｉｖｅ」と表示されたデバイスは、動作中であることを示し、「Ｗａｉｔ」と表示されたデバイスは、停止中であることを示す。【０１６４】  動作中であるデバイスは、ＵＳＢファンクションも動作中であるため、その要求値の電流がホスト装置５１ｂから供給されている。停止中であるデバイスは、ＵＳＢファンクションが動作中（Ａｃｔｉｖｅ）であるものと、それが停止中（ｓｕｓｐｅｎｄ）であるものとを含む。つまり、停止中であるデバイスには、その要求値の電流が供給されているデバイスと、その動作モード（サスペンドモード）に応じた少ない電流（例えば、２．５ｍＡ）が供給されているデバイスとが含まれる。【０１６５】  ＭＰＵ５２は、第６実施形態と同様に、アプリケーションプログラム等の実行によって非活性状態にあるデバイスを使用する場合、そのデバイスを活性化する。そして、ＭＰＵ５２は、そのデバイスの活性化によって接続された全てのデバイスの合計消費電流値がホスト装置５１ａの許容電流値を超える場合、活性化状態にあるデバイスのいくつかを非活性化して合計消費電流値が許容電流値を超えないようにする。このとき、ＭＰＵ５２は、非活性化するデバイスを、ステータスウインドウに表示する情報（デバイスの状態）とファンクション実行フラグ５３ｃにより決定する。【０１６６】  詳述すると、ＭＰＵ５２は、停止状態（Ｗａｉｔ）にあるデバイスを、ファンクション実行フラグ５３ｃから検索する。次ぎに、ＭＰＵ５２は、ステータスウインドウに基づいて、停止状態にあるデバイスのうち、ＵＳＢファンクションが活性化状態にある、即ち要求値の電流を供給しているデバイスを検索する。そして、ＭＰＵ５２は、要求値の電流を供給しているデバイスのＵＳＢファンクションを停止状態に変更し、供給する電流量を低減する。【０１６７】  従って、アプリケーション等のプログラムの実行に伴って使用するデバイスが自動的に活性化され、その活性化によりホスト装置５１がデバイスに供給する電流が許容電流を越える場合には、その時に於いて使用されないデバイスが自動的に停止状態に変更され、余裕電流が確保される。従って、デバイスを活性化する手間がかからないうえ、システム全体の動作が不安定になるのを防ぐことができる。【０１６８】  尚、停止状態にあり、且つＵＳＢファンクションが活性化状態にあるデバイスが複数存在する場合、ＭＰＵ５２は、その存在する全てのデバイスを「ｓｕｓｐｅｎｄ」に変更する。これにより、余裕電流を確実に確保して短い時間で使用するデバイスに対する処理を開始する。停止状態にある全てのデバイスを「ｓｕｓｐｅｎｄ」に変更する理由は、複数のデバイスのうちのいくつかを「ｓｕｓｐｅｎｄ」に変更しても余裕電流値が使用するデバイスの要求消費電流値を越えない場合、更にデバイスを「ｓｕｓｐｅｎｄ」に変更しなければならず、それによって処理の開始が遅れるからである。【０１６９】  そして、予定していた動作が終了すると、ＭＰＵ５２は、使用したデバイスを停止状態に変更する。デバイス動作の終了は、ホスト装置５１からデバイスへの問い合わせによって行われる。詳述すると、ＭＰＵ５２は、ホストコントローラ５４を介してデバイスに対して動作状況を確認するためにリクエストコマンドを所定間隔で発行し、デバイスはその応答としてレスポンスコマンドを送信する。ＭＰＵ５２は、受け取ったレスポンスコマンドに基づき、そのデバイスの動作状態を確認する。この第７実施形態では、動作状態には、オートパワーダウン状態、コマンド終了状態、ファンクション動作中がある。尚、他の動作状態を含む構成としてもよい。【０１７０】  デバイスに対して発行するリクエストコマンド及びデバイスが送信するレスポンスコマンドは、当該デバイスの種類によって異なる。例えば、リムーバブルディスク装置の場合、リクエストコマンドとして「ＴＥＳＴ  ＵＮＩＴ  ＲＥＡＤＹコマンド」が用いられる。ホスト装置５１ｂは、上記コマンドを発行し、デバイスはそのコマンドに対して「ＲＥＡＤＹ状態」か否かを返信する。リムーバブルディスク装置は、記録媒体がセットされている場合には「ＲＥＡＤＹ状態」を返信し、それがセットされていない場合には「ＮＯＴ  ＲＥＡＤＹ状態」を返信する。このため、ホスト装置５１ｂは、受信した状態に基づいて、リムーバブルディスク装置が「ＮＯＴ  ＲＥＡＤＹ状態」にある場合、使用可能な状態ではないので、ファンクション実行フラグを停止中に設定する。リクエストコマンドとして「ＲＥＡＤ  ＳＥＣＴＯＲコマンド」や「ＷＲＩＴＥ  ＳＥＣＴＯＲコマンド」のように、記録媒体に対するアクセスを行うためのコマンドを用いてもよく、ホスト装置５１ｂは、データ転送終了後にステータスレジスタの内容を読み出し、それに問題がなければファンクション実行フラグを停止中に設定する。アクセスのためのコマンドを用いる場合、そのアクセスの時のみに要求値の電流を供給するため、消費電流を低減することができる。【０１７１】  ＭＰＵ５２は、デバイスが動作中の場合にはファンクション動作フラグを動作中（Ａｃｔｉｖｅ）にセットし、それ以外（オートパワーダウン状態又はコマンド終了状態）の場合にはファンクション動作フラグを停止状態（Ｗａｉｔ）にセットする。【０１７２】  尚、デバイスの状態を変更するに際して、ＭＰＵ５２は、第６実施形態と同様に、ステータスウインドウの待避及び復帰を行う。これにより、処理終了後においてユーザの意図しないデバイスが非活性化されたままになることが防止され、ユーザがデバイスを活性化する手間を省くことができる。【０１７３】  図３５は、アプリケーション等のプログラム実行時におけるデバイス制御処理のフローチャートである。このフローチャートにおいて、ステップ７１０〜７７０は、第６実施形態において図３０に示すステップ６１０〜６７０と実質的に同じ処理である。【��１７４】  ステップ７２０で電流の供給が不可能（余裕電流値＜要求値）と判断した場合、ＭＰＵ５２は、ステップ７８０でファンクション実行フラグに基づいて非実行中のデバイスを検索する。次ぎに、ＭＰＵ５２は、ステップ７９０で非実行中のデバイスを非活性化する。つまり、ホスト装置５１ｂによって使用していないデバイスの状態が「ｓｕｓｐｅｎｄ」に変更され、余裕電流が確保される。そして、ＭＰＵ５２は、ステップ８００において、使用するデバイスの状態を「Ａｃｔｉｖｅ」に変更し、ステップ７４０に移行する。【０１７５】  本発明の第７実施形態のホスト装置５１ｂは、以下の利点を有する。
（１）ホスト装置５１ｂは、通信ポートＰ１〜Ｐ１０に接続されたデバイスが有する動作状態を、通信ポートＰ１〜Ｐ１０毎に対応付けて示すファンクション実行フラグ５３ｃを有している。ホスト装置５１ｂは、アプリケーションプログラム等の実行によって非活性状態にあるデバイスを活性化することによって接続された全てのデバイスの合計消費電流値がホスト装置５１ａの許容電流値を超える場合、ファンクション実行フラグ５３ｃに基づいて活性化状態にあるデバイスのいくつかを非活性化して合計消費電流値が許容電流値を超えないようにする。この場合、アプリケーション等のプログラムの実行に伴って使用するデバイスが自動的に活性化され、その活性化によりホスト装置５１がデバイスに供給する電流が許容電流を越える場合には、その時に於いて使用されないデバイスが自動的に停止状態に変更され、余裕電流が確保される。従って、デバイスを活性化する手間がかからないうえ、システム全体の動作が不安定になることが防止される。【０１７６】  以下、本発明を具体化した第８実施形態を説明する。
第８実施形態において、ホスト装置の構成は図３４に示す第７実施形態と同様である。そして、第８実施形態のホスト装置５１ｂは、停止中であるデバイスのファンクション実行フラグをＯＦＦに変更し、ファンクション実行フラグがＯＦＦであるデバイスのＵＳＢファンクションの機能を非活性化する、即ち状態を「ｓｕｓｐｅｎｄ」に変更する機能を有している。【０１７７】  従って、動作が終了したデバイスは、ファンクション実行フラグがＯＦＦされる。更に、デバイスは、ＵＳＢファンクションが非活性化されるため、それに伴ってホスト装置５１ｂから供給される電流が減少される。【０１７８】  また、この第８実施形態のホスト装置５１ｂは、第７実施形態と同様に、アプリケーションプログラム等の実行によって非活性状態にあるデバイスを使用する場合、そのデバイスを活性化する。この時、上記したように動作が終了したデバイスは、非活性化されて、そこには最低限の通信（デバイスリセットやデータ信号の受信）が可能な電流（例えば２．５ｍＡ）が供給されている。即ち、使用しないデバイスに対する無駄な電流供給は行われていない。このため、多くの場合、ホスト装置５１ｂは、その時の使用電流量は許容電流量に比べて小さく、十分な要求電流量を持つ。従って、ホスト装置５１ｂは、使用するデバイスのＵＳＢファンクションを活性化する、即ちステータスウインドウの状態を「Ａｃｔｉｖｅ」に変更し、要求される電流を供給する。【０１７９】  一方、そのデバイスの活性化によって接続された全てのデバイスの合計消費電流値が許容電流値を超える場合、いくつかのデバイスを非活性化して、供給する電流量を確保する必要がある。しかしながら、上記したように動作が終了したデバイスは、非活性化されて、そこには最低限の通信が可能な電流しか供給されていない。このため、第７実施形態のように、ホスト装置５１ｂがデバイスを非活性化することによって供給電流量を確保することができない。【０１８０】  このため、ホスト装置５１ｂは、ステータスウインドウを表示装置であるディスプレイ５６に表示し、電流の供給状況をユーザに通知する。更に、ホスト装置５１ｂは、警告ウインドウをディスプレイ５６に表示し、ホスト装置５１を操作するユーザに処理の継続等の判断を求める。【０１８１】  図３９に示すように、警告ウインドウＷ２１には、警告メッセージと、複数（図３９では３つ）の項目が表示されている。本実施形態において、第１の項目は、現在の動作を停止するものであり、第２の項目は、第１の項目以外の動作を停止するものであり、第３の項目は、電力が足りるまで待つものである。【０１８２】  ユーザは、キーボード６１のマウスを操作し、３つの項目のうちの１つを選択する。ユーザが第１の項目を選択した場合、ホスト装置５１ｂは、現在実行しようとしている動作を停止する。例えば、アプリケーション等のプログラムの実行によってプリンタ６２を使用して印刷を行う場合、そのプリンタ６２に対する動作、即ち印刷処理を停止する。【０１８３】  ユーザが第２の項目を選択した場合、ユーザは、更に、キーボード６１のマウスを操作し、ステータスウインドウに表示されている許容電流に留意して、動作を停止して良いデバイスが���続された通信ポートのセレクタ（ＯＮ／ＯＦＦ）を選択する。ホスト装置５１ｂは、選択された通信ポートに供給する電流量を減少させ、その通信ポートに接続されたデバイスのＵＳＢファンクションを非活性化する。これにより、その時の動作によって使用するデバイスが要求する電流を供給するために十分な余裕電流量が確保され、ホスト装置５１ｂは、使用するデバイスに要求量の電流を供給し、そのデバイスのＵＳＢファンクションを活性化する。【０１８４】  ユーザが第３の項目を選択した場合、ホスト装置５１ｂは、電力が足りるまで、即ち、他のデバイスが停止するのを待つ。現状においてファンクション実行フラグがＯＮ状態にあるデバイスは、その動作が終了することによりファンクション実行フラグがＯＦＦするとともに、ＵＳＢファンクションが非活性化する。この非活性化により、ホスト装置５１ｂからそのデバイスに供給する電流量が少なくなり、余裕電流量が増加する。従って、ホスト装置５１ｂは、活性化しようとするデバイス以外のデバイスを停止して非活性化することにより、余裕電流量が活性化しようとするデバイスの要求値よりも大きくなるまで待機する。【０１８５】  この時、ホスト装置５１ｂは、所定時間毎に余裕電流量と活性化しようとするデバイスの要求値とを比較し、その余裕電流量が要求値よりも大きくなるのを待つ。そして、余裕電流量が要求値より大きくなると、ホスト装置５１ｂは、使用するデバイスに要求量の電流を供給し、そのデバイスのＵＳＢファンクションを活性化する。【０１８６】  図３７，３８は、アプリケーション等のプログラム実行時におけるデバイス制御処理のフローチャートである。
ＭＰＵ５２は、先ず、ステップ８１０で余裕電流値と使用するデバイスの要求値とを比較しそのデバイスに電流の供給が可能か否かを判断する。【０１８７】  電流の供給が可能（余裕電流値≧要求値）と判断した場合、ＭＰＵ５２はステップ８２０にてメモリ５３の第１領域５３ａに格納された情報のうち、使用するデバイスの状態を「Ａｃｔｉｖｅ」に変更する。次ぎに、ＭＰＵ５２は、ステップ８３０にてファンクション実行フラグをＯＮに変更する。ＭＰＵ５２は、ステップ８４０で使用するデバイスに要求値の電流を供給する。【０１８８】  その後、ＭＰＵ５２は、そのデバイスに対する処理を実行する。要求値の電流がホスト装置５１ｂから供給されてデバイスのＵＳＢファンクションが活性化され、ホスト装置５１ｂから処理に従って送信されるデータに応答して動作する。その動作が終了すると、停止中であるデバイスのファンクション実行フラグをＯＦＦに変更し、ファンクション実行フラグがＯＦＦであるデバイスのＵＳＢファンクションの機能を非活性化する。このデバイスを非活性化する処理は、ホスト装置５１ｂが実行するアプリケーション等のプログラムの実行とは無関係に行われるため、ホスト装置５１ｂは、そのデバイスが実行する処理の終了を待つ必要がなく、次の処理を実行することができる。【０１８９】  一方、ステップ８１０において電流の供給が不可能と判断した場合、ＭＰＵ５２は、ステップ８５０で警告ウインドウＷ２１を表示し、ステップ８６０でステータスウインドウを表示する。そして、ＭＰＵ５２は、ステップ８７０においてユーザが警告ウインドウＷ２１とステータスウインドウの少なくとも一方に入力するのを待つ。【０１９０】  これは、この第８実施形態における警告ウインドウＷ２１が、ステータスウインドウへの入力を必要とする項目（第２の項目）があるからである。従って、これらステップ８５０〜８７０の処理及び順番は、適宜変更されてもよい。例えば、警告ウインドウを表示し、そのウインドウに対する入力を待ち、必要に応じてステータスウインドウを表示するようにしてもよい。【０１９１】  次に、ステップ８８０において、ＭＰＵ５２は、ステップ８７０における入力が「動作停止」であるか否かを判断し、「動作停止」の場合には当該デバイスに対する処理を終了する。例えば、アプリケーションの実行中に印刷を行う場合、プリンタ６２（図２９参照）を使用する。そして、プリンタ６２を使用するのに十分な余裕電流がなく、ステップ８７０において動作停止が選択された場合、ＭＰＵ５２は、そのプリンタ６２を使用する処理を中断し、アプリケーションの実行を再開する。【０１９２】  ステップ８８０において入力が「動作停止」ではないと判断した場合、ＭＰＵ５２は、ステップ８９０においてステータスウインドウ内の動作が停止されているか否かを判断する。停止は、セレクタの切り替えにより判断する。つまり、ＭＰＵ５２は、ステータスウインドウに表示したセレクタ欄のボタンが切り替えられたか否かを判定し、切り替えがあった場合に図３７に示すステップ８２０に移行し、それ以降の処理を実行する。尚、セレクタ欄のボタンの切り替えがあった場合、電力の供給が可能か判断する、即ち、ステップ８１０に移行する構成としてもよい。【０１９３】  ステップ８９０において入力がステータスウインドウ内の動作の停止を行わない、即ちこの第８実施形態において「電力が足りるまで待つ」を選択した場合、ＭＰＵ５２は、電力供給が可能になるまで待つ。即ち、ＭＰＵ５２は、ステップ９００において所定時間経過するのを待ち、ステップ９１０において余裕電流量に基づいて電力の供給が可能になったか否かを判断する。そして、電力の供給が可能になっていない場合、ＭＰＵ５２は、ステップ９００に移行する。即ち、ステップ９００とステップ９１０を繰り返し実行し、電力の供給が可能になるのを待つ。【０１９４】  ステップ９１０において、電力の供給が可能になったと判断すると、ＭＰＵ５２は、図３７に示すステップ８２０に移行し、それ以降の処理を実行する。
本発明の第８実施形態のホスト装置５１ｂは、以下の利点を有する。
（１）ホスト装置５１ｂは、停止中であるデバイスのファンクション実行フラグをＯＦＦに変更し、ファンクション実行フラグがＯＦＦであるデバイスのＵＳＢファンクションの機能を非活性化する。この場合、動作が終了したデバイスは、ファンクション実行フラグがＯＦＦされる。更に、デバイスのＵＳＢファンクションが非活性化されるため、それに伴ってホスト装置５１ｂから供給される電流が減少され、消費電流を低減することができる。【０１９５】  （２）ホスト装置５１ｂは、ステータスウインドウを表示装置であるディスプレイ５６に表示し、電流の供給状況をユーザに通知する。更に、ホスト装置５１ｂは、警告ウインドウをディスプレイ５６に表示し、ホスト装置５１を操作するユーザに処理の継続等の判断を求める。ユーザが処理の継続を選択した場合、ホスト装置５１ｂは電流の供給が可能になるまで待機するため、手間をかけることなく処理を継続することができる。ユーザが処理の中止を選択した場合、デバイスを使用する処理を中断するため、他の処理を実行することができる。【０１９６】  上記実施形態は以下のように変更してもよい。
・第１実施形態では、ホスト装置１１が各デバイス２１〜２３に供給電流の変更を問い合わせるために、コンフィグレーションディスクリプタの最大消費電流フィールドを使用するものであったが、これに限定されるものではない。コンフィグレーションディスクリプタ以外のディスクリプタのフィールドを使用したり、新規のディスクリプタやフィールドを設定し、その新規フィールドを使用したりして、供給電流の変更のためのネゴシエーションを行うようにしてもよい。【０１９７】  ・第１実施形態では、制御回路であるＭＰＵ１２が図２の処理を実行していたが、ホストコントローラ１４に、図２の処理を実行するための制御部を設けてもよい。また、第２〜第４実施形態においても、図１１、図１３及び図１４の処理をＭＰＵ３３が実行していたが、ＵＳＢコントローラ３５に設けた制御部がそれらの処理を実行するようにしてもよい。このようにすると、ＭＰＵ１２，３３の処理負荷を低減することができ、実用上好ましいものとなる。【０１９８】  ・図９のデバイス３１において、内部回路の消費電流を切り替えるレベルスイッチ（データの読み出し又は書き込み速度を設定するスイッチ）を設けてもよい。この場合、第３実施形態と同様に、レベルスイッチの設定値に応じてレジスタ３６ａに記憶する消費電流を変更し、その変更後において、スイッチユニット４２の切り替え動作によりデバイス３１を一時的に切断状態にする。このようにしても、デバイス３１をレベルスイッチの設定値に応じた適切な供給電流で動作させることが可能となる。【０１９９】  ・第２〜第４実施形態におけるスイッチユニット４２（図１０参照）を、図２８に示すスイッチユニット４２Ａに代えてもよい。すなわち、図２８のスイッチユニット４２Ａは、複数のスイッチング素子（ＭＯＳトランジスタ）Ｔｒ１，Ｔｒ２，Ｔｒ３を備え、各スイッチング素子Ｔｒ１〜Ｔｒ３を制御して、ホスト装置４１にデバイス３１の切断を認識させる。具体的に、Ｆｕｌｌ  Ｓｐｅｅｄで動作しているデバイス３１では、ＭＰＵ３３からの制御信号Ｓ１によりスイッチング素子Ｔｒ１がオフされ、通信データを伝達する信号線Ｄ＋のプルアップ抵抗Ｒ１が切断される。これにより、信号線Ｄ＋，Ｄ−が「ＳＥ０」と呼ばれる状態となるため、ホスト装置４１にデバイス３１が切断されたと認識させることができる。また、Ｈｉｇｈ  Ｓｐｅｅｄで動作しているデバイス３１では、ＭＰＵ３３からの制御信号Ｓ２，Ｓ３によりスイッチング素子Ｔｒ２，Ｔｒ３がオフされ、通信データを伝達する信号線Ｄ＋，Ｄ−がハイインピーダンス状態とされる。これにより、信号線Ｄ＋，Ｄ−の電圧レベルが、ＵＳＢ規格のディスコネクト電圧値（例えば、６２５ｍＶ）を越えるため、ホスト装置４１にデバイス３１が切断されたと認識させることができる。【０２００】  ・第１実施形態のホスト装置１１における電流監視回路１６とスイッチ回路２５を省略してもよい。また、第５実施形態のホスト装置５１におけるリミッタ５８を省略してもよい。この場合、各回路１６，２５，５８を省略する分だけホスト装置１１，５１のコスト低減が可能となる。【０２０１】  ・第２及び第４実施形態のデバイス３１では、パワーコントローラ３６に電流経路���切断するスイッチ回路３６ｂを設け、デバイス３１の不認識時（図１１のステップ２７０）においてスイッチ回路３６ｂをオフして、デバイス３１の電源を切断していた。これに対し、電流経路を切断するスイッチ回路３６ｂを設けないデバイスでは、図１１のステップ２７０において、内部回路の消費電流を最小限の電流とし、その動作モードを待機モードに設定する。このようにしても、デバイスでの無駄な電流消費を防止できる。【０２０２】  ・各実施形態では、ホスト装置１１，４１，５１とデバイス２１〜２３，３１，４３，６１〜６７，７１〜７３とをＵＳＢインターフェースで接続する通信システムに具体化していたが、ＵＳＢインターフェース以外の他の通信インターフェースで接続する通信システムに具体化してもよい。【０２０３】  ・上記第６又は第７実施形態において、ステータスの待避を行わないようにしてもよい。
・第７実施形態において、ファンクション実行フラグに基づいて供給電流を削減するデバイスの順番を予め設定しても良い。つまり、供給電流を削減する順番を記録したリストを備える構成とする。この順番は、ユーザが設定するもの、使用頻度の低いものから供給電流を削減するように設定したもの、デバイスを使用する優先順位が低いものから供給電流を削減するように設定したもの、等、適宜設定される。【０２０４】  ・第７実施形態において、プログラムの実行等によって一時的に使用したデバイスを非活性化するときのみならず、デバイスがホスト装置に接続されている間、そのデバイスが動作中か否かを判断して停止中のデバイスのＵＳＢファンクションを停止状態に変更するようにしてもよい。この場合、停止状態にあるデバイスの電流供給が自動的に停止されるため、システム全体の消費電力を低減することができる。【０２０５】  ・第７，８実施形態において、デバイスが動作状態（オートパワーダウン状態、コマンド終了状態、ファンクション動作中）を所定時間間隔毎に通知する構成としてもよい。この場合、ホスト装置がデバイスに対してリクエストコマンドを発行する必要がないため、ホスト装置における通常の処理に対してオーバーヘッドを減らして処理の高速化を図ることができる。【０２０６】  ・第８実施形態において、警告ウインドウＷ２１の内容とそれに対する処理を適宜変更してもよい。例えば、使用するデバイスに電流を供給する余裕がない場合、電流供給が可能になるまで待機し、待機する旨と処理を中断するか否かの判断を仰ぐ旨の表示をウインドウに表示するようにしてもよい。
【図１】
2005022369.tif 000002
【図２】
2005022369.tif 000003
【図３】
2005022369.tif 000004
【図４】
2005022369.tif 000005
【図５】
2005022369.tif 000006
【図６】
2005022369.tif 000007
【図７】
2005022369.tif 000008
【図８】
2005022369.tif 000009
【図９】
2005022369.tif 000010
【図１０】
2005022369.tif 000011
【図１１】
2005022369.tif 000012
【図１２】
2005022369.tif 000013
【図１３】
2005022369.tif 000014
【図１４】
2005022369.tif 000015
【図１５】
2005022369.tif 000016
【図１６】
2005022369.tif 000017
【図１７】
2005022369.tif 000018
【図１８】
2005022369.tif 000019
【図１９】
2005022369.tif 000020
【図２０】
2005022369.tif 000021
【図２１】
2005022369.tif 000022
【図２２】
2005022369.tif 000023
【図２３】
2005022369.tif 000024
【図２４】
2005022369.tif 000025
【図２５】
2005022369.tif 000026
【図２６】
2005022369.tif 000027
【図２７】
2005022369.tif 000028
【図２８】
2005022369.tif 000029
【図２９】
2005022369.tif 000030
【図３０】
2005022369.tif 000031
【図３１】
2005022369.tif 000032
【図３２】
2005022369.tif 000033
【図３３】
2005022369.tif 000034
【図３４】
2005022369.tif 000035
【図３５】
2005022369.tif 000036
【図３６】
2005022369.tif 000037
【図３７】
2005022369.tif 000038
【図３８】
2005022369.tif 000039
【図３９】
2005022369.tif 000040
【図４０】
2005022369.tif 000041
【図４１】
2005022369.tif 000042
【手続補正書】
【提出日】平成17年12月16日(2005.12.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
シリアル通信を行うための複数のバスを介した給電により複数のデバイスを動作させるホスト装置であって、
前記複数のデバイスを接続するための複数の通信ポートと、
前記複数の通信ポートに接続され、前記複数のデバイスとの間での通信によって、前記複数のデバイスの消費電流を含む複数の機器情報を前記複数のデバイスから取得する通信回路と、
前記複数の通信ポートに接続され、前記複数のデバイスに電流を供給する電流供給回路と、
前記通信回路と前記電流供給回路に接続され、前記複数の通信ポートに新たに接続されたデバイスの消費電流と既に接続認識済みのデバイスの消費電流との合計値が前記電流供給回路の供給可能な電流を越えるとき、前記電流供給回路から前記複数のデバイスに供給する供給電流を変更する制御回路と
を備えたことを特徴とするホスト装置。
【請求項２】
前記制御回路は、新たに接続されたデバイス及び接続認識済みのデバイスに対して、供給電流の分配を変更することを特徴とする請求項１に記載のホスト装置。
【請求項３】
前記通信回路は、前記電流供給回路の供給可能な電流値を前記複数のデバイスに送信する機能を持つことを特徴とする請求項１又は２に記載のホスト装置。
【請求項４】
シリアル通信を行うための複数のバスを介した給電により複数のデバイスを動作させるホスト装置であって、
前記複数のデバイスを接続するための複数の通信ポートと、
前記複数の通信ポートに接続され、前記複数のデバイスとの間での通信によって、複数のデバイスの消費電流を含む複数の機器情報を取得する通信回路と、
前記通信回路に接続され、前記複数の機器情報と、各通信ポートに接続されている複数のデバイスを使用状態とするか未使用状態とするかをユーザに選択させるための選択情報とを表示する表示装置と、
前記通信回路及び表示装置に接続され、前記複数のデバイスの消費電流と前記選択情報に基づくユーザの選択結果とに従って、前記通信ポート毎に各デバイスの供給電流を制御する制御回路と
を備えたことを特徴とするホスト装置。
【請求項５】
シリアル通信を行うためのバスを介してホスト装置から電源を受け取り動作するデバイスであって、
前記バスを介して前記ホスト装置と通信を行うための通信回路を含み、該通信回路で送受信される通信データに基づいて動作する内部回路と、
前記内部回路に接続され、前記デバイスが前記ホスト装置に接続される時に、前記内部回路の消費電流が前記ホスト装置の供給可能な電流を超えるとき、前記消費電流を低減する制御回路と
を備えたことを特徴とするデバイス。
【請求項６】
シリアル通信を行うための複数のバスを介してホスト装置から複数のデバイスに給電し前記複数のデバイスを動作させる通信システムの制御方法であって、
前記ホスト装置が、各デバイスの消費電流を含む機器情報を前記複数のデバイスから取得するステップと、
前記ホスト装置に新たに接続されたデバイスの消費電流と既に接続認識済みのデバイスの消費電流との合計値が前記ホスト装置の供給可能な電流を越えるとき、前記ホスト装置が、前記供給可能な電流に対応して各デバイスに供給する供給電流の配分を変更するステップと
を備えたことを特徴とする通信システムの制御方法。
【請求項７】
シリアル通信を行うためのバスを介してホスト装置からデバイスに給電し前記デバイスを動作させる通信システムの制御方法であって、
前記デバイスは、前記ホスト装置と通信を行うための通信回路を含み該通信回路で送受信される通信データに基づいて動作する内部回路を有し、
前記内部回路で消費する消費電流が前記ホスト装置の供給可能な電流を超えるとき、前記デバイスがその供給可能な電流に合わせて前記内部回路の消費電流を低減するステップを備えたことを特徴とする通信システムの制御方法。
【請求項８】
シリアル通信を行うための複数のバスを介してホスト装置から複数のデバイスに給電し前記複数のデバイスを動作させる通信システムの制御方法であって、
前記ホスト装置が、前記複数のデバイスの消費電流を含む機器情報を前記複数のデバイスから取得するステップと、
前記ホスト装置に設けられた表示装置に、前記各デバイスの機器情報と、該各デバイスを使用状態とするか未使用状態とするかをユーザに選択させるための選択情報とを表示するステップと、
前記機器情報に含まれる消費電流と前記選択情報に基づくユーザの選択結果とに従って、前記各デバイスへの供給電流を制御するステップと
を備えたことを特徴とする通信システムの制御方法。
【請求項９】
シリアル通信を行うための複数のバスを介した給電により複数のデバイスを動作させるホスト装置であって、
前記複数のデバイスを接続するための複数の通信ポートと、
前記複数の通信ポートに接続され、前記複数のデバイスとの間での通信によって、複数のデバイスの消費電流を含む複数の機器情報を取得する通信回路と、
前記通信回路に接続され、未使用状態にあるデバイスを使用状態に変更することによって増加する消費電流量が前記電流供給回路の供給可能な電流を超えるときに、前記電流供給回路から接続された複数のデバイスに供給する電流量を変更する制御回路と、
を備えたことを特徴とするホスト装置。
【請求項１０】
シリアル通信を行うための複数のバスを介してホスト装置から複数のデバイスに給電し前記複数のデバイスを動作させる通信システムの制御方法であって、
前記ホスト装置が、前記複数のデバイスの消費電流を含む機器情報を前記複数のデバイスから取得するステップと、
前記ホスト装置が、未使用状態にあるデバイスの要求値に応じた電流の供給が可能か否かを判断するステップと、
前記電流の供給が不可能な場合に前記電流供給回路から接続された複数のデバイスに供給する電流量を変更するステップと、
を備えたことを特徴とする通信システムの制御方法。
【国際調査報告】
2005022369.tif 000043
2005022369.tif 000044
2005022369.tif 000045