JPH02128254A - Cache control system - Google Patents

Cache control system

Info

Publication number
JPH02128254A
JPH02128254A JP63283327A JP28332788A JPH02128254A JP H02128254 A JPH02128254 A JP H02128254A JP 63283327 A JP63283327 A JP 63283327A JP 28332788 A JP28332788 A JP 28332788A JP H02128254 A JPH02128254 A JP H02128254A
Authority
JP
Japan
Prior art keywords
cache
memory
directory
cache memory
address
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
JP63283327A
Other languages
Japanese (ja)
Inventor
Takumi Yamazaki
山崎 琢己
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.)
NEC Ibaraki Ltd
Original Assignee
NEC Ibaraki Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Ibaraki Ltd filed Critical NEC Ibaraki Ltd
Priority to JP63283327A priority Critical patent/JPH02128254A/en
Publication of JPH02128254A publication Critical patent/JPH02128254A/en
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

PURPOSE:To prevent the degraded operation of a cache memory by changing the value of an address register when an error is generated, and using a physically different address part as the cache memory. CONSTITUTION:A cache directory 1 consists of memory elements having several- folded capacity of desired words, a cache directory write circuit 2, a cache memory 3 consisting of the memory elements having the several-folded capacity of the desired words in the same way as the cache directory 1, and a cache memory write circuit 4 are included. When the error is detected, an error factor is discriminated, and by adding '1' to a D register 10 or an M register 11 corresponding to the cache directory 1 or the cache memory 3, in which the error is generated, the different address part is used when the next main memory accesses. Thus, the degraded operation of the cache memory can be prevented.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はキャッシュの制御方式に関し、特にキャッシュ
メモリあるいはキャッシュディレクトリからのデータあ
るいはアドレス読出し時にエラーが検出されたときのキ
ャッシュ制御方式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a cache control method, and particularly to a cache control method when an error is detected when reading data or an address from a cache memory or cache directory.

〔従来の技術〕[Conventional technology]

中央処理装置(以下CPUと呼ぶ)と主記憶装置(以下
メインメモリと呼ぶ)との動作スピードのギャップを埋
めるために、両装置間に高速・小容量のメモリで構成さ
れたキャッシュメモリ及びキャッシュディレクトリを設
け、メインメモリの一部をキャッシュメモリにも格納す
ることがCPUからのメモリデータ読出しを高速化する
キャッシュ記憶方式は周知のとおりである。
In order to bridge the gap in operating speed between the central processing unit (hereinafter referred to as the CPU) and the main storage unit (hereinafter referred to as the main memory), a cache memory and cache directory consisting of high-speed, small-capacity memory are installed between the two devices. A cache storage method is well known in which a part of the main memory is also stored in the cache memory to speed up reading of memory data from the CPU.

従来、この種のキャッシュ記憶方式はCPUからのメイ
ンメモリデータ続出しアドレスの下位数ビットがメイン
メモリのデータを格納するキャッシュメモリとアドレス
の上位ビット及び有効ビットを格納するキャッシュディ
レクトリとに与えられる。そしてキャッシュメモリに有
効なデータが格納されている(ヒツト〉が否(ミスヒツ
ト)かが調べられ、ヒツトならばキャッシュメモリより
読出したデータがCPUに送出されるが、ミスヒツトな
らばメインメモリより新たにデータを読出しCPUに送
出するとともに、キャッシュメモリ及びキャッシュディ
レクトリが更新される。メインメモリアクセスの性能を
上げるためにはキャッシュ記憶のブロック群(コンパー
トメント)を増やし、更にキャッシュメモリ、キャッシ
ュディレクトリの容量を増やしヒツト率を上げればよい
Conventionally, in this type of cache storage system, the lower several bits of the main memory data successive address from the CPU are given to a cache memory that stores main memory data and a cache directory that stores the upper bits and valid bits of the address. Then, it is checked whether valid data is stored in the cache memory (hit) or not (miss). If it is a hit, the data read from the cache memory is sent to the CPU, but if it is a miss, new data is stored from the main memory. As data is read and sent to the CPU, the cache memory and cache directory are updated.In order to improve main memory access performance, increase the number of blocks (compartments) in the cache memory, and further increase the capacity of the cache memory and cache directory. Just increase the hit rate.

しかしながらメインメモリの物理的なアドレス(物理ア
ドレス)とCPUから出力されるアドレル(論理アドレ
ス)との間で、セグメンテーションあるいはベージング
という方式を取入れ論理アドレスから物理アドレスへの
アドレス変換機構を採用している場合が多い。このため
、CPUの1サイクル中にアドレス変換機構により変換
された物理アドレスをキャッシュメモリ及びキャッシュ
ディレクトリに与え、ヒツトチエツクを行ないデータを
CPUに送出することは遅延時間的に非常に厳しい。よ
ってキャッシュメモリ及びキャッシュディレクトリに与
えられるアドレスはアドレス変換を必要としないビット
に限られる。その結果、キャッシュメモリ及びキャッシ
ュディレクトリの所望語数と大容量・高速化傾向にある
近年のメモリ素子との語数にギャップが生じ、最適なキ
ャッシュメモリ及びキャッシュディレクトリが構成でき
ず、物理的な容量の数分の−しかキャッシュメモリ、キ
ャッシュディレクトリとして使用されていない。
However, between the physical address of the main memory (physical address) and the address (logical address) output from the CPU, a method called segmentation or paging is adopted, and an address conversion mechanism from the logical address to the physical address is adopted. There are many cases. Therefore, it is very difficult to provide a physical address translated by an address translation mechanism to a cache memory and a cache directory, perform a hit check, and send data to the CPU during one cycle of the CPU in terms of delay time. Therefore, the addresses given to the cache memory and cache directory are limited to bits that do not require address translation. As a result, there is a gap between the desired number of words for cache memory and cache directories and the number of words used in recent memory devices, which tend to have larger capacities and higher speeds, making it impossible to configure optimal cache memories and cache directories. Only a fraction of the cache memory is used as a cache directory.

一方、キャッシュメモリあるいはキャッシュディレクト
リからの読出しデータあるいはアドレスの障害がCPU
の実効メインメモリアクセス性能に与える影響は大きく
、もし誤りが検出く誤り訂正方式を採用する場合は訂正
不可能な誤りの検出)されると、ヒツトしていても当該
コンパートメントまたはキャッシュ記憶装置全体を切離
して、デグレード運転するようにしている。
On the other hand, if a failure occurs in the read data or address from the cache memory or cache directory, the CPU
This has a large effect on the effective main memory access performance, and if an error correction method is used that detects errors (uncorrectable errors), even if a hit occurs, the compartment or the entire cache storage device will be destroyed. I am trying to disconnect it and run it in a degraded manner.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

上述した従来のキャッシュ制御方式は、キャッシュメモ
リ及びキャッシュディレクトリに与えるアドレスは変換
を必要としないビットに限られるため、物理的には所望
語数の数倍の容量をもっているにもかかわらず、キャッ
シュメモリあるいはキャッシュディレクトリからの読出
しデータに誤りが検出されるとデグレード運転されるた
めメモリアクセスの性能低下を招くという欠点がある。
In the conventional cache control method described above, the addresses given to the cache memory and cache directory are limited to bits that do not require translation, so even though the cache memory or cache directory has a physical capacity several times the desired number of words, If an error is detected in the data read from the cache directory, degraded operation is performed, which has the disadvantage of causing a decrease in memory access performance.

〔課題を解決するための手段〕[Means to solve the problem]

本発明のキャッシュ制御方式は、所望語数の数倍の容量
〈ワード数)をもつメモリ素子で構成されたキャッシュ
メモリ及びキャッシュディレクトリと、前記キャッシュ
メモリからの読出しデータの誤りを検出するデータエラ
ー検出回路と、前記キャッシュディレクトリからの読出
しアドレスの誤りを検出するディレクトリエラー検出回
路と、キャッシュメモリ及びキャッシュディレクトリ用
にそれぞれアドレスの一部となる中央処理装置から書換
え可能な数ビットのレジスタとを有している。
The cache control method of the present invention includes a cache memory and a cache directory configured of memory elements having a capacity (number of words) several times the desired number of words, and a data error detection circuit that detects errors in data read from the cache memory. , a directory error detection circuit for detecting an error in a read address from the cache directory, and a several-bit register that is rewritable by the central processing unit and becomes a part of the address for the cache memory and the cache directory, respectively. There is.

