(57)【要約】【課題】正確に不揮発性メモリーの信頼性の有無を判定できるようにすることを目的とする。【解決手段】車載装置は、検査用記憶領域を備える不揮発性メモリーと、検査用記憶領域に書き込む検査用データを記憶するＲＯＭと、不揮発性メモリーの検査用記憶領域に対し、ＲＯＭが記憶する検査用データの書き込み、及び消去を、所定の回数実行するデータ処理部１０３と、データ処理部１０３により検査用記憶領域に書き込まれた検査用データの状態に基づいて、不揮発性メモリーの信頼性の有無を判定する判定部１０４と、を備える。【選択図】図３
2018142053.tif 000002
【特許請求の範囲】
【請求項１】
第１記憶領域を備える不揮発性メモリーと、
前記第１記憶領域に書き込む第１データを記憶するデータ記憶部と、
前記不揮発性メモリーの前記第１記憶領域に対し、前記データ記憶部が記憶する前記第１データの書き込み、及び消去を、所定の回数実行するデータ処理部と、
前記データ処理部により前記第１記憶領域に書き込まれた前記第１データの状態に基づいて、前記不揮発性メモリーの信頼性の有無を判定する判定部と、を備える
ことを特徴とする不揮発性メモリー判定装置。
【請求項２】
前記不揮発性メモリーは、前記第１記憶領域と異なる第２記憶領域を備え、
前記データ処理部は、前記第２記憶領域に対し第２データを初めて書き込む際、前記第１記憶領域に対して、所定の回数、前記第１データの書き込み、及び消去を実行する
ことを特徴とする請求項１に記載の不揮発性メモリー判定装置。
【請求項３】
前記データ処理部は、
２回目以降、前記第２記憶領域に対して前記第２データを書き込む際、前記第１記憶領域に書き込まれた前記第１データを消去し、前記データ記憶部が記憶する前記第１データを前記第１記憶領域に再度書き込む、
ことを特徴とする請求項２に記載の不揮発性メモリー判定装置。
【請求項４】
前記判定部は、
前記第１記憶領域に書き込まれた前記第１データと、前記データ記憶部が記憶する前記第１データとが一致しない場合、前記不揮発性メモリーに信頼性が無いと判定し、前記第１記憶領域に書き込まれた前記第１データと、前記データ記憶部が記憶する前記第１データとが一致する場合、不揮発性メモリーに信頼性が有ると判定する、
ことを特徴とする請求項１から３のいずれか一項に記載の不揮発性メモリー判定装置。
【請求項５】
前記第１データは、誤り検出符号を含み、
前記判定部は、前記誤り検出符号を含む前記第１データに基づいて、前記第１記憶領域に書き込まれた前記第１データに誤りがある場合、前記不揮発性メモリーに信頼性が無いと判定し、前記第１記憶領域に書き込まれた前記第１データに誤りがない場合、前記不揮発性メモリーに信頼性が有ると判定する、
ことを特徴とする請求項１から３のいずれか一項に記載の不揮発性メモリー判定装置。
【請求項６】
情報を報知する報知部を備え、
前記報知部は、前記判定部が前記不揮発性メモリーに信頼性が無いと判定した場合、前記不揮発性メモリーに信頼性が無いことを示す情報を報知する
ことを特徴とする請求項１から５のいずれか一項に記載の不揮発性メモリー判定装置。
【請求項７】
第１記憶領域を有する不揮発性メモリーを備える不揮発性メモリー判定装置の制御方法であって、
前記第１記憶領域に書き込む第１データを記憶し、
前記不揮発性メモリーの前記第１記憶領域に対し、記憶する前記第１データの書き込み、及び消去を、所定の回数実行し、
前記第１記憶領域に書き込まれた前記第１データの状態に基づいて、前記不揮発性メモリーの信頼性の有無を判定する
ことを特徴とする不揮発性メモリー判定装置の制御方法。
【請求項８】
車両に搭載される車載装置であって、
第１記憶領域を備える不揮発性メモリーと、
前記第１記憶領域に書き込む第１データを記憶するデータ記憶部と、
前記不揮発性メモリーの前記第１記憶領域に対し、前記データ記憶部が記憶する前記第１データの書き込み、及び消去を、所定の回数実行するデータ処理部と、
前記データ処理部により前記第１記憶領域に書き込まれた前記第１データの状態に基づいて、前記不揮発性メモリーの信頼性の有無を判定する判定部と、を備える
ことを特徴とする車載装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性メモリー判定装置、不揮発性メモリー判定装置の制御方法、及び、車載装置に関する。
【背景技術】
【０００２】
従来、不揮発性メモリーの信頼性の有無を判定する技術が知られている（例えば、特許文献１参照）。特許文献１では、不揮発性メモリーにデータを書き込む回数をカウントし、カウントした回数が所定の回数を超過した場合に、不揮発性メモリーの信頼性が無いとして、不揮発性メモリーに対するデータの書き込みを禁止する技術を開示する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−３５７１１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１では、不揮発性メモリーの信頼性の有無を不揮発性メモリーに対するデータの書き込みの回数で判定しているため、当該判定において、不揮発性メモリーの個体差を考慮しておらず、当該判定が正確でない可能性がある。
そこで、本発明は、不揮発性メモリーの信頼性の有無を正確に判定する場合に好適な不揮発性メモリー判定装置、不揮発性メモリー判定装置の制御方法、及び、車載装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明の不揮発性メモリー判定装置は、第１記憶領域を備える不揮発性メモリーと、前記第１記憶領域に書き込む第１データを記憶するデータ記憶部と、前記不揮発性メモリーの前記第１記憶領域に対し、前記データ記憶部が記憶する前記第１データの書き込み、及び消去を、所定の回数実行するデータ処理部と、前記データ処理部により前記第１記憶領域に書き込まれた前記第１データの状態に基づいて、前記不揮発性メモリーの信頼性の有無を判定する判定部と、を備える。
【発明の効果】
【０００６】
本発明によれば、正確に不揮発性メモリーの信頼性の有無を判定できる。
【図面の簡単な説明】
【０００７】
【図１】車載装置の構成を示す図である。
【図２】不揮発性メモリーが備える記憶領域について説明するための図である。
【図３】制御部の機能的構成を示す図である。
【図４】車載装置の動作を示すフローチャートである。
【図５】車載装置の動作を示すフローチャートである。
【発明を実施するための形態】
【０００８】
図１は、車載装置１（不揮発性メモリー判定装置）の構成を示す図である。
【０００９】
車載装置１は、車両に搭載される装置であり、車両に搭乗しているユーザーの操作に従って、地図の表示や、地図における車両の現在位置の表示、目的地までの経路探索、経路案内等を実行する。なお、車載装置１は、車両のダッシュボード等に固定されてもよいし、車両に対し着脱可能なものであってもよい。
【００１０】
車載装置１は、制御部１０と、不揮発性メモリー１１と、タッチパネル１２（報知部）と、操作部１３と、ＧＰＳ受信部１４と、相対方位検出部１５とを備える。
【００１１】
制御部１０は、ＣＰＵ１００や、ＲＯＭ１０１（データ記憶部）、ＲＡＭ１０２、その他の制御回路等を備え、車載装置１の各部を制御する。
【００１２】
ＲＯＭ１０１は、各種のデータを不揮発的に記憶する。本実施形態では、ＲＯＭ１０１は、ＣＰＵ１００が実行する制御プログラムの他、検査用データ１０１ａ（第１データ）を記憶する。検査用データ１０１ａとは、不揮発性メモリー１１の信頼性の有無を検査するためのデータである。ＲＡＭ１０２は、ＣＰＵ１００のワークエリアとして機能し、各種データを一時的に記憶する。ＣＰＵ１００は、ＲＯＭ１０１に記憶された制御プログラムや、不揮発性メモリー１１に記憶されたファームウェア１１１（第２データ）等を読み出して実行することにより、車載装置１の各部を制御する。また、ＣＰＵ１００は、ＲＯＭ１０１や不揮発性メモリー１１等に記憶されたプログラムを読み出して実行することにより、制御部１０を、図２に示すデータ処理部１０３、及び判定部１０４として機能させる。データ処理部１０３と、判定部１０４とについては、後述する。
【００１３】
不揮発性メモリー１１は、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）やフラッシュメモリー等の半導体記憶素子を備え、各種データを書き換え可能に不揮発的に記憶する。また、不揮発性メモリー１１は、ファームウェア１１１と、地図データ１１２（第２データ）とを記憶する。ファームウェア１１１は、車載装置１を制御するプログラムである。地図データ１１２は、交差点やその他の道路網上の結線点を示すノードに関する情報や、ノードとノードとの道路区間を示すリンクに関する情報、地図上の行政区画や、道路、施設、交差点等の名称に関する情報等、を有するデータである。
【００１４】
本実施形態では、不揮発性メモリー１１は、図２に示す３つの記憶領域を備える。
【００１５】
図２は、不揮発性メモリー１１が備える記憶領域ＫＡについて説明するための図である。
【００１６】
不揮発性メモリー１１の記憶領域ＫＡは、車載装置１の機能（例えば、地図の表示や、目的地までの経路探索等）を実行するため制御プログラムやデータ等を格納可能な領域である。図２に示す通り、不揮発性メモリー１１は、不揮発性メモリーの信頼性の有無を検査するため、ＲＯＭ１０１が記憶する検査用データ１０１ａの書き込みが行われる検査用記憶領域Ａ１（第１記憶領域）と、少なくとも検査用データ１０１ａ、及び書換用プログラム（後述）以外のデータを記憶するデータ記憶領域Ａ２と、データ記憶領域Ａ２が記憶するデータ、及び、検査用記憶領域Ａ１が記憶する検査用データ１０１ａを書き換えるためのプログラムである書換用プログラムを記憶する書換用記憶領域Ａ３とを備える。
【００１７】
本実施形態では、不揮発性メモリー１１の記憶領域ＫＡは、領域ＢＡ１〜領域ＢＡ８の８つの領域に分割されており、領域ＢＡ１が書換用記憶領域Ａ３に相当し、領域ＢＡ２〜領域ＢＡ７の全領域がデータ記憶領域Ａ２に相当し、領域ＢＡ８が検査用記憶領域Ａ１に相当する。
【００１８】
不揮発性メモリー１１が記憶するファームウェア１１１と地図データ１１２とは、データ記憶領域Ａ２に記憶される。したがって、データ記憶領域Ａ２は、本実施形態においては、少なくとも、ファームウェア１１１と地図データ１１２とを記憶可能な領域である。また、検査用記憶領域Ａ１は、少なくとも検査用データ１０１ａを記憶可能な領域である。また、書換用記憶領域Ａ３は、少なくとも書換用プログラムを記憶可能な領域である。
【００１９】
なお、データ記憶領域Ａ２は、少なくとも、ファームウェア１１１と地図データ１１２とが記憶可能な領域であれば、図２に示す領域に限定されない。例えば、領域ＢＡ２〜領域ＢＡ６までの領域をデータ記憶領域Ａ２としてもよい。また、検査用記憶領域Ａ１は、少なくとも、検査用データ１０１ａが記憶可能な領域であればよい。例えば、不揮発性メモリー１１の記憶領域ＫＡが図２に示す分割よりもさらに多く分割されており、分割された１の領域に検査用データ１０１ａが記憶可能であれば、当該１の領域を検査用記憶領域Ａ１としてもよい。書換用記憶領域Ａ３についても同様であり、書換用記憶領域Ａ３は、少なくとも書換用プログラムを記憶可能な領域であればよい。
【００２０】
図１の説明に戻り、タッチパネル１２は、表示パネル１２１と、タッチセンサー１２２とを備える。表示パネル１２１は、液晶ディスプレイやＥＬ（Electro Luminescent）ディスプレイ等のパネルを有し、制御部１０の制御の下、各種情報を表示する。タッチセンサー１２２は、表示パネル１２１に重ねて配置され、ユーザーのタッチ操作を検出し、制御部１０に出力する。
【００２１】
ＧＰＳ受信部１４は、ＧＰＳアンテナ１４１を介してＧＰＳ衛星からのＧＰＳ電波を受信し、ＧＰＳ電波に重畳されたＧＰＳ信号から、車両の現在位置を示す位置座標と進行方向とを演算により取得する。ＧＰＳ受信部１４は、取得結果を制御部１０に出力する。
【００２２】
相対方位検出部１５は、ジャイロセンサー（不図示）と、加速度センサー（不図示）とを備える。ジャイロセンサーは、例えば振動ジャイロにより構成され、車両の相対的な方位（例えば、ヨー軸方向の旋回量）を検出する。加速度センサーは、車両に作用する加速度（例えば、進行方向に対する車両の傾き）を検出する。相対方位検出部１５は、検出結果を制御部１０に出力する。
【００２３】
前述した通り、制御部１０は、データ処理部１０３と判定部１０４として機能する。
図３は、制御部１０の機能的構成を示す図である。
【００２４】
図３に示すように、制御部１０は、データ処理部１０３と判定部１０４とを備える。
【００２５】
データ処理部１０３は、不揮発性メモリー１１の検査用記憶領域Ａ１に対し、ＲＯＭ１０１が記憶する検査用データ１０１ａの書き込み、又は消去を実行する。また、データ処理部１０３は、不揮発性メモリー１１のデータ記憶領域Ａ２に対し、ファームウェア１１１と地図データ１１２との書き込み、又は消去を実行する。
【００２６】
判定部１０４は、検査用記憶領域Ａ１に書き込まれた検査用データ１０１ａの状態に基づいて、不揮発性メモリー１１の信頼性の有無を判定する。なお、不揮発性メモリー１１の信頼性の有無の判定は、不揮発性メモリー１１の信頼性の検査に相当する。本実施形態において、不揮発性メモリー１１に信頼性が有るとは、不揮発性メモリー１１に書き込んだデータに対しデータ化けが発生する蓋然性が低いことを示す。また、不揮発性メモリー１１に信頼性が無いとは、不揮発性メモリー１１に書き込んだデータに対し、データ化けが発生する蓋然性が高いことを示す。判定部１０４による判定についての詳細は、後述する。ここで、データ化けとは、例えば、不揮発性メモリー１１に書き込んだデータが、不揮発性メモリー１１に書き込む際のデータと異なっている現象のことである。
【００２７】
一般に、不揮発性メモリー１１に対し、データの書き込み、及び消去を繰り返すことで、不揮発性メモリー１１の劣化が進行しデータ化けが発生することが知られている。そこで、従来から、不揮発性メモリー１１を製造する主体（例えば、メーカー等）は、不揮発性メモリー１１に対してデータの書き換え可能な回数を設定し、データの書き換えが設定された回数に至った際に、不揮発性メモリー１１を使用しないようにとする場合あった。しかしながら、不揮発性メモリー１１にも個体差があり、データを書き換えた回数が、不揮発性メモリー１１を製造する主体が設定した回数に至った場合でも、不揮発性メモリー１１によっては、データ化けが発生することなく、適切にデータを書き換えできる場合がある。また、不揮発性メモリー１１によっては、データを書き換えた回数が、不揮発性メモリー１１を製造する主体が設けた回数に至っていないも関わらず、データ化けが発生し、適切にデータを書き換えできない場合がある。
【００２８】
つまり、不揮発性メモリー１１の信頼性の有無を、不揮発性メモリー１１に対するデータの書き換え回数で判定する構成では、正確に不揮発性メモリー１１の信頼性の有無を判定できない可能性がある。
【００２９】
そこで、本実施形態の車載装置１は、以下に示す動作を実行する。
【００３０】
図４は、車載装置１の動作を示すフローチャートである。
以下、車載装置１の動作の説明において、不揮発性メモリー１１のデータ記憶領域Ａ２に対してファームウェア１１１を書き込む場合を例示する。
【００３１】
車載装置１の制御部１０は、不揮発性メモリー１１のデータ記憶領域Ａ２に、ファームウェア１１１の書き込みの実行の指示があったか否かを判別する（ステップＳＡ１）。例えば、制御部１０は、外部から、データ記憶領域Ａ２に書き込む対象のファームウェア１１１を受信した場合、ファームウェア１１１の書き込みの実行の指示があったと判別する。
【００３２】
制御部１０は、不揮発性メモリー１１のデータ記憶領域Ａ２に、ファームウェア１１１の書き込みの実行の指示があったと判別した場合（ステップＳＡ１：ＹＥＳ）、ファームウェア１１１の書き込みが、不揮発性メモリー１１のデータ記憶領域Ａ２に対する初めての書き込みか否かを判別する（ステップＳＡ２）。
【００３３】
例えば、制御部１０は、ファームウェア１１１及び地図データ１１２を含むデータが一切記憶されていないデータ記憶領域Ａ２に、ファームウェア１１１を書き込む場合、不揮発性メモリー１１のデータ記憶領域Ａ２に対する初めての書き込みであると判別する（ステップＳＡ２：ＹＥＳ）。
【００３４】
また、例えば、制御部１０は、既に地図データ１１２が書き込まれているデータ記憶領域Ａ２にファームウェア１１１を書き込む場合、不揮発性メモリー１１のデータ記憶領域Ａ２に対する初めての書き込みでないと判別する（ステップＳＡ２：ＮＯ）。
【００３５】
また、例えば、制御部１０は、ファームウェア１１１をアップデートする際、データ記憶領域Ａ２にアップデート前のファームウェア１１１が書き込まれているため、アップデート用のファームウェア１１１を書き込みが、不揮発性メモリー１１のデータ記憶領域Ａ２に対する初めての書き込みでないと判別する（ステップＳＡ２：ＮＯ）。
【００３６】
制御部１０が不揮発性メモリー１１のデータ記憶領域Ａ２に対するファームウェア１１１の書き込みが、データ記憶領域Ａ２に対する初めての書き込みであると判別した場合（ステップＳＡ２：ＹＥＳ）、データ処理部１０３は、ステップＳＡ３の処理を実行する。
【００３７】
ステップＳＡ３の処理では、予め不揮発性メモリー１１の書換用記憶領域Ａ３に書換用プログラムが書き込まれており、制御部１０は、この書換用プログラムを読み出して実行することにより、データ処理部１０３として機能するものとする。
ステップＳＡ３の処理において、データ処理部１０３は、不揮発性メモリー１１の検査用記憶領域Ａ１に、ＲＯＭ１０１が記憶する検査用データ１０１ａを所定の回数、書き込み、及び消去を実行する（ステップＳＡ３）。より詳細には、データ処理部１０３は、検査用記憶領域Ａ１に対する検査用データ１０１ａの消去より、検査用記憶領域Ａ１に対する検査用データ１０１ａの書き込みを１回多く実行する。つまり、データ処理部１０３は、ステップＳＡ３の処理の実行後、不揮発性メモリー１１の検査用記憶領域Ａ１に検査用データ１０１ａが書き込まれているよう、所定の回数、検査用データ１０１ａの書き込み、及び消去を実行する。
【００３８】
次いで、データ処理部１０３は、ステップＳＡ３の処理を実行すると、不揮発性メモリー１１のデータ記憶領域Ａ２に、ファームウェア１１１の書き込みを実行する（ステップＳＡ４）。
【００３９】
このように、データ処理部１０３は、データ記憶領域Ａ２に初めてファームウェア１１１を書き込む際、ＲＯＭ１０１が記憶する検査用データ１０１ａを検査用記憶領域Ａ１に対して、所定の回数、書き込み、及び消去を実行する。このような構成とすることにより、以下に示す効果を奏する。
【００４０】
ここで、データ処理部１０３は、検査用記憶領域Ａ１に検査用データ１０１ａを所定の回数、書き込み、及び消去を実行せず、データ記憶領域Ａ２にファームウェア１１１を書き込むものとする。この場合、データ処理部１０３は、後述するように、検査用記憶領域Ａ１に記憶される検査用データ１０１ａに基づいて不揮発性メモリー１１の信頼性の有無を判定する際、データ記憶領域Ａ２より、書き込み、及び消去が行われていない検査用記憶領域Ａ１に記憶される検査用データ１０１ａに基づいて判定を実行する可能性がある。つまり、データ記憶領域Ａ２より劣化していない検査用記憶領域Ａ１が記憶する検査用データ１０１ａに基づいて、判定部１０４は、不揮発性メモリー１１の信頼性の有無を判定する可能性がある。この場合、判定部１０４は、データ記憶領域Ａ２が適切にファームウェア１１１を記憶できないにも関わらず、不揮発性メモリー１１に信頼性が有ると判定してしまう。したがって、データ処理部１０３は、判定部１０４が、検査用記憶領域Ａ１が記憶する検査用データ１０１ａに基づいて不揮発性メモリー１１の信頼性の有無を正確に判定するため、データ記憶領域Ａ２よりも検査用記憶領域Ａ１を劣化させることが必要となる。そこで、上述したように、データ処理部１０３は、データ記憶領域Ａ２に初めてファームウェア１１１を書き込む際、ＲＯＭ１０１が記憶する検査用データ１０１ａを検査用記憶領域Ａ１に対して、所定の回数、書き込み、及び消去を実行する。これにより、不揮発性メモリー１１の記憶領域ＫＡのうち、データ記憶領域Ａ２より先に検査用記憶領域Ａ１が劣化する蓋然性が高まり、データ処理部１０３は、検査用記憶領域Ａ１を、不揮発性メモリー１１の信頼性の有無を判定する領域として適切に設定できる。
【００４１】
なお、上記の説明において、車載装置１がステップＳＡ３の処理を実行した後、ステップＳＡ４の処理を実行する構成を例示したが、車載装置１は、ステップＳＡ４の処理を実行した後に、ステップＳＡ３の処理を実行する構成としてもよい。
【００４２】
この場合、ステップＳＡ４の処理は、外部装置（例えば、不揮発性メモリー１１に書き込み可能な装置）により、実行される。詳述すると、車載装置１の制御部１０が、不揮発性メモリー１１のデータ記憶領域Ａ２に対するファームウェア１１１の書き込みが、初めての書き込みであると判別すると、不揮発性メモリー１１は、外部装置により、書換用プログラムが書換用記憶領域Ａ３に書き込まれ、ファームウェア１１１がデータ記憶領域Ａ２に書き込まれる。そして、車載装置１の制御部１０は、書換用プログラムを実行してデータ処理部１０３として機能することにより、ステップＳＡ３の処理を実行する。このような処理を実行する車載装置１であっても、上述した効果と同様の効果を奏する。
【００４３】
ステップＳＡ２の説明に戻り、制御部１０は、不揮発性メモリー１１のデータ記憶領域Ａ２に対するファームウェア１１１の書き込みが、初めての書き込みでないと判別した場合（ステップＳＡ２：ＮＯ）、すなわち、２回目以降の書き込みであると判別した場合、検査用記憶領域Ａ１が記憶する検査用データ１０１ａを読み出して、ＲＯＭ１０１が記憶する検査用データ１０１ａと比較する（ステップＳＡ５）。
【００４４】
次いで、判定部１０４は、ステップＳＡ５の比較により、不揮発性メモリー１１の検査用記憶領域Ａ１に記憶される検査用データ１０１ａが、ＲＯＭ１０１が記憶する検査用データ１０１ａと一致する場合（ステップＳＡ６：ＹＥＳ）、不揮発性メモリー１１に信頼性が有ると判定する（ステップＳＡ７）。
【００４５】
一方、判定部１０４は、ステップＳＡ５の比較により、不揮発性メモリー１１の検査用記憶領域Ａ１に記憶される検査用データ１０１ａが、ＲＯＭ１０１が記憶する検査用データ１０１ａと一致しない場合（ステップＳＡ６：ＮＯ）、不揮発性メモリー１１に信頼性が無いと判定する（ステップＳＡ１０）。
【００４６】
このように、判定部１０４は、不揮発性メモリー１１の検査用記憶領域Ａ１に記憶される検査用データ１０１ａの状態に基づいて、不揮発性メモリー１１の信頼性の有無を判定する。したがって、判定部１０４は、不揮発性メモリー１１の個体差を考慮して、すなわち、不揮発性メモリー１１の実際の状態に即して、不揮発性メモリー１１の信頼性の有無を判定できる。そのため、車載装置１は、判定部１０４が、不揮発性メモリー１１が適切にデータを記憶できないにも関わらず、不揮発性メモリー１１に信頼性が有ると判定してしまうといった事態の発生、及び、不揮発性メモリー１１が適切にデータを記憶できるにも関わらず、不揮発性メモリー１１に信頼性が無いと判定してしまうといった事態の発生を抑制できる。つまり、判定部１０４は、書き込み回数に基づいて不揮発性メモリー１１の信頼性の有無を判定する構成と比較して、正確に不揮発性メモリー１１の信頼性の有無を判定できる。また、判定部１０４は、データ記憶領域Ａ２より先に劣化させた検査用記憶領域Ａ１に記憶された検査用データ１０１ａの状態に基づいて判定する。そのため、判定部１０４は、データ記憶領域Ａ２が記憶するファームウェア１１１にデータ化けが発生する前に、不揮発性メモリー１１の信頼性の有無を判定できる。
【００４７】
データ処理部１０３は、判定部１０４が不揮発性メモリー１１に信頼性が有ると判定すると（ステップＳＡ７）、検査用記憶領域Ａ１に記憶される検査用データ１０１ａを消去し、ＲＯＭ１０１に記憶される検査用データ１０１ａを再度書き込む（ステップＳＡ８）。
【００４８】
次いで、データ処理部１０３は、不揮発性メモリー１１のデータ記憶領域Ａ２にファームウェア１１１を書き込む（ステップＳＡ９）。ファームウェア１１１の書き込みは、制御部１０が書換用プログラムを読み出して実行し、データ処理部１０３として機能することにより実行される。
【００４９】
このように、データ処理部１０３は、２回目以降、不揮発性メモリー１１のデータ記憶領域Ａ２にファームウェア１１１を書き込む際、検査用記憶領域Ａ１が記憶する検査用データ１０１ａを消去し、ＲＯＭ１０１が記憶する検査用データ１０１ａを検査用記憶領域Ａ１に再度書き込む。なお、２回目以降のファームウェア１１１の書き込みとしては、ファームウェア１１１のアップデートが例として挙げられる。そのため、データ処理部１０３は、２回目以降、不揮発性メモリー１１のデータ記憶領域Ａ２にファームウェア１１１を書き込む際でも、検査用記憶領域Ａ１に行われた書き込み、及び消去の回数が、データ記憶領域Ａ２に行われた書き込み、及び消去の回数を下回ることがない。したがって、車載装置１は、２回目以降、不揮発性メモリー１１のデータ記憶領域Ａ２にファームウェア１１１を書き込む場合でも、判定部１０４が、不揮発性メモリー１１が適切にデータを記憶できないにも関わらず、不揮発性メモリー１１に信頼性が有ると判定してしまうといった事態の発生、及び、不揮発性メモリー１１が適切にデータを記憶できるにも関わらず、不揮発性メモリー１１に信頼性が無いと判定してしまうといった事態の発生を抑制できる。つまり、判定部１０４は、２回目以降、不揮発性メモリー１１のデータ記憶領域Ａ２にファームウェア１１１を書き込む場合でも、書き込み回数に基づいて不揮発性メモリー１１の信頼性の有無を判定する構成と比較して、正確に不揮発性メモリー１１の信頼性の有無を判定できる。
【００５０】
判定部１０４は、不揮発性メモリー１１に信頼性が無いと判定すると（ステップＳＡ１０）、データ記憶領域Ａ２に対するファームウェア１１１の書き込みを実行しない（ステップＳＡ１１）。そして、制御部１０は、タッチパネル１２により、不揮発性メモリー１１に信頼性が無いことを示す情報を表示することで報知する（ステップＳＡ１２）。
【００５１】
これにより、制御部１０は、信頼性の無い、すなわち、データ化けする蓋然性の高い不揮発性メモリー１１にファームウェア１１１が書き込まれることを防止できる。そのため、制御部１０は、書き込まれたファームウェア１１１にデータ化けが発生し、このことに起因して車載装置１に誤動作等の不具合が発生することを抑制できる。また、制御部１０は、タッチパネル１２により、不揮発性メモリー１１に信頼性が無いことを示す情報を報知するため、不揮発性メモリー１１が適切にデータを記憶できない蓋然性が高いことをユーザーが認識できる。
【００５２】
上記では、判定部１０４による不揮発性メモリー１１の信頼性の有無の判定について、検査用記憶領域Ａ１が記憶する検査用データ１０１ａが、ＲＯＭ１０１が記憶する検査用データ１０１ａと一致するか否かに基づいて判定する構成を説明した。しかしながら、判定部１０４の判定は、検査用記憶領域Ａ１が記憶する検査用データ１０１ａが、ＲＯＭ１０１が記憶する検査用データ１０１ａと一致するか否かに基づいて判定する構成に限定されない。
【００５３】
例えば、判定部１０４は、既存のＣＲＣ方式を利用して、不揮発性メモリー１１の信頼性の有無を判定してもよい。この場合、検査用データ１０１ａには、所定の生成多項式により算出されたＣＲＣ符号（誤り検出符号）を含むデータである。判定部１０４は、検査用記憶領域Ａ１に記憶されたＣＲＣ符号を含む検査用データ１０１ａを読み出し、読み出した当該検査用データ１０１ａに対して、ＣＲＣ符号を算出した所定の生成多項式による除算を実行する。そして、制御部１０は、除算の結果、余りが０である場合、不揮発性メモリー１１の検査用記憶領域Ａ１が記憶する検査用データ１０１ａに誤りがないと判定し、余りが０でない場合、当該検査用データ１０１ａに誤りがあると判定する。なお、検査用記憶領域Ａ１が記憶する検査用データ１０１ａに誤りがあるとは、検査用記憶領域Ａ１が記憶する検査用データ１０１ａとＲＯＭ１０１が記憶する検査用データ１０１ａとが異なることを示す。判定部１０４は、検査用記憶領域Ａ１が記憶する検査用データ１０１ａに誤りがあると判定した場合、不揮発性メモリー１１に信頼性が無いと判定する。一方、判定部１０４は、検査用記憶領域Ａ１が記憶する検査用データ１０１ａに誤りがないと判定した場合、不揮発性メモリー１１に信頼性が有ると判定する。
【００５４】
このように、判定部１０４は、ＣＲＣ符号を含む検査用データ１０１ａに基づいて、検査用記憶領域Ａ１が記憶する検査用データ１０１ａに誤りがある場合、不揮発性メモリー１１に信頼性が無いと判定し、検査用記憶領域Ａ１が記憶する検査用データ１０１ａに誤りがない場合、不揮発性メモリー１１に信頼性が有ると判定する。したがって、判定部１０４は、不揮発性メモリー１１の検査用記憶領域Ａ１が記憶する検査用データ１０１ａの状態に基づいて判定を行うため、不揮発性メモリー１１の個体差を考慮して、不揮発性メモリー１１の信頼性を判定できる。そのため、書き込み回数に基づいて不揮発性メモリー１１の信頼性を判定する構成と比較して、不揮発性メモリー１１が適切にデータを記憶できないにも関わらず、不揮発性メモリー１１に信頼性が有ると判定したり、不揮発性メモリー１１が適切にデータを記憶できるにも関わらず、不揮発性メモリー１１に信頼性が無いと判定したりすることを抑制できる。つまり、判定部１０４は、正確に不揮発性メモリー１１の信頼性の有無を判定できる。
【００５５】
上述した説明では、ファームウェア１１１の書き込みの実行の指示があった場合に、判定部１０４が不揮発性メモリー１１の信頼性の有無を判定する構成を例示した。しかしながら、判定部１０４が不揮発性メモリー１１の信頼性の有無の判定は、車載装置１が所定の動作を実行している場合においても実行する構成としてもよい。この場合の車載装置１の動作を説明する。
【００５６】
図５は、車載装置の動作を示すフローチャートである。
【００５７】
車載装置１の制御部１０は、不揮発性メモリー１１の信頼性の有無の検査を実行するトリガーが発生したか否かを判定する（ステップＳＢ１）。例えば、制御部１０は、不揮発性メモリー１１の信頼性の有無の検査の実行を指示する操作を、操作部１３やタッチパネル１２等が検出した場合、トリガーが発生したと判別する。また、例えば、制御部１０は、車両のイグニッションがオンになったことや、車両のアクセサリ電源がオンになった場合、トリガーが発生したと判別する。また、例えば、制御部１０は、不揮発性メモリー１１の信頼性の有無の検査を実行してから、所定の期間が経過した場合に、トリガーが発生したと判別する。
【００５８】
制御部１０は、不揮発性メモリー１１の信頼性の有無の検査を実行するトリガーが発生したと判別した場合（ステップＳＢ１：ＹＥＳ）、検査用記憶領域Ａ１が記憶する検査用データ１０１ａを読み出して、ＲＯＭ１０１が記憶する検査用データ１０１ａと比較する（ステップＳＢ２）。
【００５９】
制御部１０は、ステップＳＢ２の比較により、不揮発性メモリー１１の検査用記憶領域Ａ１に記憶される検査用データ１０１ａが、ＲＯＭ１０１が記憶する検査用データ１０１ａと一致するか否かを判別する（ステップＳＢ３）。判定部１０４は、不揮発性メモリー１１の検査用記憶領域Ａ１に記憶される検査用データ１０１ａが、ＲＯＭ１０１が記憶する検査用データ１０１ａと一致すると判別した場合（ステップＳＢ３：ＹＥＳ）、不揮発性メモリー１１に信頼性が有ると判定し（ステップＳＡ４）、処理をステップＳＢ１に戻す。
【００６０】
一方、判定部１０４は、不揮発性メモリー１１の検査用記憶領域Ａ１に記憶される検査用データ１０１ａが、ＲＯＭ１０１が記憶する検査用データ１０１ａと一致しないと判別した場合（ステップＳＢ３：ＮＯ）、不揮発性メモリー１１に信頼性が有ると判定する（ステップＳＢ５）。そして、制御部１０は、タッチパネル１２による表示により、不揮発性メモリー１１に信頼性が無いことを示す情報を報知する（ステップＳＢ４）。
【００６１】
このように、トリガーが発生した場合、判定部１０４は、不揮発性メモリー１１の信頼性の有無を判定し、判定に応じた処理を実行する。これにより、ファームウェア１１１の書き込みの実行の指示がない場合でも、判定部１０４は、上述したように正確に不揮発性メモリー１１の信頼性の有無を判定できる。
【００６２】
上記の説明では、ファームウェア１１１を不揮発性メモリー１１のデータ記憶領域Ａ２に書き込む場合を例示して説明したが、地図データ１１２を不揮発性メモリー１１のデータ記憶領域Ａ２に書き込む場合でも、同様の動作を実行することで、同様の効果を奏する。
【００６３】
以上、説明したように、車載装置１（不揮発性メモリー判定装置）は、検査用記憶領域Ａ１（第１記憶領域）を備える不揮発性メモリー１１と、検査用記憶領域Ａ１に書き込む検査用データ１０１ａ（第１データ）を記憶するＲＯＭ１０１（データ記憶部）と、不揮発性メモリー１１の検査用記憶領域Ａ１に対し、ＲＯＭ１０１が記憶する検査用データ１０１ａの書き込み、及び消去を、所定の回数実行するデータ処理部１０３と、データ処理部１０３により検査用記憶領域Ａ１に書き込まれた検査用データ１０１ａの状態に基づいて、不揮発性メモリー１１の信頼性の有無を判定する判定部１０４と、を備える。
【００６４】
これにより、判定部１０４は、データ処理部１０３により検査用記憶領域Ａ１に書き込まれた検査用データ１０１ａの状態に基づいて、不揮発性メモリー１１の信頼性の有無を判定するため、不揮発性メモリー１１の個体差を考慮して判定を実行できる。そのため、車載装置１は、判定部１０４が、不揮発性メモリー１１が適切にデータを記憶できないにも関わらず、不揮発性メモリー１１に信頼性が有ると判定したり、不揮発性メモリー１１が適切にデータを記憶できるにも関わらず、不揮発性メモリー１１に信頼性が無いと判定したりすることを抑制できる。つまり、判定部１０４は、正確に不揮発性メモリー１１の信頼性の有無を判定できる。
【００６５】
また、不揮発性メモリー１１は、データ記憶領域Ａ２（第２記憶領域）を備える。データ処理部１０３は、データ記憶領域Ａ２に対しファームウェア１１１（第２データ）又は地図データ１１２（第２データ）を初めて書き込む際、検査用記憶領域Ａ１に対して、所定の回数、検査用データ１０１ａの書き込み、及び消去を実行する。
【００６６】
これにより、データ処理部１０３は、不揮発性メモリー１１の記憶領域ＫＡのうち、データ記憶領域Ａ２より先に検査用記憶領域Ａ１が劣化する蓋然性を高めることができ、検査用記憶領域Ａ１を、不揮発性メモリー１１の信頼性の有無を判定する領域として適切に設定できる。
【００６７】
また、データ処理部１０３は、２回目以降、データ記憶領域Ａ２に対してファームウェア１１１又は地図データ１１２を書き込む際、検査用記憶領域Ａ１に書き込まれた検査用データを消去し、ＲＯＭ１０１が記憶する検査用データ１０１ａを検査用記憶領域Ａ１に再度書き込む。
【００６８】
これにより、データ処理部１０３は、２回目以降、不揮発性メモリー１１のデータ記憶領域Ａ２にファームウェア１１１又は地図データ１１２を書き込む際でも、検査用記憶領域Ａ１に行われた書き込み、及び消去の回数が、データ記憶領域Ａ２に行われた書き込み、及び消去の回数を下回ることを防止できる。そのため、判定部１０４は、２回目以降、不揮発性メモリー１１のデータ記憶領域Ａ２にファームウェア１１１を書き込む際において、正確に不揮発性メモリー１１の信頼性の有無を判定できる。
【００６９】
また、判定部１０４は、検査用記憶領域Ａ１に書き込まれた検査用データ１０１ａと、ＲＯＭ１０１が記憶する検査用データ１０１ａとが一致しない場合、不揮発性メモリー１１に信頼性が無いと判定する。また、判定部１０４は、検査用記憶領域Ａ１に書き込まれた検査用データ１０１ａと、ＲＯＭ１０１が記憶する検査用データ１０１ａとが一致する場合、不揮発性メモリーに信頼性が有ると判定する。
【００７０】
これにより、判定部１０４は、検査用記憶領域Ａ１に記憶される検査用データ１０１ａの状態に基づいて判定するため、書き換え回数に基づいて不揮発性メモリー１１の信頼性の有無を判定する構成より、不揮発性メモリー１１の個体差を考慮でき、正確に不揮発性メモリー１１の信頼性の有無を判定できる。
【００７１】
また、検査用データ１０１ａは、ＣＲＣ符号（誤り検出符号）を含む。判定部１０４は、ＣＲＣ符号を含む検査用データ１０１ａに基づいて、検査用記憶領域Ａ１に書き込まれた検査用データ１０１ａに誤りがある場合、不揮発性メモリー１１に信頼性が無いと判定する。また、判定部１０４は、ＣＲＣ符号を含む検査用データ１０１ａに基づいて、検査用記憶領域Ａ１に書き込まれた検査用データ１０１ａに誤りがない場合、不揮発性メモリー１１に信頼性が有ると判定する。
【００７２】
これにより、判定部１０４は、検査用記憶領域Ａ１に記憶される検査用データ１０１ａの状態に基づいて判定するため、書き換え回数に基づいて不揮発性メモリー１１の信頼性の有無を判定する構成より、不揮発性メモリー１１の個体差を考慮でき、正確に不揮発性メモリー１１の信頼性の有無を判定できる。
【００７３】
また、車載装置１は、タッチパネル１２（報知部）を備える。タッチパネル１２は、判定部１０４が不揮発性メモリー１１の信頼性が無いと判定した場合、不揮発性メモリー１１に信頼性が無いことを示す情報を表示することにより報知する。
【００７４】
このように、タッチパネル１２により、不揮発性メモリー１１に信頼性が無いことを示す情報を報知するため、不揮発性メモリー１１が適切にデータを記憶できない蓋然性が高いことをユーザーが認識できる。
【００７５】
上述した実施形態は、あくまでも本発明の一態様を例示するものであって、本発明の趣旨を逸脱しない範囲で任意に変形、及び、応用が可能である。
【００７６】
例えば、上述した実施形態では、第２データとしてファームウェア１１１と地図データ１１２とを例示した。しかしながら、第２データは、ファームウェア１１１と地図データ１１２とに限定されず、検査用記憶領域Ａ１と書換用記憶領域Ａ３とが記憶するデータと異なるデータであればよい。
【００７７】
また、例えば、上述した実施形態では、判定部１０４が不揮発性メモリー１１に信頼性が無いと判定した場合、不揮発性メモリー１１に信頼性が無いことを示す情報を、タッチパネル１２が表示することにより報知する場合を説明した。しかしながら、不揮発性メモリー１１に信頼性が無いことを示す情報の報知は、タッチパネル１２による表示に限定されず、例えば、音声等により報知する構成でもよい。
【００７８】
また、例えば、上述した車載装置１の制御方法（不揮発性メモリー判定装置の制御方法）が、車載装置１が備えるコンピューターを用いて実現される場合、本発明は、車載装置１の制御方法を実現するためにコンピューターが実行するプログラム、このプログラムを前記コンピューターで読み取り可能に記録した記録媒体、或いは、このプログラムを伝送する伝送媒体の態様、により構成することが可能である。上記の記録媒体としては、磁気的、光学的記録媒体又は半導体メモリーデバイスを用いることができる。より具体的に記録媒体としては、フレキシブルディスク、ＨＤＤ（Hard Disk Drive）、ＣＤ−ＲＯＭ（Compact Disk Read Only Memory）、ＤＶＤ（Digital Versatile Disk）、Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ、光磁気ディスク、フラッシュメモリー、カード型記録媒体等の可搬型の、或いは固定式の記録媒体が挙げられる。また、上記の記録媒体は、車載装置１が備える内部記憶装置であるＲＯＭ（Read Only Memory）、ＨＤＤ等の不揮発性記憶装置であってもよい。
【００７９】
また、例えば、図１は、本願発明を理解容易にするために、車載装置１の機能構成を主な処理内容に応じて分類して示した概略図であり、車載装置１の構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、１つの構成要素がさらに多くの処理を実行するように分類することもできる。
【００８０】
また、例えば、図４、及び図５のフローチャートの処理単位は、車載装置１の処理を理解容易にするために、主な処理内容に応じて分割したものであり、処理単位の分割の仕方や名称によって、本発明が限定されることはない。車載装置１の処理は、処理内容に応じて、さらに多くの処理単位に分割してもよい。また、１つの処理単位がさらに多くの処理を含むように分割してもよい。
【００８１】
また、例えば、上述した実施形態では、不揮発性メモリー判定装置を、車両に搭載される車載装置１として例示したが、不揮発性メモリー判定装置の形態は任意である。
【符号の説明】
【００８２】
１  車載装置（不揮発性メモリー判定装置）
１１  不揮発性メモリー
１２  タッチパネル（報知部）
１０１  ＲＯＭ（データ記憶部）
１０１ａ  検査用データ（第１データ）
１０３  データ処理部
１０４  判定部
１１１  ファームウェア（第２データ）
１１２  地図データ（第２データ）
Ａ１  検査用記憶領域（第１記憶領域）
Ａ２  データ記憶領域（第２記憶領域）
【図１】
2018142053.tif 000003
【図２】
2018142053.tif 000004
【図３】
2018142053.tif 000005
【図４】
2018142053.tif 000006
【図５】
2018142053.tif 000007