JPH04137053A - キャッシュメモリへのブロック登録制御方式 - Google Patents

キャッシュメモリへのブロック登録制御方式

Info

Publication number
JPH04137053A
JPH04137053A JP2257060A JP25706090A JPH04137053A JP H04137053 A JPH04137053 A JP H04137053A JP 2257060 A JP2257060 A JP 2257060A JP 25706090 A JP25706090 A JP 25706090A JP H04137053 A JPH04137053 A JP H04137053A
Authority
JP
Japan
Prior art keywords
block
entry
cache memory
processor
registration
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
JP2257060A
Other languages
English (en)
Inventor
Tsunemichi Shiozawa
塩澤 恒道
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2257060A priority Critical patent/JPH04137053A/ja
Publication of JPH04137053A publication Critical patent/JPH04137053A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 (発明の属する分野の説明) 本発明は、情報処理装置において、キャッシュメモリへ
のブロックの登録方法を制御するためのキャッシュメモ
リのブロック登録制御方式に関するものである。
(従来の技術) 第3図は従来のキャッシュメモリにおけるブロック登録
制御方式により実現される情報処理装置を説明する図で
あり、1はプロセッサてあり、2はキャッシュメモリて
あり、3はバスであり、4はメインメモリであり、メイ
ンメモリ4は等しい大きさのブロックデータに分かれて
いる。21および22は一致検出回路であり、25Aは
メインメモリ上のブロックを格納しているブロックメモ
リ部であり、25Aは複数のエントリにより構成され、
各エントリはメインメモリ4上にあるブロックデータな
格納するデータ部、データ部に格納しているブロックデ
ータのアドレス情報を格納するタグ部、タグ部に格納し
ている情報の有効(rlJ)無効(rob)を示すバリ
ッド部から成る。本例においては、キャッシュメモリは
64個のエントリて構成される2ウエイセツトアソシア
テイツのキャッシュメモリであり、ブロックアドレスて
指定されるメインメモリ4上のブロックはブロックの下
位5ビツトによって選択される2個のエントリのいずれ
か一方に登録可能とする。
プロセッサ1が信号線101を介してキャッシュメモリ
2に要求したブロックアドレス(12ビツト)の下位5
ビツトで指定される2個のエントリのいずれか一方のタ
グ部の内容が信号線101を介して入力されたブロック
アドレスの上位7ビツトと一致し、かつバリッドビット
部の内容がrlJである(ヒツト)時、登録制御部24
は信号線104および105を介してヒツトしたエント
リを知り、信号線108または109を介してヒツトし
たエントリのデータ部に格納しているブロックデータを
信号線102に出力し、プロセッサ1へ転送する。
他方、ブロックアドレスの下位5ビツトで指定される2
個のエントリのタグ部の内容が信号線101を介して入
力されたブロックアドレスの上位7ビツトと一致しない
か、またはバリッドビット部の内容か「0」である(ミ
スヒツト)時、キャッシュメモリ2は信号線201を介
してバス3上にブロックデータの転送要求とブロックデ
ータのアドレスを出力する。メインメモリ4は信号線4
01を介してバス3上のブロックデータの転送要求とブ
ロックデータのアドレスを受は取る。メインメモリ4は
、指定されたブロックデータを読みたし、信号線402
を介してハス3上に出力する。登録制御部26Aは、予
め定められた方法によってブロックデータの下位の5ビ
ツトで指定される2個のエントリの何れか一方を選択し
、選択したエントリのデータ部に信号線102を介して
入力したブロックを格納し、タグ部にブロックアドレス
の上位7ビツトを格納し、バリッドビット部に値rlJ
を格納することによってミスヒツトしたブロックの登録
を行う。さらに、キャッシュメモリ2は、メインメモリ
4から転送したソロツクデータを信号線102を介して
プロセッサ1へ転送する。
(発明が解決しようとする課題) この方法では、ミスヒツトしたブロックデータをブロッ
クアドレスの一部(下位5ビツト)を用いて選択される
キャッシュメモリ内のエントリに登録するため、ミスヒ
ツト時には、プロセッサて実行中の処理の内容とは独立
にキャッシュメモリのエントリへの登録が行われる。
一般に、プロセッサで実行される処理の単位をタスクと
呼び、タスクは、本来の処理のために実行されるタスク
(定常タスク)と異常等が発生した場合に実行されるタ
スク(例外タスク)とに分類できる。そして、プロセッ
サが定常タスクを実行中にアクセスするブロックデータ
はプロセッサから再利用される確率か高く、キャッシュ
メモリに格納することによって、キャッシュメモリのヒ
ツト率を高めることがてきるので、プロセッサの処理能
力を高めることかできる。他方、プロセッサか例外タス
クを実行中にアクセスするブロックデータはプロセッサ
から再利用される確率が低く、キャッシュメモリに格納
してもヒツト率は向上しない。むしろ、例外タスクかア
クセスしたメインメモリの内容をキャッシュメモリに格
納した場合、プロセッサが定常タスクの処理を再開した
時、定常タスクか中断される前にキャッシュメモリに格
納してあったブロックデータが例外タスクからのアクセ
スかキャッシュメモリてミスヒツトしたブロックデータ
に置き換えられ、再開した定常タスクのヒツト率が低下
する欠点がある。
本発明は上述の欠点を改善するもので、キャッシュメモ
リにおけるヒツト率を改善することを目的とする。
(課題を解決するための手段) 上記目的を達成するための本発明の特徴は、フロセッサ
、キャッシュメモリおよびメインメモリで構成される情
報処理装置に置いて、上記メインメモリはアドレスによ
って複数のブロックに分割されており、上記キャッシュ
メモリはミスヒツト時にミスヒツトしたブロックをキャ
ッシュメモリに登録するか否かを判定する登録条件判定
回路および複数のエントリから成り、各エントリは上記
メインメモリのブロックを識別するアドレス情報を格納
するタグ部、当該エントリへのブロックの登録条件を格
納する登録条件部、当該エントリのタグ部に格納してい
る情報が有効(「1」)であるか無効(「0」)である
かを示すバリッド部およびブロックの内容を格納するデ
ータ部から成る、キャッシュメモリへのブロック登録制
御方式において、上記プロセッサはメインメモリのブロ
ックの内容を要求する時ブロックのアドレスとともに登
録条件を出力し、上記キャッシュメモリは、上記プロセ
ッサから要求されたブロックのアドレス情報と一致する
アドレス情報を格納しているタグ部を持つエントリか存
在し、かつそのエントリのバリッド部に「1」が格納さ
れている(ヒツト)場合、当該エントリのデータ部に格
納されている内容をフロセッサへ転送し、それ以外(ミ
スヒツト)の場合には、上記キャッシュメモリは上記メ
インメモリからプロセッサか要求しているブロックを読
み出し、ミスヒツトしたブロックを登録可能なエントリ
の登録条件部の内容とプロセッサが出力している登録条
件とを上記登録条件判定回路に入力し、登録条件を満足
するエントリが存在するかまたはバリッド部の値が「0
」であるエントリが存在する場合、上記メインメモリか
ら読み出したブロックを登録条件を満足するかまたはバ
リッド部の値か「0」である1個のエントリに登録する
とともにメインメモリから読み出したブロックを上記プ
ロセッサへ転送し、バリッド部の値か「0」であるエン
トリまたは登録条件を満足するエントリか存在しない場
合、キャッシュメモリのエントリへのブロックの登録は
行わずにメインメモリから読みだしたブロックをプロセ
ッサへ転送するキャッシュメモリへのブロック登録制御
方式にある。
(作 用) ミスヒツトが発生した場合、キャッシュメモリのエント
リにプロセッサが出力するタスクの種類に応じてブロッ
クデータを登録可能か否かを設定可能とし、定常タスク
の処理中にミスヒツトが発生した場合にはキャッシュメ
モリの多数のエントリへの登録を可能とし、例外タスク
の処理中には少数のエントリへの登録のみを可能とする
ことができる。従って、例外タスクの処理中にミスヒツ
トが発生しても定常タスクがアクセスするプロックデー
タか置き換えられることか無くなり、例外タスクの終了
後、定常タスクが再開された時のヒツト率を低下させな
いようにすることが可能となる。
(実施例) 第1図は本発明の一実施例であり、1はプロセッサであ
り、2はキャッシュメモリであり、3はバスてあり、4
はメインメモリであり、メインメモリ4は等しい大きさ
のブロックデータに分かれている。11はタスクの種類
を設定するタスク識別レジスタてあり、21および22
は一致検出回路であり、23および24は比較器であり
、25はメインメモリ上のブロックを格納しているブロ
ックメモリ部であり、25は複数のエントリにより構成
され、各エントリはメインメモリ4上にあるブロックデ
ータを格納するデータ部、データ部に格納しているブロ
ックデータのアドレス情報を格納するタグ部、タグ部に
格納している情報の有効げ1」)、無効(rOJ)を示
すバリッド部およびエントリへのブロック登録条件を格
納する登録条件部から成り、26は登録制御部であり、
プロセッサ1が要求したブロックがキャッシュメモリ2
内のいずれのエントリにも存在せずメインメモリ4から
ブロックを読みだした場合、当該ブロックを登録するた
めの制御を行う。比較器23および24は信号線103
を介して入力したタスク識別レジスタ11の上位2ビツ
トによって定まる値か信号線104および105を介し
て入力した登録条件部に格納されている値よりも大きい
かまたは等しい場合かまたはバリッド部の値が「0」の
場合、それぞれのエントリへのブロックの登録か可能で
ある旨を信号線106および107を介して登録制御部
26に通知する。本例においては、キャッシュメモリは
64個のエントリで構成される2ウエイセツトアソシア
テイブのキャッシュメモリであり、ブロックアドレスで
指定されるメインメモリ4上のブロックはブロックの下
位5ヒツトによって選択される2個のエントリのいずれ
か一方に登録可能とする。
ここで、タスク識別レジスタ11の内容はプロセッサ1
で処理されるタスク自身によって値か設定され、タスク
識別レジスタ11に格納されている値の上位2ビツトに
は、タスクの種類に応じて定められる登録条件か設定さ
れており、信号線103を介してキャッシュメモリに入
力されている。また、キャッシュメモリの各エントリの
登録条件部には、メインメモリ4へのアクセスと区別さ
れる手段によって、プロセッサ1により予め登録条件が
第1図に示すように格納されているものとする。
プロセッサ1が信号線101を介してキャッシュメモリ
2に要求したブロックアドレス(12ビツト)の下位5
ビツトで指定される2個のエントリのいずれか一方のタ
グ部の内容か信号線101を介して入力されたブロック
アドレスの上位7ビツトと一致し、かつバリッドビット
部の内容が「1」である(ヒツト)時、登録制御部26
は信号線104および105を介してヒツトしたエント
リを知り、信号線108または109を介してヒツトし
たエントリのデータ部に格納しているブロックデータを
信号線102に出力し、プロセッサ1へ転送する。
他方、ブロックアドレスの下位5ビツトで指定される2
個のエントリのタグ部の内容か信号線101を介して入
力されたブロックアドレスの上位7ビツトと一致しない
か、またはバリッドピット部の内容が「0」である(ミ
スヒツト)時、登録制御部26は信号線201を介して
ハス3上にブロックデータの転送要求とフロックデータ
のアドレスを出力する。メインメモリ4は信号線401
を介してバス3上のブロックデータの転送要求とブロッ
クデータのアドレスを受は取る。メインメモリ4は、指
定されたブロックデータを読みたし、信号線402を介
してバス3上に出力する。゛プロセッサ1が要求したフ
ロックデータのブロックアドレスの下位5ビツトかro
lolo」の場合、アドレスの下位5ビツトで選択され
る2個のエントリの登録条件部に格納しである内容は共
にプロセッサから信号線103を介して入力された値よ
りも大きい(信号線106および107はいずれもオフ
状態)のて、登録制御部26はブロックメモリ部25内
のいずれのエントリにもミスヒツトしたプロッりを登録
せず、キャッシュメモリ2は、メインメモリ4から転送
したブロックデータを信号線102を介してプロセッサ
1へ転送する。
プロセッサ1が要求したブロックデータのブロックアド
レスの下位5ビツトがrlololJの場合、アドレス
の下位5ビツトて選択される2個のエントリの内の一方
の登録条件部に格納しである内容かプロセッサから信号
線103を介して入力された値よりも小さい(信号線1
06がオン状態)ので、登録制御部26は信号線108
を介して登録を指示し、rlololJおよび信号線1
08で指定されるエントリのデータ部に信号線102を
介してハス3から入力したフロックデータなデータ部に
格納し、タグ部にブロックアドレスの上位7ビツトを格
納し、バリッドピット部に値「1」を格納することによ
ってミスヒツトしたブロックの登録を行う。
信号線106および107かいずれもオン状態(いずれ
の登録条件部の値もタスク識別レジスタ11の上位2ビ
ツトの値よりも小さいか等しい)の場合には、登録制御
部は予め定められた方法によって、いずれか1つのエン
トリを選択してブロックデータの登録を行う。
第2図は本発明の別の実施例であり、ブロックメモリ部
25Bの各エントリはメインメモリ4上にあるブロック
データを格納するデータ部、データ部に格納しているブ
ロックデータのアドレス情報を格納するタグ部およびタ
グ部に格納している情報の有効(rlJ)、無効(「0
」)を示すバリッド部から成り、27は登録条件レジス
タである。比較器23および24は信号線103を介し
て入力したタスク識別レジスタ11の上位2ビツトによ
って定まる値か信号線104および105を介して入力
した登録条件レジスタ27に格納されている値よりも大
きいかまたは等しい場合かまたはバリッド部の値が「0
」の場合、それぞれのエントリへのブロックの登録が可
能である旨を信号線106および107を介して登録制
御部26に通知する。本例においては、キャッシュメモ
リは64個のエントリで構成される2ウエイセツトアソ
シアテイブのキャッシュメモリであり、ブロックアドレ
スで指定されるメインメモリ4上のブロックはブロック
の下位5ヒツトによって選択される2個のエントリのい
ずれか一方に登録可能とする。
ここて、タスク識別レジスタ11の内容はプロセッサ1
て処理されるタスク自身によって値が設定され、タスク
識別レジスタ11に格納されている値の北位2ピットに
は、タスクの種類に応して定められる登録条件が設定さ
れており、信号線103を介してキャッシュメモリに入
力されている。また、キャッシュメモリの登録条件レジ
スタ27には、メインメモリ4へのアクセスと区別され
る手段によって、プロセッサ1により予め登録条件が第
2図に示すように格納されているものとする。
ミスヒツト時、登録制御部26は信号線201を介して
バス3上にブロックデータの転送要求とブロックデータ
のアドレスを出力する。メインメモリ4は信号線401
を介してバス3上のブロックデータの転送要求とブロッ
クデータのアドレスを受は取る。メインメモリ4は、指
定されたブロックデータを読みたし、信号線402を介
してバス3上に出力する。
登録条件レジスタ27に格納しである内容の上位2ビツ
トが信号線104を介して比較器23に入力され、下位
2ビツトが信号線105介して比較器24に入力される
。信号線104を介して入力された値が信号線103を
介して入力された値よりも小さい(信号線106かオン
状態)ので、登録制御部26は信号線108を介して登
録を指示し、rloloJおよび信号線108で指定さ
れるエントリのデータ部に信号線102を介してバス3
から入力したブロックデータをデータ部に格納し、タグ
部にブロックアドレスの上位7ビツトを格納し、バリッ
ドピット部に値「1」を格納することによってミスヒツ
トしたブロックの登録を行う。
信号線106および107がいずれもオン状態の場合に
は、登録制御部は予め定められた方法によって、いずれ
か1つのエントリを選択してブロックデータの登録を行
う。
(発明の効果) 以上説明したように、キャッシュメモリのエントリまた
は複数のエントリに対し、キャッシュメモリでミスヒツ
トか発生した時にミスヒツトしたブロックデータをエン
トリに登録するか否かの登録条件を設定し、エントリの
登録条件かプロセッサが出力する登録条件を満足する場
合かまたはキャッシュメモリに空きエントリ(バリッド
部の値が「O」のエントリ)か存在する場合のみミスヒ
ツトしたブロックデータの登録が可能となり、プロセッ
サで処理するタスクの種類に応じてプロセッサから出力
する登録条件を変更することによって、無駄なブロック
をキャッシュメモリに登録し、キャッシュメモリのヒツ
ト率を低下させないように制御することが可能となる。
第1図、第2図の実施例を比較した場合、第1図の実施
例はエントリ毎に登録条件が設定できるので自由度が高
い、他方第2図の実施例は複数のエントリに対して同一
の登録条件を設定するので自由度は低いが、各エントリ
内の登録条件部が不要となるので、キャッシュメモリ内
のハード量を削減することかてきる。
【図面の簡単な説明】
第1図は本発明の実施例のブロック図、第2図は本発明
の別の実施例のブロック図、第3図は従来の技術のブロ
ック図である。 1・・・プロセッサ、  2・・・キャッシュメモリ、
3・・・バス、     4・・・メインメモリ、11
・・・タスク識別レジスタ、 21、22・・・−数構出回路、 23、24・・・比較器、 25、25A、 25B・・・ブロックメモリ部、26
、28A・・・登録制御部。

Claims (2)

    【特許請求の範囲】
  1. (1)プロセッサ、キャッシュメモリおよびメインメモ
    リで構成される情報処理装置において、上記メインメモ
    リはアドレスによって複数のブロックに分割されており
    、上記キャッシュメモリはミスヒット時にミスヒットし
    たブロックをキャッシュメモリに登録するか否かを判定
    する登録条件判定回路および複数のエントリから成り、
    各エントリは上記メインメモリのブロックを識別するア
    ドレス情報を格納するタグ部、当該エントリへのブロッ
    クの登録条件を格納する登録条件部、当該エントリのタ
    グ部に格納している情報が有効(「1」)であるか無効
    (「0」)であるかを示すバリッド部およびブロックの
    内容を格納するデータ部から成る、キャッシュメモリへ
    のブロック登録制御方式おいて、 上記プロセッサはメインメモリのブロックの内容を要求
    する時ブロックのアドレスとともに登録条件を出力し、 上記キャッシュメモリは、上記プロセッサから要求され
    たブロックのアドレス情報と一致するアドレス情報を格
    納しているタグ部を持つエントリが存在し、かつそのエ
    ントリのバリッド部に「1」が格納されているヒットの
    場合、当該エントリのデータ部に格納されている内容を
    プロセッサへ転送し、それ以外のミスヒットの場合には
    、上記キャッシュメモリは上記メインメモリからプロセ
    ッサが要求しているブロックを読み出し、 ミスヒットしたブロックを登録可能なエントリの登録条
    件部の内容とプロセッサが出力している登録条件とを上
    記登録条件判定回路に入力し、登録条件を満足するエン
    トリが存在するかまたはバリッド部の値が「0」である
    エントリが存在する場合、上記メインメモリから読み出
    したブロックを登録条件を満足するかまたはバリッド部
    の値が「0」である1個のエントリに登録するとともに
    メインメモリから読み出したブロックを上記プロセッサ
    へ転送し、 バリッド部の値が「0」であるエントリまたは登録条件
    を満足するエントリが存在しない場合、キャッシュメモ
    リのエントリへのブロックの登録は行わずにメインメモ
    リから読みたしたブロックをプロセッサへ転送すること
    を特徴とするキャッシュメモリへのブロック登録制御方
    式。
  2. (2)請求項1記載のキャッシュメモリへのブロック登
    録制御方式において、キャッシュメモリの複数のエント
    リを分割し、分割したエントリのそれぞれに対応させて
    登録条件格納手段を設け、ミスヒット時、メインメモリ
    から読みだしたブロックを格納するエントリに対応して
    いる上記登録条件格納手段の内容がプロセッサから出力
    される登録条件を満足している場合にのみ当該エントリ
    へのブロックの登録を行うことを特徴とするキャッシュ
    メモリへのブロック登録制御方式。
JP2257060A 1990-09-28 1990-09-28 キャッシュメモリへのブロック登録制御方式 Pending JPH04137053A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2257060A JPH04137053A (ja) 1990-09-28 1990-09-28 キャッシュメモリへのブロック登録制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2257060A JPH04137053A (ja) 1990-09-28 1990-09-28 キャッシュメモリへのブロック登録制御方式

Publications (1)

Publication Number Publication Date
JPH04137053A true JPH04137053A (ja) 1992-05-12

Family

ID=17301182

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2257060A Pending JPH04137053A (ja) 1990-09-28 1990-09-28 キャッシュメモリへのブロック登録制御方式

Country Status (1)

Country Link
JP (1) JPH04137053A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005048112A1 (ja) * 2003-11-12 2005-05-26 Matsushita Electric Industrial Co., Ltd. キャッシュメモリおよびその制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005048112A1 (ja) * 2003-11-12 2005-05-26 Matsushita Electric Industrial Co., Ltd. キャッシュメモリおよびその制御方法
US7502887B2 (en) 2003-11-12 2009-03-10 Panasonic Corporation N-way set associative cache memory and control method thereof

Similar Documents

Publication Publication Date Title
US4445174A (en) Multiprocessing system including a shared cache
US5535361A (en) Cache block replacement scheme based on directory control bit set/reset and hit/miss basis in a multiheading multiprocessor environment
US6219759B1 (en) Cache memory system
CA1218753A (en) Buffer-storage control system
JPS63195752A (ja) キヤツシユメモリ−
JPH0285960A (ja) 情報処理システム
US5313602A (en) Multiprocessor system and method of control over order of transfer of data between buffer storages
JPH0532775B2 (ja)
US5623626A (en) Logical cache memory for multi-processor system
US4658356A (en) Control system for updating a change bit
JP2000339222A (ja) キャッシュメモリ
US20020042860A1 (en) Cache system
JPH04137053A (ja) キャッシュメモリへのブロック登録制御方式
US5388229A (en) Data transmission system which prefetches data to be transferred
JPH0756808A (ja) データキャッシュバッファ及び記憶方法
JPH06187239A (ja) 多階層キャッシュメモリにおけるデータ一致制御方式
JPH04195576A (ja) キャッシュメモリ方式
JPH05120133A (ja) キヤツシユ装置
JPH01307849A (ja) データアクセス装置
JPH08272687A (ja) 入出力キャッシュメモリ
JPS61289464A (ja) スカラ演算処理装置
JPH04288647A (ja) キャッシュメモリにおける置き換え制御装置
JPH02176839A (ja) 情報処理装置
JPH1055308A (ja) キャッシュメモリ
JPH04239944A (ja) キャッシュロック方式