(57)【要約】【課題】代替のメモリ装置を用いずに、不揮発メモリに対するデータの書き替え回数を増加することができるメモリ装置を提供する。【解決手段】複数のセクタ２１〜２ｎを有し、セクタ２１〜２ｎ単位で電気的に書き替えを行う不揮発メモリ２と、不揮発メモリ２にアクセスする場合の先頭アドレスをセクタ毎に記憶する先頭アドレス記憶手段３２と、セクタ毎のデータ書き替え回数を記憶する書き替え回数記憶手段３１と、制御手段１とを備える。制御手段１は、書き替え回数記憶手段３１が記憶するデータ書き替え回数に応じて、セクタの記憶データと、先頭アドレス記憶手段３２が記憶する先頭アドレスを、セクタ単位で入れ替える。【選択図】図１
2006134475.tif 000002
【特許請求の範囲】
【請求項１】
複数のセクタを有し、前記セクタ単位で電気的に書き替えを行う不揮発メモリと、
前記不揮発メモリにアクセスする場合のアドレス情報を前記セクタ毎に記憶するアドレス情報記憶手段と、
前記セクタ毎のデータ書き替え回数をカウントする計数手段と、
前記計数手段が計数する前記データ書き替え回数に応じて、前記セクタの記憶データと、前記アドレス情報記憶手段が記憶する前記アドレス情報を、前記セクタ単位で入れ替えるデータ入れ替え手段と、
を備えるメモリ装置。
【請求項２】
請求項１に記載のメモリ装置であって、
前記アドレス情報は、前記セクタにアクセスする先頭アドレスであるメモリ装置。
【請求項３】
請求項１又は２に記載のメモリ装置であって、
前記データ入れ替え手段は、前記データ書き替え回数が設定回数に到達した一のセクタと、前記データ書き替え回数が前記設定回数に到達していない他のセクタとの間で、前記記憶データと、前記アドレス情報記憶手段が記憶する前記アドレス情報を入れ替えるメモリ装置。
【請求項４】
請求項１ないし３のいずれか１項に記載のメモリ装置であって、
前記記憶データの入れ替え対象となっているすべてのセクタが前記記憶データの入れ替えを行ったことを報知する警報手段を備えるメモリ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発メモリを備えるメモリ装置に関する。
【背景技術】
【０００２】
携帯電話等の機能が増大するにつれて、本体ソフトやユーザデータを格納するためのメモリの容量も増加している。このメモリとしては、ユーザデータを何度でも書き替えることができるとともに、データへのアクセスが高速なＳＲＡＭが広く使用されている。また、ＳＲＡＭは電源が切れるとデータが消失してしまうところから、今日ではフラッシュメモリ等の、電源が切れてもデータが消失せず、電気的に消去と書き込みが高速で行える不揮発メモリが使用されるようになった。しかしながら、このような不揮発メモリはデータの書き替え回数に上限（書き替え保証回数）がある。
【０００３】
書き替え回数の上限を拡大する方法としては、この上限を超えない所定の書き替え回数を超えた時点で、別途用意された代替のメモリにデータを書き込むものが提案されている（例えば、特許文献１参照）。
【０００４】
【特許文献１】特開平３−２５７９８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載された方法では、所定の書き替え回数になる前に、データの書き込みを、不揮発メモリから代替のメモリに切り替えて行う場合に、切り替えが行われるまでは、代替のメモリは全く使用されず、代替のメモリを設置した分、携帯電話機等の大型化、重量化が避けられない。
【０００６】
本発明は、上記事情に鑑みてなされたものであり、システムの大型化、重量化を招く代替のメモリを用いることなく、データの書き替え回数を増加可能にし、結果的に不揮発メモリを用いた装置の寿命を延ばすことができるメモリ装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明のメモリ装置は、複数のセクタを有し、前記セクタ単位で電気的に書き替えを行う不揮発メモリと、前記不揮発メモリにアクセスする場合のアドレス情報を前記セクタ毎に記憶するアドレス情報記憶手段と、前記セクタ毎のデータ書き替え回数をカウントする計数手段と、前記計数手段が計数する前記データ書き替え回数に応じて、前記セクタの記憶データと、前記アドレス情報記憶手段が記憶する前記アドレス情報を、前記セクタ単位で入れ替えるデータ入れ替え手段と、を備えるものである。
【０００８】
本発明によれば、システムの大型化、重量化を招く代替のメモリを用いることなく、データの書き替え回数を増加可能にし、結果的に不揮発メモリを用いた装置の寿命を延ばすことができる。
【０００９】
また、本発明のメモリ装置は、前記アドレス情報が、前記セクタにアクセスする先頭アドレスであるものを含む。本発明によれば、不揮発メモリにアクセスする場合のアドレス情報の管理を簡単に行うことができる。
【００１０】
また、本発明のメモリ装置は、前記データ入れ替え手段が、前記データ書き替え回数が設定回数に到達した一のセクタと、前記データ書き替え回数が前記設定回数に到達していない他のセクタとの間で、前記記憶データと、前記アドレス情報記憶手段が記憶する前記アドレス情報を入れ替えるものを含む。
【００１１】
本発明によれば、頻繁に書き替えるデータを格納する一のセクタの書き替え回数をカウントし、このカウント値が書き替え保証回数に近づいたとき、他のセクタを選んで、各セクタ間でデータの入れ替えを行わせるため、書き替え回数の少なかった特定のセクタには、以後書き替え頻度の高いデータが書き込まれ、書き替え回数の多かったセクタには、以後書き替え頻度の少ないデータが書き込まれる。結果として両セクタの書き替え回数が均一化され、不揮発メモリの寿命を延ばすことができる。
【００１２】
また、本発明のメモリ装置は、前記記憶データの入れ替え対象となっているすべてのセクタが前記記憶データの入れ替えを行ったことを報知する警報手段をさらに備えるものを含む。
【００１３】
本発明によれば、書き替え回数が保証書き替え回数に近づいたことを音や光の表示によりユーザに報知でき、記憶データを失う前に、外部メモリ等に自動的にデータのバックアップをとったり、機器の買い替えを行ったりすることができる。
【発明の効果】
【００１４】
本発明によれば、システムの大型化、重量化を招く代替のメモリを用いることなく、データの書き替え回数を増加可能にし、結果的に不揮発メモリを用いた装置の寿命を延ばすことができるメモリ装置を提供することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施の形態について、図面を用いて説明する。
【００１６】
図１に、本発明の実施の形態のメモリ装置の概略構成を示す。図１のメモリ装置は、携帯電話等の各種データの記憶に利用されるもので、制御手段１と、不揮発メモリ２と、処理用メモリ３と、警報手段４とを含んで構成される。
【００１７】
制御手段１は、メモリ装置全体の動作を制御するものであり、所定のプログラムによって動作するマイクロプロセッサを主体に構成される。制御手段１が行う制御動作には、不揮発メモリ２のデータ書き替え回数に応じて、不揮発メモリの記憶データと、不揮発メモリにアクセスする場合のアドレス情報を入れ替えるデータ入れ替え動作が含まれる。
【００１８】
不揮発メモリ２は、所定容量のセクタ単位で電気的に消去と書き込みを行ってデータを書き替えるフラッシュメモリであり、携帯電話機等で用いられる本体ソフトやユーザデータが記憶される。この不揮発メモリ２は、所定容量のセクタ（第１セクタ２１〜第ｎセクタ２ｎ）に分割され、セクタ単位でデータの書き替えが行われる。また、データの書き替え回数に上限（書き替え保証回数）があり、書き替え回数が書き替え保証回数を超えた場合、記憶データは保証されない。
【００１９】
不揮発メモリ２の各セクタには、メールデータのように頻繁に書き替えられるデータと、電話帳データのように一度記憶させた後は殆ど書き替えられないデータとに分けられて記憶される。携帯電話機では、メールデータや電話帳データ等の書き替えが、随時行われるが、メールデータは頻繁に書き替えが行われるのに対して、電話帳データはメールデータほどには書き替えが行われない。不揮発メモリ２の記憶データは、各セクタのデータ書き替え回数に応じて、制御手段１により、入れ替えられる。入れ替え動作の詳細については、後述する。
【００２０】
処理用メモリ３は、ＳＲＡＭ等で構成され、データの書き替え回数記憶手段３１、及び各セクタの先頭アドレス記憶手段３２を、レジスタ空間として確保している。この処理用メモリ３は、データの書き替え回数が上限を超えたセクタのデータを、バックアップ保存するためのバックアップメモリとして機能させることができる。
【００２１】
書き替え回数記憶手段３１は、不揮発メモリ２の記憶データの書き替え回数をセクタ毎に記憶するものである。書き替え回数記憶手段３１が記憶する値は、制御手段１によって不揮発メモリ２の所定のセクタが書き替えられるたびに、カウントアップされた値に更新される。
【００２２】
先頭アドレス記憶手段３２は、不揮発メモリにアクセスする場合のアドレス情報である先頭アドレスをセクタ毎に記憶するものである。この情報は、不揮発メモリ２の各セクタが、携帯電話等が使用するアドレス空間のどの部分を占めるかを示すもので、制御手段１が所定のアドレス領域にアクセスする場合、そのアドレスと先頭アドレス記憶手段３２の先頭アドレスを対比して該当するセクタを特定する。
【００２３】
警告手段４は、記憶データの入れ替え対象となっているすべてのセクタが、記憶データの入れ替えを行ったことを報知するものである。この報知は、例えば、音や光あるいは文字表示により行う。
【００２４】
次に、メモリ装置の動作を、記憶データの入れ替えを中心に図２ないし図４に示すフローチャートを参照して、詳しく説明する。いま、不揮発メモリ２の各セクタ単位での書き替え保証回数が１００００回であり、データ入れ替えのための基準回数を、例えば、書き替え保証回数の９０％である９０００回に設定したとする。基準回数を書き替え保証回数の９０％とした理由は、データ入れ替えの基準回数を書き替え保証回数とすると、入れ替えた後のセクタの書き替えができなくなるためである。
【００２５】
記憶データの入れ替えは、第１のセクタ２１と第２のセクタ２２の間で行われるものとする。また、記憶データの入れ替えは、１回のみ行われるものとする。
【００２６】
処理用メモリ３内の書き替え回数記憶手段３１には、第１セクタの書き替え回数Ｎ１を記憶するレジスタ空間及び第２のセクタの書き替え回数Ｎ２を記憶するレジスタ空間が確保される。また、処理用メモリ３内の先頭アドレス記憶手段３２には、第１セクタの先頭アドレスＡ１を記憶するレジスタ、第２のセクタの先頭アドレスＡ２を記憶するレジスタが確保される。
【００２７】
まず、携帯電話等の製品の開発時や出荷時のメモリ装置の動作を、図２に示すフローチャートを参照して説明する。不揮発メモリ２のメモリ空間の振り分けを行う際に、頻繁に書き替えを行うデータを記憶するセクタを第１のセクタ２１とし、殆ど書き替えを行わないデータを記憶するセクタを第２のセクタ２２と設定し、これらの２つのセクタを、データの入れ替えを行うセクタと決定する(ステップＳ１)。そして、処理用メモリ３の各レジスタ空間に、初期値Ｎ１＝０、Ｎ２＝０、Ａ１＝Ａｄｒｅｓｓ１、Ａ2  ＝Ａｄｒｅｓｓ２を格納する（ステップＳ2）。
【００２８】
次に、携帯電話機等の製品の通常使用時におけるメモリ装置の動作を、図３及び図４に示すフローチャートを参照して説明する。記憶データの書き込みが指示されると、制御手段１は、先頭アドレス記憶手段３２の先頭アドレスと書き込みアドレスから書き替えセクタを確認する（ステップＳ１１）。ここでは、確認した書き換えセクタがデータの入れ替えを行うセクタであるとする。
【００２９】
次いで、書き替え回数記憶手段３１を参照し、書き替えセクタの書き替え回数Ｎａを取得する（ステップＳ１２）。そして、Ｎａ＝９０００回の条件を満たすか否かを確認する（ステップＳ１２）。この例では、書き替えセクタが第１のセクタである場合は、Ｎ１＝９０００回か否かが確認され、書き替えセクタが第２のセクタである場合は、Ｎ２＝９０００回か否かが確認される。
【００３０】
Ｎ１＝９０００回を満たしていない場合には、そのセクタのデータを書き替え(ステップＳ１４）、Ｎａ＝Ｎａ＋１としてそのセクタの書き替え回数をカウントアップして書き替え回数記憶手段３１を更新する（ステップＳ１５）。
【００３１】
Ｎ１＝９０００回である場合は、データ入れ替え処理を実行する(ステップＳ１６)。
【００３２】
データの入れ替え処理を、図４に示すフローチャートを参照しながら説明する。書き込みを行うべきセクタの書き替え回数がＮａ＝９０００回である場合、データの入れ替えを行う他のセクタの書き替え回数Ｎｂを取得する(ステップＳ２１)。この例では、書き替えセクタが第１のセクタ２１である場合は、第２のセクタ２２の書き替え回数Ｎ２を取得し、書き替えセクタが第２のセクタ２２である場合は、第１のセクタ２１の書き替え回数Ｎ１を取得する。
【００３３】
そして、Ｎｂ＜９０００回のセクタが有るか否かを確認し(ステップＳ２２)、Ｎｂ＜９０００回のセクタが有る場合は、データの入れ替え処理を行う（ステップＳ２３）。すなわち、書き込みデータは、このステップで確認された他のセクタに記憶され、他のセクタに記憶されていたデータは、書き込みを行う予定のセクタに記憶される。この例では、第１のセクタ２１と第２のセクタ２２に記憶されたデータの入れ替えを行う。
【００３４】
そして、Ｎａ＝Ｎａ＋１、Ｎｂ＝Ｎｂ＋１として入れ替えを行ったセクタの書き替え回数をカウントアップして書き替え回数記憶手段３１を更新する（ステップＳ２４）。また、先頭アドレス記憶手段の先頭アドレスを入れ替える（ステップｓ２５）。この例では、第１のセクタ２１の先頭アドレスがＡ１からＡ２に、第２のセクタ２２の先頭アドレスがＡ２からＡ１に入れ替えられる。
【００３５】
Ｎｂ＜９０００回のセクタが無い場合は、データの入れ替えを行わず、すべてのセクタの書き換え回数が基準回数を超えた旨の警報を出力する（ステップＳ２６）。そして、そのセクタのデータを書き替え(ステップＳ２７）、Ｎａ＝Ｎａ＋１としてそのセクタの書き替え回数をカウントアップして書き替え回数記憶手段３１を更新する（ステップＳ２８）。
【００３６】
ステップＳ２６の警報は、例えば、書き替え回数が残り１０００回と表示し、データのバックアップや機器の買い替えを促すものである。このとき、外部メモリを持つ携帯電話機等では、自動的にユーザデータをこの外部メモリに転送することにより、データのバックアップを行ってもよい。また、外部メモリを持たない場合、不揮発メモリ２に記憶されたデータの内の重要なものを、処理用メモリ３にバックアップするようにしてもよい。
【００３７】
以上のような記憶データの入れ替え処理を行うと、入れ替えを行うべく設定されたセクタの全てが基準書き換え回数に達するまで入れ替えが行われる。この例で、第１のセクタ２１の書き替え回数を１日あたり５０回、第２のセクタ２２の書き替え回数を年間１００回とした場合に、本発明のメモリ装置を用いない場合は、第1のセクタ２１の書き替え回数が１００００回になった時点が、携帯電話機等の寿命になる。したがって、１００００回÷５０回＝２００日しかもたないことになる。
【００３８】
しかし、本発明のメモリ装置では、書き替え回数が第１のセクタ２１で９０００回、第２のセクタで略１００００回(合計１９０００回)になるため、１９０００回÷５０回＝３８０日となり、寿命が略２倍に延びたこととなる。
【００３９】
このように、本発明では、不揮発メモリの各セクタに対するデータの書き替え回数をカウントし、カウントした書き替え回数が保証書き替え回数に近づいた一のセクタのデータと、書き替え回数が少ない他のセクタのデータとを入れ替えるとともに、入れ替えた各セクタの先頭アドレスを相互に入れ替えるように構成している。これにより、書き替え回数の少なかった他のセクタには、以後書き替え頻度の高いデータが書き込まれ、書き替え回数の多かった一のセクタには、以後書き替え頻度の少ないデータが書き込まれる。この結果、両セクタの書き替え回数が均され、揮発性メモリの寿命を延長させることができる。
【００４０】
なお、以上の説明では、基準書き替え回数に達したセクタのデータ入れ替えを１回のみ行うようにしたが、複数回でもよい。例えば、２回行う場合は、第２の基準回数として９８００回を設定し、すべてのセクタが第１の基準書き替え回数９０００回を超えた場合でも、すべてのセクタが９８００回を超えるまで、データの入れ替えを行う。
【産業上の利用可能性】
【００４１】
本発明は、システムの大型化、重量化を招く代替の不揮発メモリを用いることなく、データの書き替え回数を増加可能にし、結果的に不揮発メモリを用いた装置の寿命を延ばすことができるメモリ装置等として有用である。
【図面の簡単な説明】
【００４２】
【図１】本発明の実施の形態のメモリ装置の概略構成を示す図
【図２】本発明の実施の形態のメモリ装置の製品の開発時、出荷時における動作を示すフローチャート
【図３】本発明の実施の形態のメモリ装置の通常使用時における動作を示すフローチャート
【図４】本発明の実施の形態のメモリ装置のデータ入れ替え処理動作を示すフローチャート
【符号の説明】
【００４３】
１  制御手段
２  不揮発メモリ（フラッシュメモリ）
３  処理用メモリ
４  警告手段
２１  第１のセクタ
２２  第２のセクタ
３１  書き替え回数記憶手段
３２  先頭アドレス記憶手段
【図１】
2006134475.tif 000003
【図２】
2006134475.tif 000004
【図３】
2006134475.tif 000005
【図４】
2006134475.tif 000006