(57)【要約】【課題】不揮発性メモリにおいて、メモリ内部処理と外部からのコマンド入力が競合した場合に、メモリ内部処理又はコマンド処理のいずれの処理において生じ得る不具合を解消することができる技術を提供する。【解決手段】コマンドデコーダ内に、外部から入力されたコマンド（ＤＩＢＡＣ）を保持するラッチ４０３と、ラッチ４０３の出力をデコードするデコード論理組み合わせ回路４０４と、ＲＢ生成部２０４からのレディ／ビジー信号を保持するラッチ４０１と、デコード論理組み合わせ回路４０４の出力とラッチ４０１の出力とを入力するＡＮＤゲート４０５とを設ける。【選択図】図４
2006351146.tif 000002
【特許請求の範囲】
【請求項１】
外部から入力されたコマンドをデコード回路にてデコードしてＣＰＵの制御を行うコマンドデコーダを有し、
前記コマンドデコーダは、メモリ内部状態とコマンド状態との判定を前記デコード回路の終段にて行う手段を有することを特徴とする不揮発性メモリ。
【請求項２】
外部から入力されたコマンドをデコードしてＣＰＵの制御を行うコマンドデコーダを有し、
前記コマンドデコーダは、
外部から入力されたコマンドを保持する第１の保持回路と、
前記第１の保持回路の出力をデコードするデコード回路と、
メモリ内部状態を示す信号を保持する第２の保持回路と、
前記デコード回路の出力と前記第２の保持回路の出力とを入力する論理積回路とを有することを特徴とする不揮発性メモリ。
【請求項３】
請求項２記載の不揮発性メモリにおいて、
前記メモリ内部状態を示す信号は、レディ／ビジー信号であることを特徴とする不揮発性メモリ。
【請求項４】
請求項２記載の不揮発性メモリにおいて、
前記コマンドと前記メモリ内部状態を示す信号とは、非同期であることを特徴とする不揮発性メモリ。
【請求項５】
請求項４記載の不揮発性メモリにおいて、
前記コマンドはライトイネーブル系の信号であり、前記メモリ内部状態を示す信号はシステムクロック系の信号であることを特徴とする不揮発性メモリ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性メモリに関し、特に不揮発性メモリのコマンドデコーダ部分の構成に適用して有効な技術に関する。
【背景技術】
【０００２】
一般に、不揮発性メモリは、外部から入力されたコマンドを受け取りデコードするためコマンドデコーダを有している。
【０００３】
本発明者が検討した技術として、不揮発性メモリのコマンドデコーダ部分の構成においては、例えば、特許文献１又は特許文献２の技術が考えられる。
【０００４】
特許文献１には、デコーダでデコードしたライトステータスマシンからの信号によりステータスレジスタ（マスタースレーブ構成）を制御し、レディ／ビジー信号をセットして、外部へ出力するフラッシュメモリが記載されている。
【０００５】
特許文献２には、アクセスタイムの短縮のために、１ページ分のデータのうち読み出し先頭カラム番地のデータをラッチ回路に転送した後にレディ／ビジー信号を切り換えるようにしたＥＥＰＲＯＭが記載されている。  
【特許文献１】特開２００４−３４８８０９号公報
【特許文献２】特開２００２−９３１７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、前記のような不揮発性メモリのコマンドデコーダ部分の技術について、本発明者が検討した結果、以下のようなことが明らかとなった。
【０００７】
例えば、従来の不揮発性メモリのコマンドデコーダは、非同期で動作する論理が混在していたため、メモリ内部処理と外部からのコマンド入力が競合した場合に、メモリ内部処理又はコマンド処理のいずれの処理において、メタステーブルとなる不具合が発生し得る。
【０００８】
そこで、本発明の目的は、不揮発性メモリにおいて、メモリ内部処理と外部からのコマンド入力が競合した場合に、メモリ内部処理又はコマンド処理のいずれの処理において生じ得る不具合を解消することができる技術を提供することにある。
【０００９】
本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１０】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１１】
すなわち、本発明による不揮発性メモリは、メモリ内部処理と外部からのコマンド入力が競合した場合に、メモリ内部処理又はコマンド処理のいずれかの処理において生じ得る不具合を対策するために、メモリ内部状態とコマンド入力状態との判定をデコード回路の終段で行うようにしたものである。
【発明の効果】
【００１２】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、以下のとおりである。
【００１３】
不揮発性メモリにおいて、メモリ内部と外部からのコマンド入力が競合した場合に、メモリ内部処理又はコマンド処理のいずれかの処理において生じ得る不具合が解消する。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１５】
図１は本発明の一実施の形態に係る不揮発性メモリの全体構成を示すブロック図である。まず、図１により、本実施の形態に係る不揮発性メモリの全体構成の一例を説明する。
【００１６】
本実施の形態に係る不揮発性メモリは、例えば８Ｇビットのフラッシュメモリとされる。このフラッシュメモリは、メモリマット１、メインデコーダ／ゲートデコーダ２、サブデコーダ３、センスラッチ回路４、データラッチ回路５、メインアンプ６、入力データ演算回路７、入出力バッファ８、制御信号入力バッファ９、データ入出力制御回路１０、レディ／ビジー回路１１、システムクロック回路１２、ステイタスレジスタテスト系回路１３、コマンドデコーダ（ＣＯＭＤＥＣ）１４、ＲＯＭ制御系回路１５、ＲＯＭ１６、ＲＯＭデコーダ１７、ＣＰＵ１８、電源制御回路１９、電源切り換え回路２０、チャージポンプ降圧系回路２１、基準電源２２、アドレスカウンタ２３、救済系回路２４、アドレスジェネレータ２５、冗長ヒューズ・トリミングヒューズ２６などの一般的な構成からなり、周知の半導体製造技術によって１個の半導体チップ上に形成されている。
【００１７】
このフラッシュメモリは、外部端子を介して制御信号入力バッファ９にチップイネーブル信号／ＣＥ、リセット信号／ＲＥＳ、コマンドイネーブル信号ＣＬＥ、アドレスイネーブル信号ＡＬＥなどの制御信号が入力され、またデータ入出力制御回路１０に書き込みクロック信号／ＷＥ及び読出しクロック信号／ＲＥが入力され、これらの信号に基づいて内部回路制御のためのコマンド、タイミング信号が発生される。また、レディ／ビジー回路１１から外部端子を介してレディ／ビジー信号Ｒ／Ｂが出力されている。
【００１８】
このフラッシュメモリにおいて、メモリマット１は、ワード線ＷＬとビット線ＢＬとの交点に配置される複数のメモリセルＭＣからなり、左右および上下に４つに分割されている。このメモリマット１内の任意のメモリセルＭＣが、メインデコーダ／ゲートデコーダ２およびサブデコーダ３により選択され、この選択されたメモリセルＭＣに対して、センスラッチ回路４、データラッチ回路５、メインアンプ６、入力データ演算回路７および入出力バッファ８を介してデータの書き込み／読み出しが行われる。
【００１９】
以上のように構成されるフラッシュメモリにおいて、メモリセルＭＣの書き込み及び消去のためメモリセルに印加される電圧は、電源制御回路１９、電源切り換え回路２０、チャージポンプ降圧系回路２１、基準電源２２などから供給される。
【００２０】
図２は本発明の一実施の形態に係る不揮発性メモリにおいて、コマンドデコーダ（ＣＯＭＤＥＣ）１４の構成を示すブロック図である。図２により、本実施の形態によるＣＯＭＤＥＣ１４の構成の一例を説明する。本実施の形態に係るコマンドデコーダ１４は、例えば、ＥＸＩＦ部２０１、状態制御部２０２、ＲＥＳＥＴ（リセット）生成部２０３などから構成されている。また、状態制御部２０２は、ＲＢ（レディ／ビジー）生成部２０４、ＣＰＵコマンド制御部２０５、アドレスコマンド制御部２０６、ＳＲ（ステータスレジスタ）リード制御部２０７などからなる。ＣＯＭＤＥＣ１４には、ＣＯＭＤＥＣ動作クロックＣＬＫＷＥ４，ＢＸＬＷＥが入力されている。ＥＸＩＦ部２０１は、信号ＢＸＨＡＬＥ，ＢＸＨＣＬＥ，ＤＩＢＡＣ，ＢＸＬＷＰ，ＢＸＨＰＲＥを入力し、信号ＣＸＨＣＬＥ，ＣＸＨＡＬＥ，ＣＩＢＡＣを出力している。また、状態制御部２０２内のＣＰＵコマンド制御部２０５、アドレスコマンド制御部２０６、ＳＲリード制御部２０７に、ＥＸＩＦ部２０１から信号が入力し、ＲＢ生成部２０４からＥＸＩＦ部２０１に信号が入力している。また、ＲＢ生成部２０４から信号Ｃ４ＢＵＳＹ他が出力し、ＲＢ生成部２０４に信号ｍ２ｈｃｋｃｔｌが入力している。ＣＰＵコマンド制御部２０５から信号ｃ＿ｈｃｐｕｅｎ他が出力し、ＣＰＵコマンド制御部２０５に信号ｍ２ｈｃｐｕｅｎｃｌｒ他が入力している。アドレスコマンド制御部２０６からは、信号ＣＸＨＹＬＤ１他が出力している。ＳＲリード制御部２０７からは、信号Ｃ４ＢＳＴＲＤ他が出力している。また、ＲＥＳＥＴ生成部２０３に信号ＢＸＨＩＮＴＢＬ，ＢＸＬＲＥＳ３が入力し、ＲＥＳＥＴ生成部２０３からＣＯＭＤＥＣ内部リセット（ｒｅｓｅｔｐ）信号、信号ＣＸＨＲＥＳが出力している。
【００２１】
ＣＯＭＤＥＣ１４の主な機能は、外部から入力されたコマンドを受け取り、デコードすることである。また、デコードした結果から、内部状態の生成、ＣＰＵ１８及び他の制御ブロックに対して制御信号を出力する。
【００２２】
具体的には、ＣＯＭＤＥＣ１４は、以下の機能を有する。すなわち、デコード機能として、（１）外部から入力されるコマンドをデコードしてＣＰＵ１８に動作を指示、（２）外部から入力されるコマンドをデコードしてアドレスラッチを指示、（３）ステータスレジスタ（ＳＲ）に対してステータスリード（ＳｔａｔｕｓＲｅａｄ）イネーブル信号を出力（ステータスリードモード）、（４）ステータスレジスタに対してＩＤリード（ＩＤＲｅａｄ）イネーブル信号を出力（ＩＤリードモード）、（５）コマンドＦＦｈアサートによるリセット処理、（６）スーパアンド（ＳｕｐｅｒＡＮＤ）対応コマンドのデコートである。また、状態生成機能として、（７）システムクロック（ＳＣＬＫ）の動作開始トリガ生成、（８）通常モードとテストモード遷移の管理、（９）Ｒ／Ｂ（Ｒｅａｄｙ／Ｂｕｓｙ）信号出力、（１０）非同期リセット信号の生成、（１１）ＣＰＵ１８に対するキャッシュ（Ｃａｃｈｅ）モード信号アサートである。また、制御機能として、（１２）テストモード時のモードジレスタ設定指示、（１３）ＣＰＵ１８に対するイネーブル信号出力、（１４）ＳＲＡＭに対する書き込みイネーブル信号のアサート、（１５）ＳＲＡＭに対するクリア信号のアサート、（１６）ＳＲＡＭに対する読み出しイネーブル信号のアサートである。また、その他の機能として、（１７）パワーオンリード（ＰｏｗｅｒＯｎＲｅａｄ）のイネーブル、（１８）ＡＬＥ、ＣＬＥ等外部端子入力信号のラッチ（タイミング同期化）、（１９）キャシュ（Ｃａｃｈｅ）モード時のコマンドバッファリング、（２０）ダミービジー（ＤｕｍｍｙＢｕｓｙ）カウンタ、（２１）リセット（端子ＲＥＳＢ，ＩＮＴＢ）のマスク論理、（２２）ブレーク（Ｂｒｅａｋ）モード時のデータバッファリングである。
【００２３】
図２に示すように、ＣＯＭＤＥＣ１４には、ＥＸＩＦ部２０１、状態制御部２０２、ＲＥＳＥＴ生成部２０３の３つの機能ブロックがある。
【００２４】
ＥＸＩＦ部２０１は、外部入力インタフェースであり、信号ＢＸＨＡＬＥ，ＢＸＨＣＬＥ，ＤＩＢＡＣを信号ＢＸＬＷＥに同期させる。また、信号ＢＸＨＡＬＥ，ＢＸＨＣＬＥの状態から、コマンド受け取り状態、アドレス受け取り状態、テストモード遷移状態等の状態を示す信号を生成する。また、コマンドの保持も行う。
【００２５】
状態制御部２０２は、コマンドをデコードし、ＣＰＵ１８及び周辺論理部への制御信号を生成する。また、ＣＯＭＤＥＣ１４の内部状態（フラグ）の管理も行う。
【００２６】
ＲＥＳＥＴ生成部２０３は、ＣＰＵ１８及び周辺論理部へのグローバルリセットを生成し、ＣＯＭＤＥＣ１４内部のリセット信号を生成する。
【００２７】
図３に、状態制御部２０２におけるコマンドデコード部の構成を示す。図３において、該当コマンド欄のＡ，Ｂ，Ｃ，Ｄ，Ｅ，Ｆ，Ｇ，Ｈ，Ｊ，Ｋは、コマンドの種類を示す。すなわち、ＡはＣＰＵ動作コマンド、Ｂはアドレス制御コマンド、Ｃはステータスリードコマンド、ＤはＩＤリードコマンド、Ｅはダミーコマンド、ＦはＥ０ｈコマンド、Ｇはリセットコマンド、Ｈはビジーチェックコマンド、Ｊはテストモード専用コマンド、Ｋはテストモード遷移コマンドである。
【００２８】
このコマンドデコード部の特長は以下のとおりである。（１）コマンドの種類によって取り込む回数及び構成を変えるため、コマンドの特性に合ったデコードが可能になる。（２）取り込んだコマンドのデコード結果は、フリップフロップ（Ｆ／Ｆ）出力を基本とするため、出力信号のハザード発生の心配が低減する。（３）各デコード部ごとにブロック化するため、ＲＴＬの可視性が向上する。
【００２９】
図４は、本実施の形態に係る不揮発性メモリにおいて、コマンドデコーダ（ＣＯＭＤＥＣ）１４の詳細構成を示す論理回路図である。なお、図４では、ＥＸＩＦ部２０１、ＲＢ生成部２０４、ＣＰＵコマンド制御部２０５のみを図示し、アドレスコマンド制御部２０６、ＳＲリード制御部２０７、ＲＥＳＥＴ生成部２０３を省略している。
【００３０】
図４に示すように、ＥＸＩＦ部２０１は、ＢＸＬＷＥ同期ラッチ４０１，４０３などからなる。ＣＰＵコマンド制御部２０５は、ＣＬＫＷＥ４同期Ｆ／Ｆ４０２、デコード論理組み合わせ回路４０４、ＡＮＤゲート４０５などからなる。ＲＢ生成部２０４は、組み合わせ回路４０６などからなる。そして、ＥＸＩＦ部２０１において、信号ＤＩＢＡＣがＢＸＬＷＥ同期ラッチ４０３に入力し、ＲＢ生成部２０４からの内部状態を示す信号Ｒ／Ｂ（レディ／ビジー）がＢＸＬＷＥ同期ラッチ４０１に入力している。ＣＰＵコマンド制御部２０５においては、ＥＸＩＦ部２０１からのＢＸＬＷＥ同期ラッチ４０３を介した信号ＤＩＢＡＣがデコード論理組み合わせ回路４０４に入力し、その出力がＡＮＤゲート４０５に入力している。また、ＢＸＬＷＥ同期ラッチ４０１を介した信号Ｒ／ＢがＡＮＤゲート４０５に入力している。すなわち、外部のコマンド入力信号ＤＩＢＡＣを取り込み、デコード論理組み合わせ回路４０４でコマンド入力信号をデコードし、その結果であるコマンド状態とメモリ内部状態を示す信号Ｒ／ＢとをＡＮＤゲート４０５に入力して判定を行っている。このように、メモリ内部状態（信号Ｒ／Ｂ等）とコマンド状態（信号ＤＩＢＡＣ等）との判定をデコード論理組み合わせ回路４０４の終段で行うことにより、非同期信号の競合を起因とするメタステーブルを回避することができる。本実施の形態では、ＣＰＵコマンド制御部２０５並びにＲＢ生成部２０４を例に説明したが、これに限定されるものではなく、外部信号と内部信号が非同期で競合する他の回路にも適用できる。
【００３１】
次に、図５により、以上述べてきたメタステーブル対策について、詳細に説明する。図５は、コマンドデコータにおけるＣＯＭＤＥＣフラグ論理の概略図である。図５（ａ）は従来の回路を示し、図５（ｂ）は本実施の形態の回路を示す。本実施の形態を分かりやすくするために、従来の回路と比較して説明する。
【００３２】
図５（ａ）に示すように従来の回路では、デコード論理組み合わせ回路４０４に、ＷＥ系信号とＳＣＬＫ系信号の異なるクロック系の信号が入力していた。そのため、ラッチ４０３において、すべてのフラグがメタステーブル状態になる可能性があった。すなわち、従来のＣＯＭＤＥＣのフラグ論理回路では、非同期クロック（システムクロック（ＳＣＬＫ）とＷＥクロック）で動作する論理が混在していた。
【００３３】
一方、図５（ｂ）に示すように本実施の形態による回路では、デコード論理組み合わせ回路４０４に、ＷＥ系信号の同クロック系の信号のみ入力することとした。このようにすることにより、Ｆ／Ｆ４０２において、メタステーブル状態となることがなくなる。Ｆ／Ｆ４０２ａにおいては、入力段にあるＡＮＤゲート４０５までのパスディレイでメタステーブルの抑制を行い、万が一、メタステーブルが発生してもこの１ビットだけで済む。すなわち、本実施の形態のＣＯＭＤＥＣ１４では、非同期で動作する論理を特定フラグに限定し、メタステーブル発生の低減を図った。なお、ＣＯＭＤＥＣ１４内部では、データシートで示した外部仕様を満たす外部入力である場合、メタステーブルが発生することはない。
【００３４】
上記で示したメタステーブル対策は、以下の条件でＣＰＵ動作コマンドが入力された場合に有効である。なお、図中のＳＣＬＫ系信号はこの場合、外部端子の信号Ｒ／Ｂに対応する。
【００３５】
（１）信号Ｒ／Ｂがビジーを示している。
【００３６】
（２）ビジー中に入力できないコマンドを入力。
【００３７】
（３）コマンド入力とビジーからレディへの遷移とが重なる。
【００３８】
上記対策を実施したフラグは、以下に示す５箇所のフラグである。
【００３９】
（１）ＣＰＵイネーブルフラグ（ｃｐｕｅｎ０、ｃｐｕｅｎ１）
（２）キャッシュプログラムフラグ（ｃａｃｈｅｐｒｇ）
（３）キャッシュリードフラグ（ｃｈａｃｈｅｒｄ）
（４）ＳＲＡＭビジーフラグ（ｒｄ＿ｐｒｇ＿ｃｏｍ０、ｒｄ＿ｐｒｇ＿ｃｏｍ１）
（５）Ｃ４ＢＣＯＤＥ（ｄｆａｃｏｍ＿３ａ、ｄｆａｃｏｍ＿３ｃ）
また、ダミービジー及びイレースオペレーション以外のビジー期間は、アドレス制御コマンドの入力も禁止している。内部的にダミービジー及びイレースオペレーション以外のビジー（ＴｒｕｅＢｕｓｙ）期間は、ＳＲＡＭビジーと等価であるため、アドレス制御コマンドの図５（ｂ）で示したメタステーブル対策は、ＳＣＬＫ系信号としてＳＲＡＭビジー信号を使用し、以下のフラグで実施している。
【００４０】
（６）アドレスコマンドセットフラグ（ａｄｃｏｍｓｅｔ）
なお、ＳＲＡＭビジーフラグは、ＷＥ系クロックで１にセットするが、クリアはＣＰＵからアサートされる信号（ｍ２ｈｃｐｕｅｎｄ）で非同期リセットする仕様であるため、０クリア側のタイミングはＳＣＬＫ同期になる。
【００４１】
次に、本実施の形態に係るＣＯＭＤＥＣの非同期リセット対策について説明する。図６は、本実施の形態に係るＣＯＭＤＥＣの非同期リセット論理を示す概略図である。図６に示すように、本実施の形態に係るＣＯＭＤＥＣでは、非同期リセットは外部端子リセット（ＢＸＬＲＥＳ、ＢＸＨＩＮＴＢＬ）とＣＰＵからのアサート信号の２系統しか持たない。非同期リセット使用は極力避けたいが、ＷＥ系クロックはコマンド入力等ユーザが必要な時しかクロッキングしないため、ＷＥ系信号による同期リセットだけではＣＯＭＤＥＣ自身で０クリアすることが困難なフラグが存在する。そのため、限られたフラグに限り、非同期リセットを用いることとする。
【００４２】
図７に、ＣＰＵアサートのリセット信号で非同期リセットするフラグを示す。なお、ＣＰＵからアサートされるリセット信号は４種類（ｍ２ｈｄｂｓｙｆｕｌｌ、ｍ２ｈｃｐｕｅｎｃｌｒ、ｍ２ｈｄｉｎｏｋ）である。
【００４３】
図６に示すように、本実施の形態に係るＣＯＭＤＥＣでは、非同期リセットは外部端子リセット以外はＣＰＵアサートの信号のみとした。しかし、このＣＰＵアサートのリセット信号とＷＥ系クロックとは非同期であるため、１つのＦ／Ｆに入力されるデータのセットタイミングとリセットタイミングとが競合する場合が考えられる。このとき、Ｆ／Ｆ６０１の出力信号にはメタステーブルが発生する。こういった不具合を回避するために、上記のような非同期信号が競合する可能性のあるフラグは、同機能で互いに排他である２つのフラグを持たせることとした。図８に、非同期信号競合対策論理の概略図を示す。
【００４４】
図８において、イネーブル＝１かつ選択信号＝０のとき、データインとリセット信号が競合した場合を考える。イネーブル＝１かつ選択信号＝０の条件により、データイン＝１であればフラグ０８０１に１がセットされる。一方、選択信号＝０の条件（イネーブルはＤｏｎ’ｔ  ｃａｒｅ）で、リセット信号＝１であればフラグ１８０２が０にリセットされる。
【００４５】
また、イネーブル＝１かつ選択信号＝１のとき、データインとリセット信号が競合した場合では、イネーブル＝１かつ選択信号＝１の条件により、データイン＝１であれば。フラグ１８０２に１がセットされる。一方、選択信号＝０の条件（イネーブルはＤｏｎ’ｔ  ｃａｒｅ）で、リセット信号＝１であればフラグ０８０１が０にリセットされる。
【００４６】
すなわち、非同期であるデータインとリセット信号が競合した場合、選択信号の値により活性化するフラグは排他的に設計しており、競合によるメタステーブル発生は考えられない。なお、選択信号もＳＣＬＫ同期の信号であるが、この信号はＷＥとの競合は絶対に起こらない仕様で設計している。また、選択されていない側のデータイン、リセット信号のそれぞれの出力は０である。
【００４７】
図９に、図８で示した論理構成のフラグ（２種類）を示す。なお、図９において、クリア条件は、図に示した条件のほか、ダミービジーカウントフル（ｍ２ｈｄｂｓｙｆｕｌｌ）の条件も組み込んでいる。
【００４８】
図１０に、上記フラグの一例として、ｃｐｕｅｎａｂｌｅ（ｃｐｕｅｎ０、ｃｐｕｅｎ１）フラグのセット／リセットのタイミングチャートを示す。信号ＤＩＢＡＣのコマンド入力により、１００１で、選択信号ｍ２ｈｃｏｍｓｅｌ＝０であるので、内部フラグｃｐｕｅｎ０が１にセットされる。その後、信号Ｒｅａｄｙ／Ｂｕｓｙ＝０でビジーなので、コマンド入力では内部状態は変化しない。１００２で、ＣＰＵがＲＯＭ処理で選択信号ｍ２ｈｃｏｍｓｅｌを反転する。そして１００３では、ビジー中なので、コマンド入力によるフラグセットは起こらない。つまり、メタステーブルの心配はない。１００４で、選択信号ｍ２ｈｃｏｍｓｅｌ＝１においてリセット信号ｍ２ｈｃｐｕｅｎｃｌｒをアサートする。そして、内部フラグｃｐｕｅｎ０が０にクリアされる。１００５で、選択信号ｍ２ｈｃｏｍｓｅｌ＝１においてコマンド入力により、内部フラグｃｐｕｅｎ１が１にセットされる。１００６で、選択信号ｍ２ｈｃｏｍｓｅｌ＝０においてリセット信号ｍ２ｈｃｐｕｅｎｃｌｒをアサートする。そして、内部フラグｃｐｕｅｎ１が０にクリアされる。
【００４９】
図１１に、上記フラグの一例として、キャッシュモードでのｃｐｕｅｎａｂｌｅ（ｃｐｕｅｎ０、ｃｐｕｅｎ１）フラグのセット／リセットが競合する場合のタイミングチャートを示す。なお、図１１において、期間１１０６は、ＣＰＵがコマンドＣＯＭ１によるＲＯＭ処理中を示し、期間１１０７は、ＣＰＵがコマンドＣＯＭ２によるＲＯＭ処理中を示す。信号ＤＩＢＡＣのコマンドＣＯＭ１入力により、１１０１で、選択信号ｍ２ｈｃｏｍｓｅｌ＝０であるので、内部フラグｃｐｕｅｎ０が１にセットされる。その後、１１０２で、ビジー状態を信号ＢＸＬＷＥの立ち上がりエッジでサンプリングする。１１０３で、選択信号ｍ２ｈｃｏｍｓｅｌ＝１においてリセット信号ｍ２ｈｃｐｕｅｎｃｌｒをアサートする。そして、内部フラグｃｐｕｅｎ０が０にクリアされる。１１０４で、レディとしてコマンドを受けた場合、タイミング的にはセットとクリアの競合になるが、選択信号ｍ２ｈｃｏｍｓｅｌ＝１のため、セットはｃｐｕｅｎ１側になる。リセット信号ｍ２ｈｃｐｕｅｎｃｌｒのクリアが有効なのは、ｃｐｕｅｎ０側になるためである。つまり、同一フラグでの競合は発生しない。１１０８において、サンプリングタイミングで、ビジーの場合はフラグをセットせず、レディの場合はフラグをセットする。１１０５で、選択信号ｍ２ｈｃｏｍｓｅｌ＝０においてリセット信号ｍ２ｈｃｐｕｅｎｃｌｒをアサートすると、ｃｐｕｅｎ１が０にクリアされる。
【００５０】
次に、非同期信号競合対策論理のその他の機能を説明する。
【００５１】
ＣＯＭＤＥＣが外部からＣＰＵ動作コマンドを受け取った場合、必ず外部はビジー状態になる仕様である。この時、内部では、ＳＣＬＫを発振させることで、ＣＰＵのＲＯＭ処理が開始する。一方、このビジー状態を解除するのはＣＰＵのＲＯＭ処理によるものである。ここで、ＳＣＬＫは必ず動作するものとして、何らかの理由（例えばＲＯＭリードが正常にできない等）でＣＰＵが動作しなかった場合を考える。この場合、ＣＰＵが異常動作、すなわちＲＯＭ処理ができないためビジー状態から復帰できないことになる。こういった不具合（起動不能によるＢｕｓｙ Ｓｔｕｃｋ）を回避するため、競合対策論理にダミービジーカウンタフルのリセット（ｍ２ｈｄｂｓｙｆｕｌｌ）条件を追加した。なお、ＲＯＭ処理の途中でＣＰＵが暴走した（起動不能ではない）場合は、ＦＦｈコマンドを入力することで復帰する仕様としている。
【００５２】
図１２に、ｃｐｕｅｎａｂｌｅ（ｃｐｕｅｎ０、ｃｐｕｅｎ１）フラグの非同期リセット信号生成論理の概略図を示す。また、図１３に、ダミービジーカウントフル（ｍ２ｈｄｂｓｙｆｕｌｌ）によるｃｐｕｅｎａｂｌｅフラグのリセットのタイミングチャートを示す。図１３（ａ）はＣＰＵ正常動作時を示し。図１３（ｂ）はＣＰＵ異常動作時を示す。
【００５３】
図１３（ａ）において、１３０１で、ＣＰＵは正常動作であるため、選択信号ｍ２ｈｃｏｍｓｅｌが反転する。１３０２で、選択信号ｍ２ｈｃｏｍｓｅｌ＝１でｍ２ｈｄｂｓｙｆｕｌｌがアサートされ、ｃｐｕｅｎ１側がクリアされる。この時、ｃｐｕｅｎ１は１にセットされていない側なので影響がない。
【００５４】
図１３（ｂ）において、１３０３で、ＣＰＵは異常動作であるため、選択信号ｍ２ｈｃｏｍｓｅｌが反転しない。１３０４で、選択信号ｍ２ｈｃｏｍｓｅｌ＝０でｍ２ｈｄｂｓｙｆｕｌｌがアサートされ、ｃｐｕｅｎ０側がクリアされる。この時、ｃｐｕｅｎ０がクリアされるので、レディ状態に復帰する。
【００５５】
図１２に示す論理により、ＣＰＵが異常動作した場合も、ビジー状態から復帰することができる。なお、キャッシュモードで２回目以降のコマンド受け付け時は、上記ｍ２ｈｄｂｓｙｆｕｌｌによるｃｐｕｅｎａｂｌｅフラグのクリア論理はマスクする仕様である。これは、２回目を実行している、すなわちＣＰＵは動作しているはず、という判断から決めたものである。
【００５６】
以上、本発明者によってなされた発明をその実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００５７】
本発明は、ＥＥＰＲＯＭ、フラッシュメモリなどの不揮発性メモリについて利用可能である。
【図面の簡単な説明】
【００５８】
【図１】本発明の一実施の形態に係る不揮発性メモリの全体構成を示すブロック図である。
【図２】本発明の一実施の形態に係るコマンドデコーダ（ＣＯＭＤＥＣ）の構成を示すブロック図である。
【図３】本発明の一実施の形態に係るＣＯＭＤＥＣ内の状態制御部におけるコマンドデコード部の構成を示す説明図である。
【図４】本発明の一実施の形態に係るＣＯＭＤＥＣの詳細構成を示す論理回路図である。
【図５】（ａ）は従来のＣＯＭＤＥＣフラグ論理を示す概略図、（ｂ）は本発明の一実施の形態に係るＣＯＭＤＥＣのフラグ論理を示す概略図である。
【図６】本発明の一実施の形態に係るＣＯＭＤＥＣにおいて、非同期リセット論理を示す概略図である。
【図７】本発明の一実施の形態に係るＣＯＭＤＥＣにおいて、非同期リセットフラグを示す説明図である。
【図８】本発明の一実施の形態に係るＣＯＭＤＥＣにおいて、非同期信号競合対策論理を示す概略図である。
【図９】本発明の一実施の形態に係るＣＯＭＤＥＣにおいて、非同期信号競合対策フラグを示す説明図である。
【図１０】本発明の一実施の形態に係るＣＯＭＤＥＣにおいて、ｃｐｕｅｎａｂｌｅフラグのセット／リセットのタイミングを示すタイミングチャートである。
【図１１】本発明の一実施の形態に係るＣＯＭＤＥＣにおいて、キャッシュモードでのｃｐｕｅｎａｂｌｅフラグのセット／リセットのタイミングを示すタイミングチャートである。
【図１２】本発明の一実施の形態に係るＣＯＭＤＥＣにおいて、ｃｐｕｅｎａｂｌｅフラグの非同期リセット信号生成論理を示す概略図である。
【図１３】（ａ），（ｂ）は、本発明の一実施の形態に係るＣＯＭＤＥＣにおいて、ダミービジーカウントフル（ｍ２ｈｄｂｓｙｆｕｌｌ）によるｃｐｕｅｎａｂｌｅフラグのリセットのタイミングを示すタイミングチャートである。
【符号の説明】
【００５９】
１  メモリマット
２  メインデコーダ／ゲートデコーダ
３  サブデコーダ
４  センスラッチ回路
５  データラッチ回路
６  メインアンプ
７  入力データ演算回路
８  入出力バッファ
９  制御信号入力バッファ
１０  データ入出力制御回路
１１  レディ／ビジー回路
１２  システムクロック回路
１３  ステイタスレジスタテスト系回路
１４  コマンドデコーダ（ＣＯＭＤＥＣ）
１５  ＲＯＭ制御系回路
１６  ＲＯＭ
１７  ＲＯＭデコーダ
１８  ＣＰＵ
１９  電源制御回路
２０  電源切り換え回路
２１  チャージポンプ降圧系回路
２２  基準電源
２３  アドレスカウンタ
２４  救済系回路
２５  アドレスジェネレータ
２６  冗長ヒューズ・トリミングヒューズ
２０１  ＥＸＩＦ部
２０２  状態制御部
２０３  ＲＥＳＥＴ生成部
２０４  ＲＢ生成部
２０５  ＣＰＵコマンド制御部
２０６  アドレスコマンド制御部
２０７  ＳＲリード制御部
４０１，４０３  ラッチ
４０２，４０２ａ，６０１，８０１，８０２  Ｆ／Ｆ
４０４  デコード論理組み合わせ回路
４０５  ＡＮＤゲート
４０６  組み合わせ回路
【図１】
2006351146.tif 000003
【図２】
2006351146.tif 000004
【図３】
2006351146.tif 000005
【図４】
2006351146.tif 000006
【図５】
2006351146.tif 000007
【図６】
2006351146.tif 000008
【図７】
2006351146.tif 000009
【図８】
2006351146.tif 000010
【図９】
2006351146.tif 000011
【図１０】
2006351146.tif 000012
【図１１】
2006351146.tif 000013
【図１２】
2006351146.tif 000014
【図１３】
2006351146.tif 000015