JPH04277845A - Invalidating system for cache error - Google Patents

Invalidating system for cache error

Info

Publication number
JPH04277845A
JPH04277845A JP3039757A JP3975791A JPH04277845A JP H04277845 A JPH04277845 A JP H04277845A JP 3039757 A JP3039757 A JP 3039757A JP 3975791 A JP3975791 A JP 3975791A JP H04277845 A JPH04277845 A JP H04277845A
Authority
JP
Japan
Prior art keywords
cache
bus
cache memory
processor
signal
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.)
Withdrawn
Application number
JP3039757A
Other languages
Japanese (ja)
Inventor
Yasuhide Shibata
柴田 泰秀
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP3039757A priority Critical patent/JPH04277845A/en
Publication of JPH04277845A publication Critical patent/JPH04277845A/en
Withdrawn legal-status Critical Current

Links

Abstract

PURPOSE:To invalidate a cache memory without affecting the bus cycle of a processor. CONSTITUTION:At a data processor equipped with the cache memory between a processor 1 and a main storage device 6 which are connected by a bus, a bus arbiter 7 is provided to arbitrate the right of a bus master, and an invalid processing part 13 is provided to make the cache memory invalid by possessing the right of the bus master when cache error is generated while having a bus master function with higher priority order than the processor 1. When the cache error is generated, the right of the bus master is possessed, the access of the relevant processor is inhibited and afterwards, the cache memory is made invalid.

Description

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

【0001】0001

【産業上の利用分野】本発明はキャッシュシステムにお
けるキャッシュエラー時の無効化方式の改良に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an improved method for invalidating a cache error in a cache system.

【0002】近年、データ処理装置の処理速度を高速化
するため、キャッシュシステムが普及している。このキ
ャッシュシステムにエラーが発生した場合、キャッシュ
システムの信頼性が低下するので、キャッシュの切り離
しが行われているが、プロセッサのバスサイクルに影響
を及ぼさずに実現することが必要とされる。
In recent years, cache systems have become popular in order to increase the processing speed of data processing devices. When an error occurs in this cache system, the reliability of the cache system decreases, so the cache is separated, but it is necessary to do this without affecting the bus cycle of the processor.

【0003】0003

【従来の技術】図3はキャッシュシステム例を表す図で
ある。データ処理装置の高速化の手法の1つとして、図
3に示すように、プロセッサCPU1 と主記憶装置6
 との間に高速メモリ(キャッシュメモリ2 , スタ
ティックメモリSRAMで構成される)を配置し、主記
憶装置6 のデータの一部をキャッシュメモリ2 に格
納して高速にアクセスする手法が採用されている。
2. Description of the Related Art FIG. 3 is a diagram showing an example of a cache system. As one method for increasing the speed of a data processing device, as shown in FIG.
A method is adopted in which a high-speed memory (consisting of a cache memory 2 and a static memory SRAM) is placed between the main storage device 6 and a part of the data in the main storage device 6 is stored in the cache memory 2 and accessed at high speed. .

【0004】このキャッシュメモリ2 は、CPU1 
から出力されるアドレスのうちの例えば下位データをア
ドレスとするデータ領域を持ち、キャッシュ制御部15
から出力されるSRAM制御信号により、データのリー
ド/ライトが行われる。
[0004] This cache memory 2 is
The cache control unit 15 has a data area whose address is, for example, lower-order data among the addresses output from the
Data read/write is performed by an SRAM control signal output from the SRAM control signal.

【0005】TAGメモリ部9 は、CPU1 から出
力されるアドレスのうちの下位データをアドレスとして
上位データを格納するTAGメモリを備え、CPU1 
から出力されたアドレスの上位データと、下位データで
アクセスされてTAGメモリより出力されるデータとを
照合し、一致した場合はHIT 信号を出力する。
[0005] The TAG memory unit 9 includes a TAG memory that stores upper data using the lower data of the addresses output from the CPU 1 as an address.
The high-order data output from the address is compared with the data accessed by the low-order data and output from the TAG memory, and if they match, a HIT signal is output.

【0006】キャッシュ制御部15は、CPU1 がア
クセスしたとき、HIT 信号が出力された場合はキャ
ッシュメモリ2 よりデータをデータバスに出力し、H
IT 信号が出力されない場合はキャッシュメモリ2 
に該当データが存在しないとしてゲート4 を開き、主
記憶装置6 からのデータをCPU1 にバイパスさせ
るとともに、SRAM制御信号により、そのデータをキ
ャッシュメモリ2 に格納する。
When accessed by the CPU 1, the cache control unit 15 outputs data from the cache memory 2 to the data bus if a HIT signal is output, and outputs data from the cache memory 2 to the data bus.
If the IT signal is not output, cache memory 2
Assuming that there is no corresponding data, the gate 4 is opened, the data from the main memory 6 is bypassed to the CPU 1, and the data is stored in the cache memory 2 by the SRAM control signal.

【0007】このように、主記憶装置6 から1度読出
されたデータは、キャッシュメモリ2に格納され、再度
そのデータがアクセスされる場合は、キャッシュメモリ
2 から高速に読出されるように構成されている。なお
、通常はキャッシュメモリ2 にはブロック転送が行わ
れ、続くアドレスが出力された場合もキャッシュメモリ
2 にデータが存在するようになっている。
[0007] In this way, data once read from the main memory device 6 is stored in the cache memory 2, and when the data is accessed again, it is configured to be read from the cache memory 2 at high speed. ing. Note that block transfer is normally performed to the cache memory 2, so that even if a subsequent address is output, data still exists in the cache memory 2.

【0008】以上のようなキャッシュシステムでは、高
速化とともに高信頼性が要求されており、パリティチェ
ッカージェネレータPC/PG 3 によってパリティ
が生成されるとともに、読出されたデータのパリティチ
ェックが行われる。そして、HIT 時にパリティエラ
ーが検出された場合は、キャッシュパリティエラー信号
CPERR がキャッシュ制御部15に送出される。同
様に、TAGメモリ部9 に格納されるアドレスデータ
もパリティジェネレータPG 8によりパリティが生成
され、パリティチェッカーPC10 によりパリティエ
ラーが検出された場合は、タグパリティエラー信号TP
ERR がキャッシュ制御部15に送出される。
[0008] In the above-described cache system, high reliability is required as well as high speed, and the parity checker generator PC/PG 3 generates parity and performs a parity check on the read data. If a parity error is detected at the time of HIT, a cache parity error signal CPERR is sent to the cache control unit 15. Similarly, parity is generated for the address data stored in the TAG memory section 9 by the parity generator PG8, and if a parity error is detected by the parity checker PC10, a tag parity error signal TP is generated.
ERR is sent to the cache control unit 15.

【0009】これらのキャッシュエラーが発生した場合
、誤ったデータがCPU1 に読み込まれるので、エラ
ー処理が行われる。その一方で、これらのエラーが発生
した場合はキャッシュシステムの信頼性が低下するので
、キャッシュ制御部15によりキャッシュシステムの切
り離し(無効化)が行われる。
[0009] When these cache errors occur, erroneous data is read into the CPU 1, so error processing is performed. On the other hand, if these errors occur, the reliability of the cache system decreases, so the cache control unit 15 disconnects (invalidates) the cache system.

【0010】この切り離しは、キャッシュ制御部15内
に設けられている有効/無効レジスタ14にセットされ
ている有効情報”1” を”0” にする等によって行
われ、これにより内部信号であるキャッシュアクセスイ
ネーブル信号CAEがネゲートされる。これにより、次
のアクセスからキャッシュメモリ2 へのアクセスが禁
止され、ゲート4 が開いて主記憶装置6 から出力さ
れるデータがCPU1に読み込まれる。
[0010] This disconnection is performed by, for example, setting the valid information "1" set in the valid/invalid register 14 provided in the cache control unit 15 to "0". Access enable signal CAE is negated. As a result, the next access to the cache memory 2 is prohibited, the gate 4 is opened, and the data output from the main storage device 6 is read into the CPU 1.

【0011】[0011]

【発明が解決しようとする課題】キャッシュエラー(キ
ャッシュパリティエラーおよびタグパリティエラー)が
発生した場合、図4の課題説明図に示すように、次のア
クセスがある前に無効化処理を行うことが望まれる。こ
れは低速のシステムでは可能であるが、高速のシステム
では、次のアクセスまでに無効化処理を行うことができ
ず、キャッシュメモリのアクセスと無効化処理とが重な
って処理に矛盾を生じる可能性がある。このため、エラ
ー割込みによって無効化処理を行うことが考えられるが
、そのプログラムは複数ステップを要するので、その間
信頼性の低いキャッシュが使用されることになる。
[Problem to be Solved by the Invention] When a cache error (cache parity error and tag parity error) occurs, it is necessary to perform invalidation processing before the next access, as shown in the diagram explaining the problem in FIG. desired. This is possible on slow systems, but on fast systems, invalidation processing cannot be performed before the next access, and there is a possibility that cache memory access and invalidation processing overlap, resulting in processing inconsistencies. There is. For this reason, it is conceivable to perform invalidation processing using an error interrupt, but since the program requires multiple steps, an unreliable cache will be used during that time.

【0012】本発明は上記課題に鑑み、プロセッサのア
クセスに影響を及ぼさずにキャッシュシステムの無効化
を行うキャッシュエラー時の無効化方式を提供すること
を目的とする。
SUMMARY OF THE INVENTION In view of the above problems, it is an object of the present invention to provide an invalidation method in the event of a cache error, which invalidates a cache system without affecting processor access.

【0013】[0013]

【課題を解決するための手段】図1の一実施例の構成図
より、対応する機能部分を抽出して説明する。1 はプ
ロセッサCPU、6 は主記憶装置、2 はキャッシュ
メモリ、13は無効処理部で、CPU1 より優先順位
の高いバスマスタ機能を有し、キャッシュエラーが発生
したとき、バスマスタ権を獲得してキャッシュメモリ2
 の無効化処理を行う。
[Means for Solving the Problems] Corresponding functional parts will be extracted from the configuration diagram of an embodiment in FIG. 1 and explained. 1 is a processor CPU, 6 is a main storage device, 2 is a cache memory, and 13 is an invalidation processing unit, which has a bus master function with a higher priority than CPU 1. When a cache error occurs, it acquires bus master rights and uses the cache memory. 2
Performs invalidation processing.

【0014】[0014]

【作用】キャッシュエラーが発生したとき、無効処理部
13はバスマスタ権を要求し、バスマスタ権を獲得した
後、無効化処理を行う。無効化処理中はバスマスタ権を
獲得しているのでCPU1 はキャッシュメモリ2 を
アクセスできず、競合による処理の矛盾を生じることは
なく、また信頼性の低下したキャッシュメモリ2 を使
用することなく速やかに無効化処理を行うことができる
[Operation] When a cache error occurs, the invalidation processing section 13 requests bus mastership, and after acquiring the bus mastership, performs invalidation processing. During the invalidation process, CPU 1 cannot access cache memory 2 because it has acquired bus mastership rights, so there is no conflict in processing due to contention, and the CPU 1 can quickly access cache memory 2 without using cache memory 2 whose reliability has deteriorated. Can perform invalidation processing.

【0015】[0015]

【実施例】図1は一実施例の構成図、図2はタイムチャ
ート図である。図1において、7 はバスアービタで、
プロセッサCPU1 および無効処理部13からのバス
マスタ権要求を優先順位に基づき調停する。13は無効
処理部で、CPU1 より優先順位の高いバスマスタ機
能を有し、キャッシュエラーが発生したとき、バスマス
タ権を獲得して無効化処理を行う。その他全図を通じて
同一符号は同一対象物を表す。
Embodiment FIG. 1 is a block diagram of one embodiment, and FIG. 2 is a time chart. In Figure 1, 7 is a bus arbiter;
Bus mastership requests from the processor CPU1 and the invalidation processing unit 13 are arbitrated based on priorities. Reference numeral 13 denotes an invalidation processing unit, which has a bus master function with a higher priority than the CPU 1, and when a cache error occurs, acquires bus mastership and performs invalidation processing. The same reference numerals represent the same objects throughout all other figures.

【0016】以上構成のキャッシュシステムにおいて、
無効化処理動作例を図2に従い説明する。クロックCL
K で規定される期間T0ではCPU1 からのアクセ
スが開始され、アドレスADDRESS が出力される
。T1では、アドレスが確定したことを示すアドレスス
トローブ信号ASが出力される。またTAGメモリ部9
 から、該当するアドレスに対応するデータがキャッシ
ュメモリ2 に格納されていることを示すHIT 信号
が出力される。T2では、キャッシュメモリ2 からア
ドレスに対応するデータSRAMDATAがCPU1 
に出力され、データの応答信号STERM (図示バス
制御信号)がキャッシュ制御部15からCPU1 に出
力される。T3ではPC/PG 3またはPC 10 
によりパリティエラーが検出されてCPERR 信号ま
たはTPERR 信号がキャッシュ制御部15に出力さ
れる。また、CPU1 はSTERM 信号によりAS
信号をネゲートしてバスサイクルを終了する。
[0016] In the cache system configured as above,
An example of the invalidation process operation will be described with reference to FIG. Clock CL
During the period T0 defined by K, access from CPU1 is started and address ADDRESS is output. At T1, an address strobe signal AS indicating that the address has been determined is output. Also, TAG memory section 9
A HIT signal is output from the cache memory 2 indicating that data corresponding to the corresponding address is stored in the cache memory 2. At T2, data SRAMDATA corresponding to the address from cache memory 2 is transferred to CPU1.
A data response signal STERM (bus control signal as shown) is output from the cache control unit 15 to the CPU 1. PC/PG 3 or PC 10 for T3
A parity error is detected and a CPERR signal or TPERR signal is output to the cache control unit 15. Also, CPU1 uses AS by the STERM signal.
Negate the signal and end the bus cycle.

【0017】T4では、CPERR 信号またはTPE
RR 信号により、キャッシュ制御部15の無効処理部
13からバスアービタ7に対してバスマスタ権要求信号
BUSREQが出力され、バスマスタ権が要求される。 このとき、CPU1 がアドレスを切り換えて次のアク
セスを開始していれば、T5でAS信号がアサートされ
る。バスアービタ7はこのBUSREQ信号を認識する
がCPU1 のバスサイクルが開始されているため、バ
ス許可信号BUSGT を出力しない。
At T4, the CPERR signal or TPE
In response to the RR signal, the invalidation processing unit 13 of the cache control unit 15 outputs a bus mastership request signal BUSREQ to the bus arbiter 7, requesting bus mastership. At this time, if CPU1 has switched the address and started the next access, the AS signal is asserted at T5. The bus arbiter 7 recognizes this BUSREQ signal, but does not output the bus permission signal BUSGT because the bus cycle of the CPU 1 has started.

【0018】T7でAS信号がネゲートされ、CPU1
 のバスサイクルが完了すると、バスアービタ7 は、
T8でCPU1 のバスサイクルの終了を認識してキャ
ッシュ制御部15に対してBUSGT 信号を出力し、
バスを使用してもよいことを通知する。
[0018] At T7, the AS signal is negated, and the CPU1
When the bus cycle is completed, the bus arbiter 7
At T8, the CPU 1 recognizes the end of the bus cycle and outputs a BUSGT signal to the cache control unit 15.
Notify them that they may use the bus.

【0019】T9では、キャッシュ制御部15は、BU
SGT 信号により、バスを獲得したことを知り、BG
ACK 信号を出力しキャッシュ制御部15がバスを使
用中であることをバスアービタ7 に通知する。またB
USGT 信号によりBUSREQ信号をネゲートする
。またT11 ではBGACK 信号により、BUSG
T 信号がネゲートされる。T12 ではキャッシュ制
御部15がバスマスタ権を獲得しているためCPU1 
がバスアクセスをしていないことが保証されている。そ
して、有効/無効レジスタ14をクリアして、内部信号
であるキャッシュアクセスイネーブル信号CAE をネ
ゲートしキャッシュを無効化する。
At T9, the cache control unit 15
Knowing that the bus was acquired by the SGT signal, BG
It outputs an ACK signal to notify the bus arbiter 7 that the cache control unit 15 is using the bus. Also B
The BUSREQ signal is negated by the USGT signal. Also, at T11, the BUSG
T signal is negated. At T12, the cache control unit 15 has acquired the bus mastership, so the CPU 1
is guaranteed not to have bus access. Then, it clears the valid/invalid register 14 and negates the cache access enable signal CAE, which is an internal signal, to invalidate the cache.

【0020】T14 では、バスマスタ権が開放された
ことにより、CPU1 がアドレスを出力してアクセス
を開始する。ところが、キャッシュメモリ2 が無効化
されているので、キャッシュメモリ2 からデータは出
力されず、T17 で主記憶装置6 からCPU1 に
データが出力される。
At T14, since the bus mastership is released, the CPU 1 outputs an address and starts accessing. However, since the cache memory 2 is disabled, no data is output from the cache memory 2, and data is output from the main storage device 6 to the CPU 1 at T17.

【0021】以上のごとく、バスマスタ権をキャッシュ
制御部15に持たせ、バスマスタ権を獲得して無効化処
理を行うので、その間CPU1 からのアクセスはなく
、最悪1バスサイクルの後には無効化処理を行うことが
できる。これにより、信頼性の低下したキャッシュを使
用することなく、またCPU1 のアクセスと競合する
ことなく無効化することができ、無効化処理における信
頼性が向上する。
As described above, since the cache control unit 15 has the bus master right, acquires the bus master right, and performs the invalidation process, there is no access from the CPU 1 during that time, and in the worst case, the invalidation process is performed after one bus cycle. It can be carried out. As a result, invalidation can be performed without using a cache with reduced reliability and without conflicting with access by the CPU 1, improving reliability in invalidation processing.

【0022】[0022]

【発明の効果】以上説明したように、本発明では、キャ
ッシュの無効化をバスマスタ権を獲得して行うため、シ
ステムが高速になっても実現が容易であり、バスマスタ
権をCPUよりキャッシュ制御部の方に優先させること
により、最悪CPUのアクセスが1サイクル入るだけで
キャッシュを無効化することができ、エラー発生からキ
ャッシュ無効までの時間が短くでき、またエラー発生で
信頼性の悪いキャッシュを使用しないで無効化できるの
で、信頼性が向上する。
As explained above, in the present invention, the cache is invalidated by acquiring the bus master right, so it is easy to implement even when the system becomes high speed, and the bus master right is transferred from the CPU to the cache controller. By giving priority to the cache, the cache can be invalidated with just one cycle of CPU access in the worst case, the time from error occurrence to cache invalidation can be shortened, and unreliable cache can be used when an error occurs. Since it can be disabled without having to do so, reliability is improved.

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

【図1】  一実施例の構成図[Figure 1] Configuration diagram of one embodiment

【図2】  タイムチャート図[Figure 2] Time chart diagram

【図3】  キャッシュシステム例を表す図[Figure 3] Diagram showing an example of a cache system

【図4】 
 課題説明図
[Figure 4]
Assignment explanation diagram

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

1  プロセッサCPU 2  キャッシュメモリ 3  パリティチェッカージェネレータPC/PG4 
 ゲート 6  主記憶装置 7  バスアービタ 8  パリティジェネレータPG 9  TAGメモリ部 10  パリティチェッカー 11  主記憶制御部 12、15  キャッシュ制御部 13  無効処理部 14  有効/無効レジスタ
1 Processor CPU 2 Cache memory 3 Parity checker generator PC/PG4
Gate 6 Main memory 7 Bus arbiter 8 Parity generator PG 9 TAG memory section 10 Parity checker 11 Main memory control section 12, 15 Cache control section 13 Invalidation processing section 14 Valid/invalid register

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】  バスで接続されたプロセッサ(1) 
と主記憶装置(6)との間にキャッシュメモリ(2) 
を備えるデータ処理装置において、バスマスタ権を調停
するバスアービタ(7) と、該プロセッサより優先順
位の高いバスマスタ機能を有し、キャッシュエラーが発
生したとき、バスマスタ権を獲得して該キャッシュメモ
リ(2) の無効化処理を行う無効処理部(13)とを
設け、キャッシュエラーが発生したとき、バスマスタ権
を獲得して該プロセッサのアクセスを禁止した後、該キ
ャッシュメモリの無効化処理を行うことを特徴とするキ
ャッシュエラー時の無効化方式。
[Claim 1] Processor (1) connected by a bus
Cache memory (2) between and main storage (6)
A data processing device is equipped with a bus arbiter (7) that arbitrates bus mastership, and a bus master function that has a higher priority than the processor, and when a cache error occurs, acquires bus mastership and transfers the bus mastership to the cache memory (2). and an invalidation processing unit (13) that performs invalidation processing of the cache memory, and when a cache error occurs, acquires bus mastership and prohibits access by the processor, and then performs invalidation processing of the cache memory. Invalidation method in case of cache error.
JP3039757A 1991-03-06 1991-03-06 Invalidating system for cache error Withdrawn JPH04277845A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3039757A JPH04277845A (en) 1991-03-06 1991-03-06 Invalidating system for cache error

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3039757A JPH04277845A (en) 1991-03-06 1991-03-06 Invalidating system for cache error

Publications (1)

Publication Number Publication Date
JPH04277845A true JPH04277845A (en) 1992-10-02

Family

ID=12561826

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3039757A Withdrawn JPH04277845A (en) 1991-03-06 1991-03-06 Invalidating system for cache error

Country Status (1)

Country Link
JP (1) JPH04277845A (en)

Similar Documents

Publication Publication Date Title
US5247648A (en) Maintaining data coherency between a central cache, an I/O cache and a memory
TW591384B (en) Method and system for speculatively invalidating lines in a cache
US5091846A (en) Cache providing caching/non-caching write-through and copyback modes for virtual addresses and including bus snooping to maintain coherency
US5263142A (en) Input/output cache with mapped pages allocated for caching direct (virtual) memory access input/output data based on type of I/O devices
US5659709A (en) Write-back and snoop write-back buffer to prevent deadlock and to enhance performance in an in-order protocol multiprocessing bus
US5553268A (en) Memory operations priority scheme for microprocessors
US8458411B2 (en) Distributed shared memory multiprocessor and data processing method
US20030033489A1 (en) Semaphore management circuit
JPH0743682B2 (en) Central Processing Unit Workstation or server with CPU and system bus
US11726693B2 (en) Migrating pages of memory accessible by input-output devices
JPH07105090A (en) Asynchronous dma cache
US20030126341A1 (en) Method and apparatus for eliminating the software generated ready-signal to hardware devices that are not part of the memory coherency domain
JP3705453B2 (en) Data processing system
US11567666B2 (en) Handling the migration of pages of memory accessible by input-output devices
JPH04277845A (en) Invalidating system for cache error
JPH0353657B2 (en)
TWI782754B (en) Microprocessor and method implemented therein
JP2848437B2 (en) Multi-cluster exclusive control unit
JP2679440B2 (en) Information processing device
JPH04140860A (en) Method for controlling bus of multi-processor
JP2001014176A (en) Exclusive control value device and its method
JPS63247852A (en) Cache memory control method
JPH03147153A (en) Cache memory device
JP3199138B2 (en) Microprocessor
CA2036372C (en) An input/output cache for caching direct (virtual) memory access data

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19980514