(57)【要約】【課題】揮発性メモリの容量の増大が抑制された電子制御装置を提供する。【解決手段】不揮発性メモリ（５０）と、揮発性メモリ（３０）と、不揮発性メモリに書き込まれたデータの書換処理を行うＣＰＵ（７０）と、を有する電子制御装置。書換処理は、不揮発性メモリに書き込まれていたリプログにしたがって、不揮発性メモリに書き込まれていたアプリを消去する第１消去処理（Ｓ３０）と、第１消去処理後、不揮発性メモリに書き込まれていたリプログにしたがって、新たなリプログを不揮発性メモリに書き込む第１書き込み処理（Ｓ４０〜Ｓ９０）と、第１書き込み処理後、第１書き込み処理にて書き込まれたリプログにしたがって、不揮発性メモリに書き込まれていたリプログを消去する第２消去処理（Ｓ１２０）と、第２消去処理後、アプリを不揮発性メモリに書き込む第２書き込み処理（Ｓ２３０〜Ｓ２７０）と、を含む。【選択図】図３
2014002478.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションソフト及びリプログラミングソフトが書き込まれた不揮発性メモリ（５０）と、
外部装置から送られてくるデータを一時的に記憶する揮発性メモリ（３０）と、
前記リプログラミングソフトにしたがって、前記不揮発性メモリに書き込まれたデータの書換処理を行うＣＰＵ（７０）と、を有する電子制御装置であって、
前記書換処理は、
前記不揮発性メモリに書き込まれていたリプログラミングソフトにしたがって、前記不揮発性メモリに書き込まれていたアプリケーションソフトの少なくとも一部を消去する第１消去処理（Ｓ３０）と、
該第１消去処理後、前記不揮発性メモリに書き込まれていたリプログラミングソフトにしたがって、新たなリプログラミングソフトを前記不揮発性メモリに書き込む第１書き込み処理（Ｓ４０〜Ｓ９０）と、
該第１書き込み処理後、前記第１書き込み処理にて書き込まれたリプログラミングソフトにしたがって、前記不揮発性メモリに書き込まれていたリプログラミングソフトを消去する第２消去処理（Ｓ１２０）と、
該第２消去処理後、前記第１消去処理にて消去されたアプリケーションソフト、若しくは、新たなアプリケーションソフトを前記不揮発性メモリに書き込む第２書き込み処理（Ｓ２３０〜Ｓ２７０）と、を含むことを特徴とする電子制御装置。
【請求項２】
前記第１消去処理において、前記不揮発性メモリに書き込まれていたアプリケーションソフトの一部を消去し、
前記第２書き込み処理において、前記第１消去処理にて消去されたアプリケーションソフトを前記不揮発性メモリに書き込むことを特徴とする請求項１に記載の電子制御装置。
【請求項３】
前記第１消去処理において、前記第１書き込み処理にて前記不揮発性メモリに書き込まれるリプログラミングソフトのデータサイズ分、前記不揮発性メモリに書き込まれていたアプリケーションソフトの一部を消去することを特徴とする請求項２に記載の電子制御装置。
【請求項４】
前記書換処理は、
前記第２消去処理後、前記第１書き込み処理にて前記不揮発性メモリに書き込まれたリプログラミングソフトにしたがって、前記不揮発性メモリに書き込まれていたリプログラミングソフトのデータ領域に、更に新たなリプログラミングソフトを書き込む第３書き込み処理（Ｓ１４０〜Ｓ１８０）と、
該第３書き込み処理後、前記第３書き込み処理にて前記不揮発性メモリに書き込まれたリプログラミングソフトにしたがって、前記第１書き込み処理にて書き込まれたリプログラミングソフトを消去する第３消去処理（Ｓ２１０）と、を有し、
該第３消去処理後、前記第２書き込み処理が行われることを特徴とする請求項３に記載の電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションソフト及びリプログラミングソフトが書き込まれた不揮発性メモリと、外部装置から送られてくるデータを一時的に記憶する揮発性メモリと、不揮発性メモリに書き込まれたデータの書換処理を行うＣＰＵと、を備える電子制御装置に関するものである。
【背景技術】
【０００２】
従来、例えば特許文献１に示されるように、不揮発性記憶装置及び揮発性記憶装置を具備する複数のＥＣＵから成るＥＣＵノードが提案されている。複数のＥＣＵとして、第１の通信ラインに接続されたマスターＥＣＵと、第２の通信ラインを介してマスターＥＣＵに接続されたスレーブＥＣＵと、を有する。
【０００３】
マスターＥＣＵの不揮発性記憶装置に設けられたマスター側不揮発性記憶領域に、当該マスター側不揮発性記憶領域を書き換える際に起動されるマスター側書換プログラムの受信処理を実行させる複数のマスター側ブートプログラムが格納されている。そして、スレーブＥＣＵの不揮発性記憶装置に設けられたスレーブ側不揮発性記憶領域に、当該スレーブ側不揮発性記憶領域を書き換える際に起動されるスレーブ側書換プログラムの受信処理を実行させる複数のスレーブ側ブートプログラムが格納されている。
【０００４】
また、マスターＥＣＵの揮発性記憶装置に設けられたマスター側揮発性記憶領域に、マスター側不揮発性記憶領域を書き換えるマスター側書換プログラムが格納され、スレーブＥＣＵの揮発性記憶装置に設けられたスレーブ側揮発性記憶領域に、マスター側不揮発性記憶領域から転送されたスレーブ側書換プログラムが格納される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−１６６６４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記したように、特許文献１に示されるＥＣＵノードでは、マスター側不揮発性記憶領域にマスター側書換プログラムの受信処理を実行させるマスター側ブートプログラムが格納され、スレーブ側不揮発性記憶領域にスレーブ側書換プログラムの受信処理を実行させるスレーブ側ブートプログラムが格納されている。そして、マスター側揮発性記憶領域にマスター側書換プログラムが格納され、スレーブ側揮発性記憶領域にスレーブ側書換プログラムが格納される。
【０００７】
これによれば、ブートプログラムは、書換プログラムの受信処理を行うだけなので、ＥＣＵノードを書き換える際、書換プログラムの全てが、揮発性記憶領域に格納されることとなる。通常、書換プログラムのデータサイズは、揮発性記憶領域よりも大きい。そのため、特許文献１に示されるＥＣＵノードにて書き換えを行うには、揮発性記憶領域のメモリ容量を、書換プログラムに応じて増大しなくてはならない。
【０００８】
そこで、本発明は上記問題点に鑑み、揮発性メモリの容量の増大が抑制された電子制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記した目的を達成するために、本発明は、アプリケーションソフト及びリプログラミングソフトが書き込まれた不揮発性メモリ（５０）と、外部装置から送られてくるデータを一時的に記憶する揮発性メモリ（３０）と、リプログラミングソフトにしたがって、不揮発性メモリに書き込まれたデータの書換処理を行うＣＰＵ（７０）と、を有する電子制御装置であって、書換処理は、不揮発性メモリに書き込まれていたリプログラミングソフトにしたがって、不揮発性メモリに書き込まれていたアプリケーションソフトの少なくとも一部を消去する第１消去処理（Ｓ３０）と、該第１消去処理後、不揮発性メモリに書き込まれていたリプログラミングソフトにしたがって、新たなリプログラミングソフトを不揮発性メモリに書き込む第１書き込み処理（Ｓ４０〜Ｓ９０）と、該第１書き込み処理後、第１書き込み処理にて書き込まれたリプログラミングソフトにしたがって、不揮発性メモリに書き込まれていたリプログラミングソフトを消去する第２消去処理（Ｓ１２０）と、該第２消去処理後、第１消去処理にて消去されたアプリケーションソフト、若しくは、新たなアプリケーションソフトを不揮発性メモリに書き込む第２書き込み処理（Ｓ２３０〜Ｓ２７０）と、を含むことを特徴とする。
【００１０】
このように本発明によれば、不揮発性メモリ（５０）に記憶されていたアプリケーションソフトが消去され、その消去によって形成された空き領域に、不揮発性メモリ（５０）に記憶されていたリプログラミングソフトにしたがって、新たなリプログラミングソフトが書き込まれる。こうすることで、リプログラミングソフトの書き換えが行われる。これによれば、リプログラミングソフトの全てを揮発性メモリに保存した後、リプログラミングソフトの書き換えが行われる処理とは異なり、リプログラミングソフトのデータサイズに応じて、揮発性メモリ（３０）のメモリ容量を増大しなくともよくなる。したがって、揮発性メモリ（３０）の容量の増大が抑制される。
【００１１】
なお、本発明においては、第１消去処理において、不揮発性メモリに書き込まれていたアプリケーションソフトの一部を消去し、第２書き込み処理において、第１消去処理にて消去されたアプリケーションソフトを不揮発性メモリに書き込む構成が好適である。これによれば、第１消去処理において、不揮発性メモリに書き込まれていたアプリケーションソフトの全てを消去する処理と比べて、リプログラミングソフトの書換処理が早まる。
【００１２】
更に言えば、第１消去処理において、第１書き込み処理にて不揮発性メモリに書き込まれるリプログラミングソフトのデータサイズ分、不揮発性メモリに書き込まれていたアプリケーションソフトの一部を消去する構成が好ましい。これによれば、第１消去処理において、第１書き込み処理にて不揮発性メモリに書き込まれるリプログラミングソフトのデータ分より多く、不揮発性メモリに書き込まれていたアプリケーションソフトの一部を消去する処理と比べて、リプログラミングソフトの書換処理が早まる。
【図面の簡単な説明】
【００１３】
【図１】第１実施形態に係る電子制御装置の概略構成を示すブロック図である。
【図２】不揮発性メモリに記憶されたデータを示す概念図である。
【図３】外部装置とＣＰＵとのデータの送受信を示す概念図である。
【図４】外部装置とＣＰＵとのデータの送受信を示す概念図である。
【図５】外部装置とＣＰＵとのデータの送受信を示す概念図である。
【図６】書換処理を説明するためのフローである。
【図７】書換処理を説明するためのフローである。
【図８】書換処理を説明するためのフローである。
【図９】不揮発性メモリに記憶されたデータを示す概念図である。
【図１０】アプリケーションソフトの一部が消去された状態を示す概念図である。
【図１１】仮リプログラミングソフトが書き込まれた状態を示す概念図である。
【図１２】旧リプログラミングソフトが消去された状態を示す概念図である。
【図１３】新リプログラミングソフトが書き込まれた状態を示す概念図である。
【図１４】仮リプログラミングソフトが消去された状態を示す概念図である。
【図１５】アプリケーションソフトが書き込まれた状態を示す概念図である。
【図１６】外部装置とＣＰＵとのデータの送受信を示す概念図である。
【図１７】外部装置とＣＰＵとのデータの送受信を示す概念図である。
【図１８】書換処理の変形例を説明するためのフローである。
【図１９】書換処理の変形例を説明するためのフローである。
【図２０】不揮発性メモリに記憶されたデータを示す概念図である。
【図２１】アプリケーションソフトの全てが消去された状態を示す概念図である。
【図２２】新リプログラミングソフトが書き込まれた状態を示す概念図である。
【図２３】旧リプログラミングソフトが消去された状態を示す概念図である。
【図２４】アプリケーションソフトが書き込まれた状態を示す概念図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態を図に基づいて説明する。
（第１実施形態）
図１〜図１５に基づいて、本実施形態に係る電子制御装置を説明する。以下においては、記述が煩雑となることを避けるために、アプリケーションソフトを単にアプリ、リプログラミングソフトを単にリプログと示す。
【００１５】
図１に示すように、電子制御装置１００は、要部として、送受信コントローラ１０と、揮発性メモリ３０と、不揮発性メモリ５０と、ＣＰＵ７０と、を有する。送受信コントローラ１０は、外部装置９０とのデータの送受信を行うものであり、揮発性メモリ３０は、送受信コントローラ１０を介して外部装置９０から送られてくるデータを一時的に記憶するものである。不揮発性メモリ５０は、アプリ、リプログ、及び、埋め込みコードを記憶するものであり、ＣＰＵ７０は、アプリにしたがって通常処理を行い、リプログにしたがって書換処理を行うものである。外部装置９０は、リプログ書き換え要求、アプリ、リプログを電子制御装置１００に送信するものである。
【００１６】
本実施形態に係る揮発性メモリ３０は、ＲＡＭであり、不揮発性メモリ５０は、フラッシュメモリである。図２に示すように、不揮発性メモリ５０に記憶されるアプリは、リプログよりもデータサイズが大きい。本実施形態では、アプリとリプログのデータ比が１０：１になっている。図２に示す破線は、ＣＰＵ７０が１処理にて書き換えるデータサイズを示しており、以下、このデータサイズをブロックと示す。上記したように、不揮発性メモリ５０には、埋め込みコードが書き込まれているが、この埋め込みコードは、ＣＰＵ７０にエラーを通知するものである。
【００１７】
次に、不揮発性メモリ５０に書き込まれたデータの書換である書換処理について、図３〜図１５に基づいて説明する。書換処理において、ＣＰＵ７０と外部装置９０との間では、図３〜図５に示す信号の送受信が行われ、ＣＰＵ７０は、図６〜図８に示す処理を行い、不揮発性メモリ５０に記憶されたデータは、図９〜図１５に示すように書き換えられる。以下においては、書換処理の説明を簡便とするために、書き換え前に、不揮発性メモリ５０に記憶されているリプログを旧リプログ、書き換えのために、外部装置９０から送られてくるリプログを仮リプログ、新リプログと示す。なお、図９〜図１５では埋め込みコードを省略し、図１０，１２，１４では、空き領域（何もデータが書き込まれていないアドレス）をドットハッチングで示している。
【００１８】
図９に示すように、書換処理が行われる前の段階では、不揮発性メモリ５０にアプリと旧リプログが書き込まれており、ＣＰＵ７０は通常処理を行う通常モードになっている。
【００１９】
図３及び図６に示すように、外部装置９０からリプログ書き換え要求が送信され、それをＣＰＵ７０が受信すると、アプリから旧リプログにエントリーして、旧リプログが起動する。これにより、ＣＰＵ７０はアプリに基づいて通常処理を行う通常モードから、リプログに基づいて書換処理を行う書換モードへと移行する。以上が、ステップＳ１０，Ｓ２０である。
【００２０】
ステップＳ２０後、図１０に示すように、ＣＰＵ７０は、アプリの一部を消去する。本実施形態では、仮リプログを書き換えるのに必要な分だけ、アプリの一部を消去する。以上が、ステップＳ３０であり、特許請求の範囲に記載の第１消去処理に相当する。
【００２１】
ステップＳ３０後、ＣＰＵ７０は、仮リプログのダウンロード要求を外部装置９０に送信する。以上が、ステップＳ４０である。
【００２２】
ステップＳ４０後、ＣＰＵ７０は、仮リプログのダウンロード（揮発性メモリ３０への記憶）を開始する。以上が、ステップＳ５０である。
【００２３】
このステップＳ５０にて、ＣＰＵ７０は、仮リプログが１ブロック分ダウンロードされるまで、仮リプログをダウンロードする。以上が、ステップＳ６０である。
【００２４】
仮リプログが１ブロック分ダウンロードされると、ＣＰＵ７０は、その１ブロック分の仮リプログを、不揮発性メモリ５０におけるアプリの書き込まれていたデータ領域（図１０に示す空き領域）に書き込む。以上が、ステップＳ７０である。
【００２５】
ステップＳ７０後、ＣＰＵ７０は、書込みが正常に終了したか否かを判定する。ＣＰＵ７０は、正常に終了していないと判定した場合、エラー処理を行い、正常に終了したと判定した場合、ステップＳ９０に移行する。以上が、ステップＳ８０である。
【００２６】
ステップＳ９０に移行すると、ＣＰＵ７０は、仮リプログの全データが不揮発性メモリ５０に書き込まれたか否かを判定する。ＣＰＵ７０は、仮リプログの全データが不揮発性メモリ５０に書き込まれていないと判定した場合、仮リプログの全データが不揮発性メモリ５０に書き込まれるまで、ステップＳ４０〜ステップＳ９０を順次繰り返す。このステップＳ４０〜ステップＳ９０までが、特許請求の範囲に記載の第１書き込み処理に相当する。これに対して、図１１に示すように、不揮発性メモリ５０に全ての仮リプログが書き込まれると、ＣＰＵ７０は、仮リプログの全データが不揮発性メモリ５０に書き込まれたと判定して、ステップＳ１００に移行する。以上が、ステップＳ９０である。
【００２７】
ステップＳ１００に移行すると、ＣＰＵ７０は、仮リプログの書き込み完了通知を外部装置９０に送信する。以上が、ステップＳ１００である。なお、ＣＰＵ７０は、上記したステップＳ３０〜Ｓ１００を、旧リプログにしたがって行う。
【００２８】
図４及び図７に示すように、ステップＳ１００後、ＣＰＵ７０は、仮リプログを起動させる。以上が、ステップＳ１１０である。
【００２９】
ステップＳ１１０後、図１２に示すように、ＣＰＵ７０は、旧リプログを消去する。以上が、ステップＳ１２０であり、特許請求の範囲に記載の第２消去処理に相当する。なお、このステップＳ１２０においては、新リプログのデータサイズが、旧リプログのデータサイズよりも大きい場合、その差分だけ、埋め込みコードも消去する。
【００３０】
ステップＳ１２０後、ＣＰＵ７０は、新リプログのダウンロード要求を外部装置９０に送信する。以上が、ステップＳ１３０である。
【００３１】
ステップＳ１３０後、ＣＰＵ７０は、新リプログのダウンロード（揮発性メモリ３０への記憶）を開始する。以上が、ステップＳ１４０である。
【００３２】
このステップＳ１４０にて、ＣＰＵ７０は、新リプログが１ブロック分ダウンロードされるまで、新リプログをダウンロードする。以上が、ステップＳ１５０である。
【００３３】
新リプログが１ブロック分ダウンロードされると、ＣＰＵ７０は、その１ブロック分の新リプログを不揮発性メモリ５０における旧リプログの書き込まれていたデータ領域（図１２に示す空き領域）に書き込む。以上が、ステップＳ１６０である。
【００３４】
ステップＳ１６０後、ＣＰＵ７０は、書込みが正常に終了したか否かを判定する。ＣＰＵ７０は、正常に終了していないと判定した場合、エラー処理を行い、正常に終了したと判定した場合、ステップＳ１８０に移行する。以上が、ステップＳ１７０である。
【００３５】
ステップＳ１８０に移行すると、ＣＰＵ７０は、新リプログの全データが不揮発性メモリ５０に書き込まれたか否かを判定する。ＣＰＵ７０は、新リプログの全データが不揮発性メモリ５０に書き込まれていないと判定した場合、新リプログの全データが不揮発性メモリ５０に書き込まれるまで、ステップＳ１４０〜ステップＳ１８０を順次繰り返す。このステップＳ１４０〜ステップＳ１８０までが、特許請求の範囲に記載の第３書き込み処理に相当する。これに対して、図１３に示すように、不揮発性メモリ５０に全ての新リプログが書き込まれると、ＣＰＵ７０は、新リプログの全データが不揮発性メモリ５０に書き込まれたと判定して、ステップＳ１９０に移行する。以上が、ステップＳ１８０である。なお、新リプログが旧リプログよりもデータサイズが小さい場合、ステップＳ１８０までの操作にて不揮発性メモリ５０に空き領域が生じる。この空き領域は、埋め込みコードによって埋められる。
【００３６】
ステップＳ１９０に移行すると、ＣＰＵ７０は、新リプログの書き込み完了通知を外部装置９０に送信する。以上が、ステップＳ１９０である。なお、ＣＰＵ７０は、上記したステップＳ１２０〜Ｓ１９０を、仮リプログにしたがって行う。
【００３７】
図５及び図８に示すように、ステップＳ１９０後、ＣＰＵ７０は、新リプログを起動させる。以上が、ステップＳ２００である。
【００３８】
ステップＳ２００後、図１４に示すように、ＣＰＵ７０は、仮リプログ部を消去する。以上が、ステップＳ２１０であり、特許請求の範囲に記載の第３消去処理に相当する。
【００３９】
ステップＳ２１０後、ＣＰＵ７０は、ステップＳ３０にて消去した分のアプリ（仮リプログを書き換えるのに必要な分だけ消去されたアプリ）のダウンロード要求を外部装置９０に送信する。以上が、ステップＳ２２０である。
【００４０】
ステップＳ２２０後、ＣＰＵ７０は、アプリのダウンロード（揮発性メモリ３０への記憶）を開始する。以上が、ステップＳ２３０である。
【００４１】
このステップＳ２３０にて、ＣＰＵ７０は、アプリが１ブロック分ダウンロードされるまで、アプリをダウンロードする。以上が、ステップＳ２４０である。
【００４２】
アプリが１ブロック分ダウンロードされると、ＣＰＵ７０は、その１ブロック分のアプリを不揮発性メモリ５０における仮リプログの書き込まれていたデータ領域（図１４に示す空き領域）に書き込む。以上が、ステップＳ２５０である。
【００４３】
ステップＳ２５０後、ＣＰＵ７０は、書込みが正常に終了したか否かを判定する。ＣＰＵ７０は、正常に終了していないと判定した場合、エラー処理を行い、正常に終了したと判定した場合、ステップＳ２７０に移行する。以上が、ステップＳ２６０である。
【００４４】
ステップＳ２７０に移行すると、ＣＰＵ７０は、ステップＳ３０にて消去した分のアプリの全データが不揮発性メモリ５０に書き込まれたか否かを判定する。ＣＰＵ７０は、アプリの全データが不揮発性メモリ５０に書き込まれていないと判定した場合、アプリの全データが不揮発性メモリ５０に書き込まれるまで、ステップＳ２３０〜ステップＳ２７０を順次繰り返す。このステップＳ２３０〜ステップＳ２７０までが、特許請求の範囲に記載の第２書き込み処理に相当する。これに対して、図１５に示すように、不揮発性メモリ５０に全てのアプリが書き込まれると、ＣＰＵ７０は、アプリの全データが不揮発性メモリ５０に書き込まれたと判定して、ステップＳ２８０に移行する。以上が、ステップＳ２７０である。
【００４５】
ステップＳ２８０に移行すると、ＣＰＵ７０は、アプリの書き込み完了通知を外部装置９０に送信する。以上が、ステップＳ２８０である。以上のステップを経ることで、リプログの書換処理が終了となる。なお、ＣＰＵ７０は、上記したステップＳ２１０〜Ｓ２８０を、新リプログにしたがって行う。
【００４６】
次に、本実施形態に係る電子制御装置１００の作用効果を説明する。上記したように、不揮発性メモリ５０に記憶されていたアプリが消去され、その消去によって形成された空き領域に、新たなリプログが書き込まれることで、リプログの書き換えが行われる。これによれば、リプログの全てを揮発性メモリに保存した後、リプログの書き換えが行われる処理とは異なり、リプログのデータサイズに応じて、揮発性メモリ３０のメモリ容量を増大しなくともよくなる。したがって、揮発性メモリ３０の容量の増大が抑制される。
【００４７】
ＣＰＵ７０は、ステップＳ３０において、アプリの一部を消去し、ステップＳ２２０〜Ｓ２７０において、ステップＳ３０にて消去した分のアプリを不揮発性メモリ５０に再度書き込む。これによれば、ステップＳ３０において、不揮発性メモリに書き込まれていたアプリの全てを消去する処理と比べて、リプログの書換処理が早まる。
【００４８】
更に本実施形態において、ＣＰＵ７０は、ステップＳ３０において、仮リプログを書き換えるのに必要な分だけ、アプリの一部を消去し、ステップＳ２２０〜Ｓ２７０において、ステップＳ３０にて消去した分のアプリ（仮リプログを書き換えるのに必要な分だけ消去されたアプリ）を不揮発性メモリ５０に再度書き込む。これによれば、ステップＳ３０において、仮リプログを書き換えるのに必要なデータより多くのアプリを消去する処理と比べて、リプログの書換処理が早まる。
【００４９】
ステップＳ３０にて、アプリの一部を消去し、ステップＳ４０〜Ｓ９０にて、アプリの書き込まれていたデータ領域に仮リプログを書き込み、ステップＳ１２０にて、旧リプログを消去し、ステップＳ１３０〜１８０にて、旧リプログが書き込まれていたデータ領域に新リプログを書き込む。そして、ステップＳ２１０にて、仮リプログを消去した後に、ステップＳ２２０〜Ｓ２７０にて、仮リプログが書き込まれていた領域（アプリの書き込まれていた領域）に、ステップＳ３０にて消去されたアプリの一部を再度書き込んでいる。これによれば、元々、アプリが書き込まれていたデータ領域に新リプログが書き込まれる処理とは異なり、元々、アプリが書き込まれていたデータ領域にアプリが書き込まれ、旧リプログが書き込まれていたデータ領域に新リプログが書き込まれる。そのため、アプリが書き込まれるアドレス、及び、リプログの書き込まれるアドレスそれぞれの変更が抑制される。
【００５０】
以上、本発明の好ましい実施形態について説明したが、本発明は上記した実施形態になんら制限されることなく、本発明の主旨を逸脱しない範囲において、種々変形して実施することが可能である。
【００５１】
本実施形態では、図９〜図１１に示すように、旧リプログにしたがって、アプリの一部を消去した後に、アプリの書き込まれていたデータ領域に仮リプログを書き込む。そして、図１２及び図１３に示すように、仮リプログにしたがって、旧リプログを消去した後に、旧リプログが書き込まれていたデータ領域に新リプログを書き込む。最後に、図１４及び図１５に示すように、新リプログにしたがって、仮リプログを消去した後に、仮リプログが書き込まれていた領域にアプリの一部を再度書き込む例を示した。しかしながら、リプログの書換処理としては、上記例に限定されない。例えば、図１６〜図２４に示すように、旧リプログにしたがって、アプリの全てを消去した後、アプリの書き込まれていたデータ領域に新リプログを書き込み、新リプログにしたがって、旧リプログを消去した後、旧リプログとアプリが書き込まれていたデータ領域にアプリを再度書き込む処理を行っても良い。この処理は、以下に示す点が本実施形態とは異なる。すなわち、ステップＳ４０〜Ｓ１２０が省略され、ステップＳ３０では全てのアプリを消去し、ステップＳ２１０では旧リプログを消去し、ステップＳ２３０〜Ｓ２７０では全てのアプリを不揮発性メモリ５０に書き込む処理が行われる。
【００５２】
この変形例の場合、本実施形態で示した書換処理と比べて、仮リプログの書き込み、及び、仮リプログの消去が省略される。そのため、本実施形態で示した書換処理と比べて、処理工程数が削減される。更に言えば、アプリの全てを書き換えることになるので、リプログの書き換えとともに、新たにアプリを書き換えることもできる。
【００５３】
しかしながら、変形例の書換処理の場合、全てのアプリを消去した後に全てを再度書き込むので、書換処理にかかる時間が、アプリのデータサイズに依存する。これに対して、本実施形態では、アプリの一部（仮リプログを書き込むためのデータ分）を消去した後にその消去した一部を再度書き込みする。そのため、上記した変形例とは異なり、本実施形態に記載の書換処理にかかる時間は、アプリのデータサイズに依存しない。
【００５４】
更に言えば、実施形態の始めのほうで記したように、アプリとリプログのデータ比は１０：１になっている。そのため、変形例の書換処理の場合、仮リプログの書き込み、及び、仮リプログの消去が省略されるとは言え、アプリの消去と書き込みに時間が余分にかかることになる。そのため、本実施形態で示した書換処理の方が、書換処理にかかる時間が短縮される。
【符号の説明】
【００５５】
３０・・・揮発性メモリ
５０・・・不揮発性メモリ
７０・・・ＣＰＵ
１００・・・電子制御装置
【図１】
2014002478.tif 000003
【図２】
2014002478.tif 000004
【図３】
2014002478.tif 000005
【図４】
2014002478.tif 000006
【図５】
2014002478.tif 000007
【図６】
2014002478.tif 000008
【図７】
2014002478.tif 000009
【図８】
2014002478.tif 000010
【図９】
2014002478.tif 000011
【図１０】
2014002478.tif 000012
【図１１】
2014002478.tif 000013
【図１２】
2014002478.tif 000014
【図１３】
2014002478.tif 000015
【図１４】
2014002478.tif 000016
【図１５】
2014002478.tif 000017
【図１６】
2014002478.tif 000018
【図１７】
2014002478.tif 000019
【図１８】
2014002478.tif 000020
【図１９】
2014002478.tif 000021
【図２０】
2014002478.tif 000022
【図２１】
2014002478.tif 000023
【図２２】
2014002478.tif 000024
【図２３】
2014002478.tif 000025
【図２４】
2014002478.tif 000026