JP5872982B2 - 車両用制御装置 - Google Patents

車両用制御装置 Download PDF

Info

Publication number
JP5872982B2
JP5872982B2 JP2012177994A JP2012177994A JP5872982B2 JP 5872982 B2 JP5872982 B2 JP 5872982B2 JP 2012177994 A JP2012177994 A JP 2012177994A JP 2012177994 A JP2012177994 A JP 2012177994A JP 5872982 B2 JP5872982 B2 JP 5872982B2
Authority
JP
Japan
Prior art keywords
update data
writing
interruption
value
written
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012177994A
Other languages
English (en)
Other versions
JP2014035729A (ja
Inventor
池田 喜紀
喜紀 池田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Astemo Ltd
Original Assignee
Hitachi Automotive Systems Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Automotive Systems Ltd filed Critical Hitachi Automotive Systems Ltd
Priority to JP2012177994A priority Critical patent/JP5872982B2/ja
Publication of JP2014035729A publication Critical patent/JP2014035729A/ja
Application granted granted Critical
Publication of JP5872982B2 publication Critical patent/JP5872982B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、電気的に消去及び書き込みが可能な不揮発性メモリを備えた車両用制御装置に関する。
特許文献1には、複数の物理ブロックで構成される不揮発性メモリにデータを書き込むときに、物理ブロックの先頭ページの冗長領域にあり、その先頭ページにデータが書き込まれているか否かを示す第1のフラグに、データが書き込まれていることを示す固定値を書き込む第1のフラグ書き込みステップと、その物理ブロックにデータを書き込むデータ書き込みステップと、を有する、不揮発性記憶装置の制御方法が開示されている。
国際公開第2004/031966号
例えば、不揮発性メモリに書き込まれた更新データの誤り検出を、起動時に行うよう構成された車両用制御装置では、不揮発性メモリへの更新データの書き込み途中で電源が遮断するなどして書き込みが中断し、更新データに異常が生じると、再起動時に誤りデータの強制的な書き換えなどの機会がないままリセットされることで、誤り検出、リセットが繰り返され、システムを動かすことができなくなる可能性があった。
本発明は上記問題点に鑑みなされたものであり、不揮発性メモリに対する更新データの書き込みが中断した場合に、動作不良となることを抑制できる、車両用制御装置を提供することを目的とする。
そのため、本願発明では、電気的に消去及び書き込みが可能な不揮発性メモリを備え、起動時に、前記不揮発性メモリの更新データの誤り検出を行い、誤りを検出した場合にリセットを実施する車両用制御装置において、前記不揮発性メモリに対する更新データの書き込みにおいて中断があった場合に、起動時の前記誤り検出に先立って前記更新データを所定値に書き換え、その後に前記誤り検出を行うようにした。
上記発明によると、更新データの書き込みにおいて中断があった場合でも、起動時の誤り検出に先立って更新データを所定値に書き換えることで、誤り検出、リセットが繰り返されることを抑制でき、以って、動作不良となることを抑制できる。
本願発明の実施形態における車両用制御装置のブロック図である。 本願発明の実施形態における不揮発性メモリのアドレス空間を示す図である。 本願発明の実施形態における車両用制御装置の起動時の状態変化及び不揮発性メモリのアクセスを示すタイムチャートである。 本願発明の実施形態における車両用制御装置の起動時処理の一例を示すフローチャートである。 本願発明の実施形態における全体サム値(中断判別値)の書き込みの様子及び固定値による書き換えの様子を説明するための図である。 本願発明の実施形態における車両用制御装置の起動時処理の一例を示すフローチャートである。 本願発明の実施形態における車両用制御装置の起動時処理の一例を示すフローチャートである。
以下に本発明の実施の形態を説明する。
図1は、車両用制御装置の一例を示すブロック図である。
図1に示す車両用制御装置1は、各種の車両搭載機器(エンジン、自動変速機、エアコンなど)を制御する装置であり、マイクロコンピュータ(演算器)2、電源回路3、I/F回路4などを備える。
マイクロコンピュータ(以下、「マイコン」という)2は、CPU(演算処理装置)21、フラッシュROMやEEPROMなどの電気的に消去及び書き込みが可能な不揮発性メモリ22、RAMなどの揮発性メモリ23を含んでいる。
不揮発性メモリ22は、ビット誤り検出機能付のメモリモジュール(ECCメモリ)とすることができる。ビット誤り検出機能付のメモリモジュールは、例えば、エラー訂正コードECC(冗長化データ)を持ち、1bitのエラーに対しては誤り検出と訂正とが可能である一方、2bitのエラーに対しては、エラー検出は可能であるものの訂正を行えないモジュールである。
そして、マイコン2は、I/F回路4を介して外部からセンサ信号などを入力し、また、I/F回路4を介して外部に向けて操作信号などを出力する。
マイコン2及び電源回路3には、運転者によってオン/オフされる電源スイッチ5を介して、車両電源(バッテリ)6の電力が供給される。
また、電源回路3によってオン/オフが制御されるセルフシャットオフリレー7を介する経路によっても、車両電源6の電力がマイコン2及び電源回路3に供給されるようになっていて、セルフシャットオフリレー7をオンに保持することで、電源スイッチ5がオフされた後も、マイコン2に対する電力供給を継続させることが可能である。
また、電源回路3は、マイコン2からプログラムラン信号P−RUNを入力し、マイコン2に対してリセット信号を出力する外部監視回路としての機能を備えている。
不揮発性メモリ22には、例えば、図2に示すように、格納データの1つ或いは複数毎にビット誤り検出やビット誤り訂正を行うためのコード(エラー訂正コードECC)が格納されるようになっている。
図2において、更新データは、マイコン2への電源投入期間中に、順次更新して書き込まれる学習データや故障診断データ(故障履歴データ)などであり、固定データは、初期状態において書き込まれる制御定数などの更新されないデータである。
マイコン2は、図3に示すように、電源投入によって起動すると、まず、初期化処理を実施した後、誤り検出訂正を行わせつつ不揮発性メモリ22から更新データを読み出し、全更新データの読み出しを完了すると、その他の処理(更新データの書き込みを含む)を実施する。
更新データの不揮発性メモリ22への書き込みは、全更新データの読み出しを完了した後の電源投入期間中に、必要に応じて実施され、更新データの書き込みタイミングはランダムである。
以下では、マイコン2における起動時における更新データの処理の一例を、図4のフローチャートに従って詳細に説明する。
マイコン2に電源投入されると(電源投入されかつリセットが解除されると)、まず、ステップS101で初期化処理を実施する。
初期化処理が終了すると、ステップS102へ進み、不揮発性メモリ22における更新データ、又は、更新データを含む格納データエリア全てに対する誤り検出訂正を禁止し(換言すれば、誤り検出訂正の開始を遅延し)、誤り検出訂正に先立って、ステップS103〜ステップS105の更新データの書き換え処理に進む。
このステップS103〜ステップS105における更新データの書き換え処理は、更新データの書き込み途中で、電源が遮断されるなどして書き込みが中断し、更新データに異常が生じた場合に、更新データを所定値に書き換え、書き込み処理において算出される更新したエラー訂正コードECCに書き換える処理である。
そして、係る更新データの書き換え処理が終わってから、ステップS106で、不揮発性メモリ22における更新データ、又は、更新データを含む格納データエリア全てに対する誤り検出訂正を起動させるようになっている。
ステップS103では、更新データの書き込みが中断したか否かを判別するための中断判別値である第1サム値及び第2サム値を、不揮発性メモリ22の更新データを格納するエリア(以下、「更新データエリア」という)から読み出す。
更新データの更新データエリアに対する書き込みにおいては、書き込みを開始する前に、書き込みが決定した複数の更新データの全体サム値を演算し、当該全体サム値を、書き込みの中断の有無を判断するための値として、更新データの書き込み過程において不揮発性メモリ22に複数書き込むようにしてある。
より具体的には、図5(A)に示すように、最初に書き込みを行う更新データと共に全体サム値を書き込み、最後に書き込みを行う更新データと共に最初と同じ全体サム値を書き込むようになっている。即ち、更新データの書き込み過程の最初及び最後で、同じ全体サム値(中断判別値)を、更新データエリアに書き込むようにしてある。
そして、ステップS103では、書き込み過程の最初に書き込まれる更新データと共に格納されている全体サム値を第1サム値として読み出し、更に、書き込み過程の最後に書き込まれる更新データと共に格納されている全体サム値を第2サム値として読み出す。
尚、中断判別値としての全体サム値を、最初の更新データの書き込みの直前に書き込み、また、最後の更新データの書き込みの直後に書き込むようにすることができる。
ここで、更新データの書き込み途中で、電源遮断などによって書き込みが中断すると、図5(A)に示すように、書き込み過程の最初側の全体サム値(第1サム値)が、そのときの書き込み予定の更新データの全体サム値に更新されるのに対し、最後の更新データの書き込み処理まで進まないことで、書き込み過程の最後側の全体サム値(第2サム値)が前回値のまま上書きされることなく保存されるため、第1サム値と第2サム値とが不一致(不整合)の状態になる。
尚、マイコン2における電源遮断は、電源(バッテリ)の取り外しや電力供給ハーネスの断線や中間コネクタの抜けなどによって生じる。また、マイコン2に対する電力供給が瞬間的に途絶える場合は、マイコン2が出力するプログラムラン信号P−RUNが途絶え、電源回路3はマイコン2にリセット信号を出力し、マイコン2を再起動させる。
一方、一連の更新データの書き込み処理が中断なく進行すれば、書き込み過程の最初側での全体サム値の書き込みと、書き込み過程の最後での全体サム値の書き込みとが行われることで、最初側と最後側との全体サム値(中断判別値)が一致(整合)することになる。
従って、書き込み過程における最初側で全体サム値(中断判別値)を書き込むアドレスに格納されている第1サム値と、書き込み過程における最後側で全体サム値(中断判別値)を書き込むアドレスに格納されている第2サム値とが、一致(整合)するか否かによって、前回の更新データの書き込み処理が中断したか否かを判別することができる。
そこで、ステップS104では、ステップS103で読み出した第1サム値と第2サム値とを比較(照合)し、第1サム値と第2サム値とが不一致(不整合)である場合には、前回の更新データの書き込み処理において、書き込みの中断が発生したものと判断し、中断による更新データの異常(破損)に対処するためのステップS105に進む。
一方、第1サム値と第2サム値とが一致(整合)している場合には、前回の更新データの書き込み処理において、最後の更新データの書き込みまで中断することなく、一連の更新データの書き込みが最初から最後まで正常に行われたものと判断する。この場合、書き込みの中断による更新データの破損(訂正不能な異常)はなく、ステップS105の処理は不要であるので、ステップS105を迂回してステップS106へ進む。
更新データに異常(破損)がある状態で、誤り検出訂正を伴う更新データの読み出しを行うと、更新データの誤り(訂正不能な誤りである2ビットエラー)が検出されることで、後述するようにマイコン2のリセットが実施される。ここで、ステップS102〜ステップS106の各ステップの処理を行わない場合、リセット解除後に更新データの異常が解消されないまま、再度誤り検出訂正が行われることで、リセット、誤り検出を繰り返し、マイコン2による制御動作が開始されないことになってしまう。
そこで、誤り検出に基づくリセットが行われないように、ステップS105では、全更新データエリアに対して、固定値である更新データ、及び、書き込み処理において算出されるエラー訂正コードECCを上書きし、異常となっている更新データを含む全更新データを予め決められている固定値に書き換え、書き込み処理において算出される更新された全エラー訂正コードECCに書き換えると共に、固定値である書き換え後の更新データに見合う全体サム値を、書き込みの最初と最後で更新データエリアに書き込むようにする。
図5(B)は、更新データエリアの更新データ及びエラー訂正コードECCを固定値で上書きした後の状態を示し、最初の更新データから書き込みが中断した時点での更新データまで、更に、中断した以降の新たな書き込み(上書き)が行われなかった更新データの全てが、固定値に書き換えられており、更に、全エラー訂正コードECCが、更新データに見合う書き込み処理において算出されたエラー訂正コードECCに書き換えられている。
更新データの固定値は、予め不揮発性メモリ22に保存されている。
尚、誤り検出において誤りが検出されることがない更新データとエラー訂正コードECCとの組み合わせとして、更新データ及びエラー訂正コードECCの固定値を予め不揮発性メモリ22に保存させておくこともできる。
ここで、更新データが学習値である場合には、前記固定値を、学習値の初期値(デフォルト値)とすることができる。また、固定値を、更新データのアドレス毎に持っていて、各アドレスに対応する固定値に上書きすることができる。
また、中断判別値として、全体サム値を用いることができる他、例えば、ランダムな値や書き込み処理毎に順繰りに更新される値を中断判別値として設定し、これを、更新データの書き込み過程における最初と最後で書き込むことができる。
また、書き込み過程において時系列的に書き込む複数の中断判別値を、既定の相関を満たす相互に異なる値とすることができ、この場合、複数の中断判別値が規定の相関を満たしていれば、中断判別値が整合し、中断がなかったことを示すことになる。ここで、規定の相関を満たす状態とは、例えば、比や偏差が既定値である場合などである。
更に、例えば、更新データの書き込みを行う際に、書き込む予定の更新データの全体サム値を演算して、不揮発性メモリ22に書き込む一方、起動時に更新データエリアの全更新データを読み出して全体サム値を演算し、不揮発性メモリ22に書き込まれていた全体サム値と、読み出した更新データに基づき演算した全体サム値との整合性(一致、不一致)を判断することで、書き込みの中断があったか否かを判断させることができる。
上記のようにして、誤りが発生している更新データを含めて、全ての更新データ及びエラー訂正コードECCを予め定めた固定値に書き換えれば、ステップS107以降に進んで誤り検出が実施されるときに、更新データの異常発生(訂正不能な誤り)が検出され、リセットされることが避けられ、最終的にステップS112に進んで、車両用制御装置1による制御を開始させることができる。
ステップS106では、不揮発性メモリ22における誤り検出訂正の中止を解除し、ステップS107以降の更新データの読み出しを開始させる。
ステップS107では、更新データ及びそのエラー訂正コードECCを、不揮発性メモリ22の更新データエリアから読み出す。ここで、ステップS105で全更新データを固定値に書き換え、更新された全エラー訂正コードECCに書き換えた後、ステップS107に進んだ場合には、固定値としての更新データ及びエラー訂正コードECCを読み出すことになる。
ステップS108では、更新データとそのエラー訂正コードECCとの照合を行う。
そして、照合結果に異常がなければ、ステップS111へ進んで、全更新データの読み出しが完了したか否かを判定し、全更新データの読み出しが完了していない場合には、ステップS107に戻って、次の更新データ及びそのエラー訂正コードECCの読み出しを行い、全更新データの読み出しが完了すると、ステップS112に進んでその他の処理に移行する。
一方、ステップS108での照合結果に異常があれば(読み出した更新データに誤りがあれば)、ステップS109へ進む。
ステップS109では、更新データの誤りが訂正可能なビット誤りであるか否か、一例として更新データの異常が1ビット誤りであるか否かを判断する。
ここで、更新データの異常が1ビット誤りであれば、訂正可能であるので、ステップS110へ進んで更新データの訂正を実施し、ステップS111へ進む。
また、2ビット以上の誤りが発生している場合は訂正不能と判断し、ステップS113へ進み、エラー情報として、例えば誤りが生じている更新データのアドレスなどを、不揮発性メモリ22に保存する。
次いで、ステップS114では、マイコン2のシャットダウン処理(シャットダウンするための命令実施など)を行い、更に、ステップS115では、プログラムラン信号P−RUNの出力を停止する。
外部監視回路として機能する電源回路3は、マイコン2から出力されるプログラムラン信号P−RUNを監視しており、プログラムラン信号P−RUNが途絶えると、マイコン2をリセットさせるリセット信号を出力する。
リセット信号を入力したマイコン2は、ステップS116でリセット処理を実行して再起動することで、再度ステップS101の初期化処理を実施した後、ステップS102に進む。
前述のように、更新データの書き込み途中での電源遮断などによって更新データの書き込みが中断した場合には、再起動時に、誤り検出に先立ち、第1サム値及び第2サム値に基づき中断の有無が判断され、中断が発生したと判断されると、更新データエリアの更新データが固定値に書き換えられ、更新されたエラー訂正コードECCに書き換えられる。
これにより、書き込みの中断によって更新データに異常が生じていても、そのまま誤り検出が行われることがなく、誤りが検出されない状態に更新データを書き換えてから、誤り検出に進むことになるから、更新データの書き込み途中での電源遮断によって、誤り検出とリセットとが繰り返されるようになることを未然に抑制できる。
尚、ステップS105で更新データを固定値に書き換えている途中で、電源遮断が発生した場合にも、最初に書き込む全体サム値(中断判別値)と、最後に書き込む全体サム値(中断判別値)とが異なるようになることで、起動時に書き込みの中断が発生したことが判断され、再度、更新データエリアの更新データを固定値に書き換え、更新されたエラー訂正コードECCに書き換える処理が実施されることになる。従って、ステップS105での書き込み処理の中断に対しても、誤り検出とリセットとが繰り返されるようになることを抑制できる。
ところで、図4のフローチャートに示す処理では、更新データエリア全体について、書き込みの中断があったか否かを判断し、中断があった場合には、更新データエリア全体を固定値で書き換えるようにしたが、更新データエリアを複数ブロックに分割し、ブロック毎に書き込みが中断したか否かを判断し、書き込み中断が発生したブロックのみを固定値で書き換えることができる。
上記のように、更新データエリアを分割したブロック単位で、中断の有無及び固定値による書き換えを行えば、誤りが検出されることがない正常な値が固定値に書き換えられてしまうことを抑制でき、更新データが例えば学習値であれば、学習の進行が損なわれることを抑制できる。
また、図4のフローチャートに示す処理では、ステップS114にてシャットダウン処理を実施した後に、プログラムラン信号P−RUNの停止により外部監視回路がリセット信号を出力するか、又は、マイコン2自身がリセット信号を出力することができる。
図6のフローチャートは、更新データエリアを複数に分割したブロック単位で、書き込みの中断の有無及び固定値による書き換えを行うようにした、マイコン2の処理の流れを示す。
図6のフローチャートにおいて、図4のフローチャートと同じ処理を行うステップについては、同じステップ番号を付してあり、図4のフローチャートに対して処理内容が異なるステップである、ステップS103A,104A,105A,105Bについて詳細に説明し、他のステップについての説明を省略する。
ステップS103Aでは、更新データエリアを複数の分割したブロック毎に、更新データの書き込みが中断したか否かを判別するための中断判別値である第1サム値及び第2サム値を読み出す。
更新データを更新データエリアに書き込む場合、ブロック毎に書き込みが決定した更新データの全体サム値を演算し、各ブロックの最初の更新データの書き込み時及び最後の更新データの書き込み時に、全体サム値を書き込むようにしてある。
そして、ステップS103Aでは、対象とするブロックにおいて最初の更新データと共に書き込んだ全体サム値を第1サム値として読み出し、最後の更新データと共に書き込んだ全体サム値を第2サム値として読み出す。
次のステップS104Aでは、ステップS103Aで読み出した、ブロック毎の第1サム値と第2サム値とを比較(照合)し、第1サム値と第2サム値とが不一致(不整合)である場合には、当該ブロックにおける前回の更新データの書き込み処理において、書き込みの中断が発生したものと判断し、ステップS105Aに進む。
ステップS105Aでは、書き込みの中断が発生したと判断されたブロックの更新データを固定値に書き換え、書き込み処理中に算出し更新されるエラー訂正コードECCに書き換える処理を実施する。
一方、第1サム値と第2サム値とが一致(整合)している場合には、当該ブロックにおける前回の更新データの書き込み処理において、最初の更新データの書き込みから最後の更新データの書き込みまで中断することなく正常に行われたものと判断する。この場合、ステップS105Aの処理は不要であるので、ステップS105Aを迂回してステップS105Bへ進む。
ステップS105Bでは、更新データエリアを複数に分割した全てのブロックについて、書き込みの中断の有無を判断したか否かを確認し、中断の有無を判断していないブロックが残っている場合には、ステップS103Aに戻る。
そして、ステップS103Aでは、書き込みの中断の有無を判断していないブロックについて、第1サム値及び第2サム値の読み出しを行い、その後ステップS104Aに進んで、第1サム値と第2サム値との整合判断を行って、当該ブロックでの更新データの書き込みにおいて電源遮断などによる中断が生じたか否かを判断する。
ステップS105Bで、更新データエリアを複数に分割する全てのブロックについて、中断の有無を判断したと判断すると、ステップS106へ進む。ステップS106では、ステップS102における更新データの誤り検出訂正の中止を解除し、ステップS107以降の誤り検出処理を伴う更新データの読み出しを開始させる。
上記のように、更新データエリアを複数のブロックに分割し、ブロック毎に書き込み中断の有無を判断させるようにすれば、書き込みが中断することがなく、更新データを正常に書き込むことができたものと推定できるブロックについては、固定値への書き換えが行われない。
従って、書き込みの中断による更新データの異常によって、リセット、誤り検出が繰り返されるようになることを抑制しつつ、正常に書き込まれた更新データが無用に固定値に書き換えられてしまうことを抑制でき、例えば、更新データが学習値であれば、学習のやり直しが無用に行われることを抑制できる。
ところで、更新データの不揮発性メモリ22に対する書き込みにおいて、同一の更新データを2つのエリアにそれぞれ書き込むミラーリングが行われる場合、換言すれば、同じ構成のデータファイルが複製される場合、一方のエリアへの書き込みにおいて中断(電源遮断)が発生して更新データの誤りが発生しても、同じ構造の他方のエリアへは中断なく更新データを書き込むことができている場合ある。
そして、この場合、誤りが発生した更新データの正しい値は、他方のエリアに保存されていることになるから、書き込みの中断が発生したエリアの更新データを、他の更新データエリアに保存されている値に書き換えることができる。
係るミラーリングにおける書き換え処理の例を、図7のフローチャートに従って説明する。
図7のフローチャートにおいて、図4のフローチャートと同じ処理を行うステップについては、同じステップ番号を付してあり、図4のフローチャートに対して処理内容が異なるステップであるステップS103B、ステップS104B、ステップS105C及びステップS105Dについて詳細に説明し、他のステップについての説明を省略する。
ステップS103Bでは、ミラーリングにおける一方のエリア(面)について、書き込み過程の最初に書き込まれる更新データと共に格納されている全体サム値(中断判別値)を第1サム値として読み出し、更に、書き込み過程の最後に書き込まれる更新データと共に格納されている全体サム値(中断判別値)を第2サム値として読み出す。
そして、ステップS104Bでは、ステップS103Bで読み出した第1サム値と第2サム値とを比較(照合)し、第1サム値と第2サム値とが不一致(不整合)である場合には、前回の更新データの書き込み処理において、電源遮断による書き込みの中断が発生したものと判断し、中断による更新データの異常に対処するためのステップS105Cに進む。
一方、第1サム値と第2サム値とが一致(整合)している場合には、前回の更新データの書き込み処理において、当該エリア(面)については最後の更新データの書き込みまで中断することなく正常に行われたものと判断する。この場合、ステップS105Cの処理は不要であるので、ステップS105Cを迂回してステップS105Dへ進む。
ステップS105Cでは、中断の発生が検出されたエリアの全更新データを、他方の同じ構造のエリア(複製エリア)に格納されている複製データに書き換える処理を行う。尚、書き換え処理の過程で算出されるエラー訂正コードECCも書き換えられる。
ステップS105Dでは、ミラーリングの各エリアについて書き込み中断の有無を判断したか否かを判別し、書き込み中断の判断が終っていないエリアがあれば、ステップS103Bに戻り、中断の判断が終っていないエリアから、第1サム値及び第2サム値を読み出す。
ここで、ステップS105Cに進む前に、ミラーリングの各面それぞれについて書き込みの中断が生じたか否かを判別し、一方で中断が発生し、他方で中断が発生していない場合に、ステップS105Cに進んで、中断が発生したエリアの更新データを、中断が発生しなかったエリアの更新データで上書きするようにできる。
また、ミラーリングの各面の双方で中断が発生した場合には、双方のエリアの更新データを固定値に書き換えることができる。
更に、ミラーリングの各面それぞれを複数ブロックに分割して、ブロック毎に中断判別値(全体サム値)を格納させ、ブロック単位で中断の有無を判断し、書き込みの中断が発生したブロックについては、他方の面の対応するブロックの更新データに上書きさせることができる。
図7のフローチャートに示す処理では、ミラーリングによって更新データが複製される場合に、書き込み中断によって更新データの誤りが発生しても、正しい値に上書きすることが可能となる。
従って、書き込み中断によって更新データに異常が生じも、起動時の誤り検出によってリセットされてしまうことを未然に回避して、リセット、誤り検出が繰り返されるようになることを抑制できると共に、例えば更新データが学習データであれば、学習のやり直しを避けることができ、それまでの学習結果をそのまま反映した制御を行える。
尚、更新データの書き込み過程の最初及び最後に限定せず、更新データを1つ或いは複数書き込む毎に中断判別値を不揮発性メモリ22に書き込ませることができ、この場合、中断判別値が整合する状態と、不整合となる状態との切り替わりタイミングから、書き込み中断(電源遮断)の発生位置、換言すれば、電源遮断によって破損した可能性がある更新データを、中断判別値の書き込み周期を最小単位として特定することが可能である。
そして、この場合、書き込みの中断位置を特定できるので、少なくとも中断位置に該当する1乃至複数の更新データ(破損の可能性が見込まれる更新データ)を固定値に書き換え、そのデータに対応する更新されたエラー訂正コードECCに書き換える一方、他の更新データについてはそのまま保持させることができる。
ここで、上記実施形態から把握し得る請求項以外の技術的思想について、以下に効果と共に記載する。
(イ)前記不揮発性メモリに対する更新データの書き込み過程の少なくとも最初と最後とで、中断判別値を書き込む、請求項2又は3記載の車両用制御装置。
上記発明によると、最初の中断判別値と最後の中断判別値とが整合しない場合、書き込み途中のいずれかで中断が生じたものと判断できる。
(ロ)前記中断判別値が、書き込みが決定された更新データの全体サム値である、請求項1〜3のいずれか1つに記載の車両用制御装置。
上記発明によると、書き込みが決定された更新データの全体サム値が、更新データの書き込み過程で複数書き込まれ、書き込みが中断される前に書き込まれた全体サム値は、そのときの書き込み予定の更新データに対応することになるが、中断後は全体サム値が書き換えられないので、中断後を書き込みタイミングとする全体サム値は更新前のデータに対応することになり、係る全体サム値の不整合によって中断の有無を判断できる。
(ハ)前記所定値が、予め決定された固定値である、請求項1〜3のいずれか1つに記載の車両用制御装置。
上記発明によると、書き込み中断によって破損した更新データを、固定値に書き換えることで、誤り検出を行っても正常と判断されるようにする。
(ニ)更新データの書き込みにおいて複製データが書き込まれ、
前記所定値が、更新データの複製データである、請求項1〜3のいずれか1つに記載の車両用制御装置。
上記発明によると、書き込み中断によって更新データが破損しても、別途格納されている複製データに書き換えることで、誤り検出を行っても正常と判断されるようにし、かつ、更新データとして最新の値に復活させることができる。
(ホ)前記更新データが、エラー訂正コードと共に前記不揮発性メモリに書き込まれ、
更新データを所定値に書き換えるときに、書き込み処理において算出された更新されたエラー訂正コードに書き換える、請求項1〜3のいずれか1つに記載の車両用制御装置。
上記発明によると、更新データの書き込み処理において算出された更新されたエラー訂正コードに書き換えることで、誤り検出で誤りの発生が検出されることを避ける。
1…車両用制御装置、2…マイコン、3…電源回路、4…I/F回路、5…電源スイッチ、6…車両電源、7…セルフシャットオフリレー、21…CPU、22…不揮発性メモリ

Claims (3)

  1. 電気的に消去及び書き込みが可能な不揮発性メモリを備え、起動時に、前記不揮発性メモリの更新データの誤り検出を行い、誤りを検出した場合にリセットを実施する車両用制御装置において、
    前記不揮発性メモリに対する更新データの書き込みにおいて中断があった場合に、起動時の前記誤り検出に先立って前記更新データを所定値に書き換え、その後に前記誤り検出を行う、車両用制御装置。
  2. 前記不揮発性メモリに対して更新データを書き込む過程において、複数の中断判別値を書き込み、
    前記複数の中断判別値が整合しない場合に、起動時の前記誤り検出に先立って前記更新データを所定値に書き換える、請求項1記載の車両用制御装置。
  3. 前記不揮発性メモリにおける更新データの格納エリアが複数のブロックに分割され、更新データを書き込む過程において前記複数のブロック毎に複数の中断判別値を書き込み、前記複数のブロック毎に前記更新データの前記所定値への書き換えを行う、請求項2記載の車両用制御装置。
JP2012177994A 2012-08-10 2012-08-10 車両用制御装置 Expired - Fee Related JP5872982B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012177994A JP5872982B2 (ja) 2012-08-10 2012-08-10 車両用制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012177994A JP5872982B2 (ja) 2012-08-10 2012-08-10 車両用制御装置

Publications (2)

Publication Number Publication Date
JP2014035729A JP2014035729A (ja) 2014-02-24
JP5872982B2 true JP5872982B2 (ja) 2016-03-01

Family

ID=50284673

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012177994A Expired - Fee Related JP5872982B2 (ja) 2012-08-10 2012-08-10 車両用制御装置

Country Status (1)

Country Link
JP (1) JP5872982B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6304007B2 (ja) 2014-12-09 2018-04-04 株式会社デンソー マイクロコントローラ
JP6512065B2 (ja) * 2015-10-29 2019-05-15 株式会社デンソー 電子制御装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001084002A (ja) * 1999-09-10 2001-03-30 Aisin Seiki Co Ltd 制御装置
JP2001331382A (ja) * 2000-05-19 2001-11-30 Matsushita Electric Ind Co Ltd 不揮発性メモリの管理方法および管理装置
JP2004341817A (ja) * 2003-05-15 2004-12-02 Matsushita Electric Ind Co Ltd 情報処理方法及びプログラム並びにナビゲーション装置
JP4419752B2 (ja) * 2004-08-25 2010-02-24 株式会社デンソー データ記憶装置
JP2006079229A (ja) * 2004-09-08 2006-03-23 Hanshin Electric Co Ltd フラッシュメモリマイクロコンピュータのデータ保全方法および保全装置
JP5269810B2 (ja) * 2007-12-14 2013-08-21 株式会社東芝 制御装置

Also Published As

Publication number Publication date
JP2014035729A (ja) 2014-02-24

Similar Documents

Publication Publication Date Title
JP2014035730A (ja) 車両用制御装置
JP4345860B2 (ja) 車両用記憶管理装置
JP4475320B2 (ja) 車両用記憶管理装置
CN102298545A (zh) 一种系统启动引导处理方法及装置
US11314634B2 (en) Electronic control unit and data protection method therefor
JP5872982B2 (ja) 車両用制御装置
JP4227149B2 (ja) 電子制御装置の情報記憶方法
JP2009289049A (ja) メモリ制御装置
JP6708596B2 (ja) 電子制御装置及び制御プログラム検証方法
JP6011687B1 (ja) 記憶装置およびその制御方法
US12524549B2 (en) Method of updating software of electronic control unit of vehicle
JP2008196441A (ja) 車両の制御装置
CN113176891A (zh) 一种基于Bootloader带有备份功能的ECU的程序烧写方法
JP2008204327A (ja) 二重化システムにおける記憶装置の制御方法
JP7029366B2 (ja) 自動車用電子制御装置
JP2019045952A (ja) 車両情報記憶装置
JP2009025967A (ja) 二重化ファームウェアのバックアップ方式、方法、及び、オペレーティングシステム
JP7024582B2 (ja) 車載制御装置
US8190971B2 (en) Data processing system and method for operating a data processing system
JP5095241B2 (ja) データ処理装置及びプログラム起動方法
JP6363044B2 (ja) 制御装置
JP2019160080A (ja) 制御装置および異常検出方法
JP4708088B2 (ja) 障害復旧方法およびマイクロコンピュータ
JP3451489B2 (ja) Ram内容破壊対応処理方法及びプログラマブルコントローラ
JP6568826B2 (ja) 電子制御装置

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20140528

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150128

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151222

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160114

R150 Certificate of patent or registration of utility model

Ref document number: 5872982

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees