(57)【要約】【課題】  ファイル制御装置におけるデータの不整合を未然に回避できる、信頼性の高いファイル制御システムを提供する。【解決手段】  それぞれがホストコンピュータおよび外部記憶装置に接続され、上記ホストコンピュータの命令に従って上記外部記憶装置へのデータの書き込みおよび読み出しを制御する複数のファイル制御装置を備えたＤＭＡ転送を行うファイル制御システムであって、第１のファイル制御装置２ａおよび第２のファイル制御装置２ｂは、それぞれメモリ５ａ，５ｂと、ＭＣＨ（Ｍｅｍｏｒｙ  Ｃｏｎｔｒｏｌｌｅｒ  Ｈｕｂ）６ａ，６ｂと、ＣＰＵ７ａ，７ｂと、保守モジュール８ａ，８ｂと、ＤＭＡコントローラ９ａ，９ｂ、とを備える。【選択図】図１
2006227953.tif 000002
【特許請求の範囲】
【請求項１】
それぞれがホストコンピュータおよび外部記憶装置に接続され、前記ホストコンピュータの命令に従って前記外部記憶装置へのデータの書き込みおよび読み出しを制御する複数のファイル制御装置を備えたＤＭＡ転送を行うファイル制御システムであって、
前記複数のファイル制御装置の中の第１のファイル制御装置は、
前記外部記憶装置のデータを保持する第１のメモリと、
前記複数のファイル制御装置の中の第２のファイル制御装置に、前記第１のメモリに記憶されているデータをＤＭＡ転送するＤＭＡ手段と、
前記ＤＭＡ手段が送信するデータにおいてエラーを検出するエラー検出手段と、
前記ＤＭＡ手段によるデータ送信に際してエラーが検出された場合に、そのデータまたはそのデータに付与されたエラー検出コードを変更するデータ変更手段、とを備え、
前記第２のファイル制御装置は、
第２のメモリと、
前記第１のファイル制御装置から受信したデータについて、前記エラー検出コードにかかわるチェックを行うデータチェック手段と、
前記データチェック手段によりエラーが検出された場合、前記第１のファイル制御装置からの受信データを破棄し、前記データチェック手段によりエラーが検出されなかった場合、前記第２のメモリに前記受信データを格納するデータ処理手段、とを備える
ことを特徴とするファイル制御システム。
【請求項２】
前記第１のファイル制御装置は、前記エラー検出手段がエラーを検出した場合に前記ＤＭＡ手段に対してエラー通知を行うエラー通知手段をさらに備える
ことを特徴とする請求項１記載のファイル制御システム。
【請求項３】
前記複数のファイル制御装置の間がシリアルインタフェースによって接続されている
ことを特徴とする請求項１記載のファイル制御システム。
【請求項４】
前記ＤＭＡ手段は、前記エラー信号を受信した場合、以降のデータ送信を中止する
ことを特徴とする請求項２記載のファイル制御システム。
【請求項５】
前記データ変更手段が、前記データまたはそのデータに付与されたエラー検出コードの各ビットを反転させることによって前記データまたはそのデータに付与されたエラー検出コードを変更する
ことを特徴とする請求項１記載のファイル制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のファイル制御装置が接続されることにより構成されるファイル制御システムおよび装置に係り、さらに詳しくは、ファイル制御システム内においてファイル制御装置同士のデータ転送中、訂正不可能なエラーが発生した場合にデータの不整合を防止し、信頼性の高いファイル制御を行うための技術に関する。
【背景技術】
【０００２】
ホストコンピュータと外部記憶装置とのデータ転送を高速かつスムーズに行うために、ホストコンピュータとデータを記憶するための大容量外部記憶装置との間に、上記ホストコンピュータの命令に従って上記外部記憶装置へのデータの書き込みおよび読み出しを制御するファイル制御装置を設ける技術が知られている。ファイル制御装置内にはメモリが内蔵されており、ホストコンピュータが処理を行う度にデータの一部分をキャッシュすることによって、主記億装置と外部記憶装置との間のアクセス時間のギャップをなくす工夫がなされている。さらに、複数のファイル制御装置を接続することによって、より信頼性の高いファイル制御システム等も考案されている。
【０００３】
上記ファイル制御装置およびファイル制御システムは、外部記憶装置へのデータの書き込みおよび読み出し時に動作エラーが発生した場合に、自要素の動作を停止し、メモリの不整合が生じた場合はそれを修復することによって、データの整合性を保つようにしている（例えば、特許文献１）。
【０００４】
特許文献１には、ホストコンピュータと情報記録ディスク装置との間に接続された、ディスク装置の制御を行う制御装置において、エラー訂正回路やＤＭＡコントローラ等でデータ数エラーや照合エラー等の動作エラーが発生した場合、可及的速やかに自要素の動作を停止することのできる制御装置が開示されている。
【特許文献１】特開平３−１７２９２０号公報  「情報記録ディスク装置の制御装置」
【発明の開示】
【発明が解決しようとする課題】
【０００５】
特許文献１に示したような従来の制御装置では、自要素内でデータ数エラーや照合エラー、誤り訂正不能エラー等の動作エラーが発生した場合、可及的速やかに動作異常信号、動作エラー発生信号、自動作停止信号を順に送信し、各要素が自動作を停止する。このため、比較的早いタイミングで動作中止を行うことが可能である。
【０００６】
しかしながら、複数のファイル制御装置が接続され、複数のファイル制御装置同士が、それぞれが有するメモリを使用してデータ転送（読み込み／書き込み）を行う構成においては、送信側ファイル制御装置のデータ読み込み時に訂正不可能なエラーが発生した場合、データ受信側のファイル制御装置へエラー通知を行う手段がなく、エラーの検出時には自装置の動作停止を行うことで対応するしかない。自装置の動作停止後、自動で再起動する機能などを追加した場合でも、自動作停止のタイミングによっては、そのエラーデータが受信側ファイル制御装置に伝搬してしまう可能性がある。その際、送信側ファイル制御装置では、エラーデータを使用してエラー検出コード（ＣＲＣ，ＥＣＣ，パリティ等）を生成し、受信側ファイル制御装置へデータを送信する。受信側ファイル制御装置では、このエラー検出コードを元に判定を行うためにエラーデータとして認識されず、誤ったデータの書き込みを行ってしまう。これによって、受信側ファイル制御装置のメモリ上でデータ化けが発生する。特に、制御情報やアドレスのデータ化けが発生した場合、ある装置の故障が他の装置にまで影響を及ぼす恐れがあるという問題点があった。
【０００７】
本発明は上記問題点を解決するためになされたものであり、外部記憶装置のデータの制御を行うための、複数のファイル制御装置を含むファイル制御システムにおいて、送信側ファイル制御装置で発生したエラーデータが受信側ファイル制御装置へ伝搬するのを防止することによって、データの不整合を未然に回避できる、信頼性の高いファイル制御システムの提供を目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の一実施形態におけるファイル制御システムは、それぞれがホストコンピュータと外部記憶装置との間に設けられ、上記ホストコンピュータの命令に従って上記外部記憶装置へのデータの書き込みおよび読み出しを制御する複数のファイル制御装置を備えたＤＭＡ転送を行うファイル制御システムであって、上記複数のファイル制御装置のうち、第１のファイル制御装置は、上記外部記憶装置のデータを保持するメモリと、上記複数のファイル制御装置のうち、第２のファイル制御装置に、上記メモリに記憶されているデータをＤＭＡ転送するＤＭＡ手段と、上記ＤＭＡ手段へ送信するデータのチェックを行い、訂正不可能なエラーを検出するエラー検出手段と、上記ＤＭＡ手段によるデータ送信に際して、訂正不可能なエラーが検出された場合に、そのデータまたはそのデータに付与されたエラー検出コードを変更するデータ変更手段、とを備え、上記第２のファイル制御装置は、上記第１のファイル制御装置からＤＭＡ転送されたデータを保持するメモリと、上記第１のファイル制御装置から受信したデータについて、上記エラー検出コードにかかわるチェックを行うデータチェック手段と、上記第１のファイル制御装置から送信されたデータを受信し、上記データチェック手段によりエラーが検出された場合、受信データを破棄し、上記第１のファイル制御装置へデータ再送信要求を行うデータ処理手段、とを備える。
【０００９】
第１のファイル制御装置においてエラーが検出されると、データ変更手段によりデータまたはそのデータに付与されたエラー検出コードが変更された後にそのデータが第２のファイル制御装置へ送られる。そして、第２のファイル制御装置においては、第１のファイル制御装置からデータまたはエラー検出コードが変更されたデータを受信すると、データチェック手段によりエラーが検出されるので、その受信データをメモリに書き込むことなく破棄する。
【００１０】
上記複数のファイル制御装置の間がシリアルインタフェースによって接続されているのが好ましく、上記第１のファイル制御装置は、上記エラー検出手段が訂正不可能なエラーを検出した場合に、上記ＤＭＡ手段に対してエラー通知を行うためのエラー通知手段をさらに備えるのが好ましい。
【００１１】
好ましくは、上記第１のファイル制御装置と上記第２のファイル制御装置がデータ転送中に、上記第１のファイル制御装置の上記エラー検出手段が訂正不可能なエラーを検出した場合、上記エラー検出手段が上記エラー通知手段に対してエラー割り込み信号を送信し、上記エラー割り込み信号を受信した上記エラー通知手段が、上記ＤＭＡ手段に対してエラー通知信号を送信するようにする。
【００１２】
さらに好ましくは、上記第１のファイル制御装置と上記第２のファイル制御装置がデータ転送中に、上記第１のファイル制御装置の上記ＤＭＡ手段が上記エラー通知信号を受信した場合、上記エラー通知信号受信以降、上記ＤＭＡ手段がデータ送信を中止するようにする。
【００１３】
好ましくは、上記第１のファイル制御装置の上記データ変更手段が、上記データまたはそのデータに付与されたエラー検出コードの各ビットを反転させることによって上記データまたはそのデータに付与されたエラー検出コードを変更するようにし、上記訂正不可能なエラーが複数ビットエラーであるのが好ましい。
【００１４】
また、上記ファイル制御システムがＲＡＩＤを構成するのが好ましく、上記第１のファイル制御装置のメモリがキャッシュメモリとして使用されるのが好ましい。
【発明の効果】
【００１５】
本発明のファイル制御システムによれば、外部記憶装置のデータの制御を行うための、複数のファイル制御装置を含むファイル制御システムにおいて、データ送信側ファイル制御装置で発生した訂正不可能なエラーをデータ受信側ファイル制御装置に検出させ、データ受信側ファイル制御装置がエラーデータを書き込むのを防ぐことによって、データの不整合を未然に回避できる、信頼性の高いファイル制御システムを構築することができる。さらに、訂正不可能エラーの発生と同時にデータ送信側ファイル制御装置がデータの送出を中止することもでき、送信側ファイル制御装置で発生したエラーデータが受信側ファイル制御装置へ伝搬するのを防止することができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施形態に係るファイル制御システムについて、図面を参照しつつ説明する。なお、本明細書において、コンピュータ内でデータやプログラムを記憶するハードディスクやフレキシブルディスク、ＭＯ、ＣＤ−Ｒ、磁気テープ等の装置を外部記憶装置と記述する。また、本発明のファイル制御システムの構成としては、複数のファイル制御装置がシリアルインタフェースによって接続され、ＣＲＣを使用して誤り検出を行うシステムとする。本実施形態において、複数のファイル制御装置は、ルータを介して接続するようにしたが、直接接続するような形態としてもよい。
【００１７】
図１は、本発明の一実施形態におけるファイル制御システムの構成図である。同図は、ホストコンピュータと外部記憶装置との間に設けられ、上記ホストコンピュータの命令に従って上記外部記憶装置へのデータの書き込みおよび読み出しを制御する複数のファイル制御装置を備えたＤＭＡ転送を行うファイル制御システムである。複数のファイル制御装置はルータを介して接続されている。
【００１８】
ファイル制御システム１は、主としてファイル制御装置２ａ，２ｂ，２ｃおよび２ｄ、ルータ３によって構成される。本実施形態では、データの送受信を行う第１のファイル制御装置を２ａ、第２のファイル制御装置を２ｂとする。第１のファイル制御装置とはデータ送信側（読み出し側）ファイル制御装置を表し、第２のファイル制御装置とはデータ受信側（書き込み側）ファイル制御装置を表す。以下、ファイル制御装置２ｃおよび２ｄについての記載は省略するが、ファイル制御装置２ａまたは２ｂと同等の機能を備えているものとする。ファイル制御装置２ａ，２ｂには、それぞれファイル制御装置内のブリッジチップ１０ａ，１０ｂからデバイスコントローラ４ａ，４ｂを介して外部記憶装置１１ａ，１１ｂが接続されている。同様に、ファイル制御装置２ａ，２ｂにはブリッジチップ１０ａ，１０ｂからそれぞれホストコンピュータ１２ａおよび１２ｂが接続され、外部記憶装置１１ａおよび１１ｂへのデータ転送等の制御を行う。ブリッジチップ１０ａ，１０ｂとホストコンピュータ１２ａ，１２ｂの間は、ファイバーチャネル、ｉＳＣＳＩまたはＯＣＬＩＮＫ（Ｏｐｔｉｃａｌ  Ｃｈａｎｎｅｌ  ＬＩＮＫ）、ＦＣＬＩＮＫ（Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ  ＬＩＮＫ）等によって接続されている。また、ブリッジチップ１０ａ，１０ｂとデバイスコントローラ４ａ，４ｂの間は、ファイバーチャネルによって接続されている。
【００１９】
同図においてルータ３に接続されるファイル制御装置は４台としたが、必要に応じて８台まで増設することが可能である。第１のファイル制御装置２ａおよび第２のファイル制御装置２ｂの内部には、それぞれメモリ５ａ，５ｂ、ＭＣＨ（Ｍｅｍｏｒｙ  Ｃｏｎｔｒｏｌｌｅｒ  Ｈｕｂ）６ａ，６ｂ、ＣＰＵ７ａ，７ｂ、保守モジュール８ａ，８ｂ、および、ＤＭＡコントローラ９ａ，９ｂを備える。メモリ５ａ，５ｂとＭＣＨ６ａ，６ｂとの間は、ＤＤＲ（Ｄｏｕｂｌｅ  Ｄａｔａ  Ｒａｔｅ）２６６によって接続されている。ブリッジチップ１０ａ，１０ｂとＭＣＨ６ａ，６ｂとの間、ＭＣＨ６ａ，６ｂとＤＭＡコントローラ９ａ，９ｂとの間、ＤＭＡコントローラ９ａ，９ｂとルータ３との間、およびルータ３内における上り（ＵＰ）用または下り（ＤＮ）用ポートとスイッチ１４との間は、後述するＰＣＩ−Ｅｘｐｒｅｓｓリンク（ｘ４）によって接続されている。さらに、ファイル制御装置２ａ，２ｂとルータ３との間は、バックプレーン１３によって接続されている。
【００２０】
なお、本実施形態において、第１のファイル制御装置２ａに接続される外部記憶装置１１ａは２台とし、ミラーリング機能を有するＲＡＩＤ構成としたが、接続される外部記憶装置１１ａは、１台のみとしても、ブリッジチップ１０ａによって接続可能な台数まで増やしてもよい。また、メモリ５ａ，５ｂは、キャッシュメモリを使用することが可能である。
【００２１】
本実施形態における第１のファイル制御装置２ａが備える各機能について、以下に説明する。ＭＣＨ６ａは、メモリ５ａからデータを読み出し、ＤＭＡコントローラ９ａに送信する。データを受信したＤＭＡコントローラ９ａは、そのデータを、ルータ３を介して第２のファイル制御装置２ｂのＤＭＡコントローラ９ｂに送信する。すなわち、ＭＣＨ６ａおよびＤＭＡコントローラ９ａは、ＤＭＡ手段として動作する。
【００２２】
ＭＣＨ６ａは、メモリ５ａから読み出したデータに対して、ＥＣＣ（Ｅｒｒｏｒ−Ｃｏｒｒｅｃｔｉｎｇ  Ｃｏｄｅ）のチェックを行い、訂正不可能なエラーが検出された場合、その旨を後述する保守モジュール８ａに通知する。すなわち、ＭＣＨ６ａは、エラー検出手段として動作する。
【００２３】
ＭＣＨ６ａは、訂正不可能なエラーを検出すると、ＣＰＵ７ａに対してエラー割り込み信号を送信する。エラー割り込み信号を受信したＣＰＵ７ａは、保守モジュール８ａに対してエラー通知信号を送信する。さらにエラー通知信号を受信した保守モジュール８ａは、後述するＤＭＡコントローラ９ａに対してエラー通知信号を送信する。すなわち、ＭＣＨ６ａ、保守モジュール８ａ（およびＣＰＵ７ａ）は、エラー通知手段として動作する。
【００２４】
ＤＭＡコントローラ９ａは、エラー通知信号を受信すると、送信要求がなされているデータまたはそのデータに付与されたエラー検出コードを変更し、その変更後のデータをＤＭＡ転送する。すなわち、ＤＭＡコントローラ９ａは、データ変更手段として動作する。
【００２５】
なお、ＤＭＡコントローラ９ａは、エラー通知信号を受信した場合、そのエラー通知信号受信以降に受信したデータについて送信要求を無視し、第２のファイル制御装置２ｂへデータの送信を行わないようにすることも可能である。
【００２６】
次に、本実施形態における第２のファイル制御装置２ｂが備える各機能について、以下に説明する。ＤＭＡコントローラ９ｂは、ファイル制御装置２ａからの受信データについて、エラー検出コードに関わるチェックを行う。すなわち、ＤＭＡコントローラ９ｂは、データチェック手段として動作する。
【００２７】
また、ＤＭＡコントローラ９ｂは、第１のファイル制御装置２ａからの受信データについてエラーが検出されなければ、その受信データをＭＣＨ６ｂに渡す。これにより、この受信データは、メモリ５ｂに書き込まれる。一方、受信データについてエラーが検出されると、ＤＭＡコントローラ９ｂは、そのデータを破棄する。すなわち、ＤＭＡコントローラ９ｂは、データ処理手段として動作する。
【００２８】
ところで、チップセット間接続および汎用拡張Ｉ／Ｏ向けのインタフェース規格として、ＰＣＩ−Ｅｘｐｒｅｓｓが２００１年に公開され、ＰＣＩ−ＳＩＧ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｓｐｅｃｉａｌ  Ｉｎｔｅｒｅｓｔ  Ｇｒｏｕｐ）によって仕様が策定された。ＰＣＩ−Ｅｘｐｒｅｓｓは、パラレル転送方式を採用した現在のＰＣＩを全面的に置き換える次世代インタフェースとして期待される規格である。ＰＣＩ−Ｅｘｐｒｅｓｓでは、ポイント・ツー・ポイントのシリアル転送が採用されている。物理層は一方向あたり２本の信号線で構成され、双方向のデータ転送を行うために最小構成（１ｂｉｔシリアル転送）で４本の信号線を必要とする。この最小構成を１レーン（ｘ１）と呼び、必要に応じて２レーン（ｘ２）、４レーン（ｘ４）、８レーン（ｘ８）、１６レーン（ｘ１６）、３２レーン（ｘ３２）という具合に複数のレーンを束ねることで、求められる帯域幅の提供が可能になる構成となっている。
【００２９】
図２は、このようなＰＣＩ−Ｅｘｐｒｅｓｓを用いた一般的な装置形態を示す図である。上記のように、ＰＣＩ−Ｅｘｐｒｅｓｓは、シリアル転送が採用され、エラー検出コードとしてＣＲＣを使用する。本発明の一実施形態は、ＰＣＩ−Ｅｘｐｒｅｓｓの構成を応用し、ファイル制御システムを構築したものであるが、ＰＣＩ−Ｅｘｐｒｅｓｓと同様、シリアル転送を行い、エラー検出コードとしてＣＲＣを用いる構成であれば、本発明を適用することが可能である。
【００３０】
同図において、ＰＣＩ−Ｅｘｐｒｅｓｓの基本構成は、ＣＰＵ１５、メモリ１６、Ｒｏｏｔ  Ｃｏｍｐｌｅｘ１７、スイッチ１８、エンドポイント１９を備える。Ｒｏｏｔ  Ｃｏｍｐｌｅｘ１７は、Ｉ／Ｏ構造における最上位デバイスであり、ＣＰＵ１５およびメモリ１６サブシステムをＩ／Ｏに接続する。スイッチ１８は、３個以上のＰＣＩ−Ｅｘｐｒｅｓｓポートを有し、ポート間のパケットルーティングを行う。上り（ＵＰ）用ポートにはＲｏｏｔ  Ｃｏｍｐｌｅｘ１７が接続され、下り（ＤＮ）用ポートにはエンドポイント１９が接続される。エンドポイント１９は、Ｒｏｏｔ  Ｃｏｍｐｌｅｘ１７およびスイッチ１８と接続され、メモリ１６サブシステムをＩ／Ｏに接続する。そして、全てのデバイスが複数のシリアルバスで接続された構成となっている。
【００３１】
次に、本発明におけるファイル制御装置内の処理をさらに詳細に説明する。図３は、本発明の一実施形態におけるファイル制御システムの全体処理シーケンス図である。同図において、第１のファイル制御装置とはデータ送信側（読み出し側）ファイル制御装置を表し、第２のファイル制御装置とはデータ受信側（書き込み側）ファイル制御装置を表す。
【００３２】
最初に、通常（訂正不可能なエラーが発生しない場合）のデータ転送処理について説明する。まず、第１のファイル制御装置のＭＣＨが図示しないメモリから読み出したデータＤＭＡ＃１を、ＤＭＡコントローラのＭＣＨ側Ｉ／Ｆに対して送信する。ＭＣＨ側Ｉ／ＦがデータＤＭＡ＃１を受信すると、ＤＭＡコントローラの内部メモリに転送し、メモリにデータＤＭＡ＃１をストアする。データのストアが完了すると、メモリ制御ブロックがルータ側Ｉ／Ｆに対してデータ送信要求Ｒｅｑを発行する。データ送信要求Ｒｅｑを受信したルータ側Ｉ／Ｆは、メモリ制御ブロックに対してデータ送信応答Ａｃｋを送信する。メモリ制御ブロックが応答を受信すると、ルータ側Ｉ／Ｆが、メモリにストアされたデータＤＭＡ＃１のフェッチを開始する。データＤＭＡ＃１のフェッチが完了すると、ルータ側Ｉ／Ｆは、データＤＭＡ＃１を、ルータを介して第２のファイル制御装置のＤＭＡコントローラに対して送信する。
【００３３】
データＤＭＡ＃１を受信した第２のファイル制御装置のＤＭＡコントローラは、受信したデータＤＭＡ＃１のエラー検出コード（ＣＲＣ）のチェックを行い、エラーが検出されなければＭＣＨへ送信する。ＭＣＨは、受信したデータＤＭＡ＃１をメモリに書き込む。書き込みが完了すると、第２のファイル制御装置のＤＭＡコントローラから第１のファイル制御装置のＤＭＡコントローラへデータ送受信完了通知がなされる。最後に、データ送受信完了通知を受信した第１のファイル制御装置のＤＭＡコントローラ内のメモリ制御ブロックが、ＭＣＨへデータ送受信完了通知を送信し、処理を完了する。
【００３４】
次に、ＭＣＨがメモリのアクセス中に訂正不可能なエラーが発生した場合のデータ転送処理について説明する。ここで、訂正不可能なエラーとして検出されるのは、例えばＥＣＣによる複数ビットエラー等である。まず、第１のファイル制御装置のＭＣＨが図示しないメモリから読み出したデータＤＭＡ＃２（１）を、ＤＭＡコントローラのＭＣＨ側Ｉ／Ｆに対して送信する。これ以降のＤＭＡコントローラ内における処理は、上記通常のデータ転送の場合と同様であるので、説明を省略する。
【００３５】
ＭＣＨがメモリからデータＤＭＡ＃２（１）を読み出し中に訂正不可能なエラーの発生を検出した場合、ＭＣＨは直ちにＣＰＵに対してエラー割り込み信号を送信する。割り込みを受信したＣＰＵは、割り込み時処理、すなわち保守モジュールに対してエラー通知信号の送信を行う。エラー通知信号を受信した保守モジュールは、ＤＭＡコントローラのルータ側Ｉ／Ｆに対してエラー通知信号を送信する。
【００３６】
ＤＭＡコントローラのルータ側Ｉ／Ｆがメモリから送信データＤＭＡ＃２（１）をフェッチしている最中にエラー通知信号を受信した場合、ルータ側Ｉ／Ｆは、フェッチが完了し、データＤＭＡ＃２（１）の最後にエラー検出コード（ＣＲＣ）を付与した後、そのエラー検出コード（ＣＲＣ）のポイズニングを行ってデータを変更し、第２のファイル制御装置のＤＭＡコントローラに対して変更されたデータＤＭＡ＃２（１ｘ）を送信する。なお、本実施形態においては「ポイズニング」とは、データの最後に付与されるＣＲＣの各ビットを反転させる処理をいうものとする。ただし、本発明はこれに限定されるものではなく、データＤＭＡ＃２の最後にＣＲＣを付与した後、データＤＭＡ＃２（１）の任意の一部を変更するようにしてもよい。
【００３７】
第２のファイル制御装置のＤＭＡコントローラは、受信データについてＣＲＣチェックを実行する。ところが、エラー検出コードが変更されたデータＤＭＡ＃２（１ｘ）を受信したときは、このＣＲＣチェックにおいてエラーが検出される。そして、エラーが検出されると、その受信データを破棄するとともに、第１のファイル制御装置のルータ側Ｉ／Ｆに対してデータ再送要求を送信する。この要求に応じて、データ再送要求を受信した第１のファイル制御装置のルータ側Ｉ／Ｆは、再度エラーデータＤＭＡ＃２（１ｘ）を送信する。本実施形態においては、データ再送要求に応じる回数（リトライ回数）を３回としたが、必要に応じて変更することが可能である。最終的に、第２のファイル制御装置において再送オーバーになると、エラーと認識される。一方、第１のファイル制御装置においては、第２のファイル制御装置からのデータ送受信完了通知が受信されないため、タイムアウトとなり、ＭＣＨに対してタイムアウト割り込み信号を送信し、エラー終了となる。
【００３８】
このように、実施形態のファイル制御システムにおいては、第１のファイル制御装置２ａから第２のファイル制御装置２ｂへデータを転送する際、ＭＣＨ６ａがそのデータについてエラーを検出すると、まず、ＣＰＵ７ａに対してエラー割込みが行われる。そうすると、ＣＰＵ７ａは、保守モジュール８ａに対してエラー通知を行い、さらに、その保守モジュール８ａからＤＭＡコントローラ９ａに対してエラー通知が行われる。そして、そのエラー通知を受け取ったＤＭＡコントローラ９ａは、送信データのＣＲＣを変更することにより、送信データにエラーが発生していることを第２のファイル制御装置２ｂに認識させる。
【００３９】
なお、実施形態のファイル制御装置においては、ＭＣＨはメモリの制御を行うユニットであり、また、ＭＣＨとＤＭＡコントローラとの間がシリアルインタフェースで接続されているので、ＭＣＨ６ａからＤＭＡコントローラ９ａへ直接的にエラー通知を行うことはできない。このため、ファイル制御装置２ａにおいては、ＭＣＨ６ａによってエラーが検出されると、ＣＰＵ７ａ、保守モジュール８ａを介してＤＭＡコントローラ９ａにその旨が通知されるようになっている。
【００４０】
また、実施形態のファイル制御装置は、データ転送の高速化を図るために、メモリから読み出したデータを可能なかぎり即座に送信先のファイル制御装置へ送信する。このため、ＭＣＨ６ａによりエラーが検出された場合、ＤＭＡコントローラ９ａは、ＣＰＵ７ａおよび保守モジュール８ａを介してエラー通知を受け取る前に、すでにそのエラーを含んだデータの送信を開始している可能性がある。しかし、実施形態の手順では、送信データの最後尾に付されているＣＲＣを変更することによって、その送信データにエラーが含まれていることを送信先のファイル制御装置に認識させる。したがって、ＭＣＨ６ａによりエラーが検出された時からＤＭＡコントローラ９ａがエラー通知を受信するまでの時間を、データの送信に要する時間（例えば、ＤＭＡコントローラ内のメモリの書き込み／読み出し時間、ルータ側Ｉ／Ｆの送信時間の和）よりも短くすれば、シリアルインタフェースを採用したシステムにおいて、送信データがエラーを含んでいることを確実に送信先のファイル制御装置に認識させることができる。
【００４１】
また、実施形態のファイル制御装置は、送信データのエラーを検出すると、そのデータの送信を停止する機能も備えている。すなわち、図３に示すように、データＤＭＡ＃２（１）に続いてＭＣＨが図示しないメモリから読み出したデータＤＭＡ＃２（２）を、ＤＭＡコントローラのＭＣＨ側Ｉ／Ｆに対して送信する。ＭＣＨ側Ｉ／ＦがデータＤＭＡ＃２（２）を受信すると、ＤＭＡコントローラの内部メモリに転送し、メモリにデータＤＭＡ＃２（２）をストアする。このとき、ＤＭＡコントローラは、データＤＭＡ＃２（１）についてのエラー通知を受け取っている。この場合、ルータ側Ｉ／Ｆは、データＤＭＡ＃２（２）についてのメモリ制御ブロックからの送信要求Ｒｅｑに対して送信応答Ａｃｋを送信しない。これにより、データＤＭＡ＃２（２）は、送信されなくなる。なお、この機能は、例えば、サイズの大きいデータを分割することによりデータＤＭＡ＃２（１）、＃２（２）が得られている場合等に特に有用である。
【００４２】
以上のように、実施形態のファイル制御システムにおいては、第１のファイル制御装置で発生した訂正不可能なエラーを第２のファイル制御装置に検出させ、第２のファイル制御装置がエラーデータを書き込むのを防ぐことが可能となり、データの不整合を未然に回避できる、信頼性の高いファイル制御システムを構築することができる。
【００４３】
また、訂正不可能エラーの発生に際して第１のファイル制御装置がデータの送出を中止することもできるので、このことによっても、第１のファイル制御装置で発生したエラーデータが第２のファイル制御装置へ伝搬するのを防止する効果が期待される。
【００４４】
（付記１）  それぞれがホストコンピュータおよび外部記憶装置に接続され、前記ホストコンピュータの命令に従って前記外部記憶装置へのデータの書き込みおよび読み出しを制御する複数のファイル制御装置を備えたＤＭＡ転送を行うファイル制御システムであって、
前記複数のファイル制御装置の中の第１のファイル制御装置は、
前記外部記憶装置のデータを保持する第１のメモリと、
前記複数のファイル制御装置の中の第２のファイル制御装置に、前記第１のメモリに記憶されているデータをＤＭＡ転送するＤＭＡ手段と、
前記ＤＭＡ手段が送信するデータにおいてエラーを検出するエラー検出手段と、
前記ＤＭＡ手段によるデータ送信に際してエラーが検出された場合に、そのデータまたはそのデータに付与されたエラー検出コードを変更するデータ変更手段、とを備え、
前記第２のファイル制御装置は、
第２のメモリと、
前記第１のファイル制御装置から受信したデータについて、前記エラー検出コードにかかわるチェックを行うデータチェック手段と、
前記データチェック手段によりエラーが検出された場合、前記第１のファイル制御装置からの受信データを破棄し、前記データチェック手段によりエラーが検出されなかった場合、前記第２のメモリに前記受信データを格納するデータ処理手段、とを備える
ことを特徴とするファイル制御システム。
【００４５】
（付記２）  前記第１のファイル制御装置は、前記エラー検出手段がエラーを検出した場合に前記ＤＭＡ手段に対してエラー通知を行うエラー通知手段をさらに備える、
ことを特徴とする付記１記載のファイル制御システム。
【００４６】
（付記３）  前記複数のファイル制御装置の間がシリアルインタフェースによって接続されている
ことを特徴とする付記１記載のファイル制御システム。
【００４７】
（付記４）  前記エラー検出手段は、前記エラー検出手段がエラーを検出した場合、前記エラー通知手段に対してエラー割り込み信号を送信し、
前記エラー割り込み信号を受信した前記エラー通知手段が、前記ＤＭＡ手段に対してエラー通知信号を送信する
ことを特徴とする付記２記載のファイル制御システム。
【００４８】
（付記５）  前記ＤＭＡ手段は、前記エラー通知信号を受信した場合、以降のデータ送信を中止する
ことを特徴とする付記２記載のファイル制御システム。
【００４９】
（付記６）  前記データ変更手段が、前記データまたはそのデータに付与されたエラー検出コードの各ビットを反転させることによって前記データまたはそのデータに付与されたエラー検出コードを変更する
ことを特徴とする付記１記載のファイル制御システム。
【００５０】
（付記７）  前記エラーは、訂正不可能な複数ビットエラーである
ことを特徴とする付記１記載のファイル制御システム。
（付記８）  前記ファイル制御システムがＲＡＩＤを構成する
ことを特徴とする付記１記載のファイル制御システム。
【００５１】
（付記９）  前記第１のファイル制御装置のメモリがキャッシュメモリとして使用される
ことを特徴とする付記１記載のファイル制御システム。
【００５２】
（付記１０）  それぞれがホストコンピュータおよび外部記憶装置に接続され、前記ホストコンピュータの命令に従って前記外部記憶装置へのデータの書き込みおよび読み出しを制御する複数のファイル制御装置を備えたＤＭＡ転送を行うファイル制御システムにおいて使用されるファイル制御装置であって、
前記外部記憶装置のデータを保持するメモリと、
前記複数のファイル制御装置の中の他のファイル制御装置に、前記メモリに記憶されているデータをＤＭＡ転送するＤＭＡ手段と、
前記ＤＭＡ手段が送信するデータにおいてエラーを検出するエラー検出手段と、
前記ＤＭＡ手段によるデータ送信に際してエラーが検出された場合に、前記他のファイル制御装置にエラーを検出させるためにそのデータまたはそのデータに付与されたエラー検出コードを変更するデータ変更手段、
を備えることを特徴とするファイル制御装置。
【図面の簡単な説明】
【００５３】
【図１】本発明の一実施形態におけるファイル制御システムの構成図である。
【図２】ＰＣＩ−Ｅｘｐｒｅｓｓを用いた一般的な装置形態を示す図である。
【図３】本発明の一実施形態におけるファイル制御システムの全体処理シーケンス図である。
【符号の説明】
【００５４】
１      ファイル制御システム
２ａ      第１のファイル制御装置
２ｂ      第２のファイル制御装置
２ｃ，２ｄ      ファイル制御装置
３      ルータ
４ａ，４ｂ      デバイスコントローラ
５ａ，５ｂ      メモリ
６ａ，６ｂ      ＭＣＨ
７ａ，７ｂ      ＣＰＵ
８ａ，８ｂ      保守モジュール
９ａ，９ｂ      ＤＭＡコントローラ
１０ａ，１０ｂ      ブリッジチップ
１１ａ，１１ｂ      外部記憶装置
１２ａ，１２ｂ      ホストコンピュータ
１３      バックプレーン
１４      スイッチ
１５      ＣＰＵ
１６      メモリ
１７      Ｒｏｏｔ  Ｃｏｍｐｌｅｘ
１８      スイッチ
１９      エンドポイント
【図２】
2006227953.tif 000003
【図１】
2006227953.tif 000004
【図３】
2006227953.tif 000005