JPH04322340A - Cache memory - Google Patents

Cache memory

Info

Publication number
JPH04322340A
JPH04322340A JP3092171A JP9217191A JPH04322340A JP H04322340 A JPH04322340 A JP H04322340A JP 3092171 A JP3092171 A JP 3092171A JP 9217191 A JP9217191 A JP 9217191A JP H04322340 A JPH04322340 A JP H04322340A
Authority
JP
Japan
Prior art keywords
parity
virtual address
tag
physical address
entry
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
JP3092171A
Other languages
Japanese (ja)
Inventor
Kazutaka Nogami
一孝 野上
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP3092171A priority Critical patent/JPH04322340A/en
Publication of JPH04322340A publication Critical patent/JPH04322340A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To present a cache memory capable of increasing the speed of access from the external and parity error recovery by performing the parity check at a high speed. CONSTITUTION:The parity check is performed as the retrieval processing using the parity generated from a virtual address by a parity generating circuit 12, and the retrieval processing is performed by the physical address in the case of a mis-retrieval. In the case of success in retrieval, the virtual address tag of the pertinent entry is updated, and the physical address tag read out from the entry is used to perform the parity check of the physical address; and if parity error occurs, the entry where the parity error occurs is updated by the physical address obtained by conversion of the virtual address generated from the virtual address tag of the entry.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】[発明の目的][Object of the invention]

【0002】0002

【産業上の利用分野】この発明は、1エントリー内に仮
想アドレス・タグと物理アドレス・タグとを備え、パリ
ティ・チェックの方法及びパリティ・エラーの回復を改
善したキャッシュメモリに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a cache memory that includes a virtual address tag and a physical address tag in one entry, and has improved parity checking methods and parity error recovery.

【0003】0003

【従来の技術】従来、キャッシュメモリにおいて、アド
レスを格納しているタグのパリティチェックを行う場合
には2つの方法がある。第1の方法は、図4に示すよう
に、キャッシュメモリ1のアドレスタグ(TAG)から
読み出したタグからパリティ発生回路(PGEN)2に
よりパリティを発生し、発生したパリティとパリティ(
TP)のエントリーから読み出したパリティを論理ゲー
ト3で比較する方法である。これに対して、第2の方法
は、図5に示すように、アドレスからパリティ発生回路
4によりパリティを発生し読み出したパリティと論理ゲ
ート5で比較し、その結果をアドレスとアドレスタグ(
TAG)を入力とする比較器6の出力と有効フラグ(V
)とのヒット・チェックにアンドゲート7により掛け合
わせる方法である。
2. Description of the Related Art Conventionally, there are two methods for performing a parity check on a tag storing an address in a cache memory. The first method, as shown in FIG.
In this method, the logic gate 3 compares the parities read from the entries of the TP. On the other hand, in the second method, as shown in FIG.
The output of comparator 6 which inputs TAG) and the valid flag (V
) is a method of multiplying the hit check with AND gate 7.

【0004】タグからパリティを発生する第1の方法は
、ソフトエラー等によりキャッシュメモリの内容が変化
したことをチェックすることができる。しかし、タグの
読み出しとパリティの発生を順次実行するために、パリ
ティチェックに時間がかかる。このため、この方法は高
速なアクセススピードが要求されるキャッシュメモリに
は適していない。
[0004] The first method of generating parity from a tag can check whether the contents of the cache memory have changed due to a soft error or the like. However, since tag reading and parity generation are executed sequentially, parity checking takes time. Therefore, this method is not suitable for cache memories that require high access speed.

【0005】これに対して、アドレスからパリティを発
生する第2の方法は、タグの読み出しとパリティの発生
を並行して実行するため、高速なアクセスを実現できる
。このため、キャッシュメモリにはこの方法が多く用い
られている。しかし、この方法はパリティ・エラーをキ
ャッシュ・エラーとして取り扱うため、ソウトエラー等
によりタグの内容が変化してもそれを検出することがで
きない。
On the other hand, the second method of generating parity from an address executes reading of the tag and generation of parity in parallel, thereby realizing high-speed access. For this reason, this method is often used in cache memories. However, since this method treats parity errors as cache errors, even if the contents of the tag change due to a sort error or the like, it cannot be detected.

【0006】一方、キャッシュメモリの新しい方式とし
て、図6に示すようなダブルタグキャッシュが提案され
ている。この方式は1エントリー内に仮想アドレス・タ
グと物理アドレス・タグの2つのタグを持ち、CPUか
らの仮想アドレスでアクセスすることができ、システム
バスからは物理アドレスでアクセスすることができる。
On the other hand, a double tag cache as shown in FIG. 6 has been proposed as a new method of cache memory. This method has two tags, a virtual address tag and a physical address tag, in one entry, and can be accessed using a virtual address from the CPU and a physical address from the system bus.

【0007】このようなダブルタグキャッシュメモリに
おけるパリティ・チェックの方法は、読み出したタグか
らパリティを発生する方法を用いていた。これは、物理
アドレスの内容が変化した場合に、物理アドレスからパ
リティを発生する方法では、システムバスからのアクセ
スはパリティ・チェックすることができず、ヒットチェ
ックがキャッシュ・ミスになるためである。
[0007] A parity check method in such a double tag cache memory uses a method of generating parity from a read tag. This is because, with the method of generating parity from a physical address when the contents of the physical address change, accesses from the system bus cannot be parity checked, and a hit check will result in a cache miss.

【0008】このため、ダイレクトメモリアクセス時の
キャッシュ・エントリーの無効化や、マルチプロセッサ
・システムでのキャッシュメモリにおけるデータの一致
性を保持するためのキャッシュ・エントリーの無効化や
アップデートはキャッシュミスになり、誤ったデータが
キャッシュメモリの中に残ってしまう。このような状態
にあって、CPUから仮想アドレスによりアクセスされ
た場合には、誤ったデータがCPUに与えられ、誤動作
を引き起こすことになる。
[0008] Therefore, invalidating a cache entry during direct memory access, or invalidating or updating a cache entry to maintain data consistency in the cache memory in a multiprocessor system, results in a cache miss. , incorrect data remains in cache memory. In such a state, if the CPU accesses the virtual address, incorrect data will be given to the CPU, causing malfunction.

【0009】このように、ダブルタグキャッシュでは読
み出したタグからパリティを発生していたため、CPU
からのアクセスが遅くなっていた。また、パリティを回
復するためにはトラップをかけてパリティ・エラー回復
ルーチンを実行しなければならず、これにはかなりの時
間を要していた。
[0009] In this way, since the double tag cache generates parity from the read tag, the CPU
Access from was slow. Additionally, in order to recover parity, a trap must be placed and a parity error recovery routine executed, which takes a considerable amount of time.

【0010】0010

【発明が解決しようとする課題】以上説明したように、
ダブルタグ方式の従来のキャッシュメモリにあっては、
エントリーから読出したタグからパリティを発生させて
パリティ・チェックを行なっていたため、パリティ・チ
ェックに時間がかかり、外部からのアクセスに時間がか
かっていた。
[Problem to be solved by the invention] As explained above,
In conventional double tag cache memory,
Since parity was generated from the tag read from the entry and the parity check was performed, the parity check took time and external access took time.

【0011】また、パリティ・チェックにおいて、パリ
ティ・エラーが発生した場合には、パリティ・エラーを
回復するための特別なシーケンスを実行しなければなら
ず、このシーケンスの実行に多くの時間が費されていた
[0011] Furthermore, in the parity check, if a parity error occurs, a special sequence must be executed to recover from the parity error, and a lot of time is consumed in executing this sequence. was.

【0012】そこで、この発明は、上記に鑑みてなされ
たものであり、その目的とするところは、パリティ・チ
ェックを高速に行なうことによって、外部からのアクセ
スならびにパリティ・エラーの回復の高速化を達成し得
るキャッシュメモリを提供することにある。
The present invention has been made in view of the above, and its purpose is to speed up external access and recovery from parity errors by performing parity checks at high speed. The objective is to provide a cache memory that can be achieved.

【0013】[発明の構成][Configuration of the invention]

【0014】[0014]

【課題を解決するための手段】上記目的を達成するため
に、この発明は、仮想アドレスタグ、仮想アドレスタグ
のパリティ、物理アドレスタグ、物理アドレスタグのパ
リティ、有効フラグ、データからなるエントリーと、外
部から与えられる仮想アドレスのパリティを生成し、生
成したパリティと前記仮想アドレスにしたがって前記エ
ントリーから読出される仮想アドレスタグのパリティと
の比較結果と、前記仮想アドレスとこの仮想アドレスに
したがって前記エントリーから読出される仮想アドレス
タグとの比較結果と、前記仮想アドレスにしたがって前
記エントリーから読出される有効フラグとに基づいて前
記仮想アドレスの検索結果の出力とともにパリティチェ
ックを行なう第1のパリティチェック手段と、外部から
与えられる物理アドレスにしたがって前記エントリーか
ら読出される物理アドレスタグのパリティを生成し、生
成したパリティと前記物理アドレスにしたがって前記エ
ントリーから読出される物理アドレスタグのパリティと
の比較結果に基づいて前記物理アドレスのパリティチェ
ックを行なう第2のパリティチェック手段とから構成さ
れる。
[Means for Solving the Problems] In order to achieve the above object, the present invention provides an entry consisting of a virtual address tag, a parity of the virtual address tag, a physical address tag, a parity of the physical address tag, a valid flag, and data; Generate the parity of the virtual address given from the outside, compare the generated parity with the parity of the virtual address tag read from the entry according to the virtual address, and compare the parity of the virtual address and the parity of the virtual address tag read from the entry according to the virtual address. a first parity check means for outputting a search result for the virtual address and performing a parity check based on a comparison result with a read virtual address tag and a valid flag read from the entry according to the virtual address; Generate a parity of a physical address tag read from the entry according to a physical address given from the outside, and based on a comparison result between the generated parity and the parity of a physical address tag read from the entry according to the physical address. and second parity check means for performing a parity check on the physical address.

【0015】[0015]

【作用】上記構成において、この発明は、仮想アドレス
から生成されるパリティを用いた検索処理としてパリテ
ィチェックを行ない、検索ミスが発生した場合には物理
アドレスによる検索処理を行ない、一致検索された場合
にはそのエントリーの仮想アドレスタグを更新するよう
にしている。
[Operation] In the above configuration, the present invention performs a parity check as a search process using parity generated from a virtual address, and when a search error occurs, performs a search process using a physical address, and when a match is found. The virtual address tag for that entry is updated.

【0016】また、エントリーから読出された物理アド
レスタグを用いて物理アドレスのパリティチェックを行
ない、パリティエラーが発生した場合には、そのエント
リーの仮想アドレスタグから生成される仮想アドレスを
変換して得られる物理アドレスでパリティエラーが発生
したエントリーを更新する。
[0016] Furthermore, the physical address tag read from the entry is used to check the parity of the physical address, and if a parity error occurs, the virtual address generated from the virtual address tag of the entry is converted and the obtained Update the entry where a parity error occurred at the physical address that is specified.

【0017】[0017]

【実施例】以下、本発明の実施例を図面を用いて説明す
る。
Embodiments Hereinafter, embodiments of the present invention will be described with reference to the drawings.

【0018】図1は本発明のキャッシュメモリの構成を
示す図である。図1において、本発明のキャッシュメモ
リのエントリーは、仮想アドレスタグ(VTAG)、仮
想アドレスタグのパリティ(VP)、物理アドレスタグ
(PTAG)、物理アドレスタグのパリティ(PP)、
データ(DATA)、データのパリティ(DP)、及び
有効フラグ(V)から構成されている。
FIG. 1 is a diagram showing the configuration of a cache memory according to the present invention. In FIG. 1, the cache memory entries of the present invention include a virtual address tag (VTAG), virtual address tag parity (VP), physical address tag (PTAG), physical address tag parity (PP),
It consists of data (DATA), data parity (DP), and valid flag (V).

【0019】仮想アドレス側のパリティ・チェックは、
仮想アドレスをパリティ発生回路(PGEN)12に入
力して得られたパリティとエントリーから読み出された
仮想アドレスのパリティ(VP)を論理ゲート13によ
り比較し、その比較結果は比較器14による仮想アドレ
スタグの比較結果と有効フラッグ(V)とともにAND
ゲート15により論理積をとって仮想アドレスのヒット
信号を生成することで行なわれる。
Parity check on the virtual address side is as follows:
The logic gate 13 compares the parity obtained by inputting the virtual address to the parity generation circuit (PGEN) 12 and the parity (VP) of the virtual address read from the entry, and the comparison result is converted into a virtual address by the comparator 14. AND with tag comparison result and valid flag (V)
This is done by performing a logical AND operation using the gate 15 to generate a virtual address hit signal.

【0020】物理アドレス側のパリティ・チェックは、
読み出された物理アドレスタグ(PTAG)をパリティ
発生回路(PGEN)16に入力して得られたパリティ
と、物理アドレスタグのパリティ(PP)を比較した結
果をパリティ・エラー信号として出力することによって
行なっている。また、物理アドレスのヒットチェックは
、物理アドレスタグの比較器18による比較結果と有効
フラッグとパリティ・エラー信号から物理アドレスのヒ
ット信号を生成することにより行なっている。
[0020] Parity check on the physical address side is as follows:
By inputting the read physical address tag (PTAG) into the parity generation circuit (PGEN) 16 and comparing the parity obtained with the parity (PP) of the physical address tag and outputting the result as a parity error signal. I am doing it. The physical address hit check is performed by generating a physical address hit signal from the comparison result of the physical address tag by the comparator 18, a valid flag, and a parity error signal.

【0021】仮想アドレスのパリティ発生回路12は、
仮想アドレスから生成するので、セット・アソシアティ
ブ方式のキャッシュメモリの場合でもパリティ発生回路
は1つ用意すれば十分である。また、仮想アドレスのパ
リティ発生は、仮想アドレスタグを読み出すのと並行し
て行うことができるため、キャッシュアクセスのスピー
ドを低下させることなくパリティ・チェックを高速に行
なうことができる。
The virtual address parity generation circuit 12 is as follows:
Since the parity is generated from a virtual address, it is sufficient to provide one parity generation circuit even in the case of a set-associative type cache memory. Furthermore, since parity generation for virtual addresses can be performed in parallel with reading virtual address tags, parity checks can be performed at high speed without reducing cache access speed.

【0022】次に、CPUから図1に示したキャッシュ
メモリへのアクセス動作を、図2に示すフローチャート
を参照して説明する。
Next, the access operation from the CPU to the cache memory shown in FIG. 1 will be explained with reference to the flowchart shown in FIG.

【0023】まず、仮想アドレスタグにおいてヒットチ
ェックを行なう(ステップ100)。ヒットチェックの
結果(ステップ110)、ヒットした場合にはデータが
アクセスされる(ステップ120)。
First, a hit check is performed on the virtual address tag (step 100). If the hit check results in a hit (step 110), the data is accessed (step 120).

【0024】一方、ミスした場合には、ミスした仮想ア
ドレスに対応する物理アドレスにおいてヒットチェック
が行なわれる(ステップ130)。チェックの結果、ヒ
ットした場合には、異なる仮想アドレスだが同じ物理ア
ドレスのデータがキャッシュの中に登録されていること
になるので、ヒットしたエントリーの仮想アドレスタグ
を書き換える(ステップ140)。
On the other hand, if there is a miss, a hit check is performed at the physical address corresponding to the missed virtual address (step 130). If the check results in a hit, this means that data with the same physical address but a different virtual address is registered in the cache, so the virtual address tag of the hit entry is rewritten (step 140).

【0025】一方、物理アドレス・チェックでもミスし
た場合には、CPUが要求するデータをキャッシュが保
持していないことになるので、置き換えるエントリーを
選択して(ダイレクトマッピングの場合には選択できる
エントリーは一つしかない)、CPUが要求するデータ
を選択したエントリーにリフィルする(ステップ150
)。
On the other hand, if the physical address check also fails, it means that the cache does not hold the data requested by the CPU, so select an entry to replace (in the case of direct mapping, the available entries are (there is only one), the CPU refills the selected entry with the requested data (step 150
).

【0026】ここで、仮想アドレスタグがパリティ・エ
ラーになった場合を考える。本発明のキャッシュメモリ
では、仮想アドレスのパリティエラーはキャッシュ・ミ
スになる。したがって、次に、物理アドレスによるヒッ
トチェックを行うと、物理アドレスではヒットするので
、仮想アドレスタグ、及び仮想アドレスタグのパリティ
が書き込まれる。
Now, consider the case where a parity error occurs in the virtual address tag. In the cache memory of the present invention, a virtual address parity error results in a cache miss. Therefore, when a hit check is performed using the physical address next, since the physical address is hit, the virtual address tag and the parity of the virtual address tag are written.

【0027】次に、再度仮想アドレスによるヒットチェ
ックを行なうと、ヒットするので、データにアクセスす
る。したがって、仮想アドレスタグのパリティ・エラー
をキャッシュミスとして取り扱い、通常のキャッシュミ
スと同じように物理アドレスでヒットチェックを行うこ
とにより、パリティ・エラーを検出し、パリティ・エラ
ーを回復するという特別な動作を行わずに、パリティ・
エラーを回復することができる。
Next, when the hit check using the virtual address is performed again, there is a hit, so the data is accessed. Therefore, a special operation is performed to detect and recover from a parity error by treating a parity error in a virtual address tag as a cache miss and performing a hit check on the physical address just like a normal cache miss. parity without
Errors can be recovered.

【0028】次に、システムバスからのキャッシュメモ
リへのアクセス動作を、図3に示すフローチャートを参
照して説明する。
Next, the operation of accessing the cache memory from the system bus will be explained with reference to the flowchart shown in FIG.

【0029】システムバスからのアクセスでは、物理ア
ドレスでヒットチェックを行い(ステップ200)、パ
リティ・エラーがなくヒットした場合には(ステップ2
10,220)、システムバスからの要求に応じてデー
タをアクセスしたり、エントリーを無効化したりする(
ステップ230)。一方、パリティ・エラーがなくミス
した場合には、キャッシュメモリは応答しない(ステッ
プ240)。
When accessing from the system bus, a hit check is performed using the physical address (step 200), and if there is no parity error and there is a hit (step 2
10, 220), access data or invalidate entries in response to requests from the system bus (
Step 230). On the other hand, if there is no parity error and there is a miss, the cache memory does not respond (step 240).

【0030】これに対して、パリティ・エラーが発生し
た場合には、仮想アドレスタグをアクセスし仮想アドレ
スを生成する(ステップ250)。次に、その仮想アド
レスを再度物理アドレスに変換して、物理アドレスタグ
を書き込み(ステップ260)、パリティ・エラーが回
復される。
On the other hand, if a parity error occurs, the virtual address tag is accessed to generate a virtual address (step 250). The virtual address is then translated back to a physical address and a physical address tag is written (step 260) to recover from the parity error.

【0031】このように、ダブルタグキャッシュメモリ
の仮想アドレスのパリティ・チェックは、アドレスから
パリティを発生しパリティ・エラーをキャッシュエラー
として取扱い、仮想アドレスでキャッシュ・エラーが発
生した場合には、物理アドレスでヒットチェックを行い
、物理アドレスでヒットした場合には、ヒットしたエン
トリーの仮想アドレスタグを書き換える。
[0031] In this way, the parity check of the virtual address of the double tag cache memory generates parity from the address and treats the parity error as a cache error, and when a cache error occurs at the virtual address, the physical address Performs a hit check with , and if a hit is found in the physical address, the virtual address tag of the hit entry is rewritten.

【0032】また、物理アドレスのパリティ・チェック
は、読み出したタグからパリティを発生してパリティ・
エラーを検出し、パリティ・エラーが発生したエントリ
ーは、仮想アドレスタグをアクセスして仮想アドレスを
生成し、その仮想アドレスから物理アドレスを発生して
物理アドレスタグに書き込まれる。
[0032] In addition, the parity check of the physical address is performed by generating parity from the read tag.
For an entry in which an error has been detected and a parity error has occurred, the virtual address tag is accessed to generate a virtual address, and a physical address is generated from the virtual address and written to the physical address tag.

【0033】これにより、CPUからのアクセスでの仮
想アドレスタグのパリティ・エラーは通常のキャッシュ
ミスと同じ動作で、特別な動作を必要とせずパリティ・
エラーを回復できる。さらに、パリティ・チェックに伴
うキャッシュ・アクセスを高速に行なうことが可能とな
る。また、パリティ・エラーをキャッシュエラーと同じ
ように取り扱うことができるので、ハードウェアを簡単
にできる。
[0033] As a result, a parity error of a virtual address tag in an access from the CPU has the same operation as a normal cache miss, and no special operation is required.
Can recover from errors. Furthermore, cache access associated with parity checking can be performed at high speed. Additionally, since parity errors can be handled in the same way as cache errors, hardware can be simplified.

【0034】さらにまた、システムバスからのアクセス
での物理アドレスタグのパリティエラーも、仮想タグア
ドレスを読み出すことにより簡単にパリティ・エラーを
回復することができる。
Furthermore, even if a parity error occurs in the physical address tag during access from the system bus, the parity error can be easily recovered by reading the virtual tag address.

【0035】[0035]

【発明の効果】以上説明したように、この発明によれば
、仮想アドレスのパリティチェックを仮想アドレスから
生成されるパリティを用いた検索処理として取り扱い、
パリティエラーが発生して物理アドレスによる検索で一
致した場合には、一致したエントリーの仮想アドレスタ
グが更新され、物理アドレスのパリティチェックをエン
トリーから読出された物理アドレスタグを用いて行ない
、パリティエラーが発生した場合には、そのエントリー
の仮想アドレスタグから得られる仮想アドレスを変換し
た物理アドレスで更新するようにしたので、仮想アドレ
スのパリティチェックが高速に行なうことが可能となり
、外部からのアクセスならびにパリティエラーの回復を
高速に行なうことができるようになる。
As explained above, according to the present invention, the parity check of a virtual address is treated as a search process using parity generated from a virtual address,
If a parity error occurs and a match is found in the physical address search, the virtual address tag of the matching entry is updated, and the parity check of the physical address is performed using the physical address tag read from the entry, and the parity error is detected. If this occurs, the virtual address obtained from the virtual address tag of the entry is updated with the converted physical address, making it possible to quickly check the parity of the virtual address. Error recovery can be performed quickly.

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

【図1】この発明の一実施例に係るキャッシュメモリの
構成を示す図である。
FIG. 1 is a diagram showing the configuration of a cache memory according to an embodiment of the present invention.

【図2】図1に示すキャッシュメモリの動作を示すフロ
ーチャートである。
FIG. 2 is a flowchart showing the operation of the cache memory shown in FIG. 1;

【図3】図1に示すキャッシュメモリの動作を示すフロ
ーチャートである。
FIG. 3 is a flowchart showing the operation of the cache memory shown in FIG. 1;

【図4】従来のキャッシュメモリの一構成例を示す図で
ある。
FIG. 4 is a diagram showing a configuration example of a conventional cache memory.

【図5】従来のキャッシュメモリの一構成例を示す図で
ある。
FIG. 5 is a diagram showing an example of a configuration of a conventional cache memory.

【図6】ダブルタグ形の従来のキャッシュメモリの一構
成例を示す図である。
FIG. 6 is a diagram showing a configuration example of a conventional double tag type cache memory.

【符号の説明】[Explanation of symbols]

1,8,11  キャッシュメモリのエントリー2,4
,16  パリティ発生回路 3,5,6,7,13,14,15,17,18,19
  論理ゲート
1, 8, 11 Cache memory entries 2, 4
, 16 Parity generation circuit 3, 5, 6, 7, 13, 14, 15, 17, 18, 19
logic gate

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】  仮想アドレスタグ、仮想アドレスタグ
のパリティ、物理アドレスタグ、物理アドレスタグのパ
リティ、有効フラグ、データからなるエントリーと、外
部から与えられる仮想アドレスのパリティを生成し、生
成したパリティと前記仮想アドレスにしたがって前記エ
ントリーから読出される仮想アドレスタグのパリティと
の比較結果と、前記仮想アドレスとこの仮想アドレスに
したがって前記エントリーから読出される仮想アドレス
タグとの比較結果と、前記仮想アドレスにしたがって前
記エントリーから読出される有効フラグとに基づいて前
記仮想アドレスの検索結果の出力とともにパリティチェ
ックを行なう第1のパリティチェック手段と、外部から
与えられる物理アドレスにしたがって前記エントリーか
ら読出される物理アドレスタグのパリティを生成し、生
成したパリティと前記物理アドレスにしたがって前記エ
ントリーから読出される物理アドレスタグのパリティと
の比較結果に基づいて前記物理アドレスのパリティチェ
ックを行なう第2のパリティチェック手段とを有するこ
とを特徴とするキャッシュメモリ。
Claim 1: Generates an entry consisting of a virtual address tag, a parity of a virtual address tag, a physical address tag, a parity of a physical address tag, a valid flag, and data, and a parity of a virtual address given from the outside, and a comparison result of a parity of a virtual address tag read from the entry according to the virtual address, a comparison result of the virtual address and a virtual address tag read from the entry according to the virtual address, and a comparison result of the virtual address tag read from the entry according to the virtual address; Therefore, a first parity check means performs a parity check while outputting a search result of the virtual address based on a valid flag read from the entry, and a physical address read from the entry in accordance with a physical address given from the outside. a second parity check means that generates parity of a tag and performs a parity check of the physical address based on a comparison result between the generated parity and the parity of the physical address tag read from the entry according to the physical address; A cache memory comprising:
【請求項2】  外部から与えられる仮想アドレスによ
る検索において前記第1のパリティチェック手段により
不一致が検出されて、前記仮想アドレスに対応して変換
された物理アドレスにより行なわれる検索で一致が検出
された場合には、一致検出されたエントリーの仮想アド
レスタグ及び仮想アドレスタグのパリティが、前記仮想
アドレス及びこの仮想アドレスから生成されるパリティ
にそれぞれ更新されてなることを特徴とする請求項1記
載のキャッシュメモリ。
2. A mismatch is detected by the first parity check means in a search using an externally given virtual address, and a match is detected in a search performed using a physical address translated corresponding to the virtual address. 2. The cache according to claim 1, wherein the virtual address tag and the parity of the virtual address tag of the entry for which a match has been detected are respectively updated to the virtual address and the parity generated from the virtual address. memory.
【請求項3】  外部から与えられる物理アドレスによ
る検索において前記第2のパリティチェック手段により
パリティエラーが検出された場合には、パリティエラー
が発生したエントリーの物理アドレス及びこの物理アド
レスのパリティが、バリティエラーが発生したエントリ
ーから読出される仮想アドレスタグにより生成される仮
想アドレスを変換して得られる物理アドレス及びこの物
理アドレスから生成されるパリティにそれぞれ更新され
てなることを特徴とする請求項1又は2記載のキャッシ
ュメモリ。
3. If a parity error is detected by the second parity check means in a search using an externally given physical address, the physical address of the entry in which the parity error has occurred and the parity of this physical address are verified as valid. Claim 1, wherein the virtual address generated by the virtual address tag read from the entry in which the error has occurred is updated to a physical address obtained by converting the virtual address and a parity generated from this physical address. Or the cache memory described in 2.
JP3092171A 1991-04-23 1991-04-23 Cache memory Pending JPH04322340A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3092171A JPH04322340A (en) 1991-04-23 1991-04-23 Cache memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3092171A JPH04322340A (en) 1991-04-23 1991-04-23 Cache memory

Publications (1)

Publication Number Publication Date
JPH04322340A true JPH04322340A (en) 1992-11-12

Family

ID=14046989

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3092171A Pending JPH04322340A (en) 1991-04-23 1991-04-23 Cache memory

Country Status (1)

Country Link
JP (1) JPH04322340A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10963344B2 (en) 2019-05-28 2021-03-30 Kabushiki Kaisha Toshiba Information processing circuitry, information processing method, and non-transitory computer readable medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10963344B2 (en) 2019-05-28 2021-03-30 Kabushiki Kaisha Toshiba Information processing circuitry, information processing method, and non-transitory computer readable medium

Similar Documents

Publication Publication Date Title
US7100097B2 (en) Detection of bit errors in maskable content addressable memories
US5787494A (en) Software assisted hardware TLB miss handler
US4483003A (en) Fast parity checking in cache tag memory
EP0794494B1 (en) Self-checking and correcting of cache memory management
JP2009514115A (en) Fast CAM search using stored encoding key
US4731740A (en) Translation lookaside buffer control system in computer or virtual memory control scheme
US7739557B2 (en) Method, system and program product for autonomous error recovery for memory devices
US7472227B2 (en) Invalidating multiple address cache entries
US5530823A (en) Hit enhancement circuit for page-table-look-aside-buffer
US7120836B1 (en) System and method for increasing cache hit detection performance
US20190294554A1 (en) Apparatus and method for handling access requests
EP0321793A2 (en) Apparatus for forcing a reload from main memory upon cache memory error
US6226763B1 (en) Method and apparatus for performing cache accesses
JPH05334170A (en) Control circuit for dual port memory
US20040015753A1 (en) Detection of bit errors in content addressable memories
JPH04322340A (en) Cache memory
JPH02308349A (en) Buffer storage control system
JP3055908B2 (en) Cache memory controller
JPH05165719A (en) Memory access processor
JP2637853B2 (en) Cache memory device
JPH01226056A (en) Address converter
JPS6010368A (en) Address conversion buffer control system
JPH09223070A (en) Data conversion circuit
JPH0235543A (en) Page table entry invalidating device
CN116991312A (en) Hierarchical storage system reinforcement method and device based on dynamic local triple-modular redundancy