(57)【特許請求の範囲】
【請求項１】
デジタル機器システムであって、
該デジタル機器システムは、
ａ．情報の複数のセクタを有するファイルを読み出すか、または書き込むためのコマンドを送信するホストと、
ｂ．該コマンドに応答するコントローラデバイスと
を備え、
該複数のセクタの各々は、ビット、バイトまたはワードを基本としており、該ビット毎、該バイト毎または該ワード毎に変更可能であり、該ホストは、該コマンドに対する応答を受信するように動作可能であり、
該コントローラデバイスは、
該ホストから受信されたコマンドに基づいて、複数のセクタに整理された情報を格納する１回プログラム可能な不揮発性メモリと、
ホストによって提供されたセクタを格納する第１のバッファと、該１回プログラム可能な不揮発性メモリに格納されたセクタ、または、該１回プログラム可能な不揮発性メモリに格納されることなるセクタを格納する第２のバッファと、
書き込みおよび再書き込みされるべきセクタを受信するように該第１のバッファと該第２のバッファとの間に結合された比較器と
を含み、
該比較器は、セクタを再書き込みするためのコマンドを該ホストから受信すると、再書き込みされるべきセクタと、対応する格納されたセクタとを比較して、該コントローラデバイスが、該再書き込みされるべきセクタを、ビット毎、バイト毎またはワード毎でのみ、かつ、該セクタの変更された位置についてのみ、再書き込みすることを可能にする、デジタル機器システム。
【請求項２】
前記１回プログラム可能な不揮発性メモリは、システム領域とデータ領域とを含み、該システム領域は、該データ領域に格納された情報、または、該データ領域に格納されることになる情報の整理に関連する情報を格納する、請求項１に記載のデジタル機器システム。
【請求項３】
前記システム領域は、オリジナルエンジニアリングマニュファクチャ（ＯＥＭ）識別／双方向入力／出力システム（ＢＩＯＳ）と、ファイルアロケーションテーブル（ＦＡＴ）１と、ＦＡＴ２と、ルートディスクディレクトリ情報とを含む格納領域を含む、請求項２に記載のデジタル機器システム。
【請求項４】
前記コントローラデバイスは、パワーアップの間、エンド−オブ−ファイルを識別し、
該エンド−オブ−ファイルが存在する位置に続く位置は、格納されることになる新しいファイルのスタート−オブ−ファイルの位置として識別される、請求項１に記載のデジタル機器システム。
【請求項５】
前記エンド−オブ−ファイルは、フラグの使用によって識別される、請求項４に記載のデジタル機器システム。
【請求項６】
前記ファイルは、デジタル写真である、請求項１に記載のデジタル機器システム。
【請求項７】
前記ファイルは、アーカイブである、請求項１に記載のデジタル機器システム。
【請求項８】
前記コントローラデバイスは、ホストによって提供されたアドレスを前記１回プログラム可能な不揮発性メモリによって認識されるアドレスに変換するように、論理アドレスと物理アドレスとの間の相関を維持する、請求項１に記載のデジタル機器システム。
【請求項９】
前記コントローラデバイスは、前記１回プログラム可能な不揮発性メモリ内に欠陥のある位置のトラックを維持する、請求項８に記載のデジタル機器システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、１回プログラム可能な不揮発性メモリデバイス内に格納され、読み出されるファイルを管理する方法および装置にほぼ関し、詳細には、１回プログラム可能な不揮発性メモリデバイス内に格納されたファイルの位置のトラックを保持するファイルマネージャを操作することに関する。
【０００２】
【従来の技術】
デジタル情報の格納は、技術の進歩に応じて、格納および検索の実行速度という点において、絶えず、改良され、進歩し続けている。例として、取り込まれた写真画像の格納および検索のための写真に用いる不揮発性メモリデバイス（情報の再書き込み前の情報を消去する必要のあるデバイス）の分野における、通常のデジタルカメラが挙げられる。同様に、情報の記録が不揮発性メモリデバイスによって行われる。ごく最近、１回プログラム可能な不揮発性メモリデバイスは、デジタルカメラによる使用および記録に用いられるようになった。
【０００３】
１回プログラム可能な不揮発性メモリデバイスによって提示された問題は、明らかに、再プログラムができないことである。すなわち、１回プログラム可能な不揮発性メモリデバイスは、一旦メモリ領域にデータが書き込まれると、再書き込みが不可能になる。これが、情報の記録について１回プログラム可能な不揮発性メモリデバイスが用いられる本来の理由である。一般に、情報を記録するには、１回書き込みまたは１回プログラミングを必要とする。同じことが、１回プログラム可能な不揮発性メモリデバイスを処分可能なデジタルフィルムに用いる場合にも当てはまる。多数の写真画像が格納されると、処分可能なフィルムは、現像され、その後、処分される。
【０００４】
任意の上述のシステム内での情報の管理、すなわち、デジタルデータは、格納された情報の位置のトラックを維持するように実行される必要がある。一般に、上述のシステムは、１回プログラム可能な不揮発性メモリに接続され、１回プログラム可能な不揮発性メモリデバイス内の特定の領域に情報を格納するように指示するホストに接続されたコントローラデバイスを含む。実際のデータまたはユーザデータは、一般にファイル領域と呼ばれる、上述の目的のために識別された位置に格納され、ファイル領域の位置に関する情報は、システム領域と呼ばれる、個別の位置に保持される。ファイル領域およびシステム領域は両方とも、１回プログラム可能な不揮発性メモリデバイス内に格納されている。ここで、生じている問題は、データ領域を管理するシステム領域の上手な操作にある。例えば、出力が一時的に断続され、再確立される場合、コントローラは、１回プログラム可能な不揮発性メモリデバイス内に新しい情報を書き込ための不使用のメモリまたは利用可能なメモリがあることを知る必要があり、次いで、利用可能なメモリ内の情報の位置に関する情報を復元する必要がある。
【０００５】
【発明が解決しようとする課題】
１回プログラム可能な不揮発性メモリデバイスに格納され、読み出されるデジタル情報を管理するか、または操作するシステムおよび方法の必要性が生じている。
【０００６】
したがって、本発明は、１回プログラム可能な不揮発性メモリデバイスに格納され、読み出されるデジタル情報を管理するか、または操作するシステムおよび方法を提供することを目的とする。
【０００７】
【課題を解決するための手段】
本発明のデジタル機器システムは、ａ．情報のセクタを有するファイルを読み出すか、または、書き込むためのコマンドを送信するホストであって、各セクタは、ビット、バイトまたはワードを基本としており、上記ビット毎、上記バイト毎または上記ワード毎に変更可能であり、上記ホストは、上記コマンドに対する応答を受信するように動作可能である、ホストと、ｂ．上記コマンドに応答するコントローラデバイスであって、上記ホストから受信されたコマンドに基づいて、セクタに整理された情報を格納する１回プログラム可能な不揮発性メモリを含み、セクタを再書き込みするためのコマンドを上記ホストから受信すると、上記ビット毎、バイト毎またはワード毎に上記セクタを再書き込みする、コントローラデバイスと、を含む。
【０００８】
上記１回プログラム可能な不揮発性メモリは、システム領域およびデータ領域を含み、上記システム領域は、上記データ領域に格納されるか、または、格納されることになる情報の整理に関連する情報を格納する。
【０００９】
上記システム領域は、オリジナルエンジニアリングマニュファクチャ（ＯＥＭ）識別／双方向入力／出力システム（ＢＩＯＳ）と、ファイルアロケーションテーブル（ＦＡＴ）１、ＦＡＴ２およびルートディスクディレクトリ情報を含む格納領域を含む。
【００１０】
上記コントローラデバイスは、ホスト提供セクタを格納する第１のバッファおよび上記１回プログラム可能な不揮発性メモリに格納されるか、または、格納されることなるセクタを格納する第２のバッファをさらに含む。
【００１１】
上記第１のバッファと上記第２のバッファとの間に接続され、上記ホストによって変更されることになるセクタまたはアクセスされることになるセクタを、情報が以前に書き込まれたセクタと比較する比較器をさらに含む。
【００１２】
上記コントローラデバイスは、パワーアップの間、エンド−オブ−ファイルを識別し、上記エンド−オブ−ファイルが常駐する位置に続く位置は、格納されることになる新しいファイルのスタート−オブ−ファイルの位置として識別される。
【００１３】
上記エンド−オブ−ファイルは、フラグの使用によって識別される。
【００１４】
上記ファイルは、デジタル写真である。
【００１５】
上記ファイルは、アーカイブである。
【００１６】
上記コントローラデバイスは、ホストによって提供されたアドレスを上記１回プログラム可能な不揮発性メモリによって認識されるアドレスに変換するように、論理アドレスと物理アドレスとの間の相関を維持する。
【００１７】
上記コントローラは、上記１回プログラム可能な不揮発性メモリ内に欠陥のある位置のトラックを維持する。
【００１８】
本発明の、デジタル機器システムは、ａ．情報のセクタを有するファイルを読み出すか、または、書き込むためのコマンドを送信するホストであって、上記コマンドに対する応答を受信するように動作可能である、ホストと、ｂ．上記コマンドに応答するコントローラデバイスであって、上記ホストから受信されたコマンドに基づいて、セクタに整理された情報を格納する１回プログラム可能な不揮発性メモリであって、セクタを再書き込みするための、上記ホストからのコマンドに基づいて予備領域を含む、１回プログラム可能なメモリと、再書き込みされるセクタを予備領域にマッピングするコントローラとを含む、コントローラデバイスと、を含む。
【００１９】
上記１回プログラム可能な不揮発性メモリは、システム領域およびデータ領域をさらに含む。
【００２０】
上記１回プログラム可能な不揮発性メモリ内のスタート−オブ−ファイル位置、エンド−オブ−ファイル位置および欠陥のあるセクタ位置を識別し、セクタが書き込まれる場合に、上記欠陥のあるセクタ位置がスキップされる。
【００２１】
上記欠陥のあるセクタに書き込まれた情報が上記予備領域位置に代わりに書き込まれる。
【００２２】
上記コントローラは、壊れているセクタに続く位置にはスタート−オブ−ファイルの識別子がないか、または、上記１回プログラム可能な不揮発性メモリの残りにエンド−オブ−ファイルがないかを判定し、上記位置は、電力故障に起因して壊れたセクタとして識別され、したがって、情報を将来的に格納することを防止するように指定される。
【００２３】
本発明の、デジタル機器システムは、ａ．ファイルを読み出すか、または、書き込むためのコマンドを送信するホストであって、上記コマンドに対する応答を受信するように動作するホストと、ｂ．上記コマンドに応答するコントローラデバイスであって、ファイルを格納し、格納されたファイルのスタート−オブ−ファイルおよびエンド−オブ−ファイルを識別する１回プログラム可能なメモリを含み、パワーアップの間、格納されたファイルのエンド−オブ−ファイルを識別し、上記エンド−オブ−ファイルが常駐する位置に続く位置は、エンド−オブ−ファイルが格納されることになる新しいファイルのスタート−オブ−ファイルの位置として識別される、コントローラデバイスと、を含む。
【００２４】
本発明のデジタル機器システムは、ａ．情報のセクタを有するファイルを読み出すか、または、書き込むためのコマンドを送信するホストであって、上記コマンドへの応答を受信するように動作する、ホストと、ｂ．上記コマンドに応答するコントローラであって、セクタ情報を格納する予備位置を有する１回プログラム可能な不揮発性メモリであって、上記ホストから受信されたコマンドに基づきセクタに整理された情報を格納する上記１回プログラム可能な不揮発性メモリを含み、セクタを再書き込みするか、または、セクタを更新するためのコマンドを上記ホストから受信すると、更新されたセクタを予備位置に書き込む、コントローラデバイスと、を含む。
【００２５】
本発明のデジタル機器システムは、ａ．情報のセクタを有するファイルを読み出すか、または、書き込むためのコマンドを送信するホストであって、各セクタは、セクタ情報の破壊を示す誤り訂正符合（ＥＣＣ）と関連し、上記ホストは、上記コマンドに対する応答を受信するように動作可能である、ホストと、ｂ．上記コマンドに応答するコントローラデバイスであって、整理された情報をセクタに格納する１回プログラム可能な不揮発性メモリであって、上記コントローラは、特定のセクタの上記ＥＣＣをチェックし、上記特定のセクタが破壊しているかどうかを判定し、上記特定のセクタが破壊している場合に、次のセクタ内に格納された上記情報を読み出し、上記次のセクタ情報がプログラム不可能な状態であるかどうかを判定し、上記次のセクタ情報がプログラム不可能な状態である場合には、上記次のセクタと関連する上記ＥＣＣは、上記次のセクタ情報が破壊することを示し、上記コントローラデバイスは、エンド−オブ−ファイルを識別する、コントローラデバイスと、を含む。
【００２６】
本発明の実施形態は、簡単に言うと、情報のセクタを有するファイルを読み出すためのコマンドまたは書き込むためのコマンドを送信するホストを含むデジタル機器システムを含む。各セクタは、ビット、バイトまたはワードを基本としており、ビット毎、バイト毎またはワード毎に変更可能である。受信するように動作可能なホストがコマンドに応答する。デジタル機器は、コマンドに応答するコントローラデバイスと、ホストから受信されたコマンドに基づいて、整理された情報をセクタに格納する１回プログラム可能なメモリと、セクタを再書き込みするホストからのコマンドに基づいて、ビット毎、バイト毎またはワード毎に上述したセクタを再書き込みするコントローラデバイスとをさらに含む。
【００２７】
本発明の上述した目的および他の目的は、図面にあるいくつかの図を参考にする以下の好適な実施形態の詳細な説明から明らかになる。
【００２８】
【発明の実施の形態】
（好適な実施形態の詳細な説明）
図１を参照すると、ファイルシステムのレイアウト１０の実施例が、本発明の実施形態により、システム領域１２およびデータ領域１４を含むことが示される。システム領域１２は、データ領域１４に格納されるか、または、格納されることになる情報の整理に関連する情報を格納するために用いられる。
【００２９】
システム領域１２内には、オリジナルエンジニアリングマニュファクチャ（Ｏｒｉｇｉｎａｌ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｍａｎｕｆａｃｔｕｒｅ）（ＯＥＭ）識別／双方向入力／出力システム（Ｂｉｄｉｒｅｃｔｉｏｎａｌ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）（ＢＩＯＳ）を維持する領域１６と、ファイルアロケーションテーブル（Ｆｉｌｅ  Ａｌｌｏｃａｔｉｏｎ  Ｔａｂｌｅ）（ＦＡＴ）１を維持する領域１８と、ＦＡＴ２を維持する領域２０と、ルートディスクディレクトリ情報を維持する領域２２とが含まれ、ファイル領域を維持する領域２４が含まれる。領域１６〜２４全てが１回プログラム可能なメモリデバイス内に格納される。上述したように、このような１回プログラム可能なメモリは、１回プログラム可能なメモリデバイスの任意の所与の位置にて１回のみプログラミングされると、その後、再度、消去され、プログラミングされることができない。本発明により解決される、提示された課題は、システム領域１２内に格納され、読み出される情報を用いることによって、領域２４内に格納された情報またはデータを操作することである。
【００３０】
本発明の１実施形態において、図１のレイアウト１０を維持することは、ファイルシステム構造が一般にそのようなレイアウトを用いる場合に、従来技術のシステムの方法および教示物に対する本発明の方法および教示物の後方適合性を保証するために、かなり重要である。実際、ＤＯＳ適合ファイルシステム等の１タイプのファイルシステムは、図１のレイアウト１０のタイプに適合しなければならない。デジタルカメラ等のデジタル機器は、デジタル写真（またはファイル）を格納デバイスに格納するようにＤＯＳ構造ファイルシステムを用いる。
【００３１】
図１において、ＦＡＴ１およびＦＡＴ２は、ファイル領域２４が割り当てられる方法を示す。ルートディスクディレクトリは、固定数のディレクトリエントリを含む。ファイル領域２４は、データファイル（デジタルカメラの場合、これは、デジタル写真が維持される領域である）およびサブディレクトリおよびファイル領域２４への格納に利用可能な不使用データセクタを含む。これらの領域は、以下でさらに詳細に説明されるように、ホストによってアクセス可能なセクタのブロックに分割される。本発明の１実施形態において、これらの領域は、通常、媒体の容量に依存してサイズが固定される。ファイル領域２４のデータがクラスタに整理され、各クラスタは、セクタの１、２、４、８、１６または任意の他の整数等の所定数のセクタを含む。
【００３２】
ＦＡＴ１およびＦＡＴ２は、クラスタ毎に１エントリを含む。ＦＡＴの各エントリ内に、データが配置されるクラスタ内に次の位置を指し示すリンク値が格納される。これの実施例は図２に示されている。図２は、ＦＡＴのセクタの１セクタ内にあるＦＡＴエントリ３０の実施例を示す。位置３２〜４８のそれぞれは、図１のファイル領域２４内のクラスタを指し示す。例えば、「Ｆｉｌｅ１．ｔｘｔ」の始まりまたはスタート−オブ−ファイルであるファイルの位置３６にて、リンク値は、「０００３」であり、「０００３」は、Ｆｉｌｅ１．ｔｘｔでのファイル領域２４内のデータの次の位置が配置されるＦＡＴエントリ３０内の位置である。位置「０００３」または位置３８にて、リンク値は、次の位置等を指し示す「０００４」である。任意の他の値がエンド−オブ−ファイルを示すように用いられ得るが、Ｆｉｌｅ１．ｔｘｔのエンド−オブ−ファイルは、値「ＦＦＦＦ」が現れ、エンド−オブ−ファイルを示す位置４０に配置されている。始まりまたはスタート−オフ−「Ｆｉｌｅ２．ｔｘｔ」が位置４２に配置される。ここで、リンク値は、「０００６」であり、「０００６」は、エントリ３０内の次の位置を指し示し、「０００６」は、「０００７」を指し示し、最終的に「Ｆｉｌｅ２．ｔｘｔ」のエンド−オブ−ファイルを指し示す。値「００００」は、不使用のクラスタまたは利用可能なクラスタを指し示す。
【００３３】
本発明の１実施形態において、エンド−オブ−ファイルの識別は、パワーアップの間には重要である。すなわち、電力中断後およびパワーアップと同時に、システムは、システムがデジタル写真またはファイル等の新しい情報を格納できるかどうかを知らなければならない。このようにする場合、エンド−オブ−ファイルは、フラグまたは「ＦＦＦＦ」等の所定値によって識別され、エンド−オブ−ファイルが常駐する位置に続く位置が格納されることになる新しいファイルのスタート−オブ−ファイルに関する位置として識別される。
【００３４】
今日、用いられる従来技術のデジタルカメラにおいて、１回プログラム可能な不揮発性メモリデバイスが利用されず、再プログラミングのために消去可能な不揮発性メモリデバイスが利用され、各ファイルのサイズ（またはピクチャ）が異なるサイズであり、媒体またはメモリは、様々なピクチャサイズを説明するように、容易に変更され得る。ピクチャは、媒体に格納され、ＦＡＴ領域は、ピクチャ（またはファイル）がシステムに格納される度に更新される。したがって、ＦＡＴ１またはＦＡＴ２内の格納位置のグループであるセクタは、１以上のピクチャが媒体に格納される場合には、１回以上の変更が為される。従来技術の方法および技術では、１セクタが１ビットより多くおよび／または１バイトより多くの情報を含み、ピクチャが格納される場合、セクタの全てのビットまたはバイトが変更されずに、メモリまたは媒体内でセクタの情報全てを変更することを留意する。
【００３５】
しかし、本発明は、１回プログラム可能な不揮発性メモリデバイスにより、セクタは、ホストがセクタを更新するか、または、変更する毎に、消去され得ず、再プログラムされ得ない。したがって、本発明は、ホストが同じものを更新する毎のセクタの再プログラミングを避けなければならない。
【００３６】
これは、２つの異なる方法の１つの、本発明の方法および教示物によって達成される。第１に、媒体が本発明のファイルシステムに後方適合するため、コントローラデバイスは、論理アドレスと物理アドレスとの間の相関を保持することにより、ならびに、欠陥のあるブロックおよび１つ以上の情報のセクタを含むブロックのトラックを維持することにより、このタスクを達成するように利用される。論理アドレスは、コントローラによってアクセスされることになるセクタを識別するための、ホストが生成するアドレスである。物理アドレスは、１回プログラム可能な不揮発性メモリデバイス内のセクタを識別するアドレスである。
【００３７】
１回プログラム可能なデバイスの使用は、欠陥の可能性があるセクタ／ブロックを除く１対１の論理アドレスと物理アドレスとの間の関係を必要とする。本発明の１実施形態において、ピクチャが（またはファイル）が格納される場合、セクタ全体ではなく、ビット、バイトまたはワード（バイトまたはワードは、それぞれ１以上のビットである）がプログラミングされる。したがって、コントローラは、ホストによって書き込まれるように要求されるセクタ全体のトラックを維持し、ホストがファイルマネージャセクタ（図１に示されるＤＯＳ等のファイル管理システムの場合、ＦＡＴ１、ＦＡＴ２および／またはルートディスクディレクトリセクタ等）を変更するか、または、更新する場合、コントローラは、実際、媒体に実際に格納され、プログラミングされる（または書き込まれる）ことになる複数のセクタを比較し、書き込まれることになるセクタ内にて変更されるバイトを識別し、同じ物理的位置内に常駐し、変更される媒体内のこれらのビット、バイト、またはワードのみをプログラミングする。これは、おそらく、ブロック図を参照することによってよく理解される。
【００３８】
図３を参照すると、デジタル機器システム５０は、本発明の実施形態にしたがって、データバス５６を介してコントローラデバイス５４に接続されるホスト５２を含むことが示される。ホスト５２は、データバス５６を介して、コントローラデバイス５４にコマンドを与え、媒体または１回プログラム可能な不揮発性メモリ内にピクチャまたはファイルを格納し、その後、データバス５６を介して、再度、上述の情報を読み出すように要求し得る。
【００３９】
図３の、コントローラデバイス５４は、バッファ６０と、アドレスポインタ６２と、比較器６４と、バッファ６６と、アドレスポインタ６８と、媒体デバイス７０と、媒体デバイス７２と、マイクロプロセッサ７４と、レジスタ７６と、ランダムアクセスメモリ（ＲＡＭ）デバイス７８と、媒体状態機械８０とを含むことが示される。バッファ６０は、比較器６４に接続されることが示される。図示されるように、バッファ６６は、比較器６４に接続される。アドレスポインタ６２はまた、バッファ６０に接続されることが示され、アドレスポインタ６８は、バッファ６６に接続されることが示される。バッファはまた、媒体デバイス７０および７２に接続されることが示される。混同を避けるために図３に明確に示されていないが、マイクロプロセッサ７４は、コントローラデバイス５４内に示されたブロックを制御するプログラムを実行する。マイクロプロセッサ７４が実行するプログラムは、ＲＡＭデバイス７８内に常駐する。媒体状態機械８０は、媒体デバイス７０および７２のアドレス指定を部分的に制御する。バッファ６６は、媒体デバイス７０および７２に格納され、読み出されることになる情報を管理する。媒体デバイス７０および７２は、システム５０のアプリケーションに依存してピクチャおよびファイルを格納する、１回プログラム可能な不揮発性メモリデバイスである。
【００４０】
バッファ６０は、動作中、情報を読み出し、その情報を媒体デバイス７０および７２にプログラミングするためのコマンドをホスト５２から受信する。ホストがコントローラデバイス５４によってアクセスするためのコマンドを与える毎に、所定のセクタが、識別され、本明細書中で上述された論理的なアドレス指定を用いるアクセスが為される。図３のバッファ６０に格納される期間のいくつかの時点に存在する、このセクタ情報またはこのセクタ情報の派生を用いて、比較器は、ホストによって変更されるか、または、ホストによってアクセスされるセクタを、情報が以前に書き込まれたセクタと比較する。これは、バッファ６０の内容とバッファ６６の内容との、比較器６４による比較動作によって実行される。実際、この比較動作は、ビット毎、バイト毎またはワード毎に実行され、直に格納される情報によって変更される必要があるビット、バイトまたはワードのみが変更される。これは、ビット、バイトまたはワードのみが、セクタ全体でなく、変更されるので、部分的なプログラミングと呼ばれる。バッファ６６は、媒体デバイス７０および７２から情報を受信する。
【００４１】
部分的なプログラミングが限定される場合、図１のシステム領域１２に所定数の予備位置を保持することもまた可能である。この場合、これらのセクタは、コントローラによって予備セクタにマッピングされ得る。予備セクタの使用は、上述のように、論理アドレスと物理アドレスとの間の１対１の対応ではなく、マッピングするための実際のアドレスを提供する。また、ＤＯＳ等のファイルシステムに後方適合を提供するように、可変長が必須であるファイルが接続される。
【００４２】
新しいファイルマネージャが組み込まれ得る固体状態または１回プログラム可能な不揮発性デバイスを用いるデータ保存の他の形式において、コントローラ／ホストシステムは、アドレス指定のトラックと、欠陥ブロックのトラックと、スタート−オブ−ファイルおよびエンド−オブ−ファイル、次のファイルのスタート−オフ−ファイル等のファイル位置のトラックとを保持する必要がある。１つのシナリオでは、欠陥管理は、セクタまたはブロックを分解することにより、バイトまたはワードのレベルで達成され得る。セクタまたはブロックを分解したものがバイトまたはワードのように小さい場合、テーブルの形式でデータをマッピングする。データがマッピングされたテーブルにおいて、コントローラまたはホストは、欠陥のあるデータの位置が識別され、保存され、その結果、欠陥のあるデータは、プログラミング中に、スキップされ得る。欠陥を含むデータ構造の実施例は、図４に示される。
【００４３】
欠陥の処理が行われると、コントローラまたはホストは、欠陥位置を欠陥のない別の位置にマッピングする。スタート−オブ−ファイルおよびエンド−オブ−ファイルは、データが、例えば、ブロック０、１、２、３、４、．．．のような連続したフォーマット中にあるので、１回プログム可能媒体に識別され、その結果、記録される。スタート−オブ−ファイルおよびエンド−オブ−ファイルは記録され、欠陥ブロックは、簡単な識別子を用いることによって読み飛ばされ、例えば、フラグまたは所定の値またはアドレスのような欠陥ブロックを識別する。図５は、スタート−オブ−ファイルの位置８４、エンド−オブ−ファイルの位置８６、および欠陥セクタの位置８２を含むブロック構造８０の実施例を示す。欠陥セクタの位置８２は、いつセクタ０〜６に書き込まれる場合に、読み飛ばされる。欠陥セクタに書き込まれた情報は、代わりに、システム領域の予備領域中の位置に書き込まれる。
【００４４】
アドレス関係が一対一の場合、欠陥セクタ／ブロックの位置が予備の位置に置き換えられる場合、欠陥セクタ／ブロックは予備の位置を指し示し得る。このことは、欠陥のあるセクタ／ブロックが、書き直されたセクタ位置が記録され得るのに十分な使用可能なバイトを有することを必要とする。記録したアドレスの整合性の目的に対して、コントローラは一意的な方法を用いて、予備の位置に記録された値を保証すべきである。この方法は、複数の位置の欠陥セクタのアドレスをプログラミングし得、欠陥セクタがアクセスされるときには、欠陥セクタの複数の位置が比較され、書き直されたアドレスを確認する。
【００４５】
本発明の別の実施形態の実施例１００は、図６を参照して説明される。電力故障が生じると、１回プログム可能な不揮発性メモリのある位置内に格納されたいくつかのデータは、破壊され得る。電力が回復されると、システムは、壊れたデータを含むファイルが、無効なデータとして認識され、次のファイルが、電力故障によって不利に影響されなかった有効な位置に格納されるように、電力故障の発生を認識する必要がある。
【００４６】
システムは、特定のセクタが壊れたことを認識するために、特定のセクタに関する誤り訂正符号（ＥＣＣ）を調べ、ＥＣＣがその特定のセクタまたは特定のセクタの任意の部分が壊れたことを示す場合、次のセクタが読み出される。
【００４７】
さらに、システムは継続して、エンド−オブ−ファイルの識別子をチェックし、ファイルが適切に書き込まれたかどうかを判定して、ＥＣＣエラーが電力故障に関連したエラーではなく、拡大したエラー（単数または複数）に起因することを判定する。壊れたセクタの後に続く位置でスタート−オブ−ファイルの識別子がない場合、あるいは媒体の静止におけるエンド−オブ−ファイルがない場合、このような位置は、電力故障に起因する壊れたセクタとして認識され、その結果、ファイル中への、将来の、情報の格納を防ぐように指定され得る。
【００４８】
特定のセクタが、壊れたことを判定した場合、次のセクタは読み出され、次のセクタの全てがプログラム不可能な状態である場合（すなわち、全て０の状態または全て１の状態）、および／または次のセクタに関連したＥＣＣがエラーを示す場合、エンド−オブ−ファイルに到達したと判定される。代わりに、より十分にエンド−オブ−ファイルをチェックするために、次のセクタに続くセクタが読み出され、同様の判定が実施される。すなわち、セクタ内の全てのデータがプログラム可能な状態にあるかどうか、および／またはＥＣＣに関連したセクタは、エラーを示すかどうかが判定され、その判定の結果に基づいて、エンド−オブ−ファイルに到達したかどうかについて判定される。
【００４９】
さらに、媒体中に一つ以上の電力故障があると、一つ以上の壊れたセクタがあり得、従って、システムは、全ての位置を調べ、新しいファイルの開始位置および終了位置を確認しなければならない。システムは、予備領域において壊れたファイルのテーブルを維持し得る。故に、パワーアップ後、システムは、壊れたファイルを識別し、マッピングして、それにより、壊れたファイルが将来の格納に使用されることを防ぐ。
【００５０】
例示的に、図６において、スタート−オブ−ファイルは、１０２のセクタ０で指定され、従って、ファイルの残りのセクタは次のセクタ位置（例えば、セクタ１の位置１０４およびセクタ２の位置１０６）に格納される。しかし、次のセクタ位置（セクタ３の位置１０８）は、電力故障によって、不利に影響され、破壊される。従って、新しいファイルは、１１０からの始まりを格納される。
【００５１】
本発明は、本明細書の実施形態によって記載されるが、疑うことなく本発明の改変および変更が当業者にとって明白になることが予測される。従って、上掲の特許請求の範囲が本発明の真実の意図および範囲内に収まるように、全てのこのような改変および変更を包含するように解釈されることが意図される。
【００５２】
【発明の効果】
したがって、本発明は、１回プログラム可能な不揮発性メモリデバイスに格納され、読み出されるデジタル情報を管理するか、または操作するシステムおよび方法を提供することを可能にする。
【図面の簡単な説明】
【図１】図１は、本発明の実施形態によるファイルシステムのレイアウト１０の実施例を示す図である。
【図２】図２は、ＦＡＴエントリ３０の実施例を示す図である。
【図３】図３は、本発明の実施形態によるデジタル機器システム５０を示す図である。
【図４】図４は、本発明の実施形態に従う欠陥を含むデータ構造の実施例を示す図である。
【図５】図５は、本発明の実施形態によるブロック構造８０の実施例を示す図である。
【図６】図６は、本発明の別の実施形態の実施例を示す図である。
【符号の説明】
５２  ホスト
５４  コントロールデバイス
６０  バッファ
６２  アドレスポインタ
６４  比較器
６６  バッファ
６８  アドレスポインタ
７０  媒体
７２  媒体
７４  マイクロプロセッサ
７６  レジスタ
７８  ＲＡＭ
【図１】
0004268396.tif 000002
【図２】
0004268396.tif 000003
【図３】
0004268396.tif 000004
【図４】
0004268396.tif 000005
【図５】
0004268396.tif 000006
【図６】
0004268396.tif 000007