(57)【要約】不揮発性メモリ（ＮＶＭ）（１４）の一つの部分に対して、パラメータの第１セットを用いてプログラム／消去動作（８０）を実行することを含むＮＶＭ（１４）をプログラミング／消去する方法。前記方法は更に、前記ＮＶＭ（１４）の前記部分における各セルが第１マージンレベルをパスするか否かを判定し（８２）、パスしない場合には、前記第１レベルよりも低いマージンレベルのうち、いずれの一セットを前記ＮＶＭ（１４）の前記部分における各セルがパスするかについて決定する段階を含む。前記方法は更に、前記決定された低いマージンレベルのセットの一つに基づき、引き続く前記ＮＶＭ（１４）の前記部分のプログラム／消去動作に関連するパラメータのセットの少なくとも一つを修正する段階（９２）を含む。
2009530759.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリ（ＮＶＭ）をプログラミング／消去する方法であって、
前記ＮＶＭの一つの部分に対してプログラム／消去動作を実行する段階と、
前記プログラム／消去動作に関する少なくとも一つのパラメータの実測値について、少なくとも一つのパラメータの目標値からの逸脱量を判定する段階と、
前記少なくとも一つのパラメータの実測値における逸脱量に基づいて、前記ＮＶＭの前記部分に対する引き続くプログラム／消去動作を修正する段階と
からなる方法。
【請求項２】
前記プログラム／消去動作に関する前記少なくとも一つのパラメータが、少なくとも一つの読み取り電圧及び読み取り電流からなる請求項１に記載の方法。
【請求項３】
前記プログラム／消去動作に関する前記少なくとも一つのパラメータの実測値における前記逸脱量を判定する段階が、パラメータの第１セットを用いて前記プログラム／消去動作を実行する段階からなる請求項１に記載の方法。
【請求項４】
前記ＮＶＭの前記部分における各セルが第１マージンレベルをパスするか否かを判定する段階を更に備える請求項３に記載の方法。
【請求項５】
前記ＮＶＭの前記部分における各セルが前記第１マージンレベルをパスする場合には、前記ＮＶＭの次の部分に対して前記プログラム／消去動作を行う段階を更に備える請求項４に記載の方法。
【請求項６】
前記ＮＶＭの前記部分における少なくとも一つのセルが第１マージンレベルのパスに失敗し、かつ、前記ＮＶＭの前記部分における各セルが第２マージンレベルをパスする場合には、パラメータの第２セットを用いて前記プログラム／消去動作を実行する段階を更に備える請求項４に記載の方法。
【請求項７】
前記ＮＶＭの前記部分における各セルが前記第１マージンレベルをパスするか否かを判定する段階を更に備える請求項６に記載の方法。
【請求項８】
前記ＮＶＭの前記部分における少なくとも一つのセルが最終マージンレベルのパスに失敗した場合には、最大レベルにおいて前記プログラム／消去動作を実行する段階を更に備える請求項４に記載の方法。
【請求項９】
前記ＮＶＭの前記部分における各セルが前記第１マージンレベルをパスするか否かを判定する段階を更に備える請求項８に記載の方法。
【請求項１０】
前記プログラム／消去動作に関する最大時間が経過したか否かを判定し、経過した場合には、前記ＮＶＭの部分に対する前記プログラム／消去動作の失敗を指示する段階を更に備える請求項１に記載の方法。
【請求項１１】
前記引き続くプログラム／消去動作を修正する段階が、前記引き続くプログラム／消去動作に関する時間、電圧、電流、及び少なくとも一つのパルスの形状、の少なくとも一つを修正する段階を備える請求項１に記載の方法。
【請求項１２】
不揮発性メモリ（ＮＶＭ）をプログラミング／消去する方法であって、
パラメータの第１セットを用いて前記ＮＶＭの一つの部分に対してプログラム／消去動作を実行する段階と、
前記ＮＶＭの前記部分における各セルが第１マージンレベルをパスするか否かを判定し、パスしない場合には、前記第１レベルよりも低いマージンレベルのうち、いずれの一セットを前記ＮＶＭの前記部分における各セルがパスするかについて決定する段階と、
前記決定された低いマージンレベルのセットの一つに基づき、前記ＮＶＭの前記部分に対する引き続く前記プログラム／消去動作に関するパラメータのセットの少なくとも一つを修正する段階と
からなる方法。
【請求項１３】
前記ＮＶＭの前記部分における各セルが前記第１マージンレベルをパスする場合には、前記ＮＶＭの次の部分に対して前記プログラム／消去動作を実行する段階を更に備える請求項１２に記載の方法。
【請求項１４】
前記ＮＶＭの前記部分における各セルが前記引き続くプログラム／消去動作に応じて前記第１マージンレベルをパスするか否かを判定する段階を更に備える請求項１２に記載の方法。
【請求項１５】
前記ＮＶＭの前記部分における少なくとも一つのセルが低いマージンレベルのセットのうち最低のマージンレベルをパスするのに失敗した場合には、前記修正する段階に続き、最大レベルにおいて前記プログラム／消去動作を実行する段階を更に備える請求項１２に記載の方法。
【請求項１６】
前記ＮＶＭの前記部分における各セルが前記最大レベルにおけるプログラム／消去動作に応じて前記第１マージンレベルをパスするか否かを判定する段階を更に備える請求項１５に記載の方法。
【請求項１７】
前記プログラム／消去動作に関する最大時間が経過したか否かを判定し、経過した場合には、前記ＮＶＭの前記部分に対する前記プログラム／消去動作の失敗を指示する段階を更に備える請求項１２に記載の方法。
【請求項１８】
前記引き続くプログラム／消去動作に関するパラメータの前記セットが、時間、電圧、電流、及び形状の少なくとも一つを含む請求項１２に記載の方法。
【請求項１９】
不揮発性メモリ（ＮＶＭ）システムであって、
ＮＶＭアレイと、
前記ＮＶＭアレイの一つの部分に対して、パラメータの第１セットを用いてプログラム／消去動作を実行するためのＮＶＭ周辺回路と、
前記ＮＶＭアレイの前記部分における各セルが第１マージンレベルをパスするか否かを判定し、かつ、前記第１レベルよりも低いマージンレベルのセットのうち、いずれの一セットを前記ＮＶＭアレイの前記部分における各セルがパスするかを決定するための、及び、前記決定された前記低いマージンレベルのセットの一つに基づき、前記ＮＶＭアレイの前記部分に対する引き続くプログラム／消去動作に関するパラメータの前記セットのうち少なくとも一セットを修正するためのコントローラと
からなるＮＶＭシステム。
【請求項２０】
前記引き続くプログラム／消去動作に関するパラメータの第１セットが、時間、電圧、電流、及び形状の少なくとも一つを含む請求項１９に記載のＮＶＭシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性メモリに関し、より詳細には、不揮発性メモリを制御可能にプログラミング／消去する方法及びその装置に関する。
【背景技術】
【０００２】
複数回プログラムされ、及び消去されることが可能な不揮発性メモリ（ＮＶＭ）は、多種多様なアプリケーションに共通して用いられる。一般に、ＮＶＭがプログラムされ及び消去されるにしたがい、ＮＶＭを構成するメモリセルのコンディションは影響を受ける。例えば、要求されるプログラミング及び消去の回数は増加し得るが、その増加量は仕様の要求によって限定されることがある。ユーザはプログラム又は消去の最大の回数を知ることが必要になるかもしれない。高い耐久性又は高いデータ保持力への要望も加わる。耐久性が高い場合には、より高い消去電圧が許容され得るが、データ保持力の減少を引き起こし得る。
【０００３】
したがって、これらの課題に対応する性能において改善が必要とされている。
【発明を実施するための最良の形態】
【０００４】
本発明は添付の図面により例示の目的で説明され、それらに限定されるものではない。
熟練した技術者は図の要素が簡潔性及び明りょう性のために図示され、一定の縮尺で描かれる必要がないことを十分理解する。例えば、図中のいくつかの要素の寸法は、本発明の実施形態の更なる理解を助けるために、他の要素に対して誇張されている。
【０００５】
ＮＶＭセルのデータ保存（保持力）とは、所定のデータ値が適切に記憶された状態を維持し、そのためにＮＶＭセルからの取り出しが可能な回数である。ＮＶＭセルの耐久性とは、ＮＶＭセルがそれ以上確実に変化しない状態になるまでに、プログラム／消去サイクルを実行し得る最大の数である。検査中又は使用中に一つ以上のＮＶＭセルが機能しなくなったとき、ＮＶＭアレイの実行可能性を広げるための様々な技術が存在することに留意されたい（例えば、冗長コード、エラーコード、訂正コード等）。
【０００６】
ＮＶＭはあらゆる所望のグラニュラリティ（増設単位）でプログラムされる。多くのＮＶＭがバイト当たりを基準にプログラムされるが、代替の実施形態は、ビット、ワード、ロングワード、セクタ、ブロック、又は他のあらゆる所望の基準でプログラムされる。ＮＶＭはあらゆる所望のグラニュラリティ（増設単位）で消去される。多くのＮＶＭはセクタ当たりを基準に消去されるが、代替の実施形態は、ビット、バイト、ワード、ロングワード、ブロック、又は他のあらゆる所望の基準により消去される。
【０００７】
問題が発生するのは、単一のＮＶＭアレイ３０（図２を参照）がカスタマの第１グループによって要求されるデータ保存のための最大仕様を満たさなければならず、かつ、カスタマの第２グループによって要求される耐久性のための最大仕様も満たすときである。
【０００８】
一例として、カスタマの前記第１グループはプロセッサ１２への指示（図１を参照）等のソフトウェアコードを記憶しており、そのソフトウェアコードは製品寿命（例えば２０年）を通して記憶されていなければならない。そのような製品の一例は、ＮＶＭを用いてエンジン制御を実行するためのソフトウェアコードを記憶する自動車である。このカスタマの第１グループは、ＮＶＭが多くのプログラム／消去サイクルを実行することを要求しないかもしれない。この例では、ＮＶＭがソフトウェアコードを記憶する場合には、前記ソフトウェアコードが最初にＮＶＭに記憶されれば、消去され、及び書き換えられる必要は二度とないであろう。自己修正ソフトウェアコードは、一般にほとんどのアプリケーションには用いられていない。
【０００９】
第二の例として、カスタマの前記第２グループは、例えば不揮発性であるが不定であるデータといった、比較的短期間（例えば、１か月から５年間）記憶しておくことが必要なデータ値を記憶し得る。そのような製品の一例は、ＮＶＭを用いてエンジン回転情報を表すデータ値を記憶する自動車である。このカスタマの第２グループは、ＮＶＭが多くのプログラム／消去サイクルを実行することを要求する（例えば、毎回の自動車のイグニッションオフ及びオン時に１回のプログラム／消去サイクル）。この例では、ＮＶＭがデータ値を記憶する場合には、前記データ値は新たなプログラム／消去サイクルによってリフレッシュされるため、長いデータ記憶時間を有することは必要ないであろう。
【００１０】
さらに、いくつかのカスタマは同じアプリケーションにおいてＮＶＭの両方のタイプを要求する。例えば、上述した自動車のカスタマは、ソフトウェアコードのための長期間のデータ保持力を有するいくつかのＮＶＭを必要とし、更に、頻繁に書き換えられるデータ値のための高い耐久性を有するいくつかのＮＶＭも必要とする。また、長期間のデータ保持力を有するＮＶＭの部分が、いくつ、かつ、どれくらいのサイズで必要かについて、カスタマ要求は様々である。同様に、高い耐久性を有するＮＶＭの部分が、いくつ、かつ、どれくらいのサイズで必要かについても、カスタマ要求は様々である。
【００１１】
図１は、本発明の一実施形態による集積回路（ＩＣ）１０をブロック図で示したものである。この図示された実施形態において、ＩＣ１０は、プロセッサ１２、ＮＶＭ１４、任意の他のメモリ１６、一つ以上の任意の他のモジュール１８、及び任意の外部バスインターフェース２０を有し、これらの各々は双方向でバス２２に結合される。ここで、バスという用語は、データ、アドレス、制御、又はステータス等の、一つ以上の様々な種類の情報を伝達するために使用される複数の信号又はコンダクタを表す用語として用いられる。一つのバスしか示されていないが、二つ以上のバスが用いられてもよい。
【００１２】
いくつかの実施形態において、ＩＣ１０は単独のＮＶＭであり、回路１２，１６、及び１８は実装されない。この場合において、前記外部バスインターフェース２０はＮＶＭ１４へのアドレス及びデータバスドライバを含む。他の実施形態において、ＩＣ１０は、ＮＶＭ１４をマイクロコントローラ上でただ一つ得られる回路として有するそのマイクロコントローラである。回路１２，１４，１６，１８、及び２０のいずれか一つ以上の回路は、ＩＣ１０の外部と通信するために用いられる一つ以上の集積回路端子（図示せず）に結合されてもよい。他のメモリ１６はいかなる種類のメモリでもよい。他のモジュール１８はあらゆる所望の目的のために用いられる電気回路を含む。他のモジュール１８における電気回路のいくつかの例は、タイマー回路、通信インターフェース回路、ディスプレイ・ドライバ回路、アナログ−デジタルコンバータ、デジタル−アナログコンバータ、電力管理回路等を含む。
【００１３】
図２は、本発明の一実施形態による図１のＮＶＭ１４をブロック図で示したものである。一実施形態において、ＮＶＭ１４はＮＶＭ周辺回路３１に双方向で結合されたＮＶＭアレイ３０を有する。ＮＶＭアレイ３０は、ブロック３２及びブロック３３を含む複数のブロックを有する。ブロック３２は、ブロック３２に関する情報を記憶するブロック制御情報３４を有する。ブロック３３は、ブロック３３に関する情報を記憶するブロック制御情報３５を有する。一例として、ブロック制御情報３４は、特定のＮＶＭブロック３２の様々な特性を制御するために用いられる情報（例えば、消去パルスの耐久性及び電圧、最大消去時間、プログラムパルスの耐久性及び電圧、最大プログラム時間、マージンレベル等）を含んでもよい。いくつかの実施形態は、前記ブロック制御情報３４に、他の追加的な情報（例えば、ＮＶＭ製造及び／又は検査履歴）を記憶してもよい。これらの例は、ブロック３３及びブロック制御情報３５についても適用する。図２は二つのブロック３２，３３を詳細に図示するが、代替の実施形態は、一つだけのブロックも含め、いくつのブロックを用いてもよい。
【００１４】
図示された実施形態において、ブロック制御情報３４は保存／耐久制御回路３６を含み、ブロック制御情報３５は保存／耐久制御回路３７を含む。代替の実施形態は、保存／耐久制御回路３６及び３７を集積回路１０内のいかなる場所に配置してもよい。ＮＶＭアレイ３０に対する保存／耐久制御回路（たとえば３６）の数はいくつでもよい。図示された実施形態は、各ＮＶＭブロックに一つの保存／耐久制御回路（例えば、３６，３７）を用いる。しかし、代替の実施形態は、前記ＮＶＭアレイ３０内の異なる増設単位（ブロックよりも大きい、又は小さい）に一つの保存／耐久制御回路を用いてもよい。例えば、ＮＶＭアレイ３０の全体は、その記憶特性を選択するために用いられる一つの保存／耐久制御回路を有してもよい。
【００１５】
点線はブロック３２の部分４０〜４２を表すために使用されている。同様に、点線はブロック３３の部分４４〜４５を表すために使用されている。各部分４０，４１，４２，４４，４５は複数のＮＶＭセルを有する。保存／耐久制御回路３６は、ブロック３２が区分される部分の数、及び各部分のサイズを決定するために用いられてもよい。保存／耐久制御回路３７はブロック３３が区分される部分の数、及び各部分のサイズを決定するために用いられてもよい。一実施形態において、保存／耐久制御回路３６は各部分４０〜４２の記憶特性を決定又は選択するために用いられてもよい。同様に、保存／耐久制御回路３７は各部分４４〜４５の記憶特性を決定又は選択するために用いられてもよい。
【００１６】
一例として、保存／耐久制御回路３７は、部分４４を耐久性の高い記憶特性を有するように選択し、かつ、部分４５を長期データ保持力の記憶特性を有するように選択する。若しくは、保存／耐久制御回路３７は、部分４５を耐久性の高い記憶特性を有するように選択し、かつ、部分４４を長期データ保持力の記憶特性を有するように選択する。同様の態様において、一例として、保存／耐久制御回路３６は、部分４０及び４２を耐久性の高い記憶特性を有するように選択し、かつ、部分４１を長期データ保持力の記憶特性を有するように選択する。若しくは、保存／耐久制御回路３６は、部分４０〜４２をあらゆる組合せの記憶特性を有するように選択する。保持力及び耐久性は記憶特性の二つの可能な例である。代替の実施形態は、異なる又は更なる記憶特性を用いてもよい（例えば、放射線に対する耐性の度合い、選択された温度範囲でのデータ保全性の度合い等）。
【００１７】
図示された実施形態において、ＮＶＭ周辺回路３１はＮＶＭ１４の実行に必要な他の全ての電気回路を含む。一実施形態において、ＮＶＭ周辺回路１４は、チャージポンプ、高電圧レギュレータ、高電圧スイッチ、ワード線ドライバ、ソース線ドライバ、センス増幅器、ロウデコーダ、カラムデコーダ、バス２２へのインターフェース、レジスタ、読み取り基準回路、コントローラ、テストロジック、及び、ＮＶＭ１４の機能性について所望される他のあらゆる電気回路（図示せず）を有する。一実施形態について、ＮＶＭ周辺回路３１は従来の態様で実行され得ることに留意されたい。
【００１８】
図３は、本発明の一実施形態による図２の保存／耐久制御回路３６，３７をブロック図で示す。一実施形態において、保存／耐久設定部５０は、対応する部分（保存／耐久制御回路３６に対する部分４０、及び保存／耐久制御回路３７に対する部分４４）の記憶特性を選択するために用いられる。同様に、保存／耐久設定部５３は、対応する部分（保存／耐久制御回路３６に対する部分４２、及び保存／耐久制御回路３７に対する部分４５）の記憶特性を選択するために用いられる。図３に示される実施形態において、二つの可能な記憶特性がある。すなわち、長期データ保持力及び高い耐久性である。代替の実施形態は、三つ以上の可能な記憶特性（例えば、長期データ保持力、高い耐久性、及びデータ保持力と耐久性とを折衷する組合せ）を有する。代替の実施形態は、記憶特性制御回路５０を用いて他の記憶特性の間で選択する。耐久性及びデータ保持力は、記憶特性の二つの可能な例に過ぎない。
【００１９】
開始アドレス記憶回路５１及び終了アドレス記憶回路５２は、対応するＮＶＭ部分（制御回路３６に対する部分４０、制御回路３７に対する部分４４）の配置及びサイズを確定するために用いられる。開始アドレス記憶回路５４及び終了アドレス記憶回路５５は、対応するＮＶＭ部分（制御回路３６に対する部分４２、制御回路３７に対する部分４５）の配置及びサイズを確定するために用いられる。代替の実施形態は、前記対応するＮＶＭ部分の配置及びサイズを、あらゆる所望の態様で確定する。例えば、終了アドレス記憶回路５２，５５に代えて、サイズ記憶回路（図示せず）が用いられる。若しくは、前記部分の配置及びサイズは予め指定され、かつ、前記制御記憶回路５１，５２，５４，５５は必要とされない。若しくは、他の電気回路（例えば、ＮＶＭ周辺回路３１における保護回路）が用いられ、前記部分４０，４１，４２，４４，４５の配置及びサイズを決定し、又は部分的に影響を与える。
【００２０】
図４は、ＮＶＭをプログラミング／消去する方法をフローチャートで示す。フロー７７は、楕円形のスタート部７０から開始し、段階７１へと続き、そこでは新たなＮＶＭ部分が選択される。段階７１から、フロー７７は菱形の決定部７２へと続き、そこでは「この部分に対する保存／耐久設定部５０，５３の値は何か」と質問される。前記保存／耐久設定部５０，５３の値が耐久性を選択するように示す場合には、前記フローは段階７３へと続き、そこでは耐久性に対する確認レベルが選択される。前記保存／耐久設定部５０，５３の値が長期データ保持力を選択するように示す場合、前記フロー７７は段階７４へと続き、そこでは長期データ保持力に対する確認レベルが選択される。段階７３及び７４の両段階から、前記フロー７７は段階７５へと続き、そこでは段階７３又は７４のいずれかにおいて選択された前記確認レベルを用いて、プログラム／消去手順が実行される。段階７５から、前記フロー７７は楕円形７６へと続き、そこで前記フロー７７は終了する。
【００２１】
ＮＶＭアレイ３０の外部の刺激を用いてフロー７７を開始してもよい。そのような外部刺激の一例はプロセッサ１２（図１を参照）であり、ＮＶＭ１４内で消去又はプログラムを開始する。プログラム／消去という用語は、前記フロー７７がＮＶＭ１４のプログラミング及び消去の両方に用いられ得ることを示すために使用されていることに留意されたい。したがって、前記保存／耐久設定部５０，５３は、菱形の決定部７２において、高い耐久性又は長期データ保存（保持力）のどちらが選択されるかを決定するプログラミング又は消去の間用いられる。
【００２２】
図５は、消去に対する図４の方法段階７５をフローチャートで示す。図５において、フローは段階８０から開始し、そこでは、適当なＮＶＭ部分が第１パラメータを有するパルスを用いての消去を試みられる。この例において、消去パルスのためのパラメータは、台形パルスのための特有の耐久性及び電圧である。前記パラメータは、パルスの形状等の他のもののためのパラメータでもあり得る。この例における部分４０及び４４に対し、図３に示されるように、これらのパラメータは保存／耐久設定部５０に記憶される。段階８０から、前記フローは段階８２へと続き、そこでは前記適当なＮＶＭ部分の各セルが読み取られ、実際の読み取り電流は、第１マージンレベルとして示される前記選択された確認レベルと比較される。「マージンレベル」と称される理由は、それがいくつかの選択されたマージンによって、プログラムされた状態と消去状態との間で判定することを要求される最小の量を超えることによる。前記第１マージンレベルはフロー７７（図４を参照）の段階７３又は段階７４のいずれかにおいて選択がなされた。
【００２３】
前記第１パラメータにおける消去パルスの適用後、前記ＮＶＭ部分が読み取られて、前記ＮＶＭ部分の消去されるべき全てのメモリセルが、少なくとも第１マージンにおいて消去されるか否か判定される。前記ＮＶＭ部分の各メモリセルが第１マージンをパスする場合には、前記ＮＶＭ部分は消去されるものとみなされ、別のＮＶＭ部分の消去が開始する。この方法７５の上述した例における前記ＮＶＭ部分の全ての検査において、検査段階にある前記ＮＶＭ部分のメモリセルの全てが特定のマージンレベルをパスすることによってのみ、パスが達成される。前記ＮＶＭの寿命の初期においては、一つのＮＶＭ部分がただ一度の前記消去パルスの適用後にパスするのが一般的である。
【００２４】
前記第１マージンレベルを用いても消去されるべき前記ＮＶＭ部分がパスしない場合には、許容された最大消去時間に対して比較される前記ＮＶＭ部分の消去に費やされた時間との間の関係について、段階８６の決定がなされる。段階８６は、一つのＮＶＭ部分が前記第１マージンレベルのパスに失敗した後、常に実行される。特定のＮＶＭ部分に対して前記消去時間が経過すると、前記ＮＶＭ部分は欠陥であるとみなされ、前記消去が他のＮＶＭ部分について継続するか、又はデバイス全体が機能しなくなったとみなされる。特定のＮＶＭ部分に対して前記消去時間が経過しなかった場合には、前記ＮＶＭ部分は段階９０で検査され、第２マージンレベルをパスするか否か調べられる。これは前記第１マージンレベルよりも低いマージンになる。前記ＮＶＭ部分がパスする場合には、段階９２のまた別の消去パルスが適用されるが、今回の第２パラメータは、前記第１パラメータの消去パルスと比較すると、好ましくは前記パルスの耐久性を高めるが、前記電圧、又は電圧及び耐久性の両方を増加し得る。当然に、前記第１パラメータを用いた消去パルスの適用後において、最大消去時間は経過していない。
【００２５】
前記第２パラメータにおいて新たな消去パルスが適用された後、前記ＮＶＭ部分は再び前記第１マージンレベルをパスするか否かについて検査される。パスする場合には、次のＮＶＭ部分の消去が開始する。パスしない場合には、前記ＮＶＭ部分が前記第２マージンレベルをパスするか否かについて検査される。前記ＮＶＭ部分は既にそのレベルをパスしているため、ここでもパスするものと予測される。前記ＮＶＭ部分は再び前記第２パラメータにおける前記消去パルスを受け取り、前記第１マージンレベルについて検査される。パスする場合には、他のＮＶＭ部分の消去が続く。失敗した場合には、前記第２パラメータにおける消去パルスを適用する手順が続き、前記第１マージンレベルにおけるパスについての検査が、前記ＮＶＭ部分が第１マージンレベルをパスするか、又は前記消去時間が経過するまで続く。
【００２６】
前記ＮＶＭ部分が前記第２マージンレベルをパスしない場合には、第３パラメータに関する前記ＮＶＭ部分の検査が実行される。前記ＮＶＭ部分が段階９４をパスする場合には、段階９６で第３パラメータにおいて前記消去パルスが適用され、好ましくは前記第３パラメータは、耐久性又は電圧又は両者のいずれかにおいて、前記第２パラメータにおける消去パルスよりも優れる。前記第３パラメータでの前記消去パルスの適用後、段階８２で第１マージンレベルについての検査とともに手順が再開し、上述したように、段階８４又は８６のいずれかへと続く。パスしない場合には、引き続く増強された消去パルスで、他のより低いマージンレベルにおいて検査が続く。この例において、前記レベルが満たされた時の対応するパルスを有する最終レベルが段階９８として示されている。したがって、前記ＮＶＭ部分が段階９８で最終マージンレベルをパスするとき、最終パラメータにおいて消去パルスが適用され、そのパラメータは前記ＮＶＭ部分が前記最終マージンレベルをパスしたときに用いられる。前記最終パラメータにおける消去パルスの適用後、段階８２で第１マージンレベルについての検査とともに手順が再開し、上述したように、段階８４又は８６のいずれかへと続く。前記ＮＶＭ部分が最終マージンレベルさえもパスできない場合には、前記消去パルスは最小レベルにおいて適用される。前記最小レベルの消去パルスは、方法７５において選択され得るあらゆる消去パルスの中で、最大の強度を有する消去パルスである。前記ＮＶＭ部分は失敗したものとみなされることが好ましい。なぜなら、特に耐久性の高い用途では、前記第１マージンレベルにおいて前記ＮＶＭ部分を消去された状態にすることは、たとえ非常に強い消去パルスを用いてもいくらかの有用性をもたらすからである。
【００２７】
図６に示されるのは、マージンレベル、プログラム／消去クロスオーバ、及びプログラムレベルのグラフである。前記プログラム／消去クロスオーバは、消去コンディションを指示するか、又はプログラムコンディションを指示するかを分ける読み取り電流である。これは、用いられるセンス増幅器によって設定される。前記第１マージンレベルは、一つのセルが所望のマージンを有するとみなされるところのレベルである。様々なマージンレベルの中でも、前記第１マージンレベルは所望の状態（この例においては消去状態）を示し、プログラム／消去クロスオーバとの間に最大の差を有する。前記差とは前記マージンである。前記第２マージンレベルは二番目に大きな差を有し、前記第３マージンレベルは三番目に大きな差を有する。前記第１、第２、第３マージンレベルのそれぞれの場合において、前記セルは消去されるが、消去におけるマージンの量は異なる。実際、それらは正のマージンを有する。一つの消去パルスは一つのセルを消去さえしないという結果をもたらし得るため、その読み取り電流とプログラム／消去クロスオーバとの間の差は負になる。したがって、それは消去されるように意図されているが、依然プログラム側に存在するため、負のマージンを有するものとみなされる。この例において、最終マージンレベルについて最後の状態が検査され、そのレベルは負のマージンを有するものとして示される。
【００２８】
図６の別の解釈は、前記第１マージンレベルが目標値であり、他のマージンレベルが前記目標値からの逸脱であるという見方である。したがって、前記第２マージンレベルは前記第３マージンレベルよりも前記目標値からの逸脱が少ない。したがって、前記最終マージンレベルは前記ＮＶＭ部分の検査に用いられるマージン値の目標レベルからの逸脱が最も大きい。したがって、引き続く消去パルスは前記目標値からのより大きな逸脱に対して、より大きな修正、この例においては強度の増加を有する。
【００２９】
検査された異なるレベルは四つであることが示されている。すなわち、第１、第２、第３、及び最終レベルであるが、前記最終マージンレベルと前記プログラム／消去レベルとの間、及び前記第３マージンレベルと前記プログラム／消去レベルとの間の領域で示されるように、更に多くすることができる。これらの検査は、最低の（最小の）マージンを有するセルのマージンを決定するための方法として優れている。その決定を行った後、最低であることが判明した前記マージンに適合させた消去パルスが適用される。これは、不必要に強い消去信号を適用することなく、消去を達成するのに要求される時間を削減する一つの方法である。ＮＶＭセルの性能の悪化は前記消去パルスの強度に関係する。本方法は、その精度がいくつのマージンが検査されたかに基づくという最悪のマージン情報を得る方法に備えるものである。この例において、四つは、前記決定を行うためにあまりにも多くの時間を要求することなく前記消去パルスを有益に適合させるのに適した数である。特に高度の解決が要求される場合には、他の同様の技術も有効であることが発見されるかもしれない。例えば、逐次近似が有効であることが発見されるかもしれない。
【００３０】
上述した例において、前記マージンレベルは、ＮＶＭセルからの読み取り電流と比較される基準電流である。高い耐久性のためのマージンレベルはより低い基準電流であり、一方、長期データ保持力のための前記マージンレベルはより高い基準電流である。高い耐久性及び長期データ保持力の両者のための基準電流の絶対レベルは、前記ＮＶＭ１４を実装するために用いられる特定の回路に依存する。
【００３１】
代替の実施形態は、前記マージンレベルを表すために、基準電流以外のものを用いてもよい。例えば、前記複数のマージンレベルは複数の基準電圧であってもよく、その中で一つのマージンレベルがＮＶＭセル電圧（例えば、トランジスタ閾値電圧）と比較される一つの基準電圧であってもよい。代替の実施形態は、前記マージンレベルを表すためのいかなる回路特性を用いてもよい。
【００３２】
前記の詳述において、本発明は特定の実施形態を参照しつつ、詳細に説明されている。しかし、請求項において説明されるように、本発明の範囲から逸脱することなく多様な変形及び変更を実施し得ることを当業者は理解するであろう。例えば、前記消去は強度において増加していくと説明されているが、強度の増加が要求されない状況もあり得る。したがって、本明細書及び図面は限定的な意味というよりも例示的な意味において認識されるべきであり、そのような変形のすべては本発明の範囲内に含まれるものと意図されている。
【００３３】
特定の実施形態に関して、利益、他の有利な点、及び問題の解決策が上述されている。しかしながら、これらの利益、有利な点、問題の解決策、及びあらゆる利益、有利な点、解決策を生じさせ又はより顕著にさせ得るあらゆる要素は、本請求項のいずれか若しくはすべてにおいて、重要な、必須の、又は不可欠な特徴又は要素として解釈されるものではない。ここで用いられる用語「を備える」、「を備えている」、又はこれらの用語の他の活用形は、非独占的な包含に及ぶように意図されており、例えば、要素のリストを構成する工程、方法、物品、又は装置はこれらの要素だけを含むのではなく、明示的に記載されていない他の要素や、そのような工程、方法、物品、又は装置に固有の他の要素を含んでもよい。
【図面の簡単な説明】
【００３４】
【図１】本発明の一実施形態による集積回路を示すブロック図。
【図２】本発明の一実施形態による図１のＮＶＭ１４を示すブロック図。
【図３】本発明の一実施形態による図２の保存／耐久制御回路３６，３７を示すブロック図。
【図４】ＮＶＭをプログラミング／消去する方法を示すフローチャート。
【図５】本発明の一実施形態によるＮＶＭにおける消去手順７５を実行する方法を示すフローチャート。
【図６】消去段階の結果生じる異なる状態、プログラム及び消去の間の決定ライン、及び典型的なプログラム状態を示すグラフ。
【図１】
2009530759.tif 000003
【図２】
2009530759.tif 000004
【図３】
2009530759.tif 000005
【図４】
2009530759.tif 000006
【図５】
2009530759.tif 000007
【図６】
2009530759.tif 000008
【国際調査報告】
2009530759.tif 000009