JPH0272449A - キャッシュメモリの自動無効化制御回路 - Google Patents
キャッシュメモリの自動無効化制御回路Info
- Publication number
- JPH0272449A JPH0272449A JP63224332A JP22433288A JPH0272449A JP H0272449 A JPH0272449 A JP H0272449A JP 63224332 A JP63224332 A JP 63224332A JP 22433288 A JP22433288 A JP 22433288A JP H0272449 A JPH0272449 A JP H0272449A
- Authority
- JP
- Japan
- Prior art keywords
- address
- register
- cache memory
- input
- registers
- 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 8
- 230000006866 deterioration Effects 0.000 abstract description 4
- 230000003247 decreasing effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 5
- 238000000034 method Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 2
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の目的]
(産業上の利用分野)
本発明は、主メモリへの書込み時に於ける書込みアドレ
スがキャッシュメモリに存在するとき、そのキャッシュ
メモリのエントリを無効とするようなキャッシュ自動無
効化回路を有してなる情報処理装置に於いて、特にキャ
ッシュ自動無効化のためのディレクトリチェック回数を
削減したキャッシュメモリの自動無効化制御回路に関す
る。
スがキャッシュメモリに存在するとき、そのキャッシュ
メモリのエントリを無効とするようなキャッシュ自動無
効化回路を有してなる情報処理装置に於いて、特にキャ
ッシュ自動無効化のためのディレクトリチェック回数を
削減したキャッシュメモリの自動無効化制御回路に関す
る。
(従来の技術)
キャッシュメモリをもち、主メモリとCPUとl10(
入出力装置)が互いにバスを介して接続された情報処理
装置に於いて、Iloが主メモリに書込みを行なった際
、そのアドレスの一部がキャッシュメモリに取込まれて
いると、その時点で主メモリとキャッシュメモリの不一
致が発生してしまう。
入出力装置)が互いにバスを介して接続された情報処理
装置に於いて、Iloが主メモリに書込みを行なった際
、そのアドレスの一部がキャッシュメモリに取込まれて
いると、その時点で主メモリとキャッシュメモリの不一
致が発生してしまう。
このような不都合を回避するためには、バス上ノ書込み
アドレスをCPUにも入力して、このアドレスでキャッ
シュメモリのディレクトリチェックを行ない、アドレス
の一致があれば一致したブロックを無効化するキャッシ
ュ無効化のための機構が必要となる。
アドレスをCPUにも入力して、このアドレスでキャッ
シュメモリのディレクトリチェックを行ない、アドレス
の一致があれば一致したブロックを無効化するキャッシ
ュ無効化のための機構が必要となる。
この際、従来では、書込みアドレスがCPUに人力され
る都度、キャッシュ無効化のためのディレクトリチェッ
クを行なう構成であることから、CPUにかかる処理負
担が大きく、特にIloから主メモリへのデータ転送の
ように、連続するアドレスへの書込みが行なわれる場合
は、キャッシュ無効化のためのディレクトリチェックの
ために、CPUの本来の処理に大きな影響を及ぼす。
る都度、キャッシュ無効化のためのディレクトリチェッ
クを行なう構成であることから、CPUにかかる処理負
担が大きく、特にIloから主メモリへのデータ転送の
ように、連続するアドレスへの書込みが行なわれる場合
は、キャッシュ無効化のためのディレクトリチェックの
ために、CPUの本来の処理に大きな影響を及ぼす。
(発明が解決しようとする課題)
上述したように、従来では、書込みアドレスがCPUに
人力される都度、キャッシュ無効化のためのディレクト
リチェックを行なう構成であることから、CPUにかか
る処理負担が大きい。特に、CPUのキャッシュメモリ
使用頻度が上がり、その一方でI10速度が向上して主
メモリへの書込み頻度が上昇してくると、このキャッシ
ュ無効化のためのCPUの性能低下が無視できなくなる
という問題が生じてきた。
人力される都度、キャッシュ無効化のためのディレクト
リチェックを行なう構成であることから、CPUにかか
る処理負担が大きい。特に、CPUのキャッシュメモリ
使用頻度が上がり、その一方でI10速度が向上して主
メモリへの書込み頻度が上昇してくると、このキャッシ
ュ無効化のためのCPUの性能低下が無視できなくなる
という問題が生じてきた。
本発明は上記実情に鑑みなされたもので、キャッシュ無
効化のためのディレクトリチェックの回数を減らして、
上記キャッシュ無効化のためのディレクトリチェックに
伴うCPUの性能低下を防1−シたキャッシュメモリの
自動無効化制御回路を提供することを目的とする。
効化のためのディレクトリチェックの回数を減らして、
上記キャッシュ無効化のためのディレクトリチェックに
伴うCPUの性能低下を防1−シたキャッシュメモリの
自動無効化制御回路を提供することを目的とする。
[発明の構成]
(課題を解決するための手段及び作用)本発明は、キャ
ッシュメモリの自動無効化回路を有してなる情報処理装
置に於いて、主メモリに与えられる書込みアドレスの一
部を入力するアドレス入力手段と、同手段により入力さ
れたアドレスをそれぞれが独立して選択的に保持する複
数のレジスタと、上記アドレス入力手段によって入力さ
れたアドレスと上記レジスタに保持された有効な全ての
アドレスとを比較するアドレス比較手段とを有し、アド
レス入力手段により人力されたアドレスを上記レジスタ
に新たにセットする際に、上記アドレス比較手段が一致
を検出しないことを条件とすることによって、キャッシ
ュ無効化のためのディレクトリチェックの回数を減らし
たもので、これによりキャッシュ無効化に起因するCP
Uの性能劣化を防止し、システムの処理性能を向上でき
る。
ッシュメモリの自動無効化回路を有してなる情報処理装
置に於いて、主メモリに与えられる書込みアドレスの一
部を入力するアドレス入力手段と、同手段により入力さ
れたアドレスをそれぞれが独立して選択的に保持する複
数のレジスタと、上記アドレス入力手段によって入力さ
れたアドレスと上記レジスタに保持された有効な全ての
アドレスとを比較するアドレス比較手段とを有し、アド
レス入力手段により人力されたアドレスを上記レジスタ
に新たにセットする際に、上記アドレス比較手段が一致
を検出しないことを条件とすることによって、キャッシ
ュ無効化のためのディレクトリチェックの回数を減らし
たもので、これによりキャッシュ無効化に起因するCP
Uの性能劣化を防止し、システムの処理性能を向上でき
る。
又、本発明は、キャッシュメモリの自動無効化回路を何
してなる情報処理装置に於いて、主メモリに与えられる
書込みアドレスの一部を入力し、同入力アドレスをそれ
ぞれが独立して選択的に保持するn個のレジスタと、上
記入力アドレスが上記レジスタに設定されていないこと
を条件に、上記入力アドレスを上記レジスタの一つに設
定するレジスタ制御回路と、上記n個のレジスタのうち
、m(1≦m≦n)個数以上のレジスタにアドレスが設
定されたとき、そのm個のレジスタに貯えられた各アド
レスを1アドレスずつ選択し自動無効化のためのディレ
クトリチェック対象として出力制御するアドレス選択回
路とを有し、m個のレジスタに有効なアドレスが設定さ
れたとき、ディレクトリチェックを開始するようにした
もので、これにより、例えば複数のIloが主メモリへ
書込みを行なう場合等に於いて、あるIloからキャッ
シュブロックとして同一アドレスが送られてきたとき、
1ブロツクにつき1回だけのディレクトリチェックで済
ませることが期待でき、キャッシュ無効化のためのディ
レクトリチェックの回数を減らすことができる。即ち、
Iloから主メモリへのデータ転送に於いて、通常では
連続した領域への書込みが多く、キャッシュブロックと
して同一アドレスが送られてくる場合が多い。このよう
なとき、複数のIloから交互に主メモリへのデータ転
送要求があると、その都度、ブロックアドレスが変化し
、その度にキャッシュ無効化のためのディレクトリチェ
ックを行なっていたのではCPUにかかる処理負担が大
きい。そこで、上記したように所定個数(m個)のレジ
スタに有効なアドレスが設定されたとき、ディレクトリ
チェックを開始するようにすれば、lブロックにつき1
回だけのディレクトリチェックで済ませることが期待で
き、ディレクトリチェックの回数を減らすことができる
。
してなる情報処理装置に於いて、主メモリに与えられる
書込みアドレスの一部を入力し、同入力アドレスをそれ
ぞれが独立して選択的に保持するn個のレジスタと、上
記入力アドレスが上記レジスタに設定されていないこと
を条件に、上記入力アドレスを上記レジスタの一つに設
定するレジスタ制御回路と、上記n個のレジスタのうち
、m(1≦m≦n)個数以上のレジスタにアドレスが設
定されたとき、そのm個のレジスタに貯えられた各アド
レスを1アドレスずつ選択し自動無効化のためのディレ
クトリチェック対象として出力制御するアドレス選択回
路とを有し、m個のレジスタに有効なアドレスが設定さ
れたとき、ディレクトリチェックを開始するようにした
もので、これにより、例えば複数のIloが主メモリへ
書込みを行なう場合等に於いて、あるIloからキャッ
シュブロックとして同一アドレスが送られてきたとき、
1ブロツクにつき1回だけのディレクトリチェックで済
ませることが期待でき、キャッシュ無効化のためのディ
レクトリチェックの回数を減らすことができる。即ち、
Iloから主メモリへのデータ転送に於いて、通常では
連続した領域への書込みが多く、キャッシュブロックと
して同一アドレスが送られてくる場合が多い。このよう
なとき、複数のIloから交互に主メモリへのデータ転
送要求があると、その都度、ブロックアドレスが変化し
、その度にキャッシュ無効化のためのディレクトリチェ
ックを行なっていたのではCPUにかかる処理負担が大
きい。そこで、上記したように所定個数(m個)のレジ
スタに有効なアドレスが設定されたとき、ディレクトリ
チェックを開始するようにすれば、lブロックにつき1
回だけのディレクトリチェックで済ませることが期待で
き、ディレクトリチェックの回数を減らすことができる
。
、又、本発明は、キャッシュメモリの自動無効化回路を
有してなる情報処理装置に於いて、主メモリに与えられ
る書込みアドレスの一部をそれぞれ独立して選択的に保
持する複数のレジスタと、この各レジスタがそれぞれ“
空き”状態にあるが“アドレス保持“状態にあるかを示
す第1のフラグ(FA)と、上記各レジスタの内容がそ
れぞれ“確定°状態であるか“不定”状態であるかを示
す第2のフラグ(FB)と、上記第2のフラグが“確定
“状態(FB−1)を示しているレジスタに設定された
アドレスと同一でないことを条件に、上記レジスタに新
たなアドレスを設定する手段と、上記第1のフラグが“
アドレス保持゛状態(FA−1)を示しているレジスタ
のアドレスを自動無効化のためのディレクトリチェック
対象として送出制御し、そのアドレス送出後のレジスタ
に対応する第1のフラグを“空き″状態(p^−0)に
設定する手段とを有してなる構成としたもので、これに
より、連続したメモリ領域への書込みに於いて、従来で
は毎回ディレクトリチェックを行なう必要があったが、
上記した構成によればキャッシュのブロックサイズ分の
書込みにつき1回だけのディレクトリチェックに減らす
ことが期待できる。
有してなる情報処理装置に於いて、主メモリに与えられ
る書込みアドレスの一部をそれぞれ独立して選択的に保
持する複数のレジスタと、この各レジスタがそれぞれ“
空き”状態にあるが“アドレス保持“状態にあるかを示
す第1のフラグ(FA)と、上記各レジスタの内容がそ
れぞれ“確定°状態であるか“不定”状態であるかを示
す第2のフラグ(FB)と、上記第2のフラグが“確定
“状態(FB−1)を示しているレジスタに設定された
アドレスと同一でないことを条件に、上記レジスタに新
たなアドレスを設定する手段と、上記第1のフラグが“
アドレス保持゛状態(FA−1)を示しているレジスタ
のアドレスを自動無効化のためのディレクトリチェック
対象として送出制御し、そのアドレス送出後のレジスタ
に対応する第1のフラグを“空き″状態(p^−0)に
設定する手段とを有してなる構成としたもので、これに
より、連続したメモリ領域への書込みに於いて、従来で
は毎回ディレクトリチェックを行なう必要があったが、
上記した構成によればキャッシュのブロックサイズ分の
書込みにつき1回だけのディレクトリチェックに減らす
ことが期待できる。
(実施例)
以下図面を参照して本発明の詳細な説明する。
第1実施例
第1図は本発明の第1実施例を示すブロック図である。
第1図に於いて、1は主メモリ書込みアドレスの一部(
以下ブロック指定アドレスと称す)を受けるアドレス入
力端であり、第2図に示す如く、主メモリ書込みアドレ
スlOのうち、キャッシュブロックを特定できる、上位
所定ビット数のアドレスをブロック指定アドレス11と
して入力する。2a。
以下ブロック指定アドレスと称す)を受けるアドレス入
力端であり、第2図に示す如く、主メモリ書込みアドレ
スlOのうち、キャッシュブロックを特定できる、上位
所定ビット数のアドレスをブロック指定アドレス11と
して入力する。2a。
2b、2c、 2dはそれぞれアドレス入力端1に入力
されたブロック指定アドレス11を受けて後述する制御
回路4の制御の下に選択的に貯えるレジスタである。3
a、 3b、 3e、 3dは上記レジスタ2a、 2
b、 2e+2dに対応して設けられ、それぞれ対応す
るレジスタ2a、 2b、 2c、 2dに貯えられた
アドレスとアドレス入力端1に人力されたブロック指定
アドレス11とを比較する比較器である。4は上記比較
器3a。
されたブロック指定アドレス11を受けて後述する制御
回路4の制御の下に選択的に貯えるレジスタである。3
a、 3b、 3e、 3dは上記レジスタ2a、 2
b、 2e+2dに対応して設けられ、それぞれ対応す
るレジスタ2a、 2b、 2c、 2dに貯えられた
アドレスとアドレス入力端1に人力されたブロック指定
アドレス11とを比較する比較器である。4は上記比較
器3a。
3b、 3c、 3dの出力を受け、アドレス入力端1
にブロック指定アドレス11が入力されたとき、同一の
ブロック指定アドレスがレジスタ2a、 2b、 2c
、 2dに登録されないように、レジスタ2a、 2b
、 2c 2dを制御するとともに、後述するセレク
タ5を制御する。5は上記制御回路4の制御の下にレジ
スタ2a、 2b、 2c、 2dの一つを選択し、そ
の選択したレジスタ21 (1−a/b/c/d)に貯
えられたブロック指定アドレスをディレクトリチェック
対象アドレスとしてキャッシュ無効化回路に送出する。
にブロック指定アドレス11が入力されたとき、同一の
ブロック指定アドレスがレジスタ2a、 2b、 2c
、 2dに登録されないように、レジスタ2a、 2b
、 2c 2dを制御するとともに、後述するセレク
タ5を制御する。5は上記制御回路4の制御の下にレジ
スタ2a、 2b、 2c、 2dの一つを選択し、そ
の選択したレジスタ21 (1−a/b/c/d)に貯
えられたブロック指定アドレスをディレクトリチェック
対象アドレスとしてキャッシュ無効化回路に送出する。
第2図は上記実施例に於ける、主メモリ書込みアドレス
lOとキャッシュ無効化回路に送出されるブロック指定
アドレス11との関係を示す図である。
lOとキャッシュ無効化回路に送出されるブロック指定
アドレス11との関係を示す図である。
主メモリ書込みアドレス10は、キャッシュブロックを
特定できる上位所定ビット数のブロック指定アドレス1
1と、残る下位所定ビット数のアドレス部分(ブロック
内アドレス)とに分けられ、そのうちの上位所定ビット
数のブロック指定アドレス11がアドレス入力端1に入
力され、制御回路4の制御の下にレジスタ21に貯えら
れた後、セレクタ5で選択され、ディレクトリチェック
対象アドレスとしてキャッシュ無効化回路に送出される
。
特定できる上位所定ビット数のブロック指定アドレス1
1と、残る下位所定ビット数のアドレス部分(ブロック
内アドレス)とに分けられ、そのうちの上位所定ビット
数のブロック指定アドレス11がアドレス入力端1に入
力され、制御回路4の制御の下にレジスタ21に貯えら
れた後、セレクタ5で選択され、ディレクトリチェック
対象アドレスとしてキャッシュ無効化回路に送出される
。
ここで上記第1図及び第2図を参照して第1実施例の動
作を説明する。
作を説明する。
Iloより主メモリへの書込みが行なわれると、その主
メモリ書込みアドレス10のうち、上位所定ビット数で
なるブロック指定アドレス11がアドレス入力端1に入
力される。
メモリ書込みアドレス10のうち、上位所定ビット数で
なるブロック指定アドレス11がアドレス入力端1に入
力される。
このアドレス人力Itに入力されたブロック指定アドレ
ス11は、レジスタ2a、 2b、 2e、 2dに貯
えられているアドレスとともに、比較器3a、 3b、
3c3dに入力されて、入力されたブロック指定アド
レス11と同一のアドレスか既にレジスタ2 a 、
2 b 、 2 c 。
ス11は、レジスタ2a、 2b、 2e、 2dに貯
えられているアドレスとともに、比較器3a、 3b、
3c3dに入力されて、入力されたブロック指定アド
レス11と同一のアドレスか既にレジスタ2 a 、
2 b 、 2 c 。
2dのいずれかに貯えられているか否かか検査され、レ
ジスタ2a、 2b、 2c、 2dのいずれかに、入
力されたブロック指定アドレス11と同一のアドレスか
既に貯えられていると、その同一アドレスを貯えたレジ
スタ21に対応する比較器31より一致信号が出力され
る。
ジスタ2a、 2b、 2c、 2dのいずれかに、入
力されたブロック指定アドレス11と同一のアドレスか
既に貯えられていると、その同一アドレスを貯えたレジ
スタ21に対応する比較器31より一致信号が出力され
る。
制御回路4は比較器3a、 3b、 、3c、 3dの
いずれかより一致信号を受けると、レジスタ2a、 2
b、 2c。
いずれかより一致信号を受けると、レジスタ2a、 2
b、 2c。
2dの全てをディセーブルにし、人力されたブロック指
定アドレス11を無効にする。又、比較器3a3b、
3c、 3dのいずれからも一致信号を受けないときは
、空き状態にある(有効なアドレスがセットされていな
い)レジスタ21をイネーブルにして、そのレジスタ2
1に上記アドレス入力端lより人力されたブロック指定
アドレス11を書込み、そのレジスタ21を有効なアド
レスがセットされたレジスタとして管理する。
定アドレス11を無効にする。又、比較器3a3b、
3c、 3dのいずれからも一致信号を受けないときは
、空き状態にある(有効なアドレスがセットされていな
い)レジスタ21をイネーブルにして、そのレジスタ2
1に上記アドレス入力端lより人力されたブロック指定
アドレス11を書込み、そのレジスタ21を有効なアド
レスがセットされたレジスタとして管理する。
この有効なアドレスがセットされたレジスタ2Iは制御
回路4の制御の下にセレクタ5により選択され、その選
択されたレジスタ21に貯えられたブロック指定アドレ
スがディレクトリチェック対象アドレスとしてキャッシ
ュ無効化回路に送られる。
回路4の制御の下にセレクタ5により選択され、その選
択されたレジスタ21に貯えられたブロック指定アドレ
スがディレクトリチェック対象アドレスとしてキャッシ
ュ無効化回路に送られる。
そしてキャッシュ無効化回路で上記アドレスを用いたデ
ィレクトリチェックが行なわれると、制御回路4は、以
後そのアドレスを貯えているレジスタ21を空き状態に
あるレジスタとして管理し、次のブロック指定アドレス
11の入力に備える。
ィレクトリチェックが行なわれると、制御回路4は、以
後そのアドレスを貯えているレジスタ21を空き状態に
あるレジスタとして管理し、次のブロック指定アドレス
11の入力に備える。
このようなブロック指定アドレス11の入力制御を行な
うことにより、キャッシュ無効化のためのディレクトリ
チェック回数を大幅に削減できる。
うことにより、キャッシュ無効化のためのディレクトリ
チェック回数を大幅に削減できる。
即ち、Iloが連続したメモリエリアに書込みを行なっ
た場合、従来ではメモリ書込みアドレスが発送される都
度、CPU側でディレクトリチェックを行なう必要があ
ったが、上記した実施例によれば、同一キャッシュブロ
ックについて、1回たけディレクトリチェックを行なえ
ばよく、これによりディレクトリチェック回数を大幅に
削減することができる。
た場合、従来ではメモリ書込みアドレスが発送される都
度、CPU側でディレクトリチェックを行なう必要があ
ったが、上記した実施例によれば、同一キャッシュブロ
ックについて、1回たけディレクトリチェックを行なえ
ばよく、これによりディレクトリチェック回数を大幅に
削減することができる。
第2実施例
次に、第1図乃至第3図を参照して第2実施例を説明す
る。
る。
上記した第1実施例では、レジスタ2a、 2b。
2e、 2dに設定された有効アドレス数に関係な(、
そのアドレスをディレクトリチェック対象としてキャッ
シュ無効化回路に送出していたが、この第2実施例では
、予め定められた複数個数以上の有効アドレスがレジス
タ2a、 2b、・・・に設定されるまで、そのアドレ
スをキャッシュ無効化回路へ出力せず、予め定められた
複数個数以上の有効アドレスがレジスタ2a、 2b、
・・・に設定されると、そのアドレスを用いたディレク
トリチェックを行なうようにしている。
そのアドレスをディレクトリチェック対象としてキャッ
シュ無効化回路に送出していたが、この第2実施例では
、予め定められた複数個数以上の有効アドレスがレジス
タ2a、 2b、・・・に設定されるまで、そのアドレ
スをキャッシュ無効化回路へ出力せず、予め定められた
複数個数以上の有効アドレスがレジスタ2a、 2b、
・・・に設定されると、そのアドレスを用いたディレク
トリチェックを行なうようにしている。
この第2実施例の処理フローを第3図に示す。
第3図に於いて、Aはレジスタ2a、 2b、 2c、
2dへのセット処理、Bはディレクトリチェック対象
アドレスの送出処理を示したもので、処理Aと処理Bは
制御回路4の制御の下に並行して実行される。
2dへのセット処理、Bはディレクトリチェック対象
アドレスの送出処理を示したもので、処理Aと処理Bは
制御回路4の制御の下に並行して実行される。
この第2実施例では、主メモリにデータ書込みを行なう
Iloの数に応じた適当な個数(n個)のレジスタ(第
1図では、2a、 2b、 2c、 2dの4個)を用
意し、このn個のレジスタのうち、m(1≦m≦n)個
数以上のレジスタに有効アドレスが設定されたとき、そ
のm個のレジスタに貯えられた各アドレスを1アドレス
ずつ選択し自動無効化のためのディレクトリチェック対
象として出力制御する。
Iloの数に応じた適当な個数(n個)のレジスタ(第
1図では、2a、 2b、 2c、 2dの4個)を用
意し、このn個のレジスタのうち、m(1≦m≦n)個
数以上のレジスタに有効アドレスが設定されたとき、そ
のm個のレジスタに貯えられた各アドレスを1アドレス
ずつ選択し自動無効化のためのディレクトリチェック対
象として出力制御する。
このように、n個のレジスタのうち、m個のレジスタに
有効なアドレスが設定されたとき、ディレクトリチェッ
クを開始するようにしたことにより、例えば複数のIl
oが主メモリへ書込みを行なう場合等に於いて、あるI
loからキャッシュブロックとして同一アドレスが送ら
れてきたとき、1ブロツクにつき1回だけのディレクト
リチェックで済ませることが期待でき、キャッシュ無効
化のためのディレクトリチェックの回数を減らすことが
できる。即ち、Iloから主メモリへのデータ゛転送に
於いて、通常では連続した領域への書込みが多く、キャ
ッシュブロックとして同一アドレスが送られてくる場合
が多い。このようなとき、複数のIloから交互に主メ
モリへのデータ転送要求があると、その都度、ブロック
アドレスが変化し、その度にキャッシュ無効化のための
ディレクトリチェックを行なっていたのではCPUにか
かる処理負担が大きい。そこで、上記したように所定個
数(m個)のレジスタに有効なアドレスが設定されたと
き、ディレクトリチェックを開始するようにすれば、1
ブロツクにつき1回だけのディレクトリチェックで済ま
せることが期待でき、ディレクトリチェックの回数を減
らすことができる。
有効なアドレスが設定されたとき、ディレクトリチェッ
クを開始するようにしたことにより、例えば複数のIl
oが主メモリへ書込みを行なう場合等に於いて、あるI
loからキャッシュブロックとして同一アドレスが送ら
れてきたとき、1ブロツクにつき1回だけのディレクト
リチェックで済ませることが期待でき、キャッシュ無効
化のためのディレクトリチェックの回数を減らすことが
できる。即ち、Iloから主メモリへのデータ゛転送に
於いて、通常では連続した領域への書込みが多く、キャ
ッシュブロックとして同一アドレスが送られてくる場合
が多い。このようなとき、複数のIloから交互に主メ
モリへのデータ転送要求があると、その都度、ブロック
アドレスが変化し、その度にキャッシュ無効化のための
ディレクトリチェックを行なっていたのではCPUにか
かる処理負担が大きい。そこで、上記したように所定個
数(m個)のレジスタに有効なアドレスが設定されたと
き、ディレクトリチェックを開始するようにすれば、1
ブロツクにつき1回だけのディレクトリチェックで済ま
せることが期待でき、ディレクトリチェックの回数を減
らすことができる。
第3実施例
次に、第1図、第2図、及び第4図を参照して第3実施
例を説明する。
例を説明する。
この第3実施例では、アドレス入力端lに入力されたブ
ロック指定アドレスl」を貯えるレジスタ2a、 2b
、 2c、 2dに対応して、第1のフラグ(FA)と
第2のフラグ(FB)とを設ける。この第1のフラグ(
FA)と第2のフラグ(FB)は制御回路4により制御
されるもので、ここでは制御回路4内に設けられる。第
1のフラグ(FA)はレジスタ2a。
ロック指定アドレスl」を貯えるレジスタ2a、 2b
、 2c、 2dに対応して、第1のフラグ(FA)と
第2のフラグ(FB)とを設ける。この第1のフラグ(
FA)と第2のフラグ(FB)は制御回路4により制御
されるもので、ここでは制御回路4内に設けられる。第
1のフラグ(FA)はレジスタ2a。
2b、 2c、 2dがそれぞれ“空き“状態(1’A
−Q)にあるか“アドレス保持”状態(FA−1)にあ
るかを示す。第2のフラグ(FB)は、上記各レジスタ
2a。
−Q)にあるか“アドレス保持”状態(FA−1)にあ
るかを示す。第2のフラグ(FB)は、上記各レジスタ
2a。
2b、 2c、 2dの内容がそれぞれ“確定′状態(
FB−1)であるか“不定“状R(pn−o)であるか
を示す。
FB−1)であるか“不定“状R(pn−o)であるか
を示す。
アドレス入力端1にブロック指定アドレス11が入力さ
れると、制御回路4は、上記フラグ(FB)が“確定”
状!!! (FB−1)を示しているレジスタ21に設
定されたアドレスと同一でないことを条件に、アドレス
入力端1に人力された新たなブロック指定アドレス11
を上記第1のフラグ(FA)が“空き”状態(FA−0
)を示しているレジスタに登録し、上記各フラグ(FA
、 FB)をそれぞれセット(FA−1゜PI3−1)
する。又、制御回路4は、上記第1のフラグ(FA)が
“アドレス保持”状態(FA−1)を示しているレジス
タ2j (j−172/3/4)に貯えられたアドレス
を自動無効化のためのディレクトリチェック対象として
送出するようにセレクタ5を制御し、そのアドレスがキ
ャッシュ無効化回路に送出された後、上記レジスタ2j
に対応する第1のフラグ(FA)のみを“空き”状態(
FA−0)に設定する。
れると、制御回路4は、上記フラグ(FB)が“確定”
状!!! (FB−1)を示しているレジスタ21に設
定されたアドレスと同一でないことを条件に、アドレス
入力端1に人力された新たなブロック指定アドレス11
を上記第1のフラグ(FA)が“空き”状態(FA−0
)を示しているレジスタに登録し、上記各フラグ(FA
、 FB)をそれぞれセット(FA−1゜PI3−1)
する。又、制御回路4は、上記第1のフラグ(FA)が
“アドレス保持”状態(FA−1)を示しているレジス
タ2j (j−172/3/4)に貯えられたアドレス
を自動無効化のためのディレクトリチェック対象として
送出するようにセレクタ5を制御し、そのアドレスがキ
ャッシュ無効化回路に送出された後、上記レジスタ2j
に対応する第1のフラグ(FA)のみを“空き”状態(
FA−0)に設定する。
尚、上記第2のフラグ(1’B)は、例えばキャッシュ
クリア命令等により全て初期状態(FB−0)に戻され
るが、この具体的な動作はここでは言及しない。
クリア命令等により全て初期状態(FB−0)に戻され
るが、この具体的な動作はここでは言及しない。
この第3実施例に於ける処理フローを第4図に示す。第
4図に於いて、Aはレジスタ2a、 2b、 2c2d
へのセット処理、Bはディレクトリチェック対象アドレ
スの送出処理を示したもので、処理Aと処理Bは制御回
路4の制御の下に並行して実行される。
4図に於いて、Aはレジスタ2a、 2b、 2c2d
へのセット処理、Bはディレクトリチェック対象アドレ
スの送出処理を示したもので、処理Aと処理Bは制御回
路4の制御の下に並行して実行される。
上記したような機能構成とすることにより、連続したメ
モリ領域への書込みに於いて、従来の如く毎回ディレク
トリチェックを行なう必要がなく、1キャッシュブロッ
クサイズ分の書込みにつき1回だけのディレクトリチェ
ックに減らすことが期待できる。
モリ領域への書込みに於いて、従来の如く毎回ディレク
トリチェックを行なう必要がなく、1キャッシュブロッ
クサイズ分の書込みにつき1回だけのディレクトリチェ
ックに減らすことが期待できる。
尚、上記実施例に於いては、アドレス入力端1に入力さ
れたブロック指定アドレス11を貯えるレジスタを4個
としているが、主メモリにデータ書込みを行なうIlo
の数等に応じて適当な数のレジスタを用意すればよい。
れたブロック指定アドレス11を貯えるレジスタを4個
としているが、主メモリにデータ書込みを行なうIlo
の数等に応じて適当な数のレジスタを用意すればよい。
[発明の効果]
以上詳記したように本発明によるキャッシュメモリの自
動無効化制御回路によれば、主メモリに与えられる書込
みアドレスの一部を入力するアドレス入力手段と、同手
段により人力されたアドレスをそれぞれが独立して選択
的に保持する複数のレジスタと、上記アドレス入力手段
によって入力されたアドレスと上記レジスタに保持され
たアドレスとを比較するアドレス比較手段とを有し、上
記アドレス比較手段が一致を検出しないことを条件に、
上記アドレス人力手段により入力されたアドレスを上記
レジスタにセットする構成としたことにより、キャッシ
ュ無効化のためのディレクトリチェックの回数を減らす
ことができ、キャッシュ無効化に起因するCPUの性能
劣化を防止してシステムの処理性能を向上できる。
動無効化制御回路によれば、主メモリに与えられる書込
みアドレスの一部を入力するアドレス入力手段と、同手
段により人力されたアドレスをそれぞれが独立して選択
的に保持する複数のレジスタと、上記アドレス入力手段
によって入力されたアドレスと上記レジスタに保持され
たアドレスとを比較するアドレス比較手段とを有し、上
記アドレス比較手段が一致を検出しないことを条件に、
上記アドレス人力手段により入力されたアドレスを上記
レジスタにセットする構成としたことにより、キャッシ
ュ無効化のためのディレクトリチェックの回数を減らす
ことができ、キャッシュ無効化に起因するCPUの性能
劣化を防止してシステムの処理性能を向上できる。
第1図は本発明の第1実施例に於ける11カ成を示すブ
ロック図、第2図は上記実施例に於けるブロック指定ア
ドレスの構成説明図、第3図は本発明の第2実施例に於
ける処理フローを示すフローチャート、第4図は本発明
の第3実施例に於ける処理フローを示すフローチャート
である。 ■・・・アドレス入力端、2a、 2b、 2c、 2
d・レジスタ、3a、 3b、 3c、 3d−・・比
較器、4・・・制御回路、5・・・セレクタ。 出願人代理人 弁理士 鈴江武彦 第1図 10(メモリアドレス)
ロック図、第2図は上記実施例に於けるブロック指定ア
ドレスの構成説明図、第3図は本発明の第2実施例に於
ける処理フローを示すフローチャート、第4図は本発明
の第3実施例に於ける処理フローを示すフローチャート
である。 ■・・・アドレス入力端、2a、 2b、 2c、 2
d・レジスタ、3a、 3b、 3c、 3d−・・比
較器、4・・・制御回路、5・・・セレクタ。 出願人代理人 弁理士 鈴江武彦 第1図 10(メモリアドレス)
Claims (3)
- (1)、主メモリへの書込み時に於ける書込みアドレス
がキャッシュメモリに存在するとき、そのキャッシュメ
モリのエントリを無効化するキャッシュメモリの自動無
効化回路を有してなる情報処理装置に於いて、主メモリ
に与えられる書込みアドレスの一部を入力するアドレス
入力手段と、同手段により入力されたアドレスをそれぞ
れが独立して選択的に保持する複数のレジスタと、上記
アドレス入力手段によって入力されたアドレスと上記レ
ジスタに保持されたアドレスとを比較するアドレス比較
手段とを有し、アドレス入力手段により入力されたアド
レスを上記レジスタに新たにセットする際は、上記アド
レス比較手段が一致を検出しないことを条件とすること
を特徴としたキャッシュメモリの自動無効化制御回路。 - (2)、主メモリへの書込み時に於ける書込みアドレス
がキャッシュメモリに存在するとき、そのキャッシュメ
モリのエントリを無効化するキャッシュメモリの自動無
効化回路を有してなる情報処理装置に於いて、主メモリ
に与えられる書込みアドレスの一部を入力し、同入力ア
ドレスをそれぞれが独立して選択的に保持する複数のレ
ジスタと、上記入力アドレスが上記レジスタに設定され
ていないことを条件に、上記入力アドレスを上記レジス
タの一つに設定するレジスタ制御回路と、上記複数のレ
ジスタのうち、所定個数以上のレジスタにアドレスが設
定されたとき、その各レジスタのアドレスを1アドレス
ずつ選択し自動無効化のためのディレクトリチェック対
象として出力制御するアドレス選択回路とを具備してな
ることを特徴としたキャッシュメモリの自動無効化制御
回路。 - (3)、主メモリへの書込み時に於ける書込みアドレス
がキャッシュメモリに存在するとき、そのキャッシュメ
モリのエントリを無効化するキャッシュメモリの自動無
効化回路を有してなる情報処理装置に於いて、主メモリ
に与えられる書込みアドレスの一部をそれぞれ独立して
選択的に保持する複数のレジスタと、この各レジスタが
それぞれ“空き”状態にあるか“アドレス保持”状態に
あるかを示す第1のフラグと、上記各レジスタの内容が
それぞれ“確定”状態であるか“不定”状態であるかを
示す第2のフラグと、上記第2のフラグが“確定”状態
を示しているレジスタに設定されたアドレスと同一でな
いことを条件に、上記レジスタに新たなアドレスを設定
する手段と、上記第1のフラグが“アドレス保持”状態
を示しているレジスタのアドレスを自動無効化のための
ディレクトリチェック対象として送出制御する手段とを
具備してなることを特徴としたキャッシュメモリの自動
無効化制御回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63224332A JPH0272449A (ja) | 1988-09-07 | 1988-09-07 | キャッシュメモリの自動無効化制御回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63224332A JPH0272449A (ja) | 1988-09-07 | 1988-09-07 | キャッシュメモリの自動無効化制御回路 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0272449A true JPH0272449A (ja) | 1990-03-12 |
Family
ID=16812098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63224332A Pending JPH0272449A (ja) | 1988-09-07 | 1988-09-07 | キャッシュメモリの自動無効化制御回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0272449A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04239937A (ja) * | 1991-01-24 | 1992-08-27 | Nec Corp | キャッシュ一致処理方式 |
JPH09146839A (ja) * | 1995-11-21 | 1997-06-06 | Kofu Nippon Denki Kk | キャッシュメモリ制御装置 |
-
1988
- 1988-09-07 JP JP63224332A patent/JPH0272449A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04239937A (ja) * | 1991-01-24 | 1992-08-27 | Nec Corp | キャッシュ一致処理方式 |
JPH09146839A (ja) * | 1995-11-21 | 1997-06-06 | Kofu Nippon Denki Kk | キャッシュメモリ制御装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5644784A (en) | Linear list based DMA control structure | |
US5680577A (en) | Method and system for processing multiple requests for data residing at the same memory address | |
JPH0272449A (ja) | キャッシュメモリの自動無効化制御回路 | |
JP3100807B2 (ja) | キャッシュメモリ装置 | |
JPH05165761A (ja) | Dmaコントローラ | |
JPH0589027A (ja) | 監視機能付ライトバツフア | |
JP2000040057A (ja) | 計算機システム、バッファ制御装置及び転送方法 | |
US6480945B2 (en) | Method and apparatus for controlling memory access by a plurality of devices | |
JPH08272687A (ja) | 入出力キャッシュメモリ | |
WO1996012230A1 (en) | System and method for processing of memory data and communication system comprising such system | |
JP3299147B2 (ja) | キャッシュ制御回路 | |
JPH02189627A (ja) | データメモリのアクセス回路 | |
JPS6124734B2 (ja) | ||
JPS63286959A (ja) | メモリアクセス方式 | |
JPH06290101A (ja) | データ処理装置 | |
JPS6017550A (ja) | キヤツシユメモリ管理方法 | |
JP2002132706A (ja) | Dma転送装置 | |
JPH0235541A (ja) | 主記憶装置の制御方式 | |
JPH02234246A (ja) | キャッシュ一致処理制御システム | |
JPS63155346A (ja) | Ramチエツク方式 | |
JPH0685154B2 (ja) | 中間バッファ制御方式 | |
EP0369935A2 (en) | Multiple posting cache memory | |
JPH0248749A (ja) | バッファ記憶制御装置 | |
JPH02193235A (ja) | バスアクセス例外検出方法 | |
JPS62130441A (ja) | パツフアのインバリデ−ト方式 |