JPH11259362A - キャッシュメモリ制御方法及び装置 - Google Patents
キャッシュメモリ制御方法及び装置Info
- Publication number
- JPH11259362A JPH11259362A JP10082545A JP8254598A JPH11259362A JP H11259362 A JPH11259362 A JP H11259362A JP 10082545 A JP10082545 A JP 10082545A JP 8254598 A JP8254598 A JP 8254598A JP H11259362 A JPH11259362 A JP H11259362A
- Authority
- JP
- Japan
- Prior art keywords
- job
- address
- entry
- cache
- array
- 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
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【課題】キャッシュメモリにおいてJOBを主体として
フラッシュ処理を行う方法及び方式の提供。 【解決手段】キャッシュ登録時、各エントリ毎に、その
時点で実行されているジョブのジョブIDを登録してお
くことにより、該ジョブの実行が終了した時点で、ジョ
ブIDを指定することにより該ジョブIDを有するキャ
ッシュエントリー部分のみをフラッシュ可能とする。
フラッシュ処理を行う方法及び方式の提供。 【解決手段】キャッシュ登録時、各エントリ毎に、その
時点で実行されているジョブのジョブIDを登録してお
くことにより、該ジョブの実行が終了した時点で、ジョ
ブIDを指定することにより該ジョブIDを有するキャ
ッシュエントリー部分のみをフラッシュ可能とする。
Description
【0001】
【発明の属する技術分野】本発明は、情報処理装置のキ
ャッシュメモリに関し、特にキャッシュフラッシュの制
御方法及び方式に関する。
ャッシュメモリに関し、特にキャッシュフラッシュの制
御方法及び方式に関する。
【0002】
【従来の技術】キャッシュメモリのフラッシュを行う場
合、従来、第1の方法として、アドレスそのものを比較
することによりキャッシュフラッシュを行うか、第2の
方法として、属性ビットを設け、この属性と一致するエ
ントリーをフラッシュする方法が用いられている。
合、従来、第1の方法として、アドレスそのものを比較
することによりキャッシュフラッシュを行うか、第2の
方法として、属性ビットを設け、この属性と一致するエ
ントリーをフラッシュする方法が用いられている。
【0003】第1の方法は、あるアドレス領域(範囲)
に含まれるアドレス(タグアドレス)を登録しているエ
ントリーのフラッシュを行い、第2の方法では、各エン
トリーに登録されている属性(複数ビットで構成)とフ
ラッシュ指示命令に付加されている属性のパターンが一
致すればフラッシュを行っている。
に含まれるアドレス(タグアドレス)を登録しているエ
ントリーのフラッシュを行い、第2の方法では、各エン
トリーに登録されている属性(複数ビットで構成)とフ
ラッシュ指示命令に付加されている属性のパターンが一
致すればフラッシュを行っている。
【0004】第1の方法については、フラッシュを希望
するところのアドレスがわかっているものに対して行わ
れるものである。
するところのアドレスがわかっているものに対して行わ
れるものである。
【0005】また第2の方法は、ソフトウェアがあらか
じめ主記憶装置上のエリア(「ページエリア」という。
アドレスエリアごとに区分される)毎に属性を付けてお
くものである。
じめ主記憶装置上のエリア(「ページエリア」という。
アドレスエリアごとに区分される)毎に属性を付けてお
くものである。
【0006】
【発明が解決しようとする課題】このように第1、第2
の方法とも、アドレスによる制約があり、アドレスを考
えずに、言い換えれば、ジョブ(JOB)毎にフラッシ
ュ処理を行うことは出来ない。
の方法とも、アドレスによる制約があり、アドレスを考
えずに、言い換えれば、ジョブ(JOB)毎にフラッシ
ュ処理を行うことは出来ない。
【0007】なお、例えば特開平3−235143号公
報には、プロセッサが実行しようとするプロセスのプロ
セス識別番号を発生する手段から発生されたプロセス識
別番号をキャッシュメモリのアドレスとして付加する構
成としたキャッシュメモリ制御装置が提案されている。
報には、プロセッサが実行しようとするプロセスのプロ
セス識別番号を発生する手段から発生されたプロセス識
別番号をキャッシュメモリのアドレスとして付加する構
成としたキャッシュメモリ制御装置が提案されている。
【0008】したがって、本発明は、上記問題点に鑑み
てなされたものであって、その目的は、キャッシュメモ
リにおいてジョブを主体としてフラッシュ処理を行う方
法及び方式を提供することにある。
てなされたものであって、その目的は、キャッシュメモ
リにおいてジョブを主体としてフラッシュ処理を行う方
法及び方式を提供することにある。
【0009】
【課題を解決するための手段】前記目的を達成するため
本発明は、キャッシュ登録時、各エントリー毎に、その
時点で実行されているジョブの識別情報(「ジョブI
D」という)を登録しておき、該ジョブの実行が終了し
た時点で、ジョブIDを指定することにより、該ジョブ
IDと同一のIDをキャッシュエントリー部分のみをフ
ラッシュ可能としたものである。
本発明は、キャッシュ登録時、各エントリー毎に、その
時点で実行されているジョブの識別情報(「ジョブI
D」という)を登録しておき、該ジョブの実行が終了し
た時点で、ジョブIDを指定することにより、該ジョブ
IDと同一のIDをキャッシュエントリー部分のみをフ
ラッシュ可能としたものである。
【0010】また、本発明は、入力アドレス信号のイン
デックス部で参照されるエントリーがタグアドレス、属
性、及び、ジョブID情報を保持するアドレスアレー
と、前記入力アドレス信号のインデックス部とブロック
内アドレスで参照され、データを保持するデータアレー
と、プロセッサで実行されるジョブが切り替わる毎にそ
のジョブIDが書き込まれるレジスタと、を備え、キャ
ッシュミスヒット時、新たにエントリーを登録する際、
前記ジョブIDレジスタに格納されるジョブIDを、ア
ドレス信号のインデックス部で参照される前記アドレス
アレーのエントリーに登録しておき、ジョブID毎にフ
ラッシュを指示するソフトウェア命令の実行で指定され
たジョブIDを、前記アドレスアレーのエントリー中で
サーチし、一致したエントリーのバリッドビットをリセ
ットすることで、該エントリー部分だけをフラッシュす
る。
デックス部で参照されるエントリーがタグアドレス、属
性、及び、ジョブID情報を保持するアドレスアレー
と、前記入力アドレス信号のインデックス部とブロック
内アドレスで参照され、データを保持するデータアレー
と、プロセッサで実行されるジョブが切り替わる毎にそ
のジョブIDが書き込まれるレジスタと、を備え、キャ
ッシュミスヒット時、新たにエントリーを登録する際、
前記ジョブIDレジスタに格納されるジョブIDを、ア
ドレス信号のインデックス部で参照される前記アドレス
アレーのエントリーに登録しておき、ジョブID毎にフ
ラッシュを指示するソフトウェア命令の実行で指定され
たジョブIDを、前記アドレスアレーのエントリー中で
サーチし、一致したエントリーのバリッドビットをリセ
ットすることで、該エントリー部分だけをフラッシュす
る。
【0011】
【発明の実施の形態】本発明の実施の形態について以下
に説明する。
に説明する。
【0012】本発明のキャッシュフラッシュ方法は、そ
の好ましい実施の形態において、キャッシュ内の各登録
エントリー毎に、その時のジョブ(JOB)番号、もし
くはその時点(特定のサブルーチン実行時、またはプロ
グラム上での現在の実行位置)を特定するための何かし
らのマークをID(識別情報)として、それらの命令列
が実行されている間に、ジョブID(JOB ID)レ
ジスタを登録しておくことにより、各キャッシュのエン
トリーがどのジョブ(JOB)、及び、サブルーチンま
たはプログラム位置で登録されたかを認識できるように
し、該ジョブ(JOB)の実行が終了した時点で、該ジ
ョブ(JOB)により登録されたキャッシュエントリー
部分のみをフラッシュ可能としたものである。
の好ましい実施の形態において、キャッシュ内の各登録
エントリー毎に、その時のジョブ(JOB)番号、もし
くはその時点(特定のサブルーチン実行時、またはプロ
グラム上での現在の実行位置)を特定するための何かし
らのマークをID(識別情報)として、それらの命令列
が実行されている間に、ジョブID(JOB ID)レ
ジスタを登録しておくことにより、各キャッシュのエン
トリーがどのジョブ(JOB)、及び、サブルーチンま
たはプログラム位置で登録されたかを認識できるように
し、該ジョブ(JOB)の実行が終了した時点で、該ジ
ョブ(JOB)により登録されたキャッシュエントリー
部分のみをフラッシュ可能としたものである。
【0013】これによりソフトウェア命令の指示によ
り、他のジョブ(JOB)により登録されたキャッシュ
エントリーに影響することなく、特定のジョブ(JO
B)によって登録されたキャッシュエントリーのみを選
択してフラッシュすることが可能である。これによりソ
フトウェアからの効率的なキャッシュの管理、運用が可
能となる。
り、他のジョブ(JOB)により登録されたキャッシュ
エントリーに影響することなく、特定のジョブ(JO
B)によって登録されたキャッシュエントリーのみを選
択してフラッシュすることが可能である。これによりソ
フトウェアからの効率的なキャッシュの管理、運用が可
能となる。
【0014】本発明は、その好ましい実施の形態におい
て、入力アドレス信号のインデックス部で参照されるエ
ントリーがタグアドレス、属性、及びジョブID情報を
保持するアドレスアレー(図1の101)と、前記入力
アドレス信号のインデックス(INDEX)部とブロッ
ク(BLOCK)内アドレスで参照され、データを保持
するデータアレー(図1の102)と、プロセッサで実
行されるジョブIDを保持するジョブIDレジスタ1
(103−1)と、を備え、キャッシュミスヒット時、
新たにエントリーを登録する際、ジョブIDレジスタ1
(103−1)に格納されているその時点で実行中のジ
ョブのジョブIDを、前記アドレスアレーのインデック
ス部で参照されるエントリーに登録しておき(図2参
照)、ジョブID毎にフラッシュを指示するソフトウェ
ア命令で指定されたジョブIDを、前記アドレスアレー
のエントリー中でサーチし、ジョブIDの一致したエン
トリーのバリッドビットをリセットすることで、該キャ
ッシュエントリー部分だけをフラッシュする(図3参
照)。
て、入力アドレス信号のインデックス部で参照されるエ
ントリーがタグアドレス、属性、及びジョブID情報を
保持するアドレスアレー(図1の101)と、前記入力
アドレス信号のインデックス(INDEX)部とブロッ
ク(BLOCK)内アドレスで参照され、データを保持
するデータアレー(図1の102)と、プロセッサで実
行されるジョブIDを保持するジョブIDレジスタ1
(103−1)と、を備え、キャッシュミスヒット時、
新たにエントリーを登録する際、ジョブIDレジスタ1
(103−1)に格納されているその時点で実行中のジ
ョブのジョブIDを、前記アドレスアレーのインデック
ス部で参照されるエントリーに登録しておき(図2参
照)、ジョブID毎にフラッシュを指示するソフトウェ
ア命令で指定されたジョブIDを、前記アドレスアレー
のエントリー中でサーチし、ジョブIDの一致したエン
トリーのバリッドビットをリセットすることで、該キャ
ッシュエントリー部分だけをフラッシュする(図3参
照)。
【0015】このように、本発明の実施の形態は、メモ
リにおいて、フラッシュを効果的に行い、キャッシュの
使用効率を向上することにより、ソフトウェアの性能の
向上を行うようにしたものである。
リにおいて、フラッシュを効果的に行い、キャッシュの
使用効率を向上することにより、ソフトウェアの性能の
向上を行うようにしたものである。
【0016】
【実施例】上記した本発明の実施の形態についてさらに
詳細に説明すべく、本発明の実施例について図面を参照
して説明する。
詳細に説明すべく、本発明の実施例について図面を参照
して説明する。
【0017】一般にキャッシュは、キャッシュにデータ
が登録されているかどうかの判定後、登録されていたら
キャッシュからデータを取り出す。その判定方法として
は、要求されたデータのアドレスがキャッシュ上に登録
されているデータのアドレスと一致していればキャッシ
ュ・ヒットとしてデータを取り出す。
が登録されているかどうかの判定後、登録されていたら
キャッシュからデータを取り出す。その判定方法として
は、要求されたデータのアドレスがキャッシュ上に登録
されているデータのアドレスと一致していればキャッシ
ュ・ヒットとしてデータを取り出す。
【0018】このため、キャッシュメモリは、判定する
ためのアドレス(タグアドレス;TAG ADDRES
S)を保持するアドレスアレー(AA)と、これに対応
するメモリ上のデータを保持するデータアレー(DA)
の2つのメモリから構成される。
ためのアドレス(タグアドレス;TAG ADDRES
S)を保持するアドレスアレー(AA)と、これに対応
するメモリ上のデータを保持するデータアレー(DA)
の2つのメモリから構成される。
【0019】図1は、本発明の一実施例の構成を示す図
である。図1を参照すると、キャッシュデータを登録す
るデータアレー102と、キャッシュのアドレスと属性
情報及びJOB ID(ジョブ識別)情報を登録するア
ドレスアレー101と、現在実行しているジョブ(JO
B)、及びサブルーチンのIDを登録するためのJOB
IDレジスタ1(103−1)と、消去を希望するジ
ョブ及びJOB ID情報を登録するためのJOB I
Dレジスタ2(103−2)と、を備えて構成される。
である。図1を参照すると、キャッシュデータを登録す
るデータアレー102と、キャッシュのアドレスと属性
情報及びJOB ID(ジョブ識別)情報を登録するア
ドレスアレー101と、現在実行しているジョブ(JO
B)、及びサブルーチンのIDを登録するためのJOB
IDレジスタ1(103−1)と、消去を希望するジ
ョブ及びJOB ID情報を登録するためのJOB I
Dレジスタ2(103−2)と、を備えて構成される。
【0020】図1を参照すると、キャッシュへのデータ
要求がありアドレス1が提示されると、キャッシュで
は、アドレス内の一部であるインデックスアドレスによ
ってアドレスアレー(AA)101内の複数のエントリ
ーからエントリーを取り出し、該エントリーに登録され
ているタグアドレスとアドレス1のタグアドレスとを比
較器104で比較し、一致すればキャッシュヒットした
としてインデックスアドレスとブロック内アドレスをア
クセスアドレスとしてデータアレー102よりデータを
取り出す。
要求がありアドレス1が提示されると、キャッシュで
は、アドレス内の一部であるインデックスアドレスによ
ってアドレスアレー(AA)101内の複数のエントリ
ーからエントリーを取り出し、該エントリーに登録され
ているタグアドレスとアドレス1のタグアドレスとを比
較器104で比較し、一致すればキャッシュヒットした
としてインデックスアドレスとブロック内アドレスをア
クセスアドレスとしてデータアレー102よりデータを
取り出す。
【0021】タグアドレスが一致しない場合には、キャ
ッシュミスとしてキャッシュからデータを読み出すこと
ができず、メモリ上から(所望データを含むデータ群と
して)データを読み出す。そしてメモリから戻ってきた
データを取り込むと同時に、戻ってきたデータ群を、デ
ータアレー102に取り込む。このミスしたインデック
スアドレスに対応するアドレスアレー(AA)102の
タグアドレを、キャッシュミスしたアドレスのタグアド
レスに書き替える。これらの動作をキャッシュのアプデ
ーション(UPDATION)という。
ッシュミスとしてキャッシュからデータを読み出すこと
ができず、メモリ上から(所望データを含むデータ群と
して)データを読み出す。そしてメモリから戻ってきた
データを取り込むと同時に、戻ってきたデータ群を、デ
ータアレー102に取り込む。このミスしたインデック
スアドレスに対応するアドレスアレー(AA)102の
タグアドレを、キャッシュミスしたアドレスのタグアド
レスに書き替える。これらの動作をキャッシュのアプデ
ーション(UPDATION)という。
【0022】以上、キャッシュのアクセスにおける一般
的な動作を説明した。
的な動作を説明した。
【0023】次に本発明の一実施例の動作について説明
する。以下ではJOB番号を登録する場合を例に説明す
る。通常CPUが動作する場合必ず何かしらのJOB
(又はプロセス、タスク)が実行されている。このた
め、キャッシュをアクセスするリクエストも何かしらの
JOBが属しているはずである。
する。以下ではJOB番号を登録する場合を例に説明す
る。通常CPUが動作する場合必ず何かしらのJOB
(又はプロセス、タスク)が実行されている。このた
め、キャッシュをアクセスするリクエストも何かしらの
JOBが属しているはずである。
【0024】本実施例では、JOBを実行する毎に(J
OBが切り替わる毎に)、そのJOBのID(このID
はソフトウェア側で作成する)を登録するためのJOB
IDレジスタレジスタ1(103−1)を用意する。
OBが切り替わる毎に)、そのJOBのID(このID
はソフトウェア側で作成する)を登録するためのJOB
IDレジスタレジスタ1(103−1)を用意する。
【0025】キャッシュリクエストがキャッシュに入っ
てくると、リクエストアドレスの一部をなすタグアドレ
スは、アドレスの一部をなすインデックスアドレスで参
照されるアドレスアレー101のエントリー内のタグア
ドレスとが比較され、これらが一致すればキャッシュヒ
ットとして、該リクエストはキャッシュのデータアレー
102より、アクセスアドレスに対応する位置からデー
タ取り出すことが出来る。
てくると、リクエストアドレスの一部をなすタグアドレ
スは、アドレスの一部をなすインデックスアドレスで参
照されるアドレスアレー101のエントリー内のタグア
ドレスとが比較され、これらが一致すればキャッシュヒ
ットとして、該リクエストはキャッシュのデータアレー
102より、アクセスアドレスに対応する位置からデー
タ取り出すことが出来る。
【0026】一方、キャッシュミスの場合、キャッシュ
のデータアレー102にミスしたリクエストのデータを
含んだデータ群をメモリから読み出して登録し、同時
に、アドレスアレー101に、ミスしたリクエストのア
ドレスのタグアドレス部分を登録する。この時、登録す
るエントリー、すなわちミスしたリクエストのインデッ
クスアドレスでアクセスされるアドレスアレー101の
領域に、現在実行しているJOBのIDをJOB ID
レジスタ1(103−1)から読み出して登録する。
のデータアレー102にミスしたリクエストのデータを
含んだデータ群をメモリから読み出して登録し、同時
に、アドレスアレー101に、ミスしたリクエストのア
ドレスのタグアドレス部分を登録する。この時、登録す
るエントリー、すなわちミスしたリクエストのインデッ
クスアドレスでアクセスされるアドレスアレー101の
領域に、現在実行しているJOBのIDをJOB ID
レジスタ1(103−1)から読み出して登録する。
【0027】図2は、本発明の一実施例において、JO
BのIDをJOB IDレジスタ1(103−1)から
読み出してアドレスアレー101に登録する際の動作を
説明するための図である。すなわち、更新アドレス保持
レジスタ109には、ミスしたリクエストのアドレスが
保持されており、該アドレスのインデックス部でアクセ
スされるアドレスアレーに、更新アドレス保持レジスタ
109のタグアドレス部と、JOB IDレジスタ1
(103−1)のID情報とが登録される。これにより
各アドレスアレー101上のエントリーには、キャッシ
ュに登録したときに実行されていたJOB IDが登録
されることになる。
BのIDをJOB IDレジスタ1(103−1)から
読み出してアドレスアレー101に登録する際の動作を
説明するための図である。すなわち、更新アドレス保持
レジスタ109には、ミスしたリクエストのアドレスが
保持されており、該アドレスのインデックス部でアクセ
スされるアドレスアレーに、更新アドレス保持レジスタ
109のタグアドレス部と、JOB IDレジスタ1
(103−1)のID情報とが登録される。これにより
各アドレスアレー101上のエントリーには、キャッシ
ュに登録したときに実行されていたJOB IDが登録
されることになる。
【0028】図3は、本発明の一実施例のキャッシュフ
ラッシュの動作を説明するための図である。キャッシュ
フラッシュとは、キャッシュの登録を無効化する作業
で、各エントリーに対応するバリッドビット(Vali
d bit)をリセットすることである。
ラッシュの動作を説明するための図である。キャッシュ
フラッシュとは、キャッシュの登録を無効化する作業
で、各エントリーに対応するバリッドビット(Vali
d bit)をリセットすることである。
【0029】従来方式では、タグアドレスまたは属性を
読み出し比較することで、フラッシュを行っていたが、
本実施例では、これに加えて、JOB IDをエントリ
ーに登録することにより、JOB IDを比較し、一致
すればバリッドビットをリセットする。
読み出し比較することで、フラッシュを行っていたが、
本実施例では、これに加えて、JOB IDをエントリ
ーに登録することにより、JOB IDを比較し、一致
すればバリッドビットをリセットする。
【0030】図3において、サーチカウンター106に
よりアドレスアレー101の各エントリーをアクセスし
て登録されているJOB IDを読み出す。
よりアドレスアレー101の各エントリーをアクセスし
て登録されているJOB IDを読み出す。
【0031】そして、プロセッサで実行されるソフトウ
ェア命令(ID別のフラッシュ指示命令)により指示さ
れたフラッシュ指示JOB IDをJOB IDレジス
タ2(103−2)に登録して、アドレスアレー102
から読み出されたJOB IDを比較器105で比較
し、これらが一致した時に、その時のアクセスアドレス
(サーチカウンター106の出力)をフラッシュアドレ
スとして該アドレスに対応するバリッドビットをリセッ
トする。すなわち、ID別フラッシュ指示命令により指
示されたJOB ID番号(命令と共に送られてくる指
示ID番号)をID選択論理回路112で選択してJO
B IDレジスタ2(103−2)にセットし、これを
比較対象IDとして、アドレスアレーにエントリーされ
ているJOB IDと比較し、一致した場合、該エント
リーに対応するバリッドビットをオフとすることでフラ
ッシュを行う。
ェア命令(ID別のフラッシュ指示命令)により指示さ
れたフラッシュ指示JOB IDをJOB IDレジス
タ2(103−2)に登録して、アドレスアレー102
から読み出されたJOB IDを比較器105で比較
し、これらが一致した時に、その時のアクセスアドレス
(サーチカウンター106の出力)をフラッシュアドレ
スとして該アドレスに対応するバリッドビットをリセッ
トする。すなわち、ID別フラッシュ指示命令により指
示されたJOB ID番号(命令と共に送られてくる指
示ID番号)をID選択論理回路112で選択してJO
B IDレジスタ2(103−2)にセットし、これを
比較対象IDとして、アドレスアレーにエントリーされ
ているJOB IDと比較し、一致した場合、該エント
リーに対応するバリッドビットをオフとすることでフラ
ッシュを行う。
【0032】本発明の一実施例によれば、JOB毎に細
かなキャッシュの制御、運用を可能としており、またソ
フトウェア側からキャッシュ制御がより行いやすくして
いる。例えばJOB IDをサブルーチン(SUBRO
UTINE)ごとに付けて定義すると、プログラムのサ
ブルーチンごと(単位)に、キャッシュの使用の区別を
付けることが出来る。
かなキャッシュの制御、運用を可能としており、またソ
フトウェア側からキャッシュ制御がより行いやすくして
いる。例えばJOB IDをサブルーチン(SUBRO
UTINE)ごとに付けて定義すると、プログラムのサ
ブルーチンごと(単位)に、キャッシュの使用の区別を
付けることが出来る。
【0033】このように、本発明の一実施例によれば、
ソフトウェア側からキャッシュの効率的な利用を考慮す
ることを可能としたものであり、ソフトウェアの性能の
向上、システムの性能の向上の達成を期待できる。
ソフトウェア側からキャッシュの効率的な利用を考慮す
ることを可能としたものであり、ソフトウェアの性能の
向上、システムの性能の向上の達成を期待できる。
【0034】
【発明の効果】以上説明したように、本発明によれば、
下記記載の効果を奏する。
下記記載の効果を奏する。
【0035】本発明の第1の効果は、ジョブ(JOB)
毎に細かなキャッシュの制御、運用が可能である、とい
うことである。
毎に細かなキャッシュの制御、運用が可能である、とい
うことである。
【0036】その理由は、本発明においては、キャッシ
ュのアドレスアレーにジョブIDを登録し、ジョブ単位
でフラッシュするように構成したためである。
ュのアドレスアレーにジョブIDを登録し、ジョブ単位
でフラッシュするように構成したためである。
【0037】本発明の第2の効果は、ソフトウェアから
によりキャッシュ制御がより行いやすくなる、というこ
とである。
によりキャッシュ制御がより行いやすくなる、というこ
とである。
【0038】その理由は、本発明においては、ジョブI
Dをサブルーチンごとに付けて定義することにより、サ
ブルーチンごとにキャッシュの使用の区別を付けること
が出来るためである。
Dをサブルーチンごとに付けて定義することにより、サ
ブルーチンごとにキャッシュの使用の区別を付けること
が出来るためである。
【0039】本発明の第3の効果は、ソフトウェア側か
ら考えたキャッシュの効率的な使用を可能とし、ソフト
ウェアの性能の向上、システムの性能の向上を図ること
ができる、ということである。
ら考えたキャッシュの効率的な使用を可能とし、ソフト
ウェアの性能の向上、システムの性能の向上を図ること
ができる、ということである。
【0040】
【図1】本発明の一実施例の構成を示す図である。
【図2】本発明の一実施例におけるキャッシュ登録動作
を説明するための図である。
を説明するための図である。
【図3】本発明の一実施例におけるキャッシュフラッシ
ュ動作を説明するための図である。
ュ動作を説明するための図である。
101 アドレスアレー 102 データアレー 103−1 JOB ID(ジョブID)レジスタ1 103−2 JOB ID(ジョブID)レジスタ2 104 比較器(タグアドレス比較器) 105 比較器(JOB ID比較器) 106 サーチカウンタ 107 セレクタ 108 出力レジスタ 109 更新アドレス保持レジスタ 110 ラッチ 111 バリッドビット(フラグ) 112 ID選択論理回路 113 ゲート回路
Claims (4)
- 【請求項1】キャッシュ登録時、各エントリー毎に、そ
の時点で実行されているジョブの識別情報(「ジョブI
D」という)を登録しておき、ジョブIDを指定するこ
とにより、該ジョブIDと同一のIDを有するエントリ
ー部分のみをフラッシュすることを特徴とするキャッシ
ュメモリ制御方法。 - 【請求項2】前記ジョブIDをプログラムのサブルーチ
ン単位に付けておくことを特徴とする請求項1記載のキ
ャッシュメモリ制御方法。 - 【請求項3】入力アドレス信号のインデックス部で参照
されるエントリーがタグアドレス、属性、及び、ジョブ
識別情報(「ジョブID」という)を保持するアドレス
アレーと、 前記入力アドレス信号のインデックス部とブロック内ア
ドレスで参照され、データを保持するデータアレーと、 プロセッサで実行されるジョブが切り替わる毎にそのジ
ョブIDが格納されるレジスタと、 を備え、 キャッシュミスヒット時、新たにエントリを登録する
際、前記ジョブIDレジスタに格納されているその時点
のジョブIDを、アドレス信号のインデックス部でアク
セスされる前記アドレスアレーのエントリーに登録して
おき、 ジョブID毎にフラッシュを指示するソフトウェア命令
実行で指定されたジョブIDを、前記アドレスアレーの
エントリー中でサーチし、ジョブIDの一致したエント
リーのバリッドビットをリセットすることで、該エント
リー部分だけをフラッシュする、ことを特徴とするキャ
ッシュメモリ制御方式。 - 【請求項4】入力アドレス信号のインデックス部で参照
されるエントリーがタグアドレス、属性、及び、ジョブ
識別情報(「ジョブID」という)を保持するアドレス
アレーと、 前記入力アドレス信号のインデックス部とブロック内ア
ドレスで参照され、データを保持するデータアレーと、 プロセッサで実行されるジョブが切り替わる毎にそのジ
ョブIDが格納されるレジスタと、 前記アドレスアレーの各エントリーに含まれるジョブI
Dを検索する際に、前記アドレスアレーを順次アクセス
するアクセスアドレスを生成するサーチカウンターと、 フラッシュ指示命令の実行で指定されたジョブIDと、
前記サーチカウンタでアクセスされた前記アドレスアレ
ーのエントリーのジョブIDとを比較する比較手段と、 前記比較手段の出力が一致した時に、前記サーチカウン
ターから出力されるアクセスアドレスにて対応するアク
セスアドレスのエントリーのバリッドビットをリセット
するように制御するゲート手段と、 を備え、 キャッシュミスヒット時、新たにエントリーを登録する
際、前記ジョブIDレジスタに保持されるジョブID
を、アドレス信号のインデックス部でアクセスされる前
記アドレスアレーのエントリーに登録しておき、 ジョブID毎にフラッシュを指示するソフトウェア命令
の実行で指定されたジョブIDを、前記アドレスアレー
のエントリー中でサーチし、ジョブIDの一致したエン
トリーのバリッドビットをリセットすることで、該エン
トリー部分だけをフラッシュする、ことを特徴とするキ
ャッシュメモリ装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10082545A JPH11259362A (ja) | 1998-03-13 | 1998-03-13 | キャッシュメモリ制御方法及び装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10082545A JPH11259362A (ja) | 1998-03-13 | 1998-03-13 | キャッシュメモリ制御方法及び装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11259362A true JPH11259362A (ja) | 1999-09-24 |
Family
ID=13777483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10082545A Pending JPH11259362A (ja) | 1998-03-13 | 1998-03-13 | キャッシュメモリ制御方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH11259362A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005346168A (ja) * | 2004-05-31 | 2005-12-15 | Matsushita Electric Ind Co Ltd | キャッシュメモリ、システムおよびデータ格納方法 |
JP2011008315A (ja) * | 2009-06-23 | 2011-01-13 | Internatl Business Mach Corp <Ibm> | キャッシュ制御方法 |
EP2634702A1 (en) | 2012-02-29 | 2013-09-04 | Fujitsu Limited | Processor, information processing apparatus, and arithmetic method |
KR20150038367A (ko) * | 2012-09-28 | 2015-04-08 | 애플 인크. | 스티키 제거 엔진을 구비한 시스템 캐시 |
US9158542B2 (en) | 2010-06-17 | 2015-10-13 | Nec Corporation | Data processing device and method, and processor unit of same |
US11474947B2 (en) | 2020-08-18 | 2022-10-18 | Fujitsu Limited | Information processing apparatus and non-transitory computer-readable storage medium storing cache control program |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6381548A (ja) * | 1986-09-25 | 1988-04-12 | Matsushita Electric Ind Co Ltd | 高速アドレス変換装置 |
JPH01108650A (ja) * | 1987-10-02 | 1989-04-25 | Sun Microsyst Inc | ワークステーシヨン |
JPH0298755A (ja) * | 1988-10-05 | 1990-04-11 | Nec Corp | キャッシュ無効化処理方式 |
JPH03235144A (ja) * | 1990-02-13 | 1991-10-21 | Sanyo Electric Co Ltd | キャッシュメモリ制御装置 |
-
1998
- 1998-03-13 JP JP10082545A patent/JPH11259362A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6381548A (ja) * | 1986-09-25 | 1988-04-12 | Matsushita Electric Ind Co Ltd | 高速アドレス変換装置 |
JPH01108650A (ja) * | 1987-10-02 | 1989-04-25 | Sun Microsyst Inc | ワークステーシヨン |
JPH0298755A (ja) * | 1988-10-05 | 1990-04-11 | Nec Corp | キャッシュ無効化処理方式 |
JPH03235144A (ja) * | 1990-02-13 | 1991-10-21 | Sanyo Electric Co Ltd | キャッシュメモリ制御装置 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005346168A (ja) * | 2004-05-31 | 2005-12-15 | Matsushita Electric Ind Co Ltd | キャッシュメモリ、システムおよびデータ格納方法 |
US7904675B2 (en) | 2004-05-31 | 2011-03-08 | Panasonic Corporation | Cache memory, system, and method of storing data |
JP4753549B2 (ja) * | 2004-05-31 | 2011-08-24 | パナソニック株式会社 | キャッシュメモリおよびシステム |
JP2011008315A (ja) * | 2009-06-23 | 2011-01-13 | Internatl Business Mach Corp <Ibm> | キャッシュ制御方法 |
US8484423B2 (en) | 2009-06-23 | 2013-07-09 | International Business Machines Corporation | Method and apparatus for controlling cache using transaction flags |
US9158542B2 (en) | 2010-06-17 | 2015-10-13 | Nec Corporation | Data processing device and method, and processor unit of same |
US9389864B2 (en) | 2010-06-17 | 2016-07-12 | Nec Corporation | Data processing device and method, and processor unit of same |
EP2634702A1 (en) | 2012-02-29 | 2013-09-04 | Fujitsu Limited | Processor, information processing apparatus, and arithmetic method |
KR20150038367A (ko) * | 2012-09-28 | 2015-04-08 | 애플 인크. | 스티키 제거 엔진을 구비한 시스템 캐시 |
JP2015527684A (ja) * | 2012-09-28 | 2015-09-17 | アップル インコーポレイテッド | スティッキー抜去エンジンを伴うシステムキャッシュ |
US11474947B2 (en) | 2020-08-18 | 2022-10-18 | Fujitsu Limited | Information processing apparatus and non-transitory computer-readable storage medium storing cache control program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2557174B2 (ja) | データのセット位置の予測装置 | |
US5095424A (en) | Computer system architecture implementing split instruction and operand cache line-pair-state management | |
US6216206B1 (en) | Trace victim cache | |
US6023747A (en) | Method and system for handling conflicts between cache operation requests in a data processing system | |
JPH0658650B2 (ja) | 仮想計算機システム | |
JPH06318177A (ja) | キャッシュ・ミス・ペナルティを減少させる方法、装置及びコンピュータ・システム | |
KR100335672B1 (ko) | 메모리페이지크로싱예측주석을사용하는실제주소지정데이타기억구조로부터의빠른데이타검색 | |
JPH10133950A (ja) | ページテーブル更新方法および装置 | |
EP0173981A2 (en) | Cache memory control circuit | |
US7549035B1 (en) | System and method for reference and modification tracking | |
JPH0668736B2 (ja) | 2個のシステムクロックサイクルを利用する書込み動作をもったキャッシュメモリユニットを供与する装置及び方法 | |
US6625725B1 (en) | Speculative reuse of code regions | |
JP2007156821A (ja) | キャッシュシステム及び共用2次キャッシュ | |
JP2000020341A (ja) | キャッシュ試験装置およびキャッシュ試験方法 | |
JPH11259362A (ja) | キャッシュメモリ制御方法及び装置 | |
JP2002229852A (ja) | キャッシュシステムの制御回路 | |
US6629314B1 (en) | Management of reuse invalidation buffer for computation reuse | |
JPH10500235A (ja) | データ記憶装置 | |
US7181590B2 (en) | Method for page sharing in a processor with multiple threads and pre-validated caches | |
JPH06139149A (ja) | 多重仮想空間制御装置 | |
CN116830092A (zh) | 用于跟踪存储器区域的内容的修改的技术 | |
JP2008009857A (ja) | キャッシュ制御回路およびプロセッサシステム | |
KR20070049677A (ko) | 가상 어드레스 캐시 및 고유 태스크 식별자를 이용하는데이터를 공유하기 위한 방법 | |
EP0271187A2 (en) | Split instruction and operand cache management | |
US7546439B1 (en) | System and method for managing copy-on-write faults and change-protection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20030812 |