[go: up one dir, main page]

JP3828376B2 - Storage system - Google Patents

Storage system Download PDF

Info

Publication number
JP3828376B2
JP3828376B2 JP2001136435A JP2001136435A JP3828376B2 JP 3828376 B2 JP3828376 B2 JP 3828376B2 JP 2001136435 A JP2001136435 A JP 2001136435A JP 2001136435 A JP2001136435 A JP 2001136435A JP 3828376 B2 JP3828376 B2 JP 3828376B2
Authority
JP
Japan
Prior art keywords
memory cell
value
memory cells
data
cell array
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
Application number
JP2001136435A
Other languages
Japanese (ja)
Other versions
JP2001357683A (en
Inventor
健 竹内
智晴 田中
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2001136435A priority Critical patent/JP3828376B2/en
Publication of JP2001357683A publication Critical patent/JP2001357683A/en
Application granted granted Critical
Publication of JP3828376B2 publication Critical patent/JP3828376B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5641Multilevel memory having cells with different number of storage levels

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • Read Only Memory (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、記憶システム、例えば電気的書き換え可能な多値記憶不揮発性半導体記憶装置(EEPROM)によって構成される記憶システムに関する。
【0002】
【従来の技術】
近年、電気的書き替え可能とした不揮発性半導体装置(EEPROM)の1つとしてNANDセル型EEPROMが提案されている。
【0003】
このEEPROMは、電荷蓄積層としての例えば浮遊ゲートと制御ゲートが積層されたnチャネルFETMOS構造の複数のメモリセルを、それらのソース、ドレインを隣接するもの同士で共有する形で直列接続し、これを1単位としてビット線に接続するものである。
【0004】
図36は、メモリセルアレイの1つのNANDセル部分を示す図で、(a)図は平面図、(b)図は等価回路図である。図37は断面図で、(a)図は図36(a)中のA−A’線に沿う断面図、(b)図は図36(a)中のB−B’線に沿う断面図である。
【0005】
p型シリコン基板(又はp型ウエル)11には、素子分離酸化膜12で囲まれた素子領域が設けられている。素子領域にはNANDセルが形成され、NANDセルが複数集まることで、メモリセルアレイが形成されている。
【0006】
図36および図37を参照し、1つのNANDセルに着目して説明する。
【0007】
図36および図37に示す装置では、8個のメモリセルM1〜M8が直列に接続されて1つのNANDセルを構成している。メモリセルはそれぞれ、基板11の上に、ゲート絶縁膜13を介して形成された浮遊ゲート14(14-1、14-2、…、14-8)を有している。浮遊ゲート14の上には、第2のゲート絶縁膜15を介して制御ゲート16が形成されている。メモリセルのソース、ドレインであるn型拡散層19はそれぞれ、隣接するメモリセルどうしで共有される。これにより、8個のメモリセルは、互いに直列に接続される。
【0008】
NANDセルのドレイン側、ソース側には各々、メモリセルの浮遊ゲート14-1〜14-8、制御ゲート16-1〜16-8と同時に形成された第1の選択ゲート14-9、16-9、及び第2の選択ゲート14-10 、16-10 が設けられている。メモリセルなどの素子が形成された基板11の上方は、CVD酸化膜17により覆われている。CVD酸化膜17の上には、ビット線18が配設されている。NANDセルの制御ゲート16は行方向に連続して形成され、行方向に隣接するNANDセルどうしで共通とされて、ワード線(制御ゲートCG1、CG2、…、CG8)として機能する。選択ゲート14-9、16-9、および14-10 、16-10 はそれぞれ、制御ゲート16-1〜16-8と同様に行方向に連続して形成され、行方向に隣接したNANDセルどうしで共通とされて、選択ゲートSG1、SG2として機能する。
【0009】
図38は、上記NANDセルがマトリクス状に配列されたメモリセルアレイの等価回路図である。
【0010】
図38に示すように、ソース線は、コンタクトを介して、アルミニウムや、導電性のポリシリコンなどから構成されている基準電位配線に接続される。ソース線と基準電位配線とのコンタクトは、例えば64本のビット線ごとに、1箇所設けられる。基準電位配線は、例えば動作モードに応じてソース線に与える電位を制御する、図示せぬ周辺回路に接続されている。
【0011】
制御ゲートCG1、CG2、…、第1、第2の選択ゲートSG1、SG2は、行方向に連続的に配設される。通常、制御ゲートにつながるメモリセルの集合を、ページ(1ページ)と呼び、1組のドレイン側(第1の選択ゲート)およびソース側(第2の選択ゲート)の選択ゲートによって挟まれた上記ページの集合を、NANDブロック(1NANDブロック)、又はブロック(1ブロック)と呼ぶ。1ページは、例えば256バイト(256×8)個のメモリセルから構成される。1ページ分のメモリセルは、ほぼ同時に書き込みが行われる。1ブロックは例えば2048バイト(2048×8)個のメモリセルから構成される。1ブロック分のメモリセルは、ほぼ同時に消去される。
【0012】
NAND型EEPROMの動作は、次の通りである。
【0013】
データ書き込みは、ビット線から遠い方のメモリセルから順に行われる。
【0014】
選択されたメモリセルの制御ゲートには、昇圧された書き込み電圧Vpp(=20V程度)を印加し、他の非選択メモリセルの制御ゲート、および第1の選択ゲートにはそれぞれ、中間電位(=10V程度)を印加し、ビット線には、データに応じて、0V(“0”書き込み)、又は中間電位(“1”書き込み)を印加する。このとき、ビット線の電位は、選択されているメモリセルに伝達される。データが“0”の時は、選択されているメモリセルの浮遊ゲートと基板との間に、高い電圧がかかり、基板から浮遊ゲートに、電子がトンネル注入され、しきい値電圧が正方向に移動する。データが”1”の時は、しきい値電圧は変化しない。
データ消去は、ブロック単位で、ほぼ同時に行われる。
【0015】
すなわち、消去を行うブロックに含まれている全ての制御ゲート、選択ゲートを0Vとし、p型シリコン基板(またはp型ウェルおよびn型基板)に、昇圧された昇圧電位VppE (20V程度)を印加する。一方、消去を行わないブロックに含まれている制御ゲート、選択ゲートには、上記昇圧電位VppE を印加する。これにより、消去が行われるブロックのメモリセルにおいて、浮遊ゲートに蓄積されていた電子がp型シリコン基板(またはウェル)に放出され、しきい値電圧が、負の方向に移動する。
【0016】
データ読み出し動作は、ビット線をプリチャージした後、ビット線をフローティングとし、選択されたメモリセルの制御ゲートを0V、それ以外のメモリセルの制御ゲート、選択ゲートを電源電圧Vcc(たとえば3V)、ソース線を0Vとして、選択されているメモリセルで、電流が流れるか否かをビット線に検出することにより、行われる。すなわち、メモリセルに書き込まれたデータが”0” (メモリセルのしきい値Vth>0)ならばメモリセルはオフになるので、ビット線はプリチャージ電位を保つが、”1”(メモリセルのしきい値Vth<0)ならばメモリセルは、オンしてビット線はプリチャージ電位からΔVだけ下がる。これらのビット線電位を、センスアンプで検出することによって、メモリセルのデータが読み出される。
【0017】
さらに最近では、EEPROMの大容量化を実現する手法の1つとして、1個のセルに3値以上の情報を記憶させる、多値記憶セルが知られている(例えば特開平7−93979号、特開平7−161852号)。
【0018】
図39は、一つのメモリセルに、4つの書き込み状態を設けることによって、4値を記憶する場合の、メモリセルのしきい値電圧と、4つの書き込み状態(4値データ“0”、“1”、“2”、“3”)との関係を示す図である。
【0019】
データ“0”の状態は、消去後の状態と同じで、例えば負のしきい値を持つ。データ“1”の状態は、例えば0.5Vから0.8Vの間のしきい値を持つ。データ“2”の状態は、例えば1.5Vから1.8Vの間のしきい値を持つ。データ“3”の状態は、例えば2.5Vから2.8Vの間のしきい値を持つ。
【0020】
したがって、メモリセルMの制御ゲートCGに、読み出し電圧VCG2R を印加して、メモリセルが“ON”か“OFF”かで、メモリセルのデータが「“0”、“1”のいずれかか、“2”、“3”のいずれかか」を検出できる。続けて、読み出し電圧VCG3R 、VCG1R を印加することでメモリセルのデータが完全に検出される。読み出し電圧VCG1R 、VCG2R 、VCG3R は、例えばそれぞれ0V、1V、2Vとされる。
【0021】
また、電圧VCG1V 、VCG2V 、VCG3V は、ベリファイ電圧と呼ばれ、データ書き込み時には、これらベリファイ電圧を制御ゲートに印加してメモリセルMの状態を検出し、十分に書き込みが行われたか否かをチェックする。ベリファイ電圧VCG1V 、VCG2V 、VCG3V は、例えばそれぞれ0.5V、1.5V、2.5Vとされる。
【0022】
【発明が解決しようとする課題】
フラッシュメモリでは、書き換え回数に、2値メモリセルで、例えば100万回の制限がある。この書き換え回数の制限は、例えば書き込み状態のメモリセルのフローティングゲートから基板に、フローティングゲートに蓄えた電子がリークすることにより生じる。図39のデータ“1”の状態のメモリセルから、電子がリークすることにより、メモリセルがデータ“0”の状態になると、書き込みデータが破壊されたことになる。
【0023】
メモリセルに多値データを蓄えると、状態間の電圧差(例えば図39の“3”状態と“2”状態の間の電圧差)が小さくなる。その結果、わずかな量の電子が基板にリークしても、データが、“3”の状態から、“2”の状態に変わってしまう。また、メモリセルを多値化すると、しきい値が最も大きい状態(図39では“3”状態)のしきい値が大きくなるので、フローティングゲートと基板との間の電界が大きくなる。その結果、フローティングゲートからの電子のリーク量が大きくなる。
【0024】
以上の事情から、メモリセルを多値化するほど信頼性、特にデータの書き換え回数に対する信頼性が悪化し、書き換え回数の制限値が減少し、例えば50万回になる。結果として、装置の耐久性(装置の寿命)が損なわれている。
【0025】
従来のメモリーカード(例えばN.Niijima ; IBM J.RES.DEVELOP.VOL.39 NO.5 SEPTEMBER 1995)では、ブロック毎に書き換え回数を記録し、書き換え回数が、例えば100万回を超えた場合には、該ブロックを使用しないようにしている。しかしながら、この方式でも、多値記憶化すればするほど、メモリーカードの使用回数は、2値記憶のときよりも減少する。
【0026】
この発明は、上記の事情に鑑みて為されたもので、その目的は、多値記憶のメモリセルを含みながらも、特に書き換えに関する耐久性に富む記憶システムを提供することにある。
【0027】
また、他の目的は、上記目的を達成する記憶システムに必要な、幾つかの新規なシステム要素を含んだ記憶システムを提供することにある。
【0028】
【課題を解決するための手段】
上記目的を達成するために、この発明の第1の態様に係る記憶システムでは、複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルと、前記複数のメモリセルを制御する制御回路と、を備え、前記制御回路は、前記複数のメモリセルの一部を前記n値の記憶部分として制御し、異なる一部のメモリセルをm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、更に異なる一部のメモリセルにどのメモリセルをm値の記憶部分として制御するかという制御情報を記憶させることを特徴とする。
【0029】
また、この発明の第2の態様に係る記憶システムでは、複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルと、前記複数のメモリセルを制御する制御回路と、を備え、前記制御回路は、前記複数のメモリセルの一部を前記n値の記憶部分として制御し、異なる一部のメモリセルをm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、更に異なる一部のメモリセルにどのメモリセルをm値の記憶部分として制御するかという制御情報を記憶させ、前記制御情報を書き換えることでm値の記憶をさせるメモリセルを変更することを特徴とする。
また、この発明の第3の態様に係る記憶システムでは、複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルと、前記複数のメモリセルを制御する制御回路と、を備え、前記制御回路は、前記複数のメモリセルの一部を前記n値の記憶部分として制御し、異なる一部のメモリセルをm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、更に異なる一部のメモリセルにどのメモリセルをn値の記憶部分として制御するかという制御情報を記憶させることを特徴とする。
また、この発明の第4の態様に係る記憶システムでは、複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルと、前記複数のメモリセルを制御する制御回路と、を備え、前記制御回路は、前記複数のメモリセルの一部を前記n値の記憶部分として制御し、異なる一部のメモリセルをm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、更に異なる一部のメモリセルにどのメモリセルをn値の記憶部分として制御するかという制御情報を記憶させ、前記制御情報を書き換えることでn値の記憶をさせるメモリセルを変更することを特徴とする。
また、この発明の第5の態様に係る記憶システムでは、複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルで構成されるメモリセルアレイと、前記複数のメモリセルを制御する制御回路と、を備え、前記制御回路は、前記メモリセルアレイの一部を前記n値の記憶部分として制御し、前記メモリセルアレイの異なる一部をm値(mは2以上の自 然数であり、m<n)の記憶部分として制御し、前記メモリセルアレイの更に異なる一部にメモリセルアレイのどの部分をm値の記憶部分として制御するかという制御情報を記憶させることを特徴とする。
また、この発明の第6の態様に係る記憶システムでは、複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルで構成されるメモリセルアレイと、前記複数のメモリセルを制御する制御回路と、を備え、前記制御回路は、前記メモリセルアレイの一部を前記n値の記憶部分として制御し、前記メモリセルアレイの異なる一部をm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、前記メモリセルアレイの更に異なる一部にメモリセルアレイのどの部分をm値の記憶部分として制御するかという制御情報を記憶させ、前記制御情報を書き換えることでm値の記憶をさせるメモリセルアレイを変更することを特徴とする。
また、この発明の第7の態様に係る記憶システムでは、複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルで構成されるメモリセルアレイと、前記複数のメモリセルを制御する制御回路と、を備え、前記制御回路は、前記メモリセルアレイの一部を前記n値の記憶部分として制御し、前記メモリセルアレイの異なる一部をm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、前記メモリセルアレイの更に異なる一部にメモリセルアレイのどの部分をn値の記憶部分として制御するかという制御情報を記憶させることを特徴とする。
また、この発明の第8の態様に係る記憶システムでは、複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルで構成されるメモリセルアレイと、前記複数のメモリセルを制御する制御回路と、を備え、前記制御回路は、前記メモリセルアレイの一部を前記n値の記憶部分として制御し、前記メモリセルアレイの異なる一部をm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、前記メモリセルアレイの更に異なる一部にメモリセルアレイのどの部分をn値の記憶部分として制御するかという制御情報を記憶させ、前記制御情報を書き換えることでn値の記憶をさせるメモリセルアレイを変更することを特徴とする。
【0030】
【発明の実施の形態】
以下、この発明の実施の形態を、多値NAND型フラッシュメモリを、例にとって説明する。
【0031】
図1〜図3はそれぞれ、この発明の第1の実施の形態に係る多値NAND型フラッシュメモリの各記憶モードごとの、しきい値電圧と多値データとの関係を示す図である。
【0032】
図1には、4値動作モードのときの、しきい値電圧と4値データとの関係の一つの例が、図2(a)〜(c)には、3値動作モードのときの、しきい値電圧と3値データとの関係の三つの例が、図3(a)、(b)には、2値動作モードのときの、しきい値電圧と2値データとの関係の二つの例がそれぞれ示されている。
【0033】
図1〜図3の各図において、“0”は消去状態、“1”、“2”、“3”はそれぞれ書き込み状態である。多値NAND型フラッシュメモリのチップ内部の動作 (書き込み、読み出し、消去など)は、特開平7−93979号、特開平7−161852号、特願平7−295137号、特願平8−61443号、特願平8−61445号などに記されているとうりである。
【0034】
上述したように、EEPROMの分野においては、多値化すればするほど、書き換え可能な回数が減少する。例えば図1に示すような4値の記憶状態をとる4値セルでは50万回、図2に示すような3値の記憶状態をとる3値セルでは80万回、図3に示すような2値の記憶状態をとる2値セルでは100万回がそれぞれ、書き換え可能な範囲である。
【0035】
この発明によると、まず、50万回の書き換えが行われるまでは、メモリセルを図1に示すような記憶状態をとる4値セルとして使用する。50万回の書き換えが行われた後、80万回の書き換えが行われるまでは、図2(a)〜(c)に示すような3値セルとして使用する。80万回の書き換え以降では、図3に示すような2値セルとして使用する。
【0036】
また、装置の動作の方法を簡略化するために、50万回の書き換えが行われるまでは、4値セルとして使用し、50万回の書き換えが行われた後、2値セルとして使用するようにしても良い。
【0037】
このように、4値セルとしての書き換え回数の限度を超えた場合には、3値セル、あるいは2値セルとして使用することにより、フラッシュメモリの使用回数を、増やすことができる。したがって、従来の多値記憶のフラッシュメモリよりも、特に書き換えに関する耐久性が向上する。
【0038】
上記の耐久性は、フラッシュメモリ単体、つまりチップの耐久性として向上することはもちろんのこと、このフラッシュメモリを様々なメモリ装置(例えばメモリカードなど)の中に組み込むことで、該メモリ装置の、耐久性についても、向上する。
【0039】
メモリセルを4値として動作させるか、あるいは3値として動作させるか、あるいは2値として動作させるかは、チップの外部から、フラッシュメモリにコマンドを入力することによって制御しても良い。つまり、フラッシュメモリ内部の動作モードとして4値用の書き込み動作モード(または動作方法)/読み出し動作モード(または動作方法)、3値用の書き込み動作モード(または動作方法)/読み出し動作モード(または動作方法)、2値用の書き込み動作モード(または動作方法)/読み出し動作モード(または動作方法)をそれぞれ持たせ、これらの動作モード(または動作方法)のいずれかを、コマンドの入力によって選び、それぞれの動作を制御しても良い。
【0040】
あるいはメモリセルを4値として動作させるか、あるいは3値として動作させるか、あるいは2値として動作させるかを、フラッシュメモリを制御するコントローラから入力する書き込みデータによって制御するようにしても良い。つまり、フラッシュメモリの内部動作は変えずに、外部から入力する書き込みデータを、4値、3値、2値と順次、あるいは4値、2値と制御する。つまり、4値セルとして動作させるときには「“0”、“1”、“2”、“3”」の4値を入力し、3値セルとして動作させるときには「“0”、“1”、“2”」の3値を入力し、2値セルとして動作させるときには、「“0”、“1”」の2値を入力するように、それぞれの入力データ値を制御しても良い。
【0041】
また、2値セルとしての書き換え回数の限度を超えた場合には、該セルは使用しないようにしても良い。
【0042】
また、2値セルとしての書き換え回数の限度を超えた場合には、該セルには、データの書き込み、あるいはデータの消去をしないようにしても良い。この場合には、該セルは、書き換えが行われないだけであるので、ROMとして使用することが可能である。なお、ROMとして使用されたときには、セルの、特にトンネル酸化膜の劣化の度合いが、記憶保持期間を左右する。しかしながら、書き換え回数が限度に達したとしても、通常、セルには、ROMとして耐えるだけの信頼性が充分に残っている。なぜならば、書き換え回数の限度は、トンネル酸化膜が使用に耐えられなくなるまでに、ある程度のマージンを見込んで設定されているためである。
【0043】
次に、この発明の第2の実施の形態に係る記憶システムについて説明する。
【0044】
図4は、第2の実施の形態に係るフラッシュメモリの構成図である。
【0045】
図4に示すように、コントローラ100は、k個(kは自然数)の多値NAND型フラッシュメモリのチップ101-1〜101-kの動作を制御する。
【0046】
図5は、図4に示す多値NAND型フラッシュメモリのチップ101の構成図である。図4に示すチップ101には複数のメモリセルが含まれていて、これらメモリセルはそれぞれ、第1の実施の形態で説明したものと同様に、多値記憶レベルに応じたしきい値電圧分布を持つ。しきい値電圧分布は、例えば図1〜図3と同様なものであり、図1〜図3に示すように、“0”が消去状態、“1”、“2”、“3”が書き込み状態である。
【0047】
多値NAND型フラッシュメモリのチップ内部の動作(書き込み、読み出し、消去など)は、特開平7−93979号、特開平7−161852号、特願平7−295137号、特願平8−61443号、特願平8−61445号などに記されているとうりである。
【0048】
同時に書き込みを行う単位である1ページは、528バイト個のメモリセルで構成され、そのうち例えば512バイト個のメモリセルがデータ領域、残りの16バイト個のメモリセルが論理アドレスと物理アドレスの対応を示すアドレス変換テーブルや、誤り訂正コード(Error Correcting Code : ECC)を記憶する。
【0049】
図5では、1つのチップは、512ブロックから構成され、同時に消去を行う単位である1ブロックは16ページで構成される。例えば先頭ブロックBlock0はシステム領域として使用する。つまり、Block0には各ブロックの書き換え回数やどのブロックが壊れているか、あるいはブロック・シークエンス番号Sを記憶しておけばよい。以下では、書き換え回数を記憶する部分を書き換え回数記録領域と呼ぶ。ブロック・シークエンス番号Sなどの説明の詳細は公知例N.Niijima ; IBM J.RES.DEVELOP.VOL.39 NO.5 SEPTEMBER 1995に記されている。この場合、書き込み・消去を繰り返す毎に、書き換え回数が記憶されている先頭ブロックの書き換えが起こる。このように、システムブロックでは書き換えが頻繁に行われるので、システム領域のメモリセルの寿命が他のデータ領域のメモリセルの寿命よりも短くなることがある。
【0050】
図6は、第2の実施の形態の変形に係る記憶システムの構成図である。
【0051】
上記のように、システム領域のメモリセルの寿命が他のデータ領域のメモリセルの寿命よりも短くなる場合には、図6に示すように、書き換え回数記録領域などのシステム領域を記憶するDRAM102を備えても良い。電源投入時(動作時)にフラッシュメモリのシステム領域のデータを読み出してDRAMに蓄える。その後、データの書き込み、消去、書き換え等にはシステム領域の書き換えが生じるが、この時には、DRAMに蓄えられたシステム領域を書き換えれば良い。DRAM上のシステム領域のデータに基づいて、電源をオフ時、あるいは一定時間毎にフラッシュメモリのシステム領域のデータを書き換えれば良い。
【0052】
このように、動作時のシステム領域の書き換えは、DRAM内のデータに対して行うことにより、フラッシュメモリ内のシステム領域が頻繁に書き換えられることが防がれる。
【0053】
また、データの書き込み、消去、書き換え時にアドレス変換テーブルの書き換えが必要な場合には、アドレス変換テーブルの内容も、DRAMに蓄え、書き換えもDRAM内で行えばよい。
【0054】
この実施の形態では、4値フラッシュメモリを例にとり、説明を行う。例えば図1のような4値メモリセルでは50万回、図3(a)、(b)のような2値メモリセルでは、100万回書き換え可能とする。
【0055】
この実施の形態によると、まず、50万回書き換えが行われるまでは、メモリセルを図1(a)のような4値セルとして4値モードで使用する。各ブロックの書き換え回数は、電源オフ時にはフラッシュメモリ上のシステム領域の書き換え回数記録領域に、電源投入時(動作時)にはDRAMの書き換え回数記録領域に蓄える。
【0056】
50万回書き替えた後では、図3(a)、(b)のように、2値セルとして2値モードで使用する。4値モードと2値モードの切り換えは、1ページ単位、あるいは1ブロック単位で行っても良いし、複数のブロック単位で行っても良いし、チップ単位で行っても良い。各ページ、各ブロック、あるいは各チップが2値モードであるか、あるいは4値モードであるかを保持するレベル記憶手段は、電源オフ時にはフラッシュメモリのシステム領域に、動作モードに関する情報を記憶し、電源投入時(動作時)にはDRAMに蓄えれば良い。そして、電源投入時に、レベル記憶手段を読み出すことにより、メモリセルを何値で動作させるかを決めることができる。
【0057】
このように、4値セルとしての書き換え回数の限度を超えた場合には2値セルとして使用する事により、フラッシュメモリの使用回数を増加することができる。
【0058】
メモリセルを4値として動作させるか、あるいは2値として動作させるかは、コントローラ100からフラッシュメモリにコマンドを入力することによって制御しても良い。つまり、フラッシュメモリ内部の動作モードとして4値用の書き込み動作モード(または動作方法)/読み出し動作モード(または動作方法)、2値用の書き込み動作モード(または動作方法)/読み出し動作モード(または動作方法)を持たせ、これらの動作モード(または動作方法)のいずれかを、コマンドの入力によって選び、それぞれの動作を制御しても良い。
【0059】
あるいはメモリセルを4値として動作させるか、あるいは2値として動作させるかを、フラッシュメモリを制御するコントローラ100から入力する書き込みデータによって制御するようにしても良い。つまり、フラッシュメモリの内部動作は変えずに、外部から入力する書き込みデータを4値、2値と制御する。つまり、4値セルとして動作させるときには「“0”、“1”、“2”、“3”」の4値を入力し、2値セルとして動作させるときには、「“0”、“1”」の2値を入力するように、それぞれの入力データ値を制御しても良い。
【0060】
また、4値モードと2値モードとで、1ページ内のデータ領域のメモリセル数を変更しても良いし、変更しなくても良い。4値モードでも2値モードでも、528バイト個のメモリセルのうち、例えば512バイト個のメモリセルがデータ領域、残りの16バイト個のメモリセルが論理アドレスと物理アドレスの対応を示すアドレス変換テーブルや、誤り訂正コード(ECC)を記憶してもよい。あるいは4値モードと2値モードとで、アドレス変換テーブルやECC の領域を最適化しても良い。例えば4値モードではアドレス変換テーブルやECC の領域が16バイト個のメモリセルを用いていたのに対し、2値モードでは24バイト個のメモリセルを用いても良いし、8バイト個のメモリセルを用いても良い。いずれの場合でも、アドレス変換テーブルやECC の領域以外をデータ領域として用いれば良い。
【0061】
書き換え回数記録領域は、それぞれのブロックが書き換えられる毎にデータが更新されるので、この書き換え回数記録領域をモニタすることにより、メモリセルが何値で動作するかを決定すればよい。つまり、書き換え前にDRAM内の書き換え回数記録領域を読み出して、書き込みを行うブロックの書き換え回数が50万回以下の場合には、そのブロックを4値セルとして書き込む。書き換え回数が50万回を超える場合には、DRAM内のレベル記憶手段の内容を、この実施の形態では4値セルではなく2値セルであると、変更し、そのブロックを、2値セルとして書き込む。また、100万回を超える場合には、そのブロックを使用しない、あるいは書き込みまたは消去をしないようにしても良い。
【0062】
第2の実施の形態では、例えば各ブロック単位で書き換え回数を記録し、各ブロック単位で何値で動作するかを決めている。また、何値で動作するか決める単位は、ブロックに限らず、例えば複数のブロックで1つの書き換え回数記録領域を設け、複数のブロック単位で何値で動作するかを決めても良い。あるいはフラッシュメモリチップ1つにつき、1つの書き換え回数記録領域を設け、チップ単位で何値で動作するかを決めても良い。さらにページ単位で、書き換え回数をモニタし、各ページ単位で何値で動作するかを決めても良い。
【0063】
第2の実施の形態では、書き換え回数をモニタすることにより、何値メモリセルとして動作するかを決めているが、例えば出荷してからの時間をモニタすることにより、何値メモリセルとして動作するかを決めてもよい。
【0064】
次に、この発明の第3の実施の形態に係る記憶システムについて説明する。
【0065】
以下、この発明に係る幾つかの記憶システムを挙げ、これらを第3の実施の形態に係る記憶システムとして説明する。
【0066】
図7は、第3の実施の形態に係る第1の記憶システムの動作フローを示す図である。
【0067】
第1の記憶システムは、n値(nは3以上の自然数で、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含む。そして、図7に示すように、メモリセルが所定の書き換え回数(たとえば50万回)まではn値のメモリセルとして動作する。それ以後は、m値(mはn未満の自然数)のメモリセルとして動作する、記憶システムである。
【0068】
書き換え回数は、第2の実施の形態によって説明したように、各ブロック、あるいは各チップの書き換え回数記憶領域に記録し、この書き換え回数記憶領域をモニタすることにより、何値メモリセルで動作するかを決めればよい。
【0069】
図8は、第3の実施の形態に係る第2の記憶システムの動作フローを示す図である。
【0070】
第2の記憶システムは、n値(nは3以上の自然数で、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含む。そして、図8に示すように、メモリセルが所定の書き換え回数まではn値のメモリセルとして動作する。それ以後は、2値のメモリセルとして動作する、記憶システムである。
【0071】
図9は、第3の実施の形態に係る第3の記憶システムの動作フローを示す図である。
【0072】
第3の記憶システムは、n値(nは3以上の自然数で、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含む。そして、図9に示すように、メモリセルが第nの書き換え回数まではn値のメモリセルとして動作し、第(n−1)の書き換え回数までは、メモリセルは(n−1)値として動作し、第i(iは2以上の自然数)の書き換え回数までは、メモリセルはi値として動作する、記憶システムである。
【0073】
なお、ここでは、それぞれn値セル、(n−1)値セル、i値セルとしての書き換え回数の制限値と対応して設定される所定の書き換え回数を、第nの書き換え回数、第(n−1)の書き換え回数、第iの書き換え回数と定義しており、以下についても全く同様に定義するものとする。
【0074】
第4の記憶システムは、n値(nは3以上の自然数で、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含む。そして、半導体記憶装置において、該メモリセルが何値のデータを保持しているかを記憶する、レベル記憶手段を有する、記憶システムである。
【0075】
上記レベル記憶手段は、例えばフラッシュメモリチップの最初のブロック、例えば図5に示したBlock0に、その記憶内容を記憶させておけば良い。
【0076】
あるいは上記レベル記憶手段を電源投入時に読み出し、図6に示したDRAM102に、その記憶内容を記憶させておいても良い。そして、例えば4値メモリセルとして動作していたものが、書き換え回数記憶領域を読み出すことにより書き換え回数が50万回に達したことが判定されると、レベル記憶手段の内容を変更し、以後は2値メモリセルとして動作すればよい。以後は、レベル記憶手段を読み出すことにより、2値セルとして書き込みを行う。すなわち、ここでは、電源投入時などに、レベル記憶手段を読み出すことで、メモリセルを何値で動作させるかを、随時決めることができる。
【0077】
第5の記憶システムは、n値(nは3以上の自然数で、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含み、所定の数のメモリセルがメモリセルブロックを構成し、該メモリセルブロック単位で書き込み、または消去を行う半導体記憶装置であって、該メモリセルブロック内のメモリセルは所定の書き換え回数まではn値のメモリセルとして動作する。それ以後は、該メモリセルブロック内のすべてのメモリセルがm値(mはn未満の自然数)のメモリセルとして動作する、記憶システムである。
【0078】
また、第5の記憶システムは、各メモリセルブロック毎に、該メモリセルブロックの書き換え回数を記憶する書き換え回数記憶領域を有している。該メモリセルブロックが何値メモリセルで動作するかは、この書き換え回数記憶領域に記憶された書き換え回数に応じて、決めればよい。
【0079】
なお、ここでのメモリセルブロックとは、1本のドレイン側選択ゲートと、1本のソース側選択ゲートに挟まれたページの集合である、所謂ブロックに制限されるものではなく、単にデータの書き込み、または消去が同時に行われるメモリセル群を示すものである。例えばNAND型EEPROMでは、通常、上述したようなページ単位で書き込みが行われ、また、ブロック単位で消去が行われるので、この場合は、これらのページ、またはブロックが、ここでのメモリセルブロックに相当する。
【0080】
第6の記憶システムは、n値(nは3以上の自然数で、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含む半導体記憶装置であって、メモリセルが所定の書き換え回数まではn値のメモリセルとして動作する。それ以後は、該メモリセルが含まれるチップ内のすべてのメモリセルがm値(mはn未満の自然数)のメモリセルとして動作する、記憶システムである。
【0081】
また、第6の記憶システムは、各チップ毎に該チップの書き換え回数を記憶する書き換え回数記憶領域を有する。該チップが何値メモリセルで動作するかは、この書き換え回数記憶領域に記憶された書き換え回数に応じて決めればよい。
【0082】
図10は、第3の実施の形態に係る第7の記憶システムの動作フローを示す図である。
【0083】
第7の記憶システムは、n値(nは3以上の自然数で、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含む。そして、図10に示すように、メモリセルが第nの書き換え回数まではn値のメモリセルとして動作し、第mの書き換え回数までは、m値(mはn未満の自然数)のメモリセルとして動作し、それ以後は、該メモリセルを使用しない、記憶システムである。
【0084】
図11は、第3の実施の形態に係る第8の記憶システムの動作フローを示す図である。
【0085】
第8の記憶システムは、n値(nは3以上の自然数で、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含む。そして、図11に示すように、メモリセルが第nの書き換え回数まではn値のメモリセルとして動作し、第2の書き換え回数までは、2値のメモリセルとして動作し、それ以後は、該メモリセルを使用しない、記憶システムである。
【0086】
図12は、第3の実施の形態に係る第9の記憶システムの動作フローを示す図である。
【0087】
第9の記憶システムは、n値(nは3以上の自然数で、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含む。そして、図12に示すように、メモリセルが第nの書き換え回数まではn値のメモリセルとして動作し、第(n−1)の書き換え回数まではメモリセルは(n−1)値として動作し、以降順次、第i(iは2以上の自然数)の書き換え回数まではメモリセルはi値として動作する。その後、第2の書き換え回数に達した後は、該メモリセルは使用しない、記憶システムである。
【0088】
図13は、第3の実施の形態に係る第10の記憶システムの動作フローを示す図である。
【0089】
第10の記憶システムは、n値(nは3以上の自然数で、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含む。そして、図13に示すように、メモリセルが第nの書き換え回数まではn値のメモリセルとして動作し、第mの書き換え回数までは、m値(mはn未満の自然数)のメモリセルとして動作し、それ以後は、該メモリセルのデータを消去または書き込みしない、記憶システムである。
【0090】
図14は、第3の実施の形態に係る第11の記憶システムの動作フローを示す図である。
【0091】
第11の記憶システムは、n値(nは3以上の自然数で、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含む。そして、図14に示すように、メモリセルが第nの書き換え回数まではn値のメモリセルとして動作し、第2の書き換え回数までは、2値のメモリセルとして動作し、それ以後は、該メモリセルのデータを消去または書き込みしない、記憶システムである。
【0092】
図15は、第3の実施の形態に係る第12の記憶システムの動作フローを示す図である。
【0093】
第12の記憶システムは、n値(nは3以上の自然数で、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含む。そして、図15に示すように、メモリセルが第nの書き換え回数まではn値のメモリセルとして動作し、第(n−1)の書き換え回数まではメモリセルは(n−1)値として動作し、以降順次、第i(iは2以上の自然数)の書き換え回数まではメモリセルはi値として動作する。その後、第2の書き換え回数に達した後は、該メモリセルのデータを消去または書き込みしない、記憶システムである。
【0094】
図16は、第3の実施の形態に係る第13の記憶システムの動作フローを示す図である。
【0095】
第13の記憶システムは、n値(nは3以上の自然数、例えば3あるいは4あるいは8あるいは16)を記憶するメモリセルを含む。そして、図16に示すように、メモリセルが第nの書き換え回数まではn値のメモリセルとして動作し、第(n−1)の書き換え回数まではメモリセルは(n−1)値として動作し、以降順次、第i(iは3以上の自然数)の書き換え回数まではメモリセルはi値として動作する。そして、第3の書き換え回数までは3値として動作した後、第2の書き換え回数に達するまでは2値として使う。その後、第2の書き換え回数以後は、該メモリセルのデータを消去または書き込みをしなくてもよいし、該メモリセルを使用しなくてもよい。
【0096】
次に、この発明の第4の実施の形態に係る多値NAND型フラッシュメモリについて説明する。
【0097】
第4の実施の形態に係るフラッシュメモリでは、フラッシュメモリが何値で動作するかを、チップ外部からのコマンドを入力することによって制御する。以下、より具体的な4値NAND型フラッシュメモリを例にとり、説明する。
【0098】
第4の実施の形態では、フラッシュメモリ内部の動作モードとして4値用の書き込み、読み出し方法と、2値用の書き込み、読み出し方法がある。4値用の書き込み、読み出しを行うか、2値用の書き込み、読み出しを行うかはチップ外部のコントローラからのコマンドで制御する。
【0099】
以下では、4値用の書き込み、読み出し方法と、2値用の書き込み、読み出し方法についてそれぞれ説明する。消去は4値メモリセルの場合も、2値メモリセルの場合も、従来の2値NANDフラッシュメモリと同様にブロック単位、あるいは、チップ単位で行われる。
【0100】
[1]4値メモリセルとして動作する場合
図17は、この発明の第4の実施の形態に係る多値記憶式EEPROMの構成を示す構成図である。
【0101】
図17には、多値記憶式EEPROMの構成が示されている。メモリセルがマトリクス状に配置されて構成されるメモリセルアレイ1に対して、メモリセルを選択したり、制御ゲートに書き込み電圧および読み出し電圧を印加する制御ゲート・選択ゲート駆動回路2が設けられる。制御ゲート・選択ゲート駆動回路2は、アドレスバッファ5に接続されていて、アドレスバッファ5からのアドレス信号を受ける。データ回路3は、書き込みデータを保持したり、メモリセルのデータを読み出したりするための回路である。データ回路3は、データ入出力バッファ4に接続されていて、アドレスバッファ5からのアドレス信号を受ける。データ入出力バッファ4は、EEPROM外部とのデータ入出力制御を行う。
【0102】
図18は、図17に示すメモリセルアレイ1、およびデータ回路3の構成を示す構成図である。
【0103】
図18に示すように、NAND型セルは、メモリセルM1〜M4が直列に接続されることで構成されている。NAND型セルの両端は、選択トランジスタS1、S2を介して、それぞれビット線BL、ソース線Vsに接続される。制御ゲートCGを共有するメモリセルM群は、“ページ”と呼ばれる単位を形成し、同時にデータ書き込み・読み出しが為される。また、4本の制御ゲートCG1〜CG4に繋がるメモリセル群でブロックを形成する。“ページ”、“ブロック”は制御ゲート・選択ゲート駆動回路2によって選択される。各ビット線BL0 〜BLm には、データ回路3-0〜3-mが接続され、対応するメモリセルへの書き込みデータを一時的に記憶したりする。
【0104】
図19は、メモリセルMに4つの書き込み状態をもうけることによって4値記憶する場合の、メモリセルMのしきい値電圧と4つの書き込み状態(4値データ“0”、“1”、“2”、“3”)の関係を示す図である。
【0105】
図19に示すように、データ“0”の状態は、データを消去した後の状態と同じで、例えば負のしきい値を持つ。データ“1”の状態は、例えば0.5Vから0.8Vの間のしきい値を持つ。データ“2”の状態は、例えば1.5Vから1.8Vの間のしきい値を持つ。データ“3”の状態は、例えば2.5Vから2.8Vの間のしきい値を持つ。メモリセルMの制御ゲートCGに、読み出し電圧VCG2R を印加して、メモリセルが“ON”か“OFF”かでメモリセルのデータが「“0”、“1”のいずれかか、“2”、“3”のいずれかか」を検出できる。続けて、読み出し電圧VCG3R 、VCG1R を印加することでメモリセルのデータが完全に検出される。読み出し電圧VCG1R 、VCG2R 、VCG3R は、例えばそれぞれ0V、1V、2Vとされる。電圧VCG1V 、VCG2V 、VCG3V はベリファイ電圧と呼ばれ、データ書き込み時には、これらベリファイ電圧を制御ゲートに印加してメモリセルMの状態を検出し、十分書き込みが行われたか否かをチェックする。ベリファイ電圧VCG1V 、VCG2V 、VCG3V は、例えばそれぞれ0.5V、1.5V、2.5Vとされる。
【0106】
図20は、図17に示すメモリセルアレイ1、およびデータ回路3の回路図である。
【0107】
図20に示すように、データ回路3には、第1のフリップ・フロップFF1と、第2のフリップ・フロップFF2とが含まれている。この実施の形態における第1のフリップ・フロップFF1は、nチャネルMOSトランジスタQn21、Qn22、Qn23と、pチャネルMOSトランジスタQp9、Qp10、Qp11とで構成されており、所謂クロスカップル型ラッチ回路と呼ばれる回路となっている。また、第2のフリップ・フロップFF2も同様に、nチャネルMOSトランジスタQn29、Qn30、Qn31と、pチャネルMOSトランジスタQp16、Qp17、Qp18とで構成され、所謂クロスカップル型ラッチ回路と呼ばれる回路となっている。フリップ・フロップFF1、FF2にはそれぞれ、書き込み/読み出しデータがラッチされる。また、これらフリップ・フロップFF1、FF2はそれぞれ、ビット線BLa、あるいはビット線BLbの電位を増幅、即ちデータを増幅するセンスアンプとしても動作する。 フリップ・フロップFF1、FF2は、「“0”書き込みをするか、“1”書き込みをするか、“2”書き込みをするか、“3”書き込みをするか」を書き込みデータ情報としてラッチし、メモリセルが「“0”の情報を保持しているか、“1”の情報を保持しているか、“2”の情報を保持しているか、“3”の情報を保持しているか」を、読み出しデータ情報としてセンスしラッチする。
【0108】
データ入出力線IOA、IOBとフリップ・フロップFF1は、nチャネルMOSトランジスタQn28、Qn27を介して接続される。データ入出力線IOC、IODとフリップ・フロップFF2は、nチャネルMOSトランジスタQn35、Qn36を介して接続される。データ入出力線IOA、IOB、IOC、IODは、図17中のデータ入出力バッファ4にも接続される。
【0109】
nチャネルMOSトランジスタQn27、Qn28、Qn35、Qn36のゲートは、NAND論理回路G2とインバータI4で構成されるカラムアドレスデコーダの出力に接続される。nチャネルMOSトランジスタQn26、Qn34は、それぞれフリップ・フロップFF1、FF2を信号ECH1、ECH2が “H”となってイコライズする。nチャネルMOSトランジスタQn24、Qn32は、フリップ・フロップFF1、FF2とMOSキャパシタQd1の接続を制御する。nチャネルMOSトランジスタQn25、Qn33は、フリップ・フロップFF1、FF2とMOSキャパシタQd2の接続を制御する。
【0110】
pチャネルMOSトランジスタQp12C、Qp13Cで構成される回路は、活性化信号VRFYBACによって、フリップ・フロップFF1のデータに応じて、MOSキャパシタQd1のゲート電圧を変更する。pチャネルMOSトランジスタQp14C、Qp15Cで構成される回路は、活性化信号VRFYBBCによって、フリップ・フロップFF1のデータに応じて、MOSキャパシタQd2のゲート電圧を変更する。pチャネルMOSトランジスタQp12C、Qp19C、Qp20Cで構成される回路は、活性化信号VRFYBA2Cによって、フリップ・フロップFF1およびFF2のデータに応じて、MOSキャパシタQd1のゲート電圧を変更する。pチャネルMOSトランジスタQp14C、Qp21C、Qp22Cで構成される回路は、活性化信号VRFYBB2Cによって、フリップ・フロップFF1およびFF2のデータに応じて、MOSキャパシタQd2のゲート電圧を変更する。
【0111】
nチャネルMOSトランジスタQn1C、Qn2Cで構成される回路は、活性化信号VRFYBA1Cによって、フリップ・フロップFF2のデータに応じて、MOSキャパシタQd1のゲート電圧を変更する。nチャネルMOSトランジスタQn3C、Qn4Cで構成される回路は、活性化信号VRFYBB1Cによって、フリップ・フロップFF2のデータに応じて、MOSキャパシタQd2のゲート電圧を変更する。
【0112】
MOSキャパシタQd1、Qd2は、ディプリーション型nチャネルMOSトランジスタで構成され、ビット線容量より十分小さくされる。nチャネルMOSトランジスタQn37は、信号PREAによってMOSキャパシタQd1を電圧VAに充電する。nチャネルMOSトランジスタQn38は、信号PREBによってMOSキャパシタQd2を電圧VBに充電する。nチャネルMOSトランジスタQn39、Qn40は、信号BLCA、BLCBによって、データ回路3とビット線BLa、BLbの接続をそれぞれ制御する。nチャネルMOSトランジスタQn37、Qn38で構成される回路はビット線電圧制御回路を兼ねる。
【0113】
次に、図20に示すように構成されているデータ回路3を備えるフラッシュメモリ(EEPROM)の動作を、タイミング図にしたがって説明する。以下では制御ゲートCG2Aが選択されている場合を示す。
【0114】
<読み出し動作>
図21は、読み出し動作のときのタイミング図である。以下、図21にしたがって、読み出し動作を説明する。
【0115】
図21に示すように、まず、時刻t1RCに、電圧VA、VBがそれぞれ1.8V、1.5Vとなって、ビット線BLa、BLbの電位はそれぞれ、1.8V、1.5Vになる。さらに、信号BLCA、BLCBがそれぞれ“L”レベルとなって、ビット線BLaとMOSキャパシタQd1、およびビット線BLbとMOSキャパシタQd2は切り離され、ビット線BLa、BLbはフローティングとなる。また、信号PREA、PREBがそれぞれ“L”レベルとなって、MOSキャパシタQd1、Qd2のゲート電極であるノードN1、N2はフローティング状態になる。
【0116】
続いて、時刻t2RCに、制御ゲート・選択ゲート駆動回路2によって選択されたブロックの、選択された制御ゲートCG2Aは0V、非選択制御ゲートCG1A、CG3A、CG4Aと選択ゲートSG1A、SG2AはVCCにされる。選択されたメモリセルのしきい値が0V以下なら、ビット線電圧は1.5Vより低くなる。選択されたメモリセルのしきい値が0V以上なら、ビット線電圧は1.8Vのままとなる。
【0117】
この後、時刻t3RCに、信号BLCA、BLCBがそれぞれ“H”レベルとなり、ビット線のデータがMOSキャパシタQd1,Qd2に転送される。その後、再度、信号BLCA、BLCBが“L”となって、ビット線BLaとMOSキャパシタQd1、ビット線BLbとMOSキャパシタQd2は切り離される。さらに、信号SAN1、SAP1がそれぞれ“L”レベル、“H”レベルとなって、フリップ・フロップFF1が非活性化され、さらに、信号ECH1が“H”レベルとなって、フリップ・フロップFF1の2つの入出力端子(ノードN3C、N4C)は互いにイコライズされる。さらに、この後、信号RV1A、RV1Bがそれぞれ“H”レベルとなる。
【0118】
続いて、時刻t4RCに、再度、信号SAN1、SAP1がそれぞれ“H”レベル、“L”レベルとなることで、ノードN1の電圧が、フリップ・フロップFF1によってセンスされ、そして、フリップ・フロップFF1にラッチされる。これにより、「メモリセルのデータが“0”か、あるいは“1”または“2”または“3”か」が、フリップ・フロップFF1によってセンスされ、その情報がラッチされる。なお、選択された制御ゲートCG2Aは、1Vにされている。この結果、選択されたメモリセルのしきい値が1V以下なら、ビット線電圧は1.5Vより低くなる。選択されたメモリセルのしきい値が1V以上なら、ビット線電圧は1.8Vのままとなる。
【0119】
続いて、時刻t5RCに、信号PREA、PREBがそれぞれ“H”レベルとなって、MOSキャパシタQd1、Qd2のゲート電極であるノードN1、N2はそれぞれ1.8V、1.5Vになる。この後、信号PREA、PREBがそれぞれ“L”レベルとなって、MOSキャパシタQd1、Qd2のゲート電極であるノードN1、N2はフローティング状態になる。
【0120】
この後、時刻t6RCに、信号BLCA、BLCBがそれぞれ“H”レベルとされる。再度、信号BLCA、BLCBがそれぞれ“L”レベルとなって、ビット線BLaとMOSキャパシタQd1、ビット線BLbとMOSキャパシタQd2は切り離される。この後、信号SAN2、SAP2がそれぞれ“L”レベル、“H”レベルとなって、フリップ・フロップFF2が非活性化され、さらに信号ECH2が“H”となって、フリップ・フロップFF2の2つの入出力端子(ノードN5C、N6C)は互いにイコライズされる。この後、信号RV2A、RV2Bがそれぞれ“H”レベルとなる。
【0121】
続いて、時刻t7RCに、再度、信号SAN2、SAP2がそれぞれ“H”レベル、“L”レベルとなることで、ノードN1の電圧が、フリップ・フロップFF2によってセンスされ、そして、フリップ・フロップFF2にラッチされる。これにより、「メモリセルのデータが“0”または“1”か、あるいは“2”または“3”か」がフリップ・フロップFF2によってセンスされ、その情報はラッチされる。この時のフリップフロップFF1、FF2のノードN3C、N5Cの電位の関係は、図22に示すような関係となる。
【0122】
最後に、メモリセルに書き込まれたデータが「“2”または“3”か」がセンスされる。選択された制御ゲートCG2Aが2Vにされている。選択されたメモリセルのしきい値が2V以下なら、ビット線電圧は1.5Vより低くなる。選択されたメモリセルのしきい値が2V以上なら、ビット線電圧は1.8Vのままとなる。
【0123】
この後、時刻t8RCに、信号PREA、PREBがそれぞれ“H”レベルとなって、MOSキャパシタQd1、Qd2のゲート電極であるノードN1、N2はそれぞれ1.8V、1.5Vになる。さらに、信号PREA、PREBがそれぞれ“L”レベルとなって、MOSキャパシタQd1、Qd2のゲート電極であるノードN1、N2はフローティング状態になる。
【0124】
この後、時刻t10RCに、信号BLCA、BLCBがそれぞれ“H”レベルとされる。その後、再度、信号BLCA、BLCBが“L”レベルとなって、ビット線BLaとMOSキャパシタQd1、ビット線BLbとMOSキャパシタQd2は切り離される。
【0125】
MOSキャパシタのデータをセンスするに先立ち、時刻t11RCに、信号VRFYBA2Cが0Vになる。図22からわかるように、ノードN5Cが“Low level ”およびノードN3Cが“High level”(つまりノードN4Cが“Low level ”)になるのは“1”データの場合のみである。したがって、“1”データの場合のみ、pチャネルMOSトランジスタQp12C,Qp19C,Qp20Cがオンし、ノードN1がVCCになる。その後、信号SAN1、SAP1がそれぞれ“L”レベル、“H”レベルとなって、フリップ・フロップFF1が非活性化され、信号ECH1が“H”となってイコライズされる。この後、信号RV1A、RV1Bがそれぞれ“H”レベルとなる。
【0126】
時刻t12RCに、再度、信号SAN1、SAP1がそれぞれ“H”レベル、“L”レベルとなることで、ノードN1の電圧が、フリップ・フロップFF1にセンスされ、そして、ラッチされる。これにより、「メモリセルのデータが“2”か“3”か」が、フリップ・フロップFF1によってセンスされ、その情報がラッチされる。
【0127】
以上の読み出し動作の結果、4値のデータが図23に示すように、フリップフロップFF1、FF2にラッチされる。図中の各データのしきい値分布は、次のとうりである。
【0128】
データ“0”・・・しきい値:0V以下
データ“1”・・・しきい値:0.5V以上0.8V以下
データ“2”・・・しきい値:1.5V以上1.8V以下
データ“3”・・・しきい値:2.5V以上2.8V以下
読み出し中、信号VRFYBAC、VRFYBBCはともに“H”レベル、信号VRFYBA1C,VRFYBB1Cはともに“L”レベルである。また、電圧Vsは0Vとする。
【0129】
カラムアドレスデコーダに入力されるカラム活性化信号CENBが“H”レベルとなると、アドレス信号によって選択されたデータ回路3に保持されているデータが、データ入出力線IOA、IOB、IOC、IODに出力され、データ入出力バッファ4を介してEEPROM外部へ出力される。
【0130】
メモリセルに記憶されているデータ、しきい値、データ入出力線IOA、IOB、IOC、IODに読み出し後に出力されるレベルの関係は、図23に示すような関係となる。
【0131】
チップ外部への出力データは、データ入出力バッファ4でデータ入力線IOA、IOB、IOC、IODに出力された信号をもとに変換したものであってもよい。
【0132】
<書き込み動作>
まず、書き込みデータがフリップフロップFF1,FF2にロードされる。その後、“1”データ、“2”データおよび“3”データがほぼ同時に書き込まれる。そして“1”データ、“2”データ、“3”データが十分に書き込まれたかを調べるベリファイリードが行われ、書き込み不十分のメモリセルがある場合には、再書き込みが行われる。すべてのメモリセルが十分に書き込まれることを、書き込み終了検知回路が検知することにより書き込みが終了する。
【0133】
以下では、まず、プログラムについて説明し、次にベリファイリードについて説明する。
【0134】
(1) プログラム
書き込み動作前に、入力された2ビット分のデータは、データ入出力バッファ4で変換されて、データ回路3に入力される。4値データとデータ入出力線IOA、IOB、IOC、IODの関係は図24に示すような関係となる。
【0135】
変換された4値データは、カラム活性化信号CENBが“H”レベルで、アドレス信号で指定されたカラム番地のデータ回路3に転送される。
【0136】
図25は、書き込み動作のときのタイミング図である。以下、図25にしたがって、書き込み動作を説明する。
【0137】
図25に示すように、まず、時刻t1Sに、電圧VAがビット線書き込み制御電圧1Vとなって、ビット線BLaが1Vとされる。nチャネルMOSトランジスタQn39のしきい値分の電圧降下分が問題になるときは、信号BLCAを昇圧すればよい。続いて、信号PREAが“L”レベルとなって、ビット線BLaがフローティングにされる。
【0138】
次に、時刻t2Sに、信号RV2Aが1.5Vとされる。これによって、データ“1”または“3”が保持されているデータ回路からは、ビット線制御電圧0Vが、ビット線BLaに印加される。nチャネルMOSトランジスタQn32のしきい値を1Vとすると、“0”または“2”書き込み時にはnチャネルMOSトランジスタQn32は“OFF”、“1”または“3”書き込み時には“ON”となる。
【0139】
その後、時刻t3Sに、信号VRFYBACが0Vになり、データ“0”またはデータ“1”が保持されているデータ回路からは、ビット線書き込み制御電圧VCCが、ビット線BLaに出力される。
【0140】
そして、時刻t4Sに、信号VRFYBA2Cが0Vになり、データ“1”が保持されているデータ回路からは、端子V1を介して、ビット線“1”書き込み電位2Vがビット線BLaに出力される。
【0141】
その結果、“0”書き込みするビット線はVCC、“1”書き込みするビット線は2V,“2”書き込みするビット線は1V,“3”書き込みするビット線は0Vになる。また、時刻t1S〜t4Sでは、制御ゲート・選択ゲート駆動回路2によって、選択されたブロックの選択ゲートSG1A、制御ゲートCG1A〜CG4AがVCCとなっている。また、選択ゲートSG2Aは0Vである。
【0142】
次に、時刻t5sに、選択された制御ゲートCG2Aが高電圧VPP(例えば20V)、非選択制御ゲートCG1A、CG3A、CG4Aが電圧VM(例えば10V)となる。データ“3”が保持されているデータ回路に対応するメモリセルでは、0Vのチャネル電位と制御ゲートのVPPの電位差によって、浮遊ゲートに電子が注入され、メモリセルのしきい値が上昇する。データ“2”が保持されているデータ回路に対応するメモリセルでは、1Vのチャネル電位と制御ゲートのVPPの電位差によって、浮遊ゲートに電子が注入され、メモリセルのしきい値が上昇する。データ“1”が保持されているデータ回路に対応するメモリセルでは、2Vのチャネル電位と制御ゲートのVPPの電位差によって、浮遊ゲートに電子が注入され、メモリセルのしきい値が上昇する。“2”書き込みの場合のチャネル電位を1V、“1”書き込みの場合のチャネル電位を2Vにしているのは、電子の注入量を“3”データ書き込みの場合、“2”書き込みの場合、 “1”書き込みの場合の順番で少なくするためである。データ“0”が保持されているデータ回路に対応するメモリセルでは、チャネル電位と制御ゲートのVPPの電位差が小さいため、実効的には浮遊ゲートに電子は注入されない。よって、メモリセルのしきい値は変動しない。書き込み動作中、信号SAN1、SAN2、PREB、BLCBは“H”レベル、信号SAP1、SAP2、VRFYBA1C、RV1A、RV1B、RV2B、ECH1、ECH2は“L”レベル、電圧VBは0Vである。
【0143】
(2) ベリファイリード
書き込み動作後、書き込みが充分に行われたかを検出する(書き込みベリファイ)。もし、所望のしきい値に達していれば、データ回路のデータを“0”に変更する。もし、所望のしきい値に達していなければ、データ回路のデータを保持して、再度、書き込み動作を行う。書き込み動作と書き込みベリファイは、全ての“1”書き込みするメモリセル、“2”書き込みするメモリセルおよび“3”書き込みするメモリセルが所望のしきい値に達するまで繰り返される。
【0144】
図26および図27はそれぞれ、書き込みベリファイ動作のときのタイミング図である。なお、図26および図27はそれぞれ、時間的に連続した図面である。図26の紙面右側に、信号波形の端部に付されている数字1〜32は、図27の紙面左側に、信号波形の端部に付されている数字1〜32につながっていることを示している。以下、図26および図27にしたがって、書き込みベリファイ動作を説明する。
【0145】
まず、“1”書き込みするメモリセルが、所定のしきい値に達しているかを検出する。
【0146】
図26に示すように、まず、時刻t1YCに、電圧VA、VBがそれぞれ1.8V、1.5Vとなって、ビット線BLa、BLbはそれぞれ、1.8V、1.5Vになる。さらに、信号BLCA、BLCBがそれぞれ“L”レベルとなって、ビット線BLaとMOSキャパシタQd1、ビット線BLbとMOSキャパシタQd2は切り離され、ビット線BLa、BLbはフローティングとなる。また、信号PREA、PREBがそれぞれ“L”レベルとなって、MOSキャパシタQd1、Qd2のゲート電極であるノードN1、N2はフローティング状態になる。
【0147】
続いて、時刻t2YCに、制御ゲート・選択ゲート駆動回路2によって選択されたブロックの選択された制御ゲートCG2Aは0.5V、非選択制御ゲートCG1A、CG3A、CG4Aと選択ゲートSG1A、SG2AはVCCにされる。選択されたメモリセルのしきい値が0.5V以下なら、ビット線電圧は1.5Vより低くなる。選択されたメモリセルのしきい値が0.5V以上なら、ビット線電圧は1.8Vのままとなる。
【0148】
この後、時刻t3YCに、信号BLCA、BLCBがそれぞれ“H”レベルとされ、ビット線の電位がノードN1、N2に転送される。その後、信号BLCA、BLCBがそれぞれ“L”レベルとなって、ビット線BLaとMOSキャパシタQd1、ビット線BLbとMOSキャパシタQd2は切り離される。
【0149】
この後、時刻t4YCに、信号RV1Aが1.5Vになり、“2”書き込みの場合および“3”書き込みの場合には、ノードN1が0Vに放電される。
【0150】
続いて、時刻t5YCに、信号VRFYBA1Cが“H”レベルとなると、 “0”または“2”書き込みデータが保持されているデータ回路では、nチャネルMOSトランジスタQn2が“ON”であり、ノードN1はVCCとなる。その結果、ノードN1は“0”書き込みまたは“2”書き込みの場合にはVCC,“3”書き込みの場合には0Vになる。この後、信号SAN2、SAP2がそれぞれ“L”レベル、“H”レベルとなって、フリップ・フロップFF2が非活性化され、信号ECH2が“H”となって、フリップ・フロップFF2の2つの入出力端子(ノードN5C、N6C)は互いにイコライズされる。この後、信号RV2A、RV2Bがそれぞれ“H”レベルとなる。
【0151】
この後、時刻t6YCに、再度、信号SAN2、SAP2がそれぞれ“H”レベル、“L”レベルとなることで、ノードN1の電圧がセンスされ、ラッチされる。これにより、“1”書き込みデータを保持しているデータ回路のみ、対応するメモリセルのデータが十分に“1”書き込み状態となったか否かを検出する。メモリセルのデータが“1”であれば、フリップ・フロップFF2でノードN1の電圧をセンスし、ラッチすることで書き込みデータは“0”に変更される。反対に、メモリセルのデータが“1”でなければ、フリップ・フロップFF1でノードN2の電圧をセンスし、ラッチすることで書き込みデータは“1”に保持される。“0”または“2”または“3”書き込みデータを保持しているデータ回路の書き込みデータは変更されない。なお、選択された制御ゲートは1.5Vにされている。選択されたメモリセルのしきい値が1.5V以下なら、ビット線電圧は1.5Vより低くなる。選択されたメモリセルのしきい値が1.5V以上なら、ビット線電圧は1.8Vのままとなる。
【0152】
続いて、時刻t7YCに、信号PREA,PREBがそれぞれVCCになり、ノードN1、N2がそれぞれ1.8V、1.5Vになった後、フローティングになる。
【0153】
この後、図27に示すように、時刻t8YCに、信号BLCA、BLCBがそれぞれ“H”レベルとされ、ビット線の電位がN1、N2に転送される。その後、信号BLCA、BLCBが“L”となって、ビット線BLaとMOSキャパシタQd1、ビット線BLbとMOSキャパシタQd2は切り離される。
【0154】
この後、時刻t9YCに、信号RV2Aが、例えばVCC以下の1.5Vとされる。nチャネルMOSトランジスタQn32のしきい値が1Vの場合、“3”書き込みデータが保持されているデータ回路では、nチャネルMOSトランジスタQn32は“ON”で、ノードN1は0Vとなる。“2”書き込みデータが保持されているデータ回路で、メモリセルが十分に“2”書き込みされている場合には、nチャネルMOSトランジスタQn32は“OFF”で、ノードN1は1.5V以上に保たれる。“2”書き込み不十分の場合には、ノードN1は1.5V以下である。
【0155】
この後、時刻t10YCに、信号VRFYBACが“L”レベルとなると、 “0”または“1”書き込みデータが保持されているデータ回路では、pチャネルMOSトランジスタQp13Cが“ON”し、ノードN1はVCCとなる。さらに、信号SAN1、SAP1がそれぞれ“L”レベル、“H”レベルとなって、フリップ・フロップFF1が非活性化され、信号ECH1が“H”レベルとなって、フリップ・フロップFF1の2つの入出力端子(ノードN3C、N4C)が互いにイコライズされる。この後、信号RV1A、RV1Bがそれぞれ“H”レベルとなる。
【0156】
この後、時刻t11YCに、再度、信号SAN1、SAP1がそれぞれ“H”レベル、“L”レベルとなることで、ノードN1の電圧がセンスされ、ラッチされる。これにより、“2”書き込みデータを保持しているデータ回路のみ、対応するメモリセルのデータが十分に“2”書き込み状態となったか否かを検出する。メモリセルのデータが“2”であれば、フリップ・フロップFF1でノードN1の電圧をセンスし、ラッチすることで書き込みデータは“0”に変更される。反対に、メモリセルのデータが“2”でなければ、フリップ・フロップFF1でノードN1の電圧をセンスし、ラッチすることで書き込みデータは“2”に保持される。“0”または“1”または“3”書き込みデータを保持しているデータ回路の書き込みデータは変更されない。なお、選択された制御ゲートは2.5Vにされている。選択されたメモリセルのしきい値が2.5V以下なら、ビット線電圧は1.5Vより低くなる。選択されたメモリセルのしきい値が2.5V以上なら、ビット線電圧は1.8Vのままとなる。
【0157】
この後、時刻t12YCに、信号BLCA、BLCBがそれぞれ“H”レベルとされ、ビット線の電位がN1、N2に転送される。その後、再度、信号BLCA、BLCBがそれぞれ“L”レベルとなって、ビット線BLaとMOSキャパシタQd1、ビット線BLbとMOSキャパシタQd2は切り離される。
【0158】
この後、時刻t13YCに、信号VRFYBACが“L”レベルとなると、 “0”または“1”書き込みデータが保持されているデータ回路、および“2”書き込みが十分に行われたデータ回路では、pチャネルMOSトランジスタQp13Cが“ON”し、ノードN1はVCCとなる。さらに、信号SAN1、SAP1がそれぞれ“L”レベル、“H”レベルとなって、フリップ・フロップFF1が非活性化され、信号ECH1が“H”レベルとなって、フリップ・フロップFF1の2つの入出力端子(ノードN3C、N4C)が互いにイコライズされる。この後、信号RV1A、RV1Bがそれぞれ“H”レベルとなる。
【0159】
この後、時刻t14YCに、信号SAN1、SAP1がそれぞれ“H”レベル、“L”レベルとなることで、ノードN1の電圧がセンスされ、ラッチされる。この後、図27に示されるように、上述したような書き込みデータの変換が、さらに行われる。
【0160】
次いで、時刻t15YCに、信号BLCA、BLCBがそれぞれ“H”レベルとされ、ビット線の電位がN1、N2に転送される。その後、再度、信号BLCA、BLCBが“L”となって、ビット線BLaとMOSキャパシタQd1、ビット線BLbとMOSキャパシタQd2は切り離される。
【0161】
この後、時刻t16YCに、信号VRFYBA1Cが“H”レベルとなると、“0”または“2”書き込みデータが保持されているデータ回路、および“1”書き込み十分のデータ回路では、nチャネルMOSトランジスタQn2Cが“ON”し、ノードN1はVCCとなる。さらに、信号SAN2、SAP2がそれぞれ“L”レベル、“H”レベルとなって、フリップ・フロップFF2が非活性化され、信号ECH2が“H”レベルとなって、フリップ・フロップFF2の2つの入出力端子(ノードN5C、N6C)が互いにイコライズされる。この後、信号RV2A、RV2Bがそれぞれ“H”レベルとなる。
【0162】
この後、時刻t17YCに、信号SAN2、SAP2がそれぞれ“H”レベル、“L”レベルとなることで、ノードN1の電圧がセンスされ、ラッチされる。
【0163】
この実施の形態では、時刻t16YCに、信号VRFYBA1CをVCCにすることにより、“0”書き込み、および“2”書き込みする場合のMOSキャパシタQd1のノードN1を、ノードN2の電位(1.5V)よりも高くなるように充電している。時刻t16YCに、信号RV2Bを、例えば1.5Vにしても良い。この場合、“0”書き込み、または“2”書き込みの場合には、ノードN6Cが0VなのでnチャネルMOSトランジスタQn33がオンし、ノードN2は0Vになる。一方、“1”または“3”書き込みの場合には、ノードN6CがVCC、ノードN2が1.5Vなので、nチャネルMOSトランジスタQn33はオフし、ノードN2は1.5Vに保たれる。時刻t16YCに、信号VRFYBA1CをVCCにして行う、“0”書き込み、および“2”書き込みする場合の、ノードN1への充電は、ノードN2の電位(0V)よりも大きければよいので、ノードN1の充電は、例えば0.5V程度の低い電圧でよい。
【0164】
以上のようにして、“3”書き込みデータを保持しているデータ回路のみ、対応するメモリセルのデータが十分に“3”書き込み状態となったか否かを検出する。メモリセルのデータが“3”であれば、フリップ・フロップFF1、FF2でノードN1の電圧をセンスし、ラッチすることで、書き込みデータは“0”に変更される。メモリセルのデータが“3”でなければ、フリップ・フロップFF1、FF2でノードN1の電圧をセンスし、ラッチすることで、書き込みデータは“3”に保持される。“0”または“1”または“2”書き込みデータを保持しているデータ回路の書き込みデータは変更されない。
【0165】
書き込みベリファイ中、信号VRFYBBCは“H”、信号VRFYBB1Cは“L”、電圧Vsは0Vとする。
【0166】
選択されたメモリセルの全てが、所望のしきい値に達していれば、データ回路のデータは“0”データになる。つまり、書き込みが終了すると、ノードN4C、N6Cが“L”レベルになる。これを検出することにより、選択されたメモリセルの全てが、所望のしきい値に達したか否かがわかる。書き込み終了の検出は、例えば、図20に示されている、ノードN4Cにゲートを接続した書き込み終了一括検知トランジスタQn5C、およびノードN6Cにゲートを接続した書き込み終了一括検知トランジスタQn6Cを用いればよい。
【0167】
ベリファイリード後、まず、端子VRTCを、例えばVCCにプリチャージする。書き込みが不十分なメモリセルが1つでもあると、そのデータ回路のノードN4CまたはN6Cの少なくとも一方は“H”レベルなので、nチャネルMOSトランジスタQn5CおよびQn6Cの少なくとも1つはオンし、端子VRTCの電位は、プリチャージ電位から低下する。全てのメモリセルが十分に書き込まれると、データ回路3-0、3-1、…、3-m-1、3-mのノードN4C、N6Cが “L”レベルになる。その結果、全てのデータ回路内のnチャネルMOSトランジスタQn5CおよびQn6Cがオフになるので、端子VRTCの電位は、プリチャージ電位を保つ。
【0168】
[2]2値メモリセルとして動作する場合
メモリセルが2値セルとして動作する場合の書き込み、読み出し手順を、以下に説明する。読み出し、書き込みデータを制御する回路は、4値セルとして動作する場合と同様に、図20に示される回路である。
【0169】
<書き込み動作>
(1) プログラム
書き込み動作前に、入力されたデータは、データ入出力バッファ4を経て、データ回路3に入力される。データは、カラム活性化信号CENBが“H”レベルで、IOA、IOBを介してフリップ・フロップFF1に入力される。
【0170】
図28は、メモリセルMに2つの書き込み状態をもうけることによって2値記憶する場合の、メモリセルMのしきい値電圧と2つの書き込み状態(2値データ“0”、“1”)の関係を示す図である。また、図29は、書き込みデータと、フリップ・フロップFF1のノードN3C、N4Cとの関係を示す図である。また、図30は、書き込み動作のときのタイミング図である。以下、図30にしたがって、書き込み動作を説明する。
【0171】
図30に示すように、まず、時刻t1Sに、信号VRFYBACが0Vになり、データ“0”が保持されているデータ回路からは、ビット線書き込み制御電圧VCCがビット線BLaに出力される。
【0172】
その後、時刻t2Sに、信号RV1AがVCCになることにより、データ“1”が保持されているデータ回路からは、電圧0Vがビット線に出力される。
【0173】
その結果、“0”書き込みするビット線はVCC、“1”書き込みするビット線は0Vになる。また、時刻t1Sに、制御ゲート・選択ゲート駆動回路2によって、選択されたブロックの選択ゲートSG1A、制御ゲートCG1A〜CG4AがVCCとされる。選択ゲートSG2Aは0Vである。
【0174】
次に、時刻t3Sに、選択された制御ゲートCG2Aが高電圧VPP(例えば20V)、非選択制御ゲートCG1A、CG3A、CG4Aが電圧VM(例えば10V)となる。データ“1”が保持されているデータ回路に対応するメモリセルでは、0Vのチャネル電位と制御ゲートのVPPの電位差によって、浮遊ゲートに電子が注入され、メモリセルのしきい値が上昇する。データ“0”が保持されているデータ回路に対応するメモリセルでは、選択ゲートSG1Aがオフになるので、メモリセルのチャネルはフローティングになる。その結果、メモリセルのチャネルは制御ゲートとの間の容量結合により、8V程度になる。データ“0”を書き込むメモリセルではチャネルが8V、制御ゲートが20Vなので、メモリセルへの電子の注入は行われず、消去状態(“0”)を保つ。書き込み動作中、信号SAN1、SAN2、PREB、BLCB、VRFYBA2Cは“H”レベル、信号SAP1、SAP2、VRFYBA1C、RV1B、RV2B、ECH1、ECH2は“L”レベル、電圧VBは0Vである。
【0175】
(2) ベリファイリード
書き込み動作後、書き込みが充分に行われたかを検出する(書き込みベリファイ)。もし、所望のしきい値に達していれば、データ回路のデータを“0”に変更する。もし、所望のしきい値に達していなければ、データ回路のデータを保持して、再度、書き込み動作を行う。書き込み動作と書き込みベリファイは、全ての“1”書き込みするメモリセルが所望のしきい値に達するまで繰り返される。
【0176】
図31は、書き込みベリファイ動作のときのタイミング図である。
【0177】
以下、図20に示す回路図と、図31に示すタイミング図とを用いて、書き込みベリファイ動作を説明する。
【0178】
図31に示すように、まず、時刻t1YCに、電圧VA、VBがそれぞれ1.8V、1.5Vとなって、ビット線BLa、BLbはそれぞれ、1.8V、1.5Vになる。さらに、信号BLCA、BLCBがそれぞれ“L”レベルとなって、ビット線BLaとMOSキャパシタQd1、ビット線BLbとMOSキャパシタQd2は切り離され、ビット線BLa、BLbはフローティングとなる。また、信号PREA、PREBがそれぞれ“L”レベルとなって、MOSキャパシタQd1、Qd2のゲート電極であるノードN1、N2はフローティング状態になる。
【0179】
続いて、時刻t2YCに、制御ゲート・選択ゲート駆動回路2によって選択されたブロックの選択された制御ゲートCG2Aは0.5V、非選択制御ゲートCG1A、CG3A、CG4Aと選択ゲートSG1A、SG2AはVCCにされる。選択されたメモリセルのしきい値が0.5V以下なら、ビット線電圧は1.5Vより低くなる。選択されたメモリセルのしきい値が0.5V以上なら、ビット線電圧は1.8Vのままとなる。
【0180】
この後、時刻t3YCに、信号BLCA、BLCBがそれぞれ“H”レベルとされ、ビット線の電位がノードN1、N2に転送される。その後、信号BLCA、BLCBがそれぞれ“L”レベルとなって、ビット線BLaとMOSキャパシタQd1、ビット線BLbとMOSキャパシタQd2は切り離される。
【0181】
この後、時刻t4YCに、信号VRFYBACが“L”となると、“0”書き込みデータが保持されているデータ回路では、pチャネルMOSトランジスタQp12Cが“ON”であり、ノードN1はVCCとなる。その結果、ノードN1は“0”書き込みの場合にはVCCになる。“1”書き込みの場合には、pチャネルMOSトランジスタQp12Cが“OFF”する。つまり、“1”書き込みが十分に行われた場合には、N1はVCCになり、“1”書き込みが不十分の場合には、N1は0Vになる。その後、信号SAN1、SAP1がそれぞれ“L”、“H”となってフリップ・フロップFF1が非活性化され、信号ECH1が“H”となって、フリップ・フロップFF1の2つの入出力端子(ノードN3C、N4C)は互いにイコライズされる。この後、信号RV1A、RV1Bが“H”となる。
【0182】
この後、時刻t5YCに、再度、信号SAN1、SAP1がそれぞれ“H”レベル、“L”レベルとなることで、ノードN1の電圧がセンスされ、ラッチされる。これにより、“1”書き込みデータを保持しているデータ回路のみ、対応するメモリセルのデータが十分に“1”書き込み状態となったか否かを検出する。メモリセルのデータが“1”であれば、フリップ・フロップFF1でノードN1の電圧をセンスし、ラッチすることで書き込みデータは“0”に変更される。反対に、メモリセルのデータが“1”でなければ、フリップ・フロップFF1でノードN1の電圧をセンスし、ラッチすることで書き込みデータは“1”に保持される。“0”書き込みデータを保持しているデータ回路の書き込みデータは変更されない。
【0183】
選択されたメモリセルの全てが、所望のしきい値に達していれば、データ回路のノードN4Cが“L”になる。これを検出することにより、全ての選択されたメモリセルが所望のしきい値に達したか否かがわかる。書き込み終了の検出は、例えば、図20に示されている、ノードN4Cにゲートを接続した書き込み終了一括検知トランジスタQn5Cを用いればよい。
【0184】
ベリファイリード後、まず、端子VRTCを、例えばVCCにプリチャージする。書き込みが不十分なメモリセルが1つでもあると、そのデータ回路のノードN4Cは“H”なので、nチャネルMOSトランジスタQn5Cはオンし、端子VRTCの電位は、プリチャージ電位から低下する。全てのメモリセルが十分に書き込まれると、データ回路3-0、3-1、…、3-m-1、3-mのノードN4Cが、全て“L”レベルになる。その結果、全てのデータ回路内のnチャネルMOSトランジスタQn5Cがオフになるので、端子VRTCの電位は、プリチャージ電位を保ち、書き込み終了が検知される。
【0185】
<読み出し動作>
読み出し動作では、「“0”または“1”か」が読み出される。
【0186】
図32は、読み出し動作のときのタイミング図である。以下、図32にしたがって、読み出し動作を説明する。
【0187】
図32に示すように、まず、時刻t1RDに、電圧VA、VBがそれぞれ1.8V、1.5Vとなって、ビット線BLa、BLbの電位はそれぞれ、1.8V、1.5Vになる。さらに、信号BLCA、BLCBがそれぞれ“L”レベルとなって、ビット線BLaとMOSキャパシタQd1、ビット線BLbとMOSキャパシタQd2は切り離され、ビット線BLa、BLbはフローティングとなる。また、信号PREA、PREBがそれぞれ“L”レベルとなって、MOSキャパシタQd1、Qd2のゲート電極であるノードN1、N2はフローティング状態になる。
【0188】
続いて、制御ゲート・選択ゲート駆動回路2によって選択されたブロックの選択された制御ゲートCG2Aは0V、非選択制御ゲートCG1A、CG3A、CG4Aと選択ゲートSG1A、SG2AはVCCにされる。選択されたメモリセルのしきい値が0V以下なら、ビット線電圧は1.5Vより低くなる。選択されたメモリセルのしきい値が0V以上なら、ビット線電圧は1.8Vのままとなる。
【0189】
この後、時刻t2RDに、信号BLCA、BLCBがそれぞれ“H”レベルとなり、ビット線のデータがMOSキャパシタQd1,Qd2に転送される。その後、再度、信号BLCA、BLCBが“L”となって、ビット線BLaとMOSキャパシタQd1、ビット線BLbとMOSキャパシタQd2は切り離される。さらに、信号SAN1、SAP1がそれぞれ“L”レベル、“H”レベルとなって、フリップ・フロップFF1が非活性化され、信号ECH1が“H”となって、フリップ・フロップFF1の2つの入出力端子(ノードN3C、N4C)は互いにイコライズされる。さらに、この後、信号RV1A、RV1Bがそれぞれ“H”レベルとなる。
【0190】
続いて、時刻t3RDに、再度、信号SAN1、SAP1がそれぞれ“H”レベル、“L”レベルとなることで、ノードN1の電圧が、フリップ・フロップFF1によってセンスされ、そして、フリップ・フロップFF1にラッチされる。これにより、「メモリセルのデータが“0”か、あるいは“1”か」が、フリップ・フロップFF1によってセンスされ、その情報がラッチされる。
【0191】
次に、この発明の第5の実施の形態に係る記憶システムについて説明する。
【0192】
上記第1〜第4の実施の形態により説明した記憶システムでは、メモリセルの性能(何値メモリセルとして使用するか)を、メモリセルの書き換え回数をモニタする、あるいはメモリセルの使用時間をモニタすることにより、判定していた。しかし、モニタの仕方は、上記の方法に限られるものではない。
【0193】
この第5の実施の形態に係る記憶システムでは、上記メモリセルの性能切り換えの判定に、特に有効である、新規なモニタの仕方、および新規なモニタの仕方を含む記憶システムを提供する。
【0194】
図33は、第5の実施の形態に係る第1の記憶システムの動作フローを示す図である。
【0195】
図33に示すように、第1の記憶システムは、書き込みのベリファイ数、すなわち、書き込み・ベリファイリードサイクル数をモニタする。もちろん、書き込みのベリファイ回数に限らず、消去のベリファイ数をモニタするようにしても良い。
【0196】
すなわち、NAND型EEPROMでは、書き込み、消去に際して、プログラムパルスを印加した後に、書き込み、あるいは消去が十分に行われたかを調べるベリファイリードを行う。そして、書き込み、あるいは消去が不十分なメモリセルがある場合には、再書き込み、再消去を行う。ここで、使用当初には、メモリセルは、例えば3回の書き込み・ベリファイリードサイクルによって、十分に書き込まれたとする。一方、書き換えの回数が多くなるにつれて、メモリセルのトンネル酸化膜に電子がトラップされ、書き込みにくくなる。その結果、例えば書き込み・ベリファイリードサイクル数が、4回、5回、6回と多くなる。したがって、例えば書き込み・ベリファイリードサイクル数が、所定の回数(例えば5回)までは図1に示すように、4値メモリセルとして動作させ、上記所定の回数以後の書き込み時には、3値メモリセルとして動作させれば良い。3値メモリセルとして動作される場合も、書き換え回数が増加するにしたがって、書き込み・ベリファイリードサイクル数が増えてくるので、所定の回数(例えば7回、あるいは5回、あるいは4回)になったところで、以後の書き込み時には、2値メモリセルとして動作されても良い。同様に、2値メモリセルの書き込み・ベリファイリードサイクル数が、所定の回数に達した場合は、以後は、そのメモリセルを使用しなくても良いし、あるいは以後は書き込み・消去をしないようにしても良い。
【0197】
このように、書き込み・ベリファイリードサイクル数を検出し、この検出結果から、メモリセルの劣化の度合いを把握することができる。したがって、書き込み・ベリファイリードサイクル数が、所定の回数に達したか否かを判定することで、第1〜第4の実施の形態のように、メモリセルに蓄える情報の数を変更することができる。このようなモニタの仕方は、第1〜第4の実施の形態により説明した記憶システム、あるいは多値記憶フラッシュメモリに使用することができる。
【0198】
例えばメモリセルを、まず、4値メモリセルとして使用し、書き込み・ベリファイリードサイクル数が、所定のサイクル数に達した後は、2値セルとして使用しても良い。
【0199】
また、第5の実施の形態に係る記憶システムが含む新規なモニタ方法は、多値メモリセルだけでなく、2値メモリセルにおいても有効である。
【0200】
図34は、第5の実施の形態に係る第2の記憶システムの動作フローを示す図である。
【0201】
図34に示すように、書き込み・ベリファイリードサイクル数が、所定の回数までは、2値メモリセルとして使用し、所定の回数を超えた後は、このメモリセルを使用しないようにする。あるいは所定の回数を超えた後、このメモリセルに書き込み、消去を行わないようにしても良い。
【0202】
また、NAND型EEPROMでは、例えば16ページで1ブロックを形成するが、それぞれのページ毎に書き込み・ベリファイリードサイクル数を検出することにより、何値のメモリセルとして動作させるかを、各ページ毎に決めても良い。
【0203】
また、何値のメモリセルとして動作させるかは、各ブロック毎に行っても良いし、各チップ毎に行っても良い。つまり、あるブロックを構成する16ページのうち、1つのページでも4値メモリセルとして動作させる書き込み・ベリファイリードサイクル数が所定の回数を超えた場合には、このページが含まれているブロックのメモリセルを、以後の書き込みでは、例えば2値セルとして動作させても良い。もちろん、チップを構成する複数のページのうち、1つのページでも、4値メモリセルとして動作させる書き込み・ベリファイリードサイクル数が所定の回数を超えた場合には、このページが含まれているチップの全てのメモリセルを、以後の書き込みでは、例えば2値セルとして動作させても良い。
【0204】
さらには、ページを細分化したメモリセルブロック単位で、何値のメモリセルとして動作させるかを決めても良く、動作を制御することが可能でさえあれば、同ページ内に、動作モードが異なるメモリセルが存在していても構わない。すなわち、メモリセルに蓄える情報の数を変更する単位は、特に限定されるものではなく、上述したようなページ単位、ブロック単位、チップ単位の他、様々な変形が可能である。
【0205】
また、書き込み・ベリファイリードサイクル数ではなく、消去・ベリファイリードサイクル数を検出することにより、メモリセルに蓄える情報値の数を変えても良い。
【0206】
さらに、書き込み・ベリファイリードサイクル数、あるいは消去・ベリファイリードのサイクル数は、チップ内に設けられているカウンタ回路に記憶、またはカウントし、該カウンタ回路の情報をチップに出力しても良い。
【0207】
図35は、第5の実施の形態に係る第3の記憶システムの動作フローを示す図である。
【0208】
図35に示すように、書き込み・ベリファイリードサイクル数(あるいは消去・ベリファイリードサイクル数)を検出することにより、書き込み(あるいは消去)電圧を変更するようにしても良い。例えば2値メモリセルを例にとって説明すると、サイクル数が4回になるまでは、書き込み電圧の初期値は16Vである。書き換え回数が増加するにつれて、書き込み、消去がしにくくなるので、サイクル数が増加する。サイクル数が4回を超えると、書き込み電圧の初期値を17Vにする。書き換え回数が、さらに増加して、書き込み電圧の初期値が17Vでもサイクル数が4回を超える場合には、書き込み電圧の初期値を18Vに増加させれば良い。
【0209】
また、上記サイクル数が、所定の回数を超えると、書き込み電圧だけでなく、消去電圧の初期値を高くしても良い。もちろん、消去・ベリファイリードサイクル数を検出することにより、消去電圧、あるいは書き込み電圧を変えても良い。
【0210】
このように、書き込み・ベリファイリードサイクル数、または消去・ベリファイリードサイクル数をモニタすることは、書き換え回数をモニタする場合と同様に、何値メモリセルとして動作させるかを決めることができるばかりでなく、広くメモリセルの性能を判定するうえで、非常に有効である。
【0211】
以上、説明した第1〜第5の実施の形態では、多値半導体記憶装置を用いた記憶システムにおいて、書き換え回数が増加するに従い、1つのメモリセルに蓄える情報(値)の数を減らす。例えば4値メモリセルにおいて、書き換え回数が50万回までは4値メモリセルとして動作し、それ以降は2値メモリセルとして動作する。これにより、記憶システム全体の書き換え回数を、従来よりも多くすることができる。
【0212】
なお、この発明が適用できるのは、NAND型EEPROMや、NOR型フラッシュメモリのみならず、AND型(K.Kume et al. ;IEDM Tech. Dig., Dec. 1992, pp.991-993 )や、DINOR型(S.Kobayashi et al. ;ISSCC Tech. Dig., 1995, pp.122)、や仮想グランド型アレイ(R.Cemea et al. ;ISSCC Tech. Dig., 1995, pp.126)でもよい。
【0213】
また、多値DRAMや多値マスクROMあるいは多値SRAMでも、もちろん良い。
【0214】
また、この発明が適用できるのは、3値メモリセル、あるいは4値メモリセルに限らず、もちろん5値メモリセル、あるいは8値メモリセル、あるいは16値メモリセルなどでも、有効である。
【0215】
【発明の効果】
以上、説明したように、この発明によれば、多値記憶のメモリセルを含みながらも、特に書き換えに関する耐久性に富む記憶システム、およびこの記憶システムに特に必要な、新規なシステム要素を含んだ記憶システムを提供することができる。
【図面の簡単な説明】
【図1】図1はこの発明の第1の実施の形態に係る多値NAND型フラッシュメモリのしきい値電圧と4値データとの関係を示す図。
【図2】図2(a)、(b)、(c)はそれぞれこの発明の第1の実施の形態に係る多値NAND型フラッシュメモリのしきい値電圧と3値データとの関係を示す図。
【図3】図3(a)、(b)はそれぞれこの発明の第1の実施の形態に係る多値NAND型フラッシュメモリのしきい値電圧と2値データとの関係を示す図。
【図4】図4はこの発明の第2の実施の形態に係るフラッシュメモリの構成図。
【図5】図5は図4に示すフラッシュメモリのチップの構成図。
【図6】図6はこの発明の第2の実施の形態の変形に係る記憶システムの構成図。
【図7】図7はこの発明の第3の実施の形態に係る第1の記憶システムの動作フローを示す図。
【図8】図8はこの発明の第3の実施の形態に係る第2の記憶システムの動作フローを示す図。
【図9】図9はこの発明の第3の実施の形態に係る第3の記憶システムの動作フローを示す図。
【図10】図10はこの発明の第3の実施の形態に係る第7の記憶システムの動作フローを示す図。
【図11】図11はこの発明の第3の実施の形態に係る第8の記憶システムの動作フローを示す図。
【図12】図12はこの発明の第3の実施の形態に係る第9の記憶システムの動作フローを示す図。
【図13】図13はこの発明の第3の実施の形態に係る第10の記憶システムの動作フローを示す図。
【図14】図14はこの発明の第3の実施の形態に係る第11の記憶システムの動作フローを示す図。
【図15】図15はこの発明の第3の実施の形態に係る第12の記憶システムの動作フローを示す図。
【図16】図16はこの発明の第3の実施の形態に係る第13の記憶システムの動作フローを示す図。
【図17】図17はこの発明の第4の実施の形態に係る多値記憶式EEPROMの構成を示す構成図。
【図18】図18は図17に示すメモリセルアレイおよびデータ回路の構成を示す構成図。
【図19】図19はこの発明の第4の実施の形態に係る多値記憶式EEPROMのしきい値電圧と4値データとの関係を示す図。
【図20】図20は図17に示すメモリセルアレイおよびデータ回路の回路図。
【図21】図21は読み出し動作のときのタイミング図。
【図22】図22はフリップ・フロップのノードの電位と4値データとの関係を示す図。
【図23】図23はフリップ・フロップのノードの電位と4値データとの関係を示す図。
【図24】図24はフリップ・フロップのノードの電位と4値データとの関係を示す図。
【図25】図25は書き込み動作のときのタイミング図。
【図26】図26は書き込みベリファイ動作のときのタイミング図。
【図27】図27は書き込みベリファイ動作のときのタイミング図。
【図28】図28はこの発明の第4の実施の形態に係る多値記憶式EEPROMのしきい値電圧と2値データとの関係を示す図。
【図29】図29はフリップ・フロップのノードの電位と2値データとの関係を示す図。
【図30】図30は書き込み動作のときのタイミング図。
【図31】図31は書き込みベリファイ動作のときのタイミング図。
【図32】図32は読み出し動作のときのタイミング図。
【図33】図33はこの発明の第5の実施の形態に係る第1の記憶システムの動作フローを示す図。
【図34】図34はこの発明の第5の実施の形態に係る第2の記憶システムの動作フローを示す図。
【図35】図35はこの発明の第5の実施の形態に係る第3の記憶システムの動作フローを示す図。
【図36】図36はメモリセルアレイのNANDセル部分を示す図で(a)図は平面図、(b)図は等価回路図。
【図37】図37は断面図で(a)図は図36(a)中のA−A’線に沿う断面図(b)図は図36(a)中のB−B’線に沿う断面図。
【図38】図38はNANDセルがマトリクス状に配列されたメモリセルアレイの等価回路図。
【図39】図39はメモリセルのしきい値電圧と4値データとの関係を示す図。
【符号の説明】
1 ・・・メモリセルアレイ、
2 ・・・制御ゲート・選択ゲート駆動回路、
3 ・・・データ回路、
4 ・・・データ入出力バッファ、
5 ・・・アドレスバッファ、
6 ・・・データ制御回路、
M ・・・メモリセル、
S ・・・選択トランジスタ、
SG・・・選択ゲート、
CG・・・制御ゲート、
BL・・・ビット線、
Qn・・・nチャネルMOSトランジスタ、
Qp・・・pチャネルMOSトランジスタ、
Qd・・・ディプリーション型nチャネルMOSトランジスタ、
FF・・・フリップ・フロップ、
I ・・・インバータ、
G ・・・NAND論理回路。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a storage system, for example, a storage system including an electrically rewritable multi-value storage nonvolatile semiconductor memory device (EEPROM).
[0002]
[Prior art]
In recent years, a NAND cell type EEPROM has been proposed as one of electrically rewritable nonvolatile semiconductor devices (EEPROMs).
[0003]
In this EEPROM, for example, a plurality of n-channel FETMOS structure memory cells in which floating gates and control gates are stacked as charge storage layers are connected in series in such a manner that their sources and drains are shared by adjacent ones. Is connected to the bit line as a unit.
[0004]
36A and 36B are diagrams showing one NAND cell portion of the memory cell array, where FIG. 36A is a plan view and FIG. 36B is an equivalent circuit diagram. FIG. 37 is a cross-sectional view, FIG. 37A is a cross-sectional view taken along line AA ′ in FIG. 36A, and FIG. 37B is a cross-sectional view taken along line BB ′ in FIG. It is.
[0005]
The p-type silicon substrate (or p-type well) 11 is provided with an element region surrounded by an element isolation oxide film 12. NAND cells are formed in the element region, and a memory cell array is formed by collecting a plurality of NAND cells.
[0006]
With reference to FIGS. 36 and 37, description will be given focusing on one NAND cell.
[0007]
In the devices shown in FIGS. 36 and 37, eight memory cells M1 to M8 are connected in series to constitute one NAND cell. Each memory cell has a floating gate 14 (14-1, 14-2,..., 14-8) formed on a substrate 11 via a gate insulating film 13. A control gate 16 is formed on the floating gate 14 via a second gate insulating film 15. Each of the n-type diffusion layers 19 serving as the source and drain of the memory cell is shared by adjacent memory cells. Thereby, the eight memory cells are connected in series with each other.
[0008]
On the drain side and the source side of the NAND cell, first select gates 14-9 and 16- formed simultaneously with the floating gates 14-1 to 14-8 and the control gates 16-1 to 16-8 of the memory cell, respectively. 9 and second selection gates 14-10 and 16-10 are provided. An upper portion of the substrate 11 on which elements such as memory cells are formed is covered with a CVD oxide film 17. A bit line 18 is provided on the CVD oxide film 17. The control gates 16 of the NAND cells are formed continuously in the row direction, and are shared by the NAND cells adjacent in the row direction and function as word lines (control gates CG1, CG2,..., CG8). The select gates 14-9, 16-9, and 14-10, 16-10 are formed continuously in the row direction in the same manner as the control gates 16-1 to 16-8, and NAND cells adjacent in the row direction are connected to each other. And function as selection gates SG1 and SG2.
[0009]
FIG. 38 is an equivalent circuit diagram of a memory cell array in which the NAND cells are arranged in a matrix.
[0010]
As shown in FIG. 38, the source line is connected to a reference potential wiring made of aluminum, conductive polysilicon, or the like via a contact. One contact is provided between the source line and the reference potential wiring, for example, for every 64 bit lines. The reference potential wiring is connected to a peripheral circuit (not shown) that controls the potential applied to the source line according to the operation mode, for example.
[0011]
The control gates CG1, CG2,..., The first and second selection gates SG1, SG2 are continuously arranged in the row direction. Usually, a set of memory cells connected to the control gate is called a page (one page), and is sandwiched between a pair of drain side (first selection gate) and source side (second selection gate) selection gates. A set of pages is referred to as a NAND block (1 NAND block) or a block (1 block). One page is composed of, for example, 256 bytes (256 × 8) memory cells. The memory cells for one page are written almost simultaneously. One block is composed of, for example, 2048 bytes (2048 × 8) memory cells. The memory cells for one block are erased almost simultaneously.
[0012]
The operation of the NAND type EEPROM is as follows.
[0013]
Data writing is performed in order from the memory cell far from the bit line.
[0014]
A boosted write voltage Vpp (= about 20 V) is applied to the control gate of the selected memory cell, and an intermediate potential (= 10V) is applied, and 0V ("0" write) or an intermediate potential ("1" write) is applied to the bit line according to the data. At this time, the potential of the bit line is transmitted to the selected memory cell. When the data is “0”, a high voltage is applied between the floating gate of the selected memory cell and the substrate, electrons are tunneled from the substrate to the floating gate, and the threshold voltage is positive. Moving. When the data is “1”, the threshold voltage does not change.
Data erasure is performed almost simultaneously in units of blocks.
[0015]
That is, all the control gates and selection gates included in the block to be erased are set to 0 V, and the boosted boosted potential VppE (about 20 V) is applied to the p-type silicon substrate (or p-type well and n-type substrate). To do. On the other hand, the boosted potential VppE is applied to the control gate and selection gate included in the block that is not erased. Thereby, in the memory cell of the block to be erased, the electrons accumulated in the floating gate are released to the p-type silicon substrate (or well), and the threshold voltage moves in the negative direction.
[0016]
In the data read operation, after precharging the bit line, the bit line is floated, the control gate of the selected memory cell is set to 0 V, the control gates of the other memory cells, the selection gate is set to the power supply voltage Vcc (for example, 3 V), This is done by setting the source line to 0 V and detecting whether a current flows in the selected memory cell on the bit line. That is, if the data written in the memory cell is “0” (threshold value Vth> 0 of the memory cell), the memory cell is turned off, so that the bit line maintains the precharge potential, but “1” (memory cell If the threshold value Vth <0), the memory cell is turned on and the bit line is lowered from the precharge potential by ΔV. By detecting these bit line potentials with a sense amplifier, data in the memory cell is read out.
[0017]
More recently, a multi-value storage cell in which information of three or more values is stored in one cell is known as one method for realizing a large capacity of an EEPROM (for example, Japanese Patent Laid-Open No. 7-93979). JP-A-7-161852).
[0018]
FIG. 39 shows the threshold voltage of the memory cell and the four write states (four-value data “0”, “1” when four values are stored by providing four write states in one memory cell. And “2”, “3”).
[0019]
The state of data “0” is the same as the state after erasure and has, for example, a negative threshold value. The state of data “1” has a threshold value between 0.5V and 0.8V, for example. The state of data “2” has a threshold value between 1.5V and 1.8V, for example. The state of data “3” has a threshold value between 2.5V and 2.8V, for example.
[0020]
Therefore, the read voltage VCG2R is applied to the control gate CG of the memory cell M, the memory cell is “ON” or “OFF”, and the memory cell data is “0” or “1”. “Either“ 2 ”or“ 3 ”” can be detected. Subsequently, the memory cell data is completely detected by applying the read voltages VCG3R and VCG1R. The read voltages VCG1R, VCG2R, and VCG3R are, for example, 0V, 1V, and 2V, respectively.
[0021]
The voltages VCG1V, VCG2V, and VCG3V are called verify voltages. When data is written, these verify voltages are applied to the control gate to detect the state of the memory cell M and check whether the data has been sufficiently written. To do. The verify voltages VCG1V, VCG2V, and VCG3V are, for example, 0.5V, 1.5V, and 2.5V, respectively.
[0022]
[Problems to be solved by the invention]
In the flash memory, the number of rewrites is limited to, for example, 1 million times in a binary memory cell. This limitation on the number of rewrites is caused by, for example, leakage of electrons stored in the floating gate from the floating gate of the memory cell in the written state to the substrate. When the memory cell is in the data “0” state due to the leakage of electrons from the memory cell in the data “1” state in FIG. 39, the write data is destroyed.
[0023]
When multilevel data is stored in the memory cell, the voltage difference between states (for example, the voltage difference between the “3” state and the “2” state in FIG. 39) becomes small. As a result, even if a small amount of electrons leaks to the substrate, the data changes from the “3” state to the “2” state. Further, when the memory cell is multi-valued, the threshold value in the state where the threshold value is the largest (“3” state in FIG. 39) is increased, so that the electric field between the floating gate and the substrate is increased. As a result, the amount of electron leakage from the floating gate increases.
[0024]
From the above situation, as the number of memory cells is increased, the reliability, in particular, the reliability with respect to the number of data rewrites deteriorates, and the limit value of the number of rewrites decreases, for example, 500,000 times. As a result, the durability of the device (the life of the device) is impaired.
[0025]
In a conventional memory card (for example, N.Niijima; IBM J.RES.DEVELOP.VOL.39 NO.5 SEPTEMBER 1995), the number of rewrites is recorded for each block, and the number of rewrites exceeds, for example, 1 million times. Does not use the block. However, even in this method, the more the multi-value storage is performed, the smaller the number of times the memory card is used than in the binary storage.
[0026]
The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a storage system that includes a multi-value storage memory cell and has high durability especially with respect to rewriting.
[0027]
Another object is to provide a storage system including several new system elements necessary for the storage system to achieve the above object.
[0028]
[Means for Solving the Problems]
In order to achieve the above object, the present inventionIn the storage system according to the first aspect of the present invention, a plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewritable, and the plurality of memory cells are controlled. A control circuit, wherein the control circuit controls a part of the plurality of memory cells as a storage part of the n value, and sets a different part of the memory cells to an m value (m is a natural number of 2 or more, Control as a storage portion of m <n), and further, control information indicating which memory cell is controlled as a storage portion of m value is stored in some different memory cells.It is characterized by that.
[0029]
Also,In the storage system according to the second aspect of the present invention, a plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewritable, and the plurality of memory cells are provided. A control circuit for controlling, wherein the control circuit controls a part of the plurality of memory cells as a storage part of the n value, and sets a different part of the memory cells to an m value (m is a natural number of 2 or more). Yes, it is controlled as a memory part of m <n), further, control information indicating which memory cell is controlled as a memory part of m value is stored in a part of different memory cells, and m value is obtained by rewriting the control information. Change memory cell to storeIt is characterized by that.
In the storage system according to the third aspect of the present invention, a plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewritable, and the plurality of memories A control circuit for controlling the cell, wherein the control circuit controls a part of the plurality of memory cells as a storage part of the n value and sets a different part of the memory cells to an m value (m is 2 or more). It is a natural number and is controlled as a storage portion of m <n), and further, control information indicating which memory cell is controlled as a storage portion of n value is stored in some different memory cells.
In the storage system according to the fourth aspect of the present invention, a plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewritable, and the plurality of memories A control circuit for controlling the cell, wherein the control circuit controls a part of the plurality of memory cells as a storage part of the n value and sets a different part of the memory cells to an m value (m is 2 or more). It is a natural number and is controlled as a storage part of m <n), and further, by storing control information on which memory cell is controlled as a storage part of n value in a part of different memory cells, rewriting the control information The memory cell for storing the n value is changed.
In the memory system according to the fifth aspect of the present invention, a memory cell array composed of a plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewritable. And a control circuit for controlling the plurality of memory cells, wherein the control circuit controls a part of the memory cell array as a storage part for the n value and a different part of the memory cell array for an m value ( m is 2 or more It is a number, and is controlled as a storage portion of m <n), and control information indicating which portion of the memory cell array is controlled as a storage portion of the m value is stored in a further different part of the memory cell array. To do.
In the storage system according to the sixth aspect of the present invention, a memory cell array comprising a plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewritable. And a control circuit for controlling the plurality of memory cells, wherein the control circuit controls a part of the memory cell array as a storage part for the n value and a different part of the memory cell array for an m value ( m is a natural number of 2 or more, and is controlled as a storage portion of m <n), and control information on which portion of the memory cell array is controlled as a storage portion of m value is stored in a different part of the memory cell array. The memory cell array for storing m values is changed by rewriting the control information.
In the memory system according to the seventh aspect of the present invention, a memory cell array comprising a plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewritable. And a control circuit for controlling the plurality of memory cells, wherein the control circuit controls a part of the memory cell array as a storage part for the n value and a different part of the memory cell array for an m value ( m is a natural number equal to or greater than 2, and is controlled as a storage portion of m <n), and control information indicating which portion of the memory cell array is controlled as an n-value storage portion is stored in a further different portion of the memory cell array. It is characterized by that.
In the memory system according to the eighth aspect of the present invention, a memory cell array comprising a plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewritable. And a control circuit for controlling the plurality of memory cells, wherein the control circuit controls a part of the memory cell array as a storage part for the n value and a different part of the memory cell array for an m value ( m is a natural number equal to or greater than 2, and is controlled as a storage portion of m <n), and control information indicating which portion of the memory cell array is controlled as an n-value storage portion is stored in a different part of the memory cell array. The memory cell array for storing n values is changed by rewriting the control information.
[0030]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described by taking a multi-level NAND flash memory as an example.
[0031]
1 to 3 are diagrams showing the relationship between threshold voltage and multi-value data in each storage mode of the multi-value NAND flash memory according to the first embodiment of the present invention.
[0032]
FIG. 1 shows one example of the relationship between the threshold voltage and the quaternary data in the quaternary operation mode, and FIGS. 2A to 2C show the relationship between the threshold voltage and the quaternary operation mode. Three examples of the relationship between the threshold voltage and the ternary data are shown in FIGS. 3A and 3B. The relationship between the threshold voltage and the binary data in the binary operation mode is shown in FIGS. Each example is shown.
[0033]
1 to 3, “0” is an erased state, and “1”, “2”, and “3” are write states. The internal operations (writing, reading, erasing, etc.) of the multi-level NAND flash memory are described in Japanese Patent Application Laid-Open Nos. 7-93979, 7-161852, 7-295137, and 8-61443. It is said that it is described in Japanese Patent Application No. 8-61445.
[0034]
As described above, in the field of EEPROM, as the number of values increases, the number of rewritable times decreases. For example, a quaternary cell having a quaternary storage state as shown in FIG. 1 has 500,000 times, a ternary cell having a ternary storage state as shown in FIG. In a binary cell taking a value storage state, 1 million times is a rewritable range.
[0035]
According to the present invention, first, the memory cell is used as a quaternary cell having a storage state as shown in FIG. 1 until 500,000 times of rewriting is performed. Until 500,000 times of rewriting is performed after 500,000 times of rewriting, it is used as a ternary cell as shown in FIGS. After 800,000 times of rewriting, it is used as a binary cell as shown in FIG.
[0036]
Further, in order to simplify the operation method of the apparatus, it is used as a quaternary cell until 500,000 times of rewriting, and after 500,000 times of rewriting, it is used as a binary cell. Anyway.
[0037]
Thus, when the limit of the number of times of rewriting as a quaternary cell is exceeded, the number of times of use of the flash memory can be increased by using it as a ternary cell or a binary cell. Therefore, the durability especially for rewriting is improved as compared with the conventional multi-value storage flash memory.
[0038]
The above-mentioned durability is not only improved as the durability of the flash memory alone, that is, the durability of the chip, but also by incorporating this flash memory into various memory devices (for example, memory cards), Durability is also improved.
[0039]
Whether the memory cell is operated as a quaternary value, a ternary value, or a binary value may be controlled by inputting a command to the flash memory from the outside of the chip. That is, as an operation mode in the flash memory, a quaternary write operation mode (or operation method) / read operation mode (or operation method), a ternary write operation mode (or operation method) / read operation mode (or operation) Method) Binary write operation mode (or operation method) / read operation mode (or operation method) are provided, and one of these operation modes (or operation methods) is selected by inputting a command, You may control the operation.
[0040]
Alternatively, whether the memory cell is operated as a 4-value, a 3-value, or a 2-value may be controlled by write data input from a controller that controls the flash memory. That is, without changing the internal operation of the flash memory, the write data input from the outside is controlled to be quaternary, ternary, binary, or sequentially, quaternary, binary. That is, when operating as a quaternary cell, four values “0”, “1”, “2”, “3” are input, and when operating as a ternary cell, “0”, “1”, “ When operating as a binary cell by inputting three values of “2 ″”, the respective input data values may be controlled so as to input two values of ““ 0 ”and“ 1 ””.
[0041]
Further, when the limit of the number of rewrites as a binary cell is exceeded, the cell may not be used.
[0042]
Further, when the limit of the number of rewrites as a binary cell is exceeded, data may not be written or erased in the cell. In this case, since the cell is not rewritten, it can be used as a ROM. When used as a ROM, the degree of deterioration of the cell, particularly the tunnel oxide film, determines the memory retention period. However, even if the number of rewrites reaches the limit, the cell usually has sufficient reliability to withstand as a ROM. This is because the limit on the number of rewrites is set with a certain margin before the tunnel oxide film can no longer be used.
[0043]
Next explained is a storage system according to the second embodiment of the invention.
[0044]
FIG. 4 is a configuration diagram of a flash memory according to the second embodiment.
[0045]
As shown in FIG. 4, the controller 100 controls the operation of k (k is a natural number) multilevel NAND flash memory chips 101-1 to 101-k.
[0046]
FIG. 5 is a configuration diagram of the chip 101 of the multi-level NAND flash memory shown in FIG. The chip 101 shown in FIG. 4 includes a plurality of memory cells, and each of these memory cells has a threshold voltage distribution corresponding to the multilevel storage level, as described in the first embodiment. have. The threshold voltage distribution is the same as that shown in FIGS. 1 to 3, for example. As shown in FIGS. 1 to 3, “0” indicates an erased state, and “1”, “2”, and “3” indicate writing. State.
[0047]
The internal operations (writing, reading, erasing, etc.) of the multi-level NAND flash memory are described in Japanese Patent Application Laid-Open Nos. 7-93979, 7-161852, 7-295137, and 8-61443. It is said that it is described in Japanese Patent Application No. 8-61445.
[0048]
One page, which is a unit for simultaneous writing, is composed of 528 bytes of memory cells, of which, for example, 512 bytes of memory cells correspond to the data area, and the remaining 16 bytes of memory cells correspond to logical addresses and physical addresses. An address conversion table and an error correcting code (ECC) are stored.
[0049]
In FIG. 5, one chip is composed of 512 blocks, and one block, which is a unit for simultaneously erasing, is composed of 16 pages. For example, the first block Block0 is used as a system area. That is, Block 0 may store the number of rewrites of each block, which block is broken, or the block sequence number S. Hereinafter, the portion for storing the number of rewrites is referred to as a rewrite number recording area. Details of the explanation such as the block sequence number S are described in the publicly known example N. Niijima; IBM J. RES. DEVELOP. VOL. 39 NO. 5 SEPTEMBER 1995. In this case, each time writing / erasing is repeated, the first block in which the number of rewrites is stored is rewritten. As described above, since rewriting is frequently performed in the system block, the lifetime of the memory cells in the system area may be shorter than the lifetimes of the memory cells in other data areas.
[0050]
FIG. 6 is a configuration diagram of a storage system according to a modification of the second embodiment.
[0051]
As described above, when the lifetime of the memory cell in the system area becomes shorter than the lifetime of the memory cell in the other data area, the DRAM 102 that stores the system area such as the rewrite count recording area as shown in FIG. You may prepare. When the power is turned on (during operation), data in the system area of the flash memory is read and stored in the DRAM. Thereafter, the system area is rewritten for data writing, erasing, rewriting, etc. At this time, the system area stored in the DRAM may be rewritten. Based on the data in the system area on the DRAM, the data in the system area of the flash memory may be rewritten when the power is turned off or at regular intervals.
[0052]
As described above, the system area in the flash memory can be prevented from being frequently rewritten by rewriting the system area during the operation on the data in the DRAM.
[0053]
If the address conversion table needs to be rewritten when writing, erasing, or rewriting data, the contents of the address conversion table may be stored in the DRAM and rewritten in the DRAM.
[0054]
In this embodiment, description will be made by taking a quaternary flash memory as an example. For example, it is possible to rewrite 500,000 times in a quaternary memory cell as shown in FIG. 1 and 1 million times in a binary memory cell as shown in FIGS.
[0055]
According to this embodiment, first, the memory cell is used in the quaternary mode as a quaternary cell as shown in FIG. The number of rewrites of each block is stored in the rewrite count recording area of the system area on the flash memory when the power is off, and stored in the rewrite count recording area of the DRAM when the power is turned on (during operation).
[0056]
After rewriting 500,000 times, the binary cell is used in the binary mode as shown in FIGS. Switching between the quaternary mode and the binary mode may be performed in units of one page or in units of one block, may be performed in units of a plurality of blocks, or may be performed in units of chips. Level storage means for holding whether each page, each block, or each chip is in binary mode or quaternary mode, stores information on the operation mode in the system area of the flash memory when the power is turned off, When power is turned on (operation), it may be stored in DRAM. When the power is turned on, it is possible to determine the value at which the memory cell is operated by reading the level storage means.
[0057]
As described above, when the limit of the number of times of rewriting as a quaternary cell is exceeded, by using it as a binary cell, the number of times of use of the flash memory can be increased.
[0058]
Whether the memory cell is operated as a quaternary value or a binary value may be controlled by inputting a command from the controller 100 to the flash memory. That is, as an operation mode inside the flash memory, a quaternary write operation mode (or operation method) / read operation mode (or operation method), a binary write operation mode (or operation method) / read operation mode (or operation) Method), and any one of these operation modes (or operation methods) may be selected by inputting a command to control each operation.
[0059]
Alternatively, whether the memory cell is operated as a quaternary value or a binary value may be controlled by write data input from the controller 100 that controls the flash memory. In other words, the write data input from the outside is controlled to four values and two values without changing the internal operation of the flash memory. That is, when operating as a quaternary cell, four values “0”, “1”, “2”, “3” are input, and when operating as a binary cell, “0”, “1” ”. Each input data value may be controlled so as to input two values.
[0060]
Further, the number of memory cells in the data area in one page may or may not be changed between the quaternary mode and the binary mode. In quaternary mode and binary mode, out of 528 bytes of memory cells, for example, 512 bytes of memory cells are data areas, and the remaining 16 bytes of memory cells indicate the correspondence between logical addresses and physical addresses. Alternatively, an error correction code (ECC) may be stored. Alternatively, the address conversion table and ECC area may be optimized in the quaternary mode and the binary mode. For example, the address conversion table and ECC area used 16-byte memory cells in the 4-level mode, whereas 24-byte memory cells may be used in the 2-level mode, or 8-byte memory cells. May be used. In either case, a data area other than the address conversion table or ECC area may be used.
[0061]
In the rewrite count recording area, data is updated every time each block is rewritten. Therefore, by monitoring this rewrite count recording area, it is sufficient to determine the value at which the memory cell operates. That is, the rewrite count recording area in the DRAM is read before rewrite, and when the rewrite count of the block to be written is 500,000 times or less, the block is written as a quaternary cell. If the number of rewrites exceeds 500,000, the contents of the level storage means in the DRAM are changed to be binary cells instead of quaternary cells in this embodiment, and the block is changed to a binary cell. Write. If the number of times exceeds one million times, the block may not be used, or writing or erasing may not be performed.
[0062]
In the second embodiment, for example, the number of rewrites is recorded for each block, and what value is determined for each block is determined. Further, the unit for determining the value of operation is not limited to the block. For example, one rewrite count recording area may be provided for a plurality of blocks, and the value of the operation for each block may be determined. Alternatively, one rewrite count recording area may be provided for each flash memory chip, and the value to be operated in units of chips may be determined. Furthermore, the number of rewrites may be monitored for each page, and what value may be operated for each page may be determined.
[0063]
In the second embodiment, the value memory cell is determined by monitoring the number of rewrites. For example, the value memory cell is operated by monitoring the time after shipment. You may decide.
[0064]
Next explained is a storage system according to the third embodiment of the invention.
[0065]
Hereinafter, several storage systems according to the present invention will be given, and these will be described as the storage system according to the third embodiment.
[0066]
FIG. 7 is a diagram illustrating an operation flow of the first storage system according to the third embodiment.
[0067]
The first storage system includes memory cells that store n values (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16). As shown in FIG. 7, the memory cell operates as an n-value memory cell up to a predetermined number of rewrites (for example, 500,000 times). Thereafter, the memory system operates as a memory cell having m values (m is a natural number less than n).
[0068]
As described in the second embodiment, the number of rewrites is recorded in the rewrite count storage area of each block or each chip, and by monitoring this rewrite count storage area, the value memory cell is operated. You can decide.
[0069]
FIG. 8 is a diagram illustrating an operation flow of the second storage system according to the third embodiment.
[0070]
The second storage system includes memory cells that store n values (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16). As shown in FIG. 8, the memory cell operates as an n-value memory cell up to a predetermined number of rewrites. Thereafter, the memory system operates as a binary memory cell.
[0071]
FIG. 9 is a diagram illustrating an operation flow of the third storage system according to the third embodiment.
[0072]
The third storage system includes memory cells that store n values (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16). Then, as shown in FIG. 9, the memory cell operates as an n-value memory cell until the nth rewrite count, and the memory cell has an (n-1) value until the (n-1) th rewrite count. The memory system operates and the memory cell operates as an i value up to the i-th (i is a natural number of 2 or more) rewrite times.
[0073]
Here, the predetermined number of rewrites set corresponding to the limit value of the number of rewrites as the n-value cell, the (n−1) -value cell, and the i-value cell, respectively, -1) is defined as the number of rewrites and the i-th rewrite number.
[0074]
The fourth storage system includes memory cells that store n values (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16). In the semiconductor memory device, the memory system has level storage means for storing what value data the memory cell holds.
[0075]
The level storage means may store the stored contents in the first block of the flash memory chip, for example, Block 0 shown in FIG.
[0076]
Alternatively, the level storage means may be read when the power is turned on, and the stored contents may be stored in the DRAM 102 shown in FIG. For example, if it is determined that the number of rewrites has reached 500,000 by reading the rewrite count storage area, what has been operating as a quaternary memory cell changes the contents of the level storage means. What is necessary is just to operate | move as a binary memory cell. Thereafter, writing is performed as a binary cell by reading the level storage means. That is, here, when the power is turned on, the level storage means is read to determine what value the memory cell is operated at any time.
[0077]
The fifth storage system includes memory cells that store n values (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16), and a predetermined number of memory cells constitute a memory cell block, The semiconductor memory device performs writing or erasing in units of memory cell blocks, and the memory cells in the memory cell block operate as n-value memory cells up to a predetermined number of rewrites. Thereafter, in the memory system, all the memory cells in the memory cell block operate as memory cells having m values (m is a natural number less than n).
[0078]
The fifth storage system has a rewrite count storage area for storing the rewrite count of the memory cell block for each memory cell block. What value memory cell the memory cell block operates with may be determined according to the number of rewrites stored in the rewrite number storage area.
[0079]
Note that the memory cell block here is not limited to a so-called block, which is a set of pages sandwiched between one drain-side selection gate and one source-side selection gate. It shows a memory cell group in which writing or erasing is performed simultaneously. For example, in a NAND type EEPROM, writing is usually performed in units of pages as described above, and erasing is performed in units of blocks. In this case, these pages or blocks are stored in the memory cell block here. Equivalent to.
[0080]
A sixth storage system is a semiconductor storage device including a memory cell that stores an n value (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16). It operates as an n-value memory cell. Thereafter, in the memory system, all the memory cells in the chip including the memory cell operate as m-value memory cells (m is a natural number less than n).
[0081]
The sixth storage system has a rewrite count storage area for storing the number of rewrites of each chip for each chip. What value memory cell the chip operates with may be determined according to the number of rewrites stored in the rewrite number storage area.
[0082]
FIG. 10 is a diagram illustrating an operation flow of the seventh storage system according to the third embodiment.
[0083]
The seventh storage system includes memory cells that store n values (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16). As shown in FIG. 10, the memory cell operates as an n-value memory cell up to the nth rewrite cycle, and as a m-value (m is a natural number less than n) memory cell up to the mth rewrite cycle. A storage system that operates and does not use the memory cell thereafter.
[0084]
FIG. 11 is a diagram showing an operation flow of the eighth storage system according to the third embodiment.
[0085]
The eighth storage system includes memory cells that store n values (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16). Then, as shown in FIG. 11, the memory cell operates as an n-value memory cell until the nth rewrite count, operates as a binary memory cell until the second rewrite count, and thereafter, A storage system that does not use memory cells.
[0086]
FIG. 12 is a diagram illustrating an operation flow of the ninth storage system according to the third embodiment.
[0087]
The ninth storage system includes a memory cell that stores n values (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16). Then, as shown in FIG. 12, the memory cell operates as an n-value memory cell until the nth rewrite count, and the memory cell operates as an (n-1) value until the (n-1) th rewrite count. Thereafter, the memory cell operates as an i value up to the i-th (i is a natural number of 2 or more) rewrite sequence. After that, after reaching the second rewrite count, the memory system does not use the memory cell.
[0088]
FIG. 13 is a diagram illustrating an operation flow of the tenth storage system according to the third embodiment.
[0089]
The tenth storage system includes memory cells that store n values (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16). As shown in FIG. 13, the memory cell operates as an n-value memory cell until the nth rewrite count, and as an m-value memory cell (m is a natural number less than n) until the mth rewrite count. A storage system that operates and thereafter does not erase or write data in the memory cell.
[0090]
FIG. 14 is a diagram illustrating an operation flow of the eleventh storage system according to the third embodiment.
[0091]
The eleventh storage system includes memory cells that store n values (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16). Then, as shown in FIG. 14, the memory cell operates as an n-value memory cell until the nth rewrite count, operates as a binary memory cell until the second rewrite count, and thereafter, A storage system that does not erase or write data in memory cells.
[0092]
FIG. 15 is a diagram illustrating an operation flow of the twelfth storage system according to the third embodiment.
[0093]
The twelfth storage system includes memory cells that store n values (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16). As shown in FIG. 15, the memory cell operates as an n-value memory cell until the nth rewrite operation, and the memory cell operates as an (n-1) value until the (n-1) th rewrite operation. Thereafter, the memory cell operates as an i value up to the i-th (i is a natural number of 2 or more) rewrite sequence. After that, after reaching the second rewrite count, the memory system does not erase or write data in the memory cell.
[0094]
FIG. 16 is a diagram illustrating an operation flow of the thirteenth storage system according to the third embodiment.
[0095]
The thirteenth storage system includes memory cells that store n values (n is a natural number of 3 or more, for example, 3 or 4 or 8 or 16). As shown in FIG. 16, the memory cell operates as an n-value memory cell until the nth rewrite count, and the memory cell operates as an (n-1) value until the (n-1) th rewrite count. Thereafter, the memory cell operates as an i value up to the i-th (i is a natural number of 3 or more) rewrite cycles. Then, after operating as a ternary value up to the third rewrite count, it is used as a binary value until the second rewrite count is reached. Thereafter, after the second number of rewrites, the data in the memory cell may not be erased or written, or the memory cell may not be used.
[0096]
Next explained is a multilevel NAND flash memory according to the fourth embodiment of the invention.
[0097]
In the flash memory according to the fourth embodiment, the value at which the flash memory operates is controlled by inputting a command from the outside of the chip. Hereinafter, a more specific 4-level NAND flash memory will be described as an example.
[0098]
In the fourth embodiment, there are four-value write / read methods and binary write / read methods as operation modes in the flash memory. Whether writing or reading for four values or writing or reading for two values is controlled by a command from a controller outside the chip.
[0099]
In the following, quaternary writing and reading methods and binary writing and reading methods will be described. Erasing is performed in block units or chip units in the same manner as in the conventional binary NAND flash memory, in the case of quaternary memory cells and binary memory cells.
[0100]
[1] When operating as a quaternary memory cell
FIG. 17 is a block diagram showing the configuration of a multi-value storage type EEPROM according to the fourth embodiment of the present invention.
[0101]
FIG. 17 shows the configuration of a multi-value storage type EEPROM. A control gate / selection gate drive circuit 2 that selects a memory cell and applies a write voltage and a read voltage to a control gate is provided for a memory cell array 1 configured by arranging memory cells in a matrix. The control gate / selection gate drive circuit 2 is connected to the address buffer 5 and receives an address signal from the address buffer 5. The data circuit 3 is a circuit for holding write data and reading memory cell data. The data circuit 3 is connected to the data input / output buffer 4 and receives an address signal from the address buffer 5. The data input / output buffer 4 performs data input / output control with the outside of the EEPROM.
[0102]
FIG. 18 is a configuration diagram showing configurations of the memory cell array 1 and the data circuit 3 shown in FIG.
[0103]
As shown in FIG. 18, the NAND cell is configured by connecting memory cells M1 to M4 in series. Both ends of the NAND cell are connected to the bit line BL and the source line Vs via the selection transistors S1 and S2, respectively. The memory cell M group sharing the control gate CG forms a unit called “page”, and data is written / read simultaneously. A block is formed by a group of memory cells connected to the four control gates CG1 to CG4. “Page” and “Block” are selected by the control gate / selection gate drive circuit 2. Data circuits 3-0 to 3-m are connected to the bit lines BL0 to BLm, and temporarily store write data to the corresponding memory cells.
[0104]
FIG. 19 shows the threshold voltage of the memory cell M and the four write states (four-value data “0”, “1”, “2” when four-value storage is performed by creating four write states in the memory cell M. It is a figure which shows the relationship of "" and "3").
[0105]
As shown in FIG. 19, the state of data “0” is the same as the state after erasing data, and has a negative threshold value, for example. The state of data “1” has a threshold value between 0.5V and 0.8V, for example. The state of data “2” has a threshold value between 1.5V and 1.8V, for example. The state of data “3” has a threshold value between 2.5V and 2.8V, for example. A read voltage VCG2R is applied to the control gate CG of the memory cell M, and the memory cell data is either “0” or “1” or “2” depending on whether the memory cell is “ON” or “OFF”. , “Any of“ 3 ”” can be detected. Subsequently, the memory cell data is completely detected by applying the read voltages VCG3R and VCG1R. The read voltages VCG1R, VCG2R, and VCG3R are, for example, 0V, 1V, and 2V, respectively. The voltages VCG1V, VCG2V and VCG3V are called verify voltages. At the time of data writing, these verify voltages are applied to the control gate to detect the state of the memory cell M and check whether or not sufficient writing has been performed. The verify voltages VCG1V, VCG2V, and VCG3V are, for example, 0.5V, 1.5V, and 2.5V, respectively.
[0106]
20 is a circuit diagram of memory cell array 1 and data circuit 3 shown in FIG.
[0107]
As shown in FIG. 20, the data circuit 3 includes a first flip-flop FF1 and a second flip-flop FF2. The first flip-flop FF1 in this embodiment is composed of n-channel MOS transistors Qn21, Qn22, Qn23 and p-channel MOS transistors Qp9, Qp10, Qp11, and is a circuit called a so-called cross-coupled latch circuit. It has become. Similarly, the second flip-flop FF2 includes n-channel MOS transistors Qn29, Qn30, and Qn31 and p-channel MOS transistors Qp16, Qp17, and Qp18, and is a so-called cross-coupled latch circuit. Yes. Write / read data is latched in the flip-flops FF1 and FF2, respectively. Each of the flip-flops FF1 and FF2 also operates as a sense amplifier that amplifies the potential of the bit line BLa or the bit line BLb, that is, amplifies data. The flip-flops FF1 and FF2 latch “write as“ 0 ”,“ 1 ”,“ 2 ”or“ 3 ”” as write data information, and Reads whether the cell holds “0” information, “1” information, “2” information, “3” information ” Sense and latch as data information.
[0108]
Data input / output lines IOA, IOB and flip-flop FF1 are connected via n-channel MOS transistors Qn28, Qn27. Data input / output lines IOC, IOD and flip-flop FF2 are connected via n-channel MOS transistors Qn35, Qn36. Data input / output lines IOA, IOB, IOC, IOD are also connected to data input / output buffer 4 in FIG.
[0109]
The gates of n-channel MOS transistors Qn27, Qn28, Qn35, Qn36 are connected to the output of a column address decoder composed of NAND logic circuit G2 and inverter I4. The n-channel MOS transistors Qn26 and Qn34 equalize the flip-flops FF1 and FF2 with the signals ECH1 and ECH2 being “H”, respectively. N-channel MOS transistors Qn24 and Qn32 control the connection between flip-flops FF1 and FF2 and MOS capacitor Qd1. N-channel MOS transistors Qn25 and Qn33 control connection between flip-flops FF1 and FF2 and MOS capacitor Qd2.
[0110]
The circuit constituted by the p-channel MOS transistors Qp12C and Qp13C changes the gate voltage of the MOS capacitor Qd1 according to the data of the flip-flop FF1 by the activation signal VRFYBAC. The circuit constituted by the p-channel MOS transistors Qp14C and Qp15C changes the gate voltage of the MOS capacitor Qd2 according to the data of the flip-flop FF1 by the activation signal VRFYBBC. A circuit formed of p-channel MOS transistors Qp12C, Qp19C, and Qp20C changes the gate voltage of the MOS capacitor Qd1 according to the data of the flip-flops FF1 and FF2 by the activation signal VRFYBA2C. A circuit constituted by p-channel MOS transistors Qp14C, Qp21C, and Qp22C changes the gate voltage of the MOS capacitor Qd2 according to the data of the flip-flops FF1 and FF2 by the activation signal VRFYBB2C.
[0111]
A circuit composed of n-channel MOS transistors Qn1C and Qn2C changes the gate voltage of the MOS capacitor Qd1 according to the data of the flip-flop FF2 by the activation signal VRFYBA1C. The circuit formed of n-channel MOS transistors Qn3C and Qn4C changes the gate voltage of the MOS capacitor Qd2 according to the data of the flip-flop FF2 by the activation signal VRFYBB1C.
[0112]
MOS capacitors Qd1 and Qd2 are composed of depletion type n-channel MOS transistors, and are sufficiently smaller than the bit line capacitance. N channel MOS transistor Qn37 charges MOS capacitor Qd1 to voltage VA by signal PREA. N channel MOS transistor Qn38 charges MOS capacitor Qd2 to voltage VB by signal PREB. N-channel MOS transistors Qn39 and Qn40 control connection between the data circuit 3 and the bit lines BLa and BLb, respectively, by signals BLCA and BLCB. A circuit composed of n-channel MOS transistors Qn37 and Qn38 also serves as a bit line voltage control circuit.
[0113]
Next, the operation of the flash memory (EEPROM) including the data circuit 3 configured as shown in FIG. 20 will be described according to the timing chart. Hereinafter, a case where the control gate CG2A is selected is shown.
[0114]
<Read operation>
FIG. 21 is a timing chart during the read operation. The read operation will be described below with reference to FIG.
[0115]
As shown in FIG. 21, first, at time t1RC, the voltages VA and VB become 1.8V and 1.5V, respectively, and the potentials of the bit lines BLa and BLb become 1.8V and 1.5V, respectively. Further, the signals BLCA and BLCB become “L” level, the bit line BLa and the MOS capacitor Qd1, and the bit line BLb and the MOS capacitor Qd2 are disconnected, and the bit lines BLa and BLb are in a floating state. Further, the signals PREA and PREB are respectively set to the “L” level, and the nodes N1 and N2 which are the gate electrodes of the MOS capacitors Qd1 and Qd2 are in a floating state.
[0116]
Subsequently, at time t2RC, the selected control gate CG2A of the block selected by the control gate / selection gate drive circuit 2 is set to 0 V, the non-selected control gates CG1A, CG3A, CG4A and the selection gates SG1A, SG2A are set to VCC. The If the threshold value of the selected memory cell is 0V or less, the bit line voltage is lower than 1.5V. If the threshold value of the selected memory cell is 0V or higher, the bit line voltage remains 1.8V.
[0117]
Thereafter, at time t3RC, the signals BLCA and BLCB become “H” level, respectively, and the bit line data is transferred to the MOS capacitors Qd1 and Qd2. Thereafter, the signals BLCA and BLCB again become “L”, and the bit line BLa and the MOS capacitor Qd1, and the bit line BLb and the MOS capacitor Qd2 are disconnected. Further, the signals SAN1 and SAP1 become “L” level and “H” level, respectively, to inactivate the flip-flop FF1, and further, the signal ECH1 becomes “H” level, and 2 of the flip-flop FF1. The two input / output terminals (nodes N3C and N4C) are equalized with each other. Further, thereafter, the signals RV1A and RV1B are set to the “H” level.
[0118]
Subsequently, at time t4RC, the signals SAN1 and SAP1 are again set to the “H” level and the “L” level, respectively, so that the voltage at the node N1 is sensed by the flip-flop FF1 and is then applied to the flip-flop FF1. Latched. Thereby, “whether the data in the memory cell is“ 0 ”,“ 1 ”,“ 2 ”or“ 3 ”) is sensed by the flip-flop FF1, and the information is latched. The selected control gate CG2A is set to 1V. As a result, if the threshold value of the selected memory cell is 1V or less, the bit line voltage becomes lower than 1.5V. If the threshold value of the selected memory cell is 1V or more, the bit line voltage remains 1.8V.
[0119]
Subsequently, at time t5RC, the signals PREA and PREB become “H” level, respectively, and the nodes N1 and N2 that are the gate electrodes of the MOS capacitors Qd1 and Qd2 become 1.8V and 1.5V, respectively. Thereafter, the signals PREA and PREB are respectively set to the “L” level, and the nodes N1 and N2 which are the gate electrodes of the MOS capacitors Qd1 and Qd2 are in a floating state.
[0120]
Thereafter, at time t6RC, the signals BLCA and BLCB are set to the “H” level. Again, the signals BLCA and BLCB become “L” level, respectively, and the bit line BLa and the MOS capacitor Qd1, and the bit line BLb and the MOS capacitor Qd2 are disconnected. Thereafter, the signals SAN2 and SAP2 become “L” level and “H” level, respectively, so that the flip-flop FF2 is deactivated, and further, the signal ECH2 becomes “H”, so that the two flip-flops FF2 Input / output terminals (nodes N5C and N6C) are equalized with each other. Thereafter, the signals RV2A and RV2B are set to the “H” level.
[0121]
Subsequently, at time t7RC, the signals SAN2 and SAP2 are again set to the “H” level and the “L” level, respectively, so that the voltage at the node N1 is sensed by the flip-flop FF2 and then to the flip-flop FF2 Latched. Thereby, “whether the data of the memory cell is“ 0 ”or“ 1 ”,“ 2 ”or“ 3 ”” is sensed by the flip-flop FF2, and the information is latched. The relationship between the potentials of the nodes N3C and N5C of the flip-flops FF1 and FF2 at this time is as shown in FIG.
[0122]
Finally, it is sensed whether the data written in the memory cell is “2” or “3”. The selected control gate CG2A is set to 2V. If the threshold value of the selected memory cell is 2V or less, the bit line voltage is lower than 1.5V. If the threshold value of the selected memory cell is 2V or more, the bit line voltage remains 1.8V.
[0123]
Thereafter, at time t8RC, the signals PREA and PREB become “H” level, respectively, and the nodes N1 and N2 which are the gate electrodes of the MOS capacitors Qd1 and Qd2 become 1.8V and 1.5V, respectively. Further, the signals PREA and PREB are respectively set to the “L” level, and the nodes N1 and N2 which are the gate electrodes of the MOS capacitors Qd1 and Qd2 are in a floating state.
[0124]
Thereafter, at time t10RC, the signals BLCA and BLCB are respectively set to the “H” level. Thereafter, the signals BLCA and BLCB again become “L” level, and the bit line BLa and the MOS capacitor Qd1, and the bit line BLb and the MOS capacitor Qd2 are disconnected.
[0125]
Prior to sensing the data of the MOS capacitor, the signal VRFYBA2C becomes 0V at time t11RC. As can be seen from FIG. 22, the node N5C is “Low level” and the node N3C is “High level” (that is, the node N4C is “Low level”) only in the case of “1” data. Therefore, only in the case of “1” data, the p-channel MOS transistors Qp12C, Qp19C, and Qp20C are turned on, and the node N1 becomes VCC. Thereafter, the signals SAN1 and SAP1 become “L” level and “H” level, respectively, the flip-flop FF1 is deactivated, and the signal ECH1 becomes “H” and equalized. Thereafter, the signals RV1A and RV1B are set to the “H” level.
[0126]
At time t12RC, the signals SAN1 and SAP1 are again set to the “H” level and the “L” level, respectively, so that the voltage of the node N1 is sensed and latched by the flip-flop FF1. Thereby, “whether the data in the memory cell is“ 2 ”or“ 3 ”” is sensed by the flip-flop FF1, and the information is latched.
[0127]
As a result of the above read operation, quaternary data is latched in the flip-flops FF1 and FF2 as shown in FIG. The threshold distribution of each data in the figure is as follows.
[0128]
Data “0”: Threshold value: 0 V or less
Data “1” ・ ・ ・ Threshold: 0.5V or more and 0.8V or less
Data “2”: Threshold: 1.5V to 1.8V
Data “3” ・ ・ ・ Threshold: 2.5V or more and 2.8V or less
During reading, the signals VRFYBAC and VRFYBBC are both at “H” level, and the signals VRFYBA1C and VRFYBB1C are both at “L” level. The voltage Vs is 0V.
[0129]
When the column activation signal CENB input to the column address decoder becomes “H” level, the data held in the data circuit 3 selected by the address signal is output to the data input / output lines IOA, IOB, IOC, and IOD. The data is output to the outside of the EEPROM via the data input / output buffer 4.
[0130]
The relationship among the data stored in the memory cell, the threshold value, and the level output after reading to the data input / output lines IOA, IOB, IOC, and IOD is as shown in FIG.
[0131]
Output data to the outside of the chip may be data converted based on signals output to the data input lines IOA, IOB, IOC, and IOD by the data input / output buffer 4.
[0132]
<Write operation>
First, write data is loaded into the flip-flops FF1 and FF2. Thereafter, “1” data, “2” data, and “3” data are written almost simultaneously. Then, verify read is performed to check whether “1” data, “2” data, and “3” data are sufficiently written. If there is an insufficiently written memory cell, rewrite is performed. Writing is completed when the writing end detection circuit detects that all the memory cells are sufficiently written.
[0133]
In the following, first, the program will be described, and then verify read will be described.
[0134]
(1) Program
Before the write operation, the input 2-bit data is converted by the data input / output buffer 4 and input to the data circuit 3. The relationship between the quaternary data and the data input / output lines IOA, IOB, IOC, and IOD is as shown in FIG.
[0135]
The converted quaternary data is transferred to the data circuit 3 at the column address designated by the address signal when the column activation signal CENB is at “H” level.
[0136]
FIG. 25 is a timing chart during the write operation. Hereinafter, the write operation will be described with reference to FIG.
[0137]
As shown in FIG. 25, first, at time t1S, the voltage VA becomes the bit line write control voltage 1V, and the bit line BLa is set to 1V. When a voltage drop corresponding to the threshold value of n channel MOS transistor Qn39 becomes a problem, signal BLCA may be boosted. Subsequently, the signal PREA becomes “L” level, and the bit line BLa is floated.
[0138]
Next, at time t2S, the signal RV2A is set to 1.5V. As a result, the bit line control voltage 0V is applied to the bit line BLa from the data circuit holding the data “1” or “3”. Assuming that the threshold value of the n-channel MOS transistor Qn32 is 1V, the n-channel MOS transistor Qn32 is “OFF” when “0” or “2” is written, and “ON” when “1” or “3” is written.
[0139]
Thereafter, at time t3S, the signal VRFYBAC becomes 0 V, and the bit line write control voltage VCC is output to the bit line BLa from the data circuit in which the data “0” or the data “1” is held.
[0140]
Then, at time t4S, the signal VRFYBA2C becomes 0V, and the bit line “1” write potential 2V is output to the bit line BLa via the terminal V1 from the data circuit holding the data “1”.
[0141]
As a result, the bit line for writing "0" is VCC, the bit line for writing "1" is 2V, the bit line for writing "2" is 1V, and the bit line for writing "3" is 0V. At times t1S to t4S, the control gate / selection gate drive circuit 2 selects the selection gate SG1A and control gates CG1A to CG4A of the block selected as VCC. The selection gate SG2A is 0V.
[0142]
Next, at time t5s, the selected control gate CG2A becomes the high voltage VPP (for example, 20V), and the non-selected control gates CG1A, CG3A, and CG4A become the voltage VM (for example, 10V). In the memory cell corresponding to the data circuit holding data “3”, electrons are injected into the floating gate due to the potential difference between the channel potential of 0 V and the VPP of the control gate, and the threshold value of the memory cell rises. In the memory cell corresponding to the data circuit holding the data “2”, electrons are injected into the floating gate due to the potential difference between the channel potential of 1 V and the VPP of the control gate, and the threshold value of the memory cell rises. In the memory cell corresponding to the data circuit holding data “1”, electrons are injected into the floating gate due to the potential difference between the channel potential of 2V and the VPP of the control gate, and the threshold value of the memory cell rises. The channel potential for “2” writing is set to 1 V, and the channel potential for “1” writing is set to 2 V. The electron injection amount is “3” data writing, “2” writing, “ This is to reduce the order in the case of 1 "writing. In the memory cell corresponding to the data circuit holding data “0”, the potential difference between the channel potential and the VPP of the control gate is small, so that electrons are not effectively injected into the floating gate. Therefore, the threshold value of the memory cell does not change. During the write operation, the signals SAN1, SAN2, PREB, and BLCB are at “H” level, the signals SAP1, SAP2, VRFYBA1C, RV1A, RV1B, RV2B, ECH1, and ECH2 are at “L” level, and the voltage VB is 0V.
[0143]
(2) Verify read
After the write operation, it is detected whether the write has been sufficiently performed (write verify). If the desired threshold value is reached, the data in the data circuit is changed to “0”. If the desired threshold value has not been reached, the data in the data circuit is retained and the write operation is performed again. The write operation and the write verify are repeated until all the “1” -written memory cells, the “2” -written memory cells, and the “3” -written memory cells reach a desired threshold value.
[0144]
FIG. 26 and FIG. 27 are timing charts during the write verify operation. FIG. 26 and FIG. 27 are drawings that are temporally continuous. The numbers 1 to 32 attached to the end of the signal waveform on the right side of FIG. 26 are connected to the numbers 1 to 32 attached to the end of the signal waveform on the left side of FIG. Show. The write verify operation will be described below with reference to FIGS. 26 and 27.
[0145]
First, it is detected whether the memory cell to which “1” is written has reached a predetermined threshold value.
[0146]
As shown in FIG. 26, at time t1YC, the voltages VA and VB are 1.8V and 1.5V, respectively, and the bit lines BLa and BLb are 1.8V and 1.5V, respectively. Further, the signals BLCA and BLCB become “L” level, the bit line BLa and the MOS capacitor Qd1, the bit line BLb and the MOS capacitor Qd2 are disconnected, and the bit lines BLa and BLb are in a floating state. Further, the signals PREA and PREB are respectively set to the “L” level, and the nodes N1 and N2 which are the gate electrodes of the MOS capacitors Qd1 and Qd2 are in a floating state.
[0147]
Subsequently, at time t2YC, the selected control gate CG2A of the block selected by the control gate / selection gate drive circuit 2 is 0.5V, the non-selected control gates CG1A, CG3A, CG4A and the selection gates SG1A, SG2A are at VCC. Is done. If the threshold value of the selected memory cell is 0.5V or less, the bit line voltage is lower than 1.5V. If the threshold value of the selected memory cell is 0.5V or higher, the bit line voltage remains 1.8V.
[0148]
Thereafter, at time t3YC, the signals BLCA and BLCB are set to the “H” level, respectively, and the potential of the bit line is transferred to the nodes N1 and N2. Thereafter, the signals BLCA and BLCB become “L” level, respectively, and the bit line BLa and the MOS capacitor Qd1, and the bit line BLb and the MOS capacitor Qd2 are disconnected.
[0149]
Thereafter, at time t4YC, the signal RV1A becomes 1.5V, and in the case of “2” writing and “3” writing, the node N1 is discharged to 0V.
[0150]
Subsequently, when the signal VRFYBA1C becomes “H” level at time t5YC, in the data circuit holding “0” or “2” write data, the n-channel MOS transistor Qn2 is “ON” and the node N1 is VCC. As a result, the node N1 becomes VCC when “0” or “2” is written, and becomes 0 V when “3” is written. Thereafter, the signals SAN2 and SAP2 become “L” level and “H” level, respectively, the flip-flop FF2 is inactivated, the signal ECH2 becomes “H”, and two inputs of the flip-flop FF2 are input. Output terminals (nodes N5C and N6C) are equalized with each other. Thereafter, the signals RV2A and RV2B are set to the “H” level.
[0151]
Thereafter, at time t6YC, the signals SAN2 and SAP2 are again set to the “H” level and the “L” level, respectively, so that the voltage at the node N1 is sensed and latched. As a result, only the data circuit holding the “1” write data detects whether or not the data in the corresponding memory cell is sufficiently in the “1” write state. If the data in the memory cell is “1”, the write data is changed to “0” by sensing and latching the voltage of the node N1 by the flip-flop FF2. On the other hand, if the data in the memory cell is not “1”, the voltage of the node N2 is sensed by the flip-flop FF1 and latched to hold the write data at “1”. Write data of the data circuit holding “0”, “2” or “3” write data is not changed. The selected control gate is set to 1.5V. If the threshold value of the selected memory cell is 1.5V or less, the bit line voltage is lower than 1.5V. If the threshold value of the selected memory cell is 1.5V or higher, the bit line voltage remains 1.8V.
[0152]
Subsequently, at time t7YC, the signals PREA and PREB become VCC, and the nodes N1 and N2 become 1.8V and 1.5V, respectively, and then float.
[0153]
Thereafter, as shown in FIG. 27, at time t8YC, the signals BLCA and BLCB are set to the “H” level, respectively, and the potentials of the bit lines are transferred to N1 and N2. Thereafter, the signals BLCA and BLCB become “L”, and the bit line BLa and the MOS capacitor Qd1, and the bit line BLb and the MOS capacitor Qd2 are disconnected.
[0154]
Thereafter, at time t9YC, the signal RV2A is set to 1.5 V, for example, equal to or lower than VCC. When the threshold value of n-channel MOS transistor Qn32 is 1V, in the data circuit holding “3” write data, n-channel MOS transistor Qn32 is “ON” and node N1 is 0V. In the data circuit in which “2” write data is held and the memory cell is sufficiently written “2”, the n-channel MOS transistor Qn32 is “OFF” and the node N1 is kept at 1.5V or higher. Be drunk. When “2” writing is insufficient, the node N1 is 1.5V or less.
[0155]
Thereafter, when the signal VRFYBAC becomes “L” level at time t10YC, in the data circuit in which “0” or “1” write data is held, the p-channel MOS transistor Qp13C is “ON”, and the node N1 is set to VCC. It becomes. Further, the signals SAN1 and SAP1 become “L” level and “H” level, respectively, to inactivate the flip-flop FF1, and the signal ECH1 becomes “H” level, so that two inputs of the flip-flop FF1 are input. Output terminals (nodes N3C and N4C) are equalized with each other. Thereafter, the signals RV1A and RV1B are set to the “H” level.
[0156]
Thereafter, at time t11YC, the signals SAN1 and SAP1 are again set to the “H” level and the “L” level, respectively, so that the voltage at the node N1 is sensed and latched. As a result, only the data circuit holding the “2” write data detects whether or not the data in the corresponding memory cell is sufficiently in the “2” write state. If the data in the memory cell is “2”, the write data is changed to “0” by sensing and latching the voltage of the node N1 by the flip-flop FF1. On the other hand, if the memory cell data is not “2”, the flip-flop FF1 senses and latches the voltage at the node N1, and the write data is held at “2”. The write data of the data circuit holding “0”, “1” or “3” write data is not changed. The selected control gate is set to 2.5V. If the threshold value of the selected memory cell is 2.5V or less, the bit line voltage is lower than 1.5V. If the threshold value of the selected memory cell is 2.5V or more, the bit line voltage remains 1.8V.
[0157]
Thereafter, at time t12YC, the signals BLCA and BLCB are set to the “H” level, and the potentials of the bit lines are transferred to N1 and N2. Thereafter, the signals BLCA and BLCB again become “L” level, and the bit line BLa and the MOS capacitor Qd1, and the bit line BLb and the MOS capacitor Qd2 are disconnected.
[0158]
Thereafter, when the signal VRFYBAC becomes “L” level at time t13YC, the data circuit in which “0” or “1” write data is held and the data circuit in which “2” write is sufficiently performed The channel MOS transistor Qp13C is “ON”, and the node N1 becomes VCC. Further, the signals SAN1 and SAP1 become “L” level and “H” level, respectively, to inactivate the flip-flop FF1, and the signal ECH1 becomes “H” level, so that two inputs of the flip-flop FF1 are input. Output terminals (nodes N3C and N4C) are equalized with each other. Thereafter, the signals RV1A and RV1B are set to the “H” level.
[0159]
Thereafter, at time t14YC, the signals SAN1 and SAP1 become “H” level and “L” level, respectively, so that the voltage of the node N1 is sensed and latched. Thereafter, as shown in FIG. 27, the conversion of the write data as described above is further performed.
[0160]
Next, at time t15YC, the signals BLCA and BLCB are set to the “H” level, and the potentials of the bit lines are transferred to N1 and N2. Thereafter, the signals BLCA and BLCB again become “L”, and the bit line BLa and the MOS capacitor Qd1, and the bit line BLb and the MOS capacitor Qd2 are disconnected.
[0161]
Thereafter, when the signal VRFYBA1C becomes “H” level at time t16YC, the n-channel MOS transistor Qn2C is used in the data circuit holding “0” or “2” write data and the data circuit sufficient for “1” write. Is turned ON, and the node N1 becomes VCC. Further, the signals SAN2 and SAP2 become “L” level and “H” level, respectively, to inactivate the flip-flop FF2, and the signal ECH2 becomes “H” level, so that two inputs of the flip-flop FF2 are input. Output terminals (nodes N5C and N6C) are equalized with each other. Thereafter, the signals RV2A and RV2B are set to the “H” level.
[0162]
Thereafter, at time t17YC, the signals SAN2 and SAP2 are set to the “H” level and the “L” level, respectively, so that the voltage at the node N1 is sensed and latched.
[0163]
In this embodiment, by setting the signal VRFYBA1C to VCC at time t16YC, the node N1 of the MOS capacitor Qd1 when “0” writing and “2” writing are performed from the potential (1.5 V) of the node N2. The battery is charged to be higher. At time t16YC, the signal RV2B may be set to 1.5 V, for example. In this case, in the case of writing “0” or “2”, since the node N6C is 0V, the n-channel MOS transistor Qn33 is turned on, and the node N2 becomes 0V. On the other hand, in the case of writing “1” or “3”, since the node N6C is VCC and the node N2 is 1.5V, the n-channel MOS transistor Qn33 is turned off and the node N2 is kept at 1.5V. At time t16YC, when the signal VRFYBA1C is set to VCC and “0” writing and “2” writing are performed, charging to the node N1 only needs to be larger than the potential of the node N2 (0V). The charging may be a low voltage of about 0.5V, for example.
[0164]
As described above, only the data circuit holding “3” write data detects whether or not the data in the corresponding memory cell is sufficiently in the “3” write state. If the data in the memory cell is “3”, the write data is changed to “0” by sensing and latching the voltage at the node N1 by the flip-flops FF1 and FF2. If the data in the memory cell is not “3”, the voltage of the node N1 is sensed and latched by the flip-flops FF1 and FF2, and the write data is held at “3”. The write data of the data circuit holding “0”, “1” or “2” write data is not changed.
[0165]
During the write verification, the signal VRFYBBC is “H”, the signal VRFYBB1C is “L”, and the voltage Vs is 0V.
[0166]
If all of the selected memory cells have reached the desired threshold value, the data in the data circuit becomes “0” data. That is, when the writing is completed, the nodes N4C and N6C become “L” level. By detecting this, it can be determined whether or not all of the selected memory cells have reached a desired threshold value. For example, the write end detection may be performed using the write end batch detection transistor Qn5C having a gate connected to the node N4C and the write end batch detection transistor Qn6C having a gate connected to the node N6C, as shown in FIG.
[0167]
After the verify read, first, the terminal VRTC is precharged to, for example, VCC. If even one memory cell is insufficiently written, at least one of the node N4C or N6C of the data circuit is at “H” level, so that at least one of the n-channel MOS transistors Qn5C and Qn6C is turned on, and the terminal VRTC The potential drops from the precharge potential. When all the memory cells are sufficiently written, the nodes N4C and N6C of the data circuits 3-0, 3-1,..., 3-m-1, 3-m become “L” level. As a result, n channel MOS transistors Qn5C and Qn6C in all data circuits are turned off, so that the potential of terminal VRTC maintains the precharge potential.
[0168]
[2] When operating as a binary memory cell
Write and read procedures when the memory cell operates as a binary cell will be described below. A circuit for controlling read / write data is the circuit shown in FIG. 20 as in the case of operating as a quaternary cell.
[0169]
<Write operation>
(1) Program
Prior to the write operation, the input data is input to the data circuit 3 via the data input / output buffer 4. Data is input to the flip-flop FF1 via IOA and IOB when the column activation signal CENB is at "H" level.
[0170]
FIG. 28 shows the relationship between the threshold voltage of the memory cell M and the two write states (binary data “0” and “1”) when binary storage is performed by creating two write states in the memory cell M. FIG. FIG. 29 is a diagram showing the relationship between the write data and the nodes N3C and N4C of the flip-flop FF1. FIG. 30 is a timing chart during the write operation. Hereinafter, the write operation will be described with reference to FIG.
[0171]
As shown in FIG. 30, first, at time t1S, the signal VRFYBAC becomes 0V, and the bit line write control voltage VCC is output to the bit line BLa from the data circuit holding the data “0”.
[0172]
After that, at time t2S, the signal RV1A becomes VCC, so that the voltage 0V is output to the bit line from the data circuit holding the data “1”.
[0173]
As a result, the bit line for writing “0” becomes VCC and the bit line for writing “1” becomes 0V. At time t1S, the control gate / selection gate drive circuit 2 sets the selection gate SG1A and control gates CG1A to CG4A of the selected block to VCC. The selection gate SG2A is 0V.
[0174]
Next, at time t3S, the selected control gate CG2A becomes the high voltage VPP (for example, 20V), and the non-selected control gates CG1A, CG3A, and CG4A become the voltage VM (for example, 10V). In the memory cell corresponding to the data circuit holding data “1”, electrons are injected into the floating gate due to the potential difference between the channel potential of 0 V and the VPP of the control gate, and the threshold value of the memory cell increases. In the memory cell corresponding to the data circuit holding the data “0”, the selection gate SG1A is turned off, so that the channel of the memory cell becomes floating. As a result, the channel of the memory cell becomes about 8V due to capacitive coupling with the control gate. In the memory cell to which data “0” is written, the channel is 8V and the control gate is 20V. Therefore, electrons are not injected into the memory cell and the erased state (“0”) is maintained. During the write operation, the signals SAN1, SAN2, PREB, BLCB, and VRFYBA2C are at “H” level, the signals SAP1, SAP2, VRFYBA1C, RV1B, RV2B, ECH1, and ECH2 are at “L” level, and the voltage VB is 0V.
[0175]
(2) Verify read
After the write operation, it is detected whether the write has been sufficiently performed (write verify). If the desired threshold value is reached, the data in the data circuit is changed to “0”. If the desired threshold value has not been reached, the data in the data circuit is retained and the write operation is performed again. The write operation and the write verify are repeated until all memory cells to which “1” is written reach a desired threshold value.
[0176]
FIG. 31 is a timing chart during the write verify operation.
[0177]
Hereinafter, the write verify operation will be described with reference to the circuit diagram shown in FIG. 20 and the timing diagram shown in FIG.
[0178]
As shown in FIG. 31, first, at time t1YC, the voltages VA and VB become 1.8V and 1.5V, respectively, and the bit lines BLa and BLb become 1.8V and 1.5V, respectively. Further, the signals BLCA and BLCB become “L” level, the bit line BLa and the MOS capacitor Qd1, the bit line BLb and the MOS capacitor Qd2 are disconnected, and the bit lines BLa and BLb are in a floating state. Further, the signals PREA and PREB are respectively set to the “L” level, and the nodes N1 and N2 which are the gate electrodes of the MOS capacitors Qd1 and Qd2 are in a floating state.
[0179]
Subsequently, at time t2YC, the selected control gate CG2A of the block selected by the control gate / selection gate drive circuit 2 is 0.5V, the non-selected control gates CG1A, CG3A, CG4A and the selection gates SG1A, SG2A are at VCC. Is done. If the threshold value of the selected memory cell is 0.5V or less, the bit line voltage is lower than 1.5V. If the threshold value of the selected memory cell is 0.5V or higher, the bit line voltage remains 1.8V.
[0180]
Thereafter, at time t3YC, the signals BLCA and BLCB are set to the “H” level, respectively, and the potential of the bit line is transferred to the nodes N1 and N2. Thereafter, the signals BLCA and BLCB become “L” level, respectively, and the bit line BLa and the MOS capacitor Qd1, and the bit line BLb and the MOS capacitor Qd2 are disconnected.
[0181]
Thereafter, when the signal VRFYBAC becomes “L” at time t4YC, in the data circuit holding “0” write data, the p-channel MOS transistor Qp12C is “ON”, and the node N1 becomes VCC. As a result, the node N1 becomes VCC when “0” is written. In the case of writing “1”, the p-channel MOS transistor Qp12C is “OFF”. That is, N1 becomes VCC when “1” writing is sufficiently performed, and N1 becomes 0 V when “1” writing is insufficient. Thereafter, the signals SAN1 and SAP1 become “L” and “H”, respectively, to inactivate the flip-flop FF1, and the signal ECH1 becomes “H”, so that two input / output terminals (nodes) of the flip-flop FF1 N3C, N4C) are equalized with each other. Thereafter, the signals RV1A and RV1B become “H”.
[0182]
Thereafter, at time t5YC, the signals SAN1 and SAP1 are again set to the “H” level and the “L” level, respectively, so that the voltage at the node N1 is sensed and latched. As a result, only the data circuit holding the “1” write data detects whether or not the data in the corresponding memory cell is sufficiently in the “1” write state. If the data in the memory cell is “1”, the write data is changed to “0” by sensing and latching the voltage of the node N1 by the flip-flop FF1. Conversely, if the data in the memory cell is not “1”, the flip-flop FF1 senses and latches the voltage at the node N1, and the write data is held at “1”. The write data of the data circuit holding “0” write data is not changed.
[0183]
If all of the selected memory cells have reached the desired threshold value, the node N4C of the data circuit becomes “L”. By detecting this, it can be determined whether or not all selected memory cells have reached a desired threshold value. For example, the write end detection may be performed by using a write end batch detection transistor Qn5C having a gate connected to the node N4C shown in FIG.
[0184]
After the verify read, first, the terminal VRTC is precharged to, for example, VCC. If even one memory cell is insufficiently written, since the node N4C of the data circuit is “H”, the n-channel MOS transistor Qn5C is turned on, and the potential of the terminal VRTC is lowered from the precharge potential. When all the memory cells are sufficiently written, the nodes N4C of the data circuits 3-0, 3-1,..., 3-m-1, 3-m all become “L” level. As a result, the n-channel MOS transistors Qn5C in all the data circuits are turned off, so that the potential of the terminal VRTC maintains the precharge potential and the end of writing is detected.
[0185]
<Read operation>
In the read operation, “0” or “1” is read.
[0186]
FIG. 32 is a timing chart during the read operation. The read operation will be described below with reference to FIG.
[0187]
As shown in FIG. 32, first, at time t1RD, the voltages VA and VB become 1.8V and 1.5V, respectively, and the potentials of the bit lines BLa and BLb become 1.8V and 1.5V, respectively. Further, the signals BLCA and BLCB become “L” level, the bit line BLa and the MOS capacitor Qd1, the bit line BLb and the MOS capacitor Qd2 are disconnected, and the bit lines BLa and BLb are in a floating state. Further, the signals PREA and PREB are respectively set to the “L” level, and the nodes N1 and N2 which are the gate electrodes of the MOS capacitors Qd1 and Qd2 are in a floating state.
[0188]
Subsequently, the selected control gate CG2A of the block selected by the control gate / selection gate drive circuit 2 is set to 0V, and the non-selected control gates CG1A, CG3A, CG4A and the selection gates SG1A, SG2A are set to VCC. If the threshold value of the selected memory cell is 0V or less, the bit line voltage is lower than 1.5V. If the threshold value of the selected memory cell is 0V or higher, the bit line voltage remains 1.8V.
[0189]
Thereafter, at time t2RD, the signals BLCA and BLCB become “H” level, respectively, and the bit line data is transferred to the MOS capacitors Qd1 and Qd2. Thereafter, the signals BLCA and BLCB again become “L”, and the bit line BLa and the MOS capacitor Qd1, and the bit line BLb and the MOS capacitor Qd2 are disconnected. Further, the signals SAN1 and SAP1 become “L” level and “H” level, respectively, so that the flip-flop FF1 is deactivated, and the signal ECH1 becomes “H”, so that two inputs / outputs of the flip-flop FF1 Terminals (nodes N3C and N4C) are equalized with each other. Further, thereafter, the signals RV1A and RV1B are set to the “H” level.
[0190]
Subsequently, at time t3RD, the signals SAN1 and SAP1 are again set to the “H” level and the “L” level, respectively, so that the voltage at the node N1 is sensed by the flip-flop FF1 and then to the flip-flop FF1. Latched. Thereby, “whether the data of the memory cell is“ 0 ”or“ 1 ”” is sensed by the flip-flop FF1, and the information is latched.
[0191]
Next explained is a storage system according to the fifth embodiment of the invention.
[0192]
In the storage system described in the first to fourth embodiments, the performance of the memory cell (what value memory cell is used) is monitored, the number of times the memory cell is rewritten, or the usage time of the memory cell is monitored. It was judged by doing. However, the monitoring method is not limited to the above method.
[0193]
In the storage system according to the fifth embodiment, there is provided a storage system including a new monitoring method and a new monitoring method that are particularly effective in determining the performance switching of the memory cell.
[0194]
FIG. 33 is a diagram showing an operation flow of the first storage system according to the fifth embodiment.
[0195]
As shown in FIG. 33, the first storage system monitors the number of write verifications, that is, the number of write / verify read cycles. Of course, the number of erase verifications may be monitored without being limited to the number of write verifications.
[0196]
That is, in the NAND type EEPROM, verify read is performed to check whether writing or erasing is sufficiently performed after applying a program pulse in writing and erasing. When there is a memory cell that is insufficiently written or erased, rewriting and reerasing are performed. Here, at the beginning of use, it is assumed that the memory cell has been sufficiently written by, for example, three write / verify read cycles. On the other hand, as the number of rewrites increases, electrons are trapped in the tunnel oxide film of the memory cell, and writing becomes difficult. As a result, for example, the number of write / verify read cycles increases to four times, five times, and six times. Therefore, for example, as shown in FIG. 1, the write / verify read cycle is operated as a quaternary memory cell up to a predetermined number of times (for example, 5 times), and as a ternary memory cell at the time of writing after the predetermined number of times. It only has to be operated. Even when operated as a ternary memory cell, the number of write / verify / read cycles increases as the number of rewrites increases, so that the predetermined number of times (for example, 7 times, 5 times, or 4 times) is reached. By the way, at the time of subsequent writing, it may be operated as a binary memory cell. Similarly, when the number of write / verify / read cycles of the binary memory cell reaches a predetermined number, the memory cell may not be used thereafter, or the program / erase will not be performed thereafter. May be.
[0197]
Thus, the number of write / verify read cycles can be detected, and the degree of deterioration of the memory cell can be grasped from the detection result. Therefore, by determining whether the number of write / verify read cycles has reached a predetermined number, the number of pieces of information stored in the memory cell can be changed as in the first to fourth embodiments. it can. Such a monitoring method can be used for the storage system described in the first to fourth embodiments or the multi-value storage flash memory.
[0198]
For example, the memory cell may first be used as a quaternary memory cell and used as a binary cell after the number of write / verify read cycles reaches a predetermined number of cycles.
[0199]
In addition, the novel monitoring method included in the storage system according to the fifth embodiment is effective not only in multilevel memory cells but also in binary memory cells.
[0200]
FIG. 34 is a diagram showing an operation flow of the second storage system according to the fifth embodiment.
[0201]
As shown in FIG. 34, the number of write / verify read cycles is used as a binary memory cell until a predetermined number of times, and the memory cell is not used after the predetermined number of times is exceeded. Alternatively, the memory cell may not be written or erased after a predetermined number of times has been exceeded.
[0202]
In the NAND type EEPROM, for example, one block is formed by 16 pages. By detecting the number of write / verify / read cycles for each page, the value of the memory cell to be operated can be determined for each page. You can decide.
[0203]
The value of the memory cell to be operated may be determined for each block or for each chip. In other words, if the number of write / verify read cycles that operate as a quaternary memory cell in one page out of 16 pages constituting a block exceeds a predetermined number, the memory of the block that includes this page For example, the cell may be operated as a binary cell in the subsequent writing. Of course, if the number of write / verify / read cycles to be operated as a quaternary memory cell exceeds a predetermined number even in one page among a plurality of pages constituting the chip, the page of the chip including this page is included. All memory cells may be operated as, for example, binary cells in the subsequent writing.
[0204]
Furthermore, it is possible to determine the value of the memory cell to be operated in units of memory cell blocks obtained by subdividing the page, and the operation mode is different within the page as long as the operation can be controlled. There may be memory cells. That is, the unit for changing the number of pieces of information stored in the memory cell is not particularly limited, and various modifications are possible in addition to the page unit, block unit, and chip unit as described above.
[0205]
Further, the number of information values stored in the memory cell may be changed by detecting not the number of write / verify read cycles but the number of erase / verify read cycles.
[0206]
Further, the number of write / verify read cycles or the number of erase / verify read cycles may be stored or counted in a counter circuit provided in the chip, and information of the counter circuit may be output to the chip.
[0207]
FIG. 35 is a diagram showing an operation flow of the third storage system according to the fifth embodiment.
[0208]
As shown in FIG. 35, the write (or erase) voltage may be changed by detecting the number of write / verify read cycles (or the number of erase / verify read cycles). For example, taking a binary memory cell as an example, the initial value of the write voltage is 16 V until the number of cycles reaches four. As the number of rewrites increases, the number of cycles increases because writing and erasure become difficult. When the number of cycles exceeds 4, the initial value of the write voltage is set to 17V. If the number of rewrites further increases and the initial value of the write voltage is 17V and the number of cycles exceeds four, the initial value of the write voltage may be increased to 18V.
[0209]
If the number of cycles exceeds a predetermined number, not only the write voltage but also the initial value of the erase voltage may be increased. Of course, the erase voltage or the write voltage may be changed by detecting the number of erase / verify read cycles.
[0210]
As described above, monitoring the number of write / verify read cycles or the number of erase / verify read cycles not only determines the value of the memory cell to be operated, but also monitors the number of rewrites. It is very effective in widely determining the performance of memory cells.
[0211]
As described above, in the first to fifth embodiments described above, in a storage system using a multilevel semiconductor memory device, the number of information (values) stored in one memory cell is reduced as the number of rewrites increases. For example, a quaternary memory cell operates as a quaternary memory cell up to 500,000 rewrites, and thereafter operates as a binary memory cell. Thereby, the number of rewrites of the entire storage system can be increased more than before.
[0212]
The present invention can be applied not only to NAND type EEPROMs and NOR type flash memories, but also to AND type (K. Kume et al .; IEDM Tech. Dig., Dec. 1992, pp.991-993) , DINOR type (S. Kobayashi et al .; ISSCC Tech. Dig., 1995, pp. 122) and virtual ground type array (R. Cemea et al .; ISSCC Tech. Dig., 1995, pp. 126) Good.
[0213]
Of course, a multi-level DRAM, a multi-level mask ROM, or a multi-level SRAM may be used.
[0214]
The present invention can be applied not only to ternary memory cells or quaternary memory cells, but also to quinary memory cells, octane memory cells, or 16 value memory cells.
[0215]
【The invention's effect】
As described above, according to the present invention, a memory system that includes a multi-level memory cell and has a particularly high durability regarding rewriting, and a novel system element that is particularly necessary for the memory system are included. A storage system can be provided.
[Brief description of the drawings]
FIG. 1 is a diagram showing a relationship between a threshold voltage and quaternary data in a multi-level NAND flash memory according to a first embodiment of the present invention.
FIGS. 2A, 2B, and 2C show the relationship between the threshold voltage and the ternary data of the multi-level NAND flash memory according to the first embodiment of the present invention, respectively. Figure.
FIGS. 3A and 3B are diagrams showing the relationship between the threshold voltage and binary data of the multi-level NAND flash memory according to the first embodiment of the present invention.
FIG. 4 is a block diagram of a flash memory according to a second embodiment of the present invention.
FIG. 5 is a block diagram of the flash memory chip shown in FIG. 4;
FIG. 6 is a configuration diagram of a storage system according to a modification of the second embodiment of the present invention.
FIG. 7 is a diagram showing an operation flow of the first storage system according to the third embodiment of the invention;
FIG. 8 is a diagram showing an operation flow of the second storage system according to the third embodiment of the invention;
FIG. 9 is a diagram showing an operation flow of a third storage system according to the third embodiment of the present invention;
FIG. 10 is a diagram showing an operation flow of a seventh storage system according to the third embodiment of the invention;
FIG. 11 is a diagram showing an operation flow of an eighth storage system according to the third embodiment of the invention;
FIG. 12 is a view showing an operation flow of a ninth storage system according to the third embodiment of the invention;
FIG. 13 is a view showing an operation flow of a tenth storage system according to the third embodiment of the invention;
FIG. 14 is a diagram showing an operation flow of an eleventh storage system according to the third embodiment of the invention;
FIG. 15 is a view showing an operation flow of a twelfth storage system according to the third embodiment of the invention;
FIG. 16 is a view showing an operation flow of a thirteenth storage system according to the third embodiment of the invention;
FIG. 17 is a configuration diagram showing a configuration of a multi-value storage type EEPROM according to a fourth embodiment of the present invention;
FIG. 18 is a configuration diagram showing a configuration of a memory cell array and a data circuit shown in FIG. 17;
FIG. 19 is a diagram showing a relationship between threshold voltage and quaternary data of a multi-value storage type EEPROM according to a fourth embodiment of the present invention;
20 is a circuit diagram of the memory cell array and data circuit shown in FIG. 17;
FIG. 21 is a timing chart during a read operation.
FIG. 22 is a diagram showing a relationship between a potential of a flip-flop node and quaternary data;
FIG. 23 is a diagram showing the relationship between the potential of a flip-flop node and quaternary data.
FIG. 24 is a diagram showing the relationship between the potential of a flip-flop node and quaternary data.
FIG. 25 is a timing chart during a write operation.
FIG. 26 is a timing chart during a write verify operation.
FIG. 27 is a timing chart during a write verify operation.
FIG. 28 is a diagram showing the relationship between the threshold voltage and binary data of a multi-value storage type EEPROM according to the fourth embodiment of the present invention;
FIG. 29 is a diagram showing a relationship between a potential of a flip-flop node and binary data;
FIG. 30 is a timing chart during a write operation.
FIG. 31 is a timing chart during a write verify operation;
FIG. 32 is a timing chart during a read operation.
FIG. 33 is a view showing an operation flow of the first storage system according to the fifth embodiment of the invention;
FIG. 34 is a view showing an operation flow of a second storage system according to the fifth embodiment of the invention;
FIG. 35 is a view showing an operation flow of a third storage system according to the fifth embodiment of the invention;
36A and 36B are diagrams showing a NAND cell portion of a memory cell array, in which FIG. 36A is a plan view and FIG. 36B is an equivalent circuit diagram;
37 is a cross-sectional view, and FIG. 37 (a) is a cross-sectional view taken along line AA ′ in FIG. 36 (a), and FIG. 37 (b) is a cross-sectional view taken along line BB ′ in FIG. 36 (a). Sectional drawing.
FIG. 38 is an equivalent circuit diagram of a memory cell array in which NAND cells are arranged in a matrix.
FIG. 39 is a diagram showing a relationship between a threshold voltage of a memory cell and quaternary data.
[Explanation of symbols]
1 ... Memory cell array,
2 ... Control gate / selection gate drive circuit,
3 ... Data circuit,
4 ... Data input / output buffer,
5 ... Address buffer,
6 ... Data control circuit,
M ... Memory cell,
S ... selection transistor,
SG ... selection gate,
CG ... Control gate,
BL: Bit line,
Qn: n-channel MOS transistor,
Qp ... p-channel MOS transistor,
Qd: Depletion type n-channel MOS transistor,
FF ... flip-flop,
I: Inverter,
G: NAND logic circuit.

Claims (16)

複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルと、
前記複数のメモリセルを制御する制御回路と、を備え、
前記制御回路は、前記複数のメモリセルの一部を前記n値の記憶部分として制御し、異なる一部のメモリセルをm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、更に異なる一部のメモリセルにどのメモリセルをm値の記憶部分として制御するかという制御情報を記憶させることを特徴とする記憶システム。
A plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewritable;
A control circuit for controlling the plurality of memory cells,
The control circuit controls a part of the plurality of memory cells as the n-value storage part, and stores a part of the different memory cells as m-value (m is a natural number of 2 or more, m <n). And further storing control information as to which memory cell is to be controlled as an m-value storage part in a part of different memory cells.
複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルと、
前記複数のメモリセルを制御する制御回路と、を備え、
前記制御回路は、前記複数のメモリセルの一部を前記n値の記憶部分として制御し、異なる一部のメモリセルをm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、更に異なる一部のメモリセルにどのメモリセルをm値の記憶部分として制御するかという制御情報を記憶させ、前記制御情報を書き換えることでm値の記憶をさせるメモリセルを変更することを特徴とする記憶システム。
A plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewritable;
A control circuit for controlling the plurality of memory cells,
The control circuit controls a part of the plurality of memory cells as the n-value storage part, and stores a part of the different memory cells as m-value (m is a natural number of 2 or more, m <n). Control information indicating which memory cell is to be controlled as an m-value storage part in some different memory cells, and rewriting the control information changes the memory cell to store the m-value. A storage system characterized by that.
複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルと、
前記複数のメモリセルを制御する制御回路と、を備え、
前記制御回路は、前記複数のメモリセルの一部を前記n値の記憶部分として制御し、異なる一部のメモリセルをm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、更に異なる一部のメモリセルにどのメモリセルをn値の記憶部分として制御するかという制御情報を記憶させることを特徴とする記憶システム。
A plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewritable;
A control circuit for controlling the plurality of memory cells,
The control circuit controls a part of the plurality of memory cells as the storage part of the n value, and stores a part of the different memory cells in the m value (m is a natural number of 2 or more, m <n). And further storing control information as to which memory cells are controlled as n-value storage portions in some different memory cells.
複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルと、
前記複数のメモリセルを制御する制御回路と、を備え、
前記制御回路は、前記複数のメモリセルの一部を前記n値の記憶部分として制御し、異なる一部のメモリセルをm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、更に異なる一部のメモリセルにどのメモリセルをn値の記憶部分として制御するかという制御情報を記憶させ、前記制御情報を書き換えることでn値の記憶をさせるメモリセルを変更することを特徴とする記憶システム。
A plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewritable;
A control circuit for controlling the plurality of memory cells,
The control circuit controls a part of the plurality of memory cells as the storage part of the n value, and stores a part of the different memory cells in the m value (m is a natural number of 2 or more, m <n). Control information indicating which memory cell is to be controlled as an n-value storage part is stored in a part of different memory cells, and the memory cell in which the n value is stored is changed by rewriting the control information. A storage system characterized by that.
さらにDRAMを備え、電源投入後に前記制御情報をメモリセルから読み出し、前記DRAMに蓄えることを特徴とする請求項1乃至請求項4いずれか一項に記載の記憶システム。Further comprising a DRAM, read the control information after the power is turned on from the memory cell, the storage system according to any one of claims 1 to claim 4, characterized in that storing in the DRAM. 前記複数のメモリセルは所定個づつ複数のブロックに分割され、ブロック単位でn値の記憶部分かm値の記憶部分かが制御されることを特徴とする請求項1乃至請求項4いずれか一項に記載の記憶システム。  5. The memory cell according to claim 1, wherein each of the plurality of memory cells is divided into a plurality of predetermined blocks, and an n-value storage portion or an m-value storage portion is controlled in units of blocks. The storage system according to item. 前記制御情報は所定のブロックに記憶されることを特徴とする請求項6記載の記憶システム。  The storage system according to claim 6, wherein the control information is stored in a predetermined block. 前記制御情報はメモリセルの書き換え回数を含むことを特徴とする請求項1乃至請求項4いずれか一項に記載の記憶システム。  5. The storage system according to claim 1, wherein the control information includes the number of rewrites of a memory cell. 複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルで構成されるメモリセルアレイと、
前記複数のメモリセルを制御する制御回路と、を備え、
前記制御回路は、前記メモリセルアレイの一部を前記n値の記憶部分として制御し、前記メモリセルアレイの異なる一部をm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、前記メモリセルアレイの更に異なる一部にメモリセルアレイのどの部分をm値の記憶部分として制御するかという制御情報を記憶させることを特徴とする記憶システム。
A memory cell array composed of a plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewriting;
A control circuit for controlling the plurality of memory cells,
The control circuit controls a part of the memory cell array as a storage part of the n value, and a different part of the memory cell array as a storage part of an m value (m is a natural number of 2 or more, m <n). And a control system for storing control information indicating which part of the memory cell array is to be controlled as an m-value storage part in a different part of the memory cell array.
複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルで構成されるメモリセルアレイと、
前記複数のメモリセルを制御する制御回路と、を備え、
前記制御回路は、前記メモリセルアレイの一部を前記n値の記憶部分として制御し、前記メモリセルアレイの異なる一部をm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、前記メモリセルアレイの更に異なる一部にメモリセルアレイのどの部分をm値の記憶部分として制御するかという制御情報を記憶させ、前記制御情報を書き換えることでm値の記憶をさせるメモリセルアレイを変更することを特徴とする記憶システム。
A memory cell array composed of a plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewriting;
A control circuit for controlling the plurality of memory cells,
The control circuit controls a part of the memory cell array as a storage part of the n value, and a different part of the memory cell array as a storage part of an m value (m is a natural number of 2 or more, m <n). A memory cell array that stores control information on which part of the memory cell array is controlled as an m-value storage part in a different part of the memory cell array, and stores the m value by rewriting the control information. A storage system characterized by changing.
複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルで構成されるメモリセルアレイと、
前記複数のメモリセルを制御する制御回路と、を備え、
前記制御回路は、前記メモリセルアレイの一部を前記n値の記憶部分として制御し、前記メモリセルアレイの異なる一部をm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、前記メモリセルアレイの更に異なる一部にメモリセルアレイのどの部分をn値の記憶部分として制御するかという制御情報を記憶させることを特徴とする記憶システム。
A memory cell array composed of a plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewriting;
A control circuit for controlling the plurality of memory cells,
The control circuit controls a part of the memory cell array as a storage part of the n value, and a different part of the memory cell array as a storage part of an m value (m is a natural number of 2 or more, m <n). And a control system for storing control information indicating which part of the memory cell array is controlled as an n-value storage part in a different part of the memory cell array.
複数のn値(nは3以上の自然数)を記憶可能で電気的に書き換え可能な複数の不揮発性半導体メモリセルで構成されるメモリセルアレイと、
前記複数のメモリセルを制御する制御回路と、を備え、
前記制御回路は、前記メモリセルアレイの一部を前記n値の記憶部分として制御し、前記メモリセルアレイの異なる一部をm値(mは2以上の自然数であり、m<n)の記憶部分として制御し、前記メモリセルアレイの更に異なる一部にメモリセルアレイのどの部分をn値の記憶部分として制御するかという制御情報を記憶させ、前記制御情報を書き換えることでn値の記憶をさせるメモリセルアレイを変更することを特徴とする記憶システム。
A memory cell array composed of a plurality of nonvolatile semiconductor memory cells capable of storing a plurality of n values (n is a natural number of 3 or more) and electrically rewriting;
A control circuit for controlling the plurality of memory cells,
The control circuit controls a part of the memory cell array as a storage part of the n value, and a different part of the memory cell array as a storage part of m value (m is a natural number of 2 or more, m <n). A memory cell array that stores control information that controls which part of the memory cell array is controlled as a storage part of an n value in a different part of the memory cell array, and stores the n value by rewriting the control information A storage system characterized by changing.
さらにDRAMを備え、電源投入後に前記制御情報をメモリセルアレイから読み出し、前記DRAMに蓄えることを特徴とする請求項9乃至請求項12いずれか一項に記載の記憶システム。Further comprising a DRAM, read the control information after the power is turned on from the memory cell array, storage system as claimed in any one claims 9 to 12, characterized in that storing in the DRAM. 前記メモリセルアレイは所定個のメモリセルを含む複数のブロックに分割され、ブロック単位でn値の記憶部分かm値の記憶部分かが制御されることを特徴とする請求項9乃至請求項12いずれか一項に記載の記憶システム。  13. The memory cell array is divided into a plurality of blocks each including a predetermined number of memory cells, and an n-value storage portion or an m-value storage portion is controlled in units of blocks. A storage system according to claim 1. 前記制御情報は所定のブロックに記憶されることを特徴とする請求項14記載の記憶システム。  The storage system according to claim 14, wherein the control information is stored in a predetermined block. 前記制御情報はメモリセルの書き換え回数を含むことを特徴とする請求項9乃至請求項12いずれか一項に記載の記憶システム。  The storage system according to any one of claims 9 to 12, wherein the control information includes a number of rewrites of a memory cell.
JP2001136435A 2001-05-07 2001-05-07 Storage system Expired - Fee Related JP3828376B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001136435A JP3828376B2 (en) 2001-05-07 2001-05-07 Storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001136435A JP3828376B2 (en) 2001-05-07 2001-05-07 Storage system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP9862896A Division JP3200012B2 (en) 1996-04-19 1996-04-19 Storage system

Publications (2)

Publication Number Publication Date
JP2001357683A JP2001357683A (en) 2001-12-26
JP3828376B2 true JP3828376B2 (en) 2006-10-04

Family

ID=18983711

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001136435A Expired - Fee Related JP3828376B2 (en) 2001-05-07 2001-05-07 Storage system

Country Status (1)

Country Link
JP (1) JP3828376B2 (en)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6621739B2 (en) * 2002-01-18 2003-09-16 Sandisk Corporation Reducing the effects of noise in non-volatile memories through multiple reads
US7139864B2 (en) 2003-12-30 2006-11-21 Sandisk Corporation Non-volatile memory and method with block management system
US7450433B2 (en) * 2004-12-29 2008-11-11 Sandisk Corporation Word line compensation in non-volatile memory erase operations
US7752382B2 (en) * 2005-09-09 2010-07-06 Sandisk Il Ltd Flash memory storage system and method
KR101274950B1 (en) * 2006-05-12 2013-06-17 애플 인크. Memory device with adaptive capacity
US8000134B2 (en) 2006-05-15 2011-08-16 Apple Inc. Off-die charge pump that supplies multiple flash devices
US7911834B2 (en) 2006-05-15 2011-03-22 Apple Inc. Analog interface for a flash memory die
US7639542B2 (en) * 2006-05-15 2009-12-29 Apple Inc. Maintenance operations for multi-level data storage cells
US7568135B2 (en) 2006-05-15 2009-07-28 Apple Inc. Use of alternative value in cell detection
JP5096847B2 (en) * 2007-09-10 2012-12-12 株式会社リコー ACCESS CONTROL DEVICE, ACCESS CONTROL METHOD, ACCESS CONTROL PROGRAM, RECORDING MEDIUM, STORAGE DEVICE, AND IMAGE PROCESSING DEVICE
CN101911207B (en) * 2008-01-16 2014-05-07 富士通株式会社 Semiconductor storage device, control device, control method
KR101548175B1 (en) 2008-11-05 2015-08-28 삼성전자주식회사 Wear leveling method of Non-volatile memory device having single level memory cell block and multi level memory cell block
US9330787B2 (en) 2013-03-18 2016-05-03 Kabushiki Kaisha Toshiba Memory system and memory controller
US9817593B1 (en) 2016-07-11 2017-11-14 Sandisk Technologies Llc Block management in non-volatile memory system with non-blocking control sync system
JP2018142240A (en) 2017-02-28 2018-09-13 東芝メモリ株式会社 Memory system
KR102802194B1 (en) 2019-08-27 2025-04-30 삼성전자주식회사 Memory system, and operating method of the memory system

Also Published As

Publication number Publication date
JP2001357683A (en) 2001-12-26

Similar Documents

Publication Publication Date Title
JP3200012B2 (en) Storage system
US6307785B1 (en) Non-volatile semiconductor memory device
JP3805867B2 (en) Nonvolatile semiconductor memory device
USRE41950E1 (en) Multi-state EEPROM having write-verify control circuit
KR100244863B1 (en) Semiconductor memory and memory system
JP3629144B2 (en) Nonvolatile semiconductor memory device
CN110136764B (en) Non-volatile memory device and reading method thereof
JP3210259B2 (en) Semiconductor storage device and storage system
CN101432821B (en) Mimicking program verify drain resistance in a memory device
US6055188A (en) Nonvolatile semiconductor memory device having a data circuit for erasing and writing operations
US7639529B2 (en) Non-volatile memory devices that utilize mirror-image programming techniques to inhibit program coupling noise and methods of programming same
JP3828376B2 (en) Storage system
CN101807432A (en) Method for operating a flash memory device
JPH0793979A (en) Nonvolatile semiconductor memory device
JP2013118028A (en) Semiconductor memory device
JP3181454B2 (en) Nonvolatile semiconductor memory device
JP2002279788A (en) Non-volatile semiconductor memory
JP3590270B2 (en) Semiconductor storage device
JP4040215B2 (en) Control method for nonvolatile semiconductor memory
JP3721159B2 (en) Nonvolatile semiconductor memory device
JP3225024B2 (en) Nonvolatile semiconductor memory device
JP3905936B2 (en) Nonvolatile semiconductor memory device

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060606

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060706

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

Free format text: PAYMENT UNTIL: 20090714

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100714

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110714

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120714

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130714

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees