以下、この発明の実施形態のいくつかを、図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
(第1実施形態)
第1実施形態に係る半導体集積回路装置は、基本的に、セルアレイ、ブロック、あるいはページ単位で、しきい値電圧の設定を最適に設定するものである。
例えば、選択ゲート線に近いワード線では、そのカラム方向に沿った長さが細くなるため、選択ゲート線から遠いワード線よりも信頼性が劣る。そこで、ベリファイ電圧、書き込み時のステップアップ電圧幅、及び設定しきい値に近づいてきたらビット線に与える書き込み抑制電圧の少なくともいずれか一つを、セルアレイ、ブロック、あるいはページ単位で変える。これを利用して、セルアレイ、ブロック、あるいはページ単位で、しきい値電圧の設定を変える。例えば、選択ゲート線に近いワード線においては、書き込みしきい値電圧の分布幅(Vthmin-Vthmax)を狭くし、データ保持特性を向上させる。例えば、それ以外のワード線においては、書き込みしきい値電圧の分布幅(Vthmin-Vthmax)を、選択ゲート線に近いワード線よりも広くする。このようにして、動作の高速性を保ちつつ、データ保持特性を向上させることを実現する。
以下、この発明の第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段階書き込みベリファイも同様に書き込みベリファイ電圧を変えるだけで実施できる。
本例に係る半導体集積回路装置は、下記の構成を、さらに含む。
図20は、書き込み時、あるいは読み出し時におけるブロックの状態を示す図、図21は、本例に係るNAND型メモリユニットの一例を示す等価回路図である。
ビット線BLは、書き込み時、あるいは読み出し時において、ある電位にバイアスされる。選択したブロックにおいては選択トランジスタSTDをオンさせ、非選択ブロックにおいては、反対に、選択トランジスタSTDをオフさせる。このとき、非選択ブロックの選択トランジスタSTDは、ビット線BLから電流Iが漏れないように充分にカットオフさせなければならない。ビット線BLから、非選択ブロックを介して電流Iが漏れてしまうと、ビット線BLのバイアス電位が下がる。これは、誤書き込みや誤読み出しの一因となる。この事情を抑制するために、選択トランジスタSTDのゲート長Ldは、トランジスタが充分にカットオフできる長さに設定される。例えば、パンチスルー等が発生しないような長さである。
対して、メモリセルMのゲート長Lは、図21に示すように、選択トランジスタSTDのゲート長Ldよりも短くすることができる。この論理に従って、本例のメモリセルMのゲート長Lx(本例ではx=0〜31)は、選択トランジスタSTDのゲート長Ldよりも短くされる。その長さの一例は、設計上、信頼性を維持できる最小限度である。これにより、集積度の向上を図ることができる。
このように、Lx≠Ld、例えば、Lx<Ldに設定されたNAND型メモリユニットでは、次のような事情がしばしば起こる。
図22は、設計上の選択トランジスタSTDのゲート長(ブロック選択線の幅)、及びメモリセルMのゲート長(ワード線の幅)と、実際の選択トランジスタSTDのゲート長及びメモリセルMのゲート長との関係を示す図、図23は、ブロック内のページの位置とゲート長との関係を示す図、図24は、NAND型メモリユニットの実際の等価回路の一例を示す等価回路図である。
図22に示すように、設計上のメモリセルMのゲート長Lxdsnは、L0dsn=L1dsn=L2dsn…である。しかし、実際に半導体チップ上に形成すると、メモリセルMのゲート長Lnactは、L0act≠L1act≠L2act…となるのである。例えば、ゲート長が、Lxdsn<Lddsnに設定されたNAND型メモリユニットでは、メモリセルMのゲート長は、L0act<L1act<L2act…となる。
例えば、図23に示すように、選択トランジスタSTDに最も近いメモリセルM(ブロック端ページ)のゲート長が最も短く、ブロックの中央に向かうに連れて長くなる。本例のように、ゲート長Ld=Lsの場合には、ブロックの中央付近のメモリセルM(ブロック中央ページ)のゲート長が最も長くなり、選択トランジスタSTSに向かうに連れて短くなる。選択トランジスタSTSに最も近いメモリセルM(もう一方のブロック端ページ)のゲート長は、選択トランジスタSTDに最も近いメモリセルと同様に、例えば、最も短くなる。結果として、NAND型メモリユニットの実際の等価回路は、図24に示すものとなる。
このようなゲート長Lの変化はリソグラフィに関係があり、その一因は、ワード線のパターンが、これよりも幅が広いブロック選択線のパターンの影響を受けることにある。そして、ゲート長Lの変化が、NAND型メモリユニットに与える影響は、ブロック端ページと、ブロック中央ページとで、データ保持特性が異なってしまうことである。例えば、ブロック端ページのデータ保持特性は、ブロック中央ページのそれよりも劣る。
第1実施形態では、メモリセルのしきい値電圧の設定を可変とする。その一例として、本例では、選択したアドレスがブロック端ページであるか、それ以外のページ(本明細書では以下、ブロック中間ページと呼ぶ)であるかによって、しきい値電圧の設定を可変とする。
設定の一例は、ブロック端ページにおける最も高い書き込みしきい値電圧のレベルを、ブロック中間ページにおけるそれよりも下げることである。最も高い書き込みしきい値電圧に対応したデータの保持特性は、低い書き込みしきい値電圧に対応したデータのそれに比較して良くない。そこで、最も高い書き込みしきい値電圧のレベルを下げるのである。これにより、ブロック端ページにおける保持特性の更なる悪化を抑制することができる。その方法の一例は、書き込み時において、ブロック端ページにおけるベリファイ電圧を、ブロック中間ページにおけるベリファイ電圧よりも低くする。ベリファイ電圧を低くすれば、最も高い書き込みしきい値電圧のレベルを下げることができる。
さらに、本例では、ブロック端ページの書き込みしきい値電圧の分布幅(Vthmin-Vthmax)を、ブロック中間ページの書き込みしきい値電圧の分布幅(Vthmin-Vthmax)よりも狭くする。その方法の一例は、書き込み時において、ブロック端ページにおけるステップアップ幅を、ブロック中間ページにおけるステップアップ幅よりも小さくする。ステップアップ幅を小さくすることで、各データに対応したしきい値電圧の分布幅をそれぞれ狭くできる。さらに、上述のようにベリファイ電圧を下げれば、書き込みしきい値電圧の分布幅(Vthmin-Vthmax)も狭くなる。書き込みしきい値電圧の分布幅が狭くなる結果、最も高い書き込みしきい値電圧のレベルは、さらに、下がる。そして、データ保持特性は、さらに、良くなる。この状態を示したメモリセルのしきい値分布の一例を、図25に示す。
図25は、しきい値電圧の設定例1を示す図である。
図25に示すように、ブロック中間ページのベリファイ電圧は、それぞれa,b,cである。対して、ブロック端ページのベリファイ電圧は、それぞれa´、b´、c´である。これらの関係は、a´<a、b´<b、c´<cである。この結果、最も高い書き込みしきい値電圧のレベルは、例えば、データ00に見られるように下がる。さらに、ステップアップ幅を小さくするので、各データに対応したしきい値分布幅も狭くなる。
このように、本例では、ブロック端ページにおけるしきい値電圧の設定と、ブロック中間ページにおけるしきい値電圧の設定とを変える。
また、しきい値電圧を、図25に示すように設定すると、ブロック中間ページのデータ読み出しに使用する読み出し電圧では、ブロック端ページのデータ読み出しに使用できなくなることがある。図25に示す例では、例えば、読み出し電圧Vread1は、データ10とデータ01との間に存在するが、ブロック端ページでは、データ01中に存在する。このような状態は、誤読み出しを発生させる。これを抑制するために、ブロック端ページにおける読み出し電圧と、ブロック中間ページにおける読み出し電圧とを変えるようにしても良い。図25に示す例では、ブロック中間ページの読み出し電圧は、それぞれVread1、Vread2である。対して、ブロック端ページの読み出し電圧は、それぞれVread1´、Vread2´である。これらの関係は、Vread1´<Vread1、Vread2´<Vread2である。このようにすることで、誤読み出しの発生も抑制することができる。
さらに、しきい値電圧の設定を可変とすることには、次のような利点がある。
例えば、図22に示したようなゲート長L(ワード線の幅)にばらつきが生じたとしても、全てのページで、図25に示したブロック端ページのような書き込みを行えば良い。この書き込みは、例えば、ステップアップ幅を小さくする方法である。ステップアップ幅を小さくすることは、データを、少しずつ丁寧に書き込む、ということである。つまり、書き込みに時間がかかる。
対して、ブロック中間ページのデータ保持特性は、ブロック端ページのそれよりも良い。故にブロック端ページよりもラフに書き込むことができる。例えば、ステップアップ幅を大きくしても良い。ステップアップ幅を大きくすれば、ステップアップ幅が小さい場合に比較して、書き込みに要する時間を短縮できる。ブロック中間ページは、ブロック端ページに比較してデータ保持特性が良いから、書き込みしきい値分布幅(Vthmin-Vthmax)は広くても良い。従って、ステップアップ幅を大きくしても良い。
本例では、ステップアップ幅を、ワード線毎、例えば、ページ毎に、その特性に合わせて変えることが可能となる。そして、本例のように、しきい値電圧の設定を可変とすることによれば、データ保持特性の向上という要求と、動作の高速化という要求との双方を満足できる、という利点を得ることができる。
ベリファイ電圧を変えること、ステップアップ幅を変えること、及び読み出し電圧を変えることは、例えば、ワード線WLに与える電圧を変える、ということである。ワード線WLに与える電圧を変えることが可能な電圧可変回路の例を、図26、及び図27に示す。
図26は、電圧可変回路の第1例を示す回路図である。
図26に示すように、昇圧回路21は昇圧電位を発生する。昇圧電位は、例えば、ワード線WLに供給される。昇圧電位の発生端23と、回路内接地電位Vssとの間には、可変抵抗25、及び27が直列に接続される。可変抵抗25と可変抵抗27との接続ノード29の電位は、差動増幅器31の、例えば、マイナス入力に入力される。差動増幅器31の、例えば、プラス入力には、基準電位Vrefが入力される。基準電位Vrefは、例えば、バンドギャップリファレンス回路によって発生される。その電位の一例は1Vである。
可変抵抗25、及び27を利用して、接続ノード29の抵抗分割比を変える。すると、差動増幅器31のマイナス入力の入力電位が変わる。差動増幅器31は、この入力電位と、基準電位Vrefと比較して、その差に応じて、その出力レベルを変える。差動増幅器31の出力は、昇圧回路21の動作制御に利用され、例えば、昇圧回路21のオン/オフの制御や、昇圧回路の昇圧能力の調節制御に使用される。昇圧回路21は、差動増幅器31の出力に応じて、オン/オフ制御されたり、あるいは昇圧能力が調節されたりすることで、発生する昇圧電位のレベルを変えることができる。
図27は、電圧可変回路の第2例を示す回路図である。
図27に示す回路は、昇圧電位を、Pチャネル型MOSFET33のソースを介して出力し、出力した電位を、例えば、ワード線用の電位とする回路である。出力ノード35と、回路内接地電位Vssとの間には、可変抵抗37、及び39が直列に接続される。可変抵抗37と可変抵抗39との接続ノード41の電位は、差動増幅器43の、例えば、マイナス入力に入力される。差動増幅器43の、例えば、プラス入力には、基準電位Vrefが入力される。以下、第1回路例と同様に、可変抵抗37、及び39を利用して、接続ノード41の抵抗分割比を変え、差動増幅器43の出力レベルを変える。差動増幅器43の出力は、Pチャネル型MOSFET33のゲートに供給される。これによって、出力ノード35の電位は、差動増幅器43の出力レベルに応じて変えることができる。
なお、しきい値電圧の設定内容、例えば、ワード線電圧の設定内容は、例えば、不揮発性メモリセルに記憶させるようにすれば良い。この場合の不揮発性メモリセルとしては、メモリセルアレイとは別に設けられ、リダンダンシ情報等を記憶するヒューズセル回路内のものを使用しても良く、メモリセルアレイ内のものを使用しても良い。不揮発性メモリセルは、電気的にデータの書き換えが可能な半導体素子であっても良いし、機械的にデータをプログラムするヒューズ素子であっても良い。
また、しきい値電圧の設定内容、例えば、ワード線電圧の設定内容は、書き込み動作、あるいは読み出し動作、あるいは消去動作の前に設定内容を読み出し、読み出した結果に応じて、書き込みベリファイ読み出し時のワード線電圧、あるいは消去ベリファイ読み出し時のワード線電圧、読み出し時のワード線電圧を可変とするようにしても良い。
次に、本例に従った基本的な動作シーケンスの一例を説明する。
図28は、本例に従った書き込みシーケンスの一例を示す流れ図である。
図28に示す書き込みシーケンスは基本的なシーケンスであり、最小限の手順のみを示す。実際のデバイスに使用する際には、この基本的なシーケンスに対して、適宜必要な手順を付加すれば良い。例えば、図12、及び図13に具体的な書き込みシーケンスを示したが、これに図28に示す基本的なシーケンスを組み合わせれば良い。
図28に示すように、選択したページがブロック端ページであるか否かを判断する(S1)。ブロック端ページである場合、ステップアップ幅の縮小と、ベリファイ電圧の低下とを行う(S2)。その後、データを選択したページに書き込む(S3)。ブロック端ページでない場合には、ステップアップ幅、及びベリファイ電圧は変更せずに、データを選択したページに書き込む(S3)。
書き込みを終了したら、しきい値電圧が所望のレベルに達したか否かをベリファイする(S4)。所望のレベルに達した場合、書き込みステータスを“パス”として書き込みシーケンスを終了する。所望のレベルに達していない場合には、書き込みパルスカウント値が規定値に達したか否かを判断する(S5)。規定値に達した場合、書き込みステータスを“フェイル”として書き込みシーケンスを終了する。規定値に達していない場合には、書き込みパルスカウント値のカウントアップと、ワード線電圧のステップアップとを行う(S6)。その後、手順S3〜S6を、書き込みシーケンスが終了するまで繰り返す。
図29は、本例に従った読み出しシーケンスの一例を示す流れ図である。
図29に示す読み出しシーケンスは、図28に示した書き込みシーケンスと同様に、基本的なシーケンスである。よって、最小限の手順のみを示す。実際のデバイスに使用する際には、この基本的なシーケンスに対して、適宜必要な手順を付加すれば良い。
図29に示すように、選択したページがブロック端ページであるか否かを判断する(S1)。ブロック端ページである場合、読み出し電圧の低下を行う(S2)。その後、データを選択したページから読み出す(S3)。ブロック端ページでない場合には、読み出し電圧は変更せずに、データを選択したページから読み出す(S3)。
次に、本実施形態の変形例を説明する。
(しきい値電圧の設定に関する変形例)
図30は、第1実施形態に係る半導体集積回路装置のしきい値電圧の設定を変更するページを示す図である。
図30に示すように、第1実施形態では、しきい値電圧の設定を変更するページ51(以下設定変更ページという)を、選択トランジスタに最も近いページとした。本例では、ワード線WL0、WL31である。しかし、しきい値電圧の設定を変更するページは、選択トランジスタに最も近いページに限るものでは無い。
(第1変形例)
図31は、しきい値電圧の設定を変更するページの第1変形例を示す図である。
図31に示すように、設定変更ページ51は、選択トランジスタSTD、又はSTSに最も近いページだけでは無く、最も近いページから何本かにかけて設定しても良い。例えば、最も近いページを含めて複数本のページに対して、しきい値電圧の設定を変更するようにしても良い。本例では、設定変更ページ51は、例えば、ワード線WL0、WL1、又はWL30、WL31の2本を含む。
(第2変形例)
図32は、しきい値電圧の設定を変更するページの第2変形例を示す図である。
しきい値電圧の設定については、図30、図31を参照して説明したように、変更されるしきい値電圧の設定については、1種類に限られるものではない。変更されるしきい値電圧の設定は、複数種類あっても良い。
図32に示すように、第2変形例では、第1設定変更ページ51、及び第2設定変更ページ53を有する。しきい値電圧の設定は、第1設定変更ページ51と第2設定変更ページ53とで異なる。しきい値電圧の設定を、一例として、しきい値の分布幅(Vthmin-Vthmax)にたとえるならば、第1設定変更ページ51(WL0、及びWL31)のしきい値分布幅が最も狭い。第2設定変更ページ53(WL1、及びWL30)のしきい値分布幅は、第1設定変更ページ51よりも広い。残りのページ(WL2〜WL29)のしきい値分布幅は、第2設定変更ページ53のしきい値分布幅よりも広い。
なお、第2変形例では、しきい値電圧の設定が変更されるページを2種類とし、変更しないページと併せて、しきい値電圧の設定を、合計3種類とした。もちろん、しきい値電圧の設定が変更されるページを3種類以上とし、変更しないページと併せて、しきい値電圧の設定を、合計4種類以上とすることも可能である。
さらに、第2変形例では、しきい値電圧の設定をしきい値の分布幅(Vthmin-Vthmax)にたとえたが、このしきい値の分布幅を変えるためには、書き込み時において、設定変更ページ51と設定変更ページ53とで、互いにワード線ステップアップ電圧を変える他、第2段階書き込みに使用されるビット線電圧を変更すること、及びベリファイ電圧を変更すること等を使用、又は併用するようにしても良い。
さらに、読み出し時においては、設定変更ページ51と設定変更ページ53とで、読み出し電圧を変えるようにしても良い。
(第3変形例)
図33はしきい値電圧の設定を変更するページの第3変形例を示す図である。
図33に示すように、第2変形例における設定変更ページ51、及び53は、それぞれ第1変形例のように、複数本のページを含んでいても良い。本例では、設定変更ページ51は、ワード線WL0、WL1、又はWL30、WL31の2本を含み、設定変更ページ53は、ワード線WL2、WL3、又はWL28、WL29の2本を含む。
(第4変形例)
第1実施形態では、しきい値電圧の設定を、ブロック内のページ、もしくはワード線を変更する単位として変更した。しかし、しきい値電圧の設定を変更する単位は、これに限るものでは無い。
図34は、メモリセルアレイの平面図、図35は、メモリセルアレイ内のブロックの位置とゲート長との関係を示す図である。
図34に示すように、メモリセルアレイは複数のブロックを含む。そして、図35に示すように、ブロックの、メモリセルアレイ内の位置によってもゲート長が変化する。例えば、セルアレイ端に近いブロックにおいては、ゲート長が短くなりやすい。この現象もまた、リソグラフィに関係があり、例えば、セルアレイ端のブロックは、セルアレイの外側のパターンの影響を受けることにある。セルアレイの外側には、ワード線のパターンや、ブロック選択線のパターンが無い。このため、パターンの連続性が途切れる。この影響を、セルアレイ端のブロックが受けるのである。
そこで、選択したアドレスが、セルアレイ端ブロックであるか、それ以外のブロックであるかによって、しきい値電圧の設定を変更するようにしても良い。その適用の仕方は、上述した実施形態、及び変形例と同様で良い。
(第5変形例)
図36は、半導体集積回路チップの平面図、図37は、チップ内のメモリセルアレイの位置とゲート長との関係を示す図である。
図36に示すように、半導体チップが複数のメモリセルアレイを含むとき、図37に示すように、チップ内のメモリセルアレイの位置によってもゲート長が変化する。例えば、チップ端に近いメモリセルアレイにおいては、ゲート長が短くなりやすい。この現象もまた、上述した実施形態や、第4変形例と同様にリソグラフィに関係がある。
そこで、選択したアドレスが、チップ端ブロックであるか、それ以外のブロックであるかによって、しきい値電圧の設定を可変としても良い。その適用の仕方は、上述した実施形態、及び変形例と同様で良い。
(第2実施形態)
第1実施形態では、例えば、ブロック内に、ゲート長Lが異なるメモリセルMが存在する例、例えば、図24に示したように、実際のゲート長Lnactが、L0act≠L1act≠L2act…となったNAND型フラッシュメモリを示した。
しかし、この発明は、実際のゲート長Lnactが、L0act=L1act=L2act…のNAND型フラッシュメモリにも適用できる。
図38は、この発明の第2実施形態に係るNAND型メモリユニットの実際の等価回路の一例を示す等価回路図である。
図38に示すように、本例では、ゲート長Lnactが、L0act=L1act=L2act…である。また、セル-セル間ピッチPcと、選択トランジスタ-セル間ピッチPscd、又はPscsとの関係は、Pc≠Pscd、及びPc≠Pscsである。具体的には、本例ではPc<Pscd、及びPc<Pscsである。
Pc<Pscd、及びPc<Pscsである装置であると、セル-セル間寄生容量Ccは、選択トランジスタ-セル間寄生容量Cscd、及びCscsと異なる。セル-セル間寄生容量Ccは、カラム方向に沿って浮遊ゲートFGに寄生する容量である。同様に、選択トランジスタ-セル間寄生容量Cscd、及びCscsは、カラム方向に沿って浮遊ゲートFGに寄生する容量である。
つまり、浮遊ゲートFGの周囲に寄生する寄生容量は、ブロック端ページと、ブロック中間ページとで異なる。寄生容量の相違は、ブロック端ページのデータ保持特性と、ブロック中間ページのデータ保持特性とが異なることを意味する。
従って、実際のゲート長Lnactが、L0act=L1act=L2act…の装置においても、上記第1実施形態で説明したように、例えば、ブロック端ページのしきい値電圧の設定と、ブロック中間ページのしきい値電圧設定とを変えるようにしても良い。
(第3実施形態)
第2実施形態では、ゲート長Lnactが、L0act=L1act=L2act…、かつ、ピッチPが、Pc≠Pscd、Pc≠Pscsのメモリであった。しかし、ピッチPは、Pc=Pscd、Pc=Pscsでも良い。
図39、及び図40は、浮遊ゲートパターン、及び下層導電体(ブロック選択線)パターンの一例を示す平面図である。図39は上記第2実施形態に係るメモリを示し、図40は本第3実施形態に係るメモリを示す。
図39、及び図40に示すように、複数の浮遊ゲートFGは、メモリセルアレイ上に島状に配置される。対して、ブロック選択線の下層導電体は、メモリセルアレイ上に線状に配置される。
ブロック中間ページの浮遊ゲートFGには、カラム方向に沿って寄生容量Ccが2つ寄生するのに対して、ブロック端ページの浮遊ゲートFGには、寄生容量Cscd、又はCscsと寄生容量Ccとが寄生する。寄生容量Cscd、又はCscsは、寄生容量Ccと異なる。ブロック選択線の下層導電体が線状であるから、キャパシタの面積は、島状の浮遊ゲートとは異なるためである。キャパシタの面積が異なる以上、Pc=Pscd、Pc=Pscsの場合でも、第2実施形態と同様にCscd≠Cc、Cscs≠Ccとなる。
従って、実際のゲート長Lnactが、L0act=L1act=L2act…、かつ、Pc=Pscd、Pc=Pscsの装置においても、上記第1実施形態で説明したように、例えば、ブロック端ページのしきい値電圧の設定と、ブロック中間ページのしきい値電圧設定とを変えるようにしても良い。
次に、第2、第3実施形態に示した実際のゲート長Lnactが、L0act=L1act=L2act…となる装置の製造方法の一例を説明する。
図41は、典型的なフォトマスクと露光状態とを示す図、図42は、第2、又は第3実施形態に使用される新規なフォトマスクの一例と露光状態とを示す図である。
図41に示すように、典型的なフォトマスクは、ワード線パターンに対応する遮光パターンの幅(カラム方向に沿った幅)Lnpattern(L0pattern、L1pattern、L2pattern、…)が、一方のブロック端からブロック中間に向かって、即ち他方のブロック端まで一定である。この結果、同図に示すように、ポジ型フォトレジストの未露光部分の幅(ワード線パターンとして残る部分)Lnunexposed(L0unexposed、L1unexposed、L2unexposed、…)がブロック端と、ブロック中間とで異なることがある。これが、実際のゲート長Lnactが、L0act≠L1act≠L2act…となる一つの原因である。
対して、図42に示す新規なフォトマスクは、遮光パターンの幅L0mask、L1mask、L2mask、…が、未露光部分の幅L0unexposed、L1unexposed、L2unexposed、…が、一方のブロック端から他方のブロック端にかけて一定となるように、例えば、L0pattern≠L1pattern≠L2pattern、…とされる。具体的には、本例では、L0pattern>L1pattern>L2patternである。
このような新規なフォトマスクを使用することにより、実際のゲート長Lnactが、L0act=L1act=L2act…となる装置を形成することができる。
(第4実施形態)
次に、第4実施形態として、しきい値電圧の設定例を説明する。
(設定例1)
設定例1は、図25に示した通りである。改めて、表9に、データ、ベリファイ電圧、読み出し電圧、及びマージンの関係を示す。
(設定例2)
図43は、しきい値電圧の設定例2を示す図である。表10に、データ、ベリファイ電圧、読み出し電圧、及びマージンの関係を示す。
設定例1は、表9に示すように、マージン(|ベリファイ電圧−読み出し電圧|)を、“Δa´<Δa”、“Δb´<Δb”、“Δc´<Δc”とした。
対して、設定例2は、図43、及び表10に示すように、マージンを、“Δa´=Δa”、“Δb´=Δb”、“Δc´=Δc”とする。このように設定するための方法の一例としては、例えば、データ“10”のためのベリファイ電圧a´、及びaを“a´=a”とする。そして、ベリファイ電圧b´、及びc´を、“Δb´=Δb”、“Δc´=Δc”となるように設定すれば良い。
設定例2によれば、設定例1に比較して、ブロック端ページのしきい値の設定に関するマージンを大きくできる、という利点を得ることができる。
(設定例3)
図44は、しきい値電圧の設定例3を示す図である。表11に、データ、ベリファイ電圧、読み出し電圧、及びマージンの関係を示す。
設定例2は、表10に示すように、マージンを“Δa´=Δa”、“Δb´=Δb”、“Δc´=Δc”とした。
対して、設定例3は、図44、及び表11に示すように、マージンを、“Δa´=Δa”、“Δb´>Δb”、“Δc´>Δc”とする。このように設定するための方法の一例としては、例えば、データ“10”のためのベリファイ電圧a´、及びaを“a´=a”とする。そして、ベリファイ電圧b´、及びc´を、“Δb´>Δb”、“Δc´>Δc”となるように設定すれば良い。
設定例3によれば、設定例2に比較して、ブロック端ページのしきい値の設定に関するマージン、特に、しきい値が高いデータにおけるマージンを大きくできる、という利点を得ることができる。
さらには、ブロック端ページのマージンを、ブロック中間ページのマージンよりも大きくできる、という利点を得ることができる。
(設定例4)
図45は、しきい値電圧の設定例4を示す図である。表12に、データ、ベリファイ電圧、読み出し電圧、及びマージンの関係を示す。
設定例1〜設定例3は、しきい値分布の設定を、ブロック端ページとブロック中間ページとでベリファイ電圧を変えることで変えた。
しかし、しきい値分布の設定は、図45、及び表12に示すように、ベリファイ電圧を変えなくても変えることができる。この場合には、例えば、ブロック端ページと、ブロック中間ページとで互いにワード線ステップアップ電圧を変える、あるいは第2段階書き込みに使用されるビット線電圧を変える、あるいはこれらを併用すれば良い。
また、設定例1〜設定例3は、読み出し時、読み出し電圧を変える例を示したが、図45、及び表12に示すように、読み出し電圧を変えないようにすることもできる。
(設定例5)
図46は、しきい値電圧の設定例5を示す図である。表13に、データ、ベリファイ電圧、読み出し電圧、及びマージンの関係を示す。
設定例4は、図45、及び表12に示すように、マージンを、“Δa´=Δa”、“Δb´=Δb”、“Δc´=Δc”とする。
対して、設定例5では、マージンを“Δa´>Δa”、“Δb´>Δb”、“Δc´>Δc”とする。この場合には、例えば、設定例4と同様に、ブロック端ページと、ブロック中間ページとで互いにワード線ステップアップ電圧を変える、あるいは第2段階書き込みに使用されるビット線電圧を変える、あるいはこれらを併用する。そして、マージンが “Δa´>Δa”、“Δb´>Δb”、“Δc´>Δc”となるように、ベリファイ電圧を“a´>a”、“b´>b”、“c´Δc”と設定すれば良い。
設定例5によれば、設定例4に比較して、ブロック端ページのしきい値の設定に関するマージン、特に、しきい値が高いデータにおけるマージンを大きくできる、という利点を得ることができる。
(第5実施形態)
第5実施形態は、メモリセルアレイの集積度を向上する技術に関する。
典型的なNAND型フラッシュメモリは、選択トランジスタSTDのゲート長Ldと、選択トランジスタSTSのゲート長Lsとが同じである。
選択トランジスタSTDのドレインはビット線に接続される。このため、選択トランジスタSTDは、データの書き込み時や読み出し時において、例えば、ビット線BLから電流が漏れることを抑制するために、充分にカットオフさせる必要がある。そして、ゲート長Ldは、トランジスタが充分にカットオフできる長さに設定される。これは、図20を参照して説明した通りである。
対して、選択トランジスタSTSのソースはソース線C-sourceに接続される。ソース線C-sourceは、ビット線BLほど高い電位が与えられることは無い。また、データの書き込み時や読み出し時においては、選択トランジスタSTDが充分にカットオフしていれば良い。即ち、選択トランジスタSTSのゲート長Lsは、ゲート長Ldよりも短くすることが可能である。
図47は、この発明の第5実施形態に係る半導体集積回路装置の一例を示す回路図である。本例では、NAND型フラッシュメモリを例示するが、第5実施形態は、NAND型フラッシュメモリ以外のメモリにも適用できる。
図47に示すように、第5実施形態に係るNAND型フラッシュメモリは、ドレイン側選択トランジスタSTDのゲート長Lsが、ソース側選択トランジスタSTSのゲート長Ldよりも短い。従って、Ls=Ldのメモリに比較して、メモリセルアレイの集積度を高めることができる。
また、第5実施形態は、図48に示すように、メモリセルMのゲート長Lnが、例えば、L0≠L1≠L2…L29≠L30≠L31の装置にも適用することができる。
さらに、第5実施形態は、第1〜第4実施形態と組み合わせて実施することもできる。
また、第1〜第5実施形態では、セルアレイ、又はブロック、又はページ単位で、しきい値電圧の設定を最適に設定にした。これは、データ保持特性に優れた高い信頼性を持つ動作モードである(高信頼性動作モードという)。第1〜第5実施形態は、この高信頼性動作モードを選択できるようにすることも可能である。高信頼性動作モードを選択しない場合には、例えば、典型的なNAND型フラッシュメモリと同様に、例えば、ブロック端ページやブロック中央ページ、セルアレイ端ブロックやセルアレイ中央ブロック、チップ端メモリセルアレイやチップ中央メモリセルアレイに関わらず、しきい値電圧の設定を一定とする。例えば、全てのしきい値電圧の設定を、ブロック中央ページ、セルアレイ中央ブロック、チップ中央メモリセルアレイのしきい値設定と同じとする。これは、高速に動作する動作モードである(高速動作モードという)。これら高信頼性動作モードと高速動作モードとを切り替えるモード切り替え回路を、チップ内に設ければ、これらモードのどちらか一つを切り替えて使うことができる。モードの切り替えは、チップ外部から入力される切り替えコマンドに従って切り替えることが可能である。これ以外にも、モードの切り替え情報を、システム内のメモリに記憶させることも可能であるし、モードの切り替え情報を、チップ内のメモリ、例えば、不揮発性メモリ、例えば、電気的にデータの書き換えが可能な半導体素子や機械的にデータをプログラムするヒューズ素子に記憶させることも可能である。また、モードの切り替えは、モード切り替え回路につながるチップパッドに与えられる電位によっても切り替えることが可能である。例えば、チップパッドに、電源電位Vddに接続するか接地電位Vccに接続するかで切り替えることができる。このように、ブロック端ページ、セルアレイ端ブロック、及びチップ端メモリセルアレイしきい値電圧は、可変に設定することも可能である。もちろん、モードについては、高信頼性動作モードと高速動作モードとの2段階に限られるものではなく、3段階以上設定するようにしても良い。
また、上記実施形態の態様は、下記を含む。
(1) 半導体チップと、前記チップに配置された、複数の書き換え可能な不揮発性メモリセルを含む第1のメモリセルグループと、前記チップに配置された、複数の書き換え不揮発性メモリセルを含む第2のメモリセルグループと、を備え、前記第1のメモリセルグループのメモリセルの書き込みしきい値電圧の設定と、前記第2のメモリセルグループのメモリセルの書き込みしきい値電圧の設定とを可変にする。
(2) (1)に記載の態様において、前記書き込みしきい値電圧は、書き込み時のワード線のステップアップ電圧幅を可変とすることにより可変とされる。
(3) (1)〜(2)いずれか一つに記載の態様において、前記書き込みしきい値電圧は、設定しきい値に近づいてきたら、ビット線に与える書き込み抑制電圧を可変とすることにより可変とされる。
(4) (1)〜(3)いずれか一つに記載の態様において、前記書き込みしきい値電圧は、ベリファイ読み出し時のワード線を可変とすることにより可変とされる。
(5) (1)〜(4)いずれか一つに記載の態様において、前記第1のメモリセルグループの読み出し時のワード線電圧と、前記第2のメモリセルグループの読み出し時のワード線電圧とを可変にする。
(6) (1)〜(5)いずれか一つに記載の態様において、前記第1のメモリセルグループの書き込みしきい値電圧の分布幅は、前記第2のメモリセルグループの書き込みしきい値電圧の分布幅よりも狭い。
(7) (1)〜(6)いずれか一つに記載の態様において、前記第1のメモリセルグループの最大の書き込みしきい値電圧は、前記第2のメモリセルグループの最大の書き込みしきい値電圧よりも低い。
(8) (1)〜(7)いずれか一つに記載の態様において、前記第1、第2のメモリセルグループはページである。
(9) (1)〜(8)いずれか一つに記載の態様において、前記第1、第2のメモリセルグループはブロックである。
(10) (1)〜(9)いずれか一つに記載の態様において、前記第1、第2のメモリセルグループはメモリセルアレイである。
(11) (1)〜(10)いずれか一つに記載の態様において、前記第1、第2のメモリセルグループは、1本又は複数本のワード線単位で分けられている。
(12) (1)〜(11)いずれか一つに記載の態様において、前記第1メモリセルグループに含まれる不揮発性メモリセルのゲート長は、前記第2メモリセルグループに含まれる不揮発性メモリセルのゲート長と異なる。
(13) (1)〜(11)いずれか一つに記載の態様において、前記第1メモリセルグループは選択ゲート線に隣接し、前記第1メモリセルグループに含まれる不揮発性メモリセルのゲート長は、前記第2メモリセルグループに含まれる不揮発性メモリセルのゲート長と異なる。
(14) (1)〜(11)いずれか一つに記載の態様において、前記第1メモリセルグループは選択ゲート線に隣接し、前記第1メモリセルグループに含まれる不揮発性メモリセルのゲート長は、前記第2メモリセルグループに含まれる不揮発性メモリセルのゲート長と同じである。
(15) (1)〜(14)いずれか一つに記載の態様において、前記しきい値電圧の設定内容は、不揮発性メモリセルに記憶する。
(16) (15)に記載の態様において、前記しきい値電圧の設定内容は、書き込み動作、あるいは読み出し動作、あるいは消去動作の前に設定内容を読み出し、読み出した結果に応じて、前記書き込みベリファイ読み出し時のワード線電圧、あるいは前記消去ベリファイ読み出し時のワード線電圧、読み出し時のワード線電圧を可変とする。
(17) (1)〜(16)いずれか一つに記載の態様において、少なくとも高信頼性モードと高速動作モードとの2つのモードを切り替えるモード切り替え回路を備える。
(18) (17)に記載の態様において、モードの切り替えは、コマンドの入力、切り替え情報をシステム内のメモリに記憶させること、切り替え情報をチップ内の不揮発性メモリに記憶させること、モード切り替え回路に接続されるパッドに与える電位のいずれかによって行う。
この発明の実施形態に係る半導体集積回路装置によれば、動作の高速性を保ちつつ、データ保持特性を向上させることが可能な電気的に書き換えが可能な不揮発性半導体記憶装置を有した半導体集積回路装置を提供できる。
以上、この発明をいくつかの実施形態により説明したが、この発明は各実施形態に限定されるものではなく、その実施にあたっては発明の要旨を逸脱しない範囲で種々に変形することが可能である。
例えば、上記実施形態では、ベリファイ電圧の変更を、書き込みベリファイ読み出しの場合を例示して説明したが、ベリファイ電圧の変更は、消去ベリファイ読み出しの場合にも適用できる。これによっても、しきい値電圧の設定を変えることができる。
また、各実施形態は単独で実施することが可能であるが、適宜組み合わせて実施することも可能である。
また、各実施形態は種々の段階の発明を含んでおり、各実施形態において開示した複数の構成要件の適宜な組み合わせにより、種々の段階の発明を抽出することが可能である。
また、実施形態は、この発明をNAND型フラッシュメモリに適用した例に基づき説明したが、この発明はNAND型フラッシュメモリに限られるものではなく、AND型、NOR型等NAND型以外のフラッシュメモリにも適用することができる。さらに、これらフラッシュメモリを内蔵した半導体集積回路装置、例えば、プロセッサ、システムLSI等もまた、この発明の範疇である。