(57)【要約】【課題】不揮発性メモリのデータ書換え寿命の低下を抑制しながら、長期間のデータ保持を実現することができる電子機器を提供する。【解決手段】電子機器１が、位置情報Ｐに対応する地域の平均気温Ｔａが含まれる温度範囲における不揮発性メモリ２のデータ書換え実行回数Ｎに対応したリフレッシュ実行間隔Ｄｘおよび不揮発性メモリ２の前回のリフレッシュ実行日時Ｄａからの経過時間に基づいて、不揮発性メモリ２のリフレッシュの実行可否を判定する。【選択図】図１
2019204229.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリを有した電子機器であって、
電子機器の位置情報を取得する位置情報取得部と、
複数の温度範囲における前記不揮発性メモリのデータ書換え実行回数の範囲に対応したリフレッシュ実行間隔の中から、前記位置情報取得部によって取得された位置情報に対応する地域の平均気温が含まれる温度範囲における前記不揮発性メモリのデータ書換え実行回数に対応したリフレッシュ実行間隔を取得するリフレッシュ間隔取得部と、
前記リフレッシュ間隔取得部によって取得されたリフレッシュ実行間隔および前記不揮発性メモリの前回のリフレッシュ実行からの経過時間に基づいて、前記不揮発性メモリのリフレッシュの実行可否を判定する判定部と、
前記判定部によってリフレッシュの実行可と判定された場合に、前記不揮発性メモリのリフレッシュを実行するリフレッシュ実行部とを備えたこと
を特徴とする電子機器。
【請求項２】
不揮発性メモリを有した電子機器であって、
電子機器の位置情報を取得する位置情報取得部と、
前記不揮発性メモリの前回のリフレッシュ実行から電子機器の前回の起動までの時間、電子機器の前回の起動からの経過時間、前記位置情報取得部によって取得された位置情報に対応する地域の平均気温、および前記不揮発性メモリの前回のリフレッシュ実行までの前記不揮発性メモリの平均保管温度を用いて、前記不揮発性メモリの前回のリフレッシュ実行からの前記不揮発性メモリの平均保管温度を算出する保管温度算出部と、
複数の温度範囲における前記不揮発性メモリのデータ書換え実行回数の範囲に対応したリフレッシュ実行間隔の中から、前記保管温度算出部によって算出された平均保管温度が含まれる温度範囲における前記不揮発性メモリのデータ書換え実行回数に対応したリフレッシュ実行間隔を取得するリフレッシュ間隔取得部と、
前記リフレッシュ間隔取得部によって取得されたリフレッシュ実行間隔および前記不揮発性メモリの前回のリフレッシュ実行からの経過時間に基づいて、前記不揮発性メモリのリフレッシュの実行可否を判定する判定部と、
前記判定部によってリフレッシュの実行可と判定された場合に、前記不揮発性メモリのリフレッシュを実行するリフレッシュ実行部とを備えたこと
を特徴とする電子機器。
【請求項３】
電子機器の内部の温度情報を取得する機器内温度取得部と、
電子機器の外部の温度情報を取得する外気温取得部と、
前記機器内温度取得部および前記外気温取得部によって取得された温度情報に基づいて前記平均気温を補正する温度補正部とを備え、
前記リフレッシュ間隔取得部は、複数の温度範囲における前記不揮発性メモリのデータ書換え実行回数の範囲に対応したリフレッシュ実行間隔の中から、前記温度補正部によって補正された前記平均気温が含まれる温度範囲における前記不揮発性メモリのデータ書換え実行回数に対応したリフレッシュ実行間隔を取得すること
を特徴とする請求項１記載の電子機器。
【請求項４】
前記機器内温度取得部は、電子機器が起動したタイミングで電子機器の内部の温度情報を取得すること
を特徴とする請求項３記載の電子機器。
【請求項５】
車両に搭載されていること
を特徴とする請求項１記載の電子機器。
【請求項６】
請求項１から請求項５のいずれか１項記載の電子機器と、
地域ごとの前記平均気温、および複数の温度範囲における前記不揮発性メモリのデータ書換え実行回数の範囲に対応したリフレッシュ実行間隔が登録されたデータベースとを備えたこと
を特徴とするメモリ管理システム。
【請求項７】
コンピュータを、
不揮発性メモリを有した電子機器の位置情報を取得する位置情報取得部と、
複数の温度範囲における前記不揮発性メモリのデータ書換え実行回数の範囲に対応したリフレッシュ実行間隔の中から、前記位置情報取得部によって取得された位置情報に対応する地域の平均気温が含まれる温度範囲における前記不揮発性メモリのデータ書換え実行回数に対応したリフレッシュ実行間隔を取得するリフレッシュ間隔取得部と、
前記リフレッシュ間隔取得部によって取得されたリフレッシュ実行間隔および前記不揮発性メモリの前回のリフレッシュ実行からの経過時間に基づいて、前記不揮発性メモリのリフレッシュの実行可否を判定する判定部と、
前記判定部によってリフレッシュの実行可と判定された場合に、前記不揮発性メモリのリフレッシュを実行するリフレッシュ実行部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、不揮発性メモリを有した電子機器に関する。
【背景技術】
【０００２】
一般に、不揮発性メモリのデータ保持特性（以下、リテンション特性と記載する）は、使用温度または保管温度に応じて大きく変動する。例えば、不揮発性メモリが高温環境下におかれると、リテンション特性は低下する。不揮発性メモリにデータを長期間保持するために、例えば、特許文献１に記載された電子機器では、不揮発性メモリが所定温度以上の高温環境下におかれた時間が閾値を超える度に、不揮発性メモリのリフレッシュを実行している。なお、リフレッシュは、不揮発性メモリに保持されたデータを再書き込みする処理である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２７０２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載された電子機器は、温度センサを用いて動作中の電子機器の温度情報を定期的に取得し、取得した温度が一定温度を超えた時間を計測している。
一般に、電子機器がカーナビゲーション装置といった車載機器である場合、車載機器が動作している時間は、１日のうち、車両が使用されている数時間程度であり、それ以外の時間は動作していないことが多い。
さらに、不揮発性メモリのリテンション特性は、不揮発性メモリがおかれた温度が一定温度を超えた場合にのみ低下するのではなく、電子機器の動作によらず、不揮発性メモリがおかれた平均的な温度に応じて変動する。
このため、特許文献１に記載された電子機器では、温度環境の変化がリテンション特性に与える影響をリフレッシュ実行間隔に適切に反映することができず、必要以上の回数でリフレッシュが実行されて不揮発性メモリのデータ書換え寿命が低下する可能性がある。
【０００５】
この発明は上記課題を解決するものであり、不揮発性メモリのデータ書換え寿命の低下を抑制しながら、長期間のデータ保持を実現することができる電子機器を得ることを目的とする。
【課題を解決するための手段】
【０００６】
この発明に係る電子機器は、不揮発性メモリを有した電子機器であって、位置情報取得部、リフレッシュ間隔取得部、判定部およびリフレッシュ実行部を備える。位置情報取得部は、電子機器の位置情報を取得する。リフレッシュ間隔取得部は、複数の温度範囲における不揮発性メモリのデータ書換え実行回数の範囲に対応したリフレッシュ実行間隔の中から、位置情報取得部によって取得された位置情報に対応する地域の平均気温が含まれる温度範囲における不揮発性メモリのデータ書換え実行回数に対応したリフレッシュ実行間隔を取得する。判定部は、リフレッシュ間隔取得部によって取得されたリフレッシュ実行間隔および不揮発性メモリの前回のリフレッシュ実行からの経過時間に基づいて、不揮発性メモリのリフレッシュの実行可否を判定する。リフレッシュ実行部は、判定部によってリフレッシュの実行可と判定された場合に、不揮発性メモリのリフレッシュを実行する。
【発明の効果】
【０００７】
この発明によれば、電子機器が、電子機器の位置情報に対応する地域の平均気温が含まれる温度範囲における不揮発性メモリのデータ書換え実行回数に対応したリフレッシュ実行間隔および不揮発性メモリの前回のリフレッシュ実行からの経過時間に基づいて、不揮発性メモリのリフレッシュの実行可否を判定する。これによって、不揮発性メモリがおかれた温度環境およびデータ書換え実行回数に対応した適切なリフレッシュ実行間隔が取得されるので、電子機器は、不揮発性メモリのデータ書換え寿命の低下を抑制しながら、長期間のデータ保持を実現することができる。
【図面の簡単な説明】
【０００８】
【図１】この発明の実施の形態１に係る電子機器の構成を示すブロック図である。
【図２】実施の形態１におけるリフレッシュ実行間隔データベース（以下、ＤＢと記載する）を構成する第１のＤＢの例を示す図である。
【図３】実施の形態１におけるリフレッシュ実行間隔ＤＢを構成する第２のＤＢの例を示す図である。
【図４】実施の形態１に係る電子機器の動作を示すフローチャートである。
【図５】温度に対する、フラッシュメモリのデータ書換え回数とリテンション時間との関係を示すグラフである。
【図６】図６Ａは、実施の形態１に係る電子機器の機能を実現するハードウェア構成を示すブロック図である。図６Ｂは、実施の形態１に係る電子機器の機能を実現するソフトウェアを実行するハードウェア構成を示すブロック図である。
【図７】実施の形態１に係るメモリ管理システムの構成を示すブロック図である。
【図８】この発明の実施の形態２に係る電子機器の構成を示すブロック図である。
【図９】実施の形態２に係る電子機器の動作を示すフローチャートである。
【図１０】この発明の実施の形態３に係る電子機器の構成を示すブロック図である。
【図１１】実施の形態３におけるリフレッシュ実行間隔ＤＢを構成する第２のＤＢの例を示す図である。
【図１２】実施の形態３に係る電子機器の動作を示すフローチャートである。
【発明を実施するための形態】
【０００９】
実施の形態１．
図１は、この発明の実施の形態１に係る電子機器１の構成を示すブロック図である。
電子機器１は、不揮発性メモリ２を有しており、カーナビゲーション装置のような車両に搭載された車載機器であってもよい。不揮発性メモリ２は、例えば、電子機器１に搭載されたフラッシュメモリであって、ソリッドステートドライブ（ＳＳＤ）、エンベデッドマルチメディアカード（ｅＭＭＣ）またはＳＤ（セキュアデジタル）カードによって実現される。
【００１０】
電子機器１は、位置情報取得部１０、リフレッシュ間隔取得部１１、判定部１２およびリフレッシュ実行部１３を備えて構成される。位置情報取得部１０は、電子機器１の位置情報Ｐを取得する。位置情報Ｐは、例えば電子機器１の位置の緯度経度であってもよい。
【００１１】
リフレッシュ間隔取得部１１は、位置情報取得部１０によって取得された位置情報Ｐに対応する地域の平均気温Ｔａが含まれる温度範囲における、不揮発性メモリ２のデータ書換え実行回数Ｎに対応したリフレッシュ実行間隔Ｄｘを、リフレッシュ実行間隔ＤＢ２０から取得する。リフレッシュ実行間隔ＤＢ２０は、位置情報Ｐに対応する地域の平均気温Ｔａと、複数の温度範囲における、不揮発性メモリ２のデータ書換え実行回数Ｎの範囲に対応したリフレッシュ実行間隔Ｄｘとが登録されたデータベースである。
【００１２】
判定部１２は、リフレッシュ間隔取得部１１によって取得されたリフレッシュ実行間隔Ｄｘと前回のリフレッシュ実行日時Ｄａから現在日時Ｄｂまでの経過時間とに基づいて、不揮発性メモリ２のリフレッシュの実行可否を判定する。例えば、ＤａからＤｂを引いた時間がＤｘよりも長ければ、判定部１２は、不揮発性メモリ２のリフレッシュが実行可であると判定する。また、ＤａからＤｂを引いた時間がＤｘ以下であれば、判定部１２は、不揮発性メモリ２のリフレッシュを実行不可と判定する。
【００１３】
リフレッシュ実行部１３は、判定部１２によってリフレッシュ実行可と判定された場合に、不揮発性メモリ２のリフレッシュを実行する。例えば、リフレッシュ実行部１３は、不揮発性メモリ２からデータを読み出し、不揮発性メモリ２における通算のデータ書換え回数が少ない記憶領域を優先的に選択して、読み出したデータを再書き込みする。なお、リフレッシュ実行部１３は、リフレッシュを実行すると、データ書換え実行回数Ｎおよび前回のリフレッシュ実行日時Ｄａを更新する。
【００１４】
不揮発性メモリ２には、リフレッシュ実行間隔ＤＢ２０、データ書換え実行回数Ｎ、前回のリフレッシュ実行日時Ｄａおよび保存データが記憶されている。保存データは、例えば、リフレッシュ対象のデータである。データ書換え実行回数Ｎは、リフレッシュに限らず、不揮発性メモリ２のデータ書換えが実行されるたびに値が更新される。データ書換え実行回数Ｎと前回のリフレッシュ実行日時Ｄａとは、不揮発性メモリ２の特定のレジスタに保存されてもよい。
【００１５】
図２は、リフレッシュ実行間隔ＤＢ２０を構成する第１のＤＢ２０ａの例を示す図である。図３は、リフレッシュ実行間隔ＤＢ２０を構成する第２のＤＢ２０ｂの例を示す図である。リフレッシュ実行間隔ＤＢ２０は、第１のＤＢ２０ａおよび第２のＤＢ２０ｂから構成される。第１のＤＢ２０ａは、地域とその地域における平均気温Ｔａとが登録されている。また、第２のＤＢ２０ｂには、複数の温度範囲における不揮発性メモリ２のデータ書換え実行回数Ｎに対応したリフレッシュ実行間隔Ｄｘが登録されている。
【００１６】
リフレッシュ実行間隔Ｄｘは、不揮発性メモリ２のデータ書換え寿命が低下することが抑制される適切なリフレッシュの実行間隔であって、複数の温度範囲およびデータ書換え実行回数Ｎに応じて事前に決定される。温度範囲は、平均気温Ｔａの温度範囲である。
なお、第１のＤＢ２０ａおよび第２のＤＢ２０ｂから構成されるリフレッシュ実行間隔ＤＢ２０を示したが、リフレッシュ実行間隔ＤＢ２０は、第１のＤＢ２０ａと第２のＤＢ２０ｂの両方の内容が１つに登録されたＤＢであってもよい。
【００１７】
次に動作について説明する。
図４は、電子機器１の動作を示すフローチャートであり、不揮発性メモリ２のリフレッシュの実行可否を判定する一連の処理を示している。
位置情報取得部１０は、システムが起動すると、電子機器１の位置情報Ｐを取得する（ステップＳＴ１）。位置情報取得部１０によって取得された位置情報Ｐはリフレッシュ間隔取得部１１に出力される。次に、リフレッシュ間隔取得部１１は、不揮発性メモリ２からデータ書換え実行回数Ｎを取得し（ステップＳＴ２）、不揮発性メモリ２から前回のリフレッシュ実行日時Ｄａを取得する（ステップＳＴ３）。
【００１８】
判定部１２が、現在日時Ｄｂを取得する（ステップＳＴ４）。現在日時Ｄｂの取得方法は、例えば、電子機器１の内部時計を用いてもよく、ＧＮＳＳ（全地球測位衛星システム）衛星から受信されたＧＮＳＳ信号に含まれる時刻情報を用いてもよい。
【００１９】
次に、リフレッシュ間隔取得部１１は、位置情報取得部１０によって取得された位置情報Ｐに対応する地域の平均気温Ｔａをリフレッシュ実行間隔ＤＢ２０の第１のＤＢ２０ａから取得する（ステップＳＴ５）。例えば、位置情報Ｐが示す位置が地域Ａに含まれる場合、リフレッシュ間隔取得部１１は、図２に示した第１のＤＢ２０ａから、平均気温Ｔａとして１５℃を取得する。
【００２０】
続いて、リフレッシュ間隔取得部１１は、平均気温Ｔａが含まれる温度範囲における、不揮発性メモリ２のデータ書換え実行回数Ｎに対応したリフレッシュ実行間隔Ｄｘを、リフレッシュ実行間隔ＤＢ２０の第２のＤＢ２０ｂから取得する（ステップＳＴ６）。
例えば、第１のＤＢ２０ａから取得された平均気温Ｔａが１５℃で、不揮発性メモリ２から取得されたデータ書換え実行回数Ｎが３５００回であった場合、リフレッシュ間隔取得部１１は、図３に示した第２のＤＢ２０ｂから、リフレッシュ実行間隔Ｄｘ（５年）を取得する。リフレッシュ間隔取得部１１によって取得されたリフレッシュ実行間隔Ｄｘは、判定部１２に出力される。
【００２１】
判定部１２は、前回のリフレッシュ実行日時Ｄａから現在日時Ｄｂまでに経過した時間（Ｄｂ−Ｄａ）がリフレッシュ実行間隔Ｄｘよりも長いか否かを確認する（ステップＳＴ７）。ここで、前回のリフレッシュ実行日時Ｄａから現在日時Ｄｂまでに経過した時間の長さがリフレッシュ実行間隔Ｄｘ以下である場合（ステップＳＴ７；ＮＯ）、判定部１２は、不揮発性メモリ２のリフレッシュが実行不可と判定して、図４の処理を終了する。
【００２２】
一方、前回のリフレッシュ実行日時Ｄａから現在日時Ｄｂまでに経過した時間の長さがリフレッシュ実行間隔Ｄｘよりも長い場合（ステップＳＴ７；ＹＥＳ）、判定部１２は、不揮発性メモリ２のリフレッシュの実行可と判定し、この判定結果をリフレッシュ実行部１３に通知する。リフレッシュ実行部１３は、上記通知を受けると、不揮発性メモリ２のリフレッシュを実行する（ステップＳＴ８）。
【００２３】
リフレッシュ実行部１３は、不揮発性メモリ２のリフレッシュを完了すると、前回のリフレッシュ実行日時Ｄａを現在日時Ｄｂで更新する（ステップＳＴ９）。さらに、リフレッシュ実行部１３は、リフレッシュ処理でデータを再書き込みした記憶領域のデータ書換え実行回数Ｎを更新する。この後、図４の処理が終了される。
なお、図４のフローチャートの一連の処理は、不揮発性メモリ２のリフレッシュの実行可否を判定する処理の一例を示しており、各種情報を取得する順番は入れ替えてもよい。
【００２４】
図５は、温度に対する、フラッシュメモリのデータ書換え回数とリテンション時間との関係を示すグラフである。図５に示すように、フラッシュメモリのリテンション特性は、フラッシュメモリがおかれた温度が一定温度を超えたときに低下するわけではなく、温度に応じて変動する。このため、特許文献１に記載された電子機器では、温度環境の変化がリテンション特性に与える影響をリフレッシュ実行間隔に適切に反映できない。
これに対して、実施の形態１に係る電子機器１では、電子機器１が存在する地域の平均気温Ｔａとデータ書換え実行回数Ｎとに応じた最適なリフレッシュ実行間隔Ｄｘが取得されるので、不揮発性メモリ２のデータ書換え寿命を低下させずに、長期間のデータ保持が可能となる。
【００２５】
電子機器１における、位置情報取得部１０、リフレッシュ間隔取得部１１、判定部１２およびリフレッシュ実行部１３の機能は、処理回路によって実現される。すなわち、電子機器１は、図４におけるステップＳＴ１からステップＳＴ９までの処理を実行するための処理回路を備えている。この処理回路は、専用のハードウェアであってもよいが、メモリに記憶されたプログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であってもよい。
【００２６】
図６Ａは、電子機器１の機能を実現するハードウェア構成を示すブロック図である。図６Ｂは、電子機器１の機能を実現するソフトウェアを実行するハードウェア構成を示すブロック図である。図６Ａおよび図６Ｂにおいて、ＧＮＳＳ受信機１００は、ＧＮＳＳ衛星からＧＮＳＳ信号を受信する。位置情報取得部１０は、ＧＮＳＳ受信機１００により受信されたＧＮＳＳ信号から電子機器１の位置情報Ｐを取得する。また、判定部１２は、ＧＮＳＳ信号に含まれる時刻情報を用いて現在日時Ｄｂを取得してもよい。不揮発性メモリ１０１は、図１に示した不揮発性メモリ２である。
【００２７】
処理回路が図６Ａに示す専用のハードウェアの処理回路１０２である場合、処理回路１０２は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）またはこれらを組み合わせたものが該当する。電子機器１における、位置情報取得部１０、リフレッシュ間隔取得部１１、判定部１２およびリフレッシュ実行部１３の機能を別々の処理回路で実現してもよく、これらの機能をまとめて１つの処理回路で実現してもよい。
【００２８】
処理回路が図６Ｂに示すプロセッサ１０３である場合、電子機器１における、位置情報取得部１０、リフレッシュ間隔取得部１１、判定部１２およびリフレッシュ実行部１３の機能は、ソフトウェア、ファームウェアまたはソフトウェアとファームウェアとの組み合わせによって実現される。なお、ソフトウェアまたはファームウェアは、プログラムとして記述されて不揮発性メモリ１０１に記憶される。
【００２９】
プロセッサ１０３は、不揮発性メモリ１０１に記憶されたプログラムを読み出して実行することにより、電子機器１における、位置情報取得部１０、リフレッシュ間隔取得部１１、判定部１２およびリフレッシュ実行部１３の機能を実現する。すなわち、電子機器１は、プロセッサ１０３によって実行されるときに、図４に示したステップＳＴ１からステップＳＴ９までの処理が結果的に実行されるプログラムを記憶するための不揮発性メモリ１０１を備える。これらのプログラムは、位置情報取得部１０、リフレッシュ間隔取得部１１、判定部１２およびリフレッシュ実行部１３の手順または方法をコンピュータに実行させる。不揮発性メモリ１０１は、コンピュータを、位置情報取得部１０、リフレッシュ間隔取得部１１、判定部１２およびリフレッシュ実行部１３として機能させるためのプログラムを記憶している。なお、上記プログラムは、プロセッサ１０３からデータの読み出し可能な記憶装置であれば、不揮発性メモリ１０１とは別に設けられた記憶装置に記憶されていてもよい。
【００３０】
位置情報取得部１０、リフレッシュ間隔取得部１１、判定部１２、およびリフレッシュ実行部１３の機能は、一部を専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現してもよい。例えば、位置情報取得部１０は、専用のハードウェアである処理回路で機能を実現し、リフレッシュ間隔取得部１１、判定部１２およびリフレッシュ実行部１３は、プロセッサ１０３が不揮発性メモリ１０１に記憶されたプログラムを読み出して実行することによって機能を実現する。このように、処理回路は、ハードウェア、ソフトウェア、ファームウェアまたはこれらの組み合わせにより上記機能を実現することができる。
【００３１】
リフレッシュ実行間隔ＤＢ２０、データ書換え実行回数Ｎおよび前回のリフレッシュ実行日時Ｄａを不揮発性メモリ２に保存した場合を示したが、実施の形態１は、これに限定されるものではない。例えば、これらの情報を外部のサーバ装置が保存してもよい。
図７は、実施の形態１に係るメモリ管理システム３の構成を示すブロック図である。
メモリ管理システム３において、不揮発性メモリ２を有した電子機器１は、ネットワーク４を介して、サーバ装置５と通信接続することができる。不揮発性メモリ２についてのリフレッシュ実行間隔ＤＢ２０、不揮発性メモリ２のデータ書換え実行回数Ｎ、および前回のリフレッシュ実行日時Ｄａは、サーバ装置５に保存される。
【００３２】
電子機器１が備えるリフレッシュ間隔取得部１１は、ネットワーク４を介して、サーバ装置５からリフレッシュ実行間隔Ｄｘおよびデータ書換え実行回数Ｎを取得する。判定部１２も、ネットワーク４を介して、サーバ装置５から前回のリフレッシュ実行日時Ｄａを取得する。リフレッシュ実行部１３は、不揮発性メモリ２のリフレッシュを実行した場合に、ネットワーク４を介して、サーバ装置５に保存されているデータ書換え実行回数Ｎおよび前回のリフレッシュ実行日時Ｄａを更新する。これによって、メモリ管理システム３が備える電子機器１は、不揮発性メモリ２のデータ書換え寿命の低下を抑制しながら、長期間のデータ保持を実現することができる。
【００３３】
なお、リフレッシュ実行間隔ＤＢ２０、データ書換え実行回数Ｎおよび前回のリフレッシュ実行日時Ｄａのうちの少なくとも一つをサーバ装置５が保存してもよく、電子機器１からデータ読み出し可能な装置であれば、これらの情報を別々の装置が保存してもよい。
【００３４】
以上のように、実施の形態１に係る電子機器１は、位置情報Ｐに対応する地域の平均気温Ｔａが含まれる温度範囲における、不揮発性メモリ２のデータ書換え実行回数Ｎに対応したリフレッシュ実行間隔Ｄｘおよび前回のリフレッシュ実行日時Ｄａからの経過時間に基づいて、不揮発性メモリ２のリフレッシュの実行可否を判定する。これにより、不揮発性メモリ２がおかれた温度環境とデータ書換え実行回数Ｎに対応した適切なリフレッシュ実行間隔Ｄｘが取得されるので、電子機器１は、不揮発性メモリ２のデータ書換え寿命の低下を抑制しながら、長期間のデータ保持を実現することができる。
特に、電子機器１がおかれた地域の平均気温Ｔａを用いるので、電子機器１が車載機器であっても、電子機器１の動作に関係なく、不揮発性メモリ２の保管温度を推定することができ、推定した温度をリフレッシュ実行間隔Ｄｘの判定に反映させることができる。
【００３５】
実施の形態２．
図８は、この発明の実施の形態２に係る電子機器１Ａの構成を示すブロック図である。図８において、図１と同一構成要素には同一符号を付して説明を省略する。電子機器１Ａは、不揮発性メモリ２を有しており、カーナビゲーション装置のような車両に搭載された車載機器であってもよい。電子機器１Ａは、図８に示すように、位置情報取得部１０、リフレッシュ間隔取得部１１Ａ、判定部１２、リフレッシュ実行部１３および保管温度算出部１４を備えて構成される。
【００３６】
不揮発性メモリ２に対する前回のリフレッシュ実行日時Ｄａから、電子機器１Ａが移動して地域が変更されると、電子機器１Ａがおかれた地域の平均気温Ｔａも変化する可能性がある。これは、電子機器１Ａが車載機器である場合に十分に起こり得る事態である。
そこで、実施の形態２に係る電子機器１Ａでは、前回のリフレッシュ実行日時Ｄａからの不揮発性メモリ２の平均保管温度Ｔｃをリフレッシュ実行間隔Ｄｘの判定に反映させている。平均保管温度Ｔｃは、不揮発性メモリ２に対する前回のリフレッシュ実行日時Ｄａから現在日時Ｄｂまでの不揮発性メモリ２の平均的な保管温度である。この平均保管温度Ｔｃを用いることで、電子機器１Ａが地域間を移動したときの温度変化の影響が緩和されるので、電子機器１Ａは、不揮発性メモリ２のデータ書換え寿命の低下を抑制しながら、長期間のデータ保持を実現することができる。
【００３７】
保管温度算出部１４は、不揮発性メモリ２に対する前回のリフレッシュ実行日時Ｄａからの不揮発性メモリ２の平均保管温度Ｔｃを算出する。
リフレッシュ間隔取得部１１Ａは、リフレッシュ実行間隔ＤＢ２０から、保管温度算出部１４によって算出された平均保管温度Ｔｃが含まれる温度範囲における、不揮発性メモリ２のデータ書換え実行回数Ｎに対応したリフレッシュ実行間隔Ｄｘを取得する。
【００３８】
位置情報取得部１０、リフレッシュ間隔取得部１１Ａ、判定部１２、リフレッシュ実行部１３および保管温度算出部１４の機能を実現する処理回路は、図６Ａに示した専用のハードウェアである処理回路１０２であってもよい。また、位置情報取得部１０、リフレッシュ間隔取得部１１Ａ、判定部１２、リフレッシュ実行部１３および保管温度算出部１４の機能を実現する処理回路は、図６Ｂに示した不揮発性メモリ１０１に記憶されたプログラムを実行するプロセッサ１０３であってもよい。さらに、位置情報取得部１０、リフレッシュ間隔取得部１１Ａ、判定部１２、リフレッシュ実行部１３および保管温度算出部１４の機能について一部を専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現してもよい。
【００３９】
次に動作について説明する。
図９は、電子機器１Ａの動作を示すフローチャートであり、不揮発性メモリ２のリフレッシュの実行可否を判定する一連の処理を示している。
位置情報取得部１０は、システムが起動すると、電子機器１Ａの位置情報Ｐを取得する（ステップＳＴ１ａ）。位置情報取得部１０によって取得された位置情報Ｐは、保管温度算出部１４に出力される。次に、リフレッシュ間隔取得部１１Ａは、データ書換え実行回数Ｎを不揮発性メモリ２から取得する（ステップＳＴ２ａ）。
【００４０】
判定部１２および保管温度算出部１４は、前回のリフレッシュ実行日時Ｄａを不揮発性メモリ２から取得し（ステップＳＴ３ａ）、現在日時Ｄｂを不揮発性メモリ２から取得する（ステップＳＴ４ａ）。なお、現在日時Ｄｂの取得方法は、実施の形態１と同様に、電子機器１Ａの内部時計を用いてもよく、ＧＮＳＳ衛星から受信されたＧＮＳＳ信号に含まれる時刻情報を用いてもよい。
【００４１】
保管温度算出部１４は、電子機器１Ａの位置情報Ｐに対応する地域の平均気温Ｔａを、リフレッシュ実行間隔ＤＢ２０から取得する（ステップＳＴ５ａ）。さらに、保管温度算出部１４は、不揮発性メモリ２に対する前回のリフレッシュ実行日時Ｄａまでの平均保管温度Ｔｂを、不揮発性メモリ２から取得する（ステップＳＴ６ａ）。
【００４２】
保管温度算出部１４は、システムが起動された日時、すなわち、電子機器１Ａの前回の起動日時を特定し、前回のリフレッシュ実行日時Ｄａから電子機器１Ａの前回の起動までの経過時間Ｄｎを算出する。保管温度算出部１４は、現在日時Ｄｂを使用して、電子機器１Ａの前回の起動から現在までの経過時間Ｄｍを算出する。保管温度算出部１４は、経過時間Ｄｎ、経過時間Ｄｍ、位置情報Ｐに対応する地域の平均気温Ｔａおよび平均保管温度Ｔｂを用いて、下記式（１）に従い、不揮発性メモリ２の平均保管温度Ｔｃを算出する（ステップＳＴ７ａ）。
Ｔｃ＝（Ｄｎ×Ｔｂ＋Ｄｍ×Ｔａ）／（Ｄｎ＋Ｄｍ）      ・・・（１）
【００４３】
保管温度算出部１４によって算出された平均保管温度Ｔｃは、リフレッシュ間隔取得部１１Ａに出力される。また、保管温度算出部１４は、不揮発性メモリ２に保存されている現在の平均保管温度Ｔｂを、算出した平均保管温度Ｔｃで更新する。
【００４４】
リフレッシュ間隔取得部１１Ａは、保管温度算出部１４によって算出された平均保管温度Ｔｃが含まれる温度範囲における、不揮発性メモリ２のデータ書換え実行回数Ｎに対応したリフレッシュ実行間隔Ｄｘを、リフレッシュ実行間隔ＤＢ２０から取得する（ステップＳＴ８ａ）。リフレッシュ間隔取得部１１Ａによって取得されたリフレッシュ実行間隔Ｄｘは、判定部１２に出力される。
【００４５】
判定部１２は、前回のリフレッシュ実行日時Ｄａから現在日時Ｄｂまでに経過した時間（Ｄｂ−Ｄａ）がリフレッシュ実行間隔Ｄｘよりも長いか否かを確認する（ステップＳＴ９ａ）。前回のリフレッシュ実行日時Ｄａから現在日時Ｄｂまでに経過した時間の長さがリフレッシュ実行間隔Ｄｘ以下である場合（ステップＳＴ９ａ；ＮＯ）、判定部１２は、不揮発性メモリ２のリフレッシュが実行不可と判定して、図９の処理を終了する。
【００４６】
前回のリフレッシュ実行日時Ｄａから現在日時Ｄｂまでに経過した時間の長さがリフレッシュ実行間隔Ｄｘよりも長い場合（ステップＳＴ９ａ；ＹＥＳ）、判定部１２は、不揮発性メモリ２のリフレッシュの実行可と判定し、この判定結果をリフレッシュ実行部１３に通知する。リフレッシュ実行部１３は、上記通知を受けると、不揮発性メモリ２のリフレッシュを実行する（ステップＳＴ１０ａ）。
【００４７】
リフレッシュ実行部１３は、不揮発性メモリ２のリフレッシュを完了すると、前回のリフレッシュ実行日時Ｄａを現在日時Ｄｂで更新する（ステップＳＴ１１ａ）。
さらに、リフレッシュ実行部１３は、リフレッシュ処理でデータを再書き込みした記憶領域のデータ書換え実行回数Ｎを更新する。この後、図９の処理が終了される。
なお、図９のフローチャートの一連の処理は、不揮発性メモリ２のリフレッシュの実行可否を判定する処理の一例を示しており、各種情報を取得する順番は入れ替えてもよい。
【００４８】
なお、リフレッシュ実行間隔ＤＢ２０、平均保管温度Ｔｂ、データ書換え実行回数Ｎおよび前回のリフレッシュ実行日時Ｄａのうちの少なくとも一つの情報が、電子機器１Ａと通信可能なサーバ装置に保存されてもよい。電子機器１Ａからデータ読み出し可能な装置であれば、これらの情報を別々の装置が保存してもよい。
【００４９】
以上のように、実施の形態２に係る電子機器１Ａは、前回のリフレッシュ実行日時Ｄａからの不揮発性メモリ２の平均保管温度Ｔｃが含まれる温度範囲における、不揮発性メモリ２のデータ書換え実行回数Ｎに対応したリフレッシュ実行間隔Ｄｘおよび前回のリフレッシュ実行日時Ｄａからの経過時間に基づいて、不揮発性メモリ２のリフレッシュの実行可否を判定する。これによって、電子機器１Ａが地域間を移動したときの温度変化の影響が緩和されるので、電子機器１Ａは、不揮発性メモリ２のデータ書換え寿命の低下を抑制しながら、長期間のデータ保持を実現することができる。
【００５０】
実施の形態３．
図１０は、この発明の実施の形態３に係る電子機器１Ｂの構成を示すブロック図である。図１０において、図１と同一構成要素には同一符号を付して説明を省略する。
電子機器１Ｂは、不揮発性メモリ２を有しており、カーナビゲーション装置のような車両に搭載された車載機器であってもよい。電子機器１Ｂは、図１０に示すように、位置情報取得部１０、リフレッシュ間隔取得部１１Ｂ、判定部１２、リフレッシュ実行部１３、機器内温度取得部１５、外気温取得部１６および温度補正部１７を備えて構成される。
【００５１】
機器内温度取得部１５は、電子機器１Ｂの内部の温度Ｔｉを示す温度情報を取得する。例えば、機器内温度取得部１５は、電子機器１Ｂに搭載された温度センサによって検出された機器内の温度Ｔｉを取得してもよい。
【００５２】
外気温取得部１６は、電子機器１Ｂの外部の外気温度Ｔｏを示す温度情報を取得する。例えば、外気温取得部１６は、車両に搭載された外気温時計によって検出された外気温度Ｔｏを取得してもよい。また、外気温取得部１６は、外部のサーバ装置または携帯情報端末から取得した電子機器１Ｂが存在する地域の気温情報を、外気温度Ｔｏとしてもよい。
【００５３】
温度補正部１７は、機器内温度取得部１５によって取得された機器内の温度Ｔｉと外気温取得部１６によって取得された外気温度Ｔｏとに基づいて、電子機器１Ｂの位置情報Ｐに対応する地域の平均気温Ｔａを補正した推定保管温度Ｔｘを算出する。温度補正部１７によって算出された推定保管温度Ｔｘは、リフレッシュ間隔取得部１１Ｂに出力される。
【００５４】
リフレッシュ間隔取得部１１Ｂは、平均気温Ｔａを補正して得られた推定保管温度Ｔｘが含まれる温度範囲における、データ書換え実行回数Ｎに対応したリフレッシュ実行間隔Ｄｘを、リフレッシュ実行間隔ＤＢ２０から取得する。
【００５５】
図１１は、実施の形態３におけるリフレッシュ実行間隔ＤＢ２０を構成する第２のＤＢ２０ｃの例を示す図である。リフレッシュ実行間隔ＤＢ２０は、図２に示した第１のＤＢ２０ａと、第２のＤＢ２０ｃとから構成される。第１のＤＢ２０ａは、地域とその地域における平均気温Ｔａとが登録されている。
【００５６】
第２のＤＢ２０ｃには、複数の温度範囲における、不揮発性メモリ２のデータ書換え実行回数Ｎに対応したリフレッシュ実行間隔Ｄｘが登録されている。ここで、温度範囲は、推定保管温度Ｔｘの温度範囲である。なお、リフレッシュ実行間隔ＤＢ２０は、第１のＤＢ２０ａと第２のＤＢ２０ｃの両方の内容が１つに登録されたＤＢであってもよい。
【００５７】
位置情報取得部１０、リフレッシュ間隔取得部１１Ｂ、判定部１２、リフレッシュ実行部１３、機器内温度取得部１５、外気温取得部１６、および温度補正部１７の機能を実現する処理回路は、図６Ａに示した専用のハードウェアである処理回路１０２であってもよい。また、位置情報取得部１０、リフレッシュ間隔取得部１１Ｂ、判定部１２、リフレッシュ実行部１３、機器内温度取得部１５、外気温取得部１６および温度補正部１７の機能を実現する処理回路は、図６Ｂに示した不揮発性メモリ１０１に記憶されたプログラムを実行するプロセッサ１０３であってもよい。
さらに、位置情報取得部１０、リフレッシュ間隔取得部１１Ｂ、判定部１２、リフレッシュ実行部１３、機器内温度取得部１５、外気温取得部１６および温度補正部１７の機能について一部を専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現してもよい。
【００５８】
次に動作について説明する。
図１２は、電子機器１Ｂの動作を示すフローチャートであり、不揮発性メモリ２のリフレッシュの実行可否を判定する一連の処理を示している。
機器内温度取得部１５は、システムが起動した直後に、機器内の温度Ｔｉを取得する（ステップＳＴ１ｂ）。続いて、外気温取得部１６は、外気温度Ｔｏを取得する（ステップＳＴ２ｂ）。位置情報取得部１０は、電子機器１Ｂの位置情報Ｐを取得する（ステップＳＴ３ｂ）。機器内の温度Ｔｉを示す温度情報、外気温度Ｔｏを示す温度情報、および位置情報Ｐは、温度補正部１７に出力される。
【００５９】
リフレッシュ間隔取得部１１Ｂは、データ書換え実行回数Ｎを、不揮発性メモリ２から取得する（ステップＳＴ４ｂ）。判定部１２は、前回のリフレッシュ実行日時Ｄａを不揮発性メモリ２から取得し（ステップＳＴ５ｂ）、現在日時Ｄｂを不揮発性メモリ２から取得する（ステップＳＴ６ｂ）。温度補正部１７は、電子機器１Ｂの位置情報Ｐに対応する地域の平均気温Ｔａを、リフレッシュ実行間隔ＤＢ２０の第１のＤＢ２０ａから取得する（ステップＳＴ７ｂ）。
【００６０】
次に、温度補正部１７は、平均気温Ｔａ、機器内の温度Ｔｉおよび外気温度Ｔｏを用いて、下記式（２）に従い、平均気温Ｔａを補正した不揮発性メモリ２の推定保管温度Ｔｘを算出する（ステップＳＴ８ｂ）。温度補正部１７によって算出された推定保管温度Ｔｘは、リフレッシュ間隔取得部１１Ｂに出力される。
Ｔｘ＝Ｔａ＋（Ｔｉ−Ｔｏ）      ・・・（２）
【００６１】
続いて、リフレッシュ間隔取得部１１Ｂは、温度補正部１７によって算出された推定保管温度Ｔｘが含まれる温度範囲における、不揮発性メモリ２のデータ書換え実行回数Ｎに対応したリフレッシュ実行間隔Ｄｘをリフレッシュ実行間隔ＤＢ２０の第２のＤＢ２０ｃから取得する（ステップＳＴ９ｂ）。リフレッシュ間隔取得部１１Ｂによって取得されたリフレッシュ実行間隔Ｄｘは、判定部１２に出力される。
【００６２】
判定部１２は、前回のリフレッシュ実行日時Ｄａから現在日時Ｄｂまでに経過した時間（Ｄｂ−Ｄａ）がリフレッシュ実行間隔Ｄｘよりも長いか否かを確認する（ステップＳＴ１０ｂ）。前回のリフレッシュ実行日時Ｄａから現在日時Ｄｂまでに経過した時間の長さがリフレッシュ実行間隔Ｄｘ以下である場合（ステップＳＴ１０ｂ；ＮＯ）、判定部１２は、不揮発性メモリ２のリフレッシュが実行不可と判定して、図１２の処理を終了する。
【００６３】
一方、前回のリフレッシュ実行日時Ｄａから現在日時Ｄｂまでに経過した時間の長さがリフレッシュ実行間隔Ｄｘよりも長い場合（ステップＳＴ１０ｂ；ＹＥＳ）、判定部１２は、不揮発性メモリ２のリフレッシュの実行可と判定し、この判定結果を、リフレッシュ実行部１３に通知する。リフレッシュ実行部１３は、上記通知を受けると、不揮発性メモリ２のリフレッシュを実行する（ステップＳＴ１１ｂ）。
【００６４】
リフレッシュ実行部１３は、不揮発性メモリ２のリフレッシュを完了すると、前回のリフレッシュ実行日時Ｄａを現在日時Ｄｂで更新する（ステップＳＴ１２ｂ）。
さらに、リフレッシュ実行部１３は、リフレッシュ処理でデータを再書き込みした記憶領域のデータ書換え実行回数Ｎを更新する。この後、図１２の処理が終了される。
なお、図１２に示したフローチャートの一連の処理は、不揮発性メモリ２のリフレッシュの実行可否を判定する処理の一例を示しており、各種情報を取得する順番は入れ替えてもよい。
【００６５】
なお、リフレッシュ実行間隔ＤＢ２０、平均保管温度Ｔｂ、データ書換え実行回数Ｎおよび前回のリフレッシュ実行日時Ｄａのうちの少なくとも一つの情報が、電子機器１Ｂと通信可能なサーバ装置に保存されてもよい。電子機器１Ｂからデータ読み出し可能な装置であれば、これらの情報を別々の装置が保存してもよい。
【００６６】
推定保管温度Ｔｘは、電子機器１Ｂの内部の温度Ｔｉと外気温度Ｔｏの差に基づいて、電子機器１Ｂがおかれた地域の平均気温Ｔａと、実際の不揮発性メモリ２の保管温度との誤差を補正したものである。これにより、推定保管温度Ｔｘは、平均気温Ｔａよりも実際の不揮発性メモリ２の保管温度に近い値になっている。
【００６７】
例えば、電子機器１Ｂが車載機器であり、電子機器１Ｂを搭載した車両が、非常に暑い地域で室内に保管された場合、実際の不揮発性メモリ２の保管温度は、その地域の平均気温よりも低くなる可能性がある。このような場合であっても、平均気温Ｔａを推定保管温度Ｔｘに補正することで、地域の平均気温Ｔａと実際の不揮発性メモリ２の保管温度との誤差が低減される。
【００６８】
以上のように、実施の形態３に係る電子機器１Ｂは、機器内温度取得部１５、外気温取得部１６および温度補正部１７を備える。リフレッシュ間隔取得部１１Ｂは、リフレッシュ実行間隔ＤＢ２０から、温度補正部１７によって平均気温Ｔａから補正された推定保管温度Ｔｘが含まれる温度範囲における、不揮発性メモリ２のデータ書換え実行回数Ｎに対応したリフレッシュ実行間隔Ｄｘを取得する。推定保管温度Ｔｘをリフレッシュ実行間隔Ｄｘの判定に反映させることで、電子機器１Ｂは、不揮発性メモリ２のデータ書換え寿命の低下を抑制しながら、長期間のデータ保持を実現することができる。
【００６９】
実施の形態３に係る電子機器１Ｂにおいて、機器内温度取得部１５は、電子機器１Ｂが起動したタイミングで電子機器１Ｂの内部の温度Ｔｉを取得する。一般に、カーナビゲーション装置といった高機能の電子機器では、動作モードまたは使用条件によって機器内のデバイスの処理負荷および動作条件が変動して温度Ｔｉが大幅に変動する。そこで、機器内温度取得部１５が、電子機器１Ｂが起動したタイミングで温度を取得することにより、機器内のデバイスの処理負荷および動作条件の変動による影響を受ける前の安定した温度を取得することができる。
【００７０】
なお、本発明は上記実施の形態に限定されるものではなく、本発明の範囲内において、実施の形態のそれぞれの自由な組み合わせまたは実施の形態のそれぞれの任意の構成要素の変形もしくは実施の形態のそれぞれにおいて任意の構成要素の省略が可能である。
【符号の説明】
【００７１】
１，１Ａ，１Ｂ  電子機器、２  不揮発性メモリ、３  メモリ管理システム、４  ネットワーク、５  サーバ装置、１０  位置情報取得部、１１，１１Ａ，１１Ｂ  リフレッシュ間隔取得部、１２  判定部、１３  リフレッシュ実行部、１４  保管温度算出部、１５  機器内温度取得部、１６  外気温取得部、１７  温度補正部、２０  リフレッシュ実行間隔ＤＢ、２０ａ  第１のＤＢ、２０ｂ，２０ｃ  第２のＤＢ、１００  ＧＮＳＳ受信機、１０１  不揮発性メモリ、１０２  処理回路、１０３  プロセッサ。
【図１】
2019204229.tif 000003
【図２】
2019204229.tif 000004
【図３】
2019204229.tif 000005
【図４】
2019204229.tif 000006
【図５】
2019204229.tif 000007
【図６】
2019204229.tif 000008
【図７】
2019204229.tif 000009
【図８】
2019204229.tif 000010
【図９】
2019204229.tif 000011
【図１０】
2019204229.tif 000012
【図１１】
2019204229.tif 000013
【図１２】
2019204229.tif 000014