JPH01276349A - Disk cache system - Google Patents

Disk cache system

Info

Publication number
JPH01276349A
JPH01276349A JP63106268A JP10626888A JPH01276349A JP H01276349 A JPH01276349 A JP H01276349A JP 63106268 A JP63106268 A JP 63106268A JP 10626888 A JP10626888 A JP 10626888A JP H01276349 A JPH01276349 A JP H01276349A
Authority
JP
Japan
Prior art keywords
directory
information
priority
entry
disk
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
JP63106268A
Other languages
Japanese (ja)
Inventor
Takamasa Koga
古賀 高雅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP63106268A priority Critical patent/JPH01276349A/en
Publication of JPH01276349A publication Critical patent/JPH01276349A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To improve the cache hit rate and the directory checking speed by checking the directories according to the priority order shown by the priority degree information and selecting the entry in a directory memory having the lowest priority degree as an object of replacement in case a cache mistake is decided. CONSTITUTION:The priority degree information on the data blocks stored in a cache data memory 27 in response to the directory information registered in a directory memory 28 is added to said directory information. Then the directories are checked by reference to the priority order shown by the priority degree information which is received when a disk access request is given from a host device. In case the memory 28 includes no idle entry, the entry where the directory information including the information of the lowest priority degree is registered is selected as an object of replacement. Thus it is possible to improve the cache hit rate and the directory checking speed.

Description

【発明の詳細な説明】 [発明の1目的] (産業上の利用分野) この発明は、ディスク装置の一部のデータの写しが置か
れるキャッシュデータメモリを備えたディスクキャッシ
ュシステムに関する。
DETAILED DESCRIPTION OF THE INVENTION [One Object of the Invention] (Industrial Application Field) The present invention relates to a disk cache system including a cache data memory in which a copy of some data of a disk device is placed.

(従来の技術) 一般に、この種のディスクキャッシュシステムでは、キ
ャッシュデータメモリに格納されているデータブロック
(ディスクブロック)を示すディスクアドレス情報を含
むディレクトリ情報を登録するための複数のエントリを
有するディレクトリメモリが設けられている。ディスク
コントローラは、ホスト装置から例えばデイスクリード
が要求されると、まずディレクトリメモリの各エントリ
を例えば先頭エントリから順に参照し、要求されたディ
スクアクセス先に対応するディスクアドレス情報を含む
ディレクトリ情報か登録されているエントリを検索する
(Prior Art) Generally, in this type of disk cache system, a directory memory has a plurality of entries for registering directory information including disk address information indicating data blocks (disk blocks) stored in the cache data memory. is provided. For example, when a disk read is requested from a host device, the disk controller first refers to each entry in the directory memory in order, starting from the first entry, and registers directory information including disk address information corresponding to the requested disk access destination. Search for entries that are

ディスクコントローラは、目的エントリを見付けること
かできたキャツシュヒツトの場合には、同エントリに対
応するキャッシュデータメモリのデータブロックをリー
ドし、ホスト装置へ転送する。
If the disk controller is able to find the target entry, it reads the data block in the cache data memory corresponding to the entry and transfers it to the host device.

これに対して目的エントリを見付けることかできなかっ
たキャッシュミスの場合には、ディレクトリメモリの各
エントリの中から置換対象エントリを選択し、この選択
したエントリに要求されたディスクアクセス先に対応す
るディスクアドレス情報を含むディレクトリ情報を登録
する。またディスクコントローラは、ディスク装置をア
クセスして要求されたアクセス先に対応するブロックを
リードし、上記ディレクトリ情報の登録エントリに対応
させてキャッシュデータメモリに格納する一方、ホスト
装置へ要求されたデータを転送する。上記の置換対象エ
ントリの選択には、LRU(1,east Recen
tly Used)方式が適用される。
On the other hand, in the case of a cache miss where the target entry could not be found, the entry to be replaced is selected from among the entries in the directory memory, and the disk corresponding to the disk access destination requested for this selected entry is Register directory information including address information. The disk controller also accesses the disk device, reads the block corresponding to the requested access destination, stores it in the cache data memory in correspondence with the registration entry of the directory information, and sends the requested data to the host device. Forward. To select the entry to be replaced above, use LRU (1, east Recen
tly Used) method is applied.

(発明が解決しようとする課題) 上記したように従来のディスクキャッシュシステムでは
、ディレクトリメモリの各エントリの参照順序は固定で
あるため、ディレクトリチェックに要する時間は目的ア
クセス先に無関係にランダムとなり、低速処理でも構わ
ないディスクブロックのアクセスが高速に行われたり、
高速処理を必要とするディスクブロックのアクセスか遅
くなるというように、必要に応じたアクセス速度か実現
てきないという問題があった。また従来のディスクキャ
ッシュシステムでは、LRU方式によって置換対象エン
トリが選択されるため、高速処理が要求されるディスク
ブロックであってもアクセス回数が少ないものはキャッ
シュデータメモリから追出されてしまい、高速化の要求
に応えることかできないという問題もあった。
(Problem to be Solved by the Invention) As mentioned above, in conventional disk cache systems, the reference order of each entry in the directory memory is fixed, so the time required for directory checking is random regardless of the intended access destination, resulting in slow speed. Access to disk blocks that do not require processing is performed at high speed,
There has been a problem in that access speeds that meet the needs cannot be achieved, such as slow access to disk blocks that require high-speed processing. In addition, in conventional disk cache systems, entries to be replaced are selected using the LRU method, so even if the disk blocks require high-speed processing, those that are accessed infrequently are evicted from the cache data memory, making it difficult to increase speed. There was also the problem of not being able to meet the demands of the government.

したかってこの発明は、高速処理を必要とするデータブ
ロックを対象とするディスクアクセス要求時のキャツシ
ュヒツト率並びにディレクトリチェック速度の向上か図
れるようにすることを解決すべき課題とする。
Therefore, an object of the present invention is to improve the cache hit rate and directory check speed when a disk access request is made for a data block that requires high-speed processing.

[発明の構成コ (課題を解決するための手段) この発明は、ディスクキャッシュシステムのディレクト
リメモリに登録されるディレクトリ情報に、同情報に対
応してキャッシュデータメモリに格納されるデータブロ
ックの優先度を示す優先度情報を(=I加し、ホスト装
置から優先度情報を含むディスクアクセス要求か与えら
れた場合には、ディレクトリメモリの各エントリを同エ
ントリ中の優先度情報の示す優先度の順に参照してブイ
レフ]・リチェックを行うようにし、このチェックの結
果デイレクトり情報の登録か必要となり旧つディレクト
リメモリに空きエントリが存在しない場合には、最も優
先度の低い優先度情報を含むデイレフトリ情報が登録さ
れているディレクトリチェック内エントリを対象に、ホ
スト装置から与えられた優先度情報を含むディレクトリ
情報を登録するようにしたことを特徴とする。
[Configuration of the Invention (Means for Solving the Problems) This invention provides a method for determining the priority of data blocks stored in the cache data memory in accordance with directory information registered in the directory memory of a disk cache system. (=I), and when a disk access request including priority information is given from the host device, each entry in the directory memory is arranged in the order of priority indicated by the priority information in the same entry. As a result of this check, if the directory information needs to be registered and there are no free entries in the old directory memory, the day left directory containing the lowest priority information is re-checked. The present invention is characterized in that directory information including priority information given from a host device is registered for entries in the directory check in which information is registered.

(作用) 上記の構成によれば、ディレクトリメモリの各エントリ
が、ホスト装置からのディスクアクセス要求時に通知さ
れた優先度情報の示す優先度順に参照されるため、優先
度か高いデータブロックをアクセスする場合には高速デ
ィレクトリチェックが可能となる。また、ディレクトリ
メモリに空きエントリがない場合には、最も優先度の低
い優先度情報を含むデイレクトり情報が登録されている
ディレクトリメモリ内エントリか置換対象エントリとし
て選択されるので、優先度が高いデータブロックがキャ
ッシュデータメモリから追出される虞はなく、この種デ
ータブロックを対象とするディスクアクセス要求時のキ
ャツシュヒツト率か向上する。
(Function) According to the above configuration, each entry in the directory memory is referenced in the priority order indicated by the priority information notified at the time of a disk access request from the host device, so the data block with the highest priority is accessed. In some cases, high-speed directory checking becomes possible. In addition, if there are no free entries in the directory memory, the entry in the directory memory in which the directory information containing the lowest priority information is registered will be selected as the replacement target entry, so the data with the highest priority will be replaced. There is no risk that the block will be evicted from the cache data memory, and the cache hit rate when a disk access request is made for this type of data block is improved.

= 6− (実施例) 第1図はこの発明の一実施例に係るディスクキャッシュ
システムのブロック構成を示す。同図において、10は
ディスク装置、例えば磁気ディスク装置、20は図示せ
ぬホスト装置からのディスクアクセス要求に応じて磁気
ディスク装置10をアクセスするための磁気ディスク制
御装置である。
= 6- (Embodiment) FIG. 1 shows a block configuration of a disk cache system according to an embodiment of the present invention. In the figure, 10 is a disk device, for example a magnetic disk device, and 20 is a magnetic disk control device for accessing the magnetic disk device 10 in response to a disk access request from a host device (not shown).

磁気ディスク制御装置20は、磁気ディスク装置10を
制御するハードディスクコントローラ(以下、IDCと
称する)2】、磁気ディスク装置10とホスト装置との
間のデータ転送速度の差を吸収するだめの先入れ先出し
方式のバッファ(以下、FIFOバッファ)22、ホス
ト装置とのインタフェース(ホストインタフェース)2
3、磁気ディスク制御装置20全体を制御するマイクロ
プロセッサ24、および内部ハス25を有している。
The magnetic disk control device 20 is a hard disk controller (hereinafter referred to as IDC) 2 that controls the magnetic disk device 10, and is a first-in, first-out type hard disk controller (hereinafter referred to as IDC) 2] that controls the magnetic disk device 10. Buffer (hereinafter referred to as FIFO buffer) 22, interface with host device (host interface) 2
3, a microprocessor 24 that controls the entire magnetic disk control device 20, and an internal lotus 25.

磁気ディスク制御装置20は、ホスト装置からのディス
クアクセス要求で示される(ヘッドアドレス、シリンダ
アドレスおよびセクタアドレスから成る)ディスクアド
レスか保持されるディスクアドレスレジスタ(以下、D
ARと称する)26、磁気ディスク装置10の一部のデ
ータの写しが例えば所定サイズ(ここでは1トラック分
)のデータブロック単位で格納されるキャッシュデータ
メモリ27、キャッシュデータメモリ27に格納されて
いるデータブロックのディレクトリ情報が登録される複
数のエントリを有するディレクトリメモリ28を有して
いる。このディレクトリメモリ28内エントリに登録さ
れるデイレクトり情報は、対応データブロックの磁気デ
ィスク装置10上の位置を示す(例えばヘッドアドレス
およびシリンダアドレスから成る)ディスクアドレス情
報ADR,同ブロックの優先度を示す優先度情報P1お
よび対応エントリの次に優先度が高い優先度情報Pを持
つエントリを指定するための次ポインタ情報NPを含ん
でいる。上記優先度情報Pは、ホスト装置からのディス
クアクセス要求時に同装置から与えられるものである。
The magnetic disk control device 20 stores a disk address (consisting of a head address, cylinder address, and sector address) indicated in a disk access request from a host device, or a disk address register (hereinafter referred to as D) held therein.
(referred to as AR) 26, a copy of some data of the magnetic disk device 10 is stored in a cache data memory 27 in which data blocks of a predetermined size (here, one track) are stored, for example. It has a directory memory 28 having a plurality of entries in which directory information of data blocks is registered. The directory information registered in this entry in the directory memory 28 includes disk address information ADR indicating the position of the corresponding data block on the magnetic disk device 10 (for example, consisting of a head address and a cylinder address), and indicating the priority of the block. It includes priority information P1 and next pointer information NP for specifying an entry having priority information P having the next highest priority after the corresponding entry. The priority information P is given by the host device when the host device requests disk access.

磁気ディスク制御装置20は更に、キャッシュ制御部2
9を有している。キャッシュ制御部29は、ホスト装置
からのディスクアクセス要求時にディレクトリメモリ2
8の各エントリを同エントリ中の優先度情報Pの示す優
先度の順に参照してディレクトリチェックを行うディレ
クトリチェック機能、ディレクトリチェック結果に応じ
てキャッシュデータメモリ27をアクセスするアクセス
機能、およびディレクトリメモリ28内の1エントリを
選択してデイレクトり情報登録を行うデイレクトり情報
登録機能を有している。
The magnetic disk controller 20 further includes a cache controller 2.
It has 9. The cache control unit 29 controls the directory memory 2 at the time of a disk access request from the host device.
8, an access function that accesses the cache data memory 27 according to the directory check result, and a directory check function that performs a directory check by referring to each entry of 8 in the order of priority indicated by the priority information P in the same entry; an access function that accesses the cache data memory 27 according to the directory check result; It has a direct information registration function that selects one of the entries and registers the direct information.

次に、第1図の構成の動作をデイスクリードを例に説明
する。まずホスト装置から磁気ディスク制御装置20に
デイスクリードを示すディスクアクセス要求か与えられ
たものとする。このディスクアクセス要求は、デイスク
リード/ライ]・等を指定するコマンド、(ヘットアド
レス、シリンダアドレス並びにセクタアドレスから成る
)ディスクアドレス、サイズなとの周知の情報の他に、
優先度情報を含む。この優先度情報は、例えば使用頻度
の高いデータブロックへのアクセス、使用頻度は低くて
も高速処理(高速アクセス)か必要なデータブロックへ
のアクセス等に対しては、ホスト装置(のソフトウェア
処理)において高優先度に設定されるようになっている
Next, the operation of the configuration shown in FIG. 1 will be explained using disk read as an example. First, it is assumed that a disk access request indicating a disk read is given to the magnetic disk control device 20 from the host device. This disk access request includes commands specifying disk read/write, etc., disk address (consisting of head address, cylinder address, and sector address), and well-known information such as size.
Contains priority information. This priority information is used by the host device (software processing) for accessing frequently used data blocks, or for accessing data blocks that are infrequently used but require high-speed processing (high-speed access). It is now set as a high priority.

ホスト装置からのディスクアクセス要求は、ポストイン
タフェース23を介してマイクロプロセッサ24に伝え
られる。マイクロプロセッサ24は、ホスト装置からの
ディスクアクセス要求に従ってシークコマンドを発行し
てI D C21にセットする。
A disk access request from the host device is transmitted to the microprocessor 24 via the post interface 23. The microprocessor 24 issues a seek command and sets it in the IDC 21 in accordance with a disk access request from the host device.

これによりIDC21は指定されたトラック(シリンダ
)をシークするように磁気ディスク装置10を制御する
。またマイクロプロセッサ24は、要求されたディスク
アドレスをD A R2Gにセラl−L、t。
Thereby, the IDC 21 controls the magnetic disk device 10 to seek the designated track (cylinder). The microprocessor 24 also sends the requested disk address to the DAR2G.

かる後にキャッシュ制御部29を起動して以下に述べる
ディレクトリチェックサイクルを行わせる。
After that, the cache control unit 29 is activated to perform the directory check cycle described below.

キャッシュ制御部29は、マイクロプロセッサ24によ
って起動されると、まずディレクトリメモリ28内の有
効な各エントリのうぢ、同エントリ中の優先度情報Pの
示す優先度か最も高いエントリを参照する。この実施例
において、キャッシュ制御部29には、優先度情報Pの
示す優先度が最も高−]〇 − いエントリを指す図示せぬポインタ(最優先度エントリ
ポインタ)か設けられている。したがって、キャッシュ
制御部29は最優先度エントリポインタの指すディレク
トリメモリ28内エントリを最初に参照することになる
When the cache control unit 29 is activated by the microprocessor 24, it first refers to the entry with the highest priority indicated by the priority information P in each valid entry in the directory memory 28. In this embodiment, the cache control unit 29 is provided with a pointer (not shown) (highest priority entry pointer) pointing to the entry with the highest priority indicated by the priority information P. Therefore, the cache control unit 29 first refers to the entry in the directory memory 28 pointed to by the highest priority entry pointer.

キャッンユ制御部29は参照したエントリ内容のうちの
ディスクアドレス情報ADRとD A R2Gに保持さ
れているディスクアドレスの所定フィールド(ここでは
ヘッドアドレス並びにシリンダアドレスの連結アドレス
)とを比較し、その一致の有無によりキャツシュヒツト
を判定するディレクトリチェックを行う。もし、一致が
検出されなければ、キャッンユ制御部29は参照したエ
ントリ内容のうちの次ポインタ情報NPの指すディレク
トリメモリ28内エンドす(即ち、次に優先度の高い優
先度情報Pか設定されているエンドす)を参照し、前回
と同様のディレクトリチェックを行う。
The capture control unit 29 compares the disk address information ADR of the referenced entry contents with a predetermined field of the disk address held in the D A R2G (here, a concatenated address of the head address and cylinder address), and determines whether they match. A directory check is performed to determine the presence or absence of a cache hit. If a match is not detected, the catch control unit 29 searches the end of the directory memory 28 pointed to by the next pointer information NP of the referenced entry contents (that is, the priority information P with the next highest priority is set). Check the directory in the same way as before.

キャッシュ制御部29は、上記のディレクトリチェック
サイクルを、参照エントリ中のディスクアドレス情報A
DRとD A R2Gからの上記アI・レスとの一致を
検出してキャツシュヒツトを判定するまで繰返す。但し
、次ポインタ情報NPに後続エントリが存在しないこと
を示すヌル(null)値が設定されているエントリ 
(即ち優先度情報Pの示す優先度か最も低いエントリ)
を対象とするディレクトリチェックまで進んでも一致が
検出されなかった場合、キャッシュ制御部29はキャッ
シュミスを判定し、ディレクトリチェックザイクルを終
了する。
The cache control unit 29 performs the above directory check cycle based on the disk address information A in the reference entry.
This process is repeated until a match between the DR and the above-mentioned I/Response from the DAR2G is detected and a cash hit is determined. However, an entry for which a null value is set in the next pointer information NP indicating that there is no subsequent entry.
(In other words, the entry with the lowest priority indicated by the priority information P)
If no match is detected even after proceeding to the directory check targeting , the cache control unit 29 determines a cache miss and ends the directory check cycle.

キャッシュ制御部29はディレクトリチェックサイクル
を終了するとその結果(キャツシュヒツト/キャッシュ
ミス)をマイクロプロセツサ24に通知すると共に、以
下の動作を行う。
When the cache control unit 29 completes the directory check cycle, it notifies the microprocessor 24 of the result (cache hit/cache miss) and performs the following operations.

まず本実施例のようにデイスクリードが要求されている
状態でキャツシュヒツトが判定された場合には、キャッ
シュ制御部29は、ディレクトリメモリ28の各エント
リと例えば1対1で対応するキャッシュデータメモリ2
7内のブロックのうち、キャツシュヒツト判定の対象と
なったディレクトリメモリ28内エントリに対応するキ
ャッシュデーダメモリ2フ内ブロックを対象に周知のキ
ャッンユリード動作を行う。このリード動作によってキ
ャッンユデータメモリ27から読■されたデータは内部
バス25を介してFIFO/<ッファ22に一時格納さ
れ、(ホスト装置から要求されたデータたけか)周知の
転送制御によってホストインタフェース23経山でホス
ト装置に転送される。
First, when a cache hit is determined in a state where a disk read is requested as in this embodiment, the cache control unit 29 controls the cache data memory 2 corresponding to each entry in the directory memory 28 on a one-to-one basis.
A well-known read operation is performed on the block in the cache data memory 2 which corresponds to the entry in the directory memory 28 that is the target of the cash hit determination. The data read from the cache data memory 27 by this read operation is temporarily stored in the FIFO buffer 22 via the internal bus 25, and transferred to the host interface (as much data as requested by the host device) by well-known transfer control. It is transferred to the host device at 23 Kyozan.

一方、デイスクリードが要求されている状態でキャソン
ユミスが判定された場合には、キャッシュ制御部29は
、ディレクトリメモリ28に空きエンI・りかあれば同
エントリを、空きエントリがなければディレクトリチェ
ックザイクルの最後に参照したエンドす(即ぢ優先度情
報Pの示す優先度か最も低いエンドす)を、新たなディ
レクトリ情報登録対象エントリ (置換対象エントリ)
として選択する。そしてキャッシュ制御部29は、DA
R2Gからのヘットアドレス並びにシリンダアドレスの
連結アl” l/スをディスクアドレス情報ADRとし
、マイクロプロセッサ24か受取ったホスト装置からの
優先度情報を優先度情報Pとするブイレフトリ情報を、
選択したキャッシュ制御部29内エントリに登録する。
On the other hand, if it is determined that a disk read is requested and a disk read is requested, the cache control unit 29 reads the same entry if there is a free entry in the directory memory 28, or executes the directory check cycle if there is no free entry. The last referenced end (the end with the lowest priority indicated by the priority information P) is created as a new directory information registration target entry (replacement target entry).
Select as. Then, the cache control unit 29 controls the DA
The linkage of the head address and cylinder address from R2G is disk address information ADR, and the priority information received from the host device by the microprocessor 24 is priority information P.
It is registered in the selected entry in the cache control unit 29.

このときキャッシュ制御部29は、ホスト装置からの優
先度情報の示す優先度とディレクトリメモリ28に登録
済みの各エントリ中の優先度情報Pの示す優先度とをも
とに、次の動作を行う。
At this time, the cache control unit 29 performs the following operation based on the priority indicated by the priority information from the host device and the priority indicated by the priority information P in each entry registered in the directory memory 28. .

まず、前者(ホスト装置からの優先度情報)の示す優先
度か、後者(ディレクトリメモリ28に登録済みの各エ
ントリ中の優先度情報P)の示すいずれの優先度よりも
低い場合には、キャッシュ制御部29は選択したエント
リの次ポインタ情報NPをヌル値とする。また、前者の
示す優先度か後者の示すいずれの優先度よりも高い場合
には、キャッシュ制御部29は選択したエントリの次ポ
インタ情報NPをそれまでの最優先度エントリを指すよ
うに設定し、且つ最優先度エントリポインタを選択した
エントリを指すように更新すると共にその時点で最も優
先度の低いエントリの次ポインタ情報NPをヌル値とす
る。また、前者の示す優先度か後者の示す優先度のうち
の最低優先度より高く最高優先度より低い場合には、キ
ャッシュ制御部29は選択したエントリの次ポインタ情
報NPを次の優先度のエントリを指ずように設定し、且
つ前者の次に優先度か低いエントリの次ポインタ情報N
Pを選択したエントリを指すように更新すると共にその
時点で最も優先度の低いエントリの次ポインタ情報NP
をヌル値とする。以上により、選択したエントリを含む
キャッシュ制御部29内の有効エントリか、次ポインタ
情報NPによって優先度順に正しくリンクされる。
First, if the priority is lower than either the priority indicated by the former (priority information from the host device) or the latter (priority information P in each entry registered in the directory memory 28), the cache The control unit 29 sets the next pointer information NP of the selected entry to a null value. Further, if the priority indicated by the former is higher than either of the priorities indicated by the latter, the cache control unit 29 sets the next pointer information NP of the selected entry to point to the previous highest priority entry, In addition, the highest priority entry pointer is updated to point to the selected entry, and the next pointer information NP of the lowest priority entry at that time is set to a null value. Further, if the priority indicated by the former or the priority indicated by the latter is higher than the lowest priority and lower than the highest priority, the cache control unit 29 transfers the next pointer information NP of the selected entry to the next priority entry. and the next pointer information N of the entry with the next lowest priority after the former.
Update P to point to the selected entry and also update the next pointer information NP of the entry with the lowest priority at that point.
Let be a null value. As described above, the valid entries in the cache control unit 29 including the selected entry are correctly linked in order of priority by the next pointer information NP.

一方マイクロプロセッザ24は、キャッンユ制御部29
からキャッシュミスか通知されると、HD C21の制
御によってシークされていた磁気ディスク装置10上の
トラック(データブロック)からのデイスクリードを行
わせる。このディスクリートによって磁気ディスク装置
]Oから読出されたデータブロックは、上記選択したデ
ィレクトリメモリ28内エントリに対応するキャッシュ
データメモリのブロックへ格納されると共に、(ホスト
装置から要求されたデータたけか)ホストインタフ−1
5= エース23経由でポスト装置に転送される。
On the other hand, the microprocessor 24
When notified of a cache miss from the HDC 21, the HDC 21 causes the disk read from the track (data block) on the magnetic disk device 10 that was being sought. The data block read from the magnetic disk device]O by this discrete is stored in the block of the cache data memory corresponding to the entry in the directory memory 28 selected above, and (as much as the data requested from the host device) is stored in the cache data memory block. Interf-1
5 = Transferred to post device via Ace23.

