JP3072446B2 - Data processing device and cache memory - Google Patents
Data processing device and cache memoryInfo
- Publication number
- JP3072446B2 JP3072446B2 JP4183608A JP18360892A JP3072446B2 JP 3072446 B2 JP3072446 B2 JP 3072446B2 JP 4183608 A JP4183608 A JP 4183608A JP 18360892 A JP18360892 A JP 18360892A JP 3072446 B2 JP3072446 B2 JP 3072446B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- match
- directory
- way
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
【0001】[0001]
【産業上の利用分野】本発明は、複数の処理装置の夫々
がキャッシュメモリを有し、各処理装置が主記憶装置を
共用するデータ処理装置に関し、特にキャッシュメモリ
のディレクトリの検索、無効などを行なうためのキャッ
シュディレクトリ制御機能を有するデータ処理装置に関
する。 In the present invention, each of a plurality of processing devices has a cache memory, and each processing device has a main storage device.
Cache for executing relates to a data processing apparatus for sharing, particularly search for cache memory directory, and invalid
Related to a data processing device having a directory control function.
I do.
【0002】[0002]
【従来の技術】従来、データ処理装置においては、例え
ば低速・大容量の記憶素子を用いた主記憶装置と、高速
・少容量の記憶素子を用いたキャッシュメモリのように
記憶装置を階層化している。キャッシュメモリは、主記
憶装置上のデータを細分化したブロックの写しを持ち、
中央処理装置から主記憶装置に対する見かけ上のアクセ
スを高速化している。2. Description of the Related Art Hitherto, in a data processing device, for example, a main storage device using a low-speed and large-capacity storage element and a cache device using a high-speed and small-capacity storage element are hierarchized. I have. The cache memory has a copy of the block obtained by subdividing the data on the main storage device,
The apparent access from the central processing unit to the main storage is speeded up.
【0003】また、複数の中央処理装置が1つのメモリ
を共有し各中央処理装置がキャッシュメモリを有するマ
ルチプロセッサシステムによるデータ処理装置において
は、個々の中央処理装置が、キャッシュメモリの書換え
に応じて、他の中央処理装置のキャッシュメモリの内容
を書き換えたりあるいは消去し、メモリの不一致が生じ
ないようにする必要がある。In a data processing device based on a multiprocessor system in which a plurality of central processing units share one memory and each central processing unit has a cache memory, each central processing unit operates according to rewriting of the cache memory. In addition, it is necessary to rewrite or erase the contents of the cache memory of another central processing unit so that a memory mismatch does not occur.
【0004】この場合には、キャッシュメモリが中央処
理装置からBI(バッファ無効化要求)のリクエストを
受け、キャッシュメモリのディレクトリを検索し、その
無効化アドレスの内容がキャッシュメモリにあると判明
した場合、キャッシュメモリの該当するディレクトリを
無効にしている。In this case, when the cache memory receives a BI (Buffer Invalidation Request) request from the central processing unit, searches the cache memory directory, and finds that the contents of the invalidation address are in the cache memory. , The corresponding directory in the cache memory is invalidated.
【0005】また、このディレクトリ検索を一般のメモ
リアクセスと並行して行うために、メモリアクセスのた
めのディレクトリ以外にディレクトリ無効化のためのデ
ィレクトリコピーを設け、2つのディレクトリに同一の
データを書き込むことで、メモリアクセスの効率を向上
させている。Further, in order to perform this directory search in parallel with general memory access, a directory copy for invalidating a directory is provided in addition to a directory for memory access, and the same data is written to two directories. Thus, the efficiency of memory access is improved.
【0006】[0006]
【発明が解決しようとする課題】ここで、RAM(ラン
ダムアクセスメモリ)、例えばディレクトリにエラーが
発生した場合には、このエラーによって2つのディレク
トリのデータが異なってくる。従って、2つのディレク
トリのデータを比較しこのデータが異なっていれば、エ
ラーであることがわかる。Here, when an error occurs in a RAM (random access memory), for example, a directory, the data in the two directories differs due to the error. Therefore, the data in the two directories is compared, and if the data is different, it is determined that an error has occurred.
【0007】図6は従来のこの種のキャッシュディレク
トリ制御方式の一例を示す構成ブロック図である。図6
において、ディレクトリ(以下、DIRという。)11
と、これと同一構成を有するディレクトリコピー(以
下、DIRCという。)12が設けられている。FIG. 6 is a block diagram showing an example of a conventional cache directory control system of this type. FIG.
, A directory (hereinafter, referred to as DIR) 11
And a directory copy (hereinafter referred to as DIRC) 12 having the same configuration as the above.
【0008】DIR11は、図示しない中央処理装置か
らメモリアクセスのためのリクエストアドレス(以下、
REQ ADRという。)を入力し、マッチ回路13−
0は、DIR11からのWAY(ウェイ)0 ADRと
REQ ADRとの一致チェックを行い、WAY0 A
DRがREQ ADRと一致すれば、DIR WAY0
MCHが立ち、キャッシュメモリに求めるべきデータ
が存在することがわかる。The DIR 11 receives a request address (hereinafter, referred to as a memory address) from a central processing unit (not shown) for memory access.
REQ ADR. ) And the match circuit 13-
0 performs a match check between WAY (way) 0 ADR from DIR 11 and REQ ADR, and WAY 0 A
If DR matches REQ ADR, DIR WAY0
The MCH is turned on, indicating that there is data to be sought in the cache memory.
【0009】マッチ回路13−1は、DIR11からの
WAY1 ADRとREQ ADRとの一致チェックを
行い、WAY1 ADRがREQ ADRと一致すれ
ば、DIR WAY1 MCHが立ち、キャッシュメモ
リに求めるべきデータが存在することがわかる。The match circuit 13-1 checks the match between the WAY1 ADR from the DIR 11 and the REQ ADR, and if the WAY1 ADR matches the REQ ADR, the DIR WAY1 MCH is activated and data to be obtained exists in the cache memory. You can see that.
【0010】一方、DIRC12は無効化アドレス(以
下、BI ADRという。)を入力し、BI ADRの
一部のアドレスをマッチ回路14−0,14−1に出力
する。マッチ回路14−0は、DIRC12のWAY0
ADRとBI ADRとの一致チェックを行い、WA
Y0 ADRがBI ADRと一致すれば、DIRCW
AY0 MCHが立ち、キャッシュメモリに無効化すべ
きアドレスデータが存在することがわかる。On the other hand, the DIRC 12 receives an invalidation address (hereinafter, referred to as BI ADR) and outputs a part of the address of the BI ADR to the match circuits 14-0 and 14-1. The match circuit 14-0 is connected to the WAY0 of the DIRC12.
ADR and BI ADR are checked for a match and WA
If Y0 ADR matches BI ADR, DIRCW
AY0 MCH rises, indicating that there is address data to be invalidated in the cache memory.
【0011】マッチ回路14−1は、DIRC12のW
AY1 ADRとBI ADRとの一致チェックを行
い、WAY1 ADRがBI ADRと一致すれば、D
IRCWAY1 MCHが立ち、キャッシュメモリに無
効化すべきアドレスデータが存在することがわかる。[0011] The match circuit 14-1 is provided with a W
AY1 ADR is checked for consistency with BI ADR, and if WAY1 ADR matches BI ADR, D
The IRCWAY1 MCH is turned on, and it is understood that there is address data to be invalidated in the cache memory.
【0012】このような構成において、BIは、次のよ
うな動作を行なう。 (1)DIRC12のみにBI−ADRを流してマッチ
しているかを見る。 (2)ここで、マッチしていない場合には終了する。 (3)マッチしている場合には、キャッシュメモリに無
効化すべきアドレスデータが存在することから、DIC
11,DIRC12の双方にBI−ADRを流して該当
するエントリを消去する。In such a configuration, BI performs the following operation. (1) BI-ADR is passed only to the DIRC 12 to see if there is a match. (2) If there is no match, the process ends. (3) If there is a match, there is address data to be invalidated in the cache memory.
11, BI-ADR is passed to both the DIRC 12 and the corresponding entry is deleted.
【0013】ここで、(1)(3)において、マッチ回
路13−0,13−1,14−0,14−1のいずれか
が故障した場合には、無効化されるべきアドレスがディ
レクトリに残ったままとなる可能性があった。このた
め、キャッシュメモリの内容と主記憶装置の内容とが異
なることがあった。Here, in (1) and (3), if any one of the match circuits 13-0, 13-1, 14-0, and 14-1 fails, the address to be invalidated is stored in the directory. Could remain. For this reason, the contents of the cache memory and the contents of the main storage device may be different.
【0014】また、このようなディレクトリのデータ比
較は、キャッシュメモリが特にセットアソシアティブ方
式を採用している場合に行われていなかった。この理由
としては、セットアソシアティブ方式では、アドレスの
一部を用いてアクセスされるライン上に複数のWAYを
設け、その各WAYにデータ及びウェイアドレスを登録
しているため、DIR11とDIRC12との一致チェ
ックをいちいち行なうと、膨大な物量を要するからであ
る。Further, such directory data comparison has not been performed when the cache memory employs the set associative method. The reason for this is that in the set associative method, a plurality of ways are provided on a line accessed using a part of an address, and data and way addresses are registered in each of the ways. This is because every check requires a huge amount of material.
【0015】本発明の目的は、マッチ回路の故障を検出
しこれによって無効化されるべきアドレスがディレクト
リに残らないようにし、また、ディレクトリの物量を低
減することのできるキャッシュディレクトリ制御機能を
有するデータ処理装置及びキャッシュメモリを提供する
ことにある。 An object of the present invention is to provide a cache directory control function capable of detecting a failure of a match circuit so that an address to be invalidated does not remain in the directory and reducing the physical quantity of the directory.
Processing device and cache memory having the same
It is in.
【0016】[0016]
【課題を解決するための手段】本発明は前記課題を解決
するために次のような構成とした。図1は本発明の原理
図である。図1において、複数の中央処理装置1のそれ
ぞれがセットアソシアティブ方式のキャッシュメモリ8
を備え、各中央処理装置1は1つの主記憶装置2を記憶
制御装置3を介して共用する。Means for Solving the Problems The present invention has the following arrangement to solve the above-mentioned problems. FIG. 1 is a diagram illustrating the principle of the present invention. In FIG. 1, each of a plurality of central processing units 1 has a set associative cache memory 8.
And each central processing unit 1 shares one main storage device 2 via the storage control device 3.
【0017】前記各キャッシュメモリ8において、ディ
レクトリ11は同一のアドレスに複数のウェイを有する
とともに各ウェイ毎にウェイアドレスを登録しメモリア
クセスのためのリクエストアドレスを入力する。In each cache memory 8, the directory 11 has a plurality of ways at the same address, registers a way address for each way, and inputs a request address for memory access.
【0018】ディレクトリコピー12は、同一のアドレ
スに複数のウェイを有するとともに各ウェイ毎にウェイ
アドレスを登録し前記キャッシュメモリ8の内容の書換
え又は消去を生じた中央処理装置1から無効化アドレス
を入力する。The directory copy 12 has a plurality of ways at the same address, registers a way address for each way, and inputs an invalidation address from the central processing unit 1 in which the contents of the cache memory 8 have been rewritten or erased. I do.
【0019】選択手段15は、前記無効化アドレス又は
リクエストアドレスのいずれかを選択して前記ディレク
トリ11に入力するよう動作する。選択手段15は、例
えばマルチプレクサや機械的な切換スイッチなどで構成
するのが望ましい。The selecting means 15 operates to select either the invalidation address or the request address and input the selected address to the directory 11. It is desirable that the selection means 15 be constituted by, for example, a multiplexer or a mechanical changeover switch.
【0020】マッチ手段10は、前記選択手段15で無
効化アドレスを選択したとき無効化アドレスに対応する
前記ディレクトリ11のウェイアドレスと前記ディレク
トリコピー12のウェイアドレスとの一致チェックを行
なう。When the selecting unit 15 selects an invalidation address, the matching unit 10 checks whether the way address of the directory 11 corresponding to the invalidation address matches the way address of the directory copy 12.
【0021】そして、前記マッチ手段10の結果によっ
てマッチ手段10の故障を検出するよう構成した。より
好適には以下のようにするのが望ましい。Then, a failure of the matching means 10 is detected based on the result of the matching means 10. More preferably, the following is desirable.
【0022】すなわち、前記一定時間間隔を計時する計
時部16を設け、この計時部16から出力される一定時
間間隔毎の出力によって前記選択手段15は選択動作す
るよう構成する。計時部16は、例えば、タイマーやプ
ログラムカウンタなどで構成するのが望ましい。That is, there is provided a timer section 16 for counting the predetermined time interval, and the selecting means 15 is configured to perform a selection operation by an output at a predetermined time interval output from the clock section 16. It is desirable that the timer unit 16 be constituted by, for example, a timer or a program counter.
【0023】また、前記マッチ手段10は、前記ウェイ
毎にウェイアドレスと前記選択手段15により選択され
たリクエストアドレス又は無効化アドレスとの一致チェ
ックを行なう第1のマッチ回路13を有し、かつ前記ウ
ェイ毎にウェイアドレスと前記無効化アドレスとの一致
チェックを行なう第2のマッチ回路14を有するととも
に、前記第1のマッチ回路13の出力と第2のマッチ回
路14の出力との一致チェックを行なう第3のマッチ回
路17とから構成するようにしてもよい。The matching means 10 has a first match circuit 13 for checking whether a way address matches a request address or an invalidation address selected by the selecting means 15 for each way, and A second match circuit for checking a match between a way address and the invalidation address for each way; and a check for match between the output of the first match circuit 13 and the output of the second match circuit. The third match circuit 17 may be used.
【0024】これらのマッチ回路のうち、第1のマッチ
回路13をEOR回路で構成するとよい。Of these match circuits, the first match circuit 13 is preferably formed by an EOR circuit.
【0025】[0025]
【作用】本発明によれば、キャッシュメモリ8におい
て、ディレクトリ11及びディレクトリコピー12は同
一のアドレスに複数のウェイを有するとともに各ウェイ
毎にウェイアドレスを登録しており、ディレクトリ11
はリクエストアドレスを入力し、ディレクトリコピー1
2は無効化アドレスを入力する。According to the present invention, in the cache memory 8, the directory 11 and the directory copy 12 have a plurality of ways at the same address and register a way address for each way.
Enter the request address and copy directory 1
2 inputs an invalidation address.
【0026】そして、選択手段15によって無効化アド
レスが選択され、無効化アドレスがディレクトリ11に
入力される。すると、マッチ手段10によって無効化ア
ドレスに対する前記ディレクトリ11のウェイアドレス
と前記ディレクトリコピー12のウェイアドレスとの一
致チェックが行われるので、マッチ手段の故障を検出す
ることができる。Then, the invalidating address is selected by the selecting means 15, and the invalidating address is input to the directory 11. Then, the matching means 10 checks whether the way address of the directory 11 and the way address of the directory copy 12 with respect to the invalidation address match, so that a failure of the matching means can be detected.
【0027】また、計時部16からの出力によって選択
手段15は無効化アドレスを一定時間間隔でディレクト
リ11に入力するように選択動作するので、定期的にマ
ッチ手段10の故障をチェックすることができるから、
ディレクトリの内容を直接に比較するほどの物量を必要
としない。 Further, the selection means 15 operates so as to input the invalidation address to the directory 11 at regular time intervals according to the output from the timer section 16, so that the failure of the matching means 10 can be periodically checked. From
It doesn't need as much to directly compare the contents of the directory .
【0028】さらに、第1のマッチ回路13はウェイ毎
にウェイアドレスと前記選択手段15により選択された
リクエストアドレスとの一致チェックを行ない、一致し
たときにメモリアクセスを行なう。第2のマッチ回路1
4は前記ウェイ毎にウェイアドレスと前記無効化アドレ
スとの一致チェックを行なう。Further, the first match circuit 13 checks the match between the way address and the request address selected by the selecting means 15 for each way, and performs a memory access when they match. Second match circuit 1
4 performs a match check between the way address and the invalidation address for each way.
【0029】そして、選択手段15で無効化アドレスが
選択されたときには、第1のマッチ回路13はウェイア
ドレスと無効化アドレスとの一致チェックを行なう。さ
らに、第3のマッチ回路17は、前記第1のマッチ回路
13の出力と第2のマッチ回路14の出力との一致チェ
ックを行なうので、この結果によっていずれかのマッチ
回路で故障したことがわかる。When the invalidating address is selected by the selecting means 15 , the first match circuit 13 checks whether the way address matches the invalidating address. Further, since the third match circuit 17 checks the match between the output of the first match circuit 13 and the output of the second match circuit 14, it can be seen from the result that one of the match circuits has failed. .
【0030】[0030]
【実施例】以下、本発明の具体的な実施例について説明
する。 <実施例1>図2は本発明に係るキャッシュディレクト
リ制御方式を実現するためのマルチプロセッサシステム
によるデータ処理装置の実施例1の構成ブロック図であ
る。DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, specific embodiments of the present invention will be described. <Embodiment 1> FIG. 2 is a block diagram showing the configuration of a first embodiment of a data processing apparatus using a multiprocessor system for implementing a cache directory control system according to the present invention.
【0031】図2において、6つの中央処理装置1−0
〜1−5は、記憶制御装置3を介して主記憶装置2に接
続され、各中央処理装置1(1−0〜1−5)が主記憶
装置2を共有するようになっている。In FIG. 2, six central processing units 1-0
1 to 5 are connected to the main storage device 2 via the storage control device 3 so that each central processing unit 1 (1-0 to 1-5) shares the main storage device 2.
【0032】図3に、各中央処理装置の詳細な構成及び
その周辺回路を示す。各中央処理装置は、命令制御ユニ
ット5、演算実行ユニット6、記憶制御ユニット7から
なっている。FIG. 3 shows a detailed configuration of each central processing unit and its peripheral circuits. Each central processing unit includes an instruction control unit 5, an operation execution unit 6, and a storage control unit 7.
【0033】記憶制御ユニット7は、ディレクトリ部9
及びデータ部20からなるキャッシュメモリ8を有し、
命令制御ユニット5からのメモリアクセスに対してディ
レクトリ部9を検索し、その結果を命令制御ユニット5
に送る。The storage control unit 7 includes a directory unit 9
And a cache memory 8 comprising a data section 20 and
The directory section 9 is searched for a memory access from the instruction control unit 5, and the result is stored in the instruction control unit 5.
Send to
【0034】データ部20は、ディレクトリ部9に該当
するブロックが存在する場合に、ディレクトリ部9に登
録されている該アドレスデータによってアクセスされ、
所望のブロックを読み出してブロック内のデータを命令
制御ユニット5に送る。ディレクトリ部9は、命令制御
ユニット5からの要求によりエントリを管理している。 <キャッシュメモリ8の構成>図4に、キャッシュメモ
リ8の詳細な構成図を示す。キャッシュメモリ8は、同
一のアドレスに2つのWAY0 ADR,WAY1 A
DRを有し中央処理装置1からメモリアクセスのための
リクエストアドレスを入力するDIR11を有してい
る。DIR11の入力側にはBI ADR又はREQ
ADRを選択してDIR11に出力するためのセレクタ
(以下、SELという。)15が設けられている。The data section 20 is accessed by the address data registered in the directory section 9 when a block corresponding to the directory section 9 exists,
The desired block is read and the data in the block is sent to the instruction control unit 5. The directory section 9 manages entries according to a request from the instruction control unit 5. <Structure of Cache Memory 8> FIG. The cache memory 8 stores two WAY0 ADR and WAY1 A at the same address.
It has a DIR 11 that has a DR and inputs a request address for memory access from the central processing unit 1. BI ADR or REQ on the input side of DIR11
A selector (hereinafter referred to as SEL) 15 for selecting ADR and outputting it to DIR 11 is provided.
【0035】カウンタ(以下、CNTRという。)16
は、時間を計数するものであり、一定時間間隔毎にSE
L15が選択動作するための選択信号を与えるようにな
っている。A counter (hereinafter referred to as CNTR) 16
Is used to count time, and SE is counted at regular time intervals.
L15 provides a selection signal for performing a selection operation.
【0036】DIRC12は同一のアドレスに2つのW
AY0 ADR,WAY1 ADRを有し、キャッシュ
メモリ8の内容の書換え又は消去を生じた中央処理装置
1から無効化アドレスを入力するようになっている。The DIRC 12 stores two Ws at the same address.
It has AY0 ADR, WAY1 ADR, and input the invalidation address from the central processing unit 1 which caused the rewrite or erase the contents of the cache memory 8.
【0037】マッチ回路13−0は、DIR11とSE
L15に接続されDIR11のWAY0 ADRとSE
L15からのBI ADR又はREQ ADRとの一致
チェックを行ない、その出力をマッチ回路17−0に出
力するとともに、これらのアドレスが一致するときには
DIR WAY0 MCHを出力する。The match circuit 13-0 includes the DIR 11 and the SE
WA15 ADR and SE of DIR11 connected to L15
A match check with BI ADR or REQ ADR from L15 is performed, and its output is output to a match circuit 17-0. When these addresses match, DIR WAY0 MCH is output.
【0038】マッチ回路13−1は、DIR11とSE
L15に接続されDIR11のWAY1 ADRとSE
L15からのBI ADR又はREQ ADRとの一致
チェックを行ない、その出力をマッチ回路17−1に出
力するとともに、これらのアドレスが一致するときには
DIR WAY1 MCHを出力する。The match circuit 13-1 includes the DIR 11 and the SE
WAY1 ADR and SE of DIR11 connected to L15
A match check with BI ADR or REQ ADR from L15 is performed, and its output is output to a match circuit 17-1. When these addresses match, DIR WAY1 MCH is output.
【0039】一方、キャッシュメモリ8にDIR11と
同一構成のDIRC12を有しており、DIRC12は
2つのWAY0 ADR,WAY1 ADRを有し、B
IADRを入力するようになっている。On the other hand, the cache memory 8 has a DIRC 12 having the same configuration as the DIR 11, and the DIRC 12 has two WAY0 ADRs and WAY1 ADRs.
IADR is input.
【0040】マッチ回路14−0は、DIRC12の入
出力側に接続されDIRC12のWAY0 ADRとB
I ADRとの一致チェックを行ない、その出力をマッ
チ回路17−0に出力するとともに、これらのアドレス
が一致するときにはDIRCWAY0 MCHを出力す
る。The match circuit 14-0 is connected to the input / output side of the DIRC 12, and is connected to the WAY0 ADR and B
A match with IADR is checked, its output is output to match circuit 17-0, and when these addresses match, DIRCWAY0 MCH is output.
【0041】マッチ回路14−1は、DIRC12の入
出力側に接続されDIRC12のWAY1 ADRとB
I ADRとの一致チェックを行ない、その出力をマッ
チ回路17−1に出力するとともに、これらのアドレス
が一致するときにはDIRCWAY1 MCHを出力す
る。The match circuit 14-1 is connected to the input / output side of the DIRC 12, and is connected to the WAY1 ADR and the B
A match with the IADR is checked, and its output is output to the match circuit 17-1. When these addresses match, a DIRCWAY1 MCH is output.
【0042】マッチ回路17−0は、マッチ回路13−
0の出力とマッチ回路14−0の出力との一致チェック
を行ない、マッチ回路13−0の出力とマッチ回路14
−0の出力とが一致したときに出力”1”をEOR回路
18に出力する。マッチ回路17−1は、マッチ回路1
3−1の出力とマッチ回路14−1の出力との一致チェ
ックを行ない、マッチ回路13−1の出力とマッチ回路
14−1の出力とが一致したときに出力”1”をEOR
回路18に出力する。The match circuit 17-0 includes a match circuit 13-
A match between the output of the match circuit 13-0 and the output of the match circuit 14-0 is checked.
The output “1” is output to the EOR circuit 18 when the output of −0 matches. The match circuit 17-1 is a match circuit 1
A match between the output of the match circuit 13-1 and the output of the match circuit 14-1 is checked. When the output of the match circuit 13-1 matches the output of the match circuit 14-1, the output "1" is EOR.
Output to the circuit 18.
【0043】EOR回路18は、ウェイ0に対応するマ
ッチ回路17−0の出力が”1”であってかつウェイ1
に対応するマッチ回路17−1の出力が”1”であると
き以外には、コンパレートエラー(CMPR ERR)
を出力する。The EOR circuit 18 determines whether the output of the match circuit 17-0 corresponding to way 0 is "1" and
Other than when the output of the match circuit 17-1 corresponding to "1" is "1", the comparison error (CMPR ERR)
Is output.
【0044】次に、このように構成された実施例1によ
るキャッシュディレクトリ制御方式について説明する。
まず、通常では、SEL15はREQ ADRを選択
し、REQ ADRがDIR11に入力されるととも
に、マッチ回路13−0,13−1にも入力される。そ
して、マッチ回路13−0でREQ ADRとWAY0
−ADRとの一致チェックが行われ、WAY0 ADR
がREQ ADRと一致すれば、DIR WAY0 M
CHが立ち、キャッシュメモリ8に求めるべきデータが
存在することがわかる。Next, the cache directory control system according to the first embodiment configured as described above will be described.
First, normally, the SEL 15 selects the REQ ADR, and the REQ ADR is input to the DIR 11 and also to the match circuits 13-0 and 13-1. Then, REQ ADR and WAY0 are output by the match circuit 13-0.
-A match with ADR is performed and WAY0 ADR
Is equal to REQ ADR, DIR WAY0 M
The CH is turned on, indicating that there is data to be sought in the cache memory 8.
【0045】マッチ回路13−1は、DIR11からの
WAY1 ADRとREQ ADRとの一致チェックを
行い、WAY1 ADRがREQ ADRと一致すれ
ば、DIR WAY1 MCHが立ち、キャッシュメモ
リ8に求めるべきデータが存在することがわかる。The match circuit 13-1 checks the match between the WAY1 ADR from the DIR 11 and the REQ ADR. If the WAY 1 ADR matches the REQ ADR, the DIR WAY 1 MCH is activated and the data to be obtained exists in the cache memory 8. You can see that
【0046】一方、DIRC12はBI ADRを入力
し、BI ADRの一部のアドレスをマッチ回路14−
0,14−1に出力する。マッチ回路14−0は、DI
RC12のWAY0 ADRとBI ADRとの一致チ
ェックを行い、WAY0 ADRがBI ADRと一致
すれば、DIRC WAY0 MCHが立ち、キャッシ
ュメモリ8に無効化すべきアドレスデータが存在するこ
とがわかる。On the other hand, the DIRC 12 receives the BI ADR and inputs a part of the address of the BI ADR to the match circuit 14-.
0, 14-1. The match circuit 14-0 has a DI
A check is made between the WAY 0 ADR and the BI ADR of the RC 12, and if the WAY 0 ADR matches the BI ADR, the DIRC WAY 0 MCH is activated, and it can be seen that there is address data to be invalidated in the cache memory 8.
【0047】マッチ回路14−1は、DIRC12のW
AY1 ADRとBI ADRとの一致チェックを行
い、WAY1 ADRがBI ADRと一致すれば、D
IRCWAY1 MCHが立ち、キャッシュメモリ8に
無効化すべきアドレスデータが存在することがわかる。The match circuit 14-1 is provided with the W
AY1 ADR is checked for consistency with BI ADR, and if WAY1 ADR matches BI ADR, D
The IRCWAY1 MCH rises, and it can be seen that there is address data to be invalidated in the cache memory 8.
【0048】次に、CNTR16によってカウントが行
われ、例えば数十回あるいは数百回に一度、CNTR1
6からSEL15に選択信号が送られる。すると、SE
L15はBI ADRを選択すべく切り換えられ、BI
ADRがDIR11及びマッチ回路13−0,13−
1に入力される。Next, counting is performed by the CNTR 16, for example, once every tens or hundreds of times.
6 sends a selection signal to the SEL 15. Then SE
L15 is switched to select BI ADR,
ADR is DIR11 and match circuit 13-0,13-
1 is input.
【0049】そして、マッチ回路13−0によって無効
化アドレスと前記ディレクトリ11のWAY0−ADR
との一致チェックが行われ、マッチ回路13−1によっ
て無効化アドレスとDIR11のWAY1 ADRとの
一致チェックが行なわれることになる。Then, the invalidation address and the WAY0-ADR of the directory 11 are matched by the match circuit 13-0.
Is checked, and the match circuit 13-1 checks the match between the invalidation address and the WAY1 ADR of the DIR11.
【0050】さらに、マッチ回路17−0によってマッ
チ回路13−0の出力とマッチ回路14−0の出力との
一致チェックが行なわれてその結果がEOR回路18に
出力される。マッチ回路17−1によってマッチ回路1
3−1の出力とマッチ回路14−1の出力との一致チェ
ックが行なわれてその結果がEOR回路18に出力され
る。Further, the match circuit 17-0 checks the match between the output of the match circuit 13-0 and the output of the match circuit 14-0, and outputs the result to the EOR circuit 18. Match circuit 1 by match circuit 17-1
A match between the output of 3-1 and the output of match circuit 14-1 is checked, and the result is output to EOR circuit 18.
【0051】EOR回路18では、DIRC WAY0
MCHの出力とDIR WAY0MCHの出力が完全
に一致し、かつDIRC WAY1 MCHの出力とD
IR WAY1 MCHの出力とが完全に一致した場合
に、CMPR ERRを出力しない。これにより、2つ
のDIR11,DIRC12の内容が一致していること
がわかる。In the EOR circuit 18, the DIRC WAY 0
The output of MCH and the output of DIR WAY0MCH completely match, and the output of DIRC WAY1 MCH and D
When the output of the IR WAY1 MCH completely matches, the CMPR ERR is not output. This indicates that the contents of the two DIR11 and DIRC12 match.
【0052】一方、マッチ回路13−0,13−1,1
4−0,14−1,17−0,17−1,EOR回路1
8のいずれかが故障した場合には、DIRC WAY0
MCHの出力とDIR WAY0 MCHの出力とが
完全に一致せず、及び/又はDIRC WAY1 MC
Hの出力とDIR WAY1 MCHの出力とが完全に
一致しないので、EOR回路18では、CMPR ER
RORが立ち、2つのディレクトリの内容が不一致であ
ることがわかる。On the other hand, match circuits 13-0, 13-1, 1
4-0, 14-1, 17-0, 17-1, EOR circuit 1
8 fails, the DIRC WAY 0
The output of MCH does not completely match the output of DIR WAY0 MCH and / or DIRC WAY1 MC
Since the output of H and the output of DIR WAY1 MCH do not completely match, the EOR circuit 18 uses the CMPR ER
ROR is established, and it can be seen that the contents of the two directories do not match.
【0053】すなわち、無効化されるべきアドレスがデ
ィレクトリに残ったままとなる可能性がある。よって、
全てのパージ等が必要であることが示される。このよう
に実施例1によれば、一定時間間隔毎に同一のアドレス
を用いてディレクトリの内容とディレクトリコピーの内
容を読み出して、マッチ出力の比較を行なうので、マッ
チ回路の故障を検出した場合には全てのパージを行なう
から、無効化されるべきアドレスがディレクトリに残っ
たままとなることがなくなり、計算機の信頼性を向上す
ることができる。また、一定時間間隔毎にマッチ出力の
比較を行なうから、ディレクトリの内容を直接に比較す
るほどの物量を必要としない。That is, there is a possibility that the address to be invalidated remains in the directory. Therefore,
This indicates that all purging and the like are necessary. As described above, according to the first embodiment, the contents of the directory and the contents of the directory copy are read using the same address at regular time intervals, and the match output is compared. Therefore, when a failure of the match circuit is detected, Performs all the purging, the address to be invalidated does not remain in the directory, and the reliability of the computer can be improved. In addition, since the match output is compared at regular time intervals, there is no need for a physical quantity sufficient to directly compare the contents of the directory.
【0054】次に本発明に係るキャッシュディレクトリ
制御方式を実現するための実施例2について説明する。 <実施例2>図5に実施例2のディレクトリ11aの構
成の例を示す。ディレクトリ11aは、同一のアドレス
上に8つのWAY0〜WAY7が設けられていて、RE
QADR又はBI ADRのアドレスビット20〜25
を入力するようになっている。Next, a second embodiment for realizing the cache directory control system according to the present invention will be described. <Embodiment 2> FIG. 5 shows an example of the configuration of the directory 11a of the embodiment 2. The directory 11a is provided with eight WAY0-WAY7 on the same address.
Address bits 20-25 of QADR or BI ADR
Is to be entered.
【0055】また、各WAY0〜WAY7に対応して8
つのマッチ回路13−0〜13−7が設けられていて、
各マッチ回路13−0〜13−7にREQ ADR又は
BIADRのアドレスビット01〜19を入力するよう
になっている。各マッチ回路13−0〜13−7はWA
Y0 MATCH〜WAY7 MATCHを出力するよ
うになっている。In addition, 8 corresponding to each of WAY0 to WAY7.
Three match circuits 13-0 to 13-7 are provided,
Address bits 01 to 19 of REQ ADR or BIADR are input to the respective match circuits 13-0 to 13-7. Each match circuit 13-0 to 13-7 is a WA
Y0 MATCH to WAY7 MATCH are output.
【0056】なお、図示しないが、ディレクトリコピー
12aもディレクトリ11aと同一の構成となってい
て、BI ADRのみを入力する点が異なる。さらに、
これらのマッチ回路13ー0〜13ー7,14ー0〜1
4ー7に対応してマッチ回路17ー0〜17ー7を設
け、かつNAND回路を設けるようにすれば、WAY0
〜WAY7についての一致チェックを行なうことができ
る。Although not shown, the directory copy 12a has the same configuration as the directory 11a, except that only the BI ADR is input. further,
These match circuit 13 over 0 to 13 over 7, 14 over 0-1
If match circuits 17-0 to 17-7 are provided corresponding to 4-7 and a NAND circuit is provided, WAY 0
~ WAY7 can be checked for a match.
【0057】さらに、実施例1又は実施例2以外の複数
のWAYについても本発明は適用できる。また、アドレ
スとしてBI ADRの一部に限定されず、任意にある
いは昇順にあるいは降順に生成されたアドレスを一定時
間毎に2つのディレクトリに入力するような構成として
もよい。Further, the present invention can be applied to a plurality of ways other than the first and second embodiments. Further, the address is not limited to a part of the BI ADR, and an address generated arbitrarily or in ascending order or descending order may be input to two directories at regular time intervals.
【0058】また、実施例1及び実施例2では、複数の
中央処理装置1が1つの主記憶装置2を共用するような
場合を説明したが、例えば複数の中央処理装置1が複数
の主記憶装置2を共用するような場合であっても、本発
明は同様に実施できる。 In the first and second embodiments, a case has been described in which a plurality of central processing units 1 share one main storage device 2. For example, a plurality of central processing units 1 are provided with a plurality of main storage units. The present invention can be similarly implemented even when the device 2 is shared .
【0059】[0059]
【発明の効果】本発明によれば、一定時間間隔毎に同一
のアドレスを用いてディレクトリの内容とディレクトリ
コピーの内容を読み出して、マッチ出力の比較を行なう
ので、マッチ手段の故障を検出することができる。According to the present invention, the contents of the directory and the contents of the directory copy are read out using the same address at fixed time intervals, and the match output is compared, so that the failure of the matching means can be detected. Can be.
【0060】そして、マッチ回路の故障を検出した場合
には全てのパージを行なえば、無効化されるべきアドレ
スがディレクトリに残ったままとなることがなくなり、
計算機の信頼性を向上することができる。If all purging is performed when a failure of the match circuit is detected, the address to be invalidated does not remain in the directory.
The reliability of the computer can be improved.
【0061】また、一定時間間隔毎にマッチ出力の比較
を行なうから、ディレクトリの内容を直接に比較するほ
どの物量を必要としない。Further, since the comparison of the match output is performed at regular time intervals, it is not necessary to have the physical quantity required to directly compare the contents of the directory.
【図1】本発明の原理図である。FIG. 1 is a principle diagram of the present invention.
【図2】本発明による実施例1の構成ブロック図であ
る。FIG. 2 is a configuration block diagram of a first embodiment according to the present invention.
【図3】各CPUの構成ブロック図である。FIG. 3 is a configuration block diagram of each CPU.
【図4】ディレクトリ部の詳細な構成ブロック図であ
る。FIG. 4 is a detailed configuration block diagram of a directory unit.
【図5】本発明による実施例2のディレクトリの構成図
である。FIG. 5 is a configuration diagram of a directory according to a second embodiment of the present invention.
【図6】従来のキャシュディレクトリ制御方式の一例を
示す構成ブロック図である。FIG. 6 is a configuration block diagram showing an example of a conventional cache directory control method.
1・・中央処理装置 2・・主記憶装置 3・・記憶制御装置 5・・命令制御ユニット 6・・演算実行ユニット 7・・記憶制御ユニット 8・・キャッシュメモリ 9・・ディレクトリ部 10・・マッチ手段 11・・DIR 12・・DIRC 13,14,17・・マッチ回路 15・・SEL(セレクタ) 16・・CNTR(カウンタ) 18・・EOR回路 20・・データ部 1, central processing unit 2, main storage unit 3, storage control unit 5, instruction control unit 6, arithmetic execution unit 7, storage control unit 8, cache memory 9, directory unit 10, match Means 11 DIR 12 DIRC 13, 14, 17 Match circuit 15 SEL (selector) 16 CNTR (counter) 18 EOR circuit 20 Data section
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭63−197253(JP,A) 特開 平1−204164(JP,A) 特開 昭64−82238(JP,A) 特開 平4−191945(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 12/08 G06F 12/16 310 G06F 15/16 ──────────────────────────────────────────────────続 き Continued from the front page (56) References JP-A-63-197253 (JP, A) JP-A-1-204164 (JP, A) JP-A-64-82238 (JP, A) JP-A-4- 191945 (JP, A) (58) Field surveyed (Int. Cl. 7 , DB name) G06F 12/08 G06F 12/16 310 G06F 15/16
Claims (4)
モリを備える複数の中央処理装置が主記憶装置を共用す
るデータ処理装置において、 前記各キャッシュメモリは、 複数のウェイの各ウェイ毎にウェイアドレスを登録し前
記中央処理装置からメモリアクセスのためのリクエスト
アドレスを入力するディレクトリと、 複数のウェイの各ウェイ毎にウェイアドレスを登録しメ
モリ内容の書換え又は消去を生じた前記中央処理装置か
ら無効化アドレスを入力するディレクトリコピーと、 前記無効化アドレス又はリクエストアドレスのいずれか
を選択して前記ディレクトリに入力する選択手段と、 前記選択手段で前記無効化アドレスを選択したときにこ
の無効化アドレスに対応する前記ディレクトリのウェイ
アドレスと前記ディレクトリコピーのウェイアドレスと
の一致チェックを行なうマッチ手段と、 を有することを特徴とするデータ処理装置。 1. A set associative cash cache
Multiple central processing units with memory share main storage
In the data processing device, each cache memory registers a way address for each of a plurality of ways, and
Request for memory access from the central processing unit
Register a directory for inputting addresses and way addresses for each of a plurality of ways.
The central processing unit that has rewritten or erased the memory contents
Directory copy to input an invalidation address from the server, and either the invalidation address or the request address
And selecting when the invalidation address is selected by the selecting means.
Way of the directory corresponding to the invalidation address of
Address and the way address of the directory copy
And a matching means for performing a match check on the data processing device.
の計時部から出力される一定時間間隔毎の出力により前
記選択手段は選択動作することを特徴とする請求項1記
載のデータ処理装置。 2. A timer unit for measuring a predetermined time interval,
From the time interval output from the timer
2. The apparatus according to claim 1, wherein said selecting means performs a selecting operation.
On-board data processing device.
アドレスと前記選択手段により選択されたリクエストア
ドレス又は無効化アドレスとの一致チェックを行なう第
1のマッチ回路と、前記ウェイ毎にウェイアドレスと前
記無効化アドレスとの一致チェックを行なう第2のマッ
チ回路と、前記第1のマッチ回路の出力と前記第2のマ
ッチ回路の出力との一致チェックを行なう第3のマッチ
回路とから構成されることを特徴とする請求項1記載の
データ処理装置。 3. The method according to claim 1, wherein the matching means includes a way for each of the ways.
Address and the request address selected by the selection means.
Address or invalid address
1 match circuit, and a way address and
The second map for checking the match with the invalidation address
Switch and the output of the first match circuit and the second match.
Match to check the match with the output of the switch circuit
2. The circuit according to claim 1, wherein the circuit comprises a circuit.
Data processing device.
のそれぞれに備えられるセットアソシアティブ方式のキSet associative key provided for each
ャッシュメモリにおいて、In cache memory, 複数のウェイの各ウェイ毎にウェイアドレスを登録し前Before registering the way address for each way of multiple ways
記中央処理装置からメモリアクセスのためのリクエストRequest for memory access from the central processing unit
アドレスを入力するディレクトリと、A directory for entering the address, 複数のウェイの各ウェイ毎にウェイアドレスを登録しメRegister a way address for each of multiple ways and save
モリ内容の書換え又はRewriting of moly contents or 消去を生じた前記中央処理装置かThe central processing unit that caused the erasure
ら無効化アドレスを入力するディレクトリコピーと、A directory copy to enter the invalidation address from 前記無効化アドレス又はリクエストアドレスのいずれかEither the invalidation address or the request address
を選択して前記ディレクトリに入力する選択手段と、Selecting means for selecting and inputting to the directory; 前記選択手段で前記無効化アドレスを選択したときにこWhen the invalidating address is selected by the selecting means,
の無効化アドレスに対応する前記ディレクトリのウェイWay of the directory corresponding to the invalidation address of
アドレスと前記ディレクトリコピーのウェイアドレスとAddress and the way address of the directory copy
の一致チェックを行なうマッチ手段と、A matching means for checking the match of を有することを特徴とするキャッシュメモリ。A cache memory comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4183608A JP3072446B2 (en) | 1992-07-10 | 1992-07-10 | Data processing device and cache memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4183608A JP3072446B2 (en) | 1992-07-10 | 1992-07-10 | Data processing device and cache memory |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0628259A JPH0628259A (en) | 1994-02-04 |
JP3072446B2 true JP3072446B2 (en) | 2000-07-31 |
Family
ID=16138780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4183608A Expired - Fee Related JP3072446B2 (en) | 1992-07-10 | 1992-07-10 | Data processing device and cache memory |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3072446B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006527871A (en) * | 2003-06-18 | 2006-12-07 | ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング | Method and apparatus for recognizing errors for cache memory, and cache memory |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0988755A (en) * | 1995-09-27 | 1997-03-31 | Denso Corp | Fuel supply device of internal combustion engine |
-
1992
- 1992-07-10 JP JP4183608A patent/JP3072446B2/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006527871A (en) * | 2003-06-18 | 2006-12-07 | ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング | Method and apparatus for recognizing errors for cache memory, and cache memory |
JP4773343B2 (en) * | 2003-06-18 | 2011-09-14 | ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング | Method and apparatus for recognizing errors for cache memory, and cache memory |
Also Published As
Publication number | Publication date |
---|---|
JPH0628259A (en) | 1994-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR880000299B1 (en) | Cash apparatus | |
US5594886A (en) | Pseudo-LRU cache memory replacement method and apparatus utilizing nodes | |
US4323968A (en) | Multilevel storage system having unitary control of data transfers | |
JPH0668735B2 (en) | Cache memory | |
KR880014474A (en) | Cache memory device for address fault handling | |
JPH0581935B2 (en) | ||
JPS58500226A (en) | Apparatus and method for maintaining cache memory integrity in a shared memory environment | |
JP2818415B2 (en) | Buffer storage device | |
US7120836B1 (en) | System and method for increasing cache hit detection performance | |
JPH0524540B2 (en) | ||
JPH05334170A (en) | Control circuit for dual port memory | |
JP3072446B2 (en) | Data processing device and cache memory | |
US5557622A (en) | Method and apparatus for parity generation | |
US4920536A (en) | Error recovery scheme for destaging cache data in a multi-memory system | |
KR102658600B1 (en) | Apparatus and method for accessing metadata when debugging a device | |
KR100380674B1 (en) | Method and system for maintaining cache coherency for write-through store operations in a multiprocessor system | |
JPS60701B2 (en) | data processing equipment | |
JP3733604B2 (en) | Cache memory | |
JPH035851A (en) | Buffer storage device | |
JP3555847B2 (en) | Cache memory failure processing apparatus, cache memory failure processing method, and multiprocessor system | |
JPS59207098A (en) | Information processor | |
JPS6161143B2 (en) | ||
JPH0690683B2 (en) | Fault handling method for multiprocessor system | |
JPH06103477B2 (en) | Parallel cache memory | |
JP3061818B2 (en) | Access monitor device for microprocessor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20000425 |
|
LAPS | Cancellation because of no payment of annual fees |