JPH02136947A - Cash memory having monitor index - Google Patents

Cash memory having monitor index

Info

Publication number
JPH02136947A
JPH02136947A JP1249369A JP24936989A JPH02136947A JP H02136947 A JPH02136947 A JP H02136947A JP 1249369 A JP1249369 A JP 1249369A JP 24936989 A JP24936989 A JP 24936989A JP H02136947 A JPH02136947 A JP H02136947A
Authority
JP
Japan
Prior art keywords
memory
data
cache
address
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.)
Pending
Application number
JP1249369A
Other languages
Japanese (ja)
Inventor
L Roges Barry
バリ エル.ロジエス
A Furiseku Charles
チヤールズ エイ.フリセク
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.)
NCR Voyix Corp
Original Assignee
NCR 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 NCR Corp filed Critical NCR Corp
Publication of JPH02136947A publication Critical patent/JPH02136947A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE: To improve the execution performance of the whole system by preventing a cache memory from being interrupted for determining whether data is stored in a cache memory system or not. CONSTITUTION: When a processor 24 is to fetch a data block from a memory, a cache monitor index 46 is checked without interrupting a cache data memory 42 and a cache index 44 by the existence of the data block of a cache data memory 42 and is made use impossible for the processor 24. Therefore, whether data words are stored in the data memory 42 or not can be determined without interposing the processor 24. Thus, the execution performance of the whole system is improved.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は7°cXセツサが必要なデータに急速アクセ
ス可能なキャッシュ・メモリーを有するデータ処理シス
テムに関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a data processing system having a cache memory that allows a 7°cX setter to quickly access necessary data.

〔従来の技術〕[Conventional technology]

キャッシュ・メモリーはコンピュータに広く使用されて
いる。キャッシュ・メモリー・システムはコンピュータ
の主メモリーに記憶されているデータの一部を保持する
小さく高速なメモリーを含む。キャッジ−・メモリーの
データは大体プロセッサが使用しそうなデータである。
Cache memory is widely used in computers. Cache memory systems include small, fast memories that hold portions of the data stored in a computer's main memory. The data in the cache memory is generally data that the processor is likely to use.

プロセッサがデータを必要とするときは、まずキャッジ
−・メモリーをチエツクし、大きな遅い主メモリーから
そのデータを読出す代りにキャノン−・メモリーからそ
れを読出すことができるかどうか判断する。
When the processor needs data, it first checks the cache memory to determine if it can read it from the cannon memory instead of reading it from the large, slow main memory.

キ翫ソ/ユ・メモリーはゾロセンサが使用するデータ・
ワードを記憶するデータ又は内容メモリーと、データ・
ワードの各ブロックに対するアドレスを記憶するインデ
ックス・メモリーとを含む。
Kikanso/Yu Memory is the data used by Zoro Sensor.
data or content memory for storing words;
and an index memory for storing addresses for each block of words.

プロセッサがデータ・ワードを必要とするとき、データ
・ワードの主メモリー・アドレス(又はアドレスの一部
)は、ゾロセンサがキャッジ−・メモリーからデータ・
ワードを得ることができること、すなわち、”ヒツト″
又は一致があるかどうか、インデックス・メモリーのア
ドレスをチエツクする。
When the processor needs a data word, the main memory address (or part of the address) of the data word is transferred by the Zoro sensor from the cache memory.
being able to obtain the word, i.e. “hit”
Or check the index memory address for a match.

しかし、マルチプロセッサ・システムにおいては、キャ
ッシュ・メモリーはときどきゾロセッサ動作に対して障
害となることがある。そのようなシステムのプロセッサ
が主メモリーを共有し、そのメモリーに記憶されている
データ・ワードをアップガート又は変更したいとき、各
ゾロセンサのキャッンー・メモリーの対応するデータ・
ワードも同様に変更しなければならないことになる。す
なわち、各キヤツシユ・メモリーのデータは生メモリー
のデータに正しく反映しなければならず、さもな力と、
プロセッサは誤ったデータと使用し、全システムの動作
の一慣性が失われるからである。
However, in multiprocessor systems, cache memory can sometimes become an impediment to processor operations. When the processors of such a system share a main memory and wish to upgrade or change a data word stored in that memory, the corresponding data word in the memory of each sensor is
The word will have to be changed as well. That is, the data in each cache memory must be correctly reflected in the data in raw memory, and
This is because the processor will use incorrect data and the entire system will lose some of its inertia of operation.

この問題は、先行技術のマルチプロセンサ・システムに
よシ、その主メモリーにデータを書込む際、各キャッシ
ュ・メモリーが自己に割込みをかけ(自己のプロセッサ
からのデータ・アクセスを不能にする)ることを要求す
るようにして解決した。
This problem occurs in prior art multi-processor systems in which each cache memory interrupts itself (disables data access from its own processor) when writing data to its main memory. I solved it by asking for this.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

しかしながら、先行技術システムでは、主メモリーのデ
ータを変更又はアンプデートするとき、キャッンー・メ
モリーをインタラブドせずにキャッシュ・メモリーをチ
エツクする方法がなかった。
However, in prior art systems, there was no way to check the cache memory when modifying or updating data in main memory without interworking the cache memory.

明らかに、キャッシュ・メモリーがその内容をチエツク
するようインタラブドされ、自己のゾロセンサからのデ
ータ・アクセスを利用できないと、プロセッサの性能は
減少する。多プロセッサ・システムにおいて、各ゾロセ
ンサは、キャッシュメモリーが他のプロセッサからの書
込をチエツクするとなると、自己の局部キャッシュ・メ
モリーを待たなければならないというように、全システ
ムの実行性能は大きく減退する。更に、典型的な多ゾロ
セッサ・システムにお込ては、1つのプロセフすのキャ
ッシュ・メモリーに他のプロセッサが使用するデータを
記憶することはできない。これは、個々のプロセッサは
普通具なるアプリケーン3フ2行h、各メモリーに異な
るファイル?記憶しているからである。その結果、各局
部キャッシュ・メモリーをインタラブドして、他のプロ
セッサにより変更されたデータ・ワードがあるかどうか
、その内容をチエツクしたようなほとんどの場合でも、
その必要とするデータ・ワードはそこには存在しないで
ある。従って、各プロセッサの各キャッシュ・メモリー
はシステムのガータの一慣性?確保するためにチエツク
するということが基本であるが、普通キャッシュ・メモ
リーがチエツクのためにインタラブドされるときに必要
とするデータは存在しないことになる。
Obviously, the performance of the processor is reduced if the cache memory is interleaved to check its contents and data access from its own sensor is not available. In a multiprocessor system, each Zoro sensor must wait for its own local cache memory to check for writes from other processors, greatly reducing overall system performance. Furthermore, in typical multi-processor systems, one processor's cache memory cannot store data for use by other processors. This means that each processor typically has 3 files, 2 rows, and a different file in each memory. Because I remember it. As a result, even in most cases where each local cache memory is interwoven to check its contents to see if any data words have been modified by other processors,
The data word it needs is not there. Therefore, each cache memory of each processor is part of the inertia of the system? The basic idea is to check to ensure that the data needed is not present when the cache memory is interoperated for checking.

従って、この発明の目的は新たな改良したキャッシュ・
メモリー・システム金提供することである。
It is therefore an object of this invention to provide a new and improved cache
The memory system is to provide gold.

この発明の他の目的は、多プロセンサ・データ処理シス
テムに使用する改良したキャッシュ・メモリー・システ
ムを提供するととである。
Another object of the invention is to provide an improved cache memory system for use in a multi-processor data processing system.

更に、この発明の他の目的は、各プロセッサがキャッシ
ュ・メモリーを有し、キヤツシユ・メモリーのデータが
他のプロセッサによって変更又は更新されるときに追放
するようにした多グロセ、/す・システムを提供するこ
とである。
Still another object of the present invention is to provide a multi-processor system in which each processor has a cache memory and data in the cache memory is evicted when modified or updated by other processors. It is to provide.

更に、この発明の目的は、データがキャッシュメモリー
・システムに記憶されているかどうか決定するためにキ
ャッジ−・メモリーをインタラブドする必要がないキャ
ッシュ・メモリー・システムを提供することである。
It is a further object of the present invention to provide a cache memory system that does not require cache memory to be interleaved to determine whether data is stored in the cache memory system.

〔問題点を解決するための手段〕 この発明は、上記の問題を以下に述べるようにして解決
した。すなわち、この発明によると、データ処理システ
ムの主メモリーにも記憶されているデータ・ワードを記
憶するデータ・メモリーと、ガータ・ワードに記憶され
て因る各データ・ワードに関するアドレス・ビットを記
憶するインデックス・メモリーと、データ・ワードに記
憶されている各データ・ワードのアドレス・ビットをも
記憶するモニタ・インデックス・メモリーとを含むキャ
ッシュ・メモリー・システムを提供することによって上
記の問題を解決した。インデックス・メモリーはr−タ
・メモリーにデータ・ワードが記憶されているかどうか
決定するためにそのキャッシュ・メモリーに関するプロ
センサによってアクセスされる。モニタ・インデックス
・メモリ〜はそのプロセッサによるキャッシュ・メモリ
ーの使用をインタラブドせずにアクセスすることが可能
である。
[Means for Solving the Problems] The present invention has solved the above problems as described below. That is, according to the invention, a data memory stores data words that are also stored in the main memory of the data processing system and stores address bits for each data word stored in the gutter word. The above problem has been solved by providing a cache memory system that includes an index memory and a monitor index memory that also stores the address bits of each data word stored in the data word. The index memory is accessed by the processor associated with its cache memory to determine whether a data word is stored in the rotor memory. The monitor index memory can be accessed without interfering with the processor's use of the cache memory.

この発明の好ましい実施例においては、多グロセッテ・
データ処理システムの各ノロセッサについて上記のよう
なキャッシュ・メモリー・システムを提供する。各プロ
セッサは、キャレシュ・メモリー・システムにもデータ
が記憶されているがどうか決定するため、主メモリーか
らデ〜りを必要とするとき、該当するキャッシュ・メモ
リー・システムのインデックス・メモリーにアドレスを
提供する。ノロセッサか主メモリーにデータ?書込むと
、そのデータが他のキャッシュ・メモリー・システムに
ある場合にはそれを追放することができるというように
、そのデータのアドレス?他のキャッシュ・メモリー・
システムの各々のモニタ・インデックス・メモリーにも
供給される。しかし、もしそのデータが他のキャッシュ
・メモリー・システムにない場合(これは、1つのキャ
ッシュメモリーのデータが他のキャッジ−・メモリーに
もあるということはあまシないので可能性は少い)、そ
のキャッシュ・メモリー及びプロセッサはインタラブド
せずに先に進む。
In a preferred embodiment of the invention, a multi-grossette
A cache memory system as described above is provided for each processor of the data processing system. When each processor needs to retrieve data from main memory, it provides an address to the index memory of the appropriate cache memory system to determine if the data is also stored in the cache memory system. do. Data in memory processor or main memory? The address of that data, so that when you write it, you can evict it if that data is in another cache memory system? Other cache memory
A monitor index memory for each of the systems is also provided. However, if that data is not in other cache memory systems (this is unlikely, since it is unlikely that data in one cache memory is also in other cache memories), The cache memory and processor proceed without being interwoven.

各データの主メモリー・アドレスは第1及び第2のアド
レス部を含む。インデックス・メモリー及びモニタ・イ
ン7Jソクヌ・メモリー各々は第2のアドレス部?記憶
している第1アドレス部によってアドレスされるメモリ
ー位置を有する。
Each data main memory address includes first and second address portions. Index memory and monitor in 7J memory are each the second address part? It has a memory location that is addressed by the first address portion that it stores.

比較ロノノクはインデックス・メモリーとモニタ・イン
デックス・メツモリ−とに接続され、インデックス・メ
モリーから読出された第2のアドレス部がインデックス
・メモリーに提供される主メモリー・アドレスの第2の
アドレス部と一致する場合、及びモニタ・インデックス
・メモリーから読出された第2のアドレス部がモニタ・
インデックス・メモリーに供給される主メモリー・アド
レス部の第2のアドレス部と一致する場合に、データが
キャッシュ・メモリー・システムに記憶されていると−
うことを表示する。
The comparison memory is connected to the index memory and the monitor index memory, such that the second address portion read from the index memory matches the second address portion of the main memory address provided to the index memory. and the second address portion read from the monitor index memory is
If the data is stored in the cache memory system if it matches the second address part of the main memory address part supplied to the index memory -
Display the information.

多フロセッサ・システムの各キャッシュ・メモリーはキ
ャッシュ・メモリーをインタラブドせずに、そのシステ
ムのゾロセッサによって変更又は更新するデータが存在
するかどうがチエツクすることができるということがこ
の発明の有益な点である。プロセッサによってメモリー
に書込まれるデータが各キャッシュ・メモリーから追放
されるのでシステムはその完全性を維持することができ
る。
It is an advantage of the present invention that each cache memory in a multi-processor system can be checked for the presence of data to be modified or updated by the system's processors without interworking the cache memories. be. The system can maintain its integrity because data written to memory by the processor is evicted from each cache memory.

〔実施例〕〔Example〕

第1図はこの発明の多ゾロセッサ・システム10である
。システム10は複数のプロセッサ・サブシステム12
(その2つのみ示す)と、そのいずれか1つからデータ
を書込み又は読出すことができる主メモリー14とを含
む。7ステム10は、又システム10とユーザ・ターミ
ナル、ディスク・メモリー及びそのような装置のような
人力/出力(Ilo)装置とを接続するI10インタフ
ェース16を含む。データ及びアドレスはシステム・パ
ス18によってシステム10の各モジエル間で送信され
る。
FIG. 1 is a multi-processor system 10 of the present invention. System 10 includes multiple processor subsystems 12
(only two of which are shown) and a main memory 14 from which data can be written or read. 7 stem 10 also includes an I10 interface 16 that connects system 10 with human power/output (Ilo) devices such as user terminals, disk memory, and such devices. Data and addresses are transmitted between each mosiel of system 10 by system path 18.

プロセッサ・サブシステム12の各々は主メモリー14
に記憶されているデータのあるものを一時記憶するキャ
ッシュ・メモリー・ユニット20を含む。ユニット20
に記憶されるr−夕は関連するプロセッサ・サブシステ
ム12によって最も使用される可能性のあるデータを基
本に選ばれる。
Each processor subsystem 12 has main memory 14
includes a cache memory unit 20 for temporarily storing some of the data stored therein. unit 20
The r-data stored in is selected on the basis of the data most likely to be used by the associated processor subsystem 12.

主メモリーから各キャッシュ・メモリー・ユニット20
に対して送られるデータ選択のためのコンピュータ・プ
ログラム及び他の手段は従来のものでよい。
Each cache memory unit 20 from main memory
The computer programs and other means for selecting data sent to may be conventional.

第2図はプロセッサ・サブシステム12の詳細ヲ示ス。FIG. 2 shows details of processor subsystem 12.

プロセッサ・サブシステム12はプロセッサ・ユニット
24と、前述のキャッシュ・メモリー・ユニット20と
、7’ロセノサ・サブシステム12をシステム・パス1
8にインタフニーススるパス・ ドライバ/レシーバ2
5.26とを含む。
The processor subsystem 12 includes a processor unit 24, the aforementioned cache memory unit 20, and a 7'Locenosa subsystem 12 in the system path 1.
Pass Driver/Receiver 2 to Interface 8
5.26.

第2図で、システム・バス18はメモリー・データ・バ
ス18Aとメモリー・アドレス・ノ々ス18Bとから成
る。メモリー・データ・バス18Aはバス・ ドライバ
/レシーバ25によって内部データ・パス27に接続さ
れ、メモリー・アドレス・バス18Bは内部アドレス・
バス32に、及びパス・ドライバ/レシーバ26によっ
て内部モニタ・アドレス・パス34に接続される。プロ
セッサ24はデータ・バス27に接続されて、r−タ・
パス27との間に32f−タ・ピントD I −D32
及び4ノやりティ・ピノ)PO〜P3に送受信する。
In FIG. 2, system bus 18 consists of a memory data bus 18A and a memory address node 18B. Memory data bus 18A is connected to internal data path 27 by bus driver/receiver 25, and memory address bus 18B is connected to internal address bus 27 by bus driver/receiver 25.
bus 32 and to internal monitor address path 34 by path driver/receiver 26. Processor 24 is connected to data bus 27 to
32f-ta-pinto DI-D32 between pass 27
and 4-no-yari-ti-pino) are transmitted and received from PO to P3.

プロセッサ24はアドレス・バス32に接続されて、プ
ロセッサからアドレス・バス32に26アドレヌ・ビッ
トAl−A26&び4パリテイ・ビットPO〜P3を送
信する。
Processor 24 is connected to address bus 32 to send 26 address bits Al-A26 & 4 parity bits PO-P3 from the processor to address bus 32.

動作において、プロセッサ・サブシステム12ハ、キャ
ッジ−・メモリ〜・ユニット2oを一時無視する際、シ
ステム・パス18を介して主メモリー14(第1図)か
らデータ及びプログラムをフェッチする。プロセンサ2
4はアドレス・バス32及びメモリー・アドレス・バス
18Bk介1゜て主メモリー14に主メモリー・アドレ
スを送る。
In operation, processor subsystem 12 fetches data and programs from main memory 14 (FIG. 1) via system path 18 while temporarily ignoring cache memory unit 2o. Prosensor 2
4 sends a main memory address to main memory 14 via address bus 32 and memory address bus 18Bk.

(−して、メモリー・データ・バス18A及びデータ・
バス27全介してプロセッサ24に対しアドレスで指定
したメモリー位置にそのデータ又はプログラム指令を戻
す。データがプロセッサ24で変更された後、メモリー
・アドレス・パス18Bにゾロセッサから供給したアド
レスで指定したメモリー位置の主メモリーにそれを書込
むことができる。パリティ・ビットPO−P3はアドレ
ス・ピッ[・A1〜A24及びデータ・ピントDI〜[
)32と共に送られ、それらデータの送信中に発生した
ビット・エラーを検出する。
(-, then memory data bus 18A and data
The data or program instructions are returned to the addressed memory location via bus 27 to processor 24. After the data has been modified by processor 24, it can be written to main memory at the memory location specified by the address provided by the processor on memory address path 18B. Parity bits PO-P3 are address bits [A1-A24 and data pins DI-[
) 32 to detect bit errors that occur during the transmission of these data.

キャッシュ・メモリー・ユニット20(第2図)はキャ
ッシュ・データ・メモリー42、キャッシュ・インデッ
クス44、キャッシュ・モニタ・インデックス46及び
比較ロノノク回路48 、50を含む。キャッシュ・デ
ータ・メモリー42は主メモリー14のデータの一部を
記憶する。第4A図及び第4B図の好ましい実施例では
、キャッシュ・データ・メモリー42は生メモリー14
に記憶されている合計256にデータ・ブロックからの
4に7”−タ・ブロック(各ブロックは4ワードから成
り、各ワードは4データ・バイトから成る)を記憶する
。キャッシュ・データ・メモリー42に記憶されている
r−タは一般にプロセッサ24によってフェフチされる
かもしれないデータである。キャッジ−・データ・メモ
リーのデータ入力及び出力端子は32データ・ビットD
1〜D32及び4パリテイ・ビン)PO〜P3を読書す
るためデータ・パス27に接続される。キャッシュデー
タ・メモリー42のアドレス入力はアドレス・ピノ)A
l〜A14i受信するためのアドレス・パス32に接続
される。
Cache memory unit 20 (FIG. 2) includes a cache data memory 42, a cache index 44, a cache monitor index 46, and comparison lock circuits 48,50. Cache data memory 42 stores a portion of the data in main memory 14. In the preferred embodiment of FIGS. 4A and 4B, cache data memory 42 includes raw memory 14.
A total of 256 data blocks (each block consisting of 4 words and each word consisting of 4 data bytes) are stored in the cache data memory 42. The data input and output terminals of the cache data memory are generally data that may be fetished by processor 24.
1-D32 and 4 parity bins) PO-P3 are connected to data path 27 for reading and writing. The address input for the cache data memory 42 is Address Pino)A.
1 to A14i is connected to the address path 32 for receiving.

キャッシュ・インデックス44及びキャッジ−モニタ・
インデックス46は夫々キャッシュ・データ・メモリー
42に記憶されているデータ・ブロックに関するアドレ
ス・ピント全記憶する。キャッシュ・インデックス及び
キャッシュ・モニタ・インデックス46の両データ入力
は主メモリー・アドレス・ビットA15〜A26、ノに
リティ・ビットPO,Pl及び2有効ビットVQ、Vl
i受信するためアドレス・バス32に接続される。キャ
ッシュ・インデックス及びキャッシュ・モニタ・インデ
ックスの両アドレス入力はアドレス・パス32(ピント
A3〜A14)又はモニタ・アドレス・パス34(ビッ
トMA3〜MA 1.4 )のどちらかからビットを受
信するために接続される。キャッシュ・インデックス4
4のデータ出力からのビットはアドレス・パス32から
比較ロジック回路48にビットA15〜A26 、PO
、PIと共に供給され、キャッシュ・モニタ・インデッ
クス46からのデータのビットはモニタ・アドレス・パ
ス34から比較ロジック回路50に対しピッ)MA15
〜MA26.PO,PLと共に供給される。後に詳述す
るように、比較ロノック回路48からの出力信号HIT
はプロセッサ24が必要とするブロックがキャッシュ・
データ・メモリー42にあるかどうかを表わし、回路5
0の出力信号LMONHI Tは他のゾロセッサ・サブ
シヌテム12の1つにプロセッサによってメモリーに書
込まれた(更新又は変更されて)7J−タ・ブロックが
局部キャッシュ・データ・メモリー42にあるかどうか
を表示する。
Cache index 44 and cache monitor
Each index 46 stores the address focus for each block of data stored in cache data memory 42. Both the cache index and cache monitor index 46 data inputs are the main memory address bits A15-A26, the valid bits PO, Pl and the two valid bits VQ, Vl.
i is connected to address bus 32 for receiving. Both the cache index and cache monitor index address inputs are used to receive bits from either address path 32 (pintos A3-A14) or monitor address path 34 (bits MA3-MA1.4). Connected. cache index 4
The bits from the data output of 4 are passed from the address path 32 to the compare logic circuit 48 as bits A15-A26, PO
, PI, the bits of data from cache monitor index 46 are sent from monitor address path 34 to comparison logic circuit 50 (PI) MA15.
~MA26. Supplied together with PO and PL. As will be detailed later, the output signal HIT from the comparison circuit 48
The block needed by processor 24 is cached.
Indicates whether data is in memory 42, circuit 5
The zero output signal LMONHIT indicates whether there is a 7J data block in local cache data memory 42 that has been written (updated or modified) to memory by a processor in one of the other processor subsystems 12. indicate.

キャッシュ・メモリー・ユニット20(第2図)が動作
する実際の方法を第3図と共に説明する。
The actual manner in which cache memory unit 20 (FIG. 2) operates will now be described in conjunction with FIG.

第3図はキャッシュ・インデックス44及びキャンシュ
・モニタ・インデックス46に記憶され又はそのアドレ
スに使用されるビットを示す。第3図で、主メモリー1
4のための各データ・ワード・アドレスは2,6ビツト
(Al−A26)から成る。
FIG. 3 shows the bits stored in or used in cache index 44 and cache monitor index 46 addresses. In Figure 3, main memory 1
Each data word address for 4 consists of 2,6 bits (Al-A26).

プロセッサ24は常にピッ)AI 5−A26t−使用
してメモリーからのデータ・ブロック(洛ブロックは4
7−ドから成る)をフェッチし、そのブロックの1ワー
ドをフェッチし、そのブロックの残シの3ワードの各々
を主メモリー14から順次送らせる。AI、A2はワー
ド・モニタとして使用され、フェッチされたブロックの
各ワードがメモリーから戻されたときに、プロセンサに
よって加算される。主メモリー・アドレスのビットA1
5〜A26は主メモリーのデータ・パンク又はセグメン
トヲ規定する。アドレス・ビットAI5〜A26によっ
て規定された64メモリー・パンクが主メモリー14に
あシ、アドレス・ビットA3〜A26によって規定され
た256にデータ・ブロックが(4にデータ・ブロック
が各パンクにある)主メモリーにある。アドレス・ビッ
トAI5〜A26はキャッシュ・データ・メモリー42
に記憶されている各データ・ブロックのために、キャッ
シュ・インデックス44のメモリー位置(及びキャッシ
ュ・モニタ・インデックス46の対応するメモリー位置
)に記憶され、アドレス・ビットA3〜A14はキャッ
シュ・インデックス44(及びキャッシュ・モニタ・イ
ンデックス46)のメモリー位置のアドレスに使用され
る。パリティ・ビットPO,PI及び有効ビットVQ 
、 Vlはキャッシュ・インデックス44及びキャッジ
−モニタ・インデックス46の各組のアドレス・ビット
AI5〜A26と共に記憶される。・やりティ・ビット
は、アドレス・ビットがキャッシュ・インデックス及び
キャッジ−・モニタ・インデックスから読出されるとき
にパリティ・エラーのチエツクのために使用される。有
効ビットは、キャンシュ・データ・メモリー42の該当
するデータ・ブロックがアクセヌされるときに0”とし
て両インデックス44.46に書込まれ、データ・ブロ
ックはもはや有効でないということ?表示してそれ?追
放する。
Processor 24 always picks up data blocks from memory using AI 5-A26t (blocks are 4
7-word), one word of the block is fetched, and each of the remaining three words of the block is sequentially sent from main memory 14. AI, A2 is used as a word monitor and is added by the processor as each word of the fetched block is returned from memory. Bit A1 of main memory address
5-A26 define data punctures or segments of main memory. There are 64 memory punctures in main memory 14, defined by address bits AI5-A26, and 256 data blocks, defined by address bits A3-A26 (with 4 data blocks in each puncture). in main memory. Address bits AI5-A26 are cache data memory 42
For each data block stored in cache index 44 (and the corresponding memory location in cache monitor index 46), address bits A3-A14 are stored in cache index 44 (and the corresponding memory location in cache monitor index 46). and cache monitor index 46). Parity bits PO, PI and valid bits VQ
, Vl are stored with each set of address bits AI5-A26 in cache index 44 and cache-monitor index 46. - The parity bit is used to check for parity errors when address bits are read from the cache index and cache-monitor index. The valid bit is written to both indices 44.46 as 0'' when the corresponding data block in cache data memory 42 is accessed, indicating that the data block is no longer valid. Expel.

キャッシュ・メモリー・ユニット20はシングル・セッ
ト連想(直接マツf)メモリーとして動作し、キャッシ
ュ・データ・メモリー42は主メモリー14の1ブロツ
クの大きさに等しいデータ・ブロック数を記憶すること
ができるということを意味する。キャッシュ・データ・
メモリー42に記憶されているデータ・ブロックはメモ
リー・パンクのいずれか1つからでよいが、各メモリー
・パンクの対応するデータ・ブロック位置から1データ
・ブロックのみを記憶することができる。言いかえると
、各メモリー・パンクi4にデータ・ブロック(位置1
〜4096)e有するものとして見た場合、記憶データ
・ブロックがメモリー・パンクのいずれか1つからのも
のであるとき、いずれかのメモリー・パンクの位置2か
らの1データ・ブロックのみが記憶され、以下同様に行
われるということである。
Cache memory unit 20 operates as a single set associative (direct map) memory, with cache data memory 42 capable of storing a number of data blocks equal to the size of one block of main memory 14. It means that. cache data
A data block stored in memory 42 may be from any one of the memory punctures, but only one data block may be stored from each memory puncture's corresponding data block location. In other words, each memory puncture i4 has a data block (location 1
~4096) When a stored data block is from any one of the memory punctures, only one data block from position 2 of any memory puncture is stored. , and so on.

この発明のキャッシュ・メモリー・ユニット20の特徴
はシングル・セット連想メモリーを有するキャッシュ・
メモリーに対する応用に限定されないということである
。例えば、各キャッシュメモリー・ユニット20に2デ
ータ・キャッシュメモリー42をおくことができ、キャ
ッシュ・メモリーの大きさを2倍にすることができる。
The cache memory unit 20 of the present invention is characterized by a cache memory unit 20 having a single set of associative memory.
This means that the application is not limited to memory. For example, there can be two data cache memories 42 in each cache memory unit 20, doubling the size of the cache memory.

各キャッシュ・データ・メモリー42に対して別のキャ
ッシュ・インデックス44、キャッシュ・モニタ・イン
デックス46、比較回路噂8及び比較ロノノク回路42
が必要である。
For each cache data memory 42 there is a separate cache index 44, cache monitor index 46, comparison circuit rumor 8 and comparison circuit 42.
is necessary.

第2図で、ゾロセッサ24がメモリーからデータ・ブロ
ックをフェッチしたい場合、アドレス・パス32に7)
”レス・ビットA1〜A26 (ブロックの1ワードの
アドレスを表わす)を供給する。
In FIG. 2, when processor 24 wants to fetch a block of data from memory, it enters address path 32 (7).
” supply bits A1-A26 (representing the address of one word of the block).

ギャノンユ・インデックス44(メモリー位it指定す
る)のアドレス入力にアドレス・ビットA3〜A14i
受信し、キャッジ−・インデックスの指定されたメモリ
ー位置に午憶されているビイ□ζ(A15〜A26)が
1寅で一夕出力に供給(多れる。キャッシュ・インf:
<レスのデータ出力におけるビットがアドレス・パス3
2のビットA15〜A26と一致すると、プロセッサが
要求するデータ・ブロックがキャッジ−・データ・メモ
リー42にあシ、比較ロジック回路48がその出力にエ
ネーブル信号HIT i供給する。キャッジ′ユ・デー
タ・メモリー42は信号HIT K応当してプロセッサ
24によって可能化され、アドレス・ビットA1〜A1
4によって規定されたメモリー位置にデータを供給する
Address bits A3 to A14i are input to the address of Gannonyu index 44 (memory location it is specified).
Bi□ζ (A15 to A26) received and stored in the memory location specified by the cache index is supplied to the output (increase) overnight. Cache in f:
<The bit in the address data output is address path 3
When bits A15-A26 of 2 are matched, the data block requested by the processor is placed in cache-data memory 42, and comparison logic circuit 48 provides an enable signal HITi at its output. The cache data memory 42 is enabled by the processor 24 in response to the signal HITK and addresses bits A1-A1.
4. Provides data to the memory location defined by 4.

キャッシュ・データ・メモリー42がプロセッサが要求
したデータ・ブロックを持たない場合、主メモリーから
そのデータをフェッチする。又、プロセッサ24は、メ
モリー・アドレス・)ぐス18Bt−介して主メモリー
14に送信され、アドレス・パス32にアドレス金供給
することによって主メモリーからキャッシュ・データ・
メモリー42(必要と予想される)にデータ・ブロック
を転送することができる。データ・パス27を介してデ
ータ・ブロックがキャッジ−・データ・メモリー42に
戻され玲ξ、アドレス・パス32からのアドレス・ビッ
トA1〜A14で指定されたメモリー位置に、41リテ
イ・ビットと共に記憶される。
If cache data memory 42 does not have the data block requested by the processor, it fetches the data from main memory. Processor 24 also retrieves cache data from main memory by supplying an address path 32 to main memory 14 via memory address path 18Bt.
Data blocks can be transferred to memory 42 (as expected). The data block is returned to cache data memory 42 via data path 27 and stored along with 41 retention bits in the memory location specified by address bits A1-A14 from address path 32. be done.

同時に、データ・ブロックのフェッチに使用されるアド
レス・ビットはデータ入力(ビットA15〜A26)及
びアドレス入力(ビットA3〜A14)のキャッシュ・
インデックス44に/”リティ・ビット及び有効ビット
と共に送られる。
At the same time, the address bits used to fetch data blocks are cached for data inputs (bits A15-A26) and address inputs (bits A3-A14).
is sent to index 44 along with the /'' property bit and valid bit.

上記のプロセッサ24、キャッシュ・データ・メモリー
24及びキャッシュ・インデックス44の動作は従来の
ものであシ、キャラシー・メモリー付コンピュータに見
ることができる。
The operations of processor 24, cache data memory 24 and cache index 44 described above are conventional and can be found in computers with character memory.

この発明のキャッシュ・モニタ・インデックス46は、
キャンシュ・データ・メモリー42のデータ・ブロック
の存在がキャッシュ・データ・メモリー及びキャッシュ
・インデックQ444t’インタラブドせずにチエツク
され、プロセッサ24に対して使用不能にするというこ
とを提供する。キャッシュ・モニタ・インデノ2ス46
はキャンシュ・インデックス44と同じビット(A15
〜A26.PO,PI、VO,Vl)’を記憶し、これ
らビットは、それらがキャッシュ・、インデックス44
に記憶されると同時に同じ方法で記憶される。
The cache monitor index 46 of this invention is
The existence of a data block in cache data memory 42 is checked without the cache data memory and cache index Q444t' being interwoven, providing that they are unavailable to processor 24. cache monitor index 46
is the same bit as cache index 44 (A15
~A26. PO, PI, VO, Vl)' and these bits are stored in the cache index 44.
are stored in the same way as they are stored in the same way.

モニタ・アドレス・パス34は、シヌテム10のいずれ
かのプロセッサがメモリー・アドレス・パス18Bにメ
モリー・アドレス・4.1.ピッ)Al−A26を置く
ときはいつでも同じビットが各プロセッサ・サブシステ
ム12のモニタ・アドレス・ノ々ス34にピントMAI
〜MA 26として置かれるというように、パス・ドラ
イバ/レシーバ26によってメモリー・アドレス・パス
18Bに接続される。
Monitor address path 34 indicates that any processor in SynuTem 10 sends memory address 4.1. The same bit is set to the monitor address node 34 of each processor subsystem 12 whenever the Al-A 26 is placed on the MAI.
~MA 26, and so on, is connected to memory address path 18B by path driver/receiver 26.

キャンシュ・モニタ・インデックス46のアドレス入力
にビットMA3〜MA 14が供給され、キャソンユ・
モニタ・インデックス46のデータ出力におけるビット
がビットMA 15〜MA26 、 pQ 、 p 1
と比較ロジック回路50で比較され、メモリーに書込ま
れるデータが局部キャップユ・データ・メモリー42に
あるかどうか決定する。
Bits MA3-MA14 are provided to the address input of cache monitor index 46,
The bits in the data output of monitor index 46 are bits MA15-MA26, pQ, p1
is compared in comparison logic circuit 50 to determine whether the data to be written to memory is in local cap data memory 42.

メモリーに書込まれるデータがキャッシュ・メモリー4
2にある場合、キャッシュ・インデックス44及びキャ
ッジ−・モニタ・インデックス46両方のデータ・ブロ
ックに関する有効ビノト(v□ 、 vt )が両方マ
ークされ(NO”として書込まれる)、データ・ブロッ
クは追放され、局部プロセッサ24はデータを使用しな
い。
Data written to memory is cache memory 4
2, the valid bits (v□, vt) for the data block in both cache index 44 and cache-monitor index 46 are both marked (written as NO'') and the data block is evicted. , local processor 24 does not use the data.

第4A、4B図はキャッシュ・メモリー・ユニット20
の詳細を示す。第4A、48図の説明に入る前に、信号
表示の終りに6′°′がある信号は0′でアクティブで
あり、ない信号は1”でアクティブであるということを
注意する。
Figures 4A and 4B show the cache memory unit 20.
Show details. Before proceeding to the discussion of Figures 4A and 48, note that signals with 6'°' at the end of the signal display are active at 0' and signals without are active at 1''.

第4A図で、キャッシュ・インデックス44のアドレス
入力Aはアドレス・・ぐス32に接続され、マルチプレ
クサ(MUX ) s oによってモニタ・アドレス・
パス34に接続される。同様に、キャラツユ・モニタ・
インデックス46はマルチプレクサ(MUX ) 82
 Kよってモニタ・アドレス・ノぐス34に、及びアド
レス・パス32に接続される。
In FIG. 4A, address input A of cache index 44 is connected to address input 32 and monitor address input A is connected to address input 32 by a multiplexer (MUX).
It is connected to path 34. Similarly, Charatsuyu Monitor
Index 46 is multiplexer (MUX) 82
K is connected to monitor address nozzle 34 and to address path 32.

