JP2001202792A - 半導体記憶装置のエラー訂正符号化方法及び半導体記憶装置 - Google Patents

半導体記憶装置のエラー訂正符号化方法及び半導体記憶装置

Info

Publication number
JP2001202792A
JP2001202792A JP2000010300A JP2000010300A JP2001202792A JP 2001202792 A JP2001202792 A JP 2001202792A JP 2000010300 A JP2000010300 A JP 2000010300A JP 2000010300 A JP2000010300 A JP 2000010300A JP 2001202792 A JP2001202792 A JP 2001202792A
Authority
JP
Japan
Prior art keywords
data
read
memory cell
ecc
error correction
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
JP2000010300A
Other languages
English (en)
Inventor
Hiromi Nobukata
浩美 信方
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP2000010300A priority Critical patent/JP2001202792A/ja
Publication of JP2001202792A publication Critical patent/JP2001202792A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

(57)【要約】 【課題】 ECC処理を行うようにした半導体記憶装置
で、読み出し時のECC演算処理時間を短縮化できるよ
うにすると共に、ギャップレス読み出しを可能にする。 【解決手段】 書き込み時に、所定数の単位のデータに
対してエラー訂正符号を生成付加してメモリセルに書き
込み、読み出し時に、メモリセルから所定数の単位のデ
ータを上位側と下位側とに分割して読み出し、上位側か
ら読み出されたデータに対するシンドローム演算と、下
位側から読み出されたデータに対するシンドローム演算
とを並行して行い、下位側から読み出されたデータに対
するシンドローム演算の結果と、上位側から読み出され
たデータに対するシンドローム演算の結果とを合成し
て、所定数の単位のデータに対するシンドローム演算の
結果を得る。ECC方式として、ハミング符号が用いら
れる。上位側のECCの演算処理と、下位側のECCの
演算処理とが並行して行われるため、ECC演算の時間
がシリアル転送の1/2で終了でき、ギャップレス読み
出しを行うことが可能である。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、特に、ページ単
位で書き込み/読み出しを行なうようなNAND型のフ
ラッシュメモリに用いて好適な半導体記憶装置のエラー
訂正符号化方法及び半導体記憶装置に関するもので、特
に、ECC(Error Correcting Codes)演算の時間を短
縮化して、ECC演算を行ないながら、ギャップレス読
み出しを可能としたものに係わる。
【0002】
【従来の技術】フローティングゲートを有するメモリセ
ルトランジスタを用いたフラッシュメモリでは、消去/
書き換えが繰り返されると、酸化膜の劣化が生じ、セル
不良がランダムに発生する。そこで、ECCを使って、
信頼性を高めることが行なわれている。
【0003】すなわち、記録時に、所定単位のデータに
対して演算処理が行なわれてECCコードが生成され、
記録データに対してECCコードが付加されて、メモリ
セルへの書き込みが行なわれる。読み出し時には、メモ
リセルから読み出されたデータ及びECCコードから演
算処理が行なわれ、エラーの有無やエラーの位置が検出
され、訂正可能な場合には、エラー訂正が行なわれる。
【0004】ECC方式としては、エラー訂正コードの
生成やエラー訂正処理をするための演算回路を小型にで
きることから、巡回ハミング符号(CRC(Cyclic Red
undancy Code))用いたものが提案されている。CRC
符号は、生成多項式の割り算によりECC演算を行なう
ものである。例えば、1ページが512バイトの従来の
NAND型のフラッシュメモリでは、各IOライン毎
に、ハミング演算を行う巡回ハミング符号が用いられ
る。
【0005】
【発明が解決しようとする課題】ところが、CRCで
は、割り算でエラーチェック及びエラー箇所の特定を行
っているため、バイト単位で処理ができない。このた
め、読み出しにおいて、1ページ分のデータをラッチに
格納した後、1ページ分のデータをECC演算回路に入
れた後でないと、エラーの有無、エラーがある場合のエ
ラー位置の特定ができない。
【0006】この場合、1バイトのアクセス時間を50
n秒とすると、1ページが512バイトであるから、フ
ァーストアクセス後、 50n秒×512=25.6μ秒 後でないと、データを出力できないことになる。したが
って、図11に示すように、メモリセル601において
1ページのファーストアクセスを行って、1ヘージの全
てのデータを25.6μ秒かけてECC演算回路603
に送ってから、ECC演算回路603でECC演算を行
ない、更に、25.6μ秒のシリアル転送を行って、1
ページ分のデータの読み出しが終了する。
【0007】また、ECCに関する回路規模削減のため
に、メモリコアのページラッチをレジスタとして用いる
場合には、次のページデータを出力するまでに、ファー
ストアクセスの読み出し時間に、25.6μ秒を加えた
時間が必要になるため、ECC演算に伴うアクセス速度
の時間の増大が大きい。
【0008】CRCの単位をその半分の256バイトと
すれば、アクセス時間の増大は半減するが、ECC用に
付加しなければならないデータ数が18バイト(512
ビットの場合には10バイト)となり、回路規模の増大
につながる。
【0009】また、フラッシュメモリは、音楽データや
画像データを保存するための記憶媒体として用いられて
いる。音楽データや画像データでは、複数のページが連
続して読み出される。このような連続読み出しの場合に
は、1つのページを2つに分け、一方の領域でデータの
シリアル転送を行っている間に、他方の領域でファース
トアクセスを行うことで、ファーストアクセスの時間が
現れないようして、読み出し時間の短縮を図るようにし
た、ギャップレス読み出しと呼ばれる方法が用いられて
いる。
【0010】図12〜図16は、従来のギャップレス読
み出しを説明するものである。図12〜図16におい
て、メモリセルアレイ501は、フローティングゲート
を有する複数のメモリセルトランジスタが縦続接続され
たNANDストリングから構成されており、行方向に並
ぶメモリセルは共通のワード線に接続されてページが構
成される。ラッチ回路504は、ページ503の前半の
領域503Aを取り込むラッチ回路504Aと、ページ
503の後半領域503Bのデータを取り込むラッチ回
路504Bとに分かれている。
【0011】複数のページを連続して読み出す場合に
は、最初のページ読み出しでは、図12に示すように、
デコーダ502により、選択されたページ503のワー
ド線に読み出し電圧が与えられる。これと共に、ビット
線がプリチャージされ、ビット線にメモリセルの情報が
現れたら、ラッチパルスLA及びLBにより、1ページ
分の前半の領域503A及び503Bのメモリセルの情
報がラッチ回路504A及び504Bにラッチされる。
【0012】このようにしてファーストアクセスが終了
したら、図13に示すように、ラッチ回路504A及び
504Bにラッチされた読み出しデータが外部にシリア
ル転送される。
【0013】1ページの前半のラッチ回路504Aのシ
リアル転送を行いながら、図14に示すように、選択さ
れたページ503のワード線に読み出し電圧が与えら
れ、これと共に、1ページの後半の領域503Bのビッ
ト線がプリチャージされ、ビット線に1ページの前半の
領域503Bのメモリセルの情報が現れたら、ラッチパ
ルスLBにより、1ページの後半の領域503Bのメモ
リセルの情報がラッチ回路504Bにラッチされる。こ
のようにして、1ページの後半のファーストアクセス
を、1ページの前半のシリアル転送の間に終了してお
く。
【0014】そして、1ページの前半のシリアル転送が
終了したら、図15に示すように、ラッチ回路504B
にラッチされた1ページの後半のシリアル転送が開始さ
れる。このとき、1ページの後半の領域503Bのファ
ーストアクセスは、1ページの前半の領域503Aのシ
リアル転送の間に既に終了しているので(図14参
照)、直ちに、シリアル転送を開始できる。
【0015】それから、図16に示すように、1ページ
の後半のラッチ回路504Bのシリアル転送を続けなが
ら、選択された次ページ503のワード線に読み出し電
圧が与えられ、これと共に、1ページの前半の領域50
3Aのビット線がプリチャージされ、ビット線に1ペー
ジの前半の領域503Aのメモリセルの情報が現れた
ら、ラッチパルスLAにより、1ページの前半の領域5
03Aのメモリセルの情報がラッチ回路504Aにラッ
チされる。このようにして、1ページの前半のファース
トアクセスを、1ページの後半のシリアル転送の間に終
了しておく。
【0016】そして、1ページの後半のシリアル転送を
続け、1ページの後半のシリアル転送が終了されたら、
図13に戻り、ラッチ回路504Aにラッチされた次の
1ページの前半のシリアル転送が開始される。
【0017】以下、同様にして、図13〜図16の動作
が行われ、1ページの一方の領域503A、503Bで
データの転送を行っている間に、他方の領域503B、
504Bでファーストアクセスを行うことで、ファース
トアクセスの時間が現れなくなる。
【0018】このようなギャップレス読み出しを行なう
と、ファーストアクセスの時間が現れなくなるため、図
17に示すように、複数のページを連続して読み出した
ときに、シリアル転送の時間だけで読み出しが行え、読
み出し転送時間が改善される。
【0019】図17において、メモリセルアレイ701
の1ページは、例えば、512バイトからなり、1ペー
ジが512バイトのデータは、ページバッファ702A
及び702Bにより、256バイトずつに分割される。
1ページの半分の256バイトのデータの転送時間は1
2.8μ秒であり、一方の領域でシリアル転送が行われ
ている12.8μ秒の間に、他方の領域ではファースト
アクセスが行われる。このように、1ページを半分に分
け、一方の領域でシリアル転送している間に、他方の領
域でファーストアクセスを完了しておくことで、ギャッ
プレス読み出しが可能となる。
【0020】ところで、フラッシュメモリでは、このよ
うなギャップレス読み出しを行う場合にも、ECC処理
を行うことが望まれる。
【0021】ところが、前述したようなCRCコードを
用いる場合、従来のフラッシュメモリのECC方式で
は、ECC演算とシリアル読み出しの時間が等しくなる
ため、ギャップレス読み出しを実現することが難しくな
る。
【0022】つまり、64Mビットのフラッシュメモリ
では、CRCのエンコードは、ユーザの方で行うことを
前提としている。この場合、ユーザ側でギャップレスで
データを取り込んでECC演算を行なって切れ目なくデ
ータを使うためには、メモリの外側にECC演算回路
と、少なくとも、256バイトのバッファが必要にな
る。
【0023】ECC演算を行ってギャップレス読み出し
を行うためには、一方でシリアル転送をしている間に、
ファーストアクセスを行うと共に、ECC演算を行って
エラーの有無やエラーが発生している場合にはエラー位
置の検出をしなければならない。
【0024】ところが、CRCでは、データが揃わない
とECC演算が行えないため、図18に示すように、E
CC演算でデータを揃える時間と、シリアル転送の時間
とが略等しくなり、一方でシリアル転送を行っている間
に、ファーストアクセスを行うと共にECC演算を行な
うことは困難である。
【0025】図18において、メモリセルアレイ801
に対して、1ページの前半の領域をラッチするページバ
ッファ802Aと、1ページの後半の領域をラッチする
ページバッファ802Bが設けられる。そして、メモリ
セルアレイ801から読み出されたデータに対するEC
C演算回路803Bが設けられる。
【0026】図18の例では、シリアル転送の時間が1
2.8μ秒であり、ギャプレス読み出しを行なうために
は、その間に、ファーストアクセスとECC演算とを行
わなければならないが、ECC演算に少なくとも12.
8μ秒かかり、ファーストアクセスとECC演算とを合
わせて12.8μ秒以内に行うことはできない。
【0027】そこで、1ページを例えば4分割し、1つ
の領域でシリアル転送を行っている間に、他の1つの領
域でファーストアクセスを行い、更に、他の1つの領域
で、ECC演算を行うようにすることが考えられる。す
なわち、図19に示すように、メモリセルアレイ901
の1ページに対して、ページバッファ902A、902
B、902C、902Dが設けられる。また、ページバ
ッファ902A及び902Cに対して、ECC演算回路
903Aが設けられ、ページバッファ902B及び90
2Dに対して、ECC演算回路903Bが設けられる。
ECC演算単位は、128バイトとされる。各領域毎に
ECC演算が順次行われ、その間、他の1つの領域では
シリアル転送が行われ、他の1つの領域では、ファース
トアクセスが行われる。
【0028】この場合、1つの領域を出力する時間は、 50n秒×128=6.4μ秒 となるが、6.4μ秒でファーストアクセスを終了する
ことは可能である。これにより、ギャップレス読み出し
は可能となる。
【0029】ところが、上述のように、1ページを4分
割すると、エラー訂正の単位のデータ数が小さくなり、
図20に示すテーブルのように、符号化率が低くなると
いう問題が生じる。
【0030】つまり、図20は、CRCコードの場合の
データの長さとエラーコードの長さと符号化率の関係を
示すものである。CRCの単位が512バイトのときに
は、ECCコードの数が10バイトとなり、符号化率は
98.1%であるが、CRCの単位を128バイトとす
ると、ECCコードの数は8バイトとなり、符号化率は
94.1%となる。
【0031】したがって、この発明の目的は、ECC処
理を行うようにした半導体記憶装置で、読み出し時のE
CC演算処理時間を短縮化できるようにした半導体記憶
装置のエラー訂正符号化方法及び半導体記憶装置を提供
することにある。
【0032】この発明の他の目的は、1ページを2つの
領域に分割し、一方でシリアル転送を行っている間に、
他方でメモリセルのアクセスを行なうようなギャップレ
ス読み出しを行う際に、ECC演算が可能な半導体記憶
装置のエラー訂正方法及び半導体記憶装置を提供するこ
とにある。
【0033】
【課題を解決するための手段】この発明は、書き込み時
に、所定数の単位のデータに対してエラー訂正符号を生
成付加してメモリセルに書き込み、読み出し時に、メモ
リセルから所定数の単位のデータを上位側と下位側とに
分割して読み出し、上位側から読み出されたデータに対
するシンドローム演算と、下位側から読み出されたデー
タに対するシンドローム演算とを並行して行い、下位側
から読み出されたデータに対するシンドローム演算の結
果と、上位側から読み出されたデータに対するシンドロ
ーム演算の結果とを合成して、所定数の単位のデータに
対するシンドローム演算の結果を得るようにした半導体
記憶装置のエラー訂正符号化方法である。
【0034】この発明は、1ページを2つの領域に分割
し、一方の領域でシリアル転送を行っている間に、他方
の領域でメモリセルの情報を読み出すことで、複数のペ
ージのデータを連続的にシリアル転送するようにした半
導体記憶装置の読み出し方法において、書き込み時に、
所定数の単位のデータに対してエラー訂正符号を生成付
加してメモリセルに書き込んでおき、他方の領域でメモ
リセルの情報を読み出す際に、メモリセルから所定数の
単位のデータを上位側と下位側とに分割して読み出し、
上位側から読み出されたデータに対するシンドローム演
算と、下位側から読み出されたデータに対するシンドロ
ーム演算とを並行して行い、下位側から読み出されたデ
ータに対するシンドローム演算の結果と、上位側から読
み出されたデータに対するシンドローム演算の結果とを
合成して、所定数の単位のデータに対するシンドローム
演算の結果を得るようにした半導体記憶装置のエラー訂
正符号化方法。
【0035】この発明は、所定数の単位のデータに対し
てエラー訂正符号を生成付加してメモリセルに書き込ん
で、エラー訂正処理を行うようにした半導体記憶装置に
おいて、メモリセルから読み出される所定数の単位のデ
ータを上位側と下位側とに分割する手段と、上位側から
読み出されたデータに対するシンドローム演算を行う手
段と、下位側から読み出されたデータに対するシンドロ
ーム演算を行う手段と、下位側から読み出されたデータ
に対するシンドローム演算の結果と、上位側から読み出
されたデータに対するシンドローム演算の結果とを合成
して、所定数の単位のデータに対するシンドローム演算
の結果を得る手段とを備え、上位側から読み出されたデ
ータに対するシンドローム演算と、下位側から読み出さ
れたデータに対するシンドローム演算とを並行して行う
ようにした半導体記憶装置である。
【0036】エラー訂正処理単位が上位側と下位側とに
分けられ、ECC方式として、ハミング符号が用いられ
る。非巡回型の符号の場合には、ECC演算を、上位側
と下位側とに分けて行うことができる。上位側のECC
の演算処理と、下位側のECCの演算処理とが並行して
行われるため、ECC演算の時間がシリアル転送の1/
2で終了できる。
【0037】このように、ECC演算がシリアル転送の
1/2で終了できることから、1ページを2つの領域に
分け、一方でシリアル転送を行っている間に、ファース
トアクセスとECC演算とを行って、ギャップレス読み
出しを行うことが可能である。
【0038】
【発明の実施の形態】以下、この発明の実施の形態につ
いて図面を参照して説明する。この発明の実施の形態で
は、ECCの演算単位を上位側と下位側とに2つに分
け、上位側のECC演算と下位側のECC演算とを並行
して行なっている。このように、ECC演算を上位側と
下位側とで並行して行なうと、ECCの演算時間は半分
となる。
【0039】ECC方式としては、線形ブロック符号を
使用している。線形ブロック符号を使った場合には、E
CC演算がモジュロ2の加算(排他的論理和)となるの
で、演算単位のデータを上位と下位とに分けて、並列的
に演算することが可能である。なお、巡回ハミングコー
ド(CRC(Cyclic Redundancy Code))では、ECC
演算が生成多項式の割り算になるので、演算単位のデー
タが揃わないと、ECC演算が行なえない。このため、
演算処理を並列的に行なうことは困難である。
【0040】先ず、この発明の実施の形態を説明するの
に先立ち、ECC方式として線形符号を使用したNAN
D型のフラッシュメモリについて説明する。この例で
は、ハミングコードが使われる。ハミングコードは、パ
リティ検査行列の各列が全ての異なるm次元の2元列ベ
クトルより構成される符号であり、単一の誤り訂正が可
能である。
【0041】例えば、符号長が16ビットとすると、E
CCコードは5ビットとなる。この場合、図1に示すよ
うなテーブルを使って、5ビットのECCコードC0
が生成される。図1のテーブルにおいて、データは
「x〜x15」で定義されており、「C0 〜C3 」が
生成されるECCコードである。C0 を「20 」、C1
を「21 」、C2 を「22 」、C3 を「23 」とし、デ
ータの番号で「1」が立つところに、図1に示すよう
に、丸印が付されている。ECCコード生成時には、丸
印が付されている所では、モジュロ2の加算が行なわれ
る。モジュロ2の加算は、具体的には、排他的論理和
(EX−OR)で行なわれる。
【0042】なお、「x0 」は、2進数で表すと「00
00」となって「1」が一つも立たないが、何等かの形
で演算に入っていないと、「x0 」にエラーが発生した
場合に検出できないため、「x0 」の演算を「C0 〜C
3 」に入れておく。そして、「C4 」に関しては、「x
0 」を除く全てのデータの演算を行なう。
【0043】そして、読み出し時には、読み出されたデ
ータ「x0 」〜「x15」、「C0 」〜「C4 」に対し
て、図2に示すようなテーブルを使って、シンドローム
演算が行なわれる。
【0044】したがって、ハミングコードを用いて、1
6ビットのデータに対して5ビットのECCコードを付
加したときの符号化処理の演算は、図1に示すテーブル
から、 C0 =x0 +x1 +x3 +x5 +x7 +x9 +x11+x
13+x151 =x0 +x2 +x3 +x6 +x7 +x10+x11+x
14+x152 =x0 +x4 +x5 +x6 +x7 +x12+x13+x
14+x153 =x0 +x8 +x9 +x10+x11+x12+x13+x
14+x154 =x1 +x2 +x3 +x4 +x5 +x6 +x7 +x
8 +x9 +x10+x11+x12+x13+x14+x15 (但し、加算はモジュロ2)のようになる。
【0045】また、復号化時のシンドローム演算処理
は、図2に示すテーブルから、 S0 =x0 ' +x1 ' +x3 ' +x5 ' +x7 ' +
9 ' +x11' +x13' +x15' +C0 ' S1 =x0 ' +x2 ' +x3 ' +x6 ' +x7 ' +
10' +x11' +x14' +x15' +C1 ' S2 =x0 ' +x4 ' +x5 ' +x6 ' +x7 ' +
12' +x13' +x14' +x15' +C2 ' S3 =x0 ' +x8 ' +x9 ' +x10' +x11' +
12' +x13' +x14' +x15' +C3 ' S4 =x1 ' +x2 ' +x3 ' +x4 ' +x5 ' +
6 ' +x7 ' +x8 ' +x9 ' +x10' +x11' +x
12' +x13' +x14' +x15' +C4 ' (但し、加算はモジュロ2)のようになる。
【0046】図3は、上述のようなハミングコードを使
用してECC演算が行なえるようにしたNAND型のフ
ラッシュメモリの構成を示すものである。NAND型の
フラッシュメモリでは、共通のワード線WL0〜WL1
5に接続されたメモリセルにより読み出しが行なわれ
る。
【0047】図3において、メモリセルアレイ1には、
複数のNAND型のメモリストリングが配列される。N
AND型のメモリストリングは、縦続接続された例えば
16個のメモリセルトランジスタMT0、MT1、...
、MT15と、縦続接続されたメモリセルトランジス
タのドレイン側に接続された選択ゲートトランジスタS
G1と、縦続接続されたメモリセルトランジスタのソー
ス側に接続された選択ゲートトランジスタSG2とから
構成される。メモリセルトランジスタMT0、MT
1、... 、MT15は、フローティングゲートを有する
トランジスタである。
【0048】選択ゲートトランジスタSG1のドレイン
は、ビット線BL0、BL1、...BL20に接続され
る。選択ゲートトランジスタSG2のソースは、ソース
線Vsに接続される。
【0049】行方向に並ぶメモリセルトランジスタのゲ
ートは、共通のワード線WL0、WL1、... 、WL1
5に接続される。また、選択ゲートトランジスタSG1
のゲートは、制御信号線DSGに接続され、選択ゲート
トランジスタSG2のゲートは、制御信号線SSGに接
続される。これらのワード線WL0〜WL15及び選択
ゲートの制御信号線DSG及びSSGは、図示していな
いロウデコーダに接続される。
【0050】ビット線BL0、BL1、... 、BL20
に対して、ラッチ回路L0、L1、... 、L20が設け
られる。これらのラッチ回路L0〜L20のうち、ラッ
チ回路L0、L1、... 、L15は、ゲート用のトラン
ジスタN0、N1、... 、N15を介して、I/Oバス
ラインIO0、IO1、IO2、IO3に接続される。
トランジスタN0、N1、... のゲートには、カラム信
号Y00、Y01、Y02、Y03が接続される。
【0051】カラム信号Y00〜03は4本あり、カラ
ム信号Y00は、トランジスタN0〜N3のゲートに接
続され、カラム信号Y01は、トランジスタN4〜N7
のゲートに接続され、カラム信号Y02は、トランジス
タN8〜N11のゲートに接続され、カラム信号Y03
は、トランジスタN12〜N15のゲートに接続され
る。
【0052】I/Oバスは4本のラインIO0〜IO3
からなり、I/OバスIO0には、ゲートトランジスタ
N0、N4、N8、N12が接続され、I/OバスIO
1には、ゲートトランジスタN1、N5、N9、N13
が接続され、I/OバスIO2には、ゲートトランジス
タN2、N6、N10、N14が接続され、I/Oバス
IO3には、ゲートトランジスタN3、N7、N11、
N15が接続される。
【0053】このようなNAND型のフラッシュメモリ
では、共通のワード線WL0〜WL15に接続されたメ
モリセルによりページが構成され、このページ単位で、
読み出しが行なわれる。
【0054】ファーストアクセスでは、ロウデコーダ
(図示せず)により、ワード線WL0〜WL15のうち
選択されたワード線に読み出し電圧が与えられ、他のワ
ード線及び選択信号線DSG及びSSGにハイレベルが
与えられ、各ビット線BL0、BL1、... がプリチャ
ージされる。これにより、各ビット線BL0、BL
1、... に各メモリセルの情報が現れる。このメモリセ
ルの情報は、ラッチ回路L0、L1、... に取り込まれ
る。
【0055】ラッチ回路L0、L1、L2、... 、L1
5には、再生データx0 ' 、x1 '、x2 ' 、... 、x
15' が保持され、ラッチ回路L16、L17、L18、
L19、L20には、再生ECCコードC0 ' 、C1 '
、C2 ' 、C3 ' 、C4 ' が保持される。これらのデ
ータ及びECCコードがECC演算回路101に供給さ
れる。
【0056】ECC演算回路101では、ラッチ回路L
0、L1、L2、... 、L15から送られてきたデータ
0 ' 、x1 ' 、x2 ' 、... 、x15' 及びラッチ回路
L16、L17、L18、L19、L20から送られて
きたECCコードC0 ' 、C1 ' 、C2 ' 、C3 ' 、C
4 ' により、シンドローム演算が行なわれる。このシン
ドローム演算は、上述の図2に示すテーブルに基づいて
行なわれる。
【0057】このとき、データx0 ' 、x1 ' 、x2 '
、... 、x15' は、4ラインのI/OバスIO0〜I
O3を介して、ECC演算回路101に転送される。
【0058】先ず、最初のクロックで、カラム信号Y0
0がハイレベルとなり、データx0' 、x1 ' 、x2 '
、x3 ' がECC演算回路101に送られる。次のク
ロックで、カラム信号Y01がハイレベルとなり、デー
タx4 ' 、x5 ' 、x6 ' 、x7 ' がECC演算回路1
01に送られる。次のクロックで、カラム信号Y02が
ハイレベルとなり、データx8 ' 、x9 ' 、x10' 、x
11' がECC演算回路101に送られる。次のクロック
で、カラム信号Y03がハイレベルとなり、データ
12' 、x13' 、x14' 、x15' がECC演算回路10
1に送られる。したがって、ECC演算回路101でシ
ンドローム演算を行なうためには、少なくとも、4クロ
ック必要になる。これは、1ページのデータをシリアル
転送するのと同じである。
【0059】図4は、ECC演算回路101の詳細を示
すものである。上述のように、ラッチ回路L0、L1、
L2、... 、L15の出力は、I/OバスラインIO0
〜IO3に送られる。また、ラッチ回路L16〜L20
の出力は、カウンタ11〜15に供給される。
【0060】ECC演算回路101は、カラム信号Y0
0の出力によりI/OバスIO0の出力をゲートするA
NDゲートG8と、I/OバスIO1の出力とI/Oバ
スIO3の出力とのモジュロ2の加算を行なうEX−O
RゲートG1と、カラム信号Y00が「H」のときにE
X−ORゲートG1の出力とI/OバスIO0の出力と
のモジュロ2の加算を行なうEX−ORゲートG2と、
I/OバスIO2の出力とI/OバスIO3の出力との
モジュロ2の加算を行なうEX−ORゲートG3と、カ
ラム信号Y00が「H」のときにEX−ORゲートG3
の出力とI/OバスIO0の出力とのモジュロ2の加算
を行なうEX−ORゲートG4と、I/OバスIO0の
出力とI/OバスIO1の出力とのモジュロ2の加算を
行なうEX−ORゲートG5と、EX−ORゲートG3
の出力とEX−ORゲートG5の出力とのモジュロ2の
加算を行なうEX−ORゲートG6と、カラム信号Y0
0が「H」のときにEX−ORゲートG6の出力とI/
OバスIO0の出力とのモジュロ2の加算を行なうEX
−ORゲートG7とを有している。
【0061】EX−ORゲートG2の出力は、データ信
号SHL0として出力される。このデータ信号SHL0
は、カラム信号Y00が「H」のときには、 SHL0=IO0+IO1+IO3 となり、カラム信号Y00が「L」のときには、 SHL0=IO1+IO3 (但し、加算はモジュロ2)となる。
【0062】EX−ORゲートG4の出力は、データ信
号SHL1として出力される。このデータ信号SHL1
は、カラム信号Y00が「H」のときには、 SHL1=IO0+IO2+IO3 となり、カラム信号Y00が「L」のときには、 SHL1=IO2+IO3 (但し、加算はモジュロ2)となる。
【0063】ANDゲートG8の出力は、EX−ORゲ
ートG9の一方の入力端に供給されるとともに、EX−
ORゲートG10の一方の入力端に供給される。EX−
ORゲートG7の出力がデータ信号SHL4としてカウ
ンタ15に供給されると共に、ANDゲートG11及び
ANDゲートG12の一方の入力端に供給される。AN
DゲートG11の他方の入力端にはアドレスA0Nが供
給され、ANDゲートG12の他方の入力端にはアドレ
スA1Nが供給される。ANDゲートG11の出力がE
X−ORゲートG9の他方の入力端に供給される。AN
DゲートG12の出力がEX−ORゲートG10の他方
の入力端に供給される。
【0064】EX−ORゲートG9の出力は、データ信
号SHL2として出力される。このデータ信号SLH2
は、カラム信号Y00が「H」のときには、 SHL2=IO0 となり、アドレスがA0が「H」のときには、 SHL2=IO0+IO1+IO2+IO3 となり、カラム信号Y02が「L」のときには、 SHL2=L (但し、加算はモジュロ2)となる。
【0065】EX−ORゲートG10の出力は、データ
信号SLH3として出力される。このデータ信号SLH
3は、カラム信号Y00が「H」のときには、 SHL3=IO0 となり、アドレスA1が「H」のときには、 SHL3=IO0+IO1+IO2+IO3 となり、カラム信号Y01が「L」のときには、 SHL3=0 (但し、加算はモジュロ2)となる。
【0066】EX−ORゲートG7の出力は、データ信
号SLH4として出力される。このデータ信号SHL4
は、カラム信号Y00が「H」のときには、 SHL4=IO1+IO2+IO3 となり、カラム信号Y00が「L」のときには、 SHL4=IO0+IO1+IO2+IO3 (但し、加算はモジュロ2)となる。
【0067】以上のように、データ信号SHL0〜SH
4からは、クロックCK1、CK2、CK3、CK4毎
に、I/OバスIO0〜IO3からのデータの演算出力
が得られれる。この演算出力は、以下のようになる。
【0068】(1) データ信号SHL0は、 クロックCK1:x0 ' +x1 ' +x3 ' クロックCK2:x5 ' +x7 ' クロックCK3:x9 ' +x11' クロックCK4:x13' +x15’ となる。
【0069】(2) データ信号SHL1は、 クロックCK1:x0 ' +x2 ' +x3 ' クロックCK2:x6 ' +x7 ' クロックCK3:x10' +x11' クロックCK4:x14' +x15' となる。
【0070】(3) データ信号SHL2は、 クロックCK1:x0 ' クロックCK2:x4 ' +x5 ' +x6 ' +x7 ' クロックCK3:「L」 クロックCK4:x12' +x13' +x14' +x15' となる。
【0071】データ信号SHL3は、 クロックCK1:x0 ' クロックCK2:「L」 クロックCK3:x8 ' +x9 ' +x10' +x11' クロックCK4:x12' +x13' +x14' +x15' となる。
【0072】データ信号SHL4は、 クロックCK1:x1 ' +x2 ' +x3 ' クロックCK2:x4 ' +x5 ' +x6 ' +x7 ' クロックCK3:x8 ' +x9 ' +x10' +x11' クロックCK4:x12' +x13' +x14' +x15' となる。
【0073】図4において、データ信号SHL0〜SH
L4がカウンタ11〜15に供給される。カウンタ11
〜15の出力がDフリップフロップ21〜25に供給さ
れる。Dフリップフロップ21〜25の出力が出力端子
31〜35から出力される。
【0074】符号化時には、カウンタ11〜15で、4
クロック分のデータ信号SHL0〜SHL4をモジュロ
2で加算することで、ECCコードC0 〜C4 が求めら
れる。このECCコードは、Dフリップフロップ21〜
25に取り込まれる。そして、ゲートトランジスタ群G
21を介してラッチL16〜L20にラッチされる。
【0075】復号化時には、ラッチL16〜L20の出
力のECCコードC0 ' 〜C4 ' をカウンタ11〜15
にロードしておき、4クロック分のデータ信号SHL0
〜SHL4をモジュロ2で加算することで、シンドロー
ムS0 〜S4 が演算され、出力端子31〜35から出力
される。
【0076】図5は、復号時の処理を示すタイミング図
である。図5において、最初のクロックCK1のときに
は、カラム信号Y00がハイレベルで、他のカラム信号
はローレベルである。また、アドレスA0及びA1はロ
ーレベルである。このとき、I/OバスIO0〜IO3
からは、ラッチ回路L0〜L3にラッチされているデー
タx0 ' 〜x3 ' が出力される。
【0077】データ信号SHL0は(x0 ' +x1 ' +
3 ' )となり、データ信号SHL1は(x0 ' +
2 ' +x3 ' )となる。データ信号SHL2はx0 '
となり、データ信号SHL3はx0 ' となり、データ信
号SHL4は(x1 ' +x2 ' +x3 ' )となる。
【0078】次のクロックCK2のときには、カラム信
号Y01がハイレベルで、他のカラム信号はローレベル
である。また、アドレスA0がハイレベルでアドレスA
1がローレベルである。
【0079】このとき、I/OバスIO0〜IO3から
は、ラッチ回路L4〜L7にラッチされているデータx
4 ' 〜x7'が出力される。
【0080】データ信号SHL0は(x5 ' +x7 ' )
となり、データ信号SHL1は(x6 ' +x7 ' )とな
り、データ信号SHL2は(x4 ' +x5 ' +x6 ' +
7' )となり、データ信号SHL3は「0」となり、
データ信号SHL4は(x4' +x5 ' +x6 ' +x7 '
)となる。
【0081】次のクロックCK3のときには、カラム信
号Y02がハイレベルで、他のカラム信号はローレベル
である。また、アドレスA0がローレベルでアドレスA
1がハイレベルである。
【0082】このとき、I/OバスIO0〜IO3から
は、ラッチ回路L8〜L11にラッチされているデータ
8 ' 〜x11' が出力される。
【0083】データ信号SHL0は(x9 ' +x11' )
となり、データ信号SHL1は(x10' +x11' )とな
り、データ信号SHL2は「L」となり、データ信号S
HL3は(x8 ' +x9 ' +x10' +x11' )となり、
データ信号SHL4は(x8' +x9 ' +x10' +x11'
)となる。
【0084】次のクロックCK4のときには、カラム信
号Y03がハイレベルで、他のカラム信号はローレベル
である。また、アドレスA0及びアドレスA1がハイレ
ベルである。
【0085】このとき、I/OバスIO0〜IO3から
は、ラッチ回路L12〜L15にラッチされているデー
タx12' 〜x15' が出力される。
【0086】データ信号SHL0は(x13' +x15' )
となり、データ信号SHL1は(x 14' +x15' )とな
り、データ信号SHL2は(x12' +x13' +x14' +
15' )となり、データ信号SHL3は(x12' +
13' +x14' +x15' )となり、データ信号SHL4
は(x12' +x13' +x14' +x15' )となる。
【0087】カウンタ11〜15の出力R0〜R4は、
最初に、制御信号XLDがローレベルになって、ラッチ
回路L16〜L20に保持されているECCコードの読
み出しデータC0 ' 〜C4 ' をロードしている。それか
ら、クロックCK1、CK2、CK3、CK4の立ち上
がりで、データ信号SHL0〜SHL4が加算されてい
く。その結果、クロックCK4の立ち上がりで、シンド
ロームが求められる。求められたシンドロームは、制御
信号HOLDで、Dフリップフロップ21〜25に保持
される。
【0088】これに対して、この発明の実施の形態は、
上述のハミングコードを用いたフラッシュ型のメモリと
同様のECC演算を行なうもので、ECCの演算単位の
上位側と下位側とで並列的に演算を行うことで、ECC
の処理時間を半分にしたものである。
【0089】図6はこの発明の実施の形態を示すもので
ある。図6において、メモリセルアレイには、複数のN
AND型のメモリストリングが配列される。NAND型
のメモリストリングは、縦続接続された例えば16個の
メモリセルトランジスタMT0、MT1、... 、MT1
5と、縦続接続されたメモリセルトランジスタのドレイ
ン側に接続された選択ゲートトランジスタSG1と、縦
続接続されたメモリセルトランジスタのソース側に接続
された選択ゲートトランジスタSG2とから構成され
る。メモリセルトランジスタMT0、MT1、... 、M
T15は、フローティングゲートを有するトランジスタ
である。
【0090】選択ゲートトランジスタSG1のドレイン
は、ビット線BL0、BL1、...BL20に接続され
る。選択ゲートトランジスタSG2のソースは、ソース
線Vsに接続される。
【0091】行方向に並ぶメモリセルトランジスタMT
0、MT1、... 、MT15のゲートは、共通のワード
線WL0、WL1、... 、WL15に接続される。ま
た、選択ゲートトランジスタSG1のゲートは、制御信
号線DSGに接続され、選択ゲートトランジスタSG2
のゲートは、制御信号線SSGに接続される。これらの
ワード線WL0〜WL15及び選択ゲートの制御信号線
DSG及びSSGは、図示していないロウデコーダに接
続される。
【0092】ビット線BL0、BL1、... 、BL20
に対して、ラッチ回路L0、L1、... 、L20が設け
られる。
【0093】これらのラッチ回路のうち、前半のラッチ
回路L0〜L7は、ゲート用のトランジスタN0〜N7
を介して、左側のI/OバスIO0L〜IO3Lに接続
される。後半のラッチ回路L8〜L15は、ゲート用の
トランジスタN8〜N15を介して、右側のI/Oバス
IO0H〜IO3Hに接続される。トランジスタN0、
N1、... 、N15のゲートには、カラム信号Y00、
Y01、Y02、Y03が接続される。
【0094】カラム信号は4本あり、カラム信号Y00
には、トランジスタN0〜N3のゲートが接続され、カ
ラム信号Y01には、トランジスタN4〜N7のゲート
が接続され、カラム信号Y02には、トランジスタN8
〜N11のゲートが接続され、カラム信号Y03には、
トランジスタN12〜N15のゲートが接続される。
【0095】I/Oバスは、スイッチ回路SW1によ
り、左右に分離可能とされた4本のラインIO0L〜I
O3L及びIO0H〜IO3Hからなる。
【0096】I/OバスIO0Lには、ゲートトランジ
スタN0、N4が接続され、I/OバスIO1Lには、
ゲートトランジスタN1、N5が接続され、I/Oバス
IO2Lには、ゲートトランジスタN2、N6が接続さ
れ、I/OバスIO3Lには、ゲートトランジスタN
3、N7が接続される。
【0097】I/OバスIO0Hには、ゲートトランジ
スタN8、N12が接続され、I/OバスIO1Hに
は、ゲートトランジスタN9、N13が接続され、I/
OバスIO2Hには、ゲートトランジスタN10、N1
4が接続され、I/OバスIO3Hには、ゲートトラン
ジスタN11、N15が接続される。
【0098】スイッチ回路SW1は、ECC演算のとき
には、左右のラインIO0L〜IO3LとラインIO0
H〜IO3Hとを分離し、データのシリアル転送のとき
には、左右のラインIO0L〜IO3LとラインIO0
H〜IO3Hとを接続するように設定される。
【0099】左側のI/OバスIO0L〜I/OバスI
O3Lには、下位側ECC演算回路201が接続され
る。右側のI/OバスIO0H〜I/OバスIO3Hに
は、下位側ECC演算回路202が接続される。
【0100】ファーストアクセスでは、デコーダによ
り、ワード線WL0〜WL15のうち選択されたワード
線に読み出し電圧が与えられ、他のワード線及び選択信
号線DSG及びSSGにハイレベルが与えられ、各ビッ
ト線BL0、BL1、... がプリチャージされる。これ
により、各ビット線BL0、BL1、... に各メモリセ
ルの情報が現れる。このメモリセルの情報は、ラッチ回
路L0、L1、... 、L20に取り込まれる。
【0101】ラッチ回路L0、L1、L2、... 、L1
5には、データx0 ' 、x1 ' 、x2'、... x15' が保
持され、ラッチ回路L16、L17、L18、L19、
L20には、ECCコードC0 ' 、C1 ' 、C2 ' 、C
3 ' 、C4 ' が保持される。
【0102】この例では、以下のようにして、シンドロ
ーム演算が行われる。
【0103】先ず、最初のクロックで、カラム信号Y0
0及びY02がハイレベルとなり、データx0 ' 、
1 ' 、x2 ' 、x3 ' 及びデータx8 ' 、x9 ' 、x
10' 、x11' が下位側演算回路201及び上位側演算回
路202に送られる。次のクロックで、カラム信号Y0
1及びY03がハイレベルとなり、データx4 ' 、
5 '、x6 ' 、x7 ' 及びデータx12' 、x13' 、x
14' 、x15' が下位側演算回路201及び上位側演算回
路202に送られる。
【0104】下位側ECC演算回路201では、ラッチ
回路L0、L1、L2、... 、L7から送られてきたデ
ータx0 ' 、x1 ' 、x2 ' 、... 、x7 ' により、下
位側のECC演算が行われる。上位側ECC演算回路2
02では、ラッチ回路L8、L9、L10、... 、L1
5から送られてきたデータx8 ' 、x9 ' 、x10'
、... 、x15' により、上位側のECC演算が行われ
る。下位側のECC演算と上位側のECC演算とは、並
行して行われる。それから、下位側ECC演算回路20
1の出力と、上位側ECC演算回路202の出力とが合
成されて、ECC演算回路204に供給される。また、
ECC演算回路204には、ラッチ回路L16〜L20
から送られてきた再生ECCデータC0 ' 、C1 ' 、C
2 ' 、C3 ' 、C4 ' が供給される。
【0105】ECC演算回路204で、下位側のECC
演算回路201の出力と、上位側のECC演算回路20
2の出力と、ラッチ回路L16〜L20からのECCデ
ータC0 ' 、C1 ' 、C2 ' 、C3 ' 、C4 ' により、
上述の図2に示すテーブルに基づいて、シンドローム演
算が行われる。
【0106】このように、シンドローム演算は、下位側
と上位側とで、並列処理が行われるため、2クロックで
終了する。
【0107】なお、このとき、スイッチSW1は閉じら
れており、左右のIOバスIO0L〜IO3Lと、IO
0H〜IO3Hとは切り離されている。
【0108】図7は、下位側ECC演算回路201、上
位側ECC演算回路202、ECC演算回路204の詳
細を示すものである。上述のように、ラッチ回路L0、
L1、L2、... 、L15の出力は、I/Oバスライン
IO0〜IO3に送られる。また、ラッチ回路L16〜
L20の出力は、カウンタ11〜15に供給される。下
位側ECC演算回路201は、カラム信号Y00の出力
によりI/OバスIO0Lの出力をゲートするANDゲ
ートG28と、I/OバスIO1Lの出力とI/Oバス
IO3Lの出力とのモジュロ2の加算を行なうEX−O
RゲートG21と、カラム信号Y00が「H」のときに
EX−ORゲートG21の出力とI/OバスIO0Lの
出力とのモジュロ2の加算を行なうEX−ORゲートG
22と、I/OバスIO2Lの出力とI/OバスIO3
Lの出力とのモジュロ2の加算を行なうEX−ORゲー
トG23と、カラム信号Y00が「H」のときにEX−
ORゲートG23の出力とI/OバスIO0Lの出力と
のモジュロ2の加算を行なうEX−ORゲートG24
と、I/OバスIO0Lの出力とI/OバスIO1Lの
出力とのモジュロ2の加算を行なうEX−ORゲートG
25と、EX−ORゲートG23の出力とEX−ORゲ
ートG25の出力とのモジュロ2の加算を行なうEX−
ORゲートG26と、カラム信号Y00が「H」のとき
にEX−ORゲートG26の出力とI/OバスIO0の
出力とのモジュロ2の加算を行なうEX−ORゲートG
27とを有している。
【0109】また、下位側ECC演算回路201は、ア
ドレスA1Bにより、EX−ORゲートG22、EX−
ORゲートG24、EX−ORゲートG27の出力をゲ
ートするANDゲートG31、G32、G33を有して
いる。
【0110】更に、下位側ECC演算回路201は、ア
ドレスA0Nにより、ANDゲートG33の出力をゲー
トするANDゲートG34と、ANDゲートG28の出
力とANDゲートG34の出力とのモジュロ2の加算を
行うEX−ORゲートG35とを有している。
【0111】上位側ECC演算回路202は、I/Oバ
スIO1Hの出力とI/OバスIO3Hの出力とのモジ
ュロ2の加算を行なうEX−ORゲートG41と、I/
OバスIO2Hの出力とI/OバスIO3Hの出力との
モジュロ2の加算を行なうEX−ORゲートG42と、
I/OバスIO0Hの出力とI/OバスIO1Hの出力
とのモジュロ2の加算を行なうEX−ORゲートG43
と、EX−ORゲートG42の出力とEX−ORゲート
G43の出力とのモジュロ2の加算を行なうEX−OR
ゲートG44とを有している。
【0112】また、上位側ECC演算回路202は、ア
ドレスA1Nにより、EX−ORゲートG41、EX−
ORゲートG42、EX−ORゲートG44の出力をゲ
ートするANDゲートG51、G52、G53を有して
いる。
【0113】また、上位側ECC演算回路202は、ア
ドレスA1Nにより、ANDゲートG53の出力をゲー
トするANDゲートG54と、アドレスA0Nにより、
ANDゲートG53の出力をゲートするANDゲートG
55とを有している。
【0114】そして、下位側ECC演算回路201の出
力と上位側ECC演算回路202の出力とを合成するた
めのEX−ORゲートG61、G62、G63、G6
4、G65が設けられる。
【0115】ANDゲートG31の出力は、データ信号
SL0として出力される。このデータ信号SHL0は、
カラム信号Y00が「H」のときには、 SL0=IO0+IO1+IO3 となり、カラム信号Y01が「H」のときには、 SL0=IO1+IO3 となり、アドレスA1Bが「L」のときには、 SL0=「L」 (但し、加算はモジュロ2)となる。
【0116】ANDゲートG32の出力は、データ信号
SL1として、出力される。このデータ信号SL1は、
カラム信号Y00が「H」のときには、 SL1=IO0+IO2+IO3 となり、カラム信号Y01が「H」のときには、 SL1=IO2+IO3 となり、アドレスA1Bが「L」のときには、 SL1=「L」 (但し、加算はモジュロ2)となる。
【0117】EX−ORゲートG35の出力は、データ
信号SL2として出力される。このデータ信号SL2
は、カラム信号Y00が「H」のときには、 SL2=IO0 となり、カラム信号Y01が「H」のときには、 SL2=IO0+IO1+IO2+IO3 となり、アドレスA1Bが「L」のときには、 SL2=「L」 (但し、加算はモジュロ2)となる。
【0118】ANDゲートG28の出力は、データ信号
SL3として出力される。このデータ信号SL3は、カ
ラム信号Y00が「H」のときには、 SL3=IO0 となり、カラム信号Y00が「L」のときには、 SHL3=「L」 となる。
【0119】ANDゲートG33の出力は、データ信号
SL4として出力される。このデータ信号SL4は、カ
ラム信号Y00が「H」のときには、 SL4=IO1+IO2+IO3 となり、カラム信号Y01が「H」のときには、 SL4=IO0+IO1+IO2+IO3 となり、アドレスA1Bが「L」のときには、 SL4=「L」 (但し、加算はモジュロ2)となる。
【0120】データ信号SL0〜SL4からは、クロッ
クCK1、CK2毎に、I/OバスIO0〜IO3から
のデータの演算出力が得られれる。この演算出力は、以
下のようになる。
【0121】(1) データ信号SL0は、 クロックCK1:x0 ' +x1 ' +x3 ' クロックCK2:x5 ' +x7 ' (但し、加算はモジュロ2)となる。
【0122】(2) データ信号SL1は、 クロックCK1:x0 ' +x2 ' +x3 ' クロックCK2:x6 ' +x7 ' (但し、加算はモジュロ2)となる。
【0123】(3) データ信号SL2は、 クロックCK1:x0 'クロック CK2:x4 ' +x5 ' +x6 ' +x7 ' (但し、加算はモジュロ2)となる。
【0124】データ信号SL3は、 クロックCK1:x0 ' クロックCK2:「L」 となる。
【0125】データ信号SL4は、 クロックCK1:x1 ' +x2 ' +x3 ' クロックCK2:x4 ' +x5 ' +x6 ' +x7 ' (但し、加算はモジュロ2)となる。
【0126】また、ANDゲートG51の出力は、デー
タ信号SH0として出力される。このデータ信号SL0
は、アドレスA1Nが「L」のときには、 SH0=「L」 となり、アドレスA1Nが「H」のときには、 SH0=IO1+IO3 (但し、加算はモジュロ2)となる。
【0127】ANDゲートG52の出力は、データ信号
SH1として出力される。このデータ信号SH1は、ア
ドレスA1Nが「L」のときには、 SH1=「L」 となり、アドレスA1Nが「H」のときには、 SH0=IO2+IO3 (但し、加算はモジュロ2)となる。
【0128】ANDゲートG55の出力は、データ信号
SH2として出力される。このデータ信号SH2は、カ
ラム信号Y03が「L」のときには、 SH2=「L」 となり、カラム信号Y03が「H」のときには、 SH2=IO0+IO1+IO2+IO3 (但し、加算はモジュロ2)となる。
【0129】ANDゲートG54の出力は、データ信号
SH3として出力される。このデータ信号SH3は、ア
ドレスA1Nが「L」のときには、 SH3=「L」 となり、アドレスA1Nが「H」のときには、 SH3=IO0+IO1+IO2+IO3 (但し、加算はモジュロ2)となる。
【0130】ANDゲートG53の出力は、データ信号
SH4として出力される。このデータ信号SH4は、ア
ドレスA1Nが「L」のときには、 SH4=「L」 となり、アドレスA1Nが「H」のときには、 SH4=IO0+IO1+IO2+IO3 (但し、加算はモジュロ2)となる。
【0131】データ信号SH0〜SH4からは、クロッ
クCK1、CK2毎に、I/OバスIO0〜IO3から
のデータの演算出力が得られれる。この演算出力は、以
下のようになる。
【0132】(1) データ信号SH0は、 クロックCK1:x9 ' +x11' クロックCK2:x13' +x15' (但し、加算はモジュロ2)となる。
【0133】(2) データ信号SH1は、 クロックCK1:x10' +x11' クロックCK2:x14' +x15' (但し、加算はモジュロ2)となる。
【0134】(3) データ信号SH2は、 クロックCK1:「L」 クロックCK2:x12' +x13' +x14' +x15' (但し、加算はモジュロ2)となる。
【0135】データ信号SH3は、 クロックCK1:x8 ' +x9 ' +x10' +x11' クロックCK2:x12' +x13' +x14' +x15' (但し、加算はモジュロ2)となる。
【0136】データ信号SH4は、 クロックCK1:x8 ' +x9 ' +x10' +x11' クロックCK2:x12' +x13' +x14' +x15' (但し、加算はモジュロ2)となる。
【0137】図7において、データ信号SL0とデータ
信号SH1はEX−ORゲートG61に供給され、モジ
ュロ2で加算される。EX−ORゲートG61の出力か
らデータ信号SHL0が出力される。データ信号SL1
とデータ信号SH1はEX−ORゲートG62に供給さ
れ、モジュロ2で加算される。EX−ORゲートG62
の出力からデータ信号SHL1が出力される。データ信
号SL2とデータ信号SH2はEX−ORゲートG63
に供給され、モジュロ2で加算される。EX−ORゲー
トG63の出力からデータ信号SHL2が出力される。
データ信号SL3とデータ信号SH3はEX−ORゲー
トG64に供給され、モジュロ2で加算される。EX−
ORゲートG64の出力からデータ信号SHL3が出力
される。データ信号SL4とデータ信号SH4はEX−
ORゲートG65に供給され、モジュロ2で加算され
る。EX−ORゲートG65の出力からデータ信号SH
L4が出力される。
【0138】データ信号SHL0、SHL1、SHL
2、SHL3、SHL4は、カウンタ11〜15に供給
される。カウンタ11〜15の出力がDフリップフロッ
プ21〜25に供給される。Dフリップフロップ21〜
25の出力が出力端子31〜35から出力される。
【0139】符号化時には、制御信号ECCLDが
「L」レベルになって、IO0LとIO0H、IO1L
とIO1H、IO2LとIO2H、IO3LとIO3H
は接続される。これにより、従来構成と同様に、カウン
タ11〜15で、4クロック分のデータ信号SHL0〜
SHL4をモジュロ2で加算することで、ECCコード
0 〜C4 が求められる。このECCコードは、Dフリ
ップフロップ21〜25に取り込まれる。そして、ゲー
トトランジスタ群G21を介してラッチL16〜L20
にラッチされる。
【0140】復号化時には、ラッチL16〜L20の出
力のECCコードC0 ' 〜C4 ' をカウンタ11〜15
にプリセットしておく。そして、制御信号ECCLDが
「H」レベルとなっているので、IO0LとIO0H、
IO2LとIO2H、IO3LとIO3Hは切り離され
ていて、下位側と上位側とで並行してシンドローム演算
が行われる。これにより、2クロック分のデータ信号S
HL0〜SHL4をモジュロ2で加算することで、シン
ドロームS0 〜S4 が演算され、出力端子31〜35か
ら出力される。
【0141】図8は、復号時の処理を示すタイミング図
である。図8において、制御信号XLDがローレベルに
なると、ラッチ回路L16、L17、L18、L19、
L20にラッチされているデータがエラー訂正コードC
0 ' 、C1 ' 、C2 ' 、C3' 、C4 ' がロードされ
る。そして、最初のクロックCK1が入力される。
【0142】最初のクロックCK1のサイクルでは、カ
ラム信号Y00及びY02がハイレベルで、カラム信号
Y01及びY03はローレベルである。また、アドレス
A0がローレベル、アドレスA1は全選択である。この
とき、I/OバスIO0L〜IO3Lからは、ラッチ回
路L0〜L3にラッチされているデータx0 ' 〜x3'
が出力される。また、I/OバスIO0H〜IO3Hか
らは、ラッチ回路L8〜L11にラッチされているデー
タx8 ' 〜x11' が出力される。
【0143】このとき、データ信号SL0は(x0 ' +
1 ' +x3 ' )となり、データ信号SH0は(x9 '
+x11' )となることから、データ信号SHL0は、 (x0 ' +x1 ' +x3 ' )+(x9 ' +x11' ) となる。
【0144】データ信号SL1は(x9 ' +x11' )と
なり、データ信号SH1は(x10'+x11' )となるこ
とから、データ信号SHL1は、 (x0 ' +x2 ' +x3 ' )+(x10' +x11' ) となる。
【0145】データ信号SL2はx0 ' となり、データ
信号SH1は「L」となることから、データ信号SHL
2は、x0 'となる。
【0146】データ信号SL3は、x0 ' となり、デー
タ信号SH3は(x8 ' +x9 ' +x10' +x11' )と
なることから、データ信号SHL3は、 x0 ' +(x8 ' +x9 ' +x10' +x11' ) となる。
【0147】データ信号SL4は、(x1 ' +x2 ' +
3 ' )となり、データ信号SH4は(x8 ' +x9 '
+x10' +x11' )となることから、データ信号SHL
4は、 (x1 ' +x2 ' +x3 ' )+(x8 ' +x9 ' +
10' +x11' ) となる。
【0148】そして、クロックCLK1の立ち上がり
で、カウンタ11〜15の出力R0〜R4は、それまで
カウンタ11〜15にロードされているエラー訂正符号
0 '〜C4 ' と、これらのデータ信号SHL0〜SH
L4をモジュロ2の演算をした値となる。
【0149】次のクロックCK2のサイクルでは、カラ
ム信号Y00及びY02がローレベルで、カラム信号Y
01及びY03はハイレベルである。また、アドレスA
0がハイレベル、アドレスA1は全選択である。このと
き、I/OバスIO0L〜IO3Lからは、ラッチ回路
L4〜L7にラッチされているデータx4 ' 〜x7 'が
出力される。また、I/OバスIO0H〜IO3Hから
は、ラッチ回路L12〜L15にラッチされているデー
タx12' 〜x15' が出力される。
【0150】このとき、データ信号SL0は(x5 ' +
7 ' )となり、データ信号SH0は(x13' +x15'
)となることから、データ信号SHL0は、 (x5 ' +x7 ' )+(x13' +x15' ) となる。
【0151】データ信号SL1は(x6 ' +x7 ' )と
なり、データ信号SH1は(x14'+x15' )となるこ
とから、データ信号SHL1は、 (x6 ' +x7 ' )+(x14' +x15' ) となる。
【0152】データ信号SL2は(x4 ' +x5 ' +x
6 ' +x7 ' )となり、データ信号SH2は(x12' +
13' +x14' +x15' )となることから、データ信号
SHL2は、 (x4 ' +x5 ' +x6 ' +x7 ' )+(x12' +
13' +x14' +x15' ) となる。
【0153】データ信号SL3は、「L」となり、デー
タ信号SH3は(x12' +x13' +x14' +x15' )と
なることから、データ信号SHL3は、 (x12' +x13' +x14' +x15' ) となる。
【0154】データ信号SL4は、(x4 ' +x5 ' +
6 ' +x7 ' )となり、データ信号SH4は(x12'
+x13' +x14' +x15' )となることから、データ信
号SHL4は、 (x4 ' +x5 ' +x6 ' +x7 ' )+(x12' +
13' +x14' +x15' ) となる。
【0155】そして、クロックCLK2の立ち上がり
で、カウンタ1〜15の出力R0〜R4は、それまでカ
ウンタ11〜15の値(エラー訂正符号C0 ' 〜C4 '
とクロックCLK1でのデータ信号SHL0〜SHL4
をモジュロ2演算した値)に、今回のデータ信号SHL
0〜SHL4がモジュロ2演算される。これにより、シ
ンドロームS0 〜S4 が求められる。
【0156】このように、この実施の形態では、上位側
のECC演算と下位側のECC演算とが並行して行われ
るため、従来の1/2の時間でECC演算を実行するこ
とができる。
【0157】ECC演算が従来の1/2の時間で実行で
きることから、1ページを2つの領域に分割し、一方で
シリアル演算を行っている間に、他方でファーストアク
セスを行うようなギャップレス読み出しが可能である。
【0158】つまり、1バイトの転送時間を50n秒と
し、1ページが512バイトであるとすると、シリアル
転送の時間は、 50n秒×512=25.6μ秒 であり、ギャップレス読み出しをする場合には、1ペー
ジの半分のデータの転送時間は、12.8μ秒となる。
【0159】これに対して、上述のように、この発明で
は、ECCの演算時間を転送時間の1/2にすることが
できるため、ECC演算はその半分の6.4μ秒で終了
できる。
【0160】このため、図9に示すように、1ページを
2つの領域に分割し、一方でシリアル演算を行っている
間に、他方でファーストアクセスとECC演算とを行っ
てギャップレス読み出しが可能である。
【0161】図9において、メモリセルアレイ301に
対して、1ページの前半の領域をラッチするページバッ
ファ302Aと、1ページの後半の領域をラッチするペ
ージバッファ302Bが設けられる。そして、ページバ
ッファ302Aに対するECC演算回路303Aと、ペ
ージバッファ302Bに対するECC演算回路303B
とが設けられる。ECC演算回路303A及び303B
は、上述したように、上位側の演算と下位側の演算とを
並列的に行うことで、シリアル転送の1/2の時間でE
CC演算を行える構成のものである。
【0162】1ページを512バイトとすると、1ペー
ジの半分の256バイトのデータの転送時間は12.8
μ秒である。上述のように、この発明では、ECCの演
算時間を転送時間の1/2にすることができるため、E
CC演算はその半分の6.4μ秒で終了できる。このた
め、一方の領域でシリアル転送が行われている12.8
μ秒の間に、他方の領域では、ファーストアクセスとE
CC演算とが行える。これにより、ECC演算を行ない
ながら、ギャップレス読み出しが可能となる。
【0163】なお、この発明の実施の形態では、上述の
ように、ECC演算を上位側と下位側とに分けて、上位
側のECC演算と下位側のECC演算とを並行して行な
うようにしている。このことから、実際のメモリセル4
01上には、図10に示すように、上位側のデータをラ
ッチするラッチ回路402と、下位側のデータをラッチ
するラッチ回路403とを、メモリセル401の両側に
夫々設けるように配置し、上位側のラッチ回路402及
び下位側のラッチ回路403に近接して、上位側のEC
Cの演算回路404と、下位側のECCの演算回路40
5とを設けるような配置とすると、効率的に、素子が配
列できる。
【0164】なお、上述の実施の形態では、16ビット
のデータに対して5ビットのハミング符号のECCコー
ドを付加するようにしているが、符号の構成は、これに
限定されるものではない。
【0165】また、この発明では、ECC方式としてハ
ミング符号を用いているが、非巡回形の符号であれは、
他の符号を用いることもできる。例えば、リード・ソロ
モン符号を用いるようにしても良い。
【0166】
【発明の効果】この発明では、エラー訂正処理単位が上
位側と下位側とに分けられ、ECC方式として、ハミン
グ符号が用いられる。非巡回型の符号の場合には、EC
C演算を、上位側と下位側とに分けて、行うことができ
る。この発明によれば、上位側のECCの演算処理と、
下位側のECCの演算処理とが並行して行われるため、
ECC演算の時間がシリアル転送の1/2で終了でき
る。
【0167】このように、ECC演算がシリアル転送の
1/2で終了できることから、1ページを2つの領域に
分け、一方でシリアル転送を行っている間に、ファース
トアクセスとECC演算とを行って、ギャップレス読み
出しをすることが可能である。
【図面の簡単な説明】
【図1】ハミング符号の符号化演算テーブルを示す略線
図である。
【図2】ハミング符号のシンドローム演算テーブルを示
す略線図である。
【図3】フラッシュメモリのECC方式としてハミング
符号を用いた場合の構成の一例のブロック図である。
【図4】フラッシュメモリのECC方式としてハミング
符号を用いた場合のECC演算回路の一例のブロック図
である。
【図5】フラッシュメモリのECC方式としてハミング
符号を用いた場合のECC演算回路の説明に用いるタイ
ミング図である。
【図6】この発明の一実施の形態のブロック図である。
【図7】この発明の一実施の形態におけるECC演算回
路の一例のブロック図である。
【図8】この発明の一実施の形態におけるECC演算回
路の説明に用いるタイミング図である。
【図9】この発明の一実施の形態においてギャップレス
読み出しを行う場合の説明に用いる略線図である。
【図10】この発明の一実施の形態においてラッチ回路
の配列の説明に用いる略線図である。
【図11】従来のフラッシュメモリでの読み出しの流れ
の説明に用いる略線図である。
【図12】ギャップレス読み出しの説明に用いる略線図
である。
【図13】ギャップレス読み出しの説明に用いる略線図
である。
【図14】ギャップレス読み出しの説明に用いる略線図
である。
【図15】ギャップレス読み出しの説明に用いる略線図
である。
【図16】ギャップレス読み出しの説明に用いる略線図
である。
【図17】従来のフラッシュメモリでの読み出しの流れ
の説明に用いる略線図である。
【図18】従来のフラッシュメモリでの読み出しの流れ
の説明に用いる略線図である。
【図19】従来のフラッシュメモリでの読み出しの流れ
の説明に用いる略線図である。
【図20】データ数と符号化率との関係を示す略線図で
ある。
【符号の説明】
201・・・下位側ECC演算回路、202・・・上位
側ECC演算回路、204・・・ECC演算回路

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 書き込み時に、所定数の単位のデータに
    対してエラー訂正符号を生成付加してメモリセルに書き
    込み、 読み出し時に、上記メモリセルから上記所定数の単位の
    データを上位側と下位側とに分割して読み出し、 上記上位側から読み出されたデータに対するシンドロー
    ム演算と、上記下位側から読み出されたデータに対する
    シンドローム演算とを並行して行い、 上記下位側から読み出されたデータに対するシンドロー
    ム演算の結果と、上記上位側から読み出されたデータに
    対するシンドローム演算の結果とを合成して、上記所定
    数の単位のデータに対するシンドローム演算の結果を得
    るようにした半導体記憶装置のエラー訂正符号化方法。
  2. 【請求項2】 上記エラー訂正符号として、非巡回形の
    符号を用いるようにした請求項1に記載の半導体記憶装
    置のエラー訂正符号化方法。
  3. 【請求項3】 上記エラー訂正符号として、ハミング符
    号を用いるようにした請求項1に記載の半導体記憶装置
    のエラー訂正符号化方法。
  4. 【請求項4】 上記半導体記憶装置は、同一行にあるメ
    モリセルが共通のワード線に接続され、ページ単位で書
    き込み/読み出しが行われるものである請求項1に記載
    の半導体記憶装置のエラー訂正符号化方法。
  5. 【請求項5】 1ページを2つの領域に分割し、一方の
    領域でシリアル転送を行っている間に、他方の領域でメ
    モリセルの情報を読み出すことで、複数のページのデー
    タを連続的に読み出すようなギャップレス読み出しを行
    う半導体記憶装置の読み出し方法において、 書き込み時に、所定数の単位のデータに対してエラー訂
    正符号を生成付加してメモリセルに書き込んでおき、 上記他方の領域でメモリセルの情報を読み出す際に、 上記メモリセルから上記所定数の単位のデータを上位側
    と下位側とに分割して読み出し、 上記上位側から読み出されたデータに対するシンドロー
    ム演算と、上記下位側から読み出されたデータに対する
    シンドローム演算とを並行して行い、 上記下位側から読み出されたデータに対するシンドロー
    ム演算の結果と、上記上位側から読み出されたデータに
    対するシンドローム演算の結果とを合成して、上記所定
    数の単位のデータに対するシンドローム演算の結果を得
    るようにした半導体記憶装置のエラー訂正符号化方法。
  6. 【請求項6】 所定数の単位のデータに対してエラー訂
    正符号を生成付加してメモリセルに書き込んで、エラー
    訂正処理を行うようにした半導体記憶装置において、 上記メモリセルから読み出される上記所定数の単位のデ
    ータを上位側と下位側とに分割する手段と、 上記上位側から読み出されたデータに対するシンドロー
    ム演算を行う手段と、 上記下位側から読み出されたデータに対するシンドロー
    ム演算を行う手段と、 上記下位側から読み出されたデータに対するシンドロー
    ム演算の結果と、上記上位側から読み出されたデータに
    対するシンドローム演算の結果とを合成して、上記所定
    数の単位のデータに対するシンドローム演算の結果を得
    る手段とを備え、上記上位側から読み出されたデータに
    対するシンドローム演算と、上記下位側から読み出され
    たデータに対するシンドローム演算とを並行して行うよ
    うにした半導体記憶装置。
  7. 【請求項7】 上記エラー訂正符号として、非巡回形の
    符号を用いるようにした請求項6に記載の半導体記憶装
    置。
  8. 【請求項8】 上記エラー訂正符号として、ハミング符
    号を用いるようにした請求項6に記載の半導体記憶装
    置。
  9. 【請求項9】 上記半導体記憶装置は、同一行にあるメ
    モリセルが共通のワード線に接続され、ページ単位で書
    き込み/読み出しが行われるものである請求項6に記載
    の半導体記憶装置。
  10. 【請求項10】 1ページを2つの領域に分割し、一方
    の領域でシリアル転送を行っている間に、他方の領域で
    メモリセルの情報を読み出すことで、複数のページのデ
    ータを連続的に読み出すようなギャップレス読み出しを
    行う半導体記憶装置において、 所定数の単位のデータに対してエラー訂正符号を生成付
    加してメモリセルに書き込む手段と、 上記メモリセルから読み出される上記所定数の単位のデ
    ータを上位側と下位側とに分割する手段と、 上記上位側から読み出されたデータに対するシンドロー
    ム演算を行う手段と、 上記下位側から読み出されたデータに対するシンドロー
    ム演算を行う手段と、 上記下位側から読み出されたデータに対するシンドロー
    ム演算の結果と、上記上位側から読み出されたデータに
    対するシンドローム演算の結果とを合成して、上記所定
    数の単位のデータに対するシンドローム演算の結果を得
    る手段とを備え、 書き込み時に、所定数の単位のデータに対してエラー訂
    正符号を生成付加してメモリセルに書き込んでおき、 上記他方の領域でメモリセルの情報を読み出す際に、 上記メモリセルから上記所定数の単位のデータを上位側
    と下位側とに分割して読み出し、 上記上位側から読み出されたデータに対するシンドロー
    ム演算と、上記下位側から読み出されたデータに対する
    シンドローム演算とを並行して行い、 上記下位側から読み出されたデータに対するシンドロー
    ム演算の結果と、上記上位側から読み出されたデータに
    対するシンドローム演算の結果とを合成して、上記所定
    数の単位のデータに対するシンドローム演算の結果を得
    るようにした半導体記憶装置。
JP2000010300A 2000-01-17 2000-01-17 半導体記憶装置のエラー訂正符号化方法及び半導体記憶装置 Pending JP2001202792A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000010300A JP2001202792A (ja) 2000-01-17 2000-01-17 半導体記憶装置のエラー訂正符号化方法及び半導体記憶装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000010300A JP2001202792A (ja) 2000-01-17 2000-01-17 半導体記憶装置のエラー訂正符号化方法及び半導体記憶装置

Publications (1)

Publication Number Publication Date
JP2001202792A true JP2001202792A (ja) 2001-07-27

Family

ID=18538334

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000010300A Pending JP2001202792A (ja) 2000-01-17 2000-01-17 半導体記憶装置のエラー訂正符号化方法及び半導体記憶装置

Country Status (1)

Country Link
JP (1) JP2001202792A (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005346758A (ja) * 2004-05-31 2005-12-15 Sony Corp 半導体記憶装置および信号処理システム
JP2013198128A (ja) * 2012-03-22 2013-09-30 Fuji Xerox Co Ltd データ伝送システム、データ送信装置およびデータ受信装置
JP2013235642A (ja) * 2012-05-04 2013-11-21 Huabang Electronic Co Ltd Nand型フラッシュメモリの読み込み方法及び装置
CN103578535A (zh) * 2012-07-23 2014-02-12 华邦电子股份有限公司 用于读取nand快闪存储器的方法和设备
CN103730159A (zh) * 2012-10-11 2014-04-16 华邦电子股份有限公司 非易失性半导体存储器及数据读出方法
TWI497495B (zh) * 2012-07-02 2015-08-21 Winbond Electronics Corp 用於讀取nand快閃記憶體的方法和設備
US9324450B2 (en) 2013-03-13 2016-04-26 Winbond Electronics Corporation NAND flash memory
US9367392B2 (en) 2014-08-01 2016-06-14 Winbond Electronics Corporation NAND flash memory having internal ECC processing and method of operation thereof
JP2016143068A (ja) * 2015-01-29 2016-08-08 富士通セミコンダクター株式会社 半導体記憶装置および半導体記憶装置の制御方法
US9442798B2 (en) 2014-07-31 2016-09-13 Winbond Electronics Corporation NAND flash memory having an enhanced buffer read capability and method of operation thereof
JP6178909B1 (ja) * 2016-09-15 2017-08-09 ウィンボンド エレクトロニクス コーポレーション 不揮発性半導体記憶装置
KR20210013639A (ko) * 2016-08-18 2021-02-04 윈본드 일렉트로닉스 코포레이션 Nand형 플래시 메모리 및 그 독출 방법

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005346758A (ja) * 2004-05-31 2005-12-15 Sony Corp 半導体記憶装置および信号処理システム
JP2013198128A (ja) * 2012-03-22 2013-09-30 Fuji Xerox Co Ltd データ伝送システム、データ送信装置およびデータ受信装置
JP2013235642A (ja) * 2012-05-04 2013-11-21 Huabang Electronic Co Ltd Nand型フラッシュメモリの読み込み方法及び装置
US8667368B2 (en) 2012-05-04 2014-03-04 Winbond Electronics Corporation Method and apparatus for reading NAND flash memory
TWI497495B (zh) * 2012-07-02 2015-08-21 Winbond Electronics Corp 用於讀取nand快閃記憶體的方法和設備
CN103578535A (zh) * 2012-07-23 2014-02-12 华邦电子股份有限公司 用于读取nand快闪存储器的方法和设备
CN103578535B (zh) * 2012-07-23 2016-06-15 华邦电子股份有限公司 用于读取nand快闪存储器的方法和设备
US9218888B2 (en) 2012-10-11 2015-12-22 Winbond Electronics Corp. Non-volatile semiconductor memory data reading method thereof
TWI514390B (zh) * 2012-10-11 2015-12-21 Winbond Electronics Corp 非揮發性半導體記憶體及資料讀出方法
JP2014078301A (ja) * 2012-10-11 2014-05-01 Winbond Electronics Corp 不揮発性半導体メモリ
CN103730159A (zh) * 2012-10-11 2014-04-16 华邦电子股份有限公司 非易失性半导体存储器及数据读出方法
KR101556392B1 (ko) * 2012-10-11 2015-09-30 윈본드 일렉트로닉스 코포레이션 불휘발성 반도체 메모리 디바이스 및 데이터 독출 방법
US9324450B2 (en) 2013-03-13 2016-04-26 Winbond Electronics Corporation NAND flash memory
US9442798B2 (en) 2014-07-31 2016-09-13 Winbond Electronics Corporation NAND flash memory having an enhanced buffer read capability and method of operation thereof
JP2019091519A (ja) * 2014-08-01 2019-06-13 華邦電子股▲ふん▼有限公司Winbond Electronics Corp. 内部ecc処理を有するnand型フラッシュメモリおよびその動作方法
US9367392B2 (en) 2014-08-01 2016-06-14 Winbond Electronics Corporation NAND flash memory having internal ECC processing and method of operation thereof
JP2016143068A (ja) * 2015-01-29 2016-08-08 富士通セミコンダクター株式会社 半導体記憶装置および半導体記憶装置の制御方法
KR20210013639A (ko) * 2016-08-18 2021-02-04 윈본드 일렉트로닉스 코포레이션 Nand형 플래시 메모리 및 그 독출 방법
KR102329174B1 (ko) 2016-08-18 2021-11-22 윈본드 일렉트로닉스 코포레이션 Nand형 플래시 메모리 및 그 독출 방법
JP2018045745A (ja) * 2016-09-15 2018-03-22 ウィンボンド エレクトロニクス コーポレーション 不揮発性半導体記憶装置
KR20180030432A (ko) * 2016-09-15 2018-03-23 윈본드 일렉트로닉스 코포레이션 비휘발성 반도체 기억 장치
KR101969777B1 (ko) 2016-09-15 2019-04-17 윈본드 일렉트로닉스 코포레이션 비휘발성 반도체 기억 장치
JP6178909B1 (ja) * 2016-09-15 2017-08-09 ウィンボンド エレクトロニクス コーポレーション 不揮発性半導体記憶装置

Similar Documents

Publication Publication Date Title
JP4138169B2 (ja) オンチップエラー訂正回路を備えた半導体メモリ装置及びエラー訂正方法
US7212426B2 (en) Flash memory system capable of inputting/outputting sector data at random
KR101162271B1 (ko) 반도체 기억장치
JP4112849B2 (ja) 半導体記憶装置
JP4105819B2 (ja) 記憶装置およびメモリカード
US7509566B2 (en) Flash memory
KR101088235B1 (ko) 반도체 메모리를 갖는 메모리 시스템 및 그 데이터 전송 방법
JP3272903B2 (ja) 誤り訂正検出回路と半導体記憶装置
US7266759B2 (en) Semiconductor integrated circuit device and error checking and correcting method thereof
JPS63197123A (ja) エラ−訂正及びチエツク装置
US7984363B2 (en) Integrated circuit device including a circuit to generate error correction code for correcting error bit for each of memory circuits
JP2006190425A (ja) 半導体記憶装置
US20090319863A1 (en) Error-correcting system of semiconductor memory, error-correcting method, and memory system with error-correcting system
JP2001202792A (ja) 半導体記憶装置のエラー訂正符号化方法及び半導体記憶装置
US11487614B2 (en) Semiconductor storing apparatus and readout method
US7075851B2 (en) Semiconductor memory device inputting/outputting data and parity data in burst operation
JP2022047393A (ja) メモリシステム、半導体記憶装置及びデータ読み出し方法
KR101001446B1 (ko) 불휘발성 메모리 장치 및 그것의 동작 방법
JP2014033364A (ja) 誤り検出訂正回路、及びメモリ装置
JP2021047527A (ja) メモリシステム
CN113764029A (zh) 用于并行生成校正子和部分系数信息的设备和方法
KR20210062499A (ko) 반도체 메모리 장치 및 그 동작 방법
JP2001202793A (ja) 半導体記憶装置におけるエラー訂正符号化方法および半導体記憶装置
JPS59200349A (ja) 誤り訂正回路用診断回路
JPS58222497A (ja) マイクロプログラム制御装置