なお、前記実施例では、キャッシュ制御部29内の有効
エントリが、次ポインタ情報NPによって優先度順にリ
ンクされ、キャッシュ制御部29は次ポインタ情報NP
を辿ることにより各エントリを優先度順に参照できるよ
うに構成されている場合について説明したか、ディレク
トリメモリ28内エントリの並び順が優先度順に一致す
るようにディレクトリ情報の登録エントリを管理するよ
うにしてもよい。但し、この方式では、新たなディレク
トリ情報登録動作が発生する毎に登録済みディレクトリ
情報の並べ替えが発生する。また、前記実施例では、1
データブロツクか1トラツクに対応する場合について説
明したが、例えば]データブロックを2”  (nは0
以上の整数)セクタとする場合にも、ディスクアドレス
情報ADRの構成を変えることで応用可能である。また
、1データブロツクが固定サイズでない場合にも、ディ
スクアドレス情報ADRをホスト装置からの(ヘッドア
ドレス、シリンダアドレス並びにセクタアドレスから成
る)ディスクアドレスとし、且つディレクトリ情報にサ
イズ情報、更には該当データブロックのキャッシュデー
タメモリ内格納先へのポインタ情報を(=I加すること
で応用可能である。
In the above embodiment, the valid entries in the cache control unit 29 are linked in order of priority by the next pointer information NP, and the cache control unit 29 is linked by the next pointer information NP.
We have explained the case where each entry can be referenced in the order of priority by tracing the directory information, or the registered entries of the directory information are managed so that the order of the entries in the directory memory 28 matches the order of priority. You can. However, in this method, the registered directory information is rearranged every time a new directory information registration operation occurs. In addition, in the above embodiment, 1
We have explained the case where the data block corresponds to 1 track, but for example] data block corresponds to 2" (n is 0
The above integer) sectors can also be applied by changing the configuration of the disk address information ADR. Furthermore, even when one data block is not a fixed size, the disk address information ADR is the disk address (consisting of head address, cylinder address, and sector address) from the host device, and the size information is added to the directory information, and the corresponding data block is This can be applied by adding (=I) pointer information to the cache data storage location in the memory.

[発明の効果] 以上詳述したようにこの発明によれば、ディレクトリメ
モリの各エントリがホスト装置からのディスクアクセス
要求時に通知された優先度情報の示す優先度順に参照さ
れてディレクトリチェックが行われるため、優先度が高
いデータブロックをアクセスする場合には高速ディレク
トリチェックか可能となる。また、ディレクトリチェッ
クによってキャッシュミスが判定された場合には、最も
優先度の低い優先度情報が設定されているディレクトリ
メモリ内エントリか置換対象エントリとして選択される
ので、優先度が高いデータブロックがキャッシュデータ
メモリから追出される虞はなく、この種データブロック
を対象とするディスクアクセス要求時のキャツシュヒツ
ト率が向上する。
[Effects of the Invention] As detailed above, according to the present invention, a directory check is performed by referring to each entry in the directory memory in the priority order indicated by the priority information notified at the time of a disk access request from the host device. Therefore, when accessing a data block with a high priority, a high-speed directory check is possible. In addition, if a cache miss is determined by the directory check, the entry in the directory memory that has the lowest priority information set is selected as the replacement target entry, so the data block with the highest priority is cached. There is no fear that the data block will be evicted from the data memory, and the cache hit rate when a disk access request is made for this type of data block is improved.

即ち、この発明によれば、高速処理を必要とする= 1
7− データブロックを対象とするディスクアクセス要求時の
キャツシュヒツト率並びにディレクトリチェック速度か
向上し、この種のデータブロックの高速アクセスが可能
となる。
That is, according to the present invention, high-speed processing is required = 1
7- The cash hit rate and directory check speed when requesting disk access to a data block are improved, making it possible to access this type of data block at high speed.

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

第1図はこの発明の一実施例に係るディスクキャッシュ
システムのブロック構成図である。 10・・・磁気ディスク装置、20・・・磁気ディスク
制御装置、24・マイクロプロセッサ、27・・・キャ
ッシュデータメモリ、28・・・ディレクトリメモリ、
29・・・キャッシュ制御部。 出願人代理人 弁理士 鈴江武彦
FIG. 1 is a block diagram of a disk cache system according to an embodiment of the present invention. DESCRIPTION OF SYMBOLS 10... Magnetic disk device, 20... Magnetic disk control device, 24... Microprocessor, 27... Cache data memory, 28... Directory memory,
29... Cache control unit. Applicant's agent Patent attorney Takehiko Suzue

Claims (1)

