JPH0496818A - Collective disk device - Google Patents

Collective disk device

Info

Publication number
JPH0496818A
JPH0496818A JP2214261A JP21426190A JPH0496818A JP H0496818 A JPH0496818 A JP H0496818A JP 2214261 A JP2214261 A JP 2214261A JP 21426190 A JP21426190 A JP 21426190A JP H0496818 A JPH0496818 A JP H0496818A
Authority
JP
Japan
Prior art keywords
data
disk
ecc
collective
writing
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.)
Pending
Application number
JP2214261A
Other languages
Japanese (ja)
Inventor
Hitoshi Tsunoda
仁 角田
Yoshihisa Kamo
加茂 善久
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2214261A priority Critical patent/JPH0496818A/en
Publication of JPH0496818A publication Critical patent/JPH0496818A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To increase the transfer speed to improve the processing efficiency by writing matrix data corresponding to a disk drive in parallel and reading out data from the disk drive with one block as the unit. CONSTITUTION:Write data transferred from a CPU 1 at a high speed in serial is distributed as matrix data 10 corresponding to an ECC disk group 14 in a data buffer 3. Data 9 and data 10 consists of many blocks. After data 9 is expanded to data 10, it is collectively written on data disks 4 in a group 14 from the buffer 3. At the time of write to disks 4, blocks are transferred to an ECC generator 6 also, and ECC is generated by blocks and is recorded on an ECC disk 5. At the time of read, only disks 4 where data is stored are accessed to read out data. Thus, the speed of transfer from the CPU is increased to perform the processing at a high speed.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はコンビュータンステ11に係り、特に1″も性
能な入出力動作を可能とするディスクファイルシステム
に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a computer system 11, and particularly to a disk file system that enables input/output operations with even higher performance than 1".

〔従来の技術〕[Conventional technology]

現在のコンピュータシステムにおいては、 CPt等の
上位側が必要とするデータは2次記憶装置に格納され、
CPUが必要とする時に応じて2次記憶装置に対してデ
ータの書込み、読みだしを行っている。この2次記憶装
置としては一般に不揮発な記憶媒体が使用され、代表的
なものとして磁気ディスク、光ディスクなどが使用され
ている。特許、学術文献等のデータベースなどでは、通
常のユーザが使用する場合は2次記憶装置から読みだす
のみで、ユーザが直接データを書換えることはない。デ
ータの変更、追加を行う場合は、データベースを管理す
る者が一度にまとめて追加という形で行う。
In current computer systems, data required by higher-level devices such as CPt is stored in secondary storage devices.
Data is written to and read from the secondary storage device as required by the CPU. As this secondary storage device, a nonvolatile storage medium is generally used, and typical examples include a magnetic disk and an optical disk. When a database of patents, academic literature, etc. is used by a normal user, the data is only read from the secondary storage device, and the user does not directly rewrite the data. When changing or adding data, the person managing the database adds the data all at once.

従来、多数の比較的容量の小さな磁気ディスクを用意し
、CPUから転送されてくるデータを分割し、複数の磁
気ディスクに同時に格納し、読み出す場合は逆に各々の
磁気ディスクから同時に読み込んできてCPUへ転送す
るパラレル処理を行うという技術がある。このようなシ
ステムについてはストリッジ コンセプト社等の企業か
ら製品発表等されている。また、情報処理学会第39口
金国大会において桜井 紀要らが゛′アレイ制御ディス
クの構成方式に関する一考察″においてデータを並列に
処理したり、通常のようにシリアルなデータとして処理
したりを一つのシステム内においてダイナミックに切り
替えて行う方式について報告している。
Conventionally, a large number of relatively small-capacity magnetic disks are prepared, and the data transferred from the CPU is divided and stored simultaneously on multiple magnetic disks.When reading data, data is read from each magnetic disk at the same time, and the data is transferred to the CPU. There is a technology that performs parallel processing to transfer data to Products of such systems have been announced by companies such as Stridge Concepts. Furthermore, at the Information Processing Society of Japan's 39th Annual National Conference, Norio Sakurai et al. discussed processing data in parallel or processing it as serial data in a single study in ``A study on the configuration method of array control disks''. We report on a method for dynamically switching within the system.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

特許、学術文献等のデータベースなどでは、通常のユー
ザが使用する場合は2次記憶装置から個個のデータを読
みだすのみで5ユーザが直接データを書換えるようなこ
とはない。データの変更、追加を行う場合は、データベ
ースを管理する者が一度にまとめて追加という形で行う
。この追加作業はCPUから送られてくる大量のシリア
ルなデータを、それを構成する個々のアクセス単位であ
るブロックについて細かく、しかも順次行われるため、
書込み時間が大量にかかる。また、上記したようにシリ
アルに転送されてくるデータ内の個々のデータについて
行うことから、磁気ディスクの処理時間により上位装置
であるCPUの転送速度が決まってしまうため、上位装
置であるCPUからの転送速度をあげて高速に処理する
ことができない。以上のような課題を解決する方法とし
て、第1図のようなディスクドライブの構成で、CPU
 1から転送されてきた一つのデータをn個に分割しデ
ータディスク#1から#nに並列に一度に書き込み、読
み出す際は逆にデータディスク#1からn nより一度
に読み込む方式が特開平1−250128に開示されて
いる。しかし、このように−括に書き込み、−括に読み
だす方式では、大量のデータをまとめて扱う場合は良い
が、小さなデータを読み出す場合、データディスク#1
から#nを全て使用するためシステムの処理効率が悪い
In databases of patents, academic literature, etc., when used by normal users, only individual data are read from the secondary storage device, and five users do not directly rewrite the data. When changing or adding data, the person managing the database adds the data all at once. This additional work is performed on large amounts of serial data sent from the CPU in detail and sequentially for individual access units that make up the blocks.
Writing takes a lot of time. In addition, since the process is performed on each individual piece of data that is serially transferred as described above, the transfer speed of the CPU, which is the host device, is determined by the processing time of the magnetic disk. It is not possible to increase the transfer speed for faster processing. As a way to solve the above problems, the disk drive configuration shown in Figure 1 is used to
In Japanese Patent Application Laid-Open No. 1999-1, one data transferred from No. 1 is divided into n pieces and written to data disks #1 to #n in parallel at once, and when reading data, the data is read from data disks #1 to n at once. -250128. However, this method of writing in a -batch and reading in a -batch is good when handling a large amount of data at once, but when reading a small amount of data, data disk #1
Since all of #n is used, the processing efficiency of the system is poor.

C課題を解決するための手段〕 上記問題を解決するため一括にデータを書き込むときは
に1位装置であるCPUからシリアルに転送されてきた
大量のデータを、データを読み出す際のアクセス単位で
あるブロックを基準として、マトリックス状のデータ構
成に変換し、各当該データ格納用ディスクドライブに対
応したマトリックスデータ内のデータをパラレルに書き
込む。また、読み出す際は、個々のディスクドライブか
らブロックを単位として読み出すことで解決できる。
Measures to solve problem C] To solve the above problem, when writing data in bulk, the unit of access when reading data is a large amount of data that is serially transferred from the CPU, which is the primary device. Based on the block, it is converted into a matrix data structure, and the data in the matrix data corresponding to each data storage disk drive is written in parallel. Furthermore, when reading data, it is possible to solve the problem by reading blocks from individual disk drives in units of blocks.

〔作用〕[Effect]

本発明のようにマトリックスデータを作成してパラレル
に書込み処理を行うことにより個々のディスクドライブ
の転送速度は同じてもシステムとしての転送速度がLが
る。また、磁気ディスクにおける処理時間が短縮される
ため、上位装置であるC Pじからの転送速度をあげら
れる。一方読出し時では個々のディスクドライブへのア
クセスが可能となるため、処理効率が向」−する、〔実
施例〕 実施例1 以下本発明の一実施例を第1図により説明する。
By creating matrix data and performing parallel write processing as in the present invention, the transfer speed of the system is lowered even though the transfer speed of each individual disk drive is the same. Furthermore, since the processing time on the magnetic disk is shortened, the transfer speed from the CP, which is a host device, can be increased. On the other hand, during reading, it becomes possible to access individual disk drives, thereby improving processing efficiency. [Embodiment] Embodiment 1 An embodiment of the present invention will be described below with reference to FIG. 1.

本実施例はc r−〕じ1.データ制御部(以T:D 
CU )2、データバッファ (以下バッファ)3.デ
ータ用磁気ディスク4(以下データディスク)、ECC
用Mi気ディスク(以下ECCディスク)5.ECCジ
ェネエレータ6 + Read用データバッファ(以下
Readバッファ)7.データ復元部8より構成される
。CPU1より発行された■/○要求はII) CU2
を通して各磁気ディスクに発行される。
This example is cr-] 1. Data control unit (T:D
CU ) 2, data buffer (hereinafter referred to as buffer) 3. Data magnetic disk 4 (hereinafter referred to as data disk), ECC
Mi disk (hereinafter referred to as ECC disk) 5. ECC generator 6 + Read data buffer (hereinafter referred to as Read buffer) 7. It is composed of a data restoration section 8. ■/○ requests issued by CPU1 are II) CU2
issued to each magnetic disk through.

