(57)【要約】【課題】不揮発性メモリセルに対する書き込み動作を高速化する。【解決手段】半導体集積回路は、電気的消去及び書込み可能な不揮発性メモリセルを複数個備え、第１のしきい値電圧を持つ前記不揮発性メモリセルのしきい値電圧が第２のしきい値電圧に変化されるまで不揮発性メモリセルにパルス状電圧を与えるための制御手段を含む。このとき、前記制御手段は、前記第２のしきい値電圧を、電源電圧よりも低くかつ電源電圧の半分以上の範囲の電圧に制御する。これにより、半導体集積回路は、粗い書込みだけを書込みモードとして持つことができる。メモリセルのしきい値電圧を変化させるのに必要なパルスの数は、粗い書込みモードの方が少ないから、これによって書込み動作が高速化される。【選択図】図２６
2010033711.tif 000002
【特許請求の範囲】
【請求項１】
電気的消去及び書込み可能な不揮発性メモリセルを複数個備え、夫々の不揮発性メモリセルのしきい値電圧は消去状態を示す第１のしきい値電圧分布と書込み状態を示す第２のしきい値電圧分布のいずれかに含まれることにより１ビットのデータを記憶し、前記不揮発性メモリセルへのデータの書込み動作、消去動作、及び読出し動作を制御する制御手段を含み、
前記制御手段は、前記消去動作において消去対象とされる前記不揮発性メモリセルのしきい値電圧が第１電圧を境界として第１のしきい値電圧分布に含まれることにより当該不揮発性メモリセルが消去状態にあることを判別し、前記書込み動作において書込み対象とされる前記不揮発性メモリセルのしきい値電圧が第２電圧を境界として前記第２のしきい値電圧分布に含まれることにより当該不揮発性メモリセルが書き込み状態にあることを判別し、
前記書込み動作に含まれる第１書込み動作において前記不揮発性メモリセルに書込まれるデータは、前記書込み動作に含まれる第２書込み動作において前記不揮発性メモリセルに書込まれるデータよりも相対的に情報保持時間が短く、
前記第１書込み動作により前記不揮発性メモリセルのしきい値電圧が前記第１のしきい値電圧分布から前記第２のしきい値電圧分布に変化する時間は前記第２の書込み動作による当該時間より短くなるように制御され、
前記第１書込み動作における前記第２電圧と前記第２書込み動作における前記第２電圧とは、異なる電圧値であることを特徴とする半導体集積回路。
【請求項２】
前記第１電圧は前記消去動作における消去ベリファイ電圧であり、前記第２電圧は前記書込み動作における書込みベリファイ電圧であることを特徴とする請求項１に記載の半導体集積回路。
【請求項３】
前記書込み動作においては前記不揮発性メモリセルに複数回の書込み電圧が印加されることにより前記不揮発性メモリセルのしきい値電圧が変化し、
前記第１の書込み動作における１回の書込み電圧の印加による前記不揮発性メモリセルのしきい値電圧の変化量は、前記第２の書込み動作における当該変化量より大きくされることを特徴とする請求項１又は２に記載の半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電気的消去及び書込み可能な不揮発性メモリセルを備えた半導体集積空回路に関する。
【背景技術】
【０００２】
フラッシュメモリについて記載された文献の例としては、1994 Symposium on VLSI Circuits, Digest of Technical Papers, pp61-62.がある。
【０００３】
フラッシュメモリにおいて、そのメモリセルのしきい値電圧が高い状態を例えば消去状態、低い側状態を書込み（プログラム）状態として定義することができる。この場合、例えばワード線単位で一括して消去動作を行った後、書込みを行うことができる。消去動作及び書き込み動作では、しきい値電圧の変化が不所望に大きくならないように、所望のしきい値電圧を得られるまで、パルス状の電圧印加とベリファイが繰り返し行なわれる。
【０００４】
消去状態のしきい値電圧から書き込み状態のしきい値電圧へ電圧を印加して移行させるとき、しきい値電圧が書き込み状態に近づくにつれて、しきい値電圧が変化しにくくなる。このため、同じパルス幅を印加していると、しきい値電圧はほとんど変化していないのにベリファイ動作ばかりしているという状態となる。このため、一定の書き込み電圧レベルを用いて書き込みを行う場合には、しきい値電圧が書き込み状態に近づくにつれてパルス幅を長くしてやる。パルス幅を漸次長くする代わりに、電圧を徐々に高くしていってもよい。
【０００５】
例えば、電源電圧Ｖｃｃ例えば３．３Ｖに対して、書き込みレベル（書き込み時のベリファイワード線電圧と等価）を例えば１．５Ｖとし、書き込みパルスあたりメモリセルのしきい値電圧が０．１Ｖ〜０．２Ｖ変化するようにして高精度書き込みを実現していた。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】1994 Symposium on VLSI Circuits, Digest of Technical Papers, pp61-62.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来は、電源電圧が例えば３．３Ｖに対し、書き込みレベルはその大凡半分の例えば１．５Ｖとされていた。この電圧にセンスアンプで検知するのに必要な電流差を得るためのしきい値電圧差を加えたものが消去状態の最低電圧（Ｖｅｖ）とされる。消去時にはメモリセルのしきい値電圧がＶｅｖ以上になったか否かを検出して消去パルス印加を制御する。書き込み電圧を下げ、これによってＶｅｖもできるだけ下げることで低電圧動作と高信頼化を図ることができる。
【０００８】
しかし、メモリセルの特性は、書き込み時に印加する電圧が同じときに、消去状態から書き込み状態のしきい値電圧に達するのに必要な時間は３桁ほどばらついてしまうのが実状である。このような条件でメモリセルの書き込みを行なうと、メモリセルの通常の特性ばらつきでは、メモリセルのしきい値電圧変化が０．２Ｖ以下となる書き込みパルス（幅、電圧）としておかないとメモリセルによってはしきい値電圧が０Ｖ以下となる場合があった。３桁のばらつきは等価的なしきい値電圧のばらつきに換算すると３Ｖ程度となる。よって、書き込み状態にされるまでの時間が最も短いメモリセルのしきい値電圧が書き込み状態になってから、もっとも遅いメモリセルのしきい値電圧が書き込み状態になるまでに、１書き込みパルス当たりのしきい値電圧の変化量は0.2Vの変化であるから単純に計算して、１５回のパルスの印加が必要となる。このパルス毎にしきい値電圧が所望の値になったかどうかを判定するベリファイ動作が必要となり、これが書き込み時間の大きなオーバーヘッドとなっていた。
【０００９】
本発明の目的は、不揮発性メモリセルに対する書き込み動作を高速化することにある。
【００１０】
本発明の別の目的は、不揮発性メモリセルに対する書き込み動作の高速化と、データ保持の高信頼性とを両立することにある。
【００１１】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１２】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【００１３】
すなわち、フラッシュメモリのような半導体集積回路は、電気的消去及び書込み可能な不揮発性メモリセルを複数個備え、第１のしきい値電圧を持つ前記不揮発性メモリセルのしきい値電圧が第２のしきい値電圧に変化されるまで不揮発性メモリセルにパルス状電圧を与えるための制御手段を含む。前記前記制御手段は、前記パルス状電圧の印加毎に変化される不揮発性メモリセルのしきい値電圧の変化量が相対的に大きくされる第１の動作モードと相対的に小さくされる第２の動作モードとを有する。
【００１４】
例えば、第１の動作モード（粗い書込み）における書込み電圧パルスのワンパルス当たりのメモリセルしきい値電圧変化量をΔVth1、第２の動作モード（高精度書込み）における前記ワンパルス当たりのしきい値電圧変化量をΔVth2とする。この時、不揮発性メモリセルのしきい値電圧分布における消去状態の最低しきい値と書込み状態の最高しきい値との電圧差（セルウインドウ）を固定して考えた時、メモリセルのしきい値電圧を変化させるのに必要なパルスの数は、ΔVth1の場合の方がΔVth2の場合よりも少ない。このため、第1の動作モード（ΔVth1）を用いた場合のベリファイ回数は、第2の動作モード（ΔVth2）を用いた場合よりも少ない。書込み時間は、メモリセルそのもののしきい値電圧を変化させる時間とベリファイを行なう時間などのオーバーヘッド時間との和となる。よって、ベリファイ回数が少ないほうがオーバーヘッド時間が少ないので全体としての書込み動作は高速化される。
【００１５】
前記第１の動作モードにおけるメモリセルへの書込みレベル（しきい値電圧）は第２の動作モードにおけるそれよりも高くされることが望ましい。すなわち、前記しきい値電圧の変化量が相対的に大きなΔVTh1の場合は書込み状態のしきい値分布が、第２の動作モードにおけるΔVTh2の場合の書込み状態のしきい値分布よりも大きくなる。よって、デプリートするのを避けるためにはそのようにすることが望ましい。換言すれば、第１の動作モード（粗い書込み）による書込みベリファイ電圧は第２の動作モード（高精度な書込み）による書込みベリファイ電圧よりもレベルを高くすることが望ましい。前記セルウインドウを第１の動作モードと第２の動作モードの場合で等しくしなくても、第1の動作モードで書込まれたメモリセルに対する消去レベルは第2の動作モードで書込まれたメモリセルの消去レベルよりも高くされる傾向を採る。よって、情報保持時の電界は第２の書込み動作モードで書込まれたメモリセルの方が小さく、情報保持時間は長くなる。即ち、第２の動作モードで書き込みされたメモリセルの方が情報保持性能は良好であり、この意味において、第２の動作モードは高精度な書込みであると、位置付けられる。
【００１６】
前記制御手段は、第１の動作モードで書き込んだデータを前記第２の動作モードで書直しさせる書き直し制御手段を有することができる。即ち、書込み時間の短い第1の動作モードで書き込んだ後に、メモリセルのしきい値電圧の分布が狭くできる第2の動作モードで書き直しされる。書き直しは、メモリセルからデータを読み出し、これをセンスラッチにラッチし、ラッチされたデータを第２の動作モードによる書込み対象データとする。
【００１７】
第１の動作モードと第２の動作モードは書直しだけでなく、第１の動作モードによる粗い書込みと、第２の動作モードによる高精度に書込とみを、アドレスエリア、書き換えの累積回数などの条件によって切換え制御することができる。
【００１８】
粗い書込み専用のメモリマットと高精度書込み専用のメモリマットを専用化することも可能である。
【００１９】
前記第１の動作モードにおける書込みデータを２値データとし、前記第２の動作モードにおける書込みデータを多値データとすることも可能である。このとき、書き直し制御のための手段は、第１の動作モードで書込まれた２値データを、第２の動作モードで多値データに書直しすることができる。
【００２０】
半導体集積回路は、上記第１の動作モードで実現される粗い書込みだけを書込みモードとして持つことができる。即ち、半導体集積回路は、電気的消去及び書込み可能な不揮発性メモリセルを複数個備え、第１のしきい値電圧を持つ前記不揮発性メモリセルのしきい値電圧が第２のしきい値電圧に変化されるまで不揮発性メモリセルにパルス状電圧を与えるための制御手段を含む。このとき、前記制御手段は、前記第２のしきい値電圧を、電源電圧よりも低くかつ電源電圧の半分以上の範囲の電圧に制御する。
【００２１】
書込みモードとして粗い書込みモードだけを持つ半導体集積回路の別の観点によれば、前記制御手段は、電源電圧が３．３Ｖ近傍のとき、前記第２のしきい値電圧を、３．３Ｖよりも低くかつ２Ｖ以上の範囲の電圧に制御する。
【００２２】
このとき、前記制御手段は、１回のパルス状電圧によるしきい値電圧の変化量を０．４Ｖ以上とすることができる。別の観点では、前記制御手段は、１回のパルス状電圧によるしきい値電圧の変化量を、前記第１のしきい値電圧と第２のしきい値電圧との電圧差の１／３以上とすることができる。
【００２３】
ＮＡＮＤ型に代表されるメモリアレイ構成を有する半導体集積回路の場合に、書込みモードとして粗い書込みモードだけを持つ観点によれば、当該半導体集積回路は、電気的消去及び書込み可能な不揮発性メモリセルを複数個備え、第１のしきい値電圧を持つ前記不揮発性メモリセルのしきい値電圧が第２のしきい値電圧に変化されるまで不揮発性メモリセルにパルス状電圧を与えるための制御手段を含み、読み出し動作では非選択の不揮発性メモリセルにこれをオン状態にするための制御電圧を与える。このとき、前記制御手段は、前記第２のしきい値電圧を、前記制御電圧との電圧差が当該制御電圧よりも低くかつ電源電圧の半分以上の範囲の電圧にするように制御する。或いは、前記制御手段は、電源電圧が３．３Ｖ近傍のとき、前記第２のしきい値電圧を、前記制御電圧との電圧差が３．３Ｖよりも低くかつ２Ｖ以上の範囲の電圧にするように制御する。
【００２４】
前述のように、メモリセルの特性は、書き込み時に印加する電圧が同じときに、消去状態から書込み状態のしきい値電圧に達するのに必要な時間で３桁ほどばらついてしまう。このような条件でメモリセルの書き込みを行なうと、メモリセルの通常の特性ばらつきでは、メモリセルのしきい値電圧変化ΔVth1が0.2V以下となる書き込みパルス（幅、電圧）としておかないとメモリセルによってはしきい値電圧が0V以下となる場合があると考えられる。このとき、高速に書き込むためには、パルス幅を長くするか電圧を高くするかして、１回の書き込みパルス当たりの変化量ΔVth1を大きくする。しかし、これによってメモリセルがデプリートしやすくなる。これを防ぐために、書き込みレベルを高くする。例えば、電源電圧が３．３Ｖ程度のとき、書込み状態のしきい値電圧を２．０Ｖ程度にすると、ΔVth1を０．４Ｖにすることができる。上述の３桁のばらつきを仮定すると、３Ｖのしきい値電圧ばらつきと等価であるから8回のパルスで良いことになる。それだけベリファイ動作の回数が少なくなるので高速に書き込むことができる。即ち、書き込みレベルを従来は電源電圧の１／２以下にしようとしていたのに対して、１／２以上とする。
【００２５】
前記パルス状電圧のパルス幅の最小値（書込み動作における最初の書込み電圧を与える期間を決定する）を調整可能なトリミング手段を半導体集積回路に採用することができる。前記トリミング手段は更に、前記パルス状電圧のパルス幅の漸次増加率を調整可能にすることができる。ある半導体集積回路チップを別の半導体集積回路チップと同じパルス幅で最初の書込み電圧印加を行った場合には、実質的にしきい値電圧が殆ど変化されない無駄な書込み及びベリファイを何回も経なければならず、書込み効率が著しく低下することがある。最小の書込み電圧パルス幅をトリミング可能であれば、プロセスばらつきによるメモリセルの特性の相違を、フラッシュメモリチップのような半導体集積回路チップ間で揃えること、若しくは最適化することが可能になる。すなわち、メモリセルのしきい値電圧のシフト量は、書込み電圧が同一であっても、プロセスばらつきなどによって微妙に異なることが予想される。このような特性の相違を、フラッシュメモリチップのような半導体集積回路のウェーハプロセス等の検査工程で調整可能にすることは、高速書込みを可能にする上で重要である。
【００２６】
尚、メモリセルアレイに形式によっては、前記パルス状電圧の最小値を調整したり、前記パルス状電圧の漸次増加率を調整したりするトリミング手段を採用することができる。
【００２７】
前記フラッシュメモリのような半導体集積回路はディジタルスチルカメラを構成するためのデータ処理装置に適用できる。即ち、このデータ処理装置は、撮像手段と、前記半導体集積回路と、前記撮像手段で得られた画像データを前記第１の動作モードで逐次前記半導体集積回路に格納させる指示を与えると共に、半導体集積回路に第１の動作モードで格納された画像データを、前記撮像手段による撮像処理の休止期間を利用して、前記第２の動作モードにより多値データで半導体集積回路に書直しさせるモード制御手段とを含む。
【００２８】
前記フラッシュメモリのような半導体集積回路はＰＣカードを構成するためのデータ処理装置に適用できる。即ち、ＰＣカードを構成するためのデータ処理装置は、前記フラッシュメモリチップのような半導体集積回路と、ＰＣカードへの外部電源の供給時は前記半導体集積回路に対する書込み動作を前記第１の動作モードとし、ＰＣカードへの外部電源の遮断に呼応して、前記半導体集積回路に第１の動作モードで書込まれているデータを前記第２の動作モードにより多値データで半導体集積回路に書直しさせるモード制御手段とを含む。
【００２９】
そのようなデータ処理システムにおいては、フラッシュメモリのような半導体集積回路の不揮発性メモリセルへのデータの高速書込みを実現出来るとともに、保持されたデータ保持の信頼性を高めることができる。
【発明の効果】
【００３０】
本願において開示される発明のうち代表的なものについて簡単に説明すれば下記のとおりである。
【００３１】
すなわち、不揮発性メモリセルに対する書き込み動作を高速化することができる。また、不揮発性メモリセルに対する書き込み動作の高速化と、データ保持の高信頼性とを両立することができる。
【図面の簡単な説明】
【００３２】
【図１】粗い書込みモードと高精度書込みモードを有するフラッシュメモリの一例ブロック図である。
【図２】第１の書き込みと第２の書き込みの特性を夫々示す説明図である。
【図３】第１の書込みモード及び第２の書込みモードにおける書込み動作の一例フローチャートである。
【図４】書き直し動作の一例フローチャートである。
【図５】粗い書込みモードと高精度書込みモードを有する別のフラッシュメモリのブロック図である。
【図６】図５のフラッシュメモリにおける第１の書き込みと第２の書き込みの特性を示す説明図である。
【図７】第１の書込みモードと第２の書込みモードを指定するための条件を設定する手段を有するフラッシュメモリのブロック図が示される。
【図８】図7における動作切換え条件の一例を示す説明図である。
【図９】書込み電圧パルス幅を第１の書込みモードと第２の書込みモードとで同一とし、書込み電圧を第１の書込みモードと第２の書込みモードで相互に相違する一定電圧とするフラッシュメモリの一例ブロック図である。
【図１０】図9のフラッシュメモリに関する書込み特性図である。
【図１１】第２書込みモードによる高精度書込みを多値書込みとするフラッシュメモリの一例ブロック図である。
【図１２】２値書込みと多値書込みの夫々におけるメモリセルのしきい値分布の一例説明図である。
【図１３】２値で書込んだデータを多値で書直す時の動作の一例を示す説明図ある。
【図１４】２値データを多値データに変換する別処方を示す説明図である。
【図１５】記憶情報の2値から多値への書直し動作におけるメモリセルの初期状態を示す説明図である。
【図１６】記憶情報の2値から多値への書直し動作における第1段階の書込みによるメモリセルの状態を示す説明図である。
【図１７】記憶情報の2値から多値への書直し動作における第２段階の書込みによるメモリセルの状態を示す説明図である。
【図１８】記憶情報の2値から多値への書直し動作における第３段階の書込みによるメモリセルの状態を示す説明図である。
【図１９】記憶情報の2値から多値への書直し動作における書込み動作完了時点でのメモリセルの状態を示す説明図である。
【図２０】前記第１の書込みモードによる粗い書込み専用のメモリマットと第２の書込みモードによる高精度書込み（多値書込みを含む）専用のメモリマットを物理的に分けるようにしたフラッシュメモリのブロック図である。
【図２１】粗い書込みと高精度書込みに兼用されるメモリマットを持つフラッシュメモリの一例ブロック図である。
【図２２】第１の書込みモード（粗い書き込み）による書込みデータと第２の書込みモード（高精度の書き込み）による書込みデータとをメモリマット中に混在させる場合の例を示す説明図である。
【図２３】図２２の構成を採用した場合の書込み動作の一例フローチャートである。
【図２４】図２２の構成を採用した場合の読み出し動作の一例フローチャートである。
【図２５】図２２の構成を採用した場合の書き直し動作の一例フローチャートである。
【図２６】書き込みレベル（書込み状態のメモリセルのしきい値電圧）をＶｃｃの１／２以下にした場合とＶｃｃの１／２以上にした場合のしきい値電圧分布の比較説明図である。
【図２７】Ｖｃｃの１／２以上にした場合における消去レベル及び書き込みレベルと一つの書込み電圧パルスあたりのしきい値電圧の変化量を示す説明図である。
【図２８】ＡＮＤ型メモリセルにおける書込みの意義とＮＡＮＤ型メモリセルにおける書込みの意義の相違を示す説明図である。
【図２９】メモリセルの消去レベル及び書込みレベルと紫外線照射時のしきい値電圧（Ｖｔｈｉ）との相関関係を図２８のＡＮＤ型メモリセル構造とＮＡＮＤ型メモリセル構造の場合に分けて示す説明図である。
【図３０】最小の書込み電圧パルス幅及び書込み電圧パルス幅の変化の大きさをトリミングできるようにしたフラッシュメモリの一例ブロック図である。
【図３１】図３０におけるトリミングの対象の一つである最小の書込み電圧パルス幅のトリミングについての説明図である。
【図３２】図３０におけるもう一つのトリミング対象である書込み電圧パルス幅の変化の大きさに関するトリミングについての説明図である。
【図３３】書込み電圧を変化させる方式において最小電圧絶対値及び変化の大きさをトリミングできるようにしたフラッシュメモリの一例ブロック図である。
【図３４】図３３における一つのトリミングの対象である最小の書込み電圧値に関するトリミングの説明図である。
【図３５】図３３におけるもうひとつのトリミング対象である書込み電圧値の漸増幅に関するトリミングの説明図である。
【図３６】図３６にはしきい値電圧の漸増幅等を途中で変えることができる手段を設けたフラッシュメモリの一例ブロック図である。
【図３７】図３６においてしきい値電圧の漸増幅等を途中で変える手法の一例説明図である。
【図３８】書込み電圧印加用パルス列発生手段（パルスジェネレータ）の一例ブロック図である。
【図３９】トリミング手段の一例ブロック図である。
【図４０】トリミング手段に含まれるアドレスジェネレータの一例ブロック図である。
【図４１】アドレスジェネレータに含まれるとトリミング回路の一例回路図である。
【図４２】パルスジェネレータやアドレスジェネレータを構成するカウンタユニットの一例説明図である。
【図４３】書き込み電圧パルス毎にしきい値電圧を変化させる手法の基本原理についての説明図である。
【図４４】電源回路をトリミングするための一例回路図である。
【図４５】粗い書込みと高精度書込みモードを有するフラッシュメモリを適用したディジタルスチルカメラの説明図である。
【図４６】図４５のディジタルスチルカメラによる書き直し動作の一例フローチャートである。
【図４７】図４５のディジタルスチルカメラによる書き直し動作の別のフローチャートである。
【図４８】粗い書込みと高精度書込みモードを有するフラッシュメモリを適用したメモリカードの一例ブロック図である。
【図４９】粗い書込みと高精度書込みモードを有するフラッシュメモリを適用したメモリカードの別のブロック図である。
【図５０】粗い書込みと高精度書込みモードを有するフラッシュメモリを適用したメモリカードの更に異なるブロック図である。
【図５１】粗い書込みと高精度書込みモードを有するフラッシュメモリを適用したコンピュータシステムのブロック図である。
【図５２】粗い書込みと高精度書込みモードを有するフラッシュメモリを適用したファイルメモリシステムの一例ブロック図である。
【図５３】フラッシュメモリの構成をセンスラッチとプリチャージ回路を主体に示す回路図である。
【図５４】メモリマットの詳細及びそのＸ系選択回路の一例を示す回路図である。
【図５５】ＡＮＤ型メモリセルのレイアウト構成例を示す説明図である。
【図５６】ＮＡＮＤ型メモリセルのレイアウト構成例を示す説明図である。
【図５７】ＮＯＲ型メモリセルのレイアウト構成例を示す説明図である。
【図５８】ＤＩＮＯＲ型メモリセルのレイアウト構成例を示す説明図である。
【図５９】メモリ動作に応じてメモリセルに印加すべき電圧状態の一例を示す説明図である。
【図６０】フラッシュメモリの全体的なブロック図である。
【図６１】2値書込みと多値書き込みの双方をサポートする別のフラッシュメモリのブロック図である。
【図６２】図６１に示されるメモリセルアレイ及びセンスラッチの一部分を詳細に示した一例回路図である。
【図６３】一つのメモリセルに対する４値書込みにおける書込みベリファイ電圧としきい値電圧との関係を示す説明図である。
【図６４】書込み時におけるワード線印加電圧の一例を示す説明図である。
【図６５】４値データの書込みの一例を説明するために４個のメモリセルと夫々に書き込まれる４値書込みデータとの対応関係を示す説明図である。
【図６６】図６４の書込み状態を得るための第１段階として４個のメモリセルを全て消去状態にしたときの当該４個のメモリセルの閾値電圧を示す説明図である。
【図６７】図６４の書込み状態を得るための第２段階として４個のメモリセルを全て消去状態にした後の「書込み１」によって得られるメモリセルの閾値電圧の変化を示す説明図である。
【図６８】図６４の書込み状態を得るための第３段階として「書込み２」によって得られるメモリセルの閾値電圧の変化を示す説明図である。
【図６９】図６４の書込み状態を得るための第４段階として「書込み３」によって得られるメモリセルの閾値電圧の変化を示す説明図である。
【図７０】書込み電圧の印加態様として書き込みパルス幅を漸増させる場合の電圧波形図の一例を示す説明図である。
【図７１】書込み電圧の印加態様として書き込みパルス電圧を漸増させる場合の電圧波形図の一例を示す説明図である。
【図７２】書込みデータを偶数及び奇数ビットに分離する回路の一例を示す論理回路図である。
【図７３】図７２に示される回路の一例動作タイミング図である。
【図７４】図６１のメモリセルアレイ、センスラッチ回路、書込み変換回路及び読出し変換回路の接続態様の一例を示すブロック図である。
【図７５】図７２に示される回路で偶数及び奇数に分離されたデータから「書込み１」〜「書込み３」のためのデータを生成する書込みデータ合成回路の一例論理回路図である。
【図７６】図７５の書込みデータ合成回路による合成結果の一例を「書込み１」〜「書込み３」の夫々に対応して示す説明図である。
【図７７】４値でデータが書き込まれたメモリセルに対する読出し時におけるワード線電位とメモリセルの閾値電圧との関係を示す説明図である。
【図７８】読出しワード線へ印加する電圧の一例波形図である。
【図７９】４値データの読出しの一例を説明するために４個のメモリセルと夫々に書き込まれた４値書込みデータとの対応関係を示す説明図である。
【図８０】図７９に示されるメモリセルに対する「読出し１」によって得られる２値データを示す説明図である。
【図８１】図７９に示されるメモリセルに対する「読出し２」によって得られる２値データを示す説明図である。
【図８２】図７９に示されるメモリセルに対する「読出し３」によって得られる２値データを示す説明図である。
【図８３】読出しデータ合成回路の一例を示す論理回路図である。
【図８４】読出しデータ合成回路の出力結果の一例を示す説明図である。
【図８５】読出しデータ合成回路の出力に基づいて上位ビットと下位ビットを交互に出力する回路の一例回路図である。
【図８６】図８５に示される回路の一例動作タイミング図である。
【発明を実施するための形態】
【００３３】
本発明の一例に係るフラッシュメモリの個々の特徴的な内容を説明する前に、当該フラッシュメモの構成を、「センスラッチを中心としたフラッシュメモリの構成」、「ＡＮＤ型メモリセルアレイ」、「メモリセルに対する電圧印加態様」、「フラッシュメモリのチップ構成」の順に、先ず、概略的に説明する。
【００３４】
〔1-1．センスラッチを中心としたフラッシュメモリの構成〕
図５３にはフラッシュメモリの構成がセンスラッチとプリチャージ回路を主体に示されている。１及び２で示されるものはメモリマットである。メモリマット１，２は電気的に書き換え可能な複数個のメモリセルＭＣ（代表的に１個図示されている）を有する。１個のメモリセルは、コントロールゲート、フローティングゲート、ソース及びドレインを持ち電気的に書き換え可能な１個のトランジスタ（メモリセルトランジスタ）によって構成される。メモリセルＭＣのレイアウト構造は、特に制限されないが、所謂ＡＮＤ型とされる。ＡＮＤ型の構成では、複数個の前記メモリセルトランジスタがそれらに共通のソース及びドレインを構成する夫々の拡散層（半導体領域）を介して並列配置され、ドレインを構成する拡散層は選択トランジスタ１０を介してビット線ＢＬＵに、ソースを構成する拡散層は選択トランジスタ１１を介してソース線１２に結合されている。ＡＮＤ型メモリセル構造の詳細については後で説明する。ＳｉＳは選択トランジスタ１１のスイッチ制御信号、ＳｉＤは選択トランジスタ１０のスイッチ制御信号である。ＷＬはメモリセルＭＣのコントロールゲートに結合されるワード線である。
【００３５】
図５３では夫々のメモリマットに含まれるビット線ＢＬＵ，ＢＬＤを代表的に夫々１本づつ示している。これに呼応して左右のビット線ＢＬＵ，ＢＬＤに共有される一つのセンスラッチ３が代表的に示されている。特に制限されないが、一つのセンスラッチ３に応ずる左右のビット線ＢＬＵ，ＢＬＤに関する構成は当該センスラッチ３を中心に鏡面対称構造とされる。４，５で示されるものはビット線ＢＬＵ，ＢＬＤに設けられたプリチャージ回路である。
【００３６】
前記センスラッチ３は、一対のＣＭＯＳインバータから成るスタティックラッチ、即ち相互に一方のＣＭＯＳインバータの入力端子を他方のＣＭＯＳインバータの出力端子に結合して成る回路によって構成され、一方のＣＭＯＳインバータの出力がプリチャージ回路４を介してビット線ＢＬＵに、他方にＣＭＯＳインバータの出力がプリチャージ回路５を介してビット線ＢＬＤに結合されている。センスラッチ３の動作電源はＳＬＰ，ＳＬＮとされる。センスラッチ３はカラム選択ゲートトランジスタ６，７から供給される書込みデータをラッチし、或いは、読み出し又はベリファイ動作においてセットＭＯＳトランジスタ４３，５３の状態に応じて初期データをラッチ、また、左右のビット線ＢＬＵ，ＢＬＤの状態に応じたセンス動作などを行なう。
【００３７】
前記プリチャージ回路４（５）は、ビット線ＢＬＵ（ＢＬＤ）とセンスラッチ３とを結ぶ信号伝達経路の途中に介在された転送ＭＯＳトランジスタ４０（５０）を有し、このＭＯＳトランジスタ４０（５０）を挟んでセンスラッチ３の入出力端子にゲートが結合されたフィードバックＭＯＳトランジスタ４１（５１）と、前記転送ＭＯＳトランジスタ４０（５０）を挟んでビット線ＢＬＵ（ＢＬＤ）にソースが結合されたＭＯＳトランジスタ４２（５２）とが直列配置され、フィードバックＭＯＳトランジスタ４１（５１）のドレインには電圧ＵＰＣが供給される。
【００３８】
前記ＭＯＳトランジスタ４１（５１）はＭＯＳトランジスタ４０（５０）がオフ状態のときセンスラッチ３の入出力端子のレベルに応じてスイッチ制御される。トランジスタ４２（５２）は信号ＰＣＵ（ＰＣＤ）のレベルに応じてコンダクタンス制御され、それに応じたレベルを電圧ＵＰＣに基づいてビット線ＢＬＵ（ＢＬＤ）に供給する。
【００３９】
上記プリチャージ回路４，５は、読み出し、消去ベリファイ及び書込みベリファイ動作の前にビット線ＢＬＵ，ＢＬＤのレベルを望ましいレベルにプリチャージする。ＭＯＳトランジスタ４Ａ，５Ａはセンスラッチ３のためのリファレンスレベルをビット線ＢＬＵ，ＢＬＤに供給するためのトランジスタである。
【００４０】
図５３において８，９で示されるものは書込み・消去状態を判定するためのＭＯＳトランジスタである。前記ＭＯＳトランジスタ８，９はそのゲートが対応するビット線に、そのソースが接地電位に結合される。図５３に代表的に示された１個のセンスラッチ３を中心としたビット線ＢＬＵ，ＢＬＤに係る構成は実際には多数存在されている。センスラッチ３を挟んで図５３の左側のトランジスタ８のドレインは全て共通接続され、ビット線ＢＬＵに代表される左側のビット線の状態（レベル）に応じた電流ＥＣＵを発生する。同様に、センスラッチ３を挟んで図５３の右側のトランジスタ９のドレインも全て共通接続され、ビット線ＢＬＤに代表される右側のビット線の状態（レベル）に応じた電流ＥＣＤを発生する。特に図示はしないが、電流ＥＣＵ（ＥＣＤ）の変化に基づいてセンスラッチ３の左（右）側の全てのビット線ＢＬＵ（ＢＬＤ）の状態が同じ状態になったかを検出する電流センス型のアンプが設けられている。このアンプは、消去ベリファイ又は書込みベリファイの対象とされる全てのメモリセルが所定のしきい値電圧になったかを検出するのに用いられる。
【００４１】
尚、本明細書に添付された図面においてＰチャンネル型ＭＯＳトランジスタはその基体ゲートに矢印を付してＮチャンネル型ＭＯＳトランジスタと区別して図示してある。
【００４２】
図５４には前記メモリマット１の詳細及びそのＸ系選択回路の一例が示される。例えば前記メモリマット１は、１２８本のワード線ＷＬ(0)〜ＷＬ(127)を一単位とする複数のブロックに分けられ、夫々のブロックにおいて、選択ＭＯＳトランジスタ１１は共通の制御信号ＳｉＳでスイッチ制御され、選択ＭＯＳトランジスタ１０は共通の選択信号ＳｉＤによってスイッチ制御される。図示はしないが、前記メモリマット２も上記同様に構成される。Ｘ系選択回路は、メインデコーダ１７、ゲートデコーダ１８及びサブデコーダ１９によって構成される。サブデコーダ１９は双方のメモリマット１，２毎に設けられ、ワード線と一対一対応されるドライバＤＲＶを備える。ドライバＤＲＶの動作電源はブロック単位でメインデコーダ１７から供給される。メインデコーダ１７は、それに供給されるアドレス信号に従って排他的に一つのブロックに対応される前記ドライバＤＲＶに動作電源を供給する。これとともに、ドライバＤＲＶに動作電源を供給すべきブロックの選択ＭＯＳトランジスタ１１，１０をオン状態に制御する。ゲートデコーダ１８はそれに供給されるアドレス信号に従って各ブロックで１本のワード線を選択する選択信号を前記サブデコーダ１９のドライバに供給する。このＸ系選択回路によれば、一つのブロックを選択し、選択されたブロックの中の１本のワード線を選択レベルに駆動することができる。そのときの駆動レベルは、メインデコーダ１７の出力回路の動作電源によって決定される。メモリマット２のＸ系選択回路も上記同様に構成されている。
【００４３】
前記メモリマット１，２のＸ系選択回路は排他的に何れか一方が選択動作される。例えば、外部から供給されるアドレス信号の最下位ビット又は最上位ビットに従ってメモリマット１のメインデコーダ１７又はメモリマット２のメインデコーダ１７の何れか一方が動作可能にされる。
【００４４】
〔1-2．ＡＮＤ型メモリセルアレイ〕
図５５には上述のＡＮＤ型メモリセルのレイアウト構成例が示される。同図に示されるメモリセルは２層のメタル配線層を用いるプロセスによって形成される構造とされ、メモリセルＭＣ及び選択ＭＯＳトランジスタ１０，１１は並列された縦方向の拡散層と横方向に延在されたポリシリコン等から成るコントロールゲートとの交差位置に形成されている。フラッシュメモリのメモリセルＭＣは例えばＰ型基板上に構成されたＮチャンネル型ＭＯＳトランジスタとされる。このメモリセルＭＣは、フローティングゲート（Floating Gate）内の電荷の有る／無しにより情報を保持する事が可能である。例えばフローティングゲート内に電荷が注入されるとメモリセルのしきい値電圧は上昇する。コントロールゲートに印加する電圧値以上にしきい値電圧を上げる事によりメモリ電流は流れなくなる。またフローティングゲートから電荷を放出することによってそのしきい値電圧は低下される。コントロールゲートに印加される電圧値よりもしきい値電圧が低くされることにより、メモリ電流が流れるようになる。例えば電流の流れる状態を"０"情報保持状態（例えば書き込み状態）、電流の流れない状態を"１"情報保持状態（例えば消去状態）と割り当てる事が可能となる。これは定義上の事であるので、逆の定義を与えても何ら問題は無い。
【００４５】
この明細書で一例として説明しているフラッシュメモリのメモリセルはＡＮＤ型であるが、メモリセル構造はそれに限定されるものではなく、図５６に示されるＮＡＮＤ型、図５７に示されるＮＯＲ型、図５８に示されるＤＩＮＯＲ型等の別の構造を採用することも可能である。何れの構造であってもフラッシュメモリのメモリセルは基本的には全て同じ構成を備えているが、図５５乃至図５８に示されるようにアレイ状に配置したとき、夫々特徴が現われる。ＮＯＲ型はメモリ毎にビット線（メタル配線層）とのコンタクトが必要であるため占有面積を小さくすることが難しいが、ＮＡＮＤ型、ＤＩＮＯＲ型、ＡＮＤ型ではビット線とのコンタクトをブロック毎に配置すれば済むので、占有面積の低減を図ることができる。
【００４６】
〔1-3．メモリセルに対する電圧印加態様〕
図５９にはメモリ動作に応じてメモリセルＭＣに印加すべき電圧状態の一例が示される。メモリ動作はリード（read）、書込み（program）及び消去（erase）に大別される。書込みベリファイ及び消去ベリファイはリードと実質的に同じである。Ｖｇはコントロールゲートに印加される電圧（コントロールゲート電圧）、Ｖｄはドレインに印加される電圧（ドレイン電圧）、Ｖｓはソースに印加される電圧（ソース電圧）を意味する。
【００４７】
読み出し動作では、コントロールゲートに読み出し電位（Ｖｃｃ）が印加され、これによってメモリセルに電流が流れるか流れないかによって、メモリセルの記憶データが判定される。読み出し動作を図５３の構成に従って説明する。例えば、メモリマット１（ＭＡＴＵ）に含まれるメモリセルＭＣに対して読み出しを行う場合、非選択メモリマット２（ＭＡＴＤ）側のセットＭＯＳトランジスタ５３をオン状態にしてセンスラッチ３を活性化し、当該センスラッチ３のビット線ＢＬＵ側にハイレベルをラッチさせる。そして、ＲＰＣＵを１Ｖ＋Ｖｔｈに制御してビット線ＢＬＵを１Ｖにプリチャージする。一方、非選択マット２側ではＲＰＣＤを０．５Ｖ＋Ｖｔｈに制御してビット線ＢＬＤを０．５Ｖにプリチャージする。０．５Ｖはセンスラッチ３によるセンス動作におけるリファレンスレベルとされる。ワード線選択動作の後、トランスファＭＯＳトランジスタ４０，５０がオンされ、この時、センスラッチ３は、ビット線ＢＬＵのレベルが０．５Ｖよりも高いか低いかをセンスして、メモリセルＭＣからの読み出しデータをラッチする。
【００４８】
消去においては、コントロールゲートに正電圧（１２Ｖ）を印加しメモリセルのドレイン・ソースに負電圧（−４Ｖ）を印加する。このことによりフローティングゲート内にトンネル効果を用いて電荷を注入する事が可能となる。その結果、メモリセルＭＣのしきい値電圧が上昇する。例えば消去動作は、上記電圧印加状態を間欠的に実行し、メモリセルのしきい値電圧が消去ベリファイのためのワード線電位を越えるまで行なう。図５４の構成において消去は例えばワード線単位で行われる。消去対象とされるワード線を含むブロックのメモリセルには選択ＭＯＳトランジスタ１０，１１を介して夫々同じドレイン電圧とソース電圧が印加されることになる。従って、選択ブロックに含まれる非選択メモリセルには、Ｖｇ＝０Ｖ、Ｖｄ＝Ｖｓ＝−４Ｖが印加されることになる。非選択ブロックの選択ＭＯＳトランジスタ１０，１１はオフ状態にされるから、非選択ブロックに含まれるメモリセルのドレインとソースはフローティング即ちオープン（open）にされ、コントロールゲート電圧は０Ｖにされる。消去ベリファイは、ベリファイのためのワード線電圧が異なるだけで前記読み出し動作と実質的に同じである。
【００４９】
書き込みにおいては、コントロールゲートに負電位（−１０Ｖ）を印加し、ドレインには正電圧（４Ｖ）を与え、ソースはフローティングにされる。書込み対象メモリセルとワード線を共有する書込み非対象メモリセルのドレインには０Ｖが印加される。このことによりドレインに正電圧が印加されたメモリセルのみ電荷の放出が行なわれる。その結果、メモリセルのしきい値電圧は減少する。書き込み動作は所望メモリセルのしきい値電圧が書込みベリファイのためのワード線電位より低くなるまで行われる。書き込み動作を図５３の構成に従って説明すれば、前記カラム選択ゲート６，７から入力された書込みデータがセンスラッチ３にラッチされた後、ＰＣＵ及びＰＣＤをハイレベルに制御し、これによってセンスラッチ１３のハイレベル側入出力ノードに結合するビット線（例えばＢＬＵ）がハイレベルにプリチャージされる。そしてトランスＭＯＳトランジスタ４０，５０をオンにすることにより、ハイレベルにプリチャージされているビット線ＢＬＵに書き込み用ドレイン電圧がセンスラッチ３から供給される。ビット線をメモリセルＭＣのドレインに接続する選択ＭＯＳトランジスタ１０は、信号ＳｉＤにより書込み非選択マット側では全てカットオフ状態にされている。これにより、書込み選択マット側で書込み電圧が印加されたコントロールゲートに接続するメモリセルのうち、ビット線に書込み電圧が供給されたメモリセルのしきい値電圧が低下される。この後の書込みベリファイ動作も前記読み出しと同様に行われる。
【００５０】
〔1-4．フラッシュメモリのチップ構成〕
図６０には上記フラッシュメモリの全体的な構成をブロック図で示す。同図に示されるフラッシュメモリは、特に制限されないが、公知の半導体集積回路製造技術によって単結晶シリコンのような１個の半導体基板に形成されている。
【００５１】
図６０においてＭＡＴＵで示されるものは前記メモリマット１を構成し、ＭＡＴＤで示されるものは前記メモリマット２を構成する。各メモリマット１，２において１本のワード線負荷容量を分散させるために、同一アドレスに配置されるワード線は２分割され、夫々にサブデコーダ１９が割り当てられている。特に制限されないが、このフラッシュメモリは、特に制限されないが、ディスク装置互換のＡＴＡファイルメモリに適用して有効なフラッシュメモリとされる。同一アドレスに配置されるワード線は（２０４８＋１２８）×２ビットのメモリセルを有し、それは５１２バイトのセクタと１６バイトのセクタ管理エリアに対応される。その内の１６バイト分は冗長用とされている。
【００５２】
図６０において６０で示されるものはカラム系回路である。このカラム系回路６０は、前記センスラッチ３、プリチャージ回路４，５、カラム選択ゲート６，７等の図５３で示したカラム系回路、そしてカラム選択ゲートをスイッチ制御するためのカラムデコーダを含む回路ブロックとされる。カラム選択ゲート６，７は夫々８対のコモンデータ線６１とインタフェースされ、カラムデコーダは８対のコモンデータ線６１とビット線ＢＬＵ，ＢＬＤとの導通をカラムアドレス信号などに従って制御する。コモンデータ線６１は入出力切換え回路６２を介してメインアンプ（ＭＡ）６３及び入出力バッファ６４に結合される。入出力バッファ６４はボンディングパッドのような外部接続電極（Ｉ／Ｏ）を介して外部とインタフェースされる。
【００５３】
前記入出力バッファ６４はメモリデータの入出力、アドレスデータの入力、及びコマンドデータの入力に兼用される。メモリセルへの書き込みデータは入出力切換え回路６２を介してコモンデータ線６１に供給される。メモリマットからの読み出しデータは入出力切換え回路６２を介してメインアンプ６３に供給され、そこで増幅されて入出力バッファ６４に与えられる。
【００５４】
入出力バッファ６４に与えられたアドレスデータはアドレスカウンタ６５に供給され、アドレスジェネレータ６６を経て、メインデコーダ１７、ゲートデコーダ１８及びカラムデコーダ等に供給される。特に制限されないが、アドレスカウンタ６５は初期値がアドレスデータとしてプリセットされ、コマンドにてフラッシュメモリに指示される動作モードに応じて順次インクリメント等される。インクリメント等されたアドレスはアドレスジェネレータ６５から出力される。メモリマット１，２はデータ線に１６バイト配置された予備ビット有し、冗長ヒューズ回路６７のプログラム状態に従って救済回路６８が欠陥ビットのアドレスを冗長アドレスに置き換えてアドレスジェネレータ６６に与え、これによって欠陥ビットが予備ビットに置き換えられる。アドレスジェネレータ６６はその入力に従って内部相補アドレス信号を形成し、アドレス信号をメインデコーダ１７、ゲートデコーダ１８及びカラムデコーダ等に割り振る。
【００５５】
８６で示されるもはステイタスレジスタ及びテスト系回路であり、フラッシュメモリの内部状態を入出力バッファ６４を介して外部に出力可能にされ、また、バッファ８７を介してレディー／ビジー・ステータスを外部に出力させる。
【００５６】
外部からシリアルククロックＳＣが供給されるデータ入出力制御回路７０は、前記メインアンプ６３、入出力切換え回路６２、及びアドレスカウンタ６５と前記入出力バッファ６４との間での入出力をシリアルクロックＳＣに同期化させる。
【００５７】
制御信号入力バッファ７１には外部制御信号が供給される。外部制御信号は、フラッシュメモリへの情報入力を指示するライトイネーブル信号ＷＥＢ、フラッシュメモリの動作を指示するチップイネーブル信号ＣＥＢ，フラッシュメモリの情報出力を指示するアウトプットイネーブル信号ＯＥＢ、フラッシュメモリに供給されるべき情報がコマンドかデータかを指示する信号ＣＥＤ、及びリセット信号ＲＥＳＢとされる。フラッシュメモリの内部動作はクロックジェネレータ７２から出力されるクロック信号に同期される。
【００５８】
入出力バッファ６４から供給されるコマンドは、コマンドデコーダ７３に供給される。コマンドは、メモリセルに対する読み出し（リード）、書き込み（プログラム）及び消去（イレーズ）等に関するコマンドである。プログラム及びイレーズコマンドが指示する内容にはベリファイも含む。コマンドに基づく内部制御は所謂マイクロプログラム制御と類似の制御方式とされる。すなわち、ＲＯＭはコマンドに応じた処理を規定するための制御コード（ステート情報）の系列をコマンド毎に保有している。コマンドデコーダ７３によるコマンドのデコード結果は、そのコマンドに対応される制御コード系列のＲＯＭ７５内の先頭アドレスとされる。このコマンド解読結果がＲＯＭ７５に与えられることにより、そのコマンドに対応される制御コード系列の先頭の制御コードがＲＯＭ７５から読出される。読出された制御コードはＲＯＭデコーダ７６でデコードされ、書き込み消去判定回路８０、直接系制御回路８１及び電源制御回路８２に動作制御信号を供給する。制御コード系列の第２番目以降の制御コードの指定は前記先頭制御コードのＲＯＭアドレスに基づいてＲＯＭ制御系回路７４が行なう。制御コードの実行順序を条件分岐させたりすることを考慮する場合には、マイクロプログラム同様に制御コードに次の制御コードのＲＯＭアドレスを保有させるようにしてもよい。
【００５９】
前記電源制御回路８２はリード、プログラム及びイレーズの動作に必要な各種回路の動作電源の供給制御を行なう。動作電源は、例えばシリコンのバンドギャップ等に基づいて基準電圧を発生する基準電圧発生回路８５、この基準電圧発生回路８５で形成された基準電圧を用いて−１０Ｖ等の電源を生成するチャージポンプ回路８４、そしてメインデコーダ等の各種回路の動作電源を、リード、イレーズ、プログラム等の動作に応じて切換える電源切換え回路８３によって形成される。書き込み消去判定回路８０は図５３で説明したＥＣＵ，ＥＣＤに基づいて書き込み動作や消去動作の完了を判定する回路である。判定結果は、ＲＯＭ制御系回路７４に供給され、一連の書き込み動作又は消去動作の次の制御ステップでの制御内容に反映される。直接系制御回路８１はワード線選択タイミングやカラム選択タイミングを制御する。
【００６０】
前記ＲＯＭデコーダ７６でデコードされた制御情報が、書き込み消去判定回路８０、直接系制御回路８１及び電源制御回路８２などに供給されることによって実現される動作は、以下に説明する動作モードに従った書き込み動作や書き直し動作などを実現するための制御動作を含むことになる。このような制御をハードワイヤードロジックによって実現することも可能である。
【００６１】
次に、概略的な構成が明らかにされた上記フラッシュメモリを基本にして、幾つかの特徴的な内容を持つフラッシュメモリについて説明していく。
【００６２】
〔２．粗い書込みモードと高精度書込みモード〕
図１に示されるフラッシュメモリＦＭＲＹ１は粗い書込みモードと高精度書込みモードを有する。即ち、このフラッシュメモリＦＭＲＹ１は、書込みパルスの１パルス当たりのしきい値電圧の変化量が異なる動作モードを持つ。
【００６３】
書き込み動作では前述のような書き込み電圧が書き込み対象メモリセルに与えられるが、書き込み状態のメモリセルのしきい値電圧を比較的高精度に決定するため、若しくは書き込み状態のメモリセルのしきい値電圧のばらつきを小さく抑えるために、メモリセルにしきい値電圧が所定のしきい値電圧に到達するまで、書き込みパルスによって規定される時間毎に書き込み電圧を与えていく。当然、書き込み電圧を与える毎にベリファイが行なわれる。１回の書き込みでメモリセルのしきい値電圧の変化量が概ね一定になるように、前記書き込みパルス幅は、図４３の（ａ）に示されるように、書き込みワード線電圧が一定の場合、順次長くされる。図４３の（ｂ）のように書き込みパルス幅を一定にする場合には、書き込みワード線電圧を順次高くする。図４３の（ｃ）に示されるように書き込み電圧と書き込みパルス巾の双方を変化させることも可能である。
【００６４】
例えば図１のフラッシュメモリＦＭＲＹ１は、例は図４３の（ａ）に対応されるように、書き込みワード線電圧を一定にして、書き込みパルス幅（時間）を順次増やすようにするものである。そこで、書込み１パルスあたりのメモリセルしきい値電圧の変化量がΔVth1である第1の書込みモード（粗い書込み）のための第１の書込み電圧印加用パルス列発生手段１００と、しきい値電圧変化量がΔVth2である第2の書込みモード（高精度書込み）のための第２の書込み電圧印加用パルス列発生手段（高精度書込み）１０１を備える。書込みパルスと書込みパルスとの間にしきい値電圧のベリファイ動作が行われることになる。
【００６５】
図２の（ａ），（ｂ）には第１の書き込みと第２の書き込みの特性が示されている。本明細書において時間軸のスケールは全て対数とされる。前述のように、書き込みパルス幅は書込み動作が進むと共にそれぞれ長くされる。
【００６６】
図２の（ｃ），（ｄ）には第１の書き込みと第２の書き込みによるメモリセルＭＣのしきい値分布が示される。
【００６７】
このとき、消去状態の最低しきい値Vt2又はVt6と書込み状態の最高しきい値Vt3又はVt7との電圧差（セルウインドウ）を固定して考えた場合、メモリセルＭＣのしきい値電圧を変化させるのに必要なパルスの数は、ΔVth1の場合の方がΔVth2の場合よりも少ない。このため、第1の書込電圧印加用パルス列発生手段（しきい値の変化量ΔVth1）１００を用いた場合のベリファイ回数は、第2の書込電圧印加用パルス列発生手段（しきい値の変化量ΔVth2）１０１を用いた場合よりも少なくなる。書込み時間は、メモリセルそのもののしきい値電圧を変化させる時間とベリファイを行なう時間などのオーバーヘッド時間との和となる。よって、ベリファイ回数が少ないほうがオーバーヘッド時間が少ないので書込み時間は短くなる。
【００６８】
前記第1及び第２の書込電圧印加用パルス列発生手段１００，１０１は、特に図示はしないが、キャリー伝達型のバイナリカウンタを用い、これにプリセットしたデータの計数結果が全ビット“１”にされるまでの時間によってパルス幅を制御することができる。このとき、第1及び第２の書込電圧印加用パルス列発生手段１００，１０１は夫々別個のハードウェアによって構成してもよいが、第１及び第２の書き込みを並列的に行なう必要がない場合には、そのようなバイナリカウンタは共通化でき、動作モードに応じて順次設定するプリセットデータの減少幅を相違させるように制御すればよい。その構成を図６０の構成と対応させるなら、前記プリセットデータはＲＯＭデコーダ７６から出力される。プリセットデータの値は、コマンドデコーダ７３がコマンドを解読して判定する第１の書き込みモード又は第２の書込みモードに従って決定される。前記バイナリカウンタは電源制御回路８２に含まれ、ここで生成された書込みパルスに従って、電源切換え回路８３が、書込みパルスによって規定される時間毎に書込みワード線電圧をＸ系選択回路に与える。
【００６９】
フラッシュメモリＦＭＲＹ１は、第１の書き込み電圧印加用パルス列発生手段（第1のパルス列発生手段とも称する）１００による書き込みの時に用いる第1のベリファイ電圧発生手段１０２、第２の書き込み電圧印加用パルス列発生手段（第2のパルス列発生手段とも称する）１０１による書き込みの時に用いる第2のベリファイ電圧発生手段１０３を有する。何れを用いるかは切換え手段１０４の制御によってスイッチＳ１，Ｓ２で切換えられる。スイッチで選択された電圧は、動作モードに応じて、Ｘ系選択回路のワード線駆動電圧として用いられる。
【００７０】
図２の（ｃ），（ｄ）に示すようにしきい値変化量がΔVTh1の場合は書込み状態のしきい値分布はVt3〜Vt4となり、これはΔVTh2の場合の書込み状態のしきい値分布であるVt7〜Vt8よりも大きくなるから、第１の書き込みに利用するベリファイ電圧と第２の書き込みに利用するベリファイ電圧とを分ける方が得策だからである。メモリセルＭＣの特性、若しくはセルウインドウの電圧によっては分けなくてもよい場合もある。
【００７１】
特に、上記のようにベリファイ電圧を第１の書き込みと第２の書き込みで分ける場合、デプリートするのを避けるためには、書込み時のベリファイ電圧はVt3（第1のベリファイ電圧）＞Vt7（第2のベリファイ電圧）と設定することが望ましい。図６０の構成に対応させるならば、そのような第１及び第２の書込みベリファイ電圧はチャージポンプ回路８４によって８７４によって形成され、何れの書込みベリファイ電圧を用いるかは、第１の書込みコマンド又は第２の書込みコマンドの解読結果に従ってＲＯＭデコーダ７６から指示され、それに従って、電源切換え回路８３が行なう。
【００７２】
特に制限されないが、消去動作についても消去パルスを用いて段階的にメモリセルのしきい値電圧を上げていく動作が行なわれるが、その場合における消去パルスの１パルス当たりのしきい値電圧変化量は書き込み動作モードのような選択は行なわれない。第１の書込みモードの消去動作では、Ｖｔ２となるような消去ベリファイ電位がワード線に与えられる。また、第２の書込みモードの消去動作ではＶｔ６となるような消去ベリファイ電位がワード線に与えられる。これは、通常の書込みが第１の書込みモードで行われ、その後の書直し時には第２の書込みモードで書込みが行われるため、そのような制御が可能となる。即ち、同一ワード上に書直すためには、そのワード線のメモリセルを一度消去状態にする必要がある。この時、消去ベリファイ電位を変えてそのしきい値電圧分布をＶｔ５〜Ｖｔ６となるように制御する。
【００７３】
これらのことから、情報保持時の電界は第２の書き込みモードを経た方が小さく、情報保持時間は長い。換言すれば、記憶情報の保持性能若しくは保持期間は、第２の書き込みモードを経た方が優れていると言うことができる。
【００７４】
読出し動作時におけるワード線選択レベルは、セルウインドウの幅、Vt3とVt7との相違、Vt2とVt6との相違等を考慮して、共通化することもできる。第１の書き込みモードと第２の書き込みモードとが適用されるメモリ領域が物理的に分けられている場合には、読み出し動作のワード線選択レベルを当該領域毎に最適に相違させるようにしてもよい。
【００７５】
図３には前記第１の書込みモード及び第２の書込みモードにおける書込み動作の一例フローチャートが示される。即ち、書込みコマンドが入力されると、コマンドデコーダ７３でそのコマンドがデコードされ、第1の書込みモードか第2の書込みモードかが判定される。ＲＯＭデコーダ７６のデコード信号によって書込みパルス時間の増分値（Δt1、Δt2）及びベリファイ電圧（Vt3、Vt7）が決定される。第1の書込みモードでは、書込みパルス時間の増分値がΔt1、ベリファイ電圧がVt3にされる。第2の書込みモードでは、書込みパルス時間の増分値がΔt2、ベリファイ電圧がVt7とされる。ベリファイ電圧Vt3、Vt7は図２の（ｃ），（ｄ）で説明した通りである。書込みパルス時間の増分値Δt1、Δt2については、Δt1＞Δt2とされ、第１の書込みモードにおける１書込みパルス期間におけるしきい値電圧の変化量は、第２の書込みモードのそれよりも大きくされている。その他の動作は、第１及び第２の書込み動作相互間で同一である。この事からも明らかなように、書込みモードが２種類あっても、それによって増大することになる物理的な回路規模は非常に少ないことを理解することができるであろう。前述のように、書込みパルス時間の増分値は、これを発生するカウンタ値を書込みモードに応じて変えればよい。また、ベリファイ電圧は、一つの電圧発生回路の複数個の電圧出力ノードの電圧の中から一つを選択するスイッチＳ１，Ｓ２のオンオフで選択制御できる。或いは、電圧発生回路の発生電圧そのものを変えて制御してもよい。
【００７６】
上記のように、第１の書き込みモードによる書き込み動作は第２の書き込みモードに比べて速いが、書き込まれたデータの信頼性（データ保持期間）という点では第２の書込みモードの方が優れている。これを考慮したとき、図１のフラッシュメモリＦＭＲＹ１は、第1の書込み電圧印加用パルス列発生手段１００で書き込んだデータを、第2の書込み電圧印加用パルス列発生手段１０１を用いて書き直すための制御手段（書き直し制御手段）１０５を有する。すなわち、書込み時間の短い第1の書き込みモードで書き込んだ後に、しきい値電圧の分布が狭くできる第2の書き込みモードで書き直す。書き直しは、メモリセルＭＣからデータを読み出し、これをセンスラッチ３に反転して格納し、これに基づいて第２の書き込みモードで書込みを行なえばよい。
【００７７】
図４には書き直し動作の一例フローチャートが示される。第１の書込みモードでは、書込みデータがロードされ、それがセンスラッチ３にラッチされる。最初の書込みパルス幅はt1とされる。ベリファイ電圧は前記Vt3とされる。ベリファイがOKとなるまで、Δt1ずつパルス幅を長くして書込みパルスを更新しながら、書込み、ベリファイを繰り返す。Δt1はメモリセルＭＣのしきい値電圧とlog表示の書込み時間の関係において、しきい値電圧の変化量ΔVth1が１回の書込みパルス当たり一定となるように設定される。これによって高速に書込み動作を完了出来る。
【００７８】
書き直しモードは、第１の書込みモードで書込まれたデータを第２の書込みモードで書き直しする動作モードである。書直しモードでは、第１の書込みモードで書込まれたデータをセンスラッチ３に読み出す。これは通常の読み出し動作と同じである。通常の読み出しを行なってセンスラッチ３で増幅されてこれにラッチされたデータは、書込みにとっては逆の電圧となっているので、反転する必要がある。最初の書込みパルス幅はt1とされる。ベリファイ電圧はVt7とされる。ベリファイがOKとなるまで、Δt2ずつパルス幅を長くして書込みパルスを繰返し印加する。Δt2はメモリセルのしきい値電圧とlog表示の書込み時間の関係において、しきい値電圧の変化量ΔVth2が１回の書込みパルス当たり一定となるように設定される。Vt3>Vt7、ΔVth1＞ΔVth2であるので、第１の書き込みよりも低速となるが、保持時の電界は小さく、データ保持時間長くなり、書込まれたデータ保持の信頼性が向上される。
【００７９】
図１に示される前記切換え手段１０４、スイッチＳ１，Ｓ２、書換え制御手段１０６、書き直し制御手段１０５は、図６０のコマンドデコーダ７３、ＲＯＭ制御系回路７４、ＲＯＭ７５、ＲＯＭデコーダ７６、書込み消去判定回路８０、電源切換え回路８３電源制御回路８２等によって構成されることになる。
【００８０】
図５には書き込みパルス幅を一定にして書き込みワード線電圧を絶対値的に順次高くして書込みを行なう形式のフラッシュメモリに第１の書込みモードと第２の書込みモードを適用した場合のブロック図が示される。
【００８１】
図５に示されるフラッシュメモリＦＭＲＹ２も粗い書込みモード（第１の書込みモード）と高精度書込みモード（第２の書込みモード）を有し、それらは、書込みパルスの１パルス当たりのしきい値電圧の変化量が異なる動作モードとされる。図１との相違点は、図４３の（ｂ）のように書き込みパルス幅を一定にして、書き込みワード線電圧を絶対値的に順次高くして書込みを行なうことである。そこで、書込み１パルスあたりのメモリセルしきい値電圧の変化量がΔVth1である第1の書込み（粗い書込み）のための第１の書込み電圧列発生手段１２０と、しきい値電圧変化量がΔVth2である第2の書込み（高精度書込み）のための第２の書込み電圧列発生手段（高精度書込み）１２１を備える。
【００８２】
図６の（ａ），（ｂ）には第１の書き込みと第２の書き込みの特性が示されている。前述のように、個々の書き込みパルス幅（書込み時間）は一定であり、書込み動作が進むに従って書込み電圧が漸増される。
【００８３】
図６の（ｃ），（ｄ）には第１の書き込みと第２の書き込みによるメモリセルＭＣのしきい値分布が示される。
【００８４】
このフラッシュメモリＦＭＲＹ２も図１の場合と同様に、第1のパルス列発生手段による書込み動作時に用いる第1のベリファイ電圧発生手段１０２、第2のパルス列発生手段による書込み動作時に用いる第2のベリファイ電圧発生手段１０３を有する。それらは、前述と同様に、書込みモードに応じて切換え手段１０４で切換えられる。
【００８５】
このフラッシュメモリＦＭＲＹ２の場合、図３及び図４で説明したフローチャートにおいて、書込みパルス時間の増分を変化させる代わりに、書込み電圧の絶対値の増分を変化させれば、同様の制御が可能にされる。図６０の構成との対応は図１の場合と同様であるからその説明は省略する。
【００８６】
図７は第１の書込みモードと第２の書込みモードを指定するための条件を設定する設定手段を有するフラッシュメモリＦＭＲＹ３のブロック図が示される。すぅなわち、図４で説明した書直しモードに代表されるように、第１の書込みモードと第２の書込みモードを有する場合に、最初に第１の書込みモードで粗く書いた後、第２の書込みモードで高精度に書換える手法を採る代わりに、ΔVTh1のモード（粗い、第1の書込みモード）とΔVTh2のモード（高精度、第2の書込みモード）とを特定の条件で切り換えて用いることも可能である。その条件は切換え条件設定手段１３０に設定される。
【００８７】
図８には切換え条件が例示されている。例えばメモリセルＭＣの特性劣化の程度がさほど進んでいないと考えられる書換え回数１万回程度までは第１の書込みモードとして書込み動作を最優先させ、それ以降はメモリセルの特性劣化による影響を考慮して第２の書込みモードとする。そのための書換え条件設定手段１３０は切換えを実行するときの書換え回数が設定される。このとき、書換え回数は、例えば、メモリマットに割り当てられた管理領域に保存され、切換え手段１０４はタイマ等を介して定期的にその書換え回数が設定条件を超えたかを判定し、超えた場合には、外部から書込みモードが指示されたときは、第１の書込みモードから第２の書込みモードにする。またタイマ等を利用してデータ保持期間によって切換えることも可能である。また、ブロック、セクタ（例えばワード線毎の記憶領域）等の記憶領域を指定条件とすることができる。その条件はそれら領域のメモリアドレスによって与えることができる。この場合、切換え手段は、書込みアドレスと設定された条件アドレスを比較して、第１の書込み又は第２の書込みを選択する。アドレスの設定のために切換え条件設定手段１３０にはヒューズプログラム回路を採用することができる。或いは、フラッシュメモリのチップ単位で条件を設定することができる。例えば、第１の書込みモードが指定されているチップは、外部から書込み動作が指示されると、第１の書込みモードで書込みを行なう。この場合の切換え条件設定手段１３０はアルミマスタスライスなど、製造プロセスで配線パターンマスクの変更で条件設定される形式が能率的である。
【００８８】
図９には書込み電圧パルス幅を第１の書込みモードと第２の書込みモードで同一とし、書込み電圧を第１の書込みモードと第２の書込みモードで相互に相違する一定電圧とする場合の例が示される。即ち、第１の書込みモードと第２の書込みモードに共用されるパルス列発生手段１４０と、第１の書込み電圧発生手段１４１と、第２の書込み電圧発生手段１４２とが設けられている。第１の書込み電圧発生手段から出力される一定の第１の書込み電圧ＶＢと、前記第２の書込み電圧発生手段１４２で発生される第２の書込み電圧ＶＡを切換え手段１４３によりスイッチＳ１，Ｓ２で選択し、選択された書込み電圧がパルス列発生手段１４０に与えられる。パルス列発生手段１４０は、与えられた電圧のパルス列を書込み電圧として、Ｘ系選択回路に出力する。
【００８９】
第1の書込みモードでは書込み電圧の絶対値はVBであり、第2の書込みモードでは書込み電圧の絶対値はVAである（VB>VA）。
【００９０】
この時の書込み特性としては、図１０の（ａ），（ｂ）に示されるように、書込み時間（対数スケール）に対するしきい値電圧の変化の傾きが双方共にＫ１で変わらない場合を想定する。このとき、VB>VAであるから、第１の書込みモードでは最初の書込みパルスによるしきい値の変化量は、第２の書込みモードに比べて大きくなる。したがって、目的のしきい値電圧までの書込みパルスの印加回数は第１の書込みモードの方が第２の書込みモードに比べて少なくなる。即ち、書込み動作を高速化できる。
【００９１】
また、図１０の（ｃ），（ｄ）に示されるように書込み時間（対数スケール）に対するしきい値電圧の変化の傾きが、第１に書込みモードの方が第２の書込みモードに比べて大きくなる（K2>K1）場合を想定する。実際にはメモリセルＭＣの物理的な特性から一般にそうなる場合が殆どであると考えられる。第１の書込みモードでは書込み電圧がVBでは傾きがK2であり、第２の書込みモードでは書込み電圧がVA での傾きがK1と異なり、Ｋ１＞Ｋ２、ＶＢ＞ＶＡの時、最初の書込みパルス電圧によるしきい値の変化は前述のように第１の書込みモードの方が第２の書込みモードより大きくされ、しかも、１回の書込みパルス電圧によるしきい値電圧の変化量もVBではΔVth2となり、VA でのΔVth1よりも大きくされる。このため、目的のしきい値電圧までの書込みパルスの印加回数は第１の書込みモードの方が第２の書込みモードに比べて少なくなる。即ち、書込み動作を高速化できる。
【００９２】
図９の構成によって得られる図１０の（ｅ），（ｆ）に示されるしきい値電圧分布は、図１の構成による場合と同じ傾向にされる。
【００９３】
図９の構成において第１の書込み電圧発生手段１４１及び第２の書込み電圧発生手段１４２は、図６０の構成におけるチャージポンプ回路８４で実現され、切換え手段１４３及びパルス列発生手段１４０は図６０の電源切換え回路８３及び電源制御回路８２、そしてそれらを制御するコマンドデコーダ７３、ＲＯＭ制御回路７４、ＲＯＭ７５及びＲＯＭデコーダ７６によって構成することができる。
【００９４】
尚、図示は省略するが、図５及び図６で説明したように、書込みパルス幅を一定とし、書込み電圧を次第に増加せせる形式で書込みを行なう場合には、書込み電圧列を第1の書込みモードと第2の書込みモードで相互に同一とし、パルス電圧幅を、第1の書込みモードと第2の書込みモードで相違させることができる。この場合における書込み動作の傾向は図１０の場合と類似とされる。
【００９５】
図１１には第２書込みモードによる高精度書込みを多値書込みとするフラッシュメモリの一例が示される。図１２には２値書込みと多値書込みの夫々におけるメモリセルのしきい値分布が示される。
【００９６】
図１１に示されるフラッシュメモリＦＭＲＹ５において第1の書込み電圧印加用パルス列発生手段１５０によって、図１及び図２で説明した第１の書込みモードと同じように粗く書き込むための書込みパルス電圧を発生する。これによる書込みデータは図１等で既に説明したものと同様に、2値である。このとき、消去
レベルはVt1〜Vt2であり、書込みレベルはVt3〜Vt4とされる。第2の書込み電圧印加用パルス列発生手段１５１は図１及び図２で説明した第２の書込みモードと同じように高精度に書き込むための書込みパルス電圧を発生する。この場合の書込みデータは多値、例えば４値とされる。多値の書込みのために図１１ではビット線の端に多値用のデータバッファ１５２、１５３が設けられている。多値書込みされたメモリセルのしきい値電圧分布は、消去レベルがVt5〜Vt6であり、書込みレベルは３値あり、Vt7〜Vt8、Vt9〜Vt10、Vt11〜Vt12とされる。
【００９７】
第１のベリファイ電圧発生手段１５４は第１の書込みモードによる２値書込みのためのベリファイ電圧を発生する。第２のベリファイ電圧発生回路１５５は第２の書込みモードによる多値書込みのためのベリファイ電圧を発生する。
【００９８】
選択制御手段１５６は、第１の書込みモードによる２値書込みでは第１の書込み電圧印加用パルス列発生手段１５０からの書込みパルス電圧を選択し、第２の書込みモードによる多値書込みでは第２の書込み電圧印加用パルス列発生手段１５１からの書込みパルス電圧を選択する。選択制御手段１５７は、第１の書込みモードによる２値書込みでは第１のベリファイ電圧発生手段１５４からのベリファイ電圧を選択し、第２の書込みモードによる多値書込みでは第２のベリファイ電圧発生手段１５５からのベリファイ電圧を選択する。
【００９９】
2値書込みモードのVt2は多値書込みモードのVt6と等しく、Vt3はVt7と等しい場合がある。2値モードは粗く書き込む第１の書込みモードとされる。粗い書き込みができるのは、多値モードのVt7〜Vt12のなかにVt3〜Vt4のみを設ければ良いからである。多値モードではしきい値分布を狭くする必要があるので書き込みパルスの１パルス当りのしきい値電圧変化量を小さくする必要があり、書込み動作は遅くなるが、記憶容量は２倍となる。
【０１００】
多値書込みの詳細については後で説明するが、例えば一つのメモリセルの記憶データを４値とする場合、２値データ２ビットが一つのメモリセルの４値の記憶データを構成することになる。したがって、書込みでは、２ビットのデータをデコードし、そのデコード結果に従ってVt7，Vt9，Vt11のどこまでを目標にして書込みを続けるかが制御される。これに呼応して、書込みベリファイ電圧も前記デコード結果に従って例えばVt7，Vt9，Vt11の中から一つが選択される。読み出しでは、ワード線レベルがVt6〜Vt7，Vt8〜Vt9，Vt10〜Vt11の間の電圧（Vr3，Vr2，Vr1）に夫々切換えられ、夫々の場合で得られる読み出しデータをエンコードして、夫々２値の２ビットのデータに変換する。多値用データバッファ１５２，１５３は一つのメモリセルに対する３回の読み出しに際して先の読み出しデータを退避するラッチ回路である。これらの制御は書換え制御手段１５９Ａで行なわれ、前記デコードやエンコードはデータ変換回路１５８で行なわれる。
【０１０１】
また、多値書込みか２値書込みかは前述の説明通り、コマンドで任意に指定することが可能である。また、書直し制御手段１５９Ｂを用いて、最初２値で高速に書込んだデータを、後から多値で書直すという動作を選択することも可能である。
【０１０２】
図１３には２値で書込んだデータを多値で書直す時の動作例が示される。例えばワード線ＷＬ１上のメモリセルの２値データを読出して一旦前記バッファ１５２に保持する。次にワード線ＷＬ２上のメモリセルからデータを読出して今度は別のバッファ１５３にその読み出しデータを保持する。このようにして夫々２値の２ビットのデータがデータバッファ１５２，１５３にラッチされると、当該２ビットのデータはデータ変換回路１５８でデコードされ４値書込みのための書込みデータが生成され、センスラッチにそのデータが与えられる。その後、前記デコードされた情報を前記書換え制御手段１５９Ａが用いて、ワード線ＷＬ３の所定のメモリセルに、そのデータが４値のうちの一つの論理値として書込まれる。前記２ビットのデコード結果によっては書込み非選択で済む場合も当然ある。
【０１０３】
図１４には２値データを多値データに変換する別の例が示される。図１３の場合には同一ワード線上の隣接する２個のメモリセルが保有する２ビットを４値のデータに変換した。図１４の場合には、バッファ１５２の全てのデータの後にバッファ１５３のデータを並べて、このデータ列に対して最初から２つずつ区切っていって、各々の区切られた２ビットを夫々４値のデータに順次変換する。
【０１０４】
図１５〜図１９には２ビットの２値データによる４値書込み動作の手順が示される。各図には４値データの４値“０１”、“１１”、“１０”、“００”が夫々示されている。この４値の夫々におけるメモリセルのしきい値電圧は状態“０１”、“１１”、“１０”、“００”に対応されることになる。図１５に示されるように、上記４値のデータが書込まれるメモリセルは最初、消去状態とされている。即ち、状態“００”である。４値“０１”、“１１”、“１０”、“００”に対するセンスラッチＳＬ１〜ＳＬ４への書込みデータは図１６に示されるように、“１”、“１”、“１”、“０”とされる。センスラッチにラッチされたデータ“１”は書込みを実施させ、“０”は書込み非実施とさせる。書込動作は、図１６に示される第１の書込み、図１７に示される第２の書込み、図１８に示される第３の書込みとされる。第１乃至第３の一連の書込みは対応するセンスラッチの書込みデータが“０”にされるところまで進められる。第１乃至第３の各書込みは、ベリファイ電圧が相違されるだけであり、書込みパルス電圧の印加制御は同一である。
【０１０５】
図１６の第１の書込み（ベリファイ電圧＝Ｖｔ７）が行なわれた場合には、書込み対象とされるメモリセルのしきい値電圧は状態“０１”にされる。したがって、４値データ“０１”に対応されるメモリセルのセンスラッチが“０”に反転され、“０１”の書込みが完了される。即ち、第１の書込みは消去状態から“０１”のしきい値状態を得るための書込み動作とされる。
【０１０６】
第１の書込みに続けて、図１７の第２の書込み（ベリファイ電圧＝Ｖｔ９）が行なわれた場合には、書込み対象とされるメモリセルのしきい値電圧は状態“１１”にされる。したがって、４値データ“１１”に対応されるメモリセルのセンスラッチが“０”に反転され、“１１”の書込みが完了される。即ち、第２の書込みは、第１の書込みに続けて行なうことによって“１１”のしきい値状態を得るための書込み動作とされる。
【０１０７】
第２の書込みに続けて、図１８の第３の書込み（ベリファイ電圧＝Ｖｔ１１）が行なわれた場合には、書込み対象とされるメモリセルのしきい値電圧は状態“１０”にされる。したがって、４値データ“１０”に対応されるメモリセルのセンスラッチが“０”に反転され、“１０”の書込みが完了される。即ち、第３の書込みは、第１及び第２の書込みに続けて行なうことによって“１０”のしきい値状態を得るための書込み動作とされる。
【０１０８】
図２０に示されるフラッシュメモリＦＭＲＹ６は、前記第１の書込みモードによる粗い書込み専用のメモリマット１Ａ，２Ａと、第２の書込みモードによる高精度書込み（多値書込みを含む）専用のメモリマット１Ｂ，２Ｂを物理的に分けるようにしたものである。メモリマット１Ａ，２Ａのセンスラッチアレイと、メモリマット１Ｂ，２Ｂのセンスラッチアレイは夫々個別化されている。
【０１０９】
図２１に示されるフラッシュメモリＦＭＲＹ７は、図１３の構成に対し、粗い書込み専用のメモリマット１Ａ，２Ａと、高精度書込み専用のメモリマット１Ｂ，２Ｂとに兼用されている点が相違されている。尚、図２０及び図２１に示された個々の構成及び機能については前述の説明と基本的に同じであるから、その詳細な説明は省略する。
【０１１０】
図２０及び図２１の構成において、メモリマットセルアレー１Ａ，２Ａに対する書込みには、第1の書込み電圧印加用パルス列発生及びベリファイ電圧発生手段１００，１０２が用いられる。メモリセルアレー１Ｂ，２Ｂに対する書込みには第2の書込み電圧印加用パルス列発生及びベリファイ電圧発生手段１０１，１０３が用いられる。
【０１１１】
粗い書込み専用のメモリマット１Ａ，２Ａと、高精度書込み専用のメモリマット１Ｂ，２Ｂとでは、メモリセルＭＣのトンネル膜厚、層間絶縁膜の厚さ、フローティングゲートの大きさ等のメモリセル構造を夫々に最適化するように個別化することができる。
【０１１２】
図２２には第１の書込みモード（粗い書き込み）による書込みデータと第２の書込みモード（高精度の書き込み）による書込みデータとをメモリマット中に混在させる場合の例が示される。例えば、メモリマット１，２の一群のメモリセル（以下セクタと称する）毎に、第１の書込みモードによる粗い書き込みデータと第２の書込みモードによる高精度の書き込みデータとを混在させるために、セクタの一部を管理領域１６０とし、この領域１６０に第１の書込みモードで書込まれたデータか第２の書込みモードで書込まれたデータかを識別するための識別情報を書込んでおく。図２２において、ＭＲ１〜ＭＲｎ、ＭＣ１〜ＭＣｍが一つのセクタであり、このうちＭＣ１〜ＭＣｍがそれに対応する管理領域とされる。前記識別情報は、ＭＣ１〜ＭＣｍの適当なビットに割り当てられることになる。管理領域１６０にはその外のセクタ管理情報の記憶領域が割り当てられている。図２２では管理領域１６０のワード線ＷＬ２１とそれ以外のセクタの部分（通常領域）１６１のワード線ＷＬ１１とを分けてある。これは、例えばセクタデータの消去を、管理領域１６０におけるセクタデータの有効性を示すバリッドビットの反転で済ませたりすることができるようにするためであり、セクタデータの管理方式によっては同一ワード線上に配置してもよい。尚、図２２ではフラッシュメモリのその他の構成は図示を省略してあるが、例えば図１に示される回路がその他に備えられている。
【０１１３】
図２３には図２２の構成を採用した場合の書込み動作のフローチャートが示される。書込みにおいて、書込みデータがセンスラッチにロードされると、第１の書込みモード（粗い書き込み）か、第２の書込みモード（多値を含む高精度書き込み）かによって、これまでの例で説明してきた第１の書込みモードのための書込み電圧パルス又は第２の書込みモードのための書込み電圧パルス（多値書込みも含む）を選択する。第１の書込みモードならば例えば“１”が当該セクタの管理領域に書込まれ、第２の書込みモードならば例えば“０”が当該セクタの管理領域に書込まれる。このとき、後述の管理領域のデータを読み込んでから第１の書込みモードによるデータであるか第２の書込みモードによるデータであるかを判断するためには、管理領域の消去と書き込みのしきい値電圧分布は、通常領域に対するデータ書込みが第１の書込みモード又は第２のモードの何れでも同じであることが望ましい。このために、図２２では、管理領域１６０と通常領域１６１とに夫々別々のＸ系選択回路を設けてある。これにより、管理領域１６０に対するベリファイ時のワード線電圧を、通常領域１６１のベリファイ時のワード線電圧と独立に設定できるので、通常領域が第１の書込みモードで書込まれるのか第２の書込みモードで書込みされるのかに拘らず、管理領域１６０のメモリセルに対しては一定の消去と書き込み状態を達成できる。
【０１１４】
図２４には図２２の構成を採用した場合の読み出し動作のフローチャートが示される。通常領域１６１からデータの読出す場合には、先ず、対応セクタの管理領域１６０からセクタ管理情報が図６０のカラム系回路６０を介して書込み・消去判定回路８０に供給される。供給されたセクタ管理情報に含まれる前記選択情報が“１”であると書込み・消去判定回路８０で判定されると、そのセクタの通常領域は第１の書込みモード（粗い書き込み）で書込まれたデータを保有するので、書込み・消去判定回路８０の判定結果に基づいて、ＲＯＭデコーダ７６から制御信号が電源制御回路８２に出力されて第１の読み出しワード線電圧が選択され、データ領域（通常領域）１６１からデータが読出される。一方、“０”であった場合には、第２の書込みモード（多値を含む高精度書き込み）で書込まれているデータをセクタの通常領域から読み出すために、第２の読み出しワード線電圧が選択されてデータ領域（通常領域）１６１からデータが読出される。
【０１１５】
図２５は図２２の構成を採用した場合の書き直し動作の一例フローチャートが示される。ここでは、アドレスkからアドレスmまでを書き直しの対象とする場合について説明する。アドレスn＝kとおき、アドレスnの管理領域のデータを読出す。このデータが“１”である場合は、そのアドレスに対応されるセクタのデータは第１の書込みモード（粗い書き込み）で書き込まれていることになる。その場合には、そのセクタの通常領域１６１からデータを読み出し、このデータを第２のワード線電圧を選択して元のデータ記憶領域に第２の書込みモード（多値による高精度書き込みを含む）で書き直す。一方、“０”である場合には、既に第２の書込みモード（多値の高精度書き込みを含む）であるので、次のアドレスに移る。以上の動作を、目的とする最終アドレスまで繰り返す。
【０１１６】
〔３．粗い書込み〕
以上で説明した各種フラッシュメモリは粗い書込みと高精度書込みの２つのモードを持っていた。次に、粗い書き込みを行なうことに着目して高速書込みを実現するフラッシュメモリの幾つかの例を説明する。すなわち、この項で説明するフラッシュメモリは、粗い書込みモードだけを持つことになる。
【０１１７】
図２６の（ａ）に示されるしきい値電圧分布は、電源電圧Ｖｃｃ例えば３．３Ｖに対して、書き込みレベル（書き込み時のベリファイワード線電圧と等価）を例えば１．５Ｖとし、書き込みパルスあたりメモリセルのしきい値電圧が０．１Ｖ〜０．２Ｖ変化するようにして高精度書き込みを実現したフラッシュメモリのものである。このようにＶｃｃ例えば３．３Ｖに対し、書き込みレベルＶｗｖが例えば１．５Ｖのような電圧にされているとき、この電圧に、センスアンプ（センスラッチ）で検知するのに必要な電流差を得るためのしきい値電圧差を加えたものが、消去状態の最低電圧Ｖｅｖとなる。消去状態のレベルは、他に信頼性の点からも決定する必要がある。消去時にはメモリセルのしきい値電圧がＶｅｖ以上になったか否かを検出して消去パルス電圧の印加を制御する。このようし、Ｖｗｖを下げ、これによってＶｅｖもできるだけ下げることで低電圧動作と高信頼化を図ることができる。
【０１１８】
しかし、メモリセルの特性は、書き込み時に印加する電圧が同じときに、消去状態からＶｗｖのしきい値電圧に達するのに必要な時間で３桁ほどばらついてしまう。このような条件でメモリセルの書き込みを行なうと、メモリセルの通常の特性ばらつきでは、メモリセルのしきい値電圧変化ΔVth1が０．２Ｖ以下となる書き込みパルス（幅、電圧）としておかないとメモリセルによってはしきい値電圧が０Ｖ以下となる場合があると考えられる。３桁のばらつきは等価なしきい値電圧のばらつきに換算すると3V程度となる。よって、最も書き込みが速いメモリセルのしきい値電圧がＶｗｖとなってから、最も遅いメモリセルのしきい値電圧がＶｗｖとなるまでに、１回の書き込みパルスあたりしきい値電圧の変化量は０．２Ｖの変化であるから単純に計算して１５回のパルスの印加が必要となる。このパルス毎にしきい値電圧が所望の値になったかどうかを判定するベリファイ動作が必要となり、これが書き込み時間の大きなオーバーヘッドになる。
【０１１９】
よって、高速に書き込むためには、パルス幅を長くするか電圧を高くするかして、１書き込みパルスあたりの変化量ΔＶｔｈ１を大きくする。しかし、これによってメモリセルがデプリートしやすくなる。よって、書き込みレベルを高くする。例えば、Ｖｗｖを２．０Ｖにすると、ΔＶｔｈ１を０．４Ｖにすることができる。上述の３桁のばらつきを仮定すると、３Ｖのしきい値電圧ばらつきと等価であるから８回のパルスで良いことになる。それだけベリファイ動作の回数が少なくなるので高速に書き込むことができる。即ち、書き込みレベル（書込み状態のメモリセルのしきい値電圧）を従来はＶｃｃの１／２以下にしようとしていたのに対して、図２６の（ｂ）に示されるように、Ｖｃｃの１／２以上とする。尚、チップが２種類以上の電源電圧をサポートしている時、上述の話は最も低い電源電圧に対してあてはまることになる。
【０１２０】
また、メモリセルの特性は、書込み時に印加する電圧が同じ時、消去状態からＶｗｖのしきい値電圧に達するのに必要な時間で３桁程ばらつく。３桁のばらつきは、等価なしきい値電圧のばらつきに換算すると３Ｖ程度となる。この電圧に換算したばらつきをΔＶｄｖとする。今回は、消去レベル（消去状態にしきい値電圧レベル）及び書込みレベル（書込み状態のしきい値電圧）を相対的に高めとし、１書込みパルス当たりのしきい値電圧の変化量ΔＶｔｈを大きくし、ベリファイ動作回数を減らした。このとき、しきい値電圧のばらつきを吸収する（小さくする）のに必要なベリファイ動作回数をｎとすると、ｎ＝ΔＶｄｖ÷ΔＶｔｈ、となる。この式から、メモリセルの構造や製造条件や個数などによって決まるΔＶｄｖが得られたとき、消去レベル及び書込みレベルからの制限が無いときのΔＶｔｈの効果的な設定方法が決まる。すなわち、ｎは整数であるので、ΔＶｔｈを制限可能な刻み幅である０．１Ｖ大きくしたときに、ｎが１回以上減らない場合はΔＶｔｈをこれ以上大きくしても、書込み動作速度の向上（書込みベリファイ回数の低減）という点で意味がないことになる。ここでは、書込みレベルの制限を外しているとはいえ、ΔＶｔｈを大きくすればするほど、書込み後のしきい値電圧分布は大きくなり（ばらつきが大きくなり）、デプリートし易くなる。また、移動電荷量も大きくなり、絶縁膜は移動出来る電荷量の累積値が１０クーロン程であるから書換え可能回数も少なくなってしまう。これによるならば、ΔＶｔｈは小さい方がよい。よって、ｎが１回以上減らない場合には、ΔＶｔｈが最適な値であると考えられる。すなわち、ΔＶｔｈを仮想的に０．１Ｖ増やしたとき、ベリファイ回数が１回以上減らなくなったときのΔＶｔｈの値を、粗い書込みに採用すればよい。尚、書込みレベルがリードディスターブから制限を受けて決まる場合には、書込みレベルの上限（最大ΔＶｔｈ量）が決定される。
【０１２１】
図２７は、上記の事柄を消去レベル及び書き込みレベルと１書き込みパルスあたりのしきい値電圧の変化量の点から示したものである。消去時の判定電圧をＶｅｖ（ベリファイ時のワード線電圧）とすると、メモリセルのしきい値電圧はこのＶｅｖ以上となる。消去時のしきい値電圧の最大値がVt1である。また、書き
込み時の判定電圧をＶｗｖ（ベリファイ時のワード線電圧）とすると、メモリセルのしきい値電圧はこのＶｗｖ以下となる。特異なビットを除いた時には、しきい値電圧分布の最低値がVt4である。このとき、ＶｅｖとＶｗｖの間のしきい値電圧をもつメモリセルは存在しない。このＶｅｖとＶｗｖの間をしきい値電圧のセルウインドウと呼ぶ。このセルウインドウの大きさ（ＶｅｖとＶｗｖの電圧差）は、凡そ１Ｖである。この間に、読み出し時のワード線電圧を設定する必要がある。
【０１２２】
この１Ｖ程度のセルウインドウの中を、１書き込みパルスあたりの０．２Ｖ以下の変化量ΔVth1で消去状態から書き込み状態へ移行していたとき、そのしきい値電圧分布は図２６の（ａ）に示される通りである。これに対して、図２６（ｂ）では、セルウインドウの中をΔVth1=0.4V以上で消去状態から書き込み状態へ
移行する。これによって、ベリファイ回数が減るのでオーバーヘッドが少なくなり高速書き込みが可能となる。
【０１２３】
書込み動作として上記の粗い書込みを行なうフラッシュメモリの構成についてはその全体的なブロック図を提示しないが、これは、図６０のフラッシュメモリの構成において、１回の書込み電圧パルスの幅の設定、ベリファイ電圧のレベル設定、ワード線選択レベルの設定など、図６０に示される回路ブロックの機能を僅かに変えるだけで実現出来るからである。
【０１２４】
図２８にはＡＮＤ型メモリセルにおける書込みの意義とＮＡＮＤ型メモリセルにおける書込みの意義の相違が示される。ここまでの説明では、メモリセルのしきい値電圧を下げる動作を書込み動作と呼んでいるが、これとは逆に、しきい値電圧が比較的低い状態に揃えられたメモリセルを選択的にしきい値電圧の高い状態にする動作（しきい値電圧を上げる動作）を書込みと呼ぶこともある。前者においては、メモリセルのしきい値電圧が0V以下になることは許されない。後者においては、ＮＡＮＤ型メモリセル構造を例とすれば、同様の条件は、メモリセルのしきい値電圧がＶｐｗ以上となるのが許されないこととなる。Ｖｐｗは、読み出し時に非選択メモリセルのワード線に印加する電圧（パスメモリセル用のワード線電圧）である。
【０１２５】
図２８に示されるようなしきい値電圧分布の上記ＡＮＤ型メモリセル構造の場合、書込み時のベリファイ電圧Ｖｗｖを２Ｖ又は１／２Ｖｃｃ以上とする。図２８に示されるようなしきい値電圧分布の上記ＮＡＮＤ型メモリセル構造の場合、書込み時のベリファイ電圧Ｖｗｖとパスメモリセル用のワード線電圧Ｖｐｗの電圧差を2V以上又は１／２Ｖｃｃ以上とする。ちなみに、上述の高精度の書込みモード（第２の書込みモード）と粗い書込みモード（第１の書込みモード）を有するフラッシュメモリにおいて、図２８に示されるようなしきい値電圧分布の上記ＡＮＤ型メモリセル構造の場合、書込み時のベリファイ電圧Ｖｗｖ（０Ｖとの差である）が２つのモードで異なり、変化量が大きい粗い書込みモードの方を高く設定する。一方、図２８に示されるようなしきい値電圧分布の上記ＮＡＮＤ型メモリセル構造の場合、ベリファイ電圧ＶｗｖとＶｐｗの電圧差が２つのモードで異なり、変化量が大きい粗い書込みモードの方での差を大きく設定することになる。
【０１２６】
図２９にはメモリセルの消去レベル及び書込みレベルと紫外線照射時のしきい値電圧（熱平衡状態Ｖｔｈｉ）との相関関係を図２８のＡＮＤ型メモリセル構造とＮＡＮＤ型メモリセル構造の場合に分けて示してある。紫外線照射時のしきい値電圧Ｖｔｈｉは、概略的にはフローティングゲートにエレクトロンやホールが平衡状態におけるメモリセルのしきい値電圧を意味する。
【０１２７】
図２９の（ａ），（ｂ）は、ＶｔｈｉをＶｅｖとＶｗｖとの中間に設定したものである。したがってリテンションマージン、リードディスターブマージンが共に満たされる。この状態では、ほぼ同じ時間で消去と書込みを行うことができる。図２９の（ｃ），（ｄ）はＶｔｈｉをＶｗｖ側に設定したものである。低い印加電圧で高速に書込みを行うことができる。但し消去の信頼性が相対的に低くなる。図２９の（ｅ），（ｆ）はＶｔｈｉをＶｅｖ側に設定したものである。図２９の（ｃ），（ｄ）とは逆であってリテンションに対して強くなる。
【０１２８】
〔４．書込み電圧パルス幅等に対するトリミング〕
図３０は最小の書込み電圧パルス幅及び書込み電圧パルス幅の変化の大きさをトリミングできるようにしたフラッシュメモリＦＭＲＹ８の一例が示される。１７０は書込み電圧印加用パルス列発生手段、１７１はトリミング手段、１７２は全体的な制御手段である。同図に示されるフラッシュメモリにおける書込みは、図１で説明したのと同様に、書込み電圧一定で書込み電圧パルス幅を漸次増加させる形式とされる。このフラッシュメモリＦＭＲＹ８の基本的な構成は図６０の構成と同じであり、書込み電圧パルス幅に対してトリミング可能にするための手段が新たに追加されている。
【０１２９】
トリミングの対象は二つ有り、第１は、図３１に示されるように最小の書込み電圧パルス幅である。即ち、書込み動作における最初の書込み電圧を与える期間である。図３１に示されるチップＢをチップＡと同じパルス幅で最初の書込み電圧印加を行った場合には、実質的にしきい値電圧が殆ど変化されない無駄な書込み及びベリファイを何回も経なければならず、書込み効率が著しく低下する。最小の書込み電圧パルス幅をトリミング可能であれば、プロセスばらつきによるメモリセルの特性の相違を、フラッシュメモリチップ間で揃えること、若しくは最適化することが可能になる。すなわち、メモリセルのしきい値電圧のシフト量は、書込み電圧が同一であっても、プロセスばらつきなどによって微妙に異なることが予想される。このような特性の相違を、フラッシュメモリのウェーハプロセス等の検査工程で調整可能にすることは、高速書込みを可能にする上で重要である。
【０１３０】
トリミング対象の第２は、書込み電圧パルス幅の変化の大きさである。即ち、図３２の（ａ）と（ｂ）に示されるように、パルス幅の漸次増加量をトリミング対象とする。
【０１３１】
図３３には書込み電圧を変化させる方式において、最小電圧絶対値及び変化の大きさをトリミングできるようにしたフラッシュメモリＦＭＲＹ９が示される。１８０は書込み電圧列発生手段、１８１はトリミング手段、１８２は全体的な制御手段である。同図に示されるフラッシュメモリにおける書込みは、図５で説明したのと同様に、書込みパルス幅一定で書込み電圧を漸次増加させる形式とされる。このフラッシュメモリＦＭＲＹ９の基本的な構成は図６０の構成と同じであり、書込み電圧に対してトリミング可能にするための手段が新たに追加されている。
【０１３２】
トリミングの対象は二つ有り、第１は、図３４に示されるように最小の書込み電圧値ＶＡ，ＶＢである。トリミング対象の第２は、図３５に示されるように書込み電圧値の漸増幅ΔＶＷＡ，ΔＶＷＢである。
【０１３３】
図３６には上記変化の大きさを途中で変えることができる手段を設けたフラッシュメモリＦＭＲＹ１０が示される。１９０は書込み電圧印加用パルス列発生手段又は書込み電圧列発生手段、１９１はパルス列設定手段又は電圧列設定手段、１９２は全体的な制御手段である。このフラッシュメモリＦＭＲＹ９の基本的な構成は図６０の構成と同じである。
【０１３４】
例えば書込み電圧一定でパルス幅を漸増させる形式の書込みを行うものである場合、図３７の（ａ）に示される書込み特性で例示されるように、チップ毎に書込み時間に対するしきい値電圧の変化の割合を変えることができる。例えば、図３７の（ｂ）に示されるように、直前のパルス幅に対するパルス幅の増加率がｒ１倍であるとき、途中からｒ２倍に変更することができる。また、図３７の（ｃ）に示されるように、当初の電圧増加量Ｖｒ１を途中からＶｒ２に変更することができる。また、特に図示はしないが、変化の大きさを途中で変えるとは、途中で変化させなくすること（一定値にする）を含む概念である。
【０１３５】
図３８乃至図４２には、図３０乃至図３２で説明した前記パルス幅をトリミングするための具体的な構成が示されている。図３８には前記書込み電圧印加用パルス列発生手段（パルスジェネレータとも称する）１７０の一例が示され、図３９にはトリミング手段１７１の一例が示され、図４０にはトリミング手段に含まれるアドレスジェネレータが示され、図４１にはアドレスジェネレータに含まれるトリミング回路の一例が示され、図４２にはパルスジェネレータやアドレスジェネレータを構成するカウンタユニットの一例が示される。
【０１３６】
先ず、図４２に示されるカウンタユニットＢＣにおいて、ＣＬＫはクロック入力端子、Ｃｉは下位からのキャリー入力端子、Ｄｏはデータ出力端子、Ｃi+1はキャリー出力端子、Ｄｉはプリセットデータ入力端子、Loadはプリセットデータ入力端子からのデータ入力指示信号である。同図には、プリセットデータのロードタイミングと、カウントアップ動作のタイミングも示されている。
【０１３７】
図３８に示されるパルスジェネレータ１７０は直列接続された所定複数段の前記カウンタユニットＢＣを有し、クロック入力端子ＣＬＫはクロック信号ＣＬＫ２が共通接続されている。このパルスジェネレータは、プリセットデータを計数値の初期値とする。カウンタユニットＢＣの各桁出力はAND等の論理ゲートに供給され、このＡＮＤゲートの出力が書込み電圧パルスとされる。前記カウンタユニットＢＣの各桁が全部ビット“１”にされることによってクロックパルスの周期が決定される。したがって、パルスジェネレータのビット数に対して、プリセットデータが小さいほど、書込み電圧パルス幅は大きくされる。
【０１３８】
図３９に示されるトリミング手段は、前記パルスジェネレータ１７０のプリセットデータを生成する。即ち、ＲＯＭのメモリアレイ１７１０は、パルスジェネレータ１７０のプリセットデータとして、特に制限されないが、全ビット“０”から全ビット“１”までの値がＲＯＭワード毎ＷＤ０〜ＷＤｍに順番に位格納されている。ＲＯＭワードの選択はデコーダ１７１２が行う。選択されたＲＯＭワードから読出されるプリセットデータはセンスアンプ１７１１で増幅されてパルスジェネレータ１７０に供給される。
【０１３９】
前記デコーダ１７１２にアドレス信号Ａ０〜Ａｊを供給するアドレスジェネレータ１７１３は、図４０に示されるように、直列接続された所定複数段の前記カウンタユニットＢＣを有し、クロック入力端子ＣＬＫはクロック信号ＣＬＫ１が共通接続され、また、カウンタユニットＢＣの間にはトリミング回路１７１４が配置されている。ロード信号load1はそのハイレベルによってアドレス出力を初期化することができる。
【０１４０】
トリミング回路１７１４は図４１に示される回路構成を備えている。ヒューズＦＵＳ１，ＦＵＳ２の非切断状態では、前段からのキャリーＣi+1（Ｃｉｘ）を後段に、前段からのデータＤ0（Ａｉｘ）を桁信号として出力する。一方のヒューズＦＵＳ１を切断すると、後段へのキャリー出力Ｃiと桁信号Ａiは常時“１”にされる。ヒューズＦＵＳ１，ＦＵＳ２を切断すると、後段へのキャリー出力Ｃiは常時“１”、桁信号Ａiは常時“０”にされる。したがって、アドレスジェネレータ１７１３は、ヒューズＦＵＳ１，ＦＵＳ２の切断状態に応じてアドレス信号Ａ０〜Ａｊの任意のビットを“１”又は“０”に固定することができる。したがって、カウンタユニットＢＣに配置されたトリミング回路１７１４のヒューズＦＵＳ１，ＦＵＳ２を最下位側から所定個数プログラムすることにより、ＲＯＭのメモリアレイ１７１０から選択するワードの順番を１本置き、２本置き等のように設定することができる。上位側のカウンタユニットＢＣに配置されたトリミング回路１７１４のヒューズＦＵＳ１，ＦＵＳ２をプログラムすれば、ＲＯＭのメモリアレイ１７１０から最初に選択するワードを任意に指定することができる。これにより、図３０乃至図３２で説明したように、前記書込み電圧パルスの最小幅と、漸増幅を任意に設定することができる。
【０１４１】
図４４には電源回路をトリミングするための回路構成が示されている。同図に示される電源回路１８０は図６０の基準電源８４やチャージポンプ回路８４に相当される。オペアンプ１８１の反転入力端子（−）には制御信号Ｂ１〜Ｂｊによって０．１Ｖ刻みで電圧を入力出来るようになっている。電源回路１８０の出力電圧Ｖは抵抗回路１８２を介してオペアンプ１８１の非反転入力端子（＋）に帰還されている。この抵抗回路１８２は、制御信号Ｈ０〜Ｈｉによって帰還抵抗を選択する。オペアンプ１８１や抵抗回路１８２は図６０の電源制御回路８２に含まれ、制御信号Ｂ1〜Ｂjは特に制限されないが図６０の冗長ヒューズトリミング回路６７から供給され、制御信号Ｈ0〜Ｈiは特に制限されないが図６０のＲＯＭデコーダ７６から供給される。
【０１４２】
図４４において例えばＶｃｃ＝３Ｖ、i＝１２、j＝２０、電源回路１８０は負の電位を出力できるものとする。このとき、Ｂ10＝ハイレベル、Ｂ1〜Ｂ9＝ローレベル、Ｂ11〜Ｂ20＝ローレベルとするとオペアンプ１８１のリファレンス電圧は１Ｖにされる。ここで、フラッシュメモリチップの製品ばらつきによってＢ10によって１Ｖが印加されない場合、他の信号Ｂ1〜Ｂ9，Ｂ11〜Ｂjを選択することによって１Ｖを確実に得ることができる抵抗回路１８２で分圧された電圧Ｖａをオペアンプ１８１で比較し、Ｖａ＞１のときは電源回路１８０を動作させ、Ｖａ＜１のときは電源回路１８０の動作を停止させる。停止条件は、Ｈk＝ハイレベル、Ｈ0＝Ｈ1＝…Ｈk-1＝Ｈk+1＝…Ｈi＝ローレベルのとき、Ｖ＋（Ｖｃｃ−Ｖ）ｋ／（１＋ｉ）＝Ｖｒｅｆｘｘとされる。Ｖｒｅｆｘｘは信号Ｂjで印加される電位である。この式を上記条件で解くと、Ｖ＝（１３−３ｋ）／（１３−ｋ）によってＨ9を選択するとＶ＝−３．５Ｖ、Ｈ10を選択するとＶ＝−５．７Ｖ、Ｈ11を選択するとＶ＝−１０Ｖとされる。このように信号Ｈiを変化させることによって、書込み中に電位を変化させることが可能である。
【０１４３】
〔５．ディジタルスチルカメラなどへの応用〕
上記粗い書込みで記憶されたデータを高精度（含む多値）書込みで書き直す手法を採用したフラッシュメモリをディジタルスチルカメラに応用した場合について説明する。
【０１４４】
図４５にはそのようなディジタルスチルカメラが示されている。このカメラによれば、通常の撮影は粗い書込みで高速に行い、書込と書込の間、又はカメラの電源を切ったり、レンズカバーを閉めたりしたときに、粗い書込みで書き込まれているデータを高精度に書込みし直すようにするものである。図４５においてCOFで示されるものは、書込みと書込みの間であること、カメラの電源を切ったこと、レンズカバーを閉めたこと（これによって電源を切った状態となる）を検出する検出手段である。レンズからの画像は撮像手段CCDで検出され、エンコーダENCでエンコードされ、入出力回路IOからメモリカード１９１に与えられる。メモリカード１９１は制御回路ASICがメモリチップM1, M2の制御などを行う。メモリチップＭ１．Ｍ２は前記第１の書込みモードと第２の書込みモードを有し、書き直し手段１０５を有する図１で説明したフラッシュメモリ等である。書き直しの手順は、基本的に図４で説明した通りである。書き直しモードの指定（コマンド）は、検出手段ＣＯＦの出力によって与えられ、撮影の間などに自動的に行われるようになっている。
【０１４５】
図４６には図４５のディジタルスチルカメラによる書き直し動作の一例が示される。この手順はステップ１９２で管理領域を参照し、高精度書込みがなされていない場合に、粗い書込みデータを高精な書込みで書き直しするものである。その処理はその処理は、カメラカバーを閉じる操作に連動して、先頭アドレスから最終アドレスに対して行われる。管理領域を参照する書き直しの基本的な処理は、図２２〜図２５に基づいて説明した通りである。
【０１４６】
図４７には図４５のディジタルスチルカメラによる書き直し動作の別の例が示される。この手順は、今撮影して粗い書込みしか行っていないセクタアドレスの情報が格納される書き直しアドレス格納バッファが設けられている場合に、それに格納されているセクタアドレス情報に基づいて、書き直しデータ領域を取得するものである。
【０１４７】
書き直しのタイミングは、上記の他に、カメラ又はコンピュータシステムにおいて、メモリカードを抜くと同時に粗い書込みで書き込まれたデータを高精度書込みで書き直しを実行することも可能である。カメラ又はコンピュータシステムで使用中は粗い書込みで高速動作させ、メモリカードをその装置から抜いて保管させておくときはリテンションに優れる高精度書込みとする。
【０１４８】
図４８には、メモリカードの引き抜きによるＶｃｃの低下を制御回路ＤＴが検知したとき、メモリカード内のコンデンサＣ１の電荷で書き直しを行うようにしたメモリカードが示される。Ｖｃｃが低下すると、制御回路ＤＴの制御によってスイッチＳ１，Ｓ２１がオフされ、外部のＶｃｃから切り離され、制御信号RWに書き直し開始が指示される。そうすると、スイッチＳ２２がオンされ、フラッシュメモリＭ１，Ｍ２に書き直し用の電源が供給される。メモリカードを差し込む時にスイッチＳ２１が遅れてオンすればメモリへの電源供給は遅れない。なお、コンデンサＣ１は制御回路DTで発生したＶｃｃよりも高い高電圧で充電しておいてもよい。
【０１４９】
図４９の例は、図４８と同様の目的で構成されているが、Ｖｃｃ'にコンデンサＣ１を直接接続することで構成を簡単にしている。
【０１５０】
図５０の例も図４８と同様の目的で構成されているが、メモリカード内に書き直し動作用の電池１９３を設けている。
【０１５１】
図５１は図２６及び図２７で説明した粗い書込みだけを行うフラッシュメモリの応用例システムが示される。図２７で説明した粗い書込みだけを行う第１のフラッシュメモリ２００はCPU２０１と第１のバス２０２で接続されている。このような第１のフラッシュメモリ２００は高速書込みが可能であるからＣＰＵ２０１のメインメモリとしての利用に位置付けられている。メモリコントローラ（MC）２０３を介して第２のフラッシュメモリ２０４が第２のバス２０５に接続されている。第２のフラッシュメモリ２０４は高精度の書込み（含む多値）を行うものであり、例えば、データ保持時間が長いことが要求されるようなファイルメモリとしての利用に位置付けられている。
【０１５２】
図５２には前述の各種フラッシュメモリを用いたファイルメモリシステムの一例ブロック図が示されている。９０で示されるものは、特に制限されないが、ＰＣカード化されたフラッシュメモリカードであり、ＡＴＡ（AT Attachment）カードの一種とされる。このフラッシュメモリカード９０は特に制限されないがＩＤＥ（Integrated Device Electronics）に準拠した標準バス９１を介してパーソナルコンピュータ等のコンピュータ９９に図示を省略するコネクタを介して着脱自在に装着可能にされる。
【０１５３】
フラッシュメモリカード９０は、バスインタフェース部９２、ライトバッファ９３、ＥＣＣ回路９４、マイクロコンピュータ９５、フラッシュメモリ９６及び管理テーブルメモリ９７を有し、それらは内部バス９８に共通接続されている。
【０１５４】
前記バスインタフェース部９２はＡＴＡカード等の仕様に準拠するように標準バス９１との間でのインタフェース制御を行う。ライトバッファ９３は標準バス９１から供給される書込みデータを一時的に蓄えるデータバッファであり、フラッシュメモリ９６にはライトバッファ９３に蓄えられたデータが書き込まれる。前記ＥＣＣ回路９４はフラッシュメモリ９６に格納されたデータの精度を向上させるためのエラー検出及びエラー訂正機能を有する回路である。前記管理テーブルメモリ９７は例えばフラッシュメモリやＥＥＰＲＯＭのような電気的に書き換え可能な半導体メモリによって構成され、セクタ管理テーブルと書き換え回数管理テーブルが形成されている。セクタ管理テーブルにはフラッシュメモリ９６の不良アドレス等が書き込まれる。特にフラッシュメモリの場合、書き込み/消去を繰り返して行なううちにメモリセルの特性が劣化するのでそのようなアドレスを保持することが必要である。書き換え回数管理テーブルはフラッシュメモリ９６におけるメモリセルの書き換え回数を例えばフラッシュメモリのブロック毎に管理する情報を保有する。フラッシュメモリのメモリセルの特性は所定の書き換え回数の範囲内で保証されている。前記マイクロコンピュータ９５はフラッシュメモリカード９０に対するアクセス要求に従ってカード内部を全体的に制御し、例えばフラッシュメモリに対する動作の指示や前記コマンドを発行してフラッシュメモリ９６をアクセス制御したり管理テーブルメモリ９７を制御する。
【０１５５】
〔６．多値書き込み可能なフラッシュメモリの他の例〕
図６１には前記多値書込みが可能なフラッシュメモリの更に別の例が示される。このフラッシュメモリは、一つのメモリセルに２ビットの情報を書き込むこと、即ち４値でデータを書込むことができ、そして当該情報を読み出すことができる。更に、前述したように、２値でデータの書込みを高速に行い、その後、2値のデータを４値で書直しすることが可能にされている。
【０１５６】
図６１において３０３で示されるものは、メモリセルアレイであり、センスラッチ回路３０４を挟んで両側に配置されている。図６１では代表的に片側のメモリセルアレイだけが図示されているが、実際には紙面の表裏方向、即ちメモリセルアレイ３０３の深さ方向にもう一つのメモリセルアレイが配置されているものと理解されたい。メモリセルアレイ３０３は、フローティングゲートとコントロールゲートを備えた多数のメモリセルを有し、メモリセルのコントロールゲートはワード線３０６に、メモリセルのドレインはビット線３０５に、メモリセルのソースは図示しないソース線に接続される。ワード線３０６及びビット線３０５は代表的にそれぞれ１本づつ示されている。ワードドライバ３０７はロウデコーダ３０８から出力される選択信号に基づいてワード線を駆動する。ビット線３０５の一端側にはセンスラッチ回路３０４が設けられ、また、ビット線３０５はカラムデコーダ３１１から出力される選択信号に基づいてカラムスイッチ回路で選択され、選択されたビット線がメインアンプ３１０に導通される。図６１においてカラムスイッチ回路はセンスラッチ回路３０４に含まれているものと理解されたい。カラムデコーダ３１１及びロウデコーダ３０８にはアドレスバッファ３１３からアドレス信号が供給される。消去、書込み、読み出しなどの動作モードに応じて必要とされるワードドライバ３０７等の動作電圧の切換えは電源切換え回路３０９によって行われる。制御回路３１２は図示しないアクセス制御信号やクロック信号３１８を外部から受け、また、データバスなどを介してコマンドが供給される。制御回路３１２はコマンドに従って内部動作を制御する。その制御手法は、特に制限されないが、図６０で説明したフラッシュメモリと同様であり、コマンドのデコード結果に従ってＲＯＭをアクセスし、ＲＯＭから読出される制御コードをデコードすることによって各種内部制御信号を生成する様になっている。コマンドによってフラッシュメモリに指定される動作モードは、特に制限されないが、前記第1の書込みコマンドによる粗い書込み、そして前記書直しモードを含んでいる。読み出しや消去動作モードを備えていることは言うまでもない。図６１に示されるフラッシュメモリにおいて、一方のメモリセルアレイ３０３は第1の書込み（粗い書込み）専用領域とされ、図示を省略した他方のメモリセルアレイは第2の書込み（高精度書込み）専用領域とされる。書直しモードが指定された場合には、前者メモリセルアレイにおける2個のメモリセルのデータが一単位として、後者のメモリセルアレイの1個のメモリセルに4値の内の一つの値で書込まれる。
【０１５７】
図６１に示されるフラッシュメモリにおける4値書込み技術によって書込みされた一つのメモリセルの情報記憶状態は、消去状態、第１の書込み状態、第２の書込み状態、第３の書込み状態の中から選ばれた一つの状態とされる。全部で４通りの情報記憶状態は、夫々2値の２ビットのデータによって決定される状態とされる。即ち、２ビットのデータを一つのメモリセルに記憶することができる。そのために、書込み動作時にワード線に印加する書込みベリファイ電圧を相互に異なる３種類設定し、これらを順次切り替えて、３回に分けて書込み動作を行い、これら各書込み動作において、書込みを行うメモリセルに接続されたセンスラッチ（センスラッチ回路３０４に含まれるセンスラッチ）に保持させる２値（１ビット）の書込みデータ“０”または“１”（‘ＬＯＷ’または‘Ｈｉｇｈ’）を、前記３回に分けた書込み動作の各書込み動作毎に制御する、書込みデータ変換回路３０１を設け、一つのメモリセルに４値（２ビット）の情報を書込む。また、読出し動作時にワード線に印加するワード線選択レベルとしての電圧を３種類設定し、３回の読出し動作でメモリセルから読み出される夫々２値（１ビット）のデータをセンスラッチ回路３０４を介して取り込み、３回の読出し動作終了後に2ビットで４値の情報に変換する読み出しデータ変換回路３０２を備える。
【０１５８】
書直しモードでは、メモリセルから2ビットで合計４値データを読み出し、これを前記書込みデータ変換回路３０１を通して1ビットで4値のデータとして、4値専用のメモリセルアレイに書込む。
【０１５９】
図６１を用いて、4値データの書込み動作及び4値データの読み出し動作について、その概要をまず述べる。
【０１６０】
4値書込み動作は書き込む２値（１ビット）のデ−タ列をＤｉｎ１６からメインアンプ３１０で増幅して書込みデ−タ変換回路１へ信号線３１７を通して送る。この書込みデ−タ変換回路３０１は、書き込む２値（１ビット）のデ−タ列を、例えば奇数ビット、偶数ビットに分離してメモリセルアレイ３０３中の非選択のメモリセルに接続されるセンスラッチ（非選択センスラッチと言う）に信号線３１８を通して転送し、一時的にラッチさせる。そのような非選択センスラッチはデータバッファとして兼用される。そして、書込みデータ変換回路１は、「書込み１（第１の書込み状態を得るための書込み動作）」、「書込み２（第２の書込み状態を得るための書込み動作）」、「書込み３（第３の書込み状態を得るための書込み動作）」の各動作毎に、非選択センスラッチが保持しているデータを信号線３１８を通して取り込み、それを、「書込み１」、「書込み２」、「書込み３」に応じて、選択されたメモリセルに書き込む４値（２ビット）のデ−タに対応した２値（１ビット）のデ−タ“０”または“１”（'Ｌｏｗ'または'Ｈｉｇｈ'）に変換し、変換したデータを信号線３１８を通して、選択されたメモリセルに接続されたセンスラッチ回路３０４の中のセンスラッチ（選択センスラッチと言う）に転送し、これにラッチされた２値データに従って、前記「書込み１」、「書込み２」、「書込み３」の各書込み動作が行われる。
【０１６１】
こうして、奇数ビット、偶数ビットに分けられた２値のデ−タを、非選択となるメモリセルのセンスラッチに一時的に保持させて、ベリファイ電圧の異なる３回の書込み動作（「書込み１」〜「書込み３」）毎に、書込み変換回路３０１を用いて２値（１ビット）の書込みデ−タを合成し、ベリファイ電圧がそれぞれ異なる書込み動作を行うことによって、一つのメモリセルに４値（２ビット）の情報を書き込むことができる。
【０１６２】
読出し動作では、異なる３種類の電圧が順番にワード線３０６に印加され、各３回の読み出し動作によってメモリセルアレイ３０３中のメモリセルから選択センスラッチに読み出される２値（１ビット）の情報“０”または“１”（'Ｌｏｗ'または'Ｈｉｇｈ'）は、それぞれ異なる非選択センスラッチに転送されて、一時的に保持される。３回の読み出し動作によって読み出され、選択センスラッチから非選択センスラッチに転送されて、ラッチされた３種類の２値（１ビット）のデ−タ”０”または”１”（“Ｌｏｗ”または“Ｈｉｇｈ”）は、信号線３１９を通して読出しデ−タ変換回路３０２に転送される。読み出しデータ変換回路３０２は、そのようにして転送されたデータに基づいて、４値（２ビット）のデ−タの上位ビット、下位ビットを合成する。読み出しデータ変換回路３０２は、合成された上位ビット及び下位ビットを交互に出力させて２値（１ビット）のデ−タ列とし、これが、メインアンプ３１０で増幅されて、Ｄｏｕｔ３１７から出力される。
【０１６３】
図６２には図６１に示されたフラッシュメモリのメモリセルアレイ３０３及びセンスラッチ回路３０４に係る回路構成の一部が代表的に示されている。図６２に示される構成は、センスラッチＳＬを挟んでビット線ＢＬの反対側にもビット線ＢＬａが配置されている。特に制限されないが、ビット線ＢＬａはビット線ＢＬと１対１対応で設けられている。アクセスに際しては、相互に一方が他方のリファレンス用ビット線として用いられ、何れがリファレンス用のビット線とされるかは、アクセス対象とされるメモリセルの配置によって相対的に決定される。それに関する制御は前記制御回路３１２が行うことになる。
【０１６４】
図６２において、Ｎ１〜Ｎ８、Ｎ１ａ〜Ｎ８ａはＮＭＯＳスイッチ、ＳＬはセンスラッチ、ＭＣ、ＭＣａはメモリセル、ＶＣＣは電源電圧、ＶＷＥＬはメモリセルの基板電圧、ＧＮＤは接地電位、ＷＬ、ＷＬａはワード線、ＢＬ，ＢＬａはビット線、Ｓ、Ｓａは共通ソース線、ＤＤＣ、ＤＤＣａはビット線をディスチャージするための制御信号線、ＳｉＳ、ＳｉＳａはそれぞれメモリセルＭＣ、ＭＣａのソース側を共通ソース線Ｓ，Ｓａに接続する制御信号線、ＲＰＣ、ＲＰＣａは読出し動作時にビット線をプリチャージする制御信号線、ＰＣ、ＰＣａは書込みベリファイ動作時にビット線をプリチャージする制御信号線、ＴＲ、ＴＲａはビット線とセンスラッチを接続する制御信号線、ＩＯＴ、ＩＯＢは入出力線、ＹＧはセンスラッチと入出力線を接続する制御信号線、ＰＰ、ＰＮはそれぞれ、センスラッチＳＬのＰＭＯＳトランジスタ、ＮＭＯＳトランジスタの動作電源を表す。
【０１６５】
前記ビット線ＢＬ，ＢＬａは、特に制限されないが、アルミニウム配線によって形成され、１本のビット線ＢＬ，ＢＬａには、特に制限されないが、メモリセルの直列回路が配置され（図６２にはメモリセルの直列回路は１本のビット線に対して１本が代表的に示されている）、当該複数個のメモリセルの直列回路の中から一つを対応するビット線に導通させるためにＮＭＯＳスイッチＮ２，Ｎ２ａが設けられている。前記ＮＭＯＳスイッチＮ２，Ｎ２ａは制御信号ＳｉＤ，ＳｉＤａによってスイッチ制御される。
【０１６６】
以下、上に述べた4値書込み動作、4値読出し動作についての詳細を説明する。以下では、専ら4値書込みと4値読み出しについて説明する。この内容が理解されれば、書き直しの動作では、2値で書込まれたデータをメモリセルアレイから読出して前記書込み変換回路３０１を用いて4値書込みを行えばよいことを理解することができる。この時の4値書込みアドレスは前述のフラッシュメモリの例からも明らかなように内部で生成すればよい。例えば2値書込み領域か4値書込み領域かを指示するアドレスビット（例えば最上位ビット）だけを変更して、最初の2値書込みデータの読み出しアドレスを流用することができる。
【０１６７】
《１》書込み動作
図６３から図７３を参照しながら書込み及び書込みベリファイのための構成と作用を詳細に説明する。図６３には書込みベリファイ時にワード線に印加する電圧と、４値（２ビット）の情報が書き込まれたメモリセルのしきい値電圧の分布の関係を示す。この場合のメモリセルのしきい値電圧とメモリセルに書込まれた４値（２ビット）の情報の対応づけは、しきい値電圧が一番高いＶｔｈ０の状態（メモリセルの消去状態）を情報“００”が書込まれた状態とし、しきい値電圧が二番目に高いＶｔｈ１の状態を情報“０１”が書込まれた状態、しきい値電圧が三番目に高い状態Ｖｔｈ２の状態を情報“１０”が書込まれた状態、しきい値電圧が一番低いＶｔｈ３の状態を情報“１１”が書込まれた状態としている。
【０１６８】
一つのメモリセルに４値（２ビット）の情報を記憶させるには、メモリセルのしきい値電圧の分布を図６３の様に、４極化すればよい。書込み動作及びそれに続く書込みベリファイ動作によって、メモリセルのしきい値電圧の分布を制御するために、書込みベリファイ電圧を図６３の４個のメモリセルのしきい値電圧Ｖｔｈ０，Ｖｔｈ１，Ｖｔｈ２，Ｖｔｈ３に対して、Ｖｔｈ０＞Ｖｖ１＞Ｖｔｈ１，Ｖｔｈ１＞Ｖｖ２＞Ｖｔｈ２，Ｖｔｈ２＞Ｖｖ３＞Ｖｔｈ３を満たす３種類の電圧Ｖｖ１，Ｖｖ２，Ｖｖ３として、書込みベリファイ動作時にワ−ド線に印加する。図６４にそのワ−ド線印加電圧の例を示してある。図６４中の「書込み１」、「書込み２」、「書込み３」の各動作は全て、一回の書込みと一回の書込みベリファイ動作の２つを表している。「書込み１」の動作によって、４値デ−タ“０１”、“１０”、“１１”を書込みたいメモリセルのしきい値電圧をＶｖ１より低くし、「書込み２」の動作によって、４値デ−タ“１０”、“１１”を書込みたいメモリセルのしきい値電圧をＶｖ２より低くし、「書込み３」の動作によっては、４値デ−タ“１１”を書込みたいメモリセルのみのしきい値電圧をＶｖ３より低くする。「書込み１」〜「書込み３」の各動作について以下に示す。
【０１６９】
「書込み１」、「書込み２」、「書込み３」の各動作は「書込み１」の動作の前に消去動作を行なう点と、書込みベリファイ時にワ−ド線に印加する電圧が異なる２点を除き、図６２に代表的に示された回路の動作は共通である。そこでまず、「書込み１」〜「書込み３」の書込み及び書込みベリファイ動作における共通の動作について、図６２を用いて説明する。
【０１７０】
メモリセルＭＣに書き込む場合は非反転側の入出力線ＩＯＴをハイレベル（以下単に’Ｈｉｇｈ’とも記す）、反転側の入出力線ＩＯＢをローレベル（以下単に’Ｌｏｗ’とも記す）にする。全ての動作において、ＩＯＴとＩＯＢは常にコンプリメンタリ信号となる。そして、制御信号線ＹＧを選択レベルに立ち上げて、ＮＭＯＳスイッチＮ８とＮ８ａをオンさせる。これによってセンスラッチＳＬに、’Ｈｉｇｈ’のデータがラッチされる。このとき、センスラッチＳＬのノ−ドＡ側は’Ｈｉｇｈ’、ノ−ドＡａ側は’Ｌｏｗ’となる。次に、センスラッチＳＬのＰＭＯＳトランジスタ側の電源電圧ＰＰを電源電圧ＶＣＣから例えば４〔Ｖ〕に上げ、制御信号線ＰＣ線と制御信号線ＰＣａを選択レベルに立ち上げてＮＭＯＳスイッチＮ５とＮ５ａをオンさせる。このとき、センスラッチＳＬに’Ｈｉｇｈ’がラッチされているから、センスラッチＳＬのノ−ドＡ側が’Ｈｉｇｈ’で、ＮＭＯＳスイッチＮ７がオンし、ＮＭＯＳスイッチＮ５を通してビット線ＢＬが４〔Ｖ〕にプリチャ−ジされる。一方、センスラッチＳＬのノ−ドＡａ側は’Ｌｏｗ’であるから、ＮＭＯＳスイッチＮ７はオフの状態で、ビット線ＢＬａはプリチャ−ジされず、ビット線ＢＬａは０〔Ｖ〕とされる。この後、制御信号線ＰＣとＰＣａの電圧が非選択レベルにされて、ＮＭＯＳスイッチＮ５とＮ５ａがオフされ、次いで、制御信号線ＳｉＤが立ち上げられ、ＮＭＯＳスイッチＮ２がオン状態にされる。そして、ワ−ド線ＷＬに例えば−９〔Ｖ〕が印加され、制御信号線ＴＲ、ＴＲａが選択レベルに立ち上げられてＮＭＯＳスイッチＮ６、Ｎ６ａがオン状態にされ、これによってメモリセルＭＣに書込みが行われる。このときメモリセルＭＣの基板電圧ＶＷＥＬは例えば０〔Ｖ〕にされる。この後、ワ−ド線ＷＬが０〔Ｖ〕にされ、制御信号線ＴＲ、ＴＲａの電圧が非選択レベルに立ち下げられてＮＭＯＳスイッチＮ６、Ｎ６ａがオフにされ、その後で、制御信号線ＤＤＣ、ＤＤＣａが選択レベルに立ち上げられてＮＭＯＳスイッチＮ１、Ｎ１ａがオンにされることにより、書込み対象とされたビット線ＢＬとリファレンス側のビット線ＢＬａがディスチャージされ、これらビット線ＢＬ，ＢＬａの電位が０〔Ｖ〕に初期化される。そして、制御信号線ＤＤＣ、ＤＤＣａの電圧が非選択レベルに立ち下げられてＮＭＯＳスイッチＮ１、Ｎ１ａがオフ状態にされてから、次に示す書込みベリファイ動作が行なわれる。
【０１７１】
書込みベリファイ動作では先ず、センスラッチＳＬのＰＭＯＳトランジスタ側の電源ＰＰの電圧が電源電圧ＶＣＣとされ、制御信号線ＰＣ線が選択レベルに立ち上げられて、ＮＭＯＳスイッチＮ５がオン状態にされる。このとき、上記書込み動作で記したように、センスラッチＳＬに情報“１”（‘Ｈｉｇｈ’）がラッチされていると、ＮＭＯＳスイッチＮ７がオンし、ビット線ＢＬはプリチャ−ジされるが、情報“０”（‘Ｌｏｗ’）がラッチされている場合はＮＭＯＳスイッチＮ７はオフであるからビット線ＢＬはプリチャ−ジされない。また、制御信号線ＲＰＣａが選択レベルに立ち上げられてＮＭＯＳスイッチＮ４ａがオン状態にされて、リファレンス側のビット線ＢＬａがビット線ＢＬよりも低い電圧にプリチャ−ジされる。次に、制御信号線ＰＣ、ＲＰＣａの電圧が共に非選択レベルに立ち下げられてＮＭＯＳスイッチＮ５，Ｎ４ａがオフ状態に反転された後、センスラッチＳＬのＰＭＯＳトランジスタ側の電源ＰＰがＶＳＳ（接地電位のよな低電位側の電源電圧）に、ＮＭＯＳトランジスタ側の電源ＰＮがＶＣＣ（高電位側の電源電圧）にされて、センスラッチＳＬがディスチャ−ジされる。次いで、制御信号線ＳｉＤとＳｉＳが選択レベルに立ち上げられて、ＮＭＯＳスイッチＮ２とＮ３がオン状態にされ、ワ−ド線ＷＬにベリファイ電圧Ｖｖ１、Ｖｖ２、Ｖｖ３の何れか一つが印加される。このとき、ソ−ス線ＳとメモリセルＭＣの基板電圧ＶＷＥＬは０〔Ｖ〕にされる。前記書込み動作により、メモリセルＭＣのしきい値電圧がワード線の選択レベルよりも低い状態になっている場合にはメモリセルＭＣがオンし、ビット線ＢＬからソ−ス線Ｓ側に電流が流れ、ビット線ＢＬの電位が下がる。一方、書込み動作でメモリセルＭＣのしきい値電圧がワード線の選択レベルよりも低い状態になっていない場合にはメモリセルＭＣはオン状態にされず、ビット線ＢＬの電位は下がらない。ワ−ド線の電圧を０〔Ｖ〕に戻してから、制御信号線ＳｉＤ，ＳｉＳの電圧を下げてＮＭＯＳスイッチＮ１とＮ３をオフさせ、制御信号線ＴＲとＴＲａを選択レベルに立ち上げてＮＭＯＳスイッチＮ６とＮ６ａをオンさせ、センスラッチＳＬのＰＭＯＳトランジスタ側の電源ＰＰをＶＣＣに、ＮＭＯＳトランジスタ側の電源ＰＮをＶＳＳにしてセンスラッチＳＬを活性化し、これによってセンスラッチＳＬは、ビット線ＢＬとリファレンス側のビット線ＢＬａとの電位差を増幅する。このとき、メモリセルＭＣがオン状態にされていたなら、ビット線ＢＬ側の電位が下がり、リファレンス側のビット線ＢＬａに対してレベルが低くなったとき、センスラッチＳＬにラッチされた‘Ｈｉｇｈ’は‘Ｌｏｗ’に反転する。メモリセルがオフであった場合にはビット線ＢＬａの電位が下がらず、リファレンス側のビット線ＢＬａに対してレベルが高くされているので、センスラッチＳＬにラッチされた‘Ｈｉｇｈ’は‘Ｈｉｇｈ’のまま反転しない。このベリファイ動作によって、センスラッチＳＬにラッチされた‘Ｈｉｇｈ’が‘Ｌｏｗ’に反転するまで、書込み動作と、書込みベリファイ動作が繰り返される。上記書込み及び書込みベリファイの各動作制御は制御回路３１２によって行われる。
【０１７２】
次に、メモリセルＭＣへの４値（２ビット）の書込みにおけるメモリセルのしきい値電圧の制御方法について説明する。この制御方法は、後述の書込みデータ変換回路３０１により、３回の書込み動作に従い、非選択のセンスラッチを用いて順次書き込む４値（２ビット）のデータに対応した２値（１ビット）の信号“０”または“１”（‘Ｌｏｗ’または‘Ｈｉｇｈ’）に変換することによって、以下に示すように一つのメモリセルに４値（２ビット）の書込みを可能とする。
【０１７３】
今、図６５のように一本のワ−ド線ＷＬに接続する４個のメモリセルＭＣ１，ＭＣ２，ＭＣ３，ＭＣ４のそれぞれに、４値のデ−タ“００”、“０１”、“１０”、“１１”を書き込む場合を考える。これら４値のデ−タ“００”、“０１”、“１０”、“１１”は１ビットのデ−タ列“０００１１０１１”を２個ずつ区切ったものである。通常この８個のデ−タを書き込むためには８個のメモリセルが必要であるが、上記の様に１ビットのデ−タ列を２個ずつ区切って、４値（２ビット）のデータ“００”、“０１”、“１０”、“１１”とし、それぞれを１個のメモリセルに書き込めば４個のメモリセルしか必要とせず、メモリの容量を２倍にすることが可能となる。
【０１７４】
まず、書込み動作の前に、消去動作を行ない、メモリセルＭＣ１〜ＭＣ４のしきい値電圧を、高いＶｔｈ０にそろえる（図６６）。消去動作は図６２を用いて説明すると、ワード線ＷＬとメモリセルＭＣの基板電圧ＶＷＥＬにそれぞれ、例えば１２〔Ｖ〕と−４〔Ｖ〕を印加し、共通ソース線Ｓに−４〔Ｖ〕を印加して、制御信号線ＳｉＳを選択レベルに立ち上げてＮＭＯＳスイッチＮ３をオンさせてメモリセルＭＣのソース側を−４〔Ｖ〕にすることで行われる。これによって、消去対象とされたメモリセルＭＣの浮遊ゲートに電子が注入されて、メモリセルＭＣのしきい値電圧が高い状態になる。この後に、書込み、書込みベリファイ動作を行なう。このとき、ワ−ド線ＷＬには図６４に示されるような電圧を印加するものとする。
【０１７５】
「書込み１」の動作ではまず、メモリセルＭＣ１〜ＭＣ４にそれぞれ接続するセンスラッチＳＬ１〜ＳＬ４に書込み２値デ−タＷ１Ｔをラッチする。すなわち、メモリセルＭＣ１に接続するセンスラッチＳＬ１を‘Ｌｏｗ’（“０”をラッチ）にし、それ以外のメモリセルＭＣ２〜ＭＣ４に接続するセンスラッチＳＬ２〜ＳＬ４は‘Ｈｉｇｈ’（“１”をラッチ）にして、メモリセルＭＣ２〜ＭＣ４に書込みを行なう。この後、すでに述べた書込み、及び書込みベリファイ動作をワ−ド線の電圧を書込み時には例えば−９〔Ｖ〕、書込みベリファイ時にはＶｖ１として行なう。図６７に示されるように、メモリセルＭＣ２〜ＭＣ４のしきい値電圧がＶｔｈ１となったら、「書込み１」の動作は終了し、続いて「書込み２」の動作に移る。
【０１７６】
「書込み２」の動作はまず、書込み２値デ−タＷ２ＴをメモリセルＭＣ１〜ＭＣ４にそれぞれ接続するセンスラッチＳＬ１〜ＳＬ４にラッチさせる。すなわち、メモリセルＭＣ１、ＭＣ２に接続するセンスラッチＳＬ１、ＳＬ２は“Ｌｏｗ”（“０”をラッチ）にし、それ以外のメモリセルＭＣ３、ＭＣ４に接続するセンスラッチＳＬ３、ＳＬ４は“Ｈｉｇｈ”（“１”をラッチ）して、メモリセルＭＣ３、ＭＣ４に書込みを行なう。この後は「書込み１」と同様に、ワ−ド線の電圧を書込み時には例えば−９〔Ｖ〕、書込みベリファイ時にはＶｖ２として書込み及び、書込みベリファイを行なう。図６８に示されるように、メモリセルＭＣ３、ＭＣ４のしきい値電圧がＶｔｈ２となったら、「書込み２」の動作は終了し、続いて「書込み３」の動作に移る。
【０１７７】
「書込み３」の動作はまず、書込み２値デ−タＷ３ＴをメモリセルＭＣ１〜ＭＣ４にそれぞれ接続するセンスラッチＳＬ１〜ＳＬ４にラッチさせる。すなわち、メモリセルＭＣ１〜ＭＣ３に接続するセンスラッチＳＬ１〜ＳＬ３は“Ｌｏｗ”（“０”をラッチ）にし、メモリセルＭＣ４に接続するセンスラッチＳＬ４は“Ｈｉｇｈ”（“１”をラッチ）にして、メモリセルＭＣ４にのみ書込みを行なう。この後は「書込み１」「書込み２」と同様に、ワ−ド線の電圧を書込み時には例えば−９〔Ｖ〕、書込みベリファイ時にはＶｖ３として書込み及び、書込みベリファイを行なう。図６９に示されるように、メモリセルＭＣ４のしきい値電圧がＶｔｈ３となったら、「書込み３」の動作は終了し、これで全書込み動作が終了し、メモリセルＭＣ１〜ＭＣ４のそれぞれに４値（２ビット）の情報“００”、“０１”、“１０”、“１１”が書き込まれたこととなる。このようにして、上述の書込みベリファイ時にワード線に印加する電圧をＶｖ１〜Ｖｖ３に設定した「書込み１」〜「書込み３」の３回の書込み動作を行うことにより、一つのメモリセルに４値（２ビット）の情報を書込むことができる。
【０１７８】
図６４のワ−ド線電圧印加の例では、それぞれの段階（「書込み１」〜「書込み３」）での書込み動作後の書込みベリファイ動作を一回行って、所要のしきい値電圧を得られた場合である。ワ−ド線への書込み電圧の印加形式は図６４の他に、図７０や図７１に示される方式を選択できる。図７０の方式は、１回の書込み電圧の印加時間即ち書込みパルス幅を徐々に大きくする制御を意味する。図７１の方式は、１回の書込みパルス幅は一定とし、そのときの書込み電圧レベルを徐々に大きく制御しようとするものである。
【０１７９】
次に、２値（１ビット）の書込みデ−タ列から、「書込み１」〜「書込み３」における４値（２ビット）書込みのための２値デ−タＷ１Ｔ〜Ｗ３Ｔ、およびそのコンプリメンタリ信号Ｗ１Ｂ〜Ｗ３Ｂへの変換方式について説明する。
【０１８０】
図７２には２値（１ビット）の書込みデータ列を奇数、偶数ビットに分離する回路の一例が示される。同図に示される回路の特長は、書き込むべき２値のデ−タ列をＤＴ，ＤＢのコンプリメンタリ信号に分離した後で、互いに半周期ずれたクロック信号ＣＬＫ１，ＣＬＫ２によって、奇数ビットのＷＯＴ，ＷＯＢ（ＷＯＴとＷＯＢは互いにコンプリメンタリ信号）、偶数ビットのＷＥＴ，ＷＥＢ（ＷＥＴとＷＥＢは互いにコンプリメンタリ信号）に分離するという点である。
【０１８１】
図７３を用いて図７２に示される回路の動作を説明する。図７３にはフラッシュメモリのデータ入力端子（Ｄｉｎ）１６に２値（１ビット）の書込みデータ列が“１”、“１”と連続して（‘Ｈｉｇｈ’，‘Ｈｉｇｈ’と連続して）入力された場合が一例として示され、この入力された書込みデータ列がインバータ回路ＩＮＶ１、ＩＮＶ２によりＤＴ，ＤＢのコンプリメンタリ信号に分離され、分離された信号ＤＴ，ＤＢは、互いに半周期ずれたクロック信号ＣＬＫ１，ＣＬＫ２に同期されて、それぞれ互いにコンプリメンタリ信号の組ＷＯＴ，ＷＯＢ（奇数ビット）、ＷＥＴ，ＷＥＢ（偶数ビット）が形成される。この例においてコンプリメンタリ（相補）信号に変換するのは、前記センスラッチＳＬの入力が差動若しくは相補信号とされていることに応ずるものであり、必ずしもそれに限定されるものではない。
【０１８２】
図７４には、そのように偶数ビットと奇数ビットに分離された相補データを用いて４値書込みを行うための回路構成が示される。同図に示される構成は、図１のメモリセルアレイ３０３、センスラッチ回路３０４、書込み変換回路３０１、読出し変換回路３０２に対応される構成例である。特に制限されないが、メモリセルアレイ３０３は４個に分割されたメモリアレイ３０３Ａ〜メモリアレイ３０３Ｄによって構成され、センスラッチ回路３０４は４個に分割されたセンスラッチ回路３０４Ａ〜センスラッチ回路３０４Ｄによって構成され、書込み変換回路３０１は４個に分割された書込み変換回路３０１Ａ〜書込み変換回路３０１Ｄによって構成される。アクセスは、４個のメモリアレイ３０３Ａ〜３０３Ｄの中から選ばれた１個のメモリアレイに対して行われるものとする。前記コンプリメンタリ信号ＷＯＴ，ＷＯＢ、ＷＥＴ，ＷＥＢの信号線は、スイッチＳＷ１ａ〜ＳＷ４ａを介して書き込み変換回路３０１Ａに、スイッチＳＷ１ｂ〜ＳＷ４ｂを介して書き込み変換回路３０１Ｂに、スイッチＳＷ１ｃ〜ＳＷ４ｃを介して書き込み変換回路１Ｃに、スイッチＳＷ１ｄ〜ＳＷ４ｄを介して書き込み変換回路３０１Ｄに接続されている。また、入出力線ＩＯＴａ，ＩＯＢａに結合された書込み変換回路３０１Ａとセンスラッチ回路３０４ＡはスイッチＳＢａ，ＳＴａを介して前記コンプリメンタリ信号ＷＯＴ，ＷＯＢの信号線に接続可能にされ、入出力線ＩＯＴｄ，ＩＯＢｄに結合された書込み変換回路１Ｄとセンスラッチ回路４ＤはスイッチＳＢｄ，ＳＴｄを介して前記コンプリメンタリ信号ＷＯＴ，ＷＯＢの信号線に接続可能にされる。同様に、入出力線ＩＯＴｂ，ＩＯＢｂに結合された書込み変換回路３０１Ｂとセンスラッチ回路３０４ＢはスイッチＳＢｂ，ＳＴｂを介して前記コンプリメンタリ信号ＷＥＴ，ＷＥＢの信号線に接続可能にされ、入出力線ＩＯＴｃ，ＩＯＢｃに結合された書込み変換回路１Ｃとセンスラッチ回路３０４ＣはスイッチＳＢｃ，ＳＴｃを介して前記コンプリメンタリ信号ＷＥＴ，ＷＥＢの信号線に接続可能にされる。また、センスラッチ回路３０４Ａ〜センスラッチ回路３０４Ｄは、スイッチＳＲＴａ，ＳＲＢａ、ＳＲＴｂ，ＳＲＢｂ、ＳＲＴｃ，ＳＲＢｃ、ＳＲＴｄ，ＳＲＢｄを介して相互にラッチ信号の授受を行うことができる。前記各スイッチの制御は制御回路１２によって行われる。また、各センスラッチ回路３０４Ａ〜３０４ＤはスイッチＳＯＴａ，ＳＯＢａ、ＳＯＴｂ，ＳＯＢｂ、ＳＯＴｃ，ＳＯＢｃ、ＳＯＴｄ，ＳＯＢｄを介して読み出し変換回路２に接続可能にされている。
【０１８３】
図７４に示される回路は、１つの選択されたメモリアレイに４値（２ビット）の情報を書込むために、図７２の分離回路によって、奇数ビットと偶数ビットに分離された信号を、２つの非選択メモリアレイに接続するセンスラッチ回路にラッチさせて一時的に保持させ、「書込み１」〜「書込み３」の各動作において、選択されたメモリアレイに設けられた書込み変換回路を用いて「書込み１」〜「書込み３」に対応される２値データＷ１Ｔ〜Ｗ３Ｔ及びそのコンプリメンタリ信号Ｗ１Ｂ〜Ｗ３Ｂを合成して、選択メモリアレイのセンスラッチ回路３０４にラッチさせて書込みを行うものである。
【０１８４】
例えばメモリアレイ３０３Ａを選択メモリアレイとし（メモリアレイ３０３Ｂ〜３０３Ｄは非選択メモリアレイ）、この選択メモリアレイ３０３Ａに含まれるメモリセルに書き込みを行なう場合を考える。図６９に示した回路によって分離された奇数ビットＷＯＴ，ＷＯＢをスイッチＳＴｄ，ＳＢｄを閉じて、センスラッチ回路３０４Ｄに保持させ、偶数ビットＷＥＴ，ＷＥＢをスイッチＳＴｂ，ＳＢｂを閉じてセンスラッチ回路３０４Ｂに保持させる。偶数ビットはセンスラッチ回路３０４Ｃに保持させても良いが、ここではセンスラッチ回路３０４Ｂに保持させた場合について、以下説明する。「書込み１」〜「書込み３」の各動作において、センスラッチ回路３０４Ｄに保持された奇数ビットの情報ＷＯＴ、ＷＯＢと、センスラッチ回路３０４Ｂに保持され偶数ビットの情報ＷＥＴ、ＷＥＢを、選択メモリアレイ３０１Ａの書込み変換回路３０１ＡにスイッチＳＴｄ、ＳＢｄ、ＳＴｂ、ＳＢｂとＳＷ１ａ〜ＳＷ４ａを閉じて転送する。転送を受けた書込み変換回路３０１Ａは、４値（２ビット）の情報をメモリセルに書込むための２値（１ビット）のデータ“０”または“１”（‘Ｈｉｇｈ’または‘Ｌｏｗ’）に変換して選択メモリアレイ３０３Ａのセンスラッチ回路３０４Ａにラッチさせて書込み及び、書込みベリファイを行なう。書込み変換回路３０１Ａ〜３０１Ｄが行うデータ合成のための回路構成と動作例を次に説明する。
【０１８５】
図７５には書込み変換回路が備える書込みデ−タ合成回路の一例が示される。図７４の書込み変換回路３０１Ａ〜３０１Ｄは全てこの図７５に示した回路によって実現されている。同図に示される書込みデータ合成回路は、２ビットのコンプリメンタリ信号の内の非反転データＷＯＴ，ＷＥＴを合成してセンスラッチＳＬの入出力線ＩＯＴに与えるデータＷ１Ｔ〜Ｗ３Ｔを「書込み１」〜「書込み３」に対応してそれぞれ合成する回路部分４００と、２ビットのコンプリメンタリ信号の内の反転データＷＯＢ，ＷＥＢを合成してセンスラッチＳＬの入出力線ＩＯＢに与えるデータＷ１Ｂ〜Ｗ３Ｂを「書込み１」〜「書込み３」に対応してそれぞれ合成する回路部分４０１とに大別される。回路部分４００は、２ビットのコンプリメンタリ信号の内の非反転データＷＯＴ，ＷＥＴに基づいて、「書込み１」のときはモード信号ＭＷＤ１によって選択された信号パスを介してデータＷ１Ｔを形成し、「書込み２」のときはモード信号ＭＷＤ２によって選択された信号パスを介してデータＷ２Ｔを形成し、「書込み３」のときはモード信号ＭＷＤ３によって選択された信号パスを介してデータＷ３Ｔを形成する。回路部分４０１は、２ビットのコンプリメンタリ信号の内の反転データＷＯＴ，ＷＥＴに基づいて、「書込み１」のときはモード信号ＭＷＤ１によって選択された信号パスを介してデータＷ１Ｂを形成し、「書込み２」のときはモード信号ＭＷＤ２によって選択された信号パスを介してデータＷ２Ｂを形成し、「書込み３」のときはモード信号ＭＷＤ３によって選択された信号パスを介してデータＷ３Ｂを形成する。「書込み１」においては、選択されたメモリアレイのセンスラッチＳＬの入出力線ＩＯＴ，ＩＯＢにはデータＷ１Ｔ，Ｗ１Ｂが与えられて書込み及び書込みベリファイが行われ、「書込み２」においては、選択されたメモリアレイのセンスラッチＳＬの入出力線ＩＯＴ，ＩＯＢにはデータＷ２Ｔ，Ｗ２Ｂが与えられて書込み及び書込みベリファイが行われ、「書込み３」においては、選択されたメモリアレイのセンスラッチＳＬの入出力線ＩＯＴ，ＩＯＢにはデータＷ３Ｔ，Ｗ３Ｂが与えられて書込み及び書込みベリファイが行われる。選択側の書込み変換回路３０１Ａには、「書込み１」〜「書込み３」の夫々において、ＷＯＴ，ＷＥＴが非選択側のセンスラッチ回路３０４Ｄから、ＷＯＢ，ＷＥＢが非選択側のセンスラッチ回路３０４Ｃから与えられる。
【０１８６】
図７６の（Ａ），（Ｂ），（Ｃ）には図７５に示されるデータ合成回路によって得られる出力結果が示されている。「書込み１」を行なう場合は、図７５の信号ＭＷＤ１を’Ｈｉｇｈ’にする。同様に、「書込み２」、「書込み３」を行なう場合はそれぞれ信号ＭＷＤ２，ＭＷＤ３を’Ｈｉｇｈ’にする。図７６の（Ａ），（Ｂ），（Ｃ）に示されたＩＯＴ，ＩＯＢの出力は、「書込み１」から「書込み３」の動作において、外部からの書込むべき２値のデ−タ列（“０”“０”、“０”“１”、“１”“０”、“１”“１”）に対して図６７乃至図６９に示した書込み２値デ−タＷ１Ｔ〜Ｗ３Ｔに対応される。
【０１８７】
同様に、他のメモリアレイに書込みを行なう場合は、奇数ビット、偶数ビットに分けられたデ−タを非選択となるアレイのうちの２つのセンスラッチ回路にデ−タを一時的に保持させて、書込みの時に、保持されたデ−タを選択メモリの書込み変換回路に転送し、書込みデ−タを合成して、選択メモリアレイのセンスラッチ回路にラッチさせればよい。
【０１８８】
尚、図７２に示される偶数、奇数ビットに分離する回路と図７５に示されるデータ合成回路は書込みデータ変換回路１に含まれている。
【０１８９】
《２》読出し動作
次に、一つのメモリセルに格納された２ビット分の情報を読み出すための構成を詳細に説明する。先ず、一つのメモリセルに書き込まれた２ビット（４値）のデータを読出し、１ビット（２値）のデ−タ列に変換するための構成を図７７乃至図８６をも参照しながら説明する。
【０１９０】
前記項目《１》の書込み動作によって、図７７のように、４極化されたメモリセルのしきい値電圧に対して、この例では、読出し動作時にワ−ド線に印加する電圧を、図７７に示す様なＶｔｈ０＞Ｖｒ１＞Ｖｔｈ１、Ｖｔｈ１＞Ｖｒ２＞Ｖｔｈ２、Ｖｔｈ２＞Ｖｒ３＞Ｖｔｈ３をそれぞれ満たす電圧Ｖｒ１、Ｖｒ２、Ｖｒ３とする。そのときにワ−ド線に印加する電圧の例を図７８に示す。ワ−ド線に電圧Ｖｒ１を印加して読出しを行なう動作を「読出し１」とし、同様に電圧Ｖｒ２，Ｖｒ３を印加して読出しを行なう動作をそれぞれ、「読出し２」、「読出し３」と称する。このように読み出し動作を３回行うことは、メモリセルに書込まれた４値（２ビット）の情報を「読出し１」〜「読出し３」の各読み出し動作毎に、２値（１ビット）の情報として読み出すことに他ならない。
【０１９１】
前記「読出し１」〜「読出し３」におけるメモリアレイ、センスラッチ回路を含む要部回路の動作は共通であるので、図６２に基づいて先ずその共通部分についての読出し動作を説明する。
【０１９２】
データ読出しに際しては先ず、センスラッチＳＬのＰＭＯＳトランジスタ側の電源ＰＰを接地電位ＶＳＳに、ＮＭＯＳトランジスタ側の電源ＰＮを電源電圧ＶＣＣにする。この後、制御信号線ＲＰＣ、ＳｉＤを選択レベルに立ち上げてそれぞれ、ＮＭＯＳスイッチＮ４、Ｎ２をオン動作させて、選択されたメモリセルＭＣに接続するビット線ＢＬとノ−ドＡ側を例えば１Ｖにプリチャ−ジし、同時に制御信号線ＲＰＣａを選択レベルに立ち上げてそれぞれ、ＮＭＯＳスイッチＮ４ａをオンさせて、リファレンス側のノ−ドＡａを例えば０．５〔Ｖ〕にプリチャ−ジする。次に、制御信号線ＲＰＣ、ＲＰＣａの電圧を非選択レベルに下げてＮＭＯＳスイッチＮ４、Ｎ４ａをオフ状態にしてから、制御信号線ＳｉＳを選択レベルに立ち上げ、ＮＭＯＳスイッチＮ３をオン状態に、そして、ソ−ス線Ｓと、メモリセルの基板電圧ＶＷＥＬを０〔Ｖ〕とし、ワ−ド線に読出し電圧を印加する。この時、メモリセルＭＣのしきい値電圧がワ−ド線に印加された電圧よりも低い場合は、メモリセルＭＣがオン状態にされて、ビット線ＢＬ側からソ−ス線側に電流が流れ、ビット線ＢＬとノ−ドＡ側の電圧が低下する。一方、メモリセルＭＣのしきい値電圧がワ−ド線に印加された電圧よりも高い場合は、メモリセルＭＣはオン動作せず、メモリセルには電流は流れないからビット線ＢＬとノ−ドＡの電圧は下がらない。そして、ワ−ド線ＷＬの電圧を０〔Ｖ〕にし、制御信号線ＳｉＤ、ＳｉＳの電圧を非選択レベルに下げてそれぞれ、ＮＭＯＳスイッチＮ２、Ｎ３をオフさせた後、制御信号線ＴＲ、ＴＲａを選択レベルに立ち上げて、ＮＭＯＳスイッチＮ６、Ｎ６ａをオン動作させ、次いで、センスラッチＳＬのＰＭＯＳトランジスタ側の電源ＰＰをＶＣＣに、ＮＭＯＳトランジスタ側の電源をＶＳＳにし、ノ−ドＡとリファレンス側のノ−ドＡａの電圧差を増幅する。増幅動作が確定するタイミングをもって制御信号線ＹＧを選択レベルに立ち上げて、ＮＭＯＳスイッチＮ８、Ｎ８ａをオン動作させることにより、センスラッチＳＬが保持している情報が、入出力線ＩＯＴ，ＩＯＢに出力される。入出力線ＩＯＴ，ＩＯＢには互いにコンプリメンタリ信号が出力される。
【０１９３】
次に「読出し１」〜「読出し３」の各動作におけるメモリセルに書き込まれた４値（２ビット）の情報の読出しについて図７６の場合を一例として説明する。図７６においては、一本のワ−ド線ＷＬに接続した４個のメモリセルＭＣ１〜ＭＣ４に、“００”、“０１”、“１０”、“１１”のそれぞれ４値（２ビット）のデ−タが書き込まれている場合を想定する。これらの４個の値は、すでに述べた書込み動作により、２値（１ビット）のデータ列“０００１１０１１”が２個ずつ区切られて“００”、“０１”、“１０”、“１１”として、それぞれメモリセルＭＣ１〜ＭＣ４に記憶されたものである。また、ＳＬ１〜ＳＬ４はそれぞれメモリセルＭＣ１〜ＭＣ４に接続されたセンスラッチを表す。この例では、簡単なセンスラッチの構成により一つのメモリセルに記憶された多値（４値）の読み出しが実現できる。
【０１９４】
図８０は「読出し１」の動作によって、メモリセルＭＣ１〜ＭＣ４のしきい値電圧とワード線に印加する読出し電圧Ｖｒ１との関係及び、メモリセルＭＣ１〜ＭＣ４から読み出され、センスラッチＳＬ１〜ＳＬ４にラッチされる２値（１ビット）のデータＲ１Ｔの、“０”又は“１”（‘Ｈｉｇｈ’又は‘Ｌｏｗ’）を示した図である。同様に図６１、図８２もそれぞれメモリセルＭＣ１〜ＭＣ４のしきい値電圧とワード線に印加する読出し電圧Ｖｒ２、Ｖｒ３との関係及び、「読出し２」、「読出し３」の各動作によって、メモリセルＭＣ１〜ＭＣ４から読み出され、センスラッチＳＬ１〜ＳＬ４にラッチされる２値（１ビット）のデ−タＲ２Ｔ，Ｒ２Ｔを示した図である。前述の図７４の構成から成るフラッシュメモリについて、これら２値（１ビット）の情報が圧縮され、４値（２ビット）の情報が記憶されたメモリセルから読み出される２値（１ビット）のデ−タＲ１Ｔ〜Ｒ３Ｔ、及びそのコンプリメンタリ信号Ｒ１Ｂ〜Ｒ３Ｂから、メモリセルに４値のデータとして圧縮されて記憶される前の２値（１ビット）の情報へ変換する手法を説明する。
【０１９５】
図７４の選択メモリアレイ３０３Ａの情報を読み出す場合を一例として説明する。「読出し１」の動作によって、読み出された２値（１ビット）のデ−タＲ１Ｔ及び、そのコンプリメンタリ信号Ｒ１Ｂはセンスラッチ回路３０４Ａから、スイッチＳＲＴａ，ＳＲＢａ，ＳＲＴｂ，ＳＲＢｂを閉じてセンスラッチ回路３０３Ｂへ転送され、それによってセンスラッチ３０４ＢはデータＲ１Ｔ，Ｒ１Ｂを保持する。それらのスイッチＳＲＴａ，ＳＲＢａ，ＳＲＴｂ，ＳＲＢｂを開いた（オフした）後、「読出し２」の動作が行われる。「読み出し２」の場合には、スイッチスイッチＳＲＴａ，ＳＲＢａ，ＳＲＴｃ，ＳＲＢｃが閉じられる（オンされる）ことにより、選択メモリアレイ３Ａから読み出された２値（１ビット）のデ−タＲ２Ｔ，Ｒ２Ｂは、センスラッチ回路３０４Ａからセンスラッチ３０４Ｃへ転送され、これによってセンスラッチ回路３０４ＣはデータＲ２Ｔ，Ｒ２Ｂを保持する。この後、これらのスイッチを開いてから、「読出し３」の動作を開始して、２値（１ビット）のデ−タＲ３Ｔ，Ｒ３Ｂを読出し、センスラッチ３０４Ａに保持させる。３個のセンスラッチ回路３０４Ａ，３０４Ｂ，３０４Ｃに保持された３個の読み出しデ−タはスイッチＳＯＴａ、ＳＯＢａ、ＳＯＴｂ、ＳＯＢｂ、ＳＯＴｄ、ＳＯＢｄを介して読み出し変換回路３０２に与えられる。読み出し変換回路３０２は、そのデ−タを１ビットづつのデータ列に変換若しくは復元する。
【０１９６】
図８３には「読出し１」〜「読出し３」の動作によって読み出された２値（１ビット）のデ−タＲ１Ｔ〜Ｒ３Ｔ及びそのコンプリメンタリ信号Ｒ１Ｂ〜Ｒ３Ｂから、メモリセルに記憶されていた４値（２ビット）のデ−タ“００”、“０１”、“１０”、“１１”に変換する回路例が示されている。
【０１９７】
同図に示される読み出しデータ合成回路は、入出力線ＩＯＴ側の回路部分４００と入出力線ＩＯＢ側の回路部分４０１に大別される。回路部分４００は、「読出し１」〜「読出し３」の３回の読み出しによって得られた非反転信号Ｒ１Ｔ〜Ｒ３Ｔに基づいて、２ビットの非反転信号ＹＴ，ＸＴを並列的に形成する。回路部分４０１は、「読出し１」〜「読出し３」の３回の読み出しによって得られた反転信号Ｒ１Ｂ〜Ｒ３Ｂに基づいて、２ビットの反転信号ＹＢ，ＸＢを並列的に形成する。即ち、この読出しデータ合成回路は、センスラッチ回路３０４Ａ，３０４Ｂ，３０４Ｃから転送されるデ−タＲ１Ｔ，Ｒ２Ｔ，Ｒ３Ｔとそのコンプリメンタリ信号Ｒ１Ｂ，Ｒ２Ｂ，Ｒ３Ｂを４値（２ビット）のデ−タ列に変換する。ＸＴは４値（２ビット）のデ−タの上位ビットを、ＹＴは下位ビットを表す。ＸＢ，ＹＢはその信号のコンプリメンタリ信号である。例えば、４値のデータが“１０”の場合、上位ビットは“１”、下位ビットは“０”となる。
【０１９８】
図８４には前記「読出し１」〜「読出し３」によって得られたデータＲ１Ｔ〜Ｒ３Ｔ（Ｒ１Ｂ〜Ｒ３Ｂ）とそれによって得られる合成出力ＸＴ，ＹＴ（ＸＢ，ＹＢ）との関係が示されている。
【０１９９】
前記読出しデータ合成回路で得られた上位ビットのＸＴ，ＸＢ、下位ビットのＹＴ，ＹＢは、図８５に示される回路で、交互に選択されて２ビットのデータとして出力される。図８５に示される回路は、クロック信号ＣＬＫ３に同期させて、上位ビットＸＴ，下位ビットＹＴを交互にＩＯＴに、上位ビットのコンプリメンタリ信号ＸＢ，下位ビットのコンプリメンタリ信号ＹＢを交互にＩＯＢへ出力させるＣＭＯＳトランスファゲートＧＸＴ，ＧＹＴが設けられて成る。これによって、一つのメモリセルに記憶されている４値の情報を２ビットのデ−タ列として読み出すことができる。
【０２００】
図８６には図８０の回路の一例動作タイミングとして、“ＸＴ，ＹＴ”が“１１”の場合（コンプリメンタリ信号“ＸＢ，ＹＢ”は“００”）、すなわち、一つのメモリセルに記憶された情報が４値（２ビット）で“１１”の場合を例としたＩＯＴ，ＩＯＢの出力を表す。ＸＴ，ＸＢの信号は、クロック信号ＣＬＫ３が‘Ｈｉｇｈ’の状態の時にＣＭＯＳトランスファゲートＧＸＴ，ＧＸＢが開いてそれぞれ入出力線ＩＯＴ，ＩＯＢに出力される。この時、ＣＭＯＳトランスファゲートＧＹＴ，ＧＹＢは閉じており、ＹＴ，ＹＢの信号は出力されない。一方、クロック信号ＣＬＫ３が‘Ｌｏｗ’の状態の時にはＣＭＯＳトランスファゲートＧＹＴ，ＧＹＢが開き、ＹＴ，ＹＢの信号が入出力線ＩＯＴ，ＩＯＢに出力され、ＸＴ，ＸＢの信号はトランスファゲートＧＸＴ，ＧＸＢが閉じているため、出力されない。
【０２０１】
尚、図８３に示された読出しデータ合成回路と、図８５に示された上位及び下位ビットの交互出力回路は前記読出し変換回路３０２に含まれている。
【０２０２】
以上説明したように、「読出し１」〜「読出し３」の３回の動作により、メモリセルに書込まれている４値（２ビット）の情報に対応して、夫々読み出された２値（１ビット）のデ−タを非選択メモリアレイのセンスラッチ回路３０４に転送して、３回の読出しが終了した後に、これらの２値（１ビット）のデ−タを、読出しデ−タ変換回路３０２によって、２値（１ビット）のデ−タ列に変換して４値（２ビット）の情報を読み出す。
【０２０３】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。例えば本発明はフラッシュメモリに限定されず、ＥＥＰＲＯＭ等の不揮発性メモリ、更にはそのようなメモリをオンチップメモリとして備えたマイクロコンピュータ等の半導体集積回路にも適用することができる。また、本発明に係る半導体集積回路はディジタルスチルカメラやＰＣカードに限定されず、その他種々のデータ処理システムに広く適用することができる。
【符号の説明】
【０２０４】
１  メモリマット
２  メモリマット
１００  第1の書き込み電圧印加用パルス列発生手段
１０１  第1の書き込み電圧印加用パルス列発生手段
１０２  第1のベリファイ電圧発生手段
１０３  第2のベリファイ電圧発生手段
１０５  書直し制御手段
１０６  書換え制御手段
１２０  第1の書き込み電圧列発生手段
１２１  第2の書き込み電圧列発生手段
１３０  切換え条件設定手段
１４０  パルス列発生手段
１４１  第1の電圧発生手段
１４２  第2の電圧発生手段
１４３  切換え手段
１５０  第1の書き込み電圧印加用パルス列発生手段
１５１  第1の書き込み電圧印加用パルス列発生手段
１５２，１５３  多値用データバッファ
１５４  第1のベリファイ電圧発生手段
１５５  第2のベリファイ電圧発生手段
１５９Ａ  書直し制御手段
１５９Ｂ  書換え制御手段
１６０  通常領域
１６１  管理領域
１７０  書き込み電圧印加用パルス列発生手段
１７１  トリミング手段
１８０  書き込み電圧列発生手段
１８１  トリミング手段
【図１】
2010033711.tif 000003
【図２】
2010033711.tif 000004
【図３】
2010033711.tif 000005
【図４】
2010033711.tif 000006
【図５】
2010033711.tif 000007
【図６】
2010033711.tif 000008
【図７】
2010033711.tif 000009
【図８】
2010033711.tif 000010
【図９】
2010033711.tif 000011
【図１０】
2010033711.tif 000012
【図１１】
2010033711.tif 000013
【図１２】
2010033711.tif 000014
【図１３】
2010033711.tif 000015
【図１４】
2010033711.tif 000016
【図１５】
2010033711.tif 000017
【図１６】
2010033711.tif 000018
【図１７】
2010033711.tif 000019
【図１８】
2010033711.tif 000020
【図１９】
2010033711.tif 000021
【図２０】
2010033711.tif 000022
【図２１】
2010033711.tif 000023
【図２２】
2010033711.tif 000024
【図２３】
2010033711.tif 000025
【図２４】
2010033711.tif 000026
【図２５】
2010033711.tif 000027
【図２６】
2010033711.tif 000028
【図２７】
2010033711.tif 000029
【図２８】
2010033711.tif 000030
【図２９】
2010033711.tif 000031
【図３０】
2010033711.tif 000032
【図３１】
2010033711.tif 000033
【図３２】
2010033711.tif 000034
【図３３】
2010033711.tif 000035
【図３４】
2010033711.tif 000036
【図３５】
2010033711.tif 000037
【図３６】
2010033711.tif 000038
【図３７】
2010033711.tif 000039
【図３８】
2010033711.tif 000040
【図３９】
2010033711.tif 000041
【図４０】
2010033711.tif 000042
【図４１】
2010033711.tif 000043
【図４２】
2010033711.tif 000044
【図４３】
2010033711.tif 000045
【図４４】
2010033711.tif 000046
【図４５】
2010033711.tif 000047
【図４６】
2010033711.tif 000048
【図４７】
2010033711.tif 000049
【図４８】
2010033711.tif 000050
【図４９】
2010033711.tif 000051
【図５０】
2010033711.tif 000052
【図５１】
2010033711.tif 000053
【図５２】
2010033711.tif 000054
【図５３】
2010033711.tif 000055
【図５４】
2010033711.tif 000056
【図５５】
2010033711.tif 000057
【図５６】
2010033711.tif 000058
【図５７】
2010033711.tif 000059
【図５８】
2010033711.tif 000060
【図５９】
2010033711.tif 000061
【図６０】
2010033711.tif 000062
【図６１】
2010033711.tif 000063
【図６２】
2010033711.tif 000064
【図６３】
2010033711.tif 000065
【図６４】
2010033711.tif 000066
【図６５】
2010033711.tif 000067
【図６６】
2010033711.tif 000068
【図６７】
2010033711.tif 000069
【図６８】
2010033711.tif 000070
【図６９】
2010033711.tif 000071
【図７０】
2010033711.tif 000072
【図７１】
2010033711.tif 000073
【図７２】
2010033711.tif 000074
【図７３】
2010033711.tif 000075
【図７４】
2010033711.tif 000076
【図７５】
2010033711.tif 000077
【図７６】
2010033711.tif 000078
【図７７】
2010033711.tif 000079
【図７８】
2010033711.tif 000080
【図７９】
2010033711.tif 000081
【図８０】
2010033711.tif 000082
【図８１】
2010033711.tif 000083
【図８２】
2010033711.tif 000084
【図８３】
2010033711.tif 000085
【図８４】
2010033711.tif 000086
【図８５】
2010033711.tif 000087
【図８６】
2010033711.tif 000088