図1には本発明が適用されるフラッシュメモリにおける消去ブロックの分割構成が概略的に示される。メモリアレイ1は複数の消去ブロック2に分割されており、消去ブロック2はさらに複数の消去セクタ3に分割されている。消去は対象の消去ブロック2を消去コマンドなどで指定して行うが、消去ブロック2内での消去は消去セクタ3単位とされる。この方式は、消去ブロックの全体を一括して消去するのに対して、消去セクタ3毎に1回ずつ分割して消去を行うため、消去ブロック全体の一括消去と比較して、消去に必要な電流を分散することができる。消去電流の分散は消去電圧を発生する電源回路の面積減少につながる。
この消去手法は、消去の指示は消去ブロック2単位で行うが、消去ブロック2内では該ブロックを複数の消去セクタ3に分割し、暗黙的に消去セクタ3単位で消去を行う。一括消去するメモリセルを少なくする構成にすることで、消去時の最大消費電流を削減する。消去ブロック2と消去セクタ3がそれぞれ2つ以上あれば上記消去手法を採用することができる。
図2A乃至図2Dにはフラッシュメモリ(フラッシュEEPROM)を構成するスタックドゲート構造の不揮発性メモリセル(スタックドゲート型フラッシュメモリセル)が例示される。スタックドゲート型フラッシュメモリセルは、半導体基板14にソース12及びドレイン13が形成され、チャネル15上に相互に絶縁されて電荷蓄積層(電荷蓄積領域)11とコントロールゲート10が設けられて構成される。同図に示されるスタックドゲート型フラッシュメモリセルは、2種類の電源を用いて、ブロック単位で消去が行なわれるフラッシュメモリに適用される。図2Aには、コントロールゲート10に例えば10V、基板14に例えば−10Vを印加し、電荷蓄積層11に電子を注入する書き込み方式が例示される。図2Bには、コントロールゲート10に例えば−10V、基板14に例えば10V印加し、電荷蓄積層11内の電子を基板に引き抜く消去方式が例示される。図2Cには、コントロールゲート10に例えば−8V、ソース12に例えば8Vを印加し、電荷蓄積層11にソース端からホールを注入し、電荷蓄積層11内の電子を消滅させる消去方式が示される。図2Dには、コントロールゲート10に例えば−8V、ソース12に例えば8Vを印加し、電荷蓄積層11内の電子をソース端から引き抜く消去方式が示される。
図3A乃至図3Cにはフラッシュメモリ(フラッシュEEPROM)を構成するスプリットゲート構造の不揮発性メモリセル(スプリットゲート型フラッシュメモリセル)が例示される。スプリットゲート型フラッシュメモリセルは、半導体基板24に形成されたソース22、ドレイン23及びチャネル25を有し、前記ソース22寄りのチャネル25上にコントロールゲート26が配置され、前記ドレイン23寄りのチャネル25上に電気的に絶縁されて重ねられた電荷蓄積領域21及びメモリゲート27が配置されて構成される。前記電荷蓄積領域21には、絶縁膜に覆われた導電性浮遊ゲート電極例えばポリシリコン電極、又は絶縁膜に覆われた電荷トラップ性絶縁膜例えばシリコンナイトライド膜、或いは絶縁膜に覆われた導電性微粒子(ポリシリコン微粒子)層等を採用してよい。
斯く構成のスプリットゲート型フラッシュメモリセルは、コントロールゲートを備えた選択用のMOSトランジスタ部(選択トランジスタ部)Qsと、メモリゲート及び電荷蓄積領域を備えた記憶保持用のMONOS(メタル・オキサイド・ナイトライド・オキサイド・セミコンダクタ)トランジスタ部(メモリトランジスタ部)Qmとの直列接続構造を有する。前記コントロールゲートから見た絶縁耐圧は前記メモリゲートから見た絶縁耐圧よりも低くされている。要するに、選択トランジスタ部Qsのゲート絶縁膜の厚さtsはメモリトランジスタ部Qmのゲート絶縁膜の厚さtmよりも薄くされる(ts<tm)。
図3Aには、印加電圧は例えばメモリゲート27に−5V、基板24に例えば0V、ソース22に例えば5Vを印加して、ホールを電荷蓄積層21に注入する消去方式が例示される。ホールは蓄積電子と結合して消滅し、読み出し時のメモリセル電流は大きくなる。図3Bには、例えばメモリゲート27に10V、ソース22に5V、ドレイン23に0V、基板24に0Vを印加する書き込み方法が例示される。このときソースサイドインジェクションにより、電荷蓄積層21に電子が蓄積される。このように、メモリトランジスタ部Qmに比較的低い閾値電圧又は比較的高い閾値電圧を設定する動作は、コントロールゲートやドレインに高電圧を印加することなく実現することが可能である。このことは、選択用トランジスタ部Qsのゲート耐圧が比較的低くてよいことを保証する。
選択用トランジスタ部Qsの低いゲート耐圧をデバイス構造的に保証するには、例えば、ウェル領域に形成される前記ドレインとソースとの間に不純物の拡散領域若しくは高濃度不純物領域を形成しないようにすればよい。記憶保持用のMONOSトランジスタ部と選択用のMOSトランジスタ部の直列接続ノードが双方に共通の拡散領域(ソース・ドレイン領域)とされる場合には、書き込み時にMONOSトランジスタ部に高電圧が印加されてチャネルが形成されると、MONOSトランジスタ部側に印加された高電圧がそのチャネルから前記双方トランジスタ部に共通の拡散領域を介して選択MOSトランジスタ部に印加される。この場合には選択MOSトランジスタ部も高耐圧でなければならない。
このメモリセルのデータを読み出す場合、図3Cに示すように例えばメモリゲート27に1.5V、コントロールロールゲート26に1.5V、ソース22に0V、ドレイン23に1V、基板24に0Vを印加し、メモリセル電流の大小をセンスアンプで判定する。要するに、データ読み出し動作では不揮発性メモリセルのコントロールゲートを備えた選択用トランジスタ部Qsをオン状態にしたとき、不揮発性メモリセルのメモリゲート27を備えたメモリトランジスタ部Qmの閾値電圧状態に従って電流が流れるか否かに応じてビット線に記憶情報が読み出される。コントロールゲート26から見た耐圧はメモリゲート27から見た耐圧よりも低い(ゲート酸化膜が薄い)から、メモリトランジスタ部Qmと選択用トランジスタ部Qsの双方を高耐圧で形成する場合に比べて、不揮発性メモリセルの読み出し動作時における読み出し信号電流量、即ちGm(相互コンダクタンス)を相対的に大きくする事ができ、読み出し速度の高速化に寄与する。
図4にはメモリセルのコントロールゲート、メモリゲート、及びソースの各ドライバの概要が示される。メモリゲート27にはメモリゲート線MG、ソース22にはソース線SL、ドレイン23にはビット線BL、コントロールゲート26にはコントロールゲート線CG、基板24には基板電位Vsubが接続される。本メモリセルでは同一の電源端子を用いて、印加電圧を変えることにより前記の書込み、消去、読み出しの各動作を行う。メモリゲート27とソース22には書込みあるいは消去時に5V以上の高電圧が印加されるため、メモリゲート線MGとソース線SLは高耐圧MOSドライバ30,31に接続される。コントロールゲート26は読み出し、書込み時に1.5V、消去時に0Vを印加するため、コントロールゲート線CGには前記の高耐圧MOSドライバよりもゲート絶縁耐圧が低いMOSドライバ32が接続される。メモリゲート、ソース用の高耐圧MOSドライバ30,31は、コントロールゲート用のMOSドライバ32よりもゲート絶縁膜厚が厚いトランジスタで構成されるため、電流供給能力が小さく、MOSトランジスタのサイズはより大きくなる。
図5にはビット線階層構造におけるスプリットゲート型フラッシュメモリセルが示される。ビット線BLは階層スイッチMOSトランジスタ(ZMOS)Qzを介してグローバルビット線GBLに接続される。ビット線階層構造は例えば消去ブロック単位とされる。
図5では前記コントロールゲート制御線CGを駆動するドライバ(ワードドライバ)32、メモリゲート制御線MGを駆動するドライバ(メモリゲートドライバ)30、前記階層スイッチMOSトランジスタQzをスイッチ駆動するドライバ(Zドライバ)33、前記ソース線SLを駆動するドライバ(ソースドライバ)31が代表的に図示されている。前記ドライバ30,31はゲート絶縁耐圧が高耐圧のMOSトランジスタを用いた高耐圧MOSドライバによって構成される。ドライバ32,33はゲート絶縁耐圧が比較的低いMOSトランジスタを用いたドライバによって構成される。
フラッシュメモリセルのメモリトランジスタ部Qmに比較的高い閾値電圧を設定する書き込み動作では、前述の如くコントロールゲート26側の電荷蓄積領域21近傍で発生したホットエレクトロンを電荷蓄積領域21に保持させればよい。書き込み動作においては、nチャンネル型のフラッシュメモリメモリセルにとって、ソース12とドレイン13の機能は逆になり、この書き込み形式はホットエレクトロンのソースサイドインジェクションとなる。
前述のようにメモリトランジスタ部Qmに対する上記書き込み・消去では、コントロールゲート制御線CG及びビット線BLに高電圧を印加することを要しない。このことは、選択トランジスタ部Qsのゲート耐圧が比較的低くてよいことを保証する。従って、階層MOSトランジスタQzも高耐圧であることを要しない。尚、以下の説明ではビット線階層構造を採用していないメモリアレイ1について説明する。
図6にはスプリットゲート型フラッシュメモリセルを用いたメモリアレイ1における消去セクタの構成が例示される。メモリセルの消去はメモリゲート線MGとソース線SLの2種類に消去電圧を同時に印加することによって行う。メモリアレイ1は2つの消去ブロック2に分割されており、各消去ブロックには4つの消去セクタ3がある。1消去ブロック内の各消去セクタ3に対して、ソース線SL0〜SL3は隣接する2個の消去セクタ同士で共通接続され、メモリゲート線MG0〜MG3は奇数番目毎と偶数番目毎に分けて2個の消去セクタ同士で共通接続される。消去動作において消去電圧駆動ドライバとされる高耐圧MOSドライバ30,31は夫々対応する2個のセクタを共通駆動する。駆動するメモリゲート線MGとソース線SLの組合せによって、1つの消去セクタを選択し消去する構成とされる。例えば消去ブロック0内の消去セクタ0を消去する場合、メモリゲート線MG0とソース線SL0に同時に電圧を印加する。同様に消去セクタ1を消去する場合はメモリゲート線MG1とソース線SL0に、消去セクタ2の場合はメモリゲート線MG0とソース線SL1に、消去セクタ3の場合はメモリゲート線MG1とソース線SL1にそれぞれ同時に電圧を印加する。消去ブロック1内の消去セクタ0を消去する場合も消去ブロック0と同様に、対象消去セクタのメモリゲート線MGとソース線SLに同時に電圧を印加する。
駆動するメモリゲート線MGとソース線SLの組合せによって、1つの消去セクタを選択し消去する構成であれば、消去セクタは消去ブロック内において行、列いずれにも分割可能であり、メモリゲート線MGとソース線SLを階層構造にすることもできる。メモリゲート線MGとソース線SLの構成は図5のように、消去ブロック内でメモリゲート線MGとソース線SLの両方を分割する例のほかに、メモリゲート線MGを分割しソース線SLを共通、あるいはメモリゲート線MGを共通にしてソース線SLを分割する方法などが挙げられる。消去電流が大きい場合には、消去セクタをさらに小さくし、同時消去するメモリセルを少なくする構成も可能であり、例えば図5のソース線SLを列方向に分割することで実現できる。また図28のようにソース線SLを行方向に分割しても良い。この場合1つの消去セクタをバイト単位又はワード単位にすることで、バイト単位又はワード単位での書込/消去が可能となる。
不揮発性メモリセルは上記スプリットゲート型はスタックゲート型に限定されず、消去に2種類の消去電圧を並列に印加することを要する不揮発性メモリセルであれば、上記同様に消去ブロック内に消去セクタを構成することが可能である。
図6のように消去セクタに接続するドライバを共通化することにより、各々の消去セクタでメモリゲート線やソース線のドライバを構成するよりも、消去電源印加の選択用デコーダやドライバの数を減らすことが可能である。
図7には分割した消去ブロックを複数の消去セクタで構成したメモリアレイの詳細を例示する。消去ブロック0の構成は図6に対応した構成とされ、ソース線SL0,SL1は隣接する2個の消去セクタ同士で共通接続され、メモリゲート線MG0,MG1は奇数番目毎と偶数番目毎に分けて2個の消去セクタ同士で共通接続される。ソース線SLとメモリゲート線MGを指定して消去電圧を印加すると、双方の消去電圧が並行に印加される消去セクタが消去される。消去部ブロックmは1個の消去セクタによって構成される。
スプリットゲート型不揮発性メモリセルMM(MM00〜MMxy)は格子状に配置され、スプリットゲート型不揮発性メモリセル(単にメモリセルとも記す)のコントロールゲート、メモリゲート、ソースは行方向のメモリセル毎に共通接続される。コントロールゲート線はCG0、CG1、CG2、CG3、CGy、メモリゲート線はMG0、MG1、MGn、ソース線はSL0、SL1、SLoとして図示される。メモリセルのドレインはビット線BL0、BLxに接続されており、列方向に共通接続される。
図7の構成において、メモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3は消去ブロック0を構成しており、各メモリセルのコントロールゲートにはコントロールゲート線CG0、CG1、CG2、CG3、メモリゲートにはメモリゲート線MG0、MG1、ソースにはソース線SL0、SL1が接続されている。同様にメモリセルMM0y、MMxyは消去ブロックmを構成しており、各メモリセルのコントロールゲートにはコントロールゲート線CGyが、メモリゲートにはメモリゲート線MGnが、ソースにはソース線SLoが接続されている。メモリセルMM00〜MMx0は消去セクタ0を構成しており、各メモリセルの選択ゲートにはコントロールゲート線CG0が、メモリゲートにはメモリゲート線MG0が、ソースにはソース線SL0が共通接続されている。同様に、メモリセルMM01〜MMx1は消去セクタ1を構成しており、各メモリセルのコントロールゲートにコントロールゲート線CG1が、メモリゲートにメモリゲート線MG1が、ソースにソース線SL0が共通接続されている。メモリセルMM02〜MMx2は消去セクタ2を構成し、メモリセルMM03〜MMx3は消去セクタ3を構成する。メモリセルMM0y〜MMxyも消去セクタを構成し、各メモリセルのコントロールゲートにコントロールゲート線CGyが、メモリゲートにメモリゲート線MGnが、ソースにソース線SLoがそれぞれ共通接続されている。
消去セクタ0のメモリセルMM00〜MMx0を消去する場合、メモリゲート線MG0に例えば−5V、ソース線SL0に例えば5V、コントロールゲート線CG0に例えば0Vを印加し、ビット線BL0、BLxを例えばopenにする。メモリゲート線MG0に−5Vが印加された状態では、メモリゲート線MG0が共通に接続されている消去セクタ2のメモリセルMM02〜MMx2のメモリゲートにも−5Vが印加されるが、ソース線SL1を通してメモリセルのソースに0Vが印加されているため消去されない。また、消去セクタ1のメモリセルMM01〜MMx1のソースに5Vが印加されるが、メモリゲート線MG1を通してメモリゲートに0Vが印加されるため消去されない。消去セクタ3、消去セクタyでは、コントロールゲート線CG、メモリゲート線MG、ソース線SLがいずれも0Vであるため消去されない。
尚、図7の構成はビット線に階層MOSトランジスタを接続して、ビット線階層構造にすることも可能である。また、隣接する消去セクタにソース線SLを接続し、メモリゲート線MGをソース線SLに対して1本ずつ接続したが、隣接する消去セクタにメモリゲート線MGを接続し、メモリゲート線MGに対して1本ずつソース線SLを接続することもできる。
図8には図7の消去ブロック0における消去のタイミングチャートが示されている。まず、選択ゲート線CG0、CG1、CG2、CG3、CGyを0V、ビット線BL0〜BLxをopenとする。次に消去セクタ0を消去するためにメモリゲート線MG0に−5V、ソース線SL0に5Vを同じタイミングで印加し、メモリセルMM00〜MMx0の消去に最適な時間だけ保持する。消去セクタ0のメモリセルMM00〜MMx0の消去が終了すると、消去セクタ1内のメモリセルMM01〜MMx1を消去するために、メモリゲート線MG1に−5V、ソース線SL0に5Vを同じタイミングで印加する。次に消去セクタ2のメモリセルMM02〜MMx2を消去するために、メモリゲート線MG0に−5V、ソース線SL1に5Vを印加する。消去セクタ3のメモリセルMM03〜MMx3を消去するために、メモリゲート線MG1に−5V、ソース線SL1に5Vを印加する。以上のように、消去ブロック0内すべての消去セクタのメモリセルを消去する。
メモリゲート線MGとソース線SLに電圧を印加するタイミングは様々ある。先にメモリゲート線MGに−5Vを印加してから、ソース線SLに電圧を印加する。あるいは逆にソース線SLに先に5Vを印加してからメモリゲート線MGに電圧を印加することも可能である。さらに、先にソース線SLに電圧を印加し、任意の電圧に達した段階でメモリゲートMGに電圧を印加することや、先にメモリゲート線MGに電圧を印加し、任意の電圧に達した段階でソース線SLに印加することなどがある。
図9Aには図7の回路構成例におけるメモリゲート線MGとソース線SLのドライバ30,31とメモリセルのレイアウト例が示される。図9Bには1個のメモリセルのレイアウト例が抜き出されている。1つのドライバで2本のソース線SLあるいはメモリゲート線MGを駆動する。消去はソース線SLとメモリゲート線MGに同時に電圧を印加することにより行われ、ソース線SLとメモリゲート線MGの組合せを変えることにより、消去セクタを選択する。メモリセルMMは図3Aに示したものであり、メモリゲートとコントロールゲートの2種類のゲートがあり、メモリゲート側の拡散層がソースで、コントロールゲート側の拡散層がドレインである。メモリセルは行方向にx個、列方向に4個、格子状に配置されており、行方向にソース、メモリゲートが共通に接続されている。メモリゲートにはメモリゲート線MGが、ソースにはソース線SLが接続されている。図示は省略したが、コントロールゲートおよびドレインもそれぞれ配線に接続されている。メモリセルは1行で1つの消去セクタを構成しており、4つの消去セクタで1つのブロックを構成している。ソース線SLに接続されているドライバがソースドライバ(SLドライバ)31であり、メモリゲート線MGに接続されているドライバがメモリゲートドライバ(MGドライバ)30である。
ソース線SLおよびメモリゲート線MGを駆動するドライバ31,30はnチャンネル型MOSトランジスタ(nMOS)とpチャンネル型MOSトランジスタ(pMOS)が一組で構成されており、図示はされていないが、それぞれのMOSトランジスタのソースには電源が接続されている。ドライバ30,31のチャネル幅は複数のメモリセルに同時に電流を流すため、メモリセルMMよりも大きく、そのサイズはソース線SLに並列接続されたメモリセル数により決まる。図9Aではソースドライバ31のほうがメモリゲートドライバ30よりも大きい。これは書込み時、消去時ともに電流はメモリセルのソースから注入されるため、ソース線SLの電流供給能力を高くする必要があるのに対し、メモリゲートは大きな電流を必要としないためである。
図9Aのレイアウト例では、ソース線SL1本に1列のメモリセルのソースを接続したが、列方向に並んだ2つのメモリセルのソースを共有し、ソース線SL1本に2列のメモリセルのソースを接続したレイアウトも可能である。
ドライバ30,31を複数個の消去セクタで共有させることにより、レイアウト面積を削減することができる。図9Aのようにドライバ30,31の共有化を行わずに、ドライバ30,31を個々の消去セクタで固有化すると、ドライバ30,31のレイアウト面積が大きくなる。
図10にはメモリアレイを消去ブロックに分割し、消去ブロックを消去セクタで構成し、さらにメモリセル端子に接続するドライバを階層化した一例を示す。消去ブロック0は16個の消去セクタ3で構成されている。ドライバの階層化を行わない場合には、メモリゲート線MGが8本、ソース線SLが8本、計16本の信号を制御するが、階層化を行うことにより消去セクタ数よりも少ない12本の信号で制御することができる。消去セクタあるいは消去ブロックがさらに増加したときに、この効果はより大きくなる。
メモリゲート線MG0は選択信号がmga0、選択信号がmgb0のドライバ30に接続されており、mga0とmgb0が同時に選択されたときだけドライバ30からメモリゲート線MG0に消去電圧が印加される。同様にメモリゲート線MG1はmga0とmgb1、メモリゲート線MG2はmga1とmgb0、メモリゲート線MG3はmga1とmgb1、メモリゲート線MG4はmga2とmgb0、メモリゲート線MG5はmga2とmgb1、メモリゲート線MG6はmga3とmgb0、メモリゲート線MG7はmga3とmgb1、メモリゲート線MGnはmgapとmgb1が同時に選択されたときに電圧が印加される。また、ソース線SL0はsla0とslb0、ソース線SL1はsla0とslb1、ソース線SL2はsla1とslb0、ソース線SL3はsla1とslb1、ソース線SL4はsla2とslb0、ソース線SL5はsla2とslb1、ソース線SL6はsla3とslb0、ソース線SL7はsla3とslb1、ソース線SLoはslaqとslb1が同時に選択されたときに電圧が印加される。
消去セクタ0のメモリセルMM00〜MMx0を消去する場合、mga0とmgb0を選択しメモリゲート線MG0に例えば−5V、sla0とslb0を選択しソース線SL0に例えば5V、選択ゲート線CG0に例えば0Vを印加し、ビット線BL0〜BLxを例えばopenにする。消去する消去セクタを変更するには、mgaとmgb、slaとslbの組み合わせを変えることによって行う。図10では、消去ブロック0のメモリゲート線MGとソース線SLを選択する信号はmga0、mga1、mga2、mga3、mgb0、mgb1およびsla0、sla1、sla2、sla3、slb0、slb1であるが、これ以外の構成も可能であり、メモリゲート線MGとソース線SLがそれぞれ独立に1本選択できればよい。例えばメモリゲート線MGは図10と同様の構成で、ソース線SLをsla0、sla1、sla2、sla3、sla4、sla5、sla6、sla7、slb0で構成し、ソース線SL0をsla0とslb0、ソース線SL1をsla1とslb0、ソース線SL2をsla2とslb0、ソース線SL3をsla3とslb0、ソース線SL4をsla4とslb0、ソース線SL5をsla5とslb0、ソース線SL6をsla6とslb0、ソース線SL7をsla7とslb0で選択するという構成がある。
図11にメモリアレイを消去ブロックに分割し、消去ブロックを消去セクタで構成し、さらにメモリセル端子に接続するドライバを階層化した別の例を示す。図9と同様のメモリアレイ構成で消去ブロック0は16個の消去セクタ3で構成されており、ソース線SLの選択駆動をnMOS31aで行う点が図10と相違される。ソース線SLに印加される消去電圧は直接信号線sla、slbに伝達さえることになる。
メモリゲート線MGは図10と同じ構成であり、ソース線SLはゲートがslaに、slbがドレインのnMOSに接続されており、ソース線SLを選択する方法は、図10と同様である。
消去セクタ0のメモリセルMM00〜MMx0を消去する場合、mga0とmgb0を選択しメモリゲート線MG0に例えば−5V、sla0とslb0を選択しソース線SL0に例えば5V、選択ゲート線CG0に例えば0Vを印加し、ビット線BL0〜BLxを例えばopenにする。消去する消去セクタを変更するには、mgaとmgb、slaとslbの組み合わせを変えることによって行う。図11では、消去ブロック0のメモリゲート線MGとソース線SLを選択する信号はmga0、mga1、mga2、mga3、mgb0、mgb1およびsla0、sla1、sla2、sla3、slb0、slb1であるが、これ以外の構成も可能であり、メモリゲート線MGとソース線SLがそれぞれ独立に1本選択できればよい。例えばメモリゲート線MGは同一の構成で、ソース線SLをsla0、sla1、sla2、sla3、sla4、sla5、sla6、sla7、slb0で構成し、ソース線SL0をsla0とslb0、ソース線SL1をsla1とslb0、ソース線SL2をsla2とslb0、ソース線SL3をsla3とslb0、ソース線SL4をsla4とslb0、ソース線SL5をsla5とslb0、ソース線SL6をsla6とslb0、ソース線SL7をsla7とslb0で選択するという構成がある。
図11において、ソース線SL0が選択されている状態ではsla0、slb0が選択、sla1、sla2、sla3、slb1は非選択となるが、このときソース線SL2、SL3、SL4、SL5、SL6、SL7はopen状態となる。しかし、非選択であるsla1、sla2、sla3、slb1に選択よりも低い電圧を印加することによって、open状態を排除することも可能である。一例を挙げると、SL0が選択されているとき、sla0が例えば7V、slb0が例えば5V、sla1、sla2、sla3、slb1が例えば0Vとすると、SL2、SL3、SL4、SL5、SL6、SL7はopen状態となるが、非選択であるsla1、sla2、sla3、slb1に例えば3Vを印加すればソース線SL2、SL3、SL4、SL5、SL6、SL7のopen状態を排除することができる。
図12には消去ブロックを消去セクタに分割した消去回路構成の別例を示す。メモリセルMMは格子状に配置され、メモリセルのコントロールゲート26、メモリゲート27、ソース22は行方向に共通接続される。コントロールゲート線はCG0、CG1、CG2、CG3、CGy、メモリゲート線はMG0、MGm、ソース線はSL0、SL1、SL2、SL3、SLyとして図示される。メモリセルMMのドレイン23はビット線BL0〜BLxに接続されており、列方向に共通接続される。
メモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3は消去ブロック0を構成しており、各メモリセルのコントロールゲートにはコントロールゲート線CG0、CG1、CG2、CG3、メモリゲートにはメモリゲート線MG0、ソースにはソース線SL0、SL1、SL2、SL3が接続されている。同様にメモリセルMM0y〜MMxyは消去ブロックmを構成しており、各メモリセルのコントロールゲートにはコントロールゲート線CGyが、メモリゲートにはメモリゲート線MGmが、ソースにはソース線SLyが接続されている。メモリセルMM00〜MMx0は消去セクタ0を構成しており、各メモリセルのコントロールゲートにコントロールゲート線CG0が、メモリゲートにメモリゲート線MG0が、ソースにソース線SL0が共通接続されている。同様に、消去セクタ1を構成するメモリセルMM01〜MMx1は、コントロールゲートにコントロールゲート線CG1、メモリゲートにメモリゲート線MG0、ソースにソース線SL1が共通接続されている。消去セクタ2を構成するメモリセルMM02〜MMx2は、コントロールゲートにコントロールゲート線CG2が、メモリゲートにメモリゲート線MG0が、ソースにソース線SL2がそれぞれ共通接続されている。消去セクタ3を構成するメモリセルMM03〜MMx3は、コントロールゲートにコントロールゲート線CG3が、メモリゲートにメモリゲート線MG0が、ソースにソース線SL3がそれぞれ共通接続されている。メモリセルMM0y〜MMxyは消去セクタyを構成しており、コントロールゲートにコントロールゲート線CGy、メモリゲートにメモリゲート線MGm、ソースにソース線SLyが共通接続されている。
消去セクタ0のメモリセルMM00〜MMx0を消去する場合、メモリゲート線MG0に例えば−5V、ソース線SL0に例えば5V、コントロールゲート線CG0に例えば0Vを印加し、ビット線BL0、BLxを例えばopenにする。メモリゲート線MG0に−5Vが印加された状態では、メモリゲートが共通に接続されている消去セクタ1のメモリセルMM01〜MMx1、消去セクタ2のメモリセルMM02〜MMx2、消去セクタ3のメモリセルMM03〜MMx3それぞれのメモリゲートにも−5Vが印加されるが、ソース線SL1、SL2、SL3を通してメモリセルのソースに0Vが印加されているため消去されない。また、消去対象ではない消去セクタyでは、メモリゲート線MGm、ソース線SLyがいずれも0Vであるため消去されない。図12の構成はビット線に階層MOSトランジスタを接続して、階層構造にすることも可能である。
図13には図12の消去ブロック0における消去のタイミングチャートが示されている。まず、コントロールゲート線CG0、CG1、CG2、CG3を0V、ビット線BL0、BLxをopenとする。次に消去セクタ0を消去するためにメモリゲート線MG0に−5V、ソース線SL0に5Vを同じタイミングで印加し、メモリセルMM00〜MMx0の消去に最適な時間だけ保持する。消去セクタ0のメモリセルMM00〜MMx0の消去が終了すると、消去セクタ1のメモリセルMM01〜MMx1を消去するためにメモリゲート線MG0に−5V、ソース線SL1に5Vを印加する。次に消去セクタ2のメモリセルMM02〜MMx2を消去するためにメモリゲート線MG0に−5V、ソース線SL2に5Vを同じタイミングで印加する。次に消去セクタ3のメモリセルMM03〜MMx3を消去するためにメモリゲート線MG0に−5V、ソース線SL3に5Vを同じタイミングで印加する。消去ブロック0内すべての消去セクタのメモリセルを消去することにより、消去ブロック0の消去が完了する。
メモリゲート線MGとソース線SLに電圧を印加するタイミングは様々ある。先にメモリゲート線MGに−5Vを印加してから、ソース線SLに電圧を印加する。あるいは先にソース線SLに5Vを印加してからメモリゲート線MGに電圧を印加することも可能である。さらに、先にソース線SLに電圧を印加し、任意の電圧に達した段階でメモリゲートMGに電圧を印加することや、先にメモリゲート線MGに電圧を印加し、任意の電圧に達した段階でソース線SLに印加することなどがある。
図14に消去ブロックを消去セクタに分割した更に別の消去回路構成例を示す。メモリセルMMは格子状に配置され、メモリセルのコントロールゲート、メモリゲート、ソースは行方向に共通接続される。コントロールゲート線はCG0、CG1、CG2、CG3、CGy、メモリゲート線はMG0、MG1、MG2、MG3、MGyソース線はSL0、SLnとして図示される。メモリセルのドレインはビット線BL0、BLxに接続されており、列方向に共通接続される。
メモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3は消去ブロック0を構成しており、メモリセルMM0y、MMxyも消去ブロックmを構成している。メモリセルMM00、MMx0は消去セクタ0を構成しており、各メモリセルのコントロールゲートにコントロールゲート線CG0が、メモリゲートにメモリゲート線MG0が、ソースにはソース線SL0がそれぞれ共通接続されている。同様に、消去セクタ1を構成するメモリセルMM01、MMx1は、コントロールゲートにコントロールゲート線CG1が、メモリゲートにメモリゲート線MG1が、ソースにソース線SL0が共通接続されている。消去セクタ2を構成するメモリセルMM02、MMx2は、コントロールゲートにコントロールゲート線CG2が、メモリゲートにメモリゲート線MG2が、ソースにソース線SL0が共通接続されている。消去セクタ3を構成するメモリセルMM03、MMx3は、コントロールゲートにコントロールゲート線CG3が、メモリゲートにメモリゲート線MG3が、ソースにソース線SL0が共通接続されている。メモリセルMM0y、MMxyも消去セクタmを構成しており、メモリゲートにメモリゲート線MGy、ソースにソース線SLmが共通接続されている。
消去セクタ0のメモリセルMM00、MMx0を消去する場合、ソース線SL0に例えば5V、メモリゲート線MG0に例えば−5V、コントロールゲート線CG0に例えば0Vを印加し、ビット線BL0、BLxを例えばopenにする。ソース線SL0に5Vが印加された状態では、ソースが共通に接続されている消去セクタ1のメモリセルMM01、MMx1、消去セクタ2のメモリセルMM02、MMx2、消去セクタ3のメモリセルMM03、MMx3それぞれのソースにも5Vが印加されるが、メモリゲート線MG1、MG2、MG3を通してメモリセルのメモリゲートに0Vが印加されているため消去されない。また、消去対象ではない消去セクタyでは、ソース線SLm、メモリゲート線MGyがいずれも0Vであるため消去されない。図14の構成はビット線BLに階層MOSトランジスタを接続して、階層構造にすることも可能である。
図15Aには図14の消去ブロック0における消去のタイミングチャートが示されている。まず、コントロールゲート線CG00、CG01、CG02、CG03、CGyを0V、ビット線BL0、BLxをopenとする。次に消去セクタ0を消去するために、ソース線SL0に5V、メモリゲート線MG0に−5Vを同じタイミングで印加し、メモリセルMM00、MMx0の消去に最適な時間だけ保持する。消去セクタ0のメモリセルMM00、MMx0の消去が終了すると、消去セクタ1のメモリセルMM01、MMx1を消去するためにソース線SL0に5V、メモリゲート線MG1に−5Vを印加する。次に消去セクタ2のメモリセル MM02、MMx2を消去するためにソース線SL0に5V、メモリゲート線MG2に−5Vを印加する。次に消去セクタ3のメモリセルMM03、MMx3を消去するためにソース線SL0に5V、メモリゲート線MG3に−5Vを印加する。以上のように、消去ブロック0内すべての消去セクタのメモリセルを消去する。
ソース線SLとメモリゲート線MGに電圧を印加するタイミングは様々ある。例えば先にソース線SLに電圧を印加してから、メモリゲート線MGに印加する。あるいは逆にメモリゲート線MGに先に−5Vを印加してから、ソース線SLを印加する。さらに、先にソース線SLを印加し、任意の電圧に達した段階でメモリゲートMGに電圧を印加することや、先にメモリゲート線MGに電圧を印加し、任意の電圧に達した段階でソース線SLに印加することなどがある。図15Bは図14の消去回路構成における消去動作の別の例で、消去対象ブロック内の非選択セクタに対して、メモリゲート線に例えば1.5Vの電圧を印加する方式である。消去動作時に消去非対象セクタに印加される不所望な電界の大きさを小さくすることができる。
図16に消去ブロックを消去セクタに分割した更に別の消去回路構成例を示す。ここで用いる不揮発性メモリセルはスタックゲート構造とされる。メモリセルの消去の方式は図2Bに示すものを用いた。メモリセルMMは格子状に配置され、メモリセルのコントロールゲート10は行方向に、ドレイン13、ソース12は列方向に接続される。ウェル14は消去ブロック単位に接続される。コントロールゲート線はCG0、CG1、CG2、CG3、CGy、ソース線はSL0、SLx、SLm、SLn、ビット線はBL0、BLx、BLm、BLn、ウェル線はWELL0、WELLzとして図示される。この構造ではセクタ単位にウェル14が分離されている。
メモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3は消去ブロック0を構成しており、メモリセルMM0y、MMxyは消去ブロックzを構成している。メモリセルMM00、MMx0は消去セクタ0を構成しており、各メモリセルのコントロールゲートにはコントロールゲート線CG0が、ウェルにはウェル線WELL0が接続されている。同様に、メモリセルMM01、MMx1は消去セクタ1を構成し、コントロールゲート線CG1とウェル線WELL0が、メモリセルMM02、MMx2は消去セクタ2を構成し、コントロールゲート線CG2とウェル線WELL0が、メモリセルMM03、MMx3は消去セクタ3を構成し、コントロールゲート線CG3とウェル線WELL0が共通接続されている。消去セクタyを構成するメモリセルMM0y、MMxyは、コントロールゲートにコントロールゲート線CGy、ウェルにウェル線WELLzが共通接続されている。ウェル線WELL0,WELL1は固有のウェルドライバ31bで駆動される。コントロールゲート線はCG0〜CGyは夫々固有のドライバ31bで駆動される。双方のドライバ31b、30bは共に高耐圧ドライバとされる。
消去セクタ0のメモリセルMM00、MMx0を消去する場合、ソース線SL、ビット線BLをopenとし、コントロールゲート線CG0に例えば−10V、ウェル線WELL0に例えば10Vを印加する。ウェル線WELL0に10Vが印加された状態では、ウェルが共通に接続されている消去ブロック0内のメモリセルMM01、MMx1、MM02、MMx2、MM03、MMx3のウェルにも10Vが印加されるが、コントロールゲート線CG1、CG2、CG3を通してメモリセルのコントロールゲートに0Vが印加されているため消去されない。また、消去対象ではない消去セクタyでは、コントロールゲート線CGy、ウェル線WELLzがいずれも0Vであるため消去されない。
図17には図16の消去ブロック0における消去のタイミングチャートが示されている。まず、ソース線SL0、SLx、SLm、SLn、ビット線BL0、BLx、BLm、BLnをopenにする。次に消去セクタ0を消去するためにコントロールゲート線CG0に−10V、ウェル線WELL0に10Vを同じタイミングで印加し、メモリセルMM00、MMx0の消去に最適な時間だけ保持する。消去セクタ0のメモリセルの消去が終了すると、消去セクタ1のメモリセルを消去するために、コントロールゲート線CG1に−10V、ウェル線WELL0に10Vを印加する。同様に消去セクタ2、消去セクタ3に電圧の印加を行い、消去ブロック0内すべての消去セクタのメモリセルを消去することにより、消去ブロック0の消去が完了する。
図18には図7のメモリアレイにおいて消去ブロックで消去領域の指定を行い、消去を消去セクタ単位で時分割制御する回路構成が例示される。メモリセルMMは格子状に配置され、メモリセルのコントロールゲート、メモリゲート、ソースは行方向に共通接続される。コントロールゲート線はCG0、CG1、CG2、CG3、CGy、メモリゲート線はMG0、MG1、MGn、ソース線はSL0、SL1、SLoである。メモリセルのドレインはビット線BL0、BLxに接続されており、列方向に共通接続されている。消去ブロックに対する消去セクタ単位の時分割消去は制御回路40が制御する。mgsel(mgsel0,mgsel1,mgseln)はメモリゲート線選択信号、slsel(slsel0,slsel1)はソース線選択信号、progは書込み信号、eraseは消去信号、eraseblock(eraseblock0、eraseblockz)は消去ブロック選択信号、count(count0,count1)は消去を消去セクタ単位に時分割制御する信号である。これらの信号のうちslsel、progは書込み時に用いる信号である。
制御回路40には消去コマンドによって消去対象消去ブロックが指示される。制御ロジック回路41はそれをデコードして消去ブロック選択信号eraseblock0又はeraseblock1をHレベルとする。このHレベル期間の前半にメモリゲート線選択信号mgsel0をHレベル、後半にmgsel1をHレベルとし、各メモリゲート線選択のHレベル期間毎にカウンタ42のカウント動作を1サイクル行なって時分割制御信号count0,count1を変化させる。
メモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3は消去ブロック0を構成しており、メモリセルMM0y、MMxyは消去ブロックmを構成している。メモリセルMM00、MMx0は消去セクタ0を構成しており、各メモリセルのコントロールゲートにコントロールゲート線CG0が、メモリゲートにメモリゲート線MG0が、ソースにはソース線SL0が共通接続されている。同様に、消去セクタ1を構成するメモリセルMM01、MMx1は、コントロールゲートにコントロールゲート線CG1が、メモリゲートにメモリゲート線MG1が、ソースにソース線SL0が共通接続されている。消去セクタ2を構成するメモリセルMM02、MMx2は、コントロールゲートにコントロールゲート線CG2が、メモリゲートにメモリゲート線MG0が、ソースにソース線SL1が共通接続されている。消去セクタ3を構成するメモリセルMM03、MMx3は、コントロールゲートにコントロールゲート線CG3が、メモリゲートにメモリゲート線MG1が、ソースにソース線SL1が共通接続されている。メモリセルMM0y、MMxyも消去セクタyを構成しており、コントロールゲートにコントロールゲート線CGyが、メモリゲートにメモリゲート線MGnが、ソースにソース線SLoが共通接続されている。
消去ブロック0のメモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3を消去する場合、まず信号erase、eraseblock0をHレベル(ハイレベル、論理値“1”)、信号slsel、progはLレベル(ローレベル、論理値“0”)とし、コントロールゲート線CG0に例えば0Vを印加し、ビット線BL0、BLxを例えばopenとする。次に信号mgsel0をHレベルとし、メモリゲート線MG0に例えば−5Vを印加する。信号count0をHレベルとすると、ソース線SL0に例えば5Vが印加される。メモリゲート線MG0に−5Vが印加された状態では、メモリゲートが共通に接続されている消去セクタ2のメモリセルMM02、MMx2のメモリゲートにも−5Vが印加されるが、ソース線SL1を通してメモリセルのソースに0Vが印加されているため消去されない。消去セクタ1では、ソース線SL0に5Vが印加されるが、メモリゲート線MG1に0Vが印加されているため消去されない。消去セクタ3、消去セクタyでは、コントロールゲート線CGy、メモリゲート線MGn、ソース線SLoがいずれも0Vであるためメモリセルは消去されない。信号count0は一定時間が経過すると出力がLレベルになり、ソース線SL0の電圧も0Vとなる。次に信号count1がHレベルとなり、ソース線SL1に例えば5Vが印加され、消去セクタ2の消去が行われる。信号count1がLレベルとなった後、信号mgsel0をLレベルとしメモリゲート線MG0に0Vを印加し、次に信号mgsel1をHレベルとして、メモリゲート線MG1に例えば−5Vを印加して、再び信号count0とcount1を順次動作させ、消去セクタ1と消去セクタ3の消去を行う。
図19には図18の回路構成の消去ブロック0における消去のタイミングが示される。消去ブロック0のメモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3を消去するために、コントロールゲート線CG0、CG1、CG2、CG3に例えば0Vを印加し、ビット線BL0、BLxを例えばopenにする。次に信号eraseをHレベルとする。次に信号eraseblock0をHレベルとして消去ブロック0を選択する。信号mgsel0をHレベルとして、メモリゲート線MG0に例えば−5Vを印加する。信号count0の出力がHレベルとなるとソース線SL0に例えば5Vが印加され、メモリセルMM00、MMx0を消去する。信号count0は消去時間が経過すると出力がLレベルとなり、ソース線SL0の電圧も0Vとなる。次に信号count1の出力がHレベルになり、ソース線SL1に例えば5Vを印加する。消去セクタ2のメモリセルの消去が終了すると、信号mgsel0をLレベル、信号mgsel1をHレベルとして、再び信号count0、 count1を動作させ、消去セクタ1と消去セクタ3のメモリセルを消去する。消去ブロック0の消去が終了すると、信号mgsel1、eraseblock0、eraseはすべてLレベルとなり、メモリゲート線MG、ソース線SLはすべて0Vになる。消去ブロック0の消去中、信号mgseln、slselo、prog、eraseblockzはLレベルであり、消去ブロックmのメモリゲート線MGn、ソース線SLo、コントロールゲート線CGyは0Vであるため、消去は行われない。セクタ単位の消去時間はカウンタのHレベル期間を調節することにより変更できる。また、図19において、ソース線SL1への電圧の印加はソース線SL0への電圧の印加が終了する時点で開始されるが、消去時間を短縮するために、ソース線SL1への電圧の印加開始をソース線SL0の電圧の印加開始から少しずらして、ソース線SL0とソース線SL1へ同時に電圧を印加することも可能である。
本構成では隣接する消去セクタにソース線SLを接続し、メモリゲート線MGをソース線SLに対して1本ずつ接続したが、隣接する消去セクタにメモリゲート線MGを接続し、メモリゲート線MGに対してソース線SLを1本ずつ接続することもできる。
図20には図12のメモリアレイにおいて消去ブロックで消去領域の指定を行い、消去を消去セクタ単位で時分割制御する回路構成が例示される。メモリセルMMは格子状に配置され、メモリセルのコントロールゲート、メモリゲート、ソースは行方向に共通接続される。コントロールゲート線はCG0、CG1、CG2、CG3、CGy、メモリゲート線はMG0、MGm、ソース線はSL0、SL1、SL2、SL3、SLyである。メモリセルのドレインはビット線BL0、BLxに接続されており、列方向に共通接続される。消去ブロックに対する消去セクタ単位の時分割消去は制御回路40aが制御する。mgsel(mgsel0,mgseln)はメモリゲート線選択信号、slsel(slsel0〜slsel4、slsely)はソース線選択信号、progは書込み信号、eraseは消去信号、eraseblock(eraseblock0、eraseblockz)は消去ブロック選択信号、count(count0〜count3)は消去を消去セクタ単位に時分割制御する信号である。これらの信号のうちslsel、progは書込み時に用いる信号である。
制御回路40aには消去コマンドによって消去対象消去ブロックが指示される。制御ロジック回路41aはそれをデコードして消去ブロック選択信号eraseblock0又はeraseblock1をHレベルとする。このHレベル期間にメモリゲート線選択信号mgsel0をHレベルとし、このHレベル期間にカウンタ42aのカウント動作を1サイクル行なって時分割制御信号count0〜count3を順次変化させる。
メモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3は消去ブロック0を構成しており、メモリセルMM0y、MMxyも消去ブロックmを構成している。メモリセルMM00、MMx0は消去セクタ0を構成しており、各メモリセルの選択ゲートには選択ゲート線CG0が、メモリゲートにはメモリゲート線MG0が、ソースにはソース線SL0が共通接続されている。同様に、消去セクタ1を構成するメモリセルMM01、MMx1は、コントロールゲートにコントロールゲート線CG1が、メモリゲートにメモリゲート線MG0、ソースにソース線SL1が共通接続されている。消去セクタ2を構成するメモリセルMM02、MMx2は、コントロールゲートにコントロールゲート線CG2が、メモリゲートにメモリゲート線MG0が、ソースにソース線SL2が共通接続されている。消去セクタ3を構成するメモリセルMM03、MMx3は、コントロールゲートにコントロールゲート線CG3が、メモリゲートにメモリゲート線MG0が、ソースにソース線SL3が共通接続されている。メモリセルMM0y、MMxyも消去セクタyを構成しており、コントロールゲートにコントロールゲート線CGyが、メモリゲートにメモリゲート線MGmが、ソースにソース線SLyが共通接続されている。
消去ブロック0のメモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3を消去する場合、まず信号erase、eraseblock0をHレベル、信号slsel、progはLレベルとし、コントロールゲート線CG0に例えば0Vを印加し、ビット線BL0、BLxを例えばopenとする。次に信号mgsel0をHレベルとし、メモリゲート線MG0に例えば−5Vを印加する。信号count0がHレベルとなると、ソース線SL0に例えば5Vが印加される。メモリゲート線MG0に−5Vが印加された状態では、メモリゲートが共通に接続されている消去セクタ1のメモリセルMM01、MMx1、消去セクタ2のメモリセルMM02、MMx2、消去セクタ3のメモリセルMM03、MMx3のそれぞれのメモリゲートにも−5Vが印加されるが、ソース線SL1、SL2、SL3を通してメモリセルのソースに0Vが印加されているため消去されない。また、消去対象ではない消去セクタyでは、コントロールゲート線CGy、メモリゲート線MGm、ソース線SLyがいずれも0Vであるため消去されない。信号count0は一定時間が経過すると出力がLレベルとなり、ソース線SL0の電圧も0Vとなる。そして信号count1がHレベルとなり、ソース線SL1に例えば5Vが印加され、消去セクタ1の消去が行われる。同様に信号count2とcount3を順次動作させ、消去セクタ2と消去セクタ3の消去を行う。尚、図20の構成はビット線に階層MOSトランジスタを接続して、階層構造にすることも可能である。
図21には図20の回路構成の消去ブロック0における消去タイミングが示される。消去ブロック0のメモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3を消去するために、コントロールゲート線CG0、CG1、CG2、CG3に例えば0Vを印加し、ビット線BL0、BLxを例えばopenにする。次に信号eraseをHレベルとする。次に信号eraseblock0をHレベルとして消去ブロック0を選択する。信号mgsel0をHレベルとして、メモリゲート線MG0に例えば−5Vを印加する。信号count0がHレベルとなるとソース線SL0に例えば5Vが印加され、メモリセルを消去する。信号count0は一定時間が経過すると出力がLレベルとなり、次に信号count1が動作しソース線SL1に例えば5Vが印加され、消去セクタ1のメモリセルが消去される。信号count1がLレベルとなると、同様に信号count2、count3を動作させ、消去セクタ2、消去セクタ3のメモリセルの消去を行う。消去ブロック0の消去中、信号mgselm、slsely、prog、eraseblockzはLレベルであり、メモリゲート線MGm、ソース線SLy、コントロールゲート線CGyは0Vであるため消去されない。セクタ単位の消去時間はカウンタ42aの各出力信号のHレベル期間を調節することにより変更できる。
図22には図14のメモリアレイにおいて消去ブロックで消去領域の指定を行い、消去を消去セクタ単位で時分割制御する回路構成が例示される。メモリセルMMは格子状に配置され、メモリセルのコントロールゲート、メモリゲート、ソースは行方向に共通接続される。コントロールゲート線はCG0、CG1、CG2、CG3、CGy、メモリゲート線はMG0、MG1、MG2、MG3、MGy、ソース線はSL0、SLnである。メモリセルのドレインはビット線BL0、BLxに接続されており、列方向に共通接続される。消去ブロックに対する消去セクタ単位の時分割消去は制御回路40bが制御する。mgsel(mgsel0〜mgsel3,mgsely)はメモリゲート線選択信号、slsel(slsel0、slselm)はソース線選択信号、progは書込み信号、eraseは消去信号、eraseblock(eraseblock0、eraseblockz)は消去ブロック選択信号、count(coumt0〜count3)は消去を消去セクタ単位に時分割制御する信号である。これらの信号のうちmgsel、progは書込み時に用いる信号である。
制御回路40bには消去コマンドによって消去対象消去ブロックが指示される。制御ロジック回路41bはそれをデコードして消去ブロック選択信号eraseblock0又はeraseblock1をHレベルとする。このHレベル期間に一つのソース線選択信号slselをHレベルとし、このHレベル期間にカウンタ42bのカウント動作を1サイクル行なって時分割制御信号count0〜count3を順次変化させる。
メモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3は消去ブロック0を構成しており、メモリセルMM0y、MMxyも消去ブロックyを構成している。メモリセルMM00、MMx0は消去セクタ0を構成しており、各メモリセルのコントロールゲートにコントロールゲート線CG0が、メモリゲートにメモリゲート線MG0が、ソースにはソース線SL0が共通接続されている。同様に、消去セクタ1を構成するメモリセルMM01、MMx1は、コントロールゲートにコントロールゲート線CG1が、メモリゲートにメモリゲート線MG1、ソースにソース線SL0が共通接続されている。消去セクタ2を構成するメモリセルMM02、MMx2は、コントロールゲートにコントロールゲート線CG2が、メモリゲートにメモリゲート線MG2が、ソースにソース線SL0が共通接続されている。消去セクタ3を構成するメモリセルMM03、MMx3は、コントロールゲートにコントロールゲート線CG3が、メモリゲートにメモリゲート線MG3が、ソースにソース線SL0が共通接続されている。メモリセルMM0y、MMxyも消去セクタmを構成しており、コントロールゲートにコントロールゲート線CGyが、メモリゲートにメモリゲート線MGyが、ソースにソース線SLmが共通接続されている。
消去ブロック0のメモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3を消去する場合、まずerase、eraseblock0をH、mgsel、progはLとし、選択ゲート線CG0に例えば0Vを印加し、ビット線BL0、BLxを例えばopenとする。次にslsel0をHとし、ソース線SL0に例えば5Vを印加する。count0がHとなると、メモリゲート線MG0に例えば−5Vが印加される。ソース線SL0に5Vが印加された状態では、ソースが共通に接続されている消去セクタ1のメモリセルMM01、MMx1、消去セクタ2のメモリセルMM02、MMx2、消去セクタ3のメモリセルMM03、MMx3のソースにも5Vが印加されるが、メモリゲート線MG1、MG2、MG3を通してメモリセルのメモリゲートに0Vが印加されているため消去されない。また、消去対象ではない消去セクタyでは、選択ゲート線CGy、メモリゲート線MGy、ソース線SLmがいずれも0Vであるため消去されない。count0は一定時間が経過すると出力がLとなり、ソース線SL0の電圧も0Vとなる。そしてcount1がHとなり、メモリゲート線MG1に例えば−5Vが印加され、消去セクタ1の消去が行われる。同様にcount2とcount3を順次動作させ、消去セクタ2と消去セクタ3の消去を行う。以上のように、消去ブロック0内すべてのメモリセルを消去する。図21の構成はビット線に階層MOSトランジスタを接続して、階層構造にすることも可能である。
図23A及び図23Bには図22の回路構成の消去ブロック0における消去のタイミングが示される。消去ブロック0のメモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3を消去するために、コントロールゲート線CG0、CG1、CG2、CG3に例えば0Vを印加し、ビット線BL0、BLxを例えばopenにする。次に信号eraseをHレベルとする。次に信号eraseblock0をHレベルとして消去ブロック0を選択する。信号slsel0をHレベルとして、ソース線SL0に例えば5Vを印加する。信号count0がHレベルとなるとメモリゲート線MG0に例えば−5Vが印加され、メモリセルを消去する。信号count0は一定時間が経過すると出力がLレベルとなり、次に信号count1が動作しメモリゲート線MG1に例えば−5Vが印加され、消去セクタ1のメモリセルが消去される。信号count1がLレベルとなると、同様に信号count2、次に信号count3を順次動作させ、消去セクタ2、消去セクタ3のメモリセルの消去を行う。消去ブロック0の消去中は信号slselm、prog、eraseblockzはLレベルであり、メモリゲート線MGy、ソース線SLm、コントロールゲート線Gyは0Vであるため消去されない。セクタ単位の消去時間はカウンタ42bの各出力信号countのHレベル期間を調節することにより変更できる。図23Aに対して図23Bは消去対象ブロック内の非選択セクタに対して、メモリゲート線に例えば1.5Vの電圧を印加する点が相違され、消去非対象セクタに印加される不所望な電界の大きさを小さくすることができる。
図24には図16のメモリアレイにおいて消去ブロックで消去領域の指定を行い、消去を消去セクタ単位で時分割制御する回路構成が例示される。メモリセルMMは格子状に配置され、メモリセルのコントロールゲートは行方向に、ドレイン、ソースは列方向に共通接続される。ウェルは消去ブロック単位に接続される。コントロールゲート線はCG0、CG1、CG2、CG3、CGy、ソース線はSL0、SLx、SLm、SLn、ビット線はBL0、BLx、BLm、BLn、ウェル線はWELL0、WELLzである。消去ブロックに対する消去セクタ単位の時分割消去は制御回路40cが制御する。cgsel(cgsel0〜cgsel3、vgsely)はコントロールゲート線選択信号、progは書込み信号、eraseは消去信号、eraseblock(eraseblock0、eraseblockz)は消去ブロック選択信号、wellsel(wellsel0、wellselz)はウェル線選択信号、count(count0〜count3)は消去を消去セクタ単位に時分割制御する信号である。これらのうち、cgsel、progは書込み時に用いる信号である。
制御回路40cには消去コマンドによって消去対象消去ブロックが指示される。制御ロジック回路41cはそれをデコードして一つの消去ブロック選択信号eraseblockをHレベルとする。このHレベル期間に一つのウェル選択信号(wellsel)をHレベルとし、このHレベル期間にカウンタ42cのカウント動作を1サイクル行なって時分割制御信号count1〜count3を順次変化させる。
メモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3は消去ブロック0を構成しており、メモリセルMM0y、MMxyは消去ブロックzを構成している。メモリセルMM00、MMx0は消去セクタ0を構成しており、各メモリセルのコントロールゲートにはコントロールゲート線CG0が、ウェルにはウェル線WELL0が接続されている。同様に、メモリセルMM01、MMx1は消去セクタ1を構成し、コントロールゲート線CG1とウェル線WELL0が、メモリセルMM02、MMx2は消去セクタ2を構成し、コントロールゲート線CG2とウェル線WELL0が、メモリセルMM03、MMx3は消去セクタ3を構成し、コントロールゲート線CG3とウェル線WELL0が共通接続されている。消去セクタyを構成するメモリセルMM0y、MMxyは、コントロールゲートにコントロールゲート線CGy、ウェルにウェル線WELLzが共通接続されている。
消去ブロック0のメモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3を消去する場合、まず、信号erase、eraseblock0をHレベル、信号cgsel、progはLレベルとする。次に信号wellsel0をHレベルとしてウェル線WELL0に例えば10Vを印加する。次に信号count0がHレベルとなると、コントロールゲート線CG0に例えば−10Vが印加される。ウェル線WELL0に10Vが印加された状態では、ウェルが共通に接続されている消去ブロック0内のメモリセルMM01、MMx1、MM02、MMx2、MM03、MMx3のウェルにも10Vが印加されるが、コントロールゲート線CG1、CG2、CG3を通してメモリセルのコントロールゲートに0Vが印加されているため消去されない。また、消去対象ではない消去セクタyでは、コントロールゲート線CGy、ウェル線WELLzがいずれも0Vであるため消去されない。信号count0は一定時間が経過すると出力がLレベルとなり、コントロールゲート線CG0の電圧も0Vとなる。次に信号count1がHレベルとなり、コントロールゲート線CG1に例えば−10Vが印加され、消去セクタ1の消去が行われる。同様に信号count2とcount3を順次動作させ、消去セクタ2と消去セクタ3の消去を行う。以上のように、消去ブロック0内すべてのメモリセルを消去する。
図25には図24の消去ブロック0における消去のタイミングが示されている。消去ブロック0のメモリセルMM00、MMx0、MM01、MMx1、MM02、MMx2、MM03、MMx3を消去するために、ソース線SL0、SLx、SLm、SLn、とビット線BL0、BLx、BLm、BLn、をopenにする。次に信号erase、eraseblock0をHレベルとして消去ブロック0を選択する。次に信号wellsel0をHレベルとしてウェル線WELL0に10Vを印加する。信号count0がHレベルとなり、コントロールゲート線CG0に−10Vが印加され、メモリセルMM00、MM01、MM02、MM03の消去が行われる。消去セクタ0のメモリセルの消去が終了すると、信号count0はLレベルとなり、信号count1がHレベルとなり、コントロールゲート線CG1に−10Vを印加する。信号count1がLレベルとなると、同様に信号count2、次に信号count3を順次Hレベル変化させ、消去セクタ2、消去セクタ3のメモリセルの消去を行う。消去ブロック0の消去中は信号cgsely、prog、eraseblockzはLレベルであり、コントロールゲート線CGy、ウェル線WELLzは0Vであるため消去されない。セクタ単位の消去時間はカウンタ42cの出力のHレベル期間を調節することにより変更できる。
図26にはマイクロコンピュータにオンチップされるフラッシュメモリの全体的なブロック図が例示される。フラッシュメモリモジュール53とフラッシュメモリコントローラ54はCPU(中央処理装置)51とバス58を共有する。バス58はアドレスバス58A及びデータバス58D等を含んでいる。フラッシュメモリ53は上記スプリットゲート構造のメモリセルMMがマトリクス配置されたメモリアレイ1を有する。ドライバ回路61はコントロールゲートドライバ32を有する。ドライバ回路62はメモリゲートドライバ30及びソースドライバ31を有する。前記ドライバ30,31,32に対する駆動選択信号はXアドレスデコーダ(XDCR)63及びタイミング制御回路(CONT)66が生成する。40に代表される時分割消去のための前記制御回路はXアドレスデコーダ(XDCR)63及びタイミング制御回路(CONT)66によって実現される。消去及び書き込みに用いる高電圧VCCE/VCCP/VCCDは電圧発生回路67で生成され、動作モードに応じて必要な電源がドライバ回路62に供給される。ドライバ回路61には高電圧の供給を要しない。図26において、64はYアドレスデコーダ、65はアドレスバッファ、68はセンスアンプ回路および書込み回路、69はY選択回路、70はデータ入出力バッファ(DTB)である。Vddは外部電源、VSSは回路の接地電位である。
書込み動作を説明する。アドレス信号がアドレスバッファ65に入力されると、Xアドレスデコーダ63およびYアドレスデコーダ64がメモリアレイ1の中のメモリセル1を1個以上選択する。選択されたメモリセル1のコントロールゲートには電圧が印加される。データバス58Dから書込みデータがデータ入出力バッファ70に入力されると、そのデータは書込み回路68に格納される。書き込み回路68は書き込みデータの論理値に応じて、選択されたメモリセルに対して書き込み選択又は書き込み非選択を制御し、書込み選択とされるメモリセルに書込み電圧を印加する。書込み高電圧は、書込み選択されたメモリセル1のメモリゲートとソースに印加され、ソースサイドインジェクションによって行なわれる。
消去動作を説明する。アドレスバス68Aからアドレスがアドレスバッファ65に入力されると、Xアドレスデコーダ63、Yアドレスデコーダ64及び制御回路66は、一括消去のメモリブロックを選択すると共に、消去ブロックを構成する消去セクタに時分割で消去電圧を与えるように動作する。
読み出し動作を説明する。アドレスバス58Aからアドレスがアドレスバッファ65に入力されると、Xアドレスデコーダ63およびYアドレスデコーダ64がメモリアレイ1の中のメモリセルMMを1個以上選択する。選択されたメモリセルMMの閾値電圧情態に応じてビット線に出力される電流値をセンスアンプ回路68で検出し、その結果をデータ入出力バッファ70を経てデータバス58Dに出力される。
図27には以上説明した不揮発性メモリセルを採用した不揮発性メモリをオンチップで備える半導体装置、例えばマイクロコンピュータの構成が全体的に示される。マイクロコンピュータ80は、特に制限されないが、単結晶シリコンのような1個の半導体基板(半導体チップ)に、CMOS集積回路製造技術などにより形成される。このマイクロコンピュータ80は、CPU(中央処理装置)51、揮発性メモリとしてのRAM82、不揮発性メモリとしてのフラッシュメモリモジュール53、フラッシュメモリコントローラ54、バスステートコントローラ85、入出力ポート回路などの入出力回路(I/O)86、及びその他の周辺回路87を備え、それら回路モジュールは内部バス58に接続される。内部バス58はアドレス、データ、及び制御信号の各信号線を備える。CPU51は命令制御部と実行部を備え、フェッチした命令を解読し、解読結果にしたがって演算処理を行う。フラッシュメモリモジュール53はCPU51の動作プログラムやデータを格納する。RAM82はCPU51のワーク領域もしくはデータ一時記憶領域とされる。フラッシュメモリモジュール53の動作はCPU51がフラッシュコントローラ54の制御レジスタに設定した制御データに基づいて制御される。バスステートコントローラ85は内部バス58を介するアクセス、外部バスアクセスに対するアクセスサイクル数、ウェイトステート挿入、バス幅等の制御を行う。
図27において2点鎖線で囲んだ領域89の回路は比較的ゲート酸化膜の薄いMOSトランジスタによって構成される回路部分を意味する。CPU51はそのようなゲート酸化膜の薄い低耐圧MOSトランジスタによって構成されるロジック回路の一例となる。前記領域89の外の回路は、比較的ゲート酸化膜の厚い高耐圧MOSトランジスタによって構成される回路部分になる。例えばフラッシュメモリモジュール53において高耐圧ドライバ30,31等が形成される領域になる。
以上説明したフラッシュメモリモジュールやマイクロコンピュータによれば、同時消去メモリ数減少により、消去電流を分散し、内部電源回路の負荷を軽減することができる。フラッシュメモリセルに2種類の消去電圧を印加するドライバを消去セクタ間で共通化することにより、消去のための制御論理回路の論理規模やドライバの数を減らすことができ、チップ面積の縮小に資することができる。 以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。本発明はフラッシュメモリおよびそれを内蔵するマイクロコンピュータの他にも他の半導体集積回路として広く適用することができる。