JPH0635802A - Disk controller with plural caches - Google Patents

Disk controller with plural caches

Info

Publication number
JPH0635802A
JPH0635802A JP4193651A JP19365192A JPH0635802A JP H0635802 A JPH0635802 A JP H0635802A JP 4193651 A JP4193651 A JP 4193651A JP 19365192 A JP19365192 A JP 19365192A JP H0635802 A JPH0635802 A JP H0635802A
Authority
JP
Japan
Prior art keywords
cache
data
caches
disk
disk drive
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
JP4193651A
Other languages
Japanese (ja)
Inventor
Masaharu Akatsu
雅晴 赤津
Tomohiro Murata
智洋 村田
Kenzo Kurihara
謙三 栗原
Yoshiro Shirayanagi
芳朗 白柳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP4193651A priority Critical patent/JPH0635802A/en
Publication of JPH0635802A publication Critical patent/JPH0635802A/en
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

PURPOSE:To improve the total performance of a disk controller containing plural caches by dividing a disk-drive into groups, assigning the cache memories to these groups of drives to store the data, and thereby carrying on the application of the caches even though some caches have faults. CONSTITUTION:The directories 231-233 are set against the cache memories 241-243, respectively. The disk drives 31-33 connected to those directories and memories are divided into groups in number equal to the cache memories that can be normally used. Then, the cache memories which store the data are assigned to each group of disk drives. Meanwhile a service processor is connected to those directories, caches and drives to instruct the requests for isolation and addition of some cache memories. Thus, the use of the caches to which the isolating requests are given from a maintenance engineer, is inhibited via service processor. These inhibited caches, however, are available again with the subsequent adding requests. Therefore, the deterioration of performance and the limitation of functions can be suppressed even in a maintenance mode for a disk controller containing plural caches.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、キャッシュ付きディス
ク制御装置に係り、特に、キャッシュの障害時、保守時
まで含めて考えたトータルの性能,信頼性(パフォーマ
ビリティ)を向上させるのに好適な制御装置、並びに、
制御方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a disk control device with a cache, and in particular, it is suitable for improving the total performance and reliability (performance) considered in the case of cache failure and maintenance. Control device, and
Regarding control method.

【0002】[0002]

【従来の技術】ディスク制御装置内にキャッシュメモリ
を設け、頻繁にアクセスされるデータをキャッシュに格
納しておき、それらのデータへのアクセス要求に対して
は、ディスクドライブをアクセスせずに、キャッシュか
らデータを読みだすことによって、アクセスタイムを低
減することが従来から行なわれている。また、キャッシ
ュメモリは、以下のようにバッファメモリとしても活用
されている。例えば、ディスクドライブからデータを読
みだす際に、一度キャッシュにデータを転送して、後で
上位ホストコンピュータへ非同期にデータを転送する。
あるいは、二台のディスクドライブの内容を完全に一致
させる目的で、マスタードライブのデータを予備ドライ
ブへコピーする際に、マスタードライブのデータをキャ
ッシュに転送して、それを予備ドライブへ書き込む。
2. Description of the Related Art A cache memory is provided in a disk controller so that frequently accessed data is stored in the cache, and a cache drive is not accessed in response to an access request to access the data. It has been conventionally practiced to reduce the access time by reading the data from the. The cache memory is also used as a buffer memory as described below. For example, when reading data from the disk drive, the data is once transferred to the cache and then transferred asynchronously to the host computer.
Alternatively, in order to completely match the contents of the two disk drives, when the data of the master drive is copied to the spare drive, the data of the master drive is transferred to the cache and then written to the spare drive.

【0003】このキャッシュ付きディスク制御装置にお
いて、キャッシュメモリや、そのディレクトリメモリに
障害が発生すると、特開昭60−79447 号公報に記載のよ
うに、キャッシュ全体を切り離していた。
In this disk control device with a cache, when a failure occurs in the cache memory or its directory memory, the entire cache is separated as described in JP-A-60-79447.

【0004】また、ディスク入出力処理を中断しないで
キャッシュをオンライン中に保守するためには、特開平
3−84643号公報に記載のように、保守作業の間は、キャ
ッシュ全体を切り離していた。
Further, in order to maintain the cache online without interrupting the disk input / output processing, Japanese Patent Laid-Open No.
As described in JP-A-3-84643, the entire cache was separated during maintenance work.

【0005】[0005]

【発明が解決しようとする課題】上記従来のキャッシュ
付きディスク制御装置では、キャッシュやディレクトリ
が故障したときや、キャッシュのオンライン保守を実行
している間は、キャッシュ全体を切り離している。その
ため、その間のディスク入出力処理は全て直接ディスク
をアクセスすることによって行なわれる。従って、キャ
ッシュを使用しているときと比べて性能低下が大きい。
また、非同期データ転送やディスクコピー処理を実行す
ることができなくなるので、これらの機能の信頼性も低
い。
In the above-mentioned conventional disk controller with cache, the entire cache is disconnected when the cache or directory fails or while the online maintenance of the cache is being executed. Therefore, all the disk input / output processing during that time is performed by directly accessing the disk. Therefore, the performance degradation is large compared to when the cache is used.
Further, since the asynchronous data transfer and the disk copy process cannot be executed, the reliability of these functions is low.

【0006】本発明の目的は、キャッシュ付きディスク
制御装置の、障害時,保守時まで含めて考えたトータル
な性能,信頼性を向上させることにある。
An object of the present invention is to improve the total performance and reliability of a cached disk control device including failures and maintenance.

【0007】[0007]

【課題を解決するための手段】上記目的を達成するた
め、本発明では、複数個のキャッシュメモリと各キャッ
シュに対応するディレクトリを有し、配下に接続されて
いる複数のディスクドライブを、正常に使用可能なキャ
ッシュメモリと同じ数のグループに分けて、データを格
納するキャッシュメモリをグループ別に割り当てること
を特徴とする。
In order to achieve the above object, according to the present invention, a plurality of disk drives, which have a plurality of cache memories and a directory corresponding to each cache, and are connected under the It is characterized in that it is divided into the same number of groups as the usable cache memories and the cache memories for storing data are assigned to the respective groups.

【0008】また、前記複数のキャッシュメモリのうち
の一部の切り離し・組み込み要求を指示できるサービス
プロセッサに接続され、前記サービスプロセッサを介し
ての、保守員による前記キャッシュの切り離し要求に対
して、指定されたキャッシュの使用を禁止すると共に、
その後、保守員によるキャッシュの組み込み要求に対し
て、再びキャッシュの使用を許可することを特徴とす
る。
Further, the cache processor is connected to a service processor capable of instructing a disconnection / embedding request of a part of the plurality of cache memories, and is designated in response to a cache disconnection request by a maintenance person via the service processor. Prohibiting the use of the cache
After that, the use of the cache is again permitted in response to the request for the cache to be installed by the maintenance personnel.

【0009】[0009]

【作用】本発明におけるディスク制御装置では、複数の
キャッシュメモリと、キャッシュメモリ毎に対応するデ
ィレクトリを有しているので、ある一個のキャッシュや
ディレクトリに障害が起こっても、残りのキャッシュや
ディレクトリを使うことができる。従って、全て直接デ
ィスクドライブをアクセスする従来方式に比べて、性能
低下を抑えることができる。また、非同期データ転送や
ディスクコピー処理を継続することができるので、これ
らの機能の信頼性も高められる。
Since the disk control device according to the present invention has a plurality of cache memories and a directory corresponding to each cache memory, even if one cache or directory fails, the remaining caches or directories are Can be used. Therefore, as compared with the conventional method in which all disk drives are directly accessed, performance degradation can be suppressed. Further, since asynchronous data transfer and disk copy processing can be continued, the reliability of these functions can be improved.

【0010】また、配下の各ディスクドライブに対し
て、データを格納するキャッシュメモリが一意に決まっ
ているので、ある任意のデータがいずれかのキャッシュ
メモリに格納されているか否かを判定する際に、データ
がどのディスクドライブに属するものであるかという情
報だけから、調べるべきディレクトリをひとつに絞り込
むことができる。従って、ディレクトリが複数あること
に伴って生じるデータ探索のオーバヘッドは極めて小さ
くて済む。
Further, since a cache memory for storing data is uniquely determined for each of the subordinate disk drives, it is necessary to determine whether any given data is stored in any of the cache memories. , It is possible to narrow down the directories to be searched to one only based on the information on which disk drive the data belongs to. Therefore, the data search overhead caused by the presence of a plurality of directories can be extremely small.

【0011】また、本発明におけるオンライン中キャッ
シュ保守方式では、複数のキャッシュメモリのうちの一
部の切り離し・組み込みが可能であり、切離し中でも残
りのキャッシュメモリを継続して使用することができる
ので、保守中においても、性能低下や機能制限を抑える
ことができる。
Further, according to the online cache maintenance method of the present invention, a part of a plurality of cache memories can be separated / installed, and the remaining cache memory can be used continuously even after separation. Even during maintenance, it is possible to suppress performance degradation and functional restrictions.

【0012】[0012]

【実施例】図1は本発明の一実施例を示すディスクサブ
システムのブロック図である。本実施例に示すディスク
サブシステムは、CPU1,ディスク制御装置2,複数
のディスクドライブ31,32,33から構成されてい
る。ディスク制御装置2は、CPU1の要求に応じて、
ディスクドライブのデータの読みだし、書き込み処理を
行なう。
1 is a block diagram of a disk subsystem showing an embodiment of the present invention. The disk subsystem shown in this embodiment comprises a CPU 1, a disk controller 2, and a plurality of disk drives 31, 32, 33. The disk controller 2 responds to the request from the CPU 1 by
Read and write data from the disk drive.

【0013】ディスク制御装置2は制御プロセッサ2
1,制御メモリ22,複数のキャッシュ241,24
2,243、および、各キャッシュに対応して、その管
理情報を格納するディレクトリ231,232,233
を内蔵している。制御プロセッサ21は必要に応じて制
御メモリ22やディレクトリ231,232,233内
の情報を参照して、データ転送等の制御を実行する。以
下、まず、制御プロセッサ21が参照する情報を説明す
る。
The disk controller 2 is a control processor 2
1, control memory 22, a plurality of caches 241, 24
2, 243, and directories 231, 232, 233 that store the management information corresponding to each cache.
Built in. The control processor 21 refers to the information in the control memory 22 and the directories 231, 232, 233 as necessary, and executes control such as data transfer. Hereinafter, first, the information referred to by the control processor 21 will be described.

【0014】図2は制御メモリ22内の情報を示す説明
図である。制御メモリには、ドライブ−キャッシュ対応
テーブル41とキャッシュ使用可否テーブル42が格納
されている。
FIG. 2 is an explanatory diagram showing information in the control memory 22. A drive-cache correspondence table 41 and a cache availability table 42 are stored in the control memory.

