(57)【特許請求の範囲】
【請求項１】
ＵＳＢホストからコントロール情報を受信するためのデフォルトコントロールエンドポイントと、
共用される装置アドレスに割り当てられ、前記ＵＳＢホストからブロードキャストアイソクロナスストリームを受信するためのアイソクロナスシンクエンドポイントと、
前記ＵＳＢホストから前記共用される装置アドレスを受信するためのアドレスレジスタと、
前記ブロードキャストアイソクロナスストリームを受信することを示す前記コントロール情報に応答し、前記割り当てられた共用される装置アドレスでアイソクロナスデータ転送として前記ブロードキャストアイソクロナスストリームの受信を管理し、前記共用される装置アドレスが割り当てられた後に受信される前記ブロードキャストアイソクロナスストリームを、それらの中に埋め込まれており、ＵＳＢ装置へ一意にアドレスされるコントロールコマンドのために監視し、前記共用される装置アドレスが前記ＵＳＢホストから受信された後、前記ＵＳＢホストからの追加のコントロール情報に応答する能力を管理するための装置マネージャと、
を具備する、ＵＳＢ装置。
【請求項２】
前記装置マネージャは、さらに、１次ブロードキャストスレーブとして前記ＵＳＢ装置を設定することによって、前記応答する能力を管理し、前記１次ブロードキャストスレーブは、前記追加のコントロール情報に応答する、請求項１のＵＳＢ装置。
【請求項３】
前記１次ブロードキャストスレーブとして前記ＵＳＢ装置を設定することは、前記コントロール情報に応答すること、前記ブロードキャストアイソクロナスストリームに埋め込まれたコントロールコマンドに応答すること、および２次コントロールチャネルとして設定された前記ＵＳＢ装置の追加のエンドポイントからの情報に応答すること、のうちの一つを具備する、請求項２のＵＳＢ装置。
【請求項４】
少なくとも一つの追加のエンドポイントをさらに具備し、
前記装置マネージャは、前記ＵＳＢ装置が前記１次ブロードキャストスレーブの場合に、さらに前記少なくとも一つの追加のエンドポイントと通信する能力を管理する、請求項２のＵＳＢ装置。
【請求項５】
前記少なくとも一つの追加のエンドポイントは、アイソクロナスデータ転送、コントロール転送、バルクデータ転送、およびインタラプトデータ転送からなるグループから選択された通信に応答する、請求項４のＵＳＢ装置。
【請求項６】
前記装置マネージャは、さらに、２次ブロードキャストスレーブとして前記ＵＳＢ装置を設定することによって、前記応答する能力を管理し、前記２次ブロードキャストスレーブは、１次ブロードキャストスレーブへの非アイソクロナス通信を無視する、請求項１のＵＳＢ装置。
【請求項７】
前記２次ブロードキャストスレーブとして前記ＵＳＢ装置を設定することは、前記コントロール情報に応答すること、前記ブロードキャストアイソクロナスストリームに埋め込まれたコントロールコマンドに応答すること、および２次コントロールチャネルとして設定された前記ＵＳＢ装置の追加のエンドポイントからの情報に応答すること、のうちの一つを具備する、請求項６のＵＳＢ装置。
【請求項８】
少なくとも一つの追加のエンドポイントをさらに具備し、
前記装置マネージャは、前記ＵＳＢ装置が前記２次ブロードキャストスレーブの場合に、さらに前記少なくとも一つの追加のエンドポイントと通信する能力を無能力にする、請求項６のＵＳＢ装置。
【請求項９】
前記装置マネージャは、さらに、前記ＵＳＢホストから利用可能として示される複数のブロードキャストアイソクロナスストリームから特定のブロードキャストアイソクロナスストリームの選択を示すための前記コントロール情報に応答する、請求項１のＵＳＢ装置。
【請求項１０】
コントロール情報を受信するためのデフォルトコントロールエンドポイントと、それに対して割り当てられた共用される装置アドレスを持ち、ブロードキャストアイソクロナスストリームを受信するためのアイソクロナスシンクエンドポイントと、共用される装置アドレスを受信するためのアドレスレジスタとをそれぞれが具備する複数のブロードキャスト可能ＵＳＢ装置と、
前記共用される装置アドレスが割り当てられた後に受信される前記ブロードキャストアイソクロナスストリームを、それらの中に埋め込まれており、ＵＳＢ装置へ一意にアドレスされるコントロールコマンドのために監視するために構成される装置マネージャと、
前記複数のブロードキャスト可能ＵＳＢ装置に使用可能に連結され、前記複数のブロードキャスト可能ＵＳＢ装置のうちの一つを１次ブロードキャストスレーブとして設定し、前記一つを除くすべての前記複数のブロードキャスト可能ＵＳＢ装置を２次ブロードキャストスレーブとして設定し、前記複数のブロードキャスト可能ＵＳＢ装置のそれぞれの装置への前記共用される装置アドレスを割り当てるためのコントロール転送を発行することと、前記共有される装置アドレスへのアイソクロナスデータ転送を前記ブロードキャストアイソクロナスストリームとして発行することと、によって前記複数のブロードキャスト可能ＵＳＢ装置をコントロールするためのＵＳＢホストと
を具備する、ＵＳＢシステム。
【請求項１１】
前記ＵＳＢシステムに使用可能に連結され、コントロール転送を発行することと前記アイソクロナスデータ転送を発行することとを繰り返すための少なくとも一つの一つのハブをさらに具備する、請求項１０のＵＳＢシステム。
【請求項１２】
前記ＵＳＢホストと前記少なくとも一つのハブとのそれぞれは、さらに、前記複数のブロードキャスト可能ＵＳＢ装置のうちの少なくとも一つの装置の取り外しを検出し、前記ＵＳＢホストは、さらに、前記複数のブロードキャスト可能ＵＳＢ装置において残された装置がない場合には、前記ブロードキャストアイソクロナスストリームを終結させる、請求項１１のＵＳＢシステム。
【請求項１３】
前記複数のブロードキャスト可能ＵＳＢ装置のうちのそれぞれの装置は、前記共用される装置アドレスが前記ＵＳＢホストから受信された後、前記ＵＳＢホストからの追加のコントロール情報に応答する能力を管理するための装置マネージャを含む、請求項１０のＵＳＢシステム。
【請求項１４】
前記１次ブロードキャストスレーブの前記装置マネージャは、前記共用される装置アドレスに対する追加のコントロール転送に応答し、前記２次ブロードキャストスレーブの前記装置マネージャは、前記共用される装置アドレスに対する追加のコントロール転送を無視する、請求項１３のＵＳＢシステム。
【請求項１５】
前記複数のブロードキャスト可能ＵＳＢ装置のうちのそれぞれの装置の前記装置マネージャは、さらに、前記ブロードキャストアイソクロナスストリームに埋め込まれているコントロールコマンドに応答し、２次コントロールチャネルとして設定されるある装置の追加のエンドポイントからの情報に応答する、請求項１３のＵＳＢシステム。
【請求項１６】
ＵＳＢトポロジー上のブロードキャスト可能ＵＳＢ装置を、アイソクロナスデータ転送としてブロードキャストアイソクロナスストリームを受信するためのブロードキャストモードに、設定することと、
前記ブロードキャスト可能ＵＳＢ装置のアイソクロナスシンクエンドポイントのアドレスを、共用される装置アドレスに、設定することと、
前記ＵＳＢトポロジー上の少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置を検出することと、
前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置を、前記ブロードキャストモードに、設定することと、
前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置のアドレスを、前記共用される装置アドレスに、設定することと、
前記ブロードキャストアイソクロナスストリームを、前記共用される装置アドレスに通信すること、
前記ブロードキャストアイソクロナスストリーム内に埋め込まれており、前記共用される装置アドレスが割り当てられた前記ブロードキャスト可能ＵＳＢ装置の少なくとも一つへ一意にアドレスされるコントロール情報を通信すること
とを具備する、方法。
【請求項１７】
前記ブロードキャスト可能ＵＳＢ装置を設定することから、前記ＵＳＢトポロジーに接続される少なくとも一つのハブを通じて前記コントロール情報を通信することまでの処理を繰り返す、請求項１６の方法。
【請求項１８】
ブロードキャストグループは、前記ブロードキャスト可能ＵＳＢ装置と前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置とからなり、
ＵＳＢホストからのコントロール転送に応答可能な１次ブロードキャストスレーブとして、前記ブロードキャストグループのある装置を設定し、
前記ＵＳＢホストからの前記コントロール転送に応答することを無能力にされた２次ブロードキャストスレーブとして、前記ブロードキャストグループのすべての他の装置を設定する
ことをさらに具備する、請求項１６の方法。
【請求項１９】
前記１次ブロードキャストスレーブとして前記ブロードキャストグループのある装置を設定することは、コントロール転送からのコントロール情報に応答することと、前記ブロードキャストアイソクロナスストリームに埋め込まれているコントロールコマンドに応答することと、２次コントロールチャネルとして設定されている前記ある装置の追加のエンドポイントに応答することと、のうちの一つを具備する、請求項１８の方法。
【請求項２０】
前記２次ブロードキャストスレーブとして前記ブロードキャストグループのすべての他の装置を設定することは、コントロール転送からのコントロール情報に応答することと、前記ブロードキャストアイソクロナスストリームに埋め込まれているコントロールコマンドに応答することと、２次コントロールチャネルとして設定されている前記ある装置の追加のエンドポイントに応答することと、のうちの一つを具備する、請求項１８の方法。
【請求項２１】
ブロードキャストグループは、前記ブロードキャスト可能ＵＳＢ装置と前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置とからなり、
前記ブロードキャストグループの少なくとも一つの装置の取り外しを検出することと、
もし前記ブロードキャストグループに残された装置がなければ、前記ブロードキャストアイソクロナスストリームを終結させることと
をさらに具備する、請求項１６の方法。
【請求項２２】
ＵＳＢホストから利用可能として指定された複数のブロードキャストアイソクロナスストリームから特定のブロードキャストアイソクロナスストリームの選択を指定することをさらに具備する、請求項１６の方法。
【請求項２３】
ＵＳＢトポロジー上のブロードキャスト可能ＵＳＢ装置を、アイソクロナスデータ転送としてブロードキャストアイソクロナスストリームを受信するためのブロードキャストモードに、設定するための手段と、
前記ブロードキャスト可能ＵＳＢ装置のアイソクロナスシンクエンドポイントのアドレスを、共用される装置アドレスに、設定するための手段と、
前記ＵＳＢトポロジー上の少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置を、前記ブロードキャストモードに、設定するための手段と、
前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置のアドレスを、前記共用される装置アドレスに、設定するための手段と、
前記ブロードキャストアイソクロナスストリームを、前記共用される装置アドレスに通信するための手段と、
前記ブロードキャストアイソクロナスストリーム内に埋め込まれており、前記共用される装置アドレスが割り当てられた前記ブロードキャスト可能ＵＳＢ装置の少なくとも１つへ一意にアドレスされるコントロール情報を通信するための手段と
を具備する、ＵＳＢシステム。
【請求項２４】
前記ブロードキャスト可能ＵＳＢ装置を設定するための手段から、前記ＵＳＢトポロジーに接続される少なくとも一つのハブを通じて前記コントロール情報を通信するための手段までの処理を繰り返す、請求項２３のシステム。
【請求項２５】
ブロードキャストグループは、前記ブロードキャスト可能ＵＳＢ装置と前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置とからなり、
ＵＳＢホストからのコントロール転送に応答可能な１次ブロードキャストスレーブとして、前記ブロードキャストグループのある装置を設定するための手段と、
前記ＵＳＢホストからの前記コントロール転送に応答することを無能力にされた２次ブロードキャストスレーブとして、前記ブロードキャストグループのすべての他の装置を設定するための手段と
をさらに具備する、請求項２３のＵＳＢシステム。
【請求項２６】
前記１次ブロードキャストスレーブとして前記ブロードキャストグループのある装置を設定するための前記手段は、コントロール転送からのコントロール情報に応答することと、前記ブロードキャストアイソクロナスストリームに埋め込まれているコントロールコマンドに応答することと、２次コントロールチャネルとして設定されている前記ある装置の追加のエンドポイントに応答することと、のうちの一つを実行するための手段を具備する、請求項２５のＵＳＢシステム。
【請求項２７】
前記２次ブロードキャストスレーブとして前記ブロードキャストグループのすべての他の装置を設定するための前記手段は、コントロール転送からのコントロール情報に応答することと、前記ブロードキャストアイソクロナスストリームに埋め込まれているコントロールコマンドに応答することと、２次コントロールチャネルとして設定されている前記ある装置の追加のエンドポイントからの情報に応答することと、のうちの一つを実行するための手段を具備する、請求項２５のＵＳＢシステム。
【請求項２８】
ブロードキャストグループは、前記ブロードキャスト可能ＵＳＢ装置と前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置とからなり、
前記ブロードキャストグループの少なくとも一つの装置の取り外しを検出するための手段と、
もし前記ブロードキャストグループに残された装置がなければ、前記ブロードキャストアイソクロナスストリームを終結させるための手段と
をさらに具備する、請求項２３のＵＳＢシステム。
【請求項２９】
ＵＳＢホストから利用可能として指定された複数のブロードキャストアイソクロナスストリームから特定のブロードキャストアイソクロナスストリームの選択を指定するための手段をさらに具備する、請求項２３の方法。
【発明の詳細な説明】
【背景】
【０００１】
ユニバーサルシリアルバス（ＵＳＢ）は、種々様々の周辺機器にコンピュータを取り付けるための標準の周辺インタフェースである。これらの周辺装置は、一般的にファンクションと呼ばれ、キーボード、マウス、カメラ、モニタ、モデム、また他の多くの周辺装置のようなハブおよび装置を含むとしてもよい。
【０００２】
ＵＳＢシステムにおける装置は、各装置が１以上のハブを通じてＵＳＢホストに接続される階層スタートポロジーにおいて、ＵＳＢホストに接続される。ＵＳＢシステムは、ホストコンピュータが、バスのすべての通信を管理し、取り付けまたは取り外される装置による変化についてバストポロジーを監視する単一のUSBコントローラ含む、ポーリングされるバスである。
【０００３】
ほとんどのバストランザクションは、３つのパケットを含む。ホストコントローラは、トランザクションのタイプおよび方向について記述するトークンパケット、装置アドレスおよびエンドポイント番号を送る。アドレス指定されたＵＳＢ装置は、トークンパケットからそのアドレスを認識する。データは、トークンパケットで特定された方向に基づいて、ホストからアドレス指定された装置へまたはアドレス指定された装置からホストのいずれかに、転送される。ほとんどの場合、データの宛先は、転送されたデータに対する受信ステータスを示すハンドシェイクパケットで応答する。
【０００４】
ＵＳＢシステムがバスに接続された複数の周辺装置をサポートするとき、ＵＳＢプロトコルは、ポイントツーポイントプロトコルである。言い換えれば、単一のホストは、一度に、単一の固有にアドレス指定された装置に、データを送信することができる。したがって、各装置がそのタイムスロットの間にデータを受信または送信できるように、各種の装置に対するデータは、時分割多重通信される。
【０００５】
ＵＳＢシステムは、一般的に、１ミリ秒の長さのフレームを定義し、それは高速ＵＳＢシステムで１２５マイクロ秒のミクロフレームへ細分されてもよい。ベーシックフレーム内で、ＵＳＢシステムは、バス上のほとんどまたはすべての装置に、異なる時間スロットを割り当てるとしてもよい。各装置は、固有のアドレスを持ち、したがって、装置は、送信されたデータがそれ向けであることを知り、または、ホストは、どの装置からデータが受信されるかを知る。
【０００６】
複数のＵＳＢ装置へ、ＵＳＢバスの情報を同時にブロードキャストするためのシステム、装置および方法の必要がある。
【図面の簡単な説明】
【０００７】
【図１】図１は、ＵＳＢシステムのためのトポロジー図を示す。
【図２】図２は、本発明の典型的な実施形態におけるローカル通信パイプの簡略ブロック図を示す。
【図３】図３は、本発明の典型的な実施形態の簡略ブロック図を示す。
【図４】図４は、本発明の実施形態に係る初期化プロセスの状態図を示す。
【図５】図５は、本発明の実施形態に係るブロードキャストプロセスの簡略フロー図である。
【図６】図６は、本発明の実施形態に係る１次スレーブを変更するためのプロセスの簡略フローダ図である。
【詳細な説明】
【０００８】
「典型的」という用語は、「例、実例、または例証として役立つ」ことを意味するためにここで使用される。「典型的」としてここに説明されるいずれの実施形態も不可欠ではなく、他の実施形態よりも好ましくまたは有利として解釈される。
【０００９】
添付された図面に関して以下に述べられた詳細な記述は、本発明の典型的な実施形態の記述として意図され、本発明が実行することができるただ一つの実施形態を表わすようには意図されない。詳細な記述は、発明の典型的な実施形態についての完全な理解を提供する目的で特定の詳細を含む。発明の典型的な実施形態がこれらの特定の詳細なしで実行されてもよいことは当業者にとって明白だろう。いくつかの実例において、よく知られている構成および装置は、ここに示される典型的な実施形態の新規性を不明瞭にしないようにするためにブロック図で示される。
【００１０】
本発明の典型的な実施形態は、ＵＳＢシステムでの複数のＵＳＢ装置へのブロードキャストデータに導かれる。
【００１１】
図１は、従来のＵＳＢシステムのためのトポロジー図１００を示す。ＵＳＢホスト１１０は、複数の接続ポイントを持つルートハブを含む。図１において、第１のファンクション１５０Ａは、ある接続ポイントで接続され、第１のハブ１２０Ａは、第２の接続ポイントに接続されている。第１のハブ１２０Ａは、複数の接続ポイントを含む。第２のファンクション１５０Ｂ、第２のハブ１２０Ｂ、および第３のハブ１２０Ｃは、第１のハブ１２０Ａに接続されている。第２のハブ１２０Ｂは、複数の接続ポイントを含むとしてもよい。第３のファンクション１５０Ｃは、第２のハブ１２０Ｂに接続されている。第３のハブ１２０Ｃは、複数の接続ポイントを含む。第４のファンクション１５０Ｄおよび第５のファンクション１５０Ｅは、第３のハブ１２０Ｃに接続されている。
【００１２】
そのアップストリームポートで受信されたデータをそれぞれのそのダウンストリームポートに送ること、および、そのダウンストリームポートのうちの一つからそのアップストリームポートへ情報を送ることによって、ハブは、中継器として機能する。任意に与えられる時間に、ファンクションまたはホストだけが、バスについての情報を置いているべきである。したがって、例として、ホストは、第５のファンクション１５０Ｅに行き先を定められた情報を送ることができる。情報は、第５のファンクション１５０Ｅへ行く途中で、第１のハブ１２０Ａおよび第３のハブ１２０Ｃを通過して流れる。
【００１３】
ＵＳＢファンクションは、一般的に、装置に能力（ケーパビリティ）を提供するＵＳＢ装置である。例として、ＵＳＢファンクションは、ＵＳＢ装置、ＵＳＢハブなどでもよい。
【００１４】
ＵＳＢハブは、そのポート上のＵＳＢ装置の取り付けおよび取り外しを報告するためのステータスビットを含む。ＵＳＢホストは、トポロジーの中のすべての装置に対する接続ステータスを決定し、すべての接続されたＵＳＢ装置のマップを維持するために、ＵＳＢハブに問合せる。ＵＳＢ装置がポートから取り外される場合、ＵＳＢハブは、ポートを不能にし、ステータスビットによって取り外しを報告する。もし取り外された装置がＵＳＢハブならば、ホストコントローラソフトウェアは、その取り外されたＵＳＢハブに接続されたすべてのＵＳＢ装置が今分離されたことを示すために、マップを更新するだろう。
【００１５】
ＵＳＢデータ転送は、ホストと、ＵＳＢ装置の特定のエンドポイントとの間に、生じる。ホストとエンドポイントとの間の結合は、一般的にパイプと呼ばれる。一般的に、あるパイプ内のデータの動きは、他のパイプ内のデータの動きから独立している。したがって、与えられたＵＳＢ装置は、複数のパイプを含むとしてもよく、ＵＳＢシステム全体において多数のパイプがあるとしてもよい。
【００１６】
ＵＳＢプロトコルは、データ転送の４つのベーシックタイプ；コントロール転送、バルクデータ転送、インタラプトデータ転送およびアイソクロナス（isochronous）データ転送、をサポートする。コントロール転送、バルク転送、およびインタラプトデータ転送は、非アイソクロナス通信とここで総称されるとしてもよい。
【００１７】
コントロール転送は、装置が取り付けられる場合に装置を設定するために使用され、
例えば装置の他のエンドポイントを制御する他の装置の特定タスクを管理する。
【００１８】
バルクデータ転送は、一般的にバースト的なデータに対して使用され、帯域幅またはレイテンシ条件の著しい拘束を含まない。
【００１９】
インタラプトデータ転送は、本来、周期的なデータに使用され、通常、人間の知覚可能なデータのような、低いレイテンシ条件を持つ。
【００２０】
アイソクロナスデータ転送は、本質的に一定の帯域幅であり低いレイテンシを要求する装置に対して、ＵＳＢ帯域幅のうちの事前に協定された部分を使用する。そのようなデータの例は、ビデオおよびオーディオ・ストリーミングデータである。
【００２１】
非アイソクロナス通信は、データが成功裡に受信されたか否かを示す受信ステータス応答を含む。したがって、非アイソクロナス通信は、バスの双方向における通信を含む。対照的に、アイソクロナス通信は、一方向であり、受信ステータス応答を含まない。アイソクロナスデータ転送は、ホストからＵＳＢ装置、または、ＵＳＢ装置からホストとすることができるが、それらは一方向転送である。
【００２２】
ここで使用されるようなブロードキャストは、ホストから共用される装置アドレスへのアイソクロナスデータ転送の送信である。ここで使用されるような共用される装置アドレスは、複数のブロードキャスト可能ＵＳＢ装置へプログラムされることができるアドレスである。したがって、ブロードキャスト送信は、すべて同じ共用される装置アドレスにプログラムされた複数のブロードキャスト可能ＵＳＢ装置によって受信されおよび使用されることができる。同じ共用される装置アドレスを共用するすべてのブロードキャスト可能ＵＳＢ装置は、ここでは、ブロードキャストグループと呼ばれるとしてもよい。複数のブロードキャストグループは、ＵＳＢシステムにおいて任意の与えられた時間に、動作しているとしてもよい。言い換えれば、複数のブロードキャストストリームは、複数の共用される装置アドレスへ送信されるとしてもよい。
【００２３】
非アイソクロナス通信は応答を含んでいるので、同じ共用される装置アドレスへプログラムされた複数の装置は、バス上で発生するだろうデータ転送および衝突に対する応答を、すべて提示するだろう。ブロードキャスト情報に対してアイソクロナスデータ転送を使用することによって、アイソクロナスデータ転送に対する応答はないため、装置は、同じ共用される装置アドレスを共用することができる。ステータスの応答およびリトライのような典型的なエラー防止機構が利用可能ではないため、アイソクロナスデータの適時の配達は、データ内の起こりえるエラーを犠牲にして確保される。
【００２４】
ブロードキャスト情報の非限定の例は、講義、講習会のためのようなフォーラムで、または飛行機で、複数の受信者へのオーディオまたはビデオデータである。複数のブロードキャストストリームの非限定の例は、直ちに走る複数の映画、または複数の言語で提示されるレクチャーである。さらに、アイソクロナスデータ転送がストリーミングデータに一般的に使用される場合、データが流れている必要はない。したがって、ブロードキャスト情報は、例えば、本のテキストの送信のように、他のタイプの情報としてもよい。
【００２５】
図２は、本発明の典型的な実施形態における論理通信パイプの簡略ブロック図を示す。ＵＳＢホスト１１０は、ＵＳＢホスト１１０は、複数のパイプ１９０に対してデータを与えるまたは受信する複数のバッファ（１６０，１７０，１８０Ａ，および１８０Ａ）を含むとしてもよい。それぞれのパイプは、ＵＳＢ装置２００内の異なるエンドポイント（２１０，２２０，２３０Ａ，および２３０Ｂ）に接続されるとしてもよい。ホスト内のクライアントソフトウェア１５５は、各種のバッファ（１６０，１７０，１８０Ａ，および１８０Ａ）、から情報を受け、または、へ情報を送る。エンドポイント０（２１０）は、以下で説明されるように、コントロール転送のためにあり、ＩＳＯエンドポイント２２０は、以下で説明されるように、ブロードキャストストリームの受信のためにある。
【００２６】
ＵＳＢパイプ１９０は、メモリバッファ（１６０，１７０，１８０Ａ，および１８０Ｂ）を通じて、ＵＳＢホスト１１０のソフトウェアと、ＵＳＢ装置２００のエンドポイント（２１０，２２０，２３０および２３５）の間で、データを移動する能力を示す論理的な構成である。２つのタイプのパイプ通信モードがある。パイプを通過して移動するストリームデータは、ＵＳＢ定義構造を持たない。パイプを通って移動するメッセージデータは、ＵＳＢアーキテクチャによって定義されたあるタイプの構造ストラクチャーを含む。
【００２７】
図３は、本発明の典型的な実施形態の簡略ブロック図を示す。図２は、データフロー表現としてＵＳＢシステムを例証するのに対して、図３はより機能的な表現におけるＵＳＢシステムを例証する。
【００２８】
図３においては、ＵＳＢバス２０５を通じて、第１のＵＳＢ装置２００Ａおよび第２のＵＳＢ装置２００Ｂに接続されるＵＳＢホスト１００が示される。各ＵＳＢ装置２００Ａおよび２００Ｂは、それぞれ、添えられた「Ａ」または「Ｂ」を用いてラベル付けされた同じコンポーネントを含むとしてもよい。したがって、コンポーネントおよび装置は、総称的に、添えられた文字なく称されてもよい。ブロードキャスト可能ＵＳＢ装置２００は、アドレスレジスタ２４０、エンドポイントゼロ２１０（またここではデフォルトコントロールエンドポイント２１０として呼ばれる）、アイソクロナスシンクエンドポイント２２０を含む。また、ブロードキャスト可能ＵＳＢ装置２００は、エンドポイント２３０およびエンドポイント２３５のような他のエンドポイントを含むとしてもよい。
【００２９】
エンドポイントは、ＵＳＢ装置２００の一意（ユニーク）に識別可能な部分である。各ＵＳＢ装置２００は、独立したエンドポイントの集合を含む。一般的に、各ＵＳＢ装置２００は、システムによって割り当てられ、アドレスレジスタ２４０に含まれている一意のアドレスを含む。加えて、ＵＳＢ装置２００内の各ポイントは、特定のアドレスを与えられる。さらに、各エンドポイントは、ホストへ向かうデータフロー方向またはエンドポイントへ向かうデータフロー方向の一方向である。したがって、ホストは、装置アドレス、エンドポイントアドレス、及びフロー方向の組み合わせとして、与えられたエンドポイントを認識する。
【００３０】
すべてのＵＳＢ装置２００は、入力および出力の双方について、デフォルトコントロールエンドポイント２１０を含むことを要求される。ＵＳＢシステムソフトウェアは、初期化のためにデフォルトコントロールエンドポイント２１０を使用し、装置マネージャ２５０を通じてＵＳＢ装置２００を設定する。デフォルトコントロールエンドポイント２１０は、エンドポイントゼロを割り当てられ、コントロール転送をサポートする。
【００３１】
ブロードキャスト可能ＵＳＢ装置２００において、アイソクロナスシンクエンドポイント２２０は、アイソクロナスデータ転送として送られ、アイソクロナスデータバッファ２６０によって受けられるブロードキャスト情報を受信することのために含まれる。アイソクロナスデータストリームは、図５および６に関してより十分に以下で説明されるように、装置マネージャ２５０によってデコードされるコントロールコマンドを含むとしてもよい。
【００３２】
図４は、本発明の実施形態に係る初期化プロセスの状態図を示す。初期化プロセスは、図３および図４の両方を参照して記述される。ＵＳＢ装置２００が差し込まれる場合、それが使用をされてもよい前に、それは初期化プロセスを通過するに違いない。取り付けがなされた場合に、ＵＳＢ装置２００は、取り付けられた状態５１０で始まる。もしＵＳＢ装置２００が取り付けられているハブが適切に設定されると、ＵＳＢ装置２００は、電源がＵＳＢ装置２００に適用されることができるパワード状態５２０に移行する。ＵＳＢホスト１１０はＵＳＢ装置２００のリセットを始め、装置はデフォルト状態５３０に移行する。
【００３３】
デフォルト状態５３０において、ＵＳＢ装置２００は、デフォルトアドレス(例えばゼロ)へ応答する。したがって、デフォルトコントロールエンドポイント２１０は、装置ディスクリプタの読み出しを可能にし、ＵＳＢ装置の汎用セットアップを実行するためにデフォルトアドレスでアクセス可能である。もし、ＵＳＢ装置２００がブロードキャスト可能でありこの装置が最初にブロードキャストに加わるとＵＳＢホスト１１０が判断すると、ＵＳＢ装置１１０は、一意のアドレスをＵＳＢ装置２００に割り当て、その一意のアドレスは、追加のＵＳＢ装置２００がブロードキャストグループに加わる場合に、共用される装置アドレスとして使用されるだろう。割り当てられた一意のアドレスとともに、ＵＳＢ装置２００は、第１のアドレス状態５４０に移行する。すべての設定が完了すると、ＵＳＢ装置２００は、ブロードキャストストリームを受信する準備ができている設定状態５６０に移行する。
【００３４】
デフォルト状態５３０に戻って、もし、ＵＳＢ装置２００がブロードキャスト可能であり、この装置がブロードキャストに最初に加わるのではないことを、ＵＳＢホスト１１０が判断すると、ＵＳＢホスト１１０は、特定のブロードキャストグループに対して共用される装置アドレスをＵＳＢ装置２００に割り当てる。割り当てられた共用される装置アドレスとともに、ＵＳＢ装置２００は、第２のアドレス状態５５０に移行する。すべての設定が完了すると、ＵＳＢ装置２００は、ブロードキャストストリームを受信する準備ができている設定状態５６０に移行する。
【００３５】
ＵＳＢ装置２００は、ＵＳＢホスト１１０からリセットを受けるとしてもよい。もし、設定状態５６０、第１のアドレス状態５４０、第２のアドレス状態５５０のいずれかからリセットが発生すると、ＵＳＢ装置２００は、再設定されるデフォルト状態５３０に戻る。
【００３６】
ＵＳＢ装置２００は、また、電源中断されてもよい。もし、設定状態５６０、第１のアドレス状態５４０、第２のアドレス状態５５０のいずれかから電源中断が発生すると、ＵＳＢ装置２００は、リセットおよび再設定されるパワード状態５２０に戻る。
【００３７】
一旦、アドレスが構成されおよび割り当てられたならば、ＵＳＢ装置２００は、もはやデフォルトコントロールアドレスに応答せず、その代りとして、プログラムされたアドレスに応答する。前に述べられたように、アイソクロナスデータ転送は応答を必要としないため、アイソクロナスシンクエンドポイント２２０へのブロードキャストは、同じ共用される装置アドレスにプログラムされた複数の装置によって受信されることができる。しかしながら、１を超える装置がそのエンドポイントへの通信に応答することを試みる場合、アドレスを共用する装置内の他のエンドポイントは、ＵＳＢバスの上の衝突を引き起こすかもしれない。その結果、複数のＵＳＢ装置２００がアドレスを共用する場合、あるＵＳＢ装置２００は、１次ブロードキャストスレーブとして表され、他のＵＳＢ装置２００は、２次ブロードキャストスレーブとして定義される。１次及び２次ブロードキャストスレーブは、図５及び図６を参照して以下でより十分に説明される。
【００３８】
さらに、もし、ＵＳＢ装置が他のエンドポイントまたはファンクションを含み、それらはブロードキャストストリームに依存しないならば、ＵＳＢ装置は２つのアドレスを持ち、ホストによって論理上２つの装置として参照されてもよい。ブロードキャスト能力と非アイソクロナスエンドポイント（すなわちブロードキャストに関連しない）との双方を望むＵＳＢ装置は、第２の一意のアドレスを持つだろう。他方で、ブロードバンドアドレスに応答し、第２の一意のアドレスを持たないＵＳＢ装置は、いずれの非アイソクロナスファンクションも持たないだろう。したがって、ブロードキャストについては、単一のアドレスを持つことは最小の必要条件である。
【００３９】
図５は、本発明の実施形態に係るブロードキャストプロセスの簡略フロー図である。そのプロセスは、第１のＵＳＢ装置２００がブロードキャストに加わりたい場合に、動作ブロック６０２で始まる。動作ブロック６０２で、第１の装置は初期化される。動作ブロック６０４で、一意の装置アドレスがこの装置に対して設定される。この一意の装置アドレスは、ブロードキャストに加わる追加の装置に対して共用される装置アドレスとなるだろう。第１の装置は、それが１次ブロードキャストスレーブ内に設定されるエンドポイントゼロ２１０または他のエンドポイント(例えば図３の２３０および２３５)で共用されるアドレスに送信されるいくつかの非アイソクロナス通信を受信および処理するであろうことを意味する、１次ブロードキャストスレーブとして設定されるだろう。
【００４０】
動作ブロック６０５で、上で説明されたように、ホストソフトウェアは、複数のブロードキャストが利用可能かどうか調べるためにチェックする。もし、複数のブロードキャストが利用可能であれば、ホストソフトウェアは、それらのブロードキャストの利用可能性を装置に伝え、その装置はユーザに利用可能なブロードキャストから選択することを可能にする。この選択は、装置のユーザインタフェースを介するとしてもよい。ユーザインタフェースは、比較的複雑でもよく、ブロードキャストはユーザに表示され、ユーザは所望のブロードキャストを選択してもよい。しかしながら、ユーザインタフェースは、デフォルトブロードキャストが選択され、比較的簡単でもよい。その後、ユーザは、利用可能なブロードキャストを通じたシーケンスのためのボタンを押すとしてもよい。限定しない例として、この単純なボタンプレスは、装置をリセットし、それに、新しいブロードキャストのための新しい設定プロセスを行なわせる。
【００４１】
動作ブロック６０６で、アイソクロナスデータ転送が、ブロードキャストストリームの一部としてホストから送信される。
【００４２】
判断ブロック６０８は、装置がブロードキャストをやめるか否か確かめるテストを行なう。限定しない例として、ポートから取り除かれた場合、または、単純なユーザインタフェースボタンが押された場合、装置は、ブロードキャストをやめてもよい。上で述べられたように、ハブはホストに取り除き６１０を報告し、ホストは現在特定のブロードキャストを受信している装置のリストから、この装置を取り除く。
【００４３】
判断ブロック６１２は、装置がブロードキャストに加わるか否か確かめるテストを行なう。もしそうであれば、動作ブロック６１４は新しい装置を初期化する。動作ブロック６１６は、動作ブロック６０５に関して上で議論されたようなブロードキャストストリーム選択を実行する。動作ブロック６１８は、加えられるブロードキャストに対する共用される装置アドレスを用いてその装置を設定する。加えて、新しい装置は、装置がアイソクロナスシンクエンドポイントのブロードキャストデータを受信できるが、共用される装置アドレスに対する任意の他のリクエストへＵＳＢバス上で応答できない、２次ブロードキャストスレーブとして設定される。
【００４４】
判断ブロック６２０は、いずれかの装置がブロードキャストに残されるか否か確かめるテストを行なう。そうでなければプロセスは終了する。もし装置がまだブロードキャストである場合、コントロール転送は、追加のアイソクロナスデータ転送を送信するために動作ブロック６０６に戻る。
【００４５】
図６は、本発明の実施形態に係る１次ブロードキャストスレーブを変更するためのプロセスの簡略フロー図である。図６のプロセスは、いつでも変更発生を実行できる、または、与えられたブロードキャストに所望される、進行中のバックグラウンドプロセスである。非限定の例として、１次ブロードキャストスレーブは、ブロードキャストをやめてもよい。この例において、ホストソフトウェアは、新しい１次ブロードキャストスレーブを割り当てることを求めてもよい。他の非限定の例として、ホストソフトウェアは、２次ブロードキャストスレーブのうちの一つを用いて通信を求めるとしてもよい。
【００４６】
判断ブロック７０２は、１次ブロードキャストスレーブ変更が望まれるか判断する。そうでなければ、プロセスはループする。もし変更が望まれたならば、動作ブロック７０４は、まだそのブロードキャストに関係しているならば２次ブロードキャストスレーブに、１次ブロードキャストスレーブを設定する。ステータスにおけるこの変更は、たくさんの方法で実行されることができる。この装置は現時点で１次ブロードキャストスレーブであるため、変更はエンドポイントゼロへの単純なコントロール転送によって実行されてもよい。
【００４７】
ステータス変更を実行するための他の手段の非限定の例として、コントロールコマンドは、ブロードキャストデータストリームに埋め込まれるとしてもよい。ブロードキャストストリームへ連結された各装置は、それへアドレス付けされたこれらのコントロールコマンドに対するブロードキャストデータストリームを監視するとしてもよい。
【００４８】
他の非限定の例として、追加のエンドポイント（例えば図３の２３０Ａまたは２３０Ｂ）は、そのエンドポイントに送られた情報に反応し、かつ装置マネージャ２５０(図３)にステータス変更に対する望みを伝えるように設定されるとしてもよい。追加のエンドポイント２３０は、また、２次コントロールチャネルとここで呼ばれてもよい。
【００４９】
１次ブロードキャストスレーブが２次ブロードキャストスレーブに変更された後、動作ブロック７０６において、ホスト装置は、２次ブロードキャストスレーブのうちの一つを、１次ブロードキャストスレーブに切り替える、このステータス変更は、上で説明されるように、２次ブリードキャストデータストリームに組み込まれるコントロールコマンドを用いて、または、２次コントロールチャネルを通じて、実行されてもよい。新しい１次ブロードキャストスレーブを設定した後、コントロール転送は、判断ブロック７０２に戻る。
【００５０】
ホストが、一度に一つ、２次ブロードキャストスレーブから１次ブロードスレーブへ変換することによりそれぞれの２次ブロードキャストスレーブへのコントロールおよびステータス情報を通信することができるような方法において、このステータス変更プロセスは、無限に繰り返されるとしてもよい。
【００５１】
当業者は、情報および信号が、様々な異なる技術および技能のいずれかを使用して表現できることを、理解するだろう。例えば、上の記述の全体にわたって言及できるデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁界または粒子、光学フィールドまたは粒子、または、任意のそれらの組み合わせによって表されるとしてもよい。
【００５２】
当業者は、さらに、ここに開示された実施形態に関して記述された各種の例証の論理ブロック、モジュール、回路、およびアルゴリズムステップは、電気的ハードウェア、コンピュータソフトウェア、または双方の組み合わせとして実現されてもよいことを、認識する。このハードウェアとソフトウェアの互換性を明確に例証するために、様々な例証のコンポーネント、ブロック、モジュール、回路およびステップは、それらの機能性の点から一般的に上で説明された。ハードウェアまたはソフトウェアのどちらでそのような機能性が実現されるかは、特定のアプリケーションおよびシステム全体に課される設計制約条件に依存する。当業者は、それぞれの特定のアプリケーションに対して異なる方法で、記述された機能性を実現することができるが、そのような実現決定は、発明の典型的な実施形態の範囲から離脱を引き起こすとは解釈されるべきでない。
【００５３】
ここに開示された実施形態に関して記述された各種の例証の論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または他のプログラマブル論理装置、離散的ゲートまたはトランジスタロジック、離散的ハードウェアコンポーネント、またはここに記述された機能を実行するために設計されたそれらの任意の組み合わせを用いて、実現または実行されるとしてもよい。汎用プロセッサはマイクロプロセッサでもよいが、代替的に、プロセッサは、既存のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンのいずれでもよい。また、プロセッサは、例えば、ＤＳＰとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、ＤＳＰコアに関連する１以上のマイクロプロセッサ、または任意の他のそのような構成のように、コンピューティング装置の組み合わせとして実現されるとしてもよい。
【００５４】
ここで開示された実施形態に関して記述された方法またはアルゴリズムのステップは、ハードウェア、プロセッサによって実行されるソフトウェア・モジュール、または２つの組み合わせで、直接具体化されてもよい。ソフトウェア・モジュールは、ランダムアクセスメモリ（ＲＡＭ）、フラッシュメモリ、リードオンリーメモリ（ＲＯＭ）、電気的プログラマブルＲＯＭ（ＥＰＲＯＭ）、電気的消去可能プログラマブルＲＯＭ（ＥＥＰＲＯＭ）、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ−ＲＯＭ、または既存の記憶媒体の任意の他の形式に属するとしてもよい。プロセッサが、記憶媒体、から情報を読み出し、および、へ情報を書き込む、ことができるように、典型的な記憶媒体は、プロセッサに連結される。代替として、記憶媒体は、プロセッサに統合される。プロセッサおよび記憶媒体は、ＡＳＩＣに属するとしてもよい。ＡＳＩＣは、ユーザ端末に属するとしてもよい。代替として、プロセッサおよび記憶媒体は、ユーザ端末に、離散的コンポーネントとして、属するとしてもよい。
【００５５】
１以上の典型的な実施形態において、記述された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組み合わせで実装されるとしてもよい。もしソフトウェアで実装される場合には、機能は、コンピュータ可読媒体の１以上の命令またはコードで格納または送信されてもよい。コンピュータ可読媒体は、コンピュータ記憶媒体と、ある場所から他の場所へコンピュータプログラムの転送を促進する任意の媒体を含む通信媒体との両方を含む。記憶媒体は、コンピュータによってアクセスすることができるあらゆる利用可能な媒体でもよい。限定ではなく例として、そのようなコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光ディスク記憶装置、磁気ディスク記憶装置または他の磁気記憶装置、または、命令またはデータ構造の形式で所望のプログラムコードを運びまたは記憶するために使用可能であり、コンピュータによってアクセスされることができる任意の他の媒体、を含むことができる。また、どのような接続であっても、適切にコンピュータ可読媒体と名付けられる。例えば、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者線（ＤＳＬ）、または、赤外線、無線、マイクロ波のようなワイヤレス技術を使用して、ソフトウェアがウェブサイト、サーバまたは他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、ＤＳＬ、または、赤外線、無線、マイクロ波のようなワイヤレス技術は、媒体の定義に含まれる。ここで使用されるようなディスク（Ｄｉｓｋ）およびディスク（Ｄｉｓｃ）は、コンパクトディスク（ＣＤ）、レーザーディスク（登録商標）、光ディスク、ディジタル・バーサタイル・ディスク（ＤＶＤ）、フロッピー（登録商標）ディスクおよびブルーレイ・ディスクを含み、ｄｉｓｋは、通常、データを磁気的に再生し、ｄｉｓｃは、レーザを用いて光学的にデータを再生する。また、上記の組み合わせも、コンピュータ可読媒体の範囲内に含まれるべきである。
【００５６】
開示された典型的な実施形態の以上の記述は、どのような当業者であっても、本発明を製造または使用することが可能に提供されている。これらの典型的な実施形態に対する各種の変更は、当業者に容易に理解されるだろう。ここに定義された包括的な原理は、本発明の意図または範囲から外れることなく、他の実施形態に適用できる。したがって、本発明は、ここに示された実施形態に限定されることを意図するものではないが、ここで開示された原理および新しい特徴と一致する最も広い範囲で与えられる。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［１］
ＵＳＢホストからコントロール情報を受信するためのデフォルトコントロールエンドポイントと、
前記ＵＳＢホストからブロードキャストストリームを受信するためのアイソクロナスシンクエンドポイントと、
前記ＵＳＢホストから共用される装置アドレスを受信するためのアドレスレジスタと、
前記ブロードキャストストリームを受信する能力を示す前記コントロール情報に応答し、前記共用される装置アドレスでアイソクロナスデータ転送として前記ブロードキャストストリームの受信を管理し、前記共用される装置アドレスが前記ＵＳＢホストから受信された後、前記ＵＳＢホストからの追加のコントロール情報に応答する能力を管理するための装置マネージャと、
を具備する、ＵＳＢ装置。
［２］
前記装置マネージャは、さらに、１次ブロードキャストスレーブとして前記ＵＳＢ装置を設定することによって、前記応答する能力を管理し、前記１次ブロードキャストスレーブは、前記追加のコントロール情報に応答する、［１］のＵＳＢ装置。
［３］
前記１次ブロードキャストスレーブとして前記ＵＳＢ装置を設定することは、前記コントロール情報に応答すること、前記ブロードキャストストリームに埋め込まれたコントロールコマンドに応答すること、および２次コントロールチャネルとして設定された前記ＵＳＢ装置の追加のエンドポイントからの情報に応答すること、のうちの一つを具備する、［２］のＵＳＢ装置。
［４］
少なくとも一つの追加のエンドポイントをさらに具備し、
前記装置マネージャは、前記ＵＳＢ装置が前記１次ブロードキャストスレーブの場合に、さらに前記少なくとも一つの追加のエンドポイントと通信する能力を管理する、［２］のＵＳＢ装置。
［５］
前記少なくとも一つの追加のエンドポイントは、アイソクロナスデータ転送、コントロール転送、バルクデータ転送、およびインタラプトデータ転送からなるグループから選択された通信に応答する、［４］のＵＳＢ装置。
［６］
前記装置マネージャは、さらに、２次ブロードキャストスレーブとして前記ＵＳＢ装置を設定することによって、前記応答する能力を管理し、前記２次ブロードキャストスレーブは、前記ＵＳＢ装置への非アイソクロナス通信を無視する、［１］のＵＳＢ装置。
［７］
前記２次ブロードキャストスレーブとして前記ＵＳＢ装置を設定することは、前記コントロール情報に応答すること、前記ブロードキャストストリームに埋め込まれたコントロールコマンドに応答すること、および２次コントロールチャネルとして設定された前記ＵＳＢ装置の追加のエンドポイントからの情報に応答すること、のうちの一つを具備する、［６］のＵＳＢ装置。
［８］
少なくとも一つの追加のエンドポイントをさらに具備し、
前記装置マネージャは、前記ＵＳＢ装置が前記２次ブロードキャストスレーブの場合に、さらに前記少なくとも一つの追加のエンドポイントと通信する能力を無能力にする、［６］のＵＳＢ装置。
［９］
前記装置マネージャは、さらに、前記ＵＳＢホストから利用可能として示される複数のブロードキャストストリームから特定のブロードキャストストリームの選択を示すための前記コントロール情報に応答する、［１］のＵＳＢ装置。
［１０］
コントロール情報を受信するためのデフォルトコントロールエンドポイントと、ブロードキャストストリームを受信するためのアイソクロナスシンクエンドポイントと、共用される装置アドレスを受信するためのアドレスレジスタとをそれぞれが具備する複数のブロードキャスト可能ＵＳＢ装置と、
前記複数のブロードキャスト可能ＵＳＢ装置に使用可能に連結され、前記複数のブロードキャスト可能ＵＳＢ装置のうちの一つを１次ブロードキャストスレーブとして設定し、前記一つを除くすべての前記複数のブロードキャスト可能ＵＳＢ装置を２次ブロードキャストスレーブとして設定し、前記複数のブロードキャスト可能ＵＳＢ装置のそれぞれの装置への前記共用される装置アドレスを設定するためのコントロール転送を発行することと、前記共有される装置アドレスへのアイソクロナスデータ転送を前記ブロードキャストストリームとして発行することと、によって前記複数のブロードキャスト可能ＵＳＢ装置をコントロールするためのＵＳＢホストと
を具備する、ＵＳＢシステム。
［１１］
前記ＵＳＢシステムに使用可能に連結され、コントロール転送を発行することと前記アイソクロナスデータ転送を発行することとを繰り返すための少なくとも一つの一つのハブをさらに具備する、［１０］のＵＳＢシステム。
［１２］
前記ＵＳＢホストと前記少なくとも一つのハブとのそれぞれは、さらに、前記複数のブロードキャスト可能ＵＳＢ装置のうちの少なくとも一つの装置の取り外しを検出し、前記ＵＳＢホストは、さらに、前記複数のブロードキャスト可能ＵＳＢ装置において残された装置がない場合には、前記ブロードキャストストリームを終結させる、［１１］のＵＳＢシステム。
［１３］
前記複数のブロードキャスト可能ＵＳＢ装置のうちのそれぞれの装置は、前記共用される装置アドレスが前記ＵＳＢホストから受信された後、前記ＵＳＢホストからの追加のコントロール情報に応答する能力を管理するための装置マネージャを含む、［１０］のＵＳＢシステム。
［１４］
前記１次ブロードキャストスレーブの前記装置マネージャは、前記共用される装置アドレスに対する追加のコントロール転送に応答し、前記２次ブロードキャストスレーブの前記装置マネージャは、前記共用される装置アドレスに対する追加のコントロール転送を無視する、［１３］のＵＳＢシステム。
［１５］
前記複数のブロードキャスト可能ＵＳＢ装置のうちのそれぞれの装置の前記装置マネージャは、さらに、前記ブロードキャストストリームに埋め込まれているコントロールコマンドに応答し、２次コントロールチャネルとして設定されるある装置の追加のエンドポイントからの情報に応答する、［１３］のＵＳＢシステム。
［１６］
ＵＳＢトポロジー上のブロードキャスト可能ＵＳＢ装置を検出することと、
前記ブロードキャスト可能ＵＳＢ装置を、アイソクロナスデータ転送としてブロードキャストストリームを受信するためのブロードキャストモードに、設定することと、
前記ブロードキャスト可能ＵＳＢ装置のアドレスを、共用される装置アドレスに、設定することと、
前記ＵＳＢトポロジー上の少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置を検出することと、
前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置を、前記ブロードキャストモードに、設定することと、
前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置のアドレスを、前記共用される装置アドレスに、設定することと、
前記ブロードキャストストリームを、前記共用される装置アドレスに通信することとを具備する、方法。
［１７］
前記ＵＳＢトポロジーに接続される少なくとも一つのハブを通じて、［１５］の行動を伝えることによって、前記行動を繰り返すことをさらに具備する、［１６］の方法。
［１８］
ブロードキャストグループは、前記ブロードキャスト可能ＵＳＢ装置と前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置とからなり、
ＵＳＢホストからのコントロール転送に応答可能な１次ブロードキャストスレーブとして、前記ブロードキャストグループのある装置を設定し、
前記ＵＳＢホストからの前記コントロール転送に応答することを無能力にされた２次ブロードキャストスレーブとして、前記ブロードキャストグループのすべての他の装置を設定する
ことをさらに具備する、［１６］の方法。
［１９］
前記１次ブロードキャストスレーブとして前記ブロードキャストグループのある装置を設定することは、コントロール転送からのコントロール情報に応答することと、前記ブロードキャストストリームに埋め込まれているコントロールコマンドに応答することと、２次コントロールチャネルとして設定されている前記ある装置の追加のエンドポイントに応答することと、のうちの一つを具備する、［１８］の方法。
［２０］
前記２次ブロードキャストスレーブとして前記ブロードキャストグループのすべての他の装置を設定することは、コントロール転送からのコントロール情報に応答することと、前記ブロードキャストストリームに埋め込まれているコントロールコマンドに応答することと、２次コントロールチャネルとして設定されている前記ある装置の追加のエンドポイントに応答することと、のうちの一つを具備する、［１８］の方法。
［２１］
ブロードキャストグループは、前記ブロードキャスト可能ＵＳＢ装置と前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置とからなり、
前記ブロードキャストグループの少なくとも一つの装置の取り外しを検出することと、
もし前記ブロードキャストグループに残された装置がなければ、前記ブロードキャストストリームを終結させることと
をさらに具備する、［１６］の方法。
［２２］
ＵＳＢホストから利用可能として指定された複数のブロードキャストストリームから特定のブロードキャストストリームの選択を指定することをさらに具備する、［１６］の方法。
［２３］
ＵＳＢトポロジー上のブロードキャスト可能ＵＳＢ装置を検出するための手段と、
前記ブロードキャスト可能ＵＳＢ装置を、アイソクロナスデータ転送としてブロードキャストストリームを受信するためのブロードキャストモードに、設定するための手段と、
前記ブロードキャスト可能ＵＳＢ装置のアドレスを、共用される装置アドレスに、設定するための手段と、
前記ＵＳＢトポロジー上の少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置を検出するための手段と、
前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置を、前記ブロードキャストモードに、設定するための手段と、
前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置のアドレスを、前記共用される装置アドレスに、設定するための手段と、
前記ブロードキャストストリームを、前記共用される装置アドレスに通信するための手段と
を具備する、ＵＳＢシステム。
［２４］
前記ＵＳＢトポロジーに接続される少なくとも一つのハブを通じて、［１３］の行動を実行することによって、前記行動を繰り返すための手段をさらに具備する、［２３］のシステム。
［２５］
ブロードキャストグループは、前記ブロードキャスト可能ＵＳＢ装置と前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置とからなり、
ＵＳＢホストからのコントロール転送に応答可能な１次ブロードキャストスレーブとして、前記ブロードキャストグループのある装置を設定するための手段と、
前記ＵＳＢホストからの前記コントロール転送に応答することを無能力にされた２次ブロードキャストスレーブとして、前記ブロードキャストグループのすべての他の装置を設定するための手段と
をさらに具備する、［２３］のＵＳＢシステム。
［２６］
前記１次ブロードキャストスレーブとして前記ブロードキャストグループのある装置を設定するための前記手段は、コントロール転送からのコントロール情報に応答することと、前記ブロードキャストストリームに埋め込まれているコントロールコマンドに応答することと、２次コントロールチャネルとして設定されている前記ある装置の追加のエンドポイントに応答することと、のうちの一つを実行するための手段を具備する、［２５］のＵＳＢシステム。
［２７］
前記２次ブロードキャストスレーブとして前記ブロードキャストグループのすべての他の装置を設定するための前記手段は、コントロール転送からのコントロール情報に応答することと、前記ブロードキャストストリームに埋め込まれているコントロールコマンドに応答することと、２次コントロールチャネルとして設定されている前記ある装置の追加のエンドポイントからの情報に応答することと、のうちの一つを実行するための手段を具備する、［２５］のＵＳＢシステム。
［２８］
ブロードキャストグループは、前記ブロードキャスト可能ＵＳＢ装置と前記少なくとも一つの追加のブロードキャスト可能ＵＳＢ装置とからなり、
前記ブロードキャストグループの少なくとも一つの装置の取り外しを検出するための手段と、
もし前記ブロードキャストグループに残された装置がなければ、前記ブロードキャストストリームを終結させるための手段と
をさらに具備する、［２３］のＵＳＢシステム。
［２９］
ＵＳＢホストから利用可能として指定された複数のブロードキャストストリームから特定のブロードキャストストリームの選択を指定するための手段をさらに具備する、［２３］の方法。
【図１】
0005373109.tif 000002
【図２】
0005373109.tif 000003
【図３】
0005373109.tif 000004
【図４】
0005373109.tif 000005
【図５】
0005373109.tif 000006
【図６】
0005373109.tif 000007