以下、この発明の実施形態のいくつかを、図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
(第1実施形態)
第1実施形態に係る半導体集積回路装置は、高い書き込みレベルにある書き込みしきい値電圧分布幅、例えば、最も高い書き込みレベルにある書き込みしきい値電圧分布幅を、他の書き込みレベルにある書き込みしきい値電圧分布幅よりも広くするものである。これは、高い書き込みレベル、例えば、最も高い書き込みレベルにあるしきい値分布と中間電圧Vpassとの間には、他の書き込みレベル間よりも、電位差にゆとりがあることが多いという事項に根ざしている。
高い書き込みレベルにある書き込みしきい値電圧分布幅、例えば、最も高い書き込みレベルにある書き込みしきい値電圧分布幅を、他の書き込みレベルにある書き込みしきい値電圧分布幅よりも広くすれば、例えば、最も高い書き込みレベルの書き込みには、ワード線に与える書き込み電圧のステップアップ幅を大きくすることができる。従って、書き込み時間を短縮できる。
このようにして、最も高い書き込みレベル以外の書き込みレベルには、狭い分布幅を持たせつつも、動作の高速化を実現する。
このようなしきい値電圧分布を得るためには、最も高い書き込みレベルの書き込みには、ワード線に与える書き込み電圧のステップアップ幅を大きくする以外にも、いくつかの形態がある。
例えば、書き込み方式には、設定された書き込みしきい値電圧に近づいてきたら、ステップアップ幅を小さくする、という書き込み方式がある。例えば、パス・ライト方式、又はクイック・パス・ライト方式と呼ばれる書き込み方式である。
パス・ライト方式とは、1st Passと呼ばれる1度目のプログラムと、2nd Passと呼ばれる2度目のプログラムとを行うことによって、書き込みしきい値の分布幅を狭くする手法である。2度目のプログラムのステップアップ幅は、1度目のプログラムのステップアップ幅よりも小さい。これにより、狭い分布幅を実現する。
クイック・パス・ライト方式は、パス・ライト方式を改良したもので、1st Passと、2nd Passとを並列処理して、書き込み時間の短縮を図ったものである。
書き込み方式に、パス・ライト方式、又はクイック・パス・ライト方式を採用した場合には、例えば、最も高い書き込みレベルへの書き込みについては、ステップアップ幅を変えない(例えば、最も高い書き込みレベルへの書き込みについては、パス・ライト方式、又はクイック・パス・ライト方式を使わない)、あるいは、例えば、最も高い書き込みレベルへの2nd Pass時におけるステップアップ幅を、他の書き込みレベルにおける2nd Pass時のステップアップ幅よりも大きくする、という方式にすることが可能である。
このような方式においても、最も高い書き込みレベルへの書き込みは、ステップアップ幅を変えない、あるいは、2nd Pass時のステップアップ幅を大きくするので、上記同様に書き込み時間を短縮できる。
この場合においても、最も高い書き込みレベルの書き込みしきい値電圧分布幅は、上記同様、他の書き込みレベルの分布幅よりも広くなる。
以下、この発明の第1実施形態を、図面を参照して詳細に説明する。
図1は、この発明の第1実施形態に係る半導体集積回路装置の一例を示すブロック図である。第1実施形態は、半導体集積回路装置の一例とし、NAND型フラッシュメモリを示すが、この発明はNAND型フラッシュメモリ以外のメモリにも適用することができる。
メモリセルアレイ1には、不揮発性半導体メモリセルがマトリクス状に配置される。不揮発性半導体メモリセルの一例は、フラッシュメモリセルである。
カラム制御回路2は、メモリセルアレイ1のビット線を制御し、メモリセルのデータ消去、メモリセルへのデータ書き込み、及びメモリセルからのデータ読み出しを行う。カラム制御回路2は、メモリセルアレイ1に隣接して設けられる。
ロウ制御回路3は、メモリセルアレイ1のワード線を選択し、消去、書き込み、及び読み出しに必要な電圧を印加する。
ソース線制御回路(C-source制御回路)4は、メモリセルアレイ1のソース線を制御する。
P型セルウェル制御回路(C-p-well制御回路)5は、メモリセルアレイ1が形成されるP型セルウェルの電位を制御する。
データ入出力バッファ6は、カラム制御回路2にI/O線を介して電気的に接続され、外部のホスト(図示せず)に外部I/O線を介して電気的に接続される。データ入出力バッファ6には、例えば、入出力バッファ回路が配置される。データ入出力バッファ6は、書き込みデータの受け取り、読み出しデータの出力、及びアドレスデータやコマンドデータの受け取りを行う。データ入出力バッファ6は、受け取った書き込みデータをI/O線を介してカラム制御回路2に送り、また、カラム制御回路2から読み出したデータをI/O線を介して受け取る。さらに、メモリセルアレイ1のアドレスを選択するために外部から入力されたアドレスデータを、カラム制御回路2やロウ制御回路3に、ステートマシン8を介して送る。また、外部ホストからのコマンドデータを、コマンド・インターフェイス7に送る。
コマンド・インターフェイス7は、外部制御信号線を介して外部ホストからの制御信号を受け、データ入出力バッファ6に入力されたデータが書き込みデータなのか、あるいはコマンドデータなのか、あるいはアドレスデータなのかを判断し、コマンドデータであれば受け取りコマンドデータとしてステートマシン8に転送する。
ステートマシン8は、フラッシュメモリ全体の管理を行う。外部ホストからのコマンドデータを受け、読み出し、書き込み、消去、及びデータの入出力管理を行う。
図2は、図1に示すメモリセルアレイ1の一例を示す図である。
メモリセルアレイ1は複数のブロック、例えば、1024個のブロックBLOCK0〜BLOCK1023に分割される。ブロックは、例えば、消去の最小単位である。各ブロックBLOCKiは複数のNAND型メモリユニット、例えば、8512個のNAND型メモリユニットを含む。この例では、各NAND型メモリユニットは2つの選択トランジスタSTD、STSと、これらの間に、直列に接続された複数のメモリセルM(本例では4つ)を含む。NAND型メモリユニットの一端は選択ゲート線SGDに繋がる選択トランジスタSTDを介してビット線BLに接続され、その他端は選択ゲート線SGSに繋がる選択ゲートSTSを介して共通ソース線C-sourceに接続される。各メモリセルMはワード線WLに繋がる。0から数えて偶数番目のビット線BLeと、奇数番目のビット線BLoとは、互いに独立してデータの書き込みと読み出しとが行われる。1本のワード線WLに繋がる8512個のメモリセルのうち、例えば、ビット線BLeに接続される4256個のメモリセルに対して同時にデータの書き込みと読み出しとが行われる。各メモリセルMが記憶する1ビットのデータが4256個のメモリセル分集まって、ページという単位を構成する。ページは、例えば、読み出しの最小単位である。1つのメモリセルMで2ビットのデータを記憶する場合、4256個のメモリセルは2ページ分のデータを記憶する。同様に、ビット線BLoに接続される4256個のメモリセルで別の2ページが構成され、ページ内のメモリセルに対して同時にデータの書き込みと読み出しとが行われる。
図3は、図1に示すメモリセルアレイ1のカラム方向構造の一例を示す断面図である。
p型半導体基板9内にはn型セルウェル10が形成される。n型セルウェル10内にはp型セルウェル11が形成される。メモリセルMは、ソース/ドレインとして機能するn型拡散層12と、浮遊ゲートFGと、ワード線WLとして機能する制御ゲートとを含む。選択ゲートSは、ソース/ドレインとして機能するn型拡散層12と、選択ゲート線SGとして機能する二重構造のゲートとを含む。ワード線WLと選択ゲート線SGはロウ制御回路3に接続され、ロウ制御回路3によって制御される。
NAND型メモリユニットの一端は、第1のコンタクトCBを介して第1のメタル配線層M0に接続され、さらに、第2のコンタクトV1を介してビット線BLとして機能する第2のメタル配線層M1に接続される。ビット線BLはカラム制御回路2に接続される。NAND型メモリユニットの他端は、第1のコンタクトホールCBを介して共通ソース線C-sourceとして機能する第1のメタル配線層M0に接続される。共通ソース線C-sourceはソース線制御回路4に接続される。
n型セルウェル10と、p型セルウェル11は同電位とされ、ウェル線C-p-wellを介してPウェル制御回路5に接続される。
図4、及び図5は、図1に示すメモリセルアレイ1のロウ方向構造の一例を示す断面図である。
図4に示すように、各メモリセルMは素子分離STIで互いに分離される。トンネル酸化膜14を介して浮遊ゲートFGがチャネル領域上に積層される。ワード線WLはONO膜15を介して浮遊ゲートFG上に積層される。
図5に示すように、選択ゲート線SGは二重構造である。図示は省略するが、上下の選択ゲート線SGはメモリセルアレイ1の端、あるいは一定本数のビット線ごとに接続される。
図6は、図1に示すカラム制御回路2の一例を示すブロック図である。
データ記憶回路16は、同一カラム番号の偶数番ビット線BLeと奇数番ビット線BLoの2本(例えば、BLe5とBLo5)ごとに設けられる。ビット線BLe、及びBLoのいずれか1本が選択され、データ記憶回路16に接続される。そして、ビット線BLe、又はBLoの電位が、データ書き込み、あるいは読み出しのために制御される。信号EVENBLが“H”レベル、信号ODDBLが“L”レベルとなると、ビット線BLeが選択される。ビット線BLeは、nチャネル型MOSトランジスタQn1を介してデータ記憶回路16に接続される。反対に、信号EVENBLが“L”レベル、信号ODDBLが“H”レベルとなると、ビット線BLoが選択される。ビット線BLoは、nチャネル型MOSトランジスタQn2を介してデータ記憶回路16に接続される。信号EVENBLは、偶数番目のビット線BLeの全てに共通である。同様に、信号ODDBLは、奇数番目のビット線BLoの全てに共通である。非選択のビット線BLは、図示されていない回路により制御される。
データ記憶回路16は、3つのバイナリデータ記憶部DS1、DS2、DS3を含む。データ記憶部DS1はデータ入出力線(I/O線)を介してデータ入出力バッファ6に接続され、外部から入力された書き込みデータや外部へ出力する読み出しデータを記憶する。データ記憶部DS2は、書き込み後にメモリセルMのしきい値を確認する(書き込みベリファイ)時の検出結果が記憶される。データ記憶部DS3は、メモリセルMのデータを、書き込みの時、及び読み出しの時に一時記憶する。
図7は、多値フラッシュメモリの多値データとメモリセルMのしきい値との関係を示す図である。
この例では、2ビットのデータを1つのメモリセルMに記憶する。2ビットのデータとしては“11”、“10”、“00”、“01”が全てである。この2つのビットは異なるロウアドレス(異なるページ)に属する。
消去後、メモリセルMのデータは“11”となっている。このメモリセルMへの下位ページのデータが0であれば、書き込みにより“11”の状態から“10”に移る。“1”データ書き込みの場合は、“11”のままである。
次に、上位ページのデータが書き込まれる。もしデータが“1”であれば、“11”あるいは“10”の状態は維持される。もしデータが“0”であれば、“11”の状態は“01”"に移り、“10”の状態は“00”に移る。
しきい値が、例えば、0V未満ならば“11”とみなされ、しきい値が、例えば、0V以上1V未満ならば“10”とみなされる。また、しきい値が、例えば、1V以上2V未満ならば“01”とみなされ、しきい値が、例えば、2V以上ならば“00”とみなされる。
このように、1つのメモリセルに2ビットのデータを記憶させるには、4つのしきい値を用いる。実際のデバイスでは、メモリセルの特性にばらつきが生じるため、そのしきい値もばらつく。このばらつきが大きいと、データの区別ができなくなり間違ったデータを読み出してしまう。
本例に従う書き込み方法では、第一に、破線に示す典型的なしきい値のばらつきを、実線に示すように狭く抑えることができる。
表1、及び表2は、消去、書き込み、読み出し、書き込みベリファイ時の各部の電圧を示す。表1、及び表2においては、書き込みと読み出し時にワード線WL2と偶数番目のビット線BLeが選択された場合を示す。
(消去)
消去時、p型セルウェル(C-p-well)11を20V、選択したブロックの全ワード線WL0〜WL3を0Vとする。電子は浮遊ゲートFGから放出され、メモリセルMのしきい値は負となる(“11”状態)。ここで、非選択ブロックのワード線WL、及びビット線BLなどはフローティングにされ、p型セルウェル11との容量結合により20V近くとなる。
(書き込み)
書き込み時、選択したワード線WL2に、14V〜20VのVpgmを印加する。この状態で、選択したビット線BLeを0Vとすると、電子は浮遊ゲートFGに注入され、メモリセルMのしきい値は高速に上昇する(第1段階書き込み)。しきい値の上昇速度を抑えるには、ビット線BLeを0.4Vに上げる(第2段階書き込み)。しきい値の上昇を禁止するにはビット線BLeを電源電圧Vdd(〜3V)とする(書き込み禁止)。
(読み出し)
読み出し時、選択したワード線WL2に読み出し電圧(0V、1V、2V)を印加する。メモリセルMのしきい値が、例えば、読み出し電圧未満ならば、ビット線BLeと共通ソース線C-sourceが導通して、ビット線BLeの電位は比較的低いレベル“L”となる。メモリセルMのしきい値が、例えば、読み出し電圧以上ならば、ビット線BLeと共通ソース線C-sourceが非導通となり、ビット線BLeの電位は比較的高いレベル“H”を維持する。メモリセルMのしきい値が“10”状態より高いか否かを検出するには、読み出し電圧を0Vとする(10読み出し)。メモリセルMのしきい値が“01”状態より高いか否かを検出するには、読み出し電圧を1Vとする(01読み出し)。メモリセルMのしきい値が“00”状態より高いか否かを検出するには、読み出し電圧を2Vとする(00読み出し)。
“10”状態のしきい値は、読み出し電圧0Vに対して0.4Vの読み出しマージンを持たせるため、0.4V以上とする。このため、“10”に書き込む場合、書き込みベリファイしてメモリセルMのしきい値が0.4Vに達したと検出されたら、書き込み禁止してしきい値の制御をする。典型的には、しきい値が0.4Vに達したか否かしか検出していない。このため、図7に示すように、比較的幅広いしきい値分布を持つ(典型例)。
対して、本例では、目標のしきい値より若干低いレベルのしきい値に達したか否かを検出し、しきい値の上昇速度を第2段階書き込みにより抑制し、しきい値電圧分布幅を図7に示すように狭める(本例)。他の状態“01”や“00”に関しても同様である。
書き込み確認は、ベリファイ電圧(0.2V、0.4V、1.2V、1.4V、2.2V、2.4V)を選択したワード線WL2に印加して行う。メモリセルMのしきい値が、例えば、ベリファイ電圧未満ならば、ビット線BLeと共通ソース線C-sourceが導通して、ビット線BLeの電位は比較的低いレベル“L”となる。メモリセルMのしきい値が、例えば、ベリファイ電圧以上ならば、ビット線BLeと共通ソース線C-sourceが非導通となり、ビット線BLeの電位は比較的高いレベル“H”を維持する。メモリセルMのしきい値が0.2Vより高いか否かを検出するには、ベリファイ電圧を0.2Vとして書き込みベリファイを行う(10第1段階書き込みベリファイ)。メモリセルMのしきい値が0.4Vより高いか否かを検出するには、ベリファイ電圧を0.4Vとして書き込みベリファイを行う(10第2段階書き込みベリファイ)。メモリセルMのしきい値が1.2Vより高いか否かを検出するには、ベリファイ電圧を1.2Vとして書き込みベリファイを行う(01第1段階書き込みベリファイ)。メモリセルMのしきい値が1.4Vより高いか否かを検出するには、ベリファイ電圧1.4Vを行う(01第2段階書き込みベリファイ)。メモリセルMのしきい値が2.2Vより高いか否かを検出するには、ベリファイ電圧を2.2Vとして書き込みベリファイを行う(00第1段階書き込みベリファイ)。メモリセルMのしきい値が2.4Vより高いか否かを検出するには、ベリファイ電圧を2.4Vとして書き込みベリファイを行う(00第2段階書き込みベリファイ)。
図8は、典型的な書き込み方法としきい値の制御とを示す図である。
図8において、白い四角は書き込み易いメモリセルのしきい値を示し、黒い四角は書き込み難いメモリセルのしきい値を示す。この2つのメモリセルは同一ページのデータを記憶する。どちらも初期的に消去されており、負のしきい値を持つ。
図8に示すように、書き込み電圧Vpgmは複数のパルスに分割されており、例えば、パルスごとに0.2Vずつ上がる(Dvpgm=0.2V)。書き込み制御電圧であるビット線BLの電圧を0Vにすると、数パルス後に、しきい値は書き込み電圧Vpgmの電圧上昇率と同じ0.2V/パルスの速度で上がる。各書き込みパルス印加後に書き込みベリファイが行われ、書き込みベリファイ電圧にしきい値が達したと検出されたメモリセルのビット線電圧はVddとされ、メモリセルごとに書き込みが禁止される。よって、しきい値は0.2Vの分布幅を持つ。
図9は、本例の書き込み方法としきい値の制御とを示す図である。
図9において、白い四角は書き込み易いメモリセルのしきい値を示し、黒い四角は書き込み難いメモリセルのしきい値を示す。この2つのメモリセルは同一ページのデータを記憶する。どちらも初期的に消去されており、負のしきい値を持つ。
図9に示すように、書き込み電圧Vpgmは複数のパルスに分割されており、例えば、パルスごとに0.2Vずつ上がる(Dvpgm=0.2V)。書き込み制御電圧であるビット線BLの電圧を0Vにすると、第1段階書き込みが行われて、数パルス後に、しきい値は書き込み電圧Vpgmの電圧上昇率と同じ0.2V/パルスの速度で上がる。各書き込みパルス印加後に、第1段階書き込みベリファイと第2段階書き込みベリファイとが行われ、第1段階書き込みベリファイ電圧にしきい値が達したと検出されたメモリセルのビット線電圧は0.4Vとされ、メモリセルごとに第2段階書き込みにされる。また、第2段階書き込みベリファイ電圧にしきい値が達したと検出されたメモリセルのビット線電圧はVddとされ、メモリセルごとに書き込みが禁止される。第2段階書き込みになって、数パルスの間はしきい値の上昇率が、例えば、ほぼ0V/パルスから0.05V/パルスに抑制されるため、しきい値は0.05Vの分布幅しか持たない。これにより、しきい値電圧分布幅を狭めることができる。
書き込みパルス幅を20μsec、各書き込みベリファイ時間を5μsecとすると、典型的な書き込み方法による書き込み時間は、
(20μsec+5μsec) × 18パルス =450μsec
である。
しかしながら、0.05Vのしきい値分布を実現させるためには、書き込み電圧Vpgmの電圧上昇率を0.05Vと4分の1にする必要があるので、
450μsec × 4 =1800μsec
となる。
一方、本例によれば、図9に示すように、0.2V/パルスのVpgm上昇率で0.05Vのしきい値電圧分布幅を実現でき、その書き込み時間は、
(20μsec+5μsec+5μsec) × 20パルス =600μsec
である。
つまり、典型的な書き込み方法に比べて、本例では、同じ0.05Vのしきい値分布を実現するために要する書き込み時間が3分の1に短縮される。
ここで、第1段階書き込みベリファイ電圧を、10第1段階書き込みベリファイ電圧とし、第2段階書き込みベリファイ電圧を、10第2段階書き込みベリファイ電圧とすることで、10書き込みが行われる。
図10は、本例の同一メモリセルMへの上位ページデータの書き込み方法としきい値の制御とを示す図である。
図10において、白い四角は書き込み易いメモリセルのしきい値を示し、黒い四角は書き込み難いメモリセルのしきい値を示す。この2つのメモリセルは同一ページのそれぞれのカラムのデータを記憶する。白い四角で示されるメモリセルは、初期的に消去されており負のしきい値を持ち、“01”状態に書き込む。黒い四角で示されるメモリセルは、初期的に“10”の状態になっており、“00”状態に書き込む。
図10に示すように、書き込み電圧Vpgmは複数のパルスに分割されており、例えば、パルスごとに0.2Vずつ上がる(Dvpgm=0.2V)。書き込み制御電圧であるビット線BLの電圧を0Vにすると、第1段階書き込みが行われて、数パルス後に、しきい値は書き込み電圧Vpgmの電圧上昇率と同じ0.2V/パルスの速度で上がる。各書き込みパルス印加後に01第1段階書き込みベリファイと01第2段階書き込みベリファイとが行われ、その後、00第1段階書き込みベリファイと00第2段階書き込みベリファイが行われる。
白い四角で示されるメモリセルのしきい値が01第1段階書き込みベリファイ電圧に達したと検出されたら、ビット線電圧は0.4Vとされ、第2段階書き込みにされる。黒い四角で示されるメモリセルのしきい値が00第1段階書き込みベリファイ電圧にしきい値が達したと検出されたらビット線電圧は0.4Vとされ、第2段階書き込みにされる。
また、白い四角で示されるメモリセルのしきい値が01第2段階書き込みベリファイ電圧に達したと検出されたらビット線電圧はVddとされ、書き込みが禁止される。また、さらに、黒い四角で示されるメモリセルのしきい値が00第2段階書き込みベリファイ電圧に達したと検出されたらビット線電圧はVddとされ、書き込みが禁止される。
“01”及び"00"の両方に関しても、第2段階書き込みになって、数パルスの間はしきい値の上昇率が、例えば、ほぼ0V/パルスから0.05V/パルスに抑制されるため、しきい値は0.05Vの分布幅しか持たない。
図11は、同一メモリセルMへの下位ページデータ書き込み時の動作波形を示す動作波形図である。
時間tp0からtp7までが書き込みステップであり、書き込みパルスが与えられる。
時間tfv0からtfv6までが10第1段階書き込みベリファイ、時間tsv0〜tsv6までが10第2段階書き込みベリファイである。ここではワード線WL2と偶数番目のビット線BLeが選択された場合を示す。
書き込みステップで、書き込み制御電圧であるビット線BLeは、第1段階書き込みならば0V、第2段階書き込みならば0.4V、書き込み禁止ならばVdd(例えば、2.5V)である。
各書き込みベリファイ時には、まず、ビット線BLeは0.7Vに充電される。その後、選択ワード線WL2が各書き込みベリファイ電圧に達すると、もしメモリセルMのしきい値が書き込みベリファイ電圧に達していると0.7Vを維持し、もしメモリセルMのしきい値が書き込みベリファイ電圧に達していなければ0Vに向かって下がる。
時間tfv4、あるいはtsv4のタイミングでビット線BLeの電圧を検出すれば、メモリセルMのしきい値が書き込みベリファイ電圧に達しているか否か検出できる。メモリセルMのしきい値が書き込みベリファイ電圧に達していれば検出結果は“パス”である。
図12は、同一メモリセルMへの下位ページデータの書き込みアルゴリズムを示す流れ図である。
まず、例えば、コマンド・インターフェイス7は、ホストからのデータ入力コマンドを受け取り、ステートマシン8にデータ入力コマンドを設定する(S1)。
次に、例えば、コマンド・インターフェイス7は、ホストからのアドレスデータを受け取り、ステートマシン8に書き込みページを選択するためのアドレスを設定する(S2)。
次に、例えば、データ入出力バッファ6は、1ページ分の書き込みデータを受け取り、それぞれのデータ記憶部DS1に対応する書き込みデータを設定する(S3)。
次に、例えば、コマンド・インターフェイス7は、ホストが発行した書き込みコマンドを受け取り、ステートマシン8に書き込みコマンドを設定する(S4)。書き込みコマンドが設定された後、S5からS16のステップが自動的に内部でステートマシン8によって起動される。
次に、各データ記憶部DS1のデータを対応するデータ記憶部DS2にコピーする(S5)。その後、書き込み電圧Vpgmの初期値を12Vに設定し、また、書き込みカウンタPCを0に設定する(S6)。
データ記憶部DS1のデータが0、かつ、データ記憶部DS2のデータが0ならば、第1段階書き込みである。このため、書き込み制御電圧であるビット線BLの電圧は0Vとする。
データ記憶部DS1のデータが0、かつ、データ記憶部DS2のデータが1ならば、第2段階書き込みである。このため、書き込み制御電圧であるビット線BLの電圧は0.4Vとする。
データ記憶部DS1のデータが1ならば、書き込み禁止である。このため、書き込み制御電圧であるビット線BLの電圧はVddとする(S7)。
次に、設定された書き込み電圧Vpgmと書き込み制御電圧を用いて1ページ分のメモリセルに対して書き込みパルスを与える。即ち、書き込みステップである(S8)。
全てのデータ記憶部DS2のデータが1か否かを検出し、全て1なら第1段階ステータスをパスと判断し、そうでなければパスでないと判断する(S9)。後ほど説明するが、全てのデータ記憶部DS2のデータが1であれば、前段の書き込みステップ(S8)で第1段階書き込みされたメモリセルは無い。
第1段階ステータスがパスでなければ、10第1段階書き込みベリファイが起動される(S10)。1ページ分のメモリセルのうち、検出結果がパスとなったメモリセルに対応するデータ記憶部DS2のデータを0から1に変える。データ記憶部DS2のデータが1であるものは、その“1”を保持する。
第1段階ステータスがパスの場合、あるいは10第1段階書き込みベリファイが終了すると、10第2段階書き込みベリファイが起動される(S11)。1ページ分のメモリセルのうち、検出結果がパスとなったメモリセルに対応するデータ記憶部DS1のデータを0から1に変える。データ記憶部DS1のデータが1であるものは、その“1”を保持する。
10第2段階書き込みベリファイ後、全てのデータ記憶部DS1のデータが1か否かを検出し、全て1なら第2段階ステータスをパスと判断し、そうでなければパスでないと判断する(S12)。
第2段階ステータスがパスであれば、正常に書き込みが終了した、として、書き込みステータスをパスに設定して書き込み終了となる(S13)。
第2段階ステータスがパスでなければ書き込みカウンタPCを調べ(S14)、その値が20以上であれば正常に書き込めなかったとして、書き込みステータスをフェイルに設定して書き込み終了となる(S15)。
書き込みカウンタPCの値が20より少なければ、書き込みカウンタPCの値を1だけ増やして、また、書き込み電圧Vpgmの設定値を0.2V増やし(S16)、再度ステップS7を経て書き込みステップS8となる。
表3は、図12に示される同一メモリセルMへの下位ページのデータの書き込みアルゴリズム中の、データ記憶部DS1とDS2の10第1段階書き込みベリファイ前後のデータと対応するメモリセルのしきい値との関係を示す。
表3に示すように、n番目の10第1段階書き込みベリファイ前のデータ記憶部DS1とDS2の取り得る値は、0/0か、0/1か、あるいは1/1である。
0/0は、n−1番目の書き込みステップまでにメモリセルのしきい値が10第1段階書き込みベリファイ電圧にも達していない、ということを示す。
0/1は、n−1番目の書き込みステップまでにメモリセルのしきい値が10第1段階書き込みベリファイ電圧には達したが、10第2段階書き込みベリファイ電圧には達していない、ということを示す。
1/1は、n−1番目の書き込みステップまでにメモリセルのしきい値が10第2段階書き込みベリファイ電圧に達した、ということを示す。
なお、n−1番目の書き込みステップまでにメモリセルのしきい値が10第2段階書き込みベリファイ電圧には達したが、10第1段階書き込みベリファイ電圧には達していない、ということはあり得ないので、1/0という状態はこの例では無い。
1番目の10第1段階書き込みベリファイ前のデータ記憶部DS1とDS2の取り得る値DS1/DS2は、0/0か1/1である。
メモリセルのしきい値がn番目の書き込みステップで10第1段階書き込みベリファイ電圧である0.2Vに達していなければ10第1段階書き込みベリファイでの検出結果はパスではないので、データ記憶部DS2のデータは変更されない。メモリセルのしきい値がn番目の書き込みステップで10第1段階書き込みベリファイ電圧である0.2Vに達していれば10第1段階書き込みベリファイでの検出結果はパスなので、データ記憶部DS2のデータは1に変更される。1であるデータ記憶部DS2のデータはメモリセルのしきい値によらず変更されない。
表4は、図12に示される同一メモリセルMへの下位ページのデータの書き込みアルゴリズム中の、データ記憶部DS1とDS2の10第2段階書き込みベリファイ前後のデータと対応するメモリセルのしきい値との関係を示す。
表4に示すように、n番目の10第2段階書き込みベリファイ前のデータ記憶部DS1とDS2の取り得る値は、0/0か、0/1か、あるいは1/1である。
0/0は、n番目の書き込みステップ後にメモリセルのしきい値が10第1段階書き込みベリファイ電圧にも達していない、ということを示す。0/1は、n番目の書き込みステップまでにメモリセルのしきい値が10第1段階書き込みベリファイ電圧には達したが、n−1番目の書き込みステップまではメモリセルのしきい値が10第2段階書き込みベリファイ電圧には達していない、ということを示す。1/1は、n−1番目の書き込みステップまでにメモリセルのしきい値が10第2段階書き込みベリファイ電圧に達した、ということを示す。
なお、n−1番目の書き込みステップまでにメモリセルのしきい値が10第2段階書き込みベリファイ電圧には達したが、n番目の書き込みステップまでにメモリセルのしきい値が10第1段階書き込みベリファイ電圧には達していない、ということはあり得ないので1/0という状態はこの例では無い。
メモリセルのしきい値がn番目の書き込みステップで10第2段階書き込みベリファイ電圧である0.4Vに達していなければ10第2段階書き込みベリファイでの検出結果はパスではないので、データ記憶部DS1のデータは変更されない。メモリセルのしきい値がn番目の書き込みステップで10第2段階書き込みベリファイ電圧である0.4Vに達していれば10第2段階書き込みベリファイでの検出結果はパスなので、データ記憶部DS1のデータは1に変更される。1であるデータ記憶部DS1のデータはメモリセルのしきい値によらず変更されない。0/0は、10第2段階書き込みベリファイによって変更されることはない。
図13は、同一メモリセルMへの上位ページデータの書き込みアルゴリズムを示す流れ図である。
まず、例えば、コマンド・インターフェイス7は、ホストからのデータ入力コマンドを受け取り、ステートマシン8にデータ入力コマンドを設定する(S1)。
次に、例えば、コマンド・インターフェイス7は、ホストからのアドレスデータを受け取り、ステートマシン8に書き込みページを選択するためのアドレスを設定する(S2)。
次に、例えば、データ入出力バッファ6は、1ページ分の書き込みデータを受け取り、それぞれのデータ記憶部DS1に対応する書き込みデータを設定する(S3)。
次に、例えば、コマンド・インターフェイス7は、ホストが発行した書き込みコマンドを受け取り、ステートマシン8に書き込みコマンドを設定する(S4)。書き込みコマンドが設定された後、S5からS20のステップが自動的に内部でステートマシン8によって起動される。
まず、10読み出しが起動される(S5)。パスである場合(メモリセルが10である)には、対応するデータ記憶部DS3に0を設定する。パスでない場合には、対応するデータ記憶部DS3に1を設定する。
次に、各データ記憶部DS1のデータを対応するデータ記憶部DS2にコピーする(S6)。その後、書き込み電圧Vpgmの初期値を14Vに設定し、また、書き込みカウンタPCを0に設定する(S7)。
データ記憶部DS1のデータが0、かつ、データ記憶部DS2のデータが0ならば、第1段階書き込みである。このため、書き込み制御電圧であるビット線BLの電圧を0Vとする。
データ記憶部DS1のデータが0、かつ、データ記憶部DS2のデータが1ならば、第2段階書き込みである。このため、書き込み制御電圧であるビット線BLの電圧を0.4Vとする。
データ記憶部DS1のデータが1ならば、書き込み禁止である。このため、書き込み制御電圧であるビット線BLの電圧をVddに設定する(S8)。
次に、設定された書き込み電圧Vpgmと書き込み制御電圧を用いて1ページ分のメモリセルに対して書き込みパルスを与える。即ち、書き込みステップである(S9)。
データ記憶部DS3に0を記憶しているデータ回路16で、その全てのデータ記憶部DS2のデータが1か否かを検出し、全て1なら00第1段階ステータスをパスと判断し、そうでなければパスでないと判断する(S10)。後ほど説明するが、その全てのデータ記憶部DS2のデータが1であれば、前段の書き込みステップ(S9)で00第1段階書き込みされたメモリセルは無い。
00第1段階ステータスがパスでなければ、00第1段階書き込みベリファイが起動される(S11)。1ページ分のメモリセルのうち、検出結果がパスとなったメモリセルに対応し、かつ、データ記憶部DS3のデータが0であるデータ記憶回路16中のデータ記憶部DS2のデータを0から1に変える。データ記憶部DS2のデータが1であるものは、その“1”を保持する。
00第1段階ステータスがパスの場合、あるいは00第1段階書き込みベリファイが終了すると、00第2段階書き込みベリファイが起動される(S12)。1ページ分のメモリセルのうち検出結果がパスとなったメモリセルに対応し、かつ、データ記憶部DS3のデータが0であるデータ記憶回路16中のデータ記憶部DS1のデータを0から1に変える。データ記憶部DS1のデータが1であるものは、その“1”を保持する。
次に、データ記憶部DS3に1を記憶しているデータ回路16で、その全てのデータ記憶部DS2のデータが1か否かを検出し、全て1なら01第1段階ステータスをパスと判断し、そうでなければパスでないと判断する(S13)。後ほど説明するが、その全てのデータ記憶部DS2のデータが1であれば、前段の書き込みステップ(S9)で01第1段階書き込みされたメモリセルは無い。
01第1段階ステータスがパスでなければ、01第1段階書き込みベリファイが起動される(S14)。1ページ分のメモリセルのうち、検出結果がパスとなったメモリセルに対応し、かつ、データ記憶部DS3のデータが1であるデータ記憶回路16中のデータ記憶部DS2のデータを0から1に変える。データ記憶部DS2のデータが1であるものは、その“1”を保持する。
01第1段階ステータスがパスの場合、あるいは01第1段階書き込みベリファイが終了すると、01第2段階書き込みベリファイが起動される(S15)。1ページ分のメモリセルのうち、検出結果がパスとなったメモリセルに対応し、かつ、データ記憶部DS3のデータが1であるデータ記憶回路16中のデータ記憶部DS1のデータを0から1に変える。データ記憶部DS1のデータが1であるものは、その“1”を保持する。
01第2段階書き込みベリファイ後、全てのデータ記憶部DS1のデータが1か否かを検出し、全て1なら第2段階ステータスをパスと判断し、そうでなければパスでないと判断する(S16)。第2段階ステータスがパスであれば、正常に書き込みが終了したとして、書き込みステータスをパスに設定して書き込み終了となる(S17)。第2段階ステータスがパスでなければ書き込みカウンタPCを調べ(S18)、その値が20以上であれば正常に書き込めなかったとして、書き込みステータスをフェイルに設定して書き込み終了となる(S19)。書き込みカウンタPCの値が20より少なければ、書き込みカウンタPCの値を1だけ増やして、また、書き込み電圧Vpgmの設定値を0.2V増やし(S20)、再度ステップS8を経て書き込みステップS9となる。
表5は、図12に示される同一メモリセルMへの上位ページのデータの書き込みアルゴリズム中の、データ記憶部DS1、DS2、及びDS3の01第1段階書き込みベリファイ前後のデータと対応するメモリセルのしきい値との関係を示す。
表5に示すように、n番目の01第1段階書き込みベリファイ前のデータ記憶部DS1、DS2、及びDS3の取り得る値は、0/0/1か、0/1/1か、1/1/1か、0/0/0か、0/1/0か、1/1/0かである。
0/0/1は、n−1番目の書き込みステップまでにメモリセルのしきい値が01第1段階書き込みベリファイ電圧にも達していない、ということを示す。
0/1/1は、n−1番目の書き込みステップまでにメモリセルのしきい値が01第1段階書き込みベリファイ電圧には達したが、01第2段階書き込みベリファイ電圧には達していない、ということを示す。
1/1/1は、n−1番目の書き込みステップまでにメモリセルのしきい値が01第2段階書き込みベリファイ電圧に達した、ということを示す。
なお、n−1番目の書き込みステップまでにメモリセルのしきい値が01第2段階書き込みベリファイ電圧には達したが、01第1段階書き込みベリファイ電圧には達していない、ということはあり得ないので1/0/1という状態はこの例では無い。
メモリセルのしきい値がn番目の書き込みステップで、01第1段階書き込みベリファイ電圧である1.2Vに達していなければ、01第1段階書き込みベリファイでの検出結果はパスではない。データ記憶部DS2のデータは変更されない。
メモリセルのしきい値がn番目の書き込みステップで、01第1段階書き込みベリファイ電圧である1.2Vに達していれば、01第1段階書き込みベリファイでの検出結果はパスである。データ記憶部DS2のデータは1に変更される。1であるデータ記憶部DS2のデータはメモリセルのしきい値によらず変更されない。また、0/0/0、0/1/0、1/1/0は01第1段階書き込みベリファイ対象ではないので変更されない。
表6は、図13に示される同一メモリセルMへの上位ページのデータの書き込みアルゴリズム中の、データ記憶部DS1、DS2、及びDS3の01第2段階書き込みベリファイ前後のデータと対応するメモリセルのしきい値との関係を示す。
表6に示すように、n番目の01第2段階書き込みベリファイ前のデータ記憶部DS1、DS2、及びDS3の取り得る値は、0/0/1か、0/1/1か、1/1/1か、0/0/0か、0/1/0か、1/1/0かである。
0/0/1は、n番目の書き込みステップ後にメモリセルのしきい値が01第1段階書き込みベリファイ電圧にも達していない、ということを示す。
0/1/1は、n番目の書き込みステップまでにメモリセルのしきい値が01第1段階書き込みベリファイ電圧には達したが、n−1番目の書き込みステップまではメモリセルのしきい値が01第2段階書き込みベリファイ電圧には達していない、ということを示す。
1/1/1は、n−1番目の書き込みステップまでにメモリセルのしきい値が01第2段階書き込みベリファイ電圧に達した、ということを示す。
メモリセルのしきい値がn番目の書き込みステップで、01第2段階書き込みベリファイ電圧である1.4Vに達していなければ、01第2段階書き込みベリファイでの検出結果はパスではない。データ記憶部DS1のデータは変更されない。
メモリセルのしきい値がn番目の書き込みステップで、01第2段階書き込みベリファイ電圧である1.4Vに達していれば、01第2段階書き込みベリファイでの検出結果はパスである。データ記憶部DS1のデータは1に変更される。1であるデータ記憶部DS1のデータはメモリセルのしきい値によらず変更されない。0/0/1は、01第2段階書き込みベリファイによって変更されることはない。また、0/0/0、0/1/0、1/1/0は、01第2段階書き込みベリファイ対象ではないので変更されない。
表7は、図13に示される同一メモリセルMへの上位ページのデータの書き込みアルゴリズム中の、データ記憶部DS1、DS2、及びDS3の00第1段階書き込みベリファイ前後のデータと対応するメモリセルのしきい値との関係を示す。
表7に示すように、n番目の00第1段階書き込みベリファイ前のデータ記憶部DS1、DS2、及びDS3の取り得る値は、0/0/1か、0/1/1か、1/1/1か、0/0/0か、0/1/0か、1/1/0かである。
0/0/0は、n−1番目の書き込みステップまでにメモリセルのしきい値が00第1段階書き込みベリファイ電圧にも達していない、ということを示す。
0/1/0は、n−1番目の書き込みステップまでにメモリセルのしきい値が00第1段階書き込みベリファイ電圧には達したが、00第2段階書き込みベリファイ電圧には達していない、ということを示す。
1/1/0は、n−1番目の書き込みステップまでにメモリセルのしきい値が00第2段階書き込みベリファイ電圧に達した、ということを示す。
なお、n−1番目の書き込みステップまでにメモリセルのしきい値が00第2段階書き込みベリファイ電圧には達したが、00第1段階書き込みベリファイ電圧には達していない、ということはあり得ないので1/0/0という状態はこの例では無い。
メモリセルのしきい値がn番目の書き込みステップで、00第1段階書き込みベリファイ電圧である2.2Vに達していなければ、00第1段階書き込みベリファイでの検出結果はパスではない。データ記憶部DS2のデータは変更されない。
メモリセルのしきい値がn番目の書き込みステップで、00第1段階書き込みベリファイ電圧である2.2Vに達していれば、00第1段階書き込みベリファイでの検出結果はパスなので、データ記憶部DS2のデータは1に変更される。1であるデータ記憶部DS2のデータはメモリセルのしきい値によらず変更されない。また、0/0/1、0/1/1、1/1/1は01第1段階書き込みベリファイ対象ではないので変更されない。
表8は、図12に示される同一メモリセルMへの上位ページのデータの書き込みアルゴリズム中の、データ記憶部DS1、DS2、及びDS3の00第2段階書き込みベリファイ前後のデータと対応するメモリセルのしきい値との関係を示す。
表8に示すように、n番目の00第2段階書き込みベリファイ前のデータ記憶部DS1、DS2、及びDS3の取り得る値は、0/0/1か、0/1/1か、1/1/1か、0/0/0か、0/1/0か、1/1/0かである。
0/0/0は、n番目の書き込みステップ後にメモリセルのしきい値が00第1段階書き込みベリファイ電圧にも達していない、ということを示す。
0/1/0は、n番目の書き込みステップまでにメモリセルのしきい値が00第1段階書き込みベリファイ電圧には達したが、n−1番目の書き込みステップまではメモリセルのしきい値が00第2段階書き込みベリファイ電圧には達していない、ということを示す。
1/1/0は、n−1番目の書き込みステップまでにメモリセルのしきい値が00第2段階書き込みベリファイ電圧に達した、ということを示す。
なお、n−1番目の書き込みステップまでにメモリセルのしきい値が00第2段階書き込みベリファイ電圧には達したが、n番目の書き込みステップまでにメモリセルのしきい値が00第1段階書き込みベリファイ電圧には達していない、ということはあり得ないので1/0/0という状態はこの例では無い。
メモリセルのしきい値がn番目の書き込みステップで、00第2段階書き込みベリファイ電圧である2.4Vに達していなければ、00第2段階書き込みベリファイでの検出結果はパスではない。データ記憶部DS1のデータは変更されない。
メモリセルのしきい値がn番目の書き込みステップで、00第2段階書き込みベリファイ電圧である2.4Vに達していれば00第2段階書き込みベリファイでの検出結果はパスである。データ記憶部DS1のデータは1に変更される。1であるデータ記憶部DS1のデータはメモリセルのしきい値によらず変更されない。0/0/0は、00第2段階書き込みベリファイによって変更されることはない。また、0/0/1、0/1/1、1/1/1は00第2段階書き込みベリファイ対象ではないので変更されない。
図14A〜図14Cは、多値フラッシュメモリにおける加工寸法の微細化がもたらす事情を示す図である。
図14Aは、消去後、偶数番目のビット線BLeに対して書き込みが行われた後の浮遊ゲートFGの電荷の様子を示す。
書き込みされたメモリセルMの浮遊ゲートFGには電子(−)が蓄積される。その後、奇数番目のビット線BLoに対して書き込みが行われると、図14Bのように、偶数番目のビット線BLeに繋がるメモリセルMの浮遊ゲートFGに変化が起きる。隣接した浮遊ゲートFG間の静電容量結合により、偶数番目のメモリセルMの電位が下がり、しきい値が図14Cに示されるように上昇する。
上記事情に対して、しきい値電圧分布幅を狭くする技術は、今後非常に重要になっていく。
図15は、ブロック内の書き込みの順番を示す図である。
初めにワード線WL0を選択し、偶数番目のビット線に繋がるメモリセルMで構成される1つのページに下位のデータを書き込む。その後、奇数番目のビット線に繋がるメモリセルMで構成される1つのページに下位のデータを書き込む。3番目に、偶数番目のビット線に繋がるメモリセルMで構成される1つのページに上位のデータを書き込んで、最後に奇数番目のビット線に繋がるメモリセルMで構成される1つのページに上位のデータを書き込む。以下、同様にワード線WL1、WL2、WL3と書き込んで行く。
これにより、隣接浮遊ゲート間の干渉を最小に抑えることができる。つまり、後で書き込まれるメモリセルMは、その状態が11から10、11から01、あるいは10から00に遷移しても、11から00に遷移することは無い。11から00への遷移は最も隣接メモリセルのしきい値を上昇させる。
図16は、同一メモリセルMの下位ページデータの読み出しアルゴリズムを示している。
まず、ホストから読み出しコマンドを受け取り、ステートマシン8に読み出しコマンドを設定する(S1)。次に、ホストからのアドレスデータを受け取り、ステートマシン8に読み出しページを選択するためのアドレスを設定する(S2)。アドレスが設定されて、S3からS5のステップが自動的に内部でステートマシン8によって起動される。
まず、01読み出しが起動される(S3)。読み出した結果は対応するデータ記憶部DS3に記憶される。次に、10読み出しが起動されて(S4)、読み出した結果は対応するデータ記憶部DS2に記憶される。最後に、00読み出しが起動されて(S5)、読み出した結果と対応するデータ記憶部DS2とDS3のデータから下位のページのデータを論理演算し、対応するデータ記憶部DS1に記憶させる。このデータ記憶部DS1のデータを外部へ出力する。
図17は、同一メモリセルMの上位ページのデータの読み出しアルゴリズムを示す図である。
まず、ホストからの読み出しコマンドを受け取り、ステートマシン8に読み出しコマンドを設定する(S1)。ホストからのアドレスデータを受け取り、ステートマシン8に読み出しページを選択するためのアドレスを設定する(S2)。アドレスが設定されて、S3のステップが自動的に内部でステートマシン8によって起動される。
01読み出しが起動される(S3)。読み出した結果は上位ページのデータであり、対応するデータ記憶部DS1に記憶される。このデータ記憶部DS1のデータを外部へ出力する。
図18Aは、図11に示した書き込みステップ例1を示す動作波形図である。図18Bは書き込みステップ例2を示す動作波形図である。
図18Bに示すように、書き込み制御電圧であるビット線BLの電圧VBLを0.4Vにする代わりに、書き込み電圧Vpgmが選択されたワード線WL2に印加されて一定期間は0Vとし、その後、書き込みを禁止するようにVddとする。これにより、実効的な書き込みパルス幅が短くなり、しきい値の上昇が抑えられ、書き込み制御電圧であるビット線BLの電圧VBLを0.4Vにするのと同様の効果が得られる。
図19は、図11に示した書き込みベリファイの変形例を示す動作波形図である。
図19に示すように、第1段階書き込みベリファイ時には、まず、ビット線BLeは0.7Vに充電される。その後、選択ワード線WL2が第1段階書き込みベリファイ電圧に達すると、もしも、メモリセルMのしきい値が第1段階書き込みベリファイ電圧に達しているならば0.7Vを維持する。また、もしも、メモリセルMのしきい値が第1段階書き込みベリファイ電圧に達していないならば、0Vに向かって下がる。タイミングtfv4のタイミングでビット線BLeの電圧を検出すれば、メモリセルMのしきい値が第1段階書き込みベリファイ電圧に達しているか否か検出できる。メモリセルMのしきい値が書き込みベリファイ電圧に達していれば検出結果は“パス”である。
その後、タイミングtfv5あるいは同タイミングのtsv3で、選択ワード線WL2の電圧を第1段階書き込みベリファイ電圧から第2段階書き込みベリファイ電圧にスイッチする。もしも、メモリセルMのしきい値が第2段階書き込みベリファイ電圧に達しているならば、0.7Vを維持する。また、もしも、メモリセルMのしきい値が第2段階書き込みベリファイ電圧に達していないならば、0Vに向かって下がる。タイミングtsv4のタイミングでビット線BLeの電圧を検出すれば、メモリセルMのしきい値が第2段階書き込みベリファイ電圧に達しているか否か検出できる。メモリセルMのしきい値が書き込みベリファイ電圧に達していれば検出結果は“パス”である。
これにより、第2段階書き込みベリファイ時のビット線の充電時間が省略でき、より高速に書き込みが行える。01や00の第1あるいは第2段階書き込みベリファイも同様に書き込みベリファイ電圧を変えるだけで実施できる。
本例に係る半導体集積回路装置は、下記の構成を、さらに含む。
図20A、及び図20Bは、この発明の第1実施形態に係るNAND型フラッシュメモリのしきい値電圧の分布を示す図である。図20Aは4値記憶(2ビット記憶)の場合の一例を示し、図20Bは8値記憶(3ビット記憶)の場合の一例を示す。なお、本実施形態、及びこれ以降説明する実施形態は、4値記憶、8値記憶に限らず3値以上のデータを記憶可能な不揮発性半導体メモリであれば適用することができる。
4値記憶の場合には、図20Aに示すように、しきい値電圧が低いほうから順に、A、B、C、Dのしきい値分布がある。8値記憶の場合には、図20Bに示すように、低いほうから順に、A、B、C、D、E、F、G、Hのしきい値分布がある。最も低いしきい値分布Aは、消去レベルであり、例えば、負の電圧である。それ以外の分布は、本例では、書き込みレベルである。最も高い書き込みレベルは、4値記憶の場合には分布D、8値記憶の場合には分布Hである。
本例では、最も高い書き込みレベルにおけるしきい値電圧分布幅Vthwは、それ以外の書き込みレベルにおけるしきい値電圧分布幅Vthwよりも広い。例えば、図20Aに示す例においては、分布Dの分布幅VthwDは、分布Cの分布幅VthwC、及び分布Bの分布幅VthwBよりも広い。同様に、図20Bに示す例においては、分布Hの分布幅VthwHは、分布Gの分布幅VthwG、…(省略)…、及び分布Bの分布幅VthwBよりも広い。
また、本例では、最も高い書き込みレベルか次に高い書き込みレベルかを判別する読み出し電圧Vreadと中間電圧Vpassとの間の電位差が、他の読み出し電圧間の電位差よりも大きい。例えば、図20Aに示す例においては、書き込みレベルDか書き込みレベルCかを判別する読み出し電圧Vread2と中間電圧Vpassとの間の電位差Vp2は、読み出し電圧Vread2と書き込みレベルCか書き込みレベルBかを判別する読み出し電圧Vread1との間の電位差V21、及び読み出し電圧Vread1と書き込みレベルBか消去レベルAかを判別する読み出し電圧Vreadとの電位差V1rよりも大きい。同様に、図20Bに示す例においては、書き込みレベルHか書き込みレベルGかを判別する読み出し電圧Vread6と中間電圧Vpassとの間の電位差Vp6は、読み出し電圧Vread6と書き込みレベルGか書き込みレベルFかを判別する読み出し電圧Vread5との間の電位差V65、…(省略)…、及び読み出し電圧Vread1と書き込みレベルBか消去レベルAかを判別する読み出し電圧Vreadとの電位差V1rよりも大きい。
このように、最も高い書き込みレベルか次に高い書き込みレベルかを判別する読み出し電圧Vreadと中間電圧Vpassとの間の電位差が、他の読み出し電圧間の電位差よりも大きくすることで、最も高い書き込みレベルのしきい値電圧分布幅Vthwを広げやすい、という利点を得ることができる。
なお、図20A、図20Bに示す参照符号a、b、c、d、e、f、gは、ベリファイ読み出し時にワード線に与えるベリファイ電圧を示す。
図21、及び図22に、第1実施形態による効果を示す。図21には一例として、書き込みレベルB、C、Dを順に書き込む場合を示す。また、4値記憶の場合のみを図示するが、8値記憶の場合にも同様の効果があることは言うまでもない。
図21には、しきい値の上昇の度合いが模式的に示される。即ち、縦軸はしきい値電圧のレベルを示し、横軸は時間を示す。
書き込みレベルDの分布幅VthwDが、他の分布幅VthwC、VthwBよりも広い、ということは書き込みレベルDを書き込むときのワード線電圧のステップアップ幅を、書き込みレベルC、Bを書き込むときのそれよりも大きくできる、ということである。
従って、しきい値の上昇の度合いは、図21中の(I)線に示すように、例えば、書き込みレベルCから、書き込みレベルDに上昇する際に急峻となる。(II)線は、ステップアップ幅を変えない場合の例であるが、その上昇の度合いは、書き込みレベルCから、書き込みレベルDに上昇する際には(I)線に比較してなだらかである。(I)線と(II)線との傾きの違いが、実際の装置においては、“書き込み時間の短縮”という形で現れる。
図22には図21に示す書き込みに、さらに、パス・ライト方式、又はクイック・パス・ライト方式を適用した場合を示す。図22に示す参照符号a´、b´、c´は1st Pass時における第1段階ベリファイ電圧、参照符号a、b、cは2nd Pass時における第2段階ベリファイ電圧を示す。
図22に示すように、パス・ライト方式、又はクイック・パス・ライト方式を適用した場合には、大きく3つの方式に分けることができる。
1.書き込みレベルDの書き込みの際、図21に示す例と同様に、ステップアップ幅を大きくする((I)線参照)。そして、書き込みレベルDの書き込みの際、パス・ライト方式、又はクイック・パス・ライト方式を使わない。
2.書き込みレベルDの書き込みの際、パス・ライト方式、又はクイック・パス・ライト方式を使わない。1.と異なるところは、書き込みレベルDの書き込みの際のステップアップ幅が、1st Pass時のステップアップ幅は同じであるところである。しかし、第1段階ベリファイ読み出し電圧C´に達しても、ステップアップ幅は小さくしない((II)線参照)。
3.書き込みレベルDの書き込みの際、パス・ライト方式、又はクイック・パス・ライト方式を使う。ただし、書き込みレベルDの書き込みの際の2nd Pass時のステップアップ幅は、書き込みレベルC、Bの書き込みの際の2nd Pass時のステップアップ幅よりも大きくする((III)線参照)。
いずれの場合においても、書き込みレベルDの書き込みの際に、書き込みレベルC、Bの書き込みの際と同様のパス・ライト方式、又はクイック・パス・ライト方式を使用する場合((IV)線参照)に比較すれば、書き込み時間を短縮することができる。
なお、第1実施形態を実現する書き込み方式については、図21、図22に示す方式に限らない。例えば、図22に示す1〜3を組み合わせても良く、さらに、これら1〜3以外にもあることを付記しておく。
このように、第1実施形態によれば、書き込みレベルのしきい値電圧分布幅に、広い分布幅と狭い分布幅との双方を設定することによって、書き込み動作を高速化することができる。
なお、ステップアップ幅を変える際には、例えば、書き込んだデータを参照すれば良い。書き込んだデータは、例えば、ページバッファにある。従って、ページバッファのデータを参照して、ステップアップ幅を変えるべきデータであるとき、ステップアップ幅を変えるようにすれば良い。
また、ページバッファのデータを参照する際には、ページバッファの書き込みデータを参照し、一括検知回路を用いてステップアップ幅を変えるようにしても良い。
また、ページバッファのデータを参照する際には、ページバッファの書き込みデータを、I/O線を通じて出力し、出力された書き込みデータを参照するようにしても良い。
(第2実施形態)
第1実施形態では、一つの書き込みしきい値電圧分布幅を、他の書き込みしきい値電圧分布幅から変えた。しかし、変える分布幅は一つに限られるものではない。2つ以上全ての書き込みしきい値電圧分布幅を変えるようにしても良い。その一例を図23A、及び図23Bに示す。図23Aは4値記憶(2ビット記憶)の場合の一例を示し、図23Bは8値記憶(3ビット記憶)の場合の一例を示す。
本例では、一例として2以上ある書き込みレベルのしきい値電圧分布幅Vthwがそれぞれ異ならせる。特に、本例では、高い書き込みレベルであるほど、分布幅Vthwを広くする。
図23Aに示す一例においては、分布幅VthwB〜VthwDの関係は、
VthwB<VthwC<VthwD
である。
同様に、図23Bに示す一例においては、分布幅VthwB〜VthwHの関係は、
VthwB<VthwC<…(省略)…<VthwG<VthwH
である。
また、本例では、読み出し電圧間の電位差も、高い書き込みレベルになるほど大きくするようにしている。
図23Aに示す一例においては、電位差V1r〜Vp2の関係は、
V1r<V21<Vp2
である。
同様に、図23Bに示す一例においては、電位差V1r〜Vp6の関係は、
V1r<V21<V32<…(省略)…<V54<V65<Vp6
である。
このように、読み出し電圧間の電位差を、高い書き込みレベルになるほど大きくすることで、高い書き込みレベルになるほど分布幅Vthwを広げやすくなる、という利点を得ることができる。
このように、第2実施形態においても第1実施形態と同様に、書き込みレベルのしきい値電圧分布幅に、広い分布幅と狭い分布幅との双方を設定することによって、書き込み動作を高速化することができる。
次に、第2実施形態の変形例を説明する。
(第1変形例)
第1変形例は、読み出し電圧間の電位差に差を設定しつつ、第1実施形態と同様に、最も高い書き込みレベルを除いて、これ以外の書き込みレベルのしきい値電圧分布幅は変えないようにしたものである。
不揮発性半導体メモリセルは、浮遊ゲートに強制的に電子を注入してしきい値を変える。不揮発性半導体メモリセルも物理的構造物の一つである。物理的構造物である以上、物理的に安定した状態を持つ。また、浮遊ゲートに強制的に電子を注入する、ということは、物理的に安定した状態から、安定しない状態へシフトさせる、ということである。安定しない状態にある物理的構造物は、安定した状態に戻ろう、とする。この現象を勘案して、本変形例は、安定した状態に近いほど読み出し電圧間の電位差を小さくし、安定した状態から遠ざかるほど読み出し電圧間の電位差を大きくする、ものである。
安定した状態の一つは、電位的な観点からは0Vである。本変形例では、書き込みレベルが0Vに近いほど読み出し電圧間の電位差を小さくし、0Vから遠ざかるほど読み出し電圧間の電位差を大きくする。
データ保持時間が長くなれば、書き込みレベルが0Vから遠ざかるほど、0Vに向かって低下する度合いが大きくなる。本変形例では、0Vから遠ざかるほど読み出し電圧間の電位差を大きくする、ものである。
さらに、本変形例では、読み出し電圧と最低のしきい値電圧との差、いわゆるマージンVMも、書き込みレベルが0Vから遠ざかるほど、大きくする。そのような一例を図24に示す。具体的には、マージンVMB〜VMHの関係は、
VMB<VMC<VMD<VME<VMF<VMG<VMH
である。
図24に示すような書き込みしきい値電圧分布とすることで、データ保持時間が長くなった場合でも、書き込みレベルが低下して、読み出し電圧以下になってしまうことを抑制できる。従って、データ保持特性が向上する、という利点を得ることができる。
なお、本変形例においては、最も高い書き込みレベルのしきい値電圧分布幅を、他の書き込みレベルのしきい値電圧分布幅を広くするようにしたが、第2実施形態で説明したように、2つ以上の書き込みレベルのしきい値電圧分布幅を変えるようにしても良い。この場合においても、データ保持特性が向上する、という利点を得るためには、0Vから遠ざかるほどマージンを大きくすれば良い。
(第2変形例)
第2変形例が第1変形例と異なるところは、電位的な観点ではなく、半導体の物性的な観点から安定した箇所を特定したものである。
不揮発性半導体メモリセルの特性が安定する箇所として、中性しきい値電圧Vth*と呼ばれるものがある。中性しきい値電圧は、不揮発性半導体メモリセルに、例えば、紫外線を照射して、浮遊ゲートから電子を引き抜いた後のしきい値電圧である。不揮発性半導体メモリセルのしきい値電圧は、長時間放置しておくと、中性しきい値電圧に向かって収束する傾向を持つ。
不揮発性半導体メモリは、通常、電子機器のシステムに組み込まれる。システムに組み込まれた場合には、たとえ、アクセスされなかった場合でも電源電圧が与えられる。つまり、不揮発性半導体メモリには電気的なストレスがかかっている。この場合に、特性が安定する箇所は、0Vと考えても良い。
しかし、近時、不揮発性半導体メモリは、ICカードや、メモリカードの記憶媒体に使用されるようになってきた。ICカードや、メモリカードは、電子機器にも挿入せず、長時間放置されることが、しばしばある。ICカードや、メモリカードが、例えば、電子機器に挿入されない、ということは、不揮発性半導体メモリには電気的なストレスがかかっていない状態で、長時間放置される、ということである。この場合に、特性が安定する箇所は、中性しきい値電圧Vth*と考えても良い。
従って、本変形例では、書き込みレベルが中性しきい値電圧Vth*に近いほど読み出し電圧間の電位差を小さくし、中性しきい値電圧Vth*から遠ざかるほど読み出し電圧間の電位差を大きくする。そして、本変形例では、中性しきい値電圧Vth*から遠ざかるほど読み出し電圧間の電位差を大きくし、かつ、読み出し電圧と最低のしきい値電圧との差、いわゆるマージンも大きくする。そのような一例を図25に示す。
図25に示すような書き込みしきい値電圧分布とすることで、第1変形例と同様の利点を得ることができる。
なお、中性しきい値電圧Vth*は、本変形例では、0Vとベリファイ電圧aとの間にあるが、中性しきい値電圧Vth*は、他の電圧も取り得る。例えば、読み出し電圧Vread2とベリファイ電圧cとの間などである。このような場合でも、中性しきい値電圧Vth*から遠ざかるほど読み出し電圧間の電位差を大きくし、かつ、読み出し電圧と最低のしきい値電圧との差、いわゆるマージンも大きくすれば良い。
なお、本変形例においても、第2実施形態で説明したように、2つ以上の書き込みレベルのしきい値電圧分布幅を変えるようにしても良い。この場合においても、データ保持特性が向上する、という利点を得るためには、中性しきい値電圧Vth*から遠ざかるほどマージンを大きくすれば良い。
(第3実施形態)
本実施形態は、ワード線に与える書き込み電圧のステップアップ幅の一例に関する。
図26は、この発明の第3実施形態の第1例に係るNAND型フラッシュメモリのしきい値電圧の分布を示す図である。第1例は、例えば、第1実施形態に係るNAND型フラッシュメモリのようなしきい値電圧分布を得るための、ステップアップ幅の変更例である。
図26には、4値記憶の例を示す。この場合には、10書き込み(分布B)の際のステップアップ幅Dvpgm(=Dv10)と、01書き込み(分布C)の際のステップアップ幅Dvpgm(=Dv01)とを同じとする。さらに、00書き込み(分布D)の際のステップアップ幅Dvpgm(=Dv00)は、ステップアップ幅Dv10、及びDv01よりも大きくすれば良い。
即ち、Dv10=Dv01<Dv00とする。4値記憶以外の場合にも同様である。
図27は、この発明の第3実施形態の第2例に係るNAND型フラッシュメモリのしきい値電圧の分布を示す図である。第2例は、例えば、第2実施形態に係るNAND型フラッシュメモリのようなしきい値電圧分布を得るための、ステップアップ幅の変更例である。
図26には、4値記憶の例を示す。この場合には、01書き込み(分布C)の際のステップアップ幅Dvpgm(=Dv01)を、10書き込み(分布B)の際のステップアップ幅Dvpgm(=Dv10)よりも大きくする。さらに、00書き込み(分布D)の際のステップアップ幅Dvpgm(=Dv00)は、ステップアップ幅Dv01よりも大きくすれば良い。
即ち、Dv10<Dv01<Dv00とする。4値記憶以外の場合にも同様である。
(第4実施形態)
本実施形態は、狭いしきい値電圧分布を得るための手法の一例に関する。
データ書き換えが可能な不揮発性半導体メモリ、例えば、NAND型フラッシュメモリは、その記憶容量は、益々増大する傾向にある。
記憶容量の増加の増大に伴ってメモリセルの微細化がすすむと、今までは現れにくかった現象、例えば、隣接したセルの浮遊ゲートの電位に起因したしきい値電圧変動が現れるようになってきた。このしきい値電圧変動は、近接効果と呼ばれる。近接効果は、データ書き込み済みメモリセルのしきい値電圧を変動させる。これは、データの誤書き込みの原因になり得る。
このような書き込み済みメモリセルのしきい値電圧の変動を抑制し、かつ、狭いしきい値電圧分布するための手法の一つとしてLM書き込み方式と呼ばれる書き込み方式がある。本実施形態は、第1実施形態をLM書き込み方式に適用したものである。
まず、本例のLM書き込み方式におけるページの定義について説明する。ページの定義を図28に示す。本例のLM書き込み方式では、ページは、例えば、最上位ビットを第1ページとし、下位ビットに進むにつれ第2ページ、第3ページ、…と定義される。図28には、4値の場合、及び8値の場合を示すが、4値、8値以外の場合も、例えば、同様である。図29に、データを書き込むセルと、その周囲のセルとを示す。
図29に示す偶数ビット線BLe(BLe2)に接続されたメモリセルの書き込みデータに、奇数ビット線BLo(BLo1、BLo2)に接続されたメモリセルに書き込まれたデータによって近接効果が発生することを想定する。例えば、セルMC1e2に書き込まれたデータには、セルMC1e2に隣接するセルMC1o1、MC1o2に書き込まれたデータによって近接効果が発生する。
(4値記憶の場合)
図30〜図32は、偶数ビット線BLeに接続されたメモリセルのしきい値電圧の分布を主要な書き込み段階毎に示す図である。
まず、偶数ビット線BLeに接続されたメモリセルに、第1ページのデータを書き込む。
図30に示すように、第1ページのデータが“1”ならばしきい値電圧は消去レベル“11(分布A)”を維持し、“0”ならば0x書き込みを行い、しきい値電圧を消去レベル“11”から書き込みレベル“0x(分布C)”にシフトする。参照符号bxは0xレベルベリファイ電圧である。
この後、奇数ビット線BLoに接続されたメモリセルに、第1ページのデータを書き込む。奇数ビットBLoに接続されたメモリセルに、第1ページのデータを書き込んだ後の、偶数ビット線BLeに接続されたメモリセルのしきい値電圧の分布を図31に示す。
図31に示すように、書き込みレベル“0x”のしきい値電圧分布は、隣接セルに書き込まれた第1ページのデータの影響を受け、広がる。
次に、偶数ビット線BLeに接続されたメモリセルに、第2ページのデータを書き込む。
図32に示すように、第1ページのデータが“1”、かつ、第2ページのデータが“1”ならばしきい値電圧は消去レベル“11”を維持する。
また、第1ページのデータが“1”、かつ、第2ページのデータが“0”ならば10書き込みを行い、しきい値電圧を消去レベル“11”から書き込みレベル“10(分布B)”にシフトする。参照符号aは10レベルベリファイ電圧である。
また、第1ページのデータが“0”、かつ、第2ページのデータが“1”ならば01書き込みを行い、しきい値電圧を書き込みレベル“0x”から書き込みレベル“01”にシフトする。参照符号bは01レベルベリファイ電圧である。この01書き込みによって、図31に示す書き込みレベル“0x”の広がったしきい値電圧分布は、縮小される。
また、第1ページのデータが“0”、かつ、第2ページのデータが“0”ならば00書き込みを行い、しきい値電圧を書き込みレベル“0x”から書き込みレベル“00(分布D)”にシフトする。参照符号cは00レベルベリファイ電圧である。
本例では、00書き込みの際に、ワード線電圧のステップアップ幅を、10書き込みや、01書き込みの際のステップアップ幅よりも大きくする。これにより、図32に示すように、第1実施形態と同様のしきい値電圧分布を得ることができる。そして、00書き込みにおけるワード線電圧のステップアップ幅を、他の書き込みにおけるステップアップ幅よりも大きくすることで、第1実施形態と同様に、書き込み動作を高速化することができる。
(8値記憶の場合)
図33〜図37は、偶数ビット線BLeに接続されたメモリセルのしきい値電圧の分布を主要な書き込み段階毎に示す図である。
まず、偶数ビット線BLeに接続されたメモリセルに、第1ページのデータを書き込む。
図33に示すように、第1ページのデータが“1”ならばしきい値電圧は消去レベル“111(分布A)”を維持し、“0”ならば0xx書き込みを行い、しきい値電圧を消去レベル“111”から書き込みレベル“0xx(分布E)”にシフトする。参照符号dxxは0xxレベルベリファイ電圧である。
この後、奇数ビット線BLoに接続されたメモリセルに、第1ページのデータを書き込む。奇数ビットBLoに接続されたメモリセルに、第1ページのデータを書き込んだ後の、偶数ビット線BLeに接続されたメモリセルのしきい値電圧の分布を図34に示す。
図34に示すように、書き込みレベル“0xx”のしきい値電圧分布は、隣接セルに書き込まれた第1ページのデータの影響を受け、広がる。
次に、偶数ビット線BLeに接続されたメモリセルに、第2ページのデータを書き込む。
図35に示すように、第1ページのデータが“1”、かつ、第2ページのデータが“1”ならばしきい値電圧は消去レベル“111”を維持する。
また、第1ページのデータが“1”、かつ、第2ページのデータが“0”ならば10x書き込みを行い、しきい値電圧を消去レベル“111”から書き込みレベル“10x(分布C)”にシフトする。参照符号bxは10xレベルベリファイ電圧である。
また、第1ページのデータが“0”、かつ、第2ページのデータが“1”ならば01x書き込みを行い、しきい値電圧を書き込みレベル“0xx”から書き込みレベル“01x(分布E)”にシフトする。参照符号dxは01xレベルベリファイ電圧である。この01x書き込みによって、図34に示す書き込みレベル“0xx”の広がったしきい値電圧分布は、縮小される。
また、第1ページのデータが“0”、かつ、第2ページのデータが“0”ならば00x書き込みを行い、しきい値電圧を書き込みレベル“0xx”から書き込みレベル“00x(分布G)”にシフトする。参照符号fxは00xレベルベリファイ電圧である。
この後、奇数ビット線BLoに接続されたメモリセルに、第2ページのデータを書き込む。奇数ビットBLoに接続されたメモリセルに、第2ページのデータを書き込んだ後の、偶数ビット線BLeに接続されたメモリセルのしきい値電圧の分布を図36に示す。
図36に示すように、書き込みレベル“10x”、“01x”、“00x”のしきい値電圧分布は、隣接セルに書き込まれた第2ページのデータの影響を受け、広がる。
次に、偶数ビット線BLeに接続されたメモリセルに、第3ページのデータを書き込む。
図37に示すように、第1ページのデータが“1”、かつ、第2ページのデータが“1”、かつ、第3ページのデータが“1”ならばしきい値電圧は消去レベル“111”を維持する。
また、第1ページのデータが“1”、かつ、第2ページのデータが“1”、かつ、第3ページのデータが“0”ならば110書き込みを行い、しきい値電圧を消去レベル“111”から書き込みレベル“110(分布B)”にシフトする。参照符号aは110レベルベリファイ電圧である。
また、第1ページのデータが“1”、かつ、第2ページのデータが“0”、かつ、第3ページのデータが“1”ならば101書き込みを行い、しきい値電圧を書き込みレベル“10x”から書き込みレベル“101(分布C)”にシフトする。参照符号bは101レベルベリファイ電圧である。この101書き込みによって、図36に示す書き込みレベル“10x”の広がったしきい値電圧分布は、縮小される。
また、第1ページのデータが“1”、かつ、第2ページのデータが“0”、かつ、第3ページのデータが“0”ならば100書き込みを行い、しきい値電圧を書き込みレベル“10x”から書き込みレベル“100(分布D)”にシフトする。参照符号cは100レベルベリファイ電圧である。
また、第1ページのデータが“0”、かつ、第2ページのデータが“1”、かつ、第3ページのデータが“1”ならば011書き込みを行い、しきい値電圧を書き込みレベル“01x”から書き込みレベル“011(分布E)”にシフトする。参照符号dは011レベルベリファイ電圧である。この011書き込みによって、図36に示す書き込みレベル“01x”の広がったしきい値電圧分布は、縮小される。
また、第1ページのデータが“0”、かつ、第2ページのデータが“1”、かつ、第3ページのデータが“0”ならば010書き込みを行い、しきい値電圧を書き込みレベル“01x”から書き込みレベル“010(分布F)”にシフトする。参照符号eは010レベルベリファイ電圧である。
また、第1ページのデータが“0”、かつ、第2ページのデータが“0”、かつ、第3ページのデータが“1”ならば001書き込みを行い、しきい値電圧を書き込みレベル“00x”から書き込みレベル“001(分布G)”にシフトする。参照符号fは001レベルベリファイ電圧である。この001書き込みによって、図36に示す書き込みレベル“00x”の広がったしきい値電圧分布は、縮小される。
また、第1ページのデータが“0”、かつ、第2ページのデータが“0”、かつ、第3ページのデータが“0”ならば000書き込みを行い、しきい値電圧を書き込みレベル“00x”から書き込みレベル“000(分布H)”にシフトする。参照符号gは000レベルベリファイ電圧である。
本例では、000書き込みの際に、ワード線電圧のステップアップ幅を、他の書き込みの際のステップアップ幅よりも大きくする。これにより、図37に示すように、第1実施形態と同様のしきい値電圧分布を得ることができる。そして、000書き込みにおけるワード線電圧のステップアップ幅を、他の書き込みにおけるステップアップ幅よりも大きくすることで、第1実施形態と同様に、書き込み動作を高速化することができる。
このように、第1実施形態は、LM書き込み方式に適用することができる。
なお、特に、図示はしないが、第1実施形態に限らず、第2実施形態についても、LM書き込み方式に適用することができる。
また、上記実施形態の態様は、下記を含む。
(1) 半導体チップと、前記チップに配置され、3値以上のデータを記憶可能で、かつ、データの書き換え可能な不揮発性メモリセルと、を備え、2以上ある書き込みしきい値電圧の分布幅を、2以上ある書き込みレベルに応じて変える。
(2) (1)に記載の態様において、前記2以上あるしきい値電圧の分布幅うち、最も高い書き込みレベルのしきい値電圧分布幅が最も広い。
(3) (1)に記載の態様において、前記不揮発性メモリセルにデータを書き込むとき、ワード線に与えられる書き込み電圧のステップアップ幅を、前記2以上ある書き込みレベルに応じて変える。
(4) (3)に記載の態様において、前記不揮発性メモリセルにデータを書き込むとき、ワード線に与えられる書き込み電圧のステップアップ幅を、前記2以上ある書き込みレベルに応じて変える。
(5) (1)〜(4)いずれか一つに記載の態様において、前記不揮発性メモリセルはNAND型であり、前記NAND型の不揮発性メモリセルからデータを読み出すとき、ワード線に中間電圧、及び2段階以上ある読み出し電圧が与えられ、前記2段階以上ある読み出し電圧のうち、最も高い書き込みレベルか次に高い書き込みレベルかを判別する第1読み出し電圧と前記中間電圧との間の電位差が、他の読み出し電圧間の電位差よりも大きい。
(6) (3)及び(4)いずれかに記載の態様において、ステップアップ幅は、ページバッファのデータを参照して変える。
(7) (3)、(4)、及び(6)いずれか一つに記載の態様において、ページバッファのデータは、一括検知回路を用いて参照する。
(8) (3)、(4)、及び(6)いずれか一つに記載の態様において、ページバッファのデータは、I/O線を通じて出力されたデータを参照する。
(9) (1)〜(8)いずれか一つに記載の態様において、書き込み方式は、パス・ライト方式、又はクイック・パス・ライト方式のいずれかである。
(10) (1)〜(8)いずれか一つに記載の態様において、書き込み方式は、LM書き込み方式である。
この発明の実施形態に係る半導体集積回路装置によれば、書き込み動作を高速化させることが可能な電気的に書き換えが可能な不揮発性半導体記憶装置を有した半導体集積回路装置を提供できる。
以上、この発明をいくつかの実施形態により説明したが、この発明は各実施形態に限定されるものではなく、その実施にあたっては発明の要旨を逸脱しない範囲で種々に変形することが可能である。
また、各実施形態は単独で実施することが可能であるが、適宜組み合わせて実施することも可能である。
また、各実施形態は種々の段階の発明を含んでおり、各実施形態において開示した複数の構成要件の適宜な組み合わせにより、種々の段階の発明を抽出することが可能である。
また、実施形態は、この発明をNAND型フラッシュメモリに適用した例に基づき説明したが、この発明はNAND型フラッシュメモリに限られるものではなく、AND型、NOR型等NAND型以外のフラッシュメモリにも適用することができる。さらに、これらフラッシュメモリを内蔵した半導体集積回路装置、例えば、プロセッサ、システムLSI等もまた、この発明の範疇である。