(57)【特許請求の範囲】
【請求項１】
プログラミング・データに応じて選択されたＶｔレベルに達するようにＮＡＮＤメモリ装置内のメモリ・セルのプログラム検証を行う方法であって、前記ＮＡＮＤメモリ装置は、選択されたメモリ・セルにプログラムする前記プログラミング・データを保持するラッチと、前記ラッチの状態に応じてプログラミングをイネーブル又はディセーブルするよう動作するディセーブル・ゲートを有するページ・バッファを包含し、当該方法は：
（ａ）前記メモリ・セルをプログラムして、前記選択されたＶｔレベルを有するようにプログラミング・サイクルを実行するステップ；
（ｂ）前記選択されたＶｔレベルに応じて決められた第１検証レベルを設定するステップ；
（ｃ）前記第１検証レベルを利用して、前記メモリ・セルが前記選択されたＶｔレベルを有することを検証するステップであって、パスした及びパスしなかったメモリ・セルが判別されるステップ；
（ｄ）パスしたメモリ・セルに接続されている前記ページ・バッファ内の前記ラッチの状態を切り替え前記ディセーブル・ゲートを利用して、前記パスしたメモリ・セルが更にプログラミングされることを抑制するステップ；
（ｅ）前記第１検証レベルより低い第２検証レベルを設定するステップ；
（ｆ）前記第２検証レベルを利用して、前記パスしなかったメモリ・セルが前記選択されたＶｔレベルより低い第２の選択されたＶｔレベルを有することを検証するステップであって、前記パスしなかったメモリ・セルが前記第２検証レベルによる検証をパスしたかどうかが判別されるステップ；
（ｇ）前記パスしなかったメモリ・セルの総てが前記第２検証レベルによる検証をパスしたと判別される場合に、プログラミング・パルスが現在のプログラミング・パルスより強度が高い第１強度レベルを有するよう調整するステップ；
（ｈ）前記パスしなかったメモリ・セルの少なくとも１つが前記第２検証レベルによる検証をパスしなかったと判別される場合に、プログラミング・パルスが前記第１強度レベルより高い第２強度レベルを有するよう調整するステップ；
（ｉ）前記パスしなかったメモリ・セルを前記（ｇ）又は（ｈ）のステップで調整した前記プログラミング・パルスを利用して再プログラミングするステップ；および
（ｊ）前記メモリ・セルが前記選択されたＶｔレベルを有するまで、前記（ｂ）ないし（ｉ）のステップを反復するステップ；
より成ることを特徴とする方法。
【請求項２】
請求項１記載の方法において、前記第２強度レベルが前記第１強度レベルより大きいことを特徴とする方法。
【請求項３】
請求項１記載の方法において、前記第１検証レベルが１．０ボルトであることを特徴とする方法。
【請求項４】
請求項３記載の方法において、前記第２検証レベルが０．８ボルトであることを特徴とする方法。
【請求項５】
請求項１記載の方法において、前記ＮＡＮＤメモリ装置が多重レベル・セル（ＭＬＣ）装置であることを特徴とする方法。
【請求項６】
プログラミング・データに応じて選択されたＶｔレベルに達するようにＮＡＮＤメモリ装置内のメモリ・セルのプログラム検証を行うシステムであって、前記ＮＡＮＤメモリ装置は、選択されたメモリ・セルにプログラムする前記プログラミング・データを保持するラッチと、前記ラッチの状態に応じてプログラミングをイネーブル又はディセーブルするよう動作するディセーブル・ゲートを有するページ・バッファを包含し、当該システムは：
（ａ）前記メモリ・セルをプログラムして、前記選択されたＶｔレベルを有するようにプログラミング・サイクルを実行し、
（ｂ）前記選択されたＶｔレベルに応じて決められた第１検証レベルを設定し、
（ｃ）前記第１検証レベルを利用して、前記メモリ・セルが前記選択されたＶｔレベルを有することを検証する際に、パスした及びパスしなかったメモリ・セルを判別し、
（ｄ）パスしたメモリ・セルに接続されている前記ページ・バッファ内の前記ラッチの状態を切り替え前記ディセーブル・ゲートを利用して、前記パスしたメモリ・セルが更にプログラミングされることを抑制し、
（ｅ）前記第１検証レベルより低い第２検証レベルを設定し、
（ｆ）前記第２検証レベルを利用して、前記パスしなかったメモリ・セルが前記選択されたＶｔレベルより低い第２の選択されたＶｔレベルを有することを検証する際に、前記パスしなかったメモリ・セルが前記第２検証レベルによる検証をパスしたかどうかを判別し、
（ｇ）前記パスしなかったメモリ・セルの総てが前記第２検証レベルによる検証をパスしたと判別される場合、プログラミング・パルスが現在のプログラミング・パルスより強度が高い第１強度レベルを有するよう調整し、
（ｈ）前記パスしなかったメモリ・セルの少なくとも１つが前記第２検証レベルによる検証をパスしなかったと判別される場合、プログラミング・パルスが前記第１強度レベルより高い第２強度レベルを有するよう調整し、
（ｉ）前記パスしなかったメモリ・セルを前記（ｇ）又は（ｈ）で調整した前記プログラミング・パルスを利用して再プログラミングし、および
（ｊ）前記メモリ・セルが前記選択されたＶｔレベルを有するまで、前記（ｂ）ないし（ｉ）の動作を反復する
ようにしたことを特徴とする装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般にメモリ装置に関連し、特にプログラム検証システム(system for programming verification)に関連する。
【０００２】
【従来の技術】
ＮＡＮＤ形フラッシュ・メモリは、大容量用途に適切な格納アーキテクチャを利用する。したがって、装置は良好な信頼性を有することを要する。しかしながら、現在のＮＡＮＤアーキテクチャは、各ビットに関するプログラミング強度および時間が正確に制御できないので、電圧閾値（Ｖｔ）の広範な分布の生じることを回避することが困難である。
【０００３】
図１は、典型的なＮＡＮＤメモリ装置の一部を示す。図示されるように、全ビットが、ＡＲＶＳＳラインに関して異なるＩＲ電圧降下を有する。したがって、チップがプログラミング・ベリファイ・モードに向かう場合に、たとえ全ビットが同一のプログラミング電圧を受信したとしても、いくつかのビットは検証機能(verify function)をパス(pass)することができない。ビットがプログラムされることに失敗すると、チップは再プログラムを行って、より高いプログラミング電圧を利用して全ビットを通過させるように、プログラミング・モードに戻る。しかしながら、このプロセスによっていくつかのビットには過剰にストレスがかかり、装置に深刻なダメージが生じることが懸念される。さらに、そのようなプログラミング手法は、電圧閾値の広範な分布を招く（例えば、特許文献１参照（特に、図２−５）。）。
【０００４】
【特許文献１】
特開２００１−１７６２７６号公報
【発明が解決しようとする課題】
したがって、任意のビット論理に過剰なストレスをかけることなしに、メモリ装置をプログラムおよび検証し、狭いＶｔ分布にする手法が望まれている。
【０００５】
【課題を解決するための手段】
本発明はプログラム検証システムを包含し、装置内のビット論理に過剰な負荷をかけることなしに、失敗したビットを良好に再プログラムする。例えば、一形態にあっては、システムは、プログラミング検証動作が良好でなかったビットを検出し、それらのビットを調整されたプログラミング電圧で再プログラムし、所望のＶｔを得るようにしつつ、ビットにかかるストレスを低減させ、狭いＶｔ分布を達成する。
【０００６】
本発明の一形態にあっては、選択されたＶｔレベルに達するようにＮＡＮＤメモリ装置内のメモリ・セルのプログラム検証を行う方法が提供される。前記ＮＡＮＤメモリ装置は、選択されたメモリ・セルのプログラミングをイネーブル又はディセーブルするよう動作するディセーブル・ゲートを有するページ・バッファを包含する。当該方法は：（ａ）前記メモリ・セルをプログラムして、選択されたＶｔレベルを有するようにプログラミング・サイクルを実行するステップ；（ｂ）第１検証レベルを設定するステップ；（ｃ）前記第１検証レベルを利用して、前記メモリ・セルが前記選択されたＶｔレベルを有することを検証するステップであって、パスした及びパスしなかったメモリ・セルが判別されるところのステップ；（ｄ）前記ディセーブル・ゲートを利用して、パスしたメモリ・セルが更にプログラミングされることを抑制するステップ；（ｅ）第２検証レベルを設定するステップ；（ｆ）前記第２検証ベルを利用して、前記パスしなかったメモリ・セルが第２の選択されたＶｔレベルを有することを検証するステップであって、第２のパスした及び第２のパスしなかったメモリ・セルが判別されるところのステップ；（ｇ）前記第２のパスしたメモリ・セルが判別された場合に、プログラミング・パルスが第１強度レベルを有するよう調整するステップ；（ｈ）前記第２のパスしなかったメモリ・セルが判別された場合に、プログラミング・パルスが第２強度レベルを有するよう調整するステップ；（ｉ）前記パスしなかったメモリ・セルを前記プログラミング・パルスを利用して再プログラミングするステップ；および（ｊ）前記メモリ・セルが前記選択されたＶｔレベルを有するまで、前記（ｂ）ないし（ｉ）のステップを反復するステップ；より成ることを特徴とする方法である。
【０００７】
本発明の他の形態にあっては、ＮＡＮＤメモリ装置内でプログラム検証を実行する装置が提供される。本装置は、ビット・ラインに結合されたページ・バッファを包含し、このページ・バッファはデータ入力に結合されたラッチを包含し、前記ラッチは抑制信号を生成する。本装置は、前記ビット・ラインおよびグランド・ゲートの間に結合されたプログラミング・ディセーブル・ゲートを包含し、このプログラミング・ディセーブル・ゲートは、更に前記抑制信号を受信するよう結合され、前記抑制信号が第１状態にある場合に、前記プログラミング・ゲートが前記ビット・ラインをグランド・ゲートに結合し、前記抑制信号が第２状態にある場合に、前記プログラミング・ゲートが前記ビット・ラインおよび前記グランド・ゲートを分離する。
【０００８】
本発明の更なる形態および付随する利点は、添付図面を考慮した以下の詳細な説明を参照することによって、より一層明瞭になるであろう。
【０００９】
【発明の実施の形態】
本発明は、プログラム検証システムを包含し、装置内のビット論理に過剰なストレスをかけることなしに、メモリ装置内の失敗したビットを良好に再プログラムする。以下の詳細な説明および添付図面により、本発明に包含される実施例が説明される。
【００１０】
図２は、本発明により構築されたページ・バッファ２００の実施例を示す。ページ・バッファ２００はビット・ライン（ＢＬ）端子２０２を包含し、これは、例えば図１に示されるコア・セルのような、ＮＡＮＤコア・セルのビット・ライン端子の１つに結合する。例えば、図１におけるＢＬラインの各々は（すなわち、ＢＬ１，ＢＬ２，ＢＬ３等）、ページ・バッファ２００のように構築された各自自身のページ・バッファに結合される。
【００１１】
ページ・バッファ２００は更に電源端子（Ｖｃｃ）およびデータ端子２０４に結合される。ＰＢＩＡＳ端子は、検知モード(sensing mode)の際に、ページ・バッファをバイアスするのに使用される。ＰＧＭＯＮ端子は、プログラミング・モードを設定するために使用される。ＳＥＴ端子は検知結果を設定するために使用される。ＢＬＣＮＴＬ端子は、ビット・ライン制御のためのものである。ＤＩＳ端子２１０は、ＢＬ２０２をグランドに結合させるために使用される。
【００１２】
ページ・バッファ２００は、データ値を一時的に格納してラッチするラッチ２０６も包含する。ラッチ２０６はトランジスタ２０８のゲート端子に結合される。トランジスタ２０８は、ＤＩＳ端子２１０の動作によりＢＬラインがグランドに結合され得るか否かを制御するＤＩＳ端子２１０の動作を選択的に制御するよう動作する。例えば、トランジスタ２０８がオープン状態（ＯＦＦ）であれば、ＤＩＳ端子の動作はＢＬラインをグランドに結合させることができない。
【００１３】
データ・ロード動作の間に、ページ・バッファ２００は格納するデータを受け入れる。ページ・バッファのラッチ２０６はハイ・レベル“１”に設定され、トランジスタ２０８を閉じて、プログラミング中にＤＩＳ端子の動作を通じてＢＬがＧＮＤに結合され得るようにする。データ・ロードの後に、プログミング・アルゴリズムが始まり、装置がプログラムされる。装置はその後ベリファイ・モードに移行する。
【００１４】
図３は本発明により構築されるＸデコーダのＡＲＶＳＳ部３００の一実施例を示す。ＡＲＶＳＳ部３００は、トランジスタ３０２，３０４，３０６を包含し、ブロック信号３０８をセンス・アンプ（ＳＡＭＰ）にそれぞれ結合させる信号経路を提供する。ＤＩＳ端子３１０は、ＳＡＭＰの正の端子３１２をグランドに引き込むよう動作するトランジスタに結合する。また、Ｘデコーダは、参照信号（ＲＥＦ）をＳＡＭＰの正の端子に結合させるよう動作するところのトランジスタに結合したＢＩＡＳ端子３１４を包含する。ＳＡＭＰの負の端子は第２参照信号（ＲＥＦ＿ＯＲＧ）に結合される。トランジスタ３０２，３０４，３０６のゲートは、ＡＲＶＳＳＯＮｘ制御ラインとして示される制御ラインによって制御される。これらの制御ラインがアクティブになると、ブロック信号３０８がＳＡＭＰに結合されることを可能にする。
【００１５】
図４は、本発明によるメモリ装置に使用するプログラム検証方法の一実施例を示すフローチャートを示す。本方法は、ブロック４０２から開始し、ブロック４０４において、プログラミング・モード命令がメモリ装置の初期プログラミング・プロセスを開始させる。
【００１６】
ブロック４０６において、初期プログラミングの後に、プログラム・ベリファイ・モードが始まる。ベリファイ・モードは、メモリ装置のメモリ・セルが、適切なＶｔレベルを有するよう正しくプログラムされたことを確認するために利用される。ブロック４０８において、プログラムされる電圧Ｖｔが１．０ボルトより大きく定められ、選択されたワード・ラインが検証動作を行うために１．０ボルトに設定されているとする。
【００１７】
ブロック４１０において、検証動作が実行され、適切なＶｔレベルで良好にプログラムされたパスしたビット(passed bit)を判別する。ブロック４１２において、パスしたビットに関し、ページ・バッファ２００のラッチ２０６は、維持するよう切り替わる。その結果、トランジスタ２０８のゲートはローに設定され、これによりトランジスタ２０８をオープンとし、ＢＬが、ＤＩＳ端子２１０の動作によって接地に引き込まれることを防止する。したがって、このビットの更なるプログラミングは回避される。
【００１８】
ブロック４１４において、各ページ・バッファに関するプログラミングが完了したか否かを調べるための検査が実行される。各ページ・バッファに関するプログラミングが完了していなければ、本方法はブロック４１８に進む。各ページ・バッファに関するプログラミングが完了していれば、本方法はブロック４１６に進む。
【００１９】
ブロック４１６において、各ページ・バッファに関するプログラミングが完了していれば、ラッチは更なるプログラミングを抑制するよう機能する(flip)。ブロック４１８において、全ビットが適切にプログラムされたか否かを判定するための検査が実行される。もしそうであれば、本方法ブロック４２０で終了する。もし全ビットが適切にプログラムされていなければ、本方法はブロック４２２に進む。
【００２０】
ブロック４２２では、ワード・ライン電圧が０．８ボルトに設定され、これは当初の検証電圧よりも低い。ブロック４２４において、次の検証動作の間に、ＡＲＶＳＳ側から検知が実行される。ＡＲＶＳＳがハイ・レベルに維持されるならば、良好でなかったビット(failed bit)は、０．８ボルトより大きなＶｔレベルを有する。動作が再プログラミングに移る場合に、プログラム・パルスがその特性を弱めるように変化する。例えば、パルス幅がより短くなり、またはパルス高さがより小さくなる等である。
【００２１】
ブロック４２６において、検証が総てのビットをパスしたか否かを判定するための検査が実行される。検証をパスしたならば、本方法はブロック４２８に進み、プログラミング・パルスを新たなレベルに変更して、更なるプログラミングが行われる。例えば、プログラミング・パルスが僅かに強く形成される。検証が失敗したならば、本方法はブロック４３０に進み、プログラミング・パルスは他の強度に設定され、更なるプログラミングが行われる。例えば、プログラミング・パルスの強度は、ブロック４２８におけるものよりもブロック４３０におけるものの方が多い。ブロック４２８または４３０の何れかにおいて付加的なプログラミングを実行した後に、本方法はブロック４０８に進み、１．０ボルトに設定されたＷＬ電圧と共に他の検証動作が行われる。これ以降では、良好でなかったビットは新たなＷＬ設定値を利用して再び検証される。こうして、図４に方法例は、所望のＶｔレベルを有するビットを検証するよう動作し、調整可能なプログラミング・パルス強度を利用して、良好でなかったビットのみ再プログラミングし、ビットに過剰にストレスをかけることを回避し、非常に狭いＶｔ分布を実現するようにする。
【００２２】
従来の方法は、良好でなかったビットのＶｔを本発明で行われるように区別することが困難である。したがって、従来の手法は、プログラミング強度を調整してＶｔ分布を減少させることが困難である。２つの金属層がコア・セルに使用されるならば、ＡＲＶＳＳノードは各々のブロック動作として分離されることが可能である。大抵抗に起因して、ＡＲＶＳＳドライバを小さくすることが可能であるという利点は非常に重要である。
【００２３】
本発明の１つ又はそれ以上の実施例は、従来の回路と比較していくつかの利点を提供する。例えば、利点の１つは、失敗したビットのみがより低いＷＬレベルによって検証されることであり、このことは、付加的なプログラミング強度がより弱いレベルに変更可能なことを意味する。他の利点は、プログラムＶｔ分布が従来の方法よりも狭いことである。したがって、本発明の実施例は多重レベル・セル(MLC: multi-level cell)に適切であり、その理由は多重レベル分布がセルの耐久性(cell endurance)に関連するからである。Ｖｔ分布が広いと、例えばサイクル動作または保持(cycling or retention bake)等の際に、重複したデータ状態を有することが可能である。したがって本発明に包含される１つ又はそれ以上の実施例は、データ状態の間にＶｔウインドウを形成することを可能にする。基本的には、検証時間の間に、コアの挙動に基づいて、シーケンスは次のパルス高さを判定する。更に狭いＶｔ分布を有するために、ＷＬに対するより低い電圧を適用し（約０．５ボルト）、それ以外は０．８ボルトが利用されるようにすることが可能である。
【００２４】
本方法は、選択されたイレースＶｔ分布(Erase Vth distribution)をも達成することが可能である。イレース検証の間に、ＡＲＶＳＳは最初に０．６ボルトに拘束され、その後にＡＲＶＳＳモードは約０．５ボルトに変更される。ＡＲＶＳＳノードが０．５ボルトより低いならば、第２イレース・パルスは増加させる必要はなく、または長期間拘束される必要はない。
【００２５】
本発明は、プログラミング検証システムを包含し、装置に過剰にストレスを与えることを回避するために、減少したプログラミング強度でメモリ装置の良好でなかったビットを良好に再プログラムする。上述した実施例は、本発明の例示であって、本発明の範囲を説明した特定の実施例に限定することを意図するものではない。したがって、本発明のいくつかの実施例が提示および説明されたが、その精神または本質的特徴を逸脱することなしに、それらに様々な変更を行うことが可能であることに留意を要する。したがって、以上の開示および記述は例示的であって、特許請求の範囲に記載される本発明の範囲を限定するものではない。
【００２６】
【図面の簡単な説明】
【図１】図１は、典型的なＮＡＮＤメモリ装置の部分を示す。
【図２】図２は、本発明により構築されたページ・バッファの実施例を示す。
【図３】図３は、本発明により構築されたＸデコーダの部分の一実施例を示す。
【図４】図４は、本発明によるプログラム検証方法のフローチャートを示す。
【符号の説明】
２００  ページ・バッファ
２０２  ビット・ライン
２０４  データ端子
２０６  ラッチ
２０８  トランジスタ
２１０  ＤＩＳ端子
３００  ＡＲＶＳＳ部
３０２，３０４，３０６  トランジスタ
３０８  ブロック信号
３１０  ＤＩＳ端子
３１２  正の端子
３１４  ＢＩＡＳ端子
３１６  負の端子
【図１】
0004159336.tif 000002
【図２】
0004159336.tif 000003
【図３】
0004159336.tif 000004
【図４】
0004159336.tif 000005