JPS6255743A - キヤツシユメモリおよびこれを用いたキヤツシユメモリシステム - Google Patents
キヤツシユメモリおよびこれを用いたキヤツシユメモリシステムInfo
- Publication number
- JPS6255743A JPS6255743A JP60195194A JP19519485A JPS6255743A JP S6255743 A JPS6255743 A JP S6255743A JP 60195194 A JP60195194 A JP 60195194A JP 19519485 A JP19519485 A JP 19519485A JP S6255743 A JPS6255743 A JP S6255743A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- terminal
- cache memory
- block
- cache
- 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)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
「産業上の利用分野」
本発明は、1チツプの集積回路内にディレクトリもデー
タメモリも内蔵するワンチップキャッシュメモリに関す
るものであり、特に複数個のワンチップキャッシュメモ
リを接続することにより大容量のキャッシュメモリを実
現することのできる拡張可能なワンチップキャッシュメ
モリに関するものである。
タメモリも内蔵するワンチップキャッシュメモリに関す
るものであり、特に複数個のワンチップキャッシュメモ
リを接続することにより大容量のキャッシュメモリを実
現することのできる拡張可能なワンチップキャッシュメ
モリに関するものである。
「従来の技術」
プロセッサと主メモリとの間に小容量の高速なバッファ
メモリを設置することにより、実効的な主メモリのアク
セス時間を高速化しうろことはコンピユーテイングサー
ベイ (Computing 5urvey)14巻3
号1982年473〜530ページに詳しく述べられて
いるように一般によく知られている。
メモリを設置することにより、実効的な主メモリのアク
セス時間を高速化しうろことはコンピユーテイングサー
ベイ (Computing 5urvey)14巻3
号1982年473〜530ページに詳しく述べられて
いるように一般によく知られている。
この手法は通常キャッシュメモリと呼ばれ、広く計算機
システムに使用されている。これは、計算機システム上
で実行されるプログラムのメモリアクセスにおいては局
所性があるという性質を利用したものであり、プロセッ
サから主メモリへのアクセスに際し、アクセスの行なわ
れたワードを含む一定サイズ(盪)の連続した記憶位置
(1ffl常これをブロックと呼ぶ)の内容を主記憶か
らキャッシュメモリに取り込むことにより、メモリアク
セスの大部分は、高速なキャッシュメモリへのアクセス
ですみ、低速な主メモリへのアクセスを不要とすること
ができ、実効的なメモリアクセス時間を短縮することが
できる。
システムに使用されている。これは、計算機システム上
で実行されるプログラムのメモリアクセスにおいては局
所性があるという性質を利用したものであり、プロセッ
サから主メモリへのアクセスに際し、アクセスの行なわ
れたワードを含む一定サイズ(盪)の連続した記憶位置
(1ffl常これをブロックと呼ぶ)の内容を主記憶か
らキャッシュメモリに取り込むことにより、メモリアク
セスの大部分は、高速なキャッシュメモリへのアクセス
ですみ、低速な主メモリへのアクセスを不要とすること
ができ、実効的なメモリアクセス時間を短縮することが
できる。
「発明が解決しようとする問題点」
キャッシュメモリは、あとで詳しく述べるように、アド
レスレジスタ、データレジスフ、ディレクトリ、データ
メモリ、制御回路等から構成されるが、従来はこれらは
論理ゲート、メモリ等の集積回路チップを組み合わせて
構成されていた。しかしながら集積回路においては、チ
ップ内では高速な論理動作あるいはメモリ動作が可能で
あるのに対して、信号線をチップ外に取り出す場合には
チップ外の信号線の駆動のためにチップ内の場合に比べ
て多大の遅延時間を費やしてしまうために、キャッシュ
メモリ全体としての処理速度を高めることが困難である
という欠点があった。
レスレジスタ、データレジスフ、ディレクトリ、データ
メモリ、制御回路等から構成されるが、従来はこれらは
論理ゲート、メモリ等の集積回路チップを組み合わせて
構成されていた。しかしながら集積回路においては、チ
ップ内では高速な論理動作あるいはメモリ動作が可能で
あるのに対して、信号線をチップ外に取り出す場合には
チップ外の信号線の駆動のためにチップ内の場合に比べ
て多大の遅延時間を費やしてしまうために、キャッシュ
メモリ全体としての処理速度を高めることが困難である
という欠点があった。
一方、集積回路技術の進歩によりlチップの集積度が向
上した場合には、前述のキャッシュメモリ全体を1チツ
プ内にな格納することにより、キャッシュメモリの性能
を格段に向上させることが可能となる。しかしながら、
キャッシュメモリを1チツプで実現する場合には集積度
の制限から必ずしもlチップ内に十分な容量のキャッシ
ュメモリを格納できるとは限らず、このような場合には
、複数のキャッシュメモリチップを組み合わせて大容量
のキャッシュメモリを実現することが必要になる。
上した場合には、前述のキャッシュメモリ全体を1チツ
プ内にな格納することにより、キャッシュメモリの性能
を格段に向上させることが可能となる。しかしながら、
キャッシュメモリを1チツプで実現する場合には集積度
の制限から必ずしもlチップ内に十分な容量のキャッシ
ュメモリを格納できるとは限らず、このような場合には
、複数のキャッシュメモリチップを組み合わせて大容量
のキャッシュメモリを実現することが必要になる。
この発明は、前述の要求を満たすためになされたもので
、この発明の第一の目的はワンチップキャッシュメモリ
を提供することにあり、この発明の第二の目的は複数の
ワンチップキャッシュメモリを組み合わせて大容量のキ
ャッシュメモリを実現することが可能なワンチップキャ
ッシュメモリを提供することにある。
、この発明の第一の目的はワンチップキャッシュメモリ
を提供することにあり、この発明の第二の目的は複数の
ワンチップキャッシュメモリを組み合わせて大容量のキ
ャッシュメモリを実現することが可能なワンチップキャ
ッシュメモリを提供することにある。
[間刷点を解決するための手段J
この発明において、ワンチップキャッシュメモリは、同
−千ノプ上に当該チップの保持しているブロックを管理
するためのディレクトリ、ブロックデータの保持のため
のデータメモリ、および関連する制御回路を内蔵し、プ
ロセッサからキャッシュメモリへのメモリアクセス要求
の通信のための入出力端子として、メモリアクセスの要
求、完了信号等のための第一のアクセス制御信号端子、
プロセッサからのメモリアドレスのための第一のアドレ
ス信号端子、プロセッサとのデータのやりとりのための
第一のデータ信号端子、キャッシュメモリから主メモリ
との間のメモリアクセス要求の通信のための入出力端子
として第二のアクセス制御信号端子、第二のアドレス信
号端子、第二のデータ信号端子、当該キャッシュメモリ
チップにメモリアクセス要求のあったブロックが存在し
たことを他チップに通知するための一致検出端子、当=
亥キャッシュメモリチップにおいてブロックの割り当て
を行なうべきであることを指定するためのブロックロー
ド起動端子を持ち、前記ブロックロード起動端子に起動
信号が印加された場合に当該キャッシュメモリチップに
おけるブロックのυ1り当てを行なう。
−千ノプ上に当該チップの保持しているブロックを管理
するためのディレクトリ、ブロックデータの保持のため
のデータメモリ、および関連する制御回路を内蔵し、プ
ロセッサからキャッシュメモリへのメモリアクセス要求
の通信のための入出力端子として、メモリアクセスの要
求、完了信号等のための第一のアクセス制御信号端子、
プロセッサからのメモリアドレスのための第一のアドレ
ス信号端子、プロセッサとのデータのやりとりのための
第一のデータ信号端子、キャッシュメモリから主メモリ
との間のメモリアクセス要求の通信のための入出力端子
として第二のアクセス制御信号端子、第二のアドレス信
号端子、第二のデータ信号端子、当該キャッシュメモリ
チップにメモリアクセス要求のあったブロックが存在し
たことを他チップに通知するための一致検出端子、当=
亥キャッシュメモリチップにおいてブロックの割り当て
を行なうべきであることを指定するためのブロックロー
ド起動端子を持ち、前記ブロックロード起動端子に起動
信号が印加された場合に当該キャッシュメモリチップに
おけるブロックのυ1り当てを行なう。
更にこのようなワンチップキャッシュメモリの複数個お
よびリプレース制御手段を備え、プロセッサからのメモ
リアクセス要求制御信号線、アドレス線、データ線は各
々すべての前記ワンチップキャッシュメモリの第一のア
クセス制御信号端子、第一のアドレス信号端子、第一の
データ信号端子に接続され、 前記すべてのワンチップキャッシュメモリの第二のアク
セス制御信号端子、第二のアドレス信号端子、第二のデ
ータ信号端子は、各々メモリアクセス要求制御信号線、
アドレス線、データ線を介して主メモリに接続され、前
記リプレース制御手段は前記複数個のワンチップキャッ
シュメモリの111記第−のアクセス制御信号端子、前
記ブロックロード起動端子および前記一致検出端子に接
続され、 前記各キャッシュメモリの前記一致検出端子からの一敗
検出信号は前記リプレース制御手段に印加され、そのリ
プレース制御手段からのブトlツクロード起動信号は前
記各キャッシュメモリの対応するブロックロード起動端
子に印加されており、前記リプレース制御手段はプロセ
ッサからのメモリアクセス要求に際して、前記各キャッ
シュメモリの前記一致検出端子からの一致検出信号を調
べ、前記複数個のキャッシュメモリのいずれにおいても
要求のあったブロックが見いだされないときに、新にブ
ロックの割り当てを行なうべきキャッシュメモリを決定
し、その決定されたキャッシュメモリに対してブロック
ロード起動信号を印加することにより、キャッシュメモ
リ間では前記リプレース制御手段の定めるリプレースア
ルゴリズムにより、キャッシュメモリ内ではそのキヤ・
2シユメモリの内蔵するリプレースアルゴリズムに従っ
てロードを行なうことを可能としている。
よびリプレース制御手段を備え、プロセッサからのメモ
リアクセス要求制御信号線、アドレス線、データ線は各
々すべての前記ワンチップキャッシュメモリの第一のア
クセス制御信号端子、第一のアドレス信号端子、第一の
データ信号端子に接続され、 前記すべてのワンチップキャッシュメモリの第二のアク
セス制御信号端子、第二のアドレス信号端子、第二のデ
ータ信号端子は、各々メモリアクセス要求制御信号線、
アドレス線、データ線を介して主メモリに接続され、前
記リプレース制御手段は前記複数個のワンチップキャッ
シュメモリの111記第−のアクセス制御信号端子、前
記ブロックロード起動端子および前記一致検出端子に接
続され、 前記各キャッシュメモリの前記一致検出端子からの一敗
検出信号は前記リプレース制御手段に印加され、そのリ
プレース制御手段からのブトlツクロード起動信号は前
記各キャッシュメモリの対応するブロックロード起動端
子に印加されており、前記リプレース制御手段はプロセ
ッサからのメモリアクセス要求に際して、前記各キャッ
シュメモリの前記一致検出端子からの一致検出信号を調
べ、前記複数個のキャッシュメモリのいずれにおいても
要求のあったブロックが見いだされないときに、新にブ
ロックの割り当てを行なうべきキャッシュメモリを決定
し、その決定されたキャッシュメモリに対してブロック
ロード起動信号を印加することにより、キャッシュメモ
リ間では前記リプレース制御手段の定めるリプレースア
ルゴリズムにより、キャッシュメモリ内ではそのキヤ・
2シユメモリの内蔵するリプレースアルゴリズムに従っ
てロードを行なうことを可能としている。
「実施例」
キャソシュメ・モリチップ
この発明の実施例を図面を参照して説明する。
まず、この発明の実施例におけるキャッシュメモリチッ
プの構成を第一図により説明する。この実施例において
はキャッシュメモリチップはメモリーiに必要とする端
子として図に示してないが、電源、グランド、クロック
等のための端子と、図に示すようなプロセッサとの通信
のための端子として、プロセッサからのメモリへのアク
セス要求の通知およびキャッシュメモリでのアクセスの
完了通知のためのプロセッサアクセス端子PC、メモリ
アドレスの通知のためのプロセッサアドレス端子PA、
データのやりとりのためのプロセ・7サデータ端子PD
をもち、主メモリとの通信のための端子として、同様に
メモリアクセス端子MC。
プの構成を第一図により説明する。この実施例において
はキャッシュメモリチップはメモリーiに必要とする端
子として図に示してないが、電源、グランド、クロック
等のための端子と、図に示すようなプロセッサとの通信
のための端子として、プロセッサからのメモリへのアク
セス要求の通知およびキャッシュメモリでのアクセスの
完了通知のためのプロセッサアクセス端子PC、メモリ
アドレスの通知のためのプロセッサアドレス端子PA、
データのやりとりのためのプロセ・7サデータ端子PD
をもち、主メモリとの通信のための端子として、同様に
メモリアクセス端子MC。
メモリアドレス端子MΔ、メモリデータ端子MDをもつ
。これに加えてこのキャッシュメモリチップは特に、こ
のキャッシュメモリチップでのブロックの検出を外部に
通知するための一数構出端子FSおよび、このキャッシ
ュメモリチップでのブロックのロードを起動するための
ブロックロード起動端子CSを持つ。
。これに加えてこのキャッシュメモリチップは特に、こ
のキャッシュメモリチップでのブロックの検出を外部に
通知するための一数構出端子FSおよび、このキャッシ
ュメモリチップでのブロックのロードを起動するための
ブロックロード起動端子CSを持つ。
プロセッサアドレス端子PAはアドレスレジスタ11の
入力に印加されており、アドレスレジスタ11のブロッ
クアドレス部の出力はディレクトリ12に印加されると
ともにメモリアドレス端子MAにも印加されている。ア
ドレスレジスタ11のブロック内ワードアドレス部の出
力は制御回路13で生成されるワードアドレスとともに
ブロック内ワードアドレスとしてデータメモリ14に印
加されるとともにメモリアドレス端子MAにも印jJI
]されている。ディレクトリ12の一致アドレス出力F
BAはデータメモリ14にブロックアドレスとして印加
されるとともにリプレースメント回路15にも印加され
ている。リプレースメント回路15で生成されたリプレ
ースすべきデータメモリ14上のブロックアドレスはデ
ィレクトリ12に書込みアドレスとして印加されている
。ディレクトリ12からの一数構出信号Fは制御回路1
3に印加されているとともに制御回路13を介して一数
構出端子FSに接続されている。プロセッサデータ端子
PDには読み出しデータレジスタ16の出力側および書
込みデータレジスタ17の入力側が接続されている。読
み出しデータレジスタ16の入力側にはデータメモリ1
4からの読み出しデータが印加され、書込みデータレジ
スタ17の出力は書込みデータとしてデータメモリ14
に印加されているとともにメモリデータ端子MDにも印
加されている。ブロックロード起動端子C8は制御回路
13に印加されている。
入力に印加されており、アドレスレジスタ11のブロッ
クアドレス部の出力はディレクトリ12に印加されると
ともにメモリアドレス端子MAにも印加されている。ア
ドレスレジスタ11のブロック内ワードアドレス部の出
力は制御回路13で生成されるワードアドレスとともに
ブロック内ワードアドレスとしてデータメモリ14に印
加されるとともにメモリアドレス端子MAにも印jJI
]されている。ディレクトリ12の一致アドレス出力F
BAはデータメモリ14にブロックアドレスとして印加
されるとともにリプレースメント回路15にも印加され
ている。リプレースメント回路15で生成されたリプレ
ースすべきデータメモリ14上のブロックアドレスはデ
ィレクトリ12に書込みアドレスとして印加されている
。ディレクトリ12からの一数構出信号Fは制御回路1
3に印加されているとともに制御回路13を介して一数
構出端子FSに接続されている。プロセッサデータ端子
PDには読み出しデータレジスタ16の出力側および書
込みデータレジスタ17の入力側が接続されている。読
み出しデータレジスタ16の入力側にはデータメモリ1
4からの読み出しデータが印加され、書込みデータレジ
スタ17の出力は書込みデータとしてデータメモリ14
に印加されているとともにメモリデータ端子MDにも印
加されている。ブロックロード起動端子C8は制御回路
13に印加されている。
制御回路13はプロセッサアクセス端子PCから印加さ
れるキャッシュメモリの初期化要求、メモリへの書込み
、読み出し要求、ブロックロード起動端子C5からのブ
ロックロード要求を受けて対応する処理を行なうための
制御回路であり、ここで生成される主メモリへのアクセ
ス要求はメモリアクセス端子MCに印加されている。
れるキャッシュメモリの初期化要求、メモリへの書込み
、読み出し要求、ブロックロード起動端子C5からのブ
ロックロード要求を受けて対応する処理を行なうための
制御回路であり、ここで生成される主メモリへのアクセ
ス要求はメモリアクセス端子MCに印加されている。
キャッシュメモリチップの1作次
にこの発明の実施例におけるキャッシュメモリチップの
動作を説明する。
動作を説明する。
プロセッサP(図示せず)からプロセッサアクセス端子
PCを介して制御回路13にメモリアクセスの指令が印
加されると、制御回路13はプロセッサアドレス端子1
’Aに印加されているメモリアドレスをアドレスレジス
タ11にセントしたうえで、このブロックアドレス部の
値によりディレクトリ12を検索する。この検索で一致
が検出され、ディレクトリ12の一数構出出力Fが値“
l”を出力した場合、即ち、アクセスの要求のあったア
ドレスを含むフ゛ロックが自キャンシュメモリ(データ
メモリ12)上に存在する場合(ヒントした場合)には
、−敗検出端子FSに値“l”を出力するとともにディ
レクトリ12の出力する一数構出アドレスFBAにより
リプレースメント回路15を更新し、同じくディレクト
リ12の出力するブロックアドレスFBAおよびアドレ
スレジスタ11のブロック内ワードアi゛レスの値をア
ドレスとしてデータメモリ14に対してアクセスを行な
う。即ちアクセス要求が読み出し要求である場合にはデ
ータメモリ14を読み、その読み出された値を読み出し
データレジスタ16に格納し、この出力をプロセソサデ
ーク端子PDに印加したうえでプロセッサアクセス端子
PCにアクセスの完了したことを知らせる信号を印加す
る。アクセス要求が書込み要求である場合にはプロセッ
サデータ端子PD上の書込みデータを書込みデータレジ
スタ17にセットしたうえで、この値をデータメモリ1
4に書き込み、プロセッサアクセス端子PCにアクセス
の完了したことを知らせる信号を印加する。
PCを介して制御回路13にメモリアクセスの指令が印
加されると、制御回路13はプロセッサアドレス端子1
’Aに印加されているメモリアドレスをアドレスレジス
タ11にセントしたうえで、このブロックアドレス部の
値によりディレクトリ12を検索する。この検索で一致
が検出され、ディレクトリ12の一数構出出力Fが値“
l”を出力した場合、即ち、アクセスの要求のあったア
ドレスを含むフ゛ロックが自キャンシュメモリ(データ
メモリ12)上に存在する場合(ヒントした場合)には
、−敗検出端子FSに値“l”を出力するとともにディ
レクトリ12の出力する一数構出アドレスFBAにより
リプレースメント回路15を更新し、同じくディレクト
リ12の出力するブロックアドレスFBAおよびアドレ
スレジスタ11のブロック内ワードアi゛レスの値をア
ドレスとしてデータメモリ14に対してアクセスを行な
う。即ちアクセス要求が読み出し要求である場合にはデ
ータメモリ14を読み、その読み出された値を読み出し
データレジスタ16に格納し、この出力をプロセソサデ
ーク端子PDに印加したうえでプロセッサアクセス端子
PCにアクセスの完了したことを知らせる信号を印加す
る。アクセス要求が書込み要求である場合にはプロセッ
サデータ端子PD上の書込みデータを書込みデータレジ
スタ17にセットしたうえで、この値をデータメモリ1
4に書き込み、プロセッサアクセス端子PCにアクセス
の完了したことを知らせる信号を印加する。
ディレクトリ12で一致が検出されない場合、即ち、ア
クセスの要求のあったアドレスを含むブロックが自キャ
ッシュメモリ (データメモリ14)上に存在しない場
合(ミスヒツトの場合)には、制御回路13はブロック
ロード起動端子CSを調べ、これに値“l”が印加され
ている場合にはブロックのロードのために次の処理を行
なう。
クセスの要求のあったアドレスを含むブロックが自キャ
ッシュメモリ (データメモリ14)上に存在しない場
合(ミスヒツトの場合)には、制御回路13はブロック
ロード起動端子CSを調べ、これに値“l”が印加され
ている場合にはブロックのロードのために次の処理を行
なう。
先ず、リプレースメント回路15でリプレースすべきデ
ータメモリ14上のブロックを決定し、これに対応する
ディレクトリ12のエントリにアドレスレジスタ11の
ブロックアドレス部の値を登録する。次にアドレスレジ
スタ11のブロックアドレス部の出力と制御回路13で
生成するブロック内のワードアドレスをメモリアドレス
端子MAに、メモリ読み出し要求をメモリアクセス端子
MCに印加することにより、主メモリ (図示せず)を
読み出し、これによりメモリデータ端子MDに読み出さ
れたデータを8込みデータレジスタ17を介してデータ
メモリ14に書き込む。ブロック内に属する全ワードに
対してこれを行なったのち、ディレクトリ12にこのブ
ロックが有効であることを登録することによりブロック
のロードの処理が完了する。この後で前述のキャッシュ
メモリの読み出しあるいは凹込みの処理を再実行するこ
とによりプロセッサからのアクセスが行なわれることに
なる。ブロックロード起動端子C8に値“0”が印加さ
れている場合には以上のブロックロードの処理は行なわ
ない。
ータメモリ14上のブロックを決定し、これに対応する
ディレクトリ12のエントリにアドレスレジスタ11の
ブロックアドレス部の値を登録する。次にアドレスレジ
スタ11のブロックアドレス部の出力と制御回路13で
生成するブロック内のワードアドレスをメモリアドレス
端子MAに、メモリ読み出し要求をメモリアクセス端子
MCに印加することにより、主メモリ (図示せず)を
読み出し、これによりメモリデータ端子MDに読み出さ
れたデータを8込みデータレジスタ17を介してデータ
メモリ14に書き込む。ブロック内に属する全ワードに
対してこれを行なったのち、ディレクトリ12にこのブ
ロックが有効であることを登録することによりブロック
のロードの処理が完了する。この後で前述のキャッシュ
メモリの読み出しあるいは凹込みの処理を再実行するこ
とによりプロセッサからのアクセスが行なわれることに
なる。ブロックロード起動端子C8に値“0”が印加さ
れている場合には以上のブロックロードの処理は行なわ
ない。
キャッシュメモリシステム
次に第二図により前述したこの発明によるワンチップキ
ャッシュメモリを用いたキャッシュメモリシステムの構
成および動作を説明する。この実施例においてはキャッ
シュメモリシステムは四個のキャッシュメモリチップC
I、C2,C3,C4を用いて実現されているとする。
ャッシュメモリを用いたキャッシュメモリシステムの構
成および動作を説明する。この実施例においてはキャッ
シュメモリシステムは四個のキャッシュメモリチップC
I、C2,C3,C4を用いて実現されているとする。
また、リプレース制御手段としてのリプレース管理ロジ
ックRCは内部に2ビツトのカウンタCNTを持ってお
り、これによりキャッシュメモリチップ間でファースト
インファーストアウトのリプレースメントアルゴリズム
を実現している。
ックRCは内部に2ビツトのカウンタCNTを持ってお
り、これによりキャッシュメモリチップ間でファースト
インファーストアウトのリプレースメントアルゴリズム
を実現している。
リプレース管理ロジックRCには各キャッシュメモリチ
ップC1,C2,C3,C4の一数構出端子FSi (
i=1.2,3.4)の出力が印加されており、おなじ
くリプレース管理ロジックRCからのブロックロード起
動信号C3i の出力が各各のキャッシュメモリチップ
C1,C2,C3゜C4のブロックロード起動端子C3
に印加されている。
ップC1,C2,C3,C4の一数構出端子FSi (
i=1.2,3.4)の出力が印加されており、おなじ
くリプレース管理ロジックRCからのブロックロード起
動信号C3i の出力が各各のキャッシュメモリチップ
C1,C2,C3゜C4のブロックロード起動端子C3
に印加されている。
プロセッサPからのアクセス要求信号線、アドレス信号
線、データ信号線はすべてのキャッシュメモリチップC
1,C2,C3,C4の各々対応する端子PC,PA、
PDに接続されており、同様にすべてのキャッシュメモ
リチップC1,C2゜C3,C4のメモリアクセス端子
MC、メモリアドレス端子MA、メモリデータ端子MD
は各々アクセス要求信号線、アドレス信号線、データ信
号線に接続され主メモリMMに印加されている。プロセ
ッサPからのアクセス要求信号線はリプレース管理ロジ
ックRCにも印加されている。
線、データ信号線はすべてのキャッシュメモリチップC
1,C2,C3,C4の各々対応する端子PC,PA、
PDに接続されており、同様にすべてのキャッシュメモ
リチップC1,C2゜C3,C4のメモリアクセス端子
MC、メモリアドレス端子MA、メモリデータ端子MD
は各々アクセス要求信号線、アドレス信号線、データ信
号線に接続され主メモリMMに印加されている。プロセ
ッサPからのアクセス要求信号線はリプレース管理ロジ
ックRCにも印加されている。
キャッシュメモリシステムの 乍
プロセッサPからリプレース管理ロジックRCにメモリ
アクセスの指令が印加されると、リプレース管理ロジッ
クRCは各キャッシュメモリチップC1,C2,C3,
C4での前述のディレクトリ12の検索の処理が完了し
た時点においてキャッシュメモリチップC1,C2,C
3,c、iの一致検出端子FSの出力を調べ、すべてが
値“O”の場合にはカウンタCNTで指定されるキヤ、
7シユメモリチソプにブロックロード起動信号を印加し
たうえでカウンタCNTをカウントアンプする。
アクセスの指令が印加されると、リプレース管理ロジッ
クRCは各キャッシュメモリチップC1,C2,C3,
C4での前述のディレクトリ12の検索の処理が完了し
た時点においてキャッシュメモリチップC1,C2,C
3,c、iの一致検出端子FSの出力を調べ、すべてが
値“O”の場合にはカウンタCNTで指定されるキヤ、
7シユメモリチソプにブロックロード起動信号を印加し
たうえでカウンタCNTをカウントアンプする。
ブロックロード起動信号を印加されたキャッシュメモリ
チップでは前述のブロックロードの処理が行なわれるこ
とになる。
チップでは前述のブロックロードの処理が行なわれるこ
とになる。
これにより、この実施例の4個のキャッシュメモリチッ
プからなるキャッシュメモリにおいては、キャッシュメ
モリで必要なブロックが見い出されないとき、即ちミス
ヒントのときにはキャッシュメモリチップ内では、自身
の持つリプレースアルゴリズムキャッシュメモリチップ
間では、ファーストインファーストアウトのリプレース
アルゴリズムで、ブロックのリプレースが行なわれるこ
とになる。
プからなるキャッシュメモリにおいては、キャッシュメ
モリで必要なブロックが見い出されないとき、即ちミス
ヒントのときにはキャッシュメモリチップ内では、自身
の持つリプレースアルゴリズムキャッシュメモリチップ
間では、ファーストインファーストアウトのリプレース
アルゴリズムで、ブロックのリプレースが行なわれるこ
とになる。
このような構成にしてキャッシュメモリの容量を4倍に
することにより、キャッシュメモリにおいて必要なデー
タが見いだされる確率を高めることができる事になる。
することにより、キャッシュメモリにおいて必要なデー
タが見いだされる確率を高めることができる事になる。
以上この発明の実施例について説明したが、この説明に
より明らかなようにこの発明では要は、ワンチップキャ
ッシュメモリは同一チップ上に当該チップの保持してい
るブロックを管理するめだめのディレクトリ、ブロック
ロードの保持のためのデータメモリおよび関連する制御
回路を内蔵し、プロセッサからキャッシュメモリへのメ
モリアクセス要求の通信のための入出力端rとして、メ
モリアクセスの要求、完了信号等のための第一のアクセ
ス制御信号端子、プロセンサからのメモリアドレスのた
めの第一のアドレス信号端子、プロセッサとのデータの
やりとりのための第一のデータ13号端子、キャッシュ
メモリから主メモリとの間のメモリアクセス要求の通信
のための入出力端子として第二のアクセス制御信号端子
、第二のアドレス信号端子、第二のデータ信号端子、当
該キャッシュメモリチップにメモリアクセス要求のあっ
たブロックが存在したことを他チップに通知するための
一致検出端子、当該キャッシュメモリチップにおいてブ
ロックの割り当てを行なうべきであることを指定するた
めのブロックロード起動端子を持ち、前記ブロックロー
ド起動端子に起動信号が印加された場合に当該キャッシ
ュメモリチップにおけるブロックの割り当てを行なうこ
とを特長とするキャッシュメモリを提供することにあり
、さらに前記のキャッシュメモリの複数個およびリプレ
ース制御手段を備え、プロセッサからのメモリアクセス
要求制御信号線、アドレス線、データ線は各々すべての
前記キャッシュメモリの第一のアクセス制御信号端子、
第一のアドレス信号端子、第一のデータ信号端子に接続
され、前記すべてのキャッシュメモリの第二のアクセス
制御信号端子、第二のアドレス信号端子、第二のデータ
信号端子は、各々メモリアクセス要求制御信号線、アド
レス線、データ線を介して主メモリに接続され、前記リ
プレース制御手段は前記複数個のキャッシュメモリの前
記第一のアクセス制御信号端子、前記ブロックロード起
動端子、および前記一致検出端子に接続され、前記各キ
ャソソユメモリの前記一致検出端子からの一致検出信号
は前記リプレース制御手段に印加され、そのリプレース
制御手段からのブロックロード起動信号は前記各キャン
シュメモリの対応するブロックロード起動端子に印加さ
れており、前記リプレース制御手段はプロセッサからの
メモリアクセス要求に際して、前記各キャッシュメモリ
の前記一致検出端子からの一致検出信号を調べ、前記複
数個のキャッシュメモリのいずれにおいても要求のあっ
たブロックが見いだされないときに、新にブロックの割
り当てを行なうべきキャッシュメモリを決定し、決定さ
れたキャッシュメモリに対してブロックロード起動信号
を印加することにより、キャッシュメモリ間では前記リ
プレース制御手段の定めるリプレースアルゴリズムによ
り、前記キャッシュメモリ内ではそのキャッシュメモリ
の内蔵するリプレースアルゴリズムに従ってロードを行
なう拡張可能なキャッシュメモリシステムを提供するこ
とにある。
より明らかなようにこの発明では要は、ワンチップキャ
ッシュメモリは同一チップ上に当該チップの保持してい
るブロックを管理するめだめのディレクトリ、ブロック
ロードの保持のためのデータメモリおよび関連する制御
回路を内蔵し、プロセッサからキャッシュメモリへのメ
モリアクセス要求の通信のための入出力端rとして、メ
モリアクセスの要求、完了信号等のための第一のアクセ
ス制御信号端子、プロセンサからのメモリアドレスのた
めの第一のアドレス信号端子、プロセッサとのデータの
やりとりのための第一のデータ13号端子、キャッシュ
メモリから主メモリとの間のメモリアクセス要求の通信
のための入出力端子として第二のアクセス制御信号端子
、第二のアドレス信号端子、第二のデータ信号端子、当
該キャッシュメモリチップにメモリアクセス要求のあっ
たブロックが存在したことを他チップに通知するための
一致検出端子、当該キャッシュメモリチップにおいてブ
ロックの割り当てを行なうべきであることを指定するた
めのブロックロード起動端子を持ち、前記ブロックロー
ド起動端子に起動信号が印加された場合に当該キャッシ
ュメモリチップにおけるブロックの割り当てを行なうこ
とを特長とするキャッシュメモリを提供することにあり
、さらに前記のキャッシュメモリの複数個およびリプレ
ース制御手段を備え、プロセッサからのメモリアクセス
要求制御信号線、アドレス線、データ線は各々すべての
前記キャッシュメモリの第一のアクセス制御信号端子、
第一のアドレス信号端子、第一のデータ信号端子に接続
され、前記すべてのキャッシュメモリの第二のアクセス
制御信号端子、第二のアドレス信号端子、第二のデータ
信号端子は、各々メモリアクセス要求制御信号線、アド
レス線、データ線を介して主メモリに接続され、前記リ
プレース制御手段は前記複数個のキャッシュメモリの前
記第一のアクセス制御信号端子、前記ブロックロード起
動端子、および前記一致検出端子に接続され、前記各キ
ャソソユメモリの前記一致検出端子からの一致検出信号
は前記リプレース制御手段に印加され、そのリプレース
制御手段からのブロックロード起動信号は前記各キャン
シュメモリの対応するブロックロード起動端子に印加さ
れており、前記リプレース制御手段はプロセッサからの
メモリアクセス要求に際して、前記各キャッシュメモリ
の前記一致検出端子からの一致検出信号を調べ、前記複
数個のキャッシュメモリのいずれにおいても要求のあっ
たブロックが見いだされないときに、新にブロックの割
り当てを行なうべきキャッシュメモリを決定し、決定さ
れたキャッシュメモリに対してブロックロード起動信号
を印加することにより、キャッシュメモリ間では前記リ
プレース制御手段の定めるリプレースアルゴリズムによ
り、前記キャッシュメモリ内ではそのキャッシュメモリ
の内蔵するリプレースアルゴリズムに従ってロードを行
なう拡張可能なキャッシュメモリシステムを提供するこ
とにある。
この要旨に背かぬかぎりいくつかの実現方法があること
は明らかであろう。たとえば、この実施例ではチップ間
のリプレースメンドア火プリズムとしてファーストイン
ファーストアウトのアルゴリズムを採用したが、リプレ
ース管理ロジックRC内に各キャッシュメモリチップで
ブロックが見出された順序を管理するロジックを持たせ
ることにより、チップ間でもLRUのリプレースメント
アルゴリズムとすることも可能である。また、この実施
例の説明においてはメモリアクセスのタイミングを認識
するためにリプレース管理ロジックRCにはプロセッサ
からのメモリアクセス要求信号が印加されているとして
いるが、必ずしもこのような構成にする必要はなく、た
とえばキャッシュメモリチップの一数構出端子FSには
チ°・7プ内でミスヒツトが検出されたときにのみ値“
1”を出力することによりブロックロード起動信号を生
成することも可能であろう。
は明らかであろう。たとえば、この実施例ではチップ間
のリプレースメンドア火プリズムとしてファーストイン
ファーストアウトのアルゴリズムを採用したが、リプレ
ース管理ロジックRC内に各キャッシュメモリチップで
ブロックが見出された順序を管理するロジックを持たせ
ることにより、チップ間でもLRUのリプレースメント
アルゴリズムとすることも可能である。また、この実施
例の説明においてはメモリアクセスのタイミングを認識
するためにリプレース管理ロジックRCにはプロセッサ
からのメモリアクセス要求信号が印加されているとして
いるが、必ずしもこのような構成にする必要はなく、た
とえばキャッシュメモリチップの一数構出端子FSには
チ°・7プ内でミスヒツトが検出されたときにのみ値“
1”を出力することによりブロックロード起動信号を生
成することも可能であろう。
また、この実施例の説明においてはこの発明の要旨とは
直接関係がないの、で制御回路13の具体的な実現方法
およびタイミング等も含めた動作等、たとえばメモリア
クセス要求、完了信号を端子に印加するための仝−トの
制御、読み出し、書込みデータのデータ端子への印加、
受は取り等についても詳細な説明は省略したが、これら
は従来知られている技術で実現できることは明かであろ
う。
直接関係がないの、で制御回路13の具体的な実現方法
およびタイミング等も含めた動作等、たとえばメモリア
クセス要求、完了信号を端子に印加するための仝−トの
制御、読み出し、書込みデータのデータ端子への印加、
受は取り等についても詳細な説明は省略したが、これら
は従来知られている技術で実現できることは明かであろ
う。
リプレース管理ロジックRCに関しても同様である。ま
たこの実施例においては説明の簡単のためにマツピング
方式としては最も単純なフルアソシアティブ方式を想定
しているが、他の方式にすることも可能であり、たとえ
ばセットアソシアティブ方式を採用した場合には、当然
これに伴ってディレクト1月2、データメモ1月4、リ
プレースメント回路15、制御回路13等の構成もこれ
に対応したものとなるのは当然であろう。
たこの実施例においては説明の簡単のためにマツピング
方式としては最も単純なフルアソシアティブ方式を想定
しているが、他の方式にすることも可能であり、たとえ
ばセットアソシアティブ方式を採用した場合には、当然
これに伴ってディレクト1月2、データメモ1月4、リ
プレースメント回路15、制御回路13等の構成もこれ
に対応したものとなるのは当然であろう。
またこの実施例においては主メモリに一個のプロセッサ
が接続されるシングルブロセノサンステムを想定してい
るが、各々がこの発明によるキャッシュメモリを備えて
いる複数個のプロセ、すからなるマルチプロセソサシス
テノ、においては各プロセッサのキャッシュメモリと主
メモリとの間での内容の一敗を確保するための考慮が必
要になるが、これについても従来知られている種々の方
式が適用できるであろう。
が接続されるシングルブロセノサンステムを想定してい
るが、各々がこの発明によるキャッシュメモリを備えて
いる複数個のプロセ、すからなるマルチプロセソサシス
テノ、においては各プロセッサのキャッシュメモリと主
メモリとの間での内容の一敗を確保するための考慮が必
要になるが、これについても従来知られている種々の方
式が適用できるであろう。
「発明の効果」
以上述べたようにこの発明によればキャッシュメモリC
l−C4はそれぞれそれ自体でキャッシュメモリとして
動作し、しかもそれぞれ1つの半導体チップとして構成
されているから高速度に動作する。またこの1チツプキ
ヤツシユメモリは記憶容量はそれ程大きくないため、集
積化が容易である。この1チツプキヤツシユメモリを’
fM数個用いると共にその何れに対してロードさせるか
の制御をリプレース制御手段で行なうことにより、記憶
容量を拡張し、しかも高速で動作するキャッシュメモリ
システムが容易に実現される。
l−C4はそれぞれそれ自体でキャッシュメモリとして
動作し、しかもそれぞれ1つの半導体チップとして構成
されているから高速度に動作する。またこの1チツプキ
ヤツシユメモリは記憶容量はそれ程大きくないため、集
積化が容易である。この1チツプキヤツシユメモリを’
fM数個用いると共にその何れに対してロードさせるか
の制御をリプレース制御手段で行なうことにより、記憶
容量を拡張し、しかも高速で動作するキャッシュメモリ
システムが容易に実現される。
第1図はこの発明によるキャッシュメモリの例を示すブ
ロック図、第2図はこの発明によるキャッシュメモリシ
ステムの例を示すプロ・7り図である。 llニアドレスレジスタ、12:ディレクトリ、13:
制御回路、14:データメモリ、15:リプレースメン
ト回路、16:読み出しデータレジスタ、17:書込み
データレジスタ、MC:メモリアクセス端子、MA:メ
モリアドレス端子、MD:メモリデータ端子、PC:プ
ロセソサアクセス端子、PΔ:プロセソサアドレス端子
、PD:プロセソサデータ端子、FSニ一致検出端子、
CSニブロックロード起動端子、MM:土メモリ、C1
,C2,C3,c、t:・トヤノシュメモリチップ、P
:プロセッサ、RC:リプレース管理ロジック。
ロック図、第2図はこの発明によるキャッシュメモリシ
ステムの例を示すプロ・7り図である。 llニアドレスレジスタ、12:ディレクトリ、13:
制御回路、14:データメモリ、15:リプレースメン
ト回路、16:読み出しデータレジスタ、17:書込み
データレジスタ、MC:メモリアクセス端子、MA:メ
モリアドレス端子、MD:メモリデータ端子、PC:プ
ロセソサアクセス端子、PΔ:プロセソサアドレス端子
、PD:プロセソサデータ端子、FSニ一致検出端子、
CSニブロックロード起動端子、MM:土メモリ、C1
,C2,C3,c、t:・トヤノシュメモリチップ、P
:プロセッサ、RC:リプレース管理ロジック。
Claims (2)
- (1)同一チップ上に当該チップの保持しているブロッ
クを管理するためのディレクトリ、ブロックデータの保
持のためのデータメモリおよび関連する制御回路を内蔵
し、 プロセッサからキャッシュメモリへのメモリアクセス要
求の通信のための入出力端子として、メモリアクセスの
要求、完了信号等のための第一のアクセス制御信号端子
、プロセッサからのメモリアドレスのための第一のアド
レス信号端子、プロセッサとのデータのやりとりのため
の第一のデータ信号端子、 キャッシュメモリから主メモリとの間のメモリアクセス
要求の通信のための入出力端子として、第二のアクセス
制御信号端子、第二のアドレス信号端子、第二のデータ
信号端子、 当該キャッシュメモリチップにメモリアクセス要求のあ
ったブロックが存在したことを他チップに通知するため
の一致検出端子、当該キャッシュメモリチップにおいて
ブロックの割り当てを行なうべきであることを指定する
ためのブロックロード起動端子を持ち、 前記ブロックロード起動端子に起動信号が印加された場
合に当該キャッシュメモリチップにおけるブロックの割
り当てを行なうキャッシュメモリ。 - (2)同一チップ上に当該チップの保持しているブロッ
クを管理するためのディレクトリ、ブロックデータの保
持のためのデータメモリおよび関連する制御回路を内蔵
し、 プロセッサからキャッシュメモリへのメモリアクセス要
求の通信のための入出力端子として、メモリアクセスの
要求、完了信号等のための第一のアクセス制御信号端子
、プロセッサからのメモリアドレスのための第一のアド
レス信号端子、プロセッサとのデータのやりとりのため
の第一のデータ信号端子、 キャッシュメモリから主メモリとの間のメモリアクセス
要求の通信のための入出力端子として、第二のアクセス
制御信号端子、第二のアドレス信号端子、第二のデータ
信号端子、 当該キャッシュメモリチップにメモリアクセス要求のあ
ったブロックが存在したことを他チップに通知するため
の一致検出端子、当該キャッシュメモリチップにおいて
ブロックの割り当てを行なうべきであることを指定する
ためのブロックロード起動端子を持ち、 前記ブロックロード起動端子に起動信号が印加された場
合に当該キャッシュメモリチップにおけるブロックの割
り当てを行なうキャッシュメモリの複数個およびリプレ
ース制御手段を備え、プロセッサからのメモリアクセス
要求制御信号線、アドレス線、データ線は各々すべての
前記キャッシュメモリの第一のアクセス制御信号端子、
第一のアドレス信号端子、第一のデータ信号端子に接続
され、 前記すべてのキャッシュメモリの第二のアクセス制御信
号端子、第二のアドレス信号端子、第二のデータ信号端
子は、各々メモリアクセス要求制御信号線、アドレス線
、データ線を介して前記主メモリに接続され、前記リプ
レース制御手段は前記複数個のキャッシュメモリの前記
第一のアクセス制御信号端子、前記ブロックロード起動
端子および前記一致検出端子に接続され、 前記各キャッシュメモリの前記一致検出端子からの一致
検出信号は前記リプレース制御手段に印加され、そのリ
プレース制御手段からのブロックロード起動信号は前記
各キャッシュメモリの対応するブロックロード起動端子
に印加され、前記リプレース制御手段はプロセッサから
のメモリアクセス要求に際して、前記各キャッシュメモ
リの前記一致検出端子からの一致検出信号を調べ、前記
複数個のキャッシュメモリのいずれにおいても要求のあ
ったブロックが見いだされないときに、新にブロックの
割り当てを行なうべきキャッシュメモリを決定し、その
決定されたキャッシュメモリに対してブロックロード起
動信号を印加することにより、キャッシュメモリ間では
前記リプレース制御手段の定めるリプレースアルゴリズ
ムにより、キャッシュメモリ内では前記キャッシュメモ
リの内蔵するリプレースアルゴリズムに従ってロードを
行なうキャッシュメモリシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60195194A JPS6255743A (ja) | 1985-09-04 | 1985-09-04 | キヤツシユメモリおよびこれを用いたキヤツシユメモリシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60195194A JPS6255743A (ja) | 1985-09-04 | 1985-09-04 | キヤツシユメモリおよびこれを用いたキヤツシユメモリシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6255743A true JPS6255743A (ja) | 1987-03-11 |
Family
ID=16337012
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60195194A Pending JPS6255743A (ja) | 1985-09-04 | 1985-09-04 | キヤツシユメモリおよびこれを用いたキヤツシユメモリシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6255743A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63255888A (ja) * | 1987-04-13 | 1988-10-24 | Matsushita Graphic Commun Syst Inc | フアイル装置 |
JPS63282544A (ja) * | 1987-05-13 | 1988-11-18 | Nec Corp | ワンチツプキヤツシユメモリ |
JP2009157775A (ja) * | 2007-12-27 | 2009-07-16 | Hitachi Ltd | プロセッサ |
US11205944B2 (en) | 2017-08-03 | 2021-12-21 | Alps Alpine Co., Ltd. | Operating device |
US11401984B2 (en) | 2017-08-03 | 2022-08-02 | Alps Alpine Co., Ltd. | Torque generating device |
-
1985
- 1985-09-04 JP JP60195194A patent/JPS6255743A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63255888A (ja) * | 1987-04-13 | 1988-10-24 | Matsushita Graphic Commun Syst Inc | フアイル装置 |
JPS63282544A (ja) * | 1987-05-13 | 1988-11-18 | Nec Corp | ワンチツプキヤツシユメモリ |
JP2009157775A (ja) * | 2007-12-27 | 2009-07-16 | Hitachi Ltd | プロセッサ |
JP4484923B2 (ja) * | 2007-12-27 | 2010-06-16 | 株式会社日立製作所 | プロセッサ |
US8234453B2 (en) | 2007-12-27 | 2012-07-31 | Hitachi, Ltd. | Processor having a cache memory which is comprised of a plurality of large scale integration |
US11205944B2 (en) | 2017-08-03 | 2021-12-21 | Alps Alpine Co., Ltd. | Operating device |
US11401984B2 (en) | 2017-08-03 | 2022-08-02 | Alps Alpine Co., Ltd. | Torque generating device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11055230B2 (en) | Logical to physical mapping | |
JP3807582B2 (ja) | 情報処理装置及び半導体装置 | |
US5251310A (en) | Method and apparatus for exchanging blocks of information between a cache memory and a main memory | |
US6728823B1 (en) | Cache connection with bypassing feature | |
TWI393050B (zh) | 促進多重處理器介面之板內建快取記憶體系統之記憶體裝置及方法及使用其之電腦系統 | |
US6560681B1 (en) | Split sparse directory for a distributed shared memory multiprocessor system | |
US10198357B2 (en) | Coherent interconnect for managing snoop operation and data processing apparatus including the same | |
US6070233A (en) | Processor bus traffic optimization system for multi-level cache utilizing reflection status bit to indicate data inclusion in higher level cache | |
US7685366B2 (en) | System and article of manufacture for storing data | |
JPS6255743A (ja) | キヤツシユメモリおよびこれを用いたキヤツシユメモリシステム | |
US6813694B2 (en) | Local invalidation buses for a highly scalable shared cache memory hierarchy | |
CN116340203A (zh) | 数据预读取方法、装置、处理器及预取器 | |
JPS6261135A (ja) | キヤツシユメモリ | |
US6826655B2 (en) | Apparatus for imprecisely tracking cache line inclusivity of a higher level cache | |
US20010034808A1 (en) | Cache memory device and information processing system | |
US6826654B2 (en) | Cache invalidation bus for a highly scalable shared cache memory hierarchy | |
JP2580263B2 (ja) | バッファ記憶装置 | |
JPH0467662B2 (ja) | ||
JPH07234819A (ja) | キャッシュメモリ | |
US20240012755A1 (en) | Memory system and operating method thereof | |
JPH0685155B2 (ja) | ワンチップキャッシュメモリ | |
JPS6131495B2 (ja) | ||
JPH0719223B2 (ja) | キャッシュメモリシステム | |
JPS63282544A (ja) | ワンチツプキヤツシユメモリ | |
JPS62192831A (ja) | キヤツシユメモリのプリフエツチ制御方式 |