(57)【特許請求の範囲】
【請求項１】
ネットワーク内の複数の拡張ポートマルチプライヤに連結されるように構成されたネットワークホストを備えた装置であって、
前記ネットワークホスト及び前記複数の拡張ポートマルチプライヤの他の拡張ポートマルチプライヤと連結する複数の拡張ポートマルチプライヤのうちの拡張トップ（最上位）ポートマルチプライヤを含み、
拡張ポートマルチプライヤは、前記他の拡張ポートマルチプライヤのそれぞれとの通信を確立及び保持することにより、マルチカスケードレベルで前記ネットワークホスト、他の拡張ポートマルチプライヤ、及び複数のネットワークデバイスとの間の通信を容易にし、
前記他の拡張ポートマルチプライヤは、１以上の拡張ボトムポートマルチプライヤ、及び１以上の拡張中間ポートマルチプライヤを含み、
前記拡張トップポートマルチプライヤは親ノードとして機能し、前記１以上の拡張ボトムポートマルチプライヤの各々は子ノードとして機能し、前記１以上の拡張中間ポートマルチプライヤの各々は親ノード及び子ノードの両方として機能する、
ことを特徴とする装置。
【請求項２】
前記拡張トップポートマルチプライヤは、２つのポートを有するＳｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ（ＳＡＴＡ）ポートマルチプライヤを含む請求項１に記載の装置。
【請求項３】
ＳＡＴＡネットワークホストを含む前記ネットワークホストは、前記２つのポートを有するポートマルチプライヤを、２つより多いポートを有する前記拡張トップポートマルチプライヤと認識する請求項２に記載の装置。
【請求項４】
前記ネットワークホストは、標準ＳＡＴＡ通信信号を通じて前記拡張トップポートマルチプライヤと通信する請求項１に記載の装置。
【請求項５】
前記拡張トップポートマルチプライヤは、前記他の拡張ポートマルチプライヤおよび前記複数のネットワークデバイスと、拡張ＳＡＴＡ通信信号を通じて通信するように構成される請求項１に記載の装置。
【請求項６】
複数の拡張ポートマルチプライヤを介してマルチカスケードレベルで、ネットワークホストを複数のネットワークデバイスに連結するよう構成されたポートマルチプライヤネットワークを備えたシステムであって、前記ポートマルチプライヤネットワークは、
複数の拡張ポートマルチプライヤのうち拡張トップ（最上位）ポートマルチプライヤを含み、当該拡張トップポートマルチプライヤはネットワークホストと共に前記複数の拡張ポートマルチプライヤの他の拡張ポートマルチプライヤと連結し、
前記拡張ポートマルチプライヤは、マルチカスケードレベルで前記ネットワークホスト、他の拡張ポートマルチプライヤ、及び複数のネットワークデバイスとの間の通信を容易にするために前記複数の拡張ポートマルチプライヤのそれぞれとの通信を確立及び保持し、
前記他の拡張ポートマルチプライヤは、１以上の拡張ボトムポートマルチプライヤ、及び１以上の拡張中間ポートマルチプライヤを含み、
前記拡張トップポートマルチプライヤは親ノードとして機能し、前記１以上の拡張ボトムポートマルチプライヤの各々は子ノードとして機能し、前記１以上の拡張中間ポートマルチプライヤの各々は親ノード及び子ノードの両方として機能する、
ことを特徴とするシステム。
【請求項７】
前記拡張トップポートマルチプライヤは前記他の拡張ポートマルチプライヤおよび前記複数のネットワークデバイスと、拡張Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ（ＳＡＴＡ）通信信号を通じて通信する請求項６に記載のシステム。
【請求項８】
前記ネットワークホストは、（ＳＡＴＡ）ネットワークホストを含み、
前記ＳＡＴＡネットワークホストは、標準のＳＡＴＡ通信信号を介して前記拡張トップポートマルチプライヤと通信する請求項６に記載のシステム。
【請求項９】
前記ネットワークホストは、２つのポートを有するポートマルチプライヤを、２つより多い数のポートを有する拡張ポートマルチプライヤと認識する請求項６に記載のシステム。
【請求項１０】
前記拡張トップポートマルチプライヤは、前記複数の拡張ポートマルチプライヤの別の拡張ポートマルチプライヤおよび前記複数のネットワークデバイスを、デバイスの数が最大になるまで受け入れる構成においてカスケードされる請求項９に記載のシステム。
【請求項１１】
複数の拡張ポートマルチプライヤを介してマルチカスケードレベルで、ネットワークホストを複数のネットワークデバイスに連結するステップを含む方法であって、前記複数の拡張ポートマルチプライヤは、
複数の拡張ポートマルチプライヤのうち拡張トップ（最上位）ポートマルチプライヤを含み、当該拡張トップポートマルチプライヤはネットワークホストと共に前記複数の拡張ポートマルチプライヤの他の拡張ポートマルチプライヤと連結し、
前記拡張ポートマルチプライヤは、マルチカスケードレベルで前記ネットワークホスト、他の拡張ポートマルチプライヤ、及び複数のネットワークデバイスとの間の通信を容易にするために前記他の拡張ポートマルチプライヤのそれぞれとの通信を確立及び保持し、
前記他の拡張ポートマルチプライヤは、１以上の拡張ボトムポートマルチプライヤ、及び１以上の拡張中間ポートマルチプライヤを含み、ここで、前記拡張トップポートマルチプライヤは親ノードとして機能し、前記１以上の拡張ボトムポートマルチプライヤの各々は子ノードとして機能し、前記１以上の拡張中間ポートマルチプライヤの各々は親ノード及び子ノードの両方として機能し、更に、
前記複数のネットワークデバイス、前記複数の拡張ポートマルチプライヤ、及び前記ネットワークホストとの間の通信を確立するステップと、
を含む方法。
【請求項１２】
前記拡張トップポートマルチプライヤと前記ネットワークホストとの間の通信を、標準Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ（ＳＡＴＡ）通信信号を介して確立するステップをさらに含む請求項１１に記載の方法。
【請求項１３】
前記ネットワークホストは、ＳＡＴＡネットワークホストを含む請求項１１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は一般にネットワークの分野に関し、より詳しくは、拡張ポートマルチプライヤを利用するための方法、装置およびシステムに関する。
【背景技術】
【０００２】
ネットワークにおいては、複数の個人的電子メディアデバイスを相互接続してもよい。データを共有し、利便性を増大させ、個々の要素をより十分に活用するために、各種のメディアデバイスを相互にネットワーク接続してもよい。しかしながら、従来のメカニズムでは、ユーザはさまざまな要素や構成要素、たとえばポートマルチプライヤの持ちうる恩恵を享受できず、これは、このようなポートマルチプライヤの高度な機能や動作が制限されているからである。たとえば、従来のメカニズムではポートマルチプライヤをカスケード方式で接続することができないため、標準的ポートマルチプライヤに接続できるデバイスは１段階しかない。図１に示される従来のメカニズムにおいて、ポートマルチプライヤ１０４をカスケード方式で接続できないため、ポートマルチプライヤ１０４には、１段階１１６のデバイス１０６、１０８のみが、ポートマルチプライヤ１０４の２つのデバイスポート１１２、１１４を介して接続できる。ポートマルチプライヤ１０４は、ホストポート１１０を介してホスト１０２に接続される。言い換えれば、図に示すような先行技術による方式では、ポートマルチプライヤ１０４を、このポートマルチプライヤ１０４に連結可能なもっと多くのデバイスにカスケード方式で接続することができない。１：２ポートマルチプライヤ１０４は、最大で２つのデバイス１０６、１０８という１段階１１６に限定され、その結果、ポートマルチプライヤ１０４およびポートマルチプライヤ１０４を利用した図のネットワーク１００の高度な機能やいくつもの利点が制限されてしまう。
【０００３】
図１のポートマルチプライヤ１０４は、Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ（「ＳＡＴＡ」または「Ｓｅｒｉａｌ  ＡＴＡ」）ポートマルチプライヤ、すなわちＳＡＴＡ−ＩＯ規格適合ポートマルチプライヤを備えていてもよい。ＳＡＴＡ１．０仕様書とその後のＳＡＴＡＩＩポートマルチプライヤ仕様書は、ｗｗｗ．ｓｅｒｉａｌａｔａ．ｏｒｇで入手できる。Ｓｅｒｉａｌ  ＡＴＡ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｏｒｇａｎｉｚａｔｉｏｎ：  Ｓｅｒｉａｌ  ＡＴＡ  Ｒｅｖｉｓｉｏｎ  ２．５，  ２７  Ｏｃｔｏｂｅｒ  ２００５（ｗｗｗ．ｓｅｒｉａｌａｔａ．ｏｒｇで入手可能）は、それ以前のＳＡＴＡ仕様書の改訂版であり、たとえば第１６章にＳＡＴＡポートマルチプライヤに関する情報が記載されている。結局のところ、カスケード接続が不可能であるために、ハイエンドの機能や利点を提供できる、使いやすく、低コストのポートマルチプライヤを、消費者は手に入れることができない。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
拡張ポートマルチプライヤを利用する方法、装置およびシステムが提供される。
【課題を解決するための手段】
【０００５】
１つの実施形態において、装置は、ネットワーク内のポートマルチプライヤに連結されるように構成されるネットワークホストを含む。ポートマルチプライヤは、カスケード接続により、複数のポートマルチプライヤおよび複数のネットワークデバイスに連結されるように構成される。
【０００６】
１つの実施形態において、システムは、ネットワークホストを複数のネットワークデバイスに、ポートマルチプライヤを通じて、このポートマルチプライヤをカスケード接続で複数のネットワークデバイスと複数のポートマルチプライヤを受け入れるようにすることにより拡張することによって連結するポートマルチプライヤ拡張メカニズムを含み、複数のネットワークデバイスはネットワークホストに連結される。ネットワークホストは、標準通信信号を通じてポートマルチプライヤと通信する。
【０００７】
１つの実施形態において、方法は、ネットワークホストを複数のネットワークデバイスに、ポートマルチプライヤを通じて、このポートマルチプライヤをカスケード接続で複数のネットワークデバイスと複数のポートマルチプライヤを受け入れるようにすることにより拡張することによって連結するステップを含み、複数のネットワークデバイスはネットワークホストに連結される。この方法はさらに、標準通信信号を通じたネットワークホストとポートマルチプライヤとの間の通信を確立するステップを含む。
【０００８】
本発明の実施形態を限定のためではなく、例として添付の図面に示すが、図中、同様の要素には同様の参照番号が付与されている。
【図面の簡単な説明】
【０００９】
【図１】ポートマルチプライヤを利用する従来のメカニズムを示す図である。
【図２】ポートマルチプライヤ拡張メカニズムのある実施形態を利用したネットワークのある実施形態を示す図である。
【図３】ポートマルチプライヤ拡張メカニズムのある実施形態を示す図である。
【図４】ポートマルチプライヤ拡張メカニズムのある実施形態を利用したネットワークのある実施形態を示す図である。
【図５Ａ−５Ｂ】ポートマルチプライヤ拡張メカニズムのある実施形態を利用したネットワークのある実施形態を示す図である。
【図６】ポートマルチプライヤ拡張メカニズムのある実施形態を利用したネットワークのある実施形態を示す図である。
【図７】ポートマルチプライヤのある実施形態を示す図である。
【図８】ポートマルチプライヤの拡張を実行する工程のある実施形態を示す図である。
【図９】電源投入後のルートマップレジスタをセトルする工程のある実施形態を示す図である。
【図１０Ａ】ポートマルチプライヤ拡張メカニズムと、ルートマップレジスタをセトルするためのメカニズムを利用するネットワークのある実施形態を示す図である。
【図１０Ｂ】ポートマルチプライヤ用のルートマップレジスタのある実施形態を示す図である。
【図１０Ｃ】あるデバイスのためのデバイスポートに関するルートマップレジスタのある実施形態を示す図である。
【図１１Ａ−１１Ｆ】ルートマップレジスタをセトルするトランザクションシーケンスのある実施形態を示す図である。
【発明を実施するための形態】
【００１０】
本発明の実施形態は一般に、ポートマルチプライヤの拡張に関する。
【００１１】
本明細書において、「ネットワーク」または「通信ネットワーク」とは、デバイス間でデジタルメディアコンテンツ（音楽、音声／映像、ゲーム、写真、その他）を供給するための相互接続ネットワークを意味する。ポートマルチプライヤを用いるネットワークは、たとえば、主としてＳＡＴＡデータ、Ｆｒａｍｅ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｔｒｕｃｔｕｒｅ（ＦＩＳ）データ等を、１つまたは複数のポートマルチプライヤを介して供給するために使用されるが、供給されるＳＡＴＡやＦＩＳデータは、デジタルメディアの形態を含んでいてもよい。エンタテイメントネットワークとは、家庭内のネットワークのような個人的エンタテインメントネットワーク、ビジネス用ネットワーク、あるいはその他のデバイスおよび／または構成要素のネットワークであってもよい。１つのネットワークにおいて、特定のネットワークデバイスはメディアコンテンツのソースであってもよく、これらはたとえば、デジタルテレビチューナ、ケーブルセットトップボックス、映像記憶サーバ、およびその他のソースデバイスである。その他のデバイスはメディアコンテンツを表示または使用するものであってもよく、これらはたとえば、デジタルテレビ、ホームシアタシステム、オーディオシステム、ゲームシステム等である。さらに、あるデバイスは、メディアコンテンツの保存または転送用の、たとえば映像および音声記憶サーバであってもよい。あるデバイスは、複数のメディア機能を実行してもよい。いくつかの実施形態において、ネットワークデバイスは、１つのローカルエリアネットワーク上に共同設置されてもよい。他の実施形態において、ネットワークデバイスは、複数のローカルエリアネットワーク間のトンネリング等により、複数のネットワークセグメントにわたっていてもよい。エンタテイメントネットワークはまた、複数のデータ符号化および暗号化工程を含んでいてもよい。
【００１２】
図２以降の図面および本明細書を通じて、１：１５という比率は、実際には２ポートのポートマルチプライヤ（たとえば、標準的ＳＡＴＡポートマルチプライヤ１：２）であるメインまたは最上位ポートマルチプライヤを介してネットワークホスト（たとえば、標準的ＳＡＴＡホスト）に連結することのできる段階の数（たとえば、ネットワークデバイスとポートマルチプライヤの数）の最大数の一例として使用されているにすぎない点に注意されたい。言い換えれば、１つの実施形態において、標準的な１：２ポートマルチプライヤは、カスケード接続されて、いくつのデバイスでも（たとえば、１５台のデバイスと１５のポートマルチプライヤ）受け入れられるようになることによって拡張１：１５ポートマルチプライヤとして機能し、その一方で、ネットワークホストは欺かれて、標準的１：２ポートマルチプライヤを、（物理的には２つのポートしかないが）１５のポートを有する拡張１：１５ポートマルチプライヤと認識し、そのように扱う。
【００１３】
この技術を利用して、たとえば、ポートマルチプライヤの１つのポートを、ネットワークデバイス（たとえば、ディスクドライブ）を接続するための通常のデバイスポートとして使用し、第二のポートを、また別の標準的１：２ポートマルチプライヤを受けるための拡張ポートとして使用して、拡張１：１５ポートマルチプライヤとして機能するようにし、これを次々に繰り返す。１つのポートマルチプライヤの両方のポートを拡張ポートとして使用することも想定でき、その場合はこのポートマルチプライヤに２つの別のポートマルチプライヤを接続できる。反対に、カスケード接続連鎖の中の複数のポートマルチプライヤのいずれかの２つのポートを標準的なデバイスポートとして使用して、最大２つのネットワークデバイスを受け入れるようにすることもでき、これは特に、カスケード接続を終了させたい場合に使用できる。いくつかの実施形態において、１つのポートマルチプライヤを拡張して、多数のポートを有するように機能させることや、ポートの数を１５に限定せず、ホストを欺いて、そのポートマルチプライヤが前記の数のポートを有すると認識させることも想定される。本明細書においては、最上位のポートマルチプライヤのカスケード接続段階の最大数、または、最上位ポートマルチプライヤとのカスケード接続可能なデバイスおよび追加のポートマルチプライヤの数を１５と記しているが、最大で１５段階または１５個のポートマルチプライヤまたは１５台のデバイス（たとえば、拡張１：１５ポートマルチプライヤ）というのは、簡潔性と明瞭性を期す上での例として使用したにすぎず、最大数はいくつでもよく（たとえば、ＳＡＴＡプロトコルについての最大数は１５）、最小数は０でもよいと想定される。
【００１４】
ポートマルチプライヤとは、そのポートを複数のデバイス（たとえば、ハードドライバ）と通信できるようにするシリコンベースのデバイスを指す。ポートには、Ｓｅｒｉａｌ  ＡＴＡポートがある。ポートマルチプライヤは、エンクロージャのバックプレーンまたはマザーボードの上に設置してよく、またＳＡＴＡドライブ等のデバイスに対して透過的であってもよい。１つの実施形態において、ポートマルチプライヤにより、１つの動作中のホストがデバイスと通信できるような比較的単純なメカニズムである記憶システムに対して、費用対効果の高い方法でドライブ数を増大できる拡張性を持たせることが可能である。さらに、ポートマルチプライヤにより、パーソナルコンピュータ（ＰＣ）またはサーバの内外両方の記憶容量をデバイスによって容易に、高い費用対効果で拡張することができ、記憶容量を拡大するための追加のコントローラは不要となる。追加のコントローラを持たないことによって、外付け記憶装置の性能は、他のＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｏａｒｄ）ハードドライブ（たとえば、ＵＳＢ１．１、２．０等）、Ｆｉｒｅｗｉｒｅ（商標）等よりずっと高くなる。ＳＡＴＡホストには、ポートマルチプライヤを介してＳＡＴＡハードドライブと通信するコンピュータシステムホストが含まれる。
【００１５】
図２は、ポートマルチプライヤ拡張メカニズムのある実施形態を利用するネットワーク２００のある実施形態を示す。１つの実施形態において、標準的１：２ポートマルチプライヤ２０４（たとえば、標準的ＳＡＴＡポートマルチプライヤ）が、ホスト２０２（たとえばＳＡＴＡホスト）と、標準通信信号（たとえば、標準的ＳＡＴＡ通信信号）を使って通信する形態として使用される。１つの実施形態において、新規なポート拡張プロトコルを使い、標準ポートマルチプライヤ２０４（最上位ポートマルチプライヤ）を拡張して、拡張１：１５ポートマルチプライヤとして機能させる。言い換えれば、ポートマルチプライヤ２０４は物理的ポートを２つだけ有し、物理的には変更されないが、ポートマルチプライヤ２０４は論理的に拡張されて、１５のポートを有する拡張ポートマルチプライヤとして機能し、複数の段階２２２、２２４へとカスケード接続される。１つの実施形態において、ポート拡張プロトコルを用いたポートマルチプライヤ２０４の拡張に伴い、ホストに、ポートマルチプライヤ２０４を、（実際には、２つのポートしかないが）１５のポートを有すると認識させる。
【００１６】
最上位ポートマルチプライヤ２０４は、ホスト側のホストポート２１２とポートマルチプライヤ側のホストポート２２６を通じてホスト２０２と連結される。ポートマルチプライヤ２０４の第一のデバイスポート２１４は、デバイスポートとして使用されてネットワークデバイス２０８を接続する。ポートマルチプライヤ２０４の第二のデバイスポートは拡張ポート２１８として使用されて、別のポートマルチプライヤ２０６に、そのホストポート２２８を通じてカスケード接続される。最上位ポートマルチプライヤ２０４と同様に、第二のポートマルチプライヤ２０６も標準的１：２ポートマルチプライヤを含むが、これは拡張されて、その拡張ポート２２０とデバイスポート２１６を介してさらにカスケード接続されるように、拡張１：１５ポートマルチプライヤのように機能する。第二のデバイス２１０と、第二のポートマルチプライヤ２０６に接続された第三のポートマルチプライヤ（図示せず）はカスケード接続の第二の段階２２４を形成し、第二のポートマルチプライヤ２０６と第一のデバイス２０８はカスケード接続の第一の段階２２２を形成する。１つの実施形態において、このカスケード接続形態は、ポートマルチプライヤ２０４、２０６（および図に示されていないその他のポートマルチプライヤ）が物理的ポートを２つしか持たずに、また図の１つのホスト２０２にホストを一切追加せずに、１５段階続けることができる。図３以降の図面には、ポートマルチプライヤ拡張ネットワーク２００の多数の現実的な実装例（たとえば、デイジーチェーン方式、ピラミッドまたはハブ方式の実装等）が示されている。
【００１７】
図３は、ポートマルチプライヤ拡張メカニズム３００のある実施形態を示す。１つの実施形態において、ポートマルチプライヤ拡張メカニズム３００はポートマルチプライヤ拡張モジュール（拡張モジュール）３０６を利用しており、この拡張モジュール３０６は、２つの物理的ポート３０８を有する標準的１：２ポートマルチプライヤ３０２を、同じ２つの物理的ポート３０８を有する拡張１：１５ポートマルチプライヤ３０４へと拡張するためのポートマルチプライヤ拡張プロトコル（拡張プロトコル）を有する。しかしながら、拡張１：１５ポートマルチプライヤは、いくつかの段階でカスケード接続し、最大１５の別のポートマルチプライヤとネットワークデバイスを受け入れることができる。ネットワークデバイスとしては、ＡＴＡパケットインタフェース（ＡＴＡＰＩ）デバイス、ＡＴＡデバイス等がある。
【００１８】
１つの実施形態において、新規な拡張モジュール３０６の新規な拡張プロトコルには、パワーアップ列挙シーケンスからホットプラグ／ホットアンプラグのサポート、コントロールベースまたはＦＩＳベースの供給メカニズムまで、ホストとポートマルチプライヤとネットワークデバイス間の標準的な通信と、該当する場合は拡張された通信の両方を確立するのに必要な要素が含まれる。１つの実施形態において、Ｊｕｓｔ  ａ  Ｂｕｎｃｈ  ｏｆ  Ｄｉｓｋｓ（ＪＢＯＤ）はＪＢＯＤエンハンスト（ＪＢＯＤ−Ｅ）に改変されて、拡張モジュール３０６の新規な拡張プロトコルを形成し、これを使って、ポートマルチプライヤ３０２等のポートマルチプライヤが拡張される。コントローラは、各ドライブを独立したディスクとして扱うため、各ドライブは独立した論理ドライブである。ＪＢＯＤには、データ冗長機能がない。さらに、拡張ポートマルチプライヤ３０４を利用するネットワークとしては、ＪＢＯＤ−ＥベースまたはＪＢＯＤ−Ｅ対応のネットワークがあり、その一方で、このネットワークの特定の標準的な要素や構成要素はＪＢＯＤ対応であるが、他のＪＢＯＤ−Ｅ対応の要素や構成要素と一緒に機能できる。ＪＢＯＤとは、Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｄｅｐｅｎｄｅｎｔ（またはＩｎｅｘｐｅｎｓｉｖｅ）Ｄｉｓｋ（ＲＡＩＤ）にしたがって構成されていないハードディクスを指す。ＲＡＩＤは、性能と耐故障性を改善するための、ディスクドライブのサブシステムを指す。言い換えれば、ＲＡＩＤは、性能と耐故障性のために、複数のドライブを組み合わせて利用するディスクドライブの種類である。ＲＡＩＤは、性能を向上させ、冗長により信頼性を高め、および／または合算によってディスク容量の大きさを拡張することを目的として、２つ以上のハードディスクドライブをさまざまな構成で統合して使用することをサポートする技術を指す。
【００１９】
図４は、ポートマルチプライヤ拡張メカニズムのある実施形態を利用したネットワーク４００のある実施形態を示す。１つの実施形態において、ネットワーク４００は、ポートマルチプライヤ４０４をデイジーチェーン方式にカスケード接続した拡張方法を示している。図の実施形態において、ポートマルチプライヤ４０４はカスケード接続が可能になるように拡張され、別のポートマルチプライヤ４０６とデバイス４３４が追加される。同様に、ポートマルチプライヤ４０６はまた、カスケード接続可能に拡張され、また別のポートマルチプライヤ４０８と別のデバイス４３６が追加される。このようなカスケード接続工程は、ポートマルチプライヤ４３２とデバイス４６２が連鎖に追加されるまで繰り返される。ポートマルチプライヤ４０４からは、図４に示される１５台のデバイス４３４−４６２より多い、または少ない、何台のデバイスでもカスケード接続によって分岐させることができると想定される。
【００２０】
１つの実施形態において、ポートマルチプライヤ４０４は、ホスト４０２に接続される。ホスト４０２と最上位の拡張ポートマルチプライヤ４０４の間の通信信号は、標準的ＳＡＴＡ信号４６４とみなされる。しかしながら、最上位の拡張ポートマルチプライヤ４０４から後の通信信号は、拡張（ｅｎｈａｎｃｅｄ）ＳＡＴＡ信号４６６、４６８とみなされる。言い換えれば、標準的ＳＡＴＡ信号４６４は、最上位の拡張ポートマルチプライヤ４０４とホスト４０２の間で維持されて、ＳＡＴＡ仕様書と適合し、デバイス４０２、４０４の間の標準的な通信を維持する。しかしながら、ホスト４０２は欺かれて、最上位の拡張ポートマルチプライヤ４０４を、１５のポートを有するものとして認識するようになり、これによって、最上位の拡張ポートマルチプライヤ４０４はカスケード接続が可能になり、拡張ＳＡＴＡ信号４６６、４６８を使って、拡張ポートマルチプライヤ４０６−４３２とデバイス４３４−４６２を追加することができる。
【００２１】
拡張ポートマルチプライヤ４０４−４３２の各々はノードとみなされるが、ポートマルチプライヤ４０４は、ＳＡＴＡホスト４０２と接続される最上位ポートマルチプライヤとみなされ、最後のデバイス４６２と接続される最後のポートマルチプライヤ４３２は、最下位ノードとみなされる。さらに、第三者ポートマルチプライヤ（図示せず）に接続されたポートマルチプライヤもまた最下位ノードとみなされるが、これは、このポートマルチプライヤが最後のＪＢＯＤ−またはＪＢＯＤ−ＥベースのＳＡＴＡポートマルチプライヤとしてみなされるからである。ただし、三者ポートマルチプライヤがＪＢＯＤ対応であってもよいことも想定される。さらに、各ノードは、親ノードおよび／または子ノードと考えられる。着目中のノードのホストポートに取り付けられたノードは親とみなされ、着目中のノードのデバイスポートに取り付けられたノードは子とみなされる。たとえば、ポートマルチプライヤ４０８はポートマルチプライヤ４１０にとっては親ノードとして機能するが、ポートマルチプライヤ４０６にとっては子ノードとして機能する。したがって、ポートマルチプライヤ４０８は、そしてポートマルチプライヤ４０６、４１０−４３０も同様に、中間ノードとみなされ、各ノード４０８−４３０は親と子の両方として機能する。この方式を利用すると、最上位ポートマルチプライヤ４０４は、親ノードを持たないため、ポートマルチプライヤ４０６にとっての親としてのみ機能する。これに対して、最下位ポートマルチプライヤ４３２は、子ノードがないため、ポートマルチプライヤ４３０にとっての子としてのみ機能する。１つの実施形態において、ネットワーク４００は、ＪＢＯＤ−Ｅプロトコルを利用するＪＢＯＤ−Ｅ標準ネットワークであるが、他の形式のプロトコルも想定され、利用できる。
【００２２】
データルーティングに関して、ルートマップ（ＲｏｕｔｅＭａｐ）レジスタが各ノード４０４−４３２で使用され、他の作業のほかに、ノード４０４−４３２の間のデータ通信を円滑にしている。たとえば、各ノード４０４−４３２はレジスタ群を管理して、このＪＢＯＤ−Ｅ標準ネットワーク４００の中のポートをアドレス指定してもよい。ポートとは、１つのノードと他のノードとの接続を円滑にする接続点を指す。図４に示されるＳＡＴＡポートマルチプライヤ４０３−４３２の各々は、たとえば、２つのポートを有するが、第三者マルチプライヤは違う数のポートを持っているかもしれない。各ポートマルチプライヤ４０４−４３２の２つのポートは、ポートマルチプライヤ４０４の場合のように、デバイス（たとえば、デバイス４３４）を接続するためのデバイスポート（たとえば、デバイスポート４７０）と、別のポートマルチプライヤ（たとえば、ポートマルチプライヤ４０６）を接続するためのホストポート４６８であってもよい。
【００２３】
１つの実施形態において、最下位ノード４３２は、何にも依存せずに、そのＲｏｕｔｅＭａｐレジスタを更新できる。最下位ノード４３２に対して、ＲｏｕｔｅＭａｐレジスタを報告するように要求された場合、最下位ノード４３２は、ＲｏｕｔｅＭａｐレジスタの内容をその親ノード（たとえば、上位ノード）４３０に供給する。すると、親ノード４３０のＲｏｕｔｅＭａｐレジスタは有効となり、その親ノード４２８に相応に応答することができる。この工程を繰り返すと、最後に最上位ノード４０４はその子ノード４０６のＲｏｕｔｅＭａｐレジスタを読み出すことができる。最上位ノード４０４がその子ノード４０６のＲｏｕｔｅＭａｐレジスタを読み出すと、最上位ノード４０４は、Ｐｏｒｔ  Ｍｕｌｔｉｐｌｉｅｒ  Ｐｏｒｔ（ＰＭＰ）をその子ノード４０６に割り当て、子ノード４０６はＰＭＰをその子ノード４０８に分配し、これが繰り返されて、最後に最下位ノード４３２がその親ノード４３０からＰＭＰを受け取り、すべてのノード４０４−４３２のＲｏｕｔｅＭａｐレジスタがセトルされる。
【００２４】
このＪＢＯＤ−Ｅネットワーク４００の接続形態を把握するために、ホスト４０２は各ノード４０４−４３２にアクセスして、各々のＲｏｕｔｅＭａｐレジスタを読み出す。しかしながら、ネットワーク４００内の各ノード４０４−４３２は各自の識別番号を持たないかもしれないため、ホスト４０２から個別のノード４０４−４３２をアドレス指定することは簡単ではないかもしれない。この障害を克服するために、トークンを用いた方式の１つの実施形態が導入され、これによれば、トークンが属するノード４０４−４３２のＲｏｕｔｅＭａｐレジスタが、命令（たとえば、Ｒｅａｄ  Ｐｏｒｔ  Ｍｕｌｔｉｐｌｉｅｒ命令）の応答として戻される。トークンは、対応するトークン情報レジスタ（たとえば、ＴｏｋｅｎＩｎｆｏレジスタ）を更新することにより、前方または後方に移動させることができる。この方式／工程のいつくかの特徴としては、（１）ＪＢＯＤ−Ｅネットワーク４００全体で１つのトークンが提供される点、（２）デフォルトでは、ＪＢＯＤ−Ｅネットワーク４００の各ノード４０４−４３２の前方（たとえば、ＦＷＡＲＤ）と後方（たとえばＢＷＡＲＤ）がゼロに設定される点、（３）特定のノード、たとえばノード４０６のＦＷＡＲＤがすべてゼロである場合、そのノード４０６がトークンを有する点、（４）上位ノード、たとえば最上位ノードであるポートマルチプライヤ４０４に接続された、下位ノード（たとえばノード４０６）のポートマルチプライヤのＲｏｕｔｅＭａｐレジスタにアクセスする場合、ホスト４０２はＦＷＡＲＤのｂｉｔ０を１に更新する点、がある。すると、トークンは、上位ノードであるポートマルチプライヤ４０４に接続された下位ノードであるポートマルチプライヤ４０６に属することになる。さらに、ホスト４０２が、ＲｏｕｔｅＭａｐレジスタを取得するためにポートマルチプライヤを読み出す命令（たとえば、Ｒｅａｄ  Ｐｏｒｔ  Ｍｕｌｔｉｐｌｉｅｒ命令）を発行した場合、上位ノードであるポートマルチプライヤ４０４に連結された下位ノードであるポートマルチプライヤ４０６から応答を受け取る。すべてのノード４０４−４３２に到達するために、この工程を繰り返すことによってＲｏｕｔｅＭａｐレジスタが進められ、たとえば、さまざまなノード４０４−４３２の間のＲｏｕｔｅＭａｐレジスタを、最下位ノード４３２からのレジスタの内容がホスト４０２に到達するまで進められる。トークンを後方に移動させるには、ホスト４２０は、ＴｏｋｅｎＩｎｆｏレジスタのＢＷＡＲＤビットにＲｏｕｔｅＭａｐを書き込む。簡潔性と明瞭性を期すために、単純化したネットワーク４００を示したが、１つのネットワークで、拡張ポートマルチプライヤとして機能するポートマルチプライヤ、デバイスおよび／または第三者ポートマルチプライヤをいくつでも使用できる。
【００２５】
図５Ａは、ポートマルチプライヤ拡張メカニズムのある実施形態を利用するネットワーク５００のある実施形態を示す。図のネットワーク５００は、ポートマルチプライヤ５０４のハブ方式またはピラミッド方式のカスケード接続による拡張を示している。図４のデイジーチェーンネットワークメカニズム４００のポートマルチプライヤとデバイスが１５段階であるのと異なり、図の実施形態では、ポートマルチプライヤ５０４−５３２が４段階５７２−５７８とネットワークデバイス５３４−５６０が１段階５８０ある。ポートマルチプライヤ５３２の最後のポート５７０は使用されないまま、あるいは割り当てられないままになっているが、これは、たとえば最大数である１５台のデバイス５３４−５６２がすでに接続されているからである。前述のとおり、何台のデバイス（デバイスは１５台より多くても、少なくてもよい）を割り当ててもよいことが想定されるが、本明細書では、簡潔性と明瞭性を期し、また一貫性を持たせるために、最大のデバイス数の例として１５を用いる。
【００２６】
１つの実施形態において、ポートマルチプライヤ５０４は、標準的１：２ＳＡＴＡポートマルチプライヤを備えており、ホスト５０２はこれを、カスケード接続が可能で最大１５台のデバイス５３４−５６２を割り当てられる拡張１：１５ＳＡＴＡポートマルチプライヤであると信じ込む。これは、たとえば、最初にホストポートを使ってホスト５０２に最上位ポートマルチプライヤ５０４を接続し、標準的ＳＡＴＡ通信信号５８２を使って通信させることによって行われる。次に、最上位マルチプライヤ５０４の２つのポートを使って最上位マルチプライヤ５０４に２つのポートマルチプライヤ５０６、５０８を接続し、拡張ＳＡＴＡ通信信号５８４を使って通信させる。同様に、残りのポートマルチプライヤ５１０−５３２とデバイス５３４−５６２を接続して、拡張ＳＡＴＡ通信信号を使って相互に通信させる。
【００２７】
図の実施形態では、１５のポートマルチプライヤ５０４−５３２と１５のネットワークデバイス５３４−５６２が使われているが、いくつのポートマルチプライヤやデバイスでも使用でき、これは１５より少なくても、多くてもよいことが想定される。たとえば、図５Ｂは、ポートマルチプライヤ拡張メカニズムのある実施形態を利用するこのようなネットワーク５９０を示している。図５Ｂの実施形態において、ポートマルチプライヤ５９２はホスト５９１と通信する。しかしながら、図５Ａのハブ方式のネットワークメカニズム５００とは異なり、図５Ｂに描かれた実施形態では、最上位ポートマルチプライヤ５９２を拡張するために、ポートマルチプライヤ５９３、５９４の２つだけが追加されている。追加された２つのポートマルチプライヤ５９３、５９４はさらに拡張され、４つのネットワークデバイス５９５−５９８を利用しており、２つのポートマルチプライヤ５９３、５９４の各々が各自の２つのポートを使用している。
【００２８】
このようなハブ方式のネットワークメカニズム５９０に各種の変更を加えてもよいことが想定され、そうした変更版も形成され、実現可能である。たとえば、別のポートマルチプライヤ５９３の代わりに、また別のネットワークデバイスを使用するが、最上位ポートマルチプライヤ５９２の第一の（ホスト）ポートはポートマルチプライヤ５９４によって使用された状態にあるため、これを最上位ポートマルチプライヤ５９２の第二の（デバイス）ポートを使って通信させてもよい。他の図と同様に、ＳＡＴＡホスト５９１と最上位ポートマルチプライヤ５９２の間の通信信号は、標準的ＳＡＴＡ通信信号５８６を使用しており、残りのポートマルチプライヤ５９３、５９４とデバイス５９５−５９８は、拡張ＳＡＴＡ通信信号５８８を使って通信する。１つの実施形態において、ネットワーク５００、５９０は、ＪＢＯＤ−Ｅプロトコルを採用したＪＢＯＤ−Ｅ標準ネットワークであるが、他の形式のプロトコルも想定され、利用可能である。
【００２９】
図６は、ポートマルチプライヤ拡張メカニズムのある実施形態を利用するネットワーク６００のある実施形態を示す。図の実施形態において、ネットワーク６００は、異なる仕様が適用される、および／または異なる製造業者により作製される第三者ポートマルチプライヤ６０８、６１０を含むハブ方式のカスケード接続を利用し、さらに、これら２つのポートマルチプライヤ６０８、６１０は、拡張ポートマルチプライヤ技術とプロトコルを用いて、他の２つの標準的ポートマルチプライヤ６０４、６０６とともに使用されている。たとえば、２つの第三者マルチプライヤ６０８、６１０は、ＪＢＯＤ−Ｅプロトコルに対応していないかもしれず、またこれらは２つの標準的ＳＡＴＡポートを持っていないかもしれない（たとえば、ポートマルチプライヤ６０８は３つのポートを有する１：３であり、ポートマルチプライヤ６１０は４つのポートを有する１：４である等）が、それでも、拡張ポートマルチプライヤメカニズムを使って、１つの実施形態によれば、この２つの第三者ポートマルチプライヤ６０８、６１０が２つの１：２  ＳＡＴＡポートマルチプイライヤ６０４、６０６とともに動作するように構成される。
【００３０】
１つの実施形態において、最上位ポートマルチプライヤ６０４はホスト６０２のホストポートと通信し、さらに、ＪＢＯＤ−Ｅ適合ＳＡＴＡポートマルチプライヤ６０６および第三者ポートマルチプライヤ６１０とも通信する。第三者ポートマルチプライヤ６１０は４つのポートを有し、４台のネットワークデバイス６２０−６２６と接続される。ポートマルチプライヤ６０６は、デバイスポートを通じてネットワークデバイス６３０に接続され、さらに、ポートマルチプライヤ６０６のホストポートを通じて第三者ポートマルチプライヤ６０８とさらに接続される。第三者ポートマルチプライヤ６０８は３つのポートを有し、３台のネットワークデバイス６１４−６１６と接続される。本明細書に記載した他のカスケード接続ネットワークメカニズムと同様に、この第三者ハブカスケード接続ネットワーク６００では、ホスト６０２と最上位ポートメカニズム６０４の間に標準的ＳＡＴＡ通信信号６２８が用いられ、ホスト６０２は欺かれて、最上位ポートマルチプライヤ６０４を、１５のポートを有する拡張１：１５ポートマルチプライヤと認識する。しかしながら、ポートマルチプライヤ６０４−６１０とネットワークデバイス６１２−６２６の間の通信信号は、拡張ＳＡＴＡ通信信号６３０である。
【００３１】
１つの実施形態において、電源投入時および／またはホットプラグ／ホットアンプラグのイベント中に列挙およびナンバリングが発生する。しかし、いずれの場合も、ＳＡＴＡホスト６０２は、列挙工程に気づかないかもしれない。最上位ポートマルチプライヤ６０４は、それが１：１５  ＳＡＴＡポートマルチプライヤであるかのように機能するため、ＳＡＴＡホスト６０２は上位ポートマルチプライヤ６０４を１：１５  ＳＡＴＡポートマルチプライヤとみなす、または認識する。たとえば、ＪＢＯＤ−Ｅ規格は、ＳＡＴＡポートマルチプライヤ仕様に適合する第三者ポートマルチプライヤ６０８、６１０をサポートする。第三者ポートマルチプライヤ６０８、６１０にアクセスするための命令が発せられると、第三者ポートマルチプライヤ６０８、６１０は、それぞれの親である拡張ポートマルチプライヤ６０６、６０４に露出される。
【００３２】
電源投入中、たとえばホスト６０２から「ソフトウェアリセット」の命令を受け取ると、最上位ポートマルチプライヤ６０４はソフトウェアリセット命令を、これに接続されている第三者ノード６１０および次の（子）ノードであるポートマルチプライヤ６０６に発し、ポートマルチプライヤ６０６は、もう一方の第三者ポートマルチプライヤ６０８にとっては親ノードとして機能し、第三者ポートマルチプライヤ６０８に上記の命令を送る。これは、命令がＡＴＡ／ＡＴＡＰＩベースのネットワークドライブ６１２−６２６に到達するまで続けられる。ＳＡＴＡノード６０４、６０６、６０８、６１０の各々は、レジスタＦＩＳデバイス６１２−６２６をホスト６０２に送る前に、後続のソフトウェアリセット命令の完了を待機する必要がない。ソフトウェアリセット命令の署名がポートマルチプライヤ６０４、６０６のものである場合、ノード６０４、６０６のモデル番号とベンダ識別（ＩＤ）またはＧｌｏｂａｌ  Ｓｔａｔｕｓ  Ｃｏｎｔｒｏｌ  Ｒｅｇｉｓｔｅｒ（ＧＳＣＲ）（たとえば、ＧＳＣＲ［０］）が読み出されて、ノード６０４、６０６がＪＢＯＤ−Ｅ適合か否かが判断される。ノード６０４、６０６がＪＢＯＤ−Ｅ適合であると、着目中のノードはそのノード６０４、６０６のルートマップ（ＲｏｕｔｅＭａｐ）レジスタを読み出す。さらに、各ノード６０４、６０６は、そのルートマップレジスタに有効な情報が入るまで、応答しなくてよい。
【００３３】
図の実施形態において、最上位ポートマルチプライヤ６０４は、ポートマルチプライヤ６０６と第三者ポートマルチプライヤ６１０にとっては親ノードとして機能する。最上位ポートマルチプライヤ６０４は、その上に他のポートマルチプライヤノードがないため、最上位ノードとして機能するが、これはまた、ネットワーク６００の中では、第三者ポートマルチプライヤ６１０にとっての最下位ノードとしても機能する。同様に、ポートマルチプライヤ６０６は、最上位ポートマルチプライヤ６０４の子ノードとして機能する一方で、ネットワーク６００の中では、第三者ポートマルチプライヤ６０８の親ノードとしても機能する。ポートマルチプライヤ６０６は、ネットワーク６００の中で、第三者ポートマルチプライヤ６０８にとって最下位ノードとして機能する。これに対して、ポートマルチプライヤ６０４は、親ノードも上位ノードも持たない最上位ノードとみなされる。
【００３４】
図７は、ポートマルチプライヤ７００のある実施形態を示す。図のポートマルチプライヤ７００は、本明細書に記載されるようなポートマルチプライヤ拡張メカニズムを有するネットワークに使用される拡張ポートマルチプライヤとして機能できる標準的ＳＡＴＡポートマルチプライヤを含む。ポートマルチプライヤ７００は、２つの標準デバイスポート７０６、７０８（たとえば、ＳＡＴＡデバイスポート）を有し、最大２つのネットワークデバイスを使用できる。ポートマルチプライヤ拡張メカニズムの１つの実施形態を利用して、デバイスポート７０６、７０８の一方は、ポートマルチプライヤ７００を他のポートマルチプライヤに接続するためのホストポートとして機能するように使用され、もう一方のデバイスポートはそのまま、デバイスに接続するためのデバイスポートとして機能するように使用できる。別の実施形態では、両方のデバイスポート７０６、７０８を、２つの他のポートマルチプライヤに接続するためのホストポートとして機能するように使用することができる。ポートマルチプライヤ７００をカスケード接続できるようにするこのようなポートマルチプライヤ拡張メカニズムが、本明細書で説明される。
【００３５】
ポートマルチプライヤ７００はさらに、ホストポート７０４（たとえば、ＳＡＴＡホストポート）を含み、これは、ポートマルチプライヤ７００がネットワーク内の最上位ノードであるポートマルチプライヤとして機能する場合はネットワークホスト（たとえば、ＳＡＴＡホスト）に接続するために使用され、ポートマルチプライヤ７００がネットワーク内の中間または最下位ノードであるポートマルチプライヤとして機能する場合は親ノードであるポートマルチプライヤに接続するために使用される。デバイスポート７０６、７０８とホストポート７０４は、バッファ７１０−７１４を通じてポートマルチプライヤコア７０２に接続される。
【００３６】
ポートマルチプライヤ７００はさらに、状態表示用ＬＥＤ（発光ダイオード）ドライバ７１６、ｂｕｉｌｄ−ｉｎ−ｓｅｌｆ−ｔｅｓｔ（ＢＩＳＴ）およびＪｏｉｎｔ  Ｔｅｓｔ  Ａｃｔｉｏｎ  Ｇｒｏｕｐ（ＪＴＡＧ）メカニズム７１８、フェーズロックループ（ＰＬＬ）７２４、シリアルＥＥＰＲＯＭ（ＥＬｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）７２２、ＳＡＴＡ  Ｅｎｃｌｏｓｕｒｅ  Ｍａｎａｇｅｍｅｎｔ  Ｂｒｉｄｇｅ（ＳＥＭＢ）７２０を含む。ＬＥＤは、一般的なＬＥＤ回路のように、ｐ−ｎ接合の順方向に電気的にバイアスされると、インコヒーレントの狭スペクトルの光を放出する半導体ダイオードを指す。ＩＣ（集積回路）内のＢＩＳＴメカニズム７１８は、そのＩＣの内部機能の全部または一部を検証する機能である。たとえば、ＢＩＳＴメカニズム７１８は、機能の検証のために高度なｆｉｌｅｄｂｕｓシステムの中に設置されてもよい。ＪＴＡＧ  ７１８は、バウンダリスキャンを用いたプリント回路基板のテストに使用されるテストアクセスポートのためのＳｔａｎｄａｒｄ  Ｔｅｓｔ  Ａｃｃｅｓｓ  Ｐｏｒｔ  ａｎｄ  Ｂｏｕｎｄａｒｙ  Ｓｃａｎ  Ａｒｃｈｉｔｅｃｔｕｒｅと題するＩＥＥＥ  １１４９．１規格の代わりにしばしば用いられる名称である。
【００３７】
ＰＬＬ  ７２４は、「基準」信号の位相との関係が固定された信号を生成する電子制御システムを指す。これは、現代的なフェーズロックループの前身である。ＥＥＰＲＯＭとは、コンピュータおよびその他のデバイスの中で使用され、少量の揮発性データ、たとえば較正表またはデバイス形態を記憶する不揮発性記憶チップを指す。シリアルＥＥＰＲＯＭ  ７２２は一般に、ＯＰ−コードフェーズ、アドレスフェーズ、データフェーズの３つのフェーズで動作する。ＯＰ−コードは通常、ＥＥＰＲＯＭデバイスのシリアル入力ピンへの最初の８ビット入力（または、ほとんどのＩｎｔｅｒ−Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ（Ｉ2Ｃ）デバイスの場合は暗黙）と、それに続く、デバイスの深さに応じた８から２４ビットのアドレス指定、および、読み出され、または書き込まれるデータである。ＳＥＭＢ  ７２０は、ホストコントローラとコンパニオンエンクロージャ管理デバイスとの間で、Ｉ2Ｃバスを通じてインバンドエンクロージャ管理データを受け渡す。
【００３８】
図８は、ポートマルチプライヤの拡張を実行する工程のある実施形態を示す。処理ブロック８０２で、ホスト（たとえば、ＳＡＴＡホスト）と標準的２ポート型ポートマルチプライヤ（たとえば、標準的１：２  ＳＡＴＡポートマルチプライヤ）が特定される。次に、処理ブロック８０４において、ホストはホストポートを使ってポートマルチプライヤと接続される。ホストとポートマルチプライヤの間の通信は、標準通信信号（たとえば、標準的ＳＡＴＡ通信信号）を含む通信信号を通じて確立される。１つの実施形態において、処理ブロック８０６で、新規なポートマルチプライヤプロトコルを有する新規なポートマルチプライヤ拡張メカニズムが、ホストとポートマルチプライヤに導入される。処理ブロック８０８において、拡張メカニズムを使ってホストを欺き、標準的な２ポート型ポートマルチプライヤが２つより多いポート（たとえば、１５のポート）を有すると認識させる。
【００３９】
処理ブロック８１０では、ホストが、ホストマルチプライヤが２つより多いポートを有すると認識しはじめると、このポートマルチプライヤは最上位ポートマルチプライヤとして機能し、カスケード接続によって、多数のポートマルチプライヤおよびネットワークデバイスと接続される。これまでの図面で説明したように、カスケード接続は、１つまたは複数のポートマルチプライヤとネットワークデバイスを最大数（たとえば、１５台のデバイスと１５のポートマルチプライヤ）に到達するまで追加することにより、さまざまな形式（たとえば、デイジーチェーン、ハブ方式、第三者ハブ方式等）で実行できる。この技術については、これまでの図面と本明細書の別の箇所でも説明されている。
【００４０】
図９は、電源投入後のルートマップレジスタをセトルする工程のある実施形態を示す。１つの実施形態において、処理ブロック９０２で電源投入され、次に、処理ブロック９０４でノードの識別がチェックされる。３つの識別は、処理ブロック９０６で親だけになりうる最上位ノードと、処理ブロック９１６で子だけになりうる最下位ノードと、処理ブロック９２６で親子の両方になりうる中間ノードである。ノードが最上位ノード（たとえば、最上位ポートマルチプライヤ）として識別されると、この最上位ノードは、処理ブロック９０８において、その子ノード（必ずしも最下位ノードとは限らない）からのＲｏｕｔｅＭａｐレジスタを待つ。処理ブロック９１０で、ＰＭＰが割り当てられる。処理ブロック９１２で、更新されたＲｏｕｔｅＭａｐレジスタが子ノードに送られ、処理ブロック９１４で最上位ノードが準備完了となる。
【００４１】
ノードが最下位ノードであると、処理ブロック９１８において、チャンネル数（ＣＨＮＵＭ）が書き込まれる。処理ブロック９２０で、最下位ノードの親ノード（必ずしも最上位ノードとは限らない）は、ＲｏｕｔｅＭａｐレジスタを読み出すように要求される。処理ブロック９２２で、最下位ノードは、親ノードがＲｏｕｔｅＭａｐフィールドへの書き込みを行うのを待ち、処理ブロック９２４で最下位ノードが準備完了となる。
【００４２】
処理ブロック９２６に戻り、ノードが中間ノード（たとえば、最上位ノードでも最下位ノードでもない）として識別されると、処理ブロック９２８において、この中間ノードはその子ノードからのＲｏｕｔｅＭａｐレジスタを待つ。処理ブロック９３０で、ＣＨＮＵＭが書き込まれる。処理ブロック９３２で、中間ノードの親ノードはＲｏｕｔｅＭａｐレジスタを読み出すように要求される。処理ブロック９３４で、中間ノードは親ノードがＲｏｕｔｅＭａｐフィールドを更新するのを持ち、処理ブロック９３６でＰＭＰが割り当てられる。処理ブロック９３８で、親ノードは更新されたＲｏｕｔｅＪａｐレジスタを子ノードに送信する。処理ブロック９４０で、中間ノードは準備完了となる。
【００４３】
図１０Ａは、ポートマルチプライヤ拡張メカニズムと、ルートマップレジスタをセトルするためのメカニズムとを利用するネットワーク１０００のある実施形態を示す。１つの実施形態において、ルートマップ（ＲｏｕｔｅＭａｐ）レジスタは電源投入後にセトルされ、ホスト１００２からのＦＩＳの供給を開始できる状態となる。ノード１００４−１００８（たとえば、ポートマルチプライヤ１００６）のＲｏｕｔｅＭａｐレジスタには、ノード１００６のためのルートマップ（ＲｏｕｔｅＭａｐ）に関する情報が含まれる。ＣＨＮＵＭ＿ＮＯＤＥは、ノード１００６の下の、つまりこれと直接通信するデバイス１０２０の数を指し、ＲＯＵＴＥＭＡＰ＿ＮＯＤＥは、ノード１００６に属するＰＭＰ（たとえば、ＰＭＰ５）に対応するビットを指す。デバイス１０１０−１０１８（たとえば、第一のデバイスＤｅｖ０、１０１２）のＲｏｕｔｅＭａｐレジスタには、ネットワーク１０００の中の第一のデバイス、Ｄｅｖ０、１０１２のデバイスポートのためのルートマップ（ＲｏｕｔｅＭａｐ）に関する情報が含まれる。この場合、ＣＨＮＵＭ＿Ｄ０は、Ｄｅｖ０ポートの下のデバイス（たとえば、デバイス１０１２）の総数を指し、ＲＯＵＴＥＭＡＰ＿Ｄ０は、Ｄｅｖ０ポートに属するＰＭＰ（たとえば、ＰＭＰ０）に対応する各ビットを指す。他のデバイスＤｅｖ１−Ｄｅｖ４、１０１４−１０２０（ある場合には、最大１５台のデバイスＤｅｖ１−ＤｅｖＥ）に関するレジスタには、第一のデバイスＤｅｖ０と同じ情報が含まれる。
【００４４】
ＲｏｕｔｅＭａｐレジスタが更新されると、遠隔デバイスへのアクセスが次のように行われる。ホストからデバイスへのデータの伝送を実行するために、ノード１００６−１０１０はＦＩＳヘッダからＰＭＰ番号（たとえば、ＰＭＰ０−ＰＭＰ５）を受け取り、ＲｏｕｔｅＭａｐレジスタを参照し、どのデバイスポートがＦＩＳを送信するべきかを判断する。デバイスからホストへのデータの伝送を行う場合、最下位ノード１００６−１００８（たとえば、デバイス１０１２−１０２０に直接取り付けられるノードまたは第三者ポートマルチプライヤ１０１０）は、相応にＰＭＰフィールドを更新し、最下位以外のノード（たとえば、第三者ポートマルチプライヤ１０１０）はＦＩＳを、一切変更せずに受け渡す。さらに、ホストからデバイスへのデータ伝送の場合、ターゲットＰＭＰが存在しなければ、ＦＩＳは、ＳＡＴＡ仕様書に定められているように、ＳｙｎｃＥｓｃａｐｅメカニズムを使って終了される。アクセスによりＰＳＣＲセクションが読み出され、ターゲットＰＭＰが存在するのであれば、ＰｏｒｔＮｕｍを使ってルート情報が入手される。最上位ノード１００４に関して、アクセスによりＰＳＣＲセクションが読み出され、ターゲットＰＭＰが存在しなければ、予め決定されたデフォルト値がホスト１００２に戻される。再送信では解決できない衝突を回避するために、ＪＢＯＤＥのすべてのポートがＦＩＳ全体を受信できる。ホスト１００２のホストポートからのＦＩＳが目的地となるデバイス１０１２−１０２０のデバイスポートに確実に到達することができるように、バスの衝突（たとえば、ＳＡＴＡ仕様書のＸＲＤＹ−ＸＲＤＹ衝突）の可能性がある場合に親ノードを最優先するようにし、バスの衝突の可能性を回避し、データが自由に流れるようにする。
【００４５】
１つの実施形態において、ＪＢＯＤ−Ｅは、ネットワーク１０００の中の第三者ポートマルチプライヤ１０１０を、これらの第三者ポートマルチプライヤ１０１０がＳＡＴＡポートマルチプライヤ仕様書に適合しているかぎり、サポートする。たとえば、ノード１００８は、第三者ポートマルチプライヤ１０１０にアクセスするための一連の命令を発行し、第三者ポートマルチプライヤ１０１０のポートをその親ノード１００４に露出させ、この親ノードはこの例の場合、最上位ポートマルチプライヤ１００４である。ノード１００８は、第三者ポートマルチプライヤ１０１０へのＰＭＰに命令（たとえば、ソフトウェアリセット命令）を発行する。ノード１００８はＧＳＣＲ［０］を読み出して、デバイス１０１２−１０１６のデバイス識別を取得して、第三者ポートマルチプライヤ１０１０がＪＢＯＤ−Ｅ適合であったか否かを判断する。次に、ノード１００８はＧＳＣＲ［２］を読み出し、第三者ポートマルチプライヤ１０１０のデバイスポートの数を把握する。ノード１００８はデバイスポートの数を、ＲｏｕｔｅＭａｐレジスタを通じて、親１００４に戻す。ノード１００２には、ＲｏｕｔｅＭａｐ情報を第三者ポートマルチプライヤ１０１０の実際のＰＭＰに変換する表が保持される。さらに、表の形式は実装方法によって異なっていてもよく、ホスト１００２に露出する必要がない場合もある。
【００４６】
図１０Ｂは、ポートマルチプライヤ１００４−１００８のためのルートマップレジスタ１０５０のある実施形態を示す。図に示されたポートマルチプライヤノード１００４、１００６、１００８のためのルートマップ（ＲｏｕｔｅＭａｐ）レジスタ１０５０の実施形態には、ノード１００４、１００６、１００８のためのルートマップに関する情報が含まれており、これには着目中のノードの下にあるデバイスの総数（たとえば、ノード１００６の場合は１つのデバイス１０２０）を含むＣＨＮＵＭ＿ＭＯＤＥのセクション１０５２と、着目中のノードに属するＰＭＰ（たとえば、デバイス１０２０に対応するノード１００６のＰＭＰ５）に対応する各ビットを含むＲＯＵＴＥＭＡＰ＿ＮＯＤＥのセクション１０５６がある。レジスタ１０５０にはさらに、他の関連情報を含めるための保留セクション１０５４も含まれる。
【００４７】
図１０Ｃは、デバイス１０１２−１０２０のデバイスポートのためのルートマップレジスタ１０６０のある実施形態を示す。図に示されたデバイス１０１２−１０２０のデバイスポートのためのルートマップ（ＲｏｕｔｅＭａｐ）レジスタ１０６０の実施形態には、これらのデバイスポートのためのルートマップに関する情報が含まれており、これには、たとえばデバイス１０１２のＤ０等、特定のデバイスポートの下にあるデバイスの総数を含むＣＨＮＵＭ＿Ｄ０のセクション１０６２と、その特定のデバイスポートに属するＰＭＰ（たとえば、第一のデバイスＤ０、１０１２に対応するデバイスポートのＰＭＰ０）に対応する各ビットを含むＲＯＵＴＥＭＡＰ＿Ｄ０のセクション１０６６がある。レジスタ１０６０にはさらに、他の関連情報を含めるための保留セクション１０６４も含まれる。
【００４８】
図１１Ａ−１１Ｆは、ルートマップレジスタをセトルするためのトランザクションシーケンスのある実施形態を示す。図１１Ａに示されるポートマルチプライヤ拡張ネットワーク１１００には、ＳＡＴＡホスト１１０２と３つのＪＢＯＤ−Ｅ適合ＳＡＴＡポートマルチプライヤ１１０４−１１０８、ＨＤＤドライブ１１１２−１１２０等のデバイスが含まれ、これらのうちドライブ１１１８−１１２０はＳＡＴＡドライブであってもよい。他の３つのデバイス１１１２−１１１６は、第三者ポートマルチプライヤ１１１０と接続される。図の実施形態においては、３つのＲｏｕｔｅＭａｐレジスタがあり、その各々が、更新されるべきＪＢＯＤ−Ｅ適合ポートマルチプライヤ１１０４−１１０８に対応する。
【００４９】
図１１Ｂは、ポートマルチプライヤノード１１０４、１１０６、１００８に関連付けられるＲｏｕｔｅＭａｐレジスタ１１２２、１１２４、１１２６を示す。ＲｏｕｔｅＭａｐレジスタ１１２２、１１２４、１１２６は図のように、ゼロにクリアされるように設定される。図１１Ｃは、最下位ノード１１０６、１１０８から始められたＲｏｕｔｅＭａｐレジスタ１１２２、１１２８、１１３０の読み出しを示している。たとえば、デバイスポート１１５４、１１５８（たとえば、ノード１１０６のデバイスポートＢ  １１５４とノード１１０８のデバイスポートＢ  １１５８）が１つのデバイス１１２０、１１１８に接続されている場合、各デバイスポートＤＢ、１１５４、１１５８のＣＨＮＵＭ数１１２８、１１３０は１である。同様に、デバイスポートＤＡ、１１５２がどのデバイスにも接続されていない場合、そのデバイスポートＤＢ、１１５２のＣＨＮＵＭ  １１２８も１である。しかしながら、図のように、デバイスポート１１５６がポートマルチプライヤ１１１０に接続されている場合、そのデバイスポートＤＡ、１１５６に関するＣＨＮＵＭ  １１３０は、ポートマルチプライヤ１１１０に接続されたデバイス１１１２、１１１４、１１１６の数であり、この場合、これは３つのデバイス１１１２，１１１４，１１１６を表す３である。この情報は、ポートマルチプライヤ１１１０のＧＳＣＲ［２］を読み出すことによって得られる。ノード１１１０のノード数１１３０のためのＲｏｕｔｅＭａｐレジスタのＣＨＮＵＭ  １１３０は、デバイスポート１１５６、１１５８の各ＲｏｕｔｅＭａｐレジスタのＣＨＮＵＭを単に加算したものであり、この場合、これは４つの１１１２、１１１４、１１１６、１１１８を表す４である。
【００５０】
同様に、図１１Ｄに示されるように、親、すなわち最上位ポートマルチプライヤノード１１０４のデバイスポートＤＡ  １１６０とＤＢ  １１６２に関するＣＨＮＵＭ  １１３２は、最下位、または子のポートマルチプライヤ１１０６、１１０８を介してそれぞれ接続されたデバイス１１１２、１１１４、１１１６と、１１１８、１１２０の総数である。この場合、デバイスポートＤＡ  １１６０のＣＨＮＵＭ  １１３２は、子ポートマルチプライヤのデバイスポートＤＡ  １１５２、１１５６については４であり、デバイスポートＤＢ  １１６２については、この数は子ポートマルチプライヤのデバイスポートＤＢ  １１５４、１１５８を表す２である。ポートマルチプライヤノード１１０４のノード数１１３２は６であり、これは、それぞれ４と２であるＤＡとＤＢの数１１３２の合算である。次に、最上位ポートマルチプライヤ１１０４は、デバイスポートＤＡ  １１５２（デバイスが接続されていない１つのポートを表す）、ＤＢ  １１５４（１つのデバイス１１２０が接続されている１つのポートを表す）、ＤＢ  １１５８（１つのデバイス１１１８が接続されている１つのポートを表す）、ＤＡ  １１５６（第三者ポートマルチプライヤ１１１０を介して３つのデバイス１１１２、１１１４、１１１６が接続されている３つのポートを表す）の各々にＰＭＰを割り当てる。
【００５１】
次に、図１１Ｅを参照すると、ＰＭＰ割当メカニズムのある実施形態が構成されている。１つの実施形態において、ＰＭＰ割当メカニズムは、ＰＭＰ割当アルゴリズムを含み、実装方式によって異なる。図の実施形態において、ＰＭＰは単純に低い番号から高い番号へと、デバイスポート１１５２、１１５４、１１５６、１１５８の各々に割り当てられる。したがって、最上位ポートマルチプライヤノード１１０４は、ＰＭＰ０、ＰＭＰ１、ＰＭＰ２とＰＭＰ３をデバイスポートＡ  １１５２、１１５６に割り当て、ＰＭＰ４、ＰＭＰ５をデバイスポートＢ  １１５４、１１５８に割り当てる。最上位ポートマルチプライヤ１１０４は次に、ＲｏｕｔｅＭａｐレジスタ１１３４、１１３６、１１３８のノード数（ＮＯＤＥ）を更新し、その一方で、子ポートマルチプライヤ１１０６、１１０８は、ＲｏｕｔｅＭａｐレジスタ１１３４、１１３６、１１３８のデバイスポート数（ＤＡ、ＤＢ）を更新する。次に、図１１Ｆを参照すると、最上位ノード１１０４は、その子ノード１１０６、１１０８のＲｏｕｔｅＭａｐレジスタ（ＮＯＤＥ）１１３６、１１３８を更新し、子ノード１１０６、１１０８は、そのデバイス１１２０、１１１２−１１１６、１１１８のＲｏｕｔｅＭａｐレジスタ（ＤＡ、ＤＢ）１１３６、１１３８を更新する。
【００５２】
１つの実施形態において、ネットワークデバイスは、クライアント／サーバネットワークシステム、たとえば、パーソナルエンタテイメントネットワークの中で相互接続される。これまでの図面のネットワークメカニズムは、各種のネットワークの一部である。ネットワークは、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＭＡＮ（Ｍｅｔｒｏｐｏｌｉｔａｎ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、イントラネット、インターネット等を含んでもよい。本明細書の他の箇所で述べているように、何台のネットワークデバイスでもカスケード接続でき、ポートマルチプライヤに接続して、あるネットワーク内のネットワークメカニズムを形成することもできる。ネットワーク１０２５を介して接続されるデバイスは何台でもよいと想定される。デバイスは、データストリーム、たとえば、ストリーミングメディアデータ等をネットワークシステム内の他のデバイスに、本明細書に記載したプロトコルを含む多くの標準および非標準プロトコルによって伝送してもよい。
【００５３】
上述のように、説明のために、本発明を十分に理解できるように数多くの具体的な詳細事項が示されている。しかしながら、当業者であれば、本発明はこのような具体的詳細事項のいくつかがなくても実践可能であることがわかるであろう。別の場合では、周知の構造やデバイスがブロック図の形で示される。図に示されている構成要素と構成要素の間には、介在する構造があってもよい。本願の説明文や図に示された構成要素には、図や説明にはない入力や出力があってもよい。
【００５４】
本発明の各種の実施形態は、各種のプロセスを含んでいてもよい。これらのプロセスは、ハードウェア構成要素によって遂行されるようにしても、あるいはコンピュータプログラムや機械実行可能な命令の中に具現化し、これを用いて、その命令を含めてプログラムされた汎用または特定用途プロセッサまたはロジック回路にプロセスを実行させるようにしてもよい。あるいは、プロセスは、ハードウェアとソフトウェアの組み合わせによって遂行されてもよい。
【００５５】
本明細書中に記した１つまたは複数のモジュール、構成要素または要素、たとえばポートマルチプライヤ改善メカニズムの実施形態の中に、またはこれに関連して示されるものは、ハードウェア、ソフトウェア、またはそれらの組み合わせを含んでいてもよい。あるモジュールにソフトウェアが含まれる場合、ソフトウェアデータ、命令および／またはコンフィギュレーションは、機械／電子機器／ハードウェアの製品を通じて提供されてもよい。製品とは、命令、データ等を提供するコンテンツが記憶された機械アクセス／読取可能な媒体であってもよい。コンテンツにより、電子機器、たとえば、本明細書に記載のファイラ、ディスクまたはディスクコントローラが、前述の各種の動作や実行項目を遂行することになってもよい。
【００５６】
本発明の各種の実施形態の一部をコンピュータプログラム製品として提供してもよく、これにはコンピュータプログラム命令が記録されたコンピュータ読取可能媒体も含まれ、このような製品は、コンピュータ（またはその他の電子デバイス）を、本発明の実施形態によるプロセスを実行するようにプログラムするのに用いられる。機械読取可能媒体としては、これらに限定されないが、フロッピーディスケット、光ディスク、ＣＤ−ＲＯＭ（ｃｏｍｐａｃｔ  ｄｉｓｋ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）、光磁気ディスク、ＲＯＭ（ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）、ＥＰＲＯＭ（ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）、ＥＥＰＲＯＭ、磁気もしくは光カード、フラッシュメモリまたは、電子命令の保存に適した上記以外の種類の媒体／機械読取可能媒体がある。さらに、本発明はまた、コンピュータプログラム製品としてダウンロードされてもよく、この場合、プログラムは、リモートコンピュータからこれを要求したコンピュータへと転送される。
【００５７】
さまざまな方法を、その最も基本的な形態で説明したが、本発明の基本的範囲から逸脱することなく、これらの方法にプロセスを追加し、またそこから削ったり、上の記述内容に情報を追加し、またそこから削除したりすることができる。当業者であれば、さらにまた数多くの改変や適応化が可能であることが明らかであろう。個々の実施形態は、本発明を限定するためではなく、説明のために提供したものである。本発明の実施形態の範囲は、上述の具体例ではなく、以下の特許請求の範囲によってのみ決定されるものとする。
【００５８】
要素Ａが要素Ｂに、または要素Ｂと連結されている、との記述がある場合、要素Ａは直接Ｂに結合されていても、あるいはたとえば要素Ｃを通じて間接的に接続されていてもよい。明細書または特許請求範囲に、構成要素、特徴、構造、プロセスまたは特性Ａが構成要素、特徴、構造、プロセスまたは特性Ｂの「基因となる」と記載されている場合、これは、ＡはＢの少なくとも部分的基因であるが、Ｂの誘引を助ける構成要素、特徴、構造、プロセスまたは特性がその他に少なくとも１つあってもよいことを意味する。明細書に、ある構成要素、特徴、構造、プロセスまたは特性が「含まれていてもよい（ｍａｙ）」、「含まれるかもしれない（ｍｉｇｈｔ）」または「含まれうる（ｃｏｕｌｄ）」と記されている場合、この特定の構成要素、特徴、構造、プロセスまたは特性が含まれている必要はない。明細書または特許請求の範囲に、「１つの（ａ，ａｎ）」要素への言及がある場合、言及された当該の要素が１つしかないことを意味しない。
【００５９】
ある実施形態は、本発明の実現態様または例である。明細書における「ある実施形態」、「一実施形態」、「いくつかの実施形態」または「他の実施形態」という表現は、その実施形態に関連して説明された特定の特徴、構造または特性が少なくともいくつかの実施形態に含まれるが、必ずしもすべての実施形態に含まれるとは限らないことを意味する。「ある実施形態」、「一実施形態」または「いくつかの実施形態」の用語がさまざまな箇所で使用されていても、必ずしもすべてが同じ実施形態を指すというわけではない。本発明の例示的な実施形態に関する上記の説明においては、開示を簡素化し、本発明の多様な態様の１つまたは複数を理解しやすくするために、各種の特徴が１つの実施形態、図面またはこれに関する説明の中にまとめられている場合があることがわかるであろう。しかしながら、このような説明方法は、特許請求されている発明には各請求項に明記されているもの以外の特徴が必要となるという意図を反映したものと解釈すべきではない。むしろ、以下の特許請求の範囲に反映されているように、本発明の態様は、上述のある１つの実施形態に含まれる全特徴の中の一部を備える形態にある。したがって、特許請求の範囲をこの説明の中に明確に取り入れるものとし、各請求項は、それ自体が本発明の異なる実施形態として独立しているものとする。
【図１】
0005576804.tif 000002
【図２】
0005576804.tif 000003
【図３】
0005576804.tif 000004
【図４】
0005576804.tif 000005
【図５Ａ】
0005576804.tif 000006
【図５Ｂ】
0005576804.tif 000007
【図６】
0005576804.tif 000008
【図７】
0005576804.tif 000009
【図８】
0005576804.tif 000010
【図９】
0005576804.tif 000011
【図１０Ａ】
0005576804.tif 000012
【図１０Ｂ】
0005576804.tif 000013
【図１０Ｃ】
0005576804.tif 000014
【図１１Ａ】
0005576804.tif 000015
【図１１Ｂ】
0005576804.tif 000016
【図１１Ｃ】
0005576804.tif 000017
【図１１Ｄ】
0005576804.tif 000018
【図１１Ｅ】
0005576804.tif 000019
【図１１Ｆ】
0005576804.tif 000020