JPH11272568A - Storage reproducer, error correction method, portable information terminal and digital camera using the same - Google Patents

Storage reproducer, error correction method, portable information terminal and digital camera using the same

Info

Publication number
JPH11272568A
JPH11272568A JP11001121A JP112199A JPH11272568A JP H11272568 A JPH11272568 A JP H11272568A JP 11001121 A JP11001121 A JP 11001121A JP 112199 A JP112199 A JP 112199A JP H11272568 A JPH11272568 A JP H11272568A
Authority
JP
Japan
Prior art keywords
error correction
circuit
data
correction code
code
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
JP11001121A
Other languages
Japanese (ja)
Inventor
Minoru Tsukada
稔 塚田
Kazuo Nakamura
一男 中村
Hiroaki Kotani
博昭 小谷
Atsushi Nozoe
敦史 野副
Tetsuji Karashima
哲次 辛島
Takuji Nishitani
卓史 西谷
Yukari Katayama
ゆかり 片山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP11001121A priority Critical patent/JPH11272568A/en
Publication of JPH11272568A publication Critical patent/JPH11272568A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To attain a low bit error rate of a file system and reduction of a data reading time while suppressing a circuit scale of an internal ECC circuit in a memory chip. SOLUTION: In writing information into a memory, a memory internal ECC circuit RS encodes information data inputted from an I/O buffer 601 by using a 12 bit delay flip-flop(DFF) 701 (701a, 701b and 701c) and a multiplier 708, and outputs them to an S/A & latch 605. In reading the information from the memory, error information is obtained from the RS encoded data which are read to the S/A &latch 605 from the memory by using the 12 bit DFF 701 and the multiplier 708 and, at the same time, error detection/error correction processing is performed by using a divider 709, a detector 702 (702a and 702b), an NOR circuit 703 and a fourth switch 707, the data are decoded and outputted to the I/O buffer 601.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は記憶再生装置,誤り
訂正方法及びこれらを用いた携帯情報端末ならびにディ
ジタルカメラに係わり、特にディジタル情報の記憶再生
装置として使用されるフラッシュメモリの符号誤り訂正
装置及びその制御方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a storage / reproduction device, an error correction method, a portable information terminal and a digital camera using the same, and more particularly to a code error correction device for a flash memory used as a digital information storage / reproduction device. It relates to the control method.

【0002】[0002]

【従来の技術】記録媒体からデータを読み出し転送する
際には、さまざまな要因によりデータにエラーが発生す
る場合がある。これらの要因を大別すると、データを格
納するメモリ素子に起因するエラーと、データ伝送時に
伝送経路で発生するエラーとがある。不揮発性半導体メ
モリ、特にフラッシュメモリにおいては、前者の場合が
多く、特にメモリのリテンションエラーが問題となる。
2. Description of the Related Art When data is read from a recording medium and transferred, an error may occur in the data due to various factors. These factors can be roughly classified into an error caused by a memory element storing data and an error occurring on a transmission path during data transmission. In the case of a non-volatile semiconductor memory, particularly a flash memory, the former is often the case, and particularly, a retention error of the memory becomes a problem.

【0003】以下、リテンションエラーについて説明す
る。それに先立って、まず最初に、図17を用いてフラ
ッシュメモリ素子の構造について説明する。図17はフ
ラッシュメモリの構造を示す模式図である。図のフラッ
シュメモリ素子において、データの書込みは、浮遊ゲー
ト1700への電荷の注入あるいは、浮遊ゲート170
0からの電荷の引き抜きでおこなう。そしてデータの読
み取りは、ソース1701とドレイン1702の間に定
電圧をかけた状態で、コントロールゲート1703に電
圧をかけ、流れたドレイン電流を電圧値に変換しておこ
なう。ここでドレイン1702−ソース1701間に電
流が流れるためのコントロールゲート電圧のスレッシュ
ホールド値Vthを図18に示す。
Hereinafter, the retention error will be described. Prior to that, the structure of the flash memory device will be described first with reference to FIG. FIG. 17 is a schematic diagram showing the structure of the flash memory. In the flash memory device shown in the figure, data writing is performed by injecting charges into the floating gate 1700 or by using the floating gate 170.
This is performed by extracting charges from zero. Data reading is performed by applying a voltage to the control gate 1703 with a constant voltage applied between the source 1701 and the drain 1702, and converting the flowing drain current into a voltage value. FIG. 18 shows a threshold value Vth of the control gate voltage for allowing a current to flow between the drain 1702 and the source 1701.

【0004】図18はフラッシュメモリのコントロール
ゲート電圧とドレイン電流の特性図であり、横軸にコン
トロールゲート電圧Vccを、縦軸にドレイン電流Id
を示す。図に示すように、このスレッシュホールド値は
浮遊ゲート中の電荷の有無により変化する。このVth
の違いをドレイン電流から判断する事によりデータ値を
読み出している。ここで、リテンションエラーとは、経
年変化によって浮遊ゲートから電荷が抜け落ちることに
よりVthが変化する現象をいい、一定の時間が経過す
ると、メモリ素子のデータ読み取りエラー率が急激に増
加するという特性がある。
FIG. 18 is a characteristic diagram of the control gate voltage and the drain current of the flash memory. The horizontal axis represents the control gate voltage Vcc, and the vertical axis represents the drain current Id.
Is shown. As shown in the figure, this threshold value changes depending on the presence or absence of charges in the floating gate. This Vth
The data value is read by judging the difference from the drain current. Here, the retention error refers to a phenomenon in which Vth changes due to electric charge falling out of the floating gate due to aging, and has a characteristic that after a certain period of time, the data reading error rate of the memory element rapidly increases. .

【0005】そこで従来、特開平3−5995号公報に
記載されているように、フラッシュメモリを用いたディ
ジタル情報記憶再生装置(以下、ファイルシステムと言
う)においては、メモリからのデータ読み取りを高信頼
化させるため、フラッシュメモリチップ内に誤り訂正符
号(Error Correct Code、以下EC
Cと略記する)回路を搭載してデータエラー検出、及び
エラー訂正のための冗長データを付加した上で、データ
をECCに変換して記録し、メモリ素子からデータを読
み出すときには読み出したECCを用いてデータエラー
を検出/訂正する手法が用いられている。
Conventionally, as described in Japanese Patent Application Laid-Open No. 3-5995, a digital information storage / reproducing apparatus (hereinafter, referred to as a file system) using a flash memory can read data from the memory with high reliability. Error correction code (hereinafter referred to as EC) in a flash memory chip.
After adding redundant data for data error detection and error correction, the data is converted to ECC and recorded, and when reading data from the memory element, the read ECC is used. A method of detecting / correcting a data error is used.

【0006】ここで、このようなシステムで用いられる
ECCは主として組織符号となる巡回符号が用いられて
いる。以下、巡回符号と組織符号について説明する。最
初に数1、数2を用いて巡回符号の定義を示す。
[0006] Here, as an ECC used in such a system, a cyclic code serving as a systematic code is mainly used. Hereinafter, the cyclic code and the systematic code will be described. First, the definition of the cyclic code is shown using Equations 1 and 2.

【0007】[0007]

【数1】 (Equation 1)

【0008】[0008]

【数2】 (Equation 2)

【0009】(数1)、(数2)において、nは最大限
取りうる符号長である。符号長nの符号語wの各成分を
巡回置換した符号語w’は再び符号語となることであ
る。ここでは、符号語wの各成分を左に1つずつシフト
し、左端の成分を右端の成分にする、左巡回置換を行っ
ている。ある符号語wが巡回符号となるための必要条件
は、符合語wがG(x)の倍多項式、すなわちA(x)
をxの多項式とすると、以下の(数3)で示される。 w=A(x)G(x)・・・(数3) G(x)はデータを符号化するための多項式で、符号語
生成多項式という。符号長nの巡回符号に含まれる0で
ない符号語多項式の中で次数が最小になる多項式であ
る。巡回符号は、また同時に組織符号とする事もでき
る。組織符号とは冗長部と情報部が分離されて構成され
ている符号である。
In (Equation 1) and (Equation 2), n is the maximum possible code length. The code word w 'obtained by cyclically replacing each component of the code word w having the code length n is to be a code word again. Here, left cyclic permutation is performed in which each component of the codeword w is shifted one by one to the left, and the leftmost component is changed to the rightmost component. The necessary condition for a certain code word w to be a cyclic code is that the code word w is a polynomial of G (x), that is, A (x)
Is a polynomial of x, and is represented by the following (Equation 3). w = A (x) G (x) (Equation 3) G (x) is a polynomial for encoding data, and is referred to as a codeword generation polynomial. This is a polynomial whose degree is the minimum among non-zero codeword polynomials included in the cyclic code having a code length n. The cyclic code can also be a systematic code at the same time. The systematic code is a code in which a redundant part and an information part are configured separately.

【0010】以下、組織符号の構成方法について示す。
符号語生成多項式G(x)は(数4)式で表わされる。
Hereinafter, a method of configuring a systematic code will be described.
The codeword generation polynomial G (x) is represented by (Equation 4).

【0011】[0011]

【数4】 (Equation 4)

【0012】この式において、αは原始多項式の根を、
2tは冗長記号長を、tは訂正能力を示す。
In this equation, α is the root of a primitive polynomial,
2t indicates a redundant symbol length, and t indicates a correction capability.

【0013】また、情報データを係数に持つ情報記号多
項式M(x)は(数5)式で表わされる。
An information symbol polynomial M (x) having information data as coefficients is represented by the following equation (5).

【0014】[0014]

【数5】 (Equation 5)

【0015】ここで、kはデータ長(バイト)を表わ
す。G(x)の次数はECCのシンボル誤り訂正能力に
対応し、訂正能力をtシンボルとすると、G(x)の次
数は2t次以上となる。シンボルとは誤り訂正単位で、
符号によりビットの場合と、数ビットから構成されるビ
ット列の場合がある。例として、tシンボル誤り訂正可
能なECCを考える。G(x)の次数を2tとする。
Here, k represents a data length (byte). The order of G (x) corresponds to the symbol error correction capability of the ECC. If the correction capability is t symbols, the order of G (x) is 2t or higher. A symbol is an error correction unit.
There are a case of a bit depending on the code and a case of a bit string composed of several bits. As an example, consider an ECC that can correct for t symbol errors. The order of G (x) is 2t.

【0016】M(x)にxの(G(x)の次数−1)乗
をかけG(x)で割った時の商と余りをそれぞれQ
(x)、R(x)とし、nを最大符号長、rを冗長シン
ボル数、kを情報記号長とすると、M(x)×xの2t
−l乗はQ(x)G(x)+R(x)で表わされるた
め、余りR(x)は(数6)のように表わされる。
M (x) is multiplied by the power of x (the order of G (x) -1), and the quotient and remainder when divided by G (x) are Q
(X), R (x), n is the maximum code length, r is the number of redundant symbols, and k is the information symbol length, 2t of M (x) × x
Since the −l power is represented by Q (x) G (x) + R (x), the remainder R (x) is represented by (Equation 6).

【0017】[0017]

【数6】 (Equation 6)

【0018】(数6)において、R(x)の次数は(2
t−1)次以下となる。ここで、W(x)を(数7)の
ようにおくと、(数7)はG(x)の倍多項式となり、
巡回符号となる。
In (Equation 6), the order of R (x) is (2
t-1) The following is obtained. Here, if W (x) is set as in (Equation 7), (Equation 7) becomes a polynomial of G (x),
It becomes a cyclic code.

【0019】[0019]

【数7】 (Equation 7)

【0020】但し、ビット演算では、A+B=A−Bで
ある。
However, in the bit operation, A + B = AB.

【0021】このとき、W(x)の係数は、(数8)にな
り、情報データ部と冗長データ部が分離された符号にな
る。W(x)の係数部を高次から順に並べた配列は(数
8)で示される。
At this time, the coefficient of W (x) becomes (Equation 8), which is a code in which the information data part and the redundant data part are separated. An array in which the coefficient parts of W (x) are arranged in order from the higher order is represented by (Equation 8).

【0022】[0022]

【数8】 (Equation 8)

【0023】しかし、実際のファイルシステムでは最大
符号長nよりも、情報記号長kと冗長記号長2tの和lが
小さい場合が多い。例えばtシンボル誤り訂正ECCの
場合、(n-l)シンボルが符号として使用されないことに
なる。
However, in an actual file system, the sum 1 of the information symbol length k and the redundant symbol length 2t is often smaller than the maximum code length n. For example, in the case of a t-symbol error correction ECC, (n-1) symbols are not used as codes.

【0024】次に、組織符号の構成の変更方法について
示す。この時使用されない部分は、W(x)において係
数が0であると考えれば、符号構成は、(数9)のよう
になる。
Next, a method of changing the configuration of the systematic code will be described. If the coefficient not used in this case is considered to be 0 in W (x), the code configuration is as shown in (Equation 9).

【0025】[0025]

【数9】 (Equation 9)

【0026】従って、ECC回路での符号の構成は図1
9で示すようになる。
Therefore, the configuration of the code in the ECC circuit is shown in FIG.
As shown in FIG.

【0027】図19は周期nシンボルの符号における符
号未使用部、情報部、冗長部を示す模式図である。図に
おいて、61はn−(k+2t)すなわちn−lシンボル
の符号未使用部、62はkシンボルの情報部、63は2
tシンボルの冗長部である。このECC回路で構成され
る符号の内、実際に符号として記録される係数部分は図
19の矢印で示されている情報部62及び冗長部63の
部分になる。
FIG. 19 is a schematic diagram showing a code unused portion, an information portion, and a redundant portion in a code having a period of n symbols. In the figure, reference numeral 61 denotes n- (k + 2t), that is, a code unused portion of n-1 symbols, 62 denotes an information portion of k symbols, and 63 denotes 2
This is a redundant part of t symbols. Among the codes configured by the ECC circuit, the coefficient part actually recorded as the code is the information part 62 and the redundant part 63 indicated by arrows in FIG.

【0028】図20は組織符号の符号化時及び出力時の
タイミングチャートであり、図20(a)はECC回路
での復号時の誤り検出及び誤り訂正処理のタイミングチ
ャートであり、図20(b)は誤り訂正された情報の出
力時のタイミングチャートである。図20(a)に示す
ように、ECC回路でkバイトの情報部62から冗長部
63が生成される。1バイトの演算に1クロックかかると
するとクロック必要となる。図20(b)に示すよう
に、冗長部63が生成されている間、ECC回路からは
同じタイミングで情報部62のデータが出力され、その
後生成された冗長部63が出力される。
FIG. 20 is a timing chart at the time of encoding and outputting the systematic code, and FIG. 20A is a timing chart of error detection and error correction processing at the time of decoding by the ECC circuit. () Is a timing chart at the time of outputting error-corrected information. As shown in FIG. 20A, a redundant section 63 is generated from a k-byte information section 62 by an ECC circuit. If it takes one clock for one byte operation, a clock is required. As shown in FIG. 20B, while the redundant section 63 is being generated, the data of the information section 62 is output from the ECC circuit at the same timing, and then the generated redundant section 63 is output.

【0029】組織符号には誤り訂正能力や誤り訂正単位
の違いから、ハミング符号、BCH符号、リードソロモ
ン(Reed Solomon:以下RSと記す)符号
等がある。従来半導体メモリでは、特開平3-5995号公報
や、1996シンボジウムオン アイトリプルイー、ヴ
ィエルエスアイ サーキッツ ダイジェスト オブ テクニ
カル ペーパーズ(Symposium on IEE
E VLSI Circuits Digest of
Technical Papers PP74−7
5)に記載されているように、組織符号のなかでも誤り
訂正単位がビットであるSEC(Single Err
or Correctable )符号やSEC−DE
D(Double Error Detectabl
e)符号、BCH(Bose Chaudhuri H
ocquenghem)符号が用いられている。
The systematic codes include a Hamming code, a BCH code, a Reed Solomon (hereinafter, referred to as RS) code, and the like, depending on the difference in error correction capability and error correction unit. Conventional semiconductor memories are disclosed in Japanese Unexamined Patent Application Publication No. 3-5995, 1996 Symposium on I Triple E, and SSI Circuits Digest of Technical Papers (Symposium on IEEE).
E VLSI Circuits Digest of
Technical Papers PP74-7
As described in 5), SEC (Single Err) in which the error correction unit is a bit among the systematic codes.
or Correctable) code or SEC-DE
D (Double Error Detectable)
e) Code, BCH (Bose Chaudhuri H)
ocquenghem) code.

