(57)【要約】【課題】ホストにマウント時のファイルシステム管理情報の整合性を簡単に確認することが可能な、記録媒体、記録媒体のホスト機器、データ処理方法を提供する。【解決手段】半導体記録媒体（１００）は、格納するコンテンツデータとファイルシステム管理情報の整合性の有無を示すオープンフラグ（３００）をホスト機器（２００）が直接アクセスできないシステム領域（１３９）に保持する。半導体記録媒体は、ホスト機器からデータ記録部への書込み要求又は消去要求を受信した時点でオープンフラグを自動的に「ＯＮ」（整合性がない可能性を示す値）に更新する。ホスト機器は実際の整合性が確認された時点でオープンフラグを「ＯＦＦ」（整合性があることを示す値）に設定するように記録媒体に要求する。また、ホスト機器はマウント時に専用コマンドによってオープンフラグを参照し、エラーチェック処理の要否を判定する。【選択図】図１
2005353046.tif 000002
【特許請求の範囲】
【請求項１】
データを格納し、ホスト機器からアクセス可能な記録媒体において、
種々のデータを格納するデータ記録部と、
前記ホスト機器との通信を行うホストインタフェース部と、
前記記録媒体の制御を行う制御部とを備え、
前記データ記録部は、コンテンツデータを格納するデータ領域と、前記コンテンツデータをホスト機器が取得する際に使用する管理情報を格納している検索情報格納領域とを有し、さらに、前記データ記録部は、前記データ領域に格納された情報と、前記検索情報格納領域に格納された情報との間で不整合の可能性があることを示すオープンフラグを格納し、
前記制御部は、前記データ記録部への書込み要求または消去要求を前記ホスト機器から受信したときに、前記オープンフラグの値を不整合の可能性があることを示す値に自動的に更新する
ことを特徴とする記録媒体。
【請求項２】
前記データ記録部はさらに前記ホスト機器から直接アクセスができない領域であるシステム領域を有し、該システム領域に前記オープンフラグが格納されることを特徴とする請求項１記載の記録媒体。
【請求項３】
前記オープンフラグの値をホスト機器が取得するための専用のコマンドを備えていることを特徴とする請求項１記載の記録媒体。
【請求項４】
前記制御部は初期化処理を実行した際に、初期化処理に対するレスポンス情報と共に前記オープンフラグの値を前記ホスト機器に通知することを特徴とする請求項１記載の記録媒体。
【請求項５】
前記ホスト機器から、前記オープンフラグの値を前記不整合が発生していないことを示す値に変更するように要求された場合に、前記制御部は、前記データ領域に格納された情報と前記検索情報格納領域に格納された情報の間で不整合が発生しているか否かのチェックを行い、前記チェックの結果が不整合を示す場合は、前記オープンフラグの値を前記不整合の可能性がないことを示す値に変更しないことを特徴とする請求項１記載の記録媒体。
【請求項６】
前記制御部は、前記検索情報格納領域を論理的に初期化する機能を備えており、前記論理的な初期化を実行した直後に、前記オープンフラグを、前記データ領域に格納された情報と前記検索情報格納領域に格納された情報の間で整合性が保たれていることを示す値に自動的に更新することを特徴とする請求項１記載の記録媒体。
【請求項７】
前記データ記録部のデータ領域は、複数の領域サイズの中の１つのサイズに選択的に設定可能であり、前記データ記録部は、データ領域の各サイズ毎に、検索情報格納領域と、データ領域と、オープンフラグとをセットにして管理し、さらに、選択中の１つのセットを示す情報を格納し、
前記制御部は、前記選択中の１つのセットを示す情報を参照し、選択中の１つのセットに関する検索情報格納領域とデータ領域とオープンフラグに対してアクセスを行うことを特徴とする請求項１記載の記録媒体。
【請求項８】
前記各セットの切替え処理時において、切替え処理前の前記データ領域及び前記検索情報格納領域が、切替え処理後の前記データ領域及び前記検索情報格納領域と重複しない場合は、各セットに含まれるオープンフラグの値を変更しないことを特徴とする請求項７記載の記録媒体。
【請求項９】
前記各セットの切替え処理が発生した場合において、切替え処理後の書込み処理要求もしくは消去処理要求を最初に受信した時に、各セットに含まれるオープンフラグの値を更新することを特徴とする請求項７記載の記録媒体。
【請求項１０】
前記データ記録部は不揮発性メモリによって構成されていることを特徴とする請求項１記載の記録媒体。
【請求項１１】
コンテンツデータを格納するデータ領域と、前記コンテンツデータを読み出す際に使用する管理情報を格納している検索情報格納領域とを有し、さらに、前記データ領域に格納された情報と、前記検索情報格納領域に格納された情報との間で不整合の可能性があることを示すオープンフラグを格納する記録媒体にアクセスするホスト機器であって、
前記記録媒体と情報の受け渡しを行うアクセス部と、前記ホスト機器の動作制御を行うデータ処理部とを備え、
前記データ処理部は、前記オープンフラグを参照し、該オープンフラグの値が前記不整合の可能性があることを示す場合は、前記記録媒体の前記データ領域に格納された情報と、前記検索情報格納領域に格納された情報との間で実際に不整合が発生しているか否かの確認処理を実行し、前記オープンフラグの値が前記不整合の可能性をあることを示さない場合は、前記確認処理を省略することを特徴とするホスト機器。
【請求項１２】
前記データ処理部は、前記確認処理を実行した結果、前記不整合が発生していないと判断した場合に、前記オープンフラグの値を前記不整合の可能性がないことを示す値に更新するための要求を前記記録媒体に発行することを特徴とする請求項１１記載のホスト機器。
【請求項１３】
コンテンツデータを格納するデータ領域と、前記コンテンツデータを読み出す際に使用する管理情報を格納している検索情報格納領域とを有し、さらに前記データ領域に格納された情報と、前記検索情報格納領域に格納された情報との間で不整合の可能性があることを示すオープンフラグを格納する記録媒体と、ホスト機器との間のデータ処理方法であって、
前記記録媒体において書込み処理または消去処理が発生した時に、前記記録媒体において自動的に前記オープンフラグを前記不整合の可能性があることを示す値に更新し、
前記書込み処理または消去処理完了後、前記記録媒体中の前記データ領域に格納された情報と前記検索情報格納領域に格納された情報の間で不整合が発生していない場合に限り、前記ホスト機器から前記記録媒体に対して、前記オープンフラグの値を前記不整合の可能性がないことを示す値に更新するための要求を送信する、ことを特徴とするデータ処理方法。
【請求項１４】
さらに、前記オープンフラグの値を参照し、前記記録媒体の前記データ領域に格納された情報と前記検索情報格納領域に格納された情報の間で不整合の可能性の有無を判断し、
その判断結果にしたがい、前記記録媒体の前記データ領域に格納された情報と前記検索情報格納領域に格納された情報の間で実際の不整合の有無を確認するための処理の実行の要否を判断する、ことを特徴とする請求項１３記載のデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録媒体、記録媒体にアクセスするホスト機器及び記録媒体とホスト機器間のデータ処理方法に関する。特に、本発明は、記録媒体が半導体記録媒体である場合における、ホスト機器が記録媒体をマウントする時のエラーチェック処理に関する。
【背景技術】
【０００２】
音楽コンテンツや動画コンテンツ、静止画コンテンツなどのディジタルデータを記録する記録媒体には、半導体記録媒体、磁気ディスク、光ディスク、光磁気ディスクなど、様々な種類が存在する。これらのうち、半導体記録媒体は小型化・軽量化が図れるという特徴があるために、ディジタルスチルカメラや携帯電話端末などの携帯機器を中心に近年急速に普及している。代表的な半導体記録媒体としては、ＳＤメモリーカード（登録商標）やメモリースティック（登録商標）、コンパクトフラッシュ（登録商標）などがある。これら半導体記録媒体の容量は年々、倍化する勢いで増加する傾向にある。
【０００３】
これら半導体記録媒体の記録領域に格納されているディジタルデータの管理はファイルシステムにより実現されている。ファイルシステムでは、記録領域を最小アクセス単位であるセクタ、及びセクタの集合であるクラスタに分割して管理し、１つ以上のクラスタをファイルとして管理する。
【０００４】
従来使用されているファイルシステムとして、ＦＡＴファイルシステムが一例に挙げられる（非特許文献１参照）。ＦＡＴファイルシステムはパーソナルコンピュータ（ＰＣ）などの情報機器で一般に用いられており、半導体記録媒体においても主流のファイルシステムである。ファイルシステムは一般的に、管理する記録領域の容量が増大すると、それに伴い管理に必要となる情報（以下、「ファイルシステム管理情報」と呼ぶ。）も増大する。
【０００５】
携帯機器などの半導体記録媒体のホスト機器は、半導体記録媒体が装着された際に、半導体記録媒体の記録領域に格納されたディジタルデータを処理するための前処理としてマウントを行う。マウント処理では、具体的には、ファイルシステム管理情報の読出し処理、読み出したファイルシステム管理情報の内容解析及びエラーチェック処理等を実施する。
【０００６】
そして、ファイルシステム管理情報に異常が発見された場合はホスト機器が適切なエラー処理や修復処理を実施する必要がある。さもなければ、ホスト機器によって前記半導体記録媒体に記録されているディジタルデータを修復不可能な状態で破壊するとか、前記ホスト機器で記録したはずのディジタルデータが他のホスト機器で正常に再生できない、といった致命的な障害が発生する可能性がある。従って、書込み処理を行うホスト機器にとって前記ファイルシステム管理情報のエラーチェックは不可欠な処理である。
【０００７】
しかしながら、大容量化に伴うファイルシステム管理情報の増大に伴い、ホスト機器におけるマウント時のエラーチェック処理にかかる時間は増大する。従って、ユーザは記録媒体を使用する前に常にある一定時間待たされることになるため、利便性が低下するという問題が発生する。
【０００８】
また、信頼性向上のためにエラーチェックの項目数の増加等を行った場合にも、この問題は発生する。
【０００９】
従来、この問題を解決する方法として、以下のような方法が提案されている（例えば、特許文献１参照）。
【００１０】
特許文献１では記録媒体の記録領域にホスト機器が半導体記録媒体を使用中であるか否かを表す「オープンフラグ」を設け、ホスト機器が一連の書込み処理を開始する際にそのオープンフラグをＯＮに設定し、一連の書込み処理が完了しファイルシステム管理情報として整合性の取れた状態になった時点でオープンフラグをＯＦＦに設定する。このように設定されるオープンフラグは半導体記録媒体に格納されたデータとファイルシステムとの整合性の有無を示す。
【００１１】
ホスト機器が半導体記録媒体をマウントする際にはオープンフラグを参照し、ＯＮであれば一連の書込み処理の途中で処理が中断されたと判断し、ＯＦＦであれば一連の書込み処理は正常に終了したと判断する。このように特許文献１は、オープンフラグを参照することで、ファイルシステム管理情報の修復の要否の判断を簡略化する方法を提供する。
【００１２】
【特許文献１】特開平５−１２０９２号公報
【非特許文献１】ＩＳＯ/ＩＥＣ９２９３、“Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ−Ｖｏｌｕｍｅ  ａｎｄ  ｆｉｌｅ  ｓｔｒｕｃｔｕｒｅ  ｏｆ  ｄｉｓｋ  ｃａｒｔｒｉｄｇｅｓ  ｆｏｒ  ｉｎｆｏｒｍａｔｉｏｎ”、１９９４年
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、上記の従来技術には次のような問題点がある。
【００１４】
すなわち、特許文献１では、オープンフラグはどのホスト機器も自由に読み書き可能な領域である記録領域に備えられているため、記録領域への書込みを行う全てのホスト機器がこのオープンフラグを正しく処理するという保証が必要である。そうでなければ、オープンフラグがＯＦＦであったとしてもファイルシステム管理情報が本当に整合性のとれた状態であるとは限らない。
【００１５】
より具体的には、特許文献１の記録媒体では、オープンフラグはホスト機器からの直接的な指示により更新される。つまり、オープンフラグは、ホスト機器からのコマンドや直接的な書き込みによりＯＮ／ＯＦＦされる。このため、オープンフラグを処理する機能がないホスト機器により、オープンフラグを有する半導体記録媒体に対してデータの記録等が行われ、異常終了した場合、データとファイルシステム間で整合性がとれていないにもかかわらず、オープンフラグはＯＦＦ（整合性ありを示す）となる。よって、その後、その記録媒体に対し、オープンフラグを処理可能なホスト機器が、そのオープンフラグを信じて処理を行うと、動作上の不具合が生じる場合がある。
【００１６】
このように、特許文献１の方法では、オープンフラグに非対応のホスト機器により、オープンフラグを有する記録媒体が一旦アクセスされると、オープンフラグの信頼性が損なわれる場合がある。よって、オープンフラグを処理する機能がない従来のホスト機器と、オープンフラグに対応した新しいホスト機器との間で、オープンフラグを有する半導体記録媒体を用いてデータの授受を行うことができないという問題がある。
【００１７】
本発明では上記問題点に鑑み、オープンフラグの処理機能が搭載されていない従来ホスト機器とのデータの授受が可能であり、かつマウント時のファイルシステム管理情報の整合性を簡単に確認することが可能な、記録媒体、記録媒体のホスト機器、データ処理方法を提供することを目的とする。
【課題を解決するための手段】
【００１８】
本発明に係る記録媒体は、データを格納し、ホスト機器からアクセス可能な記録媒体において、データを格納するデータ記録部と、ホスト機器との通信を行うホストインタフェース部と、記録媒体の制御を行う制御部とを備える。データ記録部は、コンテンツデータを格納するデータ領域と、コンテンツデータをホスト機器が取得する際に使用する管理情報を格納している検索情報格納領域とを有する。さらに、データ記録部は、データ領域に格納された情報と、検索情報格納領域に格納された情報との間で不整合の可能性があることを示すオープンフラグを格納する。制御部は、データ記録部への書込み要求または消去要求をホスト機器から受信したときに、オープンフラグの値を不整合の可能性があることを示す値に自動的に更新する。
【００１９】
本発明に係るホスト機器は、コンテンツデータを格納するデータ領域と、コンテンツデータを読み出す際に使用する管理情報を格納している検索情報格納領域とを有し、さらに、データ領域に格納された情報と、検索情報格納領域に格納された情報との間で不整合の可能性があることを示すオープンフラグを格納する記録媒体にアクセスする。ホスト機器は、記録媒体と情報の受け渡しを行うアクセス部と、ホスト機器の動作制御を行うデータ処理部とを備える。データ処理部は、オープンフラグを参照し、オープンフラグの値が不整合の可能性があることを示す場合は、記録媒体の前記データ領域に格納された情報と、検索情報格納領域に格納された情報との間で実際に不整合が発生しているか否かの確認処理を実行し、オープンフラグの値が不整合の可能性をあることを示さない場合は、確認処理を省略する。
【００２０】
本発明に係るデータ処理方法は、コンテンツデータを格納するデータ領域と、コンテンツデータを読み出す際に使用する管理情報を格納している検索情報格納領域とを有し、さらにデータ領域に格納された情報と、検索情報格納領域に格納された情報との間で不整合の可能性があることを示すオープンフラグを格納する記録媒体と、ホスト機器との間のデータ処理方法である。データ処理方法は、記録媒体において書込み処理または消去処理が発生した時に、記録媒体において自動的に前記オープンフラグを、不整合の可能性があることを示す値に更新し、書込み処理または消去処理完了後、記録媒体中のデータ領域に格納された情報と検索情報格納領域に格納された情報の間で不整合が発生していない場合に限り、ホスト機器から記録媒体に対して、オープンフラグの値を不整合の可能性がないことを示す値に更新するための要求を送信する。
【発明の効果】
【００２１】
本発明によれば、記録媒体のファイルシステム管理情報の整合性が確認されている状態において、マウント時におけるファイルシステム管理情報のエラーチェック処理を省略することが可能となり、かつ記録媒体を介して従来のホスト機器とのデータの授受が可能となる。このことは、今後、大容量化が見込まれている半導体記録媒体及びそのホスト機器にとって特に有効である。
【発明を実施するための最良の形態】
【００２２】
以下、添付の図面を参照して本発明に係る記録媒体、ホスト機器およびデータ処理方法の実施の形態を説明する。
【００２３】
第１の実施形態
以下、本発明の第１の実施形態を図面に基づいて詳細に説明する。
【００２４】
図１は、本発明の半導体記録媒体１００及び半導体記録媒体１００にアクセスするホスト機器２００の構成例を示す図である。
【００２５】
半導体記録媒体１００は、ホスト機器２００に対して脱着可能な記録媒体であって、ホストインタフェース部１１０、制御部１２０およびデータ記録部１３０から構成される。
【００２６】
ホストインタフェース部１１０は、半導体記録媒体１００のホスト機器２００と情報の受け渡しをする。
【００２７】
制御部１２０は、半導体記録媒体１００の内部制御を行い、コマンド処理部１２１と、論物変換制御部１２２と、記録領域アクセス部１２３とフラグ更新部１２５とを備えている。
【００２８】
コマンド処理部１２１は、ホストインタフェース部１１０で受信したホスト機器２００からのコマンドの解釈及び実行を行い、必要に応じてその結果をホストインタフェース部１１０経由でホスト機器２００に通知する。
【００２９】
論物変換制御部１２２は、ホスト機器２００がアクセスの際に指定するアドレスである論理アドレスからデータ記録部１３０に於ける物理的なアドレス（物理アドレス）への変換処理を行う。
【００３０】
記録領域アクセス部１２３は、論物変換制御部１２２によって算出された物理アドレスの情報に基づき、データ記録部１３０に格納されたディジタルデータにアクセスする。
【００３１】
フラグ更新部１２５はオープンフラグ３００（詳細は後述）の値の更新処理を行う。
【００３２】
データ記録部１３０は、ディジタルデータを格納する部分であり、物理的にはフラッシュメモリ等の不揮発性のメモリで構成されており、検索情報格納領域１３１と、データ領域１３２と、システム領域１３９とを備えている。
【００３３】
検索情報格納領域１３１及びデータ領域１３２はホスト機器２００から任意のディジタルデータの読み書きが可能な領域である。
【００３４】
データ領域１３２は任意のディジタルデータ（コンテンツデータ）を格納する領域である。
【００３５】
検索情報格納領域１３１は、データ領域１３２に格納されたディジタルデータ（コンテンツデータ）をホスト機器が取り出す際に必要となる管理情報（論理アドレスやサイズなど）を格納する領域である。本実施の形態では、データ領域１３２に格納されるディジタルデータはＦＡＴファイルシステムによって管理されるものとし、ＦＡＴファイルシステムにおいて必要となる情報（ファイルシステム管理情報）を検索情報格納領域１３１に格納する。
【００３６】
図２に、ＦＡＴファイルシステムを採用した場合の検索情報格納領域１３１およびデータ領域１３２の構成例を示す。図２において、検索情報格納領域１３１は、データ領域１３２を複数のパーティションと呼ばれる領域に分割して管理するための情報を格納するマスターブートレコード・パーティションテーブル、１つのパーティション内の管理情報を格納するパーティションブートセクタ、ファイルに含まれるデータの格納位置を示すＦＡＴテーブル１及びＦＡＴテーブル２、並びにルートディレクトリ直下に存在するファイル及びディレクトリの情報を格納するルートディレクトリエントリから構成される。また、データ領域１３２はクラスタと呼ばれる単位に分割されて管理される。
【００３７】
図１に戻り、システム領域１３９はホスト機器２００から直接的にアクセス不可能な領域であり、半導体記録媒体１００内からアクセス可能な領域であり、半導体記録媒体１００の内部レジスタ情報などを格納する領域である。システム領域１３９は、検索情報格納領域１３１に格納されたファイルシステム管理情報と、データ領域１３２に格納されたディジタルデータとの整合性がとれていない可能性の有無を示すオープンフラグ３００を備える。
【００３８】
オープンフラグ３００は、少なくとも「ＯＮ」及び「ＯＦＦ」の２つの値を有し、「ＯＮ」は実際に格納されているデータとファイルシステムの情報との間で整合性がとれていない可能性があることを示し、「ＯＦＦ」は整合性がとれていることを示す。
【００３９】
ホスト機器２００は、アクセス部２１０、フラグ処理部２２０およびデータ処理部２３０を備える。
【００４０】
アクセス部２１０は、ホスト機器２００に装着された半導体記録媒体１００に対して、コマンドやデータ等の情報の受け渡しを行う。
【００４１】
フラグ処理部２２０は、半導体記録媒体１００のオープンフラグ３００の値を制御する。具体的にはオープンフラグ３００の値の取得やオープンフラグ３００の値を「ＯＦＦ」にするタイミングの通知をアクセス部２１０経由にて行う。
【００４２】
データ処理部２３０は、半導体記録媒体１００に格納されたデータもしくはこれから格納するデータを処理する部分であり、ホスト機器２００の動作制御において中心的な処理を担う。
【００４３】
以下、半導体記録媒体１００及びホスト機器２００の各構成部の動作について図面を用いて説明する。
【００４４】
最初に、半導体記録媒体１００の全体動作シーケンスについて説明する。
【００４５】
図３は、半導体記録媒体１００がホスト機器２００に挿入された後の半導体記録媒体１００の動作概要を示すフローチャートである。
【００４６】
半導体記録媒体１００は、ホスト機器２００からの電源供給開始後、ホスト機器２００のアクセス部２１０経由で発行される初期化処理要求に対して、半導体記録媒体１００内部の初期化処理を実行する（Ｓ３０１）。その後、ホスト機器２００からのコマンド待ち状態となる。
【００４７】
ホスト機器２００からコマンドが発行された場合、ホストインタフェース部１１０はコマンドを受信し（Ｓ３０２）、制御部１２０に通知する。
【００４８】
制御部１２０のコマンド処理部１２１は受信したコマンドを解釈し、オープンフラグ３００の値の取得を要求するコマンドであれば（Ｓ３０３でＹＥＳ）、ステップＳ３０４の処理に進む。それ以外のコマンドであれば（Ｓ３０３でＮＯ）、ステップＳ３０５の処理に進む。
【００４９】
ステップＳ３０４では、コマンド処理部１２１は記録領域アクセス部１２３経由でデータ記録部１３０に格納されているオープンフラグ３００の値を取得し、取得した値をホストインタフェース部１１０経由でホスト機器２００に通知する（Ｓ３０４）。その後、次のコマンド待ち状態となる。
【００５０】
ステップＳ３０５では、制御部１２０のコマンド処理部１２１は受信したコマンドを解釈し、オープンフラグ３００を「ＯＦＦ」に更新することを要求するコマンドであるならば（Ｓ３０５でＹＥＳ）、ステップＳ３０６の処理に進む。それ以外のコマンドであれば（Ｓ３０５でＮＯ）、ステップＳ３０７の処理に進む。
【００５１】
ステップＳ３０６では、フラグ更新部１２５により、記録領域アクセス部１２３経由でデータ記録部１３０に格納されているオープンフラグ３００の値を「ＯＦＦ」に設定し（Ｓ３０６）、必要に応じてホスト機器２００へのレスポンス処理を実行した後、次のコマンド待ち状態となる。
【００５２】
ステップＳ３０７では、制御部１２０のコマンド処理部１２１は受信したコマンドを解釈し、そのコマンドが、検索情報格納領域１３１及びデータ領域１３２に格納されたディジタルデータを更新するためのコマンド（すなわち書込み処理要求や消去処理要求など）である場合（Ｓ３０７で）、ステップＳ３０８の処理に進む。それ以外であるならばステップＳ３１０の処理に進む。
【００５３】
ステップＳ３０８では、コマンド処理部１２１は記録領域アクセス部１２３経由でデータ記録部１３０に格納されているオープンフラグ３００の値を参照し、「ＯＦＦ」（整合性あり）ならばステップＳ３０９の処理に、「ＯＮ」（整合性なし）ならばＳ３１０の処理に進む。
【００５４】
ステップＳ３０９では、フラグ更新部１２５は記録領域アクセス部１２３経由でデータ記録部１３０に格納されているオープンフラグ３００の値を「ＯＮ」に更新する。このように、本実施形態のオープンフラグは、半導体記録媒体１００内の制御部１２０により「ＯＮ」に更新される。
【００５５】
ステップＳ３１０では、制御部１２０は受信したコマンドの内容に応じた処理を実行する。例えば書込み処理要求である場合には、論物変換制御部１２２がホスト機器２００により指定された論理アドレスを物理アドレスに変換し、物理アドレスを利用して記録領域アクセス部１２３経由でデータ記録部１３０への書込みを実行する。また、読出し処理要求である場合には、論物変換制御部１２２がホスト機器２００により指定された論理アドレスを物理アドレスに変換し、記録領域アクセス部１２３経由でデータ記録部１３０に格納されたディジタルデータを読み出してホストインタフェース部１１０経由でホストに送信する。
【００５６】
コマンドの内容に応じた処理を実行した後、必要に応じてホスト機器２００に対するレスポンスをホストインタフェース部１１０経由で送信する。処理完了後、ステップＳ３０２に戻り、次のコマンド待ち状態となる。
【００５７】
次に、半導体記録媒体１００が装着されたときのホスト機器２００のマウント処理完了までのシーケンスについて説明する。
【００５８】
図４は、半導体記録媒体１００が装着されたホスト機器２００の動作シーケンス例を示すフローチャートである。
【００５９】
ホスト機器２００はアクセス部２１０経由で半導体記録媒体１００に対して初期化処理を要求する（Ｓ４０１）。半導体記録媒体１００の初期化処理終了後、ホスト機器２００は半導体記録媒体１００に対してオープンフラグ３００の値の取得要求を行う（Ｓ４０２）。本実施形態においては、フラグ処理部２２０がアクセス部２１０経由でオープンフラグ３００の値の取得のための専用コマンドを発行する。
【００６０】
取得したオープンフラグ３００の値を判断し（Ｓ４０３）、その値が「ＯＮ」ならば、ホスト機器２００は検索情報格納領域１３１に格納されているファイルシステム管理情報とデータ領域１３２に格納されているデータとの整合性がとれていない可能性があると判断し、整合性確認のためのエラーチェック処理を含むマウント処理を実行する（Ｓ４０４）。
【００６１】
ステップＳ４０４におけるエラーチェック処理によりエラーが検出され、かつ、ファイルシステム管理情報の修復が必要と判断される場合にはステップＳ４０７へ進む。修復の必要がない場合には処理を完了する。
【００６２】
ステップＳ４０７において、ホスト機器２００がファイルシステム管理情報の修復手段を備えている場合は、Ｓ４０８の処理に進む。備えていない場合には異常終了とし、以降は適切なエラー処理を行う。例えば、動作を停止したり、読出しアクセスに限定したりする処置をとるものとする。
【００６３】
ステップＳ４０８において、ファイルシステム管理情報の修復完了した時点で、フラグ処理部２２０はアクセス部２１０経由でオープンフラグ３００を「ＯＦＦ」に更新するコマンドを発行する。その後、必要であればマウント処理を再実行し、処理を完了する。
【００６４】
一方、ステップＳ４０３において、取得したオープンフラグ３００の値が「ＯＦＦ」ならば、ホスト機器２００は検索情報格納領域１３１に格納されているファイルシステム管理情報とデータ領域１３２に格納されているデータとの整合性がとれていると判断し、整合性確認のためのエラーチェック処理を行わずにマウント処理を実行し（Ｓ４０５）、処理を完了する。
【００６５】
特許文献１の記録媒体では、オープンフラグはホスト機器により直接的に更新されていたため、オープンフラグを処理できないホスト機器によって処理された場合にオープンフラグの信頼性が損なわれ、その後、そのフラグの値を信じて処理したホスト機器において動作上の不具合が生じる可能性があるという問題があった。これに対し、本実施形態の半導体記録媒体１００は、ホスト機器２００から書き込みコマンドまたは消去コマンドを受信したときに、半導体記録媒体１００自身が自動的にオープンフラグをＯＮに設定する（Ｓ３０９）。このため、オープンフラグを処理できないホスト機器によって記録媒体が処理された場合でも、半導体記録媒体１００自身によりオープンフラグが必ずＯＮに設定される。一方、本実施形態のホスト機器は、データ記録、消去時に半導体記録媒体１００のオープンフラグをまずチェックし、オープンフラグがＯＮのときは整合性チェック処理を実行する（Ｓ４０３〜Ｓ４０５）。よって、本実施形態によれば、オープンフラグを処理できないホスト機器により記録媒体が処理された場合であっても、オープンフラグの信頼性が担保され、その後に、その記録媒体をオープンフラグに対応したホスト機器により処理する場合において、オープンフラグに基づいて整合性チェック処理が確実になされる。このため、特許文献１で考え得るような不具合を防止できる。
【００６６】
次に、ホスト機器２００が半導体記録媒体１００への一連の書込み処理を実行した後の後処理のシーケンスについて説明する。
【００６７】
ここで「一連の処理」とは、「ファイルオープンからファイルクローズまで」とか「マウントからアンマウントまで」といった処理単位を表しており、「一連の書込み処理」が完了した時点において、処理中にエラーが発生していなければ、検索情報格納領域１３１に格納されているファイルシステム管理情報とデータ領域１３２に格納されているデータは整合性がとれた状態になっているとする。
【００６８】
図５は、後処理におけるホスト機器２００の動作シーケンス例を示すフローチャートである。
【００６９】
一連の処理が終了後、検索情報格納領域１３１に格納されているファイルシステム管理情報とデータ領域１３２に格納されているデータとの整合性を確認し（Ｓ５０１）、整合性がとれている場合、ホスト機器２００のフラグ処理部２２０は、アクセス部２１０経由で半導体記録媒体１００に対して、オープンフラグ３００の値を「ＯＦＦ」に設定するように要求する（Ｓ５０２）。本実施形態においては専用のコマンドを発行することによって実現する。半導体記録媒体１００の制御部２１０はこの要求を受けて、オープンフラグ３００を「ＯＦＦ」に設定する。
【００７０】
一方、一連の処理中にエラーが発生した場合などで、整合性がとれていない可能性がある場合には（Ｓ５０１でＮＯ）、異常終了とし、以降は適切なエラー処理を行う。
【００７１】
図６は一連の書込み処理の実行後における、半導体記録媒体１００のオープンフラグ３００の状態を示している。図６に示すように、本発明によるホスト機器２００の場合には正常終了時にオープンフラグ３００は「ＯＦＦ」に設定される。書込みエラーや電源断などによる異常終了時は「ＯＮ」に設定されることになる。これに対して、従来のホスト機器はオープンフラグ３００を「ＯＦＦ」に設定する手段を知らないため、書込み処理後は常に「ＯＮ」となる。
【００７２】
すなわち、一連の処理がエラーなく終了していれば、本後処理においてオープンフラグ３００が「ＯＦＦ」に戻される。オープンフラグに対応していない従来のホスト機器により半導体記録媒体１００に書き込み、削除の処理がなされた場合は、この後処理は実行されないため、オープンフラグ３００が「ＯＮ」のままであり、その後に、オープンフラグ対応のホスト機器がその半導体記録媒体１００に最初にアクセスするときに、オープンフラグ３００を参照することで、その半導体記録媒体１００の整合性が取れていない可能性があることを認識できる。一方、オープンフラグ３００が「ＯＦＦ」であれば、検索情報格納領域１３１に格納されているファイルシステム管理情報とデータ領域１３２に格納されているデータとの整合性は担保される。
【００７３】
以上のように、本発明による半導体記録媒体１００は、ホスト機器２００が直接アクセスできない領域にオープンフラグ３００を備えており、ホスト機器２００からの検索情報格納領域１３１及びデータ領域１３２に格納されたデータを更新するコマンド（すなわち書込み処理要求や消去処理要求など）を受信した際には、半導体記録媒体１００自身が自動的にオープンフラグ３００を「ＯＮ」に設定する。
【００７４】
また、本発明によるホスト機器２００は、半導体記録媒体１００の検索情報格納領域１３１に格納されているファイルシステム管理情報と、データ領域１３２に格納されているデータとの整合性がとれている場合に限り、半導体記録媒体１００に対してオープンフラグ３００を「ＯＦＦ」に設定するように要求する。
【００７５】
これにより、オープンフラグ３００が「ＯＦＦ」の場合のオープンフラグ３００の信頼性が担保されるため、ホスト機器２００は半導体記録媒体１００のマウント処理時にオープンフラグ３００を参照することでエラーチェック処理を省略できるか否かを事前に判定することが可能となる。本発明はエラーチェック処理にかかる時間が増大すればするほど、その効果は絶大である。従って、特に大容量化が進む半導体記録媒体において有効である。
【００７６】
第２の実施形態
以下、本発明の第２の実施の形態を詳細に説明する。
【００７７】
図７は、第２の実施の形態における半導体記録媒体５００及び半導体記録媒体５００にアクセスするホスト機器６００の構成例を示す図である。図８は半導体記録媒体５００のデータ記録部５３０の構成例を示す図である。
【００７８】
本実施形態の半導体記録媒体５００における第１の実施の形態との違いは以下の点である。
【００７９】
本実施形態の半導体記録媒体５００のデータ記録部５３０は図８に示すように３通りのデータ領域を持ち、選択的にいずれか１つの領域に設定可能である。このため、データ記録部５３０は、検索領域情報格納領域と、データ領域と、オープンフラグとのセットを複数格納する。これらのセットはホスト機器からのコマンドにて切り替えられて使用されるものであり、いずれか１つのセットのみが有効となる。このため、データ記録部５３０はシステム領域５３９において、現在有効になっているセットに関する情報を格納する選択セット格納部８００を備える。
【００８０】
また、ホスト機器について第１の実施形態１との違いは、本実施形態のホスト機器６００は、半導体記録媒体５００に複数存在する各セットの切替えを指示するセット切替え指示部６４０を備えている点である。つまり、本実施形態においては、半導体記録媒体５００はセットを３つ備えており、ホスト機器６００はこれらを切り替えて使用することが可能である。以下に各セットを説明する。
【００８１】
セット１：第１の検索情報格納領域５３１、第１のデータ領域５３２、第１のオープンフラグ７０１により構成される。ホスト機器６００は第１の検索情報格納領域５３１及び第１のデータ領域５３２のみにアクセス可能である。
【００８２】
セット２：第２の検索情報格納領域５３３、第２のデータ領域５３４、第２のオープンフラグ７０２により構成される。ホスト機器６００は、第２の検索情報格納領域５３３及び第２のデータ領域５３４のみにアクセス可能である。また、第２の検索情報格納領域５３３及び第２のデータ領域５３４と、第１の検索情報格納領域５３１及び第１のデータ領域５３２とは、選択的にいずれかが有効にされる。
【００８３】
セット３：第３の検索情報格納領域５３５、第３のデータ領域５３６、第３のオープンフラグ７０３により構成される。ホスト機器６００は第３の検索情報格納領域５３５及び第３のデータ領域５３６のみにアクセス可能である。第３の検索情報格納領域５３５及び第３のデータ領域５３６の領域は、第１の検索情報格納領域５３１及び第１のデータ領域５３２と第２の検索情報格納領域５３３及び第２のデータ領域５３４とを合わせた領域に等しい。
【００８４】
以下、半導体記録媒体５００及びホスト機器６００の動作について図面を用いて説明する。
【００８５】
図９は、半導体記録媒体５００がホスト機器６００に挿入された後の半導体記録媒体５００の動作概要を示すフローチャートである。
【００８６】
半導体記録媒体５００は、ホスト機器６００からの電源供給開始後、ホスト機器６００のアクセス部６１０経由で発行される初期化処理要求に対して、半導体記録媒体５００内部の初期化処理を実行する（Ｓ９０１）。このとき、制御部５２０は選択セット格納部８００に格納された値を参照し、「セット１」、「セット２」、「セット３」のいずれで使用するかを決定する。本実施形態においては、選択セット格納部８００には、前回使用したセットの情報が格納されているものとする。なお、初期化処理時には常に特定のセットが有効になる仕様であってもよい。
【００８７】
初期化処理後はホスト機器６００からのコマンド待ち状態となる。ホスト機器６００からコマンドが発行されると、ホストインタフェース部５１０はコマンドを受信し（Ｓ９０２）、制御部５２０に通知する。
【００８８】
制御部５２０のコマンド処理部５２１は受信した前記コマンドを解釈し、オープンフラグの値の取得を要求するコマンドであるならば（Ｓ９０３でＹＥＳ）、ステップＳ９０４の処理に進む。それ以外であるならばステップＳ９０５の処理に進む。
【００８９】
ステップＳ９０４において、コマンド処理部５２１は記録領域アクセス部５２３経由でデータ記録部５３０に格納されている３つのオープンフラグ７０１、７０２、７０３のうち、選択セット格納部８００で選択されているセットに対応するものの値を取得する。そして、取得した値をホストインタフェース部１１０経由でホスト機器６００に通知した後、次のコマンド待ち状態となる。
【００９０】
ステップＳ９０５において、制御部５２０のコマンド処理部５２１は受信したコマンドを解釈し、そのコマンドがオープンフラグを「ＯＦＦ」に更新することを要求するコマンドであるならば、ステップＳ９０６の処理に進む。それ以外であるならばステップＳ９０７の処理に進む。
【００９１】
ステップＳ９０６において、フラグ更新部５２５は記録領域アクセス部５２３経由でデータ記録部５３０に格納されている３つのオープンフラグ７０１、７０２、７０３のうち選択セット格納部８００で選択されているセットに対応するものの値を「ＯＦＦ」に設定し、必要に応じてホスト機器６００へのレスポンス処理を実行した後、次のコマンド待ち状態となる。
【００９２】
ステップＳ９０７において、制御部５２０のコマンド処理部５２１は受信したコマンドを解釈し、そのコマンドがホスト機器６００がセットを切り替えることを要求するコマンドであるならば、ステップＳ９０８の処理に進む。それ以外であるならばステップＳ９０９の処理に進む。
【００９３】
ステップＳ９０８において、フラグ更新部５２５は切替えの前後のセットに応じてオープンフラグの値を更新する。具体的には、フラグ更新部５２５は図１０に示すようなオープンフラグ更新表を有しており、そのオープンフラグ更新表を参照して３つのオープンフラグの更新を行う。例えば図１０の（ａ）に示すようにセット１からセット２への切替えであった場合には、オープンフラグ７０１、７０２の値は変更せず、オープンフラグ７０３のみ「ＯＮ」へと変更する。
【００９４】
その後、コマンド処理部５２１は選択セット格納部８００に切替え後のセットの情報を格納する。その後、必要に応じてホスト機器６００へのレスポンス処理を実行した後、次のコマンド待ち状態となる。
【００９５】
ステップＳ９０９において、制御部５２０のコマンド処理部５２１は受信したコマンドを解釈し、そのコマンドが検索情報格納領域及びデータ領域に格納されたデータを更新するコマンド（すなわち、書込み処理要求や消去処理要求など）である場合、ステップＳ９１０の処理に進む。それ以外であるならばステップＳ９１２の処理に進む。
【００９６】
ステップＳ９１０において、コマンド処理部５２１は記録領域アクセス部５２３経由でデータ記録部５３０に格納されている３つのオープンフラグ７０１、７０２、７０３のうち選択セット格納部８００で選択されているセットに対応するものの値を参照し、「ＯＦＦ」ならばステップＳ９１１の処理に進み、「ＯＮ」ならばステップＳ９１２の処理に進む。
【００９７】
ステップＳ９１１において、フラグ更新部５２５は記録領域アクセス部５２３経由でデータ記録部５３０に格納されている３つのオープンフラグ７０１、７０２、７０３のうち選択セット格納部８００で選択されている状態に対応するものの値を「ＯＮ」に更新する。
【００９８】
ステップＳ９１２において、制御部５２０は受信したコマンドの内容に応じた処理を実行する。例えば書込み処理要求である場合には、論物変換制御部５２２がホスト機器６００により指定された論理アドレスを物理アドレスに変換し、物理アドレスを利用して記録領域アクセス部５２３経由でデータ記録部５３０への書込みを実行する。また、例えば読出し処理要求である場合には、論物変換制御部５２２がホスト機器６００により指定された論理アドレスを物理アドレスに変換し、記録領域アクセス部５２３経由でデータ記録部５３０に格納されたディジタルデータを読み出してホストインタフェース部５１０経由でホストに送信する。
【００９９】
なお、論物変換制御部５２２は、現在選択されているセットに関する情報を記録領域アクセス部５２３経由で選択セット格納部８００から取得することで、適切なアクセス制御を実施することができる。
【０１００】
コマンドの内容に応じた処理を実行した後、必要に応じてホスト機器６００に対するレスポンスをホストインタフェース部５１０経由で送信する。処理完了後はステップＳ９０２に戻り、次のコマンド待ち状態となる。
【０１０１】
ところで、オープンフラグ更新表は次のような規則によって作成されている。
【０１０２】
セット１とセット２ではホスト機器６００からアクセスする領域が重複しないため、一方のセットにおける書込み処理・消去処理による影響が他方のセットに及ばない。従って、切替え処理の前後でオープンフラグを更新する必要がないため「そのまま」とする。
【０１０３】
セット１とセット３、セット２とセット３ではホスト機器６００からアクセスできる領域が重複しているため、一方のセットにおける書込み処理・消去処理による影響が他方のセットに及ぶ。従って、切替え処理の前後でオープンフラグを「ＯＮ」にする。
【０１０４】
次にホスト機器６００側の処理シーケンスについて述べる。
【０１０５】
半導体記録媒体５００が装着されたときのホスト機器６００のマウント処理完了までのシーケンスは、第１の実施形態における図４で示した動作シーケンスと全く同様である。
【０１０６】
また、ホスト機器６００が半導体記録媒体５００への一連の書込み処理を実行した後の後処理のシーケンスは、第１の実施形態における図５で示した動作シーケンスと全く同様である。
【０１０７】
以上のように、本発明による半導体記録媒体５００は、検索情報格納領域、データ領域、オープンフラグのセット（組み合わせ）を３種類有し、それらを切り替えて使用することが可能である。そして、ホスト機器６００からの検索情報格納領域及びデータ領域に格納されたデータを更新するコマンド（すなわち、書込み処理要求や消去処理要求など）を受信した際には現在選択されているセットに対応するオープンフラグを自動的に「ＯＮ」に設定する。また、ホスト機器に対して現在選択されているセットに対応するオープンフラグの値を通知する機能を備えている。
【０１０８】
また、本発明によるホスト機器６００は半導体記録媒体５００の現在選択されているセットにおいて、検索情報格納領域に格納されているファイルシステム管理情報とデータ領域に格納されているディジタルデータとの整合性がとれている場合に限り、前記半導体記録媒体５００に対してオープンフラグを「ＯＦＦ」に設定するように要求する。
【０１０９】
そのため、ホスト機器６００は、半導体記録媒体５００のマウント処理時に現在選択されているセットのオープンフラグを参照することで、エラーチェック処理を省略できるか否かを簡単に判定することが可能となる。本発明はエラーチェック処理にかかる時間が増大すればするほど、その効果は絶大である。従って、特に大容量化が進む半導体記録媒体において有効である。
【０１１０】
上記の各実施形態において以下のような変形例も考えられる。
【０１１１】
（１）各実施形態において、半導体記録媒体について記述したが、ハードディスク等のコントローラ内蔵の記録媒体に対しても、本発明の上記思想を適用できる。
【０１１２】
（２）各実施形態においては、検索情報格納領域１３１においてＦＡＴファイルシステムを用いたが、ＦＡＴ３２やＵＤＦなどの他のファイルシステムを利用してもよい。または、検索情報格納領域１３１においてファイルシステムを使わずに論理容量や記録アドレス等を管理してもよい。
【０１１３】
（３）各実施形態においては、半導体記録媒体１００がホスト機器２００に対して、オープンフラグ３００の値を読み出すための専用コマンドを提供する例を示したが、この専用コマンドは必ずしも必要ではない。例えば、他のコマンドのレスポンス情報の一部としてオープンフラグ３００の値を通知してもよい。この場合、ホスト機器２００がオープンフラグ３００の値を参照するのはマウント処理前であることが多いため、初期化処理時のコマンドに対するレスポンス情報に追加すると効果的である。
【０１１４】
（４）各実施形態においては、ホスト機器２００が半導体記録媒体１００のオープンフラグ３００を「ＯＦＦ」に更新する要求を発行するタイミングを、「一連の書込み処理」が完了した時点としたが、検索情報格納領域１３１に格納されているファイルシステム管理情報とデータ領域１３２に格納されているデータとの整合性がとれた状態であればいつ発行してもよい。
【０１１５】
（５）半導体記録媒体１００がフォーマット（論理的な初期化）処理を実行する機能をそなえている場合、フォーマット処理の直後に、オープンフラグ（第２の実施形態の場合は、フォーマット対象のセットに対応するフラグ）を自動的に「ＯＦＦ」に設定してもよい。
【０１１６】
（６）ホスト機器が半導体記録媒体のオープンフラグの値を「ＯＦＦ」に設定する要求を行った際に、半導体記録媒体の制御部においても、検索情報格納領域１３１（第２の実施形態の場合、現在選択されているもの）に格納されているファイルシステム管理情報と、データ領域（第２の実施形態の場合、現在選択されているもの）に格納されているデータとの整合性チェックを行い、不整合であるならばオープンフラグの値を「ＯＦＦ」設定を行わないようにしてもよい。このとき、ホスト機器と半導体記録媒体の両方で整合性チェックを行うことになるため整合性チェックの精度向上や処理負荷の分散といった効果が期待できる。
【０１１７】
（７）第２の実施形態において、半導体記録媒体は３つのセットを有するものとしたが、２つ以上のセットであればいくつであってもよい。
【０１１８】
（８）第２の実施形態において、領域切替えコマンドを受信した時にフラグ更新部５２５がオープンフラグ更新表を参照して、各オープンフラグの値を更新するものとしたが（Ｓ９０８）、領域切替えコマンドの直後でなくともよい。例えば、領域切替え処理後に最初に書込み処理要求もしくは消去処理要求を受信したタイミングで更新してもよい。
【産業上の利用可能性】
【０１１９】
本発明にかかる半導体記録媒体、半導体記録媒体のホスト機器、データ処理方法は、ファイルシステムによってディジタルデータの管理を行うコントローラ内蔵の記録媒体等として有用であり、特に半導体記録媒体に適している。
【図面の簡単な説明】
【０１２０】
【図１】本発明の第１の実施形態に於ける半導体記録媒体及びホスト機器の構成例を示した図である。
【図２】本発明の第１の実施形態に於ける情報検索格納領域及びデータ領域の構成例を示した図である。
【図３】本発明の第１の実施形態に於ける半導体記録媒体の動作の一例を示したフローチャートである。
【図４】本発明の第１の実施形態に於けるホスト機器での半導体記録媒体の初期化からマウント処理までの動作の一例を示したフローチャートである。
【図５】本発明の第１の実施形態に於けるホスト機器での一連の書込み処理終了後の後処理の一例を示したフローチャートである。
【図６】本発明の第１の実施形態に於ける一連の書込み処理後のオープンフラグの状態例を示す図である。
【図７】本発明の第２の実施形態に於ける半導体記録媒体及びホスト機器の構成例を示した図である。
【図８】本発明の第２の実施形態に於けるデータ記録部の構成例を示した図である。
【図９】本発明の第２の実施形態に於ける半導体記録媒体の全体動作の一例を示したフローチャートである。
【図１０】本発明の第２の実施形態に於けるオープンフラグ遷移表の一例を示した図である。
【符号の説明】
【０１２１】
１００  半導体記録媒体
１１０  ホストインタフェース部
１２０  制御部
１３０  データ記録部
１２１  コマンド処理部
１２２  論物変換制御部
１２３  記録領域アクセス部
１２５  フラグ更新部
１３１  検索情報格納領域
１３２  データ領域
１３９  システム領域
２００  ホスト機器
２１０  アクセス部
２２０  フラグ処理部
２３０  データ処理部
３００  オープンフラグ
【図１】
2005353046.tif 000003
【図２】
2005353046.tif 000004
【図３】
2005353046.tif 000005
【図４】
2005353046.tif 000006
【図５】
2005353046.tif 000007
【図６】
2005353046.tif 000008
【図７】
2005353046.tif 000009
【図８】
2005353046.tif 000010
【図９】
2005353046.tif 000011
【図１０】
2005353046.tif 000012