【0015】ドライブ−キャッシュ対応テーブル41
は、各ドライブのデータが格納されているキャッシュ番
号を示すテーブルであり、値が‘0’であるドライブ
は、一切のデータがキャッシュ上にはないことを表す。
即ち、図2の例では、ドライブ31(#1)のデータがキ
ャッシュ241(#1)内にあり、ドライブ32(#2)
のデータは一切キャッシュ上にないことを表している。
本テーブルは、全ドライブに対して、‘0’に初期設定
しておく。
Drive-cache correspondence table 41
Is a table showing the cache number in which the data of each drive is stored, and a drive whose value is '0' indicates that no data is in the cache.
That is, in the example of FIG. 2, the data of the drive 31 (# 1) is in the cache 241 (# 1), and the drive 32 (# 2)
Indicates that none of the data is in the cache.
This table is initialized to "0" for all drives.

【0016】キャッシュ使用可否テーブル42は、各キ
ャッシュが正常に使用可能であるか否かを表すテーブル
であり、キャッシュごとに1ビットずつ割り当てられて
いて、‘1’で使用可、‘0’で使用不可を示す。本テ
ーブルは、全キャッシュに対して、‘1’に初期設定し
ておく。
The cache availability table 42 is a table showing whether each cache is normally usable or not. One bit is allocated to each cache, and the cache availability table 42 indicates that the cache is enabled by "1" and is enabled by "0". Indicates unavailable. This table is initialized to "1" for all caches.

【0017】図3は図1のディレクトリ231内の情報
を示す図である。ディレクトリには、トラックアドレス
表51,キャッシュ未使用容量52,キャッシュ未使用
キュー53が格納されている。
FIG. 3 is a diagram showing information in the directory 231 of FIG. A track address table 51, a cache unused capacity 52, and a cache unused queue 53 are stored in the directory.

【0018】トラックアドレス表51は、全ディスクド
ライブの物理トラック毎の情報であり、各トラックのデ
ータが、ディレクトリ231に対応するキャッシュ24
1上に格納されている場合は、そのキャッシュ上アドレ
スを示し、格納されていない場合は、‘ヌル(null)’
が設定される。本テーブルは全トラックに対して、‘ヌ
ル’を初期設定しておく。
The track address table 51 is information for each physical track of all disk drives, and the data of each track is stored in the cache 24 corresponding to the directory 231.
If it is stored above 1, it indicates the address on the cache, otherwise it is'null '.
Is set. In this table, "null" is initialized for all tracks.

【0019】キャッシュ未使用容量52は、ディレクト
リ231に対応するキャッシュ241の未使用のエリア、
即ち、ドライブのデータが格納されていないエリアの容
量を示す。キャッシュメモリの全容量を初期設定してお
く。
The cache unused capacity 52 is an unused area of the cache 241 corresponding to the directory 231.
That is, it indicates the capacity of the area where the drive data is not stored. Initialize the total capacity of the cache memory.

【0020】キャッシュ未使用キュー53は、ディレク
トリ231に対応するキャッシュ241の中で未使用で
あるアドレスを、キュー構造で並べたものである。この
キュー53に登録されているアドレスの総数と、キャッ
シュ未使用容量52は常に等しい。
The cache unused queue 53 is a queue in which unused addresses in the cache 241 corresponding to the directory 231 are arranged in a queue structure. The total number of addresses registered in this queue 53 and the unused cache capacity 52 are always equal.

【0021】以下、本実施例における制御プロセッサ2
1の処理を、図4ないし図6のフローチャートを用いて
詳細に説明する。
The control processor 2 in this embodiment will be described below.
The process 1 will be described in detail with reference to the flowcharts of FIGS.

【0022】図4は、要求されたトラックデータがキャ
ッシュ上に格納されているか否かを判定するときの処理
手順である。この処理は、例えば、CPU1からデータ
読みだし要求を受けたときに使われる。即ち、データ読
みだし要求を受けたとき、まず、この処理を行ない、キ
ャッシュ上に要求データがあれば、キャッシュから読み
だし、なければ、直接、ドライブから読みだす。
FIG. 4 shows a processing procedure for determining whether or not the requested track data is stored in the cache. This process is used, for example, when a data read request is received from the CPU 1. That is, when a data read request is received, this process is first performed, and if there is requested data in the cache, it is read from the cache, and if not, it is read directly from the drive.

【0023】まず、ステップ60で、図2のドライブ−
キャッシュ対応テーブル41を参照して、要求トラック
の属するドライブに対応するキャッシュ番号を読みだ
す。次に、ステップ61で、その取得した値が‘0’で
あるか否かを判定する。値が‘0’である場合には、ど
のキャッシュにもドライブのデータが一切格納されてい
ないことを意味するので、データもキャッシュ上に格納
されていないと判定する(ステップ64)。
First, in step 60, the drive of FIG.
By referring to the cache correspondence table 41, the cache number corresponding to the drive to which the requested track belongs is read. Next, in step 61, it is determined whether or not the acquired value is "0". If the value is "0", it means that no data of the drive is stored in any cache, and therefore it is determined that no data is stored in the cache (step 64).

【0024】一方、値が‘0’でない場合には、次に、
ステップ62で、その番号に対応するディレクトリをア
クセスして、図2のトラックアドレス表51内の要求ト
ラックに対応する個所を読みだす。そして、ステップ6
3で、その値が‘ヌル’か否かを判定する。値が‘ヌ
ル’である場合には、要求データはキャッシュ上に格納
されていないと判定する(ステップ64)。また、‘ヌ
ル’ではなく、アドレス値が入っている場合は、要求デ
ータがキャッシュ上に格納されていると判定する(ステ
ップ65)。
On the other hand, if the value is not '0', then
In step 62, the directory corresponding to that number is accessed to read the location corresponding to the requested track in the track address table 51 of FIG. And step 6
At 3, it is determined whether the value is'null '. If the value is'null ', it is determined that the requested data is not stored in the cache (step 64). If the address value is included instead of'null ', it is determined that the requested data is stored in the cache (step 65).

【0025】処理によれば、キャッシュ上に任意のデー
タがあるか否かを判定する際に、制御メモリと最大一つ
のディレクトリをアクセスするだけでよいので、キャッ
シュが複数個あることによるオーバヘッドはほとんどな
い。
According to the processing, when it is determined whether or not there is any data in the cache, it is only necessary to access the control memory and a maximum of one directory. Therefore, the overhead due to the plurality of caches is almost eliminated. Absent.

【0026】次に、図5のフローチャートを用いて、キ
ャッシュにデータを格納するときの処理手順を説明す
る。
Next, a processing procedure for storing data in the cache will be described with reference to the flowchart of FIG.

【0027】まず、ステップ70で、図2のドライブ−
キャッシュ対応テーブル41を参照して、データ格納ト
ラックの属するドライブに対応するキャッシュ番号を取
得する。次に、ステップ71で、その取得した値が
‘0’であるか否かを判定する。
First, in step 70, the drive of FIG.
With reference to the cache correspondence table 41, the cache number corresponding to the drive to which the data storage track belongs is acquired. Next, in step 71, it is determined whether or not the acquired value is "0".

【0028】値が‘0’でない場合には、次に、ステッ
プ72で、その番号に対応するディレクトリをアクセス
して、図2のトラックアドレス表51内のデータ格納ト
ラックに対応する個所を読みだす。そして、ステップ7
3で、その値が‘ヌル’か否かを判定する。
If the value is not "0", then in step 72, the directory corresponding to that number is accessed to read the location corresponding to the data storage track in the track address table 51 of FIG. . And step 7
At 3, it is determined whether the value is'null '.

【0029】値が‘ヌル’である場合には、次にステッ
プ74で、データを格納するアドレスを決定する。具体
的には、まず、図3の未使用キュー53を調べ、空でな
ければ、その中から任意のアドレスを選択する。また、
未使用キュー53が空の場合は、すでに使われているア
ドレスの中から適当なものを一つ選ぶ。この選択には、
例えば、参照されていない期間が最も長いデータのアド
レスを選ぶ方法がある。
If the value is'null ', then in step 74 the address at which the data is stored is determined. Specifically, first, the unused queue 53 of FIG. 3 is checked, and if it is not empty, an arbitrary address is selected from among them. Also,
If the unused queue 53 is empty, an appropriate one is selected from the already used addresses. This choice includes
For example, there is a method of selecting an address of data which is not referenced for the longest period.

【0030】一方、トラック表にアドレス値が書かれて
いる場合は、そのアドレスをデータ格納アドレスとす
る。
On the other hand, if an address value is written in the track table, that address is used as the data storage address.

【0031】こうして、格納アドレスが決定したら、次
に、ステップ75で、対応するキャッシュにデータを書
き込む。そして、ステップ76で、対応するディレクト
リの図3に示した各情報を更新する。具体的には、ま
ず、トラックアドレス表51については、データを書き
込んだトラックの対応個所に、データを書き込んだアド
レスを書き込むと共に、そのアドレスを使用していたト
ラックがある場合は、そのトラックの対応個所に、‘ヌ
ル’を書き込む。更に、未使用アドレスを新たに割り当
てた場合は、キャッシュ未使用容量52を書き替えると
共に、未使用キュー53からアドレスを削除する。
When the storage address is determined in this way, next, in step 75, the data is written in the corresponding cache. Then, in step 76, each information shown in FIG. 3 of the corresponding directory is updated. Specifically, first, in the track address table 51, the address where the data is written is written in the corresponding place of the track where the data is written, and if there is a track that used that address, the correspondence of the track is written. Write'null 'in the place. Furthermore, when an unused address is newly allocated, the cache unused capacity 52 is rewritten and the address is deleted from the unused queue 53.

【0032】ところで、ステップ71の判定で、値が
‘0’である場合には、どのキャッシュにもドライブの
データが一切格納されていない。従って、データを格納
するキャッシュがまだ決まっていないことを意味する。
この場合には、次に、ステップ77で、図2のキャッシ
ュ使用可否テーブル42の対応ビットが‘1’である全
てのディレクトリを順にアクセスして、それぞれ図3の
キャッシュ未使用容量52を読みだす。そして、ステッ
プ78で、未使用容量52が最大であるキャッシュを選
ぶ。最大の未使用容量を持つキャッシュが二台以上ある
場合は、その中のどのキャッシュを選んでも差し支えな
い。選択が済んだら、次に、ステップ79で、図2のド
ライブ−キャッシュ対応テーブル41内に、ドライブの
対応キャッシュ番号を書き込む。その後は、ステップ7
4以下の処理を行なう。
By the way, if the value is "0" in the determination at step 71, no drive data is stored in any cache. Therefore, it means that the cache for storing the data has not been decided yet.
In this case, next, at step 77, all the directories whose corresponding bits of the cache availability table 42 of FIG. 2 are “1” are sequentially accessed to read out the cache unused capacity 52 of FIG. 3, respectively. . Then, in step 78, the cache having the largest unused capacity 52 is selected. If you have more than one cache with the maximum unused capacity, you can choose any of them. When the selection is completed, in step 79, the corresponding cache number of the drive is written in the drive-cache correspondence table 41 of FIG. After that, step 7
4 or less processing is performed.

【0033】次に図6のフローチャートを用いて、キャ
ッシュまたはディレクトリに障害が発生したときの処理
手順を説明する。
Next, the processing procedure when a failure occurs in the cache or the directory will be described using the flowchart of FIG.

【0034】まず、ステップ80で、図2のキャッシュ
使用可否テーブル42内の、障害を起こしたキャッシ
ュ,ディレクトリに対応するビットを‘0’にリセット
する。そして、ステップ81で、図2のドライブ−キャ
ッシュ対応テーブル41を調べて、障害を起こしたキャ
ッシュ,ディレクトリの番号が対応づけられている全て
のドライブに対して、その対応キャッシュ番号を‘0’
にリセットする。
First, at step 80, the bit corresponding to the cache and the directory in which the failure has occurred in the cache availability table 42 of FIG. 2 is reset to "0". Then, in step 81, the drive-cache correspondence table 41 of FIG. 2 is checked, and the corresponding cache numbers are set to "0" for all the drives in which the numbers of the failed cache and directory are associated.
Reset to.

【0035】上記処理により、以降、障害を起こしたキ
ャッシュは図5の処理でデータを格納するキャッシュと
して選択されることは無くなる。また、そのキャッシュ
にデータが格納されていたドライブは、図5で説明した
処理により、新たに正常なキャッシュが割り当てられる
ことになる。
By the above processing, the cache that has failed will not be selected as a cache for storing data in the processing of FIG. 5 thereafter. In addition, a normal cache is newly assigned to the drive in which the data is stored in the cache by the processing described in FIG.

【0036】実施例によれば、キャッシュメモリが複数
個あり、その一部が障害を起こした場合、そのキャッシ
ュを利用していたドライブは、残りの正常なキャッシュ
に切り替えることができるので、性能の大幅な低下やキ
ャッシュを必要とする機能の停止を防ぐことができる。
According to the embodiment, when there are a plurality of cache memories, and a part of them fails, the drive that was using that cache can switch to the remaining normal cache. It is possible to prevent a significant decrease and stoppage of functions that require cache.

【0037】さて、次に、本発明のオンライン中キャッ
シュ保守方式の一実施例を説明する。
Now, an embodiment of the online medium cache maintenance system of the present invention will be described.

【0038】図7は、キャッシュオンライン保守方式を
実現するディスクサブシステムのブロック図である。基
本的には図1の構成と同じである。ディスク制御装置2
22は複数のプロセッサ21,212を持ち、また、サ
ービスプロセッサ4と接続されている。
FIG. 7 is a block diagram of a disk subsystem that implements the cache online maintenance system. The configuration is basically the same as that of FIG. Disk controller 2
22 has a plurality of processors 21 and 212, and is connected to the service processor 4.

【0039】図8は、図7のディレクトリ251内の情
報を示す説明図である。図3に示したトラックアドレス
表51,キャッシュ未使用容量52,キャッシュ未使用
キュー53に加え、キャッシュ使用中フラグ54を格納
している。
FIG. 8 is an explanatory diagram showing information in the directory 251 of FIG. In addition to the track address table 51, the cache unused capacity 52, and the cache unused queue 53 shown in FIG. 3, a cache in-use flag 54 is stored.

【0040】キャッシュ使用中フラグ54は、制御プロ
セッサ当たり1ビットのフラグで、各プロセッサが、キ
ャッシュ使用前に‘1’をセットし、キャッシュ使用終
了後に‘0’にリセットする。
The cache in-use flag 54 is a 1-bit flag per control processor, and each processor sets "1" before using the cache and resets it to "0" after using the cache.

【0041】以下、図9を用いて、オンライン中キャッ
シュ保守手順を説明する。
The online cache maintenance procedure will be described below with reference to FIG.

【0042】保守員は、サービスプロセッサ4を介し
て、ディスク制御装置222へ要求を出す。
The maintenance staff issues a request to the disk controller 222 via the service processor 4.

【0043】まず、ステップ90で、保守対象のキャッ
シュ(ここでは、仮にキャッシュ241とする)の切り
離し要求を出す。
First, in step 90, a request for disconnecting the cache to be maintained (here, temporarily the cache 241) is issued.

【0044】ディスク制御装置222では、これを受諾
すると、ステップ91で、図2のキャッシュ使用可否テ
ーブル42内の、保守対象のキャッシュ241に対応す
るビットを‘0’にリセットする。この処理により、こ
れ以降、ディスク制御装置222では、図5の処理で、
データを格納するキャッシュとしてキャッシュ241を選
択することは無くなる。
When the disk controller 222 accepts this, in step 91, the bit corresponding to the cache 241 to be maintained in the cache availability table 42 of FIG. 2 is reset to "0". As a result of this processing, the disk control device 222 subsequently executes the processing of FIG.
The cache 241 is no longer selected as a cache for storing data.

【0045】次に、ステップ92で、保守対象のキャッ
シュ241を使用中である制御プロセッサがいないこと
を確認する。具体的には、対応するディレクトリ251
内のキャッシュ使用中フラグ54(図8)が、全ての制
御プロセッサに関して‘0’であることを確認する。そ
の確認が済んだら、次に、ステップ93で、図2のドラ
イブ−キャッシュ対応テーブル41を調べて、保守対象
のキャッシュ241(#1)が対応づけられている全て
のドライブに対して、その対応キャッシュ番号を‘0’
にリセットする。この処理により、保守対象のキャッシ
ュ241にデータが格納されていたドライブは、図5で
説明した処理により、新たに別のキャッシュが割り当て
られることになる。
Next, at step 92, it is confirmed that no control processor is using the cache 241 requiring maintenance. Specifically, the corresponding directory 251
Make sure that the cache in-use flag 54 (FIG. 8) therein is '0' for all control processors. When the confirmation is completed, next, in step 93, the drive-cache correspondence table 41 of FIG. 2 is checked and the correspondence is made to all the drives to which the cache 241 (# 1) to be maintained is associated. Set the cache number to "0"
Reset to. By this processing, a drive whose data is stored in the cache 241 to be maintained is newly assigned another cache by the processing described in FIG.

【0046】以上の処理の後、ディスク制御装置222
は、サービスプロセッサ4に対して、保守対象のキャッ
シュ241の切り離しが完了したことを報告する。
After the above processing, the disk controller 222
Informs the service processor 4 that the maintenance target cache 241 has been detached.

【0047】保守員は、その完了報告を受けると、ステ
ップ94で、キャッシュ241の修理,交換等のハード
的な保守作業を行なう。そして、その後、ステップ95
で、保守対象のキャッシュ241の組み込み要求を出
す。
Upon receiving the completion report, the maintenance staff performs hardware maintenance work such as repair and replacement of the cache 241 in step 94. Then, after that, step 95
Then, a request for incorporating the maintenance target cache 241 is issued.

【0048】ディスク制御装置222では、これを受諾
すると、まず、ステップ96で、保守対象のキャッシュ
241のイニシャライズ処理を行なう。この処理には、
対応するディレクトリ251のイニシャライズも含まれ
る。次に、ステップ97で、図2のキャッシュ使用可否
テーブル42内の、保守対象のキャッシュ241に対応
するビットを‘1’にセットする。この処理により、デ
ィスク制御装置222では、キャッシュ241の使用を
再開する。
When the disk controller 222 accepts this, first, in step 96, the cache 241 to be maintained is initialized. This process includes
The initialization of the corresponding directory 251 is also included. Next, at step 97, the bit corresponding to the cache 241 to be maintained in the cache availability table 42 of FIG. 2 is set to "1". By this processing, the disk controller 222 resumes the use of the cache 241.

【0049】以上の処理の後、ディスク制御装置222
は、サービスプロセッサ4に対して、保守対象のキャッ
シュ241の組み込みが完了したことを報告する。
After the above processing, the disk controller 222
Informs the service processor 4 that the installation of the cache 241 to be maintained is completed.

【0050】このオンライン中キャッシュ保守方式によ
れば、複数のキャッシュメモリのうちの一部の切り離し
・組み込みが可能であり、切離し中でも残りのキャッシ
ュメモリを継続して使用することができるので、保守中
においても、性能低下や機能制限を抑えることができ
る。
According to this on-line cache maintenance method, a part of a plurality of cache memories can be separated / installed, and the remaining cache memory can be used continuously even after disconnection. Even in the case, performance degradation and function limitation can be suppressed.

【0051】なお、サービスプロセッサ4を使用せず
に、CPU1からのキャッシュ切り離し、組み込み要求
を利用して、図9で説明した手順により、オンライン中
のキャッシュ保守を実現することも可能である。
Incidentally, without using the service processor 4, it is also possible to separate the cache from the CPU 1 and utilize the incorporation request to implement the cache maintenance online while following the procedure described in FIG.

【0052】[0052]

【発明の効果】本発明によれば、複数のキャッシュやデ
ィレクトリのうちいくつかが障害を起こしても、残りの
正常なキャッシュ,ディレクトリを使って、障害前と同
じ機能を実現できる。また、オンライン中にキャッシュ
を保守する場合でも、部分的に一部のキャッシュを切り
離したり、組み込んだりすることができる。従って、デ
ィスク制御装置の障害時、保守時まで考えたトータルな
性能を向上できる。
According to the present invention, even if some of a plurality of caches and directories fail, the same function as before the failure can be realized by using the remaining normal caches and directories. Further, even when maintaining the cache while online, it is possible to partially disconnect or incorporate a part of the cache. Therefore, it is possible to improve the total performance in consideration of the failure and maintenance of the disk control device.

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

【図1】本発明の一実施例を示すディスクサブシステム
のブロック図。
FIG. 1 is a block diagram of a disk subsystem showing an embodiment of the present invention.

【図2】本発明における制御メモリ内の構成を示す説明
図。
FIG. 2 is an explanatory diagram showing a configuration in a control memory according to the present invention.

【図3】本発明におけるディレクトリ内の構成を示す説
明図。
FIG. 3 is an explanatory diagram showing a structure in a directory according to the present invention.

【図4】要求されたトラックデータがキャッシュ上に格
納されているか否かを判定するときの処理フローチャー
ト。
FIG. 4 is a processing flowchart for determining whether requested track data is stored in a cache.

【図5】キャッシュにデータを格納するときの処理手順
のフローチャート。
FIG. 5 is a flowchart of a processing procedure when storing data in a cache.

【図6】キャッシュまたはディレクトリに障害が発生し
たときの処理手順のフローチャート。
FIG. 6 is a flowchart of a processing procedure when a failure occurs in a cache or a directory.

【図7】本発明の第2の実施例を実現するディスクサブ
システムのブロック図。
FIG. 7 is a block diagram of a disk subsystem that realizes a second embodiment of the present invention.

【図8】本発明におけるディレクトリ内の構成を示す説
明図。
FIG. 8 is an explanatory diagram showing the structure of a directory in the present invention.

【図9】オンライン中キャッシュ保守の処理手順のフロ
ーチャート。
FIG. 9 is a flowchart of a processing procedure for online cache maintenance.

【符号の説明】 1…CPU、2…ディスク制御装置、31,32,33
…ディスクドライブ、21…制御プロセッサ、22…制
御メモリ、231,232,233…ディレクトリ、2
41,242,243…キャッシュメモリ。
[Explanation of Codes] 1 ... CPU, 2 ... Disk control device, 31, 32, 33
... disk drive, 21 ... control processor, 22 ... control memory, 231, 232, 233 ... directory, 2
41, 242, 243 ... Cache memory.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 白柳 芳朗 神奈川県小田原市国府津2880番地 株式会 社日立製作所小田原工場内 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Yoshiro Shirayanagi 2880 Kozu, Odawara City, Kanagawa Stock Company Hitachi Ltd. Odawara Factory

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】複数のキャッシュメモリと、前記キャッシ
ュメモリ毎に対応するディレクトリを有し、配下に接続
されている複数のディスクドライブを、正常に使用可能
な前記キャッシュメモリと同じ数のグループに分けて、
データを格納する前記キャッシュメモリをグループ別に
割り当てることを特徴とする複数キャッシュ付きディス
ク制御装置。
1. A plurality of cache memories and a directory corresponding to each cache memory, and a plurality of disk drives connected thereunder are divided into the same number of groups as the normally usable cache memories. hand,
A disk control device with a plurality of caches, characterized in that the cache memory for storing data is allocated for each group.
【請求項2】請求項1において、前記複数のキャッシュ
メモリと、前記キャッシュメモリ毎に対応するディレク
トリを有し、配下の各ディスクドライブに対して、デー
タを格納する前記キャッシュメモリが一意に決まってい
て、ある任意のデータがいずれかの前記キャッシュメモ
リに格納されているか否かを判定する際に、前記データ
がどの前記ディスクドライブに属するものであるかとい
う情報だけから、調べるべき前記ディレクトリをひとつ
に絞り込む複数キャッシュ付きディスク制御装置。
2. The cache memory according to claim 1, which has the plurality of cache memories and a directory corresponding to each of the cache memories, and stores the data uniquely for each subordinate disk drive. Then, when determining whether or not any given data is stored in any of the cache memories, one of the directories to be searched is determined from only the information indicating which of the disk drives the data belongs to. Disk controller with multiple caches.
【請求項3】請求項1において、複数のキャッシュメモ
リを有し、上位のホストコンピュータと配下のディスク
ドライブ、あるいは前記ディスクドライブ間のデータ転
送において、前記キャッシュのうちの一つをバッファメ
モリとして使用しているときに、そのキャッシュが故障
して使用不可能になった場合、別の正常な前記キャッシ
ュメモリを使用して、前記データ転送を再試行する複数
キャッシュ付きディスク制御装置。
3. The cache memory according to claim 1, wherein the cache memory has a plurality of cache memories, and one of the caches is used as a buffer memory in data transfer between an upper host computer and a subordinate disk drive or the disk drive. If the cache becomes unavailable due to failure during the operation, another normal cache memory is used to retry the data transfer, and the multiple cached disk control device.
【請求項4】請求項1において、前記キャッシュ上にデ
ータが存在しない前記ディスクドライブ内のデータを新
規にキャッシュに格納する際、前記各キャッシュの使用
されていない残容量を調べ、残容量の最も多いキャッシ
ュを割当て、以後、前記ディスクドライブのデータは全
て前記キャッシュに格納するキャッシュ割当て方式。
4. The method according to claim 1, wherein when the data in the disk drive in which the data does not exist in the cache is newly stored in the cache, the unused capacity of each of the caches is checked and the remaining capacity A cache allocation method in which a large number of caches are allocated and thereafter all data of the disk drive is stored in the caches.
【請求項5】請求項4において、前記複数のキャッシュ
メモリのうちの一部が故障して使用不可能になったと
き、故障した前記キャッシュにデータが格納されていた
ディスクドライブについては、前記キャッシュ上にデー
タが存在しないディスクドライブとして再設定してお
き、以後新たに前記ディスクドライブのデータをキャッ
シュに格納する際に、前記キャッシュ割当て方式を適用
して、残りの正常なキャッシュの一つを割り当てる複数
キャッシュ付きディスク制御装置。
5. The cache drive according to claim 4, wherein when a part of the plurality of cache memories fails and becomes unusable, the disk drive in which data is stored in the failed cache is the cache. Reconfigure as a disk drive with no data on it, and then when the data of the disk drive is newly stored in the cache, the cache allocation method is applied to allocate one of the remaining normal caches. Disk controller with multiple caches.
【請求項6】請求項3において、前記キャッシュ付きデ
ィスク制御装置は、前記複数のキャッシュメモリのうち
の一部の切り離し・組み込み要求を指示できるサービス
プロセッサに接続され、前記サービスプロセッサを介し
ての、保守員による前記キャッシュの切り離し要求に対
して、指定されたキャッシュの使用を禁止すると共に、
前記キャッシュにデータが格納されていたディスクドラ
イブについては、キャッシュ上にデータが存在しないデ
ィスクドライブとして再設定しておき、以後新たに前記
ディスクドライブのデータをキャッシュに格納する際に
は、キャッシュ割当て方式を適用して、残りの正常なキ
ャッシュの一つを割り当て、その後、保守員による前記
キャッシュの組み込み要求に対して、再び前記キャッシ
ュの使用を許可して、キャッシュ割当ての対象とするデ
ィスク制御装置のオンライン中キャッシュ保守方式。
6. The disk control device with cache according to claim 3, wherein the cached disk control device is connected to a service processor capable of instructing a disconnection / installation request of a part of the plurality of cache memories, and via the service processor, In response to a request from the maintenance staff to release the cache, the use of the specified cache is prohibited, and
The disk drive in which the data was stored in the cache is reset as a disk drive in which the data does not exist in the cache, and when the data of the disk drive is newly stored in the cache thereafter, the cache allocation method is used. To allocate one of the remaining normal caches, and then permit the use of the cache again in response to a request from the maintenance staff to install the cache, and Online cache maintenance method.
JP4193651A 1992-07-21 1992-07-21 Disk controller with plural caches Pending JPH0635802A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4193651A JPH0635802A (en) 1992-07-21 1992-07-21 Disk controller with plural caches

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4193651A JPH0635802A (en) 1992-07-21 1992-07-21 Disk controller with plural caches

Publications (1)

Publication Number Publication Date
JPH0635802A true JPH0635802A (en) 1994-02-10

Family

ID=16311494

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4193651A Pending JPH0635802A (en) 1992-07-21 1992-07-21 Disk controller with plural caches

Country Status (1)

Country Link
JP (1) JPH0635802A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4855118A (en) * 1987-04-15 1989-08-08 Nichia Kagaku Kogyo K.K. Method of producing fluorapatite
US6434666B1 (en) 1995-02-20 2002-08-13 Hitachi, Ltd. Memory control apparatus and method for storing data in a selected cache memory based on whether a group or slot number is odd or even
JP2006134321A (en) * 2004-10-21 2006-05-25 Microsoft Corp Using external memory device to improve system performance
JP2007265271A (en) * 2006-03-29 2007-10-11 Nec Corp Storage device, data arrangement method and program
US10216637B2 (en) 2004-05-03 2019-02-26 Microsoft Technology Licensing, Llc Non-volatile memory cache performance improvement
US10387313B2 (en) 2008-09-15 2019-08-20 Microsoft Technology Licensing, Llc Method and system for ensuring reliability of cache data and metadata subsequent to a reboot
US10509730B2 (en) 2008-09-19 2019-12-17 Microsoft Technology Licensing, Llc Aggregation of write traffic to a data store
US11334484B2 (en) 2005-12-16 2022-05-17 Microsoft Technology Licensing, Llc Optimizing write and wear performance for a memory

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4855118A (en) * 1987-04-15 1989-08-08 Nichia Kagaku Kogyo K.K. Method of producing fluorapatite
US6434666B1 (en) 1995-02-20 2002-08-13 Hitachi, Ltd. Memory control apparatus and method for storing data in a selected cache memory based on whether a group or slot number is odd or even
US6611899B2 (en) 1995-02-20 2003-08-26 Hitachi, Ltd. Memory control apparatus and method for storing data in a selected cache memory
US10216637B2 (en) 2004-05-03 2019-02-26 Microsoft Technology Licensing, Llc Non-volatile memory cache performance improvement
JP2006134321A (en) * 2004-10-21 2006-05-25 Microsoft Corp Using external memory device to improve system performance
US8006037B2 (en) 2004-10-21 2011-08-23 Microsoft Corporation Using external memory devices to improve system performance
US9690496B2 (en) 2004-10-21 2017-06-27 Microsoft Technology Licensing, Llc Using external memory devices to improve system performance
US11334484B2 (en) 2005-12-16 2022-05-17 Microsoft Technology Licensing, Llc Optimizing write and wear performance for a memory
JP2007265271A (en) * 2006-03-29 2007-10-11 Nec Corp Storage device, data arrangement method and program
US10387313B2 (en) 2008-09-15 2019-08-20 Microsoft Technology Licensing, Llc Method and system for ensuring reliability of cache data and metadata subsequent to a reboot
US10509730B2 (en) 2008-09-19 2019-12-17 Microsoft Technology Licensing, Llc Aggregation of write traffic to a data store

Similar Documents

Publication Publication Date Title
US6912669B2 (en) Method and apparatus for maintaining cache coherency in a storage system
US6081875A (en) Apparatus and method for backup of a disk storage system
US5987566A (en) Redundant storage with mirroring by logical volume with diverse reading process
US6009481A (en) Mass storage system using internal system-level mirroring
US6542962B2 (en) Multiple processor data processing system with mirrored data for distributed access
KR960001748B1 (en) Computer system management method and memory system for a
US9058305B2 (en) Remote copy method and remote copy system
US7334084B2 (en) Disk array apparatus and control method for disk array apparatus
JP3944449B2 (en) Computer system, magnetic disk device, and disk cache control method
JP3431972B2 (en) Virtual disk system
EP0727745B1 (en) Cache memory control apparatus and method
US20050132249A1 (en) Apparatus method and system for fault tolerant virtual memory management
US6604171B1 (en) Managing a cache memory
US6591335B1 (en) Fault tolerant dual cache system
US6275897B1 (en) Remote cache utilization for mirrored mass storage subsystem
JPH09231013A (en) Method for sharing energized hsd among plural storage subsystems and its device
US20050021906A1 (en) Storage system
JP3246146B2 (en) Data transfer method for external storage device
US6356978B1 (en) File control device
US7827353B2 (en) Self healing memory
JPH0635802A (en) Disk controller with plural caches
US20050198411A1 (en) Commingled write cache in dual input/output adapter
US7472221B1 (en) Mirrored memory
US7302526B1 (en) Handling memory faults for mirrored memory
US7039757B2 (en) Cluster disk array system and a method for operating the cluster disk array system