(57)【要約】【課題】閾値設定を自動化した上で、さらにリファレンスセルの閾値を所望の値に精度よく設定する。【解決手段】電気的に書き換え可能なメモリセルの配列１と、前記メモリセルに保持されたデータを読み出すときに比較の基準となる閾値を有するリファレンスセル２と、前記リファレンスセルに閾値を設定する設定回路と、前記リファレンスセルに閾値として設定された値の判定基準となる、異なる基準値をそれぞれ有する複数の基準セル３とを備え、前記設定回路は、前記リファレンスセル２への閾値の書き込み回路８，１２と、前記書き込み回路８，１２による書き込みの結果、前記リファレンスセル２へ書き込まれた閾値が前記複数の基準セル３のいずれかの基準値に達したか否かを判定する判定部４と、前記それぞれの基準値にしたがって、前記リファレンスセル２へ閾値を再度設定するときの書き込み信号を制御する制御回路６とを具備した半導体記憶装置である。【選択図】図２
2007164934.tif 000002
【特許請求の範囲】
【請求項１】
電気的に書き換え可能なメモリセルの配列と、
前記メモリセルに保持されたデータを読み出すときに比較の基準となる閾値を有するリファレンスセルと、
前記リファレンスセルに閾値を設定する設定回路と、
前記リファレンスセルに閾値として設定された値の判定基準となる、異なる基準値をそれぞれ有する複数の基準セルとを備え、
前記設定回路は、前記リファレンスセルへの閾値の書き込み回路と、前記書き込み回路による書き込みの結果、前記リファレンスセルへ書き込まれた閾値が前記複数の基準セルのいずれかの基準値に達したか否かを判定する判定部と、前記それぞれの基準値にしたがって、前記リファレンスセルへ閾値を再度設定するときの書き込み信号を制御する制御回路とを具備した半導体記憶装置。
【請求項２】
前記複数の基準セルは、第１基準値を有する第１基準セルと第２基準値を有する第２基準セルとを含み、
前記制御回路は、前記リファレンスセルの値が第１基準値に達していないと判断された場合に、前記書き込み信号を第１レベルとし、前記リファレンスセルの値が第１基準値に達していると判断された場合に、前記書き込み信号を第１レベルよりも弱い第２レベルに制御する請求項１に記載の半導体記憶装置。
【請求項３】
電気的に書き換え可能なメモリセルの配列と、
前記メモリセルに保持されたデータを読み出すときに比較の基準となる閾値を有するリファレンスセルと、
前記リファレンスセルに閾値を設定する設定回路と、
前記リファレンスセルに閾値として設定された値の判定基準となる基準値を有する基準セルと、
前記基準セルから基準値を読み出すときの基準ワード線電圧を制御する電圧制御回路と、を備え、
前記設定回路は、前記リファレンスセルへの閾値の書き込み回路と、前記リファレンスセルに書き込まれた閾値が前記基準ワード線電圧をそれぞれ異なる値に設定して前記基準セルから読み出されたそれぞれの基準値のいずれかに達したか否かを判定する判定部と、前記それぞれの基準値にしたがって、前記リファレンスセルへ閾値を再度設定するときの書き込み信号を制御する制御回路とを具備した半導体記憶装置。
【請求項４】
電気的に書き換え可能なメモリセルの配列を形成する工程と、
前記メモリセルに保持されたデータを読み出すときに比較の基準となる閾値を有するリファレンスセルを形成する工程と、
前記リファレンスセルに閾値として設定される値の判定基準となる、異なる基準値を有する複数の基準セルを形成する工程と、
前記リファレンスセルへの閾値の書き込み回路を形成する工程と、
前記書き込み回路による書き込みの結果、前記リファレンスセルの閾値が前記複数の基準セルのいずれかの基準値に達したか否かを判定する工程と、
前記それぞれの基準値にしたがって、前記リファレンスセルへ閾値を再度設定するときの書き込み信号を制御する工程とを具備した半導体記憶装置の製造方法。
【請求項５】
電気的に書き換え可能なメモリセルの配列を形成する工程と、
前記メモリセルに保持されたデータを読み出すときに比較の基準となる閾値を有するリファレンスセルを形成する工程と、
前記リファレンスセルの閾値として設定される値の判定基準となる基準値を有する基準
セルを形成する工程と、
前記基準セルから基準値を読み出すときの基準ワード線電圧を制御する電圧制御回路を形成する工程と、
前記リファレンスセルへの閾値の書き込み回路を形成する工程と、
前記リファレンスセルの閾値が前記基準ワード線電圧をそれぞれ異なる値に設定して前記基準セルから読み出されたそれぞれの基準値のいずれかに達したか否かを判定する工程と、
前記それぞれの基準値にしたがって、前記リファレンスセルへ閾値を再度設定するときの書き込み信号を制御する工程とを具備した半導体記憶装置の製造方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、本発明は不揮発性半導体記憶装置の読み出しの基準となるリファレンスセルの閾値を制御する回路に関する。
【背景技術】
【０００２】
不揮発性メモリ（不揮発性半導体記憶装置）は、データを保持するメモリセルを配列したメモリセルアレイで構成される。メモリセルからデータを読み出すとき、データを消去しその結果を確認するとき、あるいはデータを書き込みその結果を確認するとき（以下、このような消去結果、書き込み結果の確認をベリファイという）には、メモリセルと同様のリファレンスセルを用いて、メモリセルとリファレンスセルとで読み出し電流を比較する。そして、その電流値の大小によって、メモリセルに保持されたデータが０か１かが判定される。そのため、リファレンスセルのデータは、閾値と呼ばれる。
【０００３】
従来、これらリファレンスセルの閾値は試験工程の初期に設定され、それ以降は基本的に再設定は行われない。このため、試験工程で使用されるテスタ等が使用され、外部から書き換えのパルスを不揮発性メモリに入力することによりリファレンスセルの閾値が設定されていた。その場合、リファレンスセルの閾値を精度よく設定するために不揮発性メモリのチップ外部からリファレンスセル電流を測定する必要があり、これらは試験時間を増大させる要因となっていた。
【０００４】
ただし、この技術によれば、チップ外部からプログラム電圧、プログラムパルスを入力し、その都度、リファレンスセル電流を測定していたため、電流値の変化を見てプログラム電圧やプログラムパルス幅を調整することが可能であった。したがって、時間は掛かるもののリファレンスセルの閾値を所望の値に精度よく設定することが可能であった。
【０００５】
従来のように、リファレンスセルの数が少ない場合は、これまでの方法でも実使用できた。しかし、高速読み出し等を実現するためにリファレンスセルをＩ／Ｏごと、例えば、同一タイミングで読み出されるデータビット幅に相当する各ビットごとに設けたた場合には、設定が必要なリファレンスセル数が増加し試験時間の増大が顕著となる。
【０００６】
また、リファレンスセルは読み出しやベリファイの基準となるセルであるため、その値の設定には精度を要する。試験時間の問題を解決するだけであれば、メモリセルの書き換えに、従来から自動書き換えアルゴリズムも使用されている。
【０００７】
図１に従来の自動書き換えアルゴリズムを内蔵した不揮発性メモリの構成例を示す。図１においてメモリセルアレイ３０１の書き換えは外部からの書き換えコマンドにより内部の書き換えステートマシン３０６を使用して書き換えを行う。その際にはまず最初にデータ確認（Ｖｅｒｉｆｙ）を行う。具体的には昇圧回路３０９とレギュレータ３１０によりＶｅｒｉｆｙ時のワード線電圧（リファレンスセルのゲートにも同じ電圧を印加）を生成し、通常の読み出しと同様にセンスアンプ３１４を使用してデータを読み出す。
【０００８】
一方、リファレンスセルは、上記メモリセルへのデータの書き込み、メモリセルからのデータの読み出しにおいてデータの判定基準となる値を保持する。このリファレンスセルへの値の設定時には設定用のモードを起動し、外部入力より電圧を印加して消去または書き込みを行う。そして、書き込み後にデータＩ／Ｏ３０５を通じてリファレンスセルの電流値を測定し、これを繰り返すことでリファレンスセルの閾値を所望の設定値に合わせ込んでいる。なお、消去時にゲートに印加する負電圧は内部の昇圧回路３０９およびレギュ
レータ３１０を使用する。
【０００９】
その合わせ込みのシーケンスで書き込まれたデータを確認部３０４（図１のＶｅｒｉｆｙデータ判定と記載）で判定してＰａｓｓ／Ｆａｉｌの情報を書き換えステートマシン３０６に戻す。Ｐａｓｓの場合は、書き換え動作を終了し、Ｆａｉｌの場合は、実際の書き換えを実施する。書き換えを行う際も昇圧回路３０９とレギュレータ３１０により書き換え時のワード線電圧、ドレイン電圧、ソース電圧（ウェル電圧の場合もある）を生成して、リファレンスセルを書き換える。
【００１０】
しかし、従来の自動書き換えアルゴリズムではリファレンスセルの閾値を所望の値に精度よく設定することができなかった。
【特許文献１】特開平１１−３０６７８５号公報
【特許文献２】特開平５−３６２８８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
上述した技術では、リファレンスセルを増加させた場合に、閾値設定によって試験時間を増加させてしまう問題があった。また、リファレンスセルの閾値設定を効率的に行う場合も、信頼性を確保してメモリセルからの高速な読み出しをするために、閾値は所望の値に精度よく設定される必要がある。本発明では試験時間の増加を抑えるために閾値設定を自動化した上で、さらにリファレンスセルの閾値を所望の値に精度よく設定する不揮発性半導体記憶装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明は前記課題を解決するために、以下の手段を採用した。すなわち、本発明は、電気的に書き換え可能なメモリセルの配列と、前記メモリセルに保持されたデータを読み出すときに比較の基準となる閾値を有するリファレンスセルと、前記リファレンスセルに閾値を設定する設定回路と、前記リファレンスセルに閾値として設定された値の判定基準となる、異なる基準値をそれぞれ有する複数の基準セルとを備え、前記設定回路は、前記リファレンスセルへの閾値の書き込み回路と、前記リファレンスセルへ書き込まれた閾値が前記複数の基準セルのいずれかの基準値に達したか否かを判定する判定部と、前記それぞれの基準値にしたがって、前記リファレンスセルへ閾値を再度設定するときの書き込み信号を制御する制御回路とを具備した半導体記憶装置である。
【００１３】
本発明は、また、電気的に書き換え可能なメモリセルの配列と、前記メモリセルに保持されたデータを読み出すときに比較の基準となる閾値を有するリファレンスセルと、前記リファレンスセルに閾値を設定する設定回路と、前記リファレンスセルに閾値として設定された値の判定基準となる基準値を有する基準セルと、前記基準セルから基準値を読み出すときの基準ワード線電圧を制御する電圧制御回路と、を備え、前記設定回路は、前記リファレンスセルへの閾値の書き込み回路と、前記リファレンスセルに書き込まれた閾値が前記基準ワード線電圧をそれぞれ異なる値に設定して前記基準セルから読み出された、それぞの基準値のいずれかに達したか否かを判定する判定部と、前記それぞれの基準値にしたがって、前記リファレンスセルへ閾値を再度設定するときの書き込み信号を制御する制御回路とを具備した半導体記憶装置であってもよい。
【００１４】
本発明によれば、リファレンスセルに書き込まれた閾値が複数の基準値のいずれかに達したか否かを判定し、それぞれの基準値に達した場合に、その基準値に応じて、前記リファレンスセルへ閾値を再度設定するときの書き込み信号を制御する。したがって、リファレンスセルに書き込まれた閾値のレベルに応じて、リファレンスセルへ閾値を再度設定するときの書き込み量を制御できる。
【発明の効果】
【００１５】
本発明によれば、リファレンスセルの閾値を所望の値に精度よく設定することができる。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照して本発明を実施するための最良の形態（以下、実施形態という）に係る不揮発性半導体記憶装置（以下、単に半導体装置という）について説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【００１７】
《発明の骨子》
以下、本発明の実施形態の骨子を説明する。本実施形態の半導体装置は、既存の自動書き換え回路を流用して、リファレンスセルの閾値を自動で、すなわち、半導体装置自体に内蔵する制御シーケンスで設定する。この閾値設定をプログラムと呼ぶ。
【００１８】
その際、プログラムにおけるゲート電圧あるいはドレイン電圧を可変にする。そして、設定されるリファレンスセルの閾値が第１の基準値を越えたと判断されると、プログラムにおけるゲート電圧あるいはドレイン電圧を下げる。すなわち、設定されるリファレンスセルの閾値が所望の値（最終的な目標値）から所定の範囲に近づいたと判断される場合に、ゲート電圧あるいはドレイン電圧を下げ、書き込み電流を小さくして、きめ細かな書き込みを実現する。これにより、リファレンスセルの閾値を所望の値に精度よく設定する。これらのゲート電圧あるいはドレイン電圧はレジスタ設定にて外部から設定し、内部の制御回路にて制御する。
【００１９】
ただし、電圧を変更する際の判定（設定されるリファレンスセルの閾値が所望の値から所定の範囲に近づいたか否か）は、判定の基準となるセルを複数持つことで可能である。また、判定の基準となる単一のセルにおいて基準値読み出しの際のゲート電圧を変更にすることで、そのセルから出力される電流値を異なる値に制御し、見かけ上判定の基準値を複数個生成することができる。  
【００２０】
さらに、設定されるリファレンスセルの閾値の書き込みでは、ゲート電圧あるいはドレイン電圧を可変にする以外に、プログラムパルス幅を可変にすることでもリファレンスセルの閾値を所望の値に精度よく設定することができる。
【００２１】
このような構成により、本発明により、試験時間を短くするために閾値設定を自動化した上で、リファレンスセルの閾値を所望の値に精度よく設定することが可能となる。
【００２２】
《実施形態》
図２に、本発明の実施形態に係る半導体装置の構成を示す。
【００２３】
＜構成＞
図２のように、この半導体装置は、不揮発性のメモリセルを配列したメモリセルアレイ１（本発明のメモリセルの配列に相当）と、メモリセルアレイ１から読み出すべきデータのアドレスが入力されるアドレスバッファ７と、入力されたアドレスにしたがってメモリセルアレイ１のワード線（列）を選択するロウデコーダ１１と、メモリセルアレイ１のカラム（行）を選択するカラムデコーダ１３と、メモリセルアレイ１に含まれるメモリセルからのデータ読み出しのときに、保持されているデータが０か１かを判定する判定基準となる閾値を保持する読み出し時参照セルアレイ２（図２には、Ｒｅａｄ  Ｒｅｆセルアレイと記載）と、メモリセルアレイ１のメモリセルから読み出されたデータに対応する電流と、読み出し時参照セルアレイ２のメモリセルから読み出されたデータに対応する電流とを
比較して比較結果を増幅するセンスアンプ１４と、センスアンプ１４の出力信号を外部への出力データとして出力とし、外部からメモリセルアレイ１への書き込みデータを入力データとして受け付けるデータ入出力インターフェース５（図２では、データＩ／Ｏと記載）と、メモリセルアレイ１のデータ書き換え（消去またはデータ書き込み）のときに、センスアンプ１４の出力信号からデータ書き換えが完了したか否かを判定する確認部４（図２では、Ｖｅｒｉｆｙデータ判定と記載、本発明の判定部に相当）と、メモリセルアレイ１からのデータの読み出し、メモリセルアレイ１へのデータの書き込みを制御する書き換えステートマシン６（本発明の制御回路に相当）と、読み出し時参照セルアレイ２への閾値の設定および読み出しのときに、ワード線に電圧を供給するワード線ドライバ１２（図２では、ＷＬ  Ｄｒｉｖｅｒと記載）と、ワード線ドライバ１２に対して、読み出し時参照セルアレイ２へのワード線電圧を供給するＤＡコンバータ８（デジタルアナログ変換器、図２ではＤＡＣと記載）と、読み出し時参照セルアレイ２への閾値の設定時に設定完了か否かを判定する基準となる基準値を有する基準セルアレイ３とを有している。
【００２４】
読み出し時参照セルアレイ２は、上記閾値を保持する複数のリファレンスセル（以下、データの読み出し時に参照されるメモリセルを単にリファレンスセルという）を有している。また、基準セルアレイ３は、基準値を保持する複数の基準セルを有している。
【００２５】
このように、図２の構成では、図１の従来構成も残しながら読み出し時参照セルアレイ２のリファレンスセルがメモリセルアレイ１と同様に、カラムごとに設けられている。また、読み出し時参照セルアレイ２のワード線ドライバ１２は外部入力からＤＡコンバータ８を通じて電圧供給される。したがって、この構成では、ＤＡコンバータ８により、所望の電圧をワード線、すなわち、参照時メモリセルのゲートに供給できる。ＤＡコンバータ８およびワード線ドライバ１２が本発明の書き込み回路に相当する。
【００２６】
図６で書き換えステートマシン６は、外部からデータ入出力インターフェース５に入力されたコマンドを認識し、データの書き換えを制御する。すなわち、書き換えステートマシン６は、データの消去、書き込み、読み出し時参照セルアレイ２への閾値設定等のコマンドを認識し、所定のプログラムパルス幅にて、データの消去、書き込み、読み出し時参照セルアレイ２への閾値設定等を実行する。
【００２７】
その際、書き換えステートマシン６は、ＤＡコンバータ８を制御してワード線電圧を所定値に設定する。また、書き換えステートマシン６は、昇圧回路９およびレギュレータ１０（いわゆる安定化電源）を制御して、ロウデコーダ１１からメモリセルアレイ１に含まれるメモリセルのゲートに供給されるゲート電圧を制御する。さらに、書き換えステートマシン６は、昇圧回路９およびレギュレータ１０を制御して、カラムデコーダ１３からメモリセルアレイ１に含まれるメモリセルのドレインに供給されるドレイン電圧、読み出し時参照セルアレイ２に含まれるリファレンスセルのドレインに供給されるドレイン電圧を制御する。
【００２８】
なお、読み出し時参照セルアレイ２のワード線の電圧は、ＤＡコンバータ８を用いる代わりに、内部昇圧回路９とレギュレータ１０により生成してもよい。その場合に、レギュレータ１０として、１段階ではなく複数段階の電圧を出力可能なものを用意すればよい。
【００２９】
また、リファレンスセルの閾値設定モードではメモリセル側のパスはＯＦＦされる。すなわち、メモリセルアレイ１は、読み出し時参照セルアレイ２から切り離される。なお、読み出しの際にはロウデコーダに供給される電圧と同じ電圧が別途リファレンスセルのワード線ドライバ１２に供給される。
【００３０】
閾値設定の結果は、センスアンプ１４で検出される。すなわち、センスアンプ１４は、
読み出し時参照セルアレイ２のリファレンスセル（書き込み対象のセル）の出力電流（ビット線電流）と基準セルの出力電流（ビット線電流）とを比較して、その結果を確認部４に通知する。確認部４は、いわゆるコンパレータであり、センスアンプ１４の出力結果を判定して、０または１（リファレンスセルに書き込まれた値が、基準セルの保持する値に達したか否か、あるいは、基準セルの保持する値を超えたか否か）を書き換えステートマシン６に報告する。書き換えステートマシン６は、確認部４からの報告（０，１）に基づき、さらなる書き込みを繰り返すか、終了するかを判定する。
【００３１】
本実施形態では、これらの構成のうち、メモリセルアレイ１へのアクセス手順等は周知であるので省略する。そして、ここでは、読み出し時参照セルアレイ２が保持する閾値の書き換え機能を詳細に説明する。
図２での読み出し時参照セルアレイ２を構成するリファレンスセルが保持する閾値の書き換えは下記のように行われる。閾値の書き換えは、基本的には、閾値の消去と、閾値の書き込み（プログラム）に分けることができる。 
【００３２】
＜従来のデータ書き換えシーケンス＞
以下、図２（および図１）の構成において、従来から適用されていたデータ書き換え手順を説明する。
【００３３】
１．消去確認（Ｖｅｒｉｆｙ）
昇圧回路９とレギュレータ１０により消去確認電圧を生成し、リファレンスセルと消去確認用の基準セル（基準セルアレイ３に含まれる）を使用してセンスアンプ１４により読み出しを行う。その読み出しデータを確認部４で判定してＰａｓｓ／Ｆａｉｌの情報を書き換えステートマシン６に戻す。Ｐａｓｓの場合は、プログラム確認へ移行し、Ｆａｉｌの場合は消去を行う。ここで、Ｐａｓｓとは、判定の結果、すでにデータが消去済みであることが確認された場合をいう。また、Ｆａｉｌとは、判定の結果、データが消去されずに保存されていた場合をいう。
【００３４】
２．消去
消去確認がＦａｉｌした場合に、消去を行う。その際は、昇圧回路９とレギュレータ１０により消去時に使用する電圧を生成し、リファレンスセルの保持するデータを消去し、上記１の消去確認を行う。このようにして、リファレンスセルの保持するデータの消去が確認されるまで、消去確認と消去が繰り返される。
【００３５】
３．プログラム確認
昇圧回路９とレギュレータ１０および、ＤＡコンバータ８（あらかじめレジスタに設定した値により電圧値が変わる）によりプログラム確認電圧を生成し、リファレンスセルとプログラム確認用の基準セル（基準セルアレイ３に含まれる）を使用してセンスアンプ１４により読み出しを行う。その読み出しデータを確認部４で判定してＰａｓｓ／Ｆａｉｌの情報を書き換えステートマシン６に戻す。
【００３６】
Ｐａｓｓの場合は、リファレンスセルの保持するデータの設定を終了する。すでに、プログラムすべきデータがリファレンスセルに書き込み済みであることが判明したからである。一方、Ｆａｉｌの場合はプログラム（データの書き込み）を行う。
【００３７】
４．プログラム
プログラム確認がＦａｉｌした場合、プログラムを行う。その際は、昇圧回路９とレギュレータ１０および、ＤＡコンバータ８（あらかじめレジスタに設定した値により電圧値が変わる）によりプログラムに使用する電圧を生成し、プログラム確認がＰａｓｓしなかったリファレンスセルをプログラムする（閾値を設定する）。プログラム後は上記３．のプ
ログラム確認を行う。このようにして、リファレンスセルの保持するデータのプログラムが確認されるまで、プログラム確認とプログラムが繰り返される。
【００３８】
以上１〜４のシーケンスは、書き換えステートマシン６に格納されて実行される制御プログラムとして、または、書き換えステートマシン６に含まれる専用のハードウェアロジック（論理回路）として実現される。
【００３９】
＜従来の書き換えシーケンスによる閾値の設定結果＞
図３に、上記のシーケンスにて一定のゲート電圧、一定のドレイン電圧、および一定のプログラムパルス幅でプログラムした場合のリファレンスセルの閾値変動を示す。
【００４０】
図３では、そのようなプログラムのなされたリファレンスセルに対して、横軸に示されるゲート電圧を加えたときのドレイン電流（ビット線に出力される電流）の変化を示している。ＥＲＶで示される曲線は、消去状態でのリファレンスセルが示すゲート電圧−ドレイン電流特性を示す。
【００４１】
消去状態では、リファレンスセルのフローティングゲートには、ほとんど電荷（電子）が保持されていないため、プログラム状態よりも低いゲート電圧でリファレンスセルを構成するトランジスタがオンする。また、ＲＥＡＤＶで示される曲線は、所定の目標値にプログラムされた状態でのリファレンスセルが示すゲート電圧−ドレイン電流特性を示す。プログラムされた状態では、リファレンスセルのフローティングゲートには、電荷（電子）が保持されているため、書巨状態よいも高いゲート電圧を加えないと、リファレンスセルを構成するトランジスタがオンしない。
【００４２】
したがって、例えば、ポイント１０１は、曲線ＥＲＶの特性を示すセルよりも低いゲート電圧でより多いドレイン電流が流れるセルの状態を示している。すなわち、ポイント１０１を通過するゲート電圧−ドレイン電流特性曲線は、完全に消去された状態のセルの例である。
【００４３】
一方、ポイント１０６は、曲線ＲＥＡＤＶの特性を示すセルよりも高いゲート電圧でより少ないドレイン電流が流れるセルの状態を示している。すなわち、ポイント１０６を通過するゲート電圧−ドレイン電流特性曲線は、所定の目標値以上に完全にプログラムされた状態のセルの例である。
【００４４】
ポイント１０１と１０６との中間のポイント１０２−１０５は、それぞれ、その中間レベルにプログラムされた状態を示す。また、ポイント１０１−１０６は、ポイント１０１のように完全に消去された状態のリファレンスセルに対してプログラムを繰り返したときのプログラム状態の変化を示している。
【００４５】
すなわち、ポイント１０１を通過するゲート電圧−ドレイン電流特性曲線を有するリファレンスセルに対して、固定のゲート電圧、固定のドレイン電圧、および固定のプログラムパルス幅でプログラムすると、そのセルは、例えば、ポイント１０２を通るゲート電圧−ドレイン電流特性曲線を有するようになる。
【００４６】
同様に、ポイント１０２を通過するゲート電圧−ドレイン電流特性曲線を有するリファレンスセルに対して、上述と同一の固定のゲート電圧、固定のドレイン電圧、および固定のプログラムパルス幅でプログラムすると、そのセルは、例えば、ポイント１０３を通るゲート電圧−ドレイン電流特性曲線を有するようになる。
【００４７】
このような手順を繰り返すことにより、このセルのゲート電圧−ドレイン電流特性曲線
は、ポイント１０５を通過するようになる。しかし、この時点でまだＲＥＡＤＶで示される曲線よりも左側にゲート電圧−ドレイン電流特性曲線があるため、このリファレンスセルに対するプログラムは完全でないと判定されることになる。
【００４８】
その場合に、さらに、同一の固定のゲート電圧、固定のドレイン電圧、および固定のプログラムパルス幅でプログラムすると、そのセルは、ポイント１０６を通るゲート電圧−ドレイン電流特性曲線を有するようになる。この場合、本来目標としたＲＥＡＤＶで示される曲線よりも、図３に「ばらつき」として示した移動量だけ移動したポイント１０６に状態が移動することになる。
【００４９】
したがって、プログラム回数が増えるにしたがって閾値と目標値の差異は減少していくものの、判定レベル境界でＦａｉｌした場合、本来設定したい値よりもずれてリファレンスセルに閾値が設定されてしまう。これが、リファレンスセルの保持する閾値のばらつきとなってしまう。このような問題を解決するために本発明では上記３、４のシーケンスに下記のような変更および追加を行う。
【００５０】
＜実施形態の書き換えシーケンス＞
３Ａ．プログラム確認１
本実施形態では、プログラム確認用の基準セルを２個あるいは複数用意し、１個の基準セルはリファレンスセルが保持すべき閾値（最終的な目標値）を保持する。一方、それ以外の基準セルは消去確認時のレベルと最終的な目標値との間の中間レベルの基準値を保持する。これは、例えば、メモリセルのフローティングゲートへの電荷の注入量が異なる基準セルを用意すればよい。
【００５１】
その中間レベルの基準値を保持する基準セルを使用して上記３と同様のプログラム確認を行い（この工程をプログラム確認１と呼ぶ）、Ｐａｓｓの場合は、プログラム確認２を行い、Ｆａｉｌの場合は再度プログラム確認１を行う。このようにして、リファレンスセルの保持するデータの値が上記中間レベルに設定されるまで、プログラム確認１と中間レベルのプログラムが繰り返される。
【００５２】
４Ａ．  プログラム１
プログラム確認１がＦａｉｌした場合、上記４．と同様のプログラム（この工程をプログラム１と呼ぶ）を行う。プログラム１後は上記３Ａのプログラム確認１を行う。
【００５３】
５．プログラム確認２
昇圧回路９とレギュレータ１０によりプログラム確認電圧を生成し、リファレンスセルとプログラム確認用の基準セル（最終的な閾値設定時の目標値を保持する）を使用してセンスアンプ１４により読み出しを行う。その読み出しデータを確認部４で判定してＰａｓｓ／Ｆａｉｌの情報を書き換えステートマシン６に戻す。Ｐａｓｓの場合は、リファレンスセルへの閾値の設定を終了し、Ｆａｉｌの場合はプログラム２を行う。
【００５４】
６．プログラム２
プログラム確認２がＦａｉｌした場合、上記４と同様のプログラムを行う。ただし、プログラム時の電圧はプログラム１よりも低いゲート電圧またはドレイン電圧（あるいは、その両方を低い値）にしてプログラム確認２がＰａｓｓしなかったリファレンスセルをプログラムする。プログラム後は上記５．のプログラム確認２を行う。
【００５５】
図４に、上記のシーケンスにて設定した際のリファレンスセルへ設定される閾値の変動状況を示す。この場合、途中の判定レベル（ＲＥＡＤＶ１で示される曲線）を超えた後は、その判定レベルを超える前よりも低いゲート電圧またはドレイン電圧（あるいは、その
両方を低い値）にしてリファレンスセルをプログラムする。したがって、図４に示すように、中間レベル（ＲＥＡＤＶ１で示される曲線）から最終的な閾値の目標値（ＲＥＡＤＶ２で示される曲線）まで、１回のプログラムによる書き込み量（電荷注入量）の増分が小さくなる。その結果、プログラムによる閾値変動（フローティングゲートへの書き込み１回当たりの電荷注入量）が少なくなり、精度よく所望の設定値にリファレンスセルへ閾値を設定することが可能になる。
【００５６】
上記６．において、プログラム２の実行時に低い値に制御する電圧はワード線電圧であっても、ドレイン電圧であっても、両方でもよい。これらの電圧はいずれも、ＤＡコンバータ８の入力値を変更するか、レギュレータ１０の出力レベルを変更することで制御できる。電圧変更とは別にプログラムする信号のパルス幅を変更することでも同様の効果が得られる（プログラム２においてプログラム１よりもプログラムパルス幅を短くすればよい）。パルス幅の変更で、書き込み時に流れる電流の実効値を制御し、フローティングゲートに注入される電荷を制御できるからである。
【００５７】
以上のシーケンスは、書き換えステートマシン６に格納されて実行される制御プログラムとして、または、書き換えステートマシン６に含まれる専用のハードウェアロジック（論理回路）として実現される。
【００５８】
以上述べたように、本実施形態の半導体装置によれば、リファレンスセルのプログラムの際、プログラムされた状態が、最終目的の閾値を有するプログラム状態と、その最終目的のプログラム状態から所定のレベルだけ消去状態に遷移した中間レベル状態とを、複数種類の基準セルを用いて判定する。そして、リファレンスセルのプログラム状態が中間レベルの状態に達するまでは、第１のゲート電圧、第１のドレイン電圧でプログラムする。そして、リファレンスセルのプログラム状態が中間レベルの状態に達すると、第１のゲート電圧よりも弱い第２のゲート電圧、または第１のドレイン電圧よりも弱い第２のドレイン電圧（または、その両方、すなわち、第２ゲート電圧および第２度レイン電圧）でプログラムする。このような制御により、半導体装置を最終的な閾値に精度よく設定できる。
【００５９】
すなわち、本発明の半導体装置では、既存の書き換え回路が流用できるため、回路の増加を抑えられる。また、閾値設定シーケンスを内蔵し試験時間を短くした上で、精度よくリファレンスセルの閾値設定が可能となる。これにより、例えば、Ｉ／Ｏごとにリファレンスセルと設ける等、リファレンスセルの数を増加して高速読み出しを実現するとともに、半導体装置の高信頼性を達成することができる。
【００６０】
《変形例》
上記３Ａから６では、リファレンスセルが保持する閾値をプログラムときの確認の基準となる基準セル（最終的な目標値を保持した基準セル）と、そのような最終的な目標値と消去確認時のレベルとの中間レベルの値を保持した基準セルとを用意した。そして、そのような複数の基準セルによって閾値の途中のレベルを作ってプログラム確認を実行し、プログラム時のゲート、ドレイン等電圧値を変更し、あるいは、プログラムする信号のパルス幅を変更した。しかし、本発明の実施はこのような構成およびシーケンスには限定されない。
【００６１】
例えば、リファレンスセルが保持する閾値をプログラムときの確認の基準となる基準セルからの読み出し時に、基準セルのゲート電圧を変更することで、同一の基準セルからの読み出し電流を変更できる。その結果、基準セルの保持する電荷量は同一であっても、その同一の基準セルによって閾値の途中のレベルを作ることも可能となる。
【００６２】
すなわち、基準セルのゲート電圧を高くして読み出すことで、見かけ上基準セルの基準
値となるドレイン電流を大きくすることができる。あるいは、見かけ上、基準セルのスレショールド電圧が低くすることができる。
【００６３】
また、基準セルのゲート電圧を低くして読み出すことで、見かけ上基準セルの基準値となるドレイン電流を小さくすることができる。あるいは、見かけ上、基準セルのスレショールド電圧が高くすることができる。
【００６４】
この場合のリファレンスセルの閾値変動を図５に示す。この場合も前記と同様の効果が得られる。このような構成によれば、基準となるセルを複数設けることなく、精度よくリファレンスセルの閾値設定が可能となる。
【００６５】
《その他》
本実施形態は、以下の発明の態様（付記と呼ぶ）を開示する。
（付記１）
電気的に書き換え可能なメモリセルの配列と、
前記メモリセルに保持されたデータを読み出すときに比較の基準となる閾値を有するリファレンスセルと、
前記リファレンスセルに閾値を設定する設定回路と、
前記リファレンスセルに閾値として設定された値の判定基準となる、異なる基準値をそれぞれ有する複数の基準セルとを備え、
前記設定回路は、前記リファレンスセルへの閾値の書き込み回路と、前記書き込み回路による書き込みの結果、前記リファレンスセルへ書き込まれた閾値が前記複数の基準セルのいずれかの基準値に達したか否かを判定する判定部と、前記それぞれの基準値にしたがって、前記リファレンスセルへ閾値を再度設定するときの書き込み信号を制御する制御回路とを具備した半導体記憶装置。（１）
（付記２）
前記複数の基準セルは、第１基準値を有する第１基準セルと第２基準値を有する第２基準セルとを含み、
前記制御回路は、前記リファレンスセルの値が第１基準値に達していないと判断された場合に、前記書き込み信号を第１レベルとし、前記リファレンスセルの値が第１基準値に達していると判断された場合に、前記書き込み信号を第１レベルよりも弱い第２レベルに制御する付記１に記載の半導体記憶装置。（２）
（付記３）
前記書き込み信号は、前記リファレンスセルのワード線電圧である付記１または２に記載の半導体記憶装置。
（付記４）
前記書き込み信号は、前記リファレンスセルのドレイン電圧である付記１または２に記載の半導体記憶装置。
（付記５）
前記制御回路は、前記書き込み信号のパルス幅を制御する付記１または２に記載の半導体記憶装置。
（付記６）
電気的に書き換え可能なメモリセルの配列と、
前記メモリセルに保持されたデータを読み出すときに比較の基準となる閾値を有するリファレンスセルと、
前記リファレンスセルに閾値を設定する設定回路と、
前記リファレンスセルに閾値として設定された値の判定基準となる基準値を有する基準セルと、
前記基準セルから基準値を読み出すときの基準ワード線電圧を制御する電圧制御回路と、を備え、
前記設定回路は、前記リファレンスセルへの閾値の書き込み回路と、前記リファレンスセルに書き込まれた閾値が前記基準ワード線電圧をそれぞれ異なる値に設定して前記基準セルから読み出されたそれぞれの基準値のいずれかに達したか否かを判定する判定部と、前記それぞれの基準値にしたがって、前記リファレンスセルへ閾値を再度設定するときの書き込み信号を制御する制御回路とを具備した半導体記憶装置。（３）
（付記７）
前記基準ワード線電圧は、第１基準電圧と前記第１基準電圧より強い第２基準電圧とを含み、
前記制御回路は、前記リファレンスセルの値が第１基準電圧によって読み出された前記基準値に達していないと判断された場合に、前記書き込み信号を第１レベルとし、前記リファレンスセルの値が第１基準電圧によって読み出された前記基準値に達していると判断された場合に、前記書き込み信号を第１レベルよりも弱い第２レベルに制御するとともに前記第２基準電圧によって前記基準値を前記基準セルから読み出す付記６に記載の半導体記憶装置。
（付記８）
前記書き込み信号は、前記リファレンスセルのワード線電圧である付記１または２に記載の半導体記憶装置。
（付記９）
前記書き込み信号は、前記リファレンスセルのドレイン電圧である付記６または７に記載の半導体記憶装置。
（付記１０）
前記制御回路は、前記書き込み信号のパルス幅を制御する付記６または７に記載の半導体記憶装置。
（付記１１）
電気的に書き換え可能なメモリセルの配列を形成する工程と、
前記メモリセルに保持されたデータを読み出すときに比較の基準となる閾値を有するリファレンスセルを形成する工程と、
前記リファレンスセルに閾値として設定される値の判定基準となる、異なる基準値を有する複数の基準セルを形成する工程と、
前記リファレンスセルへの閾値の書き込み回路を形成する工程と、
前記書き込み回路による書き込みの結果、前記リファレンスセルの閾値が前記複数の基準セルのいずれかの基準値に達したか否かを判定する工程と、
前記それぞれの基準値にしたがって、前記リファレンスセルへ閾値を再度設定するときの書き込み信号を制御する工程とを具備した半導体記憶装置の製造方法。（４）
（付記１２）
電気的に書き換え可能なメモリセルの配列を形成する工程と、
前記メモリセルに保持されたデータを読み出すときに比較の基準となる閾値を有するリファレンスセルを形成する工程と、
前記リファレンスセルの閾値として設定される値の判定基準となる基準値を有する基準セルを形成する工程と、
前記基準セルから基準値を読み出すときの基準ワード線電圧を制御する電圧制御回路を形成する工程と、
前記リファレンスセルへの閾値の書き込み回路を形成する工程と、
前記リファレンスセルの閾値が前記基準ワード線電圧をそれぞれ異なる値に設定して前記基準セルから読み出されたそれぞれの基準値のいずれかに達したか否かを判定する工程と、
前記それぞれの基準値にしたがって、前記リファレンスセルへ閾値を再度設定するときの書き込み信号を制御する工程とを具備した半導体記憶装置の製造方法。（５）
【図面の簡単な説明】
【００６６】
【図１】従来の自動書き換えアルゴリズムを内蔵した不揮発性メモリの構成例を示す図である。
【図２】本発明の一実施形態に係る半導体装置の構成を示す図である。
【図３】一定のゲート電圧、一定のドレイン電圧、および一定のプログラムパルス幅でプログラムした場合のリファレンスセルの閾値変動を示す図である。
【図４】本発明の一実施形態に係るシーケンスにて設定した際のリファレンスセルへ設定される閾値の変動状況を示す図である。
【図５】実施形態の変形例に係るシーケンスにて設定した際のリファレンスセルへ設定される閾値の変動状況を示す図である。
【符号の説明】
【００６７】
１  メモリセルアレイ
２  読み出し時参照セルアレイ
３  基準セルアレイ
４  確認部
５  データ入出力インターフェース
６  書き換えステートマシン
７  アドレスバッファ
８  ＤＡコンバータ
９  昇圧回路
１０  レギュレータ
１２  ワード線ドライバ
１４  センスアンプ
【図１】
2007164934.tif 000003
【図２】
2007164934.tif 000004
【図３】
2007164934.tif 000005
【図４】
2007164934.tif 000006
【図５】
2007164934.tif 000007