(57)【要約】 【課題】  外部に読み出されるパラメータが示すユーザー領域の総容量に含まれない拡張ユーザー領域を準備することにより、ファイルシステムのフォーマット等により、特定のデータの消去を防止可能なメモリ装置を提供する。【解決手段】  不揮性半導体メモリ18は、第１の記憶領域18cと、第２の記憶領域18eを有する。制御部11aは、ホスト20からの第１のコマンドを受け、第１のコマンドに基づき前記第２の記憶領域の使用を許可する。制御部11aは、ホスト20からの第２のコマンドを受け、第２のコマンドに基づき第１の記憶領域の容量を示すパラメータをホストに送信し、制御部は、ホストからの第３のコマンドを受け、第３のコマンドに基づき第１の記憶領域にアクセスし、制御部は、前記第２の記憶領域の使用が許可されたとき、ホストから前記第３のコマンドを受け、第３のコマンドに基づき前記第２の領域にアクセスする。【選択図】図１
2012234334.tif 000002
【特許請求の範囲】
【請求項１】
第１の記憶領域と、前記第１の記憶領域以外の第２の記憶領域を有する不揮性半導体メモリと、
ホストからの第１のコマンドを受け、前記第１のコマンドに基づき前記第２の記憶領域の使用を許可する制御部と、を具備し、
前記制御部は、前記ホストからの第２のコマンドを受け、前記第２のコマンドに基づき前記第１の記憶領域の容量を示すパラメータを前記ホストに送信し、
前記制御部は、前記ホストからの第３のコマンドを受け、前記第３のコマンドに基づき前記第１の記憶領域にアクセスし、
前記制御部は、前記第２の記憶領域の使用が許可されたとき、前記ホストから前記第３のコマンドを受け、前記第３のコマンドに基づき前記第２の記憶領域にアクセスすることを特徴とするメモリ装置。
【請求項２】
第１の記憶領域と、前記第１の記憶領域以外の第２の記憶領域と、ホストの認証後アクセス可能とされる第３の記憶領域を有する不揮性半導体メモリと、
前記ホストからの第１のコマンドを受け、前記第１のコマンドに基づき前記第２の記憶領域の使用を許可する制御部と、を具備し、
前記制御部は、前記ホストからの第２のコマンドを受け、前記第２のコマンドに基づき前記第１の記憶領域の容量を示すパラメータを前記ホストに送信し、
前記制御部は、前記ホストからの第３のコマンドを受け、前記第３のコマンドに基づき前記第１の記憶領域にアクセスし、
前記制御部は、前記第２の記憶領域の使用が許可されたとき、前記ホストから前記第３のコマンドと異なる第４のコマンドを受け、前記第４のコマンドに基づき前記第２の記憶領域にアクセスすることを特徴とするメモリ装置。
【請求項３】
前記第２の記憶領域は、予めアドレスが割り付けられていることを特徴とする請求項１又は２記載のメモリ装置。
【請求項４】
前記第２の記憶領域は、前記第１のコマンドにより第２の記憶領域の使用が許可されるとき、アドレスが割り付けられることを特徴とする請求項１又は２記載のメモリ装置。
【請求項５】
前記制御部は、電源遮断時、前記第２の記憶領域の使用を許可又は禁止するアクセス情報を前記不揮性半導体メモリに記憶させ、電源投入時、前記不揮性半導体メモリに記憶された前記アクセス情報に基づき、前記第２の記憶領域を使用許可又は禁止状態に設定することを特徴とする請求項１又は２記載のメモリ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、例えばＮＡＮＤフラッシュメモリのような不揮発性メモリを有するメモリ装置に関する。
【背景技術】
【０００２】
例えばＳＤＴＭカードなどのメモリカードは、ユーザーが自由にデータを読み出し、又はデータを書き込むことが可能なユーザー領域を有している。このユーザー領域の総容量はＣＳＤ(Card Specific Data)レジスタに記録されている。
【０００３】
上記ＳＤカードは、ＵＳＢリーダーライタなどのホスト機器を用いてファイルシステムのフォーマット等の処理を実行すると、ユーザー領域のデータが全て消去される可能性がある。このため、例えばカードメーカによりＳＤカードに設定される例えばアプリケーションのプログラムや設定データなどの特定のデータも消去されてしまう。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２３３７９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本実施形態は、外部に読み出されるパラメータが示すユーザー領域の総容量に含まれない拡張ユーザー領域を設けることにより、ファイルシステムのフォーマット等により、特定のデータの消去を防止可能なメモリ装置を提供する。
【課題を解決するための手段】
【０００６】
本実施形態のメモリ装置によれば、第１の記憶領域と、前記第１の記憶領域以外の第２の記憶領域を有する不揮性半導体メモリと、ホストからの第１のコマンドを受け、前記第１のコマンドに基づき前記第２の記憶領域の使用を許可する制御部と、を具備し、前記制御部は、前記ホストからの第２のコマンドを受け、前記第２のコマンドに基づき前記第１の記憶領域の容量を示すパラメータを前記ホストに送信し、前記制御部は、前記ホストからの第３のコマンドを受け、前記第３のコマンドに基づき前記第１の記憶領域にアクセスし、前記制御部は、前記第２の記憶領域の使用が許可されたとき、前記ホストから前記第３のコマンドを受け、前記第３のコマンドに基づき前記第２の領域にアクセスすることを特徴とする。
【図面の簡単な説明】
【０００７】
【図１】実施形態に係るメモリカードの一例を概略的に示す構成図。
【図２】図１に示すＮＡＮＤフラッシュメモリ内の領域を概略的に示す図。
【図３】図２に示すＮＡＮＤフラッシュメモリ内の領域を概略的に示す図。
【図４】本実施形態に適用されるコマンドの引数の一例を示す図。
【図５】本実施形態に適用されるコマンドの動作シーケンスの一例を示す図。
【図６】本実施形態の動作の一例を示すシーケンス図。
【図７】本実施形態のホストの動作の一例を示すフローチャート。
【図８】本実施形態のメモリデバイスの動作の一例を示すフローチャート。
【図９】実施形態に係るメモリカードの他の例を概略的に示す構成図。
【発明を実施するための形態】
【０００８】
以下、実施の形態について、図面を参照して説明する。
【０００９】
（第１の実施形態）
図１は、第１の実施形態が適用される例えばＳＤメモリカードとしてのメモリデバイス１１と、そのホストデバイス２０を示している。
【００１０】
図１において、メモリデバイス１１は、ホスト２０に接続されたときに電源供給を受けて動作し、ホスト２０からのアクセスに応じた処理を行う。このメモリデバイス１１は、カードコントローラ１１ａを有している。
【００１１】
カードコントローラ１１ａは、例えばホストインターフェース（Ｉ／Ｆ）１２、ＣＰＵ１３、ＲＯＭ（Read only Memory）１４、ＲＡＭ（Random Access Memory）１５、バッファ１６、無線インターフェース（Ｉ／Ｆ）１７ａ、メモリインターフェース（Ｉ／Ｆ）１７ｂにより構成されている。これらは、バスにより接続されている。メモリインターフェース１７ｂには、例えばＮＡＮＤフラッシュメモリ１８が接続されている。無線通信インターフェース１７ａには、拡張機能部としての無線ＬＡＮ信号処理部１９ａが接続されている。この無線ＬＡＮ信号処理部１９ａには、高周波信号を送受信するアンテナＡＴａが接続されている。
【００１２】
尚、拡張機能部は、無線ＬＡＮ信号処理部１９ａに限らず、その他の無線通信信号処理部１９ｂ、及びこの無線通信信号処理部１９ｂに接続されたアンテナＡＴｂなどを増設し、マルチファンクションのＳＤメモリカードを構成することが可能である。例えば、無線ＬＡＮ信号処理部１９ａは、例えばＷｉ−Ｆｉ（登録商標）による無線通信機能を制御し、無線通信信号処理部１９ｂは、例えばＴｒａｎｓｆｅｒＪｅｔ（登録商標）による近接無線通信機能を制御する。
【００１３】
ホストインターフェース１２は、カードコントローラ１１ａとホスト２０との間のインターフェース処理を行う。
【００１４】
無線通信インターフェース１７ａは、無線ＬＡＮ信号処理部１９ａや無線通信信号処理部１９ｂとの間のインターフェース処理を行う。
【００１５】
メモリインターフェース１７ｂは、カードコントローラ１１ａとＮＡＮＤフラッシュメモリ１８との間のインターフェース処理を行う。
【００１６】
ＣＰＵ１３は、メモリデバイス１１全体の制御を司るものである。このＣＰＵ１３を制御するプログラムは、ＲＯＭ１４の中に格納されているファームウェア（制御プログラム等）を用いるか、或いはＲＡＭ１１５上にロードして所定の処理が実行される。すなわち、ＣＰＵ１３は、各種のテーブルをＲＡＭ１８上に作成したり、ホスト２０から書き込みコマンド、読み出しコマンド、消去コマンドを受けてＮＡＮＤフラッシュメモリ１８上の領域をアクセスしたり、バッファ１６を介してデータ転送処理を制御したりする。
【００１７】
ＲＯＭ１４は、ＣＰＵ１３により使用される制御プログラムなどのファームウェアを格納する。ＲＡＭ１５は、ＣＰＵ１３の作業エリアとして使用され、制御プログラムや各種のテーブルや後述する拡張レジスタを記憶する。
【００１８】
バッファ１６は、ホスト２０から送られてくるデータを、例えばＮＡＮＤフラッシュメモリ１８へ書き込む際、一定量のデータ（例えば１ページ分）を一時的に記憶したり、ＮＡＮＤフラッシュメモリ１８から読み出されたデータをホスト２０へ送り出す際、一定量のデータを一時的に記憶したりする。
【００１９】
ＮＡＮＤフラッシュメモリ１８は、例えば積層ゲート構造のメモリセル、又はＭＯＮＯＳ構造のメモリセルにより構成されている。
【００２０】
一方、ホスト２０は、例えばデジタルカメラや携帯電話、パーソナルコンピュータなどが適用可能である。ホスト２０は、ホストコントローラ２１、ＣＰＵ２２、ＲＯＭ２３、ＲＡＭ２４、例えばハードディスク２５(ＳＳＤを含む)により構成されている。これらはバスにより接続されている。
【００２１】
ＣＰＵ２２は、ホスト全体を制御する。ＲＯＭ２３は、ＣＰＵ２２の動作に必要なファームウェアを記憶している。ＲＡＭ２４は、例えばＣＰＵ２２の作業領域として使用されるが、ＣＰＵ２２が実行可能なプログラムもここにロードされ実行される。ハードディスク２５は、各種データを保持する。ホストコントローラ２１は、メモリデバイス１１が接続された状態において、メモリデバイス１１とのインターフェース処理を行う。さらに、ＣＰＵ２２の指示に従って、後述する各種コマンドを発行する。
【００２２】
図２は、ＮＡＮＤフラッシュメモリ１８内の領域を概略的に示している。ＳＤメモリカードを構成するＮＡＮＤフラッシュメモリ１８の記憶領域は、一般的にシステム領域１８ａ、セキュア領域１８ｂ、ユーザー領域１８ｃ、及び複数のレジスタを有するレジスタ領域１８ｄを含んでいる。
【００２３】
システム領域１８ａは、メモリデバイス１１が動作するための制御ソフトウエアやその他システムデータを格納しており、一般ユーザーとしてのホスト２０からは直接アクセスできない領域である。
【００２４】
セキュア領域１８ｂは、セキュリティ上保護されるべきデータが格納され、一般ユーザーとしてのホスト２０がメモリデバイス１１をアクセスするためには認証を行う必要がある。
【００２５】
ユーザー領域１８ｃは、一般ユーザーとしてのホスト２０を用いて自由にアクセス可能な領域である。
【００２６】
レジスタ領域１８ｄは、このカードの仕様や動作条件などのデータを保持する複数のレジスタを有している。このうち、ＣＳＤレジスタには、例えばユーザー領域１８ｃの容量を示すパラメータが記録されている。このパラメータは、容量を直接に表す１つのパラメータであっても良いし、組み合わせることで容量を計算し得る複数のパラメータであっても良い。尚、セキュア領域の容量は、ＣＳＤレジスタではなく、例えばシステム領域１８ａ内にＳＤステータス１８ｆと呼ばれるステータス情報として記録される。
【００２７】
一般ユーザーがホスト２０を用いてメモリデバイス１１をアクセスする場合において、メモリデバイス１１が未フォーマットである場合、又はホスト２０に対して未対応のフォーマットである場合、ホスト２０の機能に対応させるため、専用のフォーマットソフト（フォーマッタとも言う）を用いてＮＡＮＤフラッシュメモリ１８をフォーマットする必要がある。
【００２８】
また、既にフォーマット済みのＮＡＮＤフラッシュメモリ１８であっても、例えばユーザー領域１８ｃ内のデータを一度リセットする等の場合、再フォーマットする必要がある。
【００２９】
従来のメモリデバイスの場合、ＮＡＮＤフラッシュメモリをフォーマットすると、ユーザー領域１８ｃ、及びセキュア領域１８ｂのデータが消去される可能性がある。このため、ユーザー領域に必要なデータが記録されている場合、他の記憶媒体にバックアップする必要がある。しかし、そのデータが、例えばカードメーカにより登録されたアプリケーションの設定データのようなデータである場合、ファイルシステムで管理されないため、バックアップすることすらできない。
【００３０】
そこで、第１の実施形態は、一般のホストが発行可能なコマンドのうち、例えば用途が決められていないオプションコマンドであるコマンド５６（以下、ＣＭＤ５６と表記する）を拡張領域切換コマンドと定義し、このＣＭＤ５６をホスト２０からメモリデバイス１１へ発行することにより、カードのユーザー領域１８ｃ内に事前に設置された拡張ユーザー領域１８ｅに対して、アクセスの許可又は禁止を設定可能とする。この拡張ユーザー領域１８ｅに記録されたデータは、例えフォーマットが実行されてもデータは消去されず、データが保持可能となる。
【００３１】
ＮＡＮＤフラッシュメモリ１８内の拡張ユーザー領域１８ｅは、次のようにして用意される。ＮＡＮＤフラッシュメモリ１８は、真のアドレスである物理アドレスを有している。一方、メモリデバイス１１のカードコントローラ１１ａが扱うアドレスとして論理アドレスを有している。この論理アドレスは、ホスト２０とカードコントローラ１１ａ間で使用される仮想アドレスであり、物理アドレスと１対１に対応される。メモリデバイス１１が動作するためには、この論理アドレスと物理アドレスを対応付ける必要がある。通常、ユーザー領域１８ｃは、物理アドレスと論理アドレスの対応付けが行われ、これらの関係を示すテーブル等が用意されている。拡張ユーザー領域１８ｅについても、ユーザー領域１８ｃと同様に物理アドレスと論理アドレスが対応付けられる。
【００３２】
図３は、ユーザー領域１８ｃと拡張ユーザー領域１８ｅの関係を概略的に示している。ユーザ領域１８ｃは、下位のスタートアドレスから上位のエンドアドレスにかけて配置され、スタートアドレスとエンドアドレスとの間のアドレスで示されるメモリ領域の容量がユーザ領域１８ｃの容量となる。このユーザー領域１８ｃの容量は、ＣＳＤレジスタに記録されたパラメータによって示される。メモリデバイス１１をフォーマットする際、フォーマッタは、ＣＳＤレジスタ内のパラメータからユーザー領域１８ｃの容量を知ることで、スタートアドレスから始まる容量分のメモリ領域がユーザー領域１８ｃであると認識する。
【００３３】
拡張ユーザー領域１８ｅに割り当てる論理アドレスは、例えばＣＳＤレジスタによって定められるユーザー領域１８ｃのエンドアドレスの次のアドレスから割り当てることにより、ユーザー領域１８ｃと区別することができる。拡張ユーザー領域１８ｅに割り当てる論理アドレスは、ユーザー領域１８ｃの末端アドレスの次のアドレスに限定されるものではなく、他のアドレスとすることも可能である。
【００３４】
このように拡張ユーザー領域１８ｅに対する論理アドレスを割り当てることにより、ホスト２０からメモリデバイス１１に対して拡張領域を切換えるためのコマンドが発行された場合、拡張ユーザー領域１８ｅを許可又は禁止することが対応可能となる。
【００３５】
尚、拡張ユーザー領域１８ｅは、上記のように静的に、予め割り当てておくばかりでなく、例えば拡張ユーザー領域が必要となった時点において、動的に拡張ユーザー領域を割り当てることも可能である。この場合、例えばホスト２０から拡張ユーザー領域の許可要求を受けたとき、拡張ユーザー領域のアドレスを割り当てることも実現可能である。この場合、元々拡張ユーザー領域が用意されている分けではないため、例えば物理アドレスと論理アドレスが対応付けできる範囲で拡張ユーザー領域を割り当てられる。
【００３６】
ユーザーがＮＡＮＤフラッシュメモリの拡張ユーザー領域１８ｅへのアクセス許可及び禁止を求める場合、ユーザーはホスト２０を用いて拡張ユーザー領域１８ｅの切換コマンドとして定義するとともに、機能を実装したＣＭＤ５６をメモリデバイス１１に対して発行する。ＣＭＤ５６は３２ビットの引数を持っており、このうち、ビット０の値のみ規定されている。ビット０の値はデータの転送方向を指し示しており、このビット０が“０”である場合、データの書き込みモードを意味し、データ“１”である場合、データの読み出しモードを意味する。
【００３７】
図４は、ＣＭＤ５６の引数を示している。ＣＭＤ５６は、上記以外のことは定められておらず、引数のビット３１〜ビット１と入出力データ、及び処理内容に関してはカードベンダーが個別に設定可能とされている。
【００３８】
図５は、本実施形態のコマンドシーケンスの一例を示している。ホスト２０からＣＭＤ５６が発行されると、メモリデバイス１１は、これを受け、レスポンス（Ｒ）をホスト２０に送る。
【００３９】
ＣＭＤ５６が書き込みモードの場合、ホスト２０は、レスポンスを受けると、例えば５１２バイトのデータをメモリデバイス１１に送る。メモリデバイス１１は、このデータを受けると、ビジー信号をホスト２０に送り、ＣＭＤ５６に従った処理を実行する。
【００４０】
また、ＣＭＤ５６が読み出しモードの場合、ホスト２０は、メモリデバイス１１からレスポンスを受けると共に、後述するように、例えばメモリデバイス１１における書き込み処理の処理結果を読み出しデータとして受ける。
【００４１】
本実施形態において、ホスト２０からＣＭＤ５６に伴いホスト２０又はメモリデバイス１１から出力されるデータは、ＣＭＤ５６が書き込みモード、又は読み出しモードにおいて、次に示す意味を持っている。
【００４２】
例えばＣＭＤ５６が書き込みモードにおいて、ホスト２０から出力されるデータの１バイト目が“０ｘ１０”（“０ｘ”は、１６進であることを示している）の場合、拡張ユーザー領域１８ｅの開放（アクセス）“許可要求”を意味し、“０ｘ２０”の場合、開放“禁止要求”を意味する。
【００４３】
また、ＣＭＤ５６が読み出しモードにおいて、メモリデバイス１１から出力されるデータの１バイト目が“０ｘ１０”の場合、拡張ユーザー領域１８ｅの開放“成功”を意味し、“０ｘＦ０”の場合、開放“失敗”を意味する。
【００４４】
次に、図６、図７、図８を参照して、ホスト２０が上記静的手法により、拡張ユーザー領域１８ｅが定義されたメモリデバイス１１に対して、拡張ユーザー領域１８ｅへ開放許可要求を発行し、メモリデバイス１１において、この要求を処理する動作について説明する。図６乃至図８において、同一部分には同一符号を付している。
【００４５】
ホスト２０は、先ず、ＣＭＤ５６を書き込みモード（ビット０は“０”）で発行する（Ｓ３１）。
【００４６】
メモリデバイス１１は、ホスト２０からのＣＭＤ５６を受信し、ホスト２０へレスポンスを返す（Ｓ４１）。
【００４７】
ホスト２０は、レスポンスを受信した後、メモリデバイス１１に対して拡張ユーザー領域１８ｅに対するアクセス許可要求を送信する（Ｓ３２）。すなわち、メモリデバイス１１に対する書き込みデータの１バイト目は、許可要求“０ｘ１０”である。
【００４８】
メモリデバイス１１は、ＮＡＮＤフラッシュメモリ１８が拡張ユーザー領域１８ｅを有するかどうかを判別する（Ｓ４２）。この結果、拡張ユーザー領域１８ｅが有る場合、拡張ユーザー領域１８ｅの解放を試みる。その際、メモリデバイス１１は、先ず、ホスト２０へビジー信号を発行する（Ｓ４３）。この後、拡張ユーザー領域１８ｅの開放処理が実行される（Ｓ４４）。メモリデバイス１１は、拡張ユーザー領域１８ｅの開放処理が終了すると、ビジー信号を解除する（Ｓ４５）。
【００４９】
次いで、ホスト２０は、メモリデバイス１１からのビジー信号の解除を確認した後（Ｓ３３）、ＣＭＤ５６を読み出しモード（ビット０は“１”）を発行する（Ｓ３４）。メモリデバイス１１は読み出しモードのＣＭＤ５６を受信すると（Ｓ４６）、このコマンドに対するレスポンスと共に、拡張ユーザー領域１８ｅの開放処理が成功したか、失敗したかを示す成否結果を読み出しデータとしてホスト２０へ発行する（Ｓ４７）。すなわち、読み出しデータの１バイト目が“０ｘ１０”であれば成功であり、“０ｘＦ０”であれば失敗である。
【００５０】
ホスト２０は、メモリデバイス１１から供給された読み出しデータに基づき、拡張ユーザー領域１８ｅの開放処理が成功したかどうかを判別する（Ｓ３６）。この結果、ステータスが“０ｘ１０”である場合、拡張ユーザー領域１８ｅの開放処理は成功であり、ホスト２０は拡張ユーザー領域１８ｅに対してアクセス可能となる。また、ステータスが“０ｘＦ０”である場合、拡張ユーザー領域１８ｅの開放処理は失敗であり、ホスト２０は拡張ユーザー領域１８ｅに対してアクセスすることができない。
【００５１】
尚、上記フローに加えて次のようにすることも可能である。
【００５２】
ＣＭＤ５６の読み出しデータ内において、メモリデバイス１１が開放に成功した拡張ユーザー領域１８ｅの容量を記述することが可能である。この場合、ホスト２０は、この容量値を読むことにより、メモリデバイス１１の拡張ユーザー領域１８ｅの容量を知ることができる。
【００５３】
また、ＣＭＤ５６の書き込みデータにおいて、ホスト２０が使用したい拡張ユーザー領域１８ｅの容量を記述する場合、メモリデバイス１１は、ホスト２０が要求する容量分のみ拡張することが可能となる。
【００５４】
どちらの場合も、ホスト２０は、拡張ユーザー領域１８ｅの容量を知ることができるため、拡張ユーザー領域１８ｅを超える範囲へのアクセスミス等を防ぐこともできる。さらに、後者の場合、必要な容量のみ開放できるため、拡張ユーザー領域１８ｅの容量を無駄なく使うことが可能である。
【００５５】
上記のように、拡張ユーザー領域１８ｅへアクセス可能となったメモリデバイス１１に対して、通常のＳＤメモリカードのコマンドを用いて、データの書き込み又は読み出しを行うことが可能である。
【００５６】
拡張ユーザー領域１８ｅの必要なアクセスが終了した際、その領域へのアクセスを禁止する必要がある可能性がある。この場合、図６乃至８に示す、許可のシーケンスと同様に、拡張ユーザー領域１８ｅに対して、ＣＭＤ５６を書き込みモードとして発行し、このデータの１バイト目を“０ｘ２０”（禁止要求）とする。この後、ＣＭＤ５６を読み出しモードとし、読み出しデータに基づき、禁止処理が成功したかどうかを確認する。
【００５７】
上記ＣＭＤ５６の一連の処理が成功した場合、メモリデバイス１１の拡張ユーザー領域１８ｅへのアクセスが不可能となる。
【００５８】
一方、拡張ユーザー領域１８ｅに対するアクセスが許可された状態のメモリデバイス１１は、拡張ユーザー領域１８ｅへのアクセスが禁止される前に、何らかの原因により、電源が遮断される可能性も考えられる。この場合、次にメモリデバイス１１が起動された際、拡張ユーザー領域１８ｅへアクセスを可能とするか、不可能とするかを、メモリデバイス１１の用途に応じて、仕様として決めておく必要がある。
【００５９】
具体的には、メモリデバイス１１の電源遮断時、拡張ユーザー領域１８ｅに対するアクセス権、すなわち、アクセスの許可情報は、メモリコントローラ１１ａにより、例えばシステム領域１８ａに格納される。一例としては、起動時、拡張ユーザー領域１８ｅに対するアクセスは、禁止状態であることが望ましい。
【００６０】
仮に、拡張ユーザー領域１８ｅがアクセス許可状態のまま、メモリデバイス１１の電源が切断され、電源投入後にアクセス許可状態を維持する場合、ホスト２０は、メモリデバイス１１の拡張ユーザー領域１８ｅのアクセス可能な容量を確認する必要がある。
【００６１】
この場合、ホスト２０は、例えばＣＭＤ５６を書き込みモードとし、そのデータの１バイト目を例えば“０ｘ３０”に設定する。このデータは、メモリデバイス１１の拡張ユーザー領域１８ｅの容量の確認要求と定義する。この書き込みコマンド及び書き込みデータの処理の後、ホスト２０は、ＣＭＤ５６を読み出しモードとして発行し、読み出しデータとして、確認要求の処理結果としての拡張ユーザー領域１８ｅの容量を受ける。このような構成とすることにより、ホスト２０は、拡張ユーザー領域１８ｅのアクセス可能な容量を確認することが可能となる。
【００６２】
上記メモリデバイス１１の起動時に、メモリデバイス１１から拡張ユーザー領域１８ｅのアクセス可能な容量をホスト２０通知することは、拡張ユーザー領域１８ｅのアクセスが許可状態であることに係らず、禁止状態であってもよい。この場合、ホスト２０がメモリデバイス１１に対してＣＭＤ５６で拡張ユーザー領域１８ｅの容量の確認要求を発行した場合、メモリデバイス１１からゼロｂｙｔｅとレスポンスすることにより、ホスト２０は、拡張ユーザー領域１８ｅが禁止状態であることを確認することができる。
【００６３】
上記第１の実施形態によれば、メモリデバイス１１のＮＡＮＤフラッシュメモリ１８に、拡張ユーザー領域１８ｅを設置し、この拡張ユーザー領域１８ｅのアクセス権を、オプションコマンドとしてのＣＭＤ５６、及び書き込みデータを用いて切替え可能としている。このため、例えばメモリデバイス１１のアプリケーションとしての無線ＬＡＬ信号処理部１９ａを制御するアプリケーションプログラムや設定データを、拡張ユーザー領域１８ｅに格納することにより、フォーマット等のユーザー領域１８ｃを消去するようなアクセスが実行された場合においても、拡張ユーザー領域１８ｅ内のデータを保護することが可能である。
【００６４】
また、ＣＭＤ５６、及び書き込みデータを用いて、拡張ユーザー領域１８ｅの容量を、ホスト２０から可変とすることも可能である。このため、ホスト２０により必要なサイズの拡張ユーザー領域１８ｅを設定することが可能であるため、拡張ユーザー領域１８ｅを無駄なく使用することができる。
【００６５】
さらに、拡張ユーザー領域１８ｅを、動的に割り当てることにより、無駄な割り当ても回避することが可能である。このため、ＮＡＮＤフラッシュメモリ１８のユーザー領域１８ｃの容量低減を防止でき、ユーザー領域１８ｃをより効果的に使用することが可能となる。
【００６６】
また、拡張ユーザー領域１８ｅに対する論理アドレス範囲の割り当ては、必ずしもユーザー領域１８ｃに続くアドレスに配置する必要はない。むしろ、ユーザー領域１８ｃから離れたアドレスに拡張ユーザー領域１８ｅを割り当てても良い。拡張ユーザー領域１８ｅが離れて割り当てられた場合、ユーザー領域１８ｃと拡張ユーザー領域１８ｅとの間に、ＮＡＮＤフラッシュメモリ１８の物理アドレスに割り当てられないアドレス領域が生じる。メモリデバイス１１は、ホスト２０からコマンドとともに受け取ったアドレスが、ユーザー領域１８ｃと拡張ユーザー領域１８ｅとの間のアドレス領域を指定する場合に、アウトオブレンジを示すレスポンスをホスト２０に対して送信する。このように、拡張ユーザー領域１８ｅとユーザー領域１８ｃの間にアウトオブレンジとなる領域を介在することにより、ユーザーによるアドレスの誤認を防止でき、ユーザー領域１８ｃと拡張ユーザー領域１８ｅに連続してデータを書き込むようなミスを防止することが可能である。
【００６７】
さらに、上記実施形態は、ユーザー領域１８ｃに対して拡張ユーザー領域１８ｅを設定した。しかし、これに限定されるものではなく、例えばセキュア領域１８ｂに拡張セキュア領域を設定することも可能である。この場合、上記ＣＭＤ５６によるアクセスに先行して認証のためのシーケンスが必要となる。しかし、基本的には上記第１の実施形態に示したシーケンスと同様に実現することが可能である。このように、セキュア領域１８ｂに拡張セキュア領域を設定することにより、拡張セキュア領域により機密性の高いデータを格納することが可能である。
【００６８】
また、ユーザー領域１８ｃの容量は、ＣＳＤレジスタに記録されたパラメータによって示されている。このため、メモリデバイス１１をフォーマットする際、フォーマッタは、ＣＳＤレジスタ内のパラメータからユーザー領域１８ｃの容量を知ることにより、スタートアドレスから始まる容量分のメモリ領域がユーザー領域１８ｃであると認識することができる。
【００６９】
（第２の実施形態）
上記第１の実施形態において、アクセスが可能とされた拡張ユーザー領域１８ｅは、ユーザ領域１８ｃと同様の読み出しコマンド、又は書き込みコマンドを用いてアクセスされる。
【００７０】
これに対して、第２の実施形態は、拡張ユーザー領域１８ｅをアクセスするために、ユーザー領域１８ｃとは異なる専用の読み出しコマンド、又は書き込みコマンドを定義する。
【００７１】
すなわち、第２の実施形態においても、第１の実施形態と同様に、メモリデバイス１１のＮＡＮＤフラッシュメモリ内に拡張ユーザー領域１８ｅが設定される。第２の実施形態は、ＳＤＡ規格において、現在、用途が定義されていない予約コマンドが、拡張ユーザー領域１８ｅのアクセスコマンドとして定義される。
【００７２】
例えば予約コマンドのうち、ＣＭＤ５８が拡張ユーザー領域１８ｅの読み出しコマンドとして実装され、ＣＭＤ５９が拡張ユーザー領域１８ｅの書き込みコマンドとして実装される。これらアクセスコマンドＣＭＤ５８、ＣＭＤ５９を用いて、開放された拡張ユーザー領域１８ｅがアクセスされる。
【００７３】
尚、セキュア領域にアクセスするコマンドは、ユーザー領域や拡張領域にアクセスするコマンドと異なるコマンドにより構成されている。
【００７４】
上記第２の実施形態によれば、第１の実施形態と異なり、拡張ユーザー領域１８ｅとユーザー領域１８ｃのアクセスコマンドが各々異なっている。このため、誤った領域へのアクセスを防ぐことが可能となり、不用意なデータの破壊を防止することができる。
【００７５】
尚、上記実施形態は、アプリケーション機能としての無線通信機能を有するメモリカードについて説明した。しかし、本実施形態は、上記実施形態に限定されるものではなく、例えば図９に示すように、アプリケーション機能を持たないメモリデバイス１１に適用することも可能である。この場合においても、ＮＡＮＤフラッシュメモリ１８に拡張ユーザー領域１８ｅが設けられ、この拡張ユーザー領域１８ｅに、例えばメモリデバイス１１の動作に必要、且つ消去されてならないデータが可能される。
【００７６】
その他、本発明は上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記各実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【００７７】
１１…メモリデバイス、１８…ＮＡＮＤフラッシュメモリ、１８ｃ…ユーザー領域、１８ｄ…レジスタ領域、１８ｅ…拡張ユーザー領域、２０…ホスト。
【図１】
2012234334.tif 000003
【図２】
2012234334.tif 000004
【図３】
2012234334.tif 000005
【図４】
2012234334.tif 000006
【図５】
2012234334.tif 000007
【図６】
2012234334.tif 000008
【図７】
2012234334.tif 000009
【図８】
2012234334.tif 000010
【図９】
2012234334.tif 000011