JPH11143787A - Recording and reproducing device - Google Patents

Recording and reproducing device

Info

Publication number
JPH11143787A
JPH11143787A JP9304064A JP30406497A JPH11143787A JP H11143787 A JPH11143787 A JP H11143787A JP 9304064 A JP9304064 A JP 9304064A JP 30406497 A JP30406497 A JP 30406497A JP H11143787 A JPH11143787 A JP H11143787A
Authority
JP
Japan
Prior art keywords
error correction
code
decoding circuit
data
memory
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
JP9304064A
Other languages
Japanese (ja)
Inventor
Minoru Tsukada
稔 塚田
Kazuo Nakamura
一男 中村
Kiyoshi Inoue
清 井上
Hiroaki Kotani
博昭 小谷
Atsushi Nozoe
敦史 野副
Shigemasa Shioda
茂雅 塩田
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 JP9304064A priority Critical patent/JPH11143787A/en
Publication of JPH11143787A publication Critical patent/JPH11143787A/en
Pending legal-status Critical Current

Links

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

PROBLEM TO BE SOLVED: To achieve the low error-correction-incapability of a file system without increasing the scale of an encoding/decoding circuit in a memory chip. SOLUTION: An outside encoding/decoding circuit 105 outside a memory chip 102 generates an outside coded matrix by encoding each column of an information data matrix, and adding a redundant bit to each column. On the other hand, an inside encoding/decoding circuit 104 inside the memory chip 102 generates a product coded matrix by encoding the line direction of the outside coded matrix, and adding the redundant bit to each line, and stores it in a memory 103. When the memory chip 104 is used as a single body, the inside encoding/decoding circuit 104 generates the inside coded matrix by encoding the line direction of the information data matrix, and adding the redundant bit to each line, and stores it in the memory 103.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、メモリチップおよ
びメモリチップを利用した記録再生装置におけるエラー
検出/訂正の技術に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a memory chip and a technique for detecting / correcting errors in a recording / reproducing apparatus using the memory chip.

【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 a nonvolatile semiconductor memory, particularly a flash memory, the former predominates, and particularly, a memory retention error becomes a problem.

【0003】以下、リテンションエラーの説明を行う。Hereinafter, a description will be given of a retention error.

【0004】まず、フラッシュメモリ素子の構造を図1
9に示す。
First, the structure of a flash memory device is shown in FIG.
It is shown in FIG.

【0005】フラッシュメモリ素子において、データの
書込みは、浮遊ゲートへの電荷の注入あるいは、浮遊ゲ
ートからの電荷の引き抜きでおこなう。そして、データ
の読み取りは、ソース−ドレイン間に定電圧をかけた状
態で、コントロールゲートに電圧をかけ、流れたドレイ
ン電流を電圧値に変換することによりおこなう。ここ
で、ドレイン−ソース間に電流が流れるためのコントロ
ールゲート電圧のスレッシュホールド値Vthは図20に
示すように、浮遊ゲート中の電荷の有無により変化す
る。そこで、フラッシュメモリ素子では、このVthの違
いをドレイン電流から判断することによりータ値を読み
出しているのである。ここでは、リテンションエラーと
は、経年変化によって浮遊ゲートから電荷が抜け落ちる
ことにより発生するエラーをいい、これにより、一定の
時間が経過すると、メモリ素子のデータ読み取りエラー
率が急激に増加する。
In a flash memory device, data is written by injecting charges into a floating gate or extracting charges from the floating gate. Data reading is performed by applying a voltage to the control gate while a constant voltage is applied between the source and the drain, and converting the flowing drain current into a voltage value. Here, the threshold value Vth of the control gate voltage for the current to flow between the drain and the source changes depending on the presence or absence of the charge in the floating gate as shown in FIG. Therefore, in the flash memory element, the data value is read by judging the difference of Vth from the drain current. Here, the retention error refers to an error that occurs when electric charges drop out of the floating gate due to aging, and after a certain period of time, the data reading error rate of the memory element rapidly increases.

【0006】そこで、従来、特開平3―5995号公報など
に記載されているように、フラッシュメモリを用いたフ
ァイルシステムにおいては、メモリからのデータ読み取
りを高信頼化させるため、フラッシュメモリチップ内に
符号/復号回路を搭載し、データエラー検出、及びエラ
ー訂正のための冗長データを付加した上で、データを誤
り訂正符号(Error Correct Code以下ECC)に変換して記
録し、メモリ素子からデータを読み出すときには読み出
したECCを用いてデータエラーを検出/訂正する手法が
用いられている。
Therefore, conventionally, as described in Japanese Patent Application Laid-Open No. 3-5995, a file system using a flash memory includes a flash memory chip in order to highly reliably read data from the memory. Equipped with an encoding / decoding circuit, after adding redundant data for data error detection and error correction, convert the data to error correction code (ECC) and record it, At the time of reading, a method of detecting / correcting a data error using the read ECC is used.

【0007】ここで、このようなシステムで用いられる
ECCは主として組織符号が用いられている。これは、情
報データ部と、冗長データ部が分離されて構成されてい
るECCである。組織符号によれば、情報データ部に冗長
データ部を付加することにより、ECCを構成することが
出来るため、符号語の中に情報部をそのままの形で取り
込むことが出来る。組織符号であるECCには、誤り訂正
能力や誤り訂正単位の違いから、ハミング符号、BCH符
号、リードソロモン符号等がある。比較的大きい(数百
バイト以上)のデータを一括して処理するファイルシス
テムでは、リードソロモン符号が多く用いられている。
これは、このようなファイルシステムではデータの取り
扱いの最小単位がバイト(8ビット)となることが多く、
データ誤りもバーストエラーが多いため、誤り訂正の最
小単位が1ビットであるBCH符号に対して、誤り訂正の
最小単位がシンボル(複数ビット)であるリードソロモン
符号のほうが、符号効率が良くなるからである。
Here, such a system is used.
ECC mainly uses organization codes. This is an ECC in which an information data section and a redundant data section are configured separately. According to the systematic code, an ECC can be configured by adding a redundant data portion to an information data portion, and thus the information portion can be taken in a code word as it is. ECCs, which are systematic codes, include a Hamming code, a BCH code, a Reed-Solomon code, and the like, depending on differences in error correction capability and error correction units. Reed-Solomon codes are often used in file systems that collectively process relatively large (several hundred bytes or more) data.
This is because in such a file system, the minimum unit of data handling is often bytes (8 bits),
Since data errors also have many burst errors, Reed-Solomon codes in which the minimum unit of error correction is a symbol (multiple bits) have better code efficiency than BCH codes in which the minimum unit of error correction is 1 bit. It is.

【0008】一方、一回書込み可能コンパクトディスク
(CD-R)や、デジタルオーディオテープ(R-DAT)な
ど、データ誤り率が比較的大きい(10の−3乗程度)記録
再生媒体においては、従来より、ランダムエラー、バー
ストエラーに対して、強力な誤り訂正能力を持つ積符号
が用いられている。これは、情報データをマトリクス単
位で扱い、その行方向、列方向に対し、それぞれを符号
化するECCである。積符号の特徴として、行方向、列方
向のECCが協力して復号を行う事が挙げられる。積符
号の復号方法はいろいろ知られており、それぞれ最大誤
り訂正能力、復号に要する計算量等に違いがある。
On the other hand, conventional recording / reproducing media having a relatively high data error rate (about 10 −3), such as a once-writable compact disc (CD-R) and a digital audio tape (R-DAT), have been conventionally used. Rather, a product code having a strong error correction capability for random errors and burst errors is used. This is an ECC that handles information data in a matrix unit and encodes the data in the row direction and the column direction. The feature of the product code is that the ECC in the row direction and the column direction perform decoding in cooperation. There are various known product code decoding methods, each having a difference in the maximum error correction capability, the amount of calculation required for decoding, and the like.

【0009】CD−R、R−DAT等の先に挙げた記録再生媒
体では、特開昭63-298776号公報に記載のような、リー
ドソロモン符号を積符号化した方法が主に用いられてい
る。
In the above-mentioned recording / reproducing media such as CD-R and R-DAT, a method in which a Reed-Solomon code is product-coded as described in JP-A-63-298776 is mainly used. I have.

【0010】[0010]

【発明が解決しようとする課題】従来のフラッシュメモ
リではメモリ1素子に対し、1ビットを対応させてい
た。このため読み出しの際にドレイン電流から区別すべ
きVthは1素子あたり2つであり、Vth間の間隔を充分にと
ることが出来た。しかし近年、フラッシュメモリを用い
たファイルシステムに対する大容量化、低コスト化の要
求から、1素子に対して2ビット以上を対応させる必要性
が出てきた。このことは読み出しの際にドレイン電流か
ら区別すべきVthが1素子あたり4つ以上になることを示
す。このため各Vth間の間隔は狭くなり、メモリ素子か
らのデータ読み出しエラーは必然的に増加する。
In a conventional flash memory, one bit corresponds to one memory element. For this reason, Vth to be distinguished from the drain current at the time of reading is two per element, and a sufficient interval between Vth can be obtained. However, in recent years, a demand for a large capacity and low cost of a file system using a flash memory has necessitated that two or more bits correspond to one element. This indicates that Vth to be distinguished from the drain current at the time of reading becomes 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.

【0011】この場合に、必要とされるビット誤り訂正
不能率をメモリチップ単体で満たすためにメモリチップ
内部の符号/復号回路に、より強力なECCを用いる事が
要求される。
In this case, it is required to use a stronger ECC for the encoding / decoding circuit in the memory chip in order to satisfy the required bit error uncorrectable rate by the memory chip alone.

【0012】しかし、このようにすると、符号/復号回
路がより複雑になり、復号時間が長くなる。またメモリ
チップの符号/復号回路規模が大きくなることにより、
メモリチップにおける符号/復号回路の占める割合が増
加し、メモリ実装面積が減少することにより、多値記録
化によるメモリ容量増加のメリットが生かせない。
However, in this case, the encoding / decoding circuit becomes more complicated and the decoding time becomes longer. In addition, due to the large scale of the encoding / decoding circuit of the memory chip,
As the proportion of the coding / decoding circuit in the memory chip increases and the memory mounting area decreases, the merit of increasing the memory capacity by multi-level recording cannot be used.

【0013】また、ファイルシステムとして使用すると
きに要求されるビット誤り訂正不能率は、メモリチップ
単体に必要とされるビット誤り訂正不能率よりも一般に
低い。
In addition, the uncorrectable bit error rate required when used as a file system is generally lower than the uncorrectable bit error rate required for a single memory chip.

【0014】そこで、従来のメモリチップ内の、符号/
復号回路の外側に更に符号/復号回路を設け、ファイル
システムとしての誤り訂正不能率を低くすることも考え
られる。
Therefore, the code /
It is also conceivable that an encoding / decoding circuit is further provided outside the decoding circuit to lower the error uncorrectable rate as a file system.

【0015】しかし、メモリチップ内の符号/復号回路
の他に、これと独立して符号/復号を行う符号/復号回
路を外側に設けると、ECCに必要な冗長データが増加
し、メモリチップにおける情報データの格納効率はきわ
めて低くなる。
However, if an encoding / decoding circuit for performing encoding / decoding independently from the encoding / decoding circuit in the memory chip is provided outside the memory chip, redundant data required for ECC increases, and The storage efficiency of information data is extremely low.

【0016】そこで、本発明は、メモリチップ内の符号
/復号回路を大規模化することなく、ファイルシステム
などとして使用される記録再生装置に用いる場合にも、
記録再生装置として要求される誤り訂正不能率を満足す
ることのできるメモリチップ及び記録再生装置を提供す
ることを課題とする。
Therefore, the present invention can be applied to a recording / reproducing apparatus used as a file system or the like without increasing the scale of an encoding / decoding circuit in a memory chip.
An object of the present invention is to provide a memory chip and a recording / reproducing apparatus which can satisfy an error correction rate required as a recording / reproducing apparatus.

【0017】[0017]

【課題を解決するための手段】前記目的達成のために、
本発明は、メモリを内蔵したメモリチップを用いた記録
再生装置であって、前記記憶再生装置は、前記メモリチ
ップの外部に、記憶対象の情報データを誤り訂正符号化
し第1の誤り訂正符号を生成する外符号/復号回路を備
え、前記メモリチップは、外符号/復号回路が生成した
第1の誤り訂正符号を、さらに、誤り訂正符号化し第2
の誤り訂正符号を生成し、前記メモリに記憶する内符号
/復号回路を内蔵し、前記内符号/復号回路は、前記メモ
リより読み出した第2の誤り訂正符号を用いて誤り訂正
を行い、前記第1の誤り訂正符号を復号し、前記外符号/
復号回路は、前記内符号/復号回路が復号した第1の誤り
訂正符号を用いて誤り訂正を行い、前記情報データ復号
することを特徴とする記憶再生装置を提供する。
To achieve the above object,
The present invention is a recording / reproducing apparatus using a memory chip having a built-in memory, wherein the storage / reproducing apparatus performs error correction coding of information data to be stored outside the memory chip, and generates a first error correction code. An outer code / decoding circuit for generating the first error correction code generated by the outer code / decoding circuit.
Inner error code for generating the error correction code of
/ Internal decoding circuit, the inner code / decoding circuit performs error correction using the second error correction code read from the memory, decodes the first error correction code,
The decoding circuit provides error correction using the first error correction code decoded by the inner code / decoding circuit, and decodes the information data.

【0018】本記憶装再生置によれば、メモリチップ内
部の内符号/復号回路と、メモリチップ外部の内符号/
復号回路が各々誤り訂正符号、復号を行う。すなわち、
2重に誤り訂正処理が施されるので、メモリチップから
読み出したデータの強力な誤り訂正能力を発揮できる。
また、この際、メモリチップ内部の内符号/復号回路
は、単独で、本記憶再生装置の誤り不能率を達成する場
合に比べ小規模化できる。
According to the present storage reproducing apparatus, the inner code / decoding circuit inside the memory chip and the inner code / decoding circuit outside the memory chip are used.
A decoding circuit performs error correction coding and decoding, respectively. That is,
Since error correction processing is performed twice, a strong error correction capability of data read from the memory chip can be exhibited.
In this case, the size of the inner encoding / decoding circuit in the memory chip can be reduced as compared with the case where the error rejection rate of the present storage / reproduction device is achieved.

【0019】また、このようなメモリチップ内外の誤り
訂正の分担によれば、メモリチップを外符号/復号回路
を備えていないシステムにおいて使用する場合でも、メ
モリチップ内部の内符号/復号回路による誤り訂正処理
によって従来のデータ誤り率と同程度のデータ誤り率を
確保するようメモリチップを構成することが可能とな
る。
Further, according to such sharing of error correction between the inside and outside of the memory chip, even when the memory chip is used in a system having no outer code / decode circuit, the error caused by the inner code / decode circuit inside the memory chip can be obtained. The memory chip can be configured to secure a data error rate similar to the conventional data error rate by the correction processing.

【0020】また、前記外符号/復号回路は、記憶対象
の情報データをマトリクス化し、当該マトリクスの各列
/行を誤り訂正符号化して、複数列/行の第1の誤り訂正
符号を生成し、前記内符号/復号回路は、外符号/復号回
路が生成した複数列/行の第1の誤り訂正符号を、行/列
方向に並べたマトリクスの、各行/列を誤り訂正符号化
して、複数行/列の第1の誤り訂正符号を生成し、当該複
数行/列の第1の誤り訂正符号は、前記情報データの積符
号を形成するようにすれば、メモリチップ内の符号/復
号回路の他に、これと独立して符号/復号を行う符号/
復号回路を外側に設ける場合に比べ、同程度の誤り不能
率を達成するのに必要な冗長データが少なくてすむ。よ
って、メモリチップにおける情報データの格納効率を向
上することができる。
The outer code / decoding circuit converts the information data to be stored into a matrix, performs error correction coding on each column / row of the matrix, and generates a first error correction code having a plurality of columns / rows. The inner code / decoding circuit, the first error correction code of a plurality of columns / rows generated by the outer code / decoding circuit, error correction coding of each row / column of a matrix arranged in the row / column direction, If a plurality of rows / columns of the first error correction code are generated, and the plurality of rows / columns of the first error correction codes form a product code of the information data, a code / decode in the memory chip may be performed. In addition to the circuit, a code /
As compared with the case where the decoding circuit is provided outside, less redundant data is required to achieve the same error-impossible rate. Therefore, the storage efficiency of the information data in the memory chip can be improved.

【0021】[0021]

【発明の実施の形態】以下、本発明に係る記録再生装置
の一実施形態を、記録媒体としてフラッシュメモリを用
い、ファイルシステムとして使用される記録再生装置へ
の適用を例にとり説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of a recording / reproducing apparatus according to the present invention will be described below, taking as an example the application to a recording / reproducing apparatus used as a file system using a flash memory as a recording medium.

【0022】図1に、本実施形態に係るファイルシステ
ムの構成を示す。
FIG. 1 shows a configuration of a file system according to the present embodiment.

【0023】図1においてメモリ103はデータの記録あ
るいは再生を行う記録媒体、メモリチップ102は、メモ
リ103と内符号/復号回路104とを含むチップである。外
符号/復号回路105はインターフェースLSI106内にあっ
て、外符号生成や外符号検出及びデータの訂正を行う回
路である。インターフェースLSI106はフラッシュメモリ
103を使用したファイルシステム101におけるシステムバ
ス109とのインターフェース制御を行うLSIである。
In FIG. 1, a memory 103 is a recording medium for recording or reproducing data, and a memory chip 102 is a chip including the memory 103 and an inner encoding / decoding circuit 104. The outer code / decode circuit 105 is a circuit that is provided in the interface LSI 106 and performs outer code generation, outer code detection, and data correction. Interface LSI 106 is a flash memory
This is an LSI that controls the interface with the system bus 109 in the file system 101 using the file system 103.

【0024】より具体的には、本実施形態に係るファイ
ルシステムは、たとえば、図2に示すように構成するこ
とができる。
More specifically, the file system according to the present embodiment can be configured as shown in FIG. 2, for example.

【0025】図2において、フラッシュメモリ502は、
図1のメモリチップ102に相当し、図1のメモリ103
に相当する記録媒体と、図1の内符号/復号回路104
に相当するECC回路を備えている。インターフェースLSI
503はフラッシュメモリ502を使用したファイルシステム
501におけるシステムバス506とのインターフェース制御
を行うLSIであり、図1のインタフェースLSI106に相
当する。インターフェースLSI503内のECC回路5031は図1
の外符号/復号回路105に相当する。
In FIG. 2, the flash memory 502
1 corresponds to the memory chip 102 in FIG.
And the inner encoding / decoding circuit 104 in FIG.
ECC circuit equivalent to. Interface LSI
503 is a file system using the flash memory 502
The LSI 501 controls the interface with the system bus 506 at 501, and corresponds to the interface LSI 106 of FIG. Figure 1 shows the ECC circuit 5031 in the interface LSI 503.
Corresponds to the outer code / decoding circuit 105.

【0026】マイコン504はシステムバスを通じて送ら
れてきた命令を解釈し、解釈結果に応じてフラッシュメ
モリ502へのデータ読み込み及び書込み(Read/Write 、
以下R/W)、及びDRAM505へのデータR/Wを制御する
中央処理装置(CPU5041)をやROM5042やRAM5043を備
えており、ファイルシステム501のコントローラの役割
を担っている。DRAM505はフラッシュメモリ502のデータ
を、インターフェースLSI503内のECC回路5031に渡す
際、データのバッファの役目を担う補助メモリである。
The microcomputer 504 interprets the command transmitted through the system bus, and reads and writes data (Read / Write,
A central processing unit (CPU 5041) for controlling data R / W to the DRAM 505, a ROM 5042, and a RAM 5043 are provided, and play a role of a controller of the file system 501. The DRAM 505 is an auxiliary memory serving as a data buffer when passing data from the flash memory 502 to the ECC circuit 5031 in the interface LSI 503.

【0027】これらの各部は、制御信号線、アドレスバ
ス、データバスによって接続されている。
These units are connected by a control signal line, an address bus, and a data bus.

【0028】ここで、図2のインターフェースLSI503
は、たとえば、図3に示すように構成される。
Here, the interface LSI 503 shown in FIG.
Is configured, for example, as shown in FIG.

【0029】図3において、システムインターフェース
部601はシステムバスを通じて送受する命令及びデータ
の制御を行う。マイコンインターフェース部602はマイ
コン504との間で送受する命令及びデータの制御を行
う。DRAM制御部603は、DRAM505との間で送受するデータ
の制御を行う。 フラッシュメモリ制御部604は、 フラ
ッシュメモリ502へ送られる命令、及びフラッシュメモ
リ502との間で送受するデータの制御を行う。ECC制御部
605はマイコン504の命令により、システムバス506を通
して入力するデータや、フラッシュメモリ502からのデ
ータをECC回路5031に渡し、ECC生成や、ECC検出及びデ
ータの訂正といったECC訂正手段の制御を行う。
In FIG. 3, a system interface unit 601 controls commands and data transmitted and received through a system bus. The microcomputer interface unit 602 controls commands and data transmitted to and received from the microcomputer 504. The DRAM control unit 603 controls data transmitted to and received from the DRAM 505. The flash memory control unit 604 controls commands transmitted to the flash memory 502 and data transmitted to and received from the flash memory 502. ECC control unit
In accordance with an instruction from the microcomputer 504, the data 605 transfers data input through the system bus 506 and data from the flash memory 502 to the ECC circuit 5031 and controls ECC correction means such as ECC generation, ECC detection and data correction.

【0030】以下、このようなファイルシステムにおい
て行われるデータ誤り検出、訂正処理について説明す
る。
Hereinafter, data error detection and correction processing performed in such a file system will be described.

【0031】まず、具体的な動作について説明する前
に、本実施形態で用いる積符号について説明する。
First, before describing a specific operation, a product code used in the present embodiment will be described.

【0032】本実施形態は、外符号/復号回路105と内
符号/復号回路104が協調して、積符号を行う。情報デ
ータの記憶の際には、図4に示すフォーマットに従い、
外符号/復号回路105は情報データを符号化して外符号C
1を生成し、内符号/復号回路104は、外符号を符号化し
て、内符号C2を生成し、メモリ103に記憶する。
In this embodiment, the outer code / decode circuit 105 and the inner code / decode circuit 104 cooperate to perform a product code. When storing the information data, follow the format shown in FIG.
The outer code / decoding circuit 105 encodes the information data to form an outer code C
1 is generated, the inner code / decoding circuit 104 codes the outer code, generates an inner code C2, and stores it in the memory 103.

【0033】本実施形態では、情報データのR/Wは1
記録再生データ領域512バイト単位で行う。また、積符
号化においては、複数の記録再生データ領域を一括して
符号化してもよいが、本実施形態では1記録再生データ
領域ごとに積符号化を行う。積符号に用いられるECC
は、内符号C2、外符号C1ともリードソロモン符号を
用いる。内符号C2の訂正能力は1シンボルとする。外
符号C1の訂正能力は2シンボルとし、内符号/復号回
路104からのイレージャフラグ信号をもとにイレージャ
訂正を行う。イレージャ訂正とはイレージャフラグ信号
を利用することで、外符号C1のみを用いて誤り訂正を
行う場合よりも誤り訂正能力を向上させる周知の訂正法
である。なお、イレージャ訂正については、たとえば、
日刊工業新聞社発行の「デジタルビデオ記録技術」の8
9ページから122ページや、共立出版発行の符号理論な
どに記載されている。
In this embodiment, the R / W of the information data is 1
The recording / reproduction data area is performed in 512-byte units. Further, in the product coding, a plurality of recording / reproducing data areas may be collectively coded, but in the present embodiment, the product coding is performed for each recording / reproducing data area. ECC used for product code
Uses a Reed-Solomon code for both the inner code C2 and the outer code C1. The correction capability of the inner code C2 is one symbol. The correction capability of the outer code C1 is two symbols, and erasure correction is performed based on the erasure flag signal from the inner code / decoding circuit 104. The erasure correction is a well-known correction method that uses an erasure flag signal to improve the error correction capability as compared with the case where error correction is performed using only the outer code C1. For erasure correction, for example,
8 of "Digital Video Recording Technology" published by Nikkan Kogyo Shimbun
It is described in pages 9 to 122 and in coding theory published by Kyoritsu Shuppan.

【0034】さて、外符号C1のみを用いた場合の誤り
訂正能力をt2シンボルとすると、イレージャ訂正の訂
正能力は最大で2×t2シンボルとなる。本実施形態で
はt2は2なので、訂正能力は最大で4シンボルとな
る。
Assuming that the error correction capability when only the outer code C1 is used is t2 symbols, the correction capability of the erasure correction is 2 × t2 symbols at the maximum. In this embodiment, since t2 is 2, the correction capability is 4 symbols at the maximum.

【0035】このような積符号の復号方式は、いろいろ
な方式があるが、本実施形態では先に内符号/復号回路
104で内符号C2を復号した後、外符号/復号回路105で
外符号C1を復号する。積符号においては、情報データ
が正方マトリクスデータに近いほど、符号化効率が良い
ため、情報データは16バイト×32バイトのマトリクスデ
ータとして扱う。外符号C1は図4に示す32バイトの情
報データの列データを符号化したものであり、内符号C
2は16バイトの情報データもしくは外符号/復号回路1
05で付加された冗長シンボルの行データを符号化した
ものになる。
There are various methods for decoding such a product code. In this embodiment, the inner code / decoding circuit is used first.
After decoding the inner code C2 in 104, the outer code C1 is decoded in the outer code / decoding circuit 105. In the product code, the closer the information data is to the square matrix data, the better the encoding efficiency is. Therefore, the information data is handled as 16-byte × 32-byte matrix data. The outer code C1 is obtained by encoding the column data of the 32-byte information data shown in FIG.
2 is 16-byte information data or outer code / decoding circuit 1
05 is obtained by encoding the row data of the redundant symbol added.

【0036】内符号で符号化する情報量は1行あたり16
×8=128ビット、外符号で符号かする情報量は1列あた
り32×8=256ビットになる。またリードソロモン符号の
シンボル長は、1バイトが1シンボルに対応していた方
がデータの取り扱い上便利であるので、本実施形態で
は、1シンボルのビット数8とし、冗長シンボル長は内符
号16シンボル、外符号32シンボルのリードソロモン符号
を用いる。
The amount of information encoded by the inner code is 16 per line.
× 8 = 128 bits, the amount of information to be encoded by the outer code is 32 × 8 = 256 bits per column. Also, the symbol length of the Reed-Solomon code is more convenient in handling data when one byte corresponds to one symbol. Therefore, in this embodiment, the number of bits of one symbol is eight, and the length of the redundant symbol is 16 A Reed-Solomon code of 32 symbols and an outer code is used.

【0037】ここで、リードソロモン符号における最大
符号語長、及び最大情報量についての条件を式1に示
す。
Equation 1 shows conditions for the maximum codeword length and the maximum information amount in the Reed-Solomon code.

【0038】[0038]

【数1】 (Equation 1)

【0039】tはシンボル訂正能力である。ガロア体
は、リードソロモン符号の符号語が含まれる集合で、m
は1シンボルあたりのビット数に対応する。mが大きい
ほど、最大符号語長及び最大情報量が大きくなる。しか
し、1シンボル当たりに含まれるビット数が多くなるた
め、ビットあたりの誤り率が同じなら、訂正能力tが同
じでも、冗長ビット数が増加する。ここで、リードソロ
モン符号の符号語をWとすると、符号多項式C(x)は、
符号語Wの各成分を係数に持つ多項式として定義され
る。
T is the symbol correction capability. A Galois field is a set that contains Reed-Solomon codewords.
Corresponds to the number of bits per symbol. As m increases, the maximum codeword length and the maximum information amount increase. However, since the number of bits included per symbol increases, if the error rate per bit is the same, the number of redundant bits increases even if the correction capability t is the same. Here, assuming that the code word of the Reed-Solomon code is W, the code polynomial C (x) is
It is defined as a polynomial having each component of the codeword W as a coefficient.

【0040】本実施形態の場合、シンボル長の条件を満
たすmの最小値は8である。この時最大符号語長は、2
の8乗−1=255シンボル、最大情報量は1シンボル
訂正時で2の8乗−3バイト=253バイト=2024
ビット、2シンボル訂正時で2の8乗−5=251バイト
=2008ビットとなり、条件を満たす。従ってリード
ソロモン符号の符号語の集合は内符号、外符号とも2の
8乗のガロア体を用いる。冗長シンボル長は内符号で、
2シンボル=2バイト、外符号で4シンボル=4バイト
となる。
In the case of the present embodiment, the minimum value of m that satisfies the condition of the symbol length is 8. At this time, the maximum codeword length is 2
Raised to the power of 8-1 = 255 symbols, the maximum amount of information is 2 raised to the power of 3-3 bytes = 253 bytes = 2024 when one symbol is corrected
When correcting bits and 2 symbols, 2 8 −5 = 251 bytes = 2008 bits, which satisfies the condition. Therefore, a set of code words of the Reed-Solomon code uses a Galois field of 2 to the power of 8 for both the inner code and the outer code. The redundant symbol length is the inner code,
2 symbols = 2 bytes, and outer symbols = 4 symbols = 4 bytes.

【0041】以下、このような積符号を生成しメモリ1
05に記録する具体的動作について説明する。
Hereinafter, such a product code is generated and stored in the memory 1.
A specific operation to be recorded at 05 will be described.

【0042】図5に、メモリ105への記録処理の手順
を示す。
FIG. 5 shows a procedure of a recording process to the memory 105.

【0043】情報データは、システムバスを109を介
して1記録再生データ領域、つまり512バイトごとに、図
4の行順に入力される。
Information data is input via the system bus 109 via the system bus 109 in one recording / reproducing data area, ie, every 512 bytes, in the order of rows in FIG.

【0044】インターフェースLSI106内の外符号
/復号回路105は情報データを16バイト×32バイ
トのマトリクスデータに変換する。しかし、実際にメモ
リ103に記録される時は、情報データは512バイト
の列データとして記録されるため、マトリクスデータへ
の変換は必ずしも必要ではなく、1次元配列データのま
まで扱ってもよい。この場合、メモリへの記録処理はス
テップ701からはじめてもよい。以下の説明では、情
報データは1次元配列データとして扱い、ステップ70
1から処理を行う場合を例にとる。
The outer code / decode circuit 105 in the interface LSI 106 converts the information data into 16-byte × 32-byte matrix data. However, when the information data is actually recorded in the memory 103, the information data is recorded as 512-byte column data. Therefore, the conversion to the matrix data is not always necessary, and the data may be handled as one-dimensional array data. In this case, the recording process to the memory may be started from step 701. In the following description, the information data is treated as one-dimensional array data,
The case where processing is performed from 1 is taken as an example.

【0045】外符号/復号回路105は、マトリクスデ
ータあるいは1次元配列データをステップ701に示す
ように情報データを外符号C1に符号化する。更に、ス
テップ702に示すように、外符号化された1次元配列
データの構成を変換し内符号回路104に入力する。ス
テップ701において512バイトの1次元配列データ
を外符号C1に変換する処理、及びステップ702にお
いて、外符号化された1次元配列データの構成を変換す
る処理の様子を図6に示す。
The outer code / decoding circuit 105 encodes the matrix data or the one-dimensional array data into the outer code C1 as shown in step 701. Further, as shown in step 702, the configuration of the outer coded one-dimensional array data is converted and input to the inner coding circuit 104. FIG. 6 shows the processing of converting the 512-byte one-dimensional array data into the outer code C1 in step 701 and the processing of converting the configuration of the outer-coded one-dimensional array data in step 702.

【0046】最初に、512バイトの1次元配列データ
を外符号C1に変換する処理では、インターフェースL
SI106内の外符号/復号回路105は512バイト
の情報データを一旦、内部のメモリに順番に格納した
後、内部のメモリの最初のアドレスからデータアドレス
を15バイトずつスキップしながら情報データを1バイ
トずつ読み取る。これを32回繰り返し、32バイトの
列データを生成する(a)。この操作を、最初に情報デ
ータを読み取るアドレスを1増加させながら、16回す
なわち16バイト行データの各列について行い、列デー
タ16個を生成する。
First, in the process of converting the 512-byte one-dimensional array data into the outer code C1, the interface L
The outer code / decoding circuit 105 in the SI 106 temporarily stores the 512-byte information data in the internal memory in order, and then skips the data address by 15 bytes from the first address of the internal memory, and stores the information data in one byte. Read each. This is repeated 32 times to generate 32-byte column data (a). This operation is performed 16 times, that is, for each column of the 16-byte row data, while first increasing the address from which the information data is read, thereby generating 16 column data.

【0047】この列データを各々リードソロモン符号化
して、情報データ部を外符号C1に符号化する。外符号
/復号回路105の訂正能力は2シンボルだから必要な
冗長シンボル長は4シンボルとなる。冗長バイト数は、
4×8÷8=4バイトになる。このため外符号C1の冗
長データ部R1は、4×16=64バイトの情報量とな
る。
Each of the column data is subjected to Reed-Solomon encoding, and the information data portion is encoded into an outer code C1. Since the correction capability of the outer code / decoding circuit 105 is 2 symbols, the required redundant symbol length is 4 symbols. The number of redundant bytes is
4 × 8 ÷ 8 = 4 bytes. Therefore, the redundant data portion R1 of the outer code C1 has an information amount of 4 × 16 = 64 bytes.

【0048】次に外符号化された1次元配列データの構
成を変換する処理について説明する。内符号/復号回路
104はデータを図4の行方向に符号化するため、あら
かじめ外符号/復号回路105において、4バイト(1
行4列)×16個からなる外符号の冗長部R1を16バ
イト(16行1列)×4行のデータに変換しておく。
Next, a process of converting the configuration of the outer-coded one-dimensional array data will be described. The inner encoding / decoding circuit 104 encodes the data in the row direction in FIG.
The redundant portion R1 of the outer code consisting of 16 rows × 4 columns is converted into 16 bytes (16 rows × 1 column) × 4 rows of data.

【0049】この変換は、各列について生成した外符号
C1の冗長部R1を順番に内部のメモリに格納した後、
この内部のメモリの、冗長データ部R1を格納した最初
のアドレスから冗長データ部R1を、データアドレスを
3バイトずつスキップしながら1バイトずつ16回繰り
返して読み出し、16バイトの行データを生成する
(b)。この操作を最初の冗長バイトを読み出すアドレ
スを1増加させながら、4回繰り返して得られた4つの
行データを、図6の情報データ部の後ろに順番に付加す
る。このようにして生成した32行の情報データ部と、
その後ろの4行の冗長データ部R1の1次元配列を、内
符号/復号回路104に外符号C1として出力する。
This conversion is performed by sequentially storing the redundant portion R1 of the outer code C1 generated for each column in the internal memory,
From the first address of the internal memory where the redundant data portion R1 is stored, the redundant data portion R1 is repeatedly read 16 times by 1 byte while skipping the data address by 3 bytes, thereby generating 16-byte row data ( b). This operation is repeated four times while increasing the address from which the first redundant byte is read out by one, and four row data obtained four times are sequentially added after the information data portion in FIG. The information data part of 32 lines generated in this way,
The one-dimensional array of the subsequent four rows of redundant data portion R1 is output to inner code / decoding circuit 104 as outer code C1.

【0050】図5に戻り、次のステップ703では、メ
モリチップ102内の内符号/復号回路104が、入力
された外符号C1を内符号C2に変換する。更に、ステ
ップ704に示すように、内符号化された1次元配列デ
ータの構成を変換しメモリ103に記録する。
Returning to FIG. 5, in the next step 703, the inner code / decoding circuit 104 in the memory chip 102 converts the input outer code C1 into an inner code C2. Further, as shown in step 704, the configuration of the inner-coded one-dimensional array data is converted and recorded in the memory 103.

【0051】ステップ703において外符号C1を内符
号C2に変換する処理、及びステップ704において、
内符号化された1次元配列データの構成を変換する処理
の様子を図7に示す。
In step 703, the outer code C1 is converted into the inner code C2, and in step 704,
FIG. 7 shows a process of converting the configuration of the inner-coded one-dimensional array data.

【0052】最初に外符号C1を内符号C2に変換する
処理では、内符号/復号回路104は図7に示すよう
に、512バイトの情報データ部+64バイトの外符号
C1の冗長データ部R1、つまり(32+4)個×16
バイトの1次元配列データを内符号/復号回路104内
部のメモリに一旦記録した後、内符号C2に変換する。
First, in the process of converting the outer code C1 to the inner code C2, the inner code / decoding circuit 104, as shown in FIG. 7, the information data portion of 512 bytes + the redundant data portion R1 of the outer code C1 of 64 bytes, That is, (32 + 4) × 16
The byte one-dimensional array data is temporarily recorded in a memory inside the inner code / decoding circuit 104, and then converted to an inner code C2.

【0053】1次元配列データは情報データ部、冗長デ
ータ部R1の順に図4の行順に入力される(a)。内符
号/復号回路104は、最初に情報データ部を16バイ
トごとにリードソロモン符号化し、内符号C2に符号化
する。次に外符号C1の冗長データ部R1を16バイト
ごとにリードソロモン符号化し、内符号C2に符号化す
る。
The one-dimensional array data is input in the order of the rows in FIG. 4 in the order of the information data section and the redundant data section R1 (a). The inner encoding / decoding circuit 104 first performs Reed-Solomon encoding on the information data portion for every 16 bytes, and encodes it into an inner code C2. Next, the redundant data portion R1 of the outer code C1 is Reed-Solomon encoded every 16 bytes, and is encoded into the inner code C2.

【0054】ここで、内符号/復号回路104の訂正能
力は1シンボルだから、必要な冗長シンボル長は2シン
ボルである。冗長バイト数は2×8÷8=2バイトにな
る。従って内符号C2の冗長データ部R2は、2×(3
2+4)=72バイトの情報量となる。
Here, since the correction capability of the inner code / decode circuit 104 is one symbol, the required redundant symbol length is two symbols. The number of redundant bytes is 2 × 8/8 = 2 bytes. Therefore, the redundant data portion R2 of the inner code C2 is 2 × (3
2 + 4) = 72 bytes of information amount.

【0055】こうして積符号化された情報データを、図
5のステップ704において、1次元配列データとして
メモリ103に記録する。
The information data thus product-coded is recorded in the memory 103 as one-dimensional array data in step 704 of FIG.

【0056】メモリ103に記録される積符号のデータ
格納フォーマットを図8に示す。
FIG. 8 shows a data storage format of the product code recorded in the memory 103.

【0057】メモリ103の1行は、512バイトの情
報データ部と、64バイトの外符号C1の冗長データ部
R1+72バイトの内符号C2の冗長データ部R2+R
/Wに関するアクセスデータが記録された管理データ部
から構成されている。
One row of the memory 103 has a 512-byte information data part, a 64-byte redundant code part R1 of an outer code C1 + a redundant data part R2 + R of a 72-byte inner code C2.
/ W is composed of a management data section in which access data relating to / W is recorded.

【0058】フラッシュメモリを使用する場合、その構
造上、1行の部分的なR/Wは困難なため、情報データ
部と管理データ部とからなる1次元配列データは一括し
て記録される。情報データと管理データ部は、物理的あ
るいは論理的なパーティションによって分離して管理す
る。
When a flash memory is used, one-dimensional array data composed of an information data section and a management data section is collectively recorded because partial R / W of one row is difficult due to its structure. The information data and the management data section are managed separately by physical or logical partitions.

【0059】管理データ部は、図7に示すように、内符
号/復号回路104が、外符号/復号回路105から送
られた外符号C1(a)の後ろに(b)に示すように、
各行について生成した内符号C2の冗長部R2を付加
し、更にアクセスデータが付加された構成となってい
る。ただし、この順序は任意としてもよい。
As shown in FIG. 7, the management data portion is such that the inner code / decoding circuit 104 is arranged after the outer code C 1 (a) sent from the outer code / decoding circuit 105 as shown in FIG.
A redundant portion R2 of the inner code C2 generated for each row is added, and access data is further added. However, this order may be arbitrary.

【0060】次に、このようにしてメモリ105に記録
された積符号を復号する処理について説明する。
Next, the process of decoding the product code recorded in the memory 105 in this manner will be described.

【0061】図9にこの処理の処理手順を示す。FIG. 9 shows a processing procedure of this processing.

【0062】ステップ801に示すようにメモリ103
から読み出された積符号は、図10(a)に示すよう
に、内符号/復号回路104に、外符号C1(512バ
イトの情報データ部+64バイトの外符号C1の冗長デ
ータ部R1)+72バイトの内符号C2の冗長データ部
R2からなる1次元配列データとして入力される。
As shown in step 801, the memory 103
As shown in FIG. 10 (a), the product code read from the internal code / decoding circuit 104 is supplied to the inner code / decode circuit 104 with the outer code C1 (512-byte information data portion + 64-byte redundant data portion R1 of the outer code C1) +72. The data is input as one-dimensional array data including a redundant data portion R2 of an inner code C2 of bytes.

【0063】内符号回路/復号回路104は、ステップ
802に示すようにこの1次元配列データを順番に一旦
内部のメモリに記憶した後、18バイトの内符号C2を
36行生成する。これは内部のメモリから2バイトを読
み、情報データまたは冗長データ部R1に付加する(図
10(b))事で生成する処理を、36回繰り返す事に
より行う。
The inner encoding / decoding circuit 104 temporarily stores the one-dimensional array data in an internal memory as shown in step 802, and then generates 36 rows of 18-byte inner code C2. This is performed by repeating the process of reading 2 bytes from the internal memory and adding it to the information data or the redundant data portion R1 (FIG. 10B) 36 times.

【0064】次に内符号C2を生成したら、ステップ8
03からステップ806において内符号C2を用いて復
号処理をおこなう。図8では点線で囲まれたステップ群
が2つあるが、上の方が内符号C2の復号処理に対応す
る。
Next, when the inner code C2 is generated, step 8
From step 03, in step 806, decoding processing is performed using the inner code C2. In FIG. 8, there are two steps surrounded by a dotted line, and the upper one corresponds to the decoding process of the inner code C2.

【0065】内符号C2の復号処理においては、最初に
ステップ803に示すように、各行、すなわち18バイ
トの内符号C2 36個についてシンドロームS(x)
を計算し、これから図4の行データのエラー訂正及び検
出を行う。
In the decoding process of the inner code C2, first, as shown in step 803, the syndrome S (x) for each row, that is, 36 18-byte inner codes C2
, And error correction and detection of the row data in FIG.

【0066】シンドロームS(x)とは符号語に発生し
た誤りの状態を示すパターンである。このパターンは記
録符号語に関係なく符号語内に発生した誤りのみで決定
される。シンドロームの定義を式2に示す。読取り符号
語をR(x)とすると、誤り系列E(x)=0の時は読
み込んだデータに誤りがない事を示す。このときR
(x)=C(x)となるから、式2の定義から、S
(x)=0となる。誤り系列E(x)が非零の場合、読
み込んだデータに誤りが発生した事を示す。このときS
(x)は非零となり、式2で定義するような連立方程式
になる。
The syndrome S (x) is a pattern indicating the state of an error that has occurred in a codeword. This pattern is determined only by errors occurring in the code word regardless of the recording code word. Equation 2 defines the syndrome. Assuming that the read codeword is R (x), when the error sequence E (x) = 0, it indicates that there is no error in the read data. Then R
Since (x) = C (x), from the definition of Equation 2, S
(X) = 0. When the error sequence E (x) is non-zero, it indicates that an error has occurred in the read data. Then S
(X) becomes non-zero and becomes a simultaneous equation as defined by Expression 2.

【0067】[0067]

【数2】 (Equation 2)

【0068】リードソロモン符号の場合、誤り訂正単位
はシンボル(複数ビット)なので、S(x)は誤りシン
ボルの位置と誤りの大きな(シンボル内のビット誤り位
置に対応する)の情報を含んでいる。このときS(x)
は式3で定義されるように誤り位置と誤りの大きさで表
される。
In the case of the Reed-Solomon code, since the error correction unit is a symbol (a plurality of bits), S (x) includes information on the position of the error symbol and the large error (corresponding to the bit error position in the symbol). . At this time, S (x)
Is represented by an error position and an error magnitude as defined by Expression 3.

【0069】[0069]

【数3】 (Equation 3)

【0070】Nデータ内のエラー数が訂正能力t以内な
ら、式3に示すS(x)から誤り位置と誤りの大きさを
見つける事で、符号誤りを訂正することができる。エラ
ー数が訂正能力を超える場合は、式3の連立方程式の解
が範囲外となるか不定となり、誤り訂正はできない。こ
の場合、誤りパターンによっては誤り検出が可能な時が
ある。しかし誤り方によっては、誤った符号語を推定し
てしまう(誤訂正)ことがある。本実施形態の内符号C
2の場合、誤り訂正能力tは1である。
If the number of errors in the N data is within the correction capability t, the code error can be corrected by finding the error position and error magnitude from S (x) shown in Expression 3. If the number of errors exceeds the correction capability, the solution of the simultaneous equations of Equation 3 is out of the range or indeterminate, and error correction cannot be performed. In this case, error detection may be possible depending on the error pattern. However, depending on the type of error, an erroneous codeword may be estimated (erroneous correction). Inner code C of this embodiment
In the case of 2, the error correction capability t is 1.

【0071】シンドロームS(x)の計算が終了したな
らば、次にステップ804に示すようにS(x)の値に
よって誤り訂正/検出を行うかどうかを判定する。
When the calculation of the syndrome S (x) is completed, it is next determined whether or not to perform error correction / detection based on the value of S (x) as shown in step 804.

【0072】そしてS(x)=0の場合は、その内符号
C2の行に誤りがない事を示すので、内符号/復号回路
104は、その内符号の行から、内符号C2の2バイト
の冗長データ部R2を除去し16バイトの内符号C2を
訂正せずに外符号/復号回路105に出力する。
If S (x) = 0, it indicates that there is no error in the row of the inner code C2, so that the inner code / decoding circuit 104 calculates two bytes of the inner code C2 from the row of the inner code. , And outputs the 16-byte inner code C2 to the outer code / decoding circuit 105 without correcting it.

【0073】一方、S(x)が非零の場合は、その内符
号C2に誤りが発生した事を示すので、次にステップ8
05において、符号語が訂正可能かどうかをシンドロー
ムを用いて計算する。そして、内符号C2から計算され
たシンドロームパターンがある特定の符号語のシンドロ
ームパターン群に一致した場合はステップ806で誤り
訂正を行い、その内符号C2の行から内符号C2の2バ
イトの冗長データ部R2を除去し、訂正した16バイト
の内符号C2を外符号/復号回路105に出力する。一
致しない場合は、内符号C2の訂正能力を超えるエラー
が発生したとみなし、誤り検出処理のみを行い、その内
符号の行から、内符号C2の2バイトの冗長データ部R
2を除去し16バイトの内符号C2を訂正せずに外符号
/復号回路105に出力する。
On the other hand, if S (x) is non-zero, it indicates that an error has occurred in its inner code C2.
At 05, whether the codeword is correctable is calculated using the syndrome. If the syndrome pattern calculated from the inner code C2 matches a syndrome pattern group of a specific code word, error correction is performed in step 806, and the 2-byte redundant data of the inner code C2 from the row of the inner code C2 The section R2 is removed, and the corrected 16-byte inner code C2 is output to the outer code / decoding circuit 105. If they do not match, it is assumed that an error exceeding the correction capability of the inner code C2 has occurred, and only error detection processing is performed. From the inner code row, the 2-byte redundant data portion R of the inner code C2 is read.
2 is removed and the 16-byte inner code C2 is output to the outer code / decoding circuit 105 without correction.

【0074】このとき、外符号C1による誤り訂正時に
おいて内符号C2に誤訂正に起因する外符号C1の誤訂
正を少なくするため、内符号C2の復号時において最大
訂正能力以上の誤りが発生した場合、つまり本実施例の
場合S(x)が非零の場合は、内符号/復号回路104
はステップ807において、誤り訂正/検出もしくは誤
り検出のみを行った行の全てのシンボルにイレージャフ
ラグ情報を付加し、外符号/復号回路105に出力す
る。
At this time, in order to reduce the erroneous correction of the outer code C1 caused by the erroneous correction in the inner code C2 at the time of error correction by the outer code C1, an error of more than the maximum correction capability occurred at the time of decoding the inner code C2. In this case, that is, in the case of this embodiment, when S (x) is non-zero, the inner code / decoding circuit 104
In step 807, erasure flag information is added to all the symbols in the row on which error correction / detection or only error detection has been performed, and the result is output to the outer code / decoding circuit 105.

【0075】いま、図11に示す積符号の構成図の右横
の網掛け三角形で示されている行が、内符号C2の訂正
能力を超える誤りが発生した行を示すものとする。1、
2、6行目はランダムエラーが発生していることを示
す。4行目はバーストエラーが発生していることを示
す。この場合、1、2、4、6行目にあたる16バイト
のデータ全てにイレージャフラグ情報を付加する。イレ
ージャフラグ情報は内符号復号データとは別に、付加の
対象となったバイトを識別可能なように外符号/復号回
路105に出力する。
Now, assume that the row indicated by the shaded triangle on the right side of the product code configuration diagram shown in FIG. 11 indicates the row in which an error exceeding the correction capability of the inner code C2 has occurred. 1,
Lines 2 and 6 indicate that a random error has occurred. The fourth line indicates that a burst error has occurred. In this case, erasure flag information is added to all 16-byte data corresponding to the first, second, fourth, and sixth rows. The erasure flag information is output to the outer code / decoding circuit 105 so that the byte to be added can be identified separately from the inner code decoded data.

【0076】次に、ステップ808では、外符号/復号
回路105において内符号C2によって復号された外符
号C1を、36バイトごとの列に構成し、ステップ80
9からステップ814において外符号C1を用いて復号
処理をおこなう。図8では点線で囲まれたステップ群が
2つあるが、下の方が外符号C1の復号処理に対応す
る。
Next, in step 808, the outer code C1 decoded by the inner code C2 in the outer code / decoding circuit 105 is arranged in columns every 36 bytes.
From step 9 to step 814, decoding processing is performed using the outer code C1. In FIG. 8, there are two steps surrounded by a dotted line, and the lower one corresponds to the decoding process of the outer code C1.

【0077】最初にステップ808について説明する。First, step 808 will be described.

【0078】外符号/復号回路105には、外符号C1
が図12aに示すように、情報データ部の後に冗長デー
タ部R1が付加された形態の1次元配列データとして入
力される。
The outer code / decode circuit 105 has an outer code C1
Is input as one-dimensional array data in a form in which a redundant data portion R1 is added after the information data portion as shown in FIG. 12A.

【0079】外符号/復号回路105は、この1次元配
列データを一旦内部のメモリに格納した後、データアド
レスを15バイトずつスキップしながら1バイト読み取
る処理を36回繰り返し36バイトの外符号C1の列デ
ータを生成する処理を、読み出しを開始する先頭のアド
レスを順次1バイトずつ進めながら16回繰り返し、1
6列の外符号C1を生成する。
The outer code / decoding circuit 105 temporarily stores this one-dimensional array data in an internal memory, and repeats the process of reading one byte while skipping the data address by 15 bytes 36 times, 36 times, to obtain the 36 byte outer code C1. The process of generating column data is repeated 16 times while sequentially advancing the start address at which reading is started by one byte at a time.
An outer code C1 of six columns is generated.

【0080】次に外符号/復号回路105は、外符号C
1の各列について、ステップ810に置いてシンドロー
ムS(x)を求める。そしてS(x)=0の場合は、読
み出された1次元配列データに誤りがないことを示すの
で、外符号/復号回路105は、その外符号の列から、
冗長データ部R1を除去し、32バイトの情報データ部
を訂正せず出力する。
Next, the outer code / decoding circuit 105
The syndrome S (x) is determined for each column of 1 in step 810. When S (x) = 0, it indicates that there is no error in the read one-dimensional array data, so the outer code / decoding circuit 105 determines from the sequence of the outer code
The redundant data portion R1 is removed, and the 32-byte information data portion is output without correction.

【0081】一方S(x)=0でない場合は、次に、情
報データ部+外符号C1の冗長データ部R1からなる1
列36バイト中のイレージャフラグが付加されたバイト
の総数をEr(x)として、ステップ811においてE
r(x)の値を判定する。
On the other hand, if S (x) is not equal to 0, then 1 is composed of the information data section + the redundant data section R1 of the outer code C1.
In step 811, the total number of bytes to which the erasure flag has been added in the 36 bytes of the column is set to Er (x).
Determine the value of r (x).

【0082】そして、Er(x)=0の場合は、ステッ
プ813においてイレージャフラグを用いた訂正を行わ
ず、外符号C1のみによる通常の復号を行う。
If Er (x) = 0, normal decoding using only the outer code C1 is performed in step 813 without performing correction using the erasure flag.

【0083】一方Er(x)が非零の場合は、ステップ
812において、Er(x)の数に応じて、誤り訂正/
検出を行う。すなわち、Er(x)>4の場合、外符号
C1の訂正能力を超える誤りが生じたことを示すので、
ステップ814に示すように誤り訂正不能とする。ただ
し、イレージャフラグから計算されたシンドロームS
(x)の連立方程式が全て0である場合は、例外的に誤
りなしとして、その外符号の列から冗長データ部R1を
除去し、32バイトの情報データを訂正せず出力する。
On the other hand, if Er (x) is non-zero, in step 812 error correction / error correction is performed according to the number of Er (x).
Perform detection. That is, if Er (x)> 4, it indicates that an error that exceeds the correction capability of the outer code C1 has occurred.
As shown in step 814, error correction is disabled. However, the syndrome S calculated from the erasure flag
When the simultaneous equations in (x) are all 0, the redundant data portion R1 is removed from the sequence of the outer code as an exception without error, and the 32-byte information data is output without correction.

【0084】Er(x)≦4である場合、誤り訂正が可
能となる。
When Er (x) ≦ 4, error correction becomes possible.

【0085】Er(x)≦4である場合のイレージャ訂
正における誤り訂正は次のように行う。例えば図10の
7列目、すなわち下部において白抜き三角形で示されて
いる列は、イレージャフラグが列データ内に2つ以下で
ある。この場合はイレージャ訂正を用いても誤り訂正能
力は2しかない。従って通常どおり外符号C2を用いて
リードソロモン復号による誤り訂正を行い、その外符号
の列から冗長データ部R1を除去し、訂正した32バイ
トの情報データを出力する。
The error correction in the erasure correction when Er (x) ≦ 4 is performed as follows. For example, the seventh column in FIG. 10, that is, the column indicated by a white triangle at the bottom, has two or less erasure flags in the column data. In this case, even if erasure correction is used, there are only two error correction capabilities. Therefore, error correction by Reed-Solomon decoding is performed as usual using the outer code C2, the redundant data portion R1 is removed from the column of the outer code, and corrected 32-byte information data is output.

【0086】次に、例えば、8列目、すなわち下部にお
いて灰三角形で示されている列は、イレージャフラグが
列データ内に3つある。t2が2の場合、得られるシン
ドロームS(x)の連立方程式は式2の条件から4つで
ある。従ってシンドロームから誤りの大きさに関する式
が3つ、イレージャフラグから得られた誤り位置以外の
誤りの有無についての判別式が1つ得られる。そこで、
イレージャフラグから得られた誤り位置以外に誤りがな
い場合は誤り訂正を行い、その外符号の列から冗長デー
タ部R1を除去し、訂正した32バイトの情報データを
出力し、イレージャフラグから得られた誤り位置以外に
誤りがある場合は、誤り検出のみを行い、その外符号の
列から冗長データ部R1を除去し、32バイトの情報デ
ータを訂正せず出力する。
Next, for example, the eighth column, that is, the column indicated by a gray triangle at the bottom, has three erasure flags in the column data. When t2 is 2, the number of simultaneous equations of the obtained syndrome S (x) is four from the condition of Expression 2. Therefore, three equations regarding the magnitude of the error are obtained from the syndrome, and one discriminant regarding the presence or absence of an error other than the error position obtained from the erasure flag is obtained. Therefore,
If there is no error other than the error position obtained from the erasure flag, error correction is performed, the redundant data portion R1 is removed from the outer code sequence, corrected 32-byte information data is output, and the error obtained from the erasure flag is output. If there is an error other than the position, only error detection is performed, the redundant data portion R1 is removed from the column of the outer code, and the 32-byte information data is output without correction.

【0087】ついで6列目、すなわち黒三角形で示され
ている列はイレージャフラグが列データ内に4つある場
合を示す。シンドロームからは誤りの大きさに関する式
が4つ得られる。外符号/復号回路105では、その外
符号の列から冗長データ部R1を除去し、訂正した32
バイトの情報データを出力する。
The sixth column, that is, the column indicated by a black triangle indicates a case where there are four erasure flags in the column data. The syndrome gives four equations for the magnitude of the error. The outer code / decode circuit 105 removes the redundant data portion R1 from the column of the outer code,
Output byte information data.

【0088】ただしこの場合、訂正能力を最大に用いて
訂正を行うことになるため、イレージャフラグから得ら
れた誤り位置以外の誤りの有無についての判別式が得ら
れず、イレージャフラグから得られた誤り位置以外に誤
りがある場合は、誤訂正をする。そこで、ファイルシス
テムが必要とする仕様にあわせて、高信頼な誤り訂正を
行うために、最大訂正を行わず、m−out−of−n
イレージャ訂正(n>m)を行うようにしてもよい。こ
れはイレージャフラグが正しいか否かを検定し、n個の
イレージャフラグが検出されても、その中で真の誤りシ
ンボル数が、m個以下のときのみ誤りを訂正するもので
ある。例えば、3−out−of−4イレージャ訂正を
行うこととし、6列目のような場合には、誤り検出のみ
を行い、その外符号の列から冗長データ部R1を除去
し、32バイトの情報データを訂正せず出力するように
してもよい。
However, in this case, since the correction is performed by using the maximum correction capability, a discriminant for the presence or absence of an error other than the error position obtained from the erasure flag cannot be obtained, and the error position obtained from the erasure flag cannot be obtained. If there is an error other than the above, correct it incorrectly. Therefore, in order to perform highly reliable error correction according to the specifications required by the file system, m-out-of-n is not performed without performing maximum correction.
Erasure correction (n> m) may be performed. This is to verify whether or not the erasure flag is correct, and to correct the error only when the number of true error symbols is n or less, even if n erasure flags are detected. For example, 3-out-of-4 erasure correction is performed. In the case of the sixth column, only error detection is performed, the redundant data portion R1 is removed from the column of the outer code, and 32 bytes of information are removed. The data may be output without correction.

【0089】ここで、情報データ部はシステムバス10
9を介して出力される。
Here, the information data portion is the system bus 10
9 is output.

【0090】以上、本実施形態に係るファイルシステム
について説明した。
The file system according to the present embodiment has been described.

【0091】以下では、メモリチップ102を外符号/
復号回路105と組み合わせずにエラー訂正/検出に関
して単体で使用する場合について説明する。
In the following, the memory chip 102 is designated by an outer code /
A case in which error correction / detection is used alone without being combined with the decoding circuit 105 will be described.

【0092】図13は、メモリチップ102の構成を示
したものである。メモリ103はデータの記録あるいは
再生を行う記録媒体、メモリチップ102は、メモリ1
03と内符号/復号回路104を含む。内符号/復号回
路104は図1の内符号/復号回路と同じ回路である。
FIG. 13 shows the structure of the memory chip 102. The memory 103 is a recording medium for recording or reproducing data, and the memory chip 102 is a memory 1
03 and the inner code / decoding circuit 104. The inner encoding / decoding circuit 104 is the same circuit as the inner encoding / decoding circuit in FIG.

【0093】図14に、この場合のメモリ103への記
録処理の手順を示す。
FIG. 14 shows a procedure of a recording process in the memory 103 in this case.

【0094】メモリチップ102単体で使用する場合、
システムバス109を通じて入力された情報データは1
記録再生データ領域、つまり512バイトごとに1次元
配列データとして内符号/復号回路104に入力され
る。
When using the memory chip 102 alone,
The information data input through the system bus 109 is 1
The data is input to the inner encoding / decoding circuit 104 as one-dimensional array data every recording / reproducing data area, that is, every 512 bytes.

【0095】メモリチップ102内の内符号/復号回路
104は、まず、ステップ1601においてマトリクス
データあるいは1次元配列の情報データを内符号C1に
変換する。すなわち図15aに示すように内符号/復号
回路104は、512バイトの情報データを一旦内部の
メモリに記録した後、512バイトの情報データから1
6バイトの行データを生成し内符号C2に符号化する。
1シンボル訂正の場合、必要な冗長シンボル長は2シン
ボルである。従って冗長バイト数は、1行あたり、2×
8÷8=2バイトになる。従って1記録再生データ領域
に対する内符号C2の冗長データ部R2の情報量は2×
32=64バイトとなる。
The inner code / decoding circuit 104 in the memory chip 102 first converts the matrix data or the one-dimensional array of information data into the inner code C1 in step 1601. That is, as shown in FIG. 15A, the inner encoding / decoding circuit 104 once records the 512-byte information data in the internal memory,
6-byte row data is generated and encoded into the inner code C2.
In the case of one-symbol correction, the required redundant symbol length is two symbols. Therefore, the number of redundant bytes is 2 ×
8 ÷ 8 = 2 bytes. Therefore, the information amount of the redundant data portion R2 of the inner code C2 for one recording / reproducing data area is 2 ×
32 = 64 bytes.

【0096】次に、内符号/復号回路104はステップ
1602においてデータ構成を変換する。すなわち、内
符号C2を図15bに示すように、各行の情報データ部
の後に各行の冗長データ部R2とアクセスデータを付加
した1次元配列の形態に変換される。
Next, the inner code / decoding circuit 104 converts the data structure in step 1602. That is, as shown in FIG. 15B, the inner code C2 is converted into a one-dimensional array in which the redundant data portion R2 of each row and the access data are added after the information data portion of each row.

【0097】こうして符号化された情報データを、図5
のステップ1603において、1次元配列データとして
メモリ103に記録する。
The information data encoded in this way is shown in FIG.
In step 1603, the data is recorded in the memory 103 as one-dimensional array data.

【0098】次にメモリ103に記録された内符号C2
を復号する処理について説明する。
Next, the inner code C2 recorded in the memory 103
Will be described.

【0099】この処理の処理手順を図17に示す。FIG. 17 shows the processing procedure of this processing.

【0100】まず、ステップ1701において、メモリ
103から1行分の内符号C2を内符号回路/復号回路
104に読み出す。図18に示すように、内符号/復号
回路104は、入力された512バイトの情報データ+
64バイトの内符号冗長データR2からなる1次元配列
データaから、18バイトの内符号C2の行を32個生
成する。
First, in step 1701, the inner code C2 for one row is read from the memory 103 to the inner code circuit / decode circuit 104. As shown in FIG. 18, the inner encoding / decoding circuit 104 receives the input 512-byte information data +
From the one-dimensional array data a including the 64-byte inner code redundant data R2, 32 rows of the 18-byte inner code C2 are generated.

【0101】これは、一旦1次元配列データを内部のメ
モリに記録した後、16バイトの情報データを読むごと
に内符号C2の冗長データ部R2の先頭から2バイトを
読み、16バイト情報データに付加する(b)処理を、
32回繰り返すことにより行う。
This is because once the one-dimensional array data is recorded in the internal memory, every time the 16-byte information data is read, two bytes are read from the head of the redundant data portion R2 of the inner code C2, and the 16-byte information data is read. The process of adding (b)
This is performed by repeating 32 times.

【0102】次に内符号C2を生成したら、ステップ1
703からステップ1706において内符号C2を用い
て復号処理をおこなう。図17では点線で囲まれたステ
ップ群が内符号C2の復号処理に対応する。
Next, when the inner code C2 is generated, step 1
From step 703 to step 1706, a decoding process is performed using the inner code C2. In FIG. 17, a step group surrounded by a dotted line corresponds to the decoding process of the inner code C2.

【0103】内符号C2の復号処理においては、最初に
ステップ1703に示すように、生成された内符号C2
の各行についてシンドロームS(x)を計算する。次い
でステップ1704に示すようにS(x)の値によって
誤り訂正/検出を行うかどうかを判定する。
In the decoding process of the inner code C2, first, as shown in step 1703, the generated inner code C2
Is calculated for each row of. Next, as shown in step 1704, it is determined whether to perform error correction / detection based on the value of S (x).

【0104】ステップ1704において、S(x)=0
の場合は、読み出された行に誤りがない事を示すので、
内符号/復号回路104は、その行から冗長データR2
を除去し16バイトの情報データ部を訂正せず出力す
る。
In step 1704, S (x) = 0
Indicates that there is no error in the read row,
The inner encoding / decoding circuit 104 determines that the redundant data R2
And outputs the 16-byte information data portion without correction.

【0105】一方、S(x)が非零の場合は、その行に
誤りが発生したことを示すので、この場合はステップ1
705に示すようにシンドロームを用いて、符号語が訂
正可能かどうかを判定する。そして、内符号C2から計
算されたシンドロームパターンが、ある特定の符号語の
シンドロームパターン群に一致した場合はステップ17
06において、誤り訂正を行い、その行から冗長データ
部R2を除去し、訂正した16バイトの情報データ部を
出力し、一致しない場合は、内符号C2の訂正能力を超
えるエラーが発生したとみなし、誤り検出処理のみをお
こない、その行から冗長データ部R2を除去し16バイ
トの情報データ部を訂正せず出力する。またこの際、先
の場合と同様に、イレージャフラグ情報を訂正不能信号
として出力する。
On the other hand, if S (x) is non-zero, it indicates that an error has occurred in that row.
As shown at 705, it is determined whether the codeword is correctable using the syndrome. If the syndrome pattern calculated from the inner code C2 matches the syndrome pattern group of a specific codeword, the process proceeds to step 17.
At 06, error correction is performed, the redundant data portion R2 is removed from the row, and a corrected 16-byte information data portion is output. If they do not match, it is considered that an error exceeding the correction capability of the inner code C2 has occurred. Only the error detection processing is performed, the redundant data portion R2 is removed from the row, and the 16-byte information data portion is output without correction. At this time, as in the case described above, the erasure flag information is output as an uncorrectable signal.

【0106】以上、メモリチップ102を外符号/復号
回路105と組み合わせず使用する場合について説明し
た。
The case where the memory chip 102 is used without being combined with the outer code / decoding circuit 105 has been described above.

【0107】以上の説明より理解されるように、本実施
形態によれば、メモリチップを、外符号/復号回路を設
けたファイルシステム101の記憶媒体として使用した場
合、強力な誤り訂正能力を発揮でき、メモリ103のメモ
リ素子の多値記憶化に伴うデータ読み出しエラー率の増
加に対しても、十分な誤り訂正能力を持たせることが出
来る。
As understood from the above description, according to the present embodiment, when the memory chip is used as a storage medium of the file system 101 provided with the outer code / decoding circuit, a strong error correction capability is exhibited. As a result, sufficient error correction capability can be provided even when the data read error rate increases due to the multi-value storage of the memory element of the memory 103.

【0108】また、メモリチップ102を外符号/復号回路
を備えていないシステムにおいて使用する場合でも、従
来のデータ誤り率と同程度のデータ誤り率を確保するこ
とが可能となる。
Further, even when the memory chip 102 is used in a system having no outer code / decoding circuit, it is possible to secure a data error rate similar to the conventional data error rate.

【0109】また、本実施形態では、情報データ部分と
管理データ部とを分離して記録するので、内符号/復号
回路及び外符号/復号回路の採用する符号化方式を用途
に応じて用意に変化させることができる。さらに外符号
/復号回路のみで強力な誤り訂正符号を符号/復号した
場合に比べ、復号時間、メモリ使用効率の面でも優位性
がある。
In the present embodiment, since the information data portion and the management data portion are recorded separately, the encoding method adopted by the inner code / decoding circuit and the outer code / decoding circuit can be prepared according to the application. Can be changed. Further, as compared with a case where a strong error correction code is encoded / decoded only by the outer code / decoding circuit, there is an advantage in decoding time and memory use efficiency.

【0110】なお、本実施形態の、メモリチップ内/外
で処理される内符号/外符号を用いる方式は、積符号に
用いる誤り訂正符号の方式訂正能力を変化させること
で、ファイルシステム101及びメモリチップ102に求めら
れる、様々な要求仕様を満たすことが可能な方式であ
る。
In the present embodiment, the method of using the inner code / outer code processed inside / outside the memory chip is performed by changing the method correction capability of the error correction code used for the product code. This is a method capable of satisfying various required specifications required for the memory chip 102.

【0111】なお、本実施形態に係るファイルシステム
は、デジタルカメラや携帯情報端末機器用の記憶装置な
どにも適用することができる。この場合、メモリチップ
102は、デジタルカメラや携帯情報端末機器用に脱着
可能な可搬型記憶媒体、たとえば、フラッシュメモリを
収容したカード型の記憶媒体であるフラッシュメモリカ
ードなどを構成し、外符号/復号回路は、デジタルカメ
ラや携帯情報端末機器本体側に設けるようにする。
The file system according to the present embodiment can be applied to a digital camera, a storage device for a portable information terminal device, and the like. In this case, the memory chip 102 constitutes a removable storage medium detachable for a digital camera or a portable information terminal device, for example, a flash memory card which is a card-type storage medium containing a flash memory. The decoding circuit is provided on the digital camera or the portable information terminal device body side.

【0112】[0112]

【発明の効果】以上のように、本発明によれば、メモリ
チップ内の符号/復号回路を大規模化することなく、フ
ァイルシステムなどとして使用される記録再生装置に用
いる場合にも、記録再生装置として要求される誤り訂正
不能率を満足することのできるメモリチップ及び記録再
生装置を提供することができる。
As described above, according to the present invention, recording / reproducing can be performed even when used in a recording / reproducing apparatus used as a file system or the like without increasing the size of the encoding / decoding circuit in the memory chip. It is possible to provide a memory chip and a recording / reproducing device which can satisfy an error correction unrequired rate required as a device.

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

【図1】ファイルシステムの構成を示すブロック図であ
る。
FIG. 1 is a block diagram illustrating a configuration of a file system.

【図2】ファイルシステムの具体的構成例を示すブロッ
ク図である。
FIG. 2 is a block diagram illustrating a specific configuration example of a file system.

【図3】インターフェースLSIの構成を示すブロック図
である。
FIG. 3 is a block diagram illustrating a configuration of an interface LSI.

【図4】ファイルシステムにおける積符号の構成を示す
図である。
FIG. 4 is a diagram showing a configuration of a product code in the file system.

【図5】ファイルシステムにおける符号化処理を示すフ
ローチャートである。
FIG. 5 is a flowchart showing an encoding process in the file system.

【図6】ファイルシステムにおける外符号への符号化の
ようすを示した図である。
FIG. 6 is a diagram showing a state of encoding to an outer code in a file system.

【図7】ファイルシステムにおける内符号生成への符号
化のようすを示した図である。
FIG. 7 is a diagram showing a state of encoding for generating an inner code in the file system.

【図8】ファイルシステムにおけるメモリ上の記憶フォ
ーマットを示す図である。
FIG. 8 is a diagram showing a storage format on a memory in the file system.

【図9】ファイルシステムにおける復号の処理を示した
フローチャートである。
FIG. 9 is a flowchart showing a decryption process in the file system.

【図10】ファイルシステムにおける復号時の内符号へ
の変換のようすを示した図である。
FIG. 10 is a diagram showing a state of conversion to an inner code at the time of decoding in the file system.

【図11】ファイルシステムにおけるイレージャフラグ
とイレージャ訂正対象を示す図である。
FIG. 11 is a diagram showing an erasure flag and an erasure correction target in the file system.

【図12】ファイルシステムにおける復号時の外符号へ
の変換のようすを示した図である。
FIG. 12 is a diagram showing a state of conversion to an outer code at the time of decoding in the file system.

【図13】メモリチップの構成を示すブロック図であ
る。
FIG. 13 is a block diagram illustrating a configuration of a memory chip.

【図14】メモリチップ単体使用時の符号化処理を示す
フローチャートである。
FIG. 14 is a flowchart showing an encoding process when a single memory chip is used.

【図15】メモリチップ単体使用時の内符号への符号化
のようすを示した図である。
FIG. 15 is a diagram showing a state of encoding to an inner code when a single memory chip is used.

【図16】メモリチップ単体使用時のメモリ上の記憶フ
ォーマットを示す図である。
FIG. 16 is a diagram showing a storage format on a memory when a single memory chip is used.

【図17】メモリチップ単体使用時の復号処理を示すフ
ローチャートである。
FIG. 17 is a flowchart showing a decoding process when a single memory chip is used.

【図18】メモリチップ単体使用時の内符号への変換の
ようすを示した図である。
FIG. 18 is a diagram showing a state of conversion to an inner code when a memory chip is used alone.

【図19】フラッシュメモリ素子の構成を示した図であ
る。
FIG. 19 is a diagram showing a configuration of a flash memory device.

【図20】フラッシュメモリ素子の浮遊ゲート電荷とド
レイン電流とコントロール電圧の関係を示した図であ
る。
FIG. 20 is a diagram showing a relationship between a floating gate charge, a drain current, and a control voltage of a flash memory device.

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

101 ファイルシステム 102 メモリチップ 103 メモリ 104 内符号/復号回路 105 外符号/復号回路 106 インターフェースLSI 109 システムバス 501 ファイルシステム 502 フラッシュメモリ 506 システムバス 504 マイコン 5031 ECC回路 101 File System 102 Memory Chip 103 Memory 104 Inner Code / Decode Circuit 105 Outer Code / Decode Circuit 106 Interface LSI 109 System Bus 501 File System 502 Flash Memory 506 System Bus 504 Microcomputer 5031 ECC Circuit

───────────────────────────────────────────────────── フロントページの続き (72)発明者 小谷 博昭 東京都青梅市今井2326番地 株式会社日立 製作所デバイス開発センタ内 (72)発明者 野副 敦史 東京都青梅市今井2326番地 株式会社日立 製作所デバイス開発センタ内 (72)発明者 塩田 茂雅 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体事業部内 (72)発明者 片山 ゆかり 神奈川県川崎市麻生区王禅寺1099番地株式 会社日立製作所システム開発研究所内 ──────────────────────────────────────────────────の Continued on the front page (72) Inventor Hiroaki Kotani 2326 Imai, Ome-shi, Tokyo Inside the Hitachi, Ltd.Device Development Center (72) Inventor Atsushi Nozoe 2326, Imai, Ome-shi, Tokyo Hitachi, Ltd.Device Development Center (72) Inventor Shigemasa Shiota 5-2-1, Josuihoncho, Kodaira-shi, Tokyo Inside Semiconductor Division, Hitachi, Ltd. (72) Yukari Katayama 1099 Ozenji Temple, Aso-ku, Kawasaki-shi, Kanagawa Hitachi Systems, Ltd. Inside the development laboratory

Claims (10)

【特許請求の範囲】[Claims] 【請求項1】メモリを内蔵したメモリチップを用いた記
録再生装置であって、 前記記憶再生装置は、前記メモリチップの外部に、記憶
対象の情報データを誤り訂正符号化し第1の誤り訂正符
号を生成する外符号/復号回路を備え、 前記メモリチップは、外符号/復号回路が生成した第1の
誤り訂正符号を、さらに、誤り訂正符号化し第2の誤り
訂正符号を生成し、前記メモリに記憶する内符号/復号
回路を内蔵し、 前記内符号/復号回路は、前記メモリより読み出した第
2の誤り訂正符号を用いて誤り訂正を行い、前記第1の
誤り訂正符号を復号し、 前記外符号/復号回路は、前記内符号/復号回路が復号し
た第1の誤り訂正符号を用いて誤り訂正を行い、前記情
報データを復号することを特徴とする記憶再生装置。
1. A recording / reproducing apparatus using a memory chip having a built-in memory, wherein the storage / reproducing apparatus performs error correction encoding of information data to be stored outside the memory chip, and a first error correction code. An outer code / decoding circuit that generates the first error correction code generated by the outer code / decoding circuit is further subjected to error correction coding to generate a second error correction code, and the memory chip An inner code / decoding circuit that stores therein, the inner code / decoding circuit performs error correction using a second error correction code read from the memory, and decodes the first error correction code. The storage / reproducing apparatus, wherein the outer code / decoding circuit performs error correction using the first error correction code decoded by the inner code / decoding circuit, and decodes the information data.
【請求項2】請求項1記載の記憶再生装置であって、 前記内符号/復号回路は、誤り訂正を行えなかった誤り
の位置を示す位置情報を出力する手段を有し、 前記外符号/復号回路は、前記内符号/復号回路が復号し
た第1の誤り訂正符号に加えて、前記内符号/復号回路か
ら出力された位置情報を用いた誤り訂正を行うことを特
徴とする記憶再生装置。
2. The storage / reproducing apparatus according to claim 1, wherein the inner code / decoding circuit has means for outputting position information indicating a position of an error for which error correction could not be performed; A decoding circuit, in addition to the first error correction code decoded by the inner code / decoding circuit, performs an error correction using position information output from the inner code / decoding circuit; .
【請求項3】請求項1記載の記憶再生装置であって、 前記内符号/復号回路は、前記第2の誤り訂正符号の訂
正能力に応じ、誤り訂正または誤り検出を行った誤りの
位置を示す位置情報を出力する手段を有し、 前記外符号/復号回路は、前記内符号/復号回路が復号し
た第1の誤り訂正符号に加えて、前記内符号/復号回路か
ら出力された位置情報を用いた誤り訂正を行うことを特
徴とする記憶再生装置。
3. The storage / playback apparatus according to claim 1, wherein said inner code / decoding circuit determines an error correction or error detection position according to a correction capability of said second error correction code. Means for outputting position information indicating, the outer code / decoding circuit, in addition to the first error correction code decoded by the inner code / decoding circuit, the position information output from the inner code / decoding circuit A storage / reproducing apparatus, which performs error correction using a program.
【請求項4】請求項1または2記載の記憶再生装置であ
って、 前記外符号/復号回路は、記憶対象の情報データをマト
リクスとして扱い、当該マトリクスの各列/行を誤り訂
正符号化して、複数列/行の第1の誤り訂正符号を生成
し、 前記内符号/復号回路は、外符号/復号回路が生成した複
数列/行の第1の誤り訂正符号を、行/列方向に並べたマ
トリクスの、各行/列を誤り訂正符号化して、複数行/
列の第1の誤り訂正符号を生成し、当該複数行/列の第1
の誤り訂正符号は、前記情報データの積符号を形成する
ことを特徴とする記憶再生装置。
4. The storage reproducing apparatus according to claim 1, wherein the outer code / decoding circuit treats the information data to be stored as a matrix, and performs error correction coding on each column / row of the matrix. Generating a first error correction code of a plurality of columns / rows, the inner code / decoding circuit outputs the first error correction code of a plurality of columns / rows generated by the outer code / decoding circuit in the row / column direction. Each row / column of the arranged matrix is error-correction coded, and multiple rows /
Generate a first error correction code for the column, and
Wherein the error correction code forms a product code of the information data.
【請求項5】請求項1、2または3記載の記憶再生装置
であって、 前記第1の誤り訂正符号と第2の誤り訂正符号の少なくと
も一方は、リードソロモン符号であることを特徴とする
記憶再生装置。
5. The storage / reproducing apparatus according to claim 1, wherein at least one of the first error correction code and the second error correction code is a Reed-Solomon code. Storage and playback device.
【請求項6】メモリを内蔵したメモリチップを用いた記
録再生装置における誤り訂正方法であって、 前記記憶再生装置において、前記メモリチップの外部
で、記憶対象の情報データを誤り訂正符号化し第1の誤
り訂正符号を生成し、 前記メモリチップ内部において、外符号/復号回路が生
成した第1の誤り訂正符号を、さらに、誤り訂正符号化
し第2の誤り訂正符号を生成し、前記メモリに記憶し、 前記メモリチップ内部において、前記メモリより読み出
した第2の誤り訂正符号を用いて誤り訂正を行い、前記
第1の誤り訂正符号を復号し、 前記記憶再生装置において、前記メモリチップの外部
で、前記内符号/復号回路が復号した第1の誤り訂正符号
を用いて誤り訂正を行い、前記情報データ復号すること
を特徴とする誤り訂正方法。
6. An error correction method in a recording / reproducing apparatus using a memory chip having a built-in memory, wherein the storage / reproducing apparatus performs error correction coding on information data to be stored outside the memory chip, and In the memory chip, the first error correction code generated by the outer code / decoding circuit is further subjected to error correction coding to generate a second error correction code, and stored in the memory. In the memory chip, error correction is performed using the second error correction code read from the memory, and the first error correction code is decoded. An error correction method comprising: performing error correction using a first error correction code decoded by the inner code / decoding circuit; and decoding the information data.
【請求項7】メモリと、外部より供給されたメモリに書
き込むべきデータを誤り訂正符号化し第1の誤り訂正符
号を生成して前記メモリに記憶し、前記メモリより読み
出した第1の誤り訂正符号を用いて誤り訂正を行い、前
記データを復号し、外部に出力する第1の符号/復号回路
とを内蔵したメモリチップの使用方法であって、 書き込み要求された情報データを誤り訂正符号化し第2
の誤り訂正符号を生成し、第1の誤り訂正符号を用いて
誤り訂正を行い、読み出し要求された情報データを復号
する第2の符号/復号回路を備えた記憶装置において前記
メモリチップを使用する場合には、前記に前記メモリに
書き込むべきデータとして、第2の符号/復号回路におい
て誤り訂正符号化し第2の誤り訂正符号を供給し、前記
第1の符号/復号回路が復号し出力したデータを、前記誤
り訂正を行うべき第1の誤り訂正符号として第2の符号復
号回路に供給し、 前記第2の符号/復号回路を備えていない記憶再生装置に
おいて、記憶装置において前記メモリチップを使用する
場合には、書き込み要求された情報データを、前記第1
の符号復号回路に前記メモリに書き込むべきデータとし
て供給し、前記第1の符号/復号回路が復号し出力したデ
ータを前記読み出し要求された情報データとすることを
特徴とするメモリチップの使用方法。
7. A first error correction code read from said memory, wherein said first error correction code is generated by error correction encoding data to be written to a memory supplied from outside and generating said first error correction code. A method of using a memory chip incorporating a first encoding / decoding circuit that decodes the data and outputs the decoded data to the outside, wherein the information data requested to be written is error-corrected and encoded. 2
Use the memory chip in a storage device including a second encoding / decoding circuit that generates an error correction code, performs error correction using the first error correction code, and decodes read-requested information data. In this case, as the data to be written into the memory, the second error correction code is supplied in the second encoding / decoding circuit and a second error correction code is supplied, and the data decoded and output by the first encoding / decoding circuit is output. Is supplied to a second code decoding circuit as a first error correction code to be subjected to the error correction, and in a storage / reproduction device not provided with the second coding / decoding circuit, the memory device uses the memory chip. When writing, the information data requested to be written is
A method of using a memory chip, wherein the data is supplied as data to be written to the memory to the code decoding circuit, and the data decoded and output by the first coding / decoding circuit is used as the read-requested information data.
【請求項8】メモリと、外部より供給されたメモリに書
き込むべきデータを誤り訂正符号化し第1の誤り訂正符
号を生成して前記メモリに記憶し、前記メモリより読み
出した第1の誤り訂正符号を用いて誤り訂正を行い、前
記データを復号し、外部に出力する第1の符号/復号回路
と、 前記内符号/復号回路が、誤り訂正を行えなかった誤り
の位置を示す位置情報を外部に出力する手段とを内蔵し
たことを特徴とするメモリチップ。
8. A first error correction code read from the memory, wherein the data to be written to the memory and an externally supplied memory are error correction encoded, a first error correction code is generated and stored in the memory. A first encoding / decoding circuit that performs error correction using the above, decodes the data, and outputs the data to the outside, and the inner encoding / decoding circuit externally outputs position information indicating the position of the error for which error correction could not be performed. And a means for outputting to the memory chip.
【請求項9】メモリと、 外部より供給されたメモリに書き込むべきデータを誤り
訂正符号化し第1の誤り訂正符号を生成して前記メモリ
に記憶し、前記メモリより読み出した第1の誤り訂正符
号を用いて誤り訂正を行い、前記データを復号し、外部
に出力する第1の符号/復号回路と、 前記内符号/復号回路が、第1の誤り訂正符号の訂正能
力に応じ、誤り訂正または誤り検出を行った誤りの位置
を示す位置情報を外部に出力する手段とを内蔵したこと
を特徴とするメモリチップ。
9. A first error correction code read from the memory, wherein the data to be written to the externally supplied memory is error correction encoded, a first error correction code is generated and stored in the memory. A first encoding / decoding circuit that decodes the data and outputs the data to the outside, and wherein the inner encoding / decoding circuit performs error correction or Means for outputting, to the outside, position information indicating the position of an error for which an error has been detected.
【請求項10】読み出されたデータに含まれる誤り位置
を示す位置情報を出力するメモリチップの書き込み及び
読み出しを制御するコントローラであって、 記憶対象の情報データを誤り訂正符号化し誤り訂正符号
を生成して前記メモリチップに書き込みデータとして供
給し、前記メモリチップから読み出した第1の誤り訂正
符号と、前記メモリチップから出力される前記位置情報
とを用いて誤り訂正を行い、前記情報データを復号する
符号/復号回路を備えたことを特徴とするコントロー
ラ。
10. A controller for controlling writing and reading of a memory chip for outputting position information indicating an error position included in read data, wherein the controller corrects an error correction code for the information data to be stored and converts the error correction code into an error correction code. Generated and supplied as write data to the memory chip, perform error correction using the first error correction code read from the memory chip, and the position information output from the memory chip, the information data A controller comprising an encoding / decoding circuit for decoding.
JP9304064A 1997-11-06 1997-11-06 Recording and reproducing device Pending JPH11143787A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9304064A JPH11143787A (en) 1997-11-06 1997-11-06 Recording and reproducing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9304064A JPH11143787A (en) 1997-11-06 1997-11-06 Recording and reproducing device

Publications (1)

Publication Number Publication Date
JPH11143787A true JPH11143787A (en) 1999-05-28

Family

ID=17928607

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9304064A Pending JPH11143787A (en) 1997-11-06 1997-11-06 Recording and reproducing device

Country Status (1)

Country Link
JP (1) JPH11143787A (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005234883A (en) * 2004-02-19 2005-09-02 Nec Corp Method for writing/reading out in/from storage device, and data storage system
JP2008165805A (en) * 2007-01-03 2008-07-17 Samsung Electronics Co Ltd Ecc (error correction code) controller for flash memory device and memory system including same
JP2009070362A (en) * 2007-09-11 2009-04-02 Silicon Motion Inc Method for generating ecc code for memory device
JP2009524176A (en) * 2006-01-20 2009-06-25 マーベル ワールド トレード リミテッド Method and system for error correction in flash memory
JP2009524152A (en) * 2006-01-20 2009-06-25 マーベル ワールド トレード リミテッド Flash memory having coding and signal processing functions
JP2009211209A (en) * 2008-02-29 2009-09-17 Toshiba Corp Semiconductor storage device, its control method, and error correction system
JP2010515145A (en) * 2006-12-26 2010-05-06 サムスン エレクトロニクス カンパニー リミテッド Multi-level cell memory device and method for recording and reading data in the memory device
CN101923902A (en) * 2009-06-10 2010-12-22 努蒙克斯有限公司 Error correcting codes for increased storage capacity in multilevel memory devices
US8397132B2 (en) 2009-02-23 2013-03-12 Oki Semiconductor Co., Ltd. Memory device
JP2014099751A (en) * 2012-11-14 2014-05-29 Nippon Hoso Kyokai <Nhk> Recording/reproducing apparatus and recording/reproducing method
JP2014134843A (en) * 2013-01-08 2014-07-24 Toshiba Corp Memory system

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4595342B2 (en) * 2004-02-19 2010-12-08 日本電気株式会社 Data writing / reading method for storage device and data storage system
JP2005234883A (en) * 2004-02-19 2005-09-02 Nec Corp Method for writing/reading out in/from storage device, and data storage system
US8856622B2 (en) 2006-01-20 2014-10-07 Marvell World Trade Ltd. Apparatus and method for encoding data for storage in multi-level nonvolatile memory
JP2009524176A (en) * 2006-01-20 2009-06-25 マーベル ワールド トレード リミテッド Method and system for error correction in flash memory
JP2009524152A (en) * 2006-01-20 2009-06-25 マーベル ワールド トレード リミテッド Flash memory having coding and signal processing functions
US9053051B2 (en) 2006-01-20 2015-06-09 Marvell World Trade Ltd. Multi-level memory controller with probability-distribution-based encoding
US8677215B2 (en) 2006-01-20 2014-03-18 Marvell World Trade Ltd. Method and system for error correction in flash memory
US8473812B2 (en) 2006-01-20 2013-06-25 Marvell World Trade Ltd. Method and system for error correction in flash memory
JP2010515145A (en) * 2006-12-26 2010-05-06 サムスン エレクトロニクス カンパニー リミテッド Multi-level cell memory device and method for recording and reading data in the memory device
US8499215B2 (en) 2006-12-26 2013-07-30 Samsung Electronics Co., Ltd. Multi-level cell memory devices and methods of storing data in and reading data from the memory devices
JP2008165805A (en) * 2007-01-03 2008-07-17 Samsung Electronics Co Ltd Ecc (error correction code) controller for flash memory device and memory system including same
JP2009070362A (en) * 2007-09-11 2009-04-02 Silicon Motion Inc Method for generating ecc code for memory device
JP2009211209A (en) * 2008-02-29 2009-09-17 Toshiba Corp Semiconductor storage device, its control method, and error correction system
US8397132B2 (en) 2009-02-23 2013-03-12 Oki Semiconductor Co., Ltd. Memory device
US8370702B2 (en) 2009-06-10 2013-02-05 Micron Technology, Inc. Error correcting codes for increased storage capacity in multilevel memory devices
US8745463B2 (en) 2009-06-10 2014-06-03 Micron Technology, Inc. Error correcting codes for increased storage capacity in multilevel memory devices
JP2010287305A (en) * 2009-06-10 2010-12-24 Numonyx Bv Error correcting code for increased storage capacity in multi-value level memory device
CN101923902A (en) * 2009-06-10 2010-12-22 努蒙克斯有限公司 Error correcting codes for increased storage capacity in multilevel memory devices
JP2014099751A (en) * 2012-11-14 2014-05-29 Nippon Hoso Kyokai <Nhk> Recording/reproducing apparatus and recording/reproducing method
JP2014134843A (en) * 2013-01-08 2014-07-24 Toshiba Corp Memory system

Similar Documents

Publication Publication Date Title
US5247523A (en) Code error correction apparatus
US6732322B1 (en) Encoding method and memory device
US7653862B2 (en) Error detection and correction for encoded data
US8429497B2 (en) Method and system of dynamic data storage for error correction in a memory device
JP5723967B2 (en) Method, encoder apparatus, and solid-state storage device for recording input data to s-level storage of a solid-state storage device
EP1500200B1 (en) Method and apparatus for embedding an additional layer of error correction into an error correcting code
KR100921263B1 (en) Semiconductor storage device and decord method
US20040257900A1 (en) Data recording method, recording medium and reproduction apparatus
US20080133999A1 (en) Error correcting apparatus and error correcting method
JP2004171751A (en) Error correction code system and method of on-drive integrated sector format raid
JPH11283396A (en) Memory device
JP2013524609A5 (en)
US7007222B2 (en) Apparatus for accessing data stored on an optical disc
JP4790790B2 (en) Error detection and correction circuit and semiconductor memory
JPH11143787A (en) Recording and reproducing device
US7747925B2 (en) Apparatus and method for error correction code striping
JP3170123B2 (en) Error correction circuit
US7340663B2 (en) Method and apparatus for embedding an additional layer of error correction into an error correcting code
US5586127A (en) Apparatus and method for correcting error in data read from recording medium
KR20040110923A (en) Apparatus and method for error correction coding, and apparatus and method for error correction decoding
JP4099844B2 (en) Memory device
US6615384B1 (en) Encoding/decoding method and apparatus and disk storage device
JPH11213693A (en) Memory device
JPH11212876A (en) Coding method and memory using the same
JP2000349652A (en) Storage device provided with error correction means