JPH1097471A - Error correction method and error correction method for memory data - Google Patents
Error correction method and error correction method for memory dataInfo
- Publication number
- JPH1097471A JPH1097471A JP8250561A JP25056196A JPH1097471A JP H1097471 A JPH1097471 A JP H1097471A JP 8250561 A JP8250561 A JP 8250561A JP 25056196 A JP25056196 A JP 25056196A JP H1097471 A JPH1097471 A JP H1097471A
- Authority
- JP
- Japan
- Prior art keywords
- data
- string
- block
- parity
- ecc
- 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
- Detection And Correction Of Errors (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
(57)【要約】
【課題】本発明は、データブロック転送時に於いて、E
CCデータを生成する際に、データを貯えるバッファの
サイズを小さくすることができ、かつデータ異常の検出
並びに訂正を行なうために付加するデータ量を少なくす
ることができるメモリデータのエラー訂正方法及び方式
を提供することを課題とする。
【解決手段】1つのデータブロック10は、複数のデー
タ列20a,20b,…に分割される。この分割された
データ列20a,20b,…に、それぞれデータ異常検
出のためのパリティビット(P)30a,30b,…が
付加される。更に、データブロック10全体のデータ異
常を修正するために、当該データブロックにECCデー
タ40が付加される。
(57) [Summary] The present invention relates to a data block transfer method for transmitting data blocks.
An error correction method and method for memory data that can reduce the size of a buffer for storing data and reduce the amount of data added to detect and correct data abnormalities when generating CC data. The task is to provide A data block (10) is divided into a plurality of data strings (20a, 20b, ...). The parity bits (P) 30a, 30b,... For detecting data abnormality are added to the divided data strings 20a, 20b,. Further, in order to correct the data abnormality of the entire data block 10, ECC data 40 is added to the data block.
Description
【0001】[0001]
【発明の属する技術分野】本発明は、例えば情報処理機
器に用いられるメモリチップ、又はその他のメモリ装
置、又はメモリアクセス機構をもつ装置等に適用して好
適なメモリデータのデータ構造、エラー訂正方法、及び
エラー訂正方式に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data structure of memory data and an error correction method suitable for application to, for example, a memory chip used in an information processing apparatus, or another memory device, or a device having a memory access mechanism. , And an error correction method.
【0002】[0002]
【従来の技術】フラッシュメモリ等のメモリデバイスに
於いては、データ書き込み時に正常に書き込みが行なわ
れないデータ誤り、データ書き込み後にデータが破壊さ
れるデータ誤り等が発生すると、書き込まれたデータと
読出すデータとが異なるという不都合が生じる。2. Description of the Related Art In a memory device such as a flash memory, when a data error that cannot be normally written at the time of writing data or a data error that destroys data after data writing occurs, the written data is read. There is a disadvantage that the data to be output is different.
【0003】このため、書き込みデータにパリティビッ
トを付加し、データ異常を検出するパリティチェック手
段、又はブロック単位の書き込みデータにECCデータ
(Error Correction Code )を付加し、データ異常の検
出並びに修正を行なうECC(Error Checking and Cor
rection )手段等を備えて、読み出したデータが正常で
ある確認を行なう必要がある。For this reason, a parity check means for adding a parity bit to the write data to detect a data error or an ECC data (Error Correction Code) to the write data in a block unit to detect and correct the data error. ECC (Error Checking and Cor
It is necessary to confirm that the read data is normal by providing means and the like.
【0004】上記したパリティチェック方式は、1回の
読み出し動作で取扱可能なデータに対してパリティビッ
トを付加して記録し、データ読み出しの際に、データ異
常の検出(パリティチェック)を行なう方式である。The parity check method described above is a method in which a parity bit is added to data that can be handled in one read operation, and the data is recorded, and when data is read, a data abnormality is detected (parity check). is there.
【0005】このパリティチェック方式は、データ読み
出し毎にデータ異常を判別できるため、データを保管す
るバッファを用意する必要がなく、又、データ異常を検
出するための複雑な回路を必要としないという利点があ
る反面、データ異常の訂正ができないという問題を有し
ていた。In this parity check method, since data abnormality can be determined each time data is read, there is no need to prepare a buffer for storing data, and there is no need for a complicated circuit for detecting data abnormality. On the other hand, however, there is a problem that data abnormalities cannot be corrected.
【0006】又、上記ECCデータ方式は、メモリデー
タをブロック単位に区切り、そのブロックデータにEC
Cデータを付加して記録する。上記ブロック単位のデー
タを読み出した後、このデータから生成したECCデー
タと、書き込み時に生成され記録されているECCデー
タとを比較し、データ異常の検出、データ異常箇所の特
定を行なう。これらの情報をもとにデータ異常箇所の訂
正を行なうことが可能である。In the ECC data system, memory data is divided into block units, and the block data
C data is added and recorded. After reading the data in block units, the ECC data generated from the data is compared with the ECC data generated and recorded at the time of writing to detect a data abnormality and specify a data abnormality location. It is possible to correct the data abnormal part based on these information.
【0007】しかしながら、上記ECCデータ方式は、
1ブロック分のデータを読み出した後でないとデータ異
常が判別できない。又、データ異常を訂正するために
は、1ブロック分のデータを貯えるバッファが必要であ
るという問題があった。However, the ECC data method is
Only after reading the data of one block, the data abnormality can be determined. In addition, there is a problem that a buffer for storing one block of data is required to correct the data abnormality.
【0008】又、1ブロックのデータサイズを小さくす
ると、データを貯えるバッファが小さくて済む反面、メ
モリデータに付加するECCのデータ量が多くなってし
まうという問題があった。When the data size of one block is reduced, a buffer for storing data may be small, but there is a problem that the amount of ECC data added to memory data increases.
【0009】[0009]
【発明が解決しようとする課題】上記したように、従
来、書き込まれたデータと読出すデータとが異なるとい
う不都合を回避して、読み出したデータが正常である確
認を行なう際、パリティチェック方式に於いては、デー
タ読み出し毎にデータ異常を判別できるため、データを
保管するバッファを用意する必要がなく、又、データ異
常を検出するための複雑な回路を必要としないという利
点がある反面、データ異常の訂正ができないという問題
を有していた。又、上記ECCデータ方式に於いては、
データ異常箇所の訂正を行なうことが可能である反面、
1ブロック分のデータを読み出した後でないとデータ異
常が判別できないという問題があり、又、データ異常を
訂正するためには、1ブロック分のデータを貯えるバッ
ファが必要であるという問題があった。更に、1ブロッ
クのデータサイズを小さくすると、データを貯えるバッ
ファが小さくて済む反面、メモリデータに付加するEC
Cのデータ量が多くなってしまうという問題があった。As described above, in order to avoid the inconvenience that the written data and the data to be read are different from each other, the parity check method is used when confirming that the read data is normal. In this case, since data abnormality can be determined every time data is read, there is no need to prepare a buffer for storing data, and there is an advantage that a complicated circuit for detecting data abnormality is not required, but data There was a problem that the abnormality could not be corrected. In the above ECC data system,
While it is possible to correct data abnormalities,
There is a problem that a data abnormality cannot be determined until data of one block is read out, and a buffer for storing data of one block is required to correct the data abnormality. Further, when the data size of one block is reduced, the buffer for storing data can be small, but the EC added to the memory data can be reduced.
There is a problem that the data amount of C becomes large.
【0010】本発明は上記実情に鑑みなされたもので、
データを貯えるバッファサイズを小さくすることができ
るとともに、データ異常の検出並びに訂正を行なうため
に付加するデータ量を少なくすることのできるメモリデ
ータのデータ構造、エラー訂正方法、及びエラー訂正方
式を提供することを目的とする。The present invention has been made in view of the above circumstances,
Provided are a data structure of memory data, an error correction method, and an error correction method that can reduce the size of a buffer for storing data and reduce the amount of data added to detect and correct data abnormalities. The purpose is to:
【0011】[0011]
【課題を解決するための手段】本発明は、メモリデータ
のデータ構造に於いて、ブロック単位のデータに、当該
データブロック全体のデータ異常修正のためのECCデ
ータを付加するとともに、当該データブロックを複数の
データ列に分割して、その各データ列にデータ異常検出
のためのパリティビットを付加してなることを特徴とす
る。According to the present invention, in a data structure of memory data, ECC data for correcting data abnormality of the entire data block is added to data in block units, and the data block is added to the data block. It is characterized in that it is divided into a plurality of data strings, and a parity bit for detecting data abnormality is added to each data string.
【0012】又、本発明は、メモリデータのエラー訂正
方法に於いて、書き込みの対象となるデータブロック
に、当該データブロック全体のデータ異常修正のための
ECCデータを生成して付加するとともに、当該データ
ブロックを複数のデータ列に分割して、その各データ列
にデータ異常検出のためのパリティビットを生成して付
加し、前記データブロックの読出し時に、各データ列毎
にパリティチェックを行ない、エラーのないときは当該
データ列を読出しデータとして転送出力し、エラーが生
じたときは当該データ列をバッファ領域に一時待避し
て、当該データ列が含まれる読出しデータブロックから
ECCデータを生成しエラーを修正した後、読出しデー
タとして転送出力することを特徴とする。Further, according to the present invention, in an error correction method for memory data, ECC data for correcting data abnormality of the entire data block is generated and added to a data block to be written, The data block is divided into a plurality of data strings, and a parity bit for data abnormality detection is generated and added to each of the data strings. At the time of reading the data block, a parity check is performed for each data string, and an error When there is no data, the data string is transferred and output as read data. When an error occurs, the data string is temporarily saved in a buffer area, ECC data is generated from a read data block including the data string, and an error is generated. After the correction, the data is transferred and output as read data.
【0013】又、本発明は、メモリデータのエラー訂正
方式に於いて、データ書き込み時に、書き込みの対象と
なるデータブロックに当該データブロック全体のデータ
異常修正のためのECCデータを生成し付加するととも
に、当該データブロックを複数のデータ列に分割して、
その各データ列にデータ異常検出のためのパリティビッ
トを生成し付加する処理手段と、前記データブロックの
読出し時に於いて、前記データブロックの各データ列毎
にパリティチェックを行ない、パリティエラーの生じな
いとき当該データ列を読出しデータとして出力する処理
手段、及び、パリティエラーが生じたとき当該データ列
をバッファ領域に待避して、当該データ列が含まれる読
出しデータブロックのECCデータを生成し、エラー修
正した後、当該データ列を先頭に残るデータ列のパリテ
ィチェックを行ない、パリティエラーの生じないとき当
該データ列を読出しデータとして出力する処理手段とを
具備してなることを特徴とする。According to the present invention, in an error correction method for memory data, at the time of data writing, ECC data for correcting data abnormality of the entire data block is generated and added to a data block to be written. , The data block is divided into a plurality of data strings,
Processing means for generating and adding a parity bit for data abnormality detection to each of the data strings, and performing a parity check for each data string of the data block at the time of reading the data block so that no parity error occurs Processing means for outputting the data string as read data, and saving the data string to a buffer area when a parity error occurs, generating ECC data of a read data block including the data string, and correcting the error. After that, a parity check is performed on the data string remaining at the head of the data string, and processing means for outputting the data string as read data when no parity error occurs is provided.
【0014】又、本発明は、メモリ装置に於いて、デー
タ書き込み時に於いて、書き込みの対象となるデータブ
ロックに、当該データブロック全体のデータ異常修正の
ためのECCデータを生成し付加するECC回路と、前
記データブロックを複数のデータ列に分割して、その各
データ列にデータ異常検出のためのパリティビットを生
成し付加するパリティ回路と、前記パリティビットに従
うパリティチェックでパリティエラーが生じたとき当該
データ列を保持する1データ列分のデータサイズをもつ
データバッファと、前記パリティエラーが生じたとき当
該データ列を前記データバッファに待避して、当該デー
タ列が含まれる読出しデータブロックからECCデータ
を生成しエラー修正し出力する手段とを具備してなるこ
とを特徴とする。According to another aspect of the present invention, there is provided an ECC circuit for generating and adding, to a data block to be written, ECC data for correcting data abnormality of the entire data block in a data write operation in a memory device. And a parity circuit that divides the data block into a plurality of data strings, generates and adds a parity bit for data abnormality detection to each data string, and a parity check that occurs according to the parity bit. A data buffer having a data size of one data string for holding the data string, and saving the data string to the data buffer when the parity error occurs, and reading the ECC data from the read data block including the data string. Means for generating, correcting and outputting an error.
【0015】又、本発明は、メモリ装置に於いて、デー
タ書き込み時に於いて、書き込みの対象となるデータブ
ロックに、当該データブロック全体のデータ異常修正の
ためのECCデータを付加するとともに、当該データブ
ロックを複数のデータ列に分割して、その各データ列に
データ異常検出のためのパリティビットを付加する手段
と、前記データブロックの読出し時に於いて、前記デー
タブロックの各データ列毎にパリティチェックを行な
い、パリティエラーの生じないとき当該データ列を読出
しデータとして出力する手段、及びパリティエラーが生
じたとき当該データ列をバッファ領域に待避して、当該
データ列が含まれる読出しデータブロックのECCデー
タを生成し、エラー修正した後、当該データ列を先頭に
残るデータ列のパリティチェックを行ない、パリティエ
ラーの生じないとき当該データ列を読出しデータとして
出力する手段とを具備してなることを特徴とする。Further, according to the present invention, in a memory device, at the time of writing data, ECC data for correcting data abnormality of the entire data block is added to a data block to be written, and Means for dividing the block into a plurality of data strings and adding a parity bit for detecting data abnormality to each data string, and a parity check for each data string of the data block when reading the data block Means for outputting the data string as read data when a parity error does not occur, and saving the data string to a buffer area when a parity error occurs, and reading the ECC data of a read data block including the data string. After the error is corrected and the data string is Performs I check, characterized by comprising and means for outputting the data string as read data when causing no parity error.
【0016】上記した本発明を適用することにより、デ
ータを貯えるバッファとしてデータ列に相当するバッフ
ァサイズを用意すればよく、従ってデータを貯えるバッ
ファのサイズを小さくすることができるとともに、デー
タ異常の検出並びに訂正を行なうために付加するデータ
量を少なくすることができる。又、データを貯えるバッ
ファのサイズを削減できることから、従来は困難であっ
たメモリ素子に内部回路としてエラー訂正機能を付加す
ることができる。By applying the present invention described above, a buffer size corresponding to a data string may be prepared as a buffer for storing data, so that the size of the buffer for storing data can be reduced, and data abnormality can be detected. In addition, the amount of data added to perform the correction can be reduced. Further, since the size of the buffer for storing data can be reduced, an error correction function can be added as an internal circuit to a memory element which has been difficult in the past.
【0017】[0017]
【発明の実施の形態】以下図面を参照して本発明の実施
形態を説明する。図1は本発明の実施形態に係るメモリ
データのデータ構造を示す図である。本発明で適用され
るデータは、複数のデータブロックにより構成される。Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a diagram showing a data structure of memory data according to the embodiment of the present invention. The data applied in the present invention is composed of a plurality of data blocks.
【0018】1つのデータブロック10は、複数のデー
タ列(ここでは一例として4つのデータ列(1),
(2),(3),(4)を示す)20a,20b,20
c,20dに分割される。One data block 10 includes a plurality of data strings (here, for example, four data strings (1),
(Showing (2), (3), (4)) 20a, 20b, 20
c, 20d.
【0019】この分割されたデータ列20a,20b,
20c,20dに、それぞれデータ異常検出のためのパ
リティビット(P)30a,30b,30c,30dが
付加される。The divided data strings 20a, 20b,
Parity bits (P) 30a, 30b, 30c, 30d for detecting data anomalies are added to 20c, 20d, respectively.
【0020】更に、データブロック10全体のデータ異
常を修正するために、当該データブロックにECCデー
タ40が付加される。図2は上記実施形態に於けるエラ
ー訂正処理の動作手順を説明するための図である。Further, in order to correct the data abnormality of the entire data block 10, ECC data 40 is added to the data block. FIG. 2 is a diagram for explaining an operation procedure of the error correction processing in the embodiment.
【0021】ここでは、2番目のデータ列(2)20b
がデータ異常となっているデータブロックを示してい
る。このデータを読み出す場合、次のような以下に示す
処理手順でエラー訂正が行なわれる。Here, the second data string (2) 20b
Indicates a data block in which data is abnormal. When reading this data, error correction is performed according to the following processing procedure.
【0022】(a).1番目のデータ列(1)20a
は、パリティビット30aにより、正常であると判断さ
れる。当該データ列(1)20aは正常な読出データと
して転送される。(A). First data string (1) 20a
Is determined to be normal by the parity bit 30a. The data string (1) 20a is transferred as normal read data.
【0023】(b).2番目のデータ列(2)20b
は、パリティビット30bにより異常と判断される。当
該データ列(2)20bはデータバッファ(図3の符号
35参照)に貯えられる。(B). Second data string (2) 20b
Is determined to be abnormal by the parity bit 30b. The data string (2) 20b is stored in a data buffer (see reference numeral 35 in FIG. 3).
【0024】(c).3番目のデータ列(3)20c、
及び4番目のデータ列(4)20dを読み出して、上記
データ列(2)20bに異常の生じた1つのデータブロ
ック10全体のECCデータを生成する。この際、1つ
のデータブロック10の全データ列(4)20a〜20
dが順にECC回路(図3の符号33参照)を通過する
ことによって上記読出したデータブロック10全体のE
CCデータが生成される。このデータブロック10に続
いて当該データブロックに付加されたECCデータ40
を読出す。(C). Third data string (3) 20c,
Then, the fourth data string (4) 20d is read, and ECC data of the entire data block 10 in which the data string (2) 20b has an error is generated. At this time, all data strings (4) 20a to 20 of one data block 10
d sequentially passes through the ECC circuit (see reference numeral 33 in FIG. 3), whereby E of the entire read data block 10 is changed.
CC data is generated. Following this data block 10, ECC data 40 added to the data block
Is read.
【0025】上記読出したデータブロック10全体から
生成されたECCデータと、上記データブロック10の
書き込み時に付加され、読出されたECCデータ40と
を比較して、データ異常が発生しているデータ箇所を特
定する。The ECC data generated from the entirety of the read data block 10 is compared with the read ECC data 40 added at the time of writing the data block 10 to determine a data location where a data abnormality has occurred. Identify.
【0026】(d).上記(b)に於いてデータバッフ
ァ(図3の符号35参照)に貯えられたデータ列(2)
20bのデータ異常箇所を修正する。当該データ列
(2)20bは正常な読出データとして転送される。(D). Data string (2) stored in the data buffer (see 35 in FIG. 3) in (b) above
Correct the data abnormal part of 20b. The data string (2) 20b is transferred as normal read data.
【0027】(e).3番目のデータ列(3)20c、
4番目のデータ列(4)20dが、それぞれ正常な読出
データとして転送される。図3は上記実施形態のハード
ウェア構成を示すブロック図である。(E). Third data string (3) 20c,
The fourth data string (4) 20d is transferred as normal read data. FIG. 3 is a block diagram showing a hardware configuration of the embodiment.
【0028】図3に於いて、31はシステム制御を司る
CPU、32はメモリバスである。33乃至35はそれ
ぞれメモリコントローラに設けられた、データ異常を検
出し訂正する機能を実現する構成要素をなすもので、3
3はECC回路、34はパリティ回路、35はデータバ
ッファである。In FIG. 3, reference numeral 31 denotes a CPU for controlling the system, and 32 denotes a memory bus. Reference numerals 33 to 35 are components provided in the memory controller to realize a function of detecting and correcting a data abnormality.
3 is an ECC circuit, 34 is a parity circuit, and 35 is a data buffer.
【0029】ECC回路33は、上記図1に於いて、書
き込み対象となるデータブロック10に対し、当該デー
タブロック全体のデータ異常修正するためにECCデー
タ40を付加する。The ECC circuit 33 adds the ECC data 40 to the data block 10 to be written in FIG. 1 in order to correct the data abnormality of the entire data block.
【0030】又、ECC回路33は、上記図2(c),
(d)に於いて、パリティビット30bにより異常と判
断され、データバッファ35に貯えられたデータ列
(2)20bの誤りビットを特定し、当該箇所を修正す
る。Further, the ECC circuit 33 is provided in the above-mentioned FIG.
In (d), an error is determined by the parity bit 30b, and an error bit of the data string (2) 20b stored in the data buffer 35 is specified, and the relevant part is corrected.
【0031】パリティ回路34は、上記図1に於いて、
分割されたデータ列20a,20b,20c,20d
に、それぞれデータ異常検出のためのパリティビット
(P)30a,30b,30c,30dを付加する。The parity circuit 34 in FIG.
Divided data strings 20a, 20b, 20c, 20d
Are added with parity bits (P) 30a, 30b, 30c, and 30d for detecting data anomalies, respectively.
【0032】又、パリティ回路34は、上記図2
(a),(b)に於いて、パリティビット(P)により
パリティチェックを行なう。データバッファ35は、上
記パリティチェックでパリティエラーとなったデータ列
を、誤り訂正後、転送されるまで保持する。この際、従
来では、前述したように、データ異常を訂正するため
に、1ブロック分のデータバッファ(図3に破線で示す
符号35を含むバッファサイズ)を必要としていたが、
上記実施形態に於いては、破線で示す領域を除いた、1
データ列20iに相当するバッファサイズの構成でよ
い。The parity circuit 34 is provided in the above-mentioned FIG.
In (a) and (b), a parity check is performed using the parity bit (P). The data buffer 35 holds the data string having a parity error in the parity check until it is transferred after error correction. At this time, conventionally, as described above, a data buffer for one block (a buffer size including a reference numeral 35 shown by a broken line in FIG. 3) is required to correct the data abnormality.
In the above embodiment, 1
The buffer size may be equivalent to the data string 20i.
【0033】このように、本発明の実施形態によれば、
データバッファのサイズを小さくできる(実施形態では
1/4に削減できる)とともに、データ異常の修正に必
要な付加データの容量を減らすことができる。As described above, according to the embodiment of the present invention,
The size of the data buffer can be reduced (in the embodiment, it can be reduced to 1/4), and the capacity of additional data required for correcting a data abnormality can be reduced.
【0034】又、上記した本発明の実施形態を、例えば
メモリチップに適用することにより、データバッファの
サイズを小さくして、その空き領域部分に本発明による
データ異常の検出並びに訂正を行なう機能ロジックを載
せることが可能となる。Also, by applying the above-described embodiment of the present invention to, for example, a memory chip, the size of a data buffer is reduced, and a function logic for detecting and correcting a data abnormality according to the present invention in a vacant area thereof. Can be placed.
【0035】[0035]
【発明の効果】以上詳記したように本発明によれば、メ
モリデータの異常検出並びに訂正を行なう機能を実現す
る際に、データを貯えるバッファサイズを小さくするこ
とができるとともに、データ異常の検出並びに訂正を行
なうために付加するデータ量を少なくすることができ
る。又、データを貯えるバッファのサイズを削減できる
ことから、従来は困難であったメモリ素子に内部回路と
してエラー訂正機能を付加することができる。As described above in detail, according to the present invention, when realizing the function of detecting and correcting memory data abnormalities, it is possible to reduce the size of a buffer for storing data and to detect data abnormalities. In addition, the amount of data added to perform the correction can be reduced. Further, since the size of the buffer for storing data can be reduced, an error correction function can be added as an internal circuit to a memory element which has been difficult in the past.
【0036】即ち、本発明によれば、ブロック単位のデ
ータに、当該データブロック全体のデータ異常修正のた
めのECCデータを付加するとともに、当該データブロ
ックを複数のデータ列に分割して、その各データ列にデ
ータ異常検出のためのパリティビットを付加してなるメ
モリデータのデータ構造としたことにより、データブロ
ック転送時に於いて、ECCデータを生成する際に、デ
ータを貯えるバッファのサイズを小さくすることができ
るとともに、データ異常の検出並びに訂正を行なうため
に付加するデータ量を少なくすることができる。That is, according to the present invention, ECC data for correcting the data abnormality of the entire data block is added to the data in block units, and the data block is divided into a plurality of data strings, By using a data structure of memory data in which a parity bit for detecting data abnormality is added to a data string, the size of a buffer for storing data can be reduced when ECC data is generated during data block transfer. In addition to this, the amount of data added for detecting and correcting data abnormalities can be reduced.
【0037】又、本発明によれば、メモリデータのエラ
ー訂正方法に於いて、書き込みの対象となるデータブロ
ックに、当該データブロック全体のデータ異常修正のた
めのECCデータを生成して付加するとともに、当該デ
ータブロックを複数のデータ列に分割して、その各デー
タ列にデータ異常検出のためのパリティビットを生成し
て付加し、前記データブロックの読出し時に、各データ
列毎にパリティチェックを行ない、エラーのないときは
当該データ列を読出しデータとして転送出力し、エラー
が生じたときは当該データ列をバッファ領域に一時待避
して、当該データ列が含まれる読出しデータブロックか
らECCデータを生成しエラーを修正した後、読出しデ
ータとして転送出力する方法を採ることにより、データ
ブロック転送時に於いて、ECCデータを生成する際
に、データを貯えるバッファのサイズを小さくすること
ができるとともに、データ異常の検出並びに訂正を行な
うために付加するデータ量を少なくすることができる。According to the present invention, in a memory data error correction method, ECC data for correcting data abnormality of the entire data block is generated and added to a data block to be written. Divides the data block into a plurality of data strings, generates and adds a parity bit for data abnormality detection to each data string, and performs a parity check for each data string when reading the data block. When there is no error, the data string is transferred and output as read data. When an error occurs, the data string is temporarily saved in a buffer area, and ECC data is generated from the read data block including the data string. After correcting the error, the method of transferring and outputting as read data is adopted, There are, in generating the ECC data, it is possible to reduce the size of the buffer to store the data, it is possible to reduce the amount of data to be added to perform the detection and correction of data error.
【0038】又、本発明によれば、メモリデータのエラ
ー訂正方式に於いて、データ書き込み時に、書き込みの
対象となるデータブロックに当該データブロック全体の
データ異常修正のためのECCデータを生成し付加する
とともに、当該データブロックを複数のデータ列に分割
して、その各データ列にデータ異常検出のためのパリテ
ィビットを生成し付加する処理手段と、前記データブロ
ックの読出し時に於いて、前記データブロックの各デー
タ列毎にパリティチェックを行ない、パリティエラーの
生じないとき当該データ列を読出しデータとして出力す
る処理手段、及び、パリティエラーが生じたとき当該デ
ータ列をバッファ領域に待避して、当該データ列が含ま
れる読出しデータブロックのECCデータを生成し、エ
ラー修正した後、当該データ列を先頭に残るデータ列の
パリティチェックを行ない、パリティエラーの生じない
とき当該データ列を読出しデータとして出力する処理手
段とを具備してなる構成としたことにより、データブロ
ック転送時に於いて、ECCデータを生成する際に、デ
ータを貯えるバッファのサイズを小さくすることができ
るとともに、データ異常の検出並びに訂正を行なうため
に付加するデータ量を少なくすることができる。According to the present invention, in an error correction method for memory data, when data is written, ECC data for correcting data abnormality of the entire data block is generated and added to a data block to be written. Processing means for dividing the data block into a plurality of data strings, generating and adding a parity bit for data abnormality detection to each data string, and reading the data block when reading the data block. Processing means for performing a parity check for each of the data strings, and outputting the data string as read data when a parity error does not occur, and saving the data string to a buffer area when a parity error occurs, and After generating the ECC data of the read data block including the column and correcting the error, A parity check is performed on the data string remaining at the top of the data string, and processing means for outputting the data string as read data when a parity error does not occur is provided. When ECC data is generated, the size of a buffer for storing data can be reduced, and the amount of data added to detect and correct data abnormalities can be reduced.
【0039】又、本発明によれば、メモリ装置に於い
て、データ書き込み時に於いて、書き込みの対象となる
データブロックに、当該データブロック全体のデータ異
常修正のためのECCデータを生成し付加するECC回
路と、前記データブロックを複数のデータ列に分割し
て、その各データ列にデータ異常検出のためのパリティ
ビットを生成し付加するパリティ回路と、前記パリティ
ビットに従うパリティチェックでパリティエラーが生じ
たとき当該データ列を保持する1データ列分のデータサ
イズをもつデータバッファと、前記パリティエラーが生
じたとき当該データ列を前記データバッファに待避し
て、当該データ列が含まれる読出しデータブロックから
ECCデータを生成しエラー修正し出力する手段とを具
備してなる構成としたことにより、データを貯えるバッ
ファのサイズを削減できることから、従来困難であった
メモリ素子に内部回路としてエラー訂正機能を付加する
ことができる。According to the present invention, in a memory device, at the time of data writing, ECC data for correcting data abnormality of the entire data block is generated and added to a data block to be written. An ECC circuit, a parity circuit that divides the data block into a plurality of data strings, and generates and adds a parity bit for data abnormality detection to each of the data strings, and a parity error generated by a parity check according to the parity bits A data buffer having a data size of one data string for holding the data string, and saving the data string to the data buffer when the parity error occurs, from a read data block including the data string. Means for generating ECC data, correcting errors, and outputting the ECC data. Accordingly, the data because it can reduce the size of the buffer to store the can be added an error correction function as an internal circuit in the prior art which was difficult memory device.
【0040】又、本発明によれば、メモリ装置に於い
て、データ書き込み時に於いて、書き込みの対象となる
データブロックに、当該データブロック全体のデータ異
常修正のためのECCデータを付加するとともに、当該
データブロックを複数のデータ列に分割して、その各デ
ータ列にデータ異常検出のためのパリティビットを付加
する手段と、前記データブロックの読出し時に於いて、
前記データブロックの各データ列毎にパリティチェック
を行ない、パリティエラーの生じないとき当該データ列
を読出しデータとして出力する手段、及びパリティエラ
ーが生じたとき当該データ列をバッファ領域に待避し
て、当該データ列が含まれる読出しデータブロックのE
CCデータを生成し、エラー修正した後、当該データ列
を先頭に残るデータ列のパリティチェックを行ない、パ
リティエラーの生じないとき当該データ列を読出しデー
タとして出力する手段とを具備してなる構成としたこと
により、データを貯えるバッファのサイズを削減できる
ことから、従来困難であったメモリ素子に内部回路とし
てエラー訂正機能を付加することができる。According to the present invention, in a memory device, at the time of data writing, ECC data for correcting data abnormality of the entire data block is added to a data block to be written, Means for dividing the data block into a plurality of data strings, adding a parity bit for data abnormality detection to each data string, and reading the data block;
Means for performing a parity check for each data string of the data block, outputting the data string as read data when no parity error occurs, and saving the data string to a buffer area when a parity error occurs, E of the read data block containing the data string
Means for generating CC data, correcting the error, performing a parity check on the data string remaining at the head of the data string, and outputting the data string as read data when no parity error occurs. By doing so, the size of the buffer for storing data can be reduced, so that an error correction function can be added as an internal circuit to a memory element that has been difficult in the past.
【図1】本発明の実施形態に於けるメモリデータの構造
を示す図。FIG. 1 is a diagram showing a structure of memory data according to an embodiment of the present invention.
【図2】上記実施形態に於けるエラー訂正処理の動作手
順を説明するための図。FIG. 2 is a view for explaining an operation procedure of an error correction process in the embodiment.
【図3】上記実施形態のハードウェア構成を示すブロッ
ク図。FIG. 3 is a block diagram showing a hardware configuration of the embodiment.
【符号の説明】 10…データブロック、 20(a〜d)…データ列、 30(a〜d)…パリティビット(P)、 40…ECCデータ、 31…CPU、 32…メモリバス、 33…ECC回路、 34…パリティ回路、 35…データバッファ。[Description of Signs] 10 data block, 20 (ad) data string, 30 (ad) parity bit (P), 40 ECC data, 31 CPU, 32 memory bus, 33 ECC Circuit 34 parity circuit 35 data buffer
Claims (5)
ロック全体のデータ異常修正のためのECCデータを付
加するとともに、当該データブロックを複数のデータ列
に分割して、その各データ列にデータ異常検出のための
パリティビットを付加してなることを特徴とするデータ
構造。An ECC data for correcting a data abnormality of the entire data block is added to data in a block unit, and the data block is divided into a plurality of data columns, and a data abnormality is detected in each of the data columns. A data structure characterized by adding a parity bit for the data.
に、当該データブロック全体のデータ異常修正のための
ECCデータを生成して付加するとともに、当該データ
ブロックを複数のデータ列に分割して、その各データ列
にデータ異常検出のためのパリティビットを生成して付
加し、 前記データブロックの読出し時に、各データ列毎にパリ
ティチェックを行ない、エラーのないときは当該データ
列を読出しデータとして転送出力し、 エラーが生じたときは当該データ列をバッファ領域に一
時待避して、当該データ列が含まれる読出しデータブロ
ックからECCデータを生成しエラーを修正した後、読
出しデータとして転送出力することを特徴とするメモリ
データのエラー訂正方法。2. Generating and adding ECC data for correcting data abnormality of the entire data block to a data block to be written, dividing the data block into a plurality of data strings, and A parity bit for detecting data abnormality is generated and added to the data string, and a parity check is performed for each data string when reading the data block, and when there is no error, the data string is transferred and output as read data. When an error occurs, the data string is temporarily saved in a buffer area, ECC data is generated from a read data block including the data string, the error is corrected, and the data is transferred and output as read data. Error correction method for memory data.
対象となるデータブロックに、当該データブロック全体
のデータ異常修正のためのECCデータを生成し付加す
るとともに、当該データブロックを複数のデータ列に分
割して、その各データ列にデータ異常検出のためのパリ
ティビットを生成し付加する処理手段と、 前記データブロックの読出し時に於いて、前記データブ
ロックの各データ列毎にパリティチェックを行ない、パ
リティエラーの生じないとき当該データ列を読出しデー
タとして出力する処理手段、及び、パリティエラーが生
じたとき当該データ列をバッファ領域に待避して、当該
データ列が含まれる読出しデータブロックのECCデー
タを生成し、エラー修正した後、当該データ列を先頭に
残るデータ列のパリティチェックを行ない、パリティエ
ラーの生じないとき当該データ列を読出しデータとして
出力する処理手段とを具備してなることを特徴とするメ
モリデータのエラー訂正方式。3. At the time of data writing, ECC data for correcting data abnormality of the entire data block is generated and added to a data block to be written, and the data block is divided into a plurality of data strings. Processing means for generating and adding a parity bit for data abnormality detection to each data string; and performing a parity check for each data string of the data block at the time of reading the data block, thereby obtaining a parity error. Processing means for outputting the data string as read data when no error occurs, and saving the data string in a buffer area when a parity error occurs, and generating ECC data of a read data block including the data string. After correcting the error, the parity check of the data string remaining at the top of the data string The performed, memory data error correction method characterized by comprising comprises a processing means for outputting the data string as read data when causing no parity error.
対象となるデータブロックに、当該データブロック全体
のデータ異常修正のためのECCデータを生成し付加す
るECC回路と、 前記データブロックを複数のデータ列に分割して、その
各データ列にデータ異常検出のためのパリティビットを
生成し付加するパリティ回路と、 前記パリティビットに従うパリティチェックでパリティ
エラーが生じたとき当該データ列を保持する1データ列
分のデータサイズをもつデータバッファと、 前記パリティエラーが生じたとき当該データ列を前記デ
ータバッファに待避して、当該データ列が含まれる読出
しデータブロックからECCデータを生成しエラー修正
し出力する手段とを具備してなることを特徴とするメモ
リ装置。4. An ECC circuit for generating and adding ECC data for correcting data abnormality of the entire data block to a data block to be written at the time of data writing; And a parity circuit for generating and adding a parity bit for data abnormality detection to each of the data strings; and a parity row for holding the data string when a parity error occurs in a parity check according to the parity bit. A data buffer having a data size of, and a means for saving the data sequence in the data buffer when the parity error occurs, generating ECC data from a read data block including the data sequence, correcting the error, and outputting the ECC data. A memory device comprising:
対象となるデータブロックに、当該データブロック全体
のデータ異常修正のためのECCデータを付加するとと
もに、当該データブロックを複数のデータ列に分割し
て、その各データ列にデータ異常検出のためのパリティ
ビットを付加する手段と、 前記データブロックの読出し時に於いて、前記データブ
ロックの各データ列毎にパリティチェックを行ない、パ
リティエラーの生じないとき当該データ列を読出しデー
タとして出力する手段、及びパリティエラーが生じたと
き当該データ列をバッファ領域に待避して、当該データ
列が含まれる読出しデータブロックのECCデータを生
成し、エラー修正した後、当該データ列を先頭に残るデ
ータ列のパリティチェックを行ない、パリティエラーの
生じないとき当該データ列を読出しデータとして出力す
る手段とを具備してなることを特徴とするメモリ装置。5. At the time of data writing, ECC data for correcting data abnormality of the entire data block is added to a data block to be written, and the data block is divided into a plurality of data strings. Means for adding a parity bit for data abnormality detection to each data string; and performing a parity check for each data string of the data block at the time of reading the data block. Means for outputting a data string as read data, and when a parity error occurs, the data string is saved in a buffer area, ECC data of a read data block including the data string is generated, and the error is corrected. A parity check is performed on the data string remaining at the beginning of the data string, and parity check is performed. Memory device characterized by comprising and means for outputting the data string as read data when causing no over.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8250561A JPH1097471A (en) | 1996-09-20 | 1996-09-20 | Error correction method and error correction method for memory data |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8250561A JPH1097471A (en) | 1996-09-20 | 1996-09-20 | Error correction method and error correction method for memory data |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH1097471A true JPH1097471A (en) | 1998-04-14 |
Family
ID=17209735
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8250561A Pending JPH1097471A (en) | 1996-09-20 | 1996-09-20 | Error correction method and error correction method for memory data |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH1097471A (en) |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007102460A (en) * | 2005-10-04 | 2007-04-19 | Nec Electronics Corp | Semiconductor storage device and memory controller |
| JP2009059422A (en) * | 2007-08-31 | 2009-03-19 | Toshiba Corp | Semiconductor memory device and control method thereof |
| JP2013016148A (en) * | 2011-06-08 | 2013-01-24 | Panasonic Corp | Memory controller and nonvolatile storage |
| JP2015135647A (en) * | 2014-01-20 | 2015-07-27 | 大日本印刷株式会社 | Method of generating data with error detection code and error detection method |
| US9312885B2 (en) | 2012-08-15 | 2016-04-12 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory system error correction capability of which is improved |
| JP2016187099A (en) * | 2015-03-27 | 2016-10-27 | ルネサスエレクトロニクス株式会社 | Data processing circuit |
| US9904491B2 (en) | 2015-01-05 | 2018-02-27 | Samsung Electronics Co., Ltd. | Memory device, memory system, and method of operating the device |
| CN108874576A (en) * | 2017-05-10 | 2018-11-23 | 中国航空工业集团公司西安飞行自动控制研究所 | A kind of data-storage system based on Error Correction of Coding |
-
1996
- 1996-09-20 JP JP8250561A patent/JPH1097471A/en active Pending
Cited By (21)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007102460A (en) * | 2005-10-04 | 2007-04-19 | Nec Electronics Corp | Semiconductor storage device and memory controller |
| US8386881B2 (en) | 2007-08-31 | 2013-02-26 | Kabushiki Kaisha Toshiba | Semiconductor memory device and method of controlling the same |
| US8069394B2 (en) | 2007-08-31 | 2011-11-29 | Kabushiki Kaisha Toshiba | Semiconductor memory device and method of controlling the same |
| US8117517B2 (en) | 2007-08-31 | 2012-02-14 | Kabushiki Kaisha Toshiba | Semiconductor memory device and method of controlling the same |
| US8196008B2 (en) | 2007-08-31 | 2012-06-05 | Kabushiki Kaisha Toshiba | Semiconductor memory device and method of controlling the same |
| US11038536B2 (en) | 2007-08-31 | 2021-06-15 | Toshiba Memory Corporation | Semiconductor memory device and method of controlling the same |
| US8732544B2 (en) | 2007-08-31 | 2014-05-20 | Kabushiki Kaisha Toshiba | Semiconductor memory device and method of controlling the same |
| US8959411B2 (en) | 2007-08-31 | 2015-02-17 | Kabushiki Kaisha Toshiba | Semiconductor memory device and method of controlling the same |
| US12413251B2 (en) | 2007-08-31 | 2025-09-09 | Kioxia Corporation | Semiconductor memory device and method of controlling the same |
| JP2009059422A (en) * | 2007-08-31 | 2009-03-19 | Toshiba Corp | Semiconductor memory device and control method thereof |
| US9384090B2 (en) | 2007-08-31 | 2016-07-05 | Kabushiki Kaisha Toshiba | Semiconductor memory device and method of controlling the same |
| US12074616B2 (en) | 2007-08-31 | 2024-08-27 | Kioxia Corporation | Semiconductor memory device and method of controlling the same |
| US11575395B2 (en) | 2007-08-31 | 2023-02-07 | Kioxia Corporation | Semiconductor memory device and method of controlling the same |
| JP2013016148A (en) * | 2011-06-08 | 2013-01-24 | Panasonic Corp | Memory controller and nonvolatile storage |
| US9312885B2 (en) | 2012-08-15 | 2016-04-12 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory system error correction capability of which is improved |
| JP2015135647A (en) * | 2014-01-20 | 2015-07-27 | 大日本印刷株式会社 | Method of generating data with error detection code and error detection method |
| US9904491B2 (en) | 2015-01-05 | 2018-02-27 | Samsung Electronics Co., Ltd. | Memory device, memory system, and method of operating the device |
| US10340955B2 (en) | 2015-03-27 | 2019-07-02 | Renesas Electronics Corporation | Data processing circuit |
| JP2016187099A (en) * | 2015-03-27 | 2016-10-27 | ルネサスエレクトロニクス株式会社 | Data processing circuit |
| CN108874576A (en) * | 2017-05-10 | 2018-11-23 | 中国航空工业集团公司西安飞行自动控制研究所 | A kind of data-storage system based on Error Correction of Coding |
| CN108874576B (en) * | 2017-05-10 | 2022-01-07 | 中国航空工业集团公司西安飞行自动控制研究所 | Data storage system based on error correction coding |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4558446A (en) | Memory system | |
| KR920001104B1 (en) | How to Test Address Line Errors | |
| US7152129B2 (en) | Apparatus having an inter-module data transfer confirming function, storage controlling apparatus, and interface module for the apparatus | |
| JPH1097471A (en) | Error correction method and error correction method for memory data | |
| JP3190867B2 (en) | Apparatus and method for detecting memory rewrite operation error | |
| JPS63278162A (en) | Error correction device in information processor | |
| JP3482999B2 (en) | Memory chip degeneration control device | |
| KR100328818B1 (en) | How to save data in flash memory | |
| JPH0756640B2 (en) | Storage device | |
| JPS58200351A (en) | Error correcting circuit | |
| JP2003296199A (en) | Storage device, data processing method and data processing program | |
| JP3022688B2 (en) | Auxiliary storage | |
| JPS5870500A (en) | Semiconductor storing circuit | |
| JPS6051142B2 (en) | Logging error control method | |
| KR20070072229A (en) | Semiconductor memory device using EDDS structure | |
| JP3071846B2 (en) | Parity error detection method and parity error detection circuit | |
| JPS62125453A (en) | Storage device | |
| JPS58188398A (en) | Memory error detection and correction device | |
| JPH054266U (en) | Memory device | |
| JPH05241974A (en) | Memory device | |
| JPS63271555A (en) | Storage control system | |
| JPH05108496A (en) | Patrol control system | |
| JPH06342405A (en) | Filing system | |
| JPH0520215A (en) | Information processor | |
| JPS5841478A (en) | Cache storage device |