JPH02213960A - キャッシュメモリ - Google Patents

キャッシュメモリ

Info

Publication number
JPH02213960A
JPH02213960A JP1034845A JP3484589A JPH02213960A JP H02213960 A JPH02213960 A JP H02213960A JP 1034845 A JP1034845 A JP 1034845A JP 3484589 A JP3484589 A JP 3484589A JP H02213960 A JPH02213960 A JP H02213960A
Authority
JP
Japan
Prior art keywords
data
address
memory
cache memory
tag
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
JP1034845A
Other languages
English (en)
Inventor
Yasuhiko Saikou
齊江 靖彦
Hiroshi Fukuda
宏 福田
Takashi Kikuchi
隆 菊池
Toshihiko Furunoma
古野間 利彦
Yasushi Nagashima
永島 靖
Kunio Uchiyama
邦男 内山
Hirokazu Aoki
郭和 青木
Osamu Nishii
修 西井
Kanji Ooishi
貫時 大石
Jun Kitano
北野 純
Susumu Hatano
進 波多野
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 ULSI Engineering Corp
Hitachi Ltd
Original Assignee
Hitachi ULSI Engineering Corp
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 ULSI Engineering Corp, Hitachi Ltd filed Critical Hitachi ULSI Engineering Corp
Priority to JP1034845A priority Critical patent/JPH02213960A/ja
Priority to KR1019900000992A priority patent/KR900013510A/ko
Priority to EP19900101908 priority patent/EP0383097A3/en
Publication of JPH02213960A publication Critical patent/JPH02213960A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • G06F12/0835Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means for main memory peripheral accesses (e.g. I/O or DMA)

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Memory System (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、記憶管理技術さらにはバッファ記憶方式を
採用した情報処理システムに用いられるキャッシュメモ
リに利用して有効な技術に関するものである。
〔従来の技術〕
バッファ記憶方式を採用したマイクロコンピュータシス
テムにおいて、ダイナミック型RAM(ランダム・アク
セス・メモリ)等からなるメインメモリ装置内の情報の
うち使用頻度の高いものをキャシュメモリ内に入れてお
いて、これをキャッシュ・コントローラと呼ばれる記憶
管理装置によって制御し、システムのスループットを向
上させるようにしたものがある。
キャッシュメモリは、マイクロプロセッサから出力され
るアドレスによってアクセスされ、所望のデータがキャ
ッシュメモリ内にあると、つまりキャッシュがヒツトす
ると、マイクロプロセッサがメインメモリからではなく
高速のキャシュメモリから直ちにデータを得ることがで
きる。キャシュ・コントローラは、マイクロプロセッサ
から出力されるアドレスと内部のアドレス(タグ)とを
比較して、所望のデータがキャシュメモリ内に無いと判
定すると、ミスヒツトを示す信号を出力する。すると、
マイクロプロセッサはメインメモリをアクセスしてメイ
ンメモリ側からデータを得るようになっている。
このようなキャシュメモリに関しは、例えば日経マグロ
ウヒル社1987年11月16日付「日経エレクトロニ
クス1頁170がある。
〔発明が解決しようとする課題〕
ところで、マイクロコンピュータシステム等では、物理
アドレスにおいて一連のデータ群の間の空きアドレスを
つめて使用可能なメモリ空間を広げるというダイナミッ
クリロケーションがある。
このようなダイナミックリロケーションを行うと、メイ
ンメモリ側のアドレスが変更されるため、キャッシュメ
モリにあるアドレスとの一対一の対応がとれなくなるた
め、有効なデータがあるにもかかわらず、バリッドビッ
トを落すことによりキャッシュ内のデータを無効化して
いる。
このため、ダイナミックリロケーションが行われた後は
、キャッシュメモリに上記有効なデータがあるにもかか
わらず、ミスヒ・ノドが生じてしまい、キャッシュメモ
リが有効に生かされないという問題が生じる。
この発明の目的は、システムのスルーブツトのいっそう
の向上を実現したキャッシュメモリを提供することにあ
る。
この発明の前記ならびにそのほかの目的と新規な特徴は
、本明細書の記述および添付図面から明らかになるであ
ろう。
〔課題を解決するための手段〕
本願において開示される発明のうち代表的なものの概要
を簡単に説明すれば、下記の通りである。
すなわち、キャッシュメモリに対して、メインメモリ側
のアドレス変更を監視して、そのデータの転送先アドレ
スに対応して内部のアドレスタグ及び/又はデータの格
納場所を自動的に変更する機能を設ける。
〔作 用〕
上記した手段によれば、マイクロプロセッサがメインメ
モリに対してダイナミックリロケーションやガベージコ
レクションといったようなデータの格納アドレスを変更
する処理を行ったときでも、上記機能によってキャッシ
ュメモリのデータを有効利用ができるから、システムの
スルーブツトの向上を実現することができる。
〔実施例〕
第1図には、この発明に係るキャッシュメモリの一実施
例のブロック図が示されている。同図のキャッシュメモ
リは、公知の半導体集積回路の製造技術によって、単独
に又は例えばマイクロプロセッサ等とともに1つの半導
体基板上において形成される。
この実施例のキャッシュメモリの詳細を説明する前に、
このキャッシュメモリが用いられるマイクロコンピュー
タシステムの一実施例を第2図のブロック図を参照して
説明する。
マイクロプロセッサM P tJは、アドレスバスAD
、データバスDT及びコントロールバスC8を介してキ
ャシュメモリの一方のボートに結合される。キャシュメ
モリの他方のボートは、メモリバスに結合される。すな
わち、メモリバスには、MS(メインストレージ)コン
トローラ回路を介してダイナミック型RAM等からなる
メインメモリが結合される。また、このようなメインメ
モリの他、上記のメモリバス上には必要に応じてリード
・オンリー・メモリ(ROM) 、入出力ボートI10
及びシステムバスアダプタが接続される。システムバス
アダプタにはzフレームバッファを介してデイスプレィ
CRT等の端末装置、ファイルコントローラを介してフ
ロッピーメモリ装置やハードディスクメモリ等の磁気メ
モリ装置が接続される。また、これらの外部メモリ装置
とメインメモリ等との間でマイクロプロセッサMPUを
介在させないでデータ転送を行う直接メモリアクセス制
御装置DMACが設けられる。これらの各装置は、上記
システムバスアダプタにより設けられるシステムバス上
に搭載される。
第1図において、キャッシュメモリは、特に制限されな
いが、メモリ部とコントロール部とから構成される。メ
モリ部は、ディレクトリメモリDLMと、データメモリ
DTM及びバッファメモリBM及びライトバッファWB
とから構成される。
コントロール部は、L RU (Least Rece
ntly Used)方式のブロック置換制御回路LR
U、タグ比較回路TCP及びこれらの回路の制御するコ
ントロール回路CNTとから構成される。
上記ライトバッファWBは、書き込みアドレス及び書き
込みデータを一時的に保持するものであり、マイクロプ
ロセッサMPU等は、書き込みモードのとき、後述する
ように上記ライトバッファWBへの書き込みをもって書
き込み動作を終了させる。ライトバッファWBは、2つ
の内部バスに接続される。一方の内部アドレスバスAD
とデータバスDTは、マイクロプロセッサMPU側のバ
スに結合され−るボートに接続される。他方の内部アド
レスバスAD’ とデータバスDT’ は、後述するよ
うなメインメモリ側のバスと結合されるポートに接続さ
れる。これにより、メインメモリをアクセスするための
アドレス信号は、このライトバッファを介してメインメ
モリに伝えられる。ライトバッファWBのうち、データ
が格納されるデータバッファは読み出し動作のときにも
利用され、キャッシュメモリ又はメインメモリから読み
出されたデータは、−旦このデータバッファを通ってマ
イクロプロセッサMPUが結合されるMPUバス側に読
み出される。すなわち、上記データバッファは、双方向
バスドライバとしての機能も持つものである。
バッファメモリBMは、キャッシュメモリからのデータ
読み出しのとき又はメインメモリとキャッシュメモリと
の間でのデータ転送のときデータをブロック単位で転送
するときに用いられる。例えばメインメモリとキャッシ
ュメモリのデータメそりDTMとの間のデータ転送は、
上記バッファメモリBMを介してブロック単位で行われ
る。また、キャツシュヒツトのときの読み出しは、上記
バッファメモリBMに読み出された1ブロツクのデータ
のうち1ワードが選ばれて出力される。
このバッファメモリBMは、上記のようなデータ転送の
ためにメインメモリ側とのデータ授受を行うポートと、
データメモリDTMとのデータ授受を行うボートとを持
つデュアルポートのレジスタから構成される。上記デー
タメモリDTMに対しては、そこから読み出されたデー
タを直接にメインメモリ側の内部データバスDT’ に
出力させる信号バスも設けられる。
ディレクトリメモリDLMは、データメモリDTMの同
一カラム位置に格納されているデータのメインメモリ上
でのアドレスの上位数10ビツトのアドレス信号がアド
レスタグとして格納されている。マイクロプロセッサよ
りキャッシュメモリのアドレスバスADに与えられるア
ドレス信号のうち、カラムアドレス部CLMが、ディレ
クトリメモリDLMとデータメモリDTMの共通のデコ
ーダに供給される。これにより、ディレクトリメモリD
LMからのアドレスタグと、データメモリDTMからの
データとが同時に出力される。このうち、データメモリ
DTMからはlブロック分のデータが一括して読み出さ
れ、それがバッファメモリBMに転送される。
上記ディレクトリメモリDLMから読み出されたアドレ
スタグは、タグ比較回路TPOの一方の入力に供給され
る。このタグ比較回路TCPの他方の入力には、すでに
マイクロプロセッサMPTJ側から与えられたアドレス
A Dのうち、タグ部のアドレスTAGが供給されてい
る。したがって、タグ比較回路TCPは、上記ディレク
トリメモリDLMからアドレスタグが出力されると、直
ちに比較動作を行い一致(キャツシュヒツト)か不一致
(ミスヒツト)かを示す信号CHを形成して出力する。
キャツシュヒツトであると、データメモリDTM内の対
応するカラム位置から読み出されて、バソファメモリB
Mに転送されている1ブロック分のデータのうち、アド
レスの下位2ピントにより指定される1ワードのデータ
が図示しないセレクタによって選択され、データバスD
T’及びデータバッファ及びデータバスDTを通してマ
イクロプロセッサ側に伝えられる。
ミスヒツトであると、上記内部アドレスバスAD、ライ
トバッファWBのアドレスバツフプ及び内部アドレスバ
スAD“を通してメインメモリバスにアドレス信号が伝
えられてメインメモリがアクセスされて、データの読み
出しか行われる。そして、メインメモリから読み出され
たデータは、メインメモリのデータバス、上記内部バス
DT’データバッファ及び内部バスDTを通してマイク
ロプロセッサ側に伝えられる。
データの書き込み時にミスヒツトが生じると、ライトバ
ッファW’Bに保持されたアドレス信号と書き込みデー
タにより、メインメモリをアクセスして書き込み動作が
行われる。このとき、キャッシュメモリにもそのアドレ
スとデータの格納が並行して行われる。
上記ディレクトリメモリDLMには、特に制限されない
が、各カラム毎に1ビツトづつマイクロプロセッサMP
Uが要求するデータがメインメモリからキャッシュメモ
リへブロック転送中であるか否かを示す転送とッ)BT
が設けられている。
また、バッファメモリBMの各ワード毎に対応してデー
タが有効であるか無効であるかを示すビットBBVが設
けられている。
これらの各ビン)BT及びBBVの状態は、コントロー
ル回路CNTにより監視され、データの転送制御に反映
されるとともに、コントロール回路CNTがデータ転送
の流れに応じて上記ビットの書き換えを行う。
例えば、マイクロプロセッサMPUから与えられたアド
レスのタグ部の比較の結果、キャツシュヒツトし、た場
合にはカラム位置のビットBTを調べて、論理60″な
ら所望のデータがデータメモリDTM内にあるので、そ
のデータメモリDTMのデータを内部データバスDT’
 を介してデータバッファに入力するとともに、キャツ
シュヒツト信号をマイクロプロセッサMPUへ返す。
キャツシュヒツトの場合でも転送ビットBTが論理゛1
″なら、所望のデータはバッファメモ98M内にあるの
で、パンノアメモ98M内のビットBBVを調べて、論
理“1”のときにはそのワードデータを内部データバス
DT’ を介してデータバッファに入力して、キャツシ
ュヒツト信号をマイクロプロセッサMPUへ返す。上記
ビットBBVが論理“0”なら、メインメモリからのデ
ータ転送によりBBVA<論理“1”になるまで待ち、
論理“1”になった時点でそのワードデータを内部デー
タバスDT’ を介してデータバッファに入力して、キ
ャツシュヒツト信号をマイクロプロセッサMPUへ返す
これとともに、コントロール回路CNTは、ブロック転
送要因が発生すると、まずディレクトリメモリDLM内
の対応するビットBTを論理“1”にセントしてからデ
ータ転送を開始し、その転送状態に応じてバッファメモ
リBMのビットBBVを論理″1”にセットし、ブロッ
ク内のすべてのワードデータのビットBBVが論理″l
”になった時点でバッファメモリ8M内のデータをメイ
ンメモリ又はデータメモリDLMへ転送する。
この転送が終了すると、ビットBBv及びディレクトリ
メモリDLM内のビットBTを論理“O”にリセットす
る。
第3図には、メインメモリにおいて行われるダイナミッ
クリロケーションを説明するためのメモリマツプ図が示
されている。
同図の左側には、ダイナミックリロケーションを実行す
る前のアドレスマツプが示されている。
すなわち、一連のデータが格納される複数の領域1ない
し3の間に空領域が存在する。この空領域により、メイ
ンメモリのメモリ空間の使用効率が低下して、ひいては
システムのスループットの低下につながる。そこで、こ
のような状態が発生した場合、システム側ではダイナミ
ックリロケーションあるいはガベージコレクシコンと呼
ばれるデータ転送処理を実行する。すなわち、このデー
タ転送処理では、同図の右側のメモリマツプに示すよう
に、領域1と領域2、領域2と領域3との間の空領域が
詰められること、言い換えるならば、データ格納領域の
圧縮化により、領域3以降の空領域のアドレス空間が広
がり、メインメモリの有効利用が実現できるものである
しかしながら、このようなダイナミックリロケーション
やガベージコレクシコンといったようなデータ転送処理
を行うと、領域2や領域3に格納されたデータのアドレ
スが変わってしまい、これらの領域2や領域3に格納さ
れていたデータがキャッシュメモリに格納されていた場
合、そのアドレスが不一致になるため、キャッシュメモ
リにディレクトリメモリDLMに格納されているタグア
ドレスを一括して無効にし、新たにキャッシュメモリと
メインメモリとの間で前記のようなデータ転送を行うこ
とが必要になる。
本願発明者等は、上記のようにメインメモリ側でダイナ
ミックリロケーションやガベージコレクションといった
データ転送が行われた場合、データメモリDTMには有
効なデータが格納されていることに着目し、それを有効
利用することを考えた。すなわち、上記のようなデータ
転送動作があると、それに応じて自動的にディレクトリ
メモリDLM側のアドレスのみを変更すればよいことを
見出した。
このようなディレクトリメモリDLMのアドレスの自動
書き換えに伴い、キャッシュメモリには次のような機能
が付加される。このような機能の付加に伴い、タグ比較
回路TCPの他方に入力側には通常のキャッシュメモリ
の動作に用いられるマイクロプロセッサMPUからのア
ドレス信号を取り込み信号の他、メインメモリ側のアド
レス信号を取り込む信号経路が新たに付加される。
第4図には、メインメモリのアドレスマツプにおけるア
ドレス及びデータと、キャッシュメモリ内のディレクト
リメモリ部とデータ部との対応例が示されている。メイ
ンメモリのデータ八が格納される1つのアドレスは、タ
グアドレスとカラムアドレス及びブロックアドレスとか
ら特定される。
ディレクトリメモリ部では、そのアドレスがカラムアド
レスに対応し、それにより指定される1つのアドレスに
タグアドレスがデータとして格納されている。上記ディ
レクトリメモリのアドレスとデー・タメモリ部のアドレ
スとは一対一に対応されている。具体的には、後述する
ようにディレクトリメモリ部とデータメモリ部のアドレ
スデコーダは共通化されており、そのアドレスデコーダ
は、上記カラムアドレスを受けて1つのアドレス選択を
行い、そのアドレス中にタグアドレスとデータAとが格
納されるものである。この実施例は、セットアソシアテ
ィブ方式に対応したものであるが、ダイレクトマツピン
グ方式及びフルアソシアティブ方式の場合でも、基本的
な考え方は同じである。
第4図のようにアドレス及びデータがキャッシュメモリ
内に格納されてる場合、メインメモリ側においてダイナ
ミックリロケーション又はガベージコレクシコンが実行
されたとき、キャッシュメモリのディレクトリメモリ部
とデータメモリ部の内容変更又は転送の組み合わせが第
5図の動作モード図に示されている。
なお、キャッシュメモリにデータが存在しない場合、言
い換えるならば、マイクロプロセッサMPUからのアク
セスに対してミスヒツトが生じるような場合には、上記
のようなダイナミックリロケーションやガベージコレク
シコンに対してメインメモリとキャッシュメモリとの対
応付けを行う必要がないから、第5図の組み合わせから
除かれていることはいうまでもないであろう。
同図において、○はメインメモリ側で指示された変更後
のアドレスのうちタグあるいはカラムの部分が一致する
ものがキャッシュメモリ内に存在する場合を示し、×は
上記アドレスのうちタグあるいはカラムの部分が一致す
るものがキャッシュメモリ内に存在しない場合を示して
いる。
第6図には、各ケースでのダイナミックリロケーション
又はガベージコレクランに伴へメインメモリ側のデータ
転送例が示され、第7図には上記各ケースに対応したキ
ャッシュメモリ内でのデータ変更例が示されている。
以下、第5図に示した組み合わせ例を、第6図及び第7
図を参照して説明する。
ケース1では、タグ及びカラム共に存在するため、言い
換えるならば、第3図の領域1のようにダイナミツクリ
ロケ−シロン又はガベージコレクションによる実質的な
アドレス変更の影響を受けない部分に対応している。こ
の場合には、第6図のようにメインメモリ側のデータA
は、タグアドレスが08で、カラムアドレスがCEでブ
ロックアドレスOOのままであるため、それに対応して
第7図のようにディレクトリメモリ部及びデータメモリ
部の内容はそのままで変更しない。
ケース2では、カラムが一致しなくなった場合である。
すなわち、第6図に示すように、データAの格納番地の
うちカラムアドレスがCEから81のように変更になっ
た場合である。このときには、第7図に示すように、デ
ィレクトリメモリ部のCEに対応したアドレスタグが、
その有効/無効を示すバリッドビットがリセットされる
ことにより無効にされるとともに、新たなカラムB1に
対応した部分にアドレスタグ08が書き込まれる。
これに対応して、データメモリではデータAの転送が行
われる。
ケース3では、タグが一致しなくなった場合である。す
なわち、第6図に示すように、データAの格納番地のう
ちアドレスタグが08から07のように変更になった場
合である。このときには、第7図に示すように、ディレ
クトリメモリ部のCEに対応したアドレスタグが、08
から07のように書き換えられ、データメモリ部はその
まま変更なしとされる。
ケース4では、タグ及びカラムが共に一致しなくなった
場合である。すなわち、第6図に示すように、データへ
の格納番地のうちカラムアドレスがCEからB1のよう
に変更になり、アドレスタグが08から07のように変
更になった場合である。このときには、ディレクトリメ
モリ部のGEに対応したアドレスタグが、その有効/無
効を示すバリッドビットがリセットされることにより無
効にされるとともに、新たなカラムB1に対応した部分
に新たなアドレスタグ07が書き込まれる。
これに対応して、データメモリではデータAの転送が行
われる。
第8図には、キャッシュメモリ内部におけるデータ転送
の一例を示す概念図が示されている。第9図には、その
タイミング図が示されている。
同図には、最も複雑な動作を必要とする上記ケース4の
例が示されている。すなわち、メインメモリ側でのダイ
ナミックリロケーション又はガベージコレクションによ
りメインメモリ側のアドレスバスには、そのデータリー
ド命令フェッチと、その命令に従い指定されたアドレス
(転送元)のデータリードが行われる。キャッシュメモ
リ側ではタイミング(1)において、メインメモリ側の
バスおける転送元アドレス信号(08CEOO)をフェ
ッチする。タイミング(2)において、上記フェッチし
た転送元アドレス信号のうちカラムアドレスB1番地の
ワード線の選択動作を行う。これにより、タイミング(
3)において、ディレクトリメモリ部のバリッドビット
に論理“0”を占き込み、それのタグアドレス08の無
効化を行う。これとともに、データメモリ部からデータ
Aを読み出してデータレジスタに転送する。
次に、メインメモリ側でそのデータライト命令フェッチ
と、その命令に従い指定されたアドレス(転送先)のデ
ータライトが行われる。キャッシュメモリ側ではタイミ
ング(4)において、メインメモリ側のバスおける転送
先アドレス信号<07B100)をフェッチする。タイ
ミング(5)において、上記フェッチした転送先アドレ
ス信号のうちカラムアドレスB1番地のワード線の選択
動作を行う。
これにより、タイミング(6)において、ディレクトリ
メモリ部に新たなタグアドレス07とその有効を示すバ
リッドビットに論理“1”を書き込む。
これとともに、データメモリ部ではデータレジスタのデ
ータAの書き込みを行う。
例えば、ケース3のときには、転送先のカラムアドレス
が同一であるからタイミング(4)ではカラムアドレス
CEのワード線が選択され、そこに07のタグアドレス
が書き込まれ、バンリソドビットが論理“1”の有効に
される。このときには、データメモリ部は同じ番地に上
記データAが再び書き込まれる。これにより、実質的に
はディレクトリメモリ部の書き換えが行われ、データメ
モリ部は変更なしとされる。
また、ケース2では転送先のカラムアドレスがB1に変
更されるからタイミング(4)ではカラムアドレスB1
のワード線が選択され、そこに08のタグアドレスが書
き込まれ、バソリ7ドビットが論理“l”の有効にされ
る。このときには、データメモリ部はカラムアドレスB
lに対応した番地にデータレジスタから上記データAが
古き込まれる。これにより、ディレクトリメモリ部の書
き換えとデータメモリ部でのデータ転送が行われる。
そして、ケー・ス1では、前記の説明ではみかけ上なに
も変更がないように説明したが、実際には、転送先のカ
ラムアドレスが同一であるからタイミング(4)ではカ
ラムアドレスCEのワード線が選択され、そこに同じ0
8のタグアドレスが書き込まれ、パンリッドビットが論
理“1゛の有効にされる。このときには、データメモリ
部は同じ番地に上記データAが再び書き込まれるもので
ある。ただし、上記の一連の処理の前と後でみるとディ
レクトリメモリ部とデータメモリ部とでは実質的にはな
にも変化がない。
上記のように4つのケースを説明したが、キャッシュメ
モリ内で行われる一連のデータ処理は全部同じとなる。
これにより、ダイナミックリロケーションやガベージコ
レクションといったようなメインメモリ側のデータ転送
に伴うキャッシュメモリ内に一連の上述のような各ケー
ス自動書き換え動作を同一の動作シーケンスにより実行
できる。
すなわわち、1つの制御プログラムにより各ケースのデ
ータ処理を行うことができろ。
この構成では、画一的に信号処理が行われるので、処理
プログラム及び回路の筒素化が可能になる。すなわち、
転送元と転送先のアドレス比較からカラムアドレス、ア
ドレスタグのうちいずれが変化したか等検出すること、
及びその検出結果に応じて変更するアドレスに対応した
ディレクトリメモリ部及びデータメモリ部の書き込み制
御を行うことが不要になるからである。
なお、上記のようなダイナミックリロケーショやガベー
ジコレクションといった処理によりメインメモリ側のア
ドレス変更がなされたときにおいて、キャシュメモリに
そのデータが存在しない場合、転送元のアドレスに対し
てミスヒツトとなる。それ故、このようなデータのアド
レス変更に対してはキャッシュメモリはそれを無視する
ものとなる。
上記の実施例から得られる作用効果は、下記の通りであ
る。すなわち、 (1)メインメモリにおけるダイナミックリロケーショ
ンやガベージコレクションといったようなデー°りの格
納アドレスを変更する処理に対して、キャッシュメモリ
自身がメインメモリ側のアドレス変更を監視して、その
データの転送先アドレスに対応して内部のアドレスタグ
及び/又はデータの格納場所を自動的に変更する機能を
持つものであるため、そのデータを有効利用ができるか
らシステムのスルーブツトの向上を実現することができ
るという効果が得られる。
(2)メインメモリ側の転送元のアドレスに対応してキ
ャッシュメモリ側のアドレスタグ及びデータをいったん
無効にし、メインメモリ側の転送先のアドレスに対応し
てキャッシュメモリ側のアドレスタグ及びデータの書き
込みを行うことによってアドレスタグ及び/又はデータ
の格納場所を自動的に変更することにより、キャッシュ
メモリ内で行われる一連のデータ処理は転送元と転送先
のアドレスに無関係に全部同じとなる。これにより、画
一的に信号処理が行われるので、処理プログラム及び回
路の簡素化が可能になるという効果が得られる。
以上本発明者によってなされた発明を実施例に基づき具
体的に説明したが、本願発明は前記実施例に限定される
ものではな(、その要旨を逸脱しない範囲で種々変更可
能であることはいうまでもない。例えば、キャッシュメ
モリ側において行われる書き摸えアドレスのうち、カラ
ムアドレスがヒントしたときのみ、上記の機能によりア
ドレスタグを転送先のものに上書きすることによって前
記ケース3の場合に対処するものであってもよい。
このときデータメモリ部のデータAはそのままとされる
。あるいは、前記ケース2の場合のようにキャッシュメ
モリ側でカラムアドレスのみを変更するとき、内部に別
テーブルを設けて、そこに転送先のカラムを書き込むも
のとして、タグアドレスとデータの移動を行わないよう
にするものであってもよい。
また、キャッシュメモリは、マイクロプロセッサMPU
から所定のコントロール信号を受けて、上記ダイナミッ
クリロケーション又はガベ−ジコレクションといったよ
うなメインメモリ側のデータのアドレス変更処理が行わ
れることをの指示を受け、マイクロプロセッサ側からの
アドレス信号をモニターして転送元と転送先のアドレス
を取り込むものであってもよい。このとき、キャッシュ
メモリとマイクロプロセッサMPUとを同期して動作さ
せるために、キャッシュメモリには、第1図のようにマ
イクロプロセッサMPUと同じクロ7りCLKが供給さ
れるようにしてもよい。キャッシュメモリ自体の具体的
構成は、前記実施例と同様な機能を持つ事を条件として
種々の実施形態を採ることができるものである。
この発明は、バッファ記憶方式に対応したキャッシュメ
モリとして広く利用することができるものである。
〔発明の効果〕
本願において開示される発明のうち代表的なものによっ
て得られる効果を簡単に説明すれば下記の通りである。
すなわち、メインメモリにおけるダイナミックリロケー
ションやガベージコレクションといったようなデータの
格納アドレスを変更する処理に対して、キャッシュメモ
リ自身がメインメモリ側のアドレス変更を監視して、そ
のデータの転送先アドレスに対応して内部のアドレスタ
グ及び/又はデータの格納場所を自動的に変更する機能
を持つものであるため、そのデータを有効利用ができる
からシステムのスルーブツトの向上を実現することがで
きる。
【図面の簡単な説明】
第1図は、この発明に係るキヤ・ノシエメモリの一実施
例を示すブロック図、 第2図は、上記キャッシュメモリが用いられるマイクロ
コンピュータシステムの一実施例を示すブロック図、 第3図は、ダイナミックリロケーションの一例を説明す
るためのメモリマツプ図、 第4図は、メインメモリのアドレスマ・ノブにおけるア
ドレス及びデータと、キャッシュメモリ内のディレクト
リメモリ部とデータ部との対応例を示す概念図、 第5図は、キャッシュメモリのディレクトリメモリ部と
データメモリ部の内容変更又は転送の組み合わせを示す
動作モード図、 第6図は、ダイナミックリロケーション又はガベージコ
レクヨンに伴うメインメモリ側のデータ転送例を示すメ
モリマツプ図、 第7図は、それに対応したキャッシュメモリ内でのデー
タ変更例を示すメモリマツプ図、第8図は、キャッシュ
メモリ内部におけるデータ転送の一例を示す概念図、 第9図には、そのタイミング図である。 WB・・ライトバッファ、DLM・・ディレクトリメモ
リ、DTM・・データメモリ、TCP・・タグ比較回路
、CNT・・制御回路、BM・・バッファメモリ、BT
、BBV・・制御ビット、AD、DT・・マイクロプロ
セッサ側内部バス、AD’ 、DT” ・・メインメモ
リ側内部バス、LRU・・ブロック置換制御回路、CL
M・・カラムアドレス、TAG・・タグアドレス MPU・・マイクロプロセッサ、ROM・・リード・オ
ンリー・メモリ、Ilo・・入出力装置、CRT・・デ
イスプレィ装置、DMAC・・直接メモリアクセス制?
11替置

Claims (1)

  1. 【特許請求の範囲】 1、メインメモリ側のアドレス変更を監視して、そのデ
    ータの転送先アドレスに対応して内部のアドレスタグ及
    び/又はデータの格納場所を自動的に変更する機能を設
    けたことを特徴とするキャッシュメモリ。 2、上記メインメモリ側のアドレス変更は、ダイナミッ
    クリロケーション又はガベージコレクションの実行によ
    り行われるものであることを特徴とする特許請求の範囲
    第1項記載のキャッシュメモリ。 3、メインメモリ側の転送元のアドレスに対応してキャ
    ッシュメモリ側のアドレスタグ及びデータをいったん無
    効にし、メインメモリ側の転送先のアドレスに対応して
    キャッシュメモリ側のアドレスタグ及びデータの書き込
    みを行うことによってアドレスタグ及び/又はデータの
    格納場所を自動的に変更するものであることを特徴とす
    る特許請求の範囲1又は第2項記載のキャッシュメモリ
JP1034845A 1989-02-14 1989-02-14 キャッシュメモリ Pending JPH02213960A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP1034845A JPH02213960A (ja) 1989-02-14 1989-02-14 キャッシュメモリ
KR1019900000992A KR900013510A (ko) 1989-02-14 1990-01-30 캐시 메모리
EP19900101908 EP0383097A3 (en) 1989-02-14 1990-01-31 Cache memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1034845A JPH02213960A (ja) 1989-02-14 1989-02-14 キャッシュメモリ

Publications (1)

Publication Number Publication Date
JPH02213960A true JPH02213960A (ja) 1990-08-27

Family

ID=12425526

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1034845A Pending JPH02213960A (ja) 1989-02-14 1989-02-14 キャッシュメモリ

Country Status (3)

Country Link
EP (1) EP0383097A3 (ja)
JP (1) JPH02213960A (ja)
KR (1) KR900013510A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09139944A (ja) * 1995-09-12 1997-05-27 Matsushita Electric Ind Co Ltd 符号化方法,符号化装置,ウエーブレット変換装置およびウエーブレット逆変換装置
JP2012160131A (ja) * 2011-02-02 2012-08-23 Toyota Motor Corp キャッシュメモリの制御装置、キャッシュメモリシステム、キャッシュメモリの制御装置の製造方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2737820B2 (ja) * 1992-09-24 1998-04-08 インターナショナル・ビジネス・マシーンズ・コーポレイション メモリアクセス方法およびシステム
US6629113B1 (en) 1999-06-30 2003-09-30 International Business Machines Corporation Method and system for dynamically adjustable and configurable garbage collector
US6950837B2 (en) * 2001-06-19 2005-09-27 Intel Corporation Method for using non-temporal streaming to improve garbage collection algorithm

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5730179A (en) * 1980-07-29 1982-02-18 Fujitsu Ltd Buffer memory control system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09139944A (ja) * 1995-09-12 1997-05-27 Matsushita Electric Ind Co Ltd 符号化方法,符号化装置,ウエーブレット変換装置およびウエーブレット逆変換装置
JP2012160131A (ja) * 2011-02-02 2012-08-23 Toyota Motor Corp キャッシュメモリの制御装置、キャッシュメモリシステム、キャッシュメモリの制御装置の製造方法

Also Published As

Publication number Publication date
KR900013510A (ko) 1990-09-06
EP0383097A2 (en) 1990-08-22
EP0383097A3 (en) 1991-09-18

Similar Documents

Publication Publication Date Title
US4991081A (en) Cache memory addressable by both physical and virtual addresses
EP0408058B1 (en) Microprocessor
JPH07129471A (ja) 主メモリ・プリフェッチ・キャッシュを含むコンピュータ装置とその作動方法
US5287482A (en) Input/output cache
EP0470739A1 (en) Method for managing a cache memory system
US5287512A (en) Computer memory system and method for cleaning data elements
JPH03225542A (ja) データ記憶方法及びビットエンコードデータの処理回路
US5813030A (en) Cache memory system with simultaneous access of cache and main memories
EP0180369B1 (en) Cache memory addressable by both physical and virtual addresses
JPH02213960A (ja) キャッシュメモリ
US5749092A (en) Method and apparatus for using a direct memory access unit and a data cache unit in a microprocessor
GB2214336A (en) Cache memory apparatus
EP0474356A1 (en) Cache memory and operating method
JP2580263B2 (ja) バッファ記憶装置
US4628450A (en) Data processing system having a local memory which does not use a directory device with distributed resident programs and a method therefor
JP3971807B2 (ja) キャッシュ記憶装置および方法
JPH04250542A (ja) コンピューターメモリシステム
US5960456A (en) Method and apparatus for providing a readable and writable cache tag memory
JPH07234819A (ja) キャッシュメモリ
JP2976980B2 (ja) キャッシュ制御方式
JPH04205154A (ja) マイクロプロセッサシステム
JPH0793215A (ja) 半導体記憶装置
JPS63240649A (ja) デ−タ処理装置
JP2923273B2 (ja) データ処理システム
EP0470737A1 (en) Cache memory operating method and structure