【特許請求の範囲】[Claims] ディスク装置の一部のデータの写しが置かれるキャッシ
ュデータメモリを備えたディスクキャッシュシステムに
おいて、上記キャッシュデータメモリに格納されている
データブロックを示すディスクアドレス情報、および同
ブロックの優先度を示す優先度情報を含むディレクトリ
情報を登録するための複数のエントリを有するディレク
トリメモリと、ホスト装置から上記優先度情報を含むデ
ィスクアクセス要求が与えられた場合に上記ディレクト
リメモリの各エントリを同エントリ中の上記優先度情報
の示す優先度の順に参照し、目的ディスクアクセス先の
データが上記キャッシュデータメモリに存在するか否か
をチェックするディレクトリチェック手段と、このディ
レクトリチェック手段のチェック結果に応じて上記ディ
レクトリ内エントリに上記ホスト装置からの上記優先度
情報を含む上記ディレクトリ情報を登録するディレクト
リ登録手段とを具備し、上記ディレクトリ情報登録手段
は上記ディレクトリメモリに空きエントリが存在しない
場合には最も優先度の低い上記優先度情報を含む上記デ
ィレクトリ情報が登録されている上記エントリを新たな
登録対象エントリとするように構成されていることを特
徴とするディスクキャッシュシステム。
In a disk cache system equipped with a cache data memory in which a copy of some data of a disk device is placed, disk address information indicating a data block stored in the cache data memory and a priority indicating the priority of the block. A directory memory having multiple entries for registering directory information including information, and when a disk access request including the above priority information is given from the host device, each entry in the directory memory is assigned the above priority among the same entries. a directory checking means for checking whether the data to be accessed on the target disk exists in the cache data memory by referring to the order of priority indicated by the priority information; and an entry in the directory according to the check result of the directory checking means. and a directory registration means for registering the directory information including the priority information from the host device, and the directory information registration means registers the directory information having the lowest priority when there is no free entry in the directory memory. A disk cache system characterized in that the entry in which the directory information including priority information is registered is set as a new entry to be registered.
JP63106268A 1988-04-28 1988-04-28 Disk cache system Pending JPH01276349A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63106268A JPH01276349A (en) 1988-04-28 1988-04-28 Disk cache system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63106268A JPH01276349A (en) 1988-04-28 1988-04-28 Disk cache system

Publications (1)

Publication Number Publication Date
JPH01276349A true JPH01276349A (en) 1989-11-06

Family

ID=14429337

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63106268A Pending JPH01276349A (en) 1988-04-28 1988-04-28 Disk cache system

Country Status (1)

Country Link
JP (1) JPH01276349A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005339299A (en) * 2004-05-28 2005-12-08 Hitachi Ltd Method for cache control of storage device
JP2011209892A (en) * 2010-03-29 2011-10-20 Fujitsu Ltd Storage system, control method of the same, switch device and storage device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005339299A (en) * 2004-05-28 2005-12-08 Hitachi Ltd Method for cache control of storage device
JP2011209892A (en) * 2010-03-29 2011-10-20 Fujitsu Ltd Storage system, control method of the same, switch device and storage device

Similar Documents

Publication Publication Date Title
US4870565A (en) Parallel transfer type director means
US5537573A (en) Cache system and method for prefetching of data
KR100252570B1 (en) Cache memory with reduced request-blocking
US6772288B1 (en) Extended cache memory system and method for caching data including changing a state field value in an extent record
US20020042863A1 (en) Storing a flushed cache line in a memory buffer of a controller
US6516389B1 (en) Disk control device
JP2000250812A (en) Memory cache system and managing method therefor
JPH06236322A (en) Cache system for disk array
US8656119B2 (en) Storage system, control program and storage system control method
US5696931A (en) Disc drive controller with apparatus and method for automatic transfer of cache data
US5586290A (en) Cache system of external storage device
US5293618A (en) Method for controlling access to a shared file and apparatus therefor
US6345320B1 (en) DMA address buffer and cache-memory control system
US6782444B1 (en) Digital data storage subsystem including directory for efficiently providing formatting information for stored records
US6735675B2 (en) Method and apparatus for altering data length to zero to maintain cache coherency
US5680577A (en) Method and system for processing multiple requests for data residing at the same memory address
US5900009A (en) System and method for accessing records in a cache slot which are associated with a current owner storage element or at least one previous owner storage element
US6182164B1 (en) Minimizing cache overhead by storing data for communications between a peripheral device and a host system into separate locations in memory
EP0173909B1 (en) Look-aside buffer least recently used marker controller
JP2943896B2 (en) Computer system and disk data control method
KR970029072A (en) Dual Directory Virtual Cache and Its Control Method
WO2002027498A2 (en) System and method for identifying and managing streaming-data
JPH01276349A (en) Disk cache system
US7421536B2 (en) Access control method, disk control unit and storage apparatus
JPH01159746A (en) Disk cache control system