JP7029366B2 - 自動車用電子制御装置 - Google Patents

自動車用電子制御装置 Download PDF

Info

Publication number
JP7029366B2
JP7029366B2 JP2018161498A JP2018161498A JP7029366B2 JP 7029366 B2 JP7029366 B2 JP 7029366B2 JP 2018161498 A JP2018161498 A JP 2018161498A JP 2018161498 A JP2018161498 A JP 2018161498A JP 7029366 B2 JP7029366 B2 JP 7029366B2
Authority
JP
Japan
Prior art keywords
data
written
control device
electronic control
eeprom
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.)
Active
Application number
JP2018161498A
Other languages
English (en)
Other versions
JP2020035503A (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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Astemo 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 Astemo Ltd filed Critical Hitachi Astemo Ltd
Priority to JP2018161498A priority Critical patent/JP7029366B2/ja
Publication of JP2020035503A publication Critical patent/JP2020035503A/ja
Application granted granted Critical
Publication of JP7029366B2 publication Critical patent/JP7029366B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

本発明は、自動車用電子制御装置に関する。
自動車用電子制御装置には、イグニッションスイッチをOFFにすると、制御対象の学習値、故障情報などのデータを不揮発性メモリに書き込むなど、ファイナライズ処理を行ってから内部電源を遮断する「セルフシャットダウン機能」が備えられている。そして、イグニッションスイッチをONにすると、自動車用電子制御装置は、不揮発性メモリからデータをRAM(Random Access Memory)に読み出し、そのデータを使用して制御対象を制御する。
不揮発性メモリの素子の固着などの故障を検知するため、特開2014-75078号公報(特許文献1)に記載される技術が提案されている。この提案技術においては、イグニッションスイッチがONになったときに、不揮発性メモリから読み出したデータについて、データに含まれる誤り検出符号を使用してデータが正常に書き込まれたか否かを判定することで、不揮発性メモリの故障が検知されている。
特開2014-75078号公報
しかしながら、セルフシャットダウン中のデータ書き込みによって不揮発性メモリの故障が検知できても、例えば、バックアップRAMがないと、その故障情報を保持し続けることができない。また、イグニッションスイッチがONになったときの故障検知では、データ書き込み電圧の瞬間的な低下又は遮断によるデータ破損か、不揮発性メモリ自体の故障であるかを区別することもできない。
そこで、本発明は、不揮発性メモリの故障診断精度を向上させた、自動車用電子制御装置を提供することを目的とする。
このため、電気的にデータを書換可能な不揮発性メモリを有する自動車用電子制御装置は、イグニッションスイッチがOFFになったセルフシャットダウン中に、不揮発性メモリに確保された複数の記憶領域に同一データを書き込む。また、自動車用電子制御装置は、イグニッションスイッチがONになった起動時に、複数の記憶領域に書き込まれた各データが正常であるか否かを判定し、データの少なくとも1つが正常でなければ、正常でないと判定されたデータが書き込まれていた記憶領域に正常であると判定されたデータを書き込むに先立って、データ書き込み対象の記憶領域に所定のデータを書き込んでからデータを書き込む。そして、自動車用電子制御装置は、データを正常に書き込むことができなければ、不揮発性メモリが故障していると診断する。
本発明によれば、不揮発性メモリの故障診断精度を向上させることができる。
自動車用電子制御装置の一例を示す概略構成図である。 学習値、故障情報などのデータを格納する記憶領域のデータ構造図である。 データ書き込み処理の一例を示すフローチャートである。 故障診断処理の一例を示すフローチャートである。 正常時における診断シーケンスの第1段階の説明図である。 正常時における診断シーケンスの第2段階の説明図である。 正常時における診断シーケンスの第3段階の説明図である。 正常時における診断シーケンスの第4段階の説明図である。 異常時における診断シーケンスの第1段階の説明図である。 異常時における診断シーケンスの第2段階の説明図である。 異常時における診断シーケンスの第3段階の説明図である。 異常時における診断シーケンスの第4段階の説明図である。 異常時における診断シーケンスの第5段階の説明図である。 異常時における診断シーケンスの第6段階の説明図である。 書き込み機能診断処理の一例を示すフローチャートである。 書き込み機能診断シーケンスの第1段階の説明図である。 書き込み機能診断シーケンスの第2段階の説明図である。 書き込み機能診断シーケンスの第3段階の説明図である。 書き込み機能診断シーケンスの第4段階の説明図である。
以下、添付された図面を参照し、本発明を実施するための実施形態について詳述する。
図1は、自動車用電子制御装置(以下「電子制御装置」という)100の一例を示す。
電子制御装置100は、図示しない自動車に搭載され、例えば、エンジン、自動変速機、燃料ポンプ、バルブタイミングを電動で変更する電動VTC(Valve Timing Control)、圧縮比を変更するVCR(Variable Compression Ratio)などを電子制御する。電子制御装置100は、プロセッサ110と、RAM(Random Access Memory)120と、EEPROM(Electrically Etasable Programmable Read Only Memory)130と、通信回路140と、入出力回路150と、これらを相互通信可能に接続するバス160と、を有している。なお、電動VTCやVCRなどのサブシステムには、一般的に、セルフシャットダウン中に検知された故障を保持し続けることができるバックアップRAMや、警告灯を点灯させる機能は備えられていない。以下の説明では、電子制御装置100は電動VTCなどのサブシステムとするが、この限りではない。
プロセッサ110は、ソフトウエアプログラムに記述された命令セットを実行するハードウエアであって、例えば、CPU(Central Processing Unit)などからなる。RAM120は、電源を遮断するとデータが消失する揮発性メモリの一例であって、例えば、DRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)などからなる。EEPROM130は、電源を遮断してもデータが保持されると共に、電気的にデータを書換可能な不揮発性メモリの一例であって、例えば、フラッシュROM(Read Only Memory)などからなる。通信回路140は、車載ネットワークの一例であるCAN(Controller Area Network)などを介して、他の電子制御装置などと通信するためのデバイスであって、例えば、CANトランシーバなどからなる。入出力回路150は、各種のセンサ又はスイッチなどからアナログ信号又はデジタル信号を読み込むと共に、アクチュエータなどにアナログ又はデジタルの駆動信号を出力するデバイスであって、例えば、A/Dコンバータ、D/Dコンバータなどからなる。
EEPROM130には、図2に示すように、制御対象に関する学習値、故障情報などのデータを記憶する複数の第1の記憶領域として、例えば、データバンク1~4が確保されている。ここで、故障情報は、電子制御装置100の作動中に、例えば、OBD(On-Board Diagnostics)機能により収集される。なお、複数の第1の記憶領域としては、4つのデータバンク1~4に限らず、例えば、制御対象の重要度などを考慮してその個数を決定することができる。
そして、電子制御装置100は、例えば、EEPROM130とは異なるPROM(Programmable ROM)に格納されている制御プログラム(制御変数を含む)に従って、以下に説明する処理によって、EEPROM130に故障が発生しているか否かを診断する。ここで、制御プログラムがPROMに格納されている理由は、EEPROM130に故障が発生していると、制御プログラムが正常に動作しない可能性があるため、EEPROM130に故障が発生しているか否かを誤診断してしまうおそれがあるからである。
図3は、イグニッションスイッチがOFFになったことを契機として、電子制御装置100のプロセッサ110が、内部電源を保持しつつファイナライズ処理を実行するセルフシャットダウン中に実行する、データ書き込み処理の一例を示す。なお、データ書き込み処理を実行する前提として、電子制御装置100の作動中に学習値、故障情報などのデータが収集されてRAM120に記憶されているものとする。
ステップ1(図3では「S1」と略記する。以下同様。)では、プロセッサ110が、EEPROM130のデータバンクを特定する制御変数iに1を代入する。
ステップ2では、プロセッサ110が、EEPROM130のデータバンク[i]に、RAM120に記憶されている学習値、故障情報などのデータを書き込む。このとき、プロセッサ110は、データバンク[i]に書き込むデータのチェックサムを算出する。
ステップ3では、プロセッサ110が、ステップ2で算出したチェックサムとデータバンク[i]に書き込まれたデータに含まれるチェックサムとを比較し、データの書き込みが正常に終了したか否かを判定する。そして、プロセッサ110は、データの書き込みが正常に終了したと判定すれば、処理をステップ5へと進める(Yes)。一方、プロセッサ110は、データの書き込みが正常に終了しない、即ち、データの書き込みに異常が発生したと判定すれば、処理をステップ4へと進める(No)。なお、電子制御装置100のハードウエアによって、データの書き込みが正常に終了したか否かを判定するようにしてもよい。
ステップ4では、データの書き込みが正常に終了しなかったので、プロセッサ110が、異常を検出したことをRAM120に記憶させる。その後、プロセッサ110は、処理をステップ5へと進める。なお、セルフシャットダウンが終了したときには、内部電源が遮断されてRAM120のデータが消失するので、異常を検出したことをRAM120に記憶させなくてもよい。
ステップ5では、プロセッサ110が、制御変数iをインクリメント、即ち、i=i+1とする。
ステップ6では、プロセッサ110が、制御変数iがEEPROM130に確保されたデータバンクの個数n(本実施形態では4)を上回ったか否か、即ち、最後のデータバンクまでデータを書き込んだか否かを判定する。そして、プロセッサ110は、最後のデータバンクまでデータを書き込んだと判定すれば、データ書き込み処理を終了させる(Yes)。一方、プロセッサ110は、最後のデータバンクまでデータを書き込んでいないと判定すれば、処理をステップ2へと戻す(No)。なお、データ書き込み機能の失陥やEEPROM130の故障などにより、データ書き込み処理が終了できない可能性を考慮し、イグニッションスイッチをOFFにしてから所定時間経過後に、データ書き込み処理を強制的に終了させてもよい。
かかるデータ書き込み処理によれば、イグニッションスイッチがOFFになったセルフシャットダウン中に、作動中に収集された学習値、故障情報などのデータは、EEPROM130に確保された複数のデータバンクに書き込まれる。即ち、EEPROM130の複数のデータバンクには、同一データが書き込まれる。なお、データの書き込みが正常に終了したか否かは、チェックサムに限らず、CRC(Cyclic Redundancy Check)、パリティビットなどの誤り検出符号を使用して判定してもよい(以下同様)。
図4は、イグニッションスイッチがONになったことを契機として、電子制御装置100のプロセッサ110が起動時に実行する、故障診断処理の一例を示す。
ステップ11では、プロセッサ110が、EEPROM130の複数のデータバンクに書き込まれているすべてのデータを読み込む。なお、プロセッサ110は、どのデータバンクに書き込まれていたデータであるかを特定可能なように、例えば、数字からなる識別子を付しつつデータを読み込むことができる。ここで、識別子として順次大きくなる数値を使用した場合、最も大きい数字が付されているデータバンクが最新のものであると特定することもできる。
ステップ12では、プロセッサ110が、各データバンクに書き込まれていたデータについて、データから算出したチェックサムとデータに含まれるチェックサムとを比較して、内容が異常となっているデータ(異常データ)があるか否かを判定する。そして、プロセッサ110は、異常データがあると判定すれば、処理をステップ13へと進める(Yes)。一方、プロセッサ110は、異常データがないと判定すれば、処理をステップ23へと進める(No)。ここで、異常データが書き込まれていたデータバンクの識別子については、後述の処理のために、例えば、RAM120に書き込んでおく。
ステップ13では、プロセッサ110が、ステップ12での比較結果に基づいて、内容が正常であるデータ(正常データ)があるか否かを判定する。そして、プロセッサ110は、正常データがあると判定すれば、処理をステップ14へと進める(Yes)。一方、プロセッサ110は、正常データがない、即ち、各データバンクに書き込まれていたすべてのデータが異常であると判定すれば、処理をステップ16へと進める(No)。
ステップ14では、プロセッサ110が、複数のデータバンクの中から所定規則によって選定された1つのデータバンクに書き込まれているデータをRAM120にコピーする。ここで、所定規則としては、例えば、ステップ11においてデータ読み込みが正常に行われたデータバンクのうち、識別子によって最新のものであると特定されるデータバンクとすることができる。
ステップ15では、一部のデータバンクに書き込まれていたデータが異常であったため、プロセッサ110が、異常データが書き込まれていたデータバンクに最新の正常データを書き込む。即ち、プロセッサ110は、セルフシャットダウン中のデータ書き込み処理において、例えば、書き込み電圧が瞬間的に低下又は遮断して書き込みが正常に終了できなかった可能性を鑑み、データをデータバンクに再度書き込む。このとき、プロセッサ110は、データバンクに書き込むデータのチェックサムを算出する。その後、プロセッサ110は、処理をステップ16へと進める。
ステップ16では、各データバンクに書き込まれていたすべてのデータが異常であるため、プロセッサ110が、初期値などのデフォルト値をRAM120にコピーする。
ステップ17では、各データバンクに書き込まれていたすべてのデータが異常であるため、プロセッサ110が、すべてのデータバンク1~4に初期値などのデフォルト値を書き込む。このとき、プロセッサ110は、各データバンクに書き込むデータのチェックサムを算出する。その後、プロセッサ110は、処理をステップ18へと進める。
ステップ18では、プロセッサ110が、ステップ15又はステップ17でデータを書き込んだデータバンクについて、ステップ15又はステップ17で算出したチェックサムとデータバンクに書き込まれたデータに含まれるチェックサムとを比較し、データの書き込みが正常に終了したか否かを判定する。そして、プロセッサ110は、データの書き込みが正常に終了したと判定すれば、処理をステップ19へと進める(Yes)。一方、プロセッサ110は、データの書き込みが正常に終了しない、即ち、データの書き込みに異常が発生したと判定すれば、処理をステップ20へと進める(No)。なお、電子制御装置100のハードウエアによって、データの書き込みが正常に終了したか否かを判定するようにしてもよい。
ステップ19では、セルフシャットダウン中にデータの書き込みが正常に終了しなかったデータバンクへのデータの書き込みが正常に終了したので、プロセッサ110が、異常が検出されなかったことをRAM120に記憶させる。その後、プロセッサ110は、故障診断処理を終了させる。なお、プロセッサ110は、制御対象を実際に制御するとき、RAM120に書き込まれたデータを参照して、制御値を学習値で補正したり、故障情報を追加したりすることができる。
ステップ20では、セルフシャットダウン中にデータの書き込みが正常に終了しなかったデータバンクへのデータの書き込みが正常に終了しなかったので、プロセッサ110が、EEPROM130が異常、即ち、EEPROM130が故障していると判断し、異常が検出されたことをRAM120に記憶させる。なお、RAM120に記憶させた情報は、制御対象を実際に制御する際に利用することができる。
ステップ21では、プロセッサ110が、例えば、車両の運転席の前方に取り付けられているインストルメントパネルの警告灯を点灯させることができるエンジン制御ユニットなどに対して、CAN通信などを介して警告灯の点灯依頼を送信する。そして、この点灯依頼を受信したエンジン制御ユニットなどは、電子制御装置100に代わって警告灯を点灯させる。従って、車両の運転者は、インストルメントパネルの警告灯が点灯することで、EEPROM130に故障が発生している可能性があることを認識できる。なお、電子制御装置100がサブシステムでなければ、自ら警告灯を点灯させることができる。
ステップ22では、プロセッサ110が、制御対象を制御するモードをフェイルセーフモードに移行する。従って、制御対象は、EEPROM130が故障していても、機能が制限された状態で作動可能となり、例えば、運転者がサービス工場まで車両を走行させることができる。その後、プロセッサ110は、故障診断処理を終了させる。なお、プロセッサ110は、フェイルセーフモードに移行する代わりに、又は、これと併せて、RAM120にデフォルト値を書き込むようにしてもよい。
かかる故障診断処理によれば、イグニッションスイッチがONになった起動時に、EEPROM130の複数のデータバンクに書き込まれている各データが正常であるか否かが判定される。そして、データの少なくとも1つが異常であれば、異常データが書き込まれていたデータバンクに最新の正常データが書き込まれる。その後、データが正常に書き込まれたか否かが判定され、データが正常に書き込まれていなければ、EEPROM130が故障していると診断される。
要するに、セルフシャットダウン中のデータ書き込みは、書き込み電圧の瞬間的な低下又は遮断などにより正常に終了しなかった可能性を鑑み、再起動時にデータ書き込みを再度実行することで、そのデータ書き込みに係るデータバンク、即ち、EEPROM130が故障しているか否かが診断される。このため、何らかの原因によって書き込み電圧の瞬間的な低下又は遮断が頻発する状態であっても、再起動時にEEPROM130が故障しているか否かが診断されるため、EEPROM130の故障診断精度を向上させることができる。再起動時にEEPROM130の故障が検知できた場合、電動VTCなどのサブシステムは警告灯を点灯することができないが、例えば、警告灯を点灯できるエンジン制御ユニットにCAN通信などを介して警告灯の点灯依頼を送信することで、エンジン制御ユニットが、サブシステムに代わって警告灯を点灯して運転者に知らせることができる。また、EEPROM130の故障は、イグニッションスイッチがONになったときに診断されるため、バックアップRAMが不要となる。
また、異常データが書き込まれていたデータバンクに正常データを書き込むに先立って、所定のデータ、例えば、16進数の5555h及びAAAAhを書き込んでから、正常データを書き込むようにしてもよい。このようにすれば、EEPROM130のメモリセル(ビット)故障を検知することができる。
ここで、EEPROM130の故障診断方法の理解を容易ならしめることを目的として、EEPROM130が正常であるときの診断シーケンスと、EEPROM130に異常が発生したときの診断シーケンスと、を比較して説明する。なお、異常が発生したときの診断シーケンスの前提として、EEPROM130のデータバンク2が故障しているものとする。
[正常時の診断シーケンス]
イグニッションスイッチがOFFになったセルフシャットダウン中のデータ書き込みでは、図5に示すように、RAM120のデータ2が、最初に、EEPROM130のデータバンク1に書き込まれる。次に、RAM120のデータ2が、EEPROM130のデータバンク2及び3に書き込まれた後、図6に示すように、RAM120のデータ2が、EEPROM130のデータバンク4に書き込まれる。
その後、ファイナライズ処理が終了して内部電源が遮断されると、RAM120のデータが消失するので、図7に示すように、EEPROM状態及びデータが不定となる。この状態でイグニッションスイッチがONになると、EEPROM130の全データバンクに書き込まれていたデータが正常であるか否か判定される。全データバンクに書き込まれていたデータが正常であると、例えば、図8に示すように、データバンク1のデータがRAM120にコピーされると共に、そのEEPROM状態が正常に設定される。このような処理が、イグニッションスイッチがOFF又はONになったときに順次実行され、EEPROM130が正常であるとの診断が行われる。
[異常時の診断シーケンス]
イグニッションスイッチがOFFになったセルフシャットダウン中のデータ書き込みでは、図9に示すように、RAM120のデータ2が、最初に、EEPROM130のデータバンク1に書き込まれる。次に、RAM120のデータ2が、EEPROM130のデータバンク2に書き込まれる。このとき、データバンク2が故障しているため、データ書き込みが正常に終了せず、図10に示すように、RAM120のEEPROM状態が異常に設定される。そして、RAM120のデータ2が、EEPROM130のデータバンク3及び4に夫々書き込まれる。
その後、ファイナライズ処理が終了して内部電源が遮断されると、RAM120のデータが消失するので、図11に示すように、EEPROM状態及びデータが不定となる。従って、セルフシャットダウン中にデータバンク2が故障であると判定された情報は、内部電源の遮断によって消失してしまう。この状態でイグニッションスイッチがONになると、EEPROM130の全データバンクに書き込まれていたデータが正常であるか否か判定される。データバンク2のデータが異常であるので、図12に示すように、正常であるデータバンク1のデータがデータバンク2に書き込まれる。そして、データバンク2へのデータ書き込みが正常に終了しなかったので、図13に示すように、RAM120のEEPROM状態が異常に設定される。このような処理を実行した後、図14に示すように、正常であるデータバンク1のデータがRAM120にコピーされる。このような処理が、イグニッションスイッチがOFF又はONになったときに順次実行され、EEPROM130が故障しているとの診断が行われる。
ところで、EEPROM130の複数のデータバンクにデータが正常に書き込まれている状態で、EEPROM130へのデータ書き込み機能が失陥すると、イグニッションスイッチがONになった起動時の故障診断処理において、EEPROM130の故障を診断することができない。即ち、セルフシャットダウン中にデータを書き込むことができなくても、複数のデータバンクに書き込まれているデータが正常であるので、これからEEPROM130の故障を診断することができない。このため、データ書き込み機能が失陥した後、EEPROM130の複数のデータバンクにデータを正常に書き込むことができないことを検知できず、制御対象に影響を及ぼしてしまう。
そこで、電子制御装置100のプロセッサ110は、イグニッションスイッチがONになるたびに、EEPROM130に確保された2つの記憶領域1及び2に任意のデータ及びその反転値を夫々書き込み、任意のデータ及びその反転値と書き込まれた2つのデータとを比較して、データ書き込み機能が失陥しているか否かを診断してもよい。ここで、任意のデータとしては、イグニッションスイッチがONになるたびに変化するデータが望ましく、例えば、EEPROM130へのデータ書き込み回数などを使用することができる。なお、記憶領域1及び2が、少なくとも1つの第2の記憶領域の一例として挙げられる。
図15は、イグニッションスイッチがONになったことを契機として、電子制御装置100のプロセッサ110が起動時に実行する、書き込み機能診断処理の一例を示す。なお、EEPROM130へのデータ書き込み回数は、電子制御装置100の初期化処理において、EEPROM130の記憶領域1より読み出した値をインクリメントし、このインクリメントした値がRAM120に書き込まれているものとする。
ステップ31では、プロセッサ110が、RAM120からインクリメントされた書き込み回数を読み出し、これをEEPROM130の記憶領域1に書き込む。
ステップ32では、プロセッサ110が、RAM120から読み出したインクリメントされた書き込み回数の反転値を求め、これをEEPROM130の記憶領域2に書き込む。ここで、書き込み回数の反転値とは、書き込み回数データの各ビットを反転、即ち、各ビットの0と1とを反転させたものをいう。このようにすれば、インクリメントされた書き込み回数とその反転値をEEPROM130に書き込むことによって、書き込み機能診断を毎回全ビット(ハードウエア固有の書き込み単位)に対して行うことができる。また、EEPROM130のバスに対する診断もビット単位で行うことができる。
ステップ33では、プロセッサ110が、EEPROM130の記憶領域1及び2に書き込まれたデータを夫々読み出し、書き込んだデータと書き込まれたデータとを比較することで、データ間に整合性があるか否かを判定する。具体的には、プロセッサ110は、書き込み回数と記憶領域1から読み込んだデータとが同一であるか否かを判定すると共に、書き込み回数の反転値と記憶領域2から読み出したデータとが同一であるか否かを判定することで、データ間の整合性を判定する。そして、プロセッサ110は、データ間に整合性がないと判定すれば、処理をステップ34へと進める(Yes)。一方、プロセッサ110は、データ間に整合性があると判定すれば、書き込み機能診断処理を終了させる(No)。
ステップ34では、データ間に整合性がない、即ち、データを正常に書き込むことができなかったため、プロセッサ110が、データ書き込み機能が失陥していると診断する。なお、警告灯を自ら点灯させることができない電動VTCのデータ書き込み機能が失陥していると診断されたときには、プロセッサ110は、例えば、CAN通信を介してエンジン制御ユニットなどへ警告灯の点灯依頼を送信し、エンジン制御ユニットが、車両の運転席の前方に取り付けられているインストルメントパネルの警告灯を点灯させてもよい。また、データ書き込み機能が所定回数連続して失陥していると診断されたときに、その診断を確定するようにしてもよい。
かかる書き込み機能診断処理によれば、イグニッションスイッチがONになるたびに、EEPROM130に確保された記憶領域1及び2に対して、データ書き込み回数及びその反転値が書き込まれる。そして、書き込んだデータと書き込まれたデータとが比較され、これらの間に整合性がなければ、データ書き込み機能が失陥していると診断される。即ち、データ書き込み機能が失陥しているときには、EEPROM130にデータを書き込むことができないので、書き込むデータと書き込まれたデータとの間に整合性がなくなってしまう。このため、書き込むデータと書き込まれたデータとを比較することで、データ書き込み機能が失陥しているか否かを診断することができる。
ここで、データ書き込み機能の失陥診断方法の理解を容易ならしめることを目的として、具体的な例を挙げて説明する。なお、以下の説明においては、初期状態では、データ書き込み機能が正常であり、かつ、データ書き込み回数が0000h(16進数)であるものとする。ここで、初期状態のデータ書き込み回数は0000h以外の値でもよく、また、データ長も4バイトなどの任意の長さとしてもよい。ここで、データ書き込み回数のデータ長は、ハードウエア固有の書き込み単位の最小値(例えば、2バイト)とし、それ以上のデータ長であってもよい。但し、ハードウエア固有の書き込み単位の最小値の整数倍とすると、ソフトウエアの構成上、管理が容易になる。
初期状態においてイグニッションスイッチがONになると、図16に示すように、初期化処理でインクリメントされたデータ書き込み回数0001hが記憶領域1に書き込まれると共に、データ書き込み回数の反転値FFFEhが記憶領域2に書き込まれる。初期状態ではデータ書き込み機能が正常であるため、書き込んだデータと書き込まれたデータとの間には整合性がある。このため、第1回目の診断においては、データ書き込み機能が正常であると診断される。ここで、電子制御装置100が搭載された車両が市場に出荷された後は、初期状態のデータ書き込み回数を使用しないようにすることで、初期状態(若しくは意図した初期化)か、そうでないかを区別することができる。また、市場に出荷されても初期状態のデータ書き込み回数のままであれば、出荷後に何らかの原因でEEPROM130が故障したと認識することができる。なお、このような場合には、初期状態のデータ書き込み回数は、ソフトウエアによっても書き込まれないようにすることが好ましい。
イグニッションスイッチが再度ONになると、図17に示すように、初期化処理でインクリメントされたデータ書き込み回数0002hが記憶領域1に書き込まれると共に、データ書き込み回数の反転値FFFDhが記憶領域2に書き込まれる。このとき、データ書き込み機能が正常であるため、書き込んだデータと書き込まれたデータとの間には整合性がある。このため、第2回目の診断においても、データ書き込み機能が正常であると診断される。その後、イグニッションスイッチがOFFになるまでの間に、何らかの理由によって、データ書き込み機能が失陥したとする。
イグニッションスイッチが再度ONになると、図18に示すように、初期化処理でインクリメントされたデータ書き込み回数0003hが記憶領域1に書き込まれると共に、データ書き込み回数の反転値FFFChが記憶領域2に書き込まれる。このとき、データ書き込み機能が失陥しているので、記憶領域1及び2の内容は、前回のまま、即ち、記憶領域1には0002h、記憶領域2にはFFFDhが書き込まれており、書き込むデータと書き込まれたデータとの間には整合性がなくなってしまう。このため、第3回目の診断においては、データ書き込み機能が失陥していると診断される。
その後、イグニッションスイッチが再度ONになると、図19に示すように、初期化処理でインクリメントされたデータ書き込み回数0004hが記憶領域1に書き込まれると共に、データ書き込み回数の反転値FFFBhが記憶領域2に書き込まれる。このとき、データ書き込み機能が失陥しているので、記憶領域1には0002h、記憶領域2にはFFFDhが書き込まれており、書き込むデータと書き込まれたデータとの間には整合性がなくなってしまう。このため、第4回目の診断においては、データ書き込み機能が相変わらず失陥していると診断される。
なお、データ書き込み機能の失陥診断は、EEPROM130に確保された2つの記憶領域1及び2に限らず、EEPROM130に確保された少なくとも1つの記憶領域を使用して、ここに任意のデータ(診断ごとに異なる値を示すデータ)を書き込むことで診断することもできる。また、EEPROM130の記憶領域は、例えば、EEPROM130のデータ書き込み回数の制約が緩ければ、データバンク1~4のいずれかを利用してもよい。この場合、特定のデータバンクに対するデータ書き込み回数が過度に増加しないように、データバンク1~4を順番に利用することが望ましい。
100 電子制御装置(自動車用電子制御装置)
130 EEPROM(不揮発性メモリ)

Claims (6)

  1. 電気的にデータを書換可能な不揮発性メモリを有する自動車用電子制御装置であって、
    イグニッションスイッチがOFFになったセルフシャットダウン中に、前記不揮発性メモリに確保された複数の第1の記憶領域に同一データを書き込み、
    前記イグニッションスイッチがONになった起動時に、前記複数の第1の記憶領域に書き込まれた各データが正常であるか否かを判定し、前記データの少なくとも1つが正常でなければ、正常でないと判定された前記データが書き込まれていた前記第1の記憶領域に正常であると判定された前記データを書き込むに先立って、データ書き込み対象の前記第1の記憶領域に所定のデータを書き込んでから前記データを書き込み、当該データを正常に書き込むことができなければ、前記不揮発性メモリが故障していると診断する、
    自動車用電子制御装置。
  2. 前記所定のデータは、16進数の5555h及びAAAAhである、
    請求項1に記載の自動車用電子制御装置。
  3. 前記複数の第1の記憶領域に書き込まれていたすべてのデータが正常でないとき、前記複数の第1の記憶領域のすべてに所定のデフォルト値を書き込む、
    請求項1又は請求項2に記載の自動車用電子制御装置。
  4. 前記不揮発性メモリが故障していると診断されたとき、他の電子制御装置に対して警告灯の点灯依頼を送信する、
    請求項1~請求項3のいずれか1つに記載の自動車用電子制御装置。
  5. 前記イグニッションスイッチがONになるたびに、前記不揮発性メモリに確保された少なくとも1つの第2の記憶領域に任意のデータを書き込み、前記任意のデータと前記少なくとも1つの第2の記憶領域に書き込まれたデータとを比較して、前記不揮発性メモリへのデータ書き込み機能が失陥しているか否かを診断する、
    請求項1~請求項4のいずれか1つに記載の自動車用電子制御装置。
  6. 前記任意のデータは、前記イグニッションスイッチがONになるたびに変化するデータである、
    請求項5に記載の自動車用電子制御装置。
JP2018161498A 2018-08-30 2018-08-30 自動車用電子制御装置 Active JP7029366B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018161498A JP7029366B2 (ja) 2018-08-30 2018-08-30 自動車用電子制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018161498A JP7029366B2 (ja) 2018-08-30 2018-08-30 自動車用電子制御装置

Publications (2)

Publication Number Publication Date
JP2020035503A JP2020035503A (ja) 2020-03-05
JP7029366B2 true JP7029366B2 (ja) 2022-03-03

Family

ID=69668363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018161498A Active JP7029366B2 (ja) 2018-08-30 2018-08-30 自動車用電子制御装置

Country Status (1)

Country Link
JP (1) JP7029366B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7246032B2 (ja) * 2019-07-12 2023-03-27 パナソニックIpマネジメント株式会社 車載セキュアストレージシステム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009289049A (ja) 2008-05-29 2009-12-10 Toyota Motor Corp メモリ制御装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3463127B2 (ja) * 1994-05-06 2003-11-05 カシオ計算機株式会社 メモリ自己テスト方法
JP2004138542A (ja) * 2002-10-18 2004-05-13 Yazaki Corp 流量計
JP2007072695A (ja) * 2005-09-06 2007-03-22 Of Networks:Kk フラッシュメモリへの冗長保存方法及びプログラム
JP5915490B2 (ja) * 2012-10-05 2016-05-11 株式会社デンソー 電子制御装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009289049A (ja) 2008-05-29 2009-12-10 Toyota Motor Corp メモリ制御装置

