JPH05158795A - キャッシュメモリシステム - Google Patents
キャッシュメモリシステムInfo
- Publication number
- JPH05158795A JPH05158795A JP3348636A JP34863691A JPH05158795A JP H05158795 A JPH05158795 A JP H05158795A JP 3348636 A JP3348636 A JP 3348636A JP 34863691 A JP34863691 A JP 34863691A JP H05158795 A JPH05158795 A JP H05158795A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- block size
- memory
- block
- address counter
- 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
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【目的】 プログラム毎に適切なブロックサイズの値を
設定することができるキャッシュメモリシステムを提供
すること。 【構成】 最小ブロックサイズのときに必要十分な記憶
容量を有するキャッシュタグメモリ11と、最大ブロッ
クサイズのときに必要十分なビット幅を持つブロック内
アドレスカウンタ13と、キャッシュメモリのブロック
サイズを指定するブロックサイズ指定手段10と、キャ
ッシュミス時に記ブロック内アドレスカウンタ13、キ
ャッシュタグメモリ11及びキャッシュデータメモリ1
2を制御するキャッシュ制御回路17とを有している。 【効果】 ブロックサイズが固定されているキャッシュ
メモリシステムに比べて高いキャッシュヒット率を得る
ことができ、コンピュータシステムの処理速度を高める
ことができる。
設定することができるキャッシュメモリシステムを提供
すること。 【構成】 最小ブロックサイズのときに必要十分な記憶
容量を有するキャッシュタグメモリ11と、最大ブロッ
クサイズのときに必要十分なビット幅を持つブロック内
アドレスカウンタ13と、キャッシュメモリのブロック
サイズを指定するブロックサイズ指定手段10と、キャ
ッシュミス時に記ブロック内アドレスカウンタ13、キ
ャッシュタグメモリ11及びキャッシュデータメモリ1
2を制御するキャッシュ制御回路17とを有している。 【効果】 ブロックサイズが固定されているキャッシュ
メモリシステムに比べて高いキャッシュヒット率を得る
ことができ、コンピュータシステムの処理速度を高める
ことができる。
Description
【0001】
【産業上の利用分野】本発明はキャッシュメモリシステ
ムに関し、特にキャッシュメモリのブロックサイズを随
時変更することができるキャッシュメモリシステムに関
する。
ムに関し、特にキャッシュメモリのブロックサイズを随
時変更することができるキャッシュメモリシステムに関
する。
【0002】
【従来の技術】一般に、コンピュータシステムにおいて
は、処理業務の継続性から、一度アクセスされた情報が
近い将来に再びアクセスされる確率が高い。従って、主
記憶の見かけ上のアクセス速度を高速化するために、デ
ータを適当な大きさのブロックに分けてアクセスタイム
が短いキャッシュメモリに格納するキャッシュメモリシ
ステムが広く採用されている。
は、処理業務の継続性から、一度アクセスされた情報が
近い将来に再びアクセスされる確率が高い。従って、主
記憶の見かけ上のアクセス速度を高速化するために、デ
ータを適当な大きさのブロックに分けてアクセスタイム
が短いキャッシュメモリに格納するキャッシュメモリシ
ステムが広く採用されている。
【0003】図4は従来のこの種のキャッシュメモリシ
ステムのブロック構成図である。キャッシュタグメモリ
1と、キャッシュタグメモリ1のブロックサイズ倍の記
憶容量を持ったキャッシュデータメモリ2と、ブロック
サイズ分の幅を持ったブロック内アドレスカウンタ3
と、キャッシュ制限回路4と、主記憶5とから構成され
ていて、ブロックサイズが一定の値に固定されている場
合と、システムの起動時にブロックサイズを変更するこ
とができる場合とがある。
ステムのブロック構成図である。キャッシュタグメモリ
1と、キャッシュタグメモリ1のブロックサイズ倍の記
憶容量を持ったキャッシュデータメモリ2と、ブロック
サイズ分の幅を持ったブロック内アドレスカウンタ3
と、キャッシュ制限回路4と、主記憶5とから構成され
ていて、ブロックサイズが一定の値に固定されている場
合と、システムの起動時にブロックサイズを変更するこ
とができる場合とがある。
【0004】
【発明が解決しようとする課題】キャッシュメモリシス
テムにおいて、ブロックサイズはキャッシュヒット率と
密接な関係にあって、動作プログラムの性質によりキャ
ッシュヒット率が最大になるブロックサイズが異なって
いる。しかし、上述した従来のキャッシュメモリシステ
ムでは、ブロックサイズが固定、またはシステムを一旦
起動した後にブロックサイズを変更することができない
ために、動作プログラムに応じてキャッシュヒット率が
最大になるようにブロックサイズを設定することができ
ないという欠点があった。
テムにおいて、ブロックサイズはキャッシュヒット率と
密接な関係にあって、動作プログラムの性質によりキャ
ッシュヒット率が最大になるブロックサイズが異なって
いる。しかし、上述した従来のキャッシュメモリシステ
ムでは、ブロックサイズが固定、またはシステムを一旦
起動した後にブロックサイズを変更することができない
ために、動作プログラムに応じてキャッシュヒット率が
最大になるようにブロックサイズを設定することができ
ないという欠点があった。
【0005】本発明はこのような従来の問題を解決する
ものであり、プログラム毎に適切なブロックサイズの値
を設定することができるキャッシュメモリシステムを提
供することを目的をする。
ものであり、プログラム毎に適切なブロックサイズの値
を設定することができるキャッシュメモリシステムを提
供することを目的をする。
【0006】
【課題を解決するための手段】上記の目的を達成するた
めに、本発明においては、キャッシュデータを保持する
キャッシュデータメモリを有するキャッシュメモリシス
テムにおいて、最小ブロックサイズのときに必要十分な
記憶容量を有するキャッシュタグメモリと、最大ブロッ
クサイズのときに必要十分なビット幅を持つブロック内
アドレスカウンタと、キャッシュメモリのブロックサイ
ズを指定するブロックサイズ指定手段と、キャッシュミ
ス時に前記ブロック内アドレスカウンタ、前記キャッシ
ュタグメモリ及び前記キャッシュデータメモリを制御す
るキャッシュ制御回路とを有している。
めに、本発明においては、キャッシュデータを保持する
キャッシュデータメモリを有するキャッシュメモリシス
テムにおいて、最小ブロックサイズのときに必要十分な
記憶容量を有するキャッシュタグメモリと、最大ブロッ
クサイズのときに必要十分なビット幅を持つブロック内
アドレスカウンタと、キャッシュメモリのブロックサイ
ズを指定するブロックサイズ指定手段と、キャッシュミ
ス時に前記ブロック内アドレスカウンタ、前記キャッシ
ュタグメモリ及び前記キャッシュデータメモリを制御す
るキャッシュ制御回路とを有している。
【0007】
【実施例】以下本発明の実施例を図面によって説明す
る。図1は本発明の一実施例における構成を示すブロッ
ク図である。同図において、10はキャッシュメモリの
ブロックサイズを指定するブロックサイズ指定手段、1
1は最小ブロックサイズのときに必要十分な記憶容量を
有するキャッシュタグサイズメモリ、12はキャッシュ
ミス時に主記憶18から読み込んだデータを保持するキ
ャッシュデータメモリ、13は最大ブロックサイズのと
きに必要十分なビット幅を持つブロック内アドレスカウ
ンタ、14はブロックサイズ指定手段10の構成要素で
あって、命令をアクセスするときのブロックサイズを記
憶し、ソフトウェアによって任意の時点でブロックサイ
ズを変更することができる命令ブロックサイズレジス
タ、15は同じくブロックサイズ指定手段10の構成要
素であって、データをアクセスするときのブロックサイ
ズを記憶し、ソフトウェアによって任意の時点でブロッ
クサイズを変更することができるデータブロックサイズ
レジスタ、16も同じくブロックサイズ指定手段10の
構成要素であって、アクセスが命令読み込み時には命令
ブロックサイズレジスタ14の設定値を、データ読み込
み時にはデータブロックサイズレジスタ15の設定値を
選択するブロックサイズセレクタ、17はキャッシュミ
ス時にブロック内アドレスカウンタ13、キャッシュタ
グメモリ11及びキャッシュデータメモリ12を制御す
るキャッシュ制御回路、18は主記憶である。
る。図1は本発明の一実施例における構成を示すブロッ
ク図である。同図において、10はキャッシュメモリの
ブロックサイズを指定するブロックサイズ指定手段、1
1は最小ブロックサイズのときに必要十分な記憶容量を
有するキャッシュタグサイズメモリ、12はキャッシュ
ミス時に主記憶18から読み込んだデータを保持するキ
ャッシュデータメモリ、13は最大ブロックサイズのと
きに必要十分なビット幅を持つブロック内アドレスカウ
ンタ、14はブロックサイズ指定手段10の構成要素で
あって、命令をアクセスするときのブロックサイズを記
憶し、ソフトウェアによって任意の時点でブロックサイ
ズを変更することができる命令ブロックサイズレジス
タ、15は同じくブロックサイズ指定手段10の構成要
素であって、データをアクセスするときのブロックサイ
ズを記憶し、ソフトウェアによって任意の時点でブロッ
クサイズを変更することができるデータブロックサイズ
レジスタ、16も同じくブロックサイズ指定手段10の
構成要素であって、アクセスが命令読み込み時には命令
ブロックサイズレジスタ14の設定値を、データ読み込
み時にはデータブロックサイズレジスタ15の設定値を
選択するブロックサイズセレクタ、17はキャッシュミ
ス時にブロック内アドレスカウンタ13、キャッシュタ
グメモリ11及びキャッシュデータメモリ12を制御す
るキャッシュ制御回路、18は主記憶である。
【0008】次に、上記実施例の動作について図面を参
照して説明する。ブロック内アドレスカウンタ13はア
ドレス信号a中の下位の最大ブロックサイズ分のアドレ
スを入力し、最小ブロックサイズ分のブロック内アドレ
ス信号bをキャッシュデータメモリ12へ出力し、残り
のアドレス信号cをキャッシュタグメモリ11及びキャ
ッシュデータメモリ12へ出力する。通常の動作時は入
力アドレスをそのまま出力するスルー動作状態である
が、キャッシュミス時に主記憶18のデータを読み込む
ときにはブロック内アドレスを出力し、主記憶18から
1ワード読み込む度にカウントアップするカウントアッ
プ動作状態になる。スルー動作とカウントアップ動作の
切り替えは、キャッシュ制御回路17が出力するブロッ
ク内アドレスカウンタ動作モード指定信号eによって行
われる。キャッシュミス時には、先ず、ブロックサイズ
セレクタ16から出力されるブロックサイズ指定信号d
による現在のブロックサイズ相当のデータ転送を主記憶
18に対して要求する。次に、主記憶18からデータが
1ワード転送される度に、キャッシュ制御回路17はキ
ャッシュデータメモリ制御信号gにより、キャッシュデ
ータメモリ12への書き込み指示をする。また、キャッ
シュタグメモリ制御信号fにより、キャッシュタグメモ
リ11への書き込み指示をする。その後、ブロック内ア
ドレスカウンタ動作モード指定信号eにより、ブロック
内アドレスカウンタ13のカウントアップ指示をする。
以上の動作を、現在指示されているブロックサイズに相
当する回数だけ繰り返す。
照して説明する。ブロック内アドレスカウンタ13はア
ドレス信号a中の下位の最大ブロックサイズ分のアドレ
スを入力し、最小ブロックサイズ分のブロック内アドレ
ス信号bをキャッシュデータメモリ12へ出力し、残り
のアドレス信号cをキャッシュタグメモリ11及びキャ
ッシュデータメモリ12へ出力する。通常の動作時は入
力アドレスをそのまま出力するスルー動作状態である
が、キャッシュミス時に主記憶18のデータを読み込む
ときにはブロック内アドレスを出力し、主記憶18から
1ワード読み込む度にカウントアップするカウントアッ
プ動作状態になる。スルー動作とカウントアップ動作の
切り替えは、キャッシュ制御回路17が出力するブロッ
ク内アドレスカウンタ動作モード指定信号eによって行
われる。キャッシュミス時には、先ず、ブロックサイズ
セレクタ16から出力されるブロックサイズ指定信号d
による現在のブロックサイズ相当のデータ転送を主記憶
18に対して要求する。次に、主記憶18からデータが
1ワード転送される度に、キャッシュ制御回路17はキ
ャッシュデータメモリ制御信号gにより、キャッシュデ
ータメモリ12への書き込み指示をする。また、キャッ
シュタグメモリ制御信号fにより、キャッシュタグメモ
リ11への書き込み指示をする。その後、ブロック内ア
ドレスカウンタ動作モード指定信号eにより、ブロック
内アドレスカウンタ13のカウントアップ指示をする。
以上の動作を、現在指示されているブロックサイズに相
当する回数だけ繰り返す。
【0009】次に、図2を参照してブロックサイズが変
更された場合のキャッシュタグメモリ11とキャッシュ
データメモリ12の対応関係について説明する。いま、
最小ブロックサイズをmワード、このときのブロック数
をnとすると、図面に示すようにキャッシュタグメモリ
11はn個のエントリT1、T2、…、Tnを持ち、そ
れぞれキャッシュデータメモリ12のD1、D2、…、
Dnの各ブロックに対応するタグデータを保持してい
る。ここで、ブロックサイズがmワードから2mワード
に変更され、T1に対するアドレスでキャッシュミスが
発生すると、主記憶18から2mワード分のデータがキ
ャッシュデータメモリ12のD1、D2へ格納される。
この場合、ブロック内アドレスカウンタ13からのアド
レス信号のうち、最小ブロックサイズ分のアドレスビッ
トを越えるアドレスビットがキャッシュタグメモリ11
に入力されているので、mワード分のデータ転送が終了
すると、キャッシュタグメモリ11へ入力されているア
ドレスもカウントアップされ、キャッシュデータメモリ
12のエントリT1、T2には同じタグ情報が書き込ま
れる。この状態で再びブロックサイズがmワードに変更
され、T2にヒットするアクセスがあると、D2のブロ
ックに格納されている正しいデータを供給することがで
きる。したがって、以上のような実施例の構成によれ
ば、キャッシュ動作に影響を与えることなく、任意にブ
ロックサイズを変更することができるので、走行させる
プログラム毎に最大のキャッシュヒット率になるブロッ
クサイズを設定することができる。
更された場合のキャッシュタグメモリ11とキャッシュ
データメモリ12の対応関係について説明する。いま、
最小ブロックサイズをmワード、このときのブロック数
をnとすると、図面に示すようにキャッシュタグメモリ
11はn個のエントリT1、T2、…、Tnを持ち、そ
れぞれキャッシュデータメモリ12のD1、D2、…、
Dnの各ブロックに対応するタグデータを保持してい
る。ここで、ブロックサイズがmワードから2mワード
に変更され、T1に対するアドレスでキャッシュミスが
発生すると、主記憶18から2mワード分のデータがキ
ャッシュデータメモリ12のD1、D2へ格納される。
この場合、ブロック内アドレスカウンタ13からのアド
レス信号のうち、最小ブロックサイズ分のアドレスビッ
トを越えるアドレスビットがキャッシュタグメモリ11
に入力されているので、mワード分のデータ転送が終了
すると、キャッシュタグメモリ11へ入力されているア
ドレスもカウントアップされ、キャッシュデータメモリ
12のエントリT1、T2には同じタグ情報が書き込ま
れる。この状態で再びブロックサイズがmワードに変更
され、T2にヒットするアクセスがあると、D2のブロ
ックに格納されている正しいデータを供給することがで
きる。したがって、以上のような実施例の構成によれ
ば、キャッシュ動作に影響を与えることなく、任意にブ
ロックサイズを変更することができるので、走行させる
プログラム毎に最大のキャッシュヒット率になるブロッ
クサイズを設定することができる。
【0010】図3は本発明の他の実施例の構成を示すブ
ロック図である。ブロックサイズ指定手段10は、論理
アドレスから物理アドレスへ変換し、ブロックサイズを
出力するTLB19から構成される。TLB19はアク
セスするアドレスを論理アドレスから物理アドレスへ変
換し、変換後の物理アドレスをアドレス信号aとして出
力する。また、変換した物理アドレスに対応するキャッ
シュのブロックサイズをブロックサイズ指定信号dとし
てキャッシュ制御回路17へ出力する。したがって、T
LB19にブロックサイズ情報を付加したことにより、
アクセス空間単位でブロックサイズを指定することが可
能になり、主記憶18上に複数のプログラムが存在する
場合においても、それぞれのプログラム毎に適切なブロ
ックサイズを設定することができる。
ロック図である。ブロックサイズ指定手段10は、論理
アドレスから物理アドレスへ変換し、ブロックサイズを
出力するTLB19から構成される。TLB19はアク
セスするアドレスを論理アドレスから物理アドレスへ変
換し、変換後の物理アドレスをアドレス信号aとして出
力する。また、変換した物理アドレスに対応するキャッ
シュのブロックサイズをブロックサイズ指定信号dとし
てキャッシュ制御回路17へ出力する。したがって、T
LB19にブロックサイズ情報を付加したことにより、
アクセス空間単位でブロックサイズを指定することが可
能になり、主記憶18上に複数のプログラムが存在する
場合においても、それぞれのプログラム毎に適切なブロ
ックサイズを設定することができる。
【0011】
【発明の効果】以上説明したように、本発明は、プログ
ラム毎にキャッシュメモリのブロックサイズを適切な値
に設定することができるので、ブロックサイズが固定さ
れているキャッシュメモリシステムに比べて高いキャッ
シュヒット率を得ることができ、コンピュータシステム
の処理速度を高める効果がある。
ラム毎にキャッシュメモリのブロックサイズを適切な値
に設定することができるので、ブロックサイズが固定さ
れているキャッシュメモリシステムに比べて高いキャッ
シュヒット率を得ることができ、コンピュータシステム
の処理速度を高める効果がある。
【図1】本発明の一実施例における構成を示すブロック
図である。
図である。
【図2】キャッシュタグメモリとキャッシュデータメモ
リの関係を示す説明図である。
リの関係を示す説明図である。
【図3】本発明の他の実施例における構成を示すブロッ
ク図である。
ク図である。
【図4】従来のキャッシュメモリシステムの構成を示す
ブロック図である。
ブロック図である。
10 ブロックサイズ指定手段 11 キャッシュタグメモリ 12 キャッシュデータメモリ 13 ブロック内アドレスカウンタ 14 命令ブロックサイズレジスタ 15 データブロックサイズレジスタ 16 ブロックサイズセレクタ 17 キャッシュ制御回路 18 主記憶
Claims (1)
- 【請求項1】 キャッシュデータを保持するキャッシュ
データメモリを有するキャッシュメモリシステムにおい
て、最小ブロックサイズの時に必要十分な記憶容量を有
するキャッシュタグメモリと、最大ブロックサイズのと
きに必要十分なビット幅を持つブロック内アドレスカウ
ンタと、キャッシュメモリのブロックサイズを指定する
ブロックサイズ指定手段と、キャッシュミス時に前記ブ
ロック内アドレスカウンタ、前記キャッシュタグメモリ
及び前記キャッシュデータメモリを制御するキャッシュ
制御回路とを含むことを特徴とするキャッシュメモリシ
ステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3348636A JPH05158795A (ja) | 1991-12-06 | 1991-12-06 | キャッシュメモリシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3348636A JPH05158795A (ja) | 1991-12-06 | 1991-12-06 | キャッシュメモリシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05158795A true JPH05158795A (ja) | 1993-06-25 |
Family
ID=18398334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3348636A Pending JPH05158795A (ja) | 1991-12-06 | 1991-12-06 | キャッシュメモリシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05158795A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0997213A (ja) * | 1995-09-29 | 1997-04-08 | Nec Corp | データ処理装置 |
KR100248440B1 (ko) * | 1995-06-28 | 2000-03-15 | 가나이 쓰도무 | 프로세서 |
JP2011509475A (ja) * | 2008-01-11 | 2011-03-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピュータを動作させる方法及びシステム |
US9280480B2 (en) | 2008-01-11 | 2016-03-08 | International Business Machines Corporation | Extract target cache attribute facility and instruction therefor |
-
1991
- 1991-12-06 JP JP3348636A patent/JPH05158795A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100248440B1 (ko) * | 1995-06-28 | 2000-03-15 | 가나이 쓰도무 | 프로세서 |
JPH0997213A (ja) * | 1995-09-29 | 1997-04-08 | Nec Corp | データ処理装置 |
JP2011509475A (ja) * | 2008-01-11 | 2011-03-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピュータを動作させる方法及びシステム |
US9280480B2 (en) | 2008-01-11 | 2016-03-08 | International Business Machines Corporation | Extract target cache attribute facility and instruction therefor |
US9996472B2 (en) | 2008-01-11 | 2018-06-12 | International Business Machines Corporation | Extract target cache attribute facility and instruction therefor |
US10387323B2 (en) | 2008-01-11 | 2019-08-20 | International Business Machines Corporation | Extract target cache attribute facility and instruction therefor |
US10963391B2 (en) | 2008-01-11 | 2021-03-30 | International Business Machines Corporation | Extract target cache attribute facility and instruction therefor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4493026A (en) | Set associative sector cache | |
US6505287B2 (en) | Virtual channel memory access controlling circuit | |
US3800292A (en) | Variable masking for segmented memory | |
US5530829A (en) | Track and record mode caching scheme for a storage system employing a scatter index table with pointer and a track directory | |
US5717890A (en) | Method for processing data by utilizing hierarchical cache memories and processing system with the hierarchiacal cache memories | |
US4315312A (en) | Cache memory having a variable data block size | |
GB1488043A (en) | Data storage system | |
KR100758185B1 (ko) | 데이터 처리 장치 | |
EP0386719B1 (en) | Partial store control circuit | |
US6542969B1 (en) | Memory controller and a cache for accessing a main memory, and a system and a method for controlling the main memory | |
US4608671A (en) | Buffer storage including a swapping circuit | |
JPH05158795A (ja) | キャッシュメモリシステム | |
AU604101B2 (en) | High availability cache organization | |
US4456976A (en) | Associative memory system | |
US4628450A (en) | Data processing system having a local memory which does not use a directory device with distributed resident programs and a method therefor | |
JPH0792734B2 (ja) | メモリ装置 | |
US11500776B2 (en) | Data write system and method with registers defining address range | |
US4310902A (en) | Information storage arrangements | |
JPH02213960A (ja) | キャッシュメモリ | |
JPH01205250A (ja) | キャッシュメモリの制御方法 | |
JPH08328960A (ja) | キャッシュメモリ装置 | |
JPH0512119A (ja) | キヤツシユメモリ回路 | |
JPH0743668B2 (ja) | アクセス制御装置 | |
JPS63206844A (ja) | 情報処理装置のキ−記憶方式 | |
JPS62145342A (ja) | キヤツシユメモリシステム |