JP3497834B2 - ルートリピータ、usb通信システム、usb通信制御方法 - Google Patents

ルートリピータ、usb通信システム、usb通信制御方法

Info

Publication number
JP3497834B2
JP3497834B2 JP2001101854A JP2001101854A JP3497834B2 JP 3497834 B2 JP3497834 B2 JP 3497834B2 JP 2001101854 A JP2001101854 A JP 2001101854A JP 2001101854 A JP2001101854 A JP 2001101854A JP 3497834 B2 JP3497834 B2 JP 3497834B2
Authority
JP
Japan
Prior art keywords
hub
port
usb
address
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001101854A
Other languages
English (en)
Other versions
JP2002300229A (ja
Inventor
温夫 庄野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2001101854A priority Critical patent/JP3497834B2/ja
Priority to TW091105780A priority patent/TW552780B/zh
Priority to US10/107,255 priority patent/US20020156952A1/en
Priority to CN02126288.8A priority patent/CN1388670A/zh
Publication of JP2002300229A publication Critical patent/JP2002300229A/ja
Application granted granted Critical
Publication of JP3497834B2 publication Critical patent/JP3497834B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • G06F13/4081Live connection to bus, e.g. hot-plugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、USB(Universal
Serial Bus)デバイス間の通信を行なうルートリピー
タ、USB通信システムおよびUSB通信制御方法に関
する。
【0002】
【従来の技術】従来、USBシステムでは、図10のよ
うに、デバイスツリー(ツリー状のUSBトポロジー)
におけるルート(根)に位置するUSBホスト(以下ホス
トと称する)がUSBの端点に存在するUSB周辺機器
(以下デバイスと称する)を認識し、デバイスとの間で
一対一に送受信データをやり取りを行っている。デバイ
スツリーにおける節点に位置する「USBハブ」(以下
ハブと称する)は特殊なデバイスであり、上流から下
流、および下流から上流へのパケット伝送を中継する機
能とともに、下流節点/端点に位置するデバイスの接続
・切断検出機能を持っている。
【0003】そして、デバイスはホストに直結すること
も、ハブの下流に接続することもできる。ハブも一般の
デバイスと同様にホストに直結することも、ハブの下流
に接続することもできる。
【0004】USB接続におけるホストとデバイスの関
係は非対称である。即ち、通信はすべてホストが起動
し、デバイスはそれに応答する。
【0005】従って、ホストからデバイスへの通信パケ
ットは、ハブを介してデバイスツリー全体に送られる。
デバイスはパケットに含まれるアドレスフィールドを見
て、自分宛ての通信を認識した場合、ホストへ応答を返
す。この時の応答パケットはハブを介して上流方向に中
継される。
【0006】デバイスを使用するために、ホストはデバ
イスとの間で一対一に通信を行う。USB上のホスト・
デバイス間の一対一の仮想的通信路を「パイプ」と称す
る。このホストデバイス間の通信は図11の表1に示す
ようにコントロール型、バルク型、インタラプト型、ア
イソクロナス型の4種類ある。
【0007】そして、ホストからデバイスへデータを送
信する通信は「OUT」、デバイスからのデータをホス
トが受信する通信は「IN」と呼ばれている。
【0008】USB通信パケットにはCRC(Cyclic Re
dundancy Code)が付加されており、受信側は正しくデー
タを受信できたかをデータとCRCをチェックすること
により検出することができる。ハンドシェークのある通
信型では、CRCチェックによりエラーを検出したとき
にリトライを実行するプロトコルが規定されている。
【0009】コントロール型通信とバルク型通信は、合
わせて一定のバンド幅を確保されるもので、パイプごと
にスループットやレイテンシは保証されない。一方、イ
ンタラプト型はパイプごとに最悪レイテンシが、アイソ
クロナス型はフレーム毎の割当てバンド幅が保証され
る。このレイテンシ、バンド幅の管理はホストが行って
いる。割当てたバンド幅に応じた通信のスケジューリン
グ、ハンドシェークにより通信エラーが検出されたとき
のリトライもまた、ホストが制御している。ホストはま
た、インタラプト型やアイソクロナス型では通信の計時
単位となるフレーム(1ms)ごとにSOF(Start Of
Frame)パケットを送出している。
【0010】デバイスはホストからの通信パケットを受
けると、ホストへのハンドシェーク応答、およびホスト
からのハンドシェークの解釈、ホストからのリトライへ
の応答を行う。
【0011】上述したホストとデバイスが持つべき機能
を図12の表2に示す。同図に示すように、USBホス
トとデバイスが持つべきバスレベル機能として、ホスト
はハンドシェーク応答と解釈、リトライ実行、バンド幅
割当て、通信スケジューリング、SOF送出、およびデ
バイス接続・切断検出の各バスレベル処理を実行し、デ
バイス側は、ハンドシェーク応答と解釈およびリトライ
応答のバスレベル処理を実行する。
【0012】先行技術では、パーソナルコンピュータま
たは相当品(以下PCと称する)がホストとして使われ
る。PCは内蔵するUSBホストコントローラ(ハード
ウエア)に対応するシステムソフトウエアを実行し、上
記のバスレベル処理を実現する。そして、レイテンシお
よびバンド幅の割当てはシステムソフトウエアが管理
し、ソフトウエアによる操作に基づいて、通信のスケジ
ューリングとエラー時のリトライをUSBホストコント
ローラが実行する。
【0013】以下に、従来のホスト(PC)が行うデバ
イス接続・切断検出処理を説明する。
【0014】デバイスツリーのどこかでデバイス接続あ
るいは切断が起きると、その個所のハブポートでポート
ステータス変化として検出される。
【0015】図13は、ホストが各ハブに対して周期的
に行うポートステータスチェンジ処理を示す。なお、ホ
スト自体が持つポートについても、ポートステータスチ
ェンジを直接検出して同様の処理を行う。
【0016】すべてのハブは、ホストとの間に制御パイ
プ(コントロール型)とステータスチェンジパイプ(イ
ンタラプトIN型)を持っている。ホストはハブに対し
ステータスチェンジパイプを通じて周期的にデータ読取
り要求を送信する。その要求に対してハブは、ステータ
ス変化が生じたとき、ステータスチェンジを応答する。
ホストはステータスチェンジの応答を受けたときポート
ステータスを読み出し、デバイス接続を検出した場合そ
れを記憶すると共に当該ハブの制御パイプにポートリセ
ット信号を送出する。一方、デバイス接続検出ではなく
且つリセット完了でない場合にはデバイス切断を検出し
これを記憶する。なお、ホストからハブに対する操作は
制御パイプを通じて行われる。
【0017】図14は従来のエニュメレーション(デバ
イス認識)処理の概要を示す。
【0018】エニュメレーションは、電源投入されたハ
ブポート(ホストのポートを含む)へのデバイス接続の
検出から始まる。下流ハブでのデバイス接続は、ハブス
テータスチェンジパイプを通して検出される。デバイス
は上流からリセット信号を受けたらデフォルトアドレス
(アドレス0)を自分宛とみなす状態で起動し、ホスト
から送られる制御コマンドにより固有のデバイスアドレ
スを割当てられて、以後動作する。後述するデバイス切
断時の後処理に備えて、ホストPCはバストポロジーに
対応してツリー状に各デバイスに関する情報を記録する
必要がある。記録する情報としては、デバイス取得する
ディスクリプタのほか、ソフトウエア的な後処理のため
にドライバソフトウエアを呼び出すための情報も含まれ
る。ホストは、各種ディスクリプタを取得するとデバイ
スツリー情報を更新する。そして接続されたものがハブ
かデバイスかを判断し、ハブであればハブドライバのロ
ード、ポートステータスチェンジパイプを設定して当該
ハブポートの電源をオンにする。一方、デバイスと判断
した場合はデバイスドライバを選択してロードし、デバ
イスを初期化して使用する。
【0019】次に、図15に従来のデバイス切断処理を
示す。
【0020】ホスト(PC)のシステムソフトエアは、
バストポロジーに相当するデバイスツリー情報を主記憶
上に保持しているので、バスのどこかでデバイスが切断
されたとき、切断個所を認識した上で、影響を受けるツ
リー部に関連するドライバソフトウエアおよび当該デバ
イスを使用していたアプリケーションソフトウエアの後
処理を必要に応じて行い、デバイスツリー情報を削除
し、割当てていたデバイスアドレスや、関連するソフト
ウエアが使用していたシステム資源を解放して以後の再
利用に備えることができる。その際、切断個所と無関係
な部分には影響がない。
【0021】デバイスにおいては、デバイスコントロー
ラ機能つきマイクロプロセッサを用いて、物理層および
低レベルプロトコル層(電気的信号変換、パケットの組
み立て、ハンドシェーク応答)をハードウエアが分担
し、ハンドシェーク解釈とリトライ応答、及び上位層処
理をファームウエアで処理する実装が広く行われてい
る。
【0022】上記のように、従来のUSBシステムで
は、ホスト−デバイス間の通信制御方式が定義されてい
るが、デバイス同士が直接にデータをやり取りする仕組
みが何も定義されていない。従って、デバイス間でデー
タをやり取りする場合必ずホストが仲介する。即ち、デ
バイス間でデータをやり取りするには、ホスト(PC)
を使用し、それぞれのデバイスに対応するデバイスドラ
イバと、データのやり取りを仲介するためのアプリケー
ションソフトエアをホスト(PC)で実行する必要があ
る。
【0023】図16に従来行われているデバイス間通信
の仕組みの概要を示す。
【0024】ユーザがデータ送り出しデバイスAとデー
タ受取りデバイスBをホストに接続すると、ホストのU
SBシステムソフトはUSBハードウエアを用いてこれ
らをエニュメレートし、デバイスAドライバおよびデバ
イスBドライバをロードして実行する。そして、ユーザ
によって起動されるホスト内の転送制御ソフトがデバイ
スAドライバを介してデバイスAからデータを読み出
し、それをデバイスBドライバを介してデバイスBへ書
き込むことにより、デバイスAからデバイスBへデータ
を転送する。
【0025】このように先行技術では、各種ソフトウエ
ア(システムソフトウエア、デバイスドライバ、アプリ
ケーションソフトウエア)をインストールすることがで
き、これらソフトウエアを実行するCPU能力およびメ
モリ容量を持つPCをホストとすることを前提としてい
る。
【0026】従って、PCをホストとして使用しなけれ
ば、デバイス間でデータをやりとりできないという問題
がある。特に、PCが無い使用環境では、デバイス機能
を持つ携帯電話などの小型携帯通信機器、小型携帯入出
力装置や小型携帯外部記憶装置同士をUSBで接続して
使用できないという問題がある。
【0027】
【発明が解決しようとする課題】上述したように従来技
術においては、各種ソフトウエアをインストールするこ
とができ、これらソフトウエアを実行するCPU能力お
よびメモリ容量を持つPCをホストとすることを前提と
していたので、PCをホストとして使用しなければ、デ
バイス間のデータ伝送が行えないという問題があった。
【0028】 本発明は上述した事情に鑑みて成された
ものであり、その目的は、PCを使用せずにUSBデバ
イス間のデータ伝送を行うことのできるルートリピー
タ、USB通信システムおよびUSB通信制御方法を提
供することにある。
【0029】
【課題を解決するための手段】上記目的を達成するため
に、本発明の一態様によるルートリピータは、USBデ
バイスの切断を検出するとバス全体をリセットして接続
待ち状態に戻り、システムに接続されたデバイスに所定
値から順にアドレスを与えて登録し、登録されている対
応デバイスそれぞれに対してバルクIN通信を行い、前
記デバイスから応答があれば、そのデータに応じて、登
録されている対応デバイスすべてに対して順次にブロー
ドキャストし、あるいは特定アドレスにデータを送信す
る制御部と、デバイスアドレスをインデックスとして、
ハブ、対応デバイス、それ以外の3種類のデバイス種別
を登録し、前記制御部が前記接続待ち状態となるときそ
の内容が消去されるバス構成レジスタと、接続されたデ
バイスのコンフィギュレーションディスクリプタの先頭
が、既定のパターンと一致するか否かにより対応デバイ
スであるか否かを判定するパターン判定部と、を具備し
たことを特徴とする。
【0030】本発明によれば、接続待ち状態となると
き、バス構成レジスタの内容を消去することにより、動
作開始時、バスのどこかでデバイスが切断されたとき、
バス全体をリセットしてバス構成全体のエニュメレーシ
ョンを開始することができる。
【0031】また、バス全体のエニュメレーションにお
いて所定値から順にデバイスアドレスを割当てることに
よりバス上に存在するデバイスは常に1から連続するデ
バイスアドレスを持つことを保証できるため、ルートリ
ピータはデバイスツリートポロジーを保持する必要がな
い。従って、従来のホストPCが記憶するデバイスツリ
ー情報に比べて小容量で簡略なバス構成レジスタで、デ
バイスアドレスをインデックスとしてデバイス種別を登
録することで目的を果たすことができる。
【0032】デバイス種別の分類は、ハブ、対応デバイ
ス、それ以外の3種類で十分である。このことと、コン
フィギュレーションディスクリプタの先頭が既定のパタ
ーンと一致するか否かにより対応デバイスを判定するこ
とにより、ハードウエアのみによってエニュメレーショ
ンを実行することが実用的に可能である。
【0033】ルートリピータは、登録されている対応デ
バイスそれぞれに対してバルクIN通信を行い、デバイ
スから応答があれば、そのデータに応じて、登録されて
いる対応デバイスすべてに対して順次にブロードキャス
ト、あるいは特定アドレスに、データを送信するので、
システムに接続された対応デバイスは、それぞれの必要
に応じて、特定デバイスへ、あるいはブロードキャスト
でデータを送信することができる。以上の効果から、接
続するデバイスの種類に関わり無く、ルートリピータを
実現することができる。
【0034】 また、本発明の他の態様によるUSB通
信システムは、USBデバイスの切断を検出するとバス
全体をリセットして接続待ち状態に戻り、システムに接
続されたデバイスに所定値から順にアドレスを与えて登
録し、登録されている対応デバイスそれぞれに対してバ
ルクIN通信を行い、前記デバイスから応答があれば、
そのデータに応じて、登録されている対応デバイスすべ
てに対して順次にブロードキャストし、あるいは特定ア
ドレスにデータを送信する制御部と、デバイスアドレス
をインデックスとして、ハブ、対応デバイス、それ以外
の3種類のデバイス種別を登録し、前記制御部が接続待
ち状態となるときその内容が消去されるバス構成レジス
タと、接続されたデバイスのコンフィギュレーションデ
ィスクリプタの先頭が、既定のパターンと一致するか否
かにより対応デバイスであるか否かを判定するパターン
判定部と、から構成されるルートリピータと、マイクロ
プロセッサおよびUSBデバイスコントローラハードウ
エアを備え、前記ルートリピータを利用して相互にブロ
ードキャストあるいは一対一にデータをやりとりするU
SBデバイス装置と、を具備したことを特徴とする。
【0035】本発明によれば、ホスト(PC)のドライ
バを必要とせずに、デバイスのファームウエアに機能を
追加するだけで、ルートリピータを利用して相互にデー
タをやり取りする対応デバイスを容易に実現することが
できる。
【0036】 また、本発明の他の態様によるUSB通
信制御方法は、USBデバイスの切断を検出するとバス
全体をリセットして接続待ち状態に戻り、システムに接
続されたデバイスに所定値から順にアドレスを与えて登
録し、登録されている対応デバイスそれぞれに対してバ
ルクIN通信を行い、前記デバイスから応答があれば、
そのデータに応じて、登録されている対応デバイスすべ
てに対して順次にブロードキャストし、あるいは特定ア
ドレスにデータを送信する制御部と、デバイスアドレス
をインデックスとして、ハブ、対応デバイス、それ以外
の3種類のデバイス種別を登録し、前記制御部が前記接
続待ち状態となるときその内容が消去されるバス構成レ
ジスタと、接続されたデバイスのコンフィギュレーショ
ンディスクリプタの先頭が、既定のパターンと一致する
か否かにより対応デバイスであるか否かを判定するパタ
ーン判定部と、を具備するルートリピータと、ハブと、
アップストリームポートと、ダウンストリームポート
と、前記ハブを前記ルートリピータ又はアップストリー
ムポートに切り換え接続する切換部とを具備し、ダウン
ストリームポートにUSBデバイスを接続し、切換部を
ルートリピータ側に切換えてホストパーソナルコンピュ
ータなしにUSBデバイス間通信を行い、あるいは前記
切換部をアップストリームポート側に切換えてアップス
トリームポートにホストパーソナルコンピュータを接続
してUSBデバイス間通信を行うことを特徴とする。
【0037】本発明によれば、ダウンストリームポート
にUSBデバイスを接続し、切替部をルートリピータ側
に切替えて、ホスト(PC)なしに使用することができ
る。また、切替部をアップストリームポート側に切替え
て、アップストリームポートにホスト(PC)を接続し
て従来技術と同様のハブ内蔵デバイスとして使用するこ
とも出来るので、ホスト(PC)のある使用環境だけで
なく、ホスト(PC)がない使用環境でも使用すること
ができる。
【0038】本発明により提供されるルートリピータ
は、デバイス同士のデータ伝送を安価なハードウエアで
実現することができる。
【0039】
【発明の実施の形態】以下、図面を用いて本発明の一実
施の形態について説明する。
【0040】 図1は本発明を適用したルートリピータ
およびデバイスと、ハブからなるUSB通信システムの
一実施の形態を示すブロック図である。
【0041】ルートリピータ2はホストの代わりに配置
される。バストポロジーは従来と同様であり、従来技術
と同一のハブ6、10を用いて多数のデバイス4、8、
10、12、14を一つのUSBシステムとして接続す
ることができるので、ルートリピータ2とデバイス間で
一対一通信を複数順次実施することにより、デバイス間
で非固定的に一対多通信を行うことができる。すなわ
ち、USBにおいては、一対一通信のみが可能であり、
ブロードキャストはできないが、一対一通信を順次行う
ことにより、実質的にブロードキャストを行うことがで
きる。
【0042】図2は本発明のルートリピータの一実施の
形態を示す詳細ブロック図である。
【0043】制御部20はバス構成レジスタ22、パラ
レルシリアル変換部24、パターン判定部26、接続・
切断・デバイス速度検出部28、リセット送信部30に
接続され、それらの動作を制御する。
【0044】バス構成レジスタ22は、データバッファ
34にも接続され、エニュメレーションにより取得され
るバス構成情報、ハブ制御パイプ情報をデータバッファ
34とやり取りし保持する。
【0045】パラレルシリアル変換部24は、データバ
ッファ34及びI/O部36とも接続され、USB上の
シリアルビット列の構築/分解を行い、データバッファ
34とデータをやり取りする。
【0046】パターン判定部26はデータバッファ34
にも接続され、データバッファ34にロードされた受信
データを参照し、特定のパターンとの一致を制御部20
へ通知する。リセット送信部30は、制御部20の指示
によりUSB仕様で定義されたリセット信号をI/O部
36を介してUSBポートに出力させる。
【0047】SOF生成部32は、制御部20に優先し
てパラレルシリアル変換部24にSOFパケットを生成
させる。データバッファ34は制御部20の制御により
送受信データを一時保持するために設けられる。I/O
部36は、データが送受信されると共にポートにて外部
とやり取りするUSB信号と機器内部信号を相互変換す
る。
【0048】以下、各部の処理について説明する。
【0049】図3は制御部20の処理を示す遷移図であ
る。
【0050】本実施の形態のルートリピータ2は、動作
を開始すると接続待ち状態40となる。接続待ち状態4
0でハブ(6,10)の接続ポートにデバイスが接続さ
れるとポート初期化が行われ、その初期化を完了すると
エニュメレーション状態42となる。エニュメレーショ
ン状態42において、エニュメレーションが完了すると
中継状態44となる。中継状態44においてバス上にあ
るハブへのデバイス接続を検出するとハブポート初期化
状態46となり、そのポートのデバイスが切断されると
接続待ち状態40に戻る。
【0051】本実施の形態のルートリピータ2は、動作
開始時だけでなく、バスのどこかでデバイスが切断され
たときも、常に接続待ち状態40となる。接続待ち状態
40ではバス構成レジスタ22の設定内容が一旦クリア
される。その後、再度バス全体のエニュメレーションを
行い1から順にデバイスアドレスが割当てられ、その構
成結果がバス構成レジスタ22に設定される。これによ
り、バス上に存在するデバイスは常に1から連続するデ
バイスアドレスを持つことを保証できるため、ルートリ
ピータ2はデバイスツリートポロジーを保持する必要が
ない。従って、従来のホスト(PC)が記録するデバイ
スツリー情報に比べて小容量で簡略なバス構成レジスタ
22で目的を達成することができる。
【0052】以下、本発明によるルートリピータによる
制御動作について説明する。
【0053】図4は、接続待ち状態40の処理を示すフ
ローチャートである。
【0054】接続待ち状態に入るとステップ50におい
て、制御部20はバス構成レジスタ22の設定内容を一
旦クリアする。次に、ステップ52において、接続・切
断・デバイス速度検出部28からデバイス接続の通知を
待つ。I/O部からの信号を受けて検出部28がハブへ
のデバイス接続を検出すると、ステップ54において、
制御部20はリセット送信部30にリセット信号を送出
させ、I/O部を介して当該デバイスへリセット信号が
送信される。リセットが完了するとステップ56におい
て、接続・切断・デバイス速度検出部28はデバイスか
ら送られるデバイス速度の通知をI/O部36を介して
得る。デバイス速度を得ると、ステップ58において、
制御部20はそれをバス構成レジスタ22内にストア
し、ルートリピータ2はエニュメレーション42状態へ
移る。もしデバイスを接続するハブからデバイス切断が
通知されたならば最初(ステップ50)に戻る。
【0055】本発明では、この接続待ち状態処理を設け
たことにより、動作開始時、およびバスのどこかでデバ
イスが切断された時、バス全体をリセットしてバス構成
全体のエニュメレーションを開始することができる。そ
して、その時の新たなシステム構成がバス構成レジスタ
22に設定されることとなる。
【0056】図5はルートリピータのエニュメレーショ
ン状態42の処理を示すフローチャートである。
【0057】エニュメレーション状態42では、ステッ
プ60において、制御部20はデフォルトアドレスを用
いてデバイスディスクリプタを取得し、通信パケットサ
イズを得る。
【0058】次に、ステップ62において、制御部20
はデフォルトアドレスを用いてSetAddress要求を送信す
る。そしてステップ64において、上記要求に対する応
答でありデバイスディスクリプタを再度取得すると制御
部20は、それをデータバッファ34に記憶する。ステ
ップ66において、上記ディスクリプタに含まれるクラ
スコードをパターン判定部26で判定することにより、
ハブか否かを判定する。
【0059】ハブでなければ、制御部20はステップ6
8においてデバイスコンフィギュレーションディスクリ
プタを取得し、それをデータバッファ34に記憶する。
更にステップ70において、上記コンフィギュレーショ
ンディスクリプタ先頭部分をパターン判定部26で判定
することにより、ルートリピータ経由通信に対応したデ
バイス(以下対応デバイスと称する)であるか否か判定
する。例えば、コンフィギュレーションディスクリプタ
の先頭を、固有のクラスタコードを持つインターフェー
スに既定することにより判定が可能である。対応デバイ
スであると判定すると、ステップ72において既定のコ
ンフィギュレーションをセットするように要求する。
【0060】そしてステップ74において、バス構成レ
ジスタ22に、「中継通信パイプのデータトグルの初期
化」、「割当てたアドレスにルートリピータ経由通信対
応デバイスとして登録」を行う。
【0061】USB仕様では、コンフィギュレーション
ディスクリプタは構造的に定義されているため、従来技
術においてホスト(PC)が適切なデバイスドライバを
選択するために任意のディスクリプタを解釈するにはU
SBシステムソフトウエアを使用しなければならない。
しかし、本発明では、ルートリピータ経由通信路に対応
するデバイスのディスクリプタ先頭部分を既定するこ
と、およびデバイスをハブ、対応デバイス、非対応デバ
イスの3種類のみに区別することにより、固定的なハー
ドウエアのみによる判定を実用的に可能にしている。
【0062】ステップ66でハブであると判定される
と、制御部20はステップ76において、当該ハブのコ
ンフィギュレーションディスクリプタを取得し、ステッ
プ78において、バス構成レジスタ22に、「ステータ
スチェンジエンドポイント番号(コンフィギュレーショ
ンディスクリプタに書かれている)を登録」、「ステー
タスチェンジパイプのデータトグルの初期化」、「割当
てたアドレスにハブとして登録」を行う。
【0063】次にステップ80において、制御部20は
コンフィギュレーション1(ハブとして動作)をのセッ
トするよう要求する。次にステップ82において、ハブ
ディスクリプタを取得する。
【0064】そして、ステップ84において、ハブディ
スクリプタに書かれている情報からバス構成レジスタ2
2に、「ポート数とポートパワーモードを登録」を行
う。そしてステップ86において、制御部20はこの情
報に応じてポート電源オン信号を当該ハブに送信する。
【0065】上記の完了の後、ルートリピータ2は中継
状態44へ移行する。なお、ハブポートでの接続検出か
らハブポート初期化を経てエニュメレーションを実行し
た場合、エニュメレーション完了後、接続検出したハブ
ポートの次のポートから処理を続行する。
【0066】上記処理中にルートリピータポートでの切
断が検出されたら、ルートリピータ2は接続待ち状態4
0に戻る。
【0067】図6はルートリピータの中継状態44の処
理を示すフローチャートである。
【0068】中継状態44に入ると、以下の処理をアド
レス1(所定値)から順にバスに接続される全てのハ
ブ、デバイスに対し繰り返し実行する。ステップ90に
おいて制御部20はバス構成レジスタ22からそのアド
レスで登録されているものが対応デバイスか、ハブか、
あるいは非対応デバイスか確認する。
【0069】対応デバイスであれば、ステップ92にお
いて、デバイスとのバルクINパイプへのIN通信を開
始することにより、デバイスにデータを要求する。
【0070】ステップ94において、デバイスからデー
タが送信されなければ、次のアドレスに進む。デバイス
からデータが送信されたならば、ステップ96におい
て、制御部20はデータ中に含まれる宛先アドレスを確
認する。そして宛先アドレスにブロードキャストが指定
されていた場合は、ステップ98において、アドレス1
から順に、対応デバイスが登録されているアドレスのそ
れぞれに対してバルクOUT通信を行い、データを送信
する。
【0071】また、宛先アドレスに特定のアドレスが指
定されていた場合は、ステップ100において、そのア
ドレスに対してバルクOUT通信を行い、データを送信
する。この処理により、システムに接続された対応デバ
イスそれぞれの必要に応じて、特定デバイスへ、あるい
は、ブロードキャストでデータを送信することができ
る。
【0072】一方、ステップ90において、ハブである
と登録されていると、ステップ102において、バス構
成レジスタ22に保持してある「ステータスチェンジエ
ンドポイント番号」を参照して、ステータスチェンジパ
イプへインタラプトIN通信を開始することにより、当
該ハブへステータスチェンジ情報を取得する要求を行
う。
【0073】ステップ104において、ハブからステー
タスチェンジ情報が送信されなければ次のアドレスに進
む。ハブからステータスチェンジ情報が送信されると、
ポート1から順に以下の処理を一回実行する。この際、
ステップ106において、バスステータスチェンジ情報
でそのポートビットが立っていなかったら(ステータス
変化が無いことを示す)、次のポートの処理に移る。そ
のポートビットが立っていたら、ステップ108におい
て、ハブ制御パイプへIN通信を開始することにより、
ポートステータス情報を要求する。
【0074】ステップ110において、ハブから返され
たポートステータス情報が接続検出を示した場合、ルー
トリピータ2はハブポート初期化状態46へ移行し、エ
ニュメレーション状態42を経て次のポートの処理(ス
テップ106)に戻る。
【0075】ステップ110において、ハブから返され
たポートステータス情報がそれ以外を示していた場合、
ルートリピータ2は接続待ち状態40へ移行する。
【0076】中継状態44において、ルートリピータポ
ートで切断を検出したら、ルートリピータ2は接続待ち
状態40へ移行する。
【0077】図7はルートリピータ2のハブポート初期
化状態46の処理を示すフローチャートである。
【0078】ハブポート初期状態46に入ると、ステッ
プ120において制御部20はハブ制御パイプを通じて
当該ハブの接続検出ステータスチェンジビットのクリア
操作をし、更にステップ122において、ポートリセッ
ト操作を行う。
【0079】ステップ124において、制御部20はポ
ートリセットの完了を知るために当該ハブに対しハブ制
御パイプを通じてポートステータスリードを行い、更に
ステップ126において、ポートイネーブルチェンジビ
ットがセットされるのを待つ。
【0080】次に、制御部20はステップ128におい
て、当該ハブから送られるポートステータス値から接続
デバイスの速度を得て、バス構成レジスタ22に登録す
る。更に、制御部20はステップ130において、ハブ
制御パイプを通じてイネーブル検出ステータスチェンジ
ビットをクリア操作すると、ルートリピータ2はエニュ
メレーション状態42に移行する。
【0081】図8は本発明の一実施の形態におけるデバ
イス間データ転送の仕組みを示す図である。
【0082】ルートリピータ140は、すでに述べた方
式により、USBハブおよびケーブル142を介して対
応デバイス144および146をエニュメレートし、そ
れぞれとの間にIN、OUTの2本の通信路を確立す
る。
【0083】ルートリピータ140は、接続するデバイ
スの種類にかかわりなく、本発明による動作を実行すれ
ばよく、デバイスごとにドライバを用意する必要がない
ため、ハードウエアのみで実現することが可能となる。
また、従来技術にもとづくデバイスを本システムに対応
させるために変更が必要なのは、デバイスのファームウ
エアだけで済む。すなわち本発明では、固有のコンフィ
ギュレーションディスクリプタを設け、ルートリピータ
のエニュメレーションにより固有のコンフィギュレーシ
ョンに設定されたとき、ブロードキャスト送信および一
対一送信を利用して、システムに存在する他の対応デバ
イスの存在を調査し、データを転送する動作を、ファー
ムウエアにより実現することが可能である。
【0084】図9は、本発明の他の実施の形態を示すブ
ロック図である。
【0085】この実施の形態においては、本発明のルー
トリピータに、従来技術のハブと、対応デバイスを一体
化して構成される。
【0086】ダウンストリームポート160にUSBデ
バイスを接続し、切り換え部152をルートリピータ側
に切り換えて、ホスト(PC)なしに使用することがで
きる。また、切り換え部152をアップストリームポー
ト158側に切り換えて、アップストリームポート15
8にホスト(PC)を接続して従来技術と同様のハブ内
蔵デバイスとして使用することもできる。なお、切り換
え部152とアップストリームポート158を含まない
構成も考えられる。
【0087】応用例として、対応デバイス156として
プリンタを内蔵する機器と、USBデバイスインターフ
ェースを備えた携帯電話を接続して、携帯電話からプリ
ンタ出力を行う構成が考えられる。
【0088】また、対応デバイス156としてメモリカ
ード録音再生装置を内蔵する機器と、USBデバイスイ
ンタフェースを備えた携帯電話を接続して、メモリカー
ドの音声データを携帯電話で送受信する構成も考えられ
る。
【0089】
【発明の効果】この発明によれば、接続待ち状態処理を
設け、接続待ち状態となるときバス構成レジスタの内容
を消去することにより、動作開始時、およびバスのどこ
かでデバイスが切断された時、バス全体をリセットして
バス構成全体のエニュメレーションを開始することがで
きる。
【0090】又、バス全体エニュメレーションにおい
て、1(所定値)から順にデバイスアドレスを割当てる
ことにより、バス上に存在するデバイスは常に1から連
続するデバイスアドレスを持つことが保証できるため、
ルートリピータはデバイスツリートポロジーを保持する
必要がない。よって、従来のホストPCが記録するデバ
イスツリー情報に比べて小容量で簡略なバス構成レジス
タで、デバイスアドレスをインデックスとしてデバイス
種別を登録することで目的を達成することができる。
【0091】デバイス種別の分類は、ハブ、対応デバイ
ス、それ以外の3種類で十分である。このことと、コン
フィギュレーションディスクリプタの先頭が規定のパタ
ーンと一致するか否かにより対応デバイスを判定するこ
とにより、ハードウエアのみによってエニュメレーショ
ンを実行することが実用的に可能である。
【0092】ルートリピータは、登録されている対応デ
バイスすべてに対して順次に(ブロードキャスト)、あ
るいは特定アドレスに、データを送信するので、システ
ムに接続された対応デバイスは、それぞれの必要に応じ
て、特定デバイスへ、あるいはブロードキャストでデー
タを送信することができる。
【0093】また、マイコンおよびUSBデバイスコン
トローラハードウエアを具備するUSBデバイス装置は
従来技術として広く用いられているので、ホスト(P
C)用のドライバを必要とせず、デバイスのファームウ
エアに機能を追加するだけで、本発明のルートリピータ
を利用して、相互にデータをやりとりする対応デバイス
を容易に実現することができる。
【0094】また、ダウンストリームポートにUSBデ
バイスを接続し、切り換え部をルートリピータ側に切り
換えて、ホスト(PC)なしに使用することができ、ま
た、切り換え部をアップストリームポート側に切り換え
て、アップストリームポートにホスト(PC)を接続し
て従来技術と同様のハブ内蔵デバイスとして使用するこ
とができるので、ホスト(PC)のある使用環境だけで
なく、ホスト(PC)がない使用環境でも使用すること
が出来る。
【図面の簡単な説明】
【図1】本発明のルートリピータを用いたUSB通信シ
ステム例の実施形態を示す図である。
【図2】本発明のルートリピータの実施形態を示すブロ
ック図である。
【図3】本発明のルートリピータの状態遷移を示す図で
ある。
【図4】本発明のルートリピータの接続待ち状態の処理
を示すフローチャートである。
【図5】本発明のルートリピータのエニュメレーション
状態の処理を示すフローチャートである。
【図6】本発明のルートリピータの中継状態の処理を示
すフローチャートである。
【図7】本発明のルートリピータのハブポート初期化状
態の処理を示すフローチャートである。
【図8】本発明のUSB通信システムにおけるデバイス
間データ転送の仕組みを説明する図である。
【図9】本発明のルートリピータに、ハブと、対応デバ
イスを一体化したUSB通信システムを示す図である。
【図10】従来のUSB通信システムを示す図である。
【図11】従来技術によるUSB通信型を示す表であ
る。
【図12】従来技術によるUSBホストとデバイスが持
つべきバスレベル機能を示す表である。
【図13】従来技術によるポートステータスチェンジ処
理を示すフローチャートである。
【図14】従来技術によるエニュメレーション処理を示
すフローチャートである。
【図15】従来技術による切断処理を示すフローチャー
トである。
【図16】従来技術によるデバイス間データ転送の仕組
みを示す概要図である。
【符号の説明】 2・・・ルートリピータ 4・・・デバイス 6・・・ハブ 8・・・デバイス 10・・・ハブ 12、14・・・デバイス 20・・・制御部 22・・・バス構成レジスタ 24・・・パラレルシリアル変換部 26・・・パターン判定部 28・・・接続・切断・デバイス速度検出部 30・・・リセット送信部 32・・・SOF生成部 34・・・データバッファ 36・・・I/O部 40・・・接続待ち状態 42・・・エニュメレーション状態 44・・・中継状態 46・・・ハブポート初期化状態 150・・・ルートリピータ 152・・・切替部 154・・・ハブ 156・・・対応デバイス 158・・・アップストリームポート 160・・・ダウンストリームポート
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H04L 29/00 - 29/14 H04L 12/28 - 12/44 G06F 13/38 - 13/42 350 G06F 13/10 - 13/14 330

Claims (10)

    (57)【特許請求の範囲】
  1. 【請求項1】 USBデバイスの切断を検出するとバス
    全体をリセットして接続待ち状態に戻り、システムに接
    続されたデバイスに所定値から順にアドレスを与えて登
    録し、登録されている対応デバイスそれぞれに対してバ
    ルクIN通信を行い、前記デバイスから応答があれば、
    そのデータに応じて、登録されている対応デバイスすべ
    てに対して順次にブロードキャストし、あるいは特定ア
    ドレスにデータを送信する制御部と、 デバイスアドレスをインデックスとして、ハブ、対応デ
    バイス、それ以外の3種類のデバイス種別を登録し、前
    記制御部が前記接続待ち状態となるときその内容が消去
    されるバス構成レジスタと、 接続されたデバイスのコンフィギュレーションディスク
    リプタの先頭が、既定のパターンと一致するか否かによ
    り対応デバイスであるか否かを判定するパターン判定部
    と、 を具備したことを特徴とするルートリピータ
  2. 【請求項2】 USBデバイスの切断を検出するとバス
    全体をリセットして接続待ち状態に戻り、システムに接
    続されたデバイスに所定値から順にアドレスを与えて登
    録し、登録されている対応デバイスそれぞれに対してバ
    ルクIN通信を行い、前記デバイスから応答があれば、
    そのデータに応じて、登録されている対応デバイスすべ
    てに対して順次にブロードキャストし、あるいは特定ア
    ドレスにデータを送信する制御部と、 デバイスアドレスをインデックスとして、ハブ、対応デ
    バイス、それ以外の3種類のデバイス種別を登録し、前
    記制御部が前記接続待ち状態となるときその内容が消去
    されるバス構成レジスタと、 接続されたデバイスのコンフィギュレーションディスク
    リプタの先頭が、既定のパターンと一致するか否かによ
    り対応デバイスであるか否かを判定するパターン判定部
    と、 から構成されるルートリピータと、 マイクロプロセッサおよびUSBデバイスコントローラ
    ハードウエアを備え、前記ルートリピータを利用して相
    互にブロードキャストあるいは一対一にデータをやりと
    りするUSBデバイス装置と、 を具備したことを特徴とするUSB通信システム。
  3. 【請求項3】 USBデバイスの切断を検出するとバス
    全体をリセットして接続待ち状態に戻り、システムに接
    続されたデバイスに所定値から順にアドレスを与えて登
    録し、登録されている対応デバイスそれぞれに対してバ
    ルクIN通信を行い、前記デバイスから応答があれば、
    そのデータに応じて、登録されている対応デバイスすべ
    てに対して順次にブロードキャストし、あるいは特定ア
    ドレスにデータを送信する制御部と、 デバイスアドレスをインデックスとして、ハブ、対応デ
    バイス、それ以外の3種類のデバイス種別を登録し、前
    記制御部が前記接続待ち状態となるときその内容が消去
    されるバス構成レジスタと、 接続されたデバイスのコンフィギュレーションディスク
    リプタの先頭が、既定のパターンと一致するか否かによ
    り対応デバイスであるか否かを判定するパターン判定部
    と、 を具備するルートリピータと、 マイクロプロセッサおよびUSBデバイスコントローラ
    ハードウエアを備え、前記ルートリピータを利用して相
    互にブロードキャストあるいは一対一にデータをやりと
    りするUSBデバイス装置と、 アップストリームポートと前記ルートリピータとの切換
    部と、 一端が前記切換部に接続され、他端が前記USBデバイ
    ス、ダウンストリームポートに接続されるUSBハブ装
    置と、 を具備することを特徴とするUSB通信システム。
  4. 【請求項4】 前記制御部は、 動作を開始すると接続待ち状態となり、 前記接続待ち状態でポートにデバイスが接続され、ポー
    ト初期化が完了するとエニュメレーション状態となり、 前記エニュメレーション状態において、エニュメレーシ
    ョンが完了すると中継状態となり、 前記中継状態でバス上にあるハブへのデバイス接続を検
    出するとハブポート初期化状態となり、 前記中継状態でバス上のいずれかのデバイスの切断を検
    出すると接続待ち状態に戻り、 前記ハブポート初期化状態でポート初期化が完了すると
    エニュメレーション状態となり、 前記ハブポート初期化状態でポート初期化中のポートか
    らデバイスが切断されると接続待ち状態に戻る、 ことを特徴とする請求項1記載のルートリピータ
  5. 【請求項5】 前記制御部はさらに、デバイスの接続、
    切断、および速度を検出する接続・切断・デバイス速度
    検出部、およびUSB仕様で定義されたリセット信号を
    出力するリセット送信部を有し、 前記制御部は前記接続待ち状態にあるとき、前記バス構
    成レジスタをクリアし、 前記接続・切断・デバイス速度検出部からのデバイス接
    続の通知を待ち、接続の検出に応答して前記リセット送
    信部にリセット信号をI/O部に送出させ、前記I/O
    部のリセット完了後、前記接続・切断・デバイス速度検
    出部からのデバイス速度の通知を得、該デバイス速度を
    前記バス構成レジスタに記憶し、エニュメレーション状
    態へ遷移することを特徴とする請求項4記載のルートリ
    ピータ
  6. 【請求項6】 前記制御部は、前記エニュメレーション
    状態において、デフォルトアドレスを用いてデバイスデ
    ィスクリプタを取得し、通信パケットサイズを得、 前記デフォルトアドレスを用いてSet Address要求を送
    信し、 再度ディスクリプタアドレスを取得して、当該ディスク
    リプタアドレスに含まれるクラスコードを判定をしてハ
    ブか否かを判定し、 前記判定がハブでなければ、コンフィギュレーションデ
    ィスクリプタを取得し、 前記コンフィギュレーションディスクリプタを判定する
    ことにより、USB通信に対応したデバイスであるか否
    かを判定し、 前記対応デバイスであれば、既定のコンフィギュレーシ
    ョンをセットするよう要求し、前記バス構成レジスタに
    中継通信パイプのデータトグルの初期化および割当てた
    アドレスに通信対応デバイスとして登録し、 前記ハブであれば、そのコンフィギュレーションディス
    クリプタを取得し、前記バス構成レジスタにステータス
    エンドポイント番号を登録し、ステータスチェンジパイ
    プのデータトグルを初期化し、割当てたアドレスにハブ
    として登録することを特徴とする請求項4記載のルート
    リピータ
  7. 【請求項7】 前記制御部は、前記中継状態において、
    前記バス構成レジスタに登録されているアドレスについ
    て順次対応デバイスか、ハブか、あるいは非対応デバイ
    スか確認し、 前記対応デバイスが登録されていれば、バルクIN通信
    を開始することにより、デバイスにデータを要求し、 前記デバイスからデータが送信されなければ、次にアド
    レスに進み、 前記デバイスからデータが送信されたならば、データに
    含まれる宛先アドレスを確認し、 前記宛先アドレスにブロードキャストが指定されている
    場合には、対応デバイスが登録されているアドレスのそ
    れぞれに対して順次バルクOUT通信を行い、データを
    送信し、前記宛先アドレスに特定のアドレスを指定する
    場合には、そのアドレスに対してバルクOUT通信を行
    い、データを送信し、 前記アドレスで登録されているのがハブなら、前記バス
    構成レジスタに保持されたステータスチェンジエンドポ
    イント番号を参照して、ステータスチェンジパイプへイ
    ンタラプトIN通信を開始し、前記ハブへステータスチ
    ェンジ情報を要求し、 前記ハブからステータスチェンジ情報が送信されなけれ
    ば、次にアドレスに進み、 前記ハブからのステータスチェンジ情報に応答して、ハ
    ブのポートそれぞれについて順次、ステータス変化がな
    かったら次のポートの処理に移り、ステータス変化があ
    ったら、ハブ制御パイプへIN通信を開始し、ポートス
    テータス情報を要求することを特徴とする請求項4記載
    ルートリピータ
  8. 【請求項8】 前記制御部は、前記ハブポート初期化状
    態において、ハブ制御パイプを通じて接続検出ステータ
    スチェンジビットをクリアするとともに、ポートをリセ
    ットし、 ポートリセットの完了を知るために、ハブ制御パイプを
    通じてポートステータスリードを行い、ポートイネーブ
    ルチェンジビットがセットされるのを待ち、 ポートステータス値から接続デバイスの速度を得て前記
    バス構成レジスタに登録し、 ハブ制御パイプを通じてイネーブル検出ステータスチェ
    ンジビットをクリアし、エニュメレーション状態に遷移
    することを特徴とする請求項4記載のルートリピータ
  9. 【請求項9】 デバイス−デバイス間のデータ通知を可
    能とするルートリピータによるUSB通信制御方法であ
    って、 前記デバイスの切断を検出するとシステム全体の構成を
    管理する内容をリセットして接続待ち状態とし、 USBバスに接続されるデバイスに対して新たに所定の
    値から順にアドレスを与えてシステム構成管理に登録
    し、 登録されたデバイスそれぞれに対してバルクIN通信を
    行い、通信先のデバイスから応答があれば、そのデータ
    に応じて前記デバイス全てに対して順次、または特定ア
    ドレスのデバイスにデータを送信することを特徴とする
    USB通信制御方法。
  10. 【請求項10】 USBデバイスの切断を検出するとバ
    ス全体をリセットして接続待ち状態に戻り、システムに
    接続されたデバイスに所定値から順にアドレスを与えて
    登録し、登録されている対応デバイスそれぞれに対して
    バルクIN通信を行い、前記デバイスから応答があれ
    ば、そのデータに応じて、登録されている対応デバイス
    すべてに対して順次にブロードキャストし、あるいは特
    定アドレスにデータを送信する制御部と、 デバイスアドレスをインデックスとして、ハブ、対応デ
    バイス、それ以外の3種類のデバイス種別を登録し、前
    記制御部が前記接続待ち状態となるときその内容が消去
    されるバス構成レジスタと、 接続されたデバイスのコンフィギュレーションディスク
    リプタの先頭が、既定のパターンと一致するか否かによ
    り対応デバイスであるか否かを判定するパターン判定部
    と、 を具備するルートリピータと、 ハブと、 アップストリームポートと、ダウンストリームポート
    と、前記ハブを前記ルートリピータ又はアップストリー
    ムポートに切り換え接続する切換部とを具備し、 ダウンストリームポートにUSBデバイスを接続し、
    部をルートリピータ側に切換えてホストパーソナルコ
    ンピュータなしにUSBデバイス間通信を行い、あるい
    は 前記切換部をアップストリームポート側に切換えてアッ
    プストリームポートにホストパーソナルコンピュータを
    接続してUSBデバイス間通信を行うUSB通信制御方
    法。
JP2001101854A 2001-03-30 2001-03-30 ルートリピータ、usb通信システム、usb通信制御方法 Expired - Fee Related JP3497834B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2001101854A JP3497834B2 (ja) 2001-03-30 2001-03-30 ルートリピータ、usb通信システム、usb通信制御方法
TW091105780A TW552780B (en) 2001-03-30 2002-03-25 USB communication control apparatus, USB communication system and USB communication control method
US10/107,255 US20020156952A1 (en) 2001-03-30 2002-03-28 Communication control apparatus, communication system and communication control method
CN02126288.8A CN1388670A (zh) 2001-03-30 2002-03-29 Usb通信控制装置,usb通信系统及usb通信控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001101854A JP3497834B2 (ja) 2001-03-30 2001-03-30 ルートリピータ、usb通信システム、usb通信制御方法

Publications (2)

Publication Number Publication Date
JP2002300229A JP2002300229A (ja) 2002-10-11
JP3497834B2 true JP3497834B2 (ja) 2004-02-16

Family

ID=18955119

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001101854A Expired - Fee Related JP3497834B2 (ja) 2001-03-30 2001-03-30 ルートリピータ、usb通信システム、usb通信制御方法

Country Status (4)

Country Link
US (1) US20020156952A1 (ja)
JP (1) JP3497834B2 (ja)
CN (1) CN1388670A (ja)
TW (1) TW552780B (ja)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760772B2 (en) 2000-12-15 2004-07-06 Qualcomm, Inc. Generating and implementing a communication protocol and interface for high data rate signal transfer
US8812706B1 (en) 2001-09-06 2014-08-19 Qualcomm Incorporated Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system
US7043587B2 (en) * 2001-09-20 2006-05-09 Lenovo (Singapore) Pte. Ltd. System and method for connecting a universal serial bus device to a host computer system
US6976105B1 (en) * 2002-12-11 2005-12-13 Cypress Semiconductor Corp. Apparatus and method for attaching multiple devices to a host
BRPI0410885B1 (pt) 2003-06-02 2018-01-30 Qualcomm Incorporated Gerar e implementar um protocolo de sinal e interface para taxas de dados mais altas
JP3649227B2 (ja) 2003-06-06 2005-05-18 セイコーエプソン株式会社 データ転送制御装置、電子機器及びデータ転送制御方法
KR100480084B1 (ko) 2003-07-23 2005-04-06 엘지전자 주식회사 범용 직렬버스를 이용한 데이터 전송 시스템
AU2004300958A1 (en) 2003-08-13 2005-02-24 Qualcomm, Incorporated A signal interface for higher data rates
ATE424685T1 (de) 2003-09-10 2009-03-15 Qualcomm Inc Schnittstelle für hohe datenrate
US20050097198A1 (en) * 2003-10-08 2005-05-05 Getler Robert M. Printer monitoring system and method
CN1894931A (zh) 2003-10-15 2007-01-10 高通股份有限公司 高数据速率接口
EP1692842A1 (en) 2003-10-29 2006-08-23 Qualcomm Incorporated High data rate interface
TWI381686B (zh) 2003-11-12 2013-01-01 Qualcomm Inc 具有改良的鏈路控制之高資料速率介面
BRPI0416895A (pt) 2003-11-25 2007-03-06 Qualcomm Inc interface de alta taxa de dados com sincronização de link melhorada
CA2731265A1 (en) 2003-12-08 2005-06-23 Qualcomm Incorporated High data rate interface with improved link synchronization
US20050172062A1 (en) * 2003-12-18 2005-08-04 Brad Adams Electronic and mechanical system for use with computers
US8180931B2 (en) * 2004-01-20 2012-05-15 Super Talent Electronics, Inc. USB-attached-SCSI flash-memory system with additional command, status, and control pipes to a smart-storage switch
EP1733537A1 (en) 2004-03-10 2006-12-20 Qualcomm, Incorporated High data rate interface apparatus and method
WO2005091593A1 (en) 2004-03-17 2005-09-29 Qualcomm Incorporated High data rate interface apparatus and method
BRPI0509147A (pt) 2004-03-24 2007-09-11 Qualcomm Inc equipamentos e método para interface de alta taxa de dados
KR100914420B1 (ko) 2004-06-04 2009-08-27 퀄컴 인코포레이티드 고 데이터 레이트 인터페이스 장치 및 방법
US8650304B2 (en) 2004-06-04 2014-02-11 Qualcomm Incorporated Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system
US8539119B2 (en) 2004-11-24 2013-09-17 Qualcomm Incorporated Methods and apparatus for exchanging messages having a digital data interface device message format
US8723705B2 (en) 2004-11-24 2014-05-13 Qualcomm Incorporated Low output skew double data rate serial encoder
US8692838B2 (en) 2004-11-24 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8699330B2 (en) 2004-11-24 2014-04-15 Qualcomm Incorporated Systems and methods for digital data transmission rate control
EP2317688A3 (en) * 2004-11-24 2012-03-21 QUALCOMM Incorporated System and methods for implementing cyclic redundancy checks
US8873584B2 (en) 2004-11-24 2014-10-28 Qualcomm Incorporated Digital data interface device
US8667363B2 (en) 2004-11-24 2014-03-04 Qualcomm Incorporated Systems and methods for implementing cyclic redundancy checks
US8692839B2 (en) 2005-11-23 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8730069B2 (en) 2005-11-23 2014-05-20 Qualcomm Incorporated Double data rate serial encoder
US7752029B2 (en) * 2006-06-23 2010-07-06 Kyocera Mita Corporation Method to change USB device descriptors from host to emulate a new device
TW200830876A (en) 2006-08-24 2008-07-16 Chumby Ind Inc Networked personal audiovisual device having flexible housing
US8521857B2 (en) 2006-08-24 2013-08-27 Bby Solutions, Inc. Systems and methods for widget rendering and sharing on a personal electronic device
JP5057723B2 (ja) * 2006-08-29 2012-10-24 富士通コンポーネント株式会社 Usb接続デバイス
WO2009002804A2 (en) * 2007-06-22 2008-12-31 Chumby Industries, Inc. Systems and methods for device registration
JP2010015318A (ja) * 2008-07-02 2010-01-21 Toshiba Corp Usbホストコントローラ、情報処理装置及びプログラム
US8332557B2 (en) * 2008-12-12 2012-12-11 Qualcomm, Incorporated System, apparatus, and method for broadcasting USB data streams
US8281058B1 (en) * 2009-10-19 2012-10-02 Symantec Corporation Systems and methods for using USB device descriptors to identify computing environments
TWI418991B (zh) * 2010-06-03 2013-12-11 Super Talent Electronics Inc 針對智慧型儲存交換器所設計的快閃記憶體系統
CN101989250B (zh) * 2010-11-03 2014-12-17 中兴通讯股份有限公司 一种串行通信的方法和系统
CN102999449A (zh) * 2011-09-19 2013-03-27 艾欧互联有限公司 具有连接识别功能的端口扩充器及其识别方法
CN104111905B (zh) 2013-04-18 2017-05-10 威盛电子股份有限公司 外接式电子装置与外接式电子装置控制方法
WO2018013735A1 (en) 2016-07-13 2018-01-18 Push-Run Holdings, Llc Modular multi-system gaming console
US11010321B2 (en) * 2016-12-12 2021-05-18 Crossport Network Solutions Inc. Ad-hoc sensing switched data circuit for connecting network hosts and peripherals
US10078609B1 (en) * 2017-03-16 2018-09-18 Wyse Technology L.L.C. Virtualizing a non-USB device as a USB device
TWI709428B (zh) * 2018-01-10 2020-11-11 美商推奔控股有限公司 組態一匯流排之方法及遊戲主控台
CN108317737A (zh) * 2018-02-21 2018-07-24 付志昊 一种家用智能热水器系统
CN108632859B (zh) * 2018-03-27 2021-02-09 深圳酷泰丰科技有限公司 单网卡兼容双物理接口进行数据传输的控制方法及系统
US10963406B2 (en) * 2019-06-18 2021-03-30 Intel Corporation Persistent universal serial bus (USB) device enumeration
CN114218138A (zh) * 2021-11-30 2022-03-22 山东云海国创云计算装备产业创新中心有限公司 一种usb设备模拟装置及测试系统
CN114860640B (zh) * 2022-04-07 2023-06-06 湖南艾科诺维科技有限公司 用于FPGA与ARM通信的FlexSPI接口驱动方法及系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6012103A (en) * 1997-07-02 2000-01-04 Cypress Semiconductor Corp. Bus interface system and method
US6000024A (en) * 1997-10-15 1999-12-07 Fifth Generation Computer Corporation Parallel computing system
US6370603B1 (en) * 1997-12-31 2002-04-09 Kawasaki Microelectronics, Inc. Configurable universal serial bus (USB) controller implemented on a single integrated circuit (IC) chip with media access control (MAC)
US6353866B1 (en) * 1998-01-07 2002-03-05 National Semiconductor Corporation Apparatus and method for initializing a universal serial bus device
JP3782600B2 (ja) * 1998-03-12 2006-06-07 キヤノン株式会社 ネットワークデバイス管理装置、ネットワークデバイス管理方法及び記録媒体
JP2000076038A (ja) * 1998-08-28 2000-03-14 Matsushita Electric Ind Co Ltd Usbハブ回路及びディスプレイ装置
US6311294B1 (en) * 1998-10-20 2001-10-30 Cypress Semiconductor Corp. Device and method for efficient bulk data retrieval using a universal serial bus
US6272644B1 (en) * 1999-01-06 2001-08-07 Matsushita Electrical Industrial Co., Ltd. Method for entering powersave mode of USB hub
US6567875B1 (en) * 1999-04-05 2003-05-20 Opti, Inc. USB data serializer
JP4371466B2 (ja) * 1999-04-15 2009-11-25 株式会社東芝 コンピュータシステム及びそのi/o装置の制御方法
JP4659175B2 (ja) * 2000-04-25 2011-03-30 富士通東芝モバイルコミュニケーションズ株式会社 携帯通信端末
US6718423B2 (en) * 2000-12-29 2004-04-06 Gateway, Inc. Bus hub with a selectable number of ports

Also Published As

Publication number Publication date
US20020156952A1 (en) 2002-10-24
JP2002300229A (ja) 2002-10-11
TW552780B (en) 2003-09-11
CN1388670A (zh) 2003-01-01

Similar Documents

Publication Publication Date Title
JP3497834B2 (ja) ルートリピータ、usb通信システム、usb通信制御方法
US7058748B1 (en) ATA device control via a packet-based interface
JP6400714B2 (ja) Usbハブを有する自動車システムとの柔軟なモバイルデバイス接続性
US7640385B2 (en) Dual-mode bus station and system for communications
EP1753190B1 (en) Method and system for USB re-direct over a network
EP2521973B1 (en) Connecting multiple accessories to a portable computing device
US8103813B2 (en) Method and system for hardware based implementation of USB 1.1 over a high speed link
TWI393009B (zh) 資料共享及傳輸之系統及方法
US20070005867A1 (en) Virtual peripheral device interface and protocol for use in peripheral device redirection communication
US6763402B2 (en) Data storage subsystem
JP4556220B2 (ja) データ伝送ブリッジ装置とそのコントロールチップ及びデータ伝送ブリッジ方法
JPH08249254A (ja) マルチコンピュータシステム
JP2541767B2 (ja) スマ―ト・バス制御ユニット
TW200415828A (en) Interface integrated circuit device for a USB connection
JP4444101B2 (ja) バスシステム、バスシステム内で用いるためのステーション、及びバスインタフェース
US20040057448A1 (en) Information processing system, information processing apparatus, and information processing method
US7124235B2 (en) USB apparatus with switchable host/hub functions and control method thereof
WO2001050219A2 (en) Communication protocol for serial peripheral devices
US7003613B1 (en) System for transferring data using a USB host system with a dedicated processor
JPH07143202A (ja) システムを構成する方法、デバイスを構成する方法、制御装置およびシステム
CN112380152A (zh) 一种NVMe-oF异构存储访问控制器及访问方法
JP2004152156A (ja) インタフェース変換装置
JPH10303948A (ja) 通信装置およびその方法
CN116360675B (zh) 一种宽端口场景中的sas帧路由方法和装置
KR20170067715A (ko) Usb 스트림들을 통한 사이드 채널 액세스

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees