JPS62245448A - キャッシュメモリシステム - Google Patents

キャッシュメモリシステム

Info

Publication number
JPS62245448A
JPS62245448A JP61089633A JP8963386A JPS62245448A JP S62245448 A JPS62245448 A JP S62245448A JP 61089633 A JP61089633 A JP 61089633A JP 8963386 A JP8963386 A JP 8963386A JP S62245448 A JPS62245448 A JP S62245448A
Authority
JP
Japan
Prior art keywords
memory
chip
cache
cache memory
processor
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
Application number
JP61089633A
Other languages
English (en)
Other versions
JPH0719223B2 (ja
Inventor
Sadanobu Ikeda
池田 貞信
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP61089633A priority Critical patent/JPH0719223B2/ja
Publication of JPS62245448A publication Critical patent/JPS62245448A/ja
Publication of JPH0719223B2 publication Critical patent/JPH0719223B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は1チツプの集積回路内にディレクトリとデータ
メモリとを内蔵するワンチップキャッシュメモリに間し
、特に複数個のワンチップキャッシュメモリを接続する
ことにより大容量のキャッシュメモリを実現することの
できる拡張可能なワンチップキャッシュメモリに関する
(従来技術) プロセサと主メモリとの間に小容量の高速なバッファメ
モリを設置することにより、実効的な主メモリのアクセ
ス時間を高速化し得ることは% 1982年に出版され
たコンピユーテイングサーベイ(Computing 
5urvey )誌の第14@、第3号の473〜53
0ページに詳しく述べられているように一般によく知ら
れている。
この手法は、通常、キャッシュメモリと呼ばれ、広く計
算機システムに使用されている。上記手法は、計算機シ
ステム上で実行されるプログラムのメモリアクセスにお
いては局所性があるという性質を利用したものである。
すなわち、プロセサから主メモリへのアクセスに際し、
アクセスの行われたワードを含む一定サイズの連続し次
記憶位It(通常、これをブロックと呼ぶ。)の内容を
、主記憶からキャッシュメモリに増込むことにより、メ
モリアクセスの大部分は高速なキャッシュメモリへのア
クセスですミ、低速な主記憶へのアクセスを不要とする
ことができる。を念、局所性の高いアクセスと、局所性
の高くないものとを区別して前者のブロックサイズを後
者のそれの倍にする(通常これをプリフエツチという。
)と、効果のあることも知られている。
キャッシュメモリは、アドレスレジスタ、データレジス
タ、ディレクトリ、データメモリ、および制御回路から
構成されるが、従来、これらは論理ゲートやメモリ等の
集積回路チップを能合わせて構成されていた。
(発明が解決しようとする問題点) 上述した従来のキャッシュメモリによるシステムでは、
集積回路のチップ内では高速な論理動作、あるいはメモ
リ動作が可能であるのに対して、信号線をチップ外に増
出す場合にはチップ外の信号線を鳴動するために、チッ
プ内の場合に比べてきわめて長い遅延時間が入ってしま
うために、キャッシュメモリ全体としての処理速度を高
めることが困睡であるという欠点がある。
いっぽう、集積回路技術の進歩にょ91チツプの集積度
が向上した場合には、前述のキャッシュメモリ全体を1
チツプ内に格納することにより、−キャッシュメモリの
性能を格段に向上させることが可能となる。しかしなが
ら、キャッシュメモリを1チツプで実現する場合には集
積度の制限から、必ずしもlチップ内に十分な容量のキ
ャッシュメモリを格納できるとは限らない。このような
場合には、複数のキャッシュメモリチップを組合わせて
大容量のキャッシュメモリt−実現することが必要にな
るという欠点がある。
本発明の目的は、プロセサからのメモリアクセス要求に
際して前記キャッシュチップ選択信号で指定されたワン
チップキャッシュメモリチップのみがキャッシュメモリ
として動作し、特にプリフエツチの指示信号が印加され
ると公知のアルゴリズムに従ってプリフエツチ動作(倍
長ブロックサイズのロード)を行なうこともできるより
にして上記欠点を除去し、ワンチップでキャッシュメモ
リを構成するとともに、複数のワンチップキャッシュメ
モリを組合わせて大容量のキャッシュメモリt−実現す
ることができるよりに構成したワンチップキャッシュメ
モリを提供することにある。
(間地点f:解決するための手段〕 本発明によるワンチップキャッシュメモリはデータメモ
リと、制御手段とを具備してワンチップ形に必要デバイ
スを集積化して複数チップを接続できるよりに構成した
ものである。
データメモリはプロセサとの間でデータを授受すること
ができ、ブロックを管理する几めのディレクトリおよび
ブロックデータを保持するtめのものである。
制御手段は、プロセサからのメモリアクセス要求を入力
してメモリアクセス要求がv効rあるか否かを確認する
とともに、プロセサからのメモリアクセス要求がプリフ
エツチ金必要とするか否かをg識し、メモリアクセス要
求が有効である場合にのみ動作を行い、プリフエツチが
必要であるメモリ読取り要求に対しては所定のアルゴリ
ズムに従ってプリフエツチを行うように制御するための
ものである。
(実施例) 次に、本発明について図面を参照して説明する。
まず、本発明によるキャッシュメそりチップの実施例に
おける構成を第1図に示す。
、@l1mにおいて、1はディレクトリ、2はデータメ
モリ、3はアドレスレジスタ、4は読出しデータレジス
タ、5は査込みデータレジスタ。
6はリプレースメント回路、7は制(至)回路、8は書
込みバッファレジスタである。
本実施例において、キャッシュメモリチップでは電源、
共通(接地)接続、クロック等のための端子と、プロセ
サとの通信のtめの端子として、プロセサからのメモリ
へのアクセス要求の通知、およびキャッシュメモリでの
アクセスの完了通知のために備えられているプロセサア
クセス端子P Ot−使用している。ま念、メモリアド
レスの通知のためのプロセサアドレス端子PA、および
データのやりとシの念めのプロセサデータ1子PDを有
し、主記憶との通信のための1子として、同様にメモリ
アクセス端子MO、メモリアドレス端子MA、ならびに
メモリデータ端子MDを育している。さらに、キャッシ
ュメモリチップはプロセサからのメモリアクセス要求の
際して動作を行うべきキャッシュメモリチップを指定す
る之めのキャッシュチップ選択端子C81およびメモリ
アクセス要求の種類によりプリフェッチが必要であるが
、あるいは不要であるかを示すプリフェッチ指示端子P
Fを有する。
プロセサアドレス端子PAはアドレスレジスタ3の入力
に印加されており、アドレスレジスタ3のブロックアド
レス部の出力はディレクトリ1に印加されるとともに、
メモリアドレス端子MAにも印加されている。アドレス
レジスタ3のブロック内ワードアドレス部の出力は制御
回路7で生成されるワードアドレスとともに、ブロック
内ワードアドレスとしてデータメモリ2に印加されると
ともに、メモリアドレス1子MAにも印加されている。
ディレクトリ1の一致アドレス出力FBAはデータメモ
リ2にブロックアドレスとして印加されるとともに、リ
プレースメント回路6にも印加されている。リプレース
メント回路6で生成され九リプレースすヘキデータメモ
リ2上のブロックアドレスは、ディレクトリ1に書込み
アドレスとして印加されている。ディレクトリ1からの
一致検出信号Fは制御回路7に印加されている。プロ瘉
すデータ1子PDKは読出しデータレジスタ4の出力、
および書込みバッファレジスタ8の入力が接続されてい
る。読出しデータレジスタ40入力には、データメモリ
2からの読出しデータが印加され、書込みバッファレジ
スタ8の出力は書込みデータとして、書込みデータレジ
スタ5を経由してデータメモリ2に印加されているとと
もに、メモリデータ端子MDにも印加されている。書込
みデータレジスタ5は畜込みバッファレジスタ8、また
はメモリデータ端子MDから書込みデータを受ける。
キャッシュチップ選択端子O8,およびプリフェッチ指
示端子PFは制御回路7に印加されている。
制御回路7はプロセサアクセス端子PCから印刀口され
るキャッシュメモリの初期化要求、メモリへの書込み、
および読出し要求を受けて対厄する処理を行うためのも
のである。ここで生成される主記憶へのアクセス要求は
、メモリアクセス端子MOに印加されている。
次に、本発明の実M例におけるキャッシュメモリチップ
の動作全説明する。
第2図は、第1図のキャッシュメモリチップを使用し几
キャッシュメモリシステムの一例を示すブロック図であ
る。第2図において、21は主記憶、22〜25はそれ
ぞれキャッシュメモリチップ、26はプロセサ、27は
デコーダである。
最初に、挽出し処理につい℃説明する。プロセサ26か
ら、プロセサアクセス端子PCを弁し℃制御回路7にメ
モリ続出しの指令が印加されると、制御回路7はキャッ
シュチップ選択渇子O8を調べ、これに値”0″が印加
されている場合には、このキャッシュメモリチップでは
何の句作も行わない。キャッシュチップ色択端子O8に
値″′1′が印加されている場合には、プロセサアドレ
ス端子PAに印加されているメモリアドレスをアドレス
レジスタ3に七ットし九うえで、このブロックアドレス
;じの値によりブイレフ) IJ 1を検索する。一致
が検出された場合には、アクセス要求のあつ九アドレス
を言むブロックが自キャッシュメモリ(例、tば、キャ
ッシュメモリチップ22)上に存在するわけである。こ
の場合には、ディレクトリlから出力される一版検出ア
ドレスFBAによりリプレースメント回路6の内容を更
新し、同じくディレクトリ1から出力されるブロックア
ドレスFBA、およびアドレスレジスタ3のブロック内
ワードアドレスの値をアドレスとしてデータメモリ2の
内容を読出し、読出され几1直を読出しデータレジスタ
4に格納したうえで、プロセサアクセス1子PCにアク
セスの完了し友ことを知らせる信号を印加する。
ディレクトリ1で一致が検出されない場合には、アクセ
ス要求のあったアドレスt−含むブロックが自キャッシ
ュメモリ(例えば、キャッシュメモリチップ22)上に
存在しない。この場合には、制御回路7はブロックのロ
ードの几めに次の処理を行う。
まず、リプレースメント回wr6でリプレースすべきデ
ータメモリ2上のブロックを決定し、これに対応するデ
ィレクトリ1のエントリにアドレスレジスタ3のブロッ
クアドレス部の値を登録する。次に、アドレスレジスタ
3のブロックアドレス部の出力と、制御回路7によって
生成されるブロック内のワードアドレスとをメモリアド
レス1子MAに印加し、メモリ読出し要求をメモリアク
セス端子MOに印加する。これによって主記憶21の内
容を読出し、メモリデータ端子MDに読出され友データ
を書込みデータレジスタ5f:介してデータメモリ2に
書込む。
ブロック内に属する全ワードに対し℃上記動作を行った
後、ディレクトリ1に上記ブロックがM効であることを
登録することによりブロックのロード処理が完了する。
この後で、前述のキャッシュメモリ22〜250内谷の
読出しの処理を再実行することにより、プロセサ26か
らの読出しが行われることになる。
プロセサ26からのアクセス要求がプリフェッチ指示端
子PFを11”にして印加され次場合には、所定のアル
ゴリズムに従って、隣接する次のアドレスのブロックロ
ードが実行される。
アルゴリズムはディレクトリ1の不一致が検出され友場
合にプ薗ツクロードを開始するとか、あるいはブロック
内の特定アドレスがアクセスされた場合にブロックロー
ドを開始するといった、公知の方法を採用してさしつか
えない。
制御回路7は、プリフエツチ指示を受けると上記アルゴ
リズムに従ってプリフェッチを実行するか否か判定し、
実行しない場合にはそのまま動作を終了する。プリフエ
ツチを実行する場合には、隣接するブロックのアドレス
を、上記アクセス要求のアドレスが格納されているアド
レスレジスタ3の内容に従って生成する。これを新規の
アクセス要求としてディレクトリlの検索を開始し、以
降、上記読出し処理と同じ処理1に繰返す。
ここで、ツリフェッチ動作はプロセサ26からの真のア
クセス要求ではない。アクセス完了の手続きは既に終了
している丸め、この手続きは省略される。
次に、書込み処理について説明する。主記憶21への書
込み要求があつ九場合には、本実施例では次のような処
理が行われる。すなわち、プロセサ26からプロセサア
クセスw子pot−介して制御回路7にメモリ書込みの
指令が印加されると、制御回路7はキャッシュチップ選
択端子O8の状態を調べる。これに値′″0″が印加さ
れている場合には、キャッシュメモリチップ22では何
の動作も行わない。キャッシュチップ選択端子O8に値
′″l”が印加されている場合には、プロセサアドレス
端子PAに印7JOすれているメモリアドレスをアドレ
スレジスタ3にセットし、プロセサデータ1子PDに印
加されている書込みデータを書込みバッファレジスタ8
にセットする。そのうえで、このブロックアドレス部の
値によりディレクトリ1を検索する。キャッシュメモリ
22で一致が検出され念場合には、対応するキャッシュ
メモリチップの制御回路7は書込みバッファレジスタ8
から書込みデータレジスタ5を経由してデータメモリ2
への書込みを行うとともに、主記憶21に対しても書込
みを行う。キャッシュメモリ22で一致が検出されない
場合には、キャッシュメモリチップへのブロックのロー
ドは行わずに主記憶21への書込みのみを行う。これは
、アドレスレジスタ3にセットされているアドレスをメ
モリアドレス端子MAに印加し、書込みバッファレジス
タ8にセットされている書込みデータをメモリデータ端
子MDに印加し念うえで、メモリアクセス端子MOに対
し℃メモリ書込み要求を印加することにより行われる。
書込み処理の場合には、プリフエツチ指示端子の信号は
無視される。
次に、第2図によるキャッシュメモリシステムを詳細に
説明する。本実施例においては、キャッシュメモリシス
テムは4個のワンチップキャッシュメモリチップ22〜
25を用いて実現されているとし、メモリアクセス要求
の各チップへの損分けは公知の方法によシメモリアドレ
スの適当な2ビツトを使用して行われるものとしている
。このため、プロセサ26からの2ビツトのメモリアド
レスbl 、b2の出力はデコーダ27に印加され、デ
コーダ27の4本の出力はそれぞれキャッシュメモリチ
ップ22〜25のキャッシュチップ選択端子O8K接暁
され℃いる。
プロセサ26からのアクセス要求信号線、アドレス信号
線、データ信号線、およびプリフエツチ指示信号線はす
べてのキャッシュメモリチップ22〜25のそれぞれに
対応する端子に接続されてお)、同様にすべてのキャッ
シュメモリチップ22〜25のメモリアクセス端子MC
メモリアドレス端子MA、およびメモリデータ端子Mr
)はそれぞれアクセス要求信号線、アドレス信号線、お
よびデータ信号線に接続されて主記憶21に印加されて
いる。
このような構成にしてキャッシュメモリの容量を4倍に
することにより、各キャッシュメモリチップの分担すべ
き主記憶21の容量は、1個のキャッシュメモリチップ
を使用する場合の4分の1となり、キャッシュメモリに
お−て必要なデータが見出されるsiを高めることがで
きることKなる。
以上、本発明の実施例について説明し九〇上記説明によ
り明らかなように、本発明によるワンチップキャッシュ
メモリは同一チップ上に当該チップの保持しているブロ
ックを管理するためのディレクトリ1、およびブロック
データを保持する念めのデータメモリ21&:内蔵し、
プロセサ26からキャッシュメモリ22〜25へのメモ
リアクセス要求の通信のための入出力端子として、メモ
リアクセスの要求や完了信号等の几めの第1のアクセス
制御信号端子PC1プロセサからのメモリアドレスの念
めの第1のアドレス信号1子FA、プロセサ26とのデ
ータのやシと9のための第1のデータ信号端子PD1キ
ャッシュメモリから上記[21へのメモリアクセス要求
の通信のための入出力端子とし″′C第2のアクセス制
(@l信号端子MO,第2のアドレス信号1子MA、第
2のデータ信号1子MD1当該キャッシュメモリチップ
への前記プロセッサからのメモリアクセス要求が有効で
あるか否かを指定する念めのキャッシュチップ選択端子
C81およびメモリアクセス要求の種類によりプリフエ
ツチが必要であるか、あるいは不要であるかを示すプリ
フエツチ指示端子PFを有する。上記キャッシュチップ
選択端子O8にwL″′1″が印加されている場合にの
みキャッシュメモリとしての動作を行うことができ、且
つ、上記プリフエツチ指示1子PFIC櫃″′1′が印
加されたメモリアクセス要求に対して所定のアルゴリズ
ムに従ってプリフエツチ動作できるよりに構成されてい
ることはすでに述べ九とおりである。
さらに、上記ワンチップキャッシュメモリの複数個ヲ用
いて、プロセサ26からのメモリアクセス要求制御信号
線、アドレス信号線、データ信号線、およびプリフェッ
チ指示イぎ号線はそれぞれ、すべての数個のワンチップ
キャッシュメモリ22〜25の第1のアクセス制(11
tl信号端子PC%@lのアドレス信号端子PA、第1
のデータ信号端子PD、およびプリフェッチ指示端子P
Fに接続され、上記すべてのワンチップキャッシュメモ
リ22〜25の第2のアクセス制a信号1子MO,第2
のアドレス信号端子MA5および第2のデータ信号端子
MDは、それぞれメモリアクセス要求制御信号線、アド
レス信号線、およびデータ信号線を介して主記憶26に
接続され、上ビ己谷ワンチップキャッシュメモリのキャ
ッシュチップ選択電子O8にはプロセサ26からキャッ
シュチップ選択信号が排他的に印加されることにより、
プロセサ26からのメモリアクセス要求に際して上記キ
ャッシュチップ選択信号で指定されたワンチップキャッ
シュメモリチップのみがキャッシュメモリとしての動作
を行う。いっぽう、プロセサ26からアクセス要求がグ
リフエッチを必要とする場合には所定のアルゴリズムに
従ってプリフエツチ動作を行う。
例えば、チップセレクトは本実施例では、メモリアドレ
ス部の2ビツトにより各キャッシュメモリチップへの割
当てによって行っているが、必ずしもこのようにする必
要はない。
ま念、本実施例においてはプロセサのメモリアドレスの
全ビットをキャッシュメモリチップに印加しているが、
キャッシュメモリチップの嘔分けに使用したブロックア
ドレスの下位2ビツトは、必ずしも印加する必要はない
本実施例の説明においては、発明の主旨とは直接関係が
ないので制御回路7の具体的な実現方法、およびタイミ
ング等も官め次動作は省略した。例えば、メモリアクセ
ス要求、およヒ完了償号t″端子に印加するためのゲー
トの制御、d出し/書込みデータのデータ端子への印加
、受取り等については詳細な説明を省略した。
これらは、公知の技術で実現できることは明かである。
また、本実施例におけるディレクトリ1、ならびにリプ
レースメント回路6もキャッシュメモリで採用するマツ
ピング方式に応じ次構成がなされることは明らかであろ
う。本実施例においては、主記憶に1個のプロセサが接
続されるシングルプロセサシステムを想定しているが、
それぞれが本発明によるキャッシュメモリを備えている
複数個のプロセサから成るマルチプロセサシステムにお
いては、各プロセサのキャッシュメモリと主記憶との間
での内容の一致を確保する念めの考慮が必要になる。し
かし、これにつ贋ても公知の種々の方式が適用できるこ
とは明らかであろう。
表口面の簡単な説明 第1図は、本発明によるワンチップキャッシュメモリの
一実施例を示すブロック図である。
第2図は、第11i9に示すワンチップキャッシュメモ
リを使用したワンチップキャッシュメモリシステムの一
例を示すブロック囚である。
l・・・ディレクトリ  2・・・データメモリ3・・
・アドレスレジスタ 4・・・読出しデータレジスタ 5・・・書込みデータレジスタ 6・・・リプレースメント回路 7・・・制御回路 8・・・iF込みバツフプレジスタ 21・・・主記憶 22〜25・・・キャッシュメモリチップ26・・・プ
ロセサ 27−・・デコーダ PO,PA、PD、MO,MA、MD、O8゜PF・・
・端子

Claims (1)

    【特許請求の範囲】
  1. プロセサとの間でデータを授受することができ、ブロッ
    クを管理するためのディレクトリおよびブロックデータ
    を保持するためのデータメモリと、前記プロセサからの
    メモリアクセス要求を入力して前記メモリアクセス要求
    が有効であるか否かを確認するとともに前記プロセサか
    らのメモリアクセス要求がプリフエツチを必要とするか
    否かを認識し、前記メモリアクセス要求が有効である場
    合にのみ動作を行い、前記プリフエツチが必要であるメ
    モリ読取り要求に対しては所定のアルゴリズムに従つて
    前記プリフエツチを行うよりに制御するための制御手段
    とを具備し、ワンチップ形に必要デバイスを集積化して
    複数チップを接続できるよりに構成したことを特徴とす
    るワンチップキャッシュメモリ。
JP61089633A 1986-04-18 1986-04-18 キャッシュメモリシステム Expired - Lifetime JPH0719223B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61089633A JPH0719223B2 (ja) 1986-04-18 1986-04-18 キャッシュメモリシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61089633A JPH0719223B2 (ja) 1986-04-18 1986-04-18 キャッシュメモリシステム

Publications (2)

Publication Number Publication Date
JPS62245448A true JPS62245448A (ja) 1987-10-26
JPH0719223B2 JPH0719223B2 (ja) 1995-03-06

Family

ID=13976168

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61089633A Expired - Lifetime JPH0719223B2 (ja) 1986-04-18 1986-04-18 キャッシュメモリシステム

Country Status (1)

Country Link
JP (1) JPH0719223B2 (ja)

Also Published As

Publication number Publication date
JPH0719223B2 (ja) 1995-03-06

Similar Documents

Publication Publication Date Title
US20210248094A1 (en) Quasi-volatile system-level memory
US6131139A (en) Apparatus and method of simultaneously reading and writing data in a semiconductor device having a plurality of flash memories
US5228135A (en) Multiport cache memory control unit including a tag memory having plural address ports and a snoop address part
US11663008B2 (en) Managing memory device with processor-in-memory circuit to perform memory or processing operation
US7299323B2 (en) Memory controller having a read-modify-write function
CN108780432A (zh) 用于高速缓存无效的设备及方法
JP2006190402A (ja) 半導体装置
US10672445B2 (en) Memory device including local support for target data searching and methods of operating the same
US20050268028A1 (en) Programmable parallel lookup memory
KR100828869B1 (ko) 사이클당 다중 캐시 라인 무효화 지원 장치 및 방법
US8015329B2 (en) Data transfer coherency device and methods thereof
US20200293452A1 (en) Memory device and method including circular instruction memory queue
CN116149554B (zh) 一种基于risc-v及其扩展指令的数据存储处理系统及其方法
US11972328B2 (en) Machine learning device and machine learning system using the same
JPS5832427B2 (ja) 多重情報処理システム
JPH0438014B2 (ja)
US4547848A (en) Access control processing system in computer system
JPS62245448A (ja) キャッシュメモリシステム
JPS6261135A (ja) キヤツシユメモリ
JP2580263B2 (ja) バッファ記憶装置
JPS6255743A (ja) キヤツシユメモリおよびこれを用いたキヤツシユメモリシステム
WO2023208087A1 (zh) 一种数据处理方法、装置及相关设备
JPS5841584B2 (ja) マルチアクセスメモリ方法およびマルチアクセス用メモリチツプ
JPS6290740A (ja) ワンチツプキヤツシユメモリ
JPS62205455A (ja) ワンチツプキヤツシユメモリ

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term