JPS59112479A - キヤツシユメモリの高速アクセス方式 - Google Patents
キヤツシユメモリの高速アクセス方式Info
- Publication number
- JPS59112479A JPS59112479A JP57221655A JP22165582A JPS59112479A JP S59112479 A JPS59112479 A JP S59112479A JP 57221655 A JP57221655 A JP 57221655A JP 22165582 A JP22165582 A JP 22165582A JP S59112479 A JPS59112479 A JP S59112479A
- Authority
- JP
- Japan
- Prior art keywords
- data
- associative
- memory
- access
- stack
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の技術分野〕
本発明は、スタックメモリなどのように、メモリアクセ
スのオーバーヘッドが極力小さいことが要求される特定
メモリ領域のデータについて、キャッシュメモリアクセ
ス時間を短縮して先行処理可能にすることによりメモリ
アクセスの高速化を図る方式に関する。
スのオーバーヘッドが極力小さいことが要求される特定
メモリ領域のデータについて、キャッシュメモリアクセ
ス時間を短縮して先行処理可能にすることによりメモリ
アクセスの高速化を図る方式に関する。
従来、メモリアクセスを高速化するために、セットアソ
シアティブ方式のキャッシュメモリが広く使われている
が、この方式では第1図に示すように、求めるデータが
キャッシュメモリ内にあるか否かを、タグ部(アドレス
アレイ)の連想アクセスにより判定するため、高速メモ
リを用いても。
シアティブ方式のキャッシュメモリが広く使われている
が、この方式では第1図に示すように、求めるデータが
キャッシュメモリ内にあるか否かを、タグ部(アドレス
アレイ)の連想アクセスにより判定するため、高速メモ
リを用いても。
タグ部のアクセスのために、たとえばCPUのマシンサ
イクルの2倍程度の時間が必要とされる。
イクルの2倍程度の時間が必要とされる。
他方、高速のスタックメモリを専用ハードウェアで実現
する方法があり、この場合には、CPUのマシンサイク
ル程度のアクセス時間ヲ146コトができる。しかし、
マルチプロセス処理でプロセスを切替えたとき、スタッ
クをスワツピングする必要があり、その処理に長い時間
がかかるという欠点があった。
する方法があり、この場合には、CPUのマシンサイク
ル程度のアクセス時間ヲ146コトができる。しかし、
マルチプロセス処理でプロセスを切替えたとき、スタッ
クをスワツピングする必要があり、その処理に長い時間
がかかるという欠点があった。
本発明の目的は、セットアソシアティブのキャッシュメ
モリにおいて、スタックのような特定のメモリ領域のデ
ータアクセスについて、より高速な動作を可能にする手
段を提供することにあり。
モリにおいて、スタックのような特定のメモリ領域のデ
ータアクセスについて、より高速な動作を可能にする手
段を提供することにあり。
そのため、上記特定のメモリ領域のデータを、キャッシ
ュの連想メモリの特定の連想レベルに割付けることによ
り、CPUが特定メモリ領域のアドレスを指定してメモ
リアクセス要求を出した場合に、そのデータは、キャッ
シュメモリの上記割付けられた特定の連想レベルにしか
存在し得ないため、連想アクセス結果を待たずにデータ
アクセス動作を先行させることを可能にして、メモリア
クセス時間を短縮するものである。
ュの連想メモリの特定の連想レベルに割付けることによ
り、CPUが特定メモリ領域のアドレスを指定してメモ
リアクセス要求を出した場合に、そのデータは、キャッ
シュメモリの上記割付けられた特定の連想レベルにしか
存在し得ないため、連想アクセス結果を待たずにデータ
アクセス動作を先行させることを可能にして、メモリア
クセス時間を短縮するものである。
それにより1本発明の構成は、複数の連想レベルを有す
るセットアソシアティブ方式のキャッシュメモリにおい
て、特定のメモリ領域のデータについては、特定の1つ
の連想レベルへ割付けるとともに、その特定メモリ領域
に対するアクセスを示す信号によりその特定連想レベル
のデータを選択する回路を設け、キャッシュの読出動作
において、ディレクトリまたはタグ等のアドレスアレイ
の連想検索による照合一致信号による選択を待たずに読
出データを選択し、′f、たキャッシュの書込動作にお
いては、アドレスアレイの連想検索による照合一致信号
による選択を待たずに、上記特定メモリ領域に対するア
クセスを示す信号により。
るセットアソシアティブ方式のキャッシュメモリにおい
て、特定のメモリ領域のデータについては、特定の1つ
の連想レベルへ割付けるとともに、その特定メモリ領域
に対するアクセスを示す信号によりその特定連想レベル
のデータを選択する回路を設け、キャッシュの読出動作
において、ディレクトリまたはタグ等のアドレスアレイ
の連想検索による照合一致信号による選択を待たずに読
出データを選択し、′f、たキャッシュの書込動作にお
いては、アドレスアレイの連想検索による照合一致信号
による選択を待たずに、上記特定メモリ領域に対するア
クセスを示す信号により。
その特定連想レベルのデータ部のブロックへ書込みを行
ない、もしアドレスアレイの連想検索によりその書込ん
だデータブーツクが指示したアドレスでなく且つそのブ
ロックの有効表示ビットが検出された場合には、更に引
続いてそのブロックの有効表示ビットをリセットするこ
とを特徴とする。
ない、もしアドレスアレイの連想検索によりその書込ん
だデータブーツクが指示したアドレスでなく且つそのブ
ロックの有効表示ビットが検出された場合には、更に引
続いてそのブロックの有効表示ビットをリセットするこ
とを特徴とする。
以下に1本発明を実施例にしたがって説明する。
第2図は1本発明実施例の概念を示す説明図であり1図
中、1はキャッシュメモリ、2はそのタグ部、3は同じ
くデータ部、4は主記憶装置を示す。キャッシュメモリ
のタグ部2およびデータ部3は、4つの連想レベル#O
,$1. $2. #3と128のセットで構成されて
いる。
中、1はキャッシュメモリ、2はそのタグ部、3は同じ
くデータ部、4は主記憶装置を示す。キャッシュメモリ
のタグ部2およびデータ部3は、4つの連想レベル#O
,$1. $2. #3と128のセットで構成されて
いる。
I第2図に示すように、たとえばキャッシュメモリの4
つの連想レベルのうち、連想レベル#3をスタック専用
域に割当て、主記憶(仮想メモリ空間でもよい)の中の
スタック領域のデータは、その連想レベルにだけ格納さ
れるようにする。
つの連想レベルのうち、連想レベル#3をスタック専用
域に割当て、主記憶(仮想メモリ空間でもよい)の中の
スタック領域のデータは、その連想レベルにだけ格納さ
れるようにする。
ここでCPUから、AIというアドレスのスタックのデ
ータに対するアクセス要求が出された場合、AIアドレ
スの下位7ビツトでセットが指定され・スタック専用域
の連想レベル#3のたとえばデータDが選択されてCP
Uへ送られる。他方。
ータに対するアクセス要求が出された場合、AIアドレ
スの下位7ビツトでセットが指定され・スタック専用域
の連想レベル#3のたとえばデータDが選択されてCP
Uへ送られる。他方。
AIの上位アドレスとDに対応するタグ内のアドレス情
報A(これは上位アドレスのみ)とが完全に一致するか
どうかの照合が必要であるが、照合結果を得る前に、C
PUは送られて来たデータDを用いて先行して演算して
おくことは可能である。
報A(これは上位アドレスのみ)とが完全に一致するか
どうかの照合が必要であるが、照合結果を得る前に、C
PUは送られて来たデータDを用いて先行して演算して
おくことは可能である。
そして、その演算結果を目的場所に格納する時までに、
上記照合結果が判明すれば、誤処理となるのを防ぐこと
ができる。
上記照合結果が判明すれば、誤処理となるのを防ぐこと
ができる。
第3図は2本発明の1実施例システムの構成図である。
同図において、参照番号1乃至4は第2図のものに対応
しており、1はキャッシュメモリ。
しており、1はキャッシュメモリ。
2はタグ部、3はデータ部、4は主記憶装置である。、
また、5はタグ#Oの比較器、6はタグ#3の比較器、
7,8はANDゲート、9は読出論理回路、10はリー
ドあるいはライト系命令、11はスタックアクセスビッ
ト、12.13はデータセレクタ、14は演算器ALU
、15.16はレジスタ、17はANDゲートを示す。
また、5はタグ#Oの比較器、6はタグ#3の比較器、
7,8はANDゲート、9は読出論理回路、10はリー
ドあるいはライト系命令、11はスタックアクセスビッ
ト、12.13はデータセレクタ、14は演算器ALU
、15.16はレジスタ、17はANDゲートを示す。
比較器5.6はアクセスアドレス中の上位アドレスとタ
グ部2から読み出されたアドレスとを比較する。、AN
Dゲート7.3はタグ部2から読み出されたアドレスの
有効表示(VALID)ビットvがONのときにのみ、
比較器5.6の出力を続出論理回路9へ印加する。特に
連想レベル#3の比較結果出力は、スタックアドレス一
致を示す5TACK FOUND信号として使用され、
先行処理データが、演算器14からレジスタ15.16
に書き込まれる際、ANDゲート17を介してレジスタ
へのクロック供給制御を行ない、レジスタのイネーブル
状態を制御する。
グ部2から読み出されたアドレスとを比較する。、AN
Dゲート7.3はタグ部2から読み出されたアドレスの
有効表示(VALID)ビットvがONのときにのみ、
比較器5.6の出力を続出論理回路9へ印加する。特に
連想レベル#3の比較結果出力は、スタックアドレス一
致を示す5TACK FOUND信号として使用され、
先行処理データが、演算器14からレジスタ15.16
に書き込まれる際、ANDゲート17を介してレジスタ
へのクロック供給制御を行ない、レジスタのイネーブル
状態を制御する。
本発明実施例では、スタックアクセスを行なう場合、予
め命令10のスタックアクセスビットをlIIに設定し
ておぎ、CPUがこの命令を実行する際に、キャッシュ
メモリ1に対するスタックアクセス信号をONにする。
め命令10のスタックアクセスビットをlIIに設定し
ておぎ、CPUがこの命令を実行する際に、キャッシュ
メモリ1に対するスタックアクセス信号をONにする。
スタックアクセス信号は、読出論理回路9に与えられ、
このスタックアクセス信号がONの場合には、無条件に
連想レベル#3のデータ部をイネーブルにし、かつデー
タセレクタ12に対して、データ#3を選択させる。
このスタックアクセス信号がONの場合には、無条件に
連想レベル#3のデータ部をイネーブルにし、かつデー
タセレクタ12に対して、データ#3を選択させる。
第4図は、続出論理回路19.の1構成例を示したもの
である。
である。
第3図において、スタック読出動作としてキャッシュに
アクセスした場合には、同図のスタックアクセス信号が
ONとなり、読出論理回路9により9強制的にデータブ
ロック#3からの続出データが選択されて、CPUの演
算器14へ送られる。
アクセスした場合には、同図のスタックアクセス信号が
ONとなり、読出論理回路9により9強制的にデータブ
ロック#3からの続出データが選択されて、CPUの演
算器14へ送られる。
そして、タグ#3の比較器6からの5TACKFOUN
D信号がONになると、ANDゲート17が開き、各レ
ジスタ15.16等がイネーブルとなって、演算結果が
演算器14から目的のレジスタ15.16等に格納され
る。
D信号がONになると、ANDゲート17が開き、各レ
ジスタ15.16等がイネーブルとなって、演算結果が
演算器14から目的のレジスタ15.16等に格納され
る。
一方、スタック書込動作としてキャッシュにアクセスし
た場合には、ONのスタックアクセス信号により続出論
理回路9が制御され、データ部#3がイネーブルとなっ
てデータ部#3ヘデータが書込まれる。すなわち、タグ
#3比較器の5TACKFOUND信号が0N10FF
を示すのを待たずに、先に書込んでしまう。
た場合には、ONのスタックアクセス信号により続出論
理回路9が制御され、データ部#3がイネーブルとなっ
てデータ部#3ヘデータが書込まれる。すなわち、タグ
#3比較器の5TACKFOUND信号が0N10FF
を示すのを待たずに、先に書込んでしまう。
その後、もし5TACK FOUND信号がONであれ
ば、そのまま何もしなくてもよい。しかし。
ば、そのまま何もしなくてもよい。しかし。
もし5TACK FOUND信号がOFF、すなわち5
TACK NOT FOUNDでかっ、その書込んだブ
ロックの有効表示ビットvが11gであれば。
TACK NOT FOUNDでかっ、その書込んだブ
ロックの有効表示ビットvが11gであれば。
タグのそのブロックの有効表示ビットVをリセットする
。
。
これにより、5TACK NOT FOUND でかつ
有効表示ビットがlIIである場合を除いて。
有効表示ビットがlIIである場合を除いて。
アクセス要求の大部分の場合が1サイクル、つまりキャ
ッシュ書込みのみで動作が終了する。しかし、上記の5
TACK NOT FOUNDの場合には、キャッシュ
書込みとタグのVビットをリセットするために2サイク
ル使用される。
ッシュ書込みのみで動作が終了する。しかし、上記の5
TACK NOT FOUNDの場合には、キャッシュ
書込みとタグのVビットをリセットするために2サイク
ル使用される。
したがって、キャッシュメモリ中に存在しないブロック
への書込操作については、2回目以降は。
への書込操作については、2回目以降は。
1サイクルで処理を済ますことができる。
■ 5TACK FOUNDV VALIDの場合0
2 S’l’AUK F(JUNI)・VALID(
7)場合データ書込み タグVALIDリセット一一
一 ここで、前提条件として、キャッシュメモリと主記憶の
間では、いわゆる5TORE THROUGH方式の制
御を使うことを仮定している。つまり、書込動作におい
て、そのデータを含むブロックがキャッシュメモリに存
在する。しないに関係なく、主記憶にも必ず書込みを行
なう。これにより、上記■の場合でも、主記憶にも書込
んであるので、キャッシュのそのブロックの有効表示ビ
ットをリセットするだけで済む。
2 S’l’AUK F(JUNI)・VALID(
7)場合データ書込み タグVALIDリセット一一
一 ここで、前提条件として、キャッシュメモリと主記憶の
間では、いわゆる5TORE THROUGH方式の制
御を使うことを仮定している。つまり、書込動作におい
て、そのデータを含むブロックがキャッシュメモリに存
在する。しないに関係なく、主記憶にも必ず書込みを行
なう。これにより、上記■の場合でも、主記憶にも書込
んであるので、キャッシュのそのブロックの有効表示ビ
ットをリセットするだけで済む。
以上は、スタック領域へのアクセスの場合であるが、一
般のデータ領域へのアクセスの場合には。
般のデータ領域へのアクセスの場合には。
たとえば、第2図のキャッシュにおいて、連想レベル#
φ〜#2の3個のレベルを使って、よく知られた連想検
索動作を行なう。つまり、読出し動作では、まずTAG
#φ〜2の比較器の照合を行ない・一致した連想レベル
に対応するデータ部からの読出データを選択してCPU
へ送る。一方。
φ〜#2の3個のレベルを使って、よく知られた連想検
索動作を行なう。つまり、読出し動作では、まずTAG
#φ〜2の比較器の照合を行ない・一致した連想レベル
に対応するデータ部からの読出データを選択してCPU
へ送る。一方。
書込動作の場合では、まずTAGsφ〜#2の比較器の
照合を行ない、一致した連想レベルに対応するデータ部
へ書込む。
照合を行ない、一致した連想レベルに対応するデータ部
へ書込む。
なお、連想レベル#3を一般データ領域とスタック領域
とで共用してもよい。
とで共用してもよい。
ここで、キャッシュの各ブロック(タグで管理している
データの単位)は、一般にスタックの複数語から成るも
のとしている。例えば、ブロックサイズは32Byte
に対して、スタックの−゛語は4Bytaである。
データの単位)は、一般にスタックの複数語から成るも
のとしている。例えば、ブロックサイズは32Byte
に対して、スタックの−゛語は4Bytaである。
以上1本発明により、一般データとスタック領域のデー
タを1つのキャッシュメモリで統一シテ扱うと共に、ス
タックの読出しアクセスについては、単なるメモリアク
セスと同じアクセス時間が可能となり、またスタックの
書込アクセスについても、はとんどの場合、単なるメモ
リへの書込時間で処理することができる。
タを1つのキャッシュメモリで統一シテ扱うと共に、ス
タックの読出しアクセスについては、単なるメモリアク
セスと同じアクセス時間が可能となり、またスタックの
書込アクセスについても、はとんどの場合、単なるメモ
リへの書込時間で処理することができる。
牙1図は一般的なセットアソシアティブ方式のキャッシ
ュメモリの基本構成を示すブロック図。 第2図は本発明の詳細な説明図、第3図は本発明実施例
システムの構成図、牙4図はその続出論理回路の1例を
示す図である。 −図中、1はキャッシュメモリ、2はタグ部、3はデー
タ部、4は主記憶装置、5.6は比較器。 7.8.17はANDゲート、9は続出論理回路。 10は命令、11はスタックアクセスビット、12゜1
3はデータセレクタ、14は演算器、15.16はレジ
スタを表わす。 特許出願人 富士通株式会社
ュメモリの基本構成を示すブロック図。 第2図は本発明の詳細な説明図、第3図は本発明実施例
システムの構成図、牙4図はその続出論理回路の1例を
示す図である。 −図中、1はキャッシュメモリ、2はタグ部、3はデー
タ部、4は主記憶装置、5.6は比較器。 7.8.17はANDゲート、9は続出論理回路。 10は命令、11はスタックアクセスビット、12゜1
3はデータセレクタ、14は演算器、15.16はレジ
スタを表わす。 特許出願人 富士通株式会社
Claims (1)
- i数の連想レベルを有するセットアソシアティブ方式の
キャッシュメモリにおいて、特定のメモリ領域のデータ
については、特定の1つの連想レベルへ割付けるととも
に、その特定メモリ領域に対するアクセスを示す信号に
よりその特定連想レベルのデータを選択する回路を設け
、キャッシュの読出動作において、ディレクトリまたは
タグ等のアドレスアレイの連想検索による照合一致信号
による選択を待たずに続出データを選択し、′f、たキ
ャッシュの書込動作においては、アドレスアレイの連想
検索による照合一致信号による選択を待たずに、上記特
定メモリ領域に対するアクセスを示す信号により、その
特定連想レベルのデータ部のブロックへ書込みを行ない
、もしアドレスアレイの連想検索によりその書込んだデ
ータブロックが指示したアドレスでなく且つそのブロッ
クの有効表示ビットが検出された場合には、更に引続い
てそのブロックの有効表示ビットをリセットすることを
特徴とするキャッシュメモリの高速アクセス方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57221655A JPS59112479A (ja) | 1982-12-17 | 1982-12-17 | キヤツシユメモリの高速アクセス方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57221655A JPS59112479A (ja) | 1982-12-17 | 1982-12-17 | キヤツシユメモリの高速アクセス方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS59112479A true JPS59112479A (ja) | 1984-06-28 |
JPS6152505B2 JPS6152505B2 (ja) | 1986-11-13 |
Family
ID=16770174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP57221655A Granted JPS59112479A (ja) | 1982-12-17 | 1982-12-17 | キヤツシユメモリの高速アクセス方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS59112479A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61131140A (ja) * | 1984-11-30 | 1986-06-18 | Fujitsu Ltd | バツフア・メモリ・アクセス方式 |
JPS63208144A (ja) * | 1987-02-25 | 1988-08-29 | Yokogawa Electric Corp | キヤツシユ・メモリ制御装置 |
JP2012027652A (ja) * | 2010-07-22 | 2012-02-09 | Fujitsu Ltd | キャッシュメモリ |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0284701U (ja) * | 1988-12-21 | 1990-07-02 |
-
1982
- 1982-12-17 JP JP57221655A patent/JPS59112479A/ja active Granted
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61131140A (ja) * | 1984-11-30 | 1986-06-18 | Fujitsu Ltd | バツフア・メモリ・アクセス方式 |
JPH0321933B2 (ja) * | 1984-11-30 | 1991-03-25 | Fujitsu Ltd | |
JPS63208144A (ja) * | 1987-02-25 | 1988-08-29 | Yokogawa Electric Corp | キヤツシユ・メモリ制御装置 |
JP2012027652A (ja) * | 2010-07-22 | 2012-02-09 | Fujitsu Ltd | キャッシュメモリ |
Also Published As
Publication number | Publication date |
---|---|
JPS6152505B2 (ja) | 1986-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4197580A (en) | Data processing system including a cache memory | |
US5295251A (en) | Method of accessing multiple virtual address spaces and computer system | |
US3569938A (en) | Storage manager | |
US5239642A (en) | Data processor with shared control and drive circuitry for both breakpoint and content addressable storage devices | |
US7240159B2 (en) | Data processor having cache memory | |
US5805930A (en) | System for FIFO informing the availability of stages to store commands which include data and virtual address sent directly from application programs | |
US3611315A (en) | Memory control system for controlling a buffer memory | |
US5371857A (en) | Input/output interruption control system for a virtual machine | |
US5226132A (en) | Multiple virtual addressing using/comparing translation pairs of addresses comprising a space address and an origin address (sto) while using space registers as storage devices for a data processing system | |
JPH0532775B2 (ja) | ||
EP0730228A1 (en) | ECC protected memory organization with pipelined read-modify-write accesses | |
JP2005512192A (ja) | キャッシュメモリをメインメモリに同期させる方法 | |
JPS59112479A (ja) | キヤツシユメモリの高速アクセス方式 | |
US4616315A (en) | System memory for a reduction processor evaluating programs stored as binary directed graphs employing variable-free applicative language codes | |
US5276853A (en) | Cache system | |
US4737908A (en) | Buffer memory control system | |
US4598361A (en) | Allocator for a reduction processor evaluating programs stored as binary directed graphs employing variable-free applicative language codes | |
GB2037466A (en) | Computer with cache memory | |
EP0335113A2 (en) | Single chip cache memory, and cache memory apparatus including a plurality of parallel connected single chip cache memories | |
JP2632859B2 (ja) | メモリアクセス制御回路 | |
EP0600703A2 (en) | Information processing apparatus capable of simultaneously storing and fetching data | |
JPH01280851A (ja) | キャッシュ・ストア制御方式 | |
JPH02259945A (ja) | ストア処理方式 | |
JPH0498343A (ja) | メモリ制御方式 | |
JP2000172675A (ja) | リストベクトル処理装置 |