JPH02121044A - キャッシュメモリ初期化方式 - Google Patents
キャッシュメモリ初期化方式Info
- Publication number
- JPH02121044A JPH02121044A JP63275573A JP27557388A JPH02121044A JP H02121044 A JPH02121044 A JP H02121044A JP 63275573 A JP63275573 A JP 63275573A JP 27557388 A JP27557388 A JP 27557388A JP H02121044 A JPH02121044 A JP H02121044A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- mode
- memory
- tag
- cache memory
- 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
- 230000010365 information processing Effects 0.000 claims description 11
- 238000000034 method Methods 0.000 claims description 6
- 238000011423 initialization method Methods 0.000 claims description 2
- 230000002093 peripheral effect Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の目的]
(産業上の利用分野)
この発明は、情報処理装置におけるキャッシュメモリ装
置の初期化に好適なキャッシュメモリ初期化方式に関す
る。
置の初期化に好適なキャッシュメモリ初期化方式に関す
る。
(従来の技術)
近年の情報処理装置には、主記憶の記憶内容の一部の写
しがキャッシュブロック単位で置かれるキャッシュデー
タメモリを有するキャッシュメモリ装置が設けられるの
が一般的である。このキャッシュメモリ装置を有する情
報処理装置では、主記憶からリードしようとするデータ
がキャッシュメモリ装置(内のキャッシュデータメモリ
)に存在する場合には、その目的データを主記憶からで
なくキャッシュメモリ装置から取出すことにより、主記
憶アクセスを見掛は上高速にすることができるものであ
る。
しがキャッシュブロック単位で置かれるキャッシュデー
タメモリを有するキャッシュメモリ装置が設けられるの
が一般的である。このキャッシュメモリ装置を有する情
報処理装置では、主記憶からリードしようとするデータ
がキャッシュメモリ装置(内のキャッシュデータメモリ
)に存在する場合には、その目的データを主記憶からで
なくキャッシュメモリ装置から取出すことにより、主記
憶アクセスを見掛は上高速にすることができるものであ
る。
キャッシュメモリ装置には、目的データがキャッシュデ
ータメモリに存在するか否かを調べることが可能なよう
に、キャッシュデータメモリに置かれている上記各ブロ
ックに対応するアドレス領域を示すアドレスタグ並びに
このアドレスタグが有効であるか否かを示すバリッドビ
ットを含むタグ部情報が同ブロックに対応するエントリ
に登録されるキャッシュタグメモリが設けられている。
ータメモリに存在するか否かを調べることが可能なよう
に、キャッシュデータメモリに置かれている上記各ブロ
ックに対応するアドレス領域を示すアドレスタグ並びに
このアドレスタグが有効であるか否かを示すバリッドビ
ットを含むタグ部情報が同ブロックに対応するエントリ
に登録されるキャッシュタグメモリが設けられている。
このキャッシュメモリ装置は、情報処理装置の初期化時
に初期化される必要がある。このキャッシュメモリ装置
の初期化は、一般にタグ部メモリの全エントリの各バリ
ッドビットをいずれも無効化(インバリデート)するこ
とにより行われる。この初期化のために、従来は、キャ
ッシュメモリ装置の周辺にキャッシュタグメモリの各エ
ントリのバリッドピットを無効化する専用の回路を設け
たり、キャッシュタグメモリとして一括消去型の特殊メ
モリを用いる方式が知られていた。
に初期化される必要がある。このキャッシュメモリ装置
の初期化は、一般にタグ部メモリの全エントリの各バリ
ッドビットをいずれも無効化(インバリデート)するこ
とにより行われる。この初期化のために、従来は、キャ
ッシュメモリ装置の周辺にキャッシュタグメモリの各エ
ントリのバリッドピットを無効化する専用の回路を設け
たり、キャッシュタグメモリとして一括消去型の特殊メ
モリを用いる方式が知られていた。
(発明が解決しようとする課題)
上記したように従来は、キャッシュメモリ装置の初期化
に必要なキャッシュタグメモリの全エントリのバリッド
ビットを無効化するのに、本来のキャッシュメモリ動作
とは無関係の専用の無効化回路を設ける第1の方式や、
キャッシュタグメモリ゜を一括消去型の特殊メモリで構
成する第2の方式が適用されていたが、上記第1の方式
では周辺回路が複雑となるという問題があり、上記第2
の方式ではコスト高を招き、しかも部分的な無効゜化が
行えないという問題があった。
に必要なキャッシュタグメモリの全エントリのバリッド
ビットを無効化するのに、本来のキャッシュメモリ動作
とは無関係の専用の無効化回路を設ける第1の方式や、
キャッシュタグメモリ゜を一括消去型の特殊メモリで構
成する第2の方式が適用されていたが、上記第1の方式
では周辺回路が複雑となるという問題があり、上記第2
の方式ではコスト高を招き、しかも部分的な無効゜化が
行えないという問題があった。
したがってこの発明の解決すべき課題は、小規模の周辺
回路を付加するだけでキャッシュメモリ装置の初期化に
必要なバリッドピットの無効化処理が行えるようにする
ことである。
回路を付加するだけでキャッシュメモリ装置の初期化に
必要なバリッドピットの無効化処理が行えるようにする
ことである。
[発明の構成]
(課題を解決するための手段)
この発明は、キャッシュメモリ装置を初期化するための
第1モードおよびキャッシュメモリ装置の通常動作を指
示する第2モードを含む各種モドのいずれかが設定され
るモード設定手段と、このモード設定手段が第1モード
に設定されている場合の少なくともメモリリードアクセ
ス要求時には、強制的にキャッシュミス扱いとして主記
憶からのデータリードを行わせると共に、キヤ・ソシュ
メモリ装置のキャッシュタグメモリの対応エントリへの
タグ部情報登録を行ってパリ・ソドビ・ソトを偽に設定
し、モード設定手段が第2モードに設定されている場合
には通常のキヤ・ソシュ動作を行うキャッシュ制御手段
とを設け、情報処理装置の初期化時には、上記モード設
定手段を第1モードに設定してキャッシュメモリ装置の
キヤ・ソシュタグメモリの全エントリが1エントリずつ
参照可能な特定プログラムを実行することにより、キヤ
・ソシュタグメモリの全エントリのバリツドビ・ソトを
偽に設定してキャッシュメモリ装置を初期化し、しかる
後にモード設定手段を第2モードに設定するようにした
ことを特徴とする。
第1モードおよびキャッシュメモリ装置の通常動作を指
示する第2モードを含む各種モドのいずれかが設定され
るモード設定手段と、このモード設定手段が第1モード
に設定されている場合の少なくともメモリリードアクセ
ス要求時には、強制的にキャッシュミス扱いとして主記
憶からのデータリードを行わせると共に、キヤ・ソシュ
メモリ装置のキャッシュタグメモリの対応エントリへの
タグ部情報登録を行ってパリ・ソドビ・ソトを偽に設定
し、モード設定手段が第2モードに設定されている場合
には通常のキヤ・ソシュ動作を行うキャッシュ制御手段
とを設け、情報処理装置の初期化時には、上記モード設
定手段を第1モードに設定してキャッシュメモリ装置の
キヤ・ソシュタグメモリの全エントリが1エントリずつ
参照可能な特定プログラムを実行することにより、キヤ
・ソシュタグメモリの全エントリのバリツドビ・ソトを
偽に設定してキャッシュメモリ装置を初期化し、しかる
後にモード設定手段を第2モードに設定するようにした
ことを特徴とする。
(作用)
上記の構成によれば、上記特定プログラムを実行する際
には、同プログラム内の各命令を主記憶から読出すため
のメモリリードアクセス要求が逐次発行され、これによ
りキャッシュメモリ装置のキャッシュタグメモリの全エ
ントリが順に参照される。そして、通常状態であれば、
参照したエントリに設定されているアドレスタグとメモ
リリドアクセス用のアドレスの所定フィールドとの比較
、および参照したエントリ内のバリッドビットの状態に
よって、目的データ(命令)がキャッシュメモリ装置の
キャッシュデータメモリ内に存在するか否かが調べられ
る。しかし、上記の特定プログラム実行開始に際してモ
ード設定手段を第1モードに設定しておくと、目的デー
タがキャッシュメモリに存在するか否かに無関係にキャ
ッシュミス扱いとなり、主記憶からのデータリードが発
生する。そして、リードしたデータは演算装置に転送さ
れると同時にキャッシュデータメモリに格納され、同時
にキャッシュタグメモリの対応エントリへのタグ部情報
の登録が行われる。このタグ部情報のバリッドビットは
、上記したように第1モードでは、強制的に偽(無効化
状態)に設定される。したがって、上記特定プログラム
を全て実行すると、キャッシュタグメモリの全エントリ
のバリッドビットが無効化され、キャッシュメモリ装置
が初期化される。
には、同プログラム内の各命令を主記憶から読出すため
のメモリリードアクセス要求が逐次発行され、これによ
りキャッシュメモリ装置のキャッシュタグメモリの全エ
ントリが順に参照される。そして、通常状態であれば、
参照したエントリに設定されているアドレスタグとメモ
リリドアクセス用のアドレスの所定フィールドとの比較
、および参照したエントリ内のバリッドビットの状態に
よって、目的データ(命令)がキャッシュメモリ装置の
キャッシュデータメモリ内に存在するか否かが調べられ
る。しかし、上記の特定プログラム実行開始に際してモ
ード設定手段を第1モードに設定しておくと、目的デー
タがキャッシュメモリに存在するか否かに無関係にキャ
ッシュミス扱いとなり、主記憶からのデータリードが発
生する。そして、リードしたデータは演算装置に転送さ
れると同時にキャッシュデータメモリに格納され、同時
にキャッシュタグメモリの対応エントリへのタグ部情報
の登録が行われる。このタグ部情報のバリッドビットは
、上記したように第1モードでは、強制的に偽(無効化
状態)に設定される。したがって、上記特定プログラム
を全て実行すると、キャッシュタグメモリの全エントリ
のバリッドビットが無効化され、キャッシュメモリ装置
が初期化される。
(実施例)
第1図はこの発明を適用するキャッシュメモリ装置を備
えた情報処理装置の一実施例を示すブロック構成図であ
る。同図において、10は主記憶、20はアドレスバス
、30はデータバス、40はキャッシュメモリ装置であ
る。
えた情報処理装置の一実施例を示すブロック構成図であ
る。同図において、10は主記憶、20はアドレスバス
、30はデータバス、40はキャッシュメモリ装置であ
る。
キャッシュメモリ装置40は、主記憶lOの一部の写し
が例えば4バイトのブロック単位で置かれる4KB (
キロバイト)のキャッシュデータメモリ41、キャッシ
ュデータメモリ41のブロック数と同数(IK)のエン
トリを持つキャッシュタグメモリ42を有する。キャッ
シュデータメモリ41およびキャッシュタグメモリ42
は、アドレスバス20上のメモリアドレスの下位12ビ
ツトのうちの上位側10ビツトによってアクセスされる
。キャッシュタグメモリ42の各エントリには、同エン
トリと対応するキャッシュデータメモリ41に置かれて
いるブロックが属する4バイトのアドレス領域を示すア
ドレスタグATAG (該当メモリアドレスの下位12
ビツトを除く上位アドレス)、同タグATAGが有効で
あるか否かを示すバリッドビット(有効性情報)Vlお
よび主記憶保護情報などのメモリ管理情報を有するタグ
部情報が登録される。
が例えば4バイトのブロック単位で置かれる4KB (
キロバイト)のキャッシュデータメモリ41、キャッシ
ュデータメモリ41のブロック数と同数(IK)のエン
トリを持つキャッシュタグメモリ42を有する。キャッ
シュデータメモリ41およびキャッシュタグメモリ42
は、アドレスバス20上のメモリアドレスの下位12ビ
ツトのうちの上位側10ビツトによってアクセスされる
。キャッシュタグメモリ42の各エントリには、同エン
トリと対応するキャッシュデータメモリ41に置かれて
いるブロックが属する4バイトのアドレス領域を示すア
ドレスタグATAG (該当メモリアドレスの下位12
ビツトを除く上位アドレス)、同タグATAGが有効で
あるか否かを示すバリッドビット(有効性情報)Vlお
よび主記憶保護情報などのメモリ管理情報を有するタグ
部情報が登録される。
また、キャッシュメモリ装置4oは、同装置の動作モー
ドを示すモード情報が設定されるモードレジスタ43、
およびキャツシュヒツト/ミス判定回路44を有してい
る。モードレジスタ43に設定されるモード情報は例え
ばMl、MOの2ビツトで構成され、第2図に示すよう
にMIMO−10でキャッシュメモリ装置40の初期化
を指示するための初期化モードを、MI MO−01で
キャッシュメそり装置40の通常動作を指示するための
通常モトを、そしてMLMO=00でキャッシュメモリ
装置40のキャッシュ動作の禁止を指示するためのキャ
ッシュ禁止モードを示す。上記モード情報のM1ビット
は強制的にキャッシュミス扱いとすることを要求するキ
ャッシュミス指示信号45としてヒツト/ミス判定回路
44に導かれ、MOビットはキャッシュタグメモリ42
へのタグ部情報登録時のバリッドビットVを示す書込み
ビット46としてキャッシュタグメモリ42(のバリッ
ドビットVのフィールド)に導かれる。キャツシュヒツ
ト/ミス判定回路44は、通常動作モードでは、アドレ
スバス20上のメモリアドレスの下位12ビツトのうち
の上位側10ビツトの指定するエントリ中のアドレスタ
グATAG並びにバリッドビットv1および同メモリア
ドレスの下位12ビツトを除く上位アドレスをもとに周
知のキャツシュヒツト/ミス判定を行い、初期化モード
では有効なキャッシュミス指示信号45に応じて強制的
にキャッシュミスを判定するように構成されている。キ
ャッシュメモリ装置40は更に、キャツシュヒツトヒツ
ト/ミス判定回路44のキャッシュミス判定時に主記憶
10をアクセスするシーケンスを制御する制御回路47
を有している。
ドを示すモード情報が設定されるモードレジスタ43、
およびキャツシュヒツト/ミス判定回路44を有してい
る。モードレジスタ43に設定されるモード情報は例え
ばMl、MOの2ビツトで構成され、第2図に示すよう
にMIMO−10でキャッシュメモリ装置40の初期化
を指示するための初期化モードを、MI MO−01で
キャッシュメそり装置40の通常動作を指示するための
通常モトを、そしてMLMO=00でキャッシュメモリ
装置40のキャッシュ動作の禁止を指示するためのキャ
ッシュ禁止モードを示す。上記モード情報のM1ビット
は強制的にキャッシュミス扱いとすることを要求するキ
ャッシュミス指示信号45としてヒツト/ミス判定回路
44に導かれ、MOビットはキャッシュタグメモリ42
へのタグ部情報登録時のバリッドビットVを示す書込み
ビット46としてキャッシュタグメモリ42(のバリッ
ドビットVのフィールド)に導かれる。キャツシュヒツ
ト/ミス判定回路44は、通常動作モードでは、アドレ
スバス20上のメモリアドレスの下位12ビツトのうち
の上位側10ビツトの指定するエントリ中のアドレスタ
グATAG並びにバリッドビットv1および同メモリア
ドレスの下位12ビツトを除く上位アドレスをもとに周
知のキャツシュヒツト/ミス判定を行い、初期化モード
では有効なキャッシュミス指示信号45に応じて強制的
にキャッシュミスを判定するように構成されている。キ
ャッシュメモリ装置40は更に、キャツシュヒツトヒツ
ト/ミス判定回路44のキャッシュミス判定時に主記憶
10をアクセスするシーケンスを制御する制御回路47
を有している。
次にこの発明の一実施例の動作を説明する。
第1図の情報処理装置の初期化時には、まずモードレジ
スタ43にキャッシュ禁止モードを示すモード情報(M
I MO=00)が設定される。この状態で、図示せぬ
ROM或はディスク装置等に格納されているブートプロ
グラムが主記憶10の所定領域にロードされる。キャッ
シュ禁止モード(MI MO−00)では、例えば図示
せぬデコド手段の指示によりキャッシュメモリ装置40
のキャッシュ動作が禁止される。したがってブートプロ
グラムの主記憶10へのロードにおいては、キャッシュ
メモリ装置40は同等動作しない。これにより、キャツ
シュヒツト/ミス判定回路44が初期化前の不確かなキ
ャッシュタグメモリ42内エントリの内容をもとに誤っ
てキャツシュヒツト/ミスの判定をし、誤ったキャッシ
ュ動作が行われることが防止される。
スタ43にキャッシュ禁止モードを示すモード情報(M
I MO=00)が設定される。この状態で、図示せぬ
ROM或はディスク装置等に格納されているブートプロ
グラムが主記憶10の所定領域にロードされる。キャッ
シュ禁止モード(MI MO−00)では、例えば図示
せぬデコド手段の指示によりキャッシュメモリ装置40
のキャッシュ動作が禁止される。したがってブートプロ
グラムの主記憶10へのロードにおいては、キャッシュ
メモリ装置40は同等動作しない。これにより、キャツ
シュヒツト/ミス判定回路44が初期化前の不確かなキ
ャッシュタグメモリ42内エントリの内容をもとに誤っ
てキャツシュヒツト/ミスの判定をし、誤ったキャッシ
ュ動作が行われることが防止される。
主記憶lOにロードされたブートプログラムには、第3
図に示すようなキャッシュ初期化プログラム50が含ま
れている。このキャッシュ初期化プログラム50は、キ
ャッシュメモリ装置40を初期化モードに設定するため
の4バイトの初期化モード設定命令5Iと、1に個の4
バイトのNOP (ノーオペレーション)命令52から
成る(キャッシュデータメモリ41のキャッシュサイズ
と同サイズの)4にバイトのキャッシュ初期化命令群5
3と、キャッシュメモリ装置40を通常モードに設定す
るための4バイトの通常モード設定命令54とを有して
いる。
図に示すようなキャッシュ初期化プログラム50が含ま
れている。このキャッシュ初期化プログラム50は、キ
ャッシュメモリ装置40を初期化モードに設定するため
の4バイトの初期化モード設定命令5Iと、1に個の4
バイトのNOP (ノーオペレーション)命令52から
成る(キャッシュデータメモリ41のキャッシュサイズ
と同サイズの)4にバイトのキャッシュ初期化命令群5
3と、キャッシュメモリ装置40を通常モードに設定す
るための4バイトの通常モード設定命令54とを有して
いる。
キャッシュ初期化命令群53は、メモリアドレスの下位
12ビツトが000 H= F F F H(添字のH
は16進表現を示す)までの4にバイトのアドレス領域
に配されており、同命令群53内のIK個のNOP命令
52をフェッチする際に、キャッシュタグメモリ42の
全エントリが参照されるようになっている。
12ビツトが000 H= F F F H(添字のH
は16進表現を示す)までの4にバイトのアドレス領域
に配されており、同命令群53内のIK個のNOP命令
52をフェッチする際に、キャッシュタグメモリ42の
全エントリが参照されるようになっている。
さて、」−記したようにブートプログラムが主記憶10
にロードされると、図示せぬCPUは同プロダラムを実
行する。やがて、ブートプログラムに含まれているキャ
ッシュ初期化プログラム30の先頭命令である初期化モ
ード設定命令31が、主記憶10からCPUに読出され
たものとする。CPUはこの初期化モード設定命令31
により、モードレジスタ43に初期化モードを示すMI
MO−10のモード情報を設定し、初期化モードを指定
する。
にロードされると、図示せぬCPUは同プロダラムを実
行する。やがて、ブートプログラムに含まれているキャ
ッシュ初期化プログラム30の先頭命令である初期化モ
ード設定命令31が、主記憶10からCPUに読出され
たものとする。CPUはこの初期化モード設定命令31
により、モードレジスタ43に初期化モードを示すMI
MO−10のモード情報を設定し、初期化モードを指定
する。
CPUは初期化モード設定命令51を実行すると、同命
令51に後続するキャッシュ初期化命令群53内の各N
OP命令52を順に実行するために、順次メモリリード
アクセス要求を発行し、先頭のNOP命令52のメモリ
アドレス(下位12ビツトが0001−1)から最終N
OP命令52のメモリアドレス(下位12ビツトがFF
CH)までNOP命令52をフェッチするためのメモリ
アドレスを順にアドレスバス20上に送出する。
令51に後続するキャッシュ初期化命令群53内の各N
OP命令52を順に実行するために、順次メモリリード
アクセス要求を発行し、先頭のNOP命令52のメモリ
アドレス(下位12ビツトが0001−1)から最終N
OP命令52のメモリアドレス(下位12ビツトがFF
CH)までNOP命令52をフェッチするためのメモリ
アドレスを順にアドレスバス20上に送出する。
アドレスバス20上のメモリアドレスの下位12ビツト
中の上位側10ビツトは、キャッシュタグメモリ41の
ブロック指定およびキャッシュタグメモリ42のエント
り指定に用いられる。このキャッシュタグメモリ42の
エントリ指定により、対応エントリの情報(タグ部情報
)が読出され、同情報中のバリッドビットVおよびアド
レスタグATAGがキャツシュヒツト/ミス判定回路4
4に導かれる。このキャツシュヒツト/ミス判定回路4
4には、アドレスバス20上のメモリアドレスの下位1
2ビツトを除く上位アドレスが導かれると共に、モード
レジスタ43に設定されているモード情報中のMl ビ
ット(初期化モードのこの例ではMl=1)がキャッシ
ュミス指示信号45として導かれる。
中の上位側10ビツトは、キャッシュタグメモリ41の
ブロック指定およびキャッシュタグメモリ42のエント
り指定に用いられる。このキャッシュタグメモリ42の
エントリ指定により、対応エントリの情報(タグ部情報
)が読出され、同情報中のバリッドビットVおよびアド
レスタグATAGがキャツシュヒツト/ミス判定回路4
4に導かれる。このキャツシュヒツト/ミス判定回路4
4には、アドレスバス20上のメモリアドレスの下位1
2ビツトを除く上位アドレスが導かれると共に、モード
レジスタ43に設定されているモード情報中のMl ビ
ット(初期化モードのこの例ではMl=1)がキャッシ
ュミス指示信号45として導かれる。
キャツシュヒツト/ミス判定回路44は、通常は、キャ
ッシュタグメモリ42からのアドレスタグATAGとア
ドレスバス2oからの上記上位アドレスとを比較し、画
情報が一致し、且つキャッシュタグメモリ42からのバ
リッドビットVが有効(V−1)であるか否かにより、
(アドレスバス20上のメモリアドレスの示す主記憶l
o上の情報がキャッシュデータメモリに存在するが否が
を示す)キャツシュヒツト/ミスを判定する。しかし、
上記したように初期化モードを指定するMIMO−10
のモード情報がモードレジスタ43に設定され、したが
ってキャッシュミス指示信号45が“12に設定される
場合には、キャツシュヒツト/ミス判定回路44は強制
的にキャッシュミス判定を行う。即ち、初期化モードに
おいては、常にキャッシュミスが判定される。
ッシュタグメモリ42からのアドレスタグATAGとア
ドレスバス2oからの上記上位アドレスとを比較し、画
情報が一致し、且つキャッシュタグメモリ42からのバ
リッドビットVが有効(V−1)であるか否かにより、
(アドレスバス20上のメモリアドレスの示す主記憶l
o上の情報がキャッシュデータメモリに存在するが否が
を示す)キャツシュヒツト/ミスを判定する。しかし、
上記したように初期化モードを指定するMIMO−10
のモード情報がモードレジスタ43に設定され、したが
ってキャッシュミス指示信号45が“12に設定される
場合には、キャツシュヒツト/ミス判定回路44は強制
的にキャッシュミス判定を行う。即ち、初期化モードに
おいては、常にキャッシュミスが判定される。
キャツシュヒツト/ミス判定回路44のキャツシュヒツ
ト/ミス判定結果は制御回路47に通知される。初期化
モードにおいては、常にキャッシュミスが通知されるこ
とになる。制御回路47は、キャツシュヒツト/ミス判
定回路44からキャッシュミス通知を受取ると、アドレ
スバス20」二のメモリアドレスの示す情報を含む1ブ
ロック分の情報(ここでは、メモリアドレスの示す情報
それ自体であるNOP命令52)を主記憶IOから読出
す周知のシケンスを制御する。これにより主記憶IOか
ら読出された情報(NOP命令52)はデータバス30
を介してCPUに転送されると同時に、アドレスバス2
0上のメモリアドレスの下位12ビツト中の上位置10
ビットで指定されるキャッシュデータメモリ41内のブ
ロックに記憶される。同時に、上記10ビツトで指定さ
れるキャッシュタグメモリ42内のエントリに、アドレ
スバス20上のメモリアドレスの下位12ビツトを除く
上位アドレスをアドレスタグATAGとするタグ部情報
が登録される。
ト/ミス判定結果は制御回路47に通知される。初期化
モードにおいては、常にキャッシュミスが通知されるこ
とになる。制御回路47は、キャツシュヒツト/ミス判
定回路44からキャッシュミス通知を受取ると、アドレ
スバス20」二のメモリアドレスの示す情報を含む1ブ
ロック分の情報(ここでは、メモリアドレスの示す情報
それ自体であるNOP命令52)を主記憶IOから読出
す周知のシケンスを制御する。これにより主記憶IOか
ら読出された情報(NOP命令52)はデータバス30
を介してCPUに転送されると同時に、アドレスバス2
0上のメモリアドレスの下位12ビツト中の上位置10
ビットで指定されるキャッシュデータメモリ41内のブ
ロックに記憶される。同時に、上記10ビツトで指定さ
れるキャッシュタグメモリ42内のエントリに、アドレ
スバス20上のメモリアドレスの下位12ビツトを除く
上位アドレスをアドレスタグATAGとするタグ部情報
が登録される。
タグ部情報のバリッドビットVとして用いられる書込み
ビット46は、初期化モードにおいては、(モードレジ
スタ43に設定されている)モード情報中のMOビット
が”O”であることから同じ“0”となる。したがって
、初期化モードのタグ部情報登録においては、■=0の
バリッドビットVを含むタグ部情報がキャッシュタグメ
モリ42の対応エントリに登録され、同エントリが初期
化されることになる。このため上記の初期化モードにお
いて、CPUが、キャッシュデータメモリ41と同サイ
ズのキャッシュ初期化命令群53を(メモリアドレスの
下位12ビツトが000 uの)先頭NOP命令52か
ら(メモリアドレスの下位12ビツトがFFCHの)最
終NOP命令52まで順に主記憶IOからフェッチして
実行すると、その都度上記したキャッシュミス判定に伴
う(メモリアドレスの下位12ビツトの上位側10ビツ
トで指定される)キャッシュタグメモリ42内エントリ
へのタグ部情報登録動作が行われ、キャッシュタグメモ
リ42の全エントリのバリッドビット■がいずれも“0
”に設定され、キャッシュタグメモリ42の初期化、即
ちキャッシュメモリ装置40の初期化が行われる。
ビット46は、初期化モードにおいては、(モードレジ
スタ43に設定されている)モード情報中のMOビット
が”O”であることから同じ“0”となる。したがって
、初期化モードのタグ部情報登録においては、■=0の
バリッドビットVを含むタグ部情報がキャッシュタグメ
モリ42の対応エントリに登録され、同エントリが初期
化されることになる。このため上記の初期化モードにお
いて、CPUが、キャッシュデータメモリ41と同サイ
ズのキャッシュ初期化命令群53を(メモリアドレスの
下位12ビツトが000 uの)先頭NOP命令52か
ら(メモリアドレスの下位12ビツトがFFCHの)最
終NOP命令52まで順に主記憶IOからフェッチして
実行すると、その都度上記したキャッシュミス判定に伴
う(メモリアドレスの下位12ビツトの上位側10ビツ
トで指定される)キャッシュタグメモリ42内エントリ
へのタグ部情報登録動作が行われ、キャッシュタグメモ
リ42の全エントリのバリッドビット■がいずれも“0
”に設定され、キャッシュタグメモリ42の初期化、即
ちキャッシュメモリ装置40の初期化が行われる。
キャッシュ初期化プログラム50のキャッシュ初期化命
令群53の次は第3図に示すように通常モード設定命令
54である。CPUはキャッシュ初期化命令群53の最
終NOP命令52を実行すると、主記憶10から次の通
常モード設定命令54をフェッチし、同命令54に応じ
て通常モードを指定するMIMO−01のモード情報を
モードレジスタ43に設定する。これにより通常モード
では、(Ml−0であることから)キャッシュミス指示
信号は0“となり、キャツシュヒツト/ミス判定回路4
4では通常のキャツシュヒツト/ミス判定が行われる。
令群53の次は第3図に示すように通常モード設定命令
54である。CPUはキャッシュ初期化命令群53の最
終NOP命令52を実行すると、主記憶10から次の通
常モード設定命令54をフェッチし、同命令54に応じ
て通常モードを指定するMIMO−01のモード情報を
モードレジスタ43に設定する。これにより通常モード
では、(Ml−0であることから)キャッシュミス指示
信号は0“となり、キャツシュヒツト/ミス判定回路4
4では通常のキャツシュヒツト/ミス判定が行われる。
また、(MO=1であることから)バリッドビットVに
用いられる書込みビット4Bは“1”となり、キャツシ
ュヒツト/ミス判定回路44でキャッシュミスが判定さ
れた場合のタグ部情報登録動作においては、バリッドビ
ットVが正しく “1“に設定される。
用いられる書込みビット4Bは“1”となり、キャツシ
ュヒツト/ミス判定回路44でキャッシュミスが判定さ
れた場合のタグ部情報登録動作においては、バリッドビ
ットVが正しく “1“に設定される。
[発明の効果]
以上詳述したようにこの発明によれば、小規模の周辺回
路を付加するだけで、キャッシュメモリ装置の初期化に
必要なキャッシュタグメモリの全エントリのバリッドビ
ットの無効化処理がプログラム実行時に自動的に行える
ので、装置の簡素化が図れ、しかもキャッシュタグメモ
リに一括消去型の特殊メモリを使用する必要がないため
コスト高となることが防止できる。
路を付加するだけで、キャッシュメモリ装置の初期化に
必要なキャッシュタグメモリの全エントリのバリッドビ
ットの無効化処理がプログラム実行時に自動的に行える
ので、装置の簡素化が図れ、しかもキャッシュタグメモ
リに一括消去型の特殊メモリを使用する必要がないため
コスト高となることが防止できる。
第1図はこの発明の一実施例を示すブロック構成図、第
2図は第1図のモードレジスタに設定されるモード情報
と同情報の示すモードとの対応関係を示す図、第3図は
キャッシュメモリ初期化時に実行されるキャッシュ初期
化プログラムの一例を示す図である。 IO・・・主記憶、20・・・アドレスバス、3o・・
・データバス、40・・・キャッシュメモリ装置、41
・・・キャッシュデータメモリ、42・・・キャッシュ
タグメモリ、43・・・モードレジスタ、44・・・キ
ャツシュヒツト/ミス判定回路、47・・・制御回路、
5o・・・キャッシュ初期化プログラム、51・・・初
期化モード設定命令、52・・・NOP命令、53・・
・キャッシュ初期化命令群、54・・・通常モード設定
命令。 出願人代理人 弁理士 鈴江武彦
2図は第1図のモードレジスタに設定されるモード情報
と同情報の示すモードとの対応関係を示す図、第3図は
キャッシュメモリ初期化時に実行されるキャッシュ初期
化プログラムの一例を示す図である。 IO・・・主記憶、20・・・アドレスバス、3o・・
・データバス、40・・・キャッシュメモリ装置、41
・・・キャッシュデータメモリ、42・・・キャッシュ
タグメモリ、43・・・モードレジスタ、44・・・キ
ャツシュヒツト/ミス判定回路、47・・・制御回路、
5o・・・キャッシュ初期化プログラム、51・・・初
期化モード設定命令、52・・・NOP命令、53・・
・キャッシュ初期化命令群、54・・・通常モード設定
命令。 出願人代理人 弁理士 鈴江武彦
Claims (2)
- (1)主記憶の記憶内容の一部の写しがキャッシュブロ
ック単位で置かれるキャッシュデータメモリ、およびこ
のキャッシュデータメモリに置かれている上記各ブロッ
クに対応するアドレス領域を示すアドレスタグ並びにこ
のアドレスタグが有効であるか否かを示すバリッドビッ
トを含むタグ部情報が同ブロックに対応するエントリに
登録されるキャッシュタグメモリを有するキャッシュメ
モリ装置を備えた情報処理装置において、 上記キャッシュメモリ装置を初期化するための第1モー
ドおよび上記キャッシュメモリ装置の通常動作を指示す
る第2モードを含む各種モードのいずれかが設定される
モード設定手段と、このモード設定手段が上記第1モー
ドに設定されている場合の少なくともメモリリードアク
セス要求時には、強制的にキャッシュミス扱いとして上
記主記憶からのデータリードを行わせると共に、上記キ
ャッシュタグメモリの対応エントリへのタグ部情報登録
を行って上記バリッドビットを偽に設定し、上記モード
設定手段が上記第2モードに設定されている場合には通
常のキャッシュ動作を行うキャッシュ制御手段とを具備
し、上記情報処理装置の初期化時に、上記モード設定手
段を上記第1モードに設定し、上記キャッシュタグメモ
リの全エントリを1エントリずつ参照可能な特定プログ
ラムを実行することにより、上記キャッシュタグメモリ
の全エントリの上記バリッドビットを偽に設定して上記
キャッシュメモリ装置を初期化し、しかる後に上記モー
ド設定手段を上記第2モードに設定するようにしたこと
を特徴とするキャッシュメモリ初期化方式。 - (2)上記モード設定手段に設定可能なモードとして、
上記第1および第2モードの他に上記キャッシュメモリ
装置の動作を禁止する第3モードを用意し、上記情報処
理装置の初期化時には、上記モード設定手段を上記第3
モードに設定した後に上記特定プログラムを含むブート
プログラムを上記主記憶に読込み、このブートプログラ
ムの特定命令の実行によって上記モード設定手段を上記
第1モードに設定して上記特定プログラムを実行するよ
うにしたことを特徴とする第1請求項記載のキャッシュ
メモリ初期化方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63275573A JPH02121044A (ja) | 1988-10-31 | 1988-10-31 | キャッシュメモリ初期化方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63275573A JPH02121044A (ja) | 1988-10-31 | 1988-10-31 | キャッシュメモリ初期化方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH02121044A true JPH02121044A (ja) | 1990-05-08 |
Family
ID=17557336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63275573A Pending JPH02121044A (ja) | 1988-10-31 | 1988-10-31 | キャッシュメモリ初期化方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH02121044A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08179988A (ja) * | 1994-12-21 | 1996-07-12 | Nec Corp | キャッシュメモリ制御回路 |
-
1988
- 1988-10-31 JP JP63275573A patent/JPH02121044A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08179988A (ja) * | 1994-12-21 | 1996-07-12 | Nec Corp | キャッシュメモリ制御回路 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5247639A (en) | Microprocessor having cache bypass signal terminal | |
US6321314B1 (en) | Method and apparatus for restricting memory access | |
US7401358B1 (en) | Method of controlling access to control registers of a microprocessor | |
EP0253824B1 (en) | Paged memory management unit capable of selectively supporting multiple address spaces | |
US6397301B1 (en) | Preventing access to secure area of a cache | |
US7043616B1 (en) | Method of controlling access to model specific registers of a microprocessor | |
US6745306B1 (en) | Method and system for restricting the load of physical address translations of virtual addresses | |
US4763250A (en) | Paged memory management unit having variable number of translation table levels | |
EP0656592B1 (en) | Memory access control for implementing protected memory regions | |
US6363336B1 (en) | Fine grain translation discrimination | |
US7130977B1 (en) | Controlling access to a control register of a microprocessor | |
JPH0345407B2 (ja) | ||
US5671231A (en) | Method and apparatus for performing cache snoop testing on a cache system | |
EP3881189B1 (en) | An apparatus and method for controlling memory accesses | |
CN109313693B (zh) | 针对偶发存储器访问程序指令的许可控制 | |
US7082507B1 (en) | Method of controlling access to an address translation data structure of a computer system | |
WO1997046937A1 (en) | Method and apparatus for caching system management mode information with other information | |
JP7376571B2 (ja) | 有界ポインタの使用を制御するための装置及び方法 | |
JPH0260012B2 (ja) | ||
CN111556996A (zh) | 控制存储器访问中的守卫标签检查 | |
US6519684B1 (en) | Low overhead method for selecting and updating an entry in a cache memory | |
KR20230017832A (ko) | Tag 체킹 장치 및 방법 | |
US6324635B1 (en) | Method and apparatus for address paging emulation | |
JPH02121044A (ja) | キャッシュメモリ初期化方式 | |
JP3505231B2 (ja) | コンピュータシステム |