【0030】一方、デジタルカメラや携帯情報端末など
のシステムでは、比較的大きい(数百バイト以上)のデ
ータを一括して処理することが多い。このようなファイ
ルシステムではデータの取り扱いの最小単位がバイト
(8ビット)となることが多く、データ誤りもバースト
エラーが多いため、誤り訂正の最小単位が1ビットであ
るBCH符号に対して、誤り訂正の最小単位がシンボル
(複数ビット)であるリードソロモン符号のほうが、符
号効率が良くなる。従来は半導体メモリチップ外部のコ
ントローラ内に誤り訂正符号回路を設け、メモリとのデ
ータ読み出し/書込み(Read/Write 以下
R/Wと記す)の際にデータをRS符号化していた。
On the other hand, in systems such as digital cameras and portable information terminals, relatively large (several hundred bytes or more) data are often processed collectively. In such a file system, the minimum unit of data handling is often a byte (8 bits), and data errors often have burst errors. A Reed-Solomon code in which the minimum unit of correction is a symbol (a plurality of bits) has higher code efficiency. Conventionally, an error correction code circuit is provided in a controller outside a semiconductor memory chip, and data is RS-coded when reading / writing data from / to a memory (hereinafter referred to as R / W).

【0031】従来のフラッシュメモリではメモリ1素子
に対し、1ビットを対応させていた。このため情報記憶
に必要なVthは1素子あたり2つであり、Vth間の
間隔を充分にとることが出来た。しかし近年、フラッシ
ュメモリを用いたファイルシステムに対する大容量化、
低コスト化の要求から、1素子に対して2ビット以上を
対応させる必要性が出てきた。このことは情報記憶のた
めに必要なVthが1素子あたり4つ以上になることを
示す。このため各Vth間の間隔は狭くなり、メモリ素
子からのデータ読み出しエラーは必然的に増加する。
In the conventional flash memory, one bit corresponds to one memory element. For this reason, Vth required for information storage is two per element, and a sufficient interval between Vth can be obtained. However, in recent years, the capacity of file systems using flash memory has increased,
Due to the demand for cost reduction, it has become necessary to make two or more bits correspond to one element. This indicates that Vth required for information storage is four or more per element. For this reason, the interval between the respective Vths becomes narrow, and the data read error from the memory element necessarily increases.

【0032】また、素子不良によりVthが固定された
場合は、1素子に2ビット誤りが発生する場合もある。
このためメモリチップ内部に巡回符号であるECC回路
を持つ従来例の場合、SEC符号、SEC−DED符
号、BCH符号では満足なビット信頼率が得られなくな
ることが予想される。またデジタルカメラや携帯情報端
末などのシステムでは、映像データ等の相関性のあるデ
ータを扱う事が多いため、エラー訂正ができない場合で
も、誤訂正を行うよりはエラー検出に基づいて誤り補正
等の処理を行うほうがよい場合もある。
When Vth is fixed due to a defective element, a two-bit error may occur in one element.
Therefore, in the case of the conventional example having an ECC circuit that is a cyclic code inside the memory chip, it is expected that a satisfactory bit reliability cannot be obtained with the SEC code, the SEC-DED code, and the BCH code. Also, systems such as digital cameras and personal digital assistants often handle correlated data such as video data, so even when error correction cannot be performed, error correction based on error detection rather than error correction is performed. In some cases, it is better to perform the processing.

【0033】[0033]

【発明が解決しようとする課題】以上のような用途に用
いる半導体メモリにおいてデータを符号化する場合、誤
り訂正能力だけでなく誤り検出(Error Dete
ct:以下、EDと言う。)能力も高い符号を使う事が
望ましい。また、メモリチップ内部へ巡回符号であるE
CC回路を搭載する場合問題になるのは、回路規模、デ
ータの復号時間、復号時の利便性の三点である。
When encoding data in a semiconductor memory used for the above-mentioned applications, not only error correction capability but also error detection (Error Dete
ct: Hereinafter, it is called ED. It is desirable to use codes that have high capabilities. Also, a cyclic code E is inserted into the memory chip.
When a CC circuit is mounted, three problems are the circuit scale, the data decoding time, and the convenience in decoding.

【0034】第一に、回路規模の問題について述べる。
これはECCの符号化方法、及び復号方法と大きく関係
する。最初に巡回符号ECCの復号方法について示す。
受信語Y(x)は、送信語W(x)と誤り多項式E
(x)の和で表される。すなわち、(数10)に示され
るようになる。 Y(x)=W(x)+E(x)……(数10) ここでAmodBは、AをBで割った時の剰余を表すと
すると、もしE(x)=0ならばY(x)modG
(x)は0となる。すなわち、(数11)の通りにな
る。
First, the problem of the circuit scale will be described.
This largely relates to the encoding method and the decoding method of the ECC. First, a method for decoding the cyclic code ECC will be described.
The received word Y (x) is obtained by combining the transmitted word W (x) with the error polynomial E
(X). That is, it becomes as shown in (Equation 10). Y (x) = W (x) + E (x) (Equation 10) Here, if AmodB represents the remainder when A is divided by B, if E (x) = 0, Y (x) ) ModG
(X) becomes 0. That is, (Expression 11) is obtained.

【0035】 Y(x) mod G(x)=W(x) mod G(x) =Q(x)G(x) mod G(x) =0 ・・・(数11) ここで、もしE(x)≠0ならば、Y(x) modG
(x)はE(x) mod G(x)になる。すなわち Y(x)modG(x)=(W(x)+E(x)) mod G(x) =(Q(x)G(x)+E(x)) mod G(x) = E(x) mod G(x)・・・(数12) また、(数12)は(数13)の通りになる。 Y(x) mod G(x)=S(x) ・・・(数13) (数13)はシンドロームと呼ばれ、符号の誤り位置i
及び誤りパターンEpiの情報を含んでいる。これより
誤り位置、誤りパターンを検索する方法を示す。例とし
て1シンボル訂正可能なECCを考える。冗長シンボル
を2tシンボルとすると、符号語生成多項式G(x)は
(数14)の通りになる。
Y (x) mod G (x) = W (x) mod G (x) = Q (x) G (x) mod G (x) = 0 (Equation 11) where E If (x) ≠ 0, Y (x) mod G
(X) becomes E (x) mod G (x). That is, Y (x) mod G (x) = (W (x) + E (x)) mod G (x) = (Q (x) G (x) + E (x)) mod G (x) = E (x) mod G (x) (Equation 12) Further, (Equation 12) becomes as (Equation 13). Y (x) mod G (x) = S (x) (Equation 13) (Equation 13) is called a syndrome, and a code error position i
And error pattern Epi information. A method for searching for an error position and an error pattern will now be described. As an example, consider an ECC that can correct one symbol. If the redundant symbols are 2t symbols, the codeword generating polynomial G (x) is as shown in (Equation 14).

【0036】[0036]

【数14】 [Equation 14]

【0037】この時受信符号Y(x)に発生した1シン
ボル誤りを誤り多項式E(x)で示すと(数15)に示
すようになる。したがって、シンドロームS(x)は
(数16)の通りになり、誤り位置の情報xiと誤りパ
ターンEpiからなる単項式になる。また、巡回符号の
特性から(数17)が成り立つ。
At this time, a one-symbol error occurring in the received code Y (x) is represented by (Equation 15) when represented by an error polynomial E (x). Therefore, the syndrome S (x) is as shown in (Equation 16), and is a monomial composed of the error position information xi and the error pattern Epi. (Equation 17) holds from the characteristics of the cyclic code.

【0038】[0038]

【数15】 (Equation 15)

【0039】[0039]

【数16】 (Equation 16)

【0040】[0040]

【数17】 [Equation 17]

【0041】以上の関係が成り立つので、シンドローム
S(x)にxのべき乗を順にかけていくとxのべき数が
(数17)の条件を満たすようにシンドロームS(x)
にxのべき乗を掛けたときの(数16)の値は、(数1
8)のようになりxの2乗およびxの係数は0、定数項
に誤りパターンEpiが現われる。
Since the above relationship is established, the syndrome S (x) is multiplied by the power of x so that the exponent of x satisfies the condition of (Equation 17).
Is multiplied by a power of x, the value of (Equation 16) is (Equation 1)
8), the square of x and the coefficient of x are 0, and an error pattern Epi appears in the constant term.

【0042】xの2乗およびxの係数の0を検出するこ
とで、誤り位置iと誤りパターンEpiを検出する事が
できる。
By detecting the square of x and the coefficient 0 of x, the error position i and the error pattern Epi can be detected.

【0043】[0043]

【数18】 (Equation 18)

【0044】一方受信語Y(x)に2シンボル以上の誤
りがある場合は誤り訂正はできず、誤訂正をしてしまう
場合と、誤り検出ができる場合とがある。誤り検出がで
きる場合とはS(x)≠0であって、xのべき乗をシン
ドロームS(x)に順に掛けていった時、xの符号長乗
まで掛け算をおこなっても(数18)の条件をを満たさ
ない場合である。1シンボル訂正の場合、符号化回路と
復号回路で符号語生成多項式G(x)の割り算回路を共
用する事ができ、回路規模は小さくて済むという利点が
ある。しかし誤り訂正能力が2以上になると上記のアル
ゴリズムは使えなくなる。したがって符号化回路と復号
回路がそれぞれ必要になり、回路規模は急激に増加す
る。
On the other hand, if the received word Y (x) has an error of two or more symbols, the error cannot be corrected, and there are cases where the error is corrected and cases where the error can be detected. The case where an error can be detected is S (x) ≠ 0. When the power of x is multiplied by the syndrome S (x) in sequence, even if the multiplication is performed up to the power of the code length of x, (Equation 18) This is the case where the condition is not satisfied. In the case of one-symbol correction, the encoding circuit and the decoding circuit can share the division circuit of the codeword generation polynomial G (x), and there is an advantage that the circuit scale can be reduced. However, when the error correction capability becomes 2 or more, the above algorithm cannot be used. Therefore, an encoding circuit and a decoding circuit are required respectively, and the circuit scale increases rapidly.

【0045】第二にデータの復号時間の問題について説
明する。巡回符号の復号時間は、シンドロームS(x)
生成時間+誤り訂正/検出時間となる。例として、1シ
ンボル訂正可能なRS符号について考える。最初にシン
ドロームS(x)生成時間について説明する。シンドロ
ームS(x)は(数12)、(数13)から、符号化回路
に受信語(受信符号)Y(x)を入力する事で得られ
る。必要時間は符号長lクロックとする。S(x)=0
ならば、受信符号に誤りが無い事を示す。S(x)≠0
のとき誤り訂正/検出処理を行う。
Second, the problem of data decoding time will be described. The decoding time of the cyclic code is the syndrome S (x)
Generation time + error correction / detection time. As an example, consider an RS code that can correct one symbol. First, the syndrome S (x) generation time will be described. The syndrome S (x) is obtained by inputting the received word (received code) Y (x) to the encoding circuit from (Equation 12) and (Equation 13). The required time is 1 clock of code length. S (x) = 0
If so, it indicates that there is no error in the received code. S (x) ≠ 0
At this time, error correction / detection processing is performed.

【0046】次に誤り訂正/検出時間について説明す
る。誤り検出を行うためには、(数9)において符合語
W(x)の係数が0の部分、すなわち図19において符
号として使用されない(n−(k+2t))シンボルの
符号未使用部分61についても誤り検索を行わなければ
ならない。
Next, the error correction / detection time will be described. In order to perform error detection, the part where the coefficient of the code word W (x) is 0 in (Equation 9), that is, the code unused part 61 of the (n− (k + 2t)) symbol that is not used as a code in FIG. An error search must be performed.

【0047】これはシンドロームS(x)にxのべき乗
を順に掛けていかなければならないためである。従って
検索時間はnクロックとなり、シンドローム生成時間と
あわせた全復号時間は(k+2t)+nクロック、すなわ
ちl(翻訳注:エル)+nクロックとなる。n−(k+
2t)シンボルの0入力部が情報記号kシンボルに比べ
て大きい場合、実際に記録する符号に対して復号時間オ
ーバーヘッドは非常に大きくなる。
This is because the syndrome S (x) must be multiplied by a power of x in order. Therefore, the search time is n clocks, and the total decoding time including the syndrome generation time is (k + 2t) + n clocks, that is, 1 (translation note: L) + n clocks. n- (k +
2t) If the 0 input part of the symbol is larger than the information symbol k symbol, the decoding time overhead becomes very large for the code to be actually recorded.

【0048】第三に復号時の利便性について述べる。オ
ンチップECC回路の場合、外部からのデータ読み出し
制御信号は情報記号数kクロックである場合がある。
Third, convenience at the time of decoding will be described. In the case of an on-chip ECC circuit, the data read control signal from the outside may be k clocks of information symbols.

【0049】図21は復号時の誤り検出及び誤り訂正の
従来のタイミングチャートであり、図21(a)はEC
C回路での復号時の誤り検出及び誤り訂正処理のタイミ
ングチャートを示し、図21(b)は誤り訂正された情
報の出力時のタイミングチャートを示す。図21(a)
から明らかなように、従来あるような情報部+冗長部の
構成を持つ組織符号では、kシンボルの情報部62の誤
り訂正/検出処理終了後、更に2tシンボルの冗長部6
3分まで演算をおこなうことで誤り訂正有無の判定を行
い、誤り有りの場合には、符号未使用部分61をn−l
分だけ空回(0を入力して回す)した後、情報部62の
誤り訂正/検出処理を行い、誤り検出情報を出力する。
このため、図21(b)に示すように、誤り訂正/検出
処理と情報データ64の出力を同時に行う場合、誤り検
出情報はデータ出力終了後2tクロック後に出力され
る。つまり外部ユーザーはkシンボルのデータ64の出
力の後、2tクロック待たないと誤り検出情報を得る事
ができない。このため外部ユーザーには、例えばデータ
読み出し信号出力後、2tクロック待ってから誤り補正
等の処理を開始するようなプログラムが必要となり、E
CC回路の搭載により外部ユーザー側に負担をかけてし
まうことがある。
FIG. 21 is a conventional timing chart of error detection and error correction at the time of decoding, and FIG.
FIG. 21B is a timing chart of error detection and error correction processing at the time of decoding in the C circuit, and FIG. 21B is a timing chart of output of error-corrected information. FIG. 21 (a)
As is clear from the above, in the conventional systematic code having the configuration of the information section + redundant section, after the error correction / detection processing of the information section 62 of k symbols is completed, the redundant section 6 of 2t symbols is further processed.
By performing an operation up to 3 minutes, it is determined whether or not there is an error correction.
After the idle time (turn by inputting 0), the error correction / detection processing of the information section 62 is performed, and error detection information is output.
Therefore, as shown in FIG. 21B, when the error correction / detection processing and the output of the information data 64 are performed simultaneously, the error detection information is output 2t clocks after the data output is completed. In other words, the external user cannot obtain the error detection information without waiting for 2t clocks after the output of the data 64 of k symbols. Therefore, the external user needs, for example, a program that starts processing such as error correction after waiting for 2t clocks after outputting the data read signal.
Mounting a CC circuit may place a burden on external users.

【0050】上記のように従来技術においては記憶素子
の多値化による素子の多ビット誤りの問題がある。更
に、メモリチップ内部へ巡回符号であるECC回路を搭
載する場合、第一に回路規模が大きくなるという問題、
第二に、データの復号時間が長くなるという問題、第三
に復号時の利便性の問題である。
As described above, in the prior art, there is a problem of multi-bit errors in elements due to multi-valued storage elements. Furthermore, when an ECC circuit that is a cyclic code is mounted inside a memory chip, first, the circuit scale becomes large.
Secondly, there is a problem that the decoding time of data is long, and thirdly, there is a problem of convenience in decoding.

【0051】本発明の目的はデータを符号化する場合、
記憶装置に適した誤り訂正能力を持つ符号を使用した記
憶再生装置及び誤り訂正方法を提供する事にある。本発
明の他の目的は符号化回路と復号回路の少なくとも一部
を供用化する事ができる記憶再生装置及び誤り訂正方法
を提供する事にある。本発明の更に他も目的はデータの
復号時間、誤り訂正及び検出時間を短縮する事ができる
記憶再生装置及び誤り訂正方法を提供する事にある。本
発明の更に他の目的はデータ出力と誤り検出情報を同時
に出力する事ができる記憶再生装置及び誤り訂正方法を
提供する事にある。
An object of the present invention is to encode data,
An object of the present invention is to provide a storage / reproducing apparatus and an error correction method using a code having an error correction capability suitable for a storage apparatus. It is another object of the present invention to provide a storage / reproducing apparatus and an error correction method which can use at least a part of an encoding circuit and a decoding circuit. Still another object of the present invention is to provide a storage / reproducing apparatus and an error correction method capable of shortening data decoding time, error correction and detection time. Still another object of the present invention is to provide a storage / reproduction device and an error correction method capable of simultaneously outputting data output and error detection information.

【0052】[0052]

【課題を解決するための手段】本発明の目的を達成する
ために、本発明による記憶再生装置は、メモリを内蔵し
たメモリチップと、前記メモリチップの内側に記憶対象
の情報データを誤り訂正符号化し、かつ誤り訂正符号を
生成する内部誤り訂正符号回路を設け、前記内部誤り訂
正符号回路は前記メモリより読み出した誤り訂正符号を
用いて前記の誤り訂正符号を復号する。前記内部誤り訂
正符号化回路は前記情報データを誤り訂正符号化する符
号化回路と、前記誤り訂正符号化された情報データを復
号する復号回路とを備える。また、好ましくは、前記符
号化回路と前記復号回路とは共用される。
In order to achieve the object of the present invention, a storage / playback apparatus according to the present invention comprises a memory chip having a built-in memory, and an information correction code for storing information data to be stored inside the memory chip. And an internal error correction code circuit for generating an error correction code. The internal error correction code circuit decodes the error correction code using the error correction code read from the memory. The internal error correction encoding circuit includes an encoding circuit that performs error correction encoding of the information data, and a decoding circuit that decodes the error correction encoded information data. Preferably, the encoding circuit and the decoding circuit are shared.

【0053】この記憶再生装置において、前記内部誤り
訂正符号回路は、誤り訂正符号復号時の演算結果を逐次
複数ビット割り算する割り算器と、割り算結果が一定の
用件を満たした場合、誤り訂正を行うための手段と、符
号長長さのデータ入力時間で、データの復号を終了させ
る手段と、入力されたデータの復号が全て終了しても割
り算結果が一定の用件を満たさない場合には、外部回路
に誤り検出情報を出力する手段とを備える。前記割り算
器は複数の割り算回路から構成され、前記誤り訂正手段
は前記複数の割り算回路の結果が同じ場合に誤り訂正を
行うための検出器とNOR回路とから構成され、前記誤
り情報出力手段は前記NOR回路の出力が1になった場
合に誤り情報を出力する。
In this storage / reproducing apparatus, the internal error correction code circuit includes a divider for sequentially dividing a plurality of bits of an operation result at the time of error correction code decoding, and an error correction circuit when the division result satisfies a certain requirement. A means for performing the decoding, a means for terminating the decoding of the data in the data input time of the code length, and a method in which the division result does not satisfy a certain requirement even if the decoding of all the inputted data is completed. Means for outputting error detection information to an external circuit. The divider is composed of a plurality of division circuits, the error correction means is composed of a detector and a NOR circuit for performing error correction when the results of the plurality of division circuits are the same, and the error information output means is When the output of the NOR circuit becomes 1, error information is output.

【0054】また、前記内部誤り訂正符号回路は誤り訂
正回路と、誤り訂正符号復号時に前記誤り訂正回路の演
算結果を情報データに付加した冗長ビット分だけ保持し
ておく手段とを備え、データ出力を情報データに付加し
た冗長分だけ、前記誤り訂正回路の演算開始より遅延し
て出力する事により、前記誤り訂正回路の演算終了と、
復号されたデータの出力を同時に終了させる。好ましく
は、前記冗長ビット保持手段はバッファから構成され
る。また、前記内部誤り訂正符号回路は、誤り訂正符号
の符号化時に、使用される符号長に応じて定まる特定の
回数だけ、特定の値を入力して、情報データと冗長ビッ
ト部を含む誤り訂正符号の符号構成を変化させる。前記
特定の値は0である。好ましくは、誤り訂正符号の符号
化時に、使用される符号長に応じて定まる特定の回数だ
け、符号化回路に特定の値を入力し、冗長ビットが情報
データの前に置かれるように誤り訂正符号を構成する。
Further, the internal error correction code circuit includes an error correction circuit, and means for holding the operation result of the error correction circuit for the number of redundant bits added to the information data at the time of error correction code decoding. By adding a redundancy to the information data and outputting the data delayed from the start of the operation of the error correction circuit, the end of the operation of the error correction circuit,
The output of the decrypted data is terminated at the same time. Preferably, the redundant bit holding means comprises a buffer. Further, the internal error correction code circuit inputs a specific value a specific number of times determined according to a code length to be used at the time of encoding the error correction code, and performs error correction including information data and a redundant bit portion. Change the code configuration of the code. The specific value is 0. Preferably, at the time of encoding the error correction code, a specific value is input to the encoding circuit a specific number of times determined according to the code length used, and error correction is performed so that redundant bits are placed before information data. Configure the code.

【0055】前記内部誤り訂正符号回路で冗長ビットと
情報データとを訂正符号化する手段と、誤り訂正符号復
号時に前記冗長ビットの演算結果を情報データより先に
行う手段とを備えることによって、前記誤り訂正符号回
路の演算終了と、復号されたデータの出力が同時に終了
するようにする。好ましくは内部誤り訂正符号回路に用
いられる誤り訂正符号はリードソロモン符号である。
The internal error correction code circuit includes means for correcting and coding redundant bits and information data, and means for performing the operation result of the redundant bits prior to the information data when decoding the error correction code. The operation of the error correction code circuit and the output of the decoded data are simultaneously terminated. Preferably, the error correction code used in the internal error correction code circuit is a Reed-Solomon code.

【0056】本発明の目的を達成するために、携帯情報
端末は、メモリを内蔵したメモリチップと、前記メモリ
チップの内側に記憶対象の情報データを誤り訂正符号化
し、かつ誤り訂正符号を生成する内部誤り訂正符号回路
を設け、前記内部誤り訂正符号回路は前記メモリより読
み出した誤り訂正符号を用いて前記の誤り訂正符号を復
号する記憶再生装置を備え、前記記憶再生装置は、デー
タの一時蓄積、及びデータの入れ替えが可能である。
In order to achieve the object of the present invention, a portable information terminal includes a memory chip having a built-in memory, and error correction coding of information data to be stored inside the memory chip, and generates an error correction code. An internal error correction code circuit is provided, the internal error correction code circuit includes a storage / reproduction device for decoding the error correction code using the error correction code read from the memory, and the storage / reproduction device is configured to temporarily store data. , And data can be exchanged.

【0057】本発明の目的を達成するために、ディジタ
ルカメラは、メモリを内蔵したメモリチップと、前記メ
モリチップの内側に記憶対象の情報データを誤り訂正符
号化し、かつ誤り訂正符号を生成する内部誤り訂正符号
回路を設け、前記内部誤り訂正符号回路は前記メモリよ
り読み出した誤り訂正符号を用いて前記の誤り訂正符号
を復号する記憶再生装置を備え、前記記憶再生装置は、
データの一時蓄積、及びデータの入れ替えが可能であ
る。
In order to achieve the object of the present invention, a digital camera includes a memory chip having a built-in memory, and an internal memory for encoding an information data to be stored inside the memory chip and for generating an error correction code. An error correction code circuit is provided, and the internal error correction code circuit includes a storage / reproduction device that decodes the error correction code using the error correction code read from the memory,
Data can be temporarily stored and data can be exchanged.

【0058】本発明の目的を達成するために、本発明の
訂正方法は、メモリを内蔵したメモリチップと、前記メ
モリチップの内側に記憶対象の情報データを誤り訂正符
号化し、かつ誤り訂正符号を生成する内部誤り訂正符号
回路とを備え、誤り訂正符号復号時に前記内部誤り訂正
符号回路の演算結果を逐次複数ビット割り算するステッ
プと、割り算結果がある一定の要件を満たした場合、前
記内部誤り訂正符号回路内で誤り訂正を行うステップ
と、入力されたデータの復号が全て終了しても割り算結
果が一定の要件を満たさない場合には、前記内部誤り訂
正符号回路外部に誤り検出情報を出力し、前記情報デー
タを復号するステップとを備える。
In order to achieve the object of the present invention, a correction method according to the present invention comprises: a memory chip having a built-in memory; an error correction code for information data to be stored inside the memory chip; An internal error correction code circuit for generating the error correction code, and sequentially dividing the operation result of the internal error correction code circuit by a plurality of bits at the time of error correction code decoding; and Performing error correction in the encoding circuit, and outputting error detection information to the outside of the internal error correction encoding circuit if the division result does not satisfy certain requirements even when decoding of all input data is completed. Decoding the information data.

【0059】また、他の本発明の目的を達成するための
本発明の訂正方法は、メモリを内蔵したメモリチップ
と、前記メモリチップの内側に記憶対象の情報データを
誤り訂正符号化し、かつ誤り訂正符号を生成する内部誤
り訂正符号回路とを備え、誤り訂正符号復号時に前記内
部誤り訂正符号回路の演算結果を情報データに付加した
冗長ビット分だけ保持して、情報データに付加した冗長
ビット分だけ、前記演算の開始より遅延させて出力する
ことによって、前記誤り訂正符号回路の演算終了と、復
号データの出力終了を同時に行うステップを備える。
According to another aspect of the present invention, there is provided a correction method comprising: a memory chip having a built-in memory; an error correction code for information data to be stored inside the memory chip; An internal error correction code circuit that generates a correction code, and holds the operation result of the internal error correction code circuit for the redundant bits added to the information data when decoding the error correction code, and saves the redundant bits added to the information data. The output of the error correction code circuit is delayed with respect to the start of the operation to simultaneously terminate the operation of the error correction coding circuit and the end of the output of the decoded data.

【0060】また、本発明の目的を達成するための本発
明の訂正方法は、メモリを内蔵したメモリチップと、前
記メモリチップの内側に記憶対象の情報データを誤り訂
正符号化し、かつ誤り訂正符号を生成する内部誤り訂正
符号回路とを備え、誤り訂正符号符号化時に、使用され
る符号長に応じた特定の回数だけ、符号化回路に一定値
を入力し続ることによって、情報データと冗長ビット部
の構成を変化させるステップと、誤り訂正符号復号時に
冗長ビット部の演算結果を情報データより先に行い、誤
り訂正回路の演算終了と、復号データの出力終了を同時
に行うステップとを備える。
A correction method according to the present invention for achieving the object of the present invention comprises: a memory chip having a built-in memory; an error correction code for information data to be stored inside the memory chip; And an internal error correction code circuit that generates a constant value. During error correction code coding, a constant value is continuously input to the coding circuit for a specific number of times according to the code length used, so that information data and redundancy are Changing the configuration of the bit portion; and performing the operation result of the redundant bit portion prior to the information data at the time of error correction code decoding, and simultaneously terminating the operation of the error correction circuit and terminating the output of the decoded data.

【0061】[0061]

【発明の実施の形態】本発明においては1シンボル訂正
RS符号において誤り検出能力を高くするために、1シ
ンボル訂正に必要とされるシンボル数2に冗長シンボル
を1シンボル付加し、3シンボルを付加した場合、すな
わち冗長シンボル数が2t+1の場合を用いて説明す
る。送信符号をW(x)、誤りパターンをEpi、符号
長をl、情報データ先頭からの誤り位置をiとすると、
符号語生成多項式G(x)、及び生成されるシンドローム
S(x)は、(数19)の通りとなる。
DESCRIPTION OF THE PREFERRED EMBODIMENTS In the present invention, in order to enhance the error detection capability of a one-symbol-corrected RS code, one redundant symbol is added to two symbols required for one-symbol correction, and three symbols are added. A description will be given using the case where the number of redundant symbols is 2t + 1. If the transmission code is W (x), the error pattern is Epi, the code length is 1, and the error position from the beginning of the information data is i,
The codeword generation polynomial G (x) and the generated syndrome S (x) are as shown in (Equation 19).

【0062】[0062]

【数19】 [Equation 19]

【0063】なお、S(x)は2次式である。Note that S (x) is a quadratic expression.

【0064】符号を作成する場合、ECC回路には情報
データはデータの先頭から入力されるため、データ先頭
は符号語多項式の高い次数に対応する。ECC回路をシ
フトレジスタで実現場合、剰余多項式の係数分だけラッ
チが必要になる。このラッチにシンドロームS(x)が
保持されている。(数19)をxの3次式に置き換える
と、(数20)のようになる。
When creating a code, information data is input to the ECC circuit from the beginning of the data, so that the beginning of the data corresponds to the higher order of the codeword polynomial. When the ECC circuit is implemented by a shift register, latches are required for the coefficients of the remainder polynomial. The syndrome S (x) is held in this latch. When (Equation 19) is replaced by a cubic expression of x, (Equation 20) is obtained.

【0065】[0065]

【数20】 (Equation 20)

【0066】ここで、Aは3個のラッチの内第1のラッ
チに保持されるビット列、Bは第2のラッチに保持され
るビット列、Cは第3のラッチに保持されるビット列を
示す。
Here, A indicates a bit string held in a first latch among three latches, B indicates a bit string held in a second latch, and C indicates a bit string held in a third latch.

【0067】また、以下の(数21)の値が既知である
とし、各項の係数を各々H,I,Jとする。xのべき乗数l
(翻訳注:エル)は使用される符号長で情報部のバイト
数kと冗長部のシンボル数の和k+3に等しい。
Further, it is assumed that the following values of (Expression 21) are known, and the coefficients of each term are H, I, and J, respectively. power of l
(Translation note: L) is the code length used and is equal to the sum of the number of bytes k in the information part and the number of symbols in the redundant part k + 3.

【0068】[0068]

【数21】 (Equation 21)

【0069】ECC回路において、データ0入力で1ク
ロック回す事は、ECC回路内に生成されたシンドロー
ムS(x)にxを掛ける事に相当する。従ってシンドロ
ーム計算を終了した後、0入力するか、データ入力なし
で更にiクロック回した時のラッチの値は、(数20)
と(数21)とから(数22)の通りにとなり、これは
(数21)にEpiを掛けたものに等しくなる。
In the ECC circuit, turning one clock with data 0 input is equivalent to multiplying the syndrome S (x) generated in the ECC circuit by x. Therefore, after the syndrome calculation is completed, the value of the latch when inputting 0 or turning i clocks further without data input is (Equation 20)
From (Equation 21) and (Equation 22), it becomes as shown in (Equation 22), which is equal to (Equation 21) multiplied by Epi.

【0070】[0070]

【数22】 (Equation 22)

【0071】従ってECC回路においてクロックを1回
回すごとにA/H、B/I、C/Jの値を計算すると、
誤り位置iで割り算結果が全てEpiになる。従って割
り算結果が全て一致する位置を検出し、この時の割り算
結果を出力する事で、誤り位置iと誤りパターンEpi
を得る事ができる。使用される符号長l(翻訳注:エ
ル)クロックの演算で各ラッチの割り算結果が全て一致
する位置がない場合は、誤り検出となる。
Therefore, when the values of A / H, B / I and C / J are calculated each time the clock is turned once in the ECC circuit,
All division results become Epi at the error position i. Therefore, by detecting a position where all the division results match and outputting the division result at this time, the error position i and the error pattern Epi
Can be obtained. In the calculation of the used code length l (translation note: L) clock, if there is no position where all the division results of the latches match, an error is detected.

【0072】メモリチップ内部にシンボル単位訂正EC
C回路を設けるための第三の問題を解決するために、該
シンボル単位訂正ECC回路には、情報データ出力の終
了と同時に、該シンボル単位訂正ECC回路からエラー
訂正/検出情報出力が出力されるような手段を設ける。
Symbol unit correction EC in the memory chip
In order to solve the third problem for providing the C circuit, an error correction / detection information output is output from the symbol unit correction ECC circuit to the symbol unit correction ECC circuit at the same time as the end of the information data output. Such means are provided.

【0073】第1に回路規模を増加させることなく、符
号構成を変更する事で第三の問題を解決する手段につい
て述べる。まず、符号構成の変更について説明する。
(数9)で示すように符号として使用されない部分は、
W(x)において係数が0であると考えられる。従っ
て、(数9)を(数23)で示すように、変換する。
First, means for solving the third problem by changing the code configuration without increasing the circuit scale will be described. First, a change in the code configuration will be described.
The part not used as a code as shown in (Equation 9) is
It is considered that the coefficient is 0 in W (x). Therefore, (Equation 9) is converted as shown in (Equation 23).

【0074】[0074]

【数23】 (Equation 23)

【0075】情報記号kシンボルの後に、符号化回路に
(n−l)シンボル0を入力すると、符号構成は情報デ
ータ部+符号として使用されない部分+冗長データ部と
なる。符号化時間は、n−2t−1クロックとなる。巡
回符号の特性を考えると、実際にECC回路のメモリに
記録する符号は情報部と冗長部のみを記録する。誤り検
出時には情報部、冗長部の順に検索する。誤りがある場
合には剰余が出る。この剰余をα割り算回路で割る事に
よって符号未使用部の検索を省略する事ができる。
When (n−1) symbol 0 is input to the encoding circuit after k symbols of information symbols, the code configuration is: information data portion + portion not used as code + redundant data portion. The encoding time is n-2t-1 clocks. Considering the characteristics of the cyclic code, the code actually recorded in the memory of the ECC circuit records only the information part and the redundant part. When an error is detected, the information part and the redundant part are searched in this order. If there is an error, a surplus is generated. By dividing this remainder by the α division circuit, it is possible to omit the search for the unused part.

【0076】次に復号時の処理について述べる。シンド
ローム生成時は冗長部を先に入力した後、情報部を入力
する。これはECC回路における割算は、シンボルをデ
ータ順に入力するフィードバック回路で構成されるた
め、符号化回路へのデータ入力開始が0の場合、最初の
0でない入力までは0を入力しなくても演算結果は同じ
になるからである。誤り訂正/検出処理の場合は、先に
冗長部で誤りの有無を検索してから、情報部の誤り検索
に入る。情報部の誤り検索開始と同時にデータ出力を始
めれば、情報部データ出力終了と同時に、誤り検出情報
を出力する事ができる。
Next, the decoding process will be described. When the syndrome is generated, the information part is input after the redundant part is input first. This is because the division in the ECC circuit is made up of a feedback circuit that inputs symbols in the order of data. Therefore, when data input to the encoding circuit starts at 0, it is not necessary to input 0 until the first non-zero input. This is because the operation results are the same. In the case of the error correction / detection processing, first, the presence or absence of an error is searched for in the redundant part, and then the error search of the information part is started. If the data output is started at the same time as the start of the error search of the information part, the error detection information can be output at the same time as the end of the information part data output.

【0077】第2に符号化時に時間をかけることなく、
ECC回路にデータバッファを設けて第三の問題を解決
する手段について述べる。この時の符号構成と、復号に
ついて述べる。符号の構成は従来の方式と同じく図19
のように構成する。従って符号化時間は、k+2t+1ク
ロックとなる。
Second, without taking time during encoding,
Means for solving the third problem by providing a data buffer in the ECC circuit will be described. The code configuration and decoding at this time will be described. The structure of the code is the same as that of the conventional system shown in FIG.
It is configured as follows. Therefore, the encoding time is k + 2t + 1 clocks.

【0078】次に復号時の処理について述べる。シンド
ローム生成時は、情報部を先に入力した後、冗長部を入
力する。そしてシンドローム生成後ECC回路内で演算
を冗長シンボル2t+1シンボル分先に行い、演算結果
をデータバッファに保持する。情報部出力は、シンドロ
ーム生成後、冗長部シンボル長さ分、この場合は2t+
1クロック待ってから出力を開始する。データバッファ
に保持されていたECC回路の演算結果は出力された情
報部データと順にビット和の計算が行われる。一方、デ
ータバッファにはECC回路で演算された結果が順に入
力されていく。ECC回路内の演算は冗長部シンボル分
先に行われるため、情報部データ出力の終了と同時に誤
り検出情報を得る事ができる。
Next, the decoding process will be described. When the syndrome is generated, the information part is input first, and then the redundant part is input. After the syndrome is generated, the operation is performed in the ECC circuit ahead of the redundant symbol 2t + 1 symbol, and the operation result is held in the data buffer. The information part output is equal to the length of the redundant part symbol after the syndrome is generated, in this case, 2t +
Output is started after waiting for one clock. The calculation result of the ECC circuit held in the data buffer is subjected to bit sum calculation in the order of the output information part data. On the other hand, the results calculated by the ECC circuit are sequentially input to the data buffer. Since the operation in the ECC circuit is performed ahead of the redundant part symbol, error detection information can be obtained at the same time as the end of the information part data output.

【0079】以下、本発明の実施例について、図面を用
いて説明する。図1は本発明によるデータ記憶再生装置
の一実施例を示す概念図である。本発明に係るデータの
エラー訂正方法及び装置は、記録媒体の種類によらず利
用できるものであるが、本実施例及び以下の実施例で
は、記録媒体の例としてフラッシュメモリを用いた記憶
再生装置(以下ファイルシステム)へ適用した例ににつ
いて説明する。図1において、101は記録再生装置
(以下、ファイルシステムと云う)であり、メモリチッ
プ102及びインターフェースLSI106から構成さ
れている。メモリ103はデータの記録あるいは、再生
を行う記録媒体であり、メモリチップ102はメモリ1
03と内部ECC回路104とを含むチップである。イ
ンターフェースLSI106はフラッシュメモリ103
を利用したファイルシステム101とファイルシステム
103におけるシステムバス109とのインターフェー
ス制御を行うLSIである。より具体的には、本実施形
態に係るファイルシステムは、例えば図2に示すように
構成される。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a conceptual diagram showing one embodiment of a data storage / reproduction device according to the present invention. Although the data error correction method and apparatus according to the present invention can be used regardless of the type of recording medium, in the present embodiment and the following embodiments, a storage / reproducing apparatus using a flash memory as an example of a recording medium is described. (Hereinafter referred to as a file system) will be described. In FIG. 1, reference numeral 101 denotes a recording / reproducing device (hereinafter, referred to as a file system), which comprises a memory chip 102 and an interface LSI 106. The memory 103 is a recording medium for recording or reproducing data, and the memory chip 102 is a memory 1
03 and an internal ECC circuit 104. The interface LSI 106 is a flash memory 103
This is an LSI that controls the interface between the file system 101 and the system bus 109 in the file system 103 using the. More specifically, the file system according to the present embodiment is configured, for example, as shown in FIG.

【0080】図2は図1のデータ記憶再生装置の全体構
成を示すブロック図である。図2において、メモリチッ
プ102はメモリ103と内部ECC回路104を含む
記録媒体である。インターフェースLSI106はメモ
リチップ102を使用したファイルシステム101にお
けるシステムバス109とのインターフェース制御を行
うLSIである。マイコン504はシステムバス109
を通じて送られてきた命令を解釈し、解釈結果に応じて
メモリチップ102へのデータ読み込み及び書込み(R
ead/Write 、以下R/W)、及びRAM50
5へのデータR/Wを制御する中央処理装置5041
(CPU5041)を備えたファイルシステム101の
コントローラの役割を担っている。RAM505はメモ
リチップ102のデータを、インターフェースLSI1
06内に流す際、データのバッファの役目を担う補助メ
モリである。前記各ユニットは、制御信号線、アドレス
バス、データバスによって接続されている。
FIG. 2 is a block diagram showing the overall configuration of the data storage / reproduction device of FIG. 2, a memory chip 102 is a recording medium including a memory 103 and an internal ECC circuit 104. The interface LSI 106 is an LSI that controls the interface with the system bus 109 in the file system 101 using the memory chip 102. The microcomputer 504 is connected to the system bus 109
, And reads and writes data to the memory chip 102 according to the interpretation result (R
read / write, hereinafter R / W) and RAM 50
Central processing unit 5041 for controlling data R / W to 5
(CPU 5041) plays a role of a controller of the file system 101. The RAM 505 stores data of the memory chip 102 in the interface LSI 1
It is an auxiliary memory that plays the role of a data buffer when flowing into the memory 06. Each of the units is connected by a control signal line, an address bus, and a data bus.

【0081】図2のファイルシステムの具体的な実装例
を図3に示す。図3は図2のデータ記憶再生装置のチッ
プ実装例を示す模式図である。図において、マイコン5
04はシステムバスを通じて送られてきた命令を解釈
し、解釈結果に応じてメモリチップ102へのデータ読
み込み及び書込み(Read/Write 、以下R/
W)、及びRAM505へのデータR/Wを制御する中
央処理装置(CPU)を備えたファイルシステム101
のコントローラの役割を担っている。なお、201は他
のインターフェースである。
FIG. 3 shows a specific implementation example of the file system shown in FIG. FIG. 3 is a schematic diagram showing a chip mounting example of the data storage / reproduction device of FIG. In the figure, the microcomputer 5
04 interprets an instruction sent through the system bus, and reads / writes data (Read / Write; hereinafter, R /
W) and a file system 101 including a central processing unit (CPU) for controlling data R / W to the RAM 505.
The role of the controller. Reference numeral 201 denotes another interface.

【0082】次に、メモリチップ102について図4を
用いて説明する。図4はメモリチップの全体構成を示す
構成図である。図において、メモリ103はデータの記
録あるいは再生を行う媒体、I/Oバッファ601はシ
ステムバス109を通じて送られてきたデータ、あるい
は内部ECC回路104から送られてきたデータのバッ
ファの役目を担う補助メモリである。デコーダ602は
メモリ103へのデータのR/Wを行う際にメモリ10
3上でのデータ記録あるいは再生位置を制御する。スイ
ッチ/セレクタ603はメモリ103へのデータの記録
あるいは再生時にデータの内部コントローラ604から
の制御信号に応じて、メモリ103及び内部ECC回路
104へのデータの入出力の切り替えを行う回路であ
る。内部コントローラ604はローカルデータバスを通
じて送られてきた制御信号に応じて、デコーダ602、
スイッチ/セレクタ603の制御を行う回路である。S
/A&ラッチ605はメモリ103からのデータのR/
W時にデータのバッファの役割を担う補助メモリであ
る。前記各ユニットは、制御信号線、アドレスバス、デ
ータバスによって接続されている。
Next, the memory chip 102 will be described with reference to FIG. FIG. 4 is a configuration diagram showing the overall configuration of the memory chip. In the figure, a memory 103 is a medium for recording or reproducing data, and an I / O buffer 601 is an auxiliary memory serving as a buffer for data sent through the system bus 109 or data sent from the internal ECC circuit 104. It is. The decoder 602 performs R / W of data to the memory 103 when reading / writing data from / to the memory 103.
3 to control the data recording or reproduction position. The switch / selector 603 is a circuit for switching input / output of data to / from the memory 103 and the internal ECC circuit 104 in accordance with a control signal from the internal controller 604 for data when recording or reproducing data in / from the memory 103. The internal controller 604 responds to the control signal sent through the local data bus to control the decoder 602,
This circuit controls the switch / selector 603. S
/ A & latch 605 outputs the data R /
It is an auxiliary memory that plays a role of a data buffer at the time of W. Each of the units is connected by a control signal line, an address bus, and a data bus.

【0083】データ誤り訂正、検出に用いる符号は組織
符号となるシンボル単位訂正符号であれば何を用いても
構わないが、第一の実施例として、1ECリードソロモ
ン符号を用いる。実施例では誤り検出能力を高めるため
冗長シンボルを1シンボル追加する。従って冗長シンボ
ルは2×1+1=3シンボルとなる。またデータシンボ
ル長は用いられる用途、及び一括して変換するデータ量
によって変化する。実施例では、1バイト8ビットと
し、2048+58バイト=2106バイトのデータを
一括変換するとする。用いるガロア体は以下のの条件を
満たすものならば何を用いてもよい。
As the code used for data error correction and detection, any code may be used as long as it is a symbol-based correction code which is a systematic code, but as a first embodiment, a 1EC Reed-Solomon code is used. In the embodiment, one redundant symbol is added to enhance the error detection capability. Therefore, the number of redundant symbols is 2 × 1 + 1 = 3 symbols. The data symbol length varies depending on the application used and the amount of data to be converted collectively. In the embodiment, it is assumed that 1 byte is 8 bits, and 2048 + 58 bytes = 2106 bytes of data are collectively converted. Any Galois field may be used as long as it satisfies the following conditions.

【0084】[0084]

【表1】 [Table 1]

【0085】ガロア体の条件としては種々の値を取りう
るが、1バイトが1シンボルに対応していた方が、デー
タの取り扱いが便利である。従って、この条件と、上記
のガロア体の条件から、符号のデータシンボル長は12
ビットとなる。従ってガロア体GF(p)の元の数pは
2の12乗である。最大符号長nは4095シンボルと
なる。
The Galois field condition can take various values, but it is more convenient to handle data when one byte corresponds to one symbol. Therefore, based on this condition and the above Galois field condition, the data symbol length of the code is 12
Bit. Therefore, the original number p of the Galois field GF (p) is 2 to the 12th power. The maximum code length n is 4095 symbols.

【0086】次にECC回路及び、符号化復号方法につ
いて説明する。最初にECC回路について図5を用いて
説明する。図5は本発明によるデータ記録再生装置のE
CC回路の一実施例を示すブロック図である。図におい
て、12ビット遅延フリップフロップ(以下DFF:D
elay Flip Flopと云う。)701a、7
01b、701c(以下、DFF701a〜701cを
指す場合には単に701と記載する。)は12ビットの
データを1クロック分保持し、次のクロックで出力す
る。検出回路702a、702b(総合して、検出器7
02と記載する。また、以降の各回路についても同様に
記載する。)は12ビット2入力の排他的論理和(以下
XOR)の計算をおこなう。NOR回路703は12ビ
ット2入力の否定論理和(以下NOR)の計算を行う。
第1のスイッチ704、第2のスイッチ705、第3の
スイッチ706、第5のスイッチ710は、符号化、復
号時にデータの流れを制御する。第4のスイッチ707
は復号時、NOR回路703からの信号が1の時ONに
なる。ここで、第2、第4、第5のスイッチ705、7
07、710はオン、オフスイッチであり、第1、第3
のスイッチ704、706は3点切換スイッチである。
第1のスイッチ704は中点、すなわちオフの位置(図
示せず)と、白丸の接点704aと黒丸の接点704b
を持っており、第3のスイッチ706は白丸の接点70
6aと中点(図示せず)、黒丸の接点706aを持って
いる。
Next, an ECC circuit and an encoding / decoding method will be described. First, the ECC circuit will be described with reference to FIG. FIG. 5 shows E of the data recording / reproducing apparatus according to the present invention.
FIG. 3 is a block diagram showing one embodiment of a CC circuit. In the figure, a 12-bit delay flip-flop (hereinafter DFF: D
Called elay Flip Flop. ) 701a, 7
01b and 701c (hereinafter simply referred to as 701 when referring to the DFFs 701a to 701c) hold 12-bit data for one clock and output it at the next clock. Detection circuits 702a and 702b (collectively, detector 7
02. Further, the following circuits are similarly described. ) Calculates an exclusive OR (XOR) of two 12-bit inputs. The NOR circuit 703 calculates a NOR of 12 bits and 2 inputs (hereinafter NOR).
The first switch 704, the second switch 705, the third switch 706, and the fifth switch 710 control the flow of data during encoding and decoding. Fourth switch 707
Turns on when the signal from the NOR circuit 703 is 1 during decoding. Here, the second, fourth and fifth switches 705 and 7
Reference numerals 07 and 710 denote on / off switches.
Switches 704 and 706 are three-point changeover switches.
The first switch 704 has a middle point, that is, an off position (not shown), a white circle contact 704a and a black circle contact 704b.
And the third switch 706 is a white circle contact 70
6a, a middle point (not shown), and a black circle contact point 706a.

【0087】乗算器708は乗算回路708a、708
b、708cから構成されており、符号生成多項式G
(x)に対応した係数をデータと掛け合わせる回路で、
各項の係数のべき数は、符号語生成多項式G(x)の原
始多項式g(x)と冗長シンボル数、ガロア体の元の数
によって決定される。第一の実施例の場合、
The multiplier 708 includes multiplication circuits 708a and 708
b, 708c, and the code generation polynomial G
A circuit that multiplies the coefficient corresponding to (x) with data,
The exponent of the coefficient of each term is determined by the primitive polynomial g (x) of the codeword generating polynomial G (x), the number of redundant symbols, and the number of elements of the Galois field. In the case of the first embodiment,

【0088】[0088]

【数24】 (Equation 24)

【0089】g(x)の根をαとすると、原始多項式と
はガロア体GF(2のm乗)において、周期が(根のm
乗)−1となる根を解に持つ既約多項式のことをいう。
また、符合語生成多項式G(x)の次数は符号の冗長シ
ンボル数から3となる。したがって符合語生成多項式G
(x)は(数25)の通りになる。ただしg(x)は周
期がαのm乗−1となるαを根に持つ規約多項式であ
る。 。また、符合語生成多項式G(x)の各項の係数
の決定はg(x)から得られるαのべき乗に関する関係
を用いて行うことができる(ただしビット演算ではA+
B=A−Bである)。
Assuming that the root of g (x) is α, the primitive polynomial is a Galois field GF (2 m) whose period is (root m
It means an irreducible polynomial having a root of (power) -1 as a solution.
The order of the codeword generation polynomial G (x) is 3 from the number of redundant symbols of the code. Therefore, the code word generator polynomial G
(X) is as shown in (Expression 25). Here, g (x) is a rule polynomial having a root at α whose period is α to the m-th power −1. . Further, the coefficient of each term of the code word generation polynomial G (x) can be determined by using the relation regarding the power of α obtained from g (x).
B = AB).

【0090】(数24)の根αを用いて、符合語生成多
項式G(x)を変換すると(数25)になる。
When the code word generating polynomial G (x) is converted using the root α of (Equation 24), (Equation 25) is obtained.

【0091】[0091]

【数25】 (Equation 25)

【0092】(数24)を用いて(数25)の各項の係
数を原始元のべき乗の形に変換すると、数26の通りに
なる。
When the coefficient of each term in (Equation 25) is converted to the power of the primitive element using (Equation 24), the result is as shown in Equation 26.

【0093】[0093]

【数26】 (Equation 26)

【0094】割り算器709は割り算回路709a、7
09b、709cから構成されており、12ビットDF
F701から出力されたデータを割り算する回路で、そ
のべき数は、符合語生成多項式G(x)の原始多項式g
(x)と冗長シンボル数、ガロア体と、使用される符号
長lによって決定される。
The divider 709 includes division circuits 709a, 709
09b, 709c, and a 12-bit DF
A circuit that divides the data output from F701, and whose exponent is a primitive polynomial g of the codeword generation polynomial G (x)
(X), the number of redundant symbols, the Galois field, and the code length l used.

【0095】第一の実施例の場合は符号長lが2109
シンボルとなる。従って(数21)、(数22)、(数
24)、(数26)からべき数を計算すると、符号語多項
式G(x)の各項の係数は、xの2次の係数Hがαの−
2681乗、1次の係数Iがαの−185乗、定数項の
係数Jがαの−2333乗となる。また、XOR計算回
路720〜723は12ビットのXOR計算を行う。
In the case of the first embodiment, the code length l is 2109
Become a symbol. Therefore, when the exponent is calculated from (Equation 21), (Equation 22), (Equation 24), and (Equation 26), the coefficient of each term of the codeword polynomial G (x) is expressed as follows. -
The first order coefficient I is α-185, and the constant term coefficient J is α-2333. The XOR calculation circuits 720 to 723 perform a 12-bit XOR calculation.

【0096】S/A&ラッチ605と第1のスイッチ7
04、第3のスイッチ706の間にはスイッチ/セレク
タ603(図4参照)があるが、図5の説明では機能的
に関係がないため省略した。また符号構成は(数9)、
(数23)のどちらの構成を用いてもよいが、本実施例
では冗長部をを先頭にする符号構成とする。
S / A & Latch 605 and First Switch 7
Although there is a switch / selector 603 (see FIG. 4) between the third switch 704 and the third switch 706, it is omitted in the description of FIG. The code configuration is (Equation 9),
Either of the configurations of (Equation 23) may be used, but in the present embodiment, the code configuration is such that the redundant part is at the top.

【0097】最初に符号化の方法について図6のチャー
トを用いて説明する。図6は図5に示すECC回路の符
号化の動作を説明するためのフローチャートである。図
において、ステップ801に示すようにI/Oバッファ
601に入力されたデータは第1のスイッチ704と第
3のスイッチ706を通ってS/A&ラッチ605とE
CC回路104Aの他の回路に入力される。この時第1
のスイッチ704、第3のスイッチ706はそれぞれ接
点704a、706aに接続され、第2のスイッチ70
5はON状態、第5のスイッチ710はOFF状態とな
っている。
First, the encoding method will be described with reference to the chart of FIG. FIG. 6 is a flowchart for explaining the encoding operation of the ECC circuit shown in FIG. In the figure, data input to the I / O buffer 601 passes through a first switch 704 and a third switch 706 as shown in step 801 and the S / A & latch 605 and E
It is input to another circuit of the CC circuit 104A. At this time the first
Switch 704 and the third switch 706 are connected to the contacts 704a and 706a, respectively.
5 is in an ON state, and the fifth switch 710 is in an OFF state.

【0098】1シンボルを1バイトに対応させるため、
I/Oバッファ601において8ビット情報部のデータ
に0入力の4ビットを付加して12ビット入力に変換す
る。この4ビットは12ビットのどこに入力してもよい
が、上位か下位4ビットに集中させた方が12ビットか
ら8ビットへの変換が楽である。従って第一の実施例で
は上位4ビットを0入力とする。情報データをECC回
路104Aに入力することで冗長部が計算される。また
同時にS/A&ラッチ605では12ビットの情報が8
ビットに変換される。したがって、S/A&ラッチ60
5に接続されているメモリ103(図示せず)には8ビ
ットの情報データが入力される。
To make one symbol correspond to one byte,
In the I / O buffer 601, data of the 8-bit information part is added with 4 bits of 0 input and converted to 12-bit input. These 4 bits may be input to any of the 12 bits, but it is easier to convert from 12 bits to 8 bits by focusing on the upper or lower 4 bits. Therefore, in the first embodiment, the upper 4 bits are set to 0 input. The redundant part is calculated by inputting the information data to the ECC circuit 104A. At the same time, in the S / A & latch 605, information of 12 bits is 8
Converted to bits. Therefore, the S / A & latch 60
8-bit information data is input to a memory 103 (not shown) connected to the memory 5.

【0099】次にステップ802に示すようにECC回
路104Aに0を入力し、12ビットDFF701と乗
算回路708で1986クロック計算を続ける。この
時、第1のスイッチ704は中点に接続されておりオフ
状態となっており、第4のスイッチ707、第5のスイ
ッチ710もOFF状態になっている。第2のスイッチ
705はON状態、第3のスイッチ706はその中点に
接続されてOFF状態となっているか0入力固定となっ
ている。これは、図7で示したとおり、巡回符号をシフ
トして、冗長部が情報部の前に付加される符号構成にす
る操作に対応する。
Next, as shown in step 802, 0 is input to the ECC circuit 104A, and the 1986 clock calculation is continued by the 12-bit DFF 701 and the multiplication circuit 708. At this time, the first switch 704 is connected to the middle point and is in the off state, and the fourth switch 707 and the fifth switch 710 are also in the off state. The second switch 705 is in the ON state, and the third switch 706 is connected to the middle point and is in the OFF state or fixed at 0 input. This corresponds to an operation of shifting the cyclic code to a code configuration in which the redundant part is added before the information part, as shown in FIG.

【0100】図7は本発明によるnシンボル符号の周期
における符号未使用部、情報部、冗長部の配置の一実施
例をを示す模式図である。図において、71はn−(k
+2t+1)シンボルの符号未使用部であり、72はk
シンボルの情報部であり、73は2t+1シンボルの冗
長部であり、(数23)に示すように情報部72、符号
未使用部71、冗長部73の順に配置されている。これ
らの内実際に記録されるのは冗長部73と情報部72で
あり、(n−k−2t―1)回0を入力し、巡回符号を
シフトすることによって、この順に並べられた符号構成
にすることができる。
FIG. 7 is a schematic diagram showing an embodiment of the arrangement of a code unused portion, an information portion, and a redundant portion in an n-symbol code cycle according to the present invention. In the figure, 71 is n- (k
+ 2t + 1) symbol unused portion, and 72 is k
The symbol information portion 73 is a redundant portion of 2t + 1 symbols, and is arranged in the order of the information portion 72, the code unused portion 71, and the redundant portion 73 as shown in (Equation 23). Of these, what is actually recorded is the redundant part 73 and the information part 72. The code part arranged in this order is input by inputting 0 (nk-2t-1) times and shifting the cyclic code. Can be

【0101】このようにしてシフトされた冗長部73は
ステップ803に示すようにS/A&ラッチ605に出
力される。冗長部73のデータは12ビット出力とな
り、12ビットDFF701の内容が次数の高い係数の
方から順に出力される。第1のスイッチ704は接点7
04bに接続され、第2のスイッチ705、第3のスイ
ッチ706、第4のスイッチ707、第5のスイッチ7
10はOFF状態となる。このようにして符号化された
データは、S/A&ラッチ605からメモリ103に記
録される。
The redundant portion 73 thus shifted is output to the S / A & latch 605 as shown in step 803. The data of the redundant unit 73 is a 12-bit output, and the contents of the 12-bit DFF 701 are output in order from the coefficient having the higher order. The first switch 704 has a contact 7
04b, the second switch 705, the third switch 706, the fourth switch 707, and the fifth switch 7
10 is in the OFF state. The data encoded in this manner is recorded in the memory 103 from the S / A & latch 605.

【0102】符号化されたデータの記憶方法はいろいろ
あるが、復号時のデータ読み出し時に冗長部、情報部の
順にシーケンシャルに読み出せた方が便利である。従っ
て本実施例では、メモリ上での読み出し順が冗長部7
3、情報部72の順になるようにメモリ103(図4参
照)に記録する。記録単位は1バイト=8ビットである
ため、情報部72は入力されたデータをそのまま書き込
む。3シンボルの冗長部73は、数バイトに分けて記録
される。総ビット数は12×3ビット=36ビットで、
最小限5バイト必要であるが、偶数バイトに分けて記録
した方が復号時に便利であるため、本実施例では6バイ
トに分けて記録される。図8に符号化時のタイミングチ
ャートを示す。
Although there are various methods of storing encoded data, it is more convenient to sequentially read data in the order of the redundant part and the information part when reading data at the time of decoding. Therefore, in the present embodiment, the order of reading on the memory is
3. The information is recorded in the memory 103 (see FIG. 4) in the order of the information section 72. Since the recording unit is 1 byte = 8 bits, the information section 72 writes the input data as it is. The three-symbol redundant portion 73 is recorded in several bytes. The total number of bits is 12 × 3 bits = 36 bits,
Although a minimum of 5 bytes is required, it is more convenient at the time of decoding to record the data in even-numbered bytes. Therefore, in this embodiment, the data is recorded in 6 bytes. FIG. 8 shows a timing chart at the time of encoding.

【0103】図8は図5の符号化時の動作を示すタイミ
ングチャートである。図8(a)はECC回路で符号を
生成する時のタイミングチャートであり、図8(b)は
ECC回路から出力されるデータのタイミングチャート
である。図8(a)において、情報部72から冗長部7
3が生成され、その後、1986クロック分だけ、DF
F701を空回しする。この間が冗長部が生成されるタ
イミングである。情報部72から冗長部73を生成し始
めると同時に、ECC回路104AからS/A&ラッチ
605に情報データが出力され始め、DFF701空回
しが終わった時点から冗長部73が出力され始める。次
に復号について図9のチャートを用いて説明する。
FIG. 8 is a timing chart showing the operation at the time of encoding of FIG. FIG. 8A is a timing chart when codes are generated by the ECC circuit, and FIG. 8B is a timing chart of data output from the ECC circuit. In FIG. 8 (a), the information part 72 to the redundant part 7
3 is generated, and then the DF is output for 1986 clocks.
Turn F701 idle. This is the timing at which the redundant part is generated. At the same time as the generation of the redundant unit 73 from the information unit 72, the information data starts to be output from the ECC circuit 104A to the S / A & latch 605, and the redundant unit 73 starts to be output from the time when the DFF 701 idle rotation ends. Next, decoding will be described with reference to the chart of FIG.

【0104】図9は図9の復号動作を説明するためのフ
ローチャートである。メモリ103から読み出されたデ
ータはステップ901に示すようにいったんS/A&ラ
ッチ605に保持される。データの読み出し方は冗長部
73、情報部72の順になる。次にステップ902に示
すようにECC回路104Aに冗長部73、情報部72
の順にデータを入力する。この時第1のスイッチ704
は中点に接続されておりOFF状態、第2のスイッチ7
05はON状態、第3のスイッチ706は接点706b
に接続される。第4のスイッチ707、第5のスイッチ
710はOFF状態となる。
FIG. 9 is a flowchart for explaining the decoding operation of FIG. The data read from the memory 103 is once held in the S / A & latch 605 as shown in step 901. Data is read out in the order of the redundant section 73 and the information section 72. Next, as shown in step 902, the redundant section 73 and the information section 72 are added to the ECC circuit 104A.
Enter the data in order. At this time, the first switch 704
Is connected to the middle point and is in the OFF state, the second switch 7
05 is ON, the third switch 706 is a contact 706b
Connected to. The fourth switch 707 and the fifth switch 710 are turned off.

【0105】冗長部73のデータはメモリ103から読
み出された後、S/A&ラッチ605で12ビットのデ
ータに変換されてECC回路104Aに入力される。ま
た、情報部72のデータは8ビットなので、S/A&ラ
ッチ605で上位4ビットを0入力として12ビットに
変換してECC回路104Aに入力される。冗長部73
と情報部72のデータが入力されることでECC回路1
04Aでシンドロームが生成される。次にステップ90
3に示すように、計算されたシンドロームを用いて、S
(x)=0かどうかの判定を行う。
After the data of the redundant section 73 is read from the memory 103, the data is converted into 12-bit data by the S / A & latch 605 and input to the ECC circuit 104A. Also, since the data of the information section 72 is 8 bits, the upper 4 bits are converted into 12 bits by inputting the upper 4 bits as 0 and input to the ECC circuit 104A by the S / A & latch 605. Redundant part 73
And the data of the information section 72 are input, the ECC circuit 1
At 04A, a syndrome is generated. Then step 90
As shown in FIG. 3, using the calculated syndrome,
It is determined whether (x) = 0.

【0106】最初にS(x)=0の場合について説明す
る。これは読取りデータにエラーが発生していない事を
示す。従ってこの場合は、ステップ909に示すよう
に、S/A&ラッチ605に保持していた情報部72を
そのまま出力する。この時第1のスイッチ704、第2
のスイッチ705、第3のスイッチ706、第4のスイ
ッチ707はOFF状態、第5のスイッチ710はON
状態となる。
First, the case where S (x) = 0 will be described. This indicates that no error has occurred in the read data. Therefore, in this case, as shown in step 909, the information section 72 held in the S / A & latch 605 is output as it is. At this time, the first switch 704 and the second switch 704
Switch 705, third switch 706, and fourth switch 707 are OFF, and fifth switch 710 is ON.
State.

