JP4444101B2 - バスシステム、バスシステム内で用いるためのステーション、及びバスインタフェース - Google Patents

バスシステム、バスシステム内で用いるためのステーション、及びバスインタフェース Download PDF

Info

Publication number
JP4444101B2
JP4444101B2 JP2004513949A JP2004513949A JP4444101B2 JP 4444101 B2 JP4444101 B2 JP 4444101B2 JP 2004513949 A JP2004513949 A JP 2004513949A JP 2004513949 A JP2004513949 A JP 2004513949A JP 4444101 B2 JP4444101 B2 JP 4444101B2
Authority
JP
Japan
Prior art keywords
request
format
station
response
controller
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
JP2004513949A
Other languages
English (en)
Other versions
JP2005529430A (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.)
NXP BV
Original Assignee
NXP BV
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 NXP BV filed Critical NXP BV
Publication of JP2005529430A publication Critical patent/JP2005529430A/ja
Application granted granted Critical
Publication of JP4444101B2 publication Critical patent/JP4444101B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • 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/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/387Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
    • 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/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)
  • Small-Scale Networks (AREA)
  • Traffic Control Systems (AREA)
  • Communication Control (AREA)

Description

本発明は、第一のステーションと、信号を転送するためのバスに接続された第二のステーションと、を備えるバスシステムに係る。このバスシステムは、それによると第一のステーションがデータに対するリクエストを第二のステーションに向けて繰返して送ることを要請されるプロトコルに従って動作するように構成され、このプロトコルは、これらリクエストを第一のリクエストフォーマットにて第一の通信速度にて転送するための第一のモードと、これらリクエストを第二のリクエストフォーマットにて第二の速度にて転送するための少なくとも第二のモードを含む。第二のステーションは、リクエストをこれら第一と第二のモードを含む一群のモードから選択されたあるモードにて受信するように構成され、かつ、第一のステーションに対して、それが前記第一のモードに従って動作するように構成されているときは第一の指標を与え、それが第二のモードに従って動作するように構成されているときは第二の指標を与えるように構成される。
本発明は、更に、バスシステム内で用いるための、バスに対する接続を備えるステーションにも関する。このステーションは、それによるとこのステーションがリクエストをこの接続に向けて繰返して送ることを要請されるプロトコルに従って動作するように構成され、このプロトコルは、これらリクエストを第一のリクエストフォーマットにて第一の通信速度にて転送するための第一のモードと、これらリクエストを第二のリクエストフォーマットにて第二の速度にて転送するための少なくとも第二のモードを含む。
本発明は、更にバスシステム内で用いるための、バスに対する接続とプロセッサからリクエストプロパティ(request properties)を受信するための入力とを備えるバスインタフェースにも関する。このバスインタフェースは、それによるとこのバスインタフェースがリクエストをこの接続に向けて繰返して送るプロトコルに従って動作するように構成され、このプロトコルは、これらリクエストを第一のリクエストフォーマットにて第一の通信速度にて転送するための第一のモードと、これらリクエストを第二のリクエストフォーマットにて第二の速度にて転送するための少なくとも第二のモードを含む。
このようなバスシステムがユニバーサルシリアルバス(Universal Serial Bus, USB)仕様において開示されている。このUSB仕様は、Compaq Computer Corporation, Hewlett-Packard Company, Intel Corporation, Lucent Technologies Inc, Microsoft Corporation, NEC Corporation, 及びKoninklijke Philips Electronics N.Vを含む企業グループによって普及(promulgated)されている標準である。以下では、本発明の理解を助けるために関係があると思われるUSBの様々な面について説明する。USBに関するさらなる背景知識については、USB Specification 2.0を参照されたい。
USBは、パーソナルコンピュータと、様々な周辺機器、例えば、ウェブカメラ(webcams)、プリンタ、スキャナ、マイクロホン、キーボード、との間のデータの交換をサポートするために設計された標準バスである。USBバスは、こうして、現存のインタフェース、例えば、RS-232C、シリアルポート、パラレルポート、及びPS/2インタフェースに取って代わるものである。
バスシステム、例えば、USBシステムにおいては、電子バスステーションはバスを介して互いに接続される。通常は、バスステーションは、データを、処理或いは生成するため、或いはデータのフローを制御するためのプロセッサ或いは計算システムを備える。USBステーションは、ホスト(例えば、パーソナルコンピュータ)として、或いはデバイス(周辺機器)として定義される。一般的には、任意のUSBシステム内に、ホストは1つしか存在しない。ホストの所のUSBインタフェースは、ホストコントローラとも呼ばれる。ホストコントローラは、ハードウェア、ファームウエア、或いはソフトウェアの組み合わせにて実現される。USBデバイスはハブとして定義され、これらは追加の接続点(attachment points)或いはファンクション(functions)を提供し、これによってシステムに追加の能力が提供される。これらデバイスは、ホストに、星型トポロジにて接続される。ハブは、あるUSBデバイスが接続或いは除去されたことを示す。ホストは、新たに接続されたUSBデバイスが、ハブであるか、或いはファンクションであるかを決定し、そのUSBデバイスに一意のUSBアドレスを割当てる。全てのUSBデバイスは、一意のUSBアドレスにてアドレスされる。各デバイスは、加えて、1つ或いは複数のエンドポイントをサポートし、ホストはこれらを用いて(それらデバイスと)通信する。
USBはポーリング方式のバス(polled bus)である。ホストコントローラが全てのデータ転送を先導(initiates)する。ほとんどのバストランザクションは、最高3個までのパケットの伝送を伴う。各トランザクションは、ホストコントローラが、スケジュールベースにて、そのトランザクションのタイプと方向、USBデバイスアドレス、及びエンドポイント番号を記述するUSBパケットを送信することで開始される。このパケットは、”トークンパケット(token packet)”と呼ばれる。アドレスされたUSBデバイスは、それ自身を、該当するアドレスフィールドを復号することで選択する。ある与えられたトランザクションにおいて、データがホストからデバイスへ、或いはデバイスからホストへと転送される。データ転送の方向は、このトークンパケット内に指定される。次に、そのトランザクションのソース(側)が、データパケットを送信するか、或いは転送すべきデータを有さないことを示す。宛先(側)は、一般には、これに応答して、その転送が成功したか否かを示すハンドシェークパケット(handshake packet)を送り返す。
USBは、3つのレンジのデータトラフィックワーク負荷(data traffic workloads):つまり、高速(high-speed)、全速(full-speed)、及び低速(low-speed)をサポートする。低速データレンジ(low-speed data range)は、キーボード、マウス(mice)、ゲーム用周辺機器等の対話型デバイス用として設計され、10から100kb/secの通信をサポートする。全速データレンジは、電話、オーディオ、及び圧縮ビデオアプリケーション用として設計され、500kb/secから10Mb/secの通信をサポートする。高速データレンジは、ビデオ及び格納(storage)アプリケーション用として設計され、25から400Mb/secの通信をサポートする。
USBは、PCと周辺機器との間でデータを交換するための非常に普及したインタフェースとなっている。例えば、デジタル静止カメラ(digital still carmeras)、ビデオカメラ、パーソナルデジタルアシスタント、セルラ電話器等の、ますます多くのポータブル周辺機器が、PCとの通信のためにUSBを用いるようになっている。これらポータブルデバイスの多くは、USBインタフェースを介して互いに通信することで利益を得るが、ただし、USBの幾つかの点はこの達成を困難なものとしている。より具体的には、USB通信は、ホストと周辺機器との間でしか行なえない。ところが、PCホストとしての資格を有するためには、そのデバイスは、幾つかの特性(能力)、例えば、多数のデバイスドライバ用のメモリ、大きな電流を電源とする能力、Series”A”コネクタリセプタクル等、を有することを要求される。多くのデバイスにとって上述の全ての能力を有することは現実的ではなく、多くの場合、これら能力は、ポータブルデバイスを互いにインタフェースするためには必要とされない。
これら制限的な要件を克服するために、USB2.0の補強機器(supplement)としての、ポータブル用のUSBアプリケーションである、USB On-The-Go (OTG)がKoninklijke Philips Electronics N.V.を含む複数の会社からの寄与者(contributors)によって開発された。OTGは、あるポータルデバイスがPCとして要求される上述の全ての機能(能力)をサポートするという負担を課せられることなく、ある限定されたUSBホストとして振る舞うことを許される。USB2.0仕様への補強機器としてのOTGは、USB2.0仕様に対する最小限の変更セットを定義し、これにより、ポータブルUSBアプリケーションが可能となる。OTGに関するさらなる背景に関しては、On-The-Go Supplement to the USB 2.0 Specification, Revision 1.0を参照されたい。
USB2.0或いはOTGホストコントローラは、高速通信をサポートする一つの高速ホストコントローラと、全速及び低速通信をサポートする一つ或いは複数のコンパニオンホストコントローラとを備える。高速ホストコントローラは、Enhanced Host Controller Interface (EHCI)を実装し、このため、EHCIホストコントローラ或いは略してeHCとも呼ばれる。これは、このホストコントローラに接続された高速デバイスとの全ての高速通信のために用いられる。コンパニオンホストコントローラは、例えば、Universal Host Controller Interface(UHCI)或いはOpen Host Controller Interface for USB (OHCI)を実装する。コンパニオンホストコントローラ或いはcHCは、ホストコントローラに接続された全速或いは低速デバイスとの通信を扱う。要約すると、このようなUSB2.0或いはOTGをサポートするために、ホストコントローラは、実際には、2つの別個のホストコントローラ、つまり、eHCとcHCを含む。
本発明は、この”2エンジン(two-engine)”アプローチでは、短所として、eHCとcHCの両方が別個のソフトウェアドライバを要求するという洞察に基づく。これは、例えば、ポータブルアプリケーションの場合のような、埋込み環境(embedded environment)では、ハードウェアとソフトウェア資源に限りがあり、制約となる。このアプローチのもう一つの短所は、2つの別個のソフトウェアドライバを開発及びデバッグすることを要求されるために、製品の開発により長い時間が必要となることである。更に、オペレーティングシステムは、eHCとcHCの両方に対してデータ通信をスケジュールすることを要求される。
本発明の一つの目的は、とりわけ、第一のステーションの設計を簡素化することで、ポータブルアプリケーションにより適するバスシステムを提供することにある。
本発明によると、これを達成するために、冒頭において定義されたようなバスシステムの、前記第一のステーションは、プロセッサと、コントローラと、トランスレータとを備え、前記プロセッサは、リクエストに対するリクエストプロパティを前記第一のリクエストフォーマットにて作成するよう動作可能であり、前記コントローラは、前記リクエストプロパティから前記リクエストを前記第一のリクエストフォーマットにて作成するよう動作可能であり、前記コントローラは、更に、前記第一の指標が検出された場合は、前記リクエストを前記第一のフォーマットにて前記第二のステーションに送信し、前記第二の指標が検出された場合は、前記リクエストを前記トランスレータに転送するよう動作可能であり、前記トランスレータは、前記リクエストを前記第二のフォーマットにて前記第二のステーションに送信するよう動作可能である。
動作において、第一のステーション内のプロセッサは、情報を第二のステーションに提供すること、或いは第二のステーションから情報を得ることを要求される。これを達成するためには、第一のステーションは、第二のステーションとバスを介して通信することを要求される。ポーリング方式のバスシステム(polled bus system)、例えば、USBシステムにおいては、通信は、第一のステーションによって、リクエストを送信することで先導される。第二のステーションは、これらリクエストを、第一或いは第二のモードのいずれかによって受信するように構成される。第二のステーションは、第一の指標を介してそれが第一のモードにて動作することを示し、或いは第二の指標を介してそれが第二のモードにて動作することを示す。従って、第一のステーションは、これらリクエストを第一のモードと第二のモードの両方にて送信できるように構成される必要がある。
本発明によるバスシステムにおいては、トランスレータが、必要に応じて、これらリクエストを第二のリクエストフォーマットにて第二の通信速度にて転送する、第二のモードを扱う。従って、プロセッサは、第一のモードにて伝送されるべきリクエストと第二のモードにて伝送されるべきリクエストとを区別することを要求されない。このため、プロセッサは、リクエストに対する第一のモードにて伝送されるべきリクエストプロパティを作成する能力を持つことで十分である。このため、このプロセッサは、リクエストに対するリクエストプロパティを第一のフォーマットにて作成するため必要とされるハードウェア及びソフトウェア資源を有することで十分である。このため、このバスシステムの第一のステーションの設計が簡素化され、このため、このシステムは、ポータブルアプリケーションにより適するものとなる。
本発明によるバスシステムの一つの実施例においては、前記第二のステーションはあるアドレスを割当てられ、前記リクエストプロパティはアドレス情報を含み、コントローラは、これらアドレス情報から、そのリクエストが、それぞれ、第一のフォーマット或いは第二のフォーマットのいずれによって送信されるべきかを決定するよう動作可能である。
バスを介していったん第一のステーションに接続されると、各第二のステーションは、第一のステーションに対して、第一の指標(indicator)にて、それが第一のモードにて通信することを、或いは第二の指標にて、それが第二のモードにて通信することを示す。バスを介して第一のステーションに接続された各第二のステーションに一意のアドレスを割当てることで、コントローラは、ある第二のステーションが、第一のモード或いは第二のモードのいずれによって通信するかを知ることが可能となる。こうして、リクエストプロパティ内にアドレス情報を含めることで、コントローラは、十分に、そのリクエストがどのフォーマットにて送信されるべきか、従って、そのリクエストをトランスレータに転送すべきか否かを決定することが可能となる。これによって、第二のステーションの設計はさらに簡素化される。
本発明によるバスシステムのもう一つの実施例においては、前記第一のステーションは、更に、それぞれ、コントローラとトランスレータによって、第一と第二のモードにて送信されたこれらリクエストをバスにルーティングするためのルータを備える。
ルータを用いることで、第一のステーションに接続された各第二のステーションは、コントローラ或いはトランスレータのいずれかに接続される。こうして、コントローラとトランスレータとの間の潜在的なバス衝突(bus conflicts)が解消される。これによって、コントローラとトランスレータの両方の設計がさらに簡素化される。
本発明によるバスシステムのさらにもう一つの実施例においては、前記第一のモードは、応答を第一の応答フォーマットにて第一の通信速度にて転送するためにも用いられ、前記第二のモードは、応答を第二の応答フォーマットにて第二の速度にて転送するためにも用いられ、前記第二のステーションは、応答を第一のステーションに向けて、第一と第二のモードを含む一群のモードから選択されたあるモードにてリクエストを送信するよう動作可能であり、前記トランスレータは、前記応答を前記第二の応答フォーマットにて受信し、これら応答を前記コントローラに転送するよう動作可能であり、コントローラは、これら応答を第一のフォーマットにて受信し、この応答から応答プロパティを第一の応答フォーマットにて作成するよう動作可能であり、前記プロセッサは前記コントローラによって生成された応答プロパティを扱うよう動作可能である。
トランスレータによってリクエストと応答の両方をそれぞれ第二のフォーマットにて扱えるようにすることで、第一のステーション内で要求されるハードウェア及びソフトウェア資源がさらに低減され、結果として、ポータブルアプリケーションにより適するバスシステムが得られる。
本発明に係るステーションは、バスシステム内で用いるための、バスに対する接続を備える。このバスステーションは、この接続にリクエストを繰返して送るプロトコルに従って動作するように構成され、このプロトコルは、これらリクエストを第一のリクエストフォーマットにて第一の通信速度にて転送するための第一のモードと、これらリクエストを第二のリクエストフォーマットにて第二の速度にて転送するための少なくとも第二のモードを含む。本発明によると、このステーションは、プロセッサと、コントローラと、トランスレータとを備え、トランスレータは、リクエストに対するリクエストプロパティを第一のリクエストフォーマットにて作成するよう動作可能であり、コントローラは、このリクエストプロパティからこれらリクエストを第一のリクエストフォーマットにて作成するよう動作可能であり、コントローラは、更に、これらリクエストを第一のフォーマットにて前記接続に送信し、或いはこれらリクエストを前記トランスレータに転送するよう動作可能であり、前記トランスレータは、これらリクエストを第二のフォーマットにて前記接続に送信するよう動作可能である。
本発明は、更に、バスシステム内で用いるための、バスに対する接続とプロセッサからリクエストプロパティを受信するための入力とを備えるバスインタフェースに係る。このバスインタフェースは、このバスインタフェースがリクエストを前記接続に向けて繰返して送るプロトコルに従って動作するように構成され、このプロトコルは、これらリクエストを第一のリクエストフォーマットにて第一の通信速度にて転送するための第一のモードと、これらリクエストを第二のリクエストフォーマットにて第二の速度にて転送するための少なくとも第二のモードを含む。本発明によると、このバスインタフェースは、コントローラと、トランスレータとを備え、前記入力は、リクエストに対するリクエストプロパティを第一のリクエストフォーマットにて受信するよう動作可能であり、コントローラは、これらリクエストプロパティからこれらリクエストを第一のリクエストフォーマットにて作成するよう動作可能であり、コントローラは、更に、これらリクエストを第一のフォーマットにて前記接続に送信し、或いはこれらリクエストを前記トランスレータに転送するよう動作可能であり、このトランスレータは、これらリクエストを第二のフォーマットにて前記接続に送信するよう動作可能である。
動作において、本発明によるこのバスインタフェースは、その入力の所にリクエストプロパティを第一のリクエストフォーマットにて受信するのみである。コントローラは、プロセッサから、リクエストプロパティを第一のリクエストフォーマットにて受信するのみである。トランスレータが、要求に応じて、これらリクエストを第二のフォーマットのリクエストに翻訳する。従って、コントローラは、より少ないハードウェア及びソフトウェア資源しか必要とされず、このためこの設計が簡素化される。この結果、ポータブルアプリケーションにより適するバスインタフェースが得られる。
以下では、本発明の、上述の及びその他の目的並びに特徴について、添付の図面との関連でより詳細に説明する。
図面中、同一のパーツは同一の参照符号にて示される。
図1は本発明によるバスシステムを示すブロック図である。図示されるバスシステム100は、例えば、USB20或いはOTGシステムから成る。このバスシステムは、第一のステーション或いはホスト101、第二のステーション或いはデバイス102、103、及び第一のステーション101を第二のステーション102、103に接続するバス104を備える。第一のステーション101はプロセッサ105、ホストコントローラとも呼ばれるコントローラ106、トランスレータ107、及びポートルータとも呼ばれるルータ108を備える。コントローラ106、トランスレータ107、及びルータ108は、例えば、図1に示されるようにバスインタフェース109内に含めることもできる。
バスシステム、例えば、USB2.0或いはOTGにおいては、デバイス102、103は、3つの可能なモード、つまり、高速、全速、及び低速の1つにて通信するよう動作可能である。これらデバイスは、USB2.0仕様において定義される通常のやり方にて、ホスト101に対して、それが、第一のモードとも呼ばれる高速モードにて通信するのか、或いは、まとめて第二のモードとも呼ばれる全速或いは低速モードにて通信するのかの指標(indication)を送る。このためには、デバイス102、103がバス104に接続され後に、デバイス102、103がリセットされた後に、下位レベルのシグナリング(low level signaling)が行なわれる。
ホスト集中型のバスシステム(host centric bus system)、例えば、USB2.0或いはOTGにおいては、ホスト101は、動作において、リクエストを、デバイス102、103に繰返して(repeatedly)送る。これらデバイスは、これらリクエストに、応答(responses)にて答える。このバスシステム100における第一の通信モードにおいては、リクエストは、第一のリクエストフォーマットにて、第一の速度にて、ホスト101によって送信され、デバイス102、103によって受信され、他方、応答は、第一の応答フォーマットにて、第一の速度にて、デバイス102、103によって送信され、ホスト101によって受信される。バスシステム100における第二の通信モードにおいては、リクエストは、第二のリクエストフォーマットにて、第二の速度にて、ホスト101によって送信され、デバイス102、103によって受信され、他方、応答は、第二の応答フォーマットにて、第二の速度にて、デバイス102、103によって送信され、ホスト101によって受信される。高速のリクエスト及び応答(第一の通信モード)のフォーマット、及び全速及び低速のリクエスト(第二の通信モード)のフォーマットに関する詳細については、USB2.0仕様を参照されたい。
バスシステム100においては、プロセッサ105は、デバイス102、103に送信されるべきリクエストに関するリクエストプロパティ(request properties)を生成する。プロセッサ105は、リクエストに関するリクエストプロパティを第一のリクエストフォーマットにて作成する。コントローラ106は、例えば、これらリクエストプロパティ内に含まれるアドレス情報或いはモード情報に基づいて、そのリクエストが、そのリクエストプロパティに基づいて、第一のフォーマットにて送信されるべきであるか、或いは第二のフォーマットにて送信されるべきであるかを決定する。そのリクエストが第一のフォーマットにて送信されるべきである場合は、そのリクエストは、コントローラ106によって作成され、送信される。そのリクエストが第二のフォーマットにて送信されるべきであるときは、そのリクエスト或いはリクエストプロパティは、コントローラ106から、トランスレータ107に転送される。トランスレータ107は、これらリクエスト或いはリクエストプロパティを第二のフォーマットのリクエストに翻訳する。ルータ108は、コントローラ106から来るリクエストと、トランスレータ107から来るリクエストの両方をバス104にルーティングする。
プロセッサ105は、加えて、デバイス102、103によって送信された応答の応答プロパティを扱う。ホスト101によって第一の応答フォーマットにて受信された応答は、ルータによってコントローラ106にルーティングされる。コントローラ106は、応答に関する応答プロパティを第一のフォーマットにて作成し、これらプロパティをプロセッサ105に送信する。ホスト101によって第二の応答フォーマットにて受信された応答は、ルータによってトランスレータ107にルーティングされる。トランスレータ107は、この第二のフォーマットの応答を第一のフォーマットの応答に翻訳し、この応答をコントローラ106に転送する。コントローラ106は、応答に関する応答プロパティを第一のフォーマットにて作成し、これらプロパティをプロセッサ105に送信する。
リクエスト及び応答をこのやり方にて通信することの長所は、プロセッサ105とコントローラ106は、両方とも、リクエストプロパティ及びリクエストを第一のモードにて扱うだけで済むことである。こうして、USB2.0或いはOTGシステムにおいては、プロセッサ105とコントローラ106は、全てのデバイス102、103を、あたかもそれらが高速デバイスであるかのように扱うことができる。このため、プロセッサ105とコントローラ106は高速通信を扱うことのみを要求される。トランスレータ107は、高速通信から全速或いは低速への、或いはこの逆への要求される翻訳を遂行する。
USB2.0システムにおいては、コントローラ106は、ホストコントローラであり、プロセッサ105は、システムプロセッサ、例えば、パーソナルコンピュータのマイクロプロセッサである。このようなシステムにおいては、コントローラ106とプロセッサ105との間の通信は、PCIバスを介して行なわれる。このため、これらリクエスト及び応答プロパティは、PCIバスを介してメッセージの形態にて転送される。ポータブルアプリケーション(portable application)とデバイスとを接続するOTGシステムにおいては、プロセッサ105は、ポータブルアプリケーションのシステムプロセッサから成る。このようなシステムにおいては、プロセッサ105とコントローラ106との間の通信は、例えば、プロセッサ105のパラレルポートとコントローラ106或いはバスインタフェース109のパラレルポートとに接続されたパラレルバスを介して行なわれる。この場合は、これらリクエスト及び応答プロパティは、適当なフォーマットのメッセージの形態にて、パラレルバスを介して転送される。
図2は、公知のバスインタフェースを示すブロック図である。このブロック図は、EHCI (Enhanced Host Controller) Specification for Universal Serial Bus, version 1.1, March12, 2002(ユニバーサルシリアルバスに対するEHCI仕様)において定義されるようなUSB2.0ホストコントローラを示すが、詳細についてはこれを参照されたい。ホストコントローラとも呼ばれるこのバスインタフェース200は、システムプロセッサへのインタフェース201、eHCとも呼ばれる高速ホストコントローラ202、及びcHCとも呼ばれるコンパニオンホストコントローラ203を備える。このEHCI仕様によると、コンパニオンホストコントローラ(cHC)は、USB1.1とコンパティブルであることを要求される。cHCは省くことも、複数個設けることもできる。ホストコントローラ200は、加えて、PRLとも呼ばれるルータ或いはポートルーティング論理204を備える。このポートルーティング論理204は、高速ホストコントローラ202のポート206ととコンパニオンホストコントローラ203のポート207とを、ホストコントローラ200のルート(根)ポート205にルーティングする。高速ホストコントローラ202はEHCIインタフェースを実装する。これは、ホストコントローラ200のルートポート205に接続された高速デバイスへの全ての高速通信のために用いられる。EHCI仕様によると、ホストコントローラ200のルート(根)ポート205に接続された全速及び低速デバイスへの通信は、コンパニオンUSB1.1ホストコントローラ203にて扱われる。高速ホストコントローラ202は、全速或いは低速デバイスに対しては動作できない。このフレキシブルな動作環境を提供するための鍵は、ポートトランシーバのルーティング論理204である。
コンパニオンホストコントローラ203は、任意のUSB1.1ホストコントローラであり得る。これは、例えば、オープンホストコントローラインタフェース(Open Host Controller Interface、OHCI)或いはユニバーサルバスホストコントローラインタフェース(Universal bus Host Controller Interface 、UHCI)を実装する。コンパニオンホストコントローラ203は、ルート(根)205に接続された全速及び低速UBSデバイスを管理する。コンパニオンホストコントローラ203は、高速ホストコントローラ202についての知識は有さない。高速デバイスは、高速ホストコントローラ202に、ルーティングされ、これによって制御される。起動されており、そのように構成(configured)されているときは、高速ホストコントローラ202が、全てのルート(根)ポート205の省略時のオーナ(default owner)となる。このことは、全てのデフォルトルートポート(default root port)205は、高速ホストコントローラのポート206にルーティングされることを意味する。高速コントローラ202は、システムプロセッサの所に常駐するそのドライバソフトウェアと一体となって、最初に、接続されている全てのデバイスを検出し、これらデバイスにアドレスを割当てる。ある接続されているデバイスが高速デバイスではないと思われ場合は、高速ホストコントローラ202は、そのポートの所有、従ってそのデバイスの制御を、コンパニオンホストコントローラ203に引き渡す。その後、コンパニオンホストコントローラ203の制御下で、この新たなポート指定(port enumeration)に対して、接続されたデバイスの検出が最初から開始され、そのデバイスが確認(enumerated)され、そのデバイスにアドレスが割当てられる。他方、そのデバイスが高速デバイスであることが検出された場合は、高速ホストコントローラ202は、そのポートの所有を維持し、高速ホストコントローラ202の制御下で、そのデバイスの確認(enumeration)が完結される。
このいわゆる”ツーエンジン(two-engine)”アーキテクチャの大きな短所は、システムプロセッサ上に、一方はEHCIを実装する高速ホストコントローラ202のための、もう一方は、OHCI或いはUHCIを実装するコンパニオンホストコントローラ203のための、2つのソフトウェアスタックが要求されることにある。これは、とりわけ、ハードウェア及びソフトウェア資源が非常に限られている埋込み環境(embedded environment)においては大きな制約となる。このアーキテクチャは、他にも、デバッギング(debugging)の作業が”二重手間”となることや、システムプロセッサ上にオペレーティングシステムのための2つのスケジューリングスキームを実装することが必要となることなどの短所を有する。この両方とも、販売までの時間を長引かせる要因となる。更に、このアーキテクチャでは、図1に示される本発明によるバスインタフェース109のアーキテクチャと比較して、ホストコントローラ200内により多くのハードウェア(より多数のゲート)が必要となる。
図3は、公知のトランスレータを示すブロック図である。このブロック図は、USB2.0仕様においてUSB2.0ハブ内に設けることを指定されているトランザクショントランスレータ300を示す。以下では、このトランザクショントランスレータ300について簡単に説明する。より詳細については、USB2.0仕様を参照されたい。このトランザクショントランスレータ300は、高速ハンドラ301、全速/低速ハンドラ302、及びバッファ303、304、305、及び306を備える。高速ハンドラ301は、高速モードでの通信用に設計されており、ホストからの、全速或いは低速リクエストに翻訳されるべきリクエストを受け取るとともに、ホストに、全速或いは低速応答から(高速応答に)翻訳された応答を送信する。全速/低速ハンドラ302は、あるデバイスからの、高速応答に翻訳されるべき応答を受け取るとともに、そのデバイスに、高速リクエストから(全速/低速リクエスト)翻訳されたリクエストを送信する。バッファ303、304、305及び306は、進行中のトランザクションを保持するとともに、各バッファリングされたトランザクションの状態を、それがトランザクショントランスレータ300によって処理されている際に追跡する。トランザクションは、ホストによって送信されるリクエストと、デバイスによって送信される応答から成る。バッファ303、304、305及び306は、高速ハンドラ301と全速/低速ハンドラ302との間の接続を提供する。矢印は、データの流れを示す。
トランザクショントランスレータ300の状態の追跡は、そのトランザクションが具体的にどのようなUSB転送タイプに属するかに依存する。可能な転送タイプには、バルク(bulk)、制御(control)、割込み(interrupt)、及びイソクロナス(isochronous)等がある。高速ハンドラ301は、高速分割開始(high-speed start-split)トランザクションを受け取ったり、高速分割完了(high-speed complete-split)トランザクションに応答したりする。高速ハンドラ301は、分割開始(start-split)トランザクションを、バッファ303及び304内に、全速/低速ハンドラ302による処理のために入れる。
こうしてバッファリングされた分割開始トランザクション(start-split transactions)は、全速/低速ハンドラ302に、全速/低速ハンドラ302が、それぞれ、全速或いは低速デバイスに向けて対応する全速或いは低速トランザクションを発行することを可能にする情報を提供する。加えて、全速/低速ハンドラ302は、これら全速/低速トランザクションの結果を、バッファ303及び304内にバッファリングするが、これらは、高速ハンドラ301によって、対応する分割完了トランザクション(complete-split transactions)を介して高速バス上に返される。
図3に示されるようなトランザクショントランスレータは、図1に示されるような本発明によるバスシステム100内に設けられるトランスレータとは異なることに注意する。本発明によるトランスレータ107は、ハブ内ではなく、バスインタフェース自身内に組み込まれる。プロセッサ105の方向へのトランスレータ107からの、或いはこの逆方向への通信は非USB通信である。これに対して、トランザクショントランスレータ300の上流の通信、つまり、ホストに向かう及びホストからの通信は、高速USB通信である。こうして、システムプロセッサ内に要求されるUSB1.1ドライバのトップの所には、高速、全速、及び低速通信を実装する従来のUSB2.0システムは、トランザクショントランスレータ300を備えるハブを必要とし、このために要求されるハードウェア資源が更に増加する。
図4は、本発明によるバスインタフェースを示すブロック図である。バスインタフェース400は、システムプロセッサへのインタフェース401、高速コントローラ402、トランスレータ406、及びルータ407を備える。高速コントローラ402は、構造デコーダ403、ハブエミュレータ(hub emulator)404、及び高速パケットハンドラ405を備える。
システムプロセッサへのインタフェース401は、任意のシステムバス、例えば、PCI或いはAHBバスへのインタフェースであり得る。
高速コントローラは、EHCI仕様において定義されているような、リクエストプロパティとも呼ばれる、全ての構造を扱う構造デコーダ403を備える。この構造デコーダ403は、EHCI仕様において定義されるデータ構造をフェッチングし、これら構造内の様々なフィールドを復号する。これらフィールドは、デバイスアドレス、デバイスエンドポイント番号、デバイス速度、送信或いは受信のために要求されるバイト数等を指定する。こうして復号された情報に基づいて、構造デコーダ403は、ハブエミュレータ404、高速パケットハンドラ405、或いはトランスレータ406へのリクエストを開始する。
そのデバイスアドレスがハブエミュレータ404のアドレスである場合は、そのリクエストはハブエミュレータ404に向けて発行され、その状態は直接にシステムプロセッサに返され、システムメモリ内で、USBバスを用いることなく更新される。そのデバイスアドレスがハブエミュレータ404のアドレスとは異なる場合は、そのデバイス速度フィールドは、このリクエストをどのモジュールが扱うべきかを示す。デバイス速度フィールドが高速デバイスであることを示す場合は、高速パケットハンドラ405がそのリクエストを扱う。高速パケットハンドラ405は、高速USBトランザクションを、全ての高速ポート408上に発行する。このUSBトランザクションの状態は、構造デコーダ403に返され、構造デコーダ403は、この状態情報をシステムプロセッサに返し、システムプロセッサはこの状態情報をシステムメモリ内で更新する。デバイス速度フィールドが全速或いは低速デバイスであることを示す場合は、構造デコーダは、リクエストを、トランスレータ406に向けて発行する。トランスレータ406は、構造デコーダ403からのこの情報を用いて、全速及び低速バス上でのUSBトランザクションを開始する。
高速パケットハンドラ405は、構造デコーダ403のリクエストを、直ちにUSBバス上に発行する。トランスレータ406は、内部に、2つのリクエストを格納することができるキューシステムを有する。これは、EHCIとUSB2.0ハブを備える従来のUSB2.0システムと互換性を持たせるために行なわれる。このような従来のシステムにおいては、一つの全速或いは低速トランザクションを完結させるために、2つの高速トランザクションを発行することを要求される。第一の高速トランザクションは、図3に示されるようなトランザクショントランスレータ300に、全速或いは低速バス上でのトランザクションを開始するための情報を与える。トランザクショントランスレータ300への第二の高速トランザクションは、全速或いは低速バス上に発行されたトランザクションの状態情報を取り出すために発行される。
本発明によるバスインタフェース400によると、同一の原理が用いられるが、ただし、高速USBバスは用いられない。両方のリクエストとも、直接にトランスレータ406に向けて発行される。分割開始(start-split)と呼ばれる第一のリクエストの後に、トランスレータ406は、全速/低速USBバス上でトランザクションを開始する。分割完了(complete-split)と呼ばれる第二のリクエストがあると、トランスレータ406は、それが全速/低速バス上で遂行したトランザクションの状態情報を返す。トランスレータ406は、USB仕様に基づいて、適当なときに全速/低速バス上でのUSBトランザクションを開始する。これらトランザクションの結果は、トランスレータ406内にローカル的に格納され、分割完了(complete-split)が受信されたとき返される。
本発明によるバスインタフェース400の、USB2.0ハブと組み合わせて用いられる従来のEHCIと比較したときの長所は、従来の組み合わせでは、USB2.0ハブ内に組み込まれた、図3に示されるようなトランザクショントランスレータ300との間の全ての通信は全USBツリーを介して送られるところにある。これとは対照的に、本発明によるバスインタフェース400のアーキテクチャでは、高速USB転送はトランスレータ406との通信とパラレルに扱うことができる。
更に、従来のEHCIとUSB2.0ハブとを組み合わせて用いるやり方においては、全ての全速及び低速バストラフィックを、高速にてUSB2.0ハブに転送することを要求される。これとは対照的に、本発明によるバスシステムにおいては、高速トラフィックと、全速/低速トラフィックは互いに分離される。トランスレータ406によって送ることを要求される全速/低速トラフィックは、高速バス上には転送されない。このため、高速バス上の負荷が軽減され、EHCIとUSB2.0ハブを組み合わせて用いる従来の方法と比較して、高速バス上により多くのトラフィックを発行することが可能になる。
ポートルーティング論理(port routing logic)とも呼ばれるルータ407は、接続されたUSBデバイスの速度を決定する。ルータ407のポート410に接続されたUSBデバイスが高速デバイスである場合は、これは、そのポートを、高速パケットハンドラ405の対応する高速ポート409にルーティングする。ポート410に接続されたデバイスが全速或いは低速ポートであるときは、これは、そのポート410をトランスレータ406の対応する全速/低速ポート409にルーティングする。
上で説明された本発明の実施例は解説のためのもので、制限を意図するものではない。当業者においては、添付のクレームに定義される本発明の範囲から逸脱することなく、これら実施例に対して様々な修正を加えることが可能である。
本発明によるバスシステムを示すブロック図である。 公知のバスインタフェースを示すブロック図である。 公知のトランスレータを示すブロック図である。 本発明によるバスインタフェースを示すブロック図である。

Claims (18)

  1. 第一のステーションと信号を転送するためのバスによって接続された第二のステーションとを備えるポーリング方式のバスシステムであって、前記バスシステムは、前記第一のステーションがデータに対するリクエストを前記第二のステーションに向けて繰返して送るプロトコルに従って動作するように構成され、前記プロトコルは、前記リクエストを第一のリクエストフォーマットにて第一の通信速度にて転送するための第一のモードと、前記リクエストを第二のリクエストフォーマットにて第二の速度にて転送するための少なくとも第二のモードを含み、前記第二のステーションは、前記第一と第二のモードを含む一群のモードから選択されたあるモードにてリクエストを受信するように構成され、かつ、それが前記第一のモードに従って動作するように構成されているときは第一の指標を前記第一のステーションに対して与え、それが前記第二のモードに従って動作するように構成されているときは第二の指標を与えるように構成され、前記第一のステーションは、プロセッサと、コントローラと、を備え、前記プロセッサは、リクエストに対するリクエストプロパティを前記第一のリクエストフォーマットにて作成するよう動作可能であり、前記コントローラは、前記リクエストプロパティから前記リクエストを前記第一のリクエストフォーマットにて作成するよう動作可能であり、更に、前記第一の指標が検出された場合は、前記リクエストを前記第一のフォーマットにて前記第二のステーションに送信し、
    前記バスシステムは、USBシステムであり、前記第一のステーションはUSBホストであり、前記第一のステーションはトランスレータをさらに備え、前記コントローラは、前記第二の指標が検出された場合は、前記リクエストを前記トランスレータに転送するよう動作可能であり、前記トランスレータは、前記リクエストを前記第二のフォーマットにて前記第二のステーションに送信するよう動作可能である、ことを特徴とするバスシステム。
  2. 前記リクエストプロパティはモード情報を含み、前記コントローラは、前記モード情報から、前記リクエストが、それぞれ、前記第一のフォーマット或いは第二のフォーマットのいずれによって送信されるべきかを決定するよう動作可能である、ことを特徴とする請求項1記載のバスシステム。
  3. 前記第二のステーションはあるアドレスを割当てられ、前記リクエストプロパティはアドレス情報を含み、前記コントローラは、前記アドレス情報から、前記リクエストが、それぞれ、前記第一のフォーマット或いは第二のフォーマットのいずれによって送信されるべきかを決定するよう動作可能である、ことを特徴とする請求項1記載のバスシステム。
  4. 前記第一のステーションは、更に、それぞれ、前記コントローラと前記トランスレータによって、前記第一と第二のモードにて送信された前記リクエストを、前記バスにルーティングするためのルータを備える、ことを特徴とする請求項1記載のバスシステム。
  5. 前記第一のモードは、応答を第一の応答フォーマットにて前記第一の通信速度にて転送するためにも用いられ、前記第二のモードは、前記応答を第二の応答フォーマットにて前記第二の速度にて転送するためにも用いられ、前記第二のステーションは、応答を前記第一のステーションに向けて、前記第一と第二のモードを含む一群のモードから選択されたあるモードにて送信するよう動作可能であり、前記トランスレータは、前記応答を前記第二の応答フォーマットにて受信し、前記応答を前記コントローラに転送するよう動作可能であり、前記コントローラは、前記応答を前記第一のフォーマットにて受信し、前記応答から応答プロパティを前記第一の応答フォーマットにて生成するよう動作可能であり、前記プロセッサは前記コントローラによって生成された前記応答プロパティを扱うよう動作可能である、ことを特徴とする請求項1記載のバスシステム。
  6. 前記第一のステーションは、更に、前記第二のステーションによって送信された前記応答を、前記トランスレータと前記コントローラにルーティングするためのルータを備え、前記ルータは、前記第一の指標が検出された場合は、前記応答を前記コントローラにルーティングし、前記第二の指標が検出された場合は、前記トランスレータにルーティングするよう動作可能である、ことを特徴とする請求項記載のバスシステム。
  7. ポーリング方式のバスシステム内で用いるためのバスに対する接続を備えるステーションであって、前記ステーションは、前記ステーションがリクエストを前記接続に向けて繰返して送るプロトコルに従って動作するように構成され、前記プロトコルは、前記リクエストを第一のリクエストフォーマットにて第一の通信速度にて転送するための第一のモードと、前記リクエストを第二のリクエストフォーマットにて第二の速度にて転送するための少なくとも第二のモードを含み、前記ステーションは、前記バスに接続された他のステーションが前記第一のモードで動作するように構成される場合には前記他のステーションからの第一の指標を受信するように構成され、前記他のステーションが前記第二のモードで動作するように構成される場合には前記他のステーションからの第二の指標を受信するように構成され、前記ステーションは、プロセッサと、コントローラと、を備え、前記プロセッサは、リクエストに対するリクエストプロパティを前記第一のリクエストフォーマットにて生成するよう動作可能であり、前記コントローラは、前記リクエストプロパティから前記リクエストを前記第一のリクエストフォーマットにて作成するよう動作可能であり、更に、前記コントローラは、前記第一の指標が検出された場合には前記リクエストを前記第一のフォーマットにて前記接続に送信し、
    前記ステーションはUSBホストであり、前記ステーションはトランスレータを備え、前記コントローラは、前記第二の指標が検出された場合には前記リクエストを前記トランスレータに転送するよう動作可能であり、前記トランスレータは、前記リクエストを前記第二のフォーマットにて前記接続に送信するよう動作可能である、ことを特徴とするステーション。
  8. 前記リクエストプロパティはモード情報を含み、前記コントローラは、前記モード情報から、前記リクエストが、それぞれ、前記第一のフォーマット或いは第二のフォーマットのいずれによって送信されるべきかを決定するよう動作可能である、ことを特徴とする請求項記載のステーション。
  9. 前記リクエストプロパティはアドレス情報を含み、前記コントローラは、前記アドレス情報から、前記リクエストが、それぞれ、前記第一のフォーマット或いは第二のフォーマットのいずれによって送信されるべきかを決定するよう動作可能である、ことを特徴とする請求項記載のステーション。
  10. 前記ステーションは、更に、それぞれ、前記コントローラと前記トランスレータによって、前記第一と第二のモードにて送信された前記リクエストを、前記接続にルーティングするためのルータを備える、ことを特徴とする請求項記載のステーション。
  11. 前記第一のモードは、応答を第一の応答フォーマットにて前記第一の通信速度にて転送するためにも用いられ、前記第二のモードは、前記応答を第二の応答フォーマットにて前記第二の速度にて転送するためにも用いられ、前記トランスレータは、前記応答を前記接続から前記第二の応答フォーマットにて受信し、前記応答を前記コントローラに前記第一のフォーマットにて転送するよう動作可能であり、前記コントローラは、前記応答を前記接続から前記第一のフォーマットにて受信し、前記応答から応答プロパティを前記第一の応答フォーマットにて作成するよう動作可能であり、前記プロセッサは、前記コントローラによって生成された前記応答プロパティを扱うよう動作可能である、ことを特徴とする請求項記載のステーション。
  12. 前記第一のステーションは、更に、前記接続の所で受信される前記応答を、前記トランスレータと前記コントローラにルーティングするためのルータを備え、前記ルータは、前記応答を、前記応答が前記第一のフォーマットにて受信された場合は、前記コントローラに、前記応答が前記第二のフォーマットにて受信された場合は、前記トランスレータにルーティングするよう動作可能である、ことを特徴とする請求項11記載のステーション。
  13. ポーリング方式のバスシステム内で用いるためのバスに対する接続とプロセッサからリクエストプロパティを受信するための入力を備えるバスインタフェースであって、前記バスインタフェースは、前記バスインタフェースがリクエストを前記接続に向けて繰返して送るプロトコルに従って動作するように構成され、前記プロトコルは、前記リクエストを第一のリクエストフォーマットにて第一の通信速度にて転送するための第一のモードと、前記リクエストを第二のリクエストフォーマットにて第二の速度にて転送するための少なくとも第二のモードを含み、前記バスインタフェースは、前記バスに接続された他のステーションが前記第一のモードで動作するように構成される場合には前記他のステーションからの第一の指標を受信するように構成され、前記他のステーションが前記第二のモードで動作するように構成される場合には前記他のステーションからの第二の指標を受信するように構成され、前記バスインタフェースは、コントローラを備え、前記入力はリクエストに対するリクエストプロパティを前記第一のリクエストフォーマットにて受信するよう動作可能であり、前記コントローラは、前記リクエストプロパティから前記リクエストを前記第一のリクエストフォーマットにて作成するよう動作可能であり、更に、前記コントローラは、前記第一の指標が検出された場合には前記リクエストを前記第一のフォーマットにて前記接続に送信するよう動作可能であり、前記バスインタフェースは、USBホスト用であり、前記バスインタフェースはトランスレータを備え、前記コントローラは、前記第二の指標が検出された場合には前記リクエストを前記トランスレータに転送するように動作可能であり、前記トランスレータは、前記リクエストを前記第二のフォーマットにて前記接続に送信するよう動作可能である、ことを特徴とするバスインタフェース。
  14. 前記リクエストプロパティはモード情報を含み、前記コントローラは、前記リクエストが、それぞれ、前記第一のフォーマット或いは第二のフォーマットのいずれによって送信されるべきかを前記モード情報から決定するよう動作可能である、ことを特徴とする請求項13記載のバスインタフェース。
  15. 前記リクエストプロパティはアドレス情報を含み、前記コントローラは、前記リクエストが、それぞれ、前記第一のフォーマット或いは第二のフォーマットのいずれによって送信されるべきかを前記アドレス情報から決定するよう動作可能である、ことを特徴とする請求項14記載のバスインタフェース。
  16. 前記バスインタフェースは、更に、それぞれ、前記コントローラと前記トランスレータによって、前記第一と第二のモードにて送信された前記リクエストを、前記接続にルーティングするためのルータを備える、ことを特徴とする請求項13記載のバスインタフェース。
  17. 前記第一のモードは、応答を第一の応答フォーマットにて前記第一の通信速度にて転送するためにも用いられ、前記第二のモードは、前記応答を第二の応答フォーマットにて前記第二の速度にて転送するためにも用いられ、前記トランスレータは、前記応答を前記接続から前記第二の応答フォーマットにて受信し、前記応答を前記コントローラに前記第一のフォーマットにて転送するよう動作可能であり、前記コントローラは、前記接続から前記応答を前記第一のフォーマットにて受信し、前記応答から応答プロパティを前記第一の応答フォーマットにて作成するよう動作可能であり、前記バスインタフェースは、前記リクエストプロパティを前記プロセッサに送信するための出力を備える、ことを特徴とする請求項13記載のバスインタフェース。
  18. 前記ステーションは、更に、前記接続の所で受信される前記応答を、前記トランスレータと前記コントローラにルーティングするためのルータを備え、前記ルータは、前記応答を、前記応答が前記第一のフォーマットにて受信された場合は、前記コントローラに、前記応答が前記第二のフォーマットにて受信された場合は、前記トランスレータに、ルーティングするよう動作可能である、ことを特徴とする請求項13記載のバスインタフェース。
JP2004513949A 2002-06-12 2003-05-21 バスシステム、バスシステム内で用いるためのステーション、及びバスインタフェース Expired - Fee Related JP4444101B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
SG0200162 2002-06-12
PCT/IB2003/002196 WO2003107199A2 (en) 2002-06-12 2003-05-21 Bus system, station for use in a bus system, and bus interface

Publications (2)

Publication Number Publication Date
JP2005529430A JP2005529430A (ja) 2005-09-29
JP4444101B2 true JP4444101B2 (ja) 2010-03-31

Family

ID=29729281

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004513949A Expired - Fee Related JP4444101B2 (ja) 2002-06-12 2003-05-21 バスシステム、バスシステム内で用いるためのステーション、及びバスインタフェース

Country Status (10)

Country Link
US (1) US7383372B2 (ja)
EP (1) EP1516261B1 (ja)
JP (1) JP4444101B2 (ja)
KR (1) KR20050010906A (ja)
CN (1) CN100343840C (ja)
AT (1) ATE403906T1 (ja)
AU (1) AU2003228060A1 (ja)
DE (1) DE60322702D1 (ja)
TW (1) TWI313814B (ja)
WO (1) WO2003107199A2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10239814B4 (de) * 2002-08-29 2008-06-05 Advanced Micro Devices, Inc., Sunnyvale Erweiterte Testmodusunterstützung für Hostcontroller
ATE497617T1 (de) * 2004-06-15 2011-02-15 Nxp Bv Bus-controller zur handhabung von geteilten transaktionen
DE102004057756B4 (de) * 2004-11-30 2009-08-06 Advanced Micro Devices Inc., Sunnyvale USB-Steuerungseinrichtung mit OTG-Steuerungseinheit
US8103813B2 (en) 2005-07-08 2012-01-24 Broadcom Corporation Method and system for hardware based implementation of USB 1.1 over a high speed link
JP4779955B2 (ja) * 2006-01-06 2011-09-28 富士通株式会社 パケット処理装置及びパケット処理方法
US7984228B2 (en) * 2006-02-28 2011-07-19 Microsoft Corporation Device connection routing for controller
US7631126B2 (en) 2007-05-24 2009-12-08 Research In Motion Limited System and method for interfacing an electronic device with a host system
EP2107468B1 (en) * 2007-05-24 2011-10-12 Research In Motion Limited System and method for interfacing an electronic device with a host system
US7840733B2 (en) * 2008-07-03 2010-11-23 Intel Corporation Power optimized dynamic port association
KR101256942B1 (ko) * 2009-10-06 2013-04-25 한국전자통신연구원 직렬 버스 통신 방법 및 이를 위한 버스 인터페이스 장치
CN101788972B (zh) * 2010-03-08 2012-07-11 威盛电子股份有限公司 一种数据传输的系统与方法
CN101854314B (zh) * 2010-06-09 2013-11-06 中兴通讯股份有限公司 一种适配通用串行总线无线数据卡的家庭网关及方法
TWI490763B (zh) 2011-12-16 2015-07-01 Murata Manufacturing Co Touch operation input device
US11087801B1 (en) 2020-02-06 2021-08-10 Micron Technology, Inc. Configuring a host interface of a memory device based on mode of operation
US11243896B2 (en) * 2020-03-25 2022-02-08 Micron Technology, Inc. Multiple pin configurations of memory devices

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11127215A (ja) * 1997-10-23 1999-05-11 Fujitsu Ltd 通信制御装置及び通信制御プログラムを記憶した記憶媒体
US6611552B2 (en) * 1999-01-28 2003-08-26 Intel Corporation Universal serial bus transceiver and associated methods
US6901471B2 (en) * 2001-03-01 2005-05-31 Synopsys, Inc. Transceiver macrocell architecture allowing upstream and downstream operation
US6775733B2 (en) * 2001-06-04 2004-08-10 Winbond Electronics Corp. Interface for USB host controller and root hub
US6721815B1 (en) * 2001-09-27 2004-04-13 Intel Corporation Method and apparatus for iTD scheduling
TW538364B (en) * 2001-12-10 2003-06-21 Via Tech Inc USB control circuit capable of automatically switching paths
US7000057B1 (en) * 2002-02-11 2006-02-14 Cypress Semiconductor Corp. Method and apparatus for adding OTG dual role device capability to a USB peripheral
DE10224163B4 (de) * 2002-05-31 2005-05-04 Advanced Micro Devices, Inc., Sunnyvale Transaktionsdauermanagement in einem USB-Hostcontroller
DE10234991B4 (de) * 2002-07-31 2008-07-31 Advanced Micro Devices, Inc., Sunnyvale Hostcontrollerdiagnose für einen seriellen Bus
US6959355B2 (en) * 2003-02-24 2005-10-25 Standard Microsystems Corporation Universal serial bus hub with shared high speed handler

