(57)【要約】【課題】各チップ毎にデータ書き込み後のメモリセルの閾値電圧Ｖｔの分布を制御し、データ保持の信頼性の劣化およびデータ書き込みスピードの低下を防止する。【解決手段】コントロールゲートが接続された各ワード線に印加する制御電圧を制御する電圧制御手段であるワード線電圧制御回路１２ａは、チップ毎のデータ書き込みテストによって得られた複数のメモリセルの閾値電圧の分布に応じて、閾値電圧の分布を所定範囲に収めるように求められた値（電圧値）を格納する記憶手段であるゲート電圧記憶回路２２と、ゲート電圧記憶回路２２に格納された値（電圧値）を用いてコントロールゲートに印加する所定の制御電圧を各行線にそれぞれ出力する電圧出力手段であるワード線レギュレータ回路２３とを有する。【選択図】　図２
2004071082.tif 000002
【特許請求の範囲】
【請求項１】
電気的に情報の書き込みおよび消去が可能な複数のメモリセルが行方向および列方向に配置されており、該メモリセルの制御端子が行方向の各行線に接続され、該メモリセルの駆動端子が列方向の各列線に接続されている不揮発性半導体メモリ装置において、
各行線に印加する制御電圧を制御する電圧制御手段は、チップ毎の該複数のメモリセルの閾値電圧分布に応じて、該閾値電圧分布を所定範囲に収めるように求められた値を格納する記憶手段と、該記憶手段に格納された値を用いて該制御電圧を各行線にそれぞれ出力する電圧出力手段とを有することを特徴とする不揮発性半導体メモリ装置。
【請求項２】
前記メモリセルは、浮遊ゲート電界効果トランジスタである請求項１に記載の不揮発性半導体メモリ装置。
【請求項３】
前記メモリセルは、複数の異なる情報である多値情報の書き込みが可能なように設定されている請求項２に記載の不揮発性半導体メモリ装置。
【請求項４】
前記電圧出力手段は、前記記憶手段に格納される値に基づいて前記制御電圧を選択する電圧選択手段が設けられている請求項１に記載の不揮発性半導体メモリ装置。
【請求項５】
前記記憶手段に格納される値は、前記閾値電圧分布より抽出された該閾値電圧の最大値および最小値の少なくともいずれかと基準閾値電圧との差分を取り、その差分に基づいて算出される請求項１または３に記載の不揮発性半導体メモリ装置。
【請求項６】
前記多値情報の各基準閾値電圧が最も高い基準閾値電圧未満である所定の情報を書き込む場合の前記記憶手段に格納される値は、該所定の情報の書き込み後の閾値電圧分布より、該閾値電圧の最大値を抽出し、その最大値と該所定の情報に対応する基準閾値電圧との差分を取り、その差分に基づいて算出される請求項３に記載の不揮発性半導体メモリ装置。
【請求項７】
前記多値情報の各基準閾値電圧が最も高い基準閾値電圧である情報を書き込む場合の前記記憶手段に格納される値は、該情報の書き込み後の閾値電圧分布より、該閾値電圧の最大値および最小値を抽出し、その最大値および最小値の差分を取り、その差分に基づいて算出される請求項３に記載の不揮発性半導体メモリ装置。
【請求項８】
前記記憶手段に格納される値は、前記チップ内のブロック間での閾値電圧分布のバラツキを考慮した補正値が追加されている請求項５〜７のいずれか一つに記載の不揮発性半導体メモリ装置。
【請求項９】
前記補正値には、前記情報の書き込みおよび消去を交互に繰り返した後の閾値電圧分布のシフト量がさらに追加されている請求項８に記載の不揮発性半導体メモリ装置。
【請求項１０】
前記チップ毎の前記複数のメモリセルの閾値電圧分布は、ウエハテストの際に測定されている請求項１に記載の不揮発性半導体メモリ装置。
【請求項１１】
前記ウエハテストでは、情報の書き込みパルス電圧が１回印加されてる請求項１０に記載の不揮発性半導体メモリ装置。
【請求項１２】
チップ内のメモリセルに対して、情報の書き込みパルス電圧を１回印加する工程と、
該メモリセルの閾値電圧分布より、該閾値電圧の最大値および最小値の少なくともいずれかを抽出する工程と、
該閾値電圧の最大値および最小値の少なくともいずれかを用いて、該閾値電圧分布を所定範囲に収めるように該メモリセルの制御端子に印加する制御電圧を求める工程と、
を包含するデータ書き込み制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のメモリセルが設けられた不揮発性半導体メモリ装置および不揮発性半導体メモリ装置へのデータ書き込み制御方法に関する。
【０００２】
【従来の技術】
従来、最も一般的に用いられている不揮発性半導体メモリ装置であるフラッシュメモリは、ＥＴＯＸ（ＥＰＲＯＭ　Ｔｈｉｎ　Ｏｘｉｄｅ、インテルの登録商標）型フラッシュメモリである。
【０００３】
図１６は、ＥＴＯＸ型フラッシュメモリのメモリセルの模式的な断面図である。図１６に示すように、半導体基板１６０内には、ソース領域１６１およびドレイン領域１６２が所定の間隔をあけて形成されている。ソース領域１６１とドレイン領域１６２との間の半導体基板１６０上には、ソース領域１６１およびドレイン領域１６２の端部を覆うようにトンネル酸化膜、フローティングゲート（浮遊ゲート）１６４、層間絶縁膜１６５およびコントロールゲート１６６が順番に形成されている。
【０００４】
次に、図１６に示すＥＴＯＸ型フラッシュメモリの動作原理について説明する。表１は、ＥＴＯＸ型フラッシュメモリのデータ（情報）書き込み動作モード、データ消去動作モードおよびデータ読み出し動作モードにおける電圧印加条件を示す。
【０００５】
【表１】
2004071082.tif 000003
表１に示すように、データ書き込み（プログラム）動作モードでは、コントロールゲート１６６にデータ書き込み電圧Ｖｐｐ（例えば９Ｖ）、ソース領域１６１および半導体基板１６０に基準電圧Ｖｓｓ（例えば０Ｖ）、ドレイン領域１６２に５Ｖの電圧が印加される。尚、データ書き込みを行わないメモリセルのドレイン領域１６２には、０Ｖの電圧もしくは印加される。このため、半導体基板１６０内のソース領域１６１とドレイン領域１６２との間のチャネル層では、大きな電流が流れ、ドレイン領域１６２側の電界の高い部分にて、ホットエレクトロンが発生する。これにより、メモリセルのフローティングゲート１６４に電子が注入されデータ書き込み状態となり、メモリセルの閾値電圧が上昇する。
【０００６】
図１７は、二値フラッシュメモリ内に設けられたメモリセルの閾値電圧の分布を示すグラフである。図１７の横軸はメモリセルの閾値電圧、縦軸はメモリセルの個数をそれぞれ表している。通常、二値フラッシュメモリのメモリセルのフローティングゲートに電子が注入された状態がデータ書き込み（プログラム）状態で、その時のデータをＤａｔａ“０”とする。逆に、メモリセルのフローティングゲートから電子が引き抜かれている状態がデータ消去（イレース）状態で、その時のデータをＤａｔａ“１”とする。図１７に示すように、メモリセルの閾値電圧が上昇し、閾値電圧が所定の電圧値（例えば５Ｖ）以上になるとデータ書き込み動作が終了する。メモリセルの閾値電圧が低下し、閾値電圧が所定の電圧値（例えば３Ｖ）以下になるとデータ消去動作が終了する。
【０００７】
データ消去（イレース）動作モードでは、コントロールゲート１６６に電圧Ｖｎｎ（例えば−９Ｖ）、ソース領域１６１に電圧Ｖｐｅ（例えば６Ｖ）を印加し、ドレイン領域１６２をオープン状態にする。これにより、チャネル層のソース領域１６１側にてフローティングゲート１６４からトンネル酸化膜１６３を介して電子を引き抜きメモリセルの閾値電圧を低下させる。この場合のメモリセルの閾値電圧の分布は、上記の図１７のＤａｔａ“１”イレース状態と同様の分布を示す。
【０００８】
このデータ消去（イレース）時には、ソース領域１６１と半導体基板１６０との間にＢＴＢＴ（Ｂａｎｄ　Ｔｏ　Ｂａｎｄ　Ｔｕｎｎｅｌｉｎｇ）電流が流れる。このＢＴＢＴ電流が発生するとホットホールおよびホットエレクトロンが同時に発生する。このうち、ホットエレクトロンは、ドレイン領域１６２に流れてしまうが、ホットホールは、トンネル酸化膜１６３側に引き付けられ、トンネル酸化膜１６３内にトラップされる。このトンネル酸化膜１６３にホットホールがトラップされる現象が一般的にメモリセルのデータ保持の信頼性を劣化させると言われている。
【０００９】
データ読み出し（リード）動作モードは、ドレイン領域１６２に１Ｖの電圧を印加し、コントロールゲート１６６に５Ｖの電圧を印加する。もし、メモリセルがデータ消去（イレース）状態で閾値電圧が低い場合には、メモリセルに電流が流れ、図１７に示すＤａｔａ”１”と判定される。一方、メモリセルがデータ書き込み（プログラム）状態で閾値電圧が高い場合には、メモリセルに電流が流れず、図１７に示すＤａｔａ”０”と判定される。これらの判定は、メインアレイのデータ読み出しが行われるメモリセルに流れる電流と、メインアレイのメモリセルとは別に設けられ所定の基準閾値電圧が設定されているリファレンスセルに流れる電流とを検出し、これらの電流値を比較することによって行われる。
【００１０】
このようなデータ読み出し時のデータ判定方法をセンスアンプ回路を用いて説明する。
【００１１】
図１８は、センスアンプ回路の概略の構成を示す回路図である。図１８に示すセンスアンプ回路は、正極側入力端子および負極側入力端子が設けられた増幅器１８１を有している。増幅器１８１の正極側入力端子には、ＮＭＯＳトランジスタ１８４のドレイン端子が接続され、ＮＭＯＳトランジスタ１８４のソース端子は、リファレンスセル１８６のドレイン端子が接続されている。ＮＭＯＳトランジスタ１８４のゲート端子およびソース端子間には、インバータ１８２が配置され、ＮＭＯＳトランジスタ１８４のゲート端子とインバータ１８２の出力端子とが接続され、インバータ１８２の入力端子とＮＭＯＳトランジスタ１８４のソース端子とが接続されている。リファレンスセル１８６のゲート端子は、ワード線が接続されるとともに、ワード線電圧ＶＷＬが印加され、リファレンスセル１８６のソース端子は、アース（ＧＮＤ）に接地されている。
【００１２】
一方、増幅器１８１の負極側入力端子には、ＮＭＯＳトランジスタ１８５のドレイン端子が接続され、ＮＭＯＳトランジスタ１８５のソース端子は、メインアレイのメモリセルであるメインセル１８７のドレイン端子が接続されている。ＮＭＯＳトランジスタ１８５のゲート端子およびソース端子間には、インバータ１８３が配置され、ＮＭＯＳトランジスタ１８５のゲート端子とインバータ１８３の出力端子とが接続され、インバータ１８３の入力端子とＮＭＯＳトランジスタ１８５のソース端子とが接続されている。メインセル１８７のゲート端子は、ワード線が接続されるとともに、ワード線電圧ＶＷＬが印加され、メインセル１８７のソース端子は、アース（ＧＮＤ）に接地されている。
【００１３】
通常、フラッシュメモリのデータ読み出し動作は、図１８に示すように、メインアレイのメモリセルであるメインセル１８７を流れる電流Ｉｍと、リファレンスセル１８６を流れる電流Ｉｒとを比較して、センスアンプにてＤａｔａ”０”またはＤａｔａ“１”を判定する。もし、メインセル１８７を流れる電流Ｉｍがリファレンスセル１８６を流れる電流Ｉｒより大きい（Ｉｍ＞Ｉｒ）場合、データ消去状態のＤａｔａ”１”を判定すると、メインセル１８７を流れる電流Ｉｍがリファレンスセル１８６を流れる電流Ｉｒより小さい（Ｉｍ＜Ｉｒ）場合、データ書き込み状態のＤａｔａ”０”を判定する。このような場合、例えば、図１６に示すように、リファレンスセル１８６の閾値電圧は、データ書き込みが行われたメモリセルの閾値電圧（５Ｖ以上）と、データ消去（イレース）が行われたメモリセルの閾値電圧（３Ｖ以下）との間に設定される必要があり、図１６のＲｅａｄ　ｒｅｆｅｒｅｎｃｅに示す３．５Ｖとなる。
【００１４】
リファレンスセル１８６の閾値電圧は、データ読み出しスピードおよびデータ保持の信頼性等を考慮し、正確な値である必要がある。このため、リファレンスセル１８６の閾値電圧は、３．５Ｖ±０．１Ｖ以内の精度が求められていた。また、メインセル１８７およびリファレンスセル１８６のゲート端子にそれぞれ接続されたワード線には、各ワード線に印加されるワード線電圧ＶＷＬおよびＶＲＷＬが同一電圧（例えば５Ｖ）で正確に印加される必要がある。
【００１５】
図１９は、メインアレイのメモリセルであるメインセル１８７の１ブロックの構成を示す回路図である。
【００１６】
図１９に示すように、複数のメインセル１８７がマトリクス状に配置され、行方向に配置される各ワード線ＷＬ０〜ＷＬｎ−１には、それぞれｍ個のメインセル１８７の制御端子であるコントロールゲート端子が接続されている。列方向に配置されている各ビット線ＢＬ０〜ＢＬｍ−１には、それぞれｎ個のメインセル１８７の駆動端子であるドレイン端子が接続されている。同一ブロック内の各メインセル１８７のソース端子は、共通ソース線ＳＬに接続されている。
【００１７】
このように、通常のフラッシュメモリのメモリセルに対するデータ書き込み（プログラム）動作は、メモリセルを流れる電流およびメモリセルに印加される電圧を一貫して制御する必要があり、上記電流および電圧を一貫して制御するデータ書き込み（プログラム）動作が特開平９−３２０２８２号公報、特開平２−７２９７号公報等に開示されている。
【００１８】
【発明が解決しようとする課題】
一般的に、フラッシュメモリのメモリセルへのデータ書き込み（プログラム）動作の場合、現状のデータ書き込み（プログラム）スピードを考慮すると１回のデータ書き込み（プログラム）パルス電圧の印加により、メモリセルへのデータ書き込みを完了するには、高い電圧、例えば、５Ｖ以上に設定する必要がある。
【００１９】
図２０は、データ書き込み後におけるメモリセルの閾値電圧Ｖｔの分布を示すグラフである。図２０の横軸はメモリセルの閾値電圧、縦軸はメモリセルの個数をそれぞれ表している。
【００２０】
フラッシュメモリでは、メモリセルへのデータ書き込み後（例えば、１回のデータ書き込みパルス電圧印加後）のメモリセルの閾値電圧Ｖｔが図２０に示すような分布幅（閾値電圧の最小値Ｖｔｍｉｎ〜閾値電圧の最大値Ｖｔｍａｘ）を有する。このため、ワード線を介してメモリセルのコントロールゲートに印加される電圧は、データ書き込み後の閾値電圧の最小値Ｖｔｍｉｎが所定の閾値電圧以上（例えば５Ｖ以上）になるように、量産時の製造バラツキも考慮して設定される。
【００２１】
従来のフラッシュメモリのメモリセルへのデータ書き込み動作では、ウエハ上の全てのチップ（デバイス）に対して共通の設定電圧が用いられている。通常、フラッシュメモリ内の各メモリセルの閾値電圧の分布は、メモリセルの電気的特性が製造プロセス条件によりバラツクために、各チップ毎に異なることが知られている。
【００２２】
図２１は、同一のデータ書き込み（プログラム）条件（例えば、１回のデータ書き込みパルス電圧印加）にてデータ書き込みを行い、データ書き込み後の各チップ毎のメモリセルの閾値電圧の分布の一例を示すグラフである。図２１の横軸はメモリセルの閾値電圧、縦軸はメモリセルの個数をそれぞれ表している。
【００２３】
図２１に示すように、データ書き込みスピードが速いｆａｓｔチップでは、各メモリセルの閾値電圧がデータ書き込みの基準閾値電圧（５Ｖ）に対して十分マージンを持ち高電圧側にシフトした分布を示す。同様に、データ書き込みスピードが遅いｓｌｏｗチップでは、各メモリセルの閾値電圧がデータ書き込みの基準閾値電圧（５Ｖ）の近傍に分布し、データ書き込みスピードが通常のｔｙｐｉｃａｌチップでは、各メモリセルの閾値電圧がｆａｓｔチップおよびｓｌｏｗチップの各メモリセルの閾値電圧とオーバーラップするように分布する。
【００２４】
また、各メモリセルの閾値電圧は、上記メモリセルの電気的特性のバラツキ以外にメモリアレイ周辺のトランジスタ、例えば、ワード線駆動回路のトランジスタの駆動能力等のバラツキによりデータ書き込み（プログラム）パルス電圧印加時のメモリセルのコントロールゲートに印加される電圧も各メモリセル毎に変化するため、バラツキが生じる。これにより、最終的に、各チップ毎のメモリセルの閾値電圧の分布は、さらに大きく異なることになる。
【００２５】
このように各チップ毎のメモリセルの閾値電圧の分布が大きく異なることは、以下のように、メモリセルの信頼性を劣化させる原因となる。
【００２６】
第１に、各メモリセルの閾値電圧が所定の基準閾値電圧（５Ｖ）を大きくオーバーしている図２１に示すｆａｓｔチップの場合には、データ書き込み（プログラム）後の各メモリセルの閾値電圧がばらついて、例えば、閾値電圧の下限が６．０Ｖ以上となると、閾値電圧の上限は７Ｖ以上となってしまう。このような場合、メモリセルのデータ消去時には、図１６に示すメモリセルのコントロールゲート１６６に負の大きな電圧が印加された場合、フローティングは、余分な電子が帯電しているため、フローティングゲート１６４が大きく負に帯電する。このため、トンネル酸化膜１６３には、半導体基板１６０とフローティングゲート１６４との間に生じる電界によって余分なストレスが印加され、結果として、その後のデータ保持等の信頼性を劣化させる原因となる。
【００２７】
第２に、各メモリセルの閾値電圧が低くて、各メモリセルの閾値電圧が所定の基準閾値電圧（５Ｖ）の近傍に分布する図２１に示すｓｌｏｗチップの場合には、データ書き込み（プログラム）後の各メモリセルの閾値電圧がばらついて、例えば、閾値電圧の最小値Ｖｔｍｉｎが５．０Ｖ程度となると、図１６に示すメモリセルのトンネル酸化膜１６３に印加される上記の電界によるストレスは小さくなる。しかし、データ消去（Ｅｒａｓｅ）動作およびデータ書き込み（Ｗｒｉｔｅ）動作が交互に繰り返えされると、図２２に示すように各メモリセルの閾値電圧の分布が低電圧側にシフトし、１回のデータ書き込みパルス電圧印加後の閾値電圧が基準閾値電圧（５Ｖ）以下になるデータ書き込み特性の劣化したメモリセルが生じる可能性がある。尚、図２２では、データ消去（Ｅｒａｓｅ）動作およびデータ書き込み（Ｗｒｉｔｅ）動作の交互の繰り返しをＥ／Ｗにて示す。
【００２８】
特に、データ書き込み特性が劣化したメモリセルは、１回のデータ書き込みパルス電圧の印加では閾値電圧が基準閾値電圧（５Ｖ）以上にならなくなり、さらにデータ書き込みパルスの印加が必要となることから、実質的に、データ書き込みスピードが低下してしまう。
【００２９】
本発明は、このような課題を解決するものであり、その目的は、各チップ（デバイス）毎にデータ書き込み（プログラム）後のメモリセルの閾値電圧Ｖｔの分布を制御し、データ保持の信頼性の劣化およびデータ書き込みスピードの低下が防止された不揮発性半導体メモリ装置およびそのデータ書き込み制御方法を提供することにある。
【００３０】
【課題を解決するための手段】
本発明の不揮発性半導体メモリ装置は、電気的に情報の書き込みおよび消去が可能な複数のメモリセルが行方向および列方向に配置されており、メモリセルの制御端子が行方向の各行線に接続され、メモリセルの駆動端子が列方向の各列線に接続されている不揮発性半導体メモリ装置において、各行線に印加する制御電圧を制御する電圧制御手段は、チップ毎の該複数のメモリセルの閾値電圧分布に応じて、該閾値電圧分布を所定範囲に収めるように求められた値を格納する記憶手段と、記憶手段に格納された値を用いて該制御電圧を各行線にそれぞれ出力する電圧出力手段とを有するものであり、そのことにより上記目的が達成される。
【００３１】
また、好ましくは、本発明の不揮発性半導体メモリ装置において、メモリセルは、浮遊ゲート電界効果トランジスタである。
【００３２】
さらに、好ましくは、本発明の不揮発性半導体メモリ装置において、メモリセルは、複数の異なる情報である多値情報の書き込みが可能なように設定されている。
【００３３】
さらに、好ましくは、本発明の不揮発性半導体メモリ装置において、電圧出力手段は、記憶手段に格納される値に基づいて制御電圧を選択する電圧選択手段が設けられている。
【００３４】
さらに、好ましくは、本発明の不揮発性半導体メモリ装置において、記憶手段に格納される値は、閾値電圧分布より抽出された閾値電圧の最大値および最小値の少なくともいずれかと基準閾値電圧との差分を取り、その差分に基づいて算出される。
【００３５】
さらに、好ましくは、本発明の不揮発性半導体メモリ装置において、多値情報の各基準閾値電圧が最も高い基準閾値電圧未満である所定の情報を書き込む場合の記憶手段に格納される値は、所定の情報の書き込み後の閾値電圧分布より、閾値電圧の最大値を抽出し、その最大値と所定の情報に対応する基準閾値電圧との差分を取り、その差分に基づいて算出される。
【００３６】
さらに、好ましくは、本発明の不揮発性半導体メモリ装置において、記多値情報の各基準閾値電圧が最も高い基準閾値電圧である情報を書き込む場合の記憶手段に格納される値は、情報の書き込み後の閾値電圧分布より、閾値電圧の最大値および最小値を抽出し、その最大値および最小値の差分を取り、その差分に基づいて算出される。
【００３７】
さらに、好ましくは、本発明の不揮発性半導体メモリ装置において、記憶手段に格納される値は、チップ内のブロック間での閾値電圧分布のバラツキを考慮した補正値が追加されている。
【００３８】
さらに、好ましくは、本発明の不揮発性半導体メモリ装置において、補正値には、前記情報の書き込みおよび消去を交互に繰り返した後の閾値電圧分布のシフト量がさらに追加されている。
【００３９】
さらに、好ましくは、本発明の不揮発性半導体メモリ装置において、チップ毎の複数のメモリセルの閾値電圧分布は、ウエハテストの際に測定されている。
【００４０】
さらに、好ましくは、本発明の不揮発性半導体メモリ装置において、ウエハテストでは、情報の書き込みパルス電圧が１回印加されている。
【００４１】
本発明のデータ書き込み制御方法は、チップ内のメモリセルに対して、情報の書き込みパルス電圧を１回印加する工程と、メモリセルの閾値電圧分布より、閾値電圧の最大値および最小値の少なくともいずれかを抽出する工程と、閾値電圧の最大値および最小値の少なくともいずれかを用いて、閾値電圧分布を所定範囲に収めるように該メモリセルの制御端子に印加する制御電圧を求める工程と、これらを包含することにより、上記目的が達成される。
【００４２】
上記構成により、以下、その作用を説明する。
【００４３】
本発明の不揮発性半導体メモリ装置は、各チップ毎に電圧出力手段が設けられており、各チップが形成されたウエハの情報の書き込みテスト（ウエハテスト）を行い、そのテスト結果に基づいて情報の書き込み動作の際に、各チップ毎にメモリセルの制御端子に印加する電圧が最適に設定される。
【００４４】
すなわち、情報の書き込みテストの際に、任意の書き込みパルス電圧を各チップのメモリセルに１回（１パルス）印加して、情報の書き込み動作の終了後のメモリセルの閾値電圧の分布から閾値電圧の最大値（Ｖｔｍａｘ）および閾値電圧の最小値（Ｖｔｍｉｎ）を抽出し、閾値電圧の最大値または閾値電圧の最小値に基づいて各チップのメモリセルの制御ゲートに印加する最適な電圧値を算出する。その最適な電圧値は、記憶手段に記憶データとして記憶される。
【００４５】
そして、その記憶データに基づいた制御信号ＷＬＶＳが電圧出力手段に入力され、電圧出力手段にて制御信号ＷＬＶＳに対応した制御信号Ｈが選択され、制御信号Ｈに基づいて各チップ毎のメモリセルの制御ゲートに印加される所定の情報の書き込みパルス電圧が設定され出力される。
【００４６】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態を説明する。
【００４７】
図１は、本発明の実施形態の不揮発性半導体メモリ装置であるフラッシュメモリ（チップ）の概略を示すブロック図である。
【００４８】
図１に示すフラッシュメモリ１０は、複数のメモリセルが設けられたメモリセルアレイ１１を有している。メモリセルアレイ１１は、前述の図１６に示すメモリセルと同様の構成であり、このメモリセルは、フローティング（浮遊）ゲート電界効果トランジスタによって形成されている。メモリセルアレイ１１には、データを格納するデータ領域が設けられている他に、データ書き込み時およびデータ消去時にて各メモリセルへの信号パルスを印加した後に行うベリファイ（検証）動作において、各メモリセルの閾値電圧が所定の閾値電圧に到達しているか否かを検証するために、メインメモリセルと比較するために使用するリファレンスセル（参照用メモリセル）が設けられている。尚、リファレンスセルは、図１に示すメモリセルアレイ１１では省略されている。
【００４９】
メモリセルアレイ１１には、各ワード線ＷＬ０〜ＷＬｎ−１に電圧を供給するワード線電圧供給回路１２、共通ソース線ＳＬに電圧を供給する共通ソース線電圧供給回路１３および各ビット線ＢＬ０〜ＢＬｍ−１に電圧を供給するビット線電圧供給回路１４がそれぞれ接続されている。
【００５０】
ワード線電圧供給回路１２、共通ソース線電圧供給回路１３およびビット線電圧供給回路１４は、制御回路１５によって制御される。
【００５１】
ワード線電圧供給回路１２は、制御回路１５から出力される制御信号およびアドレス信号に基づいてメモリセルアレイ１１の各ワード線ＷＬ０〜ＷＬｎ−１を選択するとともに、データ書き込み制御信号をデータ書き込み（プログラム）電圧に昇圧して各ワード線ＷＬ０〜ＷＬｎ−１に印加し各ワード線ＷＬ０〜ＷＬｎ−１を駆動する。
【００５２】
共通ソース線電圧供給回路１３は、制御回路１５から出力される制御信号およびアドレス信号に基づいて、メモリセルアレイ１１内の同一ブロックに配置されている各メモリセルのソースを共通に接続した共通ソース線ＳＬを選択するとともに、データ消去制御信号をデータ消去（イレース）電圧に昇圧して共通ソース線ＳＬに印加し共通ソース線ＳＬを駆動する。
【００５３】
ビット線電圧供給回路１４は、制御回路１５から出力される制御信号およびアドレス信号に基づいて、メモリセルアレイ１１のビット線ＢＬ０〜ＢＬｍ−１を選択するとともに、データ書き込み／データ読出し制御信号を昇圧してビット線ＢＬ０〜ＢＬｍ−１に印加しビット線ＢＬ０〜ＢＬｍ−１を駆動する。
【００５４】
尚、ビット線電圧供給回路１４内には、データ書き込み時およびデータ消去時に行うベリファイ動作において、メモリセルとリファレンスセルとに流れる電流を比較して、それぞれの閾値電圧を検証し、各メモリセルにデータ書き込みパルスおよびデータ読出しパルスの印加を続行するか停止するかを示す信号を制御回路１５に伝達する比較回路、および、データ読出し時にメモリセルを流れる電流を電圧に換算してセンスするセンスアンプ回路も設けられているが、ここでは省略している。
【００５５】
本発明は、フラッシュメモリ１０におけるメモリセルアレイ１１の各ワード線ＷＬ０〜ＷＬｎ−１へのデータ書き込み（プログラム）電圧の制御に関するものであり、ワード線電圧供給回路１２について詳細に説明する。
【００５６】
ワード線電圧供給回路１２は、データ書き込み手段としてのワード線電圧制御回路１２ａと、各ワード線ＷＬ０〜ＷＬｎ−１に対応するワード線ドライバ回路１２ｂとから構成されている。ワード線ドライバ回路１２ｂは、データ書き込み時のデータ書き込みパルス電圧、データ消去時のデータ消去パルス電圧およびデータ読出し時のデータ読出しパルス電圧をそれぞれ選択して出力するものであり、既存の切り替え回路により構成されているため説明は省略する。
【００５７】
ワード線電圧制御回路１２ａは、データ書き込み時、データ消去時およびデータ読出し時に、各ワード線ＷＬ０〜ＷＬｎ−１に印加する電圧を制御して出力する電圧制御回路から構成された電圧制御手段である。
【００５８】
本実施形態では、ワード線電圧制御回路１２ａのデータ書込み動作について説明する。
【００５９】
図２は、ワード線電圧制御回路１２ａの概要を示すブロック図である。図２に示すワード線電圧制御回路１２ａは、図１に示す制御回路１５から出力される制御信号を受け取るデータ書き込み手段としてのプログラム／イレース制御回路２１と、プログラム／イレース制御回路２１に記憶データ信号を出力する記憶手段としてのゲート電圧記憶回路２２と、プログラム／イレース制御回路２１から出力される制御信号ＷＬＶＳ［３：０］に基づいてワード線の制御電圧を選択し出力する電圧出力手段としてのワード線レギュレータ回路２３とを有する。
【００６０】
尚、ワード線レギュレータ回路２３は、ゲート電圧記憶回路２２から直接記憶データ信号を受け取り、その記憶データ信号に基づいてワード線の制御電圧を生成しても良いが、本実施形態では、図２に示すワード線電圧制御回路１２ａの構成を用いて説明を行う。
【００６１】
プログラム／イレース制御回路２１は、制御回路１５から出力される制御信号に基づいて、データ書き込み動作を開始しデータ書き込みパルスを各ワード線ＷＬ０〜ＷＬｎ−１に印加する場合、ゲート電圧記憶回路２２に記憶されているデータを参照し、その記憶データの内容を反映させた制御信号ＷＬＶＳ［３：０］を選択してワード線レギュレータ回路２３に出力する。そして、データ書き込み（プログラム）動作の際には、ワード線電圧制御回路１２ａ内のワード線レギュレータ回路２３の出力信号ＨＶＰＸがワード線ドライバ回路１２ｂに出力される。尚、制御信号ＷＬＶＳ［３：０］は、ＷＬＶＳ３、ＷＬＶＳ２、ＷＬＶＳ１、ＷＬＶＳ０の四つの信号を表す。
【００６２】
図３は、図２に示すワード線電圧制御回路１２ａ内のワード線レギュレータ回路２３の一例を示す回路図である。本実施形態では、１例として上記の制御信号ＷＬＶＳ［３：０］がワード線レギュレータ回路２３内の抵抗値選択ロジック回路３２に出力される場合を説明する。
【００６３】
図３に示すワード線レギュレータ回路２３は、インバータ型のレベルシフタ回路３１の出力端子がＰＭＯＳトランジスタＨＰのゲート端子に接続され、レベルシフタ回路３１の入力端子には、制御信号ｅｎが入力される。ＰＭＯＳトランジスタＨＰのソース端子は、電源ＶＰＰ（例えば、１２Ｖ）に接続され、ＰＭＯＳトランジスタＨＰのドレイン端子は、抵抗ＲＨ１を介して端子Ｔ１５に接続されている。　端子Ｔ１５には、１５個の抵抗Ｒ１が直列に接続されており、各抵抗Ｒ１の接続点を端子Ｔ１５側から端子Ｔ１４〜Ｔ１とし、終端を端子Ｔ０とする。端子Ｔ０は、抵抗ＲＬ１を介してＮＭＯＳトランジスタＬＮのドレイン端子に接続され、ＮＭＯＳトランジスタＬＮのソース端子は、アース（ＧＮＤ）に接続されている。ＮＭＯＳトランジスタＬＮのゲート端子には、制御信号ｅｎが入力される。ここで、抵抗ＲＨ１、抵抗ＲＬ１および抵抗ＲＨ１と抵抗ＲＬ１との間の１５個の抵抗Ｒ１は、電源ＶＰＰを分圧する分割電圧出力線を構成する。抵抗ＲＨ１は、電源ＶＰＰに対して最大分割電圧（上限値）を設定し、抵抗ＲＬ１は、電源ＶＰＰに対して最小分割電圧（下限値）を設定し、抵抗ＲＨ１と抵抗ＲＬ１との間の１５個の抵抗Ｒ１は、最大分割電圧（上限値）と最小分割電圧（下限値）との間の電圧値を等分するように設定する。
【００６４】
端子Ｔ１５は、ＮＭＯＳトランジスタＨＳ１５のドレイン端子に接続され、同様に、端子Ｔ１４〜Ｔ０は、それぞれＮＭＯＳトランジスタＨＳ１４〜ＨＳ０のドレイン端子にそれぞれ接続される。ＮＭＯＳトランジスタＨＳ１５〜ＨＳ０のソース端子は、共通に接続され、増幅器３４の正極側入力端子に接続される。
【００６５】
また、プログラム／イレース制御回路２１から出力された制御信号ＷＬＶＳ［３：０］が抵抗値選択ロジック回路３２に入力され、抵抗値選択ロジック回路３２から制御信号Ｈ［１５：０］として出力される。制御信号Ｈ［１５：０］は、制御信号Ｈ１５、制御信号Ｈ１４、・・・、制御信号Ｈ１、制御信号Ｈ０の１６個の信号を表し、制御信号Ｈ［１５：０］であるＨ１５、Ｈ１４、・・・、Ｈ１、Ｈ０の各信号は、それぞれＮＭＯＳトランジスタＨＳ１５〜ＨＳ０のゲート端子にそれぞれ入力される。尚、図３に示す抵抗値選択ロジック回路３２では、制御信号Ｈ［１５：０］であるＨ１５、Ｈ１４、・・・、Ｈ１、Ｈ０の各信号が一箇所より出力されるように記述されているが、実際には、制御信号Ｈ［１５：０］であるＨ１５、Ｈ１４、・・・、Ｈ１、Ｈ０の各信号の出力端子は、全て異なるように配置されている。
【００６６】
増幅器３４の出力端子は、ＮＭＯＳトランジスタＴＲのドレイン端子に接続され、ＮＭＯＳトランジスタＴＲのソース端子は、ワード線レギュレータ回路２３の出力端子になるとともに、増幅器３４の負極側入力端子に接続され、ボルテージフォロア回路が形成される。ＮＭＯＳトランジスタＴＲのゲート端子には、昇圧された制御信号ｅｎが入力される。
【００６７】
各ＮＭＯＳトランジスタＨＳ１５〜ＨＳ０は、それぞれのゲート端子に入力される上記の制御信号Ｈ［１５：０］に基づいて、各ＮＭＯＳトランジスタＨＳ１５〜ＨＳ０の共通に接続されたソース端子からリファレンス信号を出力する。このリファレンス信号は、ボルテージフォロア回路を構成する増幅器３４の正極側入力端子に入力され低インピーダンス化され、増幅器３４の出力端子より出力される。増幅器３４の出力端子より出力されたリファレンス信号は、ＮＭＯＳトランジスタＴＲのドレイン端子に入力され、ＮＭＯＳトランジスタＴＲのゲート端子に入力される制御信号ｅｎに基づいて、ＮＭＯＳトランジスタＴＲのソース端子より出力信号ＨＶＰＸとしてワード線ドライバ回路１２ｂに出力される。
【００６８】
各制御信号ｅｎは、データ書き込みパルス制御信号であり、データ書き込みパルス電圧が出力される場合、ＨＩＧＨレベル状態となる。ＮＭＯＳトランジスタＴＲは、ゲート端子に入力される制御信号ｅｎがＨＩＧＨレベル状態ではＯＮ状態になり、ＬＯＷレベルではＯＦＦ状態となる。
【００６９】
抵抗値選択ロジック回路３２は、プログラム／イレース回路２１から出力される４ビットの制御信号ＷＬＶＳ［３：０］を受け取り、この制御信号ＷＬＶＳ［３：０］に基づいて、抵抗値選択ロジック回路３２にて選択される制御信号Ｈ［１５：０］（制御信号Ｈ０〜Ｈ１５）のいずれか１つをデコード（復号化）するデコーダである。
【００７０】
プログラム／イレース制御回路２１から出力される制御信号ＷＬＶＳ［３：０］は、４ビットにて構成されておりＷＬＶＳ３、ＷＬＶＳ２、ＷＬＶＳ１、ＷＬＶＳ０の四つの信号を表す。このため、ゲート電圧記憶回路２２には、２４＝１６個のデータ（コントロールゲートの印加電圧に相当）が記憶されている。
【００７１】
抵抗値選択ロジック回路３２は、デコーダ回路であり、４ビットの制御信号ＷＬＶＳ［３：０］に応じて、下記の表２のように制御信号Ｈ［１５：０］デコードする。
【００７２】
【表２】
2004071082.tif 000004
表２に示すように、制御信号ＷＬＶＳ［３：０］が００００の場合、出力される制御信号Ｈ［１５：０］は、制御信号Ｈ０である０００００００００００００００１となり、ＮＭＯＳトランジスタＨＳ０がＯＮ状態となり、制御信号ＷＬＶＳ［３：０］が０００１の場合、出力される制御信号Ｈ［１５：０］は、制御信号Ｈ１である００００００００００００００１０となり、ＮＭＯＳトランジスタＨＳ１がＯＮ状態となり、制御信号ＷＬＶＳ［３：０］が００１０の場合、出力される制御信号Ｈ［１５：０］は、制御信号Ｈ２である０００００００００００００１００となり、ＮＭＯＳトランジスタＨＳ２がＯＮ状態となり、以下、同様にＮＭＯＳトランジスタＨＳ３〜ＨＳ１５が選択され、制御信号ＷＬＶＳ［３：０］が１１１１の場合、出力される制御信号Ｈ［１５：０］は、制御信号Ｈ１５である１０００００００００００００００となり、ＮＭＯＳトランジスタＨＳ１５がＯＮ状態となる。
【００７３】
この場合、分割電圧出力線に接続されている１６個のＮＭＯＳトランジスタＨＳ０〜ＨＳ１５は、抵抗値選択ロジック回路３２の出力信号が制御信号Ｈ１５であれば、制御信号Ｈ１５が入力されるＮＭＯＳトランジスタＨＳ１５のみがＯＮ状態となり、その他の１５個のＮＭＯＳトランジスタＨＳ０〜ＨＳ１４はＯＦＦ状態となる。これにより、制御信号Ｈ１５に基づいてＮＭＯＳトランジスタＨＳ１５のドレイン端子からリファレンス信号が出力され、このリファレンス信号は、増幅器３４およびＮＭＯＳトランジスタＴＲを経てＮＭＯＳトランジスタＴＲのソース端子より出力信号ＨＶＰＸとしてワード線ドライバ回路１２ｂに出力される。
【００７４】
フラッシュメモリ１０において、データ書き込み（プログラム）動作が開始され、各メモリセルのコントロールゲートにデータ書き込みパルス電圧が印加される場合には、図３に示すワード線レギュレータ回路２３に供給される制御信号ｅｎがＨＩＧＨレベル状態となることによって、ＰＭＯＳトランジスタＨＰおよびＮＭＯＳトランジスタＬＮがＯＮ状態となる。これにより、電源ＶＰＰが抵抗ＲＨ１、１５個の抵抗Ｒ１および抵抗ＲＬ１が直列接続されている分割電圧出力線に印加され、端子Ｔ１５と端子Ｔ０との間の各端子Ｔ１５〜Ｔ０に電源ＶＰＰの分割電圧が発生する。本実施形態では、最大分割電圧（上限値）が８．８Ｖ、最小分割電圧（下限値）が７．３Ｖ、最大分割電圧（上限値）および最小分割電圧（下限値）間の分解能が０．１Ｖになるように、抵抗ＲＨ１、抵抗Ｒ１および抵抗ＲＬ１の抵抗値が設定されている。この結果、７．３Ｖ〜８．８Ｖの電圧値を有するリファレンス信号がデータ書き込みパルス電圧として出力される。
【００７５】
このように、本発明のフラッシュメモリ１０（チップ）は、各チップ毎にワード線レギュレータ回路２３が設けられており、各チップが形成されたウエハのデータ書き込みテスト（ウエハテスト）を行い、そのテスト結果に基づいてデータ書き込み動作の際に、各チップ毎にメモリセルのコントロールゲートに印加する電圧が最適に設定される。
【００７６】
すなわち、データ書き込みテストの際に、任意のデータ書き込みパルス電圧を各チップのメモリセルに１回（１パルス）印加して、データ書き込み動作の終了後のメモリセルの閾値電圧の分布から閾値電圧の最大値（Ｖｔｍａｘ）および閾値電圧の最小値（Ｖｔｍｉｎ）を抽出し、閾値電圧の最大値または閾値電圧の最小値に基づいて各チップのメモリセルのコントロールゲートに印加する最適な電圧値を算出する。その最適な電圧値は、ゲート電圧記憶回路２２に記憶データとして記憶される。
【００７７】
そして、その記憶データに基づいた制御信号ＷＬＶＳ［３：０］がプログラム／イレース制御回路２１からワード線レギュレータ回路２３に出力され、制御信号ＷＬＶＳ［３：０］に対応した制御信号Ｈ［１５：０］が選択され、選択された制御信号Ｈ［１５：０］に基づいて各チップ毎のメモリセルのコントロールゲートに印加される所定のデータ書き込みパルス電圧が設定され出力される。
【００７８】
ここで、プログラム／イレース制御回路２１は、ゲート電圧記憶回路２２に記憶されている記憶データを参照し、その記憶データの内容を反映させた制御信号ＷＬＶＳ［３：０］を選択して出力することによって、上記のデータ書き込み（プログラム）パルス電圧を変更することができる。尚、抵抗ＲＨ１、抵抗Ｒ１および抵抗ＲＬ１の抵抗値は、データ書き込みパルス電圧の標準（Ｔｙｐｉｃａｌ）値を中心に標準値の上下に制御可能なように設定すれば良く、分割電圧の分解能および分割電圧の数は、抵抗の数、制御信号ＷＬＶＳのビット数等を変更することによって、容易に実現できる。
【００７９】
また、ゲート電圧記憶回路２２は、同一のフラッシュメモリ１０の通常のデータ格納領域以外のメモリセルブロック（Ｅｘｔｒａ　Ｂｌｏｃｋ）を利用してデータを格納しても良いし、またはＲＯＭ構成にされたデータを格納しても良い。
【００８０】
さらに、ゲート電圧記憶回路２２は、データ書き込みテスト時のテスト結果に基づいて算出されたデータを、データ書き込みテスト時に格納しても良いし、または完成されたデバイス（チップ）として出荷する前の最終テスト時（但し、この場合はパッケージにテスト用の設定端子が必要となる。）に格納しても良い。
【００８１】
次に、フラッシュメモリ１０（チップ）に対するデータ書き込みテストの第１の実施例を図４のフローチャートを基にして説明する。
【００８２】
まず、チップ内のブロック０（但し、メインセルアレイ１１内のブロックでなくても良く、このようなゲート電圧設定のための専用の上記メモリセルブロック（Ｅｘｔｒａ　Ｂｌｏｃｋ）でも良い。）の各メモリセルに対して、１回（１パルス）のデータ書き込みパルス電圧であるコントロールゲート電圧Ｖｇ（＝Ｖｇｓ）の印加を実行する（ステップＳ１）。
【００８３】
この場合、メモリセルに印加する電圧条件は、各世代のデザインルールで製造されたチップ（例えば、０．１８μｍデザインルールで製造されたチップ等）によって異なるが、例えば、コントロールゲート電圧Ｖｇｓが８Ｖ、そのパルス電圧幅が１μｓとする。
【００８４】
コントロールゲート電圧Ｖｇが印加されたデータ書き込み後、ブロック０内のメモリセルの閾値電圧Ｖｔの分布における閾値電圧の最小値（Ｖｔｍｉｎ）の抽出を行なう（ステップＳ２）。（例えば、閾値電圧を測定して、最小値を決定する。）
閾値電圧の最小値（Ｖｔｍｉｎ）の抽出が完了すると、次にそのチップ内のメモリセルに最適なコントロール電圧Ｖｇｓを計算より求める（ステップＳ３）。
【００８５】
この場合、図５に示すようなフラッシュメモリのデータ書き込み特性を利用する。図５は、メモリセルに印加するコントロールゲート電圧Ｖｇｓが変化した場合のコントロールゲート電圧Ｖｇｓに対応する閾値電圧Ｖｔの分布を示すグラフである。
【００８６】
図５に示すように、コントロールゲート電圧Ｖｇｓが７．０Ｖ、７．５Ｖ、８．０Ｖ、８．５Ｖのように変化すると、各コントロールゲート電圧Ｖｇｓに対応するそれぞれの閾値電圧Ｖｔの分布のピーク値は、コントロールゲート電圧Ｖｇｓが上昇するとともに上昇し、このピーク値の上昇はそれぞれのコントロールゲート電圧Ｖｇｓの上昇分に等しいΔＶｇｓ分だけ閾値電圧が上昇している。これにより、ΔＶｇｓ＝ΔＶｔの関係が成立する。
【００８７】
ここで、ターゲットとなる基準閾値電圧をＶｒｅｆとし、例えば、Ｖｒｅｆ＝５Ｖ以上とする場合、データ書き込みテストの際に、コントロールゲート電圧Ｖｇｓを印加し、その結果、閾値電圧の最小値Ｖｔｍｉｎが得られたとすると、この閾値電圧の最小値Ｖｔｍｉｎが基準閾値電圧Ｖｒｅｆ以上にするために必要なコントロールゲート電圧（計算で求めるべきゲート電圧）Ｖｇｓｔは、上記のΔＶｇｓ＝ΔＶｔの関係から
Ｖｇｓｔ＝Ｖｇｓ−（Ｖｔｍｉｎ−Ｖｒｅｆ）・・・（１）
となる。
【００８８】
この場合、（１）式において、Ｖｇｓ＝８．０Ｖ、Ｖｒｅｆ＝５．０Ｖ、データ書き込みテスト後の閾値電圧の最小値Ｖｔｍｉｎが、例えば、Ｖｔｍｉｎ＝４．８２Ｖであるとすると、（１）より
Ｖｇｓｔ＝８Ｖ−（４．８２Ｖ−５Ｖ）＝８．１８Ｖ
となる。
【００８９】
ワード線レギュレータ回路２３から出力される電圧の分解能は、０．１Ｖであるので、この場合は上記電圧値を切り上げし、コントロールゲート電圧Ｖｇｓｔ＝８．２Ｖとなる。したがって、図２に示すゲート電圧記憶回路２２には、８．２Ｖの電圧値が記憶される。
【００９０】
また、データ書き込みスピードの速いｆａｓｔチップ（デバイス）の場合、１回のデータ書き込みパルス電圧の印加では（１）式のＶｔｍｉｎが５．５Ｖであるので、
Ｖｇｓｔ＝８Ｖ−（５．５Ｖ−５Ｖ）＝７．５Ｖ
となる。したがって、７．５Ｖの電圧値がゲート電圧記憶回路２２に記憶される。
【００９１】
さらに、データ書き込みスピードの遅いｓｌｏｗチップの場合、１回のデータ書き込みパルス電圧の印加では（１）式のＶｔｍｉｎが４．５Ｖであるので、
Ｖｇｓｔ＝８Ｖ−（４．５Ｖ−５Ｖ）＝８．５Ｖ
となる。したがって、８．５Ｖの電圧値がゲート電圧記憶回路２２に記憶される。
【００９２】
この結果、各チップ（デバイス）毎のメモリセルの電気的特性に応じて、データ書き込み（プログラム）パルス電圧を変更することにより、図６に示すように、ｆａｓｔチップ、ｔｙｐｉｃａｌチップおよびｓｌｏｗチップの各メモリセルの電気的特性にかかわらず、データ書き込みの後のそれぞれのメモリセルの閾値電圧Ｖｔの分布は５．０Ｖから約６．０Ｖ付近の間に分布する。
【００９３】
これにより、データ消去の際にメモリセルのトンネル酸化膜に、半導体基板とフローティングゲートとの間の電界に起因する余分なストレスが印加されることがなくなり、フラッシュメモリのデータ保持の信頼性の劣化が防止できるとともに、１回のデータ書き込みパルス電圧の印加によりメモリセルの閾値電圧が基準閾値電圧以上となり、データ書き込みスピードの低下も防止できる。
【００９４】
次に、フラッシュメモリ１０（チップ）に対するデータ書き込みテストの第２の実施例を説明する。
【００９５】
実際のチップ（デバイス）において、各チップ間におけるメモリセルの閾値電圧の分布のバラツキだけでなく、同一のチップ内のブロック間においてもメモリセルの閾値電圧の分布のバラツキが発生する。このような場合の閾値電圧の分布のバラツキの一例を図７に示す。図７に示すような閾値電圧バラツキの原因としては、メモリアレイにおけるコントロールゲート電圧およびドレイン電圧の配線抵抗による電圧低下が考えられ、この電圧低下により、結果としてブロック間の各メモリセルの閾値電圧のバラツキが生じると考えられる。
【００９６】
このような場合、各メモリセルの閾値電圧のバラツキにより、１回（１パルス）のデータ書き込みパルス電圧の印加では、データ書き込みが完了しないブロックが発生し、ブロック間の各メモリセルのデータ書き込みスピードにバラツキが生じる。このようなチップに対するデータ書き込みテストのフローチャートを図８に示す。
【００９７】
ステップＳ４、Ｓ５およびＳ６の手順は、図４に示す第１の実施例のステップＳ１、Ｓ２およびＳ３の手順と同様であり、コントロールゲート電圧を決定する式が（１）式と異なり、次式となる。
【００９８】
Ｖｇｓｔ＝Ｖｇｓ−（Ｖｔｍｉｎ−Ｖｒｅｆ）＋Ｖｃ・・・（２）
（２）式のＶｃは、ブロック間の閾値電圧のバラツキの補正値であり、例えば、０．２Ｖ程度である。
【００９９】
このように、ブロック間の閾値電圧のバラツキを補正することよって、チップ内の全ブロックにて１回（１パルス）のデータ書き込みパルス電圧の印加によりデータ書き込みが完了でき、安定したデータ書き込みスピードを実現することが可能となる。
【０１００】
この場合は、チップ内のブロック単位毎にデータ書き込みテストを行い、その結果に基づいて算出した値として、ゲート電圧記憶回路２２に、さらにＶｃの値とブロック番号が記憶されることになる。
【０１０１】
これにより、例えば、ブロック０では、
Ｖｇｓｔ＝Ｖｇｓ−（Ｖｔｍｉｎ−Ｖｒｅｆ）の値、
ブロック１では、
Ｖｇｓｔ＝Ｖｇｓ−（Ｖｔｍｉｎ−Ｖｒｅｆ）＋Ｖｃの値、
ブロック２では、
Ｖｇｓｔ＝Ｖｇｓ−（Ｖｔｍｉｎ−Ｖｒｅｆ）＋２Ｖｃの値
のようにブロック単位毎に異なるコントロールゲート電圧の値がワード線に出力される。
【０１０２】
尚、一般的にフラッシュメモリのメモリセル、ワード線駆動回路、ビット線駆動回路、共通ソース線駆動回路のレイアウトが決定されるとパターン配線長等が決まることから、ブロック毎のメモリセルの閾値電圧の分布の補正傾向が決まってしまう。このため、上記のブロック番号の記憶は不用となり、製造プロセスのバラツキから発生するＶｃの値のみを記憶し、各ブロック毎に所定のＶｃの値を振り分けても良い。また、各ブロック毎にこのＶｃを設定するのではなく、ワースト値のＶｃを固定して使用しても良い。
【０１０３】
次に、フラッシュメモリ１０（チップ）に対するデータ書き込みテストの第３の実施例を説明する。
【０１０４】
実際のフラッシュメモリ１０において、データ書き込みおよびデータ消去を交互に繰り返すＥ／Ｗ特性が重要となる。図２２は、メモリセルに１回（１パルス）のデータ書き込みパルス電圧を印加後、１０万回のＥ／Ｗ特性を確認し、その後１回（１パルス）のデータ書き込み電圧を印加したメモリセルの閾値電圧Ｖｔの分布を示すグラフである。図２１に示すように、１０万回のＥ／Ｗ特性を確認後に１回の（１パルス）のデータ書き込みパルス電圧を印加したメモリセルの閾値電圧Ｖｔの分布は、１０万回のＥ／Ｗ特性を確認する前の分布と比較して低電圧側にシフトしている。これにより、データ書き込みおよびデータ消去を交互に繰り返した後のメモリセルの閾値電圧に分布も基準閾値電圧以上になるように保証する必要がある。
【０１０５】
このような場合のチップに対するデータ書き込みテストのフローチャートを図９に示す。
【０１０６】
ステップＳ７、Ｓ８およびＳ９の手順は、図８に示す第２の実施例のステップＳ４、Ｓ５およびＳ６の手順と同様であり、コントロールゲート電圧を決定する式が（２）式と異なり、次式となる。
【０１０７】
Ｖｇｓｔ＝Ｖｇｓ−（Ｖｍｉｎ−Ｖｒｅｆ）＋Ｖｃ＋Ｖｃｅｗ・・（３）
（３）式のＶｃｅｓは、データ書き込みおよびデータ消去を交互に繰り返し（Ｅ／Ｗ）後の閾値電圧Ｖｔの分布の低電圧側へのシフトを見込んだ補正値であり、例えば０．２Ｖ程度である。
【０１０８】
したがって、このような補正値を追加することにより、データ書き込みおよびデータ消去を交互に繰り返し（Ｅ／Ｗ）後においても１回（１パルス）のデータ書き込みパルス電圧の印加によりデータ書き込みが完了でき、データ書き込みスピードの低下が防止できる。
【０１０９】
ここで、データ書き込みテストの第１の実施例に対する補正として、
Ｖｇｓｔ＝Ｖｇｓ−（Ｖｍｉｎ−Ｖｒｅｆ）＋Ｖｃｅｗ・・・（４）
としても良い。
【０１１０】
この場合は、データ書き込みテストの実施後のテスト結果を基に算出した値にＶｃｅｗを加味した値を、ゲート電圧記憶回路２２に記憶させれば良い。また、データ書き込みテスト後のテスト結果に基づいて算出した値とＶｃｅｗの値を別々にゲート電圧記憶回路２２に記憶しておき、別途、上記Ｅ／Ｗの回数をカウントするカウンタ回路を設置し、最初は、第１の実施例または第２の実施例にてそれぞれ算出した（１）式または（２）式で表されるコントロールゲート電圧をワード線に出力し、カウンタ回路が所定の回数の値に達した後、ワード線にＶｃｅｗを加算した値となる（４）式で表されるコントロールゲート電圧を出力しても良い。
【０１１１】
次に、複数の異なるデータ（情報）の記憶が可能な多値フラッシュメモリ（チップ）に対するデータ書き込みテストの第４の実施例を説明する。
【０１１２】
多値フラッシュメモリである四値フラッシュメモリの各メモリセル閾値電圧の分布状態を図１０に示す。図１０に示すように、四値フラッシュメモリでは、Ｄａｔａ“１１”がデータ消去（イレース）状態、Ｄａｔａ“１０”がデータ書き込み（プログラム）状態、Ｄａｔａ“０１”がデータ書き込み（プログラム）状態、Ｄａｔａ“００”がデータ書き込み（プログラム）状態の４つの状態が存在する。
【０１１３】
本実施例では、特に、Ｄａｔａ“１０”の基準閾値電圧３．７Ｖ〜４．０Ｖの場合のデータ書き込みテストについて説明する。
【０１１４】
Ｄａｔａ“１０”についてデータ書き込みを行なう場合に、メモリセルのコントロールゲートに印加する電圧波形を図１１に示す。図１１に示すように、この場合、メモリセルに印加される最初（ｓｔａｒｔ）のコントロールゲート電圧（ワード線への印加電圧）は、Ｖｇ１０である。一方、図１１に示すゲート電圧ステップのデータ書き込み（プログラム）アルゴリズムを用いた場合の閾値電圧の変化を図１２に示す。
【０１１５】
例えば、基準閾値電圧が３．７Ｖのベリファイセルを用いる場合、最初のデータ書き込みパルス電圧の印加をゲート電圧Ｖｇ１０で実施し、次に、ベリファイ（検証）を実施する。ここで、ベリファイは、データ書き込みパルス電圧を印加後のメモリセルの閾値電圧を検証することであり、データ読出しと同じ方式で行い、図１８に示すのデータ読出し用のリファレンスセル１８６に換えて、データ書き込みベリファイ用のリファレンスセル（ベリファイセル）を用いる。
【０１１６】
データ書き込みの実施後、閾値電圧が３．７Ｖ以上と判断された場合、それらのメモリセルへのデータ書き込みパルス電圧の印加を終了する。（具体的には、ドレイン電圧を出力しない。）
一方、データ書き込みの実施後、閾値電圧が３．７Ｖ以下のメモリセルに対しては、再度データ書き込みパルス電圧を印加する。この場合のゲート電圧は、図１１に示すＶｇ１０＋ΔＶｇである。ΔＶｇは、例えば、２００ｍＶである。尚、この値は、分布幅をいくつに設定したかによって決定され、理論的には、分布幅が２００ｍＶならΔＶｔ＝ΔＶｇとなる。
【０１１７】
データ書き込みパルス電圧を印加後、再び、ベリファイを行なう。ここで、メモリセルの閾値電圧が３．７Ｖ以上であると判断されると、データ書き込みパルス電圧の印加を停止し、もし、閾値電圧の３．７Ｖ以下のメモリセルが存在していれば、ゲート電圧をＶｇ１０＋２×ΔＶｇとして、データ書き込みパルス電圧を印加する。このように、全てのメモリセルの閾値電圧が３．７Ｖ以上となるまで、この動作を繰り返す。
【０１１８】
また、Ｄａｔａ“０１”およびＤａｔａ“００”のデータ書き込むを行う場合、データ書き込み（プログラム）パルス電圧のｓｔａｒｔゲート電圧を、それぞれＶｇ０１、Ｖｇ００としてデータ書き込み（プログラム）を行なう。この場合のベリファイセルの基準閾値電圧をそれぞれ、４．７Ｖ、５．７Ｖとして、上記と同様の方式でデータ書き込みを行う。
【０１１９】
ここで、図１１に示すゲート電圧（Ｐｒｏｇｒａｍ　ｓｔａｒｔ電圧）を固定した場合、第１の実施例にて説明したように、各チップ毎にメモリセルの閾値電圧の分布のバラツキがあるため、各チップ毎に上記ゲート電圧を同一に設定すると、明らかに閾値電圧の分布のバラツキが発生し、前述のデータ書き込みスピードの劣化およびデータ書き込み後のデータ読み出しエラーが発生する。
【０１２０】
このような四値フラッシュメモリにおける問題点を改善したデータ書き込みテストのフローチャートを図１３に示す。
【０１２１】
図１３に示すように、チップ内の任意のブロック（例えば、ブロック０またはゲート電圧決定のための専用ブロック（Ｅｘｔｒａ　Ｂｌｏｃｋ））の各メモリセルに対して、１回（１パルス）のデータ書き込みパルス電圧であるコントロールゲート電圧Ｖｇを印加してデータ書き込み（プログラム）を実施する（ステップＳ１０）。
【０１２２】
例えば、コントロールゲート電圧Ｖｇ＝６Ｖ、そのパルス電圧幅１μｓにて、１回のデータ書き込みパルス電圧の印加を行なった場合のデータ書き込み後のメモリセルの閾値電圧の分布を図１４に示す。
【０１２３】
このチップの任意のブロック内のメモリセルの閾値電圧の分布を測定し、閾値電圧の最大値（Ｖｔｍａｘ）および閾値電圧の最小値（Ｖｔｍｉｎ）の値を抽出する（ステップＳ１１）。
【０１２４】
ここで、図１４に示すように、例えば、閾値電圧の最大値（Ｖｔｍａｘ）＝４．４Ｖ、閾値電圧の最小値（Ｖｔｍｉｎ）＝３．４Ｖとする。多値フラッシュメモリの場合では、閾値電圧の最大値（Ｖｔｍａｘ）の値が必要となる。閾値電圧の最大値（Ｖｔｍａｘ）の値が必要となる理由は、４種類のデータのデータ読み出しエラーを防止するため、各データに対応するメモリセルの閾値電圧の分布の広がりを抑える必要があるからである。これにより、多値フラッシュメモリでは、閾値電圧の上限値および下限値を考慮しなければならず、図１２に示すように、閾値電圧の最大値（Ｖｔｍａｘ）付近に閾値電圧の分布を収束させるようにデータ書き込みを行う。また、補正値Ｖｃもマイナスで挿入されている。
【０１２５】
これらの値を用いて、まず、Ｄａｔａ“１０”のデータ書き込み（プログラム）のためのコントロールゲート電圧Ｖｇ１０を（５）式にて計算する（ステップＳ１２）。
【０１２６】
Ｖｇ１０＝Ｖｇｓ−（Ｖｔｍａｘ−Ｖｔｈ１０）−Ｖｃ・・・（５）
（５）式のＶｃはブロック間のバラツキを補正する電圧であり、Ｖｔｈ１０はＤａｔａ“１０”のベリファイを行う際のベリファイセルの基準閾値電圧であり、この場合、基準閾値電圧を３．７Ｖとする。
【０１２７】
Ｖｃはメモリセルの電気的特性のバラツキを保証するため電圧値であり、この場合、０．４Ｖ程度である。
【０１２８】
また図１３に示すように、Ｄａｔａ“０１”およびＤａｔａ“００”については、ベリファイ用のリファレンスセルの基準閾値電圧がそれぞれ４．７Ｖおよび５．７Ｖである。このため、これらの基準閾値電圧は、Ｄａｔａ”１０”の基準閾値電圧の３．７Ｖとそれぞれ１．０Ｖおよび２．０Ｖの違いがある。
【０１２９】
これにより、Ｄａｔａ”０１”およびＤａｔａ”００”のデータ書き込み（プログラム）のためのコントロールゲート電圧Ｖｇ０１およびＶｇ００をそれぞれ（６）および（７）式にて計算する（ステップＳ１３およびＳ１４）。
【０１３０】
Ｖｇ０１＝Ｖｇ１０＋１Ｖ・・・（６）
（一般的表示では、Ｖｇ０１＝Ｖｇ１０＋（Ｖｔｈ０１―Ｖｔｈ１０））
Ｖｇ００＝Ｖｇ１０＋２Ｖ・・・（７）
（一般的表示では、Ｖｇ００＝Ｖｇ１０＋（Ｖｔｈ００―Ｖｔｈ１０））
以上のように、データ書き込みテストの結果から算出したコントロールゲート電圧の値を、データ電圧記憶回路２２に記憶させれば良い。そして、データ書き込みパルス電圧の印加時に、Ｄａｔａ“１０”、Ｄａｔａ“０１”およびＤａｔａ“００”に対応するデータをデータ電圧記憶回路２２から読み出し、コントロールゲート電圧に変換してワード線に出力すれば良い。
【０１３１】
尚、四値フラッシュメモリでは、４種類のデータのデータ読み出しエラーを防止するため、各データに対応するメモリセルの閾値電圧の分布の広がりを抑える必要があることから、補正値Ｖｃを挿入しているが、チップ内のブロック間のメモリセルの閾値電圧の分布のバラツキが無視できる範囲であれば、Ｖｃの値は入れなくとも良い。また、データ書き込みおよびデータ消去を交互に繰り返す（Ｅ／Ｗ）ことを考慮して補正値Ｖｃｅｗを挿入しても良い。
【０１３２】
ここで、四値フラッシュメモリでは、４種類のデータに対応する閾値電圧の分布の広がりを抑えるため、図３に示すワード線レギュレータ回路２３内の分割電圧出力線を構成する抵抗Ｒ１の個数を２倍にするとともに、４ビットの制御信号ＷＬＶＳをさらに１ビット増加することにより抵抗値選択ロジック回路３２から出力される制御信号Ｈも３２種類選択できるように設定できる。これにより、四値フラッシュメモリのワード線レギュレータ回路２３は、最大分割電圧および最小分割電圧の間の分解能が０．０５Ｖ単位である回路構成となる。
【０１３３】
このような方式を用いてデータ書き込み（プログラム）を行うと、各チップにてメモリセルの閾値電圧のバラツキが生じても、ウエハ内の全チップにおけるメモリセルの閾値電圧の分布は、図１０に示す各データ毎に完全に分離された分布となる。この場合、データ書き込み完了に必要なデータ書き込みパルス電圧の印加回数（パルス回数）は、図１２に示すように全チップにて同じであり約６回程度となる。
【０１３４】
以上、この方式を用いた四値フラッシュメモリは、各チップ毎に最適なデータ書き込みゲート電圧の設定が可能となり、データ書き込みスピードおよびメモリセルの閾値電圧の分布幅の最適化が図れる。これにより、データ読み出しエラーを防止し、信頼性の高い四値フラッシュメモリ（デバイス）の実現が可能となる。
【０１３５】
次に、四値フラッシュメモリ（チップ）に対するデータ書き込みテストの第５の実施例を説明する。
【０１３６】
第４の実施例での四値フラッシュメモリのデータ書き込みは、Ｄａｔａ”００“に関してもゲート電圧ステップのデータ書き込み（プログラム）アルゴリズムを用いて行っているが、実際には、データ書き込み時間を可能な限り低減したい。Ｄａｔａ“００”は、閾値電圧が５．７Ｖ以上あれば良く、他のデータのＤａｔａ“０１”およびＤａｔａ“１０”と比較して閾値電圧の分布の広がりを抑える必要はない。このため、Ｄａｔａ“００”のデータ書き込みは、１回（１パルス）のデータ書き込みパルス電圧の印加にて行なう場合がある。
【０１３７】
このような場合のデータ書き込みテストのフローチャートを図１５に示す。ステップＳ１５、Ｓ１６、Ｓ１７、Ｓ１８およびＳ１９の手順は、図１３に示す第４の実施例のステップＳ１０、Ｓ１１、Ｓ１２、Ｓ１３およびＳ１４の手順と同様であり、Ｄａｔａ“００”のコントロールゲート電圧を決定する式が（７）式と異なり、下記のような計算式となる。
【０１３８】
Ｖｇ００＝Ｖｇ１０＋２Ｖ＋（Ｖｔｍａｘ−Ｖｔｍｉｎ）・・（８）
（一般的表示では、Ｖｇ００＝Ｖｇ１０＋（Ｖｔｈ００−Ｖｔｈ１０）＋（Ｖｔｍａｘ−Ｖｔｍｉｎ））
これにより、最終のＤａｔａ“００”を１回（１パルス）のデータ書き込みパルス電圧の印加にて、５．７Ｖ以上の閾値電圧となるメモリセルへのデータ書き込みが可能となり、データ書き込み時間の短縮が図れる。
【０１３９】
以上、データ書き込みテストを行い、そのテスト結果に基づいて各チップ毎にデータ書き込みパルス電圧が設定されることによって、データ読み出しエラーを防止し、信頼性の高い四値フラッシュメモリが実現できる。
【０１４０】
また、データ書き込みテストの第４および第５の実施例にて説明した四値フラッシュメモリは、メモリセルの各データに対応する閾値電圧の分布の広がりをさらに狭くできることから、一層の記憶データの多値化が図れる。
【０１４１】
本発明の不揮発性半導体メモリ装置であるフラッシュメモリは、データ書き込み方式が、各チップ単位にて最適なデータ書き込みパルス電圧が設定される方式であるとともに、チャネルホットエレクトロン方式、または、ＦＮ（Ｆｏｗｌｅｒ−Ｎｏｒｄｈｅｉｍ）トンネル現象を用いた方式等にも適用できるものであり、所定のデータ書き込み方式に限定されるものではない。
【０１４２】
また、本発明の不揮発性半導体メモリ装置であるフラッシュメモリは、ＮＯＲ型、ＮＡＮＤ型、ＡＮＤ型等のメモリセルアレイ構造にも限定されるものではないし、トリプルウェル構造等のメモリセルの構造にも限定されるものではない。
【０１４３】
【発明の効果】
本発明の不揮発性半導体メモリ装置は、電気的に情報の書き込みおよび消去が可能な複数のメモリセルが行方向および列方向に配置され、メモリセルの制御端子が行方向の各行線に接続され、メモリセルの駆動端子が列方向の各列線に接続されており、各行線に印加する制御電圧を制御する電圧制御手段が、チップ毎の該複数のメモリセルの閾値電圧分布に応じて、該閾値電圧分布を所定範囲に収めるように求められた値を格納する記憶手段と、該記憶手段に格納された値を用いて該制御電圧を各行線にそれぞれ出力する電圧出力手段とを有することにより、各チップ（デバイス）毎にデータ書き込み（プログラム）後のメモリセルの閾値電圧Ｖｔの分布を制御し、データ保持の信頼性の劣化およびデータ書き込みスピードの低下が防止できる。
【図面の簡単な説明】
【図１】本発明の実施形態の不揮発性半導体メモリ装置であるフラッシュメモリの概略を示すブロック図である。
【図２】本発明のフラッシュメモリに設けられたワード線電圧制御回路の概要を示すブロック図である。
【図３】図２に示すワード線電圧制御回路内のワード線レギュレータ回路の一例を示す回路図である。
【図４】本発明のフラッシュメモリに対するデータ書き込みテストの第１の実施例を示すフローチャートである。
【図５】ゲート電圧が変化した場合のメモリセルの閾値電圧Ｖｔの分布を示すグラフである。
【図６】ｆａｓｔチップ、ｔｙｐｉｃａｌチップおよびｓｌｏｗチップにおけるデータ書き込みの後の各メモリセルの閾値電圧Ｖｔの分布を示すグラフである。
【図７】同一のチップ内でのブロック間におけるメモリセルの閾値電圧の分布のバラツキを示すグラフである。
【図８】本発明のフラッシュメモリに対するデータ書き込みテストの第２の実施例を示すフローチャートである。
【図９】本発明のフラッシュメモリに対するデータ書き込みテストの第３の実施例を示すフローチャートである。
【図１０】四値フラッシュメモリの各データに対応する閾値電圧の分布状態を示すグラフである。
【図１１】四値フラッシュメモリにＤａｔａ“１０”のデータ書き込みを行なう場合のメモリセルのコントロールゲートに印加する電圧波形を示すグラフである。
【図１２】図１１に示すゲート電圧ステップのデータ書き込み（プログラム）アルゴリズムを用いた場合の閾値電圧の変化を示すグラフである。
【図１３】本発明のフラッシュメモリに対するデータ書き込みテストの第４の実施例を示すフローチャートである。
【図１４】１回のデータ書き込みパルス電圧の印加を行なった場合のデータ書き込み後のメモリセルの閾値電圧の分布を示すグラフである。
【図１５】本発明のフラッシュメモリに対するデータ書き込みテストの第５の実施例を示すフローチャートである。
【図１６】ＥＴＯＸ型フラッシュメモリのメモリセルの模式的な断面図である。
【図１７】二値フラッシュメモリ内に設けられたメモリセルの閾値電圧の分布を示すグラフである。
【図１８】センスアンプ回路の概略の構成を示す回路図である。
【図１９】メインアレイのメモリセルであるメインセルの１ブロックの構成を示す回路図である。
【図２０】データ書き込み後におけるメモリセルの閾値電圧Ｖｔの分布を示すグラフである。
【図２１】ｆａｓｔチップ、ｔｙｐｉｃａｌチップおよびｓｌｏｗチップにおけるデータ書き込みの後の各メモリセルの閾値電圧Ｖｔの分布を示すグラフである。
【図２２】データ消去動作およびデータ書き込み動作が交互に繰り返された後のメモリセルの閾値電圧の分布を示すグラフである。
【符号の説明】
１０　　フラッシュメモリ
１１　　メモリセルアレイ
１２　　ワード線電圧供給回路
１２ａ　ワード線電圧制御回路
１２ｂ　ワード線ドライバ回路
１３　　共通ソース線電圧供給回路
１４　　ビット線電圧供給回路
１５　　制御回路
２１　　プログラム／イレース制御回路
２２　　ゲート電圧記憶回路
２３　　ワード線レギュレータ回路
３１　　レベルシフタ回路
３２　　抵抗値選択ロジック回路
３４　　増幅器
【図１】
2004071082.tif 000005
【図２】
2004071082.tif 000006
【図３】
2004071082.tif 000007
【図４】
2004071082.tif 000008
【図５】
2004071082.tif 000009
【図６】
2004071082.tif 000010
【図７】
2004071082.tif 000011
【図８】
2004071082.tif 000012
【図９】
2004071082.tif 000013
【図１０】
2004071082.tif 000014
【図１１】
2004071082.tif 000015
【図１２】
2004071082.tif 000016
【図１３】
2004071082.tif 000017
【図１４】
2004071082.tif 000018
【図１５】
2004071082.tif 000019
【図１６】
2004071082.tif 000020
【図１７】
2004071082.tif 000021
【図１８】
2004071082.tif 000022
【図１９】
2004071082.tif 000023
【図２０】
2004071082.tif 000024
【図２１】
2004071082.tif 000025
【図２２】
2004071082.tif 000026