(57)【要約】  【課題】  ホストから記録デバイスへの書き込み速度の低下を抑えつつ、電源障害により書き込み異常が発生した場合においても、ホストが正常にファイルを読み出せるようにファイルを修復することのできる、ファイル修復方法、およびファイル記録装置を提供する。  【解決手段】  記録デバイスは、電源復旧時において、不揮発性メモリに書き込みデータのアドレス情報が保持されているかを確認することにより、書き込み異常の有無を判断し、書き込み異常が発生した場合、ホストに対して書き込み異常の発生を通知し（ステップ２０３、２０４、２０５）、ホストは、記録デバイスから書き込み異常発生の通知をうけると、記録デバイスから前記アドレス情報を読み出し、ファイルの修復処理を行う（ステップ２０６、２０７、２０８）。  【選択図】  図２
2005242708.tif 000002
【特許請求の範囲】
【請求項１】
キャッシュ機能を有する記録デバイスに記録されたファイルを修復するファイル修復方法であって、
前記記録デバイスは、該記録デバイスのキャッシュに保持されている書き込みデータの書き込み先のアドレス情報を、該記録デバイスが有する不揮発性メモリに、保持してから書き込みを行い、該書き込みが正常に終了した場合は、前記アドレス情報を前記不揮発性メモリからクリアし、該書き込みが電源障害により不正に終了した場合は、電源復旧後に前記不揮発性メモリに保持されているアドレス情報をもとに、前記書き込みが完了していないことを認識し、その旨をホストに通知し、
前記ホストは、前記通知により、前記記録デバイスに対する前記書き込みが完了していないことを認識し、前記記録デバイスの不揮発性メモリから前記アドレス情報を読み出して、書き込みが完了していないデータ、または書き込みが完了していないデータを含む情報から構成されるファイルを修復する、
ことを特徴とするファイル修復方法。
【請求項２】
請求項１に記載のファイル修復方法において、
前記記録デバイスは、前記ホストからの指示により、前記記録デバイスのキャッシュに保持されている特定の書き込み先アドレスへの書き込みデータを、対応する書き込み先の前記アドレス情報とともに、前記不揮発性メモリに保持し、
前記ホストは、前記記録デバイスの不揮発性メモリから前記アドレス情報と、前記特定の書き込みデータとを読み出してファイルを修復する、
ことを特徴とするファイル修復方法。
【請求項３】
請求項１又は請求項２に記載のファイル修復方法において、
前記記録デバイスに記録されたファイルは、複数に分割して記録された実データと、ファイル名、及び前記複数の実データのうちの先頭の実データの、前記記録デバイスにおける記録位置情報を含むファイル情報と、前記複数の実データの順序を特定するためのテーブル情報とから構成される、
ことを特徴とするファイル修復方法。
【請求項４】
請求項１乃至請求項３のいずれかに記載のファイル修復方法において、
前記記録デバイスに記録されるファイルは、映像または音声データを含んでいる、
ことを特徴とするファイル修復方法。
【請求項５】
請求項１乃至請求項４のいずれかに記載のファイル修復方法において、
前記記録デバイスは、前記アドレス情報を、前記不揮発性メモリの複数の領域に重複に格納する、
ことを特徴とするファイル修復方法。
【請求項６】
請求項１乃至請求項５のいずれかに記載のファイル修復方法において、
前記不揮発性メモリに保持されている前記アドレス情報は、前記記録デバイスのキャッシュに保持されている書き込みデータのデータ数を含んでいる、
ことを特徴とするファイル修復方法。
【請求項７】
請求項１乃至請求項６のいずれかに記載のファイル修復方法において、
前記ホストは、前記書き込みが完了していないデータ、または前記書き込みが完了していないデータを含む情報を、前記記録デバイスに記録されていたファイルから削除する、
ことを特徴とするファイル修復方法。
【請求項８】
キャッシュ機能を有する記録デバイスと、該記録デバイスへファイルの記録を行うホストとから構成されるファイル記録装置において、
前記記録デバイスは、
該記録デバイスのキャッシュに保持されている書き込みデータの書き込み先のアドレス情報を保持する不揮発性メモリと、
電源障害復旧後に前記不揮発性メモリに保持されている前記アドレス情報をもとに、電源障害時に前記記録デバイスへの書き込みにエラーが発生したことを認識し、前記ホストに対しその旨を通知する書き込みエラー通知手段と、を備え、
前記ホストは、
前記記録デバイスからの書き込みエラー発生の通知により、前記記録デバイスに対し書き込みエラーが発生したことを認識する書き込みエラー認識手段と、
書き込みエラー認識後に、前記記録デバイスから前記アドレス情報を読み出して、書き込みエラーが発生したデータ、または書き込みエラーが発生したデータを含む情報から構成されるファイルを修復するファイル修復手段と、を備えた、
ことを特徴とするファイル記録装置。
【請求項９】
請求項８に記載のファイル記録装置において、
前記ホストは、映像音声信号を符号化して圧縮する映像音声符号化手段を有し、圧縮された映像音声データをファイルとして記録する、
ことを特徴とするファイル記録装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイル修復方法、およびファイル記録装置に関し、特にキャッシュ機能を有する記録デバイスへのファイル記録途中、電源障害発生により書き込み異常が発生した場合の、異常のあるファイルを修復する修復方法、及びファイルの修復を行うファイル記録装置に関するものである。
【背景技術】
【０００２】
従来から、パソコン等のコンピュータシステムにおいて、情報を記録するための記録デバイスとして、半導体メモリ、磁気ディスク、光磁気ディスク、光ディスク等の記録媒体を有する記録デバイスが広く利用されている。
【０００３】
これら記録デバイスは、ホストから送出された書き込みデータをキャッシュと呼ばれる揮発性メモリに一時的に格納することにより、ホストと記録デバイス間にて行われる書き込みコマンド処理を高速化している。ホストは、ホストから記録デバイスへの書き込みコマンド処理が完了すると、書き込みデータが記録デバイスに記録されたと認識するが、ホストから記録デバイスに送られた書き込みデータは、記録デバイス内のキャッシュに一時的に格納されており、記録デバイス内の記録媒体への書き込みが完了しているとは限らない。このため、記録デバイス内のキャッシュに一時的に格納された書き込みデータは、記録デバイス内の記録媒体への書き込みが終了する前に電源障害等が発生すると消失してしまうにもかかわらず、ホストは正常に書き込み終了していると認識し、実際は書き込み異常が発生しており、記録デバイスに正常に書き込みが終了していないという問題がある。
【０００４】
この問題を解決するために、従来の記録デバイスでは、キャッシュ部に不揮発性メモリを備え、この不揮発性メモリに書き込みデータ、データブロックの先頭番地、データブロック数等、記録媒体へのデータ書き込みに必要な情報を格納する。記録デバイスは、不揮発性メモリに格納される情報より書き込み中の異常の有無を判断し、書き込み異常があったと判断した場合、不揮発性メモリに格納されている情報より記録デバイス内の記録媒体への書き込みを行い、記録デバイス自身がデータの修復処理を行っていた（例えば、特許文献１参照。）。
【０００５】
更に、電源障害発生時における不揮発性メモリのデータ更新を確実に行い、書き込み異常の有無の判断精度を高めるため、記録デバイスの備える不揮発性メモリに対して、バッテリによるバックアップ機能を備えたものもある（例えば、特許文献２参照。）。
【特許文献１】特開平４−２７３５１６号公報
【特許文献２】特開２０００−１４８４１１号公報（請求項５、段落〔０００１〕）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、前記従来の構成では、電源障害発生時等の書き込み異常に対して、記録デバイス自身がデータの修復処理を行うため、記録デバイスは、ホストからの全ての書き込みデータを不揮発性メモリに格納する必要があり、キャッシュに使用されている揮発メモリと同程度の容量の不揮発性メモリを備えなければならない。このため、記録デバイスのキャッシュに使用されている揮発性メモリと同等のアクセス速度を有する不揮発性メモリを使用した場合、記録デバイスのコストが大きくなってしまう、という課題を有していた。
【０００７】
また、コストを抑えるために、記録デバイスのキャッシュに使用されている揮発性メモリと比較してアクセス速度の遅い不揮発性メモリを使用した場合、ホストから記録デバイスへの書き込み処理速度が遅くなってしまう、という課題を有していた。
【０００８】
また、前記特許文献１の構成では、記録デバイスの記録媒体への書き込み終了後、記録デバイスが不揮発性メモリに格納されている情報を更新している最中に電源障害が発生した場合、不揮発性メモリに格納されている情報が破壊されてしまい、記録デバイス自身がデータの修復処理を正確に行うことができない可能性がある。このため、記録デバイスにデータをファイルとして記録している場合、記録デバイスにより修復ができなかったデータ、またはこのデータを含む情報から構成されるファイルを、ホストが記録デバイスから読み出す場合、読み出しエラーが発生しうる、という課題を有していた。また、映像または音声等のデータをファイルとして記録デバイスに記録している際に、電源障害等の書き込み異常が発生し、記録デバイス自身によるデータの修復処理が完全にできなかった場合、記録デバイスが修復できなかったデータ、または情報を含むファイルを、ホストは正常に読み出すことができず、書き込み異常が発生する以前に記録デバイスの記録媒体に既に記録されていた映像または音声等のデータについても、再生することができない可能性がある、という課題を有していた。
【０００９】
また、前記特許文献２では、記録デバイスの記録媒体への書き込み終了後、記録デバイスが不揮発性メモリに格納されている情報を更新している最中に電源障害が発生した際に、不揮発性メモリに格納されている情報が破壊されるのを防ぐため、記録デバイスの備える不揮発性メモリに対して、バッテリによるバックアップ機能を備える構成としたが、記録デバイスのコスト、及び体積が大きくなってしまう、という課題を有していた。
【００１０】
本発明は、上記のような従来の課題を解決するためになされたもので、ホストから記録デバイスへの書き込み処理速度の低下、及び記録デバイスまたは記録装置のコストの上昇を抑えながら、電源障害発生等により生じた書き込み異常のあるファイルを修復することのできる、ファイル修復方法、及びそれを用いてファイルの修復を行うファイル記録装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記従来の課題を解決するために、本発明にかかるファイル修復方法は、キャッシュ機能を有する記録デバイスに記録されたファイルを修復するファイル修復方法であって、前記記録デバイスは、該記録デバイスのキャッシュに保持されている書き込みデータの書き込み先のアドレス情報を、該記録デバイスが有する不揮発性メモリに、保持してから書き込みを行い、該書き込みが正常に終了した場合は、前記アドレス情報を前記不揮発性メモリからクリアし、該書き込みが電源障害により不正に終了した場合は、電源復旧後に前記不揮発性メモリに保持されているアドレス情報をもとに、前記書き込みが完了していないことを認識し、その旨をホストに通知し、前記ホストは、前記通知により、前記記録デバイスに対する前記書き込みが完了していないことを認識し、前記記録デバイスの不揮発性メモリから前記アドレス情報を読み出して、書き込みが完了していないデータ、または書き込みが完了していないデータを含む情報から構成されるファイルを修復することを特徴とするものである。
【００１２】
これにより、ホストは、記録デバイスの通知により書き込み異常を認知し、かつ記録デバイスでの書き込み異常が発生した書き込み先のアドレス情報を得ることが可能となり、該アドレス情報をもとに、ファイルの修復処理を行うことができるため、電源障害による書き込み異常発生前までに記録デバイスに既に書き込まれたデータを常に読み出すことができる。また、記録デバイスは、書き込みデータを不揮発性メモリ部に保持しないため、ホストから記録デバイスへの書き込み処理速度の低下を抑え、さらに、キャッシュに使用されている揮発性メモリ部と比較して容量が小さくて済むためコストを抑えることもできる。
【００１３】
また、本発明にかかるファイル修復方法は、前記記録デバイスは、前記ホストからの指示により、前記記録デバイスのキャッシュに保持されている特定の書き込み先アドレスへの書き込みデータを、対応する書き込み先の前記アドレス情報とともに、前記不揮発性メモリに保持し、前記ホストは、前記記録デバイスの不揮発性メモリから前記アドレス情報と、前記特定の書き込みデータとを読み出してファイルを修復することを特徴とするものである。
【００１４】
これにより、特に記録デバイスに記録されているファイルのファイル構成を示す情報に書き込み異常が発生した場合のファイルの修復処理において、記録デバイスに記録されている全ファイルに関するファイル構成を示す情報を、記録デバイスから読み出して整合性の確認を行う必要がなくなり、修復処理をより高速に行うことができる。
【００１５】
また、本発明にかかるファイル修復方法は、前記記録デバイスに記録されたファイルは、複数に分割して記録された実データと、ファイル名、及び前記複数の実データのうちの先頭の実データの、前記記録デバイスにおける記録位置情報を含むファイル情報と、前記複数の実データの順序を特定するためのテーブル情報とから構成されることを特徴とするものである。
【００１６】
これにより、読み出した不揮発メモリに保持されているアドレス情報をもとに、書き込み異常が発生したデータが、記録デバイスに記録されたファイルを構成するどのような種類のデータかを把握することが可能となり、その種類に応じた、書き込み異常のあるデータの更新や、削除などといったファイルの修復処理を行うことができる。
【００１７】
また、本発明にかかるファイル修復方法は、前記記録デバイスに記録されるファイルは、映像または音声データを含んでいることを特徴とするものである。
【００１８】
これにより、映像または音声等のデータをファイルとして記録デバイスに記録する場合、書き込み異常が発生する以前に、既に記録デバイスに記録されている映像または音声等のデータを再生することができる。
【００１９】
また、本発明にかかるファイル修復方法は、前記記録デバイスは、前記アドレス情報を、前記不揮発性メモリの複数の領域に重複に格納することを特徴とするものである。
【００２０】
これにより、不揮発性メモリ部のアドレス情報を更新する際に、電源障害が発生しアドレス情報が破損した場合において、不揮発性メモリ部のもう一方のアドレス情報より、破損したアドレス情報を修復することができる。
【００２１】
また、本発明にかかるファイル修復方法は、前記不揮発性メモリに保持されている前記アドレス情報は、前記記録デバイスのキャッシュに保持されている書き込みデータのデータ数を含んでいることを特徴とするものである。
【００２２】
これにより、書き込み異常が発生したデータが、ファイルのどの部分に対応するものかを正確に把握することが可能となり、書き込み異常のあるデータの更新や削除などといったファイルの修復処理を、正確に行うことができる。
【００２３】
また、本発明にかかるファイル修復方法は、前記ホストは、前記書き込みが完了していないデータ、または前記書き込みが完了していないデータを含む情報を、前記記録デバイスに記録されていたファイルから削除することを特徴とするものである。
【００２４】
これにより、不具合のデータをファイルから取り除くことができ、ファイルは、全部、正常なデータにより構成されることになるため、ホストにより正常に読み出されることができる。
【００２５】
また、本発明にかかるファイル記録装置は、キャッシュ機能を有する記録デバイスと、該記録デバイスへファイルの記録を行うホストとから構成されるファイル記録装置であって、前記記録デバイスは、該記録デバイスのキャッシュに保持されている書き込みデータの書き込み先のアドレス情報を保持する不揮発性メモリと、電源障害復旧後に前記不揮発性メモリに保持されている前記アドレス情報をもとに、電源障害時に前記記録デバイスへの書き込みにエラーが発生したことを認識し、前記ホストに対しその旨を通知する書き込みエラー通知手段とを備え、前記ホストは、前記記録デバイスからの書き込みエラー発生の通知により、前記記録デバイスに対し書き込みエラーが発生したことを認識する書き込みエラー認識手段と、書き込みエラー認識後に、前記記録デバイスから前記アドレス情報を読み出して、書き込みエラーが発生したデータ、または書き込みエラーが発生したデータを含む情報から構成されるファイルを修復するファイル修復手段とを備えたことを特徴とするものである。
【００２６】
これにより、ホストは、記録デバイスの通知により書き込み異常を認知し、かつ記録デバイスでの書き込み異常が発生した書き込み先のアドレス情報を得ることが可能となり、該アドレス情報をもとに、記録デバイスに記録されていたファイルの修復処理を行うことが可能となるので、電源障害による書き込み異常発生前までに記録デバイスに既に書き込まれたデータを常に読み出すことができる。また、記録デバイスは、書き込みデータを不揮発性メモリ部に保持しないため、ホストから記録デバイスへの書き込み処理速度の低下を抑え、さらに、キャッシュに使用されている揮発性メモリ部と比較して容量が小さくて済み、高性能のものを使用してもなおコストを抑えることができる。
【００２７】
また、本発明にかかるファイル記録装置は、前記ホストは、映像音声信号を符号化して圧縮する映像音声符号化手段を有し、圧縮された映像音声データをファイルとして記録することを特徴とするものである。
【００２８】
これにより、映像または音声等のデータをファイルとして記録デバイスに記録する場合、書き込み異常が発生する以前に、記録デバイスに既に記録されている映像または音声等のデータを再生することができる。
【発明の効果】
【００２９】
本発明にかかるファイル修復方法、およびファイル記録装置によれば、記録デバイスは、電源復旧時において、不揮発性メモリに書き込みデータのアドレス情報が保持されているか否かを確認することにより、書き込み異常の有無を判断し、書き込み異常が発生した場合、ホストに対して書き込み異常の発生を通知し、ホストは、記録デバイスから書き込み異常発生の通知をうけると、記録デバイスから前記アドレス情報を読み出し、該アドレス情報が示すエラーデータの種類に応じたファイルの修復処理を行うことにより、ホストから記録デバイスへの書き込み処理速度の低下を、更に記録デバイスのコストの上昇を抑えながら、ファイルを常に正常に読み出すことができるようにファイルの修復を行うことができる。特に、電源障害による書き込み異常発生前までに記録デバイスの記録媒体に既に書き込まれたデータを、ホストから読み出せるようにファイルを修復することができるという効果がある。
【発明を実施するための最良の形態】
【００３０】
以下、本発明にかかるファイル修復方法、およびファイル記録装置の実施の形態を、図面とともに詳細に説明する。
【００３１】
なお、以下のファイル記録装置を構成する各部材は、ハードウェア的には、ＣＰＵ、メモリ、その他ＬＳＩや組合せ回路などによって実現でき、ソフトウェア的には、メモリにロードされたプログラムによって実現できるが、これらの機能がハードウェアのみ、ソフトウェアのみ、又はその組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【００３２】
（実施の形態１）
次に、本発明の実施の形態１によるファイル修復方法、およびファイル記録装置を、図１から図６を用いて説明する。
【００３３】
図１は、本発明の実施の形態１における、記録デバイスへのデータ記録時の動作を示したフローチャートである。図２は、本発明の実施の形態１によるファイル修復方法を示すフローチャートである。図３は、本発明の実施の形態１によるファイル記録装置である、映像音声記録再生装置の構成を示すブロック図である。
【００３４】
図３において、本発明の実施の形態１によるファイル記録装置としての、映像音声記録再生装置３０００は、記録デバイス３１０と、該記録デバイス３１０に映像音声データをファイルとして記録（書き込み）し、および再生（読み出し）するホスト３０１とからなり、ホスト３０１には、入力されるアナログ映像音声をデジタルに変換するＡＤＣ３０２と、デジタルに変換された映像音声データを符号化して圧縮する符号化処理部３０３と、ホスト３０１を構成する各部を制御するホスト制御部３０４と、符号化処理部３０３で符号化された映像音声データや、記録デバイス３１０から読み出された映像音声データを格納するホスト制御部３０４の作業用メモリ部３０５と、ホスト３０１から記録デバイス３１０にアクセスするための記録デバイスアクセス部３０６と、符号化された映像音声データを復号化して伸張する復号化処理部３０７と、デジタル映像音声データを映像音声記録再生装置３０００の外へ出力するためにアナログ映像音声に変換するＤＡＣ３０８と、ユーザから記録または再生等の指示をホスト制御部３０４へ通知するユーザＩＦ部３０９とを備えている。
【００３５】
また、ホスト３０１からの映像音声データを記録しておく記録デバイス３１０は、該記録デバイス３１０を構成する各部を制御する記録デバイス制御部３１１と、キャッシュとして使用する揮発性メモリ部３１２と、記録媒体３１５への書き込みデータの書き込み先のアドレス情報等を保持する不揮発性メモリ部３１３と、映像音声データを格納する記録媒体３１５と、該記録媒体３１５への映像音声データの書き込み、読み出しを制御する記録媒体アクセス部３１４とを備え、セクタ単位でデータの書き込み、読み出しを行う。
【００３６】
以下、上記のように構成された本実施の形態１による映像音声記録再生装置３０００におけるファイル修復方法について説明する。
【００３７】
ここではまず、映像音声記録再生装置３０００において、映像音声データをファイルとして記録するためのファイルシステムについて説明する。
【００３８】
映像音声記録再生装置３０００は、映像音声データを記録デバイス３１０の連続領域に記録するのではなく、映像音声データをファイルの最小記録単位であるクラスタ単位に分割して記録デバイス３１０に記録し、ファイル名や、ファイルのデータ数、および分割された複数の映像音声データのうち、記録デバイス３１０の先頭データのクラスタ番号の情報を含むディレクトリエントリと、分割された複数の映像音声データの順序を特定するＦＡＴ（File Allocation Table）とにより、記録デバイス３１０に記録された映像音声データをファイルとして管理するファイルシステムを用いている。尚、１クラスタは、連続する複数のセクタから構成される。また、記録デバイス３１０に記録されたデータをファイルとして管理するのは、記録デバイス３１０へデータをセクタ単位で書き込むホスト３０１であり、記録デバイス３１０は、記録媒体３１５に対して、ホスト３０１からの命令により、指定された書き込み先のアドレスに書き込みデータを書き込むだけである。
【００３９】
図４は、上記映像音声記録再生装置３０００の用いている、ＦＡＴファイルシステムの構成を示す図である。図４に示すように、記録デバイス３１０、具体的には記録デバイス３１０内の記録媒体３１５に記録されたファイルは、記録されたファイルのファイル名や、ファイルサイズ、および分割されたデータの先頭クラスタ番号等の情報を示すディレクトリエントリ４０１と、ファイルの記録最小単位であり、ファイルの実データである映像音声データを格納するクラスタ４０３と、ファイルを構成するクラスタ４０３の接続情報を示すＦＡＴ４０２とがある。図４の例では、ディレクトリエントリ４０１は、この記録デバイス３１０に、Ｄａｔａ１というファイルが、クラスタ番号０００２から格納されていることを示し、ＦＡＴ４０２は、ファイルＤａｔａ１のデータが、クラスタ番号０００２、クラスタ番号０００３、クラスタ番号０００４の順で構成されていることを示し、Ｄａｔａ１の実データは、クラスタ４０３のクラスタ番号０００２、クラスタ番号０００３、クラスタ番号０００４の領域に記録されていることを示している。また、Ｄａｔａ２というファイルは、クラスタ番号０００６のみの領域に記録されていることを示している。
【００４０】
記録デバイス３１０にファイルとしてデータを記録する場合、ホスト３０１は、ファイルのオープン処理として、ファイル名と、先頭クラスタ番号を、ディレクトリエントリ４０１に登録し、ファイルの実データの記録処理として、ＦＡＴ４０２でクラスタ４０３の接続情報を更新しながら、クラスタ４０３の各エリアに実データを記録し、最後にファイルのクローズ処理として、ディレクトリエントリ４０１のファイルのファイルサイズ等を示すデータを更新し、ファイルの記録を終了する。記録デバイス３１０からファイルを削除する場合、ホスト３０１は、ディレクトリエントリ４０１から削除するファイルに相当する部分を、未使用設定（Ｕｎｕｓｅｄ）にし、ＦＡＴ４０２の接続情報を、接続順に未使用設定にする。
【００４１】
なお、ＦＡＴファイルシステムにおいて、ＦＡＴ４０２は、同サイズのテーブルが２つ準備されており、仮に１つのテーブルのデータが破損した場合でも、もう１つのテーブルからデータをコピーすることにより、破損したテーブルのデータを復元できるようになっている。
【００４２】
次に、上記映像音声記録再生装置３０００において、図４に示したファイルシステムを用いて、映像音声データをファイルとして記録、再生する動作について説明する。
【００４３】
ユーザからの映像音声の記録要求が、ユーザＩＦ部３０９を介してホスト制御部３０４へ送られると、ホスト制御部３０４は、ファイルのオープン処理として、記録デバイスアクセス部３０６を介し記録デバイス３１０に対して、ファイル名と、ファイルの先頭クラスタ番号、ファイルサイズを示すディレクトリエントリ４０１のデータの書き込みを行う。
【００４４】
記録デバイス３１０に対してディレクトリエントリ４０１のデータの書き込みが正常に完了した場合、ホスト制御部３０４は、符号化処理部３０３に対して、ＡＤＣ３０２から入力される映像音声データの符号化処理を行うよう指示を出す。符号化処理部３０３は、符号化された映像音声データを、随時、作業用メモリ部３０５に格納していく。
【００４５】
作業用メモリ部３０５に符号化された映像音声データが、任意データ量格納されると、ホスト制御部３０４は、ファイルの実データの記録処理として、記録デバイスアクセス部３０６を介し記録デバイス３１０に対して、映像音声データが記録されるクラスタ４０３の接続情報を示すファイルＦＡＴ４０２のデータを書き込み、次に作業用メモリ部３０５に格納されている任意データ量の符号化された映像音声データを、クラスタ４０３の各エリアに書き込む。このファイルの実データの書き込み処理は、作業用メモリ部３０５に符号化された映像音声データが、任意データ量格納される毎に行われ、映像音声の記録停止の要求が入るまで継続される。
【００４６】
ユーザからの映像音声の記録停止要求が、ユーザＩＦ部３０９を介してホスト制御部３０４へ送られると、ホスト制御部３０４は、ファイルのクローズ処理として、記録デバイスアクセス部３０６を介して記録デバイス３１０に対して、先に書き込んだディレクトリエントリ４０１のファイルのファイルサイズ等を示すデータを更新するために、再度ディレクトリエントリ４０１のデータの書き込みを行い、符号化された映像音声データを含むファイルの記録を終了する。
【００４７】
なお、記録デバイス３１０のデータ記録動作の詳細については、別途説明する。
また、ユーザからの映像音声の再生要求が、ユーザＩＦ部３０９を介してホスト制御部３０４へ送られると、ホスト制御部３０４は、記録デバイスアクセス部３０６を介して記録デバイス３１０に対して、再生要求があったファイルに対応するディレクトリエントリ４０１のデータと、ファイルＦＡＴ４０２のデータとを読み出す。次に、ホスト制御部３０４は、作業用メモリ３０５に任意の空き容量がある場合、記録デバイスアクセス部３０６を介して記録デバイス３１０に対して、読み出したＦＡＴ４０２に示されているクラスタ４０３の接続情報に従い、クラスタ４０３の各エリアから符号化された映像音声データを、任意データ量読み出し、作業用メモリ部３０５に格納する。このクラスタ４０３の各エリアからの符号化された映像音声データの読み出し処理は、作業用メモリ部３０５に任意の空き容量が確保される毎に行われる。
【００４８】
記録デバイス３１０から読み出され、作業用メモリ部３０５に符号化された映像音声データが任意量格納された場合、ホスト制御部３０４は、復号化処理部３０７に対して、出力する映像音声データの復号化処理を行うよう指示を出す。復号化処理部３０７は、復号化処理を開始すると、随時、符号化された映像音声データを作業用メモリ部３０５から読み出し、復号処理を行ってＤＡＣ３０８に出力し、ＤＡＣ３０８は復号化された映像音声データをアナログ音声に変換してから外部に出力する。
【００４９】
ユーザからの映像音声の再生停止要求が、ユーザＩＦ部３０９を介してホスト制御部３０４へ送られるか、または再生要求があったファイルを最後まで読み出すまで、映像音声データの再生は、継続される。
【００５０】
次に、本発明の実施の形態１によるファイル記録装置としての映像音声記録再生装置において、記録デバイス３１０へのデータ記録動作を、図１のフローチャートを参照しながら詳細に説明する。
【００５１】
ステップ１０１において、ホスト３０１は、記録デバイス３１０のステータスの確認を行い、記録デバイス３１０が命令受付可能である場合、記録デバイス３１０へライト命令を実行し、データの書き込み先アドレス情報であるＬＢＡ（Logical Block Address）と、書き込みを行うデータのセクタ数などの書き込みパラメータ、及び書き込みデータを転送する。
【００５２】
次にステップ１０２において、記録デバイス３１０は、記録デバイス制御部３１１を介して、ホスト３０１から転送された書き込みパラメータ、及び書き込みデータを、キャッシュとして使用している揮発性メモリ部３１２に格納する。
【００５３】
次にステップ１０３において、記録デバイス３１０は、記録デバイス制御部３１１により、揮発性メモリ部３１２に格納されている書き込みパラメータ、及び書き込みデータから、記録媒体３１５の連続した領域への書き込みデータに関するアドレス情報を作成し、不揮発性メモリ部３１３に格納する。
【００５４】
図５は、不揮発性メモリ部３１３に格納されるアドレス情報の構造を示す図である。
図５に示すように、不揮発性メモリ部３１３に格納される上記アドレス情報は、アドレス情報領域と、アドレス情報バックアップ領域との２つの領域に、同内容のアドレス情報が格納される。このため、記録デバイス制御部３１１により、不揮発性メモリ部３１３のアドレス情報を更新する際に、電源障害が発生しアドレス情報が破損した場合において、不揮発性メモリ部３１３のもう一方のアドレス情報より、破損したアドレス情報を修復することができる。不揮発性メモリ部３１３に格納される各アドレス情報は、アドレス情報の開始を示すスタートコードを含むヘッダ情報、連続した書き込みデータに関する記録媒体３１５への書き込み先のＬＢＡ情報、及び連続したデータのセクタ数から構成される。
【００５５】
次にステップ１０４において、記録デバイス３１０は、記録デバイス制御部３１１により、ホスト３０１からのステータス確認に対し、ライト命令実行終了を通知する。これにより、ホスト３０１は、記録デバイス３１０へのライト命令が正常に完了したと認識する。
【００５６】
次にステップ１０５において、記録デバイス３１０は、記録デバイス制御部３１１により、揮発性メモリ部３１２に格納されている書き込みデータを、記録媒体アクセス部３１４を介して、記録媒体３１５の指定ＬＢＡに書き込みを行う。
【００５７】
次にステップ１０６において、記録デバイス３１０は、記録デバイス制御部３１１により、記録媒体アクセス部３１４を介して、記録媒体３１５への書き込みが終了した書き込みデータに関するアドレス情報を、不揮発性メモリ部３１３からクリアし、不揮発性メモリ部３１３に格納されているアドレス情報の更新を行う。
【００５８】
これをもって、記録デバイス３１０は、ホスト３０１からの書き込みデータの記録動作を終了する。
【００５９】
次に、上記映像音声記録再生装置において、電源障害により記録デバイス３１０に書き込み異常が発生した際の、電源復旧後のファイルの修復方法を、図２のフローチャートを参照しながら説明する。
【００６０】
ステップ２０１において、ホスト３０１は、記録デバイス３１０に対し、ハードウェアまたはソフトウェアリセット、記録デバイス３１０による自己診断を要求するDEVICE  DIAGNOSTIC命令、記録デバイス３１０の状態通知を要求するDEVICE  IDENTIFY命令などを発行し、記録デバイス３１０の初期化処理を実行する。
【００６１】
次にステップ２０２において、記録デバイス３１０は、ホスト３０１からの要求により初期化処理を行う。
【００６２】
次にステップ２０３において、記録デバイス３１０は、記録デバイス制御部３１１により、初期化処理として、不揮発性メモリ部３１３に、図５に示すアドレス情報が格納されているか否かの確認を行う。
【００６３】
次にステップ２０４において、記録デバイス３１０は、記録デバイス制御部３１１により、不揮発性メモリ部３１３にアドレス情報が確認されなかった場合、書き込み異常は無かったと判断し、記録デバイス３１０の初期化処理、およびファイルの修復処理を終了する。不揮発性メモリ部３１３にアドレス情報が確認された場合、ステップ２０５に進む。
ステップ２０５において、記録デバイス３１０は、記録デバイス制御部３１１により、書き込み異常が発生したことをホスト３０１に通知し、初期化処理を終了する。
【００６４】
次にステップ２０６において、ホスト３０１は、書き込み異常が発生したアドレス情報を得るため、記録デバイス３１０に対しアドレス情報読み出し命令を実行する。
【００６５】
次にステップ２０７において、記録デバイス３１０は、記録デバイス制御部３１１により、不揮発性メモリ部３１３に格納されているアドレス情報をホスト３０１へ転送し、アドレス情報読み出し命令処理を終了する。
【００６６】
次にステップ２０８において、ホスト３０１は、記録デバイス３１０の不揮発性メモリ部３１３から読み出したアドレス情報が示す異常のあるデータ、またはこの異常のあるデータを含む情報から構成される、記録デバイス３１０内の記録媒体３１５に記録されているファイルの修復を行う。尚、ホスト３０１によるファイルの修復方法の詳細については、別途説明する。
【００６７】
次にステップ２０９において、ホスト３０１は、アドレス情報が示す記録デバイス３１０に記録されている異常のある全てのファイルの修復を終了すると、アドレス情報をクリアするため、記録デバイス３１０に対しアドレス情報クリア命令を実行する。
【００６８】
次にステップ２１０において、記録デバイス３１０は、記録デバイス制御部３１１により、不揮発性メモリ部３１３に格納されているアドレス情報を削除し、アドレス情報クリア命令処理を終了する。
【００６９】
次に、上記ステップ２０８における、ホスト３０１による異常のあるファイルの修復方法の詳細について、図６のフローチャートを参照しながら説明する。
【００７０】
図４に示したＦＡＴファイルシステムの構成からも分かるように、記録デバイス３１０に、具体的には記録デバイス３１０内の記録媒体３１５に記録されているファイルは、ディレクトリエントリ４０１と、クラスタ４０３に格納されるファイルの実データと、クラスタ４０３の接続情報を示すＦＡＴ４０２とから構成されている。このため、上記ステップ２０７において、ホスト３０１が読み出したアドレス情報が示す、書き込み異常が発生したデータは必ず、ディレクトリエントリ４０１か、またはＦＡＴ４０２、またはクラスタ４０３に格納されるファイルの実データのいずれかである。
【００７１】
ステップ６０１において、ホスト３０１は、記録デバイス３１０の不揮発性メモリ部３１３から読み出したアドレス情報に含まれるＬＢＡが示す異常のあるデータが、クラスタ４０３に格納されるファイルの実データなのかどうかを、記録デバイス３１０内の記録媒体３１５に記録されているディレクトリエントリ４０１と、ＦＡＴ４０２のデータを読み出して、確認を行う。このアドレス情報に含まれるＬＢＡが示す異常のあるデータが、クラスタ４０３に格納されるファイルの実データの場合、ステップ６０２に進み、実データではない場合、ステップ６０４に進む。
【００７２】
ステップ６０２において、ホスト３０１は、このアドレス情報に含まれるＬＢＡが示す異常のあるデータが格納されるクラスタ４０３をファイルから削除し、正常に書き込みが完了しているクラスタ４０３によりファイルを構成するように、記録媒体３１５に記録されているＦＡＴ４０２の更新を行う。
【００７３】
ステップ６０３において、ホスト３０１は、ステップ６０２で更新したＦＡＴ４０２より、ＦＡＴ４０２が示すファイルのファイルサイズの確認を行い、確認したファイルサイズになるよう記録媒体３１５に記録されているディレクトリエントリ４０１の更新を行い、ファイルの修復処理を終了する。
【００７４】
次にステップ６０４において、ホスト３０１は、記録デバイス３１０の不揮発性メモリ部３１３から読み出したアドレス情報に含まれるＬＢＡが示す異常のあるデータが、ＦＡＴ４０２のデータなのかどうかについて、このアドレス情報に含まれるＬＢＡにより確認を行う。このアドレス情報に含まれるＬＢＡが示す異常のあるデータが、ＦＡＴ４０２のデータの場合、ステップ６０５に進み、ＦＡＴ４０２のデータではない場合、ステップ６０７に進む。
【００７５】
ステップ６０５において、ホスト３０１は、このアドレス情報に含まれるＬＢＡが示すＦＡＴ４０２のデータを、２つのテーブルから構成されるＦＡＴ４０２のもう一方のテーブルからコピーすることにより、記録媒体３１５に記録されているＦＡＴ４０２の修復を行う。
【００７６】
ステップ６０６において、ホスト３０１は、ステップ６０５で修復したＦＡＴ４０２より、ＦＡＴ４０２が示すファイルのファイルサイズの確認を行い、確認したファイルサイズになるよう記録媒体３１５に記録されているディレクトリエントリ４０１の更新を行い、ファイルの修復処理を終了する。
【００７７】
次にステップ６０７において、ホスト３０１は、記録デバイス３１０の不揮発性メモリ部３１３から読み出したアドレス情報に含まれるＬＢＡが示す異常のあるデータが、ディレクトリエントリ４０１のデータなのかどうかについて、記録デバイス３１０内の記録媒体３１５に記録されているディレクトリエントリ４０１と、ＦＡＴ４０２のデータを読み出して、確認を行う。このアドレス情報に含まれるＬＢＡが示す異常のあるデータが、ディレクトリエントリ４０１のデータの場合、ステップ６０８に進み、ディレクトリエントリ４０１のデータではない場合、ファイルの修復処理を終了する。
【００７８】
ステップ６０８において、ホスト３０１は、記録媒体３１５に記録されている、ディレクトリエントリ４０１に含まれる全ディレクトリエントリデータと、ＦＡＴ４０２に含まれる全データを読み出し、ディレクトリエントリ４０１と、ＦＡＴ４０２の整合性の確認を行うことにより、対応するディレクトリエントリ４０１がないＦＡＴ４０２のデータが存在した場合、このＦＡＴ４０２のデータを接続順に未使用設定にするよう、記録媒体３１５に記録されているＦＡＴ４０２の更新を行う。
【００７９】
ステップ６０９において、ホスト３０１は、このアドレス情報に含まれるＬＢＡが示すディレクトリエントリ４０１のデータを、ファイルの削除処理の場合と同様の処理である、未使用設定にすることにより、記録媒体３１５に記録されているディレクトリエントリ４０１の修復を行い、ファイルの修復処理を終了する。
【００８０】
このように、本実施の形態１によるファイル修復方法、及びファイル記録装置では、記録デバイス３１０は、不揮発性メモリ部３１３を備え、キャッシュの揮発性メモリ部３１２に保持される書き込みデータの書き込み先のアドレス情報を、前記不揮発性メモリ部３１３に保持し、書き込みが正常に終了する場合にはそのアドレス情報を前記不揮発性メモリ部３１３からクリアし、電源障害等発生により書き込みが異常に終了する場合には、該アドレス情報は該不揮発性メモリ部３１３に保持されたまま書き込みが終了するため、電源復旧時において、該不揮発性メモリ部３１３に保持されているアドレス情報に基づき、書き込み異常が発生したことを認識し、その旨をホスト３０１に通知し、ホスト３０１は、前記記録デバイス２１０より該アドレス情報を読み出し、該アドレス情報をもとに書き込み異常が発生したファイルの修復を行うようにしたので、ホスト３０１は、記録デバイス３１０での書き込み異常が発生した書き込み先のアドレス情報を知ることにより、書き込み異常が発生したデータが、記録デバイス３１０に記録されたファイルを構成するどのような種類のデータかを把握し、その種類に応じた、書き込み異常のあるデータの更新や、削除などといったファイルの修復処理を行うことが可能となり、これにより、ホスト３０１は、電源障害による書き込み異常発生前までに記録デバイスの記録媒体に既に書き込まれたデータを、ホストから正常に読み出すことができるので、ホスト３０１にとって、記録デバイス３１０に記録されているファイルを、常に正常に読み出すことができることになる。特に、映像または音声等のデータをファイルとして記録デバイス３１０に記録している場合、書き込み異常が発生する以前に、記録デバイス３１０の記録媒体３１５に既に記録されている映像または音声等のデータを、再生することができるという効果がある。
【００８１】
なお、本実施の形態１では、記録デバイス３１０は、書き込みデータを不揮発性メモリ部３１３に保持しないため、ホスト３０１から記録デバイス３１０への書き込み処理速度の低下を抑えることができる。また、書き込みデータを不揮発性メモリ部３１３に保持しないゆえに、不揮発性メモリ部３１３は、キャッシュに使用されている揮発性メモリ部３１２と比較して容量が小さくて済み、アクセス速度の速い高性能のものを使用してもなおコストを抑えることができる。
【００８２】
（実施の形態２）
以下、本発明の実施の形態２によるファイル修復方法、およびファイル記録装置を、図１、図３、図４、図７、図８を用いて説明する。
【００８３】
尚、本実施の形態２によるファイル記録装置の構成（図３）、及びファイル記録装置が用いたＦＡＴファイルシステムの構成（図４）は、前述の実施の形態１と同様のため説明を省略する。
【００８４】
図７は、本実施の形態２によるファイル記録装置の記録デバイスにおける、不揮発性メモリ部３１３に格納されるアドレス情報の構造を示す図である。図８は、本実施の形態２によるファイル記録装置にて、ディレクトリエントリ４０１に書き込み異常が発生した場合のディレクトリエントリ修復方法を示すフローチャートである。
【００８５】
次に、本実施の形態２によるファイル記録装置としての映像音声記録再生装置３０００における、記録デバイス３１０でのデータ記録動作を、図１のフローチャートを参照しながら説明する。
【００８６】
ステップ１０１において、ホスト３０１は、ファイルを構成するディレクトリエントリ４０１のデータを記録デバイス３１０に書き込む場合、アドレス情報に書き込みデータも含めて不揮発性メモリ部３１３に保持するよう、記録デバイス３１０へライト命令を実行する。
【００８７】
次にステップ１０２において、記録デバイス３１０は、記録デバイス制御部３１１を介して、ホスト３０１から転送された書き込みパラメータ、及び書き込みデータを、キャッシュとして使用している揮発性メモリ部３１２に格納する。
【００８８】
次にステップ１０３において、記録デバイス３１０は、記録デバイス制御部３１１により、揮発性メモリ部３１２に格納されている書き込みパラメータ、及び書き込みデータから、記録媒体３１５の連続した領域への書き込みデータに関するアドレス情報を作成し、不揮発性メモリ部３１３に格納する。
【００８９】
図７に示すように、不揮発性メモリ部３１３に格納される各アドレス情報は、アドレス情報の開始を示すスタートコード、及び書き込みデータの有無を示すフラグを含むヘッダ情報と、連続した書き込みデータに関する記録媒体３１５への書き込み先のＬＢＡ情報と、連続したデータのセクタ数と、連続した書き込みデータから構成される。
【００９０】
ステップ１０４からステップ１０６までの処理は、実施の形態１と同様の処理のため、説明を省略する。
【００９１】
次に、本実施の形態２によるファイル記録装置において、電源障害により記録デバイス３１０で書き込み異常が発生した際の、電源復旧後のファイルの修復方法について説明する。
【００９２】
なお、書き込み異常が発生したデータが、クラスタ４０３に格納されるファイルの実データ、またはＦＡＴ４０２の場合、ファイルの修復方法は、前述実施の形態１と同様のため、説明を省略する。
【００９３】
次に、書き込み異常が発生したデータがディレクトリエントリ４０１の場合における、ホスト３０１によるファイルの修復方法の詳細を、図８のフローチャートに従って説明する。
【００９４】
ステップ８０１において、ホスト３０１は、記録デバイス３１０の不揮発性メモリ部３１３から読み出したアドレス情報に含まれるＬＢＡと、書き込みデータから、書き込み異常が発生したディレクトリエントリ４０１が示すＦＡＴ４０２を把握し、記録デバイス３１０内の記録媒体３１５からこのＦＡＴ４０２の接続情報を読み出す。ホスト３０１は、読み出したＦＡＴ４０２の接続情報が未使用設定になっていた場合、ファイルオープン処理時に書き込み異常が発生したと判断しステップ８０２に進み、読み出したＦＡＴ４０２の接続情報が未使用設定ではない場合、ファイルクローズ処理時に書き込み異常が発生したと判断しステップ８０３に進む。
【００９５】
ステップ８０２において、ホスト３０１は、ファイルオープン処理時に書き込み異常が発生したため、ファイルの実データの記録処理はされていないと判断し、書き込み異常が発生したディレクトリエントリ４０１のデータを、ファイルの削除処理の場合と同様の処理である、未使用設定にすることにより、記録媒体３１５に記録されているディレクトリエントリ４０１の修復を行い、ファイルの修復処理を終了する。
【００９６】
ステップ８０３において、ホスト３０１は、記録デバイス３１０の不揮発性メモリ部３１３から読み出したアドレス情報に含まれるＬＢＡと書き込みデータから、記録媒体３１５に記録されている書き込み異常が発生したディレクトリエントリ４０１の修復を行い、ファイルの修復処理を終了する。
【００９７】
このように、本実施の形態２によるファイル修復方法、及びファイル記録装置では、記録デバイス３１０は、ホスト３０１からの指示により、キャッシュの揮発性メモリ部３１２に保持される特定の書き込みデータを、対応する書き込み先のアドレス情報とともに、不揮発性メモリ部３１３に保持し、書き込みが正常に終了する場合には前記特定の書き込みデータとアドレス情報を前記不揮発性メモリ部３１３からクリアし、電源障害発生により書き込みが不正に終了する場合には、電源復旧時に、前記不揮発性メモリ部３１３に保持されているアドレス情報等により、書き込み異常が発生したと判断し、その旨をホスト３０１に通知し、ホスト３０１は、その通知により書き込み異常を認知し、そして不揮発性メモリ部３１３に保持されている特定の書き込みデータと、このデータに対応する書き込み先のアドレス情報とを読み出して、それらの情報をもとに、書き込み異常が発生したファイルの修復を行うようにしたので、前記実施の形態１によるファイル修復方法、及びファイル記録装置と同様に、異常のあるデータの種類に応じてファイルの修復を行うことが可能となり、ホスト３０１は、記録デバイス３１０に記録されているファイルを常に正常に読み出すことができるとともに、特にファイルを構成するディレクトリエントリ４０１に書き込み異常が発生した場合のファイルの修復処理においては、ディレクトリエントリ４０１とＦＡＴ４０２の全部のデータを読み出して両者の整合性の確認を行う必要がなくなり、修復処理をより高速に行うことができる。
【産業上の利用可能性】
【００９８】
本発明にかかるファイル修復方法、およびファイル記録装置は、ホストから記録デバイスへの書き込み処理速度の低下を、更に記録デバイスのコストの上昇を抑えながら、書き込み異常のあるファイルを修復して、ファイルを常に正常に読み出すことができるという効果を有し、特に映像や音声等のリアルタイムでの記録が要求されているデータから記録ファイルを構成している場合などのファイル修復を行うファイル修復方法、およびファイル記録装置として適している。
【図面の簡単な説明】
【００９９】
【図１】本発明の実施の形態１によるファイル記録装置における、記録デバイスへのデータ記録時の動作を示すフローチャートである。
【図２】本発明の実施の形態１によるファイル修復方法を示すフローチャートである。
【図３】本発明の実施の形態１によるファイル記録装置である、映像音声記録再生装置の構成を示すブロック図である。
【図４】本発明の実施の形態１によるファイル記録装置が用いているＦＡＴファイルシステムの構成を示す図である。
【図５】本発明の実施の形態１によるファイル記録装置の、記録デバイスが有する不揮発性メモリに保持されるアドレス情報の構成を示す図である。
【図６】本発明の実施の形態１による、ファイル修復方法の詳細を示すフローチャート
【図７】本発明の実施の形態２によるファイル記録装置の、記録デバイスが有する不揮発性メモリに保持されるアドレス情報の構成を示す図である。
【図８】本発明の実施の形態２によるファイル修復方法の、ディレクトリエントリ修復方法を示すフローチャートである。
【符号の説明】
【０１００】
３０１  ホスト
３０２  ＡＤＣ
３０３  符号化処理部
３０４  ホスト制御部
３０５  作業用メモリ部
３０６  記録デバイスアクセス部
３０７  復号化処理部
３０８  ＤＡＣ
３０９  ユーザＩＦ部
３１０  記録デバイス
３１１  記録デバイス制御部
３１２  揮発性メモリ部
３１３  不揮発性メモリ部
３１４  記録媒体アクセス部
３１５  記録媒体
４０１  ディレクトリエントリ
４０２  ＦＡＴ（File Allocation Table）
４０３  クラスタ
【図１】
2005242708.tif 000003
【図２】
2005242708.tif 000004
【図３】
2005242708.tif 000005
【図４】
2005242708.tif 000006
【図５】
2005242708.tif 000007
【図６】
2005242708.tif 000008
【図７】
2005242708.tif 000009
【図８】
2005242708.tif 000010