説明

メモリ装置

【課題】 外部に読み出されるパラメータが示すユーザー領域の総容量に含まれない拡張ユーザー領域を準備することにより、ファイルシステムのフォーマット等により、特定のデータの消去を防止可能なメモリ装置を提供する。
【解決手段】 不揮性半導体メモリ18は、第1の記憶領域18cと、第2の記憶領域18eを有する。制御部11aは、ホスト20からの第1のコマンドを受け、第1のコマンドに基づき前記第2の記憶領域の使用を許可する。制御部11aは、ホスト20からの第2のコマンドを受け、第2のコマンドに基づき第1の記憶領域の容量を示すパラメータをホストに送信し、制御部は、ホストからの第3のコマンドを受け、第3のコマンドに基づき第1の記憶領域にアクセスし、制御部は、前記第2の記憶領域の使用が許可されたとき、ホストから前記第3のコマンドを受け、第3のコマンドに基づき前記第2の領域にアクセスする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、例えばNANDフラッシュメモリのような不揮発性メモリを有するメモリ装置に関する。
【背景技術】
【0002】
例えばSDTMカードなどのメモリカードは、ユーザーが自由にデータを読み出し、又はデータを書き込むことが可能なユーザー領域を有している。このユーザー領域の総容量はCSD(Card Specific Data)レジスタに記録されている。
【0003】
上記SDカードは、USBリーダーライタなどのホスト機器を用いてファイルシステムのフォーマット等の処理を実行すると、ユーザー領域のデータが全て消去される可能性がある。このため、例えばカードメーカによりSDカードに設定される例えばアプリケーションのプログラムや設定データなどの特定のデータも消去されてしまう。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2003−233795号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
本実施形態は、外部に読み出されるパラメータが示すユーザー領域の総容量に含まれない拡張ユーザー領域を設けることにより、ファイルシステムのフォーマット等により、特定のデータの消去を防止可能なメモリ装置を提供する。
【課題を解決するための手段】
【0006】
本実施形態のメモリ装置によれば、第1の記憶領域と、前記第1の記憶領域以外の第2の記憶領域を有する不揮性半導体メモリと、ホストからの第1のコマンドを受け、前記第1のコマンドに基づき前記第2の記憶領域の使用を許可する制御部と、を具備し、前記制御部は、前記ホストからの第2のコマンドを受け、前記第2のコマンドに基づき前記第1の記憶領域の容量を示すパラメータを前記ホストに送信し、前記制御部は、前記ホストからの第3のコマンドを受け、前記第3のコマンドに基づき前記第1の記憶領域にアクセスし、前記制御部は、前記第2の記憶領域の使用が許可されたとき、前記ホストから前記第3のコマンドを受け、前記第3のコマンドに基づき前記第2の領域にアクセスすることを特徴とする。
【図面の簡単な説明】
【0007】
【図1】実施形態に係るメモリカードの一例を概略的に示す構成図。
【図2】図1に示すNANDフラッシュメモリ内の領域を概略的に示す図。
【図3】図2に示すNANDフラッシュメモリ内の領域を概略的に示す図。
【図4】本実施形態に適用されるコマンドの引数の一例を示す図。
【図5】本実施形態に適用されるコマンドの動作シーケンスの一例を示す図。
【図6】本実施形態の動作の一例を示すシーケンス図。
【図7】本実施形態のホストの動作の一例を示すフローチャート。
【図8】本実施形態のメモリデバイスの動作の一例を示すフローチャート。
【図9】実施形態に係るメモリカードの他の例を概略的に示す構成図。
【発明を実施するための形態】
【0008】
以下、実施の形態について、図面を参照して説明する。
【0009】
(第1の実施形態)
図1は、第1の実施形態が適用される例えばSDメモリカードとしてのメモリデバイス11と、そのホストデバイス20を示している。
【0010】
図1において、メモリデバイス11は、ホスト20に接続されたときに電源供給を受けて動作し、ホスト20からのアクセスに応じた処理を行う。このメモリデバイス11は、カードコントローラ11aを有している。
【0011】
カードコントローラ11aは、例えばホストインターフェース(I/F)12、CPU13、ROM(Read only Memory)14、RAM(Random Access Memory)15、バッファ16、無線インターフェース(I/F)17a、メモリインターフェース(I/F)17bにより構成されている。これらは、バスにより接続されている。メモリインターフェース17bには、例えばNANDフラッシュメモリ18が接続されている。無線通信インターフェース17aには、拡張機能部としての無線LAN信号処理部19aが接続されている。この無線LAN信号処理部19aには、高周波信号を送受信するアンテナATaが接続されている。
【0012】
尚、拡張機能部は、無線LAN信号処理部19aに限らず、その他の無線通信信号処理部19b、及びこの無線通信信号処理部19bに接続されたアンテナATbなどを増設し、マルチファンクションのSDメモリカードを構成することが可能である。例えば、無線LAN信号処理部19aは、例えばWi−Fi(登録商標)による無線通信機能を制御し、無線通信信号処理部19bは、例えばTransferJet(登録商標)による近接無線通信機能を制御する。
【0013】
ホストインターフェース12は、カードコントローラ11aとホスト20との間のインターフェース処理を行う。
【0014】
無線通信インターフェース17aは、無線LAN信号処理部19aや無線通信信号処理部19bとの間のインターフェース処理を行う。
【0015】
メモリインターフェース17bは、カードコントローラ11aとNANDフラッシュメモリ18との間のインターフェース処理を行う。
【0016】
CPU13は、メモリデバイス11全体の制御を司るものである。このCPU13を制御するプログラムは、ROM14の中に格納されているファームウェア(制御プログラム等)を用いるか、或いはRAM115上にロードして所定の処理が実行される。すなわち、CPU13は、各種のテーブルをRAM18上に作成したり、ホスト20から書き込みコマンド、読み出しコマンド、消去コマンドを受けてNANDフラッシュメモリ18上の領域をアクセスしたり、バッファ16を介してデータ転送処理を制御したりする。
【0017】
ROM14は、CPU13により使用される制御プログラムなどのファームウェアを格納する。RAM15は、CPU13の作業エリアとして使用され、制御プログラムや各種のテーブルや後述する拡張レジスタを記憶する。
【0018】
バッファ16は、ホスト20から送られてくるデータを、例えばNANDフラッシュメモリ18へ書き込む際、一定量のデータ(例えば1ページ分)を一時的に記憶したり、NANDフラッシュメモリ18から読み出されたデータをホスト20へ送り出す際、一定量のデータを一時的に記憶したりする。
【0019】
NANDフラッシュメモリ18は、例えば積層ゲート構造のメモリセル、又はMONOS構造のメモリセルにより構成されている。
【0020】
一方、ホスト20は、例えばデジタルカメラや携帯電話、パーソナルコンピュータなどが適用可能である。ホスト20は、ホストコントローラ21、CPU22、ROM23、RAM24、例えばハードディスク25(SSDを含む)により構成されている。これらはバスにより接続されている。
【0021】
CPU22は、ホスト全体を制御する。ROM23は、CPU22の動作に必要なファームウェアを記憶している。RAM24は、例えばCPU22の作業領域として使用されるが、CPU22が実行可能なプログラムもここにロードされ実行される。ハードディスク25は、各種データを保持する。ホストコントローラ21は、メモリデバイス11が接続された状態において、メモリデバイス11とのインターフェース処理を行う。さらに、CPU22の指示に従って、後述する各種コマンドを発行する。
【0022】
図2は、NANDフラッシュメモリ18内の領域を概略的に示している。SDメモリカードを構成するNANDフラッシュメモリ18の記憶領域は、一般的にシステム領域18a、セキュア領域18b、ユーザー領域18c、及び複数のレジスタを有するレジスタ領域18dを含んでいる。
【0023】
システム領域18aは、メモリデバイス11が動作するための制御ソフトウエアやその他システムデータを格納しており、一般ユーザーとしてのホスト20からは直接アクセスできない領域である。
【0024】
セキュア領域18bは、セキュリティ上保護されるべきデータが格納され、一般ユーザーとしてのホスト20がメモリデバイス11をアクセスするためには認証を行う必要がある。
【0025】
ユーザー領域18cは、一般ユーザーとしてのホスト20を用いて自由にアクセス可能な領域である。
【0026】
レジスタ領域18dは、このカードの仕様や動作条件などのデータを保持する複数のレジスタを有している。このうち、CSDレジスタには、例えばユーザー領域18cの容量を示すパラメータが記録されている。このパラメータは、容量を直接に表す1つのパラメータであっても良いし、組み合わせることで容量を計算し得る複数のパラメータであっても良い。尚、セキュア領域の容量は、CSDレジスタではなく、例えばシステム領域18a内にSDステータス18fと呼ばれるステータス情報として記録される。
【0027】
一般ユーザーがホスト20を用いてメモリデバイス11をアクセスする場合において、メモリデバイス11が未フォーマットである場合、又はホスト20に対して未対応のフォーマットである場合、ホスト20の機能に対応させるため、専用のフォーマットソフト(フォーマッタとも言う)を用いてNANDフラッシュメモリ18をフォーマットする必要がある。
【0028】
また、既にフォーマット済みのNANDフラッシュメモリ18であっても、例えばユーザー領域18c内のデータを一度リセットする等の場合、再フォーマットする必要がある。
【0029】
従来のメモリデバイスの場合、NANDフラッシュメモリをフォーマットすると、ユーザー領域18c、及びセキュア領域18bのデータが消去される可能性がある。このため、ユーザー領域に必要なデータが記録されている場合、他の記憶媒体にバックアップする必要がある。しかし、そのデータが、例えばカードメーカにより登録されたアプリケーションの設定データのようなデータである場合、ファイルシステムで管理されないため、バックアップすることすらできない。
【0030】
そこで、第1の実施形態は、一般のホストが発行可能なコマンドのうち、例えば用途が決められていないオプションコマンドであるコマンド56(以下、CMD56と表記する)を拡張領域切換コマンドと定義し、このCMD56をホスト20からメモリデバイス11へ発行することにより、カードのユーザー領域18c内に事前に設置された拡張ユーザー領域18eに対して、アクセスの許可又は禁止を設定可能とする。この拡張ユーザー領域18eに記録されたデータは、例えフォーマットが実行されてもデータは消去されず、データが保持可能となる。
【0031】
NANDフラッシュメモリ18内の拡張ユーザー領域18eは、次のようにして用意される。NANDフラッシュメモリ18は、真のアドレスである物理アドレスを有している。一方、メモリデバイス11のカードコントローラ11aが扱うアドレスとして論理アドレスを有している。この論理アドレスは、ホスト20とカードコントローラ11a間で使用される仮想アドレスであり、物理アドレスと1対1に対応される。メモリデバイス11が動作するためには、この論理アドレスと物理アドレスを対応付ける必要がある。通常、ユーザー領域18cは、物理アドレスと論理アドレスの対応付けが行われ、これらの関係を示すテーブル等が用意されている。拡張ユーザー領域18eについても、ユーザー領域18cと同様に物理アドレスと論理アドレスが対応付けられる。
【0032】
図3は、ユーザー領域18cと拡張ユーザー領域18eの関係を概略的に示している。ユーザ領域18cは、下位のスタートアドレスから上位のエンドアドレスにかけて配置され、スタートアドレスとエンドアドレスとの間のアドレスで示されるメモリ領域の容量がユーザ領域18cの容量となる。このユーザー領域18cの容量は、CSDレジスタに記録されたパラメータによって示される。メモリデバイス11をフォーマットする際、フォーマッタは、CSDレジスタ内のパラメータからユーザー領域18cの容量を知ることで、スタートアドレスから始まる容量分のメモリ領域がユーザー領域18cであると認識する。
【0033】
拡張ユーザー領域18eに割り当てる論理アドレスは、例えばCSDレジスタによって定められるユーザー領域18cのエンドアドレスの次のアドレスから割り当てることにより、ユーザー領域18cと区別することができる。拡張ユーザー領域18eに割り当てる論理アドレスは、ユーザー領域18cの末端アドレスの次のアドレスに限定されるものではなく、他のアドレスとすることも可能である。
【0034】
このように拡張ユーザー領域18eに対する論理アドレスを割り当てることにより、ホスト20からメモリデバイス11に対して拡張領域を切換えるためのコマンドが発行された場合、拡張ユーザー領域18eを許可又は禁止することが対応可能となる。
【0035】
尚、拡張ユーザー領域18eは、上記のように静的に、予め割り当てておくばかりでなく、例えば拡張ユーザー領域が必要となった時点において、動的に拡張ユーザー領域を割り当てることも可能である。この場合、例えばホスト20から拡張ユーザー領域の許可要求を受けたとき、拡張ユーザー領域のアドレスを割り当てることも実現可能である。この場合、元々拡張ユーザー領域が用意されている分けではないため、例えば物理アドレスと論理アドレスが対応付けできる範囲で拡張ユーザー領域を割り当てられる。
【0036】
ユーザーがNANDフラッシュメモリの拡張ユーザー領域18eへのアクセス許可及び禁止を求める場合、ユーザーはホスト20を用いて拡張ユーザー領域18eの切換コマンドとして定義するとともに、機能を実装したCMD56をメモリデバイス11に対して発行する。CMD56は32ビットの引数を持っており、このうち、ビット0の値のみ規定されている。ビット0の値はデータの転送方向を指し示しており、このビット0が“0”である場合、データの書き込みモードを意味し、データ“1”である場合、データの読み出しモードを意味する。
【0037】
図4は、CMD56の引数を示している。CMD56は、上記以外のことは定められておらず、引数のビット31〜ビット1と入出力データ、及び処理内容に関してはカードベンダーが個別に設定可能とされている。
【0038】
図5は、本実施形態のコマンドシーケンスの一例を示している。ホスト20からCMD56が発行されると、メモリデバイス11は、これを受け、レスポンス(R)をホスト20に送る。
【0039】
CMD56が書き込みモードの場合、ホスト20は、レスポンスを受けると、例えば512バイトのデータをメモリデバイス11に送る。メモリデバイス11は、このデータを受けると、ビジー信号をホスト20に送り、CMD56に従った処理を実行する。
【0040】
また、CMD56が読み出しモードの場合、ホスト20は、メモリデバイス11からレスポンスを受けると共に、後述するように、例えばメモリデバイス11における書き込み処理の処理結果を読み出しデータとして受ける。
【0041】
本実施形態において、ホスト20からCMD56に伴いホスト20又はメモリデバイス11から出力されるデータは、CMD56が書き込みモード、又は読み出しモードにおいて、次に示す意味を持っている。
【0042】
例えばCMD56が書き込みモードにおいて、ホスト20から出力されるデータの1バイト目が“0x10”(“0x”は、16進であることを示している)の場合、拡張ユーザー領域18eの開放(アクセス)“許可要求”を意味し、“0x20”の場合、開放“禁止要求”を意味する。
【0043】
また、CMD56が読み出しモードにおいて、メモリデバイス11から出力されるデータの1バイト目が“0x10”の場合、拡張ユーザー領域18eの開放“成功”を意味し、“0xF0”の場合、開放“失敗”を意味する。
【0044】
次に、図6、図7、図8を参照して、ホスト20が上記静的手法により、拡張ユーザー領域18eが定義されたメモリデバイス11に対して、拡張ユーザー領域18eへ開放許可要求を発行し、メモリデバイス11において、この要求を処理する動作について説明する。図6乃至図8において、同一部分には同一符号を付している。
【0045】
ホスト20は、先ず、CMD56を書き込みモード(ビット0は“0”)で発行する(S31)。
【0046】
メモリデバイス11は、ホスト20からのCMD56を受信し、ホスト20へレスポンスを返す(S41)。
【0047】
ホスト20は、レスポンスを受信した後、メモリデバイス11に対して拡張ユーザー領域18eに対するアクセス許可要求を送信する(S32)。すなわち、メモリデバイス11に対する書き込みデータの1バイト目は、許可要求“0x10”である。
【0048】
メモリデバイス11は、NANDフラッシュメモリ18が拡張ユーザー領域18eを有するかどうかを判別する(S42)。この結果、拡張ユーザー領域18eが有る場合、拡張ユーザー領域18eの解放を試みる。その際、メモリデバイス11は、先ず、ホスト20へビジー信号を発行する(S43)。この後、拡張ユーザー領域18eの開放処理が実行される(S44)。メモリデバイス11は、拡張ユーザー領域18eの開放処理が終了すると、ビジー信号を解除する(S45)。
【0049】
次いで、ホスト20は、メモリデバイス11からのビジー信号の解除を確認した後(S33)、CMD56を読み出しモード(ビット0は“1”)を発行する(S34)。メモリデバイス11は読み出しモードのCMD56を受信すると(S46)、このコマンドに対するレスポンスと共に、拡張ユーザー領域18eの開放処理が成功したか、失敗したかを示す成否結果を読み出しデータとしてホスト20へ発行する(S47)。すなわち、読み出しデータの1バイト目が“0x10”であれば成功であり、“0xF0”であれば失敗である。
【0050】
ホスト20は、メモリデバイス11から供給された読み出しデータに基づき、拡張ユーザー領域18eの開放処理が成功したかどうかを判別する(S36)。この結果、ステータスが“0x10”である場合、拡張ユーザー領域18eの開放処理は成功であり、ホスト20は拡張ユーザー領域18eに対してアクセス可能となる。また、ステータスが“0xF0”である場合、拡張ユーザー領域18eの開放処理は失敗であり、ホスト20は拡張ユーザー領域18eに対してアクセスすることができない。
【0051】
尚、上記フローに加えて次のようにすることも可能である。
【0052】
CMD56の読み出しデータ内において、メモリデバイス11が開放に成功した拡張ユーザー領域18eの容量を記述することが可能である。この場合、ホスト20は、この容量値を読むことにより、メモリデバイス11の拡張ユーザー領域18eの容量を知ることができる。
【0053】
また、CMD56の書き込みデータにおいて、ホスト20が使用したい拡張ユーザー領域18eの容量を記述する場合、メモリデバイス11は、ホスト20が要求する容量分のみ拡張することが可能となる。
【0054】
どちらの場合も、ホスト20は、拡張ユーザー領域18eの容量を知ることができるため、拡張ユーザー領域18eを超える範囲へのアクセスミス等を防ぐこともできる。さらに、後者の場合、必要な容量のみ開放できるため、拡張ユーザー領域18eの容量を無駄なく使うことが可能である。
【0055】
上記のように、拡張ユーザー領域18eへアクセス可能となったメモリデバイス11に対して、通常のSDメモリカードのコマンドを用いて、データの書き込み又は読み出しを行うことが可能である。
【0056】
拡張ユーザー領域18eの必要なアクセスが終了した際、その領域へのアクセスを禁止する必要がある可能性がある。この場合、図6乃至8に示す、許可のシーケンスと同様に、拡張ユーザー領域18eに対して、CMD56を書き込みモードとして発行し、このデータの1バイト目を“0x20”(禁止要求)とする。この後、CMD56を読み出しモードとし、読み出しデータに基づき、禁止処理が成功したかどうかを確認する。
【0057】
上記CMD56の一連の処理が成功した場合、メモリデバイス11の拡張ユーザー領域18eへのアクセスが不可能となる。
【0058】
一方、拡張ユーザー領域18eに対するアクセスが許可された状態のメモリデバイス11は、拡張ユーザー領域18eへのアクセスが禁止される前に、何らかの原因により、電源が遮断される可能性も考えられる。この場合、次にメモリデバイス11が起動された際、拡張ユーザー領域18eへアクセスを可能とするか、不可能とするかを、メモリデバイス11の用途に応じて、仕様として決めておく必要がある。
【0059】
具体的には、メモリデバイス11の電源遮断時、拡張ユーザー領域18eに対するアクセス権、すなわち、アクセスの許可情報は、メモリコントローラ11aにより、例えばシステム領域18aに格納される。一例としては、起動時、拡張ユーザー領域18eに対するアクセスは、禁止状態であることが望ましい。
【0060】
仮に、拡張ユーザー領域18eがアクセス許可状態のまま、メモリデバイス11の電源が切断され、電源投入後にアクセス許可状態を維持する場合、ホスト20は、メモリデバイス11の拡張ユーザー領域18eのアクセス可能な容量を確認する必要がある。
【0061】
この場合、ホスト20は、例えばCMD56を書き込みモードとし、そのデータの1バイト目を例えば“0x30”に設定する。このデータは、メモリデバイス11の拡張ユーザー領域18eの容量の確認要求と定義する。この書き込みコマンド及び書き込みデータの処理の後、ホスト20は、CMD56を読み出しモードとして発行し、読み出しデータとして、確認要求の処理結果としての拡張ユーザー領域18eの容量を受ける。このような構成とすることにより、ホスト20は、拡張ユーザー領域18eのアクセス可能な容量を確認することが可能となる。
【0062】
上記メモリデバイス11の起動時に、メモリデバイス11から拡張ユーザー領域18eのアクセス可能な容量をホスト20通知することは、拡張ユーザー領域18eのアクセスが許可状態であることに係らず、禁止状態であってもよい。この場合、ホスト20がメモリデバイス11に対してCMD56で拡張ユーザー領域18eの容量の確認要求を発行した場合、メモリデバイス11からゼロbyteとレスポンスすることにより、ホスト20は、拡張ユーザー領域18eが禁止状態であることを確認することができる。
【0063】
上記第1の実施形態によれば、メモリデバイス11のNANDフラッシュメモリ18に、拡張ユーザー領域18eを設置し、この拡張ユーザー領域18eのアクセス権を、オプションコマンドとしてのCMD56、及び書き込みデータを用いて切替え可能としている。このため、例えばメモリデバイス11のアプリケーションとしての無線LAL信号処理部19aを制御するアプリケーションプログラムや設定データを、拡張ユーザー領域18eに格納することにより、フォーマット等のユーザー領域18cを消去するようなアクセスが実行された場合においても、拡張ユーザー領域18e内のデータを保護することが可能である。
【0064】
また、CMD56、及び書き込みデータを用いて、拡張ユーザー領域18eの容量を、ホスト20から可変とすることも可能である。このため、ホスト20により必要なサイズの拡張ユーザー領域18eを設定することが可能であるため、拡張ユーザー領域18eを無駄なく使用することができる。
【0065】
さらに、拡張ユーザー領域18eを、動的に割り当てることにより、無駄な割り当ても回避することが可能である。このため、NANDフラッシュメモリ18のユーザー領域18cの容量低減を防止でき、ユーザー領域18cをより効果的に使用することが可能となる。
【0066】
また、拡張ユーザー領域18eに対する論理アドレス範囲の割り当ては、必ずしもユーザー領域18cに続くアドレスに配置する必要はない。むしろ、ユーザー領域18cから離れたアドレスに拡張ユーザー領域18eを割り当てても良い。拡張ユーザー領域18eが離れて割り当てられた場合、ユーザー領域18cと拡張ユーザー領域18eとの間に、NANDフラッシュメモリ18の物理アドレスに割り当てられないアドレス領域が生じる。メモリデバイス11は、ホスト20からコマンドとともに受け取ったアドレスが、ユーザー領域18cと拡張ユーザー領域18eとの間のアドレス領域を指定する場合に、アウトオブレンジを示すレスポンスをホスト20に対して送信する。このように、拡張ユーザー領域18eとユーザー領域18cの間にアウトオブレンジとなる領域を介在することにより、ユーザーによるアドレスの誤認を防止でき、ユーザー領域18cと拡張ユーザー領域18eに連続してデータを書き込むようなミスを防止することが可能である。
【0067】
さらに、上記実施形態は、ユーザー領域18cに対して拡張ユーザー領域18eを設定した。しかし、これに限定されるものではなく、例えばセキュア領域18bに拡張セキュア領域を設定することも可能である。この場合、上記CMD56によるアクセスに先行して認証のためのシーケンスが必要となる。しかし、基本的には上記第1の実施形態に示したシーケンスと同様に実現することが可能である。このように、セキュア領域18bに拡張セキュア領域を設定することにより、拡張セキュア領域により機密性の高いデータを格納することが可能である。
【0068】
また、ユーザー領域18cの容量は、CSDレジスタに記録されたパラメータによって示されている。このため、メモリデバイス11をフォーマットする際、フォーマッタは、CSDレジスタ内のパラメータからユーザー領域18cの容量を知ることにより、スタートアドレスから始まる容量分のメモリ領域がユーザー領域18cであると認識することができる。
【0069】
(第2の実施形態)
上記第1の実施形態において、アクセスが可能とされた拡張ユーザー領域18eは、ユーザ領域18cと同様の読み出しコマンド、又は書き込みコマンドを用いてアクセスされる。
【0070】
これに対して、第2の実施形態は、拡張ユーザー領域18eをアクセスするために、ユーザー領域18cとは異なる専用の読み出しコマンド、又は書き込みコマンドを定義する。
【0071】
すなわち、第2の実施形態においても、第1の実施形態と同様に、メモリデバイス11のNANDフラッシュメモリ内に拡張ユーザー領域18eが設定される。第2の実施形態は、SDA規格において、現在、用途が定義されていない予約コマンドが、拡張ユーザー領域18eのアクセスコマンドとして定義される。
【0072】
例えば予約コマンドのうち、CMD58が拡張ユーザー領域18eの読み出しコマンドとして実装され、CMD59が拡張ユーザー領域18eの書き込みコマンドとして実装される。これらアクセスコマンドCMD58、CMD59を用いて、開放された拡張ユーザー領域18eがアクセスされる。
【0073】
尚、セキュア領域にアクセスするコマンドは、ユーザー領域や拡張領域にアクセスするコマンドと異なるコマンドにより構成されている。
【0074】
上記第2の実施形態によれば、第1の実施形態と異なり、拡張ユーザー領域18eとユーザー領域18cのアクセスコマンドが各々異なっている。このため、誤った領域へのアクセスを防ぐことが可能となり、不用意なデータの破壊を防止することができる。
【0075】
尚、上記実施形態は、アプリケーション機能としての無線通信機能を有するメモリカードについて説明した。しかし、本実施形態は、上記実施形態に限定されるものではなく、例えば図9に示すように、アプリケーション機能を持たないメモリデバイス11に適用することも可能である。この場合においても、NANDフラッシュメモリ18に拡張ユーザー領域18eが設けられ、この拡張ユーザー領域18eに、例えばメモリデバイス11の動作に必要、且つ消去されてならないデータが可能される。
【0076】
その他、本発明は上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記各実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【0077】
11…メモリデバイス、18…NANDフラッシュメモリ、18c…ユーザー領域、18d…レジスタ領域、18e…拡張ユーザー領域、20…ホスト。

【特許請求の範囲】
【請求項1】
第1の記憶領域と、前記第1の記憶領域以外の第2の記憶領域を有する不揮性半導体メモリと、
ホストからの第1のコマンドを受け、前記第1のコマンドに基づき前記第2の記憶領域の使用を許可する制御部と、を具備し、
前記制御部は、前記ホストからの第2のコマンドを受け、前記第2のコマンドに基づき前記第1の記憶領域の容量を示すパラメータを前記ホストに送信し、
前記制御部は、前記ホストからの第3のコマンドを受け、前記第3のコマンドに基づき前記第1の記憶領域にアクセスし、
前記制御部は、前記第2の記憶領域の使用が許可されたとき、前記ホストから前記第3のコマンドを受け、前記第3のコマンドに基づき前記第2の記憶領域にアクセスすることを特徴とするメモリ装置。
【請求項2】
第1の記憶領域と、前記第1の記憶領域以外の第2の記憶領域と、ホストの認証後アクセス可能とされる第3の記憶領域を有する不揮性半導体メモリと、
前記ホストからの第1のコマンドを受け、前記第1のコマンドに基づき前記第2の記憶領域の使用を許可する制御部と、を具備し、
前記制御部は、前記ホストからの第2のコマンドを受け、前記第2のコマンドに基づき前記第1の記憶領域の容量を示すパラメータを前記ホストに送信し、
前記制御部は、前記ホストからの第3のコマンドを受け、前記第3のコマンドに基づき前記第1の記憶領域にアクセスし、
前記制御部は、前記第2の記憶領域の使用が許可されたとき、前記ホストから前記第3のコマンドと異なる第4のコマンドを受け、前記第4のコマンドに基づき前記第2の記憶領域にアクセスすることを特徴とするメモリ装置。
【請求項3】
前記第2の記憶領域は、予めアドレスが割り付けられていることを特徴とする請求項1又は2記載のメモリ装置。
【請求項4】
前記第2の記憶領域は、前記第1のコマンドにより第2の記憶領域の使用が許可されるとき、アドレスが割り付けられることを特徴とする請求項1又は2記載のメモリ装置。
【請求項5】
前記制御部は、電源遮断時、前記第2の記憶領域の使用を許可又は禁止するアクセス情報を前記不揮性半導体メモリに記憶させ、電源投入時、前記不揮性半導体メモリに記憶された前記アクセス情報に基づき、前記第2の記憶領域を使用許可又は禁止状態に設定することを特徴とする請求項1又は2記載のメモリ装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2012−234334(P2012−234334A)
【公開日】平成24年11月29日(2012.11.29)
【国際特許分類】
【出願番号】特願2011−102118(P2011−102118)
【出願日】平成23年4月28日(2011.4.28)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】