(57)【要約】【課題】連鎖された拡張可能な記憶装置を提供すること。【解決手段】１つまたは複数の記憶装置のプライマリ・エージェントは、プライマリ・エージェントに結合されたホストから論理アドレスを含むホスト要求を受信し、論理アドレスに基づいて、記憶装置の少なくとも１つにおいて対応する物理アドレスを決定し、物理アドレスに基づいて、記憶装置の各決定された物理アドレスに対するサブ要求を生成し、ホストから独立して動作可能な記憶装置のインターフェース・ネットワークを介して、記憶装置にサブ要求を送信する。プライマリ・エージェントは、サブ要求に応じてサブ状態を受信し、全体的な状態を決定する。スイッチを用いずにホストが記憶装置に結合されるように、プライマリ・エージェントは、ホストに全体的な状態を提供する。【選択図】図１
2014154157.tif 000002
【特許請求の範囲】
【請求項１】
連鎖された拡張可能な記憶システムのデータにアクセスする方法であって、
１つまたは複数の記憶装置のプライマリ・エージェントによって、ホスト・インターフェース・ネットワークを介して前記プライマリ・エージェントに結合されたホスト装置からホスト要求を受信することであって、前記要求は、前記１つまたは複数の記憶装置の論理アドレスにアクセスするものであることと、
前記論理アドレスに基づいて、前記プライマリ・エージェントによって、前記１つまたは複数の記憶装置の少なくとも１つにおいて対応する物理アドレスを決定することと、
前記物理アドレスに基づいて、前記プライマリ・エージェントによって、前記ホスト要求、および前記１つまたは複数の記憶装置の少なくとも１つにおいて決定された対応する物理アドレスのそれぞれに対応するサブ要求を生成することと、
前記ホスト装置から独立して動作可能な記憶装置インターフェース・ネットワークを介して前記プライマリ・エージェントによって、前記少なくとも１つの記憶装置に前記サブ要求を送信することであって、前記記憶装置インターフェース・ネットワークは、前記プライマリ・エージェントに前記記憶装置を結合するピアツーピア・ネットワークであることと、
前記少なくとも１つの記憶装置から前記プライマリ・エージェントによって、前記サブ要求に応じたそれぞれのサブ状態を受信し、それぞれの各サブ状態に基づいて全体的な状態を決定し、前記ホスト装置に前記全体的な状態を提供することと
を含み、
前記ホスト装置は、ネットワーク・スイッチを用いずに、前記１つまたは複数の記憶装置に結合される
方法。
【請求項２】
前記記憶装置インターフェース・ネットワークは、前記ホスト・インターフェース・ネットワークに直接的にアクセス可能ではなく、
前記記憶装置のそれぞれによって、前記記憶装置インターフェース・ネットワークから離れている前記ホストとのそれぞれ独立したデータ通信経路を介してデータ通信を送信すること
をさらに含み、
前記ホスト装置と前記記憶装置との間の制御トラフィックは、前記ホスト装置と前記プライマリ・エージェントとの間だけにあり、データ通信帯域幅は、記憶装置の数に合わせて拡張する
請求項１に記載の方法。
【請求項３】
前記ホスト・インターフェース・ネットワークおよび前記記憶装置インターフェース・ネットワークは、バックプレーン、１つまたは複数の銅ケーブル、１つまたは複数の光ファイバ、１つまたは複数の同軸ケーブル、１つまたは複数のツイストペア銅線のうちの少なくとも１つを含む伝送媒体を含む請求項１に記載の方法。
【請求項４】
前記１つまたは複数の記憶装置のサブセットにより高い帯域幅の記憶装置インターフェース・ネットワーク接続を選択的に提供することであって、前記１つまたは複数の記憶装置の前記サブセットは、前記ホスト装置の近くに配置した１つまたは複数の記憶装置を含むこと
をさらに含む請求項３に記載の方法。
【請求項５】
前記ホスト・インターフェース・ネットワークは周辺機器相互接続エクスプレス（ＰＣＩ−Ｅ）Ｇｅｎ４ネットワークを含み、前記記憶装置の相互接続ネットワークは、ＰＣＩ−Ｅ  Ｇｅｎ３ネットワーク、イーサネット・ネットワーク、シリアル・アタッチト・スモール・コンピュータ・システム・インターフェース（ＳＡＳ）ネットワーク、およびシリアル・アドバンスト・テクノロジー・アタッチメント（ＳＡＴＡ）ネットワークの１つまたは複数を含む請求項４に記載の方法。
【請求項６】
リダンダント・アレイ・オブ・インデペンデント・ディスクス（ＲＡＩＤ）システムにおいて前記１つまたは複数の記憶装置を用いることをさらに含み、前記１つまたは複数の記憶装置は、半導体ディスク（ＳＳＤ）、ハード・ディスク・ドライブ（ＨＤＤ）、磁気抵抗ランダム・アクセス・メモリ（ＭＲＡＭ）、テープ・ライブラリ、ならびに磁気および半導体のハイブリッド記憶システムの少なくとも１つを含む
請求項１に記載の方法。
【請求項７】
前記１つまたは複数の記憶装置の集合的な提供可能な帯域幅に関係する前記ホスト・インターフェース・ネットワークに帯域幅を提供すること
をさらに含み、
前記記憶装置インターフェース・ネットワークは、１つまたは複数の物理リンクを含み、各リンクは、独立した帯域幅を持ち、
前記１つまたは複数の物理リンクのそれぞれは、（ｉ）制御データを転送するための比較的低い帯域幅の側波帯結合、および（ｉｉ）ユーザ・データを転送するための比較的高い帯域幅の主要な帯域結合を含む
請求項１に記載の方法。
【請求項８】
前記提供することは、前記記憶装置のそれぞれに前記ホスト・インターフェース・ネットワークの独立した物理リンクを提供することを含む請求項７に記載の方法。
【請求項９】
複数の記憶装置であって、前記記憶装置の少なくとも１つは、前記複数の記憶装置の１つまたは複数に対するプライマリ・エージェントである複数の記憶装置と、
前記少なくとも１つのプライマリ・エージェントにホスト・インターフェース・ネットワークを介して結合されたホスト装置と
を含み、
前記少なくとも１つのプライマリ・エージェントは、
前記ホスト装置からホスト要求を受信し、前記要求は、前記複数の記憶装置のうちの前記１つまたは複数の論理アドレスにアクセスするものであり、
前記論理アドレスに基づいて、前記複数の記憶装置のうちの前記１つまたは複数の少なくとも１つにおいて対応する物理アドレスを決定し、
前記物理アドレスに基づいて、前記ホスト要求および前記複数の記憶装置のうちの前記１つまたは複数の少なくとも１つにおいて前記決定された対応する物理アドレスのそれぞれに対応するサブ要求を生成し、
前記ホスト装置から独立して動作可能な記憶装置インターフェース・ネットワークを介して、前記少なくとも１つの記憶装置にサブ要求を送信し、前記記憶装置インターフェース・ネットワークは、前記プライマリ・エージェントに前記記憶装置を結合するピアツーピア・ネットワークであり、
前記少なくとも１つの記憶装置から、前記サブ要求に応じたそれぞれのサブ状態を受信し、それぞれの各サブ状態に基づいて全体的な状態を決定し、前記ホスト装置に前記全体的な状態を提供する
ように構成され、
前記ホスト装置は、ネットワーク・スイッチを用いずに、前記１つまたは複数の記憶装置に結合され、前記記憶装置インターフェース・ネットワークは、前記ホスト・インターフェース・ネットワークに直接的にアクセス可能ではない
連鎖された拡張可能な記憶システム。
【請求項１０】
前記ホスト装置と前記記憶装置との間の制御トラフィックは、前記ホスト装置と前記少なくとも１つのプライマリ・エージェントとの間だけにあり、データ帯域幅は、前記記憶装置の数に合わせて拡張し、
前記記憶装置インターフェース・ネットワークは、
前記１つまたは複数の記憶装置のサブセットにより高い帯域幅接続を選択的に提供する、および
前記１つまたは複数の記憶装置の集合的な提供可能な帯域幅に関係する前記ホスト・インターフェース・ネットワークに帯域幅を提供する
の少なくとも１つのように構成される
請求項９に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は一部継続出願であり、その教示の全体が参照により本明細書に組み込まれている、２０１２年１２月７日に出願した米国特許出願第１３／７０２，９７６号の出願日の利点を主張するものであり、これは２０１１年６月１６日に出願した米国仮出願第６１／４９７，５２５号、２０１１年６月１７日に出願した国際特許出願ＰＣＴ／ＵＳ２０１１／０４０９９６号、および２０１０年６月１８日に出願した米国仮出願第６１／３５６，４４３号の出願日の利点を請求するものである。
【背景技術】
【０００２】
ストレージ・エリア・ネットワーク（以下「ＳＡＮ」とする。）は、ＳＡＮに結合された１つまたは複数のホスト装置に、ディスク・アレイおよびテープ・ライブラリなど、統合されたブロックレベルの記憶装置へのアクセスを提供するシステムである。ＳＡＮは、ホスト装置への単一の論理インターフェースとして複数の記憶装置を表し、記憶装置のそれぞれによって実装された記憶装置を単一の論理記憶空間へと概念的に集合する。典型的なＳＡＮは拡張可能な場合がある。つまり、記憶空間の量（たとえば記憶装置の数）は、異なるＳＡＮシステムでの必要に応じて変更することができる。記述したように、ＳＡＮはブロックレベルのアクセスを提供する。つまり、ファイル・システムは、典型的には、ホスト装置によって管理される。典型的なＳＡＮは、ファイバ・チャネル（ＦＣ）、Advanced Technology Attachment（ＡＴＡ）over Ethernet（ＡｏＥ）、インターネット・スモール・コンピュータ・システム・インターフェース（ｉＳＣＳＩ）、またはＨｙｐｅｒＳＣＳＩなどブロックレベルのプロトコルを用いる場合がある。ＳＡＮは、記憶装置とホスト装置との間でデータを直接的に転送する。
【０００３】
ネットワーク接続ストレージ（ＮＡＳ）は、ＮＡＳに結合された１つまたは複数のホスト装置にファイルレベルのアクセスを提供するシステムである。ＳＡＮとは異なり、ＮＡＳシステムは、その接続された記憶装置に対してファイル・システムを提供し、１つまたは複数のローカルのブロックレベルの記憶装置にアクセスするファイル・サーバとして本質的に機能する。典型的なＮＡＳは、ネットワーク・ファイル・システム（ＮＦＳ）またはサーバ・メッセージ・ブロック／共通インターネット・ファイル・システム（ＳＭＢ／ＣＩＦＳ）など、ファイルレベルのプロトコルを用いる場合がある。ＳＡＮ−ＮＡＳ混成システムは、同じ記憶システムから、ＮＡＳ装置のようなファイルレベル・アクセス、およびＳＡＮシステムのようなブロックレベル・アクセスの両方をホストに提供するシステムである。
【０００４】
ＳＡＮ、ＮＡＳ、およびＳＡＮ−ＮＡＳ混成システムでは、複数の記憶装置をグループ化することによって全体的なシステム記憶のサイズを増加できるように、複数の記憶装置を用いることが望まれる。記憶装置のそのようなグループ化では、典型的には、個々または全体的に記憶装置をホストで利用できるように、スイッチを用いた通信階層が必要である。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−１０４０９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、そのような従来技術の問題点に鑑みてなされたものであり、連鎖された拡張可能な記憶装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
この発明の概要は、下述する詳細な説明にさらに記述する選択した概念を簡素化された形で紹介するために提供するものである。この発明の概要は、請求された内容の重要な特徴または必須の特徴を特定することを意図するものではなく、また請求された内容の範囲を限定するために使用することを意図するものでもない。
【０００８】
記述した実施形態では、連鎖された拡張可能な記憶システムのデータにアクセスする。１つまたは複数の記憶装置のプライマリ・エージェントは、プライマリ・エージェントに結合されたホストから論理アドレスを含むホスト要求を受信する。プライマリ・エージェントは、論理アドレスに基づいて、記憶装置の少なくとも１つにおいて対応する物理アドレスを決定し、物理アドレスに基づいて、記憶装置の各決定された物理アドレスに対するサブ要求を生成する。プライマリ・エージェントは、ホストから独立して動作可能な記憶装置のインターフェース・ネットワークを介して、記憶装置にサブ要求を送信する。記憶装置のインターフェース・ネットワークは、プライマリ・エージェントに記憶装置を結合するピアツーピア・ネットワークである。プライマリ・エージェントは、サブ要求に応じてサブ状態を受信し、全体的な状態を決定する。スイッチを用いずにホストが記憶装置に結合されるように、プライマリ・エージェントは、ホストに全体的な状態を提供する。
【０００９】
記述した実施形態の他の態様、特徴、および利点は、以下の詳細な説明、添付した特許請求の範囲、および同様の参照番号は同様または同一の要素を識別する添付の図面からより完全に明白になるだろう。
【図面の簡単な説明】
【００１０】
【図１】代表的な実施形態による拡張可能な記憶システムを示すブロック図である。
【図２】代表的な実施形態による拡張可能な記憶システムを示すブロック図である。
【図３】代表的な実施形態による拡張可能な記憶システムを示すブロック図である。
【図４】代表的な実施形態による拡張可能な記憶システムを示すブロック図である。
【図５】代表的な実施形態による拡張可能な記憶システムを示すブロック図である。
【発明を実施するための形態】
【００１１】
記述した実施形態は、連鎖された拡張可能な記憶システムのデータにアクセスする。１つまたは複数の記憶装置のプライマリ・エージェントは、プライマリ・エージェントに結合されたホストから論理アドレスを含むホスト要求を受信する。プライマリ・エージェントは、論理アドレスに基づいて、記憶装置の少なくとも１つにおいて対応する物理アドレスを決定し、物理アドレスに基づいて、記憶装置の各決定された物理アドレスに対するサブ要求を生成する。プライマリ・エージェントは、ホストから独立して動作可能な記憶装置のインターフェース・ネットワークを介して、記憶装置にサブ要求を送信する。記憶装置のインターフェース・ネットワークは、プライマリ・エージェントに記憶装置を結合するピアツーピア・ネットワークである。プライマリ・エージェントは、サブ要求に応じてサブ状態を受信し、全体的な状態を決定する。スイッチを用いずにホストが記憶装置に結合されるように、プライマリ・エージェントは、ホストに全体的な状態を提供する。
【００１２】
表１には、記述した実施形態の理解を助けるために、本明細書の全体にわたって用いられる頭文字のリストを規定している。
【表１】
2014154157.tif 000003
【００１３】
一部のＳＡＮ、ＮＡＳ、またはＳＡＮ−ＮＡＳ混成システムでは、記憶装置には、ホスト・インターフェース（ＨＩＦ）プロトコルを通じてホスト装置から受信された装置受け入れ記憶装置要求のプライマリ・エージェントを持つ場合がある。プライマリ・エージェントはホスト要求を処理し、ピアツーピア・プロトコルを通じて各記憶装置のセカンダリ・エージェントに１つまたは複数のサブ要求を生成する。セカンダリ・エージェントは、サブ要求を受け入れて処理し、サブ要求のそれぞれに対するサブ状態情報をプライマリ・エージェントおよび／またはホストに報告する。プライマリ・エージェントは、オプションとして、ホスト要求の全体的な状態へとサブ状態を蓄積する。エージェント間のピアツーピア通信は、オプションとして、ホスト・アクセスおよび／または障害回復の間に冗長情報を通信するために使用される。様々な障害回復手法により、冗長情報を介して、記憶装置を再び割り付け、エージェントを再び割り当てて、データを回復することができる。
【００１４】
図１は、たとえば、参照により本明細書に組み込まれている、２０１２年１２月７日に出願された関連する米国特許出願第１３／７０２，９７６号に記述されているように、代表的な拡張可能な記憶システムのブロック図を示している。図１に示すように、拡張可能な記憶システムは、結合１０１を介してプラグ接続可能な記憶モジュール１９０に結合された少なくとも１つのホスト装置（１００）を含む。結合１０１は、バックプレーン、銅ケーブル、光ファイバ、１つまたは複数の同軸ケーブル、１つまたは複数のツイストペア銅線、および／または１つまたは複数の無線周波数（ＲＦ）チャネルなど、伝送媒体として実装することができる。たとえば、結合１０１は、ＦＣ、ＡｏＥ、ｉＳＣＳＩ、もしくはＨｙｐｅｒＳＣＳＩリンクとして（たとえばＳＡＮシステムにおいて）、またはＮＦＳもしくはＳＭＢ／ＣＩＦＳリンクとして（たとえばＮＡＳシステムにおいて）実装することができる。
【００１５】
プラグ接続可能な記憶モジュール１９０は、少なくとも１つのホスト／記憶装置インターフェース（１８０と示す）を含む。図１では、プラグ接続可能な記憶モジュール１９０に統合されているものとして示されているが、一部の実施形態では、ホスト／記憶装置インターフェース１８０は、各ホスト装置１００に統合される場合がある。一部の実施形態では、プラグ接続可能な記憶モジュール１９０は、アドイン・カードとして実装される場合がある。図１に示すように、プラグ接続可能な記憶モジュール１９０は、ホスト可視記憶装置１１０を含み、これは１つまたは複数の記憶装置１１０（１）〜１１０（Ｎ）を含む。ホスト可視記憶装置１１０は、記憶装置を実装し、その一部またはすべては、ホストから記憶装置へのインターフェース１８０を介して、ホスト装置１００によるアクセスを許可するように構成される。プラグ接続可能な記憶モジュール１９０は、また、ホスト不可視記憶装置１２０を含み、これは１つまたは複数の記憶装置１２０（１）〜１２０（Ｍ）を含む。ホスト不可視記憶装置１２０は、ホスト装置１００に直接的に報告されない、したがって「不可視」である記憶装置を実装する。しかし、たとえばピアツーピア・プロトコルを介して、ホスト可視記憶装置１１０の要素によって、ホストにとって不可視の記憶装置はホスト装置１００に報告され間接的にアクセス可能である。たとえば、記憶要素のプライマリ・エージェントは、セカンダリ・エージェントがホスト装置１００にとって可視でなくても、プライマリ・エージェントと、プライマリ・エージェントと通信するセカンダリ・エージェントとを組み合わせた記憶容量を報告する。一部の実施形態では、記憶装置１１０および１２０は、半導体ディスク（ＳＳＤ）、ハード・ディスク・ドライブ（ＨＤＤ）、テープ・ライブラリ、磁気および半導体のハイブリッド記憶システム、またはそれらの一部の組み合わせなど物理的な記憶装置である。
【００１６】
ともに、結合１０１、１１１、および１２１の組み合わせにより、ホスト装置１００とホスト可視記憶装置１１０（およびホスト可視記憶装置１１０を介してホスト不可視記憶装置１２０）との間の要求、状態、およびデータの転送が可能になる。たとえば、１つまたは複数の結合により、たとえば、マスタとして動作するホスト装置１００の１つ、およびスレーブとして動作するホスト可視記憶装置１１０の記憶要素の１つによる、ホスト・インターフェース・プロトコルを介した転送が可能になる。さらに、１つまたは複数の結合により、たとえば、プライマリ・エージェントとして動作するホスト可視記憶装置１１０の要素の１つ、およびセカンダリ・エージェントとして動作する、ホスト不可視記憶装置１２０の要素の１つまたはホスト可視記憶装置１１０の要素の他の１つによる、ピアツーピア・プロトコルを介した転送が可能になる。結合１１１および１２１は、特別設計の通信リンクとして実装される場合があり、またはたとえば、スモール・コンピュータ・システム・インターフェース（ＳＣＳＩ）リンク、シリアル・アタッチトＳＣＳＩ（ＳＡＳ）リンク、シリアル・アドバンスト・テクノロジー・アタッチメント（ＳＡＴＡ）リンク、ユニバーサル・シリアル・バス（ＵＳＢ）、ファイバ・チャネル（ＦＣ）リンク、イーサネット・リンク（たとえば、１０ＧＥリンク）、ＩＥＥＥ８０２．１１リンク、ＩＥＥＥ８０２．１５リンク、ＩＥＥＥ８０２．１６リンク、周辺機器相互接続エクスプレス（ＰＣＩ−Ｅ）リンク、シリアル・ラピッドＩ／Ｏ（ＳＲＩＯ）リンク、ＩｎｆｉｎｉＢａｎｄリンク、または他の同様のインターフェース・リンクなど、標準の通信プロトコルに準拠するリンクとして実装される場合がある。
【００１７】
一部の実施形態では、ホスト／記憶装置インターフェース１８０は、典型的には、１つまたは複数のＰＣＩ−ＥまたはＩｎｆｉｎｉＢａｎｄスイッチとして実装される場合があるため、ホスト装置１００、結合１０１、およびホスト／記憶装置インターフェース１８０は、統合されたスイッチを実装する。他の実施形態では、統合されたスイッチは、ホスト可視記憶装置１１０に関して透過スイッチとして動作可能であり、また、ホスト不可視記憶装置１２０に関して非透過スイッチとして同時に動作可能である。図１に示すように、ＰＣＩ−Ｅスイッチ（たとえばホスト／記憶装置インターフェース１８０）は、記憶装置１１０および１２０とは異なる独立した要素である。
【００１８】
したがって、参照により本明細書に組み込まれている、２０１２年１２月７日に出願された関連する米国特許出願第１３／７０２，９７６号は、１つまたは複数のＰＣＩ−ＥまたはＩｎｆｉｎｉＢａｎｄスイッチ（たとえばホスト／記憶装置インターフェース１８０）を含む拡張可能な記憶システムについて記述している。ＰＣＩ−Ｅスイッチが非透過スイッチである場合、スイッチより下のトポロジの詳細、および個々の記憶装置の構成の詳細は、（たとえば接続された装置のホスト初期化検出において）ホスト装置から隠される。したがって、非透過スイッチを用いると、記憶装置１１０および１２０がすべて重複する装置かもしれないが、記述した実施形態では、すべての記憶装置とのホスト通信をすべて扱うために、マスタ装置（たとえばプライマリ・エージェント）として動作する記憶装置の１つを選択し、ホスト装置から隠されている（たとえばセカンダリ・エージェントとして）スレーブ装置として動作する記憶装置の残りを選択することができる。さらに、記憶装置の集合的なグループは、ホスト装置には単一の記憶装置として見える場合がある。
【００１９】
記述した他の実施形態では、通信で、より高いレベル（たとえばＰＣＩ−Ｅ階層）を必要とせずに記憶装置のそれぞれの間でポイントツーポイント・リンクを用いるように、「近隣から近隣の」通信を用いることによって、独立したＰＣＩ−Ｅスイッチを用いることなく、拡張可能な機能を提供することができる。そのようなルーティングまたはスイッチングなどの手法によって、記憶装置間のすべての接続がポイントツーポイントでも、記憶装置のすべてが相互に通信することができる。
【００２０】
図２は、代表的な記憶装置１１０のブロック図を示している。ホスト装置１００は、結合１０１を介して記憶装置１１０に結合される。結合１００は、ＰＨＹインターフェース２０２と通信する。図２に示すように、ＰＨＹインターフェース２０２は、１つまたは複数の上流の物理レイヤ・リンクまたはポート（ＰＨＹ）（１０１として図示）、および１つまたは複数の下流のＰＨＹ（２１８（１）〜２１８（Ｎ）として図示）を含む。図２に示すように、記憶装置１１０は、半導体記憶装置２１０（たとえばＳＳＤ）、磁気記憶装置２１２（たとえばＨＤＤまたはテープ・ライブラリ）、および光学的記憶装置２１４（たとえばＣＤまたはＤＶＤ）の１つまたは複数を含む大容量記憶装置２１６を含む。記憶装置１１０は、各個々の記憶装置２１０、２１２、および２１４と通信する、記憶装置インターフェース２０６を含む。論理的／物理的な翻訳モジュール２０４は、ホスト装置１００から受信した動作のための論理アドレスと大容量記憶装置２１６の物理アドレスとの間で翻訳する。記憶装置１１０は、また、サブ状態モジュール２２２およびサブ要求モジュール２２０を含み、その両方がＰＨＹインターフェース２０２と通信する。
【００２１】
記述した実施形態では、上流のＰＨＹ（たとえば１０１）は、ＰＣＩ−Ｅ階層を介してホスト装置（たとえば１００）と通信し、下流のＰＨＹ（たとえば２１８）は、他の記憶装置（たとえば複数の１１０）と通信する。代表的な実施形態では、たとえば、合計８つの構成可能なＰＨＹなど、固定された数の構成可能なＰＨＹを用いる場合があり、所与のＰＨＹは、上流リンクまたは下流リンクとして構成される場合がある。構成可能なＰＨＹを持つことで、ホスト１０１に伝達される帯域幅（たとえば上流接続）と拡張可能な記憶システムの容量（たとえば下流接続）との間の兼ね合いが可能になる。他の実施形態では、たとえば２つの上流ＰＨＹおよび６つの下流ＰＨＹなど、固定された数の上流ＰＨＹおよび固定された数の下流ＰＨＹを用いる場合がある。
【００２２】
様々な実施形態では、記憶装置（たとえば１１０）のＰＨＹ１０１および２１８の一部またはすべては、同じ速度（たとえば同じ最高速度）で動作可能の場合があり、またはそれぞれ異なる速度で動作可能な場合がある。たとえば、一部の実施形態では、ＰＣＩ−Ｅ  Ｇｅｎ１、Ｇｅｎ２、Ｇｅｎ３、またはＧｅｎ４、１０ＧＥ、ＩｎｆｉｎｉＢａｎｄ、ＳＡＳ、ＳＡＴＡ、または１つもしくは複数の記憶装置と通信するための非標準のプロトコルの１つまたは複数を独立してサポートすることをＰＨＹ１０１および２１８のそれぞれに許可する場合がある。ＰＨＹ１０１および２１８のそれぞれは、各記憶装置１１０内に統合された１つまたは複数のそれぞれのＰＨＹインターフェースに結合される。たとえば、ＰＨＹインターフェース２０２がＰＣＩ−Ｅインターフェースである場合、ＰＣＩ−Ｅインターフェースは、ルート・コンプレックス、転送ポイント、およびエンドポイントの１つまたは複数として通信するように構成可能である。転送ポイントは、転送ポイントが１つまたは複数のＰＣＩ−Ｅインターフェースの間でトラフィックを送信および受信することができるという点で、ルート・コンプレックスに似ている。ルート・コンプレックスは、加えて、独立したＰＣＩ−Ｅ階層のルートである。１つまたは複数の記憶装置（たとえば１１０）に結合されたホスト装置（たとえば１００）自体がルート・コンプレックスであるため、ホストに結合された１つまたは複数の記憶装置もルート・コンプレックスである場合、複数ルートのＰＣＩ−Ｅ階層が作成される。
【００２３】
複数の記憶装置１１０は、任意の数の異なる方法で接続される場合がある。図３〜５は、代表的な実施形態による拡張可能な記憶システムにおける複数の記憶装置の代表的なポイントツーポイント接続を示すブロック図である。図示するように、様々な実施形態において、ＰＨＹおよびＰＨＹコントローラは、図３に示すようなデイジー・チェーン（またはオプションとしてループ）、ホスト装置への固定された１対１の相互接続（図４に示す）、完全なクロスバー・トポロジ、部分的なクロスバー・トポロジ、マルチプレクサ・ネットワーク、それらの組み合わせ、または複数のハードウェア・デバイスを結合するための他の手法を介して結合される場合がある。一部の実施形態では、記憶装置の間の接続ネットワークは交換網である一方、他においては、記憶装置の間の接続ネットワークは、ルーテッド・ネットワークである。さらに、一部の実施形態では、記憶装置１１０の少なくとも一部は、異なる構成のＰＨＹ、または１つまたは複数の異なるタイプのＰＨＹを持つ（たとえばＰＣＩ−Ｅ、１０ＧＥ、ＩｎｆｉｎｉＢａｎｄ、ＳＡＳ、ＳＡＴＡなど）。
【００２４】
図３および図４に示すように、図３の記憶装置１１０（Ａ）〜１１０（Ｎ）、および図４の記憶装置１１０（１）〜１１０（Ｎ）は、転送ポイントとして構成された内部ＰＨＹインターフェースを持つ。図５は、エンドポイントとして構成されたＰＨＹインターフェースを持つ、記憶装置１１０．Ｚ１から１１０．ＺＮ以外は、記憶装置１１０のすべてが転送ポイントとして構成されたＰＨＹインターフェースを持つ階層的な結合を示している。したがって、記述した実施形態において、１つまたは複数の記憶装置１１０（たとえば図３の記憶装置１１０（Ａ）、図４の１１０（１）〜１１０（Ｎ）、図５の１１０．Ａ）は、ホスト装置１００に結合され、記憶装置のすべては、（たとえば図４に示す）ホスト装置１００に直接的に結合されるか、または、たとえばＰＣＩ−Ｅスイッチを用いることなく、他の記憶装置を介してホスト装置１００に間接的に結合される。
【００２５】
記憶装置１１０の少なくとも１つは、プライマリ・エージェントとして動作し、記憶装置１１０の少なくとも１つまたは複数は、セカンダリ・エージェントとして動作する。様々な実施形態において、１つまたは複数のプライマリ・エージェントは、セカンダリ・エージェントより、ホスト装置１００と直接的な、より直接的な、より短い、かつ／またはより低い遅延の接続を持つ。たとえば、図３に示すように、記憶装置１１０（Ａ）は、記憶装置１１０（Ｂ）〜１１０（Ｎ）のプライマリ・エージェントとして動作する場合がある。その理由は、たとえば、記憶装置１１０（Ａ）は、ホスト装置１００への直接的な接続を持っている一方、記憶装置１１０（Ｂ）〜１１０（Ｎ）は、デイジー・チェーンで相互に結合されているためである。図４に示すように、各記憶装置１１０（１）〜１１０（Ｎ）は、ホスト装置１００に対して直接的な接続を持っているため、記憶装置１１０（１）〜１１０（Ｎ）のすべてが自らプライマリ・エージェントとして動作することができる。ホストに対して直接的な接続を持つ各記憶装置は、ホストとの間の帯域幅を多数の記憶装置に合わせて直線的に拡張することを有利に可能にする。さらに、記憶装置の１つなど、記憶装置のサブセットをプライマリ・エージェントとして動作させ、他をセカンダリ・エージェントとして動作させることで、ホストが複数の独立した記憶装置を制御する必要なく、拡張可能な容量が有効になる。図５に示すように、記憶装置１１０．Ａは、記憶装置１１０．Ｂ１〜１１０．Ｂｎのプライマリ・エージェントとして動作する場合がある。その理由は、たとえば、記憶装置１１０．Ａは、ホスト装置１００に対して直接的な接続を持つ一方、記憶装置１１０．Ｂ１は、結合２１８（Ｃ１）などを介して結合された記憶装置（図示せず）のプライマリ・エージェントとして動作する場合があるためである。
【００２６】
記述した実施形態では、プライマリ・エージェントとセカンダリ・エージェントとの間の通信はすべて、ホスト装置１００には可視できない（したがって、ホスト装置１００のＰＣＩ−Ｅ階層には可視できない）近隣から近隣のトラフィックとして実行される。たとえば、図３に示すように、近隣から近隣のトラフィックはすべて、結合２１８（１）〜２１８（Ｎ）で実行され、ホスト装置１００に記憶装置１１０を結合する接続１０１では、近隣から近隣のトラフィックは実行されない。同様に、図４に示すように、近隣から近隣のトラフィックはすべて、結合２１８（１）〜２１８（Ｎ）で実行され、近隣から近隣のトラフィックは、ホスト装置１００に記憶装置１１０（１）〜１１０（Ｎ）を結合する結合１０１（１）〜１０１（Ｎ）では実行されない。同様に、図５に示すように、近隣から近隣のトラフィックはすべて、結合２１８（Ｂ１）〜２１８（Ｚｎ）で実行され、近隣から近隣のトラフィックは、ホスト装置１００に記憶装置１１０．Ａを結合する結合１０１では実行されない。
【００２７】
記述した実施形態では、近隣から近隣のトラフィックは、ホスト装置１００から記憶装置１１０の特定の１つへのプライマリ・エージェントによって受信されたコマンドおよび記憶装置１１０の特定の１つからプライマリ・エージェントへの応答（たとえば完了）、ホスト装置１００から受信されたコマンドから得た情報、同期またはハートビートなどのメンテナンス・トラフィック、ＲＡＩＤまたは他のデータ冗長制御またはデータのトラフィック（たとえばＲＡＩＤのデルタ）、および他のトラフィックの転送などの制御トラフィックである。たとえば、書き込みコマンドにより、記憶装置１１０の特定の１つでＲＡＩＤストライプの一部が更新されると、特定の記憶装置は、近隣から近隣のトラフィックとして、１つまたは複数の他の記憶装置（たとえば、ストライプのＲＡＩＤパリティを格納する記憶装置の１つ）にＲＡＩＤデルタを送信する。
【００２８】
図３〜図５に示すように、結合１０１および２１８は、オプションとしてまたは選択的に、異なる帯域幅および／または異なるプロトコルである。たとえば、ホスト装置１００への上流接続（たとえば結合１０１）は、典型的にはＰＣＩ−Ｅ  Ｇｅｎ４の場合がある一方、様々な記憶装置１１０の間での下流接続（たとえば結合２１８）は、典型的には、ＰＣＩ−Ｅ  Ｇｅｎ３、または１０ＧＥ、ＩｎｆｉｎｉＢａｎｄ、ＳＡＳなど異なるプロトコルの場合がある。いずれの結合も、相互に異なる帯域幅または異なる数の物理リンクを持つ場合がある。一部の実施形態では、結合１０１および２１８のいずれかの制御トラフィックは、比較的より低い帯域幅の側波帯結合を通じて転送できる場合がある一方、データ・トラフィックは、比較的より高い帯域幅の主要な帯域結合を通じて転送できる場合がある。したがって、いくつかの実施形態では、結合１０１および２１８のいずれも、特別設計の通信リンクとして実装される場合があり、または、たとえばＳＣＳＩ、ＳＡＳ、ＳＡＴＡ、ＵＳＢ、ＦＣ、イーサネット（たとえば１０ＧＥ）、ＩＥＥＥ８０２．１１、ＩＥＥＥ８０２．１５、ＩＥＥＥ８０２．１６、ＰＣＩ−Ｅ、ＳＲＩＯ、ＩｎｆｉｎｉＢａｎｄ、または他の類似のインターフェース・リンクなど、標準の通信プロトコルに準拠するリンクとして実装される場合がある。
【００２９】
一部の実施形態では、図４に示すように、ホスト装置１００の上流の帯域幅は、様々な記憶装置１１０の集合的な提供可能な帯域幅に本質的に等しい。一部の実施形態では、図５に示すようになど、ホスト装置１００に通信的に接近している記憶装置１１０（たとえば記憶装置１１０．Ａ）は、ホスト装置１００から通信的に遠い記憶装置（たとえば記憶装置１１０．Ｚ１）より高い帯域幅に対して構成される。一部の実施形態では、記憶装置１１０のそれぞれは、異なる容量、機能を持っている場合があり、または半導体ディスク（ＳＳＤ）、ハード・ディスク・ドライブ（ＨＤＤ）、磁気抵抗ランダム・アクセス・メモリ（ＭＲＡＭ）、テープ・ライブラリ、磁気および半導体のハイブリッド記憶システム、またはそれらの一部の組み合わせなど、異なるタイプの記憶媒体として実装される場合がある。
【００３０】
一部の実施形態では、記憶装置１１０の間の接続ネットワークは、ＰＣＩ−Ｅプロトコル（または他の標準プロトコル）を、（たとえば、図３および図４のオプションの結合２１８（Ｎ）に示すように）円形（ループ）の相互接続を用いるなど、非標準の方法で使用する。他の実施形態では、記憶装置１１０の間の接続ネットワークは、パフォーマンスを有利に改善するために、非標準の帯域幅、シグナリング、コマンド、またはプロトコル拡張を使用するように有効化される。一般的に、記憶装置１１０の間の接続ネットワークは、帯域幅、遅延、および電力の１つまたは複数において効率的な方法で装置間通信を提供するために有効化される。
【００３１】
したがって、本明細書に記述するように、記述した実施形態は、連鎖された拡張可能な記憶システムのデータにアクセスする。１つまたは複数の記憶装置のプライマリ・エージェントは、プライマリ・エージェントに結合されたホストから論理アドレスを含むホスト要求を受信する。プライマリ・エージェントは、論理アドレスに基づいて、記憶装置の少なくとも１つにおいて対応する物理アドレスを決定し、物理アドレスに基づいて、記憶装置の各決定された物理アドレスに対するサブ要求を生成する。プライマリ・エージェントは、ホストから独立して動作可能な記憶装置のインターフェース・ネットワークを介して、記憶装置にサブ要求を送信する。記憶装置のインターフェース・ネットワークは、プライマリ・エージェントに記憶装置を結合するピアツーピア・ネットワークである。プライマリ・エージェントは、サブ要求に応じてサブ状態を受信し、全体的な状態を決定する。スイッチを用いずにホストが記憶装置に結合されるように、プライマリ・エージェントは、ホストに全体的な状態を提供する。
【００３２】
本明細書において「一実施形態」または「実施形態」と記述した場合、実施形態に関して記述した特定の特徴、構造、または特性を少なくとも１つの実施形態に含めることができることを意味する。本明細書の様々な場所において「一実施形態の」という語句が使われているが、それらすべてが必ずしも同じ実施形態を表しているものではなく、また必然的に他の実施形態に相互排他的な独立または代替の実施形態ではない。同じことが「実装」という用語にも適用される。
【００３３】
本明細書で使用する場合、本明細書において使用する「代表的」という言葉は、例、事例、または実例としての機能を果たすことを意味するために使用している。本明細書に「代表的」と記述した態様または設計は、必ずしも他の態様または設計より好ましかったり、または有利だったりするものと解釈するべきでない。むしろ、代表的という単語の使用は、具体的な方法で概念を提示することを意図するものである。
【００３４】
代表的な実施形態について、デジタル信号プロセッサ、マイクロコントローラ、または汎用コンピュータとして可能な実装を含む、ソフトウェア・プログラムの処理ブロックに関して記述しているが、記述した実施形態はそのように限定されるものではない。当業者には明白なように、ソフトウェアの様々な機能も回路のプロセスとして実装する場合がある。そのような回路は、たとえば、単一の集積回路、マルチチップ・モジュール、単一のカード、または複数カードの回路パックに用いられる場合がある。
【００３５】
記述した実施形態は、また、それらの方法を実施するための方法および装置の形で具体化される場合がある。記述した実施形態は、また、磁気記憶装置、光記録媒体、半導体メモリ、フロッピー・ディスク、ＣＤ−ＲＯＭ、ハード・ドライブ、または他の非過渡的な機械可読の記憶媒体など、非過渡的な有形媒体に統合されたプログラム・コードの形で具体化される場合があり、プログラム・コードがコンピュータなどのマシンにロードされ実行されると、マシンは、記述した実施形態を実施するための装置になる。記述した実施形態は、また、たとえば、非過渡的な機械可読の記憶媒体に格納する、マシンにロードし、かつ／もしくはマシンによって実行される、または電気配線またはケーブル布線を通じて、ファイバ・オプティクスを通じて、もしくは電磁放射を介してなど、何らかの伝送媒体またはキャリアを通じて送信されるなど、プログラム・コードの形で具体化することができ、プログラム・コードがコンピュータなどのマシンにロードされ実行されると、マシンは、記述した実施形態を実施するための装置になる。汎用プロセッサに実装された場合、特定の論理回路と同様に動作する一意の装置を提供するために、プログラム・コード・セグメントはプロセッサと結合する。記述した実施形態は、また、媒体を通じて電気的または光学的に送信されるビット列または信号値の他のシーケンス、記述した実施形態の方法および／または装置を使用して生成した、磁気記憶装置などに格納された磁場変動の形で具体化する場合がある。
【００３６】
本明細書に記述した代表的な方法のステップは、記述した順序で実行することを必ずしも要求されるものではなく、そのような方法のステップの順序は、単に代表的なものと理解されるべきであることを理解されるだろう。同様に、そのような方法に追加的なステップを含める場合があり、特定のステップは、様々な記述した実施形態に一致する方法において省略したりまたは組み合わせたりする場合がある。
【００３７】
要素および標準に関して本明細書に使用する場合、「互換」という用語は、標準によって完全にまたは部分的に指定された方法で、要素が他の要素と通信することを意味し、標準によって指定された方法で、他の要素と通信する能力が十分にあるものと他の要素によって認識されるだろう。互換性を持つ要素は、標準によって指定された方法で内部的に動作する必要はない。特に明示的に記述しない限り、各数値および範囲は、「ほぼ」または「約」という単語が値または範囲の値の前にあるかのように、近似であると解釈されるべきである。
【００３８】
また、この記述のため、「結合する」、「結合」「結合された」、「接続する」、「接続」、「接続された」という用語が、当技術分野で既知の方法、または２つ以上の要素の間でエネルギーを転送することが可能な後に開発された方法を示しており、必須ではないが、１つまたは複数の追加的な要素の挿入が考えられる。逆に、「直接的に結合された」、「直接的に接続された」などの用語は、そのような追加的な要素がないことを意味する。信号および対応するノードまたはポートは、同じ名前で示される場合があり、本明細書の目的のために交換可能である。
【００３９】
記述した実施形態の性質について説明するために記述および図示した部分の詳細、材料、および配置への様々な変更は、以下の特許請求の範囲に表現された範囲から逸脱することなく、当業者によって加えることができる場合があることをさらに理解されるだろう。
【図１】
2014154157.tif 000004
【図２】
2014154157.tif 000005
【図３】
2014154157.tif 000006
【図４】
2014154157.tif 000007
【図５】
2014154157.tif 000008
【外国語明細書】
2014154157.tif 000009
2014154157.tif 000010
2014154157.tif 000011
2014154157.tif 000012
2014154157.tif 000013
2014154157.tif 000014
2014154157.tif 000015
2014154157.tif 000016
2014154157.tif 000017
2014154157.tif 000018
2014154157.tif 000019
2014154157.tif 000020
2014154157.tif 000021
2014154157.tif 000022
2014154157.tif 000023
2014154157.tif 000024
2014154157.tif 000025
2014154157.tif 000026
2014154157.tif 000027
2014154157.tif 000028