(57)【要約】  実施形態に係る半導体記憶装置は、複数のメモリセルと、ワード線と、ビット線と、ロウデコーダとを備える。メモリセルは、半導体基板上に積層される。ワード線は、メモリセルのゲートに接続される。ビット線は、メモリセルの電流経路に電気的に接続され、データを転送可能である。ロウデコーダは、ワード線に電圧を印加する。メモリセルへのデータの書き込みは、プログラム動作とベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行される。１回のプログラムループにおいて前記ロウデコーダは、プログラム電圧をＭ回（Ｍは１以上の自然数）、選択ワード線に対して順次印加し、引き続きベリファイ電圧をＮ回（ＮはＭより大きく、３以上の自然数）、前記選択ワード線に対して順次印加する。
2015033417.tif 000002
【特許請求の範囲】
【請求項１】
半導体基板上に積層された複数のメモリセルと、
前記メモリセルのゲートに接続されたワード線と、
前記メモリセルの電流経路に電気的に接続され、データを転送可能なビット線と、
前記ワード線に電圧を印加するロウデコーダと
を具備し、前記メモリセルへのデータの書き込みは、プログラム動作とベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行され、
１回のプログラムループにおいて前記ロウデコーダは、プログラム電圧をＭ回（Ｍは１以上の自然数）、選択ワード線に対して順次印加し、引き続きベリファイ電圧をＮ回（ＮはＭより大きく、２以上の自然数）、前記選択ワード線に対して順次印加する
ことを特徴とする半導体記憶装置。
【請求項２】
前記データは、１回の前記プログラムループにおいて、半導体基板上に積層された複数のメモリセルに対して一括してプログラムされる
ことを特徴とする請求項１記載の半導体記憶装置。
【請求項３】
前記Ｍ回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最下層に位置するメモリセルがプログラム対象とされ、少なくとも最上層に位置するメモリセルはプログラム非対象とされる
ことを特徴とする請求項２記載の半導体記憶装置。
【請求項４】
前記Ｍ回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最上層に位置するメモリセルがプログラム対象とされ、少なくとも最下層に位置するメモリセルはプログラム非対象とされる
ことを特徴とする請求項２記載の半導体記憶装置。
【請求項５】
前記Ｍ回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、第１メモリセル及び第２メモリセルの両方がプログラム対象とされ、
前記第１、第２メモリセルのチャネルには、互いに異なる第１及び第２電圧がそれぞれ与えられる
ことを特徴とする請求項２記載の半導体記憶装置。
【請求項６】
請求項１記載の半導体記憶装置と、
前記半導体記憶装置を制御するコントローラと
を具備し、前記半導体記憶装置は、第１書き込みモードと第２書き込みモードとを備え、
前記第１書き込みモードでは、いずれかのプログラムループにおいて前記ロウデコーダが、プログラム電圧をＭ回、選択ワード線に対して順次印加し、引き続きベリファイ電圧をＮ回、前記選択ワード線に対して順次印加し、
前記第２書き込みモードでは、いずれのプログラムループにおいても、ベリファイ電圧の印加回数は前記プログラム電圧の印加回数と同じか、それ未満の回数である
ことを特徴とするメモリシステム。
【請求項７】
半導体基板上に複数のメモリセルが積層された半導体記憶装置のデータ書き込み方法であって、
選択ワード線にプログラム電圧をＭ回（Ｍは１以上の自然数）、順次印加することと、
前記プログラム電圧を印加することに引き続き、前記選択ワード線にベリファイ電圧をＮ回（ＮはＭより大きく、２以上の自然数）、順次印加することと、
を具備することを特徴とするデータ書き込み方法。
【請求項８】
前記プログラム電圧をＭ回印加すること及び前記ベリファイ電圧をＮ回印加することにより、半導体基板上に積層された複数のメモリセルに対してデータが一括して書き込まれる
ことを特徴とする請求項７記載のデータ書き込み方法。
【請求項９】
前記Ｍ回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最下層に位置するメモリセルがプログラム対象とされ、少なくとも最上層に位置するメモリセルはプログラム非対象とされる
ことを特徴とする請求項８記載のデータ書き込み方法。
【請求項１０】
前記Ｍ回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最上層に位置するメモリセルがプログラム対象とされ、少なくとも最下層に位置するメモリセルはプログラム非対象とされる
ことを特徴とする請求項８記載のデータ書き込み方法。
【請求項１１】
半導体基板上に積層された複数のメモリセルと、
前記メモリセルのゲートに接続されたワード線と、
前記メモリセルの電流経路に電気的に接続され、データを転送可能なビット線と、
前記ワード線に電圧を印加するロウデコーダと
を具備し、前記メモリセルへのデータの書き込みは、選択ワード線にプログラム電圧を印加するプログラム動作と、前記選択ワード線にベリファイ電圧を印加するベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行され、
前記ロウデコーダは、連続する２回のプログラムループ間において、前記ベリファイ電圧の印加回数は不変としつつ、２回目のプログラムループにおける前記プログラム電圧の印加回数を、１回目のプログラムループよりも減少させる
ことを特徴とする半導体記憶装置。
【請求項１２】
前記データは、１回のプログラムループにおいて、前記半導体基板上に積層された複数のメモリセルに対して一括してプログラムされる
ことを特徴とする請求項１１記載の半導体記憶装置。
【請求項１３】
前記ロウデコーダは、前記１回目のプログラムループにおいて前記プログラム電圧をＭ回、前記選択ワード線に順次印加し、
前記Ｍ回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最下層に位置するメモリセルがプログラム対象とされ、少なくとも最上層に位置するメモリセルはプログラム非対象とされ、
前記いずれかのプログラム電圧は、前記２回目のプログラムループにおいて前記選択ワード線への印加を省略される
ことを特徴とする請求項１２記載の半導体記憶装置。
【請求項１４】
前記ロウデコーダは、前記１回目のプログラムループにおいて前記プログラム電圧をＭ回、前記選択ワード線に順次印加し、
前記Ｍ回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最上層に位置するメモリセルがプログラム対象とされ、少なくとも最下層に位置するメモリセルはプログラム非対象とされ、
前記いずれかのプログラム電圧は、前記２回目のプログラムループにおいて前記選択ワード線への印加を省略される
ことを特徴とする請求項１２記載の半導体記憶装置。
【請求項１５】
前記ロウデコーダは、前記１回目のプログラムループにおいて前記プログラム電圧をＭ回、前記選択ワード線に順次印加し、
前記Ｍ回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、第１メモリセル及び第２メモリセルの両方がプログラム対象とされ、
前記第１、第２メモリセルのチャネルには、互いに異なる第１及び第２電圧がそれぞれ与えられる
ことを特徴とする請求項１２記載の半導体記憶装置。
【請求項１６】
前記第１メモリセルは、最下層に位置するメモリセルであり、
前記第１電圧は前記第２電圧よりも高い
ことを特徴とする請求項５または１５記載の半導体記憶装置。
【請求項１７】
請求項１１記載の半導体記憶装置と、
前記半導体記憶装置を制御するコントローラと
を具備し、前記半導体記憶装置は、第１書き込みモードと第２書き込みモードとを備え、
前記第１書き込みモードでは、前記ロウデコーダは、連続する２回のプログラムループ間において、前記ベリファイ電圧の印加回数は不変としつつ、２回目のプログラムループにおける前記プログラム電圧の印加回数を、１回目のプログラムループよりも減少させ、
前記第２書き込みモードでは、前記ロウデコーダは、連続する２回のプログラムループにおいて、前記プログラム電圧の印加回数を減少させた際には、前記ベリファイ電圧の印加回数も減少させる
ことを特徴とするメモリシステム。
【請求項１８】
前記半導体記憶装置は、前記コントローラから与えられるコマンドに応じて、前記第１、第２書き込みモードのいずれかで動作する
ことを特徴とする請求項６または１７記載のメモリシステム。
【請求項１９】
半導体基板上に複数のメモリセルが積層された半導体記憶装置のデータ書き込み方法であって、
選択ワード線にプログラム電圧をＭ回（Ｍは２以上の自然数）、順次印加し、次に前記選択ワード線にベリファイ電圧をＮ回（Ｎは２以上の自然数）、順次印加することにより、第１プログラムループを実行することと、
前記選択ワード線にプログラム電圧をＬ回（Ｌは１以上の自然数であり、Ｌ＜Ｍ）、順次印加し、次に前記選択ワード線にベリファイ電圧をＮ回、順次印加することにより、第２プログラムループを実行することと
を具備することを特徴とするデータ書き込み方法。
【請求項２０】
前記第１プログラムループ及び前記第２プログラムループにより、前記半導体基板上に積層された複数のメモリセルに対してデータが一括して書き込まれる
ことを特徴とする請求項１９記載のデータ書き込み方法。
【請求項２１】
前記第１プログラムループにおける前記Ｍ回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最下層に位置するメモリセルがプログラム対象とされ、少なくとも最上層に位置するメモリセルはプログラム非対象とされ、
前記第２プログラムループにおいて前記いずれかのプログラム電圧の前記選択ワード線への印加が省略される
ことを特徴とする請求項２０記載のデータ書き込み方法。
【請求項２２】
前記第１プログラムループにおける前記Ｍ回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、前記積層された複数のメモリセルのうち、最上層に位置するメモリセルがプログラム対象とされ、少なくとも最下層に位置するメモリセルはプログラム非対象とされ、
前記第２プログラムループにおいて前記いずれかのプログラム電圧の前記選択ワード線への印加が省略される
ことを特徴とする請求項２０記載のデータ書き込み方法。
【請求項２３】
前記Ｍ回のうちのいずれかのプログラム電圧が前記選択ワード線に印加される際、第１メモリセル及び第２メモリセルの両方がプログラム対象とされ、
前記第１、第２メモリセルのチャネルには、互いに異なる第１及び第２電圧がそれぞれ与えられる
ことを特徴とする請求項７または２０記載のデータ書き込み方法。
【請求項２４】
前記第１メモリセルは、最下層に位置するメモリセルであり、
前記第１電圧は前記第２電圧よりも高い
ことを特徴とする請求項２３記載のデータ書き込み方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、半導体記憶装置及びデータ書き込み方法に関する。
【背景技術】
【０００２】
メモリセルが三次元に配列されたＮＡＮＤ型フラッシュメモリが知られている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
データの書き込み速度を向上できる半導体記憶装置及びデータ書き込み方法を提供する。
【課題を解決するための手段】
【０００４】
実施形態の半導体記憶装置は、実施形態に係る半導体記憶装置は、複数のメモリセルと、ワード線と、ビット線と、ロウデコーダとを備える。メモリセルは、半導体基板上に積層される。ワード線は、メモリセルのゲートに接続される。ビット線は、メモリセルの電流経路に電気的に接続され、データを転送可能である。ロウデコーダは、ワード線に電圧を印加する。メモリセルへのデータの書き込みは、プログラム動作とベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行される。１回のプログラムループにおいてロウデコーダは、選択ワード線に対して、第１プログラム電圧と、該第１プログラム電圧と異なる第２プログラム電圧を順次印加する。
【図面の簡単な説明】
【０００５】
【図１】図１は、第１実施形態に係る半導体記憶装置のブロック図である。
【図２】図２は、第１実施形態に係るメモリセルアレイの回路図である。
【図３】図３は、第１実施形態に係るメモリセルアレイの斜視図である。
【図４】図４は、第１実施形態に係るメモリセルアレイの平面図である。
【図５】図５は、図４における５−５線に沿った断面図である。
【図６】図６は、図４における６−６線に沿った断面図である。
【図７】図７は、図４における７−７線に沿った断面図である。
【図８】図８は、第１実施形態に係るメモリセルの閾値分布を示すグラフである。
【図９】図９は、第１実施形態に係るメモリセルアレイの回路図である。
【図１０】図１０は、第１実施形態に係るデータの書き込み方法を示すフローチャートである。
【図１１】図１１は、第１実施形態に係るデータの書き込み時におけるワード線電位のタイミングチャートである。
【図１２】図１２は、データの書き込み時におけるワード線電位の変化を示すタイミングチャートである。
【図１３】図１３は、第２実施形態に係るデータの書き込み方法を示すフローチャートである。
【図１４】図１４は、第２実施形態に係るデータの書き込み時におけるワード線電位の変化を示すタイミングチャートである。
【図１５】図１５は、第３実施形態に係るデータの書き込み方法を示すフローチャートである。
【図１６】図１６は、第３実施形態に係るデータの書き込み時におけるワード線電位の変化を示すタイミングチャートである。
【図１７】図１７は、第４実施形態に係るデータの書き込み方法を示すフローチャートである。
【図１８】図１８は、第４実施形態に係るデータの書き込み時におけるワード線及びビット線電位の変化を示すタイミングチャートである。
【図１９】図１９は、第４実施形態に係るメモリセルアレイの回路図である。
【図２０】図２０は、第４実施形態に係るメモリセルの閾値変化を示すグラフである。
【図２１】図２１は、第５実施形態に係るセンスアンプモジュール、演算モジュール、及びデータラッチモジュールのブロック図である。
【図２２】図２２は、第５実施形態に係るデータの書き込み時におけるワード線電位の変化を示すグラフである。
【図２３】図２３は、第５実施形態に係るデータの書き込み時におけるワード線及びビット線電位の変化を示すグラフである。
【図２４】図２４は、第６実施形態に係るメモリシステムのブロック図である。
【図２５】図２５は、第６実施形態に係る第１モードによる書き込み動作時の各種信号のタイミングチャートである。
【図２６】図２６は、第６実施形態に係る第２モードによる書き込み動作時の各種信号のタイミングチャートである。
【発明を実施するための形態】
【０００６】
以下、実施形態につき図面を参照して説明する。この説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【０００７】
１．第１実施形態  
第１実施形態に係る半導体記憶装置について説明する。以下では半導体記憶装置として、メモリセルが半導体基板上に積層された三次元積層型ＮＡＮＤ型フラッシュメモリを例に挙げて説明する。
【０００８】
１．１  半導体記憶装置の構成について  
まず、本実施形態に係る半導体記憶装置の構成について説明する。
【０００９】
１．１．１  半導体記憶装置の全体構成について  
図１は、本実施形態に係る半導体記憶装置のブロック図である。図示するようにＮＡＮＤ型フラッシュメモリ１は、メモリセルアレイ１０、ロウデコーダ１１、センスアンプモジュール１２、演算モジュール１３、データラッチモジュール１４、及び制御部１７を備えている。
【００１０】
メモリセルアレイ１０は、複数の不揮発性メモリセルを備えている。メモリセルは、例えば電荷蓄積層と制御ゲートとを含む積層ゲートを備えたＭＯＳトランジスタであり、それぞれがロウ及びカラムに関連付けられている。そして、同一ロウに位置するメモリセルの制御ゲートは同一のワード線ＷＬに接続され、同一カラムに位置するメモリセルのドレインは同一のビット線ＢＬに接続され、ソースはソース線ＳＬに接続される。メモリセルアレイ１０の詳細については後述する。
【００１１】
ロウデコーダ１１は、メモリセルアレイ１０のロウ方向を選択する。すなわちロウデコーダ１１は、データの書き込み、読み出し、及び消去時においてワード線ＷＬを選択し、選択ワード線及び非選択ワード線に適切な電圧を印加する。
【００１２】
センスアンプモジュール１２は、ビット線毎に設けられたセンス回路を備える。センス回路の各々は、データの読み出し時において、メモリセルからビット線ＢＬに読み出されたデータをセンス・増幅する。またセンス回路はデータの書き込み時において、メモリセルに書き込むべきデータをビット線ＢＬに転送する。
【００１３】
演算モジュール１３は、ビット線毎に設けられた演算回路を備える。演算回路の各々は、データの読み出し時において、センス回路でセンス・増幅されたデータを用いて演算を行う。また演算回路はデータの書き込み時において、書き込みデータを用いた演算を行い、演算結果をセンス回路に転送する。
【００１４】
データラッチモジュール１４は、ビット線毎に設けられたラッチ回路を備える。ラッチ回路の各々は、データの読み出し時において、演算回路を介してセンス回路から転送された読み出しデータを保持する。そしてラッチ回路は、読み出しデータを外部に出力する。またラッチ回路はデータの書き込み時において、外部から受信した書き込みデータを一時的に保持する。そしてラッチ回路は、演算回路を介して書き込みデータをセンス回路に転送する。
【００１５】
制御部１５は、フラッシュメモリ１全体の動作を制御する。
【００１６】
１．１．２  メモリセルアレイの構成について  
図２は、本実施形態に係るメモリセルアレイ１０の回路図である。図示するようにメモリセルアレイ１０は、複数のメモリユニットＭＵ（ＭＵ１、ＭＵ２）を備えている。図２では２つのメモリユニットＭＵのみが図示されているが、３つ以上であっても良く、その数は限定されるものではない。
【００１７】
メモリユニットＭＵの各々は、例えば４つのストリングループＧＲ（ＧＲ１〜ＧＲ４）を備えている。なお、メモリユニットＭＵ１及びＭＵ２間で区別する際には、メモリユニットＭＵ１のストリンググループＧＲをそれぞれＧＲ１−１〜ＧＲ４−１と呼び、メモリユニットＭＵ２のストリンググループＧＲをそれぞれＧＲ１−２〜ＧＲ４−２と呼ぶ。
【００１８】
ストリンググループＧＲの各々は、例えば３つのＮＡＮＤストリングＳＲ（ＳＲ１〜ＳＲ３）を備えている。もちろん、ＮＡＮＤストリングＳＲの数は３つに限らず、４つ以上であっても良い。ＮＡＮＤストリングＳＲの各々は、選択トランジスタＳＴ１及びＳＴ２、並びに４つのメモリセルトランジスタＭＴ（ＭＴ１〜ＭＴ４）を備えている。メモリセルトランジスタＭＴの数は４つに限らず、５つ以上であっても良いし、３つ以下であっても良い。メモリセルトランジスタＭＴは、制御ゲートと電荷蓄積層とを含む積層ゲートを備え、データを不揮発に保持する。そしてメモリセルトランジスタＭＴは、選択トランジスタＳＴ１のソースと選択トランジスタＳＴ２のドレインとの間に直列接続されている。
【００１９】
ストリンググループＧＲ内において、３つのＮＡＮＤストリングＳＲ１〜ＳＲ３は、半導体基板上に順次積層されており、ＮＡＮＤストリングＳＲ１が最下層に形成され、ＮＡＮＤストリングＳＲ３が最上層に形成される。そして、同一のストリンググループＧＲに含まれる選択トランジスタＳＴ１及びＳＴ２は、それぞれ同一のセレクトゲート線ＧＳＬ１及びＧＳＬ２に接続され、同一列に位置するメモリセルトランジスタＭＴの制御ゲートは同一のワード線ＷＬに接続される。更に、あるストリンググループＧＲ内の３つの選択トランジスタＳＴ１のドレインは、互いに異なるビット線ＢＬに接続され、選択トランジスタＳＴ２のソースは同一のソース線ＳＬに接続される。
【００２０】
奇数番目のストリンググループＧＲ１及びＧＲ３と、偶数番目のストリンググループＧＲ２及びＧＲ４とでは、選択トランジスタＳＴ１及びＳＴ２は、その位置関係が逆になるように配置される。すなわち図２の例であると、ストリンググループＧＲ１及びＧＲ３の選択トランジスタＳＴ１はＮＡＮＤストリングＳＲの左端に配置され、選択トランジスタＳＴ２はＮＡＮＤストリングＳＲの右端に配置される。これに対して、ストリンググループＧＲ２及びＧＲ４の選択トランジスタＳＴ１はＮＡＮＤストリングＳＲの右端に配置され、選択トランジスタＳＴ２はＮＡＮＤストリングＳＲの左端に配置される。
【００２１】
そして、ストリンググループＧＲ１及びＧＲ３の選択トランジスタＳＴ１のゲートは、同一のセレクトゲート線ＧＳＬ１に接続され、選択トランジスタＳＴ２のゲートは、同一のセレクトゲート線ＧＳＬ２に接続される。他方、ストリンググループＧＲ２及びＧＲ４の選択トランジスタＳＴ１のゲートは、同一のセレクトゲート線ＧＳＬ２に接続され、選択トランジスタＳＴ２のゲートは、同一のセレクトゲート線ＧＳＬ１に接続される。
【００２２】
また、あるメモリユニットＭＵに含まれる４つのストリンググループＧＲ１及びＧＲ２は互いに同一のビット線ＢＬに接続され、異なるメモリユニットＭＵは互いに異なるビット線ＢＬに接続される。より具体的には、メモリユニットＭＵ１において、ストリンググループＧＲ１〜ＧＲ４におけるＮＡＮＤストリングＳＲ１〜ＳＲ３の選択トランジスタＳＴ１のドレインはそれぞれ、カラム選択ゲートＣＧＳ（ＣＧＳ１〜ＣＧＳ４）を介してビット線ＢＬ１〜ＢＬ３に接続される。カラム選択ゲートＣＧＳは、例えばメモリセルトランジスタＭＴや選択トランジスタＳＴ１及びＳＴ２等と同様の構成を有しており、各メモリユニットＭＵにおいて、ビット線ＢＬに選択する１つのストリンググループＧＲを選択する。従って、各ストリンググループＧＲに対応付けられたカラム選択ゲートＣＧＳ１〜ＣＳＧ４のゲートは、それぞれ異なる制御信号線ＳＳＬ１〜ＳＳＬ４によって制御される。
【００２３】
以上説明した構成を有するメモリユニットＭＵが、図２を記載した紙面において上下方向に複数配列される。これらの複数のメモリユニットＭＵは、メモリユニットＭＵ１とワード線ＷＬ及びセレクトゲート線ＧＳＬ１及びＧＳＬ２を共有する。他方で、ビット線ＢＬは独立しており、例えばメモリユニットＭＵ２に対しては、メモリユニットＭＵ１と異なる３本のビット線ＢＬ４〜ＢＬ６が対応付けられる。各メモリユニットＭＵに対応付けられるビット線ＢＬの本数は、１つのストリンググループＧＲに含まれるＮＡＮＤストリングＳＲの総数に対応する。従って、ＮＡＮＤストリングが４層あればビット線ＢＬも４本設けられ、その他の数の場合も同様である。また、制御信号ＳＳＬ１〜ＳＳＬ４は、メモリユニットＭＵ間で共通にされていても良いし、あるいは独立して制御されても良い。
【００２４】
上記構成において、各メモリユニットＭＵから１つずつ選択されたストリンググループＧＲにおける同一ワード線ＷＬに接続された複数のメモリセルトランジスタＭＴの集合が、「ページ」と呼ばれる単位となる。そして、データの書き込み及び読み出しはページ単位で行われる。
【００２５】
図３はメモリセルアレイ１０の斜視図であり、図４はメモリセルアレイ１０の平面図であり、図５は図４における５−５線に沿った断面図であり、図６は図４における６−６線に沿った断面図であり、図７は図４における７−７線に沿った断面図である。図３、図５、及び図７では１つのメモリユニットＭＵを図示しており、図４及び図６は２つのメモリユニットＭＵ１及びＭＵ２を図示している。
【００２６】
図示するように、半導体基板２０上には絶縁膜２１が形成され、絶縁膜２１上にメモリセルアレイ１０が形成される。
【００２７】
絶縁膜２１上には、半導体基板２０表面に対する垂直方向である第１方向に直交する第２方向に沿ったストライプ形状の、例えば４つのフィン型構造２４（２４−１〜２４−４）が形成されることで、１つのメモリユニットＭＵが形成されている。フィン型構造２４の各々は、交互に積層された絶縁膜２２（２２−１〜２２−４）及び半導体層２３（２３−１〜２３−３）を含む。このフィン型構造２４の各々が、図２で説明したストリンググループＧＲに相当する。そして、最下層の半導体層２３−１がＮＡＮＤストリングＳＲ１の電流経路（チャネルが形成される領域）に相当し、最上層の半導体層２３−３がＮＡＮＤストリングＳＲ３の電流経路に相当し、その間に位置する半導体層２３−２がＮＡＮＤストリングＳＲ２の電流経路に相当する。
【００２８】
フィン型構造２４の上面及び側面には、ゲート絶縁膜２５、電荷蓄積層２６、ブロック絶縁膜２７、及び制御ゲート２８が順次形成されている（図５参照）。電荷蓄積層２６は例えば絶縁膜により形成される。また制御ゲート２８は導電膜で形成され、ワード線ＷＬまたはセレクトゲート線ＧＳＬ１及びＧＳＬ２として機能する。ワード線ＷＬ及びセレクトゲート線ＧＳＬ１及びＧＳＬ２は、複数のメモリユニットＭＵ間で、複数のフィン型構造２４を跨ぐようにして形成される。他方で制御信号線ＳＳＬ１〜ＳＳＬ４は、個々のフィン型構造２４毎に独立している。
【００２９】
フィン型構造２４は、その一端部がメモリセルアレイ１０の端部に引き出されて、引き出された領域においてビット線ＢＬと接続される。すなわち、一例としてメモリユニットＭＵ１に着目すると、奇数番目のフィン型構造２４−１及び２４−３の一端部は、第２方向に沿ってある領域まで引き出されて共通に接続され、この領域にコンタクトプラグＢＣ１〜ＢＣ３が形成される。この領域に形成されたコンタクトプラグＢＣ１は、ストリンググループＧＲ１及びＧＲ３の半導体層２３−１とビット線ＢＬ１とを接続し、半導体層２３−２及び２３−３とは絶縁されている。コンタクトプラグＢＣ２は、ストリンググループＧＲ１及びＧＲ３の半導体層２３−２とビット線ＢＬ２とを接続し、半導体層２３−１及び２３−３とは絶縁されている。コンタクトプラグＢＣ３は、ストリンググループＧＲ１及びＧＲ３の半導体層２３−３とビット線ＢＬ３とを接続し、半導体層２３−１及び２３−２とは絶縁されている。
【００３０】
他方で、偶数番目のフィン型構造２４−２及び２４−４の一端部は、フィン型構造２４−１及び２４−３の一端部と第２方向で対向する領域まで引き出されて共通に接続され、この領域にコンタクトプラグＢＣ１〜ＢＣ３が形成される。この領域に形成されたコンタクトプラグＢＣ１は、ストリンググループＧＲ２及びＧＲ４の半導体層２３−１とビット線ＢＬ１とを接続し、半導体層２３−２及び２３−３とは絶縁されている。コンタクトプラグＢＣ２は、ストリンググループＧＲ２及びＧＲ４の半導体層２３−２とビット線ＢＬ２とを接続し、半導体層２３−１及び２３−３とは絶縁されている。コンタクトプラグＢＣ３は、ストリンググループＧＲ２及びＧＲ４の半導体層２３−３とビット線ＢＬ３とを接続し、半導体層２３−１及び２３−２とは絶縁されている。
【００３１】
もちろん、上記の説明はメモリユニットＭＵ１の場合のものであり、例えばメモリユニットＭＵ２の場合には、コンタクトプラグＢＣ４〜ＢＣ６が形成され、これらが半導体層２３−１〜２３−３をそれぞれビット線ＢＬ４〜ＢＬ６に接続する（図６参照）。
【００３２】
また、フィン型構造２４の他端上にはコンタクトプラグＳＣが形成される。コンタクトプラグＳＣは、半導体層２３−１〜２３−３をソース線ＳＬに接続する。
【００３３】
上記構成において、ＮＡＮＤストリングＳＲ１〜ＳＲ３に含まれるメモリセルトランジスタは、そのサイズが互いに異なる。より具体的には、図５に示すように各フィン型構造２４において、半導体層２３の第３方向に沿った幅は、低いレイヤに位置するもの程大きく、高いレイヤに位置するもの程小さい。すなわち、半導体層２３−１の幅が最も広く、半導体層２３−３の幅が最も狭く、半導体層２３−２の幅はその中間である。つまり、製造ばらつきによって互いに特性の異なる複数のメモリセルトランジスタＭＴが１ページに含まれる。
【００３４】
１．１．３  メモリセルトランジスタの閾値分布について
図８は、本実施形態に係るメモリセルトランジスタＭＴの取りうる閾値分布を示す。図示するようにメモリセルトランジスタＭＴは、その閾値に応じて例えば２ビットのデータを保持可能である。この２ビットデータは、閾値の低いものから順番に、例えば“Ｅｐ”レベル、“Ａ”レベル、“Ｂ”レベル、及び“Ｃ”レベルである。
【００３５】
“ＥＰ”レベルは、データが消去された状態における閾値であり、例えば正の値を有し、ベリファイ電圧Ｖfy_Aよりも低い。“Ａ”〜“Ｃ”レベルは、電荷蓄積層内に電荷が注入された状態の閾値であり、“Ａ”レベルはベリファイ電圧Ｖfy_Aよりも高く、且つベリファイ電圧Ｖfy_Bより低い閾値を有し、“Ｂ”レベルはベリファイ電圧Ｖfy_Bよりも高く、且つベリファイ電圧Ｖfy_Cより低い閾値を有し、“Ｃ”レベルはベリファイ電圧Ｖfy_Cよりも高い閾値を有する。
【００３６】
このように、４つの閾値レベルを取り得ることにより、個々のメモリセルトランジスタＭＴは２ビットのデータ(4-level data)を記憶出来る。
【００３７】
１．２  データの書き込み動作について  
次に、本実施形態に係るデータの書き込み動作について説明する。書き込み動作の説明にあたって、その位置（レイヤ）と書き込みデータとに基づいてメモリセルトランジスタＭＴを定義するために図９を用いて説明する。図９は、メモリセルアレイ１０の回路図であり、説明の簡単化のため、２つのメモリユニットＭＵ１及びＭＵ２のみがメモリセルアレイ１０に含まれる場合を示し、また制御信号線ＳＳＬ１及びＳＳＬ５が選択されることにより、メモリユニットＭＵ１におけるストリンググループＧＲ１−１とメモリユニットＭＵ２におけるストリンググループＧＲ１−２が選択された場合について示している。従って、ストリンググループＧＲ１−１及びＧＲ１−２において同一ワード線ＷＬに接続される６つのメモリセルトランジスタＭＴによってページが形成される。なお、紙面の都合上、選択されたストリンググループＧＲ１−１及びＧＲ１−２のみを図示し、またカラム選択ゲートＣＧＳの図示を省略している。以下でする説明は、その他のストリンググループの組み合わせが選択された場合も同様である。
【００３８】
前述の通り、あるストリンググループＧＲにおいて、最下層に位置するメモリセルトランジスタＭＴ（ＮＡＮＤストリングＳＲ１）は、その半導体層２３の幅が最も大きい。従って、データの書き込み速度が最も高い。他方、最上層に位置するメモリセルトランジスタＭＴ（ＮＡＮＤストリングＳＲ３）は、その半導体層２３の幅が最も小さい。従って、データの書き込み速度が最も低い。
【００３９】
従って、ページ単位でデータを書き込むにあたって、書き込みが最も早く終了する（書き込み速度の高い）メモリセルトランジスタは、フィン型構造２４における最下層に位置すると共に、“Ａ”レベルが書き込まれるメモリセルトランジスタＭＴである。このようなメモリセルトランジスタＭＴを、以下の説明では第１セルと呼ぶことにする。これに対して、書き込みが最も遅く終了する（書き込み速度の低い）メモリセルトランジスタは、フィン型構造２４における最上層に位置すると共に、“Ｃ”レベルが書き込まれるメモリセルトランジスタＭＴである。このようなメモリセルトランジスタＭＴを、第３セルと呼ぶ。そしてその他のメモリセルトランジスタＭＴを第２セルと呼ぶ。
【００４０】
次に、図９乃至図１１を用いてデータの書き込み方法について説明する。図１０は書き込み方法のフローチャートであり、図１１は書き込み時における選択ワード線ＷＬに印加される電圧のタイミングチャートである。
【００４１】
まず、制御部１５の命令に応答してロウデコーダ１１はいずれかのワード線ＷＬを選択して、選択ワード線ＷＬにプログラム電圧ＶＰＧＭを印加して、データをプログラムする。図９の例では、ワード線ＷＬ１が選択され、ストリンググループＧＲ１−１及びＧＲ１−２においてワード線ＷＬ１に接続された６つのメモリセルトランジスタＭＴにデータがプログラムされる（ステップＳ１０）。
【００４２】
この際ロウデコーダ１１は、図１１に示すようにプログラム電圧ＶＰＧＭ１、ＶＰＧＭ２、及びＶＰＧＭ３を順次、選択ワード線ＷＬ１に印加する。電圧ＶＰＧＭ１〜ＶＰＧＭ３はそれぞれ、第１〜第３セルのためのプログラム用電圧であり、ＶＰＧＭ１＜ＶＰＧＭ２＜ＶＰＧＭ３の関係がある。またロウデコーダ１１は、非選択ワード線ＷＬ２〜ＷＬ４に電圧ＶＰＡＳＳを印加する。電圧ＶＰＡＳＳは、保持データに関わらずメモリセルトランジスタＭＴをオンさせる電圧であり、プログラム電圧ＶＰＧＭ１〜ＶＰＧＭ３よりも低い電圧である。またロウデコーダ１１は、セレクトゲート線ＧＳＬ１に電圧ＶＳＧを印加し、セレクトゲート線ＧＳＬ２に例えば０Ｖを印加する。電圧ＶＳＧは、プログラム対象となるＮＡＮＤストリングＳＲの選択トランジスタＳＴ１をオンさせ、プログラム非対象となるＮＡＮＤストリングＳＲの選択トランジスタＳＴ１をオフさせる電圧である。なお、制御信号線ＳＳＬ２〜ＳＳＬ４に“low”レベルが与えられることで、非選択のストリンググループＧＲ２〜ＧＲ４はビット線ＢＬと電気的に分離される。
【００４３】
ロウデコーダ１１が電圧ＶＰＧＭ１を選択ワード線ＷＬ１に印加している間、センスアンプモジュール１２は、第１セルが接続されているビット線ＢＬ（図９の例ではＢＬ１）に０Ｖを印加する。これにより、第１セルを含むＮＡＮＤストリングＳＲ１では選択トランジスタＳＴ１がオンされ、第１セルにデータがプログラムされる。またロウデコーダ１１は、第２セル及び第３セルが接続されているビット線ＢＬ（図９の例ではＢＬ２〜ＢＬ６）に電圧Ｖ１（＞０Ｖ）を印加する。これにより、第２セル及び第３セルを含むＮＡＮＤストリングＳＲでは選択トランジスタＳＴ１がカットオフされ、第２セル及び第３セルへのプログラムが禁止される。
【００４４】
次にロウデコーダ１１が電圧ＶＰＧＭ２を選択ワード線ＷＬ１に印加している間、センスアンプモジュール１２は、第２セルが接続されているビット線ＢＬ（図９の例ではＢＬ２〜ＢＬ５）に０Ｖを印加する。これにより、第２セルを含むＮＡＮＤストリングＳＲでは選択トランジスタＳＴ１がオンされ、第２セルにデータがプログラムされる。またロウデコーダ１１は、第１セル及び第３セルが接続されているビット線ＢＬ（図９の例ではＢＬ１及びＢＬ６）に電圧Ｖ１を印加する。これにより、第１セル及び第３セルへのプログラムが禁止される。
【００４５】
引き続きロウデコーダ１１が電圧ＶＰＧＭ３を選択ワード線ＷＬ１に印加している間、センスアンプモジュール１２は、第３セルが接続されているビット線ＢＬ（図９の例ではＢＬ６）に０Ｖを印加する。これにより、第３セルにデータがプログラムされる。またロウデコーダ１１は、第１セル及び第２セルが接続されているビット線ＢＬ（図９の例ではＢＬ１〜ＢＬ５）に電圧Ｖ１を印加する。これにより、第１セル及び第２セルへのプログラムが禁止される。
【００４６】
以上の３ステップにより、ワード線ＷＬ１に接続された第１〜第３セルにデータが順次プログラムされる。メモリセルトランジスタＭＴが第１〜第３セルのいずれに相当するかは、メモリセルトランジスタＭＴのアドレスに応じて判断出来る。つまり、制御部１５及びロウデコーダ１１は、書き込み対象となるメモリセルトランジスタＭＴのアドレスと、そのメモリセルトランジスタＭＴへ書き込むべきデータに応じて、第１乃至第３プログラム電圧のいずれを印加するかを決定出来る。
【００４７】
次に制御部１５は、ステップＳ１０でのプログラムの結果メモリセルトランジスタＭＴにプログラムされたデータをベリファイする（ステップＳ１１）。
【００４８】
この際ロウデコーダ１１は、制御部１５の命令に応答して、図１１に示すようにベリファイ電圧Ｖfy_A、Ｖfy_B、及びＶfy_Cを順次、選択ワード線ＷＬ１に印加する。またロウデコーダ１１は、非選択ワード線ＷＬ２〜ＷＬ４に電圧ＶＲＥＡＤを印加する。電圧ＶＲＥＡＤは、保持データに関わらずメモリセルトランジスタＭＴをオンさせる電圧である。またロウデコーダ１１は、セレクトゲート線ＧＳＬ１及びＧＳＬ２にhighレベルを印加し、選択トランジスタＳＴ１及びＳＴ２をオンさせる。なお、制御信号線ＳＳＬ２〜ＳＳＬ４に“low”レベルが与えられることで、非選択のストリンググループＧＲ２〜ＧＲ４はビット線ＢＬと電気的に分離される。
【００４９】
ベリファイ動作の期間、センスアンプモジュール１２は、ビット線ＢＬ１〜ＢＬ６にプリチャージ電圧を印加して、ビット線ＢＬ１〜ＢＬ６に流れる電流をセンス・増幅する。これにより、メモリセルトランジスタＭＴにプログラムされたデータを判別する。
【００５０】
ベリファイ電圧Ｖfy_Aを印加した際に、“Ａ”レベルが書き込まれるべきメモリセルトランジスタＭＴの接続されたビット線ＢＬに電流が流れれば、当該メモリセルトランジスタＭＴの閾値は“Ａ”レベルまで上昇していないことになるので、当該メモリセルトランジスタＭＴへのプログラムは未完了であることが分かる（これをベリファイフェイルと呼ぶ）。他方、電流が流れれば、当該メモリセルトランジスタＭＴの閾値は“Ａ”レベルまで上昇したことになるので、当該メモリセルトランジスタＭＴへのプログラムは完了したことが分かる（これをベリファイパスと呼ぶ）。“Ｂ”レベル及び“Ｃ”レベルへのプログラムも同様である。
【００５１】
ステップＳ１１の結果、第１セルへのプログラムが完了し（ステップＳ１２、ＹＥＳ）、第３セルへのプログラムが完了し（ステップＳ１３、ＹＥＳ）、第２セルへのプログラムが完了すれば（ステップＳ１４、ＹＥＳ）、制御部１５は、選択ページに対する所望のデータのプログラムが正常に完了したものと判断し、書き込み動作を終了する。
【００５２】
ステップＳ１１の結果、第１セルへのプログラムが完了し（ステップＳ１２、ＹＥＳ）、第３セルへのプログラムが完了していなければ（ステップＳ１３、ＮＯ）、制御部１５は、電圧ＶＰＧＭ１の印加を省略し、且つ電圧ＶＰＧＭ２及びＶＰＧＭ３をステップアップしつつ（ステップＳ１５）、ステップＳ１０の処理を繰り返す。
【００５３】
ステップＳ１１の結果、第１セルへのプログラムが完了しておらず（ステップＳ１２、ＮＯ）、第３セルへのプログラムも完了していなければ（ステップＳ１６、ＮＯ）、制御部１５は電圧ＶＰＧＭ１〜ＶＰＧＭ３をステップアップしつつ（ステップＳ１７）、ステップＳ１０の処理を繰り返す。第３セルへのプログラムが完了していれば（ステップＳ１６、ＹＥＳ）、制御部１５は、電圧ＶＰＧＭ３の印加を省略し且つ電圧ＶＰＧＭ１及びＶＰＧＭ２をステップアップしつつ（ステップＳ１８）、ステップＳ１０の処理を繰り返す。
【００５４】
ステップＳ１１の結果、第１及び第３セルへのプログラムが完了し（ステップＳ１２、ＹＥＳ、ステップＳ１３、ＹＥＳ）、第２セルへのプログラムが完了していなければ（ステップＳ１４、ＮＯ）、制御部１５は、電圧ＶＰＧＭ１及びＶＰＧＭ３の印加を省略し且つ電圧ＶＰＧＭ２をステップアップしつつ（ステップＳ１９）、ステップＳ１０の処理を繰り返す。
【００５５】
図１１の例では、２回目のプログラムの結果、第１セルがベリファイにパスしている（時刻ｔ４）。従って制御部１５は、３回目のプログラムにおいて電圧ＶＰＧＭ１の印加を省略している。また３回目のプログラムの結果、第３セルがベリファイにパスしている（時刻ｔ６）。従って制御部１５は、４回目のプログラムにおいて電圧ＶＰＧＭ３の印加を更に省略している。
【００５６】
１．３  本実施形態に係る効果について  
本実施形態に係る構成であると、データの書き込み速度を向上出来る。本効果につき、以下説明する。
【００５７】
図１２は、ＮＡＮＤ型フラッシュメモリの通常の書き込み方法におけるワード線電圧のタイミングチャートである。図示するように、データのプログラム時には、プログラム電圧ＶＰＧＭが選択ワード線に印加されて、“Ａ”〜“Ｃ”レベルが書き込まれるべきメモリセルトランジスタＭＴに対して一括してデータがプログラムされ、その後、ベリファイ動作が実行される。つまり、１回のプログラム電圧ＶＰＧＭの印加とベリファイ動作とにより１回のプログラムループが構成され、このプログラムループが、プログラム電圧がステップアップされつつ繰り返される。
【００５８】
しかしながら、このような書き込み方法を、図２乃至図６を用いて説明したフラッシュメモリに適用した場合、書き込みに要する時間が非常に長くなるおそれがある。図２乃至図６のように、ＮＡＮＤストリングＳＲにおいて直列接続されたメモリセルトランジスタＭＴが半導体基板面に平行に配置され、更にＮＡＮＤストリングＳＲが半導体基板面に対する垂直方向に積層される場合、１ページに含まれるメモリセルトランジスタＭＴの電流経路の幅が異なり、書き込み速度にばらつきが生じる。つまり、同一ページの中に、書き込みの速いメモリセルトランジスタＭＴと遅いメモリセルトランジスタＭＴとが混在する。この理由は、メモリセルアレイ１０の製造プロセスに起因する。すなわち、メモリセルアレイ１０は、半導体基板２０上に絶縁膜２２−１〜２２−４及び半導体層２３−１〜２３−４を積層した後、これらの層２２−１〜２２−４及び２３−１〜２３−４を一括してパターニングすることによって形成される。その結果、図５に示すようにフィン型構造２４にはテーパー角が生じてしまう。
【００５９】
そのため、データを書き込む際には、最もデータの書き込み速度が高いメモリセルトランジスタＭＴに対してオーバープログラムとならないようなケアが必要である。つまり、図１２の最初のプログラムループで使用される電圧ＶＰＧＭは、最下層のレイヤに位置し且つ“Ａ”レベルが書き込まれるメモリセルトランジスタＭＴに対してオーバープログラムとならないよう、十分に低い値に設定される。
【００６０】
すると、図１２に示すように、書き込み動作における前半のプログラム動作は、実質的に書き込み速度の高いメモリセルトランジスタＭＴ（すなわち第１セル）に対してのみ寄与し、この期間のプログラムパルスは、書き込み速度の低い第３セルの閾値電圧に対してほとんど影響を与えない。そして、書き込み動作における後半のプログラム動作になってようやく、第３セルに対する実質的なプログラムが開始される。
【００６１】
つまり、データプログラムはページ単位で一括して実行されるが、実質的にはページ内における第１乃至第３セルが順番にプログラムされることになる。従って、プログラムループ回数が非常に多くなり、書き込み時間に長時間を要してしまう。
【００６２】
これに対して本実施形態であると、１回のプログラムループにおいて複数種類のプログラム電圧を用意することにより、最初のプログラムループにおいても第３セルへの実質的なプログラムを可能とし、書き込み時間を短縮出来る。
【００６３】
すなわち本実施形態では、プログラム電圧ＶＰＧＭを、以下の３つのパルスに分離する。  
（１）書き込みが速いレイヤに位置し、“Ａ”レベル書き込みセル（第１セル）に印加するパルス：ＶＰＧＭ１  
（２）書き込みが遅いレイヤに位置し、“Ｃ”レベル書き込みセル（第３セル）に印加するパルス：ＶＰＧＭ３  
（３）上記（１）及び（２）以外のセル（第２セル）に印加するパルス：ＶＰＧＭ２。
【００６４】
そして、１回のプログラムループにおいて、上記（１）乃至（３）のパルスを順次印加する。これらのパルスの初期値は、これらのパルスによってプログラムされるメモリセルトランジスタＭＴの書き込み速度及び書き込みデータに応じて最適な値とされる。つまり、電圧ＶＰＧＭ３の初期値は、第３セルをオーバープログラムしない値であれば、第１セルや第２セルをオーバープログラムする値であっても良い。もちろん、電圧ＶＰＧＭ１の初期値は、１回のプログラム動作で第１セルをオーバープログラムしない値に設定される。
【００６５】
これにより、最初のプログラムループから、第１セル乃至第３セルの全てに対して、実質的なプログラムを実行出来る。言い換えれば、最初のプログラムループにおいても、第３セルの閾値電圧を有効に上昇させることが出来る。その結果、プログラムループ回数を大幅に削減し、書き込み速度を向上出来る。
【００６６】
なお、図１１では初めにＶＰＧＭ１が省略され、次にＶＰＧＭ３が省略される例を示したが、逆の場合もあり得るし、あるいはＶＰＧＭ１及びＶＰＧＭ３が同時に省略される場合もあり得る。
【００６７】
上記書き込み方法を採用した結果として、いずれかのプログラムループにおいて、ロウデコーダ１１は、プログラム電圧をＭ回（Ｍは１以上の自然数）、選択ワード線ＷＬに対して順次印加し(図11のt5〜t6, t7〜t8)、引き続きベリファイ電圧ＶfyをＮ回（ＮはＭより大きく、３以上の自然数）、選択ワード線ＷＬに対して順次印加する(図11のt6〜t7, t7以降)。そして、いずれのプログラムループにおいても、プログラム電圧の印加回数は、ベリファイ電圧の印加回数を上回ることは無く、ベリファイ電圧の印加回数と同じか、それ未満である。
【００６８】
更に言い換えれば、メモリセルへのデータの書き込みは、選択ワード線ＷＬにプログラム電圧を印加するプログラム動作と、選択ワード線にベリファイ電圧を印加するベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行される。この複数回繰り返されるプログラムループのうち、連続する２回のプログラムループ(図11のt3〜t5とt5〜t6)間においてロウデコーダ１１は、ベリファイ電圧Ｖfyの印加回数は不変としつつ、２回目のプログラムループ(図11のt5〜t6)におけるプログラム電圧の印加回数(3回: VPGM1-VPGM3)を、１回目のプログラムループ(図11のt3〜t5)よりも減少させる(2回: VPGM2,VPGM3)。
【００６９】
例えば、ロウデコーダ１１は、あるプログラムループにおいてプログラム電圧をＭ回、前記選択ワード線に順次印加する。このＭ回のうちのいずれかのプログラム電圧(図11及び図16のVPGM1)が選択ワード線ＷＬに印加される際、最下層に位置する第１メモリセルがプログラム対象とされ、少なくとも最上層に位置する第３メモリセルはプログラム非対象とされる。そしてロウデコーダ１１は、次のプログラムループにおいて、前記選択ワード線への前記いずれかのプログラム電圧(図11及び図16のVPGM1)の印加を省略する(図11のt5-t6及び図16のt5以降)。この例は、ＶＰＧＭ３よりも先にＶＰＧＭ１の印加をやめる場合である。
【００７０】
他方、Ｍ回のうちの別のプログラム電圧(図11及び図14のVPGM3)が選択ワード線ＷＬに印加される際、最上層に位置する第３メモリセルがプログラム対象とされ、少なくとも最下層に位置する第１メモリセルはプログラム非対象とされる。そしてロウデコーダ１１は、次のプログラムループにおいて、前記いずれかのプログラム電圧(図11及び図14のVPGM3)の印加を省略する(図14のt5以降)。この例は、ＶＰＧＭ１よりも先にＶＰＧＭ３の印加をやめる場合である。
【００７１】
もちろん、次のプログラムループにおいて、複数のプログラム電圧の印加を同時にやめる場合であっても良い。
【００７２】
図１２の例においても、１回のプログラムループにおいて複数回にわたってプログラム電圧が印加されても良い。しかし図１２の場合、これらのプログラム電圧と書き込みレベルとが関連付けられている。従って、プログラム電圧の印加の削減と、あるレベルへの書き込みの完了とが、完全に一致する。言い換えれば、あるプログラム電圧の印加が停止されると、同時にあるベリファイ電圧の印加も停止される。
【００７３】
これに対して本実施形態によれば、プログラム電圧には、書き込みレベルだけでなくメモリセルの位置も関連付けられている。従って、例えあるプログラム電圧の印加が停止されたとしても、ベリファイ電圧の印加が停止されるとは限らない。
【００７４】
２．第２実施形態  
次に、第２実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第１実施形態で説明したデータ書き込み方法において、プログラム電圧ＶＰＧＭ１をＶＰＧＭ２に包含することにより、１回のプログラムループで使用するプログラムパルス数を２つに減らしたものである。以下では、第１実施形態と異なる点についてのみ説明する。
【００７５】
２．１  データの書き込み動作について  
本実施形態に係るデータの書き込み動作につき、図１３及び図１４を用いて説明する。図１３は書き込み方法のフローチャートであり、図１４は書き込み時における選択ワード線ＷＬに印加される電圧のタイミングチャートである。
【００７６】
まず、制御部１５の命令に応答してロウデコーダ１１はいずれかのワード線ＷＬを選択して、選択ワード線ＷＬにプログラム電圧ＶＰＧＭを印加して、データをプログラムする（ステップＳ２０）。
【００７７】
この際ロウデコーダ１１は、プログラム電圧ＶＰＧＭ２ａ及びＶＰＧＭ３を順次、選択ワード線ＷＬに印加する。電圧ＶＰＧＭ２ａは、第１及び第２セルのためのプログラム電圧であり、ＶＰＧＭ２ａ＜ＶＰＧＭ３の関係がある。また、例えばＶＰＧＭ１≦ＶＰＧＭ２ａ≦ＶＰＧＭ２であるが、ＶＰＧＭ２ａは例えば、１回のプログラムで第１セルに対してオーバープログラムとならないような値である。
【００７８】
ロウデコーダ１１が電圧ＶＰＧＭ２ａを選択ワード線ＷＬに印加している間、センスアンプモジュール１２は、第１及び第２セルが接続されているビット線ＢＬ（図９の例ではＢＬ１〜ＢＬ５）に０Ｖを印加する。これにより、第１及び第２セルを含むＮＡＮＤストリングＳＲでは選択トランジスタＳＴ１がオンされ、第１及び第２セルにデータがプログラムされる。またロウデコーダ１１は、第３セルが接続されているビット線ＢＬ（図９の例ではＢＬ６）に電圧Ｖ１を印加する。これにより、第３セルへのプログラムが禁止される。
【００７９】
以上の２ステップにより、選択ワード線ＷＬに接続された第１及び第２セル、並びに第３セルにデータが順次プログラムされる。
【００８０】
次に制御部１５は、メモリセルトランジスタＭＴにプログラムされたデータをベリファイする（ステップＳ２１）。ステップＳ２１は、第１実施形態で説明したステップＳ１１と同様である。
【００８１】
ステップＳ２１の結果、第１及び第２セルへのプログラムが完了し（ステップＳ２２、ＹＥＳ）、第３セルへのプログラムも完了すれば（ステップＳ２３、ＹＥＳ）、制御部１５は、選択ページに対する所望のデータのプログラムが正常に完了したものと判断し、書き込み動作を終了する。
【００８２】
ステップＳ２１の結果、第１及び第２セルへのプログラムが完了し（ステップＳ２２、ＹＥＳ）、第３セルへのプログラムが完了していなければ（ステップＳ２３、ＮＯ）、制御部１５は、電圧ＶＰＧＭ２ａの印加を省略し、且つ電圧ＶＰＧＭ３をステップアップしつつ（ステップＳ２４）、ステップＳ２０の処理を繰り返す。
【００８３】
ステップＳ２１の結果、第１及び第２セルの少なくともいずれかへのプログラムが完了しておらず（ステップＳ２２、ＮＯ）、第３セルへのプログラムも完了していなければ（ステップＳ２５、ＮＯ）、制御部１５は電圧ＶＰＧＭ２ａ及びＶＰＧＭ３をステップアップしつつ（ステップＳ２６）、ステップＳ２０の処理を繰り返す。第３セルへのプログラムが完了していれば（ステップＳ２５、ＹＥＳ）、制御部１５は、電圧ＶＰＧＭ３の印加を省略し且つ電圧ＶＰＧＭ２ａをステップアップしつつ（ステップＳ２７）、ステップＳ２０の処理を繰り返す。
【００８４】
２．２  本実施形態に係る効果  
本実施形態によれば、プログラム電圧ＶＰＧＭ２ａを用いて、第１及び第２セルに対するプログラムを同時に行っている。従って、第１実施形態と同様にプログラムループ回数を削減しつつ、プログラム電圧の種類を削減し、回路構成を簡略化出来る。
【００８５】
３．第３実施形態  
次に、第３実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第１実施形態で説明したデータ書き込み方法において、プログラム電圧ＶＰＧＭ３をＶＰＧＭ２に包含することにより、１回のプログラムループで使用するプログラムパルス数を２つに減らしたものである。以下では、第１実施形態と異なる点についてのみ説明する。
【００８６】
３．１  データの書き込み動作について  
本実施形態に係るデータの書き込み動作につき、図１５及び図１６を用いて説明する。図１５は書き込み方法のフローチャートであり、図１６は書き込み時における選択ワード線ＷＬに印加される電圧のタイミングチャートである。
【００８７】
まず、制御部１５の命令に応答してロウデコーダ１１は、いずれかのワード線ＷＬを選択する。そしてロウデコーダ１１は、選択ワード線ＷＬにプログラム電圧ＶＰＧＭを印加して、データをプログラムする（ステップＳ３０）。
【００８８】
この際ロウデコーダ１１は、プログラム電圧ＶＰＧＭ１及びＶＰＧＭ２ｂを順次、選択ワード線ＷＬに印加する。電圧ＶＰＧＭ２ｂは、第２及び第３セルのためのプログラム電圧であり、ＶＰＧＭ２ｂ＞ＶＰＧＭ１の関係がある。また、例えばＶＰＧＭ２≦ＶＰＧＭ２ｂ≦ＶＰＧＭ３である。ＶＰＧＭ２ｂは例えば、１回のプログラムで第２セルに対してオーバープログラムとならないような値である。ロウデコーダ１１が電圧ＶＰＧＭ２ｂを選択ワード線ＷＬに印加している間、センスアンプモジュール１２は、第２及び第３セルが接続されているビット線ＢＬ（図９の例ではＢＬ２〜ＢＬ６）に０Ｖを印加する。これにより、第２及び第３セルを含むＮＡＮＤストリングＳＲでは、選択トランジスタＳＴ１がオンされ、第２及び第３セルにデータがプログラムされる。またロウデコーダ１１は、第１セルが接続されているビット線ＢＬ（図９の例ではＢＬ１）に電圧Ｖ１を印加する。これにより、第１セルへのプログラムが禁止される。
【００８９】
以上の２ステップにより、選択ワード線ＷＬに接続された第１セル、並びに第２及び第３セルにデータが順次プログラムされる。
【００９０】
次に制御部１５は、メモリセルトランジスタＭＴにプログラムされたデータをベリファイする（ステップＳ３１）。ステップＳ３１は、第１実施形態で説明したステップＳ１１と同様である。
【００９１】
ステップＳ３１の結果、第１セルへのプログラムが完了し（ステップＳ３２、ＹＥＳ）、第２及び第３セルへのプログラムも完了すれば（ステップＳ３３、ＹＥＳ）、制御部１５は、選択ページに対する所望のデータのプログラムが正常に完了したものと判断し、書き込み動作を終了する。
【００９２】
ステップＳ３１の結果、第１セルへのプログラムが完了し（ステップＳ３２、ＹＥＳ）、第２及び第３セルの少なくともいずれかへのプログラムが完了していなければ（ステップＳ３３、ＮＯ）、制御部１５は、電圧ＶＰＧＭ１の印加を省略し、且つ電圧ＶＰＧＭ２ｂをステップアップしつつ（ステップＳ３４）、ステップＳ３０の処理を繰り返す。
【００９３】
ステップＳ３１の結果、第１セルへのプログラムが完了しておらず（ステップＳ３２、ＮＯ）、第２及び第３セルの少なくともいずれかへのプログラムも完了していなければ（ステップＳ３５、ＮＯ）、制御部１５は電圧ＶＰＧＭ１及びＶＰＧＭ２ｂをステップアップしつつ（ステップＳ３６）、ステップＳ３０の処理を繰り返す。第２及び第３セルへのプログラムが完了していれば（ステップＳ３５、ＹＥＳ）、制御部１５は、電圧ＶＰＧＭ２ｂの印加を省略し且つ電圧ＶＰＧＭ１をステップアップしつつ（ステップＳ３７）、ステップＳ３０の処理を繰り返す。
【００９４】
３．２  本実施形態に係る効果  
本実施形態によれば、プログラム電圧ＶＰＧＭ２ｂを用いて、第２及び第３セルに対するプログラムを同時に行っている。従って、第２実施形態と同様の効果が得られる。
【００９５】
４．第４実施形態  
次に、第４実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第１実施形態で説明したデータ書き込み方法において、プログラム電圧ＶＰＧＭ２の印加時に第１セルのチャネル電位を上昇させることで、ＶＰＧＭ１の印加を省略し、１回のプログラムループで使用するプログラムパルス数を２つに減らしたものである。以下では、第１実施形態と異なる点についてのみ説明する。
【００９６】
４．１  データの書き込み動作について  
本実施形態に係るデータの書き込み動作につき、図１７及び図１８を用いて説明する。図１７は書き込み方法のフローチャートであり、図１８はプログラム時において選択ワード線ＷＬ及びビット線ＢＬに印加される電圧のタイミングチャートである。
【００９７】
まず、制御部１５の命令に応答してロウデコーダ１１はいずれかのワード線ＷＬを選択して、選択ワード線ＷＬにプログラム電圧ＶＰＧＭを印加して、データをプログラムする（ステップＳ４０）。
【００９８】
この際ロウデコーダ１１は、プログラム電圧ＶＰＧＭ２及びＶＰＧＭ３を順次、選択ワード線ＷＬに印加する。第１実施形態で説明した通り、電圧ＶＰＧＭ２は第２セルへのプログラムに最適化された電圧である。電圧ＶＰＧＭ１は印加されない。
【００９９】
図１９は、電圧ＶＰＧＭ２印加時におけるメモリセルアレイ１０の回路図である。本実施形態では、電圧ＶＰＧＭ２印加時に、第２セルだけでなく第１セルへのプログラムも実行する。その際、センスアンプモジュール１２は、第１セルが接続されたビット線ＢＬ（図１９の例ではＢＬ１）に対して電圧ＶＱＰＷを印加する。電圧ＶＱＰＷは、第２セルが接続されたビット線ＢＬ（図１９の例ではＢＬ２〜ＢＬ５）に印加される電圧よりも大きな電圧であり、例えばＶＱＰＷ＞０Ｖである。またＶＱＰＷは、ゲートに電圧ＶＳＧが印加された選択トランジスタＳＴ１によって転送可能な電圧でもある。
【０１００】
従って、電圧ＶＰＧＭ２が印加されている期間、第１及び第２セルは、各チャネルにＶＱＰＷ及び０Ｖがそれぞれ印加された状態でプログラムされる。
【０１０１】
その後の処理は、第２実施形態の図１３を用いて行った説明においてＶＰＧＭ２ａをＶＰＧＭ２に読み替えたものと同様である。そして図１７のステップＳ４１〜Ｓ４７は、図１３のステップＳ２１〜Ｓ２７に対応する。
【０１０２】
４．２  本実施形態に係る効果  
本実施形態によれば、第２実施形態と同様にプログラムループ回数を削減しつつ、プログラム電圧の種類を削減し、回路構成を簡略化出来る。また、プログラム電圧ＶＰＧＭ２の初期値を第２セルに最適化できるため、第２実施形態よりも書き込みを高速化出来る。本効果につき、図２０を用いて説明する。図２０は、プログラム時における第１セル及び第２セルの閾値電圧の変化を示すグラフである。
【０１０３】
図示するように、プログラム電圧ＶＰＧＭ２は、第２セルのプログラムに最適化されているため、第２セルの閾値は、所望のステップ（ΔＶth１）で上昇していく。しかし、ＶＰＧＭ２は、第１セルにとっては大きすぎる電圧である。そのため、ＶＰＧＭ２をそのまま第１セルに適用すると、その閾値は所望のステップよりも大きなステップ（ΔＶth２）で上昇していく。場合によっては、１回のプログラムで閾値が上がりすぎてしまうおそれがある。
【０１０４】
そこで本実施形態では、第１セルが接続されたビット線ＢＬに電圧ＶＱＰＷを印加する。すなわち、電圧ＶＱＰＷを印加することで、制御ゲートとチャネルとの間の電位差を小さくする。これにより、第１セルの閾値変動幅を制御し（変動幅を小さくする）、最適なステップ（ΔＶth３）で上昇させる。
【０１０５】
すなわち、ＶＰＧＭ１の印加を省略しつつも、第２セルだけでなく第１セルに対しても最適なプログラムを実行でき、これらのセルへの高速な書き込みを可能とする。
【０１０６】
５．第５実施形態  
次に、第５実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第１実施形態におけるカラム系周辺回路の構成及び動作に関するものである。
【０１０７】
５．１  カラム系周辺回路の構成について  
図２１は、本実施形態に係るセンスアンプモジュール１２、演算モジュール１３、及びデータラッチモジュール１４のブロック図である。
【０１０８】
図示するようにセンスアンプモジュール１２は、各ビット線ＢＬに対応付けられたラッチ回路ＳＤＬを備えている。図中において、“ＳＤＬ”の後ろに付記した“＿Ｂ”、“＿Ｍ”、及び“＿Ｔ”はそれぞれ、各ラッチ回路ＳＤＬが、フィン型構造２４の最下層のセル、中間層のセル、及び最上層のセルに対応することを示している。各ラッチ回路ＳＤＬには、いずれのセルに対応しているかを示す信号ＳＥＬ＿ＢＯＴ、ＳＥＬ＿ＭＩＤ、及びＳＥＬ＿ＴＯＰが、例えば制御部１５によって与えられる。すなわち、ラッチ回路ＳＤＬ＿ＢにはＳＥＬ＿ＢＯＴ＝“Ｈ”が与えられ、ラッチ回路ＳＤＬ＿ＭにはＳＥＬ＿ＭＩＤ＝“Ｈ”が与えられ、ラッチ回路ＳＤＬ＿ＴにはＳＥＬ＿ＴＯＰ＝“Ｈ”が与えられる。また同様にして、読み出し時にレイヤ毎にビット線プリチャージ電圧を制御するための信号ＣＬＡＭＰ＿ＢＯＴ、ＣＬＡＭＰ＿ＭＩＤ、及びＣＬＡＭＰ＿ＴＯＰが、各ラッチ回路ＳＤＬに与えられる。すなわち、ラッチ回路ＳＤＬ＿ＢにはＣＬＡＭＰ＿ＢＯＴ＝“Ｈ”が与えられ、ラッチ回路ＳＤＬ＿ＭにはＣＬＡＭＰ＿ＭＩＤ＝“Ｈ”が与えられ、ラッチ回路ＳＤＬ＿ＴにはＣＬＡＭＰ＿ＴＯＰ＝“Ｈ”が与えられる。
【０１０９】
ラッチ回路ＳＤＬは、データの書き込み時には、演算モジュール１３から転送される書き込みデータを保持する。そしてラッチ回路ＳＤＬは、書き込みデータに応じて、所定の電圧を、対応するビット線ＢＬに印加する。またラッチ回路ＳＤＬは、データの読み出し時には、信号ＣＬＡＭＰ＿ＢＯＴ、ＣＬＡＭＰ＿ＭＩＤ、及びＣＬＡＭＰ＿ＴＯＰに応じた電圧にビット線ＢＬをプリチャージする。すなわちラッチ回路ＳＤＬは、データの読み出し時には、読み出し対象セルがどのレイヤに位置するかに応じて、ビット線ＢＬに印加するプリチャージ電位を制御する。
【０１１０】
演算モジュール１３は、各ビット線ＢＬに対応付けられた演算回路４０を備えている。演算回路４０もまた、対応する信号ＳＥＬ（ＳＥＬ＿ＴＯＰ、ＳＥＬ＿ＭＩＤ、及びＳＥＬ＿ＢＯＴ）のいずれかを受信する。そして演算回路４０の各々は、データの書き込み時には、データラッチモジュール１４から与えられるデータと、対応する信号ＳＥＬとを用いた演算により書き込みデータを生成する。そして生成した書き込みデータを、対応するラッチ回路ＳＤＬに転送する。
【０１１１】
データラッチモジュール１４は、ラッチ回路ＤＬ０及びＤＬ１のセットを備え、このセットは各ビット線ＢＬに対応付けられている。データの書き込み時には、例えばホスト機器等の外部装置からデータ線ＤＡＴを介して与えられた２ビットデータの各ビットがラッチ回路ＤＬ０及びＤＬ１に保持される。そして、これらのデータが演算回路１３に転送される。読み出し時には、メモリセルトランジスタＭＴから読み出された２ビットデータの各ビットが、ラッチ回路ＤＬ０及びＤＬ１に保持される。そしてラッチ回路ＤＬ０及びＤＬ１は、データ線ＤＡＴを介して、２ビットデータの各ビットを、外部装置に出力する。
【０１１２】
５．２  書き込み時の動作について  
次に、データ書き込み時における上記カラム系周辺回路の動作について、図２２及び図２３を用いて説明する。図２２は、書き込み時におけるワード線電圧の変化を示すタイミングチャートであり、図２３は、プログラム時におけるワード線及びビット線電圧の変化を示すタイミングチャートである。
【０１１３】
書き込みにあたって、まず書き込みデータがラッチ回路ＤＬ０及びＤＬ１に転送される。書き込みデータと、ラッチ回路ＤＬ０及びＤＬ１内のデータとの関係は次の通りである。  
データ：（ＤＬ０、ＤＬ１）  
“Ｅｐ”レベル（非書き込み）：（１、１）  
“Ａ”レベル：（１、０）  
“Ｂ”レベル：（０、０）  
“Ｃ”レベル：（０、１）  
また、ラッチ回路ＳＤＬ内のデータには次の関係がある。  
ＳＤＬ＝１：非書き込みセル（ＢＬ＝Ｖ１）  
ＳＤＬ＝０：書き込みセル（ＢＬ＝０Ｖ）  
以下、書き込み時の処理ステップにつき順を追って説明する。
【０１１４】
（１）ステップ１  
ラッチ回路ＤＬ０及びＤＬ１にデータが転送されると、演算回路４０の各々は、第１プログラムのためのデータセットを実行する。第１プログラムは、第１セルに対してのみ行われるプログラムである。データセットにあたって演算回路４０は、以下の論理演算を実行する。すなわち、  
/(DL0 ＆ /DL1 ＆ SEL_BOT) → SDL  
演算式において、“/”は反転を示し、“＆”は論理積を示す。この演算により、ＤＬ０＝１でＤＬ＝０で、且つ最下層のメモリセルに対応するラッチ回路ＳＤＬにのみ“０”がセットされる。その他のラッチ回路ＳＤＬには“１”がセットされる。この結果、ベリファイにパスしていない第１セルが接続されたビット線ＢＬにのみ０Ｖが印加され、その他の第２セル及び第３セル、並びに非書き込み対象セル及び書き込み完了セルが接続されたビット線ＢＬには電圧Ｖ１が印加される。そして、選択ワード線ＷＬに電圧ＶＰＧＭ１が印加されて、第１セルにのみ“Ａ”レベルデータがプログラムされる。
【０１１５】
（２）ステップ２
次に演算回路４０の各々は、第２プログラムのためのデータセットを実行する。第２プログラムは、第２セルに対してのみ行われるプログラムである。データセットにあたって演算回路４０は、以下の論理演算を実行する。すなわち、  
(DL0 ＆ DL1) | (DL0 ＆ /DL1 ＆ SEL_BOT) | (/DL0 ＆ DL1 ＆ SEL_TOP) → SDL  
演算式において、“｜”は論理和を示す。この演算により、第１セル、第３セル、及び非書き込み対象セルに対応するラッチ回路ＳＤＬに“１”がセットされる。換言すれば、第２セルに対応するラッチ回路ＳＤＬにのみ“０”がセットされる。この結果、ベリファイにパスしていない第２セルが接続されたビット線ＢＬにのみ０Ｖが印加され、その他のビット線ＢＬには電圧Ｖ１が印加される。そして、選択ワード線ＷＬに電圧ＶＰＧＭ２が印加されて、第２セルにのみデータがプログラムされる。
【０１１６】
（３）ステップ３  
次に演算回路４０の各々は、第３プログラムのためのデータセットを実行する。第３プログラムは、第３セルに対してのみ行われるプログラムである。データセットにあたって演算回路４０は、以下の論理演算を実行する。すなわち、  
/(/DL0 ＆ DL1 ＆ SEL_TOP) → SDL  
この演算により、ＤＬ０＝０でＤＬ＝１で、且つ最上層のメモリセルに対応するラッチ回路ＳＤＬにのみ“０”がセットされる。その他のラッチ回路ＳＤＬには“１”がセットされる。この結果、ベリファイにパスしていない第３セルが接続されたビット線ＢＬにのみ０Ｖが印加され、その他の第１セル及び第２セル、並びに非書き込み対象セル及び書き込み完了セルが接続されたビット線ＢＬには電圧Ｖ１が印加される。そして、選択ワード線ＷＬに電圧ＶＰＧＭ３が印加されて、第３セルにのみ“Ｃ”レベルデータがプログラムされる。
【０１１７】
（４）ステップ４  
次に“Ａ”レベルについてのベリファイ動作が実行される。すなわち、選択ワード線ＷＬにベリファイレベルＶfy_Aが印加された状態で、メモリセルトランジスタＭＴからデータが読み出される。そして、メモリセルトランジスタＭＴがオフすれば、すなわち閾値が“Ａ”レベルに達していれば、ラッチ回路ＳＤＬには“１”が格納される。他方で、メモリセルトランジスタＭＴがオンすれば、すなわち閾値が“Ａ”レベルに達していなければ、ラッチ回路ＳＤＬには“０”が格納される。
【０１１８】
そして演算回路４０は、以下の論理演算を実行する。すなわち、  
(SDL ＆ DL0 ＆ /DL1) | DL1 → DL1  
上式において(DL0 ＆ /DL1)は、“Ａ”レベルが書き込まれるビット線ＢＬにおいてのみ“１”となる。従って、(SDL ＆ DL0 ＆ /DL1)は、書き込みデータが“Ａ”レベルであって、且つベリファイにパスしたビット線ＢＬについてのみ“１”となる。その後、この演算結果と、もともとのＤＬ１との論理和演算を行い、これをＤＬ１にセットし直す。この結果、ラッチ回路ＤＬ０及びＤＬ１のデータは以下のようになる。  
“Ｅｐ”レベル（非書き込み）：（１、１）  
“Ａ”レベル：（１、０／１）  
“Ｂ”レベル：（０、０）  
“Ｃ”レベル：（０、１）  
すなわち、最後の論理和演算により、“Ａ”レベルに対応しないラッチ回路ＤＬ０及びＤＬ１のデータは、オリジナルの値にセットされる。
【０１１９】
次に演算回路４０は、下記（１）式の論理演算を実行する。すなわち、  
(DL0 ＆ /DL1 ＆ SEL_BOT)     （１）  
これにより、“Ａ”レベルに対応し、且つ最下層に位置するメモリセルトランジスタＭＴのベリファイ結果が得られる。つまり、この演算結果が“０”になれば、当該カラムに対応する第１セルはベリファイにパスしていることが分かる。他方で、第１セルに対応し、ベリファイにフェイルしたカラムに対応する演算結果のみが“１”となる。
【０１２０】
よって、例えば制御部１５は、演算結果が“１”となるビット数をカウントし、その数がある基準値以下（例えばＥＣＣ回路におけるエラー訂正可能ビット数によって決まる）であれば、第１セルはベリファイパスしたと判断する。この場合、制御部１５は信号ＣＯＭＰ＿Ａ＿ＢＯＴを発行し（ＣＯＭＰ＿Ａ＿ＢＯＴ＝“Ｈ”）、次のプログラムループから電圧ＶＰＧＭ１を印加しない。
【０１２１】
引き続き演算回路４０は、下記（２）式の論理演算を実行する。すなわち、
(DL0 ＆ /DL1 ＆ (SEL_MID | SEL_TOP)) （２）  
これにより、“Ａ”レベルに対応し、且つ最下層以外のレイヤに位置するメモリセルトランジスタＭＴのベリファイ結果が得られる。つまり、この演算結果が“０”になれば、当該カラムに対応するメモリセルトランジスタはベリファイにパスしていることが分かる。他方で、“Ａ”レベルに対応し、且つ最下層以外のレイヤに位置するメモリセルトランジスタＭＴのうちでベリファイにフェイルしたものに対応する演算結果のみが“１”となる。
【０１２２】
よって、例えば制御部１５は、演算結果が“１”となるビット数をカウントし、その数がある基準値以下であれば、最下層以外のレイヤに位置し、且つ“Ａ”レベルを書き込むべきメモリセルトランジスタＭＴはベリファイにパスしたと判断する。
【０１２３】
上記（１）式及び（２）式に基づくベリファイ結果が共にパスとなれば、“Ａ”レベルを書き込むべき全てのメモリセルトランジスタＭＴへのプログラムが完了したことになる。よって制御部１５は、信号ＣＯＭＰ＿Ａ＿ＭＩＤＴＯＰを発行する（ＣＯＭＰ＿Ａ＿ＭＩＤＴＯＰ＝“Ｈ”）。そして制御部１５は、信号ＣＯＭＰ＿Ａ＿ＢＯＴ及びＣＯＭＰ＿Ａ＿ＭＩＤＴＯＰの両方が発行されると、次のプログラムループから“Ａ”レベルのベリファイ動作を行わない。
【０１２４】
（５）ステップ５  
次に“Ｂ”レベルについてのベリファイ動作が実行される。すなわち、選択ワード線ＷＬにベリファイレベルＶfy_Bが印加された状態で、メモリセルトランジスタＭＴからデータが読み出される。そして、メモリセルトランジスタＭＴがオフすれば、すなわち閾値が“Ｂ”レベルに達していれば、ラッチ回路ＳＤＬには“１”が格納される。他方で、メモリセルトランジスタＭＴがオンすれば、すなわち閾値が“Ｂ”レベルに達していなければ、ラッチ回路ＳＤＬには“０”が格納される。
【０１２５】
そして演算回路４０は、以下の論理演算を同時に実行する。すなわち、  
(SDL ＆ /DL0 ＆ /DL1) | DL0 → DL0  
(SDL ＆ /DL0 ＆ /DL1) | DL1 → DL1  
上式において(/DL0 ＆ /DL1)は、“Ｂ”レベルが書き込まれるビット線ＢＬにおいてのみ“１”となる。従って、(SDL ＆ /DL0 ＆ /DL1)は、書き込みデータが“Ｂ”レベルであって、且つベリファイにパスしたビット線ＢＬについてのみ“１”となる。その後、これらの演算結果と、もともとのＤＬ０及びＤＬ１との論理和演算を行い、これをＤＬ０及びＤＬ１にセットし直す。この結果、ラッチ回路ＤＬ０及びＤＬ１のデータは以下のようになる。  
“Ｅｐ”レベル（非書き込み）：（１、１）  
“Ａ”レベル：（１、０／１）  
“Ｂ”レベル：（０、０／１）  
“Ｃ”レベル：（０、１）  
なお、“Ａ”レベルに対応するラッチ回路ＤＬ０の値は、上記ステップ（４）において“０”または“１”にセットされ直している。
【０１２６】
次に演算回路４０は、下記（３）式の論理演算を実行する。すなわち、  
(/DL0 ＆ /DL1)       （３）  
この演算結果が“０”になれば、“Ｂ”レベルが書き込まれるべきメモリセルトランジスタＭＴはベリファイにパスし、“１”になればベリファイにフェイルしていることが分かる。
【０１２７】
よって、例えば制御部１５は、演算結果が“１”となるビット数をカウントし、その数がある基準値以下であれば、“Ｂ”レベルプログラムはベリファイパスしたと判断する。この場合、制御回路は信号ＣＯＭＰ＿Ｂを発行し（ＣＯＭＰ＿Ｂ＝“Ｈ”）、次のプログラムループから“Ｂ”レベルのベリファイ動作を行わない。
【０１２８】
（６）ステップ６  
次に“Ｃ”レベルについてのベリファイ動作が実行される。すなわち、選択ワード線ＷＬにベリファイレベルＶfy_Cが印加された状態で、メモリセルトランジスタＭＴからデータが読み出される。そして、メモリセルトランジスタＭＴがオフすれば、すなわち閾値が“Ｃ”レベルに達していれば、ラッチ回路ＳＤＬには“１”が格納される。他方で、メモリセルトランジスタＭＴがオンすれば、すなわち閾値が“Ｃ”レベルに達していなければ、ラッチ回路ＳＤＬには“０”が格納される。ステップ６の動作は、基本的には読み出し対象データが異なるだけで、ステップ４と同様である。
【０１２９】
まず演算回路４０は、以下の論理演算を実行する。すなわち、  
(SDL ＆ /DL0 ＆ DL1) | DL0 → DL0  
上式において(/DL0 ＆ DL1)は、“Ｃ”レベルが書き込まれるビット線ＢＬにおいてのみ“１”となる。従って、(SDL ＆ /DL0 ＆ DL1)は、書き込みデータが“Ｃ”レベルであって、且つベリファイにパスしたビット線ＢＬについてのみ“１”となる。その後、この演算結果と、もともとのＤＬ０との論理和演算を行い、これをＤＬ０にセットし直す。この結果、ラッチ回路ＤＬ０及びＤＬ１のデータは以下のようになる。  
“Ｅｐ”レベル（非書き込み）：（１、１）  
“Ａ”レベル：（１、０／１）  
“Ｂ”レベル：（０／１、０／１）  
“Ｃ”レベル：（０／１、１）。
【０１３０】
次に演算回路４０は、下記（４）式の論理演算を実行する。すなわち、  
(/DL0 ＆ DL1 ＆ SEL_TOP)     （４）  
これにより、“Ｃ”レベルに対応し、且つ最上層に位置するメモリセルトランジスタＭＴ（第３セル）のベリファイ結果が得られる。つまり、この演算結果が“０”になれば、当該カラムに対応する第３セルはベリファイにパスしていることが分かる。他方で、第３セルに対応し、ベリファイにフェイルしたカラムに対応する演算結果のみが“１”となる。
【０１３１】
よって、例えば制御部１５は、演算結果が“１”となるビット数をカウントし、その数がある基準値以下であれば、第３セルはベリファイパスしたと判断する。この場合、制御回路は信号ＣＯＭＰ＿Ｃ＿ＴＯＰを発行し（ＣＯＭＰ＿Ｃ＿ＴＯＰ＝“Ｈ”）、次のプログラムループから電圧ＶＰＧＭ３を印加しない。
【０１３２】
引き続き演算回路４０は、下記（５）式の論理演算を実行する。すなわち、
(/DL0 ＆ DL1 ＆ (SEL_MID | SEL_BOT)) （５）  
これにより、“Ｃ”レベルに対応し、且つ最上層以外のレイヤに位置するメモリセルトランジスタＭＴのベリファイ結果が得られる。つまり、この演算結果が“０”になれば、当該カラムに対応するメモリセルトランジスタはベリファイにパスしていることが分かる。他方で、“Ｃ”レベルに対応し、且つ最上層以外のレイヤに位置するメモリセルトランジスタＭＴのうちでベリファイにフェイルしたものに対応する演算結果のみが“１”となる。
【０１３３】
よって、例えば制御部１５は、演算結果が“１”となるビット数をカウントし、その数がある基準値以下であれば、最上層以外のレイヤに位置するメモリセルトランジスタＭＴはベリファイにパスしたと判断する。
【０１３４】
上記（４）式及び（５）式に基づくベリファイ結果がパスとなれば、“Ｃ”レベルを書き込むべき全てのメモリセルトランジスタＭＴへのプログラムが完了したことになる。よって制御部１５は、信号ＣＯＭＰ＿Ｃ＿ＭＩＤＢＯＴを発行する（ＣＯＭＰ＿Ｃ＿ＭＩＤＢＯＴ＝“Ｈ”）。そして制御部１５は、信号ＣＯＭＰ＿Ｃ＿ＴＯＰ及びＣＯＭＰ＿Ｃ＿ＭＩＤＢＯＴの両方が発行されると、次のプログラムループから“Ｃ”レベルのベリファイ動作を行わない。
【０１３５】
（７）ステップ７  
制御部１５は、以上の動作を繰り返し、５つの制御信号ＣＯＭＰ＿Ａ＿ＢＯＴ、ＣＯＭＰ＿Ａ＿ＭＩＤＴＯＰ、ＣＯＭＰ＿Ｂ、ＣＯＭＰ＿Ｃ＿ＴＯＰ、及びＣＯＭＰ＿Ｃ＿ＭＩＤＴＯＰの全てが“Ｈ”レベルになると、プログラムは正常に完了（プログラムパス）したものとして、書き込み動作を完了させる。いずれかの制御信号が“Ｌ”レベルのまま、プログラムループ数が最大値に達すると、制御部１５は、プログラムは正常に完了出来なかった（プログラムフェイル）ものとして、書き込み動作を完了する。
【０１３６】
５．３  本実施形態に係る効果  
上記第１実施形態で説明した書き込み方法は、例えば本実施形態に係る構成によって実現出来る。なお、第２乃至第４実施形態も同様であり、制御信号ＳＥＬ＿ＢＯＴ、ＳＥＬ＿ＭＩＤ、ＳＥＬ＿ＴＯＰ、ＤＬ０、及びＤＬ１を用いた演算により、ビット線ＢＬの電位を適切に制御出来る。
【０１３７】
６．第６実施形態  
次に、第６実施形態に係る半導体記憶装置について説明する。本実施形態は、上記第１乃至第５実施形態のいずれかに係る半導体記憶装置１を備えたメモリシステムに関するものである。
【０１３８】
６．１  メモリシステムの構成について  
図２４は、本実施形態に係るメモリシステムのブロック図である。図示するようにメモリシステムは、第１乃至第５実施形態で説明した半導体記憶装置１と、半導体記憶装置１を制御するコントローラ２とを備えている。
【０１３９】
コントローラ２は、図示せぬホスト機器からの命令に応答して、ＮＡＮＤ型フラッシュメモリ１に対して読み出し、書き込み、消去等を命令する。また、ＮＡＮＤ型フラッシュメモリ１のメモリ空間を管理する。コントローラ２とＮＡＮＤ型フラッシュメモリ１は、例えば同一の半導体装置を構成しても良い。またメモリシステム１が１つの装置であっても良く、その例としてはＳＤＴＭカードのようなメモリカードや、ＳＳＤ（solid state drive）等が挙げられる。またメモリシステム１は、ＮＡＮＤ型フラッシュメモリ１及びコントローラ２がパーソナルコンピュータに内蔵された構成であっても良いし、ＮＡＮＤ型フラッシュメモリ１が搭載されているアプリケーションであれば限定されるものではない。
【０１４０】
コントローラ２は、ホストインターフェイス回路２１０、内蔵メモリ（ＲＡＭ）２２０、プロセッサ（ＣＰＵ）２３０、バッファメモリ２４０、ＮＡＮＤインターフェイス回路２５０、及びＥＣＣ回路２６０を備えている。
【０１４１】
ホストインターフェイス回路２１０は、コントローラバスを介してホスト機器と接続され、ホスト機器との通信を司る。そして、ホスト機器から受信した命令及びデータを、それぞれＣＰＵ２３０及びバッファメモリ２４０に転送する。またＣＰＵ２３０の命令に応答して、バッファメモリ２４０内のデータをホスト機器へ転送する。
【０１４２】
ＮＡＮＤインターフェイス回路２５０は、ＮＡＮＤバスを介してＮＡＮＤ型フラッシュメモリ１と接続され、ＮＡＮＤ型フラッシュメモリ１との通信を司る。そして、ＣＰＵ２３０から受信した命令をＮＡＮＤ型フラッシュメモリ１に転送し、また書き込み時にはバッファメモリ２４０内の書き込みデータをＮＡＮＤ型フラッシュメモリ１へ転送する。更に読み出し時には、ＮＡＮＤ型フラッシュメモリ１から読み出されたデータをバッファメモリ２４０へ転送する。
【０１４３】
ＣＰＵ２３０は、コントローラ２全体の動作を制御する。例えば、ホスト機器から書き込み読み出し命令を受信した際には、それに応答して、ＮＡＮＤインターフェイスに基づく書き込み命令を発行する。読み出し及び消去の際も同様である。またＣＰＵ２３０は、ウェアレベリング等、ＮＡＮＤ型フラッシュメモリ１を管理するための様々な処理を実行する。更にＣＰＵ２３０は、各種の演算を実行する。例えば、データの暗号化処理やランダマイズ処理等を実行する。ＥＣＣ回路２６０は、データの誤り訂正（ＥＣＣ：Error Checking and Correcting）処理を実行する。すなわちＥＣＣ回路２６０は、データの書き込み時には書き込みデータに基づいてパリティを生成し、読み出し時にはパリティからシンドロームを生成して誤りを検出し、この誤りを訂正する。なお、ＣＰＵ２３０がＥＣＣ回路２６０の機能を有していても良い。
【０１４４】
内蔵メモリ２２０は、例えばＤＲＡＭ等の半導体メモリであり、ＣＰＵ２３０の作業領域として使用される。そして内蔵メモリ２２０は、ＮＡＮＤ型フラッシュメモリ１を管理するためのファームウェアや、各種の管理テーブル等を保持する。
【０１４５】
６．２  コントローラの動作について  
次に、本実施形態に係るコントローラ２の動作について、特に書き込み動作について説明する。コントローラ２は、ＮＡＮＤ型フラッシュメモリ１を、第１モード及び第２モードの２つのモードの２つの書き込みモードでデータを書き込むことが出来る。
【０１４６】
図２５は、第１モードでデータを書き込む際の、ＮＡＮＤ型フラッシュメモリ１とコントローラ２との間で送受信される信号のタイミングチャートである。コントローラ２は、チップイネーブル信号／ＣＥ、アドレスラッチイネーブル信号ＡＬＥ、コマンドラッチイネーブル信号ＣＬＥ、ライトイネーブル信号／ＷＥ、リードイネーブル信号／ＲＥをＮＡＮＤ型フラッシュメモリ１へ送信する。またＮＡＮＤ型フラッシュメモリ１は、レディ／ビジー信号／Ｒ／Ｂをコントローラ２へ送信する。入出力信号Ｉ／Ｏ１〜Ｉ／Ｏ８は、コントローラ１とＮＡＮＤ型フラッシュメモリとの間で送受信される例えば８ビットのデータである。
【０１４７】
チップイネーブル信号／ＣＥは、ＮＡＮＤ型フラッシュメモリ１をイネーブルにするための信号であり、lowレベルでアサートされる。アドレスラッチイネーブル信号ＡＬＥは、入出力信号Ｉ／Ｏ１〜Ｉ／Ｏ８がアドレスであることを示す信号であり、highレベルでアサートされる。コマンドラッチイネーブル信号ＣＬＥは、入出力信号Ｉ／Ｏ１〜Ｉ／Ｏ８がコマンドであることを示す信号であり、highレベルでアサートされる。ライトイネーブル信号／ＷＥは、ＮＡＮＤ型フラッシュメモリ１に各データを書き込むための信号であり、lowレベルでアサートされる。リードイネーブル信号／ＲＥは、ＮＡＮＤ型フラッシュメモリ１から各データを読み出すための信号であり、lowレベルでアサートされる。レディ／ビジー信号／Ｒ／Ｂは、ＮＡＮＤ型フラッシュメモリ１がビジー状態であるか否か（信号を受信可能な状態か否か）を示す信号であり、ビジー状態の際にlowレベルとなる。
【０１４８】
図示するようにコントローラ１は、第１モードでデータを書き込む際には、第１書き込みコマンド８０Ｈを発行し、これをＮＡＮＤ型フラッシュメモリ１の図示せぬコマンドレジスタに書き込む。コマンド８０Ｈは、これから書き込み動作を実行することを通知するためのコマンドである。その後、カラムアドレス（ビット線を指定するアドレス）及びロウアドレス（ワード線（ページ）を指定するアドレス）をアドレスレジスタに書き込む。その後、プログラムすべきデータＤ０〜Ｄ５２７を転送する。最後にコントローラ２は、コマンド１０Ｈをコマンドレジスタに書き込む。このコマンドに応答してＮＡＮＤ型フラッシュメモリ１の制御部１５は、第１乃至第５実施形態で説明した方法により、データを書き込む。
【０１４９】
図２６は、第２モードでデータを書き込む際の、ＮＡＮＤ型フラッシュメモリ１とコントローラ２との間で送受信される信号のタイミングチャートである。第１モードと異なる点は、第１書き込みコマンド８０Ｈの前に、コントローラ２がプリフィックスコマンドを発行して、これをコマンドレジスタに書き込むことである。プリフィックスコマンドを受信することでＮＡＮＤ型フラッシュメモリは、第２モードでデータを書き込む。第２モードでのデータの書き込みは、第１実施形態で説明した図１２の方法によって実行される。
【０１５０】
第２モードでは、プログラム電圧ＶＰＧＭは第１〜第３セルに応じて分類されることなく、ページ内において“Ａ”〜“Ｃ”レベルに書き込むべきメモリセルの全てに対してプログラムが実行される。すなわち、ＶＰＧＭは図１２に示すように、単純にステップアップされるのみである。図１２の場合には、１回のプログラムループにおいてＶＰＧＭは１回だけ印加される場合を例に示しているが、２回以上連続して印加されても良い。但し、この２回以上印加されるＶＰＧＭは、メモリセルの位置（アドレス）や書き込みデータに応じたものでは無く、書き込み対象セルの全てにデータをプログラムするために使用される。すなわち第２モードであると、１回のプログラムループにおけるＶＰＧＭの印加回数は、ベリファイ電圧の印加回数と同じ、またはそれ未満である。
【０１５１】
すなわち、第１実施形態で説明したように、あるプログラム電圧の印加が停止された際には、同時にそれに対応したベリファイ電圧の印加も停止される。
【０１５２】
６．３  本実施形態に係る効果  
本実施形態に係る構成であると、書き込み速度及び消費電力を、ユーザにニーズに応じて変えることが出来る。
【０１５３】
すなわち、第１モードであると、ＮＡＮＤ型フラッシュメモリ１内の昇圧回路は、高電圧ＶＰＧＭ３を生成した後に低電圧ＶＰＧＭ１を発生する。従って、ベリファイ動作中に昇圧回路の放電が必要になり、放電の後に再び低い電圧ＶＰＧＭ１からの昇圧動作が必要となる。すなわち、昇圧回路において充放電を繰り返すため、消費電流が増加する。その代わり、第１乃至第５実施形態で説明したように高速な書き込み動作が可能となる。
【０１５４】
他方で第２モードであると、昇圧電圧は単純にＶＰＧＭをステップアップすれば良く、昇圧電圧における放電が不要であり、ベリファイ動作中には電圧配線をフローティングにしておけば良い。従って、第１モードに比べて書き込み速度は劣るが、消費電流を低減出来る。
【０１５５】
そして本実施形態では、コントローラ２からのコマンドによって、第１モードと第２モードとを切り替えることが出来る。例えば、メモリセルが２ビット以上のデータを保持する（ＭＬＣ：multi-level cell）製品として出荷されているＮＡＮＤ型フラッシュメモリ１に対して、一時バッファとしてＳＬＣ（single-level cell: メモリセルが１ビットデータを保持する）動作させたい場合や、あるいは重要なデータを高信頼に書き込むためにＳＬＣ動作させたい場合等には、第２モードを採用することが好ましい。
【０１５６】
このように本実施形態であると、高速動作可能であるが消費電力が比較的高いモードと、低速動作であるが低消費電力のモードとを切り替えてＮＡＮＤ型フラッシュメモリ１を使用することが出来る。
【０１５７】
７．変形例等  
上記のように、実施形態に係る半導体記憶装置１は、複数のメモリセルＭＴと、ワード線ＷＬと、ビット線ＢＬと、ロウデコーダ１１とを備える。メモリセルは、半導体基板上に積層される。ワード線ＷＬは、メモリセルのゲートに接続される。ビット線ＢＬは、メモリセルの電流経路に電気的に接続され、データを転送可能である。ロウデコーダ１１は、ワード線に電圧を印加する。メモリセルＭＴへのデータの書き込みは、プログラム動作とベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行される(図11)。１回のプログラムループにおいて前記ロウデコーダは、プログラム電圧をＭ回（Ｍは１以上の自然数）、選択ワード線に対して順次印加し(図11のt5〜t6, t7〜t8)、引き続きベリファイ電圧をＮ回（ＮはＭより大きく、２以上の自然数）、前記選択ワード線に対して順次印加する(図11のt6〜t7, t7以降)。
【０１５８】
言い換えるならば、メモリセルへのデータの書き込みは、選択ワード線にプログラム電圧を印加するプログラム動作と、ベリファイ電圧を印加するベリファイ動作とを含むプログラムループを複数回繰り返すことにより実行される。ロウデコーダ１１は、連続する２回のプログラムループ(図11のt3〜t5とt5〜t6)間において、ベリファイ電圧の印加回数は不変としつつ、２回目のプログラムループ(図11のt5〜t6)におけるプログラム電圧の印加回数(3回: VPGM1-VPGM3)を、１回目のプログラムループ(図11のt3〜t5)よりも減少させる(2回: VPGM2,VPGM3)。
【０１５９】
本構成により、プログラムループ回数を削減し、データの書き込み速度を向上出来る。但し、実施形態は上記説明した形態に限定されるものではなく、種々の変形が可能である。例えば、上記実施形態では、ＶＰＧＭ１及びＶＰＧＭ３の印加がＶＰＧＭ２の印加よりも先に終了する場合を例に説明したが、ＶＰＧＭ２の印加がＶＰＧＭ１及び／またはＶＰＧＭ３の印加よりも先に終了する場合があっても良い。
【０１６０】
また上記実施形態では、第１セルを、最下層のレイヤに位置し、且つ“Ａ”レベルにプログラムされるセルと定義した。しかし第１セルは、第１層目のレイヤから第Ｎ層目（Ｎは２以上の自然数）に位置するセルであっても良い。また、メモリセルが４ビット以上のデータ（“Ｅｐ”、“Ａ”、“Ｂ”、“Ｃ”、“Ｄ”、…“Ｏ”レベルの１６値）を保持可能な場合、第１セルは、“Ａ”レベルから例えば“Ｃ”レベルの範囲にプログラムされるセルであっても良い。第３セルについても同様である。すなわち第３セルは、第Ｎ＋Ｍ層目（Ｍは４以上の自然数）のレイヤから第Ｌ層目（Ｌは６以上の自然数）に位置するセルであっても良く、また例えば“Ｌ”レベルから“Ｏ”レベルの範囲にプログラムされるセルであっても良い。
【０１６１】
更には、上記第１実施形態では、プログラムパルスを３種類に分類する場合を例に説明した（ＶＰＧＭ１〜ＶＰＧＭ３）。しかし、４種類以上に分類して、この４種類以上のパルスを１回のプログラムループで順次印加するようにしても良い。
【０１６２】
更に、上記第４実施形態のコンセプトは、第３実施形態に適用することも出来る。すなわち第３実施形態で説明した図１６において、電圧ＶＰＧＭ２ｂの代わりにＶＰＧＭ３を印加しつつ、第２セルが接続されたビット線にＶＱＰＷを印加しても良い。
【０１６３】
更に、メモリセルアレイ１０の構造は、図２乃至図６で説明した構成に限らない。上記実施形態では、図４に示すように、奇数番目のストリンググループＧＲ１のビット線コンタクトＢＣがメモリセルアレイ１０の左側に集められ、偶数番目のストリンググループＧＲ２のビット線コンタクトＢＣがメモリセルアレイ１０の右側に集められて配置される場合を例に説明した。しかし、これらのビット線コンタクトＢＣが共に右側、または左側に集められて配置されても良い。
【０１６４】
更に上記実施形態は、データの書き込み時に同時に選択されるメモリセルの集合であるページ内において、データの書き込み速度にばらつきを有する構成に適用出来、ＮＡＮＤ型フラッシュメモリに限らず、記憶装置全般に適用出来る。
【０１６５】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【０１６６】
１０…メモリセルアレイ、１１…ロウデコーダ、１２…センスアンプモジュール、１３…演算モジュール、１４…データラッチモジュール、１５…制御部、２０…半導体基板、２１、２２−１〜２２−４、２５〜２７…絶縁膜、２３−１〜２３−３、２８…半導体層、２４…フィン型積層構造
【図１】
2015033417.tif 000003
【図２】
2015033417.tif 000004
【図３】
2015033417.tif 000005
【図４】
2015033417.tif 000006
【図５】
2015033417.tif 000007
【図６】
2015033417.tif 000008
【図７】
2015033417.tif 000009
【図８】
2015033417.tif 000010
【図９】
2015033417.tif 000011
【図１０】
2015033417.tif 000012
【図１１】
2015033417.tif 000013
【図１２】
2015033417.tif 000014
【図１３】
2015033417.tif 000015
【図１４】
2015033417.tif 000016
【図１５】
2015033417.tif 000017
【図１６】
2015033417.tif 000018
【図１７】
2015033417.tif 000019
【図１８】
2015033417.tif 000020
【図１９】
2015033417.tif 000021
【図２０】
2015033417.tif 000022
【図２１】
2015033417.tif 000023
【図２２】
2015033417.tif 000024
【図２３】
2015033417.tif 000025
【図２４】
2015033417.tif 000026
【図２５】
2015033417.tif 000027
【図２６】
2015033417.tif 000028
【国際調査報告】
2015033417.tif 000029
2015033417.tif 000030
2015033417.tif 000031
2015033417.tif 000032