JP2001057091A - ゲート電圧の制御よるマルチレベル不揮発性メモリのプログラミング方法 - Google Patents

ゲート電圧の制御よるマルチレベル不揮発性メモリのプログラミング方法

Info

Publication number
JP2001057091A
JP2001057091A JP2000236205A JP2000236205A JP2001057091A JP 2001057091 A JP2001057091 A JP 2001057091A JP 2000236205 A JP2000236205 A JP 2000236205A JP 2000236205 A JP2000236205 A JP 2000236205A JP 2001057091 A JP2001057091 A JP 2001057091A
Authority
JP
Japan
Prior art keywords
programming
level
pulses
programmed
cells
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.)
Granted
Application number
JP2000236205A
Other languages
English (en)
Other versions
JP4469475B2 (ja
Inventor
Guido Torelli
グイード・トレッリ
Alberto Modelli
アルベルト・モデッリ
Alessandro Manstretta
アレッサンドロ・マンストレッタ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
STMicroelectronics SRL
Original Assignee
STMicroelectronics SRL
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by STMicroelectronics SRL filed Critical STMicroelectronics SRL
Publication of JP2001057091A publication Critical patent/JP2001057091A/ja
Application granted granted Critical
Publication of JP4469475B2 publication Critical patent/JP4469475B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits

Abstract

(57)【要約】 【課題】 ゲート電圧の制御によりプログラミング操作
の実行に必要な時間を最少化し得る不揮発性メモリのプ
ログラミング方法を提供する。 【解決手段】 プログラミング時に前プログラミングパ
ルスに対し値を増加した閾値電圧がプログラムされる各
セルのゲート端子に加えられ、プログラムすべきセルの
閾値電圧の増加は印加したゲート電圧増(ΔVGP)分に
等しくなる。一の閾値レベルから次の閾値レベルに移す
ために各レベルに関連する閾値電圧の変動間隔を小さく
保持し全体プログラミング時間を低減するために、プロ
グラムすべき各セルには直ちにプログラムすべき電圧レ
ベル以下になるまで無検証で複数の連続パルスが供給さ
れ(107〜109)、そして検証工程(110)が実
行され、続いてプログラムすべきセルが所望の閾値に達
するまでプログラミング工程及び検証工程(112,1
10,117,118)が続いて行われる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ゲート電圧の制御
よるマルチレベル不揮発性メモリのプログラミング方法
に関するものである。本発明は特に、セルの閾値電圧の
変更、すなわちフローティングゲート領域に記憶された
電荷量の変更によりセルプログラミングが実行されるフ
ローティングゲートセルからなる不揮発性メモリ(EP
ROM、EEPROM、フラッシュメモリ)に関するも
のである。しかしながら、本発明は、異なる形式のメモ
リセル(例えばMNOS、すなわち金属−窒化物−酸化
物−半導体技術セル)にも適用することができる。
【0002】
【従来の技術】一層良く理解するために、図1において
ドレイン端子D、ソース端子S、制御ゲート端子CG
(以下ゲート端子と記載する)及びボディ端子Bを備え
た典型的なフローティングゲートメモリセルとの電気的
な関係を図で示す。図1にはさらに、フローティングゲ
ート領域FGを示している。図面においては異なるメモ
リセルの記号すなわちいわゆる“分割ゲータ”を示して
いる。
【0003】一般に、データ記憶密度を高め、従って物
理的メモリアレイサイズを減少するために、マルチレベ
ルプログラミング技術が研究されてきており、各メモリ
セルの閾値電圧は、m個の所定のレベルのうち一のレベ
ルにプログラミングすることができる。m=2nの場
合、メモリセルはn=log2mに等しい多数の情報ビ
ットを記憶でき、二つのレベルだけ(“高い”レベル及
び“低い”レベル)をプログラミングでき、その結果単
位セル当たり単一ビット(m=2及びその結果n=1)
を記憶する従来の2レベルメモリに対し密度において明
らかに有利である。
【0004】プログラム可能な閾値レベルは、読取り時
にエラーなしで認識できるようにするために、一定の相
互距離に配置されなければならない。さらに、閾値電圧
は正確に所望の値ではプログラミングされず、4−レベ
ルプログラム可能なセルに関して図2aと図2bとの比
較によって示されるように、各レベルでは実際にある一
定の閾値電圧間隔に相応している。図2aは理想的な例
を示し、そこでは4つの閾値電圧レベルの各々の正確な
プログラミングが得られると考えられ、一方、図2bは
より現実的な場合を示し、各論理値はある一定の閾値電
圧間隔に相応している。図2aはまた、異なる閾値電圧
値とプログラムされたレベル(それぞれ0,1,2,
3)との間の限定しない例示として割当てられた対応関
係を示している。
【0005】各プログラム可能なレベルに相応する閾値
電圧の間隔は十分に減少されなければならず、それによ
りセルに記憶されたデータを安全に維持し認識すること
を保証するような相互距離に配置することができ、しか
も過度に広いグローバルな間隔を用いることなく全て所
望の論理レベルを割当てることができる。事実、実際の
理由と信頼性の理由とで決められたこの全体的な間隔に
ついて下方限界と上方限界との両方が存在する。種々の
記憶レベルに相応する閾値電圧間隔間の最適距離を計算
するために、読取りプログラミング回路の不正確さ及び
環境条件の変動、記憶電荷の縮退時間、並びに読取り及
びプログラミングノイズのような影響は、当業者に知ら
れるように、望ましくない記憶電荷変動をもたらすので
考慮されなければならない。
【0006】適切なセルプログラミングを得るために、
一般にマルチレベル・セル・プログラミングは“プログ
ラム及び検証(ベリファイ)”として定義される技術に
より実行される。この技術により、プログラミング操作
は連続したプログラミングパルスにより実行され、そし
て各プログラミングパルスを加えた後、プログラムした
セル閾値電圧が、図3に概略的に示されるように、それ
ぞれの所望値に達したかどうかが検証され、あるセルが
所望の閾値レベルに到達すると、そのセルはプログラミ
ングパルスをさらに受けることはない。検証は、並列に
プログラムされる一群のセル(一以上のワード)におけ
る全てのセルに対して同時に実行され、そして任意の所
望のプログラミングレベルについて、それはセル閾値電
圧を予め設定した基準値Vref,iと直接又は間接に比較
することにある。プログラミング及び検証操作は、グル
ープ内の全てのセルがそれぞれ所望のレベルでプログラ
ムされるまで続く。
【0007】一定時間長の一組のプログラミングパルス
が不揮発性メモリセルに加えられると、ドレイン端子電
圧は一定に保持され、ゲート端子電圧は各パルスで一定
の値ΔVGP(ステップゲート電圧)分増大され、最初の
遷移ステップの後(一般には最初のパルス中にゲート端
子に適切な電圧が供給される場合には数パルスの後)、
セル閾値電圧は各パルスについてΔVGPに等しいΔVTH
分増加することが立証されてきた(例えば、文献Proced
ings of Internal Conference on ElectronicCircuits
and Systems Rhodes, Greece, pp.1003-1008 中のC. Ca
lligaro, A. Manstretta, A. Modelli, G. Torelli 著
“Technological and design constraints for multile
vel flash memories”参照)。従って、最初の遷移ステ
ップの後、関係式、 ΔVTH=ΔVGP (1) が得られる。
【0008】この関係式は、プログラミングパルスがプ
ロセス及びセルの形式に依存しかつ一般的なセルの場合
に数百ns〜1μsの範囲に含まれ得る最小値より大き
な時間長をもつ場合に有効である。
【0009】関係式(1)は任意のセルについて有効で
あるが、最後のプログラミングパルス中にセルゲート端
子に印加された電圧値とそのようなパルスの終了時にセ
ルの到達した閾値電圧値ΔVTHとの関係は特定のセルの
場合には先駆的には決めることができない。言い換えれ
ば、関係式(1)は、絶対値ではなく各プログラミング
パルスにおける閾値電圧増加を示している。このような
絶対値は事実、製造プロセスに関連した種々のファクタ
に依存する(例えばホットチャンネル電子注入によるプ
ログラム可能なセルの場合、第1に有効セルチャンネル
長さに依存する)。
【0010】これは、図4に概略的に示され、各プログ
ラミングパルスNを印加した後の閾値電圧を座標に沿っ
て表し(横座標に沿って示し)、そしてそれによって得
られた点を結ぶことによって得られた三つの異なるセル
についての閾値電圧VTHの反応を示す(特に曲線A,
B,Cは、それぞれチャネル長が増大したセルに関す
る)。最初の初期ステップの後、認められ得るように、
閾値電圧は三本の相互に平行な直線に沿って各プログラ
ミングパルスにおいて増加ΔVGPで線形的に増加する。
実際には、上記関係式(1)から三本の直線のうちのど
れにおいて特定のセルの閾値電圧がプログラミング中に
動くかを知ることはできず、その結果、各パルスの後に
到達した絶対閾値電圧値VTHを計算することはできな
い。
【0011】このような原理をプログラミング及び検証
技法に適用することにより、メモリセルは、一定の長さ
と、一定のドレイン電圧と、二つの後続のパルス間のΔ
GPに等しく一定に増加する漸増ゲート電圧とを有する
プログラミングパルスを印加することによりプログラム
される。その結果、図5に示すようなゲート端子電圧が
得られる。理想的条件のもとでは、この技法は、プログ
ラムしたレベルに相応する間隔の幅(以下プログラムレ
ベル幅と記載する)はΔVGPに等しい。実際、プログラ
ミング中に所望のプログラミングレベル(i番目のレベ
ル)に相応する閾値電圧に到達し、そして検証操作中の
比較基準レベルがVref,iに等しいパルスの前のi−1
番目のプログラミングパルスはVref.iより低くしかも
これの次の閾値電圧を決め、i番目のプログラミングパ
ルスが供給されると、閾値電圧は前の値にΔVGPを加え
た値に等しくなり、Vref,i+ΔVGPより大きくない。
実際に、レベルVTH,iにおけるプログラムセル対する閾
値電圧は、0とΔVGPとの間に含まれる量だけ基準値V
ref,iより大きい。
【0012】その結果、例えば検証中の読取り回路の不
正確さのようなプログラムレベルを広げさせる他の影響
があるが、一般に、セルゲート端子に加えられるプログ
ラミング電圧の増分ΔVGPの減少はプログラミングレベ
ルの幅の減少をもたらし、上記のように予め決められた
間隔内でレベル自体を良好に割当てることができる。
【0013】
【発明が解決しようとする課題】他方、増分ΔVGPの減
少は、予定の初期値から始まって予め設定した最終閾値
電圧に達するのに必要なプログラミング及び検証パルス
の数を対応させて増加する必要がある。
【0014】プログラミングパルス及び検証パルスの数
の増加は、予め設定した閾値レベルでメモリセルをプロ
グラムするのに要する全体時間を増大させる。事実、完
全なプログラミング工程及び検証工程に必要な時間は、
上記の短時間プログラミングパルス(1μs以下)の全
ての場合に単一のプログラミングパルスに対する時間よ
り大きい。事実、各プログラミングパルスと次の検証操
作工程との間において、プログラミング回路を非活性化
し、集積回路内の読取り回路を付勢し、そしてある一定
の長さの時間を必要とする精度の十分な所望値に到達す
るようにセルに加えるべき読取り電圧を待つ必要があ
る。さらに、バイアス電圧に必要な精度は隣接プログラ
ムレベルに相応する閾値電圧間の距離の減少と共に増加
する(セル電流は読取り時及び従って検証操作時に、ド
レイン及びゲート端子に加えられる電圧の値に正確に依
存する)。
【0015】同様に、検証工程の後にプログラミング工
程が続く場合、読取り回路を非活性化し、そしてさらに
時間の損失を伴ってプログラミング回路を付勢する必要
がある。従って完全なプログラミング工程及び検証工程
の時間はTGP(1+η)に等しく、ここでTGPはプログ
ラミングパルスの長さであり、ηは0より大きく、通常
1台であり得る。
【0016】従って、特殊な要求に関連して、プログラ
ムレベルの正確さ(増分ΔVGPが小さく、従って完全な
プログラミング及び検証工程の数が多い)と全体操作速
度との間の妥協の選択を行う必要がある。
【0017】従って、本発明の目的は、同じ数のプログ
ラミングパルスで完全なプログラミング操作を実行する
のに必要な全体時間を最少化し、正確さと全体プログラ
ミング時間との妥協を改善できるプログラミング方法を
提供することにある。
【0018】
【課題を解決するための手段】本発明によれば、一組の
プログラミングパルスを印加する工程を備え、各プログ
ラミングパルスにおいてゲート端子に前プログラミング
パルスより値の大きいゲート電圧を印加し、検証工程に
追従する検証なしで複数の連続したプログラミングパル
スを周期的に印加することを特徴とする不揮発性メモリ
セルのプログラミング方法が提供される。
【0019】
【発明の実施の形態】本発明をさらに良く理解するため
に、以下単に本発明を限定しない例として、添付図面を
参照して本発明の幾つかの好ましい実施の形態について
説明する。
【0020】全体のプログラミング時間を減少しそして
十分に正確なプログラムレベルを得る課題を解決するた
めに、二つの続くレベルの公称値間の間隔は多数の間隔
に分割され、これらの間隔の幅は、プログラミング中に
印加されたゲート電圧増加に、この増加より小さい幅の
間隔を加えたものに等しい。レベル間の間隔が一定であ
るか又は加えられたゲート電圧増分ΔVGPの正確な整数
倍であることは強制的ではない。そしてプログラミング
は、中間で検証工程を実行することなしに、多数の予め
設定した増分に等しい多数のプログラミングパルスを印
加することにより実施され、また到達した閾値電圧の検
証は、おそらく、到達した閾値電圧がプログラミングさ
れるセルの少なくも一つに対して考察したレベルに対す
る所望の最少閾値電圧に等しいか又はそれより僅かに高
い時に、多数のプログラミング工程が実行された後にの
み実行される。慎重には、検証操作は、提供されたプロ
グラミングレベルに相応する達成されるべき所望の閾値
電圧の直前のものであると考えられるプログラミングパ
ルスの後に実施することができる。
【0021】実際には、プログラムレベル形態及び増分
値ΔVGPは、ΔVGPの増分によるレベルの拡張はレベル
の公称値間の距離より非常に小さい。例えば、一つのプ
ログラミングレベルから別のプログラミングレベルへ移
るのに、7つのプログラミング工程が実行される。この
ような形態は、既存の不正確な条件を考慮するように隣
接したプログラム可能なレベル間に適切な分離ギャップ
を割当てるために高いプログラムレベル精度が望まれ
る、単位セル当たり複数のプログラム可能なレベルをも
つメモリの場合に有利に使用される。
【0022】このような形態は図6に示され、続くレベ
ルの公称値間の距離はΔVDISTで表され、レベルの幅は
ΔVGPで表される。図6において、容易に理解するため
(しかし本発明を限定するようにではなく)、異なるレ
ベルの公称値間には常に同じ距離ΔVDISTが存在する。
ΔVGPの関数としての項ΔVDISTは、 ΔVDIST=CΔVGP=(N+α)ΔVGP (2) ここで、C=ΔVDIST/ΔVGP、NはCを打切ることに
より得られた整数値であり、またαは0≦α<1の結果
としての十進値に等しく、続くレベル間の距離がプログ
ラミング工程の正確な倍数である場合にのみ、0に等し
い。例えば、ΔV DIST=1VでΔVGP=0.14Vであ
る場合には、α=0.02である。
【0023】レベルiからレベルi+1へメモリセルを
プログラムするために、式(2)に従ってΔVTHとΔV
GPとの間の直線関係が有効である特性領域にすでにある
と仮定すると、i番目のレベルに関する前に到達した有
効電圧がVm、1+αΔVGPより大きいか小さいかに関
連するN個又はN+1個のプログラミングパルスを加え
る必要があり、Vm,1はi番目のレベルの最大値(すな
わち理想的に基準レベル値Vref,i)である。特に、上
記の考察した例では、レベル“1”の到達閾値電圧が公
称値1Vに等しいとすると、Vm,1=1V、Vm,2=2
V、Vm,3=3Vである場合、レベル“1”からレベル
“2”へ移るのに、N+1=8個のパルスが必要であ
り、その後、有効到達閾値電圧は2.12Vとなり、ま
たレベル“2”のこの値からレベル“3”へ移るのには
7個のパルスが必要であり、そして到達する有効閾値電
圧は3.1Vに等しくなる。
【0024】その結果、レベルiからレベルi+1への
セルの閾値を得るために、各パルスの後いかなる検証も
実施することなしに、増分ΔVGPで増大するゲート電圧
によりN−1個のプログラミングパルスが加えられる
が、これではセルがまだレベルi+1番目に達し得てい
ない。そこでゲート電圧増分ΔVGPをもつ別のパルス
(N番目)が加えられ、検証操作が実行される。閾値電
圧がまだ到達してない場合には、厳格には必要でないに
しても閾値電圧がすでにレベルi+1番目に到達してな
ければならないので、設けられた増加をもってさらに増
加したゲート電圧をもつさらに別のパルス(N+1番
目)が加えられ、そして結果的に、別の検証工程が続い
て行われる。
【0025】このような構成は図7に例として示され、
Nが4であり、検証工程が直ちに正の結果をもたらすも
のとして、本発明によるセルのプログラミング中のゲー
ト電圧が示されている。図7は図5と比較されなければ
ならず、本発明によりいかに同じ全体時間を有するより
多くの数のプログラミングパルスを加えることができる
かが示されている。
【0026】このようにして、各プログラミング工程に
ついて検証工程を実行する公知の解決方法に対して、高
い時間的利点が得られる。事実、一つのプログラム値か
ら次のプログラム値へ移るのにN個のプログラミング工
程が要求される場合には、公知の解決法ではN(1+
η)TGPに等しい時間が必要であるが、本発明の方法で
は(N+η)TGPに等しい時間が必要であり、(N−
1)ηTGPに等しい時間の節約が得られる。代わりにN
+1個のプログラミング工程が必要な場合には、必要な
時間は各レベルについての最終プログラミング工程に続
いて検証工程が行われるかどうかに関連して(N+1+
2η)TGP又は(N+1+η)TGPに等しく、それぞれ
(N−1)ηTGP又はNηTGPに等しい時間節約が得ら
れる。
【0027】セル閾値電圧がレベルiからレベルi+j
(j>1)へ移らなければならない場合、単一の中間レ
ベルに達する毎に検証することによりレベルi+jに達
するまで次のレベルi+1、i+2、・・・についてセル
をプログラムし、又はZ−1(Zは数j(N+α)を打
切ることにより得られた整数である)個のパルスを加
え、そして完全なプログラミング及び検証工程を実行す
ることができ、またセルがまだ所望のレベルに達してい
ないと、(前に説明してきたものと同様に最終検証を伴
って又は伴わずに)最後のプログラミングパルスを加え
ることができる。
【0028】消去レベルから始まって最初のプログラム
レベル(レベル1)に達するためには、関係式(1)が
有効である閾値が未知であり、すなわち図4に示す直線
のうちどれにおいて伴うセルが動いているのかが未知で
あるので、先駆的に未知である多数のプログラミングを
セルに供給する必要がある。従って、レベル1に相応す
る閾値電圧に達するまで各プログラミング工程後に検証
工程を実行する必要があり、その後、上記の解決方法に
従うことができる(線形関係式(1)が有効である領域
においてセルがすでに動作している時にレベル11に達
するようにプログラミング条件が決められている場
合)。
【0029】最小閾値状態(すなわち消去状態)から始
めて一群のセル(例えば、同じアレイ線に属する8又は
16)において並列にプログラミングが実行される場合
には、最小閾値レベルから異なるレベルでプログラムさ
れなければならないセルに上記したようにして同時にプ
ログラミングパルスが加えられる。セルが所望のプログ
ラミングレベルに達すると、それ以上のプログラミング
パルスを受けず(そのような中断は、例えばドレイン端
子に接続した関連ビット線がプログラミング電圧でそれ
以上バイアスされない、といった公知の方法で得られ
る)、そしてプログラミングは他のセルについて、提供
されたレベルで全てプログラムされるまで行われる。明
らかに、消去状態になければならないセルにはプログラ
ミングパルスは加えられない。
【0030】同じ線に属するプログラムすべきセルの場
合、これらのセルは良好な物理的な整合レベルを示し、
それにより一般には関係式(1)が有効となる閾値電圧
値は同じであり、上記の方法を適用するのに問題はな
い。
【0031】実際には、セルの少なくとも一つの閾値電
圧が第1のレベルに相応した値に達するまで、プログラ
ムされなければならないセルには、各々検証工程が後に
続く一組のプログラミングパルスが供給される。プログ
ラムすべき全てのセルがレベル“1”に相応する閾値電
圧となるまで、各々検証工程が後に続く多数(A1)の
プログラミングパルスが供給される(A1は先駆的に決
められ得ない)。明らかに、レベル“1”でプログラム
されなければならないセルは、それらの閾値電圧が所望
値に達した後は、プログラミングパルスを受けない。
【0032】その後、1より上のレベルでプログラムさ
れなければならない全てのセルは、検証なしにN−(1
+A1)=N−1−A1個のパルスを受ける(事実、これ
らのパルスの後にレベル2でセルはプログラムされな
い)。そして、少なくとも一つのセルの閾値電圧が第2
のレベルに達するまで各々検証工程が後に続く別のパル
スが供給され、その後、少なくとも第2のレベルでプロ
グラムされるべき全てのセルの閾値電圧が所望の値に達
するまで、検証が後に続く他のA2個のプログラミング
パルスが供給される。
【0033】この手順が繰り返され、レベルi+1に達
するように、N−Ai−1個のプログラミングパルスが
検証なしに各時に加えられ、そして少なくとも一つのセ
ルがレベルi+1番目に達するまで検証を伴う適切な数
のプログラミングパルスが続き、そして少なくともレベ
ルi+1でプログラムすべき全てのセルがこのレベルに
達するまで検証を伴うAi+1個のプログラミングパル
スが続き、そして提供したレベルで全てセルがプログラ
ムされるまで続く。
【0034】このようにして、全てのプログラミングパ
ルスに続いて検証工程が続く解決方法に関し、各レベル
に対してN−1−Ai個の検証工程が節約される。その
結果、全体的に節約時間は以下に等しい。
【0035】プログラムすべき隣接レベルΔVDIST間の
距離が一定でない場合に、その操作は上述したように、
印加すべきパルスの数を提供する式(Ni−Ai−1)に
挿入されるNi値が一定ではなくレベルに従って変化す
るという事実とは明確に異なる。
【0036】本発明によるプログラミング方法につい
て、以下、可能な実施のフローチャートを示す図8によ
り詳細に説明する。以下の説明において、プログラミン
グは電気的にプログラムされる不揮発性メモリにおい
て、通常行われるように最初に消去したグループのセル
において行われると仮定する。
【0037】最初に、検証工程がブロック100で実行
され、そしてプログラムすべきレベルに関連するレベル
カウンタiは、プログラミングパルスに対するパルスカ
ウンタK1と共にゼロに設定される(ブロック10
2)。
【0038】そして、i番目より大きなレベルでプログ
ラムすべきセルが存在するかどうか検証される(条件
“ANY>i”ブロック103)。結果がノーである場
合には、プログラミング手順は終了し、結果がイエスで
ある(ブロック103からの出力がイエスである)場合
には、レベルカウンタiはブロック104で増大され、
レベルi−1からレベルiへセルをプログラムするのに
理論的に必要であるプログラミングパルスの数Niはブ
ロック105で決められる。好ましくは、記憶テーブル
からNiを読取ることにより検出が行なわれ、上記で説
明したように各プログラミングパルスの後に検証操作を
行うためにi=1の場合、Niは1に等しい。
【0039】その後、ブロック106においてBi(連
続して加えられることになるパルスの数)はNiに等し
く設定される。
【0040】そして、ブロック120において、プログ
ラムされてはならない一又は複数のセルにプログラミン
グパルスを加えることは停止され、ブロック107にお
いてパルスカウンタkは増大され、ブロック108にお
いて、上記のようにして、ゲート電圧VGPに対し第1の
プログラミングパルス(j=1)での始動値から始まり
そして前工程に対しΔVGP分だけ各工程で増大するプロ
グラミングパルスが加えられ、そしてブロック109で
Ni個のプログラミングパルスがすでに加えられている
かどうかが検証され、ノーの場合、出力はNOであり、
パルスカウンタkは再び増加され、ブロック107に戻
り、そして上記したように処理し、イエスの場合(i=
1の場合に第1のプログラミングパルスが加えられた直
後にブロック109から出力YESが生じる)には、ブ
ロック110で検証工程が実行される。そして、ブロッ
ク111において少なくとも一つのセルの閾値電圧が条
件“ONEi”=1に相応するレベルi番目に達したか
どうかが検証され、ノーの場合にはブロック112にお
いて新しいプログラミングパルスが加えられ、イエスの
場合(ブロック111から出力YESが生じる)には、
ブロック113でパルスカウンタkはリセットされ、そ
してブロック114においてレベル≧iでプログラムす
べき全てのセルの閾値電圧が条件“ALLi”=1の検
証に相応したレベルi番目に相応する値に達したかどう
かが検証される。
【0041】結果がイエスの場合(ブロック114から
出力YESが生じる)には、ブロック103に戻り、プ
ログラムすべき全てのセルのプログラミングが終了され
るかどうかを検証し、結果がノー(出力NO)の場合、
ブロック115において、レベルi番目でプログラムさ
れなければならない一または複数のセルがすでにそのよ
うなレベルに達しているので、一または複数のセルへの
別のプログラミングパルスの印加は停止され、ブロック
116において、パルスカウンタkは増加され、ブロッ
ク117において、プログラミングパルスが加えられ、
ブロック118において、検証工程が実行され、そして
再びレベル≧iでプログラムすべき全てのセルの閾値電
圧がレベルi番目に相応する値に達したかどうかが検証
され、ブロック114に戻る。
【0042】図9には図8のフロー図の変形を示し、プ
ログラムすべきセルの存在しない中間レベルの検証は実
施されない。
【0043】その結果、図8及び図9における等しい工
程は同じ符号で示され、図9において図8における工程
と同じ工程は同じ符号にプライム符号を付して示され
る。
【0044】特に、プログラムすべきレベルのレベルカ
ウンタiが増大されるブロック104の後、ブロック1
05’において、i番目のレベルについて式(2)によ
り得られるパルスの数Ni及び打ち切りαiが検出され
る。そしてブロック130において、Niとαiとを加え
ることによりi番目のレベルについてΔVDIST,IとΔV
GPの間の比に等しい数Ciが計算される。そしてi=1
であるかどうかが検証され、そうである場合(ブロック
131から出力YESが生じる)には、ブロック10
6’において、Ciの整数値に等しい連続して加えられ
べきプログラミングパルスの数Biが計算され、そうで
ない場合(ブロック131から出力NOが生じる)に
は、ブロック132において、幾つかのセルがレベルi
番目でプログラムされなければならないかどうかが検証
され、そうである場合(ブロック132から出力YES
が生じる)には、Biが計算され、ブロック106’に
戻り、そうでない場合(ブロック132から出力NOが
生じる)には、ブロック133において、レベルカウン
タiが増加され、ブロック134において、次のレベル
に関連したNiとαiが検出され、そして前の値に新たに
検出された値Ni、αiを加えたものに等しいCiの新た
な値が計算され、そして再び、i+1番目のレベルで少
なくとも一つのセルがプログラムされなければならない
かどうかが検証され、ブロック132に戻る。
【0045】残りついては、図9のフロー図は図8のフ
ロー図と同様であり、従ってここでは再度説明しない。
【0046】第1のプログラミングレベルの下方端(状
態1)に対して消去セル(状態0)を得るのに必要なパ
ルスの最少数Dが前もつて知られている場合に、さらな
る全体的な時間節約を得ることができる。この数は電気
ウエハソート中に各ダイについて計算され得る。そのよ
うな場合、プログラミングが始まると、検証工程なしの
D個のパルスが、プログラムされなければならないセル
に最初に加えられ、そしてセルの少なくとも一つがレベ
ル“1”に達するまで、検証工程有りのパルスが加えら
れる。そしてプログラミングは前にの述べたように行わ
れる。
【0047】図10には、図8の方法を実施するハード
ウエア回路をブロック図で示す。回路は信号CLOCK
及び信号CLOCKに対して遅延した信号CLOCK’
によってタイミングが取られる。
【0048】プログラミング操作は、信号PR MOD
E(“プログラムモード”)及び信号P&V(“プログ
ラム&検証”)を得る二つのフリップフロップ1,2を
高い状態に設定する、信号CLOCKと同期したプログ
ラムスタートパルス(PR ST)を受けることにより開
始される。
【0049】動作条件のもとで、以下の説明から一層明
瞭になるように、検証工程とプログラミング工程との交
互の設定は、遅延フリップフロップ3の出力スイッチン
グによって保証され、この遅延フリップフロップ3は、
マルチプレクサ4の制御入力Cに供給された信号P&V
が高いレベルにある場合に遅延フリップフロップ3の入
力Dが遅延フリップフロップ3の信号/Q3を受けるの
で、各パルスCLOCKで切替わる。
【0050】プログラミング操作の開始時には、遅延フ
リップフロップ3の信号Q3は、検証工程を実行するた
めに信号PR STによって1に設定される。
【0051】回路が“プログラムモード”にある時に
は、出力Q3における高いレベルは“検証”(信号V
R)を駆動し、一方低いレベルは“プログラム”信号P
RGを駆動する。信号VR又は信号PRGの駆動によ
り、適当な信号が発生され(ブロック5)、それ自体公
知の仕方で検証操作及びプログラミング操作をそれぞれ
実行するようにメモリアレイに供給される。発生装置5
は入力に、上述のように増加の法則により正しい閾値電
圧値を設定するために現在のプログラミングサイクル中
に既に実行されたプログラミング工程の数の値Pに加え
て信号CLOCK’(メモリアレイに供給されるべき信
号をタイミングするのに用いられる)も受ける。全体的
なプログラミング工程の値Pは、新しいプログラミング
操作の開始時に信号PR STによってリセットされる
第1のカウンタ6によって発生される。
【0052】信号P&Vは、プログラミング工程の後、
検証工程を実行すべきかを決定する。実際、信号P&V
が高い値にある時には上述のように、出力Q3は各パル
スCLOCK毎に切替わり、信号VER及び信号PRO
Gを交互に駆動し、逆に、信号P&Vの値が0である時
には、遅延フリップフロップ3の入力Dは出力Q3と一
致し、切替わらない。その結果、回路は“プログラム”
状態に保持される。
【0053】マルチプレクサ4の制御信号は次のように
して発生される。
【0054】図示するように、始動時にフリップフロッ
プ2は設定され、その出力は高い状態にある。検証工程
の後、条件“ALLi”=1が検証される(図8及び図
9のブロック114)。すなわち少なくともレベルi番
目においてプログラムすべき全てのセルがそのようなレ
ベルに達すると、信号ALLiは、フリップフロップ2
をリセットして信号P&Vを低い状態に切り換えるパル
スを備える。
【0055】回路が“プログラム&検証”状態にあり、
そして少なくとも一つのセル(少なくともi番目のレベ
ルでプログラムされなければならないセルのうち)がi
番目のレベルに達したことが判ると、信号“ONEi”
においてパルスが発生され(図8及び図9のブロック1
11に関して説明したように)、ステップカウンタの値
kを記憶している第2のカウンタ7の内容はリセットさ
れる。第2のカウンタ7は各プログラミングパルス毎に
一単位増加され、そしてデジタル比較器8でレジスタ9
からの比較値Bi(連続して加えられるべきプログラミ
ングパルスの数)と比較される。
【0056】デジタル比較器8で等値Bi=kをチェッ
クすると、デジタル比較器8は、フリップフロップ2を
設定するパルスOUTCを出力し、回路を“プログラム
&検証”状態に戻す(P&V=1)。
【0057】第3のカウンタ10は、プログラムしたレ
ベルのを計数し、そして出力にiの値を供給する。第3
のカウンタ10は、信号PR STによってプログラミ
ング操作の開始時に状態1に初期化され、そしてその出
力は論理ブロック11に接続され、この論理ブロック1
1はレジスタ9にiに依存した値Biを供給する。
【0058】値Biのローディングは、第3のカウンタ
10を増加させそしてBiの新しい値を発生させる信号
ALLiのパルスによって信号供給されるように、前の
サイクルの終了時にi番目のレベルに関係するプログラ
ミングサイクルの開始時に実行される。第1のプログラ
ミングサイクル(i=1)において、レジスタ9におけ
るBiのローディングは、信号PR STにより得られ
る。ブロックDELはローディング信号に適当な遅延を
発生する。
【0059】フリップフロップ1は、回路が導通され
(信号POR)そして全体プログラミング操作の終了時
に信号PR ENDが高い状態に切替わる時にリセット
され、回路状態を表す0に信号PR MODEを切替え
させ、それ以上プログラミングは行われない。
【0060】図10の回路においては、メモリセンシン
グネットワークに接続される適宜な回路によって信号O
NEi、ALLiが発生すると仮定される。
【0061】さらに明らかなように、記載し図示してき
た方法においては種々の変更及び変形がなされ得、これ
らの変更及び変形は全て特許請求の範囲で定義された発
明の範囲内である。特に、慎重には連続した組のプログ
ラミングパルスの後の最初の検証工程は、プログラムす
べき一つ又は複数のセルが既に所望の閾値電圧に達して
おり、実際に図8におけるブロック106においてBi
=Ni−1をまた図9におけるブロック106’におい
てBi=INT(Ci−1)を設定すると思われるもの
を処理するプログラミングパルスの後に生じ得る。
【0062】
【発明の効果】本方法の効果は上記より明らかである。
すなわち、本方法により一方では閾値電圧の増加を適当
な値に設定することにより所望のプログラミングを正確
に行うことができ、また他方では少なくとも一つのセル
が所望の閾値レベルに達した時に検証操作を行うので、
全体的なプログラミング時間が過剰に長くなるをさける
ことができる。本方法は、プログラムすべきレベルの数
が多い(例えば16から)場合に特に有利である。上記
の解決法によればプログラミング時間をさらに低減する
ことができ、それにより、セルがプログラムされない中
間レベルにおいて検証操作が避けられ、そして各停止の
間に、グローバルなプログラミング操作の開始時に線形
関係式(1)が有効である状態に達するのに必要なパル
ス数が記憶される。
【図面の簡単な説明】
【図1a】フローティングゲートメモリセルの二つの電
気記号を示す図である。
【図1b】フローティングゲートメモリセルの二つの電
気記号を示す図である。
【図2a】異なる閾値とそれぞれのプログラミング値と
の間の関係を示す図である。
【図2b】図2aにおける閾値と組合さった分布を示す
図である。
【図3】プログラミング及び検証操作パルスのシーケン
スを示す図である。
【図4】プログラミングモードにおける閾値電圧の変化
を示す図である。
【図5】続くプログラミング及び検証操作工程中に印加
されたゲート電圧の反応を示す図である。
【図6】異なるプログラミングレベルに関連する閾値電
圧の間隔を示す図である。
【図7】本方法のその後の工程中で印加されたゲート電
圧を示す図である。
【図8】本方法の第1の実施の形態を示すフロー図であ
る。
【図9】本方法の第2の実施の形態を示すフロー図であ
る。
【図10】図8の方法の実施可能なハードウエアのブロ
ック図である。
【符号の説明】
1 フリップフロップ 2 フリップフロップ 3 遅延フリップフロップ 4 マルチプレクサ 5 発生装置 6 第1のカウンタ 7 第2のカウンタ 8 デジタル比較器 9 レジスタ 10 第3のカウンタ 11 論理ブロック
───────────────────────────────────────────────────── フロントページの続き (72)発明者 アルベルト・モデッリ イタリア国、20146 ミラノ、ヴィア・ワ シントン、27 (72)発明者 アレッサンドロ・マンストレッタ イタリア国、27043 ブローニ、ヴィア・ エセグイム、31

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 一組のプログラミングパルスを印加する
    工程を備え、各プログラミングパルスにおいてゲート端
    子(CG)に前プログラミングパルスより値の大きいゲ
    ート電圧を印加する、ゲート端子(CG)を備えた不揮
    発性メモリセルのプログラミング方法において、検証工
    程に追従する検証なしで複数(Bi)の連続したプログ
    ラミングパルスを周期的に印加することを特徴とする不
    揮発性メモリセルのプログラミング方法。
  2. 【請求項2】 前記複数の連続したプログラミングパル
    スが、前記不揮発性メモリセルを現在のプログラミング
    レベルから次のプログラミングレベルにするのに必要な
    公称数のパルス(N)に等しいことを特徴とする請求項
    1に記載の不揮発性メモリセルのプログラミング方法。
  3. 【請求項3】 各プログラミングパルスにおいて前記ゲ
    ート電圧が前プログラミングレベルに対して一定の増加
    (ΔVGP)を示すことを特徴とする請求項1又は2に記
    載の不揮発性メモリセルのプログラミング方法。
  4. 【請求項4】 現在のプログラミングレベルと次のプロ
    グラミングレベルとの間に、前記一定の増加の整数では
    ないが倍数(Ci)に等しい閾値電圧差(ΔVDIST)が
    存在し、また前記複数(Bi)の連続したプログラミン
    グパルスが前記倍数を打切ることにより得られる整数値
    に等しいことを特徴とする請求項3に記載の不揮発性メ
    モリセルのプログラミング方法。
  5. 【請求項5】 対の隣接するプログラミングレベル間で
    閾値電圧工程が異なることを特徴とする請求項4に記載
    の不揮発性メモリセルのプログラミング方法。
  6. 【請求項6】 第1プログラミングレベルで消去状態か
    ら第1のプログラミング工程が始まり、前記第1のプロ
    グラミング工程が、各々プログラミング工程と検証工程
    とを含む複数の工程を備えていることを特徴とする請求
    項1〜5のいずれか一項に記載の不揮発性メモリセルの
    プログラミング方法。
  7. 【請求項7】 複数のメモリセルを並列にプログラミン
    グする工程を有することを特徴とする請求項1〜6のい
    ずれか一項に記載の不揮発性メモリセルのプログラミン
    グ方法。
  8. 【請求項8】 現在のプログラミングレベルと次のプロ
    グラミングレベルとの間に含まれる第1の公称数
    (Ni,Ci)のプログラミングパルスを検出する工程
    (105,105’)と、 前記第1の公称数(Ni,Ci)のプログラミングパルス
    のバイアス時に加えられるべき複数(Bi)のプログラ
    ミングパルスを計算する工程(106,106’,13
    2〜135)と、 検証することなしに加えられるべき複数(Bi)のプロ
    グラミングパルスを供給する工程(108)と、 検証工程を実行する工程(110)と、 少なくとも一つのセルが所望の閾値に達するまで、プロ
    グラミングパルスを供給する工程と検証工程を実行する
    工程とを繰り返す工程と、 全てのセルが所望の閾値に達するまで、プログラミング
    パルスを供給する工程と検証工程を実行する工程とを繰
    り返す工程とを反復することを特徴とする請求項1〜7
    のいずれか一項に記載の不揮発性メモリセルのプログラ
    ミング方法。
  9. 【請求項9】 最大プログラミングレベルまで前記工程
    の反復を繰り返すことを特徴とする請求項8に記載の不
    揮発性メモリセルのプログラミング方法。
  10. 【請求項10】 加えられるべき複数(Bi)のプログ
    ラミングパルスが前記公称数(Ni)のプログラミング
    パルスに等しいことを特徴とする請求項8に記載の不揮
    発性メモリセルのプログラミング方法。
  11. 【請求項11】 前記繰り返す工程が、すでに前記閾値
    に達している前記次のプログラミングレベル時にプログ
    ラミングされるべきセルへのプログラミングパルスの供
    給を停止する工程を含むことを特徴とする請求項8〜1
    0項の一項にに記載の不揮発性メモリセルのプログラミ
    ング方法。
  12. 【請求項12】 前記反復する工程が、 前記次のプログラミングレベル時にプログラミングされ
    るべきセルが存在するかどうかを検査する工程(13
    2)と、 プログラミングされるべきセルが存在する場合に、前記
    加えられるべき複数(Bi)のプログラミングパルスを
    前記第1の公称数(Ci)のプログラミングパルスを打
    切ることで得られた整数値に等しく設定する工程(10
    6’)と、 プログラミングされるべきセルが存在しない場合に、現
    在のレベルインデックスを増大し(133)、前記現在
    のプログラミングレベルと前記現在のプログラミングレ
    ベルに続くプログラミングレベルとの間に含まれる第2
    の公称数(Ci)のプログラミングパルスを計算し(1
    34)、前記第1、第2の公称数のプログラミングパル
    スを合計(135)する工程と、 前記次のプログラミングレベル時にプログラミングされ
    るべきセルが存在するかどうかを検査する前記工程と、
    現在のレベルインデックスを増大する工程と、第2の公
    称数(Ci)のプログラミングパルスを計算する工程
    と、前記次のプログラミングレベル時にプログラミング
    されるべき少なくとも一つのセルが存在することを検証
    するまで合計する工程とを繰り返す工程と、 前記加えられるべき複数(Bi)のプログラミングパル
    スを、前記第2の公称数(Ci)のプログラミングパル
    スを打切ることで得られた整数値に等しく設定する工程
    (106’)とを備えていることを特徴とする請求項8
    に記載の不揮発性メモリセルのプログラミング方法。
JP2000236205A 1999-08-03 2000-08-03 ゲート電圧の制御よるマルチレベル不揮発性メモリのプログラミング方法 Expired - Lifetime JP4469475B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP99830501A EP1074995B1 (en) 1999-08-03 1999-08-03 Method for programming multi-level non-volatile memories by controlling the gate voltage
EP99830501.5 1999-08-03

Publications (2)

Publication Number Publication Date
JP2001057091A true JP2001057091A (ja) 2001-02-27
JP4469475B2 JP4469475B2 (ja) 2010-05-26

Family

ID=8243537

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000236205A Expired - Lifetime JP4469475B2 (ja) 1999-08-03 2000-08-03 ゲート電圧の制御よるマルチレベル不揮発性メモリのプログラミング方法

Country Status (4)

Country Link
US (1) US6366496B1 (ja)
EP (1) EP1074995B1 (ja)
JP (1) JP4469475B2 (ja)
DE (1) DE69927967T2 (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100385228B1 (ko) * 2001-04-18 2003-05-27 삼성전자주식회사 불휘발성 메모리를 프로그램하는 방법 및 장치
US6768676B2 (en) 2002-01-24 2004-07-27 Sharp Kabushiki Kaisha Nonvolatile semiconductor memory device
WO2006082914A1 (ja) * 2005-02-03 2006-08-10 Kabushiki Kaisha Toshiba 不揮発性半導体記憶装置及びその動作方法
JP2008181630A (ja) * 2007-01-23 2008-08-07 Hynix Semiconductor Inc フラッシュメモリ素子のプログラム方法
US7486536B2 (en) 2005-07-06 2009-02-03 Samsung Electronics Co., Ltd. Phase-changeable memory device and method of programming the same
US7525838B2 (en) 2006-08-30 2009-04-28 Samsung Electronics Co., Ltd. Flash memory device and method for programming multi-level cells in the same
US7602650B2 (en) 2006-08-30 2009-10-13 Samsung Electronics Co., Ltd. Flash memory device and method for programming multi-level cells in the same
US7660159B2 (en) 2004-05-06 2010-02-09 Samsung Electronics Co., Ltd. Method and device for programming control information
JP2010524147A (ja) * 2007-04-10 2010-07-15 サンディスク コーポレイション 不揮発性メモリと予測プログラミングの方法
US8045378B2 (en) 2008-06-12 2011-10-25 Sandisk Technologies Inc. Nonvolatile memory with correlated multiple pass programming
JP2018518002A (ja) * 2015-04-09 2018-07-05 シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. 分割ゲート不揮発性メモリセルをプログラムするためのシステム及び方法
CN111863087A (zh) * 2019-04-29 2020-10-30 北京兆易创新科技股份有限公司 一种控制编程性能的方法和装置

Families Citing this family (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6504760B1 (en) * 2001-06-22 2003-01-07 Intel Corporation Charging a capacitance of a memory cell and charger
US6700820B2 (en) 2002-01-03 2004-03-02 Intel Corporation Programming non-volatile memory devices
TWI292914B (ja) * 2002-01-17 2008-01-21 Macronix Int Co Ltd
CN100409367C (zh) * 2002-01-30 2008-08-06 旺宏电子股份有限公司 多重值闪存的写入与清除方法
TWI244165B (en) * 2002-10-07 2005-11-21 Infineon Technologies Ag Single bit nonvolatile memory cell and methods for programming and erasing thereof
US6847550B2 (en) * 2002-10-25 2005-01-25 Nexflash Technologies, Inc. Nonvolatile semiconductor memory having three-level memory cells and program and read mapping circuits therefor
ITMI20022531A1 (it) * 2002-11-28 2004-05-29 St Microelectronics Srl Metodo di programmazione di celle di memoria non volatile multilivello e relativo circuito di programmazione
KR100558004B1 (ko) * 2003-10-22 2006-03-06 삼성전자주식회사 게이트 전극과 반도체 기판 사이에 전하저장층을 갖는비휘발성 메모리 소자의 프로그램 방법
WO2007043133A1 (ja) * 2005-10-04 2007-04-19 Spansion Llc 半導体装置およびその制御方法
US7180780B1 (en) * 2005-11-17 2007-02-20 Macronix International Co., Ltd. Multi-level-cell programming methods of non-volatile memories
US8156403B2 (en) 2006-05-12 2012-04-10 Anobit Technologies Ltd. Combined distortion estimation and error correction coding for memory devices
CN103258572B (zh) * 2006-05-12 2016-12-07 苹果公司 存储设备中的失真估计和消除
WO2007132456A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Memory device with adaptive capacity
US7663925B2 (en) * 2006-05-15 2010-02-16 Micron Technology Inc. Method and apparatus for programming flash memory
WO2008026203A2 (en) * 2006-08-27 2008-03-06 Anobit Technologies Estimation of non-linear distortion in memory devices
WO2008053472A2 (en) 2006-10-30 2008-05-08 Anobit Technologies Ltd. Reading memory cells using multiple thresholds
US7924648B2 (en) * 2006-11-28 2011-04-12 Anobit Technologies Ltd. Memory power and performance management
WO2008068747A2 (en) 2006-12-03 2008-06-12 Anobit Technologies Ltd. Automatic defect management in memory devices
US7900102B2 (en) 2006-12-17 2011-03-01 Anobit Technologies Ltd. High-speed programming of memory devices
US8151166B2 (en) 2007-01-24 2012-04-03 Anobit Technologies Ltd. Reduction of back pattern dependency effects in memory devices
US7751240B2 (en) 2007-01-24 2010-07-06 Anobit Technologies Ltd. Memory device with negative thresholds
CN101715595A (zh) 2007-03-12 2010-05-26 爱诺彼得技术有限责任公司 存储器单元读取阈的自适应估计
US7551483B2 (en) * 2007-04-10 2009-06-23 Sandisk Corporation Non-volatile memory with predictive programming
US7643348B2 (en) * 2007-04-10 2010-01-05 Sandisk Corporation Predictive programming in non-volatile memory
US8001320B2 (en) 2007-04-22 2011-08-16 Anobit Technologies Ltd. Command interface for memory devices
US8234545B2 (en) 2007-05-12 2012-07-31 Apple Inc. Data storage with incremental redundancy
US8429493B2 (en) * 2007-05-12 2013-04-23 Apple Inc. Memory device with internal signap processing unit
US7925936B1 (en) 2007-07-13 2011-04-12 Anobit Technologies Ltd. Memory device with non-uniform programming levels
US8259497B2 (en) * 2007-08-06 2012-09-04 Apple Inc. Programming schemes for multi-level analog memory cells
US8174905B2 (en) 2007-09-19 2012-05-08 Anobit Technologies Ltd. Programming orders for reducing distortion in arrays of multi-level analog memory cells
US8068360B2 (en) 2007-10-19 2011-11-29 Anobit Technologies Ltd. Reading analog memory cells using built-in multi-threshold commands
WO2009050703A2 (en) 2007-10-19 2009-04-23 Anobit Technologies Data storage in analog memory cell arrays having erase failures
US8000141B1 (en) 2007-10-19 2011-08-16 Anobit Technologies Ltd. Compensation for voltage drifts in analog memory cells
WO2009063450A2 (en) 2007-11-13 2009-05-22 Anobit Technologies Optimized selection of memory units in multi-unit memory devices
US8225181B2 (en) 2007-11-30 2012-07-17 Apple Inc. Efficient re-read operations from memory devices
US7688638B2 (en) * 2007-12-07 2010-03-30 Sandisk Corporation Faster programming of multi-level non-volatile storage through reduced verify operations
US8209588B2 (en) 2007-12-12 2012-06-26 Anobit Technologies Ltd. Efficient interference cancellation in analog memory cell arrays
US8456905B2 (en) * 2007-12-16 2013-06-04 Apple Inc. Efficient data storage in multi-plane memory devices
US8085586B2 (en) 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8156398B2 (en) 2008-02-05 2012-04-10 Anobit Technologies Ltd. Parameter estimation based on error correction code parity check equations
US7924587B2 (en) * 2008-02-21 2011-04-12 Anobit Technologies Ltd. Programming of analog memory cells using a single programming pulse per state transition
US8230300B2 (en) 2008-03-07 2012-07-24 Apple Inc. Efficient readout from analog memory cells using data compression
US8059457B2 (en) 2008-03-18 2011-11-15 Anobit Technologies Ltd. Memory device with multiple-accuracy read commands
US8400858B2 (en) 2008-03-18 2013-03-19 Apple Inc. Memory device with reduced sense time readout
US7800945B2 (en) * 2008-06-12 2010-09-21 Sandisk Corporation Method for index programming and reduced verify in nonvolatile memory
US7826271B2 (en) * 2008-06-12 2010-11-02 Sandisk Corporation Nonvolatile memory with index programming and reduced verify
US7796435B2 (en) * 2008-06-12 2010-09-14 Sandisk Corporation Method for correlated multiple pass programming in nonvolatile memory
US7924613B1 (en) 2008-08-05 2011-04-12 Anobit Technologies Ltd. Data storage in analog memory cells with protection against programming interruption
US7995388B1 (en) 2008-08-05 2011-08-09 Anobit Technologies Ltd. Data storage using modified voltages
US7715235B2 (en) * 2008-08-25 2010-05-11 Sandisk Corporation Non-volatile memory and method for ramp-down programming
US8949684B1 (en) 2008-09-02 2015-02-03 Apple Inc. Segmented data storage
US8169825B1 (en) 2008-09-02 2012-05-01 Anobit Technologies Ltd. Reliable data storage in analog memory cells subjected to long retention periods
US8482978B1 (en) 2008-09-14 2013-07-09 Apple Inc. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8000135B1 (en) 2008-09-14 2011-08-16 Anobit Technologies Ltd. Estimation of memory cell read thresholds by sampling inside programming level distribution intervals
US8239734B1 (en) 2008-10-15 2012-08-07 Apple Inc. Efficient data storage in storage device arrays
US8713330B1 (en) 2008-10-30 2014-04-29 Apple Inc. Data scrambling in memory devices
US8208304B2 (en) 2008-11-16 2012-06-26 Anobit Technologies Ltd. Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N
US8397131B1 (en) 2008-12-31 2013-03-12 Apple Inc. Efficient readout schemes for analog memory cell devices
US8248831B2 (en) 2008-12-31 2012-08-21 Apple Inc. Rejuvenation of analog memory cells
US8924661B1 (en) 2009-01-18 2014-12-30 Apple Inc. Memory system including a controller and processors associated with memory devices
US8223551B2 (en) * 2009-02-19 2012-07-17 Micron Technology, Inc. Soft landing for desired program threshold voltage
US8228701B2 (en) * 2009-03-01 2012-07-24 Apple Inc. Selective activation of programming schemes in analog memory cell arrays
US8259506B1 (en) 2009-03-25 2012-09-04 Apple Inc. Database of memory read thresholds
US8832354B2 (en) 2009-03-25 2014-09-09 Apple Inc. Use of host system resources by memory controller
KR101600539B1 (ko) * 2009-04-07 2016-03-08 삼성전자주식회사 불휘발성 메모리 장치의 프로그램 방법
US8238157B1 (en) 2009-04-12 2012-08-07 Apple Inc. Selective re-programming of analog memory cells
US8479080B1 (en) 2009-07-12 2013-07-02 Apple Inc. Adaptive over-provisioning in memory systems
US8495465B1 (en) 2009-10-15 2013-07-23 Apple Inc. Error correction coding over multiple memory pages
US8677054B1 (en) 2009-12-16 2014-03-18 Apple Inc. Memory management schemes for non-volatile memory devices
US8694814B1 (en) 2010-01-10 2014-04-08 Apple Inc. Reuse of host hibernation storage space by memory controller
US8572311B1 (en) 2010-01-11 2013-10-29 Apple Inc. Redundant data storage in multi-die memory systems
US8116140B2 (en) 2010-04-09 2012-02-14 Sandisk Technologies Inc. Saw-shaped multi-pulse programming for program noise reduction in memory
US8694853B1 (en) 2010-05-04 2014-04-08 Apple Inc. Read commands for reading interfering memory cells
US8572423B1 (en) 2010-06-22 2013-10-29 Apple Inc. Reducing peak current in memory systems
US8595591B1 (en) 2010-07-11 2013-11-26 Apple Inc. Interference-aware assignment of programming levels in analog memory cells
US9104580B1 (en) 2010-07-27 2015-08-11 Apple Inc. Cache memory for hybrid disk drives
US8645794B1 (en) 2010-07-31 2014-02-04 Apple Inc. Data storage in analog memory cells using a non-integer number of bits per cell
US8856475B1 (en) 2010-08-01 2014-10-07 Apple Inc. Efficient selection of memory blocks for compaction
US8694854B1 (en) 2010-08-17 2014-04-08 Apple Inc. Read threshold setting based on soft readout statistics
US9021181B1 (en) 2010-09-27 2015-04-28 Apple Inc. Memory management for unifying memory cell conditions by using maximum time intervals
US8879329B2 (en) 2010-11-19 2014-11-04 Micron Technology, Inc. Program verify operation in a memory device
US9418731B1 (en) * 2015-11-06 2016-08-16 Phison Electronics Corp. Memory management method, memory storage device and memory control circuit unit
US10249382B2 (en) 2017-08-22 2019-04-02 Sandisk Technologies Llc Determination of fast to program word lines in non-volatile memory
US10991430B2 (en) 2018-12-19 2021-04-27 Ememory Technology Inc. Non-volatile memory cell compliant to a near memory computation system
TWI695385B (zh) 2019-05-31 2020-06-01 旺宏電子股份有限公司 非揮發性記憶體與其操作方法
KR20200144000A (ko) * 2019-06-17 2020-12-28 에스케이하이닉스 주식회사 메모리 장치 및 그것의 동작 방법
US11556416B2 (en) 2021-05-05 2023-01-17 Apple Inc. Controlling memory readout reliability and throughput by adjusting distance between read thresholds
US11847342B2 (en) 2021-07-28 2023-12-19 Apple Inc. Efficient transfer of hard data and confidence levels in reading a nonvolatile memory

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5555204A (en) * 1993-06-29 1996-09-10 Kabushiki Kaisha Toshiba Non-volatile semiconductor memory device
JP3730272B2 (ja) * 1994-09-17 2005-12-21 株式会社東芝 不揮発性半導体記憶装置
KR0172401B1 (ko) * 1995-12-07 1999-03-30 김광호 다수상태 불휘발성 반도체 메모리 장치
US6115285A (en) * 1996-06-14 2000-09-05 Siemens Aktiengesellschaft Device and method for multi-level charge/storage and reading out
JPH1055690A (ja) * 1996-08-07 1998-02-24 Nec Corp 電気的書込可能な不揮発性半導体記憶装置
EP0913832B1 (en) * 1997-11-03 2003-07-23 STMicroelectronics S.r.l. Method for multilevel programming of a nonvolatile memory, and a multilevel nonvolatile memory

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100385228B1 (ko) * 2001-04-18 2003-05-27 삼성전자주식회사 불휘발성 메모리를 프로그램하는 방법 및 장치
US6768676B2 (en) 2002-01-24 2004-07-27 Sharp Kabushiki Kaisha Nonvolatile semiconductor memory device
US7660159B2 (en) 2004-05-06 2010-02-09 Samsung Electronics Co., Ltd. Method and device for programming control information
WO2006082914A1 (ja) * 2005-02-03 2006-08-10 Kabushiki Kaisha Toshiba 不揮発性半導体記憶装置及びその動作方法
JP4764414B2 (ja) * 2005-02-03 2011-09-07 株式会社東芝 不揮発性半導体記憶装置及びその動作方法
US7701773B2 (en) 2005-02-03 2010-04-20 Kabushiki Kaisha Toshiba Nonvolatile semiconductor storage device and operation method thereof
US7545684B2 (en) 2005-02-03 2009-06-09 Kabushiki Kaisha Toshiba Nonvolatile semiconductor storage device and operation method thereof
US7486536B2 (en) 2005-07-06 2009-02-03 Samsung Electronics Co., Ltd. Phase-changeable memory device and method of programming the same
US7602650B2 (en) 2006-08-30 2009-10-13 Samsung Electronics Co., Ltd. Flash memory device and method for programming multi-level cells in the same
US7525838B2 (en) 2006-08-30 2009-04-28 Samsung Electronics Co., Ltd. Flash memory device and method for programming multi-level cells in the same
JP2008181630A (ja) * 2007-01-23 2008-08-07 Hynix Semiconductor Inc フラッシュメモリ素子のプログラム方法
JP2010524147A (ja) * 2007-04-10 2010-07-15 サンディスク コーポレイション 不揮発性メモリと予測プログラミングの方法
US8045378B2 (en) 2008-06-12 2011-10-25 Sandisk Technologies Inc. Nonvolatile memory with correlated multiple pass programming
US8300458B2 (en) 2008-06-12 2012-10-30 Sandisk Technologies Inc. Nonvolatile memory with correlated multiple pass programming
JP2018518002A (ja) * 2015-04-09 2018-07-05 シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. 分割ゲート不揮発性メモリセルをプログラムするためのシステム及び方法
CN111863087A (zh) * 2019-04-29 2020-10-30 北京兆易创新科技股份有限公司 一种控制编程性能的方法和装置
CN111863087B (zh) * 2019-04-29 2022-08-30 北京兆易创新科技股份有限公司 一种控制编程性能的方法和装置

Also Published As

Publication number Publication date
EP1074995A1 (en) 2001-02-07
EP1074995B1 (en) 2005-10-26
DE69927967T2 (de) 2006-07-27
JP4469475B2 (ja) 2010-05-26
DE69927967D1 (de) 2005-12-01
US6366496B1 (en) 2002-04-02

Similar Documents

Publication Publication Date Title
JP2001057091A (ja) ゲート電圧の制御よるマルチレベル不揮発性メモリのプログラミング方法
US7376015B2 (en) Nonvolatile memory, semiconductor device, and method of programming to nonvolatile memory
US7116581B2 (en) Nonvolatile semiconductor memory device and method of programming in nonvolatile semiconductor memory device
US7474561B2 (en) Variable program voltage increment values in non-volatile memory program operations
KR0172401B1 (ko) 다수상태 불휘발성 반도체 메모리 장치
KR100953045B1 (ko) 불휘발성 메모리 장치의 프로그램 방법
US7450426B2 (en) Systems utilizing variable program voltage increment values in non-volatile memory program operations
US6351417B1 (en) Non-volatile semiconductor memory device having a function for controlling the range of distribution of memory cell threshold voltages and method of erasing data thereof
US7072221B2 (en) Flash memory device and method for driving the same
USRE45544E1 (en) Saw-shaped multi-pulse programming for program noise reduction in memory
CN102067233B (zh) 使用索引编程和减少的验证的非易失性存储器和方法
US5784316A (en) Non-volatile storage device
US7940579B2 (en) Semiconductor integrated circuit device
US6762956B2 (en) High-speed data programmable nonvolatile semiconductor memory device
CN102089827A (zh) 非易失性存储器和关联多遍编程的方法
US6418054B1 (en) Embedded methodology to program/erase reference cells used in sensing flash cells
CN111667869B (zh) 非易失性半导体存储器装置及其擦除控制电路、方法
KR100572302B1 (ko) 플래시 메모리 장치와 그의 프로그램 방법
JPH10188586A (ja) 半導体不揮発性記憶装置
KR101021701B1 (ko) 플래시 메모리 장치 및 플래시 메모리 장치의 프로그램 방법
JPH1083687A (ja) 半導体不揮発性記憶装置
KR100198619B1 (ko) 플래쉬 메모리 소자의 프로그래밍 회로 및 그에 따른 프로그래밍 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090825

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20090825

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20090825

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: 20100215

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: 20100301

R150 Certificate of patent or registration of utility model

Ref document number: 4469475

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130305

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130305

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140305

Year of fee payment: 4

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term