説明

マイクロコンピュータ制御装置

【課題】ターゲットシステムを制御するプログラムの書き換え処理が中断しても、ターゲットシステムを制御することができるマイクロコンピュータ制御装置を提供する。
【解決手段】同一のターゲットシステム制御プログラムをそれぞれ保持する複数の領域を保持する第1保持部と、前記ターゲットシステム制御プログラムの書き換えプログラムを実行することで、前記複数の領域のうち、一つの領域に保持されている前記ターゲットシステム制御プログラムの書き換え処理を実行する書き換え処理部と、前記一つの領域に保持されている前記ターゲットシステム制御プログラムの前記書き換え処理の状態を示す情報を保持する第2保持部と、を有し、前記第2保持部が保持する情報を参照し、前記1つの領域以外の前記複数の領域のうち、一つの領域に保持されているターゲットシステム制御プログラムを前記第1保持部から読み出して実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、不揮発性メモリをプログラムの記録媒体として使用するマイクロコンピュータ制御装置に関し、特に車載用途等における不揮発性メモリ書き換え処理中の通信路遮断や電源遮断に対して安全性が要求されるマイクロコンピュータ制御装置に関する。
【背景技術】
【0002】
特許文献1に記載のエンジンコントローラ12のCPU122は、不揮発性メモリ内のプログラムの書き換え処理時の書き換えエラーに備えて、複数の書き換え情報受信処理プログラム(以下、ダウンロードプログラムと称す)を不揮発性メモリに保持している。そして、CPU122は、プログラムの整合性判断を実行し、CPU122が実行可能なダウンロードプログラムを選択する。
【0003】
図3は、上述のようなプログラムの書き換え処理時の書き換えエラーに対する処理を実行するマイクロコンピュータ制御装置の概略構成を示したブロック図である。図3を参照し、マイクロコンピュータ制御装置の構成を説明する。
【0004】
不揮発性メモリ301は、1つのターゲットシステム制御プログラム格納領域303と、第1のダウンロードプログラム格納領域305と、第2のダウンロードプログラム格納領域307と、ダウンロードプログラム判別情報格納領域309とを備える。
ターゲットシステム制御プログラム格納領域303には、ターゲットシステム制御プログラムが保持されている。第1のダウンロードプログラム格納領域305及び第2のダウンロードプログラム格納領域307には、ダウンロードプログラムが保持されている。ダウンロードプログラム判別情報格納領域309には、マイクロコンピュータ311から送られた不揮発性メモリ内のダウンロードプログラムの書き換え状態を示す情報が保持される。
【0005】
マイクロコンピュータ311は、ダウンロードプログラム判別処理部313と、シリアルインターフェース315とを備える。
ダウンロードプログラム判別処理部313は、外部から入力されるダウンロードプログラム判別情報312に基づき、不揮発性メモリ301内の第1のダウンロードプログラム格納領域305、又は第2のダウンロードプログラム格納領域307に保持されているダウンロードプログラムを読み出して実行する。
シリアルインターフェース315は、不揮発性メモリ301内に保持されているプログラムを書き換えるための書き換えプログラム314を受信する。
DRAM317は、書き換えプログラム314を保持する。
【0006】
次に、図3を参照し、マイクロコンピュータ制御装置の動作例を説明する。
マイクロコンピュータ311は、ダウンロードプログラム判別情報格納領域309に保持されている情報、又はダウンロードプログラム判別情報312に基づき、第1のダウンロードプログラム格納領域305及び第2のダウンロードプログラム格納領域304のうち、いずれか一方に保持されているダウンロードプログラムを読み出して実行する。
【0007】
また、マイクロコンピュータ311は、シリアルインターフェース315を介して受信した書き換えプログラム314を、DRAM317に一時的に保持する。そして、マイクロコンピュータ311がDRAM317に保持された書き換えプログラム314を実行することで、マイクロコンピュータ311は、第1のダウンロードプログラム格納領域305及び第2のダウンロードプログラム格納領域304のうち、いずれか一方の領域に保持されているダウンロードプログラムを書き換える。
この時、マイクロコンピュータ311は、ダウンロードプログラム判別情報格納領域309に、「不揮発性メモリ301書き換え中」を示す情報を書き込む。
【0008】
そして、マイクロコンピュータ311は、ダウンロードプログラムの書き換え処理を完了すると、ダウンロードプログラム判別情報格納領域309に、「不揮発性メモリ301書き換え完了」を示す情報を書き込む。
【0009】
仮に、不揮発性メモリ301の書き換え処理に電源が遮断されて、マイクロコンピュータ311が書き換え処理を完了できなくても、マイクロコンピュータ311は、ダウンロードプログラム判別情報格納領域309に書き込まれた書き換え状態を示す情報を参照することで、正常なダウンロードプログラムを選択することができる。
【0010】
【特許文献1】特開2004−348534号公報(図2)
【発明の開示】
【発明が解決しようとする課題】
【0011】
しかし、上述のマイクロコンピュータ制御装置において、不揮発性メモリ301は、ダウンロードプログラムを2つの領域に保持できるが、ターゲットシステム制御プログラムを1つの領域でしか保持できない。ここで、例えば、マイクロコンピュータ311が、不揮発性メモリ301内のターゲットシステム制御プログラムの書き換え処理を実行している時に電源が遮断されると、ターゲットシステム制御プログラムの書き換え処理が途中で終了する。その結果、電源が回復後、マイクロコンピュータ311は、不揮発性メモリ301に保持されている不完全なターゲットシステム制御プログラムを実行することになるため、ターゲットシステムが正常に動作しなくなる。
また、上述のマイクロコンピュータ制御装置において、マイクロコンピュータ311は、書き換えプログラム314を受信するために、シリアルインターフェース315を用いる。そのため、書き換えプログラム314のデータ量が大きくなると、シリアルインターフェース315で書き換えプログラムを受信するのに要する時間が著しく増加する。
【0012】
本発明の目的は、ターゲットシステムを制御するプログラムの書き換え処理が中断しても、ターゲットシステムを制御することができるマイクロコンピュータ制御装置を提供することである。
【課題を解決するための手段】
【0013】
本発明は、同一のターゲットシステム制御プログラムをそれぞれ保持する複数の領域を保持する第1保持部と、前記ターゲットシステム制御プログラムを実行する実行部と、前記ターゲットシステム制御プログラムの書き換えプログラムを実行することで、前記複数の領域のうち、一つの領域に保持されている前記ターゲットシステム制御プログラムの書き換え処理を実行する書き換え処理部と、前記一つの領域に保持されている前記ターゲットシステム制御プログラムの前期書き換え処理の状態を示す情報を保持する第2保持部と、を有するマイクロコンピュータ制御装置であって、前記実行部は、前記第2保持部が保持する情報を参照し、前記1つの領域以外の前記複数の領域のうち、一つの領域に保持されているターゲットシステム制御プログラムを前記第1保持部から読み出して実行するマイクロコンピュータ制御装置を提供する。
この構成により、本発明のマイクロコンピュータ制御装置は、ターゲットシステム制御プログラムの書き換え処理が正常に完了しなくても、他のターゲットシステム制御プログラムを保持する領域を選択して、正常なターゲットシステム制御プログラムを実行することができる。そのため、マイクロコンピュータ制御装置の信頼性や利便性が向上する。
【0014】
また、上記マイクロコンピュータ制御装置において、前記第2保持部が保持する情報は、前記書き換え処理部が書き換え処理を正常に完了していない状態を示す情報である。
この構成により、本発明のマイクロコンピュータ制御装置では、書き換え処理部がターゲットシステム制御プログラムの書き換え処理が正常に完了しなくても、前記実行部は、前記書き換え状態を示す情報を参照して、正常なターゲットシステム制御プログラムを保持する領域から、ターゲットシステム制御プログラムを読み出して実行することができる。そのため、マイクロコンピュータ制御装置の信頼性や利便性が向上する。
【0015】
また、上記マイクロコンピュータ制御装置は、シリアルインターフェースよりも高速で、前記ターゲットシステム制御プログラムの前記書き換えプログラムを受信可能なインターフェースを、さらに備える。
この構成により、本発明のマイクロコンピュータ制御装置は、書き換えプログラムを受信するのに要する時間を、シリアルインターフェースに比べ、大幅に短縮することができる。そのため、マイクロコンピュータ制御装置の信頼性や利便性が向上する。
【発明の効果】
【0016】
本発明のマイクロコンピュータ制御装置は、ターゲットシステムを制御するプログラムの書き換え処理が中断しても、ターゲットシステムを制御することができる。
【発明を実施するための最良の形態】
【0017】
以下、本発明の実施の形態について、図面を参照して説明する。
【0018】
図1は、本発明の実施の形態に係るマイクロコンピュータ制御装置の概略構成を示したブロック図である。
本発明の実施の形態に係るマイクロコンピュータ制御装置は、不揮発性メモリ101と、マイクロコンピュータ115と、DRAM123とを備える。
【0019】
不揮発性メモリ101は、第1のターゲットシステム制御プログラム格納領域103と、第2のターゲットシステム制御プログラム格納領域105と、ターゲットシステム制御プログラム書き換え情報格納領域107と、第1のダウンロードプログラム格納領域109と、第2のダウンロードプログラム格納領域111と、ダウンロードプログラム書き換え情報格納領域113とを備える。
【0020】
第1のターゲットシステム制御プログラム格納領域103及び第2のターゲットシステム制御プログラム格納領域105は、ターゲットシステム制御プログラムを保持する。
【0021】
第1のダウンロードプログラム格納領域109及び第2のダウンロードプログラム格納領域111は、ダウンロードプログラムを保持する。
【0022】
ターゲットシステム制御プログラム書き換え情報格納領域107は、マイクロコンピュータ115から、不揮発性メモリ101内のターゲットシステム制御プログラムの書き換え状態を示す情報を受け取り、保持する。
【0023】
ダウンロードプログラム書き換え情報格納領域113は、マイクロコンピュータ115から、不揮発性メモリ101内のダウンロードプログラムの書き換え状態を示す情報を受け取り、保持する。
【0024】
マイクロコンピュータ115は、プログラム判別処理部117と、高速インターフェース119と、シリアルインターフェース121と、書き換え処理部125、実行部127とを備える。
【0025】
実行部127は、プログラム判別処理部117を介して外部から受信したプログラム判別情報116に基づき、第1のターゲットシステム制御プログラム格納領域103及び第2のターゲットシステム制御プログラム格納領域105のいずれか一方に保持されているターゲットシステム制御プログラム、又は第1のダウンロードプログラム格納領域109及び第2のダウンロードプログラム格納領域111のいずれか一方に保持されているダウンロードプログラムを選択して、実行する。プログラム判別情報116は、マイクロコンピュータ115が実行するプログラムの種類と、そのプログラムの不揮発性メモリ101内での格納位置とを示す。
【0026】
書き換え処理部125は、DRAM123に一時的に保持される書き換えプログラム118を読み出して、不揮発性メモリ101内に保持されているターゲットシステム制御プログラム又はダウンロードプログラムのいずれかの書き換え処理を実行する。
【0027】
プログラム判別処理部117は、書き換え処理部125がDRAM123に一時的に保持される書き換えプログラム118で、不揮発性メモリ101内に保持されているターゲットシステム制御プログラム及びダウンロードプログラムのうち、いずれのプログラムの書き換え処理を実行するか、を判別する。判別のタイミングは、例えば、マイクロコンピュータ115が、後述するインターフェースを介して書き換えプログラム118を受信した時である。
そして、プログラム判別処理部117は、その判別結果に基づき、不揮発性メモリ101内のターゲットシステム制御プログラム書き換え情報格納領域107及びダウンロードプログラム判別書き換え格納領域113のうち、いずれか一方に、「不揮発性メモリ101書き換え中」を示す情報を書き込む。さらに、プログラム判別処理部117は、書き換え処理部125が書き換え処理を完了すると、不揮発性メモリ101内のターゲットシステム制御プログラム書き換え情報格納領域107及びダウンロードプログラム書き換え情報格納領域113のうち、実際にマイクロコンピュータ115が書き換え処理を実行したプログラムの判別情報格納領域に、「不揮発性メモリ101書き換え完了」を示す情報を書き込む。
【0028】
シリアルインターフェース121及び高速インターフェース119は、書き換えプログラム118を受信する。高速インターフェース119は、シリアルインターフェース121よりも高速な動作が可能なインターフェースである。例えば、USBインターフェースがある。
【0029】
DRAM123は、マイクロコンピュータ115がシリアルインターフェース121、又は高速インターフェース119を介して受信した書き換えプログラム118を、一時的に保持する。書き換えプログラム118は、不揮発性メモリ101内に保持されているターゲットシステム制御プログラム及びダウンロードプログラムのうち、いずれか一方の書き換えプログラムである。
【0030】
次に、図2を参照して、本実施の形態のマイクロコンピュータ制御装置の動作例を説明する。
【0031】
まず、本実施の形態のマイクロコンピュータ制御装置が、ターゲットシステムプログラムを書き換える場合について、説明する。
【0032】
ステップST201で、プログラム判別処理部117は、シリアルインターフェース121又は高速インターフェース119を介して受信した書き換えプログラム118が、ターゲットシステム制御プログラムであるか、ダウンロードプログラムの書き換えプログラムかを判別する。
そして、書き換えプログラム118が、ターゲットシステム制御プログラムの書き換えプログラムの場合、ステップST203へ進む。なお、書き換えプログラム118がダウンロードプログラムの書き換えプログラムの場合、ステップST202へ進む。
【0033】
(ターゲットシステム制御プログラムの書き換え処理)
ステップST203で、マイクロコンピュータ115は、書き換えプログラム118であるターゲットシステム制御プログラムの書き換えプログラムを、DRAM123に一時的に保持する。そして、ステップST205へ進む。
【0034】
ステップST205で、書き換え処理部125は、ST203でDRAM123に一時的に保持したターゲットシステム制御プログラムの書き換えプログラムで、不揮発性メモリ101内の第1のターゲットシステム制御プログラム格納領域103及び第2のターゲットシステム制御プログラム格納領域105のうち、いずれか一方(本実施の形態では、第1のターゲットシステム制御プログラム格納領域103)のターゲットシステム制御プログラムの書き換え処理を実行する。
この時、プログラム判別処理部117は、不揮発性メモリ101内のターゲットシステム制御プログラム書き換え情報格納領域107に、不揮発性メモリ101の書き換え処理状態(この場合、「不揮発性メモリ書き換え中」)を示す情報)を書き込む。
【0035】
ステップST207で、書き換え処理部125は、第1のターゲットシステム制御プログラム格納領域103のターゲットシステム制御プログラムの書き換え処理を完了する。この時、プログラム判別処理部117は、不揮発性メモリ101内のターゲットシステム制御プログラム書き換え情報格納領域107に、不揮発性メモリ101の書き換え処理状態を示す情報(この場合、「不揮発性メモリ書き換え完了」)を書き込む。
そして、ターゲットシステム制御プログラムの書き換え処理が終了する。
【0036】
(ダウンロードプログラムの書き換え処理)
次に、本実施の形態のマイクロコンピュータ制御装置が、ダウンロードプログラムを書き換える場合について説明する。
【0037】
ステップST202で、マイクロコンピュータ115は、書き換えプログラム118であるダウンロードプログラムの書き換えプログラムを、DRAM123に一時的に保持する。
【0038】
ステップST204で、書き換え処理部125は、ステップST202でDRAM123に一時的に保持したダウンロードプログラムの書き換えプログラムを実行することで、不揮発性メモリ101内の第1のダウンロードプログラム格納領域109及び第2のダウンロードプログラム格納領域111のうち、いずれか一方のターゲットシステム制御プログラムの書き換え処理を実行する。
この時、プログラム判別処理部117は、不揮発性メモリ101内のダウンロードプログラム書き換え情報格納領域113に、不揮発性メモリ101の書き換え処理状態(この場合、「不揮発性メモリ書き換え中」)を示す情報)を書き込む。
【0039】
ステップST206で、書き換え処理部125は、ターゲットシステム制御プログラムの書き換え処理を完了する。この時、プログラム判別処理部117は、不揮発性メモリ101内のダウンロードプログラム書き換え情報格納領域113に、不揮発性メモリ101の書き換え処理状態を示す情報(この場合、「不揮発性メモリ書き換え完了」)を書き込む。
そして、ダウンロードプログラムの書き換え処理が終了する。
【0040】
上述のように、本実施の形態のマイクロコンピュータ制御装置では、ステップST205で、プログラム判別処理部117が、不揮発性メモリ101内のターゲットシステム制御プログラム書き換え情報格納領域107に、不揮発性メモリ101の書き換え処理状態を示す情報を書き込む。
そのため、例えば電源遮断により、第1のターゲットシステム制御プログラム格納領域103のターゲットシステム制御プログラムの書き換え処理を書き換え処理部125が正常に完了しなくても、電源が回復したときに、実行部127が、ターゲットシステム制御プログラム書き換え情報格納領域107を参照して、第2のターゲットシステム制御プログラム格納領域105から正常なターゲットシステム制御プログラムを読み出して実行することができる。その結果、本実施の形態のマイクロコンピュータ制御装置は、正常なターゲットシステム制御プログラムを実行することで、ターゲットシステムを正常に動作させることができる。
したがって、本実施の形態のマイクロコンピュータ制御装置は、不揮発性メモリ101の書き換え処理状態を示す情報を参照し、適切なターゲットシステム制御プログラム格納領域を選択して、正常なターゲットシステム制御プログラムを使用することができる。そのため、マイクロコンピュータ制御装置の信頼性や利便性が向上する。
【0041】
なお、本実施の形態のマイクロコンピュータ制御装置では、実行部127が、ターゲットシステム制御プログラム書き換え情報格納領域107の情報を参照し、第2のターゲットシステム制御プログラム格納領域105に保持されている正常なターゲットシステム制御プログラムを読み出して実行するが、これに限らない。例えば、書き換え処理部125が、プログラム判別処理部117を介して外部から受信したプログラム判別情報116に基づき、第2のターゲットシステム制御プログラム格納領域105に保持されている正常なターゲットシステム制御プログラムを読み出して実行し、ターゲットシステムを動作させることができる。
したがって、本実施の形態のマイクロコンピュータ制御装置は、不揮発性メモリ101の書き換え処理状態を示す情報を参照しなくても、外部から受信したプログラム判別情報116に基づき、適切なターゲットシステム制御プログラム格納領域を選択して、正常なターゲットシステムプログラムを使用することができる。そのため、更に、マイクロコンピュータ制御装置の信頼性や利便性が向上する。
【0042】
なお、本実施の形態のマイクロコンピュータ制御装置は、シリアルインターフェースよりも高速な動作が可能な高速インターフェース(例えば、USBインターフェース)を介して、書き換えプログラムを受信する。そのため、書き換えプログラムを受信するのに要する時間を、シリアルインターフェースの場合に比して、大幅に短縮することができる。そのため、マイクロコンピュータ制御装置の信頼性や利便性を向上させることができる。
【0043】
なお、本実施の形態のマイクロコンピュータ制御装置は、ターゲットシステム制御プログラム格納領域及びダウンロードプログラム格納領域を、同一の不揮発性メモリ内で、それぞれ2つ保持しているが、これに限らない。本実施の形態のマイクロコンピュータ制御装置は、例えば、ターゲットシステム制御プログラム格納領域とダウンロードプログラム格納領域を、同一の不揮発性メモリ内で、それぞれ3つ以上保持してもよい。
【0044】
なお、本実施の形態のマイクロコンピュータ制御装置は、2つのターゲットシステム制御プログラム格納領域及びターゲットシステム制御プログラム判別情報格納領域、並びに2つのダウンロードプログラム格納領域及びダウンロードプログラム判別情報格納領域を同一の不揮発性メモリ内に保持しているが、これに限らない。本実施の形態のマイクロコンピュータ制御装置は、プログラムの種別等によって、各領域を複数の不揮発性メモリに分けて保持してもよい。
【0045】
なお、本実施の形態のマイクロコンピュータ制御装置は、DRAM123に書き換えプログラム118を保持した後に、不揮発性メモリ101内のターゲットシステム制御プログラム書き換え情報格納領域107に情報を書き込んでいるが、これに限らない。本実施の形態のマイクロコンピュータ制御装置は、書き換えプログラム118を受信しながら、不揮発性メモリ101内のターゲットシステム制御プログラム書き換え情報格納領域107に情報を書き込んで、逐次ターゲットシステムプログラムを実行してもよい。
【0046】
また、上記実施の形態の説明に用いた機能ブロック図は、典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部または全てを含むように1チップ化されてもよい。ここではLSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることがある。
【0047】
また、集積回路化の手法は、LSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Alay)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサー(Re−configurable Processor) を利用してもよい。
【0048】
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
【産業上の利用可能性】
【0049】
本発明に係るマイクロコンピュータ制御装置は、ターゲットシステムを制御するプログラムの書き換え処理が中断しても、ターゲットシステムを制御することができ、特に車載用途における不揮発性メモリ書き換え処理を行うマイクロコンピュータ制御装置において有用である。
【図面の簡単な説明】
【0050】
【図1】本発明の実施の形態によるマイクロコンピュータ制御装置の構成を示すブロック図
【図2】本発明の実施の形態によるマイクロコンピュータ制御装置の動作を示すフローチャート
【図3】従来のマイクロコンピュータ制御装置の構成を示すブロック図
【符号の説明】
【0051】
101、301 不揮発性メモリ
103 第1のターゲットシステム制御プログラム格納領域
105 第2のターゲットシステム制御プログラム格納領域
107 ターゲットシステム制御プログラム書き換え情報格納領域
109、305 第1のダウンロードプログラム格納領域
111、307 第2のダウンロードプログラム格納領域
113 ダウンロードプログラム書き換え情報格納領域
115、311 マイクロコンピュータ
116 プログラム判別情報
117 プログラム判別処理部
118、314 書き換えプログラム
119 高速インターフェース
121、315 シリアルインターフェース
123、317 DRAM
125 書き換え処理部
127 実行部
303 ターゲットシステム制御プログラム格納領域
309 ダウンロードプログラム判別情報格納領域
312 ダウンロードプログラム判別情報
313 ダウンロードプログラム判別処理部

【特許請求の範囲】
【請求項1】
同一のターゲットシステム制御プログラムをそれぞれ保持する複数の領域を保持する第1保持部と、
前記ターゲットシステム制御プログラムを実行する実行部と、
前記ターゲットシステム制御プログラムの書き換えプログラムを実行することで、前記複数の領域のうち、一つの領域に保持されている前記ターゲットシステム制御プログラムの書き換え処理を実行する書き換え処理部と、
前記一つの領域に保持されている前記ターゲットシステム制御プログラムの前記書き換え処理の状態を示す情報を保持する第2保持部と、を有するマイクロコンピュータ制御装置であって、
前記実行部は、前記第2保持部が保持する情報を参照し、前記1つの領域以外の前記複数の領域のうち、一つの領域に保持されているターゲットシステム制御プログラムを前記第1保持部から読み出して実行するマイクロコンピュータ制御装置。
【請求項2】
前記第2保持部が保持する情報は、前記書き換え処理部が書き換え処理を正常に完了していない状態を示す情報である請求項1に記載のマイクロコンピュータ制御装置。
【請求項3】
シリアルインターフェースよりも高速で、前記ターゲットシステム制御プログラムの前記書き換えプログラムを受信可能なインターフェースを、さらに備える請求項1及び請求項2のいずれか一項に記載のマイクロコンピュータ制御装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate