JPS6273351A - Buffer storage substituting system - Google Patents

Buffer storage substituting system

Info

Publication number
JPS6273351A
JPS6273351A JP60212304A JP21230485A JPS6273351A JP S6273351 A JPS6273351 A JP S6273351A JP 60212304 A JP60212304 A JP 60212304A JP 21230485 A JP21230485 A JP 21230485A JP S6273351 A JPS6273351 A JP S6273351A
Authority
JP
Japan
Prior art keywords
register
array
address
block
buffer storage
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
JP60212304A
Other languages
Japanese (ja)
Inventor
Koji Nakamura
幸二 中村
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP60212304A priority Critical patent/JPS6273351A/en
Publication of JPS6273351A publication Critical patent/JPS6273351A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To access a buffer storage at a high speed by using a block having a one-bit error in a set as the substitution object if the one-bit error is detected in this set of an address array. CONSTITUTION:Read signals of blocks 30, 31-33 of an address array 3 are compared with a high-order address stored in a register 2. If they do not coincide with each other, an error of read data is detected by a logic circuit 5 in parallel with this comparison, and '1' is sent to a register 102 for the presence of correctable errors but '0' is sent to the register 102 for the absence of the correctable errors. The block address indicating the block where correctable errors exist is stored in a register 101. If contents of the register 102 are '0', the output of a substitution block determining array 6 is selected by a selecting circuit 103 and is stored in a register 9; but if contents of the register 102 are '1', the output of the register 101 is selected by the circuit 103 and is stored in the register 9. Thus, the one-bit error is corrected by writing on the array 3 accompanied with the write to a main storage and the buffer storage if the one-bit error exists in the array 3, and the output of the array and the array of the register 2 are compared with each other at a high speed.

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明はバッファ・ストレージの置換方式に係’)、 
%にバッファ・ストレージのアドレス・アレイに訂正可
能な誤りを検出した場合に好適なバッファ・ストレージ
の置換方式に関する。
[Detailed Description of the Invention] [Field of Application of the Invention] The present invention relates to a buffer storage replacement method.
The present invention relates to a buffer storage replacement method suitable for when a correctable error is detected in an address array of a buffer storage.

〔発明の背景〕[Background of the invention]

命令処理装置の高速化に伴ない、メモリ・アクセス時間
を短縮するため、バッファ・ストレージ(キャッシュ)
をもつ方式が知られている。
As instruction processing devices become faster, buffer storage (cache) is used to reduce memory access time.
A method with the following is known.

主記憶とバッファ・ストレージのマツピング制御にはセ
ット・アソシアティブ方式が一般的であり、そのマツピ
ング情報を保持するため、アドレス・プレイが設けられ
ている。又、信頼性を向上させるたぬ、アドレス・アレ
イにECCを付加し、1ビット誤り訂正、複数ビット誤
り検出を可能としたものがある。このようなシステムは
、例えば1982年5月51日日経マグロウヒル社発行
の「汎用大型コンビーータ」の第381−699頁の“
3階層メそリ一方式や高密度化技術により性能向上を図
った大型コンピュータM−380/ 382 ”に示さ
れている。
A set associative method is generally used to control the mapping between main memory and buffer storage, and an address play is provided to maintain the mapping information. Additionally, in order to improve reliability, there is a system that adds ECC to the address array to enable single-bit error correction and multiple-bit error detection. Such a system is described, for example, in "General-Purpose Large Combeater" published by Nikkei McGraw-Hill on May 51, 1982, pages 381-699, "
This is shown in the M-380/382, a large computer with improved performance using a three-layer memory system and high-density technology.

アドレス・アレイにECCをもった場合の制御方式を第
3図を用いて説明する。
A control method when the address array has ECC will be explained with reference to FIG.

命令処理装置でメモリ・アクセス要求が発生すると、要
求データがバッファ・ストレージ22に存在するか否か
を判定するため、アドレス・アレイ6に当該データのメ
モリ・アドレスがアドレス線1を介し転送され、レジス
タ2に格納されろ。そのアドレスの一部をセット・アド
レスとしてアドレス・アレイ6がアクセスされ、当該セ
ット内のブロック30,31.32.33が読出される
。本例では、連想レベルを4として説明しているので、
4つのブロックな読出すが、連想レベルはいくつであっ
てもよい。又、アドレス・アレイの読出しと同時に、当
該セット対応にもっECC4oをECCアレイ4より読
出す。読出した4つのブロックとECCより、論理回路
5で誤り検出と訂正が行なった後、レジスタ2に格納さ
れた上位アドレスと各ブロックのアドレスとを比較器3
4〜37で比較し、いづれかのブロックと一致した場合
は論理和ゲート18でバッファ・ストレージ22のアク
セヌ許可信号を生成すると共に、比較結果をエンコーダ
19でエンコードし、セット・アドレスと統合して、バ
ッファ・ストレージ22のアクセス・アドレスを生成す
る。いづれのブロックとも一致しなかった場合、当該セ
クト内のいづれかのブロックと、命令処刑部首の要求す
るデータχ含む中記憶十のブロックとを置き換える。セ
ット内のいづれのブロックを置き換えるかは、置換ブロ
ック決定用子レイロの内容を読出して決めろ、アルゴリ
ズムとしてはFI FO(First−In、Firs
t−α+1 )や、LRU(Leasr Recent
ly Used )方式が一般的である。
When a memory access request occurs in the instruction processing device, the memory address of the data is transferred to the address array 6 via the address line 1 in order to determine whether the requested data exists in the buffer storage 22. Store it in register 2. Address array 6 is accessed using part of the address as a set address, and blocks 30, 31, 32, and 33 in the set are read. In this example, the association level is set to 4, so
There are four blocks of reading, but any number of associative levels may be used. Further, at the same time as reading the address array, ECC4o is read from the ECC array 4 corresponding to the set. After error detection and correction is performed in the logic circuit 5 based on the four read blocks and ECC, the comparator 3 compares the upper address stored in the register 2 with the address of each block.
4 to 37, and if it matches any block, the OR gate 18 generates an access permission signal for the buffer storage 22, and the encoder 19 encodes the comparison result and integrates it with the set address. Generate an access address for buffer storage 22. If it does not match any block, replace any block in the sector with the block in the middle memory containing the data χ requested by the command execution leader. Decide which block in the set to replace by reading the contents of the child Reiro for determining the replacement block.The algorithm is FIFO (First-In, First-In).
t-α+1) and LRU (Leasr Recent
ly Used ) method is common.

置換ブロック決定用アレイ6から読出したデータは、4
ブロツクの内いづれか1ブロツクヲサL示スt’lit
報(フロック・アドレス)にエンコーダ8ててエンコー
ドされレジスタ9に格納されろ。主記憶上のデータとバ
ッファ・ストレージの置き換えが完了すると、アドレス
・アレイのブロックにメモリ・アクセス・アドレスの上
位ビットを登録する。
The data read from the replacement block determination array 6 is 4.
Show any one of the blocks.
The information (flock address) is encoded by the encoder 8 and stored in the register 9. When the replacement of the data on the main memory and the buffer storage is completed, the upper bits of the memory access address are registered in the block of the address array.

上述のような処理方法では、次のような問題点があった
、 了ドレス・アレイの読出しデータをECCで。
The processing method described above has the following problems: The read data of the address array is processed using ECC.

誤り検出、訂正を行なった後アクセス・アドレスとの比
較を行なうので比較結果を得るのが遅くなる。さらに、
アドレス・アレイ内に登録されているデータに訂正可能
な1ビット誤りがあっても訂正しないため、訂正不可能
な複数ビット誤りに発展する可能性がある。又、訂正可
能な誤りを検出した場合、これを訂正しようとすると、
アドレス・プレイに再書込みを行なう制御論理が必要と
なり、制御が複雑化てろと共に、物量が増加してしまう
Since the comparison with the access address is performed after error detection and correction, it takes a long time to obtain the comparison result. moreover,
Even if there is a correctable one-bit error in the data registered in the address array, it is not corrected, which may lead to an uncorrectable multiple-bit error. Also, if you detect a correctable error and try to correct it,
A control logic for rewriting the address play is required, which complicates the control and increases the amount of material.

〔発明の目的〕[Purpose of the invention]

本発明の目的は、前述のような問題点を解決しバッファ
・ストレージのアクセスの高速化と、アドレス・プレイ
の信頼性を高めることにある。
SUMMARY OF THE INVENTION An object of the present invention is to solve the above-mentioned problems and to increase the speed of access to buffer storage and the reliability of address play.

〔発明の概要〕[Summary of the invention]

この発明の特徴とするところは、アドレス・アレイの読
出しデータを訂正する前に比較すると共に訂正可能な誤
りがあった場合は、誤りのあるフロックを置換対象とし
て主記憶とバッファ・ストレージの置換を行ない、アド
レス・アレイの当該ブロックを書きかえることにある。
The feature of this invention is that the read data of the address array is compared before being corrected, and if there is a correctable error, the erroneous block is replaced and the main memory and buffer storage are replaced. and rewrite the corresponding block in the address array.

〔発明の実施例〕[Embodiments of the invention]

以下、本発明の一実施例を図を用いて説明する。第1図
は本発明の一実施例を示したブロック図である。アドレ
ス・アレイ6から読出されたブロック60,31.32
.33はECCKよる訂正を行なわず、そのままレジス
タ2に格納されている上位アドレスと比較する。比較の
結果いづれかのブロックと一致していれば従来例と同じ
処理により、バッファ・ストレージをアクセスする。
An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing one embodiment of the present invention. Blocks 60, 31, 32 read from address array 6
.. 33 is compared with the upper address stored in register 2 as it is without performing correction by ECCK. If the comparison results in a match with any block, the buffer storage is accessed using the same processing as in the conventional example.

一致しなかった場合は、上記の比較と並列してアドレス
・アレイの読出しデータの誤り検出を行なう論理回路5
から、訂正可能誤りがあれば“1”、なければ°0”が
送出されレジスタ102に格納される。さらに訂正可能
な誤りが存在するブロックを示すブロック・アドレスが
レジ7p101に格納される。置換ブロック決定用アレ
イ6から読出したブロック・アドレスと、レジスタ10
1に格納されたブロック・アドレスのいづれを置換対象
ブロックとするかは、レジスタ102の値によって決定
し、レジスタ102が”0”ならば、置換ブロック決定
用アレイから読出したブロック・アドレヌ、レジスタ1
02が°1′ならば、レジスタ101に格納されている
ブロック・アドレスが選択回路103で選択し、レジス
タ9に格紗する。以降の主記憶とバッファ・ストレージ
のデータの置き換え及び、アドレス・アレイへの登録は
従来とかわらない。
If they do not match, a logic circuit 5 detects an error in the read data of the address array in parallel with the above comparison.
If there is a correctable error, "1" is sent, otherwise "0" is sent and stored in the register 102.Furthermore, the block address indicating the block in which the correctable error exists is stored in the register 7p101.Replacement The block address read from the block determination array 6 and the register 10
Which of the block addresses stored in 1 is to be the replacement target block is determined by the value of register 102. If register 102 is 0, the block address read from the replacement block determination array, register 1
If 02 is 01', the block address stored in register 101 is selected by selection circuit 103 and stored in register 9. The subsequent replacement of data in the main memory and buffer storage and registration in the address array remain the same as before.

第2図はデータの誤り検出回路5の内部を詳細に示した
ものである。この例ではアドレス・アレイの各ブロック
には2バイトのデータが格納され℃いるものとする。6
00〜605はアドレス・アレイのブロック30〜56
の絞出しデータ線、304はECCアレイからの読出し
データ線を表わす。305〜504により回路505で
シンドロームが生成され506を介してシンドロームの
デコーダ307に入力する。607ではシンドロームか
ら訂正可能誤りの存在するバイト位置をデコードしバイ
ト0に誤りがある場合は310に@1”。
FIG. 2 shows the inside of the data error detection circuit 5 in detail. In this example, it is assumed that 2 bytes of data are stored in each block of the address array. 6
00-605 are blocks 30-56 of the address array
The extracted data line 304 represents the read data line from the ECC array. A syndrome is generated in a circuit 505 from 305 to 504 and input to a syndrome decoder 307 via 506. At 607, the byte position where the correctable error exists is decoded from the syndrome, and if there is an error at byte 0, @1'' is sent to 310.

311〜517には@0′を送出する。バイト1に誤り
がある場合は511 K @1′、 510,512〜
317には@0”を送出する。バイト2〜7に誤りがあ
る場合も同様に510〜317に“0”又は”1”を送
出する。320〜526及び350〜532は論理和ゲ
ートであり、642には訂正可能誤りがあった時に@1
′ない時に加”が送出され、レジスタ102に転送され
ろ。又、540〜541には訂正可能誤りのあるブロッ
ク・アドレスが送出され、レジスタ101に転送される
@0' is sent to 311-517. If there is an error in byte 1, 511 K @1', 510,512~
Sends @0 to 317. If there is an error in bytes 2 to 7, it similarly sends 0 or 1 to 510 to 317. 320 to 526 and 350 to 532 are OR gates. , @1 when there is a correctable error in 642
When there is no ', add' is sent and transferred to the register 102. Also, a block address with a correctable error is sent to 540-541 and transferred to the register 101.

本発明では、アドレス・アレイからの読出しデータの誤
りを訂正せずにメモリ・アクセス・アドレスと比較する
ため、比較結果を誤って一致と判定する危険がある、こ
れは、特開55−137652号に開示されているアド
レス・アレイの各ブロック毎にパリティをもち、アクセ
ス・アドレスの上位ビットのパリティと比較し、アドレ
ス部、パリティ部いづれも一致した場合のみ、比較結果
一致とみなす技術を使うことにより、アドレス・アレイ
の1ビット誤りで誤って一致と判定することはなくなる
In the present invention, since the read data from the address array is compared with the memory access address without correcting the error, there is a risk that the comparison result will be mistakenly determined to be a match. Each block of the address array has a parity, and the parity is compared with the parity of the upper bits of the access address, and only when both the address part and the parity part match, the comparison result is considered to be a match. This eliminates the possibility of a erroneous determination of a match due to a 1-bit error in the address array.

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

本発明によれば、アドレス・プレイからの読出しデータ
と、メモリ・アクセス・アドレスの上位ビットとの比較
を高速化できると共に、アドレス・アレイに1ビット誤
りがあった場合。
According to the present invention, it is possible to speed up the comparison between the read data from the address play and the upper bits of the memory access address, and when there is a 1-bit error in the address array.

通常の主記憶とバッファ・ストレージの置き換え処理に
伴なう、アドレス・アレイへの書込みで、修復すること
ができ、信頼性を高めろことができる。
It can be repaired by writing to the address array, which is associated with normal main memory and buffer storage replacement processing, and reliability can be increased.

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

第1図は発明の一実施例を示すブロック、第2図は誤り
検出回路を示すブロック図、第3図は従来例を示すブロ
ック図である。 2・・・メモリ・アクセス・アドレス格納レジスタ、6
・・・アドレス・アレイ、 4・・・ECCアレイ、 5・・・誤り検出回路、 6・・・置換ブロック決定用アレイ、 22・・・バッファ・ストレージ、 ICI・・・誤りブロック・アドレス格納レジスタ、1
02・・・1ビット誤り検出信号格納レジスタ。
FIG. 1 is a block diagram showing an embodiment of the invention, FIG. 2 is a block diagram showing an error detection circuit, and FIG. 3 is a block diagram showing a conventional example. 2...Memory access address storage register, 6
...Address array, 4...ECC array, 5...Error detection circuit, 6...Replacement block determination array, 22...Buffer storage, ICI...Error block address storage register ,1
02...1-bit error detection signal storage register.

Claims (1)

【特許請求の範囲】[Claims] 主記憶と、主記憶の一部のデータの写しもつバッファ・
ストレージと、及びバッファ・ストレージと主記憶をセ
ット・アソシアティブ方式でマッピングするアドレス・
アレイと、当該アドレス・アレイの同一セットのデータ
に対して1ビット誤り訂正可能なECCをもつ記憶制御
装置において、アドレス・アレイのあるセットで1ビッ
ト誤りを検出した場合は、そのセット内の1ビット誤り
のあるブロックを置換対象にすることを特徴とするバッ
ファ・ストレージ置換方式。
Main memory and a buffer that copies some data in main memory.
storage, and addresses that map buffer storage and main memory in a set-associative manner.
In a storage control device that has an array and an ECC that can correct 1-bit errors for the same set of data in the address array, if a 1-bit error is detected in a certain set of the address array, one bit error in that set is A buffer storage replacement method characterized in that blocks with bit errors are targeted for replacement.
JP60212304A 1985-09-27 1985-09-27 Buffer storage substituting system Pending JPS6273351A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60212304A JPS6273351A (en) 1985-09-27 1985-09-27 Buffer storage substituting system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60212304A JPS6273351A (en) 1985-09-27 1985-09-27 Buffer storage substituting system

Publications (1)

Publication Number Publication Date
JPS6273351A true JPS6273351A (en) 1987-04-04

Family

ID=16620350

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60212304A Pending JPS6273351A (en) 1985-09-27 1985-09-27 Buffer storage substituting system

Country Status (1)

Country Link
JP (1) JPS6273351A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0353660A (en) * 1989-07-21 1991-03-07 Ricoh Co Ltd Picture reader

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0353660A (en) * 1989-07-21 1991-03-07 Ricoh Co Ltd Picture reader

Similar Documents

Publication Publication Date Title
US6584595B2 (en) Technique for correcting single-bit errors in caches with sub-block parity bits
JP5202130B2 (en) Cache memory, computer system, and memory access method
JP2007133986A (en) Semiconductor memory
TWI553651B (en) Dynamically selecting between memory error detection and memory error correction
US20060120166A1 (en) Data processing apparatus and method for flash memory
JPS6310460B2 (en)
KR100972807B1 (en) Error correction code generation method and memory management device
JPS6273351A (en) Buffer storage substituting system
US7607048B2 (en) Method and apparatus for protecting TLB's VPN from soft errors
JP3130796B2 (en) Control storage device
JPS63257854A (en) Lru memory fault detecting circuit
JPH05165719A (en) Memory access processor
JPH01194046A (en) Memory access system
JPH0756816A (en) Controller for memory
JPS6246358A (en) Error processing system
JP2930239B2 (en) Storage device failure detection method and storage control device
JPH01273152A (en) Cache memory control system
JPH0223442A (en) Memory control device
JPS58213349A (en) Information processor
JPH02143352A (en) Memory error detection and correction system
JPH024016B2 (en)
JPS583175A (en) Virtual storage controller
JPH01222351A (en) Check system for cache memory
JPS641817B2 (en)
JPS58222495A (en) Storage device