JPH01125639A - Disk cache control system - Google Patents

Disk cache control system

Info

Publication number
JPH01125639A
JPH01125639A JP62284719A JP28471987A JPH01125639A JP H01125639 A JPH01125639 A JP H01125639A JP 62284719 A JP62284719 A JP 62284719A JP 28471987 A JP28471987 A JP 28471987A JP H01125639 A JPH01125639 A JP H01125639A
Authority
JP
Japan
Prior art keywords
cache
data
disk
write
erased
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
JP62284719A
Other languages
Japanese (ja)
Inventor
Yoshiro Hirai
平井 義郎
Tadahide Komatsu
小松 唯英
Nobuyoshi Sato
信義 佐藤
Mitsuo Sakurai
桜井 三男
Shigenori Koyata
小谷田 重則
Ichiro Nakano
中野 伊智郎
Masahiro Ikeda
昌弘 池田
Toshiyuki Kitami
北見 稔之
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP62284719A priority Critical patent/JPH01125639A/en
Publication of JPH01125639A publication Critical patent/JPH01125639A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To eliminate an access action end waiting state by retrieving the data to be erased by a specific method when the cache data written by a write- back system is erased. CONSTITUTION:A cache memory 14 is added to a CPU 10a containing a primary memory part 12 as an external memory area. The transfer of data is controlled by a cache control part 18 between the part 12 of the memory 14 and magnetic disks 16a-16d. When a host CPU 10a detects the mishit of the memory 14 during accesses to the disks 16a-16d, the part 18 retrieves a cache managing table 26, a directory table 32 and an action flag 34 set on a cache information table 24. Then data are written into a disk equal to an access object disk by a write-back system and at the same time the cache data having the lowest using frequency is defined as the erasion data of the memory 14. Thus an access waiting state is omitted and the processing performance can be improved in a disk cache control system.

Description

【発明の詳細な説明】 [1N要] キャッシュメモリのミスヒツト時に新たなデータ格納領
域を確保するためにキャッシュデータを消去するディス
クキャッシュ制御方式に関し、ライトバック方式で書込
まれたキャッシュデータの消去ffi理を効率良く行な
って処理性能を向上することを目的とし、 使用頻度の最も低いキャッシュデータを消去対象として
検索した時に、消去対象データがライトバック方式で書
込まれ且つアクセス対象ディスクと異なっていた場合に
は、次に使用頻度の低いキャッシュデータを消去対象と
して順次検索し、ライトバック方式で書込まれ且つアク
セス対象ディスクと同一であることを判別したときに、
この消去対象データをディスクに書込んだ後に消去する
[Detailed description of the invention] [Requires 1N] Regarding a disk cache control method that erases cache data in order to secure a new data storage area in the event of a cache memory miss, erase ffi of cache data written in a write-back method. When searching for the least frequently used cache data to be erased, the data to be erased was written using the write-back method and was different from the disk to be accessed. In this case, the cache data that is used less frequently is sequentially searched for deletion, and when it is determined that it has been written in the write-back method and is the same as the disk to be accessed,
This data to be erased is written to the disk and then erased.

[産業上の利用分野] 本発明は、キャッシュメモリのミスヒツト時に新たなデ
ータ格納領域を確保するためにキャッシュデータを消去
するディスクキャッシュ制御方式上位装置の主記憶領域
外の外部記憶エリアとしてのキャッシュメモリを備えた
情報処理装置にあっては、使用頻度の高い磁気ディスク
のデータを必要に応じてキャッシュメモリに格納しくス
テージング)、上位装置のリードアクセスでキャッシュ
メモリを参照して対応するキャッシュデータを読出すこ
とで高速のデータアクセス処理ができるようにしている
[Industrial Application Field] The present invention relates to a cache memory as an external storage area outside the main storage area of a host device using a disk cache control method that erases cache data in order to secure a new data storage area when a cache memory miss occurs. In information processing equipment equipped with a storage system, data on frequently used magnetic disks can be stored in cache memory as needed (staged), and the cache memory can be referenced and the corresponding cache data can be read by read access from the host device. This enables high-speed data access processing.

一方、上位装置からのアクセスでキャッシュメモリを参
照した際に対応するデータが格納されていなかった時、
即ちミスヒツト時には、キャッシュメモリの空き領域に
磁気ディスクからデータを書込んだ情にアクセス動作を
実行する。
On the other hand, when the cache memory is referenced by an access from a host device and the corresponding data is not stored,
That is, in the event of a miss, an access operation is executed based on data written from the magnetic disk to a free area of the cache memory.

このミスヒツト時にキャッシュメモリに空き領域がなけ
れば、キャッシュメモリに格納されている最も使用頻度
の低いデータを消去することで新たな格納領域を確保す
るようにしている。
If there is no free space in the cache memory at the time of this miss, a new storage area is secured by erasing the least frequently used data stored in the cache memory.

[従来の技術] 第4図はディスクキャッシュメモリを備えた従来システ
ムの説明図である。
[Prior Art] FIG. 4 is an explanatory diagram of a conventional system equipped with a disk cache memory.

第4図において、10aは上位装置としてのCPU、1
2はCPU10aの主記憶部である。
In FIG. 4, 10a is a CPU as a host device;
2 is a main storage section of the CPU 10a.

CPLJloaにはキャッシュ制御部18及び■10コ
ントローラ20を介して例えば4台の#1〜#4磁気デ
ィスク168〜16dが接続され、キャシュメモリ14
がキャッシュ制御部18を介してCPLJloaに接続
されている。
For example, four #1 to #4 magnetic disks 168 to 16d are connected to CPLJloa via a cache control unit 18 and a controller 20, and the cache memory 14
is connected to CPLJloa via the cache control unit 18.

第5図は第4図に示した従来システムにおけるキャッシ
ュ制御の概略を示した動作フロー図である。
FIG. 5 is an operational flow diagram showing an outline of cache control in the conventional system shown in FIG. 4.

まずステップS1でCPU10aからディスクアクセス
、例えば#1磁気ディスク18aのアクセスを受けると
、ステップS2で#1磁気ディスク18aとのバスを獲
得してディスクを起動し、続いてステップS3でキャッ
シュメモリ14のヒツト判定を行なうみ 次のステップS4ではリードアクセスかライトアクセス
かを判定しており、リードアクセスであればステップS
5に進んでヒツトか否か判別する。
First, when a disk access is received from the CPU 10a, for example, access to the #1 magnetic disk 18a, in step S1, a bus with the #1 magnetic disk 18a is acquired in step S2 and the disk is activated, and then, in step S3, the cache memory 14 is accessed. After performing the hit determination, in the next step S4, it is determined whether it is a read access or a write access, and if it is a read access, step S
Proceed to step 5 to determine whether it is a human or not.

ヒツトであればステップS8に進んでキャッシュメモリ
14から対応するデータを読出してCPLJloに転送
し、読出データを実行する。
If it is a hit, the process advances to step S8, where the corresponding data is read from the cache memory 14, transferred to CPLJlo, and the read data is executed.

一方、ミスヒツトであれば、ステップS6でキャッシュ
獲得処理を実行する。
On the other hand, if there is a miss, cache acquisition processing is executed in step S6.

このキャッシュ獲得処理は、キャシュメモリ14に空き
領域があればステップS5に進んで#1磁気ディスク1
8aからデータを読出してキャッシュメモリ14の空き
領域に書込んだ後にステップS8でキャッシュメモリ1
4からデータを読出してCPLJloaに転送する。ま
たキャッシュメモリ14に空き領域がない時には、使用
頻度の最も低いキャッシュデータを消去して新たな格納
領域を確保した後にステップS7でディスクデータを書
込み、ステップS8の読出動作に進む。
In this cache acquisition process, if there is free space in the cache memory 14, the process proceeds to step S5 and the #1 magnetic disk 1
After reading the data from 8a and writing it into the free area of the cache memory 14, in step S8 the data is read from the cache memory 1.
4 and transfers it to CPLJloa. If there is no free space in the cache memory 14, the least frequently used cache data is erased to secure a new storage area, then disk data is written in step S7, and the process proceeds to a read operation in step S8.

ところで、キャシュメモリ14に対するデータの格納方
式(ステージング方式)には、ライトバック方式とライ
トスルー方式の2つがある。このため、新たな格納領域
を確保するためのキャッシュデータの消去処理にあって
は、消去対象データがライトバック方式で書込まれてい
るかライトスルー方式で書込まれているかで処理内容が
異なる。
By the way, there are two methods for storing data in the cache memory 14 (staging methods): a write-back method and a write-through method. Therefore, in the process of erasing cache data to secure a new storage area, the content of the process differs depending on whether the data to be erased is written in the write-back method or the write-through method.

まず、ライトスルー方式で書込まれたキャッシュデータ
の消去は、同じデータが既に特定の磁気ディスクにも書
込まれているため、そのままキャッシュデータを消去す
ればよい。
First, to erase cache data written in the write-through method, since the same data has already been written to a specific magnetic disk, it is sufficient to simply erase the cache data.

これに対しライトバック方式にあっては、キャシュメモ
リのみにデータが書込まれているため、消去対象データ
を一端ディスクに書込んだ後に消去しなければならない
On the other hand, in the write-back method, since data is written only to the cache memory, the data to be erased must be written to the disk and then erased.

このキャシュメモリ14に対するライトスルー方式及び
ライトバック方式によるデータ書込みの詳細は、第5図
のステップS5でライトアクセスを判別したときの動作
フローから明らかになる。
The details of data writing to the cache memory 14 by the write-through method and the write-back method will become clear from the operational flow when write access is determined in step S5 of FIG. 5.

即ち、ステップS5でライトアクセスが判別されると、
ステップS9でヒツトか否か判定し、ヒツトであればス
テップS10に進んでライトバック方式かライトスルー
方式かを判別し、ライトスルー方式であれば、ステップ
S11でディスク及びキャッシュメモリの両方に同じデ
ータを書込む。
That is, when write access is determined in step S5,
In step S9, it is determined whether or not there is a hit. If it is a hit, the process proceeds to step S10 to determine whether the write-back method or the write-through method is used. If the write-through method is the write-through method, the same data is stored in both the disk and cache memory in step S11. Write.

またライトバック方式であれば、ステップS12に進ん
でキャッシュメモリ14のみにデータを書込む。
If it is the write-back method, the process advances to step S12 and data is written only to the cache memory 14.

一方、ステップS10でミスヒツトが判別されるとステ
ップS13に進んで同様に方式を判別し、ライトスルー
方式であればステップ314でディスクにデータを書込
む。またライトバック方式であればステップS15でキ
ャッシュ獲得処理を実行し、ステップS16でキャッシ
ュメモリ14にデータを書込む。
On the other hand, if a miss is determined in step S10, the process proceeds to step S13, where the method is similarly determined, and if it is the write-through method, data is written to the disk in step 314. If the write-back method is used, cache acquisition processing is executed in step S15, and data is written to the cache memory 14 in step S16.

ステップS15のキャッシュ獲得処理は、ステップS6
の5!!!理と同様、キャッシュメモリに空き領域があ
れば、空き領域にデータを書込み、空き領域がなければ
使用頻度の最も低いキャッシュデータを消去して新たな
格納領域を確保してデータを書込む。この時、消去対象
領域のキャッシュデータがライトバック方式で書込まれ
ていれば、消去対象データをディスクに書込んだ後に消
去するようになる。
The cache acquisition process in step S15 is performed in step S6.
5! ! ! Similarly, if there is free space in the cache memory, data is written to the free space, and if there is no free space, the least frequently used cache data is erased and a new storage space is secured to write data. At this time, if the cache data in the area to be erased is written in the write-back method, the data to be erased is written to the disk and then erased.

このようなキャッシュメモリのライトアクセス制御から
明らかなように、ライトバック方式で書込まれたキヤシ
ッユデータの消去については、消去対象データを必ずデ
ィスクに書込んだ後に消去する処理が必要となる。
As is clear from such write access control of the cache memory, when erasing cache data written in the write-back method, it is necessary to erase the data to be erased after writing it to the disk.

[発明が解決しようとする問題点] しかしながら、ライトバック方式で書込まれたキャッシ
ュデータを消去する際のディスク書込時に、書込対象と
なった磁気ディスクがアクセス動作中の場合があり、こ
の動作終了を待たなければ磁気ディスクに消去対象デー
タをキャッシュメモリから書込むことができない。
[Problems to be Solved by the Invention] However, when writing to a disk when erasing cache data written in the write-back method, there are cases where the magnetic disk to which data is written is in the process of being accessed. Data to be erased from the cache memory cannot be written to the magnetic disk until the end of the operation.

例えば、リードアクセスで#1磁気ディスク18aがア
クセス対象となり、消去対象となったキャッシュデータ
を書込む磁気ディスクが#2w1気ディスクであり、こ
のとき#2磁気ディスク18bが動作中であったとする
と、#2!i気ディスク18bの動作終了を侍ってバス
を獲得し、その後に消去対象となったキヤシッユデータ
を#2磁気ディスク18bに書込まなければならない。
For example, if the #1 magnetic disk 18a is accessed in a read access and the magnetic disk on which the cache data to be erased is written is the #2w1 disk, and the #2 magnetic disk 18b is in operation at this time, #2! It is necessary to wait for the end of the operation of the magnetic disk 18b to acquire the bus, and then write the cache data to be erased onto the #2 magnetic disk 18b.

このためライトバック方式で書込まれたキヤシッユデー
タの消去処理に時間が掛かり、キャッシュ消去処理が済
まなければCPU10aが読出命令を実行できないため
、処理性能が低下するという問題があった。
For this reason, it takes time to erase the cache data written in the write-back method, and the CPU 10a cannot execute the read command until the cache erase process is completed, resulting in a problem that the processing performance deteriorates.

一方、消去対象となったキャッシュデータを書込む#2
vi1気ディスク18bが停止中のときには動作終了を
持つ必要はないが、最初のアクセス処理で獲得した#1
磁気ディスク18aのバスを解放して#2磁気ディスク
18bのバスを獲得し、その後に消去対象データのディ
スク書込みを行なりな【プればならず、新たなバス獲得
を行なう分だけ処理時間がかかり、処理性能の低下につ
ながるという問題があった。
On the other hand, #2 writes the cache data to be erased.
When the vi1 disk 18b is stopped, there is no need to end the operation, but #1 acquired in the first access process
The bus of the magnetic disk 18a is released and the bus of the #2 magnetic disk 18b is acquired, and then the data to be erased must be written to the disk. There was a problem in that this process took a long time, leading to a decrease in processing performance.

本発明は、このような従来の問題点に鑑みてなされたも
ので、ライトバック方式で書込まれたキヤシッユデータ
の消去処理を効率良く行なって処理性能を向上するよう
にしたディスクキャッシュ制御方式を提供することを目
的とする。
The present invention has been made in view of such conventional problems, and provides a disk cache control method that efficiently erases cache data written in the write-back method and improves processing performance. The purpose is to

[問題点を解決するための手段] 第1図は本発明の原理説明図である。[Means for solving problems] FIG. 1 is a diagram explaining the principle of the present invention.

第1図において、上位装置10の主記憶部12に対し外
部記憶領域を形成するキャッシュメモリ14に磁気ディ
スク16a〜16dのデータを必要に応じて格納し、上
位装置10のアクセス時にキャッシュ制御部18でキャ
ッシュメモリ14のミスヒツトを検出した時には、使用
頻度の最も低いキャッシュデータを消去して新たなデー
タ格納領域を確保した侵にアクセス動作を実行するキャ
ッシュ制御方式を対象とする。
In FIG. 1, data on magnetic disks 16a to 16d is stored as necessary in a cache memory 14 forming an external storage area for the main storage unit 12 of the host device 10, and when accessed by the host device 10, a cache control unit 18 The present invention is directed to a cache control method in which, when a miss in the cache memory 14 is detected, the least frequently used cache data is erased to secure a new data storage area and an access operation is executed.

本発明のディスクキャッシュ制御方式にあっては、使用
頻度の最も低いキャッシュデータ、例えば使用頻度を格
納したキャッシュ管理テーブルから使用頻度の最も低い
キャッシュブロックqを検索したときに、キャッシュブ
ロックqで指定されるキャッシュデータがライトバック
方式で書込まれたか否か且つアクセス対象ディスクが同
一ディスクか否かをキャッシュ情報テーブルを参照して
判別する。
In the disk cache control method of the present invention, when searching for the least frequently used cache block q from the cache management table that stores the least frequently used cache data, for example, the cache data that is specified by the cache block q, It is determined by referring to the cache information table whether the cache data has been written in the write-back method and whether the disks to be accessed are the same disk.

消去対象ブロックqのキャッシュデータはライトバック
方式で且つアクセス対象ディスク#1とは異なるディス
ク#2であることから、このキャッシュデータは消去対
象とせず、次に使用頻度の低いキャッシュブロックfを
検索し、同様にライトバック方式で且つアクセス対象デ
ィスクと同一か否か判定する。
Since the cache data of block q to be erased is written back and is on disk #2 which is different from disk #1 to be accessed, this cache data is not targeted for erasure, and the cache block f that is used less frequently is searched next. , similarly uses the write-back method and determines whether the disk is the same as the access target disk.

このキャシュブロックfのキャッシュデータも判定条件
を満足しないことから次に使用頻度の低いにキャッシュ
ブロックiを検索して判別すると、キャッシュブロック
iのキャッシュデータはライトバック方式で且つアクセ
ス対象ディスク#1と同一であることから、これを消去
対象データとしてディスク#1に書込んだ優にキャッシ
ュデータを消去する。
Since the cache data of this cache block f also does not satisfy the judgment conditions, the cache block i is next searched for and determined as the least frequently used cache block. Since they are the same, this data is set as data to be erased and the cache data written on disk #1 is erased.

勿論、消去対象データがライトスルー方式であれば、そ
のままキャッシュデータを消去する。
Of course, if the data to be erased is of the write-through type, the cache data is erased as is.

[作用] 使用頻度の最も低い消去対象データがライトバック方式
であったときには、アクセス対象ディスクと同一ディス
クでない限り次に使用頻度の低いキャッシュデータを消
去対象として順次検索し、この消去データの検索処理を
アクセス対象ディスクと同一ディスクのライトバックデ
ータが得られるまで行なう。
[Operation] When the least frequently used data to be erased is the write-back method, unless the disk is the same as the accessed disk, the next least frequently used cache data is sequentially searched for erasing, and the search process for this erased data is performed. This process is repeated until write-back data for the same disk as the access target disk is obtained.

そのため最終的に消去対象として検索されたライトバッ
ク方式のキャッシュデータはアクセス対象ディスクと同
一ディスクの格納データとなり、このディスクは最初の
アクセス処理によるバス獲得で既に書込可能状態になっ
ていることから、直ちに消去対象データをディスクに書
込んでキャッシュデータを消去することができ、アクセ
ス対象ディスクとライトバック対象ディスクが異なるこ
とに起因したディスク動作の終了待ちや新たなバス獲得
処理が不要となり、ライトバック方式のキャッシュデー
タの消去処理を効率良くでき、処理性能を更に向上する
ことができる。
Therefore, the write-back cache data that is finally searched for deletion is data stored on the same disk as the access target disk, and this disk is already in a writable state when the bus is acquired in the first access process. , data to be erased can be immediately written to the disk and cache data can be erased, eliminating the need to wait for disk operations to complete or acquire a new bus due to differences in the disk to be accessed and the disk to be written back. Back-up cache data erasure processing can be performed efficiently, and processing performance can be further improved.

[実施例コ 第2図は本発明の一実施例を示した実施例構成図である
Embodiment FIG. 2 is a block diagram showing an embodiment of the present invention.

第2図において、10は上位装置としてのCPUであり
、主記憶部12を接続している。CPU10に対する外
部記憶領域としてキャッシュメモリ14が設けられ、こ
の実施例においてキャッシュメモリ14はブロック番号
a−jで示す10個のエントリブロックで構成されてい
る。キャッシュメモリ14はキャッシュ制御部18のコ
ントローラ22を介して主記憶部12を備えたCPU 
10と接続される。また、キャッシュ制御部18のコン
トローラ22及びI10コントローラ20を介して複数
の磁気ディスク、この実施例にあっては#1〜#4の磁
気ディスク16a〜16dが接続される。
In FIG. 2, 10 is a CPU as a host device, to which a main storage unit 12 is connected. A cache memory 14 is provided as an external storage area for the CPU 10, and in this embodiment, the cache memory 14 is composed of ten entry blocks indicated by block numbers aj. The cache memory 14 is connected to a CPU including a main memory section 12 via a controller 22 of a cache control section 18.
Connected to 10. Further, a plurality of magnetic disks, in this embodiment, magnetic disks #1 to #4 16a to 16d are connected via the controller 22 of the cache control unit 18 and the I10 controller 20.

キャッシュ制御部18は#1〜#4磁気ディスク168
〜16dとキャッシュメモリ14との間のデータ転送制
御及びキャッシュメモリ14と主記憶部12との間のデ
ータ転送制御を行なう。
The cache control unit 18 includes #1 to #4 magnetic disks 168
~16d and the cache memory 14 and data transfer control between the cache memory 14 and the main storage section 12.

コントローラ22を備えたキャッシュ制御部18には、
キャッシュメモリ14の消去処理に使用するキャッシュ
情報を格納したキャッシュ情報テーブル24が設けられ
ている。このキャッシュ情報テーブル24は、キャッシ
ュメモリ14の各エントリブロックを示すブロック番号
a−jに対応して使用頻度を表すキャッシュ管理テーブ
ル26と、ブロック番号a−jのキャッシュデータがう
イトバック方式であるかライトスルー方式であるか、ま
た対象ディスク#1〜#4との関係を示すディレクトリ
テーブル32、更に#1〜#4の磁気ディスク168〜
16dの動作フラグ34とで構成される。
The cache control unit 18 including the controller 22 includes:
A cache information table 24 is provided that stores cache information used for erasing the cache memory 14. This cache information table 24 includes a cache management table 26 that indicates the frequency of use corresponding to block numbers a to j that indicate each entry block of the cache memory 14, and whether or not the cache data of block numbers a to j is a write-back method. A directory table 32 indicating whether the write-through method is used and the relationship with the target disks #1 to #4, and magnetic disks 168 to #1 to #4.
16d and an operation flag 34.

即ち、キャッシュ管理テーブル26は左側の枠外に示す
キャッシュメモリ14のブロック番号a〜jについて、
各ブロック番号毎にその1つ前にアクセスされたブロッ
ク番号(3efore )と、1つ後にアクセスされた
ブロック番号(Next)をチェーン構造により記憶し
ている。更にキャッジ゛   ユ管理テーブル26に附
随してLRLI・レジスタ28とMRtJレジスタ30
が設けられ、LRLJレジスタ28には最も古くアクセ
スされたブロック番号、例えばブロック番号Qが格納さ
れ、MRLJレジスタ30には最も新しくアクセスされ
たブロック番号、例えばブロック番号すが格納されてい
る。
That is, the cache management table 26 has block numbers a to j of the cache memory 14 shown outside the left frame.
For each block number, the block number accessed immediately before (3efore) and the block number accessed after (Next) are stored in a chain structure. Furthermore, the LRLI register 28 and the MRtJ register 30 are attached to the cache unit management table 26.
The LRLJ register 28 stores the oldest accessed block number, for example block number Q, and the MRLJ register 30 stores the latest accessed block number, for example block number S.

即ち、最も新しくアクセスされたMRUレジスタ30の
ブロック番号すが最も使用頻度が高く、−方、LRUレ
ジスタ28に格納された最も古くアクセスされたブロッ
ク番号qが最も低い使用頻度を示す。
That is, the block number of the MRU register 30 that was accessed most recently has the highest frequency of use, and the block number q that has been accessed the oldest stored in the LRU register 28 has the lowest frequency of use.

また、ディレクトリテーブル32には通常ディスクアド
レスやキャッシュアドレス等から成るエントリーである
が、この実施例にあっては本発明の制御に必要なディレ
クトリテーブルの一部を構成するライトバック方式かラ
イトスルー方式かのデータ及びディスク機番のみを示し
ている。更に、ディスク動作フラグ34はディスク機番
#1〜#4につき、動作中のときフラグ「1」となり、
停止でフラグ「0」となる。
The directory table 32 usually has entries consisting of disk addresses, cache addresses, etc., but in this embodiment, a write-back method or a write-through method is used, which constitutes a part of the directory table necessary for the control of the present invention. Only the data and disk machine number are shown. Further, the disk operation flag 34 becomes "1" when the disk machine numbers #1 to #4 are in operation,
The flag becomes "0" when it stops.

次に、第3図の動作フローを参照して第2図の実施例に
おけるキャッシュ獲得処理を説明する。
Next, the cash acquisition process in the embodiment shown in FIG. 2 will be explained with reference to the operational flow shown in FIG.

尚、第3図の動作フローは上位装置としてのCPU10
よりキャッシュ制御部18に対しリードアクセスが行な
われた場合を示している。
Note that the operation flow in FIG. 3 is based on the CPU 10 as a host device.
This shows a case where a read access is made to the cache control unit 18.

第3図において、まずステップS1でキャッシュ制御部
18のコントローラ22に対しCPU 10が特定の磁
気ディスク、例えば#1磁気ディスク16aを対象とし
たリードアクセスを行なったとすると、ステップS2に
進んでアクセス対象となった#1磁気ディスク16aが
動作中か否か判別する。このときディスク動作フラグ3
4から明らかなように、#1磁気ディスク16aは動作
フラグが「0」となって停止中にあることから、ステッ
プS3に進み#1磁気ディスク16aのバスをI10コ
ントローラ20を介してIIIする。
In FIG. 3, first, in step S1, the CPU 10 performs a read access to a specific magnetic disk, for example, the #1 magnetic disk 16a, to the controller 22 of the cache control unit 18. It is determined whether or not the #1 magnetic disk 16a is in operation. At this time, disk operation flag 3
As is clear from 4, since the #1 magnetic disk 16a is stopped with the operation flag set to "0", the process proceeds to step S3, and the bus of the #1 magnetic disk 16a is connected to the bus via the I10 controller 20.

ステップS1で#1磁気ディスク16aのバス獲得を行
なうと、次のステップS4でキャッシュ制御部18がキ
ャッシュメモリ14を検索してリードアクセスを受けた
データがキャッシュメモリ14に格納されているか否か
のヒツト判定を行なう。
When the bus for the #1 magnetic disk 16a is acquired in step S1, the cache control unit 18 searches the cache memory 14 in the next step S4 and determines whether or not the data that has been read accessed is stored in the cache memory 14. Perform human judgment.

ステップS4のヒツト判定でリードアクセスを受けたデ
ータがキャッシュメモリ14に格納されてないミスヒツ
トを判定すると、ステップS5に進んでキャッシュ管理
テーブル26に対応して設けたLRUレジスタ28の格
納ブロック番号を参照する。即ち、最も使用頻度の低い
キャッシュブロックの番号を参照する。
If it is determined in the hit determination in step S4 that there is a miss in which the data that has been read accessed is not stored in the cache memory 14, the process proceeds to step S5 and refers to the storage block number of the LRU register 28 provided corresponding to the cache management table 26. do. That is, the number of the least frequently used cache block is referred to.

このときLRUレジスタ28にはブロック番号qが格納
されていることから、ステップS6に進んでキャッシュ
メモリ14のブロックqに格納されたキャッシュデータ
がライトバック方式により書込まれているか否かディレ
クトリテーブル32を参照して判別する。ディレクトリ
テーブル32から明らかなように、ブロックqのキャッ
シュデータはライトバック方式であることから、次のス
テップS7に進んで同一ディスクか否かを同じくディレ
クトリテーブル32を参照して判別する。
At this time, since the block number q is stored in the LRU register 28, the process advances to step S6 and the directory table 32 is checked to see if the cache data stored in the block q of the cache memory 14 has been written by the write-back method. Determine by referring to . As is clear from the directory table 32, since the cache data of block q is of the write-back type, the process advances to the next step S7, and it is determined by referring to the directory table 32 whether or not they are the same disk.

ここで、ディレクトリテーブル32からブロック番号Q
のキャッシュデータは#2磁気ディスク16bであり、
ステップS1でリードアクセスを受けた#1磁気ディス
ク16aとは異なることからステップS8に進む。ステ
ップ°S8にあってはキャッシュ管理テーブル26を参
照して最も使用頻度の低いブロックgの1つ俊のブロッ
ク番号を検索する。即ち、キャッシュ管理テーブル26
のブロック番@qにおける1つ後ろにアクセスされたブ
ロック番号はfであることから、このブロック番号fが
検索結果として得られる。
Here, from the directory table 32, block number Q
The cache data is #2 magnetic disk 16b,
Since the #1 magnetic disk 16a is different from the #1 magnetic disk 16a that received the read access in step S1, the process advances to step S8. In step S8, the cache management table 26 is referred to to search for the block number of one of the least frequently used blocks g. That is, the cache management table 26
Since the next accessed block number in block number @q is f, this block number f is obtained as the search result.

ステップS8でブロック番号fを検索すると再びステッ
プS6に戻り、ディレクトリテーブル32を参照してブ
ロック番号fがライトバック方式か否か判別する。ディ
レクトリテーブル32にはブロック番号fがライトバッ
ク方式であり、且つ対象ディスクが#3磁気ディスク1
6cであることが示されている。従って、ステップS6
ではブロック番号fがライトバック方式であることから
ステップS7に進み、ステップS7ではステップS1で
リードアクセスを受けた#1磁気ディスク16aとは異
なることから、再びステップ$8に進み、キャッシュ管
理テーブル26を参照してブロック番号fの1つ俊ろに
アクセスされたブロック番号を検索する。即ち、キャッ
シュ管理テーブル26のブロック番号fを参照すると1
っ俊ろにアクセスされたブロック番号としてブロック番
号iが格納されているため、ブロック番号iが検索され
て再びステップS6に戻る。ステップS6でブロック番
号iのディレクトリテーブル32を参照すると、ブロッ
ク番号iはライトバック方式で且つ対象ディスクが#1
磁気ディスク16aである。このためブロック番号iは
ライトバック方式であることからステップS7に進み、
ステップS7で同一ディスク#1磁気ディスク16aで
あることが判別され、ステップS9に進んでキャッシュ
メモリのブロック番号iのキャッシュデータを#1磁気
ディスク16aに書込んだ後にキャッシュデータを消去
して空エントリーを確保するライトバック処理を行ない
、一連のキャッシュ獲得処理を終了する。
After searching for the block number f in step S8, the process returns to step S6 again, and the directory table 32 is referred to to determine whether the block number f is of the write-back type. In the directory table 32, the block number f is write-back type, and the target disk is #3 magnetic disk 1.
6c. Therefore, step S6
Then, since the block number f is of the write-back type, the process proceeds to step S7, and in step S7, since it is different from the #1 magnetic disk 16a that received the read access in step S1, the process proceeds to step $8 again, and the cache management table 26 The block number most recently accessed by block number f is searched by referring to the block number f. That is, when referring to the block number f in the cache management table 26, it is 1.
Since block number i is stored as a block number that has been accessed quickly, block number i is searched and the process returns to step S6. When the directory table 32 of block number i is referred to in step S6, block number i is write-back type and the target disk is #1.
This is a magnetic disk 16a. Therefore, since block number i is of the write-back type, the process advances to step S7.
In step S7, it is determined that the disk is the same #1 magnetic disk 16a, and the process proceeds to step S9, where the cache data of block number i of the cache memory is written to the #1 magnetic disk 16a, and then the cache data is erased to create an empty entry. Write-back processing is performed to secure the cache, and the series of cache acquisition processing ends.

一方、ステップS6でLRUレジスタ28の格納ブロッ
ク番号、或いはステップS8の処理で検索されたブロッ
ク番号のキャッシュデータがライトスルー方式であった
場合には、ステップS10に進んでそのままキャッシュ
データを消去して空エントリーを獲得する。
On the other hand, if the storage block number of the LRU register 28 in step S6 or the cache data of the block number searched in the process of step S8 is of the write-through type, the process advances to step S10 and the cache data is directly erased. Get a blank entry.

この本案第3図に示すキャッシュ獲得動作によりキャッ
シュメモリ14に新たな空エントリーが確保できたなら
ば、第5図の動作フローのリードアクセスのステップS
7.S8に示すように、磁気ディスクからキャッシュメ
モリに獲得した空エントリーにデータを書込み、書込み
後にデータを読出してCPU10に転送するようになる
If a new empty entry is secured in the cache memory 14 by the cache acquisition operation shown in FIG. 3 of this proposal, then step S of the read access of the operation flow of FIG.
7. As shown in S8, data is written from the magnetic disk to the acquired empty entry in the cache memory, and after writing, the data is read and transferred to the CPU 10.

また、第3図の動作フローはcpuioからリードアク
セスを受けたときのキャッシュ獲得処理を示すものであ
ったが、第5図の動作フローに示したように、ライトア
クセスのミスヒツト時にライトアクセスデータがライト
バック方式であったときのステップS5でもキャッシュ
獲得処理が行なわれることから、このライトアクセスの
キャッシュ獲得処理にあっても第3図のリードアクセス
のキャッシュ獲得処理と同様のキャッシュ消去処理が実
行される。
Furthermore, the operation flow in Figure 3 shows the cache acquisition process when a read access is received from CPUIO, but as shown in the operation flow in Figure 5, write access data is lost when a write access misses. Since the cache acquisition process is also performed in step S5 when the write-back method is used, the same cache erase process as the read access cache acquisition process in FIG. 3 is executed in this write access cache acquisition process. Ru.

[発明の効果] 以上説明してきたように本発明によれば、キャッシュメ
モリのミスヒツト時のライトバック方式により書込まれ
たキャッシュデータの消去につき、キャッシュメモリの
消去対象データを書込むディスクのアクセス動作終了持
ちや新たなバス獲得によるディスク書込みを不要にして
処理効率を高め、処理性能をより一層向上することがで
きる。
[Effects of the Invention] As described above, according to the present invention, when erasing cache data written by the write-back method when a cache memory miss occurs, the disk access operation for writing data to be erased from the cache memory is It is possible to improve processing efficiency by eliminating the need for disk writing due to termination or acquisition of a new bus, and further improve processing performance.

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

第1図は本発明の原理説明図: 第2図は本発明の一実施例を示した実施例構成図;第3
図は本発明のキャッシュ獲得動作フロー図;第4図は従
来システムの説明図: 第5図は従来のディスクキャッシュ制御の概略を示した
動作フロー図である。 図中、 10:上位装置 10a:CPU 12:主記憶部 14:キャッシュメモリ 16a〜16d:#1〜#4磁気ティスク18:キャッ
シュ制御部 20:I10コントローラ 22:コントローラ 24:キャッシュ情報テーブル 26:キャッシュ管理テーブル 28 : LRUレジスタ 30:MRUレジスタ 32:ディレクトリテーブル 34:ディスク動作フラグ qL恥システム占労−口月図 第4図
Fig. 1 is a diagram explaining the principle of the present invention; Fig. 2 is an embodiment configuration diagram showing one embodiment of the present invention; Fig. 3
4 is an explanatory diagram of a conventional system. FIG. 5 is an operational flow diagram showing an outline of conventional disk cache control. In the figure, 10: Host device 10a: CPU 12: Main storage unit 14: Cache memory 16a to 16d: #1 to #4 Magnetic disk 18: Cache control unit 20: I10 controller 22: Controller 24: Cache information table 26: Cache Management table 28: LRU register 30: MRU register 32: Directory table 34: Disk operation flag qL Shame system occupation - Mouth figure Figure 4

Claims (2)

【特許請求の範囲】[Claims] (1)上位装置(10)の主記憶部(12)対し外部記
憶領域を形成するキャッシュメモリ(14)にディスク
装置(16)のデータを必要に応じて格納し、上位装置
(10)のアクセス時にキャッシュ制御部(18)で前
記キャッシュメモリ(14)のミスヒットを検出した時
には使用頻度の最も低いキャッシュデータを消去して新
たなデータ格納領域を確保した後にアクセス動作を実行
するディスクキャッシュ制御方式であつて、 使用頻度の最も低いキャッシュデータを消去対象として
検索した時に、該消去対象データがライトバック方式で
書込まれ且つアクセス対象ディスクと異なっていた場合
には、次に使用頻度の低いキャッシュデータを消去対象
として順次検索し、該キャッシュデータがライトバック
方式で書込まれ且つアクセス対象ディスクと同一ディス
クのとき、該消去対象データをアクセス対象ディスクに
書込んだ後に該キャッシュデータを消去するようにした
ことを特徴とするディスクキャッシュ制御方式。
(1) The data of the disk device (16) is stored as necessary in the cache memory (14) that forms a storage area external to the main storage unit (12) of the host device (10), and accessed by the host device (10). A disk cache control method that executes an access operation after erasing the least frequently used cache data and securing a new data storage area when the cache control unit (18) detects a miss in the cache memory (14). When searching for the least frequently used cache data to be erased, if the data to be erased was written in the write-back method and is different from the disk to be accessed, the next least frequently used cache data is searched for. Data is sequentially searched for erasure, and when the cache data is written in the write-back method and is the same disk as the access target disk, the cache data is erased after writing the erasure target data to the access target disk. A disk cache control method characterized by:
(2)前記消去対象となるキャッシュデータがライトス
ルー方式で書込まれていた場合には、そのままキヤシッ
ユデータを消去するようにしたことを特徴とする特許請
求の範囲第1項記載のディスクキャッシュ制御方式。
(2) The disk cache control method according to claim 1, wherein if the cache data to be erased has been written in a write-through method, the cache data is erased as is. .
JP62284719A 1987-11-11 1987-11-11 Disk cache control system Pending JPH01125639A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62284719A JPH01125639A (en) 1987-11-11 1987-11-11 Disk cache control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62284719A JPH01125639A (en) 1987-11-11 1987-11-11 Disk cache control system

Publications (1)

Publication Number Publication Date
JPH01125639A true JPH01125639A (en) 1989-05-18

Family

ID=17682094

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62284719A Pending JPH01125639A (en) 1987-11-11 1987-11-11 Disk cache control system

Country Status (1)

Country Link
JP (1) JPH01125639A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008305054A (en) * 2007-06-06 2008-12-18 Fujitsu Ltd Storage management device, storage system, storage management method, and storage management program
CN103076992A (en) * 2012-12-27 2013-05-01 杭州华为数字技术有限公司 Memory data buffering method and device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008305054A (en) * 2007-06-06 2008-12-18 Fujitsu Ltd Storage management device, storage system, storage management method, and storage management program
CN103076992A (en) * 2012-12-27 2013-05-01 杭州华为数字技术有限公司 Memory data buffering method and device

Similar Documents

Publication Publication Date Title
EP0077453B1 (en) Storage subsystems with arrangements for limiting data occupancy in caches thereof
US6216199B1 (en) Hardware mechanism for managing cache structures in a data storage system
EP0077452B1 (en) Data promotion in storage subsystems
US5418929A (en) Controller for storage unit and method of controlling storage unit
US4500954A (en) Cache bypass system with post-block transfer directory examinations for updating cache and/or maintaining bypass
EP1399823B1 (en) Using an l2 directory to facilitate speculative loads in a multiprocessor system
JPH0458051B2 (en)
JPH0799509B2 (en) How to control the entry of a block of data into memory
KR930022222A (en) Apparatus and method for providing multiple outstanding operations in a multiprocessor computer system with a consistent cache
US20130185514A1 (en) Cache management of track removal in a cache for storage
US6256708B1 (en) Auxiliary buffer for direct map cache
JPS6326417B2 (en)
JPH04336641A (en) Data cache and method for use in processing system
JPH01125639A (en) Disk cache control system
EP0170525B1 (en) Cache hierarchy design for use in a memory management unit
JP4506292B2 (en) Cache control method, data processing system, and processing program therefor
JPH04191946A (en) Snoop cache memory control system
JPH01159746A (en) Disk cache control system
JP3335919B2 (en) Disk cache controller
JP2854667B2 (en) Disk cache control method
JP3503480B2 (en) Cache memory control method and device
JPH0728701A (en) Computer system
JPH01314354A (en) Cache memory control system
JPH045740A (en) Disk cache controlling system
JPH0795299B2 (en) Database update processing method