JPH0756693A - Disk array device and disk writing controller - Google Patents

Disk array device and disk writing controller

Info

Publication number
JPH0756693A
JPH0756693A JP5201676A JP20167693A JPH0756693A JP H0756693 A JPH0756693 A JP H0756693A JP 5201676 A JP5201676 A JP 5201676A JP 20167693 A JP20167693 A JP 20167693A JP H0756693 A JPH0756693 A JP H0756693A
Authority
JP
Japan
Prior art keywords
write
data
write data
disk drive
spare
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.)
Withdrawn
Application number
JP5201676A
Other languages
Japanese (ja)
Inventor
Kiyoshi Segawa
瀬川  清
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Sord Computer Corp
Original Assignee
Toshiba Corp
Sord Computer Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp, Sord Computer Corp filed Critical Toshiba Corp
Priority to JP5201676A priority Critical patent/JPH0756693A/en
Publication of JPH0756693A publication Critical patent/JPH0756693A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To attain the efficiency and high speed of the write access of data whose size is especially small by transferring write data to a preliminary disk drive, and storing the data in it before executing a write back processing at the time of the write access. CONSTITUTION:The write cache of storing the write data from a host computer 2 in a cache memory 6 is executed. Afterwards, the write back processing of transferring the write data from the cache memory 6 to each disk drive DD0-DDN is executed. Before the write back processing is executed, the write data are transferred to and stored in a preliminary disk driver DDS by a preliminary disk DMA controller 11S. Also, at the time of the write back processing, when the transfer of the write data from memory 6 to each disk driver DD 0-DDN is imppossible, the write data stored in the preliminary disk drive DDS are read and used.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、複数のディスクドライ
ブを有し、ホストコンピュータからのデータを各ディス
クドライブに分散して格納するディスク・アレイ装置に
関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a disk array device having a plurality of disk drives and storing data from a host computer in a distributed manner in the respective disk drives.

【0002】[0002]

【従来の技術】従来、コンピュータシステムに使用され
る外部記憶装置として、RAID(Redundant
Arrays of Inexpensive Di
sks)とも呼ばれているディスク・アレイ装置が周知
である。ディスク・アレイ装置は、複数のディスクドラ
イブ(ハードディスク装置)を有し、ホストコンピュー
タから転送されたデータを各ディスクドライブに分散し
て格納する。このため、ホストコンピュータからは、あ
たかも1台のハードディスク装置をアクセスするように
見える。
2. Description of the Related Art Conventionally, RAID (Redundant) has been used as an external storage device used in a computer system.
Arrays of Inexpensive Di
Disk array devices, also called sks), are well known. The disk array device has a plurality of disk drives (hard disk devices) and stores the data transferred from the host computer in a distributed manner among the disk drives. Therefore, the host computer looks as if it accesses one hard disk device.

【0003】ディスク・アレイ装置には、レベル1〜5
の5段階に分けられた異なる方式が開発されている。例
えばレベル3の方式は、データをビット単位のインター
リービング(interleaving)により各ディ
スクドライブに分散して格納する。また、レベル4の方
式は、ホストコンピュータからのデータを分散するだけ
でなく、エラー訂正用のパリティデータを格納する専用
のディスクドライブを備えた方式である。
The disk array device has levels 1 to 5
Different schemes have been developed in five stages. For example, in the level 3 method, data is distributed and stored in each disk drive by bit-unit interleaving. The level 4 system is a system provided with a dedicated disk drive for storing parity data for error correction as well as distributing data from the host computer.

【0004】さらに、レベル5の方式はレベル4と同様
に、データをセクタ単位のインターリービングにより、
各ディスクドライブに分散して格納する。レベル5とレ
ベル4の各方式の相違は、レベル4がパリティデータの
専用ディスクドライブを備えているに対して、レベル5
がパリティデータを各ディスクドライブに分散して格納
する点にある。
Further, in the level 5 system, like the level 4, the data is interleaved in sector units,
It is distributed and stored in each disk drive. The difference between level 5 and level 4 is that level 4 has a dedicated disk drive for parity data, whereas level 5 has
Is that the parity data is distributed and stored in each disk drive.

【0005】即ち、レベル5の方式は、図8に示すよう
に、複数のディスクドライブDD0〜DD3にデータを
論理セクタアドレス0〜11に分散して格納すると共
に、パリティデータPD1〜PD4も分散して格納す
る。
That is, in the level 5 system, as shown in FIG. 8, data is distributed and stored in logical sector addresses 0 to 11 in a plurality of disk drives DD0 to DD3, and parity data PD1 to PD4 are also distributed. To store.

【0006】ここで、1セクタ(論理セクタアドレス)
には通常では512バイトのデータが格納される。ディ
スクドライブDD0〜DD3では、同一物理セクタN
(N=0〜3)に属する4つの論理アドレスセクタは1
つのパリティグループを構成する。即ち、パリティデー
タPD1〜PD4はそれぞれ、パリティグループを構成
する各論理アドレスセクタの各データと同一バイト位置
に書込まれる。例えばパリティデータPD1は、論理ア
ドレスセクタ0〜2とパリティグループを構成する。
Here, 1 sector (logical sector address)
In general, 512 bytes of data are stored in. In the disk drives DD0 to DD3, the same physical sector N
4 logical address sectors belonging to (N = 0 to 3) are 1
Configure one parity group. That is, each of the parity data PD1 to PD4 is written at the same byte position as that of each data of each logical address sector forming the parity group. For example, the parity data PD1 constitutes a parity group with the logical address sectors 0 to 2.

【0007】このようなレベル5の方式では、1台のデ
ィスクドライブ(例えばDD0)が故障しても、残りの
3台のディスクドライブ(DD1〜DD2)のデータと
パリティデータPD1を利用することにより、故障した
ディスクドライブ(例えばDD0)のデータを修復する
ことができる。したがって、単独のハードディスク装置
と比較して、高い信頼性を確保することができる。
In such a level 5 system, even if one disk drive (eg, DD0) fails, the data and parity data PD1 of the remaining three disk drives (DD1 to DD2) are used. The data of a failed disk drive (for example, DD0) can be restored. Therefore, it is possible to ensure high reliability as compared with a single hard disk device.

【0008】しかしながら、2台以上のディスクドライ
ブに故障が発生すると、前記の方法ではデータの修復は
不可能である。このため、図8に示すように、予備ディ
スクドライブDDsを用意して、1台目のディスクドラ
イブの故障が発生したときに、前記の方法でデータを修
復し、この修復データを予備ディスクドライブDDsに
コピーする方式が開発されている。この方式では、当然
ながら予備ディスクドライブDDsは、1台目のディス
クドライブに故障が発生するまでアクセスされない。
However, if two or more disk drives fail, the above method cannot restore the data. Therefore, as shown in FIG. 8, a spare disk drive DDs is prepared, and when the failure of the first disk drive occurs, the data is restored by the above method, and the restored data is used as the spare disk drive DDs. The method of copying to is being developed. In this system, the spare disk drives DDs are naturally not accessed until a failure occurs in the first disk drive.

【0009】一方、レベル5の方式はレベル3の方式と
比較して、画像データ等の転送データ量(データのサイ
ズ)が大きいデータよりも、小さいサイズのデータのア
クセスに有効である。レベル3の方式は、1セクタ分の
データをアクセスするときに、複数のディスクドライブ
の全てをアクセスする必要がある。このため、データ転
送速度は高速となるため大きいサイズのデータ転送には
都合がいいが、小さい単位のデータアクセスでは効率が
低下する。
On the other hand, the level 5 system is more effective in accessing data of a smaller size than data having a large transfer data amount (data size) such as image data, as compared with the level 3 system. In the level 3 system, it is necessary to access all of the plurality of disk drives when accessing data for one sector. For this reason, the data transfer speed becomes high, which is convenient for large-size data transfer, but the efficiency decreases in small-unit data access.

【0010】しかし、レベル5においても、小さいサイ
ズのデータをライトアクセスするときには、パリティデ
ータの書換えを必要とするため性能が低下する。このた
め、特にライトアクセス時に、キャッシュメモリを使用
するライトキャッシュ方式を採用した装置が開発されて
いる。即ち、例えば1セクタ分のライトアクセスでは、
書換える前のデータ(旧ユーザデータ)とそれに対応す
るパリティデータ(旧パリティデータ)をそれぞれリー
ドアクセスする。これらの旧ユーザデータ、旧パリティ
データおよび新たなライトデータ(新ユーザデータ)か
ら新たなパリティデータ(新パリティデータ)を生成す
る。したがって、1セクタ分のライトアクセスには、2
リードアクセス、新ユーザデータのライトアクセスおよ
び新パリティデータのライトアクセスの計4アクセスが
必要となる。
However, even in the level 5, when the small size data is write-accessed, it is necessary to rewrite the parity data, so that the performance is deteriorated. Therefore, a device employing a write cache system that uses a cache memory is being developed, especially at the time of write access. That is, for example, in write access for one sector,
The data before rewriting (old user data) and the corresponding parity data (old parity data) are read-accessed. New parity data (new parity data) is generated from these old user data, old parity data, and new write data (new user data). Therefore, for write access for one sector, 2
A total of four accesses are required: read access, new user data write access, and new parity data write access.

【0011】このような欠点を解消するために、レベル
5に前記のライトキャッシュ方式を採用した装置があ
る。この方式は、ホストコンピュータからライトデータ
(新ユーザデータ)を受信すると、キャッシュメモリに
格納してライトコマンドを終了する。この後に、ディス
クドライブのアイドル時(非アクセス時)に、ライトデ
ータと新パリティデータを指定の各セクタに書込むライ
トバック処理を実行する。
In order to solve such a drawback, there is a device which adopts the above write cache system in level 5. In this method, when write data (new user data) is received from the host computer, it is stored in the cache memory and the write command is terminated. After this, when the disk drive is idle (not accessed), write-back processing for writing the write data and the new parity data to each designated sector is executed.

【0012】[0012]

【発明が解決しようとする課題】従来のレベル5のディ
スク・アレイ装置において、ライトキャッシュ方式を採
用することにより、小さいサイズのデータのライトアク
セスを高速かつ効率的に行なうことが可能となる。しか
しながら、この方式では、キャッシュメモリからデータ
をディスクドライブに転送するライトバック処理が必要
となる。このライトバック処理の実行終了前に、キャッ
シュメモリに故障が発生したり、またはキャッシュメモ
リの電源供給が停止して、キャッシュメモリに格納され
たデータが破壊または消去するような事態が発生する可
能性がある。このような事態が発生すれば、ライトバッ
ク処理は不可能となる。このため、単にライトキャッシ
ュを採用した方式では、データ保護が不完全であり、装
置の信頼性が低いという問題がある。
In the conventional level 5 disk array device, by adopting the write cache method, it becomes possible to perform write access of small size data at high speed and efficiently. However, this method requires write back processing for transferring data from the cache memory to the disk drive. Before the completion of this write-back process, a failure may occur in the cache memory, or the power supply to the cache memory may stop and the data stored in the cache memory may be destroyed or erased. There is. If such a situation occurs, the write back process becomes impossible. For this reason, the method simply employing the write cache has a problem that the data protection is incomplete and the reliability of the device is low.

【0013】信頼性を高めるためには、キャッシュメモ
リやディスク・アレイ・コントローラの2重化、または
キャッシュメモリに不揮発性メモリや無停電電源装置を
使用するなどの方法が考えられる。しかし、このような
方法を採用すると、装置全体のコストが増大し、かつシ
ステム構成の複雑化を招く欠点がある。
In order to improve the reliability, it is conceivable to duplicate the cache memory or the disk array controller, or to use a non-volatile memory or an uninterruptible power supply for the cache memory. However, if such a method is adopted, there are drawbacks that the cost of the entire apparatus increases and the system configuration becomes complicated.

【0014】本発明の目的は、ライトキャッシュ方式を
採用したディスク・アレイ装置において、特に小さいサ
イズのデータのライトアクセスの高速かつ効率化を図る
と共に、コストの増大化やシステム構成の複雑化を招く
ことなく、データを確実に保護して装置の高信頼性を実
現することにある。
It is an object of the present invention to speed up and improve the efficiency of write access to data of a particularly small size in a disk array device adopting the write cache system, and to increase cost and complicate the system configuration. Without fail, to reliably protect the data and realize the high reliability of the device.

【0015】[0015]

【課題を解決するための手段】本発明は、例えばレベル
5のディスク・アレイ装置において、予備ディスクドラ
イブを含む複数のディスクドライブ、ライトデータを格
納するキャッシュメモリ手段およびライトアクセス時の
ライトバック処理の実行前に、ライトデータを予備ディ
スクドライブに転送して格納する予備ディスク制御手段
を有する装置である。
According to the present invention, for example, in a level 5 disk array device, a plurality of disk drives including spare disk drives, cache memory means for storing write data, and write back processing at the time of write access are provided. It is a device having a spare disk control means for transferring and storing write data to a spare disk drive before execution.

【0016】さらに、本発明はライトバック処理時に、
キャッシュメモリ手段から各ディスクドライブへのライ
トデータの転送が不可能なときに、予備ディスクドライ
ブに格納したライトデータを読出して使用するバックア
ップ制御手段を有する装置である。
Further, according to the present invention, during write back processing,
It is a device having a backup control means for reading and using the write data stored in the spare disk drive when the write data cannot be transferred from the cache memory means to each disk drive.

【0017】[0017]

【作用】本発明では、ホストコンピュータからのライト
データはキャッシュメモリ手段に格納するライトキャッ
シュが実行される。この後に、キャッシュメモリ手段か
ら各ディスクドライブにライトデータを転送するライト
バック処理が実行される。このライトバック処理の実行
前に、予備ディスク制御手段はライトデータを予備ディ
スクドライブに転送して格納する。
According to the present invention, the write cache for storing the write data from the host computer in the cache memory means is executed. After this, a write-back process of transferring write data from the cache memory means to each disk drive is executed. Before executing this write-back process, the spare disk control means transfers the write data to the spare disk drive and stores it.

【0018】さらに、本発明では、バックアップ制御手
段はライトバック処理時に、キャッシュメモリ手段から
各ディスクドライブへのライトデータの転送が不可能な
ときに、予備ディスクドライブに格納したライトデータ
を読出して使用する。
Further, in the present invention, the backup control means reads and uses the write data stored in the spare disk drive when the write data cannot be transferred from the cache memory means to each disk drive during the write back processing. To do.

【0019】[0019]

【実施例】以下図面を参照して本発明の実施例を説明す
る。図1は同実施例に係わるディスク・アレイ装置(R
AID装置)の要部を示すブロック図、図2乃至図4お
よび図7は同実施例の動作を説明するためのフローチャ
ート、図5および図6は同実施例に係わる予備ディスク
ドライブの記憶内容を説明するための概念図である。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 shows a disk array device (R
2 to 4 and 7 are flowcharts for explaining the operation of the embodiment, and FIGS. 5 and 6 show the contents stored in the spare disk drive according to the embodiment. It is a conceptual diagram for explaining.

【0020】本装置は、図1に示すように、複数のディ
スクドライブDD0〜DDNと1台の予備ディスクドラ
イブDDs、および各ディスクドライブを制御するディ
スク・アレイ・コントローラ(以下単にコントローラと
称する)1を有する。コントローラ1は、レベル5の方
式により各ディスクドライブDD0〜DDNを制御す
る。即ち、コントローラ1は、ホストコンピュータ2か
ら転送されるライトデータを、セクタ単位のインターリ
ービングにより各ディスクドライブDD0〜DDNに分
散して格納する。さらに、コントローラ1は、ライトデ
ータに対応するパリティデータを生成して各ディスクド
ライブDD0〜DDNに分散して格納する。ここで、ホ
ストコンピュータ2との間で転送するリードデータまた
はライトデータを、パリティデータと区別する場合には
ユーザデータと称する。
As shown in FIG. 1, the present apparatus includes a plurality of disk drives DD0 to DDN, one spare disk drive DDs, and a disk array controller (hereinafter simply referred to as controller) 1 for controlling each disk drive. Have. The controller 1 controls the disk drives DD0 to DDN according to the level 5 method. That is, the controller 1 stores the write data transferred from the host computer 2 in a distributed manner in each of the disk drives DD0 to DDN by interleaving in sector units. Further, the controller 1 generates parity data corresponding to the write data and stores it in a distributed manner in each of the disk drives DD0 to DDN. Here, read data or write data transferred to and from the host computer 2 is referred to as user data when distinguished from parity data.

【0021】コントローラ1は、マイクロプロセッサ
(CPU)3、読出し専用メモリ(ROM)4、リード
/ライトメモリ(RAM)5、キャッシュメモリ6、パ
リティ生成回路7および内部バス8を有する。CPU3
は、ROM4に予め格納されたプログラムにより、各デ
ィスクドライブDD0〜DDNのリード/ライト制御、
本発明に係わるライトバック処理およびバックアップ処
理を実行する。RAM5はCPU3のワークメモリとし
て使用される。キャッシュメモリ6は、リード/ライト
データを一時的に格納するための高速バッファメモリで
ある。パリティ生成回路7は、ホストコンピュータ2か
らのライトデータに対応するパリティデータを生成する
ための回路である。
The controller 1 has a microprocessor (CPU) 3, a read only memory (ROM) 4, a read / write memory (RAM) 5, a cache memory 6, a parity generation circuit 7 and an internal bus 8. CPU3
Read / write control of each disk drive DD0 to DDN by a program stored in advance in the ROM 4,
Write back processing and backup processing according to the present invention are executed. The RAM 5 is used as a work memory for the CPU 3. The cache memory 6 is a high speed buffer memory for temporarily storing read / write data. The parity generation circuit 7 is a circuit for generating parity data corresponding to the write data from the host computer 2.

【0022】さらに、コントローラ1は、ホストDMA
コントローラ(ホストDMAC)9、インターフェース
10、ディスクDMAコントローラ(ディスクDMA
C)110〜11N、インターフェース120〜12
N、予備ディスクDMAコントローラ(予備DMAC)
11sおよびインターフェース12sを有する。ホスト
DMAC9は、ホストバス13と内部バス8間のデータ
転送を制御し、本発明に関係するライトアクセス時にホ
ストバス13からのライトデータをキャッシュメモリ6
に転送する。インターフェース10はホストバス13に
接続されて、ホストコンピュータ2とのデータ交換を実
行する。
Further, the controller 1 is a host DMA.
Controller (host DMAC) 9, interface 10, disk DMA controller (disk DMA
C) 110-11N, interfaces 120-12
N, spare disk DMA controller (spare DMAC)
11s and interface 12s. The host DMAC 9 controls data transfer between the host bus 13 and the internal bus 8 and writes write data from the host bus 13 to the cache memory 6 at the time of write access related to the present invention.
Transfer to. The interface 10 is connected to the host bus 13 and exchanges data with the host computer 2.

【0023】ディスクDMAC110〜11Nはそれぞ
れのインターフェース120〜12Nを介して、各ディ
スクドライブDD0〜DDNと内部バス8との間のデー
タ転送を制御する。予備DMAC11sはインターフェ
ース12sを介して、予備ディスクドライブDDsと内
部バス8との間のデータ転送を制御する。
The disk DMACs 110 to 11N control data transfer between the disk drives DD0 to DDN and the internal bus 8 via the respective interfaces 120 to 12N. The spare DMAC 11s controls data transfer between the spare disk drive DDs and the internal bus 8 via the interface 12s.

【0024】次に、同実施例の動作を説明する。 (基本動作)まず、図2のフローチャートを参照して、
レベル5のディスク・アレイ装置の基本的動作を説明す
る。ホストコンピュータ(ホストCPU)2からリード
/ライト(R/W)コマンドがホストバス13を介して
転送されると、ホストDMAC9は内部バス8を通じて
R/WコマンドをRAM5に転送する(ステップS1,
S2)。CPU3は、ホストCPU2からのR/Wコマ
ンドを解読してディスクコマンドに変換する(ステップ
S3)。ディスクコマンドは、各ディスクドライブDD
0〜DDNのリード/ライト制御を実行するためのコマ
ンドである。
Next, the operation of the embodiment will be described. (Basic operation) First, referring to the flowchart of FIG.
The basic operation of the level 5 disk array device will be described. When a read / write (R / W) command is transferred from the host computer (host CPU) 2 via the host bus 13, the host DMAC 9 transfers the R / W command to the RAM 5 via the internal bus 8 (step S1,
S2). The CPU 3 decodes the R / W command from the host CPU 2 and converts it into a disk command (step S3). Disc command is for each disc drive DD
This is a command for executing read / write control of 0 to DDN.

【0025】CPU3は変換したディスクコマンドをR
AM5に格納する。ディスクDMAC110〜11N
は、RAM5からリード/ライト動作を指示するディス
クコマンドを各ディスクドライブDD0〜DDNに転送
する。 (リードアクセス)ディスクコマンドがリードコマンド
であれば(ステップS4のYES)、ディスクDMAC
110〜11Nはリードコマンドを各ディスクドライブ
DD0〜DDNに転送する(ステップS6)。各ディス
クドライブDD0〜DDNは、指定された論理セクタア
ドレスのデータを読出すリードアクセスを実行する(ス
テップS7)。ディスクDMAC110〜11Nは、読
出したリードデータをキャッシュメモリ6に転送する
(ステップS8)。
The CPU 3 converts the converted disk command into R
Store in AM5. Disc DMAC110-11N
Transfers a disk command instructing a read / write operation from the RAM 5 to each of the disk drives DD0 to DDN. (Read access) If the disk command is a read command (YES in step S4), the disk DMAC
110 to 11N transfer the read command to each of the disk drives DD0 to DDN (step S6). Each of the disk drives DD0 to DDN executes a read access for reading the data of the designated logical sector address (step S7). The disks DMAC110 to 11N transfer the read read data to the cache memory 6 (step S8).

【0026】ホストDMAC9は、転送順序をチェック
しながら、キャッシュメモリ6に格納されたリードデー
タをインターフェース10を介してホストCPU2に転
送する(ステップS9)。ここで、例えばディスクドラ
イブDD0のディスクにディフェクトが存在したり、デ
ータの破壊が発生したりして、データの読出し動作が不
可能な場合には、CPU3はデータの修復処理を実行す
る(ステップS10のNO,S11)。即ち、CPU3
は、ディスクDMAC110を介して、リードできない
データの同一パリティグループに属するユーザデータと
パリティデータを読出し、パリティ計算に基づいて元の
データを修復してキャッシュメモリ6に格納する。ホス
トDMAC9は、キャッシュメモリ6から修復したデー
タをリードデータとしてホストCPU2に転送する。C
PU3は、正常にリードコマンドが終了すると、正常終
了ステータスをホストCPU2に送信する。
The host DMAC 9 transfers the read data stored in the cache memory 6 to the host CPU 2 via the interface 10 while checking the transfer order (step S9). Here, if the data read operation is impossible due to, for example, a defect on the disk of the disk drive DD0 or data destruction, the CPU 3 executes a data restoration process (step S10). No, S11). That is, CPU3
Reads the user data and the parity data belonging to the same parity group of the unreadable data via the disk DMAC 110, restores the original data based on the parity calculation, and stores it in the cache memory 6. The host DMAC 9 transfers the data restored from the cache memory 6 to the host CPU 2 as read data. C
When the read command ends normally, the PU 3 sends a normal end status to the host CPU 2.

【0027】CPU3は、前記のように例えばディスク
ドライブDD0に障害が発生すると、ディフェクトの交
替処理を実行したり、または故障したディスクドライブ
DD0の代わりに予備ディスクドライブDDsを代替す
る。この代替処理では、故障したディスクドライブDD
0に格納した全データを修復して、予備ディスクドライ
ブDDsに格納する。以後、CPU3は予備ディスクド
ライブDDsを正規のディスクドライブDD0として使
用する。
As described above, for example, when a failure occurs in the disk drive DD0, the CPU 3 executes a defect replacement process or substitutes the spare disk drive DDs for the failed disk drive DD0. In this alternative process, the failed disk drive DD
All data stored in 0 are restored and stored in the spare disk drive DDs. After that, the CPU 3 uses the spare disk drive DDs as the regular disk drive DD0.

【0028】ホストCPU2からのコマンドがライトコ
マンドであれば(ステップS4のNO)、CPU3は各
ディスクドライブDD0〜DDNに対するライトアクセ
スを実行する(ステップS5)。同実施例では、ホスト
DMAC9は、ホストCPU2からのライトデータをキ
ャッシュメモリ6に格納するライトキャッシュを実行す
る。
If the command from the host CPU 2 is a write command (NO in step S4), the CPU 3 executes write access to each of the disk drives DD0 to DDN (step S5). In this embodiment, the host DMAC 9 executes write cache for storing the write data from the host CPU 2 in the cache memory 6.

【0029】以下図3のフローチャートを参照して、同
実施例に係わるライトアクセスの動作を説明する。同実
施例では、CPU3はライトデータのサイズを判定し、
比較的大きいサイズのライトデータあれば、通常のライ
トアクセス動作を実行する。また、比較的小さいサイズ
のライトデータあれば、本発明に係わるライトアクセス
動作を実行する。
The write access operation according to this embodiment will be described below with reference to the flowchart of FIG. In the embodiment, the CPU 3 determines the size of write data,
If the write data has a relatively large size, a normal write access operation is executed. If the write data has a relatively small size, the write access operation according to the present invention is executed.

【0030】即ち、CPU3は、ホストDMAC9によ
り転送されたライトコマンドにより、ライトデータの転
送データ量を認識して、ライトデータのサイズを判定す
る(ステップS12)。このとき、CPU3はキャッシ
ュメモリ6の使用可能な格納容量も検出する。 (大きいサイズのライトアクセス)ライトデータが例え
ば画像データのように大きいサイズのデータであれば
(ステップS13のNO)、ホストDMAC9は、ホス
トCPU2からのライトデータをキャッシュメモリ6に
転送する(ステップS14)。CPU3は、パリティ生
成回路7を使用して、ライトデータに対応するパリティ
データを生成してキャッシュメモリ6に格納する(ステ
ップS15)。即ち、CPU3は、ライトデータの書換
え対象である旧ユーザデータと旧パリティデータを読出
し、これらの旧データに基づいて新たなパリティデータ
を生成する。この場合、キャッシュメモリ6は単なるバ
ッファメモリとして使用される。
That is, the CPU 3 recognizes the transfer data amount of the write data by the write command transferred by the host DMAC 9, and determines the size of the write data (step S12). At this time, the CPU 3 also detects the usable storage capacity of the cache memory 6. (Large Size Write Access) If the write data is large size data such as image data (NO in step S13), the host DMAC 9 transfers the write data from the host CPU 2 to the cache memory 6 (step S14). ). The CPU 3 uses the parity generation circuit 7 to generate parity data corresponding to the write data and stores it in the cache memory 6 (step S15). That is, the CPU 3 reads the old user data and the old parity data, which are rewrite targets of the write data, and generates new parity data based on these old data. In this case, the cache memory 6 is simply used as a buffer memory.

【0031】ディスクDMAC110〜11Nは、キャ
ッシュメモリ6からライトデータと新パリティデータ
を、各ディスクドライブDD0〜DDNに転送する。各
ディスクドライブDD0〜DDNは、ライトデータと新
パリティデータを、ディスクコマンドにより指定された
論理セクタアドレスに格納する(ステップS17)。C
PU3は、各ディスクドライブDD0〜DDNの全てが
正常にライトコマンドを終了すると、正常終了ステータ
スをホストCPU2を送信する。
The disk DMACs 110 to 11N transfer write data and new parity data from the cache memory 6 to the disk drives DD0 to DDN. Each of the disk drives DD0 to DDN stores the write data and the new parity data in the logical sector address designated by the disk command (step S17). C
When all the disk drives DD0 to DDN have normally completed the write command, the PU 3 sends a normal end status to the host CPU 2.

【0032】このようなライトアクセス時においても、
ディスクドライブDD0〜DDNに障害が発生すると、
前記のリードアクセスの場合と同様に、CPU3はディ
フェクトの交替処理を実行したり、または故障したディ
スクドライブの代わりに予備ディスクドライブDDsを
代替する。この代替処理では、故障したディスクドライ
ブDD0に格納した全データを修復して、予備ディスク
ドライブDDsに格納する。以後、CPU3は予備ディ
スクドライブDDsを正規のディスクドライブとして使
用する。 (小さいサイズのライトアクセス)ライトデータが小さ
いサイズのデータであれば(ステップS13のYE
S)、ホストDMAC9は、ホストCPU2からのライ
トデータをキャッシュメモリ6に転送する(ステップS
18)。次に、本発明では、予備DMAC11sはイン
ターフェース12sを介して、キャッシュメモリ6に格
納されたライトデータを予備ディスクドライブDDsに
転送する(ステップS19)。これにより、予備ディス
クドライブDDsはライトデータを格納し、バックアッ
プすることになる(ステップS20)。このとき、予備
DMAC11sは、ホストDMAC9により転送される
ライトデータをそのまま予備ディスクドライブDDsに
転送してもよい。
Even during such a write access,
When a failure occurs in the disk drives DD0 to DDN,
Similar to the case of the read access described above, the CPU 3 executes the defect replacement process or substitutes the spare disk drive DDs for the failed disk drive. In this alternative process, all data stored in the failed disk drive DD0 is restored and stored in the spare disk drive DDs. After that, the CPU 3 uses the spare disk drive DDs as a regular disk drive. (Small size write access) If the write data is small size data (YE in step S13)
S), the host DMAC 9 transfers the write data from the host CPU 2 to the cache memory 6 (step S).
18). Next, in the present invention, the spare DMAC 11s transfers the write data stored in the cache memory 6 to the spare disk drive DDs via the interface 12s (step S19). As a result, the spare disk drive DDs stores the write data and backs it up (step S20). At this time, the spare DMAC 11s may directly transfer the write data transferred by the host DMAC 9 to the spare disk drive DDs.

【0033】この後、CPU3は、各ディスクドライブ
DD0〜DDNのアイドル時(非アクセス時)に、バッ
クグラウンドジョブにより、キャッシュメモリ6に格納
されたライトデータを各ディスクドライブDD0〜DD
Nに格納するライトバック処理を実行する(ステップS
21)。
After that, the CPU 3 transfers the write data stored in the cache memory 6 to each of the disk drives DD0 to DD by a background job when the disk drives DD0 to DDN are idle (non-access).
Execute write back processing to be stored in N (step S
21).

【0034】ライトバック処理では、図4に示すよう
に、CPU3は、パリティ生成回路7を使用して、ライ
トデータに対応するパリティデータを生成してキャッシ
ュメモリ6に格納する(ステップS22)。ディスクD
MAC110〜11Nは、キャッシュメモリ6からライ
トデータと新パリティデータを、各ディスクドライブD
D0〜DDNに転送する(ステップS23)。各ディス
クドライブDD0〜DDNは、ライトデータと新パリテ
ィデータを、ディスクコマンドにより指定された論理セ
クタアドレスに格納する(ステップS24)。
In the write-back process, as shown in FIG. 4, the CPU 3 uses the parity generation circuit 7 to generate parity data corresponding to the write data and store it in the cache memory 6 (step S22). Disk D
The MACs 110 to 11N send write data and new parity data from the cache memory 6 to each disk drive D.
The data is transferred to D0 to DDN (step S23). Each of the disk drives DD0 to DDN stores the write data and the new parity data at the logical sector address designated by the disk command (step S24).

【0035】CPU3は、各ディスクドライブDD0〜
DDNの全てが正常にライトコマンドを終了すると、正
常終了ステータスをホストCPU2を送信する(ステッ
プS25のYES)。このようなライトバック処理が正
常に終了するまで、予備ディスクドライブDDsにはラ
イトデータがバックアップされている。
The CPU 3 controls the disk drives DD0 to DD0.
When all DDNs have normally completed the write command, the host CPU 2 transmits a normal end status (YES in step S25). The write data is backed up in the spare disk drive DDs until such a write back process ends normally.

【0036】ここで、ライトバック処理が正常に終了す
る前に、キャッシュメモリ6に故障が発生したり、また
はキャッシュメモリ6の電源供給が停止して、キャッシ
ュメモリ6に格納されたデータが破壊または消去するよ
うな事態が発生したとする(ステップS25のNO)。
予備DMAC11sは、CPU3の指示に応じて、予備
ディスクドライブDDsにバックアップしてあるライト
データをリードする(ステップS26)。ディスクDM
AC110〜11Nは、予備ディスクドライブDDsか
らリードされたライトデータを、指定された論理セクタ
アドレスにライトバックする(ステップS27)。この
とき、CPU3は、パリティ生成回路7を使用して、ラ
イトデータに対応するパリティデータを新たに生成す
る。
Here, before the write-back processing ends normally, a failure occurs in the cache memory 6, or the power supply to the cache memory 6 is stopped, and the data stored in the cache memory 6 is destroyed or destroyed. It is assumed that a situation such as erasing occurs (NO in step S25).
The spare DMAC 11s reads the backup write data to the spare disk drive DDs according to the instruction from the CPU 3 (step S26). Disk DM
The ACs 110 to 11N write back the write data read from the spare disk drive DDs to the designated logical sector address (step S27). At this time, the CPU 3 uses the parity generation circuit 7 to newly generate parity data corresponding to the write data.

【0037】このようにして、小さいサイズのライトデ
ータを書込む場合には、キャッシュメモリ6に格納する
と共に、予備ディスクドライブDDsにバックアップす
る。このライトキャッシュとバックアップ処理により、
ライトコマンドは終了となる。この後、ホストCPU2
からのリード/ライトアクセスのない各ディスクドライ
ブDD0〜DDNのアイドル時に、キャッシュメモリ6
から各ディスクドライブDD0〜DDNに対して、ライ
トデータのライトバック処理が実行される。
In this way, when writing small size write data, it is stored in the cache memory 6 and backed up in the spare disk drive DDs. By this write cache and backup process,
The write command ends. After this, the host CPU2
Read / write access from each disk drive DD0-DDN is idle, the cache memory 6
Write-back processing of write data is executed for each of the disk drives DD0 to DDN.

【0038】予備ディスクドライブDDsにバックアッ
プされたライトデータは、ライトバック処理が終了する
まで保存されている。ライトバック処理が終了する前
に、キャッシュメモリ6に故障または電源供給の停止の
事態が発生して、ライトバック処理が不可能になったと
きに、予備ディスクドライブDDsにバックアップされ
たライトデータが利用される。したがって、結果的にラ
イトデータは常に確実に保護されることになり、装置の
信頼性を高めることが可能となる。
The write data backed up in the spare disk drive DDs is stored until the write back process is completed. Before the write-back processing is completed, when the cache memory 6 fails or the power supply is stopped and the write-back processing becomes impossible, the write data backed up in the spare disk drive DDs is used. To be done. Therefore, as a result, the write data is always reliably protected, and the reliability of the device can be improved.

【0039】ところで、ディスクドライブDD0〜DD
Nに障害が発生した場合には、前記の大きいサイズのラ
イトデータのアクセス時と同様に、予備ディスクドライ
ブDDsを利用してデータの修復処理を実行する。この
とき、まずキャッシュメモリ6に格納されたライトデー
タの全てをライトバック処理する。この後に、故障した
ディスクドライブに格納した全データを修復し、予備デ
ィスクドライブDDsに格納する。以後、ライトキャッ
シュを禁止して、キャッシュメモリ6を単なるバッファ
メモリとして使用し、CPU3は予備ディスクドライブ
DDsを正規のディスクドライブとして使用する。 (予備ディスクドライブDDsの動作)次に、本発明に
係わる予備ディスクドライブDDsの動作を、図5乃至
図7を参照して具体的に説明する。
By the way, the disk drives DD0 to DD
When a failure occurs in N, data recovery processing is executed using the spare disk drive DDs, as in the case of accessing the large-sized write data. At this time, first, all write data stored in the cache memory 6 is written back. After this, all the data stored in the failed disk drive is restored and stored in the spare disk drive DDs. After that, the write cache is prohibited, the cache memory 6 is used as a simple buffer memory, and the CPU 3 uses the spare disk drive DDs as a regular disk drive. (Operation of Spare Disk Drive DDs) Next, the operation of the spare disk drive DDs according to the present invention will be specifically described with reference to FIGS.

【0040】まず、CPU3は予備ディスクドライブD
Dsをライトアクセスするときに、シーケンシャル・ラ
イトコマンドを出力する。即ち、図5に示すように、ア
クセスされるセクタアドレスは初期値(アドレス0)か
らシーケンシャルに増加し、順次セクタ単位のブロック
データが各アドレスに格納される。同実施例では、キャ
ッシュメモリ6に格納されたライトデータが全て各ディ
スクドライブDD0〜DDNにライトバックされたとき
に、予備ディスクドライブDDsのセクタアドレスは初
期値に復帰する。また、1回のライトコマンドにより、
ライトできるブロック数はコマンド,ステータスのやり
とりによるオーバヘッドを十分に無視できる程度の大き
い値とする。
First, the CPU 3 uses the spare disk drive D.
When performing write access to Ds, a sequential write command is output. That is, as shown in FIG. 5, the sector address to be accessed sequentially increases from the initial value (address 0), and block data in sector units are sequentially stored at each address. In this embodiment, when all the write data stored in the cache memory 6 is written back to the respective disk drives DD0 to DDN, the sector address of the spare disk drive DDs returns to the initial value. In addition, by one write command,
The number of blocks that can be written is large enough to ignore the overhead of command and status exchanges.

【0041】図7のフローチャートに示すように、CP
U3は、シーケンシャル・ライトコマンドを出力して、
予備ディスクドライブDDsにバックアップすべきライ
トデータをライトする制御を行なう(ステップS3
0)。ここで、前記の大きいサイズのライトデータのラ
イトアクセスの場合には、バックアップすべきライトデ
ータはないため、CPU3はヌルブロック(ダミーデー
タ)をRAM5に生成する(ステップS31のNO,S
32)。予備DMAC11sは、CPU3により生成さ
れたヌルブロックを転送し、図5に示すように、例えば
セクタアドレス0にヌルブロックを格納する(ステップ
S33)。
As shown in the flow chart of FIG.
U3 outputs the sequential write command,
The write data to be backed up is controlled to be written in the spare disk drive DDs (step S3).
0). Here, in the case of the write access of the write data of the large size, since there is no write data to be backed up, the CPU 3 generates a null block (dummy data) in the RAM 5 (NO in step S31, S
32). The spare DMAC 11s transfers the null block generated by the CPU 3, and stores the null block in the sector address 0, for example, as shown in FIG. 5 (step S33).

【0042】一方、ホストCPU2からバックアップす
べき小さいサイズのライトデータが転送されると、前記
のように、ライトデータはキャッシュメモリ6に格納さ
れて、ライトバック処理が実行される(ステップS31
のYES,S34)。CPU3は、1ブロック長のヘッ
ダブロックをRAM5に生成する(ステップS35)。
予備DMAC11sは、RAM5から予備ディスクドラ
イブDDsにヘッダブロックを転送し、例えばセクタア
ドレス2に格納する(ステップS36)。続いて、予備
DMAC11sは、キャッシュメモリ6から予備ディス
クドライブDDsにライトデータ(ユーザデータ)を転
送し、例えばセクタアドレス3〜6に格納する(ステッ
プS37)。
On the other hand, when write data of a small size to be backed up is transferred from the host CPU 2, the write data is stored in the cache memory 6 and the write back process is executed as described above (step S31).
YES, S34). CPU3 produces | generates the header block of 1 block length in RAM5 (step S35).
The spare DMAC 11s transfers the header block from the RAM 5 to the spare disk drive DDs, and stores it, for example, in the sector address 2 (step S36). Subsequently, the spare DMAC 11s transfers the write data (user data) from the cache memory 6 to the spare disk drive DDs and stores it in, for example, the sector addresses 3 to 6 (step S37).

【0043】ここで、予備DMAC11sは、ライトデ
ータの転送時に予備ディスクドライブDDsのディスク
回転待ちの状態が発生しないように、ヌルブロックとヘ
ッダブロックを連続的に転送する。CPU3は、ライト
データの転送後にヌルブロックを転送し、ライトバック
処理に移行する(ステップS38,S39のYES)。
即ち、キャッシュメモリ6に格納されたライトデータ
は、各ディスクドライブDD0〜DDNにライトバック
される(ステップS40)。ライトデータがライトバッ
クされると、CPU3はコンプリートブロック(Cブロ
ック)をRAM5に生成する(ステップS41)。予備
DMAC11sは、RAM5から予備ディスクドライブ
DDsにコンプリートブロックを転送し、例えばセクタ
アドレス8に格納する(ステップS42)。
Here, the spare DMAC 11s continuously transfers the null block and the header block so that the standby state of the disk rotation of the spare disk drive DDs does not occur when the write data is transferred. The CPU 3 transfers the null block after transferring the write data, and shifts to the write back process (YES in steps S38 and S39).
That is, the write data stored in the cache memory 6 is written back to each of the disk drives DD0 to DDN (step S40). When the write data is written back, the CPU 3 generates a complete block (C block) in the RAM 5 (step S41). The spare DMAC 11s transfers the complete block from the RAM 5 to the spare disk drive DDs and stores it in the sector address 8 (step S42).

【0044】ここで、ヌルブロック、ヘッダブロックお
よびCブロックは、図6に示すように、それぞれ512
バイトのデータ長からなる。ヌルブロックは、1バイト
のヌルコード(例えば00h)と1バイトのバックアッ
プIDコード(以下単にIDと称する)を有する。残り
のバイトは無効データからなる。ヌルコードは、そのブ
ロック(セクタ)にはユーザデータが存在しないことを
示すコードである。
Here, each of the null block, the header block and the C block is 512 as shown in FIG.
Consists of a data length of bytes. The null block has a 1-byte null code (for example, 00h) and a 1-byte backup ID code (hereinafter simply referred to as ID). The remaining bytes consist of invalid data. The null code is a code indicating that user data does not exist in the block (sector).

【0045】ヘッダブロックは、1バイトのヘッダコー
ド(例えば01h)、1バイトのID、1バイトのコマ
ンドタグおよびホストCPU2から転送されたライトコ
マンドを有する。ヘッダコードは、ユーザデータの先頭
部であることを示すコードである。Cブロックは、1バ
イトのコンプリートコード(例えば02h)、1バイト
のIDおよび1バイトのコマンドタグを有する。IDと
コマンドタグはライトバック処理が不可能な場合に、ラ
イトバックできなかったユーザデータ(ライトデータ)
を検索するために使用される。IDは、予備ディスクド
ライブDDsにシーケンシャル・ライトが実行されて、
アドレスが初期値に復帰したときに「1」だけインクリ
メントされる。ライトバックされなかったユーザデータ
を検索するときは、予備ディスクドライブDDsのセク
タアドレス(初期値から)をシーケンシャルにリードし
て、初期値のアドレスの内容(ヌルブロック又はヘッダ
ブロック)のIDとは異なるIDが見付るまでリードす
る。このリードしている期間に、ヘッダブロックに対応
するCブロックをチェックし、その対応するCブロック
が見付らないヘッダブロックがあれば、それがライトバ
ックされなかったライトコマンドである。そして、ヘッ
ダブロックのつぎのブロックからはユーザデータが書き
込まれているので、このユーザデータを読出して各ディ
スクドライブDD0〜DDNに転送してデータ修復処理
を行なう。
The header block has a 1-byte header code (for example, 01h), a 1-byte ID, a 1-byte command tag, and a write command transferred from the host CPU 2. The header code is a code indicating that it is the beginning of the user data. The C block has a 1-byte complete code (for example, 02h), a 1-byte ID, and a 1-byte command tag. The user data (write data) that could not be written back when the ID and command tag cannot be written back.
Used to search for. As for ID, sequential write is executed to the spare disk drive DDs,
It is incremented by "1" when the address returns to the initial value. When retrieving the user data that has not been written back, the sector address (from the initial value) of the spare disk drive DDs is read sequentially and is different from the ID of the content of the initial value address (null block or header block). Lead until you find the ID. During this read period, the C block corresponding to the header block is checked, and if there is a header block in which the corresponding C block is not found, it is a write command that was not written back. Then, since user data is written from the block next to the header block, this user data is read out and transferred to each of the disk drives DD0 to DDN to perform data restoration processing.

【0046】このようにして、小さいサイズのライトデ
ータを各ディスクドライブDD0〜DDNに転送すると
きには、予備ディスクドライブDDsをデータのバック
アップ用として使用する。予備ディスクドライブDDs
では、ライトデータ(ユーザデータ)の先頭にヘッダブ
ロックが格納されて、ライトバック処理の終了後にCブ
ロックが格納される。ライトデータがないときでも、C
PU3はライトコマンドを予備ディスクドライブDDs
に出力している。この場合には、予備DMAC11s
は、CPU3が生成したヌルブロックを繰り返し転送す
る。
In this way, when the small size write data is transferred to each of the disk drives DD0 to DDN, the spare disk drive DDs is used for data backup. Spare disk drive DDs
Then, the header block is stored at the beginning of the write data (user data), and the C block is stored after the end of the write back process. Even when there is no write data, C
PU3 sends a write command to the spare disk drive DDs.
Is output to. In this case, the spare DMAC 11s
Repeatedly transfers the null block generated by the CPU 3.

【0047】ホストCPU2からバックアップすべきラ
イトデータが転送されて、キャッシュメモリ6に格納さ
れると、CPU3はヘッダブロックを生成して、予備D
MAC11sを介して予備ディスクドライブDDsに転
送する。この後に、キャッシュメモリ6に格納されたラ
イトデータを予備ディスクドライブDDsに転送し、再
度ヌルブロックの転送に戻る。そして、ライトバック処
理が終了すると、CPU3はCブロックを生成して、予
備DMAC11sを介して予備ディスクドライブDDs
に転送する。
When the write data to be backed up is transferred from the host CPU 2 and stored in the cache memory 6, the CPU 3 generates a header block and the spare D
Transfer to the spare disk drive DDs via the MAC 11s. After that, the write data stored in the cache memory 6 is transferred to the spare disk drive DDs, and the process returns to the transfer of the null block. Then, when the write-back processing is completed, the CPU 3 generates the C block, and the spare disk drive DDs is generated via the spare DMAC 11s.
Transfer to.

【0048】このような予備ディスクドライブDDsを
使用した方式であれば、予備ディスクドライブDDsを
使用したバックアップ処理では、シーケンシャル・ライ
トアクセスであるため、ドライブDDsのヘッドのシー
ク時間およびディスクの回転待ち時間はほぼ0である。
この予備ディスクドライブDDsを使用したバックアッ
プ方式とライトキャッシュ方式を併用すれば、ライトキ
ャッシュ方式による高速アクセスとバックアップ方式に
よるデータの保護機能を実現することができる。したが
って、結果的には二重化ライトキャッシュ付き無停電電
源装置を備えたディスク・アレイ装置と同等の性能と信
頼性を、二重化なしライトキャッシュ付き無停電電源装
置なしの装置とほぼ同等のコストにより得ることができ
る。
In the system using the spare disk drive DDs as described above, since the backup process using the spare disk drive DDs is the sequential write access, the seek time of the head of the drive DDs and the disk rotation waiting time. Is almost zero.
If the backup method using the spare disk drive DDs and the write cache method are used together, a high-speed access by the write cache method and a data protection function by the backup method can be realized. Therefore, as a result, to obtain the same performance and reliability as the disk array device with the uninterruptible power supply unit with dual write cache, and at the same cost as the device without the uninterruptible power supply unit without duplicated write cache. You can

【0049】なお、予備ディスクドライブDDsに故障
が発生した場合には、他のディスクドライブDD0〜D
DNの故障時と同様に、コントローラ1はホストCPU
2またはオペレータに故障発生のアラームを発生する。
このとき、CPU3はキャッシュメモリ6の内容を全て
ライトバックし、予備ディスクドライブDDsの修理ま
たは交換が終了するまでキャッシュメモリ6を使用した
ライトキャッシュ動作を停止する。
When a failure occurs in the spare disk drive DDs, the other disk drives DD0-D0
As with the DN failure, the controller 1 is the host CPU
2 or alarm is issued to the operator.
At this time, the CPU 3 writes back all the contents of the cache memory 6, and stops the write cache operation using the cache memory 6 until the repair or replacement of the spare disk drive DDs is completed.

【0050】また、ライトバック処理が終了する前に、
装置の電源がオフされた場合に備えて、電源がオンされ
た直後にCPU3は予備ディスクドライブDDsのヘッ
ダブロックとCブロックチェックを行なうようにしても
よい。但し、ライトバック処理が終了する前に、キャッ
シュメモリ6と予備ディスクドライブDDsの両方が同
時に故障する確率はほとんど0と考えられる。
Before the write back process is completed,
In case the power of the device is turned off, the CPU 3 may perform the header block and C block check of the spare disk drive DDs immediately after the power is turned on. However, it is considered that the probability that both the cache memory 6 and the spare disk drive DDs fail at the same time before the write-back process is completed is almost zero.

【0051】[0051]

【発明の効果】以上詳述したように本発明によれば、ラ
イトキャッシュ方式を採用したディスク・アレイ装置に
おいて、予備ディスクドライブをライトデータのバック
アップ用に利用することにより、キャッシュメモリやデ
ィスク・アレイ・コントローラの2重化、またはキャッ
シュメモリに不揮発性メモリや無停電電源装置を使用す
るなどの方法を採用することなく、小さいサイズのデー
タのライトアクセスの高速性と確実なデータ保護を実現
することができる。したがって、コストの増大化やシス
テム構成の複雑化を招くことなく、特に小さいサイズの
データのライトアクセスの高速かつ効率化を図ると共
に、データを確実に保護して装置の高信頼性を実現でき
ることになる。
As described above in detail, according to the present invention, in the disk array device adopting the write cache system, the spare disk drive is used for backup of the write data, so that the cache memory and the disk array are -Achieve high-speed write access and reliable data protection for small data without adopting a dual controller or using a non-volatile memory or uninterruptible power supply for cache memory. You can Therefore, without increasing the cost or complicating the system configuration, it is possible to achieve high-speed and efficient write access of particularly small-sized data, and to reliably protect the data and realize the high reliability of the device. Become.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の実施例に係わるディスク・アレイ装置
の要部を示すブロック図。
FIG. 1 is a block diagram showing a main part of a disk array device according to an embodiment of the present invention.

【図2】同実施例の動作を説明するためのフローチャー
ト。
FIG. 2 is a flowchart for explaining the operation of the embodiment.

【図3】同実施例の動作を説明するためのフローチャー
ト。
FIG. 3 is a flowchart for explaining the operation of the embodiment.

【図4】同実施例の動作を説明するためのフローチャー
ト。
FIG. 4 is a flowchart for explaining the operation of the embodiment.

【図5】同実施例に係わる予備ディスクドライブの記憶
内容を説明するための概念図。
FIG. 5 is a conceptual diagram for explaining stored contents of a spare disk drive according to the embodiment.

【図6】同実施例に係わる予備ディスクドライブの記憶
内容を説明するための概念図。
FIG. 6 is a conceptual diagram for explaining stored contents of a spare disk drive according to the embodiment.

【図7】同実施例の動作を説明するためのフローチャー
ト。
FIG. 7 is a flowchart for explaining the operation of the embodiment.

【図8】従来のレベル5のディスク・アレイ装置の構成
を説明するための概念図。
FIG. 8 is a conceptual diagram for explaining the configuration of a conventional level 5 disk array device.

【符号の説明】[Explanation of symbols]

1…ディスク・アレイ・コントローラ、2…ホストコン
ピュータ、3…CPU、6…キャッシュメモリ、7…パ
リティ生成回路、9…ホストDMAコントローラ、DD
0〜DDN…ディスクドライブ、110〜11N…ディ
スクDMAコントローラ、DDs…予備ディスクドライ
ブ、11s…予備ディスクDMAコントローラ。
1 ... Disk array controller, 2 ... Host computer, 3 ... CPU, 6 ... Cache memory, 7 ... Parity generation circuit, 9 ... Host DMA controller, DD
0-DDN ... Disk drive, 110-11N ... Disk DMA controller, DDs ... Spare disk drive, 11s ... Spare disk DMA controller.

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 予備ディスクドライブを含む複数のディ
スクドライブと、 外部から転送されたライトデータを格納するキャッシュ
メモリ手段と、 このキャッシュメモリ手段から前記予備ディスクドライ
ブを除く前記各ディスクドライブに前記ライトデータを
転送するライトバック処理の実行前に、前記ライトデー
タを前記予備ディスクドライブに転送して格納する予備
ディスク制御手段とを具備したことを特徴とするディス
ク・アレイ装置。
1. A plurality of disk drives including a spare disk drive, a cache memory means for storing write data transferred from the outside, and the write data for each disk drive except the spare disk drive from the cache memory means. And a spare disk control means for transferring the write data to the spare disk drive and storing the write data before executing the write-back process for transferring the write data.
【請求項2】 予備ディスクドライブを含む複数のディ
スクドライブと、 外部から転送されたライトデータを格納するキャッシュ
メモリ手段と、 このキャッシュメモリ手段から前記予備ディスクドライ
ブを除く前記各ディスクドライブに前記ライトデータを
転送するライトバック処理の実行前に、前記ライトデー
タを前記予備ディスクドライブに転送して格納する予備
ディスク制御手段と、 前記ライトバック処理時に、前記キャッシュメモリ手段
からの前記各ディスクドライブへの前記ライトデータの
転送が不可能なときに、前記予備ディスクドライブに格
納した前記ライトデータを読出して使用するバックアッ
プ制御手段とを具備したことを特徴とするディスク・ア
レイ装置。
2. A plurality of disk drives including a spare disk drive, a cache memory means for storing write data transferred from the outside, and the write data in each of the disk drives except the spare disk drive from the cache memory means. A write-back process for transferring the write data to the spare disk drive and storing the write data in the spare disk control unit, and during the write-back process, the cache memory unit transfers the write data to each of the disk drives. A disk array device comprising: backup control means for reading and using the write data stored in the spare disk drive when the write data cannot be transferred.
【請求項3】 予備ディスクドライブを含む複数のディ
スクドライブと、 外部から転送されたライトデータを格納するキャッシュ
メモリ手段と、 前記ライトデータの転送データ量に基づいて前記ライト
データのサイズが相対的に小さい場合に、前記予備ディ
スクドライブをバックアップとして使用するモードを決
定するモード決定手段と、 前記モード時に、前記キャッシュメモリ手段から前記予
備ディスクドライブを除く前記各ディスクドライブに前
記ライトデータを転送するライトバック処理の実行前
に、前記ライトデータを前記予備ディスクドライブに転
送して格納する予備ディスク制御手段とを具備したこと
を特徴とするディスク・アレイ装置。
3. A plurality of disk drives including a spare disk drive, a cache memory means for storing write data transferred from the outside, and a size of the write data relative to each other based on a transfer data amount of the write data. Mode determination means for determining a mode in which the spare disk drive is used as a backup when it is small, and writeback for transferring the write data from the cache memory means to each of the disk drives other than the spare disk drive in the mode. A disk array device comprising a spare disk control means for transferring and storing the write data to the spare disk drive before executing the processing.
【請求項4】 予備ディスクドライブを含む複数のディ
スクドライブを有するディスク・システムにおいて、 外部から転送されたライトデータを格納するキャッシュ
メモリ手段と、 このキャッシュメモリ手段に格納された前記ライトデー
タを前記予備ディスクドライブに格納するバックアップ
制御時に、前記ライトデータの識別情報、前記ライトデ
ータを代用する無効データおよび前記ライトデータを前
記予備ディスクドライブを除く前記各ディスクドライブ
に格納したことを指示する指示情報のそれぞれを生成す
るデータ生成手段と、 前記バックアップ制御時に、前記予備ディスクドライブ
の連続するアドレスに前記無効データ、前記識別情報、
前記ライトデータおよび前記指示情報を逐次書込むデー
タ書込み制御手段とを具備したことを特徴とするディス
ク書込み制御装置。
4. In a disk system having a plurality of disk drives including a spare disk drive, cache memory means for storing write data transferred from the outside, and the write data stored in the cache memory means as the spare. Each of the identification information of the write data, the invalid data substituting for the write data, and the instruction information for instructing that the write data is stored in each of the disk drives other than the spare disk drive during backup control for storing in the disk drive Data generating means for generating the invalid data, the identification information at consecutive addresses of the spare disk drive during the backup control,
A disk write control device comprising: a data write control means for sequentially writing the write data and the instruction information.
JP5201676A 1993-08-13 1993-08-13 Disk array device and disk writing controller Withdrawn JPH0756693A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5201676A JPH0756693A (en) 1993-08-13 1993-08-13 Disk array device and disk writing controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5201676A JPH0756693A (en) 1993-08-13 1993-08-13 Disk array device and disk writing controller

Publications (1)

Publication Number Publication Date
JPH0756693A true JPH0756693A (en) 1995-03-03

Family

ID=16445057

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5201676A Withdrawn JPH0756693A (en) 1993-08-13 1993-08-13 Disk array device and disk writing controller

Country Status (1)

Country Link
JP (1) JPH0756693A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7231469B2 (en) 2004-02-16 2007-06-12 Hitachi, Ltd. Disk controller
US7467238B2 (en) 2004-02-10 2008-12-16 Hitachi, Ltd. Disk controller and storage system
JP2012215956A (en) * 2011-03-31 2012-11-08 Nec Corp Storage device and data writing control method in storage device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7467238B2 (en) 2004-02-10 2008-12-16 Hitachi, Ltd. Disk controller and storage system
US7917668B2 (en) 2004-02-10 2011-03-29 Hitachi, Ltd. Disk controller
US7231469B2 (en) 2004-02-16 2007-06-12 Hitachi, Ltd. Disk controller
US7469307B2 (en) 2004-02-16 2008-12-23 Hitachi, Ltd. Storage system with DMA controller which controls multiplex communication protocol
JP2012215956A (en) * 2011-03-31 2012-11-08 Nec Corp Storage device and data writing control method in storage device

Similar Documents

Publication Publication Date Title
JP2603757B2 (en) Method of controlling array disk device
US5572660A (en) System and method for selective write-back caching within a disk array subsystem
US6754765B1 (en) Flash memory controller with updateable microcode
US4092732A (en) System for recovering data stored in failed memory unit
US6523087B2 (en) Utilizing parity caching and parity logging while closing the RAID5 write hole
US5596709A (en) Method and apparatus for recovering parity protected data
US6766491B2 (en) Parity mirroring between controllers in an active-active controller pair
JP3682256B2 (en) Disk array device and parity processing method in the same
US20050229033A1 (en) Disk array controller and information processing apparatus
US20080147962A1 (en) Storage subsystem with multiple non-volatile memory arrays to protect against data losses
WO1993023803A1 (en) Disk array apparatus
US20080184062A1 (en) System and method for detecting write errors in a storage device
JPH07146820A (en) Control method for flash memory and information processor using the same
JP2001166993A (en) Memory control unit and method for controlling cache memory
EP3633517B1 (en) Storage device and method of operating storage device
JPH11143649A (en) Disk array device
JP2004021811A (en) Disk controller using nonvolatile memory
JP2001184266A (en) Information recording device, and method of controlling the same
JPH06309234A (en) Disk controller
US5574736A (en) Data storage device and method of operation
JP3270959B2 (en) Parity storage method in disk array device and disk array device
US6901551B1 (en) Method and apparatus for protection of data utilizing CRC
JPH10161938A (en) Disk controller
JP2857288B2 (en) Disk array device
JP2004213470A (en) Disk array device, and data writing method for disk array device

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20001031