JPH01217530A - キヤツシユメモリ - Google Patents

キヤツシユメモリ

Info

Publication number
JPH01217530A
JPH01217530A JP63041990A JP4199088A JPH01217530A JP H01217530 A JPH01217530 A JP H01217530A JP 63041990 A JP63041990 A JP 63041990A JP 4199088 A JP4199088 A JP 4199088A JP H01217530 A JPH01217530 A JP H01217530A
Authority
JP
Japan
Prior art keywords
storage means
cache memory
processor
data
memory device
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
JP63041990A
Other languages
English (en)
Inventor
Kunio Uchiyama
邦男 内山
Hirokazu Aoki
郭和 青木
Tadahiko Nishimukai
西向井 忠彦
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP63041990A priority Critical patent/JPH01217530A/ja
Priority to KR1019890002031A priority patent/KR890013650A/ko
Priority to EP19890103323 priority patent/EP0335113A3/en
Publication of JPH01217530A publication Critical patent/JPH01217530A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0864Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/601Reconfiguration of cache memory

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は例えばマイクロプロセッサを用いた計算機シス
テムにおけるキャッシュメモリ装置に係り、特に、該キ
ャッシュメモリ装置が基本的にシングルチップの集積回
路で構成され、これらのチップを複数個並列接続するこ
とにより容易にキャッシュメモリ容量を拡張することを
可能とするものである。
〔従来の技術〕
計算機システムにおいて、マイクロプロセッサユニット
(以下MPUと言う)のマシンサイクル時間と、メイン
メモリの動作サイクル時間のギャップを埋めるとともに
、システムの性能を向上させる技術として、キャッシュ
メモリ(バッファメモリ)の技術が良く知られている。
MPUを用いたシステムにおいても、MPUのマシンサ
イクル高速化に伴ないキャッシュメモリを採用するシス
テムが増えてきている。従来キャッシュメモリは、汎用
のRAM部品や論理機能をもつ集積回路を複数組合わせ
て構成していたが、最近は集積回路の集積度向上に伴な
いキャッシュメモリ装置をシングルチップで構成する試
みが見られる。たとえば、1986年のアイ・イー・イ
ー・イー インターナショナル ソリッド ステート 
サーキットコンファレンス ダイジェスト オブ テク
ニカル ペーパーズ(IEEE Internatio
nal 5olid−3tate C1rcuits 
Conference DIGEST OF TECH
NICALPARER3)の第50頁から第51頁に、
また、 1987年の同誌の第266頁から第267頁
においてこの例が見られる。
〔発明が解決しようとする課題〕
キャッシュメモリ装置をシングルチップで実現したキャ
ッシュメモリデバイスでは、集積できるトランジスタ数
に制限があるために、キャッシュメモリ容量が不十分で
あるケースが生じる。このため、キャッシュチップとし
ては、それ単独でキャッシュメモリ装置として動作する
とともに、このキャッシュチップを複数個並列接続する
ことにより、キャッシュメモリの容量が接続された数だ
け、拡張されたキャッシュメモリ装置を構成できる必要
がある。
本発明の目的は、単独で動作可能なキャッシュメモリ装
置であり、さらに、この装置を複数個接続することによ
り、全体のキャッシュメモリの容量が、接続された個数
分だけ拡張され、全体としてキャッシュメモリ装置とし
て矛盾なく動作するキャッシュメモリ装置を提供するこ
とにある。
〔課題を解決するための手段〕
上記目的を達成するためにlMPUの如きプロセッサか
らの複数ビットのアドレス信号の特定ビット信号が所定
コードに一致するなら、キャッシュ・ミス・ヒツトの場
合、シングルチップキャッシュメモリデバイスがメイン
メモリへの命令および/またはデータを読み出すための
アクセスが許可され、上記特定ビット信号が上記所定コ
ードに一致しないならキャッシュ・ミス・ヒツトの場合
のメインメモリへのアク−セスを禁止できるような構成
とする。
上記アクセスが禁止された場合でも、該キャッシュメモ
リデバイス中の命令および/またはデータの記憶動作と
アドレス情報の記憶動作を禁止するのではなく維持させ
る。
シングルチップキャッシュメモリデバイス単独でキャッ
シュメモリ装置を構成する場合は、キャッシュ・ミス・
ヒツトの場合のメインメモリへのアクセスを無条件に許
可するようにする。
シングルチップキャッシュメモリデバイスを複数個並列
接続して大容量のキャッシュメモリ装置を構成する場合
は、アドレス信号の特定ビット信号が各メモリデバイス
に対応した所定コードに一致するデバイスについてはキ
ャッシュ・ミス・ヒツトの場合のメインメモリへのアク
セスを許可し、上記の一致が得られない他のメモリデバ
イスについてはキャッシュ・ミス・ヒツトの場合のメイ
ンメモリへのアクセスを禁止する。
〔作用〕
シングルチップキャッシュメモリデバイスを複数個並列
接続して大容量のキャッシュメモリ装置を構成する場合
、各シングルチップキャッシュメモリデバイスに上記の
ように特定のコードを割り当てることができる。
従って、プロセッサから供給されるアドレス信号に対し
て並列接続された全てのキャッシュメモリデバイスがミ
ス・ヒツトの場合、アドレス信号の特定ビット信号に対
応するコードを有するキャッシュメモリデバイスのみが
メインメモリへのアクセスを許可され、対応するコード
を有さない他のキャッシュメモリデバイスについてはメ
インメモリへのアクセスが禁止されるので、シングルチ
ップキャッシュメモリデバイスを複数個並列接続して大
容量のキャッシュメモリ装置を構成する場合のデバイス
間の矛盾もしくは競合を回避することができる。
[実施例〕 以下、本発明の一実施例を第1図により説明する。この
図はシングルチップキャッシュメモリデバイス10の全
体構成を示したものである。以下、このデバイス10を
キャッシュチップと呼ぶ。
本キャッシュチップ10は、命令および/またはデータ
を処理するプロセッサ(図示せず)と命令および/また
はデータを格納するメインメモリ(図示せず)の間に置
かれ、チップ単独で64キロ・バイトの容量を持つキャ
ッシュメモリ装置として動作する。基本となるデータ幅
は4バイト(32ビツト)であり、アドレス空間として
は、4ギガ・バイトの空間をサポートする。
一般に、メインメモリはまず多数のセクタに分割され、
ひとつのセクタは多数のブロックに分割され、ひとつの
ブロックは複数のワードに分割され、ひとつのワードは
複数のバイトに分割される。
プロセッサから発生される複数ビットのアドレス信号の
うち、セクタ番号、ブロック番号、ワード番号、バイト
番号をそれぞれ指定する領域をタグフィールド、カラム
フィールド、ワードフィールド、バイトフィールドと呼
ぶことにする(第2図参照)。
第1図に示したキャッシュチップ10は、概略として (1)プロセッサとアドレス(A31−2)の通信のた
めの第1端子(401)。
(2)プロセッサと命令および/またはデータ(D31
−0)の通信のための第2端子(400)。
(3)メインメモリとアドレス(MA31−2)の通信
のための第3端子(411)。
(4)メインメモリ命令および/またはデータ(MD3
1−0)の通信のための第4端子(410)。
(5)第1端子(401)と第3端子(411)との間
の第1の信号伝送経路(502)。
(6)第2端子(400)と第4端子(410)との間
の第2の信号伝送経路(500、501)。
(7)メインメモリに格納された命令および/またはデ
ータを一時的に格納するための第1の記憶手段(データ
・アレイ30)。
(8)上記第1の記憶手段(30)に格納された上記命
令および/またはデータのアドレスに関係する情報(タ
グフィールド)を格納するための第2の記憶手段(アド
レスアレイ20)。
(9)上記第2の記憶手段(20)に格納された上記情
報(タグフィールド)と上記第1の信号伝送経路(50
2)から供給されるアドレス信号(タグフィールド)と
の関係(ヒツトまたはミス・ヒツト)を検出する第1の
検出手段(71〜74)。
(10)上記第2の記憶手段(20)に格納された上記
情報(タグフィールド)と上記第1の信号伝送経路(5
02)から供給される上記アドレス信号(タグフィール
ド)との上記関係が所定の状態にある場合(ヒツト時)
は上記第1の検出手段(71〜74)の検出結果に応答
して上記第1の記憶手段(30)に格納された上記命令
および/またはデータを上記第2の信号伝送経路(50
1)および上記第2端子(400)を介して上記プロセ
ッサに伝達せしめ、上記関係が所定の状態にない場合(
ミス・ヒツト時)は上記第1の検出手段(71〜74)
の検出結果に応答して上記メインメモリに格納されると
ともに上記アドレス信号と関係した命令および/または
データを上記メインメモリから読み出しくアクセスし)
上記第2の信号伝送経路(500)および上記第2端子
(400)を介して上記プロセッサに伝達せしめるとと
もに上記第1の記憶手段(30)に格納せしめる制御手
段(90,110)。
(11)該キャッシュチップ(1o)の外部からの制御
信号(CS)を受け上記制御手段(9o。
110)に伝送する端子手段(402)を具備し。
上記制御信号(CS)が所定条件にある場合は上記制御
手段(90,110)は上記メインメモリからの命令お
よび/またはデータの読み出しもしくはこの読み出し情
報の第1の記憶手段(30)への書き込みの少なくとも
一方を禁止し、この動作禁止の間に上記第1および第2
の記憶手段(30,20)の記憶動作を維持することを
特徴とする。
プロセッサから発生される複数ビットのアドレス信号の
うち、第1端子(401)、第1の信号伝送経路(50
2)、ライン(505)を介して第2の記憶手段(20
)に供給されるカラムフィールドの信号はキャッシュ検
索入力信号となり、カラムフィールドに対応したタグフ
ィールドの信号がキャッシュ検索出力信号として第2の
記憶手段(20)の出力ライン(520,522,52
4,526)から取り出される。この出力ライン(52
0゜522.524,526)からはタグフィールドの
信号が有効か否かを示す有効性ビット信号も同時に取り
出される。このように出力ライン(520,522,5
24,526)から取り出されたタグフィールドの信号
は、第1の信号伝送経路(502)、ライン(504)
を介してプロセッサから供給されるタグフィールドのア
ドレス信号と第1の検出手段(71〜74)で比較され
、ヒツト・ミスヒツトが判定される。キャッシュ・ヒツ
トの場合は、第1の記憶手段(30)に格納された命令
および/またはデータが第2の信号伝送経路、伝達手段
(150)および第2端子(400)を介してプロセッ
サに伝達される。
キャッシュチップ(10)単独でキャッシュメモリ装置
を構成する場合は、制御手段(90,110)に伝達さ
れる制御信号(CS)は上記メインメモリからの命令お
よび/またはデータの読み出し動作およびこの読み出し
情報を第1の記憶手段(30)への書き込みを禁止しな
い条件に設定される。
第3図に示すように、キャッシュチップ(10)を複数
個並列接続して大容量のキャッシュメモリ装置を構成す
る場合、各キャッシュチップ(10,#1〜#2)には
特定コードが割付けられ、プロセッサから供給されるア
ドレスのタグフィールド中の特定ビット(A15.A1
4)がその特定コードと一致するキャッシュチップにつ
いては上記メインメモリからの命令および/またはデー
タの読み出し動作およびこの読み出し情報の第1の記憶
手段(30)への書込みが許可され、この一致が得られ
ない他のキャッシュチップについてはこれらの動作が禁
止される。この理由は、下記の通りである。
メインメモリ又はキャッシュメモリ装置から命令および
/またはデータを読み出すためにプロセッサからアドレ
スが発生されると、並列接続された全てのキャッシュチ
ップ(10)の内部で、(1)第2の記憶手段(アドレ
ス・アレイ20)のカラムフィールドのアドレス検索、
(2)上記アドレス検索による第2の記憶手段(アドレ
ス・アレイ20)からのタグフィールドの読み出し、(
3)上記読み出されたタグフィールドとプロセッサから
発生されたタグフィールドの比較によるキャッシュ・ヒ
ツト又はミス・ヒツトの判定が実行される。
キャッシュ・ヒツトの場合は、複数のキャッシュチップ
(10)のいずれかひとつが真のキャッシュ・ヒツトと
なりその第1の記憶手段(データ・アレイ30)から読
み出された情報がプロセッサ(600)に転送される。
ところがキャッシュ・ミス・ヒツトの場合は、複数のキ
ャッシュチップ(10)の全てについてミス・ヒツトと
なる。この場合、複数のキャッシュチップ(10)の全
てがメインメモリに情報読み出しを実行し、読み出され
た情報をプロセッサ(600)に転送することはあまり
効率的ではない。さらに、メインメモリから読み出され
た情報を複数のキャッシュチップ(10)の全ての第1
の記憶手段(データ・アレイ30)に格納することは、
複数個のキャッシュチップ(10)の並列接続自体を無
意味とする。
以上の理由により、第3図の実施例においては、キャッ
シュ・ミス・ヒツトの場合、プロセッサ(600)から
発生されるアドレス信号の特定ビット(A15.A14
)に応答して複数のキャッシュチップ(10)のいずれ
かひとつのチップについてのみメインメモリからの情報
読み出し動作および読み出し情報の第1の記憶手段(3
0)への書込みが許可され、他のチップについてはこれ
らの動作が禁止されている。
また、キャッシュ・ヒツトの場合、上記特定ビット(A
15.A14)に応答して上述のように真のキャッシュ
・ヒツトのキャッシュチップ(10)の伝達手段(15
0)の信号伝達が許可されて第1の記憶手段(30)か
ら読み出された情報がプロセッサ(600)に転送され
る。一方、真のキャッシュ・ヒツトに関与しない他のキ
ャッシュチップ(1o)の伝達手段(150)の信号伝
達が禁止されるので、真のキャッシュ・ヒツトのキャッ
シュチップ(10)からプロセッサ(600)に転送さ
れる情報が妨害されることがない。
一方、メインメモリに格納された命令および/またはデ
ータはキャッシュメモリ装置に接続されたプロセッサと
異なる他のプロセッサ(例えばコプロセッサ)もしくは
I10装置によってしばしば書き換えられる。このよう
な情報書換えが生じた場合には、この書換情報のアドレ
スと同一のアドレスを有するとともにキャッシュメモリ
装置中に格納されている命令および/またはデータを無
効とする必要がある。
この無効化動作を実行するために、第1図に示したキャ
ッシュチップは (12)上記第2の記憶手段(20)に格納された上記
情報(タグフィールド)と第3端子(411)に該キャ
ッシュチップ(10)の外部から供給される外部アドレ
ス信号(タグフィールド)との関係(ヒツトまたはミス
・ヒツト)を検出する第2の検出手段(81〜84)を
具備し、上述のように他のプロセッサもしくはI10装
置からのアドレス(MA31−2)、命令および/デー
タ(MD31−〇)がメインメモリ、第3端子(411
)。
第4端子(410)に供給される際にネゲートされる情
報(MR/W)と上記第2の検出手段(81〜84)と
に応答して上記制御手段(90,110)は、上記関係
が所定の関係(ヒツト)にある際に、上記第2の記憶手
段(20)に格納された上記情報(タグフィールド)を
無効化する。
以下、第1図乃至第6図を参照して1本発明の一実施例
をより詳細に説明する。
この一実施例の基本的特徴は、第3図に示すように、キ
ャッシュチップ(10)を複数個並列接続して大容量の
キャッシュメモリ装置を構成する際、プロセッサから供
給されるアドレスのデクフィールド中の特定ビット(A
15.A14)に応答して複数のキャッシュチップ(1
0)のいずれかひとつを選択するための制御信号(CS
)を発生する制御信号発生手段(610)をキャッシュ
チップ(10)の外部に配置したことにある。
第1図はひとつのキャッシュチップ(10)の内部構成
を詳細に説明するためのブロックダイアグラムであって
、キャッシュチップ10の内部には、アドレスタグ情報
を格納するためのアドレスアレイ20と命令および/ま
たはデータを格納するためのデータアレイ30が置かれ
ている。アドレスアレイ20は、1024ワード×19
ビツトの2ボ一トRAMを4個(21,22,23゜2
4)用いて構成される。データアレイ30は4096ワ
ード×32ビツトのRA Mを4個(31゜32.33
,34)を用いて構成される。この2つのアレイ20.
30を用いてキャッシュチップ10は、単独でカラム数
1024.ブロック長16バイトの4ウエイ・セットア
ソシアティブ方式キャッシュメモリを実現している。ま
た、このキャッシュチップで用いられているストア方式
は、データのストア時に常にメインメモリの内容を更新
するストアスル一方式を用いている。
キャッシュチップ10は、左側の信号ピン(400〜4
06)を介して、プロセッサに接続され、右側の信号ピ
ン(410〜417)を介してメインメモリバスに接続
される。キャッシュチップ10のサポートするアドレス
空間は4ギガ・バイト(32ビツト・アドレス)であり
、プロセッサ側からは、上位の30ビツトがアドレス信
号ピンA31〜A2(401)から、下位2ビツトAl
AOがデコードされた形のバイトコントロール信号がピ
ンBCO−BC3(405) から、キャッシュチップ
10に入力される6バイトコントロ一ル信号ピン405
から入力される信号は、アドレスの下位2ビットAl、
AOの情報以外に、データ長の情報も含んでいる。例え
ば、4バイトにより1ワードが構成され、1ワード中の
3バイト目と4バイト目のデータが同時にアクセスされ
る場合には、BCO=O,BC1=O,BC2=1゜B
C3=1 (すなわち、実際にアクセスするデータのバ
イト位置に対応する)の形でバイトコントロール信号ピ
ン405に1が立ち、キャッシュチップ10に入力され
る。
プロセッサから出力されたアドレス信号の上位30ビツ
トは、キャッシュチップ10のアドレス信号ピンA31
〜A2(401)に入力され、その値がアドレス保持レ
ジスタ40に保持されると伴に、チップ内部の30ビツ
ト幅の内部アドレスバス502に流れる。アドレスの各
ビットは第2図に示すようなフィールドに割当てられて
いる。
第13ビツトから第4ビツトまではカラム・フィールド
として割当てられる。内部アドレスバス502上のカラ
ム・フィールドに対応する部分がライン505を介して
、アドレス・アレイ20のアドレス検索入力となり、こ
の検索入力に対応するカラムに格納されている複数のア
ドレス・タグが、出力ライン520,522,524,
526を介して読出される。520は、アトレイ・アレ
イ20の第1セツト21からのアドレス・タグ読出し線
、522は第2セツト22からのアドレス・タグ読出し
線、524は第3セツト23からのアドレス・タグ読出
し線、526は第4セツト24からのアドレス・タグ読
出し線であり、各アドレス・タグ読出し線は19ビツト
幅である。
19ビツトの内分けは、アドレス・タグの18ビツトと
有効性ビットの1ビツトである。各セットから読出され
たアドレス・タグ情報は、それぞれ対応する比較器71
,72,73,74に入力され、ライン504を介して
、各比較器に入力される内部アドレスバス502上の第
31ビツトから第14ビツトのタグ・フィールド(第2
図)上の値と比較される。この比較結果が一致し、かつ
、有効性ビットが1の時には、対応するHpt信号58
1.582,583,584がアサートされ。
キャッシュ制御回路90に報告される。ヒツト信号58
1,582,583,584のどれか1つが7サートし
た状態は、キャッシュ・ヒツトの状態であり、データ・
アレイ30の中に所望のブロック(16バイト)が格納
されていることを示す。
信号線509上の情報によってデータアレイ30の内容
は、アドレスアレイ20と並列に読み出されている。信
号線509には、アドレスビットのうち第2図に示すカ
ラム・フィールドとワード・フィールドの値が流れてく
る。カラム・フィールドによってデータアレイの各ウェ
イ31,32゜33.34内の16バイト長(すなわち
4ワ一ド分)のブロックが4組さし示され、ワード・フ
ィールドによって16バイトのうちの4バイト(すなわ
ち1ワード)が選択され、結局各ウェイ31゜32.3
3.34から4つの4バイト・データが読み出されてい
る。この時、キャッシュ・ヒツト状態であることがわか
れば、すなわち、ヒツト信号581,582,583,
584のどれか1つがアサートされていれば、その情報
からセレクタ120によって、対応するデータ・アレイ
30のウェイから読み出された4バイトのデータが選択
され、内部データバス501にその値が流れ、出カパツ
ファ150を介し、キャッシュチップ10のデータピン
D31−Do (400)からプロセッサにデータが渡
される。
一方、アドレスアレイ20を検索した結果、ヒツトしな
かった場合には、アドレス保持レジスタ40に保持され
たアドレス情報に従ってメインメモリ(図示されず)に
対してキャッシュチップ10は必要なデータを含む16
バイト長のブロックを4バイト単位で4口取りに行き、
そのデータはメモリデータ信号ピン410から入力され
内部データバス501に流れる。入力される16バイト
のデータのうち最初の4バイトはプロセッサ側のデータ
信号ピン400よりプロセッサに流されると同時に、デ
ータバス511およびセレクタ550.551,552
,553を介して、データアレイ30の4つのウェイ(
31,32,33゜34)のうち1つに書込まれる。こ
のウェイの選択を行なうための情報は、リプレースメン
ト・メモリ60に格納されている情報から得られる。こ
のリプレースメント・メモリ60は、1024カラム×
6ビツトの2ポ一トRAMであり、各6ビツトの情報の
中にブロック転送時にデータアレイ30のどのウェイに
新しいブロックを格納すれば良いかを決定する情報が含
まれる。このリプレースメント・メモリ60の内容は、
アドレスアレイ20が検索されるのと同時に、パス50
8から流れてくるカラムフィールドの値によって検索さ
れ、リプレースメント論理100を介して、よく知られ
ているL RU (Least Recently 1
Jsed)アルゴリズムを用いて更新される。
このLRUアルゴリズムは、1987年のアイ・イー・
イー・イー インターナショナル ソリッドステート 
サーキツツコンファレンス ダイジェスト オブ テク
ニカル ペーパーズ 第266ページ〜第267ページ
に報告されている。
さて、前記のように16バイト単位(すなわち4ワ一ド
単位)のブロック転送において、2ワード目から4ワー
ド目までの12バイトデータは、プロセッサに転送され
ることなく、データアレイ30に書換まれるのみとなる
。また、この最中にアドレスアレイ20には、新しく転
送されたブロックに対するアドレスのうち、ダグフィー
ルド(第2図参照)の部分がパス570を介して、ブロ
ックが格納されたウェイと対応するウェイに書込まれる
。また、タグフィールドと同時に、データの有効性を示
す有効性ビットが1にされ同時に同じ場所に書込まれる
アドレス保持レジスタ40の下位2ビツト(A3−A 
2)には、+1のインクリメンタ130が付いていて、
2ビツトのカウンタになっている。ここで、ブロック転
送時にアドレス保持レジスタ40に保持されたアドレス
のブロック内ワードアドレスが更新される。すなわち、
前記のようにブロック転送は4ワ一ド単位であるため、
1ワ一ド分のデータ取り込み終了後インクリメンタ13
0は+1カウントアツプして5次の1ワ一ド分のデータ
取り込みに移行する。従って、4ワ一ド単位のブロック
転送終了後には、インクリメンタ130は+3カウント
アツプすることになる。メインメモリに対するアドレス
は出力バッファ250の信号ピンMA31−MΔ2(4
11)を介し、メインメモリに送出される。
レジスタ590は、プロセッサがメインメモリに命令お
よび/またはデータを書込む時に一担その値を格納して
おくためのバッファである。本キャッシュチップ10は
、ストアスル一方式を用いるためにアドレスアレイ20
を検索して、ヒツトした場合にはデータアレイ30にレ
ジスタ590内のデータがパス510、およびセレクタ
550あるいは551あるいは552あるいは553を
介して書込まれる。また、メインメモリには、ノ(ス5
92.出力バツファ220を介して、信号ピン410よ
り書込まれる。
すなわち、レジスタ40およびレジスタ590は、メイ
ンメモリにデータを書込む時にストア1<ツファとして
働く、すなわち、プロセッサがキャッシュチップ10を
介して、メインメモリにデータを書込む時に、メインメ
モリがビジーである場合には、プロセッサは書込みアド
レスをレジスタ40に、書込みデータをレジスタ590
に書込むことにより、メインメモリへの書込みが終了し
たとして、次の動作に移る。この後、キャッシュチップ
10は、メモリパス要求信号MBREQ(416)を継
続的に出力するため、メインメモリがビジーでなくなっ
た時にメモリバスアクノリッジ信号にBACK(417
)がアサートされ、初めてレジスタ590に保持されて
いたデータがメインメモリに書込まれる。
いままで一部述べたように、第1図の左側にプロセッサ
とキャッシュチップ10とのインタフェース信号ピンが
あり、右側にキャッシュチップ10とメインメモリバス
とのインタフェースピンがある。400はプロセッサと
のデータバス信号ピンであり、401はプロセッサから
のアドレスの上位30ビツトを受けるアドレスピンであ
る。
C5402は、キャッシュチップ10のチップセレクト
ピンであり、この信号C8402に1が入力される(ア
サートされる)とキャッシュチップ10の内部は完全に
動作を行ない、0が入力される(ネゲートされる)と冒
頭で述べたように内部の一部の動作が抑止される。この
信号ピンC3402により、キャッシュチップ10の拡
張が可能となる。キャッシュチップ10を単独で用いる
場合にはこのピンC8402に常に1を入力して使用す
る。Ag2O3はアドレスストローブ信号ピンであり、
401に有効なアドレスが入力される時に1が、それ以
外の時には0が入力される。R/W404は、プロセッ
サからのリード(R/W=1)。
ライト(R/W=O)要求を区別するための入力ピンで
、アドレス401と同じタイミングで入力される。BC
3〜BGOは、書込み、読出しデータのバイト位置を指
定する。 RDY406は、読出しあるいは書込みのサ
イクルが終了することをプロセッサに知らせるためのピ
ンであり、出力バッファ210を介して信号が出される
次にキャッジシュチップ10のメインメモリバスに対す
るインタフェースピンについて述べる。
MD31〜MDO(410)は、32ビット幅の双方向
データバスピンである。MA31−MA2は、メモリア
ドレスの上位30ビツトが通る双方向のメモリアドレス
バス・ピンである。MAS412は、メモリバスのアド
レスストローブ信号ピンで。
411上に有効なメモリアドレスを流す時には、この信
号ピンに1を送出する。また、この信号ピンに1が入力
されている時には、メモリアドレスピン411上に有効
なアドレスがのっていることを示す。MR/W413は
、先に述べたように他のプロセッサまたはI10装置か
らのメインメモリへのリード(MR/W=1)、ライト
(MR/W=O)の区別をする信号を入出力するピンで
ある。MBC3〜MBCO(414)は、他のプロセッ
サまたはI10装置がデータのバイト位置を指示するた
めの信号ピンである。MRDY415は、メインメモリ
バスのサイクルが終了することを報告する信号が入力さ
れるピンである。メインメモリーリードサイクルの時に
は、メインメモリから命令および/またはデータが41
0に入力されると同時に、信号ピン415にレディ信号
がメインメモリから返される。MBREQ416は、メ
インメモリバスの使用を要求する信号であり、キャッシ
ュチップ10がメインメモリバスを使用したい場合に、
このピンから1を出力し、外部のバスアービタに対して
使用を要求する。この結果、メインメモリバスが使用可
能な状態になれば、外部のバスマスタは許可信号をキャ
ッシュチップ10に出し、それが入力ピンMBACK4
17より入力される。このようにして初めてキャッシュ
チップ10がメインメモリバスを使用可能となる。
信号ピン410,411,412,413゜414.4
15は、メインメモリバス上のパスマスタとなり得るデ
バイスの対応する信号ピンと接続される。このため、キ
ャッシュチップがメインメモリバスを使用しない時には
、出力バッファ220.250,260,280,29
0がオフにされ、対応する信号ピン410,411,4
12゜413は入力ピンとなり、414はハイインピー
ダンス状態となる。このようにしてキャッシュチップ1
0がメインメモリバスを使用しない時には、逆にキャッ
シュチップ10がメインメモリバス上のバスサイクルを
監視することになる。このバス監視機能は、他のパスマ
スタ(すなわち他のプロセッサまたはI10装置)によ
ってメインメモリの内容が書換えられた時に、キャッシ
ュチップ10におけるキャッジシュの内容を検索し、同
一のアドレスを持つブロックがあった場合にそれを無効
化するという機構である。
上記キャッシュの無効化は次のようにして行なわれる。
 MAS412から1が入力され、MR/W413から
0(ライト)が入力されると1MA31〜MA2(41
1)から入力されるアドレスをレジスタ50にラッチす
る。この値のキャッシュ無効用アドレスバス上を流れ、
バス506を介してアドレスのカラム・フィールド(第
2図)の値をアドレスとして、アドレス・アレイ20の
所望のカラムを読み出す。読出された4つのタグ(52
1゜523.525,527)と、メインメモリバスの
ライトサイクルのアドレスのタグ・フィールド(第2図
)の値(バス507上の値)とをそれぞれ対応する4個
の比較器81,82,83.84で比較し、その結果を
ヒツト信号585,586゜587.588としてキャ
ッシュ制御回路90に出力する。もし、どれかのヒツト
信号に1が立っていれば、そのヒツト信号に対応するウ
ェイの現状さされているカラムに入っているアドレスの
タグ情報を無効化する。このために、その場所の有効性
ビットにOを書込む、また、これと同時にバス560か
ら流れてくる同じカラム・フィールドの値によりアクセ
スされているリプレースメント・メモリ60のリプレー
スメント情報を、無効化に伴ない更新する。
本キャッシュチップ10は、C8402人カピンを1に
固定して使用することにより、単独で64キロ・バイト
、1024カラム×4ウエイのセット・アソシアティブ
方式のキャッシュメモリ装置として動作するだけでなく
、C8402人力ビンにアドレス情報の一部をデコード
した結果を入力することにより、容易に容量の拡張が可
能である。  。
第3図には、4個のキャッシュチップ10を接続して、
全体で256キロバイト、4096カラム×4ウエイの
セット・アソシアティブ方式のキャッシュメモリ装置を
構成した例である。プロセッサ600とのデータバス7
00は各キャッシュチップ10のデータピン400に接
続される。プロセッサ600から出力されるアドレス信
号701゜アドレスストローブ信号703.リード/ラ
イト要求信号704.バイト制御信号705は、それぞ
れキャッシュチップ10の入力ピン401゜403.4
04,405に接続される。また、各キャッシュチップ
10のRDY406からの出力は、ワイヤードORされ
プロセッサ600のレディ信号706に接続される。プ
ロセッサ600より発生されるアドレス信号701の第
15ビツトと第14ビツトは、デコード・フィールド(
第2図)となり、バス702を介して、2ビツトデコー
ダ610に入力され、その4本のデコード出カフ07゜
708.709,710が各キャッシュチップのチップ
セレクトピンC8402に入力される。第1図における
データピン400に接続された出力バッファ150は、
チップセレクト信号C8402により選択されたキャッ
シュチップ10についてのみ出カニネーブルとなり、そ
れ以外では出力バッファ150の出力はハイインピーダ
ンス状態となっている。また、 RDY406に接続す
る出力バッファ210は、チップセレクトピンC840
2により選択された場合に出カニネーブルとなり、それ
以外はハイインピーダンス状態となる。
一方、第3図に示すようにメインメモリバスのデータバ
ス725.アドレスバス724.アドレスストローブ信
号723.リード/ライト信号722、バイト制御信号
721.レディ信号720は、それぞれ各キャッシュチ
ップ10の対応するピン410,411,412,41
3,414゜415に共通に接続される。各キャッシュ
チップ10のMBREQ416から出力されるバス要求
信号は、それぞれ別々にメインメモリバスのバスアービ
ターに送出され、それに対する応答としての別々のバス
アクノリッジ信号がMBACJ417に入力される。
メインメモリバスの信号726は、これら複数の信号群
である。
第3図においてアドレスの第15ビツト(A15)。
第14ビツト(A14)をデコードする2ビツトデコー
ダ610の出力のうち707はA15=O。
A14=Oの時だけ1となり、また、708はA15=
O,A14=1の時、709はA15=1.A14=O
の時、710はA15=1.A14=1の時だけ1とな
り、対応するキャッシュチップ10が選択される。この
結果、第3図における上から第1番目のキャッシュチッ
プ内のアドレスアレイ20に格納されている有効なアド
レス・タグの第15ビツトと第14ビツト(下位2ビツ
ト)の値は必ずOOとなり、第2番目のキャッシュチッ
プ10ではその値は01.第3番目ではその値は10.
第4番目では11となり、複数のキャッシュチップ10
のアドレスアレイ20に同一な値の有効なアドレスタグ
が存在するということはない。このため、プロセッサ6
00がデータをフェッチする場合、すべてのキャッシュ
チップ10のアドレスアレイ20が検索されても、高々
どれか1つのチップがヒツトするだけである。また、ヒ
ツトしなかった場合には、チップセレクト707゜70
8.709,710で選択されたひとつのキャッシュチ
ップ10がメインメモリとの間でブロック転送を行ない
データをプロセッサに渡し、また1選択されたキャッシ
ュチップ10内にそのブロックを格納する。また、プロ
セッサ600がデータをメインメモリにストアする場合
には、選択されたキャッシュチップ10がメインメモリ
にそのデータをストアする役割りを担う。また、すべて
のキャッシュチップ10は、プロセッサ600のアドレ
スのデコード結果により選択されたかされないかに無関
係に、メインメモリバスのアドレスを監視している。
第1図において、キャッシュ制御回路90の内部は独立
に動作する2つのステート・マシンが存在する。第4図
は、キャッシュ制御回路90内の2つのステートマシン
を示したもので、900はプロセッサ側からのキャッシ
ュアクセスをコントロールするアクセス制御回路であり
、901はメインメモリバス上のアドレスを監視して必
要に応じてキャッシュのエントリを無効化するための無
効化制御回路である。
アクセス制御回路900の入力信号は、キャッシュチッ
プ10のチツプセレ“クトピン402から入力されるC
8906.アドレスストローブピン403から入力され
るAS 907.リード/ライトピン404から入力さ
れるR/W90Bと、メモリバス制御回路110からの
データアクノリッジ信号DTACK910である。もう
1つの入力信号は、プロセッサからのアクセスに対する
アドレス・アレイ20の検索結果である各ウェイのヒツ
ト信号581.582,583,584を902により
論理和した結果のHIT903である。出力信号として
は、キャッシュを制御する各種の制御信号群912゜メ
モリバス制御回路110にメインメモリへのアクセスを
要求するMREQ911 、および出力バッファ210
を介してレディ信号ピン406につながるRDY909
がある。各入力信号は、現在のステート情報とともに組
合せ回路904に入力され出力信号を作成し、また、次
のステートを作成する。905は、ステートを保持する
ためのフリップ・フロップ群である。
このフリップフロップ群905は第5図で後述するアク
セス制御回路900の各踵状fiso、 SFI。
SBI〜Sa番、 5lll、 5IF2に対応する情
報を保持するものである。
無効化制御回路901の入力信号の1つは、無効化用ヒ
ツト信号914であり、メインメモリバス上のアドレス
でアドレスアレイ2oを格索した結果の各ウェイのヒツ
ト信号585,586゜587.588を913により
論理和した信号である。
もう1つの入力信号REF916は、メモリバス制御回
路110からの信号であり、メインメモリバス上で他の
バスマスタがメインメモリに対してデータを書くことを
認知した時、すなわちアドレスストローブ信号ピンMA
S412から1が入力され、さらに、リード/ライト信
号ピンMR/W413から0が入力された時に、このR
EF916に1が流れ、901に無効化のためのアドレ
スアレイ20の検索を指示する。918は組合せ回路で
あり、915はステートを保持するためのフリップ・フ
ロップ群である。このフリップフロップ群915は第6
図で後述する無効化制御回路901の各種状態So、S
^、Stに対応する情報を保持するものである。また、
917は、無効化のためのアドレスアレイ2oの制御信
号群である。
第5図に、アクセス制御回路900の状態遷移図である
++SOは初期状態であり、プロセッサ600からのア
ドレスにより、アドレスアレイ20を検索してヒツト信
号1(Ir2O3にその結果を反映させている。C89
06=OあるいはA S 907=Oである限り、So
の状態にとどまる0次に、AS907=1かつC890
6=1かつR/W=1の時、すなわちプロセッサ600
から、データのフェッチ起動がかかり、かつキャッシュ
チップ10がチップセレクトにより選択されるとSR状
態に移り、ヒツト判定を行なう、この結果、ヒツトして
いれば(旧T903=1)、データアレイ30からのデ
ータと共にRDY909に1を返し、プロセッサ600
にキャッシュ内のデータを渡し、再び初期状態Soにも
どる。ヒツトしていなければ(HIT903= O) 
、メインメモリに対してブロックを要求するために、s
aiからSaws SBg、Saaへの状態に入るll
5RからSBIに遷移する時に、MREQ911に1を
送出され、メモリ制御回路110に対して、メインメモ
リから1ワ一ド目分の4バイトのデータをフェッチする
ことを要求する。メインメモリからキャッシュチップ1
0にデータが渡されると、メモリ制御回路110はDT
ACK910に1を送出し、アクセス制御回路900に
知らせる。
それにより、データアレイ30にそのデータが格納され
ると同時にプロセッサ600にもデータが送られ、それ
を知らせるためにRDY909に1が送出される。また
このDTACK910の返答と同時に状態は881から
Satに移り、ブロック内の2ワ一ド目分の4バイトの
データをメインメモリに要求するためにMREQ911
に再び1が送出され、DTACK910の返答を待つ、
以下、同じようにSB2から、SagssagからSB
4.さらにSB4からSoへと状態が進み、ブロック内
の2ワード目から4ワード目までの12バイトのデータ
がデータアレイ30に格納される。ただし、この12バ
イトのデータは、プロセッサ600には、転送されず、
最初の1ワード目の4バイトのデータがプロセッサに転
送されるのみである。
AS907=1.C8906=1かつR/W=0のケー
スは、プロセッサ600がデータをメインメモリにスト
アする時に、キャッシュチップ10が選択された場合で
ある。この場合には、状態はSoからSwzの状態に遷
移して、RDY909に1が送出され、プロセッサ60
0は、ストアが完了したと理解しそのサイクルを終了す
る。この時にストア・データのアドレスとそのデータの
値はそれぞれアドレス保持レジスタ40とデータ保持レ
ジスタ590に保持されるだけで、メインメモリへの書
込みはまだ行なわれていない0次にSwzからSwxへ
の遷移でメモリバス制御回路110へMREQ911 
を介して1が送出され、メインメモリへの書込み要求が
出され、Swzの状態でDTACに910の返答を待つ
、返答がくるとSW2から初期状態S。
にもどる0本キャッシュチップ10はストアスル一方式
であるので、ストアの場合も、アドレスアレイ20の検
索が行なわれ、ヒツトしていればSwzあるいはSwz
の状態の時に、対応するデータが更新される。
第6図は、無効化制御回路901の状態遷移図である1
180は初期状態でありメインメモリバス上のアドレス
により、アドレスアレイ20を検索しその結果が無効化
用ヒツト信号IHIT914に反映されている。メイン
メモリバス上の他のバスマスタがメインメモリに対して
データ書込みのサイクルを起動すると、キャッシュチッ
プ10のMAS412から1が、MR/W413からO
が入力され、メモリバス制御回路110は、それに反応
してREF916に1を送出し、無効化制御回路901
に起動をかける。これにより状態がSoからS^に遷移
しテl1lIT914 ノ判定を行なう、 IHIT9
14がoであるならば(ヒツトしない時)、初期状態S
oに戻るがIHIT914が1の場合(ヒツトした時)
には、状態S!に移りヒツトしたブロックを無効化する
ための制御信号を917より送出する。この無効化はア
ドレスアレイ20のヒツトした位置に0を書込むことに
より行なわれる。そのあと、状態はSoに戻る。
以上のようにアクセス制御回路900と無効化制御90
1、そしてメモリバス制御回路110は動作し、この中
でチップセレクト信号C8402がアサートされないか
ぎりアクセス制御回路900は初期状態Soにとどまり
、状態遷移進行が抑止される。
このため、複数のキャッシュチップを用いた場合に1つ
のチップが選択されてプロセッサからアクセスされてい
る時でも、他のチップはメインメモリバス上のアドレス
を監視してキャッシュの無効化を行なっていたり、チッ
プ内のストアバッファのデータをメインメモリに書込む
動作を行なうことができる。
次に、第7図乃至第9図を参照して1本発明の他の実施
例を説明する。第1図乃至第6図の実施例と同一の部分
については説明を省略し、異なる部分につき詳細に説明
する。
この第7図乃至第9図の実施例の基本的特徴は、プロセ
ッサから供給されるアドレスの特定ビット(A15.A
14)に応答して複数のキャッシュチップ(10)のい
ずれかひとつを選択するための制御信号(CS)を発生
する制御信号発生手段(1030)を各キャッシュチッ
プ(10)の内部に配置したことにある(第7図および
第8図参照)。
以下、第7図につき詳細に説明する。
1010 (MDI−0)は、キャッシュチップ10を
単独で用いるか否かを指示するためのモードピンである
。本実施例では、このピンは2本あり、3つの構成モー
ドがある。キャッシュチップ10単独でシステムを構成
する場合には、MDI=Q、MDO=Oと入力を固定す
る。一方、キャッシュチップ10を2個接続する場合に
は、MDI=O,MDO=1とし、4個接続する場合に
は、MDI=1.MDO=Oとする。1020(PCI
−O)は、上記1010でキャッシュチップ10を複数
用いる構成を指定した時に、使用される各キャッシュチ
ップ10の位置情報を入力するピンである。1010で
、2チツプ構成を指定した場合には(MDI=O,MD
O=1)、1つのキャッシュチップ10の1020ピン
のPLOに0(第1番目)を入力し、もう一方のキャッ
シュチップ10のPLOに1(第、2番目)を入力して
おく。また、1010で4チツプ構成を指定した場合(
MDI=1.MDO=O)には、第1番目のキャッシュ
チップ10の1020ピンのPLIに0、PLOに0を
入力する。第2番目のチップに対しては、PL1=O,
PLO=1.第3番目のチップに対シテはPL1=1.
PLO=O,第4番目のチップに対してはPL1=1.
PLO=1とする。
1010と1020から入力された値は、プロセッサか
らのアドレスビットの第15.14ビツト(A15.A
14)の値とともに選択回路1030に入力され、これ
らの情報をもとにチップ選択信号906 (C3)を作
成する。この信号C8906は、プロセッサからのアク
セス要求に応じてキャッシュチップ10が動作すべきか
否かを規定する信号である。
1010ピンの入力が’00’  (単独構成モード)
の時には、C8906上の値は1となり、常にキャッシ
ュチップ10が選択された状態となる。
1010ピンの入力が’01’  (2チツプ構成モー
ド)の時には、1020ピンのPLO入力と、アドレス
ビットのA14 (第14ビツト)が比較され一致した
時に、C8906上の値が1となり、キャッシュチップ
10が選択された状態となる。
また、1010ピンの入力が’10’  (4チツプ構
成モード)の時には、1020ピンのPLI。
PLO入力と、アドレスビットA15.A14が比較さ
れ一致した時に、C5906の値が1となり、キャッシ
ュチップ10が選択された状態となる。
第9図に上記機能を実現する選択回路1030の内部論
理を示す。1100は、1010からの入力信号、11
10は1020からの入力信号である。1120,11
30.1140は2ビツト入力のデコーダ、1170,
1180,1200゜1210.1230はAND回路
、1150゜1160.1190,1370,1380
,1240゜1250はOR回路である。デコーダ11
20の出力信号1260は単独栖成モードの時に、12
70は2チツプ構成モードの時に、1280は4チツプ
構成モードの時に1となる。また、デコーダ1130の
出力信号1290は、PL1=O。
PLO=Oの時に、1300は、PL1=O。
PLO=1の時に、1310はP L 1 = 1 、
 PLO二〇の時に、1320はPL1=1.PLO=
1の時に1となる。また、デコーダ1140の出力信号
1330はA15=O,A14=Oの時に、1340は
A15=O,A14=1の時に、1350はA15=1
.A14=Oの時に、1360はA15=1.A14=
1の時にそれぞれ1となる。
第8図は、キャッシュチップ10を4個並列接続して容
量を拡張するための結線図を示すもので。
第3図の制御信号発生手段(610)が省略されること
ができる。
第8図において、各キャッシュチップ10の構成モード
指定ビン1010には、’10’  (MDI=1.M
DO=O)が固定入力され、4チツプ構成であることが
指定される。また、第1番目のキャッシュチップ10(
31)の位置情報指定ピン1020には’oo’ 、第
2番目のキャッシュチップ10(#2)には’01’、
第3番目(#3)には’10’、第4番目(#4)には
′11′が固定入力される。このように各キャッシュチ
ップ10に対して、それぞれ異なる位置情報が指定され
るために、プロセッサ600からのアクセス要求により
、どれか1つのキャッシュチップ10のC8906が1
になり(そのキャッシュチップが選択される)、2つ以
上のキャッシュチップが選択されるということはない。
〔発明の効果〕
本発明により、単独でキャッシュメモリ装置として動作
し、かつ、複数接続することによりそのメモリ容量を容
易に拡張することが可能となる。
【図面の簡単な説明】
第1図は本発明の一実施例によるキャッシュチップの内
部構成を説明するためのブロックダイアグラム、第2図
はアドレスのフィールド構成を示す図、第3図は第1図
に示したキャッシュチップを複数個並列接続して大容量
のキャッシュメモリ装置を構成した場合の結線図、第4
図は第1図に示したキャッシュチップ中のキャッシュ制
御回路90の内部構成図、第5図は第4図のキャッシュ
制御回路90内のアクセス制御回路900の状態遷移図
、第6図は第4図のキャッシュ制御回路90内の無効化
制御回路901の状態遷移図、第、7図は本発明の他の
実施例によるキャッシュチップの内部構成を説明するた
めのブロックダイアグラム、第8図は第7図に示したキ
ャッシュチップを複数個並列接続して大容量のキャッシ
ュメモリ装置を構成した場合の結線図、第9図は第7図
に示したキャッシュチップ中の選択回路1030の内部
構成図である。

Claims (1)

  1. 【特許請求の範囲】 1、命令および/またはデータを処理するプロセッサと
    該命令および/またはデータを格納するためのメインメ
    モリとの間に配置されるキャッシュメモリ装置を構成す
    るための半導体チップに構成されたシングルチップキャ
    ッシュメモリデバイスであつて、該シングルチップキャ
    ッシュメモリデバイスは; (1)上記プロセッサとのアドレスの通信のための第1
    端子と; (2)上記プロセッサとの命令および/またはデータの
    通信のための第2端子と; (3)上記メインメモリとのアドレスの通信のための第
    3端子と; (4)上記メインメモリとの命令および/またはデータ
    の通信のための第4端子と; (5)上記第1端子と上記第3端子との間の第1の信号
    伝送経路と; (6)上記第2端子と上記第4端子との間の第2の信号
    伝送経路と; (7)上記メインメモリに格納された上記命令および/
    またはデータを一時的に格納するための第1の記憶手段
    と; (8)上記第1の記憶手段に格納された上記命令および
    /またはデータのアドレスに関係する情報を格納するた
    めの第2の記憶手段と; (9)上記第2の記憶手段に格納された上記情報と上記
    第1の信号伝送経路から供給されるアドレス信号との関
    係を検出する第1の検出手段と; (10)上記第2の記憶手段の手段に格納された上記情
    報と上記第1の信号伝送経路から供給される上記アドレ
    ス信号との上記関係が所定の状態にある場合は上記第1
    の検出手段の検出結果に応答して上記第1の記憶手段に
    格納された上記命令および/またはデータを上記第2の
    信号伝送経路および上記第2端子を介して上記プロセッ
    サに伝達せしめ、 上記関係が所定の状態にない場合は上記第1の検出手段
    の検出結果に応答して上記メインメモリに格納されると
    ともに上記アドレス信号に関係した命令および/または
    データを上記メインメモリから読み出し上記第2の信号
    伝送経路および上記第2端子を介して上記プロセッサに
    伝達せしめるとともに上記第1の記憶手段に格納せしめ
    る制御手段と; (11)該シングルチップキャッシュメモリデバイス外
    部からの制御信号を受け上記制御手段に伝送する端子手
    段を具備し、 上記制御信号が所定条件にある場合は上記制御手段は上
    記メインメモリからの命令および/またはデータの読み
    出しもしくはこの読み出し情報の上記第1の記憶手段へ
    の書き込みの少なくとも一方を禁止し、この動作禁止の
    間に上記第1および第2の記憶手段の記憶動作を維持す
    ることを特徴とするシングルチップキャッシュメモリデ
    バイス。 2、請求項1記載のシングルチップキャッシュメモリデ
    バイスは; (12)上記第2の信号伝送経路の情報を上記第2端子
    に伝達する伝達手段をさらに具備してなり、 上記制御信号が上記所定条件にある場合は上記制御手段
    は上記伝達手段の信号伝達を禁止することを特徴とする
    シングルチップキャッシュメモリデバイス。 3、請求項1記載のシングルチップキャッシュメモリデ
    バイスは; (12)上記第2の記憶手段に格納された上記情報と上
    記第3端子に該シングルチップキャッシュメモリデバイ
    スの外部から供給される外部アドレス信号との関係を検
    出するための第2の検出手段をさらに具備してなり、上
    記プロセッサと異なる他の装置によつて上記メインメモ
    リに情報の書き込みがなされる際に上記第2の記憶手段
    に格納された上記情報と上記外部アドレス信号との上記
    関係が所定の状態にある場合は上記第2の検出手段の検
    出結果に応答して上記制御手段は上記第2の記憶手段に
    格納された上記情報を無効化することを特徴とするシン
    グルチップキャッシュメモリデバイス。 4、命令および/またはデータを処理するプロセッサと
    該命令および/またはデータを格納するためのメインメ
    モリとの間に配置されるキャッシュメモリ装置を構成す
    るためのキャッシュメモリデバイスであつて、該キャッ
    シュメモリデバイスは; (1)上記メインメモリに格納された上記命令および/
    またはデータを一時的に格納するための第1の記憶手段
    と; (2)上記第1の記憶手段に格納された上記命令および
    /またはデータのアドレスに関係する情報を格納するた
    めの第2の記憶手段と; (3)上記第2の記憶手段の手段に格納された上記情報
    と上記第1の信号伝送経路から供給されるアドレス信号
    との関係を検出する第1の検出手段と; (4)上記第2の記憶手段に格納された上記情報と上記
    プロセッサから供給される上記アドレス信号との上記関
    係が所定の状態にある場合は上記第1の検出手段の検出
    結果に応答して上記第1の記憶手段に格納された上記命
    令および/またはデータを上記プロセッサに伝達せしめ
    、上記関係が所定の状態にない場合は上記第1の検出手
    段の検出結果に応答して上記メインメモリに格納される
    とともに上記アドレス信号に関係した命令および/また
    はデータを上記メインメモリから読み出して上記プロセ
    ッサに伝達せしめるとともに上記第1の記憶手段に格納
    せしめる制御手段と; (5)該キャッシュメモリデバイス外部からの制御信号
    を受け上記制御手段に伝送する端子手段を具備し、 上記制御信号が所定条件にある場合は上記制御手段は上
    記メインメモリからの命令および/またはデータの読み
    出しもしくはこの読み出し情報の上記第1の記憶手段へ
    の書き込みの少なくとも一方を禁止し、この動作禁止の
    間に上記第1および第2の記憶手段の記憶動作を維持す
    ることを特徴とするキャッシュメモリデバイス。 5、請求項4記載のキャッシュメモリデバイスは; (6)上記第1の記憶手段よりの命令/またはデータを
    上記プロセッサに伝達する伝達手段をさらに具備してな
    り、 上記制御信号が上記所定条件にある場合は上記制御手段
    は上記伝達手段の信号伝達を禁止することを特徴とする
    キャッシュメモリデバイス。 6、請求項4記載のキャッシュメモリデバイスは; (6)上記第2の記憶手段に格納された上記情報と該キ
    ャッシュメモリデバイスの外部から供給される外部アド
    レス信号との関係を検出するための第2の検出手段をさ
    らに具備してなり、 上記プロセッサと異なる他の装置によつて上記メインメ
    モリに情報の書き込みがなされる際に上記第2の記憶手
    段に格納された上記情報と上記外部アドレス信号との上
    記関係が所定の状態にある場合は上記第2の検出手段の
    検出結果に応答して上記制御手段は上記第2の記憶手段
    に格納された上記情報を無効化することを特徴とするキ
    ャッシュメモリデバイス。 7、命令および/またはデータを処理するプロセッサと
    該命令および/またはデータを格納するためのメインメ
    モリとの間に配置されるキャッシュメモリ装置であつて
    、該キャッシュメモリ装置は半導体チップに構成された
    シングルチップキャッシュメモリデバイスを複数個並列
    接続することによつて構成され、各シングルチップキャ
    ッシュメモリデバイスは; (1)上記プロセッサとのアドレスの通信のための第1
    端子と; (2)上記プロセッサとの命令および/またはデータの
    通信のための第2端子と; (3)上記メインメモリとのアドレスの通信のための第
    3端子と; (4)上記メインメモリとの命令および/またはデータ
    の通信のための第4端子と; (5)上記第1端子と上記第3端子との間の第1の信号
    伝送経路と; (6)上記第2端子と上記第4端子との間の第2の信号
    伝送経路と; (7)上記メインメモリに格納された上記命令および/
    またはデータを一時的に格納するための第1の記憶手段
    と; (8)上記第1の記憶手段に格納された上記命令および
    /またはデータのアドレスに関係する情報を格納するた
    めの第2の記憶手段と; (9)上記第2の記憶手段に格納された上記情報と上記
    第1の信号伝送経路から供給されるアドレス信号との関
    係を検出する第1の検出手段と; (10)上記第2の記憶手段の手段に格納された上記情
    報と上記第1の信号伝送経路から供給される上記アドレ
    ス信号との上記関係が所定の状態にある場合は上記第1
    の検出手段の検出結果に応答して上記第1の記憶手段に
    格納された上記命令および/またはデータを上記第2の
    信号伝送経路および上記第2端子を介して上記プロセッ
    サに伝達せしめ、上記関係が所定の状態にない場合は上
    記第1の検出手段の検出結果に応答して上記メインメモ
    リに格納されるとともに上記アドレス信号に関係した命
    令および/またはデータを上記メインメモリから読み出
    し上記第2の信号伝送経路および上記第2端子を介して
    上記プロセッサに伝達せしめるとともに上記第1の記憶
    手段に格納せしめる制御手段と; (11)該シングルチップキャッシュメモリデバイス外
    部からの制御信号を受け上記制御手段に伝送する端子手
    段を具備し、 上記制御信号が所定条件にある場合は上記制御手段は上
    記メインメモリからの命令および/またはデータの読み
    出しもしくはこの読み出し情報の上記第1の記憶手段へ
    の書き込みの少なくとも一方を禁止し、この動作禁止の
    間に上記第1および第2の記憶手段の記憶動作を維持す
    ることを特徴とし、 上記複数のシングルチップキャッシュメモリデバイスに
    はそれぞれ上記プロセッサから供給されるアドレスの特
    定ビットがその特定コードとして割り付けられ、 上記プロセッサから供給されるアドレスの特定ビットが
    その特定コードに関係するシングルチップキャッシュメ
    モリデバイスについては上記メインメモリからの命令お
    よび/またはデータの読み出しもしくはこの読み出し情
    報の上記第1の記憶手段への書き込みが許可され、 上記プロセッサから供給されるアドレスの特定ビットが
    その特定コードに関係しない他のシングルチップキャッ
    シュメモリデバイスについては上記メインメモリからの
    命令および/またはデータの読み出しもしくはこの読み
    出し情報の上記第1の記憶手段への書き込みの少なくと
    も一方が禁止されることを特徴とするキャッシュメモリ
    装置。 8、請求項7のキャッシュメモリ装置であつて、上記複
    数のシングルチップキャッシュメモリデバイスは; (12)上記第2の信号伝送経路の情報を上記第2端子
    に伝達する伝達手段をさらに具備してなり、 上記制御信号が上記所定条件にある場合は上記制御手段
    は上記伝達手段の信号伝達を禁止することを特徴とする
    キャッシュメモリ装置。 9、請求項7のキャッシュメモリ装置であつて、上記複
    数のシングルチップキャッシュメモリデバイスは; (12)上記第2の記憶手段に格納された上記情報と上
    記第3端子に該シングルチップキャッシュメモリデバイ
    スの外部から供給される外部アドレス信号との関係を検
    出するための第2の検出手段をさらに具備してなり、上
    記プロセッサと異なる他の装置によつて上記メインメモ
    リに情報の書き込みがなされる際に上記第2の記憶手段
    に格納された上記情報と上記外部アドレス信号との上記
    関係が所定の状態にある場合は上記第2の検出手段の検
    出結果に応答して上記制御手段は上記第2の記憶手段に
    格納された上記情報を無効化することを特徴とするキャ
    ッシュメモリ装置。 10、命令および/またはデータを処理するプロセッサ
    と該命令および/またはデータを格納するためのメイン
    メモリとの間に配置されるキャッシュメモリ装置であつ
    て、該キャッシュメモリ装置はキャッシュメモリデバイ
    スを複数個並列接続することによつて構成され、各キャ
    ッシュメモリデバイスは; (1)上記メインメモリに格納された上記命令および/
    またはデータを一時的に格納するための第1の記憶手段
    と; (2)上記第1の記憶手段に格納された上記命令および
    /またはデータのアドレスに関係する情報を格納するた
    めの第2の記憶手段と; (3)上記第2の記憶手段に格納された上記情報と上記
    第1の信号伝送経路から供給されるアドレス信号との関
    係を検出する第1の検出手段と; (4)上記第2の記憶手段の手段に格納された上記情報
    と上記プロセッサから供給される上記アドレス信号との
    上記関係が所定の状態にある場合は上記第1の検出手段
    の検出結果に応答して上記第1の記憶手段に格納された
    上記命令および/またはデータを上記プロセッサに伝達
    せしめ、上記関係が所定の状態にない場合は上記第1の
    検出手段の検出結果に応答して上記メインメモリに格納
    されるとともに上記アドレス信号に関係した命令および
    /またはデータを上記メインメモリから読み出して上記
    プロセッサに伝達せしめるとともに上記第1の記憶手段
    に格納せしめる制御手段と; (5)該キャッシュメモリデバイス外部からの制御信号
    を受け上記制御手段に伝送する端子手段を具備し、 上記制御信号が所定条件にある場合は上記制御手段は上
    記メインメモリからの命令および/またはデータの読み
    出しもしくはこの読み出し情報の上記第1の記憶手段へ
    の書き込みの少なくとも一方を禁止し、この動作禁止の
    間に上記第1および第2の記憶手段の記憶動作を維持す
    ることを特徴とし、 上記複数のキャッシュメモリデバイスにはそれぞれ上記
    プロセッサから供給されるアドレスの特定ビットがその
    特定コードとして割り付けられ、 上記プロセッサから供給されるアドレスの特定ビットが
    その特定コードに関係するキャッシュメモリデバイスに
    ついては上記メインメモリからの命令および/またはデ
    ータの読み出しもしくはこの読み出し情報の上記第1の
    記憶手段への書き込みが許可され、 上記プロセッサから供給されるアドレスの特定ビットが
    その特定コードに関係しない他のキャッシュメモリデバ
    イスについては上記メインメモリからの命令および/ま
    たはデータの読み出しもしくはこの読み出し情報の上記
    第1の記憶手段への書き込みの少なくとも一方が禁止さ
    れることを特徴とするキャッシュメモリ装置。 11、請求項10のキャッシュメモリ装置であつて、上
    記複数のキャッシュメモリデバイスは; (6)上記第2の信号伝送経路の情報を上記プロセッサ
    に伝達する伝達手段をさらに具備してなり、 上記制御信号が上記所定条件にある場合は上記制御手段
    は上記伝達手段の信号伝達を禁止することを特徴とする
    キャッシュメモリ装置。 12、請求項10のキャッシュメモリ装置であつて、上
    記複数のキャッシュメモリデバイスは; (6)上記第2の記憶手段に格納された上記情報と該キ
    ャッシュメモリデバイスの外部から供給される外部アド
    レス信号との関係を検出するための第2の検出手段をさ
    らに具備してなり、 上記プロセッサと異なる他の装置によつて上記メインメ
    モリに情報の書き込みがなされる際に上記第2の記憶手
    段に格納された上記情報と上記外部アドレス信号との上
    記関係が所定の状態にある場合は上記第2の検出手段の
    検出結果に応答して上記制御手段は上記第2の記憶手段
    に格納された上記情報を無効化することを特徴とするキ
    ャッシュメモリ装置。
JP63041990A 1988-02-26 1988-02-26 キヤツシユメモリ Pending JPH01217530A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP63041990A JPH01217530A (ja) 1988-02-26 1988-02-26 キヤツシユメモリ
KR1019890002031A KR890013650A (ko) 1988-02-26 1989-02-21 캐시 메모리장치
EP19890103323 EP0335113A3 (en) 1988-02-26 1989-02-24 Single chip cache memory, and cache memory apparatus including a plurality of parallel connected single chip cache memories

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63041990A JPH01217530A (ja) 1988-02-26 1988-02-26 キヤツシユメモリ

Publications (1)

Publication Number Publication Date
JPH01217530A true JPH01217530A (ja) 1989-08-31

Family

ID=12623635

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63041990A Pending JPH01217530A (ja) 1988-02-26 1988-02-26 キヤツシユメモリ

Country Status (3)

Country Link
EP (1) EP0335113A3 (ja)
JP (1) JPH01217530A (ja)
KR (1) KR890013650A (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2043493C (en) * 1990-10-05 1997-04-01 Ricky C. Hetherington Hierarchical integrated circuit cache memory
KR100391727B1 (ko) * 1994-11-09 2003-11-01 소니 일렉트로닉스 인코포레이티드 메모리시스템및메모리억세싱방법
US6006310A (en) * 1995-09-20 1999-12-21 Micron Electronics, Inc. Single memory device that functions as a multi-way set associative cache memory

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4493026A (en) * 1982-05-26 1985-01-08 International Business Machines Corporation Set associative sector cache
US5025366A (en) * 1988-01-20 1991-06-18 Advanced Micro Devices, Inc. Organization of an integrated cache unit for flexible usage in cache system design

Also Published As

Publication number Publication date
KR890013650A (ko) 1989-09-25
EP0335113A3 (en) 1991-09-04
EP0335113A2 (en) 1989-10-04

Similar Documents

Publication Publication Date Title
US4332010A (en) Cache synonym detection and handling mechanism
JP2833062B2 (ja) キャッシュメモリ制御方法とこのキャッシュメモリ制御方法を用いたプロセッサおよび情報処理装置
KR920005280B1 (ko) 고속 캐쉬 시스템
JP4065660B2 (ja) 機能が並列に分散された変換索引バッファ
JPS5821353B2 (ja) チヤネル対メモリ書込み装置
US5553262A (en) Memory apparatus and method capable of setting attribute of information to be cached
JPH03141443A (ja) データ格納方法及びマルチ・ウェイ・セット・アソシアチブ・キャッシュ記憶装置
EP0139407B1 (en) Data select match
US5420994A (en) Method for reading a multiple byte data element in a memory system with at least one cache and a main memory
EP0531123B1 (en) A dynamic address translation processing apparatus in a data processing system
JP2930071B2 (ja) 情報処理装置およびプロセッサ
JPH0727492B2 (ja) 緩衝記憶装置
JPH01217530A (ja) キヤツシユメモリ
EP0310446A2 (en) Cache memory management method
US5510973A (en) Buffer storage control system
JP2552704B2 (ja) データ処理装置
JPH04250542A (ja) コンピューターメモリシステム
JPH05216765A (ja) 階層バッファ記憶装置
JPH07282023A (ja) データ転送量可変プロセッサ及びそれを用いたシステム
JP3130569B2 (ja) キャッシュメモリのストア方式
JPH02213960A (ja) キャッシュメモリ
KR960008319B1 (ko) 프로세서 및 캐시 메모리를 포함하는 장치 및 캐시 메모리 제어방법
JPH0836525A (ja) 多重アクセスキャッシュ記憶装置
JPH04175946A (ja) マルチプロセッサ・データ処理システムおよびそれに用いられるキャッシュ装置
JPH01255944A (ja) キャッシュメモリ