(57)【要約】【課題】複数のストレージ装置に亘って消去コード保護を提供するためのストレージシステム及びその動作方法を提供する。【解決手段】一つのストレージ（記憶）装置に格納されたデータを他の記憶装置のデータから復旧するに充分な消去コードを格納するよう構成された複数の記憶装置と、正常作動中各々のストレージ命令の各々のアドレスに沿い、記憶装置インタフェースを通じ受信したストレージ命令を複数の記憶装置各々に伝送するデータスイッチと、コントローラーとを有し、コントローラーは複数の記憶装置の内のいずれかの記憶装置が故障又は不在の場合、これら記憶装置に送られたストレージ命令をコントローラーに伝送するようデータスイッチを再構成し、受信した各ストレージ命令に応答し、データスイッチ及び記憶装置インターフェースを通じ、存在し正常に作動したら、故障が発生したり存在しない記憶装置が伝送したはずのものと同じ命令応答を伝送する。【選択図】  図１b
2018116704.tif 000002
【特許請求の範囲】
【請求項１】
ストレージインタフェースを含むストレージシステムであって、
前記ストレージシステムは、何れか一つのストレージ装置に格納されたデータを他のストレージ装置のデータから復旧するに充分な消去コードを格納するように構成された複数のストレージ装置と、
正常作動中にそれぞれのストレージ命令のそれぞれのアドレスに沿って、前記ストレージインタフェースを通じて受信した前記ストレージ命令を前記複数のストレージ装置それぞれに伝送するデータスイッチと、
コントローラーと、を有し、
前記コントローラーは、前記複数のストレージ装置の内のいずれかのストレージ装置が故障又は不在（ａｂｓｅｎｔ）の場合、
前記故障又は不在のストレージ装置に送られたストレージ命令をコントローラーに伝送するように前記データスイッチを再構成し、
受信した各ストレージ命令に応答して、前記データスイッチ及び前記ストレージインターフェースを通じて、もし、存在し且つ正常に作動したら、故障が発生したり、存在しないストレージ装置が伝送したはずのものと同じ命令応答を伝送することを特徴とするストレージシステム。
【請求項２】
前記ストレージ装置のそれぞれは、正常に動作する間、データブロックを含む記録命令（ｗｒｉｔｅ  ｃｏｍｍａｎｄ）を受信すると、前記データブロックを格納し、前記データブロックのコピーを前記コントローラーに伝送することを特徴とする請求項１に記載のストレージシステム。
【請求項３】
前記コントローラーは、前記複数のストレージ装置のうち、第１ストレージ装置からデータブロックのコピーを受信すると、前記データブロックを充分に復旧できる消去コードを生成し、前記消去コードを前記複数のストレージ装置の中から前記第１ストレージ装置と異なる一つ以上のストレージ装置に格納することを特徴とする請求項２に記載のストレージシステム。
【請求項４】
前記複数のストレージ装置のうち、第１ストレージ装置は、正常動作中にデータブロックを含む記録命令を受信すると、
前記データブロックを格納し、
前記データブロックを充分に復旧できる消去コードを生成し、
前記消去コードを前記複数のストレージ装置の中から前記第１ストレージ装置と異なる一つ以上のストレージ装置に格納することを特徴とする請求項１に記載のストレージシステム。
【請求項５】
前記複数のストレージ装置のうち、第１ストレージ装置は、消去コードを格納し、
前記データスイッチは、正常動作中に前記ストレージインターフェースを通じて受信した各ストレージ命令をストレージ命令の各アドレスに沿って、前記複数のストレージ装置のサブセットの各ストレージ装置に伝送し、
前記第１ストレージ装置は、前記サブセットに含まれないことを特徴とする請求項１に記載のストレージシステム。
【請求項６】
前記コントローラーは、前記複数のストレージ装置の内のいずれかのストレージ装置が故障又は不在の場合、データブロックを要請する受信された読込命令（ｒｅａｄ  ｃｏｍｍａｎｄ）に応答して、
前記複数のストレージ装置の内の存在し、且つ正常作動するストレージ装置から消去コードを読み込み、
前記データブロックを復旧し、
命令応答の一部として前記データスイッチ及び前記ストレージインターフェースを通じて前記復旧されたデータブロックを伝送することを特徴とする請求項１に記載のストレージシステム。
【請求項７】
前記ストレージ装置のそれぞれは、存在ピン（ｐｒｅｓｅｎｃｅ  ｐｉｎ）を含むコネクタを含み、
前記存在ピンは、前記コントローラーのそれぞれのセンシングピンと接続され、
前記コントローラーは、前記それぞれのセンシングピンの電圧又は電流の変化によって前記ストレージ装置の内の何れか一つの除去（ｒｅｍｏｖａｌ）を検出することを特徴とする請求項１に記載のストレージシステム。
【請求項８】
前記データスイッチは、イーサネットスイッチであることを特徴とする請求項１に記載のストレージシステム。
【請求項９】
前記データスイッチは、前記コントローラーのポートに接続されたＰＣＩｅコントロールポートを含み、
前記データスイッチは、前記ＰＣＩｅコントロールポートを通じて前記コントローラーから構成命令（ｃｏｎｆｉｇｕｒａｔｉｏｎ  ｃｏｍｍａｎｄ）を受信することを特徴とする請求項１に記載のストレージシステム。
【請求項１０】
ＰＣＩｅスイッチをさらに含み、
前記複数のストレージ装置のそれぞれは、前記ＰＣＩｅスイッチを通じて前記コントローラーと接続されることを特徴とする請求項１に記載のストレージシステム。
【請求項１１】
前記コントローラーは、ベースボード管理コントローラーであることを特徴とする請求項１に記載のストレージシステム。
【請求項１２】
ストレージインターフェースを有し、複数のストレージ装置、データスイッチ、及びコントローラーを含むストレージシステムを動作させる方法であって、
正常作動中に前記ストレージインターフェースを通じて受信したストレージ命令を各ストレージ命令のそれぞれのアドレスに沿って、前記複数のストレージ装置のそれぞれに伝送するステップと、
前記複数のストレージ装置のうち、いずれかのストレージ装置が故障又は不在（ａｂｓｅｎｔ）の場合、
前記故障又は不在のストレージ装置に送られたストレージ命令をコントローラーに伝送するように前記データスイッチを再構成するステップと、
前記コントローラーを用いてそれぞれの受信したストレージ命令に応答して前記データスイッチ及び前記ストレージインターフェースを通じて、もし存在し、且つ正常に作動したら、故障が発生したり、存在しないストレージ装置が伝送したはずのものと同じ命令応答を伝送するステップと、を有することを特徴とするストレージシステムの動作方法。
【請求項１３】
正常作動中に前記複数のストレージ装置の内の一つのストレージ装置によって前記データブロックを含む記録命令（ｗｒｉｔｅ  ｃｏｍｍａｎｄ）を受信した場合、
前記一つのストレージ装置によって前記データブロックを格納するステップと、
前記一つのストレージ装置によって前記データブロックのコピーを前記コントローラーに伝送するステップと、をさらに有することを特徴とする請求項１２に記載のストレージシステムの動作方法。
【請求項１４】
前記コントローラーを用いて前記複数のストレージ装置の内の第１ストレージ装置からデータブロックのコピーが受信されると、
前記コントローラーによって前記データブロックを充分に復旧できる消去コードを生成するステップと、
前記コントローラーによって前記消去コードを前記複数のストレージ装置のうち、前記第１ストレージ装置と異なる一つ以上のストレージ装置に格納するステップと、をさらに有することを特徴とする請求項１３に記載のストレージシステムの動作方法。
【請求項１５】
正常作動の間、前記複数のストレージ装置の内の第１ストレージ装置にデータブロックを含む記録命令が受信されると、
前記第１ストレージ装置によって前記データブロックを格納するステップと、
前記第１ストレージ装置によって前記データブロックを復旧するに充分な消去コードが生成されるステップと、
前記第１ストレージ装置によって前記複数のストレージ装置のうち、前記第１ストレージ装置と異なる一つ以上のストレージ装置に前記消去コードを格納するステップと、をさらに有することを特徴とする請求項１２に記載のストレージシステムの動作方法。
【請求項１６】
前記複数のストレージ装置の内の第１ストレージ装置は、消去コードを格納し、
正常作動中に前記ストレージインターフェースを通じて受信された各ストレージ命令を前記ストレージ命令の各アドレスに沿って、前記複数のストレージ装置のサブセットのストレージ装置のそれぞれに伝送するステップをさらに有し、
前記第１ストレージ装置は、前記サブセットに含まれないことを特徴とする請求項１２に記載のストレージシステムの動作方法。
【請求項１７】
前記ストレージシステムは、ＰＣＩｅスイッチをさらに有し、
前記コントローラーは、前記ＰＣＩｅスイッチを通じて前記ストレージ装置と接続され、
前記複数のストレージ装置の内のいずれかのストレージ装置が故障又は不在の場合、
前記コントローラーがデータブロックを要請する読込命令を受信したことに応答して、
前記コントローラーが前記複数のストレージ装置の内の存在し、且つ正常作動するストレージ装置から消去コードを前記ＰＣＩｅスイッチを通じて読み込むステップと、
前記コントローラーによって前記データブロックを復旧するステップと、
前記コントローラーによって命令応答の一部として前記データスイッチ及び前記ストレージインタフェースを通じて前記復旧されたデータブロックを伝送するステップと、をさらに有することを特徴とする請求項１２に記載のストレージシステムの動作方法。
【請求項１８】
前記ストレージ装置のそれぞれは、前記コントローラーのそれぞれのセンシングピンに接続される存在ピン（ｐｒｅｓｅｎｃｅ  ｐｉｎ）を含み、
前記コントローラーによって前記それぞれのセンシングピンの電圧又は電流の変化によって前記ストレージ装置の内のいずれか一つの除去を検出するステップをさらに有することを特徴とする請求項１７に記載のストレージシステムの動作方法。
【請求項１９】
ストレージインターフェースを含むストレージシステムであって、
前記ストレージシステムは、いずれか一つのストレージ装置に格納されたデータを他のストレージ装置のデータから復旧するに充分な消去コードを格納するように構成された複数のストレージ装置と、
正常作動中にそれぞれのストレージ命令のそれぞれのアドレスに沿って、前記ストレージインターフェースを通じて受信した前記ストレージ命令を前記複数のストレージ装置それぞれに伝送するデータスイッチと、
制御手段と、を有し、
前記複数のストレージ装置の内のいずれかのストレージ装置の故障又は不在の場合、
前記制御手段は、前記故障又は不在のストレージ装置に送られたストレージ命令を制御手段に伝送するように前記データスイッチを再構成し、
受信した各ストレージ命令に応答して、前記データスイッチ及び前記ストレージインターフェースを通じて、もし、存在し、且つ正常に作動したら、故障が発生したり、存在しないストレージ装置が伝送したはずのものと同じ命令応答を伝送することを特徴とするストレージシステム。
【請求項２０】
前記ストレージ装置のそれぞれは、正常作動の間、データブロックを含む記録命令を受信すると、前記データブロックを格納し、前記制御手段に前記データブロックのコピーを伝送することを特徴とする請求項１９に記載のストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データストレージ（記憶）装置に関するものであり、特に、消去コード保護（Ｅｒａｓｕｒｅ  ｃｏｄｅ  ｐｒｏｔｅｃｔｉｏｎ）を提供するコントローラーを有するストレージシステムに関する。
【背景技術】
【０００２】
非揮発性メモリエキスプレス（Ｎｏｎｖｏｌａｔｉｌｅ  ｍｅｍｏｒｙ  ｅｘｐｒｅｓｓ、ＮＶＭｅ）オーバーファブリック（ＮＶＭ−ｆ）構成、例えば、イーサネット（登録商標、以下省略）付着型ＮＶＭｅソリッドステートドライブ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ、ＳＳＤ）を用いる構成で、イーサネット及びＳＳＤの費用及び性能を改善させることは難しい。
例えば、５０Ｇ／１００Ｇ技術の登場でイーサネット速度は増加した一方、ＳＳＤの性能はＰＣＩエキスプレス（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｅｘｐｒｅｓｓ、ＰＣＩｅ）インターフェース及びＮＡＮＤｓ技術によって異なりうる。
【０００３】
ファブリック付着型ＳＳＤは、各デバイスがポイントツーポイント（ｐｏｉｎｔ−ｔｏ−ｐｏｉｎｔ）接続を提供する可能性があるため、消去コードデータ保護をサポートするための追加の独自の設計課題を提示する必要がある。
【０００４】
しかしながら、データ保護を提供するために、ＲＡＩＤオンチップ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋ  Ｏｎ  Ｃｈｉｐ、ＲＯＣ）注文型半導体（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ、ＡＳＩＣ）を使用することができるが、レイテンシ（ｌａｔｅｎｃｙ）及び費用が増加し、性能が低下する可能性があるという問題がある。
従って、複数のストレージ装置にデータを格納するための改善されたシステム及び方法が要求されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許第９５１９５７８号明細書
【特許文献２】米国特許第９５２９５４２号明細書
【特許文献３】米国特許出願公開第２０１５／０２５５１３０号明細書
【特許文献４】米国特許出願公開第２０１６／０１６２２０２号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、上記従来のストレージシステムにおける課題点に鑑みてなされたものであって、本発明の目的は、複数のストレージ装置に亘って消去コード保護を提供するためのストレージシステム及びその動作方法を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するためになされた本発明によるストレージシステムは、ストレージインタフェースを含むストレージシステムであって、前記ストレージシステムは、何れか一つのストレージ装置に格納されたデータを他のストレージ装置のデータから復旧するに充分な消去コードを格納するように構成された複数のストレージ装置と、正常作動中にそれぞれのストレージ命令のそれぞれのアドレスに沿って、前記ストレージインタフェースを通じて受信した前記ストレージ命令を前記複数のストレージ装置それぞれに伝送するデータスイッチと、コントローラーと、を有し、前記コントローラーは、前記複数のストレージ装置の内のいずれかのストレージ装置が故障又は不在（ａｂｓｅｎｔ）の場合、前記故障又は不在のストレージ装置に送られたストレージ命令をコントローラーに伝送するように前記データスイッチを再構成し、受信した各ストレージ命令に応答して、前記データスイッチ及び前記ストレージインターフェースを通じて、もし、存在し且つ正常に作動したら、故障が発生したり、存在しないストレージ装置が伝送したはずのものと同じ命令応答を伝送することを特徴とする。
【０００８】
前記ストレージ装置のそれぞれは、正常に動作する間、データブロックを含む記録命令（ｗｒｉｔｅ  ｃｏｍｍａｎｄ）を受信すると、前記データブロックを格納し、前記データブロックのコピーを前記コントローラーに伝送することが好ましい。
前記コントローラーは、前記複数のストレージ装置のうち、第１ストレージ装置からデータブロックのコピーを受信すると、前記データブロックを充分に復旧できる消去コードを生成し、前記消去コードを前記複数のストレージ装置の中から前記第１ストレージ装置と異なる一つ以上のストレージ装置に格納することが好ましい。
前記複数のストレージ装置のうち、第１ストレージ装置は、正常動作中にデータブロックを含む記録命令を受信すると、前記データブロックを格納し、前記データブロックを充分に復旧できる消去コードを生成し、前記消去コードを前記複数のストレージ装置の中から前記第１ストレージ装置と異なる一つ以上のストレージ装置に格納することが好ましい。
前記複数のストレージ装置のうち、第１ストレージ装置は、消去コードを格納し、前記データスイッチは、正常動作中に前記ストレージインターフェースを通じて受信した各ストレージ命令をストレージ命令の各アドレスに沿って、前記複数のストレージ装置のサブセットの各ストレージ装置に伝送し、前記第１ストレージ装置は、前記サブセットに含まれないことが好ましい。
前記コントローラーは、前記複数のストレージ装置の内のいずれかのストレージ装置が故障又は不在の場合、データブロックを要請する受信された読込命令（ｒｅａｄ  ｃｏｍｍａｎｄ）に応答して、前記複数のストレージ装置の内の存在し、且つ正常作動するストレージ装置から消去コードを読み込み、前記データブロックを復旧し、命令応答の一部として前記データスイッチ及び前記ストレージインターフェースを通じて前記復旧されたデータブロックを伝送することが好ましい。
【０００９】
前記ストレージ装置のそれぞれは、存在ピン（ｐｒｅｓｅｎｃｅ  ｐｉｎ）を含むコネクタを含み、前記存在ピンは、前記コントローラーのそれぞれのセンシングピンと接続され、前記コントローラーは、前記それぞれのセンシングピンの電圧又は電流の変化によって前記ストレージ装置の内の何れか一つの除去（ｒｅｍｏｖａｌ）を検出することが好ましい。
前記データスイッチは、イーサネットスイッチであることが好ましい。
前記データスイッチは、前記コントローラーのポートに接続されたＰＣＩｅコントロールポートを含み、前記データスイッチは、前記ＰＣＩｅコントロールポートを通じて前記コントローラーから構成命令（ｃｏｎｆｉｇｕｒａｔｉｏｎ  ｃｏｍｍａｎｄ）を受信することが好ましい。
ＰＣＩｅスイッチをさらに含み、前記複数のストレージ装置のそれぞれは、前記ＰＣＩｅスイッチを通じて前記コントローラーと接続されることが好ましい。
前記コントローラーは、ベースボード管理コントローラーであることが好ましい。
【００１０】
上記目的を達成するためになされた本発明によるストレージシステムの動作方法は、ストレージインターフェースを有し、複数のストレージ装置、データスイッチ、及びコントローラーを含むストレージシステムを動作させる方法であって、正常作動中に前記ストレージインターフェースを通じて受信したストレージ命令を各ストレージ命令のそれぞれのアドレスに沿って、前記複数のストレージ装置のそれぞれに伝送するステップと、前記複数のストレージ装置のうち、いずれかのストレージ装置が故障又は不在（ａｂｓｅｎｔ）の場合、前記故障又は不在のストレージ装置に送られたストレージ命令をコントローラーに伝送するように前記データスイッチを再構成するステップと、前記コントローラーを用いてそれぞれの受信したストレージ命令に応答して前記データスイッチ及び前記ストレージインターフェースを通じて、もし存在し、且つ正常に作動したら、故障が発生したり、存在しないストレージ装置が伝送したはずのものと同じ命令応答を伝送するステップと、を有することを特徴とする。
【００１１】
正常作動中に前記複数のストレージ装置の内の一つのストレージ装置によって前記データブロックを含む記録命令（ｗｒｉｔｅ  ｃｏｍｍａｎｄ）を受信した場合、前記一つのストレージ装置によって前記データブロックを格納するステップと、前記一つのストレージ装置によって前記データブロックのコピーを前記コントローラーに伝送するステップと、をさらに有することが好ましい。
前記コントローラーを用いて前記複数のストレージ装置の内の第１ストレージ装置からデータブロックのコピーが受信されると、前記コントローラーによって前記データブロックを充分に復旧できる消去コードを生成するステップと、前記コントローラーによって前記消去コードを前記複数のストレージ装置のうち、前記第１ストレージ装置と異なる一つ以上のストレージ装置に格納するステップと、をさらに有することが好ましい。
正常作動の間、前記複数のストレージ装置の内の第１ストレージ装置にデータブロックを含む記録命令が受信されると、前記第１ストレージ装置によって前記データブロックを格納するステップと、前記第１ストレージ装置によって前記データブロックを復旧するに充分な消去コードが生成されるステップと、前記第１ストレージ装置によって前記複数のストレージ装置のうち、前記第１ストレージ装置と異なる一つ以上のストレージ装置に前記消去コードを格納するステップと、をさらに有することが好ましい。
前記複数のストレージ装置の内の第１ストレージ装置は、消去コードを格納し、正常作動中に前記ストレージインターフェースを通じて受信された各ストレージ命令を前記ストレージ命令の各アドレスに沿って、前記複数のストレージ装置のサブセットのストレージ装置のそれぞれに伝送するステップをさらに有し、前記第１ストレージ装置は、前記サブセットに含まれないことが好ましい。
【００１２】
前記ストレージシステムは、ＰＣＩｅスイッチをさらに有し、前記コントローラーは、前記ＰＣＩｅスイッチを通じて前記ストレージ装置と接続され、前記複数のストレージ装置の内のいずれかのストレージ装置が故障又は不在の場合、前記コントローラーがデータブロックを要請する読込命令を受信したことに応答して、前記コントローラーが前記複数のストレージ装置の内の存在し、且つ正常作動するストレージ装置から消去コードを前記ＰＣＩｅスイッチを通じて読み込むステップと、前記コントローラーによって前記データブロックを復旧するステップと、前記コントローラーによって命令応答の一部として前記データスイッチ及び前記ストレージインタフェースを通じて前記復旧されたデータブロックを伝送するステップと、をさらに有することが好ましい。
前記ストレージ装置のそれぞれは、前記コントローラーのそれぞれのセンシングピンに接続される存在ピン（ｐｒｅｓｅｎｃｅ  ｐｉｎ）を含み、前記コントローラーによって前記それぞれのセンシングピンの電圧又は電流の変化によって前記ストレージ装置の内のいずれか一つの除去を検出するステップをさらに有することが好ましい。
【００１３】
また、上記目的を達成するためになされた本発明によるストレージシステムは、ストレージインターフェースを含むストレージシステムであって、前記ストレージシステムは、いずれか一つのストレージ装置に格納されたデータを他のストレージ装置のデータから復旧するに充分な消去コードを格納するように構成された複数のストレージ装置と、正常作動中にそれぞれのストレージ命令のそれぞれのアドレスに沿って、前記ストレージインターフェースを通じて受信した前記ストレージ命令を前記複数のストレージ装置それぞれに伝送するデータスイッチと、制御手段と、を有し、前記複数のストレージ装置の内のいずれかのストレージ装置の故障又は不在の場合、前記制御手段は、前記故障又は不在のストレージ装置に送られたストレージ命令を制御手段に伝送するように前記データスイッチを再構成し、受信した各ストレージ命令に応答して、前記データスイッチ及び前記ストレージインターフェースを通じて、もし、存在し、且つ正常に作動したら、故障が発生したり、存在しないストレージ装置が伝送したはずのものと同じ命令応答を伝送することを特徴とする。
【００１４】
前記ストレージ装置のそれぞれは、正常作動の間、データブロックを含む記録命令を受信すると、前記データブロックを格納し、前記制御手段に前記データブロックのコピーを伝送することが好ましい。
【発明の効果】
【００１５】
本発明に係るストレージシステム及びその動作方法によれば、消去コードはストレージ装置の内の一つが故障になったり不在（ａｂｓｅｎｔ）／除去（ｒｅｍｏｖａｌ）になった場合に、格納されたデータを保護するためにストレージシステムで使用され、また、消去コードは、一般的に保護するデータとは別途のストレージ装置に格納でき、それにより、いずれかのストレージ装置の故障又は不在又は除去によってデータが損失されずに済み、消去コードを格納するディスクが故障したり不在又は除去になってもデータは影響を受けず、また、データを格納したディスクが故障にしたり不在又は除去になっても、データは消去コードから復旧できるという効果がある。
【００１６】
また、イーサネットスイッチは、消去コードを格納するストレージ装置をリモートホストから隠すように構成され、リモートホストに見えないようにすることができ、このような構成で、リモートホストの観点からストレージシステムは、物理的ストレージ装置に存在することより少ないストレージ装置を含むように見え得、ストレージ装置の信頼性は消去コードを格納するストレージ装置によって提供された消去コード保護によって向上するという効果がある。
【図面の簡単な説明】
【００１７】
【図１ａ】本発明の一実施形態によるリモートホストに接続されたストレージシステムの概略を示すブロック図である。
【図１ｂ】本発明の一実施形態によるリモートホストに（イーサネットＳＳＤシャーシで）接続されたストレージシステムの概略を示すブロック図である。
【図１ｃ】本発明の一実施形態によるリモートホストに接続されたストレージシステムの概略を示すブロック図である。
【図２】本発明の一実施形態によるストレージシステムの開始シーケンスの動作を説明するためのフローチャートである。
【図３】本発明の一実施形態によるストレージシステムの動作を説明するためのフローチャートである。
【発明を実施するための形態】
【００１８】
次に、本発明に係るストレージシステム及びその動作方法を実施するための形態の具体例を図面を参照しながら説明する。
【００１９】
添付した図に関連して、以下に説明する詳細な説明は、本発明によって提供される複数のストレージ装置に亘って消去コード保護を提供する制御プレーン方法及び装置の例示的な実施形態として意図されたものであり、本発明の構成に用いられる唯一の形態を示すものではない。
説明は例示した実施形態に関連して本発明の特徴を説明する。
しかしながら、本発明の思想及び範囲内に含まれるように意図された他の実施形態によって同じであったり、均等な機能及び構造になることを理解すべきである。
本明細書の他の部分で言及するように、同一要素番号は同一要素又は特徴を示すためのものである。
【００２０】
制御プレーンは、例えば、ルータで下記のようにデータプレーンと区別できる。
制御プレーンは、トラフィック（例えば、データトラフィック）が伝送される場所に関する決定を下すことができる。
制御プレーンの機能は、伝送テーブル情報のシステム構成、管理及び交換を含み得る。
制御プレーンは、ネットワークのシグナルリング（Ｓｉｇｎａｌｉｎｇ）でありうる。
制御機能は、到着するそれぞれの個別データパケットに対して行われないこともあるので、厳格な速度制約を持たないこともあり、データプレーンの機能より時間に敏感ではない。
【００２１】
フォワーディングプレーン（Ｆｏｒｗａｒｄｉｎｇ  ｐｌａｎｅ）とも呼ばれるデータプレーンは、制御プレーンロジックによって選ばれた目的地ネットワークの経路に沿ってトラフィックを次のホップ（Ｈｏｐ）に伝送できる。
データプレーンパケットはルータを通過し得る。
ルータ／スイッチは、入力及び出力フレーム及びパケットを処理するために、制御プレーンが構築したものを使用する。
ストレージシステムにて、ストレージシステムの制御プレーンとストレージシステムのデータプレーンとの間で同様の区別をすることができる。
【００２２】
例えば、ＮＶＭＦに基づいたシステム又はシャーシで、全てのイーサネットポートはイーサネットＳＳＤ（ｅＳＳＤ）とローカルイーサネットスイッチの間で物理的に分割され、データプレーンになることもあり、ＰＣＩ−ｅレーンはｅＳＳＤを接続することに使用でき、ＰＣＩｅスイッチ及びコントローラー（以下で詳細に説明される）を通じて制御プレーンになり得る。
【００２３】
図１ａは、本発明の一実施形態によるリモートホストに接続されたストレージシステムの概略を示すブロック図である。
ストレージシステムは、イーサネットスイッチ１１０、ＰＣＩｅスイッチ１２０、複数のストレージ装置１０５、及びコントローラー１１５（例えば、ベースボード管理コントローラー、Ｂａｓｅｂｏａｒｄ  Ｍａｎａｇｅｍｅｎｔ  Ｃｏｎｔｒｏｌｌｅｒ：ＢＭＣ）を含む。
【００２４】
ここで、複数のストレージ装置１０５は、イーサネットスイッチ１１０及びＰＣＩｅスイッチ１２０と通信し、ＰＣＩｅスイッチ１２０はコントローラー１１５と通信する。
ストレージシステムは、リモートホスト１００に接続される。
イーサネットスイッチ１１０とコントローラー１１５の間に追加的な接続が生成され、消去コード保護機能を向上することができる。
【００２５】
より具体的には、図１ｂは、本発明の一実施形態によるリモートホストに（イーサネットインターフェース（イーサネットＳＳＤシャーシで））接続されたストレージシステムの概略を示すブロック図である。
複数のストレージ装置１０５は、イーサネットスイッチ１１０を通じてリモートホスト１００に接続される。
【００２６】
ストレージ装置１０５のそれぞれは、永続ストレージ（Ｐｅｒｓｉｓｔｅｎｔ  ｓｔｏｒａｇｅ）を提供することができ、即ち、電力が一時的に損失した場合でもデータの格納を継続的に提供できる。
各ストレージ装置１０５は、ソリッドステートドライブ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ：ＳＳＤ）、例えば、イーサネットＳＳＤ（ｅＳＳＤ）でありうる。
正常作動の際に、リモートホスト１００は、それぞれ一つ以上のストレージ装置１０５に送られたストレージ命令をストレージ装置１０５に伝送し、ストレージ装置１０５はリモートホストに命令応答を伝送する。
ストレージ命令は、記録命令（ｗｒｉｔｅ  ｃｏｍｍａｎｄ）及び／又は読込命令（ｒｅａｄ  ｃｏｍｍａｎｄ）になることもある。
例えば、データをストレージ装置１０５に格納するために、リモートホスト１００は記録命令をストレージ装置１０５に伝送する（例えば、ストレージ装置１０５のイーサネットアドレスを使用してストレージ装置１０５に送られる）。
【００２７】
それぞれの記録命令は、ストレージ装置１０５に記録されるデータの量（又は「データブロック」）及びホストが未来の読込命令で同じデータを参照できるようにする論理ブロックアドレス（Ｌｏｇｉｃａｌ  Ｂｌｏｃｋ  Ａｄｄｒｅｓｓ、ＬＢＡ）を含むことができる。
これに対して、ストレージ装置１０５はデータを格納でき、格納動作が一度完了したら、ストレージ装置１０５は、命令応答（例えば、命令完了）をリモートホスト１００に伝達し、格納動作が成功的に完了したとの信号を送る。
本明細書にて使用する「データブロック」は、ストレージ命令又は命令応答のデータペイロード（Ｐａｙｌｏａｄ）、例えば、記録命令によって永続ストレージに記録されるデータ又は読込命令によって永続ストレージから読み込まれたデータでありうる。
【００２８】
ストレージ装置１０５からデータを読み込むために、リモートホスト１００は、ストレージ装置１０５からデータを要請する読込命令をストレージ装置１０５に伝送する。
これに応答して、ストレージ装置１０５は、ストレージ装置１０５の内部の非揮発性メモリ（Ｎｏｎｖｏｌａｔｉｌｅ  ｍｅｍｏｒｙ）からデータを読み込むことができ、読込動作が完了したら、命令応答（例えば、命令完了）をストレージから読み込まれたデータブロックを含むリモートホスト１００に伝送し、読込動作が成功的に完了したとの信号を送る。
【００２９】
消去コードは、ストレージ装置１０５の内の一つが故障になったり、不在（ａｂｓｅｎｔ）又は除去（ｒｅｍｏｖａｌ）された場合に格納されたデータを保護するためにストレージシステムで使用される。
データブロックに対する消去コードは、データの一部が消失された場合に、データブロック内のデータを再建するのに使用される重複追加情報を含む（例えば、構成）ことができる。
消去コードは、一般的に保護するデータとは別途にストレージ装置１０５に格納でき、よって、いずれかのストレージ装置の故障又は不在又は除去によってもデータが消失されなくなる。
消去コードを格納するディスクが故障したり、不在又は除去されても、データは影響を受けず、なお、データを格納したディスクが故障になったり、不在又は除去されても、データは消去コードから復旧できる。
【００３０】
一部実施形態にて、一つ以上のストレージ装置１０５は、消去コードのみを格納するに専用され得る。
この場合、イーサネットスイッチ１１０は、これらのストレージ装置１０５をリモートホスト１００から隠すように構成され、これらのストレージ装置がリモートホストに見えないようにすることができる。
このような構成で、リモートホスト１００からの観点で、ストレージシステムは物理的なストレージ装置に存在するより少ないストレージ装置１０５を含むように見えることになり、ストレージ装置の信頼性は、消去コードのみを専用に格納するストレージ装置１０５によって提供された消去コード保護によって向上される。
他の実施形態では、消去コードは、消去コードのみを専用に格納するストレージ装置１０５だけに格納されるのではなく、他のデータも格納するドライブに格納され得る。
【００３１】
消去コードは、コントローラー１１５によって生成される。
コントローラー１１５は、ストレージ装置１０５のそれぞれとＰＣＩｅスイッチ１２０を通じて接続される。
コントローラー１１５、ＰＣＩｅスイッチ１２０、及びストレージ装置１０５へのコントローラー１１５及びＰＣＩｅスイッチ１２０の接続は、消去プレーンを形成し、イーサネットスイッチ１１０及びストレージ装置１０５へのイーサネットスイッチ１１０の接続はデータプレーンを形成する。
【００３２】
動作の際に、ストレージ装置１０５が記録命令をイーサネットスイッチ１１０を介して受信すると、ストレージ装置１０５内部の非揮発性メモリにデータ（即ち、記録命令に含まれたデータブロックのデータ）を格納し、論理ブロックアドレスのみならず、データのコピーをコントローラー１１５に伝送する。
コントローラー１１５は、消去コードを生成し、消去コードデータを格納するストレージ装置１０５にＰＣＩｅスイッチを通じて書き込み命令を伝送することで、消去コードを例えば、記録命令を受信したものと異なるストレージ装置１０５に格納する。
コントローラー１１５は、消去コードを格納するための論理ブロックアドレス及び消去コードのそれぞれの位置を列挙したテーブルを維持する。
正常作動の際に、コントローラー１１５は、リモートホスト１００及びストレージ装置１０５の間のデータ経路で認識されないこともある。
例えば、データはコントローラー１１５を介さずに、リモートホスト１００とストレージ装置１０５の間で直接移動することができる。
【００３３】
それぞれのストレージ装置１０５（例えば、ＳＳＤ）は、ストレージインタフェースコネクタを含むことができ、これは「Ｕ．２」コネクタでありうる。
「Ｕ．２」コネクタの複数のピンは、ＰＣＩｅスイッチ１２０との通信のために、ＰＣＩｅリンク（例えば、１ｘ４ＰＣＩｅレーン又は２ｘ２ＰＣＩｅレーン）を提供するように割り当てる。
「Ｕ．２」コネクタの他のピンは、イーサネットスイッチ１１０にイーサネット接続を提供するように割り当てる。
【００３４】
「Ｕ．２」コネクタのまた異なるピン１２５は、コントローラー１１５がストレージ装置１０５の存在有無を検出できるようにする「存在ピン（Ｐｒｅｓｅｎｃｅ  Ｐｉｎ）」として使用する。
例えば、それぞれのストレージ装置１０５は、存在ピン１２５でセット電圧を供給したり、存在ピン１２５を通じてセット電流を駆動できる。
それぞれのストレージ装置１０５の存在ピン１２５は、コントローラー１１５のそれぞれのセンシングピンに接続され、コントローラー１１５はセンシングピンのうちの一つにてセット電圧又はセット電流が検出されることが中断されたら、対応するストレージ装置１０５がもはや存在しないものと推論できる。
【００３５】
他の実施形態では、ストレージ装置１０５とコントローラー１１５の間のＮＶＭｅ管理インタフェース（ＮＶＭｅ  Ｍａｎａｇｅｍｅｎｔ  Ｉｎｔｅｒｆａｃｅ：ＮＶＭｅ−ＭＩ）接続は、同じ目的で使用できる。
例えば、それぞれのストレージ装置１０５の複数のピンは、ＮＶＭｅ管理インタフェースに対する物理的接続を提供し、存在ピンとしての役割を果たすことができる。
【００３６】
それぞれのストレージ装置１０５は、複数（例えば、２４コネクタ）の「Ｕ．２」コネクタを有し、対応する複数のストレージ装置１０５を収容する印刷回路基板でありうるミッドプレーン１３０に接続される。
ミッドプレーン１３０は、ストレージ装置１０５に接続されたコネクタ及びこれに対応するＰＣＩｅスイッチ１２０のストレージ装置側上の複数のコネクタ（例えば、２４コネクタ）の間の接続を提供する導電性トレースを含む。
ミッドプレーン１３０は、ストレージ装置１０５の存在ピンとこれに対応するコントローラー１１５のセンシングピンとの間、及びストレージ装置１０５のイーサネットピンとこれに対応するイーサネットスイッチ１１０のストレージ装置側上のコネクタのピンとの間の接続を提供する。
【００３７】
それぞれのストレージ装置１０５は、複数の非揮発性メモリ（例えば、フラッシュメモリ）チップ、及び以下で詳細に説明するプロセッシング回路やプロセッシング回路を含むストレージ装置コントローラー（例えば、ストレージシステムのコントローラー１１５と分離及び区別されるＳＳＤコントローラー）を含むことができる。
コントローラー１１５はまた、プロセッシング回路であったり、プロセッシング回路を含むことができる。
コントローラー１１５は、例えば、ベースボード管理コントローラー外部にあり、ベースボード管理コントローラーの当該ピンに接続された温度センサを通じてストレージシステムに対する温度モニタリング及び制御を行う機能、及び／又はＩ２Ｃインターフェース又はＳＭＢｕｓを通じたファン（Ｆａｎ）制御機能を含むベースボード管理コントローラー（Ｂａｓｅｂｏａｒｄ  Ｍａｎａｇｅｍｅｎｔ  Ｃｏｎｔｒｏｌｌｅｒ、ＢＭＣ）でありうる。
【００３８】
本明細書で使用する「コントロール手段」は、最小限に本明細書にて開示され、且つ請求された特徴を有するコントローラー１１５を具現するハードウェア、ファームウェア、及びソフトウェアの任意の組み合わせを呼称し、全てハードウェアとして具現されたり、汎用処理回路（例えば、汎用ＣＰＵ）上で実行されるソフトウェアで具現できる。
【００３９】
ストレージ装置が故障になったり不在又は除去されたりしたときは（図１ｃにて点線で示すように）、コントローラー１１５は、前述したとおりに、コントローラー１１５のセンシングピンでの変化の結果を通じて不在又は除去、又は故障を認知したり、コントローラー１１５はイーサネットスイッチ１１０を通じてストレージ装置１０５の内の一つに伝送されたストレージ命令が命令応答を発生させていないことを通知することができる。
【００４０】
以下でさらに詳細に説明するように、一部実施形態においては、正常作動の際に記録命令が実行される時、格納されるデータは一つ以上のストレージ装置１０５に記録され、消去コードが生成され、なお、一つ以上のストレージ装置１０５に記録され、例えば、消去コードが保護するデータと異なるストレージ装置１０５に記録された、格納された消去コードを使用して、いずれか一つのストレージ装置の故障によって一般的に復旧できないデータ損失が発生しない。
【００４１】
ストレージ装置１０５が故障したときは、コントローラー１１５はイーサネットスイッチ１１０を再構成して、故障したストレージ装置１０５に送られた任意の記録又は読込命令をコントローラーに再び送り、コントローラー１１５は性能低下（例えば、速度）を排除して、ストレージ装置１０５の障害がリモートホスト１００に感知されないようにストレージ装置１０５の動作を模することができる。
【００４２】
ストレージシステムは、それぞれのストレージ装置１０５の存在ピン１２５とコントローラーの間に接続されたコンプレックスプログラマブルロジックデバイス（Ｃｏｍｐｌｅｘ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ：ＣＰＬＤ）（図１ｂ及び図１ｃに示していない）を含むことができる。
存在ピンのうち少なくとも一つのある変化を検出した後、ＣＰＬＤはインターラプトを通じてコントローラー１１５に通知する。
その後、コントローラー１１５はＣＰＬＤの一部レジスタを入れて（例えば記録又は読込）、どのドライブが消去又は設置されたかを探し出すことができる。
これにより、ＢＭＣ（例えば、コントローラー１１５は、特定ポートを活性化又は非活性化して、イーサネットスイッチを再構成するなどの適切な変更作業を行うことができる。
【００４３】
一部実施形態で、コントローラーは、イーサネットスイッチ１１０を再構成して、故障になったり、不在又は除去されたストレージ装置１０５に送られた全てのイーサネットトラフィックが、代わりにコントローラー１１５に向かうように再度送る（Ｒｅｄｉｒｅｃｔ）ことができる。
コントローラー１１５はストレージ装置１０５が故障、不在又は除去されなかった場合に持つはずのものと同じ命令応答をリモートホスト１００が受信するようにリモートホスト１００からストレージ命令を処理して、命令応答を伝送する。
【００４４】
例えば、故障、不在又は除去のストレージ装置１０５に送られ、コントローラーに再び送られたリモートホスト１００からの読込命令に応答して、コントローラー１１５は、一つ以上の他のストレージ装置１０５に格納された消去コード（例えば、消去パリティ（Ｅｒａｓｕｒｅ  ｐａｒｉｔｙ）及びデータコード）から依然として存在し、且つ正常に作動された場合、故障、不在又は除去のストレージ装置１０５から読み込まれたはずのデータ（例えば、データはＸＯＲ動作によって再生成され、故障／不在又は除去ストレージ装置１０５からのデータを良好に復旧できる）を復旧することができ、コントローラー１１５は、復旧データを含む命令応答をリモートホスト１００に伝送する。
【００４５】
故障、不在又は除去のストレージ装置１０５に送られ、コントローラー１１５に再び送られたリモートホスト１００からの記録命令に応答し、コントローラーは故障、不在又は除去になったストレージ装置１０５が依然として存在し、且つ正常に動作する場合に格納される消去コードと同じ消去コードを生成及び格納することができ、故障、不在又は除去になったストレージ装置１０５が依然として存在し、且つ正常に動作する場合に、故障、不在又は除去になったストレージ装置１０５が伝送する同じ命令応答をリモートホスト１００に伝送する。
【００４６】
一部の実施形態で、ストレージ装置１０５が故障になった後に、システムの動作が続く間に、コントローラー１１５は全てのデータが消去コードによって保護され、それぞれの消去コードは保護するデータと異なるストレージ装置１０５上に格納されるまで、ストレージ装置１０５装置が故障になった時に損失されたものを代替するために、新たにデータ及び消去コードを生成し、新たにデータ及び消去コードを一つ以上の残りのストレージ装置１０５上に格納し、残りのストレージ装置１０５の間でデータ（及び消去コード）を移動させることで、一つ少ないドライブで動作するようにシステムを再構成する。
ストレージ装置１０５が除去（故障になる代わりに）されたら、コントローラーは同じ動作を行うことができる。
【００４７】
代替ドライブが以後に設置される場合に、コントローラー１１５はシステムの継続的な動作の間、故障、不在又は除去のストレージ装置１０５に代わって続いて応答しながら、代替ドライブを再構築する。
即ち、コントローラー１１５は、故障、不在又は除去のストレージ装置１０５に格納されていたデータを復旧して代替ドライブに格納する。
一度代替ドライブが再構築されたら、コントローラー１１５は正常動作のためにイーサネットスイッチ１１０を再構成する。
【００４８】
図２は、本発明の一実施形態にかかるストレージシステムの開始シーケンスの動作を説明するためのフローチャートである。
コントローラー１１５（例えば、ＢＭＣ）は、自身及び望むＲＡＩＤ構成ごとに全てのデータストレージ装置１０５（例えば、ＳＳＤ）の前提条件を初期化する（ステップＳ２０５）。
コントローラー１１５はストレージ装置１０５の一部をデータストレージ装置に、ストレージ装置１０５の一部を消去コードストレージ装置に指定する（ステップＳ２１０）。
これは、すべてのストレージ装置１０５及び命令に対する初期化の際に行われたり、命令単位で行われる。
コントローラー１１５はＳＳＤのそれぞれの容量が異なるとＳＳＤを正規化し（ステップＳ２１５）、コントローラー１１５は上述したように、いずれのホストにも消去コードストレージ装置が見えないようにマーク（Ｍａｒｋ）する（ステップＳ２２０）。
【００４９】
図３は、本発明の一実施形態にかかるストレージシステムの動作を説明するためのフローチャートであり、コントローラー１１５の代わりにストレージ装置１０５が消去コードを生成するストレージシステムの動作に対するフローチャートである。
システム内のそれぞれのストレージ装置１０５は、コントローラー１１５からスロット番号又は割り当て番号のような固有の配列部材識別（Ａｒｒａｙ  ｍｅｍｂｅｒ  ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）を有する。
【００５０】
データストレージ装置のそれぞれは、ホスト又は開始プログラム（Ｉｎｉｔｉａｔｏｒ）との正常的なＮＶＭｅオーバーファブリック（ＮＶＭｆ）トランザクションの実行を続いて（ステップＳ３０５）、データストレージ装置のそれぞれは正常的なディスカバリーサービスを行い、トランザクション（例えば、ストレージ命令に対する処理及び応答）の実行を始める（ステップＳ３１０）。
ホストはデータストレージ装置のうち、一つにデータを記録する（ステップＳ３１５）。
ステップＳ３１５にてホストは消去コードを生成しない。
データストレージ装置は記録されるデータを受信し、これをデータストレージ装置内の非揮発性メモリに格納する（ステップＳ３２０）。
データストレージ装置は、また、消去コードを生成し、消去コードを（複数のストレージ装置の）一つ以上の消去コードストレージ装置に記録する（ステップＳ３２０）。
【００５１】
例えば、任意の記録に対して、記録データは、目標ストレージ装置の中のポスト（Ｐｏｓｔ）された記録バッファーに一時的に格納できる。
同時に、目標ストレージ装置は、制御プレーン（例えば、ＰＣＩｅ制御プレーン）を通じて記録データをコントローラー１１５に伝送できる。
記録データを受信した後、コントローラー１１５は、同じＬＢＡを共有する当該データを他のストレージ装置から読み込んで、パリティーの生成を行うことができる。
コントローラー１１５は、一つ以上の適切な排他的論理和（ＸＯＲ）演算を行い、新たなパリティーをパリティーストレージ装置に記録する。
コントローラー１１５は、元々の目標ストレージ装置にメッセージを伝送することができ、ポストされた記録バッファーがフラッシュ（Ｆｌｕｓｈ）できる。
【００５２】
一部の実施形態で、いくつかのストレージ装置１０５は、消去コードを格納する。
消去コードストレージ装置は消去コードを受信し、これを消去コードストレージ装置内の非揮発性メモリに格納し、データストレージ装置にコミットメッセージ（Ｃｏｍｍｉｔ  ｍｅｓｓａｇｅ）を伝送する（ステップＳ３２５）。
データストレージ装置及び消去コードストレージ装置の間の通信は、ＰＣＩｅスイッチ１２０を通じて行われる。
【００５３】
上述したように、一部の実施形態は、複数のストレージ装置に亘って消去コード保護を提供するためのシステム及び方法を提供する。
ストレージシステム内のデータスイッチは、複数のストレージ装置をリモートホストに接続する。
各ストレージ装置は、また、コントローラー（例えば、ベースボード管理コントローラー）に接続される。
正常作動の際に、リモートホストからの読込及び記録命令は、データスイッチを通じてそれぞれのストレージ装置に伝送される。
記録命令が実行されたら、この命令を実行するストレージ装置はコントローラーにデータのコピーを送り、コントローラーは消去コードを生成し、これらを例えば、消去コードを格納するために専用されるストレージ装置に格納して、リモートホストに見えないようにする。
装置が故障になったり消去されると、コントローラーはデータスイッチを再び構成して故障、不在又は除去のストレージ装置に送られた全てのトラフィックをコントローラーに再び送り、コントローラーは、もし存在し、且つ正常に作動された場合、障害が発生したり、存在しないストレージ装置が伝送したはずのものと同じ命令応答でホスト命令に応答する。
【００５４】
「プロセッシング回路」という用語は、本明細書にてデータ又はデジタル信号を処理するに使用されるハードウェア、ファームウェア及びソフトフェアの全ての組み合わせを意味するために使用する。
プロセッシング回路ハードウェアは、例えば、特定用途向け集積回路（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔｓ：ＡＳＩＣ）、汎用又は特殊用途の中央処理装置（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：ＣＰＵ）、デジタル信号プロセッサ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ：ＤＳＰ）、グラフィック処理装置（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：ＧＰＵ）及びフィールドプログラマブルゲートアレイ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ：ＦＰＧＡ）のようなプログラマブル論理装置を含むことができる。
【００５５】
本明細書で使用するプロセッシング回路での各機能は、その機能を行うために構成されたハードウェア、即ち、固定配線（Ｈａｒｄ−ｗｉｒｅｄ）や非一時的格納媒体に格納された命令を実行するように構成されたＣＰＵのような汎用ハードウェアで行うことができる。
プロセッシング回路は、一つの印刷回路基板上に製造されたものでもあり、いくつかの互いに接続された印刷回路基板に分散されたものでもある。
プロセッシング回路は、他のプロセッシング回路を含むことができる。
例えば、プロセッシング回路は、印刷回路基板上で互いに接続された二つのプロセッシング回路、ＦＰＧＡ、ＣＰＵを含むことができる。
【００５６】
複数のストレージ装置に亘り消去コード保護を提供する制御プレーン方法及び装置の例示的な実施形態が本明細書によって具体的に説明し、且つ例示しているが、多くの変形及び変更が当業者にとって明白である。
よって、本発明の原理によって構成された多数のストレージ装置に亘り消去コード保護を提供するための制御プレーン方法及び装置は、ここに具体的に記述したもの以外の他の実施例が具現できると理解すべきである。
なお、本発明は、次の特許請求範囲及びその等価物で定義される。
【産業上の利用可能性】
【００５７】
本発明は、消去コード保護によって複数のストレージ装置のうち一つが故障になったり消去された場合に、格納されたデータを保護するためのストレージシステムに好適に使用される。
【符号の説明】
【００５８】
１００    リモートホスト
１０５    ストレージ装置
１１０    イーサネットスイッチ
１１５    コントローラー
１２０    ＰＣＩｅスイッチ
１２５    存在ピン
１３０    ミッドプレーン
【図１ａ】
2018116704.tif 000003
【図１ｂ】
2018116704.tif 000004
【図１ｃ】
2018116704.tif 000005
【図２】
2018116704.tif 000006
【図３】
2018116704.tif 000007