(57)【要約】【課題】複数の接続ポートを有するＨＵＢ装置において、ＨＵＢ装置とＵＳＢデバイスとのデータ通信中に別の接続ポートに他のＵＳＢデバイスが接続されると、エニュメレーション処理により、ＨＵＢ装置とＵＳＢデバイスとの通信速度が一時的に低下する。【解決手段】制御装置１０４は、接続ポート１０２ａ〜１０２ｄへのＵＳＢデバイスの接続状態を確認し、ＨＵＢ装置１０１とＵＳＢデバイス１２０との間でデータ通信要求があったとき、ＵＳＢデバイス１２０が接続されていない接続ポート１０２ｂ〜１０２ｄへの電源供給を停止する。そして、データ通信完了後にこれらの接続ポート１０２ｂ〜１０２ｄへの電源供給を再開する。これにより、データ通信中に接続ポート１０２ｂ〜１０２ｄに他のデバイス１２１が接続されても、エニュメレーション処理が実行されず、ＨＵＢ装置１０１とＵＳＢデバイス１２０との通信速度の低下を防ぐことができる。【選択図】図１
2012242942.tif 000002
【特許請求の範囲】
【請求項１】
複数の接続ポートを有するＨＵＢ装置の制御方法であって、
前記各接続ポートにＵＳＢデバイスが接続されているか否かを確認する第１のステップと、
前記第１のステップにおいて接続が確認された第１の接続ポートを介して、前記ＨＵＢ装置と前記ＵＳＢデバイスとの間でデータ通信要求があったか否かを確認する第２のステップと、
前記第２のステップにおいてデータ通信要求を確認したとき、前記第１のステップにおいて接続が確認されなかった第２の接続ポートへの電源供給を停止し、前記データ通信要求に係るデータ通信を前記第１の接続ポートを介して開始する第３のステップと、
前記第３のステップにおいて開始したデータ通信が完了したとき、前記第３のステップにおいて電源供給を停止した前記第２の接続ポートへの電源供給を再開する第４のステップとを有する
ことを特徴とするＨＵＢ装置の制御方法。
【請求項２】
請求項１記載のＨＵＢ装置の制御方法において、
前記第３のステップは、前記第２のステップにおいて前記データ通信要求を確認した場合において、当該データ通信要求が所定の優先条件を満たすものであるとき、前記第２の接続ポートへの電源供給を停止し、前記データ通信要求に係るデータ通信を前記第１の接続ポートを介して開始する
ことを特徴とするＨＵＢ装置の制御方法。
【請求項３】
請求項１記載のＨＵＢ装置の制御方法において、
前記第３のステップにおける前記第２の接続ポートへの電源供給の停止、および前記第４のステップにおける前記第２の接続ポートへの電源供給の再開を、ＵＳＢ規格に準拠したクラスリクエストにより実施する
ことを特徴とするＨＵＢ装置の制御方法。
【請求項４】
複数のＵＳＢデバイスが接続可能なＨＵＢ装置であって、
前記ＨＵＢ装置と前記ＵＳＢデバイスとをＵＳＢを介して接続する複数の接続ポートと、
前記複数の接続ポートと接続された、集線回路であるＨＵＢ回路と、
前記ＨＵＢ装置および前記複数の接続ポートを制御する制御装置とを備えており、
前記制御装置は、
前記各接続ポートに前記ＵＳＢデバイスが接続されているか否かを確認する接続確認手段と、
前記接続確認手段によって接続が確認された第１の接続ポートを介して、前記ＨＵＢ装置と前記ＵＳＢデバイスとの間でデータ通信要求があったか否かを確認するデータ通信要求確認手段と、
前記データ通信要求確認手段において前記データ通信要求が確認されたとき、前記接続確認手段において接続が確認されなかった第２の接続ポートへの電源供給を停止し、前記データ通信要求に係るデータ通信を前記第１の接続ポートを介して開始する第１の通信制御手段と、
前記第１の通信制御手段によって開始されたデータ通信が完了したとき、前記第１の通信制御手段によって電源供給を停止した前記第２の接続ポートへの電源供給を再開する第２の通信制御手段とを備えている
ことを特徴とするＨＵＢ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＨＵＢ装置の制御方法およびＨＵＢ装置に係り、特に、ユニバーサル・シリアル・バス（以下、ＵＳＢ）を利用した接続において、ＵＳＢホスト機能とＨＵＢ機能を有した組み込みＡＶ（Ａｕｄｉｏ  Ｖｉｓｕａｌ）機器（以下、マルチメディア機器）に代表されるＨＵＢ装置の制御方法、ＨＵＢ装置およびＨＵＢ装置の制御プログラムに好適に利用できるものである。
【背景技術】
【０００２】
近年、ＵＳＢホスト機能を有したインターフェースは、ＰＣだけではなく、マルチメディア機器をはじめとするデジタル機器にも標準のインターフェースとして搭載され、普及が進んでいる。このようなＵＳＢホスト機能を有するマルチメディア機器（デジタル機器）の普及により、これまでＰＣへの接続用途に使用されていたＵＳＢメモリデバイスなどが、マルチメディア機器（デジタル機器）にも接続されるようになってきている。例えば、ストレージ機能に対応したＵＳＢメモリデバイスをマルチメディア機器に接続し、ＵＳＢメモリデバイス内の音楽データを再生することなどが行われている。
【０００３】
また、これまではマルチメディア機器（デジタル機器）にＵＳＢデバイスが１デバイスだけ接続され、制御されてきた。しかし、マルチメディア機器（デジタル機器）の多機能化により、これらの機器をＨＵＢとしての機能に対応させ、これらの機器に複数のＵＳＢデバイスを接続し、それらを同時に制御することが可能になってきている。
【０００４】
例えば、ストレージ機能に対応したＵＳＢメモリを２つ接続することが出来るマルチメディア機器では、ＵＳＢメモリの音楽データを再生しながら、他のＵＳＢメモリへの音楽データのコピーを行うことが可能である。また、デジタルオーディオプレイヤーと無線ローカルエリアネットワーク（以下、無線ＬＡＮ）の機能に対応したＵＳＢデバイスを接続することができるデジタル機器では、デジタルオーディオプレーヤー内に格納されている音楽データのストリーム再生を行いながら、無線ＬＡＮ機能を使いデータ通信を行うことが可能である。
【０００５】
このように複数のＵＳＢデバイスが接続されるマルチメディア機器（デジタル機器）では、これらの機器とＵＳＢデバイスとがデータ通信を行っている間に、ユーザにより他のＵＳＢデバイスが接続されることが想定される。この他のＵＳＢデバイスが接続されたとき、接続された他のＵＳＢデバイスに対して機器情報を取得するための接続処理（以下、エニュメレーション処理）が行われる。このエニュメレーション処理は、接続された他のＵＳＢデバイスの機器情報の取得をＨＵＢ装置外部からの特別な操作や制御なしに実現する一方、この時にデータ通信を行っているＵＳＢデバイスに対しては、通信帯域を一時的に減少させ、データ通信速度を低下させる可能性がある。これにより、例えば音楽再生を行っている場合には、音切れを発生させる原因となりかねない。また、例えば動画像を再生している場合には、再生中の映像の乱れを発生させる原因となりかねない。
【０００６】
上記の問題を解決するために、特許文献１では、デバイスが接続されるポートへの電源供給の有効と無効とを手動（スイッチのオンオフ制御またはＰＣ上での操作）にて切り替えられるＨＵＢ装置及びＨＵＢ装置の通信方法が開示されている。
【０００７】
図５は従来のＨＵＢ装置の構成例を示す図である（特許文献１）。ＨＵＢ装置３０１は、デバイス３２０，３２１を接続する下流ポート３０２ａ〜３０２ｃと、ユーザの手動によるオンオフ制御によってこれらの下流ポート３０２ａ〜３０２ｃへの電源供給の有効と無効を切り替えるスイッチ３０３ａ〜３０３ｃとを備えている。
【０００８】
ユーザは、スイッチ３０３ａ〜３０３ｃを手動で操作することにより、下流ポート３０２ａ〜３０２ｃへの電源供給を停止または再開することができる。そして、例えばユーザは、下流ポート３０２ａに接続されているデバイス３２０とホスト３３０とのデータ通信がＨＵＢ装置３０１を介して行われている間は、デバイス３２０が接続されていない下流ポート３０２ｂ，３０２ｃへの電源供給をスイッチ３０３ｂ，３０３ｃを使って手動で切断する。これにより、他のデバイス３２１が下流ポート３０２ｂ，３０２ｃに接続されても、この下流ポート３０２ｂ，３０２ｃへの電源供給が停止されているため、ＨＵＢ装置３０１は他のデバイス３２１に対して機器情報を取得するための接続処理を行わない。したがって、この他のデバイス３２１に対する接続処理による一時的なデータ通信速度の低下を防ぐことができる。
【０００９】
さらに特許文献１には、ＰＣ上で動作する制御プログラムとＰＣ上でのユーザによる選択動作とにより、選択した下流ポート３０２ａ〜３０２ｃへの電源供給を停止または再開するプログラムを格納したＰＣからの読み出しが可能な記憶媒体が併せて開示されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開平１１−１７７５９８
【発明の概要】
【発明が解決しようとする課題】
【００１１】
特許文献１に記載されたＨＵＢ装置３０１は、下流ポート３０２ａ〜３０２ｃへの電源供給の状態（停止または再開）をオンオフ制御するスイッチ３０３ａ〜３０３ｃを設ける必要がある。また、ユーザにより使用していないまたは使用しない下流ポートへの電源供給をあらかじめ停止しておく、例えば図５においてデバイス３２０が接続されていない下流ポート３０２ｂ〜３０２ｃへの電源供給を停止しておく必要がある。
【００１２】
また、ＰＣ上で動作する制御プログラムにおいても、ユーザによる切り替え手段（電源供給を停止するか否か）を指示する操作が必要となる。
【００１３】
また、マルチメディア機器のように組み込みの制御プログラムを格納する領域（リソース）が限られている環境においては、ＰＣ上で動作する制御プログラムの実装は困難である。
【００１４】
そこで、ＨＵＢ装置の接続ポートに係る電源供給の停止または再開の制御に関して、ＰＣ環境で動作するＨＵＢ装置の接続ポートへの電源供給を制御するための制御プログラムおよび、ＰＣ上での操作、手動によるスイッチのオンオフ制御などのユーザの操作を必要としないＨＵＢ装置の制御方法およびＨＵＢ装置が望まれる。
【００１５】
上記の点を鑑み、本発明は、限られたリソースの組み込み環境であっても、ユーザの操作を必要とせずに上述のデータ通信速度の低下を防ぐことが可能なＨＵＢ装置の制御方法およびＨＵＢ装置を提供することを目的とする。
【課題を解決するための手段】
【００１６】
本発明の一態様は、複数の接続ポートを有するＨＵＢ装置の制御方法であって、前記各接続ポートにＵＳＢデバイスが接続されているか否かを確認する第１のステップと、前記第１のステップにおいて接続が確認された第１の接続ポートを介して、前記ＨＵＢ装置と前記ＵＳＢデバイスとの間でデータ通信要求があったか否かを確認する第２のステップと、前記第２のステップにおいてデータ通信要求を確認したとき、前記第１のステップにおいて接続が確認されなかった第２の接続ポートへの電源供給を停止し、前記データ通信要求に係るデータ通信を前記第１の接続ポートを介して開始する第３のステップと、前記第３のステップにおいて開始したデータ通信が完了したとき、前記第３のステップにおいて電源供給を停止した前記第２の接続ポートへの電源供給を再開する第４のステップとを有するものとする。
【００１７】
この態様によると、第１のステップにおいて接続が確認された第１の接続ポートを介して、ＨＵＢ装置とＵＳＢデバイスとの間でデータ通信要求があった場合、第１のステップにおいて接続が確認されなかった第２の接続ポートへの電源供給を停止して、第２のステップにおけるデータ通信要求に係るデータ通信を第１の接続ポートを介して実施する。これにより、仮にこのデータ通信を行っている間に第２の接続ポートに他のＵＳＢデバイスが接続されたとしても、エニュメレーション処理が実施されないため、この処理が行われることによる一時的なデータ通信速度の低下を防ぐことができる。さらに、本態様ではユーザやＰＣ上で動作するプログラムなどからのスイッチのオンオフ制御は実施しないため、オンオフ制御するスイッチのような新たな制御機構およびユーザによる操作を必要としない。
【００１８】
また、第３のステップにおいて開始したデータ通信が完了した後に、第４のステップにおいて、第３のステップにおいて電源供給を停止していた第２の接続ポートへの電源供給を再開する。これにより、第２のステップにおけるデータ通信要求に係るデータ通信を第１の接続ポートを介して行っている間に、電源供給を停止していた第２の接続ポートに他のＵＳＢデバイスが接続されていた場合には、電源供給の再開とともに機器情報を取得するための接続処理であるエニュメレーション処理が実施される。
【００１９】
そして、前記第３のステップにおける前記第２の接続ポートへの電源供給の停止、および前記第４のステップにおける前記第２の接続ポートへの電源供給の再開を、ＵＳＢ規格に準拠したクラスリクエストにより実施してもよい。
【００２０】
これにより、ＨＵＢ装置の接続ポートへの電源供給を制御する手段（機構）を備えた特殊なＨＵＢ装置ではなくても、一般的に普及しているＵＳＢ規格のＵＳＢ−ＨＵＢのデバイスクラスに準拠したＨＵＢ装置を使用して、このＨＵＢ装置とＵＳＢデバイスとの通信を制御する既存の通信制御プログラムを活用して上述の接続ポートへの電源供給の停止または再開を行うことができる。
【００２１】
本発明の他の態様では、複数のＵＳＢデバイスが接続可能なＨＵＢ装置であって、前記ＨＵＢ装置と前記ＵＳＢデバイスとをＵＳＢを介して接続する複数の接続ポートと、前記複数の接続ポートと接続された、集線回路であるＨＵＢ回路と、前記ＨＵＢ装置および前記複数の接続ポートを制御する制御装置とを備えているものとする。そして、前記制御装置は、前記各接続ポートに前記ＵＳＢデバイスが接続されているか否かを確認する接続確認手段と、前記接続確認手段によって接続が確認された第１の接続ポートを介して、前記ＨＵＢ装置と前記ＵＳＢデバイスとの間でデータ通信要求があったか否かを確認するデータ通信要求確認手段と、前記データ通信要求確認手段において前記データ通信要求が確認されたとき、前記接続確認手段において接続が確認されなかった第２の接続ポートへの電源供給を停止し、前記データ通信要求に係るデータ通信を前記第１の接続ポートを介して開始する第１の通信制御手段と、前記第１の通信制御手段によって開始されたデータ通信が完了したとき、前記第１の通信制御手段によって電源供給を停止した前記第２の接続ポートへの電源供給を再開する第２の通信制御手段とを備えているものとする。
【００２２】
そして、前記ＨＵＢ装置における前記制御装置は、上述の各手段を実現するための制御プログラムを格納した制御プログラム領域と、前記制御プログラムの処理によって一時的に保存されるデータのためのデータ領域とを有するメモリ領域を備えているのが好ましい。
【００２３】
また、前記ＨＵＢ装置における前記制御装置は、上述の各手段を実現するための前記メモリ領域（前記制御プログラム領域および前記データ領域）の代わりに同様の機能（手段）を実現するシーケンス制御を行うハードウェアを備えていてもよい。
【発明の効果】
【００２４】
本発明によると、ＨＵＢ装置とＵＳＢデバイスとのデータ通信中に他のＵＳＢデバイスが接続されたことによる一時的な通信速度の低下を、オンオフ制御するスイッチのような新たな制御機構、ＰＣ環境で動作するプログラムおよびユーザによる操作（スイッチのオンオフ制御操作、およびＰＣ上での選択および制御操作）を必要とせずに防ぐことができる。
【００２５】
また、本発明によると、電源制御機能を有するような特殊なＨＵＢ装置を必要としない。しかも、既存のＨＵＢ装置とＵＳＢデバイスとの通信を制御する通信制御手段を活用して、上述のエニュメレーション処理に起因する通信速度の低下を防ぐことができる。そのため、ユーザの操作が限定されている環境においても使用可能である。また、リソースが限られた組み込み環境においても実装が可能である。
【図面の簡単な説明】
【００２６】
【図１】第１の実施形態に係るＨＵＢ装置の構成例を示すブロック図である。
【図２】第１の実施形態におけるＨＵＢ装置の電源制御および通信制御の動作を示すフローチャートである。
【図３】第２の実施形態におけるＨＵＢ装置の電源制御および通信制御の動作を示すフローチャートである。
【図４】優先条件の一例を説明するための図である。
【図５】従来のＨＵＢ装置の構成例を示すブロック図である。
【発明を実施するための形態】
【００２７】
以下、本発明の実施形態について図面を参照しながら説明する。なお、以下の各実施形態の説明において、一度説明した構成要素と同様の機能を有する構成要素については、同一の符号を付して説明を省略する。
【００２８】
＜第１の実施形態＞
図１は第１の実施形態に係るＨＵＢ装置の構成例を示す図である。図１のＨＵＢ装置１０１は、接続ポート１０２ａ〜１０２ｄ、ＨＵＢ回路１０３、制御装置１０４、マルチメディア装置１１１、および入出力装置１１２を備えている。なお、本実施形態では、４つの接続ポート１０２ａ〜１０２ｄがあるものとして説明するが、接続ポートの数は４つに限定されない。また、ＨＵＢ装置１０１に接続されているＵＳＢデバイス１２０は１台として説明するが、複数のＵＳＢデバイスが接続されていてもかまわない。
【００２９】
ＨＵＢ回路１０３は、接続ポート１０２ａ〜１０２ｄを介して接続されたＵＳＢデバイスからそれぞれ入力されたデータを集線し、制御装置１０４に出力する一方、制御装置１０４から出力されたデータを接続ポート１０２ａ〜１０２ｄを介して接続されたＵＳＢデバイスにそれぞれ出力する。例えば、図１のＨＵＢ回路１０３は、接続ポート１０２ａを介してＵＳＢデバイス１２０から入力されたデータを制御装置１０４に出力する一方、制御装置１０４から出力されたデータを、接続ポート１０２ａを介して接続されたＵＳＢデバイス１２０に出力する。ここで、ＨＵＢ回路１０３は、ＵＳＢ規格にて定められたＵＳＢ−ＨＵＢのデバイスクラスの規格に準拠した動作を実現することが可能であるものとする。
【００３０】
制御装置１０４は、ＵＳＢホストコントローラ１０５，データ制御装置１０６、演算装置１０７、およびメモリ領域１０８を備えている。制御装置１０４は、ＨＵＢ回路１０３を制御することにより、接続ポート１０２ａ〜１０２ｄにＵＳＢデバイス１２０が接続されているか否かを確認し、さらに、接続ポート１０２ａ〜１０２ｄへの電源供給のオンオフを制御する。また、接続ポート１０２ａに接続されたＵＳＢデバイス１２０とのエニュメレーション処理および双方向のデータ通信を制御する。例えば、全ての接続ポート１０２ａ〜１０２ｄへの電源供給がオンの場合において、ポート１０２ａにＵＳＢデバイス１２０が接続されているときでも、接続ポート１０２ｂに他のＵＳＢデバイス１２１が接続されると、接続された各接続ポート１０２ｂを介してＨＵＢ装置１０１とＵＳＢデバイス１２１との間で、制御装置１０４の制御に基づいてエニュメレーション処理が行われる。また、データ通信要求が発生したときには、その要求に基づいて双方向のデータ通信が行われる。
【００３１】
なお、接続されるＵＳＢデバイス１２０，１２１のデバイス（機器）の種類は、異なっていてもかまわない。
【００３２】
ＵＳＢホストコントローラ１０５は、ＨＵＢ回路１０３と接続されている。そして、接続ポート１０２ａ〜１０２ｄを介してＵＳＢデバイス１２０，１２１が接続されたとき、例えば接続ポート１０２ａにＵＳＢデバイス１２０が接続されたとき、ＨＵＢ回路１０３を介してＵＳＢデバイス１２０とのエニュメレーション処理および双方向のデータ通信処理を実施する。また、データ制御装置１０６へのデータ送受信処理を行う。さらに、演算装置１０７からの制御を受けたデータ制御装置１０６から出力される制御信号に従って、ＨＵＢ回路１０３を介して接続ポート１０２ａ〜１０２ｄにＵＳＢデバイス１２０，１２１が接続されているか否か確認するとともに、ＵＳＢ規格にて規定されたＵＳＢ−ＨＵＢのクラスリクエストを使用した通信を用いて接続ポート１０２ａ〜１０２ｄへの電源供給の停止および再開（オンオフ制御）を行う。
【００３３】
データ制御装置１０６は、ＵＳＢホストコントローラ１０５とのデータ送受信処理に係る制御を実施するとともに、演算装置１０７の制御を受けて、ＵＳＢホストコントローラ１０５に制御信号を出力する。また、メモリ領域１０８へのアクセス（すなわちデータ読み出しおよび書き込み）、マルチメディア装置１１１のデータ制御、および入出力装置１１２のデータ制御を行う。
【００３４】
演算装置１０７は、メモリ領域１０８の制御プログラム領域１０９に格納されている制御プログラムＰ１０９を使用してデータ制御装置１０６の制御を行う。その際に、必要に応じてメモリ領域１０８のデータ領域１１０に対してアクセス処理を行う。
【００３５】
メモリ領域１０８は、後述の図２および図３を用いて説明する制御方法を実現するための制御プログラムＰ１０９を格納した制御プログラム領域１０９と、制御プログラムＰ１０９の処理によって一時的にデータを保存するためのデータ領域１１０とを備えている。
【００３６】
マルチメディア装置１１１は、データ制御装置１０６から入出力したデータすなわちＵＳＢデバイス１２０から接続ポート１０２ａ、ＨＵＢ回路１０３、およびＵＳＢホストコントローラ１０５を経由して入力されたデータの解析を行い、その解析結果に応じた処理を行う。例えば、ＵＳＢデバイス１２０から出力された画像や音声などのデータが接続ポート１０２ａからデータ制御装置１０６を経由して入力されたとき、そのデータの解析を行い、ＨＵＢ装置１０１内で画像や音声などの再生処理などを行う。
【００３７】
入出力装置１１２は、マルチメディア装置１１１から送られてくるデータをユーザに提示する処理や、マルチメディア装置１１１の機能をユーザの入力に基づいて選択する処理などを行う。
【００３８】
図２は本実施形態に係るＨＵＢ装置の制御方法、すなわち図１のＨＵＢ装置１０１の動作を示すフローチャートである。
【００３９】
図２に示すように、まず、第１のステップでは、制御装置１０４はＨＵＢ回路１０３を介してＵＳＢデバイス１２０，１２１が接続されていない接続ポート１０２ａ〜１０２ｄの情報を入手し、メモリ領域１０８のデータ領域１１０に保存する（ステップＳ１）。具体的には、演算装置１０７は、制御プログラムＰ１０９を使用してデータ制御装置１０６を制御し、ＵＳＢホストコントローラ１０５からＨＵＢ回路１０３を介してＵＳＢデバイス１２０，１２１が接続されていない接続ポート１０２ａ〜１０２ｄの情報を入手し、メモリ領域１０８のデータ領域１１０に保存する。例えば図１において、演算装置１０７は、ＵＳＢデバイス１２０の接続されていない接続ポート１０２ｂ〜１０２ｄ（第２の接続ポート）の情報（状態）をデータ領域１１０に保存する。また、第２のステップでは、制御装置１０４は、ＨＵＢ回路１０３および接続ポート１０２ａを経由してＵＳＢデバイス１２０とＨＵＢ装置１０１との間でデータ通信要求があったか否か、すなわちＨＵＢ１０３回路経由のデータ通信を開始するか否かを確認する（ステップＳ２）。
【００４０】
次に、第３のステップにおいて、ステップＳ２におけるデータ通信要求が無かったとき（ステップＳ２でＮｏ）、制御装置１０４は接続ポート１０２ａ〜１０２ｄへの電力供給の制御（停止）を行わずに処理を終了する。一方、データ通信要求があったとき（ステップＳ２でＹｅｓ）、制御装置１０４は、ＨＵＢ回路１０３を介してＵＳＢデバイス１２０が接続されていなかった接続ポート１０２ｂ〜１０２ｄ（第２の接続ポート）への電源供給を停止する（ステップＳ３）。ステップＳ３における電源供給の停止を確認して、制御装置１０４は、ＨＵＢ回路１０３および接続ポート１０２ａ（第１の接続ポート）を経由したＵＳＢデバイス１２０とのデータ通信を開始する（ステップＳ４）。
【００４１】
すると、上記のデータ通信が行われている間は、電源供給が停止された接続ポート１０２ｂ〜１０２ｄに、他のＵＳＢデバイス１２１が接続されたとしても、検知不可能な状態となっているため、他のＵＳＢデバイス１２１が接続されたときに行われるエニュメレーション処理の通信が行われない。
【００４２】
ここで、他のＵＳＢデバイス１２１が接続されるとは、物理的な接続および電気的な接続の両方の接続を含んでいる。すなわち、例えば他のＵＳＢデバイス１２１が、既に接続ポート１０２ｂ〜１０２ｄのいずれかに物理的に接続されており、かつ電源が供給されていなかったとき（電気的に接続されていなかったとき）に、他のＵＳＢデバイス１２１への電源供給（オン制御）が開始されることによって、新たに発生する電気的接続を含んでいる。
【００４３】
なお、接続ポート１０２ｂ〜１０２ｄへの電源供給の停止は、ＵＳＢにおいては、ＵＳＢホストコントローラ１０５とＨＵＢ回路１０３との間でＵＳＢ規格にて規定されたＵＳＢ−ＨＵＢのクラスリクエストを使用した通信を行うことで実現できる。
【００４４】
ＨＵＢ装置１０１とＵＳＢデバイス１２０とのデータ通信が行われている間は、制御プログラムＰ１０９すなわち演算装置１０７によってデータ通信状態が管理される。具体的には、ＵＳＢホストコントローラ１０５、データ制御装置１０６、マルチメディア装置１１１、および入出力装置１１２へのデータ処理が実施される。そして、演算装置１０７は、ＨＵＢ回路１０３および接続ポート１０２ａを経由したＨＵＢ装置１０１とＵＳＢデバイス１２０とのデータ通信が完了するまで通信状態を確認する。
【００４５】
次に、第４のステップにおいて、演算装置１０７は、ＨＵＢ回路１０３および接続ポート１０２ａを経由したＨＵＢ装置１０１とＵＳＢデバイス１２０とのデータ通信の完了を確認した後（ステップＳ５）、ＨＵＢ回路１０３を経由してステップＳ３で電源供給を停止した接続ポート１０２ｂ〜１０２ｄ（第２の接続ポート）への電源供給を再開する（ステップＳ６）。このステップＳ６の処理により、接続ポート１０２ｂ〜１０２ｄを介して他のＵＳＢデバイス１２１を認識できる状態、すなわちエニュメレーション処理が実施可能な状態となり、処理は終了する。なお、接続ポート１０２ｂ〜１０２ｄへの電源供給の再開は、ＵＳＢにおいてはＵＳＢホストコントローラ１０５とＨＵＢ回路１０３との間でＵＳＢ規格にて規定されたＵＳＢ−ＨＵＢのクラスリクエストを使用した通信を行うことで実現できる。
【００４６】
以上のように本実施形態によれば、ＨＵＢ装置１０１とＵＳＢデバイス１２０とがデータ通信を行っている間、ＵＳＢデバイス１２０が接続されていない接続ポート１０２ｂ〜１０２ｄへの電源供給を停止している。そのため、上記のＨＵＢ装置１０１とＵＳＢデバイス１２０とがデータ通信を行っている間に接続ポート１０２ｂ〜１０２ｄに他のＵＳＢデバイス１２１が接続されたとしても、エニュメレーション処理が実施されない。これにより、エニュメレーション処理による一時的なデータ通信速度の低下を防ぐことができる。
【００４７】
また、上記のデータ通信が完了した後に、ステップＳ６において接続ポート１０２ｂ〜１０２ｄへの電源供給を再開させるため、例えば上記のＨＵＢ装置１０１とＵＳＢデバイス１２０とがデータ通信を行っている間に、電源供給を停止している接続ポート１０２ｂに他のＵＳＢデバイス１２１が接続されていた場合には、このステップＳ６での電源供給再開とともに、エニュメレーション処理が実施される。すなわち、ユーザの操作や外部のＰＣなどからの制御がなくても、データ通信中はエニュメレーション処理を実施できないようにするとともに、データ通信中に接続されていた他のＵＳＢデバイス１２１をデータ通信後に認識することができる。さらに、他のＵＳＢデバイス１２１以外のＵＳＢデバイスが追加され、例えば接続ポート１０３ｃに接続されてもエニュメレーション処理を実施することができる。
【００４８】
＜第２の実施形態＞
図３は、第２の実施形態における他の制御方法例を示すフローチャートである。図３のフローチャートにおいて、第１の実施形態と異なるのは、ステップＳ２におけるデータ通信要求について、後述の優先条件２０１を満たすか否かを判断するステップＳ７が追加されている点である。
【００４９】
そして、ステップＳ３では、ステップＳ２においてＨＵＢ装置１０１とＵＳＢデバイス１２０との間でデータ通信要求がなされており(ステップＳ２でＹｅｓ）、かつ、そのデータ通信要求がステップＳ７における優先条件２０１を満たすものであるとき(ステップＳ７でＹｅｓ）、制御装置１０４はステップＳ１においてＵＳＢデバイス１２０との接続が確認されなかった接続ポート１０２ｂ〜１０２ｄへの電源供給を停止する。一方、ステップＳ２においてＵＳＢデバイス１２０とＨＵＢ装置１０１との間で接続ポート１０２ａを介したデータ通信要求がなされており(ステップＳ２でＹｅｓ）、かつ、そのデータ通信要求がステップＳ７における優先条件２０１を満たさないものであるとき(ステップＳ７でＮｏ）、制御装置１０４はステップＳ１においてＵＳＢデバイス１２０との接続が確認されなかった接続ポート１０２ｂ〜１０２ｄへの電源供給を停止せずに、ＨＵＢ回路１０３および接続ポート１０２ａを経由したＵＳＢデバイス１２０とのデータ通信を開始する（ステップＳ４Ａ）。そして、ステップＳ５ＡではステップＳ５と同様のデータ処理およびデータ通信が完了するまで通信状態の確認が実施され、通信完了後に処理を終了する。
【００５０】
なお、その他のステップに関しては、図２のフローチャートにおける各ステップと同様の動作をするため、ここではその詳細な説明を省略する。
【００５１】
図４は優先条件の判断の一例を示す図である。優先条件２０１は、転送情報と優先情報とから構成されている。優先条件２０１の転送情報には、例えば本実施形態では、ＵＳＢ規格に準拠した転送方式の情報として、アイソクロナス転送、インタラプト転送、コントロール転送、およびバルク転送を記載している。また、優先条件２０１の優先情報には、例えばリアルタイム性を重視する通信か否かなどの転送される情報の優先度が記載される。本実施形態では、リアルタイム性を重視するアイソクロナス転送およびインタラプト転送を優先条件が高い設定であることを示す“高”と記載する一方、リアルタイム性が必要ではないコントロール転送およびバルク転送を優先条件が低い設定であることを示す“低”と記載している。ここで、図４において、優先条件２０１を満たすとは、優先条件が“高”に属しているものを指すものとする。すなわち、閾値のラインより上段に記載しているアイソクロナス転送およびインタラプト転送が、優先条件２０１を満たす転送情報となる。
【００５２】
そして、例えば、ステップＳ２においてＵＳＢデバイス１２０とＨＵＢ装置１０１との間でデータ通信要求があった場合において(ステップＳ２でＹｅｓ）、データ転送方式がコントロール転送またはバルク転送だったとき（ステップＳ７でＮｏ）、制御装置１０４はステップＳ１においてＵＳＢデバイス１２０との接続が確認されなかった接続ポート１０２ｂ〜１０２ｄへの電源供給を停止せずに、ＨＵＢ回路１０３および接続ポート１０２ａを経由したＵＳＢデバイス１２０とのデータ通信を開始する（ステップＳ４Ａ）。ステップＳ５ＡではステップＳ５と同様のデータ処理およびデータ通信が完了するまで通信状態の確認が実施され、通信完了後処理は終了する。
【００５３】
一方、例えば、ステップＳ２においてＵＳＢデバイス１２０とＨＵＢ装置１０１との間でデータ通信要求があった場合において(ステップＳ２でＹｅｓ）、データ転送方式がアイソクロナス転送またはインタラプト転送だったとき（ステップＳ７でＹｅｓ）、制御装置１０４は、ステップＳ３からステップＳ６までの処理を図２の説明と同様に実施する。
【００５４】
以上のように本実施形態によると、ＨＵＢ装置１０１とＵＳＢデバイス１２０とのデータ通信を行う際に、優先条件２０１に基づいて、ＵＳＢデバイス１２０の接続が確認されなかった接続ポート１０２ｂ〜１０２ｄへの電源供給を停止するため、優先条件２０１を満たすデータ通信要求があった場合にのみ、他のＵＳＢデバイス１２１を認識できない状態にし、エニュメレーション処理に起因する一時的なデータ通信速度の低下を防ぐことができる。
【００５５】
また、優先条件２０１を満たすデータ通信要求に係るデータ通信の場合において、データ通信が行われている間に電源供給を停止している接続ポート１０２ｂ〜１０２ｄに他のＵＳＢデバイス１２１が接続されていたときには、ステップＳ６における電源供給の再開とともに、接続されていた他のＵＳＢデバイス１２１とのエニュメレーション処理が実施される。
【００５６】
なお、優先条件２０１内の情報は、優先情報および転送情報に限らない。例えば、接続ポート１０２ａ〜１０２ｄの接続ポート番号、ＨＵＢ装置１０１に接続されるＵＳＢデバイスの種類、および接続される機器が通信に使用する帯域の大きさなど優先条件として優劣をつけられる情報であれば代用が可能である。
【００５７】
また、制御装置１０４内にシーケンス制御を行うハードウェアを設け、そのハードウェアによって第１および第２の実施形態における各ステップを実施しても同様の効果が得られる。
【産業上の利用可能性】
【００５８】
本発明では、リソースが限られた組み込み環境やユーザの操作が限られた環境においても、エニュメレーション処理による一時的なデータ通信速度の低下を防ぐことができる。そのため、例えばコンポ、ＤＶＤプレーヤー、ＨＤＤレコーダー、およびデジタルＴＶといったマルチメディア機器やカーナビゲーションシステムといったユーザの操作が限られた環境で使用される組み込み機器として有用である。
【符号の説明】
【００５９】
１０１    ＨＵＢ装置
１０２ａ，１０２ｂ，１０２ｃ，１０２ｄ    接続ポート
１０３    ＨＵＢ回路
１０４    制御装置
１２０，１２１  ＵＳＢデバイス
２０１    優先条件
【図１】
2012242942.tif 000003
【図２】
2012242942.tif 000004
【図３】
2012242942.tif 000005
【図４】
2012242942.tif 000006
【図５】
2012242942.tif 000007