(57)【要約】単一のＵＳＢ−ＩＤＥアダプタ(204)が２つ以上のＩＤＥ装置(208, 210, 212)をＵＳＢ装置(202)に接続する。ＵＳＢ装置(202)は、ＵＳＢ接続(206)に関連付けられた接続識別子、及び各ＩＤＥ接続(214, 216, 218)に関連付けられた一意的な識別子を用いて各ＩＤＥ装置と通信する。ＵＳＢ−ＩＤＥアダプタ(204)はＵＳＢ装置(202)内に統合するか、あるいはＵＳＢ装置(202)に接続された分離した構成要素とすることができる。
2008517369.tif 000002
【特許請求の範囲】
【請求項１】
２つ以上のＩＤＥ装置(208, 210, 212)をＵＳＢ装置(202)に接続するアダプタ(204)において：
単一のＵＳＢコネクタ(302)と；
２つ以上のＩＤＥコネクタ(322, 324, 326)と；
前記ＵＳＢコネクタ(302)及び前記２つ以上のＩＤＥコネクタ(322, 324, 326)の各々に接続され、前記２つ以上のＩＤＥコネクタ(322, 324, 326)の各々及び前記ＵＳＢコネクタ(302)からデータを受信すべく動作するコントローラ(300)と
を具えていることを特徴とするアダプタ(204)。
【請求項２】
前記コントローラ(300)がマイクロコントローラ(304)を具えていることを特徴とする請求項１に記載のアダプタ(204)。
【請求項３】
さらに、前記ＩＤＥコネクタ(322, 324, 326)の各々に接続されたＩＤＥバッファ(312, 314, 316)を具えていることを特徴とする請求項２に記載のアダプタ(204)。
【請求項４】
前記ＩＤＥバッファ(312, 314, 316)の各々が、１つ以上の入力バッファ(318)及び１つ以上の出力バッファ(320)を具えていることを特徴とする請求項３に記載のアダプタ(204)。
【請求項５】
前記コントローラがさらに、前記マイクロコントローラ(304)及び前記ＩＤＥバッファ(312, 314, 316)の各々に接続された装置コントローラ(306)を具えていることを特徴とする請求項３に記載のアダプタ(204)。
【請求項６】
前記コントローラ(300)がさらに、前記マイクロコントローラ(304)及び前記ＵＳＢコントローラ(302)に接続されたＵＳＢ機能コントローラ(308)を具えていることを特徴とする請求項２に記載のアダプタ(204)。
【請求項７】
前記コントローラ(300)がさらに、前記ＩＤＥコネクタ(322, 324, 326)の各々及び前記マイクロコントローラ(304)に接続されたＩＤＥ機能コントローラ(310)を具えていることを特徴とする請求項２に記載のアダプタ(204)。
【請求項８】
前記アダプタ(204)が前記ＵＳＢ装置(202)内に統合されていることを特徴とする請求項１に記載のアダプタ(204)。
【請求項９】
前記アダプタ(204)が前記ＵＳＢ装置(202)から分離して実現されていることを特徴とする請求項１に記載のアダプタ(204)。
【請求項１０】
ＵＳＢ装置(202)と；
２つ以上のＩＤＥ装置(208, 210, 212)と；
前記ＵＳＢ装置(202)及び前記２つ以上のＩＤＥ装置(208, 210, 212)に接続すべく動作するＵＳＢ−ＩＤＥアダプタ(204)とを具えたシステムにおいて、
前記ＵＳＢ装置(202)と前記ＵＳＢ−ＩＤＥアダプタ(204)との間の単一のＵＳＢ接続(206)に接続識別子が関連付けられ、前記２つ以上のＩＤＥ装置(208, 210, 212)の各々と前記ＵＳＢ−ＩＤＥアダプタ(204)との間の各ＩＤＥ接続(214, 216, 218)に一意的な装置識別子が関連付けられていることを特徴とするシステム。
【請求項１１】
前記ＵＳＢ−ＩＤＥアダプタ(204)が：
ＵＳＢコネクタ(302)と；
前記ＵＳＢコネクタ(302)に接続されたＵＳＢ機能コントローラ(308)と；
２つ以上のＩＤＥコネクタ(322, 324, 326)と；
前記ＩＤＥコネクタ(322, 324, 326)の各々に接続されたＩＤＥ機能コントローラ(310)と；
前記ＩＤＥコネクタ(322, 324, 326)の各々に接続されたＩＤＥバッファ(312, 314, 316)と；
前記ＩＤＥバッファ(312, 314, 316)の各々に接続された装置コントローラ(306)と；
前記装置コントローラ(306)、前記ＵＳＢ機能コントローラ(308)、及び前記ＩＤＥ機能コントローラ(310)に接続されたマイクロコントローラ(304)と；
を具えていることを特徴とする請求項１０に記載のシステム。
【請求項１２】
前記ＩＤＥバッファ(312, 314, 316)の各々が、１つ以上の入力バッファ(318)及び１つ以上の出力バッファ(320)で構成されることを特徴とする請求項１１に記載のシステム。
【請求項１３】
前記ＵＳＢ−ＩＤＥアダプタ(204)が前記ＵＳＢ装置(202)内に統合されていることを特徴とする請求項１０に記載のシステム。
【請求項１４】
前記ＵＳＢ−ＩＤＥアダプタ(204)が前記ＵＳＢ装置(202)から分離して実現されていることを特徴とする請求項１０に記載のシステム。
【請求項１５】
前記接続識別子が論理機能番号を具え、前記一意的な装置識別子の各々が一意的な論理ユニット番号を具えていることを特徴とする請求項１０に記載のシステム。
【請求項１６】
複数のＩＤＥ装置(208, 210, 212)をＵＳＢ装置(202)に接続する方法において：
接続識別子を単一のＵＳＢ接続(206)に関連付けるステップと；
一意的な装置識別子を、前記単一のＵＳＢ接続(206)及びそれぞれのＩＤＥ接続(214, 216, 218)を通して前記ＵＳＢ装置(202)と通信する前記ＩＤＥ装置(208, 210, 212)の各々に関連付けるステップと；
前記接続識別子を前記一意的な装置識別子の各々に関連付けるステップと
を具えていることを特徴とする方法。
【請求項１７】
さらに、前記複数のＩＤＥ装置(208, 210, 212)をポーリングするステップを具えていることを特徴とする請求項１６に記載の方法。
【請求項１８】
前記接続識別子が論理機能番号を具え、前記一意的な装置識別子の各々が一意的な論理ユニット番号を具えていることを特徴とする請求項１６に記載の方法。
【請求項１９】
前記接続識別子を前記一意的な装置識別子の各々に関連付けるステップが、前記接続識別子及び前記一意的な装置識別子の各々をマッピングテーブル中に記憶することを含むことを特徴とする請求項１６に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
多くの電子装置は一般に、１つ以上のＵＳＢ（Universal Serial Bus：ユニバーサル・シリアルバス）コネクタまたはポートを含む。ＵＳＢコネクタは、電子装置を種々のＵＳＢ装置、例えばプリンタ、スキャナ、及びマスストレージ（大容量記憶）装置に接続することを可能にする。電子装置とＵＳＢマスストレージ装置との間の通信は、ＵＳＢ規格用のＵＳＢマスストレージ装置クラス仕様に含まれるトランスポート（搬送）プロトコルを含む種々のプロトコルによって統御することができる。
【背景技術】
【０００２】
一部のマスストレージ装置、例えばＩＤＥ（Integrated Drive Electronics：インテグレーティッド・ドライブ・エレクトロニクス）インタフェースを使用する装置は、ＵＳＢ規格より前にさかのぼる。従ってＩＤＥ記憶装置は直接、ＵＳＢコネクタを通して電子装置に接続することはできない。ＩＤＥ装置をＵＳＢコネクタに接続するためには、ＵＳＢ−ＩＤＥアダプタが一般に使用される。
【０００３】
図１は従来技術によるシステムのブロック図である。システム１００は、ケーブル１０６を介してＵＳＢハブ１０４に接続されたＵＳＢ装置１０２を含む。ＵＳＢハブ１０４は、ＵＳＢ−ＩＤＥアダプタ１０８、１１０をそれぞれケーブル１１２、１１４を介して接続する。ＩＤＥ装置１１６はケーブル１１８を介してＵＳＢ−ＩＤＥアダプタ１０８に接続され、ＩＤＥ装置１２０はケーブル１２２を介してＵＳＢ−ＩＤＥアダプタ１１０に接続されている。ＵＳＢ装置１０２とＩＤＥ装置１１６、１２０との間の通信は、ＵＳＢ接続１１２、１１４、及び各ＩＤＥ装置１１６、１２０に一意的なアドレスまたは識別子を割り当てることによって促進される。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ＵＳＢ装置１０２を複数のＩＤＥ装置に接続するためには、複数のＵＳＢコネクタを持つか、あるいはＵＳＢハブ（例えばハブ１０４）を用いなければならない。さらに、各ＩＤＥ装置は、ＵＳＢ装置１０２と通信するために個別のＵＳＢ−ＩＤＥアダプタを必要とする。追加的なＵＳＢコネクタ及び個別のＵＳＢ−ＩＤＥアダプタはシステム１００のコスト及び複雑性を増加させる。
【課題を解決するための手段】
【０００５】
本発明によれば、複数のＩＤＥ装置を単一のＵＳＢ−ＩＤＥアダプタを用いてＵＳＢ装置に接続する方法及びシステムが提供される。このＵＳＢ−ＩＤＥアダプタはＵＳＢ装置内に統合することができ、あるいはＵＳＢ装置に接続される分離した構成要素とすることができる。
【０００６】
本発明は、以下の本発明による実施例の詳細な説明を図面と共に参照すれば最も良く理解することができる。
【発明を実施するための最良の形態】
【０００７】
以下の説明は、当業者が本発明の実施例を作製及び使用することを可能にすべく提供する。開示された実施例に対する種々の変形は当業者にとって明らかであり、ここで説明する一般原理は他の実施例に適用することができる。従って、本発明は開示する実施例に限定されるものではなく、請求項の記載及び本明細書に記載する原理及び特徴と一貫性のある最も広い範囲に一致するものである。
【０００８】
図面、特に図２に、本発明による実施例におけるシステムのブロック図を示す。システム２００は、ＵＳＢ接続２０６を介してＵＳＢ−ＩＤＥアダプタ２０４に接続されたＵＳＢ装置２０２を含む。本発明による一実施例では、ＵＳＢ接続２０６は有線ＵＳＢ接続である。本発明による他の実施例では、ＵＳＢ接続２０６は無線ＵＳＢ接続である。これに加えて、本発明による一実施例では、ＵＳＢ装置２０２をＵＳＢホストとして実現する。本発明による他の実施例では、ＵＳＢ装置２０２をＵＳＢデバイスとして実現する。
【０００９】
ＩＤＥ装置２０８、２１０、２１２はそれぞれＩＤＥ接続２１４、２１６、２１８を介してアダプタ２０４に接続されている。ＩＤＥ装置２０８、２１０、２１２は、ＡＴＡ装置、ＡＴＡＰＩ装置、あるいはＡＴＡ及びＡＴＡＰＩ装置の両者の組合せとして実現することができる。ＡＴＡ装置は、ディスクドライブ（駆動装置）またはハードディスクドライブのような記憶装置とのアドバンスト・テクノロジー・アタッチメント（Advanced Technology Attachment）インタフェースを使用する。ＡＴＡＰＩ装置は、ＣＤ−ＲＯＭドライブ、ＤＶＤドライブ、テープドライブ、及びリムーバブル（着脱可能）ストレージディスクのような記憶装置とのアドバンスト・テクノロジー・アタッチメント・パケット（Advanced Technology Attachment Packet）インタフェースを使用する。ＡＴＡ及びＡＴＡＰＩインタフェースは、ストレージドライブ（記憶駆動装置）用の物理的、トランスポート（搬送）、及びコマンド・プロトコルを規定する。
【００１０】
ＵＳＢ−ＩＤＥアダプタ２０４は、複数のＩＤＥ装置をＵＳＢ装置２０２に接続して通信することを可能にすべく構成されている。本発明による実施例では、アダプタ２０４は、ＵＳＢ装置２０２及びＩＤＥ装置２０８、２１０、２１２からのデータを受信し処理する。図３は、図２に示すＵＳＢ−ＩＤＥアダプタ２０４のブロック図である。アダプタ２０４はコントローラ３００及びＵＳＢコネクタ３０２を含む。本発明による実施例では、コントローラ３００は、マイクロコントローラ３０４、装置コントローラ３０６、ＵＳＢ機能コントローラ３０８、及びＩＤＥ機能コントローラ３１０を含む。
【００１１】
本発明による一実施例では、装置コントローラ３０６、ＵＳＢ機能コントローラ３０８、及びＩＤＥ機能コントローラ３１０を単一の集積回路で実現する。本発明による他の実施例では、装置コントローラ３０６、ＵＳＢ機能コントローラ３０８、及びＩＤＥ機能コントローラ３１０を分離した構成要素として実現するか、あるいは所定の構成に組み合わせることができる。さらに、本発明による実施例は、任意数のマイクロコントローラ、装置コントローラ、ＵＳＢ機能コントローラ、及びＩＤＥ機能コントローラを含むことができる。例えば。ＵＳＢ−ＩＤＥアダプタは２つ以上のＩＤＥ機能コントローラを含んで、複数のＩＤＥ装置から受信した信号の並列処理を可能にすることができる。
【００１２】
装置コントローラ３０６はＩＤＥバッファ３１２、３１４、３１６に接続されている。バッファ３１６は、ＩＤＥバッファ３１２、３１４、３１６の１つの実現を例示する。バッファ３１６は入力バッファ３１８及び出力バッファ３２０を含む。本発明による実施例では、入力バッファ３１８及び出力バッファ３２０は、ＩＤＥコネクタ３２６を装置コントローラ３０６から電気的に絶縁するためにディスエーブル（無効に）される。本発明による他の実施例では、バッファ３１２、３１４、３１６は、任意数の入力及び出力機能を含むことができる。さらに、本発明による実施例は任意数のＩＤＥバッファを含むことができる。
【００１３】
各ＩＤＥバッファ３１２、３１４、３１６にはそれぞれＩＤＥコネクタ３２２、３２４、３２６が接続されている。図３の実施例では、装置コントローラ３０６は、信号線３２８を介して個々のＩＤＥバッファ３１２、３１４、３１６を制御（例えばイネーブル及びディスエーブル）するためのグルー・ロジック（仲立ち論理回路）を含む。ＵＳＢコントローラ３０８はＵＳＢ機能コントローラとして実現され、そしてマイクロコントローラ３０４はＵＳＢ装置の計数データ及びブロックデータの転送をサポート（支援）する。
【００１４】
図４に、本発明による実施例におけるＵＳＢ−ＩＤＥアダプタの初期化方法のフローチャートを示す。最初は、ブロック４００に示すように、アダプタはＩＤＥコネクタをポーリング（要求問合せ）する。そしてブロック４０２では、ＩＤＥ装置がＩＤＥコネクタに接続されているか否かについての判定を行う。接続されていなければ、次のＩＤＥコネクタに処理を移してブロック４００に戻る。
【００１５】
ＩＤＥ装置がコネクタに接続されると、上記方法はブロック４０６に進み、ここではＩＤＥ装置がその装置の種類に応じて装置グループにマッピング（対応付け）される。アダプタが装置の種類に対して任意数の装置グループを作成することができる。例えば、本発明による実施例では、アダプタは４つの装置グループを作成する。２つのグループはＡＴＡ装置に関連し、他の２つのグループはＡＴＡＰＩ装置に関連する。
【００１６】
ＵＳＢ−ＩＤＥアダプタは、何らかの所定方法でＩＤＥ装置を装置グループに分配する。例えば、本発明による実施例では、アダプタは装置を各装置グループに均等に（あるいはほぼ均等に）分配してデータ・スループット（処理能力）を改善する。このことは、特定のＩＤＥ装置についてのデータ転送が処理中である際に、アダプタが、他のＩＤＥ装置についてのコマンド転送または状態データ転送を並列処理することを可能にする。
【００１７】
そしてブロック４０８では、すべてのＩＤＥコネクタをポーリングしたか否かについての判定を行う。すべてポーリングしていなければ、処理を次のコネクタに移して（ブロック４０４）、すべてのＩＤＥコネクタをポーリングするまで反復する。
【００１８】
図５は、本発明による実施例における、ＵＳＢ−ＩＤＥアダプタをＵＳＢ装置に接続する方法のフローチャートである。ＩＤＥ−ＵＳＢアダプタを最初にＵＳＢ装置に接続すると、アダプタは自分自身を、Ｎ個の装置グループを有するＵＳＢマスストレージ装置として数え上げる（ブロック５００）。この計数は例えば、ＵＳＢマスストレージ・バルクオンリー（大量のみ）転送記述子で実現することができる。装置グループの数はアプリケーションに依存する。例えば、図４に関連して説明したように、本発明による実施例では、ＡＴＡ装置用の２つの装置グループ、及びＡＴＡＰＩ装置用の２つの装置グループが存在する。
【００１９】
そしてブロック５０２に示すように、アダプタは、各装置グループ内の装置の数をＵＳＢ装置に報告する。ＵＳＢ装置とＵＳＢ−ＩＤＥアダプタとのＵＳＢ接続には接続識別子が割り当てられるか関連し、そしてアダプタに接続された各ＩＤＥ装置には一意的な装置識別子が割り当てられるか関連する（ブロック５０４、５０６）。
【００２０】
本発明による実施例では、接続識別子は論理機能番号として実現され、一意的な装置識別子は論理ユニット番号として実現される。本発明による他の実施例では、接続識別子、装置識別子、あるいは接続及び装置識別子の両方を、他の種類の識別子で実現することができる。
【００２１】
そして、ブロック５０８に示すように、各一意的な装置識別子を接続識別子に関連付ける。本発明による実施例では、マッピングテーブル中の識別子を関連付けることによって、接続識別子と一意的な装置識別子とを互いに関連付ける。接続識別子及び一意的な装置識別子は、ＵＳＢ装置が単一のＵＳＢコネクタ及び単一のＵＳＢ−ＩＤＥアダプタを通して複数のＩＤＥ装置と通信することを可能にする。
【００２２】
図６に、本発明の実施例による、初期化したＵＳＢ−ＩＤＥアダプタを用いて複数のＩＤＥ装置をＵＳＢ装置に接続する方法を示す。ブロック６００では、ＵＳＢ装置はＩＤＥコネクタに対するポーリングを行って、ＩＤＥ装置がＩＤＥコネクタに接続されているか否かを判定する。本発明による実施例では、ＩＤＥ装置がＩＤＥコネクタに接続されていない際に、アダプタ（例えば図３のマイクロコントローラ３０４）は”device not ready（装置が準備未了）”メッセージをＵＳＢ装置に送信する。本発明による実施例では、ＵＳＢ装置は”device not ready”メッセージに応答してＩＤＥコネクタを連続してポーリングする。
【００２３】
そしてブロック６０２では、コネクタとの新たなＩＤＥ接続が確立されたか否かについての判定を行う。新たな接続が確立されれば、ブロック６０４に処理を進め、ここではＩＤＥ装置をそのＩＤＥの種類に基づいて装置グループにマッピングする。そして一意的な装置識別子をＩＤＥ装置に割り当てるか関連付け、この一意的な識別子を接続識別子に割り当てるか関連付ける（ブロック６０６）。そしてブロック６０８では、上記方法はブロック６００に戻って次のＩＤＥコネクタに移る。
【００２４】
ブロック６０２において、新たなＩＤＥ接続が確立されていないことを判定した場合には、ブロック６１０に処理を進め、ここでは既存のＩＤＥ接続が終了しているか否かについての判定を行う。例えば、特定のＩＤＥコネクタに接続されたＩＤＥ装置がアダプタから切り離されていることがあり得る。終了して（即ち、切り離されて）いなければ、上記方法はブロック６００に戻って次のＩＤＥコネクタに進む（ブロック６０８）。
【００２５】
既存のＩＤＥ接続が終了している場合には、ブロック６１２に処理を進め、ここではＩＤＥ装置をこの装置が割り当てられた装置グループから削除する。そしてブロック６１４に示すように、ＩＤＥ装置に割り当てられるか関連付けられた一意的な装置識別子、並びに接続識別子との関連付けも削除する。そして上記方法はブロック６０８において次のＩＤＥコネクタに移り、ブロック６００に戻る。
【００２６】
図６の実施例では、ＩＤＥコネクタを連続的にポーリングしている。本発明による実施例はこの実現に限定されない。ＩＤＥコネクタのポーリングはあらゆる望ましい方法で実現することができる。例えば、ＩＤＥコネクタを規則的な間隔でポーリングするか、あるいは、例えばＩＤＥ装置をＩＤＥコネクタに接続するようなトリガ事象の発生時にポーリングすることができる。
【図面の簡単な説明】
【００２７】
【図１】従来技術によるシステムのブロック図である。
【図２】本発明による実施例におけるシステムのブロック図である。
【図３】図２に示すＵＳＢ−ＩＤＥアダプタ２０４のブロック図である。
【図４】本発明による実施例におけるＵＳＢ−ＩＤＥアダプタの初期化方法のフローチャートである。
【図５】本発明による実施例における、ＵＳＢ−ＩＤＥアダプタをＵＳＢ装置に接続する方法のフローチャートである。
【図６】本発明による実施例における、初期化したＵＳＢ−ＩＤＥアダプタを用いて複数のＩＤＥ装置をＵＳＢ装置に接続する方法のフローチャートである。
【図１】
2008517369.tif 000003
【図２】
2008517369.tif 000004
【図３】
2008517369.tif 000005
【図４】
2008517369.tif 000006
【図５】
2008517369.tif 000007
【図６】
2008517369.tif 000008
【国際調査報告】
2008517369.tif 000009
2008517369.tif 000010