JPH04153751A - Buffer storage control system - Google Patents

Buffer storage control system

Info

Publication number
JPH04153751A
JPH04153751A JP2278605A JP27860590A JPH04153751A JP H04153751 A JPH04153751 A JP H04153751A JP 2278605 A JP2278605 A JP 2278605A JP 27860590 A JP27860590 A JP 27860590A JP H04153751 A JPH04153751 A JP H04153751A
Authority
JP
Japan
Prior art keywords
data
store
buffer storage
vertical parity
parity
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
JP2278605A
Other languages
Japanese (ja)
Inventor
Tetsuya Morioka
哲哉 森岡
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 JP2278605A priority Critical patent/JPH04153751A/en
Publication of JPH04153751A publication Critical patent/JPH04153751A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To correct the errors with high efficiency by providing a move-in processing means and a store processing means which generates a new vertical parity from the store data and finally writes the store data and the vertical parity into a buffer storage part. CONSTITUTION:A move-in processing means 15 writes a vertical parity produced from the move-in data into a buffer storage part 13 in a move-in processing state. A store processing means 17 reads the data on a store destination and the vertical parity of the block to which the data belong out of an arithmetic unit in a store processing state. Then the means 17 produces a new vertical parity from those store data and finally writes the store data and the vertical parity into the part 13. Then the vertical parity read out of the arithmetic unit in the store processing state is compared with the produced vertical parity for correction of errors. In such a way, the errors are corrected with high efficiency.

Description

【発明の詳細な説明】 〔目 次〕 概要 産業上の利用分野 従来の技術(第10図、第11図) 発明が解決しようとする課題 課題を解決するための手段(第1図) 作用 実施例(第2図〜第9図) 発明の効果 〔概 要] 主記憶装置と、そのデータの写しをブロック単位で保持
するストアイン方式のバッファ記憶部とを有するデータ
処理装置のバッファ記憶制御方式ストアイソ方式のバッ
ファ記憶部に水平・垂直パリティを適用したときの効率
的なハードウェアの動きを可能にすることを目的とし、 主記憶装置と、主記憶装置のデータの写しをブロック単
位で保持するストアイン方式のバッファ記憶部とを備え
たデータ処理装置において、ブロック単位のデータを細
分化した複数のセグメント単位に水平パリティと、ブロ
ック内の各セグメントに対する各ビットごとに垂直パリ
ティとを有し、ムーブイン処理時に、ムーブインデータ
から生成される垂直パリティをバッファ記憶部に書き込
むムーブイン処理手段と、演算装置からのストア処理時
に、最初にストア先のデータとそのデータの所属するブ
ロックの垂直パリティを読み出し、次にこれらのストア
データから新たな垂直パリティを生成し、最後にストア
データとこの垂直パリティをバッファ記憶部に書き込む
ストア処理手段とを備えて構成する。
[Detailed description of the invention] [Table of contents] Overview Industrial field of application Prior art (Figs. 10 and 11) Means for solving the problem to be solved by the invention (Fig. 1) Implementation of action Examples (Figs. 2 to 9) Effects of the invention [Summary] Buffer storage control method for a data processing device having a main storage device and a store-in type buffer storage section that holds a copy of the data in blocks. The purpose is to enable efficient hardware operation when horizontal/vertical parity is applied to the store iso type buffer storage, and the main memory and a copy of the data in the main memory are maintained in blocks. A data processing device equipped with a store-in type buffer storage unit, which has horizontal parity in units of a plurality of segments obtained by subdividing data in units of blocks, and vertical parity for each bit for each segment in the block, A move-in processing means that writes vertical parity generated from move-in data into a buffer storage unit during move-in processing, and a move-in processing means that first reads the data at the storage destination and the vertical parity of the block to which the data belongs during store processing from the arithmetic unit. , next generates a new vertical parity from these store data, and finally writes the store data and this vertical parity into a buffer storage section.

〔産業上の利用分野〕[Industrial application field]

一般に、記憶装置の容量とアクセス速度は相反する関係
にある。したがって、データ処理装置では、例えば低速
・大容量の記憶素子を用いた主記憶装置と、高速・小容
量の記憶素子を用いたバッファ記憶部とに記憶装置を階
層化する構成をとり、バッファ記憶部に主記憶装置上の
データを細分化したブロックの写しを持ち、記憶装置に
対する見かけ上のアクセスの高速化を図る構成がとられ
ている。
Generally, the capacity and access speed of a storage device are in a contradictory relationship. Therefore, in a data processing device, for example, a main storage device using a low-speed, large-capacity storage element and a buffer storage section using a high-speed, small-capacity storage element are used. A configuration is adopted in which a copy of the block obtained by subdividing the data on the main storage device is provided in the main storage device, thereby increasing the apparent speed of access to the storage device.

本発明は、主記憶装置上のデータの一部をバッファ記憶
部に有し、記憶装置に対する通常のアクセスはバッファ
記憶部に対して行うストアイン方式のバッファ記憶部に
おけるエラー処理方式に関する。
The present invention relates to an error handling method in a store-in buffer storage section, in which a part of data on a main memory is stored in a buffer storage section, and normal access to the storage device is made to the buffer storage section.

〔従来の技術〕[Conventional technology]

バッファ記憶部に対する制御には、大きく分けてストア
スル一方式とストアイン方式の二つがある。
There are two main types of control over the buffer storage unit: a store-through method and a store-in method.

ストアスル一方式は、フェッチアクセスにおいては、対
象データがバッファ記憶部になかった場合に、主記憶装
置からバッファ記憶部に対応するブロックのムーブイン
を行う、また、ストアアクセスにおいては、バッファ記
憶部にストア先のデータがあればバッファ記憶部と主記
憶装置の両者にストアを行い、ストア先のデータがなけ
れば主記憶装置のみにストアを行う。
In the store-through method, in a fetch access, if the target data is not in the buffer storage, the corresponding block is moved in from the main memory to the buffer storage, and in a store access, it is stored in the buffer storage. If there is previous data, it is stored in both the buffer storage unit and the main memory, and if there is no data to be stored, it is stored only in the main memory.

ストアイン方式は、バッファ記憶部に対象データがなか
った場合に、フェッチアクセスとストアアクセスではと
もに主記憶装置からのムーブインを行い、またストアア
クセスではバッファ記憶部へのみストアを行う。そして
、ムーブインの際の置き換え対象となるブロックが、過
去にストアがなされたブロックであった場合、あるいは
主記憶装置を共有する他のデータ処理装置がまだ主記憶
装置にストアが反映されていないブロックを必要とした
場合には、バッファ記憶部から主記憶装置へ対応するブ
ロックのムーブアウトを行う。
In the store-in method, when there is no target data in the buffer storage unit, the data is moved in from the main storage device in both fetch access and store access, and store is performed only in the buffer storage unit in store access. If the block to be replaced during move-in is a block that has been stored in the past, or a block whose store has not yet been reflected in the main memory of another data processing device that shares the main memory. If necessary, the corresponding block is moved out from the buffer storage section to the main storage device.

このように、ストアスル一方式はムーブアウト操作が不
要であるので、ストアイン方式に比べて制御が簡単であ
る。一方、データ処理装置のストアアクセスごとに主記
憶装置に対するストアが発生するので、特に主記憶装置
を共有するデータ処理装置の数が増えると、主記憶装置
に対するアクセス待ち時間の増大が避けられなかった。
In this way, the store-through type does not require a move-out operation, so it is easier to control than the store-in type. On the other hand, since a store to the main memory occurs every time a data processing device accesses a store, the waiting time for accessing the main memory inevitably increases, especially as the number of data processing devices that share the main memory increases. .

したがって、主記憶装置を共有するデータ処理装置の数
が多い場合には、ストアイン方式のバッファ記憶制御方
式が採用される傾向にある。
Therefore, when there are a large number of data processing devices that share a main storage device, a store-in buffer storage control method tends to be adopted.

ところで、バッファ記憶部においてエラーが発生した場
合には、最新のデータはこのバッファ記憶部にあるだけ
なので、エラ一部分のデータの訂正をバッファ記憶部側
で行う必要がある。
By the way, if an error occurs in the buffer storage section, the latest data is only in this buffer storage section, so it is necessary to correct the part of the data containing the error on the buffer storage section side.

一方、半導体メモリでは、アルファ線などの影響により
メモリ内に記憶した値(工、0)が変化するエラー(ソ
フトエラー)が発生することがある。この対策として、
誤り訂正符号(ECCコード)をデータに付加し、単一
ビット誤り訂正あるいは二重ビット誤り検出を行う方法
が知られている。
On the other hand, in a semiconductor memory, an error (soft error) may occur in which the value (0) stored in the memory changes due to the influence of alpha rays or the like. As a countermeasure for this,
A known method is to add an error correction code (ECC code) to data to perform single bit error correction or double bit error detection.

なお、この方法は、主記憶装置あるいはマイクロプログ
ラムを格納しておく処理装置に広く用いられている。二
〇ECCコードは、例えば8ビツトデータに対しては5
ビツト、64ビツトデータに対しては8ビツトが必要で
あり、メモリ部はデータ部分の他にこのECCコードを
蓄積する必要があった。また、ECCコードの生成ある
いはECCコードによる誤り訂正のためには多くのハー
ドウェアが不可欠であった。
Note that this method is widely used in main storage devices or processing devices that store microprograms. 20 ECC code is, for example, 5 for 8-bit data.
8 bits are required for 64 bit data, and the memory section needs to store this ECC code in addition to the data portion. Further, a large amount of hardware is indispensable for generating ECC codes or correcting errors using ECC codes.

したがって、バッファ記憶部に対してこのECCコード
を用いることは、メモリ容量およびハードウェアの制限
から困難な場合がある。
Therefore, it may be difficult to use this ECC code for buffer storage due to memory capacity and hardware limitations.

その場合には、水平・垂直パリティ方式が採用される。In that case, a horizontal/vertical parity method is adopted.

パリティは、データの各ビットの値を排他的論理和演算
して得られる値であるが、以下の説明ではデータ部の全
ビットとパリティビットの排他的論理和が論理「1」に
なる奇数パリティを用いる例を示す。
Parity is a value obtained by exclusive ORing the values of each bit of data, but in the following explanation, odd parity is used where the exclusive OR of all bits of the data part and the parity bit is logical "1". Here is an example using .

第10図に示すように、1つのブロック(32ビツト)
を複数のセグメント(8ビツト)に分割した場合には、
各セグメント単位にもつのが水平パリティであり、ブロ
ック内の全セグメントに対する各ビットごとにもつのが
垂直パリティである。
As shown in Figure 10, one block (32 bits)
When divided into multiple segments (8 bits),
There is one horizontal parity for each segment, and one vertical parity for each bit for all segments in the block.

ここで、セグメント1のビット2でソフトエラー(1→
0)が発生した場合の誤り訂正方法について説明する。
Here, a soft error (1 →
0) occurs, an error correction method will be explained.

各セグメントを順次アクセスしてセグメント1に対する
アクセスでパリティエラーが発生すると、誤り訂正の処
理ステップに入る。
When each segment is sequentially accessed and a parity error occurs when accessing segment 1, an error correction processing step is entered.

すなわち、各セグメントを順次読み出して各ビットの排
他的論理和をとり、垂直パリティとの比較を行う。ここ
では、ビット2に対してその不一致が検出されるので、
セグメントlのビット2にビット反転があったことがわ
かり、誤り訂正が可能となる。
That is, each segment is sequentially read out, each bit is exclusive-ORed, and compared with vertical parity. Here, the mismatch is detected for bit 2, so
It is found that there is a bit inversion in bit 2 of segment l, and error correction becomes possible.

従来、この水平・垂直パリティ方式において、水平パリ
ティエラーの検出に応じて、ファームウェアのルーチン
を起動させて誤り訂正を行っている。
Conventionally, in this horizontal/vertical parity method, a firmware routine is activated to perform error correction in response to detection of a horizontal parity error.

第11図は、従来のバッファ記憶部の構成例を示すブロ
ック図である。
FIG. 11 is a block diagram showing an example of the configuration of a conventional buffer storage section.

図において、バッファ記憶部は、1ブロツクが64バイ
トで、4ウエイ×128ラインの容量をもち、(萄に示
すタグ部71と、(ロ)に示すデータ部73から構成さ
れるセットアソシアティブ方式になっている。
In the figure, the buffer storage section has a capacity of 4 ways x 128 lines, with 1 block being 64 bytes, and uses a set associative method consisting of a tag section 71 shown at the top and a data section 73 shown at (b). It has become.

タグ部71は、そのブロックが有効であるか否かを示す
有効フラグVと、そのブロックに対するストアが行われ
たことを示す変更フラグCと、そのブロックの主記憶装
置上のアドレスの一部を示すアドレスビット「00」〜
「18」から構成される。
The tag unit 71 stores a valid flag V indicating whether the block is valid, a change flag C indicating that the block has been stored, and a part of the address of the block on the main storage device. Indicating address bits “00” ~
Consists of "18".

主記憶装置上のブロックの写しは、そのブロックのアド
レスビット「19」〜「25」で選択される128ライ
ン中の一つのライン上にある4ウエイのうち、所定のア
ルゴリズムに従って所定のウェイに置かれる。また、タ
グ部71とデータ部73の各ウェイは対応している。
A copy of a block on main memory is placed in a predetermined way according to a predetermined algorithm among the four ways on one of the 128 lines selected by address bits "19" to "25" of the block. It will be destroyed. Furthermore, each way of the tag section 71 and data section 73 corresponds to each other.

このデータ部73は、同時に32バイトしかアクセスで
きないが、バンクA〜バンクDの4つのバンクに別れて
いるので、各バンクをアクセスするアドレスのビット「
26」を任意に与えることにより、一つのブロック内の
任意の8バイト以内のデータを1回でアクセスすること
ができる。
This data section 73 can only be accessed at the same time by 32 bytes, but since it is divided into four banks, Bank A to Bank D, the bits of the address used to access each bank are
26'' arbitrarily, data within any 8 bytes within one block can be accessed at one time.

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

このような構成において、必要とするブロックがバッフ
ァ記憶部にない場合には、主記憶装置からそのブロック
をバッファ記憶部に読み出すムープインを行うが、この
ときバッファ記憶部上に空きのブロックがない場合には
、例えば公知のLRU(Least Recently
 Used)方式のアルゴリズムに従い、1つのブロッ
クをバッファ記憶部から主記憶装置に追い出すムーブア
ウトが行われる。
In such a configuration, if the required block is not in the buffer storage, a move-in is performed to read the block from the main memory to the buffer storage, but if there is no free block in the buffer storage at this time, For example, the known LRU (Least Recently
According to the algorithm of the ``Used'' method, a moveout is performed to remove one block from the buffer storage section to the main storage device.

このバッファ記憶部に水平・垂直パリティ方式を適用し
、水平パリティを1バイト単位に与えるとすると、垂直
パリティは1つのブロック内の全バイトに対する各ビッ
ト(ビットO〜7および水平パリティP)ごとにもつこ
とになる、この垂直パリティは、タグ部71におかれる
が、ムーブイン動作時とストアアクセス時に垂直パリテ
ィをタグ部71に書き込む手順、あるいは水平パリティ
エラーが検出されたときに誤り訂正を行う手順の効率化
が要求されている。
If we apply the horizontal/vertical parity method to this buffer storage section and give horizontal parity to each byte, vertical parity will be applied to each bit (bits O to 7 and horizontal parity P) for all bytes in one block. This vertical parity is stored in the tag section 71, but there is a procedure for writing the vertical parity to the tag section 71 during a move-in operation and store access, or a procedure for error correction when a horizontal parity error is detected. There is a need for greater efficiency.

特に、ストアアクセスでは、新しい垂直パリティがスト
ア先にある現データと、ストア先のブロックの現垂直パ
リティおよびストアデータに依存しており、その効率的
な扱い方も要求されている。
In particular, in store access, the new vertical parity depends on the current data at the store destination, the current vertical parity of the block at the store destination, and the store data, and an efficient way to handle this is also required.

本発明は、ストアイソ方式のバッファ記憶部に水平・垂
直パリティを適用したときの効率的なハードウェアの動
きを可能にするバッファ記憶制御方式を提供することを
目的とする。
SUMMARY OF THE INVENTION An object of the present invention is to provide a buffer storage control method that enables efficient hardware operation when horizontal and vertical parity is applied to a store iso type buffer storage section.

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

第1図は、本発明の原理ブロック図である。 FIG. 1 is a block diagram of the principle of the present invention.

図において、データ処理装置は、主記憶装置11と、主
記憶装置11のデータの写しをブロック単位で保持する
ストアイン方式のバッファ記憶部13とを備える。
In the figure, the data processing device includes a main storage device 11 and a store-in type buffer storage section 13 that holds a copy of data in the main storage device 11 in units of blocks.

ブロック単位のデータを細分化した複数のセグメント単
位に水平パリティと、ブロック内の各セグメントに対す
る各ビットごとに垂直パリティとを有する。
A horizontal parity is provided for each of a plurality of segments obtained by subdividing data in a block, and a vertical parity is provided for each bit for each segment within the block.

ムーブイン処理手段15は、ムーブイン処理時に、ムー
ブインデータから生成される垂直パリティをバッファ記
憶部13に書き込む。
The move-in processing means 15 writes vertical parity generated from move-in data into the buffer storage section 13 during move-in processing.

ストア処理手段17は、演算装置からのストア処理時に
、最初にストア先のデータとそのデータの所属するブロ
ックの垂直パリティを読み出し、次にこれらのストアデ
ータから新たな垂直パリティを生成し、最後にストアデ
ータとこの垂直パリティをバッファ記憶部13に書き込
む。
During store processing from the arithmetic unit, the store processing means 17 first reads the store destination data and the vertical parity of the block to which the data belongs, then generates a new vertical parity from these store data, and finally The store data and this vertical parity are written into the buffer storage section 13.

さらに、請求項2に記載の発明では、ムーブアウト処理
手段19が、バッファ記憶部13からのデータ読み出し
時に水平パリティエラーが検出されたときは、そのブロ
ック内の全データを読み出しながら垂直パリティを生成
し、この垂直パリティとバッファ記憶部13内に保持し
ていた真の垂直パリティを比較して誤りビットを検出し
、これを基にバッファ記憶部13内のデータの1ピント
誤りを訂正して主記憶装置11にムーブアウトする。
Furthermore, in the invention according to claim 2, when a horizontal parity error is detected when reading data from the buffer storage unit 13, the moveout processing means 19 generates vertical parity while reading all data in the block. Then, this vertical parity is compared with the true vertical parity held in the buffer storage unit 13 to detect error bits, and based on this, the 1-pin error in the data in the buffer storage unit 13 is corrected and the main Move out to the storage device 11.

〔作 用〕[For production]

本発明は、バイト単位の水平パリティの他に、ブロック
内の全バイトについて各ビットごとに垂直パリティを有
し、ムーブイン処理時に、ムーブインデータから生成さ
れる垂直パリティを書き込み、演算装置からのストア処
理時に、読み出した垂直パリティと、新たに生成した垂
直パリティとを比較して誤り訂正に供することにより、
特にストアアクセスにおいて、ストア先にある現データ
、現垂直パリティ、およびストアデータに応じて効率よ
く誤り訂正を行うことができる。
In addition to horizontal parity in units of bytes, the present invention has vertical parity for each bit for all bytes in a block, and during move-in processing, vertical parity generated from move-in data is written and stored from an arithmetic unit. During processing, by comparing the read vertical parity with the newly generated vertical parity and using it for error correction,
Particularly in store access, error correction can be efficiently performed according to the current data at the store destination, the current vertical parity, and the store data.

〔実施例〕〔Example〕

以下、図面に基づいて本発明の実施例について詳細に説
明する。
Hereinafter, embodiments of the present invention will be described in detail based on the drawings.

第2図は、本発明におけるバッファ記憶部周辺回路の実
施例構成を示すブロック図である。
FIG. 2 is a block diagram showing the configuration of an embodiment of the buffer storage peripheral circuit according to the present invention.

図において、主記憶装置からのムーブインデータは、ム
ーブインデータレジスタ(MIDR)21を介して、バ
ッファデータインレジスタ(BDIR)24および回路
A31に取り込まれる。また、演算装置からのストアデ
ータは、ストアデータレジスタ(STDR)22を介し
て、バッファデータインレジスタ24および回路B32
に取り込まれる。バッファデータインレジスタ24の出
力は、バッファ記憶データ部25に格納される。
In the figure, move-in data from the main memory is taken into a buffer data-in register (BDIR) 24 and a circuit A31 via a move-in data register (MIDR) 21. Further, store data from the arithmetic device is transferred to the buffer data in register 24 and the circuit B32 via the store data register (STDR) 22.
be taken in. The output of the buffer data in register 24 is stored in the buffer storage data section 25.

ストア制御部から入力されるバイトマークは、バイトマ
ークレジスタ(BMR)23を介して回路B32に入力
される。
The byte mark input from the store control section is input to the circuit B32 via the byte mark register (BMR) 23.

バッファ記憶データ部25の出力データは、セレクタ5
1を介してアライン回路26に入力され、さらにバッフ
ァデータコピーレジスタ(BDCR)27に格納され、
セレクタ52.53を介してムーブアウトデータレジス
タ(MODR)28およびフェッチデータレジスタ(F
CDR)33に格納される。フェッチデータレジスタ3
3の出力は回路B32および回路C35と、各対応のパ
リティチエツク回路36.37に入力される。バッファ
記憶タグ部からの垂直パリティデータは、垂直パリティ
レジスタ(VFR)34に格納され、回路B32および
回路D38に入力される。
The output data of the buffer storage data section 25 is sent to the selector 5.
1 to the align circuit 26, and further stored in the buffer data copy register (BDCR) 27,
The moveout data register (MODR) 28 and the fetch data register (F
CDR) 33. Fetch data register 3
The output of 3 is input to circuit B32, circuit C35, and corresponding parity check circuits 36 and 37. Vertical parity data from the buffer storage tag portion is stored in a vertical parity register (VFR) 34 and input to circuit B32 and circuit D38.

回路A31の出力は、レジスタ41を介してフィードバ
ックされる。また、回路A31および回路B32の出力
は、セレクタ54を介してバッファ記憶タグ部に送出さ
れる0回路C35の出力は、レジスタ42を介してフィ
ードバックされるとともに、回路D38に入力される。
The output of circuit A31 is fed back via register 41. Further, the outputs of the circuit A31 and the circuit B32 are sent to the buffer storage tag section via the selector 54, and the output of the 0 circuit C35 is fed back via the register 42 and input to the circuit D38.

また、各パリティチエツク回路36.37の出力は、セ
レクタ55を介してパリティエラー検出レジスタ(PE
HR)43に入力され、さらに回路D38に入力される
。回路03Bの出力は、ムーブアウトデータレジスタ2
8に取り込まれる。
Further, the output of each parity check circuit 36, 37 is sent to a parity error detection register (PE) via a selector 55.
HR) 43, and further input to circuit D38. The output of circuit 03B is the moveout data register 2.
Incorporated into 8.

ムーブアウトデータレジスタ28の出力は、セレクタ5
6を介してメモリリクエストデータレジスタ(MRQD
R)29に保持され、主記憶装置に渡される。
The output of the moveout data register 28 is sent to the selector 5.
6 through the memory request data register (MRQD
R) 29 and passed to main memory.

以下、第3図〜第8図のタイムチャートを参照して本実
施例回路の動作について説明する。
The operation of the circuit of this embodiment will be explained below with reference to the time charts of FIGS. 3 to 8.

ここで、第3図はフェッチアクセス、第4図はストアア
クセス、第5図はムーブイン、第6図はムーブアウト、
第7図は変更フラグが1のときのエラー時の処理、第8
図は変更フラグが00ときのエラー時の処理の各動作を
示す、なお、本発明の特徴とする動作は、ストアアクセ
ス(第4図)、ムーブイン(第5図)および各エラー時
の処理(第6図、第7図)に現れる。
Here, Fig. 3 shows fetch access, Fig. 4 shows store access, Fig. 5 shows move-in, Fig. 6 shows move-out,
Figure 7 shows the error processing when the change flag is 1;
The figure shows each operation of error processing when the change flag is 00.The operations that characterize the present invention are store access (Figure 4), move-in (Figure 5), and error processing ( 6 and 7).

まず、第3図を参照してフェッチアクセスにおける動作
について説明する。
First, the operation in fetch access will be explained with reference to FIG.

Tサイクルにおいて、Tサイクル論理アドレスレジスタ
のビット「19」〜r25」(OOOOIOIC)を用
い、バッファ記憶タグ部を読み出し、有効フラグ■がオ
ンで、アドレスビット「00」〜「18」が−致するウ
ェイを探す、ここでは、ウェイ2が一致したものとする
。続くBサイクルでは、バッファ記憶データ部25を読
み出す、それぞれのウェイでは、同時に32バイト読み
出せるが、フェッチデータは論理アドレスr00001
01c」から8バイト分であるので、1つのブロックの
中のバイトr2B。
In the T cycle, the buffer storage tag section is read using bits "19" to "r25" (OOOOIOIC) of the T cycle logical address register, and the valid flag ■ is on and address bits "00" to "18" are -. Search for a way. Here, it is assumed that way 2 matches. In the following B cycle, the buffer storage data section 25 is read. Each way can read 32 bytes at the same time, but the fetch data is at the logical address r00001.
Since it is 8 bytes from "01c", it is byte r2B in one block.

〜「35」を読み出す必要があり、32バイト境界をま
たぐことになる。
~ "35" needs to be read, which would cross a 32-byte boundary.

したがって、バッファ記憶データ部25を読み出すため
のアドレスビットが、論理アドレスのビット「19」〜
「25」と、バンクAはビット「26」として「1」、
バンクDはビット「26」として「0」を用いてアクセ
スすると、全ウェイが同時に読み出されるが、その内、
タグ部が一致したウェイ2が選択される。
Therefore, the address bits for reading the buffer storage data section 25 are bits "19" to "19" of the logical address.
"25", bank A is "1" as bit "26",
When bank D is accessed using bit “26” as “0”, all ways are read at the same time, but among them,
Way 2 whose tag part matches is selected.

続くRサイクルでは、読み出された8バイトのフェッチ
データが、アライン回路26で並び替えられてバッファ
データコピーレジスタ27にセットされる。また、その
8バイトデータを含む2つの8バイト境界内のデータ(
ここではバイト24〜31とバイト32〜39のデータ
)がフェッチデータレジスタ33にセットされる。
In the following R cycle, the read 8-byte fetch data is rearranged by the align circuit 26 and set in the buffer data copy register 27. Also, the data within the two 8-byte boundaries that include that 8-byte data (
Here, data of bytes 24 to 31 and bytes 32 to 39) are set in the fetch data register 33.

ここで、フェッチデータレジスタ33に対応するパリテ
ィチエツク回路36.37でエラーが検出された場合に
は、後述するエラー時の処理ステップに入る。
Here, if an error is detected in the parity check circuits 36 and 37 corresponding to the fetch data register 33, the process enters an error processing step which will be described later.

次に、第6図を参照してムーブアウトにおける動作につ
いて説明する。
Next, the operation in move-out will be explained with reference to FIG.

ムーブアウトは、ムーブインを行う際にムーブイン先の
ブロックに過去にストアがなされていた場合、あるいは
ストアがなされたブロックを主記憶装置を共有する他の
データ処理装置が必要とした場合に、そのストアを主記
憶装置に反映させるためΦものである。
A move-out is a move-in operation in which a store has been stored in the move-in destination block in the past, or if the stored block is needed by another data processing device that shares the main memory. Φ in order to reflect the information in the main memory.

ユニでは、すてにムーブアウトを行うべきブロックのア
ドレス(ムーブアウトアドレス)とその書き込み番号(
ウェイ番号)が決まっているものとする。ムーブアウト
のリクエストは4回流れ、Bサイクルで読み出された1
6バイト境界内の16バイトデータは、順次ムーブアウ
トデータレジスタ28の各バイト位置にセットされる。
In Uni, the address of the block to be moved out (moveout address) and its writing number (
It is assumed that the way number) has been determined. The moveout request flows 4 times, and the 1 read in the B cycle
Sixteen byte data within six byte boundaries are set in each byte position of moveout data register 28 in sequence.

また、ムーブアウトデータレジスタ28にセットされた
データは、8バイト単位で一旦メモリリクエストデータ
レジスタ29にセットされ、これが8バイトストアデー
タとして主記憶装置に送られる。また、ムーブアウトの
最後のリクエストのTサイクルでは、バッファ記憶タグ
部の該当するブロックの有効フラグがオフにセットされ
る。
Further, the data set in the move-out data register 28 is once set in the memory request data register 29 in units of 8 bytes, and this is sent to the main storage device as 8-byte store data. Further, in the T cycle of the last request of the move-out, the valid flag of the corresponding block in the buffer storage tag section is set to OFF.

以上の動作は従来技術と差異はないが、ストアアクセス
およびムーブインの動作には本発明の特徴とする動作が
加わる。
Although the above operations are no different from those of the prior art, operations that characterize the present invention are added to store access and move-in operations.

次に、第4図を参照してストアアクセスにおける動作に
ついて説明する。
Next, the operation in store access will be explained with reference to FIG.

なお、ストアアクセスは二つのステップに分かれる。Note that store access is divided into two steps.

最初のステップでは、ストア先のブロックがバッファ記
憶部にあるか否かをTサイクルでタグを検索し、あった
場合にはストアアドレスをセットし、さらに一致したウ
ェイ番号をセットする。
In the first step, the tag is searched in T cycles to see if the store destination block exists in the buffer storage section, and if it is found, the store address is set, and the matched way number is set.

次のステップのTサイクルでは、演算装置からのストア
データをストアデータレジスタ22にセットし、そのス
トアデータレジスタ22の16バイトデータ(8バイト
境界のデータを二つ)のうち、どのバイトに対するスト
アが行われたかを示すバイトマーク(16ビツト)をバ
イトマークレジスタ23にセットする。それと同時に、
バッファ記憶タグ部の変更フラグCに「1」を書き込む
In the next step, T cycle, the store data from the arithmetic unit is set in the store data register 22, and which byte of the 16-byte data (two pieces of data on 8-byte boundaries) in the store data register 22 is stored. A byte mark (16 bits) indicating whether the process has been performed is set in the byte mark register 23. At the same time,
Write "1" to the change flag C in the buffer storage tag section.

また、Bサイクルでは、バイトマークレジスタ23にセ
ットされたバイトマークを参照し、ストアデータレジス
タ22の内容をバッファデータインレジスタ24を介し
てバッファ記憶データ部25に書き込む。
Furthermore, in the B cycle, the contents of the store data register 22 are written into the buffer storage data section 25 via the buffer data in register 24 with reference to the byte mark set in the byte mark register 23 .

Tサイクルにおけるタグ部の書き込み時に垂直パリティ
の変更も行うが、この垂直パリティの生成方法について
以下に説明する。
The vertical parity is also changed when writing the tag part in the T cycle, and the method for generating this vertical parity will be described below.

ストアの最初のステップのTサイクルで読み出されたタ
グ部の垂直パリティのうち、タグ部が一致したウェイの
データを垂直パリティレジスタ34にセットする。また
、ストア先の位置にあるデータを次のサイクルでフェッ
チデータレジスタ33にセットする。このフェッチデー
タレジスタ33と上述したストアデータレジスタ22は
、ともに16バイトレジスタであり、対応する各バイト
は同一アドレスのものである0次に2番目のステップの
Tサイクルで、ストアデータレジスタ22とバイトマー
クレジスタ23がセットされるが、このとき、回路B3
2はフェッチデータレジスタ33、ストアデータレジス
タ22、バイトマークレジスタ23および垂直パリティ
レジスタ34の各データから、新たな垂直パリティを生
成してバッファ記憶タグ部に書き込む。
Among the vertical parities of the tag part read in the T cycle of the first step of the store, the data of the way whose tag part matches is set in the vertical parity register 34. Furthermore, the data at the store destination location is set in the fetch data register 33 in the next cycle. This fetch data register 33 and the store data register 22 described above are both 16-byte registers, and each corresponding byte has the same address. The mark register 23 is set, but at this time, the circuit B3
2 generates a new vertical parity from each data in the fetch data register 33, store data register 22, byte mark register 23, and vertical parity register 34, and writes it into the buffer storage tag section.

ここで、回路B32の働きは、バイトマークレジスタ2
3で示されるバイトマークが有効なパイ)(00〜15
)のデータについて、フェッチデータレジスタ33およ
びストアデータレジスタ22の値を比較し、異なるビッ
トの数を各ビット(ビット0〜7、パリティビットP)
ごとに集計し、偶数個異なるときは対応する垂直パリテ
ィはそのままで、また奇数偏異なるときは対応する垂直
パリティを反転させる。第9図はその様子を示す。
Here, the function of the circuit B32 is the byte mark register 2.
Pies with valid byte marks indicated by 3) (00 to 15
), compare the values of the fetch data register 33 and store data register 22, and calculate the number of different bits for each bit (bits 0 to 7, parity bit P).
If there is an even number difference, the corresponding vertical parity is left as is, and if it is an odd number difference, the corresponding vertical parity is inverted. FIG. 9 shows this situation.

すなわち、バイトマークレジスタ23の値が「1」をも
つバイト04.05.06.07.08.09.10.
11が対象で、各ビットごとにフェッチデータレジスタ
33およびストアデータレジスタ22の値(16進数表
現)を比較すると、−バイト06はビット0.1.2.
3.4.5.6.7が異なり、バイト07はビット4.
5.6、P(パリティビット)が異なる。したがって、
ビット0.1.2.3.7、Pは、奇数偏異なるので垂
直パリティを反転し、ビット4.5.6は偶数個異なる
ので垂直パリティはそのままとする。
That is, bytes 04.05.06.07.08.09.10. whose value in the byte mark register 23 is "1".
11, and comparing the values (hexadecimal representation) of the fetch data register 33 and store data register 22 for each bit, -byte 06 has bits 0.1.2.
3.4.5.6.7 are different, byte 07 is bit 4.
5.6, P (parity bit) is different. therefore,
Since bits 0.1.2.3.7 and P differ by an odd number, the vertical parity is inverted, and bits 4,5.6 differ by an even number, so the vertical parity is left unchanged.

次に、第5図を参照してムーブインにおける動作につい
て説明する。
Next, the operation in move-in will be explained with reference to FIG.

ムーブインを必要とするブロックの主記憶装置上のアド
レス(ムーブインアドレス)を伴って主記憶装置にムー
ブインリクエストが出されると、主記憶装置から8バイ
トずつ8回に分けられてムーブインデータが送られてく
る。送られたムーブインデータは、ムーブインデータレ
ジスタ21にセットされ、前半の32バイトが揃ったと
ころでバッファデータインレジスタ24を介して、ムー
ブイン書き込み番号で示されたバッファ記憶データブロ
ック25の対応するウェイに書き込まれる。
When a move-in request is issued to main memory with the address (move-in address) in main memory of a block that requires move-in, the move-in data is sent from main memory in eight bytes each. It will be sent to you. The sent move-in data is set in the move-in data register 21, and when the first half 32 bytes are completed, it is sent via the buffer data-in register 24 to the corresponding way of the buffer storage data block 25 indicated by the move-in write number. will be written to.

また、後半の32バイトがムーブインデータレジスタ2
1に揃ったところで、同様にバッファ記憶データブロッ
ク25の対応するウェイに書き込まれる。併せて2つの
ムーブインリクエストがパイプラインを流れるが、後半
のステップのTサイクルでバッファ記憶タグ部に有効フ
ラグ、アドレスおよび本発明の特徴とする垂直パリティ
が書き込まれる。
Also, the latter 32 bytes are move-in data register 2.
When the numbers are all 1, they are similarly written to the corresponding way of the buffer storage data block 25. Two move-in requests flow through the pipeline, and in the T cycle of the latter step, a valid flag, address, and vertical parity, which is a feature of the present invention, are written in the buffer storage tag section.

以下、垂直パリティの生成方法について説明する。ムー
ブインリクエストが主記憶装置に出されたときにレジス
タ41をリセットする。ムーブインデータの前半の32
バイトがムーブインデータレジスタ21にセットされた
ところで、これらの32バイト分の垂直パリティを回路
A31で生成し、レジスタ41にセットする。また、ム
ーブインデータの後半の32バイトがムーブインデータ
レジスタ21にセットされたところで、回路A31がこ
れらの32バイト分の垂直パリティを生成し、レジスタ
41にある先に求めた前半の32バイト分の垂直パリテ
ィとを併せて64バイト分の垂直パリティを生成する。
The method for generating vertical parity will be described below. The register 41 is reset when a move-in request is issued to the main memory. First half of move-in data 32
When the bytes are set in the move-in data register 21, vertical parity for these 32 bytes is generated in the circuit A31 and set in the register 41. Also, when the latter half 32 bytes of the move-in data are set in the move-in data register 21, the circuit A31 generates vertical parity for these 32 bytes, and stores the previously determined first half 32 bytes in the register 41. Vertical parity of 64 bytes is generated by combining the vertical parity of .

回路A31の出力は、バッファ記憶タグ部に渡され、ム
ーブインリクエストの後半のステップのTサイクルでタ
グ部に書き込まれる。
The output of circuit A31 is passed to the buffer storage tag section and written to the tag section in T cycles of the latter step of the move-in request.

次に、第7図を参照して変更フラグが「1」のときのエ
ラー時の処理における動作について説明する。
Next, the operation in error processing when the change flag is "1" will be described with reference to FIG.

なお、このエラー時の処理の基本動作は、バッファ記憶
データ部25でエラーが検出されたときは、1ビツトエ
ラーを訂正し、これを主記憶装置にムーブアウトし、バ
ッファ記憶部は有効フラグをオフにすることにより無効
化するものである。
The basic operation for processing this error is that when an error is detected in the buffer storage data section 25, the 1-bit error is corrected, the error is moved out to the main memory, and the buffer storage section turns off the valid flag. It is invalidated by setting it to .

すなわち、バッファ記憶データ部25を読み出すアクセ
ス(フェッチアクセス、ストアアクセス)では、16バ
イト単位のデータがフェッチデータレジスタ33に読み
出される。パリティチエツク回路36.37で、フェッ
チデータレジスタ33に対する水平パリティのエラーが
検出されると、エラー時のアドレス(エラーアドレス)
と、エラーしたウェイ番号を示すエラーアドレス書き込
み番号が保持され、またエラーしたバイト位置がパリテ
ィエラー検出レジスタ43に保持されてエラー処理のス
テップに入る。
That is, in an access (fetch access, store access) for reading the buffer storage data section 25, data in units of 16 bytes is read to the fetch data register 33. When the parity check circuits 36 and 37 detect a horizontal parity error for the fetch data register 33, the address at the time of the error (error address) is
Then, the error address write number indicating the way number in which the error occurred is held, and the byte position in which the error occurred is held in the parity error detection register 43, and the error processing step begins.

ここで、エラーしたブロックの変更フラグCが1(オン
)であった場合は、エラー処理時のパイプラインリクエ
ストは4フロー流れる。これらの流れは、基本的にムー
ブアうトと同じで、16バイトずつ読み出されたデータ
がムーブアウトデータレジスタ28にセットされ、最後
のステップで有効フラグを1にするためのタグ部の書き
込みが行われる。また、ムーブアウトデータレジスタ2
8上のデータは、エラー訂正が行われた後に、メモリリ
クエストデータレジスタ29を介して8バイトずつ主記
憶装置に送られる。
Here, if the change flag C of the block in error is 1 (on), four flows of pipeline requests flow during error processing. These steps are basically the same as for a moveout; the data read out in 16-byte units is set in the moveout data register 28, and in the final step, the tag section is written to set the valid flag to 1. It will be done. Also, moveout data register 2
After error correction, the data on 8 bytes are sent to the main memory via the memory request data register 29 in units of 8 bytes.

ここで、ムーブアウトデータレジスタ28上のデータの
エラー訂正方法について説明する。
Here, a method for correcting errors in data on the move-out data register 28 will be explained.

パリティチエツク回路36.37によりエラーが検出さ
れた時点でレジスタ42をリセットする。
When an error is detected by the parity check circuits 36 and 37, the register 42 is reset.

フェッチデータレジスタ33にエラー処理のステップで
読み出された16バイトデータがセットされると、回路
C35により16バイト単位の垂直パリティを生成して
レジスタ42に保持する。以後のステップでは、フェッ
チデータレジスタ33に読み出された16バイトデータ
と、レジスタ42の値を基にそれまで読み出された分の
垂直パリティを生成し、レジスタ42に保持する。4回
目のステップで16バイトデータがフェッチデータレジ
スタ33に読み出されたところで、回路C35は1ビツ
トエラーを含んだ64バイトデータの垂直パリティを出
力することになる0回路D38は、この値と垂直パリテ
ィレジスタ34の値の単純比較を行い、エラーのあった
ビット位置(ビットθ〜7、P)を検出する。また、回
路D38は、パリティエラー検出レジスタ43の値を入
力しているので、この回路出力はエラーのあったバイト
およびビットを指摘する。この回路D38の出力は、直
接ムーブアウトデータレジスタ28に送られて指摘され
たバイトのビットが反転され、この訂正データが主記憶
装置に送られる。
When the 16-byte data read in the error processing step is set in the fetch data register 33, the circuit C35 generates vertical parity in units of 16 bytes and holds it in the register 42. In subsequent steps, vertical parity for the amount read so far is generated based on the 16-byte data read to the fetch data register 33 and the value of the register 42, and is held in the register 42. When the 16-byte data is read into the fetch data register 33 in the fourth step, the circuit C35 outputs the vertical parity of 64-byte data including 1-bit error.0 The circuit D38 outputs this value and the vertical parity. A simple comparison of the values in the register 34 is performed to detect the bit position where the error occurred (bits θ to 7, P). Also, since circuit D38 inputs the value of parity error detection register 43, the output of this circuit indicates the byte and bit in error. The output of this circuit D38 is sent directly to the move-out data register 28, the bits of the indicated byte are inverted, and this corrected data is sent to main memory.

なお、ここでは、エラー訂正後のデータをムーブアウト
しているが、回路D3Bの出力によりムーブアウトデー
タレジスタ28がエラー訂正された後に、ここからバッ
ファデータインレジスタ24に向けたパスを新たに設け
、また新たなパイプラインのリクエストを流すことによ
り、容易にバッファ記憶部内のデータの書き換えを行う
ことができる。
Although the data after error correction is moved out here, after the error is corrected in the move-out data register 28 by the output of the circuit D3B, a new path is created from there to the buffer data-in register 24. Also, by sending a new pipeline request, data in the buffer storage unit can be easily rewritten.

次に、第8図を参照して変更フラグが「0」のときのエ
ラー時の処理における動作について説明する。
Next, with reference to FIG. 8, the operation in error processing when the change flag is "0" will be described.

フェッチデータレジスタ33に対する水平パリティのエ
ラー検出後に行う動作、すなわちエラーアドレスおよび
エラーアドレス書き込み番号(ウェイ番号)のセットは
、変更フラグが「1」のときと同じである。しかし、変
更フラグが「Ojであった場合は、ただ1つのエラー処
理のバイブラインリクエストを流す、このリクエストの
Tサイクルで該当するブロックの有効フラグを1にする
ように、バッファ記憶タグ部に対する書き込みを行う。
The operation performed after detecting a horizontal parity error in the fetch data register 33, that is, setting the error address and error address write number (way number), is the same as when the change flag is "1". However, if the change flag is "Oj", a write is made to the buffer storage tag part so that only one error handling vibe line request is sent, and the valid flag of the corresponding block is set to 1 in the T cycle of this request. I do.

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

上述したように、本発明によれば、主記憶装置と、その
データの写しをブロック単位で保持するストアイン方式
のバッファ記憶部との間で、セグメント単位に水平パリ
ティを持ち、全セグメントに対する各ビットごとに垂直
パリティを持つことにより、ストア処理時に、読み出し
た垂直パリティと、新たに生成した垂直パリティとを比
較して効率よ(誤り訂正を行うことができる。
As described above, according to the present invention, horizontal parity is provided for each segment between the main storage device and the store-in type buffer storage section that holds copies of the data in blocks. By having a vertical parity for each bit, it is possible to perform efficient (error correction) by comparing the read vertical parity with the newly generated vertical parity during store processing.

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

第11!lは本発明の原理ブロック図、第2図は本発明
におけるバッファ記憶部周辺のデータバス系回路の実施
例構成を示すブロック図、第3図はフェッチアクセス動
作を説明するタイムチャート、 第4図はストアアクセス動作を説明するタイムチャート
、 第6図はムーブイン動作を説明するタイムチャート、 第6図はムーブアウト動作を説明するタイムチャート、 第7図は変更フラグが「1」のときのエラー時の処理動
作を説明するタイムチャート、第8図は変更フラグが「
0」のときのエラー時の処理動作を説明するタイムチャ
ート、第9図は回路Bの動作を説明する図、 第10図は水平パリティおよび垂直パリティを説明する
図、 第11図は従来のバッファ記憶部の構成例を示すブロッ
ク図である。 図において、 11はバッファ記憶部、 13は主記憶装置、 15はタグ部、 17は部分変更フラグ処理手段、 19はムーブアウト処理手段、 21はムーブインデータレジスタ(MIDR)、22は
ストアデータレジスタ(STDR)、23はバイトマー
クレジスタ(BMR)、24はバッファデータインレジ
スタ(BDIR)、25はバッファ記憶部データ部、 26はアライン回路、 27はバッファデータコピーレジスタ(BDCR)28
はムーブアウトデータレジスタ(MODR)、29はメ
モリリクエストデータレジスタ(MRQDR)、 31は回路A。 32は回路B1 33はフェッチデータレジスタ(FCDR)、34は垂
直パリティレジスタ(VPR)、35は回路C1 36,37はパリティチエツク回路(PCK)、38は
回路D、 41.42はレジスタ、 43はパリティエラー検出レジスタ(PEHR)51〜
56はセレクタである。 本発明の原理ブロック図 第 図 回路Bの動作を説明する図 第9図 水平パリティおよび垂直パリティを説明する画集10図 従来のバッファ記憶部の構成例を示すブロック図第11
図 手続補正書動式) 平成3年1月29日 特許庁長官  植 松  敏  殿 平成2年特許願第278605号 発明の名称 バッファ記憶制御方式 補正をする者 事件との関係   特許出願人 住 所  神奈川県用崎市中原区上小田中1015番地
名称 (522)富士通株式会社 代理人 〒151 ft (03)3375−1631
住 所  東京都渋谷区代々木2丁目11番2号平成3
年1月22日(発送口) 補正の対象 明細書の図面の簡単な説明の欄 補正の内容
11th! 1 is a block diagram of the principle of the present invention, FIG. 2 is a block diagram showing an embodiment of the configuration of the data bus circuit around the buffer storage unit in the present invention, FIG. 3 is a time chart explaining the fetch access operation, and FIG. is a time chart explaining the store access operation, Figure 6 is a time chart explaining the move-in operation, Figure 6 is a time chart explaining the move-out operation, and Figure 7 is the error time when the change flag is "1". Figure 8 is a time chart explaining the processing operation of
FIG. 9 is a diagram explaining the operation of circuit B. FIG. 10 is a diagram explaining horizontal parity and vertical parity. FIG. 11 is a diagram explaining the conventional buffer. FIG. 2 is a block diagram showing an example of the configuration of a storage unit. In the figure, 11 is a buffer storage unit, 13 is a main storage device, 15 is a tag unit, 17 is a partial change flag processing means, 19 is a move-out processing means, 21 is a move-in data register (MIDR), and 22 is a store data register. (STDR), 23 is a byte mark register (BMR), 24 is a buffer data in register (BDIR), 25 is a buffer storage data section, 26 is an align circuit, 27 is a buffer data copy register (BDCR) 28
is a move-out data register (MODR), 29 is a memory request data register (MRQDR), and 31 is a circuit A. 32 is a circuit B1, 33 is a fetch data register (FCDR), 34 is a vertical parity register (VPR), 35 is a circuit C1, 36 and 37 are parity check circuits (PCK), 38 is a circuit D, 41.42 is a register, 43 is a Parity error detection register (PEHR) 51~
56 is a selector. A block diagram of the principle of the present invention. A diagram explaining the operation of circuit B. FIG. 9 A collection of illustrations explaining horizontal parity and vertical parity.
January 29, 1991 Commissioner of the Japan Patent Office Satoshi Uematsu Patent Application No. 278605 of 1990 Name of the invention Buffer storage control method Person making the amendment Relationship with the case Patent applicant Address Kanagawa 1015 Kamiodanaka, Nakahara-ku, Yozaki-shi, Ken. Name (522) Fujitsu Limited Agent 151 ft. (03) 3375-1631
Address: 1991, 2-11-2 Yoyogi, Shibuya-ku, Tokyo
January 22, 2019 (Shipping port) Contents of the amendment in the brief explanation of drawings in the specification subject to amendment

Claims (2)

【特許請求の範囲】[Claims] (1)主記憶装置(11)と、 前記主記憶装置(11)のデータの写しをブロック単位
で保持するストアイン方式のバッファ記憶部(13)と を備えたデータ処理装置において、 前記ブロック単位のデータを細分化した複数のセグメン
ト単位に水平パリテイと、ブロック内の各セグメントに
対する各ビットごとに垂直パリテイとを有し、 ムーブイン処理時に、ムーブインデータから生成される
垂直パリテイを前記バッファ記憶部(13)に書き込む
ムーブイン処理手段(15)と、演算装置からのストア
処理時に、最初にストア先のデータとそのデータの所属
するブロックの垂直パリテイを読み出し、次にこれらの
ストアデータから新たな垂直パリテイを生成し、最後に
ストアデータとこの垂直パリテイを前記バッファ記憶部
(13)に書き込むストア処理手段(17)とを備えた
ことを特徴とするバッファ記憶制御方式。
(1) A data processing device comprising a main storage device (11) and a store-in type buffer storage section (13) that holds a copy of data in the main storage device (11) in block units, wherein the data processing device comprises: horizontal parity in units of multiple segments obtained by subdividing the data of the block, and vertical parity for each bit for each segment in the block, and during move-in processing, the vertical parity generated from the move-in data is stored in the buffer storage section. (13) During store processing from the arithmetic unit, the move-in processing means (15) writes data to the store data and the vertical parity of the block to which the data belongs first, and then reads the new vertical parity from these store data. A buffer storage control system characterized by comprising a store processing means (17) that generates parity and finally writes store data and this vertical parity into the buffer storage section (13).
(2)請求項1に記載のバッファ記憶制御方式において
、 バッファ記憶部(13)からのデータ読み出し時に水平
パリテイエラーが検出されたときは、そのブロック内の
全データを読み出しながら垂直パリテイを生成し、この
垂直パリテイと前記バッファ記憶部(13)内に保持し
ていた真の垂直パリテイと比較して誤りビットを検出し
、これを基に前記バッファ記憶部(13)内のデータの
1ビット誤りを訂正して主記憶装置(11)にムーブア
ウトするムーブアウト処理手段(19)を備えたことを
特徴とするバッファ記憶制御方式。
(2) In the buffer storage control method according to claim 1, when a horizontal parity error is detected when reading data from the buffer storage section (13), vertical parity is generated while reading all data in the block. Then, this vertical parity is compared with the true vertical parity held in the buffer storage unit (13) to detect an error bit, and based on this, one bit of data in the buffer storage unit (13) is detected. A buffer storage control system characterized by comprising a moveout processing means (19) for correcting errors and moving out to a main storage device (11).
JP2278605A 1990-10-17 1990-10-17 Buffer storage control system Pending JPH04153751A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2278605A JPH04153751A (en) 1990-10-17 1990-10-17 Buffer storage control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2278605A JPH04153751A (en) 1990-10-17 1990-10-17 Buffer storage control system

Publications (1)

Publication Number Publication Date
JPH04153751A true JPH04153751A (en) 1992-05-27

Family

ID=17599605

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2278605A Pending JPH04153751A (en) 1990-10-17 1990-10-17 Buffer storage control system

Country Status (1)

Country Link
JP (1) JPH04153751A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007097030A1 (en) * 2006-02-27 2007-08-30 Fujitsu Limited Cache controller and cache control method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007097030A1 (en) * 2006-02-27 2007-08-30 Fujitsu Limited Cache controller and cache control method
US8312218B2 (en) 2006-02-27 2012-11-13 Fujitsu Limited Cache controller and cache control method

Similar Documents

Publication Publication Date Title
CA1180463A (en) Method and apparatus for hashing cache addresses in a cached disk storage system
US5371870A (en) Stream buffer memory having a multiple-entry address history buffer for detecting sequential reads to initiate prefetching
US4525777A (en) Split-cycle cache system with SCU controlled cache clearing during cache store access period
US5696775A (en) Method and apparatus for detecting the transfer of a wrong sector
EP1206739B1 (en) Methods and apparatus for correcting soft errors in digital data
JPS60179851A (en) Data processor
EP0265639A2 (en) ECC circuit failure verifier
US5533035A (en) Error detection and correction method and apparatus
US4323968A (en) Multilevel storage system having unitary control of data transfers
EP0321793B1 (en) Apparatus for forcing a reload from main memory upon cache memory error
JPH0524540B2 (en)
JPH05509189A (en) Method of operating a computer system and memory management device in a computer system
JPS6324428A (en) Cache memory
US5511078A (en) Method and apparatus for correction errors in a memory
EP0978041A1 (en) Word width selection for sram cache
EP0167089B1 (en) Memory access control system and method for an information processing apparatus
US5325375A (en) Method and apparatus for non-atomic level parity protection for storing data in a random access memory
US5878059A (en) Method and apparatus for pipelining an error detection algorithm on an n-bit word stored in memory
US4768197A (en) Cache error code update
US5452418A (en) Method of using stream buffer to perform operation under normal operation mode and selectively switching to test mode to check data integrity during system operation
US5886930A (en) Bit interleaving in a memory which uses multi-bit DRAMs
US6772289B1 (en) Methods and apparatus for managing cached CRC values in a storage controller
JPH04153751A (en) Buffer storage control system
US5408674A (en) System for checking the validity of two byte operation code by mapping two byte operation codes into control memory in order to reduce memory size
JPH0443445A (en) Registered data invalidating processing system for associative storage mechanism