JPH04296950A - キャッシュメモリ装置 - Google Patents
キャッシュメモリ装置Info
- Publication number
- JPH04296950A JPH04296950A JP3039775A JP3977591A JPH04296950A JP H04296950 A JPH04296950 A JP H04296950A JP 3039775 A JP3039775 A JP 3039775A JP 3977591 A JP3977591 A JP 3977591A JP H04296950 A JPH04296950 A JP H04296950A
- Authority
- JP
- Japan
- Prior art keywords
- data
- signal
- cache memory
- cpu
- 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
Links
- 230000015654 memory Effects 0.000 claims abstract description 114
- 238000000034 method Methods 0.000 claims abstract description 36
- 238000013500 data storage Methods 0.000 claims abstract description 6
- 230000010365 information processing Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 2
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Landscapes
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】この発明はマルチプロセッサ構成
の情報処理システムにおけるキャッシュメモリに係り、
特にある中央演算処理装置(以下、CPUと呼称する)
がライト動作を行った場合において、各CPUに接続さ
れた各々のキャッシュメモリ内部のデータの一貫性(以
下、コヒーレンシーと呼称する)の維持が容易に実現で
き、かつ、CPU野待ち時間の発生を減少させるキャッ
シュメモリ装置に関するものである。
の情報処理システムにおけるキャッシュメモリに係り、
特にある中央演算処理装置(以下、CPUと呼称する)
がライト動作を行った場合において、各CPUに接続さ
れた各々のキャッシュメモリ内部のデータの一貫性(以
下、コヒーレンシーと呼称する)の維持が容易に実現で
き、かつ、CPU野待ち時間の発生を減少させるキャッ
シュメモリ装置に関するものである。
【0002】
【従来の技術】従来のキャッシュメモリを含むシングル
プロセッサ構成の情報処理システムにおいて、CPUの
ライト動作の際にアクセス対象のデータがキャッシュメ
モリ内部に保持されているキャッシュヒットの場合を想
定する。このときの主記憶更新手法の例を説明する。 1)インバリッド方式 キャッシュメモリ内部のそのデータを無効化手段によっ
て無効とし、これと同時に主記憶装置のアクセス手段に
したがってライト動作を行う。そして、キャッシュメモ
リの使用は、主記憶装置のアクセス速度がCPUのアク
セス速度に比べ遅いことが前提とされるので、当然なが
らCPUに待ち時間が生じる。 2)ライトスルー方式 ライト動作が行われた時点で、キャッシュメモリ内部の
そのデータを書き換え、これと同時に主記憶装置へのラ
イト動作を行う。そして、CPUに待ち時間を生じさせ
るのは1)インバリッド方式と同じである。 3)コピーバック方式 ライト動作が行われた時点で、キャッシュメモリ内部の
そのデータを書き換え、またそのデータをバッファに保
持してCPUのライト動作を終了させる。したがって、
ノーウエイトでライト動作を終了できる。そして、バッ
ファに保持されたデータは、キャッシュメモリの制御の
もとで主記憶装置へ書き込まれる。またバッファを用い
ない方法としては、そのデータの更新を記憶しておき、
リプレース時にキャッシュメモリの制御のもとで主記憶
装置へ書き込まれるものがある。
プロセッサ構成の情報処理システムにおいて、CPUの
ライト動作の際にアクセス対象のデータがキャッシュメ
モリ内部に保持されているキャッシュヒットの場合を想
定する。このときの主記憶更新手法の例を説明する。 1)インバリッド方式 キャッシュメモリ内部のそのデータを無効化手段によっ
て無効とし、これと同時に主記憶装置のアクセス手段に
したがってライト動作を行う。そして、キャッシュメモ
リの使用は、主記憶装置のアクセス速度がCPUのアク
セス速度に比べ遅いことが前提とされるので、当然なが
らCPUに待ち時間が生じる。 2)ライトスルー方式 ライト動作が行われた時点で、キャッシュメモリ内部の
そのデータを書き換え、これと同時に主記憶装置へのラ
イト動作を行う。そして、CPUに待ち時間を生じさせ
るのは1)インバリッド方式と同じである。 3)コピーバック方式 ライト動作が行われた時点で、キャッシュメモリ内部の
そのデータを書き換え、またそのデータをバッファに保
持してCPUのライト動作を終了させる。したがって、
ノーウエイトでライト動作を終了できる。そして、バッ
ファに保持されたデータは、キャッシュメモリの制御の
もとで主記憶装置へ書き込まれる。またバッファを用い
ない方法としては、そのデータの更新を記憶しておき、
リプレース時にキャッシュメモリの制御のもとで主記憶
装置へ書き込まれるものがある。
【0003】つぎに、マルチプロセッサ構成の情報処理
システムにおけるキャッシュメモリの動作について説明
する。マルチプロセッサ構成の情報処理システムにおい
て、ある主記憶装置上のデータのコピーが各キャッシュ
メモリ内部に保持されている場合には、コヒーレンシー
を維持しなければならない。そのためキャッシュメモリ
は、各CPUが共有するシステムバス上の他CPUによ
るライト動作を監視し、それが自己の内部に保持されて
いるデータに影響する場合には対応動作を行う必要があ
る。
システムにおけるキャッシュメモリの動作について説明
する。マルチプロセッサ構成の情報処理システムにおい
て、ある主記憶装置上のデータのコピーが各キャッシュ
メモリ内部に保持されている場合には、コヒーレンシー
を維持しなければならない。そのためキャッシュメモリ
は、各CPUが共有するシステムバス上の他CPUによ
るライト動作を監視し、それが自己の内部に保持されて
いるデータに影響する場合には対応動作を行う必要があ
る。
【0004】そして、従来のキャッシュメモリは、例え
ば、前述したような主記憶更新手法の内の一手法を用い
てライト動作を行っていた。したがって、マルチプロセ
ッサ構成の情報処理システムにおける使用には以下のよ
うな不都合があった。
ば、前述したような主記憶更新手法の内の一手法を用い
てライト動作を行っていた。したがって、マルチプロセ
ッサ構成の情報処理システムにおける使用には以下のよ
うな不都合があった。
【0005】1)インバリッド方式の従来のキャッシュ
メモリ キャッシュメモリ内部のそのデータがライトヒットの度
に無効化されるので、アクセス対象のデータがキャッシ
ュメモリ内部に存在する確率(以下、ヒット率と呼称す
る)が低下する。さらにライト動作と同時に主記憶装置
へのライト動作を行うので、システムバスにおいて頻繁
にバス衝突を起こし、CPUに主記憶装置のアクセス時
間以上の待ち時間を生じさせる。 2)ライトスルー方式の従来のキャッシュメモリキャッ
シュメモリ内部のそのデータはライトヒットの際に書き
換えられるので、キャッシュメモリのヒット率は上記1
)インバリッド方式の従来のキャッシュメモリに比べ向
上する。しかし、システムバスにおいて頻繁にバス衝突
を起こす点は上記1)インバリッド方式の従来のキャッ
シュメモリと同じである。 3)コピーバック方式の従来のキャッシュメモリキャッ
シュメモリ内部のそのデータはライトヒットの際に書き
換えられるので、キャッシュメモリのヒット率は上記2
)ライトスルー方式の従来のキャッシュメモリと同程度
である。また、主記憶装置へのライト動作はそのデータ
をバッファに保持するので、CPUの待ち時間は生じな
い。ただし、CPUのライト動作から主記憶装置へのラ
イト動作までに一定の時間(以下、ライト保留時間と呼
称する)が生じる。そして、ライト保留時間の間はCP
Uが書き込んだデータ(キャッシュメモリ内部のそのデ
ータ)と主記憶装置上のデータが異なり、他のCPUか
ら主記憶装置上のそのデータへのリードアクセスに対し
ては主記憶更新前のデータが読み出され、最新のデータ
を得られないという不具合が生じる。また、ライト保留
時間の間はシステムバスへのアクセスを行わないので、
他のキャッシュメモリは自己の内部のそのデータにライ
ト動作が行われたことを認識できない。これを回避する
ためには複雑な制御回路を付加せねばならないという不
具合も生じる。
メモリ キャッシュメモリ内部のそのデータがライトヒットの度
に無効化されるので、アクセス対象のデータがキャッシ
ュメモリ内部に存在する確率(以下、ヒット率と呼称す
る)が低下する。さらにライト動作と同時に主記憶装置
へのライト動作を行うので、システムバスにおいて頻繁
にバス衝突を起こし、CPUに主記憶装置のアクセス時
間以上の待ち時間を生じさせる。 2)ライトスルー方式の従来のキャッシュメモリキャッ
シュメモリ内部のそのデータはライトヒットの際に書き
換えられるので、キャッシュメモリのヒット率は上記1
)インバリッド方式の従来のキャッシュメモリに比べ向
上する。しかし、システムバスにおいて頻繁にバス衝突
を起こす点は上記1)インバリッド方式の従来のキャッ
シュメモリと同じである。 3)コピーバック方式の従来のキャッシュメモリキャッ
シュメモリ内部のそのデータはライトヒットの際に書き
換えられるので、キャッシュメモリのヒット率は上記2
)ライトスルー方式の従来のキャッシュメモリと同程度
である。また、主記憶装置へのライト動作はそのデータ
をバッファに保持するので、CPUの待ち時間は生じな
い。ただし、CPUのライト動作から主記憶装置へのラ
イト動作までに一定の時間(以下、ライト保留時間と呼
称する)が生じる。そして、ライト保留時間の間はCP
Uが書き込んだデータ(キャッシュメモリ内部のそのデ
ータ)と主記憶装置上のデータが異なり、他のCPUか
ら主記憶装置上のそのデータへのリードアクセスに対し
ては主記憶更新前のデータが読み出され、最新のデータ
を得られないという不具合が生じる。また、ライト保留
時間の間はシステムバスへのアクセスを行わないので、
他のキャッシュメモリは自己の内部のそのデータにライ
ト動作が行われたことを認識できない。これを回避する
ためには複雑な制御回路を付加せねばならないという不
具合も生じる。
【0006】
【発明が解決しようとする課題】上記のような従来のキ
ャッシュメモリでは、主記憶更新手法例の内の一手法の
みを用いてライト動作を行っているので、マルチプロセ
ッサ構成の情報処理システムに従来のキャッシュメモリ
を用いると、CPUに主記憶装置のアクセス速度以上の
待ち時間が生じさせる、または複雑な制御回路の付加が
必要であるというなどの課題があった。この発明はかか
る課題を解決するためになされたもので、マルチプロセ
ッサ構成の情報処理システムにおいて、CPUの待ち時
間の発生を減少させ、かつ制御が容易なキャッシュメモ
リ装置を得ることを目的とする。
ャッシュメモリでは、主記憶更新手法例の内の一手法の
みを用いてライト動作を行っているので、マルチプロセ
ッサ構成の情報処理システムに従来のキャッシュメモリ
を用いると、CPUに主記憶装置のアクセス速度以上の
待ち時間が生じさせる、または複雑な制御回路の付加が
必要であるというなどの課題があった。この発明はかか
る課題を解決するためになされたもので、マルチプロセ
ッサ構成の情報処理システムにおいて、CPUの待ち時
間の発生を減少させ、かつ制御が容易なキャッシュメモ
リ装置を得ることを目的とする。
【0007】
【課題を解決するための手段】この発明によるキャッシ
ュメモリ装置は、アドレス信号をストアするためのアド
レス記憶手段とデータ信号をストアするためのデータ記
憶手段とを備えたキャッシュメモリであって、上記デー
タ記憶手段に格納されているデータの属性を記憶する属
性記憶手段と、予め定められた複数の主記憶更新手法を
選択実行可能な主記憶更新制御手段と、上記属性記憶手
段に格納されているデータの属性にしたがって前記主記
憶更新制御手段の内の一手法を選択実行させる選択手段
を含むものである。
ュメモリ装置は、アドレス信号をストアするためのアド
レス記憶手段とデータ信号をストアするためのデータ記
憶手段とを備えたキャッシュメモリであって、上記デー
タ記憶手段に格納されているデータの属性を記憶する属
性記憶手段と、予め定められた複数の主記憶更新手法を
選択実行可能な主記憶更新制御手段と、上記属性記憶手
段に格納されているデータの属性にしたがって前記主記
憶更新制御手段の内の一手法を選択実行させる選択手段
を含むものである。
【0008】
【作用】この発明においては、キャッシュメモリ内部に
保持されているデータの属性にしたがって主記憶更新手
法を選択する。このため各データの特徴に合致したライ
ト動作が可能となり、マルチプロセッサ構成の情報処理
システムでの使用において、CPUの待ち時間の発生を
減少させ、かつ制御が容易なキャッシュメモリを得るこ
とが可能となる。
保持されているデータの属性にしたがって主記憶更新手
法を選択する。このため各データの特徴に合致したライ
ト動作が可能となり、マルチプロセッサ構成の情報処理
システムでの使用において、CPUの待ち時間の発生を
減少させ、かつ制御が容易なキャッシュメモリを得るこ
とが可能となる。
【0009】
【実施例】以下、この発明をその実施例を示す図面に基
づいて説明する。まず、データの属性例として、他のC
PUから参照可能なグローバルデータと参照不可のロー
カルデータを想定する。そして、グローバルデータの主
記憶更新アルゴリズムとしてはコヒーレンシーを保ち易
い、例えば、ライトスルー方式を用い、ローカルデータ
についてはコヒーレンシーについて考慮する必要がない
のでCPUに待ち時間を生じさせない、例えば、コピー
バック方式を用いる。そして、キャッシュメモリが、自
身のデータ領域を他のタスクから参照可能なグローバル
データと参照不可のローカルデータにダイナミックに割
り付けて分割し、ローカルデータについてはCPUのラ
イト動作時に主記憶装置へのライト動作を行わないとい
う技術は、例えば、データキャッシュ制御方式として提
案されている。しかし、このデータキャッシュ制御方式
は、ローカルデータ、グローバルデータをタスクを基準
として判別していること、主記憶更新手法としては単一
の手法を用いること、ローカルデータのリプレース動作
についてはCPUが専用の命令を行う必要があることな
どからこの発明とは意図する目的が異なる。
づいて説明する。まず、データの属性例として、他のC
PUから参照可能なグローバルデータと参照不可のロー
カルデータを想定する。そして、グローバルデータの主
記憶更新アルゴリズムとしてはコヒーレンシーを保ち易
い、例えば、ライトスルー方式を用い、ローカルデータ
についてはコヒーレンシーについて考慮する必要がない
のでCPUに待ち時間を生じさせない、例えば、コピー
バック方式を用いる。そして、キャッシュメモリが、自
身のデータ領域を他のタスクから参照可能なグローバル
データと参照不可のローカルデータにダイナミックに割
り付けて分割し、ローカルデータについてはCPUのラ
イト動作時に主記憶装置へのライト動作を行わないとい
う技術は、例えば、データキャッシュ制御方式として提
案されている。しかし、このデータキャッシュ制御方式
は、ローカルデータ、グローバルデータをタスクを基準
として判別していること、主記憶更新手法としては単一
の手法を用いること、ローカルデータのリプレース動作
についてはCPUが専用の命令を行う必要があることな
どからこの発明とは意図する目的が異なる。
【0010】図1は上記の想定に基づいたこの発明によ
るキャッシュメモリ装置の一実施例を示したブロック図
で、キャッシュメモリ1aの内部構成例を示すものであ
る。この図1において、1aはキャッシュメモリで、こ
のキャッシュメモリ1aの構成はダイレクト・マッピン
グ方式を想定している。11はCPUバスインターフェ
ース(以下、CPUバスI/Fと呼称する)、12は動
作制御部で、この動作制御部12は予め定められた複数
の主記憶更新手法を選択実行可能な主記憶更新制御手段
を構成している。13はバッファ部、14はシステムバ
スインターフェース(以下、システムバスI/Fと呼称
する)、15はタグメモリ、16はデータメモリ、17
はアドレス信号制御部、18はタグアドレス比較部であ
る。なお、IVはインバリッド信号を示し、MAは記憶
アドレス信号、VBはバリッドビット信号を示す。
るキャッシュメモリ装置の一実施例を示したブロック図
で、キャッシュメモリ1aの内部構成例を示すものであ
る。この図1において、1aはキャッシュメモリで、こ
のキャッシュメモリ1aの構成はダイレクト・マッピン
グ方式を想定している。11はCPUバスインターフェ
ース(以下、CPUバスI/Fと呼称する)、12は動
作制御部で、この動作制御部12は予め定められた複数
の主記憶更新手法を選択実行可能な主記憶更新制御手段
を構成している。13はバッファ部、14はシステムバ
スインターフェース(以下、システムバスI/Fと呼称
する)、15はタグメモリ、16はデータメモリ、17
はアドレス信号制御部、18はタグアドレス比較部であ
る。なお、IVはインバリッド信号を示し、MAは記憶
アドレス信号、VBはバリッドビット信号を示す。
【0011】そして、この図1に示すキャッシュメモリ
1aはアドレス信号をストアするためのアドレス記憶手
段とデータ信号をストアするためのデータ記憶手段とを
備えたキャッシュメモリであって、上記データ記憶手段
に格納されているデータの属性を記憶する属性記憶手段
と、予め定められた複数の主記憶更新手法を選択実行可
能な主記憶更新制御手段と、上記属性記憶手段に格納さ
れているデータの属性にしたがって上記主記憶更新制御
手段の内の一手法を選択実行させる選択手段を備えてい
る。
1aはアドレス信号をストアするためのアドレス記憶手
段とデータ信号をストアするためのデータ記憶手段とを
備えたキャッシュメモリであって、上記データ記憶手段
に格納されているデータの属性を記憶する属性記憶手段
と、予め定められた複数の主記憶更新手法を選択実行可
能な主記憶更新制御手段と、上記属性記憶手段に格納さ
れているデータの属性にしたがって上記主記憶更新制御
手段の内の一手法を選択実行させる選択手段を備えてい
る。
【0012】図2はこの発明のキャッシュメモリ装置に
使用するタグメモリの構成例を示した構成図で、図1に
示すキャッシュメモリ1a内のタグメモリ15の1エン
トリ分の構成を示す。この図2を用いてタグメモリ15
の構成を説明する。タグメモリ15の1エントリは、そ
のデータが他のCPUから参照可能なグローバルデータ
か参照不可なローカルデータかを記憶しておくG/Lビ
ット21とタグアドレス信号を記憶するタグアドレス記
憶部22およびエントリのデータが有効であるか否かを
示すバリッドビット23で構成される。
使用するタグメモリの構成例を示した構成図で、図1に
示すキャッシュメモリ1a内のタグメモリ15の1エン
トリ分の構成を示す。この図2を用いてタグメモリ15
の構成を説明する。タグメモリ15の1エントリは、そ
のデータが他のCPUから参照可能なグローバルデータ
か参照不可なローカルデータかを記憶しておくG/Lビ
ット21とタグアドレス信号を記憶するタグアドレス記
憶部22およびエントリのデータが有効であるか否かを
示すバリッドビット23で構成される。
【0013】図3はこの発明のキャッシュメモリ1a,
1bを使用したマルチプロセッサ構成の情報処理システ
ムの一例を示したブロック図である。そして、ローカル
メモリ33,34は各々のCPU31,32のグローバ
ルメモリ37と同一アドレス領域上に設定してあり、ロ
ーカル/グローバルのアクセスの変更は、メモリバス4
1,42に含まれるデータ種別信号GL2にしたがって
アクセス制御部35,36が行う。なお、この図3にお
いて、38はシステムバスを示し、39,40はCPU
バスを示す。
1bを使用したマルチプロセッサ構成の情報処理システ
ムの一例を示したブロック図である。そして、ローカル
メモリ33,34は各々のCPU31,32のグローバ
ルメモリ37と同一アドレス領域上に設定してあり、ロ
ーカル/グローバルのアクセスの変更は、メモリバス4
1,42に含まれるデータ種別信号GL2にしたがって
アクセス制御部35,36が行う。なお、この図3にお
いて、38はシステムバスを示し、39,40はCPU
バスを示す。
【0014】つぎに図1に示す実施例の動作を図3を参
照して説明する。なお、以下の説明におけるCPUとは
図3に示すCPU31,32のうちそのキャッシュメモ
リに接続されているものを指し、主記憶装置とはローカ
ル・メモリ33,34のうちのそのキャッシュメモリに
接続されているもの、またはグローバル・メモリ37を
指す。
照して説明する。なお、以下の説明におけるCPUとは
図3に示すCPU31,32のうちそのキャッシュメモ
リに接続されているものを指し、主記憶装置とはローカ
ル・メモリ33,34のうちのそのキャッシュメモリに
接続されているもの、またはグローバル・メモリ37を
指す。
【0015】(1) ヒット判定動作アドレス信号A
1が、CPUバスI/F11を介してアドレス信号制御
部17へと入力される。このアドレス信号制御部17は
、アドレス信号A1をタグアドレス信号TAとエントリ
アドレス信号EAに分割する。タグメモリ15は、エン
トリアドレス信号EAで指定されるエントリのタグアド
レス記憶部およびバリッドビットの内容をタグアドレス
比較部18へ出力する。そして、バリッドビットが有効
を示すとき、タグアドレス比較部18はタグメモリ15
のアドレス記憶部からの値とアドレス信号制御部17か
らのタグアドレス信号TAを比較し、一致ならばタグア
ドレスヒット信号HTを有効とし不一致ならば無効とす
る。そして、バリッドビットが無効を示すとき、タグア
ドレス比較部18は無条件にタグアドレスヒット信号H
Tを無効とする。動作制御部12は、バリッドビット等
とともにタグメモリ15より出力されるG/Lビットの
内容、すなわち、データ種別信号GL3とCPUバスI
/F11を介して与えられるデータ種別信号GL1が一
致し、かつタグアドレスヒット信号が有効を示したとき
のみキャッシュヒットと判定する。
1が、CPUバスI/F11を介してアドレス信号制御
部17へと入力される。このアドレス信号制御部17は
、アドレス信号A1をタグアドレス信号TAとエントリ
アドレス信号EAに分割する。タグメモリ15は、エン
トリアドレス信号EAで指定されるエントリのタグアド
レス記憶部およびバリッドビットの内容をタグアドレス
比較部18へ出力する。そして、バリッドビットが有効
を示すとき、タグアドレス比較部18はタグメモリ15
のアドレス記憶部からの値とアドレス信号制御部17か
らのタグアドレス信号TAを比較し、一致ならばタグア
ドレスヒット信号HTを有効とし不一致ならば無効とす
る。そして、バリッドビットが無効を示すとき、タグア
ドレス比較部18は無条件にタグアドレスヒット信号H
Tを無効とする。動作制御部12は、バリッドビット等
とともにタグメモリ15より出力されるG/Lビットの
内容、すなわち、データ種別信号GL3とCPUバスI
/F11を介して与えられるデータ種別信号GL1が一
致し、かつタグアドレスヒット信号が有効を示したとき
のみキャッシュヒットと判定する。
【0016】(2) リード動作
前述した(1)ヒット判定動作にしたがい、キャッシュ
ヒットであるかキャッシュミスであるかを判定する。そ
の後判定に基づいて以下の動作を行う。 〔キャッシュヒットの場合〕データメモリ16は、キャ
ッシュヒットの判定によって動作制御部12がデータリ
ード信号DRを有効とすると、エントリアドレス信号E
Aで指定されるエントリの内容をデータ信号D1として
出力する。これと同時に動作制御部12は、CPUのリ
ード動作を終了するコントロール信号C1をCPUバス
I/F11へと出力する。CPUバスI/F11は、内
部のデータ信号D1およびコントロール信号C1を外部
へと伝達する。以上の動作で、システムバス側へのアク
セスを行わずに、CPUにデータを供給する。 〔キャッシュミスの場合〕動作制御部12は、キャッシ
ュミスと判定すると、システムバスI/F14を介して
主記憶装置へのリード動作を行うためのコントロール信
号C2およびデータ種別信号GL2を出力する。これと
同時に動作制御部12は、CPUバスI/F11とシス
テムバスI/F14をバッファ部13にて直結するスル
ー信号THを有効とする。ここで、バッファ部13の内
部に、後述する(4)主記憶更新動作に示すコピーバッ
ク方式のライト動作が終了しておらず、すなわち、コピ
ーバックすべきデータが残っていないことを示すコピー
バック終了信号DEが無効であった場合には、コピーバ
ック動作を保留し、リード動作終了後再開する。そして
、CPUバスI/F11およびバッファ部13を介して
システムバスI/F14に与えられるアドレス信号A2
、動作制御部12より与えられるコントロール信号C2
およびデータ種別信号GL2にしたがって主記憶装置か
ら供給されたそのデータは、システムバスI/F14、
バッファ部13およびCPUバスI/F11を介してC
PUへ供給される。このCPUからのリード動作は、動
作制御部12からのコントロール信号C1およびそのデ
ータの供給によって終了する。そのデータは、CPUへ
と供給されると同時にデータメモリ16へも供給される
。データメモリ16では、動作制御部12からのデータ
ライト信号DWによって、そのデータを内部のそのエン
トリに保持する。さらに、タグメモリ15では、データ
種別信号GL1およびアドレス信号制御部17より供給
されるタグアドレス信号TAを動作制御部12からのタ
グライト信号TWにしたがって内部のそのエントリに保
持し、当然バリッドビットを有効を示すように変更する
。
ヒットであるかキャッシュミスであるかを判定する。そ
の後判定に基づいて以下の動作を行う。 〔キャッシュヒットの場合〕データメモリ16は、キャ
ッシュヒットの判定によって動作制御部12がデータリ
ード信号DRを有効とすると、エントリアドレス信号E
Aで指定されるエントリの内容をデータ信号D1として
出力する。これと同時に動作制御部12は、CPUのリ
ード動作を終了するコントロール信号C1をCPUバス
I/F11へと出力する。CPUバスI/F11は、内
部のデータ信号D1およびコントロール信号C1を外部
へと伝達する。以上の動作で、システムバス側へのアク
セスを行わずに、CPUにデータを供給する。 〔キャッシュミスの場合〕動作制御部12は、キャッシ
ュミスと判定すると、システムバスI/F14を介して
主記憶装置へのリード動作を行うためのコントロール信
号C2およびデータ種別信号GL2を出力する。これと
同時に動作制御部12は、CPUバスI/F11とシス
テムバスI/F14をバッファ部13にて直結するスル
ー信号THを有効とする。ここで、バッファ部13の内
部に、後述する(4)主記憶更新動作に示すコピーバッ
ク方式のライト動作が終了しておらず、すなわち、コピ
ーバックすべきデータが残っていないことを示すコピー
バック終了信号DEが無効であった場合には、コピーバ
ック動作を保留し、リード動作終了後再開する。そして
、CPUバスI/F11およびバッファ部13を介して
システムバスI/F14に与えられるアドレス信号A2
、動作制御部12より与えられるコントロール信号C2
およびデータ種別信号GL2にしたがって主記憶装置か
ら供給されたそのデータは、システムバスI/F14、
バッファ部13およびCPUバスI/F11を介してC
PUへ供給される。このCPUからのリード動作は、動
作制御部12からのコントロール信号C1およびそのデ
ータの供給によって終了する。そのデータは、CPUへ
と供給されると同時にデータメモリ16へも供給される
。データメモリ16では、動作制御部12からのデータ
ライト信号DWによって、そのデータを内部のそのエン
トリに保持する。さらに、タグメモリ15では、データ
種別信号GL1およびアドレス信号制御部17より供給
されるタグアドレス信号TAを動作制御部12からのタ
グライト信号TWにしたがって内部のそのエントリに保
持し、当然バリッドビットを有効を示すように変更する
。
【0017】(3) ライト動作
前述した(1)ヒット判定動作にしたがい、キャッシュ
ヒットであるかキャッシュミスであるかを判定する。そ
の後判定に基づいて以下の動作を行う。 〔キャッシュヒットの場合〕データメモリ16は、キャ
ッシュヒットの判定によって動作制御部12がデータラ
イト信号DWを有効とすると、CPUバスI/F11を
介して供給されるデータ信号D1によりそのエントリの
データを更新する。これと同時に後述する(4)主記憶
更新動作のいずれかにより主記憶装置のデータを更新す
る。その後、動作制御部12がCPUのライト動作を終
了させるコントロール信号C1をCPUバスI/F11
を介して出力し、ライト動作を終了する。 〔キャッシュミスの場合〕キャッシュミスと判定された
場合は、後述する(4)主記憶更新動作のいずれかによ
る主記憶装置の更新のみを行い、データメモリ16のそ
のエントリのデータの更新は行わない。その後、動作制
御部12がCPUのライト動作を終了させるコントロー
ル信号C1をCPUバスI/F11を介して出力し、ラ
イト動作を終了する。
ヒットであるかキャッシュミスであるかを判定する。そ
の後判定に基づいて以下の動作を行う。 〔キャッシュヒットの場合〕データメモリ16は、キャ
ッシュヒットの判定によって動作制御部12がデータラ
イト信号DWを有効とすると、CPUバスI/F11を
介して供給されるデータ信号D1によりそのエントリの
データを更新する。これと同時に後述する(4)主記憶
更新動作のいずれかにより主記憶装置のデータを更新す
る。その後、動作制御部12がCPUのライト動作を終
了させるコントロール信号C1をCPUバスI/F11
を介して出力し、ライト動作を終了する。 〔キャッシュミスの場合〕キャッシュミスと判定された
場合は、後述する(4)主記憶更新動作のいずれかによ
る主記憶装置の更新のみを行い、データメモリ16のそ
のエントリのデータの更新は行わない。その後、動作制
御部12がCPUのライト動作を終了させるコントロー
ル信号C1をCPUバスI/F11を介して出力し、ラ
イト動作を終了する。
【0018】(4) 主記憶更新動作コピーバック方
式およびライトスルー方式の主記憶更新動作を説明する
。 (a)コピーバック方式 ライト動作においてCPUバスI/F11を介して与え
られるデータ種別信号GL1がローカルデータを示して
いた場合に、動作制御部12はコピーバック方式で主記
憶装置へのライト動作を行う。つまり、動作制御部12
は、ラッチ信号LTを有効とし、同じくCPUバスI/
F11を介して与えられるアドレス信号A1およびデー
タ信号D1をFIFOメモリで構成されるバッファ部1
3へ保持させる。バッファ部13は各信号を保持すると
、コピーバック終了信号DEを無効を示すよう変更する
。これと同時に動作制御部12は、CPUバスI/F1
1へライト動作終了に伴うコントロール信号C1を出力
する。CPUのライト動作はこれで終了する。その後、
動作制御部12は主記憶装置アクセスのためのコントロ
ール信号C2およびデータ種別信号GL2を出力する。 また、バッファ部13は動作制御部12からの次データ
出力信号NDにしたがって、保持しているデータをデー
タ信号D2として、同じく保持しているアドレスをアド
レス信号A2としてシステムバスI/F14へと順次出
力していく。そして、システムバスI/F14は、コン
トロール信号C2、アドレス信号A2、データ信号D2
にしたがって主記憶装置をアクセスし、順次更新してい
く。主記憶装置よりシステムバスI/F14へ返される
制御信号は動作制御部12へ入力されるが、既にCPU
へのライト動作終了の信号を送出しているのでCPUバ
スI/F11への伝達は行わない。バッファ部13は保
持中の全データの書き込みが終了すると、コピーバック
終了信号DEを有効を示すよう変更する。なお、コピー
バック方式のライト動作は、競合しない他の動作と並列
して行われる。
式およびライトスルー方式の主記憶更新動作を説明する
。 (a)コピーバック方式 ライト動作においてCPUバスI/F11を介して与え
られるデータ種別信号GL1がローカルデータを示して
いた場合に、動作制御部12はコピーバック方式で主記
憶装置へのライト動作を行う。つまり、動作制御部12
は、ラッチ信号LTを有効とし、同じくCPUバスI/
F11を介して与えられるアドレス信号A1およびデー
タ信号D1をFIFOメモリで構成されるバッファ部1
3へ保持させる。バッファ部13は各信号を保持すると
、コピーバック終了信号DEを無効を示すよう変更する
。これと同時に動作制御部12は、CPUバスI/F1
1へライト動作終了に伴うコントロール信号C1を出力
する。CPUのライト動作はこれで終了する。その後、
動作制御部12は主記憶装置アクセスのためのコントロ
ール信号C2およびデータ種別信号GL2を出力する。 また、バッファ部13は動作制御部12からの次データ
出力信号NDにしたがって、保持しているデータをデー
タ信号D2として、同じく保持しているアドレスをアド
レス信号A2としてシステムバスI/F14へと順次出
力していく。そして、システムバスI/F14は、コン
トロール信号C2、アドレス信号A2、データ信号D2
にしたがって主記憶装置をアクセスし、順次更新してい
く。主記憶装置よりシステムバスI/F14へ返される
制御信号は動作制御部12へ入力されるが、既にCPU
へのライト動作終了の信号を送出しているのでCPUバ
スI/F11への伝達は行わない。バッファ部13は保
持中の全データの書き込みが終了すると、コピーバック
終了信号DEを有効を示すよう変更する。なお、コピー
バック方式のライト動作は、競合しない他の動作と並列
して行われる。
【0019】(b)ライトスルー方式
ライト動作においてCPUバスI/F11を介して与え
られたデータ種別信号GL1がグローバルデータを示し
ていた場合に、動作制御部12はライトスルー方式で主
記憶装置へのライト動作を行う。つまり、動作制御部1
2は、スルー信号THを有効としてCPUバスI/F1
1とシステムバスI/F14をバッファ部13にて直結
する。ここで、コピーバック終了信号DEが無効であっ
た場合には、コピーバック動作を保留し、ライトスルー
動作終了後に再開する。そして、バッファ部13を直結
状態とすると同時に動作制御部12は、CPUバスI/
F11を介して与えられたコントロール信号C1および
データ種別信号GL1にしたがって主記憶装置アクセス
のためのコントロール信号C2およびデータ種別信号G
L2をシステムバスI/F14へ出力する。バッファ部
13はスルー信号THが有効なので、CPUバスI/F
11を介して与えられるアドレス信号A1およびデータ
信号D1をそれぞれ即座にアドレス信号A2、データ信
号D2としてシステムバスI/F14へ供給する。この
システムバスI/F14は、コントロール信号C2、ア
ドレス信号A2、データ信号D2、データ種別信号GL
2にしたがって主記憶装置をアクセスし、データを更新
する。主記憶装置よりシステムバスI/F14へ返され
る制御信号は動作制御部12へ入力され、さらにCPU
I/F11を介してCPUへと伝達される。
られたデータ種別信号GL1がグローバルデータを示し
ていた場合に、動作制御部12はライトスルー方式で主
記憶装置へのライト動作を行う。つまり、動作制御部1
2は、スルー信号THを有効としてCPUバスI/F1
1とシステムバスI/F14をバッファ部13にて直結
する。ここで、コピーバック終了信号DEが無効であっ
た場合には、コピーバック動作を保留し、ライトスルー
動作終了後に再開する。そして、バッファ部13を直結
状態とすると同時に動作制御部12は、CPUバスI/
F11を介して与えられたコントロール信号C1および
データ種別信号GL1にしたがって主記憶装置アクセス
のためのコントロール信号C2およびデータ種別信号G
L2をシステムバスI/F14へ出力する。バッファ部
13はスルー信号THが有効なので、CPUバスI/F
11を介して与えられるアドレス信号A1およびデータ
信号D1をそれぞれ即座にアドレス信号A2、データ信
号D2としてシステムバスI/F14へ供給する。この
システムバスI/F14は、コントロール信号C2、ア
ドレス信号A2、データ信号D2、データ種別信号GL
2にしたがって主記憶装置をアクセスし、データを更新
する。主記憶装置よりシステムバスI/F14へ返され
る制御信号は動作制御部12へ入力され、さらにCPU
I/F11を介してCPUへと伝達される。
【0020】なお、図1のCPUバスI/F11に入力
されるデータ種別信号GL1はCPUが出力せずともキ
ャッシュメモリ1a内部で他の入力信号から生成しても
良いし、図3に示すアクセス制御部35,36はキャッ
シュメモリ内部に設けても構わない。また上記の実施例
ではデータの属性例としてグローバルデータとローカル
データとしたが、これに限らず他の属性も考えられる。 例えば、メモリ領域とライト動作のみ行うI/O領域(
以下、ライトI/O領域と呼称する)とに分割し、メモ
リ領域ならばライトスルー方式を用い、ライトI/O領
域ならばコピーバック方式を用いた場合を想定する。 そして、ライトI/O領域については、ノンキャッシャ
ブル領域に配置するより、キャッシング領域に配置しコ
ピーバック方式でライトする方がCPUの待ち時間の発
生を減少できるという利点がある。
されるデータ種別信号GL1はCPUが出力せずともキ
ャッシュメモリ1a内部で他の入力信号から生成しても
良いし、図3に示すアクセス制御部35,36はキャッ
シュメモリ内部に設けても構わない。また上記の実施例
ではデータの属性例としてグローバルデータとローカル
データとしたが、これに限らず他の属性も考えられる。 例えば、メモリ領域とライト動作のみ行うI/O領域(
以下、ライトI/O領域と呼称する)とに分割し、メモ
リ領域ならばライトスルー方式を用い、ライトI/O領
域ならばコピーバック方式を用いた場合を想定する。 そして、ライトI/O領域については、ノンキャッシャ
ブル領域に配置するより、キャッシング領域に配置しコ
ピーバック方式でライトする方がCPUの待ち時間の発
生を減少できるという利点がある。
【0021】
【発明の効果】以上説明したようにこの発明のキャッシ
ュメモリ装置は、キャッシュメモリ内部に保持されてい
るデータの属性にしたがって主記憶更新手法を選択的に
実行するため、各データの特徴に合致したライト動作が
可能となり、マルチプロセッサ構成の情報処理システム
での使用において、CPUの待ち時間の発生を減少させ
、かつ制御が容易なキャッシュメモリが得られるという
効果を有する。
ュメモリ装置は、キャッシュメモリ内部に保持されてい
るデータの属性にしたがって主記憶更新手法を選択的に
実行するため、各データの特徴に合致したライト動作が
可能となり、マルチプロセッサ構成の情報処理システム
での使用において、CPUの待ち時間の発生を減少させ
、かつ制御が容易なキャッシュメモリが得られるという
効果を有する。
【図1】この発明の一実施例を示したブロック図である
。
。
【図2】この発明のキャッシュメモリ装置に使用するタ
グメモリの構成例をした構成図である。
グメモリの構成例をした構成図である。
【図3】この発明のキャッシュメモリ装置を使用したマ
ルチプロセッサ構成の情報処理システムのブロック図で
ある。
ルチプロセッサ構成の情報処理システムのブロック図で
ある。
1a,1b キャッシュメモリ
11 CPUバスI/F
12 動作制御部
13 バッファ部
14 システムバスI/F
15 タグメモリ
16 データメモリ
17 アドレス信号制御部
18 タグアドレス比較部
Claims (1)
- 【請求項1】 アドレス信号をストアするためのアド
レス記憶手段とデータ信号をストアするためのデータ記
憶手段とを備えたキャッシュメモリであって、前記デー
タ記憶手段に格納されているデータの属性を記憶する属
性記憶手段と、予め定められた複数の主記憶更新手法を
選択実行可能な主記憶更新制御手段と、前記属性記憶手
段に格納されているデータの属性にしたがって前記主記
憶更新制御手段の内の一手法を選択実行させる選択手段
を含むことを特徴とするキャッシュメモリ装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3039775A JPH04296950A (ja) | 1991-03-06 | 1991-03-06 | キャッシュメモリ装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3039775A JPH04296950A (ja) | 1991-03-06 | 1991-03-06 | キャッシュメモリ装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04296950A true JPH04296950A (ja) | 1992-10-21 |
Family
ID=12562310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3039775A Pending JPH04296950A (ja) | 1991-03-06 | 1991-03-06 | キャッシュメモリ装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH04296950A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6484242B2 (en) | 2000-07-14 | 2002-11-19 | Hitachi, Ltd. | Cache access control system |
JP2005149290A (ja) * | 2003-11-18 | 2005-06-09 | Seiko Epson Corp | 情報処理装置およびキャッシュメモリ制御方法 |
-
1991
- 1991-03-06 JP JP3039775A patent/JPH04296950A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6484242B2 (en) | 2000-07-14 | 2002-11-19 | Hitachi, Ltd. | Cache access control system |
JP2005149290A (ja) * | 2003-11-18 | 2005-06-09 | Seiko Epson Corp | 情報処理装置およびキャッシュメモリ制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7120755B2 (en) | Transfer of cache lines on-chip between processing cores in a multi-core system | |
US6272602B1 (en) | Multiprocessing system employing pending tags to maintain cache coherence | |
US5043886A (en) | Load/store with write-intent for write-back caches | |
US5696937A (en) | Cache controller utilizing a state machine for controlling invalidations in a network with dual system busses | |
US6260117B1 (en) | Method for increasing efficiency in a multi-processor system and multi-processor system with increased efficiency | |
US20110173393A1 (en) | Cache memory, memory system, and control method therefor | |
JPH08328957A (ja) | マルチプロセッシング・システムにおけるキャッシュ・パフォーマンス向上のためのシステムおよび方法 | |
US6560681B1 (en) | Split sparse directory for a distributed shared memory multiprocessor system | |
JPH0619786A (ja) | キャッシュコヒーレンスを維持する方法及び装置 | |
US5263144A (en) | Method and apparatus for sharing data between processors in a computer system | |
JPH09237223A (ja) | バスブリッジを用いたコンピュータシステム | |
US5678025A (en) | Cache coherency maintenance of non-cache supporting buses | |
US10628312B2 (en) | Producer/consumer paced data transfer within a data processing system having a cache which implements different cache coherency protocols | |
US6973541B1 (en) | System and method for initializing memory within a data processing system | |
US5748938A (en) | System and method for maintaining coherency of information transferred between multiple devices | |
WO1997004392A1 (en) | Shared cache memory device | |
JPH03163640A (ja) | マルチプロセッサシステムおよびそれに用いるキャッシュメモリ | |
JPH04296950A (ja) | キャッシュメモリ装置 | |
US6021472A (en) | Information processing device and control method thereof | |
JPH06309231A (ja) | キャッシュメモリ制御方法 | |
US6401173B1 (en) | Method and apparatus for optimizing bcache tag performance by inferring bcache tag state from internal processor state | |
JPH09185547A (ja) | マルチプロセッサの制御方法及びその装置 | |
JPH03172943A (ja) | キャッシュメモリ制御方式 | |
JP2001043204A (ja) | キャッシュ・メモリ制御装置 | |
KR950012735B1 (ko) | 이단(Two Level) 캐쉬 메모리의 동질성 보장장치 및 방법 |