JPH01290052A - キャッシュメモリ - Google Patents
キャッシュメモリInfo
- Publication number
- JPH01290052A JPH01290052A JP63119353A JP11935388A JPH01290052A JP H01290052 A JPH01290052 A JP H01290052A JP 63119353 A JP63119353 A JP 63119353A JP 11935388 A JP11935388 A JP 11935388A JP H01290052 A JPH01290052 A JP H01290052A
- Authority
- JP
- Japan
- Prior art keywords
- block
- data
- instruction
- operand
- block data
- 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
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、命令フェッチに応答する命令ブロックデータ
と、オペランドフェッチに応答するオペランドブロック
データとを記憶するキャッシュメモリに於けるキャッジ
−メモリに関する。
と、オペランドフェッチに応答するオペランドブロック
データとを記憶するキャッシュメモリに於けるキャッジ
−メモリに関する。
従来tキャッジーメモリは、セットアンシアティブ方式
などを採用し、ある一定のブロックサイズで、ブロック
データのキャッジ−メモリへの登録を行い、さらにオペ
ランド用キャッジ−メモリ。
などを採用し、ある一定のブロックサイズで、ブロック
データのキャッジ−メモリへの登録を行い、さらにオペ
ランド用キャッジ−メモリ。
命令用キャッシュメモリからなる分離キャッジ−メモリ
構成を採ったシ、オペランドと命令のどちらとも記憶す
る共用キャッジ−メモリ構成を採っていた。また一般に
プログラムに於いて命令語は記憶領域上で連続性を有す
るがオペランドデータは、偏在もしくは不連続性を有す
ることが多い傾向にあることが知られている。
構成を採ったシ、オペランドと命令のどちらとも記憶す
る共用キャッジ−メモリ構成を採っていた。また一般に
プログラムに於いて命令語は記憶領域上で連続性を有す
るがオペランドデータは、偏在もしくは不連続性を有す
ることが多い傾向にあることが知られている。
前者の分離キャッジ−メモリ構成では一般にオペランド
用キャッシュメモリに於けるオペランドブロックデータ
のブロックサイズは、連続番地によるアクセス及び飛び
番地によるアクセスに対して、性能的にバランスのとれ
たブロックサイズを採り、命令用キャッジ−メモリに於
ける命令ブロツクデータのブロックサイズは、連続番地
によるアクセスに対して性能的に良いブロックサイズが
採られ、それぞれのキャッジ−メモリでのブロックサイ
ズは異っていることが多く、後者の共用キャッジ−メモ
リ構成では、オペランドブロックデータと命令ブロック
データのブロックサイズは。
用キャッシュメモリに於けるオペランドブロックデータ
のブロックサイズは、連続番地によるアクセス及び飛び
番地によるアクセスに対して、性能的にバランスのとれ
たブロックサイズを採り、命令用キャッジ−メモリに於
ける命令ブロツクデータのブロックサイズは、連続番地
によるアクセスに対して性能的に良いブロックサイズが
採られ、それぞれのキャッジ−メモリでのブロックサイ
ズは異っていることが多く、後者の共用キャッジ−メモ
リ構成では、オペランドブロックデータと命令ブロック
データのブロックサイズは。
同じブロックサイズを採っていた。
ところが、上述した従来のキャッジ−メモリ構成に於い
て、前者の分離キャッジ−メモリ構成を採ると、オペラ
ンド用キャッジ−メモリ、命令用キャッジ−メモリを独
立に2つ構成する必要が有シ、・・−ドウエア量が2倍
必要となる欠点があシ。
て、前者の分離キャッジ−メモリ構成を採ると、オペラ
ンド用キャッジ−メモリ、命令用キャッジ−メモリを独
立に2つ構成する必要が有シ、・・−ドウエア量が2倍
必要となる欠点があシ。
後者の共用キャッジ−メモリ構成では、ブロックサイズ
がオペランド、命令ともに同じ大きさとな9、それぞれ
のブロックデータの特性を生かすことが出きす、また命
令・ぐソファを、キャッジ−メモリの上位に設ける場合
など、下位のキャツンーメモリが分離キャノン−メモリ
構成であれば、それぞれの特性を生かすブロックサイズ
を選択できるが共用キャッジ−メモリ構成であると、命
令バッファのブロックサイズもキャッシュメモリ上のブ
ロックサイズと同じになシ、やはりそれぞれの特性を生
かすことが出来ないという欠点がある。
がオペランド、命令ともに同じ大きさとな9、それぞれ
のブロックデータの特性を生かすことが出きす、また命
令・ぐソファを、キャッジ−メモリの上位に設ける場合
など、下位のキャツンーメモリが分離キャノン−メモリ
構成であれば、それぞれの特性を生かすブロックサイズ
を選択できるが共用キャッジ−メモリ構成であると、命
令バッファのブロックサイズもキャッシュメモリ上のブ
ロックサイズと同じになシ、やはりそれぞれの特性を生
かすことが出来ないという欠点がある。
そこで2本発明の技術的課題は、上記欠点に鑑み2分離
キャッジーメモリ構成のようにハードウェア量を2倍必
要せず、共用キャッジ−メモリ構成のように各々のブロ
ックサイズを同じにすることなしに、最適なブロックサ
イズを設定することができる情報処理装置を提供するこ
とである。
キャッジーメモリ構成のようにハードウェア量を2倍必
要せず、共用キャッジ−メモリ構成のように各々のブロ
ックサイズを同じにすることなしに、最適なブロックサ
イズを設定することができる情報処理装置を提供するこ
とである。
本発明によれば、オペランドフェッチ要求に応答するオ
ペランドブロックデータと、該オ被ランドブロックデー
タのブロックサイズを基本ブロックサイズとして、該基
本ブロックサイズの2n倍の大きさのブロックサイズを
有し、命令フェッチ要求に応答する前記命令ブロックデ
ータとを、前記オ被ランドブロックデータ及び、前記命
令ブロックデータの各々のブロックサイズを、各々セッ
トアドレスとして記憶することを特徴としたキャッシュ
メモリが得られる。
ペランドブロックデータと、該オ被ランドブロックデー
タのブロックサイズを基本ブロックサイズとして、該基
本ブロックサイズの2n倍の大きさのブロックサイズを
有し、命令フェッチ要求に応答する前記命令ブロックデ
ータとを、前記オ被ランドブロックデータ及び、前記命
令ブロックデータの各々のブロックサイズを、各々セッ
トアドレスとして記憶することを特徴としたキャッシュ
メモリが得られる。
次に本発明の実施例について図面を参照して説明をする
。
。
尚、説明にあたり第3図に示す構成を例とすることにす
る。
る。
まず2通常のオペランドフェッチ及び命令フェッチの動
作から説明する。
作から説明する。
オペランドフェッチは、データ処理装置1からオペラン
ドフェッチ要求線101を介してキャッジ−メモリ3(
共用キャッジ−メモリ)に対して出され、キャッジ−メ
モリ3に該当するデータを含んだオペランドブロックデ
ータが存在した場合。
ドフェッチ要求線101を介してキャッジ−メモリ3(
共用キャッジ−メモリ)に対して出され、キャッジ−メ
モリ3に該当するデータを含んだオペランドブロックデ
ータが存在した場合。
オペランドデータ線302を介してデータ処理装置1に
該当データが返される。逆に該当するデータを含んだオ
ペランドブロックデータが存在しなかった場合には、主
記憶装置4に対して、オペランドブロックロード要求が
、主記憶アクセス線303を介して出され主記憶装置4
から読み出された該当するブロックデータをデータ線4
01を介してキヤノンユメモリ3に登録する。
該当データが返される。逆に該当するデータを含んだオ
ペランドブロックデータが存在しなかった場合には、主
記憶装置4に対して、オペランドブロックロード要求が
、主記憶アクセス線303を介して出され主記憶装置4
から読み出された該当するブロックデータをデータ線4
01を介してキヤノンユメモリ3に登録する。
次に命令フェッチであるが、命令フェッチは。
まずデータ処理装置1からの命令フェッチ要求を命令フ
ェッチ要求線102を介して、命令バッファ2に対して
送出する。命令フェッチ要求を受は付けた命令バッファ
2は、該当する命令ブロックデータが存在すれば、命令
データ線201を介して、データ処理装置1に対して命
令語がフェッチされる。もし命令バッファ2に該当する
命令ブロックデータが存在しなかった場合、命令バッフ
ァ2よシ命令ブロックデータフェッチ要求が、命令ブロ
ックフェッチ要求線202を介して、キャッジ−メモリ
3に出される。
ェッチ要求線102を介して、命令バッファ2に対して
送出する。命令フェッチ要求を受は付けた命令バッファ
2は、該当する命令ブロックデータが存在すれば、命令
データ線201を介して、データ処理装置1に対して命
令語がフェッチされる。もし命令バッファ2に該当する
命令ブロックデータが存在しなかった場合、命令バッフ
ァ2よシ命令ブロックデータフェッチ要求が、命令ブロ
ックフェッチ要求線202を介して、キャッジ−メモリ
3に出される。
命令ブロックフェッチ要求に該当する命令ブロックデー
タがキャッジ−メモリ3上に存在すれば。
タがキャッジ−メモリ3上に存在すれば。
命令ブロックデータは命令バッファ2に命令ブロックデ
ータ線301を介して返され登録される。
ータ線301を介して返され登録される。
もし、キャッジ−メモリ3上にも該当する命令ブロック
データが存在しなかった場合は、キャッジ−メモリ3か
ら主記憶アクセス線303を介して主記憶装置4に対し
て命令ブロックロード要求が出され、主記憶装置4から
読み出された該当する命令ブロックデータをデータ線4
01を介して。
データが存在しなかった場合は、キャッジ−メモリ3か
ら主記憶アクセス線303を介して主記憶装置4に対し
て命令ブロックロード要求が出され、主記憶装置4から
読み出された該当する命令ブロックデータをデータ線4
01を介して。
キャノン−メモリ3に登録するとともに命令バッファ2
に対しても命令ブロックデータの転送及び登録を行う。
に対しても命令ブロックデータの転送及び登録を行う。
本発明は、前述のオペランドブロックデータと。
命令ブロックデータとが異ったブロックサイズであって
、それらが同一キャラシーメモリ3上に登録管理される
もので引き続いて、その点について説明する。
、それらが同一キャラシーメモリ3上に登録管理される
もので引き続いて、その点について説明する。
例として、命令ブロックデータのブロックサイズを4N
バイト、オペランドブロックデータのブロックサイズを
Nバイトとした場合を用いることとする。
バイト、オペランドブロックデータのブロックサイズを
Nバイトとした場合を用いることとする。
第1図に示す様にキャッジ−メモリ3にデータバッファ
31とアドレスタグ記憶部32と有効情報記憶部33と
、ブロック情報記憶部34を設ける。
31とアドレスタグ記憶部32と有効情報記憶部33と
、ブロック情報記憶部34を設ける。
データバッファ31はNバイトのデータブロック(オペ
ランドブロックデータ)を基本ブロックとして構成され
、アドレスタグ記憶部32は、前記基本ブロックに1対
1対応でアドレス上位部を持ち、有効情報記憶部33は
前述の基本ブロックごとに1ビツトの有効ビットを持ち
、それらを命令ブロックデータのブロックサイズ(オペ
ランドブロックデータの22倍)ごとに折シたたみ、そ
れらを1度に読み出し及び書き込み可能となるような構
成で記憶し、ブロック情報記憶部34は、命令ブロック
データ単位に1ビツトの情報を持ち命令ブロックデータ
なのかオペランドブロックデータなのかの区別を行い、
該情報も前述の有効ビットと同様に読み出し及び書き込
みが出来る。
ランドブロックデータ)を基本ブロックとして構成され
、アドレスタグ記憶部32は、前記基本ブロックに1対
1対応でアドレス上位部を持ち、有効情報記憶部33は
前述の基本ブロックごとに1ビツトの有効ビットを持ち
、それらを命令ブロックデータのブロックサイズ(オペ
ランドブロックデータの22倍)ごとに折シたたみ、そ
れらを1度に読み出し及び書き込み可能となるような構
成で記憶し、ブロック情報記憶部34は、命令ブロック
データ単位に1ビツトの情報を持ち命令ブロックデータ
なのかオペランドブロックデータなのかの区別を行い、
該情報も前述の有効ビットと同様に読み出し及び書き込
みが出来る。
これらの情報を持つことによって、たとえば第2図のに
示すようにデータバッファ31にオペランドアクセス(
a)があると、そのオペランドアクセス(a)に該当す
る有効ビットを有効情報記憶部33から、ブロック情報
をブロック情報記憶部34から読み出しさらにアドレス
タグ記憶部32からアドレス上位部を読み出し、第1図
に示すようにアドレスコンベア回路35でアクセスアド
レス王位部とアドレスタグ記憶部32から読み出された
アドレス上位部とを比較し、コンベア回路35で一致が
とれ、さらに有効情報記憶部33から読み出された有効
情報が” 1 ”(有効)であってANDゲート37で
ANDがとれ、さらにブロック情報記憶部34から読み
出されたブロック情報が0″でオペランドブロックデー
タであることを示していてデータ処理装置1からのブロ
ック情報12(”オペランドアクセスn =tl O″
′)とをコンベア回路38で一致がとれ、 ANDケゝ
−ト39でANDがとれた場合に該当データを含んだブ
ロックデータが存在したことになシ逆に有効ビットが′
0″′であったp、70ツク情報が(″命令ブロック″
=″1″)であったシした場合には、該当データを含ん
だブロックデータが存在しなかったことになる。
示すようにデータバッファ31にオペランドアクセス(
a)があると、そのオペランドアクセス(a)に該当す
る有効ビットを有効情報記憶部33から、ブロック情報
をブロック情報記憶部34から読み出しさらにアドレス
タグ記憶部32からアドレス上位部を読み出し、第1図
に示すようにアドレスコンベア回路35でアクセスアド
レス王位部とアドレスタグ記憶部32から読み出された
アドレス上位部とを比較し、コンベア回路35で一致が
とれ、さらに有効情報記憶部33から読み出された有効
情報が” 1 ”(有効)であってANDゲート37で
ANDがとれ、さらにブロック情報記憶部34から読み
出されたブロック情報が0″でオペランドブロックデー
タであることを示していてデータ処理装置1からのブロ
ック情報12(”オペランドアクセスn =tl O″
′)とをコンベア回路38で一致がとれ、 ANDケゝ
−ト39でANDがとれた場合に該当データを含んだブ
ロックデータが存在したことになシ逆に有効ビットが′
0″′であったp、70ツク情報が(″命令ブロック″
=″1″)であったシした場合には、該当データを含ん
だブロックデータが存在しなかったことになる。
また同様にして第2図■に示すように、データバッファ
31に命令アクセス(b)があると前述の様に有効ビッ
トが′1″であって、ブロック情報がtl I IIの
場合に該当する命令ブロックデータが存在したことにな
p、有効ビットが′O″であったり、ブロック情報がI
I O17であったシした場合には、該当する命令ブロ
ックデータが存在しなかったことKなる。
31に命令アクセス(b)があると前述の様に有効ビッ
トが′1″であって、ブロック情報がtl I IIの
場合に該当する命令ブロックデータが存在したことにな
p、有効ビットが′O″であったり、ブロック情報がI
I O17であったシした場合には、該当する命令ブロ
ックデータが存在しなかったことKなる。
第2図■に示すケースは[F]に示す状態で、オペラン
ドブロックデータの存在するキャッシーメそり3上のエ
ントリーに命令アクセス(b)があったケースで、前述
のように、コンベア回路38でのブロック情報の一致が
とれないので、キャラシーメモリ3上の命令プロツクデ
ータネ在となシ、主記憶装置4から読み出した命令ブロ
ックデータ(4N バイト)を、ブロックサイズをセッ
トアドレスとした位置に登録するとともに、有効情報を
4ビツトとも1とし、ブロック情報を“0”から1”と
する。
ドブロックデータの存在するキャッシーメそり3上のエ
ントリーに命令アクセス(b)があったケースで、前述
のように、コンベア回路38でのブロック情報の一致が
とれないので、キャラシーメモリ3上の命令プロツクデ
ータネ在となシ、主記憶装置4から読み出した命令ブロ
ックデータ(4N バイト)を、ブロックサイズをセッ
トアドレスとした位置に登録するとともに、有効情報を
4ビツトとも1とし、ブロック情報を“0”から1”と
する。
第2図■に示すケースは■に示す状態で、命令ブロック
データの存在するキャッシュメモリ3上のエントリーに
オペランドアクセスがあったケースで、前述の様にキャ
ノン−メモリ上にオペランドブロックデータネ在となシ
、主記憶装置4がら読み出したオペランドブロックデー
タ(Nバイト)をブロックサイズをセットアドレスとし
た位置に登録するとともに、有効情報を登録ブロックデ
ータに対応するピットをu 117にしその他の3ブロ
ツクの有効情報を3ビツト”0″(無効化)とし。
データの存在するキャッシュメモリ3上のエントリーに
オペランドアクセスがあったケースで、前述の様にキャ
ノン−メモリ上にオペランドブロックデータネ在となシ
、主記憶装置4がら読み出したオペランドブロックデー
タ(Nバイト)をブロックサイズをセットアドレスとし
た位置に登録するとともに、有効情報を登録ブロックデ
ータに対応するピットをu 117にしその他の3ブロ
ツクの有効情報を3ビツト”0″(無効化)とし。
さらにブロック情報を“1”から°′0″とする。
以上のようにするとそれぞれの異った大きさのブロック
データを各々同一キャッシュメモリ3上で独立して処理
可能となる。
データを各々同一キャッシュメモリ3上で独立して処理
可能となる。
以上説明したように2本発明はキャノン−メモリに2種
類のブロックサイズのブロックデータを登録可能とする
ことによって2分離キャッジーメモリ構成のように、ハ
ードウェア量を2倍必要とせず、共用キャッジ−メモリ
構成のようにそれぞれのブロックサイズを同じくするこ
となしに、それぞれに最適なブロックサイズを設定可能
とすることで、性能的に優れたキャッジ−メモリを提供
することができる効果がある。
類のブロックサイズのブロックデータを登録可能とする
ことによって2分離キャッジーメモリ構成のように、ハ
ードウェア量を2倍必要とせず、共用キャッジ−メモリ
構成のようにそれぞれのブロックサイズを同じくするこ
となしに、それぞれに最適なブロックサイズを設定可能
とすることで、性能的に優れたキャッジ−メモリを提供
することができる効果がある。
以下ポ臼
第1図は本発明の実施例であシ、第2図■〜■は第1図
における2種類のブロックデータのブロックサイズの態
様を示す具体例であり、第3図は本実施例の一構成例で
ある。 1・・・データ処理装置、2・・・命令バッファ、3・
・・キャッジ−メモリ、4・・・主記憶装置、11・・
・アドレスレジスタ、12・・・ブロック情報、31・
・・データ・ぐソフア、32・・・アドレスタグ記憶部
、33・・・有効情報記憶部、34・・・ブロック情報
記憶部。 35.38・・・コンベア回路、37.39・・・AN
Dグー)、、36・・・セレクタ、101・・・オ波ラ
ンドフェッチ要求線、102・・・命令フェッチ要求線
、201・・・命令データ線、202・・・命令ブロッ
クフェッチ要求線、301・・・命令ブロックデータ線
、302・・・オペランドデータ線、303・・・主記
憶アクセス線、401・・・データ線。 ■
における2種類のブロックデータのブロックサイズの態
様を示す具体例であり、第3図は本実施例の一構成例で
ある。 1・・・データ処理装置、2・・・命令バッファ、3・
・・キャッジ−メモリ、4・・・主記憶装置、11・・
・アドレスレジスタ、12・・・ブロック情報、31・
・・データ・ぐソフア、32・・・アドレスタグ記憶部
、33・・・有効情報記憶部、34・・・ブロック情報
記憶部。 35.38・・・コンベア回路、37.39・・・AN
Dグー)、、36・・・セレクタ、101・・・オ波ラ
ンドフェッチ要求線、102・・・命令フェッチ要求線
、201・・・命令データ線、202・・・命令ブロッ
クフェッチ要求線、301・・・命令ブロックデータ線
、302・・・オペランドデータ線、303・・・主記
憶アクセス線、401・・・データ線。 ■
Claims (1)
- 1、オペランドフェッチ要求に応答するオペランドブロ
ックデータと、該オペランドブロックデータのブロック
サイズを基本ブロックサイズとして、該基本ブロックサ
イズの2^n倍の大きさのブロックサイズを有し、命令
フェッチ要求に応答する前記命令ブロックデータとを、
前記オペランドブロックデータ及び、前記命令ブロック
データの各各のブロックサイズを、各々セットアドレス
として記憶することを特徴としたキャッシュメモリ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63119353A JPH0727490B2 (ja) | 1988-05-18 | 1988-05-18 | キャッシュメモリ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63119353A JPH0727490B2 (ja) | 1988-05-18 | 1988-05-18 | キャッシュメモリ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01290052A true JPH01290052A (ja) | 1989-11-21 |
JPH0727490B2 JPH0727490B2 (ja) | 1995-03-29 |
Family
ID=14759392
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63119353A Expired - Lifetime JPH0727490B2 (ja) | 1988-05-18 | 1988-05-18 | キャッシュメモリ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0727490B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006510992A (ja) * | 2002-12-17 | 2006-03-30 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ライン幅を選択的に変更することが可能なメモリ |
-
1988
- 1988-05-18 JP JP63119353A patent/JPH0727490B2/ja not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006510992A (ja) * | 2002-12-17 | 2006-03-30 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ライン幅を選択的に変更することが可能なメモリ |
JP4741844B2 (ja) * | 2002-12-17 | 2011-08-10 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ライン幅を選択的に変更することが可能なメモリ |
Also Published As
Publication number | Publication date |
---|---|
JPH0727490B2 (ja) | 1995-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5721874A (en) | Configurable cache with variable, dynamically addressable line sizes | |
JPH04217051A (ja) | マイクロプロセッサ | |
JP2818415B2 (ja) | バッファ記憶装置 | |
JP2003501747A (ja) | プログラマブルsram及びdramキャッシュ・インタフェース | |
JP2773471B2 (ja) | 情報処理装置 | |
US5161219A (en) | Computer system with input/output cache | |
JPH0282330A (ja) | ムーブアウト・システム | |
US6393498B1 (en) | System for reducing processor workloads with memory remapping techniques | |
JPH01290052A (ja) | キャッシュメモリ | |
US5933856A (en) | System and method for processing of memory data and communication system comprising such system | |
JPH01125644A (ja) | データ転送装置 | |
JPH07234819A (ja) | キャッシュメモリ | |
JPS61214039A (ja) | キヤツシユメモリ | |
JP3155840B2 (ja) | マイクロプロセッサ | |
JPS6135583B2 (ja) | ||
JPH02230324A (ja) | マイクロプログラム制御装置 | |
JPH03269650A (ja) | バッファ記憶装置 | |
JPH04291642A (ja) | キャッシュ制御方式 | |
JPH01276348A (ja) | 2次キャッシュメモリ方式 | |
JPH03127126A (ja) | 情報処理装置 | |
JPH077355B2 (ja) | 情報処理装置 | |
JPH03156652A (ja) | マイクロプロセッサ | |
JPH0243692A (ja) | マイクロプロセッサ及びそのキャッシュメモリ | |
JPS61210448A (ja) | 計算機システム | |
JPH0934776A (ja) | 情報処理装置および方法 |