[go: up one dir, main page]

JPH0540694A - キヤツシユメモリ装置 - Google Patents

キヤツシユメモリ装置

Info

Publication number
JPH0540694A
JPH0540694A JP3193991A JP19399191A JPH0540694A JP H0540694 A JPH0540694 A JP H0540694A JP 3193991 A JP3193991 A JP 3193991A JP 19399191 A JP19399191 A JP 19399191A JP H0540694 A JPH0540694 A JP H0540694A
Authority
JP
Japan
Prior art keywords
memory
data
address
flag
cache 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
Application number
JP3193991A
Other languages
English (en)
Inventor
Yutaka Murata
裕 村田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP3193991A priority Critical patent/JPH0540694A/ja
Publication of JPH0540694A publication Critical patent/JPH0540694A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】 キャッシュメモリのヒット率はプログラムの
メモリ参照の性質やキャッシュメモリの構造により変化
する。種々のプログラムに対してキャッシュメモリのヒ
ット率をより向上させるために、キャッシュメモリの構
造を可変にすることによって実行するプログラムに対応
して構造を選択できることを目的とする。 【構成】 キャッシュメモリの構造を指定するモードプ
ラグを設け、その指定によりブロックサイズを複数の種
類に設定できるようにした。大きなブロックサイズを実
現するために、最小単位のブロックを組み合わせて新た
に1つのブロックを構成している。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は計算機の高速処理に用
いられるキャッシュメモリ装置に関するものである。
【0002】
【従来の技術】図5は従来のキャッシュメモリを説明す
る図であり、図において、10はキャッシュメモリのブ
ロックに格納されているデータの実アドレス情報を保持
するタグメモリ、20は主記憶データのコピーを格納す
るブロックからなるデータメモリ、30はデータをアク
セスするために生成されたアドレスを保持するアドレス
レジスタ、40、41はそれぞれタグメモリ10から読
み出されたアドレス情報とアクセスするデータの実アド
レス情報を比較する比較器、50はデータメモリ20か
ら読み出されたデータを比較器40の比較結果に基づい
て選択するマルチプレクサ、60はデータメモリ20へ
新たにデータブロックを登録(書き込み)する際に主記
憶(図示せず)からデータメモリ20へのデータ転送を
制御するメモリインタフェースである。また、図2はタ
グメモリ10、およびデータメモリ20の各エントリの
内部構造を示している。100はタグメモリエントリ、
200はデータメモリエントリを示す。タグメモリエン
トリはデータメモリの対応するエントリに格納されてい
るデータのアドレス情報と、エントリの有効ビットから
なる。データメモリのエントリに有効なデータが格納さ
れている場合に有効ビットにより有効状態を表す。デー
タメモリエントリは4つの8バイトデータからなり、3
2バイト構成となっている。4つの8バイトデータに対
してはそれぞれ00〜11のブロック内アドレスがつけ
られている。
【0003】次に動作について説明する。データ処理装
置がメモリ上のデータをアクセスするとき、そのアドレ
ス(仮想記憶方式の場合は仮想アドレス)をアドレスレ
ジスタ30にセットしてタグメモリ10およびデータメ
モリ20をアクセスする。本例の場合、タグメモリおよ
びデータメモリの縦方向のエントリ数(セット数とい
う)は8の構成を採用しているので、セット指定はアド
レスレジスタ30に設定された32ビットアドレスのう
ちビット24〜26の3ビットで行われる。データメモ
リではさらにブロック内アドレスを指定するためにアド
レスのビット27〜28を使用する。また、タグメモリ
およびデータメモリの横方向のエントリ数(ウェイ数と
いう)は2の構成となっているのでアドレス指定された
セットからは2ウェイ分の情報が読み出される。このう
ちタグメモリ10から読み出された2ウェイ分のアドレ
ス情報と、図示しないアドレス変換部で仮想アドレスか
ら実アドレスに変換されたデータの実アドレスを比較器
40、41で比較し、比較結果をマルチプレクサ50へ
送る。データメモリ20の2ウェイから読み出された2
つの8バイトデータは比較器40、41のうち一致が検
出された(キャッシュヒットという)ウェイに対応する
方のデータがマルチプレクサ50で選択され、図示しな
い演算部へ8バイトデータとして送出される。一方、比
較器40、41のいずれにおいても一致が検出されなか
った場合(キャッシュミスという)は、キャッシュ内に
アクセスすべきデータが登録されていないことを示し、
図示しない主記憶からデータを読みだして、指定された
セットのいずれか一方のウェイにデータを登録する。登
録すべきウェイの指定方法は本発明の主旨からはずれる
ので説明を省略する。登録するデータはアクセスするデ
ータを含む主記憶上の連続する32バイトのデータ領域
である。主記憶とメモリインタフェース60との間は8
バイトのデータ転送であると仮定し、この32バイト領
域をデータメモリのエントリへ登録するために、メモリ
インタフェース60は主記憶から連続する32バイトの
データを4回の8バイトデータ転送で取り込み、順次デ
ータメモリのエントリへ登録する。
【0004】
【発明が解決しようとする課題】データ処理装置では不
特定多数の応用プログラムが実行される。応用プログラ
ムはそれぞれ処理の性質が異なるためメモリアクセスの
性格もそれぞれ異なる。メモリアクセスの性格が異なる
ため、キャッシュのデータメモリのブロックサイズとキ
ャッシュのヒット率との関係がプログラムによって異な
ることが知られている。従来のキャッシュメモリ装置は
以上のように構成されデータメモリのブロックサイズが
一意に決まっているため、実行するプログラムによって
は不適切なブロックサイズとなり、キャッシュメモリの
性能が低下してしまうという問題点があった。
【0005】この発明は上記のような問題点を解消する
ためになされたもので、データメモリのブロックサイズ
を可変に設定可能なキャッシュメモリを得ることを目的
としており、さらに、制御プログラムが動的にブロック
サイズを設定できる手段を提供することを目的とする。
【0006】
【課題を解決するための手段】この発明にかかるキャッ
シュメモリ装置は、ブロックサイズの種類を指定するフ
ラグを設け、このフラグの指定によりキャッシュの構造
の変更を可能としたものである。さらに、今一つの発明
は、このフラグの設定をプログラムにより変更可能とし
たものである。
【0007】
【作用】この発明によるキャッシュメモリ装置は、ブロ
ックサイズの種類を指定するフラグの指定により、ブロ
ックサイズを変更できるためデータ処理装置で実行する
プログラムに応じてブロックサイズを変更する。また、
今一つの発明では、制御プログラムが応用プログラムの
性質を判定することにより、実行する応用プログラムご
とに最適なブロックサイズを動的に変更する。
【0008】
【実施例】以下、この発明の一実施例を図について説明
する。図1において、70はキャッシュメモリのブロッ
クサイズの種類を指定するモードフラグ、80はタグメ
モリ10をアドレス指定する際にフラグ70の指定に応
じてアドレスを修飾するアドレス修飾器である。図2に
おいて100はタグメモリ10の中の1エントリを抜き
出してその内容を示したもの、200はデータメモリ2
0の中の1エントリを抜き出してその内容を示したもの
である。図3はフラグ70の指定と、キャッシュメモリ
と主記憶内データとの対応を示したものである。101
はタグエントリ100に隣接するタグエントリ、201
はデータエントリ200に隣接するデータエントリ、9
01、902、903、904は主記憶内のデータブロ
ックである。
【0009】次に、動作について説明する。図1におい
てフラグ70の値が”0”のときはアドレス修飾器80
は入力したアドレス、すなわちアドレスレジスタ30の
ビット24〜26の値に対して変更操作を行わない。し
たがって、タグメモリ、データメモリへの参照は従来例
とまったく同一である。さらに、キャッシュミスした場
合のブロックデータの登録方法も従来例とまったく同一
である。図3の(1)にこの場合のタグメモリ、データ
メモリ、主記憶のデータの関係が示されている。主記憶
上の独立なブロック901および902がタグメモリ、
データメモリのそれぞれ隣接するエントリに登録されて
いる。逆にいえば、タグメモリ、データメモリのエント
リには独立に主記憶のブロックを登録することができる
ことを示している。
【0010】一方、フラグの値が”1”のときはアドレ
ス修飾器80は入力したアドレスの最下位ビット、すな
わちアドレスレジスタ30のビット26を強制的に”
0”にリセットしてタグメモリをアドレス指定する。こ
れによりフラグ70の値が”1”のときはタグメモリは
常に偶数番のセットが指定され、奇数番のセットは使用
されないようにする。データメモリ20のアドレス指定
は従来例と同様にする。すなわちアドレスレジスタ30
のビット26の値によりデータメモリは偶数番あるいは
奇数番のセットが指定される。これにより隣接する偶数
番と奇数番のエントリがペアになって2倍の容量を持つ
1つのブロックを構成することになる。図3の(2)に
この場合のタグメモリ、データメモリ、主記憶のデータ
の関係が示されている。主記憶上の隣接するブロック9
03および904がデータメモリの隣接するエントリ2
00および201に登録される。これに対し、タグメモ
リは偶数番のエントリ100にブロックのアドレスが登
録され、隣接するエントリ101は使用しない。図1に
おいてキャッシュをアクセスする場合はタグメモリの偶
数番のセットが読み出され比較器40、41で実アドレ
スとの比較を行う。いずれか一方で一致が検出されたら
(キャッシュヒット)比較結果をマルチプレクサ50に
送り、データメモリから読み出されたデータのうち一致
したウェイのデータを選択して演算部へ送出する。この
ときデータメモリはアドレスレジスタ30のビット24
〜26でセットが指定されるため偶数番または奇数番の
いずれかのデータが読み出されている。
【0011】キャッシュミスで新たに主記憶のブロック
をデータメモリに登録する場合はフラグ70の指定によ
りメモリインタフェース60は従来例の説明で述べた4
回の8バイトデータ転送(バースト転送)を2回連続し
て実行する。この場合、2回のバースト転送は偶数番お
よび奇数番のブロックのペアに対して行われる。転送さ
れた主記憶のブロックのデータは順次偶数番のブロック
データであればデータメモリ20の偶数番エントリへ、
奇数番のブロックデータであればデータメモリの奇数番
エントリへ登録していく。
【0012】図4はフラグ70の設定方法について説明
する図である。図において910は高電位(または論理
値”1”)、911は低電位(または論理値”0”)を
表している。912はスイッチ、920はデータ処理装
置を制御するシステム制御装置、921は制御バス、9
22は制御バスとのインタフェース回路、930はデー
タ処理装置の中でプログラム実行を行う中央処理装置
(CPU)、931はメモリバス、932はメモリバス
931を監視してフラグ70の設定制御を行うアドレス
デコーダ、933は信号線である。図において(1)は
データ処理装置に対して外部からフラグ70を設定する
方式である。(a)は外部スイッチにより設定する方式
を、(b)はシステム制御装置から設定する方式を示し
ている。(b)ではシステム制御装置920は制御バス
921を介してフラグ70設定用のコマンドを送出す
る。コマンドの実現方式は本発明とは直接関係しないの
で特に限定はしない。コマンドが送出されるとバスイン
タフェース回路922はこれを解釈してフラグ70設定
用のコマンドであればその指定に従ってフラグ70に値
を設定する。(1)の方式では、フラグ70で指定され
るキャッシュメモリのモードはデータ処理装置でのプロ
グラム実行に関係なく固定される。
【0013】図において(2)はデータ処理装置で実行
するプログラムによりキャッシュメモリのモード設定を
行う方式を示したものである。あらかじめフラグ70を
操作する命令を定義しておき(この例ではフラグ70を
メモリマップドI/Oとして定義し、入出力命令でフラ
グ70を操作することを想定している)、中央処理装置
がその命令を実行することによりフラグ70の設定を行
う。中央処理装置930の命令を実行するとメモリバス
931を監視しているアドレスデコーダ932がその命
令の指示を取り込んで解釈し、その指定に基づいてフラ
グ70のセットを行う。設定されたフラグ70は信号線
933を介して中央処理装置930に送られ、キャッシ
ュメモリのモード指定を行う。この方式を用いれば、た
とえばデータ処理装置の制御プログラムがユーザプログ
ラムあるいは応用プログラムの実行を開始させる際に、
それらの処理の性質をあらかじめ解析し、その結果に基
づいてキャッシュのブロック構成を変更させ、最適な構
成とすることが可能となる。処理の性質の異なるプログ
ラムの例としては、オンライントランザクション処理や
大規模科学技術計算などがあげられる。
【0014】なお、本実施例では8セット×2ウェイ、
32バイトブロック構成のキャッシュメモリについて説
明を行ったが、他の構成のキャッシュメモリであっても
良い。また、フラグ70をデータ処理装置のプログラム
で設定する場合フラグ70をメモリマップドI/Oとし
て扱ったが、これに限定せず他の実現方法を用いても良
い。さらに、フラグ70の指定により2種類のブロック
サイズを選択できる例を示したが、より多種類のブロッ
クサイズを指定できるようにしても良い。
【0015】
【発明の効果】以上のように、この発明によればキャッ
シュメモリのモードフラグを設けてブロックサイズを可
変に設定できるようにしたので、データ処理装置が実行
するプログラムの性質に合わせてキャッシュメモリのブ
ロックサイズを変更できるためキャッシュメモリの利用
効率を向上させることができる。
【図面の簡単な説明】
【図1】この発明の一実施例によるキャッシュメモリ装
置を示すブロツク図である。
【図2】この発明の一実施例によるキャッシュメモリ装
置のタグメモリ内エントリの内容およびデータメモリ内
エントリの内容を示す図である。
【図3】この発明の一実施例によるキャッシュメモリ装
置において、タグメモリ、データメモリおよび主記憶内
データの関連を示す図である。
【図4】この発明の一実施例によるキャッシュメモリ装
置において、発明の特徴となるキャッシュメモリのモー
ドフラグ設定方式を説明した図である。
【図5】従来例によるキャッシュメモリ装置を示すブロ
ック図である。
【符号の説明】
60 メモリインタフェース回路 70 キャッシュメモリのモードフラグ 80 アドレス修飾器

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 キャッシュメモリを有するデータ処理装
    置において、データ処理装置外部より設定可能なモード
    切り替え手段により、キャッシュメモリ内にデータを格
    納する単位であるデータブロックのサイズを指定モード
    によって変更することを特徴とするキャッシュメモリ装
    置。
  2. 【請求項2】 データ処理装置が実行するプログラムに
    より、設定可能なモード切り替え手段を備えたことを特
    徴とする、請求項1に記載したキャッシュメモリ装置。
JP3193991A 1991-08-02 1991-08-02 キヤツシユメモリ装置 Pending JPH0540694A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3193991A JPH0540694A (ja) 1991-08-02 1991-08-02 キヤツシユメモリ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3193991A JPH0540694A (ja) 1991-08-02 1991-08-02 キヤツシユメモリ装置

Publications (1)

Publication Number Publication Date
JPH0540694A true JPH0540694A (ja) 1993-02-19

Family

ID=16317155

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3193991A Pending JPH0540694A (ja) 1991-08-02 1991-08-02 キヤツシユメモリ装置

Country Status (1)

Country Link
JP (1) JPH0540694A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0997213A (ja) * 1995-09-29 1997-04-08 Nec Corp データ処理装置
US6334973B1 (en) 1999-10-01 2002-01-01 Hoya Corporation Method of producing molded article
JPWO2005008499A1 (ja) * 2003-07-16 2006-09-07 松下電器産業株式会社 情報記録媒体におけるデータ領域管理方法、及びデータ領域管理方法を用いた情報処理装置
JP2007087372A (ja) * 2005-08-23 2007-04-05 Canon Inc メモリ装置、およびメモリ制御方法
JP2011040010A (ja) * 2009-08-18 2011-02-24 Kobe Univ キャッシュメモリとそのモード切替方法
JP2014235689A (ja) * 2013-06-05 2014-12-15 富士通株式会社 画像キャッシュメモリ装置および半導体集積回路
JP2019114303A (ja) * 2019-04-18 2019-07-11 株式会社エルイーテック 制御チップ及びこれを用いた遊技機

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0997213A (ja) * 1995-09-29 1997-04-08 Nec Corp データ処理装置
US6334973B1 (en) 1999-10-01 2002-01-01 Hoya Corporation Method of producing molded article
JPWO2005008499A1 (ja) * 2003-07-16 2006-09-07 松下電器産業株式会社 情報記録媒体におけるデータ領域管理方法、及びデータ領域管理方法を用いた情報処理装置
JP4551328B2 (ja) * 2003-07-16 2010-09-29 パナソニック株式会社 情報記録媒体におけるデータ領域管理方法、及びデータ領域管理方法を用いた情報処理装置
US7840749B2 (en) 2003-07-16 2010-11-23 Panasonic Corporation Data area managing method in information recording medium and information processor employing data area managing
US8069306B2 (en) 2003-07-16 2011-11-29 Panasonic Corporation Data area managing method in information recording medium and information processor employing data area managing method
JP2007087372A (ja) * 2005-08-23 2007-04-05 Canon Inc メモリ装置、およびメモリ制御方法
JP2011040010A (ja) * 2009-08-18 2011-02-24 Kobe Univ キャッシュメモリとそのモード切替方法
JP2014235689A (ja) * 2013-06-05 2014-12-15 富士通株式会社 画像キャッシュメモリ装置および半導体集積回路
JP2019114303A (ja) * 2019-04-18 2019-07-11 株式会社エルイーテック 制御チップ及びこれを用いた遊技機