〔実施例〕〔Example〕

次に本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.

第1図は本発明の一実施例のブロック図である。FIG. 1 is a block diagram of one embodiment of the present invention.

第1図において、本発明の一実施例は所望語数の数倍の
容量(ワード数)をもつメモリ素子く例えばスタティッ
クRAM)で構成されたキャッシュディレクトリ1と、
キャッシュディレクトリ書込み回路2と、キャッシュデ
ィレクトリ1と同様に所望語数の数倍の容量(ワード数
)をもつメモリ素子で構成されたキャッシュメモリ3と
、キャッシュメモリ書込み回路4とを含むキャッシュ制
御方式で、キャッシュディレクトリ1及びキャッシュメ
モリ3は必要に応じてn個のコンパートメントをもつこ
とができる。アドレスレジスタ5はCPU(図示せず)
から出力されるアドレス(論理アドレス)をセットする
ものである。アドレス変換機構6は論理アドレスから物
理アドレスへ変換するための変換機構で、アドレスレジ
スタ5の上位ビットADHが入力される。アドレス選択
回路7はアドレス変換機構6によって変換されたアドレ
スADH’とアドレスレジスタ5の上位ビットADHを
必要に応じて選択するもので、ビット検出制御回路、8
はキャツシュヒツトあるいはミスヒツトを判定して各種
制御を行なう制御回路である。エラー検出回路9はキャ
ッシュディレクトリのエラーを検出する回路で、レジス
タ10はキャッシュディレクトリのアドレスの一部とな
る情報を格納するDレジスタで、レジスタ11はキャッ
シュメモリのアドレスの一部となる情報を格納するMレ
ジスタであり、Dレジスタ10.およびMレジスタ11
はともにCPUからライト/リードが可能である。デー
タエラー検出回路12はキャッシュメモリ3からの出力
データのエラーを検出する回路であり、データ選択回路
13はキャッシュメモリ3からのデータとメインメモリ
からのデータを選択する回路であり、キャツシュヒツト
時はキャッシュメモリ3からのデータを、ミスヒツト時
にはメインメモリから新たに読出したデータをCPUへ
DATとして出力する。
In FIG. 1, one embodiment of the present invention includes a cache directory 1 composed of a memory element (for example, a static RAM) having a capacity (number of words) several times as large as the desired number of words;
A cache control system including a cache directory write circuit 2, a cache memory 3 composed of a memory element having a capacity (number of words) several times the desired number of words like the cache directory 1, and a cache memory write circuit 4, The cache directory 1 and the cache memory 3 can have n compartments as required. Address register 5 is CPU (not shown)
This is used to set the address (logical address) output from. The address conversion mechanism 6 is a conversion mechanism for converting a logical address to a physical address, and the upper bit ADH of the address register 5 is input thereto. The address selection circuit 7 selects the address ADH' converted by the address conversion mechanism 6 and the upper bit ADH of the address register 5 as necessary.
is a control circuit that determines a hit or miss and performs various controls. The error detection circuit 9 is a circuit for detecting errors in the cache directory, the register 10 is a D register that stores information that becomes part of the address of the cache directory, and the register 11 stores information that becomes part of the address of the cache memory. M register 10. and M register 11
Both can be written/read by the CPU. The data error detection circuit 12 is a circuit that detects errors in output data from the cache memory 3, and the data selection circuit 13 is a circuit that selects data from the cache memory 3 and data from the main memory. When data from the memory 3 is mishit, data newly read from the main memory is output to the CPU as DAT.

第2図はCPUからのメインメモリ読出し時の動作フロ
ーチャートである。第2図において、本実施例はアドレ
スレジスタ5の下位ビットADLがキャッシュディレク
トリ1.キャッシュメモリ3のアドレスとして与えられ
、それぞれから出力されるデータがエラー検出回路9.
12でチエツクされる(ステップ■)、エラーがなけれ
ばヒツト検出制御回路8でヒツトあるいはミスヒツトが
判断され(ステップ■)、ヒツトならばCPUヘキャッ
シュメモリ3がらのデータをDATとして出力するとと
もに何らかの応答信号を出力する(ステップ■)、ミス
ヒツトならばミスヒツト時のアドレス(ADH変換後の
ADH’あるいは変換不用ならばADHと下位ビットA
DLとによるADD)によってメインメモリから新たに
データを読出す(ステップ■)、そして読出しなデータ
をキャッシュメモリに書込み、キャッシュディレクトリ
を更新する(ステップ■)と同時にCPUへ読出したデ
ータをDATとして出力し、応答信号を送出する(ステ
ップ■)。
FIG. 2 is an operational flowchart when reading from the main memory from the CPU. In FIG. 2, in this embodiment, the lower bit ADL of the address register 5 is the cache directory 1. The data given as the address of the cache memory 3 and output from each is sent to the error detection circuit 9.
If there is no error, the hit detection control circuit 8 determines whether there is a hit or a miss (step ■). If it is a hit, the data from the cache memory 3 is output to the CPU as DAT, and some response is sent. Output the signal (step ■), if there is a miss, the address at the time of the miss (ADH' after ADH conversion, or ADH and lower bit A if no conversion is required)
DL and ADD) reads new data from the main memory (step ■), writes the read data to the cache memory, updates the cache directory (step ■), and simultaneously outputs the read data to the CPU as DAT. and sends out a response signal (step ■).

ステップ■でエラーが検出されるとCPUヘエラー信号
ERRDあるいはERRMを送出しくステップ■)、ミ
スヒツト時と同様にアドレスADDでメインメモリから
データを読出しくステップ■)、cpuヘデータと応答
信号を出力する(ステップ■)。CPUはエラー信号を
受は取ると、処理の区切り(例えばソフトウェア命令間
)でエラー処理ルーチンヘトラップし、エラー要因(キ
ャッシュディレクトリあるいはキャッシュメモリ)を判
別してエラーを起したキャッシュディレクトリ又はキャ
ッシュメモリに対応するDレジスタ10あるいはMレジ
スタ9に“1”を加えることにより別のアドレス部を次
回のメインメモリアクセス時より使用することができる
When an error is detected in step (2), the error signal ERRD or ERRM is sent to the CPU (step (2)), the data is read from the main memory using address ADD as in the case of a miss (step (2)), and the data and response signal are output to the CPU (2). Step ■). When the CPU receives an error signal, it traps it in the error handling routine at a break in processing (for example, between software instructions), determines the cause of the error (cache directory or cache memory), and sends the error signal to the cache directory or cache memory that caused the error. By adding "1" to the corresponding D register 10 or M register 9, another address section can be used from the next main memory access.

〔発明の効果〕〔Effect of the invention〕

以上説明したように本発明は、物理的に所望語数の数倍
の容量(ワード数)をもったキャッシュディレクトリ、
キャッシュメモリのアドレスの一部として数ビットのレ
ジスタを設け、エラー発生時レジスタの値を変えること
によりキャッシュ記憶装置として物理的な別のアドレス
部を使用するため、メモリ素子を有効に利用できるとと
もにキャッシュ記憶装置のデグレード運転を回避できる
効果がある。
As explained above, the present invention provides a cache directory that physically has a capacity (number of words) several times the number of desired words;
A several-bit register is provided as part of the cache memory address, and by changing the value of the register when an error occurs, a separate physical address part is used as a cache storage device, which allows effective use of memory elements and improves cache memory. This has the effect of avoiding degraded operation of the storage device.

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

第1図は本発明の一実施例を示すブロック図、第2図は
本発明の一実施例における動作フローを示す図である。 1・・・キャッシュディレクトリ、2・・・キャッシュ
ディレクトリ書込み回路、3・・・キャッシュメモリ、
4・・・キャッシュメモリ書込み回路、5・・・アドレ
スレジスタ、6・・・アドレス変換機構、7・・・アド
レス選択回路、3・・・ヒツト検出制御回路、9・・・
ディレクトリエラー検出回路、10・・・レジスタ(D
レジスタ)、11・・・レジスタ(Mレジスタ)、12
・・・データエラー検出回路、13・・・データ選択回
路。
FIG. 1 is a block diagram showing an embodiment of the present invention, and FIG. 2 is a diagram showing an operation flow in the embodiment of the present invention. 1... Cache directory, 2... Cache directory writing circuit, 3... Cache memory,
4... Cache memory write circuit, 5... Address register, 6... Address conversion mechanism, 7... Address selection circuit, 3... Hit detection control circuit, 9...
Directory error detection circuit, 10... register (D
register), 11... register (M register), 12
...Data error detection circuit, 13...Data selection circuit.

Claims (1)

【特許請求の範囲】[Claims]  所望語数の数倍の容量(ワード数)をもつメモリ素子
で構成されたキャッシュメモリ及びキャッシュディレク
トリと、前記キャッシュメモリからの読出しデータの誤
りを検出するデータエラー検出回路と、前記キャッシュ
ディレクトリからの読出しデータの誤りを検出するディ
レクトリエラー検出回路と、中央処理装置から書込み可
能な数ビットのレジスタをキャッシュメモリとキャッシ
ュディレクトリ用に設け、2つの該レジスタをそれぞれ
キャッシュメモリ、キャッシュディレクトリのアドレス
の一部とすることにより、前記データエラー検出回路あ
るいはディレクトリエラー検出回路で誤りを検出しても
前記レジスタの値を変えることによりキャッシュメモリ
あるいはキャッシュディレクトリの別のアドレス部を使
用するようにしたことを特徴とするキャッシュ制御方式
A cache memory and a cache directory configured of memory elements having a capacity (number of words) several times the desired number of words; a data error detection circuit for detecting errors in data read from the cache memory; and a data error detection circuit for detecting errors in data read from the cache directory. A directory error detection circuit that detects data errors and a several-bit register that can be written to by the central processing unit are provided for the cache memory and cache directory, and the two registers are used as part of the address of the cache memory and cache directory, respectively. By doing so, even if an error is detected in the data error detection circuit or the directory error detection circuit, another address part of the cache memory or cache directory is used by changing the value of the register. Cache control method.
JP63283327A 1988-11-08 1988-11-08 Cache control system Pending JPH02128254A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63283327A JPH02128254A (en) 1988-11-08 1988-11-08 Cache control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63283327A JPH02128254A (en) 1988-11-08 1988-11-08 Cache control system

Publications (1)

Publication Number Publication Date
JPH02128254A true JPH02128254A (en) 1990-05-16

Family

ID=17664037

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63283327A Pending JPH02128254A (en) 1988-11-08 1988-11-08 Cache control system

Country Status (1)

Country Link
JP (1) JPH02128254A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05165722A (en) * 1991-12-17 1993-07-02 Fujitsu Ltd Cache memory fault processing system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58188399A (en) * 1982-04-27 1983-11-02 Nec Corp Data buffer memory device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58188399A (en) * 1982-04-27 1983-11-02 Nec Corp Data buffer memory device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05165722A (en) * 1991-12-17 1993-07-02 Fujitsu Ltd Cache memory fault processing system

Similar Documents

Publication Publication Date Title
JPS6324428A (en) Cache memory
KR920004969A (en) Hard disk emulator
JPH02128254A (en) Cache control system
JPS6129024B2 (en)
US4628450A (en) Data processing system having a local memory which does not use a directory device with distributed resident programs and a method therefor
JPH07234819A (en) Cache memory
JPS63269244A (en) Cache memory control system
JP3074897B2 (en) Memory circuit
JP2000285019A (en) Cache control circuit
JPS62145342A (en) Cache memory system
JPS5836434B2 (en) Batshua Memory Souch
JPH07271553A (en) Memory control method for fifo memory device
JPH04125747A (en) Cache memory controller
JP2868655B2 (en) Cache memory control method
JPH08328960A (en) Cache memory device
JPS62212751A (en) Data processor
JPH0727490B2 (en) Cache memory
JPH071490B2 (en) Data write-back method
JPS6235146B2 (en)
JPH02257234A (en) Cache control system
JPH0415495B2 (en)
JPH0877067A (en) Cache memory controller
JPH03211641A (en) Address designation method for memory device
JPH023143A (en) Semiconductor memory device
JPH0448263B2 (en)