(57)【要約】【課題】製造プロセスのばらつきに起因した初期書き込み電圧のばらつきに対応できるようにする。【解決手段】フラッシュメモリ装置内にＲＯＭヒューズを設け、ワード線毎にトリミング処理を行い、初期書き込み電圧Ｖｐｇｍに必要な個数ｎの加算電圧ΔＶｐｇｍを加算したものを予め初期書き込み電圧ＶｐｇｍとしてＲＯＭヒューズ内に記憶する。書き込み処理時には、ＲＯＭヒューズから対応するワード線の初期書き込み電圧Ｖｐｇｍを読み出して設定することができる。【選択図】図７
2011065687.tif 000002
【特許請求の範囲】
【請求項１】
ビット線に接続された第１の選択ゲートトランジスタおよびソース線に接続された第２の選択ゲートトランジスタの間に電気的にデータを書き込み可能なメモリセルトランジスタを列方向に複数個直列接続した状態に構成されるメモリセルユニットと、
前記メモリセルユニットを前記列方向と交差する行方向に複数個並べてなるブロックと、
前記行方向に並ぶ複数の前記メモリセルトランジスタを共通に接続する複数本のワード線と、
前記ブロックを列方向に複数個並べて構成されるメモリセルアレイと、
前記メモリセルアレイの前記メモリセルトランジスタへのデータの書き込みに用いる初期書き込み電圧のデータを前記ワード線に対応させて記憶された不揮発性の記憶部と
を備えたことを特徴とする不揮発性半導体記憶装置。
【請求項２】
請求項１に記載の不揮発性半導体記憶装置において、
前記記憶部は、前記初期書き込み電圧を前記ワード線毎に対応すると共に前記ブロック毎にも対応したデータとして記憶されていることを特徴とする不揮発性半導体記憶装置。
【請求項３】
請求項１または２に記載の不揮発性半導体記憶装置において、
前記記憶部は、前記初期書き込み電圧を前記ブロック毎の奇数列のワード線群および偶数列のワード線群のそれぞれに対応するデータとして記憶されていることを特徴とする不揮発性半導体記憶装置。
【請求項４】
請求項１ないし３のいずれかに記載の不揮発性半導体記憶装置において、
前記記憶部は、前記初期書き込み電圧に加えて前記メモリセルトランジスタの書き込み時に選択したワード線以外の非選択ワード線に与える非選択電圧を前記ブロック毎に対応するデータとして記憶されていることを特徴とする不揮発性半導体記憶装置。
【請求項５】
請求項１ないし４のいずれかに記載の不揮発性半導体記憶装置において、
前記記憶部は、書き換え可能な不揮発性の記憶部として構成され、前記初期書き込み電圧は書き込み電圧の調整により変化したものを更新して記憶されることを特徴とする不揮発性半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電気的に書き換え可能なメモリセルを備えた不揮発性半導体記憶装置に関する。
【背景技術】
【０００２】
不揮発性半導体記憶装置としてＮＡＮＤ型フラッシュメモリ装置が知られている。このＮＡＮＤ型フラッシュメモリ装置においては、メモリセルへのデータの書き込み時に、選択セルに書き込み電圧Ｖｐｇｍを印加し、非選択セルにチャネル電位を昇圧するための中間電圧Ｖｐａｓｓを印加している。書き込み電圧Ｖｐｇｍと中間電圧Ｖｐａｓｓは、消去状態を維持したいメモリセルの閾値電圧が変化する現象つまり誤書き込みを防ぐように設定されている。また、メモリセルのデータ消去時には、基板に消去電圧Ｖｅｒａを印加することで行うが、この消去電圧Ｖｅｒａについても、過剰消去によるセルダメージを与えないように設定されている。また、メモリセルのデータ読み出し時には、読み出し対象セル以外のメモリセルに対して電荷の蓄積量にかかわらず十分にセルトランジスタがオン動作可能となるように読み出し電圧Ｖｒｅａｄが印加される。
【０００３】
従来、これらの電圧Ｖｐｇｍ、Ｖｐａｓｓ、Ｖｅｒａ、Ｖｒｅａｄは、チップの良品判別テストのときに最適な電圧になるように、チップ毎に調整（トリミング）されていて、メモリセル内のデータ領域にデータとして格納されている。メモリセルのデータの書き込み、消去、読み出しの際には、例えば、特許文献１、２に示されるように、チップ毎に記憶された電圧Ｖｐｇｍ、Ｖｐａｓｓ、Ｖｅｒａ、Ｖｒｅａｄの対応するデータを読み出して使用している。この場合、特許文献１のものでは、書き込み電圧Ｖｐｇｍを複数のブロックで平均化した初期書き込み電圧Ｖｐｇｍを用いてステップアップ書き込み方式に用いている。
【０００４】
しかし、近年のメモリセルの微細化の要求に対応して露光機の限界を超えた線幅寸法の加工技術が必要とされている。これに伴い加工時のプロセスばらつきにより、メモリセルの寸法やセル間のスペースにばらつきが生じ、寸法のばらつきに起因したメモリセルの閾値電圧のばらつきや、さらに、セル寸法が一定でもスペースがばらつくことで、セルトランジスタの拡散領域を形成する際の基板への不純物注入量がスペースに比例して変動するため、メモリセルの閾値電圧のばらつきが発生する要因となる。
【０００５】
また、上記した閾値電圧のばらつきの発生は、製造時のばらつき状態のみならず、使用時においても書き換え回数の増加に伴う閾値電圧の変動が発生することがある。このため、製造段階で予め適切な閾値電圧を設定しておいても、使用中に変化することに追随できないとデバイスとしての寿命が低下することになる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−２２６９３６号公報
【特許文献２】特開２００６−２８６１１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、同一チップ内のメモリセル間の加工ばらつきあるいは使用に伴う変動に対応して書き込み電圧を設定できるようにした不揮発性半導体記憶装置を提供することにある。
【課題を解決するための手段】
【０００８】
本発明の一態様の不揮発性半導体記憶装置は、ビット線に接続された第１の選択ゲートトランジスタおよびソース線に接続された第２の選択ゲートトランジスタの間に電気的にデータを書き込み可能なメモリセルトランジスタを列方向に複数個直列接続した状態に構成されるメモリセルユニットと、前記メモリセルユニットを前記列方向と交差する行方向に複数個並べてなるブロックと、前記行方向に並ぶ複数の前記メモリセルトランジスタを共通に接続する複数本のワード線と、前記ブロックを列方向に複数個並べて構成されるメモリセルアレイと、前記メモリセルアレイの前記メモリセルトランジスタへのデータの書き込みに用いる初期書き込み電圧のデータを前記ワード線に対応させて記憶された不揮発性の記憶部とを備えたところに特徴を有する。
【発明の効果】
【０００９】
本発明の一態様によれば、同一チップ内のメモリセル間のばらつきに対応した初期書き込み電圧を設定／変更できる。
【図面の簡単な説明】
【００１０】
【図１】本発明の第１の実施形態を示すＮＡＮＤ型フラッシュメモリ装置の概略的なシステム構成図
【図２】ＮＡＮＤ型フラッシュメモリ装置の概略的なブロック構成図
【図３】メモリセルアレイ領域の電気的構成図
【図４】メモリセルアレイ領域の模式的な平面図
【図５】図４中５−５線で示す部分の模式的な断面図
【図６】制御回路におけるワード線毎の初期Ｖｐｇｍ設定を行う場合のブロック構成図
【図７】初期書き込み電圧のトリミング処理のフローチャート
【図８】初期消去電圧のトリミング処理のフローチャート
【図９Ａ】本発明の第２の実施形態を示す初期書き込み電圧のトリミング処理のフローチャート（その１）
【図９Ｂ】初期書き込み電圧のトリミング処理のフローチャート（その２）
【図１０】本発明の第３の実施形態を示す書き込み電圧の変更処理のフローチャート
【図１１】消去電圧の変更処理のフローチャート
【図１２】（ａ）はフラッシュメモリ装置の初期状態の模式的断面図、（ｂ）は同じく劣化状態の模式的な断面図、（ｃ）は書き換え回数の増加に伴う閾値電圧の変動を示す図
【図１３】本発明の第４の実施形態を示す中間電圧のトリミング処理のフローチャート
【図１４】中間電圧の変更処理のフローチャート
【図１５】本発明の第５の実施形態を示す読み出し電圧のトリミング処理のフローチャート
【図１６】読み出し電圧の変更処理のフローチャート
【図１７】本発明の第６の実施形態を示す図２相当図
【発明を実施するための形態】
【００１１】
（第１の実施形態）
本発明の第１の実施形態について図１ないし図８を参照しながら説明する。尚、以下に参照する図面内の記載において、同一または類似の部分には同一又は類似の符号を付して表している。但し、図面は模式的なものであり、厚みと平面寸法との関係、各層の厚みの比率などは現実のものとは異なる。
【００１２】
図１は、不揮発性メモリシステムの一例を示すブロック図である。この図１において、不揮発性メモリシステム１は、不揮発性半導体記憶装置としてのＮＡＮＤ型フラッシュメモリ装置（以下、単にフラッシュメモリ装置と称する）２と、このフラッシュメモリ装置２を制御するコントローラ３とから構成されている。コントローラ３は、外部のホストコンピュータ４からの制御信号に基づいて動作するように構成され、フラッシュメモリ装置２にアクセスしてデータの読み出し、データの書き込みあるいはデータの消去を行う。
【００１３】
フラッシュメモリ装置２は、制御ピンと入出力ピンとを有している。制御ピンは、基本的にコントローラ３からの制御信号を受信するためのピンであり、入出力ピンは、基本的にコントローラ３とのデータの送受信、コントローラ３からのコマンドの受信、及びコントローラ３へのステータスの送信を行うためのピンである。
【００１４】
この実施形態では、制御ピンとしてチップイネーブルピン/ＣＥ（「/」は負論理を示し、図１、図２中ではＣＥの上にバーで示している；以下同じ）、アドレスラッチイネーブルピンＡＬＥ、コマンドラッチイネーブルピンＣＬＥ、ライトイネーブルピン/ＷＥ、リードイネーブルピン/ＲＥ、レディ／ビジーピン（「／」はand/orを示す）ＲＹ／/ＢＹ、ライトプロテクトピン/ＷＰがある。入出力ピンとしては、Ｉ／Ｏ１〜Ｉ／Ｏ８がある。これらの制御ピン及び入出力ピンは、コントローラ３に接続されている。
【００１５】
図２に示すように、フラッシュメモリ装置２は、メモリセルアレイＡｒを主として構成されており、その周辺に位置して、制御回路５、ロジック制御部６、Ｉ／Ｏ制御回路７、ＲＯＭヒューズ８、ステータスレジスタ９、アドレスレジスタ１０、コマンドレジスタ１１、高電圧発生回路１２、ロウアドレスバッファデコーダ１３、ロウアドレスデコーダ１４、カラムバッファ１５、カラムデコーダ１６、データレジスタ１７、センスアンプ１８などを搭載している。ＲＯＭヒューズ８は、記憶部として機能するもので、例えばメモリセルアレイＡｒの一部と同様の構造を有するメモリセルを別体で形成できる。フラッシュメモリ装置２の制御回路５は、電源投入時にＲＯＭヒューズ８の記憶情報を読み出しデータレジスタ１７に読み込む。
【００１６】
図３は、メモリセルアレイの一部の電気的構成を示しており、図４は、その平面構造を模式的に示している。図３に示すように、メモリセルアレイＡｒは、複数のブロックＢＬＫ０〜ＢＬＫｎから構成されており、各ブロックＢＬＫは複数のＮＡＮＤセルユニットＵＣにより構成されている。ＮＡＮＤセルユニットＵＣは、２個の選択ゲートトランジスタＳＴＤ、ＳＴＳと、これらの選択ゲートトランジスタＳＴＤ、ＳＴＳ間に位置して隣接するもの同士でソース／ドレイン領域を共用して直列接続された複数個（例えば３２個）のメモリセルトランジスタＭＴ（ＭＴ0〜ＭＴm-1；メモリセルに相当）を備えている。
【００１７】
選択ゲートトランジスタＳＴＤのそれぞれは、ドレインがビット線コンタクトＣＢを介して列方向（Ｙ方向）に延伸して形成されるビット線ＢＬ（ＢＬ0〜ＢＬn+1）に接続されている。また、選択ゲートトランジスタＳＴＳのそれぞれは、ソースがソース線コンタクトＣＳを介してソース線ＣＳＬに接続されている。
【００１８】
図４に示すように、複数のＮＡＮＤセルユニットＵＣは、列方向（Ｙ方向）に延びるＳＴＩ（Shallow Trench Isolation）構造の素子分離領域Ｓｂにより互いに分断された活性領域Ｓａに形成されている。メモリセルトランジスタＭＴのゲート電極ＭＧは、Ｙ方向に所定間隔を存して形成されＸ方向に延びるワード線ＷＬ（ＷＬ0〜ＷＬm-1）と、Ｙ方向に延びる活性領域Ｓａとの交差領域に位置して形成されている。
【００１９】
選択ゲートトランジスタＳＴＤのゲート電極ＳＧａは、Ｙ方向に延びる活性領域Ｓａと、Ｘ方向に延びる選択ゲート線ＳＧＤ（ＳＧＤｊ）との交差領域に位置して構成されている。選択ゲートトランジスタＳＴＳのゲート電極ＳＧｂは、Ｙ方向に延びる活性領域Ｓａと、Ｘ方向に延びる選択ゲート線ＳＧＳ（ＳＧＳｊ）との交差領域に位置して構成されている。
【００２０】
メモリセルトランジスタＭＴ（ＭＴ0〜ＭＴm-1）は、そのゲート電極ＭＧがＸ方向に延伸するワード線ＷＬ（ＷＬ0〜ＷＬm-1）で連結して共通接続されている。また、選択ゲートトランジスタＳＧＤは、そのゲート電極ＳＧａがＸ方向に延伸する選択ゲート線ＳＧＤで連結して共通接続されている。さらに、選択ゲートトランジスタＳＧＳは、そのゲート電極ＳＧｂがＸ方向に延伸する選択ゲート線ＳＧＳで連結して共通接続されている。
【００２１】
各メモリセルトランジスタＭＴ（ＭＴ0〜ＭＴm-1）は、電子注入量に応じた１または複数ビットのデータを記憶する。１本のワード線ＷＬ（ＷＬ0〜ＷＬm-1）により接続された１列分のメモリセルトランジスタＭＴは１ページを構成する。
【００２２】
図５は、活性領域の形成方向すなわちＹ方向に沿う断面構造を模式的に示している。この図５において、半導体基板（例えばｐ型のシリコン基板）２０の表層にはｎウェル２０ａが形成されており、このｎウェル２０ａのさらに表層にはｐウェル２０ｂが形成されている。ｐウェル２０ｂ上には、ゲート絶縁膜を介して選択ゲートトランジスタＳＴＤの選択ゲート電極ＳＧＤが形成されている。また、この選択ゲート電極ＳＧＤの形成領域からＹ方向に離間して、選択ゲートトランジスタＳＴＳの選択ゲート電極ＳＧＳがｐウェル領域２０ｂ上にゲート絶縁膜を介して形成されている。選択ゲート電極ＳＧＤ−ＳＧＳ間の半導体基板２０上には、ゲート絶縁膜２１を介して複数のメモリセルトランジスタＭＴのゲート電極ＭＧがＹ方向に並設されている。
【００２３】
ゲート電極ＭＧは、ゲート絶縁膜上に浮遊ゲート電極、電極間絶縁膜、制御ゲート電極が積層されることにより構成されている。浮遊ゲート電極および制御ゲート電極は、例えば多結晶シリコン膜により構成されている。また、制御ゲート電極は、行方向（Ｘ方向）に隣接するメモリセルトランジスタＭＴの制御ゲート電極と連続的に形成されており、ワード線ＷＬを構成している。
【００２４】
選択ゲートトランジスタＳＴＤの選択ゲート電極ＳＧＤおよび選択ゲートトランジスタＳＴＳの選択ゲート電極ＳＧＳは、メモリセルトランジスタＭＴのゲート電極ＭＧと層構成としては同様の構造をなしているが、電極間絶縁膜の平面中央に開口が構成されており、浮遊ゲート電極と制御ゲート電極とを電気的に短絡した状態に形成され、実質的に浮遊ゲート電極が存在しない構成とされている。
【００２５】
各ゲート電極ＭＧ−ＭＧ間、ゲート電極ＭＧと選択ゲート電極ＳＧＤとの間、ゲート電極ＭＧと選択ゲート電極ＳＧＳとの間のシリコン基板２０の表層には、ソース／ドレイン領域となる不純物拡散層２０ｃが構成されている。この不純物拡散層２０ｃは、隣り合うゲート電極ＭＧ−ＭＧ，ＭＧ−ＳＧＤ，ＭＧ−ＳＧＳ間で共用されている。
【００２６】
選択ゲート電極ＳＧＤ−ＳＧＤ間、およびＳＧＳ−ＳＧＳ間の半導体基板２０の表層にはそれぞれＬＤＤ（lightly doped drain）構造の不純物拡散層２０ｄが形成されている。選択ゲートＳＧＤ−ＳＧＤ間の不純物拡散層２０ｄ上には、ビット線コンタクトＣＢが形成され、その上部にＹ方向に沿って形成されたビット線ＢＬに接続されている。また、選択ゲートＳＧＳ−ＳＧＳ間の不純物拡散層２０ｄ上には、ソースコンタクトＣＳが構成され、その上部に形成されたソース線ＣＳＬに接続されている。
【００２７】
次に、本実施形態のフラッシュメモリ装置２における初期Ｖｐｇｍの調整（トリミング）について説明する。まず、図６に、本実施形態のＮＡＮＤ型フラッシュメモリ装置２におけるワード線ＷＬ毎に調整（トリミング）された初期Ｖｐｇｍのパラメータを与える調整回路１０１を示す。この調整回路１０１は、制御回路５の一部で構成され、制御回路５の制御部により制御される。なお、この調整回路１０１は、制御回路５とは別に構成されてもよい。
【００２８】
図示のとおり、この調整回路１０１は、Ｖｐｇｍインクリメントコマンドレジスタ１０２、トリミング用シフトレジスタ（ＴＳＲ）１０３、インクリメント回数累積レジスタ（ＡＲ）１０４、加算器（ＡＤＤＲ）１０５、ＷＬ０用〜ＷＬｍ用の初期Ｖｐｇｍパラメータレジスタ（ＰＲ０〜ＰＲｍ）１０６ａ、１０６ｂ、１０６ｃ、…、１０６ｍ及びレジスタデータ転送コマンドレジスタ１０７を含む。
【００２９】
Ｖｐｇｍインクリメントコマンドレジスタ１０２は、書き込み電圧Ｖｐｇｍをインクリメントするコマンドを発する。トリミング用シフトレジスタ（ＴＳＲ）１０３は、書き込み電圧Ｖｐｇｍを高く（インクリメント）する。インクリメント回数累積レジスタ（ＡＲ）１０４は、書き込み電圧Ｖｐｇｍをインクリメントした回数を累積する。加算器（ＡＤＤＲ）１０５は、初期書き込み電圧Ｖｐｇｍ０に平均化した値を加算する。ワード線ＷＬ毎にこの回路を保持するのは回路増につながるので、本実施形態１においては、この回路を一つだけ用意して、前記ＴＳＲからそれぞれのワード線ＷＬ毎の初期Ｖｐｇｍのパラメータレジスタ（ＰＲ０〜ＰＲｍ）へデータを転送するためのコマンドを用意し、初期Ｖｐｇｍを調整（トリミング）した後、調整（トリミング）した値を初期Ｖｐｇｍパラメータレジスタ（ＰＲ０〜ＰＲｍ）１０６ａ、１０６ｂ、１０６ｃ、…、１０６ｍの各々へ転送するようにしている。
【００３０】
初期Ｖｐｇｍパラメータレジスタ（ＰＲ０〜ＰＲｍ）１０６ａ、１０６ｂ、１０６ｃ、…、１０６ｍの各々には、アドレス０〜アドレスｍが割り当てられているので、レジスタデータ転送コマンドレジスタ１０７は、そのアドレスを設定（セット）し、データ転送コマンドを入力することで、各初期Ｖｐｇｍパラメータレジスタ（ＰＲ０〜ＰＲｍ）１０６ａ、１０６ｂ、１０６ｃ、…、１０６ｍへのデータの転送が可能となる。
【００３１】
上記構成において、メモリセルへのデータの書き込みや消去あるいは読み出しの各種処理に際して、予めＲＯＭヒューズ８には書き込み処理や消去処理に必要な初期書き込み電圧Ｖｐｇｍあるいは初期消去電圧Ｖｐａｓｓが記憶されている。これらの設定処理については後述する。まず、書き込み処理や消去処理の概略について説明する。
【００３２】
データ書き込みに際しては、初めに、予めブロックＢＬＫ内を一括してデータ消去する。これは、選択されたブロックＢＬＫの全ワード線ＷＬを低い電圧Ｖｓｓ（例えば０Ｖ）とし、セルアレイを収容するｐ型ウェルに高い正電圧Ｖｅｒａ（消去電圧、例えば２０Ｖ）を与えて、浮遊ゲートの電子をチャネルに放出させることにより行われる。これにより、ブロックＢＬＫ内の全セルのデータが「１」データになる。一度に消去する単位は、ブロックＢＬＫ以外にチップ全体で行うことも可能である。
【００３３】
続くデータ書き込み処理は、上述の一括データ消去後に、選択されたワード線ＷＬに接続される複数のメモリトランジスタに対して一括して行われる。この書き込みの単位は通常、「ページ」と定義されている。フラッシュメモリ装置では、通常、「０」データの書き込み後の閾値は、約０Ｖから約４Ｖの間に制御しなければならない。このため、書き込みベリファイが行われ、「０」書き込み不足のメモリセルトランジスタのみを検出し、「０」データ書き込み不足のメモリセルトランジスタに対してのみ再書き込みが行われるよう再書き込みデータを設定する（ビット毎ベリファイ）。「０」データ書き込み不足のメモリセルトランジスタは、選択された制御データを、例えば、０．５Ｖ（ベリファイ電圧）にして読み出すこと（ベリファイ読み出し）で検出される。すなわち、メモリセルトランジスタの閾値電圧が０Ｖに対してマージンを持って、０．５Ｖ以上になっていないと、選択メモリセルで電流が流れ、「０」データ書き込み不足と検出される。
【００３４】
書き込み動作と書き込みベリファイを繰り返しながらデータ書き込みをすることで個々のメモリセルトランジスタに対して、書き込み時間が最適化され、「０」データ書き込み後の閾値電圧は、約０Ｖから約４Ｖの間で制御される。
【００３５】
本実施形態におけるフラッシュメモリ装置２では、書き込み時の初期書き込み電圧Ｖｐｇｍがワード線ＷＬおよびブロックＢＬＫ毎に予めトリミングしてＲＯＭヒューズ８内に記憶されており、書き込み処理に際してこれを読み出して初期書き込み電圧Ｖｐｇｍとして使用するので、対象となるワード線ＷＬに適した条件で書き込み処理を迅速に行うことができる。
【００３６】
次に、上記した書き込み処理や消去処理において用いる初期書き込み電圧Ｖｐｇｍあるいは初期消去電圧Ｖｅｒａのトリミング処理について説明する。
＜書き込み電圧トリミング処理＞
図７は、ブロック毎およびワード線毎に初期書き込み電圧Ｖｐｇｍを調整（トリミング）する場合のフローチャートを示している。
【００３７】
この図７に示すように、まず、外部入力装置により入力されるデータにしたがって、制御回路５は、対象とするメモリセルに対する書き込みループ回数のパラメータ設定（セット）およびトリミングする対象ワード線ＷＬのアドレスの設定（セット）を行う（Ｓ１）。次に、外部入力装置を用いて、初期Ｖｐｇｍ（Ｖｐｇｍ０）のパラメータをトリミング用シフトレジスタ１０３に設定（セット）する（Ｓ２）。
【００３８】
次に、制御回路５は、対象となるメモリセルのデータの消去処理を行い（Ｓ３）、続いて消去処理を行ったメモリセルにデータの書き込み処理を行う（Ｓ４）。この後、書き込みを行ったメモリセルのベリファイ処理を行う（Ｓ５）。このベリファイ処理においてベリファイ結果がパス（Ｓ５でＹＥＳ）であればトリミング処理は終了するが、フェイルの場合（Ｓ５でＮＯ）には書き込み電圧のＶｐｇｍ０の値を所定電圧ΔＶｐｇｍだけインクリメントする（Ｓ６）。
【００３９】
なお、Ｓ６での書き込み電圧Ｖｐｇｍ０のインクリメントは、ベリファイ処理のフェイル（失敗）に応じて、Ｖｐｇｍインクリメントコマンドレジスタから書き込み電圧Ｖｐｇｍをインクリメントするコマンドが発せられることで、制御回路５内で自動的に行われる。すなわち、ΔＶｐｇｍをインクリメントした回数（Ｎ）が調整回路内のインクリメント回数累積レジスタ１０４に格納されている。加算器１０５は、トリミング用シフトレジスタ１０３から与えられる現在のＶｐｇｍ０にΔＶｐｇｍのインクリメント回数Ｎ倍した値を加算して新たなＶｐｇｍ０としてトリミング用シフトレジスタ１０３に戻す。この場合、インクリメントするΔＶｐｇｍの大きさは、たとえば０．２〜１．０Ｖの範囲で任意に設定される電圧値である。
【００４０】
この後、制御回路５は、再びＳ３に戻り、消去処理（Ｓ３）、書き込み処理（Ｓ４）およびベリファイ処理（Ｓ５、Ｓ６）を、ベリファイ処理がパスするまで繰り返し実施する。この結果、ベリファイ処理がパス（Ｓ５でＹＥＳ）したときには、下記（１）式に示され初期Ｖｐｇｍ（Ｖｐｇｍ０）が格納されている。
初期Ｖｐｇｍ＝Ｖｐｇｍ０＋Ｎ×ΔＶｐｇｍ          …（１）
続いて、制御回路５は、トリミング用シフトレジスタ１０３に格納されているＶｐｇｍ０を初期Ｖｐｇｍとし、レジスタデータ転送コマンドレジスタ１０７により設定される対応するワード線ＷＬのアドレスのパラメータレジスタ１０６ａ（１０６ｂ〜１０６ｍ）にデータ転送してパラメータをセットする（Ｓ７、Ｓ８）。
【００４１】
以下、上記した対象ワード線ＷＬに対する初期書込み電圧Ｖｐｇｍの設定を行うための過程Ｓ２〜Ｓ９を繰り返し、ブロック内のすべての対象ワード線ＷＬ0〜ＷＬm-1のトリミング処理を行い、対象ブロックのトリミング処理が終了すると（Ｓ１０）、ブロックをインクリメントして（Ｓ１１）すべてのブロックについて同様のトリミング処理を実施する（Ｓ１２）。
【００４２】
以上の処理により、全てのブロックの各ワード線の初期Ｖｐｇｍのパラメータが設定される。また、ワード線ＷＬ0用〜ＷＬm-1用の初期Ｖｐｇｍパラメータレジスタ１０６ａ〜１０６ｍのＷＬ0用〜ＷＬm-1用の初期Ｖｐｇｍパラメータは、外部入力機器により制御ピンや入出力ピン及びＩ/Ｏ制御回路７を介してＲＯＭヒューズ８に与えられて記憶される。ここで、ＲＯＭヒューズ８は、ワード線ＷＬ0用〜ＷＬm-1用の初期Ｖｐｇｍパラメータを記憶する所定の領域を有している。そして、制御回路５の調整回路は、ＲＯＭヒューズ８に記憶された初期Ｖｐｇｍパラメータ及びデータレジスタ１７の情報に基づいて、フラッシュメモリ装置２の各部の動作を制御してメモリセルアレイＡｒに対するデータの書き込み及び読み出しを行う。
【００４３】
＜消去電圧トリミング処理＞
前記した書き込み電圧Ｖｐｇｍのトリミング処理と同様にして、初期消去電圧Ｖｅｒａの調整（トリミング）についても行われる。図８は、フラッシュメモリ装置２のブロック毎の初期消去電圧である初期Ｖｅｒａ（Ｖｅｒａ０）の調整を行う場合の動作をフローチャートにより概略的に示している。
【００４４】
この場合、フラッシュメモリ装置における消去処理はブロック単位で行うことから、この消去電圧トリミング処理においては、書き込み電圧Ｖｐｇｍのトリミング処理の場合と異なり、対象ワード線ＷＬ毎ではなくブロックＢＬＫを単位として行われる。
【００４５】
この図８に示すように、まず、外部入力装置により入力されるデータにしたがって、制御回路５は、対象とするメモリセルに対する消去ループ回数のパラメータ設定（セット）およびトリミングするブロックＢＬＫの設定（セット）を行う（Ｓ２１）。次に、外部入力装置を用いて、初期Ｖｅｒａ（Ｖｅｒａ０）のパラメータをトリミング用シフトレジスタ１０３に設定（セット）する（Ｓ２２）。
【００４６】
次に、制御回路５は、対象となるブロックのメモリセルにデータの書き込み処理を行い（Ｓ２３）、続いて書き込み処理を行ったブロックのメモリセルにデータの消去処理を行う（Ｓ２４）。この後、消去処理を行ったブロックのメモリセルのベリファイ処理を行う（Ｓ２５）。ベリファイ結果がパス（Ｓ２５でＹＥＳ）であればトリミング処理は終了し、フェイルの場合（Ｓ２５でＮＯ）には消去電圧のＶｅｒａ０の値を所定電圧ΔＶｅｒａだけインクリメントする（Ｓ２６）。
【００４７】
なお、Ｓ２６での消去電圧Ｖｅｒａ０のインクリメントは、ベリファイ処理のフェイル（失敗）に応じて、Ｖｅｒａインクリメントコマンドレジスタから書き込み電圧Ｖｅｒａをインクリメントするコマンドが発せられることで、制御回路５内で自動的に行われる。すなわち、ΔＶｅｒａをインクリメントした回数（Ｎ）が調整回路内のインクリメント回数累積レジスタ１０４に格納されている。加算器１０５は、トリミング用シフトレジスタ１０３から与えられる現在のＶｅｒａ０にΔＶｅｒａのインクリメント回数Ｎ倍した値を加算して新たなＶｅｒａ０としてトリミング用シフトレジスタ１０３に戻す。
【００４８】
この後、制御回路５は、再びＳ２３に戻り、書き込み処理（Ｓ２３）、消去処理（Ｓ２４）およびベリファイ処理（Ｓ２５、Ｓ２６）を、ベリファイ処理がパスするまで繰り返し実施する。この結果、ベリファイ処理がパス（Ｓ２５でＹＥＳ）したときには、下記（２）式に示された初期Ｖｅｒａ（Ｖｅｒａ０）が格納されている。
初期Ｖｅｒａ＝Ｖｅｒａ０＋Ｎ×ΔＶｅｒａ          …（２）
続いて、制御回路５は、トリミング用シフトレジスタ１０３に格納されているＶｅｒａ０を初期Ｖｅｒａとし、レジスタデータ転送コマンドレジスタ１０７により設定される対応するブロックＢＬＫのパラメータレジスタにデータ転送してパラメータをセットする（Ｓ２７、Ｓ２８）。
【００４９】
以下、上記した対象のブロックＢＬＫに対する初期消去電圧Ｖｅｒａの設定が終了するとブロックをインクリメントして（Ｓ２９）、同様の処理を次のブロックＢＬＫについて実施し（Ｓ３０）、このようにして全てのブロックＢＬＫについてトリミング処理が実施される。
【００５０】
以上の処理により、全てのブロックの初期Ｖｅｒａのパラメータが設定される。また、設定された各ブロックの初期Ｖｅｒａは、ブロック用初期Ｖｅｒａパラメータレジスタに格納され、さらに、外部入力機器により制御ピンや入出力ピン及びＩ/Ｏ制御回路７を介してＲＯＭヒューズ８に与えられて記憶される。ここで、ＲＯＭヒューズ８は、ブロック用初期Ｖｅｒａパラメータを記憶する所定の領域を有している。そして、制御回路５の調整回路は、ＲＯＭヒューズ８に記憶された初期Ｖｅｒａパラメータ及びデータレジスタ１７の情報に基づいて、フラッシュメモリ装置２の各部の動作を制御してメモリセルアレイＡｒに対するデータの消去を行う。
【００５１】
このような第１の実施形態によれば、ワード線ＷＬおよびブロックＢＬＫ毎にトリミングを行って書き込み電圧Ｖｐｇｍを設定するので、チップ単位で書き込み電圧を設定する従来に比べて製造ばらつきに起因したチップ内特にブロック内の閾値電圧のばらつきにきめ細かく対応して適切な書き込み電圧を設定することができる。
【００５２】
（第２の実施形態）
図９Ａ、図９Ｂは、本発明の第２の実施形態を示すもので、前述実施形態と異なるところは、奇数番の群と偶数番の群とで処理を分割し、各群について初期書き込み電圧を設定するトリミング処理をするところにある。前述実施形態と同一部分については同一符号を付して説明を省略し、以下、異なる部分について説明を行う。
【００５３】
第２の実施形態においては、活性領域および素子分離領域の幅寸法を規定するラインアンドスペースのパターニングプロセスにおいて、例えば二重露光や、側壁転写プロセスなどを適用している場合などのものに対応する。このようなプロセスを経て形成されるフラッシュメモリ装置は、形成される活性領域のパターンが奇数列と偶数列とで異なる特性となる傾向にある。例えば、二重露光の場合は露光の合わせずれ、側壁転写プロセスの場合は加工時のプロセスばらつきにより、セルの寸法やセル間のスペースがばらつき、これによってセルの閾値が変化する。またセル寸法が一定でスペースがばらついた場合においてもセルトランジスタの拡散を形成するための基板への不純物注入量がスペースに比例するため、閾値が変化する要因となる。
【００５４】
＜書き込み電圧トリミング処理＞
図９Ａ、図９Ｂは、奇数番のワード線の群毎、偶数番のワード線の群毎に初期書き込み電圧Ｖｐｇｍを調整（トリミング）した場合のフローチャートを示している。この実施形態では、基本的には、第１の実施形態で実施した初期書込み電圧Ｖｐｇｍのトリミング処理と同じ流れであるが、ｍ本のワード線ＷＬ0〜ＷＬm-1のうち、奇数ワード線ＷＬ0、ＷＬ2、…、ＷＬm-2の群と偶数ワード線ＷＬ1、ＷＬ3、…、ＷＬm-1の群とを別々にして初期書込み電圧Ｖｐｇｍを設定するところが異なる。
【００５５】
すなわち、図９Ａに示すように、まず、外部入力装置により入力されるデータにしたがって、制御回路５は、対象とするメモリセルに対する書き込みループ回数のパラメータ設定（セット）およびトリミングする対象の奇数ワード線ＷＬ0、ＷＬ2、…、ＷＬm-2の群のアドレスの設定（セット）を行う（Ｓ３１）。次に、外部入力装置を用いて、初期Ｖｐｇｍ（Ｖｐｇｍ０）のパラメータをトリミング用シフトレジスタ１０３に設定（セット）する（Ｓ３２）。
【００５６】
次に、制御回路５は、対象となるメモリセルのデータの消去処理を行い（Ｓ３３）、続いて消去処理を行ったメモリセルにデータの書き込み処理を行う（Ｓ３４）。この後、書き込みを行ったメモリセルのベリファイ処理を行う（Ｓ３５）。このベリファイ処理においてベリファイ結果がパス（Ｓ５５でＹＥＳ）であればトリミング処理は終了するが、フェイルの場合（Ｓ３５でＮＯ）には書き込み電圧のＶｐｇｍ０の値を所定電圧ΔＶｐｇｍだけインクリメントする（Ｓ３６）。
【００５７】
なお、Ｓ３６での書き込み電圧Ｖｐｇｍ０のインクリメントは、ベリファイ処理のフェイル（失敗）に応じて、Ｖｐｇｍインクリメントコマンドレジスタから書き込み電圧Ｖｐｇｍをインクリメントするコマンドが発せられることで、制御回路５内で自動的に行われる。すなわち、ΔＶｐｇｍをインクリメントした回数（Ｎ）が調整回路内のインクリメント回数累積レジスタ１０４に格納されている。加算器１０５は、トリミング用シフトレジスタ１０３から与えられる現在のＶｐｇｍ０にΔＶｐｇｍのインクリメント回数Ｎ倍した値を加算して新たなＶｐｇｍ０としてトリミング用シフトレジスタ１０３に戻す。
【００５８】
この後、制御回路５は、再びＳ５３に戻り、消去処理（Ｓ３３）、書き込み処理（Ｓ３４）およびベリファイ処理（Ｓ３５、Ｓ３６）を、ベリファイ処理がパスするまで繰り返し実施する。この結果、ベリファイ処理がパス（Ｓ３５でＹＥＳ）したときには、前述した（１）式の初期Ｖｐｇｍ（Ｖｐｇｍ０）がトリミング用シフトレジスタ１０３に格納されている。
【００５９】
次に、制御回路５は、対象の奇数ワード線をインクリメントして（Ｓ３７）、全ての奇数ワード線ＷＬ0、ＷＬ2、…、ＷＬm-2の群のトリミングが終了するまで（Ｓ３８）上記したＳ３２〜Ｓ３７を繰り返し実行する。なお、この実施形態では、奇数ワード線、偶数ワード線の各群の単位でトリミングを行うので、それぞれのワード線ＷＬの本数およびインクリメント回数の累積値を記憶できるようにしている。
【００６０】
制御回路５は、すべての奇数ワード線ＷＬ0、ＷＬ2、…、ＷＬm-2の群のトリミングが終了すると（Ｓ３８でＹＥＳ）、トリミングを行った奇数ワード線ＷＬ0、ＷＬ2、…、ＷＬm-2の群の本数とインクリメント回数の累積値から、奇数ワード線一本あたりのインクリメント回数として平均加算回数Ｎａｖｅを算出する（Ｓ３９）。
【００６１】
続いて、制御回路５は、次式（３）にしたがって、インクリメントした所定電圧ΔＶｐｇｍと上記算出した平均加算回数Ｎａｖｅを乗じた値を初期Ｖｐｇｍ（Ｖｐｇｍ０）に加算して奇数初期Ｖｐｇｍ（Ｅ）を算出する（Ｓ４０）。
Ｖｐｇｍ（Ｅ）＝Ｖｐｇｍ０＋Ｎａｖｅ×ΔＶｐｇｍ    …（３）
次に、制御回路５は、トリミングした奇数ワード線ＷＬ0、ＷＬ2、…、ＷＬm-2の群の初期奇数Ｖｐｇｍ（Ｅ）をパラメータレジスタにデータ転送してパラメータをセットする（Ｓ４１）。
【００６２】
ブロック内の奇数ワード線ＷＬ0、ＷＬ2、…、ＷＬm-2の群のトリミングが終了して奇数初期ＶｐｇｍＥがパラメータとしてセットされると、制御回路５は、次に図９Ｂに従って、ブロック内の偶数ワード線ＷＬ1、ＷＬ3、…、ＷＬm-1の群について、奇数ワード線の場合と同様のトリミング処理（Ｓ４２〜Ｓ５２）を行う。
【００６３】
ブロック内の偶数ワード線ＷＬ1、ＷＬ3、…、ＷＬm-1の群のすべてについてトリミング処理が終了すると（Ｓ４９でＹＥＳ）、制御回路５は、前述同様にしてトリミングを行った偶数ワード線ＷＬ1、ＷＬ3、…、ＷＬm-1の群の本数とインクリメント回数の累積値から、偶数ワード線一本あたりのインクリメント回数として平均加算回数Ｎａｖｅを算出する（Ｓ５０）。
【００６４】
続いて、制御回路５は、次式（４）にしたがって、インクリメントした所定電圧ΔＶｐｇｍと上記算出した平均加算回数Ｎａｖｅを乗じた値を初期Ｖｐｇｍ（Ｖｐｇｍ０）に加算して偶数初期Ｖｐｇｍ（Ｏ）を算出する（Ｓ５１）。
Ｖｐｇｍ（Ｏ）＝Ｖｐｇｍ０＋Ｎａｖｅ×ΔＶｐｇｍ    …（４）
次に、制御回路５は、トリミングした偶数ワード線ＷＬ1、ＷＬ3、…、ＷＬm-1の群の偶数初期Ｖｐｇｍ（Ｏ）をパラメータレジスタにデータ転送してパラメータをセットする（Ｓ５２）。
【００６５】
この後、制御回路５は、ブロックをインクリメントし（Ｓ５３）、上述と同様にして奇数ワード線ＷＬ0、ＷＬ2、…、ＷＬm-2の群および偶数ワード線ＷＬ1、ＷＬ3、…、ＷＬm-1の群のトリミング処理を実施する（Ｓ３１〜Ｓ５４）。すべてのブロックについてトリミング処理が終了すると（Ｓ５４でＹＥＳ）、トリミング処理を終了する。
【００６６】
以上の処理により、全てのブロックについて、それぞれ奇数ワード線ＷＬ0、ＷＬ2、…、ＷＬm-2の群の奇数初期Ｖｐｇｍ（Ｅ）、偶数ワード線ＷＬ1、ＷＬ3、…、ＷＬm-1の群の偶数初期Ｖｐｇｍ（Ｏ）のパラメータが設定される。また、これら奇数ワード線ＷＬ0、ＷＬ2、…、ＷＬm-2の群の奇数初期Ｖｐｇｍ（Ｅ）、偶数ワード線ＷＬ1、ＷＬ3、…、ＷＬm-1の群の偶数初期Ｖｐｇｍ（Ｏ）のパラメータは、外部入力機器により制御ピンや入出力ピン及びＩ/Ｏ制御回路７を介してＲＯＭヒューズ８に与えられて記憶される。
【００６７】
なお、上記したような奇数ワード線ＷＬ0、ＷＬ2、…、ＷＬm-2の群に対応する奇数初期Ｖｐｇｍ（Ｅ）、偶数ワード線ＷＬ1、ＷＬ3、…、ＷＬm-1の群に対応する偶数初期Ｖｐｇｍ（Ｏ）のパラメータ設定については、書き込み処理について行ったものであり、消去電圧トリミングはワード線ＷＬ毎に行うことができないため、初期消去電圧の設定については、第１の実施形態と同様にブロックＢＬＫ毎にトリミング値を設定する。
【００６８】
このような第２の実施形態によれば、初期書き込み電圧として各ブロック内の奇数ワード線ＷＬ0、ＷＬ2、…、ＷＬm-2の群に対応して１つの奇数初期Ｖｐｇｍ（Ｅ）、偶数ワード線ＷＬ1、ＷＬ3、…、ＷＬm-1の群に対応して１つの偶数初期Ｖｐｇｍ（Ｏ）のパラメータ設定を設定するので、製造プロセスの露光技術に起因してワード線ＷＬが１本置きに類似した特性が現れるような場合に、必要且つ最小限のＲＯＭヒューズ８のメモリ領域を利用して適切なトリミング処理を行うことができる。
【００６９】
（第３の実施形態）
図１０ないし図１２は、本発明の第３の実施形態を示すもので、前述実施形態と異なるところは、上記した各実施形態でトリミング処理をして得られた初期Ｖｐｇｍあるいは初期Ｖｅｒａなどについて、これらが使用に伴い実際の特性とずれてきた場合に対応して適切なパラメータの設定を行えるようにしたものである。以下、前述実施形態と同一部分については同一符号を付して説明を省略し、異なる部分について説明を行う。
【００７０】
前述したように、フラッシュメモリ装置では、微細化に伴う問題点として、製造プロセスによるばらつきの発生に加えて、使用に伴いメモリセルトランジスタの信頼性が低下する点がある。これは、フラッシュメモリ装置２のメモリセルトランジスタは書き込み／消去を繰り返すことによってゲート絶縁膜や電極間絶縁膜にダメージが入り、そのダメージ部分に電子がトラップされる現象がある。このような現象が起こると見かけの閾値電圧が上がって見えることになる。
【００７１】
図１２（ａ）〜（ｃ）はフラッシュメモリ装置２が劣化するメカニズムを概略的に説明している。図１２（ａ）、（ｂ）には、メモリセルトランジスタＭＴのゲート電極ＭＧの概略的な断面構成を示しており、シリコン基板ｓｕｂ上に、ゲート絶縁膜Ｄ１、浮遊ゲート電極ＦＧ、電極間絶縁膜Ｄ２および制御ゲート電極ＣＧが順次積層形成された構成である。
【００７２】
これらの構成において、ＮＡＮＤ型フラッシュメモリ装置では、初期状態を示す図１２（ａ）に対して、メモリセルへの書き込み処理を繰り返した使用状態を示す図１２（ｂ）のように、ゲート絶縁膜Ｄ１及び電極間絶縁膜Ｄ２中に電子が通過せず、トラップされるようになることを示している（図中「ｅ」を丸で囲ったマークとしてトラップされた電子を示している）。
【００７３】
また、ゲート絶縁膜や電極間絶縁膜にトラップされた電子は抜けやすい状態であるので、このようなトラップサイトを通じて電子が行き来しやすくなり、この結果リーク電流の増大が発生する。さらに、書き込みサイクル数や消去サイクル数が増加することに伴って、上記したような電子のトラップが発生すると、図１２（ｃ）に示すように、見かけ上の閾値電圧Ｖｔｈは上がって見えるだけでなく、ゲート絶縁膜Ｄ１や電極間絶縁膜Ｄ２を電子が通過しにくくなる。これによって、さらに書き込み処理や、消去処理が設定した閾値電圧では実施しにくくなる現象が発生するため書き込み、消去のループ回数が増加する。
【００７４】
本実施形態においては、このような場合に対応して初期書き込み電圧Ｖｐｇｍや初期消去電圧Ｖｅｒａを更新する処理を実施する。以下にその更新処理について説明する。
＜書き込み電圧更新処理＞
図１０は本実施形態における初期書き込み電圧の更新の手法を示している。まず、書き込み処理のトリミング処理では、第１の実施形態あるいは第２の実施形態で示したような手順で実行する（Ｓ６０）。書き込み処理は、ステップアップ書き込みを行いベリファイ動作によりセルが所望の閾値に達していればループ終了する。ここで初期書き込み電圧は一定であり、前述のようにセルが劣化すると書き込みループ回数ｎｐが増加する。
【００７５】
次に、ＮＡＮＤセルの書き換え回数Ｎ、書き込みループ数ｎｐをモニタし、レジスタに記録する（Ｓ６１）。記録したデータのうち、書き換え回数Ｎが所定値Ｎｒ以上であるか否かを判定する（Ｓ６２）とともに、ループ回数ｎｐが前回のループ回数ｎｐｉよりも大きいか否かを判定する（Ｓ６３）。この２つの判定処理Ｓ６２、Ｓ６３において、いずれもＮＯの場合、つまり書き換え回数Ｎが所定値Ｎｒ未満で、書き込みループ回数ｎｐが前回のループ回数ｎｐｉ以下である場合には、初期Ｖｐｇｍを変更することなく、対象ワード線ＷＬをインクリメントし（Ｓ６６）、全てのワード線ＷＬの処理が終了するまで（Ｓ６７）、Ｓ６１〜Ｓ６７を繰り返す。
【００７６】
一方、書き換え回数Ｎが所定値Ｎｒ以上であり（Ｓ６２でＹＥＳ）、且つ書き込みループ回数ｎｐが前回の値ｎｐｉよりも大きい場合（Ｓ６３でＹＥＳ）には、初期Ｖｐｇｍを書き換える処理を行う（Ｓ６４）。具体的には、次式（５）で示すように、初期Ｖｐｇｍの値Ｖｐｇｍ０に実際に加算された回数（ｎｐ−ｎｐｉ）だけΔＶｐｇｍを加算して得られた書き込み電圧Ｖｐｇｍ０を新たな初期Ｖｐｇｍとし、また、ループ回数ｎｐを新たな初期ループ回数ｎｐｉとして更新する（Ｓ６４）。
Ｖｐｇｍ０＝Ｖｐｇｍ０＋ΔＶｐｇｍ×（ｎｐ−ｎｐｉ）…（５）
【００７７】
なお、初期Ｖｐｇｍの更新処理に際しては、第１の実施形態に適用する場合であればそれぞれのブロックＢＬＫのワード線ＷＬ毎にループ数の増加をモニタする。また、第２の実施形態に適用する場合であればループ回数ｎｐの増加はワード線ＷＬの偶数／奇数およびブロックＢＬＫの偶数／奇数の４つに分類し、それぞれにカウントされたループ回数ｎｐの増加を平均化したものをモニタしていけばよい。
【００７８】
この後、更新したワード線ＷＬの初期Ｖｐｇｍパラメータを初期Ｖｐｇｍとしてレジスタにデータ転送してセットする（Ｓ６５）。さらに、ブロック内の全てのワード線ＷＬの処理が終了すると、対象ブロックをインクリメントして次のブロックに変更し（Ｓ６８）、全てのブロックＢＬＫで処理が終了するまで（Ｓ６９でＹＥＳ）、ブロック単位で上記したステップＳ６１〜Ｓ６９の処理を繰り返す。そして、全てのブロック内のワード線ＷＬについて上記した処理が終了すると（Ｓ６９でＹＥＳ）、書き換え回数Ｎをリセットし（Ｓ７０）、全体の処理を終了する。
【００７９】
上記した初期Ｖｐｇｍの更新処理のタイミングは、製品のセルの信頼性に合わせて適宜に設定されればよい。例えば書き換え回数Ｎを記録して一定の書き換え回数毎に行っても良いし、ループ数ｎｐの増加をモニタしておき、一定の回数増加があった時に初期値を逐次更新させても良い。
【００８０】
＜消去電圧更新処理＞
次に、図１１を参照して消去処理におけるパラメータの更新処理について説明する。
書き込み処理の場合と同様にして、消去処理のトリミングを第１の実施形態あるいは第２の実施形態で示したような手順で実行する（Ｓ８０）。消去処理では、Ｖｅｒａ電圧は一定であるが消去ベリファイ後にセルの閾値電圧が０Ｖ以下に達していれば消去のループが終了する。ここで初期消去電圧は一定であり、セルが劣化すると消去ループ回数ｎｅが増加する。
【００８１】
次に、ＮＡＮＤセルの書き換え回数Ｎ、消去ループ数ｎｅをモニタし、レジスタに記録する（Ｓ８１）。記録したデータのうち、書き換え回数Ｎが所定値Ｎｒ以上であるか否かを判定する（Ｓ８２）とともに、消去ループ回数ｎｅが前回の消去ループ回数ｎｅｉよりも大きいか否かを判定する（Ｓ８３）。この２つの判定処理Ｓ８２、Ｓ８３において、いずれもＮＯの場合、つまり書き換え回数Ｎが所定値Ｎｒ未満で、消去ループ回数ｎｅが前回のループ回数ｎｅｉ以下である場合には、初期Ｖｅｒａを変更することなく、次のブロックに移行し（Ｓ８６）、全てのブロックＢＬＫの処理が終了するまで（Ｓ８７）、Ｓ８１〜Ｓ８７を繰り返す。
【００８２】
一方、書き換え回数Ｎが所定値Ｎｒ以上であり（Ｓ８２でＹＥＳ）、且つ消去ループ回数ｎｅが前回の値ｎｅｉよりも大きい場合（Ｓ８３でＹＥＳ）には、初期Ｖｅｒａを書き換える処理を行う（Ｓ８４）。具体的には、次式（６）で示すように、初期Ｖｅｒａの値Ｖｅｒａ０に実際に加算された回数（ｎｅ−ｎｅｉ）だけΔＶｅｒａを加算して得られた消去電圧Ｖｅｒａ０を新たな初期Ｖｅｒａとし、また、ループ回数ｎｅを新たな初期ループ回数ｎｅｉとして更新する（Ｓ８４）。
Ｖｅｒａ０＝Ｖｅｒａ０＋ΔＶｅｒａ×（ｎｅ−ｎｅｉ）…（６）
なお、初期Ｖｅｒａの更新処理は、消去処理がブロック単位で行われることから、第１の実施形態および第２の実施形態のいずれに適用した場合も同じ処理となる。
【００８３】
この後、更新したブロックＢＬＫの初期Ｖｅｒａパラメータを初期Ｖｅｒａとしてレジスタにデータ転送してセットする（Ｓ８５）。続いて、対象ブロックをインクリメントして次のブロックに変更し（Ｓ８６）、全てのブロックＢＬＫで処理が終了すると（Ｓ８７でＹＥＳ）、書き換え回数Ｎをリセットし（Ｓ８８）、全体の処理を終了する。
【００８４】
上記した初期Ｖｅｒａの更新処理のタイミングについても、初期Ｖｐｇｍと同様のタイミングに設定して実施することができる。
このように、本実施形態においては、書き込みループ回数ｎｐあるいは消去ループ回数ｎｅの増加をパラメータとして記憶しておき、セルの劣化が始まった際の初期Ｖｐｇｍあるいは初期Ｖｅｒａを更新することで、使用に伴うセルの特性劣化にも追随して書き込みの処理を確実に行うことができるようにすることができる。
【００８５】
（第４の実施形態）
図１３および図１４は本発明の第４の実施形態を示すもので、第１および第２の実施形態と異なるところは、ワード線ＷＬ及びブロックＢＬＫ毎の初期Ｖｐｇｍ、初期Ｖｅｒａのトリミング処理を行っているのに対して、書き込み処理時に非選択ワード線ＷＬに印加される電圧Ｖｐａｓｓについてもワード線ＷＬ及びブロックＢＬＫ毎に変化させるようにしたところである。
【００８６】
電圧Ｖｐａｓｓは、中間電圧として設定されるもので、次のような理由で設けられている。フラッシュメモリ装置２にデータを書き込む場合には、チャネルの電圧を低く保ち、制御ゲートにＶｐｇｍが印加されたときに、浮遊ゲート下のゲート絶縁膜に大きな電界がかかるようにする。一方、書き込みを防止する場合には、チャネル電圧を昇圧してゲート絶縁膜に掛かる電界を下げ、浮遊ゲートへの電子注入を禁止する。このとき、チャネル電圧の昇圧が不十分であると、電子の注入が起こるため「１」書き込みメモリトランジスタでも閾値電圧が変動してしまう。この現象は、「誤書き込み」と呼ばれている。
【００８７】
このため、チャネルへの昇圧は書き込みを行わない非選択メモリトランジスタに対し、中間電圧Ｖｐａｓｓを印加することによって誤書き込みの防止を行うようにしている。この場合、Ｖｐａｓｓが高ければチャネルを十分に昇圧することが出来るが、過剰に高い場合にはＶｐａｓｓにより弱い書き込みが発生してしまう。したがって、フラッシュメモリ装置２の書き込み動作を確実に行うためには、誤書き込みによる閾値変動で誤動作を引き起こさないように、Ｖｐａｓｓを規格範囲内に抑える必要がある。
【００８８】
一方、前述したようにプロセスのばらつきの影響をうけてワード線ＷＬの寸法及びスペースにはバラツキが生じるためワード線ＷＬに対し同じＶｐａｓｓを印加してもチャネルの昇圧具合が異なってくるため、第１の実施形態で行っている書き込みのトリミング動作を利用してワード線ＷＬ毎に初期Ｖｐａｓｓを設定することが好ましい。
【００８９】
この場合、書き込みが速いワード線ＷＬは同じＶｐａｓｓを印加した場合のチャネル昇圧も高いのでＶｐａｓｓは低くてかまわない。一方で書き込みの遅いワード線ＷＬでは同じ電圧を印加した場合のチャネルの昇圧も低いので同じチャネルの昇圧を確保するためにはＶｐａｓｓは高く設定する必要がある。以上の点から、第１の実施形態で用いている書き込み時のトリミング処理を利用してＶｐａｓｓ電圧を設定することが可能である。
【００９０】
＜中間電圧トリミング処理＞
具体的な手順としては、図１３に示しているように、書き込み電圧Ｖｐｇｍのトリミングの際に記録された加算個数Ｎを利用している。すなわち、式（７）で示すように、中間電圧の設定値Ｖｐａｓｓ０に加算値（Ｎ×ΔＶｐａｓｓ）を足したものを、新たな対象ブロックＢＬＫの対象ＷＬの初期Ｖｐａｓｓとして、パラメータに設定（セット）する（Ｓ１０１）。
初期Ｖｐａｓｓ＝Ｖｐａｓｓ０＋Ｎ×ΔＶｐａｓｓ    …（７）
この場合、初期書き込み電圧Ｖｐａｓｓの設定が第１の実施形態に従う場合は、ワード線ＷＬ及びブロックＢＬＫ毎に設定を行う。また、第２の実施形態に従う場合は、奇数ワード線ＷＬ、偶数ワード線ＷＬ及びブロックＢＬＫ毎に設定する。
【００９１】
次に、トリミングしたワード線ＷＬの初期中間電圧Ｖｐａｓｓをパラメータレジスタへデータ転送する（Ｓ１０２）。以下、対象ワード線ＷＬをインクリメントし（Ｓ１０３）、全てのワード線ＷＬで処理を終了する（Ｓ１０４でＹＥＳ）までステップＳ１０１〜Ｓ１０４の処理を繰り返す。そして、全てのワード線ＷＬで処理が終了すると（Ｓ１０４でＹＥＳ）、対象ブロックＢＬＫを変更し（Ｓ１０５）、ステップＳ１０１〜Ｓ１０６の処理を繰り返す。そして、全てのブロックＢＬＫで処理が終了すると（Ｓ１０６でＹＥＳ）トリミング処理を終了する。
【００９２】
＜中間電圧更新処理＞
図１４は本実施形態における中間電圧トリミング処理の更新の手法を示している。この更新処理では、書き込み処理の更新処理が行われるタイミングで行われる。書き込み処理のトリミング処理では、第１の実施形態あるいは第２の実施形態で示したような手順で実行される。この書き込み処理は、ステップアップ書き込みを行いベリファイ動作によりセルが所望の閾値に達していればループ終了する。ここで初期書き込み電圧は一定であり、前述のようにセルが劣化すると書き込みループ回数ｎｐが増加する。
【００９３】
上記したように、書き込み処理の更新処理が行われると、ＮＡＮＤセルの書き換え回数Ｎ、書き込みループ数ｎｐをモニタし、レジスタに記録する（Ｓ１１１）。続いて、記録したデータのうち、書き換え回数Ｎが所定値Ｎｒ以上であるか否かを判定する（Ｓ１１２）とともに、ループ回数ｎｐが前回のループ回数ｎｐｉよりも大きいか否かを判定する（Ｓ１１３）。この２つの判定処理Ｓ１１２、Ｓ１１３において、いずれもＮＯの場合、つまり書き換え回数Ｎが所定値Ｎｒ未満で、書き込みループ回数ｎｐが前回のループ回数ｎｐｉ以下である場合には、初期Ｖｐａｓｓを変更することなく、対象ワード線ＷＬをインクリメントし（Ｓ１１６）、全てのワード線ＷＬの処理が終了するまで（Ｓ１１７）、Ｓ１１１〜Ｓ１１７を繰り返す。
【００９４】
一方、書き換え回数Ｎが所定値Ｎｒ以上であり（Ｓ１１２でＹＥＳ）、且つ書き込みループ回数ｎｐが前回の値ｎｐｉよりも大きい場合（Ｓ１１３でＹＥＳ）には、初期Ｖｐａｓｓを書き換える処理を行う（Ｓ１１４）。具体的には、次式（８）で示すように、初期Ｖｐａｓｓの値Ｖｐａｓｓ０に実際に加算された回数（ｎｐ−ｎｐｉ）だけΔＶｐａｓｓを加算して得られた書き込み電圧Ｖｐａｓｓ０を新たな初期Ｖｐａｓｓとし、また、ループ回数ｎｐを新たな初期ループ回数ｎｐｉとして更新する（Ｓ１１４）。
Ｖｐａｓｓ０＝Ｖｐａｓｓ０＋ΔＶｐａｓｓ×（ｎｐ−ｎｐｉ）…（８）
なお、初期Ｖｐａｓｓの更新処理についても、書き込み処理の更新処理と同様に、第１の実施形態に適用する場合であればそれぞれのブロックＢＬＫのワード線ＷＬ毎にループ数の増加をモニタする。また、第２の実施形態に適用する場合であればループ回数ｎｐの増加はワード線ＷＬの偶数／奇数およびブロックＢＬＫの偶数／奇数の４つに分類し、それぞれにカウントされたループ回数ｎｐの増加を平均化したものをモニタする。
【００９５】
この後、更新したワード線ＷＬの初期Ｖｐａｓｓパラメータを初期Ｖｐａｓｓとしてレジスタにデータ転送してセットする（Ｓ１１５）。さらに、ブロック内の全てのワード線ＷＬの処理が終了すると、対象ブロックをインクリメントして次のブロックに変更し（Ｓ１１８）、全てのブロックＢＬＫで処理が終了するまで（Ｓ１１９でＹＥＳ）、ブロック単位で上記したステップＳ１１１〜Ｓ１１９の処理を繰り返す。そして、全てのブロック内のワード線ＷＬについて上記した処理が終了すると（Ｓ１１９でＹＥＳ）、書き換え回数Ｎをリセットし（Ｓ１２０）、全体の処理を終了する。
【００９６】
このような第４の実施形態によれば、書き込み処理時に非選択ワード線ＷＬに印加される電圧Ｖｐａｓｓについてもワード線ＷＬ及びブロックＢＬＫ毎に変化させるとともに、更新処理を行うようにしたので、誤書き込みによる閾値変動で誤動作を引き起こさないように、Ｖｐａｓｓを規格範囲内に抑えることができ、これによってフラッシュメモリ装置２の書き込み動作を確実に行うことができる。
【００９７】
（第５の実施形態）
図１５及び図１６は本発明の第５の実施形態を示すもので、この実施形態においては、第１および第２の実施形態で行っているワード線ＷＬ及びブロックＢＬＫ毎の初期Ｖｐｇｍ、初期Ｖｅｒａの設定と同様に、読み出し時に非読み出し対象ワード線ＷＬに印加される電圧（Ｖｒｅａｄ）もワード線ＷＬ及びブロックＢＬＫ毎に変化させるというものである。
【００９８】
メモリセルの読み出し動作においては読み出しの対象セル以外のセルに対してはメモリセルにどれだけ電子が貯まっていても十分にセルトランジスタがオンできる読み出し電圧Ｖｒｅａｄが印加されており、セルに対して誤書き込みが生じないように設定される。
【００９９】
前述したようにプロセスのばらつきの影響を受けてワード線ＷＬの寸法及びスペースにはバラツキが生じるためワード線ＷＬに対し同じＶｒｅａｄを印加しても誤書き込みに対するマージンが異なってくるため、第１の実施形態で行っている書き込みのトリミング動作を利用してワード線ＷＬ及びブロックＢＬＫ毎に初期Ｖｒｅａｄを設定することでセルに対する誤書き込みの発生を防止しようというものである。
【０１００】
この場合、書き込みの速いワード線ＷＬは同じ読み出し電圧Ｖｒｅａｄを印加した場合の誤書き込みに対するマージンが低いのでＶｒｅａｄは低く設定する必要がある。また、書き込みの悪いワード線ＷＬでは同じ電圧を印加した場合の誤書き込みが生じにくくなるが、一方で十分にトランジスタがオンしない可能性があるため読み出し電圧Ｖｒｅａｄは高く設定する必要がある。ここでは、第４の実施形態のＶｐａｓｓの設定と同様に第１の実施形態で用いている書き込み時のトリミング動作を利用して読み出し電圧Ｖｒｅａｄを設定することが可能である。
【０１０１】
具体的な手順としては、図１５に読み出し電圧Ｖｒｅａｄの初期トリミング処理を示し、図１６に読み出し電圧Ｖｒｅａｄの更新処理を示している。これら読み出し電圧Ｖｒｅａｄの初期トリミング処理および更新処理については、第４の実施形態において図１３および図１４に示した中間電圧Ｖｐａｓｓの初期トリミング処理および更新処理の手順と同様であるので、以下、対応関係を概略的に示すとともに異なる点について簡単に説明する。
【０１０２】
＜読み出し電圧トリミング処理＞
図１５の読み出し電圧Ｖｒｅａｄの初期トリミング処理においては、ステップＳ１３１〜Ｓ１３６の各処理は、図１３のＶｐａｓｓの初期トリミング処理におけるステップＳ１０１〜Ｓ１０６に対応しており、初期Ｖｐａｓｓとして設定する算出においては、式（９）に従う。
Ｖｒｅａｄ０＝Ｖｒｅａｄ０＋ΔＶｒｅａｄ×（ｎｐ−ｎｐｉ）…（９）
＜読み出し電圧更新処理＞
次に、図１６の読み出し電圧Ｖｒｅａｄの更新処理においては、ステップＳ１４１〜Ｓ１５０の各処理は、図１４のＶｐａｓｓの更新処理におけるステップＳ１１１〜Ｓ１２０に対応しており、更新する初期Ｖｒｅａｄとして設定する算出においては同じく式（９）に従う。
【０１０３】
このような第５の実施形態によれば、書き込み処理時に非選択ワード線ＷＬに印加される読み出し電圧Ｖｒｅａｄについてもワード線ＷＬ及びブロックＢＬＫ毎に変化させるとともに、更新処理を行うようにしたので、誤書き込みによる閾値変動で誤動作を引き起こさないように、Ｖｒｅａｄを規格範囲内に抑えることができ、これによってフラッシュメモリ装置２の書き込み動作を確実に行うことができる。
【０１０４】
（第６の実施形態）
図１７は本発明の第６の実施形態を示すもので、第１の実施形態と異なるところは、ＲＯＭヒューズ８に代えて、メモリセルアレイＡｒの一部のメモリセルの一部を、ＲＯＭヒューズ８ａのメモリセルとして用いる構成としたところである。これにより、ＲＯＭヒューズ８ａに記憶されている情報は、電源投入時にメモリセルアレイＡｒのＲＯＭヒューズ８ａからデータレジスタ１７に読み込まれ、フラッシュメモリ装置２の動作を最適化する。
【０１０５】
（他の実施形態）
本発明は、上記実施形態に限定されるものではなく、例えば、以下に示す変形または拡張が可能である。
消去処理は、ブロック単位で実施する形態に加えて、チップ全体で一括して実施する形態を採用することもできる。
第１の実施形態、第２の実施形態は、それぞれ第３の実施形態、第４の実施形態、第５の実施形態のいずれかと組み合わせて実施することもできる。第６の実施形態は、第１ないし第５の実施形態のいずれにも適用することができる。
【０１０６】
第３の実施形態では、偶数列と奇数列のワード線群に分けて初期書き込み電圧Ｖｐｇｍをトリミング設定しているが、偶数列／奇数列以外に、ブロック内の場所やブロック毎の領域に応じてワード線の群を形成してそのそれぞれについて初期書き込み電圧その他の電圧をトリミング設定することもできる。
【０１０７】
記憶部としてのＲＯＭヒューズは、チップ内であれば周辺回路領域やメモリセルアレイ以外に別途記憶領域を設けることもできる。
ＮＡＮＤ型フラッシュメモリ装置以外に、ＮＯＲ型フラッシュメモリ装置にも適用することができる。
メモリセルトランジスタは、１ビットのデータ記憶をするものとしても良いし、複数ビットのデータを記憶するものとしても良い。
【符号の説明】
【０１０８】
図面中、１は不揮発性メモリシステム、２はＮＡＮＤ型フラッシュメモリ装置、３はコントローラ、４はホストコンピュータ、５は制御回路、６はロジック制御部、７はＩ／Ｏ制御部、８、８ａはＲＯＭヒューズ（記憶部）を示す。
【図１】
2011065687.tif 000003
【図２】
2011065687.tif 000004
【図３】
2011065687.tif 000005
【図４】
2011065687.tif 000006
【図５】
2011065687.tif 000007
【図６】
2011065687.tif 000008
【図７】
2011065687.tif 000009
【図８】
2011065687.tif 000010
【図９Ａ】
2011065687.tif 000011
【図９Ｂ】
2011065687.tif 000012
【図１０】
2011065687.tif 000013
【図１１】
2011065687.tif 000014
【図１２】
2011065687.tif 000015
【図１３】
2011065687.tif 000016
【図１４】
2011065687.tif 000017
【図１５】
2011065687.tif 000018
【図１６】
2011065687.tif 000019
【図１７】
2011065687.tif 000020