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
Application number
JP63275573A
Other languages
English (en)
Inventor
Yoshinobu Sano
佐野 義信
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP63275573A priority Critical patent/JPH02121044A/ja
Publication of JPH02121044A publication Critical patent/JPH02121044A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) この発明は、情報処理装置におけるキャッシュメモリ装
置の初期化に好適なキャッシュメモリ初期化方式に関す
る。
(従来の技術) 近年の情報処理装置には、主記憶の記憶内容の一部の写
しがキャッシュブロック単位で置かれるキャッシュデー
タメモリを有するキャッシュメモリ装置が設けられるの
が一般的である。このキャッシュメモリ装置を有する情
報処理装置では、主記憶からリードしようとするデータ
がキャッシュメモリ装置(内のキャッシュデータメモリ
)に存在する場合には、その目的データを主記憶からで
なくキャッシュメモリ装置から取出すことにより、主記
憶アクセスを見掛は上高速にすることができるものであ
る。
キャッシュメモリ装置には、目的データがキャッシュデ
ータメモリに存在するか否かを調べることが可能なよう
に、キャッシュデータメモリに置かれている上記各ブロ
ックに対応するアドレス領域を示すアドレスタグ並びに
このアドレスタグが有効であるか否かを示すバリッドビ
ットを含むタグ部情報が同ブロックに対応するエントリ
に登録されるキャッシュタグメモリが設けられている。
このキャッシュメモリ装置は、情報処理装置の初期化時
に初期化される必要がある。このキャッシュメモリ装置
の初期化は、一般にタグ部メモリの全エントリの各バリ
ッドビットをいずれも無効化(インバリデート)するこ
とにより行われる。この初期化のために、従来は、キャ
ッシュメモリ装置の周辺にキャッシュタグメモリの各エ
ントリのバリッドピットを無効化する専用の回路を設け
たり、キャッシュタグメモリとして一括消去型の特殊メ
モリを用いる方式が知られていた。
(発明が解決しようとする課題) 上記したように従来は、キャッシュメモリ装置の初期化
に必要なキャッシュタグメモリの全エントリのバリッド
ビットを無効化するのに、本来のキャッシュメモリ動作
とは無関係の専用の無効化回路を設ける第1の方式や、
キャッシュタグメモリ゜を一括消去型の特殊メモリで構
成する第2の方式が適用されていたが、上記第1の方式
では周辺回路が複雑となるという問題があり、上記第2
の方式ではコスト高を招き、しかも部分的な無効゜化が
行えないという問題があった。
したがってこの発明の解決すべき課題は、小規模の周辺
回路を付加するだけでキャッシュメモリ装置の初期化に
必要なバリッドピットの無効化処理が行えるようにする
ことである。
[発明の構成] (課題を解決するための手段) この発明は、キャッシュメモリ装置を初期化するための
第1モードおよびキャッシュメモリ装置の通常動作を指
示する第2モードを含む各種モドのいずれかが設定され
るモード設定手段と、このモード設定手段が第1モード
に設定されている場合の少なくともメモリリードアクセ
ス要求時には、強制的にキャッシュミス扱いとして主記
憶からのデータリードを行わせると共に、キヤ・ソシュ
メモリ装置のキャッシュタグメモリの対応エントリへの
タグ部情報登録を行ってパリ・ソドビ・ソトを偽に設定
し、モード設定手段が第2モードに設定されている場合
には通常のキヤ・ソシュ動作を行うキャッシュ制御手段
とを設け、情報処理装置の初期化時には、上記モード設
定手段を第1モードに設定してキャッシュメモリ装置の
キヤ・ソシュタグメモリの全エントリが1エントリずつ
参照可能な特定プログラムを実行することにより、キヤ
・ソシュタグメモリの全エントリのバリツドビ・ソトを
偽に設定してキャッシュメモリ装置を初期化し、しかる
後にモード設定手段を第2モードに設定するようにした
ことを特徴とする。
(作用) 上記の構成によれば、上記特定プログラムを実行する際
には、同プログラム内の各命令を主記憶から読出すため
のメモリリードアクセス要求が逐次発行され、これによ
りキャッシュメモリ装置のキャッシュタグメモリの全エ
ントリが順に参照される。そして、通常状態であれば、
参照したエントリに設定されているアドレスタグとメモ
リリドアクセス用のアドレスの所定フィールドとの比較
、および参照したエントリ内のバリッドビットの状態に
よって、目的データ(命令)がキャッシュメモリ装置の
キャッシュデータメモリ内に存在するか否かが調べられ
る。しかし、上記の特定プログラム実行開始に際してモ
ード設定手段を第1モードに設定しておくと、目的デー
タがキャッシュメモリに存在するか否かに無関係にキャ
ッシュミス扱いとなり、主記憶からのデータリードが発
生する。そして、リードしたデータは演算装置に転送さ
れると同時にキャッシュデータメモリに格納され、同時
にキャッシュタグメモリの対応エントリへのタグ部情報
の登録が行われる。このタグ部情報のバリッドビットは
、上記したように第1モードでは、強制的に偽(無効化
状態)に設定される。したがって、上記特定プログラム
を全て実行すると、キャッシュタグメモリの全エントリ
のバリッドビットが無効化され、キャッシュメモリ装置
が初期化される。
(実施例) 第1図はこの発明を適用するキャッシュメモリ装置を備
えた情報処理装置の一実施例を示すブロック構成図であ
る。同図において、10は主記憶、20はアドレスバス
、30はデータバス、40はキャッシュメモリ装置であ
る。
キャッシュメモリ装置40は、主記憶lOの一部の写し
が例えば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
を有している。
次にこの発明の一実施例の動作を説明する。
第1図の情報処理装置の初期化時には、まずモードレジ
スタ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とを有して
いる。
キャッシュ初期化命令群53は、メモリアドレスの下位
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は初期化モード設定命令51を実行すると、同命
令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として導かれる。
キャツシュヒツト/ミス判定回路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とするタグ部情報
が登録される。
タグ部情報のバリッドビット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の初期化が行われる。
キャッシュ初期化プログラム50のキャッシュ初期化命
令群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“に設定される。
[発明の効果] 以上詳述したようにこの発明によれば、小規模の周辺回
路を付加するだけで、キャッシュメモリ装置の初期化に
必要なキャッシュタグメモリの全エントリのバリッドビ
ットの無効化処理がプログラム実行時に自動的に行える
ので、装置の簡素化が図れ、しかもキャッシュタグメモ
リに一括消去型の特殊メモリを使用する必要がないため
コスト高となることが防止できる。
【図面の簡単な説明】
第1図はこの発明の一実施例を示すブロック構成図、第
2図は第1図のモードレジスタに設定されるモード情報
と同情報の示すモードとの対応関係を示す図、第3図は
キャッシュメモリ初期化時に実行されるキャッシュ初期
化プログラムの一例を示す図である。 IO・・・主記憶、20・・・アドレスバス、3o・・
・データバス、40・・・キャッシュメモリ装置、41
・・・キャッシュデータメモリ、42・・・キャッシュ
タグメモリ、43・・・モードレジスタ、44・・・キ
ャツシュヒツト/ミス判定回路、47・・・制御回路、
5o・・・キャッシュ初期化プログラム、51・・・初
期化モード設定命令、52・・・NOP命令、53・・
・キャッシュ初期化命令群、54・・・通常モード設定
命令。 出願人代理人 弁理士 鈴江武彦

Claims (2)

    【特許請求の範囲】
  1. (1)主記憶の記憶内容の一部の写しがキャッシュブロ
    ック単位で置かれるキャッシュデータメモリ、およびこ
    のキャッシュデータメモリに置かれている上記各ブロッ
    クに対応するアドレス領域を示すアドレスタグ並びにこ
    のアドレスタグが有効であるか否かを示すバリッドビッ
    トを含むタグ部情報が同ブロックに対応するエントリに
    登録されるキャッシュタグメモリを有するキャッシュメ
    モリ装置を備えた情報処理装置において、 上記キャッシュメモリ装置を初期化するための第1モー
    ドおよび上記キャッシュメモリ装置の通常動作を指示す
    る第2モードを含む各種モードのいずれかが設定される
    モード設定手段と、このモード設定手段が上記第1モー
    ドに設定されている場合の少なくともメモリリードアク
    セス要求時には、強制的にキャッシュミス扱いとして上
    記主記憶からのデータリードを行わせると共に、上記キ
    ャッシュタグメモリの対応エントリへのタグ部情報登録
    を行って上記バリッドビットを偽に設定し、上記モード
    設定手段が上記第2モードに設定されている場合には通
    常のキャッシュ動作を行うキャッシュ制御手段とを具備
    し、上記情報処理装置の初期化時に、上記モード設定手
    段を上記第1モードに設定し、上記キャッシュタグメモ
    リの全エントリを1エントリずつ参照可能な特定プログ
    ラムを実行することにより、上記キャッシュタグメモリ
    の全エントリの上記バリッドビットを偽に設定して上記
    キャッシュメモリ装置を初期化し、しかる後に上記モー
    ド設定手段を上記第2モードに設定するようにしたこと
    を特徴とするキャッシュメモリ初期化方式。
  2. (2)上記モード設定手段に設定可能なモードとして、
    上記第1および第2モードの他に上記キャッシュメモリ
    装置の動作を禁止する第3モードを用意し、上記情報処
    理装置の初期化時には、上記モード設定手段を上記第3
    モードに設定した後に上記特定プログラムを含むブート
    プログラムを上記主記憶に読込み、このブートプログラ
    ムの特定命令の実行によって上記モード設定手段を上記
    第1モードに設定して上記特定プログラムを実行するよ
    うにしたことを特徴とする第1請求項記載のキャッシュ
    メモリ初期化方式。
JP63275573A 1988-10-31 1988-10-31 キャッシュメモリ初期化方式 Pending JPH02121044A (ja)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08179988A (ja) * 1994-12-21 1996-07-12 Nec Corp キャッシュメモリ制御回路

Cited By (1)

* Cited by examiner, † Cited by third party
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) コンピュータシステム