JPH01209549A - キャッシュ制御方式 - Google Patents

キャッシュ制御方式

Info

Publication number
JPH01209549A
JPH01209549A JP63034338A JP3433888A JPH01209549A JP H01209549 A JPH01209549 A JP H01209549A JP 63034338 A JP63034338 A JP 63034338A JP 3433888 A JP3433888 A JP 3433888A JP H01209549 A JPH01209549 A JP H01209549A
Authority
JP
Japan
Prior art keywords
group
registration
blocks
buffer memory
registered
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
JP63034338A
Other languages
English (en)
Inventor
Naoyuki Nishimura
尚幸 西村
Yasuyuki Higashiura
康之 東浦
Shigeru Hashimoto
繁 橋本
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 JP63034338A priority Critical patent/JPH01209549A/ja
Publication of JPH01209549A publication Critical patent/JPH01209549A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔概 要〕 本発明はキャッシュ制御方式に関し、 ディスクキャッシュにおけるバッファメモリ(キャッシ
ュメモリ)の使用率および検索時間を改善することを目
的とし、 複数の登録領域を備えた登録テーブルと、アクセス対象
の複数の前記ブロックをグループ分けするグループ識別
情報を登録したグループテーブルと、バッファメモリに
転送される該ブロックを登録テーブルの所定の登録領域
に登録するとともに同一グループの該ブロックの登録領
域を連係処理する登録処理部と、アクセスされたブロッ
クアドレスに基づき前記グループテーブルを参照し、該
ブロックの属するグループを判別して前記連係された登
録領域を検索する検索部と、登録されたグループ別登録
数を所定時間ごとに計数しその計数値に基づき各グルー
プの登録数を均一にする所定の基準でグループ分けの変
更処理を行うとともに酸グループテーブルに登録するグ
ループ処理部とを設け、該ブロックをグループ別に連係
して登録し検索するとともに、所定時間ごとにグループ
別登録数を計数してグループ分けの変更処理を行うよう
に構成する。
〔産業上の利用分野〕
本発明はキャッシュ制御方式、特にディスク装置に対す
るアクセス速度を改善するディスクキャッシュ制御方式
の改良に関する。
近年、外部記憶装置、主としてディスクのアクセス速度
を改善するため、ディスクキャッシュシステムがよく使
用されている。
これは、ディスクに書込み読出しされるデータをブロッ
ク単位でバッファメモリに格納しておき、次にアクセス
されるデータがそのバッファメモリに存在していればそ
のバッファメモリをアクセスする方式で、アクセス頻度
の高いデータブロックがバッファメモリに存在していれ
ばアクセス速度は大幅に改善される。
このディスクキャッシュにおいて、バッファメモリにデ
ータ(以下転送単位をブロックとする)を登録する方法
として、従来では、アクセスされたブロックアドレスに
成る関数を施してアドレスを圧縮し、その圧縮されたア
ドレスに基づいて登録する方法が採用されている。
このように圧縮されたアドレスを使用すると他のブロッ
クアドレスのそれと重畳することがあるため、複数組(
例えば4組の場合は4wayと称する)の登録テーブル
(従ってバッファメモリ)を設けて、1way目が登録
済みであれば2way目に、のごとく順次登録するよう
に構成されている。
しかし、このような登録方法では、各ブロックが平均し
てアクセスされないと、関数の演算方法によっては登録
テーブルおよびバッファメモリの使用効率が悪くなると
いう問題点がある。
また、使用効率を改善するため、すべてのwayで空き
領域がないときは他の関数を用いて登録領域を演算する
という方法が採用されるが、この演算処理をプログラム
で行う装置では検索速度が低下するという問題点もある
このため、検索速度を低下させずバッファメモリの使用
効率を改善するキャッシュ制御方式が求められている。
〔従来の技術〕
第6図はディスクシステムブロック図、第7図はディス
クキャッシュ説明図である。
第6図はディスク装置を備えたデータ処理装置を示した
もので、主制御部1がディスク装置4に対してリード/
ライトするとき、主制御部1に指示されたディスク制御
部3が主メモリ2とディスク装置4との間のデータ転送
を制御する。
ここで、主メモリ2とディスク制御部3との間はDMA
によるデータ転送が行われるが、ディスク制御部3とデ
ィスク装置4との間はディスク装置4のアクセス速度に
応じて行われるため、結果としてアクセス速度が遅くな
る。
このアクセス速度を改善するため、バッファメモリ5を
例えばディスク制御部3内に設け、ブロック単位でディ
スク装置4よりデータをバッファメモリ5に転送してお
き、リード対象のデータがバッファメモリ5内に存在し
ていれば、バッファメモリ5より2亥当データを読出す
ディスクキャッシュ制御が行われる。
第7図に示すディスクキャッシュ説明図において、4組
の登録テーブル7はそれぞれ256の登録領域をそれぞ
れ備えたもので、以下の例のようなキャッシュ制御が行
われる。
(1)  演算部6は、アクセスされたディスク装置4
に対するアドレスのうち、上位バイトで指定されるブロ
ックアドレスに所定の関数を施して1バイト(例えば上
位アドレスで除して余りの下位1バイト)に圧縮し、登
録テーブル7をそれぞれアドレスする。
(2)アドレスされた登録領域よりそれぞれ登録情報(
ブロックアドレスデータ)が読出され、アクセスされて
いるデータのブロックアドレスデータとそれぞれ比較部
8で比較される。
(3)  比較の結果、4組のうちいずれか一致してい
ればヒフ)信号が出力され、1バイトの圧縮されたアド
レスと4組の比較部8よりそれぞれ出力されるヒツト/
ミスヒツト信号に基づき、バッファメモリ5がアドレス
されて該当データが読出される。
(4)登録時には、登録領域ごとに設けられている図示
省略した有効ビットが“O” (登録無効)の登録テー
ブル7が選択されて圧縮されたアドレスで指示される登
録領域に登録され、すべての−ayの登録テーブル7が
登録済みであれば、関数を替えて演算するか、リプレー
ス処理がが行われる。
〔発明が解決しようとする課題〕
以上説明したように、ディスクキャッシュにおける登録
方法は、ブロックアドレスを成る関数で圧縮したアドレ
ス領域に登録されている。
このため、アクセスされるブロックアドレスが平均的に
分布していなければ、使用する関数によっては登録テー
ブルをすべて使用することはできず、従ってバッファメ
モリの使用率が低下するという課題がある。
さらに、複数種別の関数を使用し′て使用効率を改善し
ようとすると、演算処理のために検索に時間がかかると
いう課題もある。
本発明は上記課題に鑑み、検索時間を低下させずにバッ
ファメモリの使用効率を改善するキャッシュ制御方式を
提供することを目的とする。
上記目的を達成するため、本発明のキャッシュ制御方式
は、第1図本発明の原理図に示すように、複数の登録領
域(50)を備えた登録テーブル(14)と、 アクセス対象の複数の前記ブロックをグループ分けする
グループ識別情報を登録したグループテーブル(15)
と、 転送される該ブロックを該登録テーブルの所定の該登録
領域(50)に登録するとともに、同一グループの該ブ
ロックの登録領域(50)を連係処理する登録処理部(
20)と、 アクセスされたブロックアドレスに基づき前記グループ
テーブル(15)を参照し、該ブロックの属するグルー
プを判別して前記連係された登録領域(50)を検索す
る検索部(21)と、登録されたグループ別登録数を所
定時間ごとに計数し、その計数値に基づき各グループの
登録Vを均一にする所定の基準でグループ分けの変更処
理を行うとともに、該グループテーブル(15)に登録
するグループ処理部(22)とを設ける。
〔作 用〕
転送単位であるブロックをそのブロックアドレスに基づ
いて複数のグループに分け、登録テーブル14に空きが
あるときは例えば登録領域順に登録し、同一グループの
ブロックが登録された登録領域50を連係する。
検索時にはアクセスされたブロックの属するグループを
識別し、そのグループの登録領域50を連係処理によっ
て得られた連係情報に基づいて検索する。
一定時間おき、または一定登録回数ごとに登録テーブル
14を検索してグループ別登録数を計数し、登録数が平
均化するようにグループ分けの基準を替えてグループの
再編成処理を行う。
グループは、例えばブロックアドレスの上位ビットで指
定することができ、この上位ビットを操作してグループ
分けの変更処理を行う。
以上のごとく、従来のごとくブロックアドレスに関連し
た登録領域に登録せず登録領域の空き領域に任意に登録
するため、バッファメモリ5を100%使用することが
でき、またグループ単位で検索し且つ登録数が均一化す
るようにグループ分けを動的に行うため、検索速度を低
下させることがない。
〔実施例〕
本発明の実施例を図を用いて説明する。
第2図は実施例のディスク制御装置ブロック図、第3図
はテーブルチエイン説明図、第4図はグループ処理フロ
ーチャート図、第5図は検索処理フローチャート図であ
る。
第2図に示すディスク制御装置10において、11は登
録処理、検索処理、グループ処理を行うマイクロプロセ
ッサMPUであって、第1図の登録処理部20.検索部
21.グループ処理部22に対応する。
12はDMA制御部であって、主制御部CPU 1.主
メモリ2が接続されるCバス、ディスク制御装置lOの
内部バス間におけるDMA制御を行うもの、5はバッフ
ァメモリで、ディスク装置4より転送されるデータブロ
ック(ブロック)が格納されるもの、 14はバッファメモリ5に転送されるブロックのブロッ
クアドレスデータが格納される登録テーブルで、各登録
領域50のポインタによりバッファメモリ5のアドレス
が得られるように構成されたもの、 15はグループを識別するアドレスデータが登録される
グループテーブル、 16は各グループごとに設けられるポインタテーブルで
、チエインされた登録領域50のヘッド(先頭)ポイン
タおよびテイル(最後尾)ポインタが格納されるもの、 16はCバスと内部バスとの間の開閉制御を行うCバス
制御部、 17はディスク装置4との間のデータ転送を制御するデ
ィスク制御部である。
第3図はブロックを16&Il (0−F )にグルー
プ分けした場合のテーブルチエインの方法を示したもの
で、それぞれのグループに対応して設けられたポインタ
テーブル16に、そのグループの登録領域50のうち先
頭領域のヘッドポインタと、最後尾領域のテイルポイン
クとが登録され、登録テーブル14の各登録領域50に
は次にチエインされるポインタが記入されて連係される
グループは、ブロックの大きさが例えば48ビツトある
場合、初期時には上位4ビツト(16組)、即ち各紐間
−のブロック数でグループ分けされ、変更処理時には、
例えば上位5ビツトが使用さて不均一のグループ幅に区
分される。
以上構成のディスク制御装置において、以下の処理が行
われる。
(検索処理) +1)  CP[I 1よりリードアクセスされたとき
、MPU1は、出力されたアドレスのうち、所定の上位
ビットで示されるブロックアドレスデータに基づきグル
ープテーブル15を参照し、グループを識別する。
(2)識別したグループのポインタテーブル16を参照
し、ヘッドポインタの指定する登録領域50よりブロッ
クアドレスデータを読出し、アクセスされたブロックア
ドレスと比較する。
(3)  一致していれば、その登録領域50のポイン
タに基づいてバッファメモリ5のアドレスを求め、その
アドレスをDMA制御部12にセントしてデータ転送を
開始する。
(4)  不一致ならば順次チエインされた指定のポイ
ンタに基づき検索し、テイルボインクに達しても不一致
のときはミスヒントであるから、登録処理を行う。
なお、図示省略したが、登録テーブル14には有効/無
効ビットが設けられて同時に参照される。
(登録処理) (1)  登録テーブル14に空きがあるときはその空
き領域に登録し、その領域のポインタに対応するバッフ
ァメモリ5の領域にデータを転送する。
(2)登録テーブル14に空きがないとき、グループ別
登録数を計数し、登録数が多いグループの内、例えば古
く登録されたブロック(ヘッドポインタで示される登録
領域)を入れ替え対象の領域に設定して入れ替える。
このとき、チエインの更新処理も同時に行われる。
(グループ処理) (1)  一定の登録回数に達したとき、登録テーブル
14を参照してグループ別登録数を計数する。
(2)登録数が平均化するようにグループを再編成する
登録数に応じ、例えばグループアドレスデータの上位5
ビツトを使用してグループ幅を変更する。
即ち、登録数の多いグループのアドレス幅を狭くし、登
録数の少ないグループのアドレス幅を広くする。
なお、必要ならばグループ数を増加させてもよく、その
ときはポインタテーブル16を生成する。
(3)  登録領域50のチエイン、グループテーブル
15の更新処理を行う。
以上のごとく、登録テーブル14に空き領域があればこ
の領域に登録するため、バッファメモリ5は100%使
用でき、またグループの登録数を動的に平均化するため
、あるグループに登録が集中しても検索速度が低下する
ことがない。
なお、実施例ではバッファメモリ5をディスク制御装置
lO内に設けたが、ディスク装置4とディスク制御装置
10との間に設けられて直接ディスク装置をアクセスす
る制御アダプタ内にバッファメモリ5を設けてもよい。
〔発明の効果〕
本発明は、外部記憶装置に対するキャッシュ制御におい
て、データの登録をグループに別けて登録テーブルに登
録し検索するとともに、登録テーブルの占有率によりグ
ループを再編成して検索時間を改善したキャッシュ制御
方式を提供するもので、ディスクキャッシュにおける効
果は極めて多大である。
【図面の簡単な説明】
第1図は本発明の原理図、 第2図は実施例のディスク制御装置ブロック図、第3図
はテーブルチエイン説明図、 第4図はグループ処理フローチャート図、第5図は検索
処理フローチャート図、 第6図はディスクシステムブロック図、第7図はディス
クキャッシュ説明図、 である。図中、 1は主制御部、 cpu、  2は主メモリ、4はディ
スク装置、  5はバッファメモリ、lOはディスク制
御装置、 11はマイクロプロセッサMPU 。 12は叶^制御部、   14は登録テーブル、15は
グループテーブル、16はポインタテーブル、17はデ
ィスク制御部、 18はCバス制御部、20は登録処理
部、   21は検索部、22はグループ処理部、 5
0は登録領域、第1図 実施例のディスク制御装置ブロック図 第2図 テーブルチエイン説明図 第3図 グル−プ処理フローチャート図 検索処理フローチャート図 第5図 ディスクシステムブロック図 第6図 ディスクキャッシュ説明図 第7図

Claims (1)

  1. 【特許請求の範囲】  主メモリと外部記憶装置との間にバッファメモリ(5
    )を設け、該外部記憶装置に格納されているデータをブ
    ロック単位で該バッファメモリに転送し、該外部記憶装
    置に対しアクセスしたデータが前記バッファメモリに存
    在していれば該バッファメモリをアクセスするデータ処
    理装置におけるキャッシュ制御方式であって、 複数の登録領域(50)を備えた登録テーブル(14)
    と、 アクセス対象の複数の前記ブロックをグループ分けする
    グループ識別情報を登録したグループテーブル(15)
    と、 転送される該ブロックを該登録テーブルの所定の該登録
    領域(50)に登録するとともに、同一グループの該ブ
    ロックの登録領域(50)を連係処理する登録処理部(
    20)と、 アクセスされたブロックアドレスに基づき前記グループ
    テーブル(15)を参照し、該ブロックの属するグルー
    プを判別して前記連係された登録領域(50)を検索す
    る検索部(21)と、 登録されたグループ別登録数を所定時間ごとに計数し、
    その計数値に基づき各グループの登録数を均一にする所
    定の基準でグループ分けの変更処理を行うとともに、該
    グループテーブル(15)を更新するグループ処理部(
    22)とを設け、該ブロックをグループ別に連係して該
    登録テーブル(14)に登録し検索するとともに、所定
    時間ごとにグループ別登録数を計数してグループ分けの
    変更処理を行うことを特徴とするキャッシュ制御方式。
JP63034338A 1988-02-17 1988-02-17 キャッシュ制御方式 Pending JPH01209549A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63034338A JPH01209549A (ja) 1988-02-17 1988-02-17 キャッシュ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63034338A JPH01209549A (ja) 1988-02-17 1988-02-17 キャッシュ制御方式

Publications (1)

Publication Number Publication Date
JPH01209549A true JPH01209549A (ja) 1989-08-23

Family

ID=12411356

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63034338A Pending JPH01209549A (ja) 1988-02-17 1988-02-17 キャッシュ制御方式

Country Status (1)

Country Link
JP (1) JPH01209549A (ja)

Similar Documents

Publication Publication Date Title
US4219883A (en) Cache memory control system
US6473846B1 (en) Content addressable memory (CAM) engine
US6782465B1 (en) Linked list DMA descriptor architecture
US4493026A (en) Set associative sector cache
US6745291B1 (en) High speed LRU line replacement system for cache memories
JPH01209549A (ja) キャッシュ制御方式
JPS6046447B2 (ja) トラツクバツフアメモリ方式
JPH01163852A (ja) データ処理システム内のサブシステムおよびその動作方法
JPH03175545A (ja) キャッシュメモリ制御回路
JPH0218645A (ja) メモリ管理方式
JPS61216016A (ja) デ−タベ−スの領域管理方式
EP0787326B1 (en) System and method for processing of memory data and communication system comprising such system
US20240331746A1 (en) Direct memory access (dma) circuit and operation method thereof
JPS6027967A (ja) バツフア記憶装置のブロツク転送制御方式
JP3176319B2 (ja) データ処理装置
JPS59218692A (ja) ロジカルバツフア記憶制御方式
JPS635432A (ja) マイクロプロセツサ
JP3238939B2 (ja) ソート処理装置
JPS63127352A (ja) 共通バス転送制御方式
JPS6093562A (ja) 緩衝記憶制御装置
EP0718771A1 (en) DMA logic unit architecture
JPS58179981A (ja) ストアバツフア制御装置
JPH0447344B2 (ja)
JPS62271029A (ja) デイスクキヤツシユ制御方式
JPS61206056A (ja) メモリデ−タ転送方法