JP2002149353A - Disk array controller and disk array control method - Google Patents

Disk array controller and disk array control method

Info

Publication number
JP2002149353A
JP2002149353A JP2000339901A JP2000339901A JP2002149353A JP 2002149353 A JP2002149353 A JP 2002149353A JP 2000339901 A JP2000339901 A JP 2000339901A JP 2000339901 A JP2000339901 A JP 2000339901A JP 2002149353 A JP2002149353 A JP 2002149353A
Authority
JP
Japan
Prior art keywords
data
cache memory
unit
disk
read
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
JP2000339901A
Other languages
Japanese (ja)
Inventor
Satoru Shimojima
覚 下嶋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2000339901A priority Critical patent/JP2002149353A/en
Publication of JP2002149353A publication Critical patent/JP2002149353A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

PROBLEM TO BE SOLVED: To easily restore the damage of data when data in a data cache memory part installed inside is damaged by a hardware fault in a disk array controller. SOLUTION: The disk array controller 100 is provided with a plurality of data cache memory parts 105-1 to 105-3 and a parity cache memory part 106. Host adapter parts 103-1 and 103-4 and disk adapter parts 104-1 to 104-4 divide writing data into a plurality of division data at the time of writing data, write division data into corresponding data cache memory parts 105-1 to 105-3 and write the logic parity of writing data into the parity cache memory part 106. At the time of reading data, data are checked and damaged data are restored in accordance with the logic parity which is read from the parity cache memory part 106.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、複数のディスク装
置にデータを分割して格納するディスクアレイの制御技
術に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to a disk array control technique for dividing and storing data in a plurality of disk devices.

【0002】[0002]

【従来の技術】従来から、入出力性能を向上させるた
め、複数の磁気ディスク装置から構成されるディスクア
レイにデータを分割して格納するということが行われて
いる。図9は、従来のこの種の技術を説明するためのブ
ロック図である。
2. Description of the Related Art Conventionally, in order to improve input / output performance, data is divided and stored in a disk array composed of a plurality of magnetic disk devices. FIG. 9 is a block diagram for explaining this kind of conventional technology.

【0003】図9に示すように従来のディスクアレイシ
ステムは、ディスクアレイ制御装置1と、複数のホスト
コンピュータ2-1,2-2 と、複数のディスクアレイ3-1,3-
2 とから構成されている。ディスクアレイ3-1,3-2 は、
それぞれ複数の磁気ディスク装置から構成される。
As shown in FIG. 9, a conventional disk array system comprises a disk array controller 1, a plurality of host computers 2-1 and 2-2, and a plurality of disk arrays 3-1 and 3-.
And 2. Disk arrays 3-1 and 3-2 are
Each is composed of a plurality of magnetic disk devices.

【0004】ディスクアレイ制御装置1は、ホストコン
ピュータ2-1 に対応するホストアダプタ部11-1,11-2
と、ホストコンピュータ2-2 に対応するホストアダプタ
部11-3,11-4 と、ディスクアレイ3-1 に対応するディス
クアダプタ部12-1,12-2 と、ディスクアレイ3-2 に対応
するディスクアダプタ部12-3,12-4 と、キャッシュメモ
リ部13-1,13-2 と、共用バス14とから構成されている。
[0004] The disk array controller 1 includes host adapter units 11-1 and 11-2 corresponding to the host computer 2-1.
And host adapter units 11-3 and 11-4 corresponding to the host computer 2-2, disk adapter units 12-1 and 12-2 corresponding to the disk array 3-1 and disk array 3-2. It comprises disk adapter units 12-3 and 12-4, cache memory units 13-1 and 13-2, and a shared bus 14.

【0005】ホストアダプタ部11-1は、ホストコンピュ
ータ2-1 から書き込み要求があった場合、共用バス14を
使用してキャッシュメモリ部13-1或いは13-2にデータを
書き込む。その後、ホストアダプタ部11-1は、ディスク
アダプタ部12-1〜12-4の内の1つ(例えば、ディスクア
ダプタ部12-4)に対して、データの書き込みを行ったこ
とを通知する。これにより、ディスクアダプタ部12-4
は、上記データをディスクアレイ3-2 に書き込む。
When a write request is issued from the host computer 2-1, the host adapter unit 11-1 uses the shared bus 14 to write data to the cache memory unit 13-1 or 13-2. Thereafter, the host adapter unit 11-1 notifies one of the disk adapter units 12-1 to 12-4 (for example, the disk adapter unit 12-4) that the data has been written. This allows the disk adapter section 12-4
Writes the above data to the disk array 3-2.

【0006】また、ホストアダプタ部11-1は、ホストコ
ンピュータ2-1 から読み出し要求があった場合、キャッ
シュメモリ部13-1或いは13-2に読み出し対象データが存
在するか否かを調べる。そして、存在する場合には、共
用バス14を介してキャッシュメモリ部13-1或いは13-2か
ら読み出し対象データを読み込み、要求元のホストコン
ピュータ2-1 へ送出する。これに対して、読み出し対象
データが存在しない場合は、ホストアダプタ部11-1は、
ディスクアダプタ部12-1〜12-4の内の1つ(例えば、デ
ィスクアダプタ部12-1)に対して読み出し対象データの
格納を要求する。これにより、ディスクアダプタ部12-1
は、ディスクアレイ3-1 から読み出し対象データを読み
込み、キャッシュメモリ部13-1或いは13-2に書き込む。
その後、ホストアダプタ部11-1は、キャッシュメモリ部
13-1或いは13-2から読み出し対象データを読み込み、要
求元のホストコンピュータ2-1 へ送出する。
[0006] When a read request is issued from the host computer 2-1, the host adapter unit 11-1 checks whether data to be read exists in the cache memory unit 13-1 or 13-2. If it exists, the data to be read is read from the cache memory unit 13-1 or 13-2 via the shared bus 14 and sent to the requesting host computer 2-1. On the other hand, when the data to be read does not exist, the host adapter unit 11-1
It requests one of the disk adapter units 12-1 to 12-4 (for example, the disk adapter unit 12-1) to store the data to be read. As a result, the disk adapter 12-1
Reads the data to be read from the disk array 3-1 and writes it to the cache memory unit 13-1 or 13-2.
After that, the host adapter unit 11-1
The data to be read is read from 13-1 or 13-2 and sent to the requesting host computer 2-1.

【0007】[0007]

【発明が解決しようとする課題】上述した従来の技術に
は、次のような問題点がある。
The above-mentioned prior art has the following problems.

【0008】第1の問題点は、単一のキャッシュメモリ
部にデータを書き込んでいるので、キャッシュメモリ部
に障害が発生した場合、データの復旧が極めて困難であ
るという点である。
The first problem is that since data is written in a single cache memory unit, it is extremely difficult to recover data when a failure occurs in the cache memory unit.

【0009】第2の問題点は、共用バスにより複数のア
ダプタ部とキャッシュメモリ部とを接続しているので、
或るアダプタ部がキャッシュメモリ部をアクセスしてい
る場合、他のアダプタ部がキャッシュメモリ部をアクセ
スすることができず、アクセス効率が悪いという点であ
る。
A second problem is that a plurality of adapter units and the cache memory unit are connected by a shared bus.
When one adapter unit accesses the cache memory unit, another adapter unit cannot access the cache memory unit, and the access efficiency is poor.

【0010】そこで、本発明の目的は、キャッシュメモ
リ部のハードウェア障害による破損データの復旧を容易
に行えるようにすると共に、キャッシュメモリ部に対す
るアクセス効率を向上させることにある。
SUMMARY OF THE INVENTION It is an object of the present invention to facilitate recovery of damaged data due to a hardware failure in a cache memory unit and to improve access efficiency to the cache memory unit.

【0011】[0011]

【課題を解決するための手段】本発明のディスクアレイ
制御装置は、上記目的を達成するため、複数台のデータ
用ディスク装置と1台のパリティ用ディスク装置とから
構成されるディスクアレイに接続されると共にホストコ
ンピュータに接続されるディスクアレイ制御装置に於い
て、前記各データ用ディスク装置毎のデータキャッシュ
メモリ部と、前記パリティ用ディスク装置に対応するパ
リティキャッシュメモリ部と、前記ホストコンピュータ
からの書き込み要求時、書き込みデータの論理パリティ
を前記パリティキャッシュメモリ部に書き込むと共に、
前記書き込みデータを前記各データキャッシュメモリ部
毎の分割データに分割して対応するデータキャッシュメ
モリ部に書き込み、前記ホストコンピュータからのデー
タの読み出し要求時、読み出し対象データが前記各デー
タキャッシュメモリ部に格納されている場合は、前記各
データキャッシュメモリ部に分割して格納されている前
記読み出し対象データを結合して前記ホストコンピュー
タへ送出し、格納されていない場合は、前記読み出し対
象データの格納要求を行い、該格納要求に応答して前記
読み出し対象データが前記各データキャッシュメモリ部
に格納された後、前記各データキャッシュメモリ部に分
割して格納されている前記読み出し対象データを結合し
て前記ホストコンピュータへ送出するホストアダプタ部
と、前記ホストアダプタ部が前記各データキャッシュメ
モリ部,前記パリティキャッシュメモリ部に分割デー
タ,論理パリティを書き込んだ時、該書き込まれた分割
データ,論理パリティを対応するデータ用ディスク装
置,パリティ用ディスク装置に格納し、前記ホストアダ
プタ部が格納要求を行った時、前記各データ用ディスク
装置から格納要求された前記読み出し対象データを読み
込み、該読み込んだデータの論理パリティを前記パリテ
ィキャッシュメモリ部に格納すると共に、該読み込んだ
データを前記各データキャッシュメモリ部毎の分割デー
タに分割して対応するデータキャッシュメモリ部に書き
込むディスクアダプタ部とを備えている。
In order to achieve the above object, a disk array control device according to the present invention is connected to a disk array composed of a plurality of data disk devices and one parity disk device. And a data cache memory unit for each data disk device, a parity cache memory unit corresponding to the parity disk device, and a write operation from the host computer. At the time of request, while writing the logical parity of the write data to the parity cache memory unit,
The write data is divided into divided data for each of the data cache memory units and written to the corresponding data cache memory unit. When a data read request is issued from the host computer, the data to be read is stored in each of the data cache memory units. If so, the read target data divided and stored in each of the data cache memory units is combined and transmitted to the host computer. And after the read target data is stored in each of the data cache memory units in response to the storage request, the read target data divided and stored in each of the data cache memory units is combined to form the host A host adapter for sending to a computer; When the partition unit writes the divided data and the logical parity in the data cache memory unit and the parity cache memory unit, the divided data and the logical parity are stored in the corresponding data disk device and parity disk device. When the host adapter unit issues a storage request, reads the data to be read requested to be stored from each of the data disk devices, and stores the logical parity of the read data in the parity cache memory unit; A disk adapter unit for dividing the read data into divided data for each data cache memory unit and writing the divided data to the corresponding data cache memory unit.

【0012】この構成によれば、データが複数のデータ
キャッシュメモリ部に分割して格納され、更に、その論
理パリティがパリティキャッシュメモリ部に格納されて
いるので、単一のデータキャッシュメモリ部のハードウ
ェア障害によりデータが破壊された場合であっても容易
に復旧することが可能になる。
According to this configuration, the data is divided and stored in the plurality of data cache memory units, and the logical parity is stored in the parity cache memory unit. Even if data is destroyed due to a hardware failure, it can be easily recovered.

【0013】また、本発明のディスクアレイ制御装置
は、データキャッシュメモリ部に対するアクセス効率を
向上させるため、前記各データキャッシュメモリ部が、
それぞれ、複数のメモリ部と、前記ホストアダプタ部及
び前記ディスクアダプタ部と、前記複数のメモリ部との
間に配置され、前記ホストアダプタ部と前記ディスクア
ダプタ部のアクセス先のメモリ部が異なる場合、同時に
アクセスを可能にするクロスバススイッチ部とを備えて
いる。
Further, in the disk array control device according to the present invention, in order to improve access efficiency to the data cache memory unit, each of the data cache memory units may
When each of the plurality of memory units, the host adapter unit and the disk adapter unit is disposed between the plurality of memory units, and the access destination memory units of the host adapter unit and the disk adapter unit are different, And a cross bus switch unit that enables simultaneous access.

【0014】この構成によれば、ホストアダプタ部とデ
ィスクアダプタ部とのアクセス先のメモリ部が異なる場
合、ホストアダプタ部とディスクアダプタ部で同時にア
クセスを行うことができるので、アクセス効率が向上す
る。
According to this configuration, when the access destination memory section of the host adapter section is different from the access destination memory section of the disk adapter section, the host adapter section and the disk adapter section can access simultaneously, thereby improving the access efficiency.

【0015】更に、本発明のディスクアレイ制御装置
は、メモリスループットを向上させるため、前記クロス
バススイッチ部は、前記ホストアダプタ部からのアクセ
ス要求を保持する複数のバッファと、前記ディスクアダ
プタ部からのアクセス要求を保持する複数のバッファと
を備えている。
Further, in the disk array control device of the present invention, in order to improve memory throughput, the cross bus switch unit includes a plurality of buffers for holding an access request from the host adapter unit, and a buffer from the disk adapter unit. A plurality of buffers for holding access requests.

【0016】この構成によれば、同一のホストアダプタ
部またはディスクアダプタ部からの複数のアクセス要求
を並行して処理することが可能になるので、メモリスル
ープットを向上させることができる。
According to this configuration, a plurality of access requests from the same host adapter unit or disk adapter unit can be processed in parallel, so that memory throughput can be improved.

【0017】[0017]

【発明の実施の形態】次に本発明の実施の形態について
図面を参照して詳細に説明する。
Embodiments of the present invention will now be described in detail with reference to the drawings.

【0018】[0018]

【構成の説明】図1に本発明の実施の形態の一例を示
す。本実施の形態に係るディスクアレイ制御装置100 に
は、複数のホストコンピュータ101-1,101-2 と、複数の
ディスクアレイ102-1,102-2 とが接続されている。ディ
スクアレイ102-1,102-2 は、それぞれ3個のデータ用磁
気ディスク装置D1〜D3と、1個のパリティ用磁気デ
ィスク装置Pとから構成されている。
FIG. 1 shows an embodiment of the present invention. A plurality of host computers 101-1 and 101-2 and a plurality of disk arrays 102-1 and 102-2 are connected to the disk array control device 100 according to the present embodiment. Each of the disk arrays 102-1 and 102-2 includes three data magnetic disk devices D1 to D3 and one parity magnetic disk device P.

【0019】ディスクアレイ制御装置100 は、ホストコ
ンピュータ101-1 に接続されたホストアダプタ部103-1,
103-2 と、ホストコンピュータ101-2 に接続されたホス
トアダプタ部103-3,103-4 と、ディスクアレイ102-1 に
接続されたディスクアダプタ部104-1,104-2 と、ディス
クアレイ102-2 に接続されたディスクアダプタ部104-3,
104-4 と、データ用磁気ディスク装置D1, D2, D3
に対応するデータキャッシュメモリ部105-1,105-2,105-
3 と、パリティ用磁気ディスク装置Pに対応するパリテ
ィキャッシュメモリ部106 とから構成されている。
The disk array controller 100 includes a host adapter section 103-1, connected to a host computer 101-1.
103-2, the host adapter units 103-3 and 103-4 connected to the host computer 101-2, the disk adapter units 104-1 and 104-2 connected to the disk array 102-1, and the disk array 102-2. Disk adapter part 104-3,
104-4 and data magnetic disk devices D1, D2, D3
Data cache memory units 105-1,105-2,105- corresponding to
3 and a parity cache memory unit 106 corresponding to the parity magnetic disk device P.

【0020】(データキャッシュメモリ部の構成)デー
タキャッシュメモリ部105-1 は、複数のメモリ部152-1
〜152-4 と、クロスバススイッチ部151-1,151-2 とを備
えている。
(Configuration of Data Cache Memory Unit) The data cache memory unit 105-1 includes a plurality of memory units 152-1.
To 152-4 and cross bus switch sections 151-1 and 151-2.

【0021】メモリ部152-1 〜152-4 は、図2に示すよ
うな、0番地〜An番地のアドレス空間を構成する。0
番地〜(A1−1)番地はディレクトリ領域21、A1番
地〜(A2−1)番地は制御情報領域22、A2番地〜
(A3−1)番地は書き込み領域23、A3番地〜An番
地は読み出し領域24として使用される。
The memory sections 152-1 to 152-4 form an address space of addresses 0 to An as shown in FIG. 0
Address to (A1-1) is the directory area 21, Address A1 to (A2-1) is the control information area 22, Address A2 to
The address (A3-1) is used as the write area 23, and the addresses A3 to An are used as the read area 24.

【0022】ディレクトリ領域21には、読み出し領域24
に格納されている各データのメモリ部上のアドレスとデ
ィスクアレイ(データ用磁気ディスク装置D1) 上のア
ドレスとの対応関係を示すディレクトリ情報が格納され
る。
The directory area 21 has a read area 24
Directory information indicating the correspondence between the address of each data stored in the memory unit on the memory unit and the address on the disk array (data magnetic disk device D1).

【0023】制御情報領域22は、各アダプタ部103-1 〜
103-4,104-1 〜104-4 毎の領域に分割されている。或る
アダプタ部が他のアダプタ部に対して動作を指示する場
合、上記或るアダプタ部は、上記他のアダプタ部に対応
する領域に、指示内容を示す制御情報を書き込む。
The control information area 22 includes the adapter sections 103-1 to 103-1.
It is divided into areas of 103-4, 104-1 to 104-4. When a certain adapter unit instructs an operation to another adapter unit, the certain adapter unit writes control information indicating the content of the instruction in an area corresponding to the other adapter unit.

【0024】書き込み領域23は、各ホストアダプタ部10
3-1 〜103-4 毎の領域に分割されており、各ホストアダ
プタ部103-1 〜103-4 は、ホストコンピュータ101-1,10
1-2からの書き込み要求に従ってデータを自アダプタ対
応の領域に格納する。
The write area 23 is provided for each host adapter unit 10
Each of the host adapter sections 103-1 to 103-4 is divided into host computers 101-1 to 10-4.
According to the write request from 1-2, the data is stored in the area corresponding to the local adapter.

【0025】読み出し領域24には、ディスクアレイ102-
1,102-2 のデータ用磁気ディスク装置D1に格納されて
いるデータの一部の写しが格納される。
In the read area 24, the disk array 102-
A copy of a part of the data stored in the data magnetic disk drive D1 of 1,102-2 is stored.

【0026】クロスバススイッチ部151-1 は、ホストア
ダプタ部103-1,103-2 、ディスクアダプタ部104-1,104-
2 のアクセス先が異なるメモリ部である場合、同時アク
セスを可能にする構成を有する。クロスバスバススイッ
チ部151-2 は、クロスバススイッチ部151-1 と同様の構
成を有する。
The cross bus switch section 151-1 includes a host adapter section 103-1, 103-2, a disk adapter section 104-1, 104-
When the access destination of 2 is a different memory section, it has a configuration that allows simultaneous access. The cross bus bus switch section 151-2 has the same configuration as the cross bus switch section 151-1.

【0027】図3はクロスバススイッチ部151-1 の構成
例を示すブロック図である。同図に示すように、クロス
バススイッチ部151-1 は、ホストアダプタ部103-1,103-
2 に接続される入出力切替部520-1,520-3 と、ディスク
アダプタ部104-1,104-2 に接続される入出力切替部520-
2,520-4 と、入出力切替部520-1 〜520-4 を介してホス
トアダプタ部, ディスクアダプタ部から加えられるアク
セス要求(データの書き込み要求の場合は、書き込みデ
ータ, 書き込みアドレス, 書き込みコマンドを示す情報
を含み、データの読み出し要求の場合は、読み出しアド
レス, 読み出しコマンド, アクセス要求元のアダプタ部
を示す情報を含む) を保持する複数のリクエスト入力バ
ッファから成るリクエスト入力バッファ群502-1 〜502-
4 と、メモリ部152-1 〜152-4 に接続される入出力切替
部521-1 〜521-4 と、メモリ部152-1 〜152-4 へ出力す
るアクセス要求を保持するリクエスト出力バッファ505-
1〜505-4 と、メモリ部152-1 〜152-4 からのリードデ
ータを一時的に保持する複数のリードデータ入力バッフ
ァから成るリードデータ入力バッファ群508-1 〜508-4
と、入出力切替部520-1 〜520-4 を介してホストアダプ
タ部,ディスクアダプタ部へリードデータを出力するリ
ードデータ出力バッファ511-1 〜511-4 とを備えてい
る。
FIG. 3 is a block diagram showing a configuration example of the cross bus switch section 151-1. As shown in the figure, the cross bus switch unit 151-1 includes the host adapter units 103-1, 103-
2 and the input / output switching units 520-520-3 connected to the disk adapter units 104-1 and 104-2.
2,520-4 and an access request from the host adapter unit or the disk adapter unit via the input / output switching units 520-1 to 520-4 (in the case of a data write request, it indicates the write data, write address, and write command. Request input buffer group 502-1 to 502- which includes a plurality of request input buffers for storing information, and in the case of a data read request, a read address, a read command, and information indicating an adapter unit of an access request source.
4, an input / output switching unit 521-1 to 521-4 connected to the memory units 152-1 to 152-4, and a request output buffer 505 for holding an access request to be output to the memory units 152-1 to 152-4. -
1 to 505-4 and a read data input buffer group 508-1 to 508-4 including a plurality of read data input buffers for temporarily holding read data from the memory units 152-1 to 152-4.
And read data output buffers 511-1 to 511-4 for outputting read data to the host adapter unit and the disk adapter unit via the input / output switching units 520-1 to 520-4.

【0028】更に、クロスバススイッチ部151-1 は、リ
クエストクロスバススイッチ部503と、リードデータク
ロスバススイッチ部509 と、リクエストクロスバス調停
/制御部504 と、リードデータクロスバス調停/制御部
510 とを備えている。
Further, the cross bus switch section 151-1 includes a request cross bus switch section 503, a read data cross bus switch section 509, a request cross bus arbitration / control section 504, and a read data cross bus arbitration / control section.
510.

【0029】リクエストクロスバススイッチ部503 は、
リクエスト入力バッファ群502-1 〜502-4 を構成する複
数のバッファそれぞれからリクエスト出力バッファ505-
1 〜505-4 それぞれへのアクセス経路を有する。このア
クセス経路は、アクセス元,アクセス先のバッファが異
なれば、同時に複数設定することが可能なものである。
図4はリクエストクロスバススイッチ部503 の構成例を
示すブロック図であり、リクエスト入力バッファ群502-
1 〜502-4 を構成する各リクエスト入力バッファから各
リクエスト出力バッファ505-1 〜505-4 への信号線群
と、リクエストクロスバス調停/制御部504 からの制御
信号に従って各リクエスト入力バッファからの信号線の
内の1つを選択するリクエスト出力バッファ505-1 〜50
5-4 毎のセレクタ522-1 〜522-4 とから構成されてい
る。
The request cross bus switch unit 503 includes:
The request output buffer 505- is output from each of the plurality of buffers constituting the request input buffer groups 502-1 to 502-4.
1 to 505-4 Each has an access route. If the access source and access destination buffers are different, a plurality of access routes can be set at the same time.
FIG. 4 is a block diagram showing a configuration example of the request cross bus switch unit 503.
1 to 502-4, the signal lines from each request input buffer to each of the request output buffers 505-1 to 505-4, and the control signals from the request cross bus arbitration / control unit 504. Request output buffer 505-1 to 50 to select one of the signal lines
Each of the selectors 52-1 to 522-4 is provided for every 5-4.

【0030】リードデータクロスバススイッチ部509
は、リードデータ入力バッファ群508-1 〜508-4 を構成
する複数のバッファそれぞれからリードデータ出力バッ
ファ511-1 〜511-4 それぞれへのアクセス経路を有す
る。このアクセス経路は、アクセス元,アクセス先のバ
ッファが異なれば、同時に複数設定可能なものである。
図5はリードデータクロスバススイッチ部509 の構成例
を示すブロック図であり、リードデータ入力バッファ群
508-1 〜508-4 を構成する各リードデータ入力バッファ
から各リードデータ出力バッファ511-1 〜511-4 への信
号線群と、リードデータクロスバス調停/制御部510 か
らの制御信号に従って各リードデータ入力バッファから
の信号線の内の1つを選択するリードデータ出力バッフ
ァ511-1 〜511-4 毎のセレクタ523-1 〜523-4 とから構
成されている。
Read data cross bus switch unit 509
Has an access path from each of the plurality of buffers constituting the read data input buffer groups 508-1 to 508-4 to each of the read data output buffers 511-1 to 511-4. If the access source and access destination buffers are different, a plurality of access routes can be set at the same time.
FIG. 5 is a block diagram showing an example of the configuration of the read data cross bus switch unit 509.
Each signal line group from each read data input buffer constituting each of 508-1 to 508-4 to each read data output buffer 511-1 to 511-4 and a control signal from the read data cross bus arbitration / control unit 510 It comprises selectors 523-1 to 523-4 for each of the read data output buffers 511-1 to 511-4 for selecting one of the signal lines from the read data input buffer.

【0031】リクエストクロスバス調停/制御部504
は、リクエスト入力バッファ群502-1〜502-4 を構成し
ている各リクエスト入力バッファからの接続要求(アク
セス先のメモリ部を示す情報を含む)に基づいて、同一
のメモリ部に対するアクセス要求を保持しているリクエ
スト入力バッファが複数存在するか否かを判断する機能
や、複数存在すると判断した場合、調停を行って上記複
数のリクエスト入力バッファの内の1つを選択する機能
や、リクエストクロスバススイッチ部503 を制御した上
記選択したリクエスト入力バッファと上記メモリ部に対
応するリクエスト出力バッファとを接続する機能を有す
る。
Request cross bus arbitration / control unit 504
Sends an access request to the same memory unit based on a connection request (including information indicating a memory unit to be accessed) from each request input buffer constituting the request input buffer groups 502-1 to 502-4. A function for determining whether or not a plurality of held request input buffers exist, a function for performing arbitration when it is determined that a plurality of request input buffers exist and selecting one of the plurality of request input buffers, a request cross It has a function of connecting the selected request input buffer controlling the bus switch unit 503 to the request output buffer corresponding to the memory unit.

【0032】リードデータクロスバス調停/制御部510
は、リクエスト出力バッファ505-1〜505-4 から加えら
れる、接続先のリードデータ出力バッファ511-i (アク
セス要求の要求元のアダプタ部と対応するリードデータ
出力バッファ), 接続元のリードデータ入力バッファ群
508-j 中のバッファを含む接続要求に基づいて、同一の
アダプタ部からのアクセス(読み出し) 要求を保持して
いるリクエスト出力バッファが複数存在するか否かを判
断する機能や、複数存在すると判断した場合、調停を行
って上記複数のリクエスト出力バッファからの接続要求
の内の1つを選択する機能や、選択した接続要求に従っ
てリードデータクロスバススイッチ部509 を制御して上
記接続要求に含まれている接続元のリードデータ入力バ
ッファ群508-j 中のバッファと接続先のリードデータ出
力バッファ511-i とを接続する機能を有する。
Read data cross bus arbitration / control section 510
Is the read data output buffer 511-i of the connection destination (read data output buffer corresponding to the adapter unit of the access request source) added from the request output buffers 505-1 to 505-4, and the read data input of the connection source Buffer group
Based on the connection request including the buffer in 508-j, a function to determine whether there are multiple request output buffers holding access (read) requests from the same adapter unit, In this case, arbitration is performed to select one of the connection requests from the plurality of request output buffers, or the read data cross bus switch unit 509 is controlled according to the selected connection request and included in the connection request. It has a function of connecting the buffer in the read data input buffer group 508-j of the connection source to the read data output buffer 511-i of the connection destination.

【0033】図6はメモリ部152-1の構成例を示したブ
ロック図であり、クロスバスバススイッチ部151-1,151-
2 に接続されるメモリコントローラ512 と、メモリコン
トローラ512 に接続される複数のメモリモジュール513
とから構成される。メモリコントローラ512 は、クロス
バススイッチ部151-1,151-2 からのアクセス要求に従っ
て、メモリモジュール513 へデータを書き込んだり、メ
モリモジュール513 からデータを読み出したりする機能
を有する。尚、他のデータキャッシュメモリ部105-2,10
5-3 及びパリティキャッシュメモリ部106 もデータキャ
ッシュメモリ部105-1 と同様の構成を有する。
FIG. 6 is a block diagram showing an example of the configuration of the memory section 152-1.
2 and a plurality of memory modules 513 connected to the memory controller 512.
It is composed of The memory controller 512 has a function of writing data to the memory module 513 and reading data from the memory module 513 in accordance with an access request from the cross bus switch units 151-1 and 151-2. Note that the other data cache memory units 105-2, 10
5-3 and the parity cache memory unit 106 have the same configuration as the data cache memory unit 105-1.

【0034】(ホストアダプタ部の構成)ホストアダプ
タ部103-1 は、ホストインタフェース部(ホストI/F
部)131と、マイクロプロセッサ132 と、パリティ生成/
チェック回路133 と、メモリアクセス制御部134 とを備
えている。
(Configuration of Host Adapter Unit) The host adapter unit 103-1 has a host interface unit (host I / F).
Unit) 131, microprocessor 132, parity generation /
A check circuit 133 and a memory access control unit 134 are provided.

【0035】ホストI/F部131 は、ホストコンピュー
タ101-1 との間のインタフェースを制御する機能を有す
る。
The host I / F section 131 has a function of controlling an interface with the host computer 101-1.

【0036】パリティ生成/チェック回路133 は、デー
タキャッシュメモリ部105-1 〜105-3 へのデータの書き
込み時、書き込みデータに対する論理パリティを生成す
る機能や、データキャッシュメモリ部105-1 〜105-3 か
らのデータの読み出し時、論理パリティに従ってエラー
チェックや破損データの復旧を行う機能を有する。
The parity generation / check circuit 133 has a function of generating a logical parity for the write data when data is written to the data cache memory units 105-1 to 105-3, and a data cache memory unit 105-1 to 105-. It has a function to check errors and recover damaged data according to logical parity when reading data from 3.

【0037】メモリアクセス制御部134 は、書き込みデ
ータや、制御情報を各データキャッシュメモリ部105-1
〜105-3 毎の分割データに分割し、分割データ,書き込
みアドレス,書き込みコマンドを含む各データキャッシ
ュメモリ部105-1 〜105-3 毎のアクセス要求を作成する
機能や、作成した各アクセス要求を対応するデータキャ
ッシュメモリ部105-1 〜105-3 へ送信する機能や、パリ
ティ生成/チェック回路133 が生成した論理パリティ,
書き込みアドレス,書き込みコマンドを含むアクセス要
求をパリティキャッシュメモリ部106 へ送信する機能
や、各データキャッシュメモリ部105-1 〜105-3 から読
み出した分割データを結合する機能等を有する。
The memory access control section 134 stores write data and control information in each data cache memory section 105-1.
Function to create an access request for each of the data cache memory units 105-1 to 105-3 including the divided data, the write address, and the write command, and a function for creating each access request. The function of transmitting data to the corresponding data cache memory units 105-1 to 105-3, the logical parity generated by the parity generation / check circuit 133,
It has a function of transmitting an access request including a write address and a write command to the parity cache memory unit 106, a function of combining divided data read from each of the data cache memory units 105-1 to 105-3, and the like.

【0038】マイクロプロセッサ132 は、メモリアクセ
ス制御部134 を使用して制御情報領域22に制御情報(書
き込み領域23中のデータをディスクアレイ102-1,102-2
に書き込むことを指示する制御情報や、ディスクアレイ
102-1,102-2 に格納されているデータを読み出し領域24
に格納することを指示する制御情報)を書き込む機能
や、制御情報の書き込み後に他のアダプタ部内のマイク
ロプロセッサに対して割り込み信号を発生する機能や、
他のアダプタ部内のマイクロプロセッサから割り込みが
かけられたとき、制御情報領域22中の自アダプタ部103-
1 に対応する領域に書き込まれている制御情報に従った
処理を行う機能を有する。尚、他のホストアダプタ部10
3-2 〜103-4 もホストアダプタ部103-1 と同様の構成を
有している。
The microprocessor 132 uses the memory access control section 134 to store control information (data in the write area 23) in the control information area 22 in the disk arrays 102-1 and 102-2.
Control information to instruct writing to the
Read data stored in 102-1, 102-2 and read area 24
A function of writing an interrupt signal to a microprocessor in another adapter unit after writing the control information,
When an interrupt is issued from a microprocessor in another adapter unit, the own adapter unit 103-
1 has a function of performing processing according to the control information written in the area corresponding to 1. The other host adapter unit 10
3-2 to 103-4 have the same configuration as the host adapter unit 103-1.

【0039】ディスクアダプタ部104-1 は、ディスクイ
ンタフェース部(ディスクI/F部)141 と、マイクロ
プロセッサ142 と、パリティ生成/チェック回路143
と、メモリアクセス制御部144 とを備えている。
The disk adapter section 104-1 includes a disk interface section (disk I / F section) 141, a microprocessor 142, and a parity generation / check circuit 143.
And a memory access control unit 144.

【0040】ディスクI/F部141 は、ディスクアレイ
102-1 との間のインタフェースを制御する機能を有す
る。
The disk I / F unit 141 includes a disk array
It has a function to control the interface with 102-1.

【0041】パリティ生成/チェック回路143 は、デー
タキャッシュメモリ部105-1 〜105-3 へのデータの書き
込み時、書き込みデータに対する論理パリティを生成す
る機能や、データキャッシュメモリ部105-1 〜105-3 か
らのデータの読み出し時、論理パリティに従ってエラー
チェックや破損データの復旧を行う機能を有する。
The parity generation / check circuit 143 has a function of generating a logical parity for the write data at the time of writing data to the data cache memory units 105-1 to 105-3, and a data cache memory unit 105-1 to 105-. It has a function to check errors and recover damaged data according to logical parity when reading data from 3.

【0042】メモリアクセス制御部144 は、書き込みデ
ータや、制御情報を各データキャッシュメモリ部105-1
〜105-3 毎の分割データに分割し、分割データ,書き込
みアドレス,書き込みコマンドを含む各データキャッシ
ュメモリ部105-1 〜105-3 毎のアクセス要求を作成する
機能や、作成した各アクセス要求を対応するデータキャ
ッシュメモリ部105-1 〜105-3 へ送信する機能や、パリ
ティ生成/チェック回路143 が生成した論理パリティ,
書き込みアドレス, 書き込みコマンドを含むアクセス要
求をパリティキャッシュメモリ部106 へ送信する機能を
有する。
The memory access control section 144 stores write data and control information in each data cache memory section 105-1.
Function to create an access request for each of the data cache memory units 105-1 to 105-3 including the divided data, the write address, and the write command, and a function for creating each access request. The function of transmitting to the corresponding data cache memory units 105-1 to 105-3, the logical parity generated by the parity generation / check circuit 143,
It has a function of transmitting an access request including a write address and a write command to the parity cache memory unit 106.

【0043】マイクロプロセッサ142 は、他のアダプタ
部内のマイクロプロセッサから割り込みがかけられた場
合、制御情報領域22中の自アダプタ部104-1 に対応する
領域に書き込まれている制御情報に従った処理を行う機
能や、他のアダプタ部内のマイクロプロセッサに対して
割り込み信号を発生する機能を有する。
When an interrupt is issued from a microprocessor in another adapter section, the microprocessor 142 performs processing according to the control information written in the area corresponding to the own adapter section 104-1 in the control information area 22. And a function of generating an interrupt signal to a microprocessor in another adapter unit.

【0044】[0044]

【動作の説明】(データ書き込み時の動作)先ず、ホス
トコンピュータ101-1 がディスクアレイ102-1 にデータ
を書き込む時の動作を説明する。
[Explanation of operation] (Operation at the time of data writing) First, the operation at the time when the host computer 101-1 writes data to the disk array 102-1 will be described.

【0045】ホストコンピュータ101-1 は、データの書
き込み時、書き込みデータと、書き込みコマンドと、書
き込みアドレスとを含む書き込み要求を、自コンピュー
タに接続されているホストアダプタ部103-1,103-2 の内
の1つ(例えば、ホストアダプタ部103-1 とする)に出
力する(図7,A1)。尚、この時、書き込みアドレス
は、書き込み領域23中の、ホストアダプタ部103-1 に割
り当てられている領域のアドレスとする。
When writing data, the host computer 101-1 sends a write request including write data, a write command, and a write address to one of the host adapter units 103-1 and 103-2 connected to the host computer. One (for example, the host adapter unit 103-1) is output (FIG. 7, A1). At this time, the write address is an address of an area allocated to the host adapter unit 103-1 in the write area 23.

【0046】ホストアダプタ部103-1 内のパリティ生成
/チェック回路133 は、ホストコンピュータ101-1 から
渡された書き込み要求中の書き込みデータに対する論理
パリティを生成し、メモリアクセス制御部134 に渡す
(A2)。これにより、メモリアクセス制御部134 は、
上記書き込みデータを各データキャッシュメモリ部105-
1 〜105-3 毎の分割データに分割し、分割データ, 書き
込みアドレス, 書き込みコマンドを含む各データキャッ
シュメモリ部105-1 〜105-3 毎のアクセス要求を作成し
て対応するデータキャッシュメモリ部105-1 〜105-3 へ
送信すると共に、パリティ生成/チェック回路133 から
渡された論理パリティ, 書き込みコマンド, 書き込みア
ドレスを含むアクセス要求をパリティキャッシュメモリ
部106 へ送信する(A3)。
The parity generation / check circuit 133 in the host adapter unit 103-1 generates a logical parity for the write data in the write request passed from the host computer 101-1 and passes it to the memory access control unit 134 (A2). ). Accordingly, the memory access control unit 134
The above write data is stored in each data cache memory unit 105-
1 to 105-3, and creates an access request for each of the data cache memory units 105-1 to 105-3 including the divided data, the write address, and the write command, and creates a corresponding data cache memory unit 105. -1 to 105-3 and an access request including the logical parity, the write command, and the write address passed from the parity generation / check circuit 133 to the parity cache memory unit 106 (A3).

【0047】各データキャッシュメモリ部105-1 〜105-
3 及びパリティキャッシュメモリ部106 は、ホストアダ
プタ部103-1 から送られてきたアクセス要求に従った書
き込み処理を行う(A4)。
Each of the data cache memory units 105-1 to 105-
3 and the parity cache memory unit 106 perform write processing according to the access request sent from the host adapter unit 103-1 (A4).

【0048】このステップA4の処理を、データキャッ
シュメモリ部105-1 に於ける書き込み処理を例に挙げて
詳細に説明する。
The process of step A4 will be described in detail by taking a write process in the data cache memory unit 105-1 as an example.

【0049】ホストアダプタ部103-1 からの分割デー
タ, 書き込みアドレス, 書き込みコマンドを含むアクセ
ス要求は、クロスバススイッチ部151-1 内の入出力切替
部520-1 を介してリクエスト入力バッファ群502-1 に供
給され、その内の1つのリクエスト入力バッファ(以下
の説明では、このリクエスト入力バッファをリクエスト
入力バッファRIと記す) に保持される。アクセス要求
を保持したリクエスト入力バッファRIは、書き込みア
ドレスに基づいてアクセス先のメモリ部(メモリ部152-
1 とする)を求め、このアクセス先のメモリ部152-1 を
接続先にした接続要求をリクエストクロスバス調停/制
御部504 へ出力する。尚、リクエスト入力バッファ群50
2-1 は、複数のリクエスト入力バッファから構成される
ものであるので、ホストアダプタ部103-1 からの次のア
クセス要求を空いているリクエスト入力バッファに保持
することができる。これらリクエスト入力バッファ群50
2-1に保持されたアクセス要求は、入力順に関わらず、
リクエストクロスバス調停/制御部504 に対し接続要求
を出すことができる。
The access request including the divided data, the write address, and the write command from the host adapter unit 103-1 is transmitted to the request input buffer group 502- via the input / output switching unit 520-1 in the cross bus switch unit 151-1. 1 and held in one of the request input buffers (the request input buffer is referred to as a request input buffer RI in the following description). The request input buffer RI holding the access request is stored in an access destination memory unit (memory unit 152-1) based on the write address.
1), and outputs a connection request to the request cross bus arbitration / control unit 504 with the access destination memory unit 152-1 as a connection destination. The request input buffer group 50
Since 2-1 is composed of a plurality of request input buffers, the next access request from the host adapter unit 103-1 can be held in an empty request input buffer. Request input buffer group 50
The access request held in 2-1 is not related to the input order,
A connection request can be issued to the request cross bus arbitration / control unit 504.

【0050】リクエストクロスバス調停/制御部504
は、上記リクエスト入力バッファRIから接続要求が加
えられると、他のリクエスト入力バッファからもメモリ
部152-1 を接続先とした接続要求が加えられているか否
かを調べ、加えられていない場合は、リクエストクロス
バススイッチ部503 を制御して上記リクエスト入力バッ
ファRIとメモリ部152-1 に対応するリクエスト出力バ
ッファ505-1 とを接続し、上記リクエスト入力バッファ
RIに保持されているアクセス要求をリクエスト出力バ
ッファ505-1 にセットする。これに対して、メモリ部15
2-1 を接続先とする接続要求が複数加えられている場合
は、調停を行う。調停の結果、リクエスト入力バッファ
RIに接続権を与えることを決定すると、リクエストク
ロスバス調停/制御部504 は、リクエストクロスバスス
イッチ部503 を制御して、リクエスト入力バッファRI
とリクエスト出力バッファ505-1 とを接続し、リクエス
ト入力バッファRIに保持されているアクセス要求をリ
クエスト出力バッファ505-1にセットする。
Request cross bus arbitration / control unit 504
When a connection request is added from the request input buffer RI, it is checked whether or not a connection request with the memory unit 152-1 as a connection destination is also added from another request input buffer. By controlling the request cross bus switch unit 503, the request input buffer RI is connected to the request output buffer 505-1 corresponding to the memory unit 152-1 to request the access request held in the request input buffer RI. Set in output buffer 505-1. On the other hand, the memory unit 15
If there are multiple connection requests with 2-1 as the connection destination, arbitration is performed. As a result of the arbitration, if it is determined that the connection right is given to the request input buffer RI, the request cross bus arbitration / control unit 504 controls the request cross bus switch unit 503 to request the request input buffer RI.
Is connected to the request output buffer 505-1, and the access request held in the request input buffer RI is set in the request output buffer 505-1.

【0051】リクエスト出力バッファ505-1 にセットさ
れたアクセス要求は、入出力切替部521-1 を介してメモ
リ部152-1 内のメモリコントローラ512 に加えられる
(図6参照)。これにより、メモリコントローラ512
は、上記アクセス要求に含まれている分割データを、上
記アクセス要求に含まれている書き込みアドレスに従っ
て、メモリモジュール513 に書き込む。以上が、ステッ
プA4に於いてデータキャッシュメモリ部105-1 で行わ
れる処理の詳細である。尚、他のデータキャッシュメモ
リ部105-2,105-3 及びパリティキャッシュメモリ部106
でも同様の書き込み処理が行われる。
The access request set in the request output buffer 505-1 is applied to the memory controller 512 in the memory section 152-1 via the input / output switching section 521-1 (see FIG. 6). This allows the memory controller 512
Writes the divided data included in the access request into the memory module 513 according to the write address included in the access request. The above is the details of the processing performed in the data cache memory unit 105-1 in step A4. The other data cache memory units 105-2 and 105-3 and the parity cache memory unit 106
However, a similar writing process is performed.

【0052】データキャッシュメモリ部105-1 〜105-3,
パリティキャッシュメモリ部106 への書き込み処理が終
了すると、データキャッシュメモリ部105-1 〜105-3 へ
書き込んだデータを最終的な書き込み先であるディスク
アレイ102-1 に書き込むための以下の処理が行われる。
The data cache memory units 105-1 to 105-3,
When the write processing to the parity cache memory unit 106 is completed, the following processing for writing the data written to the data cache memory units 105-1 to 105-3 to the disk array 102-1 as the final write destination is performed. Will be

【0053】先ず、マイクロプロセッサ132 が、以下の
情報を含む制御情報をメモリアクセス制御部134 に渡す
(A5)。
First, the microprocessor 132 passes control information including the following information to the memory access control unit 134 (A5).

【0054】・ステップA4で書き込んだデータのデー
タキャッシュメモリ部105-1 〜105-3上のアドレスAa ・ディスクアレイ102-1 上の書き込みアドレスAb(こ
の書き込みアドレスは、例えば、書き込み要求時にホス
トコンピュータ101-1 から通知されているとする) ・データキャッシュメモリ部105-1 〜105-3 のアドレス
Aaに格納されているデータを、ディスクアレイ102-1
上のアドレスAbに書き込むことを指示する指示情報 ・制御情報の書き込みアドレスAc(制御情報領域22中
の、ディスクアレイ102-1 と対応するディスクアダプタ
部104-1 に割り当てられている領域のアドレス)
The address Aa of the data written in step A4 on the data cache memory units 105-1 to 105-3. The write address Ab on the disk array 102-1. The data stored in the address Aa of the data cache memory units 105-1 to 105-3 is transferred to the disk array 102-1.
Instruction information for instructing writing to the above address Ab ・ Write address Ac of control information (address of area allocated to disk adapter unit 104-1 corresponding to disk array 102-1 in control information area 22)

【0055】メモリアクセス制御部134 は、上記制御情
報が渡されると、アドレスAa,アドレスAb,指示情
報を、各データキャッシュメモリ部105-1 〜105-3 毎の
分割データに分割し、更に、分割データと、書き込みコ
マンドと、書き込みアドレスAcとを含む各データキャ
ッシュメモリ105-1 〜105-3 毎のアクセス要求を作成し
て対応するデータキャッシュメモリ部105-1 〜105-3 へ
送信する。これにより、データキャッシュメモリ部105-
1 〜105-3 のアドレスAcに制御情報が書き込まれる。
When the control information is passed, the memory access control unit 134 divides the address Aa, the address Ab, and the instruction information into divided data for each of the data cache memory units 105-1 to 105-3. An access request for each of the data cache memories 105-1 to 105-3 including the divided data, the write command, and the write address Ac is created and transmitted to the corresponding data cache memory units 105-1 to 105-3. Thereby, the data cache memory unit 105-
Control information is written to addresses Ac of 1 to 105-3.

【0056】その後、マイクロプロセッサ132 は、図示
を省略した割り込み信号線を介してディスクアダプタ部
104-1 内のマイクロプロセッサ142 に割り込みをかける
(A6)。
Thereafter, the microprocessor 132 sends the disk adapter unit via an interrupt signal line (not shown).
The microprocessor 142 in 104-1 is interrupted (A6).

【0057】これにより、マイクロプロセッサ142 は、
メモリアクセス制御部144 に対してデータキャッシュメ
モリ部105-1 〜105-3 の制御情報領域22中の、自ディス
クアダプタ部104-1 に割り当てられているアドレスAc
に格納されている制御情報を読み込むことを指示する
(A7)。この指示に従って、メモリアクセス制御部14
4 は、各データキャッシュメモリ部105-1 〜105-3 に分
割して格納されている制御情報を読み込み、結合する
(A8)。
As a result, the microprocessor 142
The address Ac assigned to the own disk adapter unit 104-1 in the control information area 22 of the data cache memory units 105-1 to 105-3 for the memory access control unit 144.
(A7). According to this instruction, the memory access control unit 14
4 reads the control information divided and stored in each of the data cache memory units 105-1 to 105-3 and combines them (A8).

【0058】マイクロプロセッサ142 は、結合された制
御情報に基づいて、メモリアクセス制御部144 に対し
て、データキャッシュメモリ部105-1 〜105-3 ,パリテ
ィキャッシュメモリ部106 のアドレスAaからデータ,
論理パリティを読み込むことを指示する(A9)。
The microprocessor 142 sends the data from the address Aa of the data cache memory units 105-1 to 105-3 and the parity cache memory unit 106 to the memory access control unit 144 based on the combined control information.
It instructs to read the logical parity (A9).

【0059】この指示に応答して、メモリアクセス制御
部144 は、各データキャッシュメモリ部105-1 〜105-3
のアドレスAaに分割して格納されているデータを読み
込んで結合すると共に、パリティキャッシュメモリ部10
6 のアドレスAaから論理パリティを読み込む(A1
0)。その後、パリティ生成/チェック回路143 が、論
理パリティに従ったデータチェック(破損があった場合
は、その復旧も行う)を行う(A11)。パリティ生成
/チェック回路143 によるチェックが完了すると、チェ
ックが完了したデータと書き込みアドレスAbをディス
クアレイ102-1 へ送信する(A12)。これにより、デ
ータ用磁気ディスク装置D1〜D3,パリティ用磁気デ
ィスク装置PのアドレスAbにデータ,論理パリティが
書き込まれる。
In response to this instruction, the memory access control unit 144 controls the data cache memory units 105-1 to 105-3.
The data read and stored at the address Aa of the parity cache memory unit 10 are read and combined.
The logical parity is read from the address Aa of No. 6 (A1
0). Thereafter, the parity generation / check circuit 143 performs a data check according to the logical parity (if there is a damage, also recovers it) (A11). When the check by the parity generation / check circuit 143 is completed, the data that has been checked and the write address Ab are transmitted to the disk array 102-1 (A12). As a result, data and logical parity are written to the addresses Ab of the data magnetic disk devices D1 to D3 and the parity magnetic disk device P.

【0060】(データ読み出し時の動作)次に、ホスト
コンピュータ101-1 がディスクアレイ102-1 からデータ
を読み出す時の動作を説明する。
(Operation at the time of reading data) Next, the operation at the time when the host computer 101-1 reads data from the disk array 102-1 will be described.

【0061】ホストコンピュータ101-1 は、データの読
み出し時、読み出しアドレスAd(ディスクアレイ102-
1 上のアドレス), 読み出しコマンドを含む読み出し要
求をホストアダプタ部103-1,103-2 の内の一方のホスト
アダプタ部(この例では、ホストアダプタ部103-1 とす
る)に出力する(図8,B1)。
At the time of reading data, the host computer 101-1 reads the read address Ad (the disk array 102-
1, a read request including a read command is output to one of the host adapter units 103-1 and 103-2 (in this example, the host adapter unit 103-1) (FIG. 8, FIG. B1).

【0062】ホストアダプタ部101-1 内のマイクロプロ
セッサ132 は、読み出し要求が加えられると、上記読み
出しアドレスAdによって示される読み出し対象データ
がデータキャッシュメモリ部105-1 〜105-3 に格納され
ているか否かを、データキャッシュメモリ部105-1 〜10
5-3 のディレクトリ領域21に格納されているディレクト
リ情報に基づいて判断する(B2)。
When the read request is added, the microprocessor 132 in the host adapter unit 101-1 determines whether the data to be read indicated by the read address Ad is stored in the data cache memory units 105-1 to 105-3. Whether or not the data cache memory units 105-1 to 10
The determination is made based on the directory information stored in the directory area 21 of 5-3 (B2).

【0063】そして、読み出し対象データがデータキャ
ッシュメモリ部105-1 〜105-3 上に存在すると判断した
場合は(B2がYES)、メモリアクセス制御部134 を
介して各データキャッシュメモリ部105-1 〜105-3 及び
パリティキャッシュメモリ部106 へ、読み出しアドレス
Aca, 読み出しコマンド, アクセス要求元がホストアダ
プタ部103-1 であることを示す要求元情報を含むアクセ
ス要求を送信する(B3)。尚、上記読み出しアドレス
Acaは、ディスクアレイ102-1 上の読み出しアドレスA
dと対応するデータキャッシュメモリ部105-1 〜105-3
上のアドレスであり、ディレクトリ情報により求めるこ
とができる。
When it is determined that the data to be read exists in the data cache memory units 105-1 to 105-3 (B2: YES), each data cache memory unit 105-1 is transmitted via the memory access control unit 134. The access request including the read address Aca, the read command, and the request source information indicating that the access request source is the host adapter unit 103-1 is transmitted to the parity cache memory unit 106 and the read address Aca (B3). The read address Aca is the read address A on the disk array 102-1.
Data cache memory units 105-1 to 105-3 corresponding to d
The above address, which can be obtained from directory information.

【0064】各データキャッシュメモリ部105-1 〜105-
3 及びパリティキャッシュメモリ部106 は、ホストコン
ピュータ101-1 から送られてきたアクセス要求に従った
データの読み出し処理を行う(B4)。
Each of the data cache memory units 105-1 to 105-
3 and the parity cache memory unit 106 perform data read processing in accordance with the access request sent from the host computer 101-1 (B4).

【0065】このステップB4の処理を、データキャッ
シュメモリ部105-1 に於ける読み出し処理を例に挙げて
詳細に説明する。
The process of step B4 will be described in detail by taking a read process in the data cache memory unit 105-1 as an example.

【0066】ホストアダプタ部103-1 からの読み出しア
ドレスAca,読み出しコマンド及び要求元情報を含むア
クセス要求は、クロスバススイッチ部151-1 内の入出力
切替部520-1 を介してリクエスト入力バッファ群502-1
に供給され、その内の1つのリクエスト入力バッファR
Iに保持される。アクセス要求を保持したリクエスト入
力バッファRIは、読み出しアドレスAcaに基づいてア
クセス先のメモリ部(メモリ部152-1 とする)を求め、
このアクセス先のメモリ部152-1 を接続先にした接続要
求をリクエストクロスバス調停/制御部504 へ出力す
る。
The access request including the read address Aca, the read command, and the request source information from the host adapter section 103-1 is transmitted to the request input buffer group via the input / output switching section 520-1 in the cross bus switch section 151-1. 502-1
And one of the request input buffers R
I is held. The request input buffer RI holding the access request obtains a memory unit to be accessed (referred to as a memory unit 152-1) based on the read address Aca.
The connection request with the access destination memory unit 152-1 as a connection destination is output to the request cross bus arbitration / control unit 504.

【0067】これにより、リクエストクロスバス調停/
制御部504 は、調停を行い、リクエスト入力バッファR
Iにメモリ部152-1 への接続権を与えることができる場
合は、リードクロスバススイッチ部503 を制御してリク
エスト入力バッファRIとリクエスト出力バッファ505-
1 とを接続し、上記リクエスト入力バッファRIに保持
されているアクセス要求をリクエスト出力バッファ505-
1 にセットする。
Thus, the request cross bus arbitration /
The control unit 504 performs arbitration, and the request input buffer R
If I can be given the right to connect to the memory unit 152-1, it controls the read cross bus switch unit 503 to control the request input buffer RI and the request output buffer 505-
1 and connects the access request held in the request input buffer RI to the request output buffer 505-.
Set to 1.

【0068】リクエスト出力バッファ505-1 は、上記ア
クセス要求がセットされると、それに含まれている読み
出しアドレスAcaのデータ(読み出し対象データ)がリ
ードデータ入力バッファ群508-1 中に存在するか否かを
調べる。後述するように、リードデータ入力バッファ群
508-1 中の各バッファには、データとそのデータのアド
レスとが格納されるので、アドレスAcaのデータが存在
するか否かに基づいて読み出し対象データが格納されて
いるか否かを判断することができる。
When the access request is set, the request output buffer 505-1 determines whether or not the data of the read address Aca (data to be read) included in the access request exists in the read data input buffer group 508-1. Find out what. As described later, read data input buffer group
Since each buffer in 508-1 stores data and the address of the data, it is necessary to determine whether data to be read is stored based on whether or not data at address Aca exists. Can be.

【0069】そして、存在する場合には、読み出し対象
データを保持しているリードデータ入力バッファ群508-
1 中のリードデータ入力バッファDIを接続元、上記ア
クセス要求の要求元のホストアダプタ部103-1 に対応す
るリードデータ出力バッファ511-1 を接続先とした接続
要求をリードデータクロスバス調停/制御部510 に出力
する。これにより、リードデータクロスバス調停/制御
部510 は、調停を行い、リードデータ入力バッファDI
にリードデータ出力バッファ511-1 への接続権を与える
ことができる場合は、リードデータクロスバススイッチ
部509 を制御し、リードデータ入力バッファDIとリー
ドデータ出力バッファ511-1 とを接続する。これによ
り、読み出し対象データが、リードデータ入力バッファ
DIからリードデータ出力バッファ511-1,入出力切替部
520-1 を介してホストアダプタ部103-1 へ送られる。
If there is, the read data input buffer group 508-
The connection request with the read data input buffer DI in 1 as the connection source and the read data output buffer 511-1 corresponding to the host adapter unit 103-1 as the request source of the access request as the connection destination is read data cross bus arbitration / control. Output to section 510. As a result, the read data cross bus arbitration / control unit 510 performs arbitration and sets the read data input buffer DI.
When the right to connect to the read data output buffer 511-1 can be given to the read data output buffer 511-1, the read data cross buffer switch unit 509 is controlled to connect the read data input buffer DI and the read data output buffer 511-1. As a result, the data to be read is changed from the read data input buffer DI to the read data output buffer
It is sent to the host adapter unit 103-1 via 520-1.

【0070】これに対して、読み出し対象データがリー
ドデータ入力バッファ群508-1 中に存在しない場合は、
リクエスト出力バッファ505-1 は、メモリ部152-1 内の
メモリコントローラ512 に対して、読み出しアドレスA
ca, 読み出しコマンドを含むアクセス要求を出力する。
これにより、メモリコントローラ512 は、メモリモジュ
ール513 の該当するアドレスAcaから読み出し対象デー
タを読み出し、リードデータ入力バッファ群508-1 中の
何れかのバッファに読み出し対象データとアドレスAca
とを格納する。更に、リクエスト出力バッファ505-1
は、要求元のホストアダプタ部103-1 にリトライを促
す。リトライを促されたホストアダプタ部103-1 が再度
アクセス要求を出力すると、読み出し対象データが、リ
ードデータ入力バッファ群508-1 中の何れかのバッファ
に格納されているので、前述した処理と同様の処理が行
われ、読み出し対象データが、リードデータクロスバス
スイッチ部509,リードデータ出力バッファ511-1,入出力
切替部520-1 を介してホストアダプタ部103-1 へ送られ
る。以上が、ステップB4に於いてデータキャッシュメ
モリ部105-1 で行われる処理の詳細である。尚、他のデ
ータキャッシュメモリ部105-2,105-3 及びパリティキャ
ッシュメモリ部106 でも同様の読み出し処理が行われ
る。
On the other hand, if the data to be read does not exist in the read data input buffer group 508-1,
The request output buffer 505-1 sends a read address A to the memory controller 512 in the memory unit 152-1.
ca, output access request including read command.
As a result, the memory controller 512 reads the data to be read from the corresponding address Aca of the memory module 513, and stores the data to be read and the address Aca in one of the buffers in the read data input buffer group 508-1.
And are stored. Further, the request output buffer 505-1
Prompts the requesting host adapter unit 103-1 to retry. When the host adapter unit 103-1 that has been prompted to retry outputs the access request again, the data to be read is stored in one of the buffers in the read data input buffer group 508-1. Is performed, and the data to be read is sent to the host adapter unit 103-1 via the read data cross bus switch unit 509, the read data output buffer 511-1, and the input / output switching unit 520-1. The above is the details of the processing performed in the data cache memory unit 105-1 in step B4. The same read processing is performed in the other data cache memory units 105-2 and 105-3 and the parity cache memory unit 106.

【0071】ホストアダプタ部103-1 内のメモリアクセ
ス制御部134 は、各データキャッシュメモリ部105-1 〜
105-3 からの読み出し対象データを結合し、パリティ生
成/チェック回路133 は、上記読み出し対象データをパ
リティキャッシュメモリ部106 からの論理パリティに従
ってチェック(破損データの場合は復旧を行う)する
(B5,B6)。チェック後の読み出し対象データは、
ホストI/F部131 を介して読み出し要求元のホストコ
ンピュータ101-1 へ送られる(B7)。
The memory access control section 134 in the host adapter section 103-1 includes the respective data cache memory sections 105-1 to 105-1.
The data to be read from 105-3 are combined, and the parity generation / check circuit 133 checks the data to be read according to the logical parity from the parity cache memory unit 106 (recovers the damaged data if it is corrupted) (B5). B6). The data to be read after the check is
The read request is sent to the host computer 101-1 via the host I / F unit 131 (B7).

【0072】データキャッシュメモリ部105-1 〜105-3
上に読み出し対象データが存在する場合(B2がYES
の場合)は、上述した処理が行われるが、存在しない場
合(B2がNO)は、次のような処理が行われる。
Data cache memory units 105-1 to 105-3
When the data to be read exists above (YES in B2)
In the case of (2), the above-described processing is performed. However, when the processing does not exist (B2 is NO), the following processing is performed.

【0073】ステップB2に於いて、読み出し対象デー
タがデータキャッシュメモリ部105-1 〜105-3 上に存在
しないと判断すると、ホストアダプタ部103-1 内のマイ
クロプロセッサ132 は、以下の情報を含む制御情報をメ
モリアクセス制御部134 に渡す(B8)。
If it is determined in step B2 that the data to be read does not exist in the data cache memory units 105-1 to 105-3, the microprocessor 132 in the host adapter unit 103-1 includes the following information. The control information is passed to the memory access control unit 134 (B8).

【0074】・読み出し対象データのディスクアダプタ
部102-1 上のアドレスAd ・上記アドレスAdのデータをデータキャッシュメモリ
部105-1 〜105-3 に書き込むことを指示する指示情報 ・制御情報の書き込みアドレスAc(制御情報領域22中
の、ディスクアレイ102-1 と対応するディスクアダプタ
部104-1 に割り当てられている領域のアドレス)
The address Ad of the data to be read on the disk adapter unit 102-1. The instruction information for instructing the data of the address Ad to be written to the data cache memory units 105-1 to 105-3. The write address of the control information. Ac (the address of the area allocated to the disk adapter unit 104-1 corresponding to the disk array 102-1 in the control information area 22)

【0075】メモリアクセス制御部134 は、上記制御情
報が渡されると、アドレスAd,指示情報を、各データ
キャッシュメモリ部105-1 〜105-3 毎の分割データに分
割し、更に、分割データと、書き込みコマンドと、書き
込みアドレスAcとを含む各データキャッシュメモリ10
5-1 〜105-3 毎のアクセス要求を作成して対応するデー
タキャッシュメモリ部105-1 〜105-3 へ送信する。これ
により、データキャッシュメモリ部105-1 〜105-3 のア
ドレスAcに制御情報が書き込まれる。
When the above-mentioned control information is passed, the memory access control unit 134 divides the address Ad and the instruction information into divided data for each of the data cache memory units 105-1 to 105-3. , A write command, and a write address Ac.
An access request for each of 5-1 to 105-3 is created and transmitted to the corresponding data cache memory units 105-1 to 105-3. As a result, the control information is written to the address Ac of the data cache memory units 105-1 to 105-3.

【0076】その後、ホストアダプタ部103-1 内のマイ
クロプロセッサ132 は、図示を省略した割り込み信号線
を介してディスクアダプタ部104-1 内のマイクロプロセ
ッサ142 に割り込みをかける(B9)。
Thereafter, the microprocessor 132 in the host adapter unit 103-1 interrupts the microprocessor 142 in the disk adapter unit 104-1 via an interrupt signal line (not shown) (B9).

【0077】これにより、ディスクアダプタ部104-1 内
のマイクロプロセッサ142 は、メモリアクセス制御部14
4 に対してデータキャッシュメモリ部105-1 〜105-3 の
制御情報領域22中の、自ディスクアダプタ部104-1 に割
り当てられているアドレスAcに分割して格納されてい
る制御情報を読み込むことを指示する(B10)。この
指示に従って、メモリアクセス制御部144 は、各データ
キャッシュメモリ部105-1 〜105-3 に分割して格納され
ている制御情報を読み込み、結合する(B11)。
As a result, the microprocessor 142 in the disk adapter unit 104-1 can operate the memory access control unit 14
4 for reading control information stored in the control information area 22 of the data cache memory units 105-1 to 105-3 divided into addresses Ac assigned to the own disk adapter unit 104-1. (B10). In accordance with this instruction, the memory access control unit 144 reads and combines the control information divided and stored in each of the data cache memory units 105-1 to 105-3 (B11).

【0078】マイクロプロセッサ142 は、結合された制
御情報に基づいて、ディスクアレイ102-1 のアドレスA
dから読み出し対象データを読み込む(B12)。パリ
ティ生成/チェック回路143 は、上記読み出し対象デー
タに対する論理パリティを生成する(B13)。メモリ
アクセス制御部144 は、上記読み出し対象データを各デ
ータキャッシュメモリ部105-1 〜105-3 毎の分割データ
に分割し、分割データ, 書き込みアドレス, 書き込みコ
マンドを含む各データキャッシュメモリ部105-1 〜105-
3 毎のアクセス要求を作成して対応するデータキャッシ
ュメモリ部105-1 〜105-3 へ送信すると共に、パリティ
生成/チェック回路143 が生成した論理パリティ, 書き
込みコマンド, 書き込みアドレスを含むアクセス要求を
パリティキャッシュメモリ部106 へ送信する(B1
4)。なお、書き込みアドレスは、LRU法等によりマ
イクロプロセッサ142 が決定したアドレスとすることが
できる。各データキャッシュメモリ部105-1 〜105-3,パ
リティキャッシュメモリ部106は、ディスクアダプタ部1
04-1 からのアクセス要求に従って、読み出し対象デー
タの書き込み処理を行う(B15)。その後、ディスク
アダプタ部104-1 内のマイクロプロセッサ142 は、各デ
ータキャッシュメモリ部105-1 〜105-3 ,パリティキャ
ッシュメモリ部106 に格納されているディレクトリ情報
を更新する(B16)。その後、前述したステップB3
〜B7の処理が行われる。
The microprocessor 142 determines the address A of the disk array 102-1 based on the combined control information.
Data to be read is read from d (B12). The parity generation / check circuit 143 generates a logical parity for the data to be read (B13). The memory access control unit 144 divides the data to be read into divided data for each of the data cache memory units 105-1 to 105-3, and stores the divided data, the write address, and the write command in each of the data cache memory units 105-1. ~ 105-
3 and sends the access request to the corresponding data cache memory units 105-1 to 105-3. The access request including the logical parity, the write command, and the write address generated by the parity generation / check circuit 143 is used as a parity. Transmission to the cache memory unit 106 (B1
4). Note that the write address can be an address determined by the microprocessor 142 by the LRU method or the like. The data cache memory units 105-1 to 105-3 and the parity cache memory unit 106
In accordance with the access request from 04-1, write processing of read target data is performed (B15). Thereafter, the microprocessor 142 in the disk adapter unit 104-1 updates the directory information stored in each of the data cache memory units 105-1 to 105-3 and the parity cache memory unit 106 (B16). Then, the above-described step B3
To B7.

【0079】[0079]

【発明の効果】以上説明したように、本発明は、データ
が複数のデータキャッシュメモリ部に分割して格納さ
れ、更に、その論理パリティがパリティキャッシュメモ
リ部に格納されているので、ハードウェア故障によるデ
ータ破損を容易に復旧でき、ディスクアレイ制御装置の
信頼性の向上を図ることができる。
As described above, according to the present invention, since data is stored by being divided into a plurality of data cache memories and the logical parity thereof is stored in the parity cache memory, a hardware failure occurs. Can easily recover from data corruption, and the reliability of the disk array control device can be improved.

【0080】また、本発明は、クロスバススイッチ部を
備えており、アクセス先のメモリ部が異なるアクセス要
求を並行して処理することができるので、アクセス効率
を向上させることができる。
Further, according to the present invention, the cross bus switch section is provided, and the access destination memory section can process different access requests in parallel, so that the access efficiency can be improved.

【0081】更に、本発明は、クロスバススイッチ部
が、複数のアクセス要求を保持する複数のバッファを備
えており、同一のホストアダプタ部またはディスクアダ
プタ部からの複数のアクセス要求を同時に複数受け付け
ることが可能になるので、メモリスループットを向上さ
せることができる。
Further, according to the present invention, the cross bus switch unit includes a plurality of buffers for holding a plurality of access requests, and simultaneously receives a plurality of access requests from the same host adapter unit or disk adapter unit. Therefore, memory throughput can be improved.

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

【図1】本発明の実施の形態の一例を示すブロック図で
ある。
FIG. 1 is a block diagram illustrating an example of an embodiment of the present invention.

【図2】データキャッシュメモリ部105-1 〜105-3,パリ
ティキャッシュメモリ部106 のアドレス空間を示す図で
ある。
FIG. 2 is a diagram showing an address space of a data cache memory units 105-1 to 105-3 and a parity cache memory unit 106.

【図3】クロスバススイッチ部151-1 の構成例を示す図
である。
FIG. 3 is a diagram illustrating a configuration example of a cross bus switch unit 151-1.

【図4】リクエストクロスバススイッチ部503 の構成例
を示すブロック図である。
FIG. 4 is a block diagram illustrating a configuration example of a request cross bus switch unit 503;

【図5】リードデータクロスバススイッチ部509 の構成
例を示すブロック図である。
FIG. 5 is a block diagram showing a configuration example of a read data cross bus switch unit 509;

【図6】メモリ部152-1 の構成例を示すブロック図であ
る。
FIG. 6 is a block diagram illustrating a configuration example of a memory unit 152-1.

【図7】データ書き込み時の処理例を示す流れ図であ
る。
FIG. 7 is a flowchart showing a processing example at the time of data writing.

【図8】データ読み出し時の処理例を示す流れ図であ
る。
FIG. 8 is a flowchart showing a processing example at the time of data reading.

【図9】従来例のブロック図である。FIG. 9 is a block diagram of a conventional example.

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

100 …ディスクアレイ制御装置 101-1,101-2 …ホストコンピュータ 102-1,102-2 …ディスクアレイ D1〜D3…データ用磁気ディスク装置 P1…パリティ用磁気ディスク装置 103-1 〜103-4 …ホストアダプタ部 131 …ホストI/F部 132 …マイクロプロセッサ 133 …パリティ生成/チェック回路 134 …メモリアクセス制御部 104-1 〜104-4 …ディスクアダプタ部 141 …ディスクI/F部 142 …マイクロプロセッサ 143 …パリティ生成/チェック回路 144 …メモリアクセス制御部 105-1 〜105-3 …データキャッシュメモリ部 151-1,151-2 …クロスバススイッチ部 502-1 〜502-4 …リクエスト入力バッファ群 503 …リクエストクロスバススイッチ部 504 …リクエストクロスバス調停/制御部 505-1 〜505-4 …リクエスト出力バッファ 508-1 〜508-4 …リードデータ入力バッファ群 509 …リードデータクロスバススイッチ部 510 …リードデータクロスバス調停/制御部 511-1 〜511-4 …リードデータ出力バッファ 152-1 〜152-4 …メモリ部 512 …メモリコントローラ 513 …メモリモジュール 522-1 〜522-4, 523-1〜523-4 …セレクタ 106 …パリティキャッシュメモリ部 1…ディスクアレイ制御装置 11-1〜11-4…ホストアダプタ部 12-1〜12-4…ディスクアダプタ部 13-1,13-2…キャッシュメモリ部 14…共用バス 2−1,2−2…ホストコンピュータ 3−1,3−2…ディスクアレイ 100 Disk array control device 101-1, 101-2 Host computer 102-1, 102-2 Disk array D1 to D3 Data magnetic disk device P1 Parity magnetic disk device 103-1 to 103-4 Host adapter unit 131 ... Host I / F section 132 ... Microprocessor 133 ... Parity generation / check circuit 134 ... Memory access control section 104-1 to 104-4 ... Disk adapter section 141 ... Disk I / F section 142 ... Microprocessor 143 ... Parity generation / Check circuit 144 Memory access control unit 105-1 to 105-3 Data cache memory unit 151-1, 151-2 Cross bus switch unit 502-1 to 502-4 Request input buffer group 503 Request cross bus switch unit 504 … Request cross bus arbitration / control unit 505-1 to 505-4… Request output buffer 508-1 to 508-4… Read data input buffer group 509… Re Read data cross bus arbitration / control unit 511-1 to 511-4 ... read data output buffer 152-1 to 152-4 ... memory unit 512 ... memory controller 513 ... memory module 522-1 522522-4, 523-1〜523-4 セ レ ク タ Selector 106 パ リ テ ィ Parity cache memory unit 1 デ ィ ス ク Disk array controller 11-1〜11-4 ホ ス ト Host adapter unit 12-1〜12-4 デ ィ ス ク Disk adapter unit 13- 1, 13-2: Cache memory unit 14: Shared bus 2-1, 2-2: Host computer 3-1, 3-2: Disk array

フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 12/08 541 G06F 12/08 541Z 557 557 12/16 320 12/16 320L Continued on the front page (51) Int.Cl. 7 Identification symbol FI Theme coat II (reference) G06F 12/08 541 G06F 12/08 541Z 557 557 12/16 320 12/16 320L

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 複数台のデータ用ディスク装置と1台の
パリティ用ディスク装置とから構成されるディスクアレ
イに接続されると共にホストコンピュータに接続される
ディスクアレイ制御装置に於いて、 前記各データ用ディスク装置毎のデータキャッシュメモ
リ部と、 前記パリティ用ディスク装置に対応するパリティキャッ
シュメモリ部と、 前記ホストコンピュータからの書き込み要求時、書き込
みデータの論理パリティを前記パリティキャッシュメモ
リ部に書き込むと共に、前記書き込みデータを前記各デ
ータキャッシュメモリ部毎の分割データに分割して対応
するデータキャッシュメモリ部に書き込み、前記ホスト
コンピュータからのデータの読み出し要求時、読み出し
対象データが前記各データキャッシュメモリ部に格納さ
れている場合は、前記各データキャッシュメモリ部に分
割して格納されている前記読み出し対象データを結合し
て前記ホストコンピュータへ送出し、格納されていない
場合は、前記読み出し対象データの格納要求を行い、該
格納要求に応答して前記読み出し対象データが前記各デ
ータキャッシュメモリ部に格納された後、前記各データ
キャッシュメモリ部に分割して格納されている前記読み
出し対象データを結合して前記ホストコンピュータへ送
出するホストアダプタ部と、 前記ホストアダプタ部が前記各データキャッシュメモリ
部,前記パリティキャッシュメモリ部に分割データ,論
理パリティを書き込んだ時、該書き込まれた分割デー
タ,論理パリティを対応するデータ用ディスク装置,パ
リティ用ディスク装置に格納し、前記ホストアダプタ部
が格納要求を行った時、前記各データ用ディスク装置か
ら格納要求された前記読み出し対象データを読み込み、
該読み込んだデータの論理パリティを前記パリティキャ
ッシュメモリ部に格納すると共に、該読み込んだデータ
を前記各データキャッシュメモリ部毎の分割データに分
割して対応するデータキャッシュメモリ部に書き込むデ
ィスクアダプタ部とを備えたことを特徴とするディスク
アレイ制御装置。
1. A disk array control device connected to a disk array comprising a plurality of data disk devices and one parity disk device and connected to a host computer, wherein each of the data A data cache memory unit for each disk device, a parity cache memory unit corresponding to the parity disk device, and when a write request is issued from the host computer, a logical parity of write data is written to the parity cache memory unit and the write operation is performed. The data is divided into divided data for each of the data cache memory units and written into the corresponding data cache memory unit. When a data read request is issued from the host computer, data to be read is stored in each of the data cache memory units. Where you are In this case, the data to be read which is divided and stored in each of the data cache memory units is combined and sent to the host computer, and if not stored, a storage request for the data to be read is made. After the read target data is stored in each of the data cache memories in response to the storage request, the read target data divided and stored in each of the data cache memories is combined and transmitted to the host computer. A host adapter unit that writes the divided data and the logical parity into the data cache memory unit and the parity cache memory unit when the host adapter unit writes the divided data and the logical parity into the data disk device. , Stored in a parity disk device, and When a storage request is made, the read target data requested to be stored from each of the data disk devices is read,
A disk adapter unit for storing the logical parity of the read data in the parity cache memory unit, dividing the read data into divided data for each of the data cache memory units, and writing the divided data to the corresponding data cache memory unit. A disk array control device, comprising:
【請求項2】 請求項1記載のディスクアレイ制御装置
に於いて、 前記ホストアダプタ部及び前記ディスクアダプタ部は、
前記データキャッシュメモリ部からのデータの読み出し
時、前記パリティキャッシュメモリ部に格納されている
論理パリティによりデータチェック及び破損データの復
旧を行う構成を有することを特徴とするディスクアレイ
制御装置。
2. The disk array control device according to claim 1, wherein the host adapter unit and the disk adapter unit include:
When reading data from the data cache memory unit, the disk array control device has a configuration in which data check and recovery of damaged data are performed using logical parity stored in the parity cache memory unit.
【請求項3】 請求項2記載のディスクアレイ制御装置
に於いて、 前記各データキャッシュメモリ部が、それぞれ、 複数のメモリ部と、 前記ホストアダプタ部及び前記ディスクアダプタ部と、
前記複数のメモリ部との間に配置され、前記ホストアダ
プタ部と前記ディスクアダプタ部のアクセス先のメモリ
部が異なる場合、同時にアクセスを可能にするクロスバ
ススイッチ部とを備えたことを特徴とするディスクアレ
イ制御装置。
3. The disk array control device according to claim 2, wherein each of the data cache memory units includes a plurality of memory units, the host adapter unit and the disk adapter unit,
A cross bus switch unit that is arranged between the plurality of memory units and that enables simultaneous access when the host adapter unit and the disk adapter unit access different memory units. Disk array controller.
【請求項4】 請求項3記載のディスクアレイ制御装置
に於いて、 前記クロスバススイッチ部は、 前記ホストアダプタ部から前記各メモリ部へのアクセス
経路と、 該アクセス経路とは別の前記ディスクアダプタ部から前
記各メモリ部へのアクセス経路と、 前記ホストアダプタ部からのアクセス要求と前記ディス
クアダプタ部からのアクセス要求を調停する調停制御部
を備えたことを特徴とするディスクアレイ制御装置。
4. The disk array controller according to claim 3, wherein the cross bus switch unit includes an access path from the host adapter unit to each of the memory units, and the disk adapter different from the access path. A disk array control device comprising: an access path from a unit to each of the memory units; and an arbitration control unit that arbitrates between an access request from the host adapter unit and an access request from the disk adapter unit.
【請求項5】 請求項4記載のディスクアレイ制御装置
に於いて、 前記クロスバススイッチ部は、 前記ホストアダプタ部からのアクセス要求を保持する複
数のバッファと、 前記ディスクアダプタ部からのアクセス要求を保持する
複数のバッファとを備えたことを特徴とするディスクア
レイ制御装置。
5. The disk array control device according to claim 4, wherein said cross bus switch unit includes a plurality of buffers for holding access requests from said host adapter unit and an access request from said disk adapter unit. A disk array control device comprising: a plurality of buffers to be held.
【請求項6】 複数台のデータ用ディスク装置と1台の
パリティ用ディスク装置とから構成されるディスクアレ
イに接続されると共にホストコンピュータに接続され、
且つ前記データ用ディスク装置毎のデータキャッシュメ
モリ部と、前記パリティ用ディスク装置に対応するパリ
ティキャッシュメモリ部と、ホストアダプタ部と、ディ
スクアダプタ部とを備えたディスクアレイ制御装置に於
けるディスクアレイ制御方法あって、 前記ホストコンピュータからの書き込み要求時、 前記ホストアダプタ部が、書き込みデータの論理パリテ
ィを前記パリティキャッシュメモリ部に書き込むと共
に、前記書き込みデータを前記データキャッシュメモリ
部毎の分割データに分割して対応するデータキャッシュ
メモリ部に書き込み、 前記ディスクアダプタ部が、前記ホストアダプタ部によ
って前記各データキャッシュメモリ部,前記パリティキ
ャッシュメモリ部に書き込まれた分割データ,論理パリ
ティを対応するデータ用ディスク装置,パリティ用ディ
スク装置に格納し、 前記ホストコンピュータからの読み出し要求時、 前記ホストアダプタ部が、読み出し対象データが前記各
データキャッシュメモリ部に格納されている場合は、前
記各データキャッシュメモリ部に分割して格納されてい
る読み出し対象データを結合して前記ホストコンピュー
タへ送出し、格納されていない場合は、前記読み出し対
象データの格納要求を行い、 前記ディスクアダプタ部が、前記格納要求に応答して、
格納要求された読み出し対象データを前記各データ用デ
ィスク装置から読み込み、該読み込んだデータの論理パ
リティを前記パリティキャッシュメモリ部に格納すると
共に、該読み込んだデータを前記各データキャッシュメ
モリ部毎の分割データに分割して対応するデータキャッ
シュメモリ部に格納し、 前記ホストアダプタ部が、前記ディスクアダプタ部が前
記各データキャッシュメモリ部に分割して格納した前記
読み出し対象データを結合して前記ホストコンピュータ
へ送信することを特徴とするディスクアレイ制御方法。
6. A disk array comprising a plurality of data disk units and one parity disk unit and connected to a host computer,
Disk array control in a disk array control device including a data cache memory unit for each data disk device, a parity cache memory unit corresponding to the parity disk device, a host adapter unit, and a disk adapter unit In a method, at the time of a write request from the host computer, the host adapter unit writes logical parity of write data into the parity cache memory unit, and divides the write data into divided data for each data cache memory unit. The disk adapter unit writes the divided data and logical parity written in the data cache memory unit and the parity cache memory unit by the host adapter unit. The host adapter unit stores the data to be read in the data cache memory unit when the data to be read is stored in the data cache memory unit. The data to be read which is divided and stored in the unit is combined and sent to the host computer. If the data to be read is not stored, a request for storing the data to be read is made. pls respond,
The data to be read which is requested to be stored is read from each of the data disk devices, the logical parity of the read data is stored in the parity cache memory unit, and the read data is divided into divided data for each of the data cache memory units. The host adapter unit combines the read target data divided and stored in the data cache memory units by the disk adapter unit and transmits the read target data to the host computer. A disk array control method.
【請求項7】 請求項6記載のディスクアレイ制御方法
に於いて、 前記ホストアダプタ部及び前記ディスクアダプタ部は、
前記データキャッシュメモリ部からのデータの読み出し
時、前記パリティキャッシュメモリ部に格納されている
論理パリティによりデータチェック及び破損データの復
旧を行うことを特徴とするディスクアレイ制御方法。
7. The disk array control method according to claim 6, wherein the host adapter unit and the disk adapter unit
A disk array control method, wherein when reading data from the data cache memory unit, data check and recovery of damaged data are performed using logical parity stored in the parity cache memory unit.
JP2000339901A 2000-11-08 2000-11-08 Disk array controller and disk array control method Pending JP2002149353A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000339901A JP2002149353A (en) 2000-11-08 2000-11-08 Disk array controller and disk array control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000339901A JP2002149353A (en) 2000-11-08 2000-11-08 Disk array controller and disk array control method

Publications (1)

Publication Number Publication Date
JP2002149353A true JP2002149353A (en) 2002-05-24

Family

ID=18814901

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000339901A Pending JP2002149353A (en) 2000-11-08 2000-11-08 Disk array controller and disk array control method

Country Status (1)

Country Link
JP (1) JP2002149353A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009252201A (en) * 2008-04-11 2009-10-29 Nec Corp Disk array device
JP2014534529A (en) * 2011-10-31 2014-12-18 カビウム・インコーポレーテッド Multi-core interconnection in network processors

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009252201A (en) * 2008-04-11 2009-10-29 Nec Corp Disk array device
JP2014534529A (en) * 2011-10-31 2014-12-18 カビウム・インコーポレーテッド Multi-core interconnection in network processors
JP2018045700A (en) * 2011-10-31 2018-03-22 カビウム・インコーポレーテッド Multi-core interconnect in network processor
KR20190137948A (en) * 2011-10-31 2019-12-11 캐비엄, 엘엘씨 Multi-core interconnect in a network processor
KR102409024B1 (en) * 2011-10-31 2022-06-14 마벨 아시아 피티이 엘티디. Multi-core interconnect in a network processor

Similar Documents

Publication Publication Date Title
US5708771A (en) Fault tolerant controller system and method
US5487160A (en) Concurrent image backup for disk storage system
US5720027A (en) Redundant disc computer having targeted data broadcast
US7620843B2 (en) Rebuilding a storage system
US5701313A (en) Method and apparatus for removing soft errors from a memory
US6044207A (en) Enhanced dual port I/O bus bridge
US8583992B2 (en) SAS-based semiconductor storage device memory disk unit
JPH0720994A (en) Storage system
JPH06180623A (en) Multiplex-configuration data- path structure for disk array controller
KR100560552B1 (en) Data storage system
JP2006227964A (en) Storage system, processing method and program
WO1996018141A1 (en) Computer system
JP2912299B2 (en) Disk array controller
US5787463A (en) Disk array system including a dual-ported staging memory and concurrent redundancy calculation capability
US6954825B2 (en) Disk subsystem
WO2013080299A1 (en) Data management device, data copy method, and program
US11340826B2 (en) Systems and methods for strong write consistency when replicating data
US6513098B2 (en) Method and apparatus for scalable error correction code generation performance
JP2002149353A (en) Disk array controller and disk array control method
JP2006268403A (en) Data storage system and equivalence control method for log data of storage control unit
USRE36448E (en) Memory controller with parity generator for an I/O control unit
EP0729098A2 (en) Information storage controller
JPH08171463A (en) Data read method in disk array device, and disk array device
JP2001356882A (en) Data reading/writing control method and disk array device and recording medium with data reading/writing control program stored
JP2853624B2 (en) Data storage system