JP2000347815A - Disk array system - Google Patents

Disk array system

Info

Publication number
JP2000347815A
JP2000347815A JP11159828A JP15982899A JP2000347815A JP 2000347815 A JP2000347815 A JP 2000347815A JP 11159828 A JP11159828 A JP 11159828A JP 15982899 A JP15982899 A JP 15982899A JP 2000347815 A JP2000347815 A JP 2000347815A
Authority
JP
Japan
Prior art keywords
data
host
la
disk
means
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
JP11159828A
Other languages
Japanese (ja)
Inventor
Yasuyuki Ajimatsu
Jun Matsumoto
Naoto Matsunami
Masahiko Sato
Ikuya Yagisawa
Masayuki Yamamoto
雅彦 佐藤
育哉 八木沢
康行 味松
山本  政行
直人 松並
純 松本
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 JP11159828A priority Critical patent/JP2000347815A/en
Publication of JP2000347815A publication Critical patent/JP2000347815A/en
Application status is Pending legal-status Critical

Links

Abstract

PROBLEM TO BE SOLVED: To provide the disk array system which adds a guarantee code based upon the property of data to data and is improved in transfer efficiency. SOLUTION: A host input/output means 208 sends and receives data between a host 100 and a cache 240 according to a transfer list containing an LA(logical address) generated by an MPU 250. An LA holding means 320 in a host information holding means 240 acquires and holds the LA when the data are transmitted and received between the host input/output means 208 and cache 240. An LA adding means 300 adds the LA stored in the LA holding means 320 to the data to be written to the cache 240.

Description

【発明の詳細な説明】 DETAILED DESCRIPTION OF THE INVENTION

【0001】 [0001]

【発明の属する技術分野】本発明は、アレイ状に配置した複数のディスク装置を有するディスクアレイシステムに係り、特に、コンピュータシステムの記憶システムとして用いるのに好適なディスクアレイシステムに関する。 The present invention relates to relates to a disk array system having a plurality of disk devices arranged in an array, in particular, of a preferred disk array system for use as a storage system of a computer system.

【0002】 [0002]

【従来の技術】ディスクアレイシステムは、RAID(R BACKGROUND OF THE INVENTION Disk array systems, RAID (R
edundant Arrays of Inexpensive Disks)とも呼ばれ、 edundant Arrays of Inexpensive Disks) and is also called,
複数のディスク装置をアレイ状に配置した構成をとり、 A plurality of disk devices take a structure arranged in an array,
ホストからのリード要求(データの読み出し要求)およびライト要求(データの書き込み要求)をディスクの並列動作によって高速に処理するとともに、データに冗長データを付加することによって信頼性を向上させた記憶装置である。 Read request from the host (data read request) and a write request (data write request) with high-speed processing by the parallel operation of the disk, a storage device having improved reliability by adding redundancy data to the data is there. ディスクアレイシステムは、例えば、"AC Disk array system, for example, "AC
ase for Redundant Arrays of Inexpensive Disks (RAI ase for Redundant Arrays of Inexpensive Disks (RAI
D)", David A.Patterson, Garth Gibson, and Randy H. D) ", David A.Patterson, Garth Gibson, and Randy H.
Katz, Computer Science Division Department of Elec Katz, Computer Science Division Department of Elec
trical Engineering and Computer Sciences, Universi trical Engineering and Computer Sciences, Universi
ty of California Berkeleyに記載されているように、 As described in the ty of California Berkeley,
冗長データの種類と構成により5つのレベルに分類されている。 It has been classified into five levels according to the type and configuration of the redundant data.

【0003】ホストからのライト要求時には、ディスクアレイ内部では、ホストから受け取ったデータを特殊なアドレス変換によって分割し、一時的にキャッシュに格納後、順次、ディスク装置へと並列に書込む。 [0003] In a write request from the host, inside the disk array, the data received from the host is divided by a special address conversion, after temporarily stored in the cache, sequentially writes in parallel to the disk device. また、ホストからのリード要求時には、分割したデータをディスク装置から並列に読み出してキャッシュへと格納し、さらにキャッシュから読み出した分割データを元のデータとして束ね、ホストへと転送する。 Further, when a read request from the host, the divided data is read from the disk device in parallel to store into cache, further bundling the divided data read from the cache as the original data, and transfers to the host.

【0004】ディスクアレイにおいては、ディスク装置の障害時にもデータを復元できるように冗長データを作成し、ディスク装置に保存しているが、さらに、ディスクアレイ全体の信頼性を高める目的で、各論理データブロックごとに保証コードを付加することが知られている。 [0004] In the disk array is to create redundant data so that it can also restore data in the event of a failure of the disk drive, but stored in the disk device, further, for the purpose of increasing the reliability of the entire disk array, each logic it is known that the addition of guarantee code to each data block. 保証コードを付加する方式としては、例えば、米国特許第5,706,298号明細書に記載されているように、各論理データブロックの縦方向に排他的論理和演算を実施するLRC(Longitudinal Redundancy Check ) As a method for adding a guarantee code, for example, U.S. Patent as described in the 5,706,298 Pat, LRC (Longitudinal Redundancy implementing an XOR operation in the longitudinal direction of each logical data block Check)
と称する保証コードを付加し、ディスクアレイ内部でのデータ転送中のデータビットエラーを検査するものが知られている。 It adds a guarantee code called, are known which examines the data bit error during data transfer within the disk array.

【0005】 [0005]

【発明が解決しようとする課題】しかしながら、ディスクアレイにおいてライト/リード時には、ディスクへの並列転送を実施するため、特殊なアドレス変換を施し、 However [0007], at the time of the write / read in the disk array, for carrying out the parallel transfer to the disk, subjected to a special address conversion,
データを分割した状態で転送する。 Transferring in a state of dividing the data. 従って、転送中のデータビットエラーは、各論理データブロックの縦方向に排他的論理和演算を実施するLRCにより検出できるが、分割したデータの異常アドレスに対する読み出し/ Thus, the data bit error during transfer, can be detected by LRC to implement an XOR operation in the longitudinal direction of each logical data block, reading to an abnormal address of split data /
書込みを検出することはできないものである。 One in which it is not possible to detect the writing.

【0006】そこで、分割したデータの異常アドレスに対する読み出し/書込みを検出する方式としては、転送元アドレスのような転送されるデータを特定できるデータの属性に基づくデータ保証コードをデータに付加する方式も考えられる。 [0006] Therefore, as a method for detecting the divided read / write to an abnormal address of the data, a method of adding the data guarantee code based on the attributes of the data that can identify the data to be transferred, such as the source address in the data also Conceivable.

【0007】一方、近年においては、転送機能をキャッシュコントローラに持たせるのでなく、転送機能付きホスト入出力手段を用いて、転送効率を高めることがなされている。 On the other hand, in recent years, rather than to have a transfer function to the cache controller, using a host input means with the transfer function have been made to increase the transfer efficiency.

【0008】ここで、転送機能付きホスト入出力手段を用いて、データの属性に基づく保証コードをデータに付加しようとすると、データ転送の度毎に、プロセッサに割り込みをかける必要があるため、データの転送作業にプロセッサが関与し、その結果、転送効率が低下することが判明した。 [0008] Here, using the host input means with the transfer function, when you attempt to attach a security code based on the attributes of the data to the data, each time the data transfer, it is necessary to interrupt the processor, data processor involved in the transfer operations, as a result, the transfer efficiency was found to be reduced.

【0009】本発明の目的は、データの属性に基づく保証コードをデータに付加することができるとともに、転送効率の向上したディスクアレイシステムを提供することにある。 An object of the present invention, it is possible to add a guarantee code based on the attributes of the data in the data to provide an improved disk array system of transfer efficiency.

【0010】 [0010]

【課題を解決するための手段】上記目的を達成するために、本発明は、アレイ状に配置した複数のディスク装置を有するディスクアレイにホストからのデータを書き込み、また、上記ディスクアレイに書き込まれたデータを上記ホストに読み出すディスクアレイシステムにおいて、上記ディスクアレイは、上記ホストとの入出力を行うホスト入出力手段と、データを一時的に保持するキャッシュと、データの属性に基づく保証コードを特定する値を保持する保証コード保持手段と、上記ホスト入出力手段の転送リストを作成するMPUとを備え、上記ホストからのデータの書込み要求時には、上記MPUは、上記ホスト入出力手段が参照する転送リストを作成し、この転送リスト中にデータの属性に基づく保証コードを特定する値を設定し、 To achieve the above object of the Invention The present invention writes data from the host to the disk array having a plurality of disk devices arranged in an array, also written in the disk array in disk array systems for reading data to the host, the disk array, the particular host input means for inputting and outputting between the host, a cache for temporarily holding data, a guarantee code based on the attributes of the data transfer the guarantee code holding means for holding a value, and a MPU which creates a transfer list of the host input means, at the time of data write request from the host, the MPU is that the host input means refers make a list, and sets a value that identifies the guarantee code based on the attributes of the data during the transfer list, 記ホスト入出力手段は、データの属性に基づく保証コードを特定する値を含む上記転送リストに従い、データを上記キャッシュに送信し、上記保証コード保持手段は、データが上記キャッシュに送信される際にデータの属性に基づく保証コードを特定する値を獲得し、データの属性に基づく保証コードを特定する値を保持し、上記保証コード付加手段は、上記保証コード保持手段に格納したデータの属性に基づく保証コードを特定する値を上記キャッシュに書き込まれるデータに付加するようにしたものである。 Serial host output means in accordance with the transfer list that contains a value specifying the guarantee code based on the attributes of the data, and sends the data to the cache, the guarantee code holding means, when the data is transmitted to the cache acquiring a value for identifying the guarantee code based on the attributes of the data, and holds a value that identifies the guarantee code based on the attributes of the data, the code addition means, based on the attribute of the data stored in the guarantee code holding means the value specifying the guarantee code is obtained so as to add the data to be written to the cache. かかる構成により、転送リスト中のデータの属性に基づく保証コードを特定する値を参照して、書き込まれるデータにデータの属性に基づく保証コードを特定する値を付加するようにしているので、データの属性に基づく保証コードを特定する値をデータに付加することができるとともに、かかる保証コードを特定する値の付加をMPUを用いることなく行えるため、転送効率が向上し得るものとなる。 With this configuration, by referring to the value specifying the guarantee code based on the attributes of the data in the transfer list, since the way to add a value that identifies the guarantee code based on the attributes of the data in the data to be written, the data it is possible to add a value that identifies the guarantee code based on the attribute data, for made without using MPU additional values ​​identifying such guarantee code, and that the transfer efficiency can be improved.

【0011】 [0011]

【発明の実施の形態】以下、図1〜図13を用いて、本発明の第1の実施形態によるディスクアレイシステムの構成及び動作について説明する。 DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, with reference to FIGS. 1 to 13, a description will be given of a first embodiment configuration and operation of the disk array system according to the present invention. 最初に、図1を用いて、本実施形態によるディスクアレイシステムの構成について説明する。 First, with reference to FIG. 1, the configuration of the disk array system according to this embodiment.

【0012】ホスト100,110,120は、ホストケーブルで接続されたバススイッチ130を介して、ホストケーブルで接続されたディスクアレイ200の中のホスト入出力手段208,209,210に接続されている。 [0012] The host 100, 110 and 120 through the bus switch 130 that is connected to the host cable is connected to the host input means 208, 209, 210 in the disk array 200 connected with the host cable . なお、ホスト100,110,120は、少なくとも1つ以上であればよいものである。 The host 100, 110 and 120, those may be at least one.

【0013】ディスクアレイ200は、ホスト入出力手段208,209,210と、ディスク入出力手段21 [0013] Disk array 200 includes a host input means 208, 209, 210, the disk input means 21
8,219,220と、ディスク装置群228,22 And 8,219,220, the disk device group 228,22
9,230と、キャッシュ240と、ディスクアレイ全体の制御を行なうMPU250と、メモリ260と、キャッシュコントローラ270とから構成されている。 And 9,230, a cache 240, a MPU250 for controlling the entire disk array, a memory 260, and a cache controller 270..

【0014】ホスト入出力手段208,209,210 [0014] The host input and output means 208, 209, 210
は、ホスト100,110,120とキャッシュコントローラ270との間の転送を実行するものであり、ホスト側内部バス212によりキャッシュコントローラ27 Is to perform the transfer between the host 100, 110, 120 and the cache controller 270, cache controller 27 by the host-side internal bus 212
0に接続されている。 It is connected to 0. ホスト入出力手段208は、ホスト側内部バス212上のデータ転送を実行するDMA2 Host output means 208 performs the data transfer on the host-side internal bus 212 DMA2
11を備えている。 It is equipped with a 11. DMA211は、メモリ260へのアクセスも実行することができる。 DMA211 can access to the memory 260 to execute. ホスト入出力手段2 Host input and output means 2
09、210も、ホスト入出力手段208と同様の機能を有している。 09,210 also has the same function as the host input means 208. なお、ホスト入出力手段208,20 The host input and output means 208,20
9,210は、少なくとも1つ以上であればよいものである。 92.1 is intended may be at least one.

【0015】ディスク装置群228,229,230 [0015] The disk device group 228, 229, 230
は、各々が少なくとも1台以上のディスク装置から構成される。 Are each composed of at least one or more disk devices. 例えば、ディスク装置群228は、ディスク装置234,235,236から構成されるものとする。 For example, the disk device group 228 is to be configured from the disk devices 234, 235, 236.
なお、ディスク装置群228,229,230は、少なくとも1つ以上であればよいものである。 Incidentally, the disk device group 228, 229, 230 is intended may be at least one.

【0016】ディスク入出力手段218は、ディスク装置群228とキャッシュコントローラ270との間のデータ転送を実行するものであり、ディスクケーブル23 The disk input-output means 218 is for performing data transfer between the disk device group 228 and cache controller 270, a disk cable 23
1によりディスク装置群228と接続し、また、ディスク側内部バス222によりキャッシュコントローラ27 1 by connecting the disk device group 228, also, the cache controller 27 by the disk-side internal bus 222
0と接続されている。 0 to be connected. ディスク入出力手段218は、ディスク側内部バス222上のデータ転送を実行するDM Disk output means 218, DM to perform data transfer on the disk-side internal bus 222
A221を有している。 It has the A221. DMA221は、メモリ260 DMA221 is, the memory 260
へのアクセスも実行することができる。 Access to also be able to run. ディスク入出力手段219,220も、ディスク入出力手段218と同様に、各々ディスクケーブル232,233により、ディスク装置群229,230と接続され、ディスク側内部バス222によりキャッシュコントローラ270と接続されている。 Disk output means 219 and 220, like the disk output means 218, respectively by the disk cable 232 is connected to the disk device group 229, 230 is connected to the cache controller 270 by the disk-side internal bus 222 . ディスク入出力手段219、220もディスク入出力手段218と同様の機能を有している。 Disk output means 219 and 220 also have the same functions as the disk output means 218. なお、ディスク入出力手段218,219,220は、少なくとも1つ以上であればよいものである。 Incidentally, a disk input-output means 218,219,220 are those may be at least one. さらに、キャッシュ240は、キャッシュバス241により、キャッシュコントローラ270と接続されている。 Furthermore, the cache 240, the cache bus 241 is connected to the cache controller 270.

【0017】次に、本実施形態に用いるデータ保証コードについて、ホスト100、ホスト入出力手段208、 [0017] Next, the data guarantee code used in the present embodiment, the host 100, the host input means 208,
ディスク入出力手段218、ディスク装置234にかかわるデータ転送を例にして説明する。 Disk input unit 218, will be described as an example of data transfer according to the disk device 234. ここで、ホスト1 Here, the host 1
00からディスクアレイ200へのデータ書き込みをディスクアレイライトと称し、ディスクアレイ200からホスト100へのデータ読み出しをディスクアレイリードと称し、ディスクアレイライト/リード時のデータの流れについて説明する。 00 write data to the disk array 200 is referred to as a disk array write from the data read from the disk array 200 to the host 100 is referred to as a disk array read, a description is given of the flow of data during disk array write / read. 以下の説明は、キャッシュ24 The following description, the cache 24
0に要求データがない場合,すなわち、キャッシュミスの場合であるが、データ保証コードの内容は、キャッシュ240に要求データがある場合,すなわち、キャッシュヒットの場合も同様である。 0 when there is no request data, i.e., is the case of a cache miss, the contents of the data guarantee code, if the cache 240 has the requested data, i.e., the same applies to the case of a cache hit.

【0018】ディスクアレイライト時には、ホスト10 [0018] At the time of disk array write, host 10
0からのライトコマンドを受け取ったホスト入出力手段208は、MPU250にコマンド受信の通知を行なう。 Host output means 208 which has received the write command from 0 performs notification command reception MPU 250. MPU250は、ライトコマンドの内容を解析し、 MPU250 analyzes the contents of the write command,
ディスクアレイ特有のアドレス変換を行ない、ホスト1 Disk array performs unique address translation, the host 1
00から送られてくるデータを、キャッシュ240に分割して転送するための転送リストを作成する。 The data sent from the 00, to create a transfer list for transferring divided into cache 240. ホスト入出力手段208は、この転送リストにしたがい、キャッシュ240に分割したデータを転送する。 Host output means 208 in accordance with the transfer list, it transfers the data divided into the cache 240. 分割したデータは、物理的に連続したキャッシュ240の領域にあってもよいものである。 Divided data are those may be in the region of the physically contiguous cache 240. 次に、MPU250は、キャッシュ240にある分割したデータをディスク装置群22 Then, MPU 250, the disk device group the divided data in the cache 240 22
8,229,230に書き込むための転送リストを作成する。 To create a transfer list for writing to 8,229,230. 転送リストは、転送するすべてのディスク装置に対応して作成する。 Transfer list is created corresponding to all of the disk devices to be transferred. MPU250は、例えば、ディスク装置234に書き込むための転送リストを作成し、ディスク入出力手段218は、この転送リストにしたがい、 MPU250, for example, creates a transfer list for writing to the disk device 234, a disk input-output unit 218 in accordance with the transfer list,
分割したデータをキャッシュ240からディスク装置2 The divided data from the cache 240 the disk device 2
34に転送する。 And transfers it to the 34.

【0019】ディスクアレイリード時には、ホスト10 [0019] At the time of disk array read, host 10
0からのリードコマンドを受け取ったホスト入出力手段208が、MPU250にコマンド受信の通知を行なう。 Host output means 208 which has received the read command from 0, notifies command reception MPU 250. MPU250は、リードコマンドの内容を解析し、 MPU250 analyzes the contents of the read command,
ディスクアレイ特有のアドレス変換を行ない、ディスク装置群228,229,230に分散して格納されている要求のあったデータの格納場所を特定し、読み出すすべてのディスク装置に対応した転送リストを作成する。 It performs disk array unique address translation to specify the storage location of data requested are stored across a disk device group 228, 229, 230, creates a transfer list corresponding to all of the disk device to read .
MPU250は、例えば、ディスク装置234からキャッシュ240に転送するための転送リストを作成し、ディスク入出力手段218は、この転送リストにしたがい、分割されているデータをディスク装置234からキャッシュ240に転送する。 MPU250, for example, creates a transfer list for transferring from the disk device 234 to the cache 240, disk input-output unit 218 in accordance with the transfer list, the data is divided to transfer from the disk device 234 to the cache 240 . 次に、MPU250は、キャッシュ240にある分割したデータをもとのデータに束ねた状態でホスト100に転送するための転送リストを作成する。 Then, MPU 250 creates a transfer list for transferring to the host 100 in a state in which a bundle of divided data in the cache 240 to the original data. ホスト入出力手段208は、この転送リストにしたがい、キャッシュ240からホスト100にデータを転送する。 Host output means 208 in accordance with the transfer list, it transfers the data from the cache 240 to the host 100.

【0020】このように、ディスクアレイライト/リード時には、分割した状態でデータ転送を行なう制御となるので、システムとしての信頼性を強化する目的で、キャッシュ240およびディスク装置群228,229, [0020] Thus, when the disk array write / read, since the control for data transfer in divided state, in order to enhance the reliability of the system, the cache 240 and the disk device group 228, 229,
230に対する書き込み/読み出しが正常なアドレスに行なわれたことを監視するデータ保証方式を用いている。 Write / read with respect to 230 is using the data guarantee method of monitoring that has been performed in a normal address. 通常、ホスト100がディスクアレイ200にデータを転送する場合、論理データブロックアドレスを指定して書き込む。 Usually, when the host 100 transfers the data to the disk array 200, write to specify the logical data block address. そこで、この論理データブロックアドレスの値を、データ保証コードとして、そのアドレスに相当する論理データブロックごとに付加するようにしている。 Therefore, the value of the logical data block address, as a data guarantee code, so that added to each logical data block corresponding to the address. 本実施形態においては、この論理データブロックアドレスの値をLA(Logical Address)と称するものとする。 In the present embodiment, it is assumed to refer to the value of the logical data block address LA (Logical Address). なお、LAに限らず転送元アドレスのような転送されるデータを特定できるデータの属性に基づくデータ保証コードに対して、本実施形態は適用できるものである。 Incidentally, with respect to the data guarantee code based on the attributes of the data that can identify the data to be transferred, such as the source address not limited to LA, this embodiment is applicable.

【0021】即ち、本実施形態においては、ディスクアレイライト時にキャッシュ240にデータを書き込む際に、論理データブロックに対応するLAをこの論理データブロックに付加しておき、キャッシュ240から読み出してディスク装置234に書き込む際、論理データブロックに付加されているLA値と、LAの期待値を比較し検査する。 [0021] That is, in this embodiment, when writing data into the cache 240 when the disk array write, keep adding LA corresponding to the logical data blocks in the logical data block, disk drive 234 reads from the cache 240 write time, compares the LA value added to the logical data block, the expected value of LA inspection. また、ディスクアレイリード時には、ディスク装置234から読み出してキャッシュ240に書き込む際と、キャッシュ240から読み出してホスト10 Further, when the disk array read, and when writing to the cache 240 is read out from the disk device 234, the host 10 reads from the cache 240
0に転送する際に、論理データブロックに付加されているLA値と、LAの期待値を比較し検査する。 When transferring to 0, it compares the LA value added to the logical data block, the expected value of LA inspection. 論理データブロックに付加されているLA値は、ホスト100に転送する際に削除し、元のデータの状態に戻すようにしている。 LA value added to the logical data block is deleted when transferred to the host 100, and returned to the state of the original data.

【0022】このように論理ブロックデータ毎に、読み書きすべき論理データブロックであることを識別するデータ保証コードを付加し、読み書きしたアドレスが正しいことを確認することでシステムとしての信頼性を上げる。 [0022] Thus for each logical block data, it adds the data guarantee code identifying that a logical data block to be read or written, increasing the reliability of the system by confirming that write address is correct.

【0023】ここで、図2を用いて、LAの具体例について説明する。 [0023] Here, with reference to FIG. 2, a specific example of LA. 図2は、本発明の第1の実施形態によるディスクアレイシステムに用いるLAの具体例の説明図である。 Figure 2 is an explanatory diagram of an implementation of LA used in the disk array system according to the first embodiment of the present invention.

【0024】論理データブロック4000,4001, [0024] The logical data block 4000,4001,
4002は、ホスト100がディスクアレイ200にデータを転送するときのホストデータの一部であり、論理データブロック4000,論理データブロック400 4002 is part of a host data when the host 100 transfers the data to the disk array 200, the logical data block 4000, the logical data blocks 400
1,論理データブロック4002の順に連続したデータである。 1, a continuous data in the order of logical data blocks 4002. LA部5000,5001,5002は、論理データブロックアドレス、もしくは、その一部分を表す値であり、それぞれ、論理データブロック4000,4 LA portion 5000,5001,5002 the logical data block address or a value representing the portion thereof, respectively, logical data block 4000,4
001,4002に対応する。 Corresponding to 001,4002. データ保証コードとしてLAを付加する場合は、各論理データブロック400 When adding the LA as the data guarantee code, the logical data blocks 400
0,4001,4002の最後尾に付加するものとし、 It is assumed to be added to the end of the 0,4001,4002,
論理データブロック4000,LA部5000,論理データブロック4001,LA部5001,論理データブロック4002,LA部5002の順に連続したデータとなる。 Logical data blocks 4000, LA 5000, a logical data block 4001, LA portion 5001, a forward continuous data of the logical data blocks 4002, LA 5002. 拡張データ3000,3001,3002は、 Extended data 3000,3001,3002 is,
それぞれ論理データブロック4000,4001,40 Each logical data block 4000,4001,40
02と、LA部5000,5001,5002を併せたものである。 02, in which combined LA unit 5000,5001,5002.

【0025】さらに、図1に示すように、キャッシュコントローラ270は、ホスト側内部バスバッファ271 Furthermore, as shown in FIG. 1, the cache controller 270, the host-side internal bus buffer 271
と、ディスク側内部バスバッファ272と、キャッシュ制御手段273と、LA付加手段300と、LA削除手段310と、ホスト側LA検査手段330と、ディスク側LA検査手段350と、ホスト情報保持手段360 When a disk-side internal bus buffer 272, a cache control unit 273, and LA adding means 300, and LA deletion unit 310, a host-side LA inspection unit 330, a disk-side LA inspection unit 350, the host information holding means 360
と、ディスク情報保持手段370とを備えている。 When, and a disc information holding means 370.

【0026】ホスト側内部バスバッファ271は、ホスト入出力手段208,209,210とキャッシュ24 The host-side internal bus buffer 271, the host input means 208, 209, 210 and the cache 24
0との間のデータ転送をバッファリングするものである。 The data transfer between the 0 is for buffering. ディスク側内部バスバッファ272は、ディスク入出力手段218,219,220とキャッシュ240との間のデータ転送をバッファリングするものである。 Disk-side internal bus buffer 272 is configured to buffer the data transferred between the disk input means 218,219,220 and cache 240. キャッシュ制御手段273は、キャッシュ240とキャッシュコントローラ270の間の転送を制御する。 Cache control unit 273 controls the transfer between the cache 240 and the cache controller 270.

【0027】LA付加手段300は、ホスト入出力手段208,209,210からキャッシュ240に転送されるデータにLAを付加するものであり、その動作の詳細については、図5を用いて後述する。 [0027] LA adding means 300 is for the data from the host output means 208, 209, 210 are transferred to the cache 240 adds LA, for details of its operation will be described later with reference to FIG. LA削除手段3 LA Delete means 3
10は、キャッシュ240からホスト入出力手段20 10, the host input means 20 from the cache 240
8,209,210に転送されるデータに付加しているLAを削除するものであり、その動作の詳細については、図7を用いて後述する。 Is intended to remove LA, appended to the data transferred to 8,209,210, the details of its operation will be described later with reference to FIG. ホスト側LA検査手段33 Host-side LA inspection means 33
0は、キャッシュ240からホスト入出力手段208, 0, the host input means 208 from the cache 240,
209,210に転送されるデータに付加しているLA LA, appended to the data transferred to 209 and 210
と、期待するLAを比較し、同一であることを検査するものであり、その動作の詳細については、図6を用いて後述する。 If, by comparing the LA to expect, which verifies that the same, the details of its operation will be described later with reference to FIG. ディスク側LA検査手段350は、ディスク入出力手段218,219,220とキャッシュ240 Disk side LA inspection unit 350, a disk input-output means 218,219,220 and cache 240
との間で転送されるデータに付加しているLAと、期待するLAを比較し、同一であることを検査するものであり、その動作の詳細については、図8を用いて後述する。 Compares the LA, appended to the data transferred between the LA to expect with, which verifies that the same, the details of its operation will be described later with reference to FIG.

【0028】ホスト情報保持手段360は、ホスト入出力手段208,209,210とキャッシュ240との間でデータが転送される際に、後述するホスト側内部バス転送リスト400を獲得/保持するものであり、その詳細については、図3を用いて後述する。 The host information holding unit 360, when data is transferred between the host input means 208, 209, 210 and cache 240, intended to acquire / retain host-side internal bus transfer list 400 to be described later There, details thereof will be described later with reference to FIG. ディスク情報保持手段370は、ディスク入出力手段218,21 Disk information holding means 370, disk input and output means 218,21
9,220とキャッシュ240との間でデータが転送される際に、後述するディスク側内部バス転送リスト44 When data is transferred between the 9,220 and the cache 240, the disk-side internal bus transfer list 44 described later
0を獲得/保持するものであり、その詳細については、 Is intended to acquire / retain the 0, for the details,
図4を用いて後述する。 It will be described later with reference to FIG.

【0029】ここで、図3を用いて、本実施形態に用いるホスト情報保持手段360の構成について説明する。 [0029] Here, with reference to FIG. 3, the configuration of the host information holding means 360 used in this embodiment.
ホスト情報保持手段360は、図9を用いて後述するホスト側内部バス転送リスト400をもとに、ホストの転送情報パラメータを格納するものである。 Host information holding unit 360, based on the host-side internal bus transfer list 400 to be described later with reference to FIG. 9, it is for storing the transfer information parameters of the host. ホスト情報保持手段360は、LA保持手段320と、LUN保持手段321と、チャンネル番号保持手段322と、ホスト番号保持手段323と、タグ番号保持手段324と、L Host information holding unit 360 includes a LA holding unit 320, a LUN holding means 321, a channel number holding means 322, and the host number holding unit 323, a tag number holding unit 324, L
A有効情報保持手段325と、転送アドレス保持手段3 And A valid information holding means 325, the transfer address holding means 3
26から構成されている。 And a 26. ホスト情報保持手段360 Host information holding means 360
は、上述の各手段320,…,326を組みにして、複数個の組を有する。 , Each unit 320 described above, ..., in the set 326, having a plurality of pairs.

【0030】LA保持手段320は、LAの期待値を保持する。 The LA holding unit 320 holds the expected value of LA. LUN保持手段321は、ホストから見たディスクアレイの論理ユニット番号であるLUNを保持する。 LUN holding means 321 holds the LUN is the logical unit number of the disk array as seen from the host. チャンネル番号保持手段322は、転送に使用するホスト入出力手段208,209,210を識別するチャンネル番号を保持する。 Channel number holding means 322 holds the channel number identifying the host input means 208, 209, 210 to be used for the transfer. ホスト番号保持手段323 Host number holding unit 323
は、転送要求を出したホストを識別するホスト番号を保持する。 Holds identifying host number host that issued the transfer request. タグ番号保持手段324は、ホストの多重コマンドのタグを識別するタグ番号を保持する。 Tag number holding unit 324 holds a tag number that identifies the tag of the multiple commands of the host. LA有効情報保持手段325は、LAの付加,検査,削除を論理データブロックに対して行なうかどうかを識別するLA有効情報を保持する。 LA validity information holding unit 325, the addition of LA, inspection, holding LA valid information identifying whether to delete the logical data blocks. 転送アドレス保持手段326は、転送するキャッシュ240のアドレスを保持する。 Transfer address holding unit 326 holds the address of the cache 240 to be transferred.

【0031】次に、図4を用いて、本実施形態に用いるディスク情報保持手段370の構成について説明する。 Next, with reference to FIG. 4, the configuration of the disc information holding means 370 used in this embodiment.
ディスク情報保持手段370は、図9を用いて後述するディスク側内部バス転送リスト440をもとに、ディスクの転送情報パラメータを格納するものである。 Disc information holding unit 370, based on the disk-side internal bus transfer list 440 to be described later with reference to FIG. 9, is for storing the transfer information parameters of the disk. ディスク情報保持手段370は、LA保持手段340と、LU Disc information holding unit 370, the LA holding unit 340, LU
N保持手段341と、チャンネル番号保持手段342 And N holding means 341, the channel number holding means 342
と、ディスク番号保持手段343と、タグ番号保持手段344と、LA有効情報保持手段345と、転送アドレス保持手段346から構成されている。 When a disc number holding unit 343, a tag number holding unit 344, and LA validity information holding unit 345, and a transfer address holding means 346. ディスク情報保持手段370は、上述の各手段340,…,346を組みにして、複数個の組を有する。 Disc information holding means 370, the means 340 described above, ..., in the set 346, having a plurality of pairs.

【0032】LA保持手段340は、LAの期待値を保持する。 [0032] LA holding unit 340 holds the expected value of LA. LUN保持手段341は、ホストから見たディスクアレイの論理ユニット番号であるLUNを保持する。 LUN holding means 341 holds the LUN is the logical unit number of the disk array as seen from the host. チャンネル番号保持手段342は、転送に使用するディスク入出力手段218,219,220を識別するチャンネル番号を保持する。 Channel number holding means 342 holds the channel number that identifies the disk output means 218,219,220 to be used in the transfer. ホスト番号保持手段343 Host number holding means 343
は、転送要求を出したディスクを識別するディスク番号を保持する。 Holds the disc number that identifies the disk that issued the transfer request. タグ番号保持手段344は、ディスクの多重コマンドのタグを識別するタグ番号を保持する。 Tag number holding unit 344 holds a tag number that identifies the tag of the multiple commands of the disk. LA LA
有効情報保持手段345は、LAの付加,検査,削除を論理データブロックに対して行なうかどうかを識別するLA有効情報を保持する。 Valid information holding unit 345, the addition of LA, inspection, holding LA valid information identifying whether to delete the logical data blocks. 転送アドレス保持手段346 Transfer address holding means 346
は、転送するキャッシュ240のアドレスを保持する。 Holds the address of the cache 240 to be transferred.

【0033】次に、図5を用いて、本実施形態に用いるLA付加手段300の構成及び動作について説明する。 Next, with reference to FIG. 5, the configuration and operation of the LA adding means 300 used in this embodiment.
LA付加手段300は、ディスクアレイライト時に、ホスト入出力手段208,209,210からキャッシュ240に転送されるデータにLAを付加するものである。 LA adding means 300, when the disk array write is for adding the LA from the host input means 208, 209, and 210 to the data transferred to the cache 240. LA付加手段300は、カウンタ301と、バッファ値設定手段302とを備えている。 LA adding means 300 is provided with a counter 301, and a buffer value setting means 302.

【0034】ディスクアレイライト時に、ホスト入出力手段208から転送されたデータは、ホスト側内部バスバッファ271にバッファされる。 [0034] when the disk array write data transferred from the host input means 208 is buffered in the host-side internal bus buffer 271. カウンタ301は、 Counter 301,
ホスト側内部バスバッファ271にバッファリングされたデータ数をカウントし、LAを付加するカウントに達したときにバッファ値設定手段302に通知する。 Counting the number of data buffered in the host-side internal bus buffer 271, and notifies the buffer value setting means 302 when it reaches a count of adding LA. バッファ値設定手段302は、ホスト情報保持手段360のLA保持手段320からLAを取得するとともに、カウンタ301からの通知を受けたタイミングでホスト側内部バスバッファ271内のデータにLAを付加する。 Buffer value setting means 302 acquires the LA from LA holding means 320 of the host information holding unit 360, adds the LA to the data in the host-side internal bus buffer 271 at the timing of receiving the notification from the counter 301. L
Aの付加されたデータは、キャッシュ制御手段273によって制御されて、キャッシュ240に転送される。 The added data of A is controlled by the cache control unit 273, it is transferred to the cache 240. なお、論理データブロックが複数続く転送の場合は、LA Incidentally, if the logical data blocks is plural subsequent transfer, LA
保持手段320に取りこんだLA値をカウンタ301により、インクリメントしていけば、連続してLAを付加することが可能である。 By the LA value fetched in the storage unit 320 counter 301, if we incremented, it is possible to add the LA continuously. LA付加手段300を用いることで、データ転送開始直前にMPU250が介在することなく、データにLAを付加することができる。 By using the LA adding means 300, without MPU250 just before starting data transfer is interposed, it can be added to LA to data.

【0035】次に、図6を用いて、本実施形態に用いるホスト側LA検査手段330の構成及び動作について説明する。 Next, with reference to FIG. 6, the configuration and operation of the host-side LA inspection means 330 used in this embodiment. ホスト側LA検査手段330は、ディスクアレイリード時に、キャッシュ240からホスト入出力手段208,209,210に転送されるデータに付加しているLAと、期待するLAを比較し、同一であることを検査するものである。 Host-side LA inspection unit 330, when the disk array read, and LA, appended to the data transferred from the cache 240 to the host input means 208, 209, 210, compares the LA to expect, to be the same it is intended to inspection. ホスト側LA検査手段330は、 Host-side LA inspecting means 330,
カウンタ331と、バッファ値取得手段332と、比較器333とを備えている。 A counter 331, a buffer value acquisition unit 332, and a comparator 333.

【0036】ディスクアレイリード時に、キャッシュ制御手段273によってキャッシュ240から転送されたデータは、ホスト側内部バスバッファ271にバッファされる。 [0036] when the disk array read, data transferred from the cache 240 by the cache controller 273 is buffered in the host-side internal bus buffer 271. カウンタ331は、ホスト側内部バスバッファ271にバッファリングされたデータ数をカウントし、 Counter 331 counts the number of data buffered in the host-side internal bus buffer 271,
LAを取得するカウントに達したときにバッファ値取得手段332に通知する。 And it notifies the buffer value acquisition unit 332 when it reaches a count of obtaining the LA. バッファ値取得手段332は、 Buffer value acquisition means 332,
カウンタ331からの通知を受けたタイミングで、ホスト側内部バスバッファ271内のデータに付加しているLAを取得し、比較器333に送出する。 At the timing of receiving the notification from the counter 331, and acquires the LA, appended to the data in the host-side internal bus buffer 271, and sends to the comparator 333. 比較器333 Comparator 333
は、ホスト情報保持手段360のLA保持手段320からLAを取得し、バッファ値取得手段332から受け取ったLAと同一であることを比較する。 Acquires LA from LA holding means 320 of the host information holding unit 360 are compared to be identical to the LA received from the buffer value acquisition unit 332. 比較器333によって比較したLAが同一でない場合は、ホスト側LA If LA compared by the comparator 333 are not the same, the host-side LA
検査手段330は、例えば、MPU250にエラー通知を行なうことにより、LA検査を実行する。 Inspecting means 330, for example, by performing an error notification to MPU 250, execute the LA test. なお、論理データブロックが複数続く転送の場合は、LA保持手段320に取りこんだLA値をカウンタ301により、インクリメントしていけば、連続してLAを検査することが可能である。 In addition, if the logical data blocks is plural subsequent transfer, the counter 301 LA value taken in LA holding unit 320, if we incremented, it is possible to inspect the LA continuously. ホスト側LA検査手段330を用いることで、データ転送開始直前にMPU250が介在することなく、データに付加してあるLAの検査をすることができる。 By using the host-side LA inspection unit 330, without MPU250 is interposed just before the start of data transfer, it is possible to inspect the LA that is added to the data.

【0037】次に、図7を用いて、本実施形態に用いるLA削除手段310の構成及び動作について説明する。 Next, with reference to FIG. 7, the configuration and operation of the LA deletion unit 310 used in this embodiment.
LA削除手段310は、ディスクアレイリード時に、キャッシュ240からホスト入出力手段208,209, LA deletion unit 310, when the disk array read, the host input means 208 and 209 from the cache 240,
210に転送されるデータに付加しているLAを削除するものである。 It is intended to remove LA, appended to the data transferred to 210. LA削除手段310は、カウンタ311 LA deletion unit 310, the counter 311
と、バッファ値削除手段312とを備えている。 When, and a buffer value deletion unit 312.

【0038】ディスクアレイリード時に、キャッシュ制御手段273によってキャッシュ240から転送されたデータは、ホスト側内部バスバッファ271にバッファされる。 [0038] when the disk array read, data transferred from the cache 240 by the cache controller 273 is buffered in the host-side internal bus buffer 271. カウンタ311は、ホスト側内部バスバッファ271にバッファリングされたデータ数をカウントし、 Counter 311 counts the number of data buffered in the host-side internal bus buffer 271,
LAを削除するカウントに達したときにバッファ値削除手段312に通知する。 And it notifies the buffer value deletion unit 312 when it reaches a count to delete the LA. バッファ値削除手段312は、 Buffer value deletion means 312,
カウンタ311からの通知を受けたタイミングでホスト側内部バスバッファ271内のデータに付加しているL L, at the timing of receiving the notification from the counter 311 are added to the data in the host-side internal bus buffer 271
Aを削除する。 To delete the A.

【0039】次に、図8を用いて、本実施形態に用いるディスク側LA検査手段350の構成及び動作について説明する。 Next, with reference to FIG. 8, the configuration and operation of the disk-side LA inspection means 350 used in this embodiment. ディスク側LA検査手段350は、ディスクアレイライト/リード時に、ディスク入出力手段21 Disk side LA inspection unit 350, when the disk array write / read, the disk input means 21
8,219,220とキャッシュ240との間で転送されるデータに付加しているLAと、期待するLAを比較し、同一であることを検査するものである。 And LA, appended to the data transferred between 8,219,220 and cache 240, compares the LA to expect, it is to check that the same. ディスク側LA検査手段350は、カウンタ351と、バッファ値取得手段352と、比較器353とを備えている。 Disk side LA inspection means 350 includes a counter 351, a buffer value acquisition unit 352, a comparator 353.

【0040】ディスクアレイライト時には、キャッシュ制御手段273によってキャッシュ240から転送されたデータは、ディスク側内部バスバッファ272にバッファされる。 [0040] At the time the disk array write data transferred from the cache 240 by the cache controller 273 is buffered on the disk-side internal bus buffer 272. また、ディスクアレイリード時には、ディスク入出力手段218から転送されたデータは、ディスク側内部バスバッファ272にバッファされる。 Further, when the disk array read, data transferred from the disk input-output unit 218 is buffered on the disk-side internal bus buffer 272.

【0041】カウンタ351は、ディスク側内部バスバッファ272にバッファリングされたデータ数をカウントし、LAを取得するカウントに達したときにバッファ値取得手段352に通知する。 The counter 351 counts the number of data buffered in the disk-side internal bus buffer 272, and notifies the buffer value acquisition unit 352 when it reaches a count of obtaining the LA. バッファ値取得手段35 Buffer value acquisition means 35
2は、カウンタ351からの通知を受けたタイミングで、ディスク側内部バスバッファ272内のデータに付加しているLAを取得し、比較器353に送出する。 2 is a timing notifying received from the counter 351, and acquires the LA, appended to the data in the disk-side internal bus buffer 272, and sends to the comparator 353. 比較器353は、ディスク情報保持手段370のLA保持手段340からLAを取得し、バッファ値取得手段35 The comparator 353 obtains the LA from LA holding means 340 of the disk information holding unit 370, the buffer value acquisition unit 35
2から受け取ったLAと同一であることを比較する。 Compare to be identical to the LA received from the 2. 比較器353によって比較したLAが同一でない場合は、 If LA compared by the comparator 353 are not the same,
ディスク側LA検査手段350は、例えば、MPU25 Disk side LA inspection unit 350 is, for example, MPU 25
0にエラー通知を行なうことにより、LA検査を実行する。 By performing an error notification to 0, it executes LA inspection. なお、論理データブロックが複数続く転送の場合は、LA保持手段320に取りこんだLA値をカウンタ351により、インクリメントしていけば、連続してL In addition, if the logical data blocks is plural subsequent transfer, the counter 351 the LA value taken in LA holding unit 320, if we increment, successively L
Aを検査することが可能である。 It is possible to inspect the A. ディスク側LA検査手段350を用いることで、データ転送開始直前にMPU By using the disk-side LA inspection unit 350, MPU just before starting data transfer
250が介在することなく、データに付加してあるLA Without 250 is interposed, LA that is added to the data
の検査をすることができる。 It is possible to the inspection.

【0042】ここで、再び、図1に戻り、メモリ260 [0042] In this case, again, back to FIG. 1, memory 260
は、ディスクアレイ制御手段261と、LA設定手段2 Includes a disk array control unit 261, LA setting means 2
62と、転送リスト格納手段263と、コマンド情報格納手段264とを備えている。 And 62, a transfer list storage unit 263, and a command information storage unit 264. ディスクアレイ制御手段261は、MPU250がディスクアレイ制御を実行するために使用する。 Disk array control unit 261, MPU 250 uses to run the disk array control. LA設定手段262は、図9を用いて後述するホスト側内部バス転送リスト400と、ディスク側内部バス転送リスト440中にLAを設定する。 LA setting means 262 includes a host-side internal bus transfer list 400 to be described later with reference to FIG. 9, sets the LA into the disk-side internal bus transfer list 440.
転送リスト格納手段263は、ホスト入出力手段20 Transfer list storage unit 263, the host input means 20
8,209,210および、ディスク入出力手段21 8,209,210 and, disk input and output means 21
8,219,220がデータ転送を実行するために参照するホスト側内部バス転送リスト400とディスク側内部バス転送リスト440を格納する。 8,219,220 stores the host-side internal bus transfer list 400 and the disk-side internal bus transfer list 440 that refers to perform data transfer. コマンド情報格納手段264は、ホスト入出力手段208,209,21 Command information storing means 264, the host input means 208,209,21
0および、ディスク入出力手段218,219,220 0 and, disk input and output means 218,219,220
のコマンド情報を格納する。 Storing the command information.

【0043】ここで、図9を用いて、転送リスト格納手段263の構成について説明する。 [0043] Here, with reference to FIG. 9, the configuration of the transfer list storage unit 263. 転送リスト格納手段263は、ホスト側内部バス転送リスト400と、ディスク側内部バス転送リスト440とを備えている。 Transfer list storage unit 263 includes a host-side internal bus transfer list 400, and a disk-side internal bus transfer list 440. ホスト側内部バス転送リスト400は、ホスト入出力手段2 Host-side internal bus transfer list 400, the host input means 2
08がデータ転送を実行するためにDMA211を用いて獲得するものである。 08 is intended to obtain with DMA211 to perform data transfer. ディスク側内部バス転送リスト440は、ディスク入出力手段218がデータ転送を実行するためにDMA221を用いて獲得するものである。 Disk-side internal bus transfer list 440 is for disk input output 218 obtained using DMA221 to perform data transfer.

【0044】なお、ホスト入出力手段209、210についても、ホスト側内部バス転送リスト400と同様な転送リストを転送リスト格納手段263に格納するが、 [0044] Incidentally, for the host input means 209 and 210, but stores the same transfer list with the host-side internal bus transfer list 400 in the transfer list storage unit 263,
以下、ホスト入出力手段208の転送リストについてのみ説明する。 Hereinafter will be described only the transfer list of the host input means 208. また、ディスク入出力手段219、220 In addition, disk input and output means 219 and 220
についても、ディスク側内部バス転送リスト440と同様な転送リストを転送リスト格納手段263に格納するが、以下、ディスク入出力手段218の転送リストについてのみ説明する。 For even while storing the same transfer list and disk-side internal bus transfer list 440 in the transfer list storage unit 263, it will be described only the transfer list of the disk output means 218. ホスト側内部バス転送リスト400 Host-side internal bus transfer list 400
とディスク側内部バス転送リスト440は、複数個存在してもよいものである。 A disk-side internal bus transfer list 440 is one that may be a plurality exist. ホスト側内部バス転送リスト4 Host-side internal bus transfer list 4
00とディスク側内部バス転送リスト440は、MPU 00 and the disk-side internal bus transfer list 440, MPU
250が作成し、転送リスト格納手段263に格納する。 250 is created and stored in the transfer list storage means 263. ホスト入出力手段208,209,210および、 Host input and output means 208, 209, 210 and,
ディスク入出力手段218,219,220は、転送機能付きであり、キャッシュコントローラ270は、ホスト入出力手段208,209,210および、ディスク入出力手段218,219,220から受け取った転送コマンドの通りにデータの送受信をするだけである。 Disk output means 218,219,220 is a Transport function, the cache controller 270, the host input means 208, 209, 210 and, as the transfer command received from the disk input means 218,219,220 only the transmission and reception of data. 従って、転送リスト獲得とデータ転送は、ホスト入出力手段208とディスク入出力手段218が行なうので、データ転送が終了するまで、MPU250の介在は不要である。 Therefore, the transfer list acquisition and data transfer, since the host input means 208 and the disk input unit 218 is performed until the data transfer is completed, intervening MPU250 is unnecessary.

【0045】ホスト側内部バス転送リスト400は、キャッシュ240のアドレスを指定するホスト側内部バス転送アドレス410と、データの転送サイズを指定するホスト側内部バス転送サイズ420をそれぞれm個格納したものである。 The host-side internal bus transfer list 400 includes a host-side internal bus transfer address 410 that specifies the address of the cache 240, the host-side internal bus transfer size 420 specifies the transfer size of the data obtained by m pieces respectively stored is there. mは自然数とする。 m is a natural number. ホスト側内部バス転送アドレス410とホスト側内部バス転送サイズ42 Host-side internal bus transfer address 410 and the host-side internal bus transfer size 42
0を併せたものをホスト側リスト1000,1001, Those combined 0 host side list 1000 and 1001,
1002,1003,…とする。 1002, 1003, ... and to.

【0046】ホスト側リスト1000,1001,10 The host side list 1000,1001,10
02,1003,…のホスト側内部バス転送アドレス4 02,1003, ... host-side internal bus transfer address 4
10には、ホスト転送パラメータとして、それぞれLA The 10, as a host transfer parameters, respectively LA
1200,1201,1202,1203,…と、LU 1200,1201,1202,1203, ... and, LU
N1220,1221,1222,1223,…と、チャンネル番号1240,1241,1242,124 N1220,1221,1222,1223, ... and, channel number 1240,1241,1242,124
3,…と、ホスト番号1260,1261,1262, 3, ... and, host number 1260,1261,1262,
1263,…と、タグ番号1280,1281,128 1263, ... and, tag number 1280,1281,128
2,1283,…と、LA有効情報1300,130 2,1283, ... and, LA valid information 1300,130
1,1302,1303,…と、転送アドレス140 1,1302,1303, ... and, transfer address 140
0,1401,1402,1403,…を格納する。 0,1401,1402,1403, to store .... また、ホスト側リスト1000,1001,1002,1 In addition, the host side list 1000,1001,1002,1
003,…のホスト側内部バス転送サイズ420には、 003, to ... the host-side internal bus transfer size 420 of,
それぞれ転送サイズ1600,1601,1602,1 Each transfer size 1600,1601,1602,1
603,…を格納する。 603, to store ....

【0047】LUN1220,1221,1222,1 [0047] LUN1220,1221,1222,1
223,…は、データライト要求時にホスト100,1 223, ..., the host at the time of data write request 100,
10,120が指定したLUN(Logical Unit Numbe 10,120-specified LUN (Logical Unit Numbe
r)である。 Is r). チャンネル番号1240,1241,12 Channel number 1240,1241,12
42,1243,…は、データライトの要求のときに使用したホスト入出力手段208,209,210の識別番号である。 42,1243, ... is the identification number of the host output means 208, 209, 210 used when the data write request. ホスト番号1260,1261,126 Host number 1260,1261,126
2,1263,…は、データのライト/リードの要求をしたホスト100,110,120の識別番号である。 2,1263, ... is the identification number of the host 100, 110, 120 where the request for data write / read.
タグ番号1280,1281,1282,1283,… Tag number 1280,1281,1282,1283, ...
は、ホスト100,110,120が発行するコマンドのタグ番号である。 Is a tag number of the command, which host 100, 110, 120 issued. LA有効情報1300,1301, LA effective information 1300 and 1301,
1302,1303,…は、転送されるデータが普通のデータであるか、それとも、普通のデータに対するパリティデータであるかと識別して、普通のデータに対してLAが有効であることを示す情報である。 1302 and 1303, ... is either data to be transferred is ordinary data, or, to identify whether a parity data for the ordinary data, the information indicating that the LA is enabled for normal data is there.

【0048】従来の方式では、ホスト側内部バス転送アドレス410には、転送アドレス1400,1401, [0048] In the conventional system, the host-side internal bus transfer address 410, transfer address 1400 and 1401,
1402,1403,…のみを格納するが、本実施形態においては、転送アドレスに加えて、上述したホスト転送パラメータも格納するようにしている。 1402 and 1403, but stores ... only, in the present embodiment, in addition to the transfer address, so that also stores host transfer parameters described above. ホスト転送パラメータを格納する部分は、たとえば、アドレスの上位ビットとし、キャッシュ240のアドレスの指定に影響を及ぼさない領域とする。 Portion storing a host transfer parameters, for example, the upper bits of the address, and the area that does not affect the specified address of the cache 240. また、キャッシュコントローラ270が、ホスト転送パラメータを格納する部分のアドレスは、転送のためのアドレスとみなさないようにしておいてもよいものである。 The cache controller 270, the address of the portion to store the host transfer parameters, in which may be set to the not considered an address for the transfer.

【0049】ホスト入出力手段208が、ホスト側内部バス転送リスト400を用いてデータ転送する場合、ホスト側内部バス転送アドレス410の値は、アドレス指定のためそのままの値でホスト側内部バス212に送出される。 The host input means 208, when the data transfer with the host-side internal bus transfer list 400, the value of the host-side internal bus transfer address 410, the host-side internal bus 212 as they are values ​​for addressing It is sent. したがって、ホスト側内部バス転送アドレス4 Thus, the host-side internal bus transfer address 4
10の値を受け取ったキャッシュコントローラ270 Cache controller 270 that has received a value of 10
が、LA1200,1201,1202,1203,… There, LA1200,1201,1202,1203, ...
と転送アドレス1400,1401,1402,140 A forwarding address 1400,1401,1402,140
3,…を認識できるようにしておくことで、データ転送を開始する直前にLAを獲得することが可能となる。 3, in that ... to recognize, and it is possible to acquire LA just before starting the data transfer. 従って、上述したように、キャッシュコントローラ270 Therefore, as described above, the cache controller 270
内のLA保持手段320により、LAを獲得・保持できる。 The LA holding means 320 of the inner can acquire and hold the LA.

【0050】以上をまとめると、本実施形態においては、ホスト側内部バス転送リスト400にLAを設定しておくことで、ホスト側内部バス転送リスト400を作成してから、データ転送が終了するまでの間はMPUの介在は不要であり、かつ、ホスト入出力手段208とキャッシュ240の間の転送データに対するLA付加、L [0050] In summary, in the present embodiment, by setting the LA to the host-side internal bus transfer list 400, creates a host-side internal bus transfer list 400, until the data transfer is completed during the intervention of the MPU is required, and, LA additions to transfer data between the host input means 208 and the cache 240, L
A検査、LA削除をキャッシュコントローラ270が実行できる。 A test, the cache controller 270 LA deletion can be executed. また、キャッシュコントローラ270は、受け取ったホスト側内部バス転送アドレス410の値から、ホスト転送パラメータとして、LUN1220,1 The cache controller 270, the value of the host-side internal bus transfer address 410 received, as a host transfer parameters, LUN1220,1
221,1222,1223,…と、チャンネル番号1 221,1222,1223, ... and, channel number 1
240,1241,1242,1243,…と、ホスト番号1260,1261,1262,1263,…と、 240,1241,1242,1243, ... and, host number 1260,1261,1262,1263, ... and,
タグ番号1280,1281,1282,1283,… Tag number 1280,1281,1282,1283, ...
と、LA有効情報1300,1301,1302,13 If, LA valid information 1300,1301,1302,13
03,…を獲得し、それぞれを、LUN保持手段32 03, won the ..., respectively, LUN holding means 32
1,チャンネル番号保持手段322,ホスト番号保持手段323,タグ番号保持手段324,LA有効情報保持手段325に獲得・保持できる。 1, the channel number holding means 322 can acquire and hold the host number holding unit 323, the tag number holding unit 324, LA validity information holding means 325. したがって、キャッシュコントローラ270は、ホスト側内部バス212から受信したコマンドの転送パラメータに関する情報として、LUN,チャンネル番号,ホスト番号,タグ番号, Therefore, the cache controller 270, as the information regarding the transfer parameter of the command received from the host-side internal bus 212, LUN, channel number, host number, tag number,
LA有効の可否を区別することが可能となり、途中でコマンド実行を中断して再開する場合でも、受信したデータのLA付加,LA検査,LA削除を実施することができる。 LA it is possible to distinguish the effectiveness of whether, even when resuming interrupts the command execution in the middle, LA addition of the received data, LA inspection can be performed LA deleted. 即ち、ホスト入出力手段208,209,210 In other words, the host input and output means 208, 209, 210
および、ディスク入出力手段218,219,220は転送機能付きであり、キャッシュコントローラ270 And, a disk input-output means 218,219,220 is a Transport function, the cache controller 270
は、ホスト入出力手段208,209,210および、 The host input and output means 208, 209, 210 and,
ディスク入出力手段218,219,220から受け取った転送コマンドの通りにデータの送受信をするだけである。 Only the transmission and reception of data as the transfer command received from the disk output means 218,219,220. したがって、コマンド受信からデータ転送にかけて途切れることなく実行され、かつ、コマンドが同時に1個だけ発行されている場合は問題ないが、多数のホスト、ディスク装置から、コマンドが多重に発行され、かつ、途中で実行を中断して再開するような場合、以前に実行していたどのコマンドに対する転送かをキャッシュコントローラ270は判断することができず、LA付加,LA検査,LA削除ができないことになるが、そのような場合にも、本実施形態においては、ホスト側内部バス212から受信したコマンドを、キャッシュコントローラ270が転送パラメータごとの区別をすることができるため、かかる問題が生じることがないものである。 Therefore, it runs without interruption from the command receiving toward data transfer, and there is no problem if the command is issued only one time, a number of hosts, from the disk device, the command is issued to the multiplexed and middle If in such resume suspends the execution, it is impossible to determine transfer either the cache controller 270 for any command which has been executed previously, LA addition, LA test, but will be unable to LA deleted, even in such case, in the present embodiment, the command received from the host-side internal bus 212, since the cache controller 270 is able to distinguish between each transfer parameter, but never take problems . また、ディスク側内部バス222から受信したコマンドを、キャッシュコントローラ270が転送パラメータごとの区別をすることができる。 Further, the command received from the disk-side internal bus 222 may be a cache controller 270 to distinguish each transfer parameters.

【0051】次に、ディスク側内部バス転送リスト44 Next, the disk-side internal bus transfer list 44
0は、キャッシュ240のアドレスを指定するディスク側内部バス転送アドレス450と、データの転送サイズを指定するディスク側内部バス転送サイズ460とを、 0 includes a disk-side internal bus transfer address 450 that specifies the address of the cache 240, and a disk-side internal bus transfer size 460 specifies the transfer size of the data,
それぞれn個格納したものである。 It is obtained by n pieces respectively stored. nは自然数とする。 n is a natural number.
ディスク側内部バス転送アドレス450とディスク側内部バス転送サイズ460を併せたものをディスク側リスト2000,2001,2002,2003,…とする。 Disk-side internal bus transfer address 450 and the disk-side internal bus transfer size 460 disk side list 2000,2001,2002,2003 those together, ... and to.

【0052】ディスク側リスト2000,2001,2 [0052] disk side list 2000,2001,2
002,2003,…のディスク側内部バス転送アドレス450には、ディスク転送パラメータとして、それぞれLA2200,2201,2202,2203,… 002,2003, the ... disk-side internal bus transfer address 450, a disk transfer parameters, respectively LA2200,2201,2202,2203, ...
と、LUN2220,2221,2222,2223, If, LUN2220,2221,2222,2223,
…と、チャンネル番号2240,2241,2242, ... and, channel number 2240,2241,2242,
2243,…と、ディスク番号2260,2261,2 2243, ... and, disk number 2260,2261,2
262,2263,…と、タグ番号2280,228 262,2263, ... and, tag number 2280,228
1,2282,2283,…と、LA有効情報230 1,2282,2283, ... and, LA valid information 230
0,2301,2302,2303,…と、転送アドレス2400,2401,2402,2403,…を格納する。 0,2301,2302,2303, ... and, transfer address 2400,2401,2402,2403, to store .... また、ディスク側リスト2000,2001,2 In addition, the disk side list 2000,2001,2
002,2003,…のディスク側内部バス転送サイズ460には、それぞれ転送サイズ2600,2601, 002,2003, the ... disk-side internal bus transfer size 460 of each transfer size 2600,2601,
2602,2603,…を格納する。 2602 and 2603, to store ....

【0053】LUN2220,2221,2222,2 [0053] LUN2220,2221,2222,2
223,…は、データライト要求時にホスト100,1 223, ..., the host at the time of data write request 100,
10,120が指定したLUN(Logical Unit Numbe 10,120-specified LUN (Logical Unit Numbe
r)である。 Is r). チャンネル番号2240,2241,22 Channel number 2240,2241,22
42,2243,…は、データライトの要求のときに使用したディスク入出力手段218,219,220の識別番号である。 42,2243, ... is the identification number of the disk input means 218,219,220 that was used when the data write request. ディスク番号2260,2261,22 Disk number 2260,2261,22
62,2263,…は、データのライト/リードの要求をしたディスク装置234,235,236,…の識別番号である。 62,2263, ..., the disk device 234, 235, 236 and a request for data write / read is ... identification number. タグ番号2280,2281,2282, Tag number 2280,2281,2282,
2283,…は、ディスク装置234,235,23 2283, ... is, disk device 234,235,23
6,…が発行するコマンドのタグ番号である。 6, is a tag number of the command that ... issues. LA有効情報1300,1301,1302,1303,…は、 LA valid information 1300,1301,1302,1303, ... is,
転送されるデータが普通のデータであるか、それとも、 Whether the data to be transferred is usually of data, or,
普通のデータに対するパリティデータであるかと識別して、普通のデータに対してLAが有効であることを示す情報である。 Identify whether a parity data for the ordinary data, LA on plain data is information indicating that it is valid.

【0054】従来の方式では、ディスク側内部バス転送アドレス450には、転送アドレス2400,240 [0054] In the conventional method, the disk-side internal bus transfer address 450, transfer address 2400,240
1,2402,2403,…のみを格納するが、本実施形態においては、転送アドレスに加えて、上述したディスク転送パラメータも格納するようにしている。 1,2402,2403, but stores ... only, in the present embodiment, in addition to the transfer address, so that also store disk transfer parameters described above. ディスク転送パラメータを格納する部分は、たとえば、アドレスの上位ビットとし、キャッシュ240のアドレスの指定に影響を及ぼさない領域とする。 Portion storing a disk transfer parameters, for example, the upper bits of the address, and the area that does not affect the specified address of the cache 240. また、キャッシュコントローラ270が、ディスク転送パラメータを格納する部分のアドレスは、転送のためのアドレスとみなさないようにしておいてもよいものである。 The cache controller 270, the address of the portion to store the disk transfer parameters, in which may be set to the not considered an address for the transfer.

【0055】ディスク入出力手段218が、ディスク側内部バス転送リスト440を用いてデータ転送する場合、ディスク側内部バス転送アドレス450の値は、アドレス指定のためそのままの値でディスク側内部バス2 [0055] Disk input means 218, when the data transfer using the disk-side internal bus transfer list 440, the value of the disk-side internal bus transfer address 450 is a disk-side internal bus 2 as it value for addressing
22に送出される。 Sent to 22. したがって、ディスク側内部バス転送アドレス450の値を受け取ったキャッシュコントローラ270が、LA2200,2201,2202,2 Therefore, the cache controller 270 which has received the value of the disk-side internal bus transfer address 450, LA2200,2201,2202,2
203,…と転送アドレス2400,2401,240 203, ... and transfer address 2400,2401,240
2,2403,…を認識できるようにしておくことで、 2,2403, in that ... to be able to recognize,
データ転送を開始する直前にLAを獲得することが可能となる。 It is possible to acquire the LA immediately before starting the data transfer. 従って、上述したように、キャッシュコントローラ270内のLA保持手段340により、LAを獲得・保持できる。 Therefore, as described above, the LA holding unit 340 of the cache controller 270 may acquire and hold LA.

【0056】以上をまとめると、本実施形態においては、ディスク側内部バス転送リスト440にLAを設定しておくことで、ディスク側内部バス転送リスト440 [0056] In summary, in the present embodiment, by setting the LA to the disk-side internal bus transfer list 440, the disk-side internal bus transfer list 440
を作成してから、データ転送が終了するまでの間はMP After you create the, until the data transfer is completed, the MP
Uの介在は不要であり、かつ、ディスク入出力手段21 Intervention U is unnecessary, and disk input-output means 21
8とキャッシュ240の間の転送データに対するLA検査をキャッシュコントローラ270が実行できる。 Cache controller 270 LA tests for transferring data between the 8 and the cache 240 can be performed. また、キャッシュコントローラ270は、受け取ったディスク側内部バス転送アドレス450の値から、ディスク転送パラメータとして、LUN2220,2221,2 The cache controller 270 from the value of the disk-side internal bus transfer address 450 received, as a disk transfer parameters, LUN2220,2221,2
222,2223,…と、チャンネル番号2240,2 222,2223, ... and, channel number 2240,2
241,2242,2243,…と、ディスク番号22 241,2242,2243, ... and, disk number 22
60,2261,2262,2263,…と、タグ番号2280,2281,2282,2283,…と、LA 60,2261,2262,2263, ... and, tag number 2280,2281,2282,2283, ... and, LA
有効情報2300,2301,2302,2303,… Enable information 2300,2301,2302,2303, ...
を獲得し、それぞれを、LUN保持手段341,チャンネル番号保持手段342,ディスク番号保持手段34 Won, respectively, LUN holding means 341, the channel number holding means 342, the disk number holding unit 34
3,タグ番号保持手段344,LA有効情報保持手段3 3, the tag number holding unit 344, LA validity information holding means 3
45に獲得・保持できる。 It can be acquired and held in 45. したがって、キャッシュコントローラ270は、ディスク側内部バス222から受信したコマンドのディスク転送パラメータに関する情報として、LUN,チャンネル番号,ディスク番号,タグ番号,LA有効の可否を区別することが可能となり、途中でコマンド実行を中断して再開する場合でも、受信したデータのLA検査を実施することができる。 Therefore, the cache controller 270, as the information about the disk transfer parameter commands received from the disk-side internal bus 222, becomes LUN, channel number, disk number, tag number, can be distinguished from LA enabled permission, the command in the middle even if the resume to interrupt execution can be performed LA examination of the received data. 以上説明したように、本実施形態においては、ホスト入出力手段2 As described above, in the present embodiment, the host input means 2
08,209,210および、ディスク入出力手段21 08,209,210 and, disk input and output means 21
8,219,220の転送機能を利用するため、MPU Order to take advantage of the transfer function of 8,219,220, MPU
250の負荷を減らすことができ、ディスクアレイとしての性能を向上させることができる。 Can reduce the load of 250, it is possible to improve the performance of the disk array. なお、ディスクアレイとしての冗長データに対しても、本実施形態の各手段を用いることで、LA付加,LA検査をすることが容易に可能である。 Also with respect to redundant data as a disk array, by using the means of the present embodiment, LA addition, it is easily possible to LA test.

【0057】次に、図10〜図13を用いて、本実施形態によるディスクアレイシステムにおけるディスクアレイライト/リード動作について説明する。 Next, with reference to FIGS. 10 to 13, will be described disk array write / read operation in the disk array system according to this embodiment. 最初に、図1 First, as shown in FIG. 1
0及びを用いて、本実施形態のディスクアレイライト時の動作について説明する。 0 and is used to describe the operation during disk array write in this embodiment. 図10は、ホスト入出力手段208からキャッシュ240へのデータ転送について示すフローチャートであり、図11は、キャッシュ240 Figure 10 is a flowchart showing the data transfer to the cache 240 from the host input means 208, FIG. 11, the cache 240
からディスク入出力手段218へのデータ転送について示すフローチャートである。 From a flowchart illustrating the data transfer to the disk output means 218. なお、上述したように、キャッシュコントローラ270は、ホスト側内部バス21 As described above, the cache controller 270, the host-side internal bus 21
2または、ディスク側内部バス222からコマンドを受信した際、転送リストに含まれる転送パラメータによって、どの転送であるかを区別できるので、その動作の説明は省略する。 2 or, when receiving a command from the disk-side internal bus 222, the transfer parameters included in the transfer list, it is possible to distinguish whether any transfer, are omitted explanation of the operation. また、ディスクアレイの冗長データ生成については、既存の技術で問題なく実現できるので省略する。 Moreover, the redundant data generation disk array can be realized without problems in the existing technology is omitted.

【0058】最初に、図10を用いて、ディスクアレイライトのホスト側内部バスの転送フローについて説明するとともに、図10は、MPU250,ホスト入出力手段208,キャッシュコントローラ270の処理に分けて記述してある。 [0058] First, with reference to FIG. 10, as well as illustrating the transmission flow of the host-side internal bus of the disk array write, 10, MPU 250, a host input means 208 is divided to the process of the cache controller 270 described and Aru.

【0059】ホスト100上のアプリケーションなどからデータのライト要求が発行されると、ホスト入出力手段208は、ステップs540において、ホストライトコマンドを受信し、ステップs541において、メモリ260内のコマンド情報格納手段264にライトコマンドの内容を転送し、ステップs542において、MPU [0059] When data from an application on the host 100 a write request is issued, the host input means 208, in step s540, receives a host write command, in step S541, the command information storage means in the memory 260 264 to transfer the contents of the write command, in step S542, MPU
250に割込み信号を発行する。 To issue an interrupt signal to the 250.

【0060】MPU250は、ステップs520において、割込み信号を受け取ると、ステップs521において、コマンド情報格納手段264にあるライトコマンドの内容を解析し、ディスクアレイ特有のアドレス変換を行なう。 [0060] MPU250 in step s520, upon receiving an interrupt signal, in step S521, analyzes the content of the write command in the command information storage unit 264, performs address conversion of the disk array specific. 次に、MPU250は、ステップs522において、ホスト入出力手段208が使用する転送コマンドを作成してコマンド情報格納手段264に格納し、ステップs523において、LAを設定したホスト側内部バス転送リスト400を作成して転送リスト格納手段26 Then, MPU 250 is created at step S522, and stored in the command information storage unit 264 to create the transfer command by the host input means 208 is used, in step S523, the host-side internal bus transfer list 400 set the LA to transfer list storage means 26
3に格納する。 And stores it in the 3.

【0061】一方、ホスト入出力手段208は、ステップs542において、MPU250に割込み信号を発行した後、ステップs543において、転送コマンド、あるいは、ホスト側内部バス転送リスト400が作成されたかどうかを繰り返し参照する。 [0061] On the other hand, the host input means 208, in step S542, after issuing an interrupt signal to the MPU 250, in step S543, the transfer command, or whether repeatedly refer to the host-side internal bus transfer list 400 is created . そして、ホスト入出力手段208は、ステップs544において、ホスト側内部バス転送リスト400があったら取得し、ステップs The host input unit 208, at step S544, acquires if there is a host-side internal bus transfer list 400, step s
545において、ホスト側内部バス212のライトコマンドをキャッシュコントローラ270に対して発行する。 In 545, it issues a write command of the host-side internal bus 212 to the cache controller 270.

【0062】一方、キャッシュコントローラ270は、 [0062] On the other hand, the cache controller 270,
ステップs560において、ホスト側内部バス212のライトコマンドを受信すると、ステップs561において、受信したライトコマンドのホスト側内部バス転送アドレス410からLAを取得し、LA保持手段320に保持する。 In step S560, upon receiving a write command of the host-side internal bus 212, at step S561, acquires the LA from the host-side internal bus transfer address 410 of the write command received, held in the LA holding means 320. 次に、ホスト入出力手段208は、ステップs546において、キャッシュコントローラ270へホスト側内部バス212のデータを送信するとともに、キャッシュコントローラ270は、ステップs562において、そのデータを受信する。 Next, the host input means 208, in step S546, transmits the data of the host-side internal bus 212 to the cache controller 270, cache controller 270, in step S562, receives the data. これによって、ホスト側内部バス212のデータが、ホスト入出力手段208からキャッシュコントローラ270へ転送される。 Thus, the data of the host-side internal bus 212 is transferred from the host input means 208 to the cache controller 270.

【0063】次に、キャッシュコントローラ270は、 Next, the cache controller 270,
ステップs563において、LAを付加し、さらに、ステップs564において、キャッシュ240にデータを送信する。 In step S563, adds LA, further, in step S564, it transmits the data to the cache 240. なお、論理データブロック4000が複数続く転送の場合は、LA保持手段320に取りこんだLA In addition, if the logical data block 4000 is plural subsequent transfer, was taken to the LA holding means 320 LA
値をカウンタ301により、インクリメントしていけば、連続してLAを付加することが可能である。 The value counter 301, if we incremented, it is possible to add the LA continuously.

【0064】一方、データ転送が終了したホスト入出力手段208は、ステップs547において、MPU25 [0064] On the other hand, the host input means 208 the data transfer is completed, in step S547, MPU 25
0に割込み信号を発行する。 0 To issue an interrupt signal. MPU250は、ステップs524において、割込み信号を受け取ると、ステップs525において、終了処理を行なう。 MPU250 in step S524, when receiving the interrupt signal, in step S525, performs the end processing.

【0065】次に、図11を用いて、ディスクアレイライトのディスク側内部バスの転送フローについて説明するとともに、図11は、MPU250,ディスク入出力手段218,キャッシュコントローラ270の処理に分けて記述してある。 Next, with reference to FIG. 11, as well as illustrating the transmission flow of the disk-side internal bus of the disk array write, 11, MPU 250, a disk input-output unit 218 is divided to the process of the cache controller 270 described and Aru.

【0066】キャッシュ240からディスク装置234 [0066] disk device 234 from the cache 240
へのデータ書き込みが必要になると、MPU250は、 When the data writing is required to, is MPU250,
ステップs620において、ディスク入出力手段218 In step s620, the disk input means 218
が使用する転送コマンドを作成してコマンド情報格納手段264に格納し、ステップs621において、LAを設定したディスク側内部バス転送リスト440を作成して転送リスト格納手段263に格納する。 There was created a transfer command to be used and stored in the command information storage unit 264, in step S621, to create a disk-side internal bus transfer list 440 set the LA is stored in the transfer list storage unit 263.

【0067】一方、ディスク入出力手段218は、ステップs640においては、待ち状態であり、ステップs [0067] On the other hand, a disk input-output unit 218, at step s640, a wait state, the step s
641において、転送コマンド、あるいは、ディスク側内部バス転送リスト440が作成されたかどうかを繰り返し参照する。 In 641, the transfer command, or repeatedly see whether the disk-side internal bus transfer list 440 is created. 次に、ディスク入出力手段218は、ステップs642において、ディスク側内部バス転送リスト440があったら取得し、ステップs643において、ディスク側内部バス222のリードコマンドを、キャッシュコントローラ270に対して発行する。 Then, the disk input-output unit 218, at step S642, acquires if there is a disk-side internal bus transfer list 440, in step S643, the read command of the disk-side internal bus 222, and issues the cache controller 270.

【0068】一方、キャッシュコントローラ270は、 [0068] On the other hand, the cache controller 270,
ステップs660において、ディスク側内部バス222 In step s660, the disk-side internal bus 222
のリードコマンドを受信すると、ステップs661において、受信したリードコマンドのディスク側内部バス転送アドレス450からLAを取得し、LA保持手段34 When receiving a read command, in step S661, acquires the LA from the disk-side internal bus transfer address 450 of the received read command, LA retaining means 34
0に保持する。 To hold to 0. 次に、キャッシュコントローラ270 Then, the cache controller 270
は、ステップs662において、キャッシュ240からデータを受信し、ステップs663において、LAの検査を行なう。 In step S662, it receives data from the cache 240, in step S663, performs the inspection of the LA. なお、論理データブロック4000が複数続く転送の場合は、LA保持手段340に取りこんだL In addition, if the logical data block 4000 is plural subsequent transfer, was taken to the LA holding means 340 L
A値をカウンタ351によりインクリメントしていけば、連続してLAを検査することが可能である。 If we increment the A value by the counter 351, it is possible to inspect the LA continuously.

【0069】さらに、キャッシュコントローラ270 [0069] In addition, the cache controller 270
は、ステップs664において、ディスク入出力手段2 In step S664, the disk input means 2
18へディスク側内部バス222のデータを送信するとともに、ディスク入出力手段218は、ステップs64 It transmits the data of the disk-side internal bus 222 to 18, a disk input-output unit 218, the step s64
4において、そのデータを受信する。 In 4, it receives the data. これによって、ホスト側内部バス212のデータが、キャッシュコントローラ270からディスク入出力手段218へ転送される。 Thus, the data of the host-side internal bus 212 is transferred from the cache controller 270 to the disk input-output means 218.

【0070】次に、データ転送が終了したディスク入出力手段218は、ステップs645において、MPU2 Next, a disk input-output unit 218 the data transfer is completed, in step S645, MPU 2
50に割込み信号を発行する。 It issues an interrupt signal to 50. 一方、MPU250は、 On the other hand, it is MPU250,
ステップs622において、割込み信号を受け取ると、 In step S622, when receiving the interrupt signal,
ステップs623において、終了処理を行なう。 In step S623, it performs the end processing.

【0071】以上のように、転送リストを作成してから、データ転送が終了するまでの間はMPUの処理はなく、MPUの介在なしにLA付加、LA検査を実行可能である。 [0071] As described above, create a transfer list, until the data transfer is finished is not processing MPU, LA added without MPU intervention, it is possible to perform the LA test.

【0072】次に、図12及び図13を用いて、本実施形態のディスクアレイリード時の動作について説明する。 Next, with reference to FIGS. 12 and 13, the operation at the time of the disk array read in this embodiment. 図12は、キャッシュ240からホスト入出力手段208へのデータ転送について示すフローチャートであり、図13は、ディスク入出力手段218からキャッシュ240へのデータ転送について示すフローチャートである。 Figure 12 is a flowchart showing the data transfer from the cache 240 to the host input means 208, FIG. 13 is a flowchart illustrating the data transfer to the cache 240 from the disk output means 218.

【0073】最初に、図12を用いて、ディスクアレイリードのホスト側内部バスの転送処理について説明するとともに、図12は、MPU250、ホスト入出力手段208、キャッシュコントローラ270の処理に分けて記述してある。 [0073] First, with reference to FIG. 12, as well as illustrating the transmission processing of the host-side internal bus of the disk array read, 12, MPU 250, a host input means 208 is divided to the process of the cache controller 270 described and Aru. ホスト100上のアプリケーションなどからデータのリード要求が発行されると、ホスト入出力手段208は、ステップs740において、ホストリードコマンドを受信し、ステップs741において、メモリ260内のコマンド情報格納手段264にリードコマンドの内容を転送し、ステップs742において、MP When such read request data from an application on the host 100 is issued, the host input means 208, in step S740, receives a host read command, in step S741, the read in the command information storage unit 264 in the memory 260 transfer the contents of the command, in step s742, MP
U250に割込み信号を発行する。 To issue an interrupt signal to the U250.

【0074】MPU250は、ステップs720において、割込み信号を受け取ると、ステップs721において、コマンド情報格納手段264にあるリードコマンドの内容を解析し、ディスクアレイ特有のアドレス変換を行なう。 [0074] MPU250 in step S720, when receiving the interrupt signal, at step S721, analyzes the contents of the read command in the command information storage unit 264, performs address conversion of the disk array specific. 次に、MPU250は、ステップs722において、ホスト入出力手段208が使用する転送コマンドを作成してコマンド情報格納手段264に格納し、ステップs723において、LAを設定したホスト側内部バス転送リスト400を作成して転送リスト格納手段26 Then, MPU 250 is created at step S722, and stored in the command information storage unit 264 to create the transfer command by the host input means 208 is used, in step S723, the host-side internal bus transfer list 400 set the LA to transfer list storage means 26
3に格納する。 And stores it in the 3.

【0075】一方、ホスト入出力手段208は、ステップs742において、MPU250に割込み信号を発行した後、ステップs743において、転送コマンド、あるいは、ホスト側内部バス転送リスト400が作成されたかどうかを繰り返し参照する。 [0075] On the other hand, the host input means 208, in step S742, after issuing an interrupt signal to the MPU 250, in step S743, the transfer command, or whether repeatedly refer to the host-side internal bus transfer list 400 is created . そして、ホスト入出力手段208は、ステップs744において、ホスト側内部バス転送リスト400があったら取得し、ステップs The host input unit 208, at step S744, acquires if there is a host-side internal bus transfer list 400, step s
745において、ホスト側内部バス212のリードコマンドをキャッシュコントローラ270に対して発行する。 In 745, it issues a read command of the host-side internal bus 212 to the cache controller 270.

【0076】一方、キャッシュコントローラ270は、 [0076] On the other hand, the cache controller 270,
ステップs760において、ホスト側内部バス212のリードコマンドを受信すると、ステップs761において、受信したリードコマンドのホスト側内部バス転送アドレス410からLAを取得し、LA保持手段320に保持する。 In step S760, upon receiving a read command of the host-side internal bus 212, at step S761, it acquires the LA from the host-side internal bus transfer address 410 of the received read command and holds the LA holding means 320. 次に、キャッシュコントローラ270は、ステップs762において、キャッシュ240からデータを受信し、ステップs763において、LAの検査を行なう。 Then, the cache controller 270, in step s762, receives data from the cache 240, in step S763, performs the inspection of the LA. なお、論理データブロック4000が複数続く転送の場合は、LA保持手段320に取りこんだLA値をカウンタ331により、インクリメントしていけば、連続してLAを検査することが可能である。 In addition, if the logical data block 4000 is plural subsequent transfer, the counter 331 LA value taken in LA holding unit 320, if we incremented, it is possible to inspect the LA continuously. 次に、キャッシュコントローラ270は、ステップs764において、LAを削除する。 Then, the cache controller 270, in step S764, deletes the LA.

【0077】さらに、キャッシュコントローラ270 [0077] In addition, the cache controller 270
は、ステップs765において、ホスト入出力手段20 In step S765, the host input means 20
8へホスト側内部バス212のデータを送信するとともに、ホスト入出力手段208は、ステップs746において、そのデータを受信する。 Transmits the data of the host-side internal bus 212 to 8, the host input means 208, in step S746, it receives the data. これによって、ホスト側内部バス212のデータが、キャッシュコントローラ2 Thus, the data of the host-side internal bus 212, the cache controller 2
70からホスト入出力手段208へ転送される。 Is transferred from 70 to the host input means 208.

【0078】そして、データ転送が終了したホスト入出力手段208は、ステップs747において、MPU2 [0078] Then, the host input means 208 the data transfer is completed, in step S747, MPU 2
50に割込み信号を発行する。 It issues an interrupt signal to 50. 一方、MPU250は、 On the other hand, it is MPU250,
ステップs724において、割込み信号を受け取ると、 In step S724, when receiving the interrupt signal,
ステップs725において、終了処理を行なう。 In step S725, it performs the end processing.

【0079】以上の図12の動作は、キャッシュ240 [0079] The above operation of FIG. 12, the cache 240
の中にリード要求されたデータがある場合、つまり、キャッシュヒットの場合である。 If there is a read request data in, that is, the case of a cache hit. 要求されたデータがキャッシュ240の中にないキャッシュミスの場合は、図1 If the requested data is not a cache miss in the cache 240, FIG. 1
2のステップs720のあとに、次に説明する図13の動作をしてから図12のステップs721の動作に移るものである。 After the second step S720, it after the operation of FIG. 13 described below as it proceeds to the operation in step s721 in Fig. 12.

【0080】次に、図13を用いて、ディスクアレイリードのディスク側内部バスの転送処理について説明するとともに、図13においては、MPU250,ディスク入出力手段218,キャッシュコントローラ270の処理に分けて記述してある。 Next, with reference to FIG. 13, as well as illustrating the transmission processing of the disk-side internal bus of the disk array read, in FIG. 13, MPU 250, a disk input-output unit 218 is divided to the process of the cache controller 270 described are you.

【0081】ディスク装置234からキャッシュ240 [0081] cache from the disk unit 234 240
へのデータ読み出しが必要になると、MPU250は、 When the data reading is required to, is MPU250,
ステップs820において、ディスク入出力手段218 In step S820, the disk input means 218
が使用する転送コマンドを作成してコマンド情報格納手段264に格納し、ステップs821において、LAを設定したディスク側内部バス転送リスト440を作成して転送リスト格納手段263に格納する。 There was created a transfer command to be used and stored in the command information storage unit 264, in step S821, to create a disk-side internal bus transfer list 440 set the LA is stored in the transfer list storage unit 263.

【0082】一方、このとき、ディスク入出力手段21 [0082] On the other hand, at this time, disk input and output means 21
8は、ステップs840においては、待ち状態であり、 8, in step S840, a wait state,
ステップs841において、転送コマンド、あるいは、 In step S841, the transfer command or,
ディスク側内部バス転送リスト440が作成されたかどうかを繰り返し参照する。 Repeatedly refer to whether the disk-side internal bus transfer list 440 is created. 次に、ディスク入出力手段2 Then, disk input and output means 2
18は、ステップs842において、ディスク側内部バス転送リスト440があったら取得し、ステップs84 18, at step S842, acquires if there is a disk-side internal bus transfer list 440, step s84
3において、ディスク側内部バス222のライトコマンドをキャッシュコントローラ270に対して発行する。 In 3 issues a write command of the disk-side internal bus 222 to the cache controller 270.

【0083】一方、キャッシュコントローラ270は、 [0083] On the other hand, the cache controller 270,
ステップs860において、ディスク側内部バス222 In step S860, the disk-side internal bus 222
のライトコマンドを受信すると、ステップs861において、受信したライトコマンドのディスク側内部バス転送アドレス450からLAを取得し、LA保持手段34 Upon receiving a write command, in step S861, acquires the LA from the disk-side internal bus transfer address 450 of the write command received, LA retaining means 34
0に保持する。 To hold to 0.

【0084】次に、ディスク入出力手段218は、ステップs844において、キャッシュコントローラ270 [0084] Then, the disk input-output unit 218, in step S844, the cache controller 270
へディスク側内部バス222のデータを送信するとともに、キャッシュコントローラ270は、ステップs86 It transmits the data of the disk-side internal bus 222 to the cache controller 270, step s86
2において、そのデータを受信する。 In 2, it receives the data. これによって、ディスク側内部バス212のデータが、ディスク入出力手段208からキャッシュコントローラ270へ転送される。 Thus, the data of the disk-side internal bus 212 is transferred from the disk input means 208 to the cache controller 270.

【0085】次に、キャッシュコントローラ270は、 [0085] Then, the cache controller 270,
ステップs863において、LAを検査しつつ、ステップs864において、キャッシュにデータを、ディスク入出力手段208に送信する。 In step S863, while checking the LA, in step S864, it transmits the data to the cache, the disk input-output unit 208. なお、論理データブロック4000が複数続く転送の場合は、LA保持手段34 In addition, if the logical data block 4000 is plural subsequent transfer, LA retaining means 34
0に取りこんだLA値をカウンタ351により、インクリメントしていけば、連続してLAを検査することが可能である。 By the counter 351 the LA value was taken to 0, if we incremented, it is possible to inspect the LA continuously.

【0086】一方、データ転送が終了したディスク入出力手段218は、ステップs845において、MPU2 [0086] On the other hand, a disk input-output unit 218 the data transfer is completed, in step S845, MPU 2
50に割込み信号を発行する。 It issues an interrupt signal to 50. 一方、MPU250は、 On the other hand, it is MPU250,
ステップs822において、割込み信号を受け取ると、 In step S822, when receiving the interrupt signal,
ステップs823において、終了処理を行なう。 In step S823, it performs the end processing.

【0087】以上のように、転送リストを作成してから、データ転送が終了するまでの間はMPUの処理はなく、MPU介在なしにLA検査,LA削除を実行可能である。 [0087] As described above, create a transfer list, until the data transfer is finished is not processing MPU, LA inspection without MPU intervention, it is possible to perform the LA deleted.

【0088】以上説明したように、本実施形態によれば、転送リスト中にLAを設定しておくことにより、転送機能付きのホスト入出力手段、およびディスク入出力手段を使用する場合でも、LA付加,LA検査,LA削除を実現でき、データ保証コードの付加時における高性能化を図ることができる。 [0088] As described above, according to this embodiment, by setting the LA in the transfer list, the host input means with the transfer function, and even when using a disk input-output means, LA addition, LA inspection, can be realized LA deletion, it is possible to improve the performance during the addition of the data guarantee code. また、転送リスト中に転送パラメータであるLUN,チャンネル番号,ホスト番号, Further, LUN is transfer parameters in the transfer list, the channel number, host number,
ディスク番号,タグ番号,LA有効情報を設定しておくことで、転送機能付きのホスト入出力手段、およびディスク入出力手段を使用し、かつ、多数のホスト,ディスク装置から、コマンドが多重に発行され、かつ、途中で実行を中断して再開するような状態においても、キャッシュコントローラがコマンドの区別をすることが可能で、受信したデータのLA付加,LA検査,LA削除を実施することができる。 Disk number, tag number, by setting the LA validity information issued, the host input means with the transfer function, and use the disk output means, and a number of hosts, from the disk device, the command is a multiple is, and, even in a state such as to resume to interrupt execution on the way, it is possible to cache controller is able to distinguish between commands, implementing LA addition of the received data, LA inspection, the LA deletion .

【0089】なお、ホスト100,110,120と、 [0089] In addition, a host 100, 110, 120,
ホスト入出力手段208,209,210の間、および、ディスク装置群228,229,230とディスク入出力手段218,219,220の間のインターフェースとしては、たとえば、ファイバチャネル,SCSI Between the host input means 208, 209, 210, and, as the interface between the disk device group 228, 229, 230 and the disk input means 218,219,220, for example, Fiber Channel, SCSI
などが考えられるが、他のインターフェースを用いることもできる。 The like can be considered, but it is also possible to use other interfaces. また、ホスト側内部バス212およびディスク側内部バス222のバスは、たとえば、64ビット幅のPCIなどが考えられるが、キャッシュ240のアドレス領域の割り当てを変更すれば、32ビット幅のP The bus of the host-side internal bus 212 and the disk-side internal bus 222 may be, for example, such as 64-bit wide PCI is considered, by changing the allocation of the address space of the cache 240, the 32-bit width P
CIまたは他のバスを用いることもできる。 It is also possible to use a CI or other bus. さらに、本実施形態では、LAを論理データブロックの最後尾に付加するとしたが、論理データブロックの位置から割り出せる場所であればどこに付加してもよいものである。 Furthermore, in the present embodiment, a adding LA to the end of the logical data blocks, in which may be added anywhere as long as location Waridaseru from the position of the logical data block. また、本実施形態では、データ保証コードを論理データブロックアドレスまたは、その一部としたが、分割したデータの属性が特定できる値であれば他のものでもよいものである。 Further, in the present embodiment, the data guarantee code logical data block address or has been a part, but may be otherwise as long as it is a value that the attribute can be identified of the divided data. また、キャッシュ240は、高速読み書き可能なメモリであるとし、メモリの種類は問わないものである。 In addition, the cache 240, and a high-speed readable and writable memory, the type of memory is one that does not matter.

【0090】また、本実施形態においては、LRCによるデータ保証方式との併用が可能である。 [0090] In the present embodiment, it can be used in combination with data guarantee method according LRC.

【0091】次に、図14及び図15を用いて、本発明の第2の実施形態によるディスクアレイシステムの構成及び動作について説明する。 [0091] Next, with reference to FIGS. 14 and 15, a second embodiment will be described the configuration and operation of the disk array system according to the present invention. 最初に、図14を用いて、 First, with reference to FIG. 14,
本実施形態によるディスクアレイシステムの構成について説明する。 Description will be given of a configuration of a disk array system according to this embodiment. なお、図1と同一符号は、同一部分を示している。 Incidentally, FIG. 1 and the same reference numerals denote the same parts.

【0092】ここでは、説明の簡略化のため、図1に示した第1の実施形態との相違点を中心として説明する。 [0092] Here, for simplification of explanation, description will focus on differences from the first embodiment shown in FIG.
図14に示すように、本実施形態においては、キャッシュ240は、ホスト側LA格納手段242と、ディスク側LA格納手段243を備えている。 As shown in FIG. 14, in the present embodiment, the cache 240 includes a host-side LA storage unit 242, and a disk-side LA storage unit 243. また、キャッシュコントローラ270は、LA獲得手段380を備えている。 The cache controller 270 includes an LA acquisition means 380.

【0093】ホスト側LA格納手段242と、ディスク側LA格納手段243は、MPU250が実行する後述のLA設定手段262によりLAを設定するために、用いられる。 [0093] The host-side LA storing unit 242, the disk-side LA storage unit 243, to set the LA by LA setting means 262 described later MPU250 runs used. このLAは、図1に示した実施形態においては、転送リストに設定されていたものである。 The LA is, in the embodiment shown in FIG. 1, in which has been set in the transfer list. ホスト側LA格納手段242と、ディスク側LA格納手段243 The host-side LA storing unit 242, the disk-side LA storage unit 243
は、少なくとも1つ以上のLAを格納できるものである。 Are those capable of storing at least one LA.

【0094】LA獲得手段380は、ホスト側LA格納手段242と、ディスク側LA格納手段243に設定されたLAを獲得し、LA保持手段320,340に保持する。 [0094] LA acquisition unit 380 includes a host-side LA storing unit 242 acquires the LA set in the disk side LA storage unit 243, holds the LA holding means 320 and 340.

【0095】次に、図15を用いて、本実施形態によるディスクアレイシステムに用いる転送リスト格納手段2 [0095] Next, with reference to FIG. 15, the transfer list storage unit used in the disk array system according to this embodiment 2
63の構成について説明する。 63 configuration will be described. なお、図9を同一符号は、同一部分を示している。 Note that the same reference numerals 9 denote the same components.

【0096】ここでは、説明の簡略化のため、図9に示した第1の実施形態との相違点を中心として説明する。 [0096] Here, for simplification of explanation, description will focus on differences from the first embodiment shown in FIG.
転送リスト格納手段263は、図9に示した実施形態と同様に、ホスト側内部バス転送リスト400と、ディスク側内部バス転送リスト440とを備えている。 Transfer list storage unit 263, similar to the embodiment illustrated in FIG. 9, and a host-side internal bus transfer list 400, and a disk-side internal bus transfer list 440.

【0097】ホスト側内部バス転送リスト400は、図9に示した実施形態と同様に、ホスト側リスト100 [0097] The host-side internal bus transfer list 400, similar to the embodiment illustrated in FIG. 9, the host list 100
0,1001,…から構成されている。 0,1001, and is configured from .... しかしながら、 However,
ホスト側内部バス転送アドレス410の内のホスト転送パラメータとして、LAポイント1320,1321, As a host transfer parameters of the host-side internal bus transfer address 410, LA points 1320, 1321,
1322,1323,…を格納するようにしている。 1322 and 1323, so that to store .... また、ディスク側内部バス転送リスト440は、図9に示した実施形態と同様に、ディスク側リスト2000,2 The disk-side internal bus transfer list 440, similar to the embodiment illustrated in FIG. 9, the disk side list 2000, 2
001,…から構成されている。 001, and is configured from .... しかしながら、ディスク側内部バス転送アドレス450の内のディスク転送パラメータとして、LAポイント2320,2321,2 However, as the disk transfer parameters of the disk-side internal bus transfer address 450, LA point 2320,2321,2
322,2323,…を格納するようにしている。 322,2323, so that to store ....

【0098】次に、本実施形態によるディスクアレイシステムの動作について説明する。 [0098] Next, the operation of the disk array system according to this embodiment. ここでは、説明の簡略化のため、図1及び図9に示した第1の実施形態との相違点を中心として説明する。 Here, for simplification of explanation, description will focus on differences from the first embodiment shown in FIGS. 1 and 9.

【0099】メモリ260が備えているLA設定手段2 [0099] LA memory 260 is provided with setting means 2
62は、図1に示した実施形態とは異なり、キャッシュ240内にあるホスト側LA格納手段242,又は、ディスク側LA格納手段243にLAを設定し、その後、 62, unlike the embodiment shown in FIG. 1, the host-side LA storage unit 242 in the cache 240, or set the LA to the disc side LA storage unit 243, then,
ホスト側内部転送バス400,または、ディスク側内部バス転送リスト440中に、ホスト側LA格納手段24 Host-side internal transfer bus 400 or, in the disk-side internal bus transfer list 440, the host-side LA storing means 24
2,及びディスク側LA格納手段243に設定したLA 2, and it is set to the disc side LA storing means 243 LA
のポインタアドレスを設定する。 To set the pointer address.

【0100】ホスト情報保持手段360は、ホスト入出力手段208,209,210とキャッシュ240との間で、データが転送される際に、ホスト側内部バス転送リスト400を獲得し、保持する。 [0100] Host information holding means 360 between the host input means 208, 209, 210 and cache 240, when the data is transferred, acquired host-side internal bus transfer list 400 holds. LA保持手段320 LA holding means 320
には、一時的に、LAポインタを格納する。 The temporarily stores LA pointer. LA保持手段320は、LAポインタが格納されると、キャッシュ制御手段273を用いて、LAポインタに基づき、キャッシュ240上のホスト側LA格納手段242からLA LA holding unit 320, the LA pointer is stored, using a cache control unit 273, based on the LA pointer, LA from the host side LA storage unit 242 in the cache 240
を取得し、LA保持手段320に格納する。 Acquires and stores the LA holding means 320.

【0101】ディスク情報保持手段370は、ディスク入出力手段218,219,220とキャッシュ240 [0101] disk information holding means 370, disk input and output means 218,219,220 and the cache 240
との間でデータが転送される際に、ディスク側内部バス転送リスト440を獲得/保持する。 When data is transferred between the, acquiring / holding the disk-side internal bus transfer list 440. LA保持手段34 LA retaining means 34
0には、一時的にLAポインタを格納する。 0 temporarily stores LA pointer. LA獲得手段380は、LA保持手段340にLAポインタが格納されると、キャッシュ制御手段273を用いて、LAポインタに基づき、キャッシュ240上のディスク側LA LA acquisition unit 380, when LA pointer LA holding unit 340 is stored, by using the cache control unit 273, based on the LA pointer, disc side LA in the cache 240
格納手段243からLAを取得し、LA保持手段340 Get the LA from the storage unit 243, LA holding means 340
に格納する。 And stores it in.

【0102】次に、図10〜図13を用いて、本実施形態によるディスクアレイシステムにおけるディスクアレイ・ライト/リード動作について説明する。 [0102] Next, with reference to FIGS. 10 to 13, will be described disk array write / read operation in the disk array system according to this embodiment. 最初に、図10及び図11を用いて、ディスクアレイライト時の動作について説明する。 First, with reference to FIGS. 10 and 11, the operation at the time of disk array write. ここでは、説明の簡略化のため、 Here, for simplification of explanation,
第1の実施形態との相違点を中心として説明する。 Explaining the differences from the first embodiment mainly.

【0103】まず、図10のディスクアレイライトのホスト側内部バスの転送フローについて説明する。 [0103] First, illustrating the transmission flow of the host-side internal bus of the disk array write of Figure 10. 本実施形態においては、MPU250は、ステップ523において、LA設定手段262を用いて、キャッシュ240 In this embodiment, MPU 250, in step 523, using the LA setting means 262, the cache 240
内にあるホスト側LA格納手段242にLAを設定し、 Set LA in the host LA storage unit 242 is within,
その後、LAポインタを設定したホスト側内部バス転送リスト400を作成し、転送リスト格納手段263に格納する。 Then, to create a host-side internal bus transfer list 400 set the LA pointer, stored in the transfer list storage unit 263.

【0104】また、キャッシュコントローラ270は、 [0104] In addition, the cache controller 270,
ステップ561において、受信したライトコマンドのホスト側内部バス転送アドレス410からLAポインタを取得し、LA獲得手段380は、LAポインタに基づき、キャッシュ240上のホスト側LA格納手段242 In step 561, acquires the LA pointer from the host-side internal bus transfer address 410 of the write command received, LA acquisition means 380, based on the LA pointer, the host-side LA storing means on the cache 240 of 242
からLAを取得し、LA保持手段320に格納する。 Get the LA from, and stores the LA holding means 320. その他の処理は、第1の実施形態と同様である。 The other processes are the same as in the first embodiment.

【0105】次に、図11のディスクアレイライトのディスク側内部バスの転送フローについて説明する。 Next, a description will be given transfer flow disk-side internal bus of the disk array write of Figure 11. 本実施形態においては、MPU250は、ステップ621において、LA設定手段262を用いて、キャッシュ24 In this embodiment, MPU 250, in step 621, using the LA setting means 262, the cache 24
0内にあるディスク側LA格納手段243にLAを設定し、その後、LAポインタを設定したディスク側内部バス転送リスト440を作成し、転送リスト格納手段26 Set LA on the disk side LA storage unit 243 within 0, then create a disk-side internal bus transfer list 440 set the LA pointer, a transfer list storage unit 26
3に格納する。 And stores it in the 3.

【0106】また、キャッシュコントローラ270は、 [0106] In addition, the cache controller 270,
ステップ661において、受信したリードコマンドのディスク側内部バス転送アドレス450からLAポインタを取得し、LA獲得手段380は、LAポインタに基づき、キャッシュ240上のディスク側LA格納手段24 In step 661, acquires the LA pointer from the disk-side internal bus transfer address 450 of the received read command, LA acquisition means 380, based on the LA pointer, the cache 240 of the disk-side LA storing means 24
3からLAを取得し、LA保持手段340に格納する。 Get the LA from 3, and stores the LA holding means 340.
その他の処理は、第1の実施形態と同様である。 The other processes are the same as in the first embodiment.

【0107】以上のように、本実施形態においては、転送リストを作成してから、データが終了するまでの間は、MPUの処理はなく、本実施形態においても、MP [0107] As described above, in the present embodiment, it creates a transfer list, until the data is completed, rather than the processing of MPU, also in this embodiment, MP
Uの介在なしに、LA付加,LA検査を行えるものである。 Without U intervention, LA addition, those capable of performing LA inspection.

【0108】次に、図12及び図13を用いて、ディスクアレイリード時の動作について説明する。 [0108] Next, with reference to FIGS. 12 and 13, the operation at the time of the disk array read. ここでは、 here,
説明の簡略化のため、第1の実施形態との相違点を中心として説明する。 For simplicity of explanation, the differences from the first embodiment mainly.

【0109】まず、図12のディスクアレイリードのホスト側内部バスの転送フローについて説明する。 [0109] First, illustrating the transmission flow of the host-side internal bus of the disk array read in FIG. 本実施形態においては、MPU250は、ステップ723において、LA設定手段262を用いて、キャッシュ240 In this embodiment, MPU 250, in step 723, using the LA setting means 262, the cache 240
内にあるホスト側LA格納手段242にLAを設定し、 Set LA in the host LA storage unit 242 is within,
その後、LAポインタを設定したホスト側内部バス転送リスト400を作成し、転送リスト格納手段263に格納する。 Then, to create a host-side internal bus transfer list 400 set the LA pointer, stored in the transfer list storage unit 263.

【0110】また、キャッシュコントローラ270は、 [0110] In addition, the cache controller 270,
ステップ761において、受信したリードコマンドのホスト側内部バス転送アドレス410からLAポインタを取得し、LA獲得手段380は、LAポインタに基づき、キャッシュ240上のホスト側LA格納手段242 In step 761, acquires the LA pointer from the host-side internal bus transfer address 410 of the received read command, LA acquisition means 380, based on the LA pointer, the host-side LA storing means on the cache 240 of 242
からLAを取得し、LA保持手段320に格納する。 Get the LA from, and stores the LA holding means 320. その他の処理は、第1の実施形態と同様である。 The other processes are the same as in the first embodiment.

【0111】次に、図12のディスクアレイリードのディスク側内部バスの転送フローについて説明する。 Next, a description will forward flow of the disk-side internal bus of the disk array read in FIG. 本実施形態においては、MPU250は、ステップ821において、LA設定手段262を用いて、キャッシュ24 In this embodiment, MPU 250, in step 821, using the LA setting means 262, the cache 24
0内にあるディスク側LA格納手段243にLAを設定し、その後、LAポインタを設定したディスク側内部バス転送リスト440を作成し、転送リスト格納手段26 Set LA on the disk side LA storage unit 243 within 0, then create a disk-side internal bus transfer list 440 set the LA pointer, a transfer list storage unit 26
3に格納する。 And stores it in the 3.

【0112】また、キャッシュコントローラ270は、 [0112] In addition, the cache controller 270,
ステップ661において、受信したライトコマンドのディスク側内部バス転送アドレス450からLAポインタを取得し、LA獲得手段380は、LAポインタに基づき、キャッシュ240上のディスク側LA格納手段24 In step 661, acquires the LA pointer from the disk-side internal bus transfer address 450 of the write command received, LA acquisition means 380, based on the LA pointer, the cache 240 of the disk-side LA storing means 24
3からLAを取得し、LA保持手段340に格納する。 Get the LA from 3, and stores the LA holding means 340.
その他の処理は、第1の実施形態と同様である。 The other processes are the same as in the first embodiment.

【0113】以上のように、本実施形態においては、転送リストを作成してから、データが終了するまでの間は、MPUの処理はなく、本実施形態においても、MP [0113] As described above, in the present embodiment, it creates a transfer list, until the data is completed, rather than the processing of MPU, also in this embodiment, MP
Uの介在なしに、LA付加,LA検査を行えるものである。 Without U intervention, LA addition, those capable of performing LA inspection.

【0114】以上説明したように、第1の実施形態においては、MPU250が、LAの実体を転送リストに設定するに対して、本実施形態では、MPU250は、L [0114] As described above, in the first embodiment, with respect to MPU 250 sets the entity of LA in the transfer list, in this embodiment, the MPU 250, L
Aの実体をキャッシュ240に設定し、キャッシュ24 Set the entity of A in the cache 240, cache 24
0上のLAのポインタアドレスを転送リストに設定するようにしている。 The pointer address LA on 0 so that set the transfer list. また、第1の実施形態では、キャッシュコントローラ270が、転送リストからLAの実体を取得するのに対して、本実施形態では、キャッシュコントローラ270は、転送リストからLAのポインタアドレスを取得し、ポインタアドレスを元に、キャッシュ2 In the first embodiment, cache controller 270, with respect to the transfer list to obtain the substance of LA, in the present embodiment, the cache controller 270 obtains a pointer address LA from the transfer list, the pointer based on the address, the cache 2
40からLAを取得する。 To get the LA from 40. なお、キャッシュコントローラ270がLAを取得してからの動作は、第1の実施形態と同様である。 The operation of the cache controller 270 acquires the LA is the same as in the first embodiment.

【0115】以上のようにして、キャッシュにLAを設定し、転送リストにLAポインタを設定しておくことにより、転送機能付きホスト入出力手段及びディスク入出力手段を使用する場合でも、MPUが介在することなく、LA付加,LA検査,LA削除を実現でき、データ保証コードの付加時における高性能化を図ることができる。 [0115] As described above, setting the LA in the cache, by setting the LA pointer in the transfer list, even when using a host input means and the disk input output with transfer function, MPU intervening without, LA added, LA inspection, it can be realized LA deletion, it is possible to improve the performance during the addition of the data guarantee code. また、転送リスト中に転送パラメータであるLU In addition, a transfer parameters during the transfer list LU
N,チャンネル番号,ホスト番号,ディスク番号,タグ番号,LA有効情報を設定しておくことで、転送機能付きのホスト入出力手段、およびディスク入出力手段を使用し、かつ、多数のホスト,ディスク装置から、コマンドが多重に発行され、かつ、途中で実行を中断して再開するような状態においても、キャッシュコントローラがコマンドの区別をすることが可能で、受信したデータのLA付加,LA検査,LA削除を実施することができる。 N, channel number, host number, disk number, tag number, by setting the LA validity information, the host input means with the transfer function, and use the disk output means, and a large number of hosts, the disk from the device, the command is issued to the multiplexed and, even in a state such as to resume to interrupt the execution in the middle, enables the cache controller to distinguish between the commands, LA addition of the received data, LA inspection, can be carried out LA deleted.

【0116】なお、ホスト100,110,120と、 [0116] In addition, a host 100, 110, 120,
ホスト入出力手段208,209,210の間、および、ディスク装置群228,229,230とディスク入出力手段218,219,220の間のインターフェースとしては、たとえば、ファイバチャネル,SCSI Between the host input means 208, 209, 210, and, as the interface between the disk device group 228, 229, 230 and the disk input means 218,219,220, for example, Fiber Channel, SCSI
などが考えられるが、他のインターフェースを用いることもできる。 The like can be considered, but it is also possible to use other interfaces. また、ホスト側内部バス212およびディスク側内部バス222のバスは、たとえば、64ビット幅のPCIなどが考えられるが、キャッシュ240のアドレス領域の割り当てを変更すれば、32ビット幅のP The bus of the host-side internal bus 212 and the disk-side internal bus 222 may be, for example, such as 64-bit wide PCI is considered, by changing the allocation of the address space of the cache 240, the 32-bit width P
CIまたは他のバスを用いることもできる。 It is also possible to use a CI or other bus. さらに、本実施形態では、LAを論理データブロックの最後尾に付加するとしたが、論理データブロックの位置から割り出せる場所であればどこに付加してもよいものである。 Furthermore, in the present embodiment, a adding LA to the end of the logical data blocks, in which may be added anywhere as long as location Waridaseru from the position of the logical data block. また、本実施形態では、データ保証コードを論理データブロックアドレスまたは、その一部としたが、分割したデータの属性が特定できる値であれば他のものでもよいものである。 Further, in the present embodiment, the data guarantee code logical data block address or has been a part, but may be otherwise as long as it is a value that the attribute can be identified of the divided data. また、キャッシュ240は、高速読み書き可能なメモリであるとし、メモリの種類は問わないものである。 In addition, the cache 240, and a high-speed readable and writable memory, the type of memory is one that does not matter.

【0117】また、本実施形態においては、LRCによるデータ保証方式との併用が可能である。 [0117] In the present embodiment, it can be used in combination with data guarantee method according LRC.

【0118】 [0118]

【発明の効果】本発明によれば、LAのようなデータの属性に基づく保証コードをデータに付加することができるとともに、転送効率を向上することができる。 According to the present invention, it is possible to add a guarantee code based on the attribute data, such as LA in data, it is possible to improve the transfer efficiency.

【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS

【図1】本発明の第1の実施形態によるディスクアレイシステムの構成を示すブロック図である。 1 is a block diagram showing a structure of a disk array system according to the first embodiment of the present invention.

【図2】本発明の第1の実施形態によるディスクアレイシステムに用いるLAの具体例の説明図である。 Is an illustration of a specific example of LA used in the disk array system according to the first embodiment of the present invention; FIG.

【図3】本発明の第1の実施形態によるディスクアレイシステムを構成するディスクアレイに用いるホスト情報保持手段の構成を示す説明図である。 3 is an explanatory diagram showing a configuration of a host information holding means for use in a disk array constituting the disk array system according to a first embodiment of the present invention.

【図4】本発明の第1の実施形態によるディスクアレイシステムを構成するディスクアレイに用いるディスク情報保持手段の構成を示す説明図である。 Is an explanatory diagram showing a structure of a disk information holding means for use in a disk array constituting the disk array system according to a first embodiment of the present invention; FIG.

【図5】本発明の第1の実施形態によるディスクアレイシステムを構成するディスクアレイに用いるLA付加手段の構成を示す説明図である。 5 is an explanatory diagram showing the configuration of LA adding means for use in a disk array constituting the disk array system according to a first embodiment of the present invention.

【図6】本発明の第1の実施形態によるディスクアレイシステムを構成するディスクアレイに用いるホスト側L [6] The host side L for use in the disk array constituting the disk array system according to a first embodiment of the present invention
A検査手段の構成を示す説明図である。 It is an explanatory diagram showing a configuration of an A test means.

【図7】本発明の第1の実施形態によるディスクアレイシステムを構成するディスクアレイに用いるLA削除手段の構成を示す説明図である。 7 is an explanatory view showing a configuration of LA deleting means for use in a disk array constituting the disk array system according to a first embodiment of the present invention.

【図8】本発明の第1の実施形態によるディスクアレイシステムを構成するディスクアレイに用いるディスク側LA検査手段の構成を示す説明図である。 8 is an explanatory diagram showing a structure of a disk-side LA inspection means used in the disk array constituting the disk array system according to a first embodiment of the present invention.

【図9】本発明の第1の実施形態によるディスクアレイシステムを構成するディスクアレイに用いる転送リスト格納手段の構成を示す説明図である。 9 is an explanatory diagram showing the structure of a transfer list storage means used in the disk array constituting the disk array system according to a first embodiment of the present invention.

【図10】本発明の第1の実施形態によるディスクアレイシステムにおけるホスト入出力手段からキャッシュへのデータ転送について示すフローチャートである。 From the host input means in the disk array system according to the first embodiment of the invention; FIG is a flowchart illustrating the data transfer to the cache.

【図11】本発明の第1の実施形態によるディスクアレイシステムにおけキャッシュからディスク入出力手段へのデータ転送について示すフローチャートである。 11 is a flowchart illustrating data transfer from the cache put in the disk array system according to the first embodiment of the present invention to a disk input-output means.

【図12】本発明の第1の実施形態によるディスクアレイシステムにおけるキャッシュからホスト入出力手段へのデータ転送について示すフローチャートである。 Is a flowchart illustrating data transfer from the cache in the disk array system to the host input means according to the first embodiment of the present invention; FIG.

【図13】本発明の第1の実施形態によるディスクアレイシステムにおけるディスク入出力手段からキャッシュへのデータ転送について示すフローチャートである。 From the disk output means in the disk array system according to the first embodiment of FIG. 13 the present invention is a flow chart showing the data transfer to the cache.

【図14】本発明の第2の実施形態によるディスクアレイシステムの構成を示すブロック図である。 14 is a block diagram showing a structure of a disk array system according to a second embodiment of the present invention.

【図15】本発明の第2の実施形態によるディスクアレイシステムを構成するディスクアレイに用いる転送リスト格納手段の構成を示す説明図である。 15 is an explanatory diagram showing the structure of a transfer list storage means used in the disk array constituting the disk array system according to a second embodiment of the present invention.

【符号の説明】 DESCRIPTION OF SYMBOLS

100,110,120…ホスト 130…バススイッチ 200…ディスクアレイ 208,209,210…ホスト入出力手段 211,221…DMA 218,219,220…ディスク入出力手段 228,229,230…ディスク装置群 234,235,236…ディスク装置 240…キャッシュ 250…MPU 260…メモリ 261…ディスクアレイ制御手段 262…LA設定手段 263…転送リスト格納手段 264…コマンド情報格納手段 270…キャッシュコントローラ 271…ホスト側内部バスバッファ 272…ディスク側内部バスバッファ 273…キャッシュ制御手段 300…LA付加手段 310…LA削除手段 320,340…LA保持手段 330…ホスト側LA検査手段 350…ディスク側LA検査手段 4 100, 110, 120 ... host 130 ... bus switch 200 ... disk array 208, 209, 210 ... host input means 211,221 ... DMA 218,219,220 ... disk input output 228, 229, 230 ... disk device group 234 , 235, 236 ... disc device 240 ... cache 250 ... MPU 260 ... memory 261 ... disk array control unit 262 ... LA setting means 263 ... transfer list storage unit 264 ... command information storage unit 270 ... cache controller 271 ... host-side internal bus buffer 272 ... disk-side internal bus buffer 273 ... cache control unit 300 ... LA adding means 310 ... LA deleting means 320, 340 ... LA holding unit 330 ... host LA checking means 350 ... disc side LA inspection means 4 0…ホスト側内部バス転送リスト 440…ディスク側内部バス転送リスト 3000,3001,3002…拡張データ 4000,4001,4002…論理データブロック 5000,5001,5002…LA部 0 ... host-side internal bus transfer list 440 ... disk-side internal bus transfer list 3000,3001,3002 ... extension data 4000,4001,4002 ... logical data blocks 5000,5001,5002 ... LA portion

───────────────────────────────────────────────────── フロントページの続き (72)発明者 山本 政行 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 (72)発明者 松本 純 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 (72)発明者 味松 康行 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 (72)発明者 佐藤 雅彦 神奈川県小田原市国府津2880番地 株式会 社日立製作所ストレージシステム事業部内 Fターム(参考) 5B018 GA01 GA04 HA14 HA40 MA14 QA16 5B065 BA01 CA11 CA30 CH01 EA02 EA12 EA21 ────────────────────────────────────────────────── ─── of the front page continued (72) inventor Masayuki Yamamoto Kawasaki City, Kanagawa Prefecture Aso District Ozenji 1099 address Co., Ltd., Hitachi systems development Laboratory in (72) inventor Jun Matsumoto Kawasaki City, Kanagawa Prefecture Aso District Ozenji 1099 address shares company Hitachi systems development Laboratory in (72) inventor Ajimatsu Yasuyuki Kawasaki City, Kanagawa Prefecture Aso District Ozenji 1099 address Co., Ltd., Hitachi systems development Laboratory in (72) inventor Masahiko Sato, Odawara, Kanagawa Prefecture Kozu 2880 address stock company Hitachi storage systems Division in the F-term (reference) 5B018 GA01 GA04 HA14 HA40 MA14 QA16 5B065 BA01 CA11 CA30 CH01 EA02 EA12 EA21

Claims (5)

    【特許請求の範囲】 [The claims]
  1. 【請求項1】アレイ状に配置した複数のディスク装置を有するディスクアレイにホストからのデータを書き込み、また、上記ディスクアレイに書き込まれたデータを上記ホストに読み出すディスクアレイシステムにおいて、 上記ディスクアレイは、上記ホストとの入出力を行う転送機能を有するホスト入出力手段と、データを一時的に保持するキャッシュと、データの属性に基づく保証コードを特定する値を保持する保証コード保持手段と、上記ホスト入出力手段の転送リストを作成するMPUとを備え、 上記ホストからのデータの書込み要求時には、 上記MPUは、上記ホスト入出力手段が参照する転送リストを作成し、この転送リスト中にデータの属性に基づく保証コードを特定する値を設定し、 上記ホスト入出力手段は、データの属 1. A write data from the host to the disk array having a plurality of disk devices arranged in an array, also the data written to the disk array in a disk array system to read in the host, the disk array a host input means having a transfer function for input and output between the host, a cache for temporarily holding data, a guarantee code holding means for holding a value specifying the guarantee code based on the attributes of the data, the and a MPU which creates a transfer list of host input means, when a data write request from the host, the MPU creates the transfer list in which the host input means refers, the data during the transfer list set the value that identifies the guarantee code based on the attributes, the host input means, the genus of the data 性に基づく保証コードを特定する値を含む上記転送リストに従い、データを上記キャッシュに送信し、 上記保証コード保持手段は、データが上記キャッシュに送信される際にデータの属性に基づく保証コードを特定する値を獲得し、データの属性に基づく保証コードを特定する値を保持し、 上記保証コード付加手段は、上記保証コード保持手段に格納したデータの属性に基づく保証コードを特定する値を上記キャッシュに書き込まれるデータに付加することを特徴とするディスクアレイシステム。 Accordance with the above transfer list that contains the value identifying the guarantee code based on sex, and transmits the data to the cache, the guarantee code holding means, the data specifying the guarantee code based on the attributes of the data as it is transmitted to the cache the value to be acquired, holds a value that identifies the guarantee code based on the attributes of the data, the code addition means, the guarantee code holding means the cache value specifying a guarantee code based on the attributes of the data stored in the a disk array system characterized by adding to the data to be written to.
  2. 【請求項2】請求項1記載のディスクアレイシステムにおいて、 上記ディスクアレイは、さらに、データの属性に基づく保証コードを特定する値を検査するホスト側検査手段を備え、 ホストからのデータの読み出し要求時には、 上記MPUは、上記ホスト入出力手段が参照する転送リストを作成し、この転送リスト中にデータの属性に基づく保証コードを特定する値を設定し、 上記ホスト入出力手段は、データの属性に基づく保証コードを特定する値を含む上記転送リストにしたがい、データを上記キャッシュから受信し、 上記保証コード保持手段は、データが上記キャッシュから受信される際にデータの属性に基づく保証コードを特定する値を獲得し、データの属性に基づく保証コードを特定する値を保持し、 上記ホスト側検査手段は 2. A disk array system according to claim 1, wherein said disk array further comprises a host-side inspection means for inspecting the value specifying the guarantee code based on the attributes of the data, a data read request from the host sometimes, the MPU creates the transfer list in which the host input means refers, sets the value specifying the guarantee code based on the attributes of the data during the transfer list, the host input means, data attributes accordance with the above transfer list that contains the value identifying the guarantee code based on, receiving data from the cache, the guarantee code holding means, the data specifying the guarantee code based on the attributes of the data as it is received from the cache the value to be acquired, holds a value that identifies the guarantee code based on the attributes of the data, is the host-side inspection means 上記保証コード保持手段に格納したデータの属性に基づく保証コードを特定する値と、上記キャッシュから読み出されるデータに付加しているデータの属性に基づく保証コードを特定する値を比較することを特徴とするディスクアレイシステム。 And characterized in that it compares the value that identifies the guarantee code based on the attributes of the data stored in the guarantee code holding means, the value specifying a guarantee code based on the attributes of the data added to data read from the cache disk array system.
  3. 【請求項3】請求項1記載のディスクアレイシステムにおいて、 上記ディスクアレイは、上記複数のディスク装置との入出力を行うディスク入出力手段と、データの属性に基づく保証コードを特定する値を検査するディスク側検査手段を備え、上記MPUは、上記ディスク入出力手段の転送リストを作成するとともに、 上記ホストからのデータの書込み要求時には、 上記MPUは、上記ディスク入出力手段が参照する転送リストを作成し、この転送リスト中にデータの属性に基づく保証コードを特定する値を設定し、 上記ディスク入出力手段は、データの属性に基づく保証コードを特定する値を含む上記転送リストにしたがい、 3. A disk array system according to claim 1, wherein said disk array, testing and disk input output assembly configured to input and output between the plurality of disk devices, a value specifying the guarantee code based on the attributes of the data comprising a disk-side inspection unit, the MPU may be, as well as create a transfer list of the disk output means, at the time of data write request from the host, the MPU is a transfer list that the disc output means references create, set the value that identifies the guarantee code based on the attributes of the data during the transfer list, the disc output means in accordance with the transfer list that contains a value specifying the guarantee code based on the attributes of the data,
    データを上記キャッシュから受信し、 上記保証コード保持手段は、データが上記キャッシュから受信される際にデータの属性に基づく保証コードを特定する値を獲得し、データの属性に基づく保証コードを特定する値を保持し、 上記ディスク側検査手段は、上記保証コード保持手段に格納したデータの属性に基づく保証コードを特定する値と、上記キャッシュから読み出されるデータに付加しているデータの属性に基づく保証コードを特定する値を比較し、 また、上記ホストからのデータの読み出し要求時には、 上記MPUは、上記ディスク入出力手段が参照する転送リストを作成し、この転送リスト中にデータの属性に基づく保証コードを特定する値を設定し、 上記ディスク入出力手段は、データの属性に基づく保証コードを特定する The data received from the cache, the guarantee code holding means, the data is acquired value specifying a guarantee code based on the attributes of the data as it is received from the cache to identify the guarantee code based on the attributes of the data holds a value, the disc-side inspection means, based on the attribute of the data, appended a value identifying the guarantee code based on the attributes of the data stored in the guarantee code holding means, the data read from the cache guarantee compare the values ​​for identifying the code, also at the time of data read request from the host, the MPU creates a transfer list that the disc output means refers, based on the attribute of the data during the transfer list warranty set the value for identifying the code, the disc output means identifies the guarantee code based on the attributes of the data を含む上記転送リストにしたがい、 In accordance with the transfer list, including,
    データを上記キャッシュに送信し、 上記保証コード保持手段は、データが上記キャッシュに送信される際にデータの属性に基づく保証コードを特定する値を獲得し、データの属性に基づく保証コードを特定する値を保持し、 上記ディスク側検査手段は、上記保証コード保持手段に格納したデータの属性に基づく保証コードを特定する値と、上記キャッシュに書き込まれるデータに付加しているデータの属性に基づく保証コードを特定する値を比較することを特徴とするディスクアレイシステム。 Send data to the cache, the guarantee code holding means, the data is acquired value specifying a guarantee code based on the attributes of the data as it is transmitted to the cache, identifying the guarantee code based on the attributes of the data holds a value, the disc-side inspection means, based on the attribute of the data, appended a value identifying the guarantee code based on the attributes of the data stored in the guarantee code holding means, the data written to the cache guarantee a disk array system characterized by comparing the value that identifies the code.
  4. 【請求項4】請求項1記載のディスクアレイシステムにおいて、 上記ディスクアレイは、データ書込み要求時にホスト転送パラメータを保持するホスト側保持手段を備えたことを特徴とするディスクアレイシステム。 4. A disk array system according to claim 1, wherein said disk array, the disk array system comprising the host-side holding means for holding the host transfer parameters when the data write request.
  5. 【請求項5】請求項1記載のディスクアレイシステムにおいて、 上記ディスクアレイは、データリード要求時にディスク転送パラメータを保持するディスク側保持手段を備えたことを特徴とするディスクアレイシステム。 5. A disk array system according to claim 1, wherein said disk array, the disk array system characterized by comprising a disk-side holding means for holding the disk transfer parameters during the data read request.
JP11159828A 1999-06-07 1999-06-07 Disk array system Pending JP2000347815A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11159828A JP2000347815A (en) 1999-06-07 1999-06-07 Disk array system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11159828A JP2000347815A (en) 1999-06-07 1999-06-07 Disk array system

Publications (1)

Publication Number Publication Date
JP2000347815A true JP2000347815A (en) 2000-12-15

Family

ID=15702149

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11159828A Pending JP2000347815A (en) 1999-06-07 1999-06-07 Disk array system

Country Status (1)

Country Link
JP (1) JP2000347815A (en)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2870614A1 (en) * 2004-05-24 2005-11-25 Hitachi Ltd A storage device has security function worm
US7039758B2 (en) 2003-03-25 2006-05-02 Hitachi, Ltd. Disk array system based on disks with a fixed-length unit of access
US7124258B2 (en) 2003-07-03 2006-10-17 Hitachi, Ltd. Storage system and storage device system
JP2007264917A (en) * 2006-03-28 2007-10-11 Hitachi Ltd Storage controller and control method of storage controller
US7293139B2 (en) 2004-07-28 2007-11-06 Hitachi, Ltd. Disk array system generating a data guarantee code on data transferring
JP2008009635A (en) * 2006-06-28 2008-01-17 Hitachi Ltd Storage system and its data protection method
EP2042980A2 (en) 2007-09-26 2009-04-01 Hitachi, Ltd. Storage sub-system and method for controlling the same
US7570447B2 (en) 2004-11-05 2009-08-04 Hitachi, Ltd. Storage control device and method for detecting write errors to storage media
EP2192480A1 (en) 2008-11-27 2010-06-02 Hitachi Ltd. Storage control apparatus
US7966471B2 (en) 2007-11-22 2011-06-21 Hitachi, Ltd. Storage controller and method for control of a data storage device
US7996712B2 (en) 2008-02-20 2011-08-09 Hitachi, Ltd. Data transfer controller, data consistency determination method and storage controller
EP2375329A2 (en) 2010-04-08 2011-10-12 Hitachi Ltd. Methods and apparatus for managing error codes for storage systems coupled with external storage systems
JP2012503828A (en) * 2008-09-26 2012-02-09 マイクロン テクノロジー, インク. Data streaming for the solid-state mass storage device
US8234542B2 (en) 2008-11-25 2012-07-31 Hitachi, Ltd. Storage controller and method for controlling input and output of data between a storage apparatus and a host computer
US8402210B2 (en) 2004-11-11 2013-03-19 Hitachi, Ltd. Disk array system
WO2016088219A1 (en) * 2014-12-03 2016-06-09 株式会社日立製作所 Storage system and data transfer method
US9760296B2 (en) 2013-05-20 2017-09-12 Hitachi, Ltd. Storage device and method for controlling storage device

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7039758B2 (en) 2003-03-25 2006-05-02 Hitachi, Ltd. Disk array system based on disks with a fixed-length unit of access
EP1510921A3 (en) * 2003-07-03 2008-06-11 Hitachi, Ltd. Remote copy storage system
US7124258B2 (en) 2003-07-03 2006-10-17 Hitachi, Ltd. Storage system and storage device system
US7421553B2 (en) 2003-07-03 2008-09-02 Hitachi, Ltd. Remote copy operation between different sort of storage system and storage device system
FR2870614A1 (en) * 2004-05-24 2005-11-25 Hitachi Ltd A storage device has security function worm
US7024522B2 (en) 2004-05-24 2006-04-04 Hitachi, Ltd. Worm guarantee storage device employing block write inhibition information
US7293139B2 (en) 2004-07-28 2007-11-06 Hitachi, Ltd. Disk array system generating a data guarantee code on data transferring
US7570447B2 (en) 2004-11-05 2009-08-04 Hitachi, Ltd. Storage control device and method for detecting write errors to storage media
US8402210B2 (en) 2004-11-11 2013-03-19 Hitachi, Ltd. Disk array system
US7865664B2 (en) 2006-03-28 2011-01-04 Hitachi, Ltd. Storage control device, and control method for storage control device
US7472250B2 (en) 2006-03-28 2008-12-30 Hitachi, Ltd. Storage control device, and control method for storage control device
JP2007264917A (en) * 2006-03-28 2007-10-11 Hitachi Ltd Storage controller and control method of storage controller
JP2008009635A (en) * 2006-06-28 2008-01-17 Hitachi Ltd Storage system and its data protection method
US8051367B2 (en) 2007-09-26 2011-11-01 Hitachi, Ltd. Storage sub-system and method for controlling the same
EP2042980A2 (en) 2007-09-26 2009-04-01 Hitachi, Ltd. Storage sub-system and method for controlling the same
US8209595B2 (en) 2007-09-26 2012-06-26 Hitachi, Ltd. Storage sub-system and method for controlling the same
US7966471B2 (en) 2007-11-22 2011-06-21 Hitachi, Ltd. Storage controller and method for control of a data storage device
US7996712B2 (en) 2008-02-20 2011-08-09 Hitachi, Ltd. Data transfer controller, data consistency determination method and storage controller
JP2012503828A (en) * 2008-09-26 2012-02-09 マイクロン テクノロジー, インク. Data streaming for the solid-state mass storage device
US8234542B2 (en) 2008-11-25 2012-07-31 Hitachi, Ltd. Storage controller and method for controlling input and output of data between a storage apparatus and a host computer
US8140749B2 (en) 2008-11-27 2012-03-20 Hitachi, Ltd. Storage control apparatus with memory backup device
EP2192480A1 (en) 2008-11-27 2010-06-02 Hitachi Ltd. Storage control apparatus
EP2375329A2 (en) 2010-04-08 2011-10-12 Hitachi Ltd. Methods and apparatus for managing error codes for storage systems coupled with external storage systems
US8407517B2 (en) 2010-04-08 2013-03-26 Hitachi, Ltd. Methods and apparatus for managing error codes for storage systems coupled with external storage systems
US8738963B2 (en) 2010-04-08 2014-05-27 Hitachi, Ltd. Methods and apparatus for managing error codes for storage systems coupled with external storage systems
US9361177B2 (en) 2010-04-08 2016-06-07 Hitachi, Ltd. Methods and apparatus for managing error codes for storage systems coupled with external storage systems
US9760296B2 (en) 2013-05-20 2017-09-12 Hitachi, Ltd. Storage device and method for controlling storage device
WO2016088219A1 (en) * 2014-12-03 2016-06-09 株式会社日立製作所 Storage system and data transfer method

Similar Documents

Publication Publication Date Title
US5720025A (en) Frequently-redundant array of independent disks
US6892268B2 (en) Heterogeneous computer system, heterogeneous input/output system and data back-up method for the systems
US8046548B1 (en) Maintaining data consistency in mirrored cluster storage systems using bitmap write-intent logging
KR100253753B1 (en) Method and apparatus for performing deferred transactions
US5881311A (en) Data storage subsystem with block based data management
EP0095033B1 (en) Set associative sector cache
EP2243086B1 (en) Computer command and response for determining the state of an i/o operation
EP0071719B1 (en) Data processing apparatus including a paging storage subsystem
CN1280743C (en) Data-transmitting method and system
JP3302688B2 (en) Logical track write scheduling system for a parallel disk drive array data storage subsystem
EP0104588B1 (en) Peripheral storage system having multiple data transfer rates
US6061750A (en) Failover system for a DASD storage controller reconfiguring a first processor, a bridge, a second host adaptor, and a second device adaptor upon a second processor failure
US5586294A (en) Method for increased performance from a memory stream buffer by eliminating read-modify-write streams from history buffer
EP0902370B1 (en) Dual storage controllers
US6505273B2 (en) Disk control device and method processing variable-block and fixed-block accesses from host devices
US5155835A (en) Multilevel, hierarchical, dynamically mapped data storage subsystem
US5313626A (en) Disk drive array with efficient background rebuilding
JP3944449B2 (en) Computer system, a magnetic disk device, and a disk cache control method
US7047355B2 (en) Updated data write method using journal log
US5506977A (en) Method and controller for minimizing reads during partial stripe write operations to a disk drive
CA1197021A (en) Roll mode for cached data storage
US5473761A (en) Controller for receiving transfer requests for noncontiguous sectors and reading those sectors as a continuous block by interspersing no operation requests between transfer requests
EP1646925B1 (en) Apparatus and method for direct memory access in a hub-based memory system
US4633387A (en) Load balancing in a multiunit system
US6134630A (en) High-performance bus architecture for disk array system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040109

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060725

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060919

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070403