Similar Documents

Publication Publication Date Title
JP2646854B2 (ja) マイクロプロセッサ
US5276850A (en) Information processing apparatus with cache memory and a processor which generates a data block address and a plurality of data subblock addresses simultaneously
EP0410740B1 (en) A virtual storage address space access control system and method
JPH0540694A (ja) キヤツシユメモリ装置
JPH04308953A (ja) 仮想アドレス計算機装置
US5510973A (en) Buffer storage control system
US5426749A (en) Buffer control system using synonymic line address to retrieve second tag portion for fetch and store accesses while first tag portion is invalidated
KR920005296B1 (ko) 정보처리장치
JPH09259041A (ja) キャッシュメモリ制御方式
JPH03232034A (ja) キャッシュ制御装置
JPH04174042A (ja) マルチプロセッサシステム
JPH02213960A (ja) キャッシュメモリ
JP2586160B2 (ja) アドレス変換機構
JP3190661B2 (ja) 情報処理システム
JP2000148665A (ja) データ処理装置
JPH06149752A (ja) 並列計算機のバリア同期方式
JPH07152650A (ja) キャッシュ制御装置
JP2923273B2 (ja) データ処理システム
JPH02101552A (ja) アドレス変換バッファ処理方式
JPH11296431A (ja) 情報処理装置及びキャッシュメモリのマッピング方法
JPS62172451A (ja) デ−タ処理装置
JPH1055308A (ja) キャッシュメモリ
JPH04205535A (ja) コピーオンライト方式
JPH0877072A (ja) キャッシュメモリ装置
JPH0764858A (ja) キャッシュメモリ

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees