(57)【特許請求の範囲】
【請求項１】
車両に搭載された電子制御装置（１０）であって、
不揮発性メモリ（５０）における予め定められた大きさの再書込領域のデータを読み出して、該読み出したデータを再び前記不揮発性メモリへ書き込む、再書込を行う再書込手段（Ｓ１２５）と、
前記不揮発性メモリにおいて再書込の開始位置を判定するための物理アドレスである開始判定物理アドレスを、前記不揮発性メモリにおいて物理アドレスを特定可能な領域である管理情報領域から読み出すアドレス読出手段（Ｓ１１０）と、
前記再書込手段による再書込の終了後（Ｓ１４０；ＹＥＳ、Ｓ１４５；ＹＥＳ）に、次回の再書込の開始位置を判定するための物理アドレスを前記開始判定物理アドレスとして前記管理情報領域に書き込むアドレス書込手段（Ｓ１７０、Ｓ１５５）と、
を備え、
前記再書込手段は、前記再書込領域を複数に分割した領域である分割領域ごとに再書込を行い、
前記アドレス書込手段（Ｓ１５５）は、前記再書込手段が１又は複数の前記分割領域の再書込を終了するごと（Ｓ１４５；ＹＥＳ）に、前記開始判定アドレスの書き込みを行う
ことを特徴とする電子制御装置。
【請求項２】
請求項１に記載の電子制御装置であって、
前記アドレス書込手段は、前記管理情報領域に含まれる領域であって、前記アドレス読出手段によって開始判定物理アドレスが読み出された領域と同じ領域に、前記開始判定物理アドレスの書き込みを行う
ことを特徴とする電子制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不揮発性メモリを備えた電子制御装置に関する。
【背景技術】
【０００２】
フラッシュメモリやＥＥＰＲＯＭ等の不揮発性メモリには、データが書き込まれてからデータを保持することのできる保持期間があり、データ書き込み後、保持期間が経過すると、データの保持能力（所謂リテンション）が低下して、データ化けが生じることがある。このため、不揮発性メモリを備えた装置においては、不揮発性メモリへのデータの書き込みが行われた後、不揮発性メモリに対してデータの再書き込みを実行する技術が知られている。
【０００３】
例えば、特許文献１では、不揮発性メモリへのデータの再書き込みを実行する際に、再書き込みを実行すべき領域を論理アドレスに基づいて指定する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１５１９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に開示の従来技術では、再書き込みを実行すべき領域を論理アドレスに基づいて指定するため、論理アドレスと物理アドレスとを対応づける構成が必要となる。つまり、従来技術では、再書き込みを実行する毎に論理アドレスに対応する物理アドレスを特定して、該物理アドレスに基づいてデータの再書き込みを実行する必要があるため、構成が煩雑になるという問題があった。
【０００６】
本発明は、簡単な構成で不揮発性メモリに対するデータの再書き込みを行うための技術を提供することを目的としている。
【課題を解決するための手段】
【０００７】
本発明の一側面は、車両に搭載された電子制御装置であって、再書込手段と、アドレス読出手段と、を備える。再書込手段は、不揮発性メモリにおける予め定められた大きさの再書込領域のデータを読み出して、該読み出したデータを再び不揮発性メモリへ書き込む、再書込を行う。アドレス読出手段は、不揮発性メモリにおいて再書込の開始位置を判定するための物理アドレスである開始判定物理アドレスを、不揮発性メモリにおいて物理アドレスを特定可能な領域である管理情報領域から読み出す。アドレス書込手段は、再書込手段による再書込の終了後に、次回の再書込の開始位置を判定するための物理アドレスを開始判定物理アドレスとして管理情報領域に書き込む。
【０００８】
このような構成によれば、次回の再書込の開始位置は物理アドレスに基づいて特定される。また、この次回の再書込の開始位置を特定するための開始判定物理アドレスは、不揮発性メモリにおいて物理アドレスを特定可能な領域である管理情報領域に読み書きされる。つまり、本発明では、データの再書き込みを実行する際に、論理アドレスを物理アドレスに対応づける構成を備える必要が無い。このため、本発明では、論理アドレスを物理アドレスに対応づける構成を備える必要が有る上記従来技術よりも、簡単な構成で、不揮発性メモリに対するデータの再書き込みを行うことができる。
【０００９】
なお、特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本発明の技術的範囲を限定するものではない。
【図面の簡単な説明】
【００１０】
【図１】車両制御装置及び車両制御部の構成を示すブロック図。
【図２】不揮発性メモリの記録領域について説明する図。
【図３】（ａ）はオペレーティングシステム上でアプリケーション処理を実行する際の不揮発性メモリへのデータの書き込みについて、一般的な例を説明する図であり、（ｂ）はペレーティングシステム上でアプリケーション処理を実行する際の不揮発性メモリへのデータの書き込みについて、他の例を説明する図。
【図４】リテンション処理のフローチャート。
【図５】リテンション処理における開始判定アドレスが書き込まれるタイミングを説明する図。
【図６】本実施形態のリテンション処理による不揮発性メモリへのデータの書き込みについて、ファイルシステムを介さないことを説明する図。
【発明を実施するための形態】
【００１１】
以下、本発明が適用された実施形態について、図面を用いて説明する。
［１．構成］
図１に一例として示す車両制御装置１は、車両に搭載されて所定の制御対象を制御するのに用いられるものであり、車両制御部１０と、入力部２０と、制御対象部３０とを備える。車両制御装置１は、入力部２０からのユーザによる入力に基づいて、制御対象部３０における制御対象の制御を行う。
【００１２】
入力部２０は、例えばタッチパネルディスプレイや各種スイッチのような、車両の乗員（以下、ユーザという）からの入力を受け付け、ユーザからの入力に応じた入力信号を車両制御部１０へ出力する。
【００１３】
車両制御部１０は、詳細は後述するが、所謂マイクロコンピュータ（以下、マイコンという）４０を備える電子制御装置であり、入力信号に基づいて制御対象部３０を制御するための制御信号を出力する。
【００１４】
制御対象部３０は、一例として挙げるナビゲーション部３１やオーディオ部３２等の制御対象、またはこれらの制御対象を制御するための電子制御装置等を備え、車両制御部１０からの制御信号に基づいてこれらの制御対象の制御を行う。
【００１５】
ここで、ナビゲーション部３１は、例えば、目的地までの道筋の案内を行ったり地図を表示したりするようなナビゲーション装置である。また、オーディオ部３２は、例えば、ＣＤやＤＶＤ等の外部メディアやＡＵＸ端子を介して接続された音楽プレーヤ等に記録された、音楽及び映像の再生や録画等を行うオーディオ装置である。このように、一例として示す車両制御装置１は、入力部２０からのユーザによる入力に基づいて、音楽や映像の再生及び表示等を行うための装置である。なお、車両制御装置１及びその構成は一例であり、車両制御装置１は、後述するように、車両における種々の制御を行う装置であってよい。
【００１６】
次に、車両制御部１０の構成について説明する。車両制御部１０は、ＣＰＵ４１、ＲＡＭ４２等を有するマイコン４０と、不揮発性メモリ５０とを少なくとも備える。なお、車両制御部１０には、イグニションスイッチのオン状態及びオフ状態を表すイグニション信号が、図示しないエンジンＥＣＵから入力されるようになっている。一例として本実施形態では、イグニションスイッチのオン状態、及びオフ状態によらず、マイコン４０に常時電源が供給されるようになっている。
【００１７】
不揮発性メモリ５０は、マイコン４０が車両の制御に用いるプログラム等を保存するためのものである。不揮発性メモリ５０としては、本実施形態ではＳＤカードが用いられる。不揮発性メモリ５０としては、この他に、ＥＥＰＲＯＭやフラッシュメモリ等が用いられてもよい。
【００１８】
ＣＰＵ４１は、不揮発性メモリ５０に保存されたプログラムに基づいて、各種機能を実現するための処理を実行する。例えば、ＣＰＵ４１は、ナビゲーション部３１及びオーディオ部３２のような制御対象部３０における制御対象を入力信号に応じて制御するための制御信号を出力する処理を実行する。また、ＣＰＵ４１は、不揮発性メモリ５０に対するデータの読み出しや書き込みを行う処理を実行する。
【００１９】
ところで、前述のように、不揮発性メモリ５０においては、該不揮発性メモリ５０へのデータ書き込み後、時間の経過とともに徐々にデータの保持能力が低下し、保持能力がある水準よりも低下すると、データの読み出しが正常に行えなくなり、データ化けが生じるおそれがある。具体的には、不揮発性メモリ５０において、データの書き込み時にセルに注入された電荷が経年により電荷抜けをおこすため、結果としてデータ化けが生じるおそれがある。
【００２０】
ただし、データの再書き込みを行うことで、具体的にはセルへの電荷の再注入を行うことで、データの保持能力を書き込み直後のデータ化けのおそれがない水準に戻すことが可能である。
【００２１】
そこで、ＣＰＵ４１は、不揮発性メモリ５０に書き込まれているデータの再書き込みを行う処理であるリテンション処理を実行する。リテンション処理の詳細は後述する。
ここで、不揮発性メモリ５０の記憶領域の構成について説明する。不揮発性メモリ５０は、周知のように物理的記憶領域である物理ブロックを複数備え、各物理ブロックは物理アドレスによって特定される。物理アドレスは、物理ブロック毎に割り当てられた固有のアドレスである。
【００２２】
不揮発性メモリ５０は、図２に示すように、管理情報領域５１とデータ領域５２とに分けられる。
ここで、管理情報領域５１とは、所謂マスターブートレコード(Master Boot Record;MBR)等を含む領域であり、当該不揮発性メモリ５０の起動ソフトウェアやパーティションに関する情報等を格納する領域である。管理情報領域５１は、不揮発性メモリ５０において、例えば「０」で表される物理アドレスによって特定される先頭の物理ブロックから予め定められたブロック数までの領域に定められている。言い換えれば、管理情報領域５１は、物理アドレスによって対応する物理ブロックを特定することが可能な領域であると言える。
【００２３】
この管理情報領域５１には、起動ソフトウェアやパーティションに関する情報等が格納されていない空き領域が存在する。以下では、このような管理情報領域５１における空き領域を未使用領域５１１という。未使用領域５１１も、物理アドレスによって対応する物理ブロックを特定することが可能な領域であると言える。
【００２４】
一方、データ領域５２とは、前述のＣＰＵ４１が実行するプログラムを表すデータ等が格納される領域であり、不揮発性メモリ５０における全ての物理ブロックから管理情報領域５１を除いた残りの領域をいう。
【００２５】
データ領域５２は、ＣＰＵ４１による不揮発性メモリ５０に対するデータの読み出し及び書き込みの際、ＣＰＵ４１によって指定された論理アドレスに基づいて、データの読み出し及び書き込みが行われる領域である。
【００２６】
周知のように、マイコン４０（ＣＰＵ４１）が実行する種々のアプリケーション処理を実行するためのアプリケーションプログラムはオペレーションシステム（ＯＳ）上で作動し、複数のアプリケーションプログラムが同時にＯＳ（マルチタスクＯＳ）上で作動可能となっている。
【００２７】
複数のアプリケーションプログラムが同時に作動する場合、これら複数のアプリケーションプログラムが物理アドレスに基づいて不揮発性メモリ５０へのデータの読み出し及び書き込みを実行することは現実的ではない。このため、アプリケーションプログラムが起動すると、該アプリケーションプログラムと対になるように仮想のメモリ空間である所謂仮想アドレス空間がＯＳによって割り当てられるようになっている。
【００２８】
論理アドレスとは、該仮想アドレス空間におけるアドレスである。マイコン４０（ＣＰＵ４１）は、各アプリケーションプログラムを実行する際、割り当てられた仮想アドレス空間におけるアドレスである論理アドレスに基づいてデータの読み出し及び書き込みを行う。該論理アドレスは物理アドレスに変換され、変換された物理アドレスに基づいて、実際の不揮発性メモリ５０へのデータの読み出し及び書き込みが行われる。
【００２９】
つまり、論理アドレスは実際の不揮発性メモリ５０における物理ブロックそのものを表す物理アドレスとは異なるものであり、不揮発性メモリ５０におけるデータ領域５２へのデータの読み出し及び書き込みを実行するためには、アプリケーションプログラムにて指定された論理アドレスを物理アドレスに対応付けるための処理（構成）が必要となる。
【００３０】
なお、一般に、ＯＳ上においてマイコン（ＣＰＵ）によるアプリケーションプログラムを実行する場合、マイコン（ＣＰＵ）から不揮発性メモリにおけるデータ領域へのアクセス（データの読み出しや書き込み）は、一例として図３（ａ）に示すように行われる。つまり、アプリケーションプログラムにて例えばデータを書き込むべきファイルが指定されると、オペレーティングシステムにおけるファイルシスムを経由し、ドライバを経由して、不揮発性メモリへの書き込みが行われることが周知である。
【００３１】
ただし、マイコン（ＣＰＵ）は、図３（ｂ）に示すように、後述するリテンション処理を実行するプログラムにてデータの再書き込みを行う場合のように、アプリケーションプログラムにてデータを書き込むべき物理アドレスを指定し、不揮発性メモリにデータを書き込むことも可能である。この場合、ファイルシステムを介さず、ドライバのみを経由して不揮発性メモリにデータが書き込まれる。
【００３２】
しかしながら、マイコン（ＣＰＵ）が、アプリケーションプログラムにおいて、ファイルシステムを介した間接的なドライバへの出力に基づく不揮発性メモリへの書き込みと、ファイルシステムを介さない直接的なドライバへの出力に基づく不揮発性メモリへの書き込みの両方を実行するような場合、ドライバへの直接的な出力と間接的な出力とが同じタイミングで行われてしまう状況（以下、衝突状況という）が生じ得る。衝突状況では、ドライバによって、指定された物理アドレスとは異なる物理アドレスに書き込むべきデータとは異なるデータが書き込まれるおそれのあることが周知である。
【００３３】
つまり、マイコン（ＣＰＵ）によるアプリケーションプログラムでは、不揮発性メモリへのデータの書き込みを行う方式として、ファイルシステムを介する間接的なドライバへの出力に基づく書き込み、または、ファイルシステムを介さない直接的なドライバへの出力に基づく書き込みの、いずれか一方が実行されることが望ましい。
【００３４】
そこで、本実施形態では、後述するリテンション処理を実行するプログラムにおいて、上述の書き込み方式の一方である、ファイルシステムを介さない直接的なドライバへの出力に基づく不揮発性メモリ５０への書き込みを、実行する。
【００３５】
［２．処理］
次に、マイコン４０（ＣＰＵ４１）が実行するリテンション処理について、図４のフローチャートを用いて説明する。リテンション処理は、前述のように、不揮発性メモリ５０におけるデータの再書き込みを行う処理である。ここでいうデータの再書き込みとは、不揮発性メモリ５０における予め定められた物理ブロックのデータを読み出して、該読み出したデータと同一のデータを、再び不揮発性メモリ５０の読み出し元の物理ブロックに書き込むことをいう。
【００３６】
本リテンション処理は、イグニションスイッチがオフされるごとに、該イグニションスイッチがオフされることをきっかけとしてＣＰＵ４１が実行する他のアプリケーション処理が全て終了したことをきっかけとして、実行される。
【００３７】
本リテンション処理は、一例として図５に示すように、不揮発性メモリ５０の全容量Ｔ（ＭＢ）のうち、全容量Ｔ（ＭＢ）を分割した予め定められた容量である再書込処理量Ｃ（ＭＢ）分だけ、データの再書き込みを行う（Ｔ＞Ｃ）。つまり、本リテンション処理は、不揮発性メモリ５０に対して、先頭から物理アドレスの順番に従って、イグニションスイッチがオフされるごとに再書込処理量Ｃ（ＭＢ）分のデータの再書き込みを順次行っていくものである。なお、以下の説明において文中に主語が省略されている場合は、ＣＰＵ４１を主語とする。
【００３８】
はじめに、図４に示すように、Ｓ１１０では、開始判定アドレスを取得する。開始判定アドレスとは、本リテンション処理によるデータの再書き込みを開始すべき、不揮発性メモリ５０における物理アドレスである。開始判定アドレスは、後述するように、本リテンション処理によって、不揮発性メモリ５０における未使用領域５１１の予め定められた物理アドレスに対応する物理ブロックに書き込まれている。以下では、開始判定アドレスが書き込まれる物理ブロックを開始判定用ブロックという。
【００３９】
Ｓ１１５では、初期化処理を行う。初期化処理では、本リテンション処理で用いる変数である全体処理量Ｚ及び部分処理量Ｐの初期化を行う、つまり、値として０（単位をＭＢとする）を代入する。全体処理量Ｚ（ＭＢ）は、本リテンション処理によってデータが再書き込みされた処理量（以下、本リテンション処理によるデータの再書込量（ＭＢ）という）が前述の再書込処理量Ｃ（ＭＢ）に達したか否かを判断するために用いる変数である。部分処理量Ｐ（ＭＢ）は、本リテンション処理によるデータの再書込量（ＭＢ）が、再書込処理量Ｃ（ＭＢ）よりも小さい予め定められた情報書込処理量Ｂ（ＭＢ）に達したか否かを判断するために用いる変数である（Ｃ＞Ｂ）。
【００４０】
Ｓ１２０では、不揮発性メモリ５０から、単位処理量Ａ（ＭＢ）分のデータを、ＲＡＭ４２に読み出す。単位処理量Ａ（ＭＢ）は、情報書込処理量Ｂ（ＭＢ）よりも小さく設定されている（Ｂ＞Ａ）。なお、本リテンション処理にて初めて本ステップが実行される場合は、不揮発性メモリ５０における物理ブロックであって、Ｓ１１０にて読み出された開始判定アドレスに対応する物理ブロックを読み出しの始点とする。
【００４１】
Ｓ１２５では、Ｓ１２０にて読み出したデータと同一のデータについて、不揮発性メモリ５０の読み出し元の物理ブロックへの書き込みを行う。
Ｓ１３０では、部分処理量Ｐ（ＭＢ）に単位処理量Ａ（ＭＢ）を加算した値を新たな部分処理量Ｐ（ＭＢ）として、ＲＡＭ４２に記録する。
【００４２】
Ｓ１３５では、全体処理量Ｚ（ＭＢ）に単位処理量Ａ（ＭＢ）を加算した値を新たな全体処理量Ｚ（ＭＢ）として、ＲＡＭ４２に記録する。
Ｓ１４０では、本リテンション処理によるデータの再書込量（ＭＢ）が再書込処理量Ｃ（ＭＢ）に達したか否かを判断する。具体的には、全体処理量Ｚ（ＭＢ）が再書込処理量Ｃ（ＭＢ）よりも大である場合（Ｚ＞Ｃ）に、再書込処理量Ｃ（ＭＢ）に達したと判断する。再書込処理量Ｃに達したと判断された場合は処理をＳ１６５へ移行させ、再書込処理量Ｃに達していないと判断された場合は処理をＳ１４５へ移行させる。
【００４３】
ここで、本リテンション処理によるデータの再書込量が再書込処理量Ｃに達していないと判断された場合に移行するＳ１４５では、本リテンション処理によるデータの再書込量（ＭＢ）が情報書込処理量Ｂ（ＭＢ）に達したか否かを判断する（Ｃ＞Ｂ）。具体的には、部分処理量Ｐ（ＭＢ）が情報書込処理量Ｂ（ＭＢ）よりも大である場合（Ｐ＞Ｂ）に、情報書込処理量Ｂ（ＭＢ）に達したと判断する。情報込処理量Ｂに達したと判断された場合は処理をＳ１５０へ移行させ、情報書込処理量Ｂに達していないと判断された場合は処理をＳ１２０へ移行させる。そして、Ｓ１２０〜Ｓ１４０までの一連の処理を繰り返す。
【００４４】
なお、本リテンション処理において、２回目以降に実行されるＳ１２０では、前回に実行されたＳ１２０にて単位処理量Ａ（ＭＢ）のデータの読み出しが完了した不揮発性メモリ５０における物理ブロックの次の物理ブロックから、同様に単位処理量Ａ（ＭＢ）のデータの読み出しを行うものとする。
【００４５】
情報込処理量Ｂに達したと判断された場合に移行するＳ１５０では、不揮発性メモリ５０において本リテンション処理によるデータの再書込が完了した領域の終点の物理ブロックを表す物理アドレスを完了物理アドレスとして特定する。
【００４６】
Ｓ１５５では、Ｓ１５０で特定された完了物理アドレスの次の物理アドレスを開始判定アドレスとして、不揮発性メモリ５０の未使用領域５１１における開始情報用ブロックへ書き込む。なお、本実施例において、完了物理アドレスの次の物理アドレスという場合、完了物理アドレスに１を足したアドレスをいうものとする。
【００４７】
Ｓ１６０では、部分処理量Ｐ（ＭＢ）を初期化し、処理をＳ１２０へ移行させる。そして、Ｓ１２０〜Ｓ１４０までの一連の処理を繰り返す。
一方、本リテンション処理によるデータの再書込量が再書込処理量Ｃに達したと判断された場合に移行するＳ１６５では、不揮発性メモリ５０において本リテンション処理によるデータの再書込が完了した領域の終点の物理ブロックを表す物理アドレスを完了物理アドレスとして特定する。
【００４８】
Ｓ１７０では、Ｓ１６５で特定された完了物理アドレスの次の物理アドレスを開始判定アドレスとして、不揮発性メモリ５０の未使用領域５１１における開始情報用ブロックへ書き込む。そして、本リテンション処理を終了する。
【００４９】
つまり、本リテンション処理では、図５に示すように、一回のリテンション処理の実行によって不揮発性メモリ５０における全容量Ｔ（ＭＢ）のデータについて再書き込みを実行するのではなく、全容量Ｔ（ＭＢ）を複数に分割した容量である再書込処理量Ｃ（ＭＢ）ずつ、データの再書き込みが実行される。そして、再書込処理量Ｃ（ＭＢ）のデータの再書き込みが実行されると、次に本リテンション処理が起動されたときにデータの再書き込みを開始すべき物理アドレスを表す開始判定アドレスが不揮発性メモリ５０の未使用領域５１１に記録される。
【００５０】
さらに、本リテンション処理では、再書込処理量Ｃ（ＭＢ）を複数に分割した容量である情報書込処理量Ｂ（ＭＢ）のデータの再書き込みが実行される毎に、次にデータの再書き込みを開始すべき物理アドレスを表す開始判定アドレスが不揮発性メモリ５０の未使用領域５１１に記録されるようになっている。
【００５１】
［３．効果］
以上詳述した第１実施形態によれば、以下の効果が得られる。
［３Ａ］マイコン４０は、リテンション処理にて、開始判定アドレスを、物理アドレスに基づいて特定する。また、この開始判定アドレスは、物理アドレスに基づいて物理ブロックを特定可能な領域、具体的には不揮発性メモリ５０における管理情報領域５１の未使用領域５１１に書き込まれる。つまり、本実施形態では、従来技術のように、データの再書き込みを実行する毎に、論理アドレスを物理アドレスに対応づける構成を必要としない。したがって、簡単な構成で不揮発性メモリ５０に対するデータの再書き込みを行うことができる。
【００５２】
［３Ｂ］マイコン４０は、リテンション処理にて、管理情報領域５１（未使用領域５１１）に含まれる領域であって開始判定物理アドレスが読み出された領域と同じ領域（前述の開始情報用ブロック）に、開始判定物理アドレスの書き込みを行う。これによれば、再書込を開始する際は未使用領域５１１における該開始情報用ブロックに対する読み出しを行うことで常に開始判定アドレスを取得できるため、未使用領域５１１における異なる領域に開始判定アドレスの書き込みを行う場合よりも処理を簡素化することができる。
【００５３】
［３Ｃ］マイコン４０は、リテンション処理にて、再書込処理量Ｃ（ＭＢ）を複数に分割した領域である情報書込処理量Ｂ（分割領域）ごとに再書込を行い、１又は複数の情報書込処理量Ｂ（ＭＢ）の再書込を終了するごと（Ｓ１４５；ＹＥＳ）に、開始判定アドレスの書き込みを行う（Ｓ１５５）。つまり、再書込処理量Ｃよりも小さい容量である情報書込処理量Ｂごとに開始判定物理アドレスが記録される。
【００５４】
このため、仮に、リテンション処理の最中にバッテリ上がり等の原因によって該リテンション処理が中断された場合でも、次回のリテンション処理を実行する際は、直近に記録された開始判定物理アドレスに基づいて該リテンション処理を再開させることができる。従って、リテンション処理が中断された場合でも、該リテンション処理が開始されたときの開始判定物理アドレスから再書込を再開しなくてもよいため、効率よく不揮発性メモリ５０への再書込を進めることができる。
【００５５】
［３Ｄ］ところで、マイコン４０における各種アプリケーションプログラムは、前述のようにＯＳ上にて実行されるように構成されてよい。このような場合、マイコン４０は、図６に示すように、リテンション処理を実行するプログラムにて、物理アドレスを指定して、不揮発性メモリ５０へのデータの再書き込み、及び、開始情報アドレスの書き込みを行うように構成されてよい。これによれば、ＯＳ上でリテンション処理を実行する際、不揮発性メモリ５０へのデータの再書き込み時及び開始情報アドレスの書き込み時における前述の衝突状況の発生が抑制される。つまり、ＯＳ上でリテンション処理を実行する際、データ化けしたデータが不揮発性メモリ５０に記録されることを抑制することができる。
【００５６】
なお、第１実施形態では、車両制御部１０が電子制御装置の一例に相当する。また、Ｓ１２５が再書込手段としての処理の一例に相当し、Ｓ１１０がアドレス読出手段としての処理の一例に相当し、Ｓ１７０、Ｓ１５５がアドレス書込手段としての処理の一例に相当する。また、再書込処理量Ｃが再書込領域の一例に相当し、情報書込処理量Ｂが分割領域の一例に相当する。
【００５７】
［４．他の実施形態］
以上、本発明の実施形態について説明したが、本発明は、上記実施形態に限定されることなく、種々の形態を採り得ることは言うまでもない。
【００５８】
［４Ａ］上記実施形態では、１回のリテンション処理において、再書込処理量Ｃ（ＭＢ）を複数に分割した情報書込処理量Ｂ（ＭＢ）の再書込を終了するごと（Ｓ１４５；ＹＥＳ）に、開始判定アドレスの書き込みを行っていた（Ｓ１５５）が、リテンション処理にて開始判定アドレスを書き込むタイミングはこれに限るものではない。
【００５９】
例えば、リテンション処理は、不揮発性メモリ５０における全容量Ｔ（ＭＢ）を複数に分割した再書込処理量Ｃ（ＭＢ）についてのデータの再書き込みを実行し、且つ、１又は複数の該再書込処理量Ｃ（ＭＢ）の書き込みを終了すると開始判定アドレスを書き込むものであってもよい。この場合、全容量Ｔ（ＭＢ）が再書込領域の一例に相当し、再書込処理量Ｃ（ＭＢ）が分割領域に相当する。
【００６０】
また例えば、リテンション処理は、再書込処理量Ｃ（ＭＢ）を複数に分割した単位処理量Ａ（ＭＢ）についてのデータの再書き込みを実行し、且つ、１又は複数の該単位処理量Ａ（ＭＢ）の書き込みを終了すると開始判定アドレスを書き込むものであってもよい。この場合、再書込処理量Ｃ（ＭＢ）が再書込領域の一例に相当し、単位処理量Ａ（ＭＢ）が分割領域に相当する。
【００６１】
［４Ｂ］上記実施形態では、リテンション処理では、不揮発性メモリ５０における全容量Ｔ（ＭＢ）、再書込処理量Ｃ（ＭＢ）、情報書込処理量Ｂ（ＭＢ）、及び単位処理量Ａ（ＭＢ）を、容量（ＭＢ）に基づいて表していたが、これに限るものではなく、物理ブロックのブロック数で表すようにしてもよい。
【００６２】
［４Ｃ］上記実施形態では、リテンション処理にて、開始判定物理アドレスが読み出された領域と同じ領域である開始情報用ブロックに開始判定物理アドレスの書き込みを行っていたが、これに限らず、管理情報領域５１（未使用領域５１１）に含まれる領域であって開始判定アドレスが読み出された領域と異なる領域に開始判定物理アドレスの書き込みを行っても良い。この場合、例えば、未使用領域５１１のうちのどの物理アドレスで表される物理ブロックに次回の開始判定アドレスが書き込まれたか表す情報が未使用領域５１１に別途記録されていればよい。
【００６３】
［４Ｄ］上記実施形態では、車両制御装置１は、入力部２０からのユーザによる入力に基づいて、音楽や映像の再生及び表示等を行うための装置であったが、車両制御装置１の構成はこれに限るものではない。例えば、車両制御装置１は、車両や人等の対象物を検出するカメラや、レーザレーダや、車速を検出する車速センサ等のような、車両の状態を検出する各種検出装置を有する検出部を備えていてもよい。
【００６４】
また、制御対象部３０は、これらの検出部が検出した対象物や検出結果に従って、例えば、車両におけるボディ系、パワートレイン系、シャーシ系の制御対象の挙動を制御する複数の装置を備えるものであってよい。その制御対象には、操舵装置（電動パワーステアリング等）、スピーカ、ディスプレイ、制動装置（ブレーキ等）、駆動装置（アクセル等）、灯火類が含まれるものであってよい。制御対象部３０を構成する各装置は、車両の走行状態に応じて制御対象の挙動を制御するものであってよい。
【００６５】
また制御対象部３０を構成する各装置は、車両制御部１０からの指令によって制御対象の挙動を制御することにより、車両の運行支援等の種々の車両制御を実行するものであってよい。
【００６６】
［４Ｅ］上記実施形態では、車両制御部１０は、イグニションスイッチのオン状態、及びオフ状態によらず、常時マイコン４０に電源が供給される構成であった。これに限らず、車両制御部１０は、イグニションスイッチがオン状態のときに、マイコン４０への電源供給が行われ、イグニションスイッチがオフ状態のときに、マイコン４０からのオフ指令に従いマイコン４０への電源供給を停止するような電源回路を備えていてもよい。なお、この場合、車両制御部１０は、リテンション処理が終了した後にオフ指令を電源回路に出力する構成を備えるとよい。
【００６７】
［４Ｆ］上記実施形態における１つの構成要素が有する機能を複数の構成要素として分散させたり、複数の構成要素が有する機能を１つの構成要素に統合したりしてもよい。また、上記実施形態の構成の少なくとも一部を、同様の機能を有する公知の構成に置き換えてもよい。また、上記実施形態の構成の一部を、課題を解決できる限りにおいて省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加、置換等してもよい。なお、特許請求の範囲に記載の文言から特定される技術思想に含まれるあらゆる態様が本発明の実施形態である。
【００６８】
［４Ｇ］本発明は、前述した車両制御装置１、車両制御部１０の他、車両制御部１０を機能させるためのプログラム、このプログラムを記録した媒体、車両制御方法など、種々の形態で実現することができる。
【符号の説明】
【００６９】
１…車両制御装置  １０…車両制御部  ４０…マイコン  ４１…ＣＰＵ  ５０…不揮発性メモリ。
【図１】
0006409684.tif 000002
【図２】
0006409684.tif 000003
【図３】
0006409684.tif 000004
【図４】
0006409684.tif 000005
【図５】
0006409684.tif 000006
【図６】
0006409684.tif 000007