IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ サンディスク テクノロジーズ インコーポレイテッドの特許一覧

特開2024-52518メモリデバイスにおける高性能検証技術
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024052518
(43)【公開日】2024-04-11
(54)【発明の名称】メモリデバイスにおける高性能検証技術
(51)【国際特許分類】
   G11C 16/10 20060101AFI20240404BHJP
   G11C 16/04 20060101ALI20240404BHJP
   H10B 41/27 20230101ALI20240404BHJP
   H10B 43/27 20230101ALI20240404BHJP
   H10B 43/35 20230101ALI20240404BHJP
   H10B 41/35 20230101ALI20240404BHJP
   H01L 21/336 20060101ALI20240404BHJP
【FI】
G11C16/10 140
G11C16/04 170
H10B41/27
H10B43/27
H10B43/35
H10B41/35
H01L29/78 371
【審査請求】有
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023113772
(22)【出願日】2023-07-11
(31)【優先権主張番号】17/957,606
(32)【優先日】2022-09-30
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.FRAM
(71)【出願人】
【識別番号】511242535
【氏名又は名称】サンディスク テクノロジーズ エルエルシー
【住所又は居所原語表記】5080 Spectrum Drive,Suite 1050W,Addison,Texas 75001,United States of America
(74)【代理人】
【識別番号】100207837
【弁理士】
【氏名又は名称】小松原 寿美
(72)【発明者】
【氏名】シャン ヤン
(72)【発明者】
【氏名】ウェイ ツァオ
(72)【発明者】
【氏名】ディーパンシュ ダッタ
【テーマコード(参考)】
5B225
5F083
5F101
【Fターム(参考)】
5B225BA02
5B225BA08
5B225CA18
5B225DB08
5B225DB22
5B225DB30
5B225DB32
5B225DD11
5B225EA05
5B225FA01
5B225FA07
5F083EP02
5F083EP18
5F083EP22
5F083EP32
5F083EP76
5F083ER21
5F083GA10
5F083JA04
5F083JA19
5F083JA39
5F083MA06
5F083MA19
5F083PR05
5F101BA02
5F101BA46
5F101BB02
5F101BD02
5F101BD16
5F101BD22
5F101BD30
5F101BD34
5F101BH13
(57)【要約】      (修正有)
【課題】初期プログラミング電圧を、オーバープログラミングが起こり得るような高レベルに単に設定することなくプログラミング性能を向上させる。
【解決手段】メモリデバイスは、複数のプログラムループにおいて、少なくとも1つのメモリブロックのメモリセルをプログラムする制御回路を含む。制御回路は、メモリデバイスにユーザデータを書き込むためのコマンドを受信し、複数のワードラインのうちの選択されたワードラインの少なくとも一部分に対して、スマート検証動作を実行してスマート検証プログラミング電圧を取得し、スマート検証プログラミング電圧を取得した後、複数のプログラムループにおいて、ユーザデータとスマート検証プログラミング電圧に対応するデータとを含むように、選択されたワードラインのメモリセルをプログラムする。
【選択図】図16
【特許請求の範囲】
【請求項1】
メモリデバイスをプログラムする方法であって、
前記メモリデバイスにユーザデータを書き込むためのコマンドを受信するステップと、
複数のワードラインに配置されている複数のメモリセルを含む少なくとも1つのメモリブロックを準備するステップと、
前記複数のワードラインのうちの選択されたワードラインの少なくとも一部分に対して、スマート検証動作を実行してスマート検証プログラミング電圧を取得するステップと、
前記スマート検証プログラミング電圧が取得された後、複数のプログラムループにおいて、前記ユーザデータと前記スマート検証プログラミング電圧に対応するデータとを含むように、前記選択されたワードラインの前記メモリセルをプログラムするステップと、を含む、方法。
【請求項2】
前記選択されたワードラインが、複数のストリングを含み、前記スマート検証動作を実行して前記スマート検証プログラミング電圧を取得する前記ステップが、前記複数のストリングのうちの第1のストリングのみに対するものであり、前記選択されたワードラインの前記メモリセルをプログラムする前記ステップが、前記スマート検証プログラミング電圧に対応する前記データを、前記選択されたワードラインの前記第1のストリングの前記メモリセルにプログラムすることを含む、請求項1に記載の方法。
【請求項3】
前記スマート検証プログラミング電圧を初期プログラミング電圧として使用して、複数のプログラムループにおいて、前記選択されたワードラインの他のストリングのメモリセルに前記ユーザデータをプログラムするステップを更に含む、請求項2に記載の方法。
【請求項4】
前記メモリブロックの前記ワードラインの各々が、前記複数のストリングを含み、前記ワードラインの各々の前記第1のストリングに対して前記スマート検証動作を実行して、各ワードラインに前記スマート検証プログラミング電圧を取得するステップと、各ワードラインの前記スマート検証プログラミング電圧に対応するデータ内に、そのワードラインの前記第1のストリングの前記メモリセルにプログラムするステップと、を更に含む、請求項2に記載の方法。
【請求項5】
前記選択されたワードラインの前記第1のストリングの前記メモリセルにプログラムされる前記スマート検証プログラミング電圧が、複数のプログラムループにおいて、少なくとも1つの追加のワードラインをプログラムするときの前記初期プログラミング電圧である、請求項2に記載の方法。
【請求項6】
前記スマート検証プログラミング電圧に対応する前記データを含むようにプログラムされる前記第1のストリングの前記メモリセルが、メモリセル当たり1ビット(SLC)の記憶方式にプログラムされる、請求項2に記載の方法。
【請求項7】
前記ユーザデータを含むようにプログラムされる前記第1のストリングの前記メモリセルが、メモリセル当たり1ビット以上の記憶方式にプログラムされる、請求項6に記載の方法。
【請求項8】
前記スマート検証プログラミング電圧に対応し、前記第1のストリングの前記メモリセルにプログラムされる前記データが、1バイト以下のデータである、請求項2に記載の方法。
【請求項9】
前記メモリデバイスが、3バイト以下のデータを含むことができるNANDレジスタを有する、請求項1に記載の方法。
【請求項10】
メモリデバイスであって、
複数のワードラインに配置されている複数のメモリセルを含む少なくとも1つのメモリブロックと、
複数のプログラムループにおいて、前記少なくとも1つのメモリブロックの前記メモリセルをプログラムするように構成された制御回路と、を備え、前記制御回路が、
前記メモリデバイスにユーザデータを書き込むためのコマンドを受信し、
前記複数のワードラインのうちの選択されたワードラインの少なくとも一部分に対して、スマート検証動作を実行してスマート検証プログラミング電圧を取得し、
前記スマート検証プログラミング電圧が取得された後に、複数のプログラムループにおいて、前記ユーザデータと前記スマート検証プログラミング電圧に対応するデータとを含むように、前記選択されたワードラインの前記メモリセルをプログラムする、ように構成されている、メモリデバイス。
【請求項11】
前記選択されたワードラインが、複数のストリングを含み、前記制御回路が、前記スマート検証プログラミング電圧に対応する前記データを、前記選択されたワードラインの前記第1のストリングの前記メモリセルにプログラムするように構成されている、請求項10に記載のメモリデバイス。
【請求項12】
前記制御回路が、前記スマート検証プログラミング電圧を初期プログラミング電圧として使用して、複数のプログラムループにおいて、前記選択されたワードラインの前記他のストリングの前記メモリセルに前記ユーザデータをプログラムするように更に構成されている、請求項11に記載のメモリデバイス。
【請求項13】
前記メモリブロックの前記ワードラインの各々が、前記複数のストリングを含み、前記制御回路が、前記ワードラインの各々の前記第1のストリングに対して前記スマート検証動作を実行して、各ワードラインに前記スマート検証プログラミング電圧を取得し、各ワードラインの前記スマート検証プログラミング電圧に対応するデータを、そのワードラインの前記第1ストリングの前記メモリセルにプログラムするように更に構成されている、請求項11に記載のメモリデバイス。
【請求項14】
前記制御回路によって、前記選択されたワードラインの前記第1のストリングの前記メモリセルにプログラムされる前記スマート検証プログラミング電圧が、複数のプログラムループにおいて、前記メモリブロックの少なくとも1つの追加のワードラインをプログラムするときの前記初期プログラミング電圧である、請求項11に記載のメモリデバイス。
【請求項15】
前記スマート検証プログラミング電圧に対応する前記データを含むように、前記制御回路によってプログラムされる前記第1のストリングの前記メモリセルが、メモリセル当たり1ビット(SLC)の記憶方式にプログラムされる、請求項11に記載のメモリデバイス。
【請求項16】
前記ユーザデータを含むように、前記制御回路によってプログラムされる前記第1のストリングの前記メモリセルが、メモリセル当たり2ビット以上の記憶方式にプログラムされる、請求項15に記載のメモリデバイス。
【請求項17】
前記スマート検証プログラミング電圧に対応し、前記第1のストリングの前記メモリセルにプログラムされる前記データが、1バイト以下のデータである、請求項11に記載のメモリデバイス。
【請求項18】
3バイト以下のデータを含むことができるNANDレジスタを更に含む、請求項10に記載のメモリデバイス。
【請求項19】
装置であって、
複数のワードラインに配置されている複数のメモリセルを含む少なくとも1つのメモリブロックと、
ユーザデータを前記複数のメモリセルにプログラムするためのプログラミング手段であって、複数のプログラムループにおいて、前記少なくとも1つのメモリブロックの前記メモリセルをプログラムするように構成された、プログラミング手段と、を備え、前記プログラミング手段が、
前記メモリデバイスにユーザデータを書き込むためのコマンドを受信し、
前記複数のワードラインのうちの選択されたワードラインの複数のストリングのうちの第1のストリングに対して、スマート検証動作を実行してスマート検証プログラミング電圧を取得し、
前記スマート検証プログラミング電圧が取得された後、複数のプログラムループにおいて、前記ユーザデータと前記スマート検証プログラミング電圧に対応するデータとを含むように、前記選択されたワードラインの前記メモリセルをプログラムし、
前記スマート検証プログラミング電圧を初期プログラミング電圧として使用して、複数のプログラムループにおいて、前記選択されたワードラインの前記他のストリングの前記メモリセルをプログラムする、ように構成されている、装置。
【請求項20】
前記プログラミング手段が、前記メモリブロック内の前記複数のワードラインのうちの各ワードラインの前記第1のストリングに対して前記スマート検証動作を実行し、固有のスマート検証プログラミング電圧に対応するデータを各ワードラインの前記第1のストリングの前記メモリセルにプログラムする、ように更に構成されている、請求項19に記載の装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、概して、メモリデバイスに関し、より具体的には、プログラミング動作中にメモリセルの閾値電圧を検証するための技術に関する。
【背景技術】
【0002】
関連技術
半導体メモリは、セルラー電話、デジタルカメラ、パーソナルデジタルアシスタント、電子医療機器、モバイルコンピューティングデバイス、サーバ、ソリッドステートドライブ、非モバイルコンピューティングデバイス、及び他のデバイスなどの様々な電子デバイスに広く使用されている。半導体メモリは、不揮発性メモリ又は揮発性メモリを含むことがある。不揮発性メモリにより、不揮発性メモリが電源、例えば、電池に接続されていないときでも、情報を記憶及び保持することが可能になる。
【0003】
NANDメモリデバイスは、複数のメモリブロックを有するチップを含み、メモリブロックの各々は、複数のワードラインに配置されたメモリセルのアレイを含む。データを保持するようにワードラインのメモリセルをプログラムすることは、典型的には、複数のプログラムループにおいて行われ、プログラムループの各々は、ワードラインの制御ゲートへのプログラミングパルスの印加と、任意選択で、プログラムされているメモリセルの閾値電圧を感知するための検証動作と、を含む。多くのプログラミング技術では、プログラミングパルスは、第1のプログラムループにおいて初期プログラミング電圧を有し、次いで、プログラミングパルスの電圧は、プログラミングが完了するまで、プログラムループ間で増分的に増加する。初期プログラミング電圧の最適値は、チップ内の複数のメモリブロックにわたって変化し、単一のメモリブロックのワードライン間でも変化し得る。初期プログラミング電圧が、過度に高く設定される場合、いくつかのメモリセルのオーバープログラミングが起こる可能性があるが、初期プログラミング電圧が、過度に低く設定される場合、プログラミング性能が低下することがある。
【0004】
初期プログラミング電圧を、オーバープログラミングが起こり得るような高レベルに単に設定することなくプログラミング性能を向上させる1つのアプローチが、メモリブロックにおいてプログラミング動作が始まるときに、スマート検証動作を実施することである。スマート検証動作は、複数のスマート検証プログラミングループを含み、その各々は、プログラミングパルス及び検証動作を含む。各スマート検証プログラミングループの検証動作中に、所定の検証電圧よりも大きい閾値電圧を有するメモリセルの数が、決定されて、目標と比較される。検証動作が合格である場合、最後のプログラミングパルスの電圧が、チップのNANDレジスタに記憶され、メモリブロックにおける後続のプログラミング動作のための初期プログラミング電圧として使用される。しかしながら、NANDレジスタは、典型的には、チップ内の全てのメモリブロックのための最適な初期プログラミング電圧の全てを保持することができない。
【発明の概要】
【0005】
本開示の一態様は、メモリデバイスをプログラムする方法に関する。方法は、ユーザデータをメモリデバイスに書き込むためのコマンドを受信するステップを含む。方法は、複数のワードラインに配置されている複数のメモリセルを含む少なくとも1つのメモリブロックを準備するステップに進む。複数のワードラインのうちの選択されたワードラインの少なくとも一部分に対して、方法は、スマート検証動作を実行してスマート検証プログラミング電圧を取得するステップに進む。スマート検証プログラミング電圧が取得された後、複数のプログラムループにおいて、方法は、ユーザデータとスマート検証プログラミング電圧に対応するデータとを含むように、選択されたワードラインのメモリセルをプログラムするステップに続く。
【0006】
本開示の別の態様によれば、選択されたワードラインは、複数のストリングを含み、スマート検証動作を実行してスマート検証プログラミング電圧を取得するステップは、複数のストリングのうちの第1のストリングのみに対するものである。選択されたワードラインのメモリセルをプログラムするステップは、スマート検証プログラミング電圧に対応するデータを、選択されたワードラインの第1のストリングのメモリセルにプログラムすることを含む。
【0007】
本開示の更に別の態様によれば、方法は、スマート検証プログラミング電圧を初期プログラミング電圧として使用して、複数のプログラムループにおいて、選択されたワードラインの他のストリングのメモリセルにユーザデータをプログラムするステップを更に含む。
【0008】
本開示の更に別の態様によれば、メモリブロックのワードラインの各々は、複数のストリングを含む。方法は、ワードラインの各々の第1のストリングに対してスマート検証動作を実行して、各ワードラインにスマート検証プログラミング電圧を取得するステップと、各ワードラインのスマート検証プログラミング電圧に対応するデータを、そのワードラインの第1のストリングのメモリセルにプログラムするステップと、を更に含む。
【0009】
本開示の更なる一態様によれば、選択されたワードラインの第1のストリングのメモリセルにプログラムされるスマート検証プログラミング電圧は、複数のプログラムループにおいて、少なくとも1つの追加のワードラインをプログラムするときの初期プログラミング電圧である。
【0010】
本開示のなお更なる一態様によれば、スマート検証プログラミング電圧に対応するデータを含むようにプログラムされる第1のストリングのメモリセルは、メモリセル当たり1ビット(SLC)の記憶方式にプログラムされる。
【0011】
本開示のなお更なる一態様によれば、ユーザデータを含むようにプログラムされる第1のストリングのメモリセルは、メモリセル当たり1ビット以上の記憶方式にプログラムされる。
【0012】
本開示の別の態様によれば、スマート検証プログラミング電圧に対応し、第1のストリングのメモリセルにプログラムされるデータは、1バイト以下のデータである。
【0013】
本開示の更に別の態様によれば、メモリデバイスは、1バイトのみのデータ又は3バイト以下のデータを含むことができるNANDレジスタを有する。
【0014】
本開示の別の態様は、メモリデバイスに関する。メモリデバイスは、複数のワードラインに配置されている複数のメモリセルを有する少なくとも1つのメモリブロックを含む。メモリデバイスは、複数のプログラムループにおいて、少なくとも1つのメモリブロックのメモリセルをプログラムするように構成されている制御回路を含む。制御回路は、メモリデバイスにユーザデータを書き込むためのコマンドを受信するように更に構成される。複数のワードラインのうちの選択されたワードラインの少なくとも一部分に対して、制御回路は、スマート検証動作を実行してスマート検証プログラミング電圧を取得するように構成される。スマート検証プログラミング電圧が取得された後、複数のプログラムループにおいて、制御回路は、ユーザデータとスマート検証プログラミング電圧に対応するデータとを含むように、選択されたワードラインのメモリセルをプログラムするように構成される。
【0015】
本開示の別の態様によれば、選択されたワードラインは、複数のストリングを含み、制御回路は、スマート検証プログラミング電圧に対応するデータを、選択されたワードラインの第1のストリングのメモリセルにプログラムするように構成される。
【0016】
本開示の更に別の態様によれば、制御回路は、スマート検証プログラミング電圧を初期プログラミング電圧として使用して、複数のプログラムループにおいて、選択されたワードラインの他のストリングのメモリセルにユーザデータをプログラムするように更に構成される。
【0017】
本開示の更に別の態様によれば、メモリブロックのワードラインの各々は、複数のストリングを含む。制御回路は、ワードラインの各々の第1のストリングに対してスマート検証動作を実行して、各ワードラインにスマート検証プログラミング電圧を取得し、かつ各ワードラインのスマート検証プログラミング電圧に対応するデータを、そのワードラインの第1のストリングのメモリセルにプログラムするように更に構成される。
【0018】
本開示の更なる態様によれば、制御回路によって、選択されたワードラインの第1のストリングのメモリセルにプログラムされるスマート検証プログラミング電圧は、複数のプログラムループにおいて、メモリブロックの少なくとも1つの追加のワードラインをプログラムするときの初期プログラミング電圧である。
【0019】
本開示のなお更なる一態様によれば、スマート検証プログラミング電圧に対応するデータを含むように、制御回路によってプログラムされる第1のストリングのメモリセルは、メモリセル当たり1ビット(SLC)の記憶方式にプログラムされる。
【0020】
本開示のなお更なる一態様によれば、ユーザデータを含むように、制御回路によってプログラムされる第1のストリングのメモリセルは、メモリセル当たり2ビット以上をの記憶方式にプログラムされる。
【0021】
本開示の別の態様によれば、スマート検証プログラミング電圧に対応し、第1のストリングのメモリセルにプログラムされるデータは、1バイト以下のデータである。
【0022】
本開示の更に別の態様によれば、メモリデバイスは、1バイトのみのデータ又は3バイト以下のデータを含むことができるNANDレジスタを更に含む。
【0023】
本開示の更に別の態様は、複数のワードラインに配置されている複数のメモリセルを含む少なくとも1つのメモリブロックを含む装置に関する。装置はまた、ユーザデータを複数のメモリセルにプログラムするためのプログラミング手段を含む。プログラミング手段は、複数のプログラムループにおいて、少なくとも1つのメモリブロックのメモリセルをプログラムするように構成される。プログラミング手段は、ユーザデータをメモリデバイスに書き込むためのコマンドを受信するように更に構成される。複数のワードラインのうちの選択されたワードラインの複数のストリングのうちの第1のストリングに対して、プログラミング手段は、スマート検証動作を実行してスマート検証プログラミング電圧を取得するように構成される。スマート検証プログラミング電圧が取得された後、複数のプログラムループにおいて、プログラミング手段は、ユーザデータとスマート検証プログラミング電圧に対応するデータとを含むように、選択されたワードラインのメモリセルをプログラムするように更に構成される。プログラミング手段は、スマート検証プログラミング電圧を初期プログラミング電圧として使用して、複数のプログラムループにおいて、選択されたワードラインの他のストリングのメモリセルをプログラムするように更に構成される。
【0024】
本開示の別の態様によれば、プログラミング手段は、メモリブロック内の複数のワードラインのうちの各ワードラインの第1のストリングに対してスマート検証動作を実行し、かつ固有のスマート検証プログラミング電圧に対応するデータを各ワードラインの第1のストリングのメモリセルにプログラムするように更に構成される。
【図面の簡単な説明】
【0025】
添付の図に示される例示的な実施形態を参照して、より詳細な説明を以下に記載する。これらの図は、本開示の例示的な実施形態のみを示し、したがって、本開示の範囲を限定するものと見なされるべきではないことを理解すること。本開示は、添付の図面の使用を通じて、追加の特異性及び詳細とともに記載及び説明される。
図1A】例示的なメモリデバイスのブロック図である。
図1B】例示的な制御回路のブロック図である。
図2図1Aのメモリアレイの例示的な二次元構成におけるメモリセルのブロックを示す。
図3A】NANDストリング内の例示的な浮遊ゲートメモリセルの断面図を示す。
図3B】NANDストリング内の例示的な浮遊ゲートメモリセルの断面図を示す。
図4A】NANDストリング内の例示的な電荷トラップメモリセルの断面図を示す。
図4B】NANDストリング内の例示的な電荷トラップメモリセルの断面図を示す。
図5図1の感知ブロックSB1の例示的なブロック図を示す。
図6A図1のメモリアレイの例示的な三次元構成におけるブロックのセットの斜視図である。
図6B図6Aのブロックのうちの1つの一部分の例示的な断面図を示す。
図6C図6Bのスタック内のメモリホール直径のプロットを示す。
図6D図6Bのスタックの領域622の拡大図を示す。
図7A図6Bのスタックの例示的なワードライン層WLL0の上面図である。
図7B図6Bのスタックの例示的な上部誘電体層DL116の上面図である。
図8】メモリセル当たり1ビット(SLC)にプログラムされたメモリセルのページの閾値電圧分布を示す。
図9】メモリセル当たり3ビット(TLC)にプログラムされたメモリセルのページの閾値電圧分布を示す。
図10】メモリセル当たり4ビット(QLC)にプログラムされたメモリセルのページの閾値電圧分布を示す。
図11】プログラミング動作中に、選択されたワードラインの制御ゲートに印加される電圧の電圧波形を示す。
図12】スマート検証動作中及びその直後に、選択されたワードラインの制御ゲートに印加される電圧の電圧波形を示す。
図13】スマート検証動作の複数のプログラムループの前後の複数のメモリセルの閾値電圧分布を示す。
図14】スマート検証バイト内の異なるビット組合せに関連付けられたSV_VPGM電圧の例示的なテーブルを示す。
図15】ユーザデータ専用であるワードラインの部分及びスマート検証バイト専用であるワードラインの部分を識別する例示的なワードラインの概略図である。
図16】本開示の例示的な実施形態による、メモリブロック内のワードラインをプログラムするステップを示すフローチャートである。
図17】スマート検証動作の複数のプログラムループの前後の複数のメモリセルの閾値電圧分布を示す。
図18】本開示のプログラミング技術の一実施形態を利用しながら、例示的な実施形態においてメモリセルをプログラムするシーケンスのテーブルを示す。 実現可能な実施形態の説明
【0026】
本開示の一態様は、スマート検証電圧が、メモリブロックにおけるスマート検証動作中に取得されると、そのスマート検証電圧が、NANDレジスタに加えて、メモリブロックのメモリセル内に直接保存されるように、メモリブロックのメモリセルをプログラムするための改善された技術に関する。メモリデバイスが、ブロックジャンプ(1つのメモリブロックをプログラムすることから別のメモリブロックをプログラムすることへの変更)を受け、NANDレジスタに保存されたスマート検証電圧が、新たに選択されたブロックと合わない場合、新たに選択されたブロックのためのスマート検証電圧は、再取得される必要はなく、代わりに、メモリブロックのメモリセルから容易にアクセスされて、NANDレジスタに入力され得る。これらのプログラミング技術は、ブロックジャンプ後などの特定のインスタンスにおいて、オーバープログラミングのリスクなしに、メモリデバイスが、時間のかかるスマート検証動作をスキップすることを可能にすることによって、性能を改善する。これらのプログラミング技術について、以下で更に詳細に考察する。
【0027】
図1Aは、例示的なメモリデバイス100のブロック図であり、本開示のプログラミング技術に従って動作するように構成されている。メモリダイ108は、メモリセルのアレイなどのメモリセルのメモリ構造126、制御回路110、及び読み出し/書き込み回路128を含む。メモリ構造126は、行デコーダ124を介してワードラインにより、及び列デコーダ132を介してビットラインによりアドレス指定可能である。読み出し/書き込み回路128は、複数の感知ブロックSB1、SB2、...SBp(感知回路)を含み、メモリセルのページを並列に読み出すか又はプログラムすることを可能にする。典型的には、コントローラ122は、1つ以上のメモリダイ108と同じメモリデバイス100(例えば、リムーバブル記憶カード)に含まれる。コマンド及びデータは、データバス120を介してホスト140とコントローラ122との間で、及びライン118を介してコントローラと1つ以上のメモリダイ108との間で転送される。
【0028】
メモリ構造126は、二次元又は三次元であり得る。メモリ構造126は、三次元アレイを含むメモリセルの1つ以上のアレイを含み得る。メモリ構造126は、複数のメモリレベルが、介在する基板なしでウェハなどの単一の基板の上方に形成された(かつ、基板内には形成されない)モノリシック三次元メモリ構造を含み得る。メモリ構造126は、シリコン基板の上方に配置されたアクティブ領域を有するメモリセルのアレイの1つ以上の物理レベルでモノリシックに形成された任意の種類の不揮発性メモリを含み得る。メモリ構造126は、関連する回路が基板の上方又は内部にあるかどうかに関わらず、メモリセルの動作に関連する回路を有する不揮発性メモリデバイスにあり得る。
【0029】
制御回路110は、読み出し/書き込み回路128と協働して、メモリ構造126に対してメモリ動作を実行し、ステートマシン112、オンチップアドレスデコーダ114、及び電力制御モジュール116を含む。ステートマシン112は、メモリ動作のチップレベル制御を提供する。
【0030】
記憶領域113は、例えば、プログラミングパラメータのために提供され得る。プログラミングパラメータとしては、プログラム電圧、プログラム電圧バイアス、メモリセルの位置を示す位置パラメータ、接触ラインコネクタの厚さパラメータ、検証電圧などが挙げられ得る。位置パラメータは、NANDストリングのアレイ全体内のメモリセルの位置、特定のNANDストリンググループにおけるメモリセルの位置、特定の平面上のメモリセルの位置などを示し得る。接触ラインコネクタの厚さパラメータは、接触ラインコネクタ、基板、又は接触ラインコネクタが構成されている材料などの厚さを示し得る。
【0031】
オンチップアドレスデコーダ114は、ホスト又はメモリコントローラによって使用されるものと、デコーダ124及び132によって使用されるハードウェアアドレスとの間のアドレスインターフェースを提供する。電力制御モジュール116は、メモリ動作中にワードライン及びビットラインに供給される電力及び電圧を制御する。これは、ワードライン、SGS及びSGDトランジスタ、並びにソースラインのためのドライバを含むことができる。感知ブロックは、1つのアプローチにおいて、ビットラインドライバを含むことができる。SGSトランジスタは、NANDストリングのソース端での選択ゲートトランジスタであり、SGDトランジスタは、NANDストリングのドレイン端での選択ゲートトランジスタである。
【0032】
いくつかの実施形態では、構成要素の一部を組み合わせることができる。様々な設計において、メモリ構造126以外の構成要素のうちの1つ以上(単独で又は組み合わせて)は、本明細書に記載される動作を実行するように構成されている少なくとも1つの制御回路と考えられ得る。例えば、制御回路は、制御回路110、ステートマシン112、デコーダ114/132、電力制御モジュール116、感知ブロックSBb、SB2、...、SBp、読み出し/書き込み回路128、コントローラ122などのうちのいずれか1つ又はそれらの組み合わせを含み得る。
【0033】
制御回路は、メモリセルの1つのセットに対してプログラム及び検証動作を実行するように構成されたプログラミング回路を含むことができ、メモリセルの1つのセットは、複数のデータ状態の中の1つのデータ状態を表すように割り当てられたメモリセルと、複数のデータ状態間の別のデータ状態を表すように割り当てられたメモリセルと、を含み、プログラム及び検証動作は、複数のプログラム及び検証の反復を含み、各プログラム及び検証の反復では、プログラミング回路は、1つの選択されたワードラインのプログラミングを実行し、その後、プログラミング回路は、その選択されたワードラインに検証信号を印加する。制御回路はまた、1つのデータ状態の検証試験に合格するメモリセルのカウントを取得するように構成されたカウント回路を含み得る。制御回路はまた、カウントが閾値を超える量に基づいて、プログラミング動作が完了したかどうかを判定するように構成された判定回路を含み得る。
【0034】
例えば、図1Bは、プログラミング回路151、カウント回路152、及び判定回路153を含む例示的な制御回路150のブロック図である。
【0035】
オフチップコントローラ122は、プロセッサ122c、ROM122a並びにRAM122bなどの記憶デバイス(メモリ)、及びエラー訂正コード(error-correction code、ECC)エンジン245を含み得る。ECCエンジンは、Vth分布の上部テールが高くなりすぎたときに生じる数々の読み出しエラーを訂正し得る。しかしながら、場合によっては、訂正不可能なエラーが存在し得る。本明細書で提供される技術は、訂正不可能なエラーが発生する可能性を低減する。
【0036】
記憶デバイス122a、122bは、命令のセットなどのコードを含み、プロセッサ122cは、この命令のセットを実行して本明細書に記載される機能を提供するように動作可能である。代替的又は追加的に、プロセッサ122cは、1つ以上のワードライン内のメモリセルの予約領域など、メモリ構造126の記憶デバイス126aからコードにアクセスし得る。例えば、コードは、プログラミング、読み出し、及び消去動作などのために、メモリ構造126にアクセスするために、コントローラ122によって使用され得る。コードは、起動コード及び制御コード(例えば、命令のセット)を含み得る。起動コードは、起動又はスタートアッププロセス中にコントローラ122を初期化し、コントローラ122がメモリ構造126にアクセスできるようにするソフトウェアである。コードは、1つ以上のメモリ構造126を制御するためにコントローラ122によって使用され得る。電源投入されると、プロセッサ122cは、実行のためにROM122a又は記憶デバイス126aからブートコードをフェッチし、ブートコードは、システム構成要素を初期化して、制御コードをRAM122bにロードする。制御コードがRAM122bにロードされると、制御コードはプロセッサ122cによって実行される。制御コードは、メモリの制御及び割り当て、命令の処理の優先順位付け、並びに入力及び出力ポートの制御などの基本タスクを実施するためのドライバを含む。
【0037】
一般に、制御コードは、以下で更に考察されるフロー図のステップを含む、本明細書に記載される機能を実施する命令を含むことができ、以下で更に考察されるものを含む電圧波形を提供することができる。
【0038】
一実施形態では、ホストは、本明細書に記載される方法を実施するために、1つ以上のプロセッサと、1つ以上のプロセッサをプログラムするためのプロセッサ可読コード(例えば、ソフトウェア)を記憶する1つ以上のプロセッサ可読記憶デバイス(RAM、ROM、フラッシュメモリ、ハードディスクドライブ、ソリッドステートメモリ)と、を含むコンピューティングデバイス(例えば、ノートブック、デスクトップ、スマートフォン、タブレット、デジタルカメラ)である。ホストはまた、1つ以上のプロセッサと通信する、追加のシステムメモリ、1つ以上の入力/出力インターフェース、及び/又は1つ以上の入力/出力デバイスを含み得る。
【0039】
NANDフラッシュメモリに加えて、他の種類の不揮発性メモリを使用することもできる。
【0040】
半導体メモリデバイスは、ダイナミックランダムアクセスメモリ(dynamic random access memory、「DRAM」)、スタティックランダムアクセスメモリ(static random access memory、「SRAM」)デバイス等の揮発性メモリデバイス、抵抗ランダムアクセスメモリ(resistive random access memory、「ReRAM」)、電気的消去可能プログラム可能読み出し専用メモリ(electrically erasable programmable read only memory、「EEPROM」)、フラッシュメモリ(EEPROMのサブセットと見なすこともできる)、強誘電性ランダムアクセスメモリ(ferroelectric random access memory、「FRAM」)、磁気抵抗ランダムアクセスメモリ(magnetoresistive random access memory、「MRAM」)等の不揮発性メモリデバイス及び情報を記憶する能力がある他の半導体素子を含む。これらのタイプのメモリデバイスのそれぞれは、異なる構成を有してもよい。例えば、フラッシュメモリデバイスは、NAND又はNOR構成で構成され得る。
【0041】
メモリデバイスは、受動素子及び/又は能動素子から、任意の組み合わせで形成されてもよい。非限定的な例として、受動半導体メモリ素子は、ReRAMデバイス素子を含み、これは一部の実施形態では、アンチヒューズ、相変化材料等の抵抗率スイッチング記憶素子、及び任意選択的にダイオード、トランジスタ等のステアリング素子を含む。更に非限定的な例として、能動半導体メモリ素子は、EEPROM及びフラッシュメモリデバイス素子を含み、これは一部の実施形態では、浮遊ゲート、導電性ナノ粒子、電荷蓄積誘電材料等の電荷蓄積領域を含有する素子を含む。
【0042】
複数のメモリ素子は、複数のメモリ素子が直列に接続されているように、又は複数のメモリ素子のそれぞれが個々にアクセス可能であるように構成され得る。非限定的な例として、NAND構成(NANDメモリ)内のフラッシュメモリデバイスは、典型的には、直列に接続されたメモリ素子を含む。NANDストリングは、メモリセル及びSGトランジスタを含む直列接続トランジスタのセットの例である。
【0043】
NANDメモリアレイは、ストリングが、単一のビットラインを共有しグループとしてアクセスされる複数のメモリ素子で構成される、複数のメモリストリングからアレイが構成されるように構成され得る。代替的に、メモリ素子は、素子のそれぞれが個々にアクセス可能であるように構成され得、例えば、NORメモリアレイであるように構成され得る。NAND及びNORメモリ構成は、例であり、メモリ素子は、別法で構成されてもよい。基板内及び/又は基板の上に位置する半導体メモリ素子は、二次元メモリ構造、三次元メモリ構造などの二次元又は三次元で配置され得る。
【0044】
二次元メモリ構造では、半導体メモリ素子は、単一の平面又は単一のメモリデバイスレベルに配置される。典型的には、二次元メモリ構造では、メモリ素子は、メモリ素子を支持する基板の主表面に実質的に平行に延在する平面(例えば、xy方向平面)に配置される。基板は、ウェハであり、ウェハの上又はウェハ内にメモリ素子の層が形成されるウェハであってもよく、あるいはメモリ素子が形成された後にメモリ素子に取り付けられるキャリア基板であってもよい。非限定的な例として、基板は、シリコンなどの半導体を含み得る。
【0045】
メモリ素子は、複数の行及び/又は列などの整列したアレイにおいて単一のメモリデバイスレベルに配置され得る。しかしながら、メモリ素子は非規則的又は非直交構成で配列され得る。メモリ素子は各々2つ以上の電極又はビットライン、ワードライン等の接触ラインを有し得る。
【0046】
三次元メモリアレイは、メモリ素子が複数の平面又は複数のメモリデバイスレベルを占有するように配置され、それによって、三次元(すなわち、x、y、及びz方向であり、z方向は基板の主表面に実質的に垂直であり、x及びy方向は基板の主表面に実質的に平行である)の構造を形成する。
【0047】
非限定的な例として、三次元メモリ構造は、複数の二次元メモリデバイスレベルの積層体として垂直に配置され得る。別の非限定的な例として、三次元メモリアレイは、それぞれの列が複数のメモリ素子を有する複数の垂直列(例えば、基板の主表面に対して実質的に垂直、すなわちy方向に延在する列)として配置され得る。列は、二次元構成、例えば、xy平面に配置されてもよく、複数の垂直に積層されたメモリ面に素子があるメモリ素子の三次元配置をもたらす。三次元のメモリ素子の他の構成が、三次元メモリアレイを構成することもできる。
【0048】
非限定的な例として、NANDストリングの三次元アレイでは、メモリ素子は、単一の水平(例えば、xy)メモリデバイスレベル内にNANDストリングを形成するようにまとめて結合され得る。代替的に、メモリ素子は、複数の水平メモリデバイスレベルにわたって横断する垂直なNANDストリングを形成するように一緒に結合され得る。いくつかのNANDストリングが単一のメモリレベルでメモリ素子を含有し、他のストリングが複数のメモリレベルにわたるメモリ素子を含有する、他の三次元構成を想定することができる。三次元メモリアレイはまた、NOR構成及びReRAM構成で設計されてもよい。
【0049】
典型的には、モノリシック三次元メモリアレイでは、1つ以上のメモリデバイスレベルが単一の基板の上方に形成される。任意選択的に、モノリシック三次元メモリアレイは、単一の基板内に少なくとも部分的に1つ以上のメモリ層も有し得る。非限定的な例として、基板は、シリコンなどの半導体を含み得る。モノリシック三次元アレイでは、アレイのそれぞれのメモリデバイスレベルを構成する層は、典型的には、アレイの下方のメモリデバイスレベルの層上に形成される。しかしながら、モノリシック三次元メモリアレイの隣接するメモリデバイスレベルの層は、共有されてもよいか、又はメモリデバイスレベル間に介在する層を有してもよい。
【0050】
別の観点から、二次元アレイが別個に形成され、次いでまとめてパッケージ化されて、複数のメモリ層を有する非モノリシックメモリデバイスを形成してもよい。例えば、非モノリシックスタックメモリは、メモリレベルを別個の基板上に形成することと、次いで、メモリレベルを互いの上にスタックすることとによって構築され得る。基板は、積層前にメモリデバイスレベルから薄くされるか、又は除去され得るが、メモリデバイスレベルが別個の基板にわたって最初に形成されるため、結果として得られるメモリアレイはモノリシック三次元メモリアレイではない。更に、複数の二次元メモリアレイ又は三次元メモリアレイ(モノリシック又は非モノリシック)は、別個のチップ上に形成され、次いでまとめてパッケージ化されて積層チップメモリデバイスを形成してもよい。
【0051】
図2は、図1のメモリアレイ126の例示的な二次元構成におけるメモリセルのブロック200、210を示す。メモリアレイ126は、多くのそのようなブロック200、210を含み得る。各例示的なブロック200、210は、いくつかのNANDストリングと、ブロック間で共有されるそれぞれのビットライン、例えば、BL0、BL1、...とを含む。それぞれのNANDストリングは、一端でドレイン側選択ゲート(drain-side select gate、SGD)に接続され、ドレイン選択ゲートの制御ゲートは、共通のSGDラインを介して接続される。NANDストリングは、それらの他端でソース側選択ゲート(source-side select gate、SGS)に接続され、次に、共通のソースライン220に接続される。112本のワードライン、例えばWL0~WL111が、SGSとSGDとの間に延在する。いくつかの実施形態では、メモリブロックは、112本より多いか又は少ないワードラインを含み得る。例えば、いくつかの実施形態では、メモリブロックは、164本のワードラインを含む。場合によっては、ユーザデータを含まないダミーワードラインも、選択ゲートトランジスタに隣接するメモリアレイに使用され得る。そのようなダミーワードラインは、エッジデータワードラインを特定のエッジ効果から遮蔽し得る。
【0052】
メモリアレイに提供され得る不揮発性メモリの1つのタイプは、図3A及び図3Bに示されるタイプのような浮遊ゲートメモリである。しかしながら、他のタイプの不揮発性メモリを使用することもできる。以下で更に詳細に考察されるように、図4A及び図4Bに示される別の実施例では、電荷トラップメモリセルは、導電性浮遊ゲートの代わりに非導電性誘電体材料を使用して、不揮発的に電荷を蓄積する。酸化ケイ素、窒化ケイ素、及び酸化ケイ素(「ONO」)から形成された三層誘電体は、導電性制御ゲートとメモリセルチャネルの上の半導電性基板の表面との間に挟まれる。セルは、セルチャネルから窒化物に電子を注入することによってプログラムされ、それらの電子は補足され、限られた領域に蓄積される。次いで、この蓄積電荷は、検出可能な方法で、セルのチャネルの一部分の閾値電圧を変化させる。セルは、ホットホールを窒化物に注入することによって消去される。同様のセルは、ドープポリシリコンゲートがメモリセルチャネルの一部分上に延在して別個の選択トランジスタを形成するスプリットゲート構成で提供され得る。
【0053】
別のアプローチでは、NROMセルが使用される。例えば、2ビットがそれぞれのNROMセルに記憶され、ONO誘電体層は、ソース拡散とドレイン拡散との間のチャネルを横切って延在する。一方のデータビットの電荷は、ドレインに隣接する誘電体層に局在し、他方のデータビットの電荷は、ソースに隣接する誘電体層に局在する。多状態のデータ記憶は、絶縁体内の空間的に分離された電荷蓄積領域のバイナリ状態を別々に読み出すことによって取得される。他のタイプの不揮発性メモリも既知である。
【0054】
図3Aは、NANDストリングにおける例示的な浮遊ゲートメモリセル300、310、320の断面図を示す。この図では、ビットライン又はNANDストリング方向はページに入り、ワードライン方向は左から右に進む。一例として、ワードライン324は、対応のチャネル領域306、316、及び326を含むNANDストリングを横切って延在する。メモリセル300は、制御ゲート302、浮遊ゲート304、トンネル酸化物層305、及びチャネル領域306を含む。メモリセル310は、制御ゲート312、浮遊ゲート314、トンネル酸化物層315、及びチャネル領域316を含む。メモリセル320は、制御ゲート322、浮遊ゲート321、トンネル酸化物層325、及びチャネル領域326を含む。それぞれのメモリセル300、310、320は、異なる対応のNANDストリング内にある。インターポリ誘電体(inter-poly dielectric、IPD)層328も示されている。制御ゲート302、312、322は、ワードラインの部分である。接触ラインコネクタ329に沿った断面図を図3Bに示す。
【0055】
制御ゲート302、312、322は、浮遊ゲート304、314、321を包み込み、制御ゲート302、312、322と浮遊ゲート304、314、321との間の表面接触領域を増加させる。これにより、IPD静電容量が高くなり、より高い結合比につながり、プログラミング及び消去を容易にする。しかしながら、NANDメモリデバイスが縮小されると、隣接するセル300、310、320間の間隔はより小さくなるため、2つの隣接する浮動ゲート302、312、322間に制御ゲート302、312、322及びIPD層328のための空間はほとんどない。
【0056】
代替として、図4A及び図4Bに示されるように、制御ゲート402、412、422が平坦又は平面である平坦又は平面メモリセル400、410、420が開発された。すなわち、制御ゲートはフローティングゲートを包み込まず、電荷蓄積層428とのその接触は、その上方からのみである。この場合、高い浮遊ゲートを有することに利点はない。代わりに、浮遊ゲートはかなり薄くなる。更に、浮遊ゲートを使用して、電荷を蓄積することができ、又は薄い電荷トラップ層を使用して、電荷をトラップすることができる。このアプローチは、プログラミング中にトンネル酸化物を通るトンネリング後に電子が浮遊ゲートを通って移動し得る、電子の弾道性伝導の問題を回避することができる。
【0057】
図4Aは、NANDストリングにおける例示的な電荷トラップメモリセル400、410、420の断面図を示す。図は、図1のメモリセルアレイ126内のメモリセル400、410、420の二次元例として、平坦制御ゲート及び電荷トラップ領域を含むメモリセル400、410、420のワードライン方向にある。電荷トラップメモリは、NOR及びNANDフラッシュメモリデバイスで使用され得る。この技術は、電子を蓄積するためにドープ多結晶シリコンなどの導体を使用する浮遊ゲートMOSFET技術とは対照的に、電子を蓄積するためにSiNフィルムなどの絶縁体を使用する。一例として、ワードライン424は、対応のチャネル領域406、416、426を含むNANDストリングを横切って延在する。ワードラインの部分は、制御ゲート402、412、422を提供する。ワードラインの下に、IPD層428、電荷トラップ層404、414、421、ポリシリコン層405、415、425、及びトンネル層409、407、408がある。それぞれの電荷トラップ層404、414、421は、対応のNANDストリング内で連続的に延在する。制御ゲートの平坦な構成は、浮遊ゲートより薄くすることができる。加えて、メモリセルを互いに近づけることができる。
【0058】
図4Bは、接触ラインコネクタ429に沿った図4Aの構造の断面図を示す。NANDストリング430は、SGSトランジスタ431、例示的なメモリセル400、433、...435、及びSGDトランジスタ436を含む。SGS及びSGDトランジスタ431、436内のIPD層428内の通路は、制御ゲート層402及び浮遊ゲート層が通信することを可能にする。例えば、制御ゲート402及び浮遊ゲート層は、ポリシリコンであってもよく、トンネル酸化物層は、酸化ケイ素であってもよい。IPD層428は、N-O-N-O-N構成のように、窒化物(nitride、N)及び酸化物(oxide、O)のスタックであり得る。
【0059】
NANDストリングは、p型基板領域455、n型ウェル456、及びp型ウェル457を含む基板上に形成されてもよい。N型ソース/ドレイン拡散領域sd1、sd2、sd3、sd4、sd5、sd6、及びsd7は、p型ウェル内に形成される。チャネル電圧Vchは、基板のチャネル領域に直接適用されてもよい。
【0060】
図5は、図1の感知ブロックSB1の例示的なブロック図を示す。1つのアプローチでは、感知ブロックは複数の感知回路を含む。それぞれの感知回路は、データラッチに関連付けられる。例えば、例示的な感知回路550a、551a、552a、及び553aは、それぞれデータラッチ550b、551b、552b、及び553bに関連付けられる。1つのアプローチでは、ビットラインの異なるサブセットは、異なる対応の感知ブロックを使用して感知され得る。これにより、感知回路に関連付けられた処理負荷を分割し、それぞれの感知ブロック内の対応のプロセッサによって処理することが可能になる。例えば、SB1の感知回路コントローラ560は、感知回路及びラッチのセットと通信し得る。感知回路コントローラ560は、プリチャージ電圧を設定するためのそれぞれの感知回路に電圧を提供する、プリチャージ回路561を含んでもよい。1つの可能なアプローチでは、例えば、データバス及びローカルバスを介して、それぞれの感知回路に電圧が独立して提供される。別の可能なアプローチでは、共通の電圧が、それぞれの感知回路に同時に提供される。感知回路コントローラ560はまた、プリチャージ回路561、メモリ562、及びプロセッサ563を含み得る。メモリ562は、本明細書に記載の機能を実行するようにプロセッサによって実行可能なコードを記憶し得る。これらの機能は、感知回路550a、551a、552a、553aに関連付けられたラッチ550b、551b、552b、553bを読み出し、ラッチ内のビット値を設定し、感知回路550a、551a、552a、553aの感知ノードにプリチャージレベルを設定するための電圧を提供することを含み得る。感知回路コントローラ560及び感知回路550a、551a、552a、553aの更なる例示的な詳細を以下に示す。
【0061】
いくつかの実施形態では、メモリセルは、フラグビットを記憶するラッチのセットを含むフラグレジスタを含み得る。いくつかの実施形態では、フラグレジスタの量は、データ状態の量に対応し得る。いくつかの実施形態では、1つ以上のフラグレジスタを使用して、メモリセルを検証するときに使用される検証技術のタイプを制御し得る。いくつかの実施形態では、フラグビットの出力は、特定のセルのブロックが選択されるように、デバイスの関連付けられたロジック、例えば、アドレス復号化回路を修正し得る。バルク動作(例えば、消去動作など)は、フラグレジスタに設定されたフラグを使用するか、又は暗黙アドレッシングなどでフラグレジスタとアドレスレジスタとの組み合わせを使用するか、又は代替的にアドレスレジスタのみを用いたストレートアドレッシングによって実行され得る。
【0062】
図6Aは、図1のメモリアレイ126の例示的な三次元構成におけるブロックのセット600の斜視図である。基板上には、メモリセル(記憶素子)のブロックBLK0、BLK1、BLK2、及びBLK3、並びにブロックBLK0、BLK1、BLK2、及びBLK3によって使用される回路を有する周辺領域604がある。例えば、回路は、ブロックBLK0、BLK1、BLK2、BLK3の制御ゲート層に接続され得る電圧ドライバ605を含み得る。1つのアプローチでは、ブロックBLK0、BLK1、BLK2、及びBLK3内の共通の高さの制御ゲート層が一般的に駆動される。基板601はまた、回路の信号を搬送するために導電路内でパターン化された1つ以上の下部金属層とともに、ブロックBLK0、BLK1、BLK2、及びBLK3の下に回路を搬送し得る。ブロックBLK0、BLK1、BLK2、及びBLK3は、メモリデバイスの中間領域602に形成される。メモリデバイスの上部領域603において、1つ以上の上部金属層が、回路の信号を搬送するための導電路にパターン化される。それぞれのブロックBLK0、BLK1、BLK2、及びBLK3は、メモリセルのスタック領域を含み、スタックの交互レベルはワードラインを表す。1つの可能なアプローチでは、それぞれのブロックBLK0、BLK1、BLK2、及びBLK3は、垂直接点が上部金属層まで上方に延在して導電路への接続を形成する、対向する階層側面を有する。4つのブロックBLK0、BLK1、BLK2、及びBLK3が例として示されているが、x方向及び/又はy方向に延在する2つ以上のブロックを使用することができる。
【0063】
1つの可能なアプローチでは、x方向の平面の長さは、ワードラインへの信号経路が1つ以上の上部金属層に延在する方向(ワードライン又はSGDライン方向)を表し、また、y方向の平面の幅は、ビットラインへの信号経路が1つ以上の上部金属層内に延在する方向(ビットライン方向)を表す。z方向は、メモリデバイスの高さを表す。
【0064】
図6Bは、図6AのブロックBLK0、BLK1、BLK2、BLK3のうちの1つの一部分の例示的な断面図を示す。ブロックは、交互の導電層及び誘電体層のスタック610を含む。この例では、導電層は、データワードライン層(ワードライン)WL0~WL111に加えて、2つのSGD層、2つのSGS層、及び4つのダミーワードライン層DWLD0、DWLD1、DWLS0、及びDWLS1を含む。誘電体層は、DL0~DL116とラベル付けされている。更に、NANDストリングNS1及びNS2を含むスタック610の領域が示されている。それぞれのNANDストリングは、ワードラインに隣接するメモリセルを形成する材料で充填されたメモリホール618、619を包含する。スタック610の領域622は、図6Dにより詳細に示されており、以下で更に詳細に考察される。
【0065】
スタック610は、基板611と、基板611上の絶縁フィルム612と、ソースラインSLの一部分とを含む。NS1は、スタックの底部614にソース端613を有し、スタック610の上部616にドレイン端615を有する。接触ラインコネクタ(例えば、金属充填スリットなどのスリット)617、620は、ソースラインをスタック610の上方にある特定の接触ラインに接続するように、スタック610を通って延在する相互接続として、スタック610にわたって周期的に設けられてもよい。接触ラインコネクタ617、620は、ワードラインの形成中に使用され、続いて金属で充填されてもよい。ビットラインBL0の一部分も示されている。導電ビア621は、ドレイン端615をBL0に接続する。
【0066】
図6Cは、図6Bのスタックのメモリホール直径のプロットを示す。垂直軸は、図6Bのスタックと整列し、メモリホール618及び619の幅(wMH)、例えば直径を示す。図6Aのワードライン層WL0~WL111は、一例として繰り返されて、スタック内のそれぞれの高さz0~z111にある。そのようなメモリデバイスでは、スタックを介してエッチングされるメモリホールは、非常に高いアスペクト比を有する。例えば、約25~30の深さ対直径比が一般的である。メモリホールは、円形断面を有してもよい。エッチングプロセスにより、メモリホール幅は、ホールの長さに沿って変化し得る。典型的には、直径は、メモリホールの上部から底部へと徐々に小さくなる。すなわち、メモリホールは、テーパ状であり、スタックの底部で狭くなる。場合によっては、選択ゲートの近くのホールの上部にわずかな狭まりが生じ、それにより、直径は、メモリホールの上部から底部までわずかに幅広になってから徐々に小さくなる。
【0067】
メモリホールの幅の不均一性により、メモリセルのプログラム傾斜及び消去速度を含むプログラミング速度は、メモリホールに沿ったそれらの位置に基づいて、例えば、スタック内のそれらの高さに基づいて変化し得る。メモリホールの直径が小さいほど、トンネル酸化物を横切る電場は比較的強くなるため、プログラミング及び消去速度は比較的高くなる。1つのアプローチは、メモリホール直径が同様である、例えば、規定の直径範囲内にある、隣接するワードラインのグループを定義することであり、グループ内の各ワードラインに最適化された検証スキームを適用することである。異なるグループは、最適化された異なる検証スキームを有し得る。
【0068】
図6Dは、図6Bのスタック610の領域622の拡大図を示す。メモリセルは、スタックの異なるレベルでワードライン層とメモリホールとの交点に形成される。この例では、SGDトランジスタ680、681は、ダミーメモリセル682、683、及びデータメモリセルMCの上に提供される。いくつかの層は、例えば、原子層堆積を使用して、メモリホール630の側壁(sidewall、SW)に沿って、及び/又はそれぞれのワードライン層内に堆積され得る。例えば、それぞれの列(例えば、メモリホール630内の材料によって形成されるピラー)は、SiN又は他の窒化物などの電荷トラップ層又はフィルム663、トンネル層664、ポリシリコン本体又はチャネル665、及び誘電体コア666を含み得る。ワードライン層は、制御ゲートとして遮断酸化物/遮断高k材料660、金属障壁661、及びタングステンなどの導電性金属662を含み得る。例えば、制御ゲート690、691、692、693、及び694が提供される。この実施例では、金属を除く全ての層が、メモリホール630内に提供される。他のアプローチでは、層のいくつかは制御ゲート層内にあり得る。追加のピラーは、異なるメモリホール内に同様に形成される。ピラーは、NANDストリングの柱状活性領域(active area、AA)を形成することができる。
【0069】
メモリセルがプログラムされると、電子が、メモリセルに関連付けられている電荷トラップ層の一部分に蓄積される。これらの電子は、チャネルからトンネル層を通って電荷トラップ層に引き込まれる。メモリセルのVthは、蓄積された電荷の量に比例して増加する。消去動作中、電子はチャネルに戻る。
【0070】
メモリホール630の各々は、遮断酸化物層、電荷トラップ層663、トンネル層664、及びチャネル層を含む複数の環状層で充填され得る。メモリホール630のそれぞれのコア領域は、本体材料で充填され、複数の環状層は、メモリホール630のそれぞれのコア領域とワードラインとの間にある。
【0071】
NANDストリングは、チャネルの長さが基板上に形成されないため、浮遊体チャネルを有すると考えられ得る。更に、NANDストリングは、スタック内で互いに上方に複数のワードライン層によって提供され、誘電体層によって互いに分離される。
【0072】
図7Aは、図6Bのスタック610の例示的なワードライン層WL0の上面図を示す。前述のように、三次元メモリデバイスは、交互の導電層及び誘電体層のスタックを備え得る。導電層は、SGトランジスタ及びメモリセルの制御ゲートを提供する。SGトランジスタに使用される層はSG層であり、メモリセルに使用される層はワードライン層である。更に、メモリホールはスタック内に形成され、電荷トラップ材料及びチャネル材料で充填される。これにより、垂直NANDストリングが形成される。ソースラインは、スタックの下方のNANDストリングに接続され、ビットラインは、スタックの上方のNANDストリングに接続される。
【0073】
三次元メモリデバイス内のブロックBLKは、サブブロックに分割され得、各サブブロックは、共通のSGD制御ラインを有するNANDストリンググループを含む。例えば、サブブロックSBa、SBb、SBc、及びSBd内のSGDライン/制御ゲートSGD0、SGD1、SGD2、及びSGD3をそれぞれ参照されたい。更に、ブロック内のワードライン層を領域に分割することができる。各領域は、それぞれのサブブロック内にあり、メモリデバイスの製造プロセス中にワードライン層を処理するために、スタック内に周期的に形成される接触ラインコネクタ(例えば、スリット)間に延在し得る。この処理は、ワードライン層の犠牲材料を金属で置き換えることを含み得る。一般に、接触ラインコネクタ間の距離は、エッチング剤が、犠牲材料を除去するために横方向に移動することができる、及び犠牲材料の除去によって作成される空隙を充填するために金属が移動することができる距離の限界を考慮して、比較的小さくあるべきである。例えば、接触ラインコネクタ間の距離は、隣接する接触ラインコネクタ間にメモリホールのいくつかの行を可能にさせ得る。メモリホール及び接触ラインコネクタのレイアウトはまた、各ビットラインが、異なるメモリセルに接続される間に、領域にわたって延在し得るビットラインの数の限界を考慮すべきである。ワードライン層を処理した後、接触ラインコネクタは、任意選択で、金属で充填されて、スタックを介する相互接続を提供することができる。
【0074】
この例では、隣接する接触ラインコネクタ間に、4行のメモリホールが存在する。ここでの行は、x方向に整列されたメモリホールのグループである。更に、メモリホールの行は、メモリホールの密度を増加させるために千鳥状パターンである。ワードライン層又はワードラインは、各々がコンタクトライン713によって接続されている領域WL0a、WL0b、WL0c、及びWL0dに分割される。ブロック内のワードライン層の最後の領域は、1つのアプローチにおいて、次のブロック内のワードライン層の第1の領域に接続され得る。接触ライン713は、次に、ワードライン層のための電圧ドライバに接続される。領域WL0aは、接触ライン712に沿って例示的なメモリホール710、711を有する。領域WL0bは、例示的なメモリホール714、715を有する。領域WL0cは、例示的なメモリホール716、717を有する。領域WL0dは、例示的なメモリホール718、719を有する。メモリホールは、図7Bにも示されている。各メモリホールは、それぞれのNANDストリングの一部であり得る。例えば、メモリホール710、714、716、及び718は、それぞれNANDストリングNS0_SBa、NS1_SBb、NS2_SBc、NS3_SBd、及びNS4_SBeの一部であり得る。
【0075】
各円は、ワードライン層又はSG層におけるメモリホールの断面を表す。破線を伴う例示的な円は、メモリホール内の材料によって、及び隣接するワードライン層によって提供されるメモリセルを表す。例えば、メモリセル720、721は、WL0a内にあり、メモリセル724、725は、WL0b内にあり、メモリセル726、727は、WL0c内にあり、メモリセル728、729は、WL0d内にある。これらのメモリセルは、スタック内で共通の高さにある。
【0076】
接触ラインコネクタ(例えば、金属充填スリットなどのスリット)701、702、703、704は、領域WL0a~WL0dのエッジの間に、及びエッジに隣接して位置し得る。接触ラインコネクタ701、702、703、704は、スタックの底部からスタックの頂部までの導電路を提供する。例えば、スタックの底部のソースラインは、スタックの上方の導電ラインに接続されてもよく、導電ラインは、メモリデバイスの周辺領域内の電圧ドライバに接続される。
【0077】
図7Bは、図6Bのスタックの例示的な上部誘電体層DL116の上面図を示す。誘電体層は、領域DL116a、DL116b、DL116c、及びDL116dに分割されている。各領域は、それぞれの電圧ドライバに接続され得る。これにより、各メモリセルが、それぞれのビットラインに接続されているそれぞれのNANDストリング内にある状態で、ワードライン層の1つの領域内のメモリセルのセットが、同時にプログラムされることが可能になる。各ビットラインに電圧を設定して、各プログラム電圧の間のプログラミングを許可又は禁止することができる。
【0078】
領域DL116aは、ビットラインBL0と一致する接触ライン712に沿って例示的なメモリホール710、711を有する。「X」記号で示されているように、多数のビットラインがメモリホールの上方に延在し、メモリホールに接続される。BL0は、メモリホール711、715、717、719を含むメモリホールのセットに接続されている。別の例示的なビットラインBL1は、メモリホール710、714、716、718を含むメモリホールのセットに接続されている。図7Aからの接触ラインコネクタ(例えば、金属充填スリットなどのスリット)701、702、703、704もまた、スタックを通って垂直に延在するように示されている。ビットラインは、x方向にDL116層にわたって、シーケンスBL0~BL23で番号付けされ得る。
【0079】
ビットラインの異なるサブセットは、異なる行のメモリセルに接続される。例えば、BL0、BL4、BL8、BL12、BL16、BL20は、各領域の右縁部のセルの第1の行内のメモリセルに接続される。BL2、BL6、BL10、BL14、BL18、BL22は、右縁部の第1の行に隣接する、セルの隣接する行内のメモリセルに接続される。BL3、BL7、BL11、BL15、BL19、BL23は、各領域の左縁部のセルの第1の行内のメモリセルに接続される。BL1、BL5、BL9、BL13、BL17、BL21は、左縁部の第1の行に隣接する、メモリセル隣接する行内のメモリセルに接続される。
【0080】
メモリブロックのメモリセルは、1ビット以上のデータを、各々が、それぞれの閾値電圧Vtに関連付けられる、複数のデータ状態で記憶するようにプログラムされ得る。例えば、図8は、メモリセル当たり1ビット(SLC)の記憶方式に従ってプログラムされたメモリセルのグループの閾値電圧Vt分布を示す。SLC記憶方式では、消去状態(Er)及び単一のプログラムされたデータ状態(S1)を含む、合計2つのデータ状態がある。図9は、合計8つのデータ状態、すなわち消去状態(Er)と7つのプログラムされたデータ状態(S1、S2、S3、S4、S5、S6、及びS7)を含む、セル当たり3ビット(TLC)の記憶方式の閾値電圧Vt分布を示す。各プログラムされたデータ状態(S1~S7)は、プログラミング動作の検証部分中に使用される検証電圧(Vv1~Vv7)に関連付けられる。図10は、合計16個のデータ状態、すなわち消去状態(Er)及び15個のプログラムされたデータ状態(S1~S15)を含む、セル当たり4ビット(QLC)の記憶方式の閾値電圧Vt分布を示す。4個のデータ状態を有するセル当たり2ビット(MLC)、又は32個のデータ状態を有するセル当たり5ビット(PLC)など、他の記憶方式も利用可能である。
【0081】
いくつかのメモリダイでは、メモリブロックは、複数の記憶方式モード、例えば、SLCモード及びTLCモード、又はSLCモード及びQLCモードで動作するように構成され得る。次いで、メモリデバイスは、高性能を提供するSLCモードで動作するメモリブロックに最初にデータを書き込むように構成され得る。次いで、性能が重要でないときのバックグラウンド動作において、メモリデバイスは、そのデータを、長期記憶のために、メモリセル当たりマルチビットのフォーマットにプログラムすることができる。
【0082】
メモリセル当たり複数ビットへのプログラミングは、典型的には、複数のプログラムループを含む。図11は、選択されたワードラインのメモリセルを、メモリセル当たりより多くのビット数(例えば、TLC又はQLC)にプログラムするための例示的なメモリセルプログラミング動作中に、選択されたワードラインに印加される電圧の波形1100を示す。示されるように、各プログラムループは、特定のプログラムループにおいてどのデータ状態がプログラムされているかに応じて、プログラミングパルスVPGMと、1つ以上の検証パルスと、を含む。単純化のために、各パルスについて方形波形が示されているが、マルチレベル形状又は傾斜形状などの他の形状が、可能である。
【0083】
増分ステップパルスプログラミング(Incremental Step Pulse Programming、ISPP)が、この例示的なパルス列において使用されており、これは、VPGMパルス振幅が、各連続するプログラムループにおいてステップアップする、すなわち増加することを意味する。言い換えれば、パルス列は、固定ステップサイズ(dVPGM)を使用して、各プログラムループで振幅が段階的に増加するVPGMパルスを含む。新しいパルス列は、初期VPGMパルスレベルVPGMUで始まり、最大許容レベルを超えない最終VPGMパルスレベルで終了する。パルス列1100は、不揮発性メモリセルのセットを含む選択されたワードラインに印加される一連のVPGMパルス1101~1115を含む。一例として、プログラムループにおいて検証されている目標データ状態に基づいて、各VPGMパルスの後に1つ以上の検証電圧パルス1116~1129が提供される。検証電圧は、電圧VV1~VV7(図9に示されている)に対応する。検証電圧の印加と同時に、感知動作は、メモリセルを通る電流を感知することによって、選択されたワードライン内の特定のメモリセルが、その意図されたデータ状態に関連付けられた検証電圧を上回る閾値電圧Vtを有するかどうかを判定することができる。電流が比較的高い場合、これは、メモリセルが導電状態にあり、その結果、その閾値電圧Vtが検証電圧未満であることを示す。電流が比較的低い場合、これは、メモリセルが非導電状態にあり、その結果、その閾値電圧Vtが検証電圧を上回っていることを示す。メモリセルが検証に合格した場合、そのメモリセルのプログラミングは完了し、そのメモリセルの更なるプログラミングは、メモリセルに結合されたビットラインに禁止電圧を印加することによって、全ての残りのプログラムループで禁止される。プログラミングは、全てのメモリセルが、それらの意図されたデータ状態について検証に合格するまで(この場合、プログラミングは合格する)、又は所定の最大プログラムループ数を超えるまで(この場合、プログラミングは不合格になる)進行する。ワードラインのメモリセルは、互いに独立してプログラムされ得る一連のストリンググループ、又は単にストリングに分割され得、プログラミングは、ワードラインにわたってストリング毎に開始した後に、メモリブロック内の次のワードラインに進むことができる。
【0084】
いくつかのプログラミング動作では、「スマート検証動作」は、そのメモリブロック内のワードラインの最適な開始プログラミング電圧を取得するために、プログラミング動作の最初の数個のプログラムループの間に実行される。図12及び図13を参照すると、スマート検証動作の間、選択されたワードラインの一部分のみ(例えば、1つのストリング)が、プログラミングのために選択される。第1のプログラムループでは、比較的低いVPGMU_SVプログラミングパルスが、ワードラインの選択された部分に印加され、次いで、検証レベルVver1を合格したメモリセルの数が、メモリセルの目標数よりも大きいか否かを判定するために、検証動作が、実行される。図13の例では、第1のプログラムループの後、検証レベルVver1よりも大きい閾値電圧を有するメモリセルはない。検証動作を合格したメモリセルの数が目標以下である場合、プログラミング電圧がステップアップされて(VPGM=VPGM+dVPGM)、別のプログラムループが、開始する。これは、検証を合格する目標数のメモリセルが、検証レベルVver1を超えるのに要するプログラムループ数だけ継続する。図12及び図13の例では、これには、3つのプログラムループを要する。検証動作が合格すると、VPGM、又はVPGMにもう1つの増分dVPGMを加えたものが、SV_VPGMに設定されて、チップのNANDレジスタに記憶される。同じメモリブロック内の他のストリング及びワードラインが、続いてプログラムされる場合、それらの後続のプログラミング動作の第1のプログラムループにおける初期プログラミング電圧VPGMUが、SV_VPGMに設定され、それにより、メモリセルをオーバープログラムすることなしに、不要なプログラムループをスキップすることによって性能を改善する。
【0085】
図12及び図13の例では、スマート検証動作は、第3のスマート検証プログラムループで合格する(図13の曲線の斜線領域は、検証を合格したメモリセルを識別する)。したがって、後続のワードライン及びストリングのSV_VPGMは、VPGMU_SVにdVPGMの3倍を加えたもの、すなわち、SV_VPGM=VPGMU_SV+3*dVPGMに設定される。同じチップ内又は異なるチップ内の他のメモリブロックでは、スマート検証に合格するためのプログラムループの数は、3未満、3に等しい、又は3超であり得、すなわち、最適なSV_VPGMは、各メモリブロックに固有であり、同じメモリブロック内の各ワードラインに固有でさえあり得る。
【0086】
多くのチップにおいて、SV_VPGMを記憶するNANDレジスタは、1チップ当たり1バイトのデータしか含まず、これは、一度に1つのSV_VPGMのみを記憶するのに十分なデータである。他のチップでは、NANDレジスタは、2バイト以上(例えば、3バイト以下)を含み得るが、NANDレジスタ内のバイト数は、チップ内に存在するメモリブロック数よりもはるかに少ない。データのバイト内で、図14に見出されるものなど、異なるビットの組み合わせが、異なるSV_VPGM電圧に関連付けられ得る。最適な初期プログラミング電圧VPGMは、チップ全体にわたってメモリブロック毎に変化し、チップのレジスタは、1バイトのデータだけ、又は存在するメモリブロック数よりもはるかに少ないバイト数のデータ(例えば、3バイト以下)を含むので、これは、プログラミングが、あるブロックから別のブロックに切り替わるたびに、SV_VPGMを再取得すること、すなわちブロックジャンプを必要とする。言い換えれば、プログラミングが、1つのメモリブロックから別のメモリブロックにジャンプするたびに、例え、次のブロックがすでに部分的にプログラムされており、SV_VPGMが以前に取得されていても、そのメモリブロックの固有のSV_VPGM電圧は失われて、NANDレジスタ内で置き換えられており、SV_VPGMが再取得されて、NANDレジスタに書き戻され得るように、スマート検証動作が、実行されなければならない。この再取得プロセスは、時間及びメモリチップのリソースを要し、それにより、性能を低下させる。
【0087】
本開示の一態様は、SV_VPGMが、メモリブロックのために取得されると、レジスタに書き込まれるだけではなく、SV_VPGMが、そのメモリブロックのスペアバイトにも直接書き込まれるプログラミング技術に関する。そこから、SV_VPGMは、長期間保持され、スマート検証動作を再び行う必要なしに、NANDレジスタに戻され得る。したがって、ブロックジャンプの場合、プログラムされているブロックのSV_VPGMは、時間のかかる再取得動作なしに、そのスペアバイトから読み出されて、メモリブロック内のワードラインをプログラムするときに使用するためにNANDレジスタに保存され得る。これは、プログラミング時間を低減することによって、メモリデバイスの性能を改善する。いくつかの実施形態では、SV_VPGMは、スマート検証動作が、各メモリブロックに対して1回行われるだけでよく、そのメモリブロックのメモリブロック内で繰り返されるだけでよく、その後消去されるように、チップ内のメモリブロック全体のために保存され得る。また、以下で更に詳細に考察されるように、いくつかの実施形態では、SV_VPGMは、ワードライン毎に取得及び記憶され得、プログラミング性能及び信頼性を更に改善する。言い換えれば、メモリブロック内の全てのワードラインをプログラムするときに単一のSV_VPGMが使用されるのではなく、各ワードライン(又は特定の数のワードライン)は、ワードライン自体の中に長期記憶のために保存される、ワードライン自体の固有の最適化されたSV_VPGMを提供され得る。
【0088】
メモリブロックにおいて、プログラムされると、各ワードラインは、大量のデータを含む。図15の例示的な実施形態では、図示されたワードラインは、16キロバイト(16kB)の総データを含む。この容量の大部分は、ユーザデータのために確保されるが、1つ以上のスペアバイトが、種々の目的、例えば、エラー訂正コード(ECC)、又は欠陥列を修復するために使用され得る列冗長性のために使用され得る。本開示のプログラミング技術によれば、各ワードラインのこれらのスペアバイトのうちの1つ(以下、「スマート検証バイト」と呼ばれる)は、SV_VPGMを記憶することに専用である。図14に示されるようなテーブルをチップに記憶して、このスマート検証バイト内の異なるビットの組合せを異なるSV_VPGM電圧に関連付けることができる。いくつかの実施形態では、SV_VPGMをメモリブロックの1つのワードラインに記憶し、次いで、そのメモリブロック内の全ての後続のワードラインに対して使用することができる。他の実施形態では、SV_VPGMは、各ワードラインのスペアバイトに保存される。
【0089】
ここで図16を参照すると、例示的なメモリブロックのワードラインをプログラムするステップが、示されている。ステップ1600において、データ書き込みコマンドが、受信される。いくつかの実施形態では、これは、ブロックジャンプを必要とするデータ書き込みコマンドであり得る。ステップ1602において、チップ内の制御回路が、メモリブロックをチェックして、目標ワードラインのSV_VPGMが、NANDレジスタに保存されているか否かを判定し、保存されていない場合、SV_VPGMが、スマート検証バイトに書き込まれているか否かを判定する。各ワードラインが固有のSV_VPGMを有する例示的な実施形態では、プログラムされているワードラインWLnのストリングが、String_0(ワードラインの第1のストリング)以外のものである場合、SV_VPGMは、WLn、String_0のスマート検証バイトにすでにプログラムされているはずである。他の実施形態では、SV_VPGMは、ワードラインのグループ又はメモリブロック全体に共通であり得る。その場合、スマート検証バイトは、別のワードラインのスマート検証バイト内など、他のどこかに位置し得る。例えば、いくつかの実施形態では、SV_VPGMは、1つおきのワードラインに対して取得されて、2つ、3つ、又はそれより多くのワードラインに対して使用され得る。SV_VPGM電圧が、スマート検証バイトに保存されているが、NANDレジスタには保存されていない場合、この段階で、SV_VPGMが、NANDレジスタに書き込まれる。
【0090】
判定ステップ1604において、SV_VPGMが、メモリブロック内のスマート検証バイトにプログラムされているかどうかが、判定される。
【0091】
判断ステップ1604における答えが「いいえ」である場合、ステップ1606において、プログラミング電圧VPGMが、比較的低い電圧レベルにある初期スマート検証プログラミング電圧VPGMU_SVに設定される。ステップ1608において、第1のスマート検証プログラムループが開始され、プログラミングパルスVPGMが、目標ワードラインに印加され、続いて検証動作が行われる。検証動作は、スマート検証電圧Vver1(図17参照)を超える閾値電圧を有するメモリセルの数をカウントすることと、その数を目標と比較することと、を含む。
【0092】
判定ステップ1610において、検証動作が合格したか否か、すなわち、検証電圧を上回る閾値電圧を有するメモリセルの数が目標を超えたか否かが、判定される。判定ステップ1610における答えが「いいえ」である場合、ステップ1612において、VPGMが増分的に増加される、すなわち、VPGM=VPGM+dVPGM。次に、方法はステップ1608に戻り、別のスマート検証プログラムループを開始する。方法は、検証動作が合格するまで、「N」個のプログラムループについてステップ1608~1612のループを通って進む。図17に示される例では、検証動作は、最初の4つのスマート検証プログラムループで不合格であり、第5のスマート検証プログラムループで合格する。しかしながら、検証動作を合格するためのスマート検証プログラムループの数は、ブロック毎に、時にはワードライン毎に異なるであろう。判定ステップ1610における答えが「はい」である場合、ステップ1614において、VPGMが、SV_VPGMに設定され、NANDレジスタにロードされる。
【0093】
ステップ1616において、ISPPプログラミング技術を使用して、1つ以上のプログラミングループにおいてユーザデータが、目標ワードラインのメモリセルにプログラムされる。目標ワードラインのメモリセルは、任意の適切なプログラミング方式、例えば、MLC、TLC、又はQLCにプログラムされ得る。ステップ1616の間、プログラムループN+mにおいて、目標ワードラインのスマート検証バイトが、SV_VPGM電圧に関連付けられたデータを含むようにプログラムされる。
【0094】
例示的な実施形態では、ユーザデータを含むメモリセルが、メモリセル当たりより多くのビット数にプログラムされ、各プログラムループでの検証動作を伴う場合であっても、スマート検証バイトのメモリセルは、検証を伴わない単一のプログラムループ(ループN+m)においてSLCにプログラムされ得る。例えば、消去されるときに、スマート検証バイトが「1,1,1,1,1,1,1,1」を読み出し、SV_VPGM電圧に関連付けられたデータが「0,1,0,1,1,1,0,1」である場合、プログラムループN+mのプログラミングパルス中に、第2、第4、第5、第6、及び第8のメモリセルに結合されたビットラインは、プログラミングが、第1、第3、及び第7のメモリセルにおいてのみ開始するように、禁止電圧を受信する。プログラミング動作の残りのプログラムループについては、スマート検証バイトをプログラムするのに必要な追加の時間がごくわずかであるように、これらのメモリセルの全てをプログラミング禁止にする。スマート検証バイトのプログラミングが行われる特定のプログラムループは、VPGM電圧が、1プログラミングパルス0検証(one programming pulse, zero verify、1P0V)プログラミング動作に対して最適レベルであるプログラムループに基づいて選択され得る。例示的な一実施形態では、スマート検証バイトのメモリセルがプログラムされるN+mパルスは、S1データ状態へのプログラミングの完了に続くパルスであり得る。したがって、スマート検証バイトのプログラミングは、ワードラインの残りをプログラムするのに必要な時間を増加させないが、代わりに、すでに行われているプログラミング動作内に隠される。この例では、スマート検証バイト内のメモリセルの閾値電圧Vt分布は、図8(SLC)に近似し得、ワードライン内の残りのメモリセルの閾値電圧Vt分布は、図9(TLC)又は図10(QLC)のいずれかに近似し得る。スマート検証バイトのメモリセルは不揮発性であるので、SV_VPGMは、アクセス可能なままであり、メモリデバイスがパワーオフされ、パワーオンに戻された場合であっても、再取得される必要はない。
【0095】
判定ステップ1604における答えが「はい」である場合、ステップ1620において、スマート検証バイトが、読み出され、SV_VPGMが、スマート検証動作を実行することなく、レジスタにロードされる。
【0096】
ステップ1616又は1620のいずれかに続いて、ステップ1618において、選択されたWLnの残りのストリングが、ISPPプログラミング技術を用いて、SV_VPGMに等しい初期プログラミング電圧VPGMUでプログラムされる。ステップ1622において、プログラムされているワードラインが、増分的に進められる、すなわち、WLn=WLn+1。このプロセスは、書き込みコマンドが完了するまで、又はメモリブロックが満杯になるまで、すなわち閉じられるまで継続する。
【0097】
図18は、本開示の一実施形態による、4つのストリング(String_0~String_3とラベル付けされている)に分割されたワードラインを有する例示的なメモリブロックに適用されるときの、上述のプログラミング技術のプログラミング順序又はシーケンスを示す表である。第1の動作は、プログラムされるべき第1のワードライン(WLn)のString_0のメモリセルに対してスマート検証動作を実行して、ワードラインWLnのスマート検証電圧、すなわちSV_VPGM_WLnを取得することである。次に、WLn、String_0のメモリセルが、ユーザデータとSV_VPGM_WLn電圧を含むデータとを含むようにプログラムされる。第2、第3、及び第4のプログラミング動作は、これらのプログラミング動作のための初期プログラミング電圧VPGMUとしてSV_VPGM_WLnを使用して、ワードラインWLnのString_1、String_2、及びString_3それぞれのメモリセルをプログラミングすることである。
【0098】
次いで、プログラミングは、メモリブロック内の次の連続したワードライン、すなわちWLn+1に移る。第5のプログラミング動作は、SV_VPGM_WLn+1を取得し、WLn+1のString_0をプログラムすることである。第6、第7、及び第8のプログラミング動作は、これらのプログラミング動作の初期プログラミング電圧VPGMUとしてSV_VPGM_WLn+1を使用して、ワードラインWLn+1のString_1、String_2、及びString_3をそれぞれプログラムすることである。このパターンは、書き込み動作が完了するまで、ワードラインWLn+2以降について継続する。
【0099】
特定のシステム構成要素を指すために、様々な用語が、本明細書で使用される。異なる会社は、異なる名前によって同じ又は類似の構成要素を指す場合があり、本説明は、名前が異なるが機能では異ならない構成要素間を区別することを意図しない。以下の開示に記載される様々な機能単位が「モジュール」と称される限りにおいて、そのような特徴付けは、潜在的な実装機構の範囲を過度に制限しないことを意図する。例えば、「モジュール」は、カスタム超大規模集積(VLSI)回路若しくはゲートアレイ、又は、ロジックチップ、トランジスタ、若しくは他のディスクリート構成要素を含む市販の半導体を含むハードウェア回路として実装され得る。更なる実施例では、モジュールはまた、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルアレイロジック、プログラマブルロジックデバイスなどの、プログラム可能なハードウェアデバイスに実装されてもよい。更に、モジュールはまた、様々なタイプのプロセッサによって実行されるソフトウェアによって、少なくとも部分的に実装され得る。例えば、モジュールは、オブジェクト、プロセス、又は機能に翻訳するコンピュータ命令の1つ以上の物理的又は論理的ブロックを構成する実行可能コードのセグメントを含み得る。また、そのようなモジュールの実行可能な部分は、物理的に一緒に位置する必要はなく、むしろ、異なる場所に記憶された別個の命令を含み、別個の命令は、一緒に実行されたときに、識別されたモジュールを含み、そのモジュールの記載された目的を達成する。実行可能コードは、単一の命令のみ又は複数の命令のセットを含んでもよく、同様に、異なるコードセグメントにわたって、又は異なるプログラム間に、又はいくつかのメモリデバイス間などに分散されてもよい。ソフトウェア又は部分的なソフトウェアのモジュール実装では、ソフトウェア部分は、電子、磁気、光学、電磁、赤外線、又は半導体ベースのシステム、装置、若しくはデバイス、又はそれらの任意の好適な組み合わせを含むがこれらに限定されない、1つ以上のコンピュータ可読及び/又は実行可能記憶媒体に記憶されてもよい。概して、本開示の目的のため、コンピュータ可読及び/又は実行可能記憶媒体は、命令実行システム、装置、プロセッサ、又はデバイスによって又はそれらと関連して使用されるプログラムを含む及び/又は記憶することができる任意の有形及び/又は非一時的媒体で構成されてもよい。
【0100】
同様に、本開示の目的のため、「構成要素」という用語は、任意の有形、物理的、及び非一時的デバイスで構成されてもよい。例えば、構成要素は、カスタムVLSI回路、ゲートアレイ、又は他の集積回路で構成されたハードウェア論理回路の形態であってもよく、あるいはロジックチップ、トランジスタ、若しくは他のディスクリート構成要素、又は任意の他の好適な機械的及び/若しくは電子的デバイスを含む市販の半導体で構成されたハードウェア論理回路の形態であってもよい。加えて、構成要素はまた、フィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)、プログラマブルアレイロジック、プログラマブルロジックデバイスなどのプログラム可能なハードウェアデバイスに実装され得る。更に、構成要素は、例えば、プリント回路基板(printed circuit board、PCB)などの導電体を介した1つ以上の他の構成要素との電気通信構成において、チップ、ダイ、ダイ平面、及びパッケージ、又は他のディスクリート電気デバイスなどの1つ以上のシリコンベースの集積回路デバイスで構成されてもよい。したがって、上記に定義されているように、モジュールは、特定の実施形態では、構成要素によって具現化されるか又は構成要素として実装されてもよく、場合によっては、モジュール及び構成要素という用語は、互換的に使用されてもよい。
【0101】
本明細書で使用される場合、「回路」という用語は、電流が流れることを可能にする1つ以上の導電経路を構成する1つ以上の電気的及び/又は電子的構成要素を含む。回路は、閉ループ構成又は開ループ構成の形態であり得る。閉ループ構成では、回路構成要素は、電流のための戻り経路を提供し得る。対照的に、開ループ構成では、その中の回路構成要素は、電流の戻り経路を含まないにもかかわらず、依然として回路を形成すると見なされ得る。例えば、集積回路が(電流のための戻り経路として)接地に結合されているかどうかにかかわらず、集積回路は回路と称される。特定の例示的な実施形態では、回路は、集積回路のセット、単一の集積回路、又は集積回路の一部分を含み得る。例えば、回路は、カスタムVLSI回路、ゲートアレイ、論理回路、及び/又は他の形式の集積回路を含み得、同様にロジックチップ、トランジスタ、又は他のディスクリートデバイスなどの市販の半導体を含み得る。更なる実施例では、回路は、例えば、プリント回路基板(PCB)の伝導体を介した1つ以上の他の構成要素との電気的通信構成において、チップ、ダイ、ダイプレーン、及びパッケージ、又は他のディスクリート電気デバイスなど、1つ以上のシリコンベース集積回路デバイスを含み得る。回路はまた、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルアレイロジック、及び/又はプログラマブルロジックデバイスなどのプログラム可能なハードウェアデバイスに関して合成回路として実装され得る。他の例示的な実施形態では、回路は、(集積回路デバイスを有する又は有しない)非集積電気及び/又は電子部品のネットワークを含み得る。したがって、上記に定義されているように、モジュールは、特定の実施形態では、回路によって具現化されてもよく又は回路として実装されてもよい。
【0102】
本明細書に開示される例示的な実施形態は、1つ以上のマイクロプロセッサと、特定の非プロセッサ回路及び他の要素とともに、本明細書に開示されるいくつか、ほとんど、又は全ての機能を実装するように1つ以上のマイクロプロセッサを制御する、特定の記憶されたコンピュータプログラム命令とで構成され得ることが理解されよう。あるいは、いくつか又は全ての機能は、記憶されたプログラム命令を有さないステートマシンによって実装されるか、又は1つ以上の特定用途向け集積回路(application-specific integrated circuit、ASIC)若しくはフィールドプログラマブルゲートアレイ(FPGA)に実装され得、それぞれの機能又は特定の機能のいくつかの組み合わせは、カスタムロジックとして実装される。これらのアプローチの組み合わせも使用され得る。更に、以下の「コントローラ」への言及は、個々の回路構成要素、特定用途向け集積回路(ASIC)、制御ソフトウェアを有するマイクロコントローラ、デジタル信号プロセッサ(digital signal processor、DSP)、フィールドプログラマブルゲートアレイ(FPGA)、及び/又は制御ソフトウェアを有するプロセッサ、又はそれらの組み合わせを含むものとして定義されるべきである。
【0103】
加えて、本明細書で使用され得る「結合」、「結合された」、又は「結合する」という用語は、直接的又は間接的な接続のいずれかを意味することが意図される。したがって、第1のデバイスが第2のデバイスを結合するか、又は第2のデバイスに結合された場合、その接続は、直接接続によるものであるか、又は他のデバイス(若しくは構成要素)及び接続を介した間接接続を介するものであり得る。
【0104】
「一実施形態(an embodiment)」、「一実施形態(one embodiment)」、「例示的な実施形態」、「特定の実施形態」、又は他の同様の専門用語などの用語の本明細書における使用に関して、これらの用語は、実施形態に関連して説明される特定の特徴、構造、機能、動作、又は特性が、本開示の少なくとも1つの実施形態に見られることを示すことを意図する。したがって、「一実施形態では(in one embodiment)」、「一実施形態では(in an embodiment)」、「例示的な実施形態では」などの語句の表記は、必ずしも全て同一の実施形態を指すものではなく、むしろ、特に明示しない限り「1つ以上ではあるが全てではない実施形態」を意味し得る。更に、「含む、備える(comprising)」、「有する」、及び「含む(including)」という用語並びにそれらの変形は、自由な様式で使用され、したがって、特に明示しない限り、「...を含むが、これに限定されない」を意味すると解釈されるべきである。また、「...を含む」が先行する要素は、それ以上の制約なしに、当該要素を含む主題のプロセス、方法、システム、物品、又は装置における追加の同一要素の存在を排除するものではない。
【0105】
「a」、「an」、及び「the」はまた、特に明示しない限り、「1つ以上」を表す。更に、本明細書及び/又は以下の請求項の範囲で使用され得る「A及びBのうちの少なくとも1つ」(A及びBは、特定の物体又は属性を示す変数である)という語句は、「及び/又は」という語句と同様に、A若しくはBの選択、又はA及びBの両方を示す。このような語句に3つ以上の変数が存在する場合、この句は、変数のうちの1つのみ、変数のうちのいずれか1つ、変数のうちのいずれかの任意の組み合わせ(又は部分的組み合わせ)、及び変数の全てを含むものとして本明細書に定義される。
【0106】
更に、本明細書で使用される場合、「約」又は「およそ」という用語は、明示的に示されているかどうかにかかわらず、全ての数値に適用される。これらの用語は、一般に、当業者が列挙された値と同等である(例えば、同じ関数又は結果を有する)と考える数値の範囲を指す。特定の場合には、これらの用語は、最も近い有効数字に丸められる数値を含み得る。
【0107】
加えて、本明細書に記載される任意の列挙された項目の一覧は、特に明示しない限り、一覧にある項目のいずれか又は全てが相互に排他的及び/又は相互に包括的であることを暗に意味するものではない。更に、本明細書で使用されるとき、「セット(set)」という用語は、「1つ以上」を意味すると解釈されるべきであり、「セット(sets)」の場合、特に明記しない限り、集合論に従って「1つ以上(one or more、ones or more、及びones or mores)」の倍数(又は複数)を意味するものと解釈されるべきである。
【0108】
前述の詳細な説明は、例示及び説明の目的のために提示されている。前述の詳細な説明は、網羅的であること、又は開示された正確な形態に限定することを意図したものではない。多くの修正及び変形が、上記の説明に鑑みて可能である。説明した実施形態は、本技術の原理及びその実際の用途を最良に説明し、それにより、当業者が、様々な実施形態で、企図される特定の用途に適するように様々な修正を伴って、本技術を最良に利用することを可能にするために選択されたものである。本技術の範囲は、本明細書に添付の特許請求の範囲によって定義される。
図1A
図1B
図2
図3A
図3B
図4A
図4B
図5
図6A
図6B
図6C
図6D
図7A
図7B
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
【外国語明細書】