(57)【要約】  【課題】  チップ内で効率的にエラービット検出を行うことを可能とした半導体記憶装置を提供する。  【解決手段】  半導体記憶装置は、複数のメモリセルが配列されたメモリセルアレイと、前記メモリセルアレイのデータ読み出しを行うためのセンスアンプ回路とを備え、前記センスアンプ回路内で、前記メモリセルアレイの読み出しデータと外部から供給された期待値データとの間で排他的論理和演算処理が行われる。  【選択図】  図４
2006277786.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルが配列されたメモリセルアレイと、
前記メモリセルアレイのデータ読み出しを行うためのセンスアンプ回路とを備え、
前記センスアンプ回路内で、前記メモリセルアレイの読み出しデータと外部から供給された期待値データとの間で排他的論理和演算処理が行われる
ことを特徴とする半導体記憶装置。
【請求項２】
複数のメモリセルが配列されたメモリセルアレイと、
前記メモリセルアレイのデータ読み出しを行うためのセンスアンプ回路とを備え、
前記センスアンプ回路内で、前記メモリセルアレイの第１の領域からの読み出しデータと第２の領域から読み出される期待値データとの間で排他的論理和演算処理が行われる
ことを特徴とする半導体記憶装置。
【請求項３】
第１の領域に書き込まれるデータは多値データであり、第２の領域に書き込まれる期待値データは２値データである
ことを特徴とする請求項２記載の半導体記憶装置。
【請求項４】
前記センスアンプ回路が保持する期待値データは、次にメモリセルアレイから読み出されるデータとの排他的論理和演算処理に供される
ことを特徴とする請求項１又は２記載の半導体記憶装置。
【請求項５】
複数のメモリセルが配列されたメモリセルアレイと、
前記メモリセルアレイのデータ読み出しを行うためのセンスアンプ回路と、
期待値データを格納するデータレジスタとを備え、
前記メモリセルアレイから前記センスアンプ回路に読み出されたデータと前記データレジスタの期待値データとの間で排他的論理和演算処理が行われる
ことを特徴とする半導体記憶装置。
【請求項６】
前記センスアンプ回路は、前記メモリセルアレイの複数のメモリセルに同時に接続される複数のセンスユニットを有し、各センスユニットの読み出しデータについて同時に期待値データとの間で排他的論理和演算処理が行われる
ことを特徴とする請求項１，２，５のいずれかに記載の半導体記憶装置。
【請求項７】
前記複数のセンスユニットの読み出しデータと期待値データとの間の排他的論理和演算の不一致検出出力数をカウントするカウンタと、
前記カウンタにより求められた不一致検出出力数と外部から入力される許容値とを比較して、その比較結果がチップ外部に出力される比較回路とを有する
ことを特徴とする請求項６記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、半導体記憶装置に係り、特に電気的書き換え可能な不揮発性メモリセルを用いて構成される不揮発性半導体記憶装置（ＥＥＰＲＯＭ）に関する。
【背景技術】
【０００２】
ＥＥＰＲＯＭの一つとして、ＮＡＮＤ型フラッシュメモリが知られている。ＮＡＮＤ型フラッシュメモリでは、複数のメモリセルが直列接続された、単位セル面積の小さいＮＡＮＤセルユニットを用いてメモリセルアレイが構成される。従って、ＮＯＲ型フラッシュメモリと比べて、大きな記憶容量を実現することが容易である。
【０００３】
近年、更に大容量のフラッシュメモリを実現するために、一つのメモリセルが多ビット記憶を行う多値記憶方式が種々提案されている（例えば、特許文献１参照）。
【０００４】
また、フラッシュメモリのデータの信頼性を保証するために、ＥＣＣ回路を組み合わせる技術も提案されている（例えば、特許文献２参照）。
【０００５】
ところで、４値記憶方式のフラッシュメモリでは、４つのしきい値電圧分布を設定することになるため、２値記憶の場合に比べて、しきい値電圧分布間の差、従ってデータマージンが小さくなる。８値、１６値記憶を実現しようとすると、データマージンは更に小さくなる。
【０００６】
データマージンが小さくなれば、それだけ書き込みエラーが多くなる可能性がある。従って、多値記憶方式のフラッシュメモリにＥＣＣ回路を適用する場合に、一般に用いられている少数のビットエラー対応のＥＣＣ回路では対応できなくなる可能性がある。
【特許文献１】特開２００１−９３２８８号公報
【特許文献２】特開２００２−２５１８８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
この発明は、チップ内で効率的にエラービット検出を行うことを可能とした半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
この発明の一態様による半導体記憶装置は、
複数のメモリセルが配列されたメモリセルアレイと、
前記メモリセルアレイのデータ読み出しを行うためのセンスアンプ回路とを備え、
前記センスアンプ回路内で、前記メモリセルアレイの読み出しデータと外部から供給された期待値データとの間で排他的論理和演算処理が行われる。
【発明の効果】
【０００９】
この発明によると、チップ内で効率的にエラービット検出を行うことを可能とした半導体記憶装置を提供することができる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照して、この発明の実施の形態を説明する。
【００１１】
図１は、一実施の形態によるＮＡＮＤ型フラッシュメモリのメモリチップの機能ブロック構成を示している。メモリセルアレイ１は、図２に示すように、ＮＡＮＤセルユニットＮＵを配列して構成される。各ＮＡＮＤセルユニットＮＵは、複数個（図２の場合、３２個）の電気的書き換え可能な不揮発性メモリセルＭＣ０−ＭＣ３１と、その両端をそれぞれビット線ＢＬとソース線ＣＥＬＳＲＣに接続するための選択ゲートトランジスタＳ１，Ｓ２を有する。
【００１２】
メモリセルＭＣ０−ＭＣ３１の制御ゲートはそれぞれ異なるワード線ＷＬ０−ＷＬ３１に接続される。選択ゲートトランジスタＳ１，Ｓ２のゲートは、ワード線と並行する選択ゲート線ＳＧＤ，ＳＧＳに接続される。
【００１３】
ワード線を共有するＮＡＮＤセルユニットの集合は、データ消去の単位となるブロックＢＬＫを構成する。図２に示すように、通常ビット線の方向に複数のブロックＢＬＫ０，ＢＬＫ１，…が配列される。
【００１４】
ワード線制御回路２は、メモリセルアレイ１のワード線選択及び駆動を行うロウデコーダ及びワード線駆動回路を含む。ビット線制御回路３は、メモリセルアレイ１のビット線に接続されてデータ読み出しを行う機能及び、読み出しデータや書き込みデータを保持するデータラッチ機能を有するセンスアンプ回路である。カラムデコーダ４はメモリセルアレイ１のビット線選択を行う。
【００１５】
データ読み出し時、センスアンプ回路３に読み出されたデータは、データバス１１を介し、Ｉ／Ｏバッファ５を介して外部入出力端子Ｉ／Ｏに出力される。データ書き込み時、外部コントローラから入出力端子Ｉ／Ｏに供給される書き込みデータは、Ｉ／Ｏバッファ５を介し、データバス１１を介してセンスアンプ回路３にロードされる。
【００１６】
入出力端子Ｉ／Ｏからバッファ５を介して供給されるコマンド“Ｃｏｍ”は制御信号発生回路（内部コントローラ）７でデコードされる。コントローラ７には、チップイネーブル信号／ＣＥ、書き込みイネーブル信号／ＷＥ、読み出しイネーブル信号／ＲＥ、アドレスラッチイネーブル信号ＡＬＥ、コマンドラッチイネーブル信号ＣＬＥ等の外部制御信号が供給される。内部コントローラ７は、動作モードに応じて供給される外部制御信号及びコマンドに基づいて、データ書き込み及び消去のシーケンス制御、及びデータ読み出しの制御を行う。
【００１７】
入力端子Ｉ／Ｏからバッファ５を介して供給されるアドレス“Ａｄｄ”はアドレスレジスタ６を介してワード線制御回路２及びカラムデコーダ４に転送される。
【００１８】
動作モードに応じて、電源電圧より高い種々の高電圧を発生するために、制御電圧発生回路８が設けられている。制御電圧発生回路８はコントローラ７により制御される。
【００１９】
後に説明するようにこの実施の形態では、チップ内部でページ毎の書き込みエラービットを検出することを可能としている。そのために、ビット線制御回路３は、読み出しデータと外部から供給された期待値データとの間で排他的論理和演算処理を行うことを可能としている。その演算結果データに基づいてエラービット数をカウントするために、制御回路７からの制御クロックで動作するカウンタ９が設けられている。
【００２０】
更に、このカウンタ９のカウント値（エラービット数）を、外部から供給する許容値データと比較する比較回路１０が用意されている。比較回路１０は、エラービット数が許容値以下であるか否かを判定して、その判定結果を外部出力する。
【００２１】
図２に示したメモリセルアレイ構成では、ビット線制御回路（即ちセンスアンプ回路）３は、ビット線毎に配置された多数のセンスユニットＳＡＵｉを有する。この場合、２値記憶方式では、１ワード線に沿って配列されるメモリセルの集合が、データ読み出し及び書き込みの単位となる１ページとなる。１メモリセルが２ビットを記憶する４値記憶方式の場合には、１ワード線に沿って配列されるメモリセルの集合は、２ページになる。
【００２２】
しかし、セルが微細化された実際のＮＡＮＤ型フラッシュメモリでは、図２に示すように、ビット線毎にセンスユニットＳＡＵｉを配置することは困難になり、また配置できたとしても隣接ビット線間のノイズの影響が大きくなる。そのために、通常は、図３に示すように、隣接する偶数番ビット線ＢＬｅと奇数番ビット線ＢＬｏが一つのセンスユニットＳＡＵを共有する、共有センスアンプ方式が用いられる。この共有センスアンプ方式では、各センスユニットＳＡＵｉと対応する偶／奇ビット線ＢＬｅ／ＢＬｏの間にビット線選択トランジスタＱｅ，Ｑｏが配置され、偶／奇ビット線ＢＬｅ／ＢＬｏのいずれか一方がセンスユニットＳＡＵｉに接続され、他方はシールド線として用いられる。
【００２３】
この共有センスアンプ方式を採用した場合には、１ワード線ＷＬｉと全偶数番ビット線ＢＬｅにより選択されるメモリセルの集合が一つのセクタを構成し、同ワード線ＷＬｉと全奇数番ビット線ＢＬｏにより選択されるメモリセルの集合が他のセクタを構成する。そして、２値記憶方式の場合には、１セクタが読み出し及び書き込み単位である１ページとなり、４値記憶方式の場合には、１セクタが２ページとなる。
【００２４】
図４は、センスアンプ回路３内の一つのセンスユニットＳＡＵｉの具体的な構成を示している。ノードＴＤＣは、ビット線電圧をセンスするためのセンスノードであると共に、データを一時記憶するデータ記憶ノードでもある。即ちノードＴＤＣは、これに接続された電荷保持用キャパシタＣ１及びブースト用キャパシタＣ２とともに、データ一時記憶回路２１を構成している。
【００２５】
ノードＴＤＣは、クランプ用ＮＭＯＳトランジスタＱ１を介してビット線に接続される。図３に示す共有センスアンプ方式の場合、クランプ用トランジスタＱ１とビット線ＢＬｅ，ＢＬｏとの間にビット線選択回路２７が配置され、トランジスタＱ１は、ビット線ＢＬｅ，ＢＬｏの一方に接続されることになる。ビット線選択回路２７は、選択トランジスタＱｅ，Ｑｅと、非選択ビット線に所定のバイアスＢＬＣＲＬを与えるためのバイアス用トランジスタＱｂｅ，Ｑｂｏを有する。
【００２６】
クランプ用トランジスタＱ１は、読み出し時ビット線電圧をクランプして、ノードＴＤＣに転送する働きをする。ノードＴＤＣには、ビット線及びこのノードＴＤＣをプリチャージするためのプリチャージ用ＮＭＯＳトランジスタＱ２が接続されている。
【００２７】
ノードＴＤＣは、転送用ＮＭＯＳトランジスタＱ３，Ｑ４を介してそれぞれデータラッチ２２，２３のデータ記憶ノードＰＤＣ，ＳＤＣに接続されている。データラッチ２２は、読み出しデータ及び書き込みデータを保持するデータ記憶回路である。データラッチ２３は、データラッチ２２とデータ線ＤＱ，ＤＱｎとの間に配置されて、書き込みデータや読み出しデータを一時保持するために用いられるデータキャッシュである。
【００２８】
従ってデータラッチ２３のノードは、カラム選択信号ＣＳＬｉにより駆動される選択ゲートトランジスタＱ２１，Ｑ２２を介して、データバス１１のデータ線対ＤＱ，ＤＱｎに接続されている。
【００２９】
多値記憶を行う場合には、現に書き込みを行っているページの書き込みベリファイ制御のために、既に書かれているページや後に書かれるべきページのデータを参照することが必要になる。このため書き込み時は例えば、データラッチ２２に現に書き込みを行うページのデータを保持し、データラッチ２３に参照ページデータを保持するという動作が行われる。
【００３０】
データ書き込みは、所定のしきい値分布を得るために、書き込み電圧印加と書き込みベリファイとの繰り返しにより行われる。書き込みベリファイはビット毎に行われ、このベリファイ結果によって次のサイクルの書き込みデータを決定する必要がある。
【００３１】
ドレインに電圧ＶＰＲＥが与えられるＮＭＯＳトランジスタＱ５のゲートは、書き込み時にデータラッチ２２のノードＰＤＣが保持する書き込みデータを一時待避させて保持するためのデータ記憶ノードＤＤＣＡとなる。データラッチ２２のノードＰＤＣのデータは転送用ＮＭＯＳトランジスタＱ６を介してデータ記憶ノードＤＤＣＡに転送される。電圧ＶＰＲＥは、選択的にＶｄｄ又はＶｓｓとなる。
【００３２】
ＮＭＯＳトランジスタＱ５とデータ記憶ノードＴＤＣとの間に介在させたＮＭＯＳトランジスタＱ７とにより、データ記憶ノードＴＤＣのデータを、データ記憶ノードＤＤＣＡのデータに応じて設定することが可能になる。即ちこのＮＭＯＳトランジスタＱ５，Ｑ７により、書き込み時に次サイクルの書き込みデータを記憶ノードＴＤＣに書き戻すための書き戻し回路２４が構成されている。この書き戻し回路２４は、ドレイン電圧ＶＰＲＥを選ぶことによって、ノードＴＤＣとＤＤＣＡとの間でデータの加減算を行う機能を持つ。
【００３３】
この実施の形態では、書き戻し回路２４と併設されて、データラッチ２２のノードＰＤＣが保持する書き込みデータを転送して一時保持し、データ記憶ノードＴＤＣに書き戻すため動作が可能なもう一つの書き戻し回路２５を有する。ドレインに電圧ＶＰＲＥが与えられるＮＭＯＳトランジスタＱ８のゲートがデータ記憶ノードＤＤＣＢである。データラッチ２２のノードＰＤＣのデータは転送用ＮＭＯＳトランジスタＱ９を介してデータ記憶ノードＤＤＣＢに転送可能である。トランジスタＱ８のソースとノードＴＤＣの間には、転送用ＮＭＯＳトランジスタＱ１０を介在させている。
【００３４】
通常の書き込み制御には、データ書き戻し回路２４，２５の一方があればよい。この実施の形態において２系統の書き戻し回路２４，２５を併設しているのは、エラー検出のためのテストモードにおいてエラー検出の演算処理に利用するためである。後に説明するようにこの実施の形態のテストモードでは、１ページ分のセンスユニット内でのデータ転送を利用することによって、セルアレイからの１ページ分の読み出しデータと、外部から供給される期待値データとの間の排他的論理和演算による一括比較によるエラービット検出を行う。
【００３５】
データラッチ２２には、ベリファイチェック回路２６が接続されている。データラッチ２２の一つのノードにゲートが接続されたＮＭＯＳトランジスタＱ１１がチェック用トランジスタであり、そのソースはチェック信号ＣＨＫ１により制御されるＮＭＯＳトランジスタＱ１２を介して接地され、ドレインは併設された転送用ＮＭＯＳトランジスタＱ１３，Ｑ１４を介して共通信号線ＣＯＭｉに接続されている。ＮＭＯＳトランジスタＱ１３，Ｑ１４はそれぞれ、チェック信号ＣＨＫ２及びノードＴＤＣによりゲートが制御される。
【００３６】
データ書き込み時、ベリファイ読み出し後に１ページ分のセンスユニット内でこのベリファイチェック回路２６がオンになる。あるセンスユニットで書き込みが完了していなければ、ベリファイチェック回路２６は、予め“Ｈ”に充電された共通信号線ＣＯＭｉを放電させる。１ページ分のデータラッチ２２がオール“１”状態になると、共通信号線ＣＯＭｉが放電されることなく“Ｈ”を保ち、これが書き込み完了を示すパスフラグとなる。
【００３７】
この実施の形態のＮＡＮＤ型フラッシュメモリは、２値記憶も可能であるが、好ましくは多値記憶を行う。例えば、図５は、４値記憶方式でのデータビット割り付け例とその書き込み法を示している。
【００３８】
４値記憶の場合、１メモリセルが２ビットデータを記憶する。第１ページ（下位ページ）データを“ｙ”、第２ページ（上位ページ）データを“ｘ”として、４値データを（ｘｙ）で表すものとして、図５の例では、セルのしきい値電圧Ｖｔの低い方から順に、データ（１１），（１０），（００），（０１）のようにデータビットが割り付けられている。
【００３９】
データ（１１）は、しきい値電圧が負の最下位レベルであり、消去状態である。データ消去は、選択ブロック内の全ワード線をＶｓｓとし、セルアレイが形成されたｐ型ウェルに消去電圧Ｖｅｒａを与えることにより行われる。これにより、選択ブロック内の全メモリセルにおいて浮遊ゲートの電子が放出され、消去状態が得られる。
【００４０】
データ書き込みは、多値記憶の場合も２値記憶の場合も基本的に“０”，“１”書き込みの繰り返しにより行われる。ここで、“０”書き込みとは、センスユニットが保持する書き込みデータによりビット線を介して選択セルのチャネルをＶｓｓに設定し、この状態でワード線に書き込み電圧Ｖｐｇｍを与えることにより、浮遊ゲートに電子を注入する動作として行われる。この“０”書き込み動作により、セルのしきい値電圧が上昇する。
【００４１】
“１”書き込みのセルでは、チャネルがＶｄｄ−Ｖｔのフローティング状態に設定される。これにより、書き込み電圧Ｖｐｇｍの印加によりセルチャネルが電位上昇してフローティングゲートへの電子注入は生じない。従って、元のしきい値電圧状態を維持する。
【００４２】
４値記憶の場合は、図５に示すように、第１ページ及び第２ページの書き込みを要する。第１ページ書き込みでは、消去状態のデータ（１１）のセルを選択的にしきい値電圧を上昇させてデータ（１０）を得る。第２ページ書き込みでは、データ（１１）のセルを選択的にデータ（０１）までしきい値上昇させ、またデータ（１０）のセルを選択的にデータ（００）までしきい値上昇させる。
【００４３】
書き込まれるデータ（１０），（００），（０１）のしきい値分布を決定するのは、それらのしきい値分布の下限値に設定されたベリファイ読み出し電圧ＶＲ１，ＶＲ２，ＶＲ３である。即ち、ワード線にこれらのベリファイ読み出し電圧を与えた読み出し動作で、それぞれ“０”書き込みが十分に行われたか否かを判断することができる。第２ページ書き込みのベリファイ読み出しには、ＶＲ２を用いたベリファイステップとＶＲ３を用いたベリファイステップとを要する。
【００４４】
データ読み出しは、データ（１０）と（００）のしきい値電圧分布の間に設定された読み出し電圧Ｒ２を用いて、第２ページデータを判別することができる。更に、データ（１１）と（１０）の間、データ（００）と（０１）の間に設定された読み出し電圧Ｒ１，Ｒ３を用いた読み出し動作で、第２ページデータが“０”，“１”のデータそれぞれの第１ページデータを判別することができる。
【００４５】
図６は、８値記憶の場合のデータビット割り付け例と書き込み法を示している。詳細説明は省くが、８値データは、３ページデータにより表される。図６の例での書き込み手法は、図５の４値記憶の場合の書き込み手法を拡張したものである。
【００４６】
第１ページ書き込みで、消去状態のデータ（１１１）のセルを選択的にデータ（１１０）のしきい値に上昇させる。第２ページ書き込みでは、データ（１１１），（１１０）のセルにそれぞれ選択的にデータ（１００），（１０１）を書き込む。更に、第３ページ書き込みでは、データ（１１１），（１１０），（１００），（１０１）のセルにそれぞれ選択的に、データ（００１），（０００），（０１０），（０１１）を書き込む。それぞれのページ書き込みで、しきい値電圧分布の下限値に設定されたベリファイ読み出し電圧ＶＲ１−ＶＲ７を用いる。
【００４７】
データ読み出しは、データ（１０１）と（００１）との間に設定された読み出し電圧Ｒ４を用いて、第３ページが読み出される。データ（１１０）と（１００）の間、（０００）と（０１０）の間に設定された読み出し電圧Ｒ２，Ｒ６を用いてそれぞれ、第２ページが読み出される。データ（１１１）と（１００）の間、（１００）と（１０１）の間、（００１）と（０００）の間、（０１０）と（０１１）の間にそれぞれ設定された読み出し電圧Ｒ１，Ｒ３，Ｒ５，Ｒ７を用いてそれぞれ、第１ページが読み出される。
【００４８】
次にこの実施の形態でのエラー検出のテストモード動作を、図４のセンスユニットＳＡＵｉに即して説明する。以下のエラー検出動作に関しては、センスユニットＳＡＵｉの内のデータ記憶ノードＰＤＣ，ＳＤＣ，ＴＤＣ，ＤＤＣＡ，ＤＤＣＢの“Ｈ”，“Ｌ”レベルをそれぞれデータ“１”，“０”とする。
【００４９】
エラー検出には、セルアレイ１からデータラッチ２２に読み出した１ページデータと、外部から供給されてデータラッチ２３にロードされた期待値データとの間で、排他的論理和演算を行う。図７は、読み出しデータと期待値データのあり得る４つの組み合わせについての演算過程での各データ記憶ノードのデータ遷移を、各データ記憶ノードに示した４ビットデータで表している。
【００５０】
最上段の初期状態ａ１では、ノードＰＤＣの読み出しデータと、ノードＳＤＣの期待値データの次の４つの組み合わせを並列に示している。即ち、読み出しデータが“０”であって、期待値データが“０”の場合（ＰＤＣ，ＳＤＣの第１ビット）、読み出しデータが“１”で期待値データが“０”の場合（ＰＤＣ，ＳＤＣの第２ビット）、読み出しデータが“０”であって、期待値データが“１”の場合（ＰＤＣ，ＳＤＣの第３ビット）及び、読み出しデータ“１”であって、期待値データが“１”の場合（ＰＤＣ，ＳＤＣの第４ビット）である。
【００５１】
状態ａ１では、ノードＰＤＣに示された４ビットの読み出しデータのうち、第１及び第４ビットはノードＳＤＣの期待値データと同じ論理であり、第２ビット及び第３ビットが期待値と異なるエラービットであることを示している。
【００５２】
エラー検出のために排他的論理和演算は、（ＳＤＣ−ＰＤＣ）＋（ＰＤＣ−ＳＤＣ）なる演算であり、これはコントローラ７により制御されるデータノードＰＤＣ，ＳＤＣ，ＴＤＣ，ＤＤＣＡ，ＤＤＣＢの間のデータ転送を利用して次のように実現される。
【００５３】
まず、データラッチ２３のノードＳＤＣの期待値データがノードＴＤＣに転送され（状態ａ２）、データラッチ２２のノードＰＤＣの読み出しデータがデータ記憶回路２４のノードＤＤＣＡに転送保持される（状態ａ３）。これらのデータ転送の順序は問わないし、同時であってもよい。次に、ノードＴＤＣに転送されたデータは更にデータラッチ２２のノードＰＤＣに転送され、保持される（状態ａ４）。
【００５４】
この状態で、書き戻し回路２４の転送用トランジスタＱ７がゲートＲＥＧＡに“Ｈ”レベル信号が与えられてオンになる。このとき、メモリトランジスタＱ５のドレインの電圧は、ＶＲＰＥ＝Ｖｓｓである。これにより、ノードＤＤＣＡがデータ“１”であれば、ノードＴＤＣは放電され、ノードＤＤＣＡがデータ“０”であれば、ノードＴＤＣはその現状を維持する（状態ａ５）。
【００５５】
これは、書き戻し回路２４によって、ＴＤＣ−ＤＤＣＡなる減算が行われて、その第１の減算結果がノードＴＤＣに生成されたことを意味する。この減算は、［期待値データ］−［読み出しデータ］に相当する。
【００５６】
次に、データラッチ２２のノードＰＤＣの期待値データがデータ記憶回路２５のノードＤＤＡＢに転送保持される（状態ａ６）。そして、ノードＴＤＣの第１の減算結果データが空いたデータラッチ２２のノードＰＤＣに転送保持される（状態ａ７）。更に、書き戻し回路２４のノードＤＤＣＡに保持されていた読み出しデータが、トランジスタＱ５のドレインにＶＰＲＥ＝Ｖｄｄ＋αを与えかつ、トランジスタＱ７のゲートＲＥＧＡに“Ｈ”レベル信号を与えることにより、ノードＴＤＣに転送される（状態ａ８）。
【００５７】
この状態で、書き戻し回路２５の転送用トランジスタＱ８がゲートＲＥＧＢに“Ｈ”レベル信号が与えられてオンになる。このとき、トランジスタＱ８のドレインの電圧は、ＶＲＰＥ＝Ｖｓｓである。これにより、ノードＤＤＣＢがデータ“１”であれば、ノードＴＤＣは放電され、ノードＤＤＣＢがデータ“０”であれば、ノードＴＤＣはその現状を維持する（状態ａ９）。
【００５８】
これは、書き戻し回路２５によりＴＤＣ−ＤＤＣＢなる減算が行われて、その第２の減算結果がノードＴＤＣに得られたことを意味する。この演算は、［読み出しデータ］−［期待値データ］に相当する。
【００５９】
次いで、データラッチ２２のノードＰＤＣが保持する第１の中間結果データが、データ記憶回路２４のノードＤＤＣＡに転送保持される（状態ａ１０）。そして、トランジスタＱ５のドレインにＶＰＲＥ＝Ｖｄｄ＋αが与えられた状態で、データ記憶回路２４とノードＴＤＣの間の転送トランジスタＱ７が、そのゲートＲＥＧＡに“Ｈ”レベル制御信号を与えることによりオンになる。
【００６０】
これにより、ノードＤＤＣＡがデータ“１”であれば、ノードＴＤＣは“Ｈ”レベル（＝“１”）に充電され、ノードＤＤＣＡがデータ“０”であれば、ノードＴＤＣは現状データを維持する（状態ａ１１）。これは、書き戻し回路２４によるＴＤＣ＋ＤＤＣＡなる加算が行われ、その結果、即ち第１の減算結果と第２の減算結果の和がノードＴＤＣに得られたことを意味する。
【００６１】
以上により、ノードＴＤＣには、テストモード初期にデータラッチ２２のノードＰＤＣに読み出されたデータと、データラッチ２３のノードＳＤＣにロードされた期待値データとの排他的論理和演算の結果が得られたことになる。ノードＴＤＣに得られた演算結果データは、データラッチ２３のノードＳＤＣに転送保持される（状態ａ１２）。
【００６２】
各センスユニットＳＡＵｉの演算結果データは、“０”が読み出しデータと期待値データとが一致した正常ビットであり、“１”がエラービットであることを示している。以上のデータ転送による演算処理は、１ページ分のセンスユニットで同時に行うことができ、１ページの読み出しデータのエラービットを短時間で検出することができる。
【００６３】
この実施の形態の場合、データラッチ２３のノードＳＤＣに得られた最終演算結果の１ページ分のデータを読み出して、カウンタ９に入れることで、データ“１”の数をエラービット数として検出することができる。更に、チップ外部からエラービット数の許容値データが入力され、比較回路１０においてカウンタ９に得られたエービット数と許容データとが比較される。その比較結果はチップ外部に出力される。これにより、外部コントローラは、１ページ内のエラービット数が許容値を越えているか否かを、短時間で知ることができる。
【００６４】
図８は、上述したエラービット検出を行うテストモードの動作フローを示している。所定のテストコマンドを入力することによって、このテストモードはスタートする。テストコマンド入力に続いて、読み出しページアドレスを入力すると（ステップＳ１）、セルアレイの該当ページの読み出しが行われる。読み出しデータビットはそれぞれセンスユニットのデータラッチＰＤＣに保持される（ステップＳ２）。
【００６５】
続いて、外部から供給される１ページ分の期待値データがセンスユニット内のデータラッチＳＤＣにロードされる（ステップＳ３）。続いて前述したように、センスユニット内でのデータ転送により、読み出しデータと期待値データとの排他的論理和演算処理が行われる（ステップＳ４）。
【００６６】
演算結果データはデータラッチＳＤＣに保持される。この演算結果データの“１”データ数をカウントすることによって、１ページ読み出しデータ内のエラービット数が検出される（ステップＳ６）。更に、外部からエラービット数の許容値データを入力することによって（ステップＳ７）、チップ内部で検出されたエラービット数が許容値を越えているか否かが判定される。その判定結果はチップ外部に出力される（ステップＳ８）。
【００６７】
なお上記実施の形態では、メモリチップにエラービット数カウントとその判定の機能まで持たせている。しかしこれらの機能は必ずしもメモリチップに持たせることなくてもよい。その場合、図８に対応するテストモード動作フローは図９のようになる。
【００６８】
スタートから、排他的論理和演算を行うステップＳ４までは、図８と同様である。この後、データラッチＳＤＣに得られた演算結果データをそのままチップ外部に出力して（ステップＳ５）、メモリチップとしてのテストモードは終了する。演算結果データは、エラービットが“１”、正常ビットが“０”で表されているから、外部コントローラはこれにより容易にエラービット数を知ることができる。
【００６９】
上記実施の形態では、エラービット検出の演算結果がデータラッチＳＤＣに得られた段階で、外部から供給された期待値データは、書き戻し回路２５の記憶ノードＤＤＣＢに保持されている。もし別のページのエラービット検出動作を同じ期待値データに基づいて引き続き行う必要があれば、センスユニットをリセットすることなく、記憶ノードＤＤＣＢに保持されている期待値データをデータノードＴＤＣを介してデータラッチ２３のノードＳＤＣに転送保持する。そして、新たなページデータをセルアレイからデータラッチ２２のノードＰＤＣに読み出して、上記実施の形態と同様の排他的論理演算を繰り返せばよい。
【００７０】
１ページデータのセンスユニット内での転送は、同時並列的に行われる。従って外部からテストページ毎に期待値データをロードする場合に比べて、大幅な時間短縮が可能である。
【００７１】
上記実施の形態では、センスアンプ回路において、外部から供給された期待値データと読み出しデータとの間の排他的論理和演算処理によりエラー検出を行った。
【００７２】
これに対して、期待値データを予めメモリセルアレイに書き込んでおく方法を用いることもできる。そしてメモリセルアレイの第１の領域からの読み出しデータと、第２の領域から読み出した期待値データとの間で、上記実施の形態と同様にセンスアンプ回路内で排他的論理和演算を行うことにより、同様にエラー検出を行うことができる。
【００７３】
例えば図１０に示すように、メモリセルアレイ１に、１６値データ（或いは他の多値データ）を記憶する第１の領域とは別に、２値データを記憶する第２の領域を用意し、この第２の領域に多値データの各ページデータのエラー検出のための期待値データを２値データで書き込む。２値データは、多値データに比べてデータマージンが大きくとれるから、期待値データの信頼性が高くなり、従ってエラー検出の精度が高くなる。
【００７４】
更に上記実施の形態では、センスアンプ回路内に読み出しデータと期待値データを同時に格納して、それらの間で排他的論理和演算を行った。これに対して、図１１に示すように、センスアンプ回路３とは別に、期待値データを格納するデータレジスタ２０を配置して、これらの間で排他的論理和演算処理が行われるようにしてもよい。
【図面の簡単な説明】
【００７５】
【図１】この発明の一実施の形態によるフラッシュメモリの機能ブロックを示す図である。
【図２】同フラッシュメモリのメモリセルアレイの構成を示す図である。
【図３】共有センスアンプ方式のメモリセルアレイとセンスアンプ回路を示す図である。
【図４】同フラッシュメモリのセンスユニット構成を示す図である。
【図５】４値記憶方式のデータビット割り付け例と書き込み法を示す図である。
【図６】８値記憶方式のデータビット割り付け例と書き込み法を示す図である。
【図７】センスユニット内での排他的論理和演算を説明するためのデータ遷移を示す図である。
【図８】エラービット検出の動作フローを示す図である。
【図９】エラービット検出の他の動作フローを示す図である。
【図１０】他の実施の形態を説明するためのメモリセルアレイのデータ領域を示す図である。
【図１１】他の実施の形態に用いられる期待値データを保持するデータレジスタとセンスアンプ回路との関係を示す図である。
【符号の説明】
【００７６】
１…メモリセルアレイ、２…ワード線制御回路、３…ビット線制御回路（センスアンプ回路）、４…カラムデコーダ、５…入出力バッファ、６…アドレスレジスタ、７…制御信号発生回路、８…制御電圧発生回路、９…カウンタ、１０…比較回路、
１１…データバス、ＳＡＵｉ…センスユニット、２１…データ一時記憶回路、２２，２３…データラッチ、２４，２５…書き戻し回路、２６…ベリファイチェック回路、２７…ビット線選択回路。
【図１】
2006277786.tif 000003
【図２】
2006277786.tif 000004
【図３】
2006277786.tif 000005
【図４】
2006277786.tif 000006
【図５】
2006277786.tif 000007
【図６】
2006277786.tif 000008
【図７】
2006277786.tif 000009
【図８】
2006277786.tif 000010
【図９】
2006277786.tif 000011
【図１０】
2006277786.tif 000012
【図１１】
2006277786.tif 000013