JPH0685155B2 - ワンチップキャッシュメモリ - Google Patents

ワンチップキャッシュメモリ

Info

Publication number
JPH0685155B2
JPH0685155B2 JP63169283A JP16928388A JPH0685155B2 JP H0685155 B2 JPH0685155 B2 JP H0685155B2 JP 63169283 A JP63169283 A JP 63169283A JP 16928388 A JP16928388 A JP 16928388A JP H0685155 B2 JPH0685155 B2 JP H0685155B2
Authority
JP
Japan
Prior art keywords
memory
data
address
chip
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.)
Expired - Lifetime
Application number
JP63169283A
Other languages
English (en)
Other versions
JPH0218642A (ja
Inventor
貞信 池田
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
Nippon Electric Co Ltd
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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP63169283A priority Critical patent/JPH0685155B2/ja
Publication of JPH0218642A publication Critical patent/JPH0218642A/ja
Publication of JPH0685155B2 publication Critical patent/JPH0685155B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 技術分野 本発明は1チップの集積回路内にディレクトリもデータ
メモリも内蔵するワンチップキャッシュメモリに関する
ものであり、特に高速データ読出しが可能なワンチップ
キャッシュメモリに関するものである。
従来技術 プロセッサと主メモリとの間に小容量の高速なバッファ
メモリを設置することにより、実効的な主メモリのアク
セス時間を高速化しうることはコンピューティングサー
ベイ(Computing Survey)14巻3号1982年473〜530ペー
ジに詳しく述べられているように一般によく知られてい
る。
この手法は通常キャッシュメモリと呼ばれ、広く計算機
システムに使用されている。これは、計算機システム上
で実行されるプログラムのメモリアクセスにおいては局
所性があるという性質を利用したものであり、プロセッ
サから主メモリへのアクセスに際し、アクセスの行なわ
れたワードを含む一定サイズ(量)の連続した記憶位置
(通常これをブロックと呼ぶ)の内容を主記憶からキャ
ッシュメモリに取り込むことにより、メモリアクセスの
大部分は、高速なキャッシュメモリへのアクセスです
み、低速な主メモリへのアクセスを不要とすることがで
き、実効的なメモリアクセス時間を短縮することができ
る。
キャッシュメモリは、あとで詳しく述べるように、アド
レスレジスタ、データレジスタ、ディレクトリ、データ
メモリ、制御回路等から構成されるが、従来はこれらは
論理ゲート、メモリ等の集積回路チップを組み合わせて
構成されていた。しかしながら集積回路においては、チ
ップ内では高速な論理動作あるいはメモリ動作が可能で
あるのに対して、信号線をチップ外に取出す場合にはチ
ップ外の信号線の駆動のためにチップ内の場合に比べて
多大の遅延時間を費やしてしまうために、キャッシュメ
モリ全体としての処理速度を高めることが困難であると
いう欠点があった。
一方、集積回路技術の進歩により1チップの集積度が向
上した場合には、前述のキャッシュメモリ全体を1チッ
プ内に格納することにより、キャッシュメモリの性能を
格段に向上させることが可能となる。しかしながら、キ
ャッシュメモリを1チップで実現しても、プロセッサの
高速化も進んでいるため必ずしも速度が一致するわけで
はなく、プロセッサの高速性をより生かすための仕掛け
をキャッシュメモリチップ内に組込むことが必要にな
る。
発明の目的 この発明は前述の要求を満たすためになされたもので、
この発明の第1の目的はワンチップキャッシュメモリを
提供することにあり、この発明の第2の目的は特に高速
なデータ読出しが可能なワンチップキャッシュメモリを
提供することにある。
発明の構成 この発明において、ワンチップキャッシュメモリは、同
一チップ上に当該チップに保持しているブロックを管理
するためのディレクトリ、ブロックデータの保持のため
のデータメモリ、最後にCPUが読取ったアドレスを含む
データブロックが保持された読出しデータブロックレジ
スタ、読出しデータブロックレジスタを管理するための
一致検出回路および関連する制御回路を内蔵し、プロセ
ッサからキャッシュメモリへのメモリアクセス要求の通
信のための入出力端子として、メモリアクセスの要求、
管理信号等のための第1のアクセス制御信号端子、プロ
セッサからのメモリアドレスのための第1のアドレス信
号端子、プロセッサとのデータのやりとりのための第1
のデータ信号端子、キャッシュメモリから主メモリとの
間のメモリアクセス要求の通信のための入出力端子とし
て第2ののアスセス制御信号端子、第2のアドレス信号
端子、第2のデータ信号端子、当該キャッシュメモリチ
ップへの前記プロセッサからのメモリアクセス要求が有
効であるチどうかを指定するためのキャッシュチップ選
択端子を持ち、前記キャッシュチップ選択端子に値“1"
が印加されている場合にのみキャッシュメモリとしての
動作を行なうことができ、更に前記書込みバッファビジ
ー信号端子が“1"のときプロセッサからの書込みを持た
せるように構成されている。
このように構成されているから、このワンチップキャッ
シュメモリを複数個用いて、プロセッサからのメモリア
クセス要求制御信号線、アドレス線、データ線を各々す
べての前記複数個のワンチップキャッシュメモリの第1
のアクセス制御信号端子、第1のアドレス信号端子、第
1のデータ信号端子に接続し、前記すべてのワンチップ
キャッシュメモリの第2のアクセス制御信号端子、第2
のアドレス信号端子、第2のデータ信号端子を、各々メ
モリアクセス要求制御信号線、アドレス線、データ線を
介して主記憶に接続し、前記各ワンチップキャッシュメ
モリの前記キャッシュチップ選択端子にはプロセッサか
らキャッシュチップ選択信号が排他的に印加され、前記
各ワンチップキャッシュメモリの前記書込バッファビジ
ー端子が相互に接続されることにより、プロセッサから
のメモリアクセス要求に前記キャッシュチップ選択信号
で指定されたワンチップキャッシュメモリチップのみが
キャッシュメモリとしての動作を行うことができる。特
にプロセッサからの連続した番地へのメモリ読出しを、
読出しデータブロックバッファから行なうことにより高
速に実行することができる。
実施例 この発明の実施例を説明する。まず、この発明の実施例
におけるキャッシュメモリチップの構成を第1図を参照
して説明する。この実施例においてはキャッシュメモリ
チップは端子として電源、グランド、クロック等のため
の端子(図示せず)と、プロセッサとの通信のための端
子として、プロセッサからのメモリへのアクセス要求の
通知およびキャッシュメモリでのアクセスの完了通知の
ためのプロセッサアクセス端子PC、メモリアドレスの通
知のためのプロセッサアドレス端子PA、データのやりと
りのためのプロセッサデータ端子PDをもち、主記載との
通信のための端子として、同様にメモリアクセス端子M
C、メモリアドレス端子MA、メモリデータ端子MDをも
つ。これに加えてキャッシュメモリチップは、プロセッ
サからのメモリアクセス要求に際して動作を行なうべき
キャッシュメモリチップを指定するためのキャッシュチ
ップ選択端子CS及び主記憶の書込みバッファレジスタに
データがあることを示す書込みバッファビジー信号端子
WBを持つ。
プロセッサアドレス端子PAはアドレスレジスタ11の入力
側に接続されており、アドレスレジスタ11のブロックア
ドレス部の出力はディレクトリ12及び一致検出回路19に
印加されるとともにメモリアドレス端子MAにも印加され
ている。アドレスレジスタ11のブロック内ワードアドレ
ス部の出力は制御回路13で生成されるワードアドレスと
ともにブロック内ワードアドレスとしてデータメモリ14
及び読出しデータブロックレジスタ16に印加されるとと
もにメモリアドレス端子MAにも印加されている。
ディレクトリ12の一致アドレス出力FBA は、データメモ
リ14にブロックアドレスとして印加されるとともに、リ
プレースメント回路15にも印加されている。リプレース
メント回路15で生成されたリプレースすべきデータメモ
リ14上のブロックアドレスは、ディレクトリ12に書込み
アドレスとして印加されている。ディレクトリ12からの
一致検出信号Fは制御回路13に印加されている。一致検
出回路19からの一致検出信号FRは制御回路13に印加され
ている。プロセッサデータ端子PDには読出しデータブロ
ックレジスタ16の出力側および書込みバッファレジスタ
17の入力側が接続されている。読出しデータブロックレ
ジスタ16の入力にはデータメモリ14からの読出しデータ
ブロックが印加され、書込みバッファレジスタ17の出力
は書込みデータとして書込みデータレジスタ18を経由し
てデータメモリ14に印加されるとともにメモリデータ端
子MDにも印加されている。
書込みデータレジスタ18は書込みバッファレジスタ17又
はメモリデータ端子MDから書込みデータを受ける。キャ
ッシュチップ選択端子CSは制御回路13に接続されてい
る。制御回路13はプロセッサアクセス端子PCから印加さ
れるキャッシュメモリの初期化要求、メモリへの書込
み、読出し要求を受けて対応する処理を行なうための制
御回路であり、ここで生成される主記憶へのアクセス要
求はメモリアクセス端子MCに印加されている。
次にこの発明の実施例におけるキャッシュメモリチップ
の動作を説明する。
<読出し処理> プロセッサPからプロセッサアクセス端子PCを介して制
御回路13にメモリ読出しの指令が印加されると、制御回
路13はキャッシュチップ選択端子CSを調べ、これに値
“0"が印加されている場合には、このキャッシュメモリ
チップCでは何の動作も行なわない。キャッシュチップ
選択端子CSに値“1"が印加されている場合には、プロセ
ッサアドレス端子PAに印加されているメモリアドレスを
アドレスレジスタ11にセットしたうえで、このブロック
アドレス部の値によりディレクトリ12を検索する。
この検索で一致が検出された場合、即ち、アクセスの要
求のあったアドレスを含むブロックが自キャッシュメモ
リ上に存在する場合(但し一致検出回路19は一致検出せ
ずその出力FRは“0"の場合)には、ディレクトリ12の出
力する一致検出アドレスFBA によりリプレースメント回
路15を更新し、同じくディレクトリ12の出力するブロッ
クアドレスFBA アドレスとしてデータメモリ14を読出
し、その読出された値を読出しデータブロックレジスタ
16に格納しアドレスレジスタ11のブロック内ワードアド
レスの値を検出しデータブロックレジスタ16に与え、プ
ロセッサへどのワードを出力するか指示したうえでプロ
セッサアクセス端子PCにアクセスの完了したことを知ら
せる信号を印加する。同時に読出しデータブロックレジ
スタ16に保持されているデータブロックを目指すアドレ
スレジスタ11からのブロックアドレスを一致検出回路19
に格納する。
ディレクトリ12で一致が検出されない場合、即ちアクセ
スの要求のあったアドレスを含むブロックが自キャッシ
ュメモリ上に存在しない場合には、制御回路13はブロッ
クのそのロードのために次の処理を行なう。
先ず、リプレースメント回路15でリプレースすべきデー
タメモリ14上のブロックを決定し、これに対応するディ
レクトリ12のエントリにアドレスレジスタ11のブロック
アドレス部の値を登録する。次にアドレスレジスタ11の
ブロックアドレス部の出力と制御回路13で生成するブロ
ック内のワードアドレスをメモリアドレス端子MAに、メ
モリ読出し要求をメモリアクセス端子MCに印加すること
により、主記憶を読出し、メモリデータ端子MDに読出さ
れたデータを書込みデータレジスタ18を介してデータメ
モリ14に書込む。
ブロック内に属する全ワードに対してこれを行ったの
ち、ディレクトリ12にこのブロックが有効であることが
登録することによりブロックのロードの処理が完了す
る。この後で前述のキャッシュメモリの読出し処理を再
実行することによりプロセッサからの読出しが行なわれ
ることになる。
ディレクトリ12で一致が検出され、かつ一致検出回路19
で一致が検出された場合、即ち直前にアクセスの要求の
あったアドレスを含むブロックに連続してアクセスの要
求があった場合には、制御回路13にはディレクトリ12か
らの一致検出信号Fに加えて、一致検出回路19からの一
致検出信号FRにて通知される。制御回路13は一致検出回
路19からの一致検出信号FRを受取ると、前記ディレクト
リ12で一致が検出された時と同じ動作をするが、読出し
データブロックレジスタ16には直前にアクセスしたデー
タブロックが残っているので、プロセッサアクセス端子
PCに直ちにアクセスの完了したことを知らせる信号を印
加する。
<書込み処理> 主記憶への書込み要求があった場合には、この実施例で
は次のような処理が行なわれる。即ち、プロセッサPか
らプロセッサアクセス端子PCを介して制御回路13にメモ
リ書込みの指令が印加されると、制御回路13はキャッシ
ュチップ選択端子CSを調べ、これに値“0"が印加されて
いる場合には、このキャッシュメモリチップCでは何の
動作も行なわない。キャッシュチップ選択端子CSに値
“1"が印加されている場合には、書込みバッファビジー
信号端子WBに“1"が印加されているかを調べ、“1"が印
加されている場合は、0"が印加されるのを待ってプロセ
ッサアドレス端子PAに印加されているメモリアドレスを
アドレスレジスタ11にセットし、プロセッサデータ端子
PDに印加されている書込みデータを書込みバッファレジ
スタ17にセットし、プロセッサアクセス端子PCにアクセ
スの完了したことを知らせる信号を印加し、アドレスレ
ジスタ11のブロックアドレス部の値によりディレクトリ
12を検索する。
キャッシュメモリで一致が検出された場合には、対応す
るキャッシュメモリチップの制御回路13は書込みバッフ
ァメモリ17から書込みデータレジスタ18を経由してデー
タメモリ14への書込みを行なうとともに、主記憶に対し
ても書込みを行なう。同時に、アドレスレジスタ11のブ
ロックアドレス部の値と一致検出回路19内の検索を行な
い、一致が検出された場合には、制御回路13は一致検出
回路19に保持された直前のアクセス要求のアドレスを無
効化してしまう。
キャッシュメモリで一致が検出されない場合には、キャ
ッシュメモリチップへのブロックのロードを行なわずに
主記憶への書込みのみを行なう。これは、アドレスレジ
スタ11にセットされているアドレスをメモリアドレス端
子MAに、書込みバッファレジスタ17にセットされている
書込みデータをモリデータ端子MDに印加したうえでメモ
リアクセス端子MCに対してメモリ書込み要求を印加する
ことによりおこなわれる。
前記実施例の説明においては、発明の主旨とは直接関係
がないので制御回路13の具体的な実現方法およびタイミ
ング等も含めた動作等、たとえばメモリアクセス要求、
完了信号を端子に印加するためのゲートの制御、読出
し、書込みデータのデータ端子への印加、受取り等につ
いても詳細な説明は省略したが、これらは従来知られて
いる技術で実現できることは明らかであろう。
またこの実施例におけるディレクトリ12、リプレースメ
ント回路15等もキャッシュメモリで採用するマッピング
方式に応じた構成がなされるであろう。同様に一致検出
回路はエントリ数が1個のディレクトリと考えれば、従
来知られている技術で実現できることは明らかであろ
う。又、プロセッサからのアクセス要求のタイプ、例え
ばコードとデータとに分けて別々に一致検出回路及び読
出しデータブロックレジスタを持たせることもでき、よ
り高速アクセスが可能となる。
またこの実施例においては、主記憶に一個のプロセッサ
が接続されるシングルプロセッサシステムを想定してい
るが、各々がこの発明によるキャッシュメモリを備えて
いる複数個のプロセッサからなるマルチプロセッサシス
テムにおいては、各プロセッサのキャッシュメモリと主
記憶との間での内容の一致を確保するための考慮が必要
になるが、これについても従来知られている種々の方式
が適用できる。
発明の効果 以上述べたようにこの発明によれば、キャッシュメモリ
チップ内に読出しデータブロックレジスタと対応する一
致検出回路を設けると共に、該一致検出回路で一致を検
出するとデータメモリではなく該読出しデータブロック
レジスタからデータを読出せるように構成してあるた
め、連続した番地へのアクセスを高速に実行することが
できるという効果がある。
【図面の簡単な説明】
第1図は本発明の実施例のブロック図である。 主要部分の符号の説明 11……アドレスレジスタ 12……ディレクトリ 13……制御回路 14……データメモリ 15……リプレースメント回路 16……読出しデータブロックレジスタ 17……書込みバッファレジスタ 18……書込みデータレジスタ 19……一致検出回路 MC……メモリアクセス端子 MA……メモリアドレス端子 MD……メモリデータ端子 PC……プロセッサアクセス端子 PA……プロセッサアドレス端子 PD……プロセッサデータ端子 CS……チップ選択端子

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】同一チップ上に当該チップに保持している
    ブロックを管理するためのディレクトリ、ブロックデー
    タの保持のためのデータメモリ、直前にアクセスされた
    ブロックデータの保持のための読出しデータブロックレ
    ジスタ、連続するアクセスのブロックアドレス同士を比
    較する一致検出回路、プロセッサから主記憶への書込み
    データを保持する書込みバッファレジスタを内蔵し、前
    記プロセッサからキャッシュメモリへのメモリアクセス
    要求のための入出力端子として、メモリアクセスの要
    求、完了信号等のための第1のアクセス制御信号端子、
    プロセッサからのメモリアドレスのための第1のアドレ
    ス信号端子、プロセッサとのデータのやりとりのための
    第1のデータ信号端子を備え、前記キャッシュメモリか
    ら主記憶との間のメモリアクセス要求の通信のための入
    出力端子として、第2のアクセス制御信号端子、第2の
    アドレス信号端子、第2のデータ信号端子を備え、当該
    キャッシュメモリチップへの前記プロセッサからのメモ
    リアクセス要求が有効であるかどうかを指定するための
    チップ選択端子を持ち、前記キャッシュチップ選択端子
    に値“1"が印加されている場合にのみキャッシュメモリ
    としての動作を行ない、メモリ読出し要求に対し直前の
    読出しと同一ブロックアドレスの場合には、前記読出し
    データブロックレジスタから直接データを読出せるよう
    にし、メモリ書込み要求に対し直前の読出しと同一ブロ
    ックアドレスの場合には、前記読出しデータブロックレ
    ジスタを無効化することを特徴とするワンチップキャッ
    シュメモリ。
JP63169283A 1988-07-07 1988-07-07 ワンチップキャッシュメモリ Expired - Lifetime JPH0685155B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63169283A JPH0685155B2 (ja) 1988-07-07 1988-07-07 ワンチップキャッシュメモリ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63169283A JPH0685155B2 (ja) 1988-07-07 1988-07-07 ワンチップキャッシュメモリ

Publications (2)

Publication Number Publication Date
JPH0218642A JPH0218642A (ja) 1990-01-22
JPH0685155B2 true JPH0685155B2 (ja) 1994-10-26

Family

ID=15883643

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63169283A Expired - Lifetime JPH0685155B2 (ja) 1988-07-07 1988-07-07 ワンチップキャッシュメモリ

Country Status (1)

Country Link
JP (1) JPH0685155B2 (ja)

Also Published As

Publication number Publication date
JPH0218642A (ja) 1990-01-22

Similar Documents

Publication Publication Date Title
US4493026A (en) Set associative sector cache
US3761881A (en) Translation storage scheme for virtual memory system
US7165144B2 (en) Managing input/output (I/O) requests in a cache memory system
JPS5830319Y2 (ja) コンピユ−タシステム
US5155832A (en) Method to increase performance in a multi-level cache system by the use of forced cache misses
US5249284A (en) Method and system for maintaining data coherency between main and cache memories
JPH0668735B2 (ja) キヤツシユメモリ−
CN114063934B (zh) 数据更新装置、方法及电子设备
US5479629A (en) Method and apparatus for translation request buffer and requestor table for minimizing the number of accesses to the same address
JPS5832427B2 (ja) 多重情報処理システム
CN116340203A (zh) 数据预读取方法、装置、处理器及预取器
CA1299767C (en) Cache memory control system
JPS6255743A (ja) キヤツシユメモリおよびこれを用いたキヤツシユメモリシステム
JP2580263B2 (ja) バッファ記憶装置
JPS6261135A (ja) キヤツシユメモリ
JPH0685155B2 (ja) ワンチップキャッシュメモリ
GB2037466A (en) Computer with cache memory
JPH0467662B2 (ja)
JPH07234819A (ja) キャッシュメモリ
JPH02110646A (ja) メモリの先行読出し装置
JPH0266653A (ja) ワンチップキャッシュメモリ
JPH0727491B2 (ja) キヤツシユメモリの書込制御方式
JPS62192831A (ja) キヤツシユメモリのプリフエツチ制御方式
JP3061818B2 (ja) マイクロ・プロセッサ用アクセス・モニタ装置
JPH0719223B2 (ja) キャッシュメモリシステム