説明

バス接続システム

【課題】ハードウェア・ドングルの形をとるバス・ステーションが、適切なソフトウェアを実行するUSBデバイスと連携して動作する。
【解決手段】バス・ステーションが、バス・ステーションの第1のバス通信ポートにバス・ホストが接続されていると判定した場合、バス・ステーションは、前記バス・ホストとバス・ステーションの第2のバス通信ポートに接続されたバス・デバイスの間で従来のバス通信を可能にするトランシーバとして動作する。バス・ステーションが、バス・ステーションの第1のバス通信ポートに適切なソフトウェアを実行するバス・デバイスが接続されていると判定した場合、バス・ステーションは、第1のバス通信ポートに接続された前記バス・デバイスと第2のバス通信ポートに接続されたバス・デバイスの間でバス通信を可能にする代替ホストとして動作する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、バス接続システムに関し、詳細には、電子機器がバス通信システム内でホストとして動作できるように、バス通信システムにおいて電子機器と共に使用することができるデバイスに関する。
【背景技術】
【0002】
ユニバーサル・シリアル・バス(USB)通信システムが、広く普及している。
【0003】
USBシステムにおいては、パーソナル・コンピュータ、スキャナ、モバイル電話、プリンタなど、数多くの電子機器を相互接続することができる。どのようなシステムにおいても、必ず1つの電子機器が、その他のすべての機器、すなわちUSBデバイスとの接続を制御するUSBホストに指定される。一般にパーソナル・コンピュータは、USBホストとして動作するのに必要なハードウェアとソフトウェアを備えているが、その他の機器は通常、必要なハードウェアとソフトウェアを備えていないため、USBデバイスとしてしか動作することができない。
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかし、大掛かりな変更を必要とせずに、機器がUSBホストとして動作できれば有益であろう状況が存在する。
【課題を解決するための手段】
【0005】
本発明の一態様によれば、好ましくはハードウェア・ドングルの形をとるバス・ステーションが提供され、バス・ステーションは、バス通信デバイスのバス通信ポートに接続されて、バス・ホストとして動作することができる。本発明の好ましい実施形態においては、バス・ステーションはUSBシステム内で動作するが、本発明はその他のバス通信システムにも適用することができる。
【0006】
より具体的には、本発明の一態様は、バス・ステーションを提供し、このバス・ステーションは、バス・ステーションの第1のバス通信ポートにバス・ホストが接続されていると判断した場合、前記バス・ホストとバス・ステーションの第2のバス通信ポートに接続されたバス・デバイスとの間で従来のバス通信を可能にするトランシーバとして動作し、バス・ステーションの第1のバス通信ポートに適切なソフトウェアを実行中のバス・デバイスが接続されていると判断した場合、第1のバス通信ポートに接続された前記バス・デバイスと第2のバス通信ポートに接続されたバス・デバイスとの間でバス通信を可能にする代替ホストとして動作する。
【発明を実施するための最良の形態】
【0007】
図1は、本発明によるバス通信システムの概略ブロック図である。
【0008】
システム2は、USBポート6を有する第1のUSBデバイス4と、第2のUSBデバイス8と、ドングル10とを備える。
【0009】
図1に示す実施形態においては、第1のUSBデバイス4は、携帯情報端末(PDA)であるが、本発明が、移動通信デバイス、デジタル・カメラ、または電子手帳など、どのようなUSBデバイスにも適用可能なことを理解されたい。
【0010】
第2のUSBデバイス8は、プリンタ、マウス、ハード・ディスク、またはモデムをはじめとする、どのようなUSBデバイスでもよい。
【0011】
ドングル10は、第1のホスト・ポートH1と第2のホスト・ポートH2を備えた組み込みUSBホスト/デバイス・コントローラ12と、低消費電力マイクロ・コントローラ・ユニット(MCU)14とを備える。
【0012】
ドングル10の第1のホスト・ポートH1は、図1に示すように、PDA4のUSBポート6に接続することができる。ドングル10の第1のホスト・ポートH1が、PDA4のUSBポート6に接続される場合、PDAは事実上、USBホストとして動作することができ、ドングル10の第2のホスト・ポートH2は事実上、PDA4のホスト・ポートとして機能する。したがって、PDA4は、USBバス15によってドングル10の第2のホスト・ポートH2に接続された任意のUSBデバイスとの通信を制御することができる。
【0013】
図1においては、第1のホスト・ポートH1および第2のホスト・ポートH2は、同じUSBホスト/デバイス・コントローラ12に接続されているが、MCU14は、2つの独立したUSBホスト/デバイス・コントローラを介して、すなわち、PDA専用に通信する第1のコントローラ、および1つまたは複数の接続USBデバイス8専用に通信する第2のコントローラを介して、第1のホスト・ポートH1および第2のホスト・ポートH2と通信することもできることに留意されたい。
【0014】
ドングル10と接続されたとき、PDA4がUSBホストとして動作できるためには、PDA4はドライバ更新を必要とする。
【0015】
ドライバ更新は、使用中の特定のUSBデバイスに特化されており、PDA4の既存のUSBデバイス・ハードウェアの上で動作する仮想ハードウェア・アブストラクション・レイヤ(仮想HAL)ソフトウェア・ドライバの組み込みを行う。
【0016】
図2は、図1のシステム内のハードウェアおよびソフトウェアを示したブロック図である。
【0017】
従来のように、USBデバイス4は、オペレーティング・システム18と、ホスト・スタック20と、デバイス・スタック/デバイス・ハードウェア22とを有する。USBホストとして動作できるように、PDA4はまた、仮想HALドライバ・ソフトウェア16も実行する。USBデバイス4が仮想HALドライバ・ソフトウェア16を実行しているとき、本明細書では、USBデバイスのことをホストオンデバイス(HostOnDevice)と呼ぶことがある。
【0018】
ドングル10は、ホスト・ハードウェア12(すなわち、USBホスト・コントローラ)と、MCU14と、ソフトホスト(SoftHost)ファームウェア24とを含む。
【0019】
以下でより詳しく説明するソフトホスト・プロトコル・レイヤは、ドングル・コネクタ28を介したデバイス4とドングル10の間の通信を制御する。
【0020】
図3は、MCU14の制御下にある、ドングル10の動作を示したフローチャートである。図3のステップ32において、電源が投入されると、ステップ34において、MCUは、第1のホスト・ポートに対する接続の有無を判定するため、第1のホスト・ポートH1をポーリングする。何も接続されていない場合、プロセスはステップ36で終了する。
【0021】
何かが接続されている場合、ステップ38において、MCUは、第1のホスト・ポートH1に接続されているのがUSBホストであるかどうかを判定する。第1のホスト・ポートH1に接続されているのがUSBホストである場合、プロセスはステップ40に進み、ステップ40において、ドングル10は、USBトランシーバとして動作する。すなわち、ドングルは、接続USBホストが、第2のホスト・ポートH2に接続された任意のUSBデバイス(複数のデバイス)との通信を従来通り制御できるように、第1のホスト・ポートH1と第2のホスト・ポートH2の間で通信データを直接受け渡しする。
【0022】
ステップ38において、MCUが、第1のホスト・ポートH1に接続されているのはUSBホストではなく、USBデバイスであると判定した場合、プロセスはステップ41に進み、ステップ41において、MCUは、第2のホスト・ポートH2にUSBホストが接続されているかどうかを判定する。USBホストが接続されている場合、ステップ42において、USBホスト/デバイス・コントローラ12内のUSBデバイス・コアは、第1のホスト・ポートH1に接続されたUSBデバイスと第2のホスト・ポートH2に接続されたUSBホストの間で従来通りのUSB通信が可能になるように動作する。
【0023】
第2のホスト・ポートH2に接続されているのもUSBデバイスである場合、ステップ43において、MCU14は、第1のホスト・ポートH1に接続されたUSBデバイスを列挙して、それが仮想HALを実行中のUSBデバイスであるかどうかをチェックする。ステップ43において、MCUが、接続デバイス4は仮想HALを実行中ではないと判定した場合、ステップ44において、MCUは、デバイス4を使用不可にし、例えば、接続デバイス4が仮想HALをサポートしていないことを通知するLEDを点滅させるなどする。
【0024】
ステップ42において、MCUが、接続デバイス4は仮想HALを実行中である(すなわち、接続デバイスは仮想HALドライバ16を有する)と判定した場合、ステップ46において、MCU14は、ドングル10が(デバイス4と共に)代替USBホストとして動作可能な動作モードに入る。以下でより詳しく説明するこのモードにおいて、ドングル10は、第2のホスト・ポートH2に接続された任意のUSBデバイス(複数のデバイス)との通信を制御することができる。
【0025】
パーソナル・コンピュータがUSBホストになる従来のシステムにおいては、ホスト・スタックは、ホストHAL(HostHAL)を介して下位のUSBハードウェアにアクセスする。同様に、従来のPDA USBデバイスにおいては、デバイス・スタックは、デバイスHAL(Device HAL)を介して下位のUSBハードウェアにアクセスする。
【0026】
しかし、本発明によれば、ソフトホスト・システムにおいては、ホスト・スタック(またはホスト・ステーション・ドライバ・ソフトウェア)20が、ホスト・ハードウェア12をアクセスする必要がある場合、ホスト・スタックは、アクセス動作詳細を仮想HALドライバ16に伝える。仮想HALドライバ16は、そのアクセス動作詳細を所定のソフトホスト・プロトコルでラップする。ソフトホスト・プロトコル・パケットは、ソフトホスト・ドングル10が、未処理ソフトホスト・プロトコル・パケットの有無を調べるため、USBデバイス・ハードウェアをポーリングしたときに、既存のUSBデバイス・ハードウェア22を介して送出される。
【0027】
したがって、仮想HALドライバ16は、ホスト・ステーション・ドライバ・ソフトウェアに対して、ホスト・コントローラの存在をエミュレートする。すなわち、ホスト・スタック20の観点からは、仮想HALドライバ16との通信は、従来のシステムにおけるホストHALとの通信と異なるところがない。ホスト・スタック20は、仮想HALドライバ16を介して、実際のホスト・ハードウェアを見ることになる。
【0028】
反対に、仮想HALドライバ16は、デバイス・コントローラ(またはデバイス・スタック)22に対して、デバイス・コントローラの存在をエミュレートする。したがって、仮想HALドライバ16は、ホスト・ステーション・ドライバ・ソフトウェア20とデバイス・コントローラの間で通信を変換する。
【0029】
ソフトホスト・プロトコルは、以下のアクセス機能を提供する。
−ドングルのホスト・ハードウェア12内のレジスタを読み取る。
−ドングルのホスト・ハードウェア12内のレジスタに書き込む。
−ドングルのホスト・ハードウェア12内のバッファ・メモリを読み取る。
−ドングルのホスト・ハードウェア12内のバッファ・メモリに書き込む。
【0030】
システム性能を向上させるため、例えば、レジスタを読み取り、その内容とある値とでAND/OR演算を行い、変更値をレジスタに書き戻す機能のような、より高度な機能を追加することもできる。
【0031】
ソフトホスト・プロトコルは、仮想HAL上で動作するホスト・スタック20が、デバイス・コントローラ・ハードウェアを使用してホスト・コントローラ12のハードウェアをアクセスする方法を定義する。ソフトホスト・プロトコルについては、以下で詳しく説明する。その説明において、ドングル10を指して、「ホストドングル(HostDongle)」という用語が使用され、仮想HAL16上でホスト・スタック20を実行するデバイス4、すなわちUSBデバイス・ハードウェア22を備える組み込みシステムを指して、「ホストオンデバイス」という用語が使用される。
【0032】
ソフトホスト・プロトコルは、ホストドングル10が接続デバイス4を列挙し、接続デバイス4がホストオンデバイスであることを確認した時点である図3の終りにおいて開始する。
【0033】
動作モードにおいて、MCU14は、割り込みパイプを設定し、データの有無を調べるため仮想HALドライバ16をミリ秒間隔でポーリングする。デバイス4とドングル10の間で送信されるデータは、ソフトホスト・プロトコルによって、ソフトホスト・パケットの形で送信される。PDA4上のホスト・スタック20が、仮想HALドライバ16を介してハードウェア・アクセス要求を送信した場合、仮想HALドライバ16は、ドングル10の第1のホスト・ポートH1が割り込みパイプを介して仮想HALドライバをポーリングしたとき、その要求をソフトホストパケット(SoftHostPacket)として送信する。
【0034】
MCU14は、このソフトホスト・パケットを組み込みUSBホスト・コントローラ12のバッファ・メモリから取り出し、ハードウェア・アクセスをしかるべく実行する。何らかの返送データが存在する場合(読み取り動作)、MCU14は、対応するデータをホスト1を介して送出する。
【0035】
トラフィック
ホストドングル10とホストオンデバイス4とは、専用の双方向バルク・パイプを使用して通信する。4つのタイプのペイロードが存在する。
HRU (ホストドングル要求ユニット)
ホストドングル10によって送信
8バイト・ペイロードのバルク・パケット
ホストオンデバイス4をポーリングするために使用
割り込み情報(HRU_IRQ)を含む場合あり
ホストドングル10はHRU送信後、必ず64バイトのバルク・インを送信
ホストオンデバイス4はこのバルク・インを介してNOBまたはCRPで応答
NOB (未処理作業なし)
ホストオンデバイス4によって送信
8バイト・ペイロードのバルク・パケット
未処理トランザクションがない場合に送信
CRP (共通要求パケット)
ホストオンデバイス4によって送信
16〜64バイトのバルク・パケット
先の受信CPRコマンドの結果、および最適データ・セットを含む
APR (要求に従う)
ホストドングル10によって送信
16〜64バイトのバルク・パケット
【0036】
フロー
すべてのUSBシステムと同様に、転送はホストによるアクションで開始する。ソフトホスト・プロトコルの場合、ソフトホスト・ドングル10が常にホストとなる。すべてのソフトホスト転送サイクルは、上で定義したように、HRUで開始する。現在の転送サイクルは、ソフトホスト・ドングル10が次の転送サイクルを開始する前に完了しなければならない。
【0037】
ポーリング−未処理なしサイクル:HRU−NOB
ホストドングル10は、未処理コマンド・セットの有無を調べるため、ホストオンデバイス4をポーリングする。未処理コマンド・セットがない場合、ホストオンデバイス4は、NOBで応答する。
【0038】
トランザクション:
ホストドングル10がBULK−OUTを送信
ホストドングル10がDATA(HRU)を送信
ホストオンデバイス4がACKを送信
ホストドングル10がBULK−INを送信
ホストオンデバイス4がDATA(NOB)を送信
ホストドングル10がACKを送信
【0039】
ポーリング−未処理ありサイクル:HRU−CRP−APR
ホストドングル10は、未処理コマンド・セットの有無を調べるため、ホストオンデバイス4をポーリングする。ホストオンデバイス4は、CRPによって未処理コマンド・セットを送信する。ホストドングル10は、コマンドを実行し、APRによって結果を返送する。
【0040】
トランザクション:
ホストドングル10がBULK−OUTを送信
ホストドングル10がDATA(HRU)を送信
ホストオンデバイス4がACKを送信
ホストドングル10がBULK−INを送信
ホストオンデバイス4がDATA(CRP)を送信
ホストドングル10がACKを送信
ホストドングル10がBULK−OUTを送信
ホストドングル10がDATA(APR)を送信
ホストオンデバイス4がACKを送信
【0041】
割り込みサイクル:HRU_IRQ−CRP−APR
ホストドングル10は、未処理ハードウェア割り込みをかけてホストオンデバイス4に送信を促す。ホストオンデバイス4は、適切なコマンド・セットを決定し、CRPによってそれを送信する。ホストドングル10は、コマンドを実行し、APRによって結果を返送する。ホストオンデバイス4は、未処理割り込みをクリアするか、またはHRU_IRQの発生を無効化しなければならず、さもないと、ホストドングル10は、HRU_IRQを継続して送信することになる。
【0042】
トランザクション:
ホストドングル10がBULK−OUTを送信
ホストドングル10がDATA(HRU_IRQ)を送信
ホストオンデバイス4がACKを送信
ホストドングル10がBULK−INを送信
ホストオンデバイス4がDATA(CRP)を送信
ホストドングル10がACKを送信
ホストドングル10がBULK−OUTを送信
ホストドングル10がDATA(APR)を送信
ホストオンデバイス4がACKを送信
【0043】
パケット・フォーマット
HRUフォーマット
HRUは以下の情報を含む。
現在のフレーム番号
ホストドングル10内のホスト・コントローラ12のHcInterruptStatus
デバイス・コントローラ22の割り込みステータス
【0044】
NOBフォーマット
特別な情報は必要としない。
【0045】
CRPフォーマット、APRフォーマット
ヘッダ内のアクティブ・ビットは、CRPの場合は1であり、APRの場合は0である。
【0046】
CRPのサイズは、16〜64バイトとすることができる。全体のサイズは、
(各々8バイトの)コマンド・セットの数と、
最適データ・セットから決まる。
【0047】
CRP内のコマンド・セットの最大数は、8である。
【0048】
データ・セットの最大サイズは、64−(8×コマンド・セット数)である。
【0049】
単一のコマンド要求パケット内に複数のコマンド・セットを収めることによって、一連のハードウェア・アクセスを単一のパケットで伝えることができるので、転送待ち時間が短縮される。
【0050】
コマンド・セット・フォーマット
コマンド・セットは、8バイトのデータ構造である。コマンド・セットは、以下の情報を含む。
コマンド・セット・Header(1バイト)
コマンド・セット・Index(2バイト)
コマンド・セット・Data(4バイト)
コマンド・セット・Aux(1バイト)
【表1】

【表2】

【0051】
仮想HALの使用は、ハードウェア・ドングルがUSBソフトウェアを処理する必要がないので、ドングルを低コストとすることができ、ホスト・ソフトウェアはUSBデバイス上の組み込みシステムによって処理できるという利点を提供する。
【0052】
したがって、本発明の好ましい実施形態においては、既存のハードウェアに変更を加えることなく、USBデバイスにUSBホスト機能をもたせることができるハードウェア・ドングルを提供する。これを達成するため、USBデバイスは、USBデバイス上の組み込みシステムによって処理できるエミュレーション・ソフトウェアを実行する。これによって、ハードウェア・ドングルはUSBソフトウェアを処理する必要がなく、ドングルを低コストとすることができるという利点が提供される。
【0053】
今までの説明では、仮想HALドライバ・ソフトウェアによって、USBデバイスが、ドングル10と連携してUSBホストとして機能できるようになるシステムに関連させて、本発明を説明してきた。しかし、類似の構造をもつ仮想HALドライバ・ソフトウェアを使用して、USBデバイス機能をもつシステムに、複数のインタフェース/機能を組み込むことができる。例えば、ドライバ・ソフトウェアによって、USBデバイスが、Bluetooth、IrDA、USB−OTG、またはその他の通信プロトコルを介して通信できるようにすることができる。
【図面の簡単な説明】
【0054】
【図1】バス通信システムの概略ブロック図である。
【図2】図1のシステム内のハードウェアおよびソフトウェアを示したブロック図である。
【図3】本発明の一態様による方法を示したフローチャートである。

【特許請求の範囲】
【請求項1】
バス通信システムで使用されるバス・ステーションであって、
第1の通信ポートと第2の通信ポートを備え、
当該バス・ステーションは、前記第2の通信ポートに結合されたホスト・ステーションの存在を検出したときは第1の動作モードで動作し、前記第2の通信ポートに結合されたホスト・ステーションの非存在を検出したときは第2の動作モードで動作するように構成され、
当該バス・ステーションは、前記第1の動作モードにおいて、前記第2の通信ポートに結合された前記ホスト・ステーションと前記第1の通信ポートに結合されたデバイス・ステーションの間の通信の受け渡しを行うように構成され、
当該バス・ステーションはさらに、前記第2の動作モードにおいて、通信プロトコルに従って、前記第1の通信ポートに結合された前記デバイス・ステーションと通信することによって、代替ホストとして動作することにより、当該バス・ステーションが通信を開始するように構成される、
ことを特徴とするバス・ステーション。
【請求項2】
前記バス・ステーションが、前記第1の動作モードにおいて、USBトランシーバとして動作し、前記第2の動作モードにおいて、USBホストとして動作するように構成される、請求項1に記載のバス・ステーション。
【請求項3】
前記第1の動作モードにおいて、前記第2の通信ポートに結合された前記ホスト・ステーションと前記デバイス・ステーションの間で通信を行うための前記第1および第2の通信ポートに結合されたトランシーバ回路をさらに備える、請求項1に記載のバス・ステーション。
【請求項4】
バス・システムで使用されるバス・ステーションであって、
通信ポートに結合されたデバイス・コントローラを備え、
前記通信ポートは、デバイス・ステーションとして動作するように構成され、
前記バス・ステーションはさらに、オペレーティング・システムとホスト・ステーション・ドライバ・ソフトウェアとを備えるシステム・ソフトウェアの制御下で、動作するように構成され、前記ホスト・ステーション・ドライバ・ソフトウェアは、ホスト・コントローラと通信し、前記オペレーティング・システムとの間で情報の受け渡しを行うように構成されており、
前記システム・ソフトウェアはさらに、前記ホスト・ステーション・ドライバ・ソフトウェアに対してホスト・コントローラの存在を、また前記デバイス・コントローラに対してデバイス・ステーション・ドライバ・ソフトウェアの存在をエミュレートするように構成され、さらに前記ホスト・ステーション・ドライバ・ソフトウェアから前記デバイス・コントローラへの通信およびその反対方向の通信を変換するように構成される、ホスト・エミュレーション・ソフトウェアを備える、バス・ステーション。
【請求項5】
第1のバス通信ポートを備える第1のバス・ステーションと、第2のバス・ステーションとを、備えるバス通信システムであって、
前記第2のバス・ステーションはさらに、第2のバス通信ポートを備え、
前記第2のバス・ステーションは、前記第2のバス通信ポートに結合されたホスト・ステーションの存在を検出したときは第1のモードで動作し、前記第2のバス通信ポートに結合されたホスト・ステーションの非存在を検出したときは第2のモードで動作するように構成される、
前記第1のバス・ステーションが、前記第2のバス通信ポートに結合されたデバイス・コントローラを備え、前記デバイス・コントローラは、オペレーティング・システムとホスト・ステーション・ドライバ・ソフトウェアとを含むシステム・ソフトウェアの制御下で、動作するように構成され、前記ホスト・ステーション・ドライバ・ソフトウェアは、ホスト・コントローラと通信し、前記オペレーティング・システムとの間で情報の受け渡しを行うように構成されており、
前記システム・ソフトウェアはさらに、前記ホスト・ステーション・ドライバ・ソフトウェアに対してホスト・コントローラの存在を、また前記デバイス・コントローラに対してデバイス・ステーション・ドライバ・ソフトウェアの存在をエミュレートするように構成され、さらに前記ホスト・ステーション・ドライバ・ソフトウェアから前記デバイス・コントローラへの通信およびその反対方向の通信を変換するように構成される、ホスト・エミュレーション・ソフトウェアを備える、
ことを特徴とするバス通信システム。
【請求項6】
第1の通信ポートと第2の通信ポートとを備える、USBドングルであって、
当該USBドングルは、前記第1の通信ポートと前記第2の通信ポートのうちの一方に結合されたホスト・ステーションの存在を検出したとき、及び、前記第1の通信ポートと前記第2の通信ポートのうちの他方に結合されたデバイス・ステーションの存在を検出したときは、第1の動作モードで動作するように構成されており、
当該USBドングルはさらに、前記第1の動作モードにおいて、前記ホスト・ステーションと前記デバイス・ステーションとの間の通信の受け渡しを行うように構成され、
当該USBドングルは、前記第1の通信ポートに結合された第1のデバイス・ステーションと前記第2の通信ポートに結合された第2のデバイス・ステーションを検出したときは、第2の動作モードで動作するように構成され、
当該USBドングルはさらに、前記第2の動作モードにおいて、前記第1のデバイス・ステーションと前記第2のデバイス・ステーションとの間の通信の受け渡しを行うように構成され、
当該USBドングルはさらに、前記第2の動作モードにおいて、通信プロトコルに従って、前記第1のデバイス・ステーションと通信することにより、代替ホストとして動作し、当該USBドングルが通信を開始するように構成される、
ことを特徴とするUSBドングル。
【請求項7】
当該USBドングルが、前記第1の動作モードにおいて、USBトランシーバとして動作し、前記第2の動作モードにおいて、USBホストとして動作するように構成される、ことを特徴とする請求項6に記載のUSBドングル。
【請求項8】
前記第1の動作モードにおいて、前記ホスト・ステーションと前記デバイス・ステーションの間で通信を行うための前記第1および第2の通信ポートに結合されたトランシーバ回路をさらに備える、ことを特徴とする請求項6に記載のUSBドングル。
【請求項9】
バス・システムで使用されるUSBドングルであって、
通信ポートに結合されたデバイス・コントローラを備え、
前記通信ポートは、デバイス・ステーションとして動作するように構成され、
前記USBドングルはさらに、オペレーティング・システムとホスト・ステーション・ドライバ・ソフトウェアとを備えるシステム・ソフトウェアの制御下で、動作するように構成され、前記ホスト・ステーション・ドライバ・ソフトウェアは、ホスト・コントローラと通信し、前記オペレーティング・システムとの間で情報の受け渡しを行うように構成されており、
前記システム・ソフトウェアはさらに、前記ホスト・ステーション・ドライバ・ソフトウェアに対してホスト・コントローラの存在を、また前記デバイス・コントローラに対してデバイス・ステーション・ドライバ・ソフトウェアの存在をエミュレートするように構成され、さらに前記ホスト・ステーション・ドライバ・ソフトウェアから前記デバイス・コントローラへの通信およびその反対方向の通信を変換するように構成される、ホスト・エミュレーション・ソフトウェアを備える、ことを特徴とするUSBドングル。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公開番号】特開2010−61670(P2010−61670A)
【公開日】平成22年3月18日(2010.3.18)
【国際特許分類】
【出願番号】特願2009−231540(P2009−231540)
【出願日】平成21年10月5日(2009.10.5)
【分割の表示】特願2004−539268(P2004−539268)の分割
【原出願日】平成15年5月22日(2003.5.22)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(306043703)エヌエックスピー ビー ヴィ (125)
【氏名又は名称原語表記】NXP B.V.
【Fターム(参考)】