(57)【要約】【課題】例えばフラッシュメモリのような記録媒体において、ＴＯＣエリアのように、予め定められたアドレス順序で、予め定められた内容のデータが書き込まれるようにされる記録領域に対して、書き込み処理速度を高速化する。【解決手段】データ群毎の書き込み指示に対して、それぞれのデータ群が、所定のメモリ領域において書き込まれるべき本来アドレス位置を、メモリ領域においてアドレス順となる変換アドレス位置に変換することにより、所定のメモリ領域において、データ群毎の書き込みを順次に行なうようにする。本来アドレス位置と変換アドレス位置との対応関係を示す情報を、データ群毎の読み出しのために保持する。【選択図】        図１
2004252746.tif 000002
【特許請求の範囲】
【請求項１】
書き込みは予め定められたデータ数のデータ群ごとに、アドレス順になされる必要がある記録媒体において、予め定められたアドレス順序で、予め定められた内容のデータが書き込まれるようにされた所定のメモリ領域に対する記録制御方法であって、
前記データ群毎の書き込み指示に対して、それぞれの前記データ群が、前記所定のメモリ領域において本来書き込まれるべき本来アドレス位置を、前記所定のメモリ領域においてアドレス順となる変換アドレス位置に変換することにより、前記所定のメモリ領域において、前記データ群毎の書き込みを順次に行なうようにすると共に、
前記本来アドレス位置と前記変換アドレス位置との対応関係を示す情報を保持する
ことを特徴とする記録媒体の記録制御方法。
【請求項２】
請求項１記載の記録媒体の記録制御方法において、
前記本来アドレス位置と前記変換アドレス位置との対応関係を示す情報は、前記所定のメモリ領域内に書き込む
ことを特徴とする記録媒体の記録制御方法。
【請求項３】
請求項１に記載の記録媒体の記録制御方法において、
前記本来アドレス位置と前記変換アドレス位置との対応関係を示す情報は、前記所定のメモリ領域内において固定のアドレス位置に書き込む
ことを特徴とする記録媒体の記録制御方法。
【請求項４】
請求項１、請求項２または請求項３に記載の記録媒体の記録制御方法において、
前記本来アドレス位置と前記変換アドレス位置との対応関係を示す情報は、テーブル情報である
ことを特徴とする記録媒体の記録制御方法。
【請求項５】
請求項１に記載の記録媒体の記録制御方法において、
前記本来アドレス位置と前記変換アドレス位置との対応関係を示す情報は、前記データ群毎のデータ内に含められた、前記所定のメモリ領域における前記本来のアドレス位置を特定するための情報である
ことを特徴とする記録媒体の記録制御方法。
【請求項６】
書き込みは予め定められたデータ数のデータ群ごとに、アドレス順になされる必要がある記録媒体において、予め定められたアドレス順序で、予め定められた内容のデータが書き込まれるようにされた所定のメモリ領域に対する記録制御装置であって、
前記データ群毎の書き込み指示を受けたときに、前記メモリ領域における前回の書き込みアドレス位置に対してアドレス順となる変換アドレス位置を求める変換アドレス位置検出手段と、
前記変換アドレス位置検出手段で求められた変換アドレス位置と、それぞれの前記データ群が、本来前記所定のメモリ領域において書き込まれるべき本来アドレス位置との関係を示す情報を形成する対応関係情報形成手段と、
前記変換アドレス位置検出手段で求められた変換アドレス位置において、前記所定のメモリ領域にデータを書き込むデータ書き込み手段と、
前記データ書き込み手段で前記データが書き込まれた後、前記所定のメモリ領域への書き込みが終了するまで、前記変換アドレス位置検出手段と、前記対応関係情報形成手段と、前記データ書き込み手段を繰り返すように制御する制御手段と、
を備えることを特徴とする記録媒体の記録制御装置。
【請求項７】
請求項６に記載の記録媒体の記録制御装置において、
前記対応関係情報形成手段で形成された情報を、前記所定のメモリ領域内に書き込む手段を備える
ことを特徴とする記録媒体の記録制御装置。
【請求項８】
請求項６に記載の記録媒体の記録制御装置において、
前記対応関係情報形成手段で形成された情報を、前記所定のメモリ領域内において固定のアドレス位置に書き込む手段を備える
ことを特徴とする記録媒体の記録制御装置。
【請求項９】
請求項６、請求項７または請求項８に記載の記録媒体の記録制御装置において、
前記対応関係情報形成手段で形成された情報は、テーブル情報である
ことを特徴とする記録媒体の記録制御装置。
【請求項１０】
請求項６に記載の記録媒体の記録制御装置において、
前記対応関係情報形成手段は、前記データ群毎のデータ内に、前記所定のメモリ領域における前記本来のアドレス位置を特定するための情報を含めるようにする
ことを特徴とする記録媒体の記録制御装置。
【請求項１１】
請求項６〜請求項１０のいずれかに記載の記録媒体の記録制御装置を備える電子機器。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、例えばフラッシュメモリなどの記録媒体の、特に、ＴＯＣ（Ｔａｂｌｅ  ｏｆ  Ｃｏｎｔｅｎｔｓ）エリアの書き込み制御に適用して好適な記録制御方法および装置に関する。
【０００２】
【従来の技術】
ＮＡＮＤ型フラッシュメモリで取り扱う記録データの構成は、例えば図１４に示すようなものとされており、ページと呼ばれる小ブロック単位でデータの読み書きが行なわれ、このページの複数個からなるブロックと呼ばれる大ブロック単位でデータの消去がなされるようになっている。
【０００３】
１ページは、例えば、５１２バイトのデータエリアと、１６バイトのスペアエリア（冗長部）とから構成される。１６バイトのスペアエリアのうちの４バイトは、エラー検出訂正用のＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  Ｃｏｄｅ）として使用される。
【０００４】
このフラッシュメモリの読み書きの制御方法は、例えば特許文献１（特開２０００−３１１０４号公報）に記載されているようなものとされている。
【０００５】
フラッシュメモリの読み書きを制御する記録制御装置は、ブロック単位で、フラッシュメモリのどの物理アドレスにデータを書き込んだかを、論理アドレスにより管理するようにしており、このため、上記記録制御装置は、ブロック単位で、フラッシュメモリの物理アドレスと論理アドレスとの変換を行なうための論理物理アドレス変換テーブルを備える。上記記録制御装置は、この論理物理アドレス変換テーブルを用いて、フラッシュメモリのアドレス制御を行なう。
【０００６】
この場合、論理アドレスは、各ページのスペアエリアに書き込まれる。また、スペアエリアには、当該論理アドレスのブロックへの書き込みが行なわれている最中であるか否かを示す更新中フラグが含まれる。更新中フラグは、書き込みが行なわれているときには、オン（「０」）にされ、書き込み中でなければ、オフ（「１」）である。
【０００７】
次に、ＮＡＮＤ型フラッシュメモリにおけるページ単位のデータの書き込み動作について説明する。この場合に、ＮＡＮＤ型フラッシュメモリは、書き込み対象ブロックおよび書き込み対象ページは、ランダムに決定することができるが、同一ブロック内での書き込み処理手順においては、アドレス番号の先頭のページから、アドレス順に従って行なわなければならないという制約がある。つまり、同一ブロック内では、アドレスの小さいページから順番に書き込む必要がある。このため、従来は、ページ単位の書き込みであっても、当該書き込み対象ページを含むブロック単位で書き込み動作を行なうようにしている。
【０００８】
図１５は、このページ単位のデータの書き込み動作の概要を説明するための図である。
【０００９】
すなわち、あるブロック中の空いている１ページ分のエリアにページデータを書き込む場合には、１ブロック分の空きエリアを用意し、当該空きエリアの書き込み対象ページアドレスには、新規データを書き込み、当該ブロックの他のページのデータは、元のデータをコピーするようにする。そして、書き込み処理が終了後には、元のブロックを消去するようにする。
【００１０】
図１６は、このデータ書き込み時の処理動作のフローチャートであり、これは、前述したフラッシュメモリの読み書きを制御する記録制御装置が実行する処理を中心に記述したものである。
【００１１】
すなわち、記録制御装置は、フラッシュメモリへの書き込み指示が発生したか否か判別し（ステップＳ１）、書き込み指示が発生していないと判別したときには、その他の処理を実行する（ステップＳ２）。
【００１２】
そして、ステップＳ１で、書き込み指示が発生したと判別したときには、記録制御装置は、書き込み対象ブロックおよび書き込み対象ページの論理アドレスを決定し（ステップＳ３）、当該論理アドレスのブロックの先頭のページの更新中フラグをオンにする（ステップＳ４）。
【００１３】
次に、論理上、記録制御装置の論理物理アドレス変換テーブルに用意している予備の空きエリアに書き込み対象ブロックを退避すると共に、書き込み対象ブロックの論理アドレスと同じ論理アドレスのブロックを書き込める空きブロックエリアを作るようにする（ステップＳ５）。このステップＳ５の処理を、図１７を参照してさらに説明する。
【００１４】
すなわち、例えば、図１７に示すように、フラッシュメモリが、論理ブロックアドレスＡから論理ブロックアドレスＡ＋ｎ−１までを有効エリアとして持つと共に、論理ブロックアドレスＡ＋ｎの１ブロック分の予備エリアを持つものとする。ここで、論理ブロックアドレスＡ＋ｎの予備エリアは、消去済みであって空きエリアであるものとする。
【００１５】
図１７の例では、書き込み対象ブロックは、論理ブロックアドレスＡ＋３のブロックであるとしている。そこで、この例では、ステップＳ４において、図１７に示すように、論理ブロックアドレスＡ＋３のブロックの先頭のページにおけるスペアエリアの更新中フラグがオンにされる。
【００１６】
ステップＳ５では、記録制御装置は、書き込み対象ブロックである論理ブロックアドレスＡ＋３のブロックの論理ブロックアドレスを、論理物理アドレス変換テーブル上において、予備エリアの論理ブロックアドレスＡ＋ｎに変更する。このとき、論理ブロックアドレスＡ＋３のブロックデータ上のスペアエリアの論理アドレスは書き換えない。
【００１７】
また、論理ブロックアドレスがＡ＋ｎであった予備エリアの論理ブロックアドレスを、論理物理アドレス変換テーブル上において、Ａ＋３に変換する。この論理アドレスの入れ換えは、新規に書き込むブロックのスペアエリアの論理アドレスに、Ａ＋３が書かれるようにするためである。
【００１８】
そして、この論理アドレスの入れ換えにより、論理上、あたかも、書き込み対象の元のブロックデータが、予備エリアに退避され、書き込み対象の元のブロックデータがあった論理ブロックアドレスが空きエリアになったようになる。
【００１９】
以上のようなステップＳ５の処理が終了したら、記録制御装置は、図１５の▲１▼−１を付して示すように、書き込み対象ページよりも前のアドレス順位のすべてのページデータを、書き込み対象の元のブロックから、書き込み先のブロックエリアの対応するページにコピーする（ステップＳ６）。ただし、このとき、コピー先のブロックの先頭のページのスペアエリアの更新中フラグはオフとされる。
【００２０】
次に、記録制御装置は、図１５の▲１▼−２で示すように、書き込み対象ページのデータを、書き込み先のブロックエリアの対応するページに書き込む（ステップＳ７）。
【００２１】
次に、記録制御装置は、図１５の▲１▼−３で示すように、書き込み対象ページよりも後のアドレス順位のすべてのページデータを、書き込み対象の元のブロックから、書き込み先のブロックエリアの対応するページにコピーする（ステップＳ８）。
【００２２】
以上のようにして、書き込み対象の元のブロックの、すべてのページのデータについて、書き換えが終了したら、記録制御装置は、論理上、予備エリアに退避していた書き込み対象の元のブロックのデータを消去する（ステップＳ９）。これにより、論理上の予備エリアは空きエリアとなる。
【００２３】
次に、記録制御装置は、書き込みが終了したか否か判別し（ステップＳ１０）、終了していなければ、ステップＳ３に戻って、次の書き込み対象ブロックおよび書き込み対象ページを決定し、以上の処理を繰り返す。また、ステップＳ１０で書き込み終了であると判別したときには、この書き込み処理ルーチンを終了する。
【００２４】
ところで、以上のような書き込み処理の最中に、停電や電池切れなどの理由で、電源電圧が遮断されると、書き込み処理が完了しないことになる。その場合に対処するため、従来は、電源電圧の再投入時にリセット処理を行なって、フラッシュメモリのアドレス管理上、不具合が生じないようにしている。
【００２５】
図１８は、電源電圧が再投入されたときのリセット処理を説明するためのフローチャートである。
【００２６】
すなわち、記録制御装置は、電源電圧が再投入されると、図１８のリセット処理をスタートさせ、各ブロックの先頭のページのスペアエリアの論理アドレスを検索して、同じ論理アドレスのブロックが２つあるか否か判別する（ステップＳ２１）。
【００２７】
前述したように、論理上、予備エリアに退避された書き換え対象の元のブロックのページデータ上のスペアエリアの論理アドレスは元のままであるので、書き換え先のブロックのページデータ上のスペアエリアの論理アドレスと同じ状態となる。したがって、書き込み処理の途中で電源が遮断されたときには、論理アドレスが同一のブロックが２個存在することになる。ただし、書き換え対象の元のブロックでは更新中フラグがオンとされているので、更新中フラグがオフである書き換え先のブロックとは区別が可能である。
【００２８】
以上のことに基づいて、ステップＳ２１で、論理アドレスが同一のブロックが２つあると判別したときには、書き込み処理の途中で電源が遮断されたと判断し、それら２つのブロックのうちの、更新中フラグがオンであるブロックのデータは残し、更新中フラグがオフであるブロックのデータは、すべて消去する（ステップＳ２２）。これにより、ページ書き込み処理前の状態に戻る。そして、リセット処理を終了し、次の処理に移る。
【００２９】
また、ステップＳ２１で、論理アドレスが同一のブロックは一つしかないと判別したときには、書き込み処理が途中のものは無いとして、このリセット処理をそのまま終了し、次の処理に移る。
【００３０】
【特許文献１】
特開２０００−３１１１０４号公報
【００３１】
【発明が解決しようとする課題】
以上のように、従来のフラッシュメモリの記録制御方法においては、１ページのデータの書き込みを行なうごとに、１ブロックのすべてのページを書き込み先のブロックに書き換え（コピーを含む）、書き込み対象の元のブロックは、消去するようにする。
【００３２】
したがって、１ページのデータの書き込みが、ブロック単位の書き込みおよび消去を伴うことになるため、従来のフラッシュメモリの記録制御方法においては、書き込み処理速度が遅いという問題があった。
【００３３】
これに対し、１ページのデータの書き込みが終了したときに、そのページの後順位のアドレスのすべてのページをコピーする処理をする前に、次の書き込みページアドレスが、書き込み中のブロック内であって、書き込み終了したページの後順位のアドレスかどうかを判別し、次の書き込みページアドレスが、書き込み中のブロック内であって、書き込み終了したページの後順位のアドレスであれば、当該次の書き込みページアドレスまでのページのデータをコピーした後、次の書き込みページのデータを書き込むようにすることが考えられる。
【００３４】
この書き込み制御方法によれば、フラッシュメモリへのデータの書き込み速度を高速化することが可能になる。
【００３５】
しかしながら、フラッシュメモリのＴＯＣエリアと呼ばれる管理エリアにおいては、予め定められたアドレス順序で、予め定められた内容のデータが書き込まれるようにされている。そして、このＴＯＣエリアにおけるページ単位のデータの書き換えは、必ずしも、アドレス順序に従って行なわれるのではなく、後述もするように、ランダムなアドレス順序で一般的に行なわれる。
【００３６】
したがって、上述したような改良した記録制御方法を用いたとしても、ＴＯＣエリアの書き込み速度の向上には効果は少ない。
【００３７】
そして、ＴＯＣエリアでの書き込みあるいは書き換え処理時間が大きい場合には、例えば、フラッシュメモリを録音用媒体として用いる場合には、録音終了時、停止操作等において、操作に対するレスポンスが悪くなり、録音用電子機器の商品性が著しく損なわれるという問題があった。
【００３８】
この発明は、以上の点にかんがみ、例えばフラッシュメモリのような記録媒体において、ＴＯＣエリアのように、予め定められたアドレス順序で、予め定められた内容のデータが書き込まれるようにされる記録領域の記録制御方法として書き込み処理速度の高速化が可能なものを提供することを目的とする。
【００３９】
【課題を解決するための手段】
上記課題を解決するために、この発明による記録媒体の記録制御方法は、
書き込みは予め定められたデータ数のデータ群ごとに、アドレス順になされる必要がある記録媒体において、予め定められたアドレス順序で、予め定められた内容のデータが書き込まれるようにされた所定のメモリ領域に対する記録制御方法であって、
前記データ群毎の書き込み指示に対して、それぞれの前記データ群が、本来前記所定のメモリ領域において書き込まれるべき本来アドレス位置を、前記メモリ領域においてアドレス順となる変換アドレス位置に変換することにより、前記所定のメモリ領域において、前記データ群毎の書き込みを順次に行なうようにすると共に、
前記本来アドレス位置と前記変換アドレス位置との対応関係を示す情報を保持する
ことを特徴とする。
【００４０】
上述の構成のこの発明によれば、ランダムなアドレス位置に対するデータ群毎の書き込み指示によるデータは、指定された通りの本来のアドレス位置に書き込むのではなく、所定のメモリ領域において、アドレス順となるような変換アドレス位置に順次に書き込む。したがって、データ群毎の書き込みは非常に高速になされる。
【００４１】
そして、本来のアドレス位置と、変換アドレス位置との対応関係を示す情報を、例えばテーブル情報として保持するようにする。したがって、上述のように書き込まれたとしても、所定のメモリ領域からのデータの読み出しは、当該保持された対応関係を示す情報を元に行なうことができる。
【００４２】
【発明の実施の形態】
以下、この発明による記録媒体の記録制御方法および装置の実施形態を、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ；集積回路）レコーダに適用した場合を例に、図を参照しながら説明する。
【００４３】
図３は、この実施形態が適用されるＩＣレコーダの構成例を示すブロック図である。
【００４４】
この図３の例のＩＣレコーダにおいては、マイクロコンピュータにより構成される制御部１に対して、記録媒体としてのフラッシュメモリ２と、表示素子の例としてのＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）３についての表示制御を行なう表示制御部４と、操作入力部５を当該制御部１に接続するための操作入力部インターフェース６と、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）インターフェース７とが接続されている。
【００４５】
制御部１を構成するマイクロコンピュータは、この例では、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１と、プログラムＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２と、ワークエリア用ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３とを内蔵している。プログラムＲＯＭ１２と、ワークエリア用ＲＡＭ１３とが、ＣＰＵに対して外付けにされているマイクロコンピュータを用いることも勿論できる。
【００４６】
制御部１と、フラッシュメモリ２とからなる構成部分が、記録媒体の記録制御装置の実施形態を構成する部分となる。
【００４７】
この例のＩＣレコーダにおいては、マイクロホン２１からの音声信号は、アンプ２２を通じて記録処理部２３に供給される。記録処理部２３では、制御部１による制御の下に、音声信号をデジタル信号に変換すると共に、データ圧縮を行なう。
【００４８】
制御部１は、操作入力部５からの記録指示を、操作入力部インターフェース６を通じて受け取ると、記録処理部２３からの音声データを受け取り、フラッシュメモリ２に書き込む。
【００４９】
また、制御部１は、操作入力部５から再生指示を、操作入力部インターフェース６を通じて受け取ると、フラッシュメモリ２から音声データを読み出して再生処理部２４に送出する。再生処理部２４では、制御部１の制御の下に、受け取った音声データの圧縮を解凍し、また、デジタル音声信号をアナログ音声信号に戻す。そして、再生処理部２４は、アナログ音声信号をアンプ２５を通じて、例えばイヤホンが接続される音声信号出力端子に供給する。
【００５０】
また、制御部１は、表示制御部４を介して所定の表示をＬＣＤ３の画面上において行なう。
【００５１】
さらに、この例のＩＣレコーダにおいては、ＵＳＢコネクタ８にＵＳＢケーブルを通じて、例えばパーソナルコンピュータを接続することができる。そして、制御部１は、フラッシュメモリ２に記録されている音声データを読み出して、ＵＳＢインターフェース７を通じてパーソナルコンピュータにデータ転送したり、パーソナルコンピュータからのデータをＵＳＢインターフェース７を通じて受けて、フラッシュメモリ２に書き込んだりすることができる。
【００５２】
また、この例では、フラッシュメモリ２に書き込まれる音声データについては、用件ごとに管理することが可能とされており、各用件毎の音声データについては、文字コメントを付加することができるようにされている。そして、その文字コメントは、ＬＣＤ３の画面に表示することができるようにされている。
【００５３】
この場合のフラッシュメモリ２におけるメモリエリア管理について説明する。図４は、この例のフラッシュメモリ２のメモリエリアの説明図である。図４において、「ＢＡＮＫ０」および「ＢＡＮＫ１」と、「ＥＸＴＥＲＮＡＬ」とは、ＴＯＣエリアである。また、「ＰＣＭ  ＤＡＴＡ」は、音声データが書き込まれるエリアである。
【００５４】
「ＥＸＴＥＲＮＡＬ」は、文字コメントが書き込まれるエリアである。この例においては、音声データの１用件あたりについて、入力可能な文字は、２５６バイト分とされ、１ページに割り当てられる。つまり、１ページに１用件分の文字コメントが割り当てられる。
【００５５】
「ＢＡＮＫ０」および「ＢＡＮＫ１」のそれぞれは、「ＦＯＬＤＥＲ  ＩＮＤＥＸ  ＡＤＲＥＳＳ  ＳＴＡＧＥ」と、「ＥＸＴＥＲＮＡＬ  ＭＡＰ」と、「ＢＬＡＮＫ  ＭＡＰ」と、「ＲＥＶＩＳＩＯＮ」とを含む。
【００５６】
「ＦＯＬＤＥＲ  ＩＮＤＥＸ  ＡＤＲＥＳＳ  ＳＴＡＧＥ」は、各用件毎の音声データが「ＰＣＭ  ＤＡＴＡ」のエリアのどこにあるか（ページ単位）、また、当該音声データに対応する文字コメントが「ＥＸＴＥＲＮＡＬ」のエリアのどこにあるか（ページ単位）を管理するための情報を格納する。
【００５７】
「ＥＸＴＥＲＮＡＬ  ＭＡＰ」は、「ＥＸＴＥＲＮＡＬ」のエリアに文字コメントがどのように書き込まれていて、どのページが空きエリアであるかを管理するための情報を格納する。
【００５８】
「ＢＬＡＮＫ  ＭＡＰ」は、「ＰＣＭ  ＤＡＴＡ」にどのように音声データが書き込まれているかの情報を格納する。「ＲＥＶＩＳＩＯＮ」は、「ＢＡＮＫ０」、「ＢＡＮＫ１」の改訂回数を示す番号を管理する。
【００５９】
この例のＩＣレコーダの場合、ＵＳＢインターフェース７を通じて接続されるパーソナルコンピュータに、文字コメントを書き込むためのアプリケーションソフトウエアが搭載される。そして、そのアプリケーションにおいては、パーソナルコンピュータの画面に、フラッシュメモリ２に格納されている多数の用件のそれぞれ毎に、文字コメントの書き込み欄が表示され、当該書き込み欄に文字コメントが入力される。
【００６０】
そして、入力された文字コメントのデータは、ＵＳＢインターフェース７を通じてパーソナルコンピュータからＩＣレコーダに転送され、制御部１は、フラッシュメモリ２の「ＥＸＴＥＲＮＡＬ」のエリアに、転送されてきた文字コメントのデータを書き込む。この場合において、制御部１は、「ＥＸＴＥＲＮＡＬ」のエリアには、「ＥＸＴＥＲＮＡＬ  ＭＡＰ」を参照して、空いているエリアをサーチして文字コメントを書き込むようにする。ただし、この例では、「ＥＸＴＥＲＮＡＬ」のエリアには、アドレス番号順であって、先順位の空きページエリアから順に書き込みを行なうように定められている。
【００６１】
なお、「ＢＡＮＫ０」および「ＢＡＮＫ１」の２つがあるのは、一方に一つ前のＴＯＣ情報を格納しておき、常に、一つ前の状態には戻れるようにするためである。つまり、ＴＯＣが書き換えられているときに、突然の電源遮断が発生しても、書き換えられているのは一方のＢＡＮＫであり、書き換えられていない一つ前の状態のＢＡＮＫの情報には必ず戻ることができる。
【００６２】
また、「ＲＥＶＩＳＩＯＮ」のエリアに格納されている改訂回数を示す番号を参照することにより、「ＢＡＮＫ０」および「ＢＡＮＫ１」の２つのうちの、いずれが旧く、いずれが新しいＴＯＣ情報であるかを知ることができる。
【００６３】
図５は、「ＢＡＮＫ０」または「ＢＡＮＫ１」のいずれか一方のエリア（以下、ＢＡＮＫエリアという）に書き込まれるＴＯＣ情報の詳細フォーマットの一例を示すものである。これは，１ブロック分である。この図５に示すように、ＢＡＮＫエリアにおいては、予め定められた物理アドレスに、予め定められた内容のデータが、ページ単位で、記録されるようにされている。
【００６４】
なお、実際的には、フラッシュメモリ２の使用により、メモリエリアとして使用できなくなるエリアが生じることにかんがみ、ＢＡＮＫエリアは、固定的な物理アドレスに固定されるわけではなく、ＢＡＮＫエリアとされる論理上のアドレスに対して、実際にＢＡＮＫエリアとして使用されている物理アドレスが対応付けられるように管理されるが、この明細書においては、説明の便宜上、ＢＡＮＫエリアには、物理アドレスなる語を、そのまま使用することとする。
【００６５】
次に、図６〜図１２を参照して、ＢＡＮＫエリアの使われ方およびデータ更新の例を説明する。
【００６６】
図６は、ＢＡＮＫエリアの使われ方の一例であり、これは、音声データファイルを管理する場合である。この図６において、「ＥＸＴＥＲＮＡＬ」のエリアおよび「ＰＣＭ  ＤＡＴＡ」のエリアにおいて、「０」、「１」、「２」・・・と数字を付与して示した四角形部分は、ページ単位のデータが記録されているページアドレス位置の例を示している。それぞれのアドレス位置には、「ＥＸＴＥＲＮＡＬ」のエリアでは、文字コメントのデータが記録されており、また、「ＰＣＭ  ＤＡＴＡ」のエリアにおいては、音声データが記録されている。
【００６７】
そして、「ＦＯＬＤＥＲ  ＩＮＤＥＸ  ＡＤＲＥＳＳ  ＳＴＡＧＥ」のエリアには、各用件ごとに、「ＰＣＭ  ＤＡＴＡ」のエリア内での音声データの所在ページと、「ＥＸＴＥＲＮＡＬ」のエリア内での文字コメントデータの所在ページを示す情報が書き込まれている。
【００６８】
例えば、最初の用件についての記述「ａｄｄｒｅｓｓ０，３：Ｉｎｆｏ４」は、当該用件の音声データは、「ＰＣＭ  ＤＡＴＡ」のエリアのページアドレス位置「０」、「３」に記録されており、また、文字コメントデータは、「ＥＸＴＥＲＮＡＬ」のエリアのページアドレス位置「４」に記録されていることを示している。
【００６９】
そして、「ＥＸＴＥＲＮＡＬ  ＭＡＰ」のエリアには、「ＥＸＴＥＲＮＡＬ」のエリア内におけるページ単位の記録位置の使われ方を示す情報が記録されている。また、「ＢＬＡＮＫ  ＭＡＰ」のエリアには、「ＰＣＭ  ＤＡＴＡ」のエリア内におけるページ単位の記録位置の使われ方を示す情報が記録されている。
【００７０】
次に、ＢＡＮＫのデータが更新された場合のいくつかの例を説明する。以下に説明する例では、図６のような状態で記録されている場合において、「ＢＡＮＫ０」にあった元のデータから作成された更新結果のデータは、「ＢＡＮＫ１」に書き込まれ、「ＢＡＮＫ１」の「ＲＥＶＩＳＩＯＮ」が新しい番号に更新される。
【００７１】
図７は、図６のような状態で記録されている場合において、図６の「ＦＯＬＤＥＲ  ＩＮＤＥＸ  ＡＤＲＥＳＳ  ＳＴＡＧＥ」のエリアにおける１番目の用件と、３番目の用件との並び順を変更した場合である。なお、図７〜図１１においては、「ＦＯＬＤＥＲ  ＩＮＤＥＸ  ＡＤＲＥＳＳ  ＳＴＡＧＥ」のエリアは、図面スペースの関係上、「ＩＮＤＥＸ  ＆  ＡＤＲＥＳＳ」と示してある。
【００７２】
この用件の並び順の変更のときには、図５の詳細フォーマットにおいては、「ＦＯＬＤＥＲ  ＤＡＴＡ」および「ＡＤＤＲＥＳＳ  ＤＡＴＡ」のうちの必要なページデータの書き換えとなり、ランダムな順序で書き込みコマンドが発生する。
【００７３】
図８は、図６のような状態で記録されている場合において、図６の「ＦＯＬＤＥＲ  ＩＮＤＥＸ  ＡＤＲＥＳＳ  ＳＴＡＧＥ」のエリアにおける４番目の用件を、２分割した場合である。
【００７４】
この場合には、図５の詳細フォーマットにおいては、「ＦＯＬＤＥＲ  ＤＡＴＡ」および「ＡＤＤＲＥＳＳ  ＤＡＴＡ」のうちの必要なページデータの書き換えおよび追加と、「ＥＸＴＥＲＮＡＬ  ＤＡＴＡ」の書き換えが必要になる。
【００７５】
図９は、図６のような状態で記録されている場合において、図６の「ＦＯＬＤＥＲ  ＩＮＤＥＸ  ＡＤＲＥＳＳ  ＳＴＡＧＥ」のエリアにおける３番目の用件と４番目の用件とを結合した場合である。
【００７６】
この場合にも、図５の詳細フォーマットにおいては、「ＦＯＬＤＥＲ  ＤＡＴＡ」および「ＡＤＤＲＥＳＳ  ＤＡＴＡ」のうちの必要なページデータの書き換えおよび追加と、「ＥＸＴＥＲＮＡＬ  ＤＡＴＡ」の書き換えが必要になる。
【００７７】
図１０は、図６のような状態で記録されている場合において、用件が追加された場合である。
【００７８】
この場合には、図５の詳細フォーマットにおいては、「ＦＯＬＤＥＲ  ＤＡＴＡ」および「ＡＤＤＲＥＳＳ  ＤＡＴＡ」のうちの必要なページデータの書き換えおよび追加と、「ＢＬＡＮＫ  ＤＡＴＡ」および「ＥＸＴＥＲＮＡＬ  ＤＡＴＡ」の書き換えが必要になる。
【００７９】
図１１は、図６のような状態で記録されている場合において、用件が削除された場合である。
【００８０】
この場合には、図５の詳細フォーマットにおいては、「ＦＯＬＤＥＲ  ＤＡＴＡ」および「ＡＤＤＲＥＳＳ  ＤＡＴＡ」のうちの必要なページデータの書き換えと、「ＢＬＡＮＫ  ＤＡＴＡ」および「ＥＸＴＥＲＮＡＬ  ＤＡＴＡ」の書き換えが必要になる。
【００８１】
以上のようなＢＡＮＫエリアの更新は、必要なページデータのみが更新、追加、削除されることにより行なわれ、アドレス順にページ書き込みコマンドが発生するのではなく、ランダムな順序で、ランダムなアドレス位置から開始されることになる。
【００８２】
したがって、従来の書き込み制御方法では、１ページのデータの書き換えの都度、ブロック単位の書き換えを行なうとともに、一つのブロック内では、ページコピーを繰り返すような処理を行なう必要があり、ＴＯＣエリアの書き換えに非常に時間がかかり、ユーザ操作に対するレスポンスが悪いという問題を生じていた。
【００８３】
［実施形態におけるＴＯＣエリアでの書き込み制御］
次に、この実施形態におけるフラッシュメモリ２のＴＯＣエリアのデータの書き込み制御について、説明する。
【００８４】
図１２は、この実施形態におけるＴＯＣエリアでの書き込み制御方法を説明するための図である。図１２の左側は、フラッシュメモリ２上のＢＡＮＫエリアを示すもので、ＢＰＡ［０］、ＢＰＡ［１］、ＢＰＡ［２］、ＢＰＡ［３］、ＢＰＡ［４］・・・ＢＰＡ［ｉ］（ｉは、ＢＡＮＫエリアの先頭から、何番目のページであるかを示す数値であり、ｉ＝０，１，２，・・・である）・・・は、ＢＡＮＫエリアの物理ページアドレスである。
【００８５】
この物理ページアドレスＢＰＡ［ｉ］は、図４における「ａｄｄｒｅｓｓ」に対応するものであり、本来は、それぞれのアドレス位置には図５に示した「エントリ」の欄に示される各データが書き込まれるべきものである。
【００８６】
しかし、この実施形態においては、ＢＡＮＫエリアの物理ページアドレスＢＰＡ［ｉ］のそれぞれには、図５に示した「エントリ」の欄に示されるデータを書き込むという制御を行なうのではなく、ＢＡＮＫエリアに対する書き込みページアドレスコマンドが発生した順に、当該書き込みページアドレスに書き込むべきデータを、ＢＡＮＫエリアの先頭ページアドレス（物理ページアドレス）から順に書き込むようにする。
【００８７】
すなわち、マイクロコンピュータ１から、フラッシュメモリ２のＢＡＮＫエリアについての書き込みページアドレスが発生すると、その書き込みページアドレスに書き込むべきデータがＢＡＮＫエリアにおいて本来書き込まれるべき物理ページアドレス（本来アドレス位置）から、ＢＡＮＫエリアにおいてアドレス順の位置となる物理ページアドレス（変換アドレス位置）に変換して、当該変換した物理ページアドレスに、順に書き込むようにする。
【００８８】
ただし、この実施形態においては、図５において、「ＲＥＶＩＳＩＯＮ」番号が書き込まれる先頭ページの「ＩＮＤＥＸ  ＨＥＡＤＥＲ」は、ＢＡＮＫエリアの先頭の物理ページアドレスに固定的に書き込むようにする。また、最後のページの「ＬＡＳＴ  Ｖ  Ｐａｇｅ」も、ＢＡＮＫエリアの最後の物理ページアドレスに固定的に書き込むようにする。
【００８９】
このようにすれば、ＢＡＮＫエリアの物理ページアドレスの先頭から順にページデータを書き込むようになるので、１ページの書き込みを終了した後、１ブロック内の後順位のページアドレスのページデータをコピーするのではなく、次のページの書き込みを継続して行なうようにすることができる。したがって、ＴＯＣエリアへのデータを高速に書き込むことができる。
【００９０】
しかし、そのままでは、図５のＢＡＮＫエリアのエントリの内容を、読み出すことができなくなってしまう。そこで、この実施形態では、マイクロコンピュータ１から与えられるＢＡＮＫエリアについての書き込みページアドレスのデータが、物理ページアドレスＢＰＡ［ｉ］のどこに書き込まれたかの対応関係を示す情報を形成して、保持するようにする。
【００９１】
この対応関係を示す情報として、この実施形態では、次に示すようなページアドレス変換テーブルを用いる。
【００９２】
この実施形態では、マイクロコンピュータ１から与えられるＢＡＮＫエリアについての書き込みページアドレスを、「論理ページアドレス」と呼ぶことにする。図１２において、ＬＰＡ［０］、ＬＰＡ［１］、ＬＰＡ［２］、ＬＰＡ［３］、ＬＰＡ［４］・・・ＬＰＡ［ｊ］（ｊは、ＢＡＮＫエリアの先頭から、何番目のページであるかを示す数値であり、ｊ＝０，１，２，・・・である）・・・は、この倫理ページアドレスである。
【００９３】
論理ページアドレスは、上位レイヤが、「ＢＡＮＫエリアにおいて図４の「エントリ」の欄に示されるデータをそこに書き込んだ」と認識している仮想のページアドレスである。従来のように、図５のエントリの各データを、ＢＡＮＫエリアの物理ページアドレスに書き込むのであれば、ＢＰＡ［ｉ］＝ＬＰＡ［ｊ］（ｉ＝ｊ）となるべきものである。しかし、前述したように、この実施形態では、ＢＡＮＫエリアには、そのように書き込むものではない。
【００９４】
この実施形態では、図１２の右側に示すように、ＢＡＮＫエリアへの書き込みに際して、マイクロコンピュータ１のＲＡＭ１３内に、この論理ページアドレスＬＰＡ［ｊ］のデータが、ＢＡＮＫエリアのどの物理ページアドレスＢＰＡ［ｉ］に書き込まれたの対応テーブル（以下、ページアドレス変換テーブルと呼ぶ）を形成しながら、ＢＡＮＫエリアへのページデータの書き込みをするようにする。
【００９５】
この場合に、物理ページアドレスＢＰＡ［ｉ］および論理ページアドレスＬＰＡ［ｊ］は、ページ単位で管理できればよいので、この例では、ＢＡＮＫエリアの先頭からの、ページ単位のオフセット番号を用いるようにする。したがって、ＢＡＮＫ０、ＢＡＮＫ１は図５に示したように３２Ｋバイトであるので、ＢＡＮＫ０およびＢＡＮＫ１のそれぞれについて、ページアドレス変換テーブルに書き込む物理ページアドレスＢＰＡ［ｉ］としては、「０」〜「６３」のうちのいずれかの値が格納される。なお、ページアドレス変換テーブルに格納された値が、「０ｘｆｆ」の場合には、そのページには、未だ書き込みがなされていないことを意味している。
【００９６】
そして、後述するように、この実施形態では、ＲＡＭ１３内に形成したページアドレス変換テーブルは、ＢＡＮＫエリアの「ＬＡＳＴ  Ｖ  Ｐａｇｅ」に書き込むようにしている。ＢＡＮＫエリアの「ＬＡＳＴ  Ｖ  Ｐａｇｅ」は、この例では、上述したように、ＢＡＮＫエリアの最後の物理ページアドレスに固定的に書き込むようにしているので、ページアドレス変換テーブルを迅速に参照することができる。
【００９７】
なお、ページアドレス変換テーブルは、ＢＡＮＫエリアのページアドレス変換テーブルを用いて変換されるページエリアに書き込むようにしても勿論よいし、また、フラッシュメモリ２内の他のメモリエリアや、フラッシュメモリ２外の不揮発性記憶手段に書き込んで保持しておくようにしても勿論よい。
【００９８】
次に、フラッシュメモリ２のＴＯＣエリアの書き換え時におけるＢＡＮＫエリアへの書き込み（書き換え）処理手順についてさらに説明する。
【００９９】
図１および図２は、この実施の形態におけるフラッシュメモリ２のＴＯＣエリアへのデータ書き込み時の処理動作のフローチャートであり、これは、制御部１のＣＰＵ１１がＲＯＭ１２のプログラムに従って実行する処理を中心に記述したものである。
【０１００】
すなわち、制御部１は、ＴＯＣエリアに対する書き込み指示が発生したか否か判別し（ステップＳ１０１）、書き込み指示が発生していないと判別したときには、その他の処理を実行する（ステップＳ１０２）。
【０１０１】
ステップＳ１０１で、書き込み指示が発生したと判別したときには、ＣＰＵ１１は、ＢＡＮＫ０とＢＡＮＫ１のうちで古い方のＢＡＮＫエリアのデータを消去して空きエリアにすると共に、ＲＡＭ１３に、前述した論理ページアドレスＬＰＡ［ｊ］に対する物理ページアドレスＢＰＡ［ｉ］の対応を示すページアドレス変換テーブルのエリアを用意し、当該ページアドレス変換テーブルのすべてのアドレス（論理ページアドレスＬＰＡ［ｊ］に対応）のデータを消去して「０ｘｆｆ」に初期化する（ステップＳ１０３）。
【０１０２】
次に、ＣＰＵ１１は、空きエリアにしたＢＡＮＫエリアの先頭の物理アドレスＢＰＡ「０」には、「ＲＥＶＩＳＩＯＮ」番号を含む「ＩＮＤＥＸ  ＨＥＡＤＥＲ」を書き込むようにする（ステップＳ１０４）。
【０１０３】
次に、ＣＰＵ１１は、書き込みページアドレスとしての論理ページアドレスＬＰＡ［ｊ］を認識し（ステップＳ１０５）、この論理ページアドレスＬＰＡ［ｊ］のデータＰＤ（ＬＰＡ［ｊ］）を書き込むべき、空きＢＡＮＫエリアの物理ページアドレスＢＰＡ［ｉ］を求める。この論理ページアドレスＬＰＡ［ｊ］に対する物理ページアドレスＢＰＡ［ｉ］は、空きＢＡＮＫエリアにおいて前回書き込んだ物理ページアドレスの次の物理ページアドレス（ページアドレス順序が一つ後順位の物理ページアドレス）を割り当てて求めるようにする（ステップＳ１０６）。
【０１０４】
次に、ＣＰＵ１１は、ＲＡＭ１３に用意されているページアドレス変換テーブルにおいて、ステップＳ１０５で書き込み指定された論理ページアドレスに対応するＲＡＭ１３のアドレスに、求めた空きＢＡＮＫエリアの物理ページアドレスを書き込む（ステップＳ１０７）。
【０１０５】
そして、ステップＳ１０６で求めた空きＢＡＮＫエリアの物理ページアドレスに、書き込み指定された論理ページアドレスＬＰＡ［ｊ］のデータＰＤ（ＬＰＡ［ｊ］）を書き込む（ステップＳ１０８）。
【０１０６】
次に、ＣＰＵ１１は、ＢＡＮＫエリアに対する書き込みページアドレス指示が終了したか否か判別し（ステップＳ１０９）、終了していないと判別したときには、ステップＳ１０５に戻り、上述のステップＳ１０５以降の処理を繰り返す。
【０１０７】
また、ステップＳ１０９で、ＢＡＮＫエリアに対する書き込みページアドレス指示が終了したと判別したときには、ＲＡＭ１３のページアドレス変換テーブル上において、「０ｘｆｆ」である未書き込みとなっている論理ページアドレスを、ページアドレス順に探す（図２のステップＳ１１１）。
【０１０８】
次に、ＣＰＵ１１は、検出した未書き込みの論理ページアドレスのデータを書き込むべき、空きＢＡＮＫエリアの物理ページアドレスとして、空きＢＡＮＫエリアにおいて前回書き込んだ物理ページアドレスの次の物理ページアドレス（ページアドレス順序が一つ後順位の物理ページアドレス）を割り当てて求める（ステップＳ１１２）。
【０１０９】
そして、ＣＰＵ１１は、ＲＡＭ１３のページアドレス変換テーブルにおいて、検出した未書き込みの論理ページアドレスに対して、ステップＳ１１２で求めた物理ページアドレスを書き込む（ステップＳ１１３）。
【０１１０】
次に、ＣＰＵ１１は、書き換え元のＢＡＮＫエリアの、当該論理ページアドレスに対応するページアドレスにあるデータを、ステップＳ１１２で求められた空きＢＡＮＫエリアの物理ページアドレスに書き込む（ステップＳ１１４）。つまり、ページデータをコピーする。
【０１１１】
次に、ＣＰＵ１１は、ＲＡＭ１３のページアドレス変換テーブル上において、ＢＡＮＫエリアの最終ページの前までの書き込みが終了したか否か判別し（ステップＳ１１５）、終了していないと判別したときには、ステップＳ１１１に戻り、上述したステップＳ１１１以降の処理を繰り返す。
【０１１２】
また、ステップＳ１１５で、ＢＡＮＫエリアの最終ページの前までの書き込みが終了したと判別したときには、空きＢＡＮＫエリアの最終ページに、ＲＡＭ１３上に形成されているページアドレス変換テーブルを書き込む（ステップＳ１１６）。以上により、ＴＯＣエリアのＢＡＮＫエリアに対する書き込みは終了する。
【０１１３】
次に、以上の処理手順を、図１１を参照してより具体的に説明すると以下のようになる。例えば、図１１に示したように、▲１▼、▲２▼、▲３▼、▲４▼・・・という順番で、マイクロコンピュータ１から、ＢＡＮＫエリアに対する書き込みページアドレス（論理ページアドレス）が発生した場合について、ＢＡＮＫエリアへの書き込み手順を説明する。
【０１１４】
制御部１は、ＢＡＮＫエリアの書き込みページが▲１▼番目の論理ページアドレスＬＰＡ［３０］として決定されると、この論理ページアドレスＬＰＡ［３０］のデータＰＤ（ＬＰＡ［３０］）を書き込むべき、ＢＡＮＫエリアの物理ページアドレスとして、ＢＡＮＫエリアの２番目の物理ページアドレスＢＰＡ［１］を検出する。
【０１１５】
そこで、制御部１では、ＲＡＭ１３のページアドレス変換テーブルの論理ページアドレスＬＰＡ［３０］に対して、物理ページアドレスＢＰＡ［１］を書き込む。これに先立ち、ＢＡＮＫエリアの物理ページアドレスＢＰＡ［０］には、「ＩＮＤＥＸ  ＨＥＡＤＥＲ」のデータＰＤ（ＬＰＡ［０］）が書き込まれており、ページアドレス変換テーブルの論理ページアドレスＬＰＡ［０］には、物理ページアドレスＢＰＡ［０］が書き込まれている。
【０１１６】
次に、制御部１は、フラッシュメモリ２の空きＢＡＮＫエリアの物理ページアドレスＢＰＡ［１］に、論理ページアドレスＬＰＡ［３０］に書き込むべきデータＰＤ（ＬＰＡ［３０］）を書き込むようにフラッシュメモリ２を制御する。
【０１１７】
次に、制御部１は、ＢＡＮＫエリアに書き込むべき▲２▼番目の論理ページアドレスが論理ページアドレスＬＰＡ［８］として決定されると、この論理ページアドレスＬＰＡ［８］のデータＰＤ（ＬＰＡ［８］）を書き込むべき、ＢＡＮＫエリアの物理ページアドレスとして、ＢＡＮＫエリアの２番目の物理ページアドレスＢＰＡ［２］を検出する。
【０１１８】
そして、制御部１では、ＲＡＭ１３のページアドレス変換テーブルの論理ページアドレスＬＰＡ［８］に対して、物理ページアドレスＢＰＡ［２］を書き込む。
【０１１９】
次に、制御部１は、フラッシュメモリ２の空きＢＡＮＫエリアの物理ページアドレスＢＰＡ［２］に、論理ページアドレスＬＰＡ［８］に書き込むべきデータＰＤ（ＬＰＡ［８］）を書き込むようにフラッシュメモリ２を制御する。
【０１２０】
また、▲３▼番目の書き込みページアドレス（論理ページアドレス）ＬＰＡ［２０］に対しては、空きＢＡＮＫエリアの物理ページアドレスＢＰＡ［３］が割り当てられ、ページアドレス変換テーブルの論理ページアドレスＬＰＡ［８］に対して、物理ページアドレスＢＰＡ［３］が書き込まれると共に、空きＢＡＮＫエリアの物理ページアドレスＢＰＡ［２］に、論理ページアドレスＬＰＡ［８］に書き込むべきデータＰＤ（ＬＰＡ［８］）が書き込まれる。
【０１２１】
以下、同様にして、書き込みページアドレスの発生順位ごとに、空きＢＡＮＫエリアの物理ページアドレスが、アドレス順に割り当てられ、ページアドレス変換テーブルの論理ページアドレスに対して割り当てられた物理ページアドレスが書き込まれると共に、論理ページアドレスに書き込まれるページデータが、空きＢＡＮＫエリアの割り当てられた物理ページアドレスに書き込まれる。
【０１２２】
そして、この実施形態では、最終ページには、ＲＡＭ１３に形成されたページアドレス変換テーブルが書き込まれる。
【０１２３】
次に、ＢＡＮＫエリアからのＴＯＣ情報の読み出しについて説明する。
【０１２４】
読み出しの際には、制御部１は、先ず、フラッシュメモリ２のＢＡＮＫエリアの最終ページのページアドレス変換テーブルを読み出して、ＲＡＭ１３に書き込む。
【０１２５】
次に、制御部１は、読み出し論理ページアドレスが発生するごとに、このＲＡＭ１３上のページアドレス変換テーブルを参照して、当該指定された読み出し論理ページアドレスのデータが記録されているＢＡＮＫエリアの物理ページアドレスを求め、求めた物理ページアドレスから指定された読み出し論理ページアドレスのデータを読み出すようにフラッシュメモリ２を制御する。
【０１２６】
以上により、ＢＡＮＫエリアに書き込まれたＴＯＣ情報は、支障なく、読み出されるものである。
【０１２７】
なお、この実施形態においては、ＴＯＣエリアの書き込み中に電源が遮断される等したときのリセットスタート時には、「ＬＡＳＴ  Ｖ  Ｐａｇｅ」が存在しているＢＡＮＫエリアのみを有効とするようにする。そして、通常使用状態では、「ＲＥＶＩＳＩＯＮ」番号の大きい方のＢＡＮＫエリアを有効として使用するようにする。
【０１２８】
［他の実施形態］
以上の実施形態では、論理ページアドレスと物理ページアドレスとの対応関係を示す情報は、ページアドレス変換テーブルを、ＢＡＮＫエリアに記録するようにしたが、ＢＡＮＫエリアには、ページアドレス変換テーブルを書き込むのではなく、以下のようにすることもできる。
【０１２９】
この例においても、書き込み時にＲＡＭ１３上にページアドレス変換テーブルを形成しながら、ＢＡＮＫエリアの物理ページアドレスに、そのアドレス順に順次にページデータを書き込むようにするのは、前述の実施形態と同様である。
【０１３０】
しかし、この実施形態では、ページアドレス変換テーブルをＢＡＮＫエリアの最終ページに書き込むことはしない。その代わりに、図１３に示すように、ＢＡＮＫエリアの各物理ページアドレスに書き込むページデータのスペアエリアに、対応する論理ページアドレスを書き込むようにする。前述したように、この論理ページアドレスは、ＢＡＮＫエリアの先頭からのオフセット番号であって、「０」〜「６３」の値が用いられるので、１バイトによって表わすことができる。
【０１３１】
この例の場合には、読み出し時には、ＢＡＮＫエリアのすべてのページを一旦読み出して、それぞれのページデータに含まれる論理ページアドレスを読み出して、ＲＡＭ１３上に、ページアドレス変換テーブルを再構成するようにする。そして、このＲＡＭ１３上に再構成したページアドレス変換テーブルを用いて、ＢＡＮＫエリアのデータの読み出しを前述の実施形態と同様に行なうようにする。
【０１３２】
［変形例］
以上の実施形態の説明は、記録媒体がＮＡＮＤ型フラッシュメモリである場合であるが、この発明は、ＴＯＣエリアにおいて、ＮＡＮＤ型フラッシュメモリと同様のアドレス制御を書き込み時に行なわなければならない記録媒体のすべてに適用可能である。
【０１３３】
また、この発明が適用される電子機器は、ＩＣレコーダに限られるものでないことも言うまでもない。そして、フラッシュメモリなどの記録媒体は、電子機器に内蔵の場合に限らずない。例えばフラッシュメモリがカード型メモリであって、挿脱可能なものであってもよい。
【０１３４】
また、上述の実施形態の説明では、書き込み制御の管理は、論理物理アドレス変換テーブルを用いて行なうようにしたが、このような方法に限られるものでないことは勿論である。
【０１３５】
また、上述の説明においては、ブロック内では、アドレスの小さいページから順番に昇順に書き込むようにした場合について説明したが、この発明は、アドレスの大きいページから順番に降順に書き込むようにする場合にも同様に適用できる。
【０１３６】
【発明の効果】
以上説明したように、この発明によれば、フラッシュメモリのＴＯＣエリアのように、予め定められたアドレス順序で、予め定められた内容のデータが書き込まれるようにされる記録領域に対して、高速の書き込みが可能になる。
【図面の簡単な説明】
【図１】この発明による記録媒体の記録制御方法の実施形態を説明するためのフローチャートの一部である。
【図２】この発明による記録媒体の記録制御方法の実施形態を説明するためのフローチャートの一部である。
【図３】この発明による記録媒体の記録制御方法の実施形態が適用されるＩＣレコーダの構成例を示す図である。
【図４】フラッシュメモリのメモリエリア構造を説明するための図である。
【図５】フラッシュメモリのＴＯＣエリアに記録されるデータの詳細例を示す図である。
【図６】フラッシュメモリに記録されるＴＯＣデータの内容を説明するための図である。
【図７】フラッシュメモリに記録されるＴＯＣデータの書き換え例を説明するための図である。
【図８】フラッシュメモリに記録されるＴＯＣデータの書き換え例を説明するための図である。
【図９】フラッシュメモリに記録されるＴＯＣデータの書き換え例を説明するための図である。
【図１０】フラッシュメモリに記録されるＴＯＣデータの書き換え例を説明するための図である。
【図１１】フラッシュメモリに記録されるＴＯＣデータの書き換え例を説明するための図である。
【図１２】この発明による記録媒体の記録制御方法の実施形態の処理手順を説明するための図である。
【図１３】この発明による記録媒体の記録制御方法の他の実施形態を説明するための図である。
【図１４】ＮＡＮＤ型フラッシュメモリのデータ構成を説明するための図である。
【図１５】ＮＡＮＤ型フラッシュメモリについての、従来の記録制御方法を説明するための図である。
【図１６】ＮＡＮＤ型フラッシュメモリについての、従来の記録制御方法を説明するためのフローチャートである。
【図１７】ＮＡＮＤ型フラッシュメモリについての、従来の記録制御方法を説明するための図である。
【図１８】従来の記録媒体の記録制御方法におけるリセット処理の例を説明するためのフローチャートである。
【符号の説明】
１…制御部、２…フラッシュメモリ
【図１】
2004252746.tif 000003
【図２】
2004252746.tif 000004
【図３】
2004252746.tif 000005
【図４】
2004252746.tif 000006
【図５】
2004252746.tif 000007
【図６】
2004252746.tif 000008
【図７】
2004252746.tif 000009
【図８】
2004252746.tif 000010
【図９】
2004252746.tif 000011
【図１０】
2004252746.tif 000012
【図１１】
2004252746.tif 000013
【図１２】
2004252746.tif 000014
【図１３】
2004252746.tif 000015
【図１４】
2004252746.tif 000016
【図１５】
2004252746.tif 000017
【図１６】
2004252746.tif 000018
【図１７】
2004252746.tif 000019
【図１８】
2004252746.tif 000020