(57)【要約】【課題】  ディスクアレイ装置で、ＤＫＣを構成するボード／ＰＫ、それらの相互接続によるＤＫＣ構成に関し、スケーラビリティ、異種Ｉ/Ｆ間のデータ転送などの性能向上、及び保守性や信頼性の向上などを実現する。【解決手段】  ディスクアレイ装置１においてＤＫＣ１０は、ベースＰＫ１０１と、ベースＰＫ１０１に対して階層的に接続される、個々に分離された機能が実装された機能ＰＫ１０２とを有して構成されるミックスＰＫ１００の相互接続により構成される。ベースＰＫ１０１は、複数の異種のＩ/Ｆ-ＰＫ２１０を混在して接続可能で、機能ＰＫ１０２間及びＤＫＣ１０との通信のためのパッケージ内相互接続網１０３を有する。またプロセッサ相互接続網１５２を有する。ＤＫＣ１０で機能ＰＫ１０２とベースＰＫ１０１の処理を用いてデータ転送処理する。【選択図】  図２
2006244340.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置と前記記憶装置に対するデータの記憶を制御する記憶制御装置とを備えＲＡＩＤ制御可能なディスクアレイ装置であって、
前記記憶制御装置は、ボードを含んで構成される制御パッケージの相互接続により構成され、
前記制御パッケージは、前記相互接続のベースとなるベースパッケージと、前記ベースパッケージに対して階層的に接続される、個々に分離された機能が実装された機能パッケージとを有して構成され、
前記ベースパッケージは、前記相互接続のための第１の接続部と、複数の異種の前記機能パッケージを混在して接続可能な第２の接続部と、前記機能パッケージ間及び前記記憶制御装置との通信のためのパッケージ内接続網とを有し、
前記機能パッケージは、前記ベースパッケージに対する接続のための接続部を有し、
前記記憶制御装置において、前記機能パッケージとベースパッケージとの間の通信と、前記ベースパッケージ間の通信とを用いて、前記データの転送を含む処理を行うことを特徴とするディスクアレイ装置。
【請求項２】
請求項１記載のディスクアレイ装置において、
前記ベースパッケージは、前記第１の接続部を介して、前記ベースパッケージを含む部位の相互接続のための接続部を有するボードに対して接続され、
前記ベースパッケージの第２の接続部は、前記機能パッケージの挿抜操作のための機構に対応したスロット及びコネクタを有し、
前記機能パッケージの接続部は、前記ベースパッケージのスロット及びコネクタに対応した外形及びコネクタを有することを特徴とするディスクアレイ装置。
【請求項３】
請求項１記載のディスクアレイ装置において、
前記記憶制御装置は、
前記パッケージ内接続網が相互接続される、前記ベースパッケージを含む部位間での通信のためのグローバル接続網として、前記ベースパッケージ間でのデータ転送のためのデータパス制御スイッチと、前記ベースパッケージ間でのプロセッサ間通信のためのプロセッサ接続網とを有し、
前記データパス制御スイッチに接続されるグローバルキャッシュメモリを有し、
前記機能パッケージとして、外部装置に対するＩ/Ｆに対応したチャネルＩ/Ｆパッケージと、前記記憶装置に対するＩ/Ｆに対応したドライブＩ/Ｆパッケージとを有することを特徴とするディスクアレイ装置。
【請求項４】
請求項１記載のディスクアレイ装置において、
前記機能パッケージは、前記接続部を介して、前記ベースパッケージの第２の接続部に対して活線挿抜される構造を有し、
前記記憶制御装置が前記データの記憶を制御する処理を行っている稼動中の状態において前記活線挿抜が可能であることを特徴とするディスクアレイ装置。
【請求項５】
請求項１記載のディスクアレイ装置において、
前記ベースパッケージは、前記第１の接続部を介して、前記ベースパッケージを含む部位の相互接続のためのボードの接続部に対して活線挿抜される構造を有し、
前記記憶制御装置が前記データの記憶を制御する処理を行っている稼動中の状態において前記活線挿抜が可能であることを特徴とするディスクアレイ装置。
【請求項６】
請求項１記載のディスクアレイ装置において、
前記機能パッケージとして、前記記憶制御装置の外部に対する特定のＩ/Ｆを実装したＩ/Ｆパッケージを有し、
前記Ｉ/Ｆパッケージは、
外部に対するポートを構成する、Ｉ/Ｆに対応したプロトコル処理を行う回路と、
前記ポートに対する接続用のコネクタと、
前記パッケージ内接続網に接続されＤＭＡデータ転送処理と前記ポートの制御とを含むＩ/Ｆ制御を行うアダプタとを有することを特徴とするディスクアレイ装置。
【請求項７】
請求項１記載のディスクアレイ装置において、
前記機能パッケージとして、メモリと、前記パッケージ内接続網に接続され前記メモリに対する制御を行うメモリ制御回路とを実装したメモリパッケージを有し、
データ転送において前記メモリパッケージのメモリを利用してデータをキャッシュすることを特徴とするディスクアレイ装置。
【請求項８】
請求項１記載のディスクアレイ装置において、
前記機能パッケージとして、プロセッサを実装したプロセッサパッケージを有し、
データ転送において前記プロセッサパッケージのプロセッサを利用して制御することを特徴とするディスクアレイ装置。
【請求項９】
請求項３記載のディスクアレイ装置において、
前記ベースパッケージは、前記パッケージ内接続網に接続されるプロセッサを備え、
前記プロセッサは、前記パッケージ内接続網及び前記プロセッサ接続網を介して、前記記憶制御装置内の他のプロセッサと通信し、前記機能パッケージ内の処理部を制御することを特徴とするディスクアレイ装置。
【請求項１０】
請求項１記載のディスクアレイ装置において、
前記ベースパッケージと機能パッケージに、パッケージ状態及びパッケージ保守・管理の操作に対応してその表示が制御される表示器を備え、
前記記憶制御装置または前記記憶制御装置に接続される保守・管理装置から、保守・管理操作の指示を表わすように対象パッケージの前記表示器の表示が制御されることを特徴とするディスクアレイ装置。
【請求項１１】
請求項１記載のディスクアレイ装置において、
前記記憶制御装置に接続される保守・管理装置を有し、
前記保守・管理装置は、前記ベースパッケージと機能パッケージの接続構成を含む構成情報を管理し、各パッケージの装着脱時に、そのパッケージのＩＤと前記構成情報とを参照して構成チェックを行うことを特徴とするディスクアレイ装置。
【請求項１２】
請求項１記載のディスクアレイ装置において、
前記制御パッケージとして、前記ベースパッケージに対し、前記機能パッケージとして、複数の異種のＩ/Ｆパッケージと、ローカルキャッシュメモリを有するメモリパッケージとが接続されている状態において、
前記制御パッケージ内での異種Ｉ/Ｆ間の通信時、前記異種のＩ/Ｆパッケージの間で、前記ローカルキャッシュメモリに対し転送データをキャッシュし、あるいはキャッシュデータを用いながら、データ転送処理を行うことを特徴とするディスクアレイ装置。
【請求項１３】
請求項３記載のディスクアレイ装置において、
前記プロセッサ接続網は、パッケージ間のプロセッサ間通信のためのプロセッサパスの切り替えを制御するスイッチで構成されることを特徴とするディスクアレイ装置。
【請求項１４】
請求項３記載のディスクアレイ装置において、
前記プロセッサ接続網は、前記パッケージ内接続網の間で、プロセッサ間通信のための制御線がダイレクトに接続される構成を有することを特徴とするディスクアレイ装置。
【請求項１５】
請求項３記載のディスクアレイ装置において、
前記プロセッサ接続網は、パッケージ間のプロセッサ間通信のためのプロセッサパスを制御するスイッチと、前記スイッチに接続されプロセッサ間で共用される制御情報が読み書きされるメモリとで構成されることを特徴とするディスクアレイ装置。
【請求項１６】
請求項１記載のディスクアレイ装置において、
前記制御パッケージ間のグローバル接続網に接続されるグローバルキャッシュメモリを有し、
前記制御パッケージに、ローカルキャッシュメモリを有するメモリパッケージが接続されている状態において、
データ転送時に、前記グローバルキャッシュメモリと、前記ローカルキャッシュメモリと、転送先領域とに対してデータを三重ライト処理することを特徴とするディスクアレイ装置。
【請求項１７】
請求項１記載のディスクアレイ装置において、
前記制御パッケージ間のグローバル接続網に接続されるグローバルキャッシュメモリを有し、
前記制御パッケージに、ローカルキャッシュメモリを有するメモリパッケージを有する状態において、
前記記憶制御装置は、外部に接続される他装置からのデータ入出力要求を受領する前において、前記機能パッケージを含む各パッケージと、前記グローバルキャッシュメモリと前記ローカルキャッシュメモリを含む各キャッシュメモリと、前記他装置とを含んだ接続構成及びそれらにおけるデータの配置を考慮して、前記各キャッシュメモリの間で、第１のキャッシュメモリに格納されているデータを第２のキャッシュメモリへとコピーまたは移動により格納することにより前記データを再配置する処理を行い、
前記他装置からのデータ入出力要求を受領した前記パッケージは、自身から近い位置にある前記キャッシュメモリに再配置されているデータを利用して入出力し、前記他装置に対し応答する処理を行うことを特徴とするディスクアレイ装置。
【請求項１８】
記憶装置と前記記憶装置に対するデータの記憶を制御する記憶制御装置とを備えＲＡＩＤ制御可能なディスクアレイ装置であって、
前記記憶制御装置は、ボードを含んで構成される制御パッケージの相互接続により構成され、
前記制御パッケージは、前記相互接続のベースとなるベースパッケージと、前記ベースパッケージに対して階層的に接続される、個々に分離された機能が実装された機能パッケージとを有して構成され、
前記ベースパッケージは、前記相互接続のための第１の接続部と、複数の異種の前記機能パッケージを混在して接続可能な第２の接続部と、前記機能パッケージ間及び前記記憶制御装置との通信のためのパッケージ内接続網とを有し、
前記機能パッケージは、前記ベースパッケージに対する接続のための接続部を有し、
前記機能パッケージとして、外部装置に対するＩ/Ｆに対応したチャネルＩ/Ｆパッケージと、前記記憶装置に対するＩ/Ｆに対応したドライブＩ/Ｆパッケージとを有し、
前記記憶制御装置は、
前記パッケージ内接続網が相互接続される、前記ベースパッケージを含む部位間での通信のためのグローバル接続網として、前記ベースパッケージ間でのデータ転送のためのデータパス制御スイッチと、前記ベースパッケージ間でのプロセッサ間通信のためのプロセッサ接続網とを有し、
前記データパス制御スイッチに接続されるグローバルキャッシュメモリを有し、
前記記憶制御装置は、前記機能パッケージとベースパッケージとの間の通信と、前記ベースパッケージ間の通信とを用いて、前記グローバルキャッシュメモリに対するキャッシュを行いながら、前記データの転送を含む処理を行うことを特徴とするディスクアレイ装置。
【請求項１９】
記憶装置と前記記憶装置に対するデータの記憶を制御する記憶制御装置とを備えＲＡＩＤ制御可能なディスクアレイ装置であって、
前記記憶制御装置は、ボードを含んで構成される制御パッケージの相互接続により構成され、
前記制御パッケージとして、複数の異種Ｉ/Ｆの機能が一体的に実装された統合パッケージを有し、
前記統合パッケージは、前記相互接続のための第１の接続部と、前記異種Ｉ/Ｆ間及び前記記憶制御装置との通信のためのパッケージ内接続網とを有し、
前記記憶制御装置において、前記統合パッケージ内の通信と、前記統合パッケージ間の通信とを用いて、前記データの転送を含む処理を行うことを特徴とするディスクアレイ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハードディスクドライブ（ＨＤＤ）等の記憶装置と前記記憶装置に対するデータの記憶を制御する記憶制御装置（以下、ＤＫＣと略称する）とを備えＲＡＩＤ制御が可能なディスクアレイ装置（ストレージ装置ともいう）に関し、特に、ボード（回路基板）やそのパッケージ（以下、ＰＫと略称する）などによるＤＫＣの実装の技術に関する。
【背景技術】
【０００２】
従来のディスクアレイ装置は、一例として、ＤＫＣが、機能に対応した多重の処理部を実装したボードの相互接続により構成される。機能は、ＤＫＣに対して通信接続されるホストコンピュータ（以下、ホストとも称する）等の外部装置に対するＩ/Ｆ（インタフェース）や、ＨＤＤ（以下、ドライブとも称する）に対するＩ/Ｆや、データキャッシュのためのキャッシュメモリ（以下、ＣＭと略称する）等のメモリや、各部間のデータ転送のためのスイッチといったものである。前記ホスト等の外部装置に対するＩ/Ｆ（チャネルＩ/ＦまたはホストＩ/Ｆ等と称する）としては、ファイバチャネル（以下、ＦＣと略称する）などの各種がある。同様に前記ＨＤＤに対するＩ/Ｆ（ディスクＩ/ＦまたはドライブＩ/Ｆ等と称する）としても、ＳＣＳＩなどの各種がある。前記チャネルＩ/Ｆに対応した処理部を、チャネル制御部（ＣＨＡ）等と称する。前記ディスクＩ/Ｆに対応した処理部を、ディスク制御部（ＤＫＡ）等と称する。前記各機能に対応したボードやそのＰＫにおいて、例えば各Ｉ/Ｆのボードでは、１つのボードに複数の同一種類Ｉ/Ｆのポート（Ｉ/Ｆポートともいう）を備えた構成で、対応Ｉ/Ｆの通信処理や、ＤＭＡ（ダイレクトメモリアクセス）データ転送処理などが行われる。
【０００３】
本明細書では、前記ボードを中心に含んで、当該ボードをディスクアレイ装置筐体に装着・接続するための電気的・機械的構造などと共に一体的に形成された部位を、ＰＫと称する。また、ＤＫＣを構成する各ＰＫを、制御ＰＫとも称する。前記ＰＫは、例えば、筐体に有するボックスのスロットに対して挿抜される形式及び構造を有する。
【０００４】
また、ディスクアレイ装置の一機能として、１つのＤＫＣで異種Ｉ/Ｆの装置間の転送が可能な機能（仮想化ともいう）が求められている。従来構成では、異種Ｉ/Ｆについては異なるボード／ＰＫとして提供されている。ユーザの使用するホストを含むシステムに応じて、必要となる各Ｉ/Ｆのボード／ＰＫが用意される。従って、例えば複数種類のＩ/Ｆに対応して異種Ｉ/Ｆ間の転送が可能な構成とするためには、異種Ｉ/Ｆの各ボード／ＰＫが相互接続される形態となる。
【０００５】
特許文献１には、ＤＫＣ構成例として、複数の同一種類のＩ/Ｆポートを１つのボード／ＰＫ内にまとめた構成について記載されている。
【特許文献１】特開２００１−３０６２６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ディスクアレイ装置においては、ユーザの要求に応じるために更なる性能向上を図る必要がある。また、低コストにするために、ユーザのシステムや要求などに応じて柔軟にＩ/Ｆポート数や性能を変更できるように、ディスクアレイ装置のシステムにスケーラビリティを持たせることが望ましい。またＤＫＣにおいて、異種Ｉ/Ｆ間の転送や、他社製品に対する接続などについても柔軟に対応して、そのデータ転送性能も向上させたい。
【０００７】
従来のＤＫＣ構成では、ホストＩ/Ｆ制御を行うＣＨＡ、ドライブＩ/Ｆ制御を行うＤＫＡなどの機能の部位ごとにそれぞれマイクロプロセッサ（ＭＰ）を持つ構成で、転送パスの制御を行っていた。しかし、制御ＰＫごとに決められた種類のＩ/Ｆしかサポートしていないため、ディスクアレイ装置の構成時、例えば最小限構成時に、ポートやプロセッサ等が必要以上に増えることや、また異なるＩ/Ｆポートを増やすために別の制御ＰＫを増設する必要などがあった。ユーザの要求に完全に対応したシステム構成にすることは困難だった。また、接続・使用されない転送パスのプロセッサを有効に使えない、すなわち当該プロセッサを利用して負荷分散できないということがあった。また、異種Ｉ/Ｆ間の転送においては、必ずＤＫＣにおける共通の接続網を使用しないと転送できないため、その転送性能が抑えられることや、他の転送にも影響を及ぼして装置としてのシステム性能にも影響があった。
【０００８】
本発明は以上のような問題に鑑みてなされたものであり、その目的は、前記ＤＫＣを構成するボードまたはそのＰＫ、及びそれらの相互接続によるＤＫＣ構成などに関して、スケーラビリティ、異種Ｉ/Ｆ間のデータ転送などの性能向上、及び保守性や信頼性の向上などを実現する技術を提供することにある。
【課題を解決するための手段】
【０００９】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。前記目的を達成するために、本発明のディスクアレイ装置は、ＨＤＤ等の記憶装置と、前記記憶装置に対するデータの記憶を制御する記憶制御装置（ＤＫＣ）とを備え、ＲＡＩＤ制御が可能で、ホスト等の外部装置からのデータ入出力要求に応じて前記記憶装置上の記憶ボリュームに対してデータを入出力処理するディスクアレイ装置であって、以下に示す技術的手段を備えることを特徴とする。
【００１０】
本発明のディスクアレイ装置では、ＤＫＣは、ボードを含んで構成される制御ＰＫの相互接続により構成され、制御ＰＫは、ＤＫＣに対する相互接続のベースとなるＰＫ（ベースＰＫと称する）と、ベースＰＫに対して階層的に接続される、個々に分離された機能が実装されたＰＫ（機能ＰＫと称する）とを有して構成される。Ｉ/Ｆやメモリやプロセッサといった各機能を個々に分離して実装した機能ＰＫまたはボードとして提供し、同一制御ＰＫ内で異種Ｉ/Ｆを混在可能な形式として階層的接続構成とする。各機能が、Ｉ/Ｆ-ＰＫ、メモリＰＫ、プロセッサＰＫ等として構成される。機能ＰＫが、ベースＰＫのスロットに対してコネクタ等の接続部構造を介して挿抜される。ベースＰＫと機能ＰＫの組み合わせを、ミックスＰＫと称する。各機能ＰＫとベースＰＫを活線栓挿抜に対応した構造とする。ミックスＰＫは、機能ＰＫの組み合わせによる特徴的な機能を提供する。ＤＫＣにおいて、機能ＰＫとベースＰＫとの間の通信と、ベースＰＫ間の通信とを用いて、プロセッサによる制御により、外部装置や記憶装置との間のデータ転送を含む処理を行う。
【００１１】
ベースＰＫは、前記相互接続のための第１の接続部と、複数の異種の機能ＰＫを混在して接続可能な第２の接続部と、機能ＰＫ間及びＤＫＣとのデータ転送及びプロセッサ間通信のためのパッケージ内接続網（ＬＮ）とを有する。または更にベースＰＫはＬＮに接続されるプロセッサを有してもよい。ベースＰＫに有するプロセッサは、ＤＫＣ内における処理を制御するプロセッサとして機能する。
【００１２】
機能ＰＫは、ベースＰＫとの接続部と、機能に応じた処理部とを有する。特にＩ/Ｆを実装したＩ/Ｆ-ＰＫは、Ｉ/Ｆ制御を行うアダプタや外部とのポート等を有する。また特にメモリを備えたメモリＰＫは、そのメモリが、ＤＫＣにおけるローカルキャッシュメモリ（ＬＣＭ）として機能する。また特にプロセッサを備えたプロセッサＰＫは、そのプロセッサが、ＤＫＣ内における処理を制御するプロセッサとして機能する。
【００１３】
ＤＫＣは、ＬＮが相互接続される、ベースＰＫを含む部位間での通信のためのグローバル接続網として、ベースＰＫ間でのデータ転送のためのデータパス制御スイッチ（ＤＳＷ）と、ベースＰＫ間でのプロセッサ間通信のためのプロセッサ接続網（ＰＮ）とを有する。また、ＤＫＣは、ＤＳＷに接続されるグローバルキャッシュメモリ（ＧＣＭ）と、機能ＰＫとして、外部装置に対するＩ/Ｆに対応したチャネルＩ/Ｆパッケージと、ＨＤＤに対するＩ/Ｆに対応したドライブＩ/Ｆパッケージとを有する。
【００１４】
ミックスＰＫにメモリＰＫを有する場合、そのメモリ（ＬＣＭ）にデータキャッシュしながらデータ転送処理する。ミックスＰＫに異種Ｉ/ＦのＩ/Ｆ-ＰＫが混在している場合、異種Ｉ/Ｆ間でのデータ転送がそのミックスＰＫ内で処理される。またＤＫＣにＬＣＭとＧＣＭの双方を有する場合、双方のＣＭを利用してデータキャッシュしながらデータ転送処理する。
【発明の効果】
【００１５】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。本発明によれば、ＤＫＣを構成するボードまたはそのＰＫ、及びそれらの相互接続によるＤＫＣ構成などに関して、スケーラビリティ、異種Ｉ/Ｆ間のデータ転送などの性能向上、及び保守性や信頼性の向上などを実現できる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一符号を付し、その繰り返しの説明は省略する。図１〜１８は、本発明の実施の形態におけるディスクアレイ装置を説明するための図である。図１９は、従来のディスクアレイ装置の構成例を説明するための図である。本実施の形態において、ＰＫ組み合わせにより、図７〜９他に示すような各ＤＫＣ構成例が可能である。また、特に図１５〜１７では、本実施の形態のうち、プロセッサ相互接続網（ＰＮ）に関する実施の形態を示す。
【００１７】
本発明の一実施の形態におけるディスクアレイ装置１を説明する。本実施の形態では、ＤＫＣを構成する制御ＰＫに関して、特にチャネルＩ/Ｆ・ドライブＩ/ＦといったＩ/Ｆを中心に、その他、メモリ、プロセッサといった機能部分を個々に分離した機能ＰＫとして構成する。それぞれ、Ｉ/Ｆ-ＰＫ、メモリＰＫ、プロセッサＰＫ等として構成する。同一制御ＰＫ内で、各種Ｉ/Ｆや機能を、機能ＰＫの組み合わせにより混在可能な形式である。接続のベースとなるベースＰＫに対して機能ＰＫを自由に装着脱する、階層的接続構成である。ベースＰＫと機能ＰＫの組み合わせを、ミックスＰＫとし、従来の制御ＰＫに代わって提供する。各機能ＰＫにも活線挿抜の形式を採用し、稼動中でもベースＰＫに対して挿抜可能とする。適用対象のＩ/Ｆは、ファイバ、メタル、メインフレーム系、ドライブＩ/Ｆ等の各種である。ベースＰＫと機能ＰＫの自由な組み合わせの構成により特徴的機能を実現し、ポート数やドライブ数に柔軟に適合したＤＫＣ構成を提供する。
【００１８】
＜ハードウェア外観＞
図１は、ディスクアレイ装置１の全体のハードウェア外観構成を示す斜視図である。ディスクアレイ装置１は、例えば基本筐体と増設筐体とから構成できる。図１は、基本筐体の前面右斜め上から筐体を透過して見たものであり、筐体内各部の配置の概略を示している。基本筐体は、最小構成単位であり、ＤＫＣ１０などが担う記憶制御機能と、ＨＤＤ３０などが担う記憶機能との両方を備える。増設筐体は、オプション単位であり、記憶機能を備える。記憶制御機能は、通信接続されるホストなどの他装置からの要求や命令に応じて、記憶機能の提供する記憶領域に対するデータの記憶を制御する。各筐体間が通信ケーブルで通信可能に接続される。
【００１９】
基本筐体には、下から、複数のバッテリ１９１、複数のＡＣボックス１９２、複数のＡＣ−ＤＣ電源１９３、ＤＫＣボックス１９４、複数のファン１９５、ＳＶＰ１９６、パネル１９７、ＨＤＤボックス１９８、複数のファン１９９等が配備されている。
【００２０】
バッテリ１９１は、ＡＣ−ＤＣ電源１９３に対して接続され、停電時のバックアップ電源として機能する。ＡＣボックス１９２は、入力ＡＣ電源を接続する部分であり、ＡＣ−ＤＣ電源１９３と接続される。ＡＣ−ＤＣ電源１９３は、入力ＡＣ電源についてＡＣ−ＤＣ変換を行い、ＤＫＣ１０等の各部位に対してＤＣ電源を供給する。
【００２１】
ＤＫＣボックス１９４は、ＤＫＣ１０を構成する制御ＰＫ１００を装着可能な複数のスロット等の構造を有する。制御ＰＫ１００は、各スロットでガイドレールに沿ってそれぞれ挿抜可能に接続され、制御ＰＫ１００単位で交換可能となっている。制御ＰＫ１００は、ホストＩ/Ｆ等の機能を実装したボードを中心に含んで、ＤＫＣボックス１９４等に装着するためのキャニスタ等の電気的・機械的構造を加えて一体的にモジュール化されたものである。各種の制御ＰＫ１００の相互接続によってＤＫＣ１０が実現される。ＤＫＣボックス１９４内には、制御ＰＫ１００の相互接続のためのバックプレーン（ＢＰと略称する）ボード９０を有する。各制御ＰＫ１００の側のコネクタが、スロット内でＢＰボード９０の側のコネクタに接続される。
【００２２】
ＳＶＰ（保守・管理端末）１９６は、ディスクアレイ装置１の保守・管理の処理を担当するプロセッサを持つ装置である。ＳＶＰ１９６は、例えばノート型ＰＣの形態を有し、通常時には筐体内に収容され必要時に前面に取り出され使用される。保守員は、ＳＶＰ１９６を操作して、保守・管理の処理を行うことが可能である。パネル１９７は、ディスクアレイ装置１の基本操作のためのスイッチや、各種情報表示を行う表示器などが配置されている。筐体内に設けられた複数のファン１９５，１９９は、筐体内の部位に対して送風することにより空冷する。
【００２３】
ＨＤＤボックス１９８には、ＤＫＵ（ディスクユニット）３００を構成する複数のＨＤＤ３０が、ＨＤＵ（ＨＤＤユニット）の形態で、並列的に、それぞれ挿抜可能に接続される。ＨＤＵは、ＨＤＤ３０を含んで、装着のためのキャニスタ等の構造を加えて一体的にモジュール化されたものである。
【００２４】
＜情報処理システム＞
図２は、ディスクアレイ装置１を含んで構成される情報処理システムの全体の構成を示すブロック図である。本情報処理システムは、ディスクアレイ装置１、複数のホスト５０、ネットワーク７０、外部ディスク制御装置８０を有する。ホスト５０とディスクアレイ装置１が、直接またはネットワーク７０を介して通信接続される。また、ディスクアレイ装置１と外部ディスク制御装置８０が、直接またはネットワーク７０等を介して通信接続される。外部ディスク制御装置８０は、ＨＤＤ（各図では「ＤＲＶ」として示す）３０等の記憶装置を接続する。
【００２５】
ディスクアレイ装置１は、ＤＫＣ１０と、ＤＫＵ３００と、ＳＶＰ１９６とを有する構成である。本実施の形態では、ＤＫＣ１０は、特にＢＰボード９０における複数のミックスＰＫ１００の相互接続により構成される。ＤＫＣ１０は、ＤＫＵ３００と通信接続される。ＤＫＵ３００は、複数のＤＲＶ３０を含む。ＤＫＣ１０は、ＤＲＶ３０上の記憶ボリュームに対してデータを読み書きする。ＤＫＣ１０はＤＲＶ３０のグループに対してＲＡＩＤ制御を行うことができる。ＳＶＰ１９６は、ＤＫＣ１０の各ミックスＰＫ１００に対して内部のＬＡＮ１９０を通じて通信接続される。
【００２６】
ホスト５０は、ディスクアレイ装置１に対してアクセスし、ディスクアレイ装置１の機能を利用してＤＲＶ３０上の記憶ボリュームに対してデータ入出力を行う上位装置である。ホスト５０とＤＫＣ１０との間で、所定のＩ/Ｆでの通信が行われる。ＤＫＣ１０と、ホスト５０や外部ディスク制御装置８０等との間のＩ/Ｆは、例えば、ＦＣや、ＦＩＣＯＮ（Fibre Connection）（登録商標）やＥＳＣＯＮ（Enterprise System Connection）（登録商標）等のメインフレーム系のプロトコルや、ＴＣＰ/ＩＰ等のプロトコルが用いられる。
【００２７】
外部ディスク制御装置８０は、ディスクアレイ装置１の外部に接続される、記憶制御機能を備えＤＲＶ３０に対してデータ入出力を行う装置である。ＤＫＣ１０と外部ディスク制御装置８０の間で、所定のＩ/Ｆでの通信が行われる。外部ディスク制御装置８０は、ディスクアレイ装置１と同様の機能を備える装置であってもよいし、他の機能を備える装置であってもよい。
【００２８】
ネットワーク７０は、例えばＦＣプロトコルに準拠した１つ以上のスイッチ等の通信機器により構築されたＳＡＮ（Storage Area Network）である。その場合、ホスト５０の備える通信Ｉ/Ｆ部であるＨＢＡ（ホストバスアダプタ）と、ディスクアレイ装置１の備える通信Ｉ/Ｆ部であるＣＨＡは、ＦＣプロトコルに従った通信処理機能を持つ。ＦＣの場合、送受信データは、所定のデータ長ごとに１つ以上のデータブロックに分割され、データブロックを単位として制御される。ホスト５０からディスクアレイ装置１に対して、ＦＣプロトコルに従ったブロック単位のデータＩ/Ｏ要求（ブロックアクセス要求）が送信され、ＤＫＣ１０で応答処理される。
【００２９】
ＤＫＣ１０は、信頼性を確保するために論理的なクラスタ構成を採ることが可能であり、例えば、電源部、ＤＫＣ１０、ＤＫＵ３００を、二重化されたクラスタ構成とする。同機能のＤＫＣを含む、クラスタ（ＣＬ）＃１，＃２による構成が設定される。一方のクラスタが障害などによりダウンした際でも他方のクラスタの稼動継続によりサービス提供が維持できる。
【００３０】
ホスト５０は、ＣＰＵ、メモリ、通信Ｉ/Ｆ部（ホストバスアダプタ）などを備える、例えばＰＣ、ワークステーション、サーバ、メインフレームコンピュータといった形態の情報処理装置である。ホスト５０は、前記ＣＰＵにより前記メモリ上の各種プログラムが実行されることにより、ホストとしての様々な機能が実現される。ホスト５０は、ディスクアレイ装置１に対するデータ入出力を行うための管理プログラムと、ディスクアレイ装置１を利用して情報処理サービスを提供するためのアプリケーションプログラム等とを備える。
【００３１】
ＳＶＰ１９６は、ディスクアレイ装置１を保守・管理処理するためのプロセッサを持つ情報処理装置であり、ディスクアレイ装置１に内蔵または外部接続される形態である。本例では、ＳＶＰ１９６がＤＫＣ１０に対してＬＡＮ１９０を通じて内部接続される形態である。ＳＶＰ１９６は、ディスクアレイ装置１の構成情報・障害情報・管理情報などの管理を行う。オペレータによるＳＶＰ１９６の操作により、例えばＤＫＵ３００の物理ディスク構成やＬＵ（論理ユニット）の設定、ＣＨＡ等において実行されるプログラムのインストール等が可能である。また、ＳＶＰ１９６は、保守・管理専用の形態や、汎用コンピュータ上に保守・管理機能を持たせた形態などが可能である。ＳＶＰ１９６は、例えば、ＣＰＵ、メモリ、ポート、キーボード等の入力装置、ディスプレイ等の出力装置、ＨＤＤ等の記憶装置、ＦＤドライブ等の記録媒体読み取り装置などを備える。前記ＣＰＵが全体の制御を行い、前記メモリ上のプログラムを実行して保守・管理機能を含む本発明に係わる制御を実現する。前記メモリや記憶装置に、前記本発明に係わる制御で使用するプログラムや各種情報が記憶される。前記ポートはＬＡＮ１９０に対し接続される。前記入力装置、出力装置、記録媒体読み取り装置などを利用してオペレータが操作を行う。特に保守員は、ＳＶＰ１９６を操作して、制御ＰＫ１００の保守・交換に係わる処理を行うことができる。またＳＶＰ１９６が通信手段を介して外部装置に対して通信接続される形態も可能である。またＳＶＰ１９６とは別の保守・管理装置を外部に通信接続する形態も可能である。例えば、保守・管理用のプログラムを実行するホスト５０を保守・管理装置として使用可能である。
【００３２】
＜ＤＫＣ＞
ＤＫＣ１０は、ミックスＰＫ１００、ＧＣＭ（グローバルキャッシュメモリ）１３０、ＤＳＷ（データパス制御スイッチ）１５１、ＰＮ（プロセッサ相互接続網）１５２、内部のＬＡＮ１９０等を有する構成である。ミックスＰＫ１００は、ＣＨＡやＤＫＡその他の、各ＰＫの組み合わせに応じた特徴的機能を構成する。ＣＨＡは、ホスト５０や外部ディスク制御装置８０を含む外部装置に対するＩ/Ｆ部である。ＤＫＡは、ＤＲＶ３０を含む記憶装置に対するＩ/Ｆ部である。ＧＣＭ１３０は、ＤＫＣ１０内で各ＰＫに共用される、グローバルなキャッシュメモリである。ＤＳＷ１５１は、ＤＫＣ１０内で、ＧＣＭ１３０に対するデータ転送を含む、ＰＫ間のグローバルなデータ転送用の接続網であり、特に高速スイッチの形態である。ＰＮ１５２は、ＤＫＣ１０内における、ＰＫ間のプロセッサ間通信用のグローバルな相互接続網である。
【００３３】
前記制御ＰＫ１００に対応するミックスＰＫ１００は、ベースＰＫ１０１と、機能ＰＫ１０２の組み合わせとで構成される。ベースＰＫ１０１は、ＤＫＣ１０に対して接続される１次階層的なＰＫであり、機能ＰＫ１０２を複数接続可能な構成である。機能ＰＫ１０２は、ベースＰＫ１０１に対して接続される２次階層的なＰＫであり、分離された機能を担う。機能ＰＫ１０２の接続の有無と種類は自由である。機能ＰＫ１０２は、ユーザのシステムや要求に応じて接続され、ディスクアレイ装置１のシステムにおけるスケーラビリティを有する。
【００３４】
ベースＰＫ１０１は、ＬＮ（ＰＫ内相互接続網）１０３を有する。ＬＮ１０３は、データ転送とプロセッサ間通信とを含む通信が可能な、ローカルな接続網である。図２の場合、１つのベースＰＫ１０１は、４つの機能ＰＫ１０２を接続可能なキャパシティを持つ構成である。またベースＰＫ１０１は、プロセッサを内部に備える形態と備えない形態とが可能である。例えばミックスＰＫ＃１，＃３（１００）におけるベースＰＫ１０１は、ＭＰを備える。
【００３５】
機能ＰＫ１０２として、Ｉ/Ｆ-ＰＫ２１０、ＬＣＭ-ＰＫ２１５、ＭＰ-ＰＫ２１６を有する。機能ＰＫ１０２として特に、ＤＫＣ１０の外部とのＩ/Ｆを担うものをＩ/Ｆ-ＰＫ２１０と称する。ＬＣＭ-ＰＫ２１５はメモリＰＫである。ＭＰ-ＰＫ２１６はプロセッサＰＫである。図２の場合、ミックスＰＫ＃１（１００）は、Ｉ/Ｆ-ＰＫ＃１〜＃４（２１０）が接続状態である。Ｉ/Ｆ-ＰＫ＃１（２１０）は、ホスト５０に接続されている。Ｉ/Ｆ-ＰＫ＃２，＃３（２１０）は、ネットワーク７０に接続されている。Ｉ/Ｆ-ＰＫ＃４（２１０）は、外部ディスク制御装置８０に接続されている。ミックスＰＫ＃２（１００）は、Ｉ/Ｆ-ＰＫ＃５，＃６（２１０）、ＬＣＭ-ＰＫ２１５、ＭＰ-ＰＫ２１６が接続状態である。ミックスＰＫ＃３（１００）は、Ｉ/Ｆ-ＰＫ＃７〜＃１０（２１０）が接続状態である。ミックスＰＫ＃４（１００）は、Ｉ/Ｆ-ＰＫ＃１１，＃１２（２１０）が接続状態で、２つが空き状態である。Ｉ/Ｆ-ＰＫ＃１１，＃１２（２１０）は、ＤＫＵ３００に接続されている。各Ｉ/Ｆ-ＰＫ＃１〜＃１２（２１０）は、同種Ｉ/Ｆでも異種Ｉ/Ｆでも構わない。例えば、ミックスＰＫ＃１（１００）で、各Ｉ/Ｆ-ＰＫ＃１〜＃４（２１０）を、異種Ｉ/Ｆの混在とする。
【００３６】
ＤＳＷ１５１と各ＬＮ１０３及びＧＣＭ１３０とを接続するＤパス（データパス）は、データ転送のために設定され使用される。ＰＮ１５２と各ＬＮ１０３とを接続するＰパス（プロセッサパス）はプロセッサ間通信のために設定され使用される。なお、前記グローバルとは、ＤＫＣ１０内でＰＫ間による通信に用いられることを指し、前記ローカルとは、ＰＫ内による通信に用いられることを指す。
【００３７】
図２中では、ホスト５０や外部ディスク制御装置８０に接続される機能ＰＫ１０２を含むミックスＰＫ１００（例として＃１）は、主にＣＨＡとして機能している。また、ＤＲＶ３０に接続される機能ＰＫ１０２を含むミックスＰＫ１００（例として＃４）は、主にＤＫＡとして機能している。
【００３８】
＜従来構成＞
図１９は、従来のディスクアレイ装置におけるＤＫＣの構成例を示し、特に、外部ディスク制御装置８０との接続構成及びデータ転送動作についても示す。ディスクアレイ装置９０１は、ＤＫＣ９１０において、ホスト５０とのＩ/Ｆ制御を行うＣＨＡ-ＰＫ９１１、ＤＲＶ３０とのＩ/Ｆ制御を行うＤＫＡ-ＰＫ９１２、データキャッシュのためのＣＭとなるＣＭ-ＰＫ９１３、データ転送制御用の接続網となるＣＳＷ（キャッシュスイッチ）-ＰＫ９１４等の制御ＰＫの接続による構成を有する。ＣＨＡ-ＰＫ９１１として、ＥＳＣＯＮ-Ｉ/Ｆに対応した第１のＣＨＡとファイバＩ/Ｆに対応した第２のＣＨＡとを有する。
【００３９】
従来のＤＫＣ９１０の構成では、ＣＨＡ、ＤＫＡなどの機能ごとにそれぞれプロセッサ（ＭＰ）９２０，９２３を持つ構成で、転送パスの制御を行っていた。前記転送パスは、各部間の物理的なバスラインなどの上に設定される論理的なパスである。従来構成では、制御ＰＫ（ＣＨＡ-ＰＫ９１１及びＤＫＡ-ＰＫ９１２）ごとに決められた１種類のＩ/Ｆしかサポートしていない。そのため、異種Ｉ/Ｆに接続する必要がある場合には、異種Ｉ/Ｆのポートを増やすために当該Ｉ/Ｆに対応する別の制御ＰＫを増設する必要がある。このような構成により、ディスクアレイ装置の構成時、例えば最小限構成時に、ポートやプロセッサが必要以上に多くなってしまうことがあった。従ってユーザの要求に完全にあるいは詳細に対応したＤＫＣ構成にすることは困難だった。また、接続・使用されない転送パスのプロセッサを有効に使えない、すなわち当該プロセッサを利用して負荷分散できないということがあった。また、異種Ｉ/Ｆ間のデータ転送、例えば外部接続時データ転送においては、必ずＤＫＣ９１０における共通接続網（ＣＳＷ-ＰＫ９１４が相当する）を使用して制御ＰＫ間の転送が必要となるため、その分、性能が上がらないことや、前記共通接続網を使用するために他の通信にも影響を及ぼしシステム性能にも影響があった。
【００４０】
また従来構成で、プロセッサ（ＭＰ９２０など）間の通信については、所定の共有メモリへのアクセスパスを持つ状態でＤＭＡ転送においてメモリアクセスで情報交換を行っていた。共有メモリには、データ入出力に関するディレクトリ情報などを記憶している。プロセッサは、ホスト５０等からの受信コマンドにおける要求データの有無や位置を判断する。例えばＣＨＡにおいて、ＭＰ９２０は、いずれかのＤＴＡ９２１に対して、要求データの位置を探し出させる指示を行い、ＤＴＡ９２１により共有メモリの情報を確認させ、前記要求データの位置などを判断していた。
【００４１】
図１９では、２つのＣＨＡ及びＤＫＡを有し、それぞれ２系統のポートを有する場合を示す。ＣＨＡ-ＰＫ９１１は、多重のポート部、ＭＰ９２０、ＤＴＡ（データ転送制御部）９２１などを有する。ポート部は、ホスト５０との間でＩ/Ｆに応じた通信処理を行う。ＭＰ９２０は、ＣＨＡとしての制御を行う。ＤＴＡ９２１は、ＣＳＷ-ＰＫ９１４を介したＤＭＡデータ転送処理などを行う回路である。
【００４２】
ＤＫＡ-ＰＫ９１２は、多重のポート部、ＭＰ９２３、ＤＴＡ（データ転送制御部）９２４などを有する。ポート部は、ＤＲＶ３０との間でＩ/Ｆに応じた通信処理を行う。ＭＰ９２３は、ＤＫＡとしての制御を行う。ＤＴＡ９２４は、ＣＳＷ-ＰＫ９１４を介したＤＭＡデータ転送処理などを行う回路である。ＤＲＶ３０は、ＤＫＡと、例えば２つのパスにより接続されている。
【００４３】
ＣＭ-ＰＫ９１３は、ＣＭＡ（キャッシュメモリアダプタ）９２６と、メモリ９２７とを有する。ＣＭＡ９２６は、ＣＳＷ-ＰＫ０９１４と接続され、メモリ９２７を制御する回路である。ＣＳＷ-ＰＫ９１４は、キャッシュメモリに対するデータ転送を制御するスイッチである。ＣＳＷ-ＰＫ９１４は、転送パスの調停などを行うＣＡＲＢ（キャッシュ調停回路）９２８を有する。
【００４４】
ホスト５０は、一方のＣＨＡ-ＰＫ９１１とＥＳＣＯＮ-Ｉ/Ｆで接続されており、ＤＲＶ３０に対するデータ入出力を行う。外部ディスク制御装置８０は、他方のＣＨＡ-ＰＫ９１１とファイバＩ/Ｆで接続されており、ＤＲＶ３０に対するデータ入出力を行う。
【００４５】
ＤＫＣ９１０におけるデータ転送処理例は、以下である。図１９中、ａ１で示す動作は、ホスト５０からＣＭへのデータ転送を示す。第１のＣＨＡは、ホスト５０からデータを、ポート部の処理を介して受信する。第１のＣＨＡは、ＣＳＷを介して、ＣＭ-ＰＫ９１３のメモリ９２７へデータを書き込む。ａ２で示す動作は、ＣＭからホスト５０へのデータ転送を示す。第１のＣＨＡは、ＣＳＷを介して、ＣＭ-ＰＫ９１３のメモリ９２７からデータを読み出す。第１のＣＨＡは、読み出したデータを、ポート部の処理を介してホスト５０へ送る。ホストは第１のＣＨＡからのデータを受信する。ａ３で示す動作は、ＣＭからＤＫＡに接続されるＤＲＶ３０へのデータ転送を示す。ＤＫＡは、ＣＳＷを介して、ＣＭ-ＰＫ９１３のメモリ９２７からデータを読み出す。ＤＫＡは、読み出したデータを、ポート部の処理を介してＤＲＶ３０へ送る。ＤＲＶ３０は、送られたデータをディスク領域へ書き込む。ａ４で示す動作は、ＤＫＡに接続されるＤＲＶ３０からＣＭへのデータ転送を示す。ＤＫＡは、ＤＲＶ３０から読み出したデータを、ポート部の処理を介して受信する。ＤＫＡは、ＣＳＷを介して、ＣＭ-ＰＫ９１３のメモリ９２７へデータを書き込む。
【００４６】
また、ａ５で示す動作は、ＣＭから外部ディスク制御装置８０に接続されるＤＲＶ３０へのデータ転送を示す。第２のＣＨＡは、ＣＳＷを介して、ＣＭ-ＰＫ９１３のメモリ９２７からデータを読み出し、ポート部の処理を介して外部ディスク制御装置８０へ送信する。そして外部ディスク制御装置８０からＤＲＶ３０へデータ書き込みされる。ａ６で示す動作は、外部ディスク制御装置８０に接続されるＤＲＶ３０からＣＭへのデータ転送を示す。まずＤＲＶ３０から外部ディスク制御装置８０へデータ読み出しされる。そして、第２のＣＨＡは、外部ディスク制御装置８０から、ポート部の処理を介してデータを受信し、ＣＳＷを介して、ＣＭ-ＰＫ９１３のメモリ９２７へデータを書き込む。
【００４７】
上記各動作で、各ＣＨＡ-ＰＫ９１１，ＤＫＡ-ＰＫ９１２では、ＭＰ９２０，９２３の制御に従ってＤＴＡ９２１，９２４によりＣＭ-ＰＫ９１３との間でのＤＭＡデータ転送処理を行う。またＣＳＷ-ＰＫ９１４では、ＣＡＲＢ９２８により、ＣＭ-ＰＫ９１３のＣＭＡ９２６を介してメモリ９２７に対してデータを読み書きする。
【００４８】
例えば、ホスト５０からディスクアレイ装置９０１内のＤＲＶ３０へのデータ書き込みの場合は、ａ１，ａ３の動作が順に行われる。ホスト５０からのディスクアレイ装置９０１内のＤＲＶ３０からのデータ読み出しの場合は、ａ４，ａ２の動作が順に行われる。また、ホスト５０から外部ディスク制御装置８０へのデータ転送の場合は、ａ１，ａ５の動作が順に行われる。外部ディスク制御装置８０からホスト５０へのデータ転送の場合は、ａ６，ａ２の動作が順に行われる。
【００４９】
従来構成では、異種Ｉ/Ｆ間のデータ転送時には、そのＩ/Ｆ分のＣＨＡ-ＰＫ９１１が必要であり、またＣＨＡ-ＰＫ９１１間での転送処理が必須であった。本例で言えば、ホスト５０とのＥＳＣＯＮ-Ｉ/Ｆと、外部ディスク制御装置８０とのファイバＩ/Ｆとに跨る転送において、第１のＣＨＡ-ＰＫ９１１と第２のＣＨＡ-ＰＫ９１１の間でＣＳＷ-ＰＫ９１４及びＣＭ-ＰＫ９１３を介した転送処理を要する。
【００５０】
なおＤＫＣにおいて１つの１種類のＩ/Ｆポートに対応した構成の各ＰＫを必要に応じて用意して相互接続する構成を考えることができるが、その場合、各ＰＫからメモリ等に対するデータ転送を行うスイッチやあるいはメモリに対する接続・配線などの構成が複雑・大容量になり不利である。そのため、従来技術では、複数の同一種類のＩ/Ｆポートを１つのボード／ＰＫ内にまとめた構成を提供していた。
【００５１】
＜ベースＰＫ＞
図３（ａ）〜（ｃ）は、ベースＰＫ１０１の構成例を示す。（ａ）は、機能ＰＫを挿抜可能な４つのスロットと２つのプロセッサとを備えた例、（ｂ）は、２つのスロットと１つのプロセッサとを備えた例、（ｃ）は、４つのスロットを備えプロセッサを備えない例を、それぞれ示す。本例に限らず、ベースＰＫ１０１におけるコネクタ１０６や搭載ＭＰ１０４の数は任意にできる。なお各図ではコネクタを「Ｃ」として示す。
【００５２】
図３（ａ）で、ベースＰＫ１０１は、ＬＮ１０３、ＭＰ１０４、ＢＰボード９０に接続されるコネクタ１０５、機能ＰＫを接続するための複数のコネクタ１０６、保守用のＬＥＤ（発光ダイオード）１０７を有する。ＬＮ１０３は、データ転送用の相互接続網とプロセッサによる制御用の相互接続網とを含んでいる。ＬＮ１０３は、ＭＰ１０４、コネクタ１０５、各コネクタ１０６を接続している。各コネクタ１０６に接続された機能ＰＫ１０２は、ＬＮ１０３において内部で通信可能に接続される。ＬＮ１０３は、コネクタ１０５及びＢＰボード９０を介して、ＤＳＷ１５１及びＰＮ１５２に接続され、外部の他ＰＫや処理部などとの間で通信可能である。ＭＰ１０４は、ＤＫＣ１０内における各種制御用のプロセッサとして機能する。ＭＰ１０４は、自分が搭載されているミックスＰＫ１００内の各機能ＰＫ１０２の制御以外にも、他のミックスＰＫ１００に対する制御もＰＮ１５２を介して行うことができる。コネクタ１０５は、ＢＰボード９０のコネクタ（９１）と接続される。コネクタ１０６は、機能ＰＫ１０２のコネクタ（２２４）と接続される。ベースＰＫ１０１と機能ＰＫ１０２との接続において、ベースＰＫ１０１の複数のコネクタ１０６は、異種の機能ＰＫ１０２の接続が可能なように統一された形式である。ＬＥＤ１０７は、ＰＫ保守・管理に係わる表示を行う表示器である。ＬＥＤ１０７の表示は、ベースＰＫ１０１内外から制御される。ＬＥＤ１０７の表示により、当該ベースＰＫ１０１が保守交換対象であること等が示される。ＬＥＤ１０７については、各機能ＰＫ１０２を接続するスロットに対応して設けて、各機能ＰＫ１０２の状態を表示するように制御する構成としてもよい。
【００５３】
図３（ｂ），（ｃ）は規模を削減した例であり、（ａ）と同様の機構を有する。各ベースＰＫ１０１は、コネクタ１０５を通じた、ＤＫＣボックス１９４及びＢＰボード９０の接続部に対する活線挿抜に対応した構造を有する。（ａ），（ｃ）では、ベースＰＫ１０１は、最大４つの機能ＰＫ１０２を接続可能なキャパシティを持つ。（ｂ）では、ベースＰＫ１０１は、（ａ）の半分のキャパシティを有する。（ｃ）では、ベースＰＫ１０１は、ＭＰ１０４を有さないが、他の部位に有するいずれかのプロセッサにより制御が行われる。
【００５４】
＜機能ＰＫ，Ｉ/Ｆ-ＰＫ＞
図４（ａ）〜（ｃ）は、機能ＰＫ１０２の構成例を示す。（ａ）はＩ/Ｆ-ＰＫ２１０として特にチャネルＩ/Ｆ-ＰＫを、（ｂ）はメモリＰＫであるＬＣＭ-ＰＫ２１５を、（ｃ）はプロセッサＰＫであるＭＰ-ＰＫ２１６を、それぞれ示す。
【００５５】
図４（ａ）で、Ｉ/Ｆ-ＰＫ２１０として、ホスト５０との制御を行うチャネルＩ/Ｆに対応したＰＫをチャネルＩ/Ｆ-ＰＫと称する。Ｉ/Ｆ-ＰＫ２１０は、言い換えれば、特定の１つ以上のＩ/Ｆポートを備えたポートＰＫである。同様にドライブＩ/Ｆに対応したＰＫをドライブＩ/Ｆ-ＰＫと称する。Ｉ/Ｆ-ＰＫ２１０は、チャネルアダプタ（ＣＡ）２２１等の、Ｉ/Ｆ制御を行うためのアダプタ類と、Ｉ/Ｆに応じたプロトコルアダプタ（ＰＡ）２２２と、ポート接続用のコネクタ２２３と、ベースＰＫ接続用のコネクタ２２４と、保守用のＬＥＤ２２７とを有する。コネクタ２２３とＰＡ２２２が接続され、ＰＡ２２２とＣＡ２２１が接続され、ＣＡ２２１とコネクタ２２４が接続されている。
【００５６】
本例で示すチャネルＩ/Ｆ-ＰＫ（２１０）は、特定Ｉ/Ｆに対応した２つのポート（Ｉ/Ｆポート）を持つ場合を示している。ポートは、ＰＡ２２２とコネクタ２２３を含む。ＰＡ２２２は、Ｉ/Ｆに対応して外部装置との通信プロトコル処理を行う。コネクタ２２３は、外部との物理リンクのための通信ケーブルのソケットが接続される。ポートは、ＤＫＣ１０及びＳＶＰ１９６により情報として管理される。
【００５７】
ＣＡ２２１は、当該ＰＫにおけるチャネルＩ/Ｆとしての制御を行う回路であり、ポート制御機能やＤＭＡデータ転送処理機能を有する。ＣＡ２２１は、１系統以上のＤＭＡＣ（ＤＭＡ制御回路）２５０を含んで構成される。ＤＭＡＣ２５０は、ＤＫＣ１０内のいずれかのＭＰから制御され、ＤＭＡ起動に応じてＤＭＡデータ転送処理を行う。ＤＭＡＣ２５０は、転送データをバッファリングする領域となるバッファ２５１と、データ転送情報を格納する領域となるレジスタ２５２とを含む。前記データ転送情報は、ＤＭＡデータ転送処理を制御するための、転送元及び転送先アドレス、データ量といった各種制御情報であり、ＭＰなどにより設定される。ＤＭＡＣ２５０は、ＤＭＡデータ転送処理で、レジスタ２５２のデータ転送情報に従って、バッファ２５１に転送データをバッファリングしながらデータ転送処理する。
【００５８】
ＬＥＤ２２７は、ＰＫ保守・管理に係わる表示を行う表示器である。ＬＥＤ２２７の表示は、ベースＰＫ１０１内外から制御される。ＬＥＤ２２７の表示により、当該ＰＫが保守交換対象であること等が示される。ドライブＩ/Ｆ-ＰＫの場合もチャネルＩ/Ｆ-ＰＫと同様の構成であり、ＣＡ２２１の代わりにドライブアダプタを備える。
【００５９】
図４（ｂ）で、ＬＣＭ-ＰＫ２１５は、キャッシュアダプタ２２５と、メモリ２３０と、コネクタ２２４と、ＬＥＤ２２７とを有する。キャッシュアダプタ２２５は、データ制御とメモリ２３０に対する読み書き等の制御を行うメモリ制御回路であり、データキャッシュとしてのデータ転送及びＭＰとの制御を行う。メモリ２３０は、ＤＫＣ１０におけるＬＣＭとして機能する。搭載メモリ数は任意にできる。ＬＣＭは、ＧＣＭ１３０に対してローカルな関係にあるＣＭであり、ミックスＰＫ１００内外から使用される。
【００６０】
図４（ｃ）で、ＭＰ-ＰＫ２１６は、ＭＰ２４０と、コネクタ２２４と、ＬＥＤ２２７とを有する。ＭＰ２４０は、ミックスＰＫ１００内外を制御するプロセッサとして機能する。搭載ＭＰ数は任意にできる。ＭＰは、自ＰＫ内における制御だけではなく、ベースＰＫ１０１内のＬＮ１０３を経由してＰＫ間の制御も可能である。
【００６１】
各機能ＰＫ１０２は、ＰＫ／ボードの種別を示すＩＤが付与されており、当該ＩＤがＤＫＣ１０で読み取られＰＫ保守・管理に用いられる。各機能ＰＫ１０２は、コネクタ２２４を通じた、ベースＰＫ１０１の接続部に対する活線挿抜に対応した構造を有する。各機能ＰＫ１０２は、アダプタ等が、コネクタ２２４を介してＬＮ１０３に接続される。ＬＮ１０３を介して機能ＰＫ１０２間で通信可能である。
【００６２】
機能ＰＫ１０２として適用可能なＩ/Ｆとしては、ＳＣＳＩ（Small Computer System Interface）、ＦＩＣＯＮ、ＥＳＣＯＮ、ＡＣＯＮＡＲＣ（Advanced Connection Architecture）(登録商標)、ＦＩＢＡＲＣ（Fibre Connection Architecture）(登録商標)、ＴＣＰ/ＩＰ（Transmission Control Protocol / Internet Protocol）等の各種が可能である。また、ベースＰＫ１０１や機能ＰＫ１０２は、その他の電気的・機械的構造として、留め金などのパッケージ保持構造や、ボタンなどの簡易取り出し構造などを有してもよい。
【００６３】
＜ミックスＰＫ＞
図５は、ミックスＰＫ１００の構成例及びＰＫ挿抜について示す。ミックスＰＫ１００は、前記図３に示すベースＰＫ１０１と、前記図４に示す機能ＰＫ１０２の組み合わせとにより構成される。ベースＰＫ１０１のコネクタ１０５が、ＢＰボード９０側のコネクタ（９１）に対して接続される。例えば、ＤＫＣボックス１９４におけるスロットＡに、ベースＰＫ１０１が活線挿抜される。また、機能ＰＫ１０２のコネクタ２２４が、ベースＰＫ１０１のコネクタ１０６に対して接続される。例えば、ベースＰＫ１０１に設けられたスロットＡ１〜Ａ４に対しそれぞれ機能ＰＫ１０２が活線挿抜される。本例では、ベースＰＫ１０１がＢＰボード９０に接続されると共に、各スロットＡ１〜Ａ４に対し、Ｉ/Ｆ-ＰＫ＃１，＃２，＃３（２１０），ＬＣＭ-ＰＫ＃１（２１５）が接続される様子を示す。また、ミックスＰＫ１００の機能構成変更や機能ＰＫ１０２の障害発生などに応じてＩ/Ｆ-ＰＫ＃３（２１０）が交換対象となり、交換用のＩ/Ｆ-ＰＫ＃４（２１０）に交換される場合を示す。保守員は、ディスクアレイ装置１の稼動状態において、交換対象のＩ/Ｆ-ＰＫ＃３（２１０）をベースＰＫ１０１から抜き去り、その位置に交換用のＩ/Ｆ-ＰＫ＃４（２１０）を挿入する。その際、ＳＶＰ１９６からの制御により、Ｉ/Ｆ-ＰＫ＃３（２１０）のＬＥＤ２２７が点灯して、交換対象ＰＫであることが保守員に対して示される。各スロットＡ，Ａ１〜Ａ４の情報やその位置におけるＰＫ接続状態などの情報が、ＳＶＰ１９６内やＤＫＣ１０内で構成情報・状態情報として管理されており、ＰＫ挿抜に伴って情報が更新される。例えば構成情報において、スロットＡにベースＰＫ１０１が接続状態であり、更にベースＰＫ１０１上のスロットＡ３でＩ/Ｆ-ＰＫ＃４（２１０）が接続状態となったことが記録される。
【００６４】
ベースＰＫ１０１に対する機能ＰＫ１０２の接続の組み合わせや数については、ユーザごとのサービス提供に応じたディスクアレイ装置実装形態に応じ、キャパシティ内で自由に選択的に構成できる。これにより、同一ミックスＰＫ１００に対して自由にＩ/Ｆポートを増減でき、異種Ｉ/Ｆを混在でき、構成や性能を細かく可変できる。そのため、組み合わせによって、従来のＤＫＣでの制御ＰＫ間での共通接続網を介した転送の必要が無くなり、同一ミックスＰＫ１００内でデータ転送処理できるため、処理高速化が可能となる。また増減設などの単位や転送パスの縮小化によってシステムの信頼性に対する影響も少なくなり、障害時などにもその効果が明らかになる。また特にＩ/Ｆ-ＰＫ２１０を活線挿抜に対応した構成とすることで、ディスクアレイ装置１の稼動中におけるＩ/Ｆポートごとの増減設などの保守交換や構成変更などが可能となる。
【００６５】
＜ＤＫＣボックス及びＰＫ挿抜＞
図６（ａ），（ｂ）は、ディスクアレイ装置１に対するＰＫ接続の構成例として、ＤＫＣボックス１９４におけるＰＫ装着脱の構成について示す。（ａ）は、ＤＫＣボックス１９４の前面の開口部に対してＰＫを挿抜する３つの操作ａ〜ｃを示す斜視図である。（ｂ）は、（ａ）と同様の操作ａ〜ｃを、ＤＫＣボックス１９４の上側からみた断面図である。なおＰＫ外形や接続部構成などについて簡略化して示している。ベースＰＫ１０１及び機能ＰＫ１０２を独立して活線挿抜可能な構成である。
【００６６】
図６（ａ）で、制御ＰＫ１００は、ミックスＰＫ１００の形でＤＫＣボックス１９４のスロットに対し挿抜される。ＤＫＣボックス１９４は、内部奥側にＢＰボード９０の面を有する。ＢＰボード９０の面には、複数のスロットに対応して、ベースＰＫ１０１を接続するためのコネクタ９１などを有する。なおＤＫＣボックス１９４の後面側についても同様に構成できる。ＤＫＣ１０を構成するすべてのＰＫが、コネクタを含む所定の接続部構成を介して、ＢＰボード９０と接続される。
【００６７】
ベースＰＫ１０１及び機能ＰＫ１０２は、保守員により操作ａ〜ｃに示すような挿抜が可能である。操作ａは、ＤＫＣボックス１９４のスロットに装着状態のベースＰＫ１０１／ミックスＰＫ１００に対する機能ＰＫ１０２の活線挿抜である。操作ｂは、ＤＫＣボックス１９４のスロットに対するベースＰＫ１０１／ミックスＰＫ１００の活線挿抜である。操作ｃは、非装着状態のベースＰＫ１０１／ミックスＰＫ１００に対する機能ＰＫ１０２の挿抜である。
【００６８】
図６（ｂ）で、ＤＫＣボックス１９４は、ミックスＰＫ１００を装着可能な８つのスロットＡ〜Ｈを有する場合を示す。各スロットに対しミックスＰＫ１００またはベースＰＫ１０１を自由に挿抜可能である。ベースＰＫ１０１及び機能ＰＫ１０２共にスロットに対して同じ方向で挿抜される形式である。ＤＫＣボックス１９４及び各ＰＫは、ＰＫ装着脱の形式に対応した機械的構造を有する。ベースＰＫ１０１は、ＤＫＣボックス１９４のスロットに設けられているガイドレールに従って挿入または抜き去りされる。また、所定の機械的構造によって、接続状態のＰＫがスロットに固定・保持される。
【００６９】
なお、ＰＫ／ボードの階層的な装着脱に関する構成は、本例に限らず他の形式とすることもできる。例えば、ベースＰＫを構成する２枚のボードの間に機能ＰＫを挿抜する形式や、ベースＰＫを構成するボードの面に対して垂直方向で機能ＰＫを装着脱する形式などである。
【００７０】
ディスクアレイ装置では稼動中の保守性が重要であるため、本実施の形態では、ベースＰＫ１０１及び機能ＰＫ１０２共に活線挿抜に対応した構成としている。活線挿抜対応により、Ｉ/Ｆポート等の単位で保守交換の柔軟性を有する。
【００７１】
＜ミックスＰＫ構成例＞
次に、図７は、ＤＫＣ１０にミックスＰＫ１００を組み込む場合のミックスＰＫ１００の構成例を示す。ミックスＰＫ１００の構成例として、ベースＰＫ１０１に対して、２種類のチャネルＩ/Ｆ-ＰＫ２１０（Ｉ/Ｆ-ＰＫ＃１，＃２）と、ＬＣＭ-ＰＫ２１５と、ＭＰ-ＰＫ２１６とを組み合わせた例である。１つのミックスＰＫ１００において異種Ｉ/Ｆに対応すると共に、ＬＣＭとＭＰにより処理性能を拡張している構成である。また、ベースＰＫ１０１に２つのＭＰ１０４を有する場合である。
【００７２】
Ｉ/Ｆ-ＰＫ＃１（２１１）は、ホスト５０とのＩ/ＦとしてＥＳＣＯＮ対応であり、Ｉ/Ｆ-ＰＫ＃２（２１２）は、ホスト５０とのＩ/ＦとしてＦＣ対応である。各Ｉ/Ｆ-ＰＫ２１０は、コネクタ２２４を通じてベースＰＫ１０１とのデータ転送及びＭＰの制御を行う。
【００７３】
ＬＮ１０３は、データ用のＬＮであるＬＤＳＷ（ローカルデータパス制御スイッチ）１０８と、ＭＰ用のＬＮであるＬＰＮ（ローカルプロセッサ相互接続網）１０９とを含んでいる。ＬＤＳＷ１０８は、各機能ＰＫ１０２のコネクタ２２３とＢＰボード接続用のコネクタ１０５とに接続しており、ＤＳＷ１５１と相互接続される。ＬＤＳＷ１０８は、転送データパスの切り替えを行い、ＰＫ内接続にするかＰＫ間接続にするかを決定する。本実施の形態では、データ転送用の接続網（ＤＳＷ１５１、ＬＤＳＷ）としてスイッチ構成を用いているが、各部が相互接続される形態であればよく、例えば、バス方式やダイレクト接続でもよい。
【００７４】
同様に、ＬＰＮ１０９は、各機能ＰＫ１０２のコネクタ２２３とＢＰボード接続用のコネクタ１０５とに接続しており、ＰＮ１５２と相互接続される。ＬＰＮ１０９は、ＰＫ内外のプロセッサによる通信の制御用として使用され、制御パスの切り替えを行う。ＬＰＮ１０９及びＰＮ１５２を使用するプロセッサは、ベースＰＫ１０１内のＭＰ１０４、ＭＰ-ＰＫ２１６等の機能ＰＫ１０２内のＭＰ、ＤＫＣ１０内にある他の処理部のＭＰなどである。
【００７５】
また、他のミックスＰＫ１００の構成例として、図７におけるＭＰ-ＰＫ２１６を、ドライブＩ/Ｆに対応したＩ/Ｆ-ＰＫ＃３（２１３）に替えて、チャネルＩ/ＦとドライブＩ/Ｆを混在した構成とすることができる。２種類のチャネルＩ/Ｆと、ＬＣＭ-ＰＫ２１５と、１種類のドライブＩ/Ｆ-ＰＫ（２１３）とを組み合わせた構成である。Ｉ/Ｆ-ＰＫ＃３（２１３）は、例えばＳＣＳＩ-Ｉ/Ｆ対応であり、コネクタ２２３に対して接続線を介してＤＲＶ３０を接続してＤＫＡとして機能する。ドライブＩ/Ｆを制御するドライブアダプタ（ＤＡ）がＬＮ１０３に対し接続される。１つのミックスＰＫ１００内で、ホスト５０との転送とＤＲＶ３０との転送との双方を、ＬＣＭへのデータキャッシュを用いながら処理できる。
【００７６】
ＬＣＭ-ＰＫ２１５に搭載されているＬＣＭの利用方法は自由である。第１の利用例として、１つのミックスＰＫ１００内でローカル性のあるデータをＬＣＭに格納して、データキャッシュとして使用する。各Ｉ/Ｆ-ＰＫ２１０及びＭＰが、ＬＣＭにデータを格納する。第２の利用例として、ＭＰ間通信用の制御情報などの共有データをＬＣＭ２３０に格納し、すなわちＬＣＭ２３０を共有メモリとして使用する。ＬＣＭ及びＧＣＭ１３０の一部を、共有メモリとして用いることができる。第３の利用例として、ＭＰの指示によりＬＣＭ−ＧＣＭ１３０間の転送が可能である。Ｉ/Ｆ-ＰＫ２１０のＣＡ２２１等のアダプタを使用せずにＬＣＭ−ＧＣＭ１３０間のデータ転送が可能である。例えばベースＰＫ１０１内のＭＰ１０４の制御により、ＬＣＭ-ＰＫ２１５のＬＣＭ２３０とＧＣＭ１３０との間でデータ転送が行われる。
【００７７】
＜ＤＫＣ構成例（１）＞
図８は、ＰＫ組み合わせによるＤＫＣ１０の第１の構成例とそのデータ転送動作例を示す。本構成は、従来の制御ＰＫ構成と同様に、チャネル制御とドライブ制御とをミックスＰＫ１００単位で分けた場合である。本構成は、必要なポートやＤＲＶ３０分のみの機能ＰＫ１０２で構成できるため、安価である。
【００７８】
図８では、Ｐで示す電源境界の上下で、ＳＶＰ１９６を除いて、ＣＬ＃１とＣＬ＃２が構成されている。ＣＬ＃１に第１，第２のミックスＰＫ＃１，＃２（１００）を、ＣＬ＃２に第３，第４のミックスＰＫ＃３，＃４（１００）を有する。ＣＬ＃１，＃２において、チャネルＩ/ＦとドライブＩ/Ｆとを別のミックスＰＫ１００として、対称的に接続した構成である。
【００７９】
ディスクアレイ装置では、信頼性を向上させるために、例えばクラスタ単位に電源境界を持たせた構成として、障害時にもシステムダウンを防ぐようにする必要がある。本実施の形態では、図８，９等に示すように、ＤＫＣ１０を含むクラスタ構成に応じて、ＰＫの組み合わせや、外部装置やＤＲＶ３０との接続などを構成できる。
【００８０】
ミックスＰＫ＃１（１００）は、チャネルＩ/Ｆとして、２つのファイバＩ/Ｆ-ＰＫ２１２、１つのＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１を接続しており、１つは空き状態である。ミックスＰＫ＃２（１００）は、ドライブＩ/Ｆとして、２つのＳＣＳＩ-Ｉ/Ｆ-ＰＫ２１３を接続しており、２つは空き状態である。クラスタ構成に対応して、一方のＳＣＳＩ-Ｉ/Ｆ-ＰＫ２１３に対してＣＬ＃１のＤＲＶ３０が接続され、他方にＣＬ＃２のＤＲＶ３０が接続される。各ベースＰＫ１０１はＭＰ１０４を有する。
【００８１】
第１の構成例において、動作ａ１は、ホスト５０からＧＣＭ１３０へのデータライトの流れを示す。動作ａ２は、ＧＣＭ１３０からＤＲＶ３０へのデータライトの流れを示す。動作ａ３は、ＤＲＶ３０からＧＣＭ１３０へのデータリードの流れを示す。動作ａ４は、ＧＣＭ１３０からホスト５０へのデータリードの流れを示す。
【００８２】
例えば、ホスト５０からの、ＤＲＶ３０へのデータライト要求に対して、まず、動作ａ１で、ＣＬ＃１内のプロセッサ、例えばミックスＰＫ＃１（１００）内のＭＰ１０４による制御に従い、第２のファイバＩ/Ｆ-ＰＫ２１２は、ホスト５０からのライトデータをＧＣＭ１３０の領域へライトして、ライトした旨の応答をホスト５０へ返す。次に、動作ａ２で、ＣＬ＃１のミックスＰＫ＃２（１００）内のＭＰによる制御に従い、第１のＳＣＳＩ-Ｉ/Ｆ-ＰＫ２１３は、ＧＣＭ１３０から前記ライトデータをリードして、該当ＤＲＶ３０の領域へライトする。
【００８３】
また例えば、ホスト５０からの、ＤＲＶ３０からのデータリード要求に対して、まず、ＣＬ＃２内のプロセッサ、例えばミックスＰＫ＃３（１００）内のＭＰ１０４による制御に従い、第２のファイバＩ/Ｆ-ＰＫ２１２は、ＣＬ＃２のミックスＰＫ＃４（１００）へデータリード要求を出す。次に、動作ａ３で、ＣＬ＃２のミックスＰＫ＃４（１００）内のＭＰによる制御に従い、第１のＳＣＳＩ-Ｉ/Ｆ-ＰＫ２１３は、該当ＤＲＶ３０の領域から要求リードデータをリードして、ＧＣＭ１３０の領域へライトする。次に、前記動作ａ４で、ＣＬ＃２のミックスＰＫ＃３（１００）内のＭＰによる制御に従い、第２のファイバＩ/Ｆ-ＰＫ２１３は、ＧＣＭ１３０から前記リードデータをリードして、ホスト５０へ送信する。
【００８４】
＜ＤＫＣ構成例（２）＞
図９は、ＰＫ組み合わせによるＤＫＣ１０の第２の構成例とそのデータ転送動作例を示す。本構成は、同一ミックスＰＫ１００内でチャネル制御とドライブ制御とを混在させた場合である。本構成により、同一ミックスＰＫ１００内でホスト５０とＤＲＶ３０の間のデータ入出力処理が行えるため、この場合における処理高速化が可能となる。
【００８５】
図９では、Ｐで示す電源境界の上下で、ＣＬ＃１とＣＬ＃２が構成されている。ＣＬ＃１，＃２において、チャネルＩ/Ｆ、ドライブＩ/Ｆ及びＬＣＭを混在したミックスＰＫ１００を、対称的に接続した構成である。
【００８６】
ミックスＰＫ＃１（１００）は、チャネルＩ/Ｆとして、２つのファイバＩ/Ｆ-ＰＫ２１２、ＬＣＭ-ＰＫ２１５、１つのＳＣＳＩ-Ｉ/Ｆ-ＰＫ２１３を接続している。ＳＣＳＩ-Ｉ/Ｆ-ＰＫ２１３に対してＤＲＶ３０が接続される。ミックスＰＫ＃２（１００）は、チャネルＩ/Ｆとして、１つのファイバＩ/Ｆ-ＰＫ２１２、１つのＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１を接続しており、２つは空き状態である。各ベースＰＫ１０１はＭＰ１０４を有する。
【００８７】
第２の構成例において、動作ａ１は、ホスト５０からミックスＰＫ＃１（１００）内のＬＣＭへのデータライトの流れを示す。動作ａ２は、ミックスＰＫ＃１（１００）内のＬＣＭから同ミックスＰＫ１００に接続されているＤＲＶ３０へのデータライトの流れを示す。動作ａ３は、ＤＲＶ３０からＧＣＭ１３０へのデータリードの流れを示す。動作ａ４は、ＧＣＭ１３０からホスト５０へのデータリードの流れを示す。動作ａ５は、ＧＣＭ１３０からＬＣＭへのデータキャッシュのためのデータリードの流れを示す。動作ａ６は、ＤＲＶ３０からホスト５０へのデータリードの流れを示す。各動作及びその逆の流れの動作及びその組み合わせの動作を、状況に応じて選択的に実行させることが可能である。
【００８８】
例えば、ホスト５０からの、ＤＲＶ３０へのデータライト要求に対して、まず、動作ａ１で、ＣＬ＃１内のプロセッサ、例えばミックスＰＫ＃１（１００）内のＭＰ１０４による制御に従い、第１のファイバＩ/Ｆ-ＰＫ２１２は、ホスト５０からのライトデータをＬＣＭの領域へライトして、ライトした旨の応答をホスト５０へ返す。次に、動作ａ２で、ミックスＰＫ＃１（１００）内のＭＰによる制御に従い、ＳＣＳＩ-Ｉ/Ｆ-ＰＫ２１３は、ＬＣＭ-ＰＫ２１５のＬＣＭから前記ライトデータをリードして、該当ＤＲＶ３０の領域へライトする。
【００８９】
また例えば、ホスト５０からの、ＤＲＶ３０からのデータリード要求に対して、まず、ＣＬ＃２内のプロセッサ、例えばミックスＰＫ＃３（１００）内のＭＰ１０４による制御に従い、第１のファイバＩ/Ｆ-ＰＫ２１２は、ＧＣＭ１３０に要求リードデータがある場合、動作ａ４で、ＧＣＭ１３０の領域からデータをリードして、ホスト５０へ送信する。また、例えば動作ａ４と並行して、動作ａ５で、ＧＣＭ１３０からリードしたデータをＬＣＭ-ＰＫ２１５のＬＣＭの領域へキャッシュデータとして格納する。あるいは、動作ａ５でＧＣＭ１３０からＬＣＭへデータキャッシュさせてから、動作ａ１と逆の流れでＬＣＭからホスト５０へデータ転送する。また、ＤＲＶ３０に要求リードデータがある場合、動作ａ３でＤＲＶ３０からデータリードしてＧＣＭ１３０にキャッシュデータとして格納させ、前記動作ａ４，ａ５を同様に行う。あるいは、前記動作ａ２，ａ１の逆の流れでホスト５０へデータ転送する。あるいは、動作ａ６で、ＤＲＶ３０から直接ホスト５０へデータ転送する。
【００９０】
＜制御方法＞
次に、図２，４，７等を参照しながら、ＤＫＣ１０における制御方法について説明する。特に外部接続がある場合の制御の処理フローは、図１３，１４でも示される。以下、ホスト５０がディスクアレイ装置１のＤＲＶ３０からデータを読み出す処理を例に説明する。まず、ホスト５０からのコマンドを、Ｉ/Ｆ-ＰＫ２１０のポートのＰＡ２２２で受信する。ＰＡ２２２で受信したコマンドがＣＡ２２１に送られる。ＤＫＣ１０内に存在するいずれかのＭＰは、受信コマンドを解析し、コマンドの要求データ、すなわち読み出しアクセス先となるデータの格納位置（アドレスなど）を、ＣＡ２２１を使用して割り出す。コマンド処理については、ＤＫＣ１０内にあるいずれのプロセッサが担当して処理しても構わない。例えば、コマンドを受信した機能ＰＫ１０２と同一ミックスＰＫ１００内にあるベースＰＫ１０１のＭＰ１０４などが担当する場合が効率的である。ＣＡ２２１は、ＭＰからの指示に従って、ディレクトリ情報を参照すること等により、前記格納位置を探し出す処理を行う。その結果、前記要求データがＬＣＭ、ＧＣＭ１３０、ＤＲＶ３０等のどこにあるかが判断される。
【００９１】
ＭＰは、前記要求データがＣＭすなわちＬＣＭまたはＧＣＭ１３０にあると判断すると、前記格納位置の情報を含む必要なデータ転送情報をＣＡ２２１に送ってＤＭＡ起動をかける。すると、起動されたＣＡ２２１のＤＭＡＣ２５０が、レジスタ２５２上のデータ転送情報に従ってバッファ２５１を利用しながら、前記要求データについて転送先のホスト５０と転送元のＣＭとの間でのＤＭＡデータ転送処理を行う。その際、ＤＳＷ１５１やＬＤＳＷ１０８は、前記要求データのアドレスを見て各部間の接続先を切り替え、該当ＣＭと接続する。
【００９２】
前記要求データが同一ミックスＰＫ１００内のＬＣＭにある場合、ＭＰは、要求データの転送のためのデータ転送情報を、ＣＡ２２１を介してＬＤＳＷ１０８に接続し、ＬＮ１０３を使用してキャッシュアダプタ２２５にコマンドを送信してメモリ２３０からデータを読み出す。そして読み出したデータを、ＬＮ１０３を介してＣＡ２２１が受信し、ＰＡ２２２を介してホスト５０へ送信する。また前記要求データがＬＣＭには存在せずＧＣＭ１３０にある場合、ＭＰは、前記要求データの転送のためのデータ転送情報を、ＣＡ２２１を介してＤＳＷ１５１に接続し、ＬＮ１０３及びＤＳＷ１５１を使用してＧＣＭ１３０からデータを読み出す。そして同様に読み出したデータを、ＣＡ２２１からホスト５０へ送信する。
【００９３】
また前記要求データがＬＣＭ及びＧＣＭ１３０のいずれにも無い場合、ＭＰは、要求データが格納されているＤＲＶ３０を接続しているＰＫに対して、要求データの読み出し要求を出す。この要求に従って該当Ｉ/Ｆ-ＰＫ２１０がＤＲＶ３０から読み出したデータを、ＣＭすなわちＧＣＭ１３０及びＬＣＭに格納するように制御する。これにより、キャッシュヒット率を向上できる。そして同様に読み出したデータを、ＣＡ２２１からホスト５０へ送信する。特に、前記ＤＲＶ３０のデータを自ミックスＰＫ１００内にあるＬＣＭに格納することで、同データの転送についてはＬＣＭを利用できミックスＰＫ１００外への接続処理無しで更に高速にアクセスできることになる。
【００９４】
＜ＰＫ保守・管理＞
ＰＫの保守・管理面について説明する。従来のＤＫＣ構成における機能増減・保守の単位は、制御ＰＫ単位であった。例えば１つのＩ/Ｆポートの故障時でもそのポートを含んだ制御ＰＫ自体を交換する必要があった。このため保守手間やシステム影響が大きい。本実施の形態では、保守単位はベースＰＫまたは機能ＰＫ単位となり、保守手間やシステム影響が小さい。
【００９５】
また、ＰＫの種類を増やして増減単位を細分化したことにより、様々な機能ＰＫが存在する。従来構成では制御ＰＫごとに１種類のＩ/Ｆであったため、ＰＫ交換の際に間違えることは少なかったが、本実施の形態では複数のスロットに対して機能ＰＫ１０２を自由に交換できるため、ＰＫ種類などを識別できＰＫ誤接続を防止できる手段を設ける。その手段として、各ＰＫにＰＫ種類やＰＫ状態、保守対象などを識別できるＩＤ（識別情報）を設ける。また、ＤＫＣ１０内の処理部またはＳＶＰ１９６により、ＰＫ種類やＰＫ状態や保守対象などを管理する処理を行わせる。
【００９６】
例えば、ＰＫ識別手段として、各ＰＫ（１０１，１０２）にＰＫ-ＩＤ、シリアルＰＲＯＭ、ＬＳＩのレジスタ等を付けた構成とする。ＰＫ挿抜時には、ＤＫＣ１０及びＳＶＰ１９６はそのＰＫのＩＤを参照して、ＳＶＰ１９６側で管理している情報と実際の接続ＰＫ及び接続位置との照合により、誤接続などをチェックする。ＳＶＰ１９６では、例えば、正しいＰＫ位置を示す構成情報やＰＫ障害情報などを常時管理する。前記チェックによりＰＫ誤接続を検出した場合には、そのことを保守員に対して通知する。
【００９７】
また特に、ベースＰＫ１０１，機能ＰＫ１０２に保守用のＬＥＤ１０７，２２７を具備した構成において、ＰＫに障害が発生した際などの保守交換のために、ＳＶＰ１９６から保守操作に連動したＬＥＤ１０７，２２７の表示制御を行い、保守員に対して保守操作をわかりやすく指示する。ＬＥＤ１０７，２２７の表示に従って、保守員は交換位置やＰＫなどの確認ができ、保守ミスを防ぐことができる。
【００９８】
また電源障害等でＬＥＤ１０７，２２７が点灯しない場合も想定されるため、ＳＶＰ１９６からの指示については、ＳＶＰ１９６での処理によって、ＬＥＤ表示制御と共に、ＳＶＰ１９６等のディスプレイ画面においてＧＵＩ表示により行う。ＳＶＰ１９６は、実際の装置構成状態を表わす図をＧＵＩ表示して、交換対象ＰＫやＰＫ挿抜位置などの情報も表示し、保守員に対し的確に指示する。またＰＫを順番に交換させる場合にも対応して、ＰＫ挿抜の順番や位置などの操作手順を表示して指示する。
【００９９】
保守用のＬＥＤ１０７，２２７の機能及び制御の具体例を説明する。各ベースＰＫ１０１，機能ＰＫ１０２におけるＬＥＤ１０７，２２７を制御して、ＰＫ異常検出や保守交換対象ＰＫを保守員に認識させる。特にＳＶＰ１９６からの制御により、ＰＫ交換位置や手順をＧＵＩ表示で示すと共に、交換対象ＰＫのＬＥＤを点灯させる。ＰＫ挿抜に伴い、ＳＶＰ１９６の管理情報と実際の挿抜ＰＫとのチェックを行い、誤接続の場合には通知する。例えば、各ベースＰＫ１０１，機能ＰＫ１０２に保守用ＬＥＤ１０７，２２７として黄色と赤色の２つを具備した構成とする。まず、ＰＫ（例えば機能ＰＫ１０２）の電源系が故障の場合、黄色ＬＥＤを点灯させる。それにより保守員は、当該ＰＫが電源系異常と判断できる。また、ＳＶＰ１９６から交換対象ＰＫを指示する場合に、赤色ＬＥＤを点灯させる。それにより保守員は、交換対象ＰＫを判断できる。また、ＰＫ挿抜時に、ＳＶＰ１９６等で構成情報により管理している装置構成と比較して不一致の場合の時も、該当ＰＫの所定ＬＥＤを点灯させることで、保守員はＰＫ誤接続を認識できる。また、ＬＥＤ１０７，２２７の制御については、例えばＬＮ１０３からの制御線を通じて、ＳＶＰ１９６や、ベースＰＫ１０１内や機能ＰＫ１０２内や外部ＰＫなどから行う。
【０１００】
各パッケージにＬＥＤを設ける以外に、パッケージを装着するスロット等の筐体側に、パッケージ状態及びパッケージ保守・管理の操作に対応してその表示が制御されるＬＥＤを備えてもよい。そして同様に、ＳＶＰ１９６から、装着脱位置となるスロットのＬＥＤの表示が制御される。
【０１０１】
＜ＰＫ増設・障害・交換＞
ＰＫ保守例とその処理について説明する。図１０（ａ）は、機能ＰＫ１０２の増設と障害発生時の交換の例を示す。ここで前提となるＤＫＣ１０の構成は、前記図８と同様とする。ＤＫＣボックス１９４における、ベースＰＫ１０１が装着される各スロットを｛Ａ，Ｂ，Ｃ，Ｄ，……｝等とし、また、各ベースＰＫ１０１における機能ＰＫ１０２が装着される各スロットを｛Ａ１，Ａ２，Ａ３，Ａ４｝等とする。スロットＡにミックスＰＫ＃１（１００）が、スロットＢにミックスＰＫ＃３（１００）が、それぞれ接続状態である。ＳＶＰ１９６でのＧＵＩ表示に従って保守員がＰＫ挿抜を行う。ＳＶＰ１９６は、ミックスＰＫ１００との間で、ＧＵＩ表示による保守指示、各ＬＥＤの表示制御、ＩＤを用いたＰＫ構成チェック、障害ＰＫの閉塞処理などを行う。
【０１０２】
まず、機能ＰＫ１０２を増設する場合として、ＣＬ＃１，＃２のミックスＰＫ＃１，＃３（１００）において、空きスロットＡ４，Ｂ４にファイバＩ/Ｆ-ＰＫ２１２を増設する場合を説明する。まず、保守員は、ＣＬ＃１のミックスＰＫ＃１（１００）に関して、増設用のＩ/Ｆ-ＰＫ２１２を準備する。次に、ＳＶＰ１９６での指示に従い保守員は増設用のＩ/Ｆ-ＰＫ２１２をＤＫＣボックス１９４のベースＰＫ１０１の該当スロットＡ４に挿入する。次に、ＤＫＣ１０及びＳＶＰ１９６は、挿入された機能ＰＫ１０２のＩＤを読み込み、構成情報と比較して、目的とする構成と一致するかどうかを確認する。一致しない場合は誤接続を通知する。次に、構成が正しいことが確認されたら、接続されたＩ/Ｆ-ＰＫ２１２での診断を行って、ＤＫＣ１０のシステムへ組み込む。前記診断は、ＰＫ内の部位がハードウェア的に正常に動作するかどうかのチェックである。次に、保守員は、ＣＬ＃２側のミックスＰＫ＃３（１００）におけるスロットＢ４についても、ＣＬ＃１側と同様の手順でＩ/Ｆ-ＰＫ２１２を増設する。
【０１０３】
また、機能ＰＫ１０２を別の機能ＰＫ１０２に交換する場合として、ＣＬ＃１，＃２のミックスＰＫ＃１，＃３（１００）において、スロットＡ２のファイバＩ/Ｆ-ＰＫ２１２に障害が発生したためにこれを別のファイバＩ/Ｆ-ＰＫ２１２に交換する場合を説明する。まず、スロットＡ２のファイバＩ/Ｆ-ＰＫ２１２で障害が発生したことが検出される。障害を検出したＭＰは、その障害情報を採取して当該機能ＰＫ１０２についての閉塞処理を行う。前記閉塞処理は、該当ＰＫ部分をシステムから論理的に切り離す処理である。次に、前記検出したＭＰは、スロットＡ２が閉塞したことを、ＤＫＣ１０内の他のＭＰに対して報告する。次に、前記ＤＫＣ１０内の他のＭＰは、スロットＡ２が閉塞したことを知ると、スロットＡ２を使用しないように閉塞状態として扱う制御を行う。次に、前記検出したＭＰは、ＳＶＰ１９６に対し閉塞部位のスロットＡ２についての障害報告を行い、ＳＶＰ１９６に対してＰＫ交換要求を出す。ＳＶＰ１９６は、前記障害報告及びＰＫ交換要求を受け、ＭＰからの障害情報などをもとに、ＤＫＣ１０の論理構成及び状態を変更する。すなわちＰＫ閉塞発生に合わせて構成情報などを更新する。その後、ＳＶＰ１９６は、必要に応じて、保守員に対して機能ＰＫ１０２の障害発生や、ＰＫ交換要求を通知する処理などを行う。
【０１０４】
続いて障害ＰＫの交換手順を説明する。まず、保守員は、交換用のファイバＩ/Ｆ-ＰＫ２１２を準備する。ＳＶＰ１９６の指示に従い、代表ＭＰは、スロットＡ２の障害ＰＫ（２１２）の処理を停止させ閉塞状態へ移行させる。前記代表ＭＰは、ＤＫＣ１０における複数存在するＭＰのうち仕事のない１つのＭＰ等であり、例えばベースＰＫ１０１のＭＰ１０４である。この際、前記代表ＭＰは、障害ＰＫ（２１２）の交換指示を表わすＬＥＤ２２７を点灯させ、ＰＫ交換を保守員に対して指示する。次に、ＳＶＰ１９６で障害ＰＫ（２１２）のスロットＡ２を確認する。この確認は、閉塞部位とＬＥＤ２２７が点灯される機能ＰＫ（２１２）とが合っているか等の確認である。次に、保守員は、障害ＰＫ（２１２）をスロットＡ２から抜き去り、交換用ＰＫ（２１２）を挿入する。ＳＶＰ１９６から、ファイバＩ/Ｆ-ＰＫ２１２が交換されたことを、代表ＭＰに対して報告する。ＳＶＰ１９６は、スロットＡ２に挿入されたＰＫ（２１２）のＩＤを読み込み、目的とする構成と一致するか確認する。代表ＭＰは、構成が正しければ、該当機能ＰＫ（２１２）における診断を行って、ＤＫＣ１０のシステムへ組み込む。代表ＭＰは、スロットＡ２のファイバＩ/Ｆ-ＰＫ２１２が新たに構成に組み込まれたことを、ＤＫＣ１０内の他のＭＰに対して報告する。代表ＭＰは、ＳＶＰ１９６に報告して、ＳＶＰ１９６は構成情報を更新する。なお、前記機能ＰＫ１０２の障害中や交換中でも、スロットＡ１，Ａ３の機能ＰＫ１０２については使用可能な状態であり、前記図８に示すような各動作が可能である。
【０１０５】
図１０（ｂ）は、ベースＰＫ１０１／ミックスＰＫ１００の障害発生時の交換の例を示す。ここで前提となるＤＫＣ１０の構成は、前記図８と同様とする。ベースＰＫ１０１／ミックスＰＫ１００を別のＰＫに交換する場合として、ＣＬ＃２のミックスＰＫ＃３（１００）において、ベースＰＫ１０１で障害が発生したためにこれを別のＰＫに交換する場合を説明する。
【０１０６】
まず、スロットＢのベースＰＫ１０１で例えばＬＮ１０３における障害が発生したことが検出される。障害を検出したＭＰは、その障害情報を採取して当該ベースＰＫ１０１についての閉塞処理を行う。次に、前記障害を検出したＭＰは、スロットＢが閉塞したことを、ＤＫＣ１０内の他のＭＰに対して報告する。次に、前記ＤＫＣ１０内の他のＭＰは、スロットＢが閉塞したことを知ると、スロットＢを使用しないように閉塞状態として扱う制御を行う。次に、前記検出したＭＰは、ＳＶＰ１９６に対し閉塞部位のスロットＢについての障害報告を行い、ＳＶＰ１９６に対してＰＫ交換要求を出す。ＳＶＰ１９６は、前記障害報告及びＰＫ交換要求を受け、ＭＰからの障害情報などをもとに、ＤＫＣ１０の論理構成及び状態を変更する。その後、ＳＶＰ１９６は、必要に応じて、保守員に対してベースＰＫ１０１の障害発生や、ＰＫ交換要求を通知する処理などを行う。
【０１０７】
続いて、障害状態のベースＰＫ１０１についてミックスＰＫ＃３（１００）ごとに交換する場合の手順を説明する。まず、保守員は、交換用のベースＰＫ１０１を準備する。ＳＶＰ１９６の指示に従い、代表ＭＰは、スロットＢの障害ＰＫ（１０１）の処理を停止させ閉塞状態へ移行させる。この際、前記代表ＭＰは、障害ＰＫ（１０１）の交換指示を表わすＬＥＤ１０７を点灯させ、ＰＫ交換を保守員に指示する。次に、ＳＶＰ１９６で障害ＰＫ（１０１）のスロットＢを確認する。この確認は、閉塞部位とＬＥＤ１０７が点灯されるベースＰＫ（１０１）とが合っているか等の確認である。次に、保守員は、スロットＢから障害ＰＫ（１０１）をミックスＰＫ＃３（１００）ごとに抜き去り、交換用のベースＰＫ１００に各機能ＰＫ１０２を装着したミックスＰＫ（１００）の形で挿入する。その際、保守員は、障害ＰＫ（１０１）から交換用のベースＰＫ（１０１）へと、装着位置関係をそのままに各機能ＰＫ１０２を移して交換用のミックスＰＫ（１００）を構成する。次に、スロットＢに交換用ＰＫが挿入されたら、ＳＶＰ１９６から、ベースＰＫ１０１が交換されたことを、代表ＭＰに対して報告する。ＳＶＰ１９６はスロットＢに挿入されたベースＰＫ１０１のＩＤを読み込み、目的とする構成と一致するか確認する。代表ＭＰは、構成が正しければ、該当ベースＰＫ１０１における診断を行い、ＤＫＣ１０のシステムへ組み込む。代表ＭＰは、スロットＢのベースＰＫ１０１が新たに構成に組み込まれたことを、ＤＫＣ１０内の他のＭＰに対して報告する。代表ＭＰは、ＳＶＰ１９６に報告して、ＳＶＰ１９６は構成情報を更新する。
【０１０８】
同一ミックスＰＫ１００で複数のＩ/Ｆなどの機能ＰＫ１０２を交換する場合、個々のＩ/Ｆ-ＰＫ２１０を順に交換させることも可能であるが、場合に応じてベースＰＫ１０１ごと交換させる操作により、保守手間を削減できる。
【０１０９】
＜外部接続（１）＞
次に、図１１は、ディスクアレイ装置１に対して外部ディスク制御装置８０を通信接続した場合の第１の構成例を示す。本構成は、同一ミックスＰＫ１００内にホスト５０とのＩ/Ｆと外部ディスク制御装置８０とのＩ/Ｆとに対応して、異種のチャネルＩ/Ｆ-ＰＫを組み合わせた場合である。前提となるＤＫＣ１０の構成は、前記図８と同様であり、特に、前記ミックスＰＫ＃１，＃３（１００）における第２のファイバＩ/Ｆ-ＰＫ２１２の位置（スロットＡ２，Ｂ２）に、ＬＣＭ-ＰＫ２１５を接続した場合を示す。ＤＫＣ１０の各ＣＬ＃１，＃２のミックスＰＫ＃１，＃３（１００）において、ファイバ-Ｉ/Ｆ-ＰＫ２１２に対してホスト５０が接続され、ＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１に対して外部ディスク制御装置８０が接続されている。この外部ディスク制御装置８０は、接続されるＤＲＶ３０などの記憶装置に対するデータ入出力を制御する装置であり、例えばディスクアレイ装置１と同一種類の装置や、他の種類のディスクアレイ装置や、その他の情報処理装置である。なお、各ミックスＰＫ１００にＭＰを有するが省略して示す。
【０１１０】
動作ａ１，ａ２は、ミックスＰＫ＃１，＃３（１００）においてＬＣＭ-ＰＫ２１５が無い構成の場合における、ホスト５０と外部ディスク制御装置８０との間のデータ転送の流れを示す。また、動作ａ３，ａ５は、ミックスＰＫ＃１，＃３（１００）においてＬＣＭ-ＰＫ２１５がある構成の場合における、ホスト５０とＬＣＭとの間のデータ転送の流れを示す。また、動作ａ４，ａ６は、ミックスＰＫ＃１，＃３（１００）においてＬＣＭ-ＰＫ２１５がある構成の場合における、ＬＣＭと外部ディスク制御装置８０との間のデータ転送の流れを示す。また、動作ａ７は、外部ディスク制御装置８０との転送の場合に、前記図８，９に示したようなＧＣＭ１３０に対するデータキャッシュの流れを示す。動作ａ１〜ａ６に加えて、動作ａ７を併用して処理することもできる。
【０１１１】
以下、ディスクアレイ装置１と外部ディスク制御装置８０との間でデータ転送が行われる場合の処理例を説明する。まず、ディスクアレイ装置１は、ＣＬ＃１または＃２におけるミックスＰＫ＃１，＃３（１００）において、ファイバＩ/Ｆ-ＰＫ２１２を介して、ホスト５０からのコマンドを受信する。ミックスＰＫ＃１，＃３（１００）において、いずれかのＭＰ、例えばベースＰＫ１０１のＭＰ１０４は、受信コマンドを解析する。前記ＭＰは、解析により転送先となるポートを確認する。例えば前記受信コマンドがデータライト要求であり、その転送先アドレスが、外部ディスク制御装置８０に接続されているＤＲＶ３０の領域であるとする。この場合、同一ミックスＰＫ１００内で外部ディスク制御装置８０を接続しているＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１に有するポートが、転送先となるポートである。当該ポートは、外部ディスク制御装置８０に対しての転送元のポートとなる。
【０１１２】
前記ＭＰは、外部ディスク制御装置８０への転送先のポートが自ミックスＰＫ１００内にあるか否か、また、要求データがＬＣＭやＧＣＭ１３０にあるか等を確認する。前記ＭＰは、転送先ポートが同一ミックスＰＫ１００内にあり、ＬＣＭが無い場合、ＬＮ１０３により該当Ｉ/Ｆ-ＰＫ（２１１）に対して転送指示を出す。前記転送指示に従ってデータを受け取ったＩ/Ｆ-ＰＫ（２１１）は、外部ディスク制御装置８０との間でデータ転送を行う。外部ディスク制御装置８０は、ＤＲＶ３０に対して転送データを読み書きする。動作ａ１等により、ＬＣＭを介さずにホスト５０と外部ディスク制御装置８０の間でデータ転送される。
【０１１３】
また、前記ＭＰは、同一ミックスＰＫ１００内にＬＣＭがある場合、ＬＮ１０３により該当ＬＣＭ-ＰＫ２１５に対して転送指示を出す。前記転送指示に従ってデータを受け取ったＬＣＭ-ＰＫ２１５は、同一ミックスＰＫ１００内のＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１の処理を介して外部ディスク制御装置８０との間でデータ転送を行う。動作ａ３，ａ４等により、ＬＣＭを介してホスト５０と外部ディスク制御装置８０の間でデータ転送される。ＬＣＭに要求データが格納されている場合は、ＬＣＭ上のキャッシュデータを用いて転送処理される。
【０１１４】
同一ミックスＰＫ１００内に異種Ｉ/Ｆを混在した構成により、外部ディスク制御装置８０との異種Ｉ/Ｆ間でのデータ転送において、ＬＮ１０３を使用できるため、ＤＳＷ１５１等を使用せずに高速に処理できる。また、ミックスＰＫ１００内に異種Ｉ/ＦとＬＣＭを混在した構成の場合、外部ディスク制御装置８０とのデータ転送において、ＬＣＭを利用してキャッシュヒット率が向上でき、高速に処理できる。
【０１１５】
＜外部接続（２）＞
次に、図１２は、ディスクアレイ装置１に対して外部ディスク制御装置８０を通信接続した場合の第２の構成例を示す。本構成は、外部ディスク制御装置８０への転送先となるポートが同一ミックスＰＫ１００内ではなく他のミックスＰＫ１００内のＩ/Ｆ-ＰＫ２１０にある場合である。各ミックスＰＫ１００において、異種のチャネルＩ/Ｆ-ＰＫを組み合わせた場合である。ＤＫＣ１０のＣＬ＃１，＃２において、ミックスＰＫ＃１，＃３（１００）で、ファイバＩ/Ｆ-ＰＫ２１２、ＬＣＭ-ＰＫ２１５、ＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１、及び１つの空きを有し、ミックスＰＫ＃２，＃４で、ＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１、ＬＣＭ-ＰＫ２１５、及び２つの空きを有する構成である。そして、ミックスＰＫ＃１，＃３（１００）において、ファイバ-Ｉ/Ｆ-ＰＫ２１２に対してホスト５０が接続され、ミックスＰＫ＃２，＃４（１００）において、ＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１に対して外部ディスク制御装置８０が接続されている。特に、各ミックスＰＫ＃１〜＃４（１００）のスロット（Ａ２，Ｂ２，Ｃ２，Ｄ２）に、ＬＣＭ-ＰＫ２１５を接続した場合を示す。なお、各ミックスＰＫ１００にＭＰを有するが省略して示す。
【０１１６】
ＣＬ＃１のミックスＰＫ＃１（１００）でホスト５０からのコマンドを受信し、ミックスＰＫ＃２（１００）のＥＳＣＯＮ-Ｉ/Ｆを介して外部ディスク制御装置８０へデータライトのためのデータ転送を行う場合を説明する。
【０１１７】
動作ａ１は、ホスト５０からファイバＩ/Ｆ-ＰＫ２１２を介してミックスＰＫ＃１（１００）内のＬＣＭに対するデータライトの流れを示す。動作ａ２は、前記ミックスＰＫ＃１（１００）のＬＣＭに書き込まれたデータを、ＤＳＷ１５１及びミックスＰＫ＃２（１００）を介して外部ディスク制御装置８０へデータライトする流れを示す。動作ａ３は、ホスト５０からのデータを、ミックスＰＫ＃１（１００）のファイバＩ/Ｆ-ＰＫ２１２を介してＤＫＣ１０におけるＧＣＭ１３０にデータライトする流れを示す。
【０１１８】
ホスト５０から外部ディスク制御装置８０へのデータ転送において、例えば、ＬＣＭがある場合には、動作ａ１，ａ２，ａ３を順に行う。あるいは、動作ａ１，ａ２のみを順に行う。ＬＣＭにキャッシュデータがある場合は、動作ａ２のみ行う。また特に、前記動作ａ１とａ３の両方を同時並行的に実行する動作、すなわちＬＣＭとＧＣＭ１３０を対象としたデータの二重ライト動作を行って二重にキャッシュすることも可能である。
【０１１９】
次に、同様にＣＬ＃２のミックスＰＫ＃３（１００）でホスト５０からのコマンドを受信し、ミックスＰＫ＃４（１００）のＥＳＣＯＮ-Ｉ/Ｆを介して外部ディスク制御装置８０からデータリードのためのデータ転送を行う場合を説明する。
【０１２０】
動作ａ４は、ミックスＰＫ＃３（１００）内のＬＣＭからファイバＩ/Ｆ-ＰＫ２１２を介してホスト５０に対するデータリードの流れを示す。動作ａ５は、ＧＣＭ１３０からミックスＰＫ＃３（１００）のファイバＩ/Ｆ-ＰＫ２１２を介してホスト５０へのデータリードの流れを示す。動作ａ６は、外部ディスク制御装置８０側のＤＲＶ３０からミックスＰＫ＃４（１００）のＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１を介してデータリードして、ＧＣＭ１３０へ格納する流れを示す。動作ａ７は、ＧＣＭ１３０からデータリードしてミックスＰＫ＃３（１００）のＬＣＭに格納する流れを示す。
【０１２１】
外部ディスク制御装置８０からホスト５０へのデータ転送において、例えば、ＬＣＭがある場合には、動作ａ６，ａ７，ａ４を順に行う。あるいは、動作ａ６，ａ５，ａ７を順に行う。ＬＣＭがない場合は、動作ａ６，ａ５を順に行う。ＬＣＭにキャッシュデータがある場合は、動作ａ４のみ行う。ＧＣＭ１３０にキャッシュデータがある場合は、動作ａ５のみ行う。あるいは、動作ａ７，ａ４を順に行う。また特に、前記動作ａ６，ａ７の両方を同時並行的に実行する動作、すなわちＬＣＭとＧＣＭ１３０を対象としたデータの二重ライト動作を行って二重にキャッシュすることも可能である。
【０１２２】
＜処理フロー（１）＞
図１３は、ディスクアレイ装置１に対して外部ディスク制御装置８０が接続されている場合におけるデータ転送処理の第１のフローとして、データライト処理を示す。ＤＫＣ１０の構成は、前記図８，９等に従うものとする。
【０１２３】
ホスト５０からのライト要求及びライトデータをミックスＰＫ１００で受信した時の処理を説明する。まず、ステップＳ１で、ミックスＰＫ１００のＩ/Ｆ-ＰＫ２１０は、ホスト５０からライト要求に対応したコマンド（ライトコマンド）を受信する。次に、Ｓ２で、ＤＫＣ１０内におけるいずれかのＭＰ、例えば同一ミックスＰＫ１００内にあるＭＰは、受信したコマンドを解析する。次に、Ｓ３で、前記ＭＰは、転送先となるポートを確認する。すなわち、転送先となるメモリ領域やアドレス等を割り出す。次に、Ｓ４で、前記ＭＰは、前記コマンドにおける要求データの格納位置すなわちライト先に対応した転送先ポートが、自ミックスＰＫ１００内にあるＩ/Ｆ-ＰＫ２１０内の外部接続ポートであるか否かを判断する。自ミックスＰＫ１００内に無い場合（ＮＯ）、Ｓ７で、ＭＰの指示に従い該当Ｉ/Ｆ-ＰＫ２１０のＤＭＡデータ転送処理によって、ＧＣＭ１３０にライトデータを転送して格納し、Ｓ８で、該当Ｉ/Ｆ-ＰＫ２１０からホスト５０に対し完了報告を行う。
【０１２４】
前記Ｓ４で他のミックスＰＫ１００内にある場合（ＹＥＳ）、次に、Ｓ５で、ＭＰは、自ミックスＰＫ１００内にＬＣＭがあるか否かを確認する。ＬＣＭが無い場合（ＮＯ）、Ｓ７でＧＣＭ１３０にデータライトして、Ｓ８でホスト５０に対し完了報告する。前記Ｓ５でＬＣＭがある場合（ＹＥＳ）、Ｓ６で、自ミックスＰＫ１００内のＬＣＭにライトデータを転送して格納し、Ｓ８でホスト５０に完了報告する。
【０１２５】
更に上記ステップＳ６でＬＣＭへのデータライト時に、合わせてＧＣＭ１３０に対してもライト処理を行うことで（前記図１２の動作ａ１，ａ３）、ＬＣＭまたはＧＣＭ１３０の障害時でも他方のＣＭを利用してデータ保障が可能となる。
【０１２６】
＜処理フロー（２）＞
図１４は、ディスクアレイ装置１に対して外部ディスク制御装置８０が接続されている場合におけるデータ転送処理の第２のフローとして、データリード処理を示す。
【０１２７】
ホスト５０からのリード要求をミックスＰＫ１００で受信した時の処理を説明する。まず、ステップＳ２１で、ミックスＰＫ１００のＩ/Ｆ-ＰＫ２１０は、ホスト５０からリード要求に対応したコマンドを受信する。次に、Ｓ２２で、ＤＫＣ１０におけるいずれかのＭＰは、受信したコマンドを解析する。次に、Ｓ２３で、前記ＭＰは、転送先となるポートを確認する。次に、Ｓ２４で、前記ＭＰは、前記コマンドにおける要求データの格納位置すなわちリード先に対応した転送先ポートが、自ミックスＰＫ１００内にあるＩ/Ｆ-ＰＫ２１０内の外部接続ポートであるか否かを判断する。自ミックスＰＫ１００内に無い場合（ＮＯ）、Ｓ２７へ移る。
【０１２８】
Ｓ２７では、前記ＭＰは、ＧＣＭ１３０に要求データすなわちリード対象データがあるか否かを確認する。要求データが無い場合（ＮＯ）、Ｓ２９で、ＭＰの指示に従い該当Ｉ/Ｆ-ＰＫ２１０のＤＭＡデータ転送処理によって、ＤＳＷ１５１を介して他のミックスＰＫ１００内の外部接続ポートを経由して、外部ディスク制御装置８０側のＤＲＶ３０から要求データをリードし、ＧＣＭ１３０の領域に格納して、Ｓ３１へ移る。前記ＧＣＭ１３０に要求データがある場合（ＹＥＳ）、Ｓ３１へ移る。
【０１２９】
Ｓ３１では、該当Ｉ/Ｆ-ＰＫ２１０のＤＭＡデータ転送処理によって、ＧＣＭ１３０から前記要求データをリードする。そして、Ｓ３２で、該当Ｉ/Ｆ-ＰＫ２１０からホスト５０へリードデータを送信する。
【０１３０】
前記Ｓ２４で自ミックスＰＫ１００内にある場合（ＹＥＳ）、次に、Ｓ２５で、ＭＰは、自ミックスＰＫ１００内にＬＣＭがあるか否かを確認する。ＬＣＭが無い場合（ＮＯ）、前記Ｓ２７以降の処理を行う（自ミックスＰＫ１００内のポートを用いた処理となる）。ＬＣＭがある場合（ＹＥＳ）、次に、Ｓ２６で、ＭＰは、ＬＣＭに要求データがあるか否かを確認する。ＬＣＭに要求データが無い場合（ＮＯ）、Ｓ２８で、自ミックスＰＫ１００内にあるＩ/Ｆ-ＰＫ２１０内の外部接続ポート経由で、外部ディスク制御装置８０側のＤＲＶ３０から要求データをリードする。そしてリードしたデータをＬＣＭに格納する。そしてＳ３０へ移る。前記ＬＣＭに要求データがある場合（ＹＥＳ）、Ｓ３０へ移る。
【０１３１】
Ｓ３０で、該当Ｉ/Ｆ-ＰＫ２１０のＤＭＡデータ転送処理によって、ＧＣＭ１３０から要求データをリードし、Ｓ３２で、該当Ｉ/Ｆ-ＰＫ２１０からホスト５０に対しリードデータを送信する。
【０１３２】
上記処理で、ローカル性のあるデータについては、ＧＣＭ１３０からＬＣＭへとコピーしておくことで、キャッシュアクセス性能を上げることができ、またＧＣＭ１３０の領域から前記コピーした該当データを削除できる。
【０１３３】
＜プロセッサ接続例（１）＞
次に、本発明の一実施の形態におけるディスクアレイ装置１として、ＤＫＣ１０におけるＭＰ間の相互接続及び制御用通信に係わる各形態を示す。前記ＰＮ１５２は、各ミックスＰＫ１００を介したＭＰ間の通信に使用される。このＰＮ１５２は、あるミックスＰＫ１００で有するプロセッサ、例えばベースＰＫ１０１のＭＰ１０４やＭＰ-ＰＫ２１６内のＭＰ２４０等だけでなく、他のミックスＰＫ１００のプロセッサにも接続されている。
【０１３４】
従来のＤＫＣにおける制御通信の仕組みは、共有メモリを使用してＣＨＡやＤＫＡ等の制御ＰＫ間でのＭＰ間の連絡を行っていたものである。本実施の形態では、ＰＮ１５２の仕組みを用意したことにより、従来の仕組みが不要になる。制御例として、ホスト５０からのデータをディスクアレイ装置１内のＤＲＶ３０にライトする処理に関して、当該処理を１つのＭＰに制御させることにより、ＭＰ間通信無しで処理をスムーズに行うことも可能である。更に、あるミックスＰＫ１００におけるベースＰＫ１０１のＭＰ１０４やＭＰ-ＰＫ２１６のＭＰ２４０から、他のミックスＰＫ１００に対しデータ転送制御などの制御を行うことが可能となる。これによりＤＫＣ１０内に有するＭＰを無駄なく使用して処理効率を向上することが可能となる。また、ＭＰ-ＰＫ２１６の接続によりＭＰだけを増加させることもできるため、処理性能が要求される場合などに、必要に応じて性能向上を図れる。また、データ転送制御などに関してＤＫＣ１０内のいずれかのＭＰを使用できるが、特に、転送先となるＩ/ＦポートのあるミックスＰＫ１００内にあるＭＰを使用することで、処理効率を高くできる。
【０１３５】
ＭＰ及びＰＮ１５２に関する相互接続の形態は、例えば以下である。第１に、ＰＮ１５２を、スイッチ接続またはバス方式の接続とする。第２に、各ミックスＰＫ１００のＭＰ同士をダイレクトに接続する。第３に、ＰＮ１５２を、スイッチ接続の構成とすると共にそのスイッチ部にメモリＩ/Ｆを持たせて、そのメモリをＭＰ間の共有資源として用いる。
【０１３６】
図１５は、一実施の形態のディスクアレイ装置１として、ＤＫＣ１０におけるＭＰ間の相互接続及び制御用通信に係わる第１の構成例を示し、ＭＰ及びＰＮ１５２についてスイッチ接続に対応した構成である。ＰＮ１５２として、ＰＳＷ（プロセッサパス制御スイッチ）１５３が、ＤＳＷ１５１と対になる形で設けられている。なおＳＶＰ１９６及びＬＡＮ１９０を省略して示す。ＰＳＷ１５３は、ＤＫＣ１０における各ＰＫ間のＭＰ間をグローバルに接続し、プロセッサパスの切り替えを制御する。
【０１３７】
ＣＬ＃１，＃２において、ミックスＰＫ＃１，＃３（１００）は、ＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１、ファイバＩ/Ｆ-ＰＫ２１２、ＬＣＭ-ＰＫ２１５、ＭＰ-ＰＫ２１６を有する構成である。ＣＬ＃１において、ミックスＰＫ＃２（１００）は、２つのファイバＩ/Ｆ-ＰＫ２１２、２つのＭＰ-ＰＫ２１６を有する構成である。ＣＬ＃２において、ミックスＰＫ＃４（１００）は、ファイバＩ/Ｆ-ＰＫ２１２、ＳＣＳＩ-Ｉ/Ｆ-ＰＫ２１３、ＭＰ-ＰＫ２１６、１つの空きを有する構成である。
【０１３８】
動作ａ１は、あるミックスＰＫ１００でＩ/Ｆ-ＰＫ２１０による制御を行わせる際に、それとは別のミックスＰＫ１００に有するＭＰにより、ＰＳＷ１５３を介して、Ｉ/Ｆ-ＰＫ２１０におけるデータ転送制御を行う場合の制御接続を示す。例として、ＣＬ＃２のミックスＰＫ＃４（１００）でＳＣＳＩ-Ｉ/Ｆ-ＰＫ２１３によるＤＲＶ３０のＩ/Ｆ制御を行わせる際に、ＣＬ＃１のミックスＰＫ＃１（１００）に有するＭＰ-ＰＫ２１６のＭＰ２４０により、ＰＳＷ１５３を介してＳＣＳＩ-Ｉ/Ｆ-ＰＫ２１３の処理を制御する場合である。
【０１３９】
動作ａ２は、ミックスＰＫ１００内において、ＰＫ内のＭＰにより、同ＰＫ内のＩ/Ｆ-ＰＫの処理を制御する場合の制御接続を示す。例として、ミックスＰＫ＃２（１００）内のＭＰ-ＰＫ２１６のＭＰ２４０により、同ＰＫ内のファイバＩ/Ｆ-ＰＫ２１２のデータ転送制御を行う場合である。
【０１４０】
＜プロセッサ接続例（２）＞
図１６は、一実施の形態のディスクアレイ装置１として、ＤＫＣ１０におけるＭＰ間の相互接続及び制御用通信に係わる第２の構成例を示し、ＭＰ相互をダイレクトに接続した構成である。ＰＮ１５２として、各ミックスＰＫ１００のＬＮ１０３同士が、制御線でダイレクトに接続されている。他の構成は、図１５と同様である。本構成では、スイッチを経由しない分、高速に処理できる。
【０１４１】
動作ａ１は、あるミックスＰＫ１００でＩ/Ｆ-ＰＫ２１０による制御を行わせる際に、それとは別のミックスＰＫ１００に有するＭＰにより、ＭＰ間の接続線を介して、Ｉ/Ｆ-ＰＫ２１０におけるデータ転送制御を行う場合の制御接続を示す。例として、ＣＬ＃２のミックスＰＫ＃４（１００）でＳＣＳＩ-Ｉ/Ｆ-ＰＫ２１３によるＤＲＶ３０のＩ/Ｆ制御を行わせる際に、ＣＬ＃１のミックスＰＫ＃１（１００）に有するＭＰ-ＰＫ２１６のＭＰ２４０により、ＭＰ間の制御線を介してＳＣＳＩ-Ｉ/Ｆ-ＰＫ２１３の処理を制御する場合である。
【０１４２】
＜プロセッサ接続例（３）＞
図１７は、一実施の形態のディスクアレイ装置１として、ＤＫＣ１０におけるＭＰ間の相互接続及び制御用通信に係わる第３の構成例を示す。本構成は、ＰＮ１５２として、ＭＰ相互をＰＳＷ（プロセッサパス制御スイッチ）１５４で接続し、またＭＰ間の情報交換用に、ＰＳＷ１５４に接続されるメモリ１５５を持たせた構成である。各ミックスＰＫ１００のＬＮ１０３がＰＳＷ１５４に接続される。他の構成は、図１５と同様である。ＰＳＷ１５４は、ＰＳＷ１５３と同様に、ＭＰ間の接続を制御すると共に、メモリ１５５に対する読み書き等の制御が可能である。メモリ１５５は、ＭＰ間で共有される制御情報などの格納に使用される。なお、ＭＰ間で共有される制御情報などの格納には、このメモリ１５５に限らず、ＬＣＭまたはＧＣＭ１３０の領域を利用する形態としてもよい。
【０１４３】
動作ａ１は、あるミックスＰＫ１００でＩ/Ｆ-ＰＫ２１０による制御を行わせる際に、それとは別のミックスＰＫ１００に有するＭＰにより、ＰＳＷ１５４を介して、Ｉ/Ｆ-ＰＫ２１０におけるデータ転送制御を行う場合の制御接続を示す。例として、ＣＬ＃１のミックスＰＫ＃１（１００）でファイバＩ/Ｆ-ＰＫ２１２によるＩ/Ｆ制御を行わせる際に、ＣＬ＃１のミックスＰＫ＃２（１００）に有するＭＰ-ＰＫ２１６のＭＰ２４０により、ＰＳＷ１５４を介してファイバＩ/Ｆ-ＰＫ２１２の処理を制御する場合である。
【０１４４】
動作ａ２は、ＰＮ１５２であるＰＳＷ１５４でメモリ１５５に制御情報読み書きのためにアクセスする場合の接続を示す。例えば、ＣＬ＃２の第１のミックスＰＫ＃３（１００）内のＭＰ-ＰＫ２１６のＭＰ２４０が、ＰＳＷ１５４を介してメモリ１５５にアクセスして、ＭＰ間通信用の制御情報を読み書きする。
【０１４５】
＜データ転送処理例（１）：三重ライト処理＞
図１８は、前述したディスクアレイ装置１におけるデータ転送処理例を示す。第１の処理例として、ディスクアレイ装置１が、外部ディスク制御装置８０に接続されたＤＲＶ３０からデータをリードする動作において、特にデータの三重ライト処理を行う場合について説明する。ここで前提となる構成は、前記図１２と同様である。
【０１４６】
動作ａ０は、ＣＬ＃１のミックスＰＫ＃２（１００）において、外部ディスク制御装置８０が接続されるポートを有するＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１が、外部ディスク制御装置８０のＤＲＶ３０からデータを読み出して自ＰＫ内のバッファ２５１に記憶し、ＤＳＷ１５１に転送するまでの流れを示す。動作ａ０の次に繋がる動作として例えば動作ａ１〜ａ３がある。
【０１４７】
動作ａ１は、前記ミックスＰＫ＃２（１００）のＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１が、バッファ２５１からＤＳＷ１５１を介してＧＣＭ１３０にデータをライトする流れを示す。ＧＣＭ１３０にデータをキャッシュデータとして配置することにより、他ミックスＰＫ１００からのアクセス時にＧＣＭ１３０を用いてキャッシュヒット率が高くなる。
【０１４８】
動作ａ２は、前記ＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１が、ホスト５０に接続しているミックスＰＫ＃１（１００）内のＬＣＭに、リードデータをライトする流れを示す。ホスト５０とのファイバＩ/Ｆ-ＰＫ２１２と同一ミックスＰＫ１００内のＬＣＭにデータをキャッシュデータとして配置することにより、ミックスＰＫ１００内でのキャッシュヒット率が高くなる。
【０１４９】
動作ａ３は、前記ＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１が、直接ホスト５０側にデータ転送する流れを示す。ホスト５０とのファイバＩ/Ｆ-ＰＫ２１２へリードデータを転送し、ファイバＩ/Ｆ-ＰＫ２１２によりホスト５０へデータ転送する。この場合、ＣＭ（ＧＣＭ１３０及びＬＣＭ）を経由しない分、高速にデータを転送できる。
【０１５０】
前記動作ａ０について、特に前記ａ１〜ａ３の動作を同時並行的または順に実行する三重ライト動作が可能であり、それによりＧＣＭ１３０及びＬＣＭにキャッシュデータを配置することで、総合的な入出力性能の向上を図れる。また前記動作ａ１〜ａ３を状況に応じて選択的に実行することで入出力性能を高めることも可能である。
【０１５１】
＜データ転送処理例（２）：先読み処理＞
前記図１８において、第２の処理例として、ディスクアレイ装置１が、外部ディスク制御装置８０に接続されたＤＲＶ３０からデータをリードする動作において、特に先読み処理を行う場合について説明する。本先読み処理は、ＤＫＣ１０内で、特にＣＭを含む各部の接続構成及びそれらにおけるデータ配置に応じて、今後のデータ転送に備える等の目的で、あらかじめＣＭ間でデータを一方から他方へと先に読み込んで格納しておく処理、すなわちＤＫＣ１０内でデータを再配置する処理である。
【０１５２】
ＤＫＣ１０で、例えば、他装置からのデータ入出力要求に応じた通常のデータ転送処理の前後や遊休状態の時に、本先読み処理を、プロセッサ及びＩ/Ｆ-ＰＫ２１０等によるＣＭの制御を通じてＣＭ間で実行しておく。その後に通常のデータ転送処理が発生すると、前記先読み処理しておいたデータを利用して処理する。他装置からの入出力要求を受領したＩ/Ｆ-ＰＫ２１０は、自身からできる限り近い位置にあるＣＭ上にある前記再配置されているデータを利用して読み書き等を行い、他装置に対し応答する処理を行う。
【０１５３】
ＤＫＣ１０は、本先読み処理で、機能ＰＫ１０２を含む各ＰＫと、ＧＣＭ１３０及びＬＣＭを含む各ＣＭ等の部位と、ＤＫＣ１０に接続されているホスト５０やＤＲＶ３０等の他装置とを含んだ接続構成及びそれらにおけるデータ配置や入出力関係などを考慮しながら、前記再配置の対象データや位置などを判断する。本処理で、一方のＣＭ上に過去のデータ転送処理等により格納されているデータを、前記考慮に基づき効果的な位置にあると判断される他方のＣＭ上へと読み込んでおく。前記接続構成やデータ配置等は、例えばプロセッサが共有メモリ上の構成情報やディレクトリ情報等により認識できる。
【０１５４】
前記効果的な位置にあるＣＭとは、例えば、データ転送処理における転送元や転送先の他装置と接続するポートを有するＩ/Ｆ-ＰＫ２１０と同一ミックスＰＫ１００内にあるＬＣＭや、ミックスＰＫ１００間での処理が予想される場合のＧＣＭ１３０などである。
【０１５５】
本先読み処理が行われる場合の例を以下で説明する。（１）まず、ＤＫＣ１０とその外部との間で、通常の第１のデータ転送処理が行われる。例えば、ホスト５０からのリード要求に従ってＤＫＣ１０が外部ディスク制御装置８０に接続されているＤＲＶ３０からデータ（以下、リードデータと称する）を読み出してホスト５０へ送信する処理が行われる。この際、ＤＫＣ１０内の少なくともいずれかのＣＭには前記リードデータがキャッシュされることになる。（２）次に、先読み処理が行われる。例えば、ミックスＰＫ＃３，＃４（１００）内の各ＬＣＭ（それぞれＬＣＭ＃３，＃４とする）及びＧＣＭ１３０の間で、前記考慮に従って効果的となるように前記リードデータが再配置される。（３）次に、通常の第２のデータ転送処理が行われる。例えば、前記第１のデータ転送処理と同様にホスト５０からのリード要求が発生したとする。この際、ＤＫＣ１０では、前記先読み処理しておいたデータを利用して、レスポンスが早くなるように処理を図る。他の外部装置やＤＲＶ３０との入出力の場合も同様に先読み処理が可能である。
【０１５６】
図１８で、動作ａ４は、ＣＬ＃２のミックスＰＫ＃４（１００）において、外部ディスク制御装置８０が接続されるポートを有するＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１が、外部ディスク制御装置８０のＤＲＶ３０からデータを読み出して、自ＰＫ内のバッファ２５１に記憶するまでの流れを示す。動作ａ４の次に繋がる動作として例えば動作ａ５〜ａ１０がある。
【０１５７】
動作ａ５は、前記ミックスＰＫ＃４（１００）のＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１が、バッファ２５１からＬＮ１０３及びＤＳＷ１５１を介してＧＣＭ１３０にデータをライトする流れを示す。動作ａ６は、前記ＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１が、ＬＮ１０３を介してＬＣＭ＃４にデータをライトする流れを示す。動作ａ７は、ミックスＰＫ＃４（１００）内のＬＣＭ＃４またはＧＣＭ１３０から、ホスト５０を接続しているミックスＰＫ＃３（１００）内のＬＣＭ＃３へ、データをライトする流れを示す。動作ａ８は、ミックスＰＫ＃４（１００）内のＬＣＭ＃４またはＧＣＭ１３０から、データを、ホスト５０を接続しているミックスＰＫ＃３（１００）内のファイバＩ/Ｆ-ＰＫ２１２を介して、ホスト５０に送信する流れを示す。動作ａ９は、前記ホスト５０を接続しているファイバＩ/Ｆ-ＰＫ２１２が、同ミックスＰＫ１００内のＬＣＭ＃４に格納されているデータをホスト５０へ送信する流れを示す。動作ａ１０は、ＧＣＭ１３０から、ミックスＰＫ＃４（１００）内のＬＣＭ＃４へ、データをライトする流れを示す。
【０１５８】
前記（１）〜（３）の例における詳細動作を以下に示す。まず前記（１）で、例えば、ミックスＰＫ＃３（１００）のファイバＩ/Ｆ-ＰＫ２１２が、ホスト５０からデータリード要求を受領する。当該要求のリード対象データが、ミックスＰＫ＃４（１００）のＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１に接続されている先の外部ディスク制御装置８０に接続されているＤＲＶ３０にあるものとする。ミックスＰＫ＃４（１００）のＥＳＣＯＮ-Ｉ/Ｆ-ＰＫ２１１が、前記ＤＲＶ３０からデータをリードし（動作ａ４）、いずれかの転送先にライトする。本例では前記図１２の動作ａ６に示すようにベースＰＫ１０１間の転送が必要なのでＧＣＭ１３０にリードデータを転送し格納するものとする（動作ａ５）。なおこの際、前述したように当該リードデータを同ミックスＰＫ１００内のＬＣＭ＃４にキャッシュすること（動作ａ６）、また前記ＧＣＭ１３０とＬＣＭ＃４の双方への二重ライト処理（動作ａ５，ａ６）も可能である。次に、前記ミックスＰＫ＃３（１００）のファイバＩ/Ｆ-ＰＫ２１２は、ＧＣＭ１３０（またはＬＣＭ＃４）からデータをリードして、ホスト５０へ送信する（動作ａ８）。なおこの際、前述したように当該リードデータを同ミックスＰＫ１００内のＬＣＭ＃３にキャッシュすること（動作ａ７）も可能である。
【０１５９】
次に、前記（２）で、ＤＫＣ１０は、前記接続構成等の考慮に従い、本例ではＧＣＭ１３０，ＬＣＭ＃３，＃４の３つのＣＭ間で、先読み動作を実行する。例えば下記第１〜第６の先読み動作を状況に応じて実行可能である。
【０１６０】
第１の先読み動作として、ＧＣＭ１３０に格納されている前記リードデータを、コピーや移動により、ＬＣＭ＃４に格納する（動作ａ１０）。この動作で、外部ディスク制御装置８０側に近い位置のＬＣＭ＃４にデータを格納しておくことで、特に今後の外部ディスク制御装置８０との入出力の際に当該データを利用でき当該データについての入出力のレスポンスが早くなり性能を向上できる。例えばミックスＰＫ＃４（１００）と外部ディスク制御装置８０のＤＲＶ３０との入出力が遅い場合にＬＣＭ＃４へ入出力データを集めておくようにする。
【０１６１】
また、第２の先読み動作として、前記動作ａ５でＧＣＭ１３０にデータを格納しておらず動作ａ６でＬＣＭ＃４に格納している場合等において、動作ａ１０と逆の流れの動作により、ＬＣＭ＃４からＧＣＭ１３０へ前記リードデータをコピーや移動することが可能である。この動作で、各ミックスＰＫ１００に近い位置のＧＣＭ１３０にデータを格納しておくことで、他のミックスＰＫ＃１，＃２（１００）からの前記リードデータへのアクセスが予想される場合等にも当該データを利用しやすくキャッシュヒット率が高くなる。同様にＣＬ＃１，＃２間のＬＣＭ間で一方から反対側や遠方のＬＣＭへとデータをコピーしておくこと等も可能である。
【０１６２】
また、第３の先読み動作として、前記動作ａ６等が行われている場合など、前記ＬＣＭ＃４に前記リードデータがありＬＣＭ＃３にない場合において、ミックスＰＫ＃４，＃３（１００）間でＬＣＭ＃４からＬＣＭ＃３へ前記リードデータをコピーや移動することが可能である（動作ａ７）。この動作で、ホスト５０側に近い位置のＬＣＭ＃３にデータを格納しておくことで、特に今後のホスト５０との入出力の際に当該データを利用でき当該データについての入出力のレスポンスが早くなり性能を向上できる。例えば異種のＩ/Ｆ-ＰＫ２１１，２１２を介した入出力処理において一方のＬＣＭ＃４へデータをキャッシュするだけでなく他方のＬＣＭ＃３へもキャッシュしておく。
【０１６３】
また、第４の先読み動作として、前記ＬＣＭ＃３に前記リードデータがありＬＣＭ＃４にない場合において、前記動作ａ７と逆の流れの動作で、ＬＣＭ＃３からＬＣＭ＃４へ前記リードデータをコピーや移動する。この動作で、前記第１の先読み動作と同様の効果を得る。
【０１６４】
また、第５の先読み動作として、ＬＣＭ＃３に前記リードデータがない場合において、ＧＣＭ１３０からＬＣＭ＃３へ前記リードデータをコピーや移動する（動作ａ７）。この動作で、前記第３の先読み動作と同様の効果を得る。
【０１６５】
また同様に、第６の先読み動作として、前記ＬＣＭ＃３に前記リードデータがありＧＣＭ１３０にない場合において、前記動作ａ７と逆の流れの動作で、ＬＣＭ＃３からＧＣＭ１３０へ前記リードデータをコピーや移動する。この動作で、前記第２の先読み動作と同様の効果を得る。
【０１６６】
次に、前記（３）で、例えば、ホスト５０からの前記（１）と同様のデータリード要求を、ミックスＰＫ＃３（１００）のファイバＩ/Ｆ-ＰＫ２１２で受領する。当該要求に応じて、ファイバＩ/Ｆ-ＰＫ２１２は、自身から一番近い位置にある同ミックスＰＫ１００内のＬＣＭ＃３にアクセスし、前記先読みされているリードデータを利用して、要求データをホスト５０へ送信する（動作ａ９）。従ってホスト５０へのレスポンスを早くできる。ＬＣＭ＃３に先読みされていなかった場合は、前記ＧＣＭ１３０やＬＣＭ＃４から該当データをリードして処理することになる（動作ａ８）。以上のようにＣＭ間でデータを再配置しておくことで、その後に発生したデータ転送処理で前記再配置済みのデータを利用して効率的な処理が可能である。
【０１６７】
＜効果＞
以上説明した実施の形態により、以下の効果を得られる。（１）ベースＰＫ１０１と機能ＰＫ１０２の組み合わせにより、１つの制御ＰＫ（ミックスＰＫ）１００内で様々な特徴的な構成を組むことが可能である。そのため、ユーザのシステムや要求に応じて、Ｉ/Ｆポートの種類や数、ローカルキャッシュメモリ量、プロセッサ数などを可変でき、ディスクアレイ装置１のスケーラビリティを向上できる。例えば、異種Ｉ/Ｆを１つのＰＫ内に統合して処理できる。例えば、ＰＫ内でメモリＰＫを搭載した構成でそのメモリをＬＣＭとして使用することで、データ転送性能を向上できる。例えば、ＰＫ内でチャネルＩ/ＦとドライブＩ/ＦのＰＫを搭載した構成で、チャネル側とドライブ側とを含んだ一連の処理を効率的に処理できる。例えば、ＰＫ内でプロセッサＰＫを増設した構成で、処理性能の向上が図れる。
【０１６８】
（２）Ｉ/Ｆ-ＰＫ２１０等の機能ＰＫ１０２及びベースＰＫ１０１を活線挿抜に対応した形式とすることで、ディスクアレイ装置１のシステムの稼動中でも、Ｉ/Ｆポートやメモリやプロセッサ等のそれぞれを柔軟に増減でき、ＰＫの増減設・交換や故障時にもシステムへの影響を少なくして、保守性や信頼性を向上できる。
【０１６９】
（３）外部ディスク制御装置８０との接続時など、異種Ｉ/Ｆ間でのデータ転送時にも、同一ミックスＰＫ１００内で転送処理できることにより、そのデータ転送性能の向上が実現できる。
【０１７０】
本発明のその他の実施の形態として、制御ＰＫ１００をベースＰＫ１０１と機能ＰＫ１０２の階層的接続構成とするのではなく、１つの制御ＰＫ１００内に、異種Ｉ/Ｆの機能の処理部（機能ＰＫ１０２に相当する部位）を一体的に実装した異種Ｉ/Ｆ混在型の１つの統合ＰＫとして提供する。前述した各構成例に対応して、異種Ｉ/Ｆ等の組み合わせを固定化して統合ＰＫとして提供し、これを前述の実施の形態と同様に接続してＤＫＣ１０を構成する。本構成は、前記機能ＰＫ１０２の挿抜無しで固定化した構成に相当する。統合ＰＫ内でＬＮ１０３を介して異種Ｉ/Ｆ間及び他ＰＫと通信処理する。本形態の場合も、１つの統合ＰＫ内で異種Ｉ/Ｆ間の通信処理が完了でき、前述したミックスＰＫ１００と同様の効果を得ることができる。
【０１７１】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
【産業上の利用可能性】
【０１７２】
本発明は、外部装置とのＩ/Ｆ処理機能を有する記憶制御装置などの情報処理装置に利用可能である。
【図面の簡単な説明】
【０１７３】
【図１】本発明の一実施の形態におけるディスクアレイ装置の全体のハードウェア外観構成を示す斜視図である。
【図２】本発明の一実施の形態におけるディスクアレイ装置を含んで構成される情報処理システムの全体の構成を示すブロック図である。
【図３】（ａ）〜（ｃ）は、本発明の一実施の形態のディスクアレイ装置における、ベースＰＫの構成例を示す図である。
【図４】（ａ）〜（ｃ）は、本発明の一実施の形態のディスクアレイ装置における、機能ＰＫの構成例を示す図である。
【図５】本発明の一実施の形態のディスクアレイ装置における、ミックスＰＫの構成例及びＰＫ挿抜について示す説明図である。
【図６】（ａ），（ｂ）は、本発明の一実施の形態のディスクアレイ装置における、ＰＫ接続の構成例として、ＤＫＣボックスにおけるＰＫ装着脱の構成について示す図である。
【図７】本発明の一実施の形態のディスクアレイ装置における、ＤＫＣにミックスＰＫを組み込む場合のミックスＰＫの構成例を示すブロック図である。
【図８】本発明の一実施の形態のディスクアレイ装置における、ＰＫ組み合わせによるＤＫＣの第１の構成例とそのデータ転送動作例を示すブロック図である。
【図９】本発明の一実施の形態のディスクアレイ装置における、ＰＫ組み合わせによるＤＫＣの第２の構成例とそのデータ転送動作例を示すブロック図である。
【図１０】本発明の一実施の形態のディスクアレイ装置における、ＰＫ保守交換例として、（ａ）は、機能ＰＫの増設と障害発生時の交換の例を示し、（ｂ）は、ベースＰＫ／ミックスＰＫの障害発生時の交換の例を示す説明図である。
【図１１】本発明の一実施の形態のディスクアレイ装置における、外部ディスク制御装置を通信接続した場合の第１の構成例を示すブロック図である。
【図１２】本発明の一実施の形態のディスクアレイ装置における、外部ディスク制御装置を通信接続した場合の第２の構成例を示すブロック図である。
【図１３】本発明の一実施の形態のディスクアレイ装置における、外部ディスク制御装置が接続されている場合におけるデータ転送処理の第１のフローとしてデータライト処理を示すフロー図である。
【図１４】本発明の一実施の形態のディスクアレイ装置における、外部ディスク制御装置が接続されている場合におけるデータ転送処理の第２のフローとしてデータリード処理を示すフロー図である。
【図１５】本発明の一実施の形態のディスクアレイ装置として、ＤＫＣにおけるＭＰ間の相互接続及び制御用通信に係わる第１の構成例を示すブロック図である。
【図１６】本発明の一実施の形態のディスクアレイ装置として、ＤＫＣにおけるＭＰ間の相互接続及び制御用通信に係わる第２の構成例を示すブロック図である。
【図１７】本発明の一実施の形態のディスクアレイ装置として、ＤＫＣにおけるＭＰ間の相互接続及び制御用通信に係わる第３の構成例を示すブロック図である。
【図１８】本発明の一実施の形態のディスクアレイ装置における、データ転送処理例として、第１の処理例として三重ライト処理と第２の処理例として先読み処理とを示すブロック図である。
【図１９】従来のディスクアレイ装置におけるＤＫＣの構成例を示し、特に外部ディスク制御装置との接続構成及びデータ転送動作についても示すブロック図である。
【符号の説明】
【０１７４】
１，９０１…ディスクアレイ装置、１０，９１０…ＤＫＣ、３０…ＨＤＤ、５０…ホスト、７０…ネットワーク、８０…外部ディスク制御装置、９０…バックプレーンボード、１００…制御ＰＫ／ミックスＰＫ、１０１…ベースＰＫ、１０２…機能ＰＫ、１０３…ＬＮ（ＰＫ内相互接続網）、１０４…ＭＰ、１０５，１０６…コネクタ、１０７…ＬＥＤ、１０８…ＬＤＳＷ、１０９…ＬＰＮ、１３０…ＧＣＭ（グローバルキャッシュメモリ）、１５１…ＤＳＷ（データパス制御スイッチ）、１５２…ＰＮ（プロセッサ相互接続網）、１５３，１５４…ＰＳＷ、１５５…メモリ、１９０…ＬＡＮ、１９１…バッテリ、１９２…ＡＣボックス、１９３…ＡＣ−ＤＣ電源、１９４…ＤＫＣボックス、１９５，１９９…ファン、１９６…ＳＶＰ、１９７…パネル、１９８…ＨＤＤボックス、２１０…Ｉ/Ｆ-ＰＫ、２１５…ＬＣＭ-ＰＫ、２１６…ＭＰ-ＰＫ、２２１…チャネルアダプタ、２２２…プロトコルアダプタ、２２３，２２４…コネクタ、２２５…キャッシュアダプタ、２２７…ＬＥＤ、２３０…メモリ、２４０…ＭＰ、２５０…ＤＭＡＣ、２５１…バッファ、２５２…レジスタ、３００…ＤＫＵ、９１１…ＣＨＡ-ＰＫ、９１２…ＤＫＡ-ＰＫ、９１３…ＣＭ-ＰＫ、９１４…ＣＳＷ-ＰＫ、９２０，９２３…ＭＰ、９２１，９２４…ＤＴＡ（データ転送制御部）、９２６…ＣＭＡ（キャッシュメモリアダプタ）、９２７…メモリ、９２８…ＣＡＲＢ（キャッシュ調停回路）。
【図１】
2006244340.tif 000003
【図２】
2006244340.tif 000004
【図３】
2006244340.tif 000005
【図４】
2006244340.tif 000006
【図５】
2006244340.tif 000007
【図６】
2006244340.tif 000008
【図７】
2006244340.tif 000009
【図８】
2006244340.tif 000010
【図９】
2006244340.tif 000011
【図１０】
2006244340.tif 000012
【図１１】
2006244340.tif 000013
【図１２】
2006244340.tif 000014
【図１３】
2006244340.tif 000015
【図１４】
2006244340.tif 000016
【図１５】
2006244340.tif 000017
【図１６】
2006244340.tif 000018
【図１７】
2006244340.tif 000019
【図１８】
2006244340.tif 000020
【図１９】
2006244340.tif 000021