キャッシュ・メモリー・ユニット20に関するプロセッ
サがメモリーからのフェッチのためにアドレス・パス3
2にアドレスを供給すると、アドレス・ビットA3〜A
14はキャッシュ・インデックス44のアドレス入力A
にMUX 80によって供給される。アドレス・パス3
2の2ノやりfイ・ビット(PO、PI )に加え、メ
モリー・アドレスの他のピッ)(A15〜A26)が比
較ロジック回路48でキャッシュ・インデックス44の
データ出力DOのビットと比較される。
A processor associated with cache memory unit 20 uses address path 3 for fetching from memory.
2, address bits A3-A
14 is address input A of cache index 44
is supplied by MUX 80. address path 3
In addition to the bits (PO, PI) of 2, the other bits (A15-A26) of the memory address are compared with the bits of the data output DO of the cache index 44 in the comparison logic circuit 48. .

キャッシュ・メモリー・ユニット20に関するもの以外
のプロセッサがメモリーからの7エツチのためにメモリ
ー・アドレス・パスにアドレスを供給した場合、アドレ
スはモニタ・アドレス・パス340ビツトMAIへMA
 26になる。l1iliUX82はキャッシュ・モニ
タ・インデックス46のアドレス入力AにビットMA3
〜MA 14 i送る。メモリー・アドレス・パスの2
7母リテイ・ビット(PO,PI)と共に送られる他の
メモリー・アドレス・ビット(MA l 5〜MA26
)はキャッシュ・モニタ・インデックス46のデータ出
力DOのビットと比較ロジック回路50で比較される。
If a processor other than the one associated with cache memory unit 20 supplies an address to the memory address path for a 7 etch from memory, the address is sent to the monitor address path 340 bits MAI.
I'll be 26. l1iliUX82 sets bit MA3 to address input A of cache monitor index 46.
~MA 14 i send. Memory address path 2
Other memory address bits (MA l 5 to MA26) sent along with the 7 mother property bits (PO, PI)
) is compared with the bits of data output DO of cache monitor index 46 in comparison logic circuit 50.

他のプロセッサによってキャッシュ・データ・メモリー
42に対するメモリー書込及び記憶が行われることを示
すHIT″がキャッシュ・モニタ・インデックス46に
生ずると、MUX s oはキャッシュ・インデックス
44のアドレス入力AにビットMA3〜MA 14 k
送信する。同時に、キャッシュインデックス44及びキ
ャッシュ・モニタ・インデックス46のデータ入力DI
における2有効ビットVo、Vlがプロセッサ24によ
って0”にセットされ、キャッシュ・イン7Jノクス4
4及びキャッシュ・モニタ・インデックス46の書込エ
ネーブル入力■における信号■■ITE及びMIWRI
TEの制御の下にキャッシュ・インデックス44及びキ
ャラツユ・モニタ・インデックス46に書込まれる。
When a HIT'' occurs in cache monitor index 46 indicating a memory write and store to cache data memory 42 by another processor, MUX_SO sets bit MA3 to address input A of cache index 44. ~MA 14k
Send. At the same time, the data input DI of cache index 44 and cache monitor index 46
The two valid bits Vo, Vl in cache in 7J Nox 4 are set to 0'' by processor 24
4 and the signals at the write enable inputs of cache monitor index 46 ITE and MIWRI
Written to cache index 44 and Karatsuyu monitor index 46 under the control of the TE.

MUX s oがその選択入力SEL (7)信号MO
NHITwIによってビットA3〜A14又はビットM
A3〜MA 14のどちらかを通過するよう制御する。
MUX s o is its selection input SEL (7) Signal MO
bits A3-A14 or bit M by NHITwI
It is controlled to pass through any one of A3 to MA14.

yDNHITW’はプロセッサ24が供給し、” HI
T”がキャッシュ・モニタ・インデックス46に発生し
たときにのみアクティブ(′″0″で)である。
yDNHITW' is provided by the processor 24 and "HI
It is active (at ``0'') only when T'' occurs in cache monitor index 46.

データ・ブロックがプロセッサでフェッチされ、キャッ
シュ・データ・メモリー42に記憶されたとき、アドレ
ス・パス32からのメモリー・アドレスのアドレス・ビ
ットA3〜A14はMUX 80及びMUX 82でキ
ャッシュ及びモニタ・インデックス44.46のアドレ
ス入力に供給される。同時に、キャッシュ・インデック
ス44及びキャッシュ・モニタ・インデックス46のデ
ータ入力にビットA15〜A26 、PO、PIが供給
されると、各々に記憶され、各メモリー・アドレスに対
応するデータ・ブロックがキャッシュ・データ・メモリ
ー42のデータ入力DIに供給され、そこに記憶される
。キャッシュ・モニタ・インデックス46は可能化され
、その書込エネーブル入力部の信号MIWRITEによ
ってデータ?記憶する。MUX82はその選択入力SE
Lにおける信号biONWRI TEによりビットA3
〜A14か又はビットMA3〜MA 14のどちらかを
通過するよう制御する。
When a data block is fetched by the processor and stored in cache data memory 42, address bits A3-A14 of the memory address from address path 32 are input to cache and monitor index 44 by MUX 80 and MUX 82. .46 address input. At the same time, when bits A15-A26, PO, and PI are supplied to the data inputs of cache index 44 and cache monitor index 46, they are stored respectively, and the data blocks corresponding to each memory address are stored as cache data. - fed to data input DI of memory 42 and stored therein; Cache monitor index 46 is enabled and data?? by signal MIWRITE on its write enable input. Remember. MUX82 is the selection input SE
bit A3 by the signal biONWRI TE at
-A14 or bits MA3 to MA14.

MONWRITEはプロセッサ24によって供給され、
データ・ブロックがキャッシュ・データ・メモリー42
に書込まれるべきときのみアクティブ(”1’において
)である。プロセッサ24からの2有効ビット(VO、
Vl )もメモリー・アドレス・ビットAI5〜A26
.PO,PIと共にキャッシュ・モニタ・インデックス
(1”として)に書込まれる。
MONWRITE is provided by processor 24;
Data blocks are cached data memory 42
is active (at “1”) only when it is to be written to.
Vl) also memory address bits AI5 to A26
.. Written to the cache monitor index (as 1”) along with PO and PI.

第4A図のパリティ・チエツク回路86は内部アドレス
・パス32に供給される各アドレスのノ4リティをチエ
ツクする。i?リティ・エラーがみつかると、回路86
の出力信号ADRPARERRがアクティブ(1”)と
なる。
Parity check circuit 86 of FIG. 4A checks the parity of each address applied to internal address path 32. i? If a quality error is found, circuit 86
The output signal ADRPARERR becomes active (1'').

第4B図の比較ロジック回路48はデュアル比較訛90
と、ノぞリティ・チエツク回路92と、2つのラッチ9
4,96と、アンド・デート98゜100.102とを
含む。比較器90の出力は共にオア・ワイヤされ、その
結果の信号はラッチ94に供給される。ラッチ94の出
力はアンド・ゲート98に供給される。パリティ・チエ
ツク回路92はキャッシュ・インデックス44の出力の
メモリー・アドレス・ビットのパリティをチエツクし、
その出力はランチ96に供給される。ラッチ96の出力
はアンド・ダート98及びアンド・ゲート100の両方
に供給される。キャッシュメモリーがデータの供給に利
用しうる場合にのみアクティブ(l”)である信号CA
CHE ENABLEと、プロセソ?24が2エツチ(
読出す)するかデータを書込む(記憶する)ときにのみ
アクティブ(11”)である信号FPREAD 十FP
WRTとは両方共アンド・ゲート102に供給される。
The comparison logic circuit 48 of FIG. 4B is a dual comparison logic circuit 90.
, a noise check circuit 92, and two latches 9.
4,96 and and date 98°100.102. The outputs of comparator 90 are or wired together and the resulting signal is provided to latch 94. The output of latch 94 is provided to AND gate 98. Parity check circuit 92 checks the parity of the memory address bits of the output of cache index 44;
Its output is provided to launch 96. The output of latch 96 is provided to both AND gate 98 and AND gate 100. A signal CA that is active (l”) only when the cache memory is available for supplying data.
CHE ENABLE and processo? 24 is 2 sex (
The signal FPREAD is active (11”) only when reading (reading) or writing (storing) data.
WRT are both supplied to AND gate 102.

アンド・ゲート102の出力はアンド・ゲート100に
対する第2の入力として供給される。アンド・ダート1
00の出力信号IPARERRはプロセッサ24に供給
され、フェッチ又は記憶中、キャッシュ・インデックス
44からのビットに/4’リティ・エラーが検出された
ときにのみアクティブ(” 1’”)となる。
The output of AND gate 102 is provided as a second input to AND gate 100. and dirt 1
The 00 output signal IPARERR is provided to the processor 24 and becomes active ("1") only when a /4'ity error is detected in a bit from the cache index 44 during a fetch or store.

アンド・ゲート98の出力は、アドレス・パス32のメ
モリー・アドレスがキャッジ−・インデックス44のア
ドレスと一致するときのみアクティブ(”1″)である
信号”HIT ”を供給する。
The output of AND gate 98 provides a signal "HIT" which is active ("1") only when the memory address of address path 32 matches the address of cache index 44.

パリティ・チエツク回路86からの信号ADRPARE
RRがアクティブであると、メモリー・アドレスに・ぞ
リティ・エラーがあること?示し、信号CACHEEN
ABLE’がアクティブであると、キャッジ−・データ
・メモリー42はデータ供給不能であることを示し、・
やりティ・チエツク回路92(ラッチ96によって)の
出力がアクティブであると、キャッシュ・インデックス
44の出力がノ4リティ・エラーであることを示し、ア
ンド・ケ” −) 98の出力信号HITがインアクテ
ィブ(及び逆信号MISSがアクティブとなる)となり
、プロセッサ24はキャッシュ・データ・メモリー42
のアドレス・データ・ブロックの使用ができない。
Signal ADRPARE from parity check circuit 86
If RR is active, is there an error in the memory address? and the signal CACHEEN
When ABLE' is active, it indicates that the cache data memory 42 is unable to supply data;
When the output of the error check circuit 92 (by the latch 96) is active, the output of the cache index 44 indicates an error, and the output signal HIT of the AND key 98 is active. active (and the inverse signal MISS becomes active), and the processor 24 uses the cache data memory 42
address data block is not available.

第4B図の比較ロジック50はプーアル比較器106、
/4’リティ・チエツク回路108、アンド・ダート1
10,112,114、ランチ116,118を含む。
Comparison logic 50 in FIG. 4B includes Puer comparator 106;
/4'ity check circuit 108, and dirt 1
10, 112, 114, lunch 116, 118 included.

比較器106はモニタ・アドレス・パス34のビットM
A15〜MA 26 、 P O、P 1とキャッシュ
・モニタ・インデツクス46の出力とを比較する。比較
器106の出力は共にワイヤ・オアされ、アンド・ケ°
−ト110の1人力に供給される。アンド・ゲート11
0の他の入力は、キャッジ−モニタ・インデックス46
がエネーブルのときのみアクティブ(0”)である信号
MONENABIJ’を受信する。キャッシュ・モニタ
・インデックス46がエネーブルであると(MONEN
ABLE’が“0”)、アンド・ゲート11Oは比較器
106からの一致信号を信号LMONHI Tとして通
過し、局部キャッシュ・メモリー・ユニット20に関す
るゾロセッサ24によって記憶されたデータが第4B図
のキャッシュ・データ・メモリー42にあることを示す
Comparator 106 selects bit M of monitor address path 34.
Compare A15-MA26, PO, P1 with the output of cache monitor index 46. The outputs of comparators 106 are wire-ORed together and
- 110 manpower is supplied. and gate 11
The other input of 0 is the cache-monitor index 46
receives a signal MONENABIJ' which is active (0'') only when the cache monitor index 46 is enabled.
ABLE' is "0"), AND gate 11O passes the match signal from comparator 106 as signal LMONHIT and the data stored by processor 24 for local cache memory unit 20 is stored in the cache memory of FIG. 4B. Indicates that it is in data memory 42.

ノぞリティ・チエツク回路82はキャッシュ゛モニタ・
インデックス46の出力からのビットのA’リティをチ
エツクし、その出力全ランチ116及びアンド・ゲート
112に対し、その出力を供給する。アンド・r−)1
12の他の入力は、キャッシュ・モニタ・インデックス
46が動作可能の場合にアクティブである信号MONE
NABLE i受信する。アンド・ゲート112の出力
はアンド・ケ9−ト110の出力と(信号LMONHI
T )オア・ワイヤされ、ラッチ118に供給される。
The integrity check circuit 82 is a cache monitor.
It checks the A' property of the bit from the output of index 46 and provides its output to all launches 116 and AND gate 112. and r-)1
Another input of 12 is a signal MONE which is active when cache monitor index 46 is enabled.
NABLE i Receive. The output of AND gate 112 is connected to the output of AND gate 110 (signal LMONHI
T) or wired and fed to latch 118.

結果として、キャッシュ・モニタ・インデックス46が
エネ−プルであると、信号LMONHIT (及びその
反転信号LMONH工T′)は比較器106における一
致か又はノ4リティ・チエツク回路108の出力で表示
するパリティ・エラーのどちらかがある場合、ラッチ1
18の出力においてアクティブである。
As a result, when cache monitor index 46 is enabled, signal LMONHIT (and its inverse signal LMONHIT') is either a match at comparator 106 or a parity signal as indicated by the output of parity check circuit 108.・If either error occurs, latch 1
18 outputs.

パリティ・チエツク回路108の出力はラッチ116及
びアンド・ケ”−ト114にも供給される。
The output of parity check circuit 108 is also provided to latch 116 and AND gate 114.

アンド・ダート114に対する他の入力は信号MONE
ABLE テあッテ、アント”−?−1−104の出力
の信号MONI PARERRは、キャッシュ・モニタ
・インデックス46に/やりティ・エラーがあシ、キャ
ッジ−モニタ・インデックスが可能化された場合にのみ
アクティブ(1”)である。信号MONI PARER
Rはプロセッサ24に供給され、キャッシュ・モニタ・
インデックス46にエラー状態が発生したことを表示す
る。
The other input to AND DART 114 is the signal MONE.
The signal MONI PARERR at the output of the ABLE ant"-?-1-104 is active only if there is an error in the cache monitor index 46 and the cache monitor index is enabled. Active (1”). Signal MONI PARER
R is supplied to the processor 24 and cache monitor
The index 46 indicates that an error condition has occurred.

第4B図の比較器90,106両方の2つの入力はアク
ティブ(1”)信号源に接続され、キャッシュ・インデ
ックス44及びキャッシュ・モニタ・インデックス46
からの有効ビットを比較する手段を与える。明らかに、
有効ビットがアクティブ信号と一致しないと、アドレス
されるデータは予め追放され、キャッジ−・データ・メ
モリー42から読出されなり0 キャッシュ・データ・メモリー42、キャッシュ・イン
デックス44及びキャッシュ・モニタ・インデックス4
6はCa1ifornia、5anta C1araの
’Fujitsu Microelectronics
、 Inc、から購入できる。
The two inputs of both comparators 90, 106 of FIG.
provides a means to compare the valid bits from the . clearly,
If the valid bit does not match the active signal, the addressed data is previously evicted and read from cache data memory 42.
6 is California, 5anta C1ara's 'Fujitsu Microelectronics
It can be purchased from , Inc.

第4A図、第4B図の他の部品のすべてはAr1zon
a、 PhoenixのMotorola Sem1c
onductorProducts、 Inc、から購
入できる。それらの部品番号は下記テーブルIに示す。
All other parts in Figures 4A and 4B are Ar1zon.
a. Phoenix Motorola Sem1c
It can be purchased from onductor Products, Inc. Their part numbers are shown in Table I below.

以下説明したこの発明のキャッシュ・インデックス及び
キャッシュ・モニタ・インデックスを持つキャッシュ・
メモリーは、そのゾロセッサをインタラブドせずに、そ
こにデータがあるかどうかについて検査し決定すること
ができる。
A cache index and a cache monitor index according to the present invention described below.
A memory can be examined and determined whether there is data in it without interworking its processors.

テーブル I 成  分 キャッシュ・データ・メモリー42 キヤツシユ・インデックス44 キャッシュ・モニタ・インデックス46MUX 80 MUX 82 ノぐリティ・チエツク回路86 比較器90 ノぞリティ・チエツク回路92 ラッチ94 ランチ96 アンド・ゲート98 アンド・ゲート100 アンド・ゲート102 比較器106 /ヂリティ・チエツク回路108 アンド・r−ト110 アンド・ゲート112 アンド・ゲート114 ラッチ116 ラッチ118 部品番号 0H158 oH158 0H160 0H166 0H160 0H175 +0H175 0H209 0H104 1QHI 04 0H166 0H160 0H209 0H104 0H104 0H130 0H130Table I Component Cache data memory 42 cash index 44 Cache monitor index 46MUX 80 MUX 82 Security check circuit 86 Comparator 90 Noise check circuit 92 latch 94 Lunch 96 and gate 98 and gate 100 and gate 102 Comparator 106 /Dirity check circuit 108 andrto110 and gate 112 and gate 114 latch 116 latch 118 part number 0H158 oH158 0H160 0H166 0H160 0H175 +0H175 0H209 0H104 1QHI 04 0H166 0H160 0H209 0H104 0H104 0H130 0H130

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は、この発明の多プロセッサ・データ処理システ
ムの簡単なブロック図、 第2図は、第1図のプロセンサ・サブシステムの1つの
ブロック図、 第3図は、第2図に見られるキャッシュ・インデックス
及ヒキャッシュ・モニタ・インデックスのアドレスに記
憶され、使用されるビットの図、第4A図及び第4B図
は、第1図及び第2図に見られるキャッシュ・メモリー
・ユニットのブロック図である。 図中、10・・・多プロセッサ、・システム、12・・
・プロセッサ・サブシステム、14・・・主メモリー1
6・・・I10インタフェース、18・・・システム・
ハス、20・・・キャッシュ・メモリー・ユニット。 出願人代理人  斉 藤   勲 FIG、1 FIG、3
1 is a simplified block diagram of the multiprocessor data processing system of the present invention; FIG. 2 is a block diagram of one of the prosensor subsystems of FIG. 1; FIG. 3 is a block diagram of one of the processor subsystems of FIG. Diagrams of the bits stored and used in cache index and cache monitor index addresses, FIGS. 4A and 4B, are block diagrams of the cache memory unit seen in FIGS. 1 and 2. It is. In the figure, 10...multiprocessor, system, 12...
・Processor subsystem, 14...Main memory 1
6...I10 interface, 18...system
Has, 20...cache memory unit. Applicant's agent Isao Saito FIG, 1 FIG, 3

Claims (1)

【特許請求の範囲】[Claims] (1)プロセッサと該プロセッサが使用するデータ・ワ
ードを記憶する主メモリーとを有するデータ処理システ
ムにおいて、 前記主メモリーにも記憶されているデータ・ワードの少
くとも一部を記憶するデータ・メモリーと、 前記データ・メモリーに記憶されている各データ・ワー
ドに関するアドレスを記憶し、前記プロセッサが使用す
るデータ・ワードを前記データ・メモリーに記憶するか
どうか決定する前記プロセッサによってアドレスされる
インデックス・レジスタと、 前記データ・メモリーに記憶されている各データ・ワー
ドに対するアドレスを記憶し、前記プロセッサとは無関
係にアドレスされて前記データ・メモリーにデータ・ワ
ードを記憶するかどうかを前記プロセッサを介さずに決
定するようにしたモニタ・インデックス・メモリーとを
含むキャッシュ・メモリー・システム。
(1) In a data processing system having a processor and a main memory for storing data words used by the processor, the data memory for storing at least a portion of the data words also stored in the main memory; , an index register addressed by the processor that stores an address for each data word stored in the data memory and determines whether a data word for use by the processor is stored in the data memory; , storing an address for each data word stored in the data memory and being addressed independently of the processor to determine whether to store the data word in the data memory without involving the processor; A cache memory system that includes a monitor index memory.
JP1249369A 1988-10-13 1989-09-27 Cash memory having monitor index Pending JPH02136947A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US25693388A 1988-10-13 1988-10-13
US256,933 1988-10-13

Publications (1)

Publication Number Publication Date
JPH02136947A true JPH02136947A (en) 1990-05-25

Family

ID=22974199

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1249369A Pending JPH02136947A (en) 1988-10-13 1989-09-27 Cash memory having monitor index

Country Status (1)

Country Link
JP (1) JPH02136947A (en)

Similar Documents

Publication Publication Date Title
EP0258559B1 (en) Cache memory coherency control provided with a read in progress indicating memory
US4991090A (en) Posting out-of-sequence fetches
US4626988A (en) Instruction fetch look-aside buffer with loop mode control
JP3510240B2 (en) Multi-processing system with cache memory
US5524208A (en) Method and apparatus for performing cache snoop testing using DMA cycles in a computer system
US4891749A (en) Multiprocessor storage serialization apparatus
US5249284A (en) Method and system for maintaining data coherency between main and cache memories
JPS604494B2 (en) cash storage system
JPH0668735B2 (en) Cache memory
EP0636973A2 (en) Processor interface chip for dual-microprocessor processor system
JPH05127992A (en) Apparatus and method for decreasing interference in two-level cache memories
US4831622A (en) Apparatus for forcing a reload from main memory upon cache memory error
US5671231A (en) Method and apparatus for performing cache snoop testing on a cache system
JPH08272688A (en) Cache memory device and method for storing hierarchical storage items and cache tags in a single cache array structure
US4970643A (en) Mechanism for lock-up free cache operation with a remote address translation unit
JPH05334170A (en) Control circuit for dual port memory
US20050027960A1 (en) Translation look-aside buffer sharing among logical partitions
US5455925A (en) Data processing device for maintaining coherency of data stored in main memory, external cache memory and internal cache memory
US6138206A (en) Data register for multicycle data cache read
US7464227B2 (en) Method and apparatus for supporting opportunistic sharing in coherent multiprocessors
JP2004030527A (en) Storage control device and storage control method
JPH04357539A (en) Dual port cache tag memory device
KR100380674B1 (en) Method and system for maintaining cache coherency for write-through store operations in a multiprocessor system
JP3733604B2 (en) Cache memory
JPH02136947A (en) Cash memory having monitor index