(57)【特許請求の範囲】
【請求項１】
データ書き換え用電源が所定値を越えたかどうかを検知する電圧検知手段と、
この電圧検知手段の検知出力に基づいて、前記電源の電圧の立ち上がり時にのみパルス信号を出力するパルス信号発生手段と、
前記電圧検知手段の検知出力及びパルス発生手段の出力に基づいて、通常時はアドレスをラッチするラッチ指令信号を出力し、前記パルス信号を受信した場合のみ、次のコマンドを受信するまではアドレスのラッチを解除するラッチ解除指令信号を出力するアドレスラッチ信号発生手段と、
前記ラッチ指令信号に基づいてアドレスをラッチし、前記ラッチ解除指令信号に基づいてアドレスのラッチを解除するアドレスバッファと、
を備えていることを特徴とする不揮発性半導体記憶装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、コマンド方式により電気的に一括消去、書き込み、読み出しが可能な不揮発性半導体記憶装置に関する。
【０００２】
【従来の技術及び発明が解決しようとする課題】
一般に、電気的データの書き換えが可能なフラッシュＥ2 ＰＲＯＭ（以下、単に記憶装置ともいう）においては、データの書き込み、消去等の各モードの切り替えをコマンド（データを組み合わせたもの）により行うコマンド方式が主流となっている。例えば、制御信号としてバーＣＥ、バーＯＥ、バーＷＥの３つの信号のロジックによりモードを切り換えている記憶装置においてはバーＣＥ、バーＯＥ、バーＷＥが各々“Ｌ”、“Ｈ”、“Ｌ”の場合でコマンド書き込みモード、“Ｌ”、“Ｌ”、“Ｈ”の場合で読み出しモードと区別している。つまりバーＣＥが“Ｌ”で記憶装置をアクティブ状態にし、バーＯＥ、バーＷＥの値でコマンド書き込みモードと読み出しモードを切り換えている。このような記憶装置の全ビットのデータを消去する自動消去コマンドモードを図１５乃至１７を参照して説明する。自動消去コマンドは、予め全ビットに書き込みを行うプリプログラムと、プリプログラム後の消去の動作とからなっており、プリプログラム時にプログラムＯＫかどうかの判断と、消去時に消去ＯＫかどうかの判断を自動で行うものである。
【０００３】
この自動消去時の記憶装置内部の動作を図１７のフローチャートに示す。まず、初期設定を行い（ステップＦ１７１参照）、最初のメモリセルに“０”データを書き込む（ステップＦ１７２参照）。続いて高電圧を放電するリカバリー状態及びデータが正しく書き込まれたかを検証するベリファイ状態になる（ステップＦ１７３参照）。そして書き込まれたデータを読み取り、基準データと比較して（ステップＦ１７４参照）、正しく書き込まれていない場合は正しく書き込まれるまでステップＦ１７２、Ｆ１７３、Ｆ１７４を繰り返す（ステップＦ１７６、１７７参照）。この時繰り返し回数が例えば２５回を越えた場合はこの記憶装置は不良と判定する。
【０００４】
一方、正しく書き込まれた場合は、現在データが書き込まれたメモリセルのアドレスに１を加算し（ステップＦ１７５参照）、ステップＦ１７２に戻って１が加算されたアドレスに対応する次のメモリセルにデータ“０”を書き込み、以下、ステップＦ１７３、Ｆ１７４を繰り返し、全てメモリセルにデータ“０”を書き込む。全てのメモリセルにデータが書き込まれた場合は一括消去を行う（ステップＦ１８０参照）。続いてリカバリー状態およびベリファイ状態になり（ステップＦ１８１参照）、各メモリセルからデータを読み出して、基準データと比較し、完全に消去が行われたかどうか検証する（ステップＦ１８２参照）そして正しく消去されない場合は完全に消去されるまでステップＦ１８０、Ｆ１８１、Ｆ１８２を繰り返す（ステップＦ１８３、Ｆ１８４参照）。但し、この繰り返し動作は例えば繰り返し回数が３０００回を超えた場合は停止し、この記憶装置を不良と判定する。
【０００５】
このような自動消去コマンドモードにおける通常動作のタイミングチャートを図１５に示し、動作中のモードを強制的に止めるリセットコマンドが入力された場合のタイミングチャートを図１６に示す。図１５において、バーＣＥ、バーＷＥの立ち上がり時にコマンドデータ“３０”が２回入力されることによって自動消去モードになる。なお、このコマンドデータは入力されるデータが８ビットのため１６進数で表現してある。自動消去モードになると、内蔵されているタイマによって設定された時間内で自動消去が行われる。この時の状態はステータスポーリング信号として最下位のデータビットＤ７を用いて外部に知らせている。消去動作中（Ｂｕｓｙ状態）はステータスポーリング信号は“０”であり、消去動作が終了すると（Ｒｅａｄｙ状態）“１”となる。その後、図１５においては、バーＣＥ、バーＷＥの立ち上がり時に、１６進数で表わされたコマンドデータ“１０”が入力され、自動プログラムモードになる。
【０００６】
一方、図１６においては、自動消去モードになるまでは図１５の場合と同様であるが、自動消去モードの途中の、バーＣＥ、バーＷＥの立ち上がり時にリセットコマンド“ＦＦ”が２回入力されて自動消去モードが強制的に止められ、リセット状態にされる。従来リセットコマンドの入力は、１ステップ又は２ステップで行われるが、図１６においては２ステップで行っている。
【０００７】
このようにコマンド方式を用いた自動消去モードでは、通常動作においては動作中なのか又は動作が完了しているのかをステータスポーリング信号によって知ることが可能であった。しかし、動作中に外部から強制的にリセットが掛けられた場合は、自動消去動作はただちにストップし、次のコマンドを受け付ける状態となる。ユーザ側としてはリセットを掛けるタイミングに特に制約がなく、場合によっては次の動作にすぐ進みたい時もある。
【０００８】
リセットをプログラム動作中又は消去動作中に掛けた場合は、つまり、メモリセルや周辺回路に高電位が印加されている状態でリセットした場合に、直ちに次の動作モードに入ると正しい電圧設定ができず、誤動作の原因となる。例えばプログラム中にリセットを掛け、ワード線が高電位からＶcc（電源電位）に設定される前に読出しモードにすると、正しいセルデータの読み出しを行うことができなくなる。リセット後に正しい動作を行うためには、内部が正常にリセットされてから行わなくてはならず、従来の製品では一定時間（６μｓ〜１０μｓ）待つ必要があった。
【０００９】
又、従来の記憶装置においては、データの書き込み、又はブロック単位の消去では、アドレスの指定が必要であり、図１９に示すようにコマンド入力を制御する信号バーＷＥの立ち下がり（又は立ち上がり）のタイミングで設定する。コマンド入力時のアドレスラッチはコマンド入力モードの信号バーＷＥの立ち下がりのタイミングでアドレスを取り込み、書き込み動作中や消去動作中はアドレスラッチ状態を保つ装置で実現できる。この装置は例えば図１８に示すようにＣＥバッファ６１と、ＷＥバッファ６２と、Ｖpp検知回路６３と、アドレスラッチパルス発生回路６６と、アドレスバッファ６７とを備えることによって構成される。ＣＥバッファ６１は信号バーＣＥに基づいてこの信号バーＣＥに同期し、ＷＥバッファ６２及びアドレスバッファ６７を活性化させる信号ＣＥＳ１Ｂを出力する。ＷＥバッファ６２は、信号バーＷＥ及びＣＥＳ１Ｂに基づいてアドレスラッチパルスの発生を制御する信号ＷＥＳ１Ｂを出力する。この信号ＷＥＳ１Ｂは図２１に示すようにＷＥバッファ６２が活性化されている時に、信号バーＷＥの立ち下がりから所定時間遅れて立ち下がり、信号バーＷＥの立ち上がりに同期して立ち上がる信号である。Ｖpp検知回路６３は消去用電源の電圧Ｖppが、消去動作を行うに充分な電圧値に達しているかどうかを検出するものであって、例えば十分に達している場合（Ｖpp＝１２Ｖ）は“０”となり、達していない場合は（Ｖpp＝Ｖcc）“１”となる信号ＳＶＰＰＢを出力する。アドレスラッチパルス発生回路６６は信号ＳＶＰＰＢが“０”である時に信号ＷＥＳ１Ｂの立ち下がりに同期したアドレスラッチパルスＡＬとその反転パルスＡＬＢを出力する回路であって、例えば図２０（ａ）に示すようにして構成される。アドレスバッファ６７は信号ＡＬＢが“１”ときのみアドレスＡｉを通過させ、信号ＡＬＢが“０”の場合は信号ＷＥＳ１Ｂの立ち下がり時にラッチしたアドレスを常に保持し、信号ＡｉＳとして図示しないデコーダに送出する回路であって、例えば図２０（ｂ）に示すようにして構成される。上述の各信号のタイミングを図２１に示す。
【００１０】
このように２電源Ｖpp、Ｖccを用いる従来の記憶装置においては、書き込み、消去、コマンド入力モードではＶppを高電圧（＝１２Ｖ）に設定して行うが、ＶppをＶcc（＝５Ｖ）又は０Ｖから高電圧（＝１２Ｖ）まで上昇させた時にＡＬＢが“Ｌ”となり、アドレスラッチ状態（Ｖpp＝１２Ｖにした時点でのアドレスがラッチされてしまう状態）となる（図２２参照）。
【００１１】
したがって、Ｖpp＝１２Ｖに設定した後に、通常のランダム読み出しを行うには、上記アドレス状態を解除してからでないとできないという問題があった。
【００１２】
又、３つの制御信号バーＣＥ、バーＯＥ、バーＷＥを用いてモードの切り換えを行う従来の記憶装置において、プログラム動作でのコマンド書き込みモードから記憶装置の状態を表わしているステータス信号を読出すステータスリードまでの一連の制御信号のタイミングを図２３に示す。図２３におけるプログラム動作は、２ステップで行い、１ステップ目はプログラムコマンドを入力し、２ステップ目はプログラムするアドレスとデータを入力する。コマンド書き込みモード時はバーＣＥ、又はバーＷＥの立ち下がりエッジでアドレスを取り込んでラッチし、バーＣＥ又はバーＷＥの立ち上がりエッジでデータを取り込みラッチしている。ステータ信号の読み出し時には、先のコマンド書き込みモード時にラッチしたアドレスとデータをそのまま保持している。このようにコマンド書き込みモードはバーＷＥが“Ｌ”、バーＯＥが“Ｈ”であり、読み出しモードはバーＷＥが“Ｈ”、バーＯＥが“Ｌ”とはっきり区別されている。
【００１３】
しかし、ＥＰＲＯＭとの互換性から制御信号バーＣＥ、バーＯＥのみで制御する記憶装置も提案されている。このような記憶装置では、信号バーＣＥによってアクティブ状態とスタンドバイ状態を切り換え、コマンド書き込みモードと読み出しモードの区別は信号バーＣＥが負のパルスになっている間、信号バーＯＥが“Ｈ”状態を保っているか、信号バーＣＥ、バーＯＥが各々“Ｌ”、“Ｌ”になるかで切り換えている。このような記憶装置において、プログラム動作のコマンド書き込みモードからステータスリードまでの一連の制御信号のタイミングを図２４に示す。図２４において、信号バーＣＥ、バーＯＥの動きは図２３に示す場合と同じである。しかし、信号バーＷＥが無いためコマンド書き込みモードとステータスモードとも、信号バーＣＥの立ち下がり時に信号バーＯＥは“Ｈ”であり、信号バーＣＥの立ち下がり時のみでは、現在の動作がコマンド書き込みモードなのか又は読み出しモード（ステータスリード）なのか判断がつかない。すなわち、コマンド書き込みモードであれば、信号バーＣＥの立ち下がりエッジでアドレスを取り込まなければならないのに対して、読み出しモードではアドレスは取り込まず、アドレス非ラッチ状態を続ける必要があるが、信号バーＣＥの立ち下がり時だけでは判断ができないという問題が生じる。
【００１４】
本発明は上記事情を考慮してなされたものであって、消去用電源の電圧Ｖppを高電圧（＝１２Ｖ）に設定した後でも、コマンド入力をする前は通常のランダム読み出しが可能となる不揮発性半導体記憶装置を提供することを目的とする。
【００１５】
【課題を解決するための手段】
本発明による不揮発性半導体記憶装置は、データ書き換え用電源が所定値を越えたかどうかを検知する電圧検知手段と、この電圧検知手段の検知出力に基づいて、電源の電圧の立ち上がり時にのみパルス信号を出力するパルス信号発生手段と、電圧検知手段の検知出力及びパルス発生手段の出力に基づいて、通常時はアドレスをラッチするラッチ指令信号を出力し、パルス信号を受信した場合のみ、次のコマンドを受信するまではアドレスのラッチを解除するラッチ解除指令信号を出力するアドレスラッチ信号発生手段と、ラッチ指令信号に基づいてアドレスをラッチし、ラッチ解除指令信号に基づいてアドレスのラッチを解除するアドレスバッファとを備えていることを特徴とする。
【００１６】
【作用】
上述のように構成された本発明の記憶装置によれば、データ書き換え用電源の電圧の立ち上がり時にのみパルス信号がパルス信号発生手段から出力される。これにより、アドレスラッチ解除指令信号がアドレスラッチ信号発生手段から発生され、そしてアドレスバッファにおいてアドレスのラッチが解除され、電圧を高電圧に設定した後でも、通常のランダム読み出しが可能となる。
【００１７】
【実施例】
第１の発明による不揮発性半導体記憶装置（以下、記憶装置ともいう）の一実施例の構成を図１に示す。この実施例の記憶装置は制御回路１と、Ｉ／Ｏバッファ２と、コマンドレジスタ回路３と、オートモード制御回路４と、書き込み／消去制御回路５と、消去回路６と、ロウデコーダ７と、センスアンプ８と、カラムゲート９と、メモリセルアレイ１０とを備えている。制御回路１は制御信号バーＣＥ、バーＯＥ、バーＷＥに基づいてＩ／Ｏバッファ２及びコマンドレジスタ回路３を制御する。
【００１８】
コマンドレジスタ回路３はＩ／Ｏバッファを介して入力されたコマンドを認識して、書き込み、消去等のモードを切り換える回路であって、図２に示すようにプログラムコマンドレジスタ３ａと、消去コマンドレジスタ３ｂと、リセットコマンドレジスタ３ｃとを有している。オートモード制御回路４はコマンドレジスタ回路３によって切り換えられた各オートモードの動作を制御する回路であって、図２に示すようにオートプログラムスタート回路４ａと、ＮＡＮＤゲート及びインバータからなる論理回路４ｂと、プログラムタイマ４ｃと、プログラムベリファイタイマ４ｄと、オートコンパレータ４ｅと、オート消去スタート回路４ｆと、ＮＡＮＤゲート及びインバータからなる論理回路４ｇと、消去タイマ４ｈと、消去ベリファイタイマ４ｉと、ポーリング回路４ｊとを備えている。書き込み／消去制御回路５は書き込み、消去時にメモリセルアレイ１０に与える電圧Ｖppを設定する回路であって、図２に示すようにプログラム制御回路５ａと、ベリファイ制御回路５ｂと、昇圧回路５ｃと、消去制御回路５ｄと、データラッチ回路５ｅとを有している。
【００１９】
消去回路６は消去時に高電圧Ｖppを発生する回路である。ロウデコーダ７はロウアドレスに対応するメモリセルを選択し、カラムゲート９はカラムアドレスに対応するメモリセルを選択する。センスアンプ８はロウデコーダ７およびカラムゲート９によって選択されたメモリセルに記憶されたデータを読み出す。
【００２０】
プログラムコマンドレジスタ３ａは、コマンド書き込み時にオートプログラムコマンドデータ“１０”が設定されると、オートプログラムモードと認識して出力信号ＡＰＲＯを“１”にし、プログラム終了時又はリセットコマンド入力時に出力信号ＡＰＲＯを“０”としてオートプログラムスタート回路４ａ及びポーリング回路４ｊに送出する。
【００２１】
消去コマンドレジスタ３ｂは、オート消去コマンド“３０”，“３０”を認識して出力信号ＡＥＲＳを“１”とし、消去終了時やリセットコマンド入力時に出力信号ＡＥＲＳを“０”にしてオートプログラムスタート回路４ａおよびポーリング回路４ｊに送出する。
【００２２】
リセットコマンドレジスタ３ｃは、リセットコマンド“ＦＦ”，“ＦＦ”を認識し、１ステップ目のコマンド“ＦＦ”入力時にパルス信号ＦＦ１Ｐを生成し、２ステップ目のコマンド“ＦＦ”が入力されるとパルス信号ＦＦ２Ｐを生成し、ポーリング回路４ｊに送出する信号ＦＦＲＴを、１ステップ目と２ステップ目の間に“１”とし、それ以外の期間は“０”とする。
【００２３】
オートプログラムスタート回路４ａはプログラム開始時にパルス信号ＰＰＵＳを出力する回路であって、具体的にはコマンドレジスタ３ａの出力信号ＡＰＲＯが“１”の場合（オートプログラム時）、コマンドレジスタ３ｂの出力信号ＡＥＲＳが“１”の場合（オート消去時）、またはオート動作中プログラム動作が再スタートする場合（オートコンパレータ４ｅの出力パルス信号ＡＰＶを受信した時）にパルス信号ＰＰＵＳを発生する。
【００２４】
論理回路４ｂは信号ＰＲＯＧ（プログラム制御回路５ａの出力信号であって、書き込み時に“１になり、それ以外は“０”となる信号）を遅延した信号ＰＲＯＧＤと、コマンドレジスタ３ｃの出力信号ＦＦ１Ｐとの論理積を演算し、その結果をプログラムタイマ４ｃに送出する。
【００２５】
プログラムタイマ４ｃは信号ＰＰＵＳを受信してから所定時間（例えば１０μｓ）後に、パルス信号ＴＰＲＧを出力する。プログラムベリファイタイマ４ｄはプログラム後、信号ＴＰＲＧで動作し、ベリファイ設定時間（例えば６μｓ）後にパルス信号ＴＰＲを出力する。
【００２６】
オートコンパレータ４ｅは、オート動作のプログラムベリファイ時にメモリセルへの書き込みが正しくできるかどうかを判断し、消去ベリファイ時にメモリセルの消去が正しくできているかを判断する。プログラムベリファイ時には信号ＴＰＲが“１”の場合に判断し、消去ベリファイ時には消去ベリファイタイマ４ｉの出力信号ＴＥＲが“１”の場合に判断する。次の動作としてプログラムを行うときは、プログラムスタート回路４ａに送出するパルス信号ＡＰＶを“１”にしてプログラムスタート回路４ａを駆動し、消去を行うときは消去スタート回路４ｆに送出するパルス信号ＡＥＶを“１”にして消去スタート回路４ｆを駆動する。そしてプログラムモードのプログラム動作終了時にはパルス信号ＥＮＤＰを用いてコマンドレジスタ３ａをリセットし、消去モードの場合はプリプログラム終了時にパルス信号ＥＮＤＰを用いて消去スタート回路４ｆを駆動し、消去動作終了時にパルス信号ＥＮＤＥを用いてコマンドレジスタ３ｂをリセットする。
【００２７】
オート消去スタート回路４ｆは消去開始時にパルス信号ＥＰＵＳを出力する回路であって、オート動作中にオートコンパレータ４ｅの出力信号ＡＥＶを受けてパルス信号ＥＰＵＳを発生する。
【００２８】
論理回路４ｇは信号ＥＲＡＳ（消去制御回路５ｄの出力信号であって、消去動作時は“１”で、それ以外の時は“０”である信号）を遅延した信号ＥＲＡＳＤと、コマンドレジスタ３ｃの出力信号ＦＦ１Ｐとの論理積を演算し、その論理積を消去タイマ４ｈに送出する。
【００２９】
消去タイマ４ｈは、パルス信号ＥＰＵＳを受信してから所定時間（例えば１０ｍｓ）後にパルス信号ＴＥＲＳを出力する。
【００３０】
消去ベリファイタイマ４ｉは、消去後、信号ＴＥＲＳを受信してから所定時間（６μｓ）後にパルス信号ＴＥＲを出力する。
【００３１】
ポーリング回路４ｊは、オート動作中又はリセット時のリカバリ動作中はステータスポーリング信号を“Ｂｕｓｙ”状態、すなわちＩ／Ｏバッファ２の入出力ピンＤ７の出力を“０”にするために信号ＰＯＬを“０”にし、オート動作終了後、又はリセット時のリカバリ動作終了後にステータスポーリング信号を“Ｒｅａｄｙ”状態、すなわち入出力ピンＤ７の出力を“１”にしてＩ／Ｏバッファ２に出力する。
【００３２】
プログラム制御回路５ａはプログラム時、書き込みセルのワード線、ビット線に昇圧電位（例えば、ワード電圧ＶWL＝１２Ｖ、ビット線電圧ＶBL＝６Ｖ）を与えるように昇圧回路５ｃを制御する。
【００３３】
ベリファイ制御回路５ｂは、ベリファイ時のワード線電圧の書き込み、消去のマージンを向上させるためにプログラムベリファイ時にはワード線電圧ＶWLを７Ｖに設定し、消去ベリファイ時にＶWLを３．５Ｖに設定する。昇圧回路５ｃはプログラム時のワード線、ビット線の電位を昇圧するために用いられる。
【００３４】
消去制御回路５ｄは消去時にメモリセルのソースに昇圧電位（例えばソース電圧Ｖs ＝１２Ｖ）を与えるように消去回路６を制御する。
【００３５】
データラッチ回路５ｅはオートプログラム時に書き込みデータをラッチする回路である。オートプログラムのベリファイ時にはセンスアンプ８の出力とこのラッチ回路５ｅによってラッチされたデータとをオートコンパレータ４ｅが比較して正しく書き込みがされているかどうかを判断する。又、オート消去時にはプリプログラム動作中は全ビットが“０”（書き込み状態）を期待値としてプログラムベリファイをオートコンパレータ４ｅによって行い、消去動作中は全ビット“１”（消去状態）を期待値として消去ベリファイをオートコンパレータ４ｅによって行う。そしてこれらの期待値もデータラッチ回路５ｅによって設定する。
【００３６】
次に本実施例の動作を図３，４及び１７を参照して説明する。図３は通常の自動消去モードの場合の動作のタイミングチャートである。図３において、自動消去コマンド“３０”，“３０”がＩ／Ｏバッファ２を介して入力されると、これを消去コマンドレジスタ３ｂが認識して出力信号ＡＥＲＳを“１”にする。するとオートプログラムスタート回路４ａからパルス信号ＰＰＵＳが出力され、これによりプログラム制御回路５ａの出力信号ＰＲＯＧが“１”になって昇圧回路５ｃが駆動され、１つのメモリセルにデータ“０”の書き込みが開始される。すなわち、図１７のステップＦ１７２が実行される。
【００３７】
又、この時、ポーリング回路４ｊの出力信号ＰＯＬも“０”になり、この値はＩ／Ｏバッファ２の入出力ピンＤ７を介して外部に出力され、記憶装置の内部が“Ｂｕｓｙ”状態であることを外部に知らせる。
【００３８】
パルス信号ＰＰＵＳが発生されてから所定時間経過するとプログラムタイマ４ｃからパルス信号ＴＰＲＧが出力され、これによりプログラム制御回路５ａの出力信号ＰＲＯＧが“０”になるとともにベリファイ制御回路５ｂの出力信号ＰＲＥＣが“１”になり、図１７のステップＦ１７３が実行される。
【００３９】
又、パルス信号ＥＮＤＰが発生されてから所定時間経過後にオート消去スタート  パルス信号ＴＰＲＧが発生されてから所定時間経過すると、プログラムベリファイタイマ４ｄからパルス信号ＴＰＲが発生され、プログラムが正しく行なわれたかどうか判断するプログラムベリファイを実行する。すなわち図１７のステップＦ１７４が実行される。このベリファイ時に、プログラムが正しく行われデータ０が書き込まれたと判断した場合は、アドレスをカウントアップして次のアドレスに対応するメモリセルの書き込みを行なう図１７のステップＦ１７５、Ｆ１７２が実行される。又、データ“０”が正しく書き込めないと判断した場合は、現在のアドレスに対応するメモリセルの追加書き込みを行なう、図１７のステップＦ１７６、Ｆ１７７、Ｆ１７２が実行される。この動作を繰り返えし、全アドレスのメモリセルにデータ“０”が書き込まれた時に、オートコンパレータ４ｅからパルス信号ＥＮＤＰが発生され、プログラムモードが完了する。又、パルス信号ＥＮＤＰが発生されてから所定時間経過後にオート消去スタート回路４ｆからパルス信号ＥＰＵＳが発生され、これにより消去制御回路５ｄから出力される信号ＥＲＡＳが“１”になって消去回路６が駆動され、消去モードになる。すなわち図１７に示すステップＦ１８０が実行される。
【００４０】
パルス信号ＥＰＵＳが発生されてから所定時間経過すると、消去タイマ４ｈからパルス信号ＴＥＲＳが発せられ、これにより消去制御回路５ｄの出力ＥＲＡＳが“０”になるとともにベリファイ制御回路５ｂの出力ＥＲＥＣが“１”になる。すなわち図１７に示すステップＦ１８１が実行される。
【００４１】
そしてパルス信号ＴＥＲＳが発生されてから所定時間経過すると、消去ベリファイタイマ４ｉからパルス信号ＴＥＲが発生される。これにより、ベリファイ制御回路５ｂの出力ＥＲＥＣが“０”になって消去リカバリーモードが終了する。パルス信号ＴＥＲが発生したときに消去が正しく行われたかどうか判断する消去ベリファイを実行する。すなわち図１７のステップＦ１８２が実行される。このベリファイで消去が不完全な場合はオートコンパレータ４ｅ介してオート消去スタート４ｆからパルス信号ＥＰＵＳが発生され、再び消去が行われる。すなわち図１７に示すステップＦ１８２、Ｆ１８３、Ｆ１８４、Ｆ１８０が実行される。
【００４２】
消去が完全である場合は、コンパレータ４ｅからパルス信号ＥＮＤＥが出力される。これにより消去コマンドレジスタ３ｂが停止してその出力信号ＡＥＲＳは“０”になり、更にポーリング回路４ｊの出力信号ＰＯＬは“１”となり、消去が完了する。
【００４３】
図４は自動消去中（プログラムモード中）にリセットが掛けられた場合の動作のタイミングチャートである。図４において、１ステップコマンド“ＦＦ”が入力されるまでは図３で説明した場合と同様である。
【００４４】
１ステップ目のリセットコマンド“ＦＦ”がＩ／Ｏバッファ２を介して入力されると、これをリセットコマンドレジスタ３ｃが認識してパルス信号ＦＦ１Ｐを発生するとともに、ポーリング回路４ｊに送出する信号ＦＦＲＴを“１”にする。パルス信号ＦＦ１Ｐが発せられると、消去コマンドレジスタ３ｂの動作が停止し、自動消去モードが中止する。すなわち、消去コマンドレジスタ３ｂの出力信号ＡＥＲＳが“０”になる。続いてプログラム制御回路５ａの出力ＰＲＯＧが“０”になることにより内部動作（この場合は書き込み動作）を中止し、更にプログラムタイマ４ｃからリカバリ開始パルスＴＰＲＧが発生されることによりベイファイ制御回路５ｂの出力信号ＰＲＥＣが“１”になってリカバリモードとなる。リカバリモードになってから所定時間経過すると、プログラムベリファイタイマ４ｄからパルス信号ＴＰＲが発せられ、ベリファイ制御回路５ｂの出力ＰＲＥＣが“０”になる。この時、リセットコマンドレジスタ３ｃの出力ＦＦＲＴは“１”であるので、ポーリング回路４ｊはリカバリモードが完了したと判断し、その出力ＰＯＬを“１”にする。すなわちＩ／Ｏバッファ２の入出力ピンＤ７から出力されステータスポーリング信号は“Ｒｅａｄｙ”状態となる。
【００４５】
そして、２ステップ目のリセットコマンド“ＦＦ”が入力されると、リセットコマンドレジスタ３ｃがこれを検知し、内部にパルス信号ＦＦ２Ｐを発生する。これにより、リセットコマンドレジスタ３ｃからポーリング回路４ｊに送出される信号ＦＦＲＴは“０”となる。
【００４６】
このように自動消去モード中にリセットが掛けられる場合は、１ステップ目のリセットコマンド“ＦＦ”が入力されてから２ステップ目のリセットコマンド“ＦＦ”が入力されるまでの間は記憶装置の内部状態がリカバリ中かリカバリ完了かを図５に示すようにステータスポーリング信号（Ｉ／Ｏバッファ２の入出力ピンＤ７の出力）としてユーザは知ることができる。
【００４７】
以上説明したように本実地例によれば、モード動作中に外部からリセットが掛けられた場合に記憶装置の内部が“Ｒｅａｄｙ”状態であるか“Ｂｕｓｙ”状態であるかはステータスポーリング信号によってユーザは知ることができる。これにより誤動作を生じるのを可及的に防止できるとともに待機時間を無駄に長くすることを可及的に防止することができる。
【００４８】
なお、上記実施例においては、自動消去モードの場合を例にとって説明したが、自動ブロック消去モード、自動プログラムモード（バイト単位の書き込みモード）などのモードの途中でリセットが掛けられた場合も同様にして、１ステップ目のリセットコマンドと２ステップ目のリセットコマンドの間ではリカバリ中であるか又は終了したかを表すステータスポーリング信号を外部に出力することができる。
【００４９】
次に第２の発明による不揮発性半導体記憶装置（以下、記憶装置ともいう）の一実施例の構成を図６に示す。実施例の記憶装置は図１８に示す従来の装置において、Ｖppパルス発生回路６４を新たに設けるとともに、アドレスラッチパルス発生回路６６の代わりにアドレスラッチパルス発生回路６５を設けたものである。
【００５０】
Ｖppパルス発生回路６４は、例えば図７（ｂ）に示すように構成され、Ｖpp検知回路６３の出力ＳＶＰＰＢに基づいて消去電源の電圧Ｖppが駆動電圧Ｖcc（例えば５Ｖ）又は０Ｖから所定の高電圧（例えば１０Ｖ以上）に上昇した時に単パルス信号ＲＳＴＡＬを出力する。
【００５１】
アドレスラッチパルス発生回路６５は、例えば図７（ａ）に示すように構成されて、Ｖpp検知回路６３の出力ＳＶＰＰＢ及びＶppパルス発生回路６４の出力ＲＳＴＡＬに基づいて動作し、電圧ＶppがＶcc以下の場合、すなわちＳＶＰＰＢが“１”の場合はアドレスラッチ解除状態（ＡＬが“０”、ＡＬＢが“１”）となり、電圧Ｖppが高電圧の場合、すなわちＳＶＰＰＢが“０”の場合は単パルス信号ＲＳＴＡＬがＶppパルス発生回路６４から出力されるため、２つのＮＯＲゲートＮＯＲ１、ＮＯＲ２からなるフリップフロップの出力７２が“１”となり、アドレスラッチ解除状態（ＡＬが“０”、ＡＬＢが“１”）を保つ。その後、コマンド入力モードとして信号バーＷＥのパルスを入力するとフリップフロップのリセット入力となるノード７１のレベルが“１”となってフリップフロップが解除され、ノード７２のレベル“０”となる。すなわち、アドレスラッチ状態となる。
【００５２】
上記信号のタイミングチャートを図８に示す。電圧Ｖppを高電圧にする時は、信号ＳＶＰＰＢが“０”になってノード７２のレベルが“０”から“１”になり、信号ＡＬのレベルが“０”に保たれる。
【００５３】
アドレスラッチ状態は信号バーＷＥの１段目のパルスの立ち上がりで行い、２段目からは信号バーＷＥの立ち下がりで行っている。現在、コマンド方式を用いて書き込み、消去を行うフラッシュＥ2 ＰＲＯＭでは、信号バーＷＥの２段目のパルスの立ち下がりでラッチを行っており、データ書き換え時は正しいアドレスラッチが行なえる。
【００５４】
なお、Ｖppパルス発生回路は図２５に示すような構成としても良い。この場合Ｖppが０Ｖから所定の高電位まで上昇した時に単パルスＲＳＴＡＬが出力される。
【００５５】
以上説明したように本実施例によれば、電圧Ｖppを高電圧に設定した後でも、コマンド入力をする前は、通常のランダム読み出しが可能となる。
【００５６】
次に第３の発明による不揮発性半導体記憶装置の一実施例の構成を図９に示す。この実施例の記憶装置は、ＣＥバッファ９１と、ＯＥバッファ９２と、リードモード認識回路９３と、アドレスラッチパルス発生回路９４と、アドレスバッファ９５とを有し、信号バーＣＥとバーＯＥのタイミングをリードモード認識回路９３でコマンド書き込みモードか読み出しモードかを判断し、アドレスラッチパルス発生回路にフィードバックをかけてアドレスラッチするかしないかを決定している。
【００５７】
この実施例のリードモード認識回路９３の具体例を図１０に示し、アドレスラッチパルス発生回路９４の具体例を図１１に示し、アドレスバッファ９５の具体例を図１２に示し、実施例の動作を図１３のタイミングチャートに示す。アドレスをラッチするパルスは２つの信号ＡＬＳ１Ｂ、ＡＬＳ２Ｂからなり、信号ＡＬＳ１ＢはバーＣＥの立ち下がり時に、信号ＡＬＳ２ＢはバーＣＥの立ち上がり時にパルスとなる。更にコマンド書き込みモードが読み出しモードかはリードモード認識回路９３で判断し、コマンド書き込みモードの時は認識回路の出力信号ＣＲは“Ｌ”のまま、読みだしモード時は“Ｈ”となる。アドレスバッファ９５は２段階のラッチ回路を有し、１段目のラッチ回路は信号ＡＬＳ１Ｂで、２段目のラッチ回路は信号ＡＬＳ２Ｂで動作し、アドレスをラッチする。
【００５８】
図１３に示すように信号バーＣＥの立ち下がりだけではコマンド書き込みモードか読み出しモードが判らないときはバーＣＥの立ち下がり時に信号ＡＬＳ１Ｂがパルスとなり、アドレスバッファの１段目のラッチ動作まで行う。その後、信号バーＣＥが立ち上がるまでバーＯＥが“Ｈ”であればコマンド書き込みモードと判断し、バーＣＥの立ち上がり時に信号ＡＬＳ２Ｂがパルスとなり、信号バーＣＥの立ち下がり時のアドレスを図示しないデコーダに転送する。又、信号バーＣＥが立ち上がる前にバーＯＥが“０”になれば読み出しモードと判定し、信号ＡＬＳ２Ｂはパルスとならず、アドレスは従来のまま保持される。
【００５９】
なお、電圧Ｖppを高電圧に設定した時点でもアドレスラッチ解除状態になるようにＶppパルス発生回路の出力信号ＲＳＴＡＬで制限する場合のアドレスラッチパルス発生回路の具体例を図４に示す。
【００６０】
以上説明したように、２つの制御信号バーＣＥ、バーＯＥだけを用いてモード切り換えを行っても誤動作は生じない。
【００６１】
【発明の効果】
本発明によれば、電圧Ｖppを高電圧に設定した後でも、コマンド入力をする前は通常のランダム読み出しができる。
【図面の簡単な説明】
【図１】第１の発明の一実施例の構成を示すブロック図。
【図２】図１に示す実施例の主構成要素の詳細を示すブロック図。
【図３】図２に示す実施例の動作を説明するタイミングチャート。
【図４】図２に示す実施例の動作を説明するタイミングチャート。
【図５】図２に示す実施例の効果を説明するタイミングチャート。
【図６】第２の発明の一実施例の構成を示すブロック図。
【図７】図６に示す実施例にかかるＶppパルス発生回路およびアドレスラッチパルス発生回路の具体例を示す回路図。
【図８】図６に示す実施例の動作を説明するタイミングチャート。
【図９】第３の発明の一実施例の構成を示すブロック図。
【図１０】図９に示す実施例にかかるリードモード認識回路の一具体例を示す回路図。
【図１１】図９に示す実施例にかかるアドレスラッチパルス発生回路の一具体例を示す回路図。
【図１２】図９に示す実施例にかかるアドレスバッファの一具体例を示す回路図。
【図１３】図９に示す実施例の動作を説明するタイミングチャート。
【図１４】アドレスラッチパルス発生回路の他の具体例を示す回路図。
【図１５】従来の記憶装置の動作を説明するタイミングチャート。
【図１６】従来の記憶装置の動作を説明するタイミングチャート。
【図１７】フラッシュ型Ｅ2 ＰＲＯＭの全ビット消去動作を説明するフローチャート。
【図１８】従来の他の記憶装置の構成を示すブロック図。
【図１９】図１８に示す記憶装置の動作を説明するタイミングチャート。
【図２０】図１８に示す記憶装置の主構成要素の詳細を示す回路図。
【図２１】図１８に示す記憶装置の問題点を説明するタイミングチャート。
【図２２】図１８に示す記憶装置の問題点を説明するタイミングチャート。
【図２３】従来の更に他の記憶装置の動作を説明するタイミングチャート。
【図２４】従来の更に他の記憶装置の動作を説明するタイミングチャート。
【図２５】第２の発明にかかるＶppパルス発生回路の他の具体例を示す回路図。
【符号の説明】
１  制御回路
２  Ｉ／Ｏバッファ
３  コマンドレジスタ回路
４  オートモード制御回路
５  書き込み／消去制御回路
６  消去回路
７  ロウデコーダ
８  センスアンプ
９  カラムゲート
１０  メモリセルアレイ
【図１】
0003665779.tif 000002
【図２】
0003665779.tif 000003
【図３】
0003665779.tif 000004
【図４】
0003665779.tif 000005
【図５】
0003665779.tif 000006
【図６】
0003665779.tif 000007
【図７】
0003665779.tif 000008
【図８】
0003665779.tif 000009
【図９】
0003665779.tif 000010
【図１０】
0003665779.tif 000011
【図１１】
0003665779.tif 000012
【図１２】
0003665779.tif 000013
【図１３】
0003665779.tif 000014
【図１４】
0003665779.tif 000015
【図１５】
0003665779.tif 000016
【図１６】
0003665779.tif 000017
【図１７】
0003665779.tif 000018
【図１８】
0003665779.tif 000019
【図１９】
0003665779.tif 000020
【図２０】
0003665779.tif 000021
【図２１】
0003665779.tif 000022
【図２２】
0003665779.tif 000023
【図２３】
0003665779.tif 000024
【図２４】
0003665779.tif 000025
【図２５】
0003665779.tif 000026