(57)【要約】【課題】プログラム動作を高速化する。【解決手段】不揮発性半導体記憶装置１は、複数ビットを記憶可能なメモリセルを複数個有するメモリセルアレイ１０と、メモリセルアレイ１０に接続された複数のビット線と、制御回路１９とを含む。制御回路１９は、プログラム状態の閾値電圧のうち最も低い第１の閾値電圧に第１のメモリセルをプログラムする場合に、第１のメモリセルに接続された第１のビット線を、第１の閾値電圧より高い第２の閾値電圧にメモリセルをプログラムする際にビット線に印加される第１の電圧と、メモリセルをプログラム禁止にする際にビット線に印加される第２の電圧との間の第３の電圧ＶＢＬに充電する。【選択図】      図４
2012084207.tif 000002
【特許請求の範囲】
【請求項１】
複数ビットを記憶可能なメモリセルを複数個有し、前記メモリセルの閾値電圧は、消去状態で最も低く、プログラム状態でデータに応じて順に高くなる、メモリセルアレイと、
前記メモリセルアレイに接続された複数のビット線と、
プログラム状態の閾値電圧のうち最も低い第１の閾値電圧に第１のメモリセルをプログラムする場合に、前記第１のメモリセルに接続された第１のビット線を、前記第１の閾値電圧より高い第２の閾値電圧にメモリセルをプログラムする際にビット線に印加される第１の電圧と、メモリセルをプログラム禁止にする際にビット線に印加される第２の電圧との間の第３の電圧に充電する制御回路と、
を具備することを特徴とする不揮発性半導体記憶装置。
【請求項２】
前記制御回路は、プログラム禁止である第２のメモリセルに接続された第２のビット線を前記第２の電圧に充電する場合に、前記第２のビット線を前記第２の電圧より低い第４の電圧に充電する第１のステージと、前記第２のビット線を前記第２の電圧に充電する第２のステージとを実行し、かつ
前記第１のステージの後に、前記第１のビット線の充電を開始することを特徴とする請求項１に記載の不揮発性半導体記憶装置。
【請求項３】
前記第４の電圧は、前記第２の電圧から前記第３の電圧を引いた電圧であることを特徴とする請求項２に記載の不揮発性半導体記憶装置。
【請求項４】
前記制御回路は、前記第１のメモリセルにプログラム電圧を印加した後、前記第１の閾値電圧を確かめるための第１のベリファイ電圧と、前記第１のベリファイ電圧より低い第２のベリファイ電圧とを用いて前記第１のメモリセルの閾値電圧をベリファイし、かつ
前記第１のメモリセルが前記第２のベリファイ電圧より低い閾値電圧を有する場合に、前記第１のビット線を前記第１の電圧に充電することを特徴とする請求項１乃至４のいずれかに記載の不揮発性半導体記憶装置。
【請求項５】
前記制御回路は、前記第１のメモリセルが前記第２のベリファイ電圧以上の閾値電圧を有する場合に、前記第１のビット線を前記第３の電圧に充電することを特徴とする請求項４に記載の不揮発性半導体記憶装置。
【請求項６】
前記第２のベリファイ電圧は、前記第１のベリファイ電圧から前記第３の電圧を引いた電圧であることを特徴とする請求項４又は５に記載の不揮発性半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、不揮発性半導体記憶装置に関する。
【背景技術】
【０００２】
不揮発性半導体記憶の一種としてＮＡＮＤ型フラッシュメモリが知られている。ＮＡＮＤ型フラッシュメモリのメモリセルは、電荷蓄積層を有し、この電荷蓄積層に注入された電荷量に応じて閾値電圧が変化し、この閾値電圧の差に応じてデータを記憶する。また、閾値電圧分布を細分化することで、メモリセルは複数ビットを記憶することができる。
【０００３】
ＮＡＮＤ型フラッシュメモリでは、近年、微細化の進行によりメモリセルの形状やチャネルに含まれる不純物の数のばらつきなどによってプログラム特性にばらつきが生じ、プログラムパフォーマンスの劣化や最終的な閾値分布幅が広くなる傾向にある。閾値分布の悪化を改善する最も基本的な手法は、プログラム時にワード線に印加するプログラム電圧のステップアップ電圧をより小さくすることである。ステップアップ電圧を小さくすることにより、プログラム毎のメモリセルの閾値変動量を小さくでき、最終的な閾値分布幅を細くすることが可能になる。
【０００４】
しかしながら、小さなステップアップ電圧を使用する場合、すべてのメモリセルをプログラムするためにより多くのプログラムループ数が必要になり、結果としてプログラム速度の低下を招いてしまう。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−１９６９８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
実施形態は、プログラム動作を高速化することが可能な不揮発性半導体記憶装置を提供する。
【課題を解決するための手段】
【０００７】
実施形態に係る不揮発性半導体記憶装置は、複数ビットを記憶可能なメモリセルを複数個有し、前記メモリセルの閾値電圧は、消去状態で最も低く、プログラム状態でデータに応じて順に高くなる、メモリセルアレイと、前記メモリセルアレイに接続された複数のビット線と、制御回路とを具備する。前記制御回路は、プログラム状態の閾値電圧のうち最も低い第１の閾値電圧に第１のメモリセルをプログラムする場合に、前記第１のメモリセルに接続された第１のビット線を、前記第１の閾値電圧より高い第２の閾値電圧にメモリセルをプログラムする際にビット線に印加される第１の電圧と、メモリセルをプログラム禁止にする際にビット線に印加される第２の電圧との間の第３の電圧に充電する。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態に係るＮＡＮＤ型フラッシュメモリ１の構成を示すブロック図。
【図２】メモリセルアレイ１０の構成を示す回路図。
【図３】メモリセルの閾値電圧分布を説明する図。
【図４】第１の実施形態に係るプログラム動作におけるビット線電圧を説明するタイミングチャート。
【図５】センスアンプＳ／Ａの一例を示す回路図。
【図６】プログラムループ数を削減する効果を説明する図。
【図７】比較例に係るビット線電圧を説明するタイミングチャート。
【図８】第２の実施形態に係るプログラム動作におけるビット線電圧を説明するタイミングチャート。
【図９】センスアンプＳ／Ａの構成を示す回路図。
【図１０】ＢＬクランプ電圧ＢＬＣ１，ＢＬＣ２の電圧波形。
【図１１】Ａレベルのメモリセルに１回目のプログラム電圧を印加した後の閾値電圧分布を説明する図。
【図１２】プログラムシーケンスを説明するフローチャート。
【図１３】センスアンプＳ／Ａ及びデータラッチＤＬの構成を示すブロック図。
【発明を実施するための形態】
【０００９】
以下、実施形態について図面を参照して説明する。なお、以下の説明において、同一の機能及び構成を有する要素については、同一符号を付し、重複説明は必要な場合にのみ行う。
【００１０】
［第１の実施形態］
図１は、第１の実施形態に係るＮＡＮＤ型フラッシュメモリ（不揮発性半導体記憶装置）１の構成を示すブロック図である。ＮＡＮＤ型フラッシュメモリ１は、メモリセルアレイ１０、センスアンプ回路１１、カラムデコーダ１２、データバス１３、ロウデコーダ１４、電圧発生回路１５、データ入出力バッファ１６、アドレスレジスタ１７、コマンドレジスタ１８、及び制御回路１９を備えている。
【００１１】
メモリセルアレイ１０は、電気的に書き換え可能なメモリセルがマトリクス状に配置されて構成されている。メモリセルアレイ１０には、カラム方向に延在する複数のビット線ＢＬ、ロウ方向に延在する複数のワード線ＷＬ、及びロウ方向に延在する複数のソース線ＣＥＬＳＲＣが配設されている。
【００１２】
ビット線ＢＬには、センスアンプ回路１１が接続されている。センスアンプ回路１１は、ビット線ＢＬの電圧を制御し、メモリセルのデータ消去、メモリセルへのデータ書き込み（プログラム）、及びメモリセルからのデータ読み出しを行う。このような動作を行うために、センスアンプ回路１１は、読み出しデータ、及び書き込みデータ等を格納するデータラッチを備えている。
【００１３】
カラムデコーダ１２は、センスアンプ回路１１とビット線ＢＬとの接続を制御し、さらに、センスアンプ回路１１とデータバス１３との間のデータの受け渡しを制御する。
【００１４】
ワード線ＷＬには、ロウデコーダ１４が接続されている。ロウデコーダ１４は、ワード線ＷＬを選択し、さらに、消去、プログラム、及び読み出しに必要な各種電圧をワード線ＷＬに印加する。このような動作を行うために、ロウデコーダ１４は、ワード線駆動回路を備えている。
【００１５】
電圧発生回路１５は、電源電圧を昇圧または降圧して、メモリセルアレイ１０、センスアンプ回路１１、及びロウデコーダ１４で使用される各種電圧を発生する。
【００１６】
データ入出力バッファ１６は、外部（例えばホスト機器）にＩ／Ｏ線を介して接続されており、書き込みデータの受け取り、読み出しデータの出力、アドレスやコマンドの受け取りを行う。データ入出力バッファ１６は、受け取った書き込みデータをデータバス１３を介してセンスアンプ回路１１に送り、センスアンプ回路１１から送られた読み出しデータを受け取る。また、データ入出力バッファ１６は、メモリセルを選択するためのアドレスや、コマンドを外部から受け取る。
【００１７】
アドレスレジスタ１７は、データ入出力バッファ１６から送られるアドレスを格納し、このアドレスをカラムデコーダ１２、及びロウデコーダ１４に送る。
【００１８】
コマンドレジスタ１８は、データ入出力バッファ１６から送られるコマンドを格納し、このコマンドを制御回路１９にコマンド信号として送る。
【００１９】
制御回路１９は、ＮＡＮＤ型フラッシュメモリ１の動作を司る。制御回路１９は、外部から各種制御信号を受ける。この制御信号には、チップイネーブル信号ＣＥ、書き込みイネーブル信号ＷＥ、読み出しイネーブル信号ＲＥ、アドレスラッチイネーブル信号ＡＬＥ、コマンドラッチイネーブル信号ＣＬＥ等が含まれる。制御回路１９は、これら制御信号と、コマンドレジスタ１８から受けるコマンド信号とを用いて、読み出し、プログラム、消去、及びデータの入出力管理を行う。そして、制御回路１９は、これらの動作に必要な制御信号を各回路に送る。
【００２０】
図２は、メモリセルアレイ１０の構成を示す回路図である。メモリセルアレイ１０は、例えば複数個のブロックＢＬＫ０〜ＢＬＫｊを備えている。各ブロックＢＬＫは、複数個のＮＡＮＤストリングを備えている。
【００２１】
各ＮＡＮＤストリングは、複数個のメモリセルトランジスタＭＴ（メモリセルともいう）と、２個の選択トランジスタＳＴ１，ＳＴ２とから構成されている。選択トランジスタＳＴ１，ＳＴ２としては、例えばＮチャネルＭＯＳＦＥＴ（Metal Oxide Semiconductor Field Effect Transistor）が用いられる。メモリセルトランジスタＭＴは、半導体基板上にゲート絶縁膜を介在して形成された電荷蓄積層（例えば浮遊ゲート電極）と、電荷蓄積層上にゲート間絶縁膜を介在して形成された制御ゲート電極とを有する積層ゲート構造を備えている。メモリセルトランジスタＭＴは、浮遊ゲート構造に限らず、電荷蓄積層としての絶縁膜（例えば、窒化膜）に電子をトラップさせる方式を用いたＭＯＮＯＳ（Metal Oxide Nitride Oxide Silicon）構造であっても良い。メモリセルトランジスタＭＴは、電荷蓄積層に注入された電子の多寡による閾値電圧の変化に応じて、例えば複数ビットのデータを記憶することが可能である。
【００２２】
ＮＡＮＤストリング内で隣接するメモリセルトランジスタＭＴ同士の電流経路は直列接続されている。すなわち、（ｍ＋１）個のメモリセルトランジスタＭＴは、隣接するもの同士で拡散領域（ソース領域若しくはドレイン領域）を共有するような形でカラム方向に直列接続される。直列接続されたメモリセルトランジスタＭＴの一端側のドレインは選択トランジスタＳＴ１のソースに接続され、他端側のソースは選択トランジスタＳＴ２のドレインに接続されている。
【００２３】
同一行にあるメモリセルトランジスタＭＴの各制御ゲート電極は、複数のワード線ＷＬ０〜ＷＬｍのいずれかに共通接続されている。同一行にある選択トランジスタＳＴ１，ＳＴ２の各ゲート電極は、選択ゲート線ＳＧＤ，ＳＧＳにそれぞれ共通接続されている。各選択トランジスタＳＴ１のドレインは、複数のビット線ＢＬ０〜ＢＬｎのいずれかに接続されている。選択トランジスタＳＴ２のソースは、ソース線ＣＥＬＳＲＣに共通接続されている。
【００２４】
同一のワード線ＷＬに接続された複数のメモリセルトランジスタＭＴはページを構成する。データのプログラム及び読み出しは、１つのページ内のメモリセルトランジスタＭＴに対して一括して行なわれる。また、メモリセルアレイ１０は、複数のページのデータが一括して消去されるように構成されており、この消去の単位がブロックＢＬＫである。
【００２５】
ビット線ＢＬは、ブロックＢＬＫ間で、選択トランジスタＳＴ１のドレインを共通接続している。つまり、ブロックＢＬＫ０〜ＢＬＫｊ内において同一列にあるＮＡＮＤストリングは、同一のビット線ＢＬに接続される。
【００２６】
センスアンプ回路１１は、複数のビット線ＢＬ０〜ＢＬｎに対応する数のセンスアンプ及びデータラッチ（Ｓ／Ａ＆ＤＬ）を備えている。各ビット線ＢＬは、選択トランジスタ２０を介して、センスアンプ及びデータラッチ（Ｓ／Ａ＆ＤＬ）に接続されている。選択トランジスタ２０としては、例えばＮチャネルＭＯＳＦＥＴが用いられる。選択トランジスタ２０は、カラムデコーダ１２から送られるビット線選択信号ＢＬＳによってオン／オフが制御される。
【００２７】
なお、センスアンプＳ／Ａの配置方法としては、偶数番目のセンスアンプＳ／Ａをメモリセルアレイ１０の下側、奇数番目のセンスアンプＳ／Ａをメモリセルアレイ１０の上側に配置するようにしても良い。
【００２８】
また、図２のセンスアンプ回路１１は、１本のビット線に対して１個のセンスアンプＳ／Ａを配置する構成例である。しかし、この構成例に限定されるものではなく、２本のビット線ＢＬに対して１個のセンスアンプＳ／Ａを配置し、２本のビット線ＢＬの切り替えを選択トランジスタによって行う構成であっても良い。
【００２９】
（動作）
本実施形態では、各メモリセルが２ビットデータ（４値データ）を記憶可能であるものとする。図３は、メモリセルの閾値電圧分布を説明する図である。
【００３０】
メモリセルは、外部から入力されたデータに応じて、Ｅｒレベル、Ａレベル、Ｂレベル、及びＣレベルの４つの閾値電圧のうちいずれかにプログラムされる。閾値電圧の大小関係は、Ｅｒ＜Ａ＜Ｂ＜Ｃである。メモリセルのプログラムは、下位ページデータと上位ページデータとを用いて行われる。
【００３１】
２ビットデータは、上位ページデータ“ｘ”と下位ページデータ“ｙ”とすると、“ｘｙ”で定義される。メモリセルの閾値電圧は、電圧レベルが低い順に、例えば、データ“１１”、“０１”、“００”、“１０”が割り当てられる。Ｅｒレベルは、メモリセルの閾値電圧が例えば負とされた消去状態である。
【００３２】
プログラムシーケンスでは、選択ワード線にプログラム電圧ＶＰＧＭを印加するプログラム動作と、メモリセルの閾値電圧を確認するベリファイ動作とが繰り返され、選択ワード線に接続された全てのメモリセルがプログラムされた時点、すなわち選択ワード線に接続された全てのメモリセルのベリファイがパスした時点でプログラムシーケンスが終了する。１回のプログラム動作と１回のベリファイ動作とからなる一連の動作をプログラムループと呼ぶ。プログラム電圧ＶＰＧＭは、プログラムループ数が増えるにつれて、ステップアップ電圧分が加算される。
【００３３】
プログラム動作は、ページ単位で実行される。プログラム動作において、選択ブロック内の選択ワード線にはプログラム電圧ＶＰＧＭを印加し、非選択ワード線には書き込みパス電圧Ｖｐａｓｓ（例えば１０Ｖ）を印加し、選択ゲート線ＳＧＤには例えば電源電圧ＶＤＤ（例えば２．５Ｖ）を印加し、選択ゲート線ＳＧＳには接地電圧ＶＳＳ（０Ｖ）を印加する。
【００３４】
このプログラム動作に先立って、ビット線は、書き込みデータに応じてプリチャージされる。具体的には、“０”データをプログラムする場合には、センスアンプ回路１１によってビット線は接地電圧ＶＳＳに充電される。このビット線電圧は、選択トランジスタＳＴ１及び非選択メモリセルを介して選択ワード線に接続されたメモリセルのチャネルまで転送される。これにより、上述のプログラム動作条件下で選択メモリセルのチャネルから電荷蓄積層に電子が注入され、メモリセルの閾値電圧が正側にシフトする。
【００３５】
“１”データをプログラムする場合（すなわち、プログラム禁止の場合）は、センスアンプ回路１１によってビット線は電源電圧ＶＤＤに充電される。このビット線電圧は、選択トランジスタＳＴ１の閾値電圧分低下してＮＡＮＤストリングのチャネルに転送され、その後、チャネルはフローティングになる。これにより、上述のプログラム動作条件下でチャネル電圧が容量カップリングによって上昇し、電荷蓄積層への電子注入が行われない。従って、メモリセルは“１”データを保持する。また、プログラムすべき閾値電圧に到達したメモリセルも同様に、プログラム禁止となり、ビット線を電源電圧ＶＤＤに充電することで、それ以上閾値電圧の変動が起こらないようにする。
【００３６】
４値データ記憶方式における１回目のプログラムループでは、Ｅｒレベルが保持されるメモリセルに接続されるビット線は電源電圧ＶＤＤに充電され、一方で、Ｅｒレベル以外にプログラムされる全てのメモリセルはその閾値電圧が正側にシフトされるため、それらのビット線は接地電圧ＶＳＳに充電される。プログラム状態であるＡ，Ｂ，Ｃレベルの中でＡレベルは最も低い閾値電圧にプログラムされる。ＢレベルはＡレベルよりもベリファイ電圧が高いため、ベリファイをパスするためにはより高いプログラム電圧ＶＰＧＭが必要となる。よって、高いベリファイ電圧にプログラムされるメモリセルほどより高いプログラム電圧ＶＰＧＭが必要になる。
【００３７】
例えば、Ｂレベルのメモリセルに対するベリファイをより早くパスさせるためには、最初のプログラム電圧ＶＰＧＭをより高くすることが考えられる。しかしながら、Ｂレベルのメモリセルに最適なプログラム電圧ＶＰＧＭはＡレベルにプログラムされるメモリセルには過剰に高いため、オーバープログラムを引き起こしてしまう。
【００３８】
この問題を解決するために、本実施形態では、プログラム動作時のビット線電圧を図４のように制御する。なお、以下の説明において、ビット線の電圧制御は、制御回路１９の制御の下でセンスアンプ回路１１によって行われる。
【００３９】
まず、時刻ｔ１で、Ｅｒレベル及びプログラム禁止のメモリセルに接続されたビット線を電源電圧ＶＤＤに充電する。続いて、時刻ｔ２で、Ａレベルにプログラムされるメモリセルに接続されたビット線を電圧ＶＢＬ（例えば１Ｖ）に充電する。また、Ｂ，Ｃレベルにプログラムされるメモリセルに接続されたビット線を接地電圧ＶＳＳに充電する。この後、選択ワード線にプログラム電圧ＶＰＧＭを印加し、選択ワード線に接続されたメモリセルのプログラムを行う。
【００４０】
図５は、センスアンプＳ／Ａの一例を示す回路図である。センスアンプＳ／Ａは、電荷転送トランジスタ３０、ＰＭＯＳＦＥＴ３１，３２、ＮＭＯＳＦＥＴ３３，３４、及びデータラッチＤＬを備えている。
【００４１】
ＰＭＯＳＦＥＴ３１のソースは電源端子ＶＤＤに接続され、ドレインはＰＭＯＳＦＥＴ３２のソースに接続され、ゲートには制御回路１９から信号ＰＢＣが供給されている。ＰＭＯＳＦＥＴ３２のドレインはノードＮに接続され、ゲートはデータラッチＤＬに接続されている。
【００４２】
ＮＭＯＳＦＥＴ３３のソースはＮＭＯＳＦＥＴ３４のドレインに接続され、ドレインはノードＮに接続され、ゲートはデータラッチＤＬに接続されている。ＮＭＯＳＦＥＴ３４のソースは接地端子ＶＳＳに接続され、ゲートには制御回路１９から信号ＮＢＣが供給されている。
【００４３】
ビット線を充電する場合には、信号ＰＢＣをローレベル、信号ＮＢＣをハイレベルにすることにより、ノードＮは、データラッチＤＬに格納されたデータに応じて電源電圧ＶＤＤ或いは接地電圧ＶＳＳに設定される。
【００４４】
電荷転送トランジスタ３０は、例えばＮＭＯＳＦＥＴから構成される。電荷転送トランジスタ３０の電流経路の一端は、選択トランジスタ２０（図示せず）を介してビット線ＢＬに接続されている。電荷転送トランジスタ３０の電流経路の他端は、ノードＮに接続されている。電荷転送トランジスタ３０のゲートには、制御回路１９からビット線ＢＬの電圧を制御するためのＢＬクランプ電圧ＢＬＣが印加される。ＢＬクランプ電圧ＢＬＣに応じて、センスアンプＳ／Ａは、ビット線を電圧ＶＢＬに充電することが可能となる。
【００４５】
このようなビット線電圧の制御により、Ａレベルにプログラムされるメモリセルには実質的に「ＶＰＧＭ−ＶＢＬ」の電圧が印加されることになる。このため、ＶＢＬ＝０Ｖの場合に比べて、最初のプログラム電圧ＶＰＧＭを１Ｖ程度高く設定しても、Ａレベルにプログラムされるメモリセルのオーバープログラムを抑制することが可能になる。
【００４６】
図６に示すように、最初のプログラム電圧を１Ｖ分高く設定可能ということは、例えばステップアップ電圧ΔＶＰＧＭ＝０．２Ｖとすると、１Ｖ／０．２Ｖ＝５回のプログラムループを削減できることを意味する。これにより、プログラムシーケンスを高速化することが可能となる。
【００４７】
（効果）
以上詳述したように第１の実施形態では、半導体記憶装置１は、多値データ、例えば４値データを記憶可能なメモリセルを備えている。そして、制御回路１９の制御の下、センスアンプ回路１１は、消去レベル（Ｅｒレベル）以外の閾値電圧のうち最も低い閾値電圧（Ａレベル）にメモリセルをプログラムする場合に、このメモリセルに接続されたビット線を、Ａレベルより高い閾値電圧（Ｂ，Ｃレベル）にメモリセルをプログラムする際にビット線に印加される第１の電圧（例えばＶＳＳ）と、メモリセルをプログラム禁止にする際にビット線に印加される第２の電圧（例えばＶＤＤ）との間の電圧ＶＢＬに充電するようにしている。
【００４８】
従って第１の実施形態によれば、最初のプログラム電圧を電圧ＶＢＬ分高く設定することができる。これにより、プログラムループ数を削減することができるため、プログラムシーケンスを高速化することが可能となる。
【００４９】
［第２の実施形態］
第１の実施形態では、プログラム禁止のメモリセルに接続されたビット線を電源電圧ＶＤＤに充電した後に、Ａレベルにプログラムされるメモリセルに接続されたビット線を電圧ＶＢＬに充電している。この場合、ワード線にプログラム電圧ＶＰＧＭを印加する前に電圧ＶＢＬを充電するための時間が必要になり、プログラム速度を低下させてしまう。また、図７に示すように、第１のビット線を電源電圧ＶＤＤに充電するのと同時に第１のビット線に隣接する第２のビット線を電圧ＶＢＬに充電する場合、第２のビット線が電圧ＶＢＬに到達した後、第１のビット線が電源電圧ＶＤＤに充電されるまでに、カップリングにより第２のビット線が電圧ＶＢＬ以上のレベル「ＶＢＬ＋α」に到達してしまう場合がある。この場合、第２のビット線の電圧が高くなりすぎると、チャネルがフローティングになる可能性がある。
【００５０】
このような状況を考慮して、第２の実施形態では、プログラム禁止のメモリセルに接続されたビット線を電源電圧ＶＤＤに充電する動作を２ステージで行うようにしている。図８は、第２の実施形態に係るプログラム動作におけるビット線電圧を説明するタイミングチャートである。なお、以下の説明において、ビット線の電圧制御は、制御回路１９の制御の下でセンスアンプ回路１１によって行われる。
【００５１】
まず、時刻ｔ１から開始される第１ステージにおいて、Ｅｒレベル及びプログラム禁止のメモリセルに接続されたビット線を電源電圧ＶＤＤより低い電圧、好ましくは「ＶＤＤ−ＶＢＬ」の電圧に充電する。続いて、時刻ｔ３から開始される第２ステージにおいて、ビット線を電圧「ＶＤＤ−ＶＢＬ」から電源電圧ＶＤＤに充電する。この第２ステージと同時に、Ａレベルにプログラムされるメモリセルに接続されたビット線を電圧ＶＢＬに充電する。
【００５２】
このようなビット線の電圧制御によって、電源電圧ＶＤＤに充電する速度と、電圧ＶＢＬに充電する速度とを揃えることができる。このため、電圧ＶＢＬに充電されるビット線のレベルがカップリングによって電圧ＶＢＬより高くなるのを防ぐことが可能となる。また、電源電圧ＶＤＤの充電動作と並行して電圧ＶＢＬの充電動作が行われる、すなわち、電源電圧ＶＤＤを充電する時間の中に、電圧ＶＢＬを充電する時間を含めることができるため、ビット線の充電時間を削減することが可能となる。
【００５３】
次に、図８に示したビット線の電圧制御を行うためのセンスアンプＳ／Ａの構成例について説明する。図９は、第２の実施形態に係るセンスアンプＳ／Ａの構成を示す回路図である。
【００５４】
センスアンプＳ／Ａは、電荷転送トランジスタ４０，４１、ＰＭＯＳＦＥＴ４２，４３、ＮＭＯＳＦＥＴ４４，４５、及びデータラッチＤＬ１，ＤＬ２を備えている。
【００５５】
ＰＭＯＳＦＥＴ４２のソースは電源端子ＶＤＤに接続され、ドレインはＰＭＯＳＦＥＴ４３のソースに接続され、ゲートには制御回路１９から信号ＰＢＣが供給されている。ＰＭＯＳＦＥＴ４３のドレインはノードＮに接続され、ゲートはノードＤＩ１を介してデータラッチＤＬ１に接続されている。
【００５６】
ＮＭＯＳＦＥＴ４４のソースはＮＭＯＳＦＥＴ４５のドレインに接続され、ドレインはノードＮに接続され、ゲートはノードＤＩ１に接続されている。ＮＭＯＳＦＥＴ４５のソースは接地端子ＶＳＳに接続され、ゲートには制御回路１９から信号ＮＢＣが供給されている。
【００５７】
電荷転送トランジスタ４０，４１は、例えばＮＭＯＳＦＥＴから構成される。電荷転送トランジスタ４０の電流経路の一端は選択トランジスタ２０（図示せず）を介してビット線ＢＬに接続され、電流経路の他端はノードＮに接続され、ゲートには制御回路１９からＢＬクランプ電圧ＢＬＣ１が印加される。電荷転送トランジスタ４１の電流経路の一端はノードＮに接続され、電流経路の他端はノードＤＩ２を介してデータラッチＤＬ２に接続され、ゲートには制御回路１９からＢＬクランプ電圧ＢＬＣ２が印加される。
【００５８】
ＢＬクランプ電圧ＢＬＣ１，ＢＬＣ２は、図１０に示すように制御される。図１０において、「Ｖｔｈｎ」は電荷転送トランジスタ４０，４１の閾値電圧、「α」はバックバイアス効果による閾値上昇分である。
【００５９】
ノードＤＩ１／ＤＩ２の電圧が、書き込みデータに応じて、Ｅｒレベル＝０／１、Ａレベル＝０／１、Ｂレベル＝１／０、Ｃレベル＝１／０になるようにデータラッチＤＬ１／ＤＬ２をセットする。信号ＰＢＣをローレベル、信号ＮＢＣをハイレベルにすることにより、ＢＬクランプ電圧ＢＬＣ１のみが立ち上がっている期間は、Ｅｒレベルのビット線は電源端子ＶＤＤから充電され、Ａ，Ｂ，Ｃレベルのビット線は接地端子ＶＳＳから充電される。
【００６０】
続いて、ＢＬクランプ電圧ＢＬＣ２を立ち上げる前に、信号ＮＢＣをローレベルにする。これにより、Ｅｒレベルのビット線は充電パスが変わらないが、Ａレベルのビット線はデータラッチＤＬ２から電圧ＶＢＬに充電される。また、Ｂ，Ｃレベルのビット線は、データラッチＤＬ２から接地電圧ＶＳＳに充電される。
【００６１】
以上のようにセンスアンプＳ／Ａを制御することによって、２つの異なる電圧レベル（電源電圧ＶＤＤ、及び電圧ＶＢＬ）を同時に充電することが可能となる。
【００６２】
以上詳述したように第２の実施形態によれば、Ａレベルのメモリセルに接続されたビット線を最適な電圧に設定しつつ、ビット線の充電時間を短縮することができる。これにより、プログラムシーケンスを高速化することが可能となる。
【００６３】
［第３の実施形態］
第１の実施形態では、Ａレベルにプログラムされるメモリセルに接続されたビット線を常に電圧ＶＢＬに充電することにより、実質的に「ＶＰＧＭ−ＶＢＬ」の電圧がメモリセルに印加されるようにしている。Ａレベルのメモリセルの中には、プログラムが速く完了するセルと、プログラムが遅く完了するセルとが混在しており、遅いセルに対してはより高いプログラム電圧ＶＰＧＭを印加した方がプログラム速度を速くすることができる。ＡレベルよりもＣレベルの方が閾値電圧が高いため、最終的なプログラム終了はＣレベルのプログラム終了時であるが、Ａレベルのメモリセルをより速くプログラム終了することにより、Ａレベルのベリファイ回数を削減することができる。結果として、プログラムシーケンスを高速化することが可能である。
【００６４】
このような状況を考慮して、第３の実施形態では、プログラム速度の遅いメモリセルと、プログラム速度の速いメモリセルとを判定し、次回のプログラムループにおいて、プログラム速度の遅いメモリセルに対しては、ビット線を接地電圧ＶＳＳに充電し、プログラム速度の速いメモリセルに対しては、ビット線を電圧ＶＢＬに充電するようにしている。
【００６５】
図１１は、Ａレベルのメモリセルに１回目のプログラム電圧を印加した後の閾値電圧分布を説明する図である。プログラム速度の遅いメモリセルを判定するには、Ａレベルのメモリセルをベリファイするためのベリファイ電圧ＡＶよりも低いベリファイ電圧ＡＶＬ、例えば「ＡＶＬ＝ＡＶ−ＶＢＬ」でベリファイを行う。このとき、ベリファイ電圧ＡＶＬよりも閾値電圧の低いメモリセルは、次のプログラム電圧印加時にビット線を接地電圧ＶＳＳに充電する。一方で、ベリファイ電圧ＡＶＬ以上の閾値電圧を有するメモリセルは、次のプログラム電圧印加時にビット線を電圧ＶＢＬに充電する。こうすることにより、プログラム速度の遅いメモリセルにはプログラム電圧ＶＰＧＭが印加されることになるため、プログラム速度を速くすることができる。
【００６６】
以下に、第３の実施形態に係るプログラムシーケンスを説明する。図１２は、プログラムシーケンスを説明するフローチャートである。なお、以下の説明において、ビット線の電圧制御は、制御回路１９の制御の下でセンスアンプ回路１１によって行われる。
【００６７】
まず、１回目のプログラムループにおいて、第１の実施形態と同様に、Ａレベルにプログラムされるメモリセルに接続されたビット線を電圧ＶＢＬに充電する（ステップＳ１００）。続いて、ロウデコーダ１４は、選択ワード線に１回目のプログラム電圧ＶＰＧＭを印加する（ステップＳ１０１）。
【００６８】
続いて、Ａレベルにプログラムされるメモリセルに対して、２つのベリファイ電圧ＡＶＬ及びＡＶを用いてベリファイを行う（ステップＳ１０２）。ベリファイ動作は、基本的には読み出し動作と同じである。すなわち、ロウデコーダ１４は、選択ワード線にベリファイ電圧ＡＶＬを印加し、非選択ワード線に記憶データに関わらずメモリセルがオンする読み出しパス電圧を印加する。この状態で、センスアンプ回路１１は、ＮＡＮＤストリングに電流が流れるか否かを判定することで、選択メモリセルの閾値電圧Ｖｔｈを判定する。ベリファイ電圧ＡＶを用いたベリファイ動作は、選択ワード線に印加するベリファイ電圧が異なる以外は、ベリファイ電圧ＡＶＬの場合と同じである。このステップＳ１０２によって、プログラム速度が遅いメモリセル（ベリファイ電圧ＡＶＬより低い閾値電圧を有するメモリセル）と、プログラム速度が速いメモリセル（ベリファイ電圧ＡＶＬ以上の閾値電圧を有するメモリセル）とが判定される。
【００６９】
ベリファイ電圧ＡＶＬ及びＡＶのベリファイ結果は、データラッチＤＬにそれぞれ格納される。図１３は、１本のビット線に接続されるセンスアンプＳ／Ａ及びデータラッチＤＬの構成を示すブロック図である。センスアンプＳ／Ａ及びデータラッチＤＬは、センスアンプ回路１１に含まれる。センスアンプＳ／Ａは、選択トランジスタ２０を介してビット線に接続されている。センスアンプＳ／Ａには、ベリファイ用のデータラッチＤＬ３及びＤＬ４が接続されている。本実施形態では、ベリファイ電圧ＡＶＬのベリファイ結果は、データラッチＤＬ３に格納され、ベリファイ電圧ＡＶのベリファイ結果は、データラッチＤＬ４に格納される。
【００７０】
続いて、２回目のプログラムループが行われる。１回目のプログラムループでベリファイ電圧ＡＶ以上の閾値電圧にプログラムされているメモリセルは、プログラム禁止とし、ビット線を電源電圧ＶＤＤに充電する（ステップＳ１０３，Ｓ１０４）。１回目のプログラムループでベリファイ電圧ＡＶＬより低い閾値電圧にプログラムされているメモリセルは、ビット線を接地電圧ＶＳＳに充電する（ステップＳ１０５，Ｓ１０６）。１回目のプログラムループでベリファイ電圧ＡＶＬ以上かつベリファイ電圧ＡＶより低い閾値電圧にプログラムされているメモリセルは、ビット線を電圧ＶＢＬに充電する（ステップＳ１０７，Ｓ１０８）。ステップＳ１０３〜Ｓ１０８の制御は、前述したデータラッチＤＬ３及びＤＬ４のデータに基づいて行われる。
【００７１】
全てのビット線の充電が完了すると（ステップＳ１０９）、ロウデコーダ１４は、選択ワード線に、１回目のプログラム電圧よりステップアップ電圧分高い２回目のプログラム電圧ＶＰＧＭを印加する（ステップＳ１１０）。続いて、Ａレベルにプログラムされるメモリセルに対して、２つのベリファイ電圧ＡＶＬ及びＡＶを用いてベリファイを行う（ステップＳ１１１）。
【００７２】
これ以降のプログラムシーケンスでは、Ａレベルの全てのメモリセルのベリファイがパスするまで、ステップＳ１０３〜Ｓ１１１が繰り返し実行される（ステップＳ１１２）。その後、一般的なプログラム動作によって、Ｂ，Ｃレベルのプログラムが行われる。
【００７３】
以上詳述したように第３の実施形態では、プログラム速度の遅いメモリセルに対しては、これらに接続されるビット線が接地電圧ＶＳＳに充電される。これにより、プログラム動作時に、プログラム速度の遅いメモリセルにはプログラム電圧ＶＰＧＭが印加されるため、プログラム速度の遅いメモリセルのプログラム時間が短縮できる。この結果、プログラムループ数を削減できるため、プログラムシーケンスを高速化することが可能となる。
【００７４】
なお、上記各実施形態では、メモリセルが多値データとして４値データ（２ビットデータ）を記憶する場合を例に説明したが、勿論、メモリセルが３ビット以上のデータを記憶する場合にも同様に適用可能である。
【００７５】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７６】
ＢＬ…ビット線、ＷＬ…ワード線、ＣＥＬＳＲＣ…ソース線、ＳＧＤ，ＳＧＳ…選択ゲート線、ＭＴ…メモリセル、ＳＴ１，ＳＴ２…選択トランジスタ、１…ＮＡＮＤ型フラッシュメモリ、１０…メモリセルアレイ、１１…センスアンプ回路、１２…カラムデコーダ、１３…データバス、１４…ロウデコーダ、１５…電圧発生回路、１６…データ入出力バッファ、１７…アドレスレジスタ、１８…コマンドレジスタ、１９…制御回路、２０…選択トランジスタ、３０，４０，４１…電荷転送トランジスタ、３１，３２，４２，４３…ＰＭＯＳＦＥＴ、３３，３４，４４，４５…ＮＭＯＳＦＥＴ。
【図１】
2012084207.tif 000003
【図２】
2012084207.tif 000004
【図３】
2012084207.tif 000005
【図４】
2012084207.tif 000006
【図５】
2012084207.tif 000007
【図６】
2012084207.tif 000008
【図７】
2012084207.tif 000009
【図８】
2012084207.tif 000010
【図９】
2012084207.tif 000011
【図１０】
2012084207.tif 000012
【図１１】
2012084207.tif 000013
【図１２】
2012084207.tif 000014
【図１３】
2012084207.tif 000015