Also Published As

Publication number Publication date
US7383372B2 (en) 2008-06-03
CN1659533A (zh) 2005-08-24
WO2003107199A3 (en) 2004-03-18
ATE403906T1 (de) 2008-08-15
JP2005529430A (ja) 2005-09-29
US20050216650A1 (en) 2005-09-29
DE60322702D1 (de) 2008-09-18
EP1516261A2 (en) 2005-03-23
WO2003107199A2 (en) 2003-12-24
KR20050010906A (ko) 2005-01-28
AU2003228060A1 (en) 2003-12-31
EP1516261B1 (en) 2008-08-06
TWI313814B (en) 2009-08-21
CN100343840C (zh) 2007-10-17
TW200404215A (en) 2004-03-16

Similar Documents

Publication Publication Date Title
JP3497834B2 (ja) ルートリピータ、usb通信システム、usb通信制御方法
JP5917474B2 (ja) 統合マルチ転送媒体コネクタを利用するシステム及びルーティング方法
US7949816B2 (en) Method and apparatus for enhancing universal serial bus applications
US7945721B1 (en) Flexible control and/or status register configuration
JP4444101B2 (ja) バスシステム、バスシステム内で用いるためのステーション、及びバスインタフェース
US20070005867A1 (en) Virtual peripheral device interface and protocol for use in peripheral device redirection communication
US7752376B1 (en) Flexible configuration space
JP2001358733A (ja) ユニバーサルシリアルバス(usb)をピアツーピアネットワークとして用いる方法
CA2657827A1 (en) Method and apparatus for distributing usb hub functions across a network
KR20110046534A (ko) Usb 디바이스를 원격 컴퓨터에 접속하기 위한 방법 및 장치
US9009378B2 (en) Method and apparatus for enhancing universal serial bus applications
KR100579203B1 (ko) 능률화된 ata 장치 초기화 방법 및 장치
CN112380152A (zh) 一种NVMe-oF异构存储访问控制器及访问方法
WO2001031459A9 (en) Wireless universal serial bus system
KR100757223B1 (ko) 버스 브리지
JP4987376B2 (ja) リンクブリッジ
KR100757224B1 (ko) 컴퓨터 도킹 시스템 및 방법
KR20050057635A (ko) Dma를 지원하는지를 나타내는 정보를 전송하는 수단을구비하는 디바이스
JP2011018358A (ja) リンクブリッジ
JP2006323869A (ja) 結合システムおよび方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060519

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20080626

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090825

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091215

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100113

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees