(57)【特許請求の範囲】
【請求項１】
各種のデータを記憶する通常記憶手段と、
前記通常記憶手段の書き換え回数を書き込みビットの数に基づき記憶する回数記憶手段と、
前記通常記憶手段の書き換えの際に、前記回数記憶手段に記憶された書き換え回数を更新する制御手段と、
を備え、
前記回数記憶手段は、追加書き込みが可能であり、前記制御手段は、前記データ記憶手段の書き換えが行なわれるたびに、前記回数記憶手段の、書き込まれたビットと書き込まれていないビットとの境界を書き込みとは逆の順に検索し、前記回数記憶手段への１ビットの書き込みを所定の順序で行なうことを特徴とするフラッシュメモリ。
【請求項２】
前記回数記憶手段は、書き換え回数の各桁に対応する複数のワード線領域からなり、前記制御手段は、前記回数記憶手段への１ビットの書き込みを所定の順序で行なうとき、桁上がりの際に、下位の桁に対応するワード線領域をクリアして、上位の桁に対応するワード線領域に１ビットを書き込むことを特徴とする請求項１に記載のフラッシュメモリ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、書き換え回数を記録するフラッシュメモリ、フラッシュメモリ書き換え回数記憶方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体に関し、特に、フラッシュメモリ内に書き換え回数を記録するフラッシュメモリ、フラッシュメモリ書き換え回数記憶方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体に関するものである。
【０００２】
【従来の技術】
近年、書き込み可能な不揮発性メモリであるフラッシュメモリが広く用いられるようになってきている。フラッシュメモリは、安価で、高速であるが、その書き換え回数に制限があるので、書き換え回数を記録して管理する必要がある。ところで、従来のフラッシュメモリとして、フラッシュメモリ内に書き換え回数を記録するものが知られている。
【０００３】
図１２は、従来におけるフラッシュメモリの概略構成を示す説明図である。従来のフラッシュメモリでは、メモリ全体５０中の任意のブロック５１を、フラッシュメモリの書き換え回数を記憶するために使用する。つぎに、従来のフラッシュメモリの動作について説明する。従来のフラッシュメモリにおいては、書き換えを行なうたびに、ユーザがプログラムするユーザソフトウェアにより、ブロック５１に、書き換えを示す情報の書き込みを行なう。ここで、従来のフラッシュメモリでは、一つの書き込み単位に対する追加書き込みが許されていないので、１回の書き換えを示す情報の書き込みは、一つの書き込み単位分のメモリ領域を必要とする。
【０００４】
【発明が解決しようとする課題】
しかしながら、上記従来の技術によれば、書き換えを行なうたびにブロック５１への書き込みを行なう機能を、ユーザがプログラムするユーザソフトウェアで実現するため、ユーザおよびユーザソフトウェアの負荷を増大させるといった問題点があった。また、フラッシュメモリの書き換え回数を記憶するブロック５１が汎用的なブロックであるため、誤書き込み等により、書き換え回数を消してしまう可能性が高く、書き換え回数情報（書き換え回数を示す情報）の信頼性が低下するといった問題点があった。さらに、１回のフラッシュメモリの書き換えを示す情報の書き込みは、一つの書き込み単位分のメモリ領域を必要とするため、書き換え回数と書き込み単位とを掛け合わした大きなメモリ領域が必要となり、コストが上昇するといった問題点があった。
【０００５】
本発明は、上記に鑑みてなされたものであって、ユーザおよびユーザソフトウェアの負荷を軽減し、書き換え回数情報の信頼性を向上し、また、書き換え回数記憶用のメモリ領域を減少させて、コストを低減するフラッシュメモリ、フラッシュメモリ書き換え回数記憶方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体を得ることを目的とする。
【０００６】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するために、本発明にかかるフラッシュメモリにあっては、各種データを記憶する通常記憶手段と、前記通常記憶手段とは別に設けられ、前記通常記憶手段の書き換え回数を記憶し、消去動作を実行に移すまでのセキュリティー機能が前記通常記憶手段よりも高い回数記憶手段と、を備えることを特徴とする。
【０００７】
この発明によれば、通常に使用される通常記憶手段とは別に設けられ、セキュリティー機能が高い回数記憶手段が、通常記憶手段の書き換え回数を記憶する。これにより、誤書き込み等によって書き換え回数情報（書き換え回数を示す情報）が消失する可能性を低減することができる。
【０００８】
つぎの発明にかかるフラッシュメモリにあっては、各種のデータを記憶する通常記憶手段と、前記通常記憶手段とは別に設けられ、前記通常記憶手段の書き換え回数を記憶し、ユーザによる消去機能を持たない回数記憶手段と、を備えることを特徴とする。
【０００９】
この発明によれば、通常に使用される通常記憶手段とは別に設けられ、ユーザによる消去機能を持たない回数記憶手段が、通常記憶手段の書き換え回数を記憶する。これにより、誤書き込み等によって書き換え回数情報が消失する可能性を低減することができる。
【００１０】
つぎの発明にかかるフラッシュメモリにあっては、前記回数記憶手段は、追加書き込みが可能なことを特徴とする。
【００１１】
この発明によれば、回数記憶手段に対する追加書き込みが可能であり、書き込み単位ごとではなく、１ビットごとの書き込みが可能となる。
【００１２】
つぎの発明にかかるフラッシュメモリにあっては、各種のデータを記憶する通常記憶手段と、前記通常記憶手段の書き換え回数を記憶する回数記憶手段と、前記通常記憶手段の書き換えの際に、前記回数記憶手段に記憶された書き換え回数を更新する制御手段と、を備えることを特徴とする。
【００１３】
この発明によれば、ユーザソフトウェアではなく、制御手段が、通常に使用される通常記憶手段とは別に設けられた回数記憶手段の記憶する書き換え回数を更新する。これにより、ユーザソフトウェアによって書き換え回数の更新機能を実現する必要が無くなり、また、プログラムミスによる誤書き込み等が防がれ、書き換え回数情報が消失する可能性を低減することができる。
【００１４】
つぎの発明にかかるフラッシュメモリにあっては、前記回数記憶手段は、追加書き込みが可能であり、前記制御手段は、前記データ記憶手段の書き換えが行なわれるたびに、前記回数記憶手段の、書き込まれたビットと書き込まれていないビットとの境界を検索し、前記回数記憶手段への１ビットの書き込みを所定の順序で行なうことを特徴とする。
【００１５】
この発明によれば、回数記憶手段に対する追加書き込みが可能であり、制御手段が、データ記憶手段の書き換えが行なわれるたびに、回数記憶手段の、書き込まれたビットと書き込まれていないビットとの境界を検索することによって書き込みを行なうビットを決定し、順次、１ビットの書き込みを行なう。これにより、書き込み単位ごとではなく、１ビットごとの書き込みが可能となる。
【００１６】
つぎの発明にかかるフラッシュメモリにあっては、前記回数記憶手段は、一つのブロックであることを特徴とする。
【００１７】
この発明によれば、回数記憶手段を一つのブロックとした場合において、誤書き込み等によって書き換え回数情報が消失する可能性を低減することができる。
【００１８】
つぎの発明にかかるフラッシュメモリにあっては、前記回数記憶手段は、一つのワード線領域であることを特徴とする。
【００１９】
この発明によれば、回数記憶手段を一つのワード線領域とした場合においても、誤書き込み等によって書き換え回数情報が消失する可能性を低減することができる。
【００２０】
つぎの発明にかかるフラッシュメモリにあっては、前記回数記憶手段は、複数のワード線領域であり、各ワード線領域は、それぞれ、前記書き換え回数の各桁に対応することを特徴とする。
【００２１】
この発明によれば、複数のワード線領域が書き換え回数の各桁に対応する。これにより、さらに、書き換え回数記憶用のメモリ領域を減少させることができる。
【００２２】
つぎの発明にかかるフラッシュメモリにあっては、さらに、前記回数記憶手段の記憶する書き換え回数が、予め設定された回数を超えた場合に、アラームを発するアラーム手段を備えることを特徴とする。
【００２３】
この発明によれば、アラーム手段が、回数記憶手段の記憶する書き換え回数が、予め設定された回数を超えた場合に、アラームを発する。これにより、書き換え回数が書き換え保証回数を超えたことをユーザに知らせることができる。
【００２４】
つぎの発明にかかるフラッシュメモリにあっては、前記回数記憶手段は、前記通常記憶手段の、書き換えを許可しているブロックごとに前記書き換え回数を記憶することを特徴とする。
【００２５】
この発明によれば、回数記憶手段が、通常記憶手段の、書き換えを許可しているブロックごとに、それぞれの書き換え回数を記憶し、ブロックごとに書き換え回数を管理することができる。
【００２６】
つぎの発明にかかるフラッシュメモリ書き換え回数記憶方法にあっては、書き換え回数を記憶する回数記憶手段を備えたフラッシュメモリに、書き換え回数を記憶させるフラッシュメモリ書き換え回数記憶方法であって、前記フラッシュメモリの書き換えが行なわれるたびに、前記回数記憶手段の、書き込まれたビットと書き込まれていないビットとの境界を検索する検索工程と、前記検索工程での検索結果に基いて前記回数記憶手段への１ビットの書き込みを所定の順序で行なう更新工程と、を含むことを特徴とする。
【００２７】
この発明によれば、フラッシュメモリの書き換えが行なわれるたびに、回数記憶手段の、書き込まれたビットと書き込まれていないビットとの境界を検索して書き込みビットを決定し、順次、回数記憶手段への１ビットの書き込みを行なう。これにより、書き込み単位ごとではなく、１ビットごとの書き込みが可能となる。
【００２８】
つぎの発明にかかるフラッシュメモリ書き換え回数記憶方法にあっては、前記回数記憶手段は、書き換え回数の各桁に対応する複数のワード線領域からなり、前記更新工程では、桁上がりの際に、下位の桁に対応するワード線領域をクリアして、上位の桁に対応するワード線領域に１ビットを書き込むことを特徴とする。
【００２９】
この発明によれば、複数のワード線領域を、書き換え回数の各桁に割り当て、桁上がりの際に、下位の桁に対応するワード線領域をクリアして、上位の桁に対応するワード線領域に１ビットを書き込む。これにより、さらに、書き換え回数記憶用のメモリ領域を減少させることができる。
【００３０】
つぎの発明にかかるコンピュータ読み取り可能な記録媒体にあっては、前述した発明にかかる方法をコンピュータに実行させるプログラムを記録したことを特徴とする。
【００３１】
この発明によれば、前述した発明にかかる方法をコンピュータに実行させて、書き換え回数記憶用のメモリ領域を減少させることができる。
【００３２】
【発明の実施の形態】
以下、本発明にかかるフラッシュメモリ、フラッシュメモリ書き換え回数記憶方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００３３】
実施の形態１．
図１は、本発明の実施の形態１にかかるフラッシュロム（フラッシュメモリ）の概略構成を示すブロック図である。実施の形態１のフラッシュロム１は、各種データを記憶する通常のフラッシュロム領域２と、通常のフラッシュロム領域２の書き換え（以下、「単に書き換え」と呼ぶ場合がある）回数を記憶するモニタメモリ領域３と、フラッシュロム１の制御を行なう制御部４と、前記各部を接続するデータ・アドレスバス５と、を備えている。モニタメモリ領域３は一つのワード線領域で構成されており、追加書き込みを許可するように設定されている。
【００３４】
モニタメモリ領域３への書き換え回数情報（通常のフラッシュロム領域２の書き換え回数を示す情報）の書き込みは、ユーザがプログラムするユーザソフトウェアによって行なわれる。ここで、ユーザソフトウェアが誤って書き換え回数情報を消してしまわないように、モニタメモリ領域３は、通常のフラッシュロム領域２とは別に設けられており、消去動作を実行に移すまでのセキュリティー機能が通常のフラッシュロム領域２よりも高く設定されている。具体的には、消去の手順を通常のフラッシュロム領域２とは、異なるものにしたり、ユーザによる消去機能を無くし、ユーザから消去動作を行なうことができないようにしたりする。なお、通常のフラッシュロム領域２は、本発明の通常記憶手段に対応し、モニタメモリ領域３は、本発明の回数記憶手段対応する。
【００３５】
以上の構成において、実施の形態１の動作について、図２，３および４を参照して説明する。図２は、実施の形態１にかかるユーザソフトウェアによる書き換え動作の流れを示すフローチャートである。ユーザソフトウェアは、まず、モニタメモリ領域３への書き込み処理を行ない（Ｓ１）、その後、通常のフラッシュロム領域２の書き換えを行なう（Ｓ２）。すなわち、通常のフラッシュロム領域２の書き換えが行なわれるたびに、モニタメモリ領域３への書き込み処理を行なう。
【００３６】
モニタメモリ領域３では、追加書き込みを許可し、ワード線単位で１ビットごとに書き換え回数を示すことにより、メモリ使用量を最小限とすることができる。追加書き込みを許可することによる信頼性の問題は、最後の書き込みデータが保証されるので、書き換えの際に、前回の書き込みビットを検索するようにすることで解決することができる。図３は、実施の形態１にかかるモニタメモリ領域３への書き込み処理の流れを示すフローチャートである。モニタメモリ領域３への書き込み処理において、ユーザソフトウェアは、まず、すでに書き込まれたビットと書き込まれていないビットとの境界を検索する（Ｓ３）。続いて、検索結果に基き、固定された所定の順序に従い、書き込みを行なうビットを決定してモニタメモリ領域３への１ビットの書き込みをで行なう（Ｓ４）。
【００３７】
モニタメモリ領域３への書き込み処理においては、たとえば、ワード線領域の端から、順次、１ビットの書き込みを行ない、これと逆方向から検索を行なって、書き込み済みのビットと未書き込みのビットとの境界を検出する。図４は、実施の形態１にかかるモニタメモリ領域３への書き込み処理を説明するための説明図であり、４回書き換えがあった後、５回目の書き換えの際における書き込み処理の例を示している。この場合、検索の結果、４ビット目と３ビット目の間に境界を検出し、４ビット目に書き込みを行なう。
【００３８】
前述したように、実施の形態１によれば、通常のフラッシュロム領域２とは別に設けられ、消去動作を実行に移すまでのセキュリティー機能が高いモニタメモリ領域３に、書き換え回数情報の書き込みを行なうため、誤書き込み等により、書き換え回数を消してしまう可能性を低減し、書き換え回数情報の信頼性を高めることができる。また、モニタメモリ領域３の追加書き込みを可能にし、書き込み済みのビットと未書き込みのビットとの境界を逆順に検索し、順次、書き込みを行なうビットを指定するため、書き換え回数記憶用のメモリ領域を減少させて、コストを低減することができ、かつ、何度も同じセルに書き換えを行なうことを防いで、書き換え回数情報の信頼性を高めることができる。
【００３９】
実施の形態２．
実施の形態２のフラッシュロムは、実施の形態１のフラッシュロム１と基本的に同様の構成であって、モニタメモリ領域３に代えて、後述するモニタメモリ領域１０を設けたものである。実施の形態１のように、ワード線単位で書き換え情報を記録していく場合、最大値は、そのワード線に接続されるビット数に依存するが、実施の形態２では、複数のワード線領域を使用し、あるワード線領域は、書き換え回数１回ごとに書き込みを行ない、そのワード線領域が全て使用された場合に、別のワード線領域に１ビットの情報を桁上がりとして記録し、全て使用されたワード線領域をクリア（消去）するようにして、少ない領域に、多くの書き換え回数を記録できるようにしている。
【００４０】
図５は、本発明の実施の形態２にかかるモニタメモリ領域１０の概略構成を示す説明図である。実施の形態２にかかるモニタメモリ領域１０は、書き換え回数の各桁に対応する複数のワード線領域１０ａ，１０ｂ〜１０ｃで構成される。モニタメモリ領域１０は、実施の形態１にかかるモニタメモリ領域３と同様に、セキュリティー機能が高く、追加書き込みが可能となっている。この例では、一つのワード線領域が８ビットなので、ワード線領域１０ａ，１０ｂ〜１０ｃは、それぞれ、８進数の各桁に対応することになる。
【００４１】
以上の構成において、実施の形態２の動作について、図６，７を参照して説明する。図６は、実施の形態２にかかるモニタメモリ領域１０への書き込み処理の流れを示すフローチャートである。なお、実施の形態２の動作は、実施の形態１の動作と基本的に同様であるので、図３と同一の部分には、同一の符号を付して、その説明を省略する。モニタメモリ領域１０への書き込み処理において、ユーザソフトウェアは、まず、最下位桁に対応するワード線領域１０ａで、すでに書き込まれたビットと書き込まれていないビットとの境界を検索する（Ｓ３）。
【００４２】
つぎに、検索結果から、ワード線領域１０ａが全て使用されているか否か、すなわち、全て書き込みがされているか否かを判定する（Ｓ５）。全て書き込み済みの場合は、ワード線領域１０ａをクリアし、上位桁に対応するワード線領域１０ｂに１ビットの情報を桁上がりとして記憶させて（Ｓ６）、処理を終了する。一方、全て書き込み済みでない場合は、ワード線領域１０ａへの書き込みを行ない（Ｓ４）、処理を終了する。
【００４３】
図７は、実施の形態２にかかるモニタメモリ領域１０への書き込み処理を説明するための説明図であり、８回書き換え後、９回目の書き換えの場合における例を示している。モニタメモリ領域１０への書き込み処理において、８回書き換え後、ワード線領域１０ａの全てのビットは書き込み済みとなる。このため、９回目の書き換えの際は、ワード線領域１０ａをクリアして、ワード線領域１０ｂに１ビットの書き込みを行なう。
【００４４】
前述したように、実施の形態２によれば、モニタメモリ領域１０が、書き換え回数の各桁に対応する複数のワード線領域からなり、桁上がりの際に、下位の桁に対応するワード線領域をクリアして、上位の桁に対応するワード線領域に１ビットを書き込むため、さらに、書き換え回数記憶用のメモリ領域を減少させて、コストを低減することができる。また、モニタメモリ領域１０は、書き換えが行なわれる通常のフラッシュロム領域２に対し、一つのワード線に接続されるビット数分の１回以下の書き換えが行なわれるだけなので、書き換え回数情報の信頼性が向上する。
【００４５】
実施の形態３．
実施の形態３のフラッシュロムは、実施の形態１のフラッシュロム１と同様の構成であって、モニタメモリ領域３に代えて、後述するモニタメモリ領域２２を設けたものである。図８は、本発明の実施の形態３にかかるフラッシュロムの概略構成を示す説明図である。実施の形態３にかかるフラッシュロムは、サブメモリ領域２０と、メインメモリ領域２１と、一つのブロックからなるモニタメモリ領域２２と、を備えている。モニタメモリ領域２２は、モニタメモリ領域３と同様に、セキュリティー機能が高く、追加書き込みが可能となっている。
【００４６】
ここで、たとえば、サブメモリ領域２０の書き換えが非常に多い場合など、メインメモリ領域２１内にモニタメモリ領域２２を置くことで、書き換え回数の少ないブロックでの記録による信頼度の高い書き換え回数のモニタが可能となる。この場合、ワード線を特定する必要が無くなる。
【００４７】
以上の構成において、実施の形態３の動作について、図９を参照して説明する。図９は、実施の形態３にかかるモニタメモリ領域２２への書き込み処理を説明するための説明図である。実施の形態３にかかるモニタメモリ領域２２への書き込み処理においても、実施の形態１と同様に、書き込み順を固定化し、書き換え時のビット検索を逆順で行なうことにより、モニタメモリ領域２２のメモリ量を削減することができる。
【００４８】
前述したように、実施の形態３によれば、一つのブロックをモニタメモリ領域とすることも可能であり、このブロックへの誤書き込み等にる書き換え回数の消去の可能性を低減し、書き換え回数情報の信頼性を高めることができる。
【００４９】
実施の形態４．
実施の形態４のフラッシュロムは、前述した実施の形態１のフラッシュロム１と同様の構成であって、モニタメモリ領域３に代えて、後述するモニタメモリ領域３０を設けたものである。図１０は、本発明の実施の形態４にかかるモニタメモリ領域３０の概略構成を示す説明図である。実施の形態４にかかるモニタメモリ領域３０は、通常フラッシュロム領域２内の、書き換えを許可している各ブロックごとの書き換え回数を記憶するモニタメモリ領域３１，３２〜３３を有している。また、セキュリティー機能が高く、追加書き込みが可能となっている。
【００５０】
モニタメモリ領域３１，３２〜３３は、実施の形態１にかかるモニタメモリ領域３と同様に、一つのワード線領域から構成されていてもよいし、実施の形態２にかかるモニタメモリ領域１０と同様に、書き換え回数の各桁に対応する複数のワード線領域から構成されていてもよい。さらに、モニタメモリ領域３０は、実施の形態３にかかるモニタメモリ領域２２と同様に、一つのブロックであってもよい。書き換えがあった場合、ユーザソフトウェアが、実施の形態１〜３と同様の処理を行ない、書き換えのあったブロックに対応するモニタメモリ領域の書き換え回数を更新する。
【００５１】
前述したように、実施の形態４によれば、通常フラッシュロム領域２の、書き換えを許可している各ブロックごとの書き換え回数を記憶するため、各ブロックごとに、書き換え回数を管理することができる。
【００５２】
実施の形態５．
図１１は、本発明の実施の形態５にかかるフラッシュロムの概略構成を示すブロック図である。なお、実施の形態５にかかるフラッシュロムは、実施の形態１にかかるフラッシュロムと、基本的に同一の構成であるので、同一の部分には、同一の符号を付してその説明を省略する。実施の形態５にかかるフラッシュロム４１は、通常のフラッシュロム領域２と、モニタメモリ領域３と、フラッシュロム４１の制御を行なう制御部４２と、データ・アドレスバス５と、を備えている。
【００５３】
また、制御部４２は、モニタメモリ領域３への書き込み処理を制御する回数更新部４４、および、予め設定された規定回数を書き換え回数が超えたことを知らせるアラーム信号を出力するアラーム部４３を有している。なお、モニタメモリ領域３に代えて、実施の形態２にかかるモニタメモリ領域１０を用いてもよいし、実施の形態３にかかるモニタメモリ領域２２を用いてもよいし、実施の形態４にかかるモニタメモリ領域３０を用いてもよい。
【００５４】
以上の構成において、実施の形態５の動作について説明する。なお、実施の形態５の動作は、実施の形態１〜４と基本的に同様であるので、異なる部分についてのみ説明する。回数更新部４４は、実施の形態１〜４でユーザソフトウェアが行なっていたモニタメモリ領域３への書き込み処理を、フラッシュロム４１内部で行なう。すなわち、フラッシュロム４１においては、ユーザソフトウェアによりモニタメモリ領域３への書き込み処理を行なうのではなく、フラッシュロム４１内部の回数更新部４４により、実施の形態１〜４と同様にして、モニタメモリ領域３への書き込み処理を行なう。
【００５５】
これにより、ユーザソフトウェアで、モニタメモリ領域３への書き込み処理を行なう必要が無くなり、ユーザおよびユーザソフトウェアの負担を軽減することができる。また、ユーザのプログラムミス等で誤書き込みが発生することを防ぐことができ、書き換え回数情報の信頼性を向上させることができる。
【００５６】
アラーム部４３は、モニタメモリ領域３に記憶された書き換え回数が、フラッシュロム４１の書き換え保証回数等の規定回数を超過したか否かの判定を行なう。そして、書き換え回数が書き換え保証回数を超えた場合に、図示しない外部のＣＰＵへの割り込み等のアラーム信号を出力する。これにより、ユーザに対し、書き換え回数が書き換え保証回数を超えたことを知らせ、プログラム的対処などを促すことができる。書き換え回数が規定回数を超過したか否かの判定は、たとえば、書き込み済みのビットと未書き込みのビットとの境界の検索の際に行なうようにしてもよい。
【００５７】
前述したように、実施の形態５によれば、実施の形態１〜４と同様の効果に加え、さらに、ユーザソフトウェアではなく、回数更新部４４が、モニタメモリ領域３への書き込み処理を行なうため、ユーザおよびユーザソフトウェアの負荷を軽減することができ、書き換え回数情報の信頼性を向上させることができる。また、アラーム部４３が、フラッシュロム４１の書き換え保証回数等の規定回数を超過したか否かの判定を行ない、ユーザに対し、書き換え回数が書き換え保証回数を超えたことを知らせるため、ユーザが気付かないうちに書き換え保証回数を超えてしまい、予期しないエラーを発生する可能性を低減することができる。
【００５８】
【発明の効果】
以上説明したとおり、この発明によれば、通常に使用される通常記憶手段とは別に設けられ、セキュリティー機能が高い回数記憶手段が、通常記憶手段の書き換え回数を記憶する。これにより、誤書き込み等によって書き換え回数情報（書き換え回数を示す情報）が消失する可能性を低減することができるため、書き換え回数情報の信頼性を向上することができる、という効果を奏する。
【００５９】
つぎの発明によれば、通常に使用される通常記憶手段とは別に設けられ、ユーザによる消去機能を持たない回数記憶手段が、通常記憶手段の書き換え回数を記憶する。これにより、誤書き込み等によって書き換え回数情報が消失する可能性を低減することができるため、書き換え回数情報の信頼性を向上することができる、という効果を奏する。
【００６０】
つぎの発明によれば、回数記憶手段に対する追加書き込みが可能であり、書き込み単位ごとではなく、１ビットごとの書き込みが可能となるため、書き換え回数記憶用のメモリ領域を減少させて、コストを低減することができる、という効果を奏する。
【００６１】
つぎの発明によれば、ユーザソフトウェアではなく、制御手段が、通常に使用される通常記憶手段とは別に設けられた回数記憶手段の記憶する書き換え回数を更新する。これにより、ユーザソフトウェアによって書き換え回数の更新機能を実現する必要が無くなり、また、プログラムミスを防ぎ、誤書き込み等による書き換え回数情報の消失の可能性を低減することができるため、ユーザおよびユーザソフトウェアの負荷を軽減し、また、書き換え回数情報の信頼性を向上することができる、という効果を奏する。
【００６２】
つぎの発明によれば、回数記憶手段に対する追加書き込みが可能であり、制御手段が、データ記憶手段の書き換えが行なわれるたびに、回数記憶手段の、書き込まれたビットと書き込まれていないビットとの境界を検索することによって書き込みを行なうビットを決定し、順次、１ビットの書き込みを行なう。これにより、書き込み単位ごとではなく、１ビットごとの書き込みが可能となるため、書き換え回数記憶用のメモリ領域を減少させて、コストを低減することができる、という効果を奏する。
【００６３】
つぎの発明によれば、回数記憶手段を一つのブロックとした場合において、誤書き込み等によって書き換え回数情報が消失する可能性を低減することができるため、回数記憶手段を一つのブロックとした場合においても、書き換え回数情報の信頼性を向上することができる、という効果を奏する。
【００６４】
つぎの発明によれば、回数記憶手段を一つのワード線領域とした場合において、誤書き込み等によって書き換え回数情報が消失する可能性を低減することができるため、回数記憶手段を一つのワード線領域とした場合においても、書き換え回数情報の信頼性を向上することができる、という効果を奏する。
【００６５】
つぎの発明によれば、複数のワード線領域が書き換え回数の各桁に対応するため、さらに、書き換え回数記憶用のメモリ領域を減少させることができ、書き換え回数記憶用のメモリ領域を減少させて、コストを低減することができる、という効果を奏する。
【００６６】
つぎの発明によれば、アラーム手段が、回数記憶手段の記憶する書き換え回数が、予め設定された回数を超えた場合に、アラームを発する。これにより、書き換え回数が書き換え保証回数等の予め設定された回数を超えたことをユーザに知らせることができるため、ユーザが気付かないうちに書き換え保証回数を超えてしまい、予期しないエラーを発生する可能性を低減することができる、という効果を奏する。
【００６７】
つぎの発明によれば、回数記憶手段が、通常記憶手段の、書き換えを許可しているブロックごとに、それぞれの書き換え回数を記憶し、ブロックごとに書き換え回数を管理することができるため、各ブロックの書き換え回数情報の信頼性を向上することができる、という効果を奏する。
【００６８】
つぎの発明によれば、フラッシュメモリの書き換えが行なわれるたびに、回数記憶手段の、書き込まれたビットと書き込まれていないビットとの境界を検索して書き込みビットを決定し、順次、回数記憶手段への１ビットの書き込みを行なう。これにより、書き込み単位ごとではなく、１ビットごとの書き込みが可能となるため、書き換え回数記憶用のメモリ領域を減少させて、コストを低減することができる、という効果を奏する。
【００６９】
つぎの発明によれば、複数のワード線領域を、書き換え回数の各桁に割り当て、桁上がりの際に、下位の桁に対応するワード線領域をクリアして、上位の桁に対応するワード線領域に１ビットを書き込むため、さらに、書き換え回数記憶用のメモリ領域を減少させることができ、書き換え回数記憶用のメモリ領域を減少させて、コストを低減することができる、という効果を奏する。
【００７０】
つぎの発明によれば、前述した発明にかかる方法をコンピュータに実行させるため、書き換え回数記憶用のメモリ領域を減少させて、コストを低減することができる、という効果を奏する。
【図面の簡単な説明】
【図１】  本発明の実施の形態１にかかるフラッシュロム（フラッシュメモリ）の概略構成を示すブロック図である。
【図２】  実施の形態１にかかるユーザソフトウェアによる書き換え動作の流れを示すフローチャートである。
【図３】  実施の形態１にかかるモニタメモリ領域への書き込み処理の流れを示すフローチャートである。
【図４】  実施の形態１にかかるモニタメモリ領域への書き込み処理を説明するための説明図である。
【図５】  本発明の実施の形態２にかかるモニタメモリ領域の概略構成を示す説明図である。
【図６】  実施の形態２にかかるモニタメモリ領域への書き込み処理の流れを示すフローチャートである。
【図７】  実施の形態２にかかるモニタメモリ領域への書き込み処理を説明するための説明図である。
【図８】  本発明の実施の形態３にかかるフラッシュロムの概略構成を示す説明図である。
【図９】  実施の形態３にかかるモニタメモリ領域への書き込み処理を説明するための説明図である。
【図１０】  本発明の実施の形態４にかかるモニタメモリ領域の概略構成を示す説明図である。
【図１１】  本発明の実施の形態５にかかるフラッシュロムの概略構成を示すブロック図である。
【図１２】  従来におけるフラッシュメモリの概略構成を示す説明図である。
【符号の説明】
１，４１  フラッシュロム、２  通常のフラッシュロム領域、３，１０，２２，３０  モニタメモリ領域、４，４２  制御部、５  データ・アドレスバス、４３  アラーム部、２０  サブメモリ領域、２１  メインメモリ領域、４４  回数更新部。
【図１】
0004146581.tif 000002
【図２】
0004146581.tif 000003
【図３】
0004146581.tif 000004
【図４】
0004146581.tif 000005
【図５】
0004146581.tif 000006
【図６】
0004146581.tif 000007
【図７】
0004146581.tif 000008
【図８】
0004146581.tif 000009
【図９】
0004146581.tif 000010
【図１０】
0004146581.tif 000011
【図１１】
0004146581.tif 000012
【図１２】
0004146581.tif 000013