JP4791831B2 - 半導体記憶装置 - Google Patents
半導体記憶装置 Download PDFInfo
- Publication number
- JP4791831B2 JP4791831B2 JP2006012648A JP2006012648A JP4791831B2 JP 4791831 B2 JP4791831 B2 JP 4791831B2 JP 2006012648 A JP2006012648 A JP 2006012648A JP 2006012648 A JP2006012648 A JP 2006012648A JP 4791831 B2 JP4791831 B2 JP 4791831B2
- Authority
- JP
- Japan
- Prior art keywords
- bit
- calculation
- polynomial
- circuit
- error
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1545—Determination of error locations, e.g. Chien search or other methods or arrangements for the determination of the roots of the error locator polynomial
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F24—HEATING; RANGES; VENTILATING
- F24C—DOMESTIC STOVES OR RANGES ; DETAILS OF DOMESTIC STOVES OR RANGES, OF GENERAL APPLICATION
- F24C15/00—Details
- F24C15/20—Removing cooking fumes
- F24C15/2078—Removing cooking fumes movable
- F24C15/2085—Removing cooking fumes movable adjustable in height
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F24—HEATING; RANGES; VENTILATING
- F24C—DOMESTIC STOVES OR RANGES ; DETAILS OF DOMESTIC STOVES OR RANGES, OF GENERAL APPLICATION
- F24C15/00—Details
- F24C15/20—Removing cooking fumes
- F24C15/2071—Removing cooking fumes mounting of cooking hood
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/152—Bose-Chaudhuri-Hocquenghem [BCH] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/159—Remainder calculation, e.g. for encoding and syndrome calculation
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Pure & Applied Mathematics (AREA)
- Algebra (AREA)
- General Engineering & Computer Science (AREA)
- Chemical & Material Sciences (AREA)
- Mechanical Engineering (AREA)
- Combustion & Propulsion (AREA)
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Error Detection And Correction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
(データのエンコーディング)
ガロア体GF(28)上の2EC−BCHについて概要を説明する。GF(256)の原始根をαとすると、これを根とする対応するGF(2)上の8次の原始多項式m1(x)は、数1のように表される。即ち、αのべき乗とm1(x)によるxのべき乗の既約多項式がお互いに対応するGF(256)の要素となる。
これらの二つの原始多項式をもとに、2ビットエラー訂正可能なECCが構成される。書き込むべきデータに検査ビットを付加してエンコードするには、コード生成多項式として、数2のようなm1(x)とm3(x)の積多項式g(x)を作る。
2ビットエラー訂正が可能な、情報ビットとして利用できる最大ビット数は、28−1=255から検査ビット数16を引いた239ビットである。これらを、ビット位置16から254の係数をa16〜a254として、数3のような238次の情報多項式f(x)を作る。
実際にはデータとして用いるのは、239ビット中例えば128ビットであり、このとき111ビットの係数は“0” に固定して対応する次数の項がない情報多項式となる。239の項数の情報多項式f(x)のうち、その係数を“0”に固定する111項として、どの次数を選ぶかによって、後述するデコード時のシンドローム計算の計算量が異なるのでこの選択のしかたが重要となる。これは後に説明する。
この剰余多項式r(x)の係数b15〜b0を検査ビットとして用いる。すなわち、239から選ばれた128の係数ai(128)〜ai(1)を“情報ビット”とし、b15〜b0の16ビットを“検査ビット”として、下記数5に示す計144ビットがメモリに記憶させる“データビット”となる。
ここで、ai(k)は、メモリに外部から書き込むデータであり、このデータをもとに、チップ内部のECCシステムで検査ビットbjが作られ、これが同時にセルアレイに書き込まれることになる。
(データのデコーディング)
次に、セルアレイから読み出した144ビットのデータからエラーを検出し、2ビットのエラーまでを訂正する方法について説明する。
第三段階としてΛR(x)のGF(256)での根となる既約多項式pn(x)を見つければ、X1,X2=pn(x)からエラービット位置iやjがpn(x)のnとして求められる。即ち、ΛR(x)≡0 mod m1(x)を、n=0〜254で探索してヒットしたnがエラービットとなる。
xn≡pn(x)(mod m1(x))であるので、14次の項は掛けるpj(x)の7つ先にpj+7(x)が出てくる、という規則を使うと、多項式pi(x)とpj(x)の積は、図6に示すように、各多項式の係数間の掛け算と和演算(=パリティチェック)とで可能となる。
シンドローム多項式S3(x)に関連してエラー位置jの検索に必要なのは多項式S3(x3)である。S3(x)自体は、ν(x)のm3(x)での剰余である。ν(x3)とS3(x3)との間には、xiのm1(x)による剰余多項式pi(x)の係数をPi m(m=0〜7)とし、xiの係数をdiとして、次の数13のような関係がある。
Claims (5)
- エラー検出訂正回路が搭載された半導体記憶装置において、
前記エラー検出訂正回路は、複数ビットのエラー訂正が可能な巡回符号を用いたものであって、エラー訂正可能な最大ビット数対応の次数を持つ情報多項式の中から、情報ビットとして利用する次数が、シンドローム多項式の計算規模が可及的に小さくなるように選択されている
ことを特徴とする半導体記憶装置。 - 前記エラー検出訂正回路は、ガロア体GF(2m)によるt(≧2)ビットエラー訂正BCH符号を用いるものであり、その使用ビット長の中から、複数のシンドローム多項式の計算に用いる既約剰余多項式の係数“1”の総和が少ない順に並べた次数から、所定個数の次数が情報ビット用として選択される
ことを特徴とする請求項1記載の半導体記憶装置。 - 前記エラー検出訂正回路は、ガロア体GF(28)による2ビットエラー訂正BCH符号を用いるものであり、その使用ビット長255の中から、二つのシンドローム多項式の計算に用いる既約剰余多項式の係数“1”の総和が少ない順に並べた144の次数が、16個の検査ビット用及び128個の情報ビット用として選択される
ことを特徴とする請求項1記載の半導体記憶装置。 - 前記エラー検出訂正回路の中のエラー位置検索回路は、
シンドローム多項式S1(x),S3(x)の係数データが出力される第1のデータバスと、
第1のデータバスの係数データにより144個が選択され、エラービット対応の剰余pn(x)とシンドローム多項式S1(x),S3(x)との間で選択された144の要素に対応するpn(x)S1(x)なる第1の演算と、シンドローム多項式のみの演算である(S1(x))2+S3(x3)/S1(x)なる第2の演算とが同時並行して行われる255個の演算部と、
これらの演算部のうち第2の演算の演算結果を出力する第2のデータバスと、
第2のデータバス上のデータと前記演算部の第1の演算の演算結果との間で和演算を行う144個のパリティチェック部と、
これらのパリティチェック部の演算結果とp2n(x)とを比較して一致するエラービット位置nを求めるデコード部とを有する
ことを特徴とする請求項3記載の半導体記憶装置。 - 前記エラー検出訂正回路の中のエラー訂正回路は、
前記エラー位置検索回路の中の各第1の演算の演算結果と第2のデータバス上の係数S1(x)2とS3(x)/S1(x)との間の和演算を行う3ビットパリティチェック回路と、
この3ビットパリティチェック回路の演算結果に応じて読み出しデータビットを反転させる反転回路とを有する
ことを特徴とする請求項4記載の半導体記憶装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006012648A JP4791831B2 (ja) | 2006-01-20 | 2006-01-20 | 半導体記憶装置 |
US11/625,160 US7836377B2 (en) | 2006-01-20 | 2007-01-19 | Semiconductor memory device |
KR1020070006142A KR100857947B1 (ko) | 2006-01-20 | 2007-01-19 | 반도체 메모리 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006012648A JP4791831B2 (ja) | 2006-01-20 | 2006-01-20 | 半導体記憶装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007193910A JP2007193910A (ja) | 2007-08-02 |
JP4791831B2 true JP4791831B2 (ja) | 2011-10-12 |
Family
ID=38429812
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006012648A Expired - Fee Related JP4791831B2 (ja) | 2006-01-20 | 2006-01-20 | 半導体記憶装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7836377B2 (ja) |
JP (1) | JP4791831B2 (ja) |
KR (1) | KR100857947B1 (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4846384B2 (ja) * | 2006-02-20 | 2011-12-28 | 株式会社東芝 | 半導体記憶装置 |
JP4836608B2 (ja) * | 2006-02-27 | 2011-12-14 | 株式会社東芝 | 半導体記憶装置 |
JP2007305267A (ja) * | 2006-05-15 | 2007-11-22 | Toshiba Corp | 半導体記憶装置 |
JP4891704B2 (ja) * | 2006-08-28 | 2012-03-07 | 株式会社東芝 | 半導体記憶装置 |
JP4621715B2 (ja) * | 2007-08-13 | 2011-01-26 | 株式会社東芝 | メモリ装置 |
US8145977B2 (en) * | 2007-10-15 | 2012-03-27 | Joseph Schweiray Lee | Methods and apparatus for providing error correction to unwritten pages and for identifying unwritten pages in flash memory |
JP2009100369A (ja) * | 2007-10-18 | 2009-05-07 | Toshiba Corp | 誤り検出訂正回路、半導体メモリコントローラ、および誤り検出訂正方法 |
US8464141B2 (en) * | 2008-08-13 | 2013-06-11 | Infineon Technologies Ag | Programmable error correction capability for BCH codes |
JP5259343B2 (ja) | 2008-10-31 | 2013-08-07 | 株式会社東芝 | メモリ装置 |
JP2010218634A (ja) * | 2009-03-17 | 2010-09-30 | Toshiba Corp | 誤り検出訂正器、メモリコントローラおよび半導体記憶装置 |
JP5674700B2 (ja) * | 2012-03-22 | 2015-02-25 | 株式会社東芝 | 符号化装置および符号化装置の制御方法、ならびに、記憶装置 |
US8806294B2 (en) | 2012-04-20 | 2014-08-12 | Freescale Semiconductor, Inc. | Error detection within a memory |
JP6072449B2 (ja) * | 2012-07-09 | 2017-02-01 | ルネサスエレクトロニクス株式会社 | 半導体記憶回路及びその動作方法 |
US9690650B2 (en) * | 2013-03-11 | 2017-06-27 | Macronix International Co., Ltd. | Storage scheme for built-in ECC operations |
JP2016126813A (ja) | 2015-01-08 | 2016-07-11 | マイクロン テクノロジー, インク. | 半導体装置 |
US10097207B2 (en) * | 2016-03-10 | 2018-10-09 | Toshiba Memory Corporation | ECC circuit, storage device and memory system |
KR20180073129A (ko) * | 2016-12-22 | 2018-07-02 | 에스케이하이닉스 주식회사 | 에러 정정 코드 회로를 갖는 반도체 메모리 장치 |
CN117079686A (zh) * | 2020-09-18 | 2023-11-17 | 长鑫存储技术有限公司 | 存储器 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4509172A (en) * | 1982-09-28 | 1985-04-02 | International Business Machines Corporation | Double error correction - triple error detection code |
US4556977A (en) * | 1983-09-15 | 1985-12-03 | International Business Machines Corporation | Decoding of BCH double error correction - triple error detection (DEC-TED) codes |
US5107503A (en) * | 1987-08-24 | 1992-04-21 | Digital Equipment Corporation | High bandwidth reed-solomon encoding, decoding and error correcting circuit |
JP2000173289A (ja) | 1998-12-10 | 2000-06-23 | Toshiba Corp | エラー訂正可能なフラッシュメモリシステム |
IT1321049B1 (it) | 2000-11-07 | 2003-12-30 | St Microelectronics Srl | Metodo di costruzione di un codice a controllo dell'errore polivalenteper celle di memoria multilivello funzionanti a un numero variabile di |
US20030192007A1 (en) | 2001-04-19 | 2003-10-09 | Miller David H. | Code-programmable field-programmable architecturally-systolic Reed-Solomon BCH error correction decoder integrated circuit and error correction decoding method |
JP4112849B2 (ja) | 2001-11-21 | 2008-07-02 | 株式会社東芝 | 半導体記憶装置 |
US20040083334A1 (en) | 2002-10-28 | 2004-04-29 | Sandisk Corporation | Method and apparatus for managing the integrity of data in non-volatile memory system |
US7096313B1 (en) | 2002-10-28 | 2006-08-22 | Sandisk Corporation | Tracking the least frequently erased blocks in non-volatile memory systems |
JP4253312B2 (ja) | 2005-04-15 | 2009-04-08 | 株式会社東芝 | 半導体記憶装置 |
-
2006
- 2006-01-20 JP JP2006012648A patent/JP4791831B2/ja not_active Expired - Fee Related
-
2007
- 2007-01-19 US US11/625,160 patent/US7836377B2/en not_active Expired - Fee Related
- 2007-01-19 KR KR1020070006142A patent/KR100857947B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
US7836377B2 (en) | 2010-11-16 |
KR100857947B1 (ko) | 2008-09-09 |
US20070198902A1 (en) | 2007-08-23 |
JP2007193910A (ja) | 2007-08-02 |
KR20070077125A (ko) | 2007-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4791831B2 (ja) | 半導体記憶装置 | |
JP2007305267A (ja) | 半導体記憶装置 | |
JP4846384B2 (ja) | 半導体記憶装置 | |
JP4836608B2 (ja) | 半導体記憶装置 | |
US7408824B2 (en) | Ferroelectric memory with spare memory cell array and ECC circuit | |
JP6195854B2 (ja) | 誤り訂正符号の編成を含む装置および方法 | |
CN101960723A (zh) | Chien搜索装置和Chien搜索方法 | |
CN109285582B (zh) | 存储器系统、非暂时性计算机可读介质及错误校验与校正的方法 | |
JP5657079B1 (ja) | 半導体記憶装置 | |
US8572457B2 (en) | Outer code protection for solid state memory devices | |
US9559725B1 (en) | Multi-strength reed-solomon outer code protection | |
US8990667B2 (en) | Error check and correction circuit, method, and memory device | |
CN107643958A (zh) | 数据恢复方法和使用其的存储器系统和raid存储系统 | |
TWI479317B (zh) | Memory system | |
JP4891704B2 (ja) | 半導体記憶装置 | |
TW202211037A (zh) | 記憶體系統、半導體記憶裝置及資料讀出方法 | |
US20200319960A1 (en) | Semiconductor memory device, and memory system having the same | |
JP2014033364A (ja) | 誤り検出訂正回路、及びメモリ装置 | |
JP5617776B2 (ja) | メモリ回路,メモリ装置及びメモリデータの誤り訂正方法 | |
JP2012123600A (ja) | メモリシステム及びメモリコントローラ | |
JP2021047527A (ja) | メモリシステム | |
JP2005216437A (ja) | 誤り訂正機能付き半導体記憶装置およびその誤り訂正方法 | |
JP2011243249A (ja) | 不揮発性メモリ | |
JP2014116659A (ja) | 誤り検出訂正回路、及び半導体記憶装置 | |
KR20230116051A (ko) | 프로그래밍가능 오류 정정 코드 인코딩 및 디코딩 로직 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080801 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110602 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110628 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110722 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140729 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |