JPH05342107A - キャッシュメモリ制御装置 - Google Patents
キャッシュメモリ制御装置Info
- Publication number
- JPH05342107A JPH05342107A JP4151043A JP15104392A JPH05342107A JP H05342107 A JPH05342107 A JP H05342107A JP 4151043 A JP4151043 A JP 4151043A JP 15104392 A JP15104392 A JP 15104392A JP H05342107 A JPH05342107 A JP H05342107A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- block
- buffer
- address
- backup
- 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.)
- Withdrawn
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【目的】 キャッシュメモリ制御装置に関し,スワップ
アウトにおいても,中央処理装置による主記憶へのアク
セスを可能とすることを目的とする。 【構成】 主記憶アクセス制御装置3は,変更済ブロッ
クの内容を変更する時は,スワップアウト処理を行うも
のであって,ブロックのアドレスを格納するタグメモリ
14と,ブロック単位にデータを格納するバッファメモ
リ15を有するキャッシュメモリ13と,中央処理装置
4と,中央処理装置4が主記憶1をアクセスするアドレ
スを保持するアドレスバッファ11と,ミスヒットの時
リプレースするブロックのタグ情報を保持するバックア
ップタグバッファ16とスワップアウトする時リプレー
スするブロックのデータを保持するバックアップバッフ
ァメモリ17とを備えた構成を持つ。
アウトにおいても,中央処理装置による主記憶へのアク
セスを可能とすることを目的とする。 【構成】 主記憶アクセス制御装置3は,変更済ブロッ
クの内容を変更する時は,スワップアウト処理を行うも
のであって,ブロックのアドレスを格納するタグメモリ
14と,ブロック単位にデータを格納するバッファメモ
リ15を有するキャッシュメモリ13と,中央処理装置
4と,中央処理装置4が主記憶1をアクセスするアドレ
スを保持するアドレスバッファ11と,ミスヒットの時
リプレースするブロックのタグ情報を保持するバックア
ップタグバッファ16とスワップアウトする時リプレー
スするブロックのデータを保持するバックアップバッフ
ァメモリ17とを備えた構成を持つ。
Description
【0001】
【産業上の利用分野】本発明は,キャッシュメモリのリ
プレース等を行うキャッシュメモリ制御装置に関する。
特に,スワップ方式によるキャッシュメモリ制御のため
のキャッシュメモリ制御装置に関する。
プレース等を行うキャッシュメモリ制御装置に関する。
特に,スワップ方式によるキャッシュメモリ制御のため
のキャッシュメモリ制御装置に関する。
【0002】キャッシュメモリには,キャッシュメモリ
のブロックのみが更新され,主記憶の内容が一致しない
状態(変更済の状態)がある。そして,キャッシュメモ
リはミスヒットによりブロックを補充する時,ブロック
に空きがないとブロックの1つ(通常,最も古く書き換
えられたブロック)を選択し,内容をリプレースして補
充ブロックとする。その時,スワップ方式のキャッシュ
メモリ制御では,そのリプレースブロックの内容が主記
憶の内容と異なる場合はリプレースブロックの内容を主
記憶に書き戻し,その後に,アクセスするアドレスのデ
ータをライトし補充ブロックとして使用する。
のブロックのみが更新され,主記憶の内容が一致しない
状態(変更済の状態)がある。そして,キャッシュメモ
リはミスヒットによりブロックを補充する時,ブロック
に空きがないとブロックの1つ(通常,最も古く書き換
えられたブロック)を選択し,内容をリプレースして補
充ブロックとする。その時,スワップ方式のキャッシュ
メモリ制御では,そのリプレースブロックの内容が主記
憶の内容と異なる場合はリプレースブロックの内容を主
記憶に書き戻し,その後に,アクセスするアドレスのデ
ータをライトし補充ブロックとして使用する。
【0003】その間,キャッシュメモリへのアクセスは
抑止される。主記憶へのアクセスは動作時間が大きいの
で,キャッシュメモリにアクセス出来ない時間も大きく
なり,キャッシュメモリおよび中央処理装置の処理能率
を低下させていた。
抑止される。主記憶へのアクセスは動作時間が大きいの
で,キャッシュメモリにアクセス出来ない時間も大きく
なり,キャッシュメモリおよび中央処理装置の処理能率
を低下させていた。
【0004】
【従来の技術】図3は従来のマルチプロセッサシステム
のキャッシュメモリ制御装置を示す。図において,71
は主記憶,72はCPUモジュール(1) である。73は
主記憶アクセス制御装置であって,キャッシュメモリ8
2へのアクセス制御を行うものである。74は中央処理
装置であって,CPUモジュールにより主記憶71への
アクセスを行うものである。
のキャッシュメモリ制御装置を示す。図において,71
は主記憶,72はCPUモジュール(1) である。73は
主記憶アクセス制御装置であって,キャッシュメモリ8
2へのアクセス制御を行うものである。74は中央処理
装置であって,CPUモジュールにより主記憶71への
アクセスを行うものである。
【0005】主記憶アクセス制御装置73において,8
0は主記憶制御部であって,主記憶71のリード制御も
しくはライト制御を行うものである。81はアドレスバ
ッファであって,中央処理装置74から主記憶71へア
クセスするアドレスを格納するものである。(A)は上
位アドレス,(B)は下位アドレスである。82はキャ
ッシュメモリである。83はタグメモリであって,タグ
情報(主記憶のブロックについての情報)を格納するも
のである。下位アドレスをタグメモリの番地とし,上位
アドレスをデータとして保持する。84はバッファメモ
リであって,タグメモリのブロックに対応して主記憶7
1の内容をブロック単位に保持するものである。85は
アドレスバッファ81の上位アドレス(A)とタグメモ
リ83のタグ情報における上位アドレスを比較し,キャ
ッシュメモリ82のヒットもしくはミスヒットを判定す
るものである。86はリプレース制御回路であって,ミ
スヒットにおけるリプレース制御信号をタグメモリ83
とバッファメモリ84に出力するものである。
0は主記憶制御部であって,主記憶71のリード制御も
しくはライト制御を行うものである。81はアドレスバ
ッファであって,中央処理装置74から主記憶71へア
クセスするアドレスを格納するものである。(A)は上
位アドレス,(B)は下位アドレスである。82はキャ
ッシュメモリである。83はタグメモリであって,タグ
情報(主記憶のブロックについての情報)を格納するも
のである。下位アドレスをタグメモリの番地とし,上位
アドレスをデータとして保持する。84はバッファメモ
リであって,タグメモリのブロックに対応して主記憶7
1の内容をブロック単位に保持するものである。85は
アドレスバッファ81の上位アドレス(A)とタグメモ
リ83のタグ情報における上位アドレスを比較し,キャ
ッシュメモリ82のヒットもしくはミスヒットを判定す
るものである。86はリプレース制御回路であって,ミ
スヒットにおけるリプレース制御信号をタグメモリ83
とバッファメモリ84に出力するものである。
【0006】88は,CPUモジュール (n)であって,
n番目のCPUモジュールである(構成はCPUモジュ
ール(1) に同じである)。89は主記憶とCPUモジュ
ール(1) 〜 (n)とを結ぶメモリバスである。
n番目のCPUモジュールである(構成はCPUモジュ
ール(1) に同じである)。89は主記憶とCPUモジュ
ール(1) 〜 (n)とを結ぶメモリバスである。
【0007】図の構成によるスワップ方式のキャッシュ
メモリ制御装置を説明する。 リードの場合。 中央処理装置74はリードするアドレスをアドレスバッ
ファ81に転送する。
メモリ制御装置を説明する。 リードの場合。 中央処理装置74はリードするアドレスをアドレスバッ
ファ81に転送する。
【0008】比較回路85はアドレスバッファ81の上
位アドレス(A)とタグメモリ83の下位アドレス
(B)の番地のタグ情報(上位アドレス)を比較し,リ
ードすべきアドレスのデータがキャッシュメモリ82に
格納されているかを判定する。
位アドレス(A)とタグメモリ83の下位アドレス
(B)の番地のタグ情報(上位アドレス)を比較し,リ
ードすべきアドレスのデータがキャッシュメモリ82に
格納されているかを判定する。
【0009】キャッシュメモリ82に該当するブロック
があれば(ヒット),中央処理装置74はキャッシュメ
モリ82からリードする。該当するブロックがなければ
(ミスヒット),主記憶71からキャッシュメモリ82
にリードし,中央処理装置74にリードする。
があれば(ヒット),中央処理装置74はキャッシュメ
モリ82からリードする。該当するブロックがなければ
(ミスヒット),主記憶71からキャッシュメモリ82
にリードし,中央処理装置74にリードする。
【0010】この時,キャッシュメモリ82に空きブロ
ックがないと,キャッシュメモリ82において最も古い
ブロック(最も古くデータを格納したブロック)を認識
する。そして,そのブロックのデータが主記憶の内容と
異なっている時は,そのブロックの内容を主記憶71に
書き戻し(スワップアウト),そのブロックに主記憶7
1のリードすべきアドレスのデータをリード(バッファ
メモリ84にリードする)し,そこから中央処理装置7
4にリードする。また,リプレースするキャッシュメモ
リ82のブロックのデータと主記憶71のデータが一致
している場合には,そのブロックに主記憶71のリード
すべきアドレスのデータをリード(元のデータに上書き
する)し,中央処理装置74にリードする。
ックがないと,キャッシュメモリ82において最も古い
ブロック(最も古くデータを格納したブロック)を認識
する。そして,そのブロックのデータが主記憶の内容と
異なっている時は,そのブロックの内容を主記憶71に
書き戻し(スワップアウト),そのブロックに主記憶7
1のリードすべきアドレスのデータをリード(バッファ
メモリ84にリードする)し,そこから中央処理装置7
4にリードする。また,リプレースするキャッシュメモ
リ82のブロックのデータと主記憶71のデータが一致
している場合には,そのブロックに主記憶71のリード
すべきアドレスのデータをリード(元のデータに上書き
する)し,中央処理装置74にリードする。
【0011】 ライトの場合。 キャッシュメモリ82に該当ブロックがあれば(ヒッ
ト)そこにライトする。該当ブロックが無ければ(ミス
ヒット),主記憶71からデータをリードし,そこにラ
イトする。
ト)そこにライトする。該当ブロックが無ければ(ミス
ヒット),主記憶71からデータをリードし,そこにラ
イトする。
【0012】この時,キャッシュメモリ82に空きブロ
ックが無いと,最も古いブロックを認識する。そして,
そのブロックの内容が主記憶の内容と異なっている時
は,その内容を主記憶71に書き戻し(スワップアウ
ト)し,主記憶71のライトすべきアドレスのデータを
そのブロックにリードし,そこにライトすべきデータを
上書きする。
ックが無いと,最も古いブロックを認識する。そして,
そのブロックの内容が主記憶の内容と異なっている時
は,その内容を主記憶71に書き戻し(スワップアウ
ト)し,主記憶71のライトすべきアドレスのデータを
そのブロックにリードし,そこにライトすべきデータを
上書きする。
【0013】このようなキャッシュメモリを備えたプロ
セッサのマルチプロセッサシステムにおけるスワップ方
式のキャッシュメモリ制御では複数個のキャッシュメモ
リ間の矛盾がないように制御する必要がある。そのため
に,通常はメモリブロック毎に状態情報を付加し制御す
るようにしている。
セッサのマルチプロセッサシステムにおけるスワップ方
式のキャッシュメモリ制御では複数個のキャッシュメモ
リ間の矛盾がないように制御する必要がある。そのため
に,通常はメモリブロック毎に状態情報を付加し制御す
るようにしている。
【0014】状態情報を付加する制御方法の1例を説明
する。次の4種類の状態を定める。 (1) P(Private clean)(専有未変
更)。
する。次の4種類の状態を定める。 (1) P(Private clean)(専有未変
更)。
【0015】キャッシュメモリ間にコピーが無くて(唯
一1個のキャッシュメモリにのみ格納されている),主
記憶と同じ内容である。 (2) D(Private Dirty)(専有変更
済)。
一1個のキャッシュメモリにのみ格納されている),主
記憶と同じ内容である。 (2) D(Private Dirty)(専有変更
済)。
【0016】キャッシュメモリ間にコピーが無くて(唯
一1個のキャッシュメモリにのみ格納されている),主
記憶と異なる内容である。 (3) S(Shared clean)(共有未変
更)。
一1個のキャッシュメモリにのみ格納されている),主
記憶と異なる内容である。 (3) S(Shared clean)(共有未変
更)。
【0017】キャッシュメモリ間にコピーがあり,主記
憶と同じ内容である。 (4) I(Invalid)(無効)。 無効ブロックである(例えば,複数キャッシュメモリ間
にデータが保持されていた状態において,1つのキャッ
シュメモリが書き換えられたような場合,他のキャッシ
ュメモリのブロックを無効ブロックとする。あるいは,
内容の無いブロック(空きのブロック)を無効ブロック
とする)。
憶と同じ内容である。 (4) I(Invalid)(無効)。 無効ブロックである(例えば,複数キャッシュメモリ間
にデータが保持されていた状態において,1つのキャッ
シュメモリが書き換えられたような場合,他のキャッシ
ュメモリのブロックを無効ブロックとする。あるいは,
内容の無いブロック(空きのブロック)を無効ブロック
とする)。
【0018】各状態での動作は以下の通りである。 (1) P(専有未変更) リード:キャッシュメモリからリードされる。状態は不
変である。
変である。
【0019】ライト:キャッシュメモリにのみライトす
る。状態はDになる。 (2) D(専有変更済)。 リード:キャッシュメモリからリードされる。状態は不
変である。
る。状態はDになる。 (2) D(専有変更済)。 リード:キャッシュメモリからリードされる。状態は不
変である。
【0020】ライト:キャッシュメモリのみにライトす
る。状態は不変である。 (3) S(共有未変更)。 リード:キャッシュメモリからリードされる。状態は不
変である。
る。状態は不変である。 (3) S(共有未変更)。 リード:キャッシュメモリからリードされる。状態は不
変である。
【0021】ライト:キャッシュメモリへライトすると
ともに,主記憶へもライトする。状態はDとする(本来
なら,状態Pとすべきものであるが,状態をDとす
る)。他のキャッシュメモリのブロックは無効化する。
ともに,主記憶へもライトする。状態はDとする(本来
なら,状態Pとすべきものであるが,状態をDとす
る)。他のキャッシュメモリのブロックは無効化する。
【0022】(4) I(無効)。 リード:主記憶からキャッシュメモリにリードし,さら
に中央処理装置にリードする。状態はSとする(本来は
状態Pとすべきものであるが,状態Sとする)。
に中央処理装置にリードする。状態はSとする(本来は
状態Pとすべきものであるが,状態Sとする)。
【0023】ライト:主記憶からキャッシュメモリにリ
ードし,その後,キャッシュメモリにライトし,主記憶
にもライトする。状態はDとする(本来は,状態Pとす
べきものであるが,状態Dとする)。
ードし,その後,キャッシュメモリにライトし,主記憶
にもライトする。状態はDとする(本来は,状態Pとす
べきものであるが,状態Dとする)。
【0024】
【発明が解決しようとする課題】上記のようなスワップ
方式のキャッシュメモリ制御では,中央処理装置からの
主記憶アクセスがミスヒットし,リプレースするブロッ
クが変更済ブロック(状態D)の時には,リプレースブ
ロックのスワップアウトが終了するまでは補充するブロ
ック(リプレースブロック)へのリードおよびライトは
行えなかった。そのため,その間キャッシュメモリも使
用できないので,中央処理装置のリクエストを抑止しな
ければならなかった。
方式のキャッシュメモリ制御では,中央処理装置からの
主記憶アクセスがミスヒットし,リプレースするブロッ
クが変更済ブロック(状態D)の時には,リプレースブ
ロックのスワップアウトが終了するまでは補充するブロ
ック(リプレースブロック)へのリードおよびライトは
行えなかった。そのため,その間キャッシュメモリも使
用できないので,中央処理装置のリクエストを抑止しな
ければならなかった。
【0025】本発明は,スワップアウトを必要とする場
合でも中央処理装置による主記憶へのアクセスが可能な
キャッシュメモリ制御装置を提供することを目的とす
る。
合でも中央処理装置による主記憶へのアクセスが可能な
キャッシュメモリ制御装置を提供することを目的とす
る。
【0026】
【課題を解決するための手段】本発明は,リプレースす
るブロックのタグメモリの内容を保持するバックアップ
タグメモリとバッファメモリの内容を保持するバックア
ップバッファメモリを設け,スワップアウトが必要な時
は,リプレースするブロックのタグメモリおよびバッフ
ァメモリの内容をそれぞれバックアップタグバッファ,
バックアップバッファメモリに移し,その後に,バック
アップバッファメモリの内容を主記憶にスワップアウト
するようにした。
るブロックのタグメモリの内容を保持するバックアップ
タグメモリとバッファメモリの内容を保持するバックア
ップバッファメモリを設け,スワップアウトが必要な時
は,リプレースするブロックのタグメモリおよびバッフ
ァメモリの内容をそれぞれバックアップタグバッファ,
バックアップバッファメモリに移し,その後に,バック
アップバッファメモリの内容を主記憶にスワップアウト
するようにした。
【0027】図1は本発明の基本構成を示す。図におい
て,1は主記憶,2はCPUモジュール,3は主記憶ア
クセス制御装置,4は中央処理装置である。
て,1は主記憶,2はCPUモジュール,3は主記憶ア
クセス制御装置,4は中央処理装置である。
【0028】主記憶アクセス制御装置3において,10
は主記憶制御部であって,主記憶1に対するリード制
御,ライト制御を行うものである。11はアドレスバッ
ファであって,中央処理装置4からのアドレスを保持す
るものである。12はバックアップアドレスバッファで
あって,ミスヒットした時アドレスバッファ11のアド
レスを保持するものである。14はタグメモリであっ
て,ブロックのタグ情報(例えば,下位アドレスの値の
番地に上位アドレスの値をデータとして持つ)と状態情
報を保持するものである。15はバッファメモリであっ
て,ブロック単位にデータを保持するものである。16
はバックアップタグバッファであって,ミスヒットの
時,リプレースするブロックのタグ情報を移して保持す
るものである。17はバックアップバッファメモリであ
って,スワップアウトによりリプレースするブロックの
データを保持するものである。18は比較回路であっ
て,アドレスバッファ11のアドレスとタグメモリ14
の番地のタグ情報(アドレス)を比較するものである。
19は比較回路であって,アドレスバッファ11のアド
レスとバックアップタグバッファ16に保持されている
タグ情報を比較するものである。
は主記憶制御部であって,主記憶1に対するリード制
御,ライト制御を行うものである。11はアドレスバッ
ファであって,中央処理装置4からのアドレスを保持す
るものである。12はバックアップアドレスバッファで
あって,ミスヒットした時アドレスバッファ11のアド
レスを保持するものである。14はタグメモリであっ
て,ブロックのタグ情報(例えば,下位アドレスの値の
番地に上位アドレスの値をデータとして持つ)と状態情
報を保持するものである。15はバッファメモリであっ
て,ブロック単位にデータを保持するものである。16
はバックアップタグバッファであって,ミスヒットの
時,リプレースするブロックのタグ情報を移して保持す
るものである。17はバックアップバッファメモリであ
って,スワップアウトによりリプレースするブロックの
データを保持するものである。18は比較回路であっ
て,アドレスバッファ11のアドレスとタグメモリ14
の番地のタグ情報(アドレス)を比較するものである。
19は比較回路であって,アドレスバッファ11のアド
レスとバックアップタグバッファ16に保持されている
タグ情報を比較するものである。
【0029】
【作用】図の構成の動作を説明する。中央処理装置4か
らの主記憶1へのアクセスがミスヒットした場合は,バ
ックアップアドレスバッファ12にアドレスバッファ1
1の内容を移すとともに,バッファメモリ15の選択さ
れた1つのブロックのタグ(リプレースするブロックで
あって,例えば最も古いブロックのタグ)の内容がセッ
トされる。
らの主記憶1へのアクセスがミスヒットした場合は,バ
ックアップアドレスバッファ12にアドレスバッファ1
1の内容を移すとともに,バッファメモリ15の選択さ
れた1つのブロックのタグ(リプレースするブロックで
あって,例えば最も古いブロックのタグ)の内容がセッ
トされる。
【0030】ミスヒットによるブロックの補充のため選
択されたブロックをリプレースする時,そのブロックが
変更済ブロックでない場合(状態D以外の場合)はバッ
クアップアドレスバッファ12とバックアップタグバッ
ファ16は使用されない。ミスヒットによる補充ブロッ
ク(リプレースされるブロック)が変更済(状態D)の
時,バックアップアドレスバッファ12,バックアップ
タグバッファ16へデータを移すことに加えて,バッフ
ァメモリ15のリプレースブロックのデータをバックア
ップバッファメモリ17にセットする。
択されたブロックをリプレースする時,そのブロックが
変更済ブロックでない場合(状態D以外の場合)はバッ
クアップアドレスバッファ12とバックアップタグバッ
ファ16は使用されない。ミスヒットによる補充ブロッ
ク(リプレースされるブロック)が変更済(状態D)の
時,バックアップアドレスバッファ12,バックアップ
タグバッファ16へデータを移すことに加えて,バッフ
ァメモリ15のリプレースブロックのデータをバックア
ップバッファメモリ17にセットする。
【0031】そして,中央処理装置4からのミスヒット
アクセスがリードアクセスの時は,直ちにブロック補充
処理が行われる(主記憶1からリプレースブロックにデ
ータがリードされ,そこから,中央処理装置4にリード
される)。その後にバックアップバッファメモリ17の
データが主記憶1に書き込まれる(スワップアウトす
る)。また,中央処理装置4からのミスヒットアクセス
がライト処理の場合には,上記のリプレース処理ととも
にリプレースしたブロックへライトされる(補充するブ
ロックにデータを上書きする)。その後に,バックアッ
プバッファメモリ17の内容を主記憶にスワップアウト
する。
アクセスがリードアクセスの時は,直ちにブロック補充
処理が行われる(主記憶1からリプレースブロックにデ
ータがリードされ,そこから,中央処理装置4にリード
される)。その後にバックアップバッファメモリ17の
データが主記憶1に書き込まれる(スワップアウトす
る)。また,中央処理装置4からのミスヒットアクセス
がライト処理の場合には,上記のリプレース処理ととも
にリプレースしたブロックへライトされる(補充するブ
ロックにデータを上書きする)。その後に,バックアッ
プバッファメモリ17の内容を主記憶にスワップアウト
する。
【0032】スワップアウトが終了するまでの間に,中
央処理装置4からの主記憶1へのアクセスがある場合
は,リードミスヒット,ライトミスヒットいずれでも,
アドレスはタグメモリ14のタグ情報およびバックアッ
プタグバッファ16の内容と比較し,もし,バックアッ
プタグバッファ16と一致した場合には,バックアップ
バッファメモリ17のデータにより処理を行うようにす
る。その間に,アドレスバッファ11には中央処理装置
4から主記憶1への次のアドレスがセットされるが,バ
ックアップアドレスバッファ12のアドレスにより,リ
ード,ライト処理を行うことができる。
央処理装置4からの主記憶1へのアクセスがある場合
は,リードミスヒット,ライトミスヒットいずれでも,
アドレスはタグメモリ14のタグ情報およびバックアッ
プタグバッファ16の内容と比較し,もし,バックアッ
プタグバッファ16と一致した場合には,バックアップ
バッファメモリ17のデータにより処理を行うようにす
る。その間に,アドレスバッファ11には中央処理装置
4から主記憶1への次のアドレスがセットされるが,バ
ックアップアドレスバッファ12のアドレスにより,リ
ード,ライト処理を行うことができる。
【0033】以上のようにして,中央処理装置4からの
主記憶1へのアクセスがミスヒットし,リプレースブロ
ックの状態が変更済のためスワップアウトを必要とする
場合も,キャッシュメモリへのリード,ライトが待たさ
れることなく高速に処理することが可能になる。
主記憶1へのアクセスがミスヒットし,リプレースブロ
ックの状態が変更済のためスワップアウトを必要とする
場合も,キャッシュメモリへのリード,ライトが待たさ
れることなく高速に処理することが可能になる。
【0034】
【実施例】図2は本発明の実施例を示す。図は,n台の
CPUモジュールがメモリバスにより主記憶に接続され
るマルチプロセッサシステムの構成を示す。
CPUモジュールがメモリバスにより主記憶に接続され
るマルチプロセッサシステムの構成を示す。
【0035】図において,41は主記憶,42はCPU
モジュール(1) ,43は主記憶アクセス制御装置,44
は中央処理装置,50は主記憶制御部,51はアドレス
バッファ,52はバックアップアドレスバッファ,53
はキャッシュメモリ,54はタグメモリであって,下位
アドレスをブロックの番地とし,上位アドレスをタグ情
報として持つものである。55はタグメモリのブロック
に対応してデータを格納するバッファメモリ,56はバ
ックアップタグバッファ,57はバックアップバッファ
メモリ,58,59は比較回路,60はリプレース制御
回路であって,リプレース制御信号をタグメモリ54お
よびバッファメモリ55に出力するものである。61は
リクエスト制御回路であって,中央処理装置のリクエス
ト制御を行うものである。62はCPUモジュール
(n),63はメモリバスである。
モジュール(1) ,43は主記憶アクセス制御装置,44
は中央処理装置,50は主記憶制御部,51はアドレス
バッファ,52はバックアップアドレスバッファ,53
はキャッシュメモリ,54はタグメモリであって,下位
アドレスをブロックの番地とし,上位アドレスをタグ情
報として持つものである。55はタグメモリのブロック
に対応してデータを格納するバッファメモリ,56はバ
ックアップタグバッファ,57はバックアップバッファ
メモリ,58,59は比較回路,60はリプレース制御
回路であって,リプレース制御信号をタグメモリ54お
よびバッファメモリ55に出力するものである。61は
リクエスト制御回路であって,中央処理装置のリクエス
ト制御を行うものである。62はCPUモジュール
(n),63はメモリバスである。
【0036】図の構成の動作を説明する。中央処理装置
44はリクエスト制御回路61からリクエスト抑止信号
が出力されていなければ,アドレスバッファ51にアク
セスするアドレスをセットする。比較回路58および比
較回路59はセットされたアドレス(上位アドレス
(A))とタグメモリ54のアドレス下位の値の番地の
タグ情報(上位アドレス)およびバックアップタグバッ
ファ56の情報を比較する。その結果,主記憶へのアク
セスがミスヒットした場合は,バックアップアドレスバ
ッファ52にアドレスバッファ51の内容を移すととも
に,タグメモリ54のリプレースするブロックのタグ情
報がバックアップタグバッファ56にセットされる。
44はリクエスト制御回路61からリクエスト抑止信号
が出力されていなければ,アドレスバッファ51にアク
セスするアドレスをセットする。比較回路58および比
較回路59はセットされたアドレス(上位アドレス
(A))とタグメモリ54のアドレス下位の値の番地の
タグ情報(上位アドレス)およびバックアップタグバッ
ファ56の情報を比較する。その結果,主記憶へのアク
セスがミスヒットした場合は,バックアップアドレスバ
ッファ52にアドレスバッファ51の内容を移すととも
に,タグメモリ54のリプレースするブロックのタグ情
報がバックアップタグバッファ56にセットされる。
【0037】ミスヒットヒットによるブロックの補充の
ため選択されたブロック(例えば,最も古いブロック)
をリプレースする時,そのブロックが変更済ブロックで
ない場合(状態D以外の場合)はバックアップアドレス
バッファ52とバックアップタグバッファ56は使用さ
れない。
ため選択されたブロック(例えば,最も古いブロック)
をリプレースする時,そのブロックが変更済ブロックで
ない場合(状態D以外の場合)はバックアップアドレス
バッファ52とバックアップタグバッファ56は使用さ
れない。
【0038】ミスヒットによるブロック補充時の対象ブ
ロック(リプレースされるブロック)が変更済(状態
D)の時,上記のバックアップアドレスバッファ52,
バックアップタグバッファ56へデータを移すことに加
えて,バッファメモリ55のリプレースするブロックの
データがバックアップバッファメモリ57にセットされ
る。
ロック(リプレースされるブロック)が変更済(状態
D)の時,上記のバックアップアドレスバッファ52,
バックアップタグバッファ56へデータを移すことに加
えて,バッファメモリ55のリプレースするブロックの
データがバックアップバッファメモリ57にセットされ
る。
【0039】そして,中央処理装置44からのミスヒッ
トアクセスがリードアクセスの時は,直ちにブロック補
充処理が行われる(主記憶41からリプレースするブロ
ックにリードされ,そこから,中央処理装置44にリー
ドされる)。その後に,バックアップバッファメモリ5
7のデータが主記憶41に書き込まれる(スワップアウ
トされる)。また,中央処理装置44からのミスヒット
アクセスがライト処理の場合には,ブロック補充ととも
にライト処理が行われる(補充したブロックにデータを
書き込む)。その後に,バックアップバッファメモリ5
7の内容を主記憶41にスワップアウトする。
トアクセスがリードアクセスの時は,直ちにブロック補
充処理が行われる(主記憶41からリプレースするブロ
ックにリードされ,そこから,中央処理装置44にリー
ドされる)。その後に,バックアップバッファメモリ5
7のデータが主記憶41に書き込まれる(スワップアウ
トされる)。また,中央処理装置44からのミスヒット
アクセスがライト処理の場合には,ブロック補充ととも
にライト処理が行われる(補充したブロックにデータを
書き込む)。その後に,バックアップバッファメモリ5
7の内容を主記憶41にスワップアウトする。
【0040】スワップアウトが終了するまでの間に,中
央処理装置44からの主記憶41へのアクセスがある場
合は,リードミスヒット,ライトミスヒットいずれで
も,中央処理装置44からのアドレスとタグメモリ54
のタグ情報およびバックアップタグバッファ56の内容
がそれぞれ比較回路58および比較回路59で比較され
る。そして,バックアップタグバッファ56と一致した
場合にはバックアップバッファメモリ57に対してリー
ドもしくはライト処理が行われる。いずれにもミスヒッ
トの場合には,リクエスト制御回路61から中央処理装
置44に対してリクエスト抑止信号が出力され,スワッ
プアウトが終了するまでは新たなリクエストを抑止す
る。
央処理装置44からの主記憶41へのアクセスがある場
合は,リードミスヒット,ライトミスヒットいずれで
も,中央処理装置44からのアドレスとタグメモリ54
のタグ情報およびバックアップタグバッファ56の内容
がそれぞれ比較回路58および比較回路59で比較され
る。そして,バックアップタグバッファ56と一致した
場合にはバックアップバッファメモリ57に対してリー
ドもしくはライト処理が行われる。いずれにもミスヒッ
トの場合には,リクエスト制御回路61から中央処理装
置44に対してリクエスト抑止信号が出力され,スワッ
プアウトが終了するまでは新たなリクエストを抑止す
る。
【0041】
【発明の効果】本発明によれば,中央処理装置からの主
記憶へのアクセスがミスヒットした場合に変更済ブロッ
ク(状態Dのブロック)をリプレースする時,リプレー
スブロックのデータのスワップアウトより先に対象アド
レスに対するリードもしくはライトができる。そのた
め,中央処理装置が抑止される時間が短縮されるので,
キャッシュメモリの動作効率および中央処理装置の動作
効率を大幅に向上させることができる。
記憶へのアクセスがミスヒットした場合に変更済ブロッ
ク(状態Dのブロック)をリプレースする時,リプレー
スブロックのデータのスワップアウトより先に対象アド
レスに対するリードもしくはライトができる。そのた
め,中央処理装置が抑止される時間が短縮されるので,
キャッシュメモリの動作効率および中央処理装置の動作
効率を大幅に向上させることができる。
【図1】本発明の基本構成を示す図である。
【図2】本発明の実施例を示す図である。
【図3】従来のキャッシュメモリ制御装置を示す図であ
る。
る。
1 :主記憶 2 :CPUモジュール 3 :主記憶アクセス制御装置 4 :中央処理装置 10:主記憶制御部 11:アドレスバッファ 12:バックアップアドレスバッファ 13:キャッシュメモリ 14:タグメモリ 15:バッファメモリ 16:バックアップタグメモリ 17:バックアップバッファメモリ 18:比較回路 19:比較回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 山口 達也 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 小田原 孝一 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 野中 巧 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 星 健二 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 金谷 英治 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内
Claims (3)
- 【請求項1】 中央処理装置(4) と主記憶(1) とキャッ
シュメモリ(13)とを備えたシステムにおけるキャッシュ
メモリ制御装置において,CPUモジュール(2) は,主
記憶アクセス制御装置(3) と中央処理装置(4) よりな
り,該主記憶アクセス制御装置(3) は,キャッシュメモ
リ(13)を備えて,キャッシュメモリメモリ(13)の内容と
主記憶(1) の内容が一致しない変更済ブロックに対し
て,該ブロックの内容を変更する時は,該ブロックの内
容を読み出して主記憶(1) に書き込むスワップアウト処
理を行うものであって,該主記憶アクセス制御装置(3)
は,ブロックのアドレスを格納するタグメモリ(14)と,
ブロック単位にデータを格納するバッファメモリ(15)を
有するキャッシュメモリ(13)と,中央処理装置(4) と,
中央処理装置(4) が主記憶(1) をアクセスするアドレス
を保持するアドレスバッファ(11)と,ミスヒットの時リ
プレースするブロックのタグ情報を保持するバックアッ
プタグバッファ(16)とスワップアウトする時リプレース
するブロックのデータを保持するバックアップバッファ
メモリ(17)とを備え,主記憶(1) と内容の異なるデータ
を格納するブロックをリプレースする場合,該ブロック
のタグ情報をバックアップタグバッファ(16)にセット
し,リプレースするブロックのデータをバックアップバ
ッファメモリ(17)にセットし,該バックアップバッファ
メモリ(17)にセットされたデータを主記憶(1) にスワッ
プアウトすることを特徴とするキャッシュメモリ制御装
置。 - 【請求項2】 請求項1において,ミスヒットの時,ア
ドレスバッファ(11)のアドレスを保持するバックアップ
アドレスバッファ(12)を備え,スワップアウトにおい
て,スワップアウトに先き立って,バックアップアドレ
スバッファ(12)のアドレスによりブロックのリプレース
処理を行うことを特徴とするキャッシュメモリ制御装
置。 - 【請求項3】 請求項1および2において,アドレスバ
ッファ(11)の内容とタグメモリ(14)の内容を比較する比
較回路と,アドレスバッファ(11)の内容とバックアップ
タグバッファ(16)の内容を比較する比較回路を備え,バ
ックアップバッファメモリ(17)の内容についてリードも
しくはライトすることを可能としたことを特徴とするキ
ャッシュメモリ制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4151043A JPH05342107A (ja) | 1992-06-11 | 1992-06-11 | キャッシュメモリ制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4151043A JPH05342107A (ja) | 1992-06-11 | 1992-06-11 | キャッシュメモリ制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH05342107A true JPH05342107A (ja) | 1993-12-24 |
Family
ID=15510055
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4151043A Withdrawn JPH05342107A (ja) | 1992-06-11 | 1992-06-11 | キャッシュメモリ制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH05342107A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2022534891A (ja) * | 2019-05-24 | 2022-08-04 | テキサス インスツルメンツ インコーポレイテッド | キャッシュシステムにおける書き込みミスキャッシングを容易にするための方法及び装置 |
-
1992
- 1992-06-11 JP JP4151043A patent/JPH05342107A/ja not_active Withdrawn
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2022534891A (ja) * | 2019-05-24 | 2022-08-04 | テキサス インスツルメンツ インコーポレイテッド | キャッシュシステムにおける書き込みミスキャッシングを容易にするための方法及び装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5802582A (en) | Explicit coherence using split-phase controls | |
| JPS5830319Y2 (ja) | コンピユ−タシステム | |
| JP3620473B2 (ja) | 共有キャッシュメモリのリプレイスメント制御方法及びその装置 | |
| US5561783A (en) | Dynamic cache coherency method and apparatus using both write-back and write-through operations | |
| JPS5845611A (ja) | 周辺メモリ・システム | |
| JPH05210585A (ja) | キャッシュ管理システム | |
| US5034885A (en) | Cache memory device with fast data-write capacity | |
| JPH0950400A (ja) | マルチプロセッサシステム | |
| KR0175983B1 (ko) | 데이타 처리 시스템 | |
| JPH0616272B2 (ja) | メモリアクセス制御方式 | |
| US6101581A (en) | Separate victim buffer read and release control | |
| US6182164B1 (en) | Minimizing cache overhead by storing data for communications between a peripheral device and a host system into separate locations in memory | |
| JPH05342107A (ja) | キャッシュメモリ制御装置 | |
| EP0640930A2 (en) | A multiprocessor system and a method of controlling such a system | |
| US6397295B1 (en) | Cache mechanism for shared resources in a multibus data processing system | |
| JPH06124240A (ja) | キャッシュメモリ制御方法 | |
| JPH0573414A (ja) | キヤツシユメモリ制御方式 | |
| EP0604030A2 (en) | Copy back cache tag memory | |
| JPH0520195A (ja) | キヤツシユメモリ制御装置 | |
| US7840757B2 (en) | Method and apparatus for providing high speed memory for a processing unit | |
| JP2852247B2 (ja) | 共有メモリ型マルチプロセッサシステム | |
| JPH04288647A (ja) | キャッシュメモリにおける置き換え制御装置 | |
| JP2000066946A (ja) | メモリコントローラ | |
| JPH0612363A (ja) | メモリ制御装置およびマルチプロセッサシステム | |
| JPH0528047A (ja) | キヤツシユメモリ制御方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19990831 |