【0107】次にS(x)≠0の場合について説明す
る。これは読み出したデータに誤りが発生した事を示
す。従ってECC回路104AはS/A&ラッチ605
に保持していたデータを読み出し、ステップ904に示
すような誤り訂正/検出処理を行う。まずステップ90
5に示すように冗長部73の誤り検索を行う。この時、
第2のスイッチ705はON状態、第1のスイッチ70
4、第3のスイッチ706、第4のスイッチ707、第
5のスイッチ710はOFF状態となる。この時NOR
回路703が1を出力すれば、冗長部73に誤りがある
ことになる。この場合はステップ909に示すように、
S/A&ラッチ605に保持していた情報部72をその
まま出力する。この時第1のスイッチ704、第2のス
イッチ705、第3のスイッチ706、第4のスイッチ
707はOFF状態、第5のスイッチ710はON状態
となる。NOR回路703が1を出力しなければ、冗長
部73に誤りが検出されなかったことを示すから、続い
てステップ906に示すように情報部72の誤り検索を
行う。この時第1のスイッチ704はOFF状態、第2
のスイッチ705はON状態、第3のスイッチ706は
OFF状態、第5のスイッチ710はON状態となる。
Next, the case where S (x) ≠ 0 will be described. This indicates that an error has occurred in the read data. Therefore, the ECC circuit 104A has the S / A & latch 605
Is read, and error correction / detection processing as shown in step 904 is performed. First, step 90
As shown in FIG. 5, an error search for the redundant section 73 is performed. At this time,
The second switch 705 is in the ON state, and the first switch 70
Fourth, the third switch 706, the fourth switch 707, and the fifth switch 710 are turned off. At this time, NOR
If the circuit 703 outputs 1, the redundancy unit 73 has an error. In this case, as shown in step 909,
The information section 72 held in the S / A & latch 605 is output as it is. At this time, the first switch 704, the second switch 705, the third switch 706, and the fourth switch 707 are turned off, and the fifth switch 710 is turned on. If the NOR circuit 703 does not output “1”, it indicates that no error has been detected in the redundant unit 73, and subsequently the error search of the information unit 72 is performed as shown in step 906. At this time, the first switch 704 is in the OFF state,
The switch 705 is in the ON state, the third switch 706 is in the OFF state, and the fifth switch 710 is in the ON state.

【0108】この時NOR回路703がiクロック目に
1を出力すれば、情報部の位置iに誤りが検出されたこ
とになる。(数22)より誤りパターンEpiは第4の
スイッチ707からの出力に等しいから、ECC回路1
04Aはステップ907に示すように読み出したデータ
と誤りパターンのXORを計算し、I/Oバッファ60
1にデータを出力する。情報部の誤り検索中、NOR回
路703が1を出力しない場合は第4のスイッチ707
はOFF状態となっているから、情報データはそのまま
I/Oバッファ601に出力される。ECC回路104
Aが情報部のデータ長kクロック演算を行ってもNOR
回路703が1を出力しない場合はステップ908に示
すようにECC回路104Aは外部に誤り検出情報を出
力する。図10に復号時のタイミングチャートをしめ
す。
At this time, if the NOR circuit 703 outputs 1 at the i-th clock, it means that an error has been detected at the position i of the information section. Since the error pattern Epi is equal to the output from the fourth switch 707 according to (Equation 22), the ECC circuit 1
04A calculates the XOR of the read data and the error pattern as shown in step 907, and
1 is output. If the NOR circuit 703 does not output 1 during the error search of the information section, the fourth switch 707
Is in the OFF state, the information data is output to the I / O buffer 601 as it is. ECC circuit 104
Even if A performs data length k clock operation of information section, NOR
If the circuit 703 does not output 1, the ECC circuit 104A outputs error detection information to the outside as shown in step 908. FIG. 10 shows a timing chart at the time of decoding.

【0109】図10は図5の復号時の誤り検出及び誤り
訂正の一実施例を示すタイミングチャートであり、図1
0(a)はECC回路での処理のタイミングを示し、図
10(b)は誤り訂正された情報の出力タイミングを示
す。図10(a)から明らかなように、冗長部73+情
報部72の構成を持つ組織符号では、情報部72と冗長
部73とから誤りを検出する。誤りがある場合には冗長
部73の誤りの有無を判定し、その後情報部の誤りを検
出すると共に誤り訂正を行う。ECC回路104Aの出
力には誤り検出及び訂正と同時に情報部72(データ)
が出力される。
FIG. 10 is a timing chart showing an embodiment of error detection and error correction at the time of decoding in FIG.
0 (a) shows the timing of processing in the ECC circuit, and FIG. 10 (b) shows the output timing of error-corrected information. As is clear from FIG. 10A, in the systematic code having the configuration of the redundant part 73 + the information part 72, an error is detected from the information part 72 and the redundant part 73. If there is an error, the presence / absence of an error in the redundant section 73 is determined, and then an error in the information section is detected and error correction is performed. At the output of the ECC circuit 104A, the information section 72 (data) is simultaneously output with error detection and correction.
Is output.

【0110】図5に示すECC回路104Aにおいて
は、冗長部+情報部の符号構成し、割り算器709、検
出器702を採用することによって、図10(b)符号
未使用部の検出を省略することができる。また、乗算器
708、12ビットDFF701、XOR計算回路72
1〜723を用いることによって、シンボル単位での訂
正が可能となった。
In the ECC circuit 104A shown in FIG. 5, the code of the redundant part + the information part is formed, and the divider 709 and the detector 702 are employed to omit the detection of the code unused part in FIG. be able to. Further, a multiplier 708, a 12-bit DFF 701, an XOR calculation circuit 72
By using 1 to 723, correction can be made in units of symbols.

【0111】以上のような方法及び装置を用いる事によ
り、メモリチップ102を単位として使用した場合、メ
モリ103の多値記憶化に伴うデータ読み出し率エラー
の増加に対しても十分な誤り訂正能力を持たせる事がで
きる。また誤り検出情報の出力が可能なため、相関性の
あるデータ等誤り補正が可能なデータに対して有効にデ
ータを使用する事ができる。さらに従来のRS方式に比
べて最大で5割程度、最小でも3割程度復号時間を短縮
する事ができる。
By using the above-described method and apparatus, when the memory chip 102 is used as a unit, sufficient error correction capability can be obtained even with an increase in data read rate error due to multi-level storage of the memory 103. You can have. Further, since error detection information can be output, data can be effectively used for data that can be corrected for errors, such as correlated data. Further, the decoding time can be reduced by about 50% at the maximum and at least about 30% at the minimum as compared with the conventional RS system.

【0112】また誤り検出情報が、データ出力終了と同
時に出力されるので、データ出力後、誤り検出情報の出
力を待つ事による、外部ユーザの負担もなくなる。また
回路規模は従来RS方式と比べて割算回路の付加等のみ
ですむため、増加は最小限に抑えられる。
Further, since the error detection information is output simultaneously with the end of the data output, the burden on the external user due to waiting for the output of the error detection information after the data output is eliminated. Further, since the circuit scale requires only the addition of a dividing circuit or the like as compared with the conventional RS system, the increase can be minimized.

【0113】次に第二の実施例の場合について図11か
ら図15を用いて説明する。図11は本発明によるデー
タ記憶再生装置のECC回路の第二の実施例を示すブロ
ック図である。図において、12ビットDFF701は
DFF701a、701b、701cから構成され、検
出器702は検出回路702a、702bから構成さ
れ、ビット乗算器708は乗算回路708a、708
b、708cから構成され、ビット割算器709は割り
算回路709a、709b、709cから構成されてい
る点は図5と同じである。また、12ビットDFF70
1、検出器702、NOR回路703、第1のスイッチ
704、第2のスイッチ705、第3のスイッチ70
6、第5のスイッチ710、第4のスイッチ707、ビ
ット乗算回路708、ビット割算器709、XOR計算
回路720〜723第一の実施例と同一の機能を持つも
のである。
Next, the case of the second embodiment will be described with reference to FIGS. FIG. 11 is a block diagram showing a second embodiment of the ECC circuit of the data storage / reproduction device according to the present invention. In the figure, a 12-bit DFF 701 includes DFFs 701a, 701b, and 701c, a detector 702 includes detection circuits 702a and 702b, and a bit multiplier 708 includes multiplication circuits 708a and 708.
b, 708c, and the bit divider 709 is composed of divider circuits 709a, 709b, 709c in the same manner as FIG. Also, a 12-bit DFF 70
1, detector 702, NOR circuit 703, first switch 704, second switch 705, third switch 70
6, the fifth switch 710, the fourth switch 707, the bit multiplication circuit 708, the bit divider 709, and the XOR calculation circuits 720 to 723 have the same functions as those of the first embodiment.

【0114】図11においては、12ビットバッファ7
11が新たに設けられており、12ビットバッファ71
1は第1から第3のバッファ711a、711b、71
1cから構成されている。この12ビットバッファ71
1は12ビットのデータを1クロック分保持しておくも
のである。また図5と同じくS/A&ラッチ605と第
1のスイッチ704、第3のスイッチ706の間にはス
イッチ/セレクタ603があるが、図11の説明では機
能的に関係がないため省略した。
In FIG. 11, a 12-bit buffer 7
11 is newly provided, and a 12-bit buffer 71 is provided.
1 is the first to third buffers 711a, 711b, 71
1c. This 12-bit buffer 71
1 is for holding 12-bit data for one clock. Although a switch / selector 603 is provided between the S / A & latch 605 and the first switch 704 and the third switch 706 as in FIG. 5, it is omitted in the description of FIG. 11 because it has no functional relationship.

【0115】次に符号構成について説明する。符号構成
は、(数9)、(数23)のどちらの符号構成を用いて
もよいが、第二の実施例では情報部72の後ろに冗長部
73を付加した構成とする。次にECC回路104B及
び、符号化復号方法について図12から図15を用いて
説明する。最初に符号化の方法について図12のチャー
トを用いて説明する。図12は図11の符号化の動作を
示すフローチャートである。ステップ1301に示すよ
うにI/Oバッファ601に入力されたデータは第1の
スイッチ704と第3のスイッチ706を通ってS/A
&ラッチ605とECC回路104Bに入力される。こ
の時第1のスイッチ704、第3のスイッチ706はそ
れぞれ接点704a、706a側に接続され、第2のス
イッチ705はON状態、第5のスイッチ710はOF
F状態となる。第一の実施例と同様の理由からI/Oバ
ッファ601は8ビット入力を12ビット入力に変換す
る。0入力の4ビットは12ビットのどこに入力しても
よいが、上位か下位4ビットに集中させた方が12ビッ
トから8ビットへの変換が楽である。従って第二の実施
例では上位4ビットに入力する。情報データを入力する
ことによりECC回路104Bでは冗長部が計算され
る。計算された冗長部はステップ1302に示すように
S/A&ラッチ605に出力される。冗長部のデータは
12ビット出力となり、12ビットDFF701の内容
が次数の高い方から順に出力される。第1のスイッチ7
04は接点704b側に接続され、第2のスイッチ70
5、第3のスイッチ706、第4のスイッチ707、第
5のスイッチ710はOFF状態となる。このようにし
て符号化されたデータは、S/A&ラッチ605からス
テップ1303に示すようにメモリ103に記録され
る。符号化されたデータの記憶方法はいろいろあるが、
復号時のデータ読み出し時に符号構成と同じ順にシーケ
ンシャルに読み出せた方が便利である。従って第二の実
施例ではメモリ103上での読み出し順が情報部、冗長
部の順になるようにメモリ103に記録する。記録単位
は1バイトであるため、3シンボルの冗長部は、第一の
実施例と同様に数バイトに分けて記録される。第一の実
施例の時と同様の理由から、第二の実施例では6バイト
に分けて記録される。図13に符号化時のタイミングチ
ャートをしめす。
Next, the code configuration will be described. As the code configuration, any of the code configurations of (Equation 9) and (Equation 23) may be used, but in the second embodiment, the information unit 72 is provided with a redundant unit 73 after the information unit 72. Next, the ECC circuit 104B and the encoding / decoding method will be described with reference to FIGS. First, the encoding method will be described with reference to the chart of FIG. FIG. 12 is a flowchart showing the encoding operation of FIG. As shown in step 1301, data input to the I / O buffer 601 passes through the first switch 704 and the third switch 706, and the S / A
& Latch 605 and ECC circuit 104B. At this time, the first switch 704 and the third switch 706 are connected to the contacts 704a and 706a, respectively, the second switch 705 is turned on, and the fifth switch 710 is turned off.
The state becomes the F state. For the same reason as in the first embodiment, the I / O buffer 601 converts an 8-bit input to a 12-bit input. The 4 bits of 0 input may be input to any of the 12 bits, but it is easier to convert 12 bits to 8 bits by focusing on the upper or lower 4 bits. Therefore, in the second embodiment, the upper 4 bits are input. By inputting information data, the ECC circuit 104B calculates a redundant part. The calculated redundant portion is output to the S / A & latch 605 as shown in step 1302. The data of the redundant portion becomes a 12-bit output, and the contents of the 12-bit DFF 701 are output in order from the higher order. First switch 7
04 is connected to the contact 704b side, and the second switch 70
5, the third switch 706, the fourth switch 707, and the fifth switch 710 are turned off. The data encoded in this manner is recorded in the memory 103 from the S / A & latch 605 as shown in step 1303. There are various ways to store encoded data,
It is more convenient to sequentially read data in the same order as the code configuration when reading data at the time of decoding. Therefore, in the second embodiment, the information is recorded in the memory 103 such that the order of reading on the memory 103 is the order of the information section and the redundant section. Since the recording unit is 1 byte, the redundant portion of 3 symbols is recorded in several bytes as in the first embodiment. For the same reason as in the first embodiment, in the second embodiment, data is recorded in six bytes. FIG. 13 shows a timing chart at the time of encoding.

【0116】図13は図11のECC回路の符号化時の
動作を示すタイミングチャートであり、図13(a)は
ECC回路内部で符号を構成する時のタイミングチャー
トであり、図13(b)はECC回路から出力されるデ
ータ出力のタイミングチャートを示す。図13(a)に
おいて、情報部82から冗長部83が生成される。冗長
部83が生成されると、図13(b)に示すように、同
時に情報部82がECC回路104BからS/A&ラッ
チ605に出力され、冗長部83が生成されると、この
冗長部は順次S/A&ラッチ605に出力される。
FIG. 13 is a timing chart showing the operation of the ECC circuit shown in FIG. 11 at the time of encoding. FIG. 13A is a timing chart showing the case where a code is formed inside the ECC circuit, and FIG. Shows a timing chart of data output from the ECC circuit. In FIG. 13A, a redundant section 83 is generated from the information section 82. When the redundant section 83 is generated, as shown in FIG. 13B, the information section 82 is output from the ECC circuit 104B to the S / A & latch 605 at the same time. Output to the S / A & latch 605 sequentially.

【0117】次に復号について図14のフローチャート
を用いて説明する。図14は図11の復号動作を示すフ
ローチャートである。図において、メモリ103から読
み出されたデータはステップ1401に示すようにいっ
たんS/A&ラッチ605に保持される。この時データ
の読み出し方は情報部82、冗長部83の順になる。
Next, decoding will be described with reference to the flowchart of FIG. FIG. 14 is a flowchart showing the decoding operation of FIG. In the figure, data read from the memory 103 is temporarily held in the S / A & latch 605 as shown in step 1401. At this time, data is read out in the order of the information section 82 and the redundant section 83.

【0118】次にステップ1402に示すようにECC
回路104Bに情報部82、冗長部83の順にデータを
入力する。この時第1のスイッチ704はOFF状態、
第2のスイッチ705はON状態、第3のスイッチ70
6は接点706b側に接続される。第4のスイッチ70
7、第5のスイッチ710はOFF状態となる。符号化
されたデータはECC回路104Bに入力される。冗長
部83のデータはメモリから読み出された後で12ビッ
トのデータに変換されて入力される。また、情報部82
のデータは8ビットなので、上位4ビットを0入力とし
て12ビットに変換して入力する。
Next, as shown in step 1402, the ECC
Data is input to the circuit 104B in the order of the information section 82 and the redundant section 83. At this time, the first switch 704 is in the OFF state,
The second switch 705 is ON, and the third switch 70
6 is connected to the contact 706b side. Fourth switch 70
7. The fifth switch 710 is turned off. The encoded data is input to the ECC circuit 104B. After the data of the redundant section 83 is read from the memory, it is converted into 12-bit data and input. The information section 82
Is 8 bits, the upper 4 bits are converted to 12 bits as 0 input and input.

【0119】情報部82と冗長部83のデータが入力さ
れることでECC回路104Bではシンドロームが生成
される。次にステップ1403に示すように、計算され
たシンドロームを用いて、S(x)=0の判定を行う。
When the data of the information section 82 and the data of the redundant section 83 are input, a syndrome is generated in the ECC circuit 104B. Next, as shown in Step 1403, S (x) = 0 is determined using the calculated syndrome.

【0120】最初にS(x)=0の場合を示す。これは
読取りデータにエラーが発生していない事を示す。従っ
てこの場合は、ステップ1410に示すように、S/A
&ラッチ605に保持していた情報部を、そのまま出力
する。この時第1のスイッチ704、第2のスイッチ7
05、第3のスイッチ706、第4のスイッチ707は
OFF状態、第5のスイッチ710はON状態となる。
First, the case where S (x) = 0 is shown. This indicates that no error has occurred in the read data. Therefore, in this case, as shown in step 1410, S / A
The information part held in & latch 605 is output as it is. At this time, the first switch 704 and the second switch 7
05, the third switch 706 and the fourth switch 707 are turned off, and the fifth switch 710 is turned on.

【0121】次にS(x)≠0の場合を示す。これは読
み出したデータに誤りが発生した事を示す。ECC回路
104BはS/A&ラッチ605に保持していたデータ
を再度読み出す。この時ECC回路104Bはステップ
1404に示すような誤り訂正/検出処理を行う。
Next, the case where S (x) ≠ 0 will be described. This indicates that an error has occurred in the read data. The ECC circuit 104B reads out the data held in the S / A & latch 605 again. At this time, the ECC circuit 104B performs error correction / detection processing as shown in step 1404.

【0122】最初にステップ1405に示すように、E
CC回路104Bに0を入力した状態で3シンボルすな
わちECCの冗長シンボル分だけ演算する。ECC回路
104Bには3つのバッファ711a、711b、71
1cが設けられているため、計算結果は3クロック遅れ
て第5のスイッチ710の手前のXOR計算回路720
に出力される。この時第1のスイッチ704はOFF状
態、第2のスイッチ705、第3のスイッチ706、第
5のスイッチ710はOFF状態となる。この時の演算
は、ECC回路104B内部のクロックで計算を行う。
First, as shown in step 1405, E
With 0 input to the CC circuit 104B, the operation is performed for three symbols, that is, for the ECC redundant symbols. The ECC circuit 104B has three buffers 711a, 711b, 71
1c, the calculation result is delayed by three clocks and the XOR calculation circuit 720 before the fifth switch 710 is output.
Is output to At this time, the first switch 704 is turned off, and the second switch 705, the third switch 706, and the fifth switch 710 are turned off. The calculation at this time is performed using a clock inside the ECC circuit 104B.

【0123】次にステップ1406に示すように情報部
の誤り検索を行う。ステップ1406の演算からECC
回路104Bは外部クロックで制御される。この時第1
のスイッチ704はOFF状態、第2のスイッチ705
はON状態、第3のスイッチ706はOFF状態、第5
のスイッチ710はON状態となる。ECC回路104
Bは情報部82のデータ出力より3クロック進んで計算
を行っているが、バッファ711により第5のスイッチ
710の手前のXOR計算回路720で情報データと演
算を行うときは、ともに位置iにおけるデータとなる。
この時NOR回路703がiクロック目に1を出力すれ
ば、情報部の位置iに誤りが検出されたことになる。
(数22)より誤りパターンEpiは第4のスイッチ7
07からの出力に等しいから、ECC回路104Bはス
テップ1407に示すように読み出したデータと誤りパ
ターンのXORを計算し、I/Oバッファ601にデー
タを出力する。情報部82のデータで、NOR回路70
3が1を出力しない場合はその位置には誤りが無い事を
意味するから、データはそのままI/Oバッファ601
に出力される。
Next, an error search of the information section is performed as shown in step 1406. ECC from the operation of step 1406
The circuit 104B is controlled by an external clock. At this time the first
Switch 704 is in the OFF state, the second switch 705
Indicates the ON state, the third switch 706 indicates the OFF state, and the fifth switch
Switch 710 is turned on. ECC circuit 104
B calculates three clocks ahead of the data output of the information section 82, but when the XOR calculation circuit 720 before the fifth switch 710 performs the calculation with the information data by the buffer 711, the data at the position i Becomes
At this time, if the NOR circuit 703 outputs 1 at the i-th clock, it means that an error has been detected at the position i of the information section.
According to (Equation 22), the error pattern Epi is the fourth switch 7
Therefore, the ECC circuit 104B calculates the XOR of the read data and the error pattern as shown in step 1407, and outputs the data to the I / O buffer 601. The NOR circuit 70
If 3 does not output 1, it means that there is no error at that position, and the data is directly input to the I / O buffer 601.
Is output to

【0124】次にステップ1407に示すように冗長部
83の誤り検索を行う。この時、第1のスイッチ704
はOFF状態、第2のスイッチ705はON状態、第3
のスイッチ706、第4のスイッチ707、第5のスイ
ッチ710はOFF状態となる。この時NOR回路70
3が1を出力すれば、冗長部83に誤りが検出されたこ
とになる。NOR回路703が1を出力しなければ、冗
長部83に誤りが検出されなかったことを示す。ECC
回路104Bが冗長部のデータ長3クロック演算を行っ
てもNOR回路703が1を出力しない場合はステップ
1409に示すように誤り検出処理を行う。ECC回路
104Bは、外部に誤り検出情報を出力する。情報部8
2のデータはバッファ711によりECC回路104B
内の計算より3クロック遅れて出力されているから、誤
り検出情報の出力と同時に情報データ部の出力が終了す
る。図15に復号時のタイムチャートを示す。
Next, as shown in step 1407, an error search for the redundant section 83 is performed. At this time, the first switch 704
Is in the OFF state, the second switch 705 is in the ON state,
, The fourth switch 707, and the fifth switch 710 are turned off. At this time, the NOR circuit 70
If 3 outputs 1, an error has been detected in the redundant section 83. If the NOR circuit 703 does not output 1, it indicates that no error has been detected in the redundant unit 83. ECC
If the NOR circuit 703 does not output 1 even when the circuit 104B calculates the data length of the redundant portion by 3 clocks, an error detection process is performed as shown in step 1409. The ECC circuit 104B outputs error detection information to the outside. Information Division 8
2 is stored in the ECC circuit 104B by the buffer 711.
Is output three clocks later than the calculation in the above, the output of the information data section ends simultaneously with the output of the error detection information. FIG. 15 shows a time chart at the time of decoding.

【0125】図15は図11の復号時の誤り検出及び誤
り訂正の一実施例を示すタイミングチャートであり、図
15(a)はECC回路での処理のタイミングを示し、
図15(b)は誤り訂正された情報の出力タイミングを
示す。図15(a)から明らかなように、情報部82+
冗長部83の構成を持つ組織符号の情報部82と冗長部
83とから誤りの有無の検出を行う。誤りがある場合に
は図15(b)に示すように、情報部の誤りを訂正し、
バッファ711に出力し、3クロック遅れてECC回路
104Bから出力される。次に冗長部83の誤り検出、
訂正が行われる。本実施例においてはバッファ711に
より情報部82の出力を3クロック分遅らせているため
に、冗長部83の誤り検出及び訂正終了と同時に情報部
82の出力が完了する。
FIG. 15 is a timing chart showing an embodiment of error detection and error correction at the time of decoding in FIG. 11, and FIG. 15A shows the timing of processing in the ECC circuit.
FIG. 15B shows the output timing of error-corrected information. As is clear from FIG. 15A, the information section 82+
The presence / absence of an error is detected from the information section 82 of the systematic code having the configuration of the redundant section 83 and the redundant section 83. If there is an error, as shown in FIG.
The data is output to the buffer 711 and output from the ECC circuit 104B with a delay of three clocks. Next, error detection of the redundant unit 83,
Corrections are made. In this embodiment, since the output of the information section 82 is delayed by three clocks by the buffer 711, the output of the information section 82 is completed at the same time when the error detection and correction of the redundant section 83 are completed.

【0126】図11に示すECC回路104Bにおいて
は、情報部+冗長部の符号構成とし、割り算器709、
検出器702を採用することによって、符号未使用部の
検出を省略することができる。また、乗算器708、1
2ビットDFF701、XOR計算回路721〜723
を用いることによって、シンボル単位での訂正が可能と
なる。 以上のような方法及び装置を用いる事により、
メモリチップ102を単位として使用した場合、メモリ
103の多値記憶化に伴うデータ読み出し率エラーの増
加に対しても十分な誤り訂正能力を持たせる事ができ
る。また誤り検出情報の出力が可能である事によって、
相関性のあるデータ等誤り補正が可能なデータに対して
有効にデータを使用する事ができる。
In the ECC circuit 104B shown in FIG. 11, the code structure of the information section + redundant section is used.
By employing the detector 702, detection of an unused portion can be omitted. Further, the multipliers 708, 1
2-bit DFF 701, XOR calculation circuits 721 to 723
, It is possible to perform correction on a symbol-by-symbol basis. By using the above method and apparatus,
When the memory chip 102 is used as a unit, a sufficient error correction capability can be provided even for an increase in a data reading rate error accompanying the multi-level storage of the memory 103. Also, by being able to output error detection information,
Data can be used effectively for data that can be corrected for errors, such as correlated data.

【0127】さらに従来のRS方式に比べて最大で5割
程度、最小でも3割程度復号時間を短縮する事ができ
る。また、誤り検出情報が、データ出力終了と同時に出
力されるので、データ出力後、データ出力後、誤り検出
情報の出力を待つ事による、外部ユーザの負担もなくな
る。またこの方式の符号化は従来RS方式と同じである
ため、符号化時間が短くてすむという利点がある。
Further, the decoding time can be reduced by about 50% at the maximum and at least 30% at the minimum as compared with the conventional RS system. Further, since the error detection information is output simultaneously with the end of the data output, the burden on the external user after waiting for the output of the error detection information after the data output is eliminated. In addition, since the encoding of this method is the same as that of the conventional RS method, there is an advantage that the encoding time is short.

【0128】なお、第一の実施例および第二の実施例に
係るファイルシステムは、図16に示すようにデジタル
カメラや携帯情報端末機器、携帯電話、PHS用の記憶
装置にも使用する事ができる。図16はディジタルカメ
ラ、携帯情報端末、携帯電話とパーソナルコンピュータ
の接続を示す模式図である。図において、91はディジ
タルカメラ、92は携帯端末である。携帯電話93は携
帯情報端末の一部であるが、この図においては別に示し
ている。94はパーソナルコンピュータ(以下、PCと
云う。)、95、96、97はメモリチップである。
As shown in FIG. 16, the file systems according to the first and second embodiments can also be used for digital cameras, personal digital assistants, mobile phones, and storage devices for PHSs. it can. FIG. 16 is a schematic diagram showing a connection between a digital camera, a portable information terminal, and a portable telephone and a personal computer. In the figure, reference numeral 91 denotes a digital camera, and 92 denotes a portable terminal. The mobile phone 93 is a part of the mobile information terminal, but is separately shown in this figure. 94 is a personal computer (hereinafter, referred to as PC), and 95, 96, and 97 are memory chips.

【0129】この構成において、メモリチップ95−9
7は、デジタルカメラ91や携帯情報端末92に脱着可
能な可搬型記憶媒体、例えばフラッシュメモリを収容し
たカード型の記憶媒体であるフラッシュメモリシステム
を構成し、外部ユーザーによる誤り訂正等は機器本体側
で行うものとする。可搬型記憶媒体のインターフェース
や形状等の規格は使用する機器に応じて何を用いてもよ
い。また、デジタルカメラ91で記録されたデータを用
いて、PC94デジタルカメラ本体上のソフト、あるい
はハードで誤り補正等を行う事もできる。半導体メモリ
の高集積化、多値記憶化により、経年変化によるリテン
ションエラーは増加すると予測される。対策としてはE
CCによる訂正手段が有効であるが、多値記録化によっ
て1素子で複数ビットエラーが発生するという可能性
や、メモリチップにECC回路104を実装しなければ
ならないという問題から、従来のようなビット単位訂正
ECCでは十分なビット信頼率を得る事ができない場合
がある。
In this configuration, the memory chip 95-9
Reference numeral 7 denotes a portable storage medium detachable from the digital camera 91 or the portable information terminal 92, for example, a flash memory system which is a card-type storage medium containing a flash memory. Shall be performed. Any standard may be used for the interface and shape of the portable storage medium depending on the device used. In addition, using data recorded by the digital camera 91, error correction or the like can be performed by software or hardware on the PC94 digital camera body. It is expected that retention errors due to aging will increase due to high integration and multi-value storage of semiconductor memories. E as a measure
Although the correction means using the CC is effective, due to the possibility that a multi-bit recording may cause a plurality of bit errors in one element and the problem that the ECC circuit 104 must be mounted on the memory chip, In some cases, the unit correction ECC cannot obtain a sufficient bit reliability.

【0130】本発明はそのような場合に、数ビット単位
でシンボル単位訂正を行うリードソロモン符号方式を用
いることで、1素子での複数ビットエラーにも対応でき
ることを可能にするものである。更に、リードソロモン
方式ECC回路104をメモリチップに搭載する際、従
来リードソロモン方式ECC回路104を搭載する際の
三つの問題点、すなわち回路規模、復号時間、復号時の
利便性を解決する事を可能にするものである。
In such a case, the present invention makes it possible to cope with a plurality of bit errors in one element by using a Reed-Solomon coding system in which symbol unit correction is performed in units of several bits. Furthermore, when the Reed-Solomon ECC circuit 104 is mounted on a memory chip, three problems in mounting the conventional Reed-Solomon ECC circuit 104, namely, circuit scale, decoding time, and convenience in decoding are solved. Is what makes it possible.

【0131】[0131]

【発明の効果】回路規模については、符号化回路と復号
回路を共用する回路構成により、オンチップECCに十
分な回路規模を実現する事を可能にするものである。
As for the circuit scale, it is possible to realize a sufficient circuit scale for the on-chip ECC by using a circuit configuration sharing the encoding circuit and the decoding circuit.

【0132】復号時間については、(数24)から(数
26)で示すアルゴリズムで符号復号時間を短縮するた
めの手段を設けることで、同じ符号方式を用いる従来例
よりも3割から5割程度の復号時間短縮を実現する事を
可能にするものである。
As for the decoding time, by providing means for shortening the code decoding time by the algorithm shown in (Equation 24) to (Equation 26), it is about 30% to 50% as compared with the conventional example using the same coding method. This makes it possible to reduce the decoding time of.

【0133】復号時の利便性については、情報データ出
力の終了と同時に、シンボル単位訂正ECC回路104
からエラー訂正/検出情報出力が出力されるような手段
を設けることで、データ出力終了と同時に誤り検出情報
を出力する事を可能にするものである。
As for convenience at the time of decoding, the symbol unit correction ECC circuit 104
By providing means for outputting the error correction / detection information output from, the error detection information can be output simultaneously with the end of the data output.

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

【図1】本発明によるデータ記憶再生装置の一実施例を
示す概念図である。
FIG. 1 is a conceptual diagram showing an embodiment of a data storage / reproduction device according to the present invention.

【図2】図1のデータ記憶再生装置の全体構成を示すブ
ロック図である。
FIG. 2 is a block diagram showing an overall configuration of the data storage / reproduction device of FIG.

【図3】図2のデータ記憶再生装置のチップ実装例を示
す模式図である。
FIG. 3 is a schematic diagram showing a chip mounting example of the data storage / reproduction device of FIG. 2;

【図4】メモリチップの全体構成を示す構成図である。FIG. 4 is a configuration diagram illustrating an overall configuration of a memory chip.

【図5】本発明によるデータ記録再生装置のECC回路
の一実施例を示すブロック図である。
FIG. 5 is a block diagram showing one embodiment of an ECC circuit of the data recording / reproducing apparatus according to the present invention.

【図6】図5に示すECC回路の符号化の動作を説明す
るためのフローチャートである。
FIG. 6 is a flowchart illustrating an encoding operation of the ECC circuit illustrated in FIG. 5;

【図7】本発明によるnシンボル符号の周期における符
号未使用部、情報部、冗長部を示す模式図である。
FIG. 7 is a schematic diagram showing a code unused portion, an information portion, and a redundant portion in an n-symbol code cycle according to the present invention.

【図8】図6の符号化時の動作を示すタイミングチャー
トである。
FIG. 8 is a timing chart showing an operation at the time of encoding of FIG. 6;

【図9】図9の復号動作を説明するためのフローチャー
トである。
FIG. 9 is a flowchart illustrating the decoding operation of FIG. 9;

【図10】図6のECC回路での復号時の誤り検出及び
誤り訂正の処理のタイミングチャート及び誤り訂正され
た情報の出力時のタイミングチャートである。
10 is a timing chart of error detection and error correction processing at the time of decoding by the ECC circuit of FIG. 6 and a timing chart at the time of outputting error-corrected information.

【図11】本発明によるデータ記憶再生装置のECC回
路の第二の実施例を示すブロック図である。
FIG. 11 is a block diagram showing a second embodiment of the ECC circuit of the data storage / reproduction device according to the present invention.

【図12】図11の符号化の動作を示すフローチャート
である。
FIG. 12 is a flowchart showing the encoding operation of FIG. 11;

【図13】図11のECC回路内部で符号を構成する時
のタイミングチャート及びECC回路から出力される時
のタイミングチャートである。
13 is a timing chart when codes are formed inside the ECC circuit of FIG. 11 and a timing chart when the codes are output from the ECC circuit.

【図14】図11の復号動作を示すフローチャートであ
る。
FIG. 14 is a flowchart showing the decoding operation of FIG. 11;

【図15】図11のECC回路での復号時の誤り検出及
び誤り訂正処理のタイミングチャート及び誤り訂正され
た情報の出力時のタイミングチャートである。
15 is a timing chart of error detection and error correction processing at the time of decoding by the ECC circuit of FIG. 11 and a timing chart at the time of outputting error-corrected information.

【図16】ディジタルカメラ、携帯情報端末、携帯電話
とパーソナルコンピュータの接続を示す模式図である。
FIG. 16 is a schematic diagram showing connections between a digital camera, a portable information terminal, a mobile phone, and a personal computer.

【図17】フラッシュメモリの構造を示す模式図であ
る。
FIG. 17 is a schematic diagram showing a structure of a flash memory.

【図18】フラッシュメモリのコントロールゲート電圧
とドレイン電流の特性図である。
FIG. 18 is a characteristic diagram of a control gate voltage and a drain current of a flash memory.

【図19】nシンボル符号の周期における符号未使用
部、情報部、冗長部を示す模式図である。
FIG. 19 is a schematic diagram showing a code unused part, an information part, and a redundant part in a cycle of an n-symbol code.

【図20】ECC回路での復号時の誤り検出及び誤り訂
正処理のタイミングチャート及び誤り訂正された情報の
出力時のタイミングチャートである。
FIG. 20 is a timing chart of error detection and error correction processing at the time of decoding in the ECC circuit and a timing chart at the time of outputting error-corrected information.

【図21】ECC回路での復号時の誤り検出及び誤り訂
正処理のタイミングチャート及び誤り訂正された情報の
出力時のタイミングチャートである。
FIG. 21 is a timing chart of error detection and error correction processing at the time of decoding in the ECC circuit and a timing chart of outputting error-corrected information.

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

103…メモリ、104、104A、104B…内部E
CC回路、601…I/Oバッファ、605…S/Aラ
ッチ、701a、701b、701c…12ビット遅延
フリップフロップ(DFF:Delay Flip F
lop)、702a、702b…検出器、703…NO
R回路、704…第1のスイッチ、705…第2のスイ
ッチ、706…第3のスイッチ、707…第4のスイッ
チ、708…乗算器、709…割算器、709a、70
9b、709c…割り算回路、710…第5のスイッ
チ、720、721、722、723…XOR計算回
路、711a、711b、711c…バッファ。
103: memory, 104, 104A, 104B: internal E
CC circuit, 601 I / O buffer, 605 S / A latch, 701a, 701b, 701c 12-bit delay flip-flop (DFF: Delay Flip F)
lop), 702a, 702b ... detector, 703 ... NO
R circuit, 704 first switch, 705 second switch, 706 third switch, 707 fourth switch, 708 multiplier, 709 divider, 709a, 70
9b, 709c: division circuit, 710: fifth switch, 720, 721, 722, 723 ... XOR calculation circuit, 711a, 711b, 711c: buffer.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 野副 敦史 東京都青梅市新町六丁目16番地の3 株式 会社日立製作所デバイス開発センタ内 (72)発明者 辛島 哲次 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体事業本部内 (72)発明者 西谷 卓史 神奈川県川崎市麻布区王禅寺1099 株式会 社日立製作所システム開発研究所内 (72)発明者 片山 ゆかり 神奈川県川崎市麻布区王禅寺1099 株式会 社日立製作所システム開発研究所内 ──────────────────────────────────────────────────続 き Continuing from the front page (72) Inventor Atsushi Nozoe 3-16-16 Shinmachi, Ome-shi, Tokyo 3 Inside the Device Development Center, Hitachi, Ltd. No. 1 In the Semiconductor Business Division of Hitachi, Ltd. 1099 System Development Laboratory, Hitachi, Ltd.

Claims (10)

【特許請求の範囲】[Claims] 【請求項1】メモリを内蔵したメモリチップと、前記メ
モリチップの内側に記憶対象の情報データを誤り訂正符
号化し、かつ誤り訂正符号を生成する内部誤り訂正符号
回路を設け、前記内部誤り訂正符号回路は前記メモリよ
り読み出した誤り訂正符号を用いて前記の誤り訂正符号
を復号することを特徴とする記憶再生装置。
A memory chip having a built-in memory, and an internal error correction code circuit for error correction encoding data information to be stored and generating an error correction code inside said memory chip; A storage / reproduction device, wherein the circuit decodes the error correction code using the error correction code read from the memory.
【請求項2】請求項1記載の記憶再生装置において、前
記内部誤り訂正符号化回路は前記情報データを誤り訂正
符号化する符号化回路と、前記誤り訂正符号化された情
報データを復号する復号回路とを備えることを特徴とす
る記憶再生装置。
2. The storage / reproducing apparatus according to claim 1, wherein said internal error correction coding circuit includes a coding circuit for performing error correction coding on said information data, and a decoding circuit for decoding said error correction coded information data. And a circuit.
【請求項3】請求項2記載の記憶再生装置において、前
記内部誤り訂正符号回路において、前記符号化回路と前
記復号回路とを共用することを特徴とする記憶再生装
置。
3. The storage / reproduction device according to claim 2, wherein said internal error correction code circuit shares said encoding circuit and said decoding circuit.
【請求項4】請求項1記載の記憶再生装置において、前
記内部誤り訂正符号回路で冗長ビットと情報データとを
訂正符号化する手段と、誤り訂正符号復号時に前記冗長
ビットの演算結果を情報データより先に行う手段とを備
え、前記誤り訂正符号回路の演算終了と、復号されたデ
ータの出力が同時に終了することを特徴とする記憶再生
装置。
4. The storage / reproducing apparatus according to claim 1, wherein said internal error correction code circuit corrects and codes redundant bits and information data, and calculates a result of the operation of said redundant bits at the time of error correction code decoding. A storage / reproducing apparatus, comprising: means for performing an operation earlier, wherein the end of the operation of the error correction coding circuit and the output of the decoded data end simultaneously.
【請求項5】請求項1記載の記憶再生装置において、内
部誤り訂正符号回路に用いられる誤り訂正符号はリード
ソロモン符号である事を特徴とする記憶再生装置。
5. The storage / reproduction device according to claim 1, wherein the error correction code used in the internal error correction code circuit is a Reed-Solomon code.
【請求項6】メモリを内蔵したメモリチップと、前記メ
モリチップの内側に記憶対象の情報データを誤り訂正符
号化し、かつ誤り訂正符号を生成する内部誤り訂正符号
回路を設け、前記内部誤り訂正符号回路は前記メモリよ
り読み出した誤り訂正符号を用いて前記の誤り訂正符号
を復号する記憶再生装置を備え、前記記憶再生装置は、
データの一時蓄積、及びデータの入れ替えが可能である
ことを特徴とする携帯情報端末。
6. A memory chip having a built-in memory, and an internal error correction code circuit for performing error correction encoding of information data to be stored and generating an error correction code inside said memory chip. The circuit includes a storage and playback device that decodes the error correction code using the error correction code read from the memory,
A portable information terminal capable of temporarily storing data and exchanging data.
【請求項7】メモリを内蔵したメモリチップと、前記メ
モリチップの内側に記憶対象の情報データを誤り訂正符
号化し、かつ誤り訂正符号を生成する内部誤り訂正符号
回路を設け、前記内部誤り訂正符号回路は前記メモリよ
り読み出した誤り訂正符号を用いて前記の誤り訂正符号
を復号する記憶再生装置を備え、前記記憶再生装置は、
データの一時蓄積、及びデータの入れ替えが可能である
ことを特徴とするディジタルカメラ。
7. A memory chip having a built-in memory, and an internal error correction code circuit for performing error correction encoding of information data to be stored and generating an error correction code inside said memory chip. The circuit includes a storage and playback device that decodes the error correction code using the error correction code read from the memory,
A digital camera capable of temporarily storing data and exchanging data.
【請求項8】メモリを内蔵したメモリチップと、前記メ
モリチップの内側に記憶対象の情報データを誤り訂正符
号化し、かつ誤り訂正符号を生成する内部誤り訂正符号
回路とを備え、誤り訂正符号復号時に前記内部誤り訂正
符号回路の演算結果を逐次複数ビット割り算するステッ
プと、割り算結果がある一定の要件を満たした場合、前
記内部誤り訂正符号回路内で誤り訂正を行うステップ
と、入力されたデータの復号が全て終了しても割り算結
果が一定の要件を満たさない場合には、前記内部誤り訂
正符号回路外部に誤り検出情報を出力し、前記情報デー
タを復号するステップとを備えることを特徴とする誤り
訂正方法。
8. An error correction code decoding apparatus comprising: a memory chip having a built-in memory; and an internal error correction code circuit for performing error correction coding of information data to be stored and generating an error correction code inside the memory chip. Sometimes sequentially dividing the operation result of the internal error correction code circuit by a plurality of bits; and performing error correction in the internal error correction code circuit if the division result satisfies certain requirements. Output of error detection information outside the internal error correction code circuit if the division result does not satisfy certain requirements even if decoding of all the data is completed, and decoding the information data. Error correction method.
【請求項9】メモリを内蔵したメモリチップと、前記メ
モリチップの内側に記憶対象の情報データを誤り訂正符
号化し、かつ誤り訂正符号を生成する内部誤り訂正符号
回路とを備え、誤り訂正符号復号時に前記内部誤り訂正
符号回路の演算結果を情報データに付加した冗長ビット
分だけ保持して、情報データに付加した冗長ビット分だ
け、前記演算の開始より遅延させて出力することによっ
て、前記誤り訂正符号回路の演算終了と、復号データの
出力終了を同時に行うステップを備えることを特徴とす
る誤り訂正方法。
9. An error correction code decoding apparatus comprising: a memory chip having a built-in memory; and an internal error correction code circuit for performing error correction encoding of information data to be stored and generating an error correction code inside the memory chip. Sometimes, the operation result of the internal error correction code circuit is held for the redundant bits added to the information data, and the redundant bits added to the information data are output with a delay from the start of the operation, whereby the error correction is performed. An error correction method, comprising the step of simultaneously terminating the operation of the encoding circuit and terminating the output of decoded data.
【請求項10】メモリを内蔵したメモリチップと、前記
メモリチップの内側に記憶対象の情報データを誤り訂正
符号化し、かつ誤り訂正符号を生成する内部誤り訂正符
号回路とを備え、誤り訂正符号符号化時に、使用される
符号長に応じた特定の回数だけ、符号化回路に一定値を
入力し続けることによって、情報データと冗長ビット部
の構成を変化させるステップと、誤り訂正符号復号時に
冗長ビット部の演算結果を情報データより先に行い、誤
り訂正回路の演算終了と、復号データの出力終了を同時
に行うステップとを備えることを特徴とする誤り訂正方
法。
10. An error correction code code comprising: a memory chip having a built-in memory; and an internal error correction code circuit for error correction encoding the information data to be stored and generating an error correction code inside the memory chip. Changing the configuration of the information data and the redundant bit portion by continuously inputting a constant value to the coding circuit a specific number of times according to the code length used, An error correction method comprising: performing an operation result of a section before information data; and simultaneously performing an operation end of an error correction circuit and an output end of decoded data.
JP11001121A 1998-01-07 1999-01-06 Storage reproducer, error correction method, portable information terminal and digital camera using the same Pending JPH11272568A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11001121A JPH11272568A (en) 1998-01-07 1999-01-06 Storage reproducer, error correction method, portable information terminal and digital camera using the same

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP10-1324 1998-01-07
JP132498 1998-01-07
JP11001121A JPH11272568A (en) 1998-01-07 1999-01-06 Storage reproducer, error correction method, portable information terminal and digital camera using the same

Publications (1)

Publication Number Publication Date
JPH11272568A true JPH11272568A (en) 1999-10-08

Family

ID=26334289

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11001121A Pending JPH11272568A (en) 1998-01-07 1999-01-06 Storage reproducer, error correction method, portable information terminal and digital camera using the same

Country Status (1)

Country Link
JP (1) JPH11272568A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004280790A (en) * 2003-02-28 2004-10-07 Toshiba Microelectronics Corp Ecc control unit
JP2007274239A (en) * 2006-03-30 2007-10-18 Fujitsu Ltd Error correction apparatus
CN101258471A (en) * 2005-07-15 2008-09-03 Gsip有限责任公司 Flash error correction
JP2013541112A (en) * 2010-11-02 2013-11-07 マイクロン テクノロジー, インク. Copy back operation
CN112084071A (en) * 2020-09-14 2020-12-15 海光信息技术有限公司 Calculation unit operation reinforcement method, parallel processor and electronic equipment

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004280790A (en) * 2003-02-28 2004-10-07 Toshiba Microelectronics Corp Ecc control unit
CN101258471A (en) * 2005-07-15 2008-09-03 Gsip有限责任公司 Flash error correction
JP2009501380A (en) * 2005-07-15 2009-01-15 ジーエス・アイピー・リミテッド・ライアビリティ・カンパニー Flash error correction
US8140939B2 (en) 2005-07-15 2012-03-20 Gs Ip Limited Liability Company Flash error correction
JP2007274239A (en) * 2006-03-30 2007-10-18 Fujitsu Ltd Error correction apparatus
JP4598711B2 (en) * 2006-03-30 2010-12-15 富士通株式会社 Error correction device
JP2013541112A (en) * 2010-11-02 2013-11-07 マイクロン テクノロジー, インク. Copy back operation
CN112084071A (en) * 2020-09-14 2020-12-15 海光信息技术有限公司 Calculation unit operation reinforcement method, parallel processor and electronic equipment
CN112084071B (en) * 2020-09-14 2023-09-19 海光信息技术股份有限公司 Computing unit operation reinforcement method, parallel processor and electronic equipment

Similar Documents

Publication Publication Date Title
US8713411B2 (en) Encoding and/or decoding memory devices and methods thereof
US10243589B2 (en) Multi-bit error correction method and apparatus based on a BCH code and memory system
US6279133B1 (en) Method and apparatus for significantly improving the reliability of multilevel memory architecture
US8321760B2 (en) Semiconductor memory device and data processing method thereof
US7734981B2 (en) Signal decoder, a signal decoding method and a storage system
US8418021B2 (en) Storage controller with encoding/decoding circuit programmable to support different ECC requirements and related method thereof
KR100535291B1 (en) Encoding method and memory apparatus
JP2001175542A (en) Recording and reproducing device and semiconductor memory
US20080133986A1 (en) Error correction for flash memory
US7231585B2 (en) Error correction for flash memory
KR20090099757A (en) Memory device and encoding and/or decoding method
US4473902A (en) Error correcting code processing system
JP2010522924A (en) Read level control apparatus and method
KR101645837B1 (en) Apparatuses and methods for combining error coding and modulations schemes
US7047478B2 (en) Multipurpose method for constructing an error-control code for multilevel memory cells operating with a variable number of storage levels, and multipurpose error-control method using said error-control code
CN111628780A (en) Data encoding method, data decoding method and data processing system
KR20040075954A (en) Dual chien search blocks in an error-correcting decoder
TW201145292A (en) A hardware module as XOR parity control
JPH11272568A (en) Storage reproducer, error correction method, portable information terminal and digital camera using the same
KR100290964B1 (en) Memory reproduction device and error correction method thereof
CN110795271A (en) Error correction circuit for performing error correction on user data and error correction method using the same
CN113485866B (en) Decoding method and related device, electronic equipment and storage medium
US10819374B2 (en) Accelerated processing for maximum distance separable codes using composite field extensions
JP2000349652A (en) Storage device provided with error correction means
JP5336501B2 (en) Method and encoding system for encoding error control code between bit strings