JPH03216744A - 内蔵キャッシュ・メモリ制御方式 - Google Patents
内蔵キャッシュ・メモリ制御方式Info
- Publication number
- JPH03216744A JPH03216744A JP2012220A JP1222090A JPH03216744A JP H03216744 A JPH03216744 A JP H03216744A JP 2012220 A JP2012220 A JP 2012220A JP 1222090 A JP1222090 A JP 1222090A JP H03216744 A JPH03216744 A JP H03216744A
- Authority
- JP
- Japan
- Prior art keywords
- address
- cpu
- cache
- tag
- section
- 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
- 230000015654 memory Effects 0.000 title claims description 53
- 238000012544 monitoring process Methods 0.000 claims abstract description 13
- 238000012545 processing Methods 0.000 claims description 11
- 238000013519 translation Methods 0.000 claims description 9
- 238000000034 method Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 13
- 238000006243 chemical reaction Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 3
- 101100464782 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) CMP2 gene Proteins 0.000 description 2
- 101100485276 Arabidopsis thaliana XPO1 gene Proteins 0.000 description 1
- 241001670157 Gymnura Species 0.000 description 1
- 101100407739 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) PET18 gene Proteins 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
- G06F12/1054—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache the data cache being concurrently physically addressed
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
【発明の詳細な説明】
〔概要〕
主記憶内のデータをコピーしたキャッシュを内蔵するデ
ータ処理装置において,主記憶と内蔵キャンシュとの一
貫性を保つ内蔵キャッシュ・メモリ制御方式に関し, キャッシュのセットアドレスに論理アドレスのオフセッ
ト部以外を使う場合にも.主記憶と内蔵キャンシェとの
一貫性を保つことができるようにすることを目的とし. Nウエイセットアソティアティブ構成をとり,セットア
ドレスとして論理アドレスのオフセット部Aビットおよ
びオフセット部以外のBビットを使用するキャッシュ・
メモリ部とタグ部とをCPU内に備えるとともに,アド
レスモニタ用のタグ部であって,セットアドレスとして
オフセット部Aビットのみを使用し,2” XNウェイ
セットアソティアティブ構成をとるタグ部を有するアド
レスモニタ部を備え,cpu内部のタグ部とアドレスモ
ニタ部のタグ部を相互に対応させる制御を行うように構
成する. 〔産業上の利用分野〕 本発明は,主記憶内のデータをコピーしたキャッシュを
内蔵するデータ処理装置において,主記憶と内蔵キャッ
シュとの一貫性を保つ内蔵キャッシュ・メモリ制御方式
に関する. 近年のデータ処理装置の高速化の要求に従い.主記憶装
置へのデータアクセスの高速化が要求されてきている.
このため,データ処理装置内に主記憶をコピーするキャ
ッシュ・メモリが提供されており.またキャッシュ・サ
イズの拡大化が行われている. また.装置の性能を上げるために,マイクロプロセッサ
(MPU)1個ではなく.複数個使用するマルチプロセ
ッサ構成や,メモリ間の転送速度を上げるために,DM
Aコントローラを使用するシステムが増えてきている. このような構成をとるシステムで,MPU/CPUにキ
ャッシュ・メモリを内蔵しているものを使用している場
合,他のプロセッサが書き込みをして内容が変わってし
まった主記憶のデータを内蔵キャッシュ・メモリに持っ
ていても意味がないため.内蔵キャッシュ・メモリと主
記憶との一貫性を保つ機能は不可欠である. 〔従来の技術〕 内蔵キャッシュ・メモリと主記憶の一貫性を保つために
.従来からアドレスモニタと呼ばれる機能がある.これ
は,主記憶がつながっているシステム・バスを監視する
機構で,他のバス・マスクが主記憶に対して書き込み信
号を出したならば,システム・バス上のアドレスを読み
.このアドレスと内蔵キャッシュ・メモリのタグ部の内
容の比較を行い,もし一致したなら,内蔵キャッシュ・
メモリの対応するデータを無効化することにより,主記
憶と内蔵キャッシュ・メモリとの一貫性を保つというも
のである. ところで,通常のプログラムは,論理アドレスで書かれ
ているために.実際のハードウェア上で動作するように
.物理アドレスに変換する必要がある.この操作をアド
レス変換を行うという.この変換を受ける論理アドレス
のオフセット部は,物理アドレスになっても変更される
ことはないが,オフセット部以外の部分については,ア
ドレス変換テーブルにより,必ずしも同じものにはなら
ない。
ータ処理装置において,主記憶と内蔵キャンシュとの一
貫性を保つ内蔵キャッシュ・メモリ制御方式に関し, キャッシュのセットアドレスに論理アドレスのオフセッ
ト部以外を使う場合にも.主記憶と内蔵キャンシェとの
一貫性を保つことができるようにすることを目的とし. Nウエイセットアソティアティブ構成をとり,セットア
ドレスとして論理アドレスのオフセット部Aビットおよ
びオフセット部以外のBビットを使用するキャッシュ・
メモリ部とタグ部とをCPU内に備えるとともに,アド
レスモニタ用のタグ部であって,セットアドレスとして
オフセット部Aビットのみを使用し,2” XNウェイ
セットアソティアティブ構成をとるタグ部を有するアド
レスモニタ部を備え,cpu内部のタグ部とアドレスモ
ニタ部のタグ部を相互に対応させる制御を行うように構
成する. 〔産業上の利用分野〕 本発明は,主記憶内のデータをコピーしたキャッシュを
内蔵するデータ処理装置において,主記憶と内蔵キャッ
シュとの一貫性を保つ内蔵キャッシュ・メモリ制御方式
に関する. 近年のデータ処理装置の高速化の要求に従い.主記憶装
置へのデータアクセスの高速化が要求されてきている.
このため,データ処理装置内に主記憶をコピーするキャ
ッシュ・メモリが提供されており.またキャッシュ・サ
イズの拡大化が行われている. また.装置の性能を上げるために,マイクロプロセッサ
(MPU)1個ではなく.複数個使用するマルチプロセ
ッサ構成や,メモリ間の転送速度を上げるために,DM
Aコントローラを使用するシステムが増えてきている. このような構成をとるシステムで,MPU/CPUにキ
ャッシュ・メモリを内蔵しているものを使用している場
合,他のプロセッサが書き込みをして内容が変わってし
まった主記憶のデータを内蔵キャッシュ・メモリに持っ
ていても意味がないため.内蔵キャッシュ・メモリと主
記憶との一貫性を保つ機能は不可欠である. 〔従来の技術〕 内蔵キャッシュ・メモリと主記憶の一貫性を保つために
.従来からアドレスモニタと呼ばれる機能がある.これ
は,主記憶がつながっているシステム・バスを監視する
機構で,他のバス・マスクが主記憶に対して書き込み信
号を出したならば,システム・バス上のアドレスを読み
.このアドレスと内蔵キャッシュ・メモリのタグ部の内
容の比較を行い,もし一致したなら,内蔵キャッシュ・
メモリの対応するデータを無効化することにより,主記
憶と内蔵キャッシュ・メモリとの一貫性を保つというも
のである. ところで,通常のプログラムは,論理アドレスで書かれ
ているために.実際のハードウェア上で動作するように
.物理アドレスに変換する必要がある.この操作をアド
レス変換を行うという.この変換を受ける論理アドレス
のオフセット部は,物理アドレスになっても変更される
ことはないが,オフセット部以外の部分については,ア
ドレス変換テーブルにより,必ずしも同じものにはなら
ない。
従来のデータ処理装置においては,内蔵キャッシュ・サ
イズが小さかったため.論理アドレスのオフセット部の
みをセットアドレスとして,Nウエイセットアソテイア
テイブのキャッシュを構成できた.この場合,オフセッ
ト部は.アドレス変換を行っても.論理アドレスと物理
アドレスとで異なることはないため,アドレスモニタを
行う際に,システム・バスに出力される物理アドレスを
直接使って,アドレスを比較すべきキャッシュのセット
を決めていた。
イズが小さかったため.論理アドレスのオフセット部の
みをセットアドレスとして,Nウエイセットアソテイア
テイブのキャッシュを構成できた.この場合,オフセッ
ト部は.アドレス変換を行っても.論理アドレスと物理
アドレスとで異なることはないため,アドレスモニタを
行う際に,システム・バスに出力される物理アドレスを
直接使って,アドレスを比較すべきキャッシュのセット
を決めていた。
ところが.キャッシュ・メモリのサイズ拡大化の要求に
より,キャッシュ・サイズを大きくしていった場合に,
セットアドレスとしてオフセット部では足りなくなり,
アドレスにより論理アドレスと物理アドレスとが異なる
可能性のある部分を使うことになる。
より,キャッシュ・サイズを大きくしていった場合に,
セットアドレスとしてオフセット部では足りなくなり,
アドレスにより論理アドレスと物理アドレスとが異なる
可能性のある部分を使うことになる。
こうなると.システム・バスの物理アドレスをキャッシ
ュのセットアドレスとして使用した場合.論理アドレス
と物理アドレスとが同一なら問題ないが,論理アドレス
と物理アドレスとが異なるときに.従来のような制御で
は.異なるキャッシュ・メモリを無効化してしまい.無
効化すべきところが有効のまま残ってしまうという問題
が生じる.以下,第7図に示すキャッシュの状態説明図
に従って説明する.以下の説明において,LAは論理ア
ドレス,PAは物理アドレスを表す.また.LA (a
: b)は.論理アドレスの第aビットから第bビッ
トまでのビット列を表す。PA (a :b)も同様で
ある.この例では.論理アドレス,物理アドレスともに
32ビットであり.最上位ビットが第31ビット,最下
位ビットが第0ビットである。
ュのセットアドレスとして使用した場合.論理アドレス
と物理アドレスとが同一なら問題ないが,論理アドレス
と物理アドレスとが異なるときに.従来のような制御で
は.異なるキャッシュ・メモリを無効化してしまい.無
効化すべきところが有効のまま残ってしまうという問題
が生じる.以下,第7図に示すキャッシュの状態説明図
に従って説明する.以下の説明において,LAは論理ア
ドレス,PAは物理アドレスを表す.また.LA (a
: b)は.論理アドレスの第aビットから第bビッ
トまでのビット列を表す。PA (a :b)も同様で
ある.この例では.論理アドレス,物理アドレスともに
32ビットであり.最上位ビットが第31ビット,最下
位ビットが第0ビットである。
今.第7図(a)に示すようなアドレス変換テーブルが
あり,アドレスとデータとの対応が.第7図(b)に示
すようになっていたとする.また.キャッシュには,第
7図(C)に示すように,データが登録されていたとす
る. システム・バスにアドレスモニタすべきアドレスとして
, PA (3 1 : 0) =I{’00003
000が載ってきたとき, PA (1 4 : 4
) =H’300をセットアドレスとすると,PA(3
1:0)−H’ 00002000を無効化してしまい
,本来無効化すベきP A ( 3 1 : 0 )
= H’OO003000は残ってしまうことになる. このように.キャッシェのセットアドレスとして,論理
アドレスのオフセット部以外を使用した場合には.物理
アドレスでアドレス比較すべきセットを決めることがで
きなくなる. したがって,セットアソティアティプ構成のキャッシュ
のセットアドレスに.論理アドレスのオフセット部以外
を使う場合には,従来の方式では.主記憶と内蔵キャッ
シュとの一貫性を保てなくなっていた. 本発明は上記問題点の解決を図り,キャッシェのセット
アドレスに論理アドレスのオフセット部以外を使う場合
にも,主記憶と内蔵キャッシュとの一貫性を保つことが
できるようにすることを目的としている. 〔課題を解決するための手段〕 第1図は本発明の構成例を示す. 第1図(イ)において,10はCPUであり.ここで演
算やメモリ管理等を行う.11はCPU10の内蔵する
キャッシュ・メモリ部.12はキャッシュ・メモリ部1
lに対するタグ部を表す.13は内蔵キャッシュのため
のアドレスモニタ部.14はCPUIOのタグ部12に
対応するアドレスモニタ用タグ部を表す.15はCPU
IOが処理するプログラムやデータが入っている主記憶
装L16はシステム・バスの負荷を軽減するための外部
キャッシェであって,cputoの内蔵キャッシュより
容量の大きいもの.17はデータパス.18はアドレス
バスを表す.また,19はCPUI Oとアドレスモニ
タ部13との間のモニタバス,20は外部アドレスバス
,21は外部データパスを表す。
あり,アドレスとデータとの対応が.第7図(b)に示
すようになっていたとする.また.キャッシュには,第
7図(C)に示すように,データが登録されていたとす
る. システム・バスにアドレスモニタすべきアドレスとして
, PA (3 1 : 0) =I{’00003
000が載ってきたとき, PA (1 4 : 4
) =H’300をセットアドレスとすると,PA(3
1:0)−H’ 00002000を無効化してしまい
,本来無効化すベきP A ( 3 1 : 0 )
= H’OO003000は残ってしまうことになる. このように.キャッシェのセットアドレスとして,論理
アドレスのオフセット部以外を使用した場合には.物理
アドレスでアドレス比較すべきセットを決めることがで
きなくなる. したがって,セットアソティアティプ構成のキャッシュ
のセットアドレスに.論理アドレスのオフセット部以外
を使う場合には,従来の方式では.主記憶と内蔵キャッ
シュとの一貫性を保てなくなっていた. 本発明は上記問題点の解決を図り,キャッシェのセット
アドレスに論理アドレスのオフセット部以外を使う場合
にも,主記憶と内蔵キャッシュとの一貫性を保つことが
できるようにすることを目的としている. 〔課題を解決するための手段〕 第1図は本発明の構成例を示す. 第1図(イ)において,10はCPUであり.ここで演
算やメモリ管理等を行う.11はCPU10の内蔵する
キャッシュ・メモリ部.12はキャッシュ・メモリ部1
lに対するタグ部を表す.13は内蔵キャッシュのため
のアドレスモニタ部.14はCPUIOのタグ部12に
対応するアドレスモニタ用タグ部を表す.15はCPU
IOが処理するプログラムやデータが入っている主記憶
装L16はシステム・バスの負荷を軽減するための外部
キャッシェであって,cputoの内蔵キャッシュより
容量の大きいもの.17はデータパス.18はアドレス
バスを表す.また,19はCPUI Oとアドレスモニ
タ部13との間のモニタバス,20は外部アドレスバス
,21は外部データパスを表す。
本システムは.複数のデータ処理装置と,主記憶装置1
5と,これらを結合する外部アドレスバス20,外部デ
ータパス21等のシステム・バスからなる. データ処理装置の少なくとも1つは,CPUIO.アド
レスモニタ部13.外部キャッシュ16からなり.デー
タバスl7により,CPUIOと外部キャッシュ16と
が結合され.アドレスバスl8により,CPUIOと外
部キャッシュ16とアドレスモニタ部13とが結合され
ている.また.外部アドレスバス20により.主記憶装
置15とアドレスモニタ部13と外部キャッシュ16と
が結合され,外部データバス21により.主記憶装置l
5と外部キャッシュ16とが結合されている.この例で
は,CPUIOとアドレスモニタ部13とが.別チップ
で構成されている. CPUIOにおける論理アドレスLAから物理アドレス
PAへのアドレス変換では.第1図(口)に示すオフセ
ット部を除いた部分が変換の対象となる. CPUIOにおけるキャッシュ・メモリ部11およびタ
グ部l2は,第1図(口)に示す論理アドレスのオフセ
ット部Aビットと,オフセット部以外のBビットを使用
し, (A+B)ビットのセットアドレスで,キャッ
シュを引くようなNウェイセットアソティアティブ構成
となっている.タグ部l2は.キャッシュ・メモリ部1
1に保持されるデータの主記憶装置15におけるアドレ
ス等を更新管理するアドレス情報記録部と,キャッシュ
・メモリ部11のデータが有効であることを示す記録部
を有する. アドレスモニタ部13は,CPUIOとは別チップとな
っており,CPUIOのキャッシュ・メモリ部11と.
主記憶装置l5の内容の一貫性を保つために使用される
.アドレスモニタ部13内部に,セットアドレスとして
CPUIO内で使用したセットアドレスのオフセット部
分(Aビット)のみを使用し,2” XNウェイセット
アソティアティプ構成をとるアドレスモニタ用タグ部l
4を有している。
5と,これらを結合する外部アドレスバス20,外部デ
ータパス21等のシステム・バスからなる. データ処理装置の少なくとも1つは,CPUIO.アド
レスモニタ部13.外部キャッシュ16からなり.デー
タバスl7により,CPUIOと外部キャッシュ16と
が結合され.アドレスバスl8により,CPUIOと外
部キャッシュ16とアドレスモニタ部13とが結合され
ている.また.外部アドレスバス20により.主記憶装
置15とアドレスモニタ部13と外部キャッシュ16と
が結合され,外部データバス21により.主記憶装置l
5と外部キャッシュ16とが結合されている.この例で
は,CPUIOとアドレスモニタ部13とが.別チップ
で構成されている. CPUIOにおける論理アドレスLAから物理アドレス
PAへのアドレス変換では.第1図(口)に示すオフセ
ット部を除いた部分が変換の対象となる. CPUIOにおけるキャッシュ・メモリ部11およびタ
グ部l2は,第1図(口)に示す論理アドレスのオフセ
ット部Aビットと,オフセット部以外のBビットを使用
し, (A+B)ビットのセットアドレスで,キャッ
シュを引くようなNウェイセットアソティアティブ構成
となっている.タグ部l2は.キャッシュ・メモリ部1
1に保持されるデータの主記憶装置15におけるアドレ
ス等を更新管理するアドレス情報記録部と,キャッシュ
・メモリ部11のデータが有効であることを示す記録部
を有する. アドレスモニタ部13は,CPUIOとは別チップとな
っており,CPUIOのキャッシュ・メモリ部11と.
主記憶装置l5の内容の一貫性を保つために使用される
.アドレスモニタ部13内部に,セットアドレスとして
CPUIO内で使用したセットアドレスのオフセット部
分(Aビット)のみを使用し,2” XNウェイセット
アソティアティプ構成をとるアドレスモニタ用タグ部l
4を有している。
このようなデータ処理装置において,CPUIO内部の
タグ部12と.アドレスモニタ部13のアドレスモニタ
用タグ部14とを相互に対応させ.アドレスモニタ機能
をアドレスモニタ部13のチップで行い,その結果をC
PUIOに送ることにより,cputo内の対応するタ
グの記録部を無効化することができるようにしている.
〔作用〕 本発明では.第1図(イ)に示すように,アドレスモニ
タを行うときには.外部アドレスバス20の物理アドレ
スとアドレスモニタ用タグ部14の21×NウェイのA
ビットのセットについてそれぞれ比較を行い,その各々
のウェイ(2” XN本)の比較結果を.タグ部l2の
セットアドレスのBビットとウェイ信号と無効化を行う
かを示す無効化イネーブル信号に変換して,CPUIO
側へ送る. CPUIO側では,モニタバス19で伝えられる外部ア
ドレスバス20の物理アドレスのオフセット部のAビッ
トと合わせて,CPUIOの内藏するタグ部12の該当
セットを決め,アドレスモニタ部13から出力されるウ
エイ信号に基づいて,該当部分のバリッドビットを無効
にすることにより,主記憶とCPUIOの内蔵キャッシ
ュとの一貫性を保つ。
タグ部12と.アドレスモニタ部13のアドレスモニタ
用タグ部14とを相互に対応させ.アドレスモニタ機能
をアドレスモニタ部13のチップで行い,その結果をC
PUIOに送ることにより,cputo内の対応するタ
グの記録部を無効化することができるようにしている.
〔作用〕 本発明では.第1図(イ)に示すように,アドレスモニ
タを行うときには.外部アドレスバス20の物理アドレ
スとアドレスモニタ用タグ部14の21×NウェイのA
ビットのセットについてそれぞれ比較を行い,その各々
のウェイ(2” XN本)の比較結果を.タグ部l2の
セットアドレスのBビットとウェイ信号と無効化を行う
かを示す無効化イネーブル信号に変換して,CPUIO
側へ送る. CPUIO側では,モニタバス19で伝えられる外部ア
ドレスバス20の物理アドレスのオフセット部のAビッ
トと合わせて,CPUIOの内藏するタグ部12の該当
セットを決め,アドレスモニタ部13から出力されるウ
エイ信号に基づいて,該当部分のバリッドビットを無効
にすることにより,主記憶とCPUIOの内蔵キャッシ
ュとの一貫性を保つ。
第2図は本発明の実施例におけるCPU内部とアドレス
モニタ部との対応関係説明図,第3図は本発明の実施例
によるキャッシュへのデータ登録の例,第4図は本発明
の実施例によるアドレスモニタの例,第5図は本発明の
実施例に係るTLBとキャッシュの関係を説明するため
のブロック図.第6図は第5図に示すブロック図におけ
るリード動作タイミング図を示す. 以下に説明する実施例では,次のような構成をとるもの
とする。もちろん.本発明の実施にあたって,これらの
条件については,システムの構成条件に応じて種々の変
更が可能である。
モニタ部との対応関係説明図,第3図は本発明の実施例
によるキャッシュへのデータ登録の例,第4図は本発明
の実施例によるアドレスモニタの例,第5図は本発明の
実施例に係るTLBとキャッシュの関係を説明するため
のブロック図.第6図は第5図に示すブロック図におけ
るリード動作タイミング図を示す. 以下に説明する実施例では,次のような構成をとるもの
とする。もちろん.本発明の実施にあたって,これらの
条件については,システムの構成条件に応じて種々の変
更が可能である。
■ 論理アドレスLAは32ビットで.そのオフセソト
部分はLA (1 1 : O)の12ビットである。
部分はLA (1 1 : O)の12ビットである。
■ CPUの内蔵キャンシュ・メモリのフ゜ロンクサイ
ズは16バイトである。
ズは16バイトである。
■ CPUの内蔵キャンシュの構成は,2ウエイセット
アソティアティブである. ■ CPUの内蔵キャッシュ・メモリのサイズは32K
バイトである. ■ アドレスモニタ部内のタグ部は.セットアドレスが
LA (1 1 : 4)の16ウェイセットアソティ
アティブ構成である. 上記■の条件から,CPU内藏キャッシュのセットアド
レスとして.■、A(14:4)を使用することになる
。
アソティアティブである. ■ CPUの内蔵キャッシュ・メモリのサイズは32K
バイトである. ■ アドレスモニタ部内のタグ部は.セットアドレスが
LA (1 1 : 4)の16ウェイセットアソティ
アティブ構成である. 上記■の条件から,CPU内藏キャッシュのセットアド
レスとして.■、A(14:4)を使用することになる
。
まず.キャッシュにデータを登録する場合について,第
1図および第3図を参照して説明する.プログラム中で
指定される論理アドレスについて,アドレス変換を行い
,物理アドレスに変換し,その物理アドレスをアドレス
バス18に出力し.外部キャッシュ16から登録すべき
16バイトのデータをデータバス17を通して入力する
。
1図および第3図を参照して説明する.プログラム中で
指定される論理アドレスについて,アドレス変換を行い
,物理アドレスに変換し,その物理アドレスをアドレス
バス18に出力し.外部キャッシュ16から登録すべき
16バイトのデータをデータバス17を通して入力する
。
このとき,CPUIOのタグ部12についてCPUウエ
イ選択回路30で示されるほうのウエイの論理アドレス
LA(14:4)に対応するセントに,登録データに対
する物理アドレスPA(31:12)を登録し.バリッ
ドビットを有効にする.このとき,本発明には直接関係
がないため,詳しい説明は省くが.キャッシュ・メモリ
部11についても,タグ部I2と同様のウェイとセット
の部分に,16バイトの登録データを登録する. 同時に,アドレスモニタ部13のアドレスモニタ用タグ
部14について,CPUウェイ番号十論理アドレスLA
(14:12)をうエイとみなし.論理アドレスをLA
(11:4)をセットアドレストスるところに,前記物
理アドレスPA (3l:12)を登録する.第3図に
示す51はCPUウェイ信号である。
イ選択回路30で示されるほうのウエイの論理アドレス
LA(14:4)に対応するセントに,登録データに対
する物理アドレスPA(31:12)を登録し.バリッ
ドビットを有効にする.このとき,本発明には直接関係
がないため,詳しい説明は省くが.キャッシュ・メモリ
部11についても,タグ部I2と同様のウェイとセット
の部分に,16バイトの登録データを登録する. 同時に,アドレスモニタ部13のアドレスモニタ用タグ
部14について,CPUウェイ番号十論理アドレスLA
(14:12)をうエイとみなし.論理アドレスをLA
(11:4)をセットアドレストスるところに,前記物
理アドレスPA (3l:12)を登録する.第3図に
示す51はCPUウェイ信号である。
第2図(イ)は,CPUIO内部からアドレスモニタ部
13に送られる信号と.アドレスモニタ用タグ部14の
ウェイとの対応を示しており,アドレスモニタ部ウェイ
選択回路3lは.この図に従ったウェイの選択制御を行
う. 例えば.第3図に示すように,論理アドレスが2000
番地で,アドレス変換により,物理アドレスが3000
番地になるようなケースを考える.このとき,CPUI
O内部のキャッシュのセットアドレスとして,200が
使用され,CPUウェイ選択回路30が例えばWAYO
を示していたとすると.タグ部12に00003が登録
され,かつそのバリッドビットが有効にされる。
13に送られる信号と.アドレスモニタ用タグ部14の
ウェイとの対応を示しており,アドレスモニタ部ウェイ
選択回路3lは.この図に従ったウェイの選択制御を行
う. 例えば.第3図に示すように,論理アドレスが2000
番地で,アドレス変換により,物理アドレスが3000
番地になるようなケースを考える.このとき,CPUI
O内部のキャッシュのセットアドレスとして,200が
使用され,CPUウェイ選択回路30が例えばWAYO
を示していたとすると.タグ部12に00003が登録
され,かつそのバリッドビットが有効にされる。
同時に.アドレスモニタ部ウェイ選択回路3lに,CP
Uウエイ選択回路30からのウエイ選択信号(WAY=
0)と論理アドレスLA(14:12)=B’010が
入力され,第2図(イ)に示す対応表により,アドレス
モニタ用タグ部14のウェイとして,WAY2が選ばれ
る.セントアドレスとして,論理アドレスLA (11
: 4),WAY2で指示されるところニ,OO00
3を登録し.同時にバリッドビノトを有効にする.この
ように,CPUIOとアドレスモニタ部13の対応する
タグ部12.14に.同じ物理アドレスを登録する. 次に,第4図に従って.アドレスモニタを行う場合につ
いて説明する。
Uウエイ選択回路30からのウエイ選択信号(WAY=
0)と論理アドレスLA(14:12)=B’010が
入力され,第2図(イ)に示す対応表により,アドレス
モニタ用タグ部14のウェイとして,WAY2が選ばれ
る.セントアドレスとして,論理アドレスLA (11
: 4),WAY2で指示されるところニ,OO00
3を登録し.同時にバリッドビノトを有効にする.この
ように,CPUIOとアドレスモニタ部13の対応する
タグ部12.14に.同じ物理アドレスを登録する. 次に,第4図に従って.アドレスモニタを行う場合につ
いて説明する。
まず.外部アドレスバス20から.モニタすべき外部ア
ドレスEAを,アドレスモニタ部13の外部アドレスバ
ッファ40に入力ラッチし.外部アドレスEAの(1
1 : 4)を使って.モニタすべきセットを決め.ア
ドレスモニタ用タグ部l4に登録されているWAYO〜
WAY15までの各ウェイについて.外部アドレスEA
の(3l:12)と,アドレス比較部4lにより各々比
較する.その結果.一致するものがあれば,そのウェイ
のHIT信号から,信号の変換と無効化制御を行う回路
42により.第2図(口)に示すような対応関係に従っ
て.無効化のCPUウェイとアドレスモニタ用論理アド
レスLA (14 712)に変換したものを.CPU
IOへ送る.また.キ+,シュの無効化を行う必要があ
るか否かの無効化イネーブル信号53(ヒント信号の論
理和をとったもの)をCPUIOに出力する. CPUIOでは,アドレスモニタ部13から出力される
外部アドレスEA(11:4),すなわちアドレスモニ
タ用論理アドレスLA (1 1 :4)と合わせてセ
ットアドレスとして,タグ部12をアクセスする.今.
アドレスモニタ用タグ部14は,バリッドピットを有し
ているため,アドレスモニタ部13で一致したものは.
必ずCPUIOでも一致することになる.そこで,cp
utOのタグ部12でアクセスされたところのバリッド
ビットを無効にする. 同時にアドレスモニタ部13の対応する部分,すなわち
外部アドレスEAとの比較を行い一致したところのバリ
ッドピットも無効にする.なお.第1図に示す外部キャ
ッシュ16については,自分自身でアドレスモニタを行
っているものとする.今.外部アドレスバス20に3(
100番地がのっていて,かつアドレスモニタをする必
要がある場合について考える。まず,外部アドレスバッ
ファ40に外部アドレスEA(31:4)を入力ラッチ
する.この外部アドレスEAの(1 1 : 4)から
.アドレスモニタ用タグ部14のセントアドレスはOO
となり,このセット番号で指示されるWAYO−WAY
1 5について,外部アドレスEA(31:12)−0
0003と比較すると.HIT2がアサートされる. 他のHIT線がアサートされることはないので,第2図
(口)に示す対応表により,CPUIOのタグ部12に
対するウェイを示す無効化ウエイ54はWAYO,セッ
トアドレス用のアドレスモニタ用論理アドレスLA (
1 4 : 1 2) =B’010と決まり.無効化
イネーブル信号53もアサートされる。同時に外部アド
レスEA(11:4)もCPUIOに伝えられる.また
同時に.アドレスモニタ用タグ部14におけるヒットし
たセットアドレスーOO,ウェイ=2のところのバリッ
ドビットは無効化される. CPUIOでは.アドレスモニタ部13から送られたア
ドレスをタグ部12のセットアドレスとし.無効化ウエ
イ54を人力として.CPUウエイ選択回路30により
.無効化すべきWAYOを選択し.バリッドピット制御
回路43により.以上のセットアドレスとウェイで選択
されるところのバリノドビットを無効にする。
ドレスEAを,アドレスモニタ部13の外部アドレスバ
ッファ40に入力ラッチし.外部アドレスEAの(1
1 : 4)を使って.モニタすべきセットを決め.ア
ドレスモニタ用タグ部l4に登録されているWAYO〜
WAY15までの各ウェイについて.外部アドレスEA
の(3l:12)と,アドレス比較部4lにより各々比
較する.その結果.一致するものがあれば,そのウェイ
のHIT信号から,信号の変換と無効化制御を行う回路
42により.第2図(口)に示すような対応関係に従っ
て.無効化のCPUウェイとアドレスモニタ用論理アド
レスLA (14 712)に変換したものを.CPU
IOへ送る.また.キ+,シュの無効化を行う必要があ
るか否かの無効化イネーブル信号53(ヒント信号の論
理和をとったもの)をCPUIOに出力する. CPUIOでは,アドレスモニタ部13から出力される
外部アドレスEA(11:4),すなわちアドレスモニ
タ用論理アドレスLA (1 1 :4)と合わせてセ
ットアドレスとして,タグ部12をアクセスする.今.
アドレスモニタ用タグ部14は,バリッドピットを有し
ているため,アドレスモニタ部13で一致したものは.
必ずCPUIOでも一致することになる.そこで,cp
utOのタグ部12でアクセスされたところのバリッド
ビットを無効にする. 同時にアドレスモニタ部13の対応する部分,すなわち
外部アドレスEAとの比較を行い一致したところのバリ
ッドピットも無効にする.なお.第1図に示す外部キャ
ッシュ16については,自分自身でアドレスモニタを行
っているものとする.今.外部アドレスバス20に3(
100番地がのっていて,かつアドレスモニタをする必
要がある場合について考える。まず,外部アドレスバッ
ファ40に外部アドレスEA(31:4)を入力ラッチ
する.この外部アドレスEAの(1 1 : 4)から
.アドレスモニタ用タグ部14のセントアドレスはOO
となり,このセット番号で指示されるWAYO−WAY
1 5について,外部アドレスEA(31:12)−0
0003と比較すると.HIT2がアサートされる. 他のHIT線がアサートされることはないので,第2図
(口)に示す対応表により,CPUIOのタグ部12に
対するウェイを示す無効化ウエイ54はWAYO,セッ
トアドレス用のアドレスモニタ用論理アドレスLA (
1 4 : 1 2) =B’010と決まり.無効化
イネーブル信号53もアサートされる。同時に外部アド
レスEA(11:4)もCPUIOに伝えられる.また
同時に.アドレスモニタ用タグ部14におけるヒットし
たセットアドレスーOO,ウェイ=2のところのバリッ
ドビットは無効化される. CPUIOでは.アドレスモニタ部13から送られたア
ドレスをタグ部12のセットアドレスとし.無効化ウエ
イ54を人力として.CPUウエイ選択回路30により
.無効化すべきWAYOを選択し.バリッドピット制御
回路43により.以上のセットアドレスとウェイで選択
されるところのバリノドビットを無効にする。
もし.外部アドレスEAとアドレスモニタ用タグ部14
のアドレスが一致しなかった場合には.無効化イネーブ
ル信号53をネゲート状態にしたままにすることにより
,CPUIOは無効化処理を行わず.通常の処理を行う
. 上述の例では,モニタバス19として,CPUIOから
アドレスモニタ部13へのバスとしての論理アドレスL
A(14:4)と,CPUウェイ信号51,アドレスモ
ニタ部l3からCPUI Oへのバスとしてアドレスモ
ニタ用論理アドレスLA (14 : 12)52と無
効化イネーブル信号53と無効化ウェイ54と外部アド
レスEA(11:4)55を使用したが,アドレスモニ
タ部13のチップの比較信号を直接CPUIOに出力し
て,CPUIO側で論理アドレスに変換することも可能
である.また.アドレスモニタ部l3にアドレスを登録
する際に.アドレスバス18を使用したが.これの代わ
りに,モニタバスl9の本数を増やして.モニタバス1
9を使用することも可能である. 次に.本実施例におけるT L B (Transla
tionLookaside Buffer)とキー?
”/シェの関係について.第5図に示すブロック図を
参照して説明する.なお,第6図は,第5図に示すブロ
ック図におけるリード動作のタイミングを示している.
ここでは,TLB,キャッシュともに.2ウェイセット
アソティアティプ方式とする。
のアドレスが一致しなかった場合には.無効化イネーブ
ル信号53をネゲート状態にしたままにすることにより
,CPUIOは無効化処理を行わず.通常の処理を行う
. 上述の例では,モニタバス19として,CPUIOから
アドレスモニタ部13へのバスとしての論理アドレスL
A(14:4)と,CPUウェイ信号51,アドレスモ
ニタ部l3からCPUI Oへのバスとしてアドレスモ
ニタ用論理アドレスLA (14 : 12)52と無
効化イネーブル信号53と無効化ウェイ54と外部アド
レスEA(11:4)55を使用したが,アドレスモニ
タ部13のチップの比較信号を直接CPUIOに出力し
て,CPUIO側で論理アドレスに変換することも可能
である.また.アドレスモニタ部l3にアドレスを登録
する際に.アドレスバス18を使用したが.これの代わ
りに,モニタバスl9の本数を増やして.モニタバス1
9を使用することも可能である. 次に.本実施例におけるT L B (Transla
tionLookaside Buffer)とキー?
”/シェの関係について.第5図に示すブロック図を
参照して説明する.なお,第6図は,第5図に示すブロ
ック図におけるリード動作のタイミングを示している.
ここでは,TLB,キャッシュともに.2ウェイセット
アソティアティプ方式とする。
キャッシュにデータを登録するには,まずキャッシュミ
スする必要がある。本実施例では.第5図に示すような
構成をとることにより,TLBとタグ部12とを,1マ
シンサイクル中に引くようにしている。
スする必要がある。本実施例では.第5図に示すような
構成をとることにより,TLBとタグ部12とを,1マ
シンサイクル中に引くようにしている。
まず,論理アドレスLA(16:12)で.TLBの論
理アドレス部60と物理アドレス部61とを引<,TL
Bの論理アドレス部60には.物理アドレスに変換可能
な対応する論理アドレスLAの(31:17)が登録さ
れている.IFI理アドレス部61には.変換される物
理アドレスPA(31:12)が登録されている。
理アドレス部60と物理アドレス部61とを引<,TL
Bの論理アドレス部60には.物理アドレスに変換可能
な対応する論理アドレスLAの(31:17)が登録さ
れている.IFI理アドレス部61には.変換される物
理アドレスPA(31:12)が登録されている。
比較回路CMP 1により,実際の論理アドレスLA(
31:17)と,TLBの論理アドレス部60のWAY
OおよびWAY1から読み出した部分とを比較する.こ
れにより,TLBに物理アドレスが登録されているかを
みる, hito. hitlとも″0”ならば,TL
Bミスであり,動的アドレス変換(DAT)処理に移る
. また.比較回路CMP2により,TLBの物理アドレス
部61から読み出した物理アドレスPA(31:12)
のWAYO,WAYIと,タグ部12から読み出した物
理アドレスPA(31:12)のWAYO,WAYIに
ついて比較する.これらの比較回路CMPI,CMP2
の出力により.一致を示すヒット信号旧TOO〜HIT
IIを生成し,旧TOOまたは旧TIOならば,キャッ
シュ・メモリ部l1から読み出したWAYOのデータを
出力し, l{ITOIまたは旧Tllならば,キャッ
シュ・メモリ部11から読み出したWAYIのデータを
出力する. ところで,オペレーティング・システムによるプログラ
ムの動作のさせ方によって,複数の論理アドレスLAが
1つの物理アドレスPAを指す場合がある.この場合.
論理アドレスLA(14:12)が同じでないと.同じ
物理アドレスにマッピングすることができない. これに対する解決法として,例えば以下のような案が考
えられる. (1) アドレス変換テーブル作成時の制限とする.
(2)TLBミスしたときには,キャッシュに登録しな
い。
31:17)と,TLBの論理アドレス部60のWAY
OおよびWAY1から読み出した部分とを比較する.こ
れにより,TLBに物理アドレスが登録されているかを
みる, hito. hitlとも″0”ならば,TL
Bミスであり,動的アドレス変換(DAT)処理に移る
. また.比較回路CMP2により,TLBの物理アドレス
部61から読み出した物理アドレスPA(31:12)
のWAYO,WAYIと,タグ部12から読み出した物
理アドレスPA(31:12)のWAYO,WAYIに
ついて比較する.これらの比較回路CMPI,CMP2
の出力により.一致を示すヒット信号旧TOO〜HIT
IIを生成し,旧TOOまたは旧TIOならば,キャッ
シュ・メモリ部l1から読み出したWAYOのデータを
出力し, l{ITOIまたは旧Tllならば,キャッ
シュ・メモリ部11から読み出したWAYIのデータを
出力する. ところで,オペレーティング・システムによるプログラ
ムの動作のさせ方によって,複数の論理アドレスLAが
1つの物理アドレスPAを指す場合がある.この場合.
論理アドレスLA(14:12)が同じでないと.同じ
物理アドレスにマッピングすることができない. これに対する解決法として,例えば以下のような案が考
えられる. (1) アドレス変換テーブル作成時の制限とする.
(2)TLBミスしたときには,キャッシュに登録しな
い。
i)TLBにも登録しない.→この場合, DATの回
数が増大してしまい,キャッシュを大きくしたメリット
がなくなってしまう.ii)TLBには登録する.→T
LBミスしたなら.第5図に示すTLBの物理アドレス
部61の全エントリとTLBミスした論理アドレスに対
する物理アドレスとの比較を行う。
数が増大してしまい,キャッシュを大きくしたメリット
がなくなってしまう.ii)TLBには登録する.→T
LBミスしたなら.第5図に示すTLBの物理アドレス
部61の全エントリとTLBミスした論理アドレスに対
する物理アドレスとの比較を行う。
もし一致するものがなかったなら,TLB登録して次の
処理に移る(キャッシュ登録も可).もし一致するもの
があったなら,TLB登録する際にTLBミスしたエン
トリに対するTLBのNC(ノン・キャッシャブル)フ
ラグを有効にすることにより,キャッシュ登録しないよ
うにする. 以上の(2)の方式では,性能が落ちてしまい,キャッ
シュを大きくしたメリットがなくなる可能性があるので
,性能の点を考えると,(1)の論理アドレスLA(1
4:12)が同じでないと.同じ物理アドレスにマッピ
ングすることができないという.アドレス変換テーブル
作成に対する制限を設けることが実用的である.他の解
決案も考えられるが.本発明の要旨とは直接関係がない
ので.この程度の説明にとどめる. 〔発明の効果〕 以上説明したように.本発明によれば,CPUの内蔵キ
ャッシュがNウェイセットアソティアティブ構成であっ
て,セットアドレスに論理アドレスのオフセット部以外
が入ったときでも.アドレスモニタを行うことが可能に
なるため.主記憶と内蔵キャッシュとの一貫性を保つこ
とができる.したがって.内蔵キャッシュのサイズを大
きくすることができ.データ処理装置の性能向上に寄与
するところが大きい.
処理に移る(キャッシュ登録も可).もし一致するもの
があったなら,TLB登録する際にTLBミスしたエン
トリに対するTLBのNC(ノン・キャッシャブル)フ
ラグを有効にすることにより,キャッシュ登録しないよ
うにする. 以上の(2)の方式では,性能が落ちてしまい,キャッ
シュを大きくしたメリットがなくなる可能性があるので
,性能の点を考えると,(1)の論理アドレスLA(1
4:12)が同じでないと.同じ物理アドレスにマッピ
ングすることができないという.アドレス変換テーブル
作成に対する制限を設けることが実用的である.他の解
決案も考えられるが.本発明の要旨とは直接関係がない
ので.この程度の説明にとどめる. 〔発明の効果〕 以上説明したように.本発明によれば,CPUの内蔵キ
ャッシュがNウェイセットアソティアティブ構成であっ
て,セットアドレスに論理アドレスのオフセット部以外
が入ったときでも.アドレスモニタを行うことが可能に
なるため.主記憶と内蔵キャッシュとの一貫性を保つこ
とができる.したがって.内蔵キャッシュのサイズを大
きくすることができ.データ処理装置の性能向上に寄与
するところが大きい.
第1図は本発明の構成例,
第2図は本発明の実施例におけるCPU内部とアドレス
モニタ部との対応関係説明図,第3図は本発明の実施例
によるキャッシュへのデータ登録の例. 第4図は本発明の実施例によるアドレスモニタの例. 第5図は本発明の実施例に係るTLBとキャッシェの関
係を説明するためのブロック図.第6図は第5図に示す
ブロック図におけるリード動作タイミング図. 第7図は本発明の課題を説明するためのキャッシュの状
態説明図を示す.
モニタ部との対応関係説明図,第3図は本発明の実施例
によるキャッシュへのデータ登録の例. 第4図は本発明の実施例によるアドレスモニタの例. 第5図は本発明の実施例に係るTLBとキャッシェの関
係を説明するためのブロック図.第6図は第5図に示す
ブロック図におけるリード動作タイミング図. 第7図は本発明の課題を説明するためのキャッシュの状
態説明図を示す.
Claims (1)
- 【特許請求の範囲】 主記憶装置(15)と、各々CPU(10)を備えた複
数のデータ処理装置と、それらを結合するシステムバス
とを有する計算機システムにおける内蔵キャッシュ・メ
モリ制御方式において、 Nウェイセットアソティアティブ構成をとり、セットア
ドレスとして論理アドレスのアドレス変換を受けないオ
フセット部Aビットおよびアドレス変換を受けるオフセ
ット部以外のBビットを使用するキャッシュ・メモリ部
(11)とタグ部(12)とをCPU内に備えるととも
に、 前記CPUのタグ部に対応するアドレスモニタ用のタグ
部であって、セットアドレスとしてCPU内で使用した
セットアドレスのオフセット部Aビットのみを使用し、
2^B×Nウェイセットアソティアティブ構成をとるタ
グ部(14)を有するアドレスモニタ部(13)を備え
、 CPU内部のタグ部とアドレスモニタ部のタグ部を相互
に対応させることにより、アドレスの監視を行い、その
結果をCPUに送ることにより、CPU内の対応するタ
グの記録部を無効化する制御を行うようにしたことを特
徴とする内蔵キャッシュ・メモリ制御方式。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012220A JPH03216744A (ja) | 1990-01-22 | 1990-01-22 | 内蔵キャッシュ・メモリ制御方式 |
DE69131212T DE69131212T2 (de) | 1990-01-22 | 1991-01-22 | Cache-Kohärenz in logischen Caches |
CA002034709A CA2034709C (en) | 1990-01-22 | 1991-01-22 | System for controlling an internally-installed cache memory |
EP91300469A EP0439325B1 (en) | 1990-01-22 | 1991-01-22 | Cache coherence in logical caches |
US08/406,785 US5517633A (en) | 1990-01-22 | 1995-03-20 | System for controlling an internally-installed cache memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012220A JPH03216744A (ja) | 1990-01-22 | 1990-01-22 | 内蔵キャッシュ・メモリ制御方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03216744A true JPH03216744A (ja) | 1991-09-24 |
Family
ID=11799299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012220A Pending JPH03216744A (ja) | 1990-01-22 | 1990-01-22 | 内蔵キャッシュ・メモリ制御方式 |
Country Status (5)
Country | Link |
---|---|
US (1) | US5517633A (ja) |
EP (1) | EP0439325B1 (ja) |
JP (1) | JPH03216744A (ja) |
CA (1) | CA2034709C (ja) |
DE (1) | DE69131212T2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000259498A (ja) * | 1999-03-10 | 2000-09-22 | Internatl Business Mach Corp <Ibm> | マルチスレッド・プロセッサの命令キャッシュ |
JP2010282520A (ja) * | 2009-06-08 | 2010-12-16 | Nec Corp | コヒーレンシ制御システム、コヒーレンシ制御装置及びコヒーレンシ制御方法 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5748627A (en) * | 1994-06-10 | 1998-05-05 | Harris Corporation | Integrated network switch with flexible serial data packet transfer system |
US5809548A (en) * | 1996-08-30 | 1998-09-15 | International Business Machines Corporation | System and method for zeroing pages with cache line invalidate instructions in an LRU system having data cache with time tags |
US5809528A (en) * | 1996-12-24 | 1998-09-15 | International Business Machines Corporation | Method and circuit for a least recently used replacement mechanism and invalidated address handling in a fully associative many-way cache memory |
US6434671B2 (en) * | 1997-09-30 | 2002-08-13 | Intel Corporation | Software-controlled cache memory compartmentalization |
US6226731B1 (en) * | 1998-09-08 | 2001-05-01 | International Business Machines Corporation | Method and system for accessing a cache memory within a data-processing system utilizing a pre-calculated comparison array |
DE10158393A1 (de) | 2001-11-28 | 2003-06-12 | Infineon Technologies Ag | Speicher für die Zentraleinheit einer Rechenanlage, Rechenanlage und Verfahren zum Synchronisieren eines Speichers mit dem Hauptspeicher einer Rechenanlage |
US6654865B2 (en) * | 2002-01-31 | 2003-11-25 | Ubicom, Inc. | Netbufs: communication protocol packet buffering using paged memory management |
WO2007149026A1 (en) * | 2006-06-22 | 2007-12-27 | Nordnav Technologies Ab | Software-based spread spectrum signal processing |
US20110055482A1 (en) * | 2009-08-28 | 2011-03-03 | Broadcom Corporation | Shared cache reservation |
CN111290972B (zh) * | 2020-03-11 | 2022-07-15 | 深圳忆联信息系统有限公司 | 数据搬运效率的提升方法、装置和计算机设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01199250A (ja) * | 1987-10-02 | 1989-08-10 | Hitachi Ltd | データ処理装置 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4332010A (en) * | 1980-03-17 | 1982-05-25 | International Business Machines Corporation | Cache synonym detection and handling mechanism |
JPS5948879A (ja) * | 1982-09-10 | 1984-03-21 | Hitachi Ltd | 記憶制御方式 |
JPS6093563A (ja) * | 1983-10-27 | 1985-05-25 | Hitachi Ltd | バツフア記憶制御方式 |
US4985829A (en) * | 1984-07-31 | 1991-01-15 | Texas Instruments Incorporated | Cache hierarchy design for use in a memory management unit |
US4991081A (en) * | 1984-10-31 | 1991-02-05 | Texas Instruments Incorporated | Cache memory addressable by both physical and virtual addresses |
US4797814A (en) * | 1986-05-01 | 1989-01-10 | International Business Machines Corporation | Variable address mode cache |
JPH0661066B2 (ja) * | 1986-10-20 | 1994-08-10 | 株式会社日立製作所 | 記憶制御装置 |
US4926317A (en) * | 1987-07-24 | 1990-05-15 | Convex Computer Corporation | Hierarchical memory system with logical cache, physical cache, and address translation unit for generating a sequence of physical addresses |
KR920001282B1 (ko) * | 1987-10-02 | 1992-02-10 | 가부시키가이샤 히타치세이사쿠쇼 | 버퍼메모리 제어장치 |
US5119290A (en) * | 1987-10-02 | 1992-06-02 | Sun Microsystems, Inc. | Alias address support |
US5003459A (en) * | 1988-04-01 | 1991-03-26 | Digital Equipment Corporation | Cache memory system |
US5029070A (en) * | 1988-08-25 | 1991-07-02 | Edge Computer Corporation | Coherent cache structures and methods |
US5155824A (en) * | 1989-05-15 | 1992-10-13 | Motorola, Inc. | System for transferring selected data words between main memory and cache with multiple data words and multiple dirty bits for each address |
US5226133A (en) * | 1989-12-01 | 1993-07-06 | Silicon Graphics, Inc. | Two-level translation look-aside buffer using partial addresses for enhanced speed |
US5210845A (en) * | 1990-11-28 | 1993-05-11 | Intel Corporation | Controller for two-way set associative cache |
-
1990
- 1990-01-22 JP JP2012220A patent/JPH03216744A/ja active Pending
-
1991
- 1991-01-22 EP EP91300469A patent/EP0439325B1/en not_active Expired - Lifetime
- 1991-01-22 CA CA002034709A patent/CA2034709C/en not_active Expired - Fee Related
- 1991-01-22 DE DE69131212T patent/DE69131212T2/de not_active Expired - Fee Related
-
1995
- 1995-03-20 US US08/406,785 patent/US5517633A/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01199250A (ja) * | 1987-10-02 | 1989-08-10 | Hitachi Ltd | データ処理装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000259498A (ja) * | 1999-03-10 | 2000-09-22 | Internatl Business Mach Corp <Ibm> | マルチスレッド・プロセッサの命令キャッシュ |
JP2010282520A (ja) * | 2009-06-08 | 2010-12-16 | Nec Corp | コヒーレンシ制御システム、コヒーレンシ制御装置及びコヒーレンシ制御方法 |
US8578103B2 (en) | 2009-06-08 | 2013-11-05 | Nec Corporation | Coherency control system, coherency control apparatus and coherency control method |
Also Published As
Publication number | Publication date |
---|---|
US5517633A (en) | 1996-05-14 |
EP0439325A2 (en) | 1991-07-31 |
CA2034709C (en) | 1998-07-28 |
EP0439325A3 (en) | 1992-07-08 |
DE69131212D1 (de) | 1999-06-17 |
DE69131212T2 (de) | 1999-09-23 |
CA2034709A1 (en) | 1991-07-23 |
EP0439325B1 (en) | 1999-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5067078A (en) | Cache which provides status information | |
US5513335A (en) | Cache tag memory having first and second single-port arrays and a dual-port array | |
JPH03142644A (ja) | キャッシュメモリ制御方法とこのキャッシュメモリ制御方法を用いたプロセッサおよび情報処理装置 | |
EP0408058B1 (en) | Microprocessor | |
US5146603A (en) | Copy-back cache system having a plurality of context tags and setting all the context tags to a predetermined value for flushing operation thereof | |
US6343344B1 (en) | System bus directory snooping mechanism for read/castout (RCO) address transaction | |
JP3609656B2 (ja) | コンピュータシステム | |
US6535958B1 (en) | Multilevel cache system coherence with memory selectively configured as cache or direct access memory and direct memory access | |
JPH03216744A (ja) | 内蔵キャッシュ・メモリ制御方式 | |
AU612515B2 (en) | Data processing apparatus | |
US20070130426A1 (en) | Cache system and shared secondary cache with flags to indicate masters | |
EP0470739B1 (en) | Method for managing a cache memory system | |
US5905997A (en) | Set-associative cache memory utilizing a single bank of physical memory | |
JP2930071B2 (ja) | 情報処理装置およびプロセッサ | |
US7464227B2 (en) | Method and apparatus for supporting opportunistic sharing in coherent multiprocessors | |
US6484237B1 (en) | Unified multilevel memory system architecture which supports both cache and addressable SRAM | |
EP0439952A2 (en) | Dual-port cache tag memory | |
US9842051B1 (en) | Managing aliasing in a virtually indexed physically tagged cache | |
JPH03172947A (ja) | マイクロコンピュータ・システム | |
GB2307319A (en) | Dual-directory virtual cache | |
JPH02188847A (ja) | 階層キャッシュメモリにおけるデータ交換方式 | |
JPH02213960A (ja) | キャッシュメモリ | |
JP2976980B2 (ja) | キャッシュ制御方式 | |
JPH0481948A (ja) | データ処理システム | |
JP2542284B2 (ja) | 緩衝記憶装置および緩衝記憶装置システム |