(57)【要約】【課題】本発明の記憶制御装置は、アクセスされていない筐体への通電を停止することにより、電力消費量を低減させる。【解決手段】基本筐体１には、複数の増設筐体２がデイジーチェーン接続される。各増設筐体２は、基本筐体１からの接続上の距離に応じて、低利用頻度層、中利用頻度層、高利用頻度層の３つの階層に分けられる。所定時間以上アクセスされていないドライブ２Ｂは、スピンダウンされる。筐体内の全ドライブがスピンダウン状態になると、電源２Ｃから各ドライブ２Ｂへの電源供給が停止される。そして、自分自身よりも下位側に位置する増設筐体２への通電が停止されている場合、スイッチ３Ａがオフされて、増設筐体への通電が停止される。【選択図】図１
2008090352.tif 000002
【特許請求の範囲】
【請求項１】
複数の筐体を備えた記憶制御装置であって、
前記各筐体のうちいずれか１つの筐体は、上位装置との間のデータ通信及び他の筐体の動作を制御するための第１筐体となっており、
前記各筐体のうち前記第１筐体以外の他の筐体は、それぞれ複数の記憶デバイスを備える第２筐体となっており、
前記第１筐体は、記憶制御装置の構成及び電源供給状態を管理するためのシステム構成情報を保持しており、このシステム構成情報に基づいて、前記第２筐体毎にそれぞれ個別に電源の供給または停止を制御する記憶制御装置。
【請求項２】
前記第１筐体は、前記各記憶デバイスのうち、予め設定された所定時間以上のアクセスが無い記憶デバイスについては、電力消費を抑制させる節電モードに移行させる請求項１に記載の記憶制御装置。
【請求項３】
前記第１筐体は、前記各第２筐体のうち、筐体内の全ての記憶デバイスが前記節電モードに移行している所定の第２筐体が検出された場合には、当該所定の第２筐体内の全ての前記記憶デバイスへの電源供給を停止させる請求項２に記載の記憶制御装置。
【請求項４】
前記第１筐体は、前記各第２筐体のうち、筐体内の全ての記憶デバイスが前記節電モードに移行している所定の第２筐体が検出された場合には、当該所定の第２筐体への電源供給を停止させる請求項２に記載の記憶制御装置。
【請求項５】
前記第１筐体は、前記所定の第２筐体内の全ての前記記憶デバイスへの電源供給を停止させた後で、前記所定の第２筐体への電源供給を停止させる請求項３に記載の記憶制御装置。
【請求項６】
前記第１筐体と前記各第２筐体とは、デイジーチェーン接続されており、
前記第１筐体は、前記所定の第２筐体内の全ての前記記憶デバイスへの電源供給を停止させた後で、前記所定の第２筐体よりも後段に位置する他の第２筐体への電源供給が停止されていると判定された場合、または、前記所定の第２筐体が接続上の末端に位置すると判定された場合のいずれかの場合に、前記第２筐体への電源供給を停止させる請求項３に記載の記憶制御装置。
【請求項７】
前記第１筐体は、前記上位装置による利用の頻度が予め設定された所定値以下のデータを、前記第１筐体から接続上の距離が遠い順番で、前記各第２筐体内の前記記憶デバイスに記憶させる請求項６に記載の記憶制御装置。
【請求項８】
前記各第２筐体のうち、前記第１筐体との接続上の距離が遠い第２筐体の各記憶デバイスには相対的に低性能の記憶デバイスがそれぞれ用いられており、前記第１筐体との接続上の距離が近い第２筐体の各記憶デバイスには相対的に高性能の記憶デバイスがそれぞれ用いられている請求項６に記載の記憶制御装置。
【請求項９】
前記第１筐体と前記各第２筐体とは、デイジーチェーン接続されており、
前記第１筐体は、前記所定の第２筐体内の全ての前記記憶デバイスへの電源供給を停止させた後で、前記所定の第２筐体に信号の伝達が求められている場合には、前記所定の第２筐体が信号を伝達するために必要な機能以外の他の機能への電源供給を停止させる請求項３に記載の記憶制御装置。
【請求項１０】
前記第１筐体は、電源供給がそれぞれ停止されている複数の前記第２筐体に電源を供給する場合には、これら複数の第２筐体に時間差をつけて電源を供給させる請求項１に記載の記憶制御装置。
【請求項１１】
前記第１筐体は、電源供給が停止されている前記第２筐体に、定期的にまたは不定期に電源を供給することにより、正常に動作するか否かを診断する請求項１に記載の記憶制御装置。
【請求項１２】
複数の筐体を備えた記憶制御装置であって、
第１筐体と、それぞれ複数の記憶デバイスを有する第２筐体と、前記第１筐体及び前記各第２筐体にそれぞれ外部電源を供給するための電源供給回路部とを備え、
前記第１筐体は、
前記記憶制御装置の構成及び電源供給状態に関するシステム構成情報を管理するシステム構成情報管理部と、
前記システム構成情報管理部により管理される前記システム構成情報に基づいて、前記各第２筐体への電源供給及び上位装置と前記各記憶デバイスとの間のデータ入出力を処理する第１制御部と、
前記電源供給回路部を介して供給される前記外部電源を所定の電圧に変換することにより、前記第１制御部に所定の電源を供給する第１筐体内電源部と、を少なくとも備え、
前記各第２筐体は、
前記上位装置により利用されるデータを記憶する複数の前記記憶デバイスと、
前記第１制御部からの指示に応じて、前記各記憶デバイスへのデータ入出力及び第２筐体電源部の動作を制御する第２制御部と、
前記電源供給回路部を介して供給される前記外部電源を所定の電圧に変換することにより、前記各記憶デバイス及び前記第２制御部に電源をそれぞれ供給する前記第２筐体内電源部と、を少なくとも備え、
前記電源供給回路部は、少なくとも前記各第２筐体内電源部と前記外部電源との間の電力供給経路の途中にそれぞれ設けられるスイッチ部を備え、該各スイッチ部は、前記第１制御部からの指示に応じて前記各電力供給経路をそれぞれ連通または遮断させるようになっており、
前記第１制御部は、前記システム構成情報に基づいて、前記各第２筐体のうち当該第２筐体内に存在する前記各記憶デバイスへのアクセスが不要であると判定された所定の第２筐体については、この所定の第２筐体に接続されている前記スイッチ部を動作させることにより、前記所定の第２筐体の前記第２筐体内電源部と前記外部電源との間の前記電力供給経路を遮断させる記憶制御装置。
【請求項１３】
前記第１筐体と前記各第２筐体とはデイジーチェーン接続されており、
前記第１制御部は、
（１）前記各記憶デバイスのうち、予め設定された所定時間以上のアクセスが無い記憶デバイスについては、電力消費を抑制させる節電モードに移行させる第１モードと、
（２）前記各第２筐体のうち、筐体内の全ての記憶デバイスが前記節電モードに移行している所定の第２筐体が検出された場合には、当該所定の第２筐体内の全ての前記記憶デバイスへの電源供給を停止させる第２モードと、
（３）前記所定の第２筐体内の全ての前記記憶デバイスへの電源供給を停止させた後で、前記所定の第２筐体への電源供給を停止させる第３モードとを、
それぞれ実行することができる請求項１に記載の記憶制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶制御装置に関する。
【背景技術】
【０００２】
記憶制御装置は、多数のハードディスクドライブをアレイ状に接続した記憶部を備えており、サーバ等のホストコンピュータ（以下「ホスト」）に、論理的な記憶領域（論理ボリューム）を提供する。信頼性等を高めるために、記憶制御装置では、RAID（Redundant Array of Independent Disks）に基づく冗長化された記憶領域をホストに提供する。
【０００３】
ところで、企業等で管理すべきデータは日々増大する。従って、データ量の増大に応じて、記憶容量を増加させることのできる記憶制御装置が好ましい。そこで、制御機能を司る基本筐体に、記憶領域を提供する増設筐体を複数個接続させることにより、ユーザの希望に応じた記憶領域を提供可能な記憶制御装置が提案されている（特許文献１）。
【０００４】
この第１文献に記載の従来技術では、基本筐体への電源供給の開始または停止と、各増設筐体への電源供給の開始または停止とを連動させる。これにより、記憶制御装置を完全に停止させる場合には、基本筐体への電源供給を停止させるだけで、各増設筐体への電源供給を全て自動的に停止させることができる。
【０００５】
第２文献に記載の他の従来技術では、RAIDグループを構成する各磁気ディスク装置を節電モードに移行させるようになっている（特許文献２）。
【特許文献１】特開２００１−３３９８５３号公報
【特許文献２】特開２０００−２９３３１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
前記第１文献に記載の従来技術では、基本筐体への電源供給動作と各増設筐体の電源供給動作とを連動させるだけのものであり、記憶制御装置の電力消費量を低減させるという観点からは効果が乏しい。
【０００７】
これに対し、前記第２文献に記載の従来技術では、一定期間アクセスされない磁気ディスク装置を節電モードに移行させるため、記憶制御装置の電力消費量を低減させることができる。
【０００８】
しかし、第２文献に記載の従来技術では、RAIDグループを構成する各磁気ディスク装置の電力消費量を節減するに留まり、さらなる改善の余地がある。即ち、各磁気ディスク装置が節電モードに移行した場合でも、筐体内の制御回路部や冷却ファン、電源回路には電源が供給されており、稼働を続けている。従って、磁気ディスク装置以外の各部における電力消費量について改善の余地がある。
【０００９】
本発明は、上記の問題点に鑑みてなされたもので、その目的は、筐体単位で電源の供給及び停止を行うことにより、より一層電力消費量を低減できるようにした記憶制御装置を提供することにある。本発明の他の目的は、各筐体がデイジーチェーン接続されている場合に、信号伝達の機能を維持しながら、筐体単位での省電力を実現することができるようにした記憶制御装置を提供することにある。本発明のさらなる目的は、後述する実施形態の記載から明らかになるであろう。
【課題を解決するための手段】
【００１０】
上記課題を解決すべく、本発明の一つの観点に従う、複数の筐体を備えた記憶制御装置では、各筐体のうちいずれか１つの筐体は、上位装置との間のデータ通信及び他の筐体の動作を制御するための第１筐体となっており、各筐体のうち第１筐体以外の他の筐体は、それぞれ複数の記憶デバイスを備える第２筐体となっている。そして、第１筐体は、記憶制御装置の構成及び電源供給状態を管理するためのシステム構成情報を保持しており、このシステム構成情報に基づいて、第２筐体毎にそれぞれ個別に電源の供給または停止を制御する。
【００１１】
第１筐体は、各記憶デバイスのうち、予め設定された所定時間以上のアクセスが無い記憶デバイスについては、電力消費を抑制させる節電モードに移行させてもよい。
【００１２】
第１筐体は、各第２筐体のうち、筐体内の全ての記憶デバイスが節電モードに移行している所定の第２筐体が検出された場合には、当該所定の第２筐体内の全ての記憶デバイスへの電源供給を停止させてもよい。
【００１３】
第１筐体は、各第２筐体のうち、筐体内の全ての記憶デバイスが節電モードに移行している所定の第２筐体が検出された場合には、当該所定の第２筐体への電源供給を停止させてもよい。
【００１４】
第１筐体は、所定の第２筐体内の全ての記憶デバイスへの電源供給を停止させた後で、所定の第２筐体への電源供給を停止させてもよい。
【００１５】
本発明の実施形態では、第１筐体と各第２筐体とは、デイジーチェーン接続されており、第１筐体は、所定の第２筐体内の全ての記憶デバイスへの電源供給を停止させた後で、所定の第２筐体よりも後段に位置する他の第２筐体への電源供給が停止されていると判定された場合、または、所定の第２筐体が接続上の末端に位置すると判定された場合のいずれかの場合に、第２筐体への電源供給を停止させる。
【００１６】
第１筐体は、上位装置による利用の頻度が予め設定された所定値以下のデータを、第１筐体から接続上の距離が遠い順番で、各第２筐体内の記憶デバイスに記憶させることもできる。
【００１７】
各第２筐体のうち、第１筐体との接続上の距離が遠い第２筐体の各記憶デバイスには相対的に低性能の記憶デバイスをそれぞれ用い、第１筐体との接続上の距離が近い第２筐体の各記憶デバイスには相対的に高性能の記憶デバイスをそれぞれ用いてもよい。
【００１８】
本発明の実施形態では、第１筐体と各第２筐体とは、デイジーチェーン接続されており、第１筐体は、所定の第２筐体内の全ての記憶デバイスへの電源供給を停止させた後で、所定の第２筐体に信号の伝達が求められている場合には、所定の第２筐体が信号を伝達するために必要な機能以外の他の機能への電源供給を停止させる。
【００１９】
第１筐体は、電源供給がそれぞれ停止されている複数の第２筐体に電源を供給する場合には、これら複数の第２筐体に時間差をつけて電源を供給させる。
【００２０】
第１筐体は、電源供給が停止されている第２筐体に、定期的にまたは不定期に電源を供給することにより、正常に動作するか否かを診断してもよい。
【００２１】
本発明の他の観点に従う、複数の筐体を備えた記憶制御装置は、第１筐体と、それぞれ複数の記憶デバイスを有する第２筐体と、第１筐体及び各第２筐体にそれぞれ外部電源を供給するための電源供給回路部とを備える。第１筐体は、記憶制御装置の構成及び電源供給状態に関するシステム構成情報を管理するシステム構成情報管理部と、システム構成情報管理部により管理されるシステム構成情報に基づいて、各第２筐体への電源供給及び上位装置と各記憶デバイスとの間のデータ入出力を処理する第１制御部と、電源供給回路部を介して供給される外部電源を所定の電圧に変換することにより、第１制御部に所定の電源を供給する第１筐体内電源部と、を少なくとも備える。各第２筐体は、上位装置により利用されるデータを記憶する複数の記憶デバイスと、第１制御部からの指示に応じて、各記憶デバイスへのデータ入出力及び第２筐体電源部の動作を制御する第２制御部と、電源供給回路部を介して供給される外部電源を所定の電圧に変換することにより、各記憶デバイス及び第２制御部に電源をそれぞれ供給する第２筐体内電源部と、を少なくとも備える。電源供給回路部は、少なくとも各第２筐体内電源部と外部電源との間の電力供給経路の途中にそれぞれ設けられるスイッチ部を備え、該各スイッチ部は、第１制御部からの指示に応じて各電力供給経路をそれぞれ連通または遮断させる。第１制御部は、システム構成情報に基づいて、各第２筐体のうち当該第２筐体内に存在する各記憶デバイスへのアクセスが不要であると判定された所定の第２筐体については、この所定の第２筐体に接続されているスイッチ部を動作させることにより、所定の第２筐体の第２筐体内電源部と外部電源との間の電力供給経路を遮断させる。
【００２２】
本発明の実施形態では、第１筐体と各第２筐体とはデイジーチェーン接続されており、第１制御部は、（１）各記憶デバイスのうち、予め設定された所定時間以上のアクセスが無い記憶デバイスについては、電力消費を抑制させる節電モードに移行させる第１モードと、（２）各第２筐体のうち、筐体内の全ての記憶デバイスが節電モードに移行している所定の第２筐体が検出された場合には、当該所定の第２筐体内の全ての記憶デバイスへの電源供給を停止させる第２モードと、（３）所定の第２筐体内の全ての記憶デバイスへの電源供給を停止させた後で、所定の第２筐体への電源供給を停止させる第３モードとを、それぞれ実行することができる。
【発明を実施するための最良の形態】
【００２３】
以下、図面に基づき、本発明の実施の形態を説明する。図１は、本実施形態に係る記憶制御装置の全体概要を示す説明図である。
【００２４】
この記憶制御装置は、例えば、複数種類の筐体１，２を重ねて配置することにより、構成されている。１つの種類の筐体は、基本筐体１であり、他の１つの種類の筐体は、増設筐体２である。基本筐体１は第１筐体に該当し、増設筐体２は第２筐体に該当する。基本筐体１と各増設筐体２とは、デイジーチェーン接続されている。即ち、基本筐体１と各増設筐体２との間の信号やデータの伝達は、隣接する筐体を順番に介して行われる。
【００２５】
基本筐体１は、記憶制御装置全体の制御を司る筐体であり、上位装置としてのホスト４及び各増設筐体２と接続されている。基本筐体１は、ホスト４から発行されたコマンドに応じて、増設筐体２内のディスクドライブ２Ｂにアクセスし、データの読み書きを行う。
【００２６】
基本筐体１は、例えば、I/O処理部１Ａと、電源制御部１Ｂ及びシステム構成情報管理部１Ｃとを備えて構成される。なお、後述の実施例からも明らかなように、基本筐体１は、ディスクドライブを備えることもできる。
【００２７】
I/O処理部１Ａは、ホスト４から発行されたコマンドに基づいて、各増設筐体２内のディスクドライブ２Ｂにアクセスすることにより、データを書き込んだり、または、データを読み出したりする。
【００２８】
電源制御部１Ｂは、基本筐体１が有する制御機能の一つであり、各増設筐体２に関する電源の供給及び停止を制御する。電源制御部１Ｂは、複数種類の省電力モードＦ１〜Ｆ４をそれぞれのタイミングで実行させることができる。
【００２９】
ドライブ単体の省電力を実現させるモードＦ１では、例えば、一定時間アクセスされないディスクドライブ２Ｂのモータへの通電を停止させたり、電子回路の一部を停止させることにより、ドライブ毎の省電力を実現する。
【００３０】
全ドライブへの通電を停止させるモードＦ２では、同一筐体に設けられている全てのディスクドライブ２Ｂへの通電を停止させることにより、筐体内のディスクドライブ全体について省電力を実現する。
【００３１】
制御機能以外の通電停止モードＦ３では、例えば、増設筐体２に設けられている制御基板２Ａの実現する制御機能以外の他の機能への通電を停止させることにより、さらなる省電力を実現する。このモードＦ３では、増設筐体２の制御機能のみが維持され、他の機能は停止する。制御機能としては、例えば、基本筐体１からの指示を受領し、他の増設筐体２に伝達する機能を挙げることができる。モードＦ３では、これらの信号伝達機能を制御基板２Ａが部分的に作動させることが可能な場合、制御基板２Ａの回路のうち信号伝達機能を実現するために必要な回路以外の他の回路への通電を停止させることができる。また、モードＦ３では、例えば、制御基板２Ａの備える諸機能のうち、冷却ファン２Ｄの作動を制御する機能は、停止させることも可能である。しかし、例えば、冷却ファン２Ｄによる冷却機能の実現が、制御基板２Ａの正常な動作に好ましい場合、モードＦ３では、冷却ファン２Ｄへの通電を継続させることもできる。即ち、モードＦ３では、信号伝達機能及び該機能を支援する他の機能にのみ電源を供給し、それ以外の各機能への電源供給を停止させる。
【００３２】
筐体全体への通電を停止させるモードＦ４では、電源供給回路部３のスイッチ３Ａを開くことにより、外部電源５から増設筐体２への電源供給を停止させる。このモードＦ４では、増設筐体２の各機能は停止され、最も省電力効果が高くなる。
【００３３】
電源制御部１Ｂは、自己診断モードＦ５を備えている。自己診断モードＦ５では、筐体全体への通電が停止された増設筐体２に対して、定期的にまたは不定期に通電することにより、その増設筐体２が正常に動作するか否かを診断する。
【００３４】
電源制御部１Ｂは、データ再配置部Ｆ６を備えている。データ再配置部Ｆ６は、ホスト４からの利用状況に基づいて、各増設筐体２内の各ディスクドライブ２Ｂに記憶されているデータの記憶先を制御する。即ち、データ再配置部Ｆ６は、利用頻度の高いデータほど基本筐体１に近い増設筐体２内に位置し、利用頻度の高いデータほど基本筐体１に遠い増設筐体２に位置するように、データマイグレーションを実行する。ここで、基本筐体１に近い、または、遠いとは、デイジーチェーン接続された構成において、接続上の物理的な距離が近いか遠いかを意味する。
【００３５】
システム構成情報管理部１Ｃは、記憶制御装置のシステム構成に関する情報を記憶し、管理している。システム構成に関する情報としては、例えば、ディスクドライブ２Ｂの配置に関する情報、RAIDグループや論理ボリュームの構成に関する情報、増設筐体２と電源供給回路部３との接続構成に関する情報等を挙げることができる。本実施形態では、記憶制御装置に関する全ての構成情報を基本筐体１が一元的に管理する。電源制御部１Ｂは、システム構成情報を参照することにより、目的の増設筐体２への通電停止等を行う。
【００３６】
電源供給回路部３は、例えば、外部電源５からの交流電源を各筐体１，２にそれぞれ分配するための回路である。ここでは、基本筐体１への電源分配については省略しているが、後述の実施例から明らかなように、電源供給回路部３を介して、外部電源５と基本筐体１とは接続されている。
【００３７】
電源供給回路部３は、各増設筐体２と外部電源５とをそれぞれ接続するスイッチ３Ａを備えている。従って、目的の増設筐体２への電源供給を停止させる場合は、その増設筐体２に接続されたスイッチ３Ａを開く。これにより、外部電源５から目的の増設筐体２への電力供給経路が遮断される。
【００３８】
電源供給回路部３は、各筐体１，２と独立した回路基板として構成可能である。これに限らず、電源供給回路３を各筐体１，２内に設けることもできる。即ち、例えば、スイッチ３Ａを各増設筐体２内に設ける構成でもよい。
【００３９】
各増設筐体２は、例えば、制御基板２Ａと、複数のディスクドライブ２Ｂと、電源部２Ｃと、冷却ファン２Ｄとを備えて構成される。制御基板２Ａは、基本筐体１からの指示に基づいて、ディスクドライブ２Ｂへのデータ入出力を行う。また、制御基板２Ａは、基本筐体１からの指示を隣接する他の増設筐体２の制御基板２Ａに伝達する。
【００４０】
ディスクドライブ２Ｂは、記憶デバイスに該当する。ここでは、便宜上、ディスクドライブと呼ぶが、ディスク以外の媒体を用いる記憶デバイスでもよい。ディスクドライブ２Ｂとしては、例えば、ハードディスクドライブ、半導体メモリデバイス、フラッシュメモリデバイス、光ディスクドライブ、光磁気ディスクドライブ、磁気テープデバイス等を用いることができる。
【００４１】
電源部２Ｃは、筐体内電源部に該当する。筐体内電源部２Ｃは、例えば、外部電源５から電源供給回路部３を介して入力された交流電源を、所定の電圧を有する直流電源に変換し、制御基板２Ａ，各ディスクドライブ２Ｂ及び冷却ファン２Ｄにそれぞれ供給するものである。電源部２Ｃは、複数種類の電圧を出力可能である。また、外部電源５は、交流電源に限らず、直流電源であってもよい。後述の実施例から明らかとなるように、電源部２Ｃは、制御基板２Ａからの指示に応じて、各ディスクドライブ２Ｂへの通電を停止させることができるように構成することができる。
【００４２】
冷却ファン２Ｄは、増設筐体２内に冷却風を導いて冷却させるものである。冷却ファン２Ｄは、制御基板２Ａからの信号によって動作する。即ち、制御基板２Ａは、例えば、冷却ファン２Ｄの動作開始や動作停止、回転数を制御することができる。なお、空冷機構として冷却ファン２Ｄを挙げたが、増設筐体２は水冷機構を備える構成でもよい。水冷機構の場合は、例えば、冷却水循環ポンプや熱交換用ファンの動作を制御することにより、増設筐体２の電力消費量を節減する。
【００４３】
図１の右側に示すように、基本筐体１と接続上の距離が短い増設筐体２（＃１）には、ホスト４からの利用頻度が比較的高いデータが配置される。この増設筐体２（＃１）は、高利用頻度層を形成する。この高利用頻度層には、高信頼性ドライブが用いられる。高信頼性ドライブとは、例えば、FC（Fibre Channel）ディスク等のような高信頼性のディスクドライブである。高利用頻度層の増設筐体２（＃１）の各ディスクドライブ２Ｂは、利用頻度が高いため、モードＦ１またはＦ２が比較的多く使用されるであろう。
【００４４】
基本筐体１と接続上の距離が遠い増設筐体２（＃３，＃４）には、ホスト４からの利用頻度が比較的少ないデータが配置される。この増設筐体２（＃３，＃４）は、低利用頻度層を形成する。利用頻度の少ないデータとしては、例えば、アーカイブデータやバックアップデータ等を挙げることができる。この低利用頻度層には、低信頼性ドライブが用いられる。低信頼性ドライブとは、例えば、SATA（Serial AT Attachment）ディスク等のような低性能のディスクドライブである。低利用頻度層の増設筐体２（＃３，＃４）の各ディスクドライブ２Ｂは、利用頻度が少ないため、モードＦ３，Ｆ４が比較的多く使用されるであろう。
【００４５】
基本筐体１と接続上の距離が中程度に離れている増設筐体２（＃２）には、ホスト４からの利用頻度が中程度のデータが配置される。この増設筐体２（＃２）は、中利用頻度層を形成する。この中利用頻度層には、例えば、高信頼性ドライブまたは低信頼性ドライブのいずれか、または、中程度の信頼性を有するドライブが使用される。中利用頻度層の増設筐体２（＃２）は、ホスト４からの利用頻度が中程度であるため、モードＦ２，Ｆ３が比較的多く使用されるであろう。
【００４６】
本実施形態では、基本筐体１にデイジーチェーン接続される各増設筐体２を、低利用頻度層、中利用頻度層、高利用頻度層の３つの階層に分ける場合を例示した。これに限らず、低利用頻度層及び高利用頻度層の２つの階層に分ける構成でもよい。または、４つ以上の階層を設ける構成でもよい。
【００４７】
図１に示すように、増設筐体２（＃１）では、各部に電源が供給されている。増設筐体２（＃２）では、所定時間以上アクセスされていないディスクドライブ２Ｂについて、モードＦ１が適用されている。所定時間以上アクセスされていないディスクドライブ２Ｂでは、例えば、スピンドルモータの回転を停止または低下させたり、一部の電子回路を停止させる。
【００４８】
増設筐体２（＃３）では、モードＦ３が適用されている。即ち、制御基板２Ａ以外の各ディスクドライブ２Ｂ及び冷却ファン２Ｄへの通電がそれぞれ停止されている。増設筐体２（＃４）では、モードＦ４が適用されている。このモードでは、スイッチ３Ａ（４）が開いており、外部電源５と増設筐体２（＃４）との間の電力供給経路が遮断されるため、増設筐体２（＃４）への電源供給が停止される。
【００４９】
各筐体１，２はデイジーチェーン接続されている。従って、各筐体１，２間での信号伝達を維持するために、モードＦ４は、基本筐体１と接続上の距離が遠い増設筐体２から順番に適用される。モードＦ２またはモードＦ３のいずれかが適用されている増設筐体２は、モードＦ４に無条件で直ちに移行するわけではなく、後段の増設筐体２が機能を停止している場合（モードＦ４が適用されている場合）にのみ、モードＦ４に移行することができる。
【００５０】
本実施形態の記憶制御装置では、例えば、モードＦ１→モードＦ２→モードＦ３→モードＦ４のように、順番に遷移する。しかし、常に必ずしもこのように遷移するわけではなく、ホスト４からの利用状況に応じて、例えば、モードＦ３からモードＦ１へ、モードＦ２からモードＦ１に遷移する場合もある。
【００５１】
基本筐体１との接続上の距離が遠い増設筐体２（＃３，＃４）に利用頻度の低いデータを配置させることにより、これら接続上の距離の遠い増設筐体２（＃３，＃４）にモードＦ４が適用される可能性を高めることができる。この結果、増設筐体２（＃３，＃４）への電源供給を停止させて、記憶制御装置全体の電力消費量を従来技術のそれよりも低減させることができる。
【００５２】
また、モードＦ４の適用される増設筐体２（＃３，＃４）では、低信頼性ドライブを使用するため、信頼性の低いディスクドライブ２Ｂの寿命を長くすることができ、高信頼性ドライブとの寿命の差を少なくすることもできる。低信頼性ドライブの場合は、累積作動時間によって寿命が設定される場合が多いため、作動時間を短くすることにより、寿命を延ばすことができる。これにより、高信頼性ドライブと低信頼性ドライブとの交換時期をほぼ一致させて、保守作業の作業効率を高めることができる。
【００５３】
本実施例では、電源供給が停止された増設筐体２に定期的または不定期に通電し、正常に動作するか否かを診断する。従って、長期間停止されている増設筐体２の信頼性を確認しながら、記憶制御装置全体の電力消費量を低減することができる。以下、本実施形態の記憶制御装置を詳細に説明する。
【実施例１】
【００５４】
図２は、記憶制御装置の外観構成を示す斜視図である。記憶制御装置は、例えば、基本ラック１０と増設ラック１１とをケーブル等で接続することにより、構成される。基本ラック１０は、基本筐体１００及び複数の増設筐体２００を備える。基本ラック１０は、記憶制御装置の最小構成であり、基本ラック１０のみで記憶制御装置の機能を実現することができる。増設ラック１１は、複数の増設筐体２００を備える。基本ラック１０の記憶容量が足りなくなった場合に、増設ラック１１を基本ラック１０に接続することにより、記憶容量を増加させることができる。
【００５５】
図３は、基本筐体１００を前面側から見た斜視図である。基本筐体１００のケーシング１０１には、その前面側１０１Ｆに、複数のバッテリ１４０及び複数のディスクドライブ２３０がそれぞれ設けられる。基本筐体１００は、ディスクドライブ２３０を備える構成でもよいし、ディスクドライブ２３０を備えない構成でもよい。ディスクドライブ２３０を備えない場合、前面１０１Ｆの所定箇所は、バッテリ等の他の構成品が搭載されるか、又は、化粧板等で施蓋される。
【００５６】
図４は、基本筐体１００を後面側から見た斜視図である。ケーシング１０１の後面側１０１Ｒには、例えば、複数のコントローラ１１０と、複数のAC/DC電源部１２０と、複数の冷却ファン１３０とがそれぞれ取り付けられる。冷却ファン１３０は、複数のファンが一体化されたファンアッセンブリとして構成されており、ケーシング１０１の左右両側にそれぞれ配置される。コントローラ１１０は、ケーシング１０１の中央に上下に並んで配置される。AC/DC電源部１２０は、ケーシング１０１の下側に、左右に並んで配置される。なお、以下の増設筐体２００の説明でも同様であるが、基本筐体１００及び増設筐体２００の構成は、図示するものに限定されない。
【００５７】
図５は、増設筐体２００を前面側から見た斜視図である。増設筐体２００のケーシング２０１には、その前面側２０１Ｆに、複数のディスクドライブ２３０を取り付けることができる。本実施例では、＃０〜＃１４の合計１５台のディスクドライブ２３０が取り付けられる場合を例に挙げて説明する。１つの筐体当たりのディスクドライブ搭載数は、１５に限定されない。ディスクドライブ２３０が取り付けられていない空間は、化粧板等で施蓋することにより、外部の塵埃等がケーシング２０１内に侵入するのを防止する。
【００５８】
図６は、増設筐体２００を後面側から見た斜視図である。ケーシング２０１の後面側２０１Ｒには、複数の制御基板２１０及び複数のAC/DC電源部２２０がそれぞれ取り付けられている。なお、図６の構成においては、冷却ファンはAC/DC電源部２２０内に搭載されているが、図８に示すように、増設筐体２００には、冷却ファン２０２を設けることができる。即ち、冷却ファンとAC/DC電源部とを別々の構成部品としてもよい。
【００５９】
図７は、記憶制御装置の電源供給構造を模式的に示す説明図である。各ラック１０，１１内には、各筐体１００，２００へ外部からの電源を分配するための電源分配回路部３００が設けられている。以下の説明では、電源分配回路部をPDB（Power Distribution Box）と呼ぶ。
【００６０】
記憶制御装置は、複数の電源供給系統を備えている。１つの系統は、PDB＃０で示す系統であり、他の１つの系統はPDB＃１で示す系統である。即ち、記憶制御装置の電源供給構造は、冗長化されている。
【００６１】
各PDB３００は、例えば、４個等のような所定数の筐体に外部からの電源を分配することができる。従って、１つのラック内に多数の筐体が取り付けられる場合、複数の電源供給系統のそれぞれにおいて、複数のPDB３００が必要となる。なお、これに代えて、ラックに装着可能な最大数の筐体に外部からの電源を分配可能な単一のPDBを、各電源供給系統毎に使用する構成でもよい。
【００６２】
各PDB３００は、所定数のスイッチ３１０を備えている。各スイッチ３１０は、それぞれ対応する筐体のAC/DC電源部に接続される。図中では、AC/DC電源部を「PS」と略記して示している。
【００６３】
基本筐体１００の有する各電源部１２０は、それぞれ別系統のPDB３００のスイッチ３１０に接続されている。同様に、各増設筐体２００の有する各電源部２２０も、それぞれ別系統のPDB３００のスイッチ３１０にそれぞれ接続されている。従って、いずれか一方の系統に障害が発生した場合でも、他方の系統から基本筐体１００及び各増設筐体２００に電源をそれぞれ供給することができる。これにより、もしも、いずれか一つの系統からのみ電源を供給することになった場合でも、システムとしての殆どの動作を実行可能となっている。
【００６４】
基本筐体１００のコントローラ１１０は、図中に点線で示すように、信号線Ｐ１を介して、各PDB３００の各スイッチ３１０にそれぞれ接続されており、各スイッチ３１０の開閉を個別に操作することができる。コントローラ１１０は、目的の増設筐体２００への電源供給を停止させる場合、その増設筐体２００に接続された各スイッチ３１０をそれぞれ開くことにより、外部電源との電源部２２０との間の電源供給経路を遮断させる。
【００６５】
なお、各コントローラ１１０と各PDB３００とは、有線接続でもよいし、無線接続でもよい。無線接続の場合は、PDB３００内に、コントローラ１１０からの無線信号に応じて各スイッチ３１０を開閉させるための回路を設ければよい。
【００６６】
図８は、記憶制御装置の内部構成を模式的に示す説明図である。基本筐体１００の各コントローラ１１０は、通信ネットワークCN１を介して、ホスト１３にそれぞれ接続されている。また、各コントローラ１１０は、図９に示すように、通信ネットワークCN２を介して管理端末１４にもそれぞれ接続されている。
【００６７】
ホスト１３は、例えば、図外のクライアント端末からの要求に応じて、記憶制御装置にアクセスし、データの読み書きを行う。ホスト１３としては、例えば、メインフレームコンピュータやサーバコンピュータ等を挙げることができる。通信ネットワークCN１としては、例えば、LAN（Local Area Network）、SAN（Storage Area Network）、インターネットあるいは専用回線等を挙げることができる。
【００６８】
LANを用いる場合、ホストコンピュータ１３と記憶制御装置とは、TCP/IP（Transmission Control Protocol/Internet Protocol）に従って通信を行う。SANを用いる場合、ホストコンピュータ１３と記憶制御装置とは、ファイバチャネルプロトコルに従って通信を行う。また、ホストコンピュータ１３がメインフレームコンピュータである場合、例えば、FICON（Fibre Connection：登録商標）、ESCON（Enterprise System Connection：登録商標）、ACONARC（Advanced Connection Architecture：登録商標）、FIBARC（Fibre Connection Architecture：登録商標）等の通信プロトコルに従ってデータ転送が行われる。
【００６９】
さらに、図９に示すように、記憶制御装置には、管理用の通信ネットワークCN２を介して、管理端末１４を接続することもできる。管理端末１４は、記憶制御装置の各種設定等を行うためのコンピュータ端末である。管理端末１４は、図外の管理サーバに接続することもできる。管理サーバは、複数の記憶制御装置を一括して管理可能なコンピュータ装置として構成することができる。
【００７０】
記憶制御装置の制御系統も、電源供給系統と同様に冗長化されている。＃０のコントローラ１１０と＃１のコントローラ１１０とは、それぞれ配下にある全てのディスクドライブ２３０にアクセス可能である。即ち、いずれか一方の系統に障害が発生した場合でも、他方の系統からデータアクセスが可能となっている。記憶制御装置の全体動作は基本筐体１００内のコントローラ１１０によって制御される。従って、各コントローラ１１０は、基本筐体１００内の各ディスクドライブ２３０のみならず、増設筐体２００内の各ディスクドライブ２３０にもそれぞれアクセス可能である。
【００７１】
基本筐体１００の各電源部１２０は、各コントローラ１１０及び基本筐体１００内の各ディスクドライブ２３０に、それぞれ所定電圧の直流電源を供給する。電源部１２０は、直流５ボルトや直流１２ボルト等のような複数種類の電圧を出力可能である。なお、図中では、説明の便宜上、下段側のディスクドライブ２３０にのみ電源が供給されるかのように示されているが、各電源部１２０は、筐体内の全てのディスクドライブ２３０に電源を供給する。
【００７２】
図８中の下側には増設筐体２００が示されている。紙面の都合上、１つの増設筐体２００のみを示しているが、上述のように、基本筐体１００は、複数の増設筐体２００とデイジーチェーン接続することができる。
【００７３】
増設筐体２００の電源部２２０は、電源部１２０と同様に、外部から入力された電源を所定電圧の直流電源に変換して出力する。筐体内に存在する全てのディスクドライブ２３０，制御基板２１０及び冷却ファン２０２には、各電源部２２０から直流電源がそれぞれ供給される。なお、説明の便宜のために、各電源部２２０から直流電源がそれぞれ供給されると述べたが、例えば、通常時においては、いずれか一方の電源部２２０（例えば、＃０の電源部）のみから各ディスクドライブ２３０や制御基板２１０等に直流電源が供給される構成でもよい。ディスクドライブ２３０や制御基板２１０等の負荷から各電源部２２０を見たときのインピーダンスに差をつけることにより、いずれか一方の電源部２２０から電源を供給させることができる。例えば、いずれかの電源部２２０からの出力に、他方の電源部２２０よりも多い段数のダイオードを設ければよい。これにより、障害発生時には、スイッチ切替等を行うことなく、他方の電源部２２０に自動的に切り替わる。
【００７４】
ディスクドライブ２３０は、例えば、ATA（AT Attachment）ディスク、SCSI（Small Computer System Interface）ディスク、FC（Fibre Channel）ディスク等のようなハードディスクドライブとして構成される。これに限らず、例えば、半導体メモリドライブ（フラッシュメモリデバイスを含む）、光ディスクドライブ、光磁気ディスクドライブ等の他の記憶デバイスを用いてもよい。
【００７５】
例えば、４個１組、８個１組等のような所定数のディスクドライブ２３０によって、RAIDグループ２４０が構成される。RAIDグループ２４０は、別々の筐体に存在する複数のディスクドライブ２３０から構成することもできるし、同一筐体に存在する１つまたは複数のディスクドライブ２３０から構成することもできる。
【００７６】
図９に示すように、RAIDグループ２４０には、１つまたは複数の論理ボリューム２５０を設けることができる。論理ボリューム２５０は、ホスト１３からアクセスされる対象であり、ホスト１３により使用されるデータを記憶している。
【００７７】
図９は、１つのコントローラ１１０に着目した場合のブロック図である。コントローラ１１０は、例えば、ホストインターフェース回路１１１と、ドライブインターフェース回路１１２と、データ転送回路１１３と、キャッシュメモリ１１４と、プログラムメモリ１１５と、プロセッサ（図中「MPU」と略記）１１６と、ブリッジ１１７と、LANインターフェース１１８とを備えて構成される。
【００７８】
ホストインターフェース回路１１１は、ホスト１３との間の通信を制御する。ホスト１３から発行された各種コマンドやデータは、ホストインターフェース回路１１１によって受信される。ディスクドライブ２３０から読み出されたデータやコマンドの処理完了を告げる通知は、ホストインターフェース回路１１１からホスト１３に送信される。
【００７９】
ドライブインターフェース回路１１２は、各ディスクドライブ２３０との間の通信を制御する。ドライブインターフェース回路１１２は、論理ブロックアドレス（LBA）とディスクドライブ２３０の物理的なアドレスとの変換操作等を行う。
【００８０】
データ転送回路１１３は、コントローラ１１０内のデータ転送を制御するための回路である。データ転送回路１１３は、ホストインターフェース回路１１１とキャッシュメモリ１１４との間のデータ転送や、ドライブインターフェース回路１１２とキャッシュメモリ１１４との間のデータ転送を制御する。
【００８１】
プロセッサ１１６は、一つまたは複数のプロセッサコアを備えている。プロセッサ１１６は、プログラムメモリ１１５に記憶された電源管理プログラム等の種々のプログラムを読み込んで実行することにより、後述の電源制御等を実現する。
【００８２】
キャッシュメモリ１１４は、ホスト１３から受信したデータやホスト１３により読み出されたデータを記憶する。キャッシュメモリ１１４には、記憶制御装置のシステム構成に関する情報も記憶されている。キャッシュメモリ１１４の記憶内容は、バッテリ１４０によってバックアップされる。
【００８３】
ブリッジ１１７は、プロセッサ１１６とプログラムメモリ１１５とを接続する。また、プロセッサ１１６は、ブリッジ１１７を介してデータ転送回路１１３に接続される。
【００８４】
LANインターフェース１１８は、管理端末１４とコントローラ１１０とを接続するための回路である。ユーザは、管理端末１４を介して、コントローラ１１０に各種の指示を与えたり、記憶制御装置の各種状態に関する情報を読み出して画面に表示させることができる。
【００８５】
図１０は、増設筐体２００のブロック図である。先に、AC/DC電源部２２０の構成を説明する。電源部２２０は、例えば、電圧変換回路２２１と、複数の出力ダイオード２２２Ａ〜２２２Ｃと、出力制御スイッチ２２３とを備えている。
【００８６】
電圧変換回路２２１は、PDB３００を介して入力された交流電源を複数種類の直流電圧Ｖ１，Ｖ２に変換して出力する。例えば、Ｖ１は直流５ボルト程度、Ｖ２は直流１２ボルト程度にそれぞれ設定される。出力ダイオード２２２Ａ〜２２２Ｃは、逆流防止のために設けられている。スイッチ２２３は、直流電圧を出力させるか否かを制御するためのもので、制御基板２１０によって切り替えられる。
【００８７】
各ディスクドライブ２３０には、Ｖ１，Ｖ２がそれぞれ供給される。各制御基板２１０及び各冷却ファン２０２には、Ｖ２がそれぞれ供給される。図１０に示すように、２つの電源部２２０の出力は、それぞれＯＲ接続されている。従って、いずれか一方の電源部２２０に障害が生じた場合でも、他方の電源部２２０から制御基板２１０やディスクドライブ２３０等に所定電圧の電源が供給される。各電源部２２０からの出力Ｖ１，Ｖ２が停止した場合、筐体内の全てのディスクドライブ２３０への電源供給が同時に停止する。
【００８８】
各制御基板２１０は、信号線Ｐ２を介して、各電源部２２０内の各スイッチ２２３にそれぞれ接続されている。各制御基板２１０は、各スイッチ２２３をそれぞれ個別に開閉させることができる。また、各制御基板２１０は、信号線Ｐ３を介して、各冷却ファン２０２にもそれぞれ接続されている。各制御基板２１０は、各冷却ファン２０２の作動を開始または停止、あるいは回転数を調節することができる。
【００８９】
図１１は、１つの制御基板２１０に着目した構成説明図である。制御基板２１０は、例えば、マイクロプロセッサ部２１１と、筐体間通信インターフェース部２１２と、制御信号出力回路２１３とを備えて構成される。
【００９０】
マイクロプロセッサ部２１１は、制御基板２１０の動作を制御するものであり、例えば、資源管理機能２１１Ａ、コマンド処理機能２１１Ｂ、電源制御機能２１１Ｃ、冷却ファン制御機能２１１Ｄをそれぞれ実現する。
【００９１】
資源管理機能２１１Ａは、例えば、増設筐体２００内の各資源（ディスクドライブ２３０，電源部２２０等）の配置や状態等を管理する機能である。コマンド処理機能２１１Ｂは、コントローラ１１０から入力された指示を実行するための機能である。即ち、コマンド処理機能２１１Ｂは、コントローラ１１０からデータの書込みを要求された場合は、指定されたディスクドライブ２３０の指定されたアドレスにデータを書き込む。また、コマンド処理機能２１１Ｂは、コントローラ１１０からデータの読出しを要求された場合は、指定されたディスクドライブ２３０の指定されたアドレスから、指定された長さのデータを読み出してコントローラ１１０に転送する。
【００９２】
電源制御機能２１１Ｃは、コントローラ１１０からの指示に基づいて、スイッチ２２３を開閉させることにより、電源部２２０の出力を制御する機能である。冷却ファン制御機能２１１Ｄは、コントローラ１１０からの指示に基づいて、冷却ファン２０２の作動を制御する機能である。
【００９３】
筐体間通信インターフェース部２１２は、隣接する他の筐体との間の通信を行うものである。基本筐体１００に対して各増設筐体２００はデイジーチェーン接続されており、基本筐体１００のコントローラ１１０から出力されたコマンドやデータは、隣接する増設筐体２００を順番に介して伝達されていく。図１１中に示す上位筐体とは、接続上の上位に位置する筐体である。即ち、基本筐体１００と接続上の距離が近い方の筐体である。下位筐体とは、接続上の下位に位置する筐体であり、基本筐体との距離が長い方の筐体を意味する。
【００９４】
図１２は、論理ボリューム２５０を管理するためのテーブルＴ１の構成を示す説明図である。このテーブルＴ１は、図１３に示す電源供給状態管理テーブルＴ２と共に、システム構成情報を構成する。これら各テーブルＴ１，Ｔ２は、例えば、キャッシュメモリ１１４内に記憶される。
【００９５】
ボリューム管理テーブルＴ１は、例えば、ボリューム番号（LU＃）Ｉ１１と、容量Ｉ１２と、RAIDグループ番号Ｉ１３と、RAIDレベルＩ１４と、ドライブ番号リストＩ１５と、最新アクセス時刻Ｉ１６とのような項目を対応付けて管理する。なお、図に示す以外の項目を管理する構成でもよい。また、テーブルＴ１を複数のテーブルに分割して管理する構成でもよい。
【００９６】
論理ボリューム番号Ｉ１１は、記憶制御装置内に設けられている全ての論理ボリューム２５０を一意に特定するための識別情報である。容量Ｉ１２は、論理ボリューム２５０の記憶容量を示す情報である。RAIDグループ番号Ｉ１３は、論理ボリューム２５０が設けられているRAIDグループ２４０を一意に特定するための識別情報である。RAIDレベルＩ１４とは、RAIDグループ２４０のRAIDレベルを示す情報である。RAIDレベルとしては、例えば、RAID１，RAID５，RAID６等を挙げることができる。ドライブ番号リストＩ１５とは、RAIDグループ２４０を構成しているディスクドライブ２３０を特定するための情報である。最新アクセス時刻Ｉ１６とは、ホスト１３が論理ボリューム２５０に最後にアクセスした時刻を示す情報である。なお、紙面の都合上、図示していないが、例えば、所定の期間毎のアクセス頻度や、各論理ボリューム２５０の空き容量等をテーブルＴ１で管理することもできる。
【００９７】
図１３は、各筐体１００，２００における電源の供給状態を管理するためのテーブルＴ２を示す説明図である。この電源供給状態管理テーブルＴ２は、例えば、筐体番号１２１と、筐体への電源供給状態Ｉ２２と、ドライブ番号Ｉ２３と、スピン状態Ｉ２４と、第１系統PDBのスイッチ（図中「SW」と略記）番号Ｉ２５と、そのスイッチ状態Ｉ２６と、第２系統PDBのスイッチ番号Ｉ２７と、そのスイッチ状態Ｉ２８とをそれぞれ対応付けて管理している。
【００９８】
筐体番号Ｉ２１とは、記憶制御装置を構成する各筐体１００，２００を一意に特定するための識別情報である。筐体への電源供給状態Ｉ２２とは、その筐体に外部からの電源が供給されているか否かを示す情報である。ドライブ番号Ｉ２３とは、その筐体に設けられている各ディスクドライブ２３０を特定するための識別情報である。
【００９９】
スピン状態Ｉ２４とは、そのディスクドライブ２３０がスピンアップしているか、スピンダウンしているかを示す情報である。スピンアップ状態の場合は「ON」で示され、スピンオフ状態の場合は「OFF」で示される。
スピンアップ状態とは、ディスクが所定速度で回転している状態であり、データの読み書きが可能である。スピンダウン状態とは、ディスクが所定速度以下で回転または停止している状態であり、この状態ではデータの読み書きを行うことはできない。
【０１００】
第１系統PDBのスイッチ番号Ｉ２５及び第２系統PDBのスイッチ番号Ｉ２７とは、その筐体に接続されている第１電源供給系統（＃０の系統）及び第２電源供給系統（＃１の系統）のPDB内スイッチ３１０をそれぞれ特定するための情報である。スイッチ状態Ｉ２６，Ｉ２８とは、Ｉ２５，Ｉ２７で特定されたスイッチ３１０の開閉状態をそれぞれ示す情報である。スイッチ３１０が閉じている場合は「ON」で示され、スイッチ３１０が開いている場合は「OFF」で示される。本実施例では、信頼性を高めるために、スイッチ３１０は、常時開いているａ接点として構成されている。
【０１０１】
図１４は、コントローラ１１０によって実行されるデータ再配置処理を示すフローチャートである。この処理は、例えば、ホスト１３からのデータアクセスが少ない時間帯等を選んで実行させることができる。
【０１０２】
コントローラ１１０は、データ再配置対象の筐体番号に、最前段の筐体の番号をセットする（Ｓ１）。最前段の筐体とは、デイジーチェーン接続上の順番が最も高位の筐体を意味する。従って、本処理の開始時点では、基本筐体１００の番号がセットされる。
【０１０３】
コントローラ１１０は、テーブルＴ１を用いることにより、Ｓ１で設定された対象筐体内に存在する各ボリューム２５０の利用状態をそれぞれ検出する（Ｓ２）。コントローラ１１０は、検出された利用頻度が所定値よりも低いボリューム２５０が存在するか否かを判定する（Ｓ３）。所定値は、予めユーザ等によって設定される。所定値は、記憶階層のレベル毎にそれぞれ用意される。図１の概要図で述べたように、記憶制御装置の有する記憶領域を、例えば、高利用頻度層、中利用頻度層、低利用頻度層等のように、階層化して管理することができる。これらの利用頻度に応じた各記憶階層毎に、それぞれ移動判定用の所定値（閾値）が予め用意されている。
【０１０４】
利用頻度が所定値よりも低いボリュームが検出された場合（S3:YES）、コントローラ１１０は、対象筐体の１つ後ろに位置する筐体内に、空いている容量が存在するか否かを判定する（Ｓ４）。コントローラ１１０は、接続上の下位に位置する筐体内に、Ｓ３で検出されたボリューム２５０を収容するだけの空き容量があるか否かを判定する。
【０１０５】
隣接する下位筐体に所定サイズの空きが存在する場合（S4:YES）、コントローラ１１０は、Ｓ３で検出されたボリューム２５０のデータを、Ｓ４で検出された記憶領域に移動させる（Ｓ５）。例えば、コントローラ１１０は、移動先の筐体（隣接する下位筐体）の各ディスクドライブ２３０が有する記憶領域に、所定サイズのボリュームを移行先ボリュームとして新たに形成する。そして、コントローラ１１０は、対象筐体内の利用頻度の低いボリューム２５０を移行元ボリュームとして、移行元ボリューム内のデータを移行先ボリュームにコピーさせる。コピー完了後に、移行元ボリュームのデータは消去される。
【０１０６】
コントローラ１１０は、記憶制御装置内の全ての筐体についてデータ再配置の必要性を判断するまで、Ｓ２〜Ｓ５を繰り返す（S6:NO）。即ち、コントローラ１１０は、対象筐体の筐体番号を１つ後ろにずらし（Ｓ７）、必要があれば、移動判定用の所定値を変更する（Ｓ８）。
【０１０７】
例えば、基本筐体１００についてのデータ再配置が判断された直後の場合は、Ｓ７では基本筐体１００に隣接する増設筐体２００（＃１）がセットされる。Ｓ７でセットされた増設筐体２００と直前に判定された対象筐体とが別々の記憶階層に位置する場合は、移動判定用の閾値も変更される。以下、前記同様にして、基本筐体１００から下位の各増設筐体２００に向けて、Ｓ２〜Ｓ６がそれぞれ順番に繰り返されていく。全ての筐体についてデータ再配置を判定した場合（S6:YES）、本処理は終了する。
【０１０８】
図１４に示すような処理を行うことにより、利用頻度の低いボリュームは、より基本筐体１００からの接続上の距離の遠い増設筐体２００に集められていく。なお、図１４では、図示を省略しているが、逆向きのデータ再配置を行うこともできる。即ち、例えば、予め設定された所定値よりも利用頻度の高いボリューム２５０を、基本筐体１００に近い増設筐体２００に移動させることもできる。なお、データ再配置は、ユーザが管理端末１４から指示を与えることによっても、実行させることができる。
【０１０９】
図１５は、データ再配置が行われた場合の様子を模式的に示す説明図である。図１５に示すように、基本筐体１００から最も遠い増設筐体２００（＃３）には、利用頻度の最も少ないバックアップデータが保存される。基本筐体１００には、最も利用頻度の高いデータが保存される。図１５では、ホスト１３による利用頻度の高いデータをアクセスデータと表現している。また、基本筐体１００に隣接する他の増設筐体２００（＃２）等には、アーカイブデータが保存される。
【０１１０】
このように、本実施例では、記憶制御装置の物理的な配置と論理的な記憶階層とが一致している。物理的な配置とは、接続上の配置である。図２に示したように、各筐体は、重ねられたような状態でラックに収容されるため、接続上の距離と物理的な位置関係とが対応する。
【０１１１】
基本筐体１００との接続上の距離が近い増設筐体２００ほど、ラック内では基本筐体１００に近い場所に格納される。これに対し、記憶制御装置の有する記憶領域を利用頻度に応じて階層化する記憶階層は、論理的な存在であり、本来は筐体の物理的な位置関係に依存しない。従って、従来であれば、記憶階層は、筐体１００，２００の物理的な配置と無関係に設定されるため、ユーザは、筐体の物理的位置関係のみから記憶階層の構成を知ることはできない。これに対し、本実施例では、基本筐体１００に各増設筐体２００をデイジーチェーン接続し、基本筐体１００に近い筐体（本実施例のように、基本筐体１００がディスクドライブ２３０を備える場合は、基本筐体１００そのものを含む。）から順番に、利用頻度の高いデータを記憶させ、利用頻度の低いデータほど接続上の距離の遠い増設筐体２００に記憶させる。従って、本実施例では、記憶階層の構成を筐体の物理的配置によって可視化することができ、ユーザは、記憶制御装置の外観から容易にわかる物理的な配置によって、記憶階層の所在を知ることができ、使い勝手が向上する。また、このように接続上の距離が遠い筐体内に、利用頻度の低いデータを集めることにより、後述するように、筐体単位の電源供給停止を効果的に行うことができる。
また、例えば、ホスト１３が、利用頻度の判明しているデータを、ディスク装置の適切な物理的位置（記憶階層）に予め配置しておくことにより、より一層、節電効果を高めることもできる。
【０１１２】
図１６は、電源供給に関する接続構成の初期設定を確認するための処理を示すフローチャートである。どの筐体にどのPDB３００のスイッチ３１０を接続するかは、ユーザによって決定することができる。ユーザは、自らが行った接続に関する構成を、管理端末１４からコントローラ１１０のテーブルＴ２に登録することができる。しかし、ヒューマンエラーを完全に排除するのは難しい。そこで、図１６に示す処理を実行することにより、ユーザの登録した電源供給の接続構成が正しいか否かを検査する。
【０１１３】
本処理は、第１電源供給系統及び第２電源供給系統のそれぞれについて、別々に実施される。コントローラ１１０は、判断対象のスイッチ３１０の番号として、最終段のスイッチ３１０の番号を設定する（Ｓ１０）。接続上の末端に位置する筐体２００に接続されている第１電源系統のスイッチ３１０の番号である。
【０１１４】
コントローラ１１０は、Ｓ１０で設定されたスイッチ３１０に制御信号を出力し、このスイッチ３１０をオフさせる（Ｓ１１）。コントローラ１１０は、Ｓ１０で設定されたスイッチ３１０に接続されているはずの電源部２２０から停電を示す警報信号が出力されたか否かを確認する（Ｓ１２）。各電源部１２０，２２０は、外部からの電源供給が途絶えた場合に、警報信号を外部に出力できるように構成されている。
【０１１５】
Ｓ１０で設定されたスイッチ３１０に接続されているはずの電源部２２０から警報信号が出力された場合（S12:YES）、コントローラ１１０は、ユーザにより登録された情報が正しいものと判断する（Ｓ１３）。Ｓ１０で設定されたスイッチ３１０に接続されているはずの電源部２２０から警報信号が出力されなかった場合（S12:NO）、コントローラ１１０は、ユーザにより登録された情報が誤っていると判断する（Ｓ１４）。ユーザから登録された情報に誤りが検出された場合、PDB３００によって電源供給を停止させないようにする（Ｓ１５）。
【０１１６】
コントローラ１１０は、全てのスイッチ３１０について接続状態の判定を行ったか否かを判断する（Ｓ１６）。未判定のスイッチ３１０が存在する場合（S15:YES）、コントローラ１１０は、対象スイッチ番号を１つ前のスイッチ３１０の番号に変更し（Ｓ１７）、Ｓ１１〜Ｓ１５を繰り返す。全てのスイッチ３１０について検査を完了した場合（S15:YES）、コントローラ１１０は本処理を終了する。なお、Ｓ１５でも示した通り、接続状態に誤りが検出された場合、少なくとも接続の誤っている箇所に関するスイッチ操作は行わない。電源供給に関する接続に誤りが検出された場合、その誤りが正されるまでの間、PDB３００による電源供給の停止を禁止することができる。
【０１１７】
図１７は、１つのモードによる電源供給停止処理を示すフローチャートである。この処理では、各ディスクドライブ２３０毎に省電力を行う。本処理は、図１中で述べたモードＦ１の一例である。
【０１１８】
コントローラ１１０は、テーブルＴ１を参照することにより、所定時間以上アクセスされていないディスクドライブ２３０が存在するか否かを判定する（Ｓ２０）。ユーザは、例えば、１時間等のように、任意の値を所定時間として設定できる。
【０１１９】
コントローラ１１０は、所定時間以上アクセスされていないディスクドライブ２３０を検出した場合（S20:YES）、そのディスクドライブ２３０をスピンダウン状態に変更させるための指示を、そのディスクドライブ２３０の存在する増設筐体２００に向けて発行する（Ｓ２１）。コントローラ１１０は、Ｓ２０で検出されたディスクドライブ２３０のスピン状態をスピンオフとしてテーブルＴ２に記録する。コントローラ１１０から発行された指示（コマンド）は、隣接する増設筐体２００を順番に辿りながら、目的の増設筐体２００まで伝達される。
【０１２０】
コントローラ１１０からの指示を受領した増設筐体２００の制御基板２１０は、指定されたディスクドライブ２３０をスピンダウンさせる（Ｓ２３）。また、制御基板２１０は、それが可能であれば、冷却ファン２０２の回転数を低下させる（Ｓ２４）。
【０１２１】
例えば、筐体内で他のディスクドライブ２３０が稼働している場合は、筐体内の温度を保つために、冷却ファン２０２の回転数は一定値に保持される。これに対し、Ｓ２３で、１つまたは複数のディスクドライブ２３０をスピンダウンさせたことにより、冷却能力を低下させることが可能な場合、制御基板２１０は、冷却ファン２０２の回転数を低下させることもできる。なお、冷却ファン２０２の回転数を低下させるか否かは、コントローラ１１０によって決定してもよいし、あるいは、増設筐体２００の制御基板２１０によって決定してもよい。
【０１２２】
図１８は、他のモードによる電源供給停止処理を示すフローチャートである。本処理では、筐体内の全ディスクドライブ２３０への通電停止（図１中のモードＦ２）と、制御機能以外の通電停止（図１中のモードＦ３）と、筐体全体への電源供給停止（図１中のモードＦ４）とがそれぞれ示されている。
【０１２３】
コントローラ１１０は、電源供給を停止させるか否かの判断を行う対象筐体の番号に、接続上の最後尾に位置する増設筐体２００の番号をセットする（Ｓ３０）。コントローラ１１０は、テーブルＴ２を用いることにより、対象筐体内の全ディスクドライブ２３０が、スピンダウン状態になっているか否かを判定する（Ｓ３１）。図１７で述べた通り、各ディスクドライブ２３０へのアクセスが所定時間以上無い場合は、各ディスクドライブ２３０は個別にスピンダウン状態に置かれる。スピンダウン状態に置かれたディスクドライブ２３０についてデータアクセスが発生した場合、そのディスクドライブ２３０は、スピンアップ状態に変更される。
【０１２４】
対象筐体内の全ディスクドライブ２３０がスピンダウン状態であると判定された場合（S31:YES）、コントローラ１１０は、対象筐体の制御基板２１０に向けて、全ディスクドライブ２３０への通電停止を指示する（Ｓ３２）。対象筐体の制御基板２１０は、電源部２２０内のスイッチ２２３を開くことにより、出力Ｖ１，Ｖ２をそれぞれ停止させ、筐体内の全ディスクドライブ２３０への通電を停止させる（Ｓ３３）。なお、この場合、コントローラ１１０は、全ディスクドライブ２３０への通電停止のみならず、信号伝達機能以外の全ての機能の停止を要求することもできる。例えば、コントローラ１１０は、冷却ファン２０２の停止を要求することができる。
【０１２５】
対象筐体内の各ディスクドライブ２３０のうちいずれか１つ以上のディスクドライブ２３０がスピンアップ状態の場合（S31:NO）、Ｓ３４，Ｓ３５をスキップして、Ｓ３６に移る。
【０１２６】
コントローラ１１０は、対象筐体内の全ディスクドライブ２３０への通電停止を指示した後で、対象筐体よりも後側に位置する各下位筐体が全て電源供給停止状態であるか否かを判定する（Ｓ３４）。対象筐体よりも下位の各筐体に各系統のPDB３００から電源が供給されていない場合（S34:YES）、コントローラ１１０は、対象筐体に接続された各系統のPDB３００のスイッチ３１０をそれぞれオフさせ、外部からの電源供給を停止させる（Ｓ３５）。これにより、対象筐体は機能を停止する。この際、コントローラ１１０は、まず最初に、第１系統（PDB#0）のPDB３００のスイッチ３１０をオフにし、電源供給の停止を知らせる警報信号が第１系統側の電源部２２０から出力されるのを確認する。第１系統側での電源供給が正常に停止したことを確認してから、コントローラ１１０は、第２系統（PDB#1）のPDB３００のスイッチ３１０をオフにする。
【０１２７】
コントローラ１１０は、記憶制御装置内の全筐体について判断したか否かを判定し（Ｓ３６）、未判定の筐体が存在する場合（S36:NO）、対象筐体の番号を、対象筐体に隣接する１つ前の筐体の番号に変更する（Ｓ３７）。即ち、対象筐体に隣接する上位の筐体の番号がセットされる。そして、Ｓ３１〜Ｓ３６が繰り返される。
【０１２８】
このように、本実施例では、基本筐体１００からの距離が遠い増設筐体２００から順番に、筐体そのものへの通電を停止させるか否かを判定していく。データ再配置処理で述べたように、本実施例では、接続上の距離が遠い増設筐体２００に利用頻度の低いデータを配置させる。従って、接続上の距離が遠い下位の増設筐体２００ほど、データアクセスされる可能性が低下するため、筐体そのものへの電源供給を停止できる機会が増大する。従って、記憶制御装置全体としての電力消費量を従来よりも低減することができる。
【０１２９】
図１９は、ホスト１３から発行されたライトコマンドを処理するためのフローチャートを示す。
【０１３０】
コントローラ１１０は、ホスト１３からライトコマンド及びライトデータを受領すると（Ｓ４０）、ライトデータをキャッシュメモリ１１４に記憶させる（Ｓ４１）。コントローラ１１０は、ライトデータをキャッシュメモリ１１４に記憶させた時点で、ホスト１３にライトコマンドの処理が完了した旨を通知する（Ｓ４２）。コントローラ１１０は、ライトコマンドに明示された論理アドレスをディスクドライブ２３０の物理的なアドレスに変換し（Ｓ４３）、アクセス対象のディスクドライブ２３０を特定する（Ｓ４４）。以下の説明では、便宜上、アクセス対象のディスクドライブ２３０をアクセス先ドライブと表現する場合がある。
【０１３１】
コントローラ１１０は、テーブルＴ２を用いることにより、Ｓ４４で特定されたアクセス先ドライブにアクセス可能か否かを判定する（Ｓ４５）。アクセス先ドライブがスピンアップ状態であり、かつ、アクセス先ドライブを有する増設筐体２００までの通信経路が正常な場合は、直ちにアクセス先ドライブにアクセス可能である。アクセス先ドライブにアクセス可能であると判定された場合（S45:YES）、コントローラ１１０は、アクセス先ドライブにライトデータを転送する（Ｓ４６）。ライトデータは、基本筐体１００から隣接する増設筐体２００を順番に介して、アクセス先ドライブを有する増設筐体２００に伝達される。制御基板２１０は、ライトデータを受領すると、指定されたディスクドライブ２３０（アクセス先ドライブである）にライトデータを書き込む。
【０１３２】
これに対し、アクセス先ドライブへのアクセスが不能であると判定された場合（S45:NO）、後述する電源供給開始処理が実行される（Ｓ１００）。このように、本実施例では、ライトデータをアクセス先ドライブに転送する前に、アクセス先ドライブにアクセス可能であるか否かを判断し、アクセス不能な場合は電源供給開始処理を実行する。これに代えて、後述の実施例のように、アクセス先ドライブへのライトデータの書込みができなかった場合に、電源供給開始処理を実行させることもできる。
【０１３３】
図２０は、ホスト１３から発行されたリードコマンドを処理するためのフローチャートを示す。コントローラ１１０は、ホスト１３からリードコマンドを受領すると（Ｓ５０）、アクセス先ドライブを特定する（Ｓ５１）。ここでのアクセス先ドライブとは、読出しを要求されたデータを記憶しているディスクドライブ２３０である。
【０１３４】
コントローラ１１０は、ホスト１３から要求されたデータがキャッシュメモリ１１４に記憶されているか否かを判定する（Ｓ５２）。以下の説明では、ホスト１３により読出しが要求されているデータをリードデータと呼ぶ場合がある。
【０１３５】
リードデータがキャッシュメモリ１１４に記憶されている場合（S52:YES）、後述のＳ５３，Ｓ５４をスキップして、キャッシュメモリ１１４に記憶されているリードデータをホスト１３に送信する（Ｓ５５）。
【０１３６】
リードデータがキャッシュメモリ１１４に記憶されていない場合（S52:NO）、コントローラ１１０は、テーブルＴ２を用いることにより、アクセス先ドライブにアクセス可能か否かを判断する（Ｓ５３）。アクセス先ドライブにアクセス可能であると判定された場合（S53:YES）、コントローラ１１０は、アクセス先ドライブからリードデータを読み出してキャッシュメモリ１１４に記憶させる（Ｓ５４）。コントローラ１１０は、キャッシュメモリ１１４に記憶されたリードデータをホスト１３に送信する（Ｓ５５）。
【０１３７】
これに対し、アクセス先ドライブにアクセス不能であると判定された場合（S53:NO）、コントローラ１１０は、電源供給開始処理を実行する（Ｓ１００）。
【０１３８】
図２１は、電源供給開始処理（Ｓ１００）の詳細を示すフローチャートである。コントローラ１１０は、対象筐体の番号として、アクセス先ドライブを有する増設筐体２００の番号をセットする（Ｓ１０１）。
【０１３９】
コントローラ１１０は、テーブルＴ２を用いることにより、基本筐体１００からＳ１０１でセットされた対象筐体までの伝達経路上に存在する各増設筐体２００の電源供給状態をそれぞれ取得する（Ｓ１０２）。
【０１４０】
コントローラ１１０は、伝達経路上の各増設筐体２００にPDB３００から外部電源がそれぞれ供給されているか否かを判定する（Ｓ１０３）。経路上に位置する増設筐体２００に外部電源が供給されていないと判定された場合（S103:NO）、コントローラ１１０は、電源供給が停止されている各増設筐体２００に接続されているPDB３００内のスイッチ３１０を順番にオンさせていく（Ｓ１０４）。即ち、コントローラ１１０は、伝達経路上に位置する各増設筐体２００に対して、その上位側から順番に外部電源を供給し、起動させていく。但し、Ｓ１０４では、外部電源を経路途中の各増設筐体２００に供給させるだけであり、これら経路途中の各増設筐体２００内のディスクドライブ２３０をスピンアップさせない。経路上の各制御基板２１０を起動させて、コマンドやデータの伝達機能のみを復活させれば足りるためである。
【０１４１】
経路上の各増設筐体２００にPDB３００から外部電源が供給されている場合（S103:YES）、Ｓ１０４はスキップされる。コントローラ１１０は、対象筐体に対して、対象筐体内の全ディスクドライブ２３０に電源部２２０から直流電源Ｖ１，Ｖ２を供給するように指示する（Ｓ１０５）。対象筐体の制御基板２１０は、Ｓ１０５で発行された指示を受領すると、電源部２２０内のスイッチ２２３をオンさせることにより、各ディスクドライブ２３０に電源をそれぞれ供給させる（Ｓ１０６）。
【０１４２】
コントローラ１１０は、アクセス先ドライブのスピンアップを対象筐体の制御基板２１０に指示する（Ｓ１０７）。この指示を受領した制御基板２１０は、アクセス先ドライブのみをスピンアップさせる（Ｓ１０８）。
【０１４３】
図２２は、自己診断処理を示すフローチャートである。アクセス頻度の低いデータを記憶している増設筐体２００への通電を長時間停止した場合、通電停止中に増設筐体２００に障害が発生しても検出することができず、必要な場合にデータを取り出せない可能性がある。そこで、本実施例では、定期的にまたは不定期に、休止中の増設筐体２００に通電することにより、正常に動作するか否かを確認する。この自己診断処理は、予め設定された所定周期で定期的に行うこともできるし、ユーザが任意に指定した時刻で不定期に行うこともできる。
【０１４４】
コントローラ１１０は、テーブルＴ２を用いて、所定時間以上、PDB３００から外部電源が供給されていない増設筐体２００が存在するか否かを判定する（Ｓ６０）。コントローラ１１０は、所定時間以上通電されていない増設筐体２００を発見した場合（S60:YES）、その増設筐体２００に接続されているPDB３００内のスイッチ３１０をオンさせて（Ｓ６１）、その増設筐体２００に外部電源を供給する。
【０１４５】
コントローラ１１０は、診断用コマンドとして予め設定されているコマンド（スピンアップコマンドやスピンダウンコマンド等）を増設筐体２００に送信し、その増設筐体２００内の各ディスクドライブ２３０の動作を確認する（Ｓ６２）。コントローラ１１０は、その増設筐体２００内の全ディスクドライブ２３０が正常に動作するか否かを判定する（Ｓ６３）。コントローラ１１０は、全ディスクドライブ２３０が正常に動作すると判定された場合（S63:YES）、Ｓ６０に戻る。いずれか１つ以上のディスクドライブ２３０が正常に動作しない場合（S63:NO）、コントローラ１１０は、その増設筐体２００に異常が生じている旨の警報を出力する（Ｓ６４）。この警報は、管理端末１４を介して、ユーザに通知される。また、管理端末１４が管理サーバに接続されている場合、この警報は、管理端末１４から管理サーバに送信される。
【０１４６】
なお、診断対象の増設筐体２００に診断用のコマンドを送信するために、基本筐体１００と診断対象の増設筐体２００との間の伝達経路が有効となるように、経路上の各増設筐体２００の制御基板２１０が起動される。
【０１４７】
図２３は、各増設筐体２００における節電モードの変化を模式的に示す。図２３（ａ）に示すように、最初は、各ディスクドライブ２３０，制御基板２１０，冷却ファン２０２のそれぞれに電源部２２０から直流電源が供給されている。図２３（ｂ）に示すように、所定時間アクセスされなかったディスクドライブ２３０（＃１）は、スピンダウン状態に変更される。
【０１４８】
図２３（ｃ）に示すように、スピンダウン状態となるディスクドライブ２３０が増加し、図２３（ｄ）に示すように、全てのディスクドライブ２３０がスピンダウン状態に変化すると、図２３（ｅ）に示すように、PDB３００から増設筐体２００への外部電源の供給そのものが停止する。このように、本実施例では、ディスクドライブ２３０の利用状況に応じて、電力消費量を段階的に節減させていくことができ、最終的には、ほぼ電力消費量を零とすることができる。
【０１４９】
図２４〜図２７は、増設筐体２００に対する外部電源の供給停止の順序を示す説明図である。図２４に示すように、各増設筐体２００内のいずれか１つ以上のディスクドライブ２３０についてそれぞれデータアクセスが発生している場合、各PDB３００のスイッチ３１０はそれぞれオン状態となっている。従って、各増設筐体２００には、それぞれ外部電源が供給される。
【０１５０】
図２５に示すように、最も利用頻度の低いデータを記憶する増設筐体２００（＃３）は、内部の各ディスクドライブ２３０へのデータアクセスが発生しにくいため、比較的早い時期に、筐体への外部電源の供給が停止されるであろう。
【０１５１】
図２６に示すように、次に利用頻度の低いデータを記憶する増設筐体２００（＃２）も、増設筐体２００（＃３）に続いて、データアクセスが途絶え、全ディスクドライブ２３０がスピンダウン状態にされる。この時点で、下位の増設筐体２００（＃３）は既に電源供給が停止されている。従って、増設筐体２００（＃２）への通電も停止させることができる。
【０１５２】
図２７に示すように、増設筐体２００（＃１）内の各ディスクドライブ２３０に対するデータアクセスが所定時間以上途絶えると、増設筐体２００（＃１）内の各ディスクドライブ２３０はそれぞれスピンダウン状態にされる。この時点で、下位の増設筐体２００（＃２，＃３）への通電が停止されているので、増設筐体２００（＃１）への外部電源の供給も停止される。
【０１５３】
このように構成される本実施例の効果では、ディスクドライブ２３０の利用状況に応じて、各増設筐体２００への外部電源の供給そのものを停止させるため、従来よりも電力消費量を低減することができる。本実施例の構成から得られる他の効果は、既に述べた通りである。
【実施例２】
【０１５４】
図２８に基づいて、本発明の第２実施例を説明する。本実施例を含む以下の各実施例は、第１実施例の変形例に該当する。本実施例では、アクセス先ドライブへのアクセスができなかった場合にのみ、電源供給開始処理を実行する。
【０１５５】
図２８は、本実施例による記憶制御装置のコントローラ１１０が実行するライト処理のフローチャートである。このフローチャート中、Ｓ７０〜Ｓ７４は、図１９に示すＳ４０〜Ｓ４４にそれぞれ対応する。従って、重複した説明を割愛し、本実施例の特徴を中心に説明する。
【０１５６】
コントローラ１１０は、アクセス先ドライブが特定されると（Ｓ７４）、アクセス先ドライブを備える増設筐体２００にライトデータを転送する（Ｓ７５）。ライトデータの書込が正常に完了したことを確認した場合（S76:YES）、コントローラ１１０は、本処理を終了する。
【０１５７】
アクセス先ドライブへのライトデータの書込みが正常に完了しなかった場合（S76:NO）、コントローラ１１０は、テーブルＴ２を用いることにより、アクセス先ドライブがスピンアップ状態であるか否かを判定する（Ｓ７７）。
【０１５８】
アクセス先ドライブがスピンダウン状態であると判定された場合（S77:NO）、コントローラ１１０は、電源供給開始処理（Ｓ１００）を実行する。アクセス先ドライブがスピンアップ状態であるにもかかわらず、ライトデータを書き込めなかった場合（S77:YES）、コントローラ１１０はエラー処理を実行する（Ｓ７９）。このエラー処理では、例えば、所定のエラーメッセージを管理端末１４に表示させる。
【０１５９】
このように構成される本実施例も前記第１実施例と同様の効果を奏する。
【実施例３】
【０１６０】
図２９に基づいて、第３実施例を説明する。本実施例では、図１９に示したライト処理と電源供給開始処理とを同一のフローチャート内で実現させる。
【０１６１】
コントローラ１１０は、ホスト１３からライトコマンドを受領すると（Ｓ２００）、ライトデータをキャッシュメモリ１１４に記憶させ（Ｓ２０１）、処理完了をホスト１３に通知する。コントローラ１１０は、テーブルＴ２を用いることにより、アクセス先ドライブの状態を確認し（Ｓ２０２）、アクセス先ドライブが動作中であるか否かを判定する（Ｓ２０３）。
【０１６２】
アクセス先ドライブが動作している場合（S203:YES）、Ｓ２１１に移る。アクセス先ドライブが動作していない場合（S203:NO）、コントローラ１１０は、アクセス先ドライブがスピンダウン状態であるか否かを判定する（Ｓ２０４）。アクセス先ドライブがスピンダウン状態の場合（S204:YES）、Ｓ２１０に移る。
【０１６３】
アクセス先ドライブがスピンダウン状態ではない場合（S204:NO）、コントローラ１１０は、電源部２２０からアクセス先ドライブへの電源供給が停止されているか否かを判定する（Ｓ２０５）。電源部２２０から直流電源が各ディスクドライブ２３０に供給されている場合（S205:YES）、Ｓ２０９に移る。
【０１６４】
電源部２２０からの直流電源の出力が停止されているわけではない場合（S205:NO）、コントローラ１１０は、アクセス先ドライブを有する対象筐体にそれぞれ接続されている各PDB３００内のスイッチ３１０をオンにする（Ｓ２０６）。コントローラ１１０は、対象筐体に隣接する上位の増設筐体２００への電源供給が停止中であるか否かを判断する（Ｓ２０７）。
【０１６５】
隣接する上位の増設筐体２００が電源供給停止中の場合（S207:YES）、コントローラ１１０は、その上位の増設筐体２００に接続されている各スイッチ３１０をそれぞれオンにして、外部電源を供給させる（Ｓ２０８）。Ｓ２０７及びＳ２０８を繰り返すことにより、基本筐体１００とアクセス先ドライブを有する対象筐体との間に位置する各増設筐体２００に順番に外部電源が供給されていき、伝達経路が形成される。
【０１６６】
隣接する上位の増設筐体２００が電源供給の停止中ではない場合（S207:NO）、コントローラ１１０は、対象筐体内の各ディスクドライブ２３０へ電源部２２０から直流電源を供給するように、制御基板２１０に指示する（Ｓ２０９）。
【０１６７】
続いて、コントローラ１１０は、アクセス先ドライブをスピンアップさせるためのスピンアップコマンドを発行し（Ｓ２１０）、アクセス先ドライブにライトデータを転送して記憶させる（Ｓ２１１）。
【０１６８】
このように構成される本実施例も前記第１実施例と同様の効果を奏する。
【実施例４】
【０１６９】
図３０〜図３２に基づいて、第４実施例を説明する。本実施例では、複数の記憶制御装置を備えるストレージシステムにおいて、１つの記憶制御装置１０００が他の記憶制御装置１１００，１２００の有する記憶領域を仮想化してホスト１３に提供する。
【０１７０】
図３０に示すストレージシステムは、複数の記憶制御装置１０００，１１００，１２００を備えている。記憶制御装置１０００は、他の各記憶制御装置１１００，１２００に接続されている接続元の記憶制御装置であり、他の各記憶制御装置１１００，１２００を管理下においている。
【０１７１】
接続元の記憶制御装置１０００は、接続先の記憶制御装置１１００，１２００がそれぞれ有する記憶領域を、記憶制御装置１０００の内部で仮想化し、それがあたかも記憶制御装置１０００の内部ボリュームであるかのように、ホスト１３に提供する。従って、接続元の記憶制御装置１０００は、各記憶制御装置１０００，１１００，１２００のシステム構成に関する情報を一元的に管理している。
【０１７２】
各記憶制御装置１０００，１１００，１２００は、それぞれ同一の基本構造を備えて構成することもできるし、それぞれ異なる構造を備えてもよい。本実施例では、記憶制御装置１０００，１１００，１２００は、前記第１実施例で述べたような構成をそれぞれ備えているものとする。
【０１７３】
接続元の記憶制御装置１０００の基本筐体１００と、接続先の各記憶制御装置１１００，１２００の各基本筐体１００とは通信経路Ｐ４を介して接続されている。この通信経路Ｐ４は、例えば、SAN等の通信ネットワークとして構成することができる。また、接続元の記憶制御装置１０００の基本筐体１００と、接続先の各記憶制御装置１１００，１２００の各PDB３００とは、信号線Ｐ５を介して接続されている。
【０１７４】
図３１は、本実施例による電源供給停止処理を示すフローチャートである。この処理は、接続元記憶制御装置１０００の基本筐体１００内のコントローラ１１０によって実行される。
【０１７５】
接続元のコントローラ１１０は、処理対象の記憶制御装置として、装置番号の最も少ない記憶制御装置１１００を選択する（Ｓ３００）。コントローラ１１０は、対象記憶制御装置１１００の有する全てのボリューム２５０について、アクセス不要であるか否かを判定する（Ｓ３０１）。
【０１７６】
記憶制御装置１１００の有する全ボリューム２５０についてアクセス不要であると判断された場合（S301:YES）、接続元のコントローラ１１０は、記憶制御装置１１００の基本筐体１００に向けて、シャットダウンコマンドを発行する（Ｓ３０２）。
【０１７７】
シャットダウンコマンドを受領した記憶制御装置１１００のコントローラ１１０は、シャットダウン処理を実行する（Ｓ３０３）。シャットダウン処理では、例えば、下位の増設筐体２００から順番に電源の供給を停止させていき、最後に基本筐体１００の動作も停止させる。
【０１７８】
接続元のコントローラ１１０は、記憶制御装置１１００に接続されている各PDB３００内の各スイッチ３１０を下位側から順番にオフさせる（Ｓ３０４）。これにより、接続先の記憶制御装置１１００の基本筐体１００及び各増設筐体２００への外部電源の供給が停止される。
【０１７９】
接続元のコントローラ１１０は、全ての接続先記憶制御装置について判断したか否かを判定する（Ｓ３０５）。未判定の記憶制御装置が存在する場合（S305:NO）、コントローラ１１０は、対象の記憶制御装置の装置番号を次の接続先記憶制御装置１２００の装置番号に変更し（Ｓ３０６）、Ｓ３０１〜Ｓ３０５を繰り返す。
【０１８０】
図３２は、電源供給を開始する場合の処理を示すフローチャートである。接続元のコントローラ１１０は、対象の記憶制御装置に接続された各PDB３００内の各スイッチ３１０を上位側から順番にオンさせる（Ｓ３１０）。
【０１８１】
接続先の記憶制御装置では、各系統のPDB３００から外部電源が供給されると、まず最初に、基本筐体１００を起動させ（Ｓ３１１）、次に、外部電源が供給された順番で、各増設筐体２００を起動させる（Ｓ３１２）。
【０１８２】
このように構成される本実施例も前記第１実施例と同様の効果を奏する。これに加えて、本実施例では、複数の記憶制御装置１０００，１１００，１２００を備えるストレージシステムにおいて、より一層、電力消費量を節減することができる。
【実施例５】
【０１８３】
図３３は、第５実施例に係るストレージシステムを示す説明図である。本実施例では、接続先の各記憶制御装置１１００，１２００の各PDB３００に電源を供給する電源装置１５の動作を、接続元記憶制御装置１０００の基本筐体１００が制御する。
【０１８４】
このように構成される本実施例も前記第４実施例と同様の効果を奏する。
【０１８５】
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。例えば、各実施例を適宜組み合わせることができる。
【図面の簡単な説明】
【０１８６】
【図１】本発明の実施形態の概念を示す説明図である。
【図２】記憶制御装置の外観を示す斜視図である。
【図３】基本筐体を前側から見た斜視図である。
【図４】基本筐体を後側から見た斜視図である。
【図５】増設筐体を前側から見た斜視図である。
【図６】増設筐体を後側から見た斜視図である。
【図７】記憶制御装置の電源供給構造を示す説明図である。
【図８】記憶制御装置の構成を簡略化して示す説明図である。
【図９】コントローラの構成を示す説明図である。
【図１０】増設筐体の構成を示す説明図である。
【図１１】制御基板の構成を示す説明図である。
【図１２】ボリュームを管理するためのテーブルを示す説明図である。
【図１３】電源供給状態を管理するためのテーブルを示す説明図である。
【図１４】データ再配置処理を示すフローチャートである。
【図１５】利用頻度に応じてデータが配置される様子を示す説明図である。
【図１６】電源供給の接続を確認するための処理を示すフローチャートである。
【図１７】各ドライブ毎に節電するための処理を示すフローチャートである。
【図１８】増設筐体毎に電源供給を停止等するための処理を示すフローチャートである。
【図１９】ライト処理を示すフローチャートである。
【図２０】リード処理を示すフローチャートである。
【図２１】電源供給を開始する場合の処理を示すフローチャートである。
【図２２】通電停止中の増設筐体を診断するための処理を示すフローチャートである。
【図２３】ディスクドライブの利用状況に応じて節電モードが段階的に変化していく様子を示す説明図である。
【図２４】PDBの各スイッチの状態が変化する様子を示す説明図である。
【図２５】図２４に続く説明図である。
【図２６】図２５に続く説明図である。
【図２７】図２６に続く説明図である。
【図２８】第２実施例に係るライト処理を示すフローチャートである。
【図２９】第３実施例に係るライト処理及び電源供給開始処理を示すフローチャートである。
【図３０】第４実施例に係る記憶制御装置が用いられるストレージシステムの全体構成を示す説明図である。
【図３１】記憶制御装置単位で電源供給を停止させる処理を示すフローチャートである。
【図３２】記憶制御装置単位で電源供給を再開させる処理を示すフローチャートである。
【図３３】第５実施例に係る記憶制御装置が用いられるストレージシステムの全体構成を示す説明図である。
【符号の説明】
【０１８７】
１…基本筐体、１Ａ…I/O処理部、１Ｂ…電源制御部、１Ｃ…システム構成情報管理部、２…増設筐体、２Ａ…制御基板、２Ｂ…ディスクドライブ、２Ｃ…筐体内電源部、２Ｄ…冷却ファン、３…電源供給回路部、３Ａ…スイッチ、４…ホスト、５…外部電源、１０…基本ラック、１１…増設ラック、１３…ホストコンピュータ、１４…管理端末、１５…電源装置、１００…基本筐体、１０１…ケーシング、１１０…コントローラ、１１１…ホストインターフェース回路、１１２…ドライブインターフェース回路、１１３…データ転送回路、１１４…キャッシュメモリ、１１５…プログラムメモリ、１１６…プロセッサ、１１７…ブリッジ、１１８…LANインターフェース、１２０…AC/DC電源部、１３０…冷却ファン、１４０…バッテリ、２００…増設筐体、２０１…ケーシング、２０２…冷却ファン、２１０…制御基板、２１１…マイクロプロセッサ部、２１１Ａ…資源管理機能、２１１Ｂ…コマンド処理機能、２１１Ｃ…電源制御機能、２１１Ｄ…冷却ファン制御機能、２１２…筐体間通信インターフェース部、２１３…制御信号出力回路、２２０…AC/DC電源部、２２１…電圧変換回路、２２２Ａ〜２２２Ｃ…出力ダイオード、２２３…出力制御スイッチ、２３０…ディスクドライブ、２４０…RAIDグループ、２５０…論理ボリューム、３００…電源分配回路部（PDB）、３１０…スイッチ、１０００，１１００，１２００…記憶制御装置
【図１】
2008090352.tif 000003
【図２】
2008090352.tif 000004
【図３】
2008090352.tif 000005
【図４】
2008090352.tif 000006
【図５】
2008090352.tif 000007
【図６】
2008090352.tif 000008
【図７】
2008090352.tif 000009
【図８】
2008090352.tif 000010
【図９】
2008090352.tif 000011
【図１０】
2008090352.tif 000012
【図１１】
2008090352.tif 000013
【図１２】
2008090352.tif 000014
【図１３】
2008090352.tif 000015
【図１４】
2008090352.tif 000016
【図１５】
2008090352.tif 000017
【図１６】
2008090352.tif 000018
【図１７】
2008090352.tif 000019
【図１８】
2008090352.tif 000020
【図１９】
2008090352.tif 000021
【図２０】
2008090352.tif 000022
【図２１】
2008090352.tif 000023
【図２２】
2008090352.tif 000024
【図２３】
2008090352.tif 000025
【図２４】
2008090352.tif 000026
【図２５】
2008090352.tif 000027
【図２６】
2008090352.tif 000028
【図２７】
2008090352.tif 000029
【図２８】
2008090352.tif 000030
【図２９】
2008090352.tif 000031
【図３０】
2008090352.tif 000032
【図３１】
2008090352.tif 000033
【図３２】
2008090352.tif 000034
【図３３】
2008090352.tif 000035
【手続補正書】
【提出日】平成18年11月28日(2006.11.28)
【手続補正１】
【補正対象書類名】図面
【補正対象項目名】図３０
【補正方法】変更
【補正の内容】
【図３０】
2008090352.tif 000036
【手続補正２】
【補正対象書類名】図面
【補正対象項目名】図３３
【補正方法】変更
【補正の内容】
【図３３】
2008090352.tif 000037