(57)【要約】【課題】ストレージシステム内のボトルネックを解消し、ハードウェアが備える帯域を効率的に使用し、かつ高信頼性が得られるストレージシステムを提供する。【解決手段】データを記憶する記憶装置と、前記記憶装置へのデータの入出力を制御するコントローラと、前記記憶装置と前記コントローラとを接続するインターフェースとを備えるストレージシステムであって、前記記憶装置は、前記インターフェースと接続された複数の物理ポートを備え、前記コントローラは、前記記憶装置の記憶領域を複数の記憶領域に論理的に分割して提供し、一又は複数の前記物理ポートを前記論理分割された記憶領域に割り当てる。【選択図】図４
2010092285.tif 000002
【特許請求の範囲】
【請求項１】
データを記憶する記憶装置と、前記記憶装置へのデータの入出力を制御するコントローラと、前記記憶装置と前記コントローラとを接続するインターフェースとを備えるストレージシステムであって、
前記記憶装置は、前記インターフェースと接続された複数の物理ポートを備え、
前記コントローラは、
前記記憶装置の記憶領域を複数の記憶領域に論理的に分割して提供し、
一又は複数の前記物理ポートを前記論理分割された記憶領域に割り当てることを特徴とする請求項１に記載のストレージシステム。
【請求項２】
前記コントローラは、
二つの前記物理ポートを前記論理分割された一つの記憶領域に排他的に割り当て、
前記論理分割された記憶領域に割り当てられた二つのポートを使って、一つのリンクを形成するように、データを転送することを特徴とする請求項１に記載のストレージシステム。
【請求項３】
前記コントローラは、
前記二つの物理ポートを前記論理分割された一つの記憶領域に現用系のポートとして排他的に割り当て、
二つの他の前記物理ポートを前記論理分割された記憶領域に待機系のポートとして割り当て、
前記論理分割された記憶領域に割り当てられた一の現用系のポートに障害が発生した場合、当該記憶領域に割り当てられた一の待機系のポート及び前記障害が発生していない現用系のポートを使って、一つのリンクを形成するように、データを転送することを特徴とする請求項２に記載のストレージシステム。
【請求項４】
前記コントローラは、
前記複数の物理ポートを前記論理分割された記憶領域が共用するように割り当て、
前記論理分割された記憶領域に割り当てられた複数のポートのうちデータ転送時に使用可能なポートを使って、一つのリンクを形成するように、データを転送することを特徴とする請求項１に記載のストレージシステム。
【請求項５】
前記コントローラは、前記複数のポートを、前記論理分割された記憶領域に均等に又は不均等に割り当てることを特徴とする請求項１に記載のストレージシステム。
【請求項６】
前記記憶装置の一部の記憶領域は、前記記憶領域が書換不能となった場合に使用される交替領域に設定されており、
前記ストレージシステムは、前記交替領域が不足すると判定された場合に使用される補助記憶装置を装着するインターフェースを備えることを特徴とする請求項１に記載のストレージシステム。
【請求項７】
データを記憶する記憶装置と、前記記憶装置に書き込まれるデータを一時的に格納するキャッシュメモリと、前記記憶装置へのデータの入出力を制御するコントローラと、前記記憶装置と前記キャッシュメモリと前記コントローラとを接続するインターフェースとを備えるストレージシステムであって、
前記コントローラは、
前記キャッシュメモリから前記記憶装置へデータを転送する場合、データの書き込みブロック毎に、書き込まれたデータの正当性を担保するための検証コードを生成し、
前記生成された検証コードが付加されたデータを前記記憶装置に転送し、
前記記憶装置の複数のブロックに書き込まれたデータに付加された検証コードのうち、先頭のブロックから１又は複数のブロックのデータに付加された検証コードを使用しないで、前記記憶装置に書き込まれたデータを検証することを特徴とするストレージシステム。
【請求項８】
前記コントローラは、前記記憶装置の複数のブロックに書き込まれたデータに付加された検証コードのうち、最後のブロックのデータに付加された検証コードのみを使用して、前記記憶装置に書き込まれたデータを検証することを特徴とする請求項７に記載のストレージシステム。
【請求項９】
前記コントローラは、前記記憶装置へ転送されるデータが所定の閾値より大きい場合、前記記憶装置の複数のブロックに書き込まれたデータに付加された検証コードのうち、最後から先頭方向に、データ長より小さい所定数のブロックのデータに付加された検証コードを使用して、前記記憶装置に書き込まれたデータを検証することを特徴とする請求項７に記載のストレージシステム。
【請求項１０】
前記コントローラは、前記記憶装置の複数のブロックに書き込まれたデータに付加された検証コードのうち、最後のブロックから前後に所定数のブロックのデータに付加された検証コードを使用して、前記記憶装置に書き込まれたデータを検証することを特徴とする請求項７に記載のストレージシステム。
【請求項１１】
データを記憶する記憶装置と、前記記憶装置へのデータの入出力を制御するコントローラと、前記記憶装置と前記コントローラとを接続するインターフェースとを備えるストレージシステムであって、
前記記憶装置は、前記インターフェースと接続された複数の物理ポートを備え、
前記コントローラは、
前記記憶装置の記憶領域を複数の記憶領域に論理的に分割して提供し、
二つの前記物理ポートを前記論理分割された一つの記憶領域に現用系のポートとして排他的に割り当て、
二つの他の前記物理ポートを前記論理分割された記憶領域に待機系のポートとして割り当て、
通常運用時には、前記論理分割された記憶領域に割り当てられた二つの現用系のポートを使って、一つのリンクを形成するように、データを転送し、
前記論理分割された記憶領域に割り当てられた一の現用系のポートに障害が発生した場合、当該記憶領域に割り当てられた一の待機系のポート及び前記障害が発生していない現用系のポートを使って、一つのリンクを形成するように、データを転送することを特徴とするストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステムに関し、特に、ストレージシステムを高速化し、信頼性を向上する技術に関する。
【背景技術】
【０００２】
ストレージシステム（ディスクアレイ装置）において、磁気ディスクドライブ（ＨＤＤ）及び半導体記憶装置（ＳＳＤ）等のストレージモジュールの大容量化に伴い、ストレージモジュールによって構成されるグループ（ＲＡＩＤグループ、ストレージプール）容量が増大している。
【０００３】
一方、多くの場合は、ストレージモジュールによって構成されるグループ上に構成される論理ボリューム（ＬＵ）の容量の上限は２ＴＢである。この容量の上限は、ブロックアクセス型のストレージ装置で標準的に使用されているＳＣＳＩプロトコルにおけるＲＥＡＤ（１０）コマンド及びＷＲＩＴＥ（１０）コマンドのパラメータであるＬＢＡ指定領域が４バイトであるためである。このＬＢＡ領域を拡張したコマンドとして、可変長のＲＥＡＤ（１６）コマンド及びＷＲＩＴＥ（１６）コマンドが定義されているが、これらのコマンドをサポートしていないストレージシステムが多い。
【０００４】
複数のＬＵが同一グループに含まれることのデメリットは、論理的には異なるＬＵへのアクセスであっても、物理的には同じ記憶装置へのアクセスであって、同じ記憶装置へのアクセスによって性能的なボトルネックが生じることである。
【０００５】
現在、記憶装置として主に使用されている磁気ディスクドライブは、ミリ秒オーダで、ディスクの回転による待ち時間や、ヘッドのシーク時間がある。このため、機械的な要因による性能が、インターフェースやコントローラの性能向上に追い付いていない。すなわち、機械的な要因が性能のボトルネックとなっている。
【０００６】
一方、半導体記憶装置（ＳＳＤ）は、機械的な待ち時間が発生しないことから、高速にデータを読み書きすることができる。しかし、半導体記憶装置は、磁気ディスクドライブとの互換性を重視して設計されているため、半導体の読み書き性能を充分に生かすことができない。例えば、８個のポートが実装されているＳＡＳコントローラがあり、一つのＳＡＳインターフェースは６Ｇｂｐｓでデータを転送可能であることから、合計の帯域は８×６Ｇｂｉｔ／ｓ＝４８Ｇｂｉｔ／ｓとなる。ＳＡＳでは、複数のリンクを束ねてデータ転送する機能（ワイドポートまたはワイドリンクと呼ばれる）があるので、この帯域を充分生かすことが可能である。
【０００７】
複数の物理リンクを束ねてデータを転送する方法として、特許文献１には、ＳＡＳイニシエータ装置が、ワイドリンクのうちの何本の物理リンクをどのＳＡＳターゲット装置に割り当てるかを制御するストレージシステムが記載されている。また、特許文献２には、複数の物理リンクをまとめたワイドポートを用いてデータを転送する技術が記載されている。
【特許文献１】特開２００７−２５６９９３号公報
【特許文献２】米国特許出願公開第２００８／０１０４２６４号明細書
【特許文献３】特開２００５−１６５４４３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ＳＡＳインターフェースの磁気ディスクドライブは２ポートのコネクタを備え、この２ポートは冗長的に使用されるので、一つの磁気ディスクドライブのデータ転送性能は６Ｇｂｉｔ／ｓである。この転送速度は磁気ディスクドライブには十分であるが、半導体記憶装置にとっては十分ではない。すなわち、半導体記憶装置は、データを高速で読み書きできることから、インターフェースの構成がボトルネックとなる場合がある。
【０００９】
しかし、前述した特許文献１に記載された技術では、ターゲットのＳＡＳポートは現用ポートと冗長ポートの二つである。
【００１０】
また、ストレージ装置の性能向上によって、コントローラの処理能力、記憶容量等のストレージ装置に備わるリソースを論理的に分割し、各分割された論理区画を独立してユーザに提供するストレージ論理分割（ＬＰＡＲ）技術がある。このような運用において、各ユーザに高い性能を提供するためには、論理区画内のボトルネックを排除する必要がある。
【００１１】
この点、前述した特許文献１に記載された技術では、ターゲット側での論理分割は考慮されていない。
【００１２】
さらに、信頼性及び性能が異なる複数の記憶装置を混載するストレージシステムでは、ボトルネックとなる性能及び信頼性が、ストレージシステムの性能及び信頼性となることから、他のボトルネック要因（書き込みデータの検証）についても検討する必要がある。
【００１３】
具体的には、従来のストレージシステムでは、データを書き込んだ後に、書き込まれたデータを読み出して、書き込みデータと読み出されたデータとを１バイト毎に比較していた。又は、書き込みデータの検証コードと読み出されたデータの検証コードとを比較していた。しかし、前述した従来の方法では、データを読み出すために転送帯域を消費し、データを比較するためにプロセッサの処理能力を消費するので、パフォーマンスの向上を妨げるという問題があった。このパフォーマンスの低下は、半導体記憶装置等の高速な処理が可能な記憶装置においては大きな問題となる。
【００１４】
本発明は、ストレージシステム内のボトルネックを解消し、ハードウェアが備える帯域を効率的に使用し、かつ高信頼性が得られるストレージシステムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明の代表的な一例を示せば以下の通りである。すなわち、データを記憶する記憶装置と、前記記憶装置へのデータの入出力を制御するコントローラと、前記記憶装置と前記コントローラとを接続するインターフェースとを備えるストレージシステムであって、前記記憶装置は、前記インターフェースと接続された複数の物理ポートを備え、前記コントローラは、前記記憶装置の記憶領域を複数の記憶領域に論理的に分割して提供し、一又は複数の前記物理ポートを前記論理分割された記憶領域に割り当てることを特徴とする。
【００１６】
また、本発明の別な一例は、データを記憶する記憶装置と、前記記憶装置に書き込まれるデータを一時的に格納するキャッシュメモリと、前記記憶装置へのデータの入出力を制御するコントローラと、前記記憶装置と前記キャッシュメモリと前記コントローラとを接続するインターフェースとを備えるストレージシステムであって、前記コントローラは、前記キャッシュメモリから前記記憶装置へデータを転送する場合、データの書き込みブロック毎に、書き込まれたデータの正当性を担保するための検証コードを生成し、前記生成された検証コードが付加されたデータを前記記憶装置に転送し、前記記憶装置の複数のブロックに書き込まれたデータに付加された検証コードのうち、先頭のブロックから１又は複数のブロックのデータに付加された検証コードを使用しないで、前記記憶装置に書き込まれたデータを検証することを特徴とする。
【発明の効果】
【００１７】
本発明の実施の形態によると、ストレージシステムの性能を向上することができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態について図面を参照して説明する。
【００１９】
＜実施形態１＞
図１Ａ及び図１Ｂは、本発明の第１の実施の形態の概要を示す説明図である。
【００２０】
一般に、記憶装置２２は、データを入出力する物理的なポートを１又は複数備える。例えば、図１Ａに示すように、ＳＡＳインターフェースを備える記憶装置は、二つの物理ポートを備える。これらのポートの一つは現用系に使用され、他方は待機系に使用される。そして、各ポートを用いてディスク制御部との間でデータを転送するための現用系及び待機系のパスを設定する。このため、記憶装置の記憶領域が論理的に分割されても、分割された記憶領域がポートと対応付けられていなかった。
【００２１】
これに対し、図１Ｂに示すように、第１の実施の形態の記憶装置は８個の物理ポートを備えるので、四つのポートが稼動系に使用することができ、他の４個のポートが待機系に使用することができる。そして、各ポートを用いてディスク制御部との間でデータを転送するためのパスを設定する。この場合、４個の各ポートを論理分割された各記憶領域に割り当て、各記憶領域に独立してデータを転送することができる。また、時分割された４個のポートを一つの記憶領域に割り当て、高速にデータを転送することができる。
【００２２】
また、第１の実施の形態の記憶装置２２は、物理ポートの負荷を表示するＬＥＤ２２３を備える。さらに、交替領域として使用される記憶領域を提供する補助記憶装置（例えば、ＳＤメモリカード１０００）を取り付けるインターフェース（ＳＤメモリカードスロット２２２）を備える。このため、交替領域が不足した場合でも、ＳＤメモリカード１０００の記憶領域を交替領域とすることによって、記憶装置を延命することができる。
【００２３】
図２は、本発明の第１の実施の形態のストレージシステムの正面図である。
【００２４】
図２には、１台のコントローラ筐体１と、３台のドライブ筐体２を示す。コントローラ筐体１とドライブ筐体２との間、及び、ドライブ筐体２の間は、ＳＡＳインターフェースによって接続される。
【００２５】
なお、コントローラ筐体１とドライブ筐体２とは同じ外観であるが、両者の外観は異なってもよい。
【００２６】
図３Ａは、本発明の第１の実施の形態のコントローラ筐体１の前面扉を開いた状態の内部の構造を示す図である。
【００２７】
コントローラ筐体１の前面側には半導体記憶装置２２（又は、磁気ディスクドライブ２１）が取り付けられるスロットが備わる。また、コントローラ筐体１の前面側の下部には電源ユニット１０１０が備わる。コントローラ筐体１に取り付けられた半導体記憶装置２２は、バックプレーン（図示省略）によって接続される。
【００２８】
図３Ｂは、本発明の第１の実施の形態のコントローラ筐体１の背面扉を開いた状態の内部の構造を示す図である。
【００２９】
コントローラ筐体１の背面側の下部には、チャネル制御部１００及びディスク制御部２００が備わる。また、チャネル制御部１００及びディスク制御部２００の上部には、プロセッサ４００、メモリ４３０及び共有メモリ４５０を備えるコントローラユニット１０２０が備わる。なお、チャネル制御部１００、ディスク制御部２００及びコントローラ１０２０以外の箇所は、半導体記憶装置２２（又は、磁気ディスクドライブ２１）が取り付け可能なスロットが備わってもよい。
【００３０】
ドライブ筐体２の前面側の構造は、図３Ａに示すコントローラ筐体１の前面側の構成と同じである。また、ドライブ筐体２の背面側の構造は、図３Ａに示すコントローラ筐体１の前面側の構成と同様に、半導体記憶装置２２（又は、磁気ディスクドライブ２１）が取り付けられるスロットが備わる。
【００３１】
図４は、本発明の第１の実施の形態のストレージシステムの構成を示すブロック図である。
【００３２】
本実施の形態のストレージシステム（コントローラ筐体１）は、複数のチャネル制御部１００、複数のディスク制御部２００、キャッシュメモリ３００、プロセッサ４００、メモリ４３０及び共有メモリ４５０を備える。チャネル制御部１００、ディスク制御部２００、キャッシュメモリ３００、プロセッサ４００、メモリ４３０及び共有メモリ４５０は、データコントローラ５００によって接続されている。図示したように、ストレージシステム１は、通常、複数のチャネル制御部１００及び複数のディスク制御部２００を備えるが、これらの各構成は一つだけ備わってもよい。
【００３３】
キャッシュメモリ３００、プロセッサ４００、メモリ４３０、共有メモリ４５０及びデータコントローラ５００によって、コントローラユニット１０２０が構成される。
【００３４】
チャネル制御部１００は、ホスト計算機１０との間の通信プロトコルに従った信号を入出力するドライバである物理インターフェース、ホスト計算機１０との間の通信プロトコルに従った信号の入出力を制御するプロトコル制御部、及び、チャネル制御部１００からキャッシュメモリ３００へ転送されるデータのアドレスを制御する転送制御部を備える。チャネル制御部１００は、例えば、ファイバチャネルプロトコルを用いて通信するＳＡＮ１１によって、ホスト計算機１０に接続される。なお、チャネル制御部１００とホスト計算機１０とは、イーサネット（登録商標）によって接続されてもよい。この場合、チャネル制御部１００とホスト計算機１０との間はｉＳＣＳＩプロトコルによって通信する。
【００３５】
ディスク制御部２００は、記憶装置２１、２２との間の通信プロトコルに従った信号を入出力するドライバである物理インターフェース、記憶装置２１、２２との間の通信プロトコルに従った信号の入出力を制御するプロトコル制御部、及び、ディスク制御部２００から転送されるデータのアドレスを制御する転送制御部を備える。本実施の形態のストレージシステムでは、ディスク制御部２００は、４ポートのＳＡＳ（Ｓｅｒｉａｌ  Ａｔｔａｃｈｅｄ  ＳＣＳＩ）インターフェースを備える。なお、ディスク制御部２００と記憶装置２１、２２との間の接続は、複数のポートを一つのリンクとしてデータを転送するマルチポート接続が可能な方法であれば、他の接続方法でもよい。
【００３６】
本実施の形態のストレージシステム１は、記憶装置２１、２２に磁気ディスクドライブ２１及び半導体記憶装置２２を用いるが、これらの他に、光ディスク、磁気テープ等を用いてもよい。なお、図４には、記憶装置２１、２２が示されているが、ストレージシステムに記憶装置２１、２２が備わっても、記憶装置２１、２２を備えた別のサブシステムを接続する形態でも（一般的な、ＮＡＳやＶＴＬの形態でも）よい。
【００３７】
キャッシュメモリ３００は、ホスト計算機１０から書き込みを要求されたデータを一時的に格納し、記憶装置２１、２２から読み出されたデータを一時的に格納する。
【００３８】
プロセッサ４００は、ストレージシステムの動作（例えば、チャネル制御部１００からキャッシュメモリ３００へのデータ転送の指示等）を制御する。
【００３９】
メモリ４３０は、プロセッサ４００によって実行されるプログラム及びこのプログラムの実行時に必要とされるデータを格納する。
【００４０】
共有メモリ４５０は、各部で共通に使用されるデータ（例えば、ストレージシステムの構成情報）を格納する。
【００４１】
データコントローラ５００は、チャネル制御部１００、ディスク制御部２００、キャッシュ部３００、プロセッサ４００、メモリ４３０及び共有メモリ４５０を接続するスイッチ（例えば、クロスバスイッチ）を備える。データコントローラ５００によって、チャネル制御部１００、ディスク制御部２００、キャッシュ部３００、プロセッサ４００、メモリ４３０及び共有メモリ４５０を接続する内部ネットワークが構成される。この内部ネットワークによって、これら各部の間でデータが転送される。
【００４２】
ストレージシステムは、保守用端末が接続されるインターフェース（ＳＶＰ）を備えてもよい。
【００４３】
チャネル制御部１００は、ホスト計算機１０からのデータ書込要求を受信すると、受信した書込要求をストレージシステム内のプロトコルに変換し、プロトコル変換された書込要求のアドレスを解析し、解析結果をプロセッサ４００に送る。プロセッサ４００は、アドレスの解析結果に基づいて、書込要求（データ）の転送先を決定し、転送先をデータコントローラ５００に指示する。データコントローラ５００は、プロセッサ４００から指示された転送先にデータが転送されるようにスイッチを切り換えて、データを転送する。
【００４４】
ホスト計算機１０からの書込要求（データ）は、チャネル制御部１００からキャッシュメモリ３００に転送され、キャッシュメモリ３００に一時的に格納される。データがキャッシュメモリ３００へ格納された時に（記憶装置２１、２２へデータが格納される前であっても）、ホスト計算機１０には書込完了の報告が返答されるので、ホスト計算機１０に対するレスポンスを向上させることができる。
【００４５】
キャッシュメモリ３００に格納されたデータは、ディスク制御部２００に転送される。ディスク制御部２００は、転送されたデータを記憶装置２１、２２に転送するためのプロトコル（例えば、ＳＡＳプロトコル）に変換する。プロトコルが変換されたデータは、記憶装置２１、２２に書き込まれる。
【００４６】
本実施の形態のストレージシステム１は、コントローラユニットの他に、ＳＡＳエクスパンダ６００、磁気ディスクドライブ２１及び半導体記憶装置２２を備える。
【００４７】
ＳＡＳエクスパンダ６００は、ディスク制御部２００、磁気ディスクドライブ２１及び半導体記憶装置２２を接続するスイッチ（例えば、クロスバスイッチ）を備え、ディスク制御部２００と磁気ディスクドライブ２１（又は、半導体記憶装置２２）との間でデータを転送する。ＳＡＳエクスパンダ６００は、接続先の記憶装置に対応した数のポートを使用して記憶装置２１、２２と接続する。例えば、ＳＡＳエクスパンダ６００と半導体記憶装置２２との間は、現用系の４ポート又は待機系の４ポート（合計８ポート）によって接続される。
【００４８】
また、ＳＡＳエクスパンダ６００と磁気ディスクドライブ２１との間は、磁気ディスクドライブ２１が備えるインターフェースによって、接続されるポートの数が異なる。例えば、ＳＡＳインターフェースを備える磁気ディスクドライブ２１とＳＡＳエクスパンダ６００との間は、現用系又は待機系の各々１ポートによって接続される。また、ＳＡＴＡ（Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）インターフェースを備える磁気ディスクドライブ２１とＳＡＳエクスパンダ６００との間は、現用系の１ポート又は待機系の１ポートによって接続される。なお、ＳＡＴＡの磁気ディスクドライブ２１は一つのポートのみ備えるので、磁気ディスクドライブ２１のインターフェースにポート数を切り替えるポートアプリケータ６１０を設け、現用系の１ポート又は待機系の１ポート（合計２ポート）を１ポートに切り替えて、ＳＡＴＡの磁気ディスクドライブ２１に接続する。
【００４９】
また、ＳＡＳエクスパンダ６００は、他の筐体（例えば、ドライブ筐体２）のＳＡＳエクスパンダ６００と、ＳＡＳインターフェースによって接続される。
【００５０】
磁気ディスクドライブ２１は、磁気ディスクにデータを記録する。磁気ディスクドライブ２１は、ＳＡＳインターフェースによって、ＳＡＳエクスパンダ６００を介して、ディスク制御部２００と接続される。
【００５１】
半導体記憶装置２２は、不揮発性メモリ（例えば、フラッシュメモリ）を備える、いわゆるＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ）であって、ＳＡＳインターフェースによってディスク制御部２００と接続される。なお、半導体記憶装置２２を構成するメモリ素子は、フラッシュメモリに限らず、Ｍ-ＲＡＭ、Ｐ−ＲＡＭ、ＳＴＴ−ＲＡＭ、レーストラックメモリ等の半導体素子であってもよい。
【００５２】
本実施の形態のストレージシステムのドライブ筐体２は、ＳＡＳエクスパンダ６００及び磁気ディスクドライブ２１を備える。図４に示すドライブ筐体２は、磁気ディスクドライブ２１のみを備えるが、磁気ディスクドライブ２１の他に、半導体記憶装置２２を備えてもよい。
【００５３】
図５は、本発明の第１の実施の形態の半導体記憶装置２２の正面図である。
【００５４】
半導体記憶装置２２は、その前面に、ラッチ解除レバー２２１、ＳＤメモリカードスロット２２２及び状態表示ＬＥＤ２２３を備える。また、半導体記憶装置２２は、その内部に、前面基板、ベース基板、増設メモリ基板１及び増設メモリ基板２を備える（図６参照）。
【００５５】
ラッチ解除レバー２２１は、半導体記憶装置２２をコントローラ筐体１（又は、ドライブ筐体２）から取り外すときに操作される。
【００５６】
ＳＤメモリカードスロット２２２は、半導体記憶装置２２に交替領域を提供するＳＤメモリカード１０００を装着するためのインターフェースである。なお、ＳＤメモリカード１０００へ書き込まれるデータは、半導体記憶装置２２の制御部によって暗号化された後に書き込まれる。
【００５７】
状態表示ＬＥＤ２２３は、赤／青／緑を１セットとし、左右に４個ずつ（合計８個）を備える。各状態表示ＬＥＤ２２３は、８個の各ポートの負荷状態を表示する。例えば、高負荷の場合は赤色に点灯させ、中負荷の場合は黄色(赤：通常＋緑：通常)に点灯させ、小負荷の場合は緑色に点灯させ、及び負荷が極めて小さい場合は青色に点灯させる。
【００５８】
また、状態表示ＬＥＤ２２３によって、半導体記憶装置２２の動作状態を表示して、保守用途に使用してもよい。例えば、半導体記憶装置２２に障害が発生した場合は、赤色に点滅させ、交替領域の残容量が閾値以下になった場合は、橙色（赤：通常＋緑：減光）に点滅させることができる。この場合、ユーザは、状態表示ＬＥＤ２２３が橙色で点滅している半導体記憶装置２２のＳＤメモリカードスロット２２２に、ＳＤメモリカード１０００を装着することによって、直ちに半導体記憶装置２２を交換することなく、半導体記憶装置２２を継続して動作させることができる。
【００５９】
このように、状態表示ＬＥＤ２２３を半導体記憶装置２２の前面側から視認可能な位置に設けることによって、ユーザは、筐体の前面扉を開くことによって、ストレージシステムに実装された半導体記憶装置２２の負荷状態を一目で確認することができ、ボリュームの負荷を直感的に理解することができる。このため、負荷を分散するための、ボリュームの再配置の計画が容易になる。
【００６０】
また、半導体記憶装置２２の前面には、複数の空気導入孔２２４を備える。
【００６１】
図６Ａは、本発明の第１の実施の形態の半導体記憶装置２２のケースの構造を示す透視図である。
【００６２】
半導体記憶装置２２は、前面に空気導入孔２２４を備え、背面に空気排出口２２５を備える。例えば、コントローラ筐体１の中央部に排気ファンを設けることによって、コントローラ筐体１内の気流を前面から中央部に及び背面から中央部に流れるように制御すれば、半導体記憶装置２２の前面から背面に空気が流れる。
【００６３】
このようにすれば、磁気ディスクドライブ２１が実装されたＨＤＤモジュールの前面から導入した空気が、ＨＤＤの外周を流れるのに対し、半導体記憶装置２２の内部へ空気を導入することができる。
【００６４】
半導体記憶装置２２は、前面の下部にＳＤメモリカード１０００を挿入するための穴２２６を備える。
【００６５】
図６Ｂは、本発明の第１の実施の形態の半導体記憶装置２２の内部構造を示す斜視図である。
【００６６】
半導体記憶装置２２は、ベース基板２２０１、前面基板２２０２及び増設メモリ基板２２０３、２２０４、２２０５）を備える。
【００６７】
ベース基板２２０１は、インターフェースコネクタ２２８、不揮発性メモリ２２２５（図７参照）、制御部２２２２、２２２３（図７参照）、コネクタ２２１１及びスタッキングコネクタ２２１２、２２１３を備える。コネクタ２２１１は、前面基板２２０２と接続される。スタッキングコネクタ２２１２は増設メモリ基板２２０３と接続される。スタッキングコネクタ２２１３は増設メモリ基板２２０４と接続される。
【００６８】
前面基板２２０２は、コネクタ２２１１によってベース基板２２０１に取り付けられる。前面基板２２０２は、左右に４個ずつ（合計８個）の状態表示ＬＥＤ２２３を備える。また、前面基板２２０２は、下部にＳＤメモリカードスロット２２２を備える。
【００６９】
増設メモリ基板２２０３は、スタッキングコネクタ２２１２によってベース基板２２０１に取り付けられる。増設メモリ基板２２０４は、スタッキングコネクタ２２１３によってベース基板２２０１に取り付けられる。増設メモリ基板２２０５は、スタッキングコネクタ２２１４によって増設メモリ基板２２０３に取り付けられる。増設メモリ基板２２０３、２２０４、２２０５は、不揮発性メモリ素子を備える。
【００７０】
スタッキングコネクタ２２１２、２２１３及び２２１４は、その長手方向が、半導体記憶装置２２の前面から背面に向かう方向に沿って配設される。本実施の形態の半導体記憶装置２２は、その内部に風を通す構造であるため、スタッキングコネクタが空気の流れを妨げないように、スタッキングコネクタの長手方向が空気の流れと並行になるように配置されている。
【００７１】
図７は、本発明の第１の実施の形態の半導体記憶装置２２（ベース基板２２０１）の構成を示すブロック図である。
【００７２】
第１の実施の形態の半導体記憶装置２２は、インターフェースコネクタ２２８、物理インターフェース２２２１、プロトコル制御部２２２２、プロセッサ２２２３、メモリ２２２４、不揮発性メモリ２２２５、ＳＤメモリカードスロット２２２、状態表示ＬＥＤ２２３、電源コネクタ２２９、バックアップ電源２２２６及び増設メモリ接続用コネクタ２２１３を備える。
【００７３】
インターフェースコネクタ２２８は、図８Ｂ及び図８Ｃを用いて後述するように、８ポートのＳＡＳインターフェースを収容する高密度コネクタである。
【００７４】
物理インターフェース２２２１は、ＳＡＳプロトコルに従った信号を入出力するためのドライバである。プロトコル制御部２２２２は、ＳＡＳプロトコルに従った信号の入出力を制御するためのコントローラである。
【００７５】
ＳＡＳ規格では、８個の物理ポートまでは同一ＳＡＳアドレスでアクセス可能である。よって、従来の２個の物理ポートを備える記憶装置と同じ論理インターフェースによって本実施の形態の半導体記憶装置２２のポート（現用系４ポート、待機系４ポート）を制御することができる。なお、現用系で８ポートを使用する場合は、待機系で８ポートを使用するので、現用系及び待機系で２つのＳＡＳアドレスが必要になる。なお、リンク毎にＳＡＳアドレスを設定してもよい。
【００７６】
プロセッサ２２２３は、メモリ２２２４に格納されたプログラムを実行することによって、半導体記憶装置２２の動作、例えば、不揮発性メモリ２２２５へのデータの入出力を制御する。メモリ２２２４は、プロセッサ２２２３によって実行されるプログラム及びプログラムを実行するために必要なデータを格納する。不揮発性メモリ２２２５は、半導体記憶装置２２に転送されるデータを格納するメモリである。
【００７７】
ＳＤメモリカードスロット２２２は、半導体記憶装置２２に交替領域を提供するＳＤメモリカード１０００を装着するためのインターフェースである。状態表示ＬＥＤ２２３は、半導体記憶装置２２の各ポートの負荷状態及び半導体記憶装置２２の動作状態を表示する。
【００７８】
電源コネクタ２２９は、半導体記憶装置２２に電源を供給するためのインターフェースである。バックアップ電源２２２６は、２次電池もしくは大容量キャパシタを備え、半導体記憶装置２２への電源の供給が停止した後の所定時間、半導体記憶装置２２の各部に電源を供給する。増設メモリ接続用コネクタ（スタッキングコネクタ）２２１２、２２１３は、増設メモリ基板２２０４を接続するためのインターフェースである。
【００７９】
図８Ａから図８Ｃは、本発明の第１の実施の形態の記憶装置（磁気ディスクドライブ２１、半導体記憶装置２２）のインターフェースコネクタの配置の例を示す図である。
【００８０】
図８Ａに示すように、ＳＡＳインターフェースを備える磁気ディスクドライブ２１は、二つのデータ入出力ポートが含まれるＳＡＳインターフェースコネクタ２２７を備える。
【００８１】
また、図８Ｂに示すように、半導体記憶装置２２は、従来のＳＡＳインターフェースコネクタ２２７と、複数のデータ入出力ポートが含まれる高密度ＳＡＳインターフェースコネクタ２２８とを備える。図８Ｂに示す場合、８ポートを高密度ＳＡＳインターフェースコネクタ２２８経由で接続してもよく、２ポートを従来のＳＡＳインターフェースコネクタ２２７経由で、６ポートを高密度ＳＡＳインターフェースコネクタ２２８経由で接続してもよい。また、半導体記憶装置２２への電源は従来のＳＡＳインターフェースコネクタ２２７を経由して供給される。
【００８２】
また、図８Ｃに示すように、半導体記憶装置２２は、複数のデータ入出力ポートが含まれる高密度ＳＡＳインターフェースコネクタ２２８と、電源コネクタ２２９とを備えてもよい。図８Ｃに示す場合、８ポートが高密度ＳＡＳインターフェースコネクタ２２８経由で提供される。また、半導体記憶装置２２への電源は電源コネクタ２２９を経由して供給される。
【００８３】
すなわち、本実施の形態のストレージシステムにおいて、磁気ディスクドライブ２１及び半導体記憶装置２２は、従来のＳＡＳインターフェースコネクタ２２７、高密度ＳＡＳインターフェースコネクタ２２８及び電源コネクタ２２９が互いに干渉することなく、必要なコネクタを使用することができる。この場合、磁気ディスクドライブ２１は２ポートのみを使用し、半導体記憶装置２２は８ポートを使用する。
【００８４】
図９Ａから図９Ｈは、本発明の第１の実施の形態の記憶領域の論理分割と、論理分割された記憶領域のパス（帯域）の割り当ての例を示す説明図である。
【００８５】
図９Ａに示す半導体記憶装置２２の場合、記憶領域は論理分割されず、一つの論理的記憶領域として提供される。この場合、現用系の４個のパスは２４Ｇｂｉｔ／ｓの一つのリンクを形成して、高速にデータを転送するワイドリンクパスとして使用される。
【００８６】
図９Ｂに示す半導体記憶装置２２の場合、記憶領域は等しい容量の二つの領域に論理分割される。この場合、現用系の４個のパスは１２Ｇｂｉｔ／ｓのリンクを形成して、高速にデータを転送する二つのマルチリンクパスに設定され、各１２Ｇｂｉｔ／ｓのパスは論理分割された各記憶領域に割り当てられる。よって、論理分割された各記憶領域は、独立に１２Ｇｂｉｔ／ｓの帯域を使ってデータを転送することができる。本発明においては、このようにワイドリンクとして使用可能なリンク内を複数のリンクに分割し、前記分割したリンクを独立して転送可能とする技術を、従来技術であるワイドリンクと区別する為に、マルチリンクと称することにする。
【００８７】
図９Ｄに示す半導体記憶装置２２の場合、記憶領域は等しい容量の四つの領域に論理分割される。この場合、現用系の４個の６Ｇｂｉｔ／ｓのパスは論理分割された各記憶領域に割り当てられる。よって、論理分割された各記憶領域は、独立に６Ｇｂｉｔ／ｓの帯域を使ってデータを転送することができる。
【００８８】
図９Ａ、図９Ｂ及び図９Ｄに示す半導体記憶装置２２の場合、記憶領域の分割の割合とパスの分割の割合とが均等であった。しかし、本発明の実施の形態では、記憶領域の分割の割合とパスの分割の割合とが均等でなくてもよい。
【００８９】
例えば、図９Ｃに示す半導体記憶装置２２の場合、記憶領域は等しい容量の三つの領域に論理分割される。この場合、現用系の４個のパスは、一つの１２Ｇｂｉｔ／ｓのマルチリンクパスと二つの６Ｇｂｉｔ／ｓのパスとに設定される。そして、論理分割された一つの領域には１２Ｇｂｉｔ／ｓのパスが割り当てられ、他の二つの領域には各々６Ｇｂｉｔ／ｓのパスが割り当てられる。よって、論理分割された各記憶領域は、独立に割り当てられた１２Ｇｂｉｔ／ｓ又は６Ｇｂｉｔ／ｓの帯域を使ってデータを転送することができる。
【００９０】
このように論理分割された記憶領域に一つのパス又は複数のパスを纏めたマルチリンクパスを割り当てることによって、Ｉ／Ｆ全体の帯域を記憶装置の性能に応じて適切に配分できる。そして、磁気ディスクドライブより高い速度で読み書き可能な半導体記憶装置２２の性能を生かすことができる。
【００９１】
すなわち、現用系で４ポートを使用し、記憶領域を論理的に４分割した場合、記憶領域の分割数が４までは記憶装置毎にポートを設定することができる。プロセッサ４００は半導体記憶装置２２にモードセレクトコマンドを送信し、論理分割数及び分割された各領域のアドレス範囲を指示する。半導体記憶装置２２は、受信したモードセレクトコマンドに従って、論理分割された領域とポートとを関連付けし、論理分割された各領域に識別子（ＬＵＮ）を割り当てる。
【００９２】
使用可能な物理ポート数を越えて記憶領域を分割した場合、コントローラ側（プロセッサ４００）でＩ／Ｏターゲットの記憶領域を指定することが、パフォーマンス的には望ましい。しかし、半導体記憶装置２２の処理能力に余裕がある場合は、記憶装置側でＩ／Ｏターゲットの記憶領域を判定してもよい。
【００９３】
このように、記憶領域の分割の割合とパスの分割の割合とを不均等にすることによって、ユーザの要求に適合するように論理分割された記憶領域を提供することができる。
【００９４】
また、記憶装置の論理分割を、ストレージシステムの論理分割と組み合わせることによって、さらにきめ細かい性能を調整することができる。
【００９５】
次に、磁気ディスクドライブ２１の場合の記憶領域の論理分割と、論理分割された記憶領域のパス（帯域）の割り当ての例について説明する。
【００９６】
図９Ｅに示す磁気ディスクドライブ２１の場合、現用系のパスは１本しか設定できないので、待機系のパスを現用系に転用しない限り、パスを論理分割することはできない。よって、記憶領域が二つの領域に分割された場合でも、論理分割された各領域で６Ｇｂｉｔ／ｓのパス（帯域）が、論理分割された二つの領域によって共用される。
【００９７】
また、図９Ｆに示す磁気ディスクドライブ２１のように、記憶領域が分割できない場合、１本の現用系のパスが記憶領域に割り当てられる。よって、６Ｇｂｉｔ／ｓのパス（帯域）が、一つの領域によって使用される。
【００９８】
図１０は、図９Ａから図９Ｆに示す論理分割とパスの割り当てとを実現するための構成情報の説明図である。
【００９９】
図１０に示す構成情報はプロセッサ４００によって管理され、共有メモリ４５０に格納されている。この構成情報は、ホストグループ１７０１、論理分割グループ１７０２、フロントエンドポート１７０３、システム処理能力１７０４、キャッシュ容量、モード１７０５、バックエンドゾーニング１７０６、ボリュームグループ１７０７、ドライブタイプ１７０８、及び論理分割の割当情報（領域情報１７０９、パス情報１７１０）を含む。
【０１００】
ホストグループ１７０１は、この論理分割グループ（記憶領域）にアクセスするホスト計算機１０のグループの識別子である。論理分割グループ１７０２は、論理分割された記憶領域の識別子である。フロントエンドポート１７０３は、この論理分割グループへのアクセスのために使用されるチャネル制御部１００のポートの識別子であり、この論理分割グループへのアクセスのために使用されるポート数の情報も含む。
【０１０１】
システム処理能力１７０４は、この論理分割グループへのアクセス処理の性能である。キャッシュ容量、モード１７０５は、この論理分割グループへのアクセスのために使用されるキャッシュメモリ４００の容量、及び、キャッシュメモリ４００へのアクセスモード（ランダムアクセスか、シーケンシャルアクセスか）である。バックエンドゾーニング１７０６は、この論理分割グループへのアクセスに使用されるディスク制御部２００下のパスのゾーニングの種類である。
【０１０２】
ボリュームグループ１７０７は、この論理分割グループを構成する論理ボリュームの識別子である。ドライブタイプ１７０８は、この論理分割グループを構成する記憶装置の種類である。
【０１０３】
論理分割の割当情報は、領域情報１７０９及びパス情報１７１０を含む。領域情報１７０９は、この論理分割グループを構成する記憶容量である。パス情報１７１０は、この論理分割グループへのアクセスに使用されるパスの帯域である。
【０１０４】
想定負荷１７１１は、このテーブル内に例として設定された論理分割グループへのアクセス負荷の想定である。
【０１０５】
なお、半導体記憶装置２２は高速で応答が可能であるため、磁気ディスクドライブ２１よりキャッシュメモリ４００の容量の割り当てを小さくすることができる。また、図１０に示す構成情報では、磁気ディスクドライブ２１は、データ転送の速度より磁気ディスクへのアクセス性能がボトルネックであるため、一つのポートを割り当てている。しかし、半導体メモリを混載したハイブリッドタイプの磁気ディスクドライブの場合や、磁気ディスクの記録密度が向上して、磁気ディスクドライブのパフォーマンスが向上した場合等では、半導体記憶装置２２と同様に複数のポートを割り当ててもよい。
【０１０６】
図１１は、本発明の第１の実施の形態のストレージシステムにおいて設定されたリンクの例を説明する図である。なお、図１１は現用系のリンクのみを示し、待機系のリンクは図示した現用系のリンクと同数備わるとよい。
【０１０７】
コントローラ筐体１のコントローラ６００Ａ上のプロトコル制御部６０２Ａは各々８個の物理インターフェース６０１Ａを制御している。各物理インターフェース６０１Ａは、一つの物理ポートを提供し、各ポートが一つのリンクを形成している。
【０１０８】
コントローラ筐体１から出力されるリンクのうち、半導体記憶装置２２へのリンクは、４本ずつ纏められ、２４Ｇｂｉｔ／ｓの二つのリンクを形成している。一方、磁気ディスクドライブ２１へのリンクは、６Ｇｂｉｔ／ｓの八つのリンクを形成している。
【０１０９】
コントローラ筐体１と接続されるドライブ筐体２ＡのＳＡＳエクスパンダ６００Ａは、コントローラ筐体１からの八つのリンクを４本ずつ纏め、２４Ｇｂｉｔ／ｓの二つを形成し、２４Ｇｂｉｔ／ｓのリンクを二つの半導体記憶装置２２に提供する。
【０１１０】
ドライブ筐体２ＡのＳＡＳエクスパンダ６００Ｂは、６Ｇｂｉｔ／ｓの八つのリンクのまま、ドライブ筐体２Ｂに出力する。ドライブ筐体２ＢのＳＡＳエクスパンダ６００Ｃは、６Ｇｂｉｔ／ｓの八つのリンクを磁気ディスクドライブ２１に提供する。
【０１１１】
すなわち、半導体記憶装置２２へのデータ転送には、複数のリンクを纏めたマルチリンクを使用する。一方、磁気ディスクドライブ２１へのデータ転送には、マルチリンクを使用しないで、各パスを独立に制御する。なお、記憶装置へのパスの一部分をマルチリンクとし、マルチリンクと独立のリンクを組み合わせてパスを形成してもよい。
【０１１２】
次に、仮想的に構成されたマルチリンクについて説明する。
【０１１３】
本実施の形態では、半導体記憶装置２２の、各々６Ｇｂｉｔ／ｓの四つのポートを使用して、仮想マルチリンクによって、最大１２Ｇｂｉｔ／ｓの４本の仮想リンクを構成する。
【０１１４】
管理者は、ストレージシステムに（例えば、管理ネットワークを介して）接続された管理計算機を用いて、半導体記憶装置２２の記憶容量を論理的に分割し、分割された記憶領域毎に仮想ストレージを構成する。
【０１１５】
ストレージシステムのプロセッサ４００は、管理者の指示に従って、コントローラユニット１０２０のリソース（各制御部の処理能力、プロセッサの処理能力、及びキャッシュの容量）を配分し、ＳＡＳエクスパンダ６００のゾーニングを設定することによって、仮想マルチリンクのための物理ポートのペアを設定する。さらに、仮想マルチリンクが適用される半導体記憶装置２２にも、論理分割及び仮想マルチリンクを設定する。
【０１１６】
ＳＡＳエクスパンダ６００及び半導体記憶装置２２のマルチリンクの設定が完了した後、プロセッサ４００は、マルチリンク開始のコマンドをＳＡＳエクスパンダ６００に発行する。ＳＡＳエクスパンダ６００は、当該コマンドを受信した後、配下の半導体記憶装置２２とリンクのネゴシエーションを開始する。ＳＡＳエクスパンダ６００は、当該ネゴシエーションの完了後、設定されたモードによる動作を開始し、当該動作が可能である旨の通知をプロセッサ４００に報告する。
【０１１７】
プロセッサ４００は、当該通知を受信した後、同時に動作可能な二つのペア（例えば、ポート０／１とポート２／３、ポート１／２とポート０／３）の属する論理分割グループの並列処理を優先して行うように、ディスク制御部２００等を設定する。
【０１１８】
ディスク制御部２００は、コントローラから書き込まれる処理キューを監視して、並列処理が可能なＩ／Ｏを優先的に実行するように、コマンドの実行順序を制御する。これによって、帯域を効率的に使用することができる。
【０１１９】
また、ＳＡＳエクスパンダ６００は、一つの物理ポートを複数の論理区画に割り当てる仮想ゾーニーングによって、複数の論理区画で物理ポートを共用しつつ、論理区画毎にストレージドメインを形成することができる。
【０１２０】
また、半導体記憶装置２２とＳＡＳエクスパンダ６００との間の複数のポートを、論理分割されたリンク毎に休止してもよい。また、ポート（リンク）の休止に対応して半導体記憶装置２２の対応する記憶領域を停止してもよい。このように論理分割毎にストレージシステムの動作を停止することによって、消費電力を低減することができる。
【０１２１】
また、各論理区画の負荷に応じて、半導体記憶装置２２とＳＡＳエクスパンダ６００との間の複数のポートの一部を休止してもよい。
【０１２２】
図１２Ａから図１２Ｄは、本発明の第１の実施の形態のストレージシステムにおいて設定されたリンクの例を説明する図である。図１２Ａから図１２Ｄに示すリンクの例は、一つ又は複数のリンクを時分割して、複数の記憶領域で共用する。
【０１２３】
図１２Ａは、論理分割された記憶領域に割り当てられたリンクを時分割で使用してデータを転送する仮想マルチリンクの例を示す。
【０１２４】
記憶領域は四つの記憶領域１１０１〜１１０４に分割されている。ポート（リンク）は複数の記憶領域によって共用されるように割り当てられる。すなわち、記憶領域１１０１にはリンク１及び２が割り当てられ、データ１１１１はリンク１及び２によって記憶領域１１０１に転送される。記憶領域１１０２にはリンク２及び３が割り当てられ、データ１１１２はリンク２及び３によって記憶領域１１０２に転送される。記憶領域１１０３にはリンク１及び４が割り当てられ、データ１１１３はリンク１及び４によって記憶領域１１０３に転送される。記憶領域１１０４にはリンク３及び４が割り当てられ、データ１１１４はリンク３及び４によって記憶領域１１０４に転送される。
【０１２５】
この場合、プロセッサ４００もしくはディスク制御部２００は、半導体記憶装置２２にデータを転送する場合、割り当てられたポートをチェックして、ポートが空いているか否かを判定する。そして、空いているポートを使用して一つのリンクを形成するようにデータを転送する。
【０１２６】
このように各リンクを時分割して使用することで、各記憶領域では最大１２Ｇｂｉｔ／ｓでデータを転送することができる。
【０１２７】
図１２Ｂは、図１２Ａに示すリンク１に障害が発生した場合に、待機系のリンク５を使用してデータを転送する状態を示す。
【０１２８】
リンク１には障害が発生したので、リンク１の代わりに待機系のリンク５が現用系に割り当てられる。
【０１２９】
このため、記憶領域１１０１にはリンク２及び５が割り当てられ、記憶領域１１０１に転送されるデータ１１１１はリンク２及び５によって転送される。記憶領域１１０３にはリンク４及び５が割り当てられ、記憶領域１１０３に転送されるデータ１１１３はリンク４及び５によって転送される。記憶領域１１０２及び１１０４に対するリンクの割り当ては、図１２Ａに示した場合と同じである。
【０１３０】
このように、本実施の形態では、現用系及び待機系のパスを自由に組み合わせてリンクを形成することができるので、一部のリンクに障害が発生した場合でも、従来のＳＡＳ規格のワイドリンクのように、纏められたリンクの全てを切り換える必要がない。すなわち、現用系の一部のパスに障害が発生した場合、障害が発生した一部のパスのみを切り換えることによって、待機系のリンクの一部を併用して、データを転送することができる。このため、障害発生時も通常時と同じ帯域を使用してデータを転送することができる。
【０１３１】
図１２Ｃは、通常時に、現用系のリンク１〜４及び待機系のリンク５〜８も使用してデータを転送する例を示す。
【０１３２】
記憶領域１１０１にはリンク１、２、７及び８が割り当てられ、データ１１１１はリンク１、２、７及び８によって記憶領域１１０１に転送される。記憶領域１１０２にはリンク２、３、５及び８が割り当てられ、データ１１１２はリンク２、３、５及び８によって記憶領域１１０２に転送される。記憶領域１１０３にはリンク１、４、６及び７が割り当てられ、データ１１１３はリンク１、４、６及び７によって記憶領域１１０３に転送される。記憶領域１１０４にはリンク３、４、５及び６が割り当てられ、データ１１１４はリンク３、４、５及び６によって記憶領域１１０４に転送される。
【０１３３】
このように現用系及び待機系のリンクを時分割して使用すると、各記憶領域では最大２４Ｇｂｉｔ／ｓでデータを転送することができ、ストレージシステムに備わるデータ転送帯域を有効に使用することができる。
【０１３４】
図１２Ｄは、図１２Ｃに示すリンク１に障害が発生した場合に、リンク１を使用していた記憶領域へのデータ転送を縮退してデータを転送する状態を示す。
【０１３５】
リンク１には障害が発生したので、記憶領域１１０１にはリンク７及び８が割り当てられ、データ１１１１はリンク７及び８によって記憶領域１１０１に転送される。記憶領域１１０３にはリンク６及び７が割り当てられ、データ１１１３はリンク６及び７によって記憶領域１１０３に転送される。記憶領域１１０２及び１１０４に対するリンクの割り当ては、図１２Ｃに示した場合と同じである。
【０１３６】
このように、本実施の形態では、現用系及び待機系のパスを自由に組み合わせてリンクを形成することができるので、従来のＳＡＳ規格のワイドリンクのように、纏められたリンクの全てを切り換える必要がない。すなわち、現用系のパスと同じ帯域の待機系のパスを用意しておかなくてもよい。このため、一部のパスに障害が発生した場合に、パスを縮退し、データの転送を継続することができる。
【０１３７】
図１３Ａは、本発明の第１の実施の形態のプロセッサ４００が管理する管理テーブル１２００の構成を示す説明図である。
【０１３８】
管理テーブル１２００は、論理分割された記憶領域とディスク制御部２００のポートとの関係を示し、論理分割グループ１２０１、仮想マルチリンク１２０２、ターゲットポート１２０３及びディスクグループ１２０４を含む。
【０１３９】
論理分割グループ１２０１は、論理分割されたストレージシステムの論理区画の識別子である。仮想マルチリンク１２０２は、仮想的なマルチリンクとして使用されるリンクの数である。ターゲットポート１２０３は、ディスク制御部２００のポートの識別子である。ディスクグループ１２０４は、ＳＡＳエクスパンダ６００のポート（このポートに接続されている記憶装置）の識別子である。
【０１４０】
なお、管理テーブル１２００のエントリ１２０５は通常時のポートの割り当てを示し、エントリ１２０６はポートＡ０に障害が発生した場合のポートの割り当てを示す。
【０１４１】
図１３Ｂは、本発明の第１の実施の形態のＳＡＳエクスパンダ６００が管理する管理テーブル１２１０の構成を示す説明図である。
【０１４２】
管理テーブル１２１０は、論理分割された記憶領域とＳＡＳエクスパンダ６００のポートとの関係を示し、物理ポート１２１１、仮想ゾーングループ１２１２、仮想マルチリンク１２１３及び物理リンク１２１４のマッピング情報を含む。
【０１４３】
物理ポート１２１１は、ＳＡＳエクスパンダ６００のポートの識別子である。仮想ゾーングループ１２１２は、論理分割されたストレージシステムの論理区画の識別子である。仮想マルチリンク１２１３は、仮想的なマルチリンクとして使用されるリンクの数である。物理リンク１２１４は、物理的リンクの識別子である。
【０１４４】
管理テーブル１２１０から分かるように、仮想リンクは一つのゾーンに対応しており、物理リンクは複数のゾーンにシェアされている。
【０１４５】
図１４は、本発明の第１の実施の形態のコントローラ筐体１のプロセッサ４００及びディスク制御部２００において実行される処理のフローチャートである。
【０１４６】
まず、ホスト計算機１０からのＩ／Ｏ要求（書込要求、読出要求）を受けると、プロセッサ４００は、記憶装置２１、２２へのＩ／Ｏを実行するためのコマンドを処理キューに格納し、コマンドを処理キューに格納した旨をディスク制御部２００に指示する（Ｓ１０１）。
【０１４７】
ディスク制御部２００は、コマンドを処理キューに格納した旨の指示を受信した後、処理キューに格納されたコマンドを読み出す（Ｓ１０２）。そして、ディスク制御部２００は、処理キューから読み出されたコマンドと並行して実行可能なコマンドがあるか否かを判定する（Ｓ１０３）。
【０１４８】
判定の結果、処理キューから読み出されたコマンドと並行して実行可能なコマンドがある場合、ディスク制御部２００は、処理キューから読み出されたコマンド及び並行して実行可能なコマンドを実行する（すなわち、実行されるコマンドに対応したＩ／ＯコマンドをＳＡＳインターフェース（ＳＡＳエクスパンダ６００）に出力する）。そして、両コマンドの実行が終了した後、処理キューから読み出されたコマンドをキューから削除し（Ｓ１０４）、並列して実行されたコマンドをキューから削除する（Ｓ１０５）。その後、ステップＳ１０７に進む。
【０１４９】
一方、処理キューから読み出されたコマンドと並行して実行可能なコマンドがない場合、ディスク制御部２００は、処理キューから読み出されたコマンドを実行する。そして、コマンドの実行が終了した後、処理キューから読み出されたコマンドをキューから削除する（Ｓ１０６）。その後、ステップＳ１０７に進む。
【０１５０】
ステップＳ１０７では、ディスク制御部２００は、全ての処理キューにコマンドが格納されているか否かを判定する。判定の結果、いずれの処理キューにもコマンドが格納されていない場合、待機状態へ移行する。一方、いずれかの処理キューにコマンドが格納されている場合、ステップＳ１０２へ戻り、処理キューに格納されているコマンドを処理する。
【０１５１】
図１５は、本発明の第１の実施の形態のコントローラ筐体１のＳＡＳエクスパンダ６００において実行される処理のフローチャートである。
【０１５２】
ＳＡＳエクスパンダ６００は、ディスク制御部２００からのＩ／Ｏコマンドを受けると、Ｉ／Ｏコマンドによってデータを転送しようとするポートの状態を参照し、このポートはデータ転送中であるか否かを判定する（Ｓ１１１）。
【０１５３】
判定の結果、Ｉ／Ｏコマンドによってデータを転送しようとするポートがデータ転送中である場合、さらに、管理テーブル１２１０（図１３Ｂ）を参照し、このポートがマルチリンクされるポートであるか否かを判定する（Ｓ１１２）。
【０１５４】
判定の結果、このポートがマルチリンクされるポートである場合、さらに、このＩ／Ｏはマルチリンクによって転送可能か否かを判定する（Ｓ１１３）。
【０１５５】
判定の結果、このＩ／Ｏはマルチリンクによって転送可能である場合、受信したＩ／Ｏコマンドに従って、マルチリンクでＩ／Ｏを処理（データを転送）する（Ｓ１１４）。
【０１５６】
一方、ポートがマルチリンクされるポートでない場合（Ｓ１１２でＮＯ）、又は、このＩ／Ｏはマルチリンクによって転送不可能である場合（Ｓ１１３でＮＯ）、ステップＳ１１１へ戻り、データを転送しようとするポートが空くまで待機する。
【０１５７】
さらに、Ｉ／Ｏコマンドによってデータを転送しようとするポートがデータ転送中ではない場合（Ｓ１１１でＮＯ）、さらに、データが転送されるポートがマルチリンクされるポートであるか否かを判定する（Ｓ１１５）。
【０１５８】
判定の結果、このポートがマルチリンクされるポートである場合、受信したＩ／Ｏコマンドに従って、マルチリンクを使用してＩ／Ｏを処理（データを転送）する（Ｓ１１４）。
【０１５９】
一方、ポートがマルチリンクされるポートでない場合、受信したＩ／Ｏコマンドに従って、処理通常の処理によって、Ｉ／Ｏを処理（データを転送）する（Ｓ１１６）。
【０１６０】
図１６は、本発明の第１の実施の形態の障害発生時のパス変更処理のフローチャートである。図１６に示すパス変更処理によって、図１２Ｂに示すようにパスが変更される。
【０１６１】
仮想マルチリンクが設定されているポートの障害が検出された後に、ＳＡＳエクスパンダ６００は、障害が発生したポートの障害通知をディスク制御部２００に通知する（Ｓ１２１）。
【０１６２】
ディスク制御部２００は、管理テーブル１２００（図１３Ａ）を参照し、障害が検出されたポートが含まれるワイドリンクの全てのリンクが使用不能となったか否かを判定する（Ｓ１２２）。
【０１６３】
判定の結果、障害が検出されたポートが含まれるワイドリンクの全てのリンクが使用不能となった場合、このポートに対応する待機系のポートにパスを変更する（Ｓ１２４）。
【０１６４】
一方、障害が検出されたポートが含まれるワイドリンクの一部のリンクが使用可能である場合、このマルチリンクに含まれるリンクのペアを変更し、パスの変更を、ＳＡＳエクスパンダ６００に通知する（Ｓ１２３）。
【０１６５】
ＳＡＳエクスパンダ６００は、パスの変更の通知を受信した後に、当該リンクのＩ／Ｏを変更されたパスへリダイレクトする（Ｓ１２５）。
【０１６６】
なお、図１２Ｄに示すパス変更の場合、障害が発生したパスを含む仮想マルチリンクの使用するリンク数を減らす設定がされる。
【０１６７】
以上説明したように、第１の実施の形態では、論理分割された記憶領域に一つのパス又はマルチリンクパスを割り当てることによって、Ｉ／Ｆ全体の帯域を記憶装置の性能に応じて適切に配分でき、ストレージシステムの性能を向上することができる。
【０１６８】
＜実施形態２＞
次に、本発明の第２の実施の形態について説明する。
【０１６９】
従来のストレージシステムでは、記憶装置への所定の書き込み単位毎に、データが正しいことを保証する検証コードを付加している。例えば、半導体記憶装置（いわゆる、ＳＳＤ）及びＳＡＴＡのディスクドライブでは５１２バイト毎に、また、ＦＣのディスクドライブでは５２０バイト毎に、ＬＡ、ＬＲＣ等の検証コードを付加している。
【０１７０】
さらに、コントローラが記憶装置にライト命令を発行しても、記憶装置にデータが書き込まれていないという問題が生じる場合がある。
【０１７１】
そのため、従来技術では、データを書き込んだ後に、書き込まれたデータを読み出して、書き込みデータと読み出されたデータとを１バイト毎に比較していた。又は、書き込みデータの検証コードと読み出されたデータの検証コードとを全て比較していた。
【０１７２】
しかし、前述した従来の方法では、書き込まれたデータを全て読み出すために転送帯域を消費し、データを比較するためにプロセッサの処理能力を消費するので、パフォーマンスの向上を妨げるという問題があった。このパフォーマンスの低下は、半導体記憶装置等の高速な処理が可能な記憶装置においては大きな問題となる。
【０１７３】
この課題に対し、シーケンシャルデータについて、先頭及び最終ブロックのデータのみを比較することが提案されている（例えば、特開２００５−１６５４４３号公報参照）。
しかし、前記の方法では、１回の書込みに対して、２回分のコマンド生成／発行およびステータス確認に要するオーバヘッドが大きいという問題があり、スループットの低下等が懸念される。
【０１７４】
この問題を解決するために、第２の実施の形態では、記憶装置の複数のブロックのデータに付加された検証コードのうち、最後のブロックのみ又は最後のブロックから数ブロックのデータに付加された検証コードを使用して、データを検証する。
【０１７５】
第２の実施の形態の検証コードは、例えば、８バイトで、アドレス検証コード（ＲＡＩＤグループ内のアドレス等のシーケンシャルな番号）、連続性検証コード（データの書き込み毎に生成される識別子、書き込まれたデータの一連番号、データの先頭及び末尾を示すフラグ等）、データ検証コード（データ保証のためのＣＲＣ又はＥＣＣ等のコード）、及び／又は、データ属性コード（データの種別（読取専用又はパリティ）等を示すコード）を用いることができる。
【０１７６】
図１７Ａ及び図１７Ｂは、本発明の第２の実施の形態の概要を説明する図である。
【０１７７】
図１７Ａに示すように、プロセッサ４００（コントローラ１０２０）は、記憶装置（磁気ディスクドライブ２１又は半導体記憶装置２２）に最終ブロックを書き込んだ（１６０１）後、書き込まれたデータを読み出すリード命令を発行し、書き込まれたデータを読み出す（１６０２）。そして、書き込みデータの検証コードと読み出されたデータの検証コードとを比較する（１６０３）。その結果、プロセッサ４００は、検証が成功した場合、ライト応答をホスト計算機１０に返信する。一方、プロセッサ４００は、検証に失敗した（書き込みデータの検証コードと読み出されたデータの検証コードとが一致しない）場合、エラーをホスト計算機１０に報告する。第２の実施の形態では、プロセッサ４００は、最終ブロック（又は、最後から数ブロック）のデータを読み出すリード命令を発行し、最終ブロック（又は、最後から数ブロック）の検証コードのみを比較する。
【０１７８】
図１７Ｂに示すように、第２の実施の形態の書き込みデータの検証では、前述したプロセッサ４００に代えて、ＳＡＳエクスパンダ６００又はＨＤＤに接続されたポートアプリケータ６１０が、書き込みデータの検証コードと読み出されたデータの検証コードとを比較してもよい（１６０３）。
【０１７９】
この場合、ＳＡＳエクスパンダ６００（又は、ポートアプリケータ６１０）は、記憶装置２１、２２に最終ブロックを書き込んだ（１６０１）後、記憶装置２１、２２のＷＲＩＴＥステータスを保留し、最終ブロック（又は、最後から数ブロック）のデータを記憶装置から読み出す（１６０２）。その後、ＳＡＳエクスパンダ６００は、書き込みデータの検証コードと読み出されたデータの検証コードとを比較する（１６０３）。その結果、ＳＡＳエクスパンダ６００は、検証が成功した場合、保留していたＷＲＩＴＥ応答をコントローラ１０２０に返信する（１６０４）。一方、検証に失敗した場合、エラーをコントローラ１０２０に報告する（１６０４）。
【０１８０】
このように、ＳＡＳエクスパンダ６００又はポートアプリケータ６１０が、書き込みデータを書き込みデータを検証することによって、書き込みデータの検証処理の負荷が分散され、コントローラ負荷を軽減することができる。
【０１８１】
さらに、記憶装置２１、２２が、書き込みデータを検証してもよい。このように、記憶装置２１、２２において書き込みデータの検証を分散処理すると、コントローラの負荷を軽減することができる。
【０１８２】
本実施の形態では、プロセッサ４００（ＳＡＳエクスパンダ６００、ポートアプリケータ６１０）によって実行されるデータの検証処理において処理されるデータ量は小さいため、ＷＲＩＴＥ応答の待ち時間を短縮でき、コントローラ１０２０のタイムアウトを抑止することができる。また、検証処理に消費されるＣＰＵの処理能力とデータ転送帯域を小さくしながら、書き込みデータを高信頼度で検証することができる。
【０１８３】
第２の実施の形態の書き込みデータの検証では、所定の条件を満たす場合に、書き込まれたブロックの全ての検証コードを比較することによって、より信頼性を向上することができる。この所定の条件には、データ書き込み前の所定時間内に、コントローラ１０２０が記憶装置２１、２２のエラーを検出した場合、及び、データ書き込み時又は検証用のデータを読み出す時にエラーが発生した場合がある。このような場合には、記憶装置２１、２２の動作が不安定であったり、記憶装置２１、２２が故障している可能性がある。よって、書き込まれた全範囲のデータを検証することによって、データ書き込みの信頼性を向上させることができる。
【０１８４】
また、周期的に（例えば、所定時間毎に）、書き込まれた全範囲のデータを検証することよい、このようにすることによって、記憶装置２１、２２の障害を早期に検出することができ、データ書き込みの信頼性をより向上させることができる。
【０１８５】
また、検証コードの比較のためのデータを読み出す範囲を長くし、検証コードによるデータの不一致が検出される可能性を向上させることができる。すなわち、比較のために読み出される検証コードが多くなるので、異常な検証コードが含まれる確率が高くなるのである。
【０１８６】
また、検証コード中に書き込み毎の管理コードを埋め込み、検証コードを比較するとよい。この管理コードは、データの書き込み毎に生成される識別子、書き込まれたデータの一連番号、データの先頭及び末尾を示すフラグ等、データの連続性を検証できる情報を用いるとよい。
【０１８７】
図１８は、本発明の第２の実施の形態のエラー検出モデルを示す説明図である。
【０１８８】
図１８では、例えば、１０ブロックのデータ１８０１を書き込む場合を考える。データが正常に記憶装置２１、２２に書き込まれた場合は、１０番目のデータは１０番目のセクタに書き込まれる（１８０２）。
【０１８９】
一方、記憶装置２１、２２で優先順位の高い内部処理による割り込みが発生することによって書き込みが中断した場合、記憶装置２１、２２は、割り込み処理の終了後にずれたセクタ１８０４から書き込みを再開する場合がある。本来はバグであるが、特定条件下での割り込みの競合など、再現や摘出が難しいケースでは見過ごされる事があり、結果、想定されていない状況が生じるため、このような場合、記憶装置２１、２２では、エラーを検出することができない場合がある。
【０１９０】
しかし、この場合でも、最終１ブロックのデータを読み出すことによって、データが正常に書き込まれたかを検証することができる（１８０１）。さらに、最終ブロックの前後１ブロックのデータを読み出すことによって、データの連続性及び書き込み対象領域外１８０５への影響を確認することができる。
【０１９１】
最終ブロックのデータのみを読み出すか、最終ブロックの前後数ブロックのデータを読み出すかは、管理者又はユーザの設定によって決めてもよい。また、書き込まれるデータが所定の閾値より大きい場合、複数ブロックのデータを検証のために読み出してもよい。具体的には、ＲＡＩＤストライプサイズ以上のデータを書き込む場合、複数ブロックのデータを検証のために読み出してもよい。また、書き込みデータ長と読み出しデータ長の比率が所定の閾値より大きい場合、複数ブロックのデータを検証のために読み出してもよい。また、データ書き込みのために消費される帯域が所定の閾値より大きい場合、複数ブロックのデータを検証のために読み出してもよい。また、記憶装置の負荷が所定の閾値より大きい場合、複数ブロックのデータを検証のために読み出してもよい。
【０１９２】
このように、検証のために読み出されるデータ長を、書き込まれるデータの長さによって制御することによって、さらに信頼性を向上させることができる。
【０１９３】
図１９は、本発明の第２の実施の形態のプロセッサ４００によって実行されるデータ検証処理のフローチャートである。
【０１９４】
まず、ホスト計算機１０から書き込みデータを受領すると、チャネル制御部１００は、受領したデータをキャッシュメモリ３００に格納する（Ｓ１３１）。そして、プロセッサ４００は、キャッシュメモリ３００に格納されたデータを読み出して、ホスト計算機１０から受領したデータの検証コードを生成する（Ｓ１３２）。プロセッサ４００は、書き込みコマンドを生成し、対象の記憶装置にデータを書き込む（Ｓ１３３）。
【０１９５】
その後、プロセッサ４００は、プロセッサ４００の負荷が所定の閾値より低いか否か、及び、書き込まれるデータの長さが所定の閾値を超えるか否かを判定する（Ｓ１３４）。
【０１９６】
判定の結果、プロセッサ４００の負荷が低い、又は、書き込まれたデータが長い場合、書き込まれた最終ブロックを含む、所定数のブロックのデータを読み出し（Ｓ１３７）、読み出された検証コードと書き込みデータの検証コードとを比較し、両者が一致するか否かを判定する（Ｓ１３８）。その結果、両者が一致しない場合、データは正しく書き込めていないと判定し、エラー処理を実行する（Ｓ１３９）。一方、両者が一致する場合、データは正しく書き込めたと判定し、このデータ検証処理を終了する。
【０１９７】
ステップＳ１３４における判定の結果、プロセッサ４００の負荷が高い、又は、書き込まれたデータが短い場合、書き込まれた最終ブロックのデータを読み出し（Ｓ１３５）、読み出された検証コードと書き込みデータの検証コードとを比較し、両者が一致するか否かを判定する（Ｓ１３６）。その結果、両者が一致しない場合、データは正しく書き込めていないと判定し、エラー処理を実行する（Ｓ１３９）。一方、両者が一致する場合、データは正しく書き込めたと判定し、このデータ検証処理を終了する。
【０１９８】
以上説明したように、第２の実施の形態では、書き込みデータの検証のために消費される帯域が少ないので、パフォーマンスに優れている。このため、ユーザの高パフォーマンス要求に応えることができる。
【０１９９】
また、第２の実施の形態は、前述した特開２００５−１６５４４３号公報に記載された技術と異なり、書き込みデータがシーケンシャルデータであるかに拘わらず適用することができる。
【０２００】
また、第２の実施の形態では、前述した特開２００５−１６５４４３号公報に記載された技術と異なり、最初のブロックのデータを用いていない。このため、連続したブロックのデータを１回の読み出しコマンドで読み出すことができ、従来技術のように最初ブロックと最後のブロックとを読み出すために２回の読み出しコマンドを発行する必要がない。
【０２０１】
また、第２の実施の形態では、前述した特開２００５−１６５４４３号公報に記載された技術と異なり、ブロックの全データを比較せず、検証コードのみを比較する。
【０２０２】
さらに、第２の実施の形態では、最終ブロック以降のデータも読み出して検証する。よって、従来技術では含まれない範囲のデータ信頼性を向上させることができる。
【０２０３】
さらに、第２の実施の形態では、検証コードに規則性がある情報を用いることによって、データ比較のようなＯＫ又はＮＧの判断以外に、検証コードの規則性を用いてエラー原因を特定することができる。よって、データ書き込み処理の信頼性を向上させることができる。
【０２０４】
さらに、第２の実施の形態では、比較するデータが少なく、単純な演算処理によって比較できることから、八一ドウェアヘの組み込みが容易となる。
【図面の簡単な説明】
【０２０５】
【図１Ａ】本発明の第１の実施の形態の概要を示す説明図である。
【図１Ｂ】本発明の第１の実施の形態の概要を示す説明図である。
【図２】本発明の第１の実施の形態のストレージシステムの正面図である。
【図３Ａ】本発明の第１の実施の形態のコントローラ筐体の前面扉を開いた状態の内部の構造を示す図である。
【図３Ｂ】本発明の第１の実施の形態のコントローラ筐体の背面扉を開いた状態の内部の構造を示す図である。
【図４】本発明の第１の実施の形態のストレージシステムの構成を示すブロック図である。
【図５】本発明の第１の実施の形態の半導体記憶装置の正面図である。
【図６Ａ】本発明の第１の実施の形態の半導体記憶装置のケースの構造を示す透視図である。
【図６Ｂ】本発明の第１の実施の形態の半導体記憶装置の内部構造を示す斜視図である。
【図７】本発明の第１の実施の形態の半導体記憶装置（ベース基板）の構成を示すブロック図である。
【図８Ａ】本発明の第１の実施の形態の記憶装置のインターフェースコネクタの配置の例を示す図である。
【図８Ｂ】本発明の第１の実施の形態の記憶装置のインターフェースコネクタの配置の例を示す図である。
【図８Ｃ】本発明の第１の実施の形態の記憶装置のインターフェースコネクタの配置の例を示す図である。
【図９Ａ】本発明の第１の実施の形態の記憶領域の論理分割と、論理分割された記憶領域のパス（帯域）の割り当ての例を示す説明図である。
【図９Ｂ】本発明の第１の実施の形態の記憶領域の論理分割と、論理分割された記憶領域のパス（帯域）の割り当ての例を示す説明図である。
【図９Ｃ】本発明の第１の実施の形態の記憶領域の論理分割と、論理分割された記憶領域のパス（帯域）の割り当ての例を示す説明図である。
【図９Ｄ】本発明の第１の実施の形態の記憶領域の論理分割と、論理分割された記憶領域のパス（帯域）の割り当ての例を示す説明図である。
【図９Ｅ】本発明の第１の実施の形態の記憶領域の論理分割と、論理分割された記憶領域のパス（帯域）の割り当ての例を示す説明図である。
【図９Ｆ】本発明の第１の実施の形態の記憶領域の論理分割と、論理分割された記憶領域のパス（帯域）の割り当ての例を示す説明図である。
【図１０】図９Ａから図９Ｆに示す論理分割とパスの割り当てとを実現するための構成情報の説明図である。
【図１１】本発明の第１の実施の形態のストレージシステムにおいて設定されたリンクの例を説明する図である。
【図１２Ａ】本発明の第１の実施の形態のストレージシステムにおいて設定されたリンクの例を説明する図である。
【図１２Ｂ】本発明の第１の実施の形態のストレージシステムにおいて設定されたリンク例を説明する図である。
【図１２Ｃ】本発明の第１の実施の形態のストレージシステムにおいて設定されたリンクの例を説明する図である。
【図１２Ｄ】本発明の第１の実施の形態のストレージシステムにおいて設定されたリンクの例を説明する図である。
【図１３Ａ】本発明の第１の実施の形態のディスク制御部のプロトコル制御部に備わる管理テーブルの構成を示す説明図である。
【図１３Ｂ】本発明の第１の実施の形態のＳＡＳエクスパンダのプロトコル制御部に備わる管理テーブルの構成を示す説明図である。
【図１４】本発明の第１の実施の形態のコントローラ筐体のプロセッサ及びディスク制御部において実行される処理のフローチャートである。
【図１５】本発明の第１の実施の形態のコントローラ筐体のＳＡＳエクスパンダにおいて実行される処理のフローチャートである。
【図１６】本発明の第１の実施の形態の障害発生時のパス変更処理のフローチャートである。
【図１７Ａ】本発明の第２の実施の形態の概要を説明する図である。
【図１７Ｂ】本発明の第２の実施の形態の概要を説明する図である。
【図１８】本発明の第２の実施の形態のエラー検出モデルを示す説明図である。
【図１９】本発明の第２の実施の形態のデータ検証処理のフローチャートである。
【符号の説明】
【０２０６】
２１  磁気ディスクドライブ
２２  半導体記憶装置
１００  チャネル制御部
２００  ディスク制御部
３００  キャッシュメモリ
４００  プロセッサ（ＣＰＵ）
５００  データコントローラ
６００  ＳＡＳエクスパンダ
６１０  ポートアプリケータ（ポート拡張器）
【図１Ａ】
2010092285.tif 000003
【図１Ｂ】
2010092285.tif 000004
【図３Ｂ】
2010092285.tif 000005
【図４】
2010092285.tif 000006
【図７】
2010092285.tif 000007
【図８Ａ】
2010092285.tif 000008
【図８Ｂ】
2010092285.tif 000009
【図８Ｃ】
2010092285.tif 000010
【図９Ａ】
2010092285.tif 000011
【図９Ｂ】
2010092285.tif 000012
【図９Ｃ】
2010092285.tif 000013
【図９Ｄ】
2010092285.tif 000014
【図９Ｅ】
2010092285.tif 000015
【図９Ｆ】
2010092285.tif 000016
【図１０】
2010092285.tif 000017
【図１１】
2010092285.tif 000018
【図１２Ａ】
2010092285.tif 000019
【図１２Ｂ】
2010092285.tif 000020
【図１２Ｃ】
2010092285.tif 000021
【図１２Ｄ】
2010092285.tif 000022
【図１３Ａ】
2010092285.tif 000023
【図１３Ｂ】
2010092285.tif 000024
【図１４】
2010092285.tif 000025
【図１５】
2010092285.tif 000026
【図１６】
2010092285.tif 000027
【図１７Ａ】
2010092285.tif 000028
【図１７Ｂ】
2010092285.tif 000029
【図１８】
2010092285.tif 000030
【図１９】
2010092285.tif 000031
【図２】
2010092285.tif 000032
【図３Ａ】
2010092285.tif 000033
【図５】
2010092285.tif 000034
【図６Ａ】
2010092285.tif 000035
【図６Ｂ】
2010092285.tif 000036