JPS6273351A - Buffer storage substituting system - Google Patents
Buffer storage substituting systemInfo
- 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
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
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.
命令処理装置の高速化に伴ない、メモリ・アクセス時間
を短縮するため、バッファ・ストレージ(キャッシュ)
をもつ方式が知られている。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.
本発明の目的は、前述のような問題点を解決しバッファ
・ストレージのアクセスの高速化と、アドレス・プレイ
の信頼性を高めることにある。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.
この発明の特徴とするところは、アドレス・アレイの読
出しデータを訂正する前に比較すると共に訂正可能な誤
りがあった場合は、誤りのあるフロックを置換対象とし
て主記憶とバッファ・ストレージの置換を行ない、アド
レス・アレイの当該ブロックを書きかえることにある。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.
以下、本発明の一実施例を図を用いて説明する。第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.
本発明によれば、アドレス・プレイからの読出しデータ
と、メモリ・アクセス・アドレスの上位ビットとの比較
を高速化できると共に、アドレス・アレイに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.
第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)
ストレージと、及びバッファ・ストレージと主記憶をセ
ット・アソシアティブ方式でマッピングするアドレス・
アレイと、当該アドレス・アレイの同一セットのデータ
に対して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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0353660A (en) * | 1989-07-21 | 1991-03-07 | Ricoh Co Ltd | Picture reader |
-
1985
- 1985-09-27 JP JP60212304A patent/JPS6273351A/en active Pending
Patent Citations (1)
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 | |
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 | |
KR20200102528A (en) | Storage of important data in the memory system | |
JPS63257854A (en) | Lru memory fault detecting circuit | |
JPH05165719A (en) | Memory access processor | |
JPH01194046A (en) | Memory access system | |
JPH1011284A (en) | Controlled storage device | |
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 | |
JPH02143352A (en) | Memory error detection and correction system | |
JPH024016B2 (en) | ||
JPS583175A (en) | Virtual storage controller | |
JPS6325380B2 (en) | ||
JPH01222351A (en) | Check system for cache memory | |
JPS641817B2 (en) | ||
JPS58222495A (en) | Storage device | |
JPS6194279A (en) | Control system for memory system |