(57)【要約】  不揮発性メモリをプログラムするための方法が提供される。この方法は、偶数ビット線のメモリセルを、消去状態から複数の中間データ状態にメモリセルをプログラムし、中間データ状態の各々について、メモリセルを複数のターゲットデータ状態に同時にプログラムすることによって、プログラミムすることを含む。また、この方法は、奇数ビット線のメモリセルを、消去状態から複数の中間データ状態にメモリセルをプログラムし、中間データ状態の各々について、メモリセルを複数のターゲットデータ状態に同時にプログラムすることによって、プログラムすることも含む。各メモリセルについて、対応するビット線は、メモリセルがプログラミングを禁止されることになっている場合には第１のビット線バイアスにバイアスされ、メモリセルが最終状態にプログラムされることになっている場合には複数のプログラミングビット線バイアスのうちの１つにバイアスされる。
2018513516.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリをプログラムするための方法であって、
偶数ビット線のメモリセルを、
前記メモリセルを消去状態から複数の中間データ状態にプログラムすること、及び
前記中間データ状態の各々について、前記メモリセルを複数のターゲットデータ状態に同時にプログラムすること、
によりプログラムすること、並びに、
奇数ビット線のメモリセルを、
前記メモリセルを消去状態から前記複数の中間データ状態にプログラムすること、及び
前記中間データ状態の各々について、前記メモリセルを前記複数のターゲットデータ状態に同時にプログラムすること、
によりプログラムすること、を含む方法。
【請求項２】
前記メモリセルの各々は対応するビット線に結合されており、
各メモリセルについて、前記対応するビット線は、前記メモリセルがプログラミングを禁止されることになっている場合には第１のビット線バイアスにバイアスされ、前記メモリセルが最終状態にプログラムされることになっている場合には複数のプログラミングビット線バイアスのうちの１つにバイアスされる、請求項１に記載の方法。
【請求項３】
前記対応するビット線は、プログラムされる前記メモリセルの前記ターゲットデータ状態に基づいてバイアスされる、請求項２に記載の方法。
【請求項４】
前記プログラミングビット線バイアスの数は、各メモリセルに記憶することができるデータ状態の数に等しい、請求項２〜３のいずれか一項に記載の方法。
【請求項５】
対応するビット線バイアスは、前記中間状態分布と前記ターゲット状態分布との間の電圧差に基づいている、請求項２〜４のいずれか一項に記載の方法。
【請求項６】
前記複数のプログラミングビット線バイアスは、４つのプログラミングビット線バイアスを含む、請求項２〜５のいずれか一項に記載の方法。
【請求項７】
前記不揮発性メモリは、２次元又は３次元の不揮発性メモリを含む、請求項１〜６のいずれか一項に記載の方法。
【請求項８】
偶数ビット線のメモリセルを、
前記メモリセルを消去状態から複数の中間データ状態にプログラムすること、及び
前記中間データ状態の各々について、前記メモリセルを複数のターゲットデータ状態に同時にプログラムすること、
によりプログラムするように、且つ、
奇数ビット線のメモリセルを、
前記メモリセルを消去状態から前記複数の中間データ状態にプログラムすること、及び
前記中間データ状態の各々について、前記メモリセルを前記複数のターゲットデータ状態に同時にプログラムすること、
によりプログラムするように構成されるコントローラを備える、不揮発性メモリ。
【請求項９】
前記メモリセルの各々は対応するビット線に結合されており、
前記不揮発性メモリは、前記コントローラに結合されるセンスアンプを更に備え、前記センスアンプは複数のビット線バイアスを提供するように構成される、請求項８に記載の不揮発性メモリ。
【請求項１０】
各メモリセルについて、前記センスアンプは、前記メモリセルがプログラミングを禁止されることになっている場合には前記対応するビット線を第１のビット線バイアスにバイアスし、前記メモリセルが最終状態にプログラムされることになっている場合には前記メモリセルを複数のプログラミングビット線バイアスのうちの１つにバイアスする、請求項９に記載の不揮発性メモリ。
【請求項１１】
前記センスアンプは、プログラムされる前記メモリセルの前記ターゲットデータ状態に基づいて、前記対応するビット線をバイアスする、請求項１０に記載の不揮発性メモリ。
【請求項１２】
前記プログラミングビット線バイアスの数は、各メモリセルに記憶することができるデータ状態の数に等しい、請求項１０〜１１のいずれか一項に記載の不揮発性メモリ。
【請求項１３】
前記センスアンプは、前記中間状態分布と前記ターゲット状態分布との間の電圧差に基づいて、前記対応するビット線をバイアスする、請求項１０〜１２のいずれか一項に記載の不揮発性メモリ。
【請求項１４】
前記複数のプログラミングビット線バイアスは、４つのプログラミングビット線バイアスを含む、請求項１０〜１３のいずれか一項に記載の不揮発性メモリ。
【請求項１５】
前記不揮発性メモリは、２次元又は３次元の不揮発性メモリを含む、請求項８〜１４のいずれか一項に記載の不揮発性メモリ。
【発明の詳細な説明】
【背景技術】
【０００１】
半導体メモリは、携帯電話、デジタルカメラ、パーソナルデジタルアシスタント、電子医療機器、モバイルコンピューティング装置、非モバイルコンピューティング装置などの様々な電子機器に広く使用されている。半導体メモリは、不揮発性メモリ又は揮発性メモリを含むことがある。不揮発性メモリにより、不揮発性メモリが電源（例えば、電池）に接続されていないときでも、情報を記憶し保持することが可能になる。不揮発性メモリの例としては、フラッシュメモリ（例えば、ＮＡＮＤ型及びＮＯＲ型フラッシュメモリ）及び電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）が挙げられる。
【０００２】
不揮発性メモリ装置では、電荷捕獲物質を使用して、データの状態を表す電荷を保存することができる。電荷捕獲物質は、３次元（３Ｄ）積層メモリ構造に垂直に配置することができる。３Ｄメモリ構造の一例は、ビットコストスケーラブル（ＢｉＣＳ）アーキテクチャであり、これは、導電層と誘電層が交互になった積層体を含む。メモリホールが積層体内に形成され、次いで、電荷捕獲層を含む材料でこのメモリホールを充填することによってＮＡＮＤストリングが形成されて、メモリセルの垂直列を生成する。真っ直ぐなＮＡＮＤストリングが、１つのメモリホール内に延在する。メモリセルの制御ゲートが、導電層によってもたらされる。
【０００３】
幾つかの不揮発性メモリ装置は２つの電荷範囲を記憶するために使用され、従って、メモリセルは、２つのデータ状態、即ち、消去状態（例えば、データ「１」）及びプログラム状態（例えば、データ「０」）に対応する２つの閾値電圧範囲の間で、プログラムされる／消去されることができる。そのような装置は、バイナリ又は２状態装置と呼ばれる。
【０００４】
多状態（又は多レベル）不揮発性メモリは、閾値電圧の複数の別個の許容範囲を識別することによって、実現される。閾値電圧の別個の範囲の各々は、データビットの組に対して所定の値が割り当てられたデータ状態に対応する。メモリセルにプログラムされたデータと閾値電圧の範囲との間の特定の関係は、そのメモリセルに採用されたデータ符号化方式に依存する。例えば、米国特許第６，２２２，７６２号明細書及び米国特許出願公開第２００４／０２５５０９０号明細書の両方は、多状態フラッシュメモリセルの様々なデータ符号化方式について記載している。多状態不揮発性メモリはバイナリ不揮発性メモリよりも多くのデータを記憶することができるが、プログラミング工程及びプログラミングを検証する工程は、多状態不揮発性メモリについてはより長い時間がかかることがある。
【０００５】
同様に番号付けされた要素は、異なる図で共通の構成要素を指す。
【図面の簡単な説明】
【０００６】
【図１】３Ｄ積層型不揮発性メモリ装置の斜視図である。
【図２】図１の３Ｄ積層型不揮発性メモリ装置１００の一例であるメモリ装置２００の機能ブロック図である。
【図３Ａ】コントローラ内の１つ又は複数のプロセッサをプログラミングするためのソフトウェアモジュールを示すブロック図である。
【図３Ｂ】ステートマシン又はメモリダイ上の他のプロセッサをプログラミングするためのソフトウェアモジュールを示すブロック図である。
【図４Ａ】２つの平面を有するメモリ構造のブロック図である。
【図４Ｂ】メモリセルのブロックの一部の上面図である。
【図４Ｃ】メモリセルのブロックの一部の断面図である。
【図４Ｄ】選択ゲート層及びワード線層の図である。
【図４Ｅ】メモリセルの垂直列の断面図である。
【図５】センスアンプの概略図である。
【図６】図５のセンスアンプに示された特定の信号の動作を説明するタイミング図である。
【図７】図５の回路の動作の一実施形態を説明するフローチャートである。
【図８Ａ−Ｂ】閾値電圧の分布を示す。
【図９Ａ−Ｃ】閾値電圧の分布を示す。
【図１０】プログラミングのための工程の一実施形態を説明するフローチャートである。
【図１１】プログラミング工程の一例を示す。
【図１２】センスアンプの概略図である。
【図１３Ａ−Ｅ】図１２のセンスアンプに示される特定の信号の動作を説明するタイミング図である。
【発明を実施するための形態】
【０００７】
メモリセルを中間状態からターゲットのデータ状態に同時にプログラミングするための方法及び装置が提供される。例示的な方法は、偶数ビット線のメモリセルを、消去状態から複数の中間データ状態にメモリセルをプログラミングし、中間データ状態の各々について、メモリセルを複数のターゲットデータ状態に同時にプログラミングすることによって、プログラミングすることを含む。この方法は、奇数ビット線のメモリセルを、消去状態から複数の中間データ状態にメモリセルをプログラミングし、中間データ状態の各々について、メモリセルを複数のターゲットデータ状態に同時にプログラミングすることによって、プログラミングすることも含む。
【０００８】
以下の考察では、提案された技術を実施することができるメモリ装置のための適切な構造の一例の詳細を提供する。
【０００９】
図１は、基板１０２を含む、３次元（３Ｄ）積層型不揮発性メモリ装置１００の斜視図である。基板１０２の上には、メモリセル（不揮発性記憶素子）の例示的なブロックＢＬＫ０及びＢＬＫ１がある。また、基板１０２上には、ブロックＢＬＫ０及びＢＬＫ１が使用するための支持回路を有する周辺領域１０４もある。また、基板１０２は、ブロックの下に、回路に加えて、回路の信号を伝送するために導電経路にパターン化された１つ又は複数の下部金属層を担持することもできる。
【００１０】
ブロックＢＬＫ０及びＢＬＫ１は、メモリ装置１００の中間領域１０６内に形成される。メモリ装置１００の上部領域１０８には、１つ又は複数の上部金属層が導電経路にパターン化されて、回路の信号を伝送する。ブロックＢＬＫ０及びＢＬＫ１の各々は、メモリセルの積層領域を含み、積層領域では、積層の交互のレベルがワード線を表す。２つのブロックＢＬＫ０及びＢＬＫ１を一例として示したが、ｘ及び／又はｙ方向に延在する追加のブロックを使用することもできる。
【００１１】
１つの実施例では、ｘ方向の平面の長さは、ワード線用の信号経路が延在する方向（ワード線又はＳＧＤ線方向）を表し、ｙ方向の平面の幅は、ビット線用の信号経路が延在する方向（ビット線方向）を表す。ｚ方向は、メモリ装置の高さを表す。
【００１２】
図２は、図１の３Ｄ積層型不揮発性メモリ装置１００の一例である、例示的なメモリ装置２００の機能ブロック図である。図２に示された構成要素は、電気回路である。メモリ装置２００は、１つ又は複数のメモリダイ２０２を含む。各メモリダイ２０２は、メモリセルの３次元メモリ構造２０４（例えば、メモリセルの３Ｄアレイなど）、制御回路２０６、及び読み出し／書き込み回路２０８を含む。他の実施形態では、メモリセルの２次元アレイを使用することができる。
【００１３】
メモリ構造２０４は、行デコーダー２１０を介してワード線によりアドレス指定可能であり、列デコーダー２１２を介してビット線によりアドレス指定可能である。読み出し／書き込み回路２０８は、複数のセンスブロックＳＢ１、ＳＢ２、…、ＳＢｐ（感知回路）を含み、メモリセルのページが並行して読み出される又は書き込まれることを可能にする。システムによっては、コントローラ２１４が、１つ又は複数のメモリダイ２０２と同じメモリ装置２００（例えば、取り外し可能記憶カード）に含まれる。しかしながら、他のシステムでは、コントローラ２１４を、メモリダイ２０２から分離することができる。
【００１４】
実施形態によっては、１つのコントローラ２１４が、複数のメモリダイ２０２と通信する。他の実施形態では、各メモリダイ２０２はそれ自体のコントローラを有する。コマンド及びデータが、データバス２１８を介してホスト２１６とコントローラ２１４との間で、また、ライン２２０を介して、コントローラ２１４と１つ又は複数のメモリダイ２０２との間で、伝送される。一実施形態では、メモリダイ２０２は、ライン２２０と接続する１組の入力及び／又は出力（Ｉ／Ｏ）ピンを含む。
【００１５】
メモリ構造２０４は、３Ｄアレイを含む、メモリセルの１つ又は複数のアレイを含むことがある。メモリ構造２０４は、モノリシックな３次元メモリ構造を含むことがあり、この構造内には、ウェハなどの単一の基板上（基板内ではなく）に、介在する基板なしに、複数のメモリレベルが形成される。メモリ構造２０４は、シリコン基板の上方に配置される活性領域を有するメモリセルのアレイの１つ又は複数の物理レベルに、モノリシックに形成される、任意の種類の不揮発性メモリを含むことがある。メモリ構造２０４は、メモリセルの動作に関連した回路を有する不揮発性メモリ装置内に、この関連回路が基板の上方にあろうと内部にあろうと、存在することがある。
【００１６】
制御回路２０６は、読み出し／書き込み回路２０８と協働してメモリ構造２０４上でメモリ動作（例えば、消去、プログラム、読出し、及びその他）を実施し、ステートマシン２２２、オンチップアドレスデコーダー２２４、及び電力制御モジュール２２６を含む。ステートマシン２２２は、メモリ動作のチップレベル制御を提供する。コード及びパラメータ記憶装置２２８は、動作パラメータ及びソフトウェアを記憶するために設けられることがある。一実施形態では、ステートマシン２２２は、コード及びパラメータ記憶装置２２８に記憶されているソフトウェアによってプログラム可能である。他の実施形態では、ステートマシン２２２はソフトウェアを使用せず、ハードウェア（例えば、電子回路）で完全に実装される。
【００１７】
オンチップアドレスデコーダー２２４は、ホスト２１６又はメモリコントローラ２１４によって使用されるアドレスと、デコーダー２１０及び２１２によって使用されるハードウェアアドレスとの間のアドレスインターフェースを提供する。電力制御モジュール２２６は、メモリ動作の間にワード線及びビット線に供給される電力及び電圧を制御する。電力制御モジュール２２６は、３Ｄ構成のワード線層（後述する）、選択トランジスタ（例えば、後述するＳＧＳ及びＳＧＤトランジスタ）、及びソース線用のドライバを含むことができる。電力制御モジュール２２６は、電圧を生成するための電荷ポンプを含むことがある。センスブロックＳＢ１、ＳＢ２、…、ＳＢｐは、ビット線ドライバを含む。ＳＧＳトランジスタは、ＮＡＮＤストリングのソース端における選択ゲートトランジスタであり、ＳＧＤトランジスタは、ＮＡＮＤストリングのドレイン端における選択ゲートトランジスタである。
【００１８】
制御回路２０６、ステートマシン２２２、デコーダー２２４／２１０／２１２、コード及びパラメータ記憶装置２２８、電力制御モジュール２２６、センスブロックＳＢ１、ＳＢ２、…、ＳＢｐ、読み出し／書き込み回路２０８、及びコントローラ２１４のうちの任意の１つ又は任意の組み合わせは、本明細書に記載する機能を実施する１つ又は複数の制御回路であるとみなすことができる。
【００１９】
（オンチップ又はオフチップの）コントローラ２１４は、ＲＯＭ２１４ａ、ＲＡＭ２１４ｂなどの記憶装置（メモリ）及びプロセッサ２１４ｃを含むことがある。記憶装置ＲＯＭ２１４ａ及びＲＡＭ２１４ｂは、１組の命令などのコードを含み、プロセッサ２１４ｃは、この１組の命令を実行して本明細書に記載する機能を提供するように動作可能である。代替的に又は追加的に、プロセッサ２１４ｃは、１つ又は複数のワード線に接続されたメモリセルの指定領域などの、メモリ構造２０４内の記憶装置からコードにアクセスすることができる。
【００２０】
メモリ構造２０４内の複数のメモリ素子は、直列に接続されるように、又は、各素子が個別にアクセス可能であるように、構成されることがある。非限定的な例として、ＮＡＮＤ構成のフラッシュメモリ装置（ＮＡＮＤフラッシュメモリ）は、一般的に、直列に接続されたメモリ素子を含んでいる。ＮＡＮＤストリングは、１組の直列接続されたメモリセル及び選択ゲートトランジスタの例である。
【００２１】
ＮＡＮＤフラッシュメモリアレイは、アレイが複数のＮＡＮＤストリングから構成されるように構成されることがあり、この複数のＮＡＮＤストリングのうちの１つのＮＡＮＤストリングは、単一のビット線を共有しグループとしてアクセスされる複数のメモリセルから構成される。或いは、メモリ素子は、各素子が個別にアクセス可能である、例えば、ＮＯＲメモリアレイであるように、構成されることがある。ＮＡＮＤ及びＮＯＲメモリ構成は例示的なものであり、メモリセルは他の態様で構成されてもよい。
【００２２】
メモリセルは、複数の行及び／又は列などの順序付けられたアレイ内の、単一のメモリ装置平面に配置されることがある。しかしながら、メモリ素子は、不規則的な構成若しくは非直交の構成、又はアレイとはみなされない構造に配置されてもよい。
【００２３】
３次元メモリアレイは、メモリセルが複数の平面又は複数のメモリ装置平面を占有するように配置され、それによって３次元（即ち、ｘ、ｙ、及びｚ方向、但し、基板の主表面に対して、ｚ方向は実質的に垂直であり、ｘ方向及びｙ方向は実質的に平行である）の構造を形成する。
【００２４】
非限定的な例として、３次元メモリ構造は、複数の２次元のメモリ装置平面の積層体として垂直に構成されることがある。別の非限定的な例として、３次元メモリアレイは複数の垂直列（例えば、基板の主表面に対して実質的に垂直に、即ちｙ方向に延びる列）として構成され、各列は複数のメモリセルを有することがある。垂直列は、２次元の構成、例えば、ｘ−ｙ平面に配置されることがあり、その結果、メモリセルの３次元構成がもたらされ、メモリセルは複数の垂直に積層されたメモリ平面上にある。３次元のメモリ素子の他の構成も、３次元のメモリアレイを構成することができる。
【００２５】
非限定的な例として、３次元のＮＡＮＤメモリアレイでは、メモリ素子を互いに結合して、複数の水平なメモリ装置平面を横断する垂直なＮＡＮＤストリングを形成することがある。他の３次元構成を構想することもでき、この構成では、幾つかのＮＡＮＤストリングが単一のメモリ平面のメモリ素子を含み、他のストリングが複数のメモリ平面にまたがるメモリ素子を含む。３次元メモリアレイは、ＮＯＲ構成及びＲｅＲＡＭ構成で設計されることもある。
【００２６】
当業者であれば、この技術は単一の特定のメモリ構造に限定されず、本明細書に記載され、当業者のうちの１人によって理解される、技術の趣旨及び範囲内で、多くの関連するメモリ構造をカバーすることを、理解するであろう。
【００２７】
図３Ａは、図２のコントローラ２１４内の１つ又は複数のプロセッサをプログラミングするためのソフトウェアモジュールを示すブロック図である。図３Ａは、読出しモジュール３００、プログラミングモジュール３０２、及び消去モジュール３０４がＲＯＭ２１４ａに格納されている様子を示している。これらのソフトウェアモジュールは、ＲＡＭ又はメモリダイ２０２に格納することもできる。読出しモジュール３００は、読み出し動作を実行するようにプロセッサ２１４ｃをプログラムするソフトウェアを含む。プログラミングモジュール３０２は、プログラミング動作を（プログラミングの検証を含めて）実行するようにプロセッサ２１４ｃをプログラムするソフトウェアを含む。消去モジュール３０４は、消去動作を実行するようにプロセッサ２１４ｃをプログラムするソフトウェアを含む。これらのソフトウェアに基づいて、コントローラ２１４は、メモリダイ２０２にメモリ動作を実行するように命令する。
【００２８】
図３Ｂは、図２のステートマシン２２２（又はメモリダイ２０２上の他のプロセッサ）をプログラミングするためのソフトウェアモジュールを示すブロック図である。図３Ｂは、読出しモジュール３１０、プログラミングモジュール３１２、及び消去モジュール３１４が、コード及びパラメータ記憶装置２２８内に格納されている様子を示す。これらのソフトウェアモジュールは、ＲＡＭ又は図２のメモリ構造２０４に格納することもできる。読出しモジュール３１０は、読み出し動作を実行するようにステートマシン２２２をプログラムするソフトウェアを含む。プログラミングモジュール３０２は、プログラミング動作を（プログラミングの検証を含めて）実行するようにステートマシン２２２をプログラムするソフトウェアを含む。消去モジュール３０４は、消去動作を実行するようにステートマシン２２２をプログラムするソフトウェアを含む。或いは、（電子回路である）ステートマシン２２２は、完全にハードウェアで実装することができ、その結果、これらの機能を実行するためにソフトウェアは不要になる。
【００２９】
図４Ａは、２つの平面４０２及び４０４に分割された、メモリ構造２０４の構成の一例を説明するブロック図である。このとき、各平面は、Ｍ個のブロックに分割される。一例では、各平面は約２，０００個のブロックを有する。しかしながら、異なる数のブロック及び平面を使用することもできる。
【００３０】
図４Ｂ〜図４Ｅは、例示的な３ＤのＮＡＮＤ構造を示す。図４Ｂは、メモリ構造２０４のうちの１つのブロックの一部の上面図を示すブロック図である。図４Ｂに示されたブロックの部分は、図４Ａのブロック２の部分４０６に対応する。図４Ｂに示すブロックは、矢印４０８の方向及び矢印４１０の方向に延びている。一実施形態では、メモリアレイは４８層を有する。他の実施形態は、４８層未満又は４８層より多くの層を有する。しかしながら、図４Ｂは最上層のみを示している。
【００３１】
図４Ｂは、垂直列を表す複数の円を示している。垂直列の各々は、複数の選択トランジスタ及び複数のメモリセルを含む。一実施形態では、垂直列の各々は、ＮＡＮＤストリングを実装している。垂直列の更なる詳細を、以下に記す。図４Ｂに示すブロックは矢印４０８の方向及び矢印４１０の方向に延びているので、このブロックは図４Ｂに示すよりも多数の垂直列を含む。
【００３２】
図４Ｂは、１組のビット線４１２も示している。ブロックの一部のみが示されているので、図４Ｂは、２４本のビット線を示している。他の実施形態では、２４本より多くのビット線が、ブロックの垂直列に接続されている。垂直列を表す各円は、「ｘ」を有して、１本のビット線への接続を示している。
【００３３】
図４Ｂに示すブロックは、複数の層を垂直列の下のソース線に接続する、１組のローカルインターコネクト４１４、４１６、４１８、４２０、及び４２２を含む。ローカルインターコネクト４１４、４１６、４１８、４２０、及び４２２は、ブロックの各層を４つの領域に分割するようにも作用する。例えば、図４Ｂに示す最上層は、領域４２４、４２６、４２８、及び４３０に分割される。
【００３４】
メモリセルを実装するブロックの層において、この４つの領域は、ワード線フィンガーと呼ばれ、これは、ローカルインターコネクトによって分離される。一実施形態では、ブロックの共通レベルにあるワード線フィンガー同士は、ブロックの端部で互いに接続して、単一のワード線を形成する。別の実施形態では、同一レベルにあるワード線フィンガー同士は、互いに接続されない。
【００３５】
一実施例では、１本のビット線は、領域４２４、４２６、４２８、及び４３０の各々で１つの垂直列にのみ接続する。この実施例では、各ブロックは１６行の活性列を有し、各ビット線は各ブロックにおいて４つの行に接続する。一実施形態では、共通のビット線に接続された４つの行の全てが、（互いに接続される、同一レベルにある異なるワード線フィンガーを介して）同じワード線に接続される。従って、システムは、ソース選択線及びドレイン選択線を使用して、メモリ動作（プログラム、検証、読出し、及び／又は消去）にかけられる４つの行のうちの１つ（又は別の部分集合）を選択する。
【００３６】
図４Ｂは、各領域が垂直列の４つの行を有し、ブロック内に４つの領域及び１６行の垂直列があることを示しているが、これらの厳密な数は、実装の例に過ぎない。他の実施形態は、１ブロックあたりより多くの又はより少ない領域を含み、１領域あたりより多くの又はより少ない垂直列の行を含み、１ブロックあたりより多くの又はより少ない垂直列の行を含むことがある。
【００３７】
図４Ｂは、垂直列が互い違いに配置されていることも示している。他の実施形態では、異なるパターンの互い違いの配置を用いることができる。実施形態によっては、垂直列は互い違いに配置されない。
【００３８】
図４Ｃは、３次元メモリ構造２０４の一実施形態の一部を示しており、図４Ｂの線ＡＡに沿った断面図を示している。この断面図は、垂直列４３２及び４３４並びに領域４２６を切断する（図４Ｂを参照）。図４Ｃの構造は、２つのドレイン選択層（ＳＧＤ１及びＳＧＤ１）、２つのソース選択層（ＳＧＳ１及びＳＧＳ２）、４つのダミーワード線層（ＤＷＬＬ１ａ、ＤＷＬＬ１ｂ、ＤＷＬＬ２ａ、及びＤＷＬＬ２ｂ）、及びデータメモリセルに接続するための３２のワード線層（ＷＬＬ０〜ＷＬＬ３１）を含む。他の実施形態は、２つより多くの又は２つより少ないドレイン選択層、２つより多くの又は２つより少ないソース選択層、４つより多くの又は４つより少ないダミーワード線層、及び３２より多くの又は３２より少ないワード線層を実装することができる。
【００３９】
垂直列４３２及び４３４は、ドレイン選択層、ソース選択層、ダミーワード線層、及びワード線層を通って突き出るように描かれている。一実施形態では、垂直列４３２及び４３４の各々がＮＡＮＤストリングを含む。垂直列４３２及び４３４並びに以下に列挙される層は、基板１０２、基板１０２上の絶縁膜４３６、及び絶縁膜４３６上のソース線ＳＬの上方に配置される。垂直列４３２は、コネクタ４４０を介してビット線４３８に接続される。ローカルインターコネクト４１６及び４１８も描かれている。
【００４０】
参照し易くするために、ドレイン選択層（ＳＧＤ１及びＳＧＤ１）、ソース選択層（ＳＧＳ１及びＳＧＳ２）、ダミーワード線層（ＤＷＬＬ１ａ、ＤＷＬＬ１ｂ、ＤＷＬＬ２ａ、ＤＷＬＬ２ｂ）、及びワード線層（ＷＬＬ０〜ＷＬＬ３１）は、ひとまとめにして導電層と呼ばれる。一実施形態では、導電層はＴｉＮとタングステンとの組み合わせから作製される。他の実施形態では、ドープされたポリシリコン、タングステンなどの金属、又は金属ケイ素化合物などの他の材料を使用して、導電層を形成することができる。実施形態によっては、異なる導電層を異なる材料から形成することができる。
【００４１】
導電層同士の間には、誘電層ＤＬ０〜ＤＬ１９がある。例えば、誘電層ＤＬ１０は、ワード線層ＷＬＬ２６の上、且つワード線層ＷＬＬ２７の下にある。一実施形態では、誘電層はＳｉＯ２から作製される。他の実施形態では、他の誘電材料を使用して誘電層を形成することができる。
【００４２】
ワード線層ＷＬＬ０〜ＷＬＬ３１は、メモリセル（データメモリセルとも呼ばれる）に接続する。ダミーワード線層ＤＷＬＬ１ａ、ＤＷＬＬ１ｂ、ＤＷＬＬ２ａ、及びＤＷＬＬ２ｂは、ダミーメモリセルに接続する。非データメモリセルとも呼ばれるダミーメモリセルはユーザデータを記憶しないのに対して、データメモリセルは、ユーザデータを記憶するに好適である。従って、データメモリセルはプログラムされることがある。ドレイン選択層ＳＧＤ１及びＳＧＤ１は、ＮＡＮＤストリングをビット線に電気的に接続したりビット線から切り離したりするのに使用される。ソース選択層ＳＧＳ１及びＳＧＳ２は、ＮＡＮＤストリングをソース線ＳＬに電気的に接続したりソース線ＳＬから切り離したりするのに使用される。
【００４３】
図４Ｄは、図４Ｃに部分的に示されたブロックについて、導電層（ＳＧＤ１、ＳＧＤ１、ＳＧＳ１、ＳＧＳ２、ＤＷＬＬ１ａ、ＤＷＬＬ１ｂ、ＤＷＬＬ２ａ、ＤＷＬＬ２ｂ、及びＷＬＬ０〜ＷＬＬ３１）の斜視図を示す。図４Ｂに関して上述したように、ローカルインターコネクト４１４、４１６、４１８、４２０、及び４２２は、各導電層を４つの領域に分割する。例えば、ドレイン選択ゲート層ＳＧＤ１（最上層）は、領域４２４、４２６、４２８、及び４３０に分割される。同様に、ワード線層ＷＬＬ３１は、領域４４２、４４４、４４６、及び４４８に分割される。ワード線層（ＷＬＬ０〜ＷＬＬ３１）については、領域はワード線フィンガーと呼ばれる。例えば、ワード線層ＷＬＬ３１は、ワード線フィンガー４４２、４４４、４４６、及び４４８に分割される。
【００４４】
図４Ｅは、垂直列４３２の一部を含む、図４Ｃの領域４５０の断面図を示す。一実施形態では、垂直列は丸く、４つの層を含む。しかしながら、他の実施形態では、４つより多くの又は４つより少ない層を含むことができ、他の形状を使用することができる。一実施形態では、垂直列４３２は、ＳｉＯ２などの誘電体から作製される内部コア層４５２を含む。他の材料を使用することもできる。内部コア４５２を囲んでいるのは、垂直ポリシリコンチャンネル４５４である。ポリシリコン以外の材料を使用することもできる。なお、垂直ポリシリコンチャンネル４５４はビット線に接続している。垂直ポリシリコンチャンネル４５４を囲んでいるのは、トンネリング誘電体４５６である。一実施形態では、トンネリング誘電体４５６は、酸化物−窒化物−酸化物（ＯＮＯ）構造を有する。トンネリング誘電体４５６を囲んでいるのは、（例えば）捕獲密度を増加させる特別に処方されたシリコン窒化物などの、電荷捕獲層４５８である。
【００４５】
図４Ｅは、誘電層ＤＬＬ１１、ＤＬＬ１２、ＤＬＬ１３、ＤＬＬ１４、及びＤＬＬ１５、並びにワード線層ＷＬＬ２７、ＷＬＬ２８、ＷＬＬ２９、ＷＬＬ３０、及びＷＬＬ３１を示す。各ワード線層は、酸化アルミニウム層４６２によって囲まれるワード線領域４６０を含み、酸化アルミニウム層４６２はブロッキング酸化物（ＳｉＯ２）層４６４で囲まれている。ワード線層と垂直列との物理的相互作用がメモリセルを形成する。従って、一実施形態では、メモリセルは、垂直ポリシリコンチャンネル４５４、トンネリング誘電体４５６、電荷捕獲層４５８、ブロッキング酸化物層４６４、酸化アルミニウム層４６２、及びワード線領域４６０を含む。
【００４６】
例えば、ワード線層ＷＬＬ３１及び垂直列４３２の一部が、メモリセルＭＣ１を構成する。ワード線層ＷＬＬ３０及び垂直列４３２の一部が、メモリセルＭＣ２を構成する。ワード線層ＷＬＬ２９及び垂直列４３２の一部が、メモリセルＭＣ３を構成する。ワード線層ＷＬＬ２８及び垂直列４３２の一部が、メモリセルＭＣ４を構成する。ワード線層ＷＬＬ２７及び垂直列４３２の一部が、メモリセルＭＣ５を構成する。他のアーキテクチャでは、メモリセルは異なる構造を有することがある。しかしながら、メモリセルは、依然として記憶装置である。
【００４７】
メモリセルがプログラムされると、そのメモリセルに関連付けられた電荷捕獲層４５８の一部に電子が蓄積される。これらの電子は、ワード線領域４６０上の適切な電圧に応答して、垂直ポリシリコンチャンネル４５４からトンネリング層４５８を通って電荷捕獲層４５８に引き込まれる。メモリセルの閾値電圧（Ｖｔｈ）は、蓄積された電荷の量に比例して増加する。消去動作の間、電子がチャンネルに戻るか、又はホールが電子と再結合する。
【００４８】
一実施形態では、メモリセルは、十分な時間の間、チャンネルを消去電圧Ｖｅｒａ（例えば、２０〜２４ボルト）に上げることによって、且つ、ソース線及びビット線がフローティング状態である間に選択されたブロックのワード線を接地することによって、消去される。消去するように選択されていないブロックでは、ワード線はフローティングされる。容量結合のおかげで、選択されていないワード線、ビット線、選択線、及び共通ソース線も、消去電圧Ｖｅｒａのかなりの割合まで上昇し、それによって、消去するように選択されていないブロックでの消去を妨げる。
【００４９】
図５は、センスアンプ回路５００を示す概略図である。各センスブロックＳＢ１、ＳＢ２、…、ＳＢｐ（図２）は、複数のセンスアンプ回路を含む。以下で説明するように、センスアンプ回路５００は、コンデンサ（又は他の電荷蓄積装置）をプリチャージ量までプリチャージし、ストローブ時間の間、メモリセルを通じてコンデンサを放電させ、ストローブ時間の後でコンデンサの電圧を検知する。センス電圧は、検知される電流をメモリセルが導通したかどうかを示し、これは、メモリセルの閾値電圧が、試験される閾値電圧（制御ゲート電圧に相当する）よりも大きいか又は小さいかを示す。
【００５０】
メモリセルの閾値電圧が、試験される閾値電圧よりも大きい場合には、検証動作の間に、メモリセルは、本明細書に記載されるプロセスに基づいて適切にプログラミングを完了する。センスアンプ回路５００は、ビット線に接続されたトランジスタ５０２を含む。トランジスタ５０２は、そのゲートで信号ＢＬＣを受信し、また、電圧クランプとして使用される。ゲート電圧ＢＬＣは、所望のビット線電圧にトランジスタ５０２の閾値電圧を加えた電圧に等しい一定の電圧でバイアスされる。従って、トランジスタ５０２の機能は、ビット線を流れる電流が変化する場合でも、検知動作の間（読み出し又は検証の間）、一定のビット線電圧を維持することである。
【００５１】
トランジスタ５０２は、トランジスタ５０４及び５０６に接続されている。トランジスタ５０４は、ＳＥＮと記されたノードにおいて、コンデンサ５０８に接続される。トランジスタ５０４の目的は、コンデンサ５０８がビット線と選択的に通信するように、コンデンサ５０８をビット線に接続し、コンデンサ５０８をビット線から切り離すことである。換言すると、トランジスタ５０４はストローブ時間を調節する。即ち、トランジスタ５０４がオンになっている間、コンデンサ５０８はビット線を介して放電することができ、トランジスタ５０４がオフになっているとき、コンデンサ５０８はビット線を介して放電することができない。
【００５２】
ＳＥＮノードは、トランジスタ５１０及びトランジスタ５１２にも接続されている。トランジスタ５１０は、トランジスタ５０６、５１４、及び５１６に接続されている。トランジスタ５１６は、トランジスタ５１８にも接続されている。トランジスタ５１６及び５１８はＰＭＯＳトランジスタであり、一方、センスアンプ回路５００の他のトランジスタはＮＭＯＳトランジスタである。トランジスタ５１０、５１６、及び５１８は、コンデンサ５０８へのプリチャージ経路を提供する。電圧（例えば、Ｖｄｄ又は他の電圧）が、トランジスタ５１８のソースに印加される。トランジスタ５１０、５１６、及び５１８を適切にバイアスすることにより、トランジスタ５１８のソースに印加される電圧を使用して、コンデンサ５０８をプリチャージすることができる。プリチャージの後で、トランジスタ５０４を介して、ビット線を通してコンデンサ５０８を放電させることができる（トランジスタ５０２は導通していると仮定する）。
【００５３】
インバータ５３０及び５３２が、ラッチ回路を形成している。インバータ５３２の出力部はインバータ５３０の入力部に接続されており、インバータ５３０の出力部は、インバータ５３２の入力部に加えてトランジスタ５１８及び５２０に接続されている。インバータ５３２の入力部はＶｄｄを受け取り、２つのインバータ５３０、５３２はＶｄｄを保存するためのラッチとして働く。インバータ５３２の入力部は、別の値に接続することもできる。トランジスタ５１４及び５２０は、インバータ５３０及び５３２によって保存されるデータをトランジスタ５１２に伝達するための経路を提供する。トランジスタ５２０は、そのゲートで信号ＦＣＯを受信する。トランジスタ５１４は、そのゲートで信号ＳＴＲＯを受信する。ＦＣＯ及びＳＴＲＯを上げたり下げたりすることにより、インバータ５３０、５３２とトランジスタ（検知スイッチ）５１２との間に、経路が提供されたり切断されたりする。トランジスタ５１２のゲートは、ノードＳＥＮで、コンデンサ５０８、トランジスタ５０４、及びトランジスタ５１０に接続される。コンデンサ５０８の他端は、信号ＣＬＫに接続されている。
【００５４】
上述のように、コンデンサ５０８は、トランジスタ５１０、５１６、及び５１８を介してプリチャージされる。これにより、ＳＥＮノードでの電圧がプリチャージ電圧レベル（Ｖｐｒｅ）まで上昇する。トランジスタ５０４がオンになると、選択されたメモリセルの閾値電圧が、試験される電圧レベルよりも低い場合には、コンデンサ５０８は、ビット線及びこのメモリセルを介して放電することができる。コンデンサ５０８が放電可能である場合、（ＳＥＮノードにおける）コンデンサの電圧は低下する。
【００５５】
ＳＥＮノードにおけるプリチャージ電圧（Ｖｐｒｅ）は、トランジスタ５１２の閾値電圧よりも大きい。従って、ストローブ時間に先立って、トランジスタ５１２はオンになる（導通する）。ストローブ時間の間、トランジスタ５１２はオンであるので、トランジスタ５１４はオフにならなくてはならない。コンデンサがストローブ時間の間に放電しない場合は、ＳＥＮノードでの電圧はトランジスタ５１２の閾値電圧より高いままになり、ＳＴＲＯがトランジスタ５１４をオンにすると、インバータ５３０、５３２の電荷はＣＬＫ信号へと放電される。
【００５６】
ストローブ時間中にコンデンサが十分に放電すると、ＳＥＮノードでの電圧はトランジスタ５１２の閾値電圧よりも低くなり、それによって、トランジスタ５１２をオフにし、インバータ５３０、５３２に保存されたデータ（例えば、Ｖｄｄ）がＣＬＫを通じて放電されるのを防止する。よって、インバータ５３０、５３２が電荷を維持しているか又は放電したかをテストすることにより、検証プロセスの結果が示される。一実施形態では、トランジスタ５３４のゲート信号ＮＣＯをオンにすることにより、トランジスタ５３４（データ出力）を介して、ノードＡで結果を読み出すことができる。
【００５７】
コンデンサ５０８のプリチャージレベル（従って、ノードＳＥＮでのプリチャージ電圧）は、トランジスタ５１０を流れる電流によって制限される。トランジスタ５１０を流れる電流は、ゲート電圧Ｈ００によって制限される。従って、ノードＳＥＮでのプリチャージ電圧は、トランジスタ５１０の閾値電圧より低い電圧Ｈ００によって制限される。この構成では、システムは、Ｈ００を調節することにより、ノードＳＥＮでのプリチャージ電圧を調節することができる。Ｈ００での電圧がより高くなると、プリチャージ時にＳＥＮノードでの電圧がより高くなる。Ｈ００での電圧がより低くなると、プリチャージ時にＳＥＮノードでの電圧がより低くなる。
【００５８】
システムが読み出し動作又は検証動作（両方とも検知動作である）を実施すると、セルの制御ゲートに印加される電圧により、セルのチャンネル（ビット線に接続されている）が導通することがある。これが起こると、コンデンサはチャンネルを通して放電し、放電するにつれて電圧が低下する。
【００５９】
図６は、図５の様々な信号の動作を説明するタイミング図である。信号ＢＬＣはＶｂｌ＋Ｖｓｒｃ＋Ｖｔｈであり、ここでＶｂｌはビット線の電圧であり、Ｖｓｒｃはソース線の電圧であり、Ｖｔｈはトランジスタ５０２の閾値電圧である。信号ＦＬＡは、ｔ０にてＶｓｓで始まり、ｔ６でＶｄｄに移行する。信号ＦＬＡがＶｓｓにあるとき、プリチャージ経路はトランジスタ５１０によって調節される。
【００６０】
ｔ０において、Ｈ００の電圧は接地からプリチャージレベルまで上昇する。Ｈ００での電圧の上昇により、トランジスタ５１０がオンになり、プリチャージ経路が開かれる。Ｈ００での電圧の大きさが設定される。図６は、Ｖｈｏｏに向かうＨ００を示している。信号Ｈ００は、時刻ｔ１まで、プリチャージ電圧（Ｖｈｏｏ）に留まる。Ｈ００がハイである間、トランジスタ５１０がオンになり、コンデンサ５１２は、ＳＥＮでの電圧によって示されるように、ｔ０とｔ１との間でプリチャージされる。時刻ｔ１において、Ｈ００はＶｓｓに引き下げられ、プリチャージが完了する。
【００６１】
コンデンサ５１２がビット線及び選択されたメモリセルを通じて放電できるように、信号Ｘ００を使用して、コンデンサがビット線と通信できるようになる。時刻ｔ３において、Ｘ００はＶｂｌｃに上昇する。Ｖｂｌｃは、（上述したように）信号ＢＬＣの電圧である。時刻ｔ４において、Ｘ００での電圧は、Ｖｓｓに低下する。ストローブ時間として知られる時刻ｔ３とｔ４の間、コンデンサ５１２はビット線と通信して、ビット線及び選択されたメモリセルを通じて放電できるようになる（選択されたメモリセルの閾値電圧に依存する）。信号ＣＬＫは、時刻ｔ２でＶｂｌｃまで上昇し、時刻ｔ５で再びＶｓｓに低下して、回路内のいかなる衝突状態をも防止し、コンデンサ５１２の適切な放電を可能にする。
【００６２】
上述したように、Ｈ００がｔ０とｔ１との間で上昇するので、コンデンサ５１２（及びＳＥＮノード）は、ｔ０とｔ１との間で充電される（プリチャージ）。これは、図６に、ＳＥＮノードがＶｓｓからＶｐｒｅに充電されて、示されている。Ｖｐｒｅに対する実線は、Ｖｈ００がトランジスタ５０６のゲートに印加されるのに応答した、ノードＳＥＮ（及びコンデンサ５１２）の例示的なプリチャージを表す。
【００６３】
Ｘ００がｔ３で上昇すると、コンデンサ５１２は、はじめにビット線をプリチャージし、次いで、ビット線を通じて放電することができる（閾値電圧が適切なレベルにある場合）。図６に示すように、メモリセルがオン（導通）の場合、ｔ３とｔ４の間で、ＳＥＮノードでの電圧はＶｐｒｅからＶｐｏｓｔ＿ｃｏｎに低下する。というのも、メモリセルの閾値電圧は、その制御ゲートに印加される電圧以下であるからである。試験されるメモリセルに対する閾値電圧が、その制御ゲートに印加される電圧よりも高い場合には、コンデンサ５０８は放電せず、電圧はＶｐｒｅのままである。ｔ３とｔ４との間の期間はストローブ時間であり、上述したように調節することができる。
【００６４】
図６は、信号ＦＣＯがｔ７でＶｄｄに上昇し、ｔ９でＶｓｓに低下することを示す。信号ＳＴＲＯは、ｔ８でＶｄｄに上昇し、ｔ９で低下する。時刻ｔ８とｔ９との間、インバータ５３０、５３２とトランジスタ５１２との間に経路が存在する。ノードＳＥＮでの電圧がトランジスタ５１２の閾値電圧よりも大きい場合には、インバータ５３０、５３２からＣＬＫへの経路が存在し、インバータ５３０、５３２のデータは、信号ＣＬＫ及びトランジスタ５１２を通じて消失する。
【００６５】
ノードＳＥＮでの電圧がトランジスタ５１２の閾値電圧よりも低い場合（例えば、コンデンサが放電された場合）、トランジスタ５１２はオフになり、インバータ５３０、５３２によって保存された電圧はＣＬＫへと消失しない。図６は、ノードＡにおける電圧レベルをＶｄｄで示す。（例えば、選択されたメモリセルの閾値電圧が、試験される電圧よりも高いので、十分な電流が流れないため）コンデンサの電圧が消失しない場合、トランジスタ５１２はオンのままであり、ノードＡでの電圧は（破線で示すように）Ｖｓｓに低下する。
【００６６】
（例えば、選択されたメモリセルの閾値電圧が、試験される電圧よりも低いので、十分な電流が流れるため）コンデンサの電圧が消失する場合、トランジスタ５１２はオフになり、ノードＡでの電圧は（実線で示すように）Ｖｄｄのままになる。ノードＡの出力は、Ｖｄｄを信号ＮＣＯに印加することによって、トランジスタ５３４を介して、データ出力信号に供給される。
【００６７】
図７は、図６のタイミング図に従って実行される、単一のストローブ検知動作を説明するフローチャートである。ステップ７０２で、適切な検証基準電圧（例えば、Ｖｖ、Ｖｖ１、Ｖｖ２、Ｖｖ３、Ｖｖ４、Ｖｖ５、Ｖｖ６、又はＶｖ７−図８Ａを参照）が、選択されたワード線に印加される。選択されたワード線は、プログラムされ検証されるメモリセルに接続される。プログラムされ検証されるメモリセルに接続されたビット線は、所定のプリチャージレベルに充電される。
【００６８】
ステップ７０４で、全てのＳＥＮノードがプリチャージされる。ステップ７０６で、例えば、コンデンサ５０８を放電することにより、ビット線が放電できるようになる（図６のｔ５〜ｔ６を参照）。「ストローブ時間」又は「積分時間」と呼ばれる所定の時間の後で、それぞれのメモリセルがステップ７０８で導通したかどうかを確認するために、コンデンサ５０８（又はＳＥＮノード）の電圧が、上述したようにサンプリングされる。上述したように、検証プロセスは、同一のワード線及び異なるビット線に接続された何千ものメモリセルに対して、同時に実施される。
【００６９】
成功したプログラミングプロセス（検証を伴う）の終了時に、メモリセルの閾値電圧は、プログラムされたメモリセル用の閾値電圧の１つ又は複数の分布内、又は、消去されたメモリセル用の閾値電圧の分布内に、適切に存在しなくてはならない。図８Ａは、各メモリセルが４ビットのデータを記憶する場合の、メモリセルアレイに対する例示的な閾値電圧分布を示す。しかしながら、他の実施形態は、１メモリセルあたり他のデータ容量（例えば、１メモリセルあたり１、２、３、又は５ビットのデータなど）を使用することがある。
【００７０】
図８Ａは、１６個の閾値電圧分布（１６のデータ状態に対応する）を示している。第１の閾値電圧分布（データ状態）Ｓ０は、消去されるメモリセルを表す。他の１５個の閾値電圧分布（データ状態）Ｓ１〜Ｓ１５は、プログラムされるメモリセルを表す。各閾値電圧分布（データ状態）は、データビットの組に対する所定の値に対応する。
【００７１】
メモリセルにプログラムされたデータとメモリセルの閾値電圧レベルとの間の特定の関係は、そのセルに採用されたデータ符号化方式に依存する。一実施形態では、データ値は、グレーコード割り当てを使用して閾値電圧範囲に割り当てられ、その結果、フローティングゲートの閾値電圧がその隣の物理状態に誤ってシフトした場合に、１ビットのみが影響を受けるようになる。なお、状態Ｎ−１は、状態Ｎに対して隣接するより低いデータ状態である。例えば、状態７は、状態８に対して隣接するより低いデータ状態である。
【００７２】
図８Ａは、メモリセルからデータを読み出すための、１５の読み出し基準電圧Ｖｒ１、Ｖｒ２、Ｖｒ３、Ｖｒ４、Ｖｒ５、Ｖｒ６、Ｖｒ７、Ｖｒ８、Ｖｒ９、Ｖｒ１０、Ｖｒ１１、Ｖｒ１２、Ｖｒ１３、Ｖｒ１４、及びＶｒ１５も示している。所与のメモリセルの閾値電圧がこの１５の読み出し基準電圧よりも高いか低いかを試験することによって、システムは、メモリセルがどのデータ状態（即ち、Ｓ０、Ｓ１、Ｓ２、Ｓ３、…）にあるのかを決定することができる。
【００７３】
図８Ａは、１５の検証基準電圧Ｖｖ１、Ｖｖ２、Ｖｖ３、Ｖｖ４、Ｖｖ５、Ｖｖ６、Ｖｖ７、Ｖｖ８、Ｖｖ９、Ｖｖ１０、Ｖｖ１１、Ｖｖ１２、Ｖｖ１３、Ｖｖ１４、及びＶｖ１５も示している。メモリセルをデータ状態Ｓｉにプログラムするとき、システムは、それらのメモリセルがＶｖｉ以上の閾値電圧を有するかどうかを試験する。例えば、メモリセルをデータ状態Ｓ１にプログラムするとき、システムは、それらのメモリセルがＶｖ１以上の閾値電圧を有するかどうかを試験する。メモリセルをデータ状態Ｓ２にプログラムするとき、システムは、メモリセルがＶｖ２以上の閾値電圧を有するかどうかを試験し、以下同様である。
【００７４】
フルシーケンスプログラミングとして知られる一実施形態では、メモリセルを、消去データ状態Ｓ０からプログラムされたデータ状態Ｓ１〜Ｓ１５のいずれかに直接的にプログラムすることができる。例えば、プログラムされることになるメモリセルの母集団は、母集団の全てのメモリセルが消去データ状態Ｓ０になるように、まず消去されることがある。次いで、プログラミングプロセスを使用して、メモリセルをデータ状態Ｓ１、Ｓ２、Ｓ３、Ｓ４、Ｓ５、Ｓ６、Ｓ７、Ｓ８、Ｓ９、Ｓ１０、Ｓ１１、Ｓ１２、Ｓ１３、Ｓ１４、及び／又はＳ１５に直接的にプログラムする。
【００７５】
例えば、幾つかのメモリセルがデータ状態Ｓ０からデータ状態Ｓ１にプログラムされる一方で、他のメモリセルは、データ状態Ｓ０からデータ状態Ｓ２へプログラムされ、且つ／又はデータ状態Ｓ０からデータ状態Ｓ３にプログラムされ、以下同様である。図８Ａの矢印は、このフルシーケンスプログラミングを表している。
【００７６】
図８Ｂは、誤り訂正が、誤りのあるメモリセルの一定の割合を処理することができるので、部分的に重複することができる、データ状態Ｓ０〜Ｓ１５に対応する閾値電圧分布の別の実施形態を示す。図面のサイズのせいで、データ状態の参照符号は切り詰められており、その結果、Ｓ０ではなく０が使用され、Ｓ１ではなく１が使用され、Ｓ２ではなく２が使用され、以下同様である。
【００７７】
図９Ａ〜図９Ｃは、４ビットのデータを記憶するメモリセルにデータをプログラミングするための３段階のプログラミングプロセスを示している。プログラミングに先立って、ブロックの全てのメモリセルが、消去閾値電圧分布へと消去される。例えば、図９Ａは、メモリセルのブロックが、消去閾値電圧分布Ｅ（破線で示される）から開始することを示している。実施形態によっては、消去閾値電圧Ｅはゼロボルト未満である。他の実施形態では、消去閾値電圧分布Ｅはゼロボルトより大きいか、又は部分的にゼロボルトより大きい。
【００７８】
この実施形態では、プログラミングプロセスは３つの段階を含む。プログラミングの第１段階の間、（メモリセルに記憶されるべきデータに起因して）ターゲットがデータ状態Ｓ４、Ｓ５、Ｓ６、又はＳ７であるメモリセルは、中間状態ＩＭ０にプログラムされる。ターゲットがデータ状態Ｓ８、Ｓ９、Ｓ１０、又はＳ１１であるメモリセルは、中間状態ＩＭ１にプログラムされる。ターゲットがデータ状態Ｓ１２、Ｓ１３、Ｓ１４、又はＳ１５であるメモリセルは、中間状態ＩＭ２にプログラムされる。ターゲットがデータ状態Ｓ０、Ｓ１、Ｓ２、又はＳ３であるメモリセルは、消去閾値電圧分布Ｅのままである。この第１段階は、図９Ａに図式的に描かれている。
【００７９】
プログラミングプロセスの第２段階の間、消去閾値電圧分布Ｅにあるメモリセルは、それらのターゲットデータ状態にプログラムされる。例えば、データ状態Ｓ３にプログラムされるべきメモリセルは、消去閾値電圧分布Ｅからデータ状態Ｓ３にプログラムされ、データ状態Ｓ２にプログラムされるべきメモリセルは、消去閾値電圧分布Ｅからデータ状態Ｓ２にプログラムされ、データ状態Ｓ１にプログラムされるべきメモリセルは、消去閾値電圧分布Ｅからデータ状態Ｓ１にプログラムされ、データ状態Ｓ０にあるべきメモリセルは、プログラミングプロセスの第２段階の間にプログラムされない。従って、消去閾値電圧分布Ｅはデータ状態Ｓ０になる。
【００８０】
また、第２段階の間に、メモリセルは中間状態ＩＭ０から複数のデータ状態Ｓ４〜Ｓ７にプログラムされる。例えば、データ状態Ｓ７にプログラムされるべきメモリセルは、中間状態ＩＭ０からデータ状態Ｓ７にプログラムされ、データ状態Ｓ６にあるように目標付けられているメモリセルは、中間状態ＩＭ０からデータ状態Ｓ６にプログラムされ、データ状態Ｓ５にプログラムされるべきメモリセルは、中間状態ＩＭ０からデータ状態Ｓ５にプログラムされ、データ状態Ｓ４にプログラムされるべきメモリセルは、中間状態ＩＭ０からデータ状態Ｓ４にプログラムされる。
【００８１】
また、メモリセルは、中間状態ＩＭ１から複数のデータ状態Ｓ８〜Ｓ１１にプログラムされる。例えば、データ状態Ｓ１１にプログラムされるべきメモリセルは、中間状態ＩＭ１からデータ状態Ｓ１１にプログラムされ、データ状態Ｓ１０にあるように目標付けられているメモリセルは、中間状態ＩＭ１からデータ状態Ｓ１０にプログラムされ、データ状態Ｓ９にプログラムされるべきメモリセルは、中間状態ＩＭ１からデータ状態Ｓ９にプログラムされ、データ状態Ｓ８にプログラムされるべきメモリセルは、中間状態ＩＭ１からデータ状態Ｓ８にプログラムされる。
【００８２】
また、メモリセルは、中間状態ＩＭ２から複数のデータ状態Ｓ１２〜Ｓ１５にプログラムされる。例えば、データ状態Ｓ１５にプログラムされるべきメモリセルは、中間状態ＩＭ２からデータ状態Ｓ１５にプログラムされ、データ状態Ｓ１４にあるように目標付けられているメモリセルは、中間状態ＩＭ２からデータ状態Ｓ１４にプログラムされ、データ状態Ｓ１３にプログラムされるべきメモリセルは、中間状態ＩＭ２からデータ状態Ｓ１３にプログラムされ、データ状態Ｓ１２にプログラムされるべきメモリセルは、中間状態ＩＭ２からデータ状態Ｓ１２にプログラムされる。プログラミングのこの第２段階は、図９Ｂに図示されている。
【００８３】
図９Ｂから分かるように、プログラミングの第２段階の終了時には、データ状態Ｓ１〜Ｓ１５は、隣接するデータ状態と重複する。例えば、データ状態Ｓ１はデータ状態Ｓ２と重複し、データ状態Ｓ２はデータ状態Ｓ１及びＳ３と重複し、データ状態Ｓ３はデータ状態Ｓ２及びＳ４と重複し、データ状態Ｓ４はデータ状態Ｓ３及びＳ５と重複し、データ状態Ｓ５はデータ状態Ｓ４及びＳ６と重複し、データ状態Ｓ６はデータ状態Ｓ５及びＳ７と重複し、以下同様である。実施形態によっては、データ状態の一部又は全部が、重複しない。
【００８４】
プログラミングの第３段階では、データ状態Ｓ１〜Ｓ１５の各々が狭められて、その結果、もはや隣接する状態と重複しなくなる。これは、図９Ｃに図式的に示されている。実施形態によっては、データ状態Ｓ０は、データ状態Ｓ１〜Ｓ１５よりも広くなっている。
【００８５】
図１０は、共通のワード線に接続されたメモリセルを１つ又は複数のターゲット（例えば、データ状態又は閾値電圧範囲）にプログラミングするためのプロセスの一実施形態を説明するフローチャートである。図１０のプロセスを、１回又は複数回実行して、１組のメモリセルに対してデータをプログラムすることができる。例えば、図１０のプロセスを使用して、図８Ａのフルシーケンスプログラミングで、メモリセルをＳ０からＳ１〜Ｓ１５のいずれかにプログラムすることができる。また、図１０のプロセスを使用して、図９Ａ〜図９Ｃの３段階のいずれかのために、メモリセルをプログラムすることができる。
【００８６】
ＮＡＮＤフラッシュメモリ装置などのフラッシュメモリ装置をプログラムする場合、プログラム電圧Ｖｐｇｍが典型的にはメモリセルのワード線に印加され、ビット線は接地される。チャンネルからの電子は、フローティングゲートに注入される。電子がフローティングゲート内に蓄積すると、フローティングゲートは負に帯電し、メモリセルの閾値電圧が上昇し、その結果、メモリセルがプログラムされた状態になる。
【００８７】
典型的には、プログラム動作の間に制御ゲートに印加されるプログラム電圧は、一連のプログラムパルスとして印加される。プログラミングパルス同士の間には、１組の検証パルスが存在して検証を行う。多くの実装では、プログラムパルスの大きさは、所定のステップサイズだけ、各連続するパルスにあわせて増加する。
【００８８】
図１０のステップ１０００では、プログラミング電圧Ｖｐｇｍが開始量（例えば、約１２〜１６Ｖ又は別の適切なレベル）に初期化され、ステートマシン２２２（図２）によって維持されるプログラムカウンタＰＣが、１に初期化される。ステップ１００２では、プログラム信号Ｖｐｇｍのプログラムパルスが、選択されたワード線（プログラミングのために選択されたワード線）に印加される。一実施形態では、同時にプログラムされるメモリセルの群が全て、同一のワード線（選択されたワード線）に接続される。選択されていないワード線は、１つ又は複数の昇圧電圧（例えば、約７〜１１ボルト）を受け取って、当分野で知られている昇圧方式を実施する。
【００８９】
一実施形態では、メモリセルがプログラムされようとしている場合、対応するビット線が接地される。一方では、メモリセルがその現在の閾値電圧に留まろうとしている場合、対応するビット線はＶｄｄ（例えば、２．２Ｖ）に接続されてプログラミングを阻止する。これにより、ビット線に結合されたセルが、たとえそのワード線上でプログラミングパルスを受けても、更なるプログラミングが阻害される。
【００９０】
ステップ１００２では、プログラムパルスが、選択されたワード線に接続された全てのメモリセルに同時に印加され、その結果、選択されたワード線に接続された全てのメモリセルが同時にプログラムされる。即ち、それらのメモリセルは、同時に、又は重複する時間の間に（どちらも同時であるとみなされる）プログラムされる。このようにして、選択されたワード線に接続された全てのメモリセルは、プログラミングからロックアウトされない限り、同時にそれらの閾値電圧を変化させる。
【００９１】
ステップ１００４では、１つ又は複数の検証動作を実行するのに適切なターゲットレベルの組を使用して、適切なメモリセルが検証される。一実施形態では、検証プロセスは、プログラミングのために選択されたメモリセルの閾値電圧が適切な検証基準電圧（例えば、Ｖｖ１、Ｖｖ２、Ｖｖ３、Ｖｖ４、Ｖｖ５、Ｖｖ６、及びＶｖ７）に到達したどうかの試験を適用することによって、実行される。
【００９２】
ステップ１００６では、全てのメモリセルがターゲット閾値電圧に達したか（合格）について判定される。そうである場合、プログラミングプロセスは完了し成功である、というのも、選択されたメモリセルの全てがそれらのターゲット状態にプログラムされ検証されたからである。ステップ１００８で、「合格」の状態が報告される。１００６で、全てのメモリセルがそれらのターゲット閾値電圧に達してはいない（不合格）という判定がなされた場合、プログラミングプロセスはステップ１０１０に続く。
【００９３】
ステップ１０１０では、システムは、それぞれのターゲット閾値電圧分布にまだ達していないメモリセルの数をカウントする。即ち、システムは、検証プロセスに失敗したメモリセルの数をカウントする。このカウントは、ステートマシン、コントローラ、又は他の論理部品によって行うことができる。一実施態様では、各センスブロックが、それぞれのセルの状態（合格／不合格）を記憶する。一実施形態では、１つの合計カウントが存在し、これは、最後の検証ステップを失敗した現在プログラムされているメモリセルの総数を反映している。別の実施形態では、それぞれのデータ状態毎に別個のカウントが維持される。
【００９４】
ステップ１０１２では、ステップ１０１０でのカウントが所定の限界値以下であるかどうかの判定がなされる。一実施形態では、所定の限界値は、メモリセルのページについての読み出しプロセスの間に、ＥＣＣによって訂正することができるビットの数である。失敗したセルの数が所定の限界値以下である場合、プログラミングプロセスは停止し、「合格」の状態がステップ１００８で報告される。この状況では、十分な数のメモリセルが正確にプログラムされており、その結果、完全にプログラムされていない残りの僅かのメモリセルは、読出しプロセスの間に、ＥＣＣを使用して訂正することができる。実施形態によっては、ステップ１０１０は各セクター、各ターゲットデータ状態、又は他の単位ごとに失敗したセルの数をカウントし、これらのカウント値はステップ１０１２で個別に又は集合的に閾値と比較される。
【００９５】
別の実施形態では、所定の限界値は、今後の誤りを見越して、読出しプロセスの間にＥＣＣによって訂正することができるビットの数より小さくすることができる。１ページに対する全メモリセルよりも少ないメモリセルをプログラムする場合、又は、１つのデータ状態のみ（又は全ての状態よりも少ない状態）に対するカウントを比較する場合、所定の限界値は、メモリセルのページの読み出しプロセスの間にＥＣＣによって訂正することができるビットの数の（比例した、又は比例しない）一部とすることができる。実施形態によっては、限界値は予め決められていない。代わりに、限界値は、そのページについて既にカウントされた誤りの数、実行されるプログラム−消去のサイクル数、又は他の基準に基づいて変化する。
【００９６】
失敗したメモリセルの数が所定の限界値以上である場合、プログラミングプロセスはステップ１０１４に進み、プログラムカウンタＰＣはプログラム限界値（ＰＬ）と照合される。プログラム限界値の例としては、２０及び３０が挙げられるが、他の値を使用することもできる。プログラムカウンタＰＣがプログラム限界値ＰＬ以上である場合、プログラムプロセスは失敗したとみなされ、不合格の状態がステップ１０１８で報告される。プログラムカウンタＰＣがプログラム限界値ＰＬ未満である場合、このプロセスはステップ１０１６に進み、このステップの間に、プログラムカウンタＰＣは１だけインクリメントされ、プログラム電圧Ｖｐｇｍは次の大きさにステップアップされる。
【００９７】
例えば、次のパルスは、１ステップサイズだけ（例えば、０．１〜０．４ボルトのステップサイズ）前のパルスよりも大きな大きさを有する。ステップ１０１６の後で、このプロセスはステップ１００２にループして戻り、別のプログラムパルスが選択されたワード線に印加される。
【００９８】
上述した実施形態では、２つの異なるビット線バイアスが使用されている。即ち、対応するメモリがプログラミングを禁止されることになっている場合には第１のビット線バイアス（例えば、Ｖｄｄ）が、対応するメモリセルがプログラムされることになっている場合には第２のビット線バイアス（例えば、０Ｖ）が使用される。従って、そのようなビット線バイアス方式では、プログラムされる全てのメモリセルに対して、メモリセルのターゲット状態に関わりなく、単一のビット線バイアスが使用される（例えば、０Ｖ）。
【００９９】
別の実施形態では、３つ以上のビット線バイアスが使用される。即ち、対応するメモリセルがプログラミングを禁止されることになっている場合には第１のビット線バイアス（例えば、Ｖｄｄ）が、プログラムされる対応するメモリセルに対しては、複数のプログラミングビット線バイアスが使用される。特に、メモリセルがプログラムされることになっている場合、対応するビット線は、プログラムされるメモリセルのターゲットデータ状態に基づいてバイアスされる。
【０１００】
図１１は、対応するメモリセルの並行プログラミングのために、複数のプログラミングビット線バイアスを使用するプログラミングプロセスの一例を説明する。図示した例では、４ビットのデータを記憶するメモリセルにデータをプログラミングするためのプログラミングプロセスを示している。プログラミングに先立って、ブロックの全てのメモリセルが、消去閾値電圧分布へと消去される。例えば、メモリセルのブロックは、消去閾値電圧分布Ｅ（破線で示される）から開始する。実施形態によっては、消去閾値電圧分布Ｅはゼロボルト未満である。他の実施形態では、消去閾値電圧分布Ｅはゼロボルトより大きいか、又は部分的にゼロボルトより大きい。
【０１０１】
プログラミングプロセスは、２つの段階を含む。第１のプログラミング段階の間、（メモリセルに記憶されるべきデータに起因して）ターゲットがデータ状態Ｓ４、Ｓ５、Ｓ６、又はＳ７であるメモリセルは、中間状態ＩＭ０にプログラムされる。ターゲットがデータ状態Ｓ８、Ｓ９、Ｓ１０、又はＳ１１であるメモリセルは、中間状態ＩＭ１にプログラムされる。ターゲットがデータ状態Ｓ１２、Ｓ１３、Ｓ１４、又はＳ１５であるメモリセルは、中間状態ＩＭ２にプログラムされる。ターゲットがデータ状態Ｓ０、Ｓ１、Ｓ２、又はＳ３であるメモリセルは、消去閾値電圧分布Ｅのままである。
【０１０２】
第２のプログラミング段階の間、メモリセルは、中間状態又は消去状態からターゲットデータ状態に同時にプログラムされ、対応するビット線は、表１に記載するように、プログラムされるメモリセルのターゲットデータ状態に基づいてバイアスされる。
【０１０３】
【表１】
2018513516.tif 000003
【０１０４】
従って、この例では、４ビットのデータを記憶する対応するメモリセルをプログラムするために、４つのプログラミングビット線バイアス（Ｖｂｌ１、Ｖｂｌ２、Ｖｂｌ３、及びＶｂｌ４）が使用される。
【０１０５】
再び図１１を参照すると、メモリセルは、中間状態ＩＭ２から複数のデータ状態Ｓ１２〜Ｓ１５にプログラムされ、対応するビット線はターゲットデータ状態に基づいてバイアスされる。例えば、データ状態Ｓ１５にプログラムされるべきメモリセルは、第１のプログラミングビット線バイアスＶｂｌ１（例えば、０Ｖ）を使用して、中間状態ＩＭ２からデータ状態Ｓ１５にプログラムされ、データ状態Ｓ１４にあるように目標付けられているメモリセルは、第２のプログラミングビット線バイアスＶｂｌ２（例えば、０．４Ｖ）を使用して、中間状態ＩＭ２からデータ状態Ｓ１４にプログラムされ、データ状態Ｓ１３にプログラムされるべきメモリセルは、第３のプログラミングビット線バイアスＶｂｌ３（例えば、０．８Ｖ）を使用して、中間状態ＩＭ２からデータ状態Ｓ１３にプログラムされ、データ状態Ｓ１２にプログラムされるべきメモリセルは、第４のプログラミングビット線バイアスＶｂｌ４（例えば、１．２Ｖ）を使用して、中間状態ＩＭ２からデータ状態Ｓ１２にプログラムされる。第１のプログラミングビット線バイアスＶｂｌ１、第２のプログラミングビット線バイアスＶｂｌ２、第３のプログラミングビット線バイアスＶｂｌ３、及び第４のプログラミングビット線バイアスＶｂｌ４は、上記に列挙し図１１に示した例示の値以外の値を有してもよい。
【０１０６】
また、メモリセルは、中間状態ＩＭ１から複数のデータ状態Ｓ８〜Ｓ１１に同時にプログラムされ、対応するビット線はターゲットデータ状態に基づいてバイアスされる。例えば、データ状態Ｓ１１にプログラムされるべきメモリセルは、第１のプログラミングビット線バイアスＶｂｌ１を使用して、中間状態ＩＭ１からデータ状態Ｓ１１にプログラムされ、データ状態Ｓ１０にあるように目標付けられているメモリセルは、第２のプログラミングビット線バイアスＶｂｌ２を使用して、中間状態ＩＭ１からデータ状態Ｓ１０にプログラムされ、データ状態Ｓ９にプログラムされるべきメモリセルは、第３のプログラミングビット線バイアスＶｂｌ３を使用して、中間状態ＩＭ１からデータ状態Ｓ９にプログラムされ、データ状態Ｓ８にプログラムされるべきメモリセルは、第４のプログラミングビット線バイアスＶｂｌ４を使用して、中間状態ＩＭ１からデータ状態Ｓ８にプログラムされる。
【０１０７】
また、メモリセルは、中間状態ＩＭ０から複数のデータ状態Ｓ４〜Ｓ７に同時にプログラムされ、対応するビット線はターゲットデータ状態に基づいてバイアスされる。例えば、データ状態Ｓ７にプログラムされるべきメモリセルは、第１のプログラミングビット線バイアスＶｂｌ１を使用して、中間状態ＩＭ０からデータ状態Ｓ７にプログラムされ、データ状態Ｓ６にあるように目標付けられているメモリセルは、第２のプログラミングビット線バイアスＶｂｌ２を使用して、中間状態ＩＭ０からデータ状態Ｓ６にプログラムされ、データ状態Ｓ５にプログラムされるべきメモリセルは、第３のプログラミングビット線バイアスを使用して、中間状態ＩＭ０からデータ状態Ｓ５にプログラムされ、データ状態Ｓ４にプログラムされるべきメモリセルは、第４のプログラミングビット線バイアスＶｂｌ４を使用して、中間状態ＩＭ０からデータ状態Ｓ４にプログラムされる。
【０１０８】
また、メモリセルは、消去閾値電圧分布Ｅから複数のデータ状態Ｓ１〜Ｓ３に同時にプログラムされ、対応するビット線はターゲットデータ状態に基づいてバイアスされる。例えば、データ状態Ｓ３にプログラムされるべきメモリセルは、第１のプログラミングビット線バイアスＶｂｌ１を使用して、消去閾値電圧分布Ｅからデータ状態Ｓ３にプログラムされ、データ状態Ｓ２にプログラムされるべきメモリセルは、第２のプログラミングビット線バイアスＶｂｌ２を使用して、消去閾値電圧分布Ｅからデータ状態Ｓ２にプログラムされ、データ状態Ｓ１にプログラムされるべきメモリセルは、第３のプログラミングビット線バイアスＶｂｌ３を使用して、消去閾値電圧分布Ｅからデータ状態Ｓ１にプログラムされ、データ状態Ｓ０にあるべきメモリセルは、プログラミングプロセスの第２段階の間にプログラムされない。従って、消去閾値電圧分布Ｅはデータ状態Ｓ０になる。
【０１０９】
図１１から分かるように、プログラミング中に使用されるビット線バイアスは、中間状態分布とターゲット状態分布との間の電圧差に相当する。即ち、データ状態Ｓ１５、Ｓ１１、Ｓ７及びＳ３は、中間状態分布ＩＭ２、ＩＭ１、ＩＭ０及びＥから最も大きな電圧差があり、第１のプログラミングビット線バイアスＶｂｌ１を用いてプログラムされる。同様に、データ状態Ｓ１４、Ｓ１０、Ｓ６及びＳ２は、中間状態分布ＩＭ２、ＩＭ１、ＩＭ０及びＥとの第１のより小さな電圧差を有し、第２のプログラミングビット線バイアスＶｂｌ２を用いてプログラムされる。同様に、データ状態Ｓ１３、Ｓ９、Ｓ５及びＳ１は、中間状態分布ＩＭ２、ＩＭ１、ＩＭ０及びＥとの第２のより小さな電圧差を有し、第３のプログラミングビット線バイアスＶｂｌ３を用いてプログラムされる。最後に、データ状態Ｓ１２、Ｓ８、及びＳ４は、中間状態分布ＩＭ２、ＩＭ１、ＩＭ０及びＥとの第３のより小さな電圧差を有し、第４のプログラミングビット線バイアスＶｂｌ４を用いてプログラムされる。
【０１１０】
ビット線同士の結合を低減するために、偶数のメモリセルを、奇数のメモリセルとは別にプログラムしなければならない。
【０１１１】
図１１は、４ビットのデータを記憶するメモリセルにデータをプログラムするための２段階のプログラミングプロセスについて説明しているが、４ビットより多くの又は少ないデータを記憶するメモリセルにデータをプログラムするために、同様の多ビット線バイアス技術を使用することができる。更に、図１１は、４つのプログラミングビット線バイアスを使用するプログラミングプロセスについて説明しているが、４つより多くの又は少ないプログラミングビット線バイアスを使用してもよい。更に、図１１は、２段階のプログラミングプロセスについて説明しているが、３つ以上の段階を用いるプログラミングプロセスに対して、同様の多ビット線バイアス技術を使用してもよい。
【０１１２】
図１１に示した実施形態では、５つの異なるビット線バイアスが使用されている。即ち、対応するメモリがプログラミング禁止になっている場合の禁止ビット線バイアス（例えば、Ｖｄｄ）、及び対応するメモリセルをプログラムするための４つのプログラミングビット線バイアスであり、プログラミングビット線バイアスは、プログラムされるメモリセルのターゲットデータ状態に基づいている。
【０１１３】
図１２は、プログラムされるメモリセルのターゲットデータ状態に基づいて、１つの禁止ビット線バイアス及び複数のプログラミングビット線バイアスを提供するセンスアンプ回路１２００を示す概略図である。
【０１１４】
センスアンプ回路１２００は、ビット線及びＣＯＭノードに接続されたトランジスタ１２０２を含む。トランジスタ１２０２は、そのゲートで信号ＢＬＣを受信し、信号ＢＬＣの電圧レベルに基づいて、ビット線をＣＯＭノードに接続したり切り離したりする。信号ＢＬＣがハイ（例えば、Ｖｄｄ）である場合、トランジスタ１２０２はオンになり、ビット線はＣＯＭノードの電位まで充電する。信号ＢＬＣがロー（例えば、０Ｖ）である場合、トランジスタ１２０２はオフになり、ビット線はフローティング状態になる。
【０１１５】
トランジスタ１２０２は、ＣＯＭノードでｎチャンネルトランジスタ１２０４及び１２０６に接続される、ｎチャンネルトランジスタである。トランジスタ１２０４は、そのゲートで信号ＢＬＹを受信し、信号ＢＬＹの電圧レベルに基づいて、ＣＯＭノードをＣＯＭＹノードに接続したり切り離したりする。信号ＢＬＹがハイである場合、トランジスタ１２０４はオンになり、ＣＯＭノードはＣＯＭＹノードに接続される。信号ＢＬＹがローである場合、トランジスタ１２０４はオフになり、ＣＯＭノードはＣＯＭＹノードから切断される。
【０１１６】
トランジスタ１２０６は、そのゲートで信号ＸＸＬを受信し、信号ＸＸＬの電圧レベルに基づいて、ＣＯＭノードをＳＥＮノードに接続したり切り離したりする。信号ＸＸＬがハイである場合、トランジスタ１２０６はオンになり、ＣＯＭノードはＳＥＮノードに接続される。信号ＸＸＬがローである場合、トランジスタ１２０６はオフになり、ＣＯＭノードはＳＥＮノードから切断される。
【０１１７】
トランジスタ１２０４は、ＣＯＭＹノードでｐチャンネルトランジスタ１２０８及びｎチャンネルトランジスタ１２１０に接続される。トランジスタ１２０８は、そのゲートで信号ＯＳＰを受信し、ｐチャンネルトランジスタ１２１２を通じて信号Ｖｄｄに結合され、ｐチャンネルトランジスタ１２１２は、そのゲートで信号ＩＮＶを受信する。トランジスタ１２１０は、そのゲートで信号ＧＲＳを受信し、ノードＶｘでｎチャンネルトランジスタ１２１４のソース端子に結合され、ｎチャンネルトランジスタ１２１４は、そのゲートで信号ＩＮＶを受信し、ドレイン端子が信号ＳＧＮＤに結合されている。
【０１１８】
信号ＩＮＶ、ＯＳＰ、及びＸＸＬがローであり、信号ＢＬＹ及びＢＬＣがハイである場合、トランジスタ１２０２、１２０４、１２０８、及び１２１２はオンになり、トランジスタ１２０６及び１２１４はオフになり、ビット線は、禁止ビット線バイアスＶｄｄ（例えば、２．２Ｖ）に充電される。他の値のＶｄｄを使用してもよい。
【０１１９】
信号ＩＮＶ、ＧＲＳ、ＢＬＹ、及びＢＬＣがハイであり、信号ＸＸＬがローであり、信号ＳＧＮＤ＝Ｖｓｓ（例えば、０Ｖ）である場合、トランジスタ１２０２、１２０４、１２１０、及び１２１４がオンになり、トランジスタ１２０６及び１２１２がオフになり、ビット線は、第１のプログラミングビット線バイアスＶｂｌ１であるＶｓｓに充電される。
【０１２０】
トランジスタ１２０６は、ＳＥＮノードで、ｎチャンネルトランジスタ１２１６、１２１８、１２２０及び１２２２、並びにｐチャンネルトランジスタ１２２４に接続される。トランジスタ１２１６は、ＳＥＮノードに結合されたドレイン端子、及びＶｓｓに結合されたゲート端子を有し、オフである。トランジスタ１２１８は、ＳＥＮノードに結合されたゲート端子、及びＶｓｓに結合されたソース端子を有する。トランジスタ１２２０は、トランジスタ１２２のソース端子に結合されたドレイン端子、信号ＬＳＬに結合されたゲート端子、及びｎチャンネルトランジスタ１２２６のドレイン端子に結合されたソース端子を有する。トランジスタ１２２６４は、信号ＬＢＵＳに結合されたゲート端子、及びＶｓｓに結合されたソース端子を有する。
【０１２１】
トランジスタ１２２４は、Ｖｄｄに結合されたソース端子、ＳＥＮノードに結合されたゲート端子、及びｐチャンネルトランジスタ１２２８のソース端子に結合されたドレイン端子を有する。トランジスタ１２２８は、信号ＶＧ１に結合されたゲート端子、及びｎチャンネルトランジスタ１２３０のドレイン端子に結合されたドレイン端子を有する。トランジスタ１２３０は、信号ＶＧ２に結合されたゲート端子、及びトランジスタ１２１８のドレイン端子に結合されたソース端子を有する。
【０１２２】
トランジスタ１２２２は、信号ＶＧ３に結合されたゲート端子、及びｐチャンネルトランジスタ１２３２のドレイン端子に結合されたドレイン端子を有する。トランジスタ１２３２は、信号ＬＢＵＳに結合されたゲート端子、及びＶｄｄに結合されたソース端子を有する。
【０１２３】
信号ＢＬＣ、ＸＸＬ、ＬＳＬ、ＬＢＵＳ、及びＶＧ１がハイであり、信号ＢＬＹ、ＶＧ２及びＶＧ３がローである場合、トランジスタ１２０２、１２０６、１２２０、及び１２２６はオンになり、トランジスタ１２０４、１２２及び１２２８はオフになり、ＳＥＮノードはＶｓｓに接続され、ビット線は第１のプログラミングビット線バイアスＶｂｌ１であるＶｓｓに充電される。
【０１２４】
Ｎチャンネルトランジスタ１２３４は、信号ＬＢＵＳに結合されたドレイン端子、信号ＢＬＣＭに結合されたゲート端子、及びノードＩＮＶでｎチャンネルトランジスタ１２３６のゲート端子に結合されたソース端子を有する。寄生コンデンサＣｐは、ノードＩＮＶとＶｓｓとの間に結合され、約１０ｆＦの値を有する。トランジスタ１２３６は、トランジスタ１２１６のドレイン端子に結合されたドレイン端子、及びＶｓｓに結合されたソース端子を有する。
【０１２５】
ｎチャンネルトランジスタ１２３８は、トランジスタ１２２８のドレイン端子に結合されたドレイン端子、Ｖｓｓに結合されたゲート端子、及びトランジスタ１２２２のソース端子に結合されたソース端子を有する。トランジスタ１２３８はオフである。
【０１２６】
ＬＢＵＳがハイであり、信号ＢＬＣＭが、少なくともノードＩＮＶより高い閾値電圧である場合、ノードＩＮＶは以下のようになる。
ＩＮＶ＝ＢＬＣＭ−Ｖｔ    （１）
但し、Ｖｔはトランジスタ１２３４の閾値電圧である。
【０１２７】
一実施形態では、信号ＢＬＣＭは以下の値を有することがある、即ち、Ｖ２＝Ｖｂｌ２＋２×Ｖｔ、Ｖ３＝Ｖｂｌ３＋２×Ｖｔ、及びＶ４＝Ｖｂｌ４＋２×Ｖｔ、但し、Ｖｂｌ２、Ｖｂｌ３、及びＶｂｌ４は、第２のプログラミングビット線バイアス、第３のプログラミングビット線バイアス、及び第４のプログラミングビット線バイアス（上述）であり、Ｖｔはトランジスタ１２３４の閾値電圧である。ＢＬＣＭの値Ｖ２、Ｖ３、及びＶ４の各々に対して、ＩＮＶは対応する値Ｖ２Ａ＝Ｖｂｌ２＋Ｖｔ、Ｖ３Ａ＝Ｖｂｌ３＋Ｖｔ、及びＶ４Ａ＝Ｖｂｌ４＋Ｖｔを有する。一実施形態では、Ｖｂｌ２＝０．４Ｖ、Ｖｂｌ３＝０．８Ｖ、及びＶｂｌ４＝１．２Ｖであるが、他の値を使用してもよい。
【０１２８】
信号ＢＬＣ、ＢＬＹ、ＯＳＰ、及びＧＲＳがハイであり、信号ＸＸＬがローであり、信号ＳＧＮＤ＝Ｖｄｄである場合、トランジスタ１２０２、１２０４、及び１２１０はオンになり、トランジスタ１２０６及び１２０８はオフになる。信号ＩＮＶが数式（１）に従って設定され、トランジスタ１２１４が閾値電圧Ｖｔを有する場合、ノードＶｘでの電圧は次式で与えられる。
Ｖｘ＝ＩＮＶ−Ｖｔ＝ＢＬＣＭ−２×Ｖｔ    （２）
【０１２９】
従って、電圧及びノードＶｘは、値Ｖｂｌ２、Ｖｂｌ３、及びＶｂｌ４を有することがあり、信号ＢＬＣＭの値に基づいて選択することができる。トランジスタ１２０２、１２０４、及び１２１０がオンなので、ビット線は、ＢＬＣＭの値に基づいて、第２のプログラミングビット線バイアスＶｂｌ２、第３のプログラミングビット線バイアスＶｂｌ３、及び第４のプログラミングビット線バイアスＶｂｌ４に充電される。
【０１３０】
センスアンプ１２００は、ＬＢＵＳに結合されたデータラッチＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬも含む。データラッチＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬは、プログラムされるべきデータをメモリセルに記憶する。４ビットのデータを記憶するメモリセルのために、４つのデータラッチが使用され、３ビットのデータを記憶するメモリセルのために、３つのデータラッチが使用され、以下同様である。信号ＬＢＵＳの値は、データラッチＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬに記憶されたデータに基づいて設定される。
【０１３１】
図１３Ａ〜図１３Ｅは、図１２の様々な信号を説明するタイミング図である。図１３Ａは、ビット線を禁止ビット線バイアス（例えば、Ｖｄｄ）でバイアスするための信号を説明し、図１３Ｂは、ビット線を第４のプログラミングビット線バイアスＶｂｌ４（例えば、１．２Ｖ）でバイアスするための信号を説明し、図１３Ｃは、ビット線を第３のプログラミングビット線バイアスＶｂｌ３（例えば、０．８Ｖ）でバイアスするための信号を説明し、図１３Ｄは、ビット線を第２のプログラミングビット線バイアスＶｂｌ２（例えば、０．４Ｖ）でバイアスするための信号を説明し、図１３Ｅは、ビット線を第１のプログラミングビット線バイアスＶｂｌ１（例えば、０Ｖ）でバイアスするための信号を説明する。
【０１３２】
図１２及び図１３Ａを参照すると、時刻ｔ０に先立って、ＳＥＮノードはフローティング状態であり、ＶＧ１はＶｄｄ（ハイ）であり、他の信号は全てＶｓｓ（ロー）である。ｔ０からｔ１までの間に、ＢＬＣ及びＢＬＹはハイになり、ＩＮＶ、ＯＳＰ、及びＸＸＬはローであり、トランジスタ１２０２、１２０４、１２０８、及び１２１２はオンになり、トランジスタ１２０６及び１２１４はオフである。従って、ビット線は、トランジスタ１２０２、１２０４、１２０８、及び１２１２を通じて、禁止ビット線電圧Ｖｄｄまで充電する。ｔ２からｔ３までの間に、ＢＬＣ及びＢＬＹはローになり、トランジスタ１２０２及び１２０４をオフにし、ビット線をフローティングさせる。同時に、ＯＳＰはハイになり、トランジスタ１２０８をオフにする。ＬＢＵＳは、データラッチＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬのデータ値に基づいて制御される。ＩＮＶ及びＬＢＵＳはローのままであり、トランジスタ１２１４及び１２２６をオフに維持する。従って、ビット線は、残りの期間の間、フローティング状態のままである。
【０１３３】
図１２及び図１３Ｂを参照すると、時刻ｔ０に先立って、ＳＥＮノードはフローティング状態であり、ＩＮＶ及びＶＧ１はＶｄｄ（ハイ）であり、他の信号は全てＶｓｓ（ロー）である。ｔ０からｔ１までの間に、ＢＬＣ、ＢＬＹ及びＧＲＳはハイになり、ＸＸＬはローであり、トランジスタ１２０２、１２０４、１２１０、及び１２１４はオンになり、トランジスタ１２０６及び１２１２はオフであり、ＳＧＮＤ＝Ｖｓｓである。従って、ビット線は、トランジスタ１２０２、１２０４、１２１０、及び１２１４を通じて、Ｖｓｓまで引っ張られる。ｔ２からｔ３までの間に、ＢＬＣ、ＢＬＹ、及びＧＲＳはローになり、ＯＳＰ及びＢＬＣＭはハイになり、トランジスタ１２０２、１２０４、１２０８、１２１０、及び１２１４をオフにし、トランジスタ１２３４をオンにし、ＩＮＶをローに引っ張る。ｔ３で、データラッチＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬのデータ値に基づいて制御されるＬＢＵＳと、ＬＳＬとの両方がハイになり、トランジスタ１２２０及び１２２６をオンにし、ＳＥＮノードをＶｓｓに引っ張る。ｔ３からｔ４までの間に、ＢＬＣＭはＶ４まで次第に増加する。ＩＮＶは、Ｖ４Ａまで次第に増加し、次いで、ＢＬＣＭがＩＮＶより下に下がるにつれトランジスタ１２３４がオフになる結果として、フローティング状態になる。ｔ７からｔ８の間に、ＳＧＮＤはＶｄｄに次第に増加する。ｔ８で、ＬＢＵＳはローになり、トランジスタ１２２６をオフにし、ＳＥＮノードをフローティングさせる。ｔ８からｔ９の間に、ＢＬＣ、ＢＬＹ、及びＧＲＳはハイになり、トランジスタ１２０２、１２０４、及び１２１０をオンにする。従って、ビット線は、ノードＶｘに存在する第４のプログラミングビット線バイアスＶｂｌ４まで、トランジスタ１２０２、１２０４、及び１２１０を通じて充電する。残りの期間の間、ビット線は第４のプログラミングビット線バイアスＶｂｌ４で駆動されたままになる。
【０１３４】
図１２及び図１３Ｃを参照すると、時刻ｔ０に先立って、ＳＥＮノードはフローティング状態であり、ＩＮＶ及びＶＧ１はＶｄｄ（ハイ）であり、他の信号は全てＶｓｓ（ロー）である。ｔ０からｔ１までの間に、ＢＬＣ、ＢＬＹ及びＧＲＳはハイになり、ＸＸＬはローであり、トランジスタ１２０２、１２０４、１２１０、及び１２１４はオンになり、トランジスタ１２０６及び１２１２はオフであり、ＳＧＮＤ＝Ｖｓｓである。従って、ビット線は、トランジスタ１２０２、１２０４、１２１０、及び１２１４を通じて、Ｖｓｓまで引っ張られる。ｔ２からｔ３までの間に、ＢＬＣ、ＢＬＹ、及びＧＲＳはローになり、ＯＳＰ及びＢＬＣＭはハイになり、トランジスタ１２０２、１２０４、１２０８、１２１０、及び１２１４をオフにし、トランジスタ１２３４をオンにし、ＩＮＶをローに引っ張る。ｔ３で、ＬＳＬ及びＶＧ３はハイになる。ＬＢＵＳはローであり、よって、トランジスタ１２２２及び１２３２はオンになり、ＳＥＮノードはＶｄｄまで引っ張られる。ｔ５で、データラッチＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬのデータ値に基づいて制御されるＬＢＵＳはハイになり、トランジスタ１２３２をオフにし、トランジスタ１２２６をオンにする。トランジスタ１２２０もオンになり、ＳＥＮノードをＶｓｓまで引っ張る。ｔ５からｔ６の間に、ＢＬＣＭはＶ３まで増加する。ＩＮＶは、Ｖ３Ａまで増加し、次いで、ＢＬＣＭがＩＮＶより下に下がるにつれトランジスタ１２３４がオフになる結果として、フローティング状態になる。ｔ７からｔ８の間に、ＳＧＮＤはＶｄｄに増加する。ｔ８で、ＬＢＵＳはローになり、トランジスタ１２２６をオフにし、ＳＥＮノードをフローティングさせる。ｔ８からｔ９の間に、ＢＬＣ、ＢＬＹ、及びＧＲＳはハイになり、トランジスタ１２０２、１２０４、及び１２１０をオンにする。従って、ビット線は、ノードＶｘに存在する第３のプログラミングビット線バイアスＶｂｌ３まで、トランジスタ１２０２、１２０４、及び１２１０を通じて充電する。残りの期間の間、ビット線は第３のプログラミングビット線バイアスＶｂｌ３で駆動されたままになる。
【０１３５】
図１２及び図１３Ｄを参照すると、時刻ｔ０に先立って、ＳＥＮノードはフローティング状態であり、ＩＮＶ及びＶＧ１はＶｄｄ（ハイ）であり、他の信号は全てＶｓｓ（ロー）である。ｔ０からｔ１までの間に、ＢＬＣ、ＢＬＹ及びＧＲＳはハイになり、ＸＸＬはローであり、トランジスタ１２０２、１２０４、１２１０、及び１２１４はオンになり、トランジスタ１２０６及び１２１２はオフであり、ＳＧＮＤ＝Ｖｓｓである。従って、ビット線は、トランジスタ１２０２、１２０４、１２１０、及び１２１４を通じて、Ｖｓｓまで引っ張られる。ｔ２からｔ３までの間に、ＢＬＣ、ＢＬＹ、及びＧＲＳはローになり、ＯＳＰ及びＢＬＣＭはハイになり、トランジスタ１２０２、１２０４、１２０８、１２１０、及び１２１４をオフにし、トランジスタ１２３４をオンにし、ＩＮＶをローに引っ張る。ｔ３で、ＬＳＬ及びＶＧ３はハイになる。ＬＢＵＳはローであり、よって、トランジスタ１２２２及び１２３２はオンになり、ＳＥＮノードはＶｄｄまで引っ張られる。ｔ７で、データラッチＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬのデータ値に基づいて制御されるＬＢＵＳはハイになり、トランジスタ１２３２をオフにし、トランジスタ１２２６をオンにする。トランジスタ１２２０もオンになり、ＳＥＮノードをＶｓｓまで引っ張る。ｔ７からｔ８の間に、ＢＬＣＭはＶ２まで増加する。ＩＮＶは、Ｖ２Ａまで増加し、次いで、ＢＬＣＭがＩＮＶより下に下がるにつれトランジスタ１２３４がオフになる結果として、フローティング状態になる。ｔ７からｔ８の間に、ＳＧＮＤはＶｄｄに増加する。ｔ８で、ＬＢＵＳはローになり、トランジスタ１２２６をオフにし、ＳＥＮノードをフローティングさせる。ｔ８からｔ９の間に、ＢＬＣ、ＢＬＹ、及びＧＲＳはハイになり、トランジスタ１２０２、１２０４、及び１２１０をオンにする。従って、ビット線は、ノードＶｘに存在する第２のプログラミングビット線バイアスＶｂｌ２まで、トランジスタ１２０２、１２０４、及び１２１０を通じて充電する。残りの期間の間、ビット線は第２のプログラミングビット線バイアスＶｂｌ２で駆動されたままになる。
【０１３６】
図１２及び図１３Ｅを参照すると、時刻ｔ０に先立って、ＳＥＮノードはフローティング状態であり、ＩＮＶ及びＶＧ１はＶｄｄ（ハイ）であり、他の信号は全てＶｓｓ（ロー）である。ｔ０からｔ１までの間に、ＢＬＣ、ＢＬＹ、及びＧＲＳはハイになり、ＸＸＬはローであり、トランジスタ１２０２、１２０４、１２１０、及び１２１４はオンになり、トランジスタ１２０６及び１２１２はオフであり、ＳＧＮＤ＝Ｖｓｓである。従って、ビット線は、トランジスタ１２０２、１２０４、１２１０、及び１２１４を通じて、Ｖｓｓまで引っ張られる。ｔ２からｔ３までの間に、ＢＬＣ、ＢＬＹ、及びＧＲＳはローになり、ＯＳＰ及びＢＬＣＭはハイになり、トランジスタ１２０２、１２０４、１２０８、１２１０、及び１２１４をオフにし、トランジスタ１２３４をオンにし、ＩＮＶをローに引っ張る。ｔ３で、ＬＳＬ及びＶＧ３はハイになる。ＬＢＵＳはローであり、よって、トランジスタ１２２２及び１２３２はオンになり、ＳＥＮノードはＶｄｄまで引っ張られる。ｔ８で、データラッチＡＤＬ、ＢＤＬ、ＣＤＬ、及びＤＤＬのデータ値に基づいて制御されるＬＢＵＳはハイになり、トランジスタ１２３２をオフにし、トランジスタ１２２６をオンにする。トランジスタ１２２０もオンになり、ＳＥＮノードをＶｓｓまで引っ張る。ｔ８からｔ９の間に、ＢＬＣ及びＸＸＬはハイになり、トランジスタ１２２０及び１２２６をオンにする。従って、ビット線は、トランジスタ１２０２、１２０６、１２２０、及び１２２６を通じて、第１のプログラミングビット線バイアスＶｂｌ１であるＶｓｓまで引っ張られる。残りの期間の間、ビット線は第１のプログラミングビット線バイアスＶｂｌ１まで引っ張られたままになる。
【０１３７】
一実施形態は、不揮発性メモリをプログラムするための方法を含む。この方法は、偶数ビット線のメモリセルを、消去状態から複数の中間データ状態にメモリセルをプログラミングし、中間データ状態の各々について、メモリセルを複数のターゲットデータ状態に同時にプログラミングすることによって、プログラミングすることを含む。この方法は、奇数ビット線のメモリセルを、消去状態から複数の中間データ状態にメモリセルをプログラミングし、中間データ状態の各々について、メモリセルを複数のターゲットデータ状態に同時にプログラミングすることによって、プログラミングすることも含む。
【０１３８】
一実施形態は、メモリセルをプログラムするように構成されたコントローラを含む、不揮発性メモリを含む。このコントローラは、偶数ビット線のメモリセルを、消去状態から複数の中間データ状態にメモリセルをプログラミングし、中間データ状態の各々について、メモリセルを複数のターゲットデータ状態に同時にプログラミングすることによって、プログラミングする。このコントローラは、奇数ビット線のメモリセルを、消去状態から複数の中間データ状態にメモリセルをプログラミングし、中間データ状態の各々について、メモリセルを複数のターゲットデータ状態に同時にプログラミングすることによって、プログラミングする。
【０１３９】
一実施形態は、複数のメモリセルを含む不揮発性メモリのためのセンスアンプを含み、各メモリセルは対応するビット線を備える。センスアンプは、プログラムされる対応するメモリセルのターゲットデータ状態に基づいて各ビット線をバイアスするように構成される回路を含む。
【０１４０】
本明細書の目的のために、図面に描かれた様々な特徴の寸法は、必ずしも一定の縮尺で描かれていないことがあることに留意されたい。
【０１４１】
本明細書の目的のために、明細書中の「実施形態」、「一実施形態」、「幾つかの実施形態」又は「別の実施形態」に対する言及は、異なる実施形態又は同一の実施形態について記述するために使用されることがある。
【０１４２】
本明細書の目的のために、接続とは、直接的な接続又は間接的な接続（例えば、１つ又は複数の他の部分を介して）であり得る。場合によっては、ある要素が別の要素に接続される又は結合されると言及される場合、この要素は、他の要素に直接的に接続されてもよく、又は、介在要素を介して他の要素に間接的に接続されてもよい。ある要素が別の要素に直接的に接続されていると言及される場合、この要素と他の要素との間には介在要素は存在しない。２つの装置は、それらが互いの間で電子信号を交換することができるように直接的に又は間接的に接続されている場合、「通信状態」にある。
【０１４３】
本明細書の目的のために、「基づいて」という用語は、「少なくとも部分的に基づいて」と読むことができる。
【０１４４】
本明細書の目的のために、追加の文脈がない、「第１の」物体、「第２の」物体、及び「第３の」物体などの数値的な用語の使用は、物体の順序を示唆するものではなく、代わりに、異なる物体を識別するための識別目的で使用されることがある。
【０１４５】
本明細書の目的のために、物体の「組」という用語は、複数の物体のうちの１つ又は複数の物体の「組」を指すことがある。
【０１４６】
前述の詳細な説明は、例示及び説明の目的のために提示したものである。前述の詳細な説明は、網羅的であること、又は開示した正確な形態に限定することを意図したものではない。上記の教示に鑑みて多くの修正及び変形が可能である。説明した実施形態は、提案した技術の原理及びその実際の用途を最もよく説明するために選択されたものであり、それによって、当業者が様々な実施形態で、企図される特定の使用法に適するように様々な修正を伴って、この技術を最も良いように利用することを可能にする。範囲は、添付の請求項によって規定されることが意図されている。
【図１】
2018513516.tif 000004
【図２】
2018513516.tif 000005
【図３Ａ】
2018513516.tif 000006
【図３Ｂ】
2018513516.tif 000007
【図４Ａ】
2018513516.tif 000008
【図４Ｂ】
2018513516.tif 000009
【図４Ｃ】
2018513516.tif 000010
【図４Ｄ】
2018513516.tif 000011
【図４Ｅ】
2018513516.tif 000012
【図５】
2018513516.tif 000013
【図６】
2018513516.tif 000014
【図７】
2018513516.tif 000015
【図８Ａ】
2018513516.tif 000016
【図８Ｂ】
2018513516.tif 000017
【図９Ａ】
2018513516.tif 000018
【図９Ｂ】
2018513516.tif 000019
【図９Ｃ】
2018513516.tif 000020
【図１０】
2018513516.tif 000021
【図１１】
2018513516.tif 000022
【図１２】
2018513516.tif 000023
【図１３Ａ】
2018513516.tif 000024
【図１３Ｂ】
2018513516.tif 000025
【図１３Ｃ】
2018513516.tif 000026
【図１３Ｄ】
2018513516.tif 000027
【図１３Ｅ】
2018513516.tif 000028
【手続補正書】
【提出日】平成29年10月24日(2017.10.24)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０１４６
【補正方法】変更
【補正の内容】
【０１４６】
前述の詳細な説明は、例示及び説明の目的のために提示したものである。前述の詳細な説明は、網羅的であること、又は開示した正確な形態に限定することを意図したものではない。上記の教示に鑑みて多くの修正及び変形が可能である。説明した実施形態は、提案した技術の原理及びその実際の用途を最もよく説明するために選択されたものであり、それによって、当業者が様々な実施形態で、企図される特定の使用法に適するように様々な修正を伴って、この技術を最も良いように利用することを可能にする。範囲は、添付の請求項によって規定されることが意図されている。
以下の項目は、国際出願時の特許請求の範囲に記載の要素である。
［項目１］
不揮発性メモリをプログラムするための方法であって、
偶数ビット線のメモリセルを、
前記メモリセルを消去状態から複数の中間データ状態にプログラムすること、及び
前記中間データ状態の各々について、前記メモリセルを複数のターゲットデータ状態に同時にプログラムすること、
によりプログラムすること、並びに、
奇数ビット線のメモリセルを、
前記メモリセルを消去状態から前記複数の中間データ状態にプログラムすること、及び
前記中間データ状態の各々について、前記メモリセルを前記複数のターゲットデータ状態に同時にプログラムすること、
によりプログラムすること、を含む方法。
［項目２］
前記メモリセルの各々は対応するビット線に結合されており、
各メモリセルについて、前記対応するビット線は、前記メモリセルがプログラミングを禁止されることになっている場合には第１のビット線バイアスにバイアスされ、前記メモリセルが最終状態にプログラムされることになっている場合には複数のプログラミングビット線バイアスのうちの１つにバイアスされる、項目１に記載の方法。
［項目３］
前記対応するビット線は、プログラムされる前記メモリセルの前記ターゲットデータ状態に基づいてバイアスされる、項目２に記載の方法。
［項目４］
前記プログラミングビット線バイアスの数は、各メモリセルに記憶することができるデータ状態の数に等しい、項目２〜３のいずれか一項に記載の方法。
［項目５］
対応するビット線バイアスは、前記中間状態分布と前記ターゲット状態分布との間の電圧差に基づいている、項目２〜４のいずれか一項に記載の方法。
［項目６］
前記複数のプログラミングビット線バイアスは、４つのプログラミングビット線バイアスを含む、項目２〜５のいずれか一項に記載の方法。
［項目７］
前記不揮発性メモリは、２次元又は３次元の不揮発性メモリを含む、項目１〜６のいずれか一項に記載の方法。
［項目８］
偶数ビット線のメモリセルを、
前記メモリセルを消去状態から複数の中間データ状態にプログラムすること、及び
前記中間データ状態の各々について、前記メモリセルを複数のターゲットデータ状態に同時にプログラムすること、
によりプログラムするように、且つ、
奇数ビット線のメモリセルを、
前記メモリセルを消去状態から前記複数の中間データ状態にプログラムすること、及び
前記中間データ状態の各々について、前記メモリセルを前記複数のターゲットデータ状態に同時にプログラムすること、
によりプログラムするように構成されるコントローラを備える、不揮発性メモリ。
［項目９］
前記メモリセルの各々は対応するビット線に結合されており、
前記不揮発性メモリは、前記コントローラに結合されるセンスアンプを更に備え、前記センスアンプは複数のビット線バイアスを提供するように構成される、項目８に記載の不揮発性メモリ。
［項目１０］
各メモリセルについて、前記センスアンプは、前記メモリセルがプログラミングを禁止されることになっている場合には前記対応するビット線を第１のビット線バイアスにバイアスし、前記メモリセルが最終状態にプログラムされることになっている場合には前記メモリセルを複数のプログラミングビット線バイアスのうちの１つにバイアスする、項目９に記載の不揮発性メモリ。
［項目１１］
前記センスアンプは、プログラムされる前記メモリセルの前記ターゲットデータ状態に基づいて、前記対応するビット線をバイアスする、項目１０に記載の不揮発性メモリ。
［項目１２］
前記プログラミングビット線バイアスの数は、各メモリセルに記憶することができるデータ状態の数に等しい、項目１０〜１１のいずれか一項に記載の不揮発性メモリ。
［項目１３］
前記センスアンプは、前記中間状態分布と前記ターゲット状態分布との間の電圧差に基づいて、前記対応するビット線をバイアスする、項目１０〜１２のいずれか一項に記載の不揮発性メモリ。
［項目１４］
前記複数のプログラミングビット線バイアスは、４つのプログラミングビット線バイアスを含む、項目１０〜１３のいずれか一項に記載の不揮発性メモリ。
［項目１５］
前記不揮発性メモリは、２次元又は３次元の不揮発性メモリを含む、項目８〜１４のいずれか一項に記載の不揮発性メモリ。
【国際調査報告】
2018513516.tif 000029
2018513516.tif 000030