(57)【要約】【課題】使用可能なデータ領域を確保しつつ、ファイルの書き込み処理中に電力供給が中断された場合であってもファイルの破壊を回避可能な半導体装置のファイル管理方法及び情報記録装置を提供する。【解決手段】本発明の情報記録装置４は半導体装置３とファイル管理装置２を有する。半導体装置３は複数のブロックを有するデータ領域１３と、データ領域の管理情報を格納するシステム領域１１、１２と、システム領域の管理情報を更新するための更新管理情報を一時的に記憶する書き込み情報保留領域１４と、を備える。ファイル管理装置２は、データ領域の空きブロックに更新ファイルを書き込み、更新ファイルの書き込み後の更新管理情報を書き込み情報保留領域に書き込み、書き込み情報保留領域に書き込まれている更新管理情報に基づきシステム領域の管理情報を更新し、書き込み情報保留領域の更新管理情報を削除する。【選択図】図４
2010152832.tif 000002
【特許請求の範囲】
【請求項１】
複数のブロックを有するデータ領域と、当該データ領域の管理情報を格納するシステム領域と、当該システム領域の管理情報を更新するための更新管理情報を一時的に記憶する書き込み情報保留領域と、を備える半導体記憶装置と、
前記データ領域の空きブロックに更新ファイルを書き込み、前記更新ファイルの書き込み後の更新管理情報を前記書き込み情報保留領域に書き込み、前記書き込み情報保留領域に書き込まれている更新管理情報に基づき前記システム領域の管理情報を更新し、前記書き込み情報保留領域の更新管理情報を削除する、ファイル管理装置と、
前記ファイル管理装置と外部装置とを接続するインタフェースと、
を有する情報記録装置。
【請求項２】
前記ファイル管理装置は、前記更新管理情報の前記書き込み情報保留領域への書き込みの前に電力供給が中断され再度電力供給された場合は、前記データ領域の空きブロックに書き込んだ更新ファイルを消去する請求項１に記載の情報記録装置。
【請求項３】
前記ファイル管理装置は、前記更新管理情報の前記書き込み情報保留領域への書き込み途中に電力供給が中断され再度電力供給された場合は、前記データ領域の空きブロックに書き込んだ更新ファイル、及び、前記書き込み情報保留領域に書き込んだ更新管理情報を消去する請求項１に記載の情報記録装置。
【請求項４】
前記ファイル管理装置は、前記更新管理情報の前記書き込み情報保留領域への書き込み後、前記更新管理情報に基づき前記システム領域を更新している途中に電力供給が中断され再度電力供給された場合は、前記書き込み情報保留領域に書き込まれている更新管理情報に基づき前記システム領域の管理情報を更新する請求項１に記載の情報記録装置。
【請求項５】
前記システム領域はディレクトリ領域とＦＡＴ領域である請求項１乃至４のいずれか１項に記載の情報記録装置。
【請求項６】
複数のブロックを有するデータ領域と、当該データ領域の管理情報を格納するシステム領域と、当該システム領域の管理情報を更新するための更新管理情報を一時的に記憶する書き込み情報保留領域と、を有する半導体記憶装置のファイル管理方法であって、
前記データ領域の空きブロックに更新ファイルを書き込み、
前記更新ファイルの書き込み後の更新管理情報を前記書き込み情報保留領域に書き込み、
前記書き込み情報保留領域に書き込まれている更新管理情報に基づき前記システム領域の管理情報を更新し、
前記書き込み情報保留領域の更新管理情報を削除する、
半導体記憶装置のファイル管理方法。
【請求項７】
前記更新管理情報の前記書き込み情報保留領域への書き込みの前に電力供給が中断され再度電力供給された場合は、前記データ領域の空きブロックに書き込んだ更新ファイルを消去する請求項６に記載の半導体記憶装置のファイル管理方法。
【請求項８】
前記更新管理情報の前記書き込み情報保留領域への書き込みの途中に電力供給が中断され再度電力供給された場合は、前記データ領域の空きブロックに書き込んだ更新ファイル、及び、前記書き込み情報保留領域に書き込んだ更新管理情報を消去する請求項６に記載の半導体記憶装置のファイル管理方法。
【請求項９】
前記更新管理情報の前記書き込み情報保留領域への書き込み後、前記更新管理情報に基づき前記システム領域を更新している途中に電力供給が中断され再度電力供給された場合は、前記書き込み情報保留領域に書き込まれている更新管理情報に基づき前記システム領域の管理情報を更新する請求項６に記載の半導体記憶装置のファイル管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報記録装置、及び半導体記憶装置のファイル管理方法に関し、特にセクタ単位での書き込みとブロック単位でデータの消去が可能なフラッシュメモリを用いた情報記録装置、及びのフラッシュメモリのファイル管理方法に関する。
【背景技術】
【０００２】
近年、デジタルカメラなどの携帯型デジタル機器の記憶媒体としてフラッシュメモリが広く用いられている。フラッシュメモリは複数のブロックで構成され、特定のバイト数で定義されたセクタ単位での書き込みとブロック単位でのデータの消去が可能な不揮発性メモリである。そして、一般的にフラッシュメモリへのデータの書き込みは、書き込み対象となるセクタが存在するブロックを事前に消去してから行う。
【０００３】
フラッシュメモリの記憶領域の一例を図７に示す。図７に示すように、フラッシュメモリは予約(ブート)領域２０と、ＦＡＴ領域２１と、ディレクトリ領域２２と、データ領域２３で構成されている。データ領域２３は、複数のブロックで構成されている。
【０００４】
ＦＡＴ領域２１は、データ領域２３に書き込まれたファイルデータの配置を特定のセクタ数で定義されたクラスタ単位で管理する領域である。ディレクトリ領域２２は、ファイル名、ファイル属性、ファイル作成日、開始クラスタなどのファイル情報を管理する領域である。
【０００５】
次に、図８を用いてフラッシュメモリのファイルを更新する場合について説明する。図８に示すように、まず空きブロックの検索（Ｓ２１）を行う。空きブロックがある場合は、その空きブロックに更新ファイルのある元ブロックに存在する更新ファイル以外のファイルを書き込む（Ｓ２２）。次に、空きブロックに更新ファイルを書き込む（Ｓ２３）。次に、更新ファイルのあった元ブロックを消去する（Ｓ２４）。そして、システム領域（ディレクトリ領域、ＦＡＴ領域）に対して、空きブロックに書いたファイル情報を更新する（Ｓ２５）。なお、ファイルデータを格納するクラスタ内の複数のセクタのうち、最後の余った領域は使用しない。
【０００６】
一方、フラッシュメモリへのファイルの書き込み中や消去中に電源の供給を停止すると、書き込んだファイルは破壊される。このような問題を解決するために特許文献１では図９に示すように、システム領域（ディレクトリ領域、ＦＡＴ領域）の元データを退避する領域を設けて、各領域への書き込み前に元データを退避する手法を用いている（図９のＳ３５参照）。
【０００７】
また、特許文献１ではファイルの書き込み処理の動作履歴記録領域を設けて、ファイルデータの書き込みが行われたデータ領域のクラスタ値、及び書き込み処理内容の位置を示す動作識別コードを動作履歴記録領域に記録している（図９のＳ３３、Ｓ３６、Ｓ３９、Ｓ４２参照）。そして、この動作識別コードによりどの段階で書き込み処理が中断しているかを判別し、データ領域、及びシステム領域（ディレクトリ領域、ＦＡＴ領域）を書き込み前の状態に復旧している。
【０００８】
例えば図９のＳ３８で電力供給が中断された場合は、ディレクトリ領域への書き込みが途中で中断される。この場合は、再度電源が供給されたときに、動作履歴記憶領域の動作識別コードを解析することで、Ｓ３８で異常処理となったことを判別し、書き込み前の状態へ復旧処理を行う。
このような技術により、ファイルの書き込み処理中に電力供給が中断されたときファイルが正しく更新されない、またはファイルを正しく読み出せないという問題は回避される。
【特許文献１】特開２００１−８４１８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１ではファイルの書き込み処理中に電力供給が中断された場合の異常処理を回避するために、システム領域（ディレクトリ領域、ＦＡＴ領域）を退避する領域を設けている。この退避領域は、システム領域（ディレクトリ領域、ＦＡＴ領域）と同等のバッファサイズを必要とする。このため、退避領域がフラッシュメモリ上の領域を占有する割合が多くなり、ユーザが使用可能なデータ領域が少なくなるという問題が生じる。
【課題を解決するための手段】
【００１０】
本発明にかかる情報記録装置は、複数のブロックを有するデータ領域と、当該データ領域の管理情報を格納するシステム領域と、当該システム領域の管理情報を更新するための更新管理情報を一時的に記憶する書き込み情報保留領域と、を備える半導体記憶装置と、
前記データ領域の空きブロックに更新ファイルを書き込み、前記更新ファイルの書き込み後の更新管理情報を前記書き込み情報保留領域に書き込み、前記書き込み情報保留領域に書き込まれている更新管理情報に基づき前記システム領域の管理情報を更新し、前記書き込み情報保留領域の更新管理情報を削除する、ファイル管理装置と、前記ファイル管理装置と外部装置とを接続するインタフェースと、を有する。
このような構成を有することで、システム領域の全てのファイルをデータ領域の退避領域に退避させる必要がなくなり、システム領域のファイルを更新するために使用するデータ領域のサイズを小さくすることができ、使用可能なデータ領域を確保することができる。
【００１１】
複数のブロックを有するデータ領域と、当該データ領域の管理情報を格納するシステム領域と、当該システム領域の管理情報を更新するための更新管理情報を一時的に記憶する書き込み情報保留領域と、を有する本発明にかかる半導体記憶装置のファイル管理方法は次の工程を有する。前記データ領域の空きブロックに更新ファイルを書き込む第１の工程と、前記更新ファイルの書き込み後の更新管理情報を前記書き込み情報保留領域に書き込む第２の工程と、前記書き込み情報保留領域に書き込まれている更新管理情報に基づき前記システム領域の管理情報を更新する第３の工程と、前記書き込み情報保留領域の更新管理情報を削除する第４の工程。
このような半導体記憶装置のファイル管理方法により、システム領域の全てのファイルをデータ領域の退避領域に退避させる必要がなくなり、システム領域のファイルを更新するために使用するデータ領域のサイズを小さくすることができ、使用可能なデータ領域を確保することができる。
【発明の効果】
【００１２】
本発明により、使用可能なデータ領域を確保しつつ、ファイルの書き込み処理中に電力供給が中断された場合であってもファイルの破壊を回避可能な半導体装置のファイル管理方法及び情報記録装置を提供することができる。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して本発明の実施の形態について説明する。
図１に本実施形態にかかる情報記録装置を説明するための図を示す。本実施形態にかかる情報記録装置４は、半導体記憶装置３と半導体記憶装置のファイルを管理するファイル管理装置２と、ファイル管理装置と外部装置とを接続するインタフェース１を有する。ファイル管理装置２は、インタフェース１を介して外部装置と半導体記憶装置３に保存されているデータのアクセスを制御する。ここでファイル管理装置２は例えばＭＰＵであり、また、半導体記憶装置３は例えばフラッシュメモリである。
【００１４】
図２は半導体記憶装置３の記憶領域を示す図である。記憶領域は複数のブロックで構成されている。記憶領域は、予約(ブート)領域１０、ＦＡＴ領域１１、ディレクトリ領域１２、複数のデータ領域１３、書き込み情報保留領域１４を有する。ここで、ＦＡＴ領域１１、ディレクトリ領域１２は、データ領域の管理情報を格納するいわゆるシステム領域である。また、書き込み情報保留領域１４はシステム領域の管理情報を更新するための更新情報（更新管理情報）を一時的に記憶する。
【００１５】
図３は図２で示した書き込み情報保留領域１４の詳細な図である。書き込み情報保留領域１４は、書き込み保留ステータス１５、書き込み情報管理テーブル１６、書き込みデータテーブル１７を有する。
【００１６】
書き込み保留ステータス１５には、更新管理情報の書き込み情報保留領域１４への書き込み保留開始・終了命令の実行状態が格納される。書き込み保留開始命令が発行されると、書き込み保留開始命令が発行されてから書き込み保留終了命令が発行されるまでの間で行われる書き込み処理が保留となる。また、書き込み保留開始命令が発行されると、書き込み情報管理テーブル１６、及び書き込みデータテーブル１７に更新管理情報を保存する処理が開始される。
【００１７】
書き込み保留終了命令が発行されると、書き込み保留開始命令の発行により保留となった書き込み処理の保留が解除される。また、書き込み保留終了命令が発行されると、書き込み情報管理テーブル１６、及び書き込みデータテーブル１７に更新管理情報を保存する処理が終了する。
【００１８】
更に、書き込み保留終了命令が発行されると、書き込み情報管理テーブル１６、及び書き込みデータテーブル１７に保存された更新管理情報に基づきシステム領域が更新される。
【００１９】
次に、図４を用いて、本実施形態にかかる情報記録装置４においてファイル管理装置２が半導体記憶装置３のファイルを更新する動作について説明する。
本実施形態にかかるファイル管理装置２は、少なくとも次の工程を実行することで半導体記憶装置３のファイルを更新することができる。データ領域１３の空きブロックに更新ファイルを書き込む工程（Ｓ４）。更新ファイルの書き込み後の更新管理情報を書き込み情報保留領域１４に書き込む工程（Ｓ７、Ｓ８）。書き込み情報保留領域１４に書き込まれている更新管理情報に基づきシステム領域の管理情報を更新する工程（Ｓ１１）。書き込み情報保留領域１４の更新管理情報を削除する工程（Ｓ１３）。
以下、ファイル管理装置２が半導体記憶装置３のファイルを更新する場合について詳細に説明する。
【００２０】
まず、ファイル管理装置２は、半導体記憶装置３においてファイルの更新データを書き込むための空きブロックを検索する（Ｓ１）。そして、空きブロックを発見したら書き込み情報保留領域１４の書き込み保留ステータス１５に「ｏｆｆ」を書き込む（Ｓ２）。空きブロックがない場合は、ファイル書き込みができないことを通知する（Ｓ１４）。
【００２１】
次に、更新対象ファイルのある元ブロックに存在する更新対象ファイル以外のファイルを空きブロックに書き込む（Ｓ３）。次いで、空きブロックに更新ファイルのデータを書き込む（Ｓ４）。空きブロックへの書き込みと同時に書き込み情報管理テーブル１６には、書き込み保留ステータス１５と、実際に書き込む予定の書き込みセクタ番号を書き込む。
【００２２】
ファイル管理装置２は、システム領域（ディレクトリ領域、ＦＡＴ領域）の書き込みを開始する前に書き込み保留開始命令を自らに発行する（Ｓ５）。そして、書き込み情報保留領域１４に存在する書き込み保留ステータス１５に、書き込み保留が開始する命令「ｏｎ」を書き込む（Ｓ６）。
【００２３】
書き込み保留ステータスが「ｏｎ」となることで、ファイル管理装置２は、ディレクトリ領域への書き込み情報（更新管理情報）を書き込み情報保留領域１４に書き込む（Ｓ７）。書き込み情報保留領域１４は図３に示すように定義されており、書き込み情報管理テーブル１６には書き込み保留ステータス１５と書き込むデータを格納した書き込みデータテーブル１７のセクタ番号を書き込む。また、書き込みデータテーブル１７には、書き込みデータのサイズ、書き込みデータを連続して書き込む。
【００２４】
次に、ＦＡＴ領域の書き込み情報（更新管理情報）をディレクトリ領域と同様に書き込み情報保留領域に書き込む（Ｓ８）。書き込み情報保留領域１４は図３に示すように定義されており、書き込むデータを格納した書き込みデータテーブル１７のセクタ番号を書き込む。また、書き込みデータテーブル１７には、書き込みデータを書き込む。
【００２５】
システム領域（ディレクトリ領域、ＦＡＴ領域）への書き込み情報（更新管理情報）が、書き込み情報保留領域１４に保留され、当該保留作業が終了したら、ファイル管理装置２は書き込み保留終了命令を自らに発行する（Ｓ９）。
そして、書き込み情報保留領域１４に存在する書き込み保留ステータス１５と書き込み情報管理テーブル１６に、書き込み保留が終了したことを示す「ｅｎｄ」を書き込む（Ｓ１０）。
【００２６】
ファイル管理装置２は、書き込み情報保留領域１４に保留したシステム領域（ディレクトリ領域、ＦＡＴ）への書き込みデータ（更新管理情報）を用いて、システム領域（ディレクトリ領域、ＦＡＴ領域）を更新する（Ｓ１１）。
【００２７】
次に、ファイル管理装置２は更新対象ファイルのある元ブロックを消去する（Ｓ１２）。更に、書き込み情報保留領域の更新管理情報を消去する（Ｓ１３）。
【００２８】
次に、空きブロックに更新ファイルのデータを書き込むタイミング（Ｓ４）で、電力供給が中断された場合、つまり、更新管理情報の書き込み情報保留領域１４への書き込みの前に電力供給が中断された場合の動作について説明する。
Ｓ４のタイミングで電力供給が中断され、その後電力供給が行われたとき、ファイル管理装置２は書き込み保留ステータス１５を参照する。そして、書き込み保留ステータス１５が「ｏｆｆ」であった場合、書き込み情報管理テーブル１６に示されたセクタを含んだブロックを消去する。
【００２９】
次に、書き込み情報保留領域１４を消去する。また当該ブロックのＦＡＴ領域への更新（Ｓ１１）は行われておらず、元ブロックの消去（Ｓ１２）も行われていないため、空きブロックとして定義されたままである。よって当該ブロックは、空きブロックとして使用することが可能である。このような動作により、半導体記憶装置３をファイルデータの書き込み前の状態に復旧させることができる。
【００３０】
次に、ＦＡＴ領域の書き込み情報を書き込み情報保留領域へ書き込むタイミング（Ｓ８）で、電力供給が中断された場合、つまり、更新管理情報の書き込み情報保留領域１４への書き込み途中に電力供給が中断された場合の動作について説明する。
Ｓ８のタイミングで電力供給が中断されると、書き込み情報保留領域１４は例えば図５のような状態となる。この状態で電力供給が行われると、ファイル管理装置２は書き込み保留ステータス１５を参照する。そして、書き込み保留ステータス１５が「ｏｎ」であった場合、書き込み保留の状態であると判断する。すると、書き込み情報管理テーブル１６に示された書き込み保留ステータス１５が「ｏｆｆ」から書き込まれたセクタを含んだブロックを消去する。そして、書き込み情報保留領域１４を消去する。このような動作により、半導体記憶装置３をファイルデータの書き込み前の状態に復旧することができる。
【００３１】
次に、書き込み保留したデータでシステム領域（ディレクトリ領域、ＦＡＴ領域）を更新するタイミング（Ｓ１１）で電力供給が中断された場合、つまり、更新管理情報の書き込み情報保留領域への書き込みの後に電力供給が中断された場合の動作について説明する。
Ｓ１１のタイミングで電力供給が中断されると、書き込み情報保留領域１４は例えば図６のような状態となる。この状態で電力供給が行われると、ファイル管理装置２は書き込み保留ステータス１５を参照する。そして、書き込み保留ステータス１５が「ｅｎｄ」であった場合、書き込み保留したデータ（更新管理情報）でシステム領域（ディレクトリ領域、ＦＡＴ領域）を更新中であったと判断する。すると、ファイル管理装置２はシステム領域への更新処理（Ｓ１１）をやり直す。
このような動作により、システム領域のファイルを更新するタイミング（Ｓ１１）で電力供給が中断された場合であっても、電力供給後に書き込み保留したデータ（更新管理情報）を用いてシステム領域のファイルを更新することができる。
【００３２】
以上、ファイル管理装置２が半導体記憶装置３のファイルを更新する場合について詳細に述べた。本実施形態にかかるファイル管理装置２では少なくとも上記Ｓ４、Ｓ７、Ｓ８の工程を有することで、ファイルの書き込み処理中に電力供給が中断された場合であってもファイルの破壊を回避することができる。更に、Ｓ１１、Ｓ１３の工程を有することで、ファイルの書き込み処理中に電力供給が中断された場合であっても、ファイルを更新することができる。
【００３３】
上記本実施形態にかかる情報記録装置では、ファイル管理装置２が半導体記憶装置３の書き込み情報保留領域１４に対してファイルのデータを書き込んだ全てのセクタ番号を書き込む。つまり、ファイル管理装置２は、半導体記憶装置３の書き込み情報保留領域１４に対して、ファイルのシステム領域（ディレクトリ領域１２、ＦＡＴ領域１１）への書き込み情報（更新管理情報）を一時的に保留する（Ｓ７、Ｓ８）。そして、書き込み情報保留領域１４への書き込みが終了した後に、保留した書き込み情報（更新管理情報）に基づいてシステム領域（ディレクトリ領域１２、ＦＡＴ領域１１）の情報を一斉に更新する（Ｓ１１）。
【００３４】
よって、本実施形態にかかる情報記録装置では、更新が必要なシステム領域の情報（更新管理情報）のみを一時的に保留するため、システム領域を全て退避させる従来の手法と比べて、システム領域を保留する領域を小さくすることができる。
すなわち、従来の手法ではシステム領域を全て退避させるため、システム領域と同等のバッファサイズの記憶領域を必要としていた。しかし、本実施形態にかかる情報記録装置では、更新が必要なシステム領域の情報のみを保留するため、この保留領域のバッファサイズを従来のバッファサイズよりも小さくすることができる。
これにより、フラッシュメモリの記憶領域に占めるシステム領域の退避領域の割合を小さくすることができ、ユーザが使用可能なデータ領域を大きくすることができる。
【００３５】
以上で説明した本実施形態にかかる発明により、使用可能なデータ領域を確保しつつ、ファイルの書き込み処理中に電力供給が中断された場合であってもファイルの破壊を回避可能な半導体装置のファイル管理方法及び情報記録装置を提供することができる。
【００３６】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。上記本実施形態では、半導体記憶装置３に対して書き込むファイルそのものをファイル管理装置２が管理している。しかし、外部装置を用いて書き込むファイルそのものを管理すれば、ファイル管理装置２は、外部装置からインタフェース１を介して、書き込む領域（セクタ）と書き込みデータが指定された書き込み命令、及び書き込み保留開始・終了命令を受けて半導体記憶装置３へ書き込むことが可能となる。
【００３７】
このような形態とすることで、書き込むファイルそのものを管理しないファイル管理装置２と半導体記憶装置３で構成された記憶媒体に対して、ファイル管理装置をもつ外部装置から特定のプロトコルにより半導体記憶装置３を制御することができる。この時、外部装置はインタフェース１を介してファイル管理装置２と接続されている。
【図面の簡単な説明】
【００３８】
【図１】実施の形態にかかる情報記録装置を示す図である。
【図２】実施の形態にかかる半導体記憶装置の記憶領域を示す図である。
【図３】実施の形態にかかる半導体記憶装置の書き込み情報保留領域を示す図である。
【図４】実施の形態にかかるファイル管理装置が半導体記憶装置のファイルを更新する動作を説明するための図である。
【図５】実施の形態にかかる半導体記憶装置の書き込み情報保留領域のデータ例を示す図である。
【図６】実施の形態にかかる半導体記憶装置の書き込み情報保留領域のデータ例を示す図である。
【図７】フラッシュメモリの記憶領域の一例を示す図である。
【図８】フラッシュメモリのファイル更新の一例を示す図である。
【図９】特許文献１にかかるフラッシュメモリのファイル更新方法を説明するための図である。
【符号の説明】
【００３９】
１  インタフェース
２  ファイル管理装置
３  半導体記憶装置
４  情報記録装置
１１  ＦＡＴ領域
１２  ディレクトリ領域
１３  データ領域
１４  書き込み情報保留領域
【図１】
2010152832.tif 000003
【図２】
2010152832.tif 000004
【図３】
2010152832.tif 000005
【図４】
2010152832.tif 000006
【図５】
2010152832.tif 000007
【図６】
2010152832.tif 000008
【図７】
2010152832.tif 000009
【図８】
2010152832.tif 000010
【図９】
2010152832.tif 000011