(57)【要約】【課題】データ消去時に、消去と書き込みを繰り返す無限ループの発生を防止でき、製品不良率を低減できる不揮発性半導体記憶装置のデータ消去方法を提供する。【解決手段】複数のメモリセルに電圧を印加して書き込みを行い、複数のメモリセルの閾値を電圧ＰＶ以上に設定し、その後、複数のメモリセルに対して一括して消去を行い、複数のメモリセルの閾値を電圧ＥＶ以下に設定する。複数のメモリセルのうち、電圧ＯＥＶより低い閾値を持つメモリセルの各々に、前記書き込みにおいて印加した電圧より低い電圧を印加して弱い書き込みを１回だけ行う。次に、複数のメモリセルのうち、電圧ＯＥＶより低い閾値を持つメモリセルに対して、閾値が電圧ＯＥＶ以上になるまで弱い書き込みを繰り返す。その後、複数のメモリセルに電圧ＥＶより閾値が高いメモリセルが存在する場合は、複数のメモリセルの閾値を電圧ＥＶ以下に設定する動作に戻る。【選択図】      図５
2006099912.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルに電圧を印加して書き込みを行い、前記複数のメモリセルの閾値を第１の所定電圧以上に設定するステップと、
前記複数のメモリセルに対して一括して消去を行い、前記複数のメモリセルの閾値を前記第１の所定電圧より低い第２の所定電圧以下に設定するステップと、
前記複数のメモリセルのうち、前記第２の所定電圧より低い第３の所定電圧よりさらに低い閾値を持つメモリセルの各々に、前記書き込みにおいて印加した前記電圧より低い電圧を印加して弱い書き込みを１回だけ行うステップと、
前記弱い書き込みを１回だけ行うステップの後、前記複数のメモリセルのうち、前記第３の所定電圧より低い閾値を持つメモリセルに対して、閾値が前記第３の所定電圧以上になるまで前記弱い書き込みを繰り返すステップと、
前記複数のメモリセルに対して、前記第２の所定電圧より閾値が高いメモリセルが存在しないか否か確認し、前記第２の所定電圧より閾値が高いメモリセルが存在するとき、前記複数のメモリセルの閾値を前記第２の所定電圧以下に設定するステップに戻るステップと、
を具備することを特徴とする不揮発性半導体記憶装置のデータ消去方法。
【請求項２】
前記複数のメモリセルのうち、前記第３の所定電圧より低い閾値を持つメモリセルの各々に、前記弱い書き込みを１回だけ行うステップを複数回繰り返して行うことを特徴とする請求項１に記載の不揮発性半導体記憶装置のデータ消去方法。
【請求項３】
複数のメモリセルを含むブロックが複数配置されたメモリセルアレイに対し、前記ブロックが含む複数のメモリセルに保持されたデータを一括して消去する、不揮発性半導体記憶装置のデータ消去方法において、
前記ブロックが含む複数のメモリセルに電圧を印加して書き込みを行い、前記複数のメモリセルの閾値を、書き込み判定電圧以上に設定するステップと、
前記ブロックが含む複数のメモリセルに対して一括して消去を行い、前記複数のメモリセルの閾値を、前記書き込み判定電圧より低い消去判定電圧以下に設定するステップと、
前記複数のメモリセルの閾値を各々順番に確認し、前記メモリセルの閾値が前記消去判定電圧より低い過消去判定電圧より低ければ、前記メモリセルに前記書き込みにおいて印加した前記電圧より低い電圧を印加する弱い書き込みを１回だけ行って次のメモリセルの閾値の確認へ移行し、前記メモリセルの閾値が前記過消去判定電圧以上であれば、そのまま次のメモリセルの閾値の確認へ移行するステップと、
前記複数のメモリセルの閾値を各々順番に確認し、前記メモリセルの閾値が前記過消去判定電圧より低ければ前記弱い書き込みを行って、閾値が前記過消去判定電圧以上になるまで前記閾値の確認と前記弱い書き込みとを繰り返した後、次のメモリセルの閾値の確認へ移行し、前記メモリセルの閾値が前記過消去判定電圧以上であれば、そのまま次のメモリセルの閾値の確認へ移行するステップと、
前記複数のメモリセルの閾値を確認し、少なくとも１つの前記メモリセルの閾値が前記消去判定電圧より高ければ、前記複数のメモリセルの閾値を前記消去判定電圧以下に設定するステップに戻るステップと、
を具備することを特徴とする不揮発性半導体記憶装置のデータ消去方式。
【請求項４】
前記メモリセルは制御ゲート、浮遊ゲート、ソース、及びドレインを有する電界効果トランジスタから構成され、前記弱い書き込みは、前記電界効果トランジスタの制御ゲートとドレインの少なくとも一方に、前記書き込みにおいて印加した電圧よりも低い電圧を印加することにより、前記書き込みによる閾値上昇よりも少ない閾値上昇が得られることを特徴とする請求項１乃至３のいずれか１つに記載の不揮発性半導体記憶装置のデータ消去方法。
【請求項５】
複数のメモリセルを含むブロックが複数配置されたメモリセルアレイと、
前記複数のメモリセルに対して書き込みを行う書き込み回路と、
前記ブロックが含む前記複数のメモリセルに対して一括して消去を行う消去回路と、
前記書き込み回路及び前記消去回路に書き込み及び消去の指示を出す制御回路とを具備し、
前記制御回路は、複数のメモリセルに電圧を印加して書き込みを行い、前記複数のメモリセルの閾値を第１の所定電圧以上に設定する手段と、
前記複数のメモリセルに対して一括して消去を行い、前記複数のメモリセルの閾値を前記第１の所定電圧より低い第２の所定電圧以下に設定する手段と、
前記複数のメモリセルのうち、前記第２の所定電圧より低い第３の所定電圧よりさらに低い閾値を持つメモリセルの各々に、前記書き込みにおいて印加した前記電圧より低い電圧を印加して弱い書き込みを１回だけ行う手段と、
前記弱い書き込みを１回だけ行うステップの後、前記複数のメモリセルのうち、前記第３の所定電圧より低い閾値を持つメモリセルに対して、閾値が前記第３の所定電圧以上になるまで前記弱い書き込みを繰り返す手段と、
前記複数のメモリセルに対して、前記第２の所定電圧より閾値が高いメモリセルが存在しないか否か確認し、前記第２の所定電圧より閾値が高いメモリセルが存在するとき、前記複数のメモリセルの閾値を前記第２の所定電圧以下に設定する手段に戻る手段とを含むことを特徴とする不揮発性半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、不揮発性半導体記憶装置、及び不揮発性半導体装置におけるデータの消去方法に関するものであり、例えば複数のメモリセルを有するブロック単位で消去を行うＮＯＲ型フラッシュメモリ、ＮＡＮＤ型フラッシュメモリ、及びこれらフラッシュメモリにおけるデータの消去方法に関するものである。
【背景技術】
【０００２】
不揮発性半導体記憶装置は、複数のメモリセル(一つのメモリセルが１ビットのデータに相当)に対して電子の注入または除去を行うことにより、メモリセルの閾値を変え、“１”または“０”データ(多値の場合は４つの状態)を形成している。
【０００３】
通常、ＮＯＲ型フラッシュメモリと呼ばれる不揮発性半導体記憶装置における書き込み動作(メモリセルに電子を注入する動作)は、最低１ビット単位で書き込むメモリセルを指定することができる。これは、あるビット線、及びワード線を指定して電圧を印加すれば、特定のビットのみ書き込み可能なバイアスに設定できるからである。なお、実際の製品では、書き込みを高速化するために、複数ビットを同時に書き込むこともある。
【０００４】
これに対し、消去の場合は、ワード線とウエル領域にバイアスを印加するため、ウエル領域を共通にしている全メモリセル(通常はブロック単位)を一括して消去することしかできない。このため、不揮発性半導体記憶装置のデータ消去動作は、次のような一連の動作の組み合わせとなっている。
【０００５】
図１４は、従来の不揮発性半導体記憶装置が行う一連の消去動作を示すフローチャートである。
【０００６】
まず、ランダムに“１”(消去状態)、“０”(書き込み状態)が存在している１つのブロック内のメモリセルうち、“１”を持つメモリセルのみを電圧ＰＶ(Program Verify Level)以上まで書き込む消去前書き込み(Preprogram)を行う（ステップＳ１０１）。図６（ａ）に、消去前書き込みを行う前のメモリセルの閾値分布を示し、図６（ｂ）に消去前書き込みを行った後のメモリセルの閾値分布を示す。
【０００７】
次に、前記ブロック内の全てのメモリセルに対して、一括消去(Erase Only)を行う（ステップＳ１０２）。この動作で、全てのメモリセルの閾値を、電圧ＥＶ(Erase Verify Level)以下まで低下させる。図６（ｃ）に、一括消去を行った後のメモリセルの閾値分布を示す。
【０００８】
ここで、各メモリセルは、実際には各種寸法、膜厚などがばらついており、前記一括消去の動作が終わった時点で、消え過ぎたメモリセル（過消去セル）が発生する。そこで、電圧ＯＥＶ(Over Erase Verify Level)より消え過ぎたメモリセルに対して、弱い書き込み(Weak Program)を行う。
【０００９】
この弱い書き込みの従来例としての動作は以下の通りである。
【００１０】
ブロック内の１つのメモリセル毎に、閾値が電圧ＯＥＶ以上であるか否かを判定(ベリファイ動作)する（ステップＳ１０３）。メモリセルの閾値が電圧ＯＥＶより低いとき、すなわち消え過ぎていれば、そのメモリセルに弱い書き込みを行う（ステップＳ１０４）。ここでいう弱い書き込み(Weak Program)とは、“０”状態に書き込むような高い電圧を印加するのではなく、それより低い電圧をドレイン、及びゲートに印加して行う書き込みを意味する。
【００１１】
このように、メモリセルに弱い書き込みを行った後、再びベリファイ動作を行う（ステップＳ１０３）。ここでも、メモリセルの閾値が電圧ＯＥＶより低ければ、再度弱い書き込みを行う（ステップＳ１０４）。このように、メモリセルの閾値が電圧ＯＥＶ以上になるまで、ベリファイと弱い書き込みとを繰り返す。そして、メモリセルの閾値が電圧ＯＥＶ以上になれば、次のメモリセルに移る（ステップＳ１０５）。
【００１２】
ブロック内の全てのメモリセルに対して弱い書き込みが終了した後は（ステップＳ１０６）、全てのメモリセルの閾値が電圧ＥＶを越えていないかを確認する（ステップＳ１０７）。電圧ＥＶを越えたセルが無ければ、ここで、全ての消去動作は終了する。もし、電圧ＥＶを越えたセルが存在していれば、再度、ステップＳ１０２へ戻り、一括消去以降の処理を再び行うことになる。以上が従来の一連の消去動作である。
【００１３】
しかしながら、ここで示した従来例には、以下のような問題点が存在する。
【００１４】
一括消去を行った後、図１５に示すように、閾値が電圧ＯＥＶよりかなり低いところまで消去される特異的なセル(以下、特異セルＢと記す)が存在する場合がある。これは、消去前書き込みにより最初の閾値を揃えても発生する。原因としては、主にそのセルの形状異常、カップリング比異常等が考えられる。
【００１５】
この特異的に閾値が低い特異セルＢが存在すると、弱い書き込みのときに、特異セルＢと同一のビット線上にある通常セルＡをベリファイする際、その通常セルＡの閾値が電圧ＯＥＶ以上であった場合でも、特異セルＢにリーク電流が流れるため、結果としてベリファイしている通常セルＡの閾値が低く見えてしまう。これは、閾値を電流で判断しているためである。このため、この通常セルＡには、電圧ＯＥＶ以上の閾値があるにもかかわらず、弱い書き込みが行われる。この際、特異セルＢのドレインに書き込み時のドレイン電圧が印加されるため(ドレインストレス)、僅かではあるが電子が注入され、特異セルＢの閾値が上昇する。こうして、過消去された特異セルＢのリーク電流が抑えられる程度まで弱い書き込みが繰り返される。もし、図１６に示すように、通常セルＡが電圧ＥＶ付近に閾値をもつメモリセルだったとすると、特異セルＢのために、通常セルＡに弱い書き込みが繰り返された結果、通常セルＡの閾値は電圧ＥＶ以上になってしまう。
【００１６】
このような状態では、最終的に、通常セルＡの閾値が電圧ＥＶ以下か否かを確認した際に、閾値が電圧ＥＶを越えていると判定され、再び一括消去の動作へ戻ってしまう。しかし、消去が速い特異セルＢは、再度の一括消去でも、特性は(形状起因で)変わらないため、再度電圧ＯＥＶよりかなり低いところまで閾値が低下してしまう。この場合、また同じように弱い書き込みが複数回繰り返される。このようにして、消去動作が無限ループに入ってしまい、終了しなくなる。
【００１７】
実際には、不揮発性半導体記憶装置の製品仕様として、消去時間がある一定時間を超えると、その製品は不良と判断される。そのため、製品の不良率が増えることになる。
【００１８】
また、前述した無限ループは次のような場合にも起こる。一括消去の際、消去が非常に遅い特異的なセル(以下、特異セルＣと記す)が存在する場合である。この場合、一括消去において、特異セルＣを電圧ＥＶ以下まで消去しようとする結果、図１７に示すように、１つのブロック内の残りの殆どのメモリセルの閾値が、電圧ＯＥＶ以下になってしまう。このように、特異セルＣと同一ビット線上にあるメモリセルの閾値が電圧ＯＥＶ以下であるため、オフ時のリーク電流が大きくなる。すると、前記メモリセルをベリファイしたときに、見かけの閾値が実際よりも低く判定され、実際に必要な回数より多い回数、弱い書き込みが行われる。このとき、このメモリセルと同一ビット線上に特異セルＣがあるため、特異セルＣもドレインストレスによって少しずつ書き込まれていく。その後、他のメモリセルへも同様に弱い書き込みが行われるため、図１８に示すように、特異セルＣが結果として電圧ＥＶ以上の閾値になってしまう。このような状態では、最終的に、特異セルＣの閾値が電圧ＥＶ以下か否かを確認した際に、閾値が電圧ＥＶを越えていると判定され、再び一括消去の動作へ戻ってしまう。この場合、特異セルＣ以外のメモリセルは大部分が再び電圧ＯＥＶ以下になり、これによりリーク電流が増えて、同様に、弱い書き込みが必要以上に複数回繰り返される。このようにして、消去動作が無限ループに入ってしまい、終了しなくなる。このような場合も、同様に製品の不良率が増える。
【００１９】
前述したように、不揮発性半導体記憶装置における消去の実行時に、一括消去と弱い書き込みとが繰り返される無限ループが発生すると、製品不良となってしまい、製品の不良率が増加してしまう。また、無限ループに入らないとしても、本来必要でない回数の弱い書き込みが行われることにより、消去時間自体が増大するため、製品の性能の悪化、及び製品のテスト時間が長くなるといった問題が生じる。
【００２０】
なお、特許文献１には以下のような技術が記載されている。全メモリセルトランジスタの一括消去後に、複数のディジット線それぞれに対し過消去状態のメモリセルトランジスタが存在するか否かを判定する。過消去状態のメモリセルトランジスタが存在すると判定されたときには、この過消去状態のメモリセルトランジスタを特定してこの過消去状態のメモリセルトランジスタに対してのみ浅い書き込みを行う。
【特許文献１】特開平８−２５５４８９号公報
【発明の開示】
【発明が解決しようとする課題】
【００２１】
そこでこの発明は、前記事情に鑑みてなされたものであり、データ消去時に、消去と書き込みを繰り返す無限ループの発生を防止でき、製品不良率を低減し、さらに製品性能の悪化及び製品テスト時間の増大を防ぐことができる不揮発性半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【００２２】
前記目的を達成するために、この発明の一実施形態の不揮発性半導体記憶装置のデータ消去方法は、複数のメモリセルに電圧を印加して書き込みを行い、前記複数のメモリセルの閾値を第１の所定電圧以上に設定するステップと、前記複数のメモリセルに対して一括して消去を行い、前記複数のメモリセルの閾値を前記第１の所定電圧より低い第２の所定電圧以下に設定するステップと、前記複数のメモリセルのうち、前記第２の所定電圧より低い第３の所定電圧よりさらに低い閾値を持つメモリセルの各々に、前記書き込みにおいて印加した前記電圧より低い電圧を印加して弱い書き込みを１回だけ行うステップと、前記弱い書き込みを１回だけ行うステップの後、前記複数のメモリセルのうち、前記第３の所定電圧より低い閾値を持つメモリセルに対して、閾値が前記第３の所定電圧以上になるまで前記弱い書き込みを繰り返すステップと、前記複数のメモリセルに対して、前記第２の所定電圧より閾値が高いメモリセルが存在しないか否か確認し、前記第２の所定電圧より閾値が高いメモリセルが存在するとき、前記複数のメモリセルの閾値を前記第２の所定電圧以下に設定するステップに戻るステップとを具備することを特徴とする。
【００２３】
また、この発明の一実施形態の不揮発性半導体記憶装置は、複数のメモリセルを含むブロックが複数配置されたメモリセルアレイと、前記複数のメモリセルに対して書き込みを行う書き込み回路と、前記ブロックが含む前記複数のメモリセルに対して一括して消去を行う消去回路と、前記書き込み回路及び前記消去回路に書き込み及び消去の指示を出す制御回路とを具備し、前記制御回路は、複数のメモリセルに電圧を印加して書き込みを行い、前記複数のメモリセルの閾値を第１の所定電圧以上に設定する手段と、前記複数のメモリセルに対して一括して消去を行い、前記複数のメモリセルの閾値を前記第１の所定電圧より低い第２の所定電圧以下に設定する手段と、前記複数のメモリセルのうち、前記第２の所定電圧より低い第３の所定電圧よりさらに低い閾値を持つメモリセルの各々に、前記書き込みにおいて印加した前記電圧より低い電圧を印加して弱い書き込みを１回だけ行う手段と、前記弱い書き込みを１回だけ行うステップの後、前記複数のメモリセルのうち、前記第３の所定電圧より低い閾値を持つメモリセルに対して、閾値が前記第３の所定電圧以上になるまで前記弱い書き込みを繰り返す手段と、前記複数のメモリセルに対して、前記第２の所定電圧より閾値が高いメモリセルが存在しないか否か確認し、前記第２の所定電圧より閾値が高いメモリセルが存在するとき、前記複数のメモリセルの閾値を前記第２の所定電圧以下に設定する手段に戻る手段とを含むことを特徴とする。
【発明の効果】
【００２４】
この発明によれば、データ消去時に、消去と書き込みを繰り返す無限ループの発生を防止でき、製品不良率を低減し、さらに製品性能の悪化及び製品テスト時間の増大を防ぐことができる不揮発性半導体記憶装置を提供できる。
【発明を実施するための最良の形態】
【００２５】
以下、図面を参照してこの発明の実施形態について説明する。説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【００２６】
［第１の実施形態］
まず、この発明の第１の実施形態の不揮発性半導体記憶装置について説明する。
【００２７】
図１は、第１の実施形態の不揮発性半導体記憶装置の構成を示すブロック図である。
【００２８】
この不揮発性半導体記憶装置は、ＣＵＩ（Command User Interface）１１、ＣＰＵ（Central Processing Unit）１２、ＲＯＭ（Read-Only Memory）１３、入出力回路（Ｉ／Ｏ）１４、デコーダ１５、センスアンプ１６、メモリセルアレイ１７、及び書き込み／消去回路１８を備えている。
【００２９】
ＣＵＩ１１は、外部から入力されるチップイネーブル信号ＣＥ、ライトイネーブル信号ＷＥなどの信号、アドレス信号、データを受け取り、これらを処理しＣＰＵ１２に出力する。ＣＰＵ１２は、この不揮発性半導体記憶装置における書き込み、消去、及び読み出しなどの動作全体を制御するものである。ＲＯＭ１３は、ＣＰＵ１２により使用される制御プログラムなどを格納するメモリである。例えば、ＣＰＵ１２は電源供給を受けた際に、ＲＯＭ１３の中に格納されているファームウェア（制御プログラム）をロードして所定の処理を実行することにより、各種のテーブルを作成したり、ＣＵＩ１１から書き込みコマンド，読み出しコマンド，消去コマンドを受けてメモリセルアレイ１７上の該当領域に対するアクセスを実行したりする。
【００３０】
入出力回路１４は、外部との間でデータの入出力を行う。デコーダ１５は、アドレス信号に応じて、メモリセルに接続されたワード線を選択する。センスアンプ１６は、メモリセルに記憶された信号を読み出して入出力回路１４、ＣＰＵ１２へ出力する。書き込み／消去回路１８は、メモリセルへのデータの書き込み、またはメモリセルに記憶されたデータの消去を行う。
【００３１】
メモリセルアレイ１７は、複数のブロックからなり、各ブロックは複数のメモリセルを有している。一例として、図２に、ＮＯＲ型半導体記憶装置のメモリセルアレイのレイアウトを示す。図２に示すように、制御ゲート線（ワード線）ＣＧ９、ＣＧ１０、ＣＧ１１、ＣＧ１２、ＣＧ１３が形成されており、これに平行するように、ソース線ＳＬ１０，ＳＬ１１、ＳＬ１２が形成されている。また、これら制御ゲート線に直行するように、アクティブ領域ＡＲ１１、ＡＲ１２、ＡＲ１３、ＡＲ１４、ＡＲ１５、ＡＲ１６が形成されている。そして、制御ゲート線とアクティブ領域とが交差する領域に、メモリセルＭ１１(１)、Ｍ１１(２)、…、Ｍ１１(６)、さらにメモリセルＭ１２(１)、Ｍ１２(２)、…、Ｍ１２(６)、及びその他のメモリセルが形成されている。さらに、制御ゲート線ＣＧ１０とＣＧ１１との間、及び制御ゲート線ＣＧ１２とＣＧ１３との間のドレイン領域上には、コンタクトプラグＢＣが形成されている。
【００３２】
また、図３に、前記メモリセルアレイにおいてＤにて示した領域の回路図を示す。
【００３３】
メモリセルＭ１１(１)、Ｍ１１(２)、Ｍ１２(１)、Ｍ１２(２)は、フローティングゲートを持つ電界効果トランジスタからそれぞれ構成されている。メモリセルＭ１１(１)、Ｍ１１(２)のゲートには、制御ゲート線ＣＧ１０が接続されている。同様に、メモリセルＭ１２(１)、Ｍ１２(２)のゲートには、制御ゲート線ＣＧ１１が接続されている。
【００３４】
メモリセルＭ１１(１)の電流通路の一端（ドレイン）と、メモリセルＭ１２(１)の電流通路の一端（ドレイン）とが接続され、この接続点にはビット線ＢＬ１０が接続されている。同様に、メモリセルＭ１１(２)の電流通路の一端（ドレイン）と、メモリセルＭ１２(２)の電流通路の一端（ドレイン）とが接続され、この接続点にはビット線ＢＬ１１が接続されている。さらに、メモリセルＭ１１(１)の電流通路の他端と、メモリセルＭ１１(２)の電流通路の他端には、ソース線ＳＬ１０が接続されている。同様に、メモリセルＭ１２(１)の電流通路の他端と、メモリセルＭ１２(２)の電流通路の他端には、ソース線ＳＬ１１が接続されている。
【００３５】
図４に、ＮＯＲ型半導体記憶装置におけるメモリセルの閾値によるデータ状態を示す。メモリセル(１つのメモリセルが１ビットのデータに相当)に対して電子の注入または除去を行うことにより、メモリセルの閾値を変え、図４に示すように、“１”または“０”データを形成している。なお、１つのメモリセルに１ビットより多い情報、例えば２ビットを記憶する多値のメモリセルの場合は４つの状態を形成する。
【００３６】
次に、第１の実施形態の不揮発性半導体記憶装置において行われる消去動作について説明する。消去動作を制御するための制御プログラムはＲＯＭ１３に格納されている。ＣＰＵ１２は、ＲＯＭ１３から消去動作を制御するための制御プログラムを読み出し、以下のような消去動作を実行する。
【００３７】
図５は、第１の実施形態の不揮発性半導体記憶装置が行う一連の消去動作を示すフローチャートである。
【００３８】
まず、メモリセルアレイ１７において、ランダムに“１”(消去状態)、“０”(書き込み状態)が存在している１つのブロック内のメモリセルうち、“１”を持つメモリセルの閾値が第１の所定閾値（電圧ＰＶ(Program Verify Level)）以上になるように、消去前書き込み(Preprogram)を行う（ステップＳ１）。これにより、ブロック内の全てのメモリセルの閾値を、電圧ＰＶ以上に設定する。この消去前書き込みは、１つのブロック内の各メモリセルの電子状態を揃えるために行うものである。１つのブロック内の各メモリセルの電子状態が“１”、“０”でばらついていると、次に行う一括消去後に、過消去、あるいは消去不足のメモリセルが出てきてばらつきが大きくなってしまうからである。図６（ａ）に、消去前書き込みを行う前のメモリセルの閾値分布を示し、図６（ｂ）に消去前書き込みを行った後のメモリセルの閾値分布を示す。
【００３９】
次に、前記ブロック内の全てのメモリセルに対して、一括消去(Erase Only)を行う（ステップＳ２）。これは、ブロック内の全てのメモリセルから、電子を抜く動作となる。この一括消去により、全てのメモリセルの閾値を、第２の所定閾値(電圧ＥＶ(Erase Verify Level))以下に設定する。図６（ｃ）に、一括消去を行った後のメモリセルの閾値分布を示す。
【００４０】
しかし、各メモリセルは実際には各種寸法、膜厚などがばらついており、前記一括消去の動作が終わった時点で、消え過ぎたメモリセル（過消去セル）、すなわち閾値が低下し過ぎたメモリセル、が発生する。この過消去セルは、読み出し時にリーク電流を引き起こし、そのメモリセル数が多数になるとカラムリーク不良になってしまう。よって、第３の所定閾値(電圧ＯＥＶ(Over Erase Verify Level))より消え過ぎたメモリセルに対して、弱い書き込み(Weak Program)を行う。すなわち、第３の所定閾値(電圧ＯＥＶ)より閾値が低いメモリセルに対して、弱い書き込み(Weak Program)を行う。
【００４１】
前記弱い書き込みは、以下に述べるように、第１の弱い書き込み処理、及び第２の弱い書き込み処理の２回に分けて行われる。
【００４２】
まず、第１の弱い書き込み処理について説明する。
【００４３】
ブロック内の１つのメモリセル毎に、閾値が電圧ＯＥＶ以上であるか否かを判定(ベリファイ)する（ステップＳ３）。メモリセルの閾値が電圧ＯＥＶより低いとき、すなわち消え過ぎていればそのメモリセルに弱い書き込みを行う（ステップＳ４）。ここでいう弱い書き込み(Weak Program)とは、“０”状態に書き込むような高い電圧を印加するのではなく、それより低い電圧をドレイン、ゲートに印加して行う書き込みを意味する。例えば、通常の書き込みでは、ゲート電圧Ｖｇ＝９Ｖ、ドレイン電圧Ｖｄ＝５Ｖであるのに対し、弱い書き込みでは、ゲート電圧Ｖｇ＝２〜８Ｖ、ドレイン電圧Ｖｄ＝５Ｖであり、ゲート電圧が低く設定される。
【００４４】
従来例では、メモリセルに弱い書き込みを行った後、再びベリファイを行い、メモリセルの閾値がまだ電圧ＯＥＶより低いとき再び弱い書き込みを行うことにより、メモリセルの閾値が電圧ＯＥＶ以上なるまで、ベリファイと弱い書き込みを繰り返し行っていた。しかし、この第１の実施形態では、弱い書き込みを行った後、再度、ベリファイを行わずに、このメモリセルのアドレスが最後のアドレスであるか否かを判定する（ステップＳ５）。最後のアドレスでないときは、アドレスをインクリメントして次のメモリセルに移り（ステップＳ６）、ステップＳ３に戻る。そして、メモリセルのアドレスが最後のアドレスになるまで、ステップＳ３〜ステップＳ６の処理を繰り返す。以上が、第１の弱い書き込み処理の動作である。
【００４５】
このようにして、ステップＳ３からステップＳ６までの第１の弱い書き込み処理では、ブロック内の全てのメモリセルに対してメモリセル毎に、閾値が電圧ＯＥＶ以上であるか否かを確認するベリファイを行い、メモリセルの閾値が電圧ＯＥＶより低いとき、そのメモリセルに対して１回だけ弱い書き込み(Weak Program)を行う。しかし、第１の弱い書き込み処理では、１つのメモリセルには１回の弱い書き込みしか行われない。よって、この時点では、閾値が電圧ＯＥＶ以上になっていないメモリセルも存在する。そこで、以下に述べる、第２の弱い書き込み処理を行う。
【００４６】
次に、第２の弱い書き込み処理について説明する。
【００４７】
ステップＳ５においてメモリセルのアドレスが最後のアドレスになったとき、アドレスを０に戻し、ブロック内における最初のアドレスのメモリセルに戻る（ステップＳ７）。そして、再び、１つのメモリセル毎に、閾値が電圧ＯＥＶ以上であるか否かを判定(ベリファイ)する（ステップＳ８）。メモリセルの閾値が電圧ＯＥＶより低いとき、すなわち消え過ぎていればそのメモリセルに弱い書き込みを行う（ステップＳ９）。その後、ステップＳ８に戻り、同一のメモリセルに対して、再度、ベリファイを行う（ステップＳ８）。メモリセルの閾値がまだ電圧ＯＥＶより低くければ、そのメモリセルに再度、弱い書き込みを行う（ステップＳ９）。こうして、メモリセルの閾値が電圧ＯＥＶ以上になるまで、ベリファイと弱い書き込みとを繰り返す。メモリセルの閾値が電圧ＯＥＶ以上になった時点で、このメモリセルのアドレスが最後のアドレスであるか否かを判定する（ステップＳ１０）。最後のアドレスでないときは、アドレスをインクリメントして次のメモリセルに移り（ステップＳ１１）、ステップＳ８に移行する。こうして、メモリセルのアドレスが最後のアドレスになるまで、ステップＳ８〜ステップＳ１１の処理を繰り返す。以上のように、第２の弱い書き込み処理では、ブロック内の１つのメモリセル毎に、ベリファイ(閾値の確認)を行いながら、メモリセルの閾値が電圧ＯＥＶ以上になるまで弱い書き込みを必要に応じて繰り返し行う。
【００４８】
次に、ステップＳ１０においてメモリセルのアドレスが最後のアドレスになったとき、すなわち、ブロック内の全てのメモリセルに対して第２の弱い書き込み処理が終了した後は、これら全てのメモリセルの閾値は電圧ＯＥＶ以上になっているが、閾値が電圧ＥＶより高いメモリセルが存在する可能性がある。そこで、１つのメモリセル毎に、閾値が電圧ＥＶ以下であるか否かを判定する（ステップＳ１２）。ブロック内の全てのメモリセルの閾値が電圧ＥＶより高くなければ、ここで全ての消去動作は終了する。これにより、１つのブロック内の全てのメモリセルの閾値が、図６（ｄ）に示すように、設定した電圧ＥＶと電圧ＯＥＶとの範囲に入っていることになる。もし、閾値が電圧ＥＶより高いメモリセルが１つでも存在すれば、ステップＳ２へ戻り、一括消去以降の処理を再度行う。
【００４９】
この第１の実施形態の効果は以下に述べる点にある。すなわち、１つのブロック内のメモリセルのうち、消え過ぎたメモリセル（過消去セル）に対して、弱い書き込み（Weak Program）を１回だけ行うことにより、従来例で述べた無限ループに入る確率を非常に低減できることである。
【００５０】
これは以下に述べる作用によるものである。図７に示すように、通常の特性を持つ通常セルＡと消去の速い特異セルＢとが存在し、図８に示すように、これらが同一のビット線に接続されているものとする。この場合、特異セルＢは電圧ＯＥＶより低い閾値を持ち、通常セルＡは、図９中にＥにて示すように、電圧ＯＥＶより高い閾値を持つ。しかし、通常セルＡは、特異セルＢと同一のビット線上にあるため、特異セルＢのオフ時のリーク電流によって、図９中にＦにて示すように、見かけ上、電圧ＯＥＶより低い閾値まで消去されているように見える。ここで、第１の実施形態では、最初の弱い書き込みは１回だけで次のメモリセルに移るため、通常セルＡが大幅に書き込まれ過ぎるのを防ぐことができる。そして、この１回の弱い書き込みを、閾値が電圧ＯＥＶより低い全てのメモリセルに対して行うため、特異セルＢも当然、弱い書き込みにより書き込まれて、オフ時のリーク電流が減少する。これにより、次の弱い書き込みの実行時には、特異セルＢと同一ビット線上にある通常セルＡも、図９中にＧにて示すように、見かけ上、電圧ＯＥＶより低い閾値まで消去されていると判断されなくなる。このため、通常セルＡに必要以上の弱い書き込みは行われず、無限ループに入るのを防止することができる。
【００５１】
また、図１０に示すように、通常セルＡと消去の遅い特異セルＣとが存在し、図１１に示すように、これらが同一のビット線に接続されているものとする。このように、消去の遅い特異セルＣが存在した場合、通常セルＡを含む他のメモリセルは、一括消去において必要以上に消去が行われ、全体的に閾値が電圧ＯＥＶ以下の過消去状態となるものが多くなる。このため、通常セルＡに対してベリファイ（閾値確認）を行った場合、オフ時のリーク電流が大きくなり、図１２中にＩにて示すように、通常セルＡは見かけ上、実際より閾値が低く見える。しかし、第１の実施形態では、最初の弱い書き込みは１回だけで次のメモリセルに移るため、結果として通常セルＡに対し、実際の必要量よりも大幅に書き込みが行われることはない。これにより、弱い書き込みの回数が減るので、特異セルＣに対するドレインストレスが少なくなり、特異セルＣが電圧ＥＶ以上に書き込まれる確率が非常に低くなる。この結果、無限ループに入るのを防ぐことができる。なお、図１２中のＨは弱い書き込み前の通常セルＡの実際の特性を示し、図１２中のＪは弱い書き込みを１回行った後の通常セルＡの見かけの特性を示す。
【００５２】
以上説明したように第１の実施形態では、ブロック内の全てのメモリセルに対して弱い書き込みを１回だけ行う手段を追加することにより、無限ループが発生することによって生じる一連の消去動作のタイムアウト不良を低減できる。また、製品出荷後に、書き込み及び読み出しを繰り返すうちに、消去が速くなったり遅くなったりするなど、メモリセルの特性が変化していき、出荷前のテスト時には発生しなかった無限ループに入ることも予想される。この第１の実施形態では、このような出荷先での製品不良の発生も低減できる。さらに、不必要な弱い書き込みの回数を減らすことができるため、消去時間を短縮することができる。
【００５３】
［第２の実施形態］
次に、この発明の第２の実施形態の不揮発性半導体記憶装置について説明する。この第２の実施形態の不揮発性半導体記憶装置の構成を示すブロック図は、図１と同様であり、その説明は省略する。
【００５４】
以下に、第２の実施形態の不揮発性半導体記憶装置において行われる消去動作について説明する。前記第１の実施形態と同様に、消去動作を制御するための制御プログラムはＲＯＭ１３に格納されている。ＣＰＵ１２は、ＲＯＭ１３から消去動作を制御するための制御プログラムを読み出し、以下のような消去動作を実行する。
【００５５】
図１３は、第２の実施形態の不揮発性半導体記憶装置が行う一連の消去動作を示すフローチャートである。
【００５６】
まず、メモリセルアレイ１７において、ランダムに“１”(消去状態)、“０”(書き込み状態)が存在している１つのブロック内のメモリセルうち、“１”を持つメモリセルの閾値が第１の所定閾値（電圧ＰＶ(Program Verify Level)）以上になるように、消去前書き込み(Preprogram)を行う（ステップＳ１）。これにより、ブロック内の全てのメモリセルの閾値を、電圧ＰＶ以上に設定する。
【００５７】
次に、前記ブロック内の全てのメモリセルに対して、一括消去(Erase Only)を行う（ステップＳ２）。この一括消去により、全てのメモリセルの閾値を、第２の所定閾値(電圧ＥＶ(Erase Verify Level))以下に設定する。
【００５８】
ここで、各メモリセルは実際には各種寸法、膜厚などがばらついており、前記一括消去の動作が終わった時点で、消え過ぎたメモリセル（過消去セル）、すなわち閾値が低下し過ぎたメモリセル、が発生する。この過消去セルは、読み出し時にリーク電流を引き起こし、そのメモリセル数が多数になるとカラムリーク不良になってしまう。よって、第３の所定閾値(電圧ＯＥＶ(Over Erase Verify Level))より消え過ぎたメモリセルに対して、弱い書き込み(Weak Program)を行う。すなわち、第３の所定閾値(電圧ＯＥＶ)より閾値が低いメモリセルに対して、弱い書き込み(Weak Program)を行う。
【００５９】
前記弱い書き込みは、以下に述べるように、第１の弱い書き込み処理、書き込み回数設定処理、第２の弱い書き込み処理の３つの処理に分けて行われる。
【００６０】
まず、第１の弱い書き込み処理について説明する。
【００６１】
変数Ｘを１に初期化する（ステップＳ２１）。続いて、ブロック内の１つのメモリセル毎に、閾値が電圧ＯＥＶ以上であるか否かを判定(ベリファイ)する（ステップＳ３）。メモリセルの閾値が電圧ＯＥＶより低いとき、すなわち消え過ぎていればそのメモリセルに弱い書き込みを行う（ステップＳ４）。ここでいう弱い書き込み(Weak Program)とは、前記第１の実施形態と同様に、“０”状態に書き込むような高い電圧を印加するのではなく、それより低い電圧をドレイン、ゲートに印加して行う書き込みを意味する。
【００６２】
従来例では、メモリセルに弱い書き込みを行った後、再びベリファイを行い、メモリセルの閾値が電圧ＯＥＶ以上になったか否かの判定を行っていた。しかし、この第２の実施形態では、弱い書き込みを行った後、再度、ベリファイ動作を行わずに、このメモリセルのアドレスが最後のアドレスであるか否かを判定する（ステップＳ５）。最後のアドレスでないときは、アドレスをインクリメントして次のメモリセルに移り（ステップＳ６）、ステップＳ３に戻る。そして、メモリセルのアドレスが最後のアドレスになるまで、ステップＳ３〜ステップＳ６の処理を繰り返す。以上が、第１の弱い書き込み処理の動作である。
【００６３】
このようにして、ステップＳ３からステップＳ６までの第１の弱い書き込み処理では、ブロック内の全てのメモリセルに対してメモリセル毎に、閾値が電圧ＯＥＶ以上であるか否かを確認するベリファイを行い、メモリセルの閾値が電圧ＯＥＶより低いとき、そのメモリセルに対して１回だけ弱い書き込み(Weak Program)を行う。しかし、第１の弱い書き込み処理では、１つのメモリセルには１回の弱い書き込みしか行われない。よって、この時点では、閾値が電圧ＯＥＶ以上になっていないメモリセルも存在する。
【００６４】
次に、書き込み回数設定処理について説明する。
【００６５】
ステップＳ５においてメモリセルのアドレスが最後のアドレスになったとき、変数Ｘをインクリメントし（ステップＳ２２）、さらにインクリメントされた変数Ｘが設定値Ｎ以下か否かを判定する（ステップＳ２３）。設定値Ｎは、ステップＳ３からステップＳ６までの第１の弱い書き込み処理を行う回数を設定するものである。なお、Ｘは１、２、３、…、Ｎであり、Ｎは１以上の自然数である。
【００６６】
ステップＳ２３にて、インクリメントされた変数Ｘが設定値Ｎ以下と判定された場合、ステップＳ３からステップＳ６までの第１の弱い書き込み処理が、変数Ｘが設定値Ｎより大きくなるまで繰り返される。
【００６７】
次に、第２の弱い書き込み処理について説明する。
【００６８】
ステップＳ２３において変数Ｘが設定値Ｎより大きくなったとき、アドレスを０に戻し、ブロック内における最初のアドレスのメモリセルに戻る（ステップＳ７）。そして、再び、１つのメモリセル毎に、閾値が電圧ＯＥＶ以上であるか否かを判定(ベリファイ)する（ステップＳ８）。メモリセルの閾値が電圧ＯＥＶより低いとき、すなわち消え過ぎていればそのメモリセルに弱い書き込みを行う（ステップＳ９）。その後、ステップＳ８に戻り、同一のメモリセルに対して、再度、ベリファイを行う（ステップＳ８）。メモリセルの閾値がまだ電圧ＯＥＶより低くければ、そのメモリセルに再度、弱い書き込みを行う（ステップＳ９）。こうして、メモリセルの閾値が電圧ＯＥＶ以上になるまで、ベリファイと弱い書き込みとを繰り返す。メモリセルの閾値が電圧ＯＥＶ以上になった時点で、このメモリセルのアドレスが最後のアドレスであるか否かを判定する（ステップＳ１０）。最後のアドレスでないときは、アドレスをインクリメントして次のメモリセルに移り（ステップＳ１１）、ステップＳ８に移行する。こうして、メモリセルのアドレスが最後のアドレスになるまで、ステップＳ８〜ステップＳ１１の処理を繰り返す。以上のように、第２の弱い書き込み処理では、ブロック内の１つのメモリセル毎に、ベリファイ動作(閾値の確認)を行いながら、メモリセルの閾値が電圧ＯＥＶ以上になるまで弱い書き込みを必要に応じて繰り返し行う。
【００６９】
次に、ステップＳ１０においてメモリセルのアドレスが最後のアドレスになったとき、すなわち、ブロック内の全てのメモリセルに対して第２の弱い書き込みの処理が終了した後は、これら全てのメモリセルの閾値は電圧ＯＥＶ以上になっているが、閾値が電圧ＥＶを越えたメモリセルが存在する可能性がある。そこで、１つのメモリセル毎に、閾値が電圧ＥＶ以下であるか否かを判定する（ステップＳ１２）。ブロック内の全てのメモリセルの閾値が電圧ＥＶ以下であれば、ここで全ての消去動作は終了する。これにより、１つのブロック内の全てのメモリセルの閾値が、設定した電圧ＥＶと電圧ＯＥＶとの範囲に入っていることになる。もし、閾値が電圧ＥＶより高いメモリセルが１つでも存在すれば、ステップＳ２へ戻り、一括消去以降の処理を再度行う。
【００７０】
この第２の実施形態が前記第１の実施形態と異なるところは、ブロック内の全てのメモリセルに対して、ベリファイを行いながら弱い書き込みを１回だけ行うステップを複数回繰り返すことにある。なお、第１の実施形態では、弱い書き込みを１回だけ行っている。
【００７１】
第２の実施形態による効果を以下に述べる。図１５に示したように、消去の速い特異セルＢが存在する場合、１回の弱い書き込みだけでは、オフ時のリーク電流が十分に低減するほどに書き込まれない場合がある。第２の実施形態では、ステップＳ３〜ステップＳ６に示した弱い書き込みを複数回行うことにより、すなわちブロック内の全ての過消去セルに対して弱い書き込みを複数回行うことにより、特異セルＢをより高い閾値まで書き込むことができる。これにより、一括消去と弱い書き込みとが繰り返される無限ループ(ピンポンモード)の発生を低減することができる。なお、従来例と異なり、弱い書き込みを行う回数は制限している。ただし、消去に要する時間については、第２の実施形態より第１の実施形態のほうが短縮できる。
【００７２】
実際第１の実施形態と第２の実施形態のどちらを採用するかについては、消去対象のメモリセルの特性を十分に見極めた上で最適なほうを選択すればよい。場合によっては、製品テスト工程で、オプションＲＯＭ等を用いて選択できるようにすることも可能である。
【００７３】
また、前述した各実施形態はそれぞれ、単独で実施できるばかりでなく、適宜組み合わせて実施することも可能である。さらに、前述した各実施形態には種々の段階の発明が含まれており、各実施形態において開示した複数の構成要件の適宜な組み合わせにより、種々の段階の発明を抽出することも可能である。
【図面の簡単な説明】
【００７４】
【図１】この発明の第１の実施形態の不揮発性半導体記憶装置の構成を示すブロック図である。
【図２】前記第１の実施形態のＮＯＲ型半導体記憶装置のメモリセルアレイのレイアウトを示す図である。
【図３】前記ＮＯＲ型半導体記憶装置のメモリセルアレイにおける１部分の回路図である。
【図４】前記ＮＯＲ型半導体記憶装置におけるメモリセルの閾値によるデータ状態を示す図である。
【図５】前記第１の実施形態の不揮発性半導体記憶装置が行う一連の消去動作を示すフローチャートである。
【図６】前記不揮発性半導体記憶装置が行う一連の消去動作におけるメモリセルの閾値分布を示す図である。
【図７】前記一連の消去動作における一括消去後の通常セルＡと特異セルＢの閾値分布を示す図である。
【図８】同一のビット線に接続された前記通常セルＡと特異セルＢを模式的に示す概略図である。
【図９】前記一連の消去動作における弱い書き込み前後の通常セルＡが持つ閾値の特性（特異セルＢが存在する場合）を示す図である。
【図１０】前記一連の消去動作における一括消去後の通常セルＡと特異セルＣの閾値分布を示す図である。
【図１１】同一のビット線に接続された前記通常セルＡと特異セルＣを模式的に示す概略図である。
【図１２】前記一連の消去動作における弱い書き込み前後の通常セルＡが持つ閾値の特性（特異セルＣが存在する場合）を示す図である。
【図１３】この発明の第２の実施形態の不揮発性半導体記憶装置が行う一連の消去動作を示すフローチャートである。
【図１４】従来の不揮発性半導体記憶装置が行う一連の消去動作を示すフローチャートである。
【図１５】従来の前記一連の消去動作における一括消去後の通常セルＡと特異セルＢの閾値分布を示す図である。
【図１６】従来の前記一連の消去動作における、弱い書き込みによる通常セルＡと特異セルＢの閾値分布の変化を示す図である。
【図１７】従来の前記一連の消去動作における一括消去後の特異セルＣの閾値分布を示す図である。
【図１８】従来の前記一連の消去動作における、弱い書き込みによる特異セルＣの閾値分布の変化を示す図である。
【符号の説明】
【００７５】
１１…ＣＵＩ、１２…ＣＰＵ（Central Processing Unit）、１３…ＲＯＭ（Read-Only Memory）、１４…入出力回路（Ｉ／Ｏ）、１５…デコーダ、１６…センスアンプ、１７…メモリセルアレイ、１８…書き込み／消去回路。
【図１】
2006099912.tif 000003
【図２】
2006099912.tif 000004
【図３】
2006099912.tif 000005
【図４】
2006099912.tif 000006
【図５】
2006099912.tif 000007
【図６】
2006099912.tif 000008
【図７】
2006099912.tif 000009
【図８】
2006099912.tif 000010
【図９】
2006099912.tif 000011
【図１０】
2006099912.tif 000012
【図１１】
2006099912.tif 000013
【図１２】
2006099912.tif 000014
【図１３】
2006099912.tif 000015
【図１４】
2006099912.tif 000016
【図１５】
2006099912.tif 000017
【図１６】
2006099912.tif 000018
【図１７】
2006099912.tif 000019
【図１８】
2006099912.tif 000020