(57)【要約】【課題】メモリセルの読み出し時に発生するランダムエラーを補正することができる不揮発性半導体記憶装置を提供する。【解決手段】メモリセルアレイ１は、閾値電圧の差により１つのメモリセルに複数ビットを記憶することが可能な複数のメモリセルを持ち、前記メモリセルが行方向のワード線と列方向のビット線によりマトリクス状に配置されることで構成される。メモリセルアレイ１におけるメモリセルに対して、同一の読み出し条件で読み出し動作を複数回行い、読み出した複数のデータがセンスアンプ回路３内のラッチユニット３−１に格納される。ラッチユニット３−１に格納された複数のデータは多数決が取られ、多数決により得られたデータが、メモリセルに記憶されていたデータとして決定される。【選択図】図１
2010165400.tif 000002
【特許請求の範囲】
【請求項１】
閾値電圧の差により１つのメモリセルに複数ビットを記憶することが可能な複数のメモリセルを持ち、前記メモリセルが行方向のワード線と列方向のビット線によりマトリクス状に配置されることで構成されるメモリセルアレイと、
前記メモリセルアレイにおけるメモリセルに対して、同一の読み出し条件で読み出し動作を複数回行い、読み出した複数のデータを格納するラッチ回路と、
前記ラッチ回路に格納された複数のデータの多数決を取り、前記多数決により得られたデータを、前記メモリセルに記憶されていたデータとして決定する演算回路と、
を具備することを特徴とする不揮発性半導体記憶装置。
【請求項２】
前記複数回の読み出し動作は２ｎ＋１回の読み出し動作であって、前記２ｎ＋１回の読み出し動作において、同一の読み出しデータがｎ＋１回出たときは、以降の読み出し動作を行わず、前記読み出しデータを前記メモリセルに記憶されていたデータとして決定することを特徴とする請求項１に記載の不揮発性半導体記憶装置（ｎは１以上の整数）。
【請求項３】
前記複数回の読み出し動作では、前記メモリセルに対して同一の読み出し電圧が印加されることを特徴とする請求項１または２に記載の不揮発性半導体記憶装置。
【請求項４】
閾値電圧の差により１つのメモリセルに複数ビットを記憶することが可能な複数のメモリセルを持ち、前記メモリセルが行方向のワード線と列方向のビット線によりマトリクス状に配置されることで構成されるメモリセルアレイと、
前記メモリセルアレイにおけるメモリセルに対して、同一の読み出し条件で読み出し動作を複数回行い、読み出した複数のデータを格納するラッチ回路とを備える不揮発性半導体記憶装置と、
前記ラッチ回路から出力された複数のデータを記憶するデータラッチ回路と、
前記データラッチ回路に記憶された複数のデータの多数決を取り、前記多数決により得られたデータを、前記メモリセルに記憶されていたデータとして決定する多数決判定回路とを備えるコントローラと、
を具備することを特徴とする不揮発性半導体記憶システム。
【請求項５】
前記複数回の読み出し動作は２ｎ＋１回の読み出し動作であって、前記２ｎ＋１回の読み出し動作において、同一の読み出しデータがｎ＋１回出たときは、以降の読み出し動作を行わず、前記読み出しデータを前記メモリセルに記憶されていたデータとして決定することを特徴とする請求項４に記載の不揮発性半導体記憶システム（ｎは１以上の整数）。
【請求項６】
前記複数回の読み出し動作では、前記メモリセルに対して同一の読み出し電圧が印加されることを特徴とする請求項４または５に記載の不揮発性半導体記憶システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、書き換え可能な不揮発性半導体記憶装置及びそのシステムに関するものであり、例えばＮＡＮＤ型フラッシュメモリあるいはＮＡＮＤ型フラッシュメモリ及びそのコントローラに関するものである。
【背景技術】
【０００２】
近年、電気的書き換え可能な不揮発性半導体記憶装置として、ＮＡＮＤ型フラッシュメモリが様々な機器で広く用いられている。ＮＡＮＤ型フラッシュメモリは、直列に接続された複数のメモリセル（以下、ＮＡＮＤセルと記す）と、このＮＡＮＤセルの両端に配置された選択ゲートトランジスタとを備えている。
【０００３】
このＮＡＮＤ型フラッシュメモリにおいては、読み出し動作時に、読み出し電圧に近い場所に閾値を持つメモリセルは、データが正しく読まれたり間違って読まれたりする、ランダムエラーを持つことが問題となっている。
【０００４】
なお、特許文献１には以下のような装置が開示されている。データ作成回路により３組の同一データを用意し、これらをそれぞれ別個の３つのメモリセルに重複的に書き込む。読み出し時には、各メモリセルからそれぞれデータを読み出し、多数決論理回路により多数決で決定したデータを読み出しデータとして出力する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平６−８３７１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、メモリセルの読み出し時に発生するランダムエラーを補正することができる不揮発性半導体記憶装置及びそのシステムを提供する。
【課題を解決するための手段】
【０００７】
本発明の一実施態様の不揮発性半導体記憶装置は、閾値電圧の差により１つのメモリセルに複数ビットを記憶することが可能な複数のメモリセルを持ち、前記メモリセルが行方向のワード線と列方向のビット線によりマトリクス状に配置されることで構成されるメモリセルアレイと、前記メモリセルアレイにおけるメモリセルに対して、同一の読み出し条件で読み出し動作を複数回行い、読み出した複数のデータを格納するラッチ回路と、前記ラッチ回路に格納された複数のデータの多数決を取り、前記多数決により得られたデータを、前記メモリセルに記憶されていたデータとして決定する演算回路とを具備することを特徴とする。
【０００８】
本発明の他の実施態様の不揮発性半導体記憶システムは、閾値電圧の差により１つのメモリセルに複数ビットを記憶することが可能な複数のメモリセルを持ち、前記メモリセルが行方向のワード線と列方向のビット線によりマトリクス状に配置されることで構成されるメモリセルアレイと、前記メモリセルアレイにおけるメモリセルに対して、同一の読み出し条件で読み出し動作を複数回行い、読み出した複数のデータを格納するラッチ回路とを備える不揮発性半導体記憶装置と、さらに、前記ラッチ回路から出力された複数のデータを記憶するデータラッチ回路と、前記データラッチ回路に記憶された複数のデータの多数決を取り、前記多数決により得られたデータを、前記メモリセルに記憶されていたデータとして決定する多数決判定回路とを備えるコントローラとを具備することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、メモリセルの読み出し時に発生するランダムエラーを補正することができる不揮発性半導体記憶装置及びそのシステムを提供することが可能である。
【図面の簡単な説明】
【００１０】
【図１】本発明の第１実施形態の不揮発性半導体記憶装置における機能ブロック、及びコントローラ回路の構成を示す図である。
【図２】第１実施形態の不揮発性半導体記憶装置におけるメモリセルアレイとセンスアンプ回路の構成を示す図である。
【図３】第１実施形態におけるセンスアンプ回路内のラッチユニットの構成を示す回路図である。
【図４】第１実施形態におけるセンスアンプ回路内のセンスアンプユニットの構成を示す回路図である。
【図５】２値のデータを保持可能なメモリセルにおける閾値電圧の分布を示す図である。
【図６】第１実施形態の不揮発性半導体記憶装置における読み出し手法のフローを示す図である。
【図７】第１実施形態におけるセンスアンプ回路内のラッチユニットによる演算結果を示す図である。
【図８】本発明の第２実施形態の不揮発性半導体記憶システムにおける機能ブロックの構成を示す図である。
【図９】第２実施形態における読み出しデータラッチ回路の構成を示す回路図である。
【図１０】本発明の第３実施形態における読み出し手法のフローを示す図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明の実施形態について説明する。説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【００１２】
［第１実施形態］
まず、本発明の第１実施形態の不揮発性半導体記憶装置について説明する。
【００１３】
図１は、第１実施形態の不揮発性半導体記憶装置における機能ブロック、及びコントローラ回路の構成を示す図である。
【００１４】
図示するように、不揮発性半導体記憶装置１００は、メモリセルアレイ１、ロウデコーダ（ワード線制御回路）２、センスアンプ回路３、カラムデコーダ４、データ入出力バッファ５、入出力制御回路６、制御信号発生回路７、アドレスデコーダ８、制御電圧生成回路９、及びパラメタ回路１０を備える。また、コントローラ回路２００は、外部制御信号発生回路１１、符号化回路１２、及び誤り訂正回路１３を備える。
【００１５】
メモリセルアレイ１は、行方向のワード線と列方向のビット線によりマトリクス状に配列された複数のメモリセルを有する。１つのメモリセルには、閾値電圧の差により複数ビットを記憶することが可能である。ロウデコーダ（ワード線制御回路）２は、ワード線駆動回路を含み、メモリセルアレイ１内のメモリセルに接続されたワード線の選択及び駆動を行う。センスアンプ回路３は、メモリセルアレイ１内のメモリセルに接続されたビット線に接続されており、ビット線を介してメモリセルからデータの読み出しを行う機能、及びメモリセルから読み出したデータ（読み出しデータ）や書き込みデータを保持するデータラッチ機能を有する。カラムデコーダ４は、メモリセルアレイ１内のメモリセルに接続されたビット線の選択を行う。データの読み出し動作時において、メモリセルからセンスアンプ回路３に読み出されたデータは、データ入出力バッファ５を介して、入出力制御回路６に出力される。
【００１６】
また、入出力制御回路６からデータ入出力バッファ５を介して供給されるコマンドは、制御信号発生回路７でデコードされる。制御信号発生回路７には、チップイネーブル信号／ＣＥ、書き込みイネーブル信号／ＷＥ、読み出しイネーブル信号／ＲＥ、アドレスラッチイネーブル信号ＡＬＥ、コマンドラッチイネーブル信号ＣＬＥ等の外部制御信号が供給される。
【００１７】
制御信号発生回路７は、動作モードに応じて供給される外部制御信号及びコマンドに基づいて、データ書き込み及び消去のシーケンス制御、及びデータ読み出しの制御を行う。読み出し、書き込み、及び消去などの各種動作が制御信号発生回路７により制御されることで、制御電圧生成回路９は各種動作のための電圧を生成する。入出力制御回路６からデータ入出力バッファ５を介して供給されるアドレスは、アドレスデコーダ８介してワード線制御回路２及びカラムデコーダ４に転送される。
【００１８】
また、コントローラ回路２００では、外部制御信号発生回路１１によってＡＬＥ、ＣＬＥ、／ＣＥ、／ＷＥ、／ＲＥの各種制御信号が生成され、これら各種制御信号が記憶装置１００内のパラメタ回路１０へ転送される。符号化回路１２では、外部からの入力データより誤り訂正用の冗長ビットを計算して入力データに付加し、この入力データを記憶装置１００内の入出力制御回路６へ転送する。逆に、記憶装置１００により読み出されたデータは、入出力制御回路６からコントローラ回路２００内の誤り訂正回路１３へ転送される。誤り訂正回路１３に転送されたデータは、誤り訂正回路１３により不良ビットの救済が行われ、外部へ出力される。
【００１９】
なお、本実施形態では、コントローラ回路２００側に誤り訂正回路１３を設けているが、不揮発性半導体記憶装置１００側に誤り訂正回路を設けた構成としてもよい。
【００２０】
図２は、第１実施形態の不揮発性半導体記憶装置におけるメモリセルアレイ１とセンスアンプ回路２の構成を示す図である。
【００２１】
メモリセルアレイ１は、直列接続された複数のメモリセルＭＣ０〜ＭＣ３１と、これらメモリセルの両端に接続された選択ゲートトランジスタＳＧＳＴ，ＳＧＤＴとからなるＮＡＮＤセルが複数配列されて構成されている。言い換えると、メモリセルアレイ１は、行方向のワード線ＷＬ０〜ＷＬ３１と列方向のビット線ＢＬ０〜ＢＬｎにより形成されるマトリクス状の交点にメモリセルが配置されることで構成されている。さらに、選択ゲートトランジスタＳＧＳＴにはソース線ＳＲＣが接続され、選択ゲートトランジスタＳＧＤＴにはセンスアンプユニット３−１が接続されている。
【００２２】
各ワード線に、ワード線がゲートに繋がる全てのトランジスタ（メモリセル）に書き込み電圧、または読み出し電圧を印加することにより一斉に書き込み、または読み出し動作が行われる。書き込みデータ、あるいは読み出しデータはセンスアンプユニット（ＳＡＵ）３−１に保持され、さらにデータ保持と形成のためのラッチユニット（ＬＡＴＵ）３−２においてデータの保持と、読み出し及び書き込みデータの形成が行われる。
【００２３】
また、センスアンプ回路３内の各センスアンプユニット３−１及びラッチユニット３−２へアクセスする場合は、図１に示したカラムデコーダ４によって選択された選択トランジスタＳＴ０〜ＳＴｎによって、唯一のセンスアンプユニット３−１及びラッチユニット３−２のデータをデータ入出力バッファ５へ転送することが可能となっている。
【００２４】
図３に、第１実施形態におけるセンスアンプ回路３内のラッチユニット３−２の回路構成を示す。各ラッチユニット３−２はラッチ回路と演算回路としての機能を有する。詳述すると、各ラッチユニット３−２はデータ保持のためのラッチ０ＤＬ〜３ＤＬを持ち、各ラッチユニット３−２は合わせて４ビットのデータが保持できるものとする。また、ラッチユニット３−２は各ラッチ０ＤＬ〜３ＤＬに保持されたデータを加工することができる。すなわち、論理積演算（ＡＮＤ）や論理和演算（ＯＲ）に相当する動作を実現することが可能となっている。ラッチユニット３−２は、ＰチャネルＭＯＳ電界効果トランジスタ（以下、ＰＭＯＳトランジスタと称す）２１，２７，２８，２９，３０，３５、ＮチャネルＭＯＳ電界効果トランジスタ（以下、ＮＭＯＳトランジスタと称す）２２，２３，２４，２５，２６，３１，３２，３３，３４，３６、パストランジスタ３７、及びインバータＩＶ１〜ＩＶ５を含む。
【００２５】
次に、図３を用いてラッチユニット３−２で行われる具体的な動作例について示す。例として、ラッチ０ＤＬとラッチ１ＤＬの論理積を取った結果を、ラッチ２ＤＬに転送する動作について説明する。
【００２６】
まず始めに、信号ＳＥＴ１と信号ＳＥＴ２を“Ｌ”にすることにより、ノードＬＡＴの充電及びバスＢＵＳの充電をそれぞれ行う。次に、ラッチ０ＤＬ内のパストランジスタ３７の信号ＳＥＬを“Ｈ”とすることにより、ラッチ０ＤＬのノードＤＡＴＡが“Ｈ”ならば、すなわちラッチ０ＤＬに保持されていたデータが“Ｈ”ならば、バスＢＵＳはラッチ０ＤＬのインバータにより放電される。一方、ラッチ０ＤＬに保持されていたデータが“Ｌ”ならば、バスＢＵＳは“Ｈ”を維持する。この動作により、ラッチ０ＤＬに保持されていたデータの反転データがバスＢＵＳへ転送されたことになる。
【００２７】
次に、信号ＬＡＴＬを“Ｈ”にすると同時に、ノードＬＡＴをイコライズ（“Ｈ”）することにより、バスＢＵＳが“Ｈ”（ラッチ０ＤＬが“Ｌ”）ならばノードＬＡＴは放電され、バスＢＵＳが“Ｌ”（ラッチ０ＤＬが“Ｈ”）ならばノードＬＡＴは“Ｈ”を維持する。この結果、ラッチ０ＤＬのデータがノードＬＡＴへ転送される。すなわち、０ＤＬ→ＬＡＴへの転送動作が完了する。
【００２８】
次に、信号ＳＥＴ２を“Ｌ”にして、再びバスＢＵＳを“Ｈ”に充電する。その後、ラッチ１ＤＬ内のパストランジスタ３７の信号ＳＥＬを“Ｈ”とすることにより、ラッチ１ＤＬのノードＤＡＴＡが“Ｈ”ならば、すなわちラッチ１ＤＬに保持されていたデータが“Ｈ”ならば、バスＢＵＳはラッチ１ＤＬのインバータにより放電される。一方、ラッチ１ＤＬに保持されていたデータが“Ｌ”ならば、バスＢＵＳは“Ｈ”を維持する。この動作により、ラッチ１ＤＬに保持されていたデータの反転データがバスＢＵＳへ転送されたことになる。
【００２９】
次に、信号ＬＡＴＬを“Ｈ”にすると同時に、ノードＬＡＴをイコライズ（“Ｈ”）ことにより、バスＢＵＳが“Ｈ”（ラッチ１ＤＬが“Ｌ”）ならばノードＬＡＴは放電され、バスＢＵＳが“Ｌ”（ラッチ１ＤＬが“Ｈ”）ならばノードＬＡＴは“Ｈ”を維持する。これらの一連の動作により、ラッチ０ＤＬ、１ＤＬが共に“Ｈ”の場合以外は、ノードＬＡＴは放電されることになる。この結果、ラッチ０ＤＬと１ＤＬの論理積を取った結果がノードＬＡＴへ転送される。すなわち、０ＤＬ＆１ＤＬ→ＬＡＴという転送動作が完了したことになる。なお、＆は論理積演算であることを示す。
【００３０】
次に、信号ＳＥＬ２を“Ｌ”にすることにより、バスＢＵＳを再び“Ｈ”に充電する。その後、信号ＢＵＳＬ１を“Ｈ”にすると、信号ＬＡＴ（ノードＬＡＴ）が“Ｈ”の場合、バスＢＵＳは放電され、信号ＬＡＴが“Ｌ”の場合、バスＢＵＳは“Ｈ”を維持する。この結果、ノードＬＡＴに保持されていたデータの反転データがバスＢＵＳへ転送される。すなわち、ＬＡＴｎ（ｎは反転であることを示す）→ＢＵＳへの転送動作が完了する。
【００３１】
最後に、ラッチ２ＤＬをイコライズしてラッチ２ＤＬのパストランジスタ３７をオンにすることにより、バスＢＵＳが“Ｌ”の場合はノードＤＡＴＡが“Ｈ”に、バスＢＵＳが“Ｈ”の場合はノードＤＡＴＡが“Ｌ”になる。この結果、バスＢＵＳに保持されていたデータの反転データがラッチ２ＤＬへ転送される。すなわち、ＢＵＳｎ（ｎは反転であることを示す）→２ＤＬへの転送動作が完了する。以上により、ラッチ０ＤＬと１ＤＬの論理積を取った結果がラッチ２ＤＬへ転送される。すなわち、０ＤＬ＆１ＤＬ→２ＤＬという転送動作が完了したことになる。
【００３２】
次の例として、ラッチ０ＤＬとラッチ１ＤＬの論理和を取った結果を、ラッチ２ＤＬに転送する動作について説明する。
【００３３】
まず始めに、信号ＳＥＴ１と信号ＳＥＴ２を“Ｌ”にすることにより、ノードＬＡＴの充電及びバスＢＵＳの充電をそれぞれ行う。次に、前述した論理積演算の場合と同様に、ラッチ０ＤＬに保持されていたデータの反転データをバスＢＵＳへ転送する動作を行う。すなわち、０ＤＬｎ→ＢＵＳの動作を行う。
【００３４】
次に、信号ＬＡＴＨを“Ｈ”にすると同時に、ノードＬＡＴをイコライズ（“Ｈ”）することにより、バスＢＵＳが“Ｌ”（ラッチ０ＤＬが“Ｈ”）ならばノードＬＡＴは放電され、バスＢＵＳが“Ｈ”（ラッチ０ＤＬが“Ｌ”）ならばノードＬＡＴは“Ｈ”を維持する。この動作により、ラッチ０ＤＬに保持されていたデータの反転データがノードＬＡＴへ転送される。すなわち、０ＤＬｎ→ＬＡＴへの転送動作が完了する。同様に、ラッチ１ＤＬの反転データをバスＢＵＳへ転送した後、信号ＬＡＴＨを“Ｈ”にすることにより、ラッチ１ＤＬに保持されていたデータの反転データがノードＬＡＴへ転送される。この結果、０ＤＬｎ＆１ＤＬｎ→ＬＡＴという転送動作が完了する。
【００３５】
次に、信号ＳＥＴ２を“Ｌ”にして、再びバスＢＵＳを“Ｈ”に充電する。その後、信号ＢＵＳＨ１を“Ｈ”にすることにより、信号ＬＡＴｎ（ノードＬＡＴの反転データ）が“Ｈ”ならばバスＢＵＳは放電され、信号ＬＡＴｎが“Ｌ”ならばバスＢＵＳは“Ｈ”を維持する。この結果、ノードＬＡＴに保持されていたデータがバスＢＵＳへ転送される。すなわち、ＬＡＴ→ＢＵＳという転送動作が完了する。
【００３６】
最後に、ラッチ２ＤＬをイコライズしてラッチ２ＤＬのパストランジスタ３７をオンにすることにより、バスＢＵＳが“Ｌ”の場合はノードＤＡＴＡが“Ｈ”に、バスＢＵＳが“Ｈ”の場合はノードＤＡＴＡが“Ｌ”になる。この結果、バスＢＵＳに保持されていたデータの反転データがラッチ２ＤＬへ転送される。すなわち、ＢＵＳｎ（ｎは反転であることを示す）→２ＤＬへの転送動作が完了する。以上により、（０ＤＬｎ＆１ＤＬｎ）ｎ→０ＤＬ＋１ＤＬ→２ＤＬが完了したことになる。なお、＋は論理和演算であることを示す。今後、この２種類の動作、論理積演算（＆）と論理和演算（＋）を用いることで本発明の実施形態の動作を説明していく。
【００３７】
次に、図４を用いて第１実施形態における読み出し動作を説明する。図４は、センスアンプ回路３内のセンスアンプユニット３−１の構成を示す回路図である。センスアンプユニット３−１は、複数のＰＭＯＳトランジスタ４１，４２，４３と、複数のＮＭＯＳトランジスタ４５，４６，４７，４８，４９，５０と、例えばクロックドインバータ回路からなるラッチ回路ＬＡＴ１とにより構成されている。
【００３８】
ＰＭＯＳトランジスタ４１のソースは電源ＶDDが供給されるノードに接続され、ドレインはＮＭＯＳトランジスタ４５、４６を介してラッチユニット３−２に接続される。ＰＭＯＳトランジスタ４１のゲートには信号ＢＬＣ１が供給され、ＮＭＯＳトランジスタ４５，４６のゲートには信号ＢＬＣ２，ＢＬＣ３がそれぞれ供給されている。ＮＭＯＳトランジスタ４５とＮＭＯＳトランジスタ４６の接続ノードは、ビット線ＢＬに接続されると共に、ＮＭＯＳトランジスタ４７、４８を介して接地されている。ＮＭＯＳトランジスタ４７のゲートはラッチ回路ＬＡＴ１のノードＩＮＶに接続され、ＮＭＯＳトランジスタ４７はラッチ回路ＬＡＴ１に保持されたデータにより制御される。さらに、ＮＭＯＳトランジスタ４８のゲートには、信号ＤＩＳが供給されている。
【００３９】
また、ＰＭＯＳトランジスタ４２のソースは電源ＶDDが供給されるノードに接続され、ドレインはＰＭＯＳトランジスタ４３、ＮＭＯＳトランジスタ４９，５０を介してラッチユニット３−２に接続される。ＰＭＯＳトランジスタ４２のゲートには信号ＢＬＣ４が供給され、ＰＭＯＳトランジスタ４３のゲートはＮＭＯＳトランジスタ４４を介してＰＭＯＳトランジスタ４１とＮＭＯＳトランジスタ４５の接続ノードに接続されている。ＮＭＯＳトランジスタ４４のゲートには信号ＸＸＬが供給され、ＮＭＯＳトランジスタ４９のゲートにはリセット信号ＲＳＴが供給されている。ＰＭＯＳトランジスタ４３とＮＭＯＳトランジスタ４９の接続ノードにはラッチ回路ＬＡＴ１のノードＩＮＶが接続されている。ラッチ回路ＬＡＴ１の反転ノードはＮＭＯＳトランジスタ５０を介してラッチユニット３−２に接続されている。このＮＭＯＳトランジスタ５０のゲートには信号ＢＬＣ５が供給されている。
【００４０】
以下に、図４に示したセンスアンプユニットにおける読み出し動作について概略的に説明する。
【００４１】
メモリセルからデータを読み出す場合、先ず、信号ＢＬＣ１、ＢＬＣ３、ＤＩＳ、ＸＸＬが“Ｌ”に、信号ＢＬＣ２が“Ｈ”にされ、ビット線が“Ｈ”に充電される。この後、信号ＢＬＣ２を“Ｌ”として、選択ワード線に読み出し電圧が供給される。
【００４２】
メモリセルの閾値電圧が読み出し電圧より高い場合、メモリセルはオフ状態であり、ビット線は“Ｈ”に保持される。また、メモリセルの閾値電圧が読み出し電圧より低い場合、メモリセルはオン状態となり、ビット線の電荷が放電される。このため、ビット線は“Ｌ”となる。次いで、信号ＢＬＣ３が“Ｈ”になり、ビット線の電位がラッチユニット３−２に読み出される。
【００４３】
次に、図５を用いて本発明が解決したい問題を詳細に説明する。図５は、２値のデータを保持可能なメモリセルにおける閾値電圧の分布を示す図である。
【００４４】
横軸のほぼ中央が読み出し電圧である。閾値分布の裾の部分に着目したとき、“１”データの上裾に閾値を持つメモリセルと“０”データの下裾に閾値を持つメモリセルは、共に読み出し電圧に近い閾値を持っている。このようなメモリセルは、プロセスの微細化に伴い、フローティングゲートと基板間における電子の不安定な動きが閾値として大きく見えたり、又は読み出し電圧に乗るノイズの影響などで、“０”データとして判定されたり、“１”データとして判定されたりと、データが正しく定まらない傾向（ランダムエラー）を持つことが確認されている。本発明の実施形態では、この不安定なデータを正しいデータとして読み出すための手法を提案する。
【００４５】
図６は、第１実施形態の不揮発性半導体記憶装置における読み出し手法のフローを示す図である。
【００４６】
まず、読み出し対象の複数のメモリセルに対して１回目の読み出し動作（read1）を行い、読み出した結果をラッチユニット３−２内のラッチ０ＤＬに格納する（ステップＳ１）。次に、１回目の読み出し動作が行われたメモリセルと同じメモリセルに対して２回目の読み出し動作（read2）を行い、読み出した結果をラッチユニット３−２内のラッチ１ＤＬに格納する（ステップＳ２）。最後に、１回目，２回目の読み出し動作が行われたメモリセルと同じメモリセルに対して３回目の読み出し動作（read3）を行い、読み出した結果をラッチユニット３−２内のラッチ２ＤＬに格納する（ステップＳ３）。１回目から３回目までの読み出し動作における読み出し条件、例えば読み出し電圧は全て同じ値とする。
【００４７】
次に、前述したラッチユニット３−２における論理積演算（＆）と論理和演算（＋）を用いて、０ＤＬ＆１ＤＬ＋１ＤＬ＆２ＤＬ＋０ＤＬ＆２ＤＬ→０ＤＬという動作を行う（ステップＳ４）。具体的には、中間データ保持のためのラッチ３ＤＬを用いて、０ＤＬ＆１ＤＬ→３ＤＬ、１ＤＬ＆２ＤＬ→１ＤＬ、１ＤＬ＋３ＤＬ→３ＤＬ、０ＤＬ＆２ＤＬ→０ＤＬ、０ＤＬ＋３ＤＬ→０ＤＬを行うことで実現する。その後、ラッチ０ＤＬに格納されたデータを、メモリセルに記憶されていたデータ（読み出しデータ）として出力する（ステップＳ５）。
【００４８】
ここで、ステップＳ４における、０ＤＬ＆１ＤＬ＋１ＤＬ＆２ＤＬ＋０ＤＬ＆２ＤＬを行った際の演算結果を、０ＤＬから２ＤＬにおける値の全ての組合せと併せて、図７に表にて示す。この表より、“１”、“０”がそれぞれ２回以上読み出された場合、“１”または“０”として判定されている、つまり多数決が実現できていることが分かる。この結果、多数決を取ることによりメモリセルに記憶されていたデータが、“０”データか“１”データかの確度を上げることが可能である。
【００４９】
以上説明したように本実施形態によれば、読み出し電圧付近に閾値を持つメモリセルに対する読み出しにおいて、通常の１回だけの読み出しの場合と比較して、メモリセルに記憶されたデータの読み出し確度を高めることができる。この結果、誤り訂正回路１３の訂正能力（訂正可能なビット数）を下げた場合でも、読み出しデータの十分な訂正が可能となる。
【００５０】
なお、本実施形態では簡単のために、３回の読み出し動作しか行っていないが、５，７，…，２ｎ＋１(ｎは１以上の整数)回の読み出し動作を行い、これらの結果の多数決を取ることにより、さらにデータの確度を上げることが可能である。
【００５１】
［第２実施形態］
次に、本発明の第２実施形態の不揮発性半導体記憶システムについて説明する。第２実施形態において、前記第１実施形態における構成と同様の部分には同じ符号を付す。
【００５２】
第２実施形態では、記憶装置１００内のラッチユニットで多数決判定を行わず、コントローラ回路２００内に追加した読み出しデータラッチ回路及び多数決判定回路を用いて多数決判定を行う。
【００５３】
図８は、第２実施形態の不揮発性半導体記憶システムにおける機能ブロックの構成を示す図である。図示するように、第２実施形態では、図１に示した構成において、コントローラ回路２００内に読み出しデータラッチ回路１４と多数決判定回路１５が新たに追加されている。読み出しデータラッチ回路１４は、入出力制御回路６から出力されたデータを記憶する。多数決判定回路１５は、読み出しデータラッチ回路１４に記憶されたデータの多数決を取り、多数決にて決定されたデータをメモリセルに記憶されていたデータ（読み出しデータ）として採用する。
【００５４】
図９に、読み出しデータラッチ回路１４の回路構成を示す。読み出しデータラッチ回路１４は、入力データセレクタ１４−１とシフトレジスタ群１４−２を有する。シフトレジスタ群１４−２は、ｍ（ｍは１以上の整数）個のフリップフロップが直列に接続されたｍビットシフトレジスタが、２ｎ＋１（ｎは１以上の整数）個並列に配列されて形成されている。また、多数決判定回路１５には、例えば第１実施形態にて述べたラッチユニット１３−２と同等な回路を用いればよい。
【００５５】
不揮発性半導体記憶装置１００側からの出力、つまり読み出しデータがコントローラ回路２００側に読み出されると、入力データセレクタ１４−１が何回目の読み出しデータであるかに従い、シフトレジスタ群１４−２中のどのデータラッチに振り分けるかを決定する。２ｎ＋１回の読み出し動作によって全てのシフトレジスタが満たされると、多数決判定回路１５によりシフトレジスタ群１４−２に格納されたデータの多数決を取り、多い方のデータをメモリセルに記憶されていたデータとして、誤り訂正回路１３へ転送する。
【００５６】
以上の動作により、不揮発性半導体記憶装置の外部、例えばコントローラ内で多数決判定を行った場合でも、読み出し電圧付近に閾値を持つメモリセルに対する読み出しにおいて、通常の１回だけの読み出しの場合と比較して、メモリセルに記憶されたデータの読み出し確度を高めることができる。この結果、誤り訂正回路１３の訂正能力（訂正可能なビット数）を下げた場合でも、読み出しデータの十分な訂正が可能となる。その他の構成及び効果は前述した第１実施形態と同様である。
【００５７】
［第３実施形態］
次に、本発明の第３実施形態の不揮発性半導体記憶装置及びそのシステムについて説明する。第３実施形態では、第１，第２実施形態に示した構成において読み出し手法のフローが異なる。その他の構成は前記第１，第２実施形態と同様である。
【００５８】
図１０は、第３実施形態における読み出し手法のフローを示す図である。
【００５９】
まず、１回目の読み出し動作（read1）と２回目の読み出し動作（read2）で読み出した結果をラッチ０ＤＬ，１ＤＬにそれぞれ格納する（ステップＳ１，Ｓ２）。続いて、ラッチ０ＤＬと１ＤＬの結果の排他的論理和（ＸＯＲ）を取る。ここで、排他的論理和の結果が０の場合、すなわちread1とread2の結果が等しい場合、このときの読み出し対象のメモリセルのビット線にはプリチャージを行わず（ステップＳ６）、３回目の読み出し動作（read3）を行い、読み出した結果をラッチ２ＤＬに格納する（ステップＳ３）。
【００６０】
ここで、ステップＳ６及びＳ３では、read1とread2の結果が等しくなったメモリセルのビット線にはプリチャージを行っていないため、このメモリセルに対しての３回目の読み出し動作は行われないことになる。なお、前述したように、１回目から３回目までの読み出し動作における読み出し条件、例えば読み出し電圧は全て同じ値とする。
【００６１】
次に、前述したラッチユニット３−２における論理積演算（＆）と論理和演算（＋）を用いて、０ＤＬ＆１ＤＬ＋１ＤＬ＆２ＤＬ＋０ＤＬ＆２ＤＬ→０ＤＬという動作を行う（ステップＳ４）。その後、ラッチ０ＤＬに格納されたデータを、メモリセルに記憶されていたデータ（読み出しデータ）として出力する（ステップＳ５）。
【００６２】
第３実施形態では、１回目の読み出し動作と２回目の読み出し動作の結果が等しい場合、このときの読み出し対象のメモリセルのビット線にはプリチャージを行わず、その他のメモリセルのビット線だけにプリチャージを行う。すなわち、１回目と２回目の読み出し動作の結果が等しいメモリセルに対しては、３回目の読み出し動作を行わない。これにより、１回目と２回目の読み出し動作の結果が等しいメモリセルに対しては、３回目の読み出し動作（read3）の結果は考慮すること無しに、メモリセルからの読み出しデータを確定する。すなわち、１回目と２回目の読み出し動作の結果が異なる他のメモリセルに対してread3を行っている際に、１回目と２回目の読み出し動作の結果が等しいメモリセルに対してはread3を行わず、ロックアウト状態を保持する。このように、１回目と２回目の読み出し動作の結果が等しいメモリセルに対してはread3を行わないことにより、このメモリセルのビット線の充放電によって生じる隣接ビット線へのノイズを緩和する効果が期待できる。
【００６３】
本発明の実施形態では、同一のメモリセルに対して同じ読み出し電圧で複数回読んだ結果の多数決を取ることにより、ランダムエラーを持つメモリセルを検知し、多数決の結果から多い方の結果を読み出しデータと決定する。これにより、ランダムエラーの発生確率を低減し、誤り訂正回路におけるＥＣＣ(error checking and correction)の訂正能力削減を可能にする。
【００６４】
本発明の実施形態によれば、メモリセルの読み出し時に、メモリセルに記憶されていたデータが正しく読まれたり間違って読まれたりするランダムエラーを補正することができる不揮発性半導体記憶装置を提供できる。言い換えると、読み出し時においてランダムエラーの発生確率を低減できる不揮発性半導体記憶装置を提供できる。
【００６５】
また、前述した各実施形態はそれぞれ、単独で実施できるばかりでなく、適宜組み合わせて実施することも可能である。さらに、前述した各実施形態には種々の段階の発明が含まれており、各実施形態において開示した複数の構成要件の適宜な組み合わせにより、種々の段階の発明を抽出することも可能である。
【符号の説明】
【００６６】
１…メモリセルアレイ１、２…ロウデコーダ（ワード線制御回路）、３…センスアンプ回路、３−１…センスアンプユニット（ＳＡＵ）、３−２…ラッチユニット（ＬＡＴＵ）、４…カラムデコーダ、５…データ入出力バッファ、６…入出力制御回路、７…制御信号発生回路、８…アドレスデコーダ、９…制御電圧生成回路、１０…パラメタ回路、１１…外部制御信号発生回路、１２…符号化回路、１３…誤り訂正回路、１４…読み出しデータラッチ回路、１４−１…入力データセレクタ、１４−２…シフトレジスタ群、１５…多数決判定回路、１００…不揮発性半導体記憶装置、２００…コントローラ回路。
【図１】
2010165400.tif 000003
【図２】
2010165400.tif 000004
【図３】
2010165400.tif 000005
【図４】
2010165400.tif 000006
【図５】
2010165400.tif 000007
【図６】
2010165400.tif 000008
【図７】
2010165400.tif 000009
【図８】
2010165400.tif 000010
【図９】
2010165400.tif 000011
【図１０】
2010165400.tif 000012