(57)【要約】【課題】NOR型フラッシュメモリに書き込まれているデータの更新にかかる時間を短縮することができるようにする。【解決手段】第１乃至第８のファイルデータから構成されるファイルを更新するためのデータとして、第１のファイルデータを更新したファイルデータと、第２のファイルデータを更新したファイルデータが新たに生成され、それらを更新前のファイルデータに換えて書き込むことによってファイルの更新が行われる場合、第１のファイルデータを更新したファイルデータと、第２のファイルデータを更新したファイルデータは、書き込み先となるクラスタがクラスタ１とクラスタ２とでセクタ内の連続した位置にあるから、１回の書き込み処理において続けてクラスタ１とクラスタ２に書き込まれ、ファイルの更新が行われる。本発明は、NOR型のフラッシュメモリを有する装置に適用することができる。【選択図】図３
2008071224.tif 000002
【特許請求の範囲】
【請求項１】
FATファイルシステムが構築されたNOR型フラッシュメモリを有する情報処理装置において、
前記NOR型フラッシュメモリに形成された１つのセクタに含まれる複数のクラスタのうち、所定のクラスタに書き込まれているデータを更新した更新後のデータを生成する生成手段と、
前記セクタに含まれる複数のクラスタのうちの前記所定のクラスタ以外のクラスタに書き込まれているデータを他のメモリに退避させた後に前記セクタに書き込まれている全てのデータを消去し、前記所定のクラスタが前記セクタ内の連続した位置にある複数のクラスタである場合、前記生成手段により生成された前記更新後のデータを、更新前のデータが書き込まれていたクラスタと同じクラスタに続けて書き込むとともに、前記他のメモリに退避させていたデータを、退避前に書き込まれていたクラスタと同じクラスタに書き込む書き込み手段と
を備える情報処理装置。
【請求項２】
FATファイルシステムが構築されたNOR型フラッシュメモリを有する情報処理装置の情報処理方法において、
前記NOR型フラッシュメモリに形成された１つのセクタに含まれる複数のクラスタのうち、所定のクラスタに書き込まれているデータを更新した更新後のデータを生成し、
前記セクタに含まれる複数のクラスタのうちの前記所定のクラスタ以外のクラスタに書き込まれているデータを他のメモリに退避させた後に前記セクタに書き込まれている全てのデータを消去し、前記所定のクラスタが前記セクタ内の連続した位置にある複数のクラスタである場合、生成した前記更新後のデータを、更新前のデータが書き込まれていたクラスタと同じクラスタに続けて書き込むとともに、前記他のメモリに退避させていたデータを、退避前に書き込まれていたクラスタと同じクラスタに書き込む
ステップを含む情報処理方法。
【請求項３】
FATファイルシステムが構築されたNOR型フラッシュメモリを有する情報処理装置の情報処理をコンピュータに実行させるプログラムにおいて、
前記NOR型フラッシュメモリに形成された１つのセクタに含まれる複数のクラスタのうち、所定のクラスタに書き込まれているデータを更新した更新後のデータを生成し、
前記セクタに含まれる複数のクラスタのうちの前記所定のクラスタ以外のクラスタに書き込まれているデータを他のメモリに退避させた後に前記セクタに書き込まれている全てのデータを消去し、前記所定のクラスタが前記セクタ内の連続した位置にある複数のクラスタである場合、生成した前記更新後のデータを、更新前のデータが書き込まれていたクラスタと同じクラスタに続けて書き込むとともに、前記他のメモリに退避させていたデータを、退避前に書き込まれていたクラスタと同じクラスタに書き込む
ステップを含むプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、およびプログラムに関し、特に、NOR型フラッシュメモリに書き込まれているデータの更新にかかる時間を短縮することができるようにした情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
NAND型フラッシュメモリより１回の読み出しの対象となるデータの量が小さく、データの読み出しが容易であることなどから、装置の起動時に実行されるプログラムコードなどの各種のデータの記録媒体としてNOR型フラッシュメモリが用いられることがある。
【０００３】
起動時に実行するプログラムコードがNOR型フラッシュメモリに書き込まれていることにより、CPU(Central Processing Unit)は、起動時に実行するプログラムコードをNOR型フラッシュメモリから直接読み出すことができ、NAND型フラッシュメモリに書き込まれているプログラムコードをRAM(Random Access Memory)に１度展開し、それを実行することによって起動する場合に較べて、装置の起動を容易に行うことができる。
【０００４】
特許文献１には、電源の遮断などのトラブルが発生したときにFAT(File Allocation Table)が破壊されることを防ぐことができるようにした技術が開示されている。
【特許文献１】特開２００５−６０３４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
NOR型フラッシュメモリ上に構築されたFATファイルシステムによってファイルを管理する場合、FATファイルシステムにおけるクラスタのサイズよりも、NOR型フラッシュメモリに形成された記録領域の単位であるセクタのサイズの方が大きいことが多いため、NOR型フラッシュメモリにおいては、１つのセクタの中に、複数のクラスタが含まれるといった状況になることがある。
【０００６】
通常、ファイルの更新は、それを構成するクラスタ単位のデータであるファイルデータを更新することによって行われるため、更新の対象となるファイルが例えば第１乃至第８の８つのファイルデータから構成され、それらを全て更新することによってファイルの更新を行うものとすると、ファイル全体の更新は、セクタ全体の消去と、セクタ全体の書き込みがそれぞれ８回行われることによって実現される。
【０００７】
すなわち、８つのファイルデータのうちの第１のファイルデータの更新時には、１度、セクタ全体が消去された後、更新後の第１のファイルデータが書き込まれるとともに、RAMなどに退避されていた、更新前の第２乃至第８のファイルデータがそれぞれ書き込まれる。
【０００８】
続けて、第２のファイルデータの更新時には、再度、セクタ全体が消去された後、更新後の第２のファイルデータが書き込まれるとともに、RAMなどに退避されていた、更新後の第１のファイルデータと更新前の第３乃至第８のファイルデータがそれぞれ書き込まれる。
【０００９】
同様に、第３のファイルデータの更新時には、再度、セクタ全体が消去された後、更新後の第３のファイルデータが書き込まれるとともに、RAMなどに退避されていた、更新後の第１、第２のファイルデータと更新前の第４乃至第８のファイルデータがそれぞれ書き込まれる。
【００１０】
ファイル全体の更新は、更新後の第８のファイルデータが書き込まれるまで、このような処理が繰り返されることによって実現される。従って、ファイルを構成するファイルデータの数が多いときには、それだけ時間もかかってしまうことになる。
【００１１】
本発明はこのような状況に鑑みてなされたものであり、NOR型フラッシュメモリに書き込まれているデータの更新にかかる時間を短縮することができるようにするものである。
【課題を解決するための手段】
【００１２】
本発明の一側面の情報処理装置は、FATファイルシステムが構築されたNOR型フラッシュメモリを有する情報処理装置において、前記NOR型フラッシュメモリに形成された１つのセクタに含まれる複数のクラスタのうち、所定のクラスタに書き込まれているデータを更新した更新後のデータを生成する生成手段と、前記セクタに含まれる複数のクラスタのうちの前記所定のクラスタ以外のクラスタに書き込まれているデータを他のメモリに退避させた後に前記セクタに書き込まれている全てのデータを消去し、前記所定のクラスタが前記セクタ内の連続した位置にある複数のクラスタである場合、前記生成手段により生成された前記更新後のデータを、更新前のデータが書き込まれていたクラスタと同じクラスタに続けて書き込むとともに、前記他のメモリに退避させていたデータを、退避前に書き込まれていたクラスタと同じクラスタに書き込む書き込み手段とを備える。
【００１３】
本発明の一側面の情報処理方法またはプログラムは、NOR型フラッシュメモリに形成された１つのセクタに含まれる複数のクラスタのうち、所定のクラスタに書き込まれているデータを更新した更新後のデータを生成し、前記セクタに含まれる複数のクラスタのうちの前記所定のクラスタ以外のクラスタに書き込まれているデータを他のメモリに退避させた後に前記セクタに書き込まれている全てのデータを消去し、前記所定のクラスタが前記セクタ内の連続した位置にある複数のクラスタである場合、生成した前記更新後のデータを、更新前のデータが書き込まれていたクラスタと同じクラスタに続けて書き込むとともに、前記他のメモリに退避させていたデータを、退避前に書き込まれていたクラスタと同じクラスタに書き込むステップを含む。
【００１４】
本発明の一側面においては、NOR型フラッシュメモリに形成された１つのセクタに含まれる複数のクラスタのうち、所定のクラスタに書き込まれているデータを更新した更新後のデータが生成され、前記セクタに含まれる複数のクラスタのうちの前記所定のクラスタ以外のクラスタに書き込まれているデータが他のメモリに退避された後に前記セクタに書き込まれている全てのデータが消去される。また、前記所定のクラスタが前記セクタ内の連続した位置にある複数のクラスタである場合、生成された前記更新後のデータが、更新前のデータが書き込まれていたクラスタと同じクラスタに続けて書き込まれるとともに、前記他のメモリに退避されていたデータが、退避前に書き込まれていたクラスタと同じクラスタに書き込まれる。
【発明の効果】
【００１５】
本発明の一側面によれば、NOR型フラッシュメモリに書き込まれているデータの更新にかかる時間を短縮することができる。
【発明を実施するための最良の形態】
【００１６】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。従って、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外には対応しないものであることを意味するものでもない。
【００１７】
本発明の一側面の情報処理装置（例えば、図１の記録再生装置１）は、FATファイルシステムが構築されたNOR型フラッシュメモリを有する情報処理装置において、前記NOR型フラッシュメモリに形成された１つのセクタに含まれる複数のクラスタのうち、所定のクラスタに書き込まれているデータを更新した更新後のデータを生成する生成手段（例えば、図４の書き込みデータ生成部３１）と、前記セクタに含まれる複数のクラスタのうちの前記所定のクラスタ以外のクラスタに書き込まれているデータを他のメモリに退避させた後に前記セクタに書き込まれている全てのデータを消去し、前記所定のクラスタが前記セクタ内の連続した位置にある複数のクラスタである場合、前記生成手段により生成された前記更新後のデータを、更新前のデータが書き込まれていたクラスタと同じクラスタに続けて書き込むとともに、前記他のメモリに退避させていたデータを、退避前に書き込まれていたクラスタと同じクラスタに書き込む書き込み手段（例えば、図４の書き込み制御部３２）とを備える。
【００１８】
本発明の一側面の情報処理方法またはプログラムは、NOR型フラッシュメモリに形成された１つのセクタに含まれる複数のクラスタのうち、所定のクラスタに書き込まれているデータを更新した更新後のデータを生成し、前記セクタに含まれる複数のクラスタのうちの前記所定のクラスタ以外のクラスタに書き込まれているデータを他のメモリに退避させた後に前記セクタに書き込まれている全てのデータを消去し、前記所定のクラスタが前記セクタ内の連続した位置にある複数のクラスタである場合、生成した前記更新後のデータを、更新前のデータが書き込まれていたクラスタと同じクラスタに続けて書き込むとともに、前記他のメモリに退避させていたデータを、退避前に書き込まれていたクラスタと同じクラスタに書き込むステップ（例えば、図５のステップＳ４）を含む。
【００１９】
以下、本発明の実施の形態について図を参照して説明する。
【００２０】
図１は、本発明の一実施形態に係る記録再生装置１のハードウェア構成例を示すブロック図である。
【００２１】
記録再生装置１は、BS(Broadcasting Satellite)／CS(Communications Satellite)デジタルテレビジョン放送、地上波デジタルテレビジョン放送、またはインターネットを介した放送によって提供される番組を受信し、受信した番組の映像や音声を、ケーブルなどを介して接続されるTV（テレビジョン受像機）から出力させる機能を有する装置である。記録再生装置１には、ハードディスクなどの記録媒体も内蔵されており、そこに番組のデータを記録（録画）することができるようになされている。
【００２２】
図１に示されるように、記録再生装置１は、CPU(Central Processing Unit)１１、RAM(Random Access Memory)１２、フラッシュメモリ１３、ハードディスク１４、バス１５、チューナ１６、復調器１７、TSデコーダ１８、AV(Audio Visual)デコーダ１９、MUX(multiplexer)２０，２１、および、表示コントローラ２２から構成される。
【００２３】
CPU１１は、フラッシュメモリ１３に記憶されたプログラムや、ハードディスク１４からRAM１２にロードされたプログラムを実行し、バス１５を介して接続される各部の動作を制御する。
【００２４】
RAM１２は、CPU１１によって実行されるプログラムや、プログラムの実行に必要な一時的なデータなどを記憶する。
【００２５】
フラッシュメモリ１３はNOR型のフラッシュメモリであり、RAM１２にロードされることなくCPU１１により直接読み出され、実行されるプログラムコードや、ユーザにより設定された録画予約の内容を表すファイルなどの各種のデータを記憶する。
【００２６】
ハードディスク１４は、TSデコーダ１８からバス１５を介して供給された、録画の対象になっている番組のデータやEPG(Electronic Program Guide)を記録する。
【００２７】
チューナ１６は、CPU１１による制御に従って、アンテナからの放送信号を受信し、受信信号を復調器１７に出力する。
【００２８】
復調器１７は、チューナ１６から供給された受信信号を復調し、所定のチャンネルで放送されるトランスポートストリームをTSデコーダ１８に出力する。
【００２９】
TSデコーダ１８は、CPU１１による制御に従って、復調器１７から供給されたトランスポートストリームから所定のストリームを抽出し、抽出したストリームを構成するパケットをバス１５上に、または、AVデコーダ１９に出力する。バス１５上に出力されたパケット（番組のデータ）はハードディスク１４に供給され、記録される。TSデコーダ１８により得られたEPGも、適宜、ハードディスク１４に供給され、記録される。
【００３０】
AVデコーダ１９は、TSデコーダ１８から供給されたビデオパケットとオーディオパケットをデコードし、デコードして得られたオーディオデータをMUX２０に、ビデオデータをMUX２１にそれぞれ出力する。また、AVデコーダ１９は、録画済みの番組のデータがハードディスク１４から読み出され、供給されたとき、それをデコードし、デコードして得られたオーディオデータをMUX２０に、ビデオデータをMUX２１にそれぞれ出力する。
【００３１】
MUX２０は、AVデコーダ１９から供給されたオーディオデータとCPU１１から供給されたデータに基づいて、対応する音声をTVのスピーカから出力させる。
【００３２】
MUX２１は、AVデコーダ１９から供給されたビデオデータと表示コントローラ２２から供給されたビデオデータに基づいて、番組の映像などをTVに表示させる。表示コントローラ２２からは、例えば、録画済みの番組のリストの表示に用いられるデータが供給される。
【００３３】
表示コントローラ２２は、CPU１１による制御に従って、TVに表示させる画像のデータを生成し、生成したデータをMUX２１に出力する。
【００３４】
図２は、図１のフラッシュメモリ１３の記録領域の例を示す図である。
【００３５】
フラッシュメモリ１３には複数のセクタが形成されており、図２にはそのうちの１つのセクタが示されている。１つのセクタは６４kbyteなどの所定のサイズ（容量）を有する。
【００３６】
図２の例においては、FATファイルシステムにおけるクラスタのサイズよりもセクタのサイズの方が大きいことから、複数のクラスタを含む形で１つのセクタが形成されている。図２に示されるセクタには、クラスタ１乃至ｎのｎ個のクラスタが含まれている。
【００３７】
あるファイルをこのようなセクタに書き込む場合、書き込みの対象とするファイルを構成するクラスタ単位のデータであるファイルデータが生成され、生成されたそれぞれのファイルデータに対して、例えばセクタの先頭の位置にあるものから順に、書き込み先とするクラスタが割り当てられる。
【００３８】
例えば、書き込みの対象とするファイルが第１乃至第８のファイルデータから構成される場合、第１のファイルデータに対しては、クラスタ１が書き込み先のクラスタとして割り当てられ、第２のファイルデータに対しては、クラスタ２が書き込み先のクラスタとして割り当てられる。第３乃至第８のファイルデータに対しても、それぞれ、クラスタ３乃至８が書き込み先のクラスタとして割り当てられる。書き込み先のクラスタが割り当てられたファイルデータは、割り当てられた直後などの所定のタイミングでそれぞれのクラスタに順次書き込まれる。
【００３９】
このようにしてセクタに書き込まれたファイルの更新は、更新前のファイルデータに換えて、新たに生成された更新後のファイルデータが、更新前のファイルデータが書き込まれていたクラスタと同じクラスタに書き込まれることによって行われる。
【００４０】
例えば、図２のセクタのクラスタ１乃至８に第１乃至第８のファイルデータが書き込まれており、その第１乃至第８のファイルデータから構成されるファイルを更新するためのデータとして、第１のファイルデータを更新したファイルデータが新たに生成され、それによってファイルの更新を行う場合、更新の対象にならない第２乃至第８のファイルデータがRAM１２などの他のメモリに退避された後、図２のセクタに書き込まれているデータ全体は１度消去される。
【００４１】
NOR型フラッシュメモリには、データの消去はセクタ単位で行わなければならないといった制約があることから、あるファイルを更新する場合、更新の対象とするファイルデータが書き込まれているクラスタとともに、同じセクタのクラスタを、仮に、そのクラスタに更新の対象になっていないファイルデータが書き込まれているときであっても一旦消去する必要がある。
【００４２】
セクタに書き込まれているデータ全体が消去された後、更新後の第１のファイルデータが、更新前の第１のファイルデータが書き込まれていたクラスタと同じクラスタであるクラスタ１に書き込まれるとともに、他のメモリに退避されていた第２乃至第８のファイルデータが、それぞれ、退避前に書き込まれていたクラスタと同じクラスタであるクラスタ２乃至８に順次書き込まれ、これにより、ファイルの更新が行われる。
【００４３】
また、第１乃至第８のファイルデータから構成されるファイルを更新するためのデータとして、第１のファイルデータを更新したファイルデータと、第３のファイルデータを更新したファイルデータが新たに生成され、それによってファイルの更新を行う場合、上述したようにして第１乃至第８のファイルデータがそれぞれクラスタ１乃至８に書き込まれているものとすると、第１のファイルデータを更新したファイルデータと、第３のファイルデータを更新したファイルデータは、書き込み先となるクラスタが、クラスタ１とクラスタ３とでセクタ内の連続した位置にないから、記録再生装置１においては、１つのファイルデータを書き込む場合と同様の処理が２回繰り返されることによって、それぞれクラスタ１とクラスタ３に書き込まれ、ファイルの更新が行われる。
【００４４】
すなわち、先に、第１のファイルデータだけが更新の対象となり、このタイミングでは更新の対象とならない第２乃至第８のファイルデータが他のメモリに退避された後、図２のセクタに書き込まれているデータ全体が１度消去される。
【００４５】
セクタに書き込まれているデータ全体が消去された後、更新後の第１のファイルデータが、更新前の第１のファイルデータが書き込まれていたクラスタと同じクラスタであるクラスタ１に書き込まれるとともに、他のメモリに退避されていた第２乃至第８のファイルデータが、それぞれ、退避前に書き込まれていたクラスタと同じクラスタであるクラスタ２乃至８に順次書き込まれ、これにより、第１のファイルデータだけ、更新が行われる。
【００４６】
第１のファイルデータの更新が行われた後、次に、第３のファイルデータが更新の対象となり、このタイミングでは更新の対象とならない、更新後の第１のファイルデータ、第２のファイルデータ、第４乃至第８のファイルデータが他のメモリに退避された後、図２のセクタに書き込まれているデータ全体が１度消去される。
【００４７】
セクタに書き込まれているデータ全体が消去された後、他のメモリに退避されていた更新後の第１のファイルデータが、退避前に書き込まれていたクラスタと同じクラスタであるクラスタ１に書き込まれ、同様に、他のメモリに退避されていた第２のファイルデータが、退避前に書き込まれていたクラスタと同じクラスタであるクラスタ２に書き込まれる。
【００４８】
また、更新後の第３のファイルデータが、更新前の第３のファイルデータが書き込まれていたクラスタと同じクラスタであるクラスタ３に書き込まれるとともに、他のメモリに退避されていた第４乃至第８のファイルデータが、それぞれ、退避前に書き込まれていたクラスタと同じクラスタであるクラスタ４乃至８に順次書き込まれ、これにより、第１のファイルデータと第３のファイルデータの更新が行われる。
【００４９】
このように、記録再生装置１においては、更新の対象になる複数のファイルデータの書き込み先となるクラスタがセクタ内の連続した位置にない場合、更新後のファイルデータが１つずつ注目され、セクタに書き込まれているデータ全体の消去処理（ファイルデータの退避を含む）、更新後のファイルデータと退避しておいたファイルデータの書き込み処理が繰り返されることによってファイルの更新が行われる。
【００５０】
一方、更新の対象になる複数のファイルデータの書き込み先となるクラスタがセクタ内の連続した位置にある場合、記録再生装置１においては、更新後のファイルデータがまとめて注目され、セクタに書き込まれているデータ全体の消去処理、複数の更新後のファイルデータと退避しておいたファイルデータの書き込み処理が行われることによってファイルの更新が行われる。
【００５１】
例えば、第１乃至第８のファイルデータから構成されるファイルを更新するためのデータとして、第１のファイルデータを更新したファイルデータと、第２のファイルデータを更新したファイルデータが新たに生成され、それによってファイルの更新を行う場合、上述したようにして第１乃至第８のファイルデータがそれぞれクラスタ１乃至８に書き込まれているものとすると、第１のファイルデータを更新したファイルデータと、第２のファイルデータを更新したファイルデータは、書き込み先となるクラスタが、クラスタ１とクラスタ２とでセクタ内の連続した位置にあるから、図３に示されるように、１回の書き込み処理において続けてクラスタ１とクラスタ２にそれぞれ書き込まれ、ファイルの更新が行われる。
【００５２】
すなわち、新たに生成された、第１のファイルデータを更新したファイルデータと、第２のファイルデータを更新したファイルデータを更新前のファイルデータに換えてセクタに書き込むことによってファイルの更新を行う場合、更新の対象にならない第３乃至第８のファイルデータが他のメモリに退避された後、図２のセクタに書き込まれているデータ全体は１度消去される。
【００５３】
セクタに書き込まれているデータ全体が消去された後、更新後の第１のファイルデータが、更新前の第１のファイルデータが書き込まれていたクラスタと同じクラスタであるクラスタ１に書き込まれ、続けて、更新後の第２のファイルデータが、更新前の第２のファイルデータが書き込まれていたクラスタと同じクラスタであるクラスタ２に書き込まれる。また、他のメモリに退避されていた第３乃至第８のファイルデータが、それぞれ、退避前に書き込まれていたクラスタと同じクラスタであるクラスタ３乃至８に順次書き込まれ、これにより、ファイルの更新が行われる。
【００５４】
このように、更新後のファイルデータの書き込み先となるクラスタがセクタ内の連続した位置にある場合、１回の書き込み処理において、更新後のファイルデータが書き込み先のクラスタに続けて書き込まれるようにすることにより、セクタ全体の消去の回数を減らすことができ、ファイルの更新にかかる時間を短縮することができる。
【００５５】
例えば、１つのセクタを構成する全てのクラスタに書き込まれているファイルデータを更新することによってファイルの更新を行う場合、更新後のファイルデータの書き込み先となるクラスタがセクタ内の連続した位置にあるときであっても１つの更新後のファイルデータを書き込む毎に、セクタ全体の消去処理と、それぞれのファイルデータの書き込み処理を行うものとすると、ファイルの更新にかかる時間は、「（１セクタ上のクラスタ数）×（退避にかかる時間を含む、セクタ全体の消去にかかる時間＋セクタ全体の書き込みにかかる時間）」となる。
【００５６】
これに対し、更新後のファイルデータの書き込み先となるクラスタがセクタ内の連続した位置にあるときには上述したようにして続けて書き込みを行うものとすると、ファイルの更新にかかる時間は、「（退避にかかる時間を含む、セクタ全体の消去にかかる時間＋セクタ全体の書き込みにかかる時間）」だけで済むことになる。FATファイルシステムにおけるファイルの書き込みは、論理的に連続した領域に対してしか行われないため、ファイルの更新に際して、１セクタ全体の消去処理と書き込み処理は１回ずつ行われるようにするだけで済むことになる。
【００５７】
これにより、ファイルの更新にかかる時間を短縮することが可能となる。NOR型のフラッシュメモリであるフラッシュメモリ１３の１つのセクタのサイズは比較的大きいことから、１つのセクタを消去するのにも時間がかかり、ファイルの更新時にセクタ全体の消去を何回も行うものとすると時間がかかりすぎることになるから、１セクタ全体を消去する回数を抑えることは特に重要になる。
【００５８】
また、データの消去／書き込みの回数を抑えることができるため、フラッシュメモリ１３の寿命を延ばすこともできる。
【００５９】
以上のようにしてフラッシュメモリ１３に記憶されているファイルを更新する記録再生装置１の処理についてはフローチャートを参照して後述する。
【００６０】
図４は、記録再生装置１の機能構成例を示すブロック図である。図４に示す機能部のうちの少なくとも一部は、図１のCPU１１により所定のプログラムが実行されることによって実現される。
【００６１】
図４に示されるように、記録再生装置１においては、書き込みデータ生成部３１と書き込み制御部３２が実現される。
【００６２】
書き込みデータ生成部３１は、フラッシュメモリ１３に記憶させるファイルを構成するクラスタ単位のファイルデータを生成し、生成したファイルデータを書き込み制御部３２に出力する。
【００６３】
また、書き込みデータ生成部３１は、ファイルの更新を行うとき、そのファイルを構成するファイルデータのうちの所定のファイルデータを更新し、更新後のファイルデータを書き込み制御部３２に出力する。
【００６４】
書き込み制御部３２は、書き込みデータ生成部３１から供給されたファイルデータに対して書き込み先となるクラスタを割り当て、割り当てたクラスタにファイルデータを書き込む。
【００６５】
また、書き込み制御部３２は、ファイルの更新を行うとき、セクタに書き込まれているデータ全体の消去処理、更新後のファイルデータと退避させていたファイルデータの書き込み処理を行う。
【００６６】
ここで、図５のフローチャートを参照して、ファイルを更新する記録再生装置１の処理について説明する。
【００６７】
ステップＳ１において、書き込みデータ生成部３１は、フラッシュメモリ１３に記憶されているファイルを構成するファイルデータのうちの所定のファイルデータを更新し、更新後のファイルデータを書き込み制御部３２に出力する。
【００６８】
ステップＳ２において、書き込み制御部３２は、更新の対象にならないファイルデータをRAM１２などの他のメモリに退避し、ステップＳ３に進み、セクタに書き込まれているデータ全体を消去する。
【００６９】
ステップＳ４において、書き込み制御部３２は、書き込みデータ生成部３１により生成され、供給された複数の更新後のファイルデータの書き込み先とするクラスタが、クラスタ１とクラスタ２といったように１つのセクタ内の連続した位置にあるクラスタである場合、それらの更新後のファイルデータを、続けて、書き込みとして割り当てたクラスタに書き込むとともに、他のメモリに退避させておいたファイルデータを、それぞれ、退避前に書き込まれていたクラスタと同じクラスタに順次書き込み、処理を終了させる。
【００７０】
これにより、１回の書き込み処理において、複数の更新後のファイルデータが続けて書き込まれることになり、セクタ全体の消去の回数を減らすことができ、ファイルの更新にかかる時間を短縮することができる。
【００７１】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【００７２】
図６は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。
【００７３】
CPU５１は、ROM５２、または記憶部５８に記憶されているプログラムに従って各種の処理を実行する。RAM５３には、CPU５１が実行するプログラムやデータなどが適宜記憶される。これらのCPU５１、ROM５２、およびRAM５３は、バス５４により相互に接続されている。
【００７４】
CPU５１にはまた、バス５４を介して入出力インタフェース５５が接続されている。入出力インタフェース５５には、キーボード、マウス、マイクロホンなどよりなる入力部５６、ディスプレイ、スピーカなどよりなる出力部５７が接続されている。CPU５１は、入力部５６から入力される指令に対応して各種の処理を実行する。そして、CPU５１は、処理の結果を出力部５７に出力する。
【００７５】
入出力インタフェース５５に接続されている記憶部５８は、例えばハードディスクからなり、CPU５１が実行するプログラムや各種のデータを記憶する。通信部５９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【００７６】
入出力インタフェース５５に接続されているドライブ６０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア６１が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部５８に転送され、記憶される。
【００７７】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図６に示すように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory)，DVD(Digital Versatile Disc)を含む）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア６１、または、プログラムが一時的もしくは永続的に格納されるROM５２や、記憶部５８を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部５９を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【００７８】
なお、本明細書において、プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【００７９】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【００８０】
【図１】本発明の一実施形態に係る記録再生装置のハードウェア構成例を示すブロック図である。
【図２】フラッシュメモリの記録領域の例を示す図である。
【図３】フラッシュメモリの記録領域の例を示す図である。
【図４】記録再生装置の機能構成例を示すブロック図である。
【図５】記録再生装置のファイル更新処理について説明するフローチャートである。
【図６】パーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【００８１】
１  記録再生装置，  １１  CPU，  １２  RAM，  １３  フラッシュメモリ，  １４  ハードディスク，  １５  バス，  １６  チューナ，  １７  復調器，  １８  TSデコーダ，  １９  AVデコーダ，  ２０，２１  MUX，  ２２  表示コントローラ，  ３１  書き込みデータ生成部，  ３２  書き込み制御部
【図１】
2008071224.tif 000003
【図２】
2008071224.tif 000004
【図３】
2008071224.tif 000005
【図４】
2008071224.tif 000006
【図５】
2008071224.tif 000007
【図６】
2008071224.tif 000008