(57)【要約】【課題】動作性能を向上出来る半導体記憶装置を提供すること。【解決手段】電荷蓄積層１０４と制御ゲート１０６とを含み、閾値電圧に応じて２値以上のデータを保持可能なメモリセルＭＴと、前記メモリセルＭＴのドレインに電気的に接続されたビット線ＢＬと、前記メモリセルＭＴのソースに電気的に接続されたソース線ＳＬと、前記データの読み出し動作時及びベリファイ動作時において、前記ソース線ＳＬに流れる電流を検出する検出回路７０と、前記ビット線ＢＬに流れる電流をセンスして、前記データを読み出すセンスアンプ２０とを具備し、前記検出回路７０で検出された電流量に応じて、前記センスアンプ２０が同一データについて再度センスするか否かが決定される。【選択図】図１
2011040166.tif 000002
【特許請求の範囲】
【請求項１】
電荷蓄積層と制御ゲートとを含み、２値以上のデータを保持可能なメモリセルと、
前記メモリセルのドレインに電気的に接続されたビット線と、
前記メモリセルのソースに電気的に接続されたソース線と、
前記データの読み出し動作及びベリファイ動作時において、前記ビット線に流れる電流をセンスして、前記データを読み出すセンスアンプと、
前記データの読み出し動作時及びベリファイ動作時において、前記ビット線のプリチャージ電位を制御するビット線ドライバと、
前記ビット線ドライバを制御する制御回路と
を具備し、前記センスアンプは、同一の前記データにつき複数回にわたって読み出しを行い、
前記制御回路は、前記ビット線ドライバに対して、読み出しレベルの最も低いデータの１回目の読み出し時における前記プリチャージ電位を第１電位とし、それ以降の読み出し時における前記プリチャージ電位を、前記第１電位よりも高い第２電位とするよう、命令する、
ことを特徴とする半導体記憶装置。
【請求項２】
前記制御回路は、前記ビット線ドライバに対して、消去ベリファイ時における前記プリチャージ電位を、前記第１電位とするよう、命令する、
ことを特徴とする請求項１記載の半導体記憶装置。
【請求項３】
前記データの読み出し動作時及びベリファイ動作時において、前記ソース線の電位を制御するソース線制御回路を更に備え、
前記ソース線制御回路は、読み出しレベルの最も低いデータの１回目の読み出し時における前記ソース線の電位を第３電位とし、それ以降の読み出し時における前記ソース線の電位を、前記第３電位よりも低い第４電位とする、
ことを特徴とする請求項１記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、半導体記憶装置に関する。例えば、ＮＡＮＤ型フラッシュメモリの読み出し動作に関する。
【背景技術】
【０００２】
従来、不揮発性の半導体メモリとしてＮＡＮＤ型フラッシュメモリが知られている。またＮＡＮＤ型フラッシュメモリでは、データの読み出し方法として、電流をセンスする方法を知られている（例えば特許文献１参照）。
【０００３】
本手法であると、ビット線の電位を一定に保つことで、ビット線間のノイズの影響を低減している。しかしながら、ビット線の電位を一定とするために、ビット線からソース線にセル電流を流し続ける必要がある。すると、１ページのサイズが例えば数Ｋバイト程度の場合、セル電流の総計は１００ｍＡ程度の非常に大きな値となる。そのため、セル電流の総計が、１チップに許される電流スペックを超えてしまい、製品としての信頼性を悪化させる恐れがあった。
【０００４】
また電流をセンスする方法では、セル電流が大きいことを前提として、同一のデータにつき複数回のセンス動作を行っている。しかし、データパターンによってはセル電流が小さい場合もあり得る。つまり、この場合には、センス動作は１回で十分であり、複数回のセンス動作は無駄である。その結果、読み出し動作に必要な時間が無駄に長くなるという問題があった。
【０００５】
以上のように、従来のＮＡＮＤ型フラッシュメモリであると、セル電流の大小に起因して、その動作性能が悪化するという問題があった。
【特許文献１】特表２００６−５００７２７号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
この発明は、動作性能を向上出来る半導体記憶装置を提供する。
【課題を解決するための手段】
【０００７】
この発明の一態様に係る半導体記憶装置は、電荷蓄積層と制御ゲートとを含み、２値以上のデータを保持可能なメモリセルと、前記メモリセルのドレインに電気的に接続されたビット線と、前記メモリセルのソースに電気的に接続されたソース線と、前記データの読み出し動作及びベリファイ動作時において、前記ビット線に流れる電流をセンスして、前記データを読み出すセンスアンプと、前記データの読み出し動作時及びベリファイ動作時において、前記ビット線のプリチャージ電位を制御するビット線ドライバと、前記ビット線ドライバを制御する制御回路とを具備し、前記センスアンプは、同一の前記データにつき複数回にわたって読み出しを行い、前記制御回路は、前記ビット線ドライバに対して、読み出しレベルの最も低いデータの１回目の読み出し時における前記プリチャージ電位を第１電位とし、それ以降の読み出し時における前記プリチャージ電位を、前記第１電位よりも高い第２電位とするよう、命令する。
【発明の効果】
【０００８】
本発明によれば、動作性能を向上出来る半導体記憶装置を提供出来る。
【図面の簡単な説明】
【０００９】
【図１】この発明の第１の実施形態に係るフラッシュメモリのブロック図。
【図２】この発明の第１の実施形態に係るメモリセルアレイの断面図。
【図３】この発明の第１の実施形態に係るメモリセルの閾値分布を示すグラフ。
【図４】この発明の第１の実施形態に係るセンスアンプの回路図。
【図５】この発明の第１の実施形態に係るメモリセルユニットの回路図。
【図６】この発明の第１の実施形態に係るメモリセルユニットの一部領域の断面図。
【図７】この発明の第１の実施形態に係るフラッシュメモリにおける、読み出しレベルとワード線電圧との関係を示すグラフ。
【図８】この発明の第１の実施形態に係るセンスアンプの回路図。
【図９】この発明の第１の実施形態に係るセンスアンプの回路図。
【図１０】この発明の第１の実施形態に係るセンスアンプの回路図。
【図１１】この発明の第１の実施形態に係るセンスアンプの回路図。
【図１２】この発明の第１の実施形態に係るフラッシュメモリの動作を示すフローチャート。
【図１３】この発明の第１の実施形態に係るフラッシュメモリの一部領域の回路図。
【図１４】この発明の第１の実施形態に係るフラッシュメモリにおける、読み出し動作時の各種電圧のタイミングチャート。
【図１５】この発明の第１の実施形態に係るフラッシュメモリにおける、読み出し動作時の各種電圧のタイミングチャート。
【図１６】フラッシュメモリにおける、読み出し動作時の各種電圧のタイミングチャート。
【図１７】この発明の第１の実施形態に係るフラッシュメモリにおける、読み出し動作時の各種電圧のタイミングチャート。
【図１８】この発明の第２の実施形態に係るフラッシュメモリのブロック図。
【図１９】この発明の第２の実施形態に係るフラッシュメモリの動作を示すフローチャート。
【図２０】この発明の第２の実施形態に係るフラッシュメモリにおける、読み出し動作時の各種電圧のタイミングチャート。
【図２１】プリチャージレベルとセル電流の総計との関係を示すグラフ。
【図２２】この発明の第２の実施形態に係るメモリセルトランジスタの回路図であり、読み出し時における電圧関係を示す図。
【図２３】この発明の第２の実施形態に係るフラッシュメモリにおける、プリチャージレベルとセル電流の総計との関係を示すグラフ。
【図２４】この発明の第３の実施形態に係るフラッシュメモリのブロック図。
【図２５】この発明の第４の実施形態に係るフラッシュメモリのブロック図。
【図２６】この発明の第４の実施形態に係るフラッシュメモリの動作を示すフローチャート。
【図２７】この発明の第４の実施形態に係るフラッシュメモリにおける、読み出し動作時の各種電圧のタイミングチャート。
【図２８】この発明の第５の実施形態に係るフラッシュメモリのブロック図。
【図２９】この発明の第６の実施形態に係るフラッシュメモリのブロック図。
【図３０】この発明の第７の実施形態に係るソース線制御回路及び検出回路のブロック図。
【図３１】この発明の第７の実施形態に係るフラッシュメモリの動作を示すフローチャート。
【図３２】この発明の第７の実施形態に係るフラッシュメモリにおける、読み出し動作時の各種電圧のタイミングチャート。
【図３３】この発明の第７の実施形態に係るフラッシュメモリにおける、ソース線の電位とセル電流の総計との関係を示すグラフ。
【図３４】この発明の第８の実施形態に係るソース線制御回路及び検出回路のブロック図。
【図３５】この発明の第８の実施形態に係るフラッシュメモリの動作を示すフローチャート。
【図３６】この発明の第８の実施形態に係るフラッシュメモリにおける、読み出し動作時の各種電圧のタイミングチャート。
【発明を実施するための形態】
【００１０】
以下、この発明の実施形態につき図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【００１１】
［第１の実施形態］  
この発明の第１の実施形態に係る半導体記憶装置について、ＮＡＮＤ型フラッシュメモリを例に挙げて説明する。
【００１２】
＜ＮＡＮＤ型フラッシュメモリの構成＞  
図１は、この発明の第１の実施形態に係るＮＡＮＤ型フラッシュメモリのブロック図である。図示するようにＮＡＮＤ型フラッシュメモリ１は、メモリセルアレイ１０、センスアンプ２０、ロウデコーダ３０、ビット線ドライバ４０、ＭＯＳトランジスタ５０、ソース線制御回路６０、検出回路７０、シーケンサ８０、及びコア制御回路９０を備えている。
【００１３】
まずメモリセルアレイ１０について説明する。メモリセルアレイ１０は、複数のメモリセルユニット１１を備えている。メモリセルユニット１１の各々は、例えば３２個のメモリセルトランジスタＭＴ０〜ＭＴ３１と、選択トランジスタＳＴ１、ＳＴ２とを含んでいる。以下、メモリセルトランジスタＭＴ０〜ＭＴ３１を区別しない場合には、一括してメモリセルトランジスタＭＴと呼ぶことにする。メモリセルトランジスタＭＴは、半導体基板上にゲート絶縁膜を介在して形成された電荷蓄積層（例えば浮遊ゲート）と、電荷蓄積層上にゲート間絶縁膜を介在して形成された制御ゲートとを有する積層ゲート構造を備えている。なお、メモリセルトランジスタＭＴの個数は３２個に限られず、８個や１６個、６４個、１２８個、２５６個等であってもよく、その数は限定されるものではない。メモリセルトランジスタＭＴは、隣接するもの同士でソース、ドレインを共有している。そして、選択トランジスタＳＴ１、ＳＴ２間に、その電流経路が直列接続されるようにして配置されている。直列接続されたメモリセルトランジスタＭＴの一端側のドレインは選択トランジスタＳＴ１のソースに接続され、他端側のソースは選択トランジスタＳＴ２のドレインに接続されている。
【００１４】
同一行にあるメモリセルトランジスタＭＴの制御ゲートはワード線ＷＬ０〜ＷＬ３１のいずれかに共通接続され、同一行にあるメモリセルの選択トランジスタＳＴ１、ＳＴ２のゲートは、それぞれセレクトゲート線ＳＧＤ、ＳＧＳに共通接続されている。なお説明の簡単化のため、以下ではワード線ＷＬ０〜ＷＬ３１を、単にワード線ＷＬと呼ぶことがある。また、メモリセルアレイ１０において同一列にある選択トランジスタＳＴ１のドレインは、ビット線ＢＬ０〜ＢＬｍ（ｍは自然数）に共通接続される。ビット線ＢＬ０〜ＢＬｍについても、単にビット線ＢＬと呼ぶことがある。選択トランジスタＳＴ２のソースはソース線ＳＬに共通接続される。なお、選択トランジスタＳＴ１、ＳＴ２は必ずしも両方必要ではなく、メモリセルユニット１１を選択出来るのであればいずれか一方のみが設けられていても良い。
【００１５】
図１では、１行のメモリセルユニット１１のみを図示している。しかし、メモリセルアレイ１０内には複数行のメモリセルユニット１１が設けられても良い。この場合、同一列にあるメモリセルユニット１１は同一のビット線ＢＬに接続される。また、同一のワード線ＷＬに接続された複数のメモリセルトランジスタＭＴには一括してデータが書き込まれ、この単位をページと呼ぶ。更に、同一行にある複数のメモリセルユニット１１は一括してデータが消去され、この単位をメモリブロックと呼ぶ。
【００１６】
次に、上記メモリセルアレイ１０の備えるメモリセルユニット１１の構成について、図２を用いて説明する。図２は、メモリセルユニット１１のビット線方向に沿った断面図である。
【００１７】
図示するように、ｐ型半導体基板１００の表面領域内にｎ型ウェル領域１０１が形成され、ｎ型ウェル領域１０１の表面領域内にｐ型ウェル領域１０２が形成されている。ｐ型ウェル領域１０２上にはゲート絶縁膜１０３が形成され、ゲート絶縁膜１０３上に、メモリセルトランジスタＭＴ及び選択トランジスタＳＴ１、ＳＴ２のゲート電極が形成されている。メモリセルトランジスタＭＴ及び選択トランジスタＳＴ１、ＳＴ２のゲート電極は、ゲート絶縁膜１０３上に形成された多結晶シリコン層１０４、多結晶シリコン層１０４上に形成されたゲート間絶縁膜１０５、及びゲート間絶縁膜１０５上に形成された多結晶シリコン層１０６を有している。ゲート間絶縁膜１０５は、例えばシリコン酸化膜、またはシリコン酸化膜とシリコン窒化膜との積層構造であるＯＮ膜、ＮＯ膜、またはＯＮＯ膜、またはそれらを含む積層構造、またはＴｉＯ２、ＨｆＯ２、Ａｌ２Ｏ３、ＨｆＡｌＯｘ、ＨｆＡｌＳｉ膜とシリコン酸化膜またはシリコン窒化膜との積層構造で形成される。またゲート絶縁膜１０３はトンネル絶縁膜として機能するものである。
【００１８】
メモリセルトランジスタＭＴにおいては、多結晶シリコン層１０４は浮遊ゲート（ＦＧ）として機能する。他方、多結晶シリコン層１０６は、ビット線に直交する方向で隣接するもの同士で共通接続されており、制御ゲート（ワード線ＷＬ）として機能する。選択トランジスタＳＴ１、ＳＴ２においては、多結晶シリコン層１０４、１０６はワード線方向で隣接するもの同士で共通接続されている。そして、多結晶シリコン層１０４、１０６が、セレクトゲート線ＳＧＳ、ＳＧＤとして機能する。なお、多結晶シリコン層１０４のみがセレクトゲート線として機能しても良い。この場合、選択トランジスタＳＴ１、ＳＴ２の多結晶シリコン層１０６の電位は、一定の電位、またはフローティングの状態とされる。ゲート電極間に位置する半導体基板１００表面内には、ｎ＋型不純物拡散層１０７が形成されている。不純物拡散層１０７は隣接するトランジスタ同士で共用されており、ソース（Ｓ）またはドレイン（Ｄ）として機能する。また、隣接するソースとドレインとの間の領域は、電子の移動領域となるチャネル領域として機能する。これらのゲート電極、不純物拡散層１０７、及びチャネル領域によって、メモリセルトランジスタＭＴ及び選択トランジスタＳＴ１、ＳＴ２となるＭＯＳトランジスタが形成されている。
【００１９】
半導体基板１００上には、上記メモリセルトランジスタＭＴ及び選択トランジスタＳＴ１、ＳＴ２を被覆するようにして、層間絶縁膜１０８が形成されている。層間絶縁膜１０８中には、ソース側の選択トランジスタＳＴ２の不純物拡散層（ソース）１０７に達するコンタクトプラグＣＰ１が形成されている。そして層間絶縁膜１０８上には、コンタクトプラグＣＰ１に接続される金属配線層１０９が形成されている。金属配線層１０９はソース線ＳＬの一部として機能する。また層間絶縁膜１０８中には、ドレイン側の選択トランジスタＳＴ１の不純物拡散層（ドレイン）１０７に達するコンタクトプラグＣＰ２が形成されている。そして層間絶縁膜１０８上に、コンタクトプラグＣＰ２に接続される金属配線層１１０が形成されている。
【００２０】
層間絶縁膜１０８上には、金属配線層１０９、１１０を被覆するようにして、層間絶縁膜１１１が形成されている。そして層間絶縁膜１１１中に、金属配線層１１０に達するコンタクトプラグＣＰ３が形成されている。そして、層間絶縁膜１１１上には、複数のコンタクトプラグＣＰ３に共通に接続された金属配線層１１２が形成されている。金属配線層１１２はビット線ＢＬとして機能する。
【００２１】
次に、上記メモリセルトランジスタＭＴの閾値分布について図３を用いて説明する。図３は、横軸に閾値電圧Ｖthをとり、縦軸にメモリセルトランジスタＭＴの存在確率を示したグラフである。
【００２２】
図示するように、各々のメモリセルトランジスタＭＴは８値（8-levels）のデータ（３ビットデータ）を保持出来る。すなわちメモリセルトランジスタＭＴは、閾値電圧Ｖthの低い順に“０”、“１”、“２”、“３”、…“７”の８種のデータを保持出来る。メモリセルトランジスタＭＴにおける“０”データの閾値電圧Ｖth０は、Ｖth０＜Ｖ０１である。“１”データの閾値電圧Ｖth１は、Ｖ０１＜Ｖth１＜Ｖ１２である。“２”データの閾値電圧Ｖth２は、Ｖ１２＜Ｖth２＜Ｖ２３である。“３”データの閾値電圧Ｖth３は、Ｖ２３＜Ｖth３＜Ｖ３４である。“４”データの閾値電圧Ｖth４は、Ｖ３４＜Ｖth４＜Ｖ４５である。“５”データの閾値電圧Ｖth５は、Ｖ４５＜Ｖth５＜Ｖ５６である。“６”データの閾値電圧Ｖth６は、Ｖ５６＜Ｖth６＜Ｖ６７である。そして、“７”データの閾値電圧Ｖth７は、Ｖ６７＜Ｖth７である。
【００２３】
そして、例えば上記電圧Ｖ１２が０Ｖである。すなわち、“０”データ及び“１”データの閾値電圧Ｖth０、Ｖth１は負の値であり、“２”〜“７”データの閾値電圧Ｖth２〜Ｖth７は正の値である。以下では、“ｉ”データ（ｉは１〜７のいずれか）についての電圧Ｖ（ｉ−１）ｉを、それぞれ“ｉ”データについての「読み出しレベル」と呼ぶことにする。つまり、電圧Ｖ０１は“１”データについての読み出しレベルであり、電圧Ｖ１２は“２”データについての読み出しレベルである。そして“１”〜“７”データのうち、“１”データの読み出しレベルが負の値であり、“２”データについての読み出しレベルはゼロであり、“２”データ以上のについての読み出しレベルは正の値である。そしてデータの読み出し時には、上記読み出しレベルに相当する電圧が、メモリセルトランジスタＭＴのゲート・ソース間に印加される。
【００２４】
なお、０Ｖとなる読み出しレベルはＶ１２に限られるものでは無く、電圧Ｖ２３やまたはＶ３４であっても良く、少なくとも１つの読み出しレベルが負の値であれば良い。また、メモリセルトランジスタＭＴが保持可能なデータは上記８値に限らない。例えば２値（１ビットデータ）、４値（２ビットデータ）、または１６値（４ビットデータ）などであっても良い。
【００２５】
図１に戻って説明を続ける。ロウデコーダ３０は、データの書き込み動作時、読み出し動作時、及び消去時において、セレクトゲート線ＳＧＤ、ＳＧＳ、及びワード線ＷＬに電圧を印加する。
【００２６】
ロウデコーダ３０は、データの書き込み時にはセレクトゲート線ＳＧＤに電圧を印加し、選択トランジスタＳＴ１をオンさせる。また、セレクトゲート線ＳＧＳに０Ｖを印加し、選択トランジスタＳＴ２をオフさせる。更に、いずれかのワード線ＷＬを選択し、選択ワード線に対してプログラム電圧ＶＰＧＭを印加し、非選択ワード線に対して電圧ＶＰＡＳＳを印加する。プログラム電圧ＶＰＧＭは、電荷蓄積層に電子を注入するための高電圧（例えば２０Ｖ）であり、電圧ＶＰＡＳＳは、保持するデータに関わらずメモリセルトランジスタＭＴをオン状態とする電圧である。
【００２７】
データの消去時には、全ワード線ＷＬに０Ｖを印加し、メモリセルトランジスタＭＴが形成されるｐ型ウェル領域１０２に正電圧（例えば２０Ｖ）を印加する。これにより、電荷蓄積層１０４内の電子がウェル領域１０２に引き抜かれ、データが消去される。データの読み出し時については、後に詳細に説明する。
【００２８】
ＭＯＳトランジスタ５０の各々は、ビット線ＢＬとセンスアンプ２０とを接続する。すなわち、各々のＭＯＳトランジスタ５０は、電流経路の一端が対応するビット線ＢＬに接続され、電流経路の他端が対応するセンスアンプ２０に接続される。また、ゲートには電圧ＢＬＣＬＡＭＰが与えられる。そして、ＭＯＳトランジスタ５０がオン状態とされることにより、ビット線ＢＬとセンスアンプ２０とが電気的に接続される。
【００２９】
ビット線ドライバ４０は、ＭＯＳトランジスタ５０のゲートに電圧ＢＬＣＬＡＭＰを与える。ビット線ドライバ４０が電圧ＢＬＣＬＡＭＰを与えることにより、ＭＯＳトランジスタ５０はオン状態となる。図１に示すようにビット線ドライバ４０は、電流源回路４１、ｎチャネルＭＯＳトランジスタ４２、及び可変抵抗素子４３を備えている。電流源回路４１の出力ノードは、ＭＯＳトランジスタ４２の電流経路の一端に接続される。ＭＯＳトランジスタ４２は、電流経路の一端とゲートとが共通に接続されている。すなわちＭＯＳトランジスタ４２は、ダイオード素子として機能する。抵抗素子４３の一端は、ＭＯＳトランジスタ４２の電流経路の他端に接続され、他端はソース線ＳＬに接続されている。そして、電流源回路４１とＭＯＳトランジスタ４２との接続ノードにおける電位が、信号ＢＬＣＬＡＭＰとしてＭＯＳトランジスタ５０のゲートに与えられる。
【００３０】
次にセンスアンプ２０について説明する。センスアンプ２０の各々は、データの読み出し時には、メモリセルトランジスタＭＴからビット線ＢＬに読み出されたデータをセンスして増幅する。またデータの書き込み時には、対応するビット線ＢＬに書き込みデータを転送する。センスアンプ２０の構成について、図４を用いて説明する。図４はセンスアンプ２０の回路図である。
【００３１】
図示するようにセンスアンプ２０は、スイッチ素子１２０〜１２３、ｎチャネルＭＯＳトランジスタ１２４、１２６、ｐチャネルＭＯＳトランジスタ１２７、キャパシタ素子１２８、及びラッチ回路１２９を備えている。ＭＯＳトランジスタ１２４の電流経路の一端は、スイッチ素子１２０を介してノードＮ＿ＶＤＤに接続され、他端はノードＮ１に接続され、ゲートには信号Ｓ１が入力される。ノードＮ１は、ＭＯＳトランジスタ５０の電流経路を介してビット線ＢＬに接続される。ＭＯＳトランジスタ１２６の電流経路の一端はノードＮ１に接続され、他端はノードＮ２に接続され、ゲートには信号Ｓ２が与えられる。ノードＮ２は、スイッチ素子１２１を介してノードＮ＿ＶＤＤに接続される。キャパシタ素子１２８の一方電極はノードＮ２に接続され、他方電極はノードＮ＿ＶＳＳに接続される。ＭＯＳトランジスタ１２７の電流経路の一端は、スイッチ素子１２２を介してノードＮ＿ＶＤＤに接続され、他端はラッチ回路１２９に接続され、ゲートはノードＮ２に接続される。スイッチ素子１２３は、ラッチ回路１２９の保持するデータに応じて、ビット線ＢＬをノードＮ＿ＶＳＳに接続する。
【００３２】
なお、ノードＮ＿ＶＤＤはセンスアンプ２０の電源電圧ノードとして機能し、例えば（ＶＤＤ＋ＶＲＥＦ＿ＳＲＣ）の電圧が与えられている。電圧ＶＤＤはフラッシュメモリ１の内部電源（例えば１．５Ｖ）であり、電圧ＶＲＥＦ＿ＳＲＣは後述するソース線制御回路６０がソース線ＳＬに与える電圧である。またノードＮ＿ＶＳＳは、センスアンプ２０の接地ノードとして機能し、例えば（ＶＳＳ＋ＶＲＥＦ＿ＳＲＣ）の電圧が与えられている。電圧ＶＳＳは接地電位（０Ｖ）である。
【００３３】
引き続き図１に戻って説明を続ける。ソース線制御回路６０は、ソース線ＳＬの電位を制御する。図１に示すようにソース線制御回路６０は、大まかには電圧比較部６１及び電圧制御部６２を備えている。
【００３４】
電圧比較部６１は、ソース線ＳＬの電位を基準電位ＶＲＥＦ＿ＳＲＣと比較すると共に、ソース線ＳＬに電位を与える。図示するように電圧比較部６１は、ｐチャネルＭＯＳトランジスタ６３及び比較器６４を備えている。
【００３５】
ＭＯＳトランジスタ６３は、ゲートにプリチャージ信号ＰＲＥＣＨが入力され、電流経路の一端に外部から電圧ＶＥＸＴが与えられ、電流経路の他端がソース線ＳＬに接続されている。信号ＰＲＥＣＨは、データの読み出し動作時におけるビット線のプリチャージ時に“Ｌ”レベルとされることで、ＭＯＳトランジスタ６３をオン状態とする。その結果、ソース線ＳＬの電位が上昇する。
【００３６】
比較器６４は、正転入力端子（＋）がソース線ＳＬに接続され、反転入力端子（−）に電圧ＶＲＥＦ＿ＳＲＣが入力される。すなわち比較器６４は、ソース線ＳＬの電位と電圧ＶＲＥＦ＿ＳＲＣとを比較し、ソース線ＳＬの電位が電圧ＶＲＥＦ＿ＳＲＣを超えた際に“Ｈ”レベルを出力する。電圧ＶＲＥＦ＿ＳＲＣは、最も閾値電圧の低い“０”データについての読み出しレベルＶ０１の絶対値と同じか、それよりも大きい値とされる。
【００３７】
次に電圧制御部６２につき説明する。電圧制御部６２は、比較器６４における比較結果に基づいて、ソース線ＳＬの電位を制御する。図示するように電圧制御部６２は、ｎチャネルＭＯＳトランジスタ６５及びｐチャネルＭＯＳトランジスタ６６を備えている。
【００３８】
ＭＯＳトランジスタ６５は、ドレインがソース線ＳＬに接続され、ソースが接地され、ゲートに比較器６４の比較結果が与えられる。以下、ＭＯＳトランジスタ６５のゲート、すなわち比較器６４の出力ノードを、ノードＧ＿Ｓｏｕｒｃｅと呼ぶ。また、ＭＯＳトランジスタ６５のゲート幅を、以下ゲート幅Ｗ１と呼ぶ。
【００３９】
ＭＯＳトランジスタ６６は、ゲートに信号ＰＬＯＡＤが入力され、ソースが電源電位ＶＤＤに接続され、ソースがソース線ＳＬに接続されている。信号ＰＬＯＡＤは、データの読み出し動作時において、ソース線ＳＬの電位がＭＯＳトランジスタ６３によって上昇された後、“Ｌ”レベルとされることで、ＭＯＳトランジスタ６６をオン状態とする。ＭＯＳトランジスタ６６によりソース線ＳＬに電圧を供給することで、ソース線ＳＬの電位の急激な変動を抑制する。以上の構成により、ビット線のプリチャージにおけるソース線ＳＬの電位は、ＶＲＥＦ＿ＳＲＣ一定とされる。
【００４０】
次に検出回路７０について説明する。検出回路７０は、ノードＧ＿Ｓｏｕｒｃｅの電位に基づいてソース線ＳＬに流れるセル電流の総計を検出する。そしてその総計が基準電流よりも大きいか小さいかを判定し、判定結果をフラグＦＬＡＧとして出力する。図１に示すように検出回路７０は、ｎチャネルＭＯＳトランジスタ７１、ｐチャネルＭＯＳトランジスタ７２、及びインバータ７３を備えている。
【００４１】
ＭＯＳトランジスタ７１は、ゲートがノードＧ_Ｓｏｕｒｃｅに接続され、ソースが接地されている。すなわちＭＯＳトランジスタ７１は、ＭＯＳトランジスタ６５と共にカレントミラー回路を形成する。以下、ＭＯＳトランジスタ７１のゲート幅を、ゲート幅Ｗ２と呼ぶ。ゲート幅Ｗ２はゲート幅Ｗ１よりも小さくされ、その比率は例えばＷ１：Ｗ２＝１０：１である。つまり、ＭＯＳトランジスタ７１に流れる電流はＭＯＳトランジスタ６５に流れる電流（ソース線ＳＬに流れる電流）よりも小さく、その値は（Ｗ２／Ｗ１）倍であり、例えば１／１０の値である。
【００４２】
ＭＯＳトランジスタ７２は、ゲートに信号Ｐ＿ＧＡＴＥが入力され、ソースが電源電位ＶＤＤに接続され、ドレインがＭＯＳトランジスタ７１のドレインに接続されている。信号Ｐ＿ＧＡＴＥがゲートに与えられることで、ＭＯＳトランジスタ７２は電流を供給する。
【００４３】
インバータ７３は、ＭＯＳトランジスタ７１のドレインとＭＯＳトランジスタ７２のドレインとの接続ノードにおける電圧レベルを反転させる。そして反転結果を、フラグＦＬＡＧとして、シーケンサ８０へ出力する。
【００４４】
シーケンサ８０は、ＮＡＮＤ型フラッシュメモリ１におけるデータの読み出し動作、書き込み動作、及び消去動作を制御する。読み出し動作は、例えば“１”データから順に“７”データまで順次読み出される（これを読み出しシーケンスと呼ぶ）。また書き込み動作は、データのプログラムと、プログラムベリファイとの繰り返しによって行われる（これを書き込みシーケンスと呼ぶ）。プログラムは、メモリセルトランジスタＭＴの制御ゲート１０６とチャネルとの間に電位差を発生させることで、電荷蓄積層１０４に電子を注入する動作である。またプログラムベリファイは、プログラムが行われたメモリセルトランジスタＭＴからデータを読み出すことによって、メモリセルトランジスタＭＴの閾値電圧が所望の値となっているか否かを確認する動作である。また消去動作は、データの消去及び消去ベリファイによって行われる（これを消去シーケンスと呼ぶ）。消去ベリファイは、消去が行われたメモリセルトランジスタＭＴからデータを読み出すことによって、メモリセルトランジスタＭＴの閾値電圧が所望の値となっているか否かを確認する動作である。以下では、プログラムベリファイと消去ベリファイとを区別しない場合には、まとめてベリファイと呼ぶことにする。シーケンサ８０は、上記シーケンスを実行するよう、コア制御回路９０に命令する。
【００４５】
コア制御回路９０は、シーケンサ８０に命令に従って、必要なシーケンスが実行されるよう、ＮＡＮＤ型フラッシュメモリ１における各ブロック、例えばロウデコーダ３０やセンスアンプ２０の動作を制御する。
【００４６】
＜データの読み出し動作＞  
次に、本実施形態に係るＮＡＮＤ型フラッシュメモリにおける、データの読み出し動作について、以下説明する。なお、下記説明はベリファイ時も同様である。また、プログラムベリファイと消去ベリファイとで異なる点は、ワード線ＷＬに印加される電圧のみである。
【００４７】
＜＜各信号線の電圧関係について＞＞  
まず図５を用いて、読み出し動作時における各信号線の電圧関係について説明する。図５は、データの読み出し時におけるメモリセルユニット１１の回路図である。以下では、ワード線ＷＬ１に接続されたメモリセルトランジスタＭＴに対して読み出しが行われる場合を例に説明する。
【００４８】
まず、図示せぬセンスアンプ２０が、ＭＯＳトランジスタ５０の電流経路を介して全ビット線ＢＬをプリチャージする。またソース線制御回路６０はソース線ＳＬに電圧ＶＲＥＦ＿ＳＲＣを印加する。またロウデコーダ３０は、ウェル領域１０２に電圧ＶＲＥＦ＿ＳＲＣを印加する。
【００４９】
更にロウデコーダ３０はワード線ＷＬ１を選択し、選択ワード線ＷＬ１に読み出し電圧ＶＣＧＲを印加する。更にロウデコーダ３０は、非選択ワード線ＷＬ０、ＷＬ２〜ＷＬ３１に電圧ＶＲＥＡＤを印加する。更にロウデコーダ３０は、セレクトゲート線ＳＧＤ、ＳＧＳに電圧（ＶＤＤ＋ＶＲＥＦ＿ＳＲＣ）を印加する。
【００５０】
電圧ＶＲＥＡＤは、保持するデータに関わらずメモリセルトランジスタＭＴをオン状態とする電圧である。また電圧ＶＣＧＲは、読み出し対象となるメモリセルトランジスタに印加される電圧であり、読み出そうとするデータに応じて変化される。セレクトゲート線ＳＧＤ、ＳＧＳに印加される電圧（ＶＤＤ＋ＶＲＥＦ＿ＳＲＣ）は、選択トランジスタＳＴ１、ＳＴ２をオン状態とすることの出来る電圧である。
【００５１】
以上の結果、非選択ワード線ＷＬ０、ＷＬ２〜ＷＬ３１に接続されたメモリセルトランジスタＭＴはオン状態となり、チャネルが形成される。また選択トランジスタＳＴ１、ＳＴ２もオン状態とされる。
【００５２】
そして、選択ワード線ＷＬ１に接続されたメモリセルトランジスタＭＴがオン状態となれば、ビット線ＢＬとソース線ＳＬとが電気的に導通状態となる。すなわち、ビット線ＢＬからソース線ＳＬへ電流が流れる。他方、オフ状態であれば、ビット線ＢＬとソース線ＳＬとは電気的に非導通状態となる。すなわち、ビット線ＢＬからソース線ＳＬへは電流は流れない。以上の動作により、全ビット線につき一括してデータが読み出される。
【００５３】
＜＜メモリセルトランジスタの電圧関係について＞＞  
次に、メモリセルトランジスタＭＴの電圧関係について、以下“１”データを読み出す場合を例に挙げて、図６を用いて説明する。図６は、メモリセルユニット１１の一部領域の断面図である。
【００５４】
図示するように、ソース線ＳＬ及びウェル領域１０２には電圧ＶＲＥＦ＿ＳＲＣが印加されている。またセレクトゲート線ＳＧＳには電圧（ＶＤＤ＋ＶＲＥＦ＿ＳＲＣ）が印加され、ワード線ＷＬ０には電圧ＶＲＥＡＤが印加される。従って、選択トランジスタＳＴ２及びメモリセルトランジスタＭＴ０にはチャネル１１３が形成される。選択トランジスタＳＴ１及びメモリセルトランジスタＭＴ２〜ＭＴ３１も同様である。そして、選択ワード線ＷＬ１には電圧ＶＣＧＲが印加される。読み出しレベルが負である場合、電圧ＶＣＧＲの値は、電圧ＶＲＥＦ＿ＳＲＣから読み出しレベルの絶対値を減算した値である。つまり“１”データを読み出す場合、電圧ＶＣＧＲ＝Ｖ０１’＝（ＶＲＥＦ＿ＳＲＣ−｜Ｖ０１｜）であり、好ましくはゼロ以上の値である。例えば電圧ＶＲＥＦ＿ＳＲＣ＝｜Ｖ０１｜であれば、電圧ＶＣＧＲ＝Ｖ０１’＝０Ｖとなる。
【００５５】
従って、メモリセルトランジスタＭＴ１においては、ゲート・ソース間電圧ＶＧＳとして、電圧Ｖ０１が印加される。メモリセルトランジスタＭＴ１が“１”データを保持していれば、メモリセルトランジスタＭＴ１はオフ状態となり、セル電流は流れない。逆に、メモリセルトランジスタＭＴ１がオン状態となれば、当該トランジスタＭＴ１の保持するデータは“０”データであることが分かる。従って、上記読み出し方法であると、“１”データの読み出しは、同時に“０”データの読み出しでもある、と言うことが出来る。
【００５６】
読み出しレベルがゼロまたは正である場合、電圧ＶＣＧＲの値は、電圧ＶＲＥＦ＿ＳＲＣに読み出しレベルを加算した値となる。つまり“２”データを読み出す場合、Ｖ１２＝０Ｖであるので、電圧ＶＣＧＲ＝Ｖ１２’＝ＶＲＥＦ＿ＳＲＣとなる。また“３”データを読み出す場合には、電圧ＶＣＧＲ＝Ｖ２３’＝（ＶＲＥＦ＿ＳＲＣ＋Ｖ２３）となる。
【００５７】
図７は、読み出しレベルと電圧ＶＣＧＲとの関係を示すグラフである。図示するように、読み出しレベルが負であるデータを読み出す際には、ＶＲＥＦ＿ＳＲＣから読み出しレベルの絶対値を減算した値をＶＣＧＲとし、正であるデータを読み出す際には、ＶＲＥＦ＿ＳＲＣに読み出しレベルを加算した値をＶＣＧＲとする。これにより、ＶＣＧＲを常時０以上の値としつつ、メモリセルトランジスタＭＴのゲート・ソース間に、読み出しレベルの電圧を印加出来る。
【００５８】
＜＜センスアンプの動作について＞＞  
次に、読み出し動作時におけるセンスアンプ２０の動作について、図８乃至図１１を用いて説明する。図８乃至図１１は、センスアンプ２０の回路図である。以下では、データの読み出し時にメモリセルトランジスタＭＴがオン状態となることを“１”読み出しと呼び、オフ状態であることを“０”読み出しと呼ぶことにする。なお、読み出し動作の間、信号Ｓ１、Ｓ２はそれぞれ（Ｖｔ＋０．９Ｖ＋ＶＲＥＦ＿ＳＲＣ）、（Ｖｔ＋１．２Ｖ＋ＶＲＥＦ＿ＳＲＣ）とされる。また、信号ＢＬＣＬＡＭＰは（ＶＴＮ＋０．７Ｖ＋ＶＲＥＦ＿ＳＲＣ）とされる。ＶｔはＭＯＳトランジスタ１２４、１２６の閾値電圧であり、ＶＴＮはＭＯＳトランジスタ５０の閾値電圧である。
【００５９】
（ＣＡＳＥ Ｉ）  
まず、“１”読み出しを行う場合につき、ＣＡＳＥ Ｉとして、以下説明する。  
初めに図８に示すように、ビット線ＢＬのプリチャージが行われる。以下では、プリチャージレベルＶＰＲＥが０．７Ｖである場合を仮定する。
【００６０】
図示するように、スイッチ素子１２０がオン状態とされる。すると、メモリセルユニット１１は導通状態にあるから、スイッチ素子１２０、ＭＯＳトランジスタ１２４の電流経路、ノードＮ１、及びＭＯＳトランジスタ５０の電流経路を介して、ビット線ＢＬに電流が流れる。その結果、ビット線ＢＬの電位は（０．７Ｖ＋ＶＲＥＦ＿ＳＲＣ）程度となる。すなわち、ビット線ＢＬからソース線ＳＬに電流を流しながら、ビット線ＢＬの電位は（０．７Ｖ＋ＶＲＥＦ＿ＳＲＣ）に固定される。また、スイッチ素子１２１がオン状態とされることで、容量素子１２８が充電され、ノードＮ２の電位は（２．５Ｖ＋ＶＲＥＦ＿ＳＲＣ）程度となる。スイッチ素子１２２、１２３はオフ状態である。
【００６１】
次に図９に示すように、ノードＮ２のディスチャージが行われる。すなわち、スイッチ素子１２１がオフ状態とされる。すると、ノードＮ２からビット線ＢＬに流れる電流によって、ノードＮ２が放電され、その電位は約（０．９Ｖ＋ＶＲＥＦ＿ＳＲＣ）程度に低下する。
【００６２】
引き続き図１０に示すように、ノードＮ２のディスチャージが行われる。図示するように、ノードＮ１の電位が（０．９Ｖ＋ＶＲＥＦ＿ＳＲＣ）以下に低下しようとすると、ＭＯＳトランジスタ１２４が電流を供給しはじめる。その結果、ノードＮ１の電位は（０．９Ｖ＋ＶＲＥＦ＿ＳＲＣ）に維持される。
【００６３】
次に図１１に示すように、データのセンスが行われる。図示するように、スイッチ素子１２２がオン状態とされる。また、ノードＮ２の電位が（０．９Ｖ＋ＶＲＥＦ＿ＳＲＣ）であるので、ＭＯＳトランジスタ５７がオン状態となる。よって、ラッチ回路１２９は電圧（ＶＤＤ＋ＶＲＥＦ＿ＳＲＣ）を保持する。ラッチ回路１２９が（ＶＤＤ＋ＶＲＥＦ＿ＳＲＣ）を保持することで、スイッチ素子１２０がオフ状態、スイッチ素子１２３がオン状態となる。その結果、ノードＮ２の電位はＶＲＥＦ＿ＳＲＣとなる。その結果、ラッチ回路１２９は電圧ＶＤＤを保持し続ける。また、ビット線ＢＬからスイッチ素子１２３を介してノードＮ＿ＶＳＳに電流が流れ、ビット線ＢＬの電位はＶＲＥＦ＿ＳＲＣとなる。
【００６４】
すなわちデータの読み出し動作は、ビット線ＢＬに流れる電流をセンスアンプ４によりセンスすることによって行われる。
【００６５】
また本実施形態では、各データを読み出す際において、図８乃至図１１に示したプリチャージからセンスまでの処理が１回、または複数回（例えば２回）、行われる。２回のセンスを行う場合には、まず１回目の読み出しにおいて、セル電流の流れやすいメモリセルトランジスタＭＴについて読み出しを行い、次に流れにくいメモリセルトランジスタＭＴについて読み出しを行う。これは、ソース線ＳＬのノイズ（変動）の影響を抑えるためであり、２回目の読み出しでは、１回目の読み出しでオン状態となったメモリセルトランジスタＭＴをオフ状態とさせつつ、読み出しが行われる。なお、センスの回数はシーケンサ８０の命令によって決定される。この点については後述する。
【００６６】
（ＣＡＳＥ II）  
次に“０”読み出しを行う場合につき、ＣＡＳＥ IIとして、以下説明する。  
この場合、ビット線ＢＬに電流は流れず、（０．７Ｖ＋ＶＲＥＦ＿ＳＲＣ）一定となる。そしてノードＮ２の電位は、約（２．５Ｖ＋ＶＲＥＦ＿ＳＲＣ）を維持する。従って、ＭＯＳトランジスタ１２７はオフ状態となり、ラッチ回路１２９は電圧ＶＲＥＦ＿ＳＲＣを保持する。これにより、スイッチ素子１２０がオン状態、スイッチ素子１２３がオフ状態となり、ノードＮ２の電位は（２．５Ｖ＋ＶＲＥＦ＿ＳＲＣ）を維持し、ラッチ回路１２９は電圧ＶＲＥＦ＿ＳＲＣ）を保持し続ける。
【００６７】
＜＜検出回路７０及びシーケンサ８０の動作について＞＞  
次に、読み出し動作時における検出回路７０及びシーケンサ８０の動作について、図１２及び図１３を用いて説明する。図１２は読み出し動作時における検出回路７０及びシーケンサ８０の動作を示すフローチャートであり、図１３は読み出し動作時におけるメモリセルアレイ１０、ソース線制御回路６０、検出回路７０、及びシーケンサ８０の回路図である。
【００６８】
まず、ソース線ＳＬには、ビット線ＢＬから各メモリセルユニット１１を介してセル電流Ｉcellが流れ込む（ステップＳ１０、図１３参照）。セル電流Ｉcellの総計を、以下電流Ｉcell_totalと呼ぶことにする。この電流Ｉcell_totalは、ＭＯＳトランジスタ６５の電流経路を介して接地電位に流れ込む。そして比較器６４は、ソース線ＳＬの電位がＶＲＥＦ＿ＳＲＣを維持するよう、ノードＧ＿Ｓｏｕｒｃｅの電位を制御する。
【００６９】
また検出回路７０においては、ＭＯＳトランジスタ７１が電流Ｉcell_totalから電流Ｉcmpを生成する（ステップＳ１１）。前述の通り、ＭＯＳトランジスタ７１はＭＯＳトランジスタ６５と共にカレントミラー回路を形成する。従って、電流Ｉcmp＝（Ｗ２／Ｗ１）・Ｉcell_totalとなる。この電流Ｉcmpが、ＭＯＳトランジスタ７１のドレイン電流として流れる（図１３参照）。
【００７０】
更にＭＯＳトランジスタ７２は、ゲートに信号Ｐ＿ＧＡＴＥが与えられることで、基準電流Ｉrefを生成する（図１３参照）。すなわち、基準電流Ｉrefが、ＭＯＳトランジスタ７２のドレイン電流として流れる。基準電流Ｉrefは、ソース線ＳＬに流れる電流Ｉcell_totalとして許される上限値の（Ｗ２／Ｗ１）倍の値とされる。つまり、電流Ｉcmpが基準電流Ｉrefに等しい場合には、電流Ｉcell_totalはソース線ＳＬに許容される上限値に等しく、電流Ｉcmpが基準電流Ｉrefを超える場合は、電流Ｉcell_totalが上限値を超えることになる。
【００７１】
電流Ｉcmpが基準電流Ｉrefを超える場合（ステップＳ１２、ＹＥＳ）、インバータ７３の入力ノードは“Ｌ”レベルとなり、出力ノードは“Ｈ”レベルとなる。従って、検出回路７０はフラグＦＬＡＨ＝“Ｈ”を出力する（ステップＳ１３）。すると、シーケンサ８０は、当該データについての読み出し（プリチャージ及びセンス）の回数を複数回とすることを決定し、コア制御回路９０を介してその旨をセンスアンプ２０に命令する（ステップＳ１４）。すなわち、図８乃至図１１で説明した動作が、同一データにつき例えば２回、繰り返される。
【００７２】
他方、電流Ｉcmpが基準電流Ｉref２を超えない場合（ステップＳ１２、ＮＯ）、または等しい場合、インバータの入力ノードは“Ｈ”レベルとなり、出力ノードは“Ｌ”レベルとなる。従って、検出回路７０はフラグＦＬＡＨ＝“Ｌ”を出力する（ステップＳ１５）。すると、シーケンサ８０は、当該データについての読み出し（プリチャージ及びセンス）の回数を１回とすることを決定し、コア制御回路９０を介してその旨をセンスアンプ２０に命令する（ステップＳ１６）。
【００７３】
そして、当該データの読み出し動作が消去ベリファイ時であれば（ステップＳ１７、ＹＥＳ）、読み出し動作は終了し、それ以外であれば（ステップＳ１７、ＮＯ）、シーケンサ８０は次のデータの読み出しを行う。
【００７４】
＜＜読み出し動作時における各ノードの電圧変化について＞＞  
上記説明した読み出し動作時におけるビット線ＢＬの電位、信号ＢＬＣＬＡＭＰ、ソース線ＳＬの電位、ワード線ＷＬの電位、及びセル電流の総計Ｉcell_totalについて、Ｉcell_totalが上限値を超える場合と、超えない場合とに分けて、以下説明する。なお、ウェル領域１０２の電位はソース線ＳＬと同電位とされる。
【００７５】
まず図１４を用いて、Ｉcell_totalが上限値を超える場合について説明する。図１４は、読み出し時における各種信号の変化を示すタイミングチャートである。
【００７６】
図示するように、時刻ｔ０において読み出し動作が開始される。時刻ｔ０においてロウデコーダ３０は、選択ワード線ＷＬに電圧ＶＣＧＲを印加し、非選択ワード線ＷＬに電圧ＶＲＥＡＤを印加する。電圧ＶＣＧＲは、図７で説明したいずれかの値である。消去ベリファイ時には、ベリファイレベルＶrfyに応じた電圧が印加される。
【００７７】
そしてビット線ドライバ４０は、信号ＢＬＣＬＡＭＰとして電圧（ＶＲＥＦ＿ＳＲＣ＋ＶＴＮ）を発生する。その結果、ＭＯＳトランジスタ５０がオン状態となる。従って、ビット線ＢＬとノードＮ１とが電気的に接続される。
【００７８】
またセンスアンプ２０は、ビット線ＢＬの電位をＶＲＥＦ＿ＳＲＣとする。更にソース線制御回路６０及びロウデコーダ３０はそれぞれ、ソース線ＳＬ及びウェル領域１０２に電圧ＶＲＥＦ＿ＳＲＣを印加する。
【００７９】
次に時刻ｔ１において、センスアンプ２０によりプリチャージが行われる。そのために、信号ＢＬＣＬＡＭＰの電位は（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ＋ＶＴＮ）とされる。電圧ＶＰＲＥは、センスアンプ２０によるプリチャージ電位である。その結果、ビット線ＢＬの電位は、電圧（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ）とされる。この際のセンスアンプ４の動作は図８に示した通りである。
【００８０】
そして、図９及び図１０で説明したディスチャージが行われ、ビット線ＢＬからソース線ＳＬにセル電流が流れる。この際、セル電流の総計Ｉcell_totalが、上限値ＩＲＥＦを超えたとする。すなわち、Ｉcmp＞Ｉrefであったとする。この様子を、図１４では斜線を付した領域にて示している。
【００８１】
すると、シーケンサ８０は、当該データについて２回の読み出しを行うことを決定する。すなわち、まず時刻ｔ２において、図１１で説明したデータのセンスが行われる。引き続き、同一のデータについての読み出しが行われる。すなわち、再度ビット線のプリチャージ及びディスチャージが行われ、時刻ｔ３において２回目のセンスが行われる。前述の通り、２回目の読み出し時には、１回目の読み出しにおいてオン状態とされたメモリセルトランジスタＭＴが接続されたビット線については、ディスチャージは行われなず、その電位はＶＲＥＦ＿ＳＲＣに固定される。
【００８２】
次に、図１５を用いてＩcell_totalが上限値ＩＲＥＦを超えない場合について説明する。図１５は、読み出し時における各種信号の変化を示すタイミングチャートである。以下では、図１４と異なる点についてのみ説明する。
【００８３】
図示するように、１回目の読み出しにおいて流れるセル電流の総計Ｉcell_totalが、上限値ＩＲＥＦ以下であったとする。すなわち、Ｉcmp≦Ｉrefであったとする。すると、シーケンサ８０は、当該データについての読み出し回数を１回と決定する。従って、時刻ｔ２において、図１１で説明したデータのセンスが行われると、当該データについての読み出しは終了する。すなわち、消去ベリファイ時には、この時点でベリファイを終了し、それ以外の場合には次のデータについての読み出しが開始される。
【００８４】
＜効果＞  
以上のように、この発明の第１の実施形態に係るＮＡＮＤ型フラッシュメモリであると、下記（１）の効果が得られる。  
（１）ＮＡＮＤ型フラッシュメモリの動作速度を向上出来る。  
本実施形態に係るＮＡＮＤ型フラッシュメモリであると、データの読み出し動作時及びベリファイ動作時においてソース線ＳＬに流れる電流を検出する検出回路７０を設けている。そして、検出回路７０における検出結果に応じて、同一データについて行うセンス回数が決定される。従って、ＮＡＮＤ型フラッシュメモリの動作速度を向上出来る。本効果につき、以下詳細に説明する。
【００８５】
従来、電流をセンスすることによって、全ビット線につき一括してデータを読み出す方法が知られている。この方式では読み出し中、隣接するビット線のノイズの影響を無くす為に、ビット線を一定電位に保つ必要がある。そのため、読み出し中は、ビット線に電流を流し続ける。すると、セル電流の総計は１００ｍＡ程度の非常に大きいものとなる。そしてこの電流はソース線に流れ込むので、ソース線の電位も上昇する。
【００８６】
従って、データの誤読み出しを防止するためには、複数回のセンスが必要となる。つまり、セル電流の多いメモリセルトランジスタを順にふるい落として、最終的にはソース線の電位の上昇が抑えられた状態でセンスした結果を、ラッチ回路に取り込む方法をとることになる。他方、データパターンによってはセル電流総計が少ない場合もあり得る。この場合には、ソース線の電位が殆ど上昇せず、誤読み出しは生じにくいため、複数回のセンスは必要ない。
【００８７】
しかし、従来のＮＡＮＤ型フラッシュメモリであると、電流をモニタする手段を有しない。従って、読み出し動作はワーストデータパターンを想定して行う必要があり、その結果、データパターンに関わらず、常に複数回のセンスを行う必要がある。この様子を図１６に示す。図１６は、“１”データから順にデータの読み出しを行う際の、電圧ＶＣＧＲ、電流Ｉcell_total、及びビット線ＢＬの電位の変化を示すタイミングチャートである。
【００８８】
図示するように、読み出すべきデータの閾値電圧が低いほど、セル電流Ｉcell_totalは大きく、また１回目のセンス動作で流れるセル電流Ｉcell_totalは、２回目よりも大きい。従って、データの読み出しが進むにつれて、セル電流Ｉcell_totalは小さくなっていく。つまり、例え“１”データについての１回目のセンス時に流れる電流Ｉcell_totalが大きかったとしても、例えば“３”データ以降のセンス時に流れる電流Ｉcell_totalは十分に小さいかもしれない。このような場合であっても、従来の手法であると全データにつき、２回のセンスを行っており、このことが動作速度を低下させる原因となる。
【００８９】
しかしながら、本実施形態に係るＮＡＮＤ型フラッシュメモリ１であると、検出回路７０がセル電流Ｉcell_totalを検出している。そして、セル電流Ｉcell_totalに応じた大きさの電流Ｉcmpと、上限値ＩＲＥＦに応じた基準電流Ｉrefと比較する。更に、電流Ｉcmpが基準電流Ｉrefを超える場合には、同一データにつき複数回（例えば２回、しかし２回に限定されない）のセンスを行い、超えない場合には、センス回数を１回とする。すなわちセンス回数を、セル電流Ｉcell_totalが大きい場合には複数回、小さい場合には１回とする。従って、センス動作を必要な場合にのみ複数回行い、不要な場合には１回で済ませることが可能となる。従って、ＮＡＮＤ型フラッシュメモリにおけるデータの読み出し動作速度を向上出来る。
【００９０】
以上の具体例につき、図１７を用いて説明する。図１７は図１６と同様に、“１”データから順にデータの読み出しを行う際の、電圧ＶＣＧＲ、電流Ｉcell_total、及びビット線ＢＬの電位の変化を示すタイミングチャートである。
【００９１】
図示するように、“１”データを読み出す際の１回目のセンス時には、セル電流Ｉcell_totalは上限値ＩＲＥＦを超えている。従って、“１”データについては２回目のセンスを行う。“２”データを読み出す際も同様である。しかし、“３”データ以降の読み出し時には、セル電流Ｉcell_totalは上限値ＩＲＥＦを超えない。従って、これらのデータのセンスは１回だけで終了する。従って、図１６の場合に比べて、読み出し動作を大幅に高速化出来る。
【００９２】
［第２の実施形態］  
次に、この発明の第２の実施形態に係る半導体記憶装置について説明する。本実施形態は、セル電流Ｉcell_totalに応じて、ビット線ＢＬのプリチャージレベルを制御するものである。
【００９３】
＜ＮＡＮＤ型フラッシュメモリの構成＞  
図１８は、この発明の第２の実施形態に係るＮＡＮＤ型フラッシュメモリのブロック図である。図示するようにＮＡＮＤ型フラッシュメモリ１は、第１の実施形態で説明した図１の構成と同様に、メモリセルアレイ１０、センスアンプ２０、ロウデコーダ３０、ビット線ドライバ４０、ＭＯＳトランジスタ５０、ソース線制御回路６０、検出回路７０、シーケンサ８０、及びコア制御回路９０を備えている。
【００９４】
メモリセルアレイ１０、センスアンプ２０、ロウデコーダ３０、ＭＯＳトランジスタ５０、ソース線制御回路６０、及びコア制御回路９０の構成は第１の実施形態と同様であるので、これらの説明は省略する。以下では、第１の実施形態と異なる点についてのみ説明する。
【００９５】
検出回路７０は、第１の実施形態で説明した図１の構成において、インバータ７３を廃した構成を有している。そして、ＭＯＳトランジスタ７１、７２の接続ノードにおける電位ＶＡを、ビット線ドライバ４０へ供給する。
【００９６】
シーケンサ８０は、検出回路７０における検出結果に応じることなく、前述したシーケンスを制御する。従って、センスアンプ２０は全てのデータにつき、複数回のセンスを行う。
【００９７】
ビット線ドライバ４０は、第１の実施形態で説明した図１の構成において、更にＭＯＳトランジスタ４４及び比較器４５を備えている。  
比較器４５は、正転入力端子（＋）に基準電圧ＶＲＥＦが与えられ、反転入力端子（−）に上記電圧ＶＡが与えられる。そして、基準電圧ＶＲＥＦと電圧ＶＡとを比較し、その比較結果を信号Ｇ＿ＣＬとして出力する。なお、基準電圧ＶＲＥＦは、セル電流Ｉcell_totalの上限値ＩＲＥＦに相当する電圧であって、Ｉcell_total＝ＩＲＥＦとなった際における電圧ＶＡに等しい電圧である。
【００９８】
ＭＯＳトランジスタ４４は、ゲートに信号Ｇ＿ＣＬが与えられ、ドレインがＭＯＳトランジスタ４２と電流源回路４１との接続ノードに接続され、ソースが接地（またはソース線ＳＬに接続）されている。つまり、ＭＯＳトランジスタ４４のドレインにおける電位が、信号ＢＬＣＬＡＭＰとなる。以下、電流源回路４１の供給する電流を電流Ｉref１と呼び、ＭＯＳトランジスタ４２のドレイン電流を電流Ｉref１Ａと呼び、ＭＯＳトランジスタ４４のドレイン電流を電流Ｉref１Ｂと呼ぶことにする。
【００９９】
＜データの読み出し動作＞  
次に、本実施形態に係るＮＡＮＤ型フラッシュメモリにおける、データの読み出し動作について、以下説明する。なお、下記説明はベリファイ時も同様であり、以下では第１の実施形態と異なる点についてのみ説明する。
【０１００】
各信号線の電圧や、メモリセルトランジスタの電圧、及びセンスアンプ２０の動作は、第１の実施形態で説明した図５乃至図１１と同様である。また、先述のようにシーケンサ８０は、検出回路７０における検出結果に応じることなく、前述したシーケンスを制御する。
【０１０１】
＜＜ビット線ドライバ４０の動作について＞＞  
まず、読み出し動作時におけるビット線ドライバ４０の動作について、図１８及び図１９を用いて説明する。図１９は読み出し動作時におけるビット線ドライバ４０の動作を示すフローチャートである。
【０１０２】
ステップＳ１０、Ｓ１１の後、電流Ｉcmpが基準電流Ｉrefを超えない場合（ステップＳ１２、ＮＯ）、電圧ＶＡは論理的に“Ｈ”レベルとなる。すなわち、ＶＡ＞ＶＲＥＦである（ステップＳ２０）。従って、比較器４５は信号Ｇ＿ＣＬ＝“Ｌ”を出力する（ステップＳ２１）。よって、ＭＯＳトランジスタ４４はオフ状態となり（ステップＳ２２）、電流Ｉref１Ｂは流れない。その結果、ＢＬＣＬＡＭＰの電位は、ＭＯＳトランジスタ４２に流れる電流Ｉref１Ａと、抵抗素子４３の抵抗値とによって決まる。つまり、通常の設定値とされる（ステップＳ２３）。すなわち、第１の実施形態と同様にＢＬＣＬＡＭＰ＝ＶＲＥＦ＿ＳＲＣ＋ＶＴＮ＋ＶＰＲＥとなる。その結果、ビット線ＢＬのプリチャージレベルは通常の設定値となる（ステップＳ２４）。つまりビット線ＢＬの電位は、第１の実施形態と同様、（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ）となる。
【０１０３】
他方、電流Ｉcmpが基準電流Ｉrefを超える場合（ステップＳ１２、ＹＥＳ）、電圧ＶＡは論理的に“Ｌ”レベルとなる。すなわち、ＶＡ＜ＶＲＥＦである（ステップＳ２５）。従って、比較器４５は信号Ｇ＿ＣＬ＝“Ｈ”を出力する（ステップＳ２６）。よって、ＭＯＳトランジスタ４４はオン状態となり（ステップＳ２７）、電流Ｉref１Ｂが流れる。電流Ｉref１Ｂが流れる結果、ＢＬＣＬＡＭＰの電位は、ステップＳ２３の場合に比べて低下する（ステップＳ２８）。よって、ＭＯＳトランジスタ５０の電流駆動能力が低下し、ビット線ＢＬのプリチャージレベルが低下する（ステップＳ２９）。その結果、セル電流Ｉcell_totalの増加が抑制され、上限値ＩＲＥＦよりも低くなる（ステップＳ３０）。
【０１０４】
＜＜読み出し動作時における各ノードの電圧変化について＞＞  
上記説明した読み出し動作時におけるビット線ＢＬ、信号ＢＬＣＬＡＭＰ、ソース線ＳＬ、及びワード線ＷＬの電圧について、図２０を用いて説明する。図２０は、データの読み出し時における各種信号の電圧変化を示すタイミングチャートである。なお、ウェル領域１０２の電位はソース線ＳＬと同電位とされる。
【０１０５】
図示するように、時刻ｔ１までは第１の実施形態で説明した図１４と同様である。そして時刻ｔ１において、センスアンプ２０によりプリチャージが行われる。この際ビット線ドライバ４０は、セル電流Ｉcell_totalに応じてプリチャージレベルを決定する。すなわち、セル電流Ｉcell_totalが上限値ＩＲＥＦを超えていなければ、ＭＯＳトランジスタ４４をオフ状態とし、ＢＬＣＬＡＭＰ＝（ＶＲＥＦ＿ＳＲＣ＋ＶＴＮ＋ＶＰＲＥ１）とする。その結果、ビット線ＢＬの電位は（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ１）となる。
【０１０６】
他方、セル電流Ｉcell_totalが上限値ＩＲＥＦを超えていれば、ＭＯＳトランジスタ４４はオン状態となり、ＢＬＣＬＡＭＰ＝（ＶＲＥＦ＿ＳＲＣ＋ＶＴＮ＋ＶＰＲＥ２）とする。但し、ＶＰＲＥ２＜ＶＰＲＥ１である。その結果、ビット線ＢＬの電位は（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ２）となる。この際のセンスアンプ２０の動作は図８に示した通りである。その後、図９及び図１０で説明したディスチャージが行われ、時刻ｔ２において、図１１で説明したデータのセンスが行われる。
【０１０７】
その後、同一のデータについての読み出しが再度行われる。すなわち、再度ビット線のプリチャージ及びディスチャージが行われ、時刻ｔ３において２回目のセンスが行われる。なお、図示していないが、２回目の読み出し時においてもセル電流Ｉcell_totalが上限値ＩＲＥＦを超える場合には、ビット線ＢＬの電位は（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ２）とされる。
【０１０８】
なお、電流源回路４１の供給する電流Ｉref１は、Ｉref１＝（Ｉref１Ａ＋Ｉref１Ｂ）なる関係があり、一定である。また、抵抗素子４３の抵抗値をＲvとすると、ＢＬＣＬＡＭＰ＝（Ｉref１Ａ・Ｒv＋ＶＴＮ＋ＶＲＥＦ＿ＳＲＣ）であり、ＶＰＲＥ＝Ｉref１Ａ・Ｒvである。従って、図２０におけるＶＰＲＥ１は、電流Ｉref１Ｂが流れない場合のＶＰＲＥであって、（Ｉref１・Ｒv＋ＶＲＥＦ＿ＳＲＣ）である。これは第１の実施形態と同様である。他方、ＶＰＲＥ２は、電流Ｉref１Ｂが流れる場合のＶＰＲＥであって、（（Ｉref１−Ｉref１Ｂ）・Ｒv＋ＶＲＥＦ＿ＳＲＣ）である。よって、当然ながらＶＰＲＥ２＜ＶＰＲＥ１となる。
【０１０９】
＜効果＞  
上記のように、この発明の第２の実施形態に係る半導体記憶装置であると、下記（２）の効果が得られる。
【０１１０】
（２）ＮＡＮＤ型フラッシュメモリの動作信頼性を向上出来る（その１）。  
本実施形態に係るＮＡＮＤ型フラッシュメモリであると、データの読み出し動作時及びベリファイ動作時においてソース線ＳＬに流れる電流を検出する検出回路７０を設けている。そして、検出回路７０における検出結果に応じて、ビット線ＢＬのプリチャージレベルを決定している。より具体的には、Ｉcell_totalが上限値を超えないようにプリチャージレベルを制御している。従って、ＮＡＮＤ型フラッシュメモリの信頼性を向上出来る。本効果につき、以下説明する。
【０１１１】
図２１は、本実施形態のようにビット線ドライバ４０を検出回路７０における検出結果に応じて制御しない場合の、ビット線のプリチャージレベルと電流Ｉcell_totalの変化を示すグラフであり、電流Ｉcell_totalが増加していく場合について示している。
【０１１２】
図示するように、ビット線ドライバ４０を制御しない場合、電流Ｉcell_totalにかかわらず、ビット線ＢＬの電位は一定値に固定される。つまり、電流Ｉcell_totalは一切制御されないため、読み出しデータによっては、電流Ｉcell_totalは上限値を超える場合があり得る。
【０１１３】
しかしながら本実施形態であると、ビット線ＢＬの電位を制御することで、ソース線ＳＬの電流Ｉcell_totalの過度の増加を抑制し、ＮＡＮＤ型フラッシュメモリの信頼性を向上出来る。この点につき、まず図２２を用いて説明する。図２２は、本実施形態に係るメモリセルトランジスタＭＴの電圧関係を示す回路図である。
【０１１４】
図示するように、電流Ｉcell_totalが小さい場合には、ソース線ＳＬの電位はＶＲＥＦ＿ＳＲＣとされ、ビット線ＢＬの電位は（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ）とされる。この場合、メモリセルトランジスタＭＴのゲート・ソース間電圧Ｖgsは、ほぼ読み出しレベルに等しい。
【０１１５】
他方、電流Ｉcell_totalが上昇した際には、ビット線ドライバ４０はＢＬＣＬＡＭＰを低下させる。すなわち、ビット線ＢＬの電位は（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ）から、（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ−α）に低下される。この低下分αは、（Ｉref−Ｉref１Ｂ）・Ｒvに相当する。従って、電流Ｉcell_totalが小さい場合に比べてＶgs及びＶdsが十分に取れなくなる。その結果、電流Ｉcell_totalの増加も抑制され、電流Ｉcell_totalが上限値を超えることを防止出来る。
【０１１６】
本実施形態における、ビット線のプリチャージレベルと電流Ｉcell_totalとの関係を、図２３に示す。図２３は図２１と同様、電流Ｉcell_totalが増加していく場合について示している。図示するように、本実施形態の場合には電流Ｉcell_totalが上限値に達すると、ビット線ＢＬのプリチャージレベルが低下されるため、それ以上の電流Ｉcell_totalの増加が抑制される。
【０１１７】
［第３の実施形態］  
次に、この発明の第３の実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第２の実施形態において、第２の実施形態と異なる手法により電圧ＶＲＥＦを生成するものである。以下では、上記第２の実施形態と異なる点についてのみ説明する。
【０１１８】
図２４は、本実施形態に係るＮＡＮＤ型フラッシュメモリ１のブロック図である。図示するように、本実施形態に係るＮＡＮＤ型フラッシュメモリ１は、第２の実施形態で説明した図１８の構成において、検出回路７０及びビット線ドライバ４０に改良を加えたものである。
【０１１９】
検出回路７０は、図１８に示す構成において、ＭＯＳトランジスタ７２のゲートがＭＯＳトランジスタ７１のドレインに接続されている。そして、ＭＯＳトランジスタ７２のドレインとＭＯＳトランジスタ７１のドレインとの接続ノードにおける電位が、電圧ＶＡとしてビット線ドライバ４０へ供給される。
【０１２０】
ビット線ドライバ４０は、図１８に示す構成において更にｎチャネルＭＯＳトランジスタ４６及びｐチャネルＭＯＳトランジスタ４７を備えている。ＭＯＳトランジスタ４６のソースは接地され、ゲートに信号Ｎ＿ＧＡＴＥが与えられる。
【０１２１】
ＭＯＳトランジスタ４７は、ゲートがＭＯＳトランジスタ７２のゲートに接続され、ソースが電源電位ＶＤＤに接続され、ドレインがＭＯＳトランジスタ４６のドレインに接続されている。すなわち、ＭＯＳトランジスタ４７は、ＭＯＳトランジスタ７２と共にカレントミラー回路を形成している。従って、ＭＯＳトランジスタ４７に流れる電流Ｉref２は、Ｉrefに応じた電流である。すなわち、ＭＯＳトランジスタ４７、７２が同一のゲート幅を有していれば、Ｉref＝Ｉref２となり、異なっていればその比率に応じた値となる。そして、ＭＯＳトランジスタ４６のドレインとＭＯＳトランジスタ４７のドレインとの接続ノードにおける電位が、電圧ＶＢとして比較器４５の正転入力端子（＋）に入力される。この電圧ＶＢが、第２の実施形態で説明した基準電圧ＶＲＥＦに対応する。
【０１２２】
比較器４５は、電圧ＶＡと電圧ＶＢとを比較する。すなわち、ＶＢ≧ＶＡの場合には信号Ｇ＿ＣＬ＝“Ｈ”を出力し、ＶＢ＜ＶＡの場合にはＧ＿ＣＬ＝“Ｌ”を出力する。
【０１２３】
以上の構成において、信号Ｎ＿ＧＡＴＥは、電圧ＶＢを、Ｉcell_total＝ＩＲＥＦ（すなわちＩcmp＝Ｉref）における電圧ＶＡに等しくするような値に設定される。
【０１２４】
上記構成によっても、Ｉcell_totalがＩＲＥＦを超えると、信号Ｇ＿ＣＬが“Ｈ”レベルとされ、ＭＯＳトランジスタ４４がオン状態とされる。逆に、Ｉcell_totalがＩＲＥＦより小さければ、信号Ｇ＿ＣＬは“Ｌ”レベルとされ、ＭＯＳトランジスタ４４がオフ状態とされる。従って、第２の実施形態で説明した（２）の効果が得られる。
【０１２５】
［第４の実施形態］  
次に、この発明の第４の実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第２、第３の実施形態において、電流Ｉcell_totalの大きさにかかわらず、読み出しレベルが最も低いデータについての１回目の読み出し時、または消去ベリファイ時において、ビット線ＢＬのプリチャージレベルを低くするものである。以下では、上記第２、第３の実施形態と異なる点についてのみ説明する。
【０１２６】
図２５は、本実施形態に係るＮＡＮＤ型フラッシュメモリ１のブロック図である。本実施形態に係るＮＡＮＤ型フラッシュメモリ１の構成は、第２の実施形態で説明した図１８の構成及び第３の実施形態で説明した図２４の構成において、検出回路７０を廃すると共に、ビット線ドライバ４０の構成を変形し、コア制御回路９０がビット線ドライバ４０の動作を制御するものである。
【０１２７】
図示するように、本実施形態に係るビット線ドライバ４０は、第２、第３の実施形態で説明した図１８、図２４の構成において、比較器４５を廃した構成を有している。そして、信号Ｇ＿ＣＬは、シーケンサ８０の命令に基づいてコア制御回路９０によって与えられる。その他の構成は第２、第３の実施形態と同様であるので説明は省略する。
【０１２８】
＜ビット線ドライバ４０、シーケンサ８０、及びコア制御回路９０の動作について＞  
次に図２６を用いて、本実施形態に係るビット線ドライバ４０、シーケンサ８０、及びコア制御回路９０の動作について説明する。図２６は、ビット線ドライバ４０、シーケンサ８０、及びコア制御回路９０の動作を示すフローチャートであり、第２の実施形態で説明した図１９におけるステップＳ１１以降の処理に相当する。
【０１２９】
図示するように、読み出しレベルが最も低く（すなわち消去状態より一つ上の閾値電圧の最も低いデータ、更に換言すれば“１”データ）または消去ベリファイ動作時であって（ステップＳ４０、ＹＥＳ）、且つ１回目の読み出しである場合（ステップＳ４１、ＹＥＳ）、シーケンサ８０はコア制御回路９０に対して、信号Ｇ＿ＣＬを“Ｈ”レベルとするよう命令する。この命令に応答して、コア制御回路９０は信号Ｇ＿ＣＬを“Ｈ”レベルとする（ステップＳ４２）。
【０１３０】
その結果、第２の実施形態で説明したように、ＭＯＳトランジスタ４４がオン状態となり、ＢＬＣＬＡＭＰ＝（ＶＲＥＦ＿ＳＲＣ＋ＶＴＮ＋ＶＰＲＥ２）とされる（ステップＳ４３）。そして、ビット線ＢＬの電位は（ＢＲＥＦ＿ＳＲＣ＋ＶＰＲＥ２）となる（ステップＳ４４）。
【０１３１】
他方、消去ベリファイ動作時では無く、または読み出しレベルが最も低いデータではなく（すなわち“２”〜“７”データ、ステップＳ４０、ＮＯ）、または１回目の読み出しでは無い場合（ステップＳ４１、ＮＯ）、シーケンサ８０はコア制御回路９０に対して、信号Ｇ＿ＣＬを“Ｌ”レベルとするよう命令する。この命令に応答して、コア制御回路９０は信号Ｇ＿ＣＬを“Ｌ”レベルとする（ステップＳ４５）。
【０１３２】
その結果、第２の実施形態で説明したように、ＭＯＳトランジスタ４４がオフ状態となり、ＢＬＣＬＡＭＰ＝（ＶＲＥＦ＿ＳＲＣ＋ＶＴＮ＋ＶＰＲＥ１）とされる（ステップＳ４６）。そして、ビット線ＢＬの電位は（ＢＲＥＦ＿ＳＲＣ＋ＶＰＲＥ１）となる（ステップＳ４７）。
【０１３３】
図２７は、消去ベリファイ動作時、または“１”データを読み出す際における、各種信号の電圧変化を示すタイミングチャートであり、ビット線ＢＬ、信号ＢＬＣＬＡＭＰ、ソース線ＳＬ、及びワード線ＷＬの電圧を示している。
【０１３４】
図示するように、ワード線ＷＬ及びソース線ＳＬの電位変化は、第２の実施形態で説明した図２０と同様である。第２の実施形態と異なる点は、次の２点である。すなわち、“１”データについての１回目の読み出しの際、ＢＬＣＬＡＭＰが（ＶＲＥＦ＿ＳＲＣ＋ＶＴＮ＋ＶＰＲＥ２）に固定され、これによりビット線電位が（ＶＲＥＦ＿ＳＲＣ＋ＣＰＲＥ２）に固定される。また、２回目の読み出しの際（及び、図示しないが“２”データ以降の読み出しの際）、ＢＬＣＬＡＭＰが（ＶＲＥＦ＿ＳＲＣ＋ＶＴＮ＋ＶＰＲＥ１）に固定され、これによりビット線電位が（ＶＲＥＦ＿ＳＲＣ＋ＣＰＲＥ１）に固定される。
【０１３５】
すなわち、ソース線ＳＬに流れる電流Ｉcell_totalの大きさにかかわらず、“１”データについての最初のセンス時におけるビット線ＢＬの電位は、それ以降の読み出し時における電位よりも低い値とされる。
【０１３６】
＜効果＞  
上記のように、この発明の第４の実施形態に係る半導体記憶装置であると、下記（３）の効果が得られる。
【０１３７】
（３）簡便な回路構成にて、上記（２）の効果が得られる。  
通常、セル電流の総計Ｉcell_totalが最も大きくなる読み出し動作は、読み出しレベルの最も低いデータ、すなわち“１”データについての１回目の読み出しである。この場合において、消去状態のセルの電流が流れる為Ｉcell_totalが上限値を超える可能性が最も高い。これに対して、このレベルに対応するデータについての２回目の読み出し、及びこのレベルの読み出し以降に続いて行われる、このレベルよりも高い閾値電圧を有するデータの読み出し時には、Ｉcell_totalの値は比較的小さい。
【０１３８】
そこで本実施形態では、セル電流の総計Ｉcell_totalの値にかかわらず、“１”データについての最初の読み出し時におけるビット線ＢＬの電位（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ２）を、それ以降の読み出し時におけるビット線ＳＬの電位（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ１）よりも低くしている。従って、“１”データについての最初の読み出し時においては、メモリセルトランジスタのゲート・ソース間電圧Ｖgs及びドレイン・ソース間電圧Ｖdsが抑制されるので、Ｉcell_totalが上限値を超えることを防止出来る。それ以降の読み出し時には、Ｉcell_totalの値は比較的小さいため、ビット線ＢＬの電位を（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ１）としても、Ｉcell_totalが上限値を超えることは実用上、殆ど無いと言うことが出来る。従って、上記第１の実施形態で説明した（１）と同様の効果が得られる。
【０１３９】
また、本実施形態では電流Ｉcell_totalを監視する必要がなく、Ｉcell_totalに応じたＢＬＣＬＡＭＰの電位制御が不要である。従って、ビット線ドライバ４０の構成を簡略化しつつ、上記効果が得られる。
【０１４０】
なお、上記は読み出しシーケンスにおける最初の読み出し対象データが“１”データで始まる場合である場合を仮定している。従って、例えば最初の読み出し対象データが“４”データであれば、“４”データについての１回目の読み出し時において、セル電流の総計が最大となる。つまり、データの読み出し動作時における最初の読み出し対象データについての１回目の読み出し時において、セル電流が最大となる。このことは、本明細書における以降の記載においても同様である。従って、そのような場合ににおいて、ビット線ＢＬの電位を（ＶＲＥＦ＿ＳＲＣ＋ＶＰＲＥ２）とすれば良い。
【０１４１】
［第５の実施形態］  
次に、この発明の第５の実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第１の実施形態と、第２または第３の実施形態とを組み合わせたものである。
【０１４２】
図２８は、この発明の第５の実施形態に係るＮＡＮＤ型フラッシュメモリのブロック図である。図示するようにＮＡＮＤ型フラッシュメモリ１は、メモリセルアレイ１０、センスアンプ２０、ロウデコーダ３０、ビット線ドライバ４０、ＭＯＳトランジスタ５０、ソース線制御回路６０、検出回路７０、シーケンサ８０、及びコア制御回路９０を備えている。
【０１４３】
メモリセルアレイ１０、センスアンプ２０、ロウデコーダ３０、ＭＯＳトランジスタ５０、ソース線制御回路６０、検出回路７０、シーケンサ８０、及びコア制御回路９０の構成及び動作は、第１の実施形態で説明した通りである。
【０１４４】
他方、ビット線ドライバ４０は、第２の実施形態で説明した図１８の構成、または第３の実施形態で説明した図２４の構成を有している。すなわちビット線ドライバ４０は、検出回路７０から出力される電圧ＶＡを、基準電圧ＶＲＥＦまたは電圧ＶＢと比較し、その結果に応じてＢＬＣＬＡＭＰを制御する。
【０１４５】
本実施形態に係るＮＡＮＤ型フラッシュメモリ１の動作は、第１の実施形態で説明した図１２のフローチャートと、第２の実施形態で説明した図１９のフローチャートを組み合わせたものとなる。つまり、シーケンサ８０は、セル電流Ｉcell_totalが上限値ＩＲＥＦを超えると、同一データについての読み出し回数を複数回に決定する。同時にビット線ドライバ４０は、ＭＯＳトランジスタ４４をオン状態としてビット線ＢＬのプリチャージレベルを下げる。
【０１４６】
＜効果＞  
本実施形態に係る構成であると、読み出し時間を短縮出来ると同時に、セル電流Ｉcell_totalの過度の増加を防止出来る。すなわち、第１の実施形態で説明した（１）の効果と、第２の実施形態で説明した（２）の効果とを、併せて得ることが出来る。
【０１４７】
［第６の実施形態］  
次に、この発明の第６の実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第１の実施形態と第４の実施形態とを組み合わせたものである。図２９は、本実施形態に係るＮＡＮＤ型フラッシュメモリのブロック図である。
【０１４８】
本実施形態に係るＮＡＮＤ型フラッシュメモリ１は、上記第１の実施形態で説明した構成において、ビット線ドライバ４０を第４の実施形態で説明した構成に置き換えたものである。すなわち図２９において、メモリセルアレイ１０、センスアンプ２０、ロウデコーダ３０、ＭＯＳトランジスタ５０、ソース線制御回路６０、検出回路７０、シーケンサ８０、及びコア制御回路９０の構成及び動作は、第１の実施形態で説明した通りである。
【０１４９】
他方、ビット線ドライバ４０は、第４の実施形態で説明した図２５の構成を有している。すなわちビット線ドライバ４０は、コア制御回路９０から与えられる信号Ｇ＿ＣＬに応じて、ＢＬＣＬＡＭＰを制御する。
【０１５０】
本実施形態に係るＮＡＮＤ型フラッシュメモリ１の動作は、第１の実施形態で説明した図１２のフローチャートと、第４の実施形態で説明した図２６のフローチャートを組み合わせたものとなる。つまり、シーケンサ８０は、セル電流Ｉcell_totalが上限値を超えるか否かに応じて、同一データについての読み出し回数を決定する。そしてビット線ドライバ４０は、“１”データ読み出し時または消去ベリファイ時であって、且つ１回目の読み出し動作である場合にのみ、ＭＯＳトランジスタ４４をオン状態として、ビット線ＢＬのプリチャージレベルを下げる。
【０１５１】
＜効果＞
本実施形態に係る構成であると、読み出し時間を短縮出来ると同時に、簡便な構成により、セル電流Ｉcell_totalの過度の増加を防止出来る。すなわち、第１の実施形態で説明した（１）の効果と、第４の実施形態で説明した（３）の効果とを、併せて得ることが出来る。
【０１５２】
［第７の実施形態］  
次に、この発明の第７の実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第１乃至第６実施形態のいずれかにおいて、セル電流Ｉcell_totalに応じてソース線ＳＬの電位を制御するものである。以下では、第１乃至第６の実施形態と異なる点についてのみ説明する。
【０１５３】
＜ソース線制御回路６０及び検出回路７０の構成について＞
図３０は、本実施形態に係るソース線制御回路６０及び検出回路７０の回路図である。図示するように検出回路７０は、第１の実施形態で説明した図１の構成において、ｎチャネルＭＯＳトランジスタ７４を更に備えている。
【０１５４】
ＭＯＳトランジスタ７４は、ゲートがインバータ７３の出力ノードに接続され（すなわちフラグＦＬＡＧが入力され）、ソースが接地され、ドレインがノードＧ＿Ｓｏｕｒｃｅに接続されている。
【０１５５】
ソース線制御回路６０は、第１の実施形態で説明した図１の構成において、ＭＯＳトランジスタ６５のゲート（ノードＧ＿Ｓｏｕｒｃｅ）が、比較器６４における比較結果と、ＭＯＳトランジスタ７４のドレイン電位とによって制御される。
【０１５６】
＜ソース線制御回路６０及び検出回路７０の動作について＞  
次に、読み出し動作時及びベリファイ動作時におけるソース線制御回路６０及び検出回路７０の動作について、図３１を用いて説明する。図３１は、読み出し動作時及びベリファイ動作時における、ソース線制御回路６０及び検出回路７０の動作を示すフローチャートである。
【０１５７】
図示するように、第１の実施形態で説明したステップＳ１１の後、電流Ｉcmpが基準電流Ｉrefを超える場合（ステップＳ１２、ＹＥＳ）、インバータ７３の出力ノード（ＦＬＡＧ）は“Ｈ”レベルとなる。従って、ＭＯＳトランジスタ７４がオン状態となる（ステップＳ５０）。よって、ノードＧ＿Ｓｏｕｒｃｅの電位が低下する。その結果、ＭＯＳトランジスタ６５の駆動力が低下する。そのため、電流Ｉcell_totalが低下し、ソース線ＳＬに許容される上限値となる。またソース線ＳＬの電位はＶＲＥＦ＿ＳＲＣより上昇し、最終的に電流Ｉcell_totalの上限値とつりあう値となる（ステップＳ５１）。
【０１５８】
他方、電流Ｉcmpが基準電流Ｉrefを超えない場合（ステップＳ１２、ＮＯ）、インバータの出力ノードは“Ｌ”レベルとなる。従って、ＭＯＳトランジスタ７４がオフ状態となる（ステップＳ５２）。よって、ノードＧ＿Ｓｏｕｒｃｅの電位は比較器６４の出力によって制御される。その結果、ソース線ＳＬの電位はＶＲＥＦ＿ＳＲＣを維持する（ステップＳ５３）。
【０１５９】
上記説明した読み出し動作時及びベリファイ動作時におけるソース線ＳＬ及びワード線ＷＬの電圧について、図３２を用いて説明する。図３２は、ソース線ＳＬ及びワード線ＷＬの電位変化を示すタイミングチャートである。ビット線ＢＬ、ＢＬＣＬＡＭＰ、ウェル領域３２等の電位変化は、第１乃至第６の実施形態で説明した通りである。
【０１６０】
図示するように、時刻ｔ０において読み出し動作が開始される。時刻ｔ０において、ロウデコーダ３０は選択ワード線ＷＬに電圧ＶＣＧＲを印加し、非選択ワード線ＷＬに電圧ＶＲＥＡＤを印加する。
【０１６１】
更にソース線制御回路６０は、ソース線ＳＬの電位を制御する。前述の通り、ビット線ＢＬからソース線ＳＬに流れる電流Ｉcell_totalが上限値ＩＲＥＦを超えていなければ、ソース線ＳＬの電位はＶＲＥＦ＿ＳＲＣに固定され、上限値を超えていれば、ＶＲＥＦ＿ＳＲＣよりも高い値となる。上限値を超えている場合のソース線ＳＬの電位を、図３２では斜線の領域として示している。
【０１６２】
その後は、第１乃至第６の実施形態で説明した通り、プリチャージ、ディスチャージ、及びセンスが行われる。
【０１６３】
＜効果＞  
上記のように、この発明の第７の実施形態に係る半導体記憶装置であると、上記第１乃至第６の実施形態で説明した（１）乃至（３）の効果に加えて、下記（４）の効果が得られる。
【０１６４】
（４）ＮＡＮＤ型フラッシュメモリの動作信頼性を向上出来る（その２）。  
本実施形態に係るＮＡＮＤ型フラッシュメモリであると、検出回路７０における電流Ｉcell_totalの検出結果に応じてソース線ＳＬの電位を変化させ、これによりＩcell_totalが上限値を超えないように制御している。従って、ＮＡＮＤ型フラッシュメモリの信頼性を向上出来る。本効果につき、以下説明する。
【０１６５】
本実施形態に係る構成であると、電流Ｉcell_totalが小さい場合には、メモリセルトランジスタＭＴのゲート・ソース間電圧Ｖgsは、ほぼ読み出しレベルに等しい。他方、電流Ｉcell_totalが上昇した際には、検出回路７０によるフィードバック制御により、ノードＧ＿Ｓｏｕｒｃｅの電位が低下する。その結果、ソース線ＳＬの電位が上昇する。すなわち、ソース線ＳＬの電位は（ＶＲＥＦ＿ＳＲＣ）から、電流Ｉcell_totalに応じたαＶだけ上昇する。従って、図２２の場合と同様に、電流Ｉcell_totalが小さい場合に比べてＶgs及びＶdsが十分に取れなくなる。図２２と異なる点は、ソース線ＳＬに対するビット線ＢＬの電位を下げる代わりに、ビット線ＢＬに対するソース線ＳＬの電位を上げている点である。その結果、電流Ｉcell_totalの増加も抑制され、電流Ｉcell_totalが上限値を超えることを防止出来る。
【０１６６】
図３３は、ソース線ＳＬの電位及び電流Ｉcell_totalの変化を示すグラフである。図示するように、本実施形態の場合、電流Ｉcell_totalが上限値に達すると、ノードＧ＿Ｓｏｕｒｃｅの電位が低下される。そのため、それ以上の電流Ｉcell_totalの増加が抑制される。それに伴い、電流Ｉcell_totalが抑制された時点から、ソース線ＳＬの電位が上昇する。
【０１６７】
［第８の実施形態］  
次に、この発明の第８の実施形態に係る半導体記憶装置について説明する。本実施形態は、本実施形態は、上記第７の実施形態において、電流Ｉcell_totalの大きさにかかわらず、消去ベリファイ時または読み出しレベルが最も低いデータについての、１回目の読み出し時において、ソース線ＳＬの電位を高くするものである。以下では、上記第７の実施形態と異なる点についてのみ説明する。
【０１６８】
図３４は、本実施形態に係るソース線制御回路６０及び検出回路７０の回路図である。図示するように、ソース線制御回路６０及び検出回路７０の構成は第１の実施形態と同様である。第１の実施形態と異なる点は、ソース線制御回路６０の電圧比較部６４の反転入力端子に入力される電圧が、コア制御回路９０によってＶＲＥＦ＿ＳＲＣ１とＶＲＥＦ＿ＳＲＣ２とのいずれかに可変とされている点である。なお、ＶＲＥＦ＿ＳＲＣ１＜ＶＲＥＦ＿ＳＲＣ２である。コア制御回路９０は、シーケンサ９０の命令によって、ＶＲＥＦ＿ＳＲＣ１とＶＲＥＦ＿ＳＲＣ２とのいずれかを選択する。
【０１６９】
＜ソース線制御回路６０、シーケンサ８０、及びコア制御回路９０の動作について＞  
次に図３５を用いて、本実施形態に係るソース線制御回路６０、シーケンサ８０、及びコア制御回路９０の動作について説明する。図３５は、ソース線制御回路６０、シーケンサ８０、及びコア制御回路９０の動作を示すフローチャートであり、第１の実施形態で説明したステップＳ１１以降の処理に相当する。
【０１７０】
図示するように、読み出しレベルが最も低くまたは消去ベリファイ動作時であって（ステップＳ４０、ＹＥＳ）、且つ１回目の読み出しである場合（ステップＳ４１、ＹＥＳ）、シーケンサ８０はコア制御回路９０に対してＶＲＥＦ＿ＳＲＣ２を選択するよう命令する。この命令に応答して、コア制御回路９０はＶＲＥＦ＿ＳＲＣ２を、ソース線制御回路６０の電圧比較部６４に供給する（ステップＳ６０）。従って、ソース線ＳＬの電位はＶＲＥＦ＿ＳＲＣ２とされる（ステップＳ６１）。
【０１７１】
他方、消去ベリファイ動作時では無く、または読み出しレベルが最も低いデータではなく（ステップＳ４０、ＮＯ）、または１回目の読み出しでは無い場合（ステップＳ４１、ＮＯ）、シーケンサ８０はコア制御回路９０に対してＶＲＥＦ＿ＳＲＣ１を選択するよう命令する。この命令に応答して、コア制御回路９０はＶＲＥＦ＿ＳＲＣ１を、ソース線制御回路６０の電圧比較部６４に供給する（ステップＳ６２）。従って、ソース線ＳＬの電位はＶＲＥＦ＿ＳＲＣ１とされる（ステップＳ６３）。
【０１７２】
図３６は、消去ベリファイ動作時、または“１”データを読み出す際における、各種信号の電圧変化を示すタイミングチャートであり、ビット線ＢＬ、信号ＢＬＣＬＡＭＰ、ソース線ＳＬ、及びワード線ＷＬの電圧を示している。
【０１７３】
図示するように、第７の実施形態と異なり、“１”データ（または消去ベリファイ）についての１回目の読み出しの際、ソース線ＳＬの電位がＶＲＥＦ＿ＳＲＣ２に固定される。すなわち、ソース線ＳＬに流れる電流Ｉcell_totalの大きさにかかわらず、ソース線ＳＬの電位は、それ以降の読み出し時における電位（ＶＲＥＦ＿ＳＲＣ１）よりも高い値（ＶＲＥＦ＿ＳＲＣ２）で固定される。
【０１７４】
＜効果＞  
上記のように、この発明の第８の実施形態に係る半導体記憶装置であると、第１乃至第６の実施形態で説明した（１）乃至（３）の効果に加えて、下記（５）の効果が得られる。
【０１７５】
（５）簡便な回路構成にて、上記（４）の効果が得られる。  
上記第４の実施形態で説明した通り、セル電流の総計Ｉcell_totalが最も大きくなる読み出し動作は、“１”データについての１回目の読み出しである。この場合において、消去状態のセルの電流が流れる為Ｉcell_totalが上限値を超える可能性が最も高い。
【０１７６】
そこで本実施形態では、セル電流の総計Ｉcell_totalの値にかかわらず、“１”データについての最初の読み出し時におけるソース線ＳＬの電位（ＶＲＥＦ＿ＳＲＣ２）を、それ以降の読み出し時におけるソース線ＳＬの電位（ＶＲＥＦ＿ＳＲＣ１）よりも高くしている。消去ベリファイ時も同様である。従って、“１”データについての最初の読み出し時においては、メモリセルトランジスタのゲート・ソース間電圧Ｖdsが抑制されるので、Ｉcell_totalが上限値を超えることを防止出来る。従って、上記第１の実施形態で説明した（１）と同様の効果が得られる。
【０１７７】
また、本実施形態によればＩcell_totalに応じたノードＧ＿Ｓｏｕｒｃｅの電位制御が不要である。従って、ソース線制御回路６０の構成を簡略化しつつ、上記効果が得られる。
【０１７８】
なお、第４の実施形態で説明した通り、例えば最初の読み出し対象データが“４”データであれば、“４”データについての１回目の読み出し時において、セル電流の総計が最大となる。つまり、データの読み出し動作時における最初の読み出し対象データについての１回目の読み出し時において、セル電流が最大となる。従って、そのような場合ににおいて、ソース線ＳＬの電位をＶＲＥＦ＿ＳＲＣ２とすれば良い。
【０１７９】
以上のように、この発明の第１乃至第８の実施形態に係る半導体記憶装置であると、データの読み出し動作時及びベリファイ動作時において、ソース線ＳＬに流れる電流Ｉcell_totalを検出する検出回路７０を備えている。そして、検出回路７０における検出結果に応じて、センスアンプ２０及びビット線ドライバ４０の動作が制御される。その結果、ＮＡＮＤ型フラッシュメモリの動作性能を向上出来る。
【０１８０】
すなわち、第１の実施形態に係る構成であると、センスアンプ２０は、検出回路７０で検出された電流量に応じて、同一データについて行うセンス回数を決定する。つまり、セル電流の総計Ｉcell_totalをチップ内部でモニタし、その結果が、次のセンス動作を行うか否かの判断にフィードバックされる。より具体的には、一回のセンス動作の間に流れるセル電流総計が大きい場合には、もう一度同じレベルでセンス動作を行う。セル電流総計が小さい時はそのレベルでのセンス動作を終了する。この方法によれば、読み出し時及びベリファイ時におけるセンス動作回数を少なく出来、ＮＡＮＤ型フラッシュメモリを高速化出来る。
【０１８１】
また第２乃至第４の実施形態に係る構成であると、ビット線ドライバ４０は、検出回路７０で検出された電流量に応じて、ビット線のプリチャージ電位を制御する。つまり、セル電流の総計Ｉcell_totalをチップ内部でモニタし、その結果が、ビット線プリチャージ電位にフィードバックされる。そして最終的には、メモリセルトランジスタＭＴのＶdsが変化され、その結果、セル電流の総計Ｉcell_totalが上限値ＩＲＥＦを越えないように制御される。より具体的には、セル電流総計が大きい場合には、ビット線プリチャージ電位を本来の設定値から下げることでＶdsが小さくされる。逆に小さい場合には、ビット線プリチャージ電位は本来の設定値のままとされる。本制御により、チップの動作電流が許容電流スペックを越える事態になることを自動的に回避できる。更に、メモリセルトランジスタＭＴのバイアス条件も自動的に制御される。その結果、テスト等の手段による最適化の手間が短縮できる。  
実施形態に係る半導体記憶装置は、電荷蓄積層と制御ゲートとを含み、閾値電圧に応じて２値以上のデータを保持可能なメモリセルと、前記メモリセルのドレインに電気的に接続されたビット線と、前記メモリセルのソースに電気的に接続されたソース線と、前記データの読み出し動作時及びベリファイ動作時において、前記ソース線に流れる電流を検出する検出回路と、前記データの読み出し動作時及びベリファイ動作時において、前記検出回路で検出された電流量に応じて、前記ビット線のプリチャージ電位を制御するビット線ドライバとを具備する。  
また、前記ビット線ドライバは、前記検出回路で検出された前記電流量が予め定められた一定値を超えた際において、前記プリチャージ電位を、前記電流量が前記一定値を超えない場合に比べて低く設定することを特徴とする請求項４記載の半導体記憶装置。
【０１８２】
更に第７、第８の実施形態に係る構成であると、ソース線制御回路６０は、検出回路７０で検出された電流量に応じて、ソース線の電位を制御する。つまり、セル電流の総計Ｉcell_totalをチップ内部でモニタし、その結果がソース線の電位にフィードバックされる。より具体的には、電流量が予め定められた上限閾値を超えるような場合には、セル電流を接地電位に流すＭＯＳトランジスタの電流駆動力を低下させる。これにより、ソース線ＳＬの電位を上昇させてメモリセルトランジスタＭＴのＶgsを低下させ、ソース線ＳＬに流れる電流量が上限閾値を超えることを防止している。
【０１８３】
更に第５乃至第８の実施形態に係る構成であると、セル電流に応じてセンス回数を制御すると共に、セル電流に応じてビット線及び／またはソース線の電位を、上記の通りに制御している。従って、ＮＡＮＤ型フラッシュメモリの高速動作と高信頼性とを両立出来る。
【０１８４】
なお、上記実施形態ではデータの読み出し時において、読み出しデータに関わらず、ソース線ＳＬに正電位ＶＲＥＦ＿ＳＲＣが印加される場合について説明した。しかしながら、読み出しレベルが負であるデータの読み出し時にのみ、ＶＲＥＦ＿ＳＲＣをソース線ＳＬに印加し、それ以外の場合にはソース線ＳＬを０Ｖとしても良い。
【０１８５】
このためには、例えばビット線ドライバ４０においてスイッチ素子を設ける。そしてスイッチ素子により、読み出しレベルが負である場合には、抵抗素子４３の他端をソース線ＳＬに接続し、それ以外の場合には接地レベル（０Ｖ）ノードに接続すれば良い。更に、ソース線制御回路６０においてスイッチ素子を設ける。そしてスイッチ素子により、読み出しレベルが負である場合には、ノードＧ＿Ｓｏｕｒｃｅを比較器６４に接続し、それ以外の場合には“Ｈ”レベルに接続してＭＯＳトランジスタ６５を常時オン状態とすれば良い。
【０１８６】
しかしながら、全データにつきソース線ＳＬにＶＲＥＦ＿ＳＲＣを印加する方法であると、読み出しレベルに応じた上記スイッチング処理が不要となる。従って、ビット線ドライバ４０及びソース線制御回路６０の構成を簡略化出来ると共に、動作を高速化出来る。また、全データについて同一の読み出し方法に統一することで、閾値分布の間隔を狭めることも出来る。すなわち、読み出しレベルが負か否かによって読み出し方法を変える場合には、例えば図３の閾値分布の場合、“１”データの閾値分布と“２”データの閾値分布との間隔は、その他のデータ間の分布間隔よりも拡げる必要がある。しかし、読み出し方法を統一すれば、このような必要は無い。
【０１８７】
更に、上記実施形態では、ＭＯＳトランジスタ７１のゲート幅Ｗ２がＭＯＳトランジスタ６５のゲート幅Ｗ１よりも小さい場合を例に挙げて説明した。これにより、ＭＯＳトランジスタ７１、７２に流す電流を小さく出来、検出回路７０における消費電流を削減出来る。しかし、消費電流が問題とならないような場合には、Ｗ１＝Ｗ２であっても良い。
【０１８８】
更に、上記実施形態では消去状態（“０”データ）以外の読み出しレベルが負であるデータが１個だけ（“１”データ）である場合を例に説明したが、勿論、２個以上あって良い。更に、上記実施形態ではＮＡＮＤ型フラッシュメモリを例に説明したが、例えばＮＯＲ型フラッシュメモリにも適用出来、セル電流の増加によりソース線電位の上昇が問題となる半導体記憶装置全般に適用可能である。
【０１８９】
なお、本願発明は上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出されうる。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出されうる。
【符号の説明】
【０１９０】
１…フラッシュメモリ、１０…メモリセルアレイ、１１…メモリセルユニット、２０…センスアンプ、３０…ロウデコーダ、４０…ビット線ドライバ、４１…電流源、４２、４４、６３、６５、６６、７１、７２、７４、１２４〜１２７…ＭＯＳトランジスタ、４３…抵抗素子、４５、６４…比較器、４６、４７、５０、１００、１０２〜７２、１４４〜、１４６、１４７…ＭＯＳトランジスタ、４３…可変抵抗素子、６０…ソース線制御回路、６１…電圧比較部、６２…電圧制御部、７０…検出回路、７３…インバータ、８０…シーケンサ、９０…コア制御回路、１００…半導体基板、１０１、１０２…ウェル領域、１０３…ゲート絶縁膜、１０４、１０６…多結晶シリコン層、１０５…ゲート間絶縁膜、１０７…不純物拡散層、１０８、１１１…層間絶縁膜、１０９、１１０、１１２…金属配線層、１１３…チャネル
【図１】
2011040166.tif 000003
【図２】
2011040166.tif 000004
【図３】
2011040166.tif 000005
【図４】
2011040166.tif 000006
【図５】
2011040166.tif 000007
【図６】
2011040166.tif 000008
【図７】
2011040166.tif 000009
【図８】
2011040166.tif 000010
【図９】
2011040166.tif 000011
【図１０】
2011040166.tif 000012
【図１１】
2011040166.tif 000013
【図１２】
2011040166.tif 000014
【図１３】
2011040166.tif 000015
【図１４】
2011040166.tif 000016
【図１５】
2011040166.tif 000017
【図１６】
2011040166.tif 000018
【図１７】
2011040166.tif 000019
【図１８】
2011040166.tif 000020
【図１９】
2011040166.tif 000021
【図２０】
2011040166.tif 000022
【図２１】
2011040166.tif 000023
【図２２】
2011040166.tif 000024
【図２３】
2011040166.tif 000025
【図２４】
2011040166.tif 000026
【図２５】
2011040166.tif 000027
【図２６】
2011040166.tif 000028
【図２７】
2011040166.tif 000029
【図２８】
2011040166.tif 000030
【図２９】
2011040166.tif 000031
【図３０】
2011040166.tif 000032
【図３１】
2011040166.tif 000033
【図３２】
2011040166.tif 000034
【図３３】
2011040166.tif 000035
【図３４】
2011040166.tif 000036
【図３５】
2011040166.tif 000037
【図３６】
2011040166.tif 000038