JP2006209969A - 半導体装置 - Google Patents
半導体装置 Download PDFInfo
- Publication number
- JP2006209969A JP2006209969A JP2006126365A JP2006126365A JP2006209969A JP 2006209969 A JP2006209969 A JP 2006209969A JP 2006126365 A JP2006126365 A JP 2006126365A JP 2006126365 A JP2006126365 A JP 2006126365A JP 2006209969 A JP2006209969 A JP 2006209969A
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- data
- bits
- bit
- 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.)
- Granted
Links
Landscapes
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
【解決手段】I/O端子1040〜1047とページバッファ1020〜1027との間に、複数のメモリセルエリア1010〜1017に書き込むデータに対して誤り訂正用の検査ビットECCを生成して付加する符号化器及び生成された検査ビットECCを使用してメモリセルエリア1010〜1017から読み出されたデータに対して誤り訂正処理を行う復号器を備えたECC回路103とを備える。ECC回路103は、1つのメモリセルエリア101jに対する書き込み及び読み出しの単位となる528ビットの8倍の4224ビットを情報ビット長として1つの40ビットの検査ビットECCを割り当て、符号化処理及び復号処理を8ビットで並列に実行する。
【選択図】図7
Description
原始多項式 : F(X) =X4+X+1
αの最小多項式 : M1(x)=X4+X+1
α3の最小多項式: M3(x)=X4+X3+X2+X+1
生成多項式 : G(x) =M1M3=X8+X7+X6+X4+1
(1)符号化回路
図22は、従来のECC回路3i(i=0,1,…,又は7)の内部に機能的に構成される符号化回路10を示すブロック図である。この符号化回路10は、レジスタD7,D6,D5,D4,D3,D2,D1,D0からなるシフトレジスタ11と、モジュロ2の演算を行うXOR回路121,122,123,124と、切替スイッチSW1,SW2とから構成されている。
a0X0+a1X1+a2X2+a3X3+a4X4+a5X5+a6X6+a7X7
[但しaiはレジスタDiに格納された値でai=0又は1(i=0〜7)]
これを1回シフトすることにより、
[数3]
a0X1+a1X2+a2X3+a3X4+a4X5+a5X6+a6X7+a7X8
となる。数1の生成多項式G(x)よりX8=X7+X6+X4+1の関係があるため、数3は、
[数4]
a7X0+a0X1+a1X2+a2X3+(a3+a7)X4+a4X5+(a5+a7)X6+(a6+a7)X7
のように表せる。これは各ビットをシフトさせた際に、レジスタD7の値a7をレジスタD0に格納し、レジスタD3,D7の値a3,a7をXOR回路121で足し込んでレジスタD4に格納し、レジスタD5,D7の値a5+a7をXOR回路122で足し込んでレジスタD6に格納し、レジスタD6,D7の値a6+a7をXOR回路123で足し込んでレジスタD7に格納することに相当する。
次に、復号回路について説明する。復号回路は、シンドローム計算回路と、誤り位置検出回路とから構成される。2ビット誤り訂正の場合、復号に際して2つのシンドロームS1,S3が必要であり、これらは最小多項式M1(x)=X4+X+1により求められることが知られている。図23(a)は、従来のS1シンドローム計算回路20を具体的に表した図、同図(b)は、従来のS3シンドローム計算回路30を示す図である。
a0X0+a1X1+a2X2+a3X3
[但しaiはレジスタDiに格納された値でai=0又は1(i=0〜3)]
これを1回シフトすることにより
[数6]
a0X1+a1X2+a2X3+a3X4
となるが、αの最小多項式M1(x)よりX4=X+1の関係があるため、
[数7]
a3X0+(a0+a3)X1+a1X2+a2X3
となる。これは、各ビットをシフトさせた際に、レジスタD3の値a3をレジスタD0に格納し、レジスタD0,D3の値a0,a3をXOR回路122で足し込んでレジスタD1に格納することに相当する。メモリセルに記憶された情報ビットI0〜I6と検査ビットI7〜I14とは、この順にS1シンドローム計算回路20に1ビットずつ入力され、1ビット入力される毎に、シフトレジスタ21が1回動作する。全てのビットI0〜I14が入力されたらシフトレジスタ21(D0〜D3)にシンドロームS1が生成される。
[数8]
a0X3+a1X4+a2X5+a3X6
となるが、αの最小多項式M1(x)よりX4=X+1の関係があるため、
[数9]
a1X0+(a1+a2)X1+(a2+a3)X2+(a0+a3)X3
となる。これは、各ビットをシフトさせた際に、レジスタD1の値a1をレジスタD0に格納し、レジスタD1,D2の値a1,a2をXOR回路322で足し込んでレジスタD1に格納し、レジスタD2,D3の値a2,a3をXOR回路323で足し込んでレジスタD2に格納し、レジスタD0,D3の値a0,a3をXOR回路324で足し込んでレジスタD3に格納することに相当する。このS3シンドローム回路30にも、メモリセルに記憶された情報ビットI0〜I6と検査ビットI7〜I14とが、この順に1ビットずつ入力され、1ビット入力される毎に、シフトレジスタ31が1回動作する。全てのビットI0〜I14が入力されたらシフトレジスタ31(D0〜D3)にシンドロームS3が生成される。
σ(Z)=S1+σ1×Z+σ2×Z2
このような点に基づき構成された誤り位置検出回路の構成を図25及び図26に示す。図25は、S1、σ1及びσ2を計算すると共に格納する第1の演算部40aを示し、図26は、第1の演算部40aの演算結果に基づいて数10の演算を行ってデータの誤り位置を示す検出信号を出力する第2の演算部40bを示している。第1の演算部40aは、図25に示すようにシフトレジスタ41、X演算回路42及びX2演算回路43により構成されている。シフトレジスタ41aには、シンドロームS1が格納され、シフトレジスタ42a,43aにはσ1=S1 2、σ2=S1 3+S3の演算結果が格納される。ここでシフトレジスタ42aの値を、
[数11]
a0X0+a1X1+a2X2+a3X3
[但しaiはレジスタDiに格納された値でai=0又は1(i=0〜3)]
とすると、X演算回路42は、これをX倍するので、シフトレジスタ42aの値は、
[数12]
a0X1+a1X2+a2X3+a3X4
となるが、αの最小多項式M1(x)よりX4=X+1の関係があるため、数12は、
[数13]
a3X0+(a0+a3)X1+a1X2+a2X3
となる。これは、各ビットをシフトさせた際に、レジスタD3の値a3をレジスタD0に格納し、レジスタD0,D3の値a0,a3をXOR回路42bで足し込んでレジスタD1に格納することに相当する。
[数14]
a0X2+a1X3+a2X4+a3X5
となるが、αの最小多項式M1(x)よりX4=X+1の関係があるため、数14は、
[数15]
a2X0+(a2+a3)X1+(a0+a3)X2+a1X3
となる。これは、各ビットをシフトさせた際に、レジスタE2の値a2をレジスタE0に格納し、レジスタE1の値a1をレジスタE3に格納し、レジスタE2,E3の値a2,a3をXOR回路43b1で足し込んでレジスタE1に格納し、レジスタE0,E3の値a0,a3をXOR回路43b2で足し込んでレジスタE2に格納することに相当する。
[数16]
符号長 n=2m−1
情報ビット数 k≦2m−1−m×t
検査ビット数 mt+1≦n−k
訂正ビット数 t
の関係があるため、mの数を大きくすると、符号長及び情報ビット数は指数関数的に増加するが、検査ビット数はそれほど増加しない。このため、情報ビット数は、2m−1−m×tを超えない限度で大きい方が情報ビット数に対する検査ビット数の割合が小さくなる。従って、できるだけ大きな情報ビット数に対し、検査ビットを設けた方が有利である。
(1)第1の実施形態
まず、本発明を理解するため、第1の実施形態として、情報ビット数k=7、符号長n=15、訂正ビット数t=2の2ビット誤り訂正の例について説明する。
(1−1)符号化回路
図22に示した従来の符号化回路10に入力データI0が符号化回路10に入力されると、この入力データI0は、XOR回路124によって符号化回路のX7の項に足しこまれ、その後X倍される。初期状態では符号化回路10の各レジスタ11の値は0であるため、この値を(0)とすると
[数17]
(0+I0X7)X
となる。次に入力データI1が符号化回路10に入力されると、この入力データI1は、符号化回路10のX7の項に足しこまれ、この後X倍されているので、
[数18]
((0+I0X7)X+I1X7)X
となる。
[数19]
(((0+I0X7)X+I1X7)X+I2X7)X
となる。
[数20]
(((((((0+I0X7)X+I1X7)X+I2X7)X+I3 X7)X+I4X7)X
+I5X7)X+I6X7)X
となる。この式を変形すると
[数21]
((((0+I0X7+I1X6)X2+I2X7+I3X6)X2+I4X7+I5X6)X2+I6X7)X
となり、これは、入力データI0,I1がそれぞれ符号化回路10のX7,X6の項に足しこまれ、この後X2倍され、次に入力データI2,I3がそれぞれが符号化回路10のX7,X6の項に足しこまれ、この後X2倍され、次に入力データI4,I5がそれぞれが符号化回路10のX7,X6の項に足しこまれ、この後X2倍されることを意味する。つまり2ビットの入力の後、1回のシフトレジスタ11の動作でデータがX2倍される。但し、最後のI6は従来通り1ビットの入力で、X倍されることになる。
[数22]
a0X2+a1X3+a2X4+a3X5+a4X6+a5X7+a6X8+a7X9
となるが、数1の生成多項式G(x)よりX8=X7+X6+X4+1の関係があるため、数21は、
[数23]
(a6+a7)X0+a7X1+a0X2+a1X3+(a2+a6+a7)X4+(a3+a7)X5+(a4+a6+a7)X6+(a5+a6)X7
となる。
(1−2)復号回路
(1−2−1)S1シンドローム計算回路
図23(a)の従来のS1シンドローム計算回路20では、まず、S1シンドローム計算回路20内の値がX倍された後、XOR回路221によりX0の項に入力データI0が足しこまれる。初期状態ではS1シンドローム計算回路20のシフトレジスタ21の値は0であるため、この値を(0)とすると、
[数24]
0×X+I0
となる。次にS1シンドローム計算回路20内の値がX倍された後、X0の項に入力データI1が足しこまれるので、
[数25]
(0×X+I0)X+I1
となる。続いてS1シンドローム計算回路20内の値がX倍された後、X0の項に入力データI2が足しこまれるので、
[数26]
((0×X+I0)X+I1)X+I2
となる。このようにして入力データI14までがS1シンドローム計算回路20に入力されると、
[数27]
(((((((((((((0×X+I0)X+I1)X+I2)X+I3)X+I4)X+I5)X
+ I6)X+I7)X+I8)X+I9)X+I10)X+I11)X+I12)X+I13)X+I14
となる。この式を変形すると、
[数28]
(((((((0×X2+I0X+I1)X2+I2X+I3)X2+I4X+I5)X2+I6X+I7)X2+I8X+I9)X2+I10X+I11)X2+I12X+I13)X+I14
になり、これは、S1シンドローム計算回路20内の値をX2倍した後、入力データI0,がX1の項、入力データI1がX0の項にそれぞれ足しこまれ、次に、S1シンドローム計算回路20内の値をX2倍した後、入力データI2,がX1の項、入力データI3がX0の項にそれぞれ足しこまれ、次に、S1シンドローム計算回路20内の値をX2倍した後、入力データI4がX1の項、入力データI5がX0の項にそれぞれ足しこまれることを意味する。つまり1回のシフトレジスタの動作でデータがX2倍され、その後、2ビットのデータを入力している。但し、最後はS1シンドローム計算回路20内の値をX倍した後、1ビットの入力で入力データI14がX0の項に足しこまれている。
[数29]
a0X2+a1X3+a2X4+a3X5
となるが、αの最小多項式M1(x)より、X4=X+1の関係があるため、
[数30]
a2X0+(a2+a3)X1+(a0+a3)X2+a1X3
となる。
(1−2−2)S3シンドローム計算回路
次に、図4(b)のS3シンドローム計算回路70について説明する。図23(b)の従来のS3シンドローム計算回路30では、まず、S3シンドローム計算回路30内の値がX3倍された後、XOR回路321によりX0の項に入力データI0が足しこまれる。初期状態では、S3シンドローム計算回路30のシフトレジスタ31の値は0であるため、この値を(0)とすると
[数31]
0×X3+I0
となる。次にS3シンドローム計算回路30内の値がX3倍された後、X0の項に入力データI1が足しこまれるので、
[数32]
(0×X3+I0)X3+I1
となる。続いてS3シンドローム計算回路30内の値がX3倍された後、X0の項に入力データI2が足しこまれるので、
[数33]
((0×X3+I0)X3+I1)X3+I2
となる。このようにして、入力データI14までがS3シンドローム計算回路30に入力されると、
[数34]
(((((0X3+I0)X3+I1)X3+I2)X3+I3)X3+I4)X3+I5)X3+I6)X3+I7)X3+I8)X3+I9)X3+I10)X3+I11)X3+I12)X3+I13)X3+I14
となる。この式を変形すると、
[数35]
(((((0×X6+I0X3+I1)X6+I2X3+I3)X6+I4X3+I5)X6+I6X3+I7)X6+I8X3+I9)X6+I10X3+I11)X6+I12X3+I13)X3+I14
になり、これは、S3シンドローム計算回路30内の値をX6倍した後、入力データI0がX3の項、入力データI1がX0の項にそれぞれ足しこまれ、次に、S3シンドローム計算回路30内の値をX6倍した後、入力データI2がX3の項、入力データI3がX0の項にそれぞれ足しこまれ、次にS3シンドローム計算回路30内の値をX6倍した後、入力データI4がX3の項、入力データI5がX0の項にそれぞれ足しこまれることを意味している。つまり1回のシフトレジスタの動作でデータがX6倍され、その後、2ビットのデータを入力している。但し、最後はS3シンドローム計算回路30内の値をX3倍した後、1ビットの入力で入力データI14がX0の項に足しこまれている。
[数36]
a0X6+a1X7+a2X8+a3X9
となるが、αの最小多項式M1(x)よりX4=X+1の関係があるため、
[数37]
(a1+a2)X0+(a1+a3)X1+(a0+a2)X2+(a0+a1+a3)X3
となる。
次に誤り位置検出回路について説明する。本実施形態の誤り位置検出回路では、S1,S3シンドローム計算回路60,70が1回のシフト動作で従来の2回分のシフト動作を行うものであるから、誤り位置検出回路も、従来の2回分のシフト動作に相当する演算を行う。いま、数10の誤り位置多項式を、
[数38]
σ(Z)=S1+σ1×Z2+σ2×Z4
とする。
[数39]
a0X4+a1X5+a2X6+a3X7
となるが、αの最小多項式M1(x)よりX4=X+1の関係があるため、
[数40]
(a0+a3)X0+(a0+a1+a3)X1+(a1+a2)X2+(a2+a3)X3
となる。これは、このX4演算回路83は、数40に基づき、1回のシフト動作で、レジスタE0,E3の値a0,a3をXOR回路83b1で足し込んでレジスタE0に格納し、レジスタE0,E1,E3の値a0,a1,a3をXOR回路83b1,83b2で足し込んでレジスタE1に格納し、レジスタE1,E2の値a1,a2をXOR回路83b3で足し込んでレジスタE2に格納し、レジスタE2,E3の値a2,a3をXOR回路83b4で足し込んでレジスタE3に格納する。
(2)第2の実施形態
図7は、チップ上にECC回路を搭載した第2の実施形態に係るNAND型フラッシュメモリのブロック図である。
(2−1)符号化回路
このECC回路103では、データを8ビット(D0〜D7)ずつ入力し、528×8=4224ビットのデータを単位として誤り検出訂正をおこなう。例えば、3ビット訂正4ビット誤り検出のBCH符号について考えると、情報ビットk=4224、符号長n=8191、訂正ビットt=3、m=13となり符号化及び復号に必要な生成多項式は以下のようになる。
原始多項式 : F(X) =X13+X4+X3+X+1
パリティ多項式 : M0(x)=X+1
αの最小多項式 : M1(x)=X13+X4+X3+ X+1
α3の最小多項式: M3(x)=X13+X10+X9+X7+X5+X4+1
α5の最小多項式: M5(x)=X13+X11+X8+X7+X4+X1+1
生成多項式 : G(x)=M0M1M3M5
=X40+X39+X38+X35+X34+X33
+X32+X28+X27+X26+X25+X23+X22
+X20+X18+X17+X16+X15+X14+X10
+X9+X5+X4+X2+X1+1
先の第1の実施形態と同様に、数42を変形し、数43を求める。
(((((0+I0X39)X+I1X39)X+I2X39)X+I3X39)………
)X+I527X39)X
[数43]
(((((0+I0X39+I1X38+I2X37……I7X32)X8+(I8X39……
I15X32))X8………(I520X39+I521X38……I527X32)X8
数43の意味するところは次の通りである。まず、一回のWE信号のクロックに対し入力される8ビットのデータD0〜D7=I0,I1,I2,…,I7のそれぞれにX39,X38,X37,…,X32を掛け、内部のレジスタ値に足しこみ、その後、レジスタの値をX8する。続いて、次のWE信号のクロックに対し入力される8ビットのデータD0〜D7=I8,I9,I10,…,I15のそれぞれにX39,X38,X37,…,X32を掛け、内部のレジスタ値に足しこみ、その後、レジスタの値をX8する。これを、最後の8ビットのデータD0〜D7=I4216,I4217,I4218,…,I4223まで528回繰り返す。
(2−2)複号回路
(2−2−1)シンドローム計算回路
3ビット誤り訂正、4ビット誤り検出のためには4つのシンドロームS0,S1,S3,S5が必要であることが知られている。シンドロームS0は最小多項式M0(x)=x+1により求められる。最小多項式M1(x)=x10+x3+1により求められるx10=x3+1をα演算子とすると、シンドロームS1はα演算子より、シンドロームS3はα3演算子より、シンドロームS5はα5演算子より求められる。従来の復号回路では、一回のWE信号のクロックに対し1ビットしか入力できなかったが、第1の実施形態の数27から数28に、また数34から数35に変形されたときと同様に変形し、一回のWE信号のクロックに対し8ビットのデータを取り込めるようにする。したがって、シンドロームS1はα8演算子より、シンドロームS3はα24演算子より、シンドロームS5はα40演算子より求められる。
図14は、このECC回路103の復号処理を示すフローチャートである。
A=a0X0+a1X1+a2X2+ … +a12X12
B=b0X0+b1X1+b2X2+ … +b12X12
この場合、A×Bは、数52のようになる。
A×B=A(b0X0+b1X1+b2X2+ … +b12X12)
=Ab0+X(Ab1+X(Ab2+X(Ab3+ …
… +X(Ab12))))))))))))
これを回路を表すと、図17(b)の構成となる。AとbiとがAND回路151でAND演算され、その演算結果をX乗算回路152でX倍して、XOR回路153で次のAとbi+1とのAND演算結果とXOR演算する。ここで、X乗算回路152は、同図(c)に示すように、数41のαの最小多項式M1(X)より、X13=X4+X3+X+1の関係があるので、X12の項がX0の項にシフトすると共に、XOR回路154により、X3,X1,X0の項に足し込まれ、それぞれX4,X3,X1の項に格納されるという演算を行う。
誤りビットの位置の検出は、3ビット訂正と4ビット訂正の場合、下記数53の誤り位置多項式に従うことが知られている。
σ(Z)=S1+σ1×Z+σ2×Z2+σ3×Z3
この数53にZ=αI(I=0,1,2,3・・・…)を順次代入してσ(αI)= 0となったiが誤りの位置となる。本実施形態では、一回のWEのクロックに対し8ビットのデータを出力するため、第1の実施形態で数10を数38に変形したように、数53を、次の数54のように変形する。
σ(Z)=σ0+σ1×Z8+σ2×Z16+σ3×Z24
これにより、8ビットおきに8ビットずつ同時に誤り検出を行う。つまり8I/O分の出力データのうちI/O0に対して、誤り検出を行い、誤りがあるとσ=0となる。図16の演算の結果、13ビットのシフトレジスタA,B,C,Rにはそれぞれ、σ1、σ3、σ2、σ0が初期値として与えられている、演算用ロジック回路131のシフトレジスタAに繋がるXOR回路はα8演算回路、シフトレジスタBに繋がるXORはα24演算回路、シフトレジスタCに繋がるXORはα16演算回路を構成する。レジスタAの入力をAA0,AA1,…,AA12、出力をA0,A1,…,A12、レジスタBの入力をBB0,BB1,…,BB12、出力をB0,B1,…,B12、レジスタCの入力をCC0,CC1,…,CC12、出力をC0,C1,…,C12とすると、これらのα8,α16,α24演算回路では、それぞれ数55,数56及び数57の演算を行う。
2ヒ゛ット訂正BCH符号(情報ヒ゛ット数528ヒ゛ット) 21×8=168ヒ゛ット 100ヒ゛ット
2ヒ゛ット訂正BCH符号(情報ヒ゛ット数4224ヒ゛ット) 27ヒ゛ット 30ヒ゛ット
3ヒ゛ツト訂正BCH符号(情報ヒ゛ット数4224ヒ゛ット) 40ヒ゛ット 300ヒ゛ット
4ヒ゛ット訂正BCH符号(情報ヒ゛ット数4224ヒ゛ット) 53ヒ゛ット 1000ヒ゛ット
ここで、128Mビットと512MビットのNAND型フラッシュメモリにECC回路を搭載しない場合、2ビット訂正の従来構成のECCを搭載した場合、2ビット訂正の本実施形態のECC回路を搭載した場合について、チップサイズで比較してみると、下記表2のようになる。
ECC回路無し 41.88mm2(100.0%) 136.99mm2(100.0%)
従来ECC回路 44.72mm2(106.8%) 143.96mm2(105.1%)
本実施形態ECC回路 43.21mm2(103.2%) 140.42mm2(102.5%)
このように、本実施形態に係るECC回路を搭載したフラッシュメモリでは、従来型のECC回路搭載メモリがそれぞれ6.8%(128M),5.1%(512M)のチップサイズの増加があったのに対し、本実施形態のECC回路搭載メモリは、チップサイズの増加がその半分の3.2%(128M),2.5%(512M)であった。
20〜27,1020〜1027ページバッファ
30〜37,103…ECC回路
40〜47,1040〜1047,105…I/O端子
10,50…符号化器
20,60…S1シンドローム計算回路
30,70…S3シンドローム計算回路
40,80,133…誤り位置検出回路
40a,80a…第1の演算部
40b,80b…第2の演算部
131…演算用ロジック回路、
132…ガロア演算回路
134…データ反転回路
Claims (8)
- 複数のメモリセルがマトリクス配列されたa個のメモリセルエリアと、
前記複数のメモリセルエリアに書き込むデータに対して誤り訂正用の検査ビットを生成して付加する符号化器及び前記生成された検査ビットを使用して前記複数のメモリセルエリアから読み出されたデータに対して誤り訂正処理を行う復号器を備えた誤り訂正回路と
を備えた半導体装置において、
前記誤り訂正回路は、k=b×aビット(bは自然数)を情報ビット長として、その情報ビット長に対し1つのhビットの検査ビットを生成し、(k+h)ビットのデータを同時に書き込み及び読出しを行う単位とする
ことを特徴とする半導体装置。 - 前記復号器は、前記情報ビットと検査ビットとを入力してシンドロームを計算するシンドローム計算回路と、
前記計算されたシンドロームから誤り位置多項式の項を計算する第1の演算部及び計算された誤り多項式の項から誤り位置多項式を算出して誤り位置を検出する第2の演算部からなる誤り位置検出回路と、
前記メモリセルエリアから読み出されたデータに対して前記検出された誤り位置でデータ反転処理を施すデータ反転回路と
を備えた
ことを特徴とする請求項1記載の半導体装置。 - 前記符号化器、シンドローム計算回路及び第1の演算部は、演算用ロジック回路を構成するレジスタと演算回路とを切り替えて構成されるものであることを特徴とする請求項2記載の半導体装置。
- 前記シンドローム又は誤り位置多項式の項を計算する際に使用されるガロア演算回路を更に含むことを特徴とする請求項2記載の半導体装置。
- データに対して誤り訂正用の検査ビットを生成して付加する符号化器を含む誤り訂正回路を備えた半導体装置において、
前記符号化器は、k=b×aビット(bは自然数)の情報ビットのデータに対し1つのhビットの検査ビットを付加すると共に、前記符号化器には、前記データがaビットずつ入力される
ことを特徴とする半導体装置。 - 検査ビットを使用してデータに対して誤り訂正処理を行う復号器を含む誤り訂正回路を備えた半導体装置において、
前記復号器は、
k=b×aビット(bは自然数)の情報ビットのデータに対し1つのhビットの検査ビットが付加された(k+h)ビットのデータをaビットずつ入力されシンドロームを計算するシンドローム計算回路と、
前記計算されたシンドロームから誤り位置多項式の項を計算する第1の演算部及び計算された誤り多項式の項から誤り位置多項式を算出して誤り位置を検出する第2の演算部からなる誤り位置検出回路と、
前記データに対して前記検出された誤り位置でデータ反転処理を施すデータ反転回路と
を備えることを特徴とする半導体装置。 - 前記第2の演算部は、複数個のローケータと、前記ローケータ間に繋がる複数個の演算器により構成され、
前記第1の演算部は、前記第2の演算部と複数本のバスにより接続されている
ことを特徴とする請求項2または6記載の半導体装置。 - 前記第2の演算部は、前記第1の演算部の両側に分割して配置されることを特徴とする請求項2または6記載の半導体装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006126365A JP4113225B2 (ja) | 2006-04-28 | 2006-04-28 | 半導体装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006126365A JP4113225B2 (ja) | 2006-04-28 | 2006-04-28 | 半導体装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001356571A Division JP4112849B2 (ja) | 2001-11-21 | 2001-11-21 | 半導体記憶装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006209969A true JP2006209969A (ja) | 2006-08-10 |
JP4113225B2 JP4113225B2 (ja) | 2008-07-09 |
Family
ID=36966590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006126365A Expired - Lifetime JP4113225B2 (ja) | 2006-04-28 | 2006-04-28 | 半導体装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4113225B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008153170A1 (ja) * | 2007-06-15 | 2008-12-18 | Toyota Jidosha Kabushiki Kaisha | 電源システムおよびそれを備えた車両、ならびに充放電制御方法 |
US7719919B2 (en) | 2007-03-20 | 2010-05-18 | Kabushiki Kaisha Toshiba | Semiconductor memory device in which word lines are driven from either side of memory cell array |
CN104916332A (zh) * | 2014-03-14 | 2015-09-16 | 华邦电子股份有限公司 | 半导体存储装置及nand型快闪存储器的程序化方法 |
-
2006
- 2006-04-28 JP JP2006126365A patent/JP4113225B2/ja not_active Expired - Lifetime
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7719919B2 (en) | 2007-03-20 | 2010-05-18 | Kabushiki Kaisha Toshiba | Semiconductor memory device in which word lines are driven from either side of memory cell array |
WO2008153170A1 (ja) * | 2007-06-15 | 2008-12-18 | Toyota Jidosha Kabushiki Kaisha | 電源システムおよびそれを備えた車両、ならびに充放電制御方法 |
CN104916332A (zh) * | 2014-03-14 | 2015-09-16 | 华邦电子股份有限公司 | 半导体存储装置及nand型快闪存储器的程序化方法 |
JP2015176616A (ja) * | 2014-03-14 | 2015-10-05 | ウィンボンド エレクトロニクス コーポレーション | 半導体記憶装置 |
KR101731576B1 (ko) * | 2014-03-14 | 2017-04-28 | 윈본드 일렉트로닉스 코포레이션 | 반도체 기억장치 및 nand 플래시 메모리의 프로그램 방법 |
US10068659B2 (en) | 2014-03-14 | 2018-09-04 | Winbond Electronics Corp. | Semiconductor memory device and programming method of NAND flash memory |
CN104916332B (zh) * | 2014-03-14 | 2018-10-30 | 华邦电子股份有限公司 | 半导体存储装置及nand型快闪存储器的程序化方法 |
Also Published As
Publication number | Publication date |
---|---|
JP4113225B2 (ja) | 2008-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4112849B2 (ja) | 半導体記憶装置 | |
JP4856110B2 (ja) | チェンサーチ装置およびチェンサーチ方法 | |
US7581153B2 (en) | Memory with embedded error correction codes | |
US8069389B2 (en) | Error correction circuit and method, and semiconductor memory device including the circuit | |
JP3272903B2 (ja) | 誤り訂正検出回路と半導体記憶装置 | |
US8990667B2 (en) | Error check and correction circuit, method, and memory device | |
JP2010518464A (ja) | 半導体記憶装置 | |
US20090319863A1 (en) | Error-correcting system of semiconductor memory, error-correcting method, and memory system with error-correcting system | |
JP4846384B2 (ja) | 半導体記憶装置 | |
KR20120063329A (ko) | 에러 체크 및 정정기 및 그것을 포함하는 메모리 시스템 | |
JP4113225B2 (ja) | 半導体装置 | |
KR100566162B1 (ko) | 버스트 동작에 의해 데이터 및 패리티 데이터를입출력하는 반도체 기억 장치 | |
JP2001202792A (ja) | 半導体記憶装置のエラー訂正符号化方法及び半導体記憶装置 | |
JP2014033364A (ja) | 誤り検出訂正回路、及びメモリ装置 | |
CN108665940B (zh) | Ecc编码电路、解码电路以及存储器控制器 | |
JP5617776B2 (ja) | メモリ回路,メモリ装置及びメモリデータの誤り訂正方法 | |
US11831335B2 (en) | Memory system and control method of controlling nonvolatile memory | |
US20230387942A1 (en) | Memory system and method of controlling nonvolatile memory | |
US20140245101A1 (en) | Semiconductor memory | |
JPS58222497A (ja) | マイクロプログラム制御装置 | |
JP3600562B2 (ja) | 半導体記憶装置 | |
KR102064857B1 (ko) | 갈로아체 연산 회로 및 메모리 장치 | |
KR102027949B1 (ko) | 에러 검출 정정 회로 및 반도체 메모리 | |
JPH01119997A (ja) | 半導体記憶装置 | |
JPS61233500A (ja) | 半導体記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070828 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071029 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071225 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080225 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080317 |
|
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: 20080408 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080410 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4113225 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110418 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130418 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140418 Year of fee payment: 6 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |