JP4131902B2 - 不揮発性半導体メモリおよびそのスレシホールド電圧制御方法 - Google Patents
不揮発性半導体メモリおよびそのスレシホールド電圧制御方法 Download PDFInfo
- Publication number
- JP4131902B2 JP4131902B2 JP2000393205A JP2000393205A JP4131902B2 JP 4131902 B2 JP4131902 B2 JP 4131902B2 JP 2000393205 A JP2000393205 A JP 2000393205A JP 2000393205 A JP2000393205 A JP 2000393205A JP 4131902 B2 JP4131902 B2 JP 4131902B2
- Authority
- JP
- Japan
- Prior art keywords
- voltage
- threshold voltage
- bit line
- cell
- level
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Read Only Memory (AREA)
Description
【発明の属する技術分野】
この発明は不揮発性半導体メモリのスレシホールド電圧を制御する技術に係わり、特に過消去セルのスレシホールド電圧を、適正なスレシホールド電圧の範囲にシフトする技術に関する。
【0002】
【従来の技術】
従来、不揮発性半導体メモリ(フラッシュメモリ)では、選択されたメモリセル(以下単にセルという)に対し、ホットエレクトロンをドレイン側から浮遊ゲートに注入してデータを書き込み、ファウラー−ノルドハイム(Fowler-Nordheim)トンネル電流のメカニズムにより、エレクトロンを浮遊ゲートからソース拡散層に、あるいはチャネル全面を介して基板に引き抜いてデータを消去する方式が用いられてきた。セルは、たとえば64kバイト(512kビット)といった単位で、一つのブロックを構成している。消去時には、データを、たとえばブロック単位で一括消去する。この一括消去時のセルのスレシホールド電圧の分布について、図22を参照して説明する。
【0003】
図22に示すように、消去動作は、最も消去が遅いビットが、所望のスレシホールド電圧VTHとなるまで繰り返し行われる。この電圧を消去ベリファイ電圧VEVと呼ぶ。消去ベリファイ電圧VEVの値は、できる限り低くすることが望まれる。データ読み出し時に選択ワード線に与える電圧と、消去ベリファイ電圧VEVの値との差ΔVを大きくするためである。この電圧差ΔVが大きい程、データ読み出し時、セルが流すオン電流が大きくなり、データを、より高速に読み出すことができ、不揮発性半導体メモリの性能が向上する。
【0004】
ところで、ブロック単位で一括消去を行った場合、消去速度がセル毎にばらついているため、一括消去後のスレシホールド電圧VTHは、図22に示すように、ある分布幅Dを有してばらつく。このようなスレシホールド電圧VTHのばらつきは、いろいろな要因で起こるが、ゲート酸化膜中へのトラップの発生や、その消滅も関係する。このため、書き換えを繰り返すと、突然、あるセルの消去速度が速くなったり、それがまた元に戻ったりする現象が起こる。
【0005】
消去速度が速くて、スレシホールド電圧VTHが下がり過ぎたセル、たとえばスレシホールド電圧VTHが、データ読み出し時に非選択ワード線に与える電圧以下に下がったセル(以下過消去セルと呼ぶ)が発生すると、その後の書き込み動作時や、読み出し動作時に、いくつかの問題が発生する。
【0006】
図23は、不揮発性半導体メモリ(フラッシュメモリ)のセルアレイを示す回路図である。
【0007】
図23に示すように、セルMCは、セルアレイ中にマトリクス状に配置され、そのドレイン端子Dは、図中横方向に走るビット線BL(BL1、BL2、BL3、BL4、…)に接続され、その制御ゲートCGは、図中縦方向に走るワード線WL(WL1、WL2、WL3、WL4、…)に接続されている。また、そのソース端子は、図中縦方向に走るソース線SLに接続されている。
【0008】
ここで、過消去セルがセルアレイ中に発生した場合の問題を、図24を参照して説明する。なお、図24は、書き込み動作時のセルアレイのバイアス状態を示している。
【0009】
図24に示すように、過消去セル(たとえば図24中のセルMC32)がセルアレイ中に発生しているとする。過消去セルMC32は、過大なリーク電流ILEAKを、そのドレイン端子Dからそのソース端子Sに向けて流す。このため、過消去セルMC32が接続されているビット線BL2には、その後の動作において、過大なリーク電流ILEAKが流れることになる。たとえばこの過大なリーク電流ILEAKは、一般的に消去動作の次に行われる書き込み動作において、ビット線BL2の電圧を降下させる。このため、ビット線BL2に接続されている、あるセル(たとえば図24中のセルMC12)にデータを書き込もうとしたとき、書き込み時間の増大や、場合によっては書き込み不可能等の問題を発生させる。
【0010】
また、最近の不揮発性半導体メモリでは、書き込み動作時にビット線BLに与えるバイアス電圧を、チャージポンプ回路を用いて、低い電源電圧から昇圧して発生させている。このような不揮発性半導体メモリでは、リーク電流ILEAKに起因したビット線BLの電圧の降下が、特に発生しやすい。
【0011】
また、書き込みができたとしても、読み出し動作時にビット線BLにリーク電流ILEAKが流れると、そのビット線BLにドレイン端子を接続した全てのセルのデータが、データ“1”と誤検知されたりする。あるいはデータ“1”と誤検知される程ひどくなくても、リーク電流ILEAKによって、データ“0”のセルからの読み出し速度が遅くなったりする問題が発生する。
【0012】
このような過消去セルの発生頻度は、消去ベリファイ電圧VEVを下げる程、高まる。
【0013】
しかし、その一方で、上述したように、消去ベリファイ電圧VEVを下げる程、不揮発性半導体メモリの性能を向上できるために、できる限り消去ベリファイ電圧VEVは下げたい、という要求がある。
【0014】
そこで、不揮発性半導体メモリに、一括消去の後、下がり過ぎたスレシホールド電圧VTHを、所望の値まで回復させる機能を搭載することが提案されている。
【0015】
その一つは、スレシホールド電圧VTHが下がり過ぎたセルが接続されているビット線BLを検知して、ワード線WLの電圧を例えば0V近辺の電位に固定しつつ、そのビット線BLに高い電圧を印加する。これにより、下がり過ぎたスレシホールド電圧VTHを、所望の値に上昇させる、という方法である。この方法は、S.Yamadaらにより、IEDM Tech. Dig. pp307-310(1991)に開示されており、現在では、自己収束(Self-convergence)法と呼ばれている。自己収束動作時のセルのバイアス状態の一例を図25に示しておく。
【0016】
しかし、自己収束法では、スレシホールド電圧VTHを所望の値に上昇させるのに、その所望のスレシホールド電圧が比較的高い値にある場合、たとえば通常の書き込み動作に比較し、非常に時間がかかる。上記文献に開示されているデータからも判るように、スレシホールド電圧VTHを0V以上に上昇させるのには数ms以下の時間で良いが、1V以上に上昇させるためには数十ms以上といった時間がかかる事になっている。メモリセルのチャネル長が短い最近のセルでは、−1V〜0V付近までは、さらに短い時間で上昇し、例えば1ms程度で0V付近まで上昇し、−1Vであればずっと短い時間で上昇するが、それ以上のスレシホールド電圧に上昇させるのは、上昇速度が飽和するので、微細化しても長い時間がかかってしまう場合が多い。このため、スレシホールド電圧VTHを上昇させなくてはいけないセルの数が多いと、この方法のみを用いて、これら全てのセルのスレシホールド電圧VTHを所望の、例えば1Vあるいはそれ以上といった値に上昇させるのには、チップ全体で、非現実的な時間がかかることになる。
【0017】
また、一つのビット線BLに、複数の過消去セルが接続されていた場合、複数の過消去セルを介してリーク電流が流れる。このため、自己収束動作時にビット線BLの電圧が降下し、それだけで、スレシホールド電圧VTHを所望の値に上昇させるまでの時間が非常に長くなってしまうこともある。
【0018】
また、他の方法として、過消去セルを、ワード線WLの電圧を一定電圧でスキャンして検知し、検知した過消去セルを選択し、選択した過消去セルに接続されているワード線WLとビット線BLとにそれぞれ所望の電圧を与えて、過消去セルのスレシホールド電圧VTHを所望の値になるまでデータを書き込む、という方法がある。この方法は、S.Atsumiらにより、U.S. Patent No.5,568,419(対応日本出願特許公開番号:特開平8−45284号)に開示されており、一般に弱プログラム(Weak-program)法と呼ばれている。弱プログラム動作時の選択セルのバイアス状態の一例を図26Aに示しておく。
【0019】
この弱プログラム法では、過消去セルに接続されているワード線WLとビット線BLとにそれぞれ所望の電圧を積極的に与えることで、ドレインから電子を浮遊ゲートに注入する。このため、通常の書き込み動作と同様に、たとえばμs単位の書き込みパルスを、選択ワード線およびビット線に対して与えることで、スレシホールド電圧VTHを高速に所望の値に上昇させることができる。
【0020】
また、弱プログラム法では、自己収束法と異なり、過消去セルを選択して弱い書き込みを行う。このため、図26Bに示すように、非選択セルにおいては、そのワード線WL(非選択ワード線)の電圧を、たとえば−1Vといった電圧に設定でき、同一ビット線BLに存在する他の過消去セルが流す電流を最小限に抑えることができる。
【0021】
しかし、弱プログラム法では、スレシホールド電圧VTHが、非常に低い値まで低下したセルが発生した場合、実際に過消去セルの検知がうまくいかずに、誤動作を引き起こす可能性がある。これについて、図27を参照して説明する。
【0022】
図27に示すように、まず、非選択ワード線(図27ではWL2、WL3、WL4、…)は、たとえば−1Vといった電圧にされる。これにより、非選択ワード線に接続されているセルはそれぞれ、そのスレシホールド電圧VTHが−1Vを超えていれば、カットオフされる。
【0023】
一方、選択ワード線(図27ではWL1)の電圧は、たとえば検知したいスレシホールド電圧VTHより一定量高い値に設定し、選択ビット線(図27ではBL2)に読み出し用バイアス電圧、たとえば0.5Vを与えて読み出し動作をさせる。たとえばスレシホールド電圧VTHが1V以下のセルを検知したいのであれば、選択ワード線WL1には、たとえば2Vの電圧を与える。また、選択ビット線BL2には、0.5Vの電圧を与える。非選択ビット線(図27ではBL1、BL3、BL4、…)は、たとえば開放する(OPEN)。
【0024】
このようなバイアス状態により、検知しようとするセル(図27ではセルMC12)が選択され、ビット線BL2に規定値以上のオン電流IONが流れるか否かを検知する。流れなければスレシホールド電圧VTHは“1Vを超える”と判断され、“弱プログラムの必要無し”と判断される。
【0025】
規定値以上のオン電流IONが流れれば、スレシホールド電圧VTHは“1V以下”と判断され、“弱プログラムの必要有り”と判断される。
【0026】
このようにして選択セルMC12が過消去か否かが検知され、もし過消去であれば、選択セルMC12に対して弱プログラムが行われる。
【0027】
ところが、同じビット線BL2に、スレシホールド電圧VTHが−2V未満のセルが接続されていたとする(たとえば図27中のセルMC42)。この場合、非選択ワード線WL4の電圧は−1Vであるため、非選択セルMC42は、規定値以上のオン電流IONを流す。この結果、検知しようとしているセルMC12のスレシホールド電圧VTHの状態に係わらず、そのスレシホールド電圧VTHは“1V以下”と判断されてしまう。
【0028】
もし、選択セルMC12のスレシホールド電圧VTHが1Vを超え、適正値であった場合、これは、選択セルMC12のスレシホールド電圧VTHを誤検知したことになる。このため、適正なスレシホールド電圧VTHである選択セルMC12に対して、弱プログラムが行われてしまう。
【0029】
上記誤検知に起因した弱プログラム動作は、非選択セルMC42が規定値以上のオン電流IONを流す限り、繰り返し続けられる。この結果、選択セルMC12のスレシホールド電圧VTHは、どんどん上昇し、消去ベリファイ電圧VEVを超え、やがて、そのスレシホールド電圧VTHは、データ読み出し時に“1”読み出しとなる値を超えてしまう可能性がある。
【0030】
スレシホールド電圧VTHが、“1”読み出しとなる値を超えてしまえば、データを消去したにも関わらず(データ読み出し時に“1”読み出しとなる)、データが消去されていないこと(データ読み出し時に“0”読み出しとなる)を意味する。このような現象が起きてしまったチップは“不良”である。
【0031】
また、図28に示すように、同じビット線BL2に、スレシホールド電圧VTHが−2V以上ではあるが、−1V未満のセル(たとえば図28中のセルMC32)が接続されていた、とする。この場合、図27を参照して説明したような誤検知とはならないが、非選択セルMC32は、リーク電流ILEAKを流す。このリーク電流ILEAKは、検知しようとしている選択セルMC12が流す電流に加算されることになる。これもまた、選択MC12への書き込み過ぎの原因となる。
【0032】
たとえば選択ワード線WL1の電圧を2Vとし、選択ビット線BL2に流れるオン電流IONが、たとえば10μA以下になれば、選択セルMC12のスレシホールド電圧VTHが1Vを越えたとして、弱プログラム動作を終了する設計になっていたとする。
【0033】
ところが、非選択セルMC32が5μAのリーク電流ILEAKを流していたとすると、選択セルMC12のオン電流IONが5μA以下にならないと、弱プログラム動作は終了しない。これは、選択セルMC12のスレシホールド電圧VTHが、既に1Vを越え、適正値になっているのに、弱プログラム動作が終了しないことを意味する。これは、選択セルMC12に対して、書き込み過ぎを発生させる可能性がある。
【0034】
もし、書き込み過ぎが発生してしまうと、上記データを消去したにも関わらず、データが消去されていないという現象を起こす。
【0035】
また、“1”読み出しとなるスレシホールド電圧VTHの値を超えないまでも、スレシホールド電圧VTHが消去ベリファイ電圧VEV以上になってしまうと、それは電圧差ΔVの不足、即ち読み出し電流のマージン不足を招く。マージン不足は、読み出し動作を遅くさせる。
【0036】
また、非選択セルMC32がリーク電流ILEAKを流していた場合、このリーク電流ILEAKによってビット線BL2の電圧は、元の設定値より下がってしまう。
【0037】
弱プログラム動作時、非選択ワード線はそれぞれ−1Vに固定されているが、ビット線BL2を、選択セルMC12と共有する非選択セルMC22、MC32、MC42、…はそれぞれ、そのドレインに電圧がかかっている。このため、これら非選択セルにおいては、そのスレシホールド電圧VTHが、たとえば自己収束と同じメカニズムによって上昇する。非選択セルMC32のスレシホールド電圧VTHが上昇し、−1Vを超えると、非選択セルMC32は“カットオフ状態”となり、リーク電流ILEAKは突然減る。この結果、元の設定値より下がっていたビット線BL2の電圧は、元の設定値に突然回復する(突然上昇する)といった現象が起きる。
【0038】
このようにスレシホールド電圧VTHが−1V未満の非選択セルMC32が接続されているビット線BL2では、その電圧が突然上昇することがあり、弱プログラムの書き込み速度や、書き込み量の制御が、設計通りにいかなくなる。ビット線BL2の電圧が突然上昇した結果、選択セルMC12には、データが所望のスレシホールド電圧VTHを超えて書き込まれる、といった現象が起きることもある。
【0039】
この現象は、弱プログラム動作に、ステップアップ(Step-up)法を併用していた場合に、特に顕著である。ステップアップ法とは、選択セルMC12に対して弱プログラムを繰り返すごとに、ワード線WL1の電圧をステップアップする、という方法である。ステップアップ法は、たとえばH. Shigaらにより、Symposium of VLSI Circuit Technical digest pp33-36(1999)に開示されている。
【0040】
ステップアップ法は、選択ワード線WL1の電圧を一定としたまま弱プログラムを繰り返す方法に比べて、スレシホールド電圧VTHを、ずっと高速に所望の値まで上昇させることができる。
【0041】
しかし、スレシホールド電圧VTHが−1V未満のセルMC32が接続されたビット線BL2では、リーク電流ILEAKが流れるために、その電圧が元の設定値よりも下がってしまい、弱プログラムの速度が低下する。このため、弱プログラム動作の繰り返し回数が増え、選択ワード線WL1の電圧のステップアップ回数は増加する。この結果、選択ワード線WL1の電圧は、非常に高い値まで上昇してしまうことになる。
【0042】
このようなステップアップ法を用いていた場合、ビット線BL2の電圧が、上記メカニズムによって突然上昇すると、非常に大きな書き込みが行われることになる。よって、データが所望のスレシホールド電圧VTHを超えて書き込まれる、といった現象が特に顕著である。
【0043】
同様の現象は、複数のビット線に対して、同時にデータを読み書きする不揮発性半導体メモリの場合に、特に起き易い。このような不揮発性半導体メモリのブロック図を図29に示す。
【0044】
図29に示すように、複数のビット線に対して、同時にデータを読み書きする不揮発性半導体メモリは、1ブロック内に複数のI/O回路109を持つ。これらI/O回路109にはそれぞれ、カラムセレクタ107を介して何本かずつのビット線、たとえば16本ずつのビット線BL1〜BL16、BL17〜BL32、…が接続されている。カラムデコーダ108は、カラムアドレスに応じたカラム選択信号を、カラム選択線(CSL1〜CSL16)を介して、複数のカラムセレクタ107それぞれに供給する。複数のカラムセレクタ107はそれぞれ、たとえば16本のビット線のうちの1本を、カラム選択信号に応じて選択し、選択したビット線をI/O回路109に接続する。I/O回路109とカラムセレクタ107とを接続する接続経路にはそれぞれ、一つのチャージポンプ回路104の出力が接続されている。弱プログラム時、書き込み用ビット線バイアス電圧は、一つのチャージポンプ回路104から、複数のビット線に対して同時に供給される。
【0045】
このような不揮発性半導体メモリでは、選択された複数のビット線のうちの一本にでも過大なリーク経路があれば、チャージポンプ回路104から出力された電圧が低下する。この結果、選択された複数のビット線全てにおいて、その電圧は元の設定値よりも下がってしまう。
【0046】
また、図29に示す不揮発性半導体メモリにおいては、自己収束法を用いた場合においても、自己収束に要する時間の増大を招く。つまり、上述したように選択された複数のビット線のうちの一本にでも過大なリーク経路があれば、選択された複数のビット線全てにおいて、その電圧は元の設定値よりも下がってしまうからである。
【0047】
また、上記説明は全て、説明を簡単にするために、同一ビット線に、非常にスレシホールド電圧の低いセルが1個存在した場合について説明しているが、実際にはスレシホールド電圧が低めのセルが多数存在する場合でも、そのリーク電流の総和が大きくなると、同様の誤動作問題が起きることになる。
【0048】
これらに対して、Weak-programの時の誤動作を対策する方法として、リークのあるビット線を検知後、まず、そのビット線の全セルにWeak-program動作を行ない、リークがなくなった後に、所望のスレシホールド電圧より低いセルを検知して、最初のWeak-programと同一のバイアス条件で、Weak−programを行なう方法が特開平8−106793号公報に高橋らにより開示されている。しかしながら、この方法も2つの大きな問題がある。一つには、Weak-programと同一のバイアス条件で、全セルに書き込みを行なうと、もともとスレシホールド電圧が消去verify電圧に近い、スレシホールドの高いセルにも書き込み動作が行なわれる為に、そのセルもさらに書き込みをされて、消去Verifyレベルを超えてしまう事である。特開平8−106793号公報の図17には、高いスレシホールド電圧のセルのスレシホールド電圧はWeak-program動作で低下していくと示されているが、実際のデバイスの例えば2.5V以下の消去verify電圧と、Weak-program時のワード線電圧4Vの条件では通常上昇してしまう場合が多い。その実際の特性は、例えば、H. ShigaらによるSymposium of VLSI Circuit Technical digest pp33-36(1999)にも示されている。また全セルに順次、Weak-program動作をかけると長い時間がかかってしまう問題も発生する。1つのセルへの書き込み時間を短くできたとしても、同一ビット線に接続されるセルは、1K〜2K個あり、どのセルに書き込みが必要かは判別できないので、そのビット線上の全セルのワード線を順次上げて書き込みを行なう必要がある為である。実際のメモリセルへの印加時間に加えて、ワード線をスイッチングして上げ下げするにも時間を要する。従って、例えば最初は同一ビット線上の全てのセル、次に必要なセルの2段階でスレシホールド電圧を一定範囲に入れようとする場合も、従来開示されている両段階を同様の電位で実行するのは、誤動作の発生の危険性及び動作速度の両面から、望ましくないものであった。
【0049】
【発明が解決しようとする課題】
この発明は、上記の事情に鑑み為されたもので、その主要な目的は、所望の範囲を逸脱したメモリセルのスレシホールド電圧を、誤動作や誤検知の発生を抑制しつつ、かつ動作の高速性を損なわずに、所望の範囲に回復させることが可能な不揮発性半導体メモリおよびそのスレシホールド電圧制御方法を提供することにある。
【0050】
【課題を解決するための手段】
上記目的を達成するために、この発明では、複数のメモリセルのスレシホールド電圧を、第1のレベルを上限および下限の一方としたある範囲に一括してシフトさせた後、シフトされたスレシホールド電圧の上限および下限の他方を、前記第1のレベルに近い第2のレベルに、第2のレベルを逸脱するメモリセルを含む複数のメモリセルを第一のバイアス条件で一括してまずシフトさせる。この時のバイアス条件は、実際には第二のレベルを逸脱していないセルに印加されても問題を引き起こさず、さらに第二のレベルを逸脱しているセルは高速に第二のレベルに到達する適切なバイアス条件を印加する。具体的にはワード線を0〜―1Vといった低い電圧に設定し、第二の範囲を逸脱したセルが含まれると検知されたビット線には4〜5V等の電圧を印加する、いわゆる自己収束法を用いる。
【0051】
なお、この動作において、回路動作を簡略にする為、第二のレベルを逸脱するメモリセルを含まないビット線にもバイアスが印加される事があっても構わない。
【0052】
この後、前記第2のレベルにシフトされたスレシホールド電圧の上限および下限の他方を、前記第2のレベルよりもさらに第1のレベルに近い第3のレベルに第一のバイアス条件とは異なる第二のバイアス条件でシフトさせる。例えば、第三のレベルを逸脱したセルのみを選択し、そのセルのワード線に2V、ドレインに4〜5Vを印加する。このように第二のバイアス条件では、第一と第二で同様の電荷注入メカニズムを用いる場合は、第一のバイアス条件よりもワード線の電圧を高く設定する。ワード線電圧は、セルの書き込み速度をモニタしつつ順次上昇させていくステップアップ法を用いると、さらに短時間に所望の第三のレベルに入れる事ができる。なお、非選択ワード線には、第二のレベルに入っているメモリセルであれば問題になるようなリーク電流を発生させない電圧に固定する。例えば、−1V〜0Vといった電圧である。
【0053】
このような不揮発性半導体メモリであると、複数のメモリセルのスレシホールド電圧の上限および下限の他方を、まず、第2のレベルに短時間で一括にシフトさせる。このため、スレシホールド電圧の上限および下限の他方を、第3のレベルにシフトさせる際、複数のメモリセルを上記第2のレベルに基いて、非選択ワード線に適切なバイアスを印加する事で確実にカットオフさせることが可能となる。このため、スレシホールド電圧の上限および下限の他方を、第3のレベルにシフトさせる際、たとえば弱プログラム法を用いたとしても、たとえば誤動作や、誤検知の発生を抑制しつつ、所望の範囲にシフトさせることができる。
【0054】
また、スレシホールド電圧の上限および下限の他方を、段階的にシフトさせ、かつそれぞれのシフトに最適なバイアス条件を用いるため、一度に第3のレベルまで上昇させる場合に比べて、それぞれのシフト量は僅かで済む。このため、第2のレベルにシフトさせる際、たとえば全ワード線を全て0Vあるいはその前後の電位とし、同一ビット線上の全セルのビット線に一括して電圧をかける自己収束法を用いたとしても、スレシホールド電圧をシフトさせる動作の高速性が損なわれ難い。さらに第三のレベルから逸脱したセルを確実に検知できる状態にした後に、第三のレベルから逸脱したメモリセルを検知して、このメモリセルに対しては、第二のレベルに入れる場合とは異なったバイアス条件を設定して、短時間に所望の値にスレシホールド電圧をもっていくものである。
【0055】
【発明の実施の形態】
以下、この発明の実施形態を、図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【0056】
以下の説明では、データを読み出したとき、ビット線に流れた電流が既定値以上(即ちセルが“オン”)の場合をデータ“1”、あるいは“1”読み出し、反対に既定値未満(即ちセルが“オフ”)の場合をデータ“0”、あるいは“0”読み出しとする。なお、データ“1”か“0”かを記憶する二値メモリを例示するが、この発明は、多値メモリにも当然適用できる。
【0057】
[第1の実施形態]
図1Aは、この発明が適用される不揮発性半導体メモリの一例を概略的に示すブロック図である。
【0058】
図1Aに示すように、不揮発性半導体メモリは、メモリセルアレイ1(以下、単にセルアレイという)を有する。セルアレイ1には、複数のメモリセル(以下単にセルという)MCがマトリクス状に配置されている。図1Bにセルアレイ1の等価回路図を示す。図1Bには、一例としてNOR型フラッシュメモリのセルアレイ1が示されている。
【0059】
図1Bに示すように、セルMCのドレイン端子Dはビット線BLに接続され、そのソース端子Sはソース線SLに接続され、そのゲート(制御ゲートCG)はワード線WLに接続されている。セルMCは、チャネルと制御ゲートCGとの間に、電子を蓄積する浮遊ゲートFGを有する。セルMCは、浮遊ゲートに蓄積する電子の量を変えることで、スレシホールド電圧VTHを可変に設定できる。データが“1”か“0”かは、スレシホールド電圧VTHに応じて設定され、セルMCに記憶される。
【0060】
制御回路2は、外部から供給されたコマンドCMDに基づいて、データ書き込み時、またはデータ消去時にセルMCのスレシホールド電圧を制御する。たとえば制御回路2は、特にビット線バイアス回路3、ソース線制御回路4,およびワード線バイアス回路5などを制御し、セルアレイ1のバイアス状態を変える。セルアレイ1のバイアス状態を変えることで、セルMCのスレシホールド電圧VTHが制御される。
【0061】
ビット線バイアス回路3は、ビット線BLに対してビット線バイアス電圧を供給する。ビット線バイアス回路3は、たとえば制御回路2からの制御信号に基づいて、ビット線バイアス電圧を、データ読み出し時とデータ書き込み時とで互いに切り替える。
【0062】
ソース線バイアス回路4は、ソース線SLに対してソース線バイアス電圧を供給する。ソース線バイアス電圧は、通常“0V”である。ただし、電子をソース線SLに対して放出させてデータ消去を行う方式の場合、たとえば制御回路2からの制御信号に基づいて、データ消去時、ソース線バイアス電圧VSLを“0V”より高い電圧とする。
【0063】
ワード線バイアス回路5は、ローデコーダ6によって選択されたワード線WL、あるいは全てのワード線WLに対してワード線バイアス電圧を供給する。ワード線バイアス回路5は、データ読み出し時、データ書き込み時、データ消去時、たとえば制御回路2からの制御信号に基づいて、ワード線バイアス電圧を、それぞれ切り替える。
【0064】
カラムセレクタ7は、カラムデコーダ8によって選択されたビット線BLを、I/O回路9に接続する。
【0065】
I/O回路9は、たとえばデータ読み出し時、選択されたビット線BLに流れた電流を既定値IREFと比較し、データ“0”かデータ“1”かの判断を行う。
【0066】
アドレスバッファ10は、ローアドレスをローデコーダ6に供給するとともに、カラムアドレスをカラムデコーダ8に供給する。
【0067】
アドレスカウンタ11は、通常、外部から供給されるアドレスを、チップ内部で発生させる必要があるとき、たとえば制御回路2からの制御信号に基づいて、アドレスをチップ内部で発生させる。アドレスカウンタ11は、アドレスをインクリメントし、異なるアドレスを順次発生させてアドレスバッファ10に供給する。
【0068】
ベリファイ回路12は、データ書き込み時、データ消去時に、スレシホールド電圧VTHが所望のレベルであるか否かを検知する回路である。たとえばベリファイ回路12は、データ書き込み後、またはデータ消去後にベリファイを行った際、I/O回路9がデータ“0”と判断したかデータ“1”と判断したかに基づいて、スレシホールド電圧VTHが所望のレベルであるか否かを検知する。
【0069】
図2は、この発明の第1の実施形態に係る不揮発性半導体メモリのスレシホールド電圧制御方法を示す流れ図で、特にデータ消去シークエンスに適用した例を示している。
【0070】
まず、図2中のST.1に示すように、データ消去に先立ち、消去前プログラムを行う。消去前プログラムでは、データを消去するブロック内の全て、もしくは一部のワード線およびビット線に対して書き込みパルスを与え、全てのセルにデータ“0”かデータ“1”かのいずれかに揃える。図3Aは、消去前プログラム終了後のスレシホールド電圧VTHの分布を示している。
【0071】
図3Aに示すように、本例では、全てのセルのスレシホールド電圧VTHが、スレシホールド電圧VTHの分布がデータ消去後とは逆の分布となるようにデータ“0”の方向にシフトされる。
【0072】
次に、ST.2に示すように、データ消去(ERASE)を行う。これにより、全てのセルのスレシホールド電圧は、データ“0”からデータ“1”の方向にシフトされる。
【0073】
本例では、データ消去に自動消去(AUTO-ERASE)と呼ばれる方式を採用している。自動消去では、データを消去した後(ST.21)、消去ベリファイを行い(ST.22)、セルのスレシホールド電圧VTHが消去ベリファイ電圧VEV未満か否かを判断する(ST.23)。スレシホールド電圧VTHが消去ベリファイ電圧VEV以上である場合(NO.)には、データ消去を繰り返す。図3Bは自動消去中のスレシホールド電圧VTHの分布を示し、図3Cは自動消去終了後のスレシホールド電圧VTHの分布を示している。
【0074】
このように消去ベリファイとデータ消去とを繰り返すことで、図3Cに示すように、全てのセルのスレシホールド電圧VTHは、まず、“VTH<VEV”に規定される。
【0075】
ここまでの工程は、周知の方法を使用することが可能である。
【0076】
また、消去前プログラムについては必ずしも行う必要は無いので、必要に応じて行われれば良い。
【0077】
次に、ST.3に示すように、スレシホールド電圧VTHの分布幅を縮小化する。ここで、第1の実施形態では、スレシホールド電圧VTHの下限値VTHMINを、少なくとも2段階以上に分けて段階的に上昇させ、その分布幅を縮小化していく。
【0078】
その一例として本例では、図2に示すように、下限値VTHMINを第一のバイアス条件で第1の下限値に上昇させる第1の工程(ST.31)と、この第1の下限値を、第二のバイアス条件でさらに消去ベリファイ電圧VEVに近い、第2の下限値に上昇させる第2の工程(ST.32)とを具備している。
【0079】
以下、第1の工程(ST.31)、および第2の工程(ST.32)の具体例を説明する。
【0080】
第1の工程(ST.31)では、スレシホールド電圧VTHの下限値VTHMINを、第1の過消去ベリファイ電圧VOEV1以上に規定する。これにより、全てのセルのスレシホールド電圧VTHは“VOEV1<VTH<VEV”に規定される。
【0081】
このように規定するための一例は、データが消去されるブロック内の全てのワード線に、ある一定のバイアス電圧を印加した状態で、ビット線に流れるビット線電流を、既定値IREF-LEAK以下に減らすことである。
【0082】
全てのワード線に印加する、ある一定のバイアス電圧の例は、第1の過消去ベリファイ電圧VOEV1であり、その数値例は“−1V”である。このとき、スレシホールド電圧VTHを“−1V”以上にするためには、既定値IREF-LEAKを、データ読み出し時の既定値IREFより小さく設定すると良い。
【0083】
たとえばワード線の電圧がセルのスレシホールド電圧VTHより“1V”以上高くなったとき、ビット線に“10μA”以上の電流が流れる、とする。この“10μA”を、データ読み出し時に、“0”読み出しか“1”読み出しかを区別するための既定値IREFとする。この場合、ビット線電流が“10μA”以上の電流が流れれば“1”読み出しとなり、反対に“10μA”未満ならば“0”読み出しとなる。
【0084】
このように読み出し時の既定値IREFを“10μA”としたとき、リーク電流検知時(以下リークビット線チェックという)の既定値IREF-LEAKを“10μA”未満、たとえば“1μA”に設定される。即ち、リークビット線チェック時、ビット線に“1μA”以上の電流が流れれば“1”読み出しとなり、反対に“1μA”未満であれば“0”読み出しとなる。この状態を目視化したものが図4Aであり、これを実現するための一回路構成例が図4Bである。
【0085】
図4Bに示すように、既定値発生回路13は、たとえばI/O回路9に対して既定値を供給する。既定値発生回路13には、たとえば制御回路2から出力されたリークビット線チェックを制御する信号SLEAKを受けたとき、既定値を“10μA”から“1μA”に切り替える。
【0086】
いま、ワード線に印加される、ある一定のバイアス電圧は“−1V”であるから、ビット線電流Iが“I≧10μA”であれば、セルのスレシホールド電圧VTHは“VTH≦−2V”である、と想定できる。
【0087】
また、ビット線に流れる電流Iが“10μA>I≧1μA”であれば、セルのスレシホールド電圧VTHは“−2V<VTH≦−1V”である、と想定できる。
【0088】
よって、ビット線に流れる電流Iを“I<1μA”とすれば、セルのスレシホールド電圧VTHは“VTH>−1V”にできる。
【0089】
このように“0”読み出しか“1”読み出しかを区別するための既定値を、リークビット線チェック時に、読み出し時よりも厳しくし、たとえばビット線に流れる電流を“1μA”未満とする。これにより、スレシホールド電圧VTHを、たとえば第1の過消去ベリファイ電圧VOEV1以上にすることができる。
【0090】
なお、既定値IREF-LEAKは“1μA”に設定したが、この値は、ビット線の容量等、いくつかの要素を勘案して適切に設定されればよい。
【0091】
ビット線に流れる電流を“1μA”未満とする方法としては、自己収束法を好ましく用いることができる。以下、ST.31に自己収束法を用いた場合の一例を説明する。
【0092】
図2中のST.31-1において、まず、カラムアドレスを初期化する。
【0093】
次に、ST.31-2において、リークビット線チェックを行う。これは、初期化されたカラムアドレスによってビット線BL1を選択し、この選択ビット線BL1のリーク電流を検知する。このときの既定値IREF-LEAKは、読み出し時の既定値IREF未満の、たとえば“1μA”とする。図5Aに、リーク電流検知時のセルアレイ1のバイアス状態を示す。
【0094】
図5Aに示すように、データが消去されるブロック内の全てのワード線WL1、WL2、WL3、WL4、…は非選択とされ、たとえば非選択バイアス電圧が印加されている。非選択バイアス電圧の数値例は“−1V”である。選択ビット線BL1には、読み出し用バイアス電圧が印加されている。読み出し用バイアス電圧の数値例は“0.5V”である。非選択ビット線BL2、BL3、BL4、…は開放状態(OPEN)か、あるいは“0V”とする。また、ソース線SLは“0V”とする。
【0095】
次に、ST.31-3において、図5Aに示すバイアス状態で、選択ビット線BL1に流れたリーク電流が“1μA”未満か否かを判断する。これは、選択ビット線BL1に流れたリーク電流を、既定値IREF-LEAKと比較して、“0”読み出しか“1”読み出しかで判断する。
【0096】
この判断の結果、“0”読み出し、即ちリーク電流は“1μA”未満と判断された場合(YES.)、ST.31-4に進む。
【0097】
ST.31-4では、カラムアドレスが最終カラムアドレスであるか否かが判断される。ST.31-4において、“最終カラムアドレスではない”と判断された場合(NO.)、ST.31-5に進む。
【0098】
ST.31-5では、カラムアドレスがインクリメントされる。これは、たとえば現在のカラムアドレスに“+1”すれば良い。カラムアドレスをインクリメントした後、再度、ST.31-2に戻る。
【0099】
ST.31-2では、図5Bに示すように、ビット線BL1に代わって、ビット線BL2が、インクリメントされたカラムアドレスによって選択され、選択ビット線BL2には読み出し用バイアス電圧(0.5V)が印加される。
【0100】
次に、ST.31-3において、図5Bに示すバイアス状態で、選択ビット線BL2に流れたリーク電流が、“1μA”未満か否かを判断する。
【0101】
この判断の結果、“1”読み出し、即ちリーク電流が“1μA”以上と判断された場合(NO.)、ビット線BL2には、図5Bに示すようにスレシホールド電圧VTHが“−1V”以下のセル(図5BではMC32)が接続されている、と想定することができる。
【0102】
よって、リーク電流は“1μA”以上と判断された場合(NO.)、ST.31-6に進む。
【0103】
ST.31-6では、自己収束動作を行う。図5Cに、自己収束動作時のセルアレイ1のバイアス状態を示す。
【0104】
図5Cに示すように、ビット線BL2に、読み出し用バイアス電圧よりも高い自己収束用バイアス電圧(自己収束パルス)を印加する。自己収束用バイアス電圧の例は、たとえば書き込み用バイアス電圧と同じ電圧であり、その数値例は“5V”である。
【0105】
なお、ワード線WL1、WL2、WL3、WL4、…には、自己収束に最適なバイアス電圧、たとえば実際には“0V〜−1V”といった電圧を印加し、非選択ビット線BL1、BL3、BL4、…は開放状態(OPEN)か、あるいは“0V”、ソース線SLは“0V”とする。
【0106】
図5Cに示すバイアス状態とすることで、セルMC32に対して自己収束がかかり、そのスレシホールド電圧VTHは、一般に自己収束スレシホールド電圧VTH *と呼ばれる値に向かって上昇していく。
【0107】
ここで、自己収束スレシホールド電圧VTH *について説明しておく。この自己収束スレシホールド電圧VTH *は、たとえば紫外線消去後のセルのスレシホールド電圧VTH-UVに比例する。つまり、自己収束スレシホールド電圧VTH *は、たとえばセルのチャネルの不純物濃度を調節することで制御することが可能である(参考文献: S.Yamada et al,“A SELF-CONVERGENCE ERASING SCHEME FOR A SINPLE STACKED GATE FLASH EEPROM”, IEDM Tech. Dig. pp307-310(1991))。
【0108】
この第1の実施形態では、セルの自己収束スレシホールド電圧VTH *が、第1の過消去ベリファイ電圧VOEV1以上になるように、チャネルの不純物濃度が調節されることが好ましい。これにより、スレシホールド電圧VTHが“−1V”以下であるセルについては、自己収束のメカニズムによって、第1の過消去ベリファイ電圧VOEV1を上回る値に上昇する。
【0109】
なお、自己収束スレシホールド電圧VTH *は、第1の過消去ベリファイ電圧VOEV1以上、かつ消去ベリファイ電圧VEV未満の範囲内に設定されるのが好ましい。自己収束のメカニズムによって、セルのスレシホールド電圧VTHが、消去ベリファイ電圧VEV以上になってしまうことを防ぐ観点からである。
【0110】
自己収束動作を終えた後、再度、ST.31-2に進み、再度、図5Bに示すバイアス状態とする。
【0111】
次に、ST.31-3において、図5Bに示すバイアス状態で、選択ビット線BL1に流れたリーク電流が、“1μA”未満か否かを判断する。
【0112】
この判断の結果、再度“1”読み出し、即ちリーク電流が“1μA”以上と判断された場合(NO.)には、再度、自己収束動作を繰り返す。
【0113】
また、反対に“0”読み出し、即ちリーク電流は“1μA”未満と判断された場合(YES.)には、ST.31-4に進む。
【0114】
ST.31-4では、最終カラムアドレスか否かが判断される。“最終カラムアドレスではない”(NO.)と判断されたとき、ST.31-5に進み、カラムアドレスをインクリメントしたうえで、ST.31-2以降の動作を繰り返す。
【0115】
また、反対に“最終カラムアドレスである”(YES.)と判断されたとき、第1の工程(ST.31)が終了する。図3Dに第1の工程(ST.31)終了後のスレシホールド電圧VTHの分布を示す。
【0116】
図3Dに示すように、第1の工程(ST.31)終了後、全てのセルのスレシホールド電圧VTHは“VOEV1<VTH<VEV”に規定される。
【0117】
次に、第2の工程(ST.32)に進む。
【0118】
この第2の工程(ST.32)には、弱プログラム法を好ましく用いることができる。以下、第2の工程(ST.32)に、弱プログラム法を用いた場合の一例を説明する。
【0119】
まず、図2に示すST.32-1において、アドレスを初期化する。
【0120】
次に、ST.32-2において、過消去ベリファイを行う。図6Aに、リーク電流検知時のセルアレイ1のバイアス状態を示す。
【0121】
これには、まず、図6Aに示すように、初期化されたアドレスによって選択されたワード線WL1に、過消去ベリファイ用バイアス電圧を印加する。過消去ベリファイ用バイアス電圧の数値例は、第2の過消去ベリファイ電位VOEV2を“1.5V”としたとき、これに“1V”を付加した“2.5V”である。“1V”を付加する理由は、ワード線の電圧がセルのスレシホールド電圧VTHよりも“1V”以上高くなったときに、ビット線に流れる電流を“10μA”とし、これを過消去ベリファイ時の既定値IREFとするからである。この既定値IREFは、読み出し時と同じである。
【0122】
なお、非選択ワード線WL2、WL3、WL4、…には非選択バイアス電圧を印加しておく。非選択バイアス電圧の数値例は、たとえば“−1V”である。
【0123】
次に、初期化されたアドレスによって選択されたビット線BL1に、読み出し用バイアス電圧(0.5V)を印加する。これにより、セルMC11は、過消去ベリファイの対象セルとして選択される。
【0124】
なお、非選択ビット線BL2、BL3、BL4、…は開放状態(OPEN)か、あるいは“0V”とし、ソース線は“0V”とする。
【0125】
次に、ST.32-3において、図6Aに示すバイアス状態で、選択ビット線BL1に流れるオン電流が、たとえば“10μA”未満か否かを判断する。これは、選択ビット線BL1のオン電流を、既定値IREFと比較して、“0”読み出しか“1”読み出しかで判断する。
【0126】
この判断の結果、“0”読み出し、即ちオン電流は“10μA”未満と判断された場合(YES.)、ST.32-4に進む。
【0127】
ST.32-4では、アドレスが最終アドレスであるか否かが判断される。“最終アドレスではない”と判断された場合(NO.)、ST.32-5に進む。
【0128】
ST.32-5では、アドレスがインクリメントされる。これは、たとえば現在のアドレスに“+1”すれば良い。アドレスをインクリメントした後、再度、ST.32-2に戻る。
【0129】
このST.32-2では、図6Bに示すように、ビット線BL1に代わって、インクリメントされたアドレスによって選ばれた選択ビット線BL2に、読み出し用バイアス電圧(0.5V)を印加する。これにより、セルMC12が、過消去ベリファイの対象セルとして選択される。
【0130】
次に、ST.32-3において、図6Bに示すバイアス状態で、ビット線BL2に流れたオン電流が、“10μA”未満か否かを判断する。
【0131】
この判断の結果、“1”読み出し、即ちオン電流が“10μA”以上と判断された場合(NO.)、選択セルMC12のスレシホールド電圧VTHが“1.5V”以下である、と想定することができる。
【0132】
したがって、オン電流は“10μA”以上と判断された場合(NO.)、ST.32-6に進む。
【0133】
ST.32-6では、弱プログラム動作が行われる。図6Cに、弱プログラム動作時のセルアレイ1のバイアス状態を示す。
【0134】
図6Cに示すように、選択ワード線WL1に、弱プログラム用ワード線バイアス電圧(弱プログラムパルス)を印加する。弱プログラム用バイアス電圧の数値例は“3V”である。
【0135】
また、選択ビット線BL2には弱プログラム用ビット線バイアス電圧(弱プログラムパルス)を印加する。弱プログラム用ビット線バイアス電圧の例は、書き込み用バイアス電圧と同じであり、その数値例は5Vである。また、非選択ワード線WL2、WL3、WL4、…には非選択バイアス電圧(−1V)を印加し、非選択ビット線BL1、BL3、BL4、…は、開放状態(OPEN)か、あるいは“0V”とし、ソース線SLは“0V”とする。
【0136】
図6Cに示すバイアス状態とすることで、選択セルMC12に対して弱プログラムが行われ、そのスレシホールド電圧VTHが上昇する。このような弱プログラム動作では、選択セルMC12に接続されたワード線WL1とビット線BL2とに積極的に電圧を加えて、そのドレインから電子を書き込む。このため、選択ワード線WL1に印加される弱プログラム用バイアス電圧、および選択ビット線BL2に印加される書き込み用バイアス電圧はそれぞれ、通常の書き込み動作と同様にμs単位のパルスで与えられれば良い。
【0137】
なお、弱プログラム用バイアス電圧は、通常のプログラム用バイアス電圧未満の値とされる。たとえば通常のプログラム用バイアス電圧の数値例は“9V”である。これにより、弱プログラム時、選択セルMC12の浮遊ゲートに対して、たとえば単位時間当たりに注入される電子の量は、通常のプログラム時よりも少なくなる。よって、選択セルMC12のスレシホールド電圧VTHの上昇量は、通常のプログラム時に比べて小さくなり、スレシホールド電圧VTHを、わずかな量上昇させることができる。
【0138】
弱プログラム動作を終えた後、再度、ST.32-2に進み、再度、図6Bに示すバイアス状態として、ビット線BL2に流れたオン電流が、“10μA”未満か否かを判断する。
【0139】
この判断の結果、再度“1”読み出し、即ちオン電流が“10μA”以上と判断された場合(NO.)には、再度、弱プログラム動作を繰り返す。
【0140】
また、反対に“0”読み出し、即ちオン電流は“10μA”未満と判断された場合(YES.)には、ST.32-4に進む。
【0141】
ST.32-4では、最終アドレスか否かが判断される。“最終アドレスではない”(NO.)と判断されたとき、ST.32-5に進み、アドレスをインクリメントしたうえで、ST32-2以降の動作を繰り返す。
【0142】
ここで、アドレスのうち、カラムアドレスが最終までインクリメントされた後は、カラムアドレスは初期値に戻り、続いてローアドレスがインクリメントされ、ワード線WL1に代わって、ワード線WL2が選択される。このようにして、データが消去されるブロック内の全てのセルに対して一つ一つ、弱プログラム動作が必要か否かが判断され、必要ならば弱プログラム動作が行われる。そして、最後のセルである、即ち“最終アドレスである”(YES.)と判断されたとき、第2の工程(ST.32)が終了する。図3Eに第2の工程(ST.32)終了後のスレシホールド電圧VTHの分布を示す。
【0143】
図3Eに示すように、第2の工程(ST.32)終了後、全てのセルのスレシホールド電圧VTHは、“VOEV2<VTH<VEV”に規定される。
【0144】
このように第2の工程(ST.32)が終了することで、この発明の第1の実施形態を用いたデータ消去シークエンスが終了する。
【0145】
このような第1の実施形態であると、第1の工程(ST.31)において、全てのセルのスレシホールド電圧VTHが、たとえば“−1V”以上にシフトされる。
【0146】
このため、第2の工程(ST.32)において、弱プログラム法を用いた場合、非選択ワード線に印加する電圧を“−1V”とすれば、これら非選択ワード線に接続される非選択セルは、全て十分にカットオフすることができる。
【0147】
したがって、非選択セルが選択ビット線に対して、既定値IREF以上のリーク電流を流してしまう事情を抑制でき、これに起因した、選択セルのスレシホールド電圧VTHの誤検知を抑制することができる。
【0148】
また、非選択セルが選択ビット線に対して流すリーク電流が減るので、選択ビット線に流れる電流は、ほぼ選択セルが流す電流に対応するように規定できる。このため、非選択セルが流す電流が、選択セルが流す電流に加算されることに起因した選択セルに対する書き込み過ぎの発生を抑制することができる。
【0149】
さらに、非選択セルが選択ビット線に対して流すリーク電流が減るので、選択ビット線の電圧が、元の設定値よりも低くなる事情も抑制できる。このため、低下した選択ビット線の電圧が、突然元の設定値に上昇する、という現象に起因した、選択セルに対する書き込み過ぎの発生についても抑制することができる。
【0150】
また、第1の工程(ST.31)において、スレシホールド電圧VTHの上昇量は、わずかで済む。このため、自己収束法を第1の工程(ST.31)に用いた場合でも、第1の工程(ST.31)に要する時間は、わずかで済む。さらには、非選択セルが流すリーク電流に起因した選択ビット線の電圧の低下を抑制でき、たとえば弱プログラム動作の繰り返し回数の減少を図れる。
【0151】
したがって、第1の実施形態によれば、動作の高速性を損なうことなく、所望の範囲を逸脱したスレシホールド電圧を、誤動作や誤検知の発生を抑制しつつ、かつ動作の高速性を損なわずに、所望の範囲に回復できる。
【0152】
このような第1の実施形態に係るスレシホールド電圧制御方法を、データ消去シークエンスとして、図1に示すような不揮発性半導体メモリの、たとえば制御回路2に組み込む。
【0153】
このような不揮発性半導体メモリによれば、データ消去時、所望の範囲を逸脱したスレシホールド電圧を、誤動作や誤検知の発生を抑制しつつ、かつ動作の高速性を損なわずに、所望の範囲に回復できる。
【0154】
また、この発明は、図7に示すように、1ブロック内に複数のI/O回路9を持ち、複数のビット線に対して同時にデータを読み書きする不揮発性半導体メモリに、特に有効である。
【0155】
図7に示す不揮発性半導体メモリでは、複数の選択ビット線のうちの一本にでも過大なリーク電流が流れれば、ビット線バイアス回路3から出力された書き込み用バイアス電圧が低下する。
【0156】
また、図7に示すように、特に書き込み用バイアス電圧を、たとえばチャージポンプ回路14を用い、電源電圧を昇圧して得ている場合には、上記書き込み用バイアス電圧の低下はさらに顕著である。
【0157】
この発明では、たとえば第2の工程(ST.32)において、非選択セルが選択ビット線に流すリーク電流を低下できるので、この発明は、図7に示すような1ブロック内に複数のI/O回路9を持ち、複数のビット線に対して同時にデータを読み書きする不揮発性半導体メモリに、特に有効である。
【0158】
また、図7に示すように、書き込み用バイアス電圧を、チャージポンプ回路14を用い、たとえば電源電圧を昇圧して得ている不揮発性半導体メモリにも、有効である。
【0159】
なお、後で変形例としても一部記述されるが、メモリセルのスレシホールド電圧の検知方法は一例を示しているので、バイアス条件や検知方法に多くの変形例がある事は勿論である。また、スレシホールド電圧をシフトさせる2段階でのセルに対するバイアス条件についても、セルの特性に応じて、その最適な絶対値は変化する事は勿論である。
【0160】
[第1の実施形態の第1の変形例]
上記第1の実施形態では、まず、自己収束を全カラムに対して実行した後、先頭カラムに戻ってから弱プログラムシークエンスに入っている。
【0161】
しかし、カラム毎に自己収束を終了したら、引き続いて弱プログラムを行い、最終的にセルMCのスレシホールド電圧VTHを第2の過消去ベリファイ電圧VOEV2を上回るようにした後に、カラムアドレスをインクリメントしても良い。
【0162】
この第1の変形例は、そのようにシークエンスを変形したものである。
【0163】
図8は、第1の実施形態の第1の変形例を示す流れ図である。
【0164】
図8に示すように、第1の変形例に係るシークエンスは、ST.31-3までは図1に示すシークエンスと同様であるが、ST.31-3において、“0”読み出し、即ちリーク電流が“1μA”未満と判断された場合(YES.)以降のシークエンスが異なる。
【0165】
即ち、図8に示すように、ST.31-3において、選択ビット線に流れるリーク電流が“1μA”未満と判断された場合(YES.)、最終カラムアドレスか否かを判断せずに、第2の工程(ST.32)のST.32-2に進むようにしている。そして、選択セルに対して過消去ベリファイを行う。
【0166】
過消去ベリファイの後、ST.32-3において、選択セルがビット線に流すオン電流が“10μA”未満か否かを判断する。
【0167】
この判断の結果、選択セルが流すオン電流が“10μA”未満と判断された場合(NO.)、第1の実施形態と同様にST.32-6に進み、弱プログラムを行った後、ST.32-2に戻る。反対に、オン電流が“10μA”以上と判断された場合(YES.)、ST.32-4’に進み、最終ローアドレスか否かを判断する。
【0168】
この判断の結果、“最終ローアドレスではない”と判断された場合(NO.)、ST32-5'に進み、ローアドレスをインクリメントした後、ST.32-2に戻る。
【0169】
反対に“最終ローアドレスである”と判断された場合(YES.)、ST.32-7に進み、最終カラムアドレスか否かを判断する。
【0170】
この判断の結果、“最終カラムアドレスではない”と判断された場合(NO.)、ST32-8に進み、ローアドレスを初期化するとともに、カラムアドレスをインクメントする。この後、第1の工程(ST.31)のST.31-2に戻り、インクリメントされたカラムアドレスによって選択されたビット線に対し、リークビット線チェックを行う。
【0171】
反対に“最終カラムアドレスである”と判断された場合(YES.)には、消去終了となる。
【0172】
このような第1の変形例であると、カラムアドレスをスキャン(インクリメント)していくシークエンスを、第1の実施形態の2回から1回に減らすことができ、消去シークエンスの簡単化を図ることができる。
【0173】
[第1の実施形態の第2の変形例]
次に、第1の実施形態の第2の変形例を説明する。
【0174】
この第2の変形例は、リークビット線チェック時(ST.31-2)におけるバイアス状態の変形に関する。
【0175】
図9は、第2の変形例に係るリークビット線チェック時のセルアレイのバイアス状態を示す図である。
【0176】
図9に示すように、データが消去されるブロック内の全てのワード線WL1、WL2、WL3、WL4、…に対して印加する非選択バイアス電圧を、第1の過消去ベリファイ電圧VOEV1よりも高い電圧としても良い。その数値例は、第1の過消去ベリファイ電圧VOEV1を“−1V”としたとき、それよりも“1V”高い“0V”とすることである。
【0177】
このような第1の変形例では、リークビット線チェック時にワード線に与える非選択バイアス電圧を、第1の過消去ベリファイ電圧VOEV1よりも“1V”高くする。
【0178】
このため、リークビット線チェック時の既定値IREF-LEAKを、通常の読み出し既定値IREFと同じ、たとえば“10μA”としても、スレシホールド電圧VTHが“−1V”以下のセルを検知することができる。ワード線のバイアス電圧が“0V”のとき、ビット線に“10μA”の電流が流れれば、セルのスレシホールド電圧VTHは“−1V”以下である、と想定できるからである。
【0179】
このような第2の変形例による利点は、リークビット線チェック時と、読み出し時とで、“0”読み出しか“1”読み出しかを区別するための既定値を切り替える必要がないことである。このため、たとえば図4Bに示すような、既定値発生回路13から、リークビット線チェック時とデータ読み出し時とで既定値を切り替える回路や、この既定値切り替えを制御する信号SLEAKを発生する回路等を省略することができる。
【0180】
よって、第2の変形例によれば、第1の実施形態から得られる効果に加えて、回路の簡素化を図れ、集積度の向上や、歩留りの向上に有利である、という効果を得ることができる。
【0181】
[第1の実施形態の第3の変形例]
次に、第1の実施形態の第3の変形例を説明する。
【0182】
第1の工程(ST.31)における過消去ビットの検知シークエンス(ST.31-1〜ST.31-6)は、第2の工程(ST.32)における過消去セルの検知シークエンス(ST.32-1〜ST.32-6)と可能な限り合わせられるのが好ましい。制御の煩雑さを解消して、素子数の削減、および動作の高速化等を図る観点からである。
【0183】
図10は、第1の実施形態の第3の変形例に係るリークビット線チェック時のセルアレイ1のバイアス状態を示す図である。
【0184】
図10に示すように、リークビット線チェック時、たとえば先頭のワード線WL1の電圧を過消去ベリファイ電圧、たとえば“2.5V”とし、他のワード線WL2、WL3、WL4、…、の電圧をそれぞれ非選択電圧、たとえば“−1V”としておく。このバイアス状態は、第1の実施形態で説明した過消去ベリファイ時のバイアス状態(たとえば図6A)と同じバイアス状態と同じである。
【0185】
図10に示すバイアス状態で、たとえば第1の実施形態と同様に、選択ビット線BL1に流れたリーク電流が、“1μA”未満か否かを判断する。
【0186】
この判断の結果、“1”読み出し、即ちリーク電流が“1μA”以上と判断された場合、少なくとも次の2つのケースが考えられる。
【0187】
[ケース1]
先頭のワード線WL1に接続されたセルMC11のスレシホールド電圧VTHが“2.5V”以下である。
【0188】
[ケース2]
非選択ワード線WL2、WL3、WL4、…に接続されたセルMC21、MC31、MC41、…の少なくとも一つに、スレシホールド電圧VTHが“−1V”以下のものが存在する。
【0189】
“ケース1”の場合には、セルMC11のスレシホールド電圧VTHが“−1V”以下であれば、そのスレシホールド電圧VTHを上昇させる必要がある。
【0190】
“ケース2”の場合には、セルMC21、MC31、MC41、…の少なくとも一つのスレシホールド電圧VTHを上昇させる必要がある。
【0191】
したがって、第1の実施形態と同様に、“1”読み出し、即ちリーク電流が“1μA”以上と判断された場合には、自己収束動作を行えば良い。
【0192】
なお、セルMC12のスレシホールド電圧VTHが“−1V”を上回っていれば、“2.5V”以下であっても、この段階でスレシホールド電圧VTHを上昇させる必要はない。しかしながら、上昇動作を行ったとしても、それによって不良が発生することはない。
【0193】
ただし、セルMC12のスレシホールド電圧VTHが、“2.5V”を上回るまで、自己収束動作を行うと、非常に長い時間がかかってしまう場合が起こり得る。
【0194】
このため、第3の変形例においては、たとえば自己収束動作を、セルMCのスレシホールド電圧VTHが“−1V”を上回るレベルまで上昇するであろう条件にて行い、自己収束動作後の再チェックでは、リーク電流が、たとえ既定値以上であったとしても、そのビット線の自己収束動作は、強制的に終了させてしまうようにしても良い。このようなシークエンスの一例を、図11に示す。
【0195】
図11に示すように、第3の変形例に好ましいシークエンスは、ST.31-3までは図1に示すシークエンスと同様であるが、ST.31-3において、“1”読み出し、即ちリーク電流が“1μA”以上と判断された場合(NO.)以降のシークエンスが異なる。
【0196】
即ち、図11に示すように、ST.31-3において、リーク電流が“1μA”以上と判断された場合(NO.)、ST.31-7に進み、サイクルが“0”か否かを判断する。なお、ここでいうサイクルとは、選択されたビット線の自己収束動作の履歴を示すもので、“サイクル=0”ならば履歴無し、“サイクル=0”以外ならば履歴有りを表す。
【0197】
ST.31-7において、“サイクル=0である”と判断された場合(YES)、ST.31-6に進み、自己収束動作を行う。
【0198】
次に、ST.31-8に進み、サイクルに“+1”した後、再度ST.31-2に進み、リーク電流を再度チェックする。再度のチェックにおいて、リーク電流が“1μA”以上と判断された場合(NO.)、ST.31-7に進む。このときのST.31-7では、“サイクル=1”となっている。このため、ST.31-7では“サイクル=0ではない”と判断され、ST.31-9に進み、たとえばST.31-9においてサイクルを“0”に戻した後、ST.31-4に進む。
【0199】
以降は、図1に示すシークエンスと同様である。
【0200】
このようなシークエンスであると、たとえば2.5Vにバイアスされた先頭ワード線WL1に接続されているセルMCのスレシホールド電圧が2.5Vを上回るまで、自己収束動作を繰り返さずに済む。このため、特に第2の変形例において、第1の工程(ST.31)に要する時間を短縮することが可能となる。
【0201】
以上のような第3の変形例においても、選択ビット線BL1中のどのセルが過消去セルであるかを特定せずに収束動作をかける、ということで、第1の実施形態と基本的には同じ考え方である。
【0202】
このような第3の変形例によれば、第1の実施形態に比較して、リークビット線チェック時、全てのワード線を、たとえば“−1V”とする制御が必要ない。よって、全てのワード線を、たとえば“−1V”とするような回路等を省略でき、素子数の削減、および動作の高速化等を図ることができる。
【0203】
[第1の実施形態の第4の変形例]
次に、第1の実施形態の第4の変形例を説明する。
【0204】
上記第3の変形例では、リーク電流検知時のバイアス状態を、過消去ベリファイ時のバイアス状態と同じとすることで、制御の煩雑さを解消した。
【0205】
この第4の変形例は、バイアス状態ばかりでなく、さらにリークビット線チェック時の検知方法を、過消去ベリファイ時の検知方法と同じとし、制御の煩雑さを、さらに解消しようとするものである。
【0206】
図12は、第4の変形例に係るリークビット線検知時のバイアス状態を示す図である。
【0207】
図12に示すバイアス状態は、図10に示したバイアス状態と同じである。ただし、“0”読み出しか“1”読み出しかを区別する既定値は、たとえば“1μA”に代えて、過消去ベリファイ時の既定値と同じ、たとえば“10μA”とする。
【0208】
図12に示すバイアス状態で、たとえば選択ビット線BL1に流れたリーク電流が、通常の読み出し時と同じ“10μA”未満か否かを判断する。
【0209】
この判断の結果、“1”読み出し、即ちリーク電流が“10μA”以上と判断された場合、少なくとも次の2つのケースが考えられる。
【0210】
[ケース1]
先頭のワード線WL1に接続されたセルMC11のスレシホールド電圧VTHが“1.5V”以下である。
【0211】
[ケース2]
非選択ワード線WL2、WL3、WL4、…に接続されたセルMC21、MC31、MC41、…の少なくとも一つに、スレシホールド電圧VTHが“−2V”以下のものが存在する。
【0212】
第4の変形例の場合、第3の変形例と異なり、非選択ワード線WL2、WL3、WL4、…に接続されたセルMC21、MC31、MC41、…のスレシホールド電圧VTHが“−2V”を上回り“−1V”以下のものは検知できない。
【0213】
しかし、スレシホールド電圧VTHが“−2V”以下、即ち過消去セルの検知シークエンス(ST.32-1〜ST.32-6)において、過消去ベリファイ時に、既定値以上の電流を流してしまうようなセルの発生は抑制できる。
【0214】
また、スレシホールド電圧VTHが“−2V”を上回り“−1V”以下のセルが存在することによる誤動作の確率が少なくなるように配慮すれば、何等問題はない。
【0215】
あるいは、第3、第4の変形例の図10、20の場合共に、過消去ベリファイ時も含めて非選択ワード線の電位を−1Vではなく0Vに設定したり、あるいは、多少の回路の複雑さは許容して、リークビット線チェック時のみ非選択ワード線電位を0Vとする等のバイアス条件の変形例がある事は勿論である。これらは各動作のマージンをどの程度確保するかにも依存する。
【0216】
このような第4の変形例においても、選択ビット線BL1中のどのセルが過消去セルであるかを特定せずに収束動作をかける、ということで、第1の実施形態と基本的には同じ考え方である。
【0217】
このような第4の変形例によれば、第3の変形例と比較して、リークビット線検知時の既定値を、過消去ベリファイ時の既定値と同じとすることで、さらに制御の煩雑さを抑制することができる。よって、リークビット線チェックの制御に必要な回路をさらに省略でき、素子数の削減、および動作の高速化等を、より図ることができる。
【0218】
なお、第1の過消去ベリファイ電圧VOEV1は当然、第2の過消去ベリファイ電圧VOEV2より低い値に設定されるが、その設定にあたっては、設定が高すぎたり、低すぎたりすると以下の問題が発生するので、セルMCの特性を見極めて適正な値に設定する。
【0219】
まず、設定を低くする場合には、次の弱プログラムシークエンスでの誤動作を避けるため、弱プログラム時に非選択ワード線に印加する負の電圧をより低くしなければならない。
【0220】
しかし、設定が低すぎると、負電圧を発生させるチャージポンプ回路の必要能力を高めなければならないので、チャージポンプ回路の面積増を招く。また、負電圧切り替え回路で高い耐圧が必要な場所ができてしまう場合もある。
【0221】
したがって、不必要に設定を低くすることは望ましくない。
【0222】
また、反対に設定が高すぎると、そこまで自己収束でスレシホールド電圧VTHが上昇するのに、非常に時間がかかってしまったり、逆に消去ベリファイ電圧VEVとの差が少ないと、消去ベリファイ電圧VEVを飛び越えてしまう恐れがでてくる。
【0223】
したがって、第1の過消去ベリファイ電圧VOEV1は、セルMCの特性をチェックして、第2の過消去ベリファイ電圧VOEV2より低い最適な値を設定するようにする。
【0224】
[第2の実施形態]
上記第1の実施形態の第1の工程(ST.31)では、リーク電流が比較的大きいビット線を検知する。そして、検知されたビット線に、たとえば自己収束用バイアス電圧を印加することで、検知されたビット線に接続されたセルに対して自己収束動作を行っている。
【0225】
しかし、この発明のように第1の工程(ST.31)の後に、第2の工程(ST.32)を行う場合には、第1の工程(ST.31)では、スレシホールド電圧VTHは、たとえば“−1V”程度といった、比較的低いレベルまで回復させれば良い。このため、短時間のパルス(書き込み用バイアス電圧)をビット線に与えるだけで、スレシホールド電圧VTHは所望のレベルまで、確実に回復できる場合が多い。
【0226】
この場合には、たとえばリークビット線チェックは行わずに、全ビット線に、電圧をスキャンしながら加えて回復させてしまう方法がある。いちいちリークビット線チェックを行う場合に比較して、第1の工程(ST.31)を制御するための回路を簡単にできる利点がある。
【0227】
このような第1の工程(ST.31)の流れ図を図13に示す。
【0228】
まず、図13に示すST.31-1において、カラムアドレスを初期化する。
【0229】
次に、ST.31-6に進み、初期化されたカラムアドレスによって選択されたビット線に、自己収束用バイアス電圧、たとえば5Vを印加する。これにより、選択ビット線に接続されたセルに対して自己収束がかかり、これらセルのスレシホールド電圧VTHは、たとえば“−1V”以上に上昇される。
【0230】
次に、ST.31-4に進み、カラムアドレスが最終カラムアドレスであるか否かを判断する。ST.31-4において、“最終カラムアドレスではない”と判断された場合(NO.)、ST.31-5に進む。
【0231】
ST.31-5では、カラムアドレスをインクリメントする。カラムアドレスをインクリメントした後、再度、ST.31-6に戻る。
【0232】
ST.31-6では、インクリメントされたカラムアドレスによって選択されたビット線に対して、自己収束用バイアス電圧、たとえば5Vを印加する。これにより、次に選択されたビット線に接続されたセルに対して自己収束がかかり、これらセルのスレシホールド電圧VTHは、たとえば“−1V”以上に上昇される。
【0233】
次に、ST.31-4に進み、カラムアドレスが最終カラムアドレスであるか否かを判断する。ST.31-4において、“最終カラムアドレスではない”と判断された場合(NO.)、ST.31-5に進む。
【0234】
また、反対に“最終カラムアドレスである”(YES.)と判断されたとき、第1の工程(ST.31)が終了し、第2の工程(ST.32)に進む。
【0235】
このような第2の実施形態によれば、いちいちリークビット線チェックを行わないので、第1の実施形態に比べて、第1の工程(ST.31)を制御するための回路を簡単にできる、という利点を得ることができる。
【0236】
[第2の実施形態の第1の変形例]
また、リーク電流検知は行うが、自己収束動作の後の判断を省略することも可能である。
【0237】
この場合には、第1の工程(ST.31)に要する時間を短縮できる、という利点がある。
【0238】
以下、これを第2の実施形態の第1の変形例として説明する。
【0239】
図14は、第2の実施形態の第1の変形例を示す流れ図である。
【0240】
まず、図14に示すST.31-1において、カラムアドレスを初期化する。
【0241】
次に、ST.31-2に進み、リークビット線チェックを行い、初期化されたカラムアドレスによって選択されたビット線に、読み出し用バイアス電圧(0.5V)を印加する。
【0242】
次に、ST.31-3に進み、選択ビット線に流れた電流が既定値未満か否かを判断する。
【0243】
この判断の結果、“0”読み出し、即ちビット線に流れた電流が既定値未満と判断された場合(YES.)、ST.31-4に進み、カラムアドレスが最終カラムアドレスであるか否かを判断する。
【0244】
ST.31-4において、“最終カラムアドレスではない”と判断された場合(NO.)、ST.31-5に進み、カラムアドレスをインクリメントする。
【0245】
次に、再度、ST.31-2に戻り、インクリメントされたカラムアドレスによって選択されたビット線に、読み出し用バイアス電圧(0.5V)を印加する。
【0246】
次に、ST.31-3に進み、ビット線に流れた電流が既定値未満か否かを判断する。
【0247】
この判断の結果、“1”読み出し、即ちビット線に流れた電流が既定値以上判断された場合(NO.)、ST.31-6に進む。
【0248】
ST.31-6では、インクリメントされたカラムアドレスによって選択されたビット線に対して、自己収束用バイアス電圧、たとえば5Vを印加する。これにより、選択ビット線に接続されたセルに対して自己収束がかかり、これらセルのスレシホールド電圧VTHは、たとえば“−1V”以上に上昇される。
【0249】
次に、ST.31-4に進み、カラムアドレスが最終カラムアドレスであるか否かを判断する。ST.31-4において、“最終カラムアドレスではない”と判断された場合(NO.)、ST.31-5に進む。
【0250】
また、反対に“最終カラムアドレスである”(YES.)と判断されたとき、第1の工程(ST.31)が終了し、第2の工程(ST.32)に進む。
【0251】
このような第2の実施形態の第1の変形例によれば、リークビット線チェックは行うが、自己収束動作の後の判断を省略するので、第1の実施形態に比べて、第1の工程(ST.31)に要する時間を短縮できる、という利点を得ることができる。
【0252】
[第3の実施形態]
第1、第2の実施形態における第1の工程(ST.31)では、既定値以上の電流が流れたビット線を検知し、検知されたビット線に自己収束用バイアス電圧(自己収束パルス)を印加して、検知されたビット線に接続されているセルに対して、自己収束をかける。
【0253】
このとき、検知されたビット線の電圧が、セルが流すリーク電流によって低下することを抑制するために、全てのワード線をたとえば“−1V”等、負のバイアス電圧としておくと、セルのスレシホールド電圧VTHの上昇速度が低下することがある。
【0254】
第3の実施形態は、自己収束動作時におけるスレシホールド電圧VTHの上昇速度の低下を抑制することを目的とする。
【0255】
図15A、図15Bはそれぞれ、第3の実施形態に係る自己収束動作時のセルアレイ1のバイアス状態を示す図である。
【0256】
図15Aおよび図15Bにはそれぞれ、1024本のワード線WL1〜WL1024が示されている。リークビット線チェック(ST.31-2)後の判定(ST.31-3)において、既定値以上の電流が流れたビット線(図示せず)が検知した後、自己収束動作(ST.31-6)を行う。
【0257】
このとき、図15Aに示すように、ワード線WL1を“−1V”から、それよりも高い電圧、たとえば“0V”とする。
【0258】
次いで、所定時間、たとえば100μs経過後、図15(B)に示すように、ワード線WL1に代えて、ワード線WL2を“−1V”から、それよりも高い電圧、たとえば“0V”とする。
【0259】
このような動作をワード線WL1024まで順次行う。
【0260】
たとえばセル1個当たり、100μs程度で自己収束がかかる、とすると、図15A、図15Bに示すように、ワード線が1024本あるブロックでも、ビット線1本当たりの自己収束動作は、100μs×1024本≒100ms程度で終了することができる。
【0261】
このような第3の実施形態によれば、ワード線に印加するバイアス電圧を1本ずつ、たとえば“−1V”より高いバイアス電圧、好ましくは0V以上のバイアス電圧とする。このため、全てのワード線をたとえば“−1V”等、負のバイアス電圧としておく場合に比べて、セルのスレシホールド電圧VTHの上昇速度の低下を抑制することができる。
【0262】
なお、第3の実施形態に係る動作は、第1の工程(ST.31)において、軽い弱プログラム動作を行っている、とも言える。第2の工程(ST.31)における弱プログラム動作との違いは、ワード線に印加するバイアス電圧が小さいこと、およびセルのアドレスを特定せず、流れた電流が既定値以上と検知されたビット線に接続されている全てのセルに対して、軽く弱プログラムを行うことである。
【0263】
[第4の実施形態]
上記第3の実施形態では、セルのスレシホールド電圧VTH上昇速度の低下を抑制することができる例を説明した。しかし、ワード線が1024本あるブロックの場合、ビット線1本当たりの自己収束動作に要する時間は、ほぼ100msであり、自己収束動作を行うビット線の数が多いと、第1の工程(ST.31)にかなりの時間を要することがある。
【0264】
第4の実施形態は、スレシホールド電圧の上昇速度の低下の抑制しつつ、かつ第1の工程(ST.31)に要する時間を短縮することを目的としている。
【0265】
図16A、図16Bはそれぞれ、第4の実施形態に係る自己収束動作時のセルアレイ1のバイアス状態を示す図である。
【0266】
図16Aおよび図16Bにはそれぞれ、1024本のワード線WL1〜WL1024が示されている。リークビット線チェック(ST.31-2)後の判定(ST.31-3)において、既定値以上の電流が流れたビット線(図示せず)が検知した後、自己収束動作(ST.31-6)を行う。
【0267】
このとき、図16Aに示すように、1024本のワード線のうちの1/8本のワード線WL1〜WL128を“−1V”から、それよりも高い電圧、たとえば“0V”とする。
【0268】
次いで、所定時間、たとえば100μs経過後、図16Bに示すように、ワード線WL1〜WL128に代えて、ワード線WL129〜WL256を“−1V”から、それよりも高い電圧、たとえば“0V”とする。
【0269】
このような動作をワード線WL897〜WL1024からなるグループまで順次行う。
【0270】
このような第4の実施形態によれば、ワード線の電圧を1本ずつではなく、複数本ずつ“−1”Vよりも高くする。たとえば図16A、図16Bに示すように128本ずつ高くした場合、たとえばセル1個当たり、100μs程度で自己収束がかかる、とすると、ワード線が1024本あるブロックでも、ビット線1本当たりの自己収束動作は、100μs×8個≒800μs程度で終了することができる。
【0271】
このように第4の実施形態では、第3の実施形態のようにスレシホールド電圧VTHの上昇速度の低下を、ワード線の電圧をたとえば“−1”Vよりも高くすることで抑制できる。かつワード線の電圧を複数本ずつ高くしていくので、たとえば第3の実施形態に比べて、第1の工程(ST.31)に要する時間を短縮することができる、という利点を得ることができる。
【0272】
[第5の実施形態]
弱プログラム動作においては、その動作を高速に行うための方法が提案されている。たとえばH.Shigaらにより、Symposium of VLSI Circuit Technical digest pp33-36(1999)に開示されたステップアップ法である。
【0273】
ステップアップ法とは、選択セルに対して弱プログラムを繰り返すごとに、選択ワード線の電圧をステップアップするものである。
【0274】
ステップアップ法では、選択ビット線、および選択ワード線に弱プログラムパルスを印加し、その後、過消去ベリファイを行ってセルのスレシホールド電圧VTHが所望のレベルに回復しているかチェックする。この後、弱プログラムしたにも係わらず、スレシホールド電圧VTHが所望のレベルになっていない場合には、次のパルスを印加する時に、ワード線の電圧を一定量づつ上げる。
【0275】
このステップアップ法の場合、ビット線の電圧が安定していないと、書き込み量がステップアップの前後で急に変わってしまうことがある。ステップアップ法は、基本的には、ドレイン電圧が一定の場合に、ワード線をステップアップしていった時、書き込み量がいつも同じ量増加していくことを利用して、スレシホールド電圧VTHを所望の範囲内に入れるものである。リーク電流がビット線に流れていると、選択セルのドレイン電圧が不安定になる。選択セルへの書き込み量は、そのドレイン電圧に依存する。このため、ドレイン電圧が不安定であると、選択セルへの書き込み量が一定にならず、例えば突然、書き込み量が増大して、スレシホールド電圧VTHが所望の値をオーバーしたりする。
【0276】
この発明では、非選択セルがビット線に対して流すリーク電流を減らすことができる。このため、上記リーク電流に起因したビット線の電圧変動を抑制でき、選択セルのドレインに対して非常に安定した電圧を供給できる。
【0277】
よって、第2の工程(ST.32)に、弱プログラム法を用いた場合、ステップアップ法を好ましく併用することができる。
【0278】
図17は、第5の実施形態に係る制御方法を示す流れ図である。
【0279】
まず、図17に示すST.32-10において、アドレスを初期化するとともに、弱プログラム繰り返し回数(サイクル)を“0”とする。
【0280】
次に、ST.32-2に進み、過消去ベリファイを行う。まず、初期化されたアドレスによって選択されたワード線に、過消去ベリファイ用バイアス電圧、たとえば3Vを印加する。次に、初期化されたアドレスによって選択されたビット線に、読み出し用バイアス電圧(0.5V)を印加する。
【0281】
次に、ST.32-3に進み、選択ビット線に流れた電流が既定値未満か否かを判断する。
【0282】
この判断の結果、“0”読み出し、即ちビット線に流れた電流が既定値未満と判断された場合(YES.)、ST.32-11に進む。
【0283】
ST.32-11では、サイクルが“0”とされる。
【0284】
次に、ST.32-4に進み、アドレスが最終アドレスであるか否かを判断する。
【0285】
ST.32-4において、“最終アドレスではない”と判断された場合(NO.)、ST.32-5に進む。
【0286】
ST.32-5では、アドレスをインクリメントする。
【0287】
次に、再度、ST.31-2に戻り、過消去ベリファイを行う。このST.32-2では、インクリメントされたアドレスによって選ばれた選択ビット線、選択ワード線に接続されたセルが、過消去ベリファイの対象となる。
【0288】
次に、ST.32-3に進み、選択ビット線に流れた電流が既定値未満か否かを判断する。
【0289】
この判断の結果、“1”読み出し、即ちビット線に流れた電流が既定値以上と判断された場合(NO.)、ST.32-12に進む。
【0290】
ST.32-12では、サイクルが“0”か否かを判断する。
【0291】
この判断の結果、サイクルが“0”である、と判断された場合(YES.)、ST.32-6に進む。また、サイクルが“0”ではない、と判断された場合(NO.)、ST.32-13に進み、選択ワード線のバイアス電圧をステップアップした後、ST.32-6に進む。
【0292】
ST.32-6では、選択セルに対して弱プログラムを行う。
【0293】
次に、ST32-14に進み、サイクルを“+1”する。
【0294】
次に、再度、ST.31-2に戻り、過消去ベリファイを行う。
【0295】
次に、ST.32-3に進み、選択ビット線に流れた電流が既定値未満か否かを判断する。
【0296】
この判断の結果、再度“1”読み出し、即ち選択ビット線に流れた電流が既定値以上と判断された場合(NO.)には、再度、ST.32-12、ST.32-13、ST.32-6、ST32-14の工程を繰り返す。
【0297】
また、反対に“0”読み出し、即ち選択ビット線に流れた電流が既定値未満と判断された場合(YES.)には、ST.32-11に進み、サイクルを“0”に戻した後、ST.32-4に進み、最終アドレスか否かを判断する。
【0298】
この判断の結果、“最終アドレスである”(YES.)と判断されたとき、第2の工程(ST.32)が終了する。
【0299】
この発明は、非選択セルがビット線に対して流すリーク電流を減らすことができるので、図17に示すように、第2の工程に、弱プログラム法を用いた場合には、この弱プログラム法に、ステップアップ法を好ましく併用することができる。
【0300】
[第6の実施形態]
第1の実施形態の、たとえば第3の変形例において、第1の工程(ST.31)における過消去ビットの検知シークエンス(ST.31-1〜ST.31-6)を、第2の工程(ST.32)における過消去セルの検知シークエンス(ST.32-1〜ST.32-6)と可能な限り合わせることで、制御回路を簡単に構成できることを説明した。
【0301】
第6の実施形態は、過消去ビット線の検知と自己収束シークエンスを過消去セルの検知を弱プログラムシークエンスに組み込んでしまうことで、制御回路を、さらに簡単に構成することを目的とする。
【0302】
第6の実施形態では、過消去セルの検知シークエンスにおいて、先頭ワード線、かつ最初の弱プログラムパルスである場合に限り、自己収束パルスに切り替える。これにより、弱プログラムを制御する回路に対して、最小限の機能追加で、この発明に係る制御方法を実現できる。
【0303】
図18は、第6の実施形態に係る過消去ベリファイ時のセルアレイ1へのバイアス状態を示す図である。
【0304】
図18に示すように、まず、先頭のワード線WL1を“2.5V”に設定、非選択ワード線を“−1V”として、“1”読み出しチェックを行う。既定値IREFは、たとえば10μAである。
【0305】
この“1”読み出しチェックで、“1”読み出しとなる条件は、少なくとも次の2つのケースが考えられる。
【0306】
[ケース1]
選択セルMC11のスレシホールド電圧VTHが“1.5V”以下である。
【0307】
[ケース2]
非選択セルMC21、MC31、MC41、…の少なくとも一つに、スレシホールド電圧VTHが“−2V”以下のものが存在する。
【0308】
“1”読み出しとなった場合、弱プログラムが必要である、との判定になる。
【0309】
このまま、弱プログラムを行ってしまうと、“ケース1”の場合なら問題ないが、もし“ケース2”の場合ならば、選択セルMC11が過消去セルであると誤検知され、選択セルMC11に弱プログラムが行われる、という誤動作を招く。
【0310】
したがって、先頭のワード線WL1、かつ最初の弱プログラムパルスである場合に限り、自己収束のバイアス条件、つまり全ワード線を0〜−1Vといった電圧でビット線BL1に比較的高い電圧をパルス状に印加する。その条件は、非選択ワード線に存在するセルのスレシホールド電圧が、例えば“−1V”以上に達する条件であり、その電圧例は“5V”である。次に、この電圧(パルス)印加後に、再度“1”読み出しチェックを行う。
【0311】
この時点で、非選択セルMC21、MC31、MC41、…のスレシホールド電圧はそれぞれ−1V以上になる、とすれば、再度の“1”読み出しチェックでは、上記“ケース2”の条件が含まれなくなる。このため、再度の“1”読み出しチェックで“2”読み出しされた場合には、“ケース1”となる。そこで、今度は、選択セルMC11に対して、通常の弱プログラムを行えば良い。
【0312】
このシークエンスだと、通常の弱プログラムのシークエンスと同一で、最初の弱プログラム電圧(パルス)印加時のバイアス条件を、自己収束プログラム電圧(パルス)に変更するだけでよい。
【0313】
よって、弱プログラムを制御する回路に対して、最小限の機能追加で、この発明に係る制御方法を実現できる。
【0314】
図19は、第6の実施形態に係る制御方法の一例を示す流れ図であり、特にステップアップ法を併用した例を示している。
【0315】
まず、図19に示すST.32-10において、アドレスを初期化するとともに、弱プログラム繰り返し回数(サイクル)を“0”とする。
【0316】
次に、ST.32-2に進み、過消去ベリファイを行う。初期化されたアドレスによって選択されたワード線に、過消去ベリファイ用バイアス電圧、たとえば2.5Vを印加する。次に、初期化されたアドレスによって選択されたビット線に、読み出し用バイアス電圧(0.5V)を印加する。このとき、非選択ワード線のバイアスは、例えば−1Vである。
【0317】
次に、ST.32-3に進み、選択ビット線に流れた電流が既定値未満か否かを判断する。
【0318】
この判断の結果、“1”読み出し、即ちビット線に流れた電流が既定値以上と判断された場合(NO.)、ST.32-20に進む。
【0319】
ST.32-20では、ローアドレスが“0”か否かが判断される。ここで、ローアドレス“0”とは、先頭のワード線のローアドレスに対応する。
【0320】
この判断の結果、ローアドレスは“0”である、と判断された場合(YES.)、ST.32-21に進む。
【0321】
ST.32-21では、サイクルが“0”か否かを判断する。
【0322】
この判断の結果、サイクルが“0”である、と判断された場合(YES.)、ST.32-6に進み、選択ビット線に対して自己収束動作を行う。
【0323】
次に、ST.32-14に進み、サイクルを“+1”する。
【0324】
次に、ST.32-2に戻り、過消去ベリファイを行った後、ST.32-3に進み、再度、選択ビット線に流れた電流が既定値未満か否かを判断する。
【0325】
ST.32-3における判断の結果、“1”読み出し、即ちビット線に流れた電流が既定値以上と判断された場合(NO.)、ST.32-20に進み、ローアドレスが“0”か否かを判断する。
【0326】
ST.32-20における判断の結果、ローアドレスは“0”である、と判断された場合(YES.)、ST.32-21に進み、サイクルが“0”か否かを判断する。
【0327】
ST.32-21における判断の結果、サイクルが“0”ではない、と判断された場合(NO.)、ST.32-13に進み、選択ワード線を自己収束ではなく弱プログラム用の電圧に設定する。図ではこれを“ステップアップ”と表現している。
【0328】
次に、ST.32-6に進み、選択セルに対して弱プログラムを行う。
【0329】
次に、ST32-14に進み、サイクルを“+1”する。
【0330】
次に、再度、ST.32-2に戻り、過消去ベリファイを行った後、ST.32-3に進み、再度、選択ビット線に流れた電流が既定値未満か否かを判断する。
【0331】
ST.32-3における判断の結果、“0”読み出し、即ちビット線に流れた電流が既定値未満と判断された場合(YES.)、ST.32-11に進み、サイクルを“0”とする。
【0332】
次に、ST.32-4に進み、アドレスが最終アドレスであるか否かを判断する。
【0333】
ST.32-4において、“最終アドレスではない”と判断された場合(NO.)、ST.32-5に進む。
【0334】
ST.32-5では、アドレスをインクリメントする。
【0335】
次に、再度、ST.32-2に戻り、過消去ベリファイを行う。このST.32-2では、インクリメントされたアドレスによって選ばれた選択ビット線、選択ワード線に接続されたセルが過消去ベリファイの対象となる。
【0336】
次に、ST.32-3に進み、選択ビット線に流れた電流が既定値未満か否かを判断する。
【0337】
この判断の結果、“1”読み出し、即ちビット線に流れた電流が既定値以上と判断された場合(NO.)、ST.32-20に進む。
【0338】
ST.32-20における判断の結果、ローアドレスは“0”ではない、と判断された場合(NO.)、ST.32-22に進み、サイクルが“0”か否かを判断する。
【0339】
ST.32-22における判断の結果、サイクルが“0”である、と判断された場合(YES.)、ST.32-6に進む。また、サイクルが“0”ではない、と判断された場合(NO.)、ST.32-13に進み、選択ワード線をステップアップした後、ST.32-6に進む。
【0340】
以下、ST.32-6で、選択セルに対して弱プログラムを行った後、ST32-14に進み、サイクルを“+1”して、再度、ST.32-2に戻り、過消去ベリファイを行う。
【0341】
次に、ST.32-3に進み、選択ビット線に流れた電流が既定値未満か否かを判断する。
【0342】
この判断の結果、“0”読み出し、即ち選択ビット線に流れた電流が既定値未満と判断された場合(YES.)、ST.32-11に進み、サイクルを“0”とした後、ST.32-4に進み、最終アドレスか否かを判断する。
【0343】
この判断の結果、“最終アドレスである”(YES.)と判断されたとき、スレシホールド電圧VTHの分布幅を縮小する工程(ST.3)が終了する。
【0344】
このような第6の実施形態であると、過消去ビットの検知シークエンスを、過消去セルの検知シークエンスに組み込むので、制御回路を、さらに簡単に構成することができる。
【0345】
[第6の実施形態の第1の変形例]
上記第6の実施形態では、一例として、ステップアップを併用した例を説明した。しかし、ステップアップ法を併用しなくても良いことはもちろんである。
【0346】
以下、そのような一例を第6の実施形態の第1の変形例として説明する。
【0347】
図20は、第6の実施形態の第1の変形例を示す流れ図である。
【0348】
図20に示すように、第1の変形例に係るシークエンスは、図19に示したシークエンスと、サイクルを加算するステップが無いことが異なり、これ以外は、ほぼ同様である。
【0349】
即ち、図20に示すように、ST.32-2において、過消去ベリファイを行った後、ST.32-3において、選択セルがビット線に流すオン電流が“10μA”未満か否かを判断する。
【0350】
この判断の結果、選択セルが流すオン電流が“10μA”未満と判断された場合(NO.)、第6の実施形態と同様にST.32-20に進み、ローアドレス=0で、サイクル=0かどうかを判断する。
【0351】
この判断の結果、“ローアドレス=0で、かつサイクル=0である”と判断された場合(YES.)ST.31-6に進み、自己収束動作を行った後、ST.32-2に戻る。
【0352】
反対に、“ローアドレス=0ではない”と判断された場合(NO.)ST.32-6に進み、弱プログラム動作を行った後、ST.32-2に戻る。
【0353】
このような第1の変形例においても、先頭ワード線、かつ最初の弱プログラムパルスである場合に限り、自己収束パルスに切り替えられるので、第6の実施形態と同様の効果を得ることができる。
【0354】
[第7の実施形態]
第1〜第6の実施形態では、特にST.31-6(自己収束)に対応する制御として、ドレインからのキャリア注入による自己収束法を用いた。
【0355】
しかし、ST.31-6に対応する制御には、たとえばST.2(消去)でセルMCに与えられる電界とは逆向きの電界をトンネル絶縁膜に印加し、浮遊ゲートからソース、あるいはドレイン、あるいは基板の少なくともいずれかに向かってトンネル電流を流し、それによってキャリア(電子)を浮遊ゲートに注入する。このような方法を用いて、スレシホールド電圧VTHを収束させることもできる。
【0356】
つまり、ST.31-6において、消去時にトンネル絶縁膜に流れるトンネル電流とは逆向きのトンネル電流を流して、スレシホールド電圧VTHを、所望の範囲に収束させる。このような方法は、たとえばK.Oyamaらにより、IEDM Digest of Technical Papers, pp607-610(1992),“A Novel Erasing Technology for 3.3V Flash Memory with 64Mb Capacity and Beyond”に開示されている。以下、この種を、トンネル電流収束法と呼ぶ。トンネル電流収束動作時のセルのバイアス状態の一例を図21に示しておく。
【0357】
トンネル電流収束法では、ホットキャリア注入電流に比較して、流れる電流が非常に少ない。このため、消去しているブロック全体のワード線に、同時にたとえば正の比較的高い電圧を印加することが可能、という利点がある。
【0358】
この反面、単独で短時間にスレシホールド電圧VTHを大きくシフトさせ、狭い範囲に収束させようとすると、より高い電圧を必要とし、さらにはホットキャリア注入による自己収束と異なり、電圧印加時間とともにスレシホールド電圧VTHが飽和せずに上昇していくため、過消去されたセルMCだけでなく、正常なセルMCのスレシホールド電圧VTHも上昇してしまう、という事情がある。
【0359】
しかしながら、トンネル電流収束法は、最適なストレス条件を設定すれば、この発明の、たとえばST.31-6のように、大きく過消去されたセルMCのスレシホールド電圧VTHを、ある範囲まで戻すことに適した方法の一つである。
【0360】
このようなトンネル電流収束法を、第1〜第6の実施形態のST.31-6において、自己収束法に代えて用いても良い。
【0361】
ST.31-6にトンネル電流収束法を用いた場合には、まず、消去ブロック内において、ビット線リークチェックを行う。次に、リーク電流がたとえば既定値以上のビット線が見つかった段階で、たとえば消去ブロックのセルMCの全てを、浮遊ゲートからソース、あるいはドレイン、あるいは基板の少なくともいずれか一つに向かってトンネル電流が流れるバイアス状態(トンネル注入バイアス状態と呼ぶ)とする。これにより、浮遊にキャリア(電子)が注入され、そのスレシホールド電圧VTHが上昇する。
【0362】
この後、再度ビット線リークチェックを行い、リーク電流がたとえば既定値未満となれば、次のビット線に対してリークチェックを行う。
【0363】
このような動作を繰り返し、最後のビット線まで、リーク電流がたとえば既定値未満となった段階で、第1の工程(ST.31)を終了するようにすれば良い。
【0364】
また、トンネル電流収束法は、全てのビット線のリークチェックを行った後に行い、再度全ビット線のリークチェックを行う、というシークエンスを繰り返す方法に適用されても構わない。
【0365】
また、トンネル電流収束法は、自己収束法の場合と同様に、そのトンネル注入バイアス状態の電圧条件や、印加時間を最適化することで、再度のリークチェックを省略することも可能である。
【0366】
本発明は2段階で、それぞれを異なったバイアス条件でメモリセルのスレシホールド電圧を狭い範囲に入れていくものである。第一の段階と第二の段階で同様の例えばホットエレクトロン注入を用いる場合は、ワード線のバイアス電位を、第二段階で第一段階より高くするという方法が有効である。しかしながら、第七の実施形態のように第一と第二の段階で違うメカニズムを用いる場合は、当然の事ではあるが、必ずしも第二のバイアス条件の電圧の絶対値が高くなるとは限らない。第七の実施形態では、第一の段階でのワード線は例えば15Vといった値になる場合があり第二の段階のワード線電圧より高くなる。
【0367】
以上、この発明を第1〜第7の実施形態により説明した。これら全ての実施形態を通じて、ワード線の電圧が“0V”、“−1V”等の表記をしているが、これは、基本的にセルの存在する基板(あるいはウェル)の電位を“0V”とした場合のワード線の電位を示している。動作上、セルの基板(あるいはウェル)の電位が変わる場合においては、その変わった電位を基準に、ワード線の電位をシフトさせて適用しても良いことは勿論である。
【0368】
また、Nチャネル型のセルで説明したが、セルはPチャネル型であっても良い。この場合には、適宜、電圧の極性を変えれば良い。
【0369】
また、全ての実施形態を通じて、たとえば“VOEV1<VTH<VEV”等の表記をしているが、これは“VOEV1≦VTH≦VEV”、あるいは“VOEV1<VTH≦VEV”、あるいは“VOEV1≦VTH<VEV”等に変更されても良い。
【0370】
また、実施形態としていくつかのシークエンスの組み合わせ例を示したが、本願の主旨を変えない範囲で適宜、組み合わせを変更したり、バイアス電位のかけ方等を変更しても良いことはもちろんである。例えば、本願の実施例では消去ベリファイレベルまで消去動作を行った後に、過消去セルの救済を行っている。しかしながら例えば、消去パルス印加後、消去ベリファイレベルに達していない状態においてもリーク電流のチェックを行い、既定値以上の電流が流れた場合には消去動作を一旦中止して過消去状態にあるセルに書き込みを行い、再度、消去を開始するといった方法により、消去ベリファイレベルまで消去した場合の過消去セルの発生頻度を下げる方法があり、それらを適宜、組み合わせる事も可能である。
【0371】
以上述べてきた全発明は、消去シークエンスに特に有効なものであるが、書き込みシークエンスに用いても良い。たとえば多値メモリのように、書き込み後のスレシホールド電圧VTHを、ある所定の範囲内にシフトさせる必要が場合に、この発明と類似の動作を用いて狭い範囲にスレシホールド電圧を制御する事が可能な場合もある。
【0372】
また、この発明は、類似の動作を行う他の種類のフラッシュメモリにも、必要に応じて適用できることはもちろんである。
【0373】
【発明の効果】
以上説明したように、この発明によれば、所望の範囲を逸脱したメモリセルのスレシホールド電圧を、誤動作や誤検知の発生を抑制しつつ、かつ動作の高速性を損なわずに、所望の範囲に回復させることが可能な不揮発性半導体メモリおよびそのスレシホールド電圧制御方法を提供できる。
【図面の簡単な説明】
【図1】図1Aはこの発明が適用される不揮発性半導体メモリのブロック図、図1Bはそのセルアレイの等価回路図。
【図2】図2はこの発明の第1の実施形態に係る不揮発性半導体メモリのスレシホールド電圧制御方法を示す流れ図。
【図3】図3A〜図3Eはそれぞれスレシホールド電圧の分布の変化を示す図。
【図4】図4Aは既定値と“0”/“1”読み出しとの関係を示す図、図4Bは既定値切り替えを示すブロック図。
【図5】図5A、図5Bはリークビット線チェック時のセルアレイのバイアス状態を示す図、図5Cは自己収束時のセルアレイのバイアス状態を示す図。
【図6】図6A、図6Bは過消去ベリファイ時のセルアレイのバイアス状態を示す図、図6Cは弱プログラム時のセルアレイのバイアス状態を示す図。
【図7】図7はこの発明が適用される他の不揮発性半導体メモリのブロック図。
【図8】図8は第1の実施形態の第1の変形例に係る制御方法を示す流れ図。
【図9】図9は第1の実施形態の第2の変形例に係るリークビット線チェック時のセルアレイのバイアス状態を示す図。
【図10】図10は第1の実施形態の第3の変形例に係るリークビット線チェック時のセルアレイのバイアス状態を示す図。
【図11】図11は第1の実施形態の第3の変形例に好適な制御方法を示す流れ図。
【図12】図12は第1の実施形態の第4の変形例に係るリークビット線チェック時のセルアレイのバイアス状態を示す図。
【図13】図13はこの発明の第2の実施形態に係る制御方法を示す流れ図。
【図14】図14は第2の実施形態の第1の変形例に係る制御方法を示す流れ図。
【図15】図15A、図15Bはそれぞれこの発明の第3の実施形態に係る自己収束時のワード線のバイアス状態を示す図。
【図16】図16A、図16Bはそれぞれこの発明の第4の実施形態に係る自己収束時のワード線のバイアス状態を示す図。
【図17】図17はこの発明の第5の実施形態に係る制御方法を示す流れ図。
【図18】図18はこの発明の第6の実施形態に係る過消去ベリファイ時のセルアレイのバイアス状態を示す図。
【図19】図19は第6の実施形態に係る制御方法を示す流れ図。
【図20】図20は第6の実施形態の第1の変形例に係る制御方法を示す流れ図。
【図21】図21はトンネル電流収束動作時のセルのバイアス状態を示す図。
【図22】図22はデータ消去のスレシホールド電圧の分布を示す図。
【図23】図23は不揮発性半導体メモリのセルアレイの等価回路図。
【図24】図24は書き込み時のセルアレイのバイアス状態を示す図。
【図25】図25は自己収束動作時のセルのバイアス状態を示す図。
【図26】図26Aは弱プログラム動作時の選択セルのバイアス状態を示す図、図26Bは弱プログラム動作時の非選択セルのバイアス状態を示す図。
【図27】図27は従来の問題点を説明するための図。
【図28】図28は従来の問題点を説明するための図。
【図29】図29は不揮発性半導体メモリのブロック図。
【符号の説明】
1…メモリセルアレイ、
2…制御回路、
3…ビット線バイアス回路、
4…ソース線バイアス回路、
5…ワード線バイアス回路、
6…ローデコーダ、
7…カラムセレクタ、
8…カラムデコーダ、
9…I/O回路、
10…アドレスバッファ、
11…アドレスカウンタ、
12…ベリファイ回路、
13…規定値発生回路、
14…チャージポンプ回路。
Claims (21)
- 複数のワード線、複数のビット線、および前記ビット線の電位をドレインに受け、前記ワード線の電位をゲートに受けるスレシホールド電圧を可変に設定可能な複数のメモリセルを有するメモリセルアレイと、
前記複数のメモリセルのスレシホールド電圧を、第1のレベルを上限および下限の一方としたある範囲に一括してシフトさせる第1の制御、
前記ある範囲に一括してシフトされたスレシホールド電圧の上限および下限の他方を、前記第1のレベルに近い第2のレベルに、第2のレベルを逸脱するメモリセルを含む複数のメモリセルを第一のバイアス条件で一括してシフトさせる第2の制御、及び
前記第2のレベルにシフトされたスレシホールド電圧の上限および下限の他方を、前記第2のレベルよりも前記第1のレベルにさらに近い第3のレベルに、第一のバイアス条件とは異なる第二のバイアス条件でシフトさせる第3の制御を行う制御回路と
を具備することを特徴とする不揮発性半導体メモリ。 - 前記第3の制御は、スレシホールド電圧が前記前記第2のレベルと前記第3のレベルとの間にあるメモリセルを検知し、検知されたメモリセルに対して選択的に行われることを特徴とする請求項1に記載の不揮発性半導体メモリ。
- 前記第3の制御に用いられる第二のバイアス条件の選択セルのワード線に印加される電圧は、第2の制御に用いられる第一のバイアス条件のワード線に印加される電圧よりも高いことを特徴とする請求項1に記載の不揮発性半導体メモリ。
- 前記第3の制御は、選択されたメモリセルに接続されたワード線とビット線に、通常のプログラムより弱いバイアスの電圧を印加する制御であることを特徴とする請求項1に記載の不揮発性半導体メモリ。
- 前記通常のプログラムより弱いバイアスの電圧は、前記スレシホールド電圧が少なくとも前記第2のレベルと前記第3のレベルとの間にある、と検知されたメモリセルに接続されたワード線およびビット線に対して選択的に印加されることを特徴とする請求項4に記載の不揮発性半導体メモリ。
- 前記通常のプログラムより弱いバイアスの電圧を印加する時、非選択ワード線の電圧は、前記第2のレベルの電圧以下とすることを特徴とする請求項4に記載の不揮発性半導体メモリ。
- 前記通常のプログラムより弱いバイアスの電圧を印加する時、選択ワード線の電圧は、選択されたメモリセルに対する弱プログラム電圧の印加回数に応じて、メモリセルのスレシホールド電圧が第三のレベルに入るまで、ステップアップされることを特徴とする請求項4に記載の不揮発性半導体メモリ。
- 前記第2の制御は、前記複数のビット線に、自己収束電圧を印加する制御であることを特徴とする請求項1に記載の不揮発性半導体メモリ。
- 前記自己収束電圧は、ビット線に流れる電流が既定値を超えている、と検知されたビット線に対して選択的に印加されることを特徴とする請求項8に記載の不揮発性半導体メモリ。
- 前記自己収束電圧は、前記複数のビット線全てに対して順次印加されることを特徴とする請求項8に記載の不揮発性半導体メモリ。
- 前記複数のワード線の電圧を少なくとも1本ずつ順次、さらに上昇させることを特徴とする請求項10に記載の不揮発性半導体メモリ。
- 前記第2の制御は、前記複数のビット線に、自己収束電圧を印加する制御であることを特徴とする請求項4に記載の不揮発性半導体メモリ。
- 前記自己収束電圧は、ビット線に流れたリーク電流が既定値を超えている、と検知されたビット線に対して選択的に印加されることを特徴とする請求項12に記載の不揮発性半導体メモリ。
- 前記自己収束電圧は、前記複数のビット線全てに対して順次印加されることを特徴とする請求項12に記載の不揮発性半導体メモリ。
- 前記自己収束電圧は、前記スレシホールド電圧が少なくとも前記第2のレベルと前記第3のレベルとの間にある、と検知されたメモリセルに接続された選択ビット線に対して印加されることを特徴とする請求項12に記載の不揮発性半導体メモリ。
- 前記自己収束電圧は各ビット線に対する最初のスレシホールド電圧検知時に印加され、前記弱プログラム電圧は前記最初のスレシホールド電圧検知時を除いて印加されることを特徴とする請求項15に記載の不揮発性半導体メモリ。
- 前記自己収束電圧印加時、前記複数のワード線の電圧は、スレシホールド電圧検知時と同じ電圧にされることを特徴とする請求項12に記載の不揮発性半導体メモリ。
- 前記複数のワード線の電圧を少なくとも1本ずつ、さらに上昇させることを特徴とする請求項17に記載の不揮発性半導体メモリ。
- 前記第2の制御は、前記ワード線に、前記第1の制御とは逆方向の電界がメモリセルにかかるような電圧を印加し、トンネル電流によりスレシホールド電圧をシフトする制御であることを特徴とする請求項1に記載の不揮発性半導体メモリ。
- 前記第3のレベルは、前記データ消去が完全に終了した後のスレシホールド電圧分布の下限であることを特徴とする請求項1に記載の不揮発性半導体メモリ。
- 複数のメモリセルのスレシホールド電圧を、第1のレベルを上限および下限の一方としたある範囲に一括してシフトさせ、
前記ある範囲に一括してシフトされたスレシホールド電圧の上限および下限の他方を、前記第1のレベルに近い第2のレベルに、第2のレベルを逸脱するセルを含む複数のセルを第一のバイアス条件で一括してシフトさせ、
前記第2のレベルにシフトされたスレシホールド電圧の上限および下限の他方を、前記第2のレベルよりも前記第1のレベルにさらに近い第3のレベルに第一のバイアスとは異なる第二のバイアス条件でシフトさせることを特徴とする不揮発性半導体メモリのスレシホールド電圧制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000393205A JP4131902B2 (ja) | 1999-12-27 | 2000-12-25 | 不揮発性半導体メモリおよびそのスレシホールド電圧制御方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11-369758 | 1999-12-27 | ||
JP36975899 | 1999-12-27 | ||
JP2000393205A JP4131902B2 (ja) | 1999-12-27 | 2000-12-25 | 不揮発性半導体メモリおよびそのスレシホールド電圧制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001250390A JP2001250390A (ja) | 2001-09-14 |
JP4131902B2 true JP4131902B2 (ja) | 2008-08-13 |
Family
ID=26582143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000393205A Expired - Fee Related JP4131902B2 (ja) | 1999-12-27 | 2000-12-25 | 不揮発性半導体メモリおよびそのスレシホールド電圧制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4131902B2 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005092963A (ja) | 2003-09-16 | 2005-04-07 | Renesas Technology Corp | 不揮発性記憶装置 |
JP4668199B2 (ja) * | 2004-08-30 | 2011-04-13 | スパンション エルエルシー | 不揮発性記憶装置の消去方法、および不揮発性記憶装置 |
JP4521243B2 (ja) * | 2004-09-30 | 2010-08-11 | 株式会社東芝 | 不揮発性半導体記憶装置及びそのデータ消去方法 |
KR101403429B1 (ko) | 2007-10-09 | 2014-06-03 | 삼성전자주식회사 | 멀티 비트 프로그래밍 장치 및 방법 |
JP2009230818A (ja) | 2008-03-24 | 2009-10-08 | Toshiba Corp | 半導体記憶装置 |
JP5496278B2 (ja) * | 2012-07-24 | 2014-05-21 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
CN109872759B (zh) * | 2017-12-01 | 2023-07-25 | 兆易创新科技集团股份有限公司 | 一种存储器擦除方法及装置 |
US11393546B2 (en) * | 2019-07-19 | 2022-07-19 | Silicon Storage Technology, Inc. | Testing circuitry and methods for analog neural memory in artificial neural network |
-
2000
- 2000-12-25 JP JP2000393205A patent/JP4131902B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001250390A (ja) | 2001-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6818491B2 (en) | Set of three level concurrent word line bias conditions for a NOR type flash memory array | |
US6452837B2 (en) | Nonvolatile semiconductor memory and threshold voltage control method therefor | |
US6567316B1 (en) | Nonvolatile semiconductor memory device and method of erasing data of nonvolatile semiconductor memory device | |
US6498752B1 (en) | Three step write process used for a nonvolatile NOR type EEPROM memory | |
KR100761091B1 (ko) | 소프트 프로그래밍이 vt 분포의 폭을 좁힐 수 있게 하는 게이트 램핑 기술 | |
US6515908B2 (en) | Nonvolatile semiconductor memory device having reduced erase time and method of erasing data of the same | |
US6421277B2 (en) | Non-volatile semiconductor memory device | |
KR20070104957A (ko) | 플래쉬 메모리 장치의 구동 방법 | |
TW201346917A (zh) | 非揮發性記憶體裝置以及用於該記憶體裝置之抹除方法 | |
JP2000222893A (ja) | 不揮発性半導体記憶装置への情報の書き込み方法 | |
US6385090B1 (en) | Semiconductor nonvolatile memory using floating gate | |
JP3974778B2 (ja) | 不揮発性半導体メモリ装置およびそのデータ消去方法 | |
JP2982676B2 (ja) | 不揮発性半導体記憶装置の過消去救済方法 | |
KR20050022274A (ko) | 반도체 집적회로 | |
US7099210B2 (en) | Semiconductor memory device having memory cells with floating gates and memory cell threshold voltage control method | |
JP4131902B2 (ja) | 不揮発性半導体メモリおよびそのスレシホールド電圧制御方法 | |
JPH05218357A (ja) | 電気的消去可能でプログラム可能な読出し専用メモリ | |
US7227784B2 (en) | Nonvolatile semiconductor memory device performing erase operation that creates narrow threshold distribution | |
CN100388391C (zh) | 或非闪速内存单元在高列泄漏下精确确认的装置与方法 | |
US6108263A (en) | Memory system, method for verifying data stored in a memory system after a write cycle and method for writing to a memory system | |
WO2002097821A1 (fr) | Dispositif de stockage non volatile a semi-conducteur | |
JPH08227589A (ja) | 不揮発性メモリ | |
JP3961989B2 (ja) | 半導体記憶装置 | |
US6198664B1 (en) | APDE scheme for flash memory application | |
JP3848059B2 (ja) | 不揮発性半導体メモリ及びその制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040609 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071102 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071113 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080109 |
|
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: 20080527 |
|
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: 20080529 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110606 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110606 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |