(57)【要約】【課題】不揮発性メモリが劣化しているか否かの判定の精度を向上することができる制御装置を提供する。【解決手段】通信ポート１０４（受信部）は、更新用のプログラム（第１ソフトウェア）を受信する。ＲＯＭ１０３（不揮発性メモリ）は、更新対象のプログラム（第２ソフトウェア）が記憶されているプログラム領域（第１領域）、及び書換リトライ回数領域（第２領域）を有する。ＣＰＵ１０１（書換部）は、更新対象のプログラムを更新用のプログラムで書き換える書換処理を成功するまで繰り返す。ＣＰＵ１０１（判定部）は、今回書換リトライ回数Ｎ（書換リトライ回数）が初回書換リトライ回数Ｎ０（閾値）以上の場合、ＲＯＭ１０３が劣化していると判定する。【選択図】図１
2018136777.tif 000002
【特許請求の範囲】
【請求項１】
更新用の第１ソフトウェアを受信する受信部と、
更新対象の第２ソフトウェアが記憶されている第１領域、及び第２領域を有する不揮発性メモリと、
前記第２ソフトウェアを前記第１ソフトウェアで書き換える書換処理を成功するまで繰り返す書換部と、
前記書換部が成功するまで繰り返した前記書換処理の回数を示す書換リトライ回数をカウントし、前記書換リトライ回数を第２領域に記憶するカウント部と、
前記書換リトライ回数が閾値以上の場合、前記不揮発性メモリが劣化していると判定する判定部と、
を備えることを特徴とする制御装置。
【請求項２】
請求項１に記載の制御装置であって、
前記閾値は、
前記書換部が初めて成功するまで繰り返した前記書換処理の回数である
ことを特徴とする制御装置。
【請求項３】
請求項１に記載の制御装置であって、
前記不揮発性メモリが劣化していると判定された場合、表示装置に前記不揮発性メモリの劣化を示す警告を表示させる警告部を備える
ことを特徴とする制御装置。
【請求項４】
請求項１に記載の制御装置であって、
前記書換部は、
前記制御装置へ前記第１ソフトウェアを送信する書換装置によって規定された期間内に前記書換処理が完了しない場合、前記書換装置の書換要求に応じて、前記書換処理をリトライする
ことを特徴とする制御装置。
【請求項５】
請求項１に記載の制御装置であって、
前記不揮発性メモリが劣化していると判定された後、
前記第１ソフトウェアがプログラムである場合、前記書換処理を禁止し、
前記第１ソフトウェアがデータである場合、前記書換処理を許可する書換制御部を備える
ことを特徴とする制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置に関する。
【背景技術】
【０００２】
車両が搭載している機器を制御する車載制御装置（Ｖｅｈｉｃｌｅ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）としての車載用電子制御装置（ＥＣＵ：Ｅｌｅｃｔｒｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）は、一般的に、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などを備える。
【０００３】
ＲＯＭは、車両が搭載する機器を制御するプログラムを記憶するメモリ装置であり、ＲＯＭ書換装置により、種々のタイミングでＲＯＭの書換が行われる。書換とは、ＲＯＭに既に書かれたプログラムを消去し、新たなプログラムを書込する一連の作業を指す。
【０００４】
一般的に、ＲＯＭは、Ｆｌａｓｈと呼ばれる不揮発性メモリで構成されており、プログラムの書込や消去時は、メモリセルに大きなストレスがかるため、書換の上限回数が決まっている。ＲＯＭの書換回数の上限を超え、書換を実施した場合、データの書込や消去、または読出の速度低下、データ保持耐性の低下などの問題が発生する恐れがある。
【０００５】
これらの問題による車両への影響として、以下の通り説明する。例えば、ＲＯＭに書込まれたプログラムやデータの読出が遅延することにより、車両機器の制御が規定の制御周期以内に終わらない恐れや、車両走行中に、ＲＯＭに記憶された、車両機器を制御するプログラムが意図せず消える恐れがある。これらの問題を検出した車載制御装置は、車両を安全状態へ移行するように制御する。安全状態へ移行した車両は、ドライバーの意思とは反して、例えば、トランスミッションの変速比が固定されるなど、運転性能が低下する。
【０００６】
このような問題を防ぐため、ＲＯＭの故障を未然に防止する手法が開示されている（例えば、特許文献１参照）。特許文献１においては、ＲＯＭの書換回数が前記上限回数に達すると、以後の書換を禁止し、警告を実施することにより、ＲＯＭの信頼性向上を実現する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００６−８５８６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１に開示されるような技術では、不揮発性メモリの特性に応じ、あらかじめ設定した書換の前記上限回数に総書換回数が達したことを確認することにより、ＲＯＭの故障を未然に防止している。しかしながら、不揮発性メモリの製造ばらつきにより、前記総書換回数が前記上限回数に達する前に、プログラムの書込または消去が実施不可となる可能性がある。また、完全に故障しないものの、プログラムやデータの読出速度が低下し、正常時と比べて、メモリセルの特性が劣化する可能性が十分に考えられる。
【０００９】
本発明の目的は、不揮発性メモリが劣化しているか否かの判定の精度を向上することができる制御装置を提供することにある。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明は、更新用の第１ソフトウェアを受信する受信部と、更新対象の第２ソフトウェアが記憶されている第１領域、及び第２領域を有する不揮発性メモリと、前記第２ソフトウェアを前記第１ソフトウェアで書き換える書換処理を成功するまで繰り返す書換部と、前記書換部が成功するまで繰り返した前記書換処理の回数を示す書換リトライ回数をカウントし、前記書換リトライ回数を第２領域に記憶するカウント部と、前記書換リトライ回数が閾値以上の場合、前記不揮発性メモリが劣化していると判定する判定部と、を備える。
【発明の効果】
【００１１】
本発明によれば、不揮発性メモリが劣化しているか否かの判定の精度を向上することができる。上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１２】
【図１】車載制御装置とＲＯＭ書換装置の構成図である。
【図２】車載制御装置のＲＯＭが正常時と異常時における、ＲＯＭ更新回数とＲＯＭ書換リトライ回数の関係を示した特性図である。
【図３Ａ】車載制御装置が、ＲＯＭの書換を行う手順を説明するフローチャートの一例である。
【図３Ｂ】図３Ａに示すフローチャートに続くフローチャートである。
【図４】ＲＯＭ書換装置が、車載制御装置のＲＯＭの書換を行う手順を説明するフローチャートの一例である。
【図５】車載制御装置のＣＰＵによって実現される機能の一例である。
【発明を実施するための形態】
【００１３】
以下、図面を用いて、本発明の実施形態に係る車載制御装置（制御装置）等の構成及び動作について説明する。なお、各図において、同一符号は同一部分を示す。
【００１４】
ここで、車載制御装置（例えば、エンジンやトランスミッションを制御する装置）に搭載された不揮発性メモリには、例えば、制御プログラムや学習データが記憶されるが、出荷された後に種々のタイミングで書換が行われる場合がある。この際に従来技術においては、書換を行う前における初回書込時や、その後の書込時の書換回数を、書換を実行する者が把握することができない。仮に、初回書込時に比べて、その後の書込時が、多くのリトライを実行していたとすると、不揮発性メモリが劣化している可能性がある。
【００１５】
そこで、本発明の実施形態では、このような背景に鑑み、不揮発性メモリの書込、書換を実行する者に対して、不揮発性メモリの劣化を予測することを容易とする車載制御装置を提供することを目的とする。
【００１６】
図１は、本発明の実施形態に係る車載制御装置１００とＲＯＭ書換装置２００の構成図である。車載制御装置１００は、車両が搭載する車載機器（例えば自動変速機、エンジンなど）を電子的に制御する装置である。車載制御装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、通信ポート１０４、Ｉ／Ｏ回路１０５を備える。
【００１７】
ＣＰＵ１０１は、車載機器を制御するために必要な制御演算を実施する演算装置である。ＲＡＭ１０２は、ＣＰＵ１０１が使用するデータを一時的に格納する。ＲＯＭ１０３は、ＣＰＵ１０１が実行する、車載機器を制御するプログラムを格納するプログラム領域１０３１や、前記プログラム領域への書込が成功するまでに繰り替えし実行した書換の回数を格納した書換リトライ回数領域を有する。通信ポート１０４は、車載LANネットワークを介して、ＲＯＭ書換装置２００からＲＯＭ１０３に書込するプログラムを受信する。
【００１８】
換言すれば、通信ポート１０４（受信部）は、更新用のプログラム（第１ソフトウェア）を受信する。ＲＯＭ１０３（不揮発性メモリ）は、更新対象のプログラム（第２ソフトウェア）が記憶されているプログラム領域（第１領域）、及び書換リトライ回数領域（第２領域）を有する。
【００１９】
Ｉ／Ｏ回路１０５は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、通信ポート等との各機能部を接続するデータ通信路として機能する
車載制御装置１００は、ＲＯＭ書換装置２００から、通信ポート１０４とＩ／Ｏ回路を介し、ＲＯＭ１０３へ書込するプログラムをダウンロードし、ＣＰＵ１０１の命令に応じて、書込処理を実施する。
【００２０】
図２は、ＲＯＭ１０３を構成する不揮発性メモリの正常時と異常時の場合において、ＲＯＭ更新回数（横軸）とＲＯＭ書換リトライ回数（縦軸）の関係を示した図である。
【００２１】
不揮発性メモリへの初回書込時における成功するまでに実施した書換回数を、初回書換リトライ回数Ｎ０とする。換言すれば、初回書換リトライ回数Ｎ０（閾値）は、初めて成功するまで繰り返した書換処理の回数である。
【００２２】
不揮発性メモリが正常の場合は、２回目以降のＲＯＭ更新時は、書込が成功するまで実施した書換リトライ回数Ｎは、図２の通り、初回書換リトライ回数Ｎ０以内に収まる。一方で、不揮発性メモリが異常の場合は、２回目以降のＲＯＭ更新時は、初回書換リトライ回数Ｎ０以内に収まらない。異常な不揮発性メモリは、プログラムの書込速度が低下しているため、ＲＯＭ書換装置２００が規定する書込時間に終わらず、書込不可となり、成功するまでに要する書換回数が多くなる傾向がある。特に、極めて異常な不揮発性メモリの場合は、図２の通り、ＲＯＭ更新の度に、成功するまでの書換回数が上昇する傾向がある。
【００２３】
図３Ａ及び図３Ｂは、車載制御装置１００が、ＲＯＭ１０３の書換処理を行う手順を説明するフローチャートの一例である。以下、図３Ａ及び図３Ｂの各ステップについて説明する。図３Ａに示される１、２、３、４の部分は、図３Ｂに示される１，２，３、４の部分にそれぞれ接続される。なお、図３Ａ及び図３Ｂの各ステップを説明するときに、車載制御装置１００のＣＰＵ１０１によって実現される機能の一例を示す図５を適宜参照する。
【００２４】
（図３Ａ：ステップＳ１００）
車載制御装置１００は、ＲＯＭ書換装置２００から、ＲＯＭ１０３の書換要求が発生しているか否かを判定する。書換要求が発生していれば、Ｓ１０１に進み、書換要求が発生していなければ、本動作フローを終了する。
【００２５】
（図３Ａ：ステップＳ１０１）
車載制御装置１００は、ＲＯＭ１０３、または外部メモリに格納されたＲＯＭ１０３の書換許可判断結果を基に、ＲＯＭ１０３の書換が許可されるか否かを判断する。許可される場合は、Ｓ１０２に進み、許可されない場合は、Ｓ１１１に進む。
【００２６】
（図３Ａ：ステップＳ１０２）
車載制御装置１００は、ＲＯＭ１０３への書込が成功するまで要した書換回数である、今回書換リトライ回数をカウントする。例えば、車載制御装置１００のＣＰＵ１０１（カウント部１０１ｂ、図５）は、成功するまで繰り返した書換処理の回数を示す今回書換リトライ回数Ｎ（書換リトライ回数）をカウントし、今回書換リトライ回数Ｎを書換リトライ回数領域（第２領域）に記憶する。
【００２７】
（図３Ａ：ステップＳ１０３）
車載制御装置１００は、ＲＯＭ書換装置２００に書換許可を通知する。
【００２８】
（図３Ａ：ステップＳ１０３ａ）
通信ポート１０４（受信部）は、更新用のプログラム（第１ソフトウェア）をＲＯＭ書換装置２００から受信する。
【００２９】
（図３Ａ：ステップＳ１０４）
車載制御装置１００は、ＲＯＭ１０３への書込を実行する。
【００３０】
（図３Ａ：ステップＳ１０５）
車載制御装置１００は、ＲＯＭ１０３への書込が成功した否かを判断する。成功した場合は、Ｓ１０６に進む。失敗の場合は、Ｓ１０２に戻り、今回書換リトライ回数をインクリメントし、再度、ＲＯＭ１０３への書込を実施する。換言すれば、車載制御装置１００のＣＰＵ１０１（書換部１０１ａ、図５）は、更新対象のプログラム（第２ソフトウェア）を更新用のプログラム（第１ソフトウェア）で書き換える書換処理を成功するまで繰り返す。詳細には、例えば、車載制御装置１００のＣＰＵ１０１（書換部１０１ａ、図５）は、車載制御装置１００（制御装置）へ更新対象のプログラムを送信するＲＯＭ書換装置２００（書換装置）によって規定された期間内に書換処理が完了しない場合、ＲＯＭ書換装置２００の書換要求に応じて、書換処理をリトライする。これにより、ＲＯＭ書換装置２００（書換装置）によって規定される期間に基づいて、書換の成功又は失敗を判定することができる。
【００３１】
（図３Ａ：ステップＳ１０６）
車載制御装置１００は、ＲＯＭ１０３への書込成功が初回か否かを判断する。判断する前提条件として、車載制御装置１００は、ＲＯＭ１０３、または外部メモリに書換成功が初回か否かを判断可能な情報を格納しておく。初回の場合は、Ｓ１０７に進む。２回目以降の場合は、Ｓ１０８に進む。
【００３２】
（図３Ｂ：ステップＳ１０７）
車載制御装置１００は、ＲＯＭ１０３への書込成功が初回の場合、今回書換リトライ回数Ｎを初回書換リトライ回数Ｎ０とする。初回書換リトライ回数Ｎ０は、ＲＯＭ１０３、または外部メモリに格納しておき、車載制御装置１００が、ＲＯＭ１０３への書込処理を実施する際は、いつでも読み出せるようにしておく。
【００３３】
（図３Ｂ：ステップＳ１０８）
車載制御装置１００は、初回書換リトライ回数Ｎ０と今回書換リトライ回数Ｎを比較する。今回書換リトライ回数Ｎが、初回書換リトライ回数Ｎ０以内である場合（Ｓ１０８：Ｙｅｓ）は、本動作フローを終了する。今回書換リトライ回数Ｎが、初回書換リトライ回数Ｎ０を上回る場合（Ｓ１０８：Ｎｏ）は、Ｓ１０９に進む。換言すれば、車載制御装置１００のＣＰＵ１０１（判定部１０１ｃ、図５）は、今回書換リトライ回数Ｎ（書換リトライ回数）が初回書換リトライ回数Ｎ０（閾値）以上の場合、ＲＯＭ１０３（不揮発性メモリ）が劣化していると判定する。これにより、書換の度に、不揮発性メモリが劣化しているか否かを判定することができる。また、車載制御装置ごとの初回書換リトライ回数Ｎ０に基づいて、不揮発性メモリが劣化しているか否かを判定することができる。
【００３４】
（図３Ｂ：ステップＳ１０９）
車載制御装置１００は、以後、ＲＯＭ１０３の書換を禁止とする。尚、学習値や故障情報の更新は許可し、制御プログラムの書換のみ禁止してもよい。車載制御装置１００は、ＲＯＭ１０３、または外部メモリに格納された書換許可判断結果を基に、書換禁止という情報を把握できるようにしておく。
【００３５】
換言すれば、車載制御装置１００のＣＰＵ１０１（書換制御部１０１ｅ、図５）は、ＲＯＭ１０３（不揮発性メモリ）が劣化していると判定された後、通信ポート１０４（受信部）によって受信された情報がプログラムである場合、書換処理を禁止し、通信ポート１０４によって受信された情報がデータである場合、書換処理を許可してもよい。これにより、不揮発性メモリの可用性を向上することができる。
【００３６】
なお、例えば、ＣＡＮ（Controller Area Network）の場合、車載制御装置１００のＣＰＵ１０１（書換制御部１０１ｅ、図５）は、受信された情報に含まれるＣＡＮ  ＩＤにより、その情報がプログラムであるか、データであるかを判定することができる。
【００３７】
（図３Ｂ：ステップＳ１１０）
車載制御装置１００は、ＲＯＭ１０３への書換を実施するユーザに対し、車両の警告表示灯やＲＯＭ書換装置２００の表示機（表示装置）に、ＲＯＭの異常を知らせる警告を出すように指令を出す。換言すれば、車載制御装置１００のＣＰＵ１０１（警告部１０１ｄ、図５）は、ＲＯＭ１０３（不揮発性メモリ）が劣化していると判定された場合、表示装置にＲＯＭ１０３の劣化を示す警告を表示させる。これにより、ＲＯＭ１０３の劣化をユーザに知らせることができる。
【００３８】
（図３Ｂ：ステップＳ１１１）
車載制御装置１００は、ＲＯＭ書換装置２００にＲＯＭ１０３への書換禁止を通知する。
【００３９】
図４は、ＲＯＭ書換装置２００が、車載制御装置１００のＲＯＭ１０３の書換を行う手順を説明するフローチャートの一例である。以下、図４の各ステップについて説明する。
【００４０】
（図４：ステップＳ２００）
ＲＯＭ書換装置２００は、車載制御装置１００に対し、ＲＯＭ１０３の書換要求を通知する。
【００４１】
（図４：ステップＳ２０１）
ＲＯＭ書換装置２００は、車載制御装置１００から、ＲＯＭ１０３の書換可否判断結果を受信する。
【００４２】
（図４：ステップＳ２０２）
ＲＯＭ書換装置２００は、Ｓ２０１で受信した情報を基に、ＲＯＭ１０３の書換が許可されるか判断する。書換が許可される場合は、Ｓ２０３に進む。書換が禁止される場合は、本動作フローを終了する。
【００４３】
（図４：ステップＳ２０３）
ＲＯＭ書換装置２００は、車載制御装置１００のＲＯＭ１０３の書換を実行する。具体的には、ＲＯＭ書換装置２００から、車載制御装置１００の通信ポート１０４とＩ／Ｏ回路１０５を介し、ＲＯＭ１０３に対し、書換プログラムを送信する。
【００４４】
（図４：ステップＳ２０４）
ＲＯＭ書換装置２００は、車載制御装置１００のＲＯＭ１０３の書換が成功したか否かを判断する。書換が成功した場合は、本動作フローを終了する。書換が失敗した場合は、書換が成功するまで、Ｓ２０３で書換を繰り返し実行する。
【００４５】
以上説明したように、本実施形態によれば、不揮発性メモリが劣化しているか否かの判定の精度を向上することができる。
【００４６】
なお、本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上述した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。
【００４７】
上記実施形態では、主として、プログラムを更新対象としているが、所定の学習値（パラ−メータ）などのデータを更新対象としてもよい。換言すれば、ソフトウェア（プログラム又はデータ）を更新対象としてもよい。
【００４８】
上記実施形態では、換言すれば、車載制御装置１００のＣＰＵ１０１（警告部１０１ｄ、図５）は、ＲＯＭ１０３（不揮発性メモリ）が劣化していると判定された場合、表示装置にＲＯＭ１０３の劣化を示す警告を表示させるが、図２に示すように、最初に劣化していると判定された後、書換（ＲＯＭ更新）の度に書換リトライ回数Ｎが増大する場合、書換リトライ回数Ｎに応じて警告の内容を変更してもよい。表示装置が警告灯の場合、例えば、その色を変更させたり、点滅させたりし、表示装置がディスプレイの場合には、アイコン、文字、記号を変更させることが考えられる。
【００４９】
また、上記の各構成、機能等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサ（ＣＰＵ）がそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD（Solid State Drive）等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
【００５０】
なお、本発明の実施形態は、以下の態様であってもよい。下記（１）〜（５）は、車両制御装置において、不揮発性メモリで構成されたＲＯＭの書換を実行する者に対し、不揮発性メモリの劣化の予兆を早期に検出し、注意を促すことを容易とする車載制御装置を提供することを目的とする。
【００５１】
（１）車両が搭載している機器を制御する車載制御装置であって、前記機器を制御するための制御演算を実施する演算部、前記演算部が使用する制御プログラム、制御プログラムの書込が成功するまでの書込を実施した回数である、書込リトライ回数を格納する不揮発性メモリを備えた車載制御装置。
【００５２】
（２）（１）に記載の車載制御装置において、プログラム書込装置が、前記不揮発性メモリを書換える度に、制御プログラムの書換が成功するまでの書換を実施した回数である、書換リトライ回数を格納する前記不揮発性メモリを備えた車載制御装置。
【００５３】
（３）（２）に記載の車載制御装置において、書換を実施した際に前記書込リトライ回数と当該書換リトライ回数を比較し、当該書換リトライ回数が前記書込リトライ回数を越えるか否かで、前記不揮発性メモリの劣化を診断する車載制御装置。
【００５４】
（４）（２）に記載の車載制御装置において、書換を実施した際に前記書込リトライ回数と当該書換リトライ回数を比較し、当該書換リトライ回数が前記書込リトライ回数を越えた場合、前記不揮発性メモリの劣化と判断し、その後の前記不揮発メモリの書換を禁止する機能を備えた車載制御装置。
【００５５】
（５）（２）に記載の車載制御装置において、書換を実施した際に前記書込リトライ回数と当該書換リトライ回数を比較し、当該書換リトライ回数が前記書込リトライ回数を越えた場合、前記不揮発性メモリの劣化と判断し、表示装置に警告を出すことで、ドライバーに車載制御装置の交換を促す機能を備えた車載制御装置。
【００５６】
換言すれば、（１）〜（５）に係る車載制御装置は、不揮発性メモリが完全に故障する前に、その予兆を捉えて対応する。そのため、（１）〜（５）に係る車載制御装置は、不揮発性メモリへのプログラム書込が成功するまでに、書換を実施した回数である、書換リトライ回数を把握する。
【００５７】
（１）〜（５）に係る車載制御装置は、車載制御装置の製造工場や自動車組立工場のラインで、不揮発性メモリに対し、車両を制御するプログラムやデータを初めて書込む。この初回書込時において、書込が成功するまでに実施した書換回数を初回書換リトライ回数とする。前記初回書換リトライ回数と、その後のプログラム書込毎に、成功するまでに実施した当該書換リトライ回数を比較し、書換リトライ回数の増加により不揮発性メモリの劣化の予兆を検知する。不揮発性メモリが劣化しているとすると、正常時と比べて、プログラムの書込時間が長くなる。そのため、ＲＯＭの書込規定時間以内に書込が完了し難く、初回書込時と比べて、書込が成功するまでに多くのリトライを実行することになる。
【００５８】
上記を達成するために、図１に示すように、車載制御装置１００は、車両機器を制御するための制御演算を実施する演算部であるＣＰＵ１０１と、ＣＰＵ１０１が使用する制御プログラムと、制御プログラムの書込が成功するまでの書換を実施した回数である、書換リトライ回数を格納する不揮発性メモリであるＲＯＭ１０３を備える。
【００５９】
従来は、自動車組立工場での出荷プログラムの書込やディーラーでのリコール対応によるプログラム更新が主だったが、近年、自動車システムの高度化に伴い、ユーザが車両を購入後も、運転性向上や新たな機能追加のため、ＲＯＭに書込まれた制御プログラムや学習値を更新する機会が増えている。
【００６０】
そのため、ＲＯＭを構成する不揮発性メモリの劣化が懸念される。
例えば、ユーザが外出中に、車両を所定の場所に停車させて、外部のサーバと通信し、プログラムの更新を行うとする。この際に、ＲＯＭが故障したことにより、消去は出来たが、書込は実施出来ないケースが十分に起こり得ることが想定される。車載制御装置は、これを故障と検出し、安全状態へ移行する。安全状態へ移行した車両は、ドライバーの意思とは反して、例えば、トランスミッションの変速比が固定されるなど、運転性能が低下する。
【００６１】
（１）〜（５）に係る車載制御装置は、不揮発性メモリへの初回書込時における成功するまでに実施した、前記初回書換リトライ回数を把握することが出来るため、初回以降の書込の際に、前記初回書換リトライ回数と前記当該書換リトライ回数を比較し、前記当該書換リトライ回数の方が上回る場合は、ＲＯＭ１１３は劣化していると判断する。そして、ＲＯＭ１１３の書換を実施する者に、警告を表示し、車載制御装置の交換を促す。また、ＲＯＭ１１３が劣化したと判断した車載制御装置は、その後のプログラム書換や学習値の更新を禁止することで、ＲＯＭの故障を防止し、車両が安全状態へ移行し、運転性能が低下することを防ぐ。
【００６２】
なお、本発明の実施形態は、さらに以下の態様であってもよい。
【００６３】
（６）更新用の第１ソフトウェアを受信する受信部と、更新対象の第２ソフトウェアが記憶されている第１領域、及び第２領域を有する不揮発性メモリと、前記第２ソフトウェアを前記第１ソフトウェアで書き換える書換処理を成功するまで繰り返す書換部と、前記書換部が成功するまで繰り返した前記書換処理の回数を示す書換リトライ回数をカウントし、前記書換リトライ回数を第２領域に記憶するカウント部と、前記書換リトライ回数が閾値以上の場合、前記不揮発性メモリが劣化していると判定する判定部と、を備えた制御装置であって、前記第１及び第２ソフトウェアは、車両に搭載される機器を制御するプログラムであることを特徴とする制御装置。
【００６４】
（７）（６）に記載の制御装置であって、前記不揮発性メモリは、フラッシュメモリであることを特徴とする制御装置。
【００６５】
（８）（７）に記載の制御装置であって、前記書換処理は、前記第１領域を構成するメモリセルごとに、前記メモリセルに記憶されている情報を消去した後、前記メモリセルに新たな情報を書き込むことを特徴とする制御装置。
【符号の説明】
【００６６】
１００：車載制御装置
１０１：ＣＰＵ
１０１ａ：書換部
１０１ｂ：カウント部
１０１ｃ：判定部
１０１ｄ：警告部
１０１ｅ：書換制御部
１０２：ＲＡＭ
１０３：ＲＯＭ
１０３１：プログラム領域
１０３２：書換リトライ回数領域
１０４：通信ポート
１０５：Ｉ／Ｏ回路
２００：ＲＯＭ書換装置
３００：ＲＯＭ正常時のＲＯＭ書換リトライ回数とＲＯＭ更新回数の関係
３０１：ＲＯＭ異常時のＲＯＭ書換リトライ回数とＲＯＭ更新回数の関係
３０２：初回書換リトライ回数
【図１】
2018136777.tif 000003
【図２】
2018136777.tif 000004
【図３Ａ】
2018136777.tif 000005
【図３Ｂ】
2018136777.tif 000006
【図４】
2018136777.tif 000007
【図５】
2018136777.tif 000008