JP4950296B2 - 初期プログラミング電圧のトリミング中に消去/書き込みサイクルを減らす不揮発性メモリおよび方法 - Google Patents
初期プログラミング電圧のトリミング中に消去/書き込みサイクルを減らす不揮発性メモリおよび方法 Download PDFInfo
- Publication number
- JP4950296B2 JP4950296B2 JP2009528383A JP2009528383A JP4950296B2 JP 4950296 B2 JP4950296 B2 JP 4950296B2 JP 2009528383 A JP2009528383 A JP 2009528383A JP 2009528383 A JP2009528383 A JP 2009528383A JP 4950296 B2 JP4950296 B2 JP 4950296B2
- Authority
- JP
- Japan
- Prior art keywords
- page
- volatile memory
- voltage
- programming voltage
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000015654 memory Effects 0.000 title claims abstract description 224
- 238000000034 method Methods 0.000 title claims description 60
- 238000009966 trimming Methods 0.000 title description 27
- 238000012360 testing method Methods 0.000 claims description 66
- 238000012545 processing Methods 0.000 claims description 6
- 239000000523 sample Substances 0.000 description 44
- 230000008569 process Effects 0.000 description 18
- 230000002950 deficient Effects 0.000 description 13
- 230000008901 benefit Effects 0.000 description 7
- 239000000758 substrate Substances 0.000 description 7
- 238000007796 conventional method Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000005669 field effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000002784 hot electron Substances 0.000 description 2
- 238000002347 injection Methods 0.000 description 2
- 239000007924 injection Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000005684 electric field Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 239000013643 reference control Substances 0.000 description 1
- 230000008672 reprogramming Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/12—Programming voltage switching circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3468—Prevention of overerasure or overprogramming, e.g. by verifying whilst erasing or writing
- G11C16/3481—Circuits or methods to verify correct programming of nonvolatile memory cells whilst programming is in progress, e.g. by detecting onset or cessation of current flow in cells and using the detector output to terminate programming
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/021—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
- G11C29/50004—Marginal testing, e.g. race, voltage or current testing of threshold voltage
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Read Only Memory (AREA)
Description
本発明の一態様によると、ブロックの形に構成されたメモリセルアレイを有し、各ブロックが一斉に消去可能なメモリセルにアクセスするためのワード線からなり、各ワード線が一斉にプログラム可能な1ページ以上のメモリセルを含む不揮発性メモリにおいて、ブロック内のワード線に沿って1ページのメモリセルをプログラムするにあたって最適な開始電圧を推定するには、ブロック内の類似するワード線サンプルをテストプログラムして、それぞれのページ/ワード線を指定パターンまでプログラムできる個々の開始電圧から統計平均を求める。それには、開始プログラミング電圧から一連のパルスを印加するプログラムループをサンプルの全ページで実行する。サンプルの各ページがプログラムループを通過した後には、プログラム−ベリファイ済みのページ/ワード線をさらなる処理から除外し、その開始プログラミング電圧を保存する。そして、ブロックを消去し、サンプル中のまだベリファイされていないワード線を次の増加開始電圧による次のプログラムループで再度プログラムできる状態にする。このサイクルは、サンプル中の全ワード線がプログラム−ベリファイ済みとなるまで続く。そして、個々の開始プログラミング電圧から統計平均を求めることで、そのページにとって最適な開始プログラミング電圧を導き出すことができる。
図1〜図7は、本発明の様々な態様を実装できる例示的なメモリシステムを示す。
図1は、不揮発性メモリチップの機能ブロックを概略的に示す。メモリチップ100は、二次元のメモリセルアレイ200と、制御回路210と、デコーダ、読み出し/書き込み回路、マルチプレクサ等の周辺回路とを含む。メモリアレイ200は、行デコーダ230Aおよび230Bによりワード線(図2参照)ごとに、また列デコーダ260Aおよび260Bによりビット線(図2参照)ごとにアドレスできる。読み出し/書き込み回路270Aおよび270Bにより、メモリセルページの読み出しまたはプログラムは並行して行うことができる。好適な実施形態において、同じワード線を共有する隣接するメモリセル行からページが構成される。メモリセル行を複数のページに区分する別の実施形態において、個々のページに向けて読み出し/書き込み回路270Aおよび270Bを多重化するためにページマルチプレクサ250Aおよび250Bを設ける。
メモリアレイ200は通常、行および列に配列されてワード線およびビット線によりアドレスできる二次元のメモリセルアレイとして構成される。アレイは、NORタイプのアーキテクチャまたはNANDタイプのアーキテクチャに従って形成できる。
図8〜図10は、本発明の様々な態様を実装できる例示的なメモリテストシステムを示す。
良好なプログラミング性能を達成するには、初期プログラミング電圧VPGM0とステップサイズを適切に選ばなければならない。選択する初期プログラミング電圧VPGM0が低すぎると、目標状態に達するまでのプログラミングパルス数が極端に多くなってしまう。他方、選択するVPGM0が高すぎると、特に多状態メモリの場合はプログラミングの最初のパルスで目標状態を通り越してしまう。パルスからパルスにかけてのステップサイズにも同じことが当てはまる。一般的には、適切な分解能で図3に見られる区切られたあるいは分離された各領域を数ステップで横断できるのが最適なステップサイズである。最適な初期プログラミング電圧VPGM0なら数ステップで目標状態に達する。一般的に、ステップサイズはしきい値ウィンドウ内の区画数に基づき事前に決定できる。最適VPGM0は製造上のばらつきに大きく左右され、従来は工場でテストを行って判断してきた。このプロセスをVPGM0トリミングという。
このセルフテスト型オンチップコントローラ210’には、高価な専用テスタを使わずにすむという利点がある。テストを現場で行い、メモリ装置の経年劣化にともないVPGM0値のトリミングをやり直すという可能性も提供される。
図11Aは、メモリ装置である種のワード線について推定開始プログラミング電圧を得る一般的方式を示すフローチャートである。既に述べたように、このプロセスはプログラミング電圧(「VPGM 」)トリミングと呼ばれることもある。
ステップ400:良好なブロックiを選択する。実施例によっては、時間がかかるVPGM トリミング操作に取りかかる前のブロックに迅速なプログラムテストを行うと好ましい。このステップは実装しだいでオプションである。これを省くには、欠陥ワード線に遭遇した場合にその欠陥ワード線を無視するだけでよい。良好なブロック判定の詳しい説明を図11Bに示す。
ステップ410:サンプリングのため、選択したブロックiで1グループのワード線を選択する。{WL(i,j)ここでj=0、m−1}。一般的に、選択されるワード線のグループとワード線のタイプは類似するプログラミング特性を持つ。
ステップ420:WL(i,j)上のページで、VPGM0(i,j)から始まる階段パルス電圧波形により所定のパルス数以内でページ全体を指定状態までプログラムする初期プログラミング電圧VPGM0(i,j)を判断する。ワード線WL(i,j)を共有する1ページのメモリセルを並行してプログラムする。階段波形はパルスのたびに1ステップずつ増加し、所定のパルス数まで増加する。
ステップ460:十分なサンプルを収集するため、必要に応じステップ400〜420を繰り返して別のブロックを選択する。例えば、プログラミング特性が異なる3タイプのワード線がそれぞれのブロックにある。第1のタイプはブロックの上境界にある最初のワード線2本である。第2のタイプはブロックの下境界にある最後のワード線2本である。第3のタイプはブロックのコア領域にある全ワード線である。3タイプのワード線のそれぞれでサンプルを充実させるには、メモリアレイにまたがって分布する多数のブロックで大きなサンプルを採るのが好ましい。以降のセクションで説明するように、1組のブロックから幾何学的配置が類似するワード線を採ることによってタイプが類似する様々なワード線サンプルを形成することもできる。
ステップ470:ワード線サンプル全体で平均開始プログラミング電圧(「<VPGM0>」)を計算する。それには、各ワード線サンプルのVPGM0の総計を全ワード線サンプルの総計で割る。すなわち、
ステップ401:ブロックを消去する。
ステップ402:ブロック内の全ワード線を所定のパルス数で指定状態まで順次プログラムする。
ステップ404:ブロック内のいずれかのワード線がプログラムに失敗した?失敗したワード線がある場合はステップ406へ進み、さもなくばステップ408へ進む。
ステップ406:1つ以上の欠陥ワード線を含むために不良ブロックとみなす。これは特に、NANDチェーンの中の1不良セルによってチェーン全体に動作不良が生じるNANDアーキテクチャのメモリに当てはまる。この不良ブロックはVPGM トリミングから外される。
ステップ408:ブロックは良好。良好なブロックはVPGM トリミングに選ばれる。
ステップ409:ブロックを消去し、その中にあるワード線をプログラムできる状態にする。
ステップ422:ブロックiを消去し、その中にあるワード線をプログラムできる状態にする。
ステップ424:まずはj=0に設定してサンプルの最初のワード線を指示する。
ステップ426:インデックス「j」を使ってブロック内のサンプルからワード線WL(i,j)を選択する。
ステップ428:開始プログラミング電圧の初期値を設定する。VPGM0(i,j)=VPGM0_0。
ステップ430:VPGM0(i,j)から所定のパルス数でワード線上のページを指定状態までプログラムする。
ステップ432:ページ/WLはプログラムされた?WL(i,j)が指定状態までプログラムされない場合はステップ440へ進み、さもなくばステップ450へ進む。
ステップ440:VPGM0(i,j)=VPGM0(i,j)+ΔVとなるようにVPGM0(i,j)を増加させる。
ステップ442:ブロックiを消去し、増加VPGM0(i,j)でワード線を再度プログラムできる状態にする。
ステップ450:ページのプログラムに成功した。統計を収集するためにVPGM0(i,j)を保存する。
ステップ452:ブロックiを消去し、次のワード線をプログラムできる状態にする。
ステップ454:サンプル中の最終ワード線に達した?最終ワード線のテストがまだならばステップ456へ進み、さもなくば図11Aのステップ460へ進む。
ステップ456:j=j+1により次のワード線へ進み、ステップ424まで戻って次のワード線をテストする。
本発明の一態様によると、ブロックの形に構成されたメモリセルアレイを有し、各ブロックが一斉に消去可能なメモリセルにアクセスするためのワード線からなり、各ワード線が一斉にプログラム可能な1ページ以上のメモリセルを含む不揮発性メモリにおいて、ブロック内のワード線に沿って1ページのメモリセルをプログラムするにあたって最適な開始電圧を推定するには、ブロック内の類似するワード線サンプルをテストプログラムして、それぞれのページ/ワード線を指定パターンまでプログラムできる個々の開始電圧から統計平均を求める。それには、開始プログラミング電圧から一連のパルスを印加するプログラムループをサンプルの全ページで実行する。サンプルの各ページがプログラムループを通過した後には、プログラム−ベリファイ済みのページ/ワード線をさらなる処理から除外し、その開始プログラミング電圧を保存する。ブロックを消去し、サンプル中のまだベリファイされていないワード線を次の増加開始電圧による次のプログラムループで再度プログラムできる状態にする。このサイクルは、サンプル中の全ワード線がプログラム−ベリファイ済みとなるまで続く。個々の開始プログラミング電圧から統計平均を求めることで、そのページにとって最適な開始プログラミング電圧を導き出すことができる。
ステップ510:ブロックの中で特定のタイプのページを代表するページのサンプルを選択する。
ステップ520:サンプル中の各ページに対応する開始プログラミング電圧に初期値を提供する。
ステップ530:ページサンプルを含むブロックを消去する。
ステップ540:ページサンプルの中で目標パターンまでまだプログラムされていないページのサブセットをそれぞれの開始プログラミング電圧で順次プログラムし、各ページをプログラムした後には、
目標パターンまでプログラムされたか否かをベリファイし、かつ
ページがプログラム−ベリファイ済みに至っていなければ、その開始プログラミング電圧を所定の量で増加させ、プログラム−ベリファイ済みなら、ページのプログラム−ベリファイを可能にする開始プログラミング電圧を導き出すために情報を保存する。
ステップ550:サンプルの全ページがプログラム−ベリファイ済み?ベリファイ済みに至っていないページがある場合はステップ530まで戻り、さもなくばステップ560へ進む。
ステップ560:サンプルに選ばれた別のブロックでステップ500からステップ560までを繰り返す。
ステップ570:保存した情報からサンプルの平均開始プログラミング電圧を計算する。
ステップ572:サンプルの平均開始プログラミング電圧をもとに特定タイプのページの開始プログラミング電圧を導き出す。
一実施形態では、この制限で比較的低い増加上限を設定する。これは特定の開始電圧からページのプログラミングが失敗または不十分とみなされるまでの最大プログラミングパルスまたは増加数を設定する。この数字は、通常のメモリ装置の使用で実際のプログラミング操作中に割り当てられるプログラミングステップ数とほぼ同じ数字に設定する。例えば、ユーザによる通常のプログラミング操作で、ある特定の論理ページのプログラミングは8〜10プログラミングパルス以内で完了しなければならない。こうすることでVPGM トリミングテストは現実のプログラミング状況に近いものになる。一般的に、この制限は5〜15の範囲におよぶ。
ステップ610:ブロックiの初期値を設定する。
ページベリファイステータス:PageDone(j)=FALSE、全てのj
初期プログラミング電圧:VPGM0(i,j)=VPGM0_0、全てのj
ΔVPGM0数:StepUp#(j)=0、全てのj
ステップ620:ブロックiを消去する。
ステップ630:j=0。
ステップ632:サンプルの中でワード線WL(i,j)を選択する。j=0、m−1。
ステップ640:VPGM0(i,j)から所定のパルス数にかけてワード線上のページを指定状態までプログラムする。
ステップ642:ページはプログラムされた?ページがプログラム−ベリファイ済みに至っていなければステップ650へ進み、さもなくばステップ660へ進む。
ステップ650:ワード線はプログラム−ベリファイ済みに至っていない。したがって、その初期プログラミング電圧をさらなるステップにより増加させる。StepUp#(j)を増加させる。StepUp#(j)=StepUp#(j)+1。
ステップ652:VPGM0(i,j)を増加させる。VPGM0(i,j)=VPGM0(i,j)+StepUp#(j)*ΔV。
ステップ660:ワード線のテストが終了し、ページ処理済みを標示する。PageDone=TRUE。
ステップ662:初期電圧からのステップアップ数として最終プログラミング電圧の情報を蓄積する。StepUp#Global=StepUp#Global+Stepup#(j)。
ステップ670:次のワード線。j=j+1。
ステップ672:サンプル中の最終ワード線に達した?(すなわち、j=m?)WL(i,j)が最後のワード線でなければステップ680へ進み、さもなくばステップ690へ進む。
ステップ680:非処理済みページ。PageDone(j)=TRUE?現在のページがプログラム−ベリファイ済みであることをステータスが伝える場合はこれを無視するかあるいは省き、プロセスはステップ670へ進み、さもなくばプロセスはステップ632まで戻って、プログラム−ベリファイ済みに至っていない次のワード線をテストする。
ステップ690:全てのページ/WLがプログラムされるまで残りの非処理済みWLを再走査する。全てのjでIs_PageDone(j)=TRUE?プログラム−ベリファイ済みに至っていないワード線が1つでもある場合はステップ620まで戻って、増加プログラミング電圧で再度プログラムし、さもなくば全ワード線のプログラミングは終わっているから、プロセスは図13のステップ560へ進む。
本発明のもうひとつの態様によると、ワード線上のページの初期プログラミングテスト運転によって開始プログラミング電圧の初期値を推定する。ワード線上の選択されたページを一連の階段波形電圧パルスで逐次プログラムし、パルス間にベリファイをはさみながらページが指定パターンまでプログラムされたことをベリファイする。ページがプログラム−ベリファイ済みになるときの最終プログラミング電圧を使用し、所定の量までスケールバックすることにより開始プログラミング電圧を推定する。類似するページ/ワード線サンプルを検討することによって平均開始プログラミング電圧を求める。異例の項目によって統計が歪まないようにするため、サンプル中でプログラムできないページ/ワード線は無視してよい。
ステップ800:メモリセルページをプログラムするため、所定の初期電圧レベルVp=Viとするプログラミング電圧を用意する。
ステップ802:メモリセルページを消去する。
ステップ810:Vpのパルスをメモリセルページに印加する。
ステップ812:メモリセルページが所定の記憶状態の対応するページになるまでプログラムされたか否かをベリファイする。
ステップ814:ページはプログラム−ベリファイ済み?ページがプログラム−ベリファイ済みでなければステップ820へ進み、さもなくばステップ830へ進む。
ステップ820:プログラミング電圧を所定の量Vp=Vp+ΔVで増加させる。ステップ810へ進む。
これまでどおり、タイプが類似するワード線のサンプルをテストして、そのタイプの統計的に平均化された開始プログラミング電圧を求める。テスト結果用の記憶装置を抑えるため、好ましくはテスト運転が終わるたびに統計平均を実行する。
ステップ850:タイプが類似するページのサンプルで第1の行程のテスト運転(例えば、各ページにつきステップ800からステップ830)を実行する。
ステップ860:第1の行程のテスト運転から推定開始プログラミング電圧の第1の統計平均を求める。<VPGM0>1 。
ステップ870:開始プログラミング電圧の初期値として<VPGM0>1 を使用し(すなわち、Vi=<VPGM0>1 )、タイプが類似するページのサンプルで第2の行程のテスト運転(例えば、各ページにつきステップ800からステップ830)を実行する。
ステップ880:第2の行程のテスト運転から推定開始プログラミング電圧の第2の統計平均を求める。<VPGM0>2 。
本発明のもうひとつの態様によると、複数の消去可能なブロックを有し、プログラミング特性が類似する1グループのワード線を各ブロックに有するメモリアレイにおいて、グループの代表的なページの最適開始プログラミング電圧を得る方式は、1セットのブロックにわたってセットの各ブロックで幾何学的に類似する位置にある1つ以上のワード線でサンプルを形成することと、セットの各サンプルからプログラミング電圧の統計推定を得ることと、最適開始プログラミング電圧を導き出すためにセットの中で最小推定を選択することとを含む。高速プログラミングワード線は低速プログラミングワード線に比べて低いプログラミング電圧ですむため、このやり方により最適値はグループの高速プログラミングワード線を重視したものになる。
ステップ900:消去可能なブロックの形に構成されたメモリセルアレイを有し、一斉に消去可能なメモリセルにアクセスするために1ブロックのワード線を各消去可能ブロックに含み、かつ一斉にプログラム可能な1ページ以上のメモリセルを各ワード線に含む不揮発性メモリを用意する。
ステップ902:ブロックの中でページを代表する1グループのページを選択する。
ステップ904:1セットのブロックを選択する。
ステップ906:少なくとも各ブロックの幾何学的に類似する位置にあるページを各ブロックから選択することにより、1セットのサンプルを形成する。
ステップ908:セットの各サンプルからプログラミング電圧の統計推定を求める。
Claims (37)
- 消去可能なブロックの形に構成されたメモリセルアレイを有し、一斉に消去可能なメモリセルにアクセスするために1ブロックのワード線を各消去可能なブロックに含み、かつ一斉にプログラム可能な1ページ以上のメモリセルを各ワード線に含む不揮発性メモリで、特定のページの開始プログラミング電圧を判定する方法であって、
(a)ブロックの中で特定のページを代表するページのサンプルを選択するステップと、
(b)サンプルの各ページをプログラムするため、関連する初期値と所定のステップ数とにより階段波形を有する関連するプログラミング電圧を提供するステップと、
(c)ページサンプルを含むブロックを消去するステップと、
(d)サンプル中の全ページにつき、関連するプログラミング電圧を関連する初期値と併せて使用してページが目標パターンまでプログラム可能か否かを判定し、プログラム可能ならば、収集統計の一部として関連する初期値を蓄積した後にページをさらなる処理から除外し、さもなくば関連する初期値を所定のステップにより増加させるステップと、
(e)サンプル中の全ページがプログラム可能と判定されるまで、または関連する初期値が所定の最大電圧まで増加されるまで、(c)〜(d)を繰り返すステップと、
(f)ページの開始プログラミング電圧を導き出すため、収集統計からサンプルの平均開始プログラミング電圧を計算するステップと、
を含む方法。 - 請求項1記載の方法において、
サンプルは、メモリアレイ内の複数のブロックから採ったより大きいサンプルの一部であり、
収集統計は、複数のブロックのプログラム可能なページに関連する蓄積された初期値を含む方法。 - 請求項1記載の方法において、
関連する初期値の所定のステップの増加は、通常プログラミング操作中にメモリに印加される類似するプログラミング電圧のステップに相応する方法。 - 請求項2記載の方法において、
関連する初期値の所定のステップの増加は、通常プログラミング操作中にメモリに印加される類似するプログラミング電圧のステップに相応する方法。 - 請求項1記載の方法において、
関連するプログラミング電圧の階段波形の所定のステップ数は、15以下である方法。 - 請求項2記載の方法において、
関連するプログラミング電圧の階段波形の所定のステップ数は、15以下である方法。 - 請求項1記載の方法において、
所定の最大電圧は、初期値に整数ステップ数の階段波形電圧を加えたものである方法。 - 請求項2記載の方法において、
所定の最大電圧は、初期値に整数ステップ数の階段波形電圧を加えたものである方法。 - 請求項7記載の方法において、
整数ステップ数は、40を上回る方法。 - 請求項8記載の方法において、
整数ステップ数は、40を上回る方法。 - 請求項1記載の方法において、
前記収集統計の一部として関連する初期値を蓄積することは、ページがプログラム−ベリファイ済みとなるまでに初期値が増加したステップ数を蓄積するステップを含み、
前記サンプルの平均開始プログラミング電圧を計算するステップは、サンプルの増加ステップ数の平均と所定の電圧ステップとの積による方法。 - 請求項2記載の方法において、
前記収集統計の一部として関連する初期値を蓄積することは、ページがプログラム−ベリファイ済みとなるまでに初期値が増加したステップ数を蓄積するステップを含み、
前記サンプルの平均開始プログラミング電圧を計算するステップは、サンプルの増加ステップ数の平均と所定の電圧ステップとの積による方法。 - 請求項1記載の方法において、
(g)開始電圧を有する階段波形プログラミング電圧によりページに対して初期プログラミングを実行するステップと、
(h)階段波形のステップ間に目標パターンがページにプログラムされたか否かをベリファイするステップと、
(i)ページがプログラム−ベリファイ済みとなるときの階段波形の最終電圧を得るステップと、
(j)最終電圧の線形スケーリングにより関連する開始プログラミング電圧を推定するステップと、をさらに含み、
(g)〜(j)は(a)〜(f)に先立ち実行される方法。 - 請求項2記載の方法において、
(g)開始電圧を有する階段波形プログラミング電圧によりページに対して初期プログラミングを実行するステップと、
(h)階段波形のステップ間に目標パターンがページにプログラムされたか否かをベリファイするステップと、
(i)ページがプログラム−ベリファイ済みとなるときの階段波形の最終電圧を得るステップと、
(j)最終電圧の線形スケーリングにより関連する開始プログラミング電圧を推定するステップと、をさらに含み、
(g)〜(j)は(a)〜(f)に先立ち実行される方法。 - 請求項2記載の方法において、
各ブロックの幾何学的に類似する場所に位置するページを各ブロックから選択することにより1セットのサンプルを形成するステップと、
前記セットの各サンプルからプログラミング電圧の統計推定を得るステップと、をさらに含み、
前記サンプルの平均開始プログラミング電圧を計算するステップは、セットの中で最小統計推定を選択することによる方法。 - 請求項1〜15のいずれか記載の方法において、
個々のメモリセルは、1ビットのデータを各々蓄積する方法。 - 請求項1〜15のいずれか記載の方法において、
個々のメモリセルは、2ビット以上のデータを各々蓄積する方法。 - 不揮発性メモリであって、
消去可能なブロックの形に構成され、一斉に消去可能なメモリセルにアクセスするために1ブロックのワード線を各消去可能なブロックに含み、かつ一斉にプログラム可能な1ページ以上のメモリセルを各ワード線に含むメモリセルアレイと、
ブロックの中で特定のページを代表するページの指定サンプルと、
サンプルの各ページをプログラムするため、関連する初期値と所定のステップ数とにより階段波形を有する関連するプログラミング電圧と、
特定のページの関連する初期値を判定する内蔵セルフテストモジュールであって、
(a)ページサンプルを含むブロックを消去するステップと、
(b)サンプル中の全ページにつき、関連するプログラミング電圧を関連する初期値と併せて使用してページが目標パターンまでプログラムされるか否かを判定し、プログラムされるならば、収集統計の一部として関連する初期値を蓄積した後にページをさらなる処理から除外し、さもなくば関連する初期値を所定のステップにより増加させるステップと、
(c)ページサンプルの各々がプログラム−ベリファイ済みとなるまで、または所定の最大電圧まで増加した関連プログラミング電圧によりプログラムされるまで、(a)〜(b)を繰り返すステップと、
(d)サンプルの平均初期値を計算するため、またサンプルの平均初期値に基づきページの開始プログラミング電圧を導き出すため、収集統計を提供するステップと、を含むメモリ操作を提供する内蔵セルフテストモジュールと、
を備える不揮発性メモリ。 - 請求項18記載の不揮発性メモリにおいて、
関連する初期値の所定のステップ増加は、通常プログラミング操作中にメモリに印加される類似するプログラミング電圧のステップに相応する不揮発性メモリ。 - 請求項18記載の不揮発性メモリにおいて、
関連するプログラミング電圧の階段波形の所定のステップ数は、15以下である不揮発性メモリ。 - 請求項18記載の不揮発性メモリにおいて、
所定の最大電圧は、初期値に整数ステップ数の階段波形電圧を加えたものである不揮発性メモリ。 - 請求項21記載の不揮発性メモリにおいて、
整数ステップ数は、40を上回る不揮発性メモリ。 - 請求項18記載の不揮発性メモリにおいて、
前記メモリ操作を提供するモジュールは、
(e)開始電圧を有する階段波形プログラミング電圧によりページに対して初期プログラミングを実行するステップと、
(f)階段波形のステップ間に目標パターンがページにプログラムされたか否かをベリファイするステップと、
(g)ページがプログラム−ベリファイ済みとなるときの階段波形の最終電圧を得るステップと、
(h)最終電圧の線形スケーリングにより関連する開始プログラミング電圧を推定するステップと、をさらに含み、
(e)〜(h)は(a)〜(d)に先立ち実行される不揮発性メモリ。 - 請求項18記載の不揮発性メモリにおいて、
収集統計は、前記不揮発性メモリと通信する外部テスタによって処理される不揮発性メモリ。 - 請求項19記載の不揮発性メモリにおいて、
収集統計は、前記不揮発性メモリと通信する外部テスタによって処理される不揮発性メモリ。 - 請求項20記載の不揮発性メモリにおいて、
収集統計は、前記不揮発性メモリと通信する外部テスタによって処理される不揮発性メモリ。 - 請求項21記載の不揮発性メモリにおいて、
収集統計は、前記不揮発性メモリと通信する外部テスタによって処理される不揮発性メモリ。 - 請求項22記載の不揮発性メモリにおいて、
収集統計は、前記不揮発性メモリと通信する外部テスタによって処理される不揮発性メモリ。 - 請求項23記載の不揮発性メモリにおいて、
収集統計は、前記不揮発性メモリと通信する外部テスタによって処理される不揮発性メモリ。 - 請求項18記載の不揮発性メモリにおいて、
収集統計は、前記内蔵セルフテストモジュールによって処理される不揮発性メモリ。 - 請求項19記載の不揮発性メモリにおいて、
収集統計は、前記内蔵セルフテストモジュールによって処理される不揮発性メモリ。 - 請求項20記載の不揮発性メモリにおいて、
収集統計は、前記内蔵セルフテストモジュールによって処理される不揮発性メモリ。 - 請求項21記載の不揮発性メモリにおいて、
収集統計は、前記内蔵セルフテストモジュールによって処理される不揮発性メモリ。 - 請求項22記載の不揮発性メモリにおいて、
収集統計は、前記内蔵セルフテストモジュールによって処理される不揮発性メモリ。 - 請求項23記載の不揮発性メモリにおいて、
収集統計は、前記内蔵セルフテストモジュールによって処理される不揮発性メモリ。 - 請求項18〜35のいずれか記載の不揮発性メモリにおいて、
個々のメモリセルは、1ビットのデータを各々蓄積する不揮発性メモリ。 - 請求項18〜35のいずれか記載の不揮発性メモリにおいて、
個々のメモリセルは、2ビット以上のデータを各々蓄積する不揮発性メモリ。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/531,217 US7606091B2 (en) | 2006-09-12 | 2006-09-12 | Method for non-volatile memory with reduced erase/write cycling during trimming of initial programming voltage |
US11/531,223 US7606077B2 (en) | 2006-09-12 | 2006-09-12 | Non-volatile memory with reduced erase/write cycling during trimming of initial programming voltage |
US11/531,223 | 2006-09-12 | ||
US11/531,217 | 2006-09-12 | ||
PCT/US2007/077295 WO2008033679A2 (en) | 2006-09-12 | 2007-08-30 | Non-volatile memory and method for reduced erase/write cycling during trimming of initial programming voltage |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2010503945A JP2010503945A (ja) | 2010-02-04 |
JP2010503945A5 JP2010503945A5 (ja) | 2010-10-14 |
JP4950296B2 true JP4950296B2 (ja) | 2012-06-13 |
Family
ID=39184456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009528383A Active JP4950296B2 (ja) | 2006-09-12 | 2007-08-30 | 初期プログラミング電圧のトリミング中に消去/書き込みサイクルを減らす不揮発性メモリおよび方法 |
Country Status (6)
Country | Link |
---|---|
EP (1) | EP2062265B1 (ja) |
JP (1) | JP4950296B2 (ja) |
KR (1) | KR101402071B1 (ja) |
AT (1) | ATE511693T1 (ja) |
TW (1) | TWI354993B (ja) |
WO (1) | WO2008033679A2 (ja) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7606091B2 (en) | 2006-09-12 | 2009-10-20 | Sandisk Corporation | Method for non-volatile memory with reduced erase/write cycling during trimming of initial programming voltage |
US7453731B2 (en) | 2006-09-12 | 2008-11-18 | Sandisk Corporation | Method for non-volatile memory with linear estimation of initial programming voltage |
US7606077B2 (en) | 2006-09-12 | 2009-10-20 | Sandisk Corporation | Non-volatile memory with reduced erase/write cycling during trimming of initial programming voltage |
WO2008033693A2 (en) * | 2006-09-12 | 2008-03-20 | Sandisk Corporation | Non-volatile memory and method for linear estimation of initial programming voltage |
US7599223B2 (en) | 2006-09-12 | 2009-10-06 | Sandisk Corporation | Non-volatile memory with linear estimation of initial programming voltage |
WO2008083131A2 (en) * | 2006-12-27 | 2008-07-10 | Sandisk Corporation | Method for programming with initial programming voltage based on trial |
US7551482B2 (en) | 2006-12-27 | 2009-06-23 | Sandisk Corporation | Method for programming with initial programming voltage based on trial |
US7570520B2 (en) | 2006-12-27 | 2009-08-04 | Sandisk Corporation | Non-volatile storage system with initial programming voltage based on trial |
JP5032290B2 (ja) * | 2007-12-14 | 2012-09-26 | 株式会社東芝 | 不揮発性半導体記憶装置 |
KR100960479B1 (ko) * | 2007-12-24 | 2010-06-01 | 주식회사 하이닉스반도체 | 플래시 메모리 장치 및 동작 방법 |
KR101335177B1 (ko) * | 2011-09-26 | 2013-11-29 | 서울시립대학교 산학협력단 | 비휘발성 메모리 저장장치에서 워크로드와 데이터 재사용 시간을 고려한 선택적 트림 방법 |
US8724388B2 (en) * | 2012-04-02 | 2014-05-13 | Spansion Llc | Adaptively programming or erasing flash memory blocks |
TWI498905B (zh) * | 2013-12-03 | 2015-09-01 | Winbond Electronics Corp | 非揮發性記憶體部份抹除方法 |
TWI701677B (zh) * | 2019-03-20 | 2020-08-11 | 大陸商合肥沛睿微電子股份有限公司 | 固態硬碟裝置與相關的資料寫入方法 |
TWI690936B (zh) * | 2019-03-20 | 2020-04-11 | 大陸商合肥沛睿微電子股份有限公司 | 固態硬碟裝置與相關的固態硬碟控制電路 |
CN111897682A (zh) * | 2019-05-05 | 2020-11-06 | 北京兆易创新科技股份有限公司 | 一种测试结果记录方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004046985A (ja) * | 2002-07-12 | 2004-02-12 | Toshiba Corp | 不揮発性半導体メモリ及びそのテスト方法 |
JP2005196931A (ja) * | 2003-12-30 | 2005-07-21 | Samsung Electronics Co Ltd | 不揮発性半導体メモリ装置及びそのプログラム方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR0185611B1 (ko) * | 1995-12-11 | 1999-04-15 | 김광호 | 불휘발성 반도체 메모리장치의 고전압 레벨 최적화 회로 및 그 방법 |
US6768165B1 (en) | 1997-08-01 | 2004-07-27 | Saifun Semiconductors Ltd. | Two bit non-volatile electrically erasable and programmable semiconductor memory cell utilizing asymmetrical charge trapping |
US6304487B1 (en) * | 2000-02-28 | 2001-10-16 | Advanced Micro Devices, Inc. | Register driven means to control programming voltages |
US6246611B1 (en) | 2000-02-28 | 2001-06-12 | Advanced Micro Devices, Inc. | System for erasing a memory cell |
US6928001B2 (en) * | 2000-12-07 | 2005-08-09 | Saifun Semiconductors Ltd. | Programming and erasing methods for a non-volatile memory cell |
US7020026B2 (en) | 2004-05-05 | 2006-03-28 | Sandisk Corporation | Bitline governed approach for program control of non-volatile memory |
-
2007
- 2007-08-30 EP EP07814597A patent/EP2062265B1/en not_active Not-in-force
- 2007-08-30 JP JP2009528383A patent/JP4950296B2/ja active Active
- 2007-08-30 AT AT07814597T patent/ATE511693T1/de not_active IP Right Cessation
- 2007-08-30 KR KR1020097005155A patent/KR101402071B1/ko active IP Right Grant
- 2007-08-30 WO PCT/US2007/077295 patent/WO2008033679A2/en active Application Filing
- 2007-09-10 TW TW096133726A patent/TWI354993B/zh not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004046985A (ja) * | 2002-07-12 | 2004-02-12 | Toshiba Corp | 不揮発性半導体メモリ及びそのテスト方法 |
JP2005196931A (ja) * | 2003-12-30 | 2005-07-21 | Samsung Electronics Co Ltd | 不揮発性半導体メモリ装置及びそのプログラム方法 |
Also Published As
Publication number | Publication date |
---|---|
KR101402071B1 (ko) | 2014-06-27 |
EP2062265A2 (en) | 2009-05-27 |
ATE511693T1 (de) | 2011-06-15 |
TW200834591A (en) | 2008-08-16 |
WO2008033679A3 (en) | 2008-07-24 |
EP2062265B1 (en) | 2011-06-01 |
JP2010503945A (ja) | 2010-02-04 |
TWI354993B (en) | 2011-12-21 |
KR20090064384A (ko) | 2009-06-18 |
WO2008033679A2 (en) | 2008-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4950296B2 (ja) | 初期プログラミング電圧のトリミング中に消去/書き込みサイクルを減らす不揮発性メモリおよび方法 | |
US7599223B2 (en) | Non-volatile memory with linear estimation of initial programming voltage | |
US7453731B2 (en) | Method for non-volatile memory with linear estimation of initial programming voltage | |
JP4819951B2 (ja) | 初期プログラミング電圧の線形推定のための不揮発性メモリおよび方法 | |
US7606091B2 (en) | Method for non-volatile memory with reduced erase/write cycling during trimming of initial programming voltage | |
US7606077B2 (en) | Non-volatile memory with reduced erase/write cycling during trimming of initial programming voltage | |
EP1751773B1 (en) | Erase verification for non-volatile memory by testing the conduction of the memory elements in a first and a second direction | |
KR101323843B1 (ko) | 비-휘발성 메모리 셀들의 행동에 근거한 프로그래밍 방법 | |
US9269446B1 (en) | Methods to improve programming of slow cells | |
US9564219B2 (en) | Current based detection and recording of memory hole-interconnect spacing defects | |
US9442842B2 (en) | Memory system performance configuration |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100830 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100830 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20100830 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20100916 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101102 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20110120 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20110127 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110427 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110712 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20111007 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20111017 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120111 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120214 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120308 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150316 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4950296 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150316 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |