(57)【要約】【課題】  暗号キーの管理などの煩雑な作業を伴わずに、データの漏えいや改ざんに対して保護することが可能なメモリカードを提供することを目的とする。【解決手段】  ユーザデータを格納するユーザデータ領域１１０と、データ重要度を格納するデータ重要度格納領域１１４と、データＩＤを格納するデータＩＤ格納領域１１５とを有する不揮発性半導体メモリ１０８と、ホスト機器１０１からユーザデータ領域１１０へのアクセスが発生した場合に、そのアクセス対象のデータに対応するデータ重要度およびデータＩＤを取得し、ホスト機器１０１からホストレベルおよびホストＩＤを取得する管理手段１１６と、データ重要度、データＩＤ、ホストレベルおよびホストＩＤに基づいて、ホスト機器１０１からのアクセスの許否を判断する比較手段１１７とを具備することを特徴としている。【選択図】  図１
2007133770.tif 000002
【特許請求の範囲】
【請求項１】
ホスト機器に装着され、前記ホスト機器からアクセスされるメモリカードにおいて、
ユーザデータを格納するユーザデータ領域と、前記ユーザデータ領域における所定の単位ごとに対して設定されたデータ重要度を格納するデータ重要度格納領域と、前記ユーザデータ領域における所定の単位ごとに対して設定されたデータＩＤを格納するデータＩＤ格納領域とを有する不揮発性半導体メモリと、
前記ホスト機器から前記ユーザデータ領域へのアクセスが発生した場合に、そのアクセス対象のデータに対応するデータ重要度およびデータＩＤを取得し、前記ホスト機器からホストレベルおよびホストＩＤを取得する管理手段と、
前記管理手段が取得したデータ重要度、データＩＤ、ホストレベルおよびホストＩＤに基づいて、前記ホスト機器からのアクセスの許否を判断する比較手段とを具備することを特徴とするメモリカード。
【請求項２】
前記不揮発性半導体メモリは、前記ユーザデータ領域における所定の単位ごとに対して設定されたデータオフセットを格納するオフセット格納領域を更に具備し、
前記管理手段は、前記ホスト機器から前記ユーザデータ領域へのアクセスが発生した場合に、そのアクセス対象のデータに対応する前記データオフセットを取得し、
前記比較手段は、前記データ重要度と前記データオフセットとを足し合わせた値と前記ホストレベルとを比較し、前記ホスト機器からのアクセスの許否を判断することを特徴とする請求項１に記載のメモリカード。
【請求項３】
ホスト機器に装着して使用するメモリカードに搭載され、不揮発性半導体メモリを制御するプロセッサモジュールにおいて、
前記ホスト機器から前記不揮発半導体メモリへのアクセスが発生した場合に、そのアクセス対象のデータに対応するデータ重要度およびデータＩＤを取得し、前記ホスト機器からホストレベルおよびホストＩＤを取得する管理手段と、
前記管理手段が取得したデータ重要度、データＩＤ、ホストレベルおよびホストＩＤに基づいて、前記ホスト機器からのアクセスの許否を判断する比較手段とを具備することを特徴とするプロセッサモジュール。
【請求項４】
前記管理手段は、前記ホスト機器から前記ユーザデータ領域へのアクセスが発生した場合に、そのアクセス対象のデータに対応するデータオフセットを取得し、
前記比較手段は、前記データ重要度と前記データオフセットとを足し合わせた値と前記ホストレベルとを比較し、前記ホスト機器からのアクセスの許否を判断することを特徴とする請求項３に記載のプロセッサモジュール。
【請求項５】
メモリカードが装着され、前記メモリカードにアクセスするホスト機器の制御方法において、
前記メモリカードにアクセスする場合に、当該ホスト機器のアクセス能力を示すホストレベルと、アクセス対象のデータの管理者を示すユーザＩＤを前記メモリカードに送信する第１のステップと、
前記メモリカードへのアクセスの許否を前記メモリカードからレスポンスとして受信する第２のステップとを具備することを特徴とするホスト機器の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリカードに関し、特にプロセッサモジュールを搭載したメモリカードに関する。また、本発明は、上記メモリカードにアクセスするホスト機器の制御方法に関する。
【背景技術】
【０００２】
近年、携帯電話やモバイル機器などの市場が急速に拡大しており、それに伴って様々なサービスが提供されて電子化データがやりとりされている。また、従来は紙に記録して伝えられていた手紙や報告書などが電子化され、病院のカルテといった重要かつ個人的な情報も病院内といったクローズなシステムでは電子化が進んでいる。今後は、このような内部データも電子化データのまま外部のシステムとやりとりする方向に進んでゆくと考えられる。例えば、病院が発行する処方薬を電子化することで、紙の処方箋で発生していた文字の読みとりミスによる薬品の取り違えや投薬量の間違いなどを減少させることができ、より正確な投薬管理ができるようになる。
【０００３】
これらの電子化データを保存し、持ち運ぶためのストレージデバイスとして、コンパクトで大容量なメモリカードは適当なツールである。
【０００４】
なお、特許文献１には、半導体メモリカードとホスト機器にＩＤを設けることで、共通のＩＤを持つ半導体メモリカードとホスト機器との間でのみでデータ操作が可能となるようにしたものが記載されている。
【特許文献１】特開平６−１３９４２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このようにメモリカードの応用例が拡大してくると、データの漏えいや改ざんに対する防護が必要となる。例えば、メモリカード内の個人情報を他人に読まれてしまったり、搾取目的で投薬の内容を改ざんしたり、投薬情報を誤って消してしまったりする危険性がある。これらの危険性に対しては、現時点ではあまり有効な手だてがなされていない。例えば、特許文献１に記載された技術では、共通のＩＤを持つ半導体メモリカードとホスト機器との間でのみでデータ操作が可能としているため、不特定多数のホスト機器でも読み出し可能な条件を満足することは困難である。
【０００６】
また、データを暗号化して管理することもデータの漏えいや改ざんに対して効果的ではあるが、鍵の管理や復号化ソフトウエアが必要になることなどからあまり一般化しておらず、どこでも通用するとは言い難い。また、上述の例で言えば、ＰＧＰに代表されるような公開暗号鍵方式では、病院や薬局別に暗号化キーを管理する必要があり、数多くの薬局や病院に対して別々な暗号化キーを用意することは現実的には困難である。
【０００７】
本発明は、以上のことを鑑みてなされたものであり、暗号キーの管理などの煩雑な作業を伴わずに、データの漏えいや改ざんに対して保護することが可能なメモリカードを提供することを目的とする。また、本発明は、上記メモリカードに搭載されるプロセッサモジュールを提供することを目的とする。更に、本発明は、上記メモリカードにアクセスするホスト機器の制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明に係るメモリカードは、ホスト機器に装着され、前記ホスト機器からアクセスされるメモリカードにおいて、ユーザデータを格納するユーザデータ領域と、前記ユーザデータ領域における所定の単位ごとに対して設定されたデータ重要度を格納するデータ重要度格納領域と、前記ユーザデータ領域における所定の単位ごとに対して設定されたデータＩＤを格納するデータＩＤ格納領域とを有する不揮発性半導体メモリと、前記ホスト機器から前記ユーザデータ領域へのアクセスが発生した場合に、そのアクセス対象のデータに対応するデータ重要度およびデータＩＤを取得し、前記ホスト機器からホストレベルおよびホストＩＤを取得する管理手段と、前記管理手段が取得したデータ重要度、データＩＤ、ホストレベルおよびホストＩＤに基づいて、前記ホスト機器からのアクセスの許否を判断する比較手段とを具備することを特徴としている。
【０００９】
また、本発明に係るプロセッサモジュールは、ホスト機器に装着して使用するメモリカードに搭載され、不揮発性半導体メモリを制御するプロセッサモジュールにおいて、前記ホスト機器から前記不揮発半導体メモリへのアクセスが発生した場合に、そのアクセス対象のデータに対応するデータ重要度およびデータＩＤを取得し、前記ホスト機器からホストレベルおよびホストＩＤを取得する管理手段と、前記管理手段が取得したデータ重要度、データＩＤ、ホストレベルおよびホストＩＤに基づいて、前記ホスト機器からのアクセスの許否を判断する比較手段とを具備することを特徴としている。
【００１０】
更に、本発明に係るホスト機器の制御方法は、メモリカードが装着され、前記メモリカードにアクセスするホスト機器の制御方法において、前記メモリカードにアクセスする場合に、当該ホスト機器のアクセス能力を示すホストレベルと、アクセス対象のデータの管理者を示すユーザＩＤを前記メモリカードに送信する第１のステップと、前記メモリカードへのアクセスの許否を前記メモリカードからレスポンスとして受信する第２のステップとを具備することを特徴としている。
【発明の効果】
【００１１】
本発明によれば、暗号キーの管理などの煩雑な作業を伴わずに、データの漏えいや改ざんに対して保護することが可能なメモリカードを提供することができる。また、本発明によれば、上記メモリカードに搭載されるプロセッサモジュールを提供することができる。更に、本発明によれば、上記メモリカードにアクセスするホスト機器の制御方法を提供することができる。
【発明を実施するための最良の形態】
【００１２】
以下に、本発明に係るメモリカード、プロセッサモジュールおよびホスト機器の制御方法についての実施例を図１乃至１６を参照して説明する。
【００１３】
（第１の実施の形態）
図１は、第１の実施の形態に係るホスト機器とメモリカードの概略構成を示す図面である。ホスト機器１０１は、メモリカード１０２が複数装着可能なカードインタフェース１０３と、ホスト機器１０１の制御中枢をなすＣＰＵ１０４と、ＲＡＭ（Random access memory）などで構成されるシステムメモリ１０５と、ホスト機器１０１の動作などを表示する表示装置１０６と、ホスト機器１０１のデータ読み出し能力を表すホストレベルを格納したＲＯＭ（Read only memory）１０７とを備えている。ホスト機器１０１の例としては、パーソナルコンピュータ（以下、ＰＣと称す）などの電子機器が挙げられる。
【００１４】
ホストレベルは、メモリカード１０２内のデータにホスト機器１０１がアクセスするための能力を示す値であり、ホスト機器１０１の製造時に付加される固有の値である。ここで、ホスト機器１０１のホストレベルについて説明する。ホストレベルは、ホスト機器１０１からメモリカード１０２に通知され、メモリカード１０２のユーザデータに対する読み出しや書き込み、消去操作といったアクセス許可の可否の判定に使用される。ホストレベルが高いほど、重要度が高く設定されたメモリカード１０２内のユーザデータにホスト機器１０１がアクセスすることが可能となる。以下では、ホストレベルのサイズとして1Byteが割り当てられ、最も低いホストレベルが0x00に、最も高いホストレベルが0xFEに設定されているとする。また、0xFFの値は特別に使用できないものとする。
【００１５】
ホストレベルはホスト機器１０１のユーザ区分により異なる設定値が定められている。ここでは公共性を勘案して、例えば一般ユーザのＰＣ等の個人で使用するホスト機器では0x40以下、官公庁や病院等の公共性の高いところのホスト機器では一般ユーザよりもレベルの高い0x90以上といった区分がなされているものとする。また、ホスト機器１０１は、メモリカード１０２にデータを書き込む際には、データの秘匿レベルを表すデータレベルとデータの管理者を示すユーザＩＤをデータに付与する。このデータレベルとユーザＩＤは、ホスト機器１０１のユーザにより任意に指定される。
【００１６】
データレベルは、メモリカード１０２にデータを書き込む際に、データの重要度を設定するためにホスト機器１０１から通知される値である。以下では、データレベルのサイズとして1Byteが割り当てられ、最も低いデータレベルが0x00に、最も高いデータレベルが0xFEに設定されているとする。また、0xFFの値は特別に使用できないものとする。
【００１７】
ユーザＩＤは、ホスト機器１０１がメモリカード１０２内のユーザデータにアクセスする際に、ユーザデータの管理者を表す値としてホスト機器１０１からメモリカード１０２に通知される値である。以下では、データレベルのサイズとして8Byteが割り当てられ、0xFFFFFFFFFFFFFFFFの値は特別に指定できないものとする。また、ユーザＩＤ＝0x0000000000000000はユーザＩＤが指定されていない場合を示す。更に、データレベル＝0x00の場合はユーザＩＤ＝0x0000000000000000に設定され、ユーザＩＤが指定されないものとする。すなわち、メモリカード１０２に書き込むユーザデータに対して、読み出し・書込みの制限を付けないことを示す。
【００１８】
メモリカード１０２は、ホスト機器１０１のカードインタフェース１０３に装着されることにより電源の供給を受けて動作し、ホスト機器１０１からのアクセスに応じた処理を行う。このメモリカード１０２は、ＮＡＮＤ型フラッシュメモリ１０８とプロセッサモジュール１０９を有している。
【００１９】
ＮＡＮＤ型フラッシュメモリ１０８は、例えば、通常の消去がブロック（複数ページ）単位で行われる不揮発性の半導体メモリである。このブロック単位は、例えば16kByteである。また、ＮＡＮＤ型フラッシュメモリ１０８は、例えば、ページと称する単位で、データの書き込みおよび読み出しが行われるようになっている。このＮＡＮＤ型フラッシュメモリ１０８は、例えば０．０９μｍプロセス技術を用いて製作される。即ち、ＮＡＮＤ型フラッシュメモリ１０８のデザインルールは、０．１μｍ未満となっている。なお、ＮＡＮＤ型フラッシュメモリ１０８は、一つのメモリセルに１ビットの情報を記憶する２値メモリであってもよいし、一つのメモリセルに２ビット以上の情報を記憶する多値メモリであってもよい。また、メモリカード１０２を実用上有効な製品とするためには、ＮＡＮＤ型フラッシュメモリ１０８の記憶容量は1Gbyte以上であることが望ましい。
【００２０】
ＮＡＮＤ型フラッシュメモリ１０８のデータが書き込まれる領域（データ記憶領域）は、図１に示すように、保存されるデータに応じて複数の領域に区分けされている。ＮＡＮＤ型フラッシュメモリ１０８は、データ記憶領域として、ユーザデータを格納するユーザデータ領域１１０と、メモリカード１０２に関する管理情報を主に格納するための管理データ領域１１１と、機密データを格納する機密データ領域１１２と、重要なデータを格納するための保護データ領域１１３とを備えている。
【００２１】
ユーザデータ領域１１０は、メモリカード１０２を使用するユーザが自由にアクセスおよび使用することが可能な領域である。保護データ領域１１３は、メモリカード１０２に接続されたホスト機器１０１との相互認証によりホスト機器１０１の正当性が証明された場合にのみアクセスが可能となる領域である。
【００２２】
管理データ領域１１１は、メモリカード１０１のセキュリティ情報やメディアＩＤなどのカード情報が格納されている領域である。機密データ領域１１２は、暗号化に用いる鍵情報や認証時に使用する機密データが保存されており、ホスト機器１０１からはアクセス不可能な領域である。
【００２３】
また、ＮＡＮＤ型フラッシュメモリ１０８は、データ重要度（データレベル）を格納するデータ重要度格納領域１１４と、データＩＤを格納するデータＩＤ格納領域１１５とを備えている。データ重要度とデータＩＤは、ユーザデータ領域１１０のセクター（例えば、512Byte）や消去ブロックといった任意の単位ごとに対して付与される。以下では、便宜上、データ重要度とデータＩＤが消去ブロック単位ごとに対して付与される場合を例に挙げて説明する。
【００２４】
データ重要度は、データ重要度格納領域１１４に格納されたデータレベルをメモリカード１０２が取得したものであり、ホスト機器１０１がアクセスしようとするユーザデータの重要度を示す値である。本実施形態においては、データ重要度とホストレベルとの大小が、ユーザデータに対する読み出し・書込み動作の許可・不許可の判断材料の１つとなっている。データ重要度のサイズや数値範囲はデータレベルと同一である。ただし、データ重要度＝0xFFが当該ユーザデータ領域１１０のブロックが消去済みであることを示す点においてデータ重要度はデータレベルと異なっている。また、データ重要度＝0x00の場合は、当該ブロックのユーザデータに対して読み出し・書込みの制限がないことを示している。すなわち、データ重要度＝0x00の場合は、ホストレベルを持たない従来のホスト機器を含むすべてのホスト機器から読み出しと書込みが可能となる。
【００２５】
データＩＤは、データＩＤ格納領域１１５に格納されたユーザＩＤをメモリカード１０２が取得したものであり、ホスト機器１０１がアクセスしようとするユーザデータの管理者のＩＤを示す値である。本実施形態においては、データＩＤとユーザＩＤとの一致・不一致が、ユーザデータに対する読み出し・書込み動作の許可・不許可の判断材料の１つとなっている。データＩＤのサイズや制限条件はユーザＩＤと同一である。ただし、データＩＤ＝0xFFFFFFFFFFFFFFFFが当該ユーザデータ領域１１０のブロックが消去済みであることを示す点においてデータＩＤはユーザＩＤと異なっている。また、データＩＤ＝0x0000000000000000は当該ブロックのユーザデータにユーザＩＤが指定されていなかったことを示す。すなわち、データＩＤ＝0x0000000000000000またはデータＩＤ＝0xFFFFFFFFFFFFFFFFの場合は、当該ブロックのユーザデータに対して読み出し・書込みの制限がないことを示している。
【００２６】
プロセッサモジュール１０９は、ＮＡＮＤ型フラッシュメモリ１０８内の物理状態を管理するものとして構築されている。プロセッサモジュール１０９は、ＮＡＮＤ型フラッシュメモリ１０８のデータ重要度格納領域１１４とデータＩＤ格納領域１１５を管理する重要度・ＩＤ管理手段１１６と、重要度・ＩＤ管理手段１１６が通知するユーザＩＤとデータＩＤとの一致とホストレベルとデータ重要度とを比較する重要度・ＩＤ比較手段１１７と、メモリカード１０２の主制御部をなすコントローラ１１８と、制御プログラムが格納されているＲＯＭ１１９と、コントローラ１１８のワーク・バッファメモリとして使用されるＳＲＡＭ（Static random access memory）１２０と、メモリカード１０２のインタフェース用端子１２１と接続されメモリカード１０２とホスト機器１０１とのインタフェースをなすＩＯインタフェース１２２と、ＮＡＮＤ型フラッシュメモリ１０８との間でデータの授受を行うメモリインタフェース１２３とを備えている。
【００２７】
重要度・ＩＤ管理手段１１６は、ホスト機器１０１から送信されてくるコマンドに付与されているホストレベルとデータレベルとユーザＩＤを取得する。重要度・ＩＤ管理手段１１６は、ホスト機器１０１から取得したデータレベルをデータ重要度格納領域１１４に格納し、ユーザＩＤをデータＩＤ格納領域１１５に格納する。また、重要度・ＩＤ管理手段１１６は、ホスト機器１０１から送信されてくるホストレベルとユーザＩＤを重要度・ＩＤ比較手段１１７に通知する。ここで、ホスト機器１０１からホストレベルとユーザＩＤが通知されなかった場合は、ホストレベル＝0x00、データレベル＝0x00、ユーザＩＤ＝0x0000000000000000として処理を行う。更に、重要度・ＩＤ管理手段１１６は、データ重要度格納領域１１４からデータ重要度を取得し、データＩＤ格納領域１１５からデータＩＤを取得して、重要度・ＩＤ比較手段１１７に通知する。
【００２８】
重要度・ＩＤ比較手段１１７は、重要度・ＩＤ管理手段１１６が取得したデータＩＤとユーザＩＤとを比較する。また、重要度・ＩＤ比較手段１１７は、重要度・ＩＤ管理手段１１６が取得したデータ重要度とホストレベルとの大小を比較する。重要度・ＩＤ比較手段１１７は、これらの比較結果に基づいてデータ書き込みと読み出しの許否を判断し、その判断結果をコントローラ１１８に通知する。
【００２９】
重要度・ＩＤ比較手段１１７の比較・判断方法は以下の通りである。ユーザＩＤとデータＩＤとが一致している場合は、ホストレベルとデータ重要度とを比較する。ホストレベルがデータ重要度以上である場合（ホストレベル≧データ重要度）は、データ書き込みと読み出しの両方が許可される。一方、ホストレベルがデータ重要度未満である場合（ホストレベル＜データ重要度）は、データ読み出しのみが許可され、データ書き込みは禁止される。
【００３０】
ユーザＩＤとデータＩＤとが不一致の場合も、ユーザＩＤとデータＩＤとが一致している場合と同様に、ホストレベルとデータ重要度とを比較する。ホストレベルがデータ重要度以上である場合は、データ読み出しのみが許可され、データ書き込みは禁止される。一方、ホストレベルがデータ重要度未満である場合は、データ書き込みと読み出しの両方が禁止される。
【００３１】
また、データＩＤ＝0xFFFFFFFFFFFFFFFFの場合は、データ書込みと読み出しの両方が許可される。ただし、データＩＤ＝0xFFFFFFFFFFFFFFFFは当該ブロックが消去済みであることを示すため、データを読み出す場合は、読み出されたデータは消去済みのデータとなる。データＩＤ＝0x0000000000000000の場合も、データ書込みと読み出しの両方が許可される。ユーザＩＤ＝0x0000000000000000は、ユーザデータに対して読み出し・書込みの制限を付けないことを示すからである。
【００３２】
コントローラ１１８は、メモリカード１０２全体の動作を制御するものである。コントローラ１１８は、例えばメモリカード１０２が電源供給を受けたときに、ＲＯＭ１１９に格納されているファームウェア（制御プログラム）に基づいて所定の処理を実行することにより、各種のテーブルをＳＲＡＭ１２０上に作成する。コントローラ１１８は、またホスト機器１０１から書き込みコマンド、読み出しコマンド、消去コマンドを受け取り、ＮＡＮＤ型フラッシュメモリ１０８に対して所定の処理を実行したり、ＳＲＡＭ１２０を通じたデータ転送処理を制御したりする。
【００３３】
ＲＯＭ１１９は、コントローラ１１８により制御される制御プログラムなどを格納するメモリである。ＳＲＡＭ１２０は、コントローラ１１８の作業エリアとして使用され、制御プログラムや各種のテーブルを記憶するメモリである。メモリインタフェース１２３は、プロセッサモジュール１０９とＮＡＮＤ型フラッシュメモリ１０８との間のインタフェース処理を行うものである。
【００３４】
インタフェース用端子１２１は、メモリカード１０２がカードインタフェース１０３に挿入されたときにホスト機器１０１のコネクタピンと電気的に接続される。ピンＰ１，Ｐ７，Ｐ８，Ｐ９は、データ信号（ＤＡＴ０〜ＤＡＴ３）に割り当てられている。また、ピンＰ１はカード検出信号に対しても割り当てられている。ピンＰ２はコマンド（ＣＭＤ）に、ピン５はクロックに割り当てられている。ピンＰ３，Ｐ６には接地電位（Ｖｓｓ）が供給され、ピンＰ４には電源電位（Ｖｄｄ）が供給される。
【００３５】
このような構成において、メモリカード１０２は、ホスト機器１０１のカードインタフェース１０３に装着されることにより、インタフェース用端子１２１を介して、ホスト機器１０１との間の通信を行う。例えば、メモリカード１０２のＮＡＮＤ型フラッシュメモリ１０８にデータを書き込む場合、プロセッサモジュール１０９は、ホスト機器１０１からピンＰ５に与えられるクロック信号に同期させて、ピンＰ２に与えられる書き込みコマンドをシリアルな信号として取り込む。
【００３６】
図２は、データ重要度格納領域１１４とデータＩＤ格納領域１１５の一例を示す図面である。ユーザデータ領域１１０を１６ｋＢごとのブロックに分割し、その分割したブロックに対してブロック単位のアドレスをユーザデータ領域１１０の先頭から順に0x0001（0xは１６進数であること示す）,0x0002,0x0003,・・・と2Byte長で割り付ける。図２中の列２０１は、このブロック単位のアドレスを表している。
【００３７】
データ重要度格納領域１１４は、ユーザデータ領域１１０を分割したブロック単位のアドレス数と同数のアドレスを有し、アドレス0x0001,0x0002,0x0003,・・・がブロック単位のアドレス0x0001,0x0002,0x0003,・・・と１対１に対応してデータ重要度を格納している。データ重要度のサイズとしては、例えば1Byteが割り当てられる。図２中の列２０２は、このデータ重要度を表している。
【００３８】
また、データＩＤ格納領域１１５も、データ重要度格納領域１１４と同様に、ユーザデータ領域１１０を分割したブロック単位のアドレス数と同数のアドレスを有し、ブロック単位のアドレスと１対１に対応してデータＩＤを格納している。データＩＤのサイズとしては、例えば8Byteが割り当てられる。図２中の列２０３は、このデータＩＤを表している。
【００３９】
ここで、具体的な例として行２０４について説明する。ユーザデータ領域１１０の先頭から３番目のブロック単位のアドレス＝0x0003に対して発生したデータ書き込みの結果、書き込み時にデータに付与されてきたデータレベル＝0x20がデータ重要度格納領域１１４のブロック単位のアドレス＝0x0003に格納される。また、書き込み時にデータに付与されてきたユーザＩＤ＝0x1234567890ABCDEFも、データレベルと同様に、データＩＤ格納領域１１５のブロック単位のアドレス＝0x0003に格納される。なお、ブロック単位のアドレスは、データＩＤ格納領域１１５およびデータ重要度格納領域１１４のアドレスから算出可能なので、それぞれの領域には格納しなくても良い。
【００４０】
次に、ホスト機器１０１がメモリカード１０２にデータを書き込むためのライトコマンドについて図３を参照して説明する。ライトコマンドには、指定されたアドレスから512アドレス分（512Byte分）のデータを書き込む重要度付シングルライトコマンドと、512Byteを１単位としてデータの書き込みを連続的に行う重要度付マルチライトコマンドの２通りがある。
【００４１】
重要度付シングルライトコマンドおよび重要度付マルチライトコマンド（CMDxx）は、引数１（Arg.1）として書き込みスタートアドレスと、引数２（Arg.2）としてデータレベルと、引数３（Arg.3）としてユーザＩＤの値を与えられる。メモリカード１０２内の重要度・ＩＤ管理手段１１６は、書き込みアドレスが指定するブロックに対するデータＩＤと重要度を取得する。また、重要度・ＩＤ管理手段１１６は、ホスト機器１０１から送信されるライトコマンドに付与されているデータレベルとユーザＩＤを取得する。重要度・ＩＤ比較手段１１７は、重要度・ＩＤ管理手段１１６が取得したデータＩＤとユーザＩＤとが一致しているか否かを判定する。また、重要度・ＩＤ比較手段１１７は、ＩＤ管理手段１１７が取得したデータ重要度とホストレベルとの大小を比較する。重要度・ＩＤ比較手段１１７は、これらの比較判定結果に基づいてデータ書き込みの許否を決定し、その書き込み許可の有無をレスポンスとしてホスト機器１０１に通知する。ホスト機器１０１は書き込み許可レスポンスを受信すると、メモリカード１０２に対して書き込みデータを送出し、メモリカード１０２はユーザデータ領域１１０の指定されたアドレスに書き込みデータを格納する。また、重要度・ＩＤ管理手段１１６は、データ重要度格納領域１１４の書き込みアドレスが指定するブロックにデータレベルを格納し、データＩＤ重要度格納領域１１５の書き込みアドレスが指定するブロックにユーザＩＤを格納する。
【００４２】
図３中の重要度付シングルライトコマンド３０１においては、ホスト機器１０１からCMDxxの後にアドレス＝0x00002000とデータレベル＝0x20とユーザＩＤ＝0x90EC94A9906D0000を付けてコマンドが送信されると、メモリカード１０２はユーザデータ領域１１０のアドレス＝0x00002000から512Byteの範囲が含まれるブロック(0x0001番目)への書き込み許可の有無をレスポンスでホスト機器１０１に通知する。ホスト機器１０１はレスポンスを判断して書き込み許可であれば512Byteのデータを送出し、メモリカード１０２はユーザデータ領域１１０のアドレス＝0x00002000から512Byteの受信データを格納する。このとき、メモリカード１０２は、データ重要度格納領域１１４のアドレス＝0x0001のデータとしてデータレベル＝0x20と、データＩＤ格納領域１１５のアドレス＝0x0001のデータとしてユーザＩＤ＝0x90EC94A9906D0000を格納する。ホスト機器１０１は、書き込み許可がなければデータを送出せず、メモリカード１０２もデータ受信を行わない。
【００４３】
重要度付マルチライト３０２においては、ホスト機器１０１からCMDxxの後にアドレス＝0x00004000と重要度＝0x01とＩＤ＝0x90EC94A9906D0000を付けてコマンドが送信されると、メモリカード１０２はユーザデータ領域１１４のアドレス＝0x00004000から512Byteの範囲が含まれるアドレスへの書き込み許可の有無を判断してレスポンスをホスト機器１０１に返送する。ホスト機器１０１はレスポンスを判断して書き込み許可があれば512Byteのデータを連続して送出し、メモリカード１０２はユーザデータ領域１１０のアドレス＝0x00004000から受信したデータを順次格納し、同時にデータ重要度格納領域１１４のアドレス＝0x0002のデータとしてデータレベル＝0x20と、データＩＤ格納領域１１５のアドレス＝0x0002のデータとしてユーザＩＤ＝0x90EC94A9906D0000を格納する。このとき、書き込みアドレスのブロック境界では次のブロックの書き込み許可の有無を確認し、書き込み不許可となった場合にはユーザデータ領域１１０への書き込みを停止してホスト機器１０１に対して書き込み拒否レスポンスで通知する。
【００４４】
次に、ホスト機器１０１がメモリカード１０２からデータを読み出すためのリードコマンドについて図４を参照して説明する。リードコマンドには、指定されたアドレスから512アドレス分（512Byte分）のデータを読み出す重要度付シングルリードコマンドと、512Byteを１単位として連続的にデータを読み出す重要度付マルチリードコマンドの２通りがある。
【００４５】
重要度付シングルリードコマンドおよび重要度付マルチリードコマンド（CMDyy）は、引数１（Arg.1）として読み出しスタートアドレスと、引数２（Arg.2）としてホストレベルと、引数３（Arg.3）としてユーザＩＤの値を付与される。メモリカード１０２内の重要度・ＩＤ管理手段１１６は、読み出しアドレスが指定するブロックに対するデータＩＤと重要度を取得する。また、重要度・ＩＤ管理手段１１６は、ホスト機器１０１から送信されるリードコマンドに付与されているホストレベルとユーザＩＤを取得する。重要度・ＩＤ比較手段１１７は、重要度・ＩＤ管理手段１１６が取得したデータＩＤとユーザＩＤとが一致しているか否かを判定する。また、重要度・ＩＤ比較手段１１７は、重要度・ＩＤ管理手段１１６が取得したデータ重要度とホストレベルとの大小を比較する。重要度・ＩＤ比較手段１１７は、これらの比較判定結果に基づいてデータ読み出しの許否を決定する。メモリカード１０２は、コマンドと引数を解釈して指定されたユーザデータが読み出し許可であれば、ホスト機器１０１に対してユーザデータを返送する。一方、メモリカード１０２は、指定されたユーザデータが読み出し不許可であれば、ホスト機器１０１に対して読み出し不許可レスポンスを返送する。
【００４６】
図４中の重要度付シングルリード４０１においては、ホスト機器１０１からCMDyyの後にアドレス＝0x00002000とホストレベル0x20とユーザＩＤ＝0x90EC94A9906D0000を付けてコマンドが送信されると、メモリカード１０２はユーザデータ領域１１０のアドレス＝0x00002000から512Byteの範囲が含まれるブロックへの読み出し許可の有無を判断する。読み出し許可があればユーザデータ領域１１０のアドレス＝0x00002000から512Byteのデータを読み出してホスト機器１０１に送出する。読み出し不許可であれば、読み出し拒否レスポンスでホスト機器１０１に通知する。
【００４７】
重要度付マルチリード４０２においては、ホスト機器１０１からCMDyyの後にアドレス＝0x00004000と重要度＝0x01とＩＤ＝0x90EC94A9906D0000を付けてコマンドが送信されると、メモリカード１０２はユーザデータ領域１１０のアドレス＝0x00004000から512Byteの範囲が含まれるブロック単位の読み出し許可の有無を判断し、読み出し許可があれば512Byte単位でデータを連続的に読み出してホスト機器１０１へ送出する。読み出しアドレスのブロック境界では次のブロックの読み出し許可の有無を確認し、読み出し不許可の場合にはユーザデータ領域１１０からの読み出しを停止してホスト機器１０１に対して読み出し拒否レスポンスで通知する。
【００４８】
次に、ホスト機器１０１がメモリカード１０２内のデータを消去するためのイレースコマンドについて図５を参照して説明する。重要度付イレースコマンド５０１（CMDxy）は、引数１（Arg.1）として３２ビットのスタッフィングビットと、引数２（Arg.2）としてホストレベルと、引数３（Arg.3）としてユーザＩＤを付与される。ここでは、イレースライトブロックスタートコマンドとイレースライトブロックエンドコマンドが既に発行されてユーザデータ領域１１０の消去開始アドレスと消去終了アドレスが確認されているものとする。メモリカード１０２は、ホストレベルとユーザＩＤとからユーザデータ領域１１０の消去開始アドレスが含まれるブロックの書き込み許可を確認し、許可があれば当該ブロックを消去したのちデータ重要度格納領域１１４とデータＩＤ格納領域１１５に0xFFと0xFFFFFFFFFFFFを書き込む。この動作を消去終了アドレスの含まれるブロックまで実行するが、ブロック境界では次のブロックの書き込み許可を確認し、書き込み不許可の場合はそのブロックは消去せずに拒否レスポンスをホスト機器１０１に返送する。
【００４９】
次に、ホスト機器１０１からメモリカード１０２にホストレベルを送信するためのホストレベル通知コマンドについて図６を参照して説明する。ホストレベル通知コマンド６０１（CMDxz）は、引数１（Arg.1）として3byteのスタッフィングビットと、引数２（Arg.2）として1Byteのホストレベル0x20を付与してメモリカード１０２に送信される。メモリカード１０２はホストレベル通知コマンド６０１を受信し、ホストレベルを取得する。
【００５０】
続いて、本実施の形態に係るホスト機器１０１とメモリカード１０２の動作について説明する。なお、ＩＤ（ユーザＩＤとデータＩＤ）はユーザが任意に設定可能な8Byteのデータであるが、特別に0x0000000000000000はユーザＩＤやデータＩＤが指定されていないことを示す。また、0xFFFFFFFFFFFFFFFFは消去済みブロックであることを示し、ユーザはこのＩＤを指定できない。重要度（ホストレベルとデータ重要度とデータレベル）は0x00〜0xFEの値をとり、0x00が最小重要度で0xFEが最高重要度とする。0xFFの値は消去済みブロックであることを示す。重要度0x00の場合にはＩＤが指定されない。すなわち、ＩＤは0x0000000000000000に設定される。また、ホスト機器１０１が送信する書き込みコマンドがデータレベルやユーザＩＤが付与されない書き込みコマンドだった場合には、重要度・ＩＤ管理手段１１６はデータ重要度＝0x00かつデータＩＤ＝0x0000000000000000として処理する。
【００５１】
まず、ホスト機器１０１に対するメモリカード１０２の初期化手順について図７を参照して説明する。ホスト機器１０１にメモリカード１０２が挿入されると（ステップＳ７０１）、ホスト機器１０１はメモリカード１０２を認識し（ステップＳ７０２）、メモリカード１０２の初期化を行う（ステップＳ７０３）。次に、ホスト機器１０１はメモリカード１０２にホストレベル通知コマンドを送信する（ステップＳ７０４）。メモリカード１０２は、ホストレベル通知コマンドを受信し（ステップＳ７０５）、ホストレベルを取得する（ステップＳ７０６）。なお、以下の説明では、メモリカード１０２は、図７で説明した初期化手順を終了しているものとする。
【００５２】
次に、メモリカード１０２へのユーザデータの書き込み手順について図８を参照して説明する。図８では、書込みスタートアドレス＝0x00004000から512Byteのユーザデータをメモリカード１０２に書き込む場合を例に挙げて説明する。ここで、ホストレベル＝0x32、データレベル＝0x20、ユーザＩＤ＝0x1234567890ABCDEFであるとする。また、メモリカード１０２のアドレス＝0x00004000〜0x00004200には既にユーザデータが保存されており、データ重要度格納領域１１４とデータＩＤ格納領域１１５のブロック単位のアドレス＝0x0002には、データ重要度＝0x20、データＩＤ＝0x1234567890ABCDEFが格納されているものとする。ホスト機器１０１は、書き込みスタートアドレス＝0x00004000、データレベル＝0x032、ユーザＩＤ＝0x1234567890ABCDEFとして、ユーザデータ領域１１０に対して512Byte のユーザデータを書き込む重要度付シングルライトコマンドを送信する（ステップＳ８０１）。メモリカード１０２のＩＯインタフェース１２２は、重要度付シングルライトコマンドを受信する（ステップＳ８０２）。コントローラ１１８は、ＩＯインタフェース１２２が受信した重要度付シングルライトコマンドを解析し、ＮＡＮＤ型フラッシュメモリ１０８のユーザデータ領域１１０に書き込むべきユーザデータのアドレスを確認する（ステップＳ８０３）。
【００５３】
次に、重要度・ＩＤ管理手段１１６は、ステップＳ８０３で確認したアドレスをブロック単位のアドレスに変換したのち、データ重要度格納領域１１４からデータ重要度＝0x20とデータＩＤ格納領域１１５からデータＩＤ＝0x1234567890ABCDEFを取得する。また、重要度・ＩＤ管理手段１１６は、重要度付シングルライトコマンドからデータレベル＝0x32とユーザＩＤ＝0x1234567890ABCDEFを取得する（ステップＳ８０４）。重要度・ＩＤ比較手段１１７は、取得したデータＩＤとユーザＩＤを比較する（ステップＳ８０５）。データＩＤとユーザＩＤが一致した場合、またはデータＩＤ＝0xFFFFFFFFFFFFFFFFもしくはデータＩＤ＝0x0000000000000000であれば、次にデータ重要度とホストレベルを比較する（ステップＳ８０６）。
【００５４】
ステップＳ８０６で比較した結果が、ホストレベル≧データ重要度のとき、またはデータ重要度＝0xFFもしくはデータ重要度＝0x00のときは書き込み許可となる。ここでは、データＩＤがユーザＩＤに等しく、かつデータ重要度がホストレベル未満なので書き込み許可となり、メモリカード１０２はホスト機器１０１にデータ送信許可のレスポンスを返送する（ステップＳ８０７）。ホスト機器１０１はデータ送信許可のレスポンスを受信すると（ステップＳ８０８）、512Byteのユーザデータをメモリカード１０２に送信する（ステップＳ８０９）。
【００５５】
メモリカード１０２はホスト機器１０１からのユーザデータを受信し（ステップＳ８１０）、ステップＳ８０３で確認したユーザデータ領域１１０のアドレスから512Byte分のユーザデータを書き込む（ステップＳ８１１）。次に、重要度・ＩＤ管理手段１１６は、データ重要度格納領域１１４にデータレベル＝0x20と、データＩＤ格納領域１１５にユーザＩＤ＝0x1234567890ABCDEFを書き込む（ステップＳ８１２）。
【００５６】
ここで、ホスト機器１０１の書き込みデータの設定が、ホストレベル＝0x32、データレベル＝0x20、ユーザＩＤ＝0x1234567890ABCDE0の場合は、データＩＤとユーザＩＤが異なるため、ステップＳ８０５での比較結果が書き込み不許可となり、メモリカード１０２はホスト機器１０１に書き込み拒否レスポンスを返送する（ステップＳ８１３）。また、ホスト機器１０１の書き込みデータの設定が、ホストレベル＝0x10、データレベル＝0x20、ユーザＩＤ＝0x1234567890ABCDEFの場合は、データ重要度がホストレベルよりも大きいため、ステップＳ８０６での比較結果が書き込み不許可となり、メモリカード１０２はホスト機器１０１に書き込み拒否レスポンスを返送する（ステップＳ８１３）。ホスト機器１０１は、書き込み拒否レスポンスを受け取ると（ステップＳ８１４）、メモリカード１０２に対してデータ送出を行わず、メモリカード１０２はホスト機器１０１がデータ送出してきても受け付けない。
【００５７】
図８では重要度付シングルライトコマンドについて説明したが、重要度付マルチライトコマンドの場合はホスト機器１０１から512Byte単位で連続してデータ送信が行われる。このため、メモリカード１０２は、ユーザデータ領域１１０のブロックごとに書き込み許可を確認して動作する。メモリカード１０２は、書き込み不許可のブロックにはデータ書き込みを行わず、ホスト機器１０１に書き込み拒否レスポンスを返送する。
【００５８】
次に、メモリカード１０２からのユーザデータの読み出し手順について図９を参照して説明する。図９では、読み出しスタートアドレス＝0x00004000から512Byteのユーザデータをメモリカード１０２から読み出す場合を例に挙げて説明する。ここで、ホスト機器１０１がホストレベル＝0x32、ユーザＩＤ＝0x1234567890ABCDEFであるとする。また、メモリカード１０２のアドレス＝0x00004000〜0x00004200には既にユーザデータが保存されており、データ重要度格納領域１１４とデータＩＤ格納領域１１５のブロック単位のアドレス＝0x0002には、データ重要度＝0x20、データＩＤ＝0x1234567890ABCDEFが格納されているものとする。ホスト機器１０１は、読み出しスタートアドレス＝0x00004000、ホストレベル＝0x032、ユーザＩＤ＝0x1234567890ABCDEFとして、ユーザデータ領域１１０から512Byteのユーザデータを読み出す重要度付シングルリードコマンドを送信する（ステップＳ９０１）。メモリカード１０２のＩＯインタフェース１２２は、重要度付シングルリードコマンドを受信する（ステップＳ９０２）。コントローラ１１８はＩＯインタフェース１２２が受信した重要度付シングルリードコマンドを解析し、ＮＡＮＤ型フラッシュメモリ１０８のユーザデータ領域１１０から読み出すべきユーザデータのアドレスを確認する（ステップＳ９０３）。
【００５９】
次に、重要度・ＩＤ管理手段１１６は、ステップＳ９０３で確認したアドレスをブロック単位のアドレスに変換したのち、データ重要度格納領域１１４からデータ重要度＝0x20、データＩＤ格納領域１１５からデータＩＤ＝0x1234567890ABCDEFを取得する。また、重要度・ＩＤ管理手段１１６は、重要度付シングルリードコマンドからホストレベル＝0x32とユーザＩＤ＝0x1234567890ABCDEFを取得する（ステップＳ９０４）。
【００６０】
重要度・ＩＤ比較手段１１７は、取得したデータＩＤとユーザＩＤを比較する（ステップＳ９０５）。ステップＳ９０５での比較結果がデータＩＤとユーザＩＤが一致、または、データＩＤ＝0xFFFFFFFFFFFFFFFFもしくはデータＩＤ＝0x0000000000000000であればデータの読み出しを行う（ステップＳ９０７）。ここでは、データＩＤがユーザＩＤに等しいので、メモリカード１０２は、ステップＳ９０３で確認したユーザデータ領域１１０のアドレスから512Byteのデータを読み出す。メモリカード１０２は、ユーザデータ領域１１０から読み出したデータをホスト機器１０１に送信する（ステップＳ９０８）。ホスト機器１０１は、このメモリカード１０２から送信されたデータを受信する（ステップＳ９０９）。
【００６１】
ホスト機器１０１がホストレベル＝0x32、ユーザＩＤ＝0x1234567890ABCDE0の場合は、ステップＳ９０５での比較結果が不一致なのでデータ重要度とホストレベルを比較する（ステップＳ９０６）。その結果、データ重要度がホストレベル以下なのでデータの読み出しを行う（ステップＳ９０７）。また、ホスト機器１０１がホストレベル＝0x10、ユーザＩＤ＝0x1234567890ABCDEFの場合は、ステップＳ９０６で比較した結果、データ重要度がホストレベルより大きいため読み出し拒否となり、メモリカード１０２は読み出し拒否レスポンスをホスト機器１０１に返送する（ステップＳ９１０）。ホスト機器１０１はレスポンスを受信する（ステップＳ９１１）。
【００６２】
次に、ユーザデータを消去する手順について図１０を参照して説明する。ここで、ホスト機器１０１の設定がホストレベル＝0x32、ユーザＩＤ＝0x1234567890ABCDEFであり、既にホスト機器１０１からイレースライトブロックスタートコマンドで消去開始アドレス0x00000100が指定され、イレースライトブロックエンドコマンドで消去終了アドレス0x00004200が指定されているものとする。また、メモリカード１０２のアドレス＝0x00004000〜0x00004200には既にユーザデータが保存されており、データ重要度格納領域１１４とデータＩＤ格納領域１１５のブロック単位のアドレス＝0x0002には、データ重要度＝0x20、データＩＤ＝0x1234567890ABCDEFが格納されているものとする。
【００６３】
まず、ホスト機器１０１が、ホストレベル＝0x032、ユーザＩＤ＝0x1234567890ABCDEFとして、アドレス指定した範囲の消去開始を指示する重要度付イレースコマンドを送信する（ステップＳ１００１）。次に、メモリカード１０２のＩＯインタフェース１２２は重要度付イレースコマンドを受信する（ステップＳ１００２）。コントローラ１１８は、ＩＯインタフェース１２２が受信した重要度付イレースコマンドを解析し、ＮＡＮＤ型フラッシュメモリ１０８のユーザデータ領域１１０から消去すべきユーザデータのアドレスを確認する（ステップＳ１００３）。次に、重要度・ＩＤ管理手段１１６は、ステップＳ１００３で確認したアドレスからブロック単位のアドレスに変換したのち、データ重要度格納領域１１４からデータ重要度＝0x20とデータＩＤ格納領域１１５からデータＩＤ＝0x1234567890ABCDEFを取得する。また、重要度・ＩＤ管理手段１１６は、重要度付イレースコマンドからホストレベル＝0x32とユーザＩＤ＝0x1234567890ABCDEFを取得する（ステップＳ１００４）。
【００６４】
重要度・ＩＤ比較手段１１７は、取得したデータＩＤとユーザＩＤを比較する（ステップＳ１００５）。ここでは、ステップＳ１００５の比較した結果がデータＩＤとユーザＩＤが一致するので次にデータ重要度とホストレベルを比較する（ステップＳ１００６）。ステップＳ１００６での比較結果がデータ重要度≦ホストレベルなので、メモリカード１０２は指定されたアドレスを含むブロックのデータ消去を行う（ステップＳ１００７）。続いて、重要度・ＩＤ管理手段１１６はデータ重要度格納領域１１４に0xFFとデータＩＤ格納領域１１５に0xFFFFFFFFFFFFを書き込み、ブロックの初期化を行う（ステップＳ１００８）。以上のステップを順次繰り返し、アドレス0x00004200が含まれるブロックまで消去する。ステップＳ１００５およびステップＳ１００６で比較した結果、データ消去許可がなければ、メモリカード１０２は消去拒否レスポンスをホスト機器１０１に返送する（ステップＳ１００９）。ホスト機器１０１はレスポンスを受信する（ステップＳ１０１０）。
【００６５】
次に、ユーザの使用例として、病院が発行する院外処方箋を本実施の形態に係るメモリカードに保存した場合の動作について図１１を参照して説明する。ここでは、ユーザＡが病院Ｂで受診した結果、処方箋をメモリカード１０２で受け取り、薬局Ｃで薬を購入するケースを例に挙げて説明する。このメモリカード１０２は1GByteの容量を持ち、ユーザデータ領域１１０はセクターサイズが512byte、クラスタサイズ16KbyteのＦＡＴ１６形式でフォーマットされており、多数のファイルが記録されているものとする。また、ブロック単位はユーザデータ領域１１０におけるＦＡＴのユーザデータエリアのクラスタサイズと同じく16Kbyteとし、ブロック単位のアドレスの値がユーザデータエリアのクラスタ番号と一致しているものとする。
【００６６】
まず、病院Ｂが処方箋をユーザＡのメモリカード１０２に記録する場合について図１１（ａ）を参照して説明する。病院ＢのＰＣには投薬処方箋データshohousen.xlsが準備されており、ホスト機器のホストレベルが0x90、ユーザIDが0x00001234ABCD0000、データレベルが0x70に設定されているものとする。
【００６７】
この条件でメモリカード１０２に記録された処方箋データshohousen.xlsが、ユーザデータ領域１１０のアドレス＝0x00040000 乃至 0x000482FFにかけて記録された場合には、ブロック単位のアドレス0x0010，0x0011，0x0012で示されるデータ重要度格納領域１１４にデータレベル0x70が格納される。また、データレベルと同じく、ブロック単位のアドレス0x0010，0x0011，0x0012で示されるデータＩＤ格納領域１１５にはユーザＩＤ0x00001234ABCD0000が格納される。
【００６８】
次に、ユーザＡのメモリカード１０２に記録された処方箋を薬局Ｃが読み出す場合について図１１（ｂ）を参照して説明する。ユーザＡは、処方箋データが書き込まれたメモリカード１０２を受け取り、薬を購入するために薬局Ｃにメモリカード１０２を提出する。薬局Ｃではホスト機器１０１のホストレベル＝0x80、ユーザID＝0x0000AA55AA550000、データレベル＝0x00に設定されているものとする。
【００６９】
薬局Ｃのホスト機器１０１がメモリカード１０２にアクセスして処方箋データがユーザデータ領域１１０のアドレス＝0x00040000 乃至 0x000482FFにかけて記録されていることを確認すると、重要度・ＩＤ管理手段１１６はブロック単位のアドレス＝0x0010で示されるデータ重要度格納領域１１４からデータ重要度＝0x70を取得する。また、重要度・ＩＤ管理手段１１６は、データ重要度と同じく、ブロック単位のアドレス＝0x0010で示されるデータＩＤ格納領域１１５からデータＩＤ＝0x00001234ABCD0000を取得する。
【００７０】
次に、重要度・ＩＤ比較手段１１７がデータＩＤ＝0x00001234ABCD0000と薬局ＣのユーザＩＤ＝0x0000AA55AA550000とを比較する。ここでは、データＩＤ≠ユーザＩＤなので、重要度・ＩＤ比較手段１１７は続いてデータレベルとホストレベルを比較する。すると、ホストレベル≧データ重要度なので、ブロック単位のアドレス0x0010で示されるユーザデータ領域１１０のアドレス＝0x00040000 乃至 0x00043FFに書き込むことはできないが読み出すことができる。続いて、次のブロックの読み出し許可を確認とデータ読み出しを繰り返し実行することで、処方箋データに付与されたデータＩＤとユーザＩＤが合致しなくても、薬局Ｃはユーザデータ領域のアドレス＝0x00040000 乃至 0x000482FF の全ての処方箋データを取得することができる。
【００７１】
次に、メモリカード１０２に記録された処方箋をユーザＡが読み出す場合について図１１（ｃ）を参照して説明する。ユーザＡは自宅に帰り、処方内容を確認するために自宅のＰＣでメモリカード１０２の操作を行う。自宅のホスト機器はホストレベル＝0x20に設定されているとする。ユーザＩＤは既に病院から通知されているＩＤ＝0x00001234ABCD0000に設定する。
【００７２】
ユーザＡのホスト機器１０１がメモリカード１０２にアクセスして処方箋データがユーザデータ領域１１０のアドレス＝0x00040000 乃至 0x000482FFにかけて記録されていることを確認すると、重要度・ＩＤ管理手段１２４はブロック単位のアドレス＝0x0010で示されるデータ重要度格納領域１１４からデータ重要度＝0x70を取得する。また、重要度・ＩＤ管理手段１１６は、データ重要度と同じく、ブロック単位のアドレス＝0x0010で示されるデータＩＤ格納領域１１５からデータＩＤ＝0x00001234ABCD0000を取得する。
【００７３】
次に、重要度・ＩＤ比較手段１１７がデータＩＤ＝0x00001234ABCD0000とホスト機器１０１のユーザＩＤ＝0x00001234ABCD0000とを比較したところ一致するので、続いてデータレベルとホストレベルを比較する。すると、ホストレベル＜データ重要度なので、読み出しのみ許可される。すなわち処方箋データに付与されたデータレベルが高くても処方箋データを読み出すことができる。しかし、このホスト機器１０１からユーザデータ領域１１０のアドレス＝0x00040000 乃至 0x000482FFF に記録されたデータを消去したり書き込んで改ざんすることはできない。
【００７４】
以上に説明した本実施の形態においては、データの管理者がユーザＩＤとデータレベルを設定するだけで、他のホスト機器や他のユーザからのメモリカードへのアクセスを制限することができる。このため、データ管理者が管理するＩＤや暗号化キーを極めて少なくすることができる。
【００７５】
（第２の実施の形態）
第１の実施の形態では、データに対するアクセス権の判断をデータＩＤとユーザＩＤとの一致・不一致およびデータの重要度とホスト機器の重要度の大小関係のみで行う場合について説明した。本実施の形態は、データＩＤとユーザＩＤとが一致しない場合に、第１の実施の形態に比較してホストレベルがより高いホスト機器でないと読み出しできないようにするため、重要度の判断にオフセットを持たせたものである。なお、以下では、第１の実施の形態と同一又は類似の構成については、図面において同一又は類似の符号を付し、その説明を省略する。
【００７６】
図１２は、第２の実施の形態に係るホスト機器とメモリカードの概略構成を示す図面である。ＮＡＮＤ型フラッシュメモリ１０８は、データ重要度格納領域１１４とデータＩＤ格納領域１１５とデータの読み出し許可レベルを変更するオフセットレベルを格納するデータオフセット格納領域１２４とを備えている。プロセッサモジュール１０９は、ＮＡＮＤ型フラッシュメモリ１０８のデータ重要度格納領域１１４とデータＩＤ格納領域１１５とデータの読み出し許可レベルを変更するオフセットレベルを格納するデータオフセット格納領域１２４の管理を行う重要度・ＩＤ・オフセット管理手段１２５と、重要度・ＩＤ・オフセット管理手段１２５が通知するユーザＩＤとデータＩＤとホストレベルとデータ重要度とデータオフセットとを比較する重要度・ＩＤ・オフセット比較手段１２６とを備えている。
【００７７】
重要度・ＩＤ・オフセット管理手段１２５は、ホスト機器１０１から送信される書き込みコマンドに付与されているデータレベルとユーザＩＤとオフセットレベル（データオフセット）を取得して、データ重要度格納領域１１４にデータレベルを、データＩＤ格納領域１１５にユーザＩＤを、データオフセット格納領域１２４にオフセットレベルを格納する。また、重要度・ＩＤ・オフセット管理手段１２５は、データ重要度格納領域１１４からデータ重要度と、データＩＤ格納領域１１５からデータＩＤと、データオフセット格納領域１２４からデータオフセットを取得する。また、重要度・ＩＤ・オフセット管理手段１２５は、ホスト機器１０１から送信される読み出しコマンドに付与されているホストレベルとユーザＩＤとオフセットレベルを取得する。ここで、ホスト機器１０１からホストレベルとユーザＩＤが通知されなかった場合は、ホストレベル＝0x00、データレベル＝0x00、ユーザＩＤ＝0x0000000000000000、オフセットレベル＝0x00として処理を行う。
【００７８】
重要度・ＩＤ・オフセット比較手段１２６は、重要度・ＩＤ・オフセット管理手段１２５が取得したデータＩＤとユーザＩＤの比較と、データ重要度とホストレベルおよびオフセットレベルとを比較し、その比較結果をコントローラ１１８に通知する。コントローラ１１８は、重要度・ＩＤ・オフセット比較手段１２６の比較結果に基づいてデータの書き込み・読み出し処理に制限を与える。
【００７９】
重要度・ＩＤ・オフセット比較手段１２６の比較・判断方法は以下の通りである。ユーザＩＤとデータＩＤとが一致している場合は、ホストレベルとデータ重要度とを比較する。ホストレベルがデータ重要度以上である場合（ホストレベル≧データ重要度）は、データ書き込みと読み出しの両方が許可される。一方、ホストレベルがデータ重要度未満である場合（ホストレベル＜データ重要度）は、データ読み出しのみが許可され、データ書き込みは禁止される。
【００８０】
ユーザＩＤとデータＩＤとが不一致の場合も、ユーザＩＤとデータＩＤとが一致している場合と同様に、ホストレベルとデータ重要度とを比較する。ホストレベルがデータ重要度とデータオフセットを足し合わせた値以上である場合（ホストレベル≧データ重要度＋データオフセット）は、データ読み出しのみが許可され、データ書き込みは禁止される。一方、ホストレベルがデータ重要度とデータオフセットを足し合わせた値未満である場合（ホストレベル＜データ重要度＋データオフセット）は、データ書き込みと読み出しの両方が禁止される。
【００８１】
また、データＩＤ＝0xFFFFFFFFFFFFFFFFの場合は、データ書込みと読み出しの両方が許可される。ただし、データＩＤ＝0xFFFFFFFFFFFFFFFFは当該ブロックが消去済みであることを示すため、データを読み出す場合は、読み出されたデータは消去済みのデータとなる。データＩＤ＝0x0000000000000000の場合も、データ書込みと読み出しの両方が許可される。ユーザＩＤ＝0x0000000000000000は、ユーザデータに対して読み出し・書込みの制限を付けないことを示すからである。
【００８２】
次に、データオフセット格納領域１２４について図１３を参照して説明する。本実施の形態においても、第１の実施の形態と同様に、ブロック単位を16Kbyteとする。まずユーザデータ領域１１０を16Kbyte毎のブロックに分割し、ブロックの番号をユーザデータ領域１１０の先頭から順に0x0001，0x0002，0x0003，・・・と2Byte長で割り付けている。これを表したものが列１３０１である。データオフセット格納領域１２４もブロックの番号の数と同数のアドレスを持ち、アドレスもブロックの番号と１対１に対応している。ここで各アドレスに格納するデータオフセットのサイズとして１Byteを割り当てたものが列１３０２である。
【００８３】
このようにデータ重要度格納領域１１４とデータＩＤ格納領域１１５およびデータオフセット格納領域１２４が構成されている。ここで、具体的な例として行１３０３について説明する。行１３０３には、ユーザデータ領域１１０の先頭から３番目のブロック単位のアドレス0x0003に対して、データレベル＝0x20がデータ重要度格納領域１１４に格納され、ユーザＩＤ＝0x1234567890ABCDEFがデータＩＤ格納領域１１５に格納され、オフセットレベル＝0x50がデータオフセット格納領域１２４に格納されている。なお、ブロック単位のアドレスはデータ重要度格納領域１１４とデータＩＤ格納領域１１５およびデータオフセット格納領域１２４のアドレスから算出可能なのでそれぞれの領域には格納しなくても良い。
【００８４】
次に、ホスト機器１０１がメモリカード１０２にデータを書き込む為のライトコマンドについて図１４を参照して説明する。データを書き込む為のコマンドには、指定されたアドレスから512アドレス分（512Byte）のデータを書き込む重要度・オフセット付シングルライトコマンドと、512Byteを１単位としてデータの書き込みを連続的に行う重要度・オフセット付マルチライトコマンドの２通りがある。
【００８５】
重要度・オフセット付シングルライトコマンドおよび重要度・オフセット付マルチライトコマンド（CMDxx）は、引数１（Arg.1）として書き込みスタートアドレスと、引数２（Arg.2）としてデータレベルと、引数３（Arg.3）としてユーザＩＤと、引数４（Arg.4）としてオフセットレベルの値を付与する。メモリカード１０２は、書き込みアドレスとデータレベルとユーザＩＤの一致不一致とホストレベルとデータ重要度とオフセットレベルの大小を比較・判断し、書き込みの許可・不許可の結果をコントローラ１１８からレスポンスでホスト機器１０１に通知する。
【００８６】
重要度・オフセット付シングルライト１４０１においては、ホスト機器１０１からCMDxzの後にアドレス＝0x00002000とデータレベル＝0x20とユーザＩＤ＝0x90EC94A9906D0000とオフセットレベル＝0x50を付けてコマンドが送信されると、メモリカード１０２はユーザデータ領域１２１４のアドレス0x00002000から512Byteの範囲が含まれるブロックへの書き込み許可不許可を判断してレスポンスをホスト機器１０１に返送する。ホスト機器１０１はレスポンスを判断して書き込み許可であれば512Byteのデータを送出し、メモリカード１０２はユーザデータ領域１１０のアドレス＝0x00002000から512Byteのデータを格納する。このとき、データ重要度格納領域１１４とデータＩＤ格納領域１１５とデータオフセット格納領域１２４のアドレス＝0x0001のデータとして、データレベル＝0x20とユーザＩＤ＝0x90EC94A9906D0000とデータオフセット＝0x50を格納する。ホスト機器１０１は書き込み許可がなければデータを送出せず、メモリカード１２０２もデータ受信を行わない。
【００８７】
重要度・オフセット付マルチライト１４０２においてはホスト機器１０１からCMDxzの後にアドレス＝0x00004000と重要度＝0x01とＩＤ＝0x90EC94A9906D0000とオフセット＝0x50を付けてコマンドが送信されると、メモリカード１０２はユーザデータ領域１１０のアドレス＝0x00004000から512Byteの範囲が含まれるアドレスへの書き込み許可不許可を判断してレスポンスをホスト機器１０１に返送する。ホスト機器１０１はレスポンスを判断して書き込み許可であれば512Byte単位のデータを連続して送出し、メモリカード１０２はユーザデータ領域１１０のアドレス＝0x00004000から受信したデータを順次格納する。また、メモリカード１０２は、データ重要度格納領域１１４とデータＩＤ格納領域１１５とデータオフセット格納領域１２４のデータとして、データレベル＝0x01とユーザＩＤ＝0x90EC94A9906D0000とデータオフセット＝0x50を格納する。このとき、書き込みアドレスのブロック境界では次のブロックの書き込み許可不許可を確認し、書き込み不許可の場合にはユーザデータ領域１２１４への書き込みを停止してホスト機器１０１に対して書き込み拒否レスポンスで通知する。
【００８８】
ここで、ホスト機器１０１が送信する書き込みコマンドがデータレベルやユーザＩＤやオフセットレベルが付与されない書き込みコマンドだった場合には、重要度・オフセット付シングルライトコマンドおよび重要度・オフセット付マルチライトコマンド共に、重要度・ＩＤ・オフセット管理手段１２５がデータ重要度＝0x00、データＩＤ＝0x0000000000000000かつデータオフセット＝0x00として処理する。
【００８９】
ホスト機器１０１がメモリカード１０２のデータを読み出すためのリードコマンドおよびデータを消去するためのイレースコマンドについては、第１の実施の形態と同様であるので説明を省略する。
【００９０】
続いて、ホスト機器１０１がユーザデータを読み込む手順について図１５を参照して説明する。なお、メモリカード１０２は、既に初期化ステップを終了しているものとする。また、ユーザデータを書き込む手順、ユーザデータを消去する手順については、第１の実施の形態と同様のため説明を省略する。
【００９１】
ホスト機器１０１がホストレベル＝0x32、ユーザＩＤ＝0x1234567890ABCDEFであるとする。ホスト機器１０１は、ユーザデータ領域１１０から512Byteのユーザデータを読み出す重要度付シングルリードコマンドを送信する（ステップＳ１５０１）。メモリカード１０２のＩＯインタフェース１２２が、重要度付シングルセクターリードコマンドを受信する（ステップＳ１５０２）。コントローラ１１８はＩＯインタフェース１２２が受信した重要度付シングルセクターリードコマンドを解析し、ＮＡＮＤ型フラッシュメモリ１０８のユーザデータ領域１１０から読み出すべきユーザデータのアドレスを確認する（ステップＳ１５０３）。次に、重要度・ＩＤ・オフセット管理手段１２５は、ステップＳ１５０３で確認したアドレスからブロック単位のアドレスに変換したのち、データ重要度格納領域１１４からデータ重要度＝0x20、データＩＤ格納領域１１５からデータＩＤ＝0x1234567890ABCDEF、データオフセット格納領域１２４からデータオフセット＝0x50を取得する。（ステップＳ１５０４）。
【００９２】
重要度・ＩＤ・オフセット比較手段１２６は、取得したデータＩＤとユーザＩＤを比較する（ステップＳ１５０５）。ステップＳ１５０５での比較結果がデータＩＤとユーザＩＤが一致、またはデータＩＤ＝0xFFFFFFFFFFFFFFFFもしくはデータＩＤ＝0x0000000000000000であればデータの読み出しを行う（ステップＳ１５０８）。ここでは、データＩＤ＝ユーザＩＤなので、ステップＳ１５０３で確認したユーザデータ領域１１０のアドレスから512Byteのデータを読み出す。読み出したデータはメモリカード１０２からホスト機器１０１に送信される（ステップＳ１５０９）。ホスト機器１０１は、このデータを受信する（ステップＳ１５１０）。
【００９３】
ここで、ホスト機器１０１がホストレベル＝0x32、ユーザＩＤ＝0x1234567890ABCDE0の場合は、ステップＳ１５０６での比較結果が不一致なので、データ重要度にオフセットを加算し（ステップＳ１５０６）、ホストレベルと比較する（ステップＳ１５０７）。ステップＳ１５０７で比較した結果がホストレベル≦（データ重要度＋オフセット）であれば読み出し許可となりデータの読み出しを行う（ステップＳ１５０８）。また、ホスト機器１０１がホストレベル＝0x10、ユーザＩＤ＝0x1234567890ABCDEFの場合は、ステップＳ１５０７で比較した結果は、ホストレベル＜（データ重要度＋オフセット）で読み出し不許可となり、メモリカード１０２は読み出し拒否レスポンスをホスト機器１０１に返送する（ステップＳ１５１１）。ホスト機器１０１はレスポンスを受信する（ステップＳ１５１２）。
【００９４】
次に、ユーザの使用例として、病院に提出する問診表を本発明のメモリカードに保存した場合の動作について図１６を参照して説明する。ここで使用するメモリカードの容量、セクターサイズ、クラスタサイズは、第１の実施の形態と同様の構成であるものとし、詳細な説明は省略する。
【００９５】
まず、病院に提出する問診表をユーザＡがメモリカード１０２に記録する場合について図１６（ａ）を参照して説明する。ユーザＡは病院Ｃの問診票データをダウンロードし、自宅のＰＣに記入済みデータmonshin.xlsを作成した。このとき、ユーザＡのホスト機器１０１はホストレベル＝0x20、データレベル＝0x20、ユーザID＝0x00001234ABCD0000、オフセットレベル＝0x50に設定されているものとする。
【００９６】
メモリカード１０２に保存された問診票データmonshin.xlsは、データ重要度格納領域１１４にデータレベル＝0x20、同じくデータＩＤ格納領域１１５にはユーザＩＤ＝0x00001234ABCD0000、データオフセット格納領域１２４にはオフセットレベル＝0x50が格納される。ここでユーザＡは、問診票への記入内容が誤っていることに気が付き、メモリカード１０２から問診票データmonshin.xlsを読み出す。すると、データＩＤ＝ユーザＩＤかつデータ重要度＝ホストレベルなのでメモリカード１０２はデータの読み出しを許可する。データを修正後、再びメモリカード１０２に問診票データを書き戻す場合も、データＩＤ＝ユーザＩＤかつデータ重要度＝ホストレベルなので書き込みは許可される。
【００９７】
次に、この問診票データを病院Ｃに提出して診療予約をする際に、友人Ｂに病院Ｃへのメモリカード１２０２の提出をお願いした。途中で友人Ｂは自分のＰＣに接続されたホスト機器でユーザＡのメモリカード１０２を読み出そうとした。図１６（ｂ）は、友人Ｂがメモリカード１０２を読み出そうとした場合の説明図である。このとき、友人Ｂのホスト機器はホストレベル=が0x40、データレベル=0x20、ユーザID＝0xFFFF1234ABCDFFFF、オフセットレベル＝0x30に設定されていたとする。この条件ではメモリカード１２０２と友人Ｂのホスト機器間ではデータＩＤ≠ユーザＩＤかつホストレベル＜（データ重要度＋データオフセット）なのでデータの読み出し許可も書き込み許可も与えられず、ユーザＡの問診票データが見られたり改ざんされたりすることはない。
【００９８】
次に、メモリカード１０２に記録された問診表を病院Ｃが読み出す場合について図１６（ｃ）を参照して説明する。病院Ｃではホスト機器がホストレベル＝0x70、データレベル＝0x01、ユーザID＝0x0000AA55AA550000、オフセットレベル=0x00に設定されていたとする。友人Ｂにより提出されたユーザＡのメモリカード１２０２に記録された問診票データと病院Ｃのホスト機器との間ではデータＩＤ≠ユーザＩＤではあるが、ホストレベル≧（データ重要度＋データオフセット）なので、問診票データを読み出す事が可能となる。
【００９９】
第１の実施の形態では、データレベルをより高く設定すると、他のユーザからメモリカード内のデータが読み取られる可能性は下がるが、当該データを自分自身も書き換えられなくなる問題がある。しかしながら、以上に説明した本実施の形態では、データレベルをホストレベルと同等に設定していてもオフセットレベルを設定することで特別にホストレベルの高いホスト機器でないと読み出し不許可とすることが可能であり、第１の実施の形態よりも確実なデータ秘匿効果およびデータ改ざん防止効果がある。
【０１００】
なお、第１および第２の実施形態においては、重要度が高いデータを重要度の値が大きいと説明しているが、重要度が高いデータを重要度の値が小さいと設定しても構わない。また、ホスト機器１０１のホストレベルは製造時に固有の値に定められるだけでなく、書き換えが可能であっても構わない。
【０１０１】
このように、本発明は、実施段階ではその要旨を変更しない範囲で種々に変形することが可能である。
【０１０２】
以上、詳述したように、本発明に係るメモリカード、プロセッサモジュールおよびホスト機器の制御方法の特徴をまとめると以下の通りになる。
【０１０３】
本発明に係るメモリカードは、ホスト機器に装着され、前記ホスト機器からアクセスされるメモリカードにおいて、ユーザデータを格納するユーザデータ領域と、前記ユーザデータ領域における所定の単位ごとに対して設定されたデータ重要度を格納するデータ重要度格納領域と、前記ユーザデータ領域における所定の単位ごとに対して設定されたデータＩＤを格納するデータＩＤ格納領域とを有する不揮発性半導体メモリと、前記ホスト機器から前記ユーザデータ領域へのアクセスが発生した場合に、そのアクセス対象のデータに対応するデータ重要度およびデータＩＤを取得し、前記ホスト機器からホストレベルおよびホストＩＤを取得する管理手段と、前記管理手段が取得したデータ重要度、データＩＤ、ホストレベルおよびホストＩＤに基づいて、前記ホスト機器からのアクセスの許否を判断する比較手段とを具備することを特徴としている。
【０１０４】
また、本発明に係るメモリカードは、前記不揮発性半導体メモリは、前記ユーザデータ領域における所定の単位ごとに対して設定されたデータオフセットを格納するオフセット格納領域を更に具備し、前記管理手段は、前記ホスト機器から前記ユーザデータ領域へのアクセスが発生した場合に、そのアクセス対象のデータに対応する前記データオフセットを取得し、前記比較手段は、前記データ重要度と前記データオフセットとを足し合わせた値と前記ホストレベルとを比較し、前記ホスト機器からのアクセスの許否を判断することを特徴としている。
【０１０５】
更に、本発明に係るプロセッサモジュールは、ホスト機器に装着して使用するメモリカードに搭載され、不揮発性半導体メモリを制御するプロセッサモジュールにおいて、前記ホスト機器から前記不揮発半導体メモリへのアクセスが発生した場合に、そのアクセス対象のデータに対応するデータ重要度およびデータＩＤを取得し、前記ホスト機器からホストレベルおよびホストＩＤを取得する管理手段と、前記管理手段が取得したデータ重要度、データＩＤ、ホストレベルおよびホストＩＤに基づいて、前記ホスト機器からのアクセスの許否を判断する比較手段とを具備することを特徴としている。
【０１０６】
更に、本発明に係るプロセッサモジュールは、前記管理手段は、前記ホスト機器から前記ユーザデータ領域へのアクセスが発生した場合に、そのアクセス対象のデータに対応するデータオフセットを取得し、前記比較手段は、前記データ重要度と前記データオフセットとを足し合わせた値と前記ホストレベルとを比較し、前記ホスト機器からのアクセスの許否を判断することを特徴としている。
【０１０７】
更に、本発明に係るホスト機器の制御方法は、メモリカードが装着され、前記メモリカードにアクセスするホスト機器の制御方法において、前記メモリカードにアクセスする場合に、当該ホスト機器のアクセス能力を示すホストレベルと、アクセス対象のデータの管理者を示すユーザＩＤを前記メモリカードに送信する第１のステップと、前記メモリカードへのアクセスの許否を前記メモリカードからレスポンスとして受信する第２のステップとを具備することを特徴としている。
【図面の簡単な説明】
【０１０８】
【図１】第１の実施の形態に係るホスト機器とメモリカードの概略構成を示すブロック図。
【図２】データ重要度格納領域とデータＩＤ格納領域の一例を示す図。
【図３】第１の実施の形態においてホスト機器がメモリカードにデータを書き込むライトコマンドを説明するための図。
【図４】第１の実施の形態においてホスト機器がメモリカードからデータを読み出すリードコマンドを説明するための図。
【図５】第１の実施の形態においてホスト機器がメモリカード内のデータを消去するためのイレースコマンドを説明するための図。
【図６】第１の実施の形態においてホスト機器からメモリカードにホストレベルを送信するホストレベル通知コマンドを説明するための図。
【図７】第１の実施の形態におけるメモリカードの初期化手順を示すフローチャート。
【図８】第１の実施の形態におけるメモリカードへのユーザデータの書き込み手順を示すフローチャート。
【図９】第１の実施の形態におけるメモリカードからのユーザデータの読み出し手順を示すフローチャート。
【図１０】第１の実施の形態においてユーザデータを消去する手順を示すフローチャート。
【図１１】ユーザの使用例として、病院が発行する院外処方箋を本実施の形態に係るメモリカードに保存した場合の動作を示す説明図。
【図１２】第２の実施の形態に係るホスト機器とメモリカードの概略構成を示すブロック図。
【図１３】データ重要度格納領域とデータＩＤ格納領域とデータオフセット格納領域の一例を示す図。
【図１４】第２の実施の形態においてホスト機器がメモリカードからデータを読み出すリードコマンドを説明するための図。
【図１５】第２の実施の形態におけるメモリカードからのユーザデータの読み出し手順を示すフローチャート。
【図１６】ユーザの使用例として、病院に提出する問診表を本発明のメモリカードに保存した場合の動作を示す説明図。
【符号の説明】
【０１０９】
１０１…ホスト機器
１０２…メモリカード
１０３…カードインタフェース
１０４…ＣＰＵ
１０５…システムメモリ
１０６…表示装置
１０７…ＲＯＭ
１０８…ＮＡＮＤ型フラッシュメモリ
１０９…プロセッサモジュール
１１０…ユーザデータ領域
１１１…管理データ領域
１１２…機密データ領域
１１３…保護データ領域
１１４…データ重要度格納領域
１１５…データＩＤ格納領域
１１６…重要度・ＩＤ管理手段
１１７…重要度・ＩＤ比較手段
１１８…コントローラ
１１９…ＲＯＭ
１２０…ＳＲＡＭ
１２１…インタフェース用端子
１２２…ＩＯインタフェース
１２３…メモリインタフェース
１２４…データオフセット格納領域
１２５…重要度・ＩＤ・オフセット管理手段
１２６…重要度・ＩＤ・オフセット比較手段
【図１】
2007133770.tif 000003
【図２】
2007133770.tif 000004
【図３】
2007133770.tif 000005
【図４】
2007133770.tif 000006
【図５】
2007133770.tif 000007
【図６】
2007133770.tif 000008
【図７】
2007133770.tif 000009
【図８】
2007133770.tif 000010
【図９】
2007133770.tif 000011
【図１０】
2007133770.tif 000012
【図１１】
2007133770.tif 000013
【図１２】
2007133770.tif 000014
【図１３】
2007133770.tif 000015
【図１４】
2007133770.tif 000016
【図１５】
2007133770.tif 000017
【図１６】
2007133770.tif 000018