まず1本実施例における具体的な■/○処理についての
大まかな動作を第1図及び第2図を用いて簡単に説明す
る。本実施例ではデータの記憶又は書き替えはECCを
作成するグループ単位(これをECCディスクグループ
14という)で一度に大量に行う。CPUIより高速で
、シリアルに転送されてきた書込みデータ9は第1図の
DCU2の管理のもとてデータバッファ3内においてE
CCディスクグループ14に対応したマトリックスデー
タ10として振り分けられる。なお、書込みデータ9及
びマトリックスデータ10は多数のブロックにより構成
されている。このブロックという単位は上位からの1ア
クセス単位である。つまり、上位(CPUI)から、デ
ータを読み込めというRead要求が当該データディス
ク4へ発行された場合、当該データディスク4からRe
adする単位は1ブロツクである。このように、書込み
データ9をマトリックスデータ10に展開した後、バッ
ファ3より各ブロックを当該データディスクグループ1
4内の各データディスク4にまとめて書き込む。
First, the general operation of the specific ■/○ processing in this embodiment will be briefly explained using FIGS. 1 and 2. In this embodiment, a large amount of data is stored or rewritten at once in units of groups for which ECC is created (this is referred to as an ECC disk group 14). The write data 9, which is serially transferred at a higher speed than the CPU, is stored in the data buffer 3 under the control of the DCU 2 shown in FIG.
The data is distributed as matrix data 10 corresponding to the CC disk group 14. Note that the write data 9 and the matrix data 10 are composed of a large number of blocks. This unit of block is one access unit from the upper level. In other words, when a Read request to read data is issued from the host (CPUI) to the data disk 4, a Re
The unit of ad is one block. In this way, after developing the write data 9 into matrix data 10, each block is transferred from the buffer 3 to the corresponding data disk group 1.
data is written to each data disk 4 in 4 at once.

また、データディスク4に書き込む際、各々のブロック
はECCジェネレータ6にも同時に転送され、各々のブ
ロックからECCを作成しECCディスク5に同様に記
録される。読出し時はECCディスクグループ14内に
おける当該データが格納されている当該データディスク
4のみにアクセスし当該データを読み出す。本実施例で
は以上のようにIloを処理する。
Furthermore, when writing to the data disk 4, each block is simultaneously transferred to the ECC generator 6, and ECC is created from each block and recorded on the ECC disk 5 in the same manner. When reading, only the data disk 4 in which the data is stored in the ECC disk group 14 is accessed and the data is read. In this embodiment, Ilo is processed as described above.

そこで、以下に工/○処理動作について詳細に説明する
Therefore, the work/○ processing operation will be explained in detail below.

上記したように本実施例では、−括してデータを書き込
むため、シリアルなデータとしてCPU1より転送され
てきた書込みデータ9はマトリックスデータ10に変換
する必要がある。そこで、まずこの変換方法について第
3図により説明する。
As described above, in this embodiment, since data is written in batches, it is necessary to convert the write data 9 transferred from the CPU 1 as serial data into matrix data 10. Therefore, first, this conversion method will be explained with reference to FIG.

本実施例では各データディスク4及びECCディスク5
のトラック容量(磁気ディスクの一周に格納できるデー
タの容量)は40 K Bであり、各ブロックのデータ
量は4KBで、データディスク4の台数は4台である。
In this embodiment, each data disk 4 and ECC disk 5
The track capacity (capacity of data that can be stored in one round of the magnetic disk) is 40 KB, the amount of data in each block is 4 KB, and the number of data disks 4 is four.

第3図に示すようにCPU1からの書込みデータはシリ
アルにまとめて、大量に送られてくる。この、まとめて
送られてくる書込みデータ9の量は、常に一定である方
が望ましい。この書込みデータ9の容量はあらかじめD
CTJ2に登録されている。次に、大量の書込みデータ
9は既に前もって登録されている容it(読込み時の1
アクセス単位であるブロックの整数倍)に区切られ、n
個の領域に分けられる。次に、各領域は、データディス
ク4の台数骨にブロックを単位として区切られる。この
4分割されたデータが、それぞれのデータディスク4に
格納されるブロックの集まりとなりCoJ、umnデー
タと呼ぶ0以上のようにDCU2の管理のもとてデータ
バッファ3内において各データディスク4に格納するブ
ロックの集まり(Co]umnデータ)を、各データデ
ィスク4に対応して作成した物をマトリックスデータ1
0とする。本実施例では書き込む際はECCディスクグ
ループ14内の4台のデータディスク4を1つの論理ボ
リュームとして考える。つまり、論理的なトラック容量
は物理的なトラック容量(個々のデータディスク4及び
ECCディスク5のトラック容量)のデータディスク4
の台数倍となる。
As shown in FIG. 3, the write data from the CPU 1 is serially sent in large quantities. It is preferable that the amount of the write data 9 sent in bulk is always constant. The capacity of this write data 9 is D in advance.
Registered with CTJ2. Next, a large amount of write data 9 has already been registered in advance (1 at the time of reading).
n
It is divided into several areas. Next, each area is divided into several blocks on the data disk 4 in units of blocks. This four-part data is a collection of blocks to be stored in each data disk 4, and is stored in each data disk 4 in the data buffer 3 under the control of the DCU 2 as 0 or more blocks called CoJ, umn data. Matrix data 1 is a collection of blocks (Co]umn data) created corresponding to each data disk 4.
Set to 0. In this embodiment, when writing, the four data disks 4 in the ECC disk group 14 are considered as one logical volume. In other words, the logical track capacity is the physical track capacity (track capacity of each data disk 4 and ECC disk 5) of the data disk 4.
will be multiplied by the number of units.

次に、このようにして作成したマトリックスデタ10を
、−括に書き込む方法し二ついて第4図を用いて説明す
る。第4図はデータディスク4及びF CCディスク5
の内部構成を示す。データディスク4及びECCディス
ク5は「)枚のディスクと、ヘッドを移動させるアクチ
ュエ〜り11に、。個のへッl、かついて構成さLる。
Next, a method for writing the matrix data 10 created in this way into brackets will be explained using FIG. 4. Figure 4 shows data disk 4 and FCC disk 5.
The internal configuration of is shown. The data disk 4 and the ECC disk 5 are composed of ``) disks, an actuator 11 for moving the head, and .

各々のヘッドは】つのアクチュエータ11についており
、アクチュエータ11が移動することにより、全てのヘ
ッドが同じように動く。一つまり、アクチエータ]lの
動きによりr1個の/\ノドに対応するr、個のディス
ク上のドラッグが決定される。このトラックの集合のこ
とをシリンダという。磁気ディスクではディスクに同心
円状にトラックが設定されているため、外周から内周に
向いトラックにアドレスを割り当てる。このアドレスの
ことをシリンダナンバという。そこで、R/W回路12
は当該ヘッドを選択してトラックを決定しデータの読み
書きを行なう。各ディスク1周の容量は物理的なトラッ
ク容量である。このような構成のデータディスク4、E
CCディスク5によりECCディスクグループ14が構
成される。まず、領域1を書き込む場合、第3図に示す
ような領域1に対応したマトリックスデータ10を作成
し、各Columnデータを、当該データディスク4に
書き込む。第4図に示すように各々の当該データディス
ク4ではヘッド#1を選択してディスク#lの斜線の部
分に第3図における領域1のマトリックスデータ10内
の当該データを書き込む。なお、ヘッド#1゜2を同時
にR/Wできる場合は、同時に行う。ディスク#1に書
込みが終了し領域1のデータの書込みが終了していない
場合、ヘッド#2を電気的な切り替えにより選択し、デ
ィスク#1と同様に、ディスク#2の斜線の部分に書き
込む。以下ディスク#3.#4・・・・#nと同様に書
き込む。このようにして、領域2,3,4.5・・・・
・・nと同様に書き込んでいく。なお、ディスク面上の
トラックが、ディスク面上の欠陥等により使用できない
場合、現在ばあらかしめ用意しである予備のトラックへ
ヘッドを移動させ使用している。本発明ではそのような
予備のトラックへの切り替えを無視し、ディスク#2を
とばしてディスク#3に書き込む。このように、各領域
をシリンダに書き込んでいき、ECCディスクグループ
14内のデータディスク4のうち、一つでもディスク#
nを書き終えた時点で、そのシリンダへの書き込みを終
了とし、別のシリンダに移って書き込む。
Each head is attached to one actuator 11, and when the actuator 11 moves, all the heads move in the same way. In other words, the movement of the actuator ]l determines the drag on the r disks corresponding to the r1 nodes. This set of tracks is called a cylinder. In a magnetic disk, tracks are set concentrically on the disk, so addresses are assigned to the tracks from the outer circumference to the inner circumference. This address is called a cylinder number. Therefore, the R/W circuit 12
selects the head, determines the track, and reads and writes data. The capacity of one round of each disk is the physical track capacity. Data disks 4 and E with such a configuration
The CC disk 5 constitutes an ECC disk group 14 . First, when writing area 1, matrix data 10 corresponding to area 1 as shown in FIG. 3 is created, and each column data is written to the data disk 4. As shown in FIG. 4, head #1 is selected on each data disk 4 to write the data in the matrix data 10 of area 1 in FIG. 3 into the shaded area of disk #l. Note that if heads #1 and #2 can be read/written at the same time, they are performed at the same time. If writing to disk #1 is completed but writing of data in area 1 is not yet completed, head #2 is selected by electrical switching and writes to the diagonally shaded portion of disk #2 in the same way as disk #1. Disk #3 below. #4...Write in the same way as #n. In this way, areas 2, 3, 4.5...
...Write in the same way as n. If a track on the disk surface cannot be used due to a defect on the disk surface, the head is currently moved to a spare track that is ready for use. The present invention ignores such switching to the spare track, skips disk #2, and writes to disk #3. In this way, each area is written to the cylinder, and even if one of the data disks 4 in the ECC disk group 14 has a disk #
When n is finished writing, writing to that cylinder is finished, and writing is moved to another cylinder.

一方、このように各データディスク4にデータを書き込
むと同時に、データをECCジェネレタ6にも転送し、
ECCを作成し、ECCディスク5に書き込む。そこで
、以下にECC作成方法について説明する。ECC作成
方法は、書込みデータ9をマトリックスデータ10に変
換し、第7図に示すように各データディスタ4に対応し
たColumnデータに展開する。そこで、マトリック
スデータ10についてパリティ作成グループ13(Ro
νデータ)においてECCジェネレータ6によりECC
(例えば奇数パリティ)を作成する。
On the other hand, at the same time as writing data to each data disk 4 in this way, the data is also transferred to the ECC generator 6,
Create an ECC and write it to the ECC disk 5. Therefore, the ECC creation method will be explained below. The ECC creation method converts the write data 9 into matrix data 10 and develops it into column data corresponding to each data disk 4 as shown in FIG. Therefore, regarding the matrix data 10, the parity creation group 13 (Ro
ν data) by the ECC generator 6.
(e.g. odd parity).

このように一括書込みの際にマトリックスデータ10に
対してECCを作成することにより、もしある1台のデ
ータディスク4に障害が発生し、対応したColumn
データが読込み不能になった場合、残りのデータとEC
Cから障害データディスク4に対応したColumnデ
ータを復元することが可能となる。
By creating ECC for the matrix data 10 during batch writing in this way, if a failure occurs in one data disk 4, the corresponding Column
If the data becomes unreadable, the remaining data and EC
It becomes possible to restore Column data corresponding to the failed data disk 4 from C.

このように各領域においてマトリックスデータ10を作
成し5マトリツクスデータ10内のそれぞれのデータデ
ィスク4に対応したCo1.umnデータを並列に書き
込むことにより高速な処理が可能となる。
In this way, matrix data 10 is created in each area, and Co1. Writing the umn data in parallel enables high-speed processing.

以上マトリックスデータ10の作成方法及び格納方法に
ついて説明したが、第9図に示すようにCPU1からの
書込みデータ9を領域に区切っていき、最後の領域nに
おいてマトリックスデータ10を作成した時、各Col
umnデータ(各データディスク4に対応して格納され
るブロックの集合)の長さが揃わない場合がある。そこ
で、このような場合の処理について以下に示す。DCU
2はマトリックスデータ10を作成した時、第9図に示
すように、各Columnデータの長さが揃っていない
ことを認識している。第9図のマトリックスデータ10
を見るとデータディスク#4に対応したColumnデ
ータは他のColumnデータと比較し長さが2ブロッ
ク分短くなっている。そこで、このようなマトリックス
データ10を各データディスク#4に並列に書き込んで
いく場合、データディスク#4に対応したColumn
データはブロック38までの転送を終了した時点で、そ
のColumnデータの転送を終了とする。この時、す
なわち各Columnデータの長さが揃わないことが生
した場合のECC作成方法について説明する。ECCの
作成においては、第9図のマトリックスデータ10のデ
ータディスク#4に対応したColumnデータで、ブ
ロック31から38までのRowデータはデータディス
ク#1から#4に対応したCo1.umnデータを並列
にECCジェネレータ6に転送し、それ以降はデータデ
ィスク#1から#3のみを並列に転送してECCを作成
する。以上のような並列に転送するデータディスク4の
台数をダイナミックに切り替えるのはDCU2が制御す
る。
The method for creating and storing the matrix data 10 has been described above. As shown in FIG. 9, when the write data 9 from the CPU 1 is divided into areas and the matrix data 10 is created in the last area
The lengths of the umn data (a set of blocks stored corresponding to each data disk 4) may not be the same. Therefore, the processing in such a case will be described below. DCU
When creating the matrix data 10, No. 2 recognizes that the lengths of each Column data are not the same, as shown in FIG. Matrix data 10 in Figure 9
As can be seen, the length of the Column data corresponding to data disk #4 is two blocks shorter than that of other Column data. Therefore, when writing such matrix data 10 in parallel to each data disk #4, the Column corresponding to data disk #4
When the data transfer up to block 38 is completed, the transfer of the Column data ends. The ECC creation method at this time, that is, when the lengths of each Column data are not the same, will be explained. In creating the ECC, Column data corresponding to data disk #4 of matrix data 10 in FIG. 9 is used, and Row data from blocks 31 to 38 are Column data corresponding to data disks #1 to #4. The umn data is transferred in parallel to the ECC generator 6, and thereafter only data disks #1 to #3 are transferred in parallel to create an ECC. The DCU 2 controls the dynamic switching of the number of data disks 4 to be transferred in parallel as described above.

以上のようにマトリックスデータ10を作成し、データ
及びECCを当該ECCディスクグループ14に格納す
るのだが、その時の書き込むタイミングについて、第1
6図により説明する。マトリックスデータ10内の各C
olumnデータを当該ECCグループ14内の各デー
タディスク4に並列にデータを転送し、同時に、ECC
ジェネレータ6にも同様にデータを転送し、ECCを作
成する。しかし、ECCの作成にはある一定の処理時間
が必要であり、データディスク3へのデータ格納開始時
間とECCディスク5へのデータ格納開始時間との間に
ずれが生じる。この時、各データディスク4及びECC
ディスク5への記録タイミングには、次の同期、非同期
の2方式が考えられる。同期した場合はデータの格納と
ECCの格納はセットで考えられ、次の領域の格納は、
ECCの格納が終了した時点で開始される。一方、非同
期の場合はデータの格納とECCの格納は別と考え、E
CCの格納の終了を待たずに次の領域のデータの格納を
開始する。第16図にデータ格納とECC格納を同期し
て扱った場合と、非同期に扱った場合の書込み時間につ
いてしめす。この図から、同期した場合、領域1,2を
格納したとき格納時間=データ書込み時間十ECC作成
のずれ×2となる。もしn個の領域まで格納したとする
と格納時間=データ書込み時間十ECC作成のずれXn
となる。一方弁同期で領域1,2を格納した場合格納時
間=データ書込み時間十ECC作成のずトとなり、これ
はn個の領域を格納した場合も同じである。以上のこと
からデータの書込み動作とECCの書込み動作を非同期
に扱う方が書込みデータ9を一括で書き込む際に必要と
なる時間が短くなる。以上のことから、データとEC,
、Cの格納を非同期に扱った方が望ましい。
The matrix data 10 is created as described above, and the data and ECC are stored in the ECC disk group 14. However, regarding the writing timing at that time, the first
This will be explained with reference to Figure 6. Each C in matrix data 10
The column data is transferred to each data disk 4 in the ECC group 14 in parallel, and at the same time, the ECC
Data is similarly transferred to the generator 6 and an ECC is created. However, creating an ECC requires a certain amount of processing time, and a lag occurs between the start time of data storage on the data disk 3 and the start time of data storage on the ECC disk 5. At this time, each data disk 4 and ECC
There are two possible timings for recording onto the disc 5: synchronous and asynchronous. When synchronized, data storage and ECC storage are considered as a set, and storage of the next area is
It starts when the ECC storage is finished. On the other hand, in the case of asynchronous data storage and ECC storage are considered to be separate, and
Data storage in the next area is started without waiting for the end of CC storage. FIG. 16 shows the write time when data storage and ECC storage are handled synchronously and when they are handled asynchronously. From this figure, in the case of synchronization, when storing areas 1 and 2, the storage time = data write time + ECC creation deviation x 2. If up to n areas are stored, storage time = data writing time + ECC creation deviation Xn
becomes. On the other hand, when areas 1 and 2 are stored in valve synchronization, the storage time = data write time + ECC creation, and this is the same even when n areas are stored. From the above, the time required to write the write data 9 all at once is shorter if the data write operation and the ECC write operation are handled asynchronously. From the above, data and EC,
, C is preferably stored asynchronously.

このようにして、データ及びECCを格納する際、EC
Cディスクグループ14内の各データディスク4.EC
Cデイスク5の回転制御について次に示す。ECCディ
スクグループ14内の各データディスク4..ECCデ
イスク5の回転を同期させることにより、まとめて書き
こむ場合の平均回転待ち時間(Read / ’Jri
teヘッドの下に当該レコードが到達するまでのディス
クの回転時間)は、1台の時と同じ172回転となる。
In this way, when storing data and ECC, the EC
Each data disk 4 in the C disk group 14. EC
The rotation control of the C disk 5 will be described below. Each data disk 4 in the ECC disk group 14. .. By synchronizing the rotation of the ECC disk 5, the average rotation waiting time (Read / 'Jri
The rotation time of the disk until the record reaches the bottom of the TE head is 172 rotations, which is the same as when using one disk.

このことから、各データディスク4..ECCデイスク
5は回転を同期させて書き込むことが望ましい。
From this, each data disk 4. .. It is desirable to write data to the ECC disk 5 by synchronizing its rotation.

次に、データディスク4内の個々のデータを読み呂す場
合を第2図を用いて以下に示す。本実施例テハ、ブロッ
ク(読込み時のアクセス単位)の大きさは4KBである
。読込み時ではECCディスクグループ単位でのアクセ
スではなく、当該レコードを格納している、当該データ
ディスク4へのアクセスとなる。
Next, the case of reading individual data in the data disk 4 will be described below with reference to FIG. In this embodiment, the size of a block (access unit at the time of reading) is 4 KB. At the time of reading, access is not made in units of ECC disk groups, but access is made to the data disk 4 that stores the record.

CP U 1から発行されたRead要求はDCU2に
おいてコマンド解読され、アドレス変換を行なった後、
DCL’2の管理のもとて当該データドライブ4に読込
み要求を発行する。当該データドライブ4ではDCU2
からのコマンドを受は付は次第CPUIとの接続を切り
、他のデータディスク4てのRe a d処理にD C
U 2及びバスを空けわたす。
A Read request issued from CPU 1 is decoded as a command in DCU 2, and after performing address translation,
A read request is issued to the data drive 4 under the control of DCL'2. In the data drive 4, DCU2
As soon as it receives the command from the CPU, it disconnects from the CPU and starts reading the other data disks.
U2 and bus will be vacated.

当:亥データディスク・1ではD CU 2及びバスを
あけ渡し5た後、独自で当該レコードが格納さ昶ている
トラックまでヘッドを移動させるシーク及び当該レコー
ドがヘッドの下に来るまで回転待ちを行なう。シーク及
び回転待ちを行なった後、当該レコードの読込みが可能
になり次第、DCC20よびバスを再び獲得しRead
用Data Buffer (RD B )7にデータ
を転送し、そこからデータを高速でc P U lに転
送する。なお、読みだし時はデータディスク4、F C
CディスクSの回転を同期しても、しなくても横木)な
い。
In this case, on data disk 1, after opening DCU 2 and the bus, perform a seek to independently move the head to the track where the relevant record is stored, and wait for rotation until the relevant record comes under the head. Let's do it. After seeking and waiting for rotation, as soon as it becomes possible to read the record, acquire the DCC 20 and bus again and read
The data is transferred to the Data Buffer (RDB) 7 for the CPU, and from there the data is transferred at high speed to the CPU. In addition, when reading data disk 4, FC
C Even if the rotation of the disk S is synchronized or not, there is no horizontal crossbar).

次にアドレスの管理方法について説明する。Next, the address management method will be explained.

まず、書込み時について説明する。書込み時、CPUI
はIE CCディスクグループ14を論理ボリューlい
とする。DCU2内にはECCディスクグループと、そ
のグループ内の個個のデータディスク4、ECCディス
ク5の使用状況を示す管理テーブルを持っている。この
ECCディスクグループの管理テーブルと、そのグルー
プ内の個々のデータディスク4.ECCディスク5の管
理テーブルは階層的な構造になっている。ECCディス
クグループ内のデータディスク4とECCディスク5の
中で1台でも使用されている場合、データディスク4及
びECCディスク5の使用状況を示す管理テーブル内の
該当した使用中であることを示すフラグがON″ (使
用中)になり、同時に所属するECCディスクグループ
が使用中であることを示すフラグが”ON”(使用中)
になる。
First, writing will be explained. When writing, CPUI
Assume that the IE CC disk group 14 is a logical volume I. The DCU 2 has an ECC disk group and a management table showing the usage status of the individual data disks 4 and ECC disks 5 within the group. This ECC disk group management table and the individual data disks 4. The management table of the ECC disk 5 has a hierarchical structure. If even one of the data disks 4 and ECC disks 5 in the ECC disk group is in use, a flag indicating that the data disks 4 and ECC disks 5 are in use is displayed in the management table that indicates their usage status. becomes "ON" (in use), and at the same time the flag indicating that the ECC disk group to which it belongs is in use becomes "ON" (in use).
become.

書き込みに際しCPUIは第19図に示すようにECC
ディスクグループの使用状況を示す管理テーブルを見て
、当該ECCディスクグループ14が使用中であるかフ
ラグを調べる。前の工/○要求により当該ECCディス
クグループ14が使用中の場合は再度I10要求を発行
し、使用されていなければ、書込み処理に入る。このよ
うなフラグを用意しておくことにより、一括書き込みの
際当該ECCディスクグループ14内の各々のデータデ
ィスク4について使用状況をチエツクせずにすむ。また
、本実施例におけるシステムのトラック容量は個々のデ
ータディスク4の実際のトラック容量の4倍(ECCグ
ループ内のデータディスク数が4台の場合)とする。本
実施例では第2図に示すようにCPUIからはシーケン
シャルな書込みデータ9として送られてくる。この、書
込みデータ9を当該ECCグループ14に格納する場合
、その書込みデータ9はDCU2の管理のもとで、デー
タバッファ3内においてマトリックスデータ10に変換
され、ECCディスクグループ14内の各データディス
ク4に並列同時に書き込まれる。この時同時に以下に示
すようにアドレス変換テーブル及び、各データディスク
4内のカタログに書き込む。通常、書込み時はCPUI
が書込みデータ9に対し、データセット名を割り当てて
転送する。そこで、DCU2ではCPUI(○S)が持
つデータセット名とDCU2が実際に管理するアドレス
(ECCグループナンバ、データディスクナンバ)との
対応表として、アドレス変換テーブルをD CU 2内
部のメモリに格納する。この、アドレス変換テーブルを
格納するメモリは揮発でも良いが、不揮発が望ましい。
When writing, the CPU uses ECC as shown in Figure 19.
The management table showing the usage status of the disk group is looked at, and the flag is checked to see if the ECC disk group 14 is in use. If the ECC disk group 14 is in use due to the previous work/○ request, an I10 request is issued again, and if it is not in use, write processing begins. By preparing such a flag, it is not necessary to check the usage status of each data disk 4 in the ECC disk group 14 during batch writing. Further, the track capacity of the system in this embodiment is assumed to be four times the actual track capacity of each data disk 4 (when the number of data disks in the ECC group is four). In this embodiment, as shown in FIG. 2, sequential write data 9 is sent from the CPUI. When this write data 9 is stored in the ECC group 14, the write data 9 is converted into matrix data 10 in the data buffer 3 under the control of the DCU 2, and is converted into matrix data 10 for each data disk in the ECC disk group 14. are written simultaneously in parallel. At this time, the address conversion table and the catalog in each data disk 4 are simultaneously written as shown below. Normally, when writing, the CPU
assigns a data set name to the write data 9 and transfers it. Therefore, the DCU2 stores an address conversion table in the internal memory of the DCU2 as a correspondence table between the data set name held by the CPUI (○S) and the addresses (ECC group number, data disk number) actually managed by the DCU2. . The memory that stores the address conversion table may be volatile, but it is preferably non-volatile.

さらに、このアドレス変換テーブルはアドレス変換テー
ブル用ディスク15にも同時に書き込まれ、信頼度を高
めることが望ましい。また、書込みデータ9はマトリッ
クスデータ10状に展開され、個々のCo1.umnデ
ータとして当該データディスク4に格納されるため、そ
れぞれのデータディスク4において格納されるデータの
ヘッドナンバ、シリンダナンバ、レコードナンバを当該
データディスク4内のカタログに記録する。
Furthermore, it is desirable that this address translation table be simultaneously written to the address translation table disk 15 to increase reliability. Further, the write data 9 is expanded into matrix data 10, and each Co1. Since the data is stored on the data disk 4 as umn data, the head number, cylinder number, and record number of the data stored on each data disk 4 are recorded in the catalog within the data disk 4.

一方読込み時ではCPUI  (O8)からは当該デー
タセット名を指定し、読み込み可能かを調へる。第19
図に示すように、まず、当該ECCディスクグループ1
4が使用中であることを示すフラグが′○FF”(使用
されていない)の場合はそのまま読込みにかかり、ON
″ (使用中)の場合は当該データディスク4が使用中
かを調べる。
On the other hand, when reading, the CPUI (O8) specifies the data set name and checks whether it can be read. 19th
As shown in the figure, first, the ECC disk group 1
If the flag indicating that 4 is in use is '○FF' (not in use), reading continues and the flag is turned ON.
'' (in use), it is checked whether the data disk 4 is in use.

使用可能の場合、第17図に示すようにCPUIより指
定されたデータセット名から、DCU2がそのデータセ
ットが格納されているデータディスク4のアドレスを割
り当てる。この割り当てる方法について以下に説明する
。第18図に示すようにCP U 1から指定されたデ
ータセット名から当該ECCディスクグループ14を見
付ける。第17図に示すように、そのアドレス変換テー
ブルにおいて当該データセントが格納されているアドレ
スがaからしまでならデータディスク#1に対応し、b
からCならデータディスク#2、Cからdならデータデ
ィスク#3、dからeならデータディスク#4に対応す
る。このように、当該データセットが格納されている、
当該データディスク4のアドレスを見つけ、次に、第5
図に示すように、そのデータディスク11内のカタログ
により当該データが格納されているヘッドナンバ、シリ
ンダナンバ、レコードナンバを調へ、当該データを読み
出す。なお、上記アドレス管理方法においては第5図に
示すようにカタログを各データディスク4内に置いたが
、高速なアクセスを要求する場合は、このカタログをD
CUQ内のアドレス変換テーブルに置く方が望ましい。
If the data set is usable, the DCU 2 allocates the address of the data disk 4 in which the data set is stored, based on the data set name specified by the CPUI, as shown in FIG. This allocation method will be explained below. As shown in FIG. 18, the ECC disk group 14 is found from the data set name specified by the CPU 1. As shown in FIG. 17, if the address where the data center is stored in the address conversion table is from a to the bottom, it corresponds to data disk #1, and b
to C corresponds to data disk #2, C to d corresponds to data disk #3, and d to e corresponds to data disk #4. In this way, the data set is stored,
Find the address of the data disk 4, then the fifth
As shown in the figure, the data is read out according to the catalog in the data disk 11 using the head number, cylinder number, and record number in which the data is stored. In the above address management method, the catalog is placed in each data disk 4 as shown in FIG. 5, but if high-speed access is required, this catalog can be placed in the D
It is preferable to place it in the address translation table in the CUQ.

このようにすることにより、CPUIから転送されてき
たデータセット名に対し、即座にデータディスクナンバ
、ヘッドナンバ、シリンダナンバ、レコードナンバを割
当て、高速に当該データをアクセスすることが可能とな
る。また、各データディスク4内のみにカタログを置く
のではなく、各データディスク4にカタログ用のバッフ
ァを設け、いちいちカタログを読みにデータディスク4
をアクセスせずに、高速に当該データのアドレスを見つ
けることも可能となる。
By doing so, it is possible to immediately allocate a data disk number, head number, cylinder number, and record number to the data set name transferred from the CPUI, and access the data at high speed. In addition, instead of placing the catalog only in each data disk 4, each data disk 4 is provided with a buffer for the catalog, and the data disk 4 is used to read the catalog one by one.
It is also possible to quickly find the address of the data without accessing the data.

以上述べてきたように、本実施例を用いることにより、
書込みデータ9をマトリックスデータ10に変換する時
の変換アルゴリズムは簡単になる。また、個々のブロッ
クの管理も楽である。
As described above, by using this embodiment,
The conversion algorithm when converting write data 9 into matrix data 10 becomes simple. Also, managing individual blocks is easy.

本実施例では、トラック容量、ブロックのデータ量、デ
ータディスクの台数を変えた場合でも、同様な効果が期
待できることは明らかである。また、データディスク4
及びECCディスク5を磁気ディスクとしたが、光デイ
スクディスク、フロッピーディスクなどを使用しても同
様なことが可能である。
In this embodiment, it is clear that similar effects can be expected even if the track capacity, block data amount, and number of data disks are changed. Also, data disk 4
Although a magnetic disk is used as the ECC disk 5, the same effect can be achieved by using an optical disk, a floppy disk, or the like.

実施例2 DC1J2がマトリックスデータ1oを作成した時、各
Columnデータの長さが揃っていない場合の処理方
法の他の実施例を実施例2として以下に示す。第9図で
CPUIからの書込みデータ9を領域に区切っていき、
最後の領域nにおいてマトリックスデータ10を作成し
た時、各Columnデータ(各データディスク4に対
応して格納されるブロックの集合)の長さが揃わない場
合がある。本実施例でも実施例1と同様に一括書込みの
際に第7図に示すようにECCを作成し、障害発生時は
残りのデータとECCより障害データディスク4に対応
したColumnデータを復元することが可能となる。
Embodiment 2 Another embodiment of the processing method when the lengths of the column data are not the same when the DC1J2 creates the matrix data 1o will be described below as Embodiment 2. In Figure 9, write data 9 from the CPUI is divided into areas,
When the matrix data 10 is created in the last area n, the lengths of each Column data (a set of blocks stored corresponding to each data disk 4) may not be the same. In this embodiment, as in the first embodiment, an ECC is created as shown in FIG. 7 during batch writing, and when a failure occurs, the Column data corresponding to the failed data disk 4 is restored from the remaining data and ECC. becomes possible.

そこで、このような場合のECC作成方法について次に
説明する。DCTJ2はマトリックスデータ10を作成
した時、第9図に示すように、各Columnデータの
長さが揃っていないことを認識している。
Therefore, the ECC creation method in such a case will be explained next. When the DCTJ 2 creates the matrix data 10, it recognizes that the lengths of each Column data are not the same, as shown in FIG.

そこで、本実施例では、 Co1.umnデータの長さ
を揃える目的で、第6.8図に示すように、不足してい
るデータ分だけII O11あるいは任意のデータを書
き込んでおく。このようにして、見かけ上客Colum
nデータの長さが等しいマトリックスデータ10を作成
し1通常のECC作成アルゴリズムによりE CCを作
成する。以上のように、DC1J2によりマトリックス
データ10の各Columnの長さがたりない部分にA
 L L Oのデータを書き込み、長さを揃えた方が、
ECC作成アルゴリズム内に、長さが揃わない場合のア
ルゴリズムを用意する必要がないため、単純化されて良
い。
Therefore, in this embodiment, Co1. In order to equalize the length of the umn data, IIO11 or arbitrary data is written for the missing data, as shown in FIG. 6.8. In this way, the apparent customer Column
Matrix data 10 having the same length of n data is created, and an ECC is created using a normal ECC creation algorithm. As described above, DC1J2 allows A
It is better to write L L O data and make the lengths the same.
Since there is no need to prepare an algorithm for cases where the lengths are not the same in the ECC creation algorithm, it can be simplified.

なお、本実施例では長さがたりない分、LL O11を
書き込むことにしたが、II OI+以外の特定のパタ
ーンを書き込んでも良い。
In this embodiment, LL O11 is written because the length is insufficient, but a specific pattern other than II OI+ may be written.

また、本実施例は実施例1に記載の他のすへての動作に
適応可能である。
Further, this embodiment is applicable to all other operations described in the first embodiment.

実施例;3 以下にマトリックスデータ作成方法についての他の実施
例を実施例3として示す。本実施例ではまとめて一括書
込みを行う際、書込みデータ9を、Ro一方向にデータ
を作っていき(当、I亥E CCディスクグループ14
の各データディスク4に順番に振り分けていく)マトリ
ックスデータ10に変換する方法である。本実施例では
実施例1と同様、各データディスク4及びE CCディ
スク5の1へランク8斌(磁気ディスクの一周の容量)
を40KB。
Example 3 Another example of the matrix data creation method will be shown below as Example 3. In this embodiment, when writing data all at once, write data 9 is created in one direction in Ro (currently, IE CC disk group 14).
This is a method of converting into matrix data 10 (distributing the data sequentially to each data disk 4). In this embodiment, as in Embodiment 1, each data disk 4 and ECC disk 5 have a rank of 8 to 1 (capacity of one rotation of the magnetic disk).
40KB.

各ブロックのデータ量を4. K Bとしデータディス
ク4の台数を・1台する。
4. Data amount of each block. KB, and increase the number of data disks 4 by 1.

第10図に示すようにCP U Jよりまとめて大量に
転送されてきた書込みデータ9はDCU2の管理のもと
てマトリックスデータ1oに変換される。まず、第11
図に示すように、実施例]と同様に書込みデータ9は「
1個の領域に分けられる。
As shown in FIG. 10, a large amount of write data 9 transferred from the CPU J is converted into matrix data 1o under the control of the DCU 2. First, the 11th
As shown in the figure, the write data 9 is "
Divided into one area.

次に、各領域は2データデイスク4の台数分に振り分け
られる。この振り分けられたデータが、それぞれのデー
タディスク4に格納されるブロックの集まりとなる。以
下に振り分ける方a−について第12図を用いて具体的
に説明する。CY’ U 1より転送されてきた書込み
データ9は多数のブロックにより構成され、シリアルに
転送されてくる。
Next, each area is distributed to the number of two data disks 4. This distributed data becomes a collection of blocks stored on each data disk 4. The distribution method a- will be explained in detail below using FIG. 12. The write data 9 transferred from CY' U 1 is composed of a large number of blocks, and is transferred serially.

この書込みデータ9内で1個以上のブロックの集合(こ
の集合の大きさは等しくする)を作り、書き込むデータ
ディスク4に対応したColumnデータとして振り分
けていく。書込みデータ9でBlockl カラBlo
ck Lまでを第1図のデータディスク#lに格納すへ
(Co1.umnデータ#lに振り分け。
A set of one or more blocks (the size of the set should be equal) is created in this write data 9 and distributed as Column data corresponding to the data disk 4 to be written. Blockl Kara Blo with write data 9
ck up to L is stored on data disk #l in Figure 1 (Co1.umn is distributed to data #l).

B]、ock L +1からBlock mまでをデー
タディスク#2に格納すべ< Columnデータ#2
テーり分ける。
B], ock L +1 to Block m should be stored in data disk #2 < Column data #2
Divide into sections.

同様にColumnデータ33.84にBlock m
 + 1がらn、n+1からPを振り分ける。本実施例
ではデータディスクの台数を4台としたため、Colu
mnデータ#4テー当てた後は再びColumnデータ
#1テーlock p + 1からqを割当て以下同様
に書込みデータ9をColumnデータに展開していく
。以上のようにして、書込みデータ9をマトリックスデ
ータ10に変換する。
Similarly, Block m is added to Column data 33.84.
Assign n from +1 and P from n+1. In this example, the number of data disks was four, so Colu
After assigning the mn data #4, the column data #1 is assigned lock p + 1 to q again, and the write data 9 is similarly expanded to the column data. As described above, the write data 9 is converted into matrix data 10.

このようにマトリックスデータ1oを作成することによ
り、一括書込みで並列にしかも高速に書き込むことが可
能となる。
By creating the matrix data 1o in this way, it becomes possible to write in parallel and at high speed by batch writing.

次に、この変換方法を使ったとき、マトリックスデータ
10内において各Columnデータの長さが揃わない
場合の処理方法について述べる。第13図のように書込
みデータ9からマトリックスデータ10を作成した時、
各Columnデータの長さが揃わない場合が生じる。
Next, when using this conversion method, a processing method will be described when the lengths of each Column data in the matrix data 10 are not the same. When matrix data 10 is created from write data 9 as shown in FIG.
There may be cases where the lengths of each Column data are not the same.

このような場合のデータ書込み、ECC作成処理方法は
以下のようにすれば良い。本実施例では実施例1と同様
に、一括書込みの際に第7図に示すようにECCを作成
する。
The data writing and ECC creation processing method in such a case may be performed as follows. In this embodiment, as in the first embodiment, an ECC is created as shown in FIG. 7 during batch writing.

DCU2はマトリックスデータ10の作成時に、第9図
に示すように、各Columnデータの長さが揃ってい
ないことをDCU2は認識している。第13図のマトリ
ックスデータ10を見るとデータディスク#3,4に対
応したColumnデータは他のColumnデータと
比較し長さが1ブロック分短くなっている。そこで、こ
のようなマトリックスデータ10を各データディスク4
に並列に書き込んでいく場合、データディスク#3,4
に対応したColumnデータはブロック35.36ま
での転送を終了した時点で、そのColumnデータの
転送を終了とする。ECCの作成においては、第13図
のマ(−リノクスデータ10のデータディスクI3,4
に対応したColumnデータで、ブロック3がら35
゜4から33にまてのRowデータはデータディスクR
」か644に対応したColumnデータを並列にr=
 c c  ジェネレータ6に転送し、それ以降はデー
タディスク#1と#2のみを並列に転送してECCを作
成する。以上のような並列に転送するデータディスク4
の台数をダイナミックに切り替えるのはl’) CU 
2が行うものとする。
When the DCU 2 creates the matrix data 10, the DCU 2 recognizes that the lengths of each Column data are not the same, as shown in FIG. Looking at the matrix data 10 in FIG. 13, the Column data corresponding to data disks #3 and 4 are shorter in length by one block than other Column data. Therefore, such matrix data 10 is stored on each data disk 4.
When writing to data disks in parallel, data disks #3 and 4
When the transfer of the Column data corresponding to blocks 35 and 36 is completed, the transfer of the Column data ends. When creating the ECC, the data disks I3 and 4 of the data disks I3 and 4 of
Column data corresponding to block 3 to 35
゜Row data from 4 to 33 is on data disk R
” or 644 in parallel with the Column data r=
c c Transfer to the generator 6, and thereafter only data disks #1 and #2 are transferred in parallel to create an ECC. Data disk 4 to be transferred in parallel as above
Dynamically switching the number of units is l') CU
2 shall be carried out.

次に、実施例2と同様にColumnデータの長さを揃
える[j的で、第14図に示すように、不足しているデ
ータ分だけ′0″あるいは任意のデータを書き込んでお
く方法について説明する。以1.のように、D c t
: 2にょリマトIJツクスデータ1oの各Co ]、
 u m nの長さがたりない部分にALL”O”ある
いは任亨、のデータを書き込み、見かけ上洛Co ]、
、 u m nデータの長さが等しいマトリックスデー
タ10を作成し、通常のECC作成アルゴリズムにより
ECCを作成する。このように長さを揃えることで、F
 CC作成アルゴリズム内に、長さが揃わない場合のア
ルゴリズムを用意する必要がなく、単純化される。
Next, as in Example 2, we will explain how to make the lengths of Column data the same [j], and write '0' or arbitrary data for the missing data as shown in Figure 14. As in 1. below, D c t
: Each Co of 2 Nyorimato IJ Tsukusu Data 1o ],
Write the data of ALL “O” or NIN in the part where the length of um n is not enough, and it looks like Raku Co ],
, u m n data having the same length is created, and an ECC is created using a normal ECC creation algorithm. By aligning the lengths like this, F
There is no need to prepare an algorithm for when the lengths are not the same in the CC creation algorithm, which simplifies the process.

次に、本発明を適応しない場合と実施例1の書込みデー
タ9を一端テータバソファ3に格納した後、4等分して
当該ECCディスクグループ14の各データディスク4
に書き込む方法と、書込みデータ9をデータバッファ3
に書き込みながら当該ECCディスクグループ14の各
データディスク4に書き込む方法において、各々の書込
み時間の比較を第15図を用いて説明する。第15図に
示したようにデータディスク4の転送レートを3M B
 / s、回転数を3600r、p、m 、  トラッ
ク容11u40KB/TRKとし、ト: CCディスク
グル−プ14内にはデータディスク4を4台持っている
ものとする。ECCディスクグループへの転送データ量
を 40KB/TRKX4台= 160 Ni B / G
roupとした場合、このデータを格納する場合本発明
を適応しないと4回転ディスクが回転しなければならな
い。この時の書き込み時間は ディスク1回転にがかる時開(16,6m5)X4回転
=66.4msとなる。実施例1の方法ではデータバッ
ファ3への書込み転送レートが12 M B / sで
はトータルの書込み時間(160MB)は30 m s
となり、本発明を適応しない場合と比較し45%に減少
する。また、データバッファ3への書込み転送レートを
24.48MB/sとしていくと、トータルの書込み時
間はさらに、23.3.20m5  と減少する。一方
、本実施例のようにデータバッファ3に書き込みながら
、当該ECCディスクグループ14の各データディスク
4に書き込む場合は、データバッファ゛3への書込み転
送レートを12M B / s以上にすると、データバ
ッファ3への書込み時間は、データディスク4への書込
み時間中に行われるので全書込み時間は、データディス
ク4への書込み時間となり16.6m s  となり本
発明を適応しない場合と比較し25%に減少する。
Next, the write data 9 in the case where the present invention is not applied and in the first embodiment are stored at one end in the data bath sofa 3, and then divided into four equal parts to each data disk 4 of the ECC disk group 14.
How to write data 9 to data buffer 3
In the method of writing to each data disk 4 of the ECC disk group 14 while writing to the data disk, a comparison of the respective write times will be explained using FIG. As shown in FIG. 15, the transfer rate of the data disk 4 is set to 3MB.
/s, rotation speed is 3600r, p, m, track capacity is 11u40KB/TRK, and CC disk group 14 has four data disks 4. The amount of data transferred to the ECC disk group is 40KB/4 TRKs = 160 Ni B/G
roup, a four-rotation disk would have to rotate to store this data unless the present invention is applied. The writing time at this time is 66.4 ms (open time (16,6 m5) x 4 rotations for one rotation of the disk). In the method of Example 1, when the write transfer rate to the data buffer 3 is 12 MB/s, the total writing time (160 MB) is 30 m s.
This is a reduction of 45% compared to the case where the present invention is not applied. Furthermore, when the write transfer rate to the data buffer 3 is set to 24.48 MB/s, the total write time is further reduced to 23.3.20 m5. On the other hand, when writing to each data disk 4 of the ECC disk group 14 while writing to the data buffer 3 as in this embodiment, if the write transfer rate to the data buffer 3 is set to 12 M B/s or more, the data buffer Since the writing time to data disk 3 is performed during the writing time to data disk 4, the total writing time is 16.6 m s, which is reduced to 25% compared to the case where the present invention is not applied. do.

以上のことから本発明を適応することにより書き込み時
間は減少し、また、データバッファ3への書込み転送レ
ートが低い場合は本実施例が有効である。
From the above, by applying the present invention, the write time is reduced, and this embodiment is effective when the write transfer rate to the data buffer 3 is low.

なお、トラック容量、ブロックのデータ量、データディ
スクの台数を変えた場合でも1本実施例で示すようなマ
トリックスデータ作成方法を同様に使用できることは明
らかである。また、本実施例は実施例1,2に記載の他
のすへての動作に適応可能である。
It is clear that the matrix data creation method shown in this embodiment can be used in the same way even if the track capacity, block data amount, and number of data disks are changed. Furthermore, this embodiment is applicable to all other operations described in the first and second embodiments.

〔発明の効果〕〔Effect of the invention〕

以上説明したように、一括書込み2個別読み出しするよ
うな、データヘースなどでは、本発明のように書込みを
まとめて並列に高速で行うことにより、書込み時間を短
縮することができる。さらに、一括書込み時に領域に分
割しマトリックス状のデータに変換して並列にHき込む
。その際、各データ書込み用磁気ディスクに対応し7た
、データの長さが揃わない場合、その差を詰めないで使
用することにより、高速に処理することが可能となる。
As explained above, in data storage where data is written in bulk and read out separately, the writing time can be shortened by writing in bulk and in parallel at high speed as in the present invention. Furthermore, during batch writing, the data is divided into areas, converted into matrix data, and written in H in parallel. At this time, if the data lengths corresponding to each data writing magnetic disk are not the same, high-speed processing is possible by using the data without narrowing the difference.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の全体構成ブロック図、第2図は第1の
実施例のデータ処理動作説明のためのブロック図、第3
3図は本発明の第1の実施例のデータ変換概念図、第4
図は本発明のデータディスク。 ECCディスクの内部構成図、第5図は本発明のアドレ
ス変換の概念図、第6図は第1の実施例のデータ変換概
念図、第7図は本発明のECC作成概念図、第8図は第
2の実施例のECC作成の説明のための概念図、第9図
は第1の実施例のデータ変換の説明のための概念図、第
10図は第3の実施例のデータ処理動作説明のためのブ
ロック図、第11171は第3の実施例のデータ変換説
明のための概念図、第12図は第3の実施例のデータ変
換詳細を示す概念図、第13図は第3の実施例のデータ
変換を説明する概念図、第14図は第3の実施例のデー
タ変換を説明する概念図、第15図は本発明の書込み処
理時間比較図、第16図は本発明のデータ書込み時間の
比較タイムチャート、第17図は本発明のアドレス変換
方法を説明するブロック図、第18図は本発明のアドレ
ス決定方法を説明するブロック図、第19図は本発明の
管理テーブルへのアクセスフローチャー]へ。 1、− CPじ(中央処理装置) 、  2− I) 
CL’ (Ddj、1制御部)、3 データバッファ、
・1 データディスク(データ用磁気ディスク)、5■
・: C(:ディスク(ECC用磁−(ディスク)、6
 ト:CCジェネレータ、7・Read用データバッフ
ァ、8 ブタ復元部、9・ に込みデータ、10・マ(
−リノクスデータ211 アクチュエータ、12−R/
W回路、13 パリティ作成グループ、l 4−ECC
ディスクグループ、15−アドレス変換テーブル■ づ 図 図 // z ア74.LL−7 Vw口r違 第 図 カフロノ′□ ス 図 E(C ティズフフIL−)。 図 不 q 図 第 区 冨 /ρ 図 第 z 図 回 ■ 図 モー2テイ77(+1Lk−1 3HδIs /lρKf31冴と0g 図 不 /6 冨 /7 図 洒 図
FIG. 1 is a block diagram of the overall configuration of the present invention, FIG. 2 is a block diagram for explaining the data processing operation of the first embodiment, and FIG.
Figure 3 is a conceptual diagram of data conversion of the first embodiment of the present invention;
The figure shows a data disk of the present invention. An internal configuration diagram of an ECC disk, FIG. 5 is a conceptual diagram of address conversion of the present invention, FIG. 6 is a conceptual diagram of data conversion of the first embodiment, FIG. 7 is a conceptual diagram of ECC creation of the present invention, and FIG. 8 is a conceptual diagram for explaining ECC creation in the second embodiment, FIG. 9 is a conceptual diagram for explaining data conversion in the first embodiment, and FIG. 10 is a data processing operation in the third embodiment. A block diagram for explanation, No. 11171 is a conceptual diagram for explaining data conversion of the third embodiment, FIG. 12 is a conceptual diagram showing details of data conversion of the third embodiment, and FIG. 13 is a conceptual diagram for explaining data conversion of the third embodiment. FIG. 14 is a conceptual diagram explaining data conversion of the third embodiment. FIG. 15 is a comparison diagram of write processing time of the present invention. FIG. 16 is a diagram of data of the present invention. Comparison time chart of write times, FIG. 17 is a block diagram explaining the address conversion method of the present invention, FIG. 18 is a block diagram explaining the address determination method of the present invention, and FIG. 19 is a diagram explaining the address conversion method of the present invention. access flowchar]. 1,-CPji (Central Processing Unit), 2-I)
CL' (Ddj, 1 control unit), 3 data buffer,
・1 data disk (magnetic disk for data), 5■
・: C(: Disk (Magnetic for ECC (Disk), 6
G: CC generator, 7. Read data buffer, 8. Pig restoration section, 9. Input data, 10. MA (
-Rinox Data 211 Actuator, 12-R/
W circuit, 13 parity creation group, l 4-ECC
Disk group, 15-Address translation table ■ zu figure// z A74. LL-7 Vw Different Diagram Kafrono'□ Space Diagram E (C Tizfufu IL-). Fig. No. q Fig. No. ku Tomi/ρ Fig. Z Fig. times ■ Fig. Mo 2 Tei 77 (+1Lk-1 3HδIs /lρKf31 Sae and 0g Fig. No. 6 Tomi/7 Fig. No. 7)

Claims (1)

【特許請求の範囲】 1、上位装置からのデータの入出力要求に対する、当該
データを格納するディスクドライブと、該ディスクドラ
イブを管理する制御装置からなるシステムにおいて、上
記上位装置からシリアルに転送されてきたデータを分割
し、さらにそれらのデータからエラー検出、ECCを生
成し、分割したデータおよびECCを別々のディスクド
ライブに並列で一度に格納することによりグループを作
成し、読出しの場合は個々のデータのみへのアクセスを
行うことを特徴とする集合ディスク装置。 2、前記集合ディスク装置において、上位装置から転送
されてくる書込みデータの大きさが一定である場合、そ
の書込みデータをあらかじめ決めておいた容量に分割し
複数の領域に分けておき、その各々の領域を一端、半導
体メモリに格納し、そこで、一度に並列に格納するディ
スクドライブの台数と同じ数に分割することにより、マ
トリックス状のデータに変換することを特徴とする特許
請求範囲第1項記載の集合ディスク装置。 3、前記集合ディスク装置において、データ格納用ディ
スクドライブとECC格納用ディスクドライブにデータ
及びECCを格納する際、ECCの格納の終了を待たず
に次のデータの格納を開始してしまうことを特徴とする
特許請求範囲第1項記載の集合ディスク装置。 4、前記集合ディスク装置において、少なくともデータ
およびECCをパラレルに書き込む時と、ディスクドラ
イブに障害が発生し、その中のデータを復元するため、
残りのデータとECCのデータを読み出す時に、当該デ
ータ格納用ディスクドライブとECC格納用ディスクド
ライブの回転を同期させることを特徴とする特許請求範
囲第1項記載の集合ディスク装置。 5、前記集合ディスク装置において各データ格納用ディ
スクドライブにバッファを設け、ディスクドライブとバ
ッファの双方にデータディスクに格納されているデータ
のカタログを格納しておくことにより、データ格納用デ
ィスクドライブからデータを読み込む場合、そのアドレ
スはバッファを見ることにより行なうことを特徴とする
特許請求範囲第1項記載の集合ディスク装置。 6、前記集合ディスク装置において上位装置からシリア
ルに転送されてきたデータを、マトリックス状のデータ
に変換しパラレルに格納するディスクドライブ数に分割
した際、当該ディスクドライブに格納されるデータの長
さが揃わない場合不足している分だけ、ある特殊なデー
タを埋め込み、長さを揃えることを特徴とする特許請求
範囲第1項記載の集合ディスク装置。 7、前記集合ディスク装置において上位装置からシリア
ルに転送されてきたデータを、パラレルに格納するディ
スクドライブに、ある単位で順に振り分け、マトリック
ス状のデータを作成しデータがそろい次第パラレルに転
送することを特徴とする特許請求範囲第1項記載の集合
ディスク装置。 8、前記集合ディスク装置においてを当該データ格納用
ディスクドライブにより構成されるグループを論理的な
ボリュームとして扱うことを特徴とする特許請求範囲第
1項記載の集合ディスク装置。 9、前記集合ディスク装置において、一括書き込みを行
っている際当該ディスクドライブ内の当該トラックが書
き込み不能の場合、そのトラックへの書き込みは行わず
、又、該ディスク上の予備のトラックへヘッドを移動し
て書き込む動作を行わずに、そのトラックをとばして、
同一シリンダ内の他のトラックへ、ヘッドの電気的な切
り替えにより、次のトラックへ書き込むことを特徴とす
る特許請求範囲第1項記載の集合ディスク装置。 10、前記集合ディスク装置において、一括書き込みを
行っている際、当該ディスクドライブにより構成される
グループにおいて、一つのディスクドライブのシリンダ
への書き込みが終了した時点でグループ内の他のディス
クドライブへの書き込みも終了として、グループ内の全
てのディスクドライブにおいてシリンダを移動すること
を特徴とする特許請求範囲第1項記載の集合ディスク装
置。 11、前記集合ディスク装置において、複数のディスク
ドライブにより構成される一括書き込みを行う単位であ
るグループにおいて、そのグループ内の個々のディスク
ドライブの中で、少なくとも一台でも使用されている場
合、“ON”とするグループの使用中を示すフラグを管
理テーブルとして、集合ディスク装置を制御する部分に
設け、一括書き込みを行う場合そのフラグを見ることに
より書き込み可能かを判定することを特徴とする特許請
求範囲第1項記載の集合ディスク装置。 12、前記集合ディスク装置において、複数のディスク
ドライブにより構成される一括書き込みを行う単位であ
るグループにおいて、そのグループ内の個々のディスク
ドライブについて使用されている場合、“ON”とする
使用中フラグと、そのグループ内のディスクドライブが
少なくとも一つでも使用されている場合“ON”とする
使用中フラグを、階層的な管理テーブルとして集合ディ
スク装置を制御する部分に設けることを特徴とする特許
請求範囲第1項記載の集合ディスク装置。
[Scope of Claims] 1. In a system consisting of a disk drive that stores the data and a control device that manages the disk drive in response to a data input/output request from a higher-level device, data is serially transferred from the higher-level device. Error detection and ECC are generated from the data, and the divided data and ECC are stored in parallel on separate disk drives at once to create a group, and when reading, individual data is A collective disk device characterized by accessing only the disk. 2. In the collective disk device, if the size of the write data transferred from the host device is constant, the write data is divided into predetermined capacities and divided into multiple areas, and each Claim 1, characterized in that the area is first stored in a semiconductor memory, and then converted into matrix-like data by dividing the area into the same number of disk drives that store data in parallel at once. aggregate disk device. 3. In the collective disk device, when data and ECC are stored in the data storage disk drive and the ECC storage disk drive, storage of the next data is started without waiting for the end of ECC storage. A collective disk device according to claim 1. 4. In the collective disk device, at least when writing data and ECC in parallel, and when a failure occurs in a disk drive, in order to restore the data therein,
2. The collective disk device according to claim 1, wherein when reading the remaining data and the ECC data, the rotations of the data storage disk drive and the ECC storage disk drive are synchronized. 5. In the collective disk device, each data storage disk drive is provided with a buffer, and by storing a catalog of data stored on the data disk in both the disk drive and the buffer, data can be transferred from the data storage disk drive. 2. The aggregate disk device according to claim 1, wherein when reading the address, the address is determined by looking at the buffer. 6. When the data serially transferred from the host device in the collective disk device is converted into matrix data and divided into the number of disk drives to be stored in parallel, the length of the data stored in the disk drive is 2. The aggregated disk device according to claim 1, wherein when the lengths are not equal, certain special data is embedded to compensate for the missing lengths to make the lengths equal. 7. In the collective disk device, the data serially transferred from the host device is sequentially distributed in a certain unit to the disk drives to be stored in parallel, creating matrix-shaped data, and transferring the data in parallel as soon as the data is completed. A collective disk device according to claim 1, characterized in that: 8. The collective disk device according to claim 1, wherein a group formed by the data storage disk drives is treated as a logical volume in the collective disk device. 9. In the collective disk device, if the track in the disk drive is unwritable during batch writing, writing to that track is not performed and the head is moved to a spare track on the disk. and then skip that track without writing it.
2. The collective disk device according to claim 1, wherein writing is performed on the next track by electrically switching the head to another track within the same cylinder. 10. When performing bulk writing in the collective disk device, in a group composed of the relevant disk drives, when writing to the cylinder of one disk drive is completed, writing to other disk drives in the group is completed. 2. The aggregated disk device according to claim 1, wherein the cylinders are moved in all disk drives in the group when the group is completed. 11. In the collective disk device, if at least one of the individual disk drives in the group is being used in a group that is a unit that performs batch writing made up of multiple disk drives, the "ON" ” A flag indicating whether the group is in use is provided as a management table in a part that controls the collective disk device, and when performing bulk writing, it is determined whether writing is possible by looking at the flag. The collective disk device according to item 1. 12. In the collective disk device, in a group that is a unit for batch writing made up of a plurality of disk drives, if each disk drive in the group is used, an in-use flag that is set to "ON" is set. , the claim is characterized in that an in-use flag that is set to "ON" when at least one disk drive in the group is in use is provided in a part that controls the collective disk device as a hierarchical management table. The collective disk device according to item 1.
JP2214261A 1990-08-15 1990-08-15 Collective disk device Pending JPH0496818A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2214261A JPH0496818A (en) 1990-08-15 1990-08-15 Collective disk device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2214261A JPH0496818A (en) 1990-08-15 1990-08-15 Collective disk device

Publications (1)

Publication Number Publication Date
JPH0496818A true JPH0496818A (en) 1992-03-30

Family

ID=16652822

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2214261A Pending JPH0496818A (en) 1990-08-15 1990-08-15 Collective disk device

Country Status (1)

Country Link
JP (1) JPH0496818A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0720994A (en) * 1993-06-30 1995-01-24 Hitachi Ltd Storage system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0720994A (en) * 1993-06-30 1995-01-24 Hitachi Ltd Storage system
US6578100B1 (en) 1993-06-30 2003-06-10 Hitachi, Ltd. Storage system having plural buses
US6581128B2 (en) 1993-06-30 2003-06-17 Hitachi, Ltd. Storage system
US7120738B2 (en) 1993-06-30 2006-10-10 Hitachi, Ltd. Storage system having data format conversion function
US7444467B2 (en) 1993-06-30 2008-10-28 Hitachi, Ltd. Storage system having a semiconductor memory device which stores data and parity data permanently

Similar Documents

Publication Publication Date Title
JP3778980B2 (en) How to use a reserved amount of unused storage space
US6785836B2 (en) In-place data transformation for fault-tolerant disk storage systems
US5636356A (en) Disk array with original data stored in one disk drive and duplexed data distributed and stored in different disk drives
JPH08115173A (en) Method for expansion of storage capacity of data storage capacity
US5583876A (en) Disk array device and method of updating error correction codes by collectively writing new error correction code at sequentially accessible locations
EP0572564A4 (en)
JPH06309224A (en) Method for data page control and data processing system
JPH08249134A (en) Method for writing of user data according to redundancy parity storage technique
JPH02176822A (en) File system
JP3099930B2 (en) Disk array device
JP2836929B2 (en) Rotary storage device and control method thereof
JPH0496818A (en) Collective disk device
JP3564732B2 (en) Disk control method and apparatus
JP3428350B2 (en) Storage system
JPH06119125A (en) Disk array device
JP3584665B2 (en) Library storage device using portable media
JPH06214720A (en) Method for update of data of disk storage device
JPH06274282A (en) Magnetic recorder
JP3175999B2 (en) Disk array device
JPS63251965A (en) Disk managing system
JPH08147111A (en) Extended constitution method for disk array device
JP3136811B2 (en) Alternative sector processing method
JP3400318B2 (en) Data recording method for disk array device and medium recording the program
JPH1145497A (en) Optical disk library device, data recording/reproducing method and recording medium with data recording/ reproducing program
JP3183253B2 (en) Dynamic capacity increase method and dynamic capacity increase method for disk device