(57)【要約】　　【課題】　ディスク制御装置とディスクドライブの接続においては、ＳＣＳＩを用いたインタフェースが主流であるが、ディスクドライブが増加した場合に１本のインタフェースで１対１の接続を行う場合、現状のファイバチャネルを用いたディスクドライブでは、スイッチ接続が出来ない形式となっているので多数のインタフェースが必要となり、実装面で困難が生ずる。　　【解決手段】　ディスクドライブ４とディスクドライブインタフェース制御回路２との間にファイバチャネル・ファブリック・スイッチ制御回路３を設け、このファイバチャネル・ファブリック・スイッチ回路３内のスイッチ１８とディスクドライブとの間にプロトコル制御部１６を設ける。　　【選択図】　図３
2004094977.tif 000002
【特許請求の範囲】
【請求項１】
　データを記憶する複数のディスクドライブと、このディスクドライブ及びホス
トコンピュータからのデータの入出力を制御するディスクアレイ制御部とを有し
、このディスクアレイ制御部と前記ディスクドライブとをファイバチャネルにて
接続したディスクサブシステムにおいて、
　前記ディスクアレイ制御部と前記ディスクドライブとをスイッチ接続したディ
スクアレイシステム。　　
【請求項２】
　データを記憶する複数のディスクドライブと、このディスクドライブ及びホス
トコンピュータからのデータの入出力を制御するディスクアレイ制御部とを有す
るディスクサブシステムにおいて、
　前記ディスクドライブと前記ディスクアレイ制御部との間にスイッチとこのス
イッチの切換え制御をするスイッチ制御部を設け、前記スイッチと前記ディスク
ドライブとの間、及び／または前記ディスクアレイ制御部と前記スイッチとの間
にプロトコル制御部を設けたディスクサブシステム。
【請求項３】
　前記ディスクアレイ制御部と前記スイッチとの間、及び前記スイッチと前記デ
ィスクドライブとの間とはファイバチャネルを用いて接続したものであり、前記
スイッチはファイバチャネルファブリックスイッチである請求項２に記載のディ
スクサブシステム。
【請求項４】
　ホストコンピュータからのデータの入出力を制御するホストインタフェース制
御部と、このホストインタフェース制御部で受けたデータを一時的に格納するキ
ャッシュメモリと、前記データにパリティデータを付加するパリティデータ生成
部と、前記データ及び前記パリティデータを記憶する複数のディスクドライブと
、このディスクドライブに前記データを書き込むディスクドライブインターフェ
イスとからなるディスクアレイ制御部とを有するディスクサブシステムにおいて
、
　前記ディスクドライブインターフェイスにプロトコル制御部とスイッチを設け
、前記複数のディスクドライブをスイッチ接続したディスクサブシステム。
【請求項５】
　ホストコンピュータからのデータの入出力を制御するホストインタフェース制
御部と、このホストインタフェース制御部で受けたデータを一時的に格納するキ
ャッシュメモリと、前記データにパリティデータを付加するパリティデータ生成
部と、前記データ及び前記パリティデータを記憶する複数のディスクドライブと
、このディスクドライブに前記データを書き込むディスクドライブインターフェ
イスとからなるディスクアレイ制御部とを有するディスクサブシステムにおいて
、
　前記ディスクアレイ制御部と前記ディスクドライブとの間をファイバチャネル
を用いて接続し、前記ディスクアレイ部と前記ディスクドライブとの間に、アク
セス対象となる前記ディスクドライブのＩＤ番号検出及びファイバチャネル・プ
ロトコルの制御を行い前記ディスクドライブインタフェースと接続される第一の
プロトコル制御部と、各ディスクドライブのＩＤ番号を記憶しておりＩＤ番号に
よりスイッチを設定するスイッチ制御部と、前記ディスクドライブにこのＩＤ番
号を割り付ける前記ディスクドライブ４と接続される第二のプロトコル制御とを
備えたファブリックスイッチを設けたディスクサブシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明は、ディスクサブシステム、ディスクアレイ、ディスクドライブを内蔵
した計算機等の電子機器に関し、特にアレイディスクをファブリックスイッチ接
続し高速転送を可能とする技術に関する。
【背景技術】
【０００２】
　一般に、ディスクアレイにおいてディスク制御装置と複数のディスクドライブ
とを接続する場合には、特開平１０−１７１７４６号公報に記載のようにＳＣＳ
Ｉインタフェース、若しくはファイバチャネル・アービトレイテッドループ・ト
ポロジが利用されている。
【０００３】
　ＳＣＳＩインタフェースは、同一線路上にデータを時分割して転送する方式を
とっており、イニシエータに対するアクセスは、１伝送路上に１時刻あたり１対
１の通信を行う方式である。
【０００４】
　ファイバチャネル・アービトレイテッドループ・トポロジでは、ＳＣＳＩイン
タフェースに対して、シリアルインタフェースによりループ状にイニシエータ、
ディスクドライブを接続することができ、フレームに分割されたデータを時分割
して転送し、同時に多数デバイスの通信が行え、接続可能ディスクドライブ数も
１２６と拡張できる。
【０００５】
【特許文献１】特開平１０−１７１７４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
　今後ディスクドライブの小型化・高密度化により、より多くのディスクドライ
ブを使用することが可能となると考えられる。
【０００７】
　ＳＣＳＩインタフェースは、１伝送路上に１時刻あたり１対１の通信を行う方
式であるため同時に多数のイニシエータとディスクドライブの通信ができない。
また、接続可能なディスクドライブの数も７から１５台と少ない。そのためＳＣ
ＳＩを用いたインタフェースでドライブが増加した場合に１本のインタフェース
で１対１の接続を行おうとすると、多数のインタフェースが必要となり、実装面
で困難が生ずる。また、１つの制御回路で接続可能なディスクドライブの数が少
ないため、多数の制御回路を使用する必要が生じる。
【０００８】
　一方、ファイバチャネルを使用した場合、ディスクドライブはプロトコルが制
御装置とは異なるためにスイッチ接続が出来ず、多数のディスクドライブが同一
ループを共有するファイバチャネル・アービトレイテッドループを用いてループ
接続とせざるを得なかった。そのため、同一ループに接続されるディスクドライ
ブ数を増加すると、ディスクドライブのデータ転送速度がループの最大データ転
送速度よりも大きくなり、結果的にループの最大データ転送速度以上の効率では
転送が行えなくなりＳＣＳＩインタフェースと同程度のデータ転送速度でしか接
続できなかった。
【課題を解決するための手段】
【０００９】
　上記課題を解決するため本発明では、ディスクドライブと制御装置とをスイッ
チ接続を可能とするため、プロトコル制御部をファイバチャネル・ファブリック
・スイッチとディスクドライブとの間に設ける。
【発明の効果】
【００１０】
　本発明により、シリアルインタフェースであるファイバチャネルインタフェー
スを用い接続線数を減少させ、さらにスイッチ接続を可能とするファイバチャネ
ル・ファブリック・トポロジを用いることでディスクドライブインタフェース回
路に多数ディスクドライブを伝送性能を犠牲にすることなく接続することが可能
となる。また、各制御装置、ディスクドライブグループ毎に接続を動的に切り替
えることで、少数のディスクドライブ制御回路で多数のディスクドライブを制御
することができる。更に、ディスクドライブ障害時のデータ移行をディスクドラ
イブインタフェース制御回路とディスクドライブのデータ転送と独立して行うこ
とでシステムの信頼性を向上させることができる。
【発明を実施するための最良の形態】
【００１１】
　以下、図面を用いて本発明を適用した外部記憶装置（ディスクサブシステム）
の実施例を説明する。図１は全体図である。
【００１２】
　図に示す外部記憶装置において、Ｎ個のディスクアレイ制御回路（制御部）（
１−１）〜（１−Ｎ）（途中の１−２等は省略、以下同じ）は、上位側はホスト
コンピュータ（図示せず）に接続され、下位側はＭ個のディスクドライブインタ
ーフェイス（ディスクドライブＩ／Ｆ）制御回路（２−１）〜（２−Ｍ）を備え
ている。ディスクアレイ制御回路のハード構成の詳細は後述する。Ｍ個のファイ
バチャネル・ファブリック・スイッチ制御回路（３−１）〜（３−Ｍ）は、ファ
イバチャネル・インタフェース５によってディスクドライブを制御するディスク
ドライブインターフェイス（Ｉ／Ｆ）制御回路（２−１）〜（２−Ｍ）にそれぞ
れ接続されている。そして一つのファイバチャネル・ファブリック・スイッチ制
御回路に対してＬ個、計Ｍ×Ｌ個のディスクドライブ（４（１，１）〜４（Ｍ，
Ｌ））は、ファイバチャネル・インタフェース６によって、ファイバチャネル・
ファブリック・スイッチ制御回路（３−１）〜（３−Ｍ）と接続されている。
【００１３】
　また、各ディスクドライブインタフェース制御回路（２−１）〜（２−Ｍ）、
及びデータを格納しておくディスクドライブ４（１，１）〜４（Ｍ，Ｌ）はそれ
ぞれ個別の識別子（ＩＤ番号）をもつ。ファイバチャネル・ファブリック・スイ
ッチ制御回路（３−１）〜（３−Ｍ）は、ディスクドライブインタフェース制御
回路（２−１）〜（２−Ｍ）から接続するディスクドライブのＩＤ番号を受け取
り、対応するディスクドライブインタフェース制御回路（２−１）〜（２−Ｍ）
とディスクドライブ４（１，１）〜４（Ｍ，Ｌ）の１対１の接続を確立する。
【００１４】
　図２にディスクアレイ制御回路（１−１）〜（１−Ｎ）のハードウェア構成を
示す。上位ホストコンピュータ（図示せず）から転送されるデータは、ホストイ
ンタフェース制御部７により制御されキャッシュメモリ８に一時格納されると共
にパリティデータ生成部９によりパリティデータを付加され、データブロックと
パリティデータブロックとに分解（全体でＭ個）される。これらのデータ及びパ
リティのブロックは、それぞれ対応するインタフェースであるディスクドライブ
インタフェース制御回路（２−１）〜（２−Ｍ）によりディスクドライブグルー
プ（図示せず）に格納される。
【００１５】
　上位ホストコンピュータにデータを転送する場合は、転送するデータがキャッ
シュメモリ８に存在する場合には、そのデータをホストインタフェース制御部７
が上位ホストコンピュータに転送する。転送するデータがキャッシュメモリ８に
存在しない場合には、ディスクドライブインタフェース制御回路（２−１）〜（
２−Ｍ）がディスクドライブグループより分解されたデータを読み出し、パリテ
ィデータ生成部９で分解されたデータを結合した後にキャッシュメモリ８に一時
格納するとともにホストインタフェース制御部７が上位ホストコンピュータに転
送する。
【００１６】
　なお、以上の例はＲＡＩＤを用いた場合のデータ格納方法であり、ＲＡＩＤ方
式を用いずにデータを格納することも当然可能である。その場合にはパリティデ
ータ生成部９が存在せずに上位ホストコンピュータ（図示せず）から転送される
データは、ホストインタフェース制御部７によりキャッシュメモリ８に一時格納
されると共にディスクドライブグループ内の何れかのディスクドライブに格納さ
れ、ミラー方式の場合には、複数のディスクドライブに同一のデータを複数格納
する。読み出す際にもディスクドライブからデータを読み出し、キャッシュメモ
リ８に一時格納するとともにホストインタフェース制御部７が上位ホストコンピ
ュータに転送する。
【００１７】
　以下の例もＲＡＩＤを使用したディスクサブシステムについて説明するが、Ｒ
ＡＩＤを用いた場合に限らないことはもちろんである。
【００１８】
　図３にファイバチャネル・ファブリック・スイッチ制御回路（３−１）〜（３
−Ｍ）のハードウェア構成を示す。ディスクドライブインタフェース制御回路（
２−１）と接続されるプロトコル制御部１６（第一のプロトコル制御部）は、ア
クセス対象となるディスクドライブ４（１，１）〜４（１，Ｌ）のＩＤ番号検出
及びファイバチャネル・プロトコルの制御を行う。ディスクドライブ４（１，１
）〜４（１，Ｌ）と接続されるプロトコル制御部１６’（第二のプロトコル制御
部）はディスクドライブ４（１，１）〜４（１，Ｌ）にＩＤ番号を割り付け、ス
イッチ制御部１７に担当するディスクドライブ４（１，１）〜４（１，Ｌ）のＩ
Ｄ番号を報告する。スイッチ制御部１７は、各ディスクドライブ４（１，１）〜
４（１，Ｌ）のＩＤ番号を記憶しており、ディスクドライブインタフェース制御
回路（２−１）〜（２−Ｍ）より受領したＩＤ番号によりスイッチ１８を設定し
、１対１の接続を確立する。
【００１９】
　尚、プロトコル制御はプロトコル制御部１６’側で行うように設定してもよい
し、ホストコンピュータからのデータ転送時とホストコンピュータへデータ転送
時とや、通常のデータ転送とディスク障害時のデータ移送とでプロトコル制御部
１６とプロトコル制御部１６’とを切り換えるように設定してもよい。
【００２０】
　また、プロトコル制御部１６或いはプロトコル制御部１６’の何れか一方のみ
とし、プロトコル制御部１６の代わりにＩＤ番号検出手段を設ける、或いはプロ
トコル制御部１６’の代わりにＩＤ番号割り付け手段を設けてもよい。
【００２１】
　また、ファイバチャネル・ファブリック・スイッチを独立した装置としてでは
なく、ディスクドライブインターフェイス制御回路（２−１）〜（２−Ｍ）内に
プロトコル制御部とスイッチとを設け、直にディスクドライブ４（１，１）〜４
（１，Ｌ）と接続するようにしてもよい。
【００２２】
　図４にファイバチャネルファブリックスイッチ制御回路（３−１）〜（３−Ｍ
）の動作を示す。
【００２３】
　ディスクアレイ制御回路（１−１）は、Ｍ個に分解されたデータをディスクド
ライブグループ（１０−１）に格納する。この際、ディスクアレイ制御回路（１
−１）のＭ個のディスクドライブインタフェース制御回路（２−１）〜（２−Ｍ
）は、ファイバチャネル・ファブリック・スイッチ制御回路（３−１）〜（３−
Ｍ）に対し、ディスクドライブグループ（１０−１）に属するディスクドライブ
のＩＤ番号を送信し、スイッチの確立を行う。ファイバチャネル・ファブリック
・スイッチ制御回路（３−１）〜（３−Ｍ）内のプロトコル制御部１６（図３参
照）は、ＩＤ番号を検出し、スイッチ制御部１７にスイッチ接続の切替を要求す
る。そしてディスクドライブに合わせたプロトコル制御を行う。スイッチ制御部
１７（図３参照）はスイッチ１８（図３参照）を接続要求もとのディスクアレイ
制御回路（１−１）と接続要求先のディスクドライブグループ（１０−１）に属
するディスクドライブ４とを接続するよう切り替える。
【００２４】
　このとき、ディスクアレイ制御回路（１−１）は、ディスクドライブグループ
（１０−１）とファイバチャネル・ファブリック・スイッチ制御回路（３−１）
〜（３−Ｍ）を介して１対１で対応しているので、他のディスクアレイ制御回路
（１−Ｎ）と他のディスクドライブグループ（１０−２）は独立して他のデータ
転送を行うことが出来る。つまり、ディスクアレイ制御回路（１−Ｎ）がディス
クドライブグループ（１０−Ｌ）に対する接続の確立を行っても、ディスクアレ
イ制御回路（１−１）とディスクドライブグループ（１０−１）及びディスクア
レイ制御回路（１−Ｎ）とディスクドライブグループ（１０−Ｌ）との接続は互
いに独立して動作することができるので、それぞれのディスクアレイ制御回路及
びディスクドライブ間で可能となる最高のデータ転送速度でデータ転送を行うこ
とができる。
【００２５】
　尚、詳細は説明しないが、スイッチ制御部１７は上記のスイッチ切換えを行う
と共に、データ読み書きの際にディスクドライブが既に読み書きを出来る状態に
なったという信号を受けてスイッチ１８の接続切換えを行うことで転送時間を有
効に最大限確保することができる。
【００２６】
　図５に本発明の拡張された実施例を示す。先に示した実施例において、ファイ
バチャネル・ファブリック・スイッチ制御回路３のプロトコル制御部１６とディ
スクドライブ４とを１対１で対応させて接続していた部分を、プロトコル制御部
１６からファイバチャネル・アービトレイテッド・ループ制御回路１１を介して
複数のディスクドライブ４をループ接続するしている。この様に接続することで
、安価なディスクドライブ４を多数の接続することで大容量のディスクドライブ
を備えた場合と同等な性能にできる。この場合でも、全てのディスクドライブが
ループ接続となる訳ではなく、見かけ上はファイバチャネル・アービトレイテッ
ド・ループ制御回路１１と多数のディスクドライブ４で一つのディスクドライブ
４であるので、アクセス性能は低下することがない。
【００２７】
　また図示はしないが、ディスクドライブのアクセス速度に対し、ファイバチャ
ネルインタフェースの最大データ転送速度に充分余裕がある場合には、複数のデ
ィスクドライブ４をファイバチャネル・アービトレイテッド・ループ制御回路１
１に接続し、複数のディスクドライブを同一ループ内に接続し、ファイバチャネ
ルの最大転送レートを複数のディスクドライブ４で共有することで、アクセス性
能を低下させることなくディスクドライブ４を増加させることも可能である。
【００２８】
　図６に図５に示した実施例に用いるアービトレイテッドループ制御回路１１の
ハードウェア構成図を示す。
【００２９】
　アービトレイテッドループ制御回路１１は、ループバイパス回路１３と複数の
ディスクドライブ接続ポート１２、及びファブリックスイッチ接続ポート１５か
らなる。ディスクドライブ４からはループバイパス回路切替信号１４が出力され
、ディスクドライブ障害時にはポートをバイパスさせ、ループを切断することな
く、他の動作しているディスクドライブへ影響を与えずにディスクドライブの取
り外し、追加を行うことを可能とする。
【００３０】
　図７に本発明の他の拡張された実施例を示す。
【００３１】
　本実施例は、各ファイバチャネル・ファブリック・スイッチ制御回路（３−１
）〜（３−Ｍ）に接続されるスペアディスク制御回路１９と、このスペアディス
ク制御回路１９に接続される複数のスペアディスクドライブ（４−ａ），（４−
ｂ）を備えている。そしてファイバチャネル・ファブリック・スイッチ制御回路
３内では、故障したディスクドライブ４を含むディスクドライブグループ（図で
は４（１，２）のディスクドライブグループ）と接続しているプロトコル制御部
１６’（図３参照）は、スイッチ１８を介してスペアディスク制御回路１９と接
続しているプロトコル制御部１６’に接続される。何れかのディスクドライブが
障害を起こした場合、ディスクアレイ制御回路（１−１）〜（１−Ｎ）は、スペ
アディスクドライブ（４−ａ）または（４−ｂ）にデータの再構築を行う。
【００３２】
　特定のディスクドライブ４にエラーが多発し故障のおそれが出た場合には、エ
ラーが多発するディスクドライブ４のデータをスペアディスクドライブ（４−ａ
）または（４−ｂ）に移管させ再構築を行う。ディスクドライブ４が完全に破損
してしまいデータの移管が不可能な場合には、破損したディスクドライブ４のデ
ィスクドライブグループのデータを用いて、図２に示したキャッシュメモリ８と
パリティデータ生成部９にて破損データを再生しスペアディスクドライブ（４−
ａ）または（４−ｂ）に書き込む。
【００３３】
　或いは、スペアディスク制御回路１９が独立して行うようにしてもよい。その
ためこのスペアディスク制御回路１９内にキャッシュメモリやパリティデータ再
生部を備える。そして、ディスクドライブ４が完全に破損した場合には、残りの
ディスクドライブグループのデータをスペアディスク制御回路１９で読み込み、
破損データを再生してスペアディスクドライブ（４−ａ）または（４−ｂ）に書
き込むようにする。
【００３４】
　そのため、故障したディスクドライブ４或いは故障個所を修復するためにパリ
ティデータを含め分割されたデータを記憶した各ディスクドライブからスペアデ
ィスク制御回路１９へのアクセスと、ディスクアレイ制御回路（１−１）〜（１
−Ｎ）を介して行うディスクドライブ４（図では４（１，１）及び４（１，Ｌ）
のディスクドライブグループ）とホストコンピュータからのデータアクセスとが
独立して動作可能となることで、ホストコンピュータのデータアクセスに影響を
与えずにデータの再構築を行うことを可能とする。
【００３５】
　また、障害ディスクドライブが正常ディスクドライブと取り替えられた場合も
同様にして、スペアディスク制御回路１５がファイバチャネル・ファブリック・
スイッチ制御回路（３−１）〜（３−Ｍ）に対し、スペアディスクドライブ（４
−ａ），（４−ｂ）と、障害ディスクドライブから取り替えられた正常ディスク
ドライブと１対１の接続を行い、ディスクアレイ制御回路（１−１）〜（１−Ｎ
）とディスクドライブグループ（１０−１）〜（１０−Ｌ）（図４参照）とのア
クセスを妨げることなく、独立してデータのコピーを行うことで、ホストコンピ
ュータからのアクセスにまったく影響なく障害ディスクドライブの復旧を行うこ
とができる。
【図面の簡単な説明】
【００３６】
【図１】本発明実施例の全体図である。
【図２】ディスクアレイ制御回路の詳細図である。
【図３】ファイバチャネルファブリックスイッチ制御回路の詳細図である。
【図４】ファイバチャネルファブリックスイッチの接続図である。
【図５】ファイバチャネルファブリックスイッチとアービトレイテッドループの接続図である。
【図６】ファイバチャネルアービトレイテッドループ制御回路の詳細図である。
【図７】スペアディスク制御回路の接続図である。
【符号の説明】
【００３７】
１…ディスクアレイ制御回路、２…ディスクドライブインタフェース制御回路、
３…ファイバチャネルファブリックスイッチ制御回路、４…ディスクドライブ、
５…ファイバチャネルインタフェース、６…ファイバチャネルインタフェース、
７…ホストインタフェース制御部、８…キャッシュメモリ、９…パリティデータ
生成部、１０…ディスクドライブグループ、１１…ファイバチャネルアービトレ
イテッドループ制御回路、１２…ディスクドライブ接続ポート、１３…ループバ
イパス回路、１４…ループバイパス信号切替信号、１５…ファブリックスイッチ
接続ポート、１６…プロトコル制御部、１７…スイッチ制御部、１８…スイッチ
、１９…スペアディスク制御回路。
【図１】
2004094977.tif 000003
【図２】
2004094977.tif 000004
【図３】
2004094977.tif 000005
【図４】
2004094977.tif 000006
【図５】
2004094977.tif 000007
【図６】
2004094977.tif 000008
【図７】
2004094977.tif 000009