(57)【要約】【課題】ホストから供給される電源電圧が不安定な場合であっても、メモリカードのパワーオンリセット処理を確実に行い、信頼性を大幅に向上する。【解決手段】メモリカード１の初期設定において、フラッシュメモリ２に格納されているフラッシュ確認データＦＤを読み出し、そのデータＦＤと予めＲＯＭに格納されている動作確認用データＦＤ１1 とを比較し、異常がなければＲＯＭ４ａに格納された書き込み確認データＦＤ１2 をフラッシュメモリ２に書き込み、そのデータを再び読み出してＲＯＭ４ａの書き込み確認データＦＤ１2 と比較する。これらのデータ比較に異常がなければ、ＣＰＵ４ｃはフラッシュメモリ２が正常と判断する。また、データ比較が異常の場合、ＣＰＵ４ｃはレジスタ５ａにリセット処理異常データを設定し、該コントローラ３をスリープモードにする。この期間にコマンドＣＭＤを受けると再びデータ比較を実行する。【選択図】図１
2008186481.tif 000002
【特許請求の範囲】
【請求項１】
外部より動作電圧が供給され、前記動作電圧の供給開始から一定期間後に一定以上の電圧に上昇するものであり、ある記憶領域に動作確認データが格納された不揮発性半導体メモリと、
前記不揮発性半導体メモリから読み出した前記動作確認データを比較する比較用動作確認データが格納された記憶部と、前記動作電圧の供給開始後の初期設定動作において、前記不揮発性半導体メモリから読み出した前記動作確認データと前記記憶部の比較用動作確認データとを比較し、前記不揮発性半導体メモリの動作確認を行う処理装置とを設け、外部より動作指示信号と前記動作電圧とが供給され、前記動作指示信号に応じて、前記不揮発性半導体メモリにデータの書き込みもしくは読み出しの動作指示を行う制御手段とを備えたことを特徴とするメモリカード。
【請求項２】
請求項１記載のメモリカードにおいて、
前記処理装置は、
前記記憶部に、前記不揮発性半導体メモリに書き込む書き込み確認データを格納し、初期設定動作において、前記不揮発性半導体メモリから読み出した動作確認データと前記記憶部の比較用動作確認データとを比較後に、前記不揮発性半導体メモリに前記書き込み確認データを書き込み、前記不揮発性半導体メモリの前記書き込み確認データを読み出し、その読み出した書き込み確認データと前記記憶部の書き込み確認データとを比較することを特徴とするメモリカード。
【請求項３】
外部より動作電圧が供給され、前記動作電圧の供給開始から一定期間後に一定以上の電圧に上昇する不揮発性半導体メモリと、外部より動作指示信号と前記動作電圧とが供給され、前記動作指示信号に応じて、前記不揮発性半導体メモリに動作指示を行う制御手段とを有したメモリカードであって、
前記不揮発性半導体メモリのある記憶領域には、動作確認データが格納され、
前記制御手段は、
制御プログラムに基づいて所定の処理を行う処理装置と、
前記処理装置を動作させる制御プログラムを格納した不揮発性記憶部と、
入出力データ、および演算データなどを一時的に格納する揮発性記憶部と、
外部から入出力される各種動作を指示するコマンドを受けるとともに、これらの動作に必要なデータの入出力を行うインタフェース論理部とを備え、
前記不揮発性記憶部のある領域には、前記不揮発性半導体メモリから読み出した動作確認データと比較する比較用動作確認データが格納され、前記処理装置は、初期設定動作において、前記不揮発性半導体メモリから読み出した動作確認データと前記不揮発性記憶部の比較用動作確認データとを比較し、前記不揮発性半導体メモリの動作確認を行うことを特徴とするメモリカード。
【請求項４】
請求項３記載のメモリカードにおいて、前記不揮発性記憶部に、前記不揮発性半導体メモリに書き込む、書き込み確認データを格納し、
前記処理装置は、初期設定動作において、前記不揮発性半導体メモリから読み出した動作確認データと前記不揮発性記憶部の比較用動作確認データとを比較した後前記不揮発性半導体メモリに、前記書き込み確認データを書き込み、前記不揮発性半導体メモリの前記書き込み確認データを読み出し、
その読み出した書き込み確認データと前記不揮発性記憶部の書き込み確認データとを比較することにより、前記不揮発性半導体メモリの動作確認を行うことを特徴とするメモリカード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリカードに関し、特に、マルチメディアカードにおける安定動作に適用して有効な技術に関するものである。
【背景技術】
【０００２】
パーソナルコンピュータや多機能端末機などの外部記憶メディアの１つとして、標準化団体であるＭＭＣＡ（ＭｕｌｔｉＭｅｄｉａ  Ｃａｒｄ  Ａｓｓｏｃｉａｔｉｏｎ）が標準化したマルチメディアカードが広く知られており、デジタルビデオカメラの静止画像記録、携帯電話のデータ記録、携帯音楽プレーヤの音楽記録などに用いられている。
【０００３】
マルチメディアカードは、フラッシュメモリ、およびそのフラッシュメモリを制御するコントローラから構成されており、該コントローラには、電源電圧検出回路が設けられている。この電源電圧検出回路は、ホスト機から供給される電源電圧の立ち上がりを検出してリセットする。
【０００４】
本発明者が検討したところによれば、マルチメディアカードは、電源電圧が供給された際に動作を安定化させるため、該マルチメディアカードを初期設定する、いわゆるパワーオンリセット処理が行われる。
【０００５】
このパワーオンリセット処理は、電源電圧検出回路が、ホスト機から供給される電源電圧の立ち上がりを検出してコントローラをリセットした後、該コントローラがフラッシュメモリにアクセスし、ＣＩＤ（Ｃａｒｄ  ＩＤｅｎｔｉｆｉｃａｔｉｏｎ  ｎｕｍｂｅｒ  ｒｅｇｉｓｔｅｒ）／ＣＳＤ（Ｃａｒｄ  Ｓｐｅｃｉｆｉｃ  Ｄａｔａ  ｒｅｇｉｓｔｅｒ）などのシステム領域のデータ読み出しを行い、該フラッシュメモリが動作可能の状態であるか否かを確認する。
【０００６】
なお、この種のＩＣカードについて詳しく述べてある例としては、１９９０年１２月１日、株式会社工業調査会発行、大島雅志（編）、「電子材料」Ｐ２２〜Ｐ２６があり、この文献には、各種のＩＣカードにおける技術動向が記載されている（非特許文献１）。
【非特許文献１】１９９０年１２月１日、株式会社工業調査会発行、大島雅志（編）、「電子材料」Ｐ２２〜Ｐ２６
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところが、上記のようなメモリカードにおけるパワーオンリセット処理技術では、次のような問題点があることが本発明者により見い出された。
【０００８】
一般に、フラッシュメモリの動作電圧は、コントローラの動作電圧よりも高くなっており、該コントローラがフラッシュメモリにアクセスした際に、フラッシュメモリは動作電圧に達していない恐れがある。
【０００９】
よって、コントローラがフラッシュメモリにアクセスした際には、該フラッシュメモリが正常に動作しておらず、前述したＣＩＤ／ＣＳＤなどのシステム領域のデータを読み出すことができなくなり、コントローラがホスト機からのコマンドを全く受け付けない状態に陥ってしまい、ホスト機がマルチメディアカードを認識しなくなってしまうという問題がある。
【００１０】
本発明の目的は、供給される電源電圧が不安定な場合であっても、パワーオンリセット処理を確実に行うことにより、信頼性を大幅に向上させることのできるメモリカードおよびその初期設定方法を提供することにある。
【００１１】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１２】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１３】
すなわち、本発明のメモリカードは、外部より動作電圧が供給され、該動作電圧の供給開始から一定期間後に一定以上の電圧に上昇するものであり、ある記憶領域に動作確認データが格納された不揮発性半導体メモリと、該不揮発性半導体メモリから読み出した動作確認データを比較する比較用動作確認データが格納された記憶部と、動作電圧の供給開始後の初期設定動作において、不揮発性半導体メモリから読み出した動作確認データと記憶部の比較用動作確認データとを比較し、不揮発性半導体メモリの動作確認を行う処理装置とを設け、外部より動作指示信号と動作電圧とが供給され、動作指示信号に応じて、不揮発性半導体メモリにデータの書き込みもしくは読み出しの動作指示を行う制御手段とを備えたものである。
【００１４】
また、本願のその他の発明の概要を簡単に示す。
【００１５】
本発明は、前記処理装置が、記憶部に、不揮発性半導体メモリに書き込む書き込み確認データを格納し、初期設定動作において、不揮発性半導体メモリから読み出した動作確認データと記憶部の比較用動作確認データとを比較後に、不揮発性半導体メモリに書き込み確認データを書き込み、不揮発性半導体メモリの書き込み確認データを読み出し、その読み出した書き込み確認データと記憶部の書き込み確認データとを比較するものである。
【００１６】
さらに、本発明は、外部より動作電圧が供給され、動作電圧の供給開始から一定期間後に一定以上の電圧に上昇する不揮発性半導体メモリと、外部より動作指示信号と動作電圧とが供給され、該動作指示信号に応じて、不揮発性半導体メモリに動作指示を行う制御手段とを有したメモリカードであって、不揮発性半導体メモリのある記憶領域には、動作確認データが格納され、制御手段は、制御プログラムに基づいて所定の処理を行う処理装置と、処理装置を動作させる制御プログラムを格納した不揮発性記憶部と、入出力データ、および演算データなどを一時的に格納する揮発性記憶部と、外部から入出力される各種動作を指示するコマンドを受けるとともに、これらの動作に必要なデータの入出力を行うインタフェース論理部とを備え、不揮発性記憶部のある領域には、不揮発性半導体メモリから読み出した動作確認データと比較する比較用動作確認データが格納され、処理装置は、初期設定動作において、不揮発性半導体メモリから読み出した動作確認データと不揮発性記憶部の比較用動作確認データとを比較し、不揮発性半導体メモリの動作確認を行うものである。
【００１７】
また、本発明は、前記不揮発性記憶部に、不揮発性半導体メモリに書き込む、書き込み確認データを格納し、処理装置は、初期設定動作において、不揮発性半導体メモリから読み出した動作確認データと不揮発性記憶部の比較用動作確認データとを比較した後不揮発性半導体メモリに、書き込み確認データを書き込み、不揮発性半導体メモリの書き込み確認データを読み出し、その読み出した書き込み確認データと不揮発性記憶部の書き込み確認データとを比較することにより、不揮発性半導体メモリの動作確認を行うものである。
【発明の効果】
【００１８】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００１９】
（１）不揮発性半導体メモリと不揮発性記憶部とに予め格納された動作確認データを比較するので、高精度に不揮発性半導体メモリの動作を確認することができる。
【００２０】
（２）また、メモリカードが初期設定されるまで、設定コマンドに応じて初期設定動作を繰り返すので、外部から供給される電源電圧が不安定な場合であっても、メモリカードを確実に初期設定することができる。
【００２１】
（３）上記（１）、（２）により、互換性を高めることができるとともに、メモリカードの信頼性を大幅に向上することができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００２３】
図１は、本発明の一実施の形態によるメモリカードのブロック図、図２は、図１のメモリカードにおけるパワーオンリセット処理のフローチャート、図３は、図１のメモリカードに供給される電源電圧レベルの遷移図、図４は、図１のメモリカードのパワーオンリセット処理における各部の状態遷移を示した説明図、図５は、図１のメモリカードに設けられたフラッシュメモリにフラッシュ確認データを書き込み際のフローチャートである。
【００２４】
本実施の形態において、メモリカード１は、マルチメディアカードからなり、デジタルビデオカメラ、携帯電話、携帯音楽プレーヤやパーソナルコンピュータなどにおけるホスト機の外部記憶メディアとして用いられる。
【００２５】
メモリカード１は、図１に示すように、フラッシュメモリ（不揮発性半導体メモリ）２、ならびにコントローラ３から構成される。フラッシュメモリ２は、電気的にデータの書き換え、消去が可能な不揮発性半導体メモリである。
【００２６】
このフラッシュメモリ２には、パワーオン時において、該フラッシュメモリ２が正常動作状態か否かを確認するフラッシュ確認データ（動作確認データ）ＦＤが予め格納されている。
【００２７】
コントローラ３は、フラッシュメモリ２の制御を司り、フラッシュメモリ２に格納されたプログラムやデータなどを読み出し、所定の処理を行うとともに、データの書き込み動作指示を行う。
【００２８】
このコントローラ３は、制御部（制御手段）４、インタフェース論理部５、電源検出回路６、ＲＡＭ７、クロック生成部８、バッファ９などから構成されている。
【００２９】
制御部４は、コントローラ３のすべての制御を司る。この制御部４には、ＲＯＭ（記憶部、不揮発性記憶部）４ａ、ＲＡＭ（揮発性記憶部）４ｂ、ならびにＣＰＵ（処理装置）４ｃが設けられている。
【００３０】
ＲＯＭ４ａは、読み出し専用メモリなどからなり、ＣＰＵ４ｃを動作させる制御プログラム、ならびに確認用データＦＤ１などが格納されている。このＲＯＭ４ａに格納されている確認用データＦＤ１は、フラッシュメモリ２に格納されたフラッシュ確認データＦＤと同じデータからなる動作確認用データ（比較用動作確認データ）ＦＤ１1 と、パワーオンリセット処理（初期設定）時にフラッシュメモリ２に書き込むデータである書き込み確認データＦＤ１2 とから構成されている。
【００３１】
ＲＡＭ４ｂは、随時読み出し／書き込みが可能なメモリであり、入出力データや演算データなどを一時的に格納する。ＣＰＵ４ｃは、ＲＯＭ４ａの制御プログラムに基づいて所定の処理を行う。
【００３２】
インタフェース論理部５は、ホスト機から入出力される書き込み／読み出し／消去といった動作を指示するコマンドを受け、これらの動作に必要なデータの入出力を行う。
【００３３】
このインタフェース論理部５には、レジスタ（データ記憶部）５ａが設けられており、パワーオン時におけるメモリカード１の初期設定が正常終了しない場合に、リセット処理異常データ（異常データ）が設定される。
【００３４】
電源検出回路６は、パワーオン時における電源電圧ＶＣＣの電圧の立ち上がりを検出し、ある電圧値以上になるとインタフェース論理部５にリセット信号を出力する。
【００３５】
ＲＡＭ７は、随時読み出し／書き込みが可能なメモリであり、制御部４のワークエリアとして用いられている。クロック生成部８は、ある周波数のクロック信号を生成し、インタフェース論理部５に供給する。バッファ９は、ホスト機、およびフラッシュメモリ２から入出力されるデータを一時的に格納する。
【００３６】
次に、本実施の形態のメモリカード１におけるパワーオンリセット処理について図２のフローチャートを用いて説明する。
【００３７】
まず、メモリカード１がホスト機に設けられたメモリスロットなどに挿入されると、該メモリスロットのコネクタ端子を介してメモリカード１に電源電圧ＶＣＣが供給される。
【００３８】
メモリカード１の電源検出回路６は、パワーオン時における電源電圧ＶＣＣの電圧が、ある電圧値になるとインタフェース論理部５にリセット信号を出力し、該インタフェース論理部５のリセットが解除され（ステップＳ１０１）、イニシャライズが実行される（ステップＳ１０２）。
【００３９】
その後、ホスト機からは、メモリカード１の動作可能な電圧範囲のチェック、および該メモリカード１の内部処理を終了したかをチェックするために使用されるコマンド（設定コマンド）ＣＭＤ（コマンドクラス０に分類されるコマンドインデックスＣＭＤ１’ＳＥＮＤ＿ＯＰ＿ＣＯＮＤ’）が出力される（ステップＳ１０３）。
【００４０】
電源検出回路６は、電源電圧ＶＣＣが予め設定された電圧値（制御部４の動作電圧）に到達すると、初期化が終了したインタフェース論理部５に検出信号を出力する。そして、インタフェース論理部５は、検出信号を受けて制御部４にリセット信号を出力する。
【００４１】
制御部４は、インタフェース論理部５から出力されたリセット信号と、ホスト機から出力されたコマンドＣＭＤとがいずれも入力されることによって、ＣＰＵ４ｃのイニシャライズが行われる。
【００４２】
そして、制御部４に設けられたすべてのレジスタを初期化する（ステップＳ１０４）、その後、制御部４は、リード／ライト動作において該制御部４が用いるインタフェース論理部５のレジスタを初期化する（ステップＳ１０５）。
【００４３】
続いて、ファームウェアにおける内部変数を初期化し（ステップＳ１０６）、フラッシュメモリ２のチップ数、および容量をそれぞれ確認する（ステップＳ１０７）。
【００４４】
また、コントローラ３は、フラッシュメモリ２にアクセスして該フラッシュメモリ２が書き込み／読み出し可能か否かを判断する（ステップＳ１０８）。
【００４５】
このステップＳ１０８の処理は、コントローラ３が、フラッシュメモリ２にアクセスして該フラッシュメモリ２に格納されているフラッシュ確認データＦＤを読み出す。
【００４６】
ＣＰＵ４ｃは、フラッシュメモリ２から読み出したフラッシュ確認データＦＤと予めＲＯＭ３ａに格納されている動作確認データＦＤ１1 とを比較し、これらフラッシュ確認データＦＤと動作確認データＦＤ１1 とが同じであれば、ＣＰＵ４ｃは、フラッシュメモリ２が読み出し可能と判断する。
【００４７】
フラッシュメモリ２が読み出し可能の場合、ＲＯＭ４ａに格納されている書き込み確認データＦＤ１2 をフラッシュメモリ２に書き込んだ後、該フラッシュメモリ２に書き込まれた書き込み確認データＦＤ１2 を再び読み出し、この読み出した書き込み確認データＦＤ１2 とＲＯＭ４ａの書き込み確認データＦＤ１2 とを比較する。
【００４８】
そして、フラッシュメモリ２に書き込まれた書き込み確認データＦＤ１2 とＲＯＭ４ａの書き込み確認データＦＤ１2 とが一致すると、ＣＰＵ４ｃは、フラッシュメモリ２が正常動作していると判断する。
【００４９】
これらのデータ比較によって、より信頼性の高いフラッシュメモリ２の動作チェックを行うことが可能となる。
【００５０】
その後、追加変更のファームウェアがフラッシュメモリ２に格納されているか否かを確認し、追加変更のファームウェアが該フラッシュメモリ２に格納されている場合には、そのファームウェアを読み出す、いわゆるファームオンフラッシュリード動作を行う（ステップＳ１０９）。
【００５１】
さらに、コントローラ３は、フラッシュメモリ２のシステム領域に格納されているＣＩＤ／ＣＳＤをそれぞれ読み出す（ステップＳ１１０）。ＣＩＤは、メモリカード１にそれぞれ割り付けられたシリアルナンバであり、該メモリカード１を選択するための相対アドレスを割り振るために用いられる。
【００５２】
ＣＳＤは、対応しているＭＭＣＡスペックバージョン、カード容量、アクセス時間、転送単位ブロック長などのメモリカード１に関係する諸情報を示すデータである。
【００５３】
そして、制御部４は、バッファ９のデータ書き込み／読み出しを行い、該バッファ９のテストを行った後（ステップＳ１１１）、不良セクタの代替登録ブロックのテーブルを作成し、ＲＡＭ７などの登録する（ステップＳ１１２）。また、ステップＳ１１１の処理は、時間短縮のためにスキップしてもよい。
【００５４】
その後、パスワード、ライトプロテクトのデータを読み出し、メモリカード１にパスワード、あるいはライトプロテクトされている領域があるか否かを確認し、ＲＡＭ７に登録する（ステップＳ１１３）。
【００５５】
これにより、メモリカード１を初期設定するパワーオンリセット動作が終了となる。また、これらステップＳ１０８〜Ｓ１１２の処理においてエラーが発生した際には、ＣＰＵ４ｃは、インタフェース論理部５のレジスタ５ａにリセット処理異常データ（Ｌｏレベル）を設定し（ステップＳ１１４）、その後、該コントローラ３はスリープモードになる（ステップＳ１１５）。
【００５６】
このスリープモードの際、すなわち、レジスタ５ａにリセット処理異常データ（ここでは、Ｌｏレベル）が設定されている間にコマンドＣＭＤがホスト機から出力された場合（ステップＳ１１６）、インタフェース論理部５がコントローラ３にリセット信号を出力し、ステップＳ１０４〜Ｓ１１２の処理が再実行される。
【００５７】
これらステップＳ１０４〜Ｓ１１２の処理において、エラーがない場合には、ステップＳ１１３の処理の後、メモリカード１のパワーオンリセット動作が終了となる。
【００５８】
また、ステップＳ１０４〜Ｓ１１２の処理において、再びエラーが発生した際には、再度Ｓ１１４〜Ｓ１１６の処理が実行される。これらステップＳ１０４〜Ｓ１１２，Ｓ１１４〜Ｓ１１６の処理は、エラーが発生しなくなるまで繰り返し行われることになる。
【００５９】
次に、メモリカード１におけるパワーオンリセット処理について、図３のホスト機から供給される電源電圧ＶＣＣの電圧レベルの遷移図、および図４のパワーオンリセット処理における各部の状態遷移を示す説明図を用いて説明する。ここでは、２回目のパワーオンリセット処理によってメモリカード１の初期設定動作が完了した場合について記載する。
【００６０】
また、図４においては、上方から下方にかけて、コントローラ３に入力されるリセット信号、コントローラ３の動作、フラッシュメモリ２の動作、インタフェース論理部５のレジスタ５ａの設定状況、ホスト機から出力されるコマンド、ならびにメモリカード１からホスト機に対して返されるコマンド毎に規定されたフォーマットのレスポンスにおける遷移をそれぞれ示している。
【００６１】
まず、メモリカード１がホスト機のメモリスロットに挿入され、インタフェース論理部５が動作可能な電圧となり、該インタフェース論理部５のイニシャライズが終了すると、ホスト機から、メモリカード１の動作可能な電圧範囲のチェック、および該メモリカード１の内部処理を終了したかをチェックするコマンドＣＭＤが出力される。
【００６２】
このコマンドＣＭＤを受けて、インタフェース論理部５は、ホスト機に対して’Ｂｕｓｙ’のレスポンスを返すとともに、コントローラ３にリセット信号を出力する。また、インタフェース論理部５は、レジスタ５ａにＨｉレベルの信号を設定する。
【００６３】
さらに、コマンドＣＭＤは、’Ｒｅａｄｙ’のレスポンスが返されるまで、’Ｂｕｓｙ’のレスポンスからある期間毎に繰り返しホスト機から出力されている。
【００６４】
そして、コントローラ３は、インタフェース論理部５のリセット信号を受けてリセット処理を行う。このリセット処理とは、図２のステップＳ１０４〜Ｓ１０７の処理である。
【００６５】
その後、コントローラ３は、フラッシュメモリ２にアクセスしてシステム読み出し処理を実行する。ここで、システム読み出し処理とは、図２のステップＳ１０８〜Ｓ１１３の処理である。
【００６６】
このシステム読み出し処理の期間では、図３に示すように、電源電圧ＶＣＣの電圧レベルがフラッシュメモリ２の動作電圧範囲に到達しておらず、不安定な動作電圧レベルとなっており、システム読み出し処理においてエラーが発生し、リセットが失敗となる。
【００６７】
このリセット失敗により、ＣＰＵ４ｃは、インタフェース論理部５のレジスタ５ａにリセット処理異常データを設定するとともに、コントローラ３はスリープモードとなる。
【００６８】
このスリープモード中にホスト機から出力されたコマンドＣＭＤをコントローラ３が受けると、再びインタフェース論理部５は、ホスト機に対して’Ｂｕｓｙ’のレスポンスを返すとともに、コントローラ３にリセット信号を出力し、かつレジスタ５ａをＨｉレベルに設定する。
【００６９】
そして、インタフェース論理部５のリセット信号を受けたコントローラ３は、ステップＳ１０４〜Ｓ１０７（図２）のリセット処理を行う。このリセット処理の終了後、コントローラ３は、フラッシュメモリ２にアクセスし、ステップＳ１０８〜Ｓ１１３（図２）のシステム読み出し処理を実行する。
【００７０】
２回目のシステム読み出し処理の期間においては、電源電圧ＶＣＣの電圧レベルが、図３に示すようにフラッシュメモリ２の動作電圧に到達しているので、システム読み出し処理がエラーなく実行され、パワーオンリセット処理が成功となる。
【００７１】
これにより、メモリカード１は初期状態に設定されたことになり、ホスト機から３回目のコマンドＣＭＤが入力された際には、コントローラ３から、’Ｒｅａｄｙ’のレスポンスが該ホスト機に返されることになる。
【００７２】
よって、メモリカード１は、パワーオンリセット処理が成功するまでリトライを繰り返すので、ユーザによる電源電圧ＶＣＣの遮断、再投入などを行う行為を不要にすることができ、使い勝手を向上することができる。
【００７３】
ここで、フラッシュメモリ２におけるフラッシュ確認データＦＤの書き込みについて、図５のフローチャートを用いて説明する。このフラッシュ確認データＦＤは、メモリカード１の出荷前の選別工程にいて書き込みが行われる。
【００７４】
まず、メモリカード１が、エミュレータなどのホスト機に搭載されて電源電圧ＶＣＣが供給されると、該ホスト機からコマンドＣＭＤが入力され（ステップＳ２０１）、メモリカード１はパワーオンリセット処理を実行する（ステップＳ２０２）。
【００７５】
この場合、フラッシュメモリ２には、フラッシュ確認データＦＤ、ＣＩＤ／ＣＳＤ、ならびにパスワード、ライトプロテクトなどのデータが書き込まれていないためにパワーオンリセット処理が失敗となり（ステップＳ２０３）、ホスト機からのコマンドＣＭＤ待ち状態となる（ステップＳ２０４）。
【００７６】
そして、ホスト機からパワーオンリセット処理をスキップするデバッグコマンドの１つであるパワーオンリセット処理スキップコマンドを発行し（ステップＳ２０５）、メモリカード１がパワーオンリセット処理を正常終了した状態に移行させる。
【００７７】
デバッグコマンドは、カードベンダがメモリカード１のシステム情報の書き換え、および不良解析などに使用するコマンドであり、デバッグモードの移行時において、パワーオンリセット処理をスキップすることができる。
【００７８】
その後、ホスト機から同じくデバックコマンドの１つであるフラッシュ確認データ書き込みコマンドを発行し（ステップＳ２０６）、フラッシュ確認データＦＤをメモリカード１に送信する。
【００７９】
メモリカード１がホスト機からフラッシュ確認データＦＤを受信すると（ステップＳ２０７）、フラッシュメモリ２のある領域にフラッシュ確認データＦＤが書き込まれる（ステップＳ２０８）。
【００８０】
また、ＣＩＤ／ＣＳＤ、およびパスワード、ライトプロテクトなどのデータも、ステップＳ２０７〜２０９の処理と同様に、フラッシュメモリ２のある領域に書き込まれる。
【００８１】
それにより、本実施の形態によれば、ホスト機から供給される電源電圧ＶＣＣが不安定な場合であっても、メモリカード１を初期状態に設定することができるので、該メモリカード１の信頼性を大幅に向上することができる。
【００８２】
また、本実施の形態では、メモリカード１の初期状態の設定が成功するまで、繰り返しパワーオンリセット処理を実行する構成としたが、初期状態の設定が失敗した際のパワーオンリセット処理に回数制限を設けるようにしてもよい。
【００８３】
この場合、インタフェース論理部５のレジスタ５ａは、リセット処理異常データが設定されるビットの他に、パワーオンリセット処理の実行回数を設定する複数の実行回数設定ビットを備えたものとする。
【００８４】
そして、初期状態の設定が失敗する毎に実行回数設定ビットにデータを設定し、すべてのビットが設定された際には、すなわち任意の回数の初期状態の設定が失敗した場合、ホスト機からコマンドＣＭＤの要求があってもパワーオンリセット処理を実行しないものとする。
【００８５】
さらに、最初のパワーオンリセット処理に失敗した際に、２回目のパワーオンリセット処理からは、ステップＳ１０４〜Ｓ１０７（図２）のリセット処理をスキップし、ステップＳ１０８〜Ｓ１１３（図２）のシステム読み出し処理から開始するようにしてもよい。
【００８６】
この場合も、レジスタ５ａは、リセット処理異常データが設定されるビットの他に、スキップデータが設定できるスキップデータ用ビットを有し、最初のパワーオンリセット処理に失敗した際に、スキップデータ用ビットを設定する。
【００８７】
スキップデータ用ビットが設定されると、インタフェース論理部５は、２回目以降のパワーオンリセット処理時にステップＳ１０４〜Ｓ１０７のリセット処理をスキップし、ステップＳ１０８〜Ｓ１１３（図２）のシステム読み出し処理から開始する。
【００８８】
それにより、リトライした際のパワーオンリセット処理に必要な時間を短縮することができる。
【００８９】
以上、本発明者によってなされた発明を発明の実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【００９０】
たとえば、前記実施の形態においては、フラッシュメモリの読み出し／書き込み動作を確認する確認用データを予めＲＯＭに格納した場合について記載したが、この確認用データは、ホスト機から出力されるコマンドに付随いて、該ホスト機から出力する構成としてもよい。
【図面の簡単な説明】
【００９１】
【図１】本発明の一実施の形態によるメモリカードのブロック図である。
【図２】図１のメモリカードにおけるパワーオンリセット処理のフローチャートである。
【図３】図１のメモリカードに供給される電源電圧レベルの遷移図である。
【図４】図１のメモリカードのパワーオンリセット処理における各部の状態遷移を示した説明図である。
【図５】図１のメモリカードに設けられたフラッシュメモリにフラッシュ確認データを書き込み際のフローチャートである。
【符号の説明】
【００９２】
１  メモリカード
２  フラッシュメモリ（不揮発性半導体メモリ）
３  コントローラ
４  制御部（制御手段）
４ａ  ＲＯＭ（記憶部、不揮発性記憶部）
４ｂ  ＲＡＭ（揮発性記憶部）
４ｃ  ＣＰＵ（処理装置）
５  インタフェース論理部
５ａ  レジスタ（データ記憶部）
６  電源検出回路
７  ＲＡＭ（揮発性記憶部）
８  クロック生成部
９  バッファ
ＦＤ  フラッシュ確認データ（動作確認データ）
ＦＤ１  確認用データ
ＦＤ１1   動作確認用データ（比較用動作確認データ）
ＦＤ１2   書き込み確認データ
ＣＭＤ  コマンド（設定コマンド）
【図１】
2008186481.tif 000003
【図２】
2008186481.tif 000004
【図３】
2008186481.tif 000005
【図４】
2008186481.tif 000006
【図５】
2008186481.tif 000007