JP3555871B2 - Disk array device - Google Patents
Disk array device Download PDFInfo
- Publication number
- JP3555871B2 JP3555871B2 JP2000328201A JP2000328201A JP3555871B2 JP 3555871 B2 JP3555871 B2 JP 3555871B2 JP 2000328201 A JP2000328201 A JP 2000328201A JP 2000328201 A JP2000328201 A JP 2000328201A JP 3555871 B2 JP3555871 B2 JP 3555871B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- disk
- control unit
- cache memory
- predetermined data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、ディスクアレイ装置にかかり、特に複数のディスク媒体に対して並列にデータを読み書きし、当該読み書きされるデータの分割及び組み上げを行うディスクアレイ装置に関する。
【0002】
【従来の技術】
従来より、ディスクアレイ装置は、複数のディスク媒体を有していて、各ディスク媒体に対応した磁気ヘッドを備えている。そして、これら複数のディスク媒体には、分割されたデータが並列に記憶され、あるいは、複数のディスク媒体から既に分散されて記憶されているデータが読み出されるようになっている。このとき、分割されたデータには冗長性が与えられ、1つのディスクに障害が発生した場合にも、データを再構築することができるようになっている。
【0003】
図3に従来例におけるディスクアレイ装置100を示す。このディスクアレイ装置100は、上位ホスト200とのデータ転送を行うホストデータ制御部102と、当該上位ホスト200からの指令により所定のデータが読み書きされる複数のディスク媒体101とを備えている。そして、所定のデータが入出力されるキャッシュメモリ103及びその制御を行うメモリ制御部104と、キャッシュメモリ103に格納されているデータを複数のディスク101に対応してデータを加工するRAID制御部105と、キャッシュメモリ103と複数のディスク101とのデータ転送を行うディスクデータ制御部106と、ディスク101に読み書きされるデータを保証するデータ保証部107とを備えている。
【0004】
ここで、従来例のディスクアレイ装置100におけるディスク101へのデータの書き込み動作を説明する。まず、ホストデータ制御部102は、上位ホスト200から書き込みデータを受信し、当該データをキャッシュメモリ103に格納する。続いて、RAID制御部105は、ディスク101が構成しているRAIDの状態に従って、メモリ内のデータを加工する。例えば、書き込み時にはデータを分割する。
【0005】
続いて、データ保証部107は、誤り検出信号を含むトレーラを生成するトレーラ生成及びチェック回路108を持ち、ディスクデータ制御部106からの要求に従ってキャッシュメモリ103内のデータに対してトレーラを生成すると共に当該データに付加して、ディスクデータ制御部106に出力する。そして、ディスクデータ制御部106は、上記RAID制御部105にて分割されたデータを複数のディスク101に対して書き込みを行う。
【0006】
また、データ読み出し時には、上記処理と逆の動作を行う。すなわち、まず、ディスクデータ制御部106にてディスク101から分割されたデータが読み出される。続いて、データ保証部107にてディスクデータ制御部106が出力するデータのトレーラチェックが行われ、トレーラを削除してキャッシュメモリ103に格納される。その後、RAID制御部105にて分割されているデータが組み上げられ、キャッシュメモリ103及びホストデータ制御102を介して、上位ホスト200へと転送される。
【0007】
【発明が解決しようとする課題】
しかしながら、従来のディスクアレイ装置においては、以下のような不都合があった。すなわち、キャッシュメモリとディスクとのデータ転送中にトレーラの生成及びチェックを行うため、同時に起動するディスクとの転送用の信号数をトレーラ生成及びチェック回路数以上にすることができないという不都合が生じる。従って、ディスク媒体に対するデータの記憶再生時のデータ転送速度の向上を図ることができないという問題が生じる。
【0008】
一方、データ転送の向上を図るべく、キャッシュメモリとディスクとの転送を行うインタフェースを増加した場合には、その増加数に対応してトレーラ生成及びチェック回路が必要なる。従って、トレーラ生成及びチェック回路が増加し、装置の複雑化及び製造コストの増加という問題が生じる。
【0009】
【発明の目的】
本発明では、かかる従来例の有する不都合を改善し、特に誤り検出信号を含むトレーラの生成及びチェック動作を、ディスクに対するデータ転送とは独立して行い、同時に起動できるディスク転送数の制限を解除し、ディスクに対する記憶再生速度の向上を図ると共に、トレーラ生成及びチェック回路を削減し、製造コストの削減を図ることのできるディスクアレイ装置を提供することをその目的とする。
【0010】
【課題を解決するための手段】
そこで、本発明では、複数のディスク媒体と、これら複数のディスク媒体に所定のデータを読み書きする複数の磁気ヘッドとを備えると共に、上位ホストとデータ転送を行うホストデータ制御部と、このホストデータ制御部に接続され上位ホストにて送受信される所定のデータを一次保持するキャッシュメモリと、このキャッシュメモリを介して所定のデータを複数のディスク媒体に読み書き制御するディスクデータ制御部と、上位ホストからの指令にて複数のディスク媒体に読み書きされる所定のデータを複数のディスク媒体に対応して加工するRAID制御部と、を備えている。そして、RAID制御部の指令にて、所定のデータのディスク媒体への読み書きが正しいか否かをチェックするデータ保証部を備えている。
さらに、RAID制御部が、ホストデータ制御あるいはディスクデータ制御部にてキャッシュメモリに格納された所定のデータを、当該キャッシュメモリから取り出すと共に、この取り出した所定のデータに対してRAID制御部とデータ保証部とが作動し、RAID制御部にて加工された所定のデータ、あるいは、データ保証部にてチェックされた所定のデータを、RAID制御部がキャッシュメモリに格納する、という構成を採っている。
【0011】
このような構成にすることにより、上位ホストからの指令によりディスク媒体にデータを書き込む時には、当該書き込むデータがRAID制御部により、例えばディスク媒体の数などに対応して分割されるというように加工される。当該加工されたデータはディスク媒体に書き込まれ、その後、読み出される。そして、当該データが書き込み及び読み出しによりエラーが発生していないかどうかというチェックがデータ保証部にて実行される。このとき、データ保証部は、書き込み及び読み出し動作とは別に、RAID制御部の指令にて作動するようになっている。従って、データ保証部が作動することにより、データの信頼性の維持することができると共に、当該データ保証部の動作に関わらず独立してディスクとのデータ転送を実行することができ、データの記憶再生速度の向上を図ることができる。
【0012】
特に、例えば上位ホストからの所定のデータはキャッシュメモリに記憶され、当該所定のデータは、キャッシュメモリから取り出されてRAID制御部によるデータの加工、および、データ保証部によるデータのエラーチェックが行われ、その後、データはRAID制御部にてキャッシュメモリに再び格納される。そして、キャッシュメモリ内のデータのディスク媒体への読み書き制御はディスクデータ制御部にて実行されるため、データ保証部によるデータチェック動作から独立してディスクとのデータ転送を実行することができ、データの記憶再生速度の向上を図ることができる。
【0013】
また、データ保証部が、所定のデータに対応した誤り検出符号を生成する符号生成機能と、この誤り検出符号をディスク媒体に書き込まれる所定のデータに付加する符号付加機能と、ディスク媒体から読み出された所定のデータから誤り検出符号を削除する符号削除機能とを備えると望ましい。これにより、データ書き込み時には、符号生成機能にてデータの誤りを検出する誤り検出符号が当該書き込まれるデータに基づいて生成され、この誤り検出符号が符号付加機能にて書き込まれる所定のデータに付加される。そして、データ読み出し時には、データのエラーがチェックされると共に、符号削除機能にて誤り検出符号が削除される。従って、これらの機能がキャッシュメモリを介して作動するため、これらの動作に関わらずディスクとのデータ転送を実行することができ、データの記憶再生速度の向上を図ることができる。ここで、誤り検出符号は、例えばCRCコードを含む符号である。
【0014】
また、RAID制御部が、所定のデータがディスク媒体に書き込まれるデータである場合に当該所定のデータを分割するデータ分割機能と、所定のデータがディスク媒体から読み出されたデータである場合に当該所定のデータを組み上げるデータ組上機能とを備え、データ保証部が、分割された所定のデータに対応した誤り検出符号を生成する符号生成機能と、この誤り検出符号を分割された所定のデータに付加する符号付加機能と、データ組上機能にて組み上げられたデータから誤り検出符号を削除する符号削除機能とを備えてもよい。このようにしても、上記同様に作用し、上記目的を達成することができる。
【0015】
さらに、RAID制御部を複数設けると共に、当該各RAID制御部によるデータ保証部の使用要求の競合処理であるアービトレーションを行うアービタを備えてもよい。これにより、アービタにて使用許可が与えられたRAID制御部がデータ保証部を使用するため、複数のRAID制御部がデータ保証部を共用することができる。従って、データ保証部を増加する必要が無くなり、読み書き処理速度の向上を図りつつ、構造を複雑にすることとなく、製造コストの軽減を図ることができる。
【0016】
【発明の実施の形態】
以下、本発明の一実施形態を、図1を参照して説明する。
【0017】
図1は、本発明であるディスクアレイ装置1の構成を示すブロック図である。本発明のディスクアレイ装置1によると、複数のディスク媒体11に、分割されたデータを並列に記憶することでき、あるいは、複数のディスク媒体11から既に分散されて記憶されているデータを読み出すことができる。そして、書き込み及び読み出しされるデータには冗長性が与えられ、1つのディスク11に障害が発生した場合にも、データを再構築することができるようになっている。
【0018】
このディスクアレイ装置1は、複数のディスク媒体11と、これら複数のディスク媒体11に所定のデータを読み書きする複数の磁気ヘッド(図示せず)とを備えると共に、上位ホスト2とデータ転送を行うホストデータ制御部12と、所定のデータを一時保持するキャッシュメモリ13と、このキャッシュメモリ13の入出力を制御するメモリ制御部14と、キャッシュメモリ13を介して所定のデータを複数のディスク媒体11に対応して加工するRAID制御部15と、同様にキャッシュメモリ13を介して所定のデータを複数のディスク媒体11に読み書き制御するディスクデータ制御部16と、RAID制御部15の指令にてキャッシュメモリ13内の所定のデータのディスク媒体11への読み書きが正しいか否かをチェックするデータ保証部17とを備えている。
【0019】
以下、これを詳述する。
【0020】
ディスクアレイ装置1は、パーソナルコンピュータ等の上位ホスト2に内蔵あるいは外付けされているハードディスクといった記憶装置である。このディスクアレイ装置1は、上位ホスト2にホストインタフェース18を介して接続されている。そして、ホストインタフェース18は、例えばSCSIインタフェースである。そして、このホストインタフェース18は、ディスクアレイ装置1のホストデータ制御部12に接続されている。
【0021】
ホストデータ制御部12は、上位ホスト2からの指令により、ディスク媒体11に書き込むデータを当該上位ホスト2から受信、あるいは、ディスク媒体11から読み出したデータを当該上位ホスト2に送信するというように、当該上位ホスト2とデータ転送を行う。そして、ホストデータ制御部12は、さらにキャッシュメモリ13に接続されている。具体的には、このキャッシュメモリ13の入出力を制御するメモリ制御部14に接続されている。
【0022】
キャッシュメモリ13は、所定の容量を有するRAMであり、上位ホスト2から受信したデータ、あるいは、当該上位ホスト2に送信すべきデータを一時的に保持する。従って、上記上位ホスト2からディスク媒体11への書き込み指令がなされたときは、書き込みデータをホストデータ制御部12が受信し、ホストデータ制御部12が書き込みデータをキャッシュメモリ13に出力するようになっている。そして、出力された書き込みデータは、メモリ制御部14によりキャッシュメモリ13に記憶される。一方、上位ホスト2からディスク媒体11からの読み出し指令がなされたときは、後述するようにディスク媒体11から読み出されたデータがメモリ制御部14によりキャッシュメモリ13に記憶される。そして、当該記憶された読み出しデータがメモリ制御部14によりホストデータ制御部12に入力され、当該ホストデータ制御部12にて上位ホスト2に送信されるようになっている。
【0023】
RAID制御部15は、キャッシュメモリ13に一時保持されている書き込み及び読み出しデータを複数のディスク媒体11に対応して加工する。例えばRAID−3にて複数台のディスク装置にデータを記憶する場合には、そのパリティデータと共にデータを割り振って書き込むため、ディスク11の台数に応じて書き込みデータを分割する(データ分割機能)。また、読み出し時には、読み出しデータである分割データを組み上げ、データを復元する(データ組上機能)。この分割及び組上動作後に、当該加工されたデータは再びキャッシュメモリ13に記憶される。但し、RAID制御部15の加工動作は、上記動作に限定されるものではない。
【0024】
データ保証部17は、RAID制御部15の指令にて、キャッシュメモリ13内の書き込み及び読み出しデータがエラー無く実行されているか否かをチェックする。具体的には、データ保証部17は、分割された所定のデータに対応した誤り検出符号を生成する符号生成機能と、この誤り検出符号を分割された所定のデータに付加する符号付加機能と、データ組上機能にて組み上げられたデータから誤り検出符号を削除する符号削除機能とを備えている。
【0025】
符号生成機能は、例えば、巡回誤り検出(CRC)にてCRCコードを生成するCRC生成回路17bと、分割されたデータの管理情報(例えば、通し番号、アドレス等)を生成する付加データ生成回路17cとから成っている。ここで、上記CRC生成回路17bは、読み出しデータのCRCのチェックを、上記付加データ生成回路17cは、読み出しデータの付加データのチェックをも行う。また、符号付加機能は、上記CRCコードと付加データとのデータからなるトレーラを分割されたデータに付加するトレーラ付加回路17dから成っている。ここで、トレーラ付加回路17dは、読み出し対象であるディスクの情報から読み出す付加データの初期値を作成し、読み出す付加データの予測も行う。そして、符号削除機能は、読み出しデータのトレーラを削除するトレーラ削除回路17eから成っている。
【0026】
さらに、データ保証部17は、トレーラ検出回路17a及びトレーラ格納部17fとを備えている。トレーラ検出回路17aは、読み出しデータの上記CRCコード及び付加データを含むトレーラを検出する。そして、検出されたトレーラはトレーラ削除回路17eにて削除され、当該トレーラはトレーラ格納部17fに格納される。すなわち、トレーラ格納部17fは、所定容量を有するメモリである。ここで、トレーラ格納部17fに格納されるトレーラは、トレーラチェックの終了後は削除されるため、当該トレーラ格納部17fの容量は少なくともトレーラサイズ(例えば、8Byte)と等しい容量であれば足りる。
【0027】
また、ディスクデータ制御部16は、ディスク11に対してデータの書き込み及び読み出しを行う。すなわち、分割されたデータを、キャッシュメモリ13を介してディスク11に記憶再生している。このとき、ディスクデータ制御部16と各ディスク11とは、ディスクインタフェース19にて接続されている。
【0028】
次に、本実施形態の動作を、ディスク11へのデータの書き込み動作とディスク11からのデータの読み出し動作とに分けて説明する。
【0029】
書き込み動作の場合は、まず、上位ホスト2からデータの書き込み指令がなされると、当該上位ホスト2からの書き込みデータをホストデータ制御部12が受信し、キャッシュメモリ13に記憶を行う。続いて、RAID制御部15は、このキャッシュメモリ13に格納されているデータを当該キャッシュメモリ13から取り出し、書き込みデータが格納されうるディスク11の状態(RAID情報)に合わせて、データの加工(EXORの処理等)を行い、その後キャッシュメモリ13に格納する。また、RAID制御部15は、この加工されたデータを再びキャッシュメモリ13から取り出し、CRC生成回路17bを使用して、書き込みデータのCRCを計算する。さらに、書き込みを行うディスク11の情報から付加データの初期値を作成し、付加データ生成回路17cを使用して付加データを計算する。そして、生成されたCRCコードと付加データとを併せてトレーラとし、当該トレーラをトレーラ追加回路17dを使用して書き込みデータに付加してデータを変換し、キャッシュメモリ13に格納する。また、トレーラの追加位置はトレーラ検出回路17aの指示による。続いて、ディスクデータ制御部16は、トレーラが付加されたデータをキャッシュメモリ13から取り出し、ディスク11に転送して記憶する。
【0030】
一方、読み出し動作は、まず、ディスク11から磁気ヘッド(図示せず)によりデータが読み出され、当該読み出しデータをディスクデータ制御部16が受信しキャッシュメモリ13に格納する。続いて、RAID制御部15がキャッシュメモリ13に格納されている読み出しデータを当該キャッシュメモリ13から取り出し、トレーラ検出回路17aにて当該読み出しデータのトレーラ部分が検出される。検出されたトレーラは、トレーラ削除回路17eにて削除され、トレーラ格納部17fに格納される。また、読み出したデータにエラーが無いか否かのチェックを行うため、あらかじめ読み出したデータからCRC生成回路17bを使用してCRCコードが生成されると共に、付加データ生成回路にて、読み出しをするディスク11の情報から付加データの初期値が予測されて作成され、これらからチェック用のトレーラが作成される。そして、このチェック用のトレーラと、上記読み出しデータから削除されトレーラ格納部17fに格納されたトレーラとが比較されることにより、読み出しによるエラーの検出を行う。その後、トレーラが削除された読み出しデータは、再びキャッシュメモリ13に格納される。続いて、さらにRAID制御部15が、読み出しデータが格納されていたディスク11の状態(RAID情報)に合わせてデータの加工(EXORの処理等)を行う。そして、ホストデータ制御部12は、加工されたデータをキャッシュメモリ13から上位ホスト2に転送する。
【0031】
このようにすることにより、ディスク11への読み書きにおける誤り検出処理であるトレーラ生成及びチェック動作をメモリ上で行っているので、換言すると、RAID制御部15がキャッシュメモリからデータを取り出し、RAID制御部15あるいはデータ保証部17で誤り検出処理を行っているため、ディスク11との転送と、トレーラ生成及びチェック動作とを独立して行うことができる。従って、トレーラ生成及びチェック動作に関係なくディスク11との転送を複数同時に行うことができ、当該ディスク11への記憶再生速度の向上を図ることができる。
【0032】
さらに、RAID制御部15の一動作としてトレーラ付加及びチェック動作を追加しているので、トレーラ生成及びチェック回路を、同時に起動するディスク11との転送信号数に対応して追加することがないため、回路の削減ができ、ディスクアレイ装置1の製造コストの削減を図ることができる。
【0033】
次に、本発明の他の実施形態を、図2を参照して説明する。図2は、本発明の他の実施形態の構成を示すブロック図である。
【0034】
当該他の実施形態は、図1に示すディスクアレイ装置1とほぼ同一の構成要素を備えている。そして、図2に示すディスクアレイ装置2は、さらに、複数のRAID制御部15A,15Bを備えると共に、当該RAID制御部15A,15Bによるトレーラ生成及びチェック回路使用要求の競合処理を行うアービタ20を備えている。
【0035】
当該他の実施形態の動作を説明する。ディスク11への書き込み動作は、まず、上位ホスト2からの複数の読み書きデータを、ホストデータ制御部12が受信してキャッシュメモリ13に格納を行う。この書き込みデータごとにRAID制御部15A,15Bを使用してデータの加工、トレーラの生成を行う。また、トレーラの生成回路17を使用する要求の競合処理であるアービトレーションを行い、使用許可が与えられたRAID制御部15A,15Bがトレーラの生成回路17を使用できる。ディスクデータ制御部16はトレーラの生成及び付加が終わったデータをディスク11に送信する。
【0036】
読み出し動作は、まず、ディスクデータ制御部16が読み出しデータが格納されているディスク11からデータを取り出してキャッシュメモリ13に格納する。続いて、RAID制御部15A,15Bは、トレーラのチェック及び削除を行い加工して読み出しデータを再構築する。読み出し時も同様にトレーラのチェック回路を使用するためにアービトレーションを行う。そして、ホストデータ制御部12は再構築された読み出しデータを上位ホスト2に送信する。
【0037】
このようにすることにより、複数のRAID制御部15A,15Bによりデータ保証部17であるトレーラ生成及びチェック回路17を共用するので、当該RAID制御部15A,15Bを複数搭載してもトレーラ生成及びチェックを実行する回路17の増加を抑制することができ、ディスク11への読み書き速度の高速化と、ディスクアレイ装置1の製造コストの削減を図ることができる。さらに、本実施形態において、上位ホスト2とホストデータ制御部12とを接続するホストインタフェース18、あるいは、ディスクデータ制御部16とディスク11とを接続するディスクインタフェース19は複数接続してもよい。この場合にも、RAID制御部15A,15Bを追加するにも関わらずトレーラ生成等の回路17を増加する必要が無く、装置1内部の回路の増加を抑制することができる。
【0038】
【発明の効果】
以上説明したように、本発明のディスクアレイ装置では、上位ホストからの指令にて複数のディスク媒体に読み書きされる所定のデータを複数のディスク媒体に対応して加工するRAID制御部と、当該RAID制御部の指令にて、前記所定のデータの前記ディスク媒体への読み書きが正しいか否かをチェックするデータ保証部とを備え、RAID制御部が、ホストデータ制御あるいはディスクデータ制御部にてキャッシュメモリに格納された所定のデータを、当該キャッシュメモリから取り出すと共に、この取り出した所定のデータに対してRAID制御部とデータ保証部とが作動し、RAID制御部にて加工された所定のデータ、あるいは、データ保証部にてチェックされた所定のデータを、RAID制御部がキャッシュメモリに格納する、構成としたので、上位ホストからの指令によりディスク媒体にデータを書き込む時には、当該書き込むデータがキャッシュメモリからRAID制御部にて取り出され、当該RAID制御部により加工されると共に、当該加工されたデータに対してデータ保証部が作動して保証データが付加され、再びRAIDにてキャッシュメモリに格納され、そして、ディスク媒体に書き込まれる。また、読み出されるときには、上記同様に、RAID制御部にてデータがキャッシュメモリから取り出され、当該データが書き込み及び読み出しによりエラーが発生していないかどうかというチェックがRAID制御部の指令によりデータ保証部にて実行される。このとき、データ保証部は、書き込み及び読み出し動作とは独立して作動するようになっているため、データ保証部が作動することによりデータの信頼性を維持しつつ、データ保証部の動作に関わらず独立してディスクとのデータ転送を実行することができ、データの記憶再生速度の向上を図ることができる、という従来にない優れた効果を有する。
【図面の簡単な説明】
【図1】本発明の一実施形態の構成を示すブロック図である。
【図2】本発明の他の実施形態の構成を示すブロック図である。
【図3】従来例にかかるディスクアレイ装置の構成を示すブロック図である。
【符号の説明】
1 ディスクアレイ装置
2 上位ホスト
11 ディスク媒体
12 ホストデータ制御部
13 キャッシュメモリ
14 メモリ制御部
15,15A,15B RAID制御部
16 ディスクデータ制御部
17 データ保証部
18 ホストインタフェース
19 ディスクインタフェース
20 アービタ
17a トレーラ検出回路
17b CRC生成回路
17c 付加データ生成回路
17d トレーラ追加回路
17e トレーラ削除回路
17f トレーラ格納部[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a disk array device, and more particularly to a disk array device that reads and writes data from and to a plurality of disk media in parallel, and divides and assembles the data to be read and written.
[0002]
[Prior art]
Conventionally, a disk array device has a plurality of disk media and has a magnetic head corresponding to each disk medium. The divided data is stored in parallel in the plurality of disk media, or the data that has been stored in a distributed manner is read out from the plurality of disk media. At this time, the divided data is provided with redundancy so that the data can be reconstructed even if one disk fails.
[0003]
FIG. 3 shows a conventional disk array device 100. The disk array device 100 includes a host
[0004]
Here, an operation of writing data to the
[0005]
Subsequently, the
[0006]
At the time of data reading, an operation reverse to the above-described processing is performed. That is, first, the divided data is read from the
[0007]
[Problems to be solved by the invention]
However, the conventional disk array device has the following disadvantages. That is, since the trailer is generated and checked during the data transfer between the cache memory and the disk, there is a disadvantage that the number of signals for transfer to and from the simultaneously activated disk cannot be equal to or greater than the number of trailer generation and check circuits. Therefore, there is a problem that the data transfer speed at the time of storing and reproducing data on the disk medium cannot be improved.
[0008]
On the other hand, if the number of interfaces for transferring data between the cache memory and the disk is increased in order to improve the data transfer, a trailer generation and check circuit is required corresponding to the increased number. Therefore, the number of trailer generation and check circuits is increased, which causes a problem that the apparatus becomes complicated and the manufacturing cost increases.
[0009]
[Object of the invention]
In the present invention, the inconvenience of the conventional example is improved, and in particular, the generation and the check operation of the trailer including the error detection signal are performed independently of the data transfer to the disk, and the limitation of the number of disk transfers that can be started simultaneously is lifted. It is another object of the present invention to provide a disk array device capable of improving the storage and reproduction speed of a disk, reducing the number of trailer generation and check circuits, and reducing the manufacturing cost.
[0010]
[Means for Solving the Problems]
In view of the above, the present invention provides a host data control unit that includes a plurality of disk media, and a plurality of magnetic heads that reads and writes predetermined data on the plurality of disk media, and that performs data transfer with an upper-level host. A cache memory that is connected to the unit and temporarily holds predetermined data transmitted and received by the host, a disk data control unit that controls reading and writing of predetermined data to and from a plurality of disk media via the cache memory , and a, a RAID controller for processing the predetermined data to be read or written to a plurality of disk media at the command corresponding to the plurality of disk media. In addition, a data guarantee unit is provided for checking whether reading / writing of predetermined data to / from the disk medium is correct according to a command from the RAID control unit .
Further, the RAID control unit retrieves predetermined data stored in the cache memory by the host data control or the disk data control unit from the cache memory, and performs data assurance with the RAID control unit for the retrieved predetermined data. And the RAID control unit operates, and the RAID control unit stores predetermined data processed by the RAID control unit or predetermined data checked by the data guarantee unit in the cache memory .
[0011]
With such a configuration, when data is written to the disk medium in accordance with a command from the host, the data to be written is processed by the RAID control unit so as to be divided according to the number of disk media, for example. You. The processed data is written to a disk medium and then read. Then, the data assurance unit checks whether an error has occurred in the data due to writing and reading. At this time, the data assurance unit operates according to a command from the RAID control unit separately from the write and read operations. Therefore, by operating the data assurance unit, it is possible to maintain the reliability of data, and independently of the operation of the data assurance unit, it is possible to independently execute data transfer with the disk, and to store data. The reproduction speed can be improved.
[0012]
In particular, for example, a predetermined data from the upper host is stored in the cache memory, the predetermined data processing of the data by the RAID controller is retrieved from the cache memory, and error checking of data by the data guarantee section is performed After that, the data is stored again in the cache memory by the RAID control unit . Since the reading and writing of data in the cache memory to and from the disk medium is controlled by the disk data control unit, data transfer with the disk can be executed independently of the data check operation by the data guarantee unit. Can be improved.
[0013]
Also, the data assurance unit has a code generation function of generating an error detection code corresponding to the predetermined data, a code addition function of adding the error detection code to predetermined data written on the disk medium, and a read function of reading from the disk medium. It is desirable to have a code deletion function of deleting the error detection code from the predetermined data. Thus, at the time of data writing, an error detection code for detecting a data error is generated based on the data to be written by the code generation function, and the error detection code is added to predetermined data to be written by the code addition function. You. Then, at the time of data reading, an error of the data is checked, and the error detection code is deleted by the code deletion function. Therefore, since these functions operate via the cache memory, data transfer to and from the disk can be executed regardless of these operations, and the data storage / reproduction speed can be improved. Here, the error detection code is a code including, for example, a CRC code.
[0014]
Further, the RAID control unit performs a data division function of dividing the predetermined data when the predetermined data is data to be written on the disk medium, and a data division function for dividing the predetermined data when the predetermined data is data read from the disk medium. A data assembling function for assembling predetermined data; a data assurance unit configured to generate an error detection code corresponding to the divided predetermined data; and a code generation function to convert the error detection code into the divided predetermined data. A code addition function to add and a code deletion function to delete the error detection code from the data assembled by the data assembling function may be provided. Even in this case, the same operation as described above can be achieved, and the above object can be achieved.
[0015]
May further comprise an arbiter for performing arbitration is a competitive process request for using the data guarantee unit by plurality Rutotomoni, the respective RAID controller a RAID controller. Thus, the RAID controller to which use permission is given by the arbiter uses the data assurance unit, so that a plurality of RAID controllers can share the data assurance unit . Therefore, it is not necessary to increase the number of data guarantee units, and it is possible to reduce the manufacturing cost without increasing the complexity of the structure while improving the read / write processing speed.
[0016]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, an embodiment of the present invention will be described with reference to FIG.
[0017]
FIG. 1 is a block diagram showing a configuration of a
[0018]
The
[0019]
Hereinafter, this will be described in detail.
[0020]
The
[0021]
The host
[0022]
The
[0023]
The
[0024]
The
[0025]
The code generation function includes, for example, a
[0026]
Further, the
[0027]
The disk
[0028]
Next, the operation of the present embodiment will be described separately for the operation of writing data to the
[0029]
In the case of a write operation, first, when a data write command is issued from the upper host 2, the host
[0030]
On the other hand, in the read operation, first, data is read from the
[0031]
By doing so, the trailer generation and check operations, which are error detection processes in reading and writing to the
[0032]
Furthermore, since the trailer addition and check operations are added as one operation of the
[0033]
Next, another embodiment of the present invention will be described with reference to FIG. FIG. 2 is a block diagram showing a configuration of another embodiment of the present invention.
[0034]
This other embodiment has substantially the same components as the
[0035]
The operation of the other embodiment will be described. In the write operation on the
[0036]
In the read operation, first, the disk
[0037]
By doing so , the trailer generation and check
[0038]
【The invention's effect】
As described above, in the disk array system of the present invention, a RAID controller for processing corresponding predetermined data to be read or written to a plurality of disk media at a command from the upper level host to a plurality of disk media, at the command of the RAID control unit, e Bei a data guarantee unit for checking whether the read or write to the disk medium in a predetermined data is correct, the RAID control unit, a host data control or disk data controller The predetermined data stored in the cache memory is retrieved from the cache memory, and the RAID control unit and the data guarantee unit operate on the retrieved predetermined data, and the predetermined data processed by the RAID control unit is processed. The RAID control unit stores the data or predetermined data checked by the data guarantee unit in the cache memory. , Since a configuration, when writing data to the disk medium by a command from the upper host, the write data is retrieved by the RAID control unit from the cache memory, while being processed by the RAID control unit, which is the processed data relative data assurance section is added guarantee data operated, are stored in the cache memory again at RAID, then Ru is written to the disk medium. When the data is read, the data is fetched from the cache memory by the RAID control unit as described above, and the data assurance unit checks whether an error has occurred by writing and reading the data according to a command from the RAID control unit. Ru is run by. At this time, the data assurance unit operates independently of the write and read operations, so that the data assurance unit operates to maintain the reliability of the data and to operate independently of the operation of the data assurance unit. The data transfer to and from the disk can be performed independently and the data storage / reproduction speed can be improved.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of an embodiment of the present invention.
FIG. 2 is a block diagram showing a configuration of another embodiment of the present invention.
FIG. 3 is a block diagram showing a configuration of a conventional disk array device.
[Explanation of symbols]
1 disk array device 2
Claims (3)
前記RAID制御部の指令にて、前記所定のデータの前記ディスク媒体への読み書きが正しいか否かをチェックするデータ保証部を備え、
前記RAID制御部が、前記ホストデータ制御部あるいは前記ディスクデータ制御部にて前記キャッシュメモリに格納された前記所定のデータを、当該キャッシュメモリから取り出し、
この取り出した所定のデータに対して前記RAID制御部と前記データ保証部とが作動し、
前記RAID制御部にて加工された前記所定のデータ、あるいは、前記データ保証部にてチェックされた前記所定のデータを、前記RAID制御部が前記キャッシュメモリに格納すると共に、
前記ディスクデータ制御部が、前記RAID制御部及び前記データ保証部の動作に関係なく前記複数のディスクとのデータ転送を同時に行う、ことを特徴とするディスクアレイ装置。A plurality of disk media; a plurality of magnetic heads for reading and writing predetermined data from and to the plurality of disk media; a host data control unit for performing data transfer with an upper host; A cache memory for temporarily storing predetermined data transmitted and received by the host, a disk data control unit for controlling the reading and writing of the predetermined data to and from the plurality of disk media via the cache memory; A RAID control unit for processing predetermined data read / written to / from the plurality of disk media in accordance with the plurality of disk media,
A data assurance unit that checks whether reading or writing of the predetermined data to the disk medium is correct according to a command from the RAID control unit,
The RAID control unit, said predetermined data stored in the cache memory in the host data controller or the disk data controller, and Eject from the cache memory,
The RAID control unit and the data assurance unit operate on the extracted predetermined data,
The RAID controller stores the predetermined data processed by the RAID controller or the predetermined data checked by the data assurance unit in the cache memory ,
The disk array device, wherein the disk data control unit simultaneously performs data transfer with the plurality of disks regardless of operations of the RAID control unit and the data guarantee unit .
前記データ保証部が、前記分割された所定のデータに対応した誤り検出符号を生成する符号生成機能と、この誤り検出符号を前記分割された所定のデータに付加する符号付加機能と、前記データ組上機能にて組み上げられたデータから誤り検出符号を削除する符号削除機能とを備えたことを特徴とする請求項1記載のディスクアレイ装置。A data division function for dividing the predetermined data when the predetermined data is data to be written to the disk medium, wherein the predetermined data is data read from the disk medium; Data assembling function to assemble the predetermined data in the case,
A code generation function for generating an error detection code corresponding to the divided predetermined data, a code addition function of adding the error detection code to the divided predetermined data, 2. The disk array device according to claim 1, further comprising a code deletion function for deleting an error detection code from the data assembled by the above function.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000328201A JP3555871B2 (en) | 2000-10-27 | 2000-10-27 | Disk array device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000328201A JP3555871B2 (en) | 2000-10-27 | 2000-10-27 | Disk array device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002132459A JP2002132459A (en) | 2002-05-10 |
JP3555871B2 true JP3555871B2 (en) | 2004-08-18 |
Family
ID=18805088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000328201A Expired - Fee Related JP3555871B2 (en) | 2000-10-27 | 2000-10-27 | Disk array device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3555871B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007252415A (en) * | 2006-03-20 | 2007-10-04 | Toshiba Corp | X-ray diagnostic device |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004114116A1 (en) * | 2003-06-19 | 2004-12-29 | Fujitsu Limited | Method for write back from mirror cache in cache duplicating method |
-
2000
- 2000-10-27 JP JP2000328201A patent/JP3555871B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007252415A (en) * | 2006-03-20 | 2007-10-04 | Toshiba Corp | X-ray diagnostic device |
Also Published As
Publication number | Publication date |
---|---|
JP2002132459A (en) | 2002-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20050229033A1 (en) | Disk array controller and information processing apparatus | |
JPH0264834A (en) | Data transfer device in miniature computer system | |
EP0682314B1 (en) | Redundant disk storage system | |
CA2220974A1 (en) | Disk array system including a dual-ported staging memory and concurrent redundancy calculation capability | |
JP2005107838A (en) | Disk array controller and log information recording method | |
JP2001092600A (en) | Computer system having large capacity storage device and its operating method | |
JP3555871B2 (en) | Disk array device | |
JP3120769B2 (en) | Disk array device and control method therefor | |
JPH09218754A (en) | Data storage system | |
JP3288071B2 (en) | Information conversion processing device and information transfer control method | |
WO2001096976A2 (en) | Method of controlling data access and system thereof | |
JP2001100939A (en) | Disk array device and control method of disk array | |
JPH1091363A (en) | Parity generation system and disk array controller using the system | |
JP2002251332A (en) | Disk controller | |
JP4209108B2 (en) | Storage device control method, storage device used in this method, disk array device, and disk controller | |
JP4422319B2 (en) | Multiplexed storage controller | |
JPH06274282A (en) | Magnetic recorder | |
JP2000172570A5 (en) | Information recording device and data input / output method and reconstruction method in this device | |
JP3597550B2 (en) | Disk array device | |
JP3597766B2 (en) | Disk array device control method | |
JPH10293656A (en) | Disk storage system and duplexing method applied to the storage system | |
JPH0816327A (en) | Disk array device | |
JP2000149384A (en) | Disk array device | |
JPH0749751A (en) | Disk subsystem | |
JPH07146759A (en) | Disk array device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040427 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040507 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S633 | Written request for registration of reclamation of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313633 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090521 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100521 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110521 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110521 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120521 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120521 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130521 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |