(57)【要約】【課題】  ＵＳＢシステムにおいて、映像、音声等のデータをアイソクロナスＯＵＴ転送を用いてデバイスへ送信する際等において、同等の機能を有する複数のデバイスでバンド幅制限が加えられることを防止し、複数のデバイスが音声等のデータを同様に認識することを可能としてバンド幅の不足を防止する。【解決手段】  ホスト装置と複数のターゲット装置４とが接続されたＵＳＢシステム等を制御するための機器制御システム及び制御方法であって、複数のターゲット装置４の各々を通常デバイスまたは疑似デバイスのいずれで動作させるかを選択する選択手段５と、ホスト装置から複数のターゲット装置４にブロードキャスト送信した際に、疑似デバイスとして選択されたターゲット装置１１からホスト装置に対してブロードキャスト送信されたデータに対する応答送信を行わないようにする制御手段９とを備える。【選択図】  図４
2005182578.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置と複数のターゲット装置とが接続されたシステムを制御するための機器制御システムであって、
前記複数のターゲット装置の各々を通常デバイスまたは疑似デバイスのいずれで動作させるかを選択する選択手段と、
前記ホスト装置から前記複数のターゲット装置にブロードキャスト送信した際に、前記疑似デバイスとして選択されたターゲット装置から前記ホスト装置に対して前記ブロードキャスト送信されたデータに対する応答送信を行わないようにする制御手段とを備えることを特徴とする機器制御システム。
【請求項２】
前記システムはＵＳＢシステムであって、前記ホスト装置は、前記複数のターゲット装置に対してアイソクロナス転送で一定のバンド幅のデータを送信することを特徴とする請求項１記載の機器制御システム。
【請求項３】
前記制御手段は、前記複数のターゲット装置の各々からのディスクリプタ情報で該複数のターゲット装置の各々を制御するためのソフトウェアを選択し、
前記選択手段は、前記ターゲット装置の各々の内部に存在するデバイスディスクリプタのクラスコードであるbDeviceClassフィールドを切り替えることを特徴とする請求項２記載の機器制御システム。
【請求項４】
前記複数のターゲット装置の各々は、外部入力ボタンにより、ＵＳＢアドレスレジスタを'０'にクリアする手段を有することを特徴とする請求項２または３記載の機器制御システム。
【請求項５】
前記複数のターゲット装置の各々は、受信したパケットのエラーを外部の表示手段に出力する手段を有することを特徴とする請求項１乃至４のいずれかに記載の機器制御システム。
【請求項６】
ホスト装置と複数のターゲット装置とが接続されたシステムの制御方法であって、
前記複数のターゲット装置の各々を通常デバイスまたは疑似デバイスのいずれで動作させるかを設定し、
前記ホスト装置から前記複数のターゲット装置にブロードキャスト送信した際に、前記疑似デバイスとして選択されたターゲット装置から前記ホスト装置に対して前記ブロードキャスト送信されたデータに対する応答送信を行わないようにすることを特徴とする機器制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機器制御システム及び制御方法に関し、特に、ＵＳＢシステムにおいて、アイソクロナス転送を行う際等に用いられる機器制御システム及び制御方法に関する。
【背景技術】
【０００２】
従来、Universal Serial Bus（ＵＳＢ）は、主にパーソナルコンピュータと、その周辺機器の通信のための手段を提供する。ＵＳＢのバストポロジは、階層スター構造で構成され、取り付けポイントにはハブが用いられる。ＵＳＢには、コントロール、バルク、インターラプト、そしてアイソクロナスの４つの転送タイプが定義され、このうちアイソクロナス転送は、データ転送エラーを容認する代わりに、時間的に一定なバンド幅を保証する。音声や映像等の時間の同期が必要なデータは、このアイソクロナス転送を用いて通信する。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ＵＳＢバスには、データ転送が可能なバンド幅の制限がある。使用バンド幅の高いアイソクロナスデバイスを複数接続すると、このバンド幅の制限のため、デバイスが動作しなくなる可能性が高くなる場合がある。これは、同じ音声や映像を複数のデバイスに出力させたいときでも発生するおそれがあり、各々のデバイスがバンド幅を占有するため、バンド幅が不足するという問題があった。
【０００４】
そこで、本発明は、上記従来の技術における問題点に鑑みてなされたものであって、特に、映像、音声等のデータをアイソクロナスＯＵＴ転送を用いて複数のデバイスへ送信する場合等に、同等の機能を有する複数のデバイスでバンド幅の制限が加えられることがなく、映像、音声等のデータを同様に認識することのできる機器制御システム及び制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、本発明は、ホスト装置と複数のターゲット装置とが接続されたシステムを制御するための機器制御システムであって、前記複数のターゲット装置の各々を通常デバイスまたは疑似デバイスのいずれで動作させるかを選択する選択手段と、前記ホスト装置から前記複数のターゲット装置にブロードキャスト送信した際に、前記疑似デバイスとして選択されたターゲット装置から前記ホスト装置に対して前記ブロードキャスト送信されたデータに対する応答送信を行わないようにする制御手段とを備えることを特徴とする。
【０００６】
そして、本発明によれば、疑似デバイスとして選択されたターゲット装置については、前記ホスト装置から送信されたデータに対する応答送信を行わないようにしたため、ターゲット装置からの応答送信によって該ターゲット装置にバンド幅が割り当てられるようなシステムにおいて、疑似デバイスとして選択されたターゲット装置にバンド幅が割り当てられることがなく、システムで使用されるバンド幅を節約すること等が可能となる。
【０００７】
前記システムをＵＳＢシステムとすることができ、前記ホスト装置は、前記複数のターゲット装置に対してアイソクロナス転送で一定のバンド幅のデータを送信するようにすることができる。
【０００８】
このＵＳＢシステムにおいて、前記制御手段は、前記複数のターゲット装置の各々からのディスクリプタ情報で該複数のターゲット装置の各々を制御するためのソフトウェアを選択し、前記選択手段は、前記ターゲット装置の各々の内部に存在するデバイスディスクリプタのクラスコードであるbDeviceClassフィールドを切り替えるように構成することができる。
【０００９】
さらに、前記複数のターゲット装置の各々は、外部入力ボタンにより、ＵＳＢアドレスレジスタを'０'にクリアする手段を有することができる。
前記複数のターゲット装置の各々は、受信したパケットのエラーを外部の表示手段に出力する手段を有するように構成することができる。これによって、アドレス割り当てや構成処理中に疑似デバイスでパケットの処理エラーが発生したときに、ユーザーに知らせることができる。
【００１０】
また、本発明は、ホスト装置と複数のターゲット装置とが接続されたシステムの制御方法であって、前記複数のターゲット装置の各々を通常デバイスまたは疑似デバイスのいずれで動作させるかを設定し、前記ホスト装置から前記複数のターゲット装置にブロードキャスト送信した際に、前記疑似デバイスとして選択されたターゲット装置から前記ホスト装置に対して前記ブロードキャスト送信されたデータに対する応答送信を行わないようにすることを特徴とする。これによって、上述のように、ターゲット装置からの応答送信によって該ターゲット装置にバンド幅が割り当てられるようなシステムにおいて、疑似デバイスとして選択されたターゲット装置にバンド幅が割り当てられることがなく、システムで使用されるバンド幅を節約すること等が可能となる。
【発明の効果】
【００１１】
以上説明したように、本発明によれば、映像、音声等のデータをアイソクロナスＯＵＴ転送を用いてデバイスへ送信する場合に、同等の機能を有する複数のデバイスでバンド幅の制限が加えられることがなく、映像、音声等のデータを同様に認識すること等が可能な機器制御システム及び制御方法を提供することができる。
【発明を実施するための最良の形態】
【００１２】
図１は、本発明にかかる機器制御システム及び制御方法の一実施の形態におけるＵＳＢバスの接続例を示す。ルートハブ２と呼ばれる接続ポイントを有するＵＳＢホストコントローラ１に、ＵＳＢハブ３やターゲット装置としてのＵＳＢデバイス４をツリー状に接続してシステムを構成する。
【００１３】
ＵＳＢデバイス４は、アイソクロナスＯＵＴデータを受信して処理するＵＳＢデバイスである。各々のＵＳＢデバイス４は、図２に示すようなインターフェースを備える。スイッチ５は、ＵＳＢデバイス４が通常デバイスモードか擬似デバイスモードかのどちらで動作させるかを選択するスイッチである。その他に、通常デバイスモードのＵＳＢデバイス（以下、「通常デバイス」という）４へのパケットを擬似デバイスモードのＵＳＢデバイス（以下、「疑似デバイス」という）４が共有するためのＯｎ／Ｏｆｆボタン６と、パケット処理にエラーがあったことを示すためのエラーインジケータ７を装備する。
【００１４】
図３は、本発明にかかる機器制御システム及び制御方法を適用したＵＳＢデバイスレイヤの構成図である。エンドポイントは、ホスト装置とＵＳＢデバイス４との間の通信フローの終端であり、ＵＳＢデバイス４の一意に認識可能な部分である。その中でも、エンドポイント０は、ホスト装置がデバイスのステータスの取得やコントロールを行うためのデフォルトパイプの終端となる。また、各ＵＳＢデバイス４は、接続時にシステムによって割り振られる一意的なアドレスを有する。このデバイスアドレスと、エンドポイントナンバーと、エンドポイントとの通信方向の組み合わせで、各エンドポイントを個々に参照することができる。尚、ＵＳＢ通信方法の詳細については、ＵＳＢ２．０仕様の第５章に記載されている。
【００１５】
ＵＳＢデバイス４がＵＳＢバスに接続されたときに、スイッチ５が通常デバイスモードであれば、この通常デバイス１０は、通常デバイスソフトウェア８によって制御され、スイッチ５が擬似デバイスモードであれば、この疑似デバイス１１は、擬似デバイスソフトウェア９によって制御される。通常デバイスソフトウェア８は、通常デバイス１０に対してアドレスを割り当て、必要な構成処理と、ＵＳＢデバイス４が本来要求するアイソクロナスＯＵＴデータの出力とバンド幅の割り当てを行い、通常この通常デバイス１０が動作するための制御を行う。これに対し、擬似デバイスソフトウェア９は、疑似デバイス１１の接続後に疑似デバイス１１へのアドレス割り当てと必要な構成処理を完了した後は、疑似デバイス１１へのアイソクロナスＯＵＴデータ等のアクセスを一切せず、バンド幅も割り当てない。
【００１６】
図４は、本発明におけるＵＳＢデバイス４のブロック図を示し、ＵＳＢデータを送受信するＵＳＢレシーバ／トランシーバ１２と、ＵＳＢ規格に従ったパケットをＵＳＢレシーバ／トランシーバ１２と送受信し、その内容をエンドポイントとやり取りするシリアルインターフェースエンジン（以下、「ＳＩＥ」という）１３と、受信したパケットを認識するエンドポイント群１４（デフォルトパイプの終端であるエンドポイント０と、アイソクロナスＯＵＴデータを受信するためのエンドポイント）と、現在のＵＳＢアドレスを保持するためのＵＳＢアドレスレジスタ１５と、受信したパケットのアドレスと現在保持しているアドレスとを比較するＵＳＢアドレス比較器１６と、エンドポイントで受信したアイソクロナスＯＵＴデータを処理するアイソクロナスＯＵＴデータ処理部１７とで構成される。
【００１７】
受信したパケットは、ＳＩＥ１３を介してエンドポイント群１４とアドレス比較器１６に入力される。アドレス比較器１６で現在保持しているＵＳＢアドレスと受信したパケットのアドレスとを比較し、一致していればエンドポイント群１４の中のパケットが示すエンドポイントナンバーのエンドポイントがパケットを処理することを許可する。
【００１８】
外部インターフェースであるスイッチ５は、エンドポイント群１４中のエンドポイント０に入力され、エンドポイント０が持つデバイスディスクリプタのbDeviceClassフィールドの値の切り替えを行う。スイッチ５が通常モードであれば、bDeviceClassフィールドの値は、通常使用するＵＳＢクラスのままであり、疑似モードであれば、フィールドの値を'ＦＦｈ'に切り替える。
【００１９】
ボタン６の状態は、ＵＳＢアドレスレジスタ１５と、ＵＳＢレシーバ／トランシーバ１２とに入力され、ボタン６がＯｎになるトリガーでＵＳＢアドレスレジスタ１５をすべて'０'にクリアすることでアドレス０のパケットを受信できるようにするとともに、Ｏｎである間は、ＵＳＢバスへ疑似デバイス１１からホスト装置への反応を出力しないようにＵＳＢレシーバ／トランシーバ１２でマスクする。ボタン６は、スイッチ５が疑似モードのときにのみ有効性を有する。また、エンドポイント群１４中のエンドポイント０においてパケットの処理エラーがあると、エラーインジケータ７を点灯させる機能がある。
【００２０】
次に、上記構成を有する機器制御システム及び制御方法の動作について図面を参照しながら説明する。
【００２１】
最初に疑似デバイス１１（図３参照）として動作させるＵＳＢデバイス４を、図１に示すようにＵＳＢバスに接続する。ＵＳＢシステムは、ＵＳＢデバイス４が接続される際に、ＵＳＢデバイス４がどのようなものであるかをデバイスディスクリプタ情報をデフォルトパイプを通すことにより読み取る。最初、疑似デバイス１１のボタン６は、Ｏｆｆにしておく。疑似デバイス１１をＵＳＢバスに接続すると、疑似デバイス１１は、ディスクリプタの１つであるデバイスディスクリプタ内のデバイスクラスコードであるbDeviceClassフィールドをベンダクラス（ＦＦｈ）として報告する。
【００２２】
ＵＳＢシステムソフトウェアでは、このデバイスディスクリプタ内のbDeviceClassがベンダクラスとして報告されることと、どのベンダであるかを示すidVendorフィールドや製品の種類を示すidProductフィールドの情報から、接続されたＵＳＢデバイス４が疑似デバイス１１であると判断して擬似デバイスソフトウェア９の使用を選択し、疑似デバイス１１を制御するようにする。擬似デバイスソフトウェア９は、疑似デバイス１１へのアドレス割り当てと必要な構成処理を完了した後はアクセスを一切行わない。
【００２３】
接続するすべての擬似デバイス４の接続を完了させ、次に、通常デバイス１０をＵＳＢバスに接続する前に、全擬似デバイスのボタン６をＯｎにする。
【００２４】
図５に示すように、時刻Ｔ０においてボタン６がＯｎになり、ＵＳＢバスへＳＩＥ１３からのデータを出力しないようにＵＳＢレシーバ／トランシーバ１２でマスクする。そして、時刻Ｔ１で内部にＵＳＢアドレスレジスタ１５をクリアするトリガーをセットし、時刻Ｔ２で疑似デバイス１１内のＵＳＢアドレスレジスタ１５は、'０'にクリアされる。これにより、アドレス０に対するパケットをエンドポイント群１４中のエンドポイント０が受信して、それに対する処理を行うことができるが、実際にホスト装置にデータを返さないようにＵＳＢレシーバ／トランシーバ１２で出力データをマスクする。
【００２５】
そして、通常デバイス１０をＵＳＢバスに接続すると、ＵＳＢシステムソフトウエアは、通常デバイスソフトウェア８を用いてこの通常デバイス１０を制御する。
【００２６】
このときのＵＳＢシステムソフトウエアと通常デバイス１０、疑似デバイス１１のデフォルトパイプとの通信関係は、図３に示すとおりである。
【００２７】
この通常デバイス１０へのＵＳＢアドレス割り当てや構成処理を行うためのパケットは、ルートハブ２またはＵＳＢハブ３がすべてのイネーブルなポートにブロードキャストするため、ＵＳＢアドレスレジスタ１５を'０'にクリアした疑似デバイス１１までも受信することができ、通常デバイス１０と同じように処理することができる。しかし、疑似デバイス１１の出力データはマスクされているため、ホスト装置には通常デバイス１０の反応しか返らない。その結果、通常デバイス１０のアドレス割り当てと構成処理は、全疑似デバイス１１でも全く同様に行われる。そして、通常デバイス１０も同様にこのデータを受信し、処理できるようになる。
【００２８】
疑似デバイス１１では、出力データがマスクされているため、パケットの処理でエラーが発生しても、それをシステムが認識することができない。そこで、もしアドレス割り当てや構成処理中に疑似デバイス１１でパケットの処理エラーが発生したときは、エラーを示すためにエラーインジケータ７を点灯してユーザーに知らせることができる。ユーザーは、これを見てもう一度疑似デバイス１１の取り付けからやり直すことが可能である。アイソクロナスＯＵＴデータにはエラーを示す必要がないため、この場合エラーがあってもエラーインジケータ７は点灯させない。
【００２９】
次に、本発明にかかる機器制御システム及び制御方法の第２の実施の形態について説明する。
【００３０】
第１の実施の形態では、アイソクロナスＯＵＴデータに対して出力しないようにするため、bDeviceClassフィールドを切り替えて疑似デバイスソフトウェア９の使用を選択する方法をとっていた。この方法では、ＵＳＢシステムソフトウエア側に疑似デバイスソフトウエア９が必要である。
【００３１】
そこで、第２の実施の形態では、疑似デバイス１１を選択したときに立替インターフェースを見えなくする。具体的には、スイッチ５によって疑似デバイス１１を選択した場合には、ディスクリプタの１つであるコンフィギュレーションディスクリプタ内のサポートするインターフェース数を示すbNumInterfaceフィールドをアイソクロナスＯＵＴを使用するインターフェースをサポートしないように設定する。例えば、'1'に設定してデフォルトインターフェイスしか存在しないようにＵＳＢシステムソフトウエアに報告する。
【００３２】
そして、通常デバイスソフトウエアがデフォルトインターフェースしかない場合、アドレス割り当てと必要な構成処理を完了した後は、疑似デバイス１１へのアイソクロナスＯＵＴデータ等のアクセスを一切せず、バンド幅も割り当てないように制御する。これによって、第１の実施の形態による効果に加え、ＵＳＢシステムソフトウエアに通常デバイスソフトウエア８があれば、疑似デバイスソフトウエア９が不要となる効果も得られる。
【図面の簡単な説明】
【００３３】
【図１】本発明にかかる機器制御システムの一実施の形態におけるＵＳＢバスの接続例を示す図である。
【図２】本発明にかかる機器制御システムの一実施の形態におけるＵＳＢデバイスに装備する外部インターフェースを示す図である。
【図３】本発明にかかる機器制御システムの一実施の形態におけるＵＳＢシステムソフトウェアとＵＳＢデバイスとの通信関係図である。
【図４】本発明にかかる機器制御システムの一実施の形態におけるＵＳＢデバイスのブロック図である。
【図５】本発明にかかる機器制御システムの一実施の形態においてボタン６がＯｎになったときの動作を説明するタイムチャートである。
【符号の説明】
【００３４】
１      ＵＳＢホストコントローラ
２      ルートハブ
３      ＵＳＢハブ
４      ＵＳＢデバイス
５      スイッチ
６      ボタン
７      エラーインジケータ
８      通常デバイスソフトウェア
９      擬似デバイスソフトウェア
１０    通常デバイス
１１    擬似デバイス
１２    ＵＳＢレシーバ／トランシーバ
１３    シリアルインターフェースエンジン
１４    エンドポイント群
１５    ＵＳＢアドレスレジスタ
１６    ＵＳＢアドレス比較器
１７    アイソクロナスＯＵＴデータ処理部
【図１】
2005182578.tif 000003
【図２】
2005182578.tif 000004
【図３】
2005182578.tif 000005
【図４】
2005182578.tif 000006
【図５】
2005182578.tif 000007