Also Published As

Publication number Publication date
JP2020035503A (ja) 2020-03-05

Similar Documents

Publication Publication Date Title
US10964135B2 (en) In-vehicle electronic control unit and method for abnormality response processing thereof
JP2009120054A (ja) 車両用記憶管理装置
JP2014035730A (ja) 車両用制御装置
US11314634B2 (en) Electronic control unit and data protection method therefor
JP7029366B2 (ja) 自動車用電子制御装置
JP4001088B2 (ja) 電子制御装置
JP6663371B2 (ja) 電子制御装置
JP6869743B2 (ja) 自動車用電子制御装置
JP2002323902A (ja) 電子制御装置
JP6708596B2 (ja) 電子制御装置及び制御プログラム検証方法
JP3296043B2 (ja) 車両用電子制御装置
JP2006017468A (ja) データ記録装置
JP6611877B1 (ja) 半導体集積回路および回転検出装置
JP6956566B2 (ja) 車両情報記憶装置
JP2004151944A (ja) 不揮発性記憶装置へのデータの書き込み方法、プログラム、および装置、ならびに車載電子制御装置
JP2015171853A (ja) 自動車用電子制御装置
JPH09161493A (ja) 書換え可能な不揮発性メモリの管理方法
JP6159668B2 (ja) 車両用制御装置
JP3960212B2 (ja) 電子制御装置
JP5872982B2 (ja) 車両用制御装置
JP7007223B2 (ja) 制御装置および異常検出方法
JP6887277B2 (ja) 自動車用電子制御装置
JP2004021520A (ja) 車両用電子制御装置
JP4479775B2 (ja) 車両制御装置およびプログラム
JP2018063527A (ja) 電子制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210309

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220107

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: 20220125

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220218

R150 Certificate of patent or registration of utility model

Ref document number: 7029366

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