(57)【特許請求の範囲】
【請求項１】
電気的にデータの書き換えが可能な不揮発性半導体メモリセルと、
前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルに書き込み電圧と書き込み制御電圧とを供給して前記メモリセルに書き込みを行い、前記メモリセルが第１の書き込み状態に達したら前記書き込み制御電圧の供給状態を変えて前記メモリセルに書き込みを行い、前記メモリセルが第２の書き込み状態に達したら前記書き込み制御電圧の供給状態をさらに変えて前記メモリセルの書き込みを禁止する書き込み回路とを具備し、
書き込み回路は、前記メモリセルに継続して前記書き込み電圧が供給されている間は前記書き込み制御電圧の供給状態を変えないことを特徴とする不揮発性半導体記憶装置。
【請求項２】
電気的にデータの書き換えが可能な不揮発性半導体メモリセルと、
前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルに書き込み電圧と第１の値を有する書き込み制御電圧とを供給して前記メモリセルに書き込みを行い、前記メモリセルが第１の書き込み状態に達したら前記書き込み制御電圧の値を前記第１の値とは異なる第２の値に変えて前記メモリセルに書き込みを行い、前記メモリセルが第２の書き込み状態に達したら前記書き込み制御電圧の値を前記第１及び第２の値とはそれぞれ異なる第３の値に変えて前記メモリセルの書き込みを禁止する書き込み回路とを具備し、
前記書き込み回路は、前記メモリセルに継続して前記書き込み電圧が供給されている間は前記書き込み制御電圧の供給状態を変えないことを特徴とする不揮発性半導体記憶装置。
【請求項３】
前記第２の値が前記第１の値よりも大きく、前記第３の値が前記第２の値よりも大きいことを特徴とする請求項２記載の不揮発性半導体記憶装置。
【請求項４】
前記第３の値が電源電圧の値であることを特徴とする請求項３記載の不揮発性半導体記憶装置。
【請求項５】
電気的にデータの書き換えが可能な不揮発性半導体メモリセルと、
前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルに書き込み電圧を供給した状態で第１の値を有する書き込み制御電圧を第１の期間だけ供給して前記メモリセルに書き込みを行い、前記メモリセルが第１の書き込み状態に達したら前記メモリセルに前記書き込み電圧を供給した状態で前記第１の値を有する書き込み制御電圧を前記第１の期間とは異なる第２の期間だけ供給して前記メモリセルに書き込みを行い、前記メモリセルが第２の書き込み状態に達したら前記書き込み制御電圧の値を前記第１の値よりも大きい第２の値に変えて前記メモリセルの書き込みを禁止する書き込み回路
とを具備したことを特徴とする不揮発性半導体記憶装置。
【請求項６】
前記第２の期間が前記第１の期間よりも短いことを特徴とする請求項５記載の不揮発性半導体記憶装置。
【請求項７】
前記第２の値が電源電圧の値であることを特徴とする請求項６記載の不揮発性半導体記憶装置。
【請求項８】
前記不揮発性半導体メモリセルはｎ値（ｎは３以上の正の整数）のデータを記憶する請求項１、２、５のいずれか１項記載の不揮発性半導体記憶装置。
【請求項９】
前記書き込み回路は、前記不揮発性半導体メモリセルに対して書き込みを行う際に前記書き込み電圧の値を変化させて書き込みを行うことを特徴とする請求項１、２、５のいずれか１項記載の不揮発性半導体記憶装置。
【請求項１０】
前記書き込み回路は、前記不揮発性半導体メモリセルに対して書き込みを行う際に前記書き込み電圧の値が順次増加するように変化させて書き込みを行うことを特徴とする請求項１、２、５のいずれか１項記載の不揮発性半導体記憶装置。
【請求項１１】
前記書き込み回路は、前記不揮発性半導体メモリセルに対して書き込みを行う際に前記書き込み電圧の値が一定の割合で順次増加するように変化させて書き込みを行うことを特徴とする請求項１、２、５のいずれか１項記載の不揮発性半導体記憶装置。
【請求項１２】
前記不揮発性半導体メモリセルが浮遊ゲート、制御ゲート、ソース、及びドレインを有する不揮発性トランジスタであり、
前記書き込み回路は前記書き込み電圧を前記不揮発性トランジスタの制御ゲートに供給し、前記書き込み制御電圧を前記不揮発性トランジスタのドレインに供給することを特徴とする請求項１、２、５のいずれか１項記載の不揮発性半導体記憶装置。
【請求項１３】
それぞれ電気的にデータの書き換えが可能な複数の不揮発性半導体メモリセルと、
前記複数のメモリセルに共通に接続された複数のワード線と、
前記複数のメモリセルのそれぞれに接続された複数のビット線と、
前記複数のメモリセルにデータを書き込む書き込み回路とを具備し、
前記書き込み回路は、前記複数のビット線のそれぞれに対応して設けられ、第１及び第２の制御データを記憶するデータ記憶回路を有し、
前記書き込み回路は、
対応するメモリセルに書き込むべきデータに応じて前記データ記憶回路に第１の制御データを設定し、
前記ワード線に書き込み電圧を供給すると共に前記第１の制御データとして書き込みが必要なデータが記憶されている前記データ記憶回路に対応するビット線に書き込み制御電圧を供給して対応するメモリセルに書き込みを行い、
書き込みが行われている前記メモリセルのうち第１の書き込み状態に達したメモリセルに対応する前記データ記憶回路に前記第２の制御データとして第１の書き込み状態が終了したことを表すデータを設定した後、前記書き込み制御電圧の供給状態を変えて前記第１の書き込み状態に達した前記メモリセルに書き込みを行い、
書き込みが行われているメモリセルのうち第２の書き込み状態に達したメモリセルに対応する前記データ記憶回路に第１の制御データとして第２の書き込み状態が終了したことを表すデータを設定した後、前記書き込み制御電圧の供給状態をさらに変えて前記第２の書き込み状態に達した前記メモリセルの書き込みを禁止し、前記メモリセルに継続して前記書き込み電圧が供給されている間は前記書き込み制御電圧の供給状態を変えないことを特徴とする不揮発性半導体記憶装置。
【請求項１４】
前記書き込み回路は、前記データ記憶回路に第２の制御データとして第１の書き込み状態が終了したことを表すデータを設定した後はそのデータを保持させることを特徴とする請求項１３記載の不揮発性半導体記憶装置。
【請求項１５】
前記書き込み回路は、前記データ記憶回路に前記第２の制御データとして第１の書き込み状態が終了したことを表すデータを設定した後に、前記書き込み制御電圧の値を変えて前記第１の書き込み状態に達した前記メモリセルに書き込みを行うことを特徴とする請求項１３記載の不揮発性半導体記憶装置。
【請求項１６】
前記書き込み回路は、前記データ記憶回路に前記第２の制御データとして第１の書き込み状態が終了したことを表すデータを設定した後に、前記書き込み制御電圧の値を大きくして前記第１の書き込み状態に達した前記メモリセルに書き込みを行うことを特徴とする請求項１３記載の不揮発性半導体記憶装置。
【請求項１７】
電気的にデータの書き換えが可能な不揮発性半導体メモリセルと、
前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルにその値が順次増加する書き込み電圧と第１の実効電圧を有する書き込み制御電圧とを供給して前記メモリセルに書き込みを行い、前記メモリセルが第１の書き込み状態に達したら前記書き込み制御電圧を前記第１の実効電圧とは異なる第２の実効電圧に変えて前記メモリセルに供給して前記メモリセルに書き込みを行い、前記メモリセルが第２の書き込み状態に達したら前記メモリセルの書き込みを禁止する書き込み回路とを具備し、
書き込み回路は、前記メモリセルに継続して前記書き込み電圧が供給されている間は前記書き込み制御電圧の供給状態を変えないことを特徴とする不揮発性半導体記憶装置。
【請求項１８】
電気的にデータの書き換えが可能な不揮発性半導体メモリセルと、
前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルに一定値ずつ値が順次増加するような書き込み電圧と第１の実効電圧を有する書き込み制御電圧とを供給して前記メモリセルに書き込みを行い、前記メモリセルが第１の書き込み状態に達したら前記書き込み制御電圧を前記第１の実効電圧とは異なる第２の実効電圧に変えて前記メモリセルに供給して前記メモリセルに書き込みを行い、前記メモリセルが第２の書き込み状態に達したら前記メモリセルの書き込みを禁止する書き込み回路とを具備し、
前記第２の実効電圧と前記第１の実効電圧との差が、前記書き込み電圧の値を増加させる一定値よりも大きく設定されているとともに、前記書き込み回路は、前記メモリセルに継続して前記書き込み電圧が供給されている間は前記書き込み制御電圧の供給状態を変えないことを特徴とする不揮発性半導体記憶装置。
【請求項１９】
前記不揮発性半導体メモリセルはｎ値（ｎは３以上の正の整数）のデータを記憶する請求項１７または１８記載の不揮発性半導体記憶装置。
【請求項２０】
前記不揮発性半導体メモリセルが浮遊ゲート、制御ゲート、ソース、及びドレインを有する不揮発性トランジスタであり、
前記書き込み回路は前記書き込み電圧を前記不揮発性トランジスタの制御ゲートに供給し、前記書き込み制御電圧を前記不揮発性トランジスタのドレインに供給することを特徴とする請求項１８または１９記載の不揮発性半導体記憶装置。
【請求項２１】
電気的に書き換えが可能な不揮発性半導体メモリセルと、
前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルに書き込み電圧と書き込み制御電圧とを供給して前記メモリセルに書き込みを行い前記メモリセルの書き込み状態を変化させ、前記書き込み制御電圧の供給状態を変えて前記書き込み状態の変化速度を緩和し、前記書き込み状態の変化速度が緩和されている間に前記メモリセルに対する書き込みを終了させる書き込み回路とを具備し、
前記書き込み回路は、前記メモリセルに継続して前記書き込み電圧が供給されている間は前記書き込み制御電圧の供給状態を変えないことを特徴とする不揮発性半導体記憶装置。
【請求項２２】
電気的に書き換えが可能な不揮発性半導体メモリセルと、
前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルに書き込み電圧と書き込み制御電圧とを供給して前記メモリセルに書き込みを行い前記メモリセルの書き込み状態を変化させ、前記書き込み制御電圧の供給状態を変えて前記書き込み状態の変化速度を緩和し、前記書き込み状態の変化速度が緩和されている間にさらに前記書き込み制御電圧の供給状態を変えて前記メモリセルに対する書き込みを終了させる書き込み回路とを具備し、
前記書き込み回路は、前記メモリセルに継続して前記書き込み電圧が供給されている間は前記書き込み制御電圧の供給状態を変えないことを特徴とする不揮発性半導体記憶装置。
【請求項２３】
前記書き込み回路は、前記メモリセルに対して書き込みを行う際に前記書き込み電圧の値を順次増加するように変化させて書き込みを行うことを特徴とする請求項２１あるいは２２記載の不揮発性半導体記憶装置。
【請求項２４】
前記書き込み回路は、前記メモリセルの書き込み状態が第１のレベルに達したかを検出し、前記メモリセルの書き込み状態が第１のレベルに達したと検出すると前記書き込み制御電圧の供給状態を変えて前記書き込み状態の変化速度を緩和することを特徴とする請求項２１あるいは２２記載の不揮発性半導体記憶装置。
【請求項２５】
前記書き込み回路は、前記メモリセルの書き込み状態が第２のレベルに達したかを検出し、前記メモリセルの書き込み状態が第２のレベルに達したと検出すると前記メモリセルに対する書き込みを終了させることを特徴とする請求項２４記載の不揮発性半導体記憶装置。
【請求項２６】
前記メモリセルの制御ゲートに接続されたワード線と、
前記メモリセルのドレインに接続されたビット線とをさらに備え、
前記書き込み回路は前記書き込み電圧を前記ワード線に供給し、前記書き込み制御電圧を前記ビット線に供給することを特徴とする請求項２１あるいは２２記載の不揮発性半導体記憶装置。
【請求項２７】
前記書き込み回路は、前記メモリセルに１ビットより多いデータを記憶させることを特徴とする請求項２１あるいは２２記載の不揮発性半導体記憶装置。
【請求項２８】
電気的に書き換えが可能な不揮発性半導体メモリセルと、
前記メモリセルに読み出し電圧を印加して前記メモリセルに記憶されているデータを読み出す読み出し回路と、
前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルに第１のベリファイ電圧を印加して前記メモリセルの書き込み状態が第１のレベルに達したかを検出し、前記メモリセルの書き込み状態が前記第１のレベルに達していなければ前記メモリセルに書き込み電圧と第１の実効電圧を有する書き込み制御電圧を印加して書き込みを行い、前記メモリセルの書き込み状態が前記第１のレベルに達していれば前記メモリセルに前記書き込み電圧と第２の実効電圧を有する書き込み制御電圧を印加して書き込みを行い、前記メモリセルに第２のベリファイ電圧を印加して前記メモリセルの書き込み状態が第２のレベルに達したかを検出し、前記メモリセルの書き込み状態が前記第２のレベルに達していれば前記メモリセルに前記書き込み電圧と第３の実効電圧を有する書き込み制御電圧を印加して書き込みを禁止する書き込み回路とを具備し、
前記書き込み回路は、前記メモリセルに継続して前記書き込み電圧が供給されている間は前記書き込み制御電圧の供給状態を変えないとともに、前記読み出し電圧と前記第２のベリファイ電圧との差が前記第１のベリファイ電圧と前記第２のベリファイ電圧との差よりも大きいことを特徴とする不揮発性半導体記憶装置。
【請求項２９】
前記書き込み回路は、前記メモリセルに対して書き込みを行う際に前記書き込み電圧の値を順次増加するように変化させて書き込みを行うことを特徴とする請求項２８記載の不揮発性半導体記憶装置。
【請求項３０】
前記メモリセルの制御ゲートに接続されたワード線と、
前記メモリセルのドレインに接続されたビット線とをさらに備え、
前記書き込み回路は前記書き込み電圧を前記ワード線に供給し、前記書き込み制御電圧を前記ビット線に供給することを特徴とする請求項２８記載の不揮発性半導体記憶装置。
【請求項３１】
前記書き込み回路は、前記メモリセルに１ビットより多いデータを記憶させることを特徴とする請求項２８記載の不揮発性半導体記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、電気的にデータの書替えが可能な不揮発性半導体記憶装置に係り、特に１つのメモリセルに対して２値以上の多値データを記憶する多値フラッシュメモリに関する。
【０００２】
【従来の技術】
フラッシュメモリでは、消去、書き込みが行われることでメモリセルトランジスタの浮遊ゲートの蓄積電荷量を変え、これによりしきい値を変えてデータが記憶される。例えば、負のしきい値を“１”データ、正のしきい値を“０”データに対応させる。
【０００３】
近年、ビット単価を下げるため、あるいは記憶容量を増やすために、１つのメモリセルに複数ビットのデータを記憶させる多値フラッシュメモリが開発されている。２ビットのデータを１つのメモリセルに記憶させるものでは、そのメモリセルは４つのしきい値帯をデータに応じて持つ。
【０００４】
精度よくしきい値をメモリセルに持たせることで信頼性の高いデバイスが得られる。しきい値の制御を精度よく行うため、書き込み電圧Ｖｐｇｍを一定の割合で高めながらデータ書き込みを行う方法が例えば、”Ｆａｓｔ  ａｎｄ  Ａｃｃｕｒａｔｅ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｍｅｔｈｏｄ  ｆｏｒ  Ｍｕｌｔｉ−ｌｅｖｅｌ  ＮＡＮＤ  ＥＥＰＲＯＭｓ，  ｐｐ１２９−１３０，  Ｄｉｇｅｓｔ  ｏｆ  １９９５  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  ＶＬＳＩ  Ｔｅｃｈｎｏｌｏｇｙ”で提案されている。
【０００５】
この方法では、書き込み電圧Ｖｐｇｍを、例えば、０．２Ｖ／１０μｓｅｃの割合で高めながら書き込むことで、原理的に１つのしきい値分布幅を０．２Ｖに制御できる。通常、書き込み電圧Ｖｐｇｍは複数の書き込みパルスに分割され、各パルスの電圧Ｖｐｇｍを一定の割合でステップアップさせる。これにより同等の効果が得られる。各パルスのメモリセルへの印加後にしきい値を確認し、所定のベリファイレベルに達したら、書き込みを終了する。
【０００６】
一方、加工寸法の微細化も進んでいる。このため、メモリセル間の距離が縮まり、多値フラッシュメモリにおいても、様々な問題を引き起こしている。すなわち、微細化が進むにつれて浮遊ゲート間の距離が縮まり、以下のような問題を引き起こしている。
【０００７】
２つの隣り合うメモリセルＡとＢを考える。まず、２つとも同時に消去され、それぞれ−３Ｖのしきい値を持つとする。先にＡのメモリセルにあるデータを書き込む。これによってそのしきい値が例えば０．５Ｖ〜１Ｖにされる。その後、Ｂのメモリセルに異なるデータを書き込む。Ｂのメモリセルのしきい値が例えば１．５Ｖ〜２Ｖにされると、浮遊ゲート間相互の容量結合により、Ａのメモリセルの浮遊ゲートの電位が下がり、そのしきい値が上昇する。例えば、１Ｖ〜１．５Ｖへ上昇する。
【０００８】
この例では、本来ＡとＢのメモリセルのしきい値差（読み出しマージン）は最小で０．５Ｖであるはずであるが、浮遊ゲート間相互の容量結合により０Ｖに縮まる。つまり異なるデータを区別するためのしきい値差が縮まり、読み出しマージンが消滅する。
【０００９】
図１８を用いて、上記のように予めデータが書き込まれたメモリセルのしきい値が、他のメモリセルに対する書き込みの影響を受けて変化することを説明する。
【００１０】
図１８（ａ）は、消去後のあるメモリセルに対して書き込みが行われた後の浮遊ゲートＦＧ１の電荷の様子を示している。書き込みが行われたメモリセルの浮遊ゲートＦＧ１には電子が蓄積されている。図では電子を「−」の記号で示している。その後、その両側に位置する浮遊ゲートＦＧ２、ＦＧ３を有する他のメモリセルに対して書き込みが行われると、図１８（ｂ）に示すように、始めに書き込まれたメモリセルの浮遊ゲートＦＧ１に変化が起きる。隣接した浮遊ゲートＦＧ２、ＦＧ３間の静電容量結合により、始めに書き込まれたメモリセルの電位が下がり、しきい値が図１８（ｃ）に示されるように上昇する。この結果、浮遊ゲートＦＧ１を有するメモリセルのしきい値は広く分布する。なお、図１８（ａ）、（ｂ）中、ＷＬは浮遊ゲートＦＧ１、ＦＧ２、ＦＧ３を持つメモリセルに共通に設けられたワード線（制御ゲート）である。
【００１１】
こういった問題に対して、しきい値分布幅を狭くする技術は今後非常に重要になっていく。
【００１２】
このような問題を回避するために、書き込み電圧Ｖｐｇｍのステップアップ量Ｄｖｐｇｍを減らすことが考えられる。例えば、ステップアップ量Ｄｖｐｇｍを０．５Ｖから０．１Ｖにすることで、しきい値分布幅が０．５Ｖから０．１Ｖとなり、読み出しマージンが０．４Ｖ増加する。
【００１３】
しかしながら、ステップアップ量が１／５となることで書き込みパルスの数が５倍必要となり、書き込み時間が５倍となる問題が新たに生じる。
【００１４】
【発明が解決しようとする課題】
このように従来では、読み出しマージンを確保して信頼性を高めようとすると書き込み時間が増加するという問題があった。
【００１５】
この発明は上記のような事情を考慮してなされたものであり、その目的は、書き込み時間の増加を抑えつつ、しきい値分布幅を縮め、信頼性の高い不揮発性半導体記憶装置を提供することである。
【００１６】
【課題を解決するための手段】
この発明の不揮発性半導体記憶装置は、電気的にデータの書き換えが可能な不揮発性半導体メモリセルと、前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルに書き込み電圧と書き込み制御電圧とを供給して前記メモリセルに書き込みを行い、前記メモリセルが第１の書き込み状態に達したら前記書き込み制御電圧の供給状態を変えて前記メモリセルに書き込みを行い、前記メモリセルが第２の書き込み状態に達したら前記書き込み制御電圧の供給状態をさらに変えて前記メモリセルの書き込みを禁止する書き込み回路とを具備したことを特徴とする。
【００１７】
この発明の不揮発性半導体記憶装置は、電気的にデータの書き換えが可能な不揮発性半導体メモリセルと、前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルに書き込み電圧と第１の値を有する書き込み制御電圧とを供給して前記メモリセルに書き込みを行い、前記メモリセルが第１の書き込み状態に達したら前記書き込み制御電圧の値を前記第１の値とは異なる第２の値に変えて前記メモリセルに書き込みを行い、前記メモリセルが第２の書き込み状態に達したら前記書き込み制御電圧の値を前記第１及び第２の値とはそれぞれ異なる第３の値に変えて前記メモリセルの書き込みを禁止する書き込み回路とを具備したことを特徴とする。
【００１８】
この発明の不揮発性半導体記憶装置は、電気的にデータの書き換えが可能な不揮発性半導体メモリセルと、前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルに書き込み電圧を供給した状態で第１の値を有する書き込み制御電圧を第１の期間だけ供給して前記メモリセルに書き込みを行い、前記メモリセルが第１の書き込み状態に達したら前記メモリセルに前記書き込み電圧を供給した状態で前記第１の値を有する書き込み制御電圧を前記第１の期間とは異なる第２の期間だけ供給して前記メモリセルに書き込みを行い、前記メモリセルが第２の書き込み状態に達したら前記書き込み制御電圧の値を前記第１の値とは異なる第２の値に変えて前記メモリセルの書き込みを禁止する書き込み回路とを具備したことを特徴とする。
【００１９】
この発明の不揮発性半導体記憶装置は、それぞれ電気的にデータの書き換えが可能な複数の不揮発性半導体メモリセルと、前記複数のメモリセルに共通に接続されたワード線と、前記複数のメモリセルのそれぞれに接続された複数のビット線と、前記複数のメモリセルにデータを書き込む書き込み回路とを具備し、前記書き込み回路は、前記複数のビット線のそれぞれに対応して設けられ、第１及び第２の制御データを記憶するデータ記憶回路を有し、前記書き込み回路は、対応するメモリセルに書き込むべきデータに応じて前記データ記憶回路に第１の制御データを設定し、前記ワード線に書き込み電圧を供給すると共に前記第１の制御データとして書き込みが必要なデータが記憶されている前記データ記憶回路に対応するビット線に書き込み制御電圧を供給して対応するメモリセルに書き込みを行い、書き込みが行われている前記メモリセルのうち第１の書き込み状態に達したメモリセルに対応する前記データ記憶回路に前記第２の制御データとして第１の書き込み状態が終了したことを表すデータを設定した後、前記書き込み制御電圧の供給状態を変えて前記第１の書き込み状態に達した前記メモリセルに書き込みを行い、書き込みが行われているメモリセルのうち第２の書き込み状態に達したメモリセルに対応する前記データ記憶回路に第１の制御データとして第２の書き込み状態が終了したことを表すデータを設定した後、前記書き込み制御電圧の供給状態をさらに変えて前記第２の書き込み状態に達した前記メモリセルの書き込みを禁止することを特徴とする。
【００２０】
この発明の不揮発性半導体記憶装置は、電気的にデータの書き換えが可能な不揮発性半導体メモリセルと、前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルにその値が順次増加する書き込み電圧と第１の実効電圧を有する書き込み制御電圧とを供給して前記メモリセルに書き込みを行い、前記メモリセルが第１の書き込み状態に達したら前記書き込み制御電圧を前記第１の実効電圧とは異なる第２の実効電圧に変えて前記メモリセルに供給して前記メモリセルに書き込みを行い、前記メモリセルが第２の書き込み状態に達したら前記メモリセルの書き込みを禁止する書き込み回路とを具備したことを特徴とする。
【００２１】
この発明の不揮発性半導体記憶装置は、電気的にデータの書き換えが可能な不揮発性半導体メモリセルと、前記メモリセルにデータを書き込む書き込み回路であり、前記メモリセルに一定値ずつ値が順次増加するような書き込み電圧と第１の実効電圧を有する書き込み制御電圧とを供給して前記メモリセルに書き込みを行い、前記メモリセルが第１の書き込み状態に達したら前記書き込み制御電圧を前記第１の実効電圧とは異なる第２の実効電圧に変えて前記メモリセルに供給して前記メモリセルに書き込みを行い、前記メモリセルが第２の書き込み状態に達したら前記メモリセルの書き込みを禁止する書き込み回路とを具備し、前記第２の実効電圧と前記第１の実効電圧との差が、前記書き込み電圧の値を増加させる一定値よりも大きく設定されていることを特徴とする。
【００２２】
【発明の実施の形態】
以下、図面を参照して本発明を実施の形態により説明する。
【００２３】
図１は、本発明の第１の実施の形態に係わる多値フラッシュメモリの全体の構成を示すブロック図である。
【００２４】
メモリセルアレイ１内には複数のフラッシュメモリセル、複数のビット線及びワード線が設けられている。複数のフラッシュメモリセルはマトリクス状に配置されている。
【００２５】
カラム制御回路２及びロウ制御回路３が、メモリセルアレイ１に隣接して設けられている。上記カラム制御回路２は、メモリセルアレイ１内のビット線を制御し、メモリセルのデータ消去、メモリセルへのデータ書き込み、さらには、メモリセルからのデータ読み出しを行う。
【００２６】
上記ロウ制御回路３は、メモリセルアレイ１内のワード線を選択し、消去、書き込み、読み出しに必要な電圧を供給する。
【００２７】
また、メモリセルアレイ１のソース線を制御するソース線制御回路４と、メモリセルアレイ１が形成されるｐ型ウェルを制御するＰウェル制御回路５とが設けられている。
【００２８】
データ入出力バッファ６は、外部Ｉ／Ｏ線を介してホストに接続されている。このデータ入出力バッファ６は、書き込みデータの受け取り、読み出しデータの出力、アドレスデータやコマンドデータの受け取りを行う。データ入出力バッファ６で受け取られた書き込みデータはカラム制御回路２に送られる。また、データ入出力バッファ６は、カラム制御回路２から読み出されたデータを受け取る。
【００２９】
メモリセルアレイ１内のメモリセルの選択を行うために、外部からのアドレスデータがステートマシン８を介してカラム制御回路２及びロウ制御回路３に送られる。
【００３０】
また、ホストからのコマンドデータがコマンド・インターフェイス７に送られる。コマンド・インターフェイス７は、ホストからの制御信号を受け、データ入出力バッファ６に入力されたデータが書き込みデータかコマンドデータかアドレスデータかを判断し、コマンドデータであれば受け取りコマンド信号としてステートマシン８に転送する。
【００３１】
ステートマシン８は、フラッシュメモリ全体の管理を行うものであり、ホストからのコマンドを受け、読み出し、書き込み、消去の各動作及びデータの入出力管理を行う。なお、ステートマシン８内には各メモリセルに対するデータの書き込み回数をカウントするための書き込みカウンタＰＣが設けられている。
【００３２】
図２（ａ）は、図１中のメモリセルアレイ１の内部構成を示すブロック図である。メモリセルアレイ１内の複数のメモリセルは複数のブロックＢＬＯＣＫ０〜ＢＬＯＣＫ１０２３に分割されている。ブロックは消去の最小単位である。各ブロックＢＬＯＣＫｉ（ｉ＝０〜１０２３内にはそれぞれ、図２（ｂ）に示すように８５１２個のＮＡＮＤ型メモリユニットが設けられている。
【００３３】
この例では、各ＮＡＮＤ型メモリユニットには直列に接続された４個のメモリセルＭが設けられており、その一端は選択ゲート線ＳＧＤ  ｉに共通に接続された選択ゲートＳ１を介してビット線ＢＬｅまたはＢＬｏに接続され、他端は選択ゲート線ＳＧＳ  ｉに共通に接続された選択ゲートＳ２を介して共通ソース線Ｃ−ｓｏｕｒｃｅに接続されている。
【００３４】
それぞれのメモリセルＭは制御ゲート、浮遊ゲート、ソース及びドレインを有し、各４個のメモリセルＭの制御ゲートはワード線ＷＬ０  ｉ〜ＷＬ３  ｉのうち対応するものに共通に接続されている。
【００３５】
０から数えて偶数番目のビット線ＢＬｅと奇数番目のビット線ＢＬｏに対し、互いに独立にデータの書き込みと読み出しが行われる。１本のワード線ＷＬに制御ゲートが接続されている８５１２個のメモリセルのうち、偶数番目のビット線ＢＬｅに接続される４２５６個のメモリセルに対して同時にデータの書き込みと読み出しが行われる。
【００３６】
各メモリセルがそれぞれ１ビットのデータを記憶する場合、４２５６個のメモリセルに記憶される４２５６ビットのデータがページという単位を構成する。１つのメモリセルが２ビットのデータを記憶する場合、４２５６個のメモリセルは２ページ分のデータを記憶する。奇数番目のビット線ＢＬｏに接続される４２５６個のメモリセルで別の２ページが構成され、同一ページ内のメモリセルに対して同時にデータの書き込みと読み出しが行われる。
【００３７】
図３は、図１中のメモリセルアレイ１のカラム方向の素子構造を示す断面図である。ｐ型基板１０上にｎ型ウェル１１が形成され、ｎ型ウェル１１内にｐ型ウェル１２１１が形成されている。各メモリセルＭは、ｎ型拡散層１３で形成されたソース、ドレインと、ソース・ドレイン間のチャネル領域上にトンネル酸化膜を介して設けられた浮遊ゲートＦＧと、この浮遊ゲートＦＧ上に絶縁膜を介して設けられワード線ＷＬとなる制御ゲートＣＧとから構成されている。
【００３８】
各選択ゲートＳ１、Ｓ２は、ｎ型拡散層１３で形成されたソース、ドレインと、積層された２重構造の選択ゲート線ＳＧとからそれぞれ構成されている。ワード線ＷＬと選択ゲート線ＳＧは、共に図１中のロウ制御回路３に接続され、ロウ制御回路３からの出力信号によって制御される。
【００３９】
４個のメモリセルＭと選択ゲートＳ１、Ｓ２とからなるＮＡＮＤ型メモリユニットの一端は、コンタクトホールＣＢ１を介して第１層のメタル配線層Ｍ０に接続される。このメタル配線層Ｍ０は、ヴイアホールＶ１を介して、ビット線ＢＬとなる第２層のメタル配線層Ｍ１に接続されている。ビット線ＢＬは図２中のカラム制御回路２に接続されている。
【００４０】
ＮＡＮＤ型メモリユニットの他端はコンタクトホールＣＢ２を介して、共通ソース線Ｃ−ｓｏｕｒｃｅとなる第１層のメタル配線層Ｍ２に接続されている。共通ソース線Ｃ−ｓｏｕｒｃｅは図１中のソース線制御回路４に接続されている。
【００４１】
ｎ型ウェル１１の表面にはｎ型拡散層１４が、ｐ型ウェル１２の表面にはｐ型拡散層１５がそれぞれ形成され、ｎ型拡散層１４及びｐ型拡散層１５はコンタクトホールＣＢ３、ＣＢ４を介して、ウェル線Ｃ−ｐ−ｗｅｌｌとなる第１層のメタル配線層Ｍ３に共に接続されている。ウェル線Ｃ−ｐ−ｗｅｌｌは図１中のＰウェル制御回路５に接続されている。
【００４２】
図４（ａ）、（ｂ）は、メモリセルアレイ１のロウ方向の素子構造を示す断面図である。図４（ａ）、（ｂ）に示すように、各メモリセルは素子分離ＳＴＩによって互いに分離されている。
【００４３】
図４（ａ）に示すように、各メモリセルでは、トンネル酸化膜１６を介して浮遊ゲートＦＧがチャネル領域上に積層されている。浮遊ゲートＦＧ上にはＯＮＯ膜からなる絶縁膜１７を介してワード線ＷＬが積層されている。
【００４４】
図４（ｂ）に示すように、選択ゲート線ＳＧは２重構造にされている。そして、メモリセルアレイ１の端あるいは一定数のビット線毎に上下の選択ゲート線ＳＧが接続されている。
【００４５】
図５は、図１中のカラム制御回路２の主要部の構成を抽出して示している。
【００４６】
カラム制御回路２には、同一カラム番号の偶数番目のビット線ＢＬｅと奇数番目のビット線ＢＬｏからなる２本のビット線毎にデータ記憶回路２０がそれぞれ設けられている。また、カラム制御回路２には、上記各データ記憶回路２０に対応して、メモリセルにデータを書き込みかつメモリセルからデータを読み出すセンスアンプが設けられている。
【００４７】
上記データ記憶回路２０と偶数番目のビット線ＢＬｅとの間にはカラム選択用のｎチャネルＭＯＳトランジスタＱｎ１が接続され、奇数番目のビット線ＢＬｏとの間にはカラム選択用のｎチャネルＭＯＳトランジスタＱｎ２が接続されている。
【００４８】
各データ記憶回路２０に接続された偶数番目及び奇数番目のビット線ＢＬｅ、ＢＬｏは、いずれか一方が選択されてデータ記憶回路２０に接続され、データ書き込みあるいは読み出しのため制御される。すなわち、信号ＥＶＥＮＢＬがＨレベル、信号ＯＤＤＢＬがＬレベルのときは、ＭＯＳトランジスタＱｎ１が導通して偶数番目のビット線ＢＬｅが選択され、このビット線ＢＬｅがデータ記憶回路２０に接続される。信号ＥＶＥＮＢＬがＬレベル、信号ＯＤＤＢＬがＨレベルのときは、ＭＯＳトランジスタＱｎ２が導通して奇数番目のビット線ＢＬｏが選択され、このビット線ＢＬｏがデータ記憶回路２０に接続される。なお、上記信号ＥＶＥＮＢＬは偶数番目のビット線ＢＬｅに接続されている全てのカラム選択用のｎチャネルＭＯＳトランジスタに共通に供給され、信号ＯＤＤＢＬは奇数番目のビット線ＢＬｏに接続されている全てのカラム選択用のｎチャネルＭＯＳトランジスタに共通に供給される。なお、非選択のビット線ＢＬについては、図示しない他の回路で制御される。
【００４９】
上記各データ記憶回路２０内には３つのバイナリデータ記憶部ＤＳ１、ＤＳ２、ＤＳ３が設けられている。データ記憶部ＤＳ１は内部のデータ入出力線（Ｉ／Ｏ線）を介してデータ入出力バッファ６と接続され、外部から入力された書き込みデータや外部へ出力する読み出しデータを記憶する。データ記憶部ＤＳ２は、書き込み後にメモリセルのしきい値を確認する（書き込みベリファイ）時の検出結果を記憶する。データ記憶部ＤＳ３は、メモリセルのデータを書き込みと読み出しの時に一時的に記憶する。
【００５０】
図６は、第１の実施の形態に係わる多値フラッシュメモリの多値データとメモリセルのしきい値との関係を示す図である。
【００５１】
次に、図６を参照して、上記構成でなる多値フラッシュメモリの動作を説明する。なお、本例では、２ビット、つまり４値のデータを１つのメモリセルに記憶する場合を説明する。この２ビットのデータとしては“１１”、“１０”、“０１”、“００”が全てである。この２つのビットは異なるロウアドレス（異なるページ）に属する。
【００５２】
また、上記４値のデータはしきい値の違いとしてメモリセルに記憶され、図６に示すように、例えばしきい値が最も低い状態（例えばしきい値電圧が負の状態）をデータ“１１”とし、メモリセルのしきい値が２番目に低い状態（例えばしきい値電圧が正の状態を）データ“１０”とし、メモリセルのしきい値が３番目に低い状態（例えばしきい値電圧が正の状態を）データ“０１”とし、メモリセルのしきい値が最も高い状態（例えばしきい値電圧が正の状態を）データ“００”とする。
【００５３】
消去後、メモリセルのデータは“１１”となっている。このメモリセルへの下位ページの書き込みデータが“０”であれば、書き込みにより“１１”の状態から“１０”に移る。“１”データ書き込みの場合は“１１”のままである。
【００５４】
次に、上位ページのデータが書き込まれる。もし書き込みデータが“１”であれば、“１１”あるいは“１０”の状態がそのまま維持される。もし書き込みデータが“０”であれば、“１１”の状態は“０１”に、“１０”の状態は“００”にそれぞれ移される。
【００５５】
書き込み動作中に、書き込みが行われたメモリセルからデータを読み出して、十分に書き込みが行われたか否かが検証されるいわゆる書き込みベリファイが行われる。
【００５６】
センスアンプによる読出しデータは、しきい値が０Ｖ以下であれば“１１”とみなされ、しきい値が０Ｖ以上１Ｖ以下なら“１０”とみなされる。また、しきい値が１Ｖ以上２Ｖ以下なら“０１”とみなされ、しきい値が２Ｖ以上なら“００”とみなされる。
【００５７】
このように、１つのメモリセルに２ビットのデータを記憶させるために、４値のしきい値が用いられる。実際のデバイスでは、メモリセルの特性にばらつきが生じるため、そのしきい値もばらつく。このばらつきが大きいと、データの区別ができなくなり間違ったデータを読み出してしまう。
【００５８】
本実施の形態の多値フラッシュメモリでは、図６中に破線で示すように、従来の多値フラッシュメモリで生じていたしきい値の大きなばらつきを実線のように抑えることができる。この点については後で説明する。
【００５９】
表１は、第１の実施の形態に係る多値フラッシュメモリの消去、書き込み、読み出し、書き込みベリファイ時における各部の電圧値を一例を示している。なお、表１では、書き込みと読み出し時にワード線ＷＬ２と偶数番目のビット線ＢＬｅが選択された場合の例を示している。
【００６０】
【表１】
0003631463.tif 000002
【００６１】
消去は、ｐ型ウェル１２（ウェル線Ｃ−ｐ−ｗｅｌｌ）に２０Ｖが、選択されたブロックの全ワード線ＷＬ０に０Ｖが供給される。これにより、ブロック内の全てのメモリセルＭの浮遊ゲートＦＧから電子が放出されてしきい値が負となり、“１１”状態になる。ここで非選択ブロックのワード線及びビット線ＢＬなどは電位的にフローティング状態にされるが、ｐ型ウェル１２との容量結合により２０Ｖ近くとなっている。
【００６２】
書き込みは、第１段階、第２段階及び書き込み禁止の順で行われる。まず、選択されたワード線ＷＬ２に１４Ｖ〜２０Ｖの値を持つプログラム電圧（書き込み電圧）Ｖｐｇｍが供給される。非選択のワード線のうち選択メモリセルよりもビット線側に配置されたメモリセルの各ワード線、例えばワード線ＷＬ３には、このワード線ＷＬ３が接続されたメモリセルが導通するような高い電圧、例えば１０Ｖが供給される。他方、非選択のワード線のうち選択メモリセルよりもウェル線Ｃ−ｐ−ｗｅｌｌ側に配置されたメモリセルの各ワード線、例えばワード線ＷＬ１には、このワード線ＷＬ１が接続されたメモリセルが非導通となるような低い電圧、例えば０Ｖが供給される。また、選択されたビット線ＢＬｅには０Ｖの電圧が供給される。すると、ビット線ＢＬｅに供給された０Ｖの電圧が、選択されたメモリセルのドレインまで伝わり、かつ制御ゲートＣＧと浮遊ゲートＦＧとの間の容量結合によって浮遊ゲートＦＧの電位が上昇し、トンネル酸化膜（図４（ａ）中のトンネル酸化膜１６）を介し、トンネル現象によって電子がドレインから浮遊ゲートＦＧに注入され、しきい値が高速に上昇する（第１段階書き込み）。書き込み時に、しきい値の上昇速度を抑えるには、ビット線ＢＬｅの電圧が０．４Ｖに上げられる（第２段階書き込み）。しきい値の上昇を禁止するにはビット線ＢＬｅを十分に高い電圧、例えば電源電圧Ｖｄｄ（〜３Ｖ）にされる（書き込み禁止）。
【００６３】
読み出しは、選択されたワード線ＷＬ２に異なる値の読み出し電圧（０Ｖ、１Ｖ、２Ｖ）が順次供給されることで行われる。非選択の残りのワード線には、非選択のメモリセルが導通するような値の電圧、例えば４．５Ｖが供給される。選択メモリセルのしきい値が読み出し電圧以下なら、ビット線ＢＬｅと共通ソース線Ｃ−ｓｏｕｒｃｅとの間が導通して電流が流れ、ビット線ＢＬｅの電位は比較的低いレベルＬとなる。選択メモリセルのしきい値が読み出し電圧以上なら、ビット線ＢＬｅと共通ソース線Ｃ−ｓｏｕｒｃｅとの間は非導通となり、ビット線ＢＬｅの電位は比較的高いレベルＨとなる。メモリセルが“１０”状態のしきい値より高いか否かを検出するには、読み出し電圧が例えば０Ｖにされて読み出しが行われる（“１０”読み出し）。メモリセルが“０１”状態のしきい値より高いか否かを検出するには、読み出し電圧が例えば１Ｖにされて読み出しが行われる（“０１”読み出し）。また、メモリセルが“００”状態のしきい値より高いか否かを検出するには、読み出し電圧が例えば２Ｖにされて読み出しが行われる（“００”読み出し）。
【００６４】
“１０”状態のメモリセルは、読み出し電圧０Ｖに対して０．４Ｖの読み出しマージンを持たせるため、しきい値が０．４Ｖ以上となるように書き込まれる。このため、“１０”に書き込む場合、書き込みベリファイによりメモリセルのしきい値が０．４Ｖに達したと検出されたら、書き込みが禁止される。
【００６５】
従来では、しきい値が０．４Ｖに達したか否かしか検出されないので、図６に示すように、しきい値は比較的幅広い分布を持つ。
【００６６】
本実施の形態では、しきい値が目標のしきい値より若干低いレベルに達したか否かを検出して、しきい値の上昇速度が第２段階書き込みにより抑制される。このため、しきい値の分布幅は図６中の実線で示すように従来よりも狭めることができる。他の“０１”、“００”状態に関しても同様である。
【００６７】
書き込みベリファイは、選択されたワード線ＷＬ２に異なる値のベリファイ電圧、例えば、０．２Ｖ、０．４Ｖ、１．２Ｖ、１．４Ｖ、２．２Ｖ、２．４Ｖが順次供給されることで行われる。メモリセルのしきい値がベリファイ電圧以下なら、ビット線ＢＬｅと共通ソース線Ｃ−ｓｏｕｒｃｅとの間が導通して、ビット線ＢＬｅの電位は比較的低いレベルＬとなる。メモリセルのしきい値がベリファイ電圧以上なら、ビット線ＢＬｅと共通ソース線Ｃ−ｓｏｕｒｃｅとの間は非導通となり、ビット線ＢＬｅの電位は比較的高いレベルＨとなる。
【００６８】
メモリセルの目標のしきい値が０．４Ｖの場合、その目標のしきい値よりも若干低いレベルのしきい値、本例では例えば０．２Ｖより高いか否かを検出するには、ベリファイ電圧が０．２Ｖにされて書き込みベリファイが行われる（“１０”第１段階書き込みベリファイ）。メモリセルのしきい値が目標のしきい値０．４Ｖより高いか否かを検出するには、ベリファイ電圧が０．４Ｖにされて書き込みベリファイが行われる（“１０”第２段階書き込みベリファイ）。
【００６９】
メモリセルの目標のしきい値が１．４Ｖの場合、その目標のしきい値よりも若干低いレベルのしきい値、本例では例えば１．２Ｖより高いか否かを検出するには、ベリファイ電圧が１．２Ｖにされて書き込みベリファイが行われる（“０１”第１段階書き込みベリファイ）。メモリセルのしきい値が目標のしきい値１．４Ｖより高いか否かを検出するには、ベリファイ電圧が１．４Ｖにされて書き込みベリファイが行われる（“０１”第２段階書き込みベリファイ）。
【００７０】
メモリセルの目標のしきい値が２．４Ｖの場合、その目標のしきい値よりも若干低いレベルのしきい値、本例では例えば２．２Ｖより高いか否かを検出するには、ベリファイ電圧が２．２Ｖにされて書き込みベリファイが行われる（“００”第１段階書き込みベリファイ）。メモリセルのしきい値が目標のしきい値２．４Ｖより高いか否かを検出するには、ベリファイ電圧が２．４Ｖにされて書き込みベリファイが行われる（“００”第２段階書き込みベリファイ）。
【００７１】
図７は、従来の書き込み方法としきい値の変化状態を示している。図中、白抜きの四角は書き込み易いメモリセルのしきい値及びこのメモリセルに供給される書き込み制御電圧（ビット線ＢＬの電圧）を示し、黒の四角は書き込み難いメモリセルのしきい値及びこのメモリセルに供給される書き込み制御電圧（ビット線ＢＬの電圧）を示している。この２つのメモリセルは同一ページのデータを記憶する。どちらも初期状態では消去されており、負のしきい値を持っているとする。
【００７２】
書き込み電圧Ｖｐｇｍは複数のパルスに分割されており、１パルス毎に例えば０．２Ｖづつ上昇する。すなわち、書き込み電圧Ｖｐｇｍの１パルス当たりの増加分Ｄｖｐｇｍは０．２Ｖである。
【００７３】
書き込み制御電圧であるビット線ＢＬの電圧が０Ｖにされると、数パルス後に、しきい値は書き込み電圧Ｖｐｇｍの電圧増加分と同じ０．２Ｖ／パルスの速度で上がっていく。各書き込みパルス印加後に書き込みベリファイが行われ、書き込みベリファイ電圧にしきい値が達したと検出されたメモリセルのビット線電圧がＶｄｄにされ、メモリセル毎に書き込みが禁止されていく。従って、しきい値は０．２Ｖの分布幅を持つ。
【００７４】
図８は、第１の実施の形態に係わる多値フラッシュメモリにおけるデータの書き込み方法と、しきい値の変化状態を示している。図７の場合と同様に、白抜きの四角は書き込み易いメモリセルのしきい値及びこのメモリセルに供給される書き込み制御電圧（ビット線ＢＬの電圧）を示し、黒の四角は書き込み難いメモリセルのしきい値及びこのメモリセルに供給される書き込み制御電圧（ビット線ＢＬの電圧）を示している。この２つのメモリセルは同一ページのそれぞれのカラムのデータを記憶する。どちらも初期状態では消去されており、負のしきい値を持っている。
【００７５】
書き込み電圧Ｖｐｇｍは複数のパルスに分割されており、１パルス毎に例えば０．２Ｖづつ上昇する。すなわち、書き込み電圧Ｖｐｇｍの１パルス当たりの増加分Ｄｖｐｇｍは０．２Ｖである。
【００７６】
書き込み制御電圧であるビット線ＢＬの電圧が０Ｖにされて第１段階書き込みが行われる。そして、第１段階書き込みにおいて、書き込み電圧Ｖｐｇｍが数パルス分供給された後に、しきい値は書き込み電圧Ｖｐｇｍの電圧増加分と同じ０．２Ｖ／パルスの速度で上がっていく。書き込みパルスを１回印加した後毎に第１段階書き込みベリファイあるいは第２段階書き込みベリファイが行われる。
【００７７】
第１段階書き込みベリファイ電圧にしきい値が達したと検出されたメモリセルのビット線電圧は、その後、０．４Ｖにされ、メモリセル毎に第２段階書き込みに移る。第２段階書き込みベリファイ電圧にしきい値が達したと検出されたメモリセルのビット線電圧はＶｄｄにされ、メモリセル毎に書き込みが禁止されていく。
【００７８】
第２段階書き込みになって、数パルスの間はしきい値の上昇率が第１段階書き込み時における０．２Ｖ／パルスよりも低く抑制される。すなわち、ビット線ＢＬの電圧つまり書き込み制御電圧は、第１段階書き込み時では０Ｖであるが、第２段階書き込みになると０．４Ｖに増加する。このため、第２段階書き込みでは第１段階書き込みと比べてより書き込み難くなる。第２段階書き込み時におけるしきい値の上昇率は、例えばほぼ０Ｖ／パルスから０．０５Ｖ／パルスの範囲の値に抑制される。すなわち、第２段階書き込み時では、しきい値は高々０．０５Ｖの分布幅しか持たない。
【００７９】
書き込みパルス幅を２０μｓｅｃ、書き込みベリファイに要する時間を５μｓｅｃとすると、従来では書き込み時間は（２０μｓｅｃ＋５μｓｅｃ）×１８パルス＝４５０μｓｅｃとなる。
【００８０】
従来において、０．０５Ｖのしきい値分布を実現させるためには、書き込み電圧Ｖｐｇｍの電圧増加分Ｄｖｐｇｍを０．０５Ｖ、つまり０．２Ｖの４分の１の値にする必要があるので、４５０μｓｅｃ×４  ＝１８００μｓｅｃとなる。
【００８１】
一方、本実施の形態によれば、図８に示すように、０．２Ｖ／パルスの電圧増加分Ｄｖｐｇｍで０．０５Ｖのしきい値分布幅が実現でき、その書き込み時間は、（２０μｓｅｃ＋５μｓｅｃ＋５μｓｅｃ）×２０パルス＝６００μｓｅｃとなる。
【００８２】
つまり、従来に比べて同じ０．０５Ｖのしきい値分布を実現するために要する書き込み時間は３分の１に短縮される。
【００８３】
第１段階書き込みベリファイ電圧を“１０”第１段階書き込みベリファイ電圧とし、第２段階書き込みベリファイ電圧を“１０”第２段階書き込みベリファイ電圧とすることで、“１０”書き込みが行われる。
【００８４】
図９は、本実施の形態における同一メモリセルへの上位ページデータの書き込み方法としきい値の変化状態を示している。図７、図８の場合と同様に、白抜きの四角は書き込み易いメモリセルのしきい値及びこのメモリセルに供給される書き込み制御電圧（ビット線ＢＬの電圧）を示し、黒の四角は書き込み難いメモリセルのしきい値及びこのメモリセルに供給される書き込み制御電圧（ビット線ＢＬの電圧）を示している。この２つのメモリセルは同一ページのそれぞれのカラムのデータを記憶する。
【００８５】
白抜きの四角で示される書き込み易いメモリセルは、初期状態では消去されており負のしきい値を持っており、このメモリセルは“０１”状態に書き込まれるとする。黒の四角で示されるメモリセルは、初期状態では“１０”の状態に既に書き込まれており、このメモリセルは“００”状態に書き込まれるとする。
【００８６】
書き込み電圧Ｖｐｇｍは複数のパルスに分割されており、１パルス毎に例えば０．２Ｖづつ上昇する。すなわち、書き込み電圧Ｖｐｇｍの１パルス当たりの増加分Ｄｖｐｇｍは０．２Ｖである。
【００８７】
書き込み制御電圧であるビット線ＢＬの電圧が０Ｖにされて第１段階書き込みが行われる。そして、数パルス後には、しきい値は書き込み電圧Ｖｐｇｍの電圧増加分と同じ０．２Ｖ／パルスの速度で上がっていく。書き込みパルスが印加された後毎に“０１”第１段階書き込みベリファイが行われる。目標のしきい値よりも若干低いしきい値に書き込まれた後は、書き込みパルスが印加された後毎に“０１”第２段階書き込みベリファイが行われる。その後、“００”第１段階書き込みベリファイと“００”第２段階書き込みベリファイが行われる。
【００８８】
白抜きの四角で示されるメモリセルのしきい値が“０１”第１段階書き込みベリファイ電圧に達したと検出されたら、その後、ビット線電圧が０．４Ｖにされ、第２段階書き込みに移る。黒の四角で示されるメモリセルのしきい値が“００”第１段階書き込みベリファイ電圧に達したと検出されたら、その後、ビット線電圧が０．４Ｖにされ、第２段階書き込みに移る。
【００８９】
また、白抜きの四角で示されるメモリセルのしきい値が“０１”第２段階書き込みベリファイ電圧に達したと検出されたら、その後、ビット線電圧がＶｄｄにされ、書き込みが禁止される。さらに、黒の四角で示されるメモリセルのしきい値が“００”第２段階書き込みベリファイ電圧に達したと検出されたら、その後、ビット線電圧がＶｄｄにされ、書き込みが禁止される。
【００９０】
データ“０１”及び“００”の両方に関し、第２段階書き込みになってから、書き込み電圧の数パルスの間は、しきい値の増加分が例えばほぼ０Ｖ／パルスから０．０５Ｖ／パルスの範囲の値に抑制されるため、しきい値は０．０５Ｖの分布幅しか持たない。
【００９１】
図１０は、本実施の形態において、１つのメモリセルに下位ページのデータを書き込む際の各部の信号波形を示している。
【００９２】
時間ｔｐ０からｔｐ７までが書き込みステップであり、この期間にメモリセルに書き込みパルスが与えられる。時間ｔｆｖ０からｔｆｖ６までが“１０”第１段階書き込みベリファイ期間であり、時間ｔｓｖ０からｔｓｖ６までが“１０”第２段階書き込みベリファイ期間である。本例ではワード線ＷＬ２と偶数番目のビット線ＢＬｅが選択される場合を示している。
【００９３】
書き込みステップで、書き込み制御電圧であるビット線ＢＬｅは、第１段階書き込みならば０Ｖに、第２段階書き込みならば０．４Ｖにそれぞれされ、書き込み禁止ならＶｄｄ（例えば２．５Ｖ）にされる。
【００９４】
各書き込みベリファイ期間には、まずビット線ＢＬｅが例えば０．７Ｖに充電される。その後、選択ワード線ＷＬ２が各書き込みベリファイ電圧に達すると、もしメモリセルのしきい値が書き込みベリファイ電圧に達していればビット線ＢＬｅは０．７Ｖに維持される。メモリセルのしきい値が書き込みベリファイ電圧に達していなければ、ビット線ＢＬｅは０Ｖに向かって下がる。時間ｔｆｖ４あるいはｔｓｖ４のタイミングでビット線ＢＬｅの電圧をセンスアンプで検出すれば、メモリセルのしきい値が書き込みベリファイ電圧に達しているか否か検出できる。メモリセルのしきい値が書き込みベリファイ電圧に達していれば検出結果はパスである。
【００９５】
図１１は、第１の実施の形態における、１つのメモリセルに対する下位ページのデータ書き込み時の制御アルゴリズムを示している。
【００９６】
まず、ホストからのデータ入力コマンドを受け取り、ステートマシン８にデータ入力コマンドを設定する（Ｓ１）。ホストからのアドレスデータを受け取り、ステートマシン８に書き込みページを選択するためのアドレスを設定する（Ｓ２）。次に、１ページ分の書き込みデータを受け取り、それぞれの対応するデータ記憶部ＤＳ１に書き込みデータを設定する（Ｓ３）。ホストが発行した書き込みコマンドを受け取り、ステートマシン８に書き込みコマンドを設定する（Ｓ４）。書き込みコマンドが設定されて、Ｓ５からＳ１６のステップが自動的に内部でステートマシン８によって起動される。
【００９７】
各データ記憶部ＤＳ１のデータは対応するデータ記憶部ＤＳ２にコピーされる（Ｓ５）。その後、書き込み電圧Ｖｐｇｍの初期値を１２Ｖに設定し、また、書き込みカウンタＰＣを０に設定する（Ｓ６）。データ記憶部ＤＳ１のデータが“０”でかつデータ記憶部ＤＳ２のデータが“０”なら第１段階書き込みであるので、書き込み制御電圧であるビット線ＢＬの電圧を０Ｖにする。データ記憶部ＤＳ１のデータが“０”かつデータ記憶部ＤＳ２のデータが“１”なら第２段階書き込みであるので、書き込み制御電圧であるビット線ＢＬの電圧を０．４Ｖにする。データ記憶部ＤＳ１のデータが“１”かつデータ記憶部ＤＳ２のデータが“１”なら書き込み禁止であるので、書き込み制御電圧であるビット線ＢＬの電圧をＶｄｄに設定する（Ｓ７）。
【００９８】
設定された書き込み電圧Ｖｐｇｍと書き込み制御電圧とを用いて１ページ分のメモリセルに対して書き込みパルスを与える書き込みステップを実行する（Ｓ８）。全てのデータ記憶部ＤＳ２のデータが“１”か否かを検出し、全て“１”なら第１段階ステータスをパスと判断し、そうでなければパスでないと判断する（Ｓ９）。後述するが、全てのデータ記憶部ＤＳ２のデータが“１”であれば、前段の書き込みステップ（Ｓ８）で第１段階書き込みされたメモリセルは無い。
【００９９】
第１段階ステータスがパスでなければ、“１０”第１段階書き込みベリファイが起動され（Ｓ１０）、１ページ分のメモリセルのうち検出結果がパスとなったメモリセルに対応するデータ記憶部ＤＳ２のデータを“０”から“１”に変える。データ記憶部ＤＳ２のデータが“１”であるものは、その“１”状態を保持する。
【０１００】
第１段階ステータスがパスの場合、あるいは“１０”第１段階書き込みベリファイが終了すると、“１０”第２段階書き込みベリファイが起動される（Ｓ１１）。１ページ分のメモリセルのうち検出結果がパスとなったメモリセルに対応するデータ記憶部ＤＳ１のデータを“０”から“１”に変える。データ記憶部ＤＳ１のデータが“１”であるものは、その“１”状態を保持する。
【０１０１】
“１０”第２段階書き込みベリファイ後、全てのデータ記憶部ＤＳ１のデータが“１”か否かを検出し、全て“１”なら第２段階ステータスをパスと判断し、そうでなければパスでないと判断する（Ｓ１２）。第２段階ステータスがパスであれば、正常に書き込みが終了したとして、書きこみステータスをパスに設定して書き込み終了となる（Ｓ１３）。
【０１０２】
第２段階ステータスがパスでなければ書き込みカウンタＰＣを調べ（Ｓ１４）、その値が２０以上であれば正常に書き込めなかったとして、書きこみステータスをフェイルに設定して書き込み終了となる（Ｓ１５）。書き込みカウンタＰＣの値が２０より少なければ、書き込みカウンタＰＣの値を１だけ増やし、さらに、書き込み電圧Ｖｐｇｍの設定値を０．２Ｖ増やし（Ｓ１６）、再度ステップＳ７を経て書き込みステップＳ８となる。なお、上記書き込み回数は２０回に限定されるではなく、適宜変更してもよい。
【０１０３】
表２は、図１１に示される書き込みアルゴリズムにおいて、データ記憶部ＤＳ１とＤＳ２の“１０”第１段階書き込みベリファイ前後のデータと、対応するメモリセルのしきい値（Ｖｔ）との関係を示している。
【０１０４】
【表２】
0003631463.tif 000003
【０１０５】
ｎ番目の“１０”第１段階書き込みベリファイ前のデータ記憶部ＤＳ１とＤＳ２の取り得る値は０／０、０／１、１／１のいずれかである。０／０は、ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“１０”第１段階書き込みベリファイ電圧にも達していないことを示している。０／１は、ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“１０”第１段階書き込みベリファイ電圧には達したが、“１０”第２段階書き込みベリファイ電圧には達していないことを示している。１／１は、ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“１０”第２段階書き込みベリファイ電圧に達したことを示している。ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“１０”第２段階書き込みベリファイ電圧には達したが、“１０”第１段階書き込みベリファイ電圧には達していないということはあり得ないので、１／０という状態はこの実施の形態では存在しない。
【０１０６】
１番目の“１０”第１段階書き込みベリファイ前のデータ記憶部ＤＳ１とＤＳ２の取り得る値は０／０か１／１である。
【０１０７】
メモリセルのしきい値がｎ番目の書き込みステップで“１０”第１段階書き込みベリファイ電圧である０．２Ｖに達していなければ、“１０”第１段階書き込みベリファイでの検出結果はパスではないので、データ記憶部ＤＳ２のデータは変更されない。メモリセルのしきい値がｎ番目の書き込みステップで“１０”第１段階書き込みベリファイ電圧である０．２Ｖに達していれば、“１０”第１段階書き込みベリファイでの検出結果はパスなので、データ記憶部ＤＳ２のデータは“１”に変更される。既に“１”であるデータ記憶部ＤＳ２のデータはメモリセルのしきい値によらず変更されない。
【０１０８】
表３は、図１１に示されるアルゴリズムにおいて、データ記憶部ＤＳ１とＤＳ２の“１０”第２段階書き込みベリファイ前後のデータと、対応するメモリセルのしきい値との関係を示している。
【０１０９】
【表３】
0003631463.tif 000004
【０１１０】
ｎ番目の“１０”第２段階書き込みベリファイ前のデータ記憶部ＤＳ１とＤＳ２の取り得る値は０／０、０／１、１／１のいずれかである。０／０は、ｎ番目の書き込みステップ後にメモリセルのしきい値が“１０”第１段階書き込みベリファイ電圧にも達していないことを示している。０／１は、ｎ番目の書き込みステップまでにメモリセルのしきい値が“１０”第１段階書き込みベリファイ電圧には達したが、ｎ−１番目の書き込みステップまではメモリセルのしきい値が“１０”第２段階書き込みベリファイ電圧には達していないことを示している。１／１は、ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“１０”第２段階書き込みベリファイ電圧に達したことを示している。
【０１１１】
ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“１０”第２段階書き込みベリファイ電圧には達したが、ｎ番目の書き込みステップまでにメモリセルのしきい値が“１０”第１段階書き込みベリファイ電圧には達していないことはあり得ないので、１／０という状態はこの実施の形態では存在しない。
【０１１２】
メモリセルのしきい値が、ｎ番目の書き込みステップで“１０”第２段階書き込みベリファイ電圧である０．４Ｖに達していなければ、“１０”第２段階書き込みベリファイでの検出結果はパスではないので、データ記憶部ＤＳ１のデータは変更されない。メモリセルのしきい値が、ｎ番目の書き込みステップで“１０”第２段階書き込みベリファイ電圧である０．４Ｖに達していれば、“１０”第２段階書き込みベリファイでの検出結果はパスなので、データ記憶部ＤＳ１のデータは“１”に変更される。既に“１”であるデータ記憶部ＤＳ１のデータはメモリセルのしきい値によらず変更されない。０／０は、“１０”第２段階書き込みベリファイによって変更されることはない。
【０１１３】
図１２は、上記実施の形態における、メモリセルに対する上位ページのデータ書き込み時の制御アルゴリズムを示している。
【０１１４】
まず、ホストからのデータ入力コマンドを受け取りステートマシン８にデータ入力コマンドを設定する（Ｓ１）。ホストからのアドレスデータを受け取り、ステートマシン８に書き込みページを選択するためのアドレスを設定する（Ｓ２）。次に、１ページ分の書き込みデータを受け取り、それぞれのデータ記憶部ＤＳ１に対応する書き込みデータを設定する（Ｓ３）。ホストが発行した書き込みコマンドを受け取りステートマシン８に書き込みコマンドを設定する（Ｓ４）。書き込みコマンドが設定されて、Ｓ５〜Ｓ２０のステップが自動的に内部でステートマシン８によって起動される。
【０１１５】
まず、“１０”読み出しが起動され（Ｓ５）、パス（メモリセルのデータが“１０”）の場合は、対応するデータ記憶部ＤＳ３に“０”を設定する。パスでなければ対応するデータ記憶部ＤＳ３に“１”を設定する。次に、各データ記憶部ＤＳ１のデータを対応するデータ記憶部ＤＳ２にコピーする（Ｓ６）。その後、書き込み電圧Ｖｐｇｍの初期値を１４Ｖに設定し、また、書き込みカウンタＰＣを０に設定する（Ｓ７）。データ記憶部ＤＳ１のデータが“０”かつデータ記憶部ＤＳ２のデータが“０”なら第１段階書き込みであるので、書き込み制御電圧であるビット線ＢＬの電圧を０Ｖにし、データ記憶部ＤＳ１のデータが“０”かつデータ記憶部ＤＳ２のデータが“１”なら第２段階書き込みであるので、書き込み制御電圧であるビット線ＢＬの電圧を０．４Ｖにし、データ記憶部ＤＳ１のデータが“１”かつデータ記憶部ＤＳ２のデータが“１”なら書き込み禁止であるので、書き込み制御電圧であるビット線ＢＬの電圧をＶｄｄに設定する（Ｓ８）。この後は、設定された書き込み電圧Ｖｐｇｍと書き込み制御電圧とを用いて１ページ分のメモリセルに対して書き込みパルスを与える書き込みステップとなる（Ｓ９）。
【０１１６】
データ記憶部ＤＳ３に“０”が記憶されている全てのデータ記憶回路２０で、その全てのデータ記憶部ＤＳ２のデータが“１”か否かを検出し、全て“１”なら“００”第１段階ステータスをパスと判断し、そうでなければパスでないと判断する（Ｓ１０）。後ほど説明するが、その全てのデータ記憶部ＤＳ２のデータが“１”であれば、前段の書き込みステップ（Ｓ９）で“００”第１段階書き込みされたメモリセルは無い。
【０１１７】
“００”第１段階ステータスがパスでなければ、“００”第１段階書き込みベリファイが起動され（Ｓ１１）、１ページ分のメモリセルのうち検出結果がパスとなったメモリセルに対応しかつデータ記憶部ＤＳ３のデータが“０”であるデータ記憶回路２０内のデータ記憶部ＤＳ２のデータを“０”から“１”に変える。データ記憶部ＤＳ２のデータが既に“１”であるものは、その“１”状態を保持する。
【０１１８】
“００”第１段階ステータスがパスの場合、あるいは“００”第１段階書き込みベリファイが終了すると、“００”第２段階書き込みベリファイが起動される（Ｓ１２）。１ページ分のメモリセルのうち検出結果がパスとなったメモリセルに対応しかつデータ記憶部ＤＳ３のデータが“０”であるデータ記憶回路２０中のデータ記憶部ＤＳ１のデータを“０”から“１”に変える。既にデータ記憶部ＤＳ１のデータが“１”であるものは、その“１”状態を保持する。
【０１１９】
次に、データ記憶部ＤＳ３に“１”を記憶している全てのデータ記憶回路２０で、その全てのデータ記憶部ＤＳ２のデータが“１”か否かを検出し、全て“１”なら“０１”第１段階ステータスをパスと判断し、そうでなければパスでないと判断する（Ｓ１３）。後ほど説明するが、その全てのデータ記憶部ＤＳ２のデータが“１”であれば、前段の書き込みステップ（Ｓ９）で“０１”第１段階書き込みされたメモリセルは無い。
【０１２０】
“０１”第１段階ステータスがパスでなければ、“０１”第１段階書き込みベリファイが起動され（Ｓ１４）、１ページ分のメモリセルのうち検出結果がパスとなったメモリセルに対応しかつデータ記憶部ＤＳ３のデータが“１”であるデータ記憶回路２０内のデータ記憶部ＤＳ２のデータを“０”から“１”に変える。既にデータ記憶部ＤＳ２のデータが“１”であるものは、その“１”状態を保持する。
【０１２１】
“０１”第１段階ステータスがパスの場合、あるいは“０１”第１段階書き込みベリファイが終了すると、“０１”第２段階書き込みベリファイが起動される（Ｓ１５）。１ページ分のメモリセルのうち検出結果がパスとなったメモリセルに対応しかつデータ記憶部ＤＳ３のデータが“１”であるデータ記憶回路２０内のデータ記憶部ＤＳ１のデータを“０”から“１”に変える。既にデータ記憶部ＤＳ１のデータが“１”であるものは、その“１”状態を保持する。
【０１２２】
“０１”第２段階書き込みベリファイ後、全てのデータ記憶部ＤＳ１のデータが“１”か否かを検出し、全て“１”なら第２段階ステータスをパスと判断し、そうでなければパスでないと判断する（Ｓ１６）。第２段階ステータスがパスであれば、正常に書き込みが終了したとして、書きこみステータスをパスに設定して書き込み終了となる（Ｓ１７）。第２段階ステータスがパスでなければ書き込みカウンタＰＣを調べ（Ｓ１８）、その値が２０以上であれば正常に書き込めなかったとして、書き込みステータスをフェイルに設定して書き込み終了となる（Ｓ１９）。書き込みカウンタＰＣの値が２０より少なければ、書き込みカウンタＰＣの値を１だけ増やし、さらに、書き込み電圧Ｖｐｇｍの設定値を０．２Ｖ増加し（Ｓ２０）、再度ステップＳ８を経て書き込みステップＳ９となる。この場合にも、上記書き込み回数は２０回に限定されるではなく、適宜変更してもよい。
【０１２３】
表４は、図１１に示されるアルゴリズムにおいて、データ記憶部ＤＳ１、ＤＳ２、ＤＳ３の“０１”第１段階書き込みベリファイ前後のデータと、対応するメモリセルのしきい値（Ｖｔ）との関係を示している。
【０１２４】
【表４】
0003631463.tif 000005
【０１２５】
ｎ番目の“０１”第１段階書き込みベリファイ前のデータ記憶部ＤＳ１、ＤＳ２、ＤＳ３の取り得る値は、０／０／１、０／１／１、１／１／１、０／０／０、０／１／０、１／１／０のいずれかである。０／０／１は、ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“０１”第１段階書き込みベリファイ電圧にも達していないことを示している。０／１／１は、ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“０１”第１段階書き込みベリファイ電圧には達したが、“０１”第２段階書き込みベリファイ電圧には達していないことを示している。１／１／１は、ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“０１”第２段階書き込みベリファイ電圧に達したことを示している。ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“０１”第２段階書き込みベリファイ電圧には達したが、“０１”第１段階書き込みベリファイ電圧には達していないということはあり得ないので、１／０／１という状態はこの実施の形態では存在しない。
【０１２６】
メモリセルのしきい値が、ｎ番目の書き込みステップで“０１”第１段階書き込みベリファイ電圧である１．２Ｖに達していなければ、“０１”第１段階書き込みベリファイでの検出結果はパスではないので、データ記憶部ＤＳ２のデータは変更されない。メモリセルのしきい値が、ｎ番目の書き込みステップで“０１”第１段階書き込みベリファイ電圧である１．２Ｖに達していれば“０１”第１段階書き込みベリファイでの検出結果はパスなので、データ記憶部ＤＳ２のデータは“１”に変更される。既に“１”であるデータ記憶部ＤＳ２のデータはメモリセルのしきい値によらず変更されない。また、０／０／０、０／１／０、１／１／０は“０１”第１段階書き込みベリファイ対象ではないので変更されない。
【０１２７】
表５は、図１２に示されるアルゴリズムにおいて、データ記憶部ＤＳ１、ＤＳ２、ＤＳ３の“０１”第２段階書き込みベリファイ前後のデータと、対応するメモリセルのしきい値（Ｖｔ）との関係を示している。
【０１２８】
【表５】
0003631463.tif 000006
【０１２９】
ｎ番目の“０１”第２段階書き込みベリファイ前のデータ記憶部ＤＳ１、ＤＳ２、ＤＳ３の取り得る値は、０／０／１、０／１／１、１／１／１、０／０／０、０／１／０、１／１／０のいずれかである。０／０／１は、ｎ番目の書き込みステップ後にメモリセルのしきい値が“０１”第１段階書き込みベリファイ電圧にも達していないことを示している。０／１／１は、ｎ番目の書き込みステップまでにメモリセルのしきい値が“０１”第１段階書き込みベリファイ電圧には達したが、ｎ−１番目の書き込みステップまではメモリセルのしきい値が“０１”第２段階書き込みベリファイ電圧には達していないことを示している。１／１／１は、ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“０１”第２段階書き込みベリファイ電圧に達したことを示している。ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“０１”第２段階書き込みベリファイ電圧には達したが、ｎ番目の書き込みステップまでにメモリセルのしきい値が“０１”第１段階書き込みベリファイ電圧には達していないということはあり得ないので、１／０／１という状態はこの実施の形態では存在しない。
【０１３０】
メモリセルのしきい値が、ｎ番目の書き込みステップで“０１”第２段階書き込みベリファイ電圧である１．４Ｖに達していなければ、“０１”第２段階書き込みベリファイでの検出結果はパスではないので、データ記憶部ＤＳ１のデータは変更されない。メモリセルのしきい値が、ｎ番目の書き込みステップで“０１”第２段階書き込みベリファイ電圧である１．４Ｖに達していれば、“０１”第２段階書き込みベリファイでの検出結果はパスなので、データ記憶部ＤＳ１のデータは“１”に変更される。既に“１”であるデータ記憶部ＤＳ１のデータはメモリセルのしきい値によらず変更されない。０／０／１は、“０１”第２段階書き込みベリファイによって変更されることはない。また、０／０／０、０／１／０、１／１／０は“０１”第２段階書き込みベリファイ対象ではないので変更されない。
【０１３１】
表６は、図１２に示されるアルゴリズムにおいて、データ記憶部ＤＳ１、ＤＳ２、ＤＳ３の“００”第１段階書き込みベリファイ前後のデータと、対応するメモリセルのしきい値（Ｖｔ）との関係を示している。
【０１３２】
【表６】
0003631463.tif 000007
【０１３３】
ｎ番目の“００”第１段階書き込みベリファイ前のデータ記憶部ＤＳ１、ＤＳ２、ＤＳ３の取り得る値は、０／０／１、０／１／１、１／１／１、０／０／０、０／１／０、１／１／０のいずれかである。０／０／０は、ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“００”第１段階書き込みベリファイ電圧にも達していないことを示している。０／１／０は、ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“００”第１段階書き込みベリファイ電圧には達したが、“００”第２段階書き込みベリファイ電圧には達していないことを示している。１／１／０は、ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“００”第２段階書き込みベリファイ電圧に達したことを示している。ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“００”第２段階書き込みベリファイ電圧には達したが、“００”第１段階書き込みベリファイ電圧には達していないということはあり得ないので、１／０／０という状態はこの実施の形態では存在しない。
【０１３４】
メモリセルのしきい値が、ｎ番目の書き込みステップで“００”第１段階書き込みベリファイ電圧である２．２Ｖに達していなければ、“００”第１段階書き込みベリファイでの検出結果はパスではないので、データ記憶部ＤＳ２のデータは変更されない。メモリセルのしきい値が、ｎ番目の書き込みステップで“００”第１段階書き込みベリファイ電圧である２．２Ｖに達していれば、“００”第１段階書き込みベリファイでの検出結果はパスなので、データ記憶部ＤＳ２のデータは“１”に変更される。既に“１”であるデータ記憶部ＤＳ２のデータはメモリセルのしきい値によらず変更されない。また、０／０／１、０／１／１、１／１／１は“０１”第１段階書き込みベリファイ対象ではないので変更されない。
【０１３５】
表７は、図１２に示されるアルゴリズムにおいて、データ記憶部ＤＳ１、ＤＳ２、ＤＳ３の“００”第２段階書き込みベリファイ前後のデータと、対応するメモリセルのしきい値（Ｖｔ）との関係を示している。
【０１３６】
【表７】
0003631463.tif 000008
【０１３７】
ｎ番目の“００”第２段階書き込みベリファイ前のデータ記憶部ＤＳ１、ＤＳ２、ＤＳ３の取り得る値は、０／０／１、０／１／１、１／１／１、０／０／０、０／１／０、１／１／０のいずれかである。０／０／０は、ｎ番目の書き込みステップ後にメモリセルのしきい値が“００”第１段階書き込みベリファイ電圧にも達していないことを示している。０／１／０は、ｎ番目の書き込みステップまでにメモリセルのしきい値が“００”第１段階書き込みベリファイ電圧には達したが、ｎ−１番目の書き込みステップまではメモリセルのしきい値が“００”第２段階書き込みベリファイ電圧には達していないことを示している。１／１／０は、ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“００”第２段階書き込みベリファイ電圧に達したことを示している。ｎ−１番目の書き込みステップまでにメモリセルのしきい値が“００”第２段階書き込みベリファイ電圧には達したが、ｎ番目の書き込みステップまでにメモリセルのしきい値が“００”第１段階書き込みベリファイ電圧には達していないということはあり得ないので、１／０／０という状態はこの実施の形態では存在しない。
【０１３８】
メモリセルのしきい値が、ｎ番目の書き込みステップで“００”第２段階書き込みベリファイ電圧である２．４Ｖに達していなければ、“００”第２段階書き込みベリファイでの検出結果はパスではないので、データ記憶部ＤＳ１のデータは変更されない。メモリセルのしきい値が、ｎ番目の書き込みステップで“００”第２段階書き込みベリファイ電圧である２．４Ｖに達していれば、“００”第２段階書き込みベリファイでの検出結果はパスなので、データ記憶部ＤＳ１のデータは“１”に変更される。既に“１”であるデータ記憶部ＤＳ１のデータはメモリセルのしきい値によらず変更されない。０／０／０は、“００”第２段階書き込みベリファイによって変更されることはない。また、０／０／１、０／１／１、１／１／１は、“００”第２段階書き込みベリファイ対象ではないので変更されない。
【０１３９】
図１３は、ブロック内の書き込み順を制御するための制御アルゴリズムを示す。
【０１４０】
まず始めにワード線ＷＬ０を選択し、偶数番目のビット線に接続された複数のメモリセルで構成される１つのページに下位のデータを書き込む。その後、奇数番目のビット線に接続された複数のメモリセルで構成される１つのページに下位のデータを書き込む。３番目に、偶数番目のビット線に接続された複数のメモリセルで構成される１つのページに上位のデータを書き込んで、最後に奇数番目のビット線に接続された複数のメモリセルで構成される１つのページに上位のデータを書き込む。以下、同様に他のワード線ＷＬ１、ＷＬ２、ＷＬ３…についても上記同様の順番でデータを書き込んで行く。
【０１４１】
これにより、隣接するメモリセルの浮遊ゲート相互間の干渉を最小に抑えることができる。つまり、後で書き込まれるメモリセルは、その状態が“１１”から“１０”、“１１”から“０１”、あるいは“１０”から“００”に遷移しても、“１１”から“００”に遷移することは無い。“１１”から“００”への遷移は隣接するメモリセルのしきい値を最も上昇させる。
【０１４２】
図１４は、メモリセルの下位ページのデータの読み出しを行う際の制御アルゴリズムを示している。
【０１４３】
まず、ホストからの読み出しコマンドを受け取り、ステートマシン８に読み出しコマンドを設定する（Ｓ１）。ホストからのアドレスデータを受け取り、ステートマシン８に読み出しページを選択するためのアドレスを設定する（Ｓ２）。アドレスが設定されて、Ｓ３〜Ｓ５のステップが自動的に内部でステートマシン８によって起動される。
【０１４４】
まず始めに“０１”読み出しが起動される（Ｓ３）。“０１”読み出しの際にはワード線ＷＬには１Ｖが供給される。メモリセルのしきい値が“０１”データよりも低ければ、センスアンプによる読み出し結果は“１”となり、“０１”データよりも高ければ読み出し結果は“０”となる。読み出した結果は対応するデータ記憶部ＤＳ３に記憶される。次に“１０”読み出しが起動される（Ｓ４）。“１０”読み出しの際にはワード線ＷＬには０Ｖが供給される。メモリセルのしきい値が“１０”データよりも低ければ、センスアンプによる読み出し結果は“１”となり、“１０”データよりも高ければ読み出し結果は“０”となる。読み出した結果は対応するデータ記憶部ＤＳ２に記憶される。最後に“００”読み出しが起動される（Ｓ５）。“００”読み出しの際にはワード線ＷＬには２Ｖが供給される。メモリセルのしきい値が“００”データよりも低ければ、センスアンプによる読み出し結果は“１”となり、“００”データよりも高ければ読み出し結果は“０”となる。“００”読み出しで得られた結果と、対応するデータ記憶部ＤＳ２とＤＳ３のデータとから下位のページのデータが論理演算され、それが対応するデータ記憶部ＤＳ１に記憶される。そして、データ記憶部ＤＳ１に記憶されたデータが下位のページのデータとして外部に出力される。
【０１４５】
例えば、データ記憶部ＤＳ３に記憶されている“０１”読み出しの結果が“１”でかつデータ記憶部ＤＳ２に記憶されている“１０”読み出しの結果も“１”であれば、下位のページのデータの論理演算結果は“１”となる。データ記憶部ＤＳ３に記憶されている“０１”読み出しの結果が“１”でかつデータ記憶部ＤＳ２に記憶されている“１０”読み出しの結果が“０”であれば、下位のページのデータの論理演算結果は“０”となる。データ記憶部ＤＳ３に記憶されている“０１”読み出しの結果が“０”でかつ“００”読み出し結果も“０”であれば、下位のページのデータの論理演算結果は“０”となる。データ記憶部ＤＳ３に記憶されている“０１”読み出しの結果が“０”でかつ“００”読み出し結果が“１”であれば、下位のページのデータの論理演算結果は“１”となる。
【０１４６】
つまり、上記のような論理演算を行う演算回路は、ＤＳ３が“１”のときはＤＳ２の値を下位のページのデータとしてデータ記憶部ＤＳ１に記憶し、かつＤＳ３が“０”のときは“０１”読み出しの結果の値を下位のページのデータとしてデータ記憶部ＤＳ１に記憶するように構成されていればよい。
【０１４７】
図１５は、メモリセルの上位ページのデータの読み出しを行う際の制御アルゴリズムを示している。
【０１４８】
まず、ホストからの読み出しコマンドを受け取り、ステートマシン８に読み出しコマンドを設定する（Ｓ１）。ホストからのアドレスデータを受け取り、ステートマシン８に読み出しページを選択するためのアドレスを設定する（Ｓ２）。アドレスが設定されて、Ｓ３のステップが自動的に内部でステートマシン８によって起動される。
【０１４９】
ステップＳ３では“０１”読み出しが起動される。読み出した結果は上位ページのデータであり、対応するデータ記憶部ＤＳ１に記憶される。すなわち、“０１”読み出しの結果がそのまま上位のページのデータとなる。そして、データ記憶部ＤＳ１のデータが外部に出力される。
【０１５０】
以上のように、第１の実施の形態の多値フラッシュメモリによれば、書き込み時間の増加を抑えつつ、しきい値分布幅を縮めることができて信頼性の向上を図ることができる。
【０１５１】
次にこの発明の第２の実施の形態について説明する。
【０１５２】
図１６（ａ）は、図１０に示された信号波形図から書き込みステップの部分を抽出したものである。なお、ここでは例えばビット線ＢＬｅの電圧が０．４Ｖにされており、第２段階書き込みの場合が示されている。第１の実施の形態では、書き込みステップの際、ワード線ＷＬに所定の書き込み電圧（図では例えば１８．０Ｖ）が印加されている間中、書き込み制御電圧であるビット線ＢＬの電圧を一定電圧、例えば０．４Ｖに保ったままで書き込みを行っている。
【０１５３】
これに対し、第２の実施の形態では、図１６（ｂ）に示すように、選択されたワード線ＷＬ２に書き込み電圧Ｖｐｇｍが印加されている期間のうちの一定期間中（図中のＴｗｒ）のみ書き込み制御電圧であるビット線ＢＬの電圧を０Ｖとし、その後、書き込みを禁止するようにＶｄｄとする。
【０１５４】
なお、ビット線ＢＬの電圧を０Ｖにする上記一定期間Ｔｗｒの長さは、第１段階書き込み時に比べ第２段階書き込み時の方が短くなるようにすることで、第１の実施の形態と同等に、第２段階書き込み時におけるしきい値の増加分を第１段階書き込み時のそれよりも抑制できる。
【０１５５】
すなわち、第２の実施の形態によれば、書き込み制御電圧の実効電圧を、書き込み制御電圧であるビット線ＢＬの電圧を書き込みステップの期間中一定にする第１の実施の形態の場合と同等にすることができ、第１の実施の形態の場合と同様の効果が得られる。
【０１５６】
次にこの発明の第３の実施の形態について説明する。
【０１５７】
図１７は、図１０に示された信号波形図に対応する信号波形図を示している。
【０１５８】
図１０に示されるように、第１の実施の形態では、第１段階書き込みベリファイが終了した後は、ビット線の電圧が充電後の電圧を維持している場合でもいったんビット線の電圧を０Ｖにリセットし、第２段階書き込みベリファイを行うためにビット線を再度充電するようにしている。
【０１５９】
これに対し、第３の実施の形態の場合には、以下のようにして書き込みベリファイを行う。
【０１６０】
第１段階書き込みベリファイ時には、まずビット線ＢＬｅが例えば０．７Ｖに充電される。その後、選択ワード線ＷＬ２が第１段階書き込みベリファイ電圧に達すると、もしメモリセルのしきい値が第１段階書き込みベリファイ電圧に達していれば、ビット線ＢＬｅは０．７Ｖは維持する。もしメモリセルのしきい値が第１段階書き込みベリファイ電圧に達していなければ、ビット線ＢＬｅは０Ｖに向かって下がる。図１８中のｔｆｖ４のタイミングでビット線ＢＬｅの電圧を検出すれば、メモリセルのしきい値が第１段階書き込みベリファイ電圧に達しているか否か検出できる。メモリセルのしきい値が書き込みベリファイ電圧に達していれば検出結果はパスである。
【０１６１】
その後、タイミングｔｆｖ５あるいは同タイミングのｔｓｖ３で、選択ワード線ＷＬ２の電圧を第１段階書き込みベリファイ電圧から第２段階書き込みベリファイ電圧にスイッチする。例えば、図１７に示すように選択ワード線ＷＬ２の電圧を０．２Ｖから０．４Ｖに上昇させる。もし、メモリセルのしきい値が第２段階書き込みベリファイ電圧に達していれば、ビット線ＢＬｅは０．７Ｖは維持する。メモリセルのしきい値が第２段階書き込みベリファイ電圧に達していなければ、ビット線ＢＬｅは０Ｖに向かって下がる。そして、ｔｓｖ４のタイミングでビット線ＢＬｅの電圧を検出すれば、メモリセルのしきい値が第２段階書き込みベリファイ電圧に達しているか否か検出できる。メモリセルのしきい値が書き込みベリファイ電圧に達していれば検出結果はパスである。
【０１６２】
第３の実施の形態では、第１の実施の形態と同様の効果が得られる上に、第２段階書き込みベリファイ時のビット線の充電時間が省略でき、より高速に書き込みが行えるという効果がさらに得られる。なお、データ“０１”やデータ“００”の第１あるいは第２段階書き込みベリファイの場合も書き込みベリファイ電圧の値を変えるだけで同様に実施できる。
【０１６３】
なお、上記各実施の形態では、１つのメモリセルに対し２ビットのデータ、つまりそれぞれ４値のデータを記憶させる場合について説明したが、これは１つのメモリセルに対し４値以上のデータを記憶させる場合にも容易に実施することができることはもちろんである。
【０１６４】
【発明の効果】
以上説明したようにこの発明によれば、書き込み時間の増加を抑えつつ、しきい値分布幅を縮めることができて、信頼性の高い不揮発性半導体記憶装置を提供することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態に係わるフラッシュメモリの全体の構成を示すブロック図。
【図２】図１中のメモリセルアレイの内部構成を示すブロック図及びメモリセルアレイ内に設けられるＮＡＮＤ型メモリユニットの回路図。
【図３】図１中のメモリセルアレイのカラム方向の素子構造を示す断面図。
【図４】図１中のメモリセルアレイのロウ方向の素子構造を示す断面図。
【図５】図１中のカラム制御回路の主要部の構成を抽出して示すブロック図。
【図６】第１の実施の形態に係わる多値フラッシュメモリの多値データとメモリセルのしきい値の関係を示す図。
【図７】従来の書き込み方法としきい値の変化状態を示す図。
【図８】第１の実施の形態に係わる多値フラッシュメモリにおけるデータの書き込み方法としきい値の変化状態を示す図。
【図９】第１の実施の形態における同一メモリセルへの上位ページデータの書き込み方法としきい値の変化状態を示す図。
【図１０】第１の実施の形態において１つのメモリセルに下位ページのデータを書き込む際の各部の信号波形を示す図。
【図１１】第１の実施の形態における１つのメモリセルに対する下位ページのデータ書き込み時の制御アルゴリズムを示す図。
【図１２】第１の実施の形態におけるメモリセルに対する上位ページのデータ書き込み時の制御アルゴリズムを示す図。
【図１３】第１の実施の形態においてブロック内の書き込み順を制御するための制御アルゴリズムを示す図。
【図１４】第１の実施の形態においてメモリセルの下位ページのデータの読み出しを行う際の制御アルゴリズムを示す図。
【図１５】第１の実施の形態においてメモリセルの上位ページのデータの読み出しを行う際の制御アルゴリズムを示す図。
【図１６】第１及び第２の実施の形態による書き込みステップの信号波形図。
【図１７】第３の実施の形態において１つのメモリセルデータを書き込む際の各部の信号波形を示す図。
【図１８】従来の問題点を説明するための断面図及びしきい値の分布状態を示す図。
【符号の説明】
１…メモリセルアレイ、
２…カラム制御回路、
３…ロウ制御回路、
４…ソース線制御回路、
５…Ｐウェル制御回路、
６…データ入出力バッファ、
７…コマンド・インターフェイス、
８…ステートマシン、
１０…ｐ型半導体基板、
１１…ｎ型ウェル、
１２…ｐ型ウェル、
１３…ｎ型拡散層、
１４…ｐ型拡散層、
１５…ｎ型拡散層、
１６…トンネル酸化膜、
１７…ＯＮＯ膜、
２０…データ記憶回路。
ＢＬＯＣＫ…メモリセルブロック、
ＢＬ…ビット線、
ＷＬ…ワード線、
ＳＧ…選択ゲート線、
Ｃ−ｓｏｕｒｃｅ…共通ソース線、
Ｍ…メモリセル、
Ｓ１、Ｓ２…選択ゲート、
Ｃ−ｐ−ｗｅｌｌ…ウェル線、
ＳＴＩ…素子分離、
ＣＧ…制御ゲート、
ＦＧ…浮遊ゲート、
ＤＳ１、ＤＳ２、ＤＳ３…データ記憶部、
Ｑｎ１、Ｑｎ２…ｎチャネルＭＯＳトランジスタ。
【図１】
0003631463.tif 000009
【図２】
0003631463.tif 000010
【図３】
0003631463.tif 000011
【図４】
0003631463.tif 000012
【図５】
0003631463.tif 000013
【図６】
0003631463.tif 000014
【図７】
0003631463.tif 000015
【図８】
0003631463.tif 000016
【図９】
0003631463.tif 000017
【図１０】
0003631463.tif 000018
【図１１】
0003631463.tif 000019
【図１２】
0003631463.tif 000020
【図１３】
0003631463.tif 000021
【図１４】
0003631463.tif 000022
【図１５】
0003631463.tif 000023
【図１６】
0003631463.tif 000024
【図１７】
0003631463.tif 000025
【図１８】
0003631463.tif 000026