JPS61231641A - キヤツシユ制御方式 - Google Patents

キヤツシユ制御方式

Info

Publication number
JPS61231641A
JPS61231641A JP60071978A JP7197885A JPS61231641A JP S61231641 A JPS61231641 A JP S61231641A JP 60071978 A JP60071978 A JP 60071978A JP 7197885 A JP7197885 A JP 7197885A JP S61231641 A JPS61231641 A JP S61231641A
Authority
JP
Japan
Prior art keywords
cache
block
data
storage device
main storage
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
JP60071978A
Other languages
English (en)
Inventor
Yoshio Hamaguchi
濱口 芳夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP60071978A priority Critical patent/JPS61231641A/ja
Publication of JPS61231641A publication Critical patent/JPS61231641A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、情報処理システムにおけるキャッシュ制御方
式に関する。
(従来の技術) 従来、高速小容量の記憶装置と低速大容量の記憶装置と
を組合わせて、等制約に高速大容量の記憶装置を得るた
めにキャッシュ方式が広く採用されてきた。磁気ディス
ク装置や主記憶装置などの大容量記憶装置上のプログラ
ムやデータのうち、最近アクセスされたものをキャッシ
ュと呼ばれる高速記憶装置上に記憶しておき、後で処理
装置からデータの読出し要求があったときにデータがキ
ャッシュ上に存在すれば、主記憶装置にアクセ°スする
ことなくキャッシュがら読出すことにょシ読出しに要す
る時間を短縮することができる。キャッシュについては
、例えば「情報処理」誌の1980年4月号(VOL2
1、NO,4)(7)882〜840ページに詳しく記
述されている。
データを書込もうとする番地の内容がキャッシュに存在
する場合(ヒツト)と、存在しない場合(ミスヒツト)
とのそれぞれに対して幾つかのデータ書込み方式が提案
されている。キャッシュがヒツトする場合にはキャッシ
ュだけに書込む方法と、キャッシュおよび主記憶装置の
両者に書込む方法とが′現用されている。一方、キャッ
シュがミスヒツトした場合には、以下の過少に大別でき
る。
第1はキャッシュにはアクセスせず7主記憶装置だけに
書込む場合である。第2は当該番地を含むブロックを主
記憶装置からキャッシュにロードした後、これをキャッ
シュだけに書込む場合である。
aI8は当該番地を含むブロックを主記憶装置からキャ
ッシュにロードした彼、キャッシュと主記憶の両方に書
込む場合である。
スタック操作の場合には、上記第1〜第8の操作はいず
れも好ましいものではない。スタックの場合、プッシュ
により書込まれたデータは即刻、ポツプにより読出す可
能性が高いが、第10操作ではヒツトしない。また、後
続の書込みもすべてキャッシュミスとなって主記憶装置
にアクセスしなければならず、十分な性能が得られない
。一方、スタックではプッシュしていないデータを読出
すことはないので、第1〜第8の操作では必要のないデ
ータを無駄に主記憶装置から読出すことになる。通常、
キャッシュブロックへの最初のプッシュのときのみには
、プッシュ動作時にキャッシュミスが発生する。最初の
プッシュであるか否カバ、、アドレスによって容易に判
定できる。
第2図は、動作を示す説明図である。第2図において、
キャッシュブロックは64バイトから成立ち、1101
 1100 0000 0000 番地から1101 
1101 0011 1100 番地までの5ブロツク
がスタック領域に割当てられている。スタックの1エン
トリは4バイト(1語)であシ、スタックはアドレスの
大きい方から小さい方に向かって生成されている。第2
図(b)においてスタックポインタSPが1101 1
1001100 0000番地を指しているときにプッ
シュ動作を行うとまずスタックポインタSPが4だけ減
じられて1101 1100 1041 110.OK
なる。その後、ポインタSPの指す語にデータが格納さ
れ、その結果、第2図(、C)のようになる。第2図(
C)で斜線を付した部分は未だ有効なデータが格納され
ていない領域であシ、プログラムの誤シ以外によって読
出されることはない。
し、たがって、キャンシュにプロ1ツクロードす、る必
!ハない。なお、上記実例ではキャッ、、シュブロック
への最初のプッシュ動作であることは1.データ。
を書込むときのアドレス、の下から8ピツ、ト目〜6ビ
ツト目が1111であることによって・判寓できる。 
            ・ ・     “、(発明
が解決しようとす秦問題点) 上述したよう−に、上記従来方、式にセいては、主記憶
装置ヘデニタ、が、無駄に書きこまれているため、±、
プッシュへブロックロードを実施しなければならないと
いう欠点がある。           、・本発明の
目的は、キャッシュプ、ロックへの最初のプッシュ動作
の場合には上述した無駄な主記憶装置への書込みや主記
憶装置からキャッシュへのブロックロードを省略し、キ
ャッシュだけにデータを書込むようにすることによっつ
で上記欠点を除去し、情報処理システムにおける記憶シ
ステムの実効性能が向上できるように構成したキャッシ
ュ制御方式を・提供することにある。
・(問題点を解決するための手段) 本発明によるキャッシュ制御方式は、処理装置、大容量
記憶装置、−キャッシュブロックを含trキャッシュ、
ならびにキャッシュ制御部から成シ、スタックによりデ
ータを格納できる情報処理システムによ2て実現される
ものである。斯か名キャ1ツシュー1制御方式は、・I
スタックのプッシュ動作を検出するための第10検出手
段と、スタックの・プッシュ動作がキヤ・ツシ、ニア°
ロックへの最初のものであるか、否かを検出す1、る・
ための第2の検出手段と、本発明に、よるキャッシュ制
御方式を実現するための中1心となる制御手段とを備え
て構成したものである。   1.− 制御手段は、処理装置からの書込み要求時にキャッシュ
ミスが生じ、キャッシュミスがキャッシュブロックへの
最初のプッシュ動作であることが第1、および第2の検
出手段により検出された場合には、主記憶装置からキャ
ッシュへのブロックロードや主記憶装置へのデータの書
込みを行わず、キャッシュ上にキャッシュブロックを確
立してデータをキャッシュブロックにだけ記録するため
のものである。。
(実施例) 次に、本発明について図面を参照して詳細に説明する。
第1図は、本発明によるキャッシュ制御方式を実現する
ためのキャッシュ制御部を関連処理装置ならびに主記憶
装置と共に示すブロック図である。
第1図では、簡単なために本発明に直接関係のない部分
は記載していない。
第1図において、1はキャッシュを含むキャッシュ制御
部、2は処理装置、3は主記憶装置である。処理装置2
には命令デコーダ6が含まれ、プッシュ動作を検出する
とPUSH信号を信号線16上に出力する。PUSH信
号はRUSH命令の他に、CALL命令(次の命令のア
ドレスをスタックに積んでサブルーチンへ制御を移す命
令)を実行するときにも出力される。キャッシュ制御部
1において、31は比較器、52はキャッシュブイレフ
)!J、55は置換制御部、34はブロックストア制御
部、56はブロックロード制御部、41〜46はそれぞ
れORゲート、51〜59はそれぞれANDゲート、7
1はNOTゲートである。
キャラツユ制御部1と処理装置2との間にはアドレスバ
ス11、データバス12、読取シ要求信号線15、書込
み要求信号線14、データレディ信号線15、およびP
USH信号線16が存在する。一方、キャッシュ制御部
1と主記憶装置3との間にはアドレスバス21.データ
バス22、主記憶読取り要求信号線23、主記憶書込み
要求信号線24、および主記憶データレディ信号線25
が存在する。
アドレス比較器51は、アドレスバス11上のアドレス
b2〜b11がすべて1のときにALL 1信号を出力
する。ここで、このシステムではキャッシュブロックの
大きさを64バイトとし、スタックは4バイト(=1語
)として操作される。アドレスはそれぞれblが2iの
重みをもつ。また、スタックはアドレスの大きい方から
小さい方に向かって生成する。プッシュ動作に先立って
スタックポインタの値が4ずつ減じられる。したがって
、ブロックが空の状態であるとすればこのブロックに称
して初めてプッシュ動作を行う場合にはプッシュ動作時
にALLlが真になる。なお、本りステムではスタック
領域の上限および下限は、ともにブロックの境界上にく
るものとする。したがって、一つのブロックにスタック
データと他のデータとが混在することはない(第2図を
参照)。
キャッシュディレクト32はキャッシュ4に記憶されて
いるデータのアドレスならびに有効性などを記憶してい
る。ディレクトリs2は処理装置2からアクセス要求が
あると、それらのデータがキャッシュ1上にあるか否か
を判定してヒツト(HIT)信号またはミス(MI S
 S )信号を出力する。ディレクトリs2はブロック
対応に変更フラグMFをもっている。ブロックロード後
にキャッシュ4の内容を変更したならば、このとき変更
フラグMFがセットされる。変更フラグMFは、ブロッ
クをはき出すときに実際に主記憶装置への書込みが必要
であるか否かの判定に使用される。
置換制御部33は、ディレクトリ32上の情報にもとづ
いて置換するべきブロックを選択し、変更フラグMPの
値に従って必要ならばブロックストア制御部34を起動
する。ブロックストア制御部54はアドレスを更新しな
がらタイミングをとって、キャッシュ4の内容を1ブロ
ック分だけ主記憶装置δに格納するように制御を行う。
同様に、ブロックロード制御部35は主記憶装置3がら
キャッシュ4へのブロックロードを司る。また、処理装
置2から要求されたデータはデータ送信信号SDをセッ
トして処理装置2へ送出する役目を果している。ORゲ
ート41〜46、ANDゲート61〜59、およびNO
TORゲート41れぞれ論理作用により上記各要素を制
御する。
次に、第1図に従ってシステムの書込み動作について説
明する。第1図において、処理装置2から信号線14を
介して書込み要求が送出されるとANDゲート52の出
力RQが低レベルになる。
そこで、ディレクトリ32はアドレスバス11上のアド
レスがディレクトリ中に登録されているか否かを調べH
IT信号またはMISS信号を発生させる。ヒツトした
場合にはANDゲート66およびORゲート44.45
が活性化され、キャッシュ書込み信号CWRがセットさ
れ、データバス12上のデータはアドレスバス11上の
アドレスおよびディレクトリs9からの指定に従ってキ
ャッシュ4に書込まれる。
一方、ミスヒツトした場合には、通常はANDゲート5
8およびORゲート42が活性化され、信号線24上の
主記憶書込み要求信号がセットされてデータバス12.
22上のデータがそれぞれ主記憶装置3に直接書込まれ
、キャッシュ4には書込まれない。しかし、この書込み
要求がプッシュ動作によるものであって、アドレス力β
×・・・・・X+11100#の形をとっているとき(
% X Iは%Q I、または1を表す)にはANDゲ
−)81の出力FPSHが低レベルになり、その結果、
ANDゲート55およびORゲート41が活性化され、
置換制御部33が起動される。置換。
制御部3sはキャッシュから追出すべきブロックを選択
し、そのブロックの変更フラグMFを調べる。変更フラ
グMFがセットされていると、ブロックストア制御部5
4が起動される。その結果、選択されたブロックがキャ
ッシュ4から主記憶装置3に格納される。次にORゲー
)44.’4gが活性化され、処理装置2から送られて
きたデータがキャッシュ4に書込まれる。また、ORゲ
ート45の出力により変更フラグMFがセットされる。
これによって将来、このブロックが追出しの対象となっ
たときには、データが主記憶装置3に格納されることが
保証される。本実施例では、書込み要求でキャッシュミ
スが発生した場合、通常はキャッシュに書込まずに直接
、主記憶装置3に書込むものとしたが、主記憶装置墨か
らキャッシュ4にブロックロードした後に処理装置2か
ら供給されたデータをキャッシュ4に書くようにするこ
とも可能である。この場合、ブロックへの最初のプッシ
ュ動作のときにブロックロードをしないようにすること
により、本発明を適用することが可能である。
(発明′の効果) 本発明には以上説明したように、一つのブロックへの最
初のプッシュ動作の検、出を契機に主記憶装置へのデー
タの書込みや、主記憶装置からのブロックロードを回避
すること(よシ、システムの実効的なアクセス時間を短
縮することができるという効果がある。       
 ・   1
【図面の簡単な説明】
、第1図は、本発明によるキャッシュ制御方式を実現す
るための一実施例を示すブロック図である。 ・第2図は、スタックの。実、例、を示す説明図である
。 、1・俸・キャッシュ制御部 2・・・処理装置 3・・・主記憶装置 4・・・キャッシュ 5・・・命令デコーダ ′31・・・アドレス比較器 32・Φ・デ・イレクトリ 33・・・置換制御部 34・゛・−プロン”クストア制御部 35・・・ブロックロード制御部 41〜46・・・ORゲート 51〜・59・・・ANDゲート  、71・・−NO
Tゲ=ト    ・ 11 、、 +’ L 2.”2.1・、22・:・−
バ ス13〜16.2!1〜25・・・信号線・   
   、、: ゛ ・ 特許出願人 日本電気株式会社゛   代理人
 弁理士 井) ロ   壽(T P′I、υ    
       (a)22図

Claims (1)

    【特許請求の範囲】
  1. 処理装置、大容量記憶装置、キャッシュブロックを含む
    キャッシュ、ならびにキャッシュ制御部から成り、スタ
    ックによりデータを格納できる情報処理システムにより
    実現されるキャッシュ制御方式において、前記スタック
    のプッシュ動作を検出するための第10検出手段を備え
    、前記スタックのプッシュ動作が前記キャッシュブロッ
    クへの最初のものであるか否かを検出するための第2の
    検出手段と、前記処理装置からの書込み要求時にキャッ
    シュミスが生じ、前記キャッシュミスが前記キャッシュ
    ブロックへの最初のプッシュ動作であることが前記第1
    および第2の検出手段により検出された場合には前記主
    記憶装置から前記キャッシュへのブロックロードや前記
    主記憶装置へのデータの書込みを行わず、前記キャッシ
    ュ上に前記キャッシュブロックを確立して前記データを
    前記キャッシュブロックにだけ記録するための制御手段
    とを具備して構成したことを特徴とするキャッシュ制御
    方式。
JP60071978A 1985-04-05 1985-04-05 キヤツシユ制御方式 Pending JPS61231641A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60071978A JPS61231641A (ja) 1985-04-05 1985-04-05 キヤツシユ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60071978A JPS61231641A (ja) 1985-04-05 1985-04-05 キヤツシユ制御方式

Publications (1)

Publication Number Publication Date
JPS61231641A true JPS61231641A (ja) 1986-10-15

Family

ID=13476058

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60071978A Pending JPS61231641A (ja) 1985-04-05 1985-04-05 キヤツシユ制御方式

Country Status (1)

Country Link
JP (1) JPS61231641A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450559A (en) * 1989-05-31 1995-09-12 International Business Machines Corporation Microcomputer system employing address offset mechanism to increase the supported cache memory capacity

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450559A (en) * 1989-05-31 1995-09-12 International Business Machines Corporation Microcomputer system employing address offset mechanism to increase the supported cache memory capacity

Similar Documents

Publication Publication Date Title
EP0077452B1 (en) Data promotion in storage subsystems
US4920478A (en) Cache system used in a magnetic disk controller adopting an LRU system
KR100240912B1 (ko) 데이터 프리페치 장치 및 시스템, 캐시 라인 프리페치 방법
EP0077453B1 (en) Storage subsystems with arrangements for limiting data occupancy in caches thereof
EP0112442B1 (en) Data storage hierarchy and its use for data storage space management
JP3289661B2 (ja) キャッシュメモリシステム
EP0777183B1 (en) Computer cache system
JPS5876956A (ja) バッファ記憶付きディスク・システム
JPH0458051B2 (ja)
JPS5960552A (ja) 周辺デ−タ記憶システム
US20130124821A1 (en) Method of managing computer memory, corresponding computer program product, and data storage device therefor
US5471602A (en) System and method of scoreboarding individual cache line segments
US5293622A (en) Computer system with input/output cache
US5287482A (en) Input/output cache
JPH0115903B2 (ja)
JPS61231641A (ja) キヤツシユ制御方式
JPH0354649A (ja) バッファ記憶制御方式
JP3335919B2 (ja) ディスクキャッシュ制御装置
JPH06243037A (ja) データ先読み装置
JP2000047942A (ja) キャッシュメモリ制御装置及びその制御方法
JP2703255B2 (ja) キャッシュメモリ書込み装置
JP2972451B2 (ja) ハードウェア制御ソフトウェアによるキャッシュメモリ制御方式
JPH09282231A (ja) ライトバック型キャッシュ装置
JPH01251248A (ja) スタックデータ構造用キャッシュ制御方式
JP2000148665A (ja) データ処理装置