説明

記録媒体、データ処理装置及びデータ処理方法

記録媒体に、不揮発性の記録領域に加えて、ホストインターフェイス部、制御部、更新通知部を設ける。制御部は記録領域にデータを読み書きすると共に、ホストインターフェイス部を介して記録領域のデータ及び更新情報をデータ処理装置に与える。特に本発明は、記録領域のデータが更新される直前に更新通知部の更新情報を更新させることを特徴とする。そして更新通知部の値はデータ処理装置から参照可能かつ更新不可とする。データ処理装置は更新通知部の更新情報を保持しておくことで、記録領域に格納されたデータが他のデータ処理装置等によって更新されたか否かを判別できる。こうすることによって、キャッシュ情報の有効性が確認可能となり、インデックスファイルの有効性も確認可能となる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、読み書き可能な記録媒体、及び記録媒体に格納されたデータの処理を行うデータ処理装置及びデータ処理方法に関するものである。
【背景技術】
【0002】
近年、ディジタルデータを読み書き可能な記録媒体として、不揮発性半導体メモリを内蔵する様々なタイプのカード状の半導体メモリが普及してきている。これらの半導体メモリを使ってデータを処理するデータ処理装置は、パーソナルコンピュータ、音響機器、映像機器、携帯電話、デジタルカメラなどの電化製品を始め、多岐に渡って利用されている。
【0003】
半導体メモリ等の着脱可能で可搬性に優れた記録媒体は、データ処理装置間のデータのやり取りを担うブリッジメディアとして特に有用である。このため1つの記録媒体は装脱によって複数のデータ処理装置に使用されることが多い。従って、あるデータ処理装置が記録媒体に格納したデータは、他のデータ処理装置によって更新される可能性がある。そのため、データ処理装置は、一度抜去された記録媒体がもう一度装着された際に、記録媒体の内容が更新されているか否かを確認してから使用する必要がある。
【0004】
あるデータ処理装置において、記録媒体内のデータが他のデータ処理装置などによって更新された可能性があるか否かを判断するためには、記録媒体に記録されたデータを実際に読み出して内容を確認しなければならず、読み出すデータのサイズが大きくなるに伴い、処理時間がかかるという問題があった。
【0005】
データが記録媒体に書き込まれる度に更新される更新情報としては、記録媒体中のブロック毎の書き込み回数などがあり、その記録方法が例えば特開2000−45858号公報に開示されている。しかし、ブロック毎の書き込み回数は一般に、記録媒体の内部でのみ使用され、データ処理装置には開示されない。このため、記録媒体におけるデータの更新の有無を検出する用途には利用できなかった。
【0006】
従来の記録媒体では、着脱可能かつ読み書き可能な記録媒体に格納されたデータが、更新された可能性があるか否かをデータ処理装置において簡単に判別できないために、記録媒体内のデータの確認に要する時間が多くかかるという問題点があった。
【特許文献1】特開2000−45858号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
本発明はこのような問題を解決するために、記録媒体内にデータが書き込み直前に、データが更新されていることを通知する更新通知部を設ける。そして更新通知部の更新情報をデータ処理装置から参照可能とし、さらに更新通知部の更新情報はデータ処理装置から更新不可とする。こうしてデータ処理装置に対して更新の可能性を確実に通知できるようにすることを、発明の主要な目的とする。
【課題を解決するための手段】
【0008】
本発明の記録媒体は、データを格納する不揮発性の記録領域に加え、記録領域のデータが書き込み時又は消去時に更新情報が更新され、更新情報を保持する更新通知部と、ホスト機器との通信を行うホストインターフェイス部と、記録領域にデータを読み書きすると共に、前記ホストインターフェイス部を介して記録領域のデータ及び更新情報を前記ホスト機器に与える制御部とを設ける。そして更新通知部の更新情報はデータ処理装置から読み出し可能かつ書き込み不可にすることを特徴とする。
【発明の効果】
【0009】
このような記録媒体及びデータ処理方法を用いれば、記録媒体中のデータが他のデータ処理装置等によって更新された可能性があるか否かを簡単に判別できる。従って、データ処理装置において処理中に記録媒体が抜去された場合や、記録媒体の電源断が発生した場合に、記録媒体に格納されたデータが更新された可能性があるか否かを短時間で判別できる。データが更新されていない場合には、データ処理装置に蓄えていたキャッシュ情報をそのまま使用することが可能となる。
【図面の簡単な説明】
【0010】
【図1】第1図は本発明の実施例における記録媒体100の構成図である。
【図2】第2図は本発明の実施例1における記録媒体100のコマンド受信時の動作シーケンスを示すフローチャートである。
【図3】第3図は本発明の実施例におけるデータ処理装置200の構成を示すブロック図である。
【図4】第4図は本発明の実施例1におけるデータ処理装置200に記録媒体100を装着した場合の動作シーケンスを示すフローチャートである。
【図5】第5図は本発明の実施例1におけるデータ処理装置200が記録媒体100のデータを読み出す場合の動作シーケンスを示すフローチャートである。
【図6】第6図は本発明の実施例1におけるデータ処理装置200が記録媒体100にデータを書き込む場合の動作シーケンスを示すフローチャートである。
【図7】第7図は本発明の実施例1におけるデータ処理装置200の電源起動時の動作シーケンスを示すフローチャートである。
【図8】第8図は本発明の実施例2における記録領域130のデータ構造を示す説明図である。
【図9】第9図は本発明の実施例2におけるデータ処理装置200に記録媒体100を装着した場合の動作シーケンスを示すフローチャートである。
【図10】第10図は本発明の実施例2におけるインデックスファイル300を作成する動作シーケンスを示すフローチャートである。
【図11】第11図は本発明の実施例2におけるデータ処理装置200の電源起動時の動作シーケンスを示すフローチャートである。
【図12】第12図は本発明の実施例3における記録媒体100のコマンド受信時の動作シーケンスを示すフローチャートである。
【図13】第13図は本発明の実施例3におけるインデックスファイル300の作成の動作シーケンスを示すフローチャートである。
【符号の説明】
【0011】
100 記録媒体
110 ホストインターフェイス部
120 制御部
130 記録領域
131 データ格納領域
132 検索情報格納領域
140 更新通知部
150 媒体ID保持部
200 データ処理装置
210 スロット
220 入出力処理部
230 データ処理部
231 更新情報格納領域
232 媒体固有ID格納領域
233 キャッシュ情報格納領域
240 ユーザ入力処理部
250 表示処理部
300 インデックスファイル
【発明を実施するための最良の形態】
【0012】
以下、本発明の実施例における記録媒体、データ処理装置、データ処理方法ついて、図面を用いて説明する。
【実施例1】
まず、本発明の実施例1による記録媒体について説明する。第1図は本発明の半導体メモリである記録媒体100の構成図である。記録媒体100は、ホストインターフェイス部110、制御部120、記録領域130、更新通知部140、媒体ID保持部150から構成される。このような記録媒体100はデータ処理装置200のスロットに挿入されてデータの読み書きが行われる。即ちデータ処理装置200は記録媒体100に対してデータを読み書きするホスト機器である。
【0013】
ホストインターフェイス部110は、データ処理装置200とコマンドやデータ等の情報の受け渡しをするものである。制御部120は、記録媒体100の記録領域130、更新通知部140、媒体ID保持部150の制御を行うことにより、記録領域130にデータを読み書きすると共に、ホストインターフェイス部110を介して記録領域130のデータ及び更新情報をホスト機器であるデータ処理装置200に与えるものである。記録領域130は、ディジタルデータを格納する部分であり、データ処理装置200から、任意のディジタルデータの読み書きが可能な領域である。
【0014】
更新通知部140は、記録領域130のどこか一部のデータが書き込み可能又は消去可能になったきに、更新情報が制御部120によって更新され、その値を保持するものである。更新通知部140は、更新情報が数値情報の場合、カウンタで構成することも可能である。また更新情報は記録領域130の一部に保持することも可能である。更新情報は制御部120及びホストインターフェイス部110を介してデータ処理装置200で読み出すことが可能である。しかしながら、データ処理装置200から更新情報を任意の値に設定することはできない。本実施例においては、更新通知部140に格納される更新情報のサイズは一例として64ビットとする。
【0015】
また、更新通知部140の更新情報として記録媒体100を製造したときに初期値である0が書き込まれ、それ以降はクリアされないものとする。すなわち、記録媒体100の電源が切断されても、データ処理装置200からリセットコマンドが発行されても、更新通知部140の値は初期値に戻らないものとする。
【0016】
媒体ID保持部150は、記録媒体毎に異なる媒体固有のIDを格納しているメモリである。媒体ID保持部150は必ずしも必要ではないが、本実施例では備えているものとする。本実施例においては、媒体ID保持部150のメモリサイズは一例として64ビットとする。
【0017】
以下、記録媒体100を構成している各部の動作について図面を用いて説明する。第2図は、記録媒体100がデータ処理装置200からコマンドを受信したときの一般的な動作シーケンスを示すフローチャートである。このコマンドとは、データのライトコマンド、リードコマンド、イレーズコマンド、初期化コマンドなどである。ステップS201において、ホストインターフェイス部110はデータ処理装置200からのコマンドを受信すると、そのコマンドを制御部120に通知する。ステップS202で、制御部120はステップS201で通知されたコマンドの種別を判断し、そのコマンドが記録領域130のデータを更新するコマンドであるか否かを判断する。記録領域130を更新するコマンドとは、データの書き込みを行うライトコマンドや、データの消去を行うイレーズコマンドなどである。更新するコマンドである場合、ステップS203の処理に進む。それ以外のコマンドである場合、ステップS205の処理に進む。なお、それ以外のコマンドとは、例えばデータの読み出しを行うリードコマンドなどである。
【0018】
ステップS203で、制御部120は更新通知部140の更新情報の値をインクリメントする。本実施例においてインクリメントとは1を加算するものとするが、これに限定されるものではない。ステップS204で、制御部120は受信した更新コマンドを実行する。例えば、コマンドがライトコマンドである場合には記録領域130に対して、データ処理装置200から受信したデータを書き込む。また、イレーズコマンドである場合には記録領域130の該当するアドレスのデータを消去する。処理が終了したらステップS206に進む。ステップS205で、受信したコマンド(リードコマンドなど)を実行してステップS206に進む。
【0019】
ステップS206では、受信したコマンドが記録媒体100からデータ処理装置200に応答値(ACK)を返す必要があるものか否かを判断する。応答値(ACK)に更新通知部140の更新情報を格納するフィールドが用意されている場合には、ステップS207に進み、そうでない場合は処理を終了する。ステップS207で、応答値(ACK)に対して現在の更新通知部140の更新情報を埋め込み、データ処理装置200に送信して処理を終了する。
【0020】
以上のように、本実施例による記録媒体100は、記録領域130のデータが書き込み可能なときであって、データを更新する直前に更新通知部140の値を更新する。従って、コマンドの実行中に電源の遮断やカード(記録媒体)抜けなどが発生し、処理が中断した場合にも更新通知部140の更新情報は更新される。すなわち、更新通知部140の更新情報の値は記録媒体100が実際に更新された回数ではなく、更新された可能性がある回数を表示することになる。このため、更新通知部140の更新情報の値が変更されていない場合には、記録領域130のデータが更新されていないことになる。
【0021】
なお、本実施例において、記録媒体100はデータ処理装置200が任意のタイミングで更新通知部140の値を読み出すためのコマンドを備えているものとする。
【0022】
次に、本実施例によるデータ処理装置200について説明する。第3図はデータ処理装置200の構成例を示すブロック図である。データ処理装置200は、記録媒体100を装着してデータ処理を行うもので、スロット210、入出力処理部220、データ処理部230、ユーザ入力処理部240、表示処理部250を含んで構成される。スロット210は記録媒体100を装着するためのハードウェアである。入出力処理部220は、スロット210に装着された記録媒体100に対してコマンドやデータ等の情報の受け渡しを行うものである。データ処理部230は、記録媒体100に格納されたデータもしくはこれから格納するデータを処理する部分であり、データ処理装置200の中心的な処理を担う部分である。データ処理部230は、更新情報格納領域231、媒体固有ID格納領域232、キャッシュ情報格納領域233を備えている。データ処理部230は、例えば記録媒体100に格納されたデータがオーディオデータやビデオデータである場合には、データを入出力処理部220経由で読み出して再生処理を行ってもよい。また、記録、編集したデータを入出力処理部220経由で記録媒体100に書き込んでもよい。データ処理部230は、データの処理中に使用する一時的な記憶領域であるメモリを備えているものとする。
【0023】
更新情報格納領域231は、記録媒体100の更新通知部140の更新情報を格納するための領域である。媒体固有ID格納領域232は、記録媒体100の媒体ID保持部150の値を格納するための領域である。記録媒体100が媒体ID保持部150を備えていない場合には、これはなくてもよいが、本実施例では備えているものとする。キャッシュ情報格納領域233は、記録媒体100から読み出した最新のデータを格納するための領域である。記録媒体100に格納されたデータのうち、頻繁に読み込むデータ等を格納しておくことで、記録媒体100へのアクセス回数を減らし、処理を高速化することができる。
【0024】
ユーザ入力処理部240は、ユーザからの入力を受け付ける部分である。ユーザ入力処理部240は必ずしも必要ではないが、本実施例では備えているものとする。表示処理部250は、データ処理部230の処理結果や各処理の進行状況などをユーザに通知する部分である。表示処理部250は必ずしも必要ではないが、本実施例では備えているものとする。
【0025】
以下、記録媒体100及びデータ処理装置200を構成している各部の動作について、図面を用いて説明する。第4図はデータ処理装置200に記録媒体100を装着した場合の動作シーケンスを示すフローチャートである。ステップS401で、データ処理部230はスロット210に装着された記録媒体100の媒体ID保持部150の値を、入出力処理部220を経由して読み出して、メモリ上に一時記憶させる。ステップS402で、データ処理部230はスロット210に装着された記録媒体100の更新通知部140の更新情報を、入出力処理部220を経由して読み出して、メモリ上に一時記憶させる。ステップS403で、ステップS401で読み出した媒体ID保持部150の値と、媒体固有ID格納領域232に格納されている値との比較を行う。一致する場合にはステップS404に進み、一致しない場合にはステップS406に進む。
【0026】
ステップS404で、ステップS402で読み出した更新通知部140の更新情報と、データ処理部230の更新情報格納領域231に格納されている更新情報との比較を行う。一致する場合にはステップS405に進み、一致しない場合にはステップS406に進む。ステップS405で、データ処理部230はスロット210に装着された記録媒体100に格納されているデータが、前回の装着時から更新されていないと判断する。そして、キャッシュ情報格納領域233に格納されているキャッシュデータを有効なデータとして取り扱うことに決定する。ステップS406に進んだ場合は、データ処理部230はスロット210に装着された記録媒体100に格納されているデータが、前回の装着時から更新されていると判断する。そして、キャッシュ情報格納領域233に格納されているキャッシュデータを無効なデータとして取り扱うことに決定する。このとき、キャッシュ情報格納領域233の全領域をクリアしてもよい。さらに、ステップS401で一時記憶していた媒体ID保持部150の値を媒体固有ID格納領域232に上書きし、ステップS402で一時記憶していた更新通知部140の更新情報を更新情報格納領域231に上書きする。
【0027】
第5図は、データ処理装置200が記録媒体100のデータを読み出す場合の動作シーケンスを示すフローチャートである。ステップS501で、データ処理部230はスロット210に装着された記録媒体100の更新通知部140の更新情報を、入出力処理部220を経由して読み出し、メモリ上に一時記憶させる。ステップS502で、データ処理部230は入出力処理部220を経由してスロット210に装着されている記録媒体100に対してリードコマンドを発行し、記録媒体100からデータを読み出す。ここで、読み出したデータをキャッシュ情報格納領域233に格納してもよい。読み出し処理が完了したらステップS503に進む。ステップS503では、データ処理部230はスロット210に装着された記録媒体100の更新通知部140の更新情報を、入出力処理部220を経由して再度読み出して、メモリ上に一時記憶させる。
【0028】
ステップS504では、ステップS501で読み出した更新通知部140の更新情報と、ステップS503で読み出した更新通知部140の更新情報とを比較する。すなわち、ステップS502のデータ読み出しの前後で更新通知部140の値が変化していないかをチェックする。読み出し処理が正常に完了していれば一致する。しかし、何らかの理由によりデータの読み出し途中にデータが更新された場合などには一致しない。一致する場合には処理を終了する。一致しない場合にはステップS505に進む。ステップS505で、ステップS502でのデータの読み出しに失敗したと考えられるため、エラー処理を実施する。キャッシュ情報格納領域233のデータは信頼性が損なわれたと判断し、無効化する。ステップS506で、単純にエラー終了する場合にはそのまま終了する。リトライ処理を実施する場合には、ステップS501に戻って処理をやり直す。なお、リトライ処理は有限回数に制限してもよい。第5図の動作シーケンスを用いることで、読み出したデータの信頼性を高めることが可能となる。
【0029】
第6図はデータ処理装置200が記録媒体100にデータを書き込む場合の動作シーケンスを示すフローチャートである。ステップS601で、データ処理部230はスロット210に装着された記録媒体100の更新通知部140の更新情報を、入出力処理部220を経由して読み出してメモリ上に一時記憶させる。ステップS602で、データ処理部230はスロット210に装着されている記録媒体100に対して入出力処理部220を経由してライトコマンドを発行し、記録媒体100に書き込むデータを送信する。書き込み処理が完了したらステップS603に進む。ステップS603で、データ処理部230はスロット210に装着された記録媒体100の更新通知部140の更新情報を、入出力処理部220を経由して読み出してメモリ上に一時記憶させる。ステップS604では、ステップS601で読み出した更新通知部140の更新情報と、ステップS603で読み出した更新通知部140の更新情報とを比較する。すなわち、ステップS602のデータ書き込み前後で更新通知部140の更新情報が変化しているかをチェックする。記録媒体100で書き込み処理が開始された場合には更新されているが、何らかの理由によりデータの書き込みが行われなかった場合には更新されていない。更新されている場合にはステップS605に進む。更新されていない場合にはステップS606に進む。ステップS605で、データ処理部230は更新情報格納領域231の値をステップS603で一時記憶しておいた値で上書きする。
【0030】
さらに、ステップS602の書き込みによって、キャッシュ情報格納領域233に格納しているデータに対応する記録媒体100のデータが上書きされる場合には、キャッシュ情報格納領域233のデータを無効化する。なお、処理の簡略化のために常にキャッシュ情報格納領域233のデータを無効化してもよい。
【0031】
ステップS606では、ステップS602でのデータの書き込みに失敗したと考えられるため、エラー処理を実施する。単純にエラー終了する場合にはそのまま終了する。リトライ処理を実施する場合には、ステップS601に戻って処理をやり直す。なお、リトライ処理は有限回数に制限してもよい。
【0032】
第7図はデータ処理装置200の電源起動時の動作シーケンスを示すフローチャートである。ステップS701で、データ処理装置200の電源がONになると、データ処理装置200内の入出力処理部220、データ処理部230、ユーザ入力処理部240、表示処理部250は初期化処理を行う。初期化処理とはハードウェア及びソフトウェアの初期設定を行う処理であり、内部メモリのクリアや初期値の設定などを含む。このとき、データ処理部230は更新情報格納領域231、媒体固有ID格納領域232、及びキャッシュ情報格納領域233の値をクリアする。
【0033】
ステップS702で、入出力処理部220はスロット210に記録媒体100が装着されているか否かを判別する。ステップS703において、ステップS702の判別の結果、記録媒体100がスロット210に装着されている場合にはステップS704に進む。装着されていない場合には電源起動時の処理を完了する。ステップS704では、スロット210に装着された記録媒体100に対して、第4図で説明した動作シーケンスを実行してから電源起動時の処理を完了する。
【0034】
電源起動時の動作シーケンスが完了した後、データ処理装置200はユーザ入力処理部240で受取ったユーザの入力をトリガにして、記録媒体100に格納されているデータの処理を実施する。ユーザ入力処理部240が存在せず、データ処理部230に格納されたソフトウェアが自動的に記録媒体100に格納されているデータの処理を開始してもよい。また、各動作シーケンスにおいて、表示処理部250はその進行状況や動作結果をユーザに表示してもよい。
【0035】
以上のように、本発明によるデータ処理装置200は、記録媒体100へのアクセスを行う際に、更新通知部140の更新情報を利用する。これにより、記録媒体100が装着された際にキャッシュ情報格納領域233に格納されたキャッシュ情報を再利用できるか否かを簡単に判別することができ、再利用できる場合には処理の高速化が可能となる。さらに、記録媒体100からのデータの読み出し、記録媒体100へのデータの書き込みが正常に行われたか否かを、より厳しくチェックすることができる。
【0036】
なお、本発明を上記の実施例に基づいて説明してきたが、本発明は上記の実施例に限定されるものではない。本発明の趣旨を逸脱しない範囲で変更することができる。以下に説明する(1−1)〜(1−14)の場合も、本発明の概念に含まれる。
【0037】
(1−1)本実施例では、更新通知部140はカウンタで構成されるとしたが、これに限定されるものではない。記録領域130の値が更新された可能性がある場合には、必ず状態が変化してデータ処理装置200がそれを検知することが可能であれば何でもよい。
【0038】
(1−2)本実施例では、ステップS203の処理で更新通知部140の更新情報の更新は、数値のインクリメントであるとしたが、それ以外の更新方法を適用してもよい。すなわち、デクリメントでもよいし、擬似乱数を設定していってもよい。同じ値が出てこないような更新方法であれば何でも良い。
【0039】
(1−3)本実施例では、記録媒体100は記録領域130を更新するコマンドを受信した場合に、1回だけ更新通知部140の更新情報を更新することにしたが、複数回更新してもよい。例えば、複数セクタにデータを1コマンドで書き込むようなマルチライトコマンドの場合には、書き込むセクタ数だけ更新を行っても良い。
【0040】
(1−4)本実施例では、記録媒体100の更新通知部140の更新情報は製造時に初期値0が設定されることにしたが、初期値は0でなくても良い。例えば、初期値を媒体ID保持部150から決定しても良い。例えば、更新通知部140の初期値を媒体ID保持部150の値そのものとしても良い。媒体ID保持部150の値は記録媒体毎に異なるため、記録媒体毎に更新通知部140の初期値を多様にしておくことが可能である。
【0041】
(1−5)本実施例では、更新通知部140のサイズを64ビットとしたが、任意の長さに設定して良い。記録媒体の寿命に応じて、同じ値が二度と出現しないような桁数にすることで、本発明の効果をより確実なものにできる。
【0042】
また、データ処理装置200は、更新通知部140の値が一巡したことを検出するための仕組みを備えていてもよい。例えば、記録媒体100は更新通知部140の値が表現できる最大値になった時点で、値の更新を行わなくする仕様としてもよい。即ち、データ処理装置200は更新通知部140の値が最大値の場合にはこれを利用しない。また、記録媒体100は更新通知部140が一巡したら、書き込みできなくなるという仕様にしてもよい。
【0043】
(1−6)本実施例では、媒体ID保持部150のメモリサイズを64ビットとしたが、任意の長さに設定して良い。
【0044】
(1−7)本実施例では、記録媒体100は半導体メモリとしたが、着脱可能かつ読み書き可能な記録媒体であれば、本発明の効果は有効である。半導体メモリ以外の記録媒体として、例えば着脱可能なHDDでもよい。
【0045】
(1−8)本実施例では、発明のポイントを明確に説明するために、データ処理装置200は1つのスロット210を備えているものとしたが、スロット210は複数あってもよい。
【0046】
同様に、媒体固有ID格納領域232及びキャッシュ情報格納領域233には、1つの記録媒体100の情報しか格納できないものとして説明したが、複数の記録媒体100の情報を格納できるようにしてもよい。このとき、キャッシュ情報の再利用率が高まるため、処理の高速化が期待できる。
【0047】
(1−9)本実施例では、第5図の動作シーケンスにおいて読み出し処理の前後における更新通知部140の更新情報を比較している。これは読み出し処理が正常に行われているか否かを確認するものであるが、必要なければ省略してもよい。
【0048】
なお、読み出し処理の確認を行う別の方法として、例えば、データ処理装置200が実際に読み出したデータサイズが読み出し時に指定したサイズと一致するかを確認するという方法もある。
【0049】
また本実施例では、第6図の動作シーケンスにおいて書き込み処理の前後における更新通知部140の更新情報を比較している。これは書き込み処理が正常に行われているか否かを確認するものであるが、必要なければ省略してもよい。なお、第6図の動作シーケンスにおいて、書き込み処理の直後に書き込んだデータの読み出しを行い、データが一致することを確認しても良い。
【0050】
(1−10)本実施例では、データ処理装置200の電源起動時において、データ処理部230は更新情報格納領域231、媒体固有ID格納領域232、及びキャッシュ情報格納領域233の値をクリアしているため、データ処理装置200の電源がOFFされるとキャッシュ情報は消去されていた。しかし、データ処理装置200の電源がOFFされてもキャッシュ情報が消去されないように、更新情報格納領域231、媒体固有ID格納領域232、及びキャッシュ情報格納領域233の情報を不揮発性メモリに保持しても良い。また、逆にキャッシュ情報を強制的にリセットする手段を備えていても良い。
【0051】
(1−11)本実施例では、更新通知部140の更新情報の値は記録領域130の更新の可能性が発生する度にインクリメントされていたが、この仕組みを利用すれば次のことが可能となる。
【0052】
記録媒体100が記録領域130への書き込みを禁止するライトプロテクトを設定、解除する機能を有しており、かつ、記録媒体の制御部120はホストインターフェイス部110経由でライトプロテクトの設定、解除の状態を判断することができるものとする。そして、データ処理装置200の更新通知部140の値は、記録領域130の更新の可能性が発生する度にインクリメントされるのではなくて、ライトプロテクトが解除される度にインクリメントされるものとする。このとき、データ処理装置200は記録媒体100に設定したライトプロテクトが他のデータ処理装置によって解除された履歴があるか否かを判断することが可能となる。
【0053】
(1−12)本実施例では、更新通知部140の更新情報の値は記録媒体130のどこか一部に更新の可能性が発生する度にインクリメントされていた。しかし、記録媒体130のある特定の領域に対しては更新通知部140の更新情報の値を更新しないようにしてもよい。これにより、記録媒体100の用途を広げることが可能となる。
【0054】
(1−13)本実施例では、記録媒体100に1つの記録領域130とそれに対応する1つの更新通知部140が存在している例を記述した。しかし、記録媒体100に記録領域130と更新通知部140の組が複数存在していてもよい。このとき、各更新通知部140は対応する記録領域130のどこか一部に更新の可能性が発生した場合に更新情報を更新するものとする。これにより記録領域ごとに更新の可能性を検出することができるため、データ処理装置200側でより細かい制御が可能となる。
【0055】
例えば記録媒体100がSDメモリカードの場合、ユーザが自由にアクセスできる記録領域である通常領域と、特定の認証処理に成功したときのみアクセスできる記録領域である認証領域が存在する。このとき、通常領域用及び認証領域用の2つの更新通知部140が存在し、各々の更新通知部140は対応する記録領域130に対して、更新の可能性が発生する度に更新情報を更新するとしてもよい。
【0056】
(1−14)本実施例では記録媒体100に1つの記録領域130とそれに対応する1つの更新通知部140が存在している例を記述した。しかし、記録媒体100に複数の記録領域130が存在している場合、複数の記録領域の全てもしくは一部に対して1つの更新通知部140が存在していてもよい。このとき、更新通知部140は対応する複数の記録領域130のうちいずれか1つの記録領域130に、更新の可能性が発生した場合に更新情報が更新される。これにより、1つの更新通知部140で複数の記録領域130の更新を管理できる。
【0057】
例えばSDメモリカードの場合、通常領域及び認証領域の2つの記録領域に対して1つの更新通知部140が存在し、通常領域及び認証領域のいずれかに更新の可能性が発生した場合に、更新通知部140の更新情報が更新されるとしてもよい。
【実施例2】
【0058】
次に本発明の実施例2における記録媒体及びデータ処理方法について、図面に基づいて詳細に説明する。データ処理装置によっては、インデックスファイルの作成機能を有しないものがある。このようなデータ処理装置では、記録媒体にデータの書き込みや消去を行った場合、インデックスファイルが更新されない。このような記録媒体のファイルを他のデータ処理装置が読む場合、記録媒体のインデックスファイルを閲覧し、コンテンツファイルを取り出しても、コンテンツファイルの内容と、インデックスファイルの内容が一致しない場合がある。
【0059】
本実施例は、インデックスファイルに更新情報フィールドを設け、この更新情報フィールドに更新通知部の更新情報を格納することにより、コンテンツファイルの内容とインデックスファイルの内容が一致しているか否かを容易に確認できるようにしたものである。
【0060】
本実施例2における記録媒体100のブロック構成そのものについては、実施例1と同様であり、第1図のとおりとする。実施例2の記録媒体100は、記録領域に設けられたデータ格納領域のインデックスファイル内に、更新情報フィールドを設ける。このことにより、データ処理装置が複数存在する場合に、記録媒体100がいずれのデータ処理装置に挿入されても、記録領域の更新状態を確認できるようにする。
【0061】
第8図は、本実施例の記録媒体100において、記録領域130に格納されるデータのデータ構造例を示す説明図である。記録領域130は、データ格納領域131及び検索情報格納領域132から構成される。データ格納領域131は複数のデータを格納する領域である。本実施例では各々のデータはファイル形式で格納されているものとし、少なくとも1つ以上のコンテンツファイル及びインデックスファイル300が格納されているものとする。しかし、その他のファイルが格納されていてもよい。コンテンツファイルは、音楽、動画、静止画などのコンテンツデータを格納したファイルである。
【0062】
インデックスファイル300は、複数のコンテンツファイルの情報を格納したファイルであり、具体的には次のような情報を格納するフィールドを備えているものとする。すなわち、記録媒体100の媒体固有ID150の値、記録媒体100の更新通知部140の更新情報、記録媒体100の中に記録されている総コンテンツファイル数、記録媒体100の中に記録されている総コンテンツファイルの合計の再生時間、各コンテンツファイルの情報、コンテンツファイルの再生順序を記述したプレイリストなどである。特に、記録媒体100の更新通知部140の更新情報を格納するフィールドを更新情報フィールドと呼ぶ。
【0063】
また、コンテンツファイルの情報とは、具体的には次のような情報である。すなわち、コンテンツファイル名、音楽、動画、静止画などのコンテンツの種別、コンテンツの再生時間、コンテンツファイルが格納されている物理的なデータ格納アドレス、コンテンツの再生条件や複製条件である著作権保護情報、コンテンツの作成日時などである。
【0064】
インデックスファイル300には、コンテンツファイルの一覧表示等を行う際に必要な情報がまとめて格納されているため、格納されているコンテンツファイル全てを検索する必要がなくなり、データ処理装置200の処理を軽くすることができる。
【0065】
検索情報格納領域132は、データ格納領域131に格納された各データをデータ処理装置200が取り出す際に必要となる情報、例えば記録アドレスを格納する領域である。本実施例では、FATファイルシステムにて記録アドレスなどを管理し、このFATファイルシステムにおいて必要となる情報を検索情報格納領域132に記録するものとする。なお、UDFなどの他のファイルシステムを利用しても良いし、ファイルシステムを使わずに記録アドレスなどを管理しても良い。
【0066】
本実施例2におけるデータ処理装置200のブロック構成は、実施例1と同様であり、第3図のとおりとするため、詳細な説明は割愛する。
【0067】
以下、記録媒体100及びデータ処理装置200を構成している各ブロックの動作について図面を用いて説明する。第9図はデータ処理装置200に記録媒体100を装着した場合、データ処理装置200の動作シーケンスを示すフローチャートである。ステップS901で、データ処理部230はスロット210に装着された記録媒体100の検索情報格納領域132の情報を、入出力処理部220を経由して読み出し、データ格納領域131にインデックスファイル300が存在するか否かを判別する。インデックスファイル300が存在する場合は、ステップS902の処理に進み、存在しない場合はステップS906の処理に進む。
【0068】
ステップS902では、データ処理部230は入出力処理部220を経由して、スロット210に装着された記録媒体100のインデックスファイル300をメモリ上に読み出す。データ格納領域131におけるインデックスファイル300の位置情報などは検索格納領域132の情報を利用する。ステップS903で、データ処理部230はスロット210に装着された記録媒体100の更新通知部140の値を、入出力処理部220を経由して読み出してメモリ上に一時記憶させる。
【0069】
ステップS904では、ステップS903で読み出した更新通知部140の更新情報と、ステップS902で読み出したインデックスファイル300の更新情報フィールドの更新情報との比較を行う。一致する場合にはステップS905の処理に進む。一致しない場合にはステップS906の処理に進む。ステップS905では、データ処理部230はスロット210に装着された記録媒体100のインデックスファイル300が作成された後に、記録領域130のデータが更新されていないと判断する。そして、インデックスファイル300の情報を利用した処理を実行する。インデックスファイル300の情報を利用した処理とは、例えば記録媒体100に格納されているコンテンツデータの一覧表を表示処理部250に出力することである。
【0070】
ステップS906では、データ処理部230はインデックスファイル300の有無に関わらず、インデックスファイル300を利用しない形で処理を実行する。例えば、記録媒体100のデータ検索情報格納領域132の情報を読み出して、記録媒体100に格納されているコンテンツデータの一覧表を表示処理部250に出力する。このとき、インデックスファイル300を利用しないので、コンテンツデータ毎の情報を検索情報格納領域132から順次読み出す必要があるため、処理時間は長めになる。
【0071】
第10図は、データ処理装置200が記録媒体100にインデックスファイル300を作成する動作シーケンスを示すフローチャートである。ステップS1001で、データ処理部230はデータ検索情報格納領域132の情報を利用して、記録媒体100に格納されているコンテンツデータを検索する。そしてコンテンツデータの情報を読み出すことで情報を収集し、メモリ上にインデックスファイルを作成する。メモリ上のインデックスファイルにおいて、更新情報フィールドは無効を意味する値である0を格納する。
【0072】
ステップS1002では、データ処理部230は入出力処理部220を経由して、ステップS1001で作成したメモリ上のインデックスファイルを記録媒体100の記録領域130に書き込む。ステップS1003では、データ処理部230はスロット210に装着された記録媒体100の更新通知部140の更新情報を、入出力処理部220を経由して読み出し、メモリ上に一時記憶させる。ステップS1004では、ステップS1003で読み出した更新通知部140の更新情報の値に次の値を加算する。すなわち、ステップS1002で記録媒体100に作成したインデックスファイル300の更新情報フィールドの更新情報を更新する際に、記録媒体100の更新通知部140がインクリメントすると予想される数を加算する。例えば1回の書き込みだけでよい場合には、インクリメントされる数は1とする。これにより算出された値を予測更新情報値と呼ぶ。
【0073】
ステップS1005で、データ処理部230はステップS1004で算出した予測更新情報値を、記録媒体100に作成されているインデックスファイル300の更新情報フィールドに上書きする。すなわち、記録媒体100の記録領域130に書き込む。ステップS1006では、データ処理部230はスロット210に装着された記録媒体100の更新通知部140の値を、入出力処理部220を経由して読み出し、メモリ上に一時記憶させる。ステップS1007では、ステップS1006で読み出した更新通知部140の更新情報の値と、ステップS1004で算出した予測更新情報値とを比較する。一致する場合には、インデックスファイル300の作成処理を完了する。一致しない場合にはステップS1008に進む。ステップS1008では、インデックスファイル300の作成においてエラーが発生したと判断し、エラー処理を実行して終了する。
【0074】
第11図はデータ処理装置200の電源起動時の動作シーケンスを示すフローチャートである。ステップS1101では、データ処理装置200の電源がONになると、データ処理装置200内の入出力処理部220、データ処理部230、ユーザ入力処理部240、表示処理部250は初期化処理を行う。初期化処理とはハードウェア及びソフトウェアの初期設定を行う処理であり、内部メモリのクリアや初期値設定などを含む。ステップS1102で、入出力処理部220はスロット210に記録媒体100が装着されているか否かを検出する。ステップS1103で、ステップS1102の検索の結果、記録媒体100がスロット210に装着されていることが判明すれば、ステップS1104に進む。装着されていない場合には電源起動時の処理を完了する。ステップS1104では、スロット210に装着された記録媒体100に対して、第9図で説明した動作シーケンスを実行してから電源起動時の処理を完了する。
【0075】
第9図から第11図の各動作シーケンスにおいて、表示処理部250はその進行状況や動作結果をユーザに表示してもよい。
【0076】
以上のように、本発明による記録媒体100に格納されているインデックスファイル300は、作成時における記録媒体100の更新通知部140の更新情報を含んでいるため、データ処理装置200ではインデックスファイル300が作成された後に記録媒体100の記録領域130が更新されたか否かを簡単に判断することができる。
【0077】
言い換えると、読み書き可能な記録媒体100においてインデックスファイル300が作成された後に、コンテンツデータに変更が加えられていないことを、各々のコンテンツデータを確認することなしに簡単に判断できる。
【0078】
これにより、インデックスファイル300に変更が加えられていない場合には、インデックスファイル300を利用して記録媒体100に格納されたコンテンツファイルの一覧を短時間でユーザに通知することが可能となる。
【0079】
なお、本発明を上記の実施例に基づいて説明してきたが、本発明は上記の実施例に限定されないのはもちろんである。本発明の趣旨を逸脱しない範囲で変更することができる。以下に説明する(2−1)〜(2−9)の場合も、本発明の概念に含まれる。
【0080】
(2−1)本実施例では、データ処理装置200に記録媒体100を装着した場合の動作シーケンスにおいて、インデックスファイル300を使用するか否かを判断する際に、更新通知部140の更新情報のみを使用している。しかし、これに加えて媒体ID保持部150の値を使用してもよい。すなわち、インデックスファイル300の媒体固有IDフィールドの値と、記録媒体100の媒体ID保持部150の値とが一致するか否かの判定を行い、一致しない場合にはインデックスファイル300を使用しないとしてもよい。これにより、他の記録媒体用に作成されたインデックスファイル300が記録媒体100にコピーされ、たまたま更新通知部140の更新情報と一致した場合の誤動作を回避することができる。
【0081】
(2−2)本実施例で記述したインデックスファイル300に備えられているフィールドは一例にすぎない。本発明において必須であるのは更新通知部140の更新情報を格納する更新情報フィールドであり、それ以外のフィールドは追加又は削除されていても、本発明による効果は有効である。
【0082】
(2−3)本実施例では、記録媒体100に対するデータの読み書きを行う際に、実施例1で記述したデータの読み書きの手順を利用していないが、この手順を併用してもよい。これによりデータの読み書きにおけるエラー検出をより厳重に行うことが可能となる。
【0083】
(2−4)本実施例では、インデックスファイル300を新規に作成する場合の動作シーケンス例を記述したが、既にインデックスファイル300が存在し、記録領域130への更新内容をデータ処理部230が把握している場合には、全てを作り直す必要はない。従って、ステップS1001の処理がより簡略化できる可能性があるが、それ以降の処理は同じである。
【0084】
(2−5)本実施例では、ステップS1001の処理において無効を意味する値を0としたが、これに限定されるものではない。無効であることを意味する値であれば何でも良い。
【0085】
(2−6)コンテンツファイルやインデックスファイルの一部もしくは全体が暗号化されていても本発明は有効である。
【0086】
(2−7)本実施例では、データ格納領域131のファイル内に更新情報フィールドを設け、更新通知部140の更新情報を格納したが、検索情報格納領域132に更新通知部140の更新情報を格納するフィールドを備えても良い。すなわち、検索情報格納領域132はデータ格納領域の各データの記録アドレスなどに加え、各データを記録媒体100に記録した際の更新通知部140の更新情報を格納してもよい。
【0087】
(2−8)本実施例では、ステップS1005の処理において予測更新情報値をインデックスファイル300の更新情報フィールドに上書きすると記述したが、具体的には以下のようにしてもよい。
【0088】
ファイルシステムを利用してデータを書き込む場合、各ファイルのデータが格納されているアドレスはファイルシステムが管理しており、ファイルシステムを利用するアプリケーションは関知しない。そこで、ファイルシステムが情報更新フィールドに上書きする機能を有していても良い。もしくは、ファイルシステムは、インデックスファイル300の更新情報フィールドが格納されているアドレスをアプリケーションに通知する手段を有するものとする。そしてアプリケーションはこのアドレス情報に基づいて情報更新フィールドの更新情報を直接上書きしてもよい。
【0089】
(2−9)本実施例では、ステップS902の処理の後に必ずステップS903にて更新通知部140の更新情報を読み出していた。しかし、インデックスファイル300の更新情報フィールドに、無効を意味する値である0が格納されている場合には、即座にステップS906の処理に進んでもよい。
【実施例3】
【0090】
次に本発明の実施例3における記録媒体及びデータ処理方法について、図面に基づいて詳細に説明する。本実施例3における記録媒体100の構成例は、実施例1と同様であり、第1図と同一の構成を有するので、詳細な説明は割愛する。
【0091】
本実施例3における記録媒体100は、データ処理装置200がデータを読み書きする前に、少なくとも1回は初期化処理を実施しなければならないものとし、初期化処理のためのコマンドを備えていることが特徴である。
【0092】
第12図は、記録媒体100がデータ処理装置200からコマンドを受信したときの動作シーケンスを示すフローチャートである。ステップS1201で、ホストインターフェイス部110はデータ処理装置200からのコマンドを受信すると、そのコマンドを制御部120に通知する。ステップS1202では、制御部120はステップS1201で通知されたコマンドの種別を判断し、そのコマンドが記録領域130を更新するコマンドであるか否かを判別する。記録領域130を更新するコマンドとは、データの書き込みを行うライトコマンドや、データの消去を行うイレーズコマンドなどである。更新するコマンドである場合、ステップS1203の処理に進む。それ以外のコマンドである場合、ステップS1206の処理に進む。なお、それ以外のコマンドとは、例えば読み出しを行うリードコマンドなどである。
【0093】
ステップS1203で、制御部120は、初期化処理後の最初の記録領域130を更新するコマンドであるか否かを判断する。最初である場合はステップS1204の処理に進む。そうでない場合はステップS1205の処理に進む。ステップS1204で、制御部120は更新通知部140の更新情報の値をインクリメントする。本実施例においてインクリメントとは1を加算するものとするが、これに限定されるものではない。ステップS1205で、制御部120は受信したコマンドを実行する。例えば、コマンドがライトコマンドである場合には記録領域130にデータ処理装置200から受信したデータを書き込む。また、イレーズコマンドである場合には記録領域130の該当するアドレスのデータを消去する。処理が終了したらステップS1207に進む。
【0094】
ステップS1206では、受信したコマンド(リードコマンド等)を実行してステップS1207に進む。ステップS1207では、受信したコマンドの種類が記録媒体100からデータ処理装置200に応答値(ACK)を返すものであり、かつ応答値(ACK)に更新通知部140の更新情報を格納するフィールドが用意されている場合には、ステップS1208に進む。そうでない場合は処理を終了する。ステップS1208で、応答値(ACK)に現在の更新通知部140の更新情報を埋め込んでデータ処理装置200に送信し、処理を終了する。
【0095】
以上のように、実施例3による記録媒体100は、初期化処理後、最初に記録領域130のデータを更新する直前に更新通知部140の値を更新する。前述した実施例1、2では、ライトコマンド又はイレーズコマンド毎に更新通知部140の値を更新していたが、本実施例では初期化後に一回のみの更新で済む。これにより、記録媒体がデータ処理装置に装着され、その後装脱されないで引き続き使用されるとき、更新情報の書き換えが不要となり、処理時間が短縮される
【0096】
なお、本実施例において、記録媒体100はデータ処理装置200が任意のタイミングで更新通知部140の更新情報の値をインクリメントするためのコマンドを備えているものとする。
【0097】
また、本実施例において、記録媒体100はデータ処理装置200が任意のタイミングで更新通知部140の値を読み出すためのコマンドを備えているものとする。
【0098】
次に、本発明の実施例3によるデータ処理装置について説明する。データ処理装置200のブロック構成そのものは実施例1と同様である。ここでは構成に関する詳細な説明は割愛し、各部の動作について図面を用いて説明する。
【0099】
本実施例3におけるデータ処理装置200に記録媒体100を装着した場合のデータ処理装置200の動作シーケンス例は、実施例2と同様であり、第9図のとおりとするため、詳細な説明は割愛する。
【0100】
第13図は、データ処理装置200が記録媒体100にインデックスファイルを作成する動作シーケンスを示すフローチャートである。ステップS1301で、データ処理部230はデータの検索情報格納領域132の情報を利用して記録媒体100に格納されているコンテンツデータを検索する。そして、コンテンツデータの情報を読み出すことで情報を収集し、メモリ上にインデックスファイルを作成する。メモリ上のインデックスファイルにおいて、更新情報フィールドは無効を意味する値として0を格納する。ステップS1302では、データ処理部230は入出力処理部220を経由して、ステップS1301で作成したメモリ上のインデックスファイルを記録媒体100の記録領域130に書き込む。ステップS1303で、データ処理部230はスロット210に装着された記録媒体100に対して、入出力処理部220を経由して更新通知部140の更新情報の値をインクリメントするためのコマンドを発行する。
【0101】
ステップS1304で、データ処理部230はスロット210に装着された記録媒体100の更新通知部140の更新情報を、入出力処理部220を経由して読み出し、メモリ上に一時記憶させる。ステップS1305では、ステップS1304で読み出した更新通知部140の更新情報を、記録媒体100に作成されているインデックスファイル300の更新情報フィールドに上書きする。すなわち、記録媒体100の記録領域130に更新情報を書き込む。
【0102】
なお、第13図の動作シーケンス例において、更新情報フィールドを最後に書き込んでいるのは、以下の理由による。
【0103】
インデックスファイル300を記録領域130に書き込んでいる最中に、記録媒体100がスロット210から抜去されたり、電源の遮断が発生した場合には、不正なインデックスファイル300が作成されることになる。不正か否かの判断は第9図の動作シーケンス例に示すように、更新情報フィールドの値を利用している。従って、インデックスファイル300の更新情報フィールドの更新を最後に行うことにより、不正なインデックスファイル300の判別が可能となる。
【0104】
本実施例3におけるデータ処理装置200の電源起動時の動作シーケンス例は、実施例2と同様であり、第11図のとおりとするため、詳細な説明は割愛する。
【0105】
以上のように、本実施例の記録媒体100に格納されているインデックスファイル300は、作成時における記録媒体100の更新通知部140の更新情報を含んでいるため、データ処理装置200ではインデックスファイル300が作成された後に他のデータ処理装置などによって記録媒体100の記録領域130が更新されたか否かを簡単に判別することができる。
【0106】
なぜならば、他のデータ処理装置で書き込みを行う場合、必ず初期化処理が発生しているために、更新通知部140の更新情報の値がインクリメントされる。この結果、インデックスファイル300の情報更新フィールドの値と更新通知部140の値とが異なる。そのため、読み書き可能な記録媒体100において、インデックスファイル300が作成された後にコンテンツデータに変更が加えられていないことを、各々のコンテンツデータを確認することなしに簡単に判断できる。
【0107】
これにより、インデックスファイル300に変更が加えられていない場合には、インデックスファイル300を利用して記録媒体100に格納されたコンテンツファイルの一覧を短時間でユーザに通知することが可能となる。
【0108】
なお、本発明を上記の実施例に基づいて説明してきたが、本発明は上記の実施例に限定されないのはもちろんである。本発明の趣旨を逸脱しない範囲で変更することができる。以下に説明する(3−1)〜(3−8)の場合も、本発明の概念に含まれる。
【0109】
(3−1)本実施例では、データ処理装置200に記録媒体100を装着した場合の動作シーケンスにおいて、インデックスファイル300を使用するか否かを判断する際に、更新通知部140の更新情報のみを使用しているが、これに加えて媒体固有ID150の値を使用してもよい。
【0110】
すなわち、インデックスファイル300の媒体固有IDフィールドの値と、記録媒体100の媒体固有ID150の値が一致するか否かの判定を行い、一致しない場合にはインデックスファイル300を使用しないとしてもよい。
【0111】
これにより、他の記録媒体用に作成されたインデックスファイル300が記録媒体100にコピーされ、たまたま更新通知部140の値と一致した場合の誤動作を回避することができる。
【0112】
(3−2)本実施例で記述したインデックスファイル300に備えられているフィールドは一例にすぎない。本発明において必須であるのは、更新通知部140の更新情報を格納する更新情報フィールドであり、それ以外のフィールドは追加や削除されていても本発明による効果は有効である。
【0113】
(3−3)本実施例では、記録媒体100に対するデータの読み書きを行う際に、実施例1で記述したデータの読み書きの手順を利用していないが、この手順を併用してもよい。これによりデータの読み書きにおけるエラー検出をより厳重に行うことが可能となる。
【0114】
(3−4)本実施例では、インデックスファイル300を新規作成する場合の動作シーケンス例を記述した。しかし、既にインデックスファイル300が存在し、記録領域130への更新内容をデータ処理部230が把握している場合には、全てを作り直す必要はない。従って、ステップS1001の処理がより簡略化できる可能性があるが、それ以降の処理は同じである。
【0115】
(3−5)本実施例では、ステップS1301の処理において無効を意味する値を0としたが、これに限定されるものではない。無効であることを意味する値であれば何でも良い。
【0116】
(3−6)コンテンツファイルやインデックスファイルの一部もしくは全体が暗号化されていても、本発明は有効である。
【0117】
(3−7)本実施例では、データ格納領域131のファイル内に更新情報フィールドを設け、更新通知部140の更新情報を格納したが、検索情報格納領域132に更新通知部140の値を格納するフィールドを備えても良い。すなわち、検索情報格納領域132は、データ格納領域の各データの記録アドレスなどに加え、各データを記録媒体100に記録した際の更新通知部140の更新情報を格納してもよい。
【0118】
(3−8)本実施例では、データ処理装置200はインデックスファイル300の内容を保証するために更新通知部140の更新情報を使用した。しかし、単に他のデータ処理装置が記録媒体100の記録領域130を更新したか否かを判別するために、更新通知部140の値を使用してもよい。
【0119】
例えば、実施例1に示したようなキャッシュ情報の有効性を判別するために、更新通知部140の更新情報を使用してもよい。書き込みが発生した場合には必ずキャッシュ情報を必ずクリアし、更新通知部140の値をインクリメントするためのコマンドを発行するものとすれば、実施例1と同様の効果が得られる。
【産業上の利用可能性】
【0120】
本発明の記録媒体、データ処理装置、及びデータ処理方法は、記録媒体への書き込みの直前に更新される更新通知部を設けているので、キャッシュ情報の有効性の確認、及びインデックスファイルの有効性の確認が必要な用途にも適用できる。

【特許請求の範囲】
【請求項1】
データを格納する不揮発性の記録領域と、
前記記録領域に対してデータの書き込み時又は消去時に更新情報が更新され、前記更新情報を保持する更新通知部と、
データ処理装置との通信を行うホストインターフェイス部と、
前記記録領域にデータを読み書きすると共に、前記ホストインターフェイス部を介して前記記録領域のデータ及び前記更新情報を前記データ処理装置に与える制御部と、を備え、
前記更新通知部の更新情報は前記データ処理装置から読み出し可能かつ書き込み不可とする記録媒体。
【請求項2】
請求項1記載の記録媒体であって、
前記更新通知部の更新情報は、前記記録領域のデータが更新される直前に更新される記録媒体。
【請求項3】
請求項1記載の記録媒体であって、
前記記録媒体毎に異なる媒体固有IDを備える記録媒体。
【請求項4】
請求項1記載の記録媒体であって、
前記記録領域を複数組有しており、前記更新通知部の更新情報は、前記複数組の記録領域のうちいずれかの組のデータが更新される直前に更新される記録媒体。
【請求項5】
請求項1記載の記録媒体であって、
前記記録領域とそれに対応した前記更新通知部の組を複数有しており、各々の前記更新通知部の更新情報は夫々に対応する前記記録領域のデータが更新される直前に更新される記録媒体。
【請求項6】
請求項5記載の記録媒体であって、
前記データ処理装置が任意に読み書き可能な記録領域とそれに対応する前記更新通知部の組と、特定の認証処理に成功したときにのみ読み書き可能な記録領域とそれに対応する前記更新通知部の組とを備える記録媒体。
【請求項7】
請求項1記載の記録媒体であって、
前記更新通知部の更新情報は前記ホスト機器から発行されたコマンドに対する応答値に挿入される記録媒体。
【請求項8】
請求項1記載の記録媒体であって、
前記更新通知部の更新情報は、前記記録媒体の初期化処理後、最初に前記記録領域のデータが更新される直前にのみ更新される記録媒体。
【請求項9】
請求項1記載の記録媒体であって、
前記更新通知部の更新情報は、前記記録媒体の初期化処理後、データ処理装置が指定する任意のタイミングで更新を行うことを可能とする記録媒体。
【請求項10】
請求項1記載の記録媒体であって、
前記更新通知部の更新情報は、前記記録領域がライトプロテクトを解除される度に更新される記録媒体。
【請求項11】
請求項1記載の記録媒体であって、
前記記録領域は、1つ以上のデータを格納するデータ格納領域と、前記データ格納領域に格納された各データをデータ処理装置が取り出す際に必要となる検索情報を格納する検索情報格納領域とを備え、
前記データ格納領域のうち少なくとも1つは前記更新通知部の更新情報を格納するフィールドを有する記録媒体。
【請求項12】
請求項1記載の記録媒体であって、
前記記録領域は、1つ以上のデータを格納するデータ格納領域と、前記データ格納領域に格納された各データをデータ処理装置が取り出す際に必要となる検索情報を格納する検索情報格納領域とを備え、
前記検索情報格納領域は前記データが更新された直後の前記更新通知部の更新情報を格納するフィールドを有する記録媒体。
【請求項13】
記録媒体が、データを格納する不揮発性の記録領域と、前記記録領域に対してデータの書き込み時又は消去時に更新情報が更新され、前記更新情報を保持する更新通知部と、データ処理装置との通信を行うホストインターフェイス部と、前記記録領域にデータを読み書きすると共に、前記ホストインターフェイス部を介して前記記録領域のデータ及び前記更新情報を前記データ処理装置に与える制御部と、を備える場合、
前記記録媒体を装着するスロットと、
前記スロットに装着された記録媒体との入出力処理を行う入出力処理部と、
前記入出力処理部を介して前記記録媒体のデータを読み出し一時記憶すると共に、前記記録媒体から読み出した前記更新通知部の更新情報に基づいてデータ処理を行うデータ処理部と、を具備するデータ処理装置。
【請求項14】
記録媒体が、データを格納する不揮発性の記録領域と、データの更新情報を保持する更新通知部と、前記記録領域にデータを読み書きすると共に、前記記録領域のデータ及び前記更新情報をデータ処理装置に与える制御部と、を備え、
前記データ処理装置が、前記記録媒体を装着するスロットと、前記スロットに装着された前記記録媒体のデータを読み出し一時記憶すると共に、前記記録媒体から読み出した前記更新通知部の更新情報に基づいてデータ処理を行うデータ処理部と、を備える場合のデータ処理方法であって、
前記更新通知部の更新情報は前記データ処理装置から読出し可能かつ書き込み不可とし、前記記録領域に対してデータの書き込み時又は消去時に前記制御部によって前記更新情報が更新されるデータ処理方法。
【請求項15】
請求項14記載のデータ処理方法であって、
前記記録媒体へのデータ処理を行った後に前記更新通知部の更新情報を読み出して前記データ処理部に格納し、
前記記録媒体へのデータ処理を開始する際には、前記記録媒体の前記更新通知部の更新情報を読み出し、前記データ処理部に格納した更新情報と一致するか否かを判別することにより、前記記録媒体中の前記記録領域のデータが更新されたか否かを判定するデータ処理方法。
【請求項16】
請求項14記載のデータ処理方法であって、
前記記録媒体へのライトプロテクトの設定を行った後に前記更新通知部の更新情報を読み出して前記データ処理部に格納し、
前記記録媒体へのデータ処理を開始する際には、前記記録媒体の前記更新通知部の更新情報を読み出し、前記データ処理部に格納した更新情報と一致するか否かを判別することにより、前記記録媒体に設定したライトプロテクトが解除された履歴があるか否かを判定するデータ処理方法。
【請求項17】
請求項14記載のデータ処理方法であって、
前記記録媒体から読み出した記録領域におけるフィールドの更新情報と、前記記録媒体から読み出した前記更新通知部の更新情報とが一致するか否かを判別することにより、前記データが記録された後に前記記録媒体中の前記記録領域のデータが更新されたか否かを判定するデータ処理方法。
【請求項18】
請求項14記載のデータ処理方法であって、
前記記録媒体にデータを書き込む際に、前記データ全体を書き込んだ後に前記更新通知部の更新情報を読み出し、前記更新通知部の更新情報を格納する記録領域におけるフィールドに、書き込みをした直後の更新情報を算出して記録することにより、前記フィールドの書き込み直後における前記フィールドの値と前記更新通知部の値とを一致させるデータ処理方法。
【請求項19】
請求項14記載のデータ処理方法であって、
前記記録媒体からのデータ読み出し前の前記更新通知部の更新情報と、データ読み出し後の前記更新通知部の更新情報とを比較し、一致するか否かを確認し、一致の場合は処理を継続し、不一致の場合はエラー処理又はリトライ処理をするデータ処理方法。
【請求項20】
請求項14記載のデータ処理方法であって、
前記記録媒体からのデータ書き込み前の前記更新通知部の更新情報と、データ書き込み後の前記更新通知部の更新情報とを比較し、一致するか否かを確認し、一致の場合はエラー処理又はリトライ処理をし、不一致の場合は処理を継続するデータ処理方法。

【図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

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【国際公開番号】WO2005/041050
【国際公開日】平成17年5月6日(2005.5.6)
【発行日】平成19年11月22日(2007.11.22)
【国際特許分類】
【出願番号】特願2005−514975(P2005−514975)
【国際出願番号】PCT/JP2004/015691
【国際出願日】平成16年10月22日(2004.10.22)
【出願人】(000005821)松下電器産業株式会社 (73,050)
【Fターム(参考)】