JP7373590B2 - 電子制御装置及び電子制御システム - Google Patents

電子制御装置及び電子制御システム Download PDF

Info

Publication number
JP7373590B2
JP7373590B2 JP2021569776A JP2021569776A JP7373590B2 JP 7373590 B2 JP7373590 B2 JP 7373590B2 JP 2021569776 A JP2021569776 A JP 2021569776A JP 2021569776 A JP2021569776 A JP 2021569776A JP 7373590 B2 JP7373590 B2 JP 7373590B2
Authority
JP
Japan
Prior art keywords
update
program
electronic control
data
control device
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
JP2021569776A
Other languages
English (en)
Other versions
JPWO2021140810A1 (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
Publication of JPWO2021140810A1 publication Critical patent/JPWO2021140810A1/ja
Application granted granted Critical
Publication of JP7373590B2 publication Critical patent/JP7373590B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/06Improving the dynamic response of the control system, e.g. improving the speed of regulation or avoiding hunting or overshoot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Description

本発明は、車両の電子制御装置のプログラムの更新に関する。
車両の電子制御装置(ECU:Electronic Control Unit)のプログラム更新手法の一つとして、プログラム配信センターより無線で配信されるプログラムをネットワーク経由でダウンロードし、ECUのプログラム更新を実施する、オンライン更新機能が存在する。
従来のプログラム更新では、ユーザ自身がディーラー等に車両を持込み、整備士が車両に専用装置を接続し、専用装置を操作して更新を実施していたが、オンライン更新機能を利用することで、ディーラーを訪問することなく更新が可能となる。ユーザとしては、機能追加や、機能改善や、問題が修正された新規プログラムの適用が容易となるため、利便性向上と、時間節約の効果がある。
ただし、車両においては、ECUへの給電が常時安定しているとは限らず、プログラム更新中にECUの給電が停止してしまう可能性がある。例えば、バッテリー電源は劣化や放電により、アクセサリー(ACC)電源は、イグニッション(IGN)電源がOFFの状態においては一定時間で、給電が停止する可能性がある。
プログラム更新中にECUへの給電が停止した場合は、プログラム格納領域に不正なデータが残留するため、この不正データを検出してプログラム更新のやり直しが完了するまで、ユーザは新規プログラムを使用することができない。
上記課題を解決する技術として、特許文献1が知られている。特許文献1には、電源電圧が安定している期間を選択してプログラムの更新を実施することで、不正データを残留させずにプログラム更新を実施する装置が記載されている。
特開2015-37938号公報
上記特許文献1に記載の装置は、車両の電源状態を取得することで、プログラム更新の中断と再開処理の判定をしているが、確実な電源状態の取得手段がないECUにおいては、中断と再開処理が正しく実施できない。例えば、外部装置から通信経路を経由しなければ電源状態が取得できないECUにおいては、通信経路や外部装置の故障により電源状態を取得できないケースが存在する。
本発明の目的は、ECUのオンライン更新機能において、プログラム更新中にECUへの給電が停止した場合でも、車両の電源状態を取得することなく、更新完了時に不正データが残留しないプログラムの更新を実現することである。
本発明は、外部からの給電がON又はOFFにされる電源と、外部装置と通信する通信インターフェースと、プログラムとデータを保持する不揮発性メモリと、前記プログラムを実行する演算部と、を有する車両の電子制御装置であって、前記不揮発性メモリは、前記プログラムを格納するプログラム格納領域と、データを格納するデータ格納領域を含み、前記電子制御装置は、更新処理を行うプログラム更新処理部と、更新プログラムを格納するプログラム更新対象部と、前記通信インターフェースを介して受信した前記更新プログラム、前記更新プログラムのデータ長を示すデータ長情報、及び前記通信インターフェースを介して受信した前記更新プログラムを前記プログラム更新対象部に書込む前のデータ量を示すバッファリングサイズを一時的に格納する一時記憶部とを有し、前記演算部は、前記プログラムとして前記プログラム更新処理部を読み込んで実行し、前記バッファリングサイズが0か否かを判定し、前記バッファリングサイズが0ではない場合は前記通信インターフェースで受信し前記一時記憶部に格納された更新プログラムを所定サイズに分割して、前記分割された更新プログラムを前記プログラム更新対象部に書込み、前記書込みが完了した前記更新プログラムの位置を示す更新進捗のデータを前記データ格納領域に格納し、前記データ長情報に基づき前記バッファリングサイズを減算し、前記バッファリングサイズが0である場合は、前記更新プログラムが全て書き込まれたか否かを判定する。
本発明は、車両の電源状態を取得せずに、給電停止まで更新プログラムの書込みを継続するため、確実に電源状態を取得できない構成であってもプログラムの更新処理が実施可能となる。また、プログラムの更新中に給電が停止した場合、書込み中であった領域には不正データが残留するが、次回の起動時には、更新進捗のデータから正常に書込みが完了した領域が判定可能となる。そのため、不正データが残留した領域を正常なデータで上書きすることで、不正データが残留することなくプログラムの更新を完了することが可能となる。
本明細書において開示される主題の、少なくとも一つの実施の詳細は、添付されている図面と以下の記述の中で述べられる。開示される主題のその他の特徴、態様、効果は、以下の開示、図面、請求項により明らかにされる。
本発明の実施例1を示し、車両に搭載される電子制御システムの一例を示すブロック図である。 本発明の実施例1を示し、プログラム更新処理の一例を示すタイムチャートである。 本発明の実施例1を示し、プログラム更新処理における更新データの転送処理の一例を示すフローチャートである。 本発明の実施例1を示し、プログラム更新処理における更新データの書込み処理の一例を示すフローチャートである。 本発明の実施例1を示し、プログラム更新処理における更新処理の一例を示すフローチャートである。 本発明の実施例1を示し、プログラム更新処理における終了処理の一例を示すフローチャートである。 本発明の実施例2を示し、プログラム更新処理における更新データの書込み処理の一例を示すフローチャートである。 本発明の実施例2を示し、プログラム更新処理における更新データの書込み処理の一例を示すフローチャートである。 本発明の実施例2を示し、プログラム更新処理における更新処理の一例を示すフローチャートである。 本発明の実施例3を示し、更新進捗のデータを保存する処理の一例を示すフローチャートである。 本発明の実施例4を示し、更新進捗のデータを不揮発性メモリに保存する処理の一例を示す図である。 本発明の実施例5を示し、車両に搭載される電子制御システムの一例を示すブロック図である。 本発明の実施例5を示し、プログラム更新処理の一例を示すタイムチャートである。
以下、本発明の実施形態を添付図面に基づいて説明する。
本発明における実施例1を、図1~図4Cを用いて説明する。
図1は、本発明の電子制御装置を含む電子制御システムの構成の一例を示すブロック図である。電子制御装置1は、電源2と、演算部3と、通信インターフェース4と、一時記憶装置5、不揮発性メモリ6を有する。
前記不揮発性メモリ6は、データ格納領域7とプログラム格納領域8を有し、プログラム格納領域8は、さらにプログラム更新処理部9とプログラム更新対象部10を有する。
プログラム更新対象部10は、更新プログラムを書き込むスタンバイ領域(図示省略)と、車両を制御するためのプログラム(制御プログラム)を格納するアクティブ領域(図示省略)を含む。更新プログラムの書込みが完了した後に、所定のタイミング(例えば、次回の起動時)でスタンバイ領域をアクティブ領域に切替えて、更新されたプログラムで車両の制御を実施する。
車両に搭載される電子制御装置1は、バッテリー電源、ACC(ACCESARY)電源などの給電装置11から電源2に対して給電される。電子制御装置1は、外部装置12から通信インターフェース4を経由して更新プログラムを受信する。また、更新処理に必要な制御信号は、通信インターフェース4経由で外部装置12と電子制御装置1で送受信される。
また、通信インターフェース4は、イグニッションの情報を出力する外部ECU13に接続されて、イグニッションの情報(ON又はOFF)を取得する。なお、通信インターフェース4と外部装置12及び外部ECU13はLAN(Local Area Netwaok)やCAN(Controller Area Network)やFlexray等を介して接続されてもよい。
外部装置12は、無線通信部(図示省略)を有し、無線ネットワークを介して配信装置から更新プログラムを受信して、電子制御装置1へ送信する。
演算部3は、プロセッサを含む演算装置で構成される。演算部3は、プログラム更新処理部9を実行することで、受信した更新プログラムをプログラム更新対象部10に書込み、更新処理に付随するデータを一時記憶装置5と、データ格納領域7に書込む。
プログラム更新処理部9は、プログラムとして不揮発性メモリ6から演算部3に読み込まれて実行される。プログラム更新処理部9は、不揮発性メモリ6のプログラム更新対象部10のスタンバイ領域に更新プログラムを書込んで、プログラム更新処理を管理する。
電子制御装置1は、プログラムの更新中に電源2への給電が停止又は再開された後は、外部装置12より更新再開要求を受信する。電子制御装置1は更新再開要求に対して、更新再開位置の応答を返すことで、外部装置12からは再開位置から更新プログラムが配信される。
一時記憶装置5は、揮発性の記憶媒体で構成することができ、例えば、DRAMやSRAMを採用することができる。一時記憶装置5には、更新バッファ50が設定される。
演算部3は、各機能部のプログラムに従って処理を実行することによって、所定の機能を提供する機能部として稼働する。例えば、演算部3は、更新処理プログラムに従って処理を実行することでプログラム更新処理部9として機能する。他のプログラムについても同様である。さらに、演算部3は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
プログラム更新処理について、図2のタイムチャートを用いて説明する。図2は、電子制御装置1の給電状態101と、車両の電源状態102と、プログラム更新処理103aと、更新進捗のデータの保持タイミング104と時刻の関係を示している。
電子制御装置1の給電状態101は、電源2への給電の有無を示している。例えば、バッテリー電源であれば、外部装置12(又は外部ECU13)から通信インターフェース4経由で電源のON又はOFFの情報指令を受信することにより、電源2への給電が制御される。ACC電源であれば、そのON又はOFFに連動して電源2への電力の供給が制御される。
車両の電源状態102は、電源2への給電が安定しているか否かを示している。例えば、外部ECU13から取得したIGN(イグニッション)の情報がONの状態であれば、バッテリーは充電が開始され、ACC電源は切断されないため安定した状態と判定できる。またEV(Electric Vehicle)車であれば、充電スタンドでバッテリーを充電していれば、安定した状態と言える。なお、車両の給電状態については電子制御装置1において取得しなくてもよい。
プログラム更新処理103aは、外部装置12から更新プログラムが転送されている場合に、プログラムの更新を実施するか否かを示している。更新進捗のデータの保持タイミング104は、更新プログラムの書込みが正常に完了した領域(又は部分)を示す情報を、保持するタイミングを示している。なお、後述するように、更新進捗のデータは、更新対象のプログラムのうち、プログラム更新対象部10への書込みが完了した位置(又は部分)を特定する情報である。
プログラム更新処理部9は、更新プログラムの書込みが正常に完了した領域(又は位置)を示す情報としての更新進捗のデータを監視することで、更新処理の進捗状況を管理する。
図2の時刻T1は、給電装置11から電源2への給電が開始された状態を示す。時刻T1において、車両の電源状態102は不安定であるが、電子制御装置1は給電状態であるのでプログラム更新処理103aを実施する。
プログラム更新処理103aは、所定のサイズ単位で更新プログラムの書込みを実施し、不揮発性メモリ6のプログラム更新対象部10に書込みが完了した単位で更新進捗のデータをデータ格納領域7に保持する。
図2の時刻T2は、車両の電源状態102が安定した状態を示す。電子制御装置1は、車両の電源状態に関わらず、プログラム更新処理と、更新進捗のデータの保持を、時刻T1と同様に実施する。
図2の時刻T3は、車両の電源状態102が安定から不安定の状態に遷移した状態である。このときも、プログラム更新処理と、更新進捗のデータの保持を、時刻T1と同様に実施する。
図2の時刻T4は、電源2への給電が停止された状態である。時刻T4において、プログラムの更新中であった場合は、プログラム更新対象部10に不正データが残留する。ただし、更新進捗のデータは不揮発性メモリ6のデータ格納領域7に保存された状態となる。時刻T4では、不揮発性メモリ6のデータ格納領域7に格納された更新進捗のデータは、前回正常に更新処理が完了した領域(又は部分)のアドレス(又はサイズあるいは識別子)が保持される。
図2の時刻T5は、電源2への給電が再開された状態である。時刻T5において、プログラム更新処理は、給電が停止される前に保存した、更新進捗のデータの次の領域から再開される。
再開の際には、電子制御装置1は、更新プログラムの書込みが正常に完了した領域の次の領域から更新を再開するため、給電が停止される前にプログラム更新対象部10に残留した不正データは正常データで上書きされる。
図2に記載のプログラム更新処理103aを実現するための、プログラム更新処理部9の詳細な処理を図3、図4A~図4Cを用いて説明する。
図3は、プログラム更新処理における更新データの転送処理の一例を示すフローチャートで、図4Aはプログラム更新処理における更新データの書込み処理の一例を示すフローチャートである。図4B、図4Cは、図4Aのフローチャートのサブルーチンである。プログラム更新処理部9は、図3、図4Aに記載のフローチャートを並列実行する。
実施例1において、プログラム更新中に給電の停止及び再開が発生しない、通常のプログラム更新処理の一例を以下に示す。
更新プログラムのダウンロードは、電子制御装置1が外部装置12から更新要求を受信することをトリガとして開始する。プログラム更新処理部9は、図3のステップ201、202に記載のように、外部装置12から通信メッセージを受信すると、受信したメッセージ種別を判定し、メッセージ種別に応じた処理を実行する。
メッセージ種別は、外部装置12と電子制御装置1間の、通信規格のフレーム、又はプロトコルのヘッダ、又はペイロードに含まれる情報によりプログラム更新処理部9で判定可能である。
メッセージ種別が更新要求であった場合は、図3のステップ203に記載のように、プログラム更新処理部9が更新状態の判定を実施する。更新状態は、図4Aに記載の更新データ書込み処理が実施中か否かを示す状態であり、更新状態が未実施であれば、プログラム更新処理部9は図3のステップ204に記載のように、外部装置12に更新準備完了の応答を送信する。その後、外部装置12からは、更新データを含む、更新データ転送要求が送信される。
更新データは、更新プログラムの先頭アドレスから所定のサイズ毎に順次送信される。
また、外部装置12と電子制御装置1間の通信規格に基づいたデータサイズ(固定長)で送信される。更新データのサイズは、例えば、通信規格がCANであれば8byte、CANFDであれば64byte、Ethernetであればペイロードからプロトコルのヘッダサイズを除いたデータ量である。
プログラム更新処理部9は、更新データ転送要求を受信すると、図3のステップ206aの記載のように、更新データを取得して更新バッファ50に格納する。更新バッファ50は、更新データを一時的に格納するためのバッファであり、一時記憶装置5に予め設定される。
また、更新バッファ50に対しては、図3に記載の更新データ転送フローチャートでエンキューし、図4Aに記載の更新データ書込みフローチャートでデキューされるため、循環バッファ(リングバッファ)構造として読み込み位置と書込み位置を制御すると、更新データのソート処理が不要となり演算量を低減させることができる。
プログラム更新処理部9は、更新データを一時記憶装置5の更新バッファ50へ格納した後は、図3のステップ207~209の記載のように、次回の更新バッファ50書込み位置の更新と、バッファリングサイズの加算を実施し、外部装置12に次データ要求の応答を返す(209)。上記ステップ208では、プログラム更新処理部9が、バッファリングサイズに、更新バッファ50に格納した更新データのサイズを加算する。
更新データ転送要求は、更新プログラムの転送が完了するまで継続されるため、図3のステップ206a~209に記載の処理は繰返して実行される。ただし、外部装置12との通信形態によっては、図3のステップ209に記載の応答を返さなくても、更新データ転送要求が繰返し送信される場合がある。その場合は、都度の応答送信はしなくてもよい。
更新プログラムの転送が完了すると、外部装置12から転送完了通知が送信される。プログラム更新処理部9は、転送完了通知を受信すると、図3のステップ210、211に記載のように、転送完了フラグをONとし(210)、外部装置12に応答を送信する(211)。
更新バッファ50に格納された更新データを、プログラム更新対象部10に書き込む処理は、図4Aに記載の更新データ書込み処理で実施する。通常のプログラム更新処理では、プログラム更新処理部9が図4Aのステップ304aに記載のバッファリングサイズを判定する。プログラム更新処理部9は、一時記憶装置5に格納した更新データのバッファリングサイズが所定のサイズ以上であれば、図4のステップ308に記載の更新処理を実施する。
ステップ304aの判定で使用される所定のサイズは、更新プログラムの分割単位、又は外部装置12より受信する更新データのサイズ単位、又は演算部3の仕様に基づく不揮発性メモリ6への書込み単位、又はそれ以外の所定のサイズである。
上記所定のサイズは、プログラム更新処理部9、又はデータ格納領域7に予め定義しておいてもよいし、外部装置12からの更新要求で通知される場合は、通知されたサイズでもよい。
また、不揮発性メモリ6への書込み単位は、例えば、ブロックのサイズや、ページのサイズ等、不揮発性半導体の種類に応じて予め設定された書込みサイズを所定のサイズとすることができる。
図4Aのステップ308記載の更新処理では、図4Bのステップ309、310aに記載のように、プログラム更新処理部9がプログラム更新対象部10への書込み開始アドレスと、書込みサイズの決定を実施する。プログラム更新処理部9が書き込むサイズは上述の所定のサイズで実施される。
図4Bのステップ311に記載の更新データ書込み処理では、プログラム更新処理部9が一時記憶装置5の更新バッファ50から書込みサイズ分のデータを読み込み、不揮発性メモリ6のプログラム更新対象部10の書込み開始アドレスから順次書込みを実施する。
更新データの書込み後は、図4Bのステップ312、313に記載のように、プログラム更新処理部9が、更新進捗のデータを更新し、不揮発性メモリ6のデータ格納領域7に更新進捗のデータを保存する。
更新進捗のデータは、更新プログラムの書込みが正常に完了した領域を示す情報であり、外部装置12と電子制御装置1間で共通利用が可能な情報である。例えば、更新プログラムの先頭からのバイト数と、更新プログラムのアドレスである。
プログラム更新処理部9は、更新進捗のデータを保存した後に、図4Bのステップ314、315に記載のように、更新バッファ50の読み込み位置の更新と、バッファリングサイズの減算を実施し、図4Aのステップ308に記載の更新処理を終了する。
ステップS314では、プログラム更新処理部9が、更新バッファ50の読み込み位置に、読み込んだデータサイズを加算して更新する。また、ステップS315では、プログラム更新処理部9は、読み出したデータサイズを減算してバッファリングサイズを更新する。その後、図4Aのステップ304a、308に記載の処理は、バッファリングサイズが所定のサイズ未満となるまで繰返して実施される。
バッファリングサイズが所定のサイズ未満となるのは、外部装置12からの更新データが到着していない場合、又は更新プログラムの転送は完了しているが、所定のサイズ単位とならない最後の更新データが、更新バッファ50に格納されている場合である。
前者の場合は、外部装置12から転送完了通知を受信していないため、転送完了フラグがOFFである。そのため、プログラム更新処理部9は、図4Aのステップ305に記載の判定処理により、バッファリングサイズが、所定のサイズ以上となるまで監視する処理となる。
一方、後者の場合は、転送完了通知を外部装置12から受信済みであるため、転送完了フラグがONである。そのため、プログラム更新処理部9は、図4Aのステップ306に記載のように、最後の更新データの書込みを実施する。更新データの書込み完了後は、図4Aのステップ307、図4Cのステップ316~321に記載の、終了処理を実施して更新データ書込みフローチャートを終了する。
図4Cは、プログラム更新処理部9で行われる終了処理の一例を示すフローチャートである。プログラム更新処理部9は、まず、転送完了フラグを「OFF」に設定する(316)。次に、プログラム更新処理部9は、更新中止フラグを「OFF」に設定する(317)。
プログラム更新処理部9は、一時記憶装置5のバッファの読み込み位置と書込み位置を同じアドレスにリセットする。そして、プログラム更新処理部9は、バッファのデータサイズをクリアする(316)。
プログラム更新処理部9は、不揮発性メモリ6のデータ格納領域7に格納された更新進捗のデータをクリアし(350)、更新状態を「未実施」にリセットする(321)。上記処理により、プログラム更新処理を完了する。
実施例1において、プログラム更新中に給電の停止又は再開が発生した場合のプログラム更新処理の一例を以下に示す。
図4Aに記載の更新データ書込み処理では、電源2に給電が継続している間、更新データの書込みを継続する。そのため、図4Bのステップ311に記載の処理において、プログラム更新処理部9が更新データを書込んでいる期間に給電が停止した場合は、プログラム更新対象部10に不正データが残留する。ただし、図4Bのステップ313に記載の処理により、更新進捗のデータは不揮発性メモリ6のデータ格納領域7に保存されている状態となっている。
給電再開後は、外部装置12から更新再開要求が送信されるため、プログラム更新処理部9は、図3のステップ212、213に記載のように、不揮発性メモリ6のデータ格納領域7に保存されている更新進捗のデータを読み込み、外部装置12に更新再開位置の応答を送信する。
更新再開位置は、データ格納領域7に保存されている更新進捗のデータの次の領域である。更新進捗のデータは、更新プログラムの書込みが正常に完了した領域を示す情報、かつ外部装置12と電子制御装置1間で共通利用が可能な情報であるため、外部装置12は、書込み未完了の領域から更新プログラムの配信を実施できる。
プログラム更新処理部9が更新再開位置の応答を送信した後は、外部装置12から更新要求が送信されるため、上述した通常のプログラム更新処理と同様に、図3のステップ204で更新準備完了の応答を送信すると、更新データを含む更新データ転送要求が外部装置12から送信される。外部装置12は、更新再開前に更新プログラムの書込みが正常に完了した次の領域から更新データを順次送信する。プログラム更新処理部9は、図3のステップ206a~209に記載の処理を実施して、受信した更新データをバッファに蓄積する。
図4Aに記載の更新データ書込み処理では、給電が停止したときにプログラム更新対象部10に残留した不正データに更新データを上書きして、プログラム更新処理を続行する処理を実施する。
プログラム更新処理部9は、まず、図4Aのステップ301に記載のように、データ格納領域7から更新進捗のデータを読み込み、通常のプログラム更新と同様に、図4Aのステップ308と、図4Bに記載の更新処理を実施する。
更新処理では、図4Bのステップ309記載のように、プログラム更新処理部9が書込み開始アドレスの決定を実施する。書込み開始アドレスは、プログラム更新対象部10に残留した不正データを上書きするための領域の先頭とする必要がある。そのため、プログラム更新処理部9は、書込み開始アドレスは、プログラム更新対象部10の先頭アドレスに、更新進捗のデータサイズを加算した領域の次の領域とする。
また、プログラム更新処理部9は、図4Bのステップ311に記載の更新データ書込み処理では、プログラム更新対象部10に残留した不正データを上書きするためのデータを書き込む必要がある。
これは前述のように、外部装置12から、更新プログラムの書込みが正常に完了した次の領域から順次更新データが送信されるため、所望のデータが一時記憶装置5の更新バッファ50に格納される。そのため、通常のプログラム更新処理と同様に、プログラム更新対象部10は、更新バッファ50から書込みサイズ分のデータを読み込み、プログラム更新対象部10の書込み開始アドレスから順次書込みを実施すればよい。以降は、上述した通常(給電停止及び再開のない)のプログラム更新処理と同様の処理を実施し、プログラム更新を完了する。
実施例1において、プログラム更新中にキャンセル要求を受信した場合のプログラム更新の中止処理を以下に示す。
プログラム更新処理部9は、プログラム更新中に外部装置12からキャンセル要求を受信した場合、図3のステップ214、215記載のように、更新中止フラグをONとして、外部装置12に応答を送信する。図4Aに記載の更新データ書込み処理では、ステップ303に記載のように、プログラム更新処理部9は更新中止フラグの判定処理を実施し、図4Aのステップ308に記載の更新処理後に、更新中止フラグがONであれば、更新データ書込み処理を終了する。
ただし、更新プログラムを書き込む所定のサイズが大きい場合は、図4Bの更新処理の中断に時間がかかり、その間に外部装置12から更新要求を受信する可能性がある。そのため、図4Aのステップ302、図4Cのステップ321の記載のように、プログラム更新処理部9は、更新データ書込み処理の「実施中」、又は「未実施」の状態であるかを管理する。
更新処理が実施中であれば、図3のステップ203の記載のように、プログラム更新処理部9が、外部装置12に更新不可の応答を送信することで、外部装置12からの更新要求を拒否する。更新データ書込み処理の中断が完了した後は、更新状態が未実施となるため、プログラム更新処理部9は再度、更新要求を受信した場合にはプログラムの更新処理尾が可能となる。
以上、実施例1によれば、電子制御装置1は、プログラムの更新中に給電が停止し、不揮発性メモリ6のプログラム更新対象部10に不正データが残留した場合においても、給電が再開された場合にはデータ格納領域7に格納された更新進捗のデータに基づいてプログラム更新対象部10の書込みの再開位置を決定できる。電子制御装置1は、プログラム更新対象部10内の不正データを更新データで上書きして、プログラムの更新処理を続行することが可能となる。これにより、電子制御装置1が、電源状態を確実に取得できない構成であってもプログラムの更新処理が実施可能となる。
前記実施例1において、更新データの所定のサイズは予め定義された値、又は外部装置12からの更新要求で通知される値としており、1回のプログラム更新処理においては固定値である。プログラムの分割単位や、不揮発性メモリ6への書換え単位など、1回のプログラム更新処理で所定のサイズが固定である場合は実施例1の手法でもよいが、更新データのサイズは、通信形態によっては固定値であるとは限らない。
そのため、実施例2では、所定のサイズが更新データサイズ単位(可変長)であり、更新データ転送要求に含まれる更新データのサイズが可変であっても、更新データサイズ単位での書込みを可能とするプログラム更新処理を実現する。
実施例2におけるプログラム更新処理部9の詳細な処理を、図5、図6A、図6Bを用いて説明する。図5は実施例2における更新データ転送処理の一例を示すフローチャートである。図6は実施例2における更新データ書込み処理の一例を示すフローチャートである。
図5に記載の更新データ転送処理は、ステップ206bに記載の処理が、前記実施例1の図3のステップ206aと異なる。実施例2では、更新バッファ50に、1回で受信する更新データのデータ長と、更新データを順次格納する。
図6Aに記載の更新データ書込み処理では、まずステップ304b記載のバッファリングサイズの判定処理が実施例1の図4Aに示したステップ304aと異なる。実施例2では、バッファリングサイズが0以外であれば、図6のステップ308に記載の更新処理を実施する。
更新処理では、図6Bのステップ310bに記載の処理が前記実施例1の図4Bのステップ310aと異なる。図6Bのステップ310bに記載の処理では、更新バッファ50から1回で受信する更新データのデータ長を読み出し、読み出したデータ長を所定のサイズとする。これにより、1回で受信する更新データのサイズが変化した場合でも、更新データサイズでの書込みが可能となる。
実施例2では、所定のサイズ単位とならない最後の更新データは存在しないため、図6Aのステップ304bに記載の処理において、バッファリングサイズが0の場合は、前記実施例1の図4Aに示したステップ306に記載の最終データの書込み処理は不要である。その他の構成については、前記実施例1と同様である。
以上、実施例2によれば、前記実施例1の効果に加えて、更新データサイズのデータ長が可変であっても、更新データサイズ単位のプログラムの書込み処理が可能となる。
前記実施例1、実施例2において、更新データの所定のサイズが小さい場合、更新進捗データの不揮発性メモリ6への保存回数が増加し、不揮発性メモリ6の書換え回数上限への到達時間が短くなる。そのため、実施例3では、更新進捗のデータの書込み回数を低減したプログラム更新処理を提供する。
実施例3は、前記実施例1の図4B、前記実施例2の図6Bに示したステップ313に記載の処理において、更新進捗のデータを一時記憶装置5に格納するという点が、前記実施例1、実施例2と異なる。
しかし、一時記憶装置5のデータは、上述のように揮発性の記憶媒体で構成されており、給電が停止したときに消去されるため、不揮発性メモリ6に定期的に保存する必要がある。実施例3における、更新進捗のデータの保存処理について、図7を用いて説明する。
図7に記載の更新進捗のデータを保存処理は、前記実施例1の図4A~図4C、前記実施例2の図6に記載の更新データ書込み処理とは独立して実施する。また、更新進捗のデータの保存処理は、プログラム更新処理部9に含まれる。
なお、実施例3では、前記実施例1、2に示した更新進捗のデータの読み出し処理は、不揮発性メモリ6のデータ格納領域7に代わって一時記憶装置5から読み出す処理とする。
まず、プログラム更新処理部9は、図7のステップ401に記載のように、不揮発性メモリ6への書込み条件の判定を実施し、条件が一致していればステップ402へ進んで、更新進捗のデータを一時記憶装置5から読み出して不揮発性メモリ6に保存する。一方、プログラム更新処理部9は、書き込み条件が所定の書き込み条件と不一致であれば、再度、書込み条件を満たすかを監視する。
なお、書込み条件は、予め定義した周期でもよいし、外部装置12から受信する制御信号に特定の値が含まれている場合でもよい。
以上、実施例3によれば、前記実施例1、2の効果に加えて、不揮発性メモリ6に更新進捗のデータを書き込む回数を低減することが可能となり、不揮発性メモリ6の利用期間を増大することができる。なお、実施例3は実施例1、又は実施例2と組合わせ実施可能である。
前記実施例1、実施例2において、更新データの所定のサイズが小さい場合、更新進捗データの不揮発性メモリ6への保存回数が増加する。不揮発性メモリ6では、更新進捗のデータを特定の固定領域に保存すると、その領域については、書換え回数上限への到達時間が短くなる。そのため、実施例4では、不揮発性メモリ6内で更新進捗のデータを格納する領域を動的に変更するプログラムの更新処理を提供する。
実施例4では、前記実施例1の図4B、前記実施例2の図6Bのステップ313に記載の更新進捗のデータの書込み処理、又は前記実施例3の図7のステップ402に記載の更新進捗のデータの書込み処理において、更新進捗のデータを格納する領域を不揮発性メモリ6内で動的に変更(切替え)する。実施例4における、更新進捗のデータの保存処理について、図8を用いて説明する。図8は、更新進捗のデータを不揮発性メモリに保存する処理の一例を示す図である。
実施例4では、図8のデータ格納領域7-A、7-Bとして記載したように、データ格納領域7を。Active領域とStandby領域の2つの領域に分割する。Aceive領域は、データ格納領域7に書込み要求があった場合に、データ書込みを実施する領域である。このとき、Standby領域への書込みは実施しない。
図8において、データ格納領域7は、Step1~Step3の3段階で領域7-A、7-Bが動的に変化する例を示す。
図8に記載のStep1は、Active領域(7-A)に各種データが保存されており、Standby領域(7-B)のデータは消去されている状態である。
この状態から図8のStep2で、図中「A2」のデータをデータ格納領域7へ保存する場合、プログラム更新処理部9は、最後の保存データ「C1」の次の領域に保存する。
同じデータ種別である「A1」が保存されている領域への上書きは実施しない。以降のデータについても、プログラム更新処理部9は、最後の保存データの次の領域に保存する。
Active領域の保存データ量が、図8に記載の領域切替え閾値THaを超過すると、プログラム更新処理部9は、図8に記載のStep3で、Active領域とStandby領域の切替えを実施する。
切替えの際には、プログラム更新処理部9が旧Active領域(7-A)のデータ種別毎の最新データを、新Active領域(7-B)にコピーし、旧Active領域(7-A)のデータは消去する。
その後、プログラム更新処理部9は、新Active領域(7-B)に対して、旧Active領域と同様の方法で更新進捗のデータ保存を実施する。新Active領域(7-B)において、図8に記載の領域切替え閾値THaを超過した場合、プログラム更新処理部9は、再度、Active領域とStandby領域の切替えを実施する。
以上、実施例4によれば、不揮発性メモリ6のデータ格納領域7において特定領域の書換え回数を低減することが可能となり、不揮発性メモリ6の利用期間を増大することができる。なお、実施例4は実施例1、又は実施例2、又は実施例3と組合わせて実施可能である。
前記実施例1、実施例2、実施例3、実施例4では、無線によるプログラム更新は、外部装置12から更新再開要求を受信して、電子制御装置1がプログラムの更新を再開する。
有線によるプログラム更新では、専用装置(例えば、ダイアグノスティックス)を車両に接続して更新プログラムを転送するが、周知又は公知の専用装置には更新再開の機能は搭載されていない。そのため、プログラム更新中に電子制御装置1への給電が停止した場合は、プログラム更新を初めからやり直す必要がある。
また、有線によるプログラム更新処理は無線と比較して高速であるため、給電が停止されない期間でプログラム更新を実施し、給電の停止が予期できる場合はプログラムの更新を停止して、再度給電が安定したときにプログラムの更新をやり直したほうが、更新失敗のリスクを低減することができる。
また、有線によるプログラム更新処理は、車両の整備工場などで専用装置14の操作を習得した作業者が実施するため、プログラムの更新処理が中断したことを的確に認識して、再度プログラムの更新を実施することができる。
以上より実施例5では、無線によるプログラム更新は、前記実施例1、実施例2、実施例3、実施例4に記載のプログラム更新処理を実施するが、有線によるプログラム更新は、給電が停止されない間に実施し、給電の停止が予測される場合は、プログラムの更新処理を停止する。
図9は、車両に搭載された電子制御装置を含む電子制御システムの一例を示すブロック図である。実施例5の電子制御装置1には、前記実施例1の図1に示した外部ECU13に代わって専用装置14が通信インターフェース4に有線で接続される。上述したように、専用装置14はダイアグノスティックスなどで構成される。その他の構成は、前記実施例1と同様である。
専用装置14を用いた有線によるプログラム更新処理について、図9のタイムチャートを用いて説明する。なお、図2に記載のタイムチャートと同様の内容は省略する。
図10は、電子制御装置の給電状態101と、車両の電源状態102と、前記実施例1に示したプログラム更新処理103aと、有線によるプログラム更新処理の第1の処理103bと、有線によるプログラム更新処理の第2の処理103cと時刻の関係を示している。なお、プログラム更新処理の第2の処理103cは、プログラム更新処理の第1の処理103bの変形例を示しており、同時に実行される処理ではない。
外部装置12からの更新要求が有線、又は無線であるかの判定は、通信規格のフレーム、又はプロトコルのヘッダ、又はペイロードに含まれる情報により判定可能である。もしくは、外部装置12と電子制御装置1との間で、無線によるプログラム更新、有線によるプログラム更新、それぞれ専用のセッションを予め確立してもよい。
図10の時刻T1は、車両の電源状態102が不安定であるため、電子制御装置1は、有線によるプログラム更新処理の第1の処理103bや、有線によるプログラム更新処理の第2の処理103cは実施しない。例えば、電子制御装置1は、外部装置12からの更新要求や、更新データ転送要求を破棄し、又は拒否の応答を返す。
また、プログラム更新処理部9からプログラム更新対象部10への書込みを中止する。
車両の電源状態102は、実施例1、実施例2、実施例3、実施例4では取得しなくてもよいが、実施例5では取得する必要がある。
図10の時刻T2では、車両の電源状態102が安定しているため、有線によるプログラム更新処理の第1の処理103bと、有線によるプログラム更新処理の第2の処理103cを実施する。有線によるプログラム更新処理は、更新再開の機能がないため更新進捗のデータは保存しなくてもよい。
図10の時刻T3は、車両の電源状態102が安定から不安定に遷移するため、時刻T1と同様に、有線によるプログラム更新処理の第1の処理103bは中断する。ただし車両の電源状態102が不安定であっても、安定から不安定の状態に遷移後の一定時間(例えば、T3からT3Aの間)は、給電が保証されている場合がある。
例えば、イグニッションがOFFとなった後の数分間は電源2への給電が保証されている。この場合は、有線によるプログラム更新処理の第2の処理103cに記載のように、プログラム更新処理を継続する。
図10の時刻T3Aは、給電の保障時間が終了した状態であるため、時刻T1と同様に、有線によるプログラム更新処理の第2の処理103cを停止する。給電の保障時間は電子制御装置1で予め定義しておき、車両の電源状態が安定から不安定状態に遷移した後(T3)の時間をカウントし、カウントが定義値(T3A)を超過したことを条件としてプログラム更新処理を停止すればよい。
以上実施例5によれば、有線によるプログラム更新と、無線によるプログラムの更新処理の内容を切替えて、それぞれのケースに適したプログラム更新が実施可能である。なお実施例5は、実施例1、又は実施例2、又は実施例3、又は実施例4と組合わせて実施可能である。
<結び>
以上のように、上記実施例の電子制御装置及び電子制御システムは、以下のような構成とすることができる。
(1)外部からの給電がON又はOFFにされる電源(2)と、外部装置(13)と通信する通信インターフェース(4)と、プログラムとデータを保持する不揮発性メモリ(6)と、前記プログラムを実行する演算部(3)と、を有する車両の電子制御装置(1)であって、前記不揮発性メモリ(6)は、前記プログラムを格納するプログラム格納領域(8)と、データを格納するデータ格納領域(7)を含み、前記プログラム格納領域(8)は、更新処理を行うプログラム更新処理部(9)と、更新プログラムを格納するプログラム更新対象部(10)を有し、前記演算部(3)は、前記プログラムとして前記プログラム更新処理部(9)を読み込んで実行し、前記通信インターフェース(4)で受信した更新プログラムを所定サイズに分割して、前記分割された更新プログラムを前記プログラム更新対象部(10)に書込み、前記演算部(3)は、前記書込みが完了した前記更新プログラムの位置を示す更新進捗のデータを前記データ格納領域(7)に格納することを特徴とする電子制御装置。
上記構成により、電子制御装置1は、プログラムの更新中に給電が停止して、不揮発性メモリ6のプログラム更新対象部10に不正データが残留した場合においても、給電が再開された場合にはデータ格納領域7に格納された更新進捗のデータに基づいてプログラム更新対象部10の書込みの再開位置を決定できる。電子制御装置1は、プログラム更新対象部10内の不正データを更新データで上書きして、プログラムの更新処理を続行することが可能となる。これにより、電子制御装置1が、電源状態を確実に取得できない構成であってもプログラムの更新処理が実施可能となる。
(2)上記(1)に記載の電子制御装置であって、前記演算部(3)は、前記電源(2)への給電がOFFとなって書込みが中断した後に、前記電源(2)への給電がONとなった場合に、前記データ格納領域(7)から前記更新進捗のデータを読み込んで、前記書込みが完了した領域の次の領域又は前記書込みが中断した領域の先頭から前記書換えを再開することを特徴とする電子制御装置。
上記構成により、給電が再開された場合には演算部3がデータ格納領域7に格納された更新進捗のデータに基づいてプログラム更新対象部10における書込みの再開位置を決定し、不正データを更新データで上書きして、プログラムの更新処理を続行することが可能となる。
(3)上記(1)に記載の電子制御装置であって、前記通信インターフェース(4)は、イグニッションの状態を示す情報を受信し、前記演算部(3)は、前記イグニッションの状態を示す情報がOFFであっても前記電源(2)に給電されている間は、前記書込みを継続することを特徴とする電子制御装置。
上記構成により、イグニッションがOFFとなった後の数分間は電源2への給電が保証されている場合は、プログラム更新処理を継続することでプログラムの更新処理を推進することができる。
(4)上記(1)に記載の電子制御装置であって、前記所定サイズは、前記更新プログラムが分割して配信される場合は、前記分割の単位とすることを特徴とする電子制御装置。
上記構成により、電子制御装置1は、外部装置12から更新プログラムが分割されて送信される場合には、分割されたサイズを所定サイズとすることで、プログラム更新対象部10に書き込むことができる。
(5)上記(1)に記載の電子制御装置であって、前記所定サイズは、前記通信インターフェース(4)で受信したデータサイズ単位とすることを特徴とする電子制御装置。
上記構成により、電子制御装置1は、通信インターフェース4で受信した更新プログラムのサイズを所定サイズとすることで、プログラム更新対象部10に書き込むことができる。
(6)上記(1)に記載の電子制御装置であって、前記所定サイズは、前記不揮発性メモリ(6)への書込み単位とすることを特徴とする電子制御装置。
上記構成により、電子制御装置1は、不揮発性メモリ6への書込み単位を所定サイズとすることで、プログラム更新対象部10への書込みを効率よく行うことができる。
(7)上記(1)に記載の電子制御装置であって、前記演算部(3)は、前記データ格納領域(7)内に設定した複数の領域を動的に切替えて前記更新進捗のデータを書き込むことを特徴とする電子制御装置。
上記構成により、電子制御装置1は、不揮発性メモリ6の複数の領域を切替えて書込みを行うことで、特定の個所(領域)に書込みが集中するのを抑制し、不揮発性メモリ6の利用期間を延長することができる。
(8)上記(1)に記載の電子制御装置であって、揮発性の記憶媒体で構成された一時記憶装置(5)をさらに有し、前記演算部(3)は、前記更新進捗のデータを前記一時記憶装置(5)に格納した後、所定のタイミングで前記データ格納領域(7)に書込むことを特徴とする電子制御装置。
上記構成により、更新データの所定サイズが小さい場合、更新進捗データの不揮発性メモリ6への書込み回数が増大し、不揮発性メモリ6の書換え回数上限への到達時間が短くなるのを抑制する。このため、揮発性の記憶媒体で構成された一時記憶装置5に更新進捗のデータを書き込んでから、所定のタイミングで不揮発性メモリ6のデータ格納領域7へ書き込むことで、不揮発性メモリ6への書込み回数を低減することが可能となる。
(9)外部からの給電がON又はOFFにされる電源(2)と、外部装置(13)と通信する通信インターフェース(4)と、プログラムとデータを保持する不揮発性メモリ(6)と、前記プログラムを実行する演算部(3)と、を有する電子制御装置(1)と、無線通信部を有して更新プログラムを受信して前記電子制御装置(1)に当該更新プログラムを送信する外部装置(13)と、を有する電子制御システムであって、前記不揮発性メモリ(6)は、前記プログラムを格納するプログラム格納領域(8)と、データを格納するデータ格納領域(7)を含み、前記プログラム格納領域(8)は、更新処理を行うプログラム更新処理部(9)と、更新プログラムを格納するプログラム更新対象部(10)を有し、前記演算部(3)は、前記プログラムとして前記プログラム更新処理部(9)を読み込んで実行し、前記通信インターフェース(4)が前記外部装置(13)から受信した前記更新プログラムを所定サイズに分割して、前記分割された更新プログラムを前記プログラム更新対象部(10)に書込み、前記演算部(3)は、前記書込みが完了した前記更新プログラムの位置を示す更新進捗のデータを前記データ格納領域(7)に格納することを特徴とする電子制御システム。
上記構成により、上記構成により、電子制御装置1は、プログラムの更新中に給電が停止して、不揮発性メモリ6のプログラム更新対象部10に不正データが残留した場合においても、給電が再開された場合にはデータ格納領域7に格納された更新進捗のデータに基づいてプログラム更新対象部10の書込みの再開位置を決定できる。電子制御装置1は、プログラム更新対象部10内の不正データを更新データで上書きして、プログラムの更新処理を続行することが可能となる。これにより、電子制御装置1が、電源状態を確実に取得できない構成であってもプログラムの更新処理が実施可能となる。
(10)上記(9)に記載の電子制御システムであって、前記演算部(3)は、前記電源(2)への給電がOFFとなって書込みが中断した後に、前記電源(2)への給電がONとなった場合に、前記データ格納領域(7)から前記更新進捗のデータを読み込んで、前記書込みが完了した領域の次の領域又は前記書込みが中断した領域の先頭から前記書換えを再開することを特徴とする電子制御システム。
上記構成により、給電が再開された場合には演算部3がデータ格納領域7に格納された更新進捗のデータに基づいてプログラム更新対象部10における書込みの再開位置を決定し、不正データを更新データで上書きして、プログラムの更新処理を続行することが可能となる。
(11)上記(9)に記載の電子制御システムであって、前記電子制御装置(1)に有線で接続された専用装置(14)をさらに有し、前記通信インターフェース(4)は、前記専用装置(14)から有線通信により前記更新プログラムを受信し、前記演算部(3)は、前記専用装置(14)から受信した場合には、前記更新プログラムを前記プログラム更新対象部(10)に書込むことを特徴とする電子制御システム。
上記構成により、外部装置12からの無線によるプログラム更新処理では、書込みが完了すると前記更新進捗のデータを不揮発性メモリ6へ書き込むが、専用装置14から更新プログラムを受信した場合には、そのまま不揮発性メモリ6のプログラム更新対象部10へ書き込むことで、プログラムの更新処理を迅速に行うことができる。
(12)上記(11)に記載の電子制御システムであって、前記通信インターフェース(4)は、イグニッションの状態を示す情報を受信し、前記演算部(3)は、前記イグニッションの状態がOFFの情報を受信した場合には、前記外部装置(13)からの更新プログラムの更新要求を拒否することを特徴とする電子制御システム。
上記構成により、イグニッションの状態を示す情報がOFFとなった場合には、前記外部装置(13)からの更新プログラムの更新要求を拒否することで、専用装置14からのpプログラムの更新処理を実行することができる。
(13)上記(12)に記載の電子制御システムであって、前記演算部(3)は、前記イグニッションの状態がOFFの情報を受信した場合には、前記OFFの情報を受信してからの時間をカウントし、前記時間が所定時間になるまで前記書込みを継続した後、前記専用装置からの前記書込みを停止することを特徴とする電子制御システム。
上記構成により、イグニッションがOFFとなった後の数分間は電源2への給電が保証されている場合は、プログラム更新処理を継続することでプログラムの更新処理を推進することができる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。
例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組合わせても適用可能である。
また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、又は、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
1 電子制御装置
2 電源
3 演算部
4 一時記憶領域
5 通信インターフェース
6 不揮発性メモリ
7 データ格納領域
8 プログラム格納領域
9 プログラム更新処理部
10 プログラム更新対象部
11 外部給電装置
12 外部装置
13 外部ECU
14 専用装置

Claims (13)

  1. 外部からの給電がON又はOFFにされる電源と、
    外部装置と通信する通信インターフェースと、
    プログラムとデータを保持する不揮発性メモリと、
    前記プログラムを実行する演算部と、を有する車両の電子制御装置であって、
    前記不揮発性メモリは、
    前記プログラムを格納するプログラム格納領域と、データを格納するデータ格納領域を含み、
    前記電子制御装置は、
    更新処理を行うプログラム更新処理部と、
    更新プログラムを格納するプログラム更新対象部と、
    前記通信インターフェースを介して受信した前記更新プログラム、前記更新プログラムのデータ長を示すデータ長情報、及び前記通信インターフェースを介して受信した前記更新プログラムを前記プログラム更新対象部に書込む前のデータ量を示すバッファリングサイズを一時的に格納する一時記憶部とを有し、
    前記演算部は、
    前記プログラムとして前記プログラム更新処理部を読み込んで実行し、
    前記バッファリングサイズが0か否かを判定し、
    前記バッファリングサイズが0ではない場合は前記通信インターフェースで受信し前記一時記憶部に格納された更新プログラムを所定サイズに分割して、前記分割された更新プログラムを前記プログラム更新対象部に書込み、
    前記書込みが完了した前記更新プログラムの位置を示す更新進捗のデータを前記データ格納領域に格納し、前記データ長情報に基づき前記バッファリングサイズを減算し、
    前記バッファリングサイズが0である場合は、前記更新プログラムが全て書き込まれたか否かを判定することを特徴とする電子制御装置。
  2. 請求項1に記載の電子制御装置であって、
    前記演算部は、
    前記電源への給電がOFFとなって書込みが中断した後に、前記電源への給電がONとなった場合に、前記データ格納領域から前記更新進捗のデータを読み込んで、前記書込みが完了した領域の次の領域又は前記書込みが中断した領域の先頭から前記書込みを再開することを特徴とする電子制御装置。
  3. 請求項1に記載の電子制御装置であって、
    前記通信インターフェースは、
    イグニッションの状態を示す情報を受信し、
    前記演算部は、
    前記イグニッションの状態を示す情報がOFFであっても前記電源に給電されている間は、前記書込みを継続することを特徴とする電子制御装置。
  4. 請求項1に記載の電子制御装置であって、
    前記所定サイズは、前記更新プログラムが分割して配信される場合は、前記分割の単位とすることを特徴とする電子制御装置。
  5. 請求項1に記載の電子制御装置であって、
    前記所定サイズは、前記通信インターフェースで受信したデータサイズ単位とすることを特徴とする電子制御装置。
  6. 請求項1に記載の電子制御装置であって、
    前記所定サイズは、前記不揮発性メモリへの書込み単位とすることを特徴とする電子制御装置。
  7. 請求項1に記載の電子制御装置であって、
    前記演算部は、
    前記データ格納領域内に設定した複数の領域を動的に切替えて前記更新進捗のデータを書き込むことを特徴とする電子制御装置。
  8. 請求項1に記載の電子制御装置であって、
    揮発性の記憶媒体で構成された一時記憶装置をさらに有し、
    前記演算部は、
    前記更新進捗のデータを前記一時記憶装置に格納した後、所定のタイミングで前記データ格納領域に書込むことを特徴とする電子制御装置。
  9. 外部からの給電がON又はOFFにされる電源と、外部装置と通信する通信インターフェースと、プログラムとデータを保持する不揮発性メモリと、前記プログラムを実行する演算部と、を有する電子制御装置と、
    無線通信部を有して更新プログラムを受信して前記電子制御装置に当該更新プログラムを送信する外部装置と、を有する電子制御システムであって、
    前記不揮発性メモリは、
    前記プログラムを格納するプログラム格納領域と、データを格納するデータ格納領域を含み、
    前記電子制御装置は、
    更新処理を行うプログラム更新処理部と、
    更新プログラムを格納するプログラム更新対象部と、
    前記通信インターフェースを介して受信した前記更新プログラム、前記更新プログラムのデータ長を示すデータ長情報、及び前記通信インターフェースを介して受信した前記更新プログラムを前記プログラム更新対象部に書込む前のデータ量を示すバッファリングサイズを一時的に格納する一時記憶部とを有し、
    前記演算部は、
    前記プログラムとして前記プログラム更新処理部を読み込んで実行し、
    前記バッファリングサイズが0か否かを判定し、
    前記バッファリングサイズが0ではない場合は前記通信インターフェースが前記外部装置から受信し前記一時記憶部に格納された更新プログラムを所定サイズに分割して、前記分割された更新プログラムを前記プログラム更新対象部に書込み、
    前記書込みが完了した前記更新プログラムの位置を示す更新進捗のデータを前記データ格納領域に格納し、前記データ長情報に基づき前記バッファリングサイズを減算し、
    前記バッファリングサイズが0である場合は、前記更新プログラムが全て書き込まれたか否かを判定することを特徴とする電子制御システム。
  10. 請求項9に記載の電子制御システムであって、
    前記演算部は、
    前記電源への給電がOFFとなって書込みが中断した後に、前記電源への給電がONとなった場合に、前記データ格納領域から前記更新進捗のデータを読み込んで、前記書込みが完了した領域の次の領域又は前記書込みが中断した領域の先頭から前記書込みを再開することを特徴とする電子制御システム。
  11. 請求項9に記載の電子制御システムであって、
    前記電子制御装置に有線で接続された専用装置をさらに有し、
    前記通信インターフェースは、
    前記専用装置から有線通信により前記更新プログラムを受信し、
    前記演算部は、
    前記専用装置から受信した前記更新プログラムを前記プログラム更新対象部に書込むことを特徴とする電子制御システム。
  12. 請求項11に記載の電子制御システムであって、
    前記通信インターフェースは、
    イグニッションの状態を示す情報を受信し、
    前記演算部は、
    前記イグニッションの状態がOFFの情報を受信した場合には、前記外部装置からの更新プログラムの更新要求を拒否することを特徴とする電子制御システム。
  13. 請求項12に記載の電子制御システムであって、
    前記演算部は、
    前記イグニッションの状態がOFFの情報を受信した場合には、前記OFFの情報を受信してからの時間をカウントし、前記時間が所定時間になるまで前記書込みを継続した後、前記専用装置からの前記書込みを停止することを特徴とする電子制御システム。
JP2021569776A 2020-01-10 2020-12-08 電子制御装置及び電子制御システム Active JP7373590B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2020003143 2020-01-10
JP2020003143 2020-01-10
PCT/JP2020/045572 WO2021140810A1 (ja) 2020-01-10 2020-12-08 電子制御装置及び電子制御システム

Publications (2)

Publication Number Publication Date
JPWO2021140810A1 JPWO2021140810A1 (ja) 2021-07-15
JP7373590B2 true JP7373590B2 (ja) 2023-11-02

Family

ID=76788543

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021569776A Active JP7373590B2 (ja) 2020-01-10 2020-12-08 電子制御装置及び電子制御システム

Country Status (4)

Country Link
US (1) US20230027587A1 (ja)
JP (1) JP7373590B2 (ja)
DE (1) DE112020005173T5 (ja)
WO (1) WO2021140810A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7355073B2 (ja) * 2021-05-19 2023-10-03 トヨタ自動車株式会社 車両制御装置、車両、車両制御方法及びプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005132131A (ja) 2003-10-28 2005-05-26 Fujitsu Ten Ltd ソフトウェア更新装置およびソフトウェア更新方法
JP2015098311A (ja) 2013-11-20 2015-05-28 トヨタ自動車株式会社 電子制御装置、ソフトウェア書き換えシステム
JP2019016086A (ja) 2017-07-05 2019-01-31 日立オートモティブシステムズ株式会社 自動車用電子制御装置
JP2019020837A (ja) 2017-07-12 2019-02-07 株式会社デンソー 電子制御装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5997740B2 (ja) 2014-09-17 2016-09-28 クラリオン株式会社 車載機のオンライン更新方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005132131A (ja) 2003-10-28 2005-05-26 Fujitsu Ten Ltd ソフトウェア更新装置およびソフトウェア更新方法
JP2015098311A (ja) 2013-11-20 2015-05-28 トヨタ自動車株式会社 電子制御装置、ソフトウェア書き換えシステム
JP2019016086A (ja) 2017-07-05 2019-01-31 日立オートモティブシステムズ株式会社 自動車用電子制御装置
JP2019020837A (ja) 2017-07-12 2019-02-07 株式会社デンソー 電子制御装置

Also Published As

Publication number Publication date
US20230027587A1 (en) 2023-01-26
JPWO2021140810A1 (ja) 2021-07-15
WO2021140810A1 (ja) 2021-07-15
DE112020005173T5 (de) 2022-08-04

Similar Documents

Publication Publication Date Title
JP6780724B2 (ja) 車載更新装置、更新処理プログラム及び、プログラムの更新方法
US20180341476A1 (en) Software updating device, software updating system, and software updating method
JP6227794B2 (ja) 車両制御装置、リプログラミングシステム
JP2018063659A (ja) ソフトウェア更新装置、ソフトウェア更新方法、ソフトウェア更新システム
JP6525109B2 (ja) 制御装置、転送方法、およびコンピュータプログラム
US8817659B2 (en) Network mode switching method and serial data communication network
JP7373590B2 (ja) 電子制御装置及び電子制御システム
JP2020075580A (ja) プログラム更新システム及び更新処理プログラム
US11126422B2 (en) Program update system, control system, mobile body, program update method, recording medium
US6845916B2 (en) IC card having memory contents transfer control unit and method of storing data in IC card
CN113383390A (zh) 电子控制装置以及程序更新方法
JP7184855B2 (ja) ソフトウェア更新装置、ソフトウェア更新方法
WO2023241458A1 (zh) 车载控制器的软件升级方法、装置、设备和存储介质
JP2021015618A (ja) 車載更新装置、更新処理プログラム及び、プログラムの更新方法
JP2022171913A (ja) マスタ、センタ、および車両
CN113377286A (zh) 处理器系统
US20190286447A1 (en) Information processing device
WO2023136127A1 (ja) 中継装置、プログラム及び、プログラムの更新方法
US20230350667A1 (en) Electronic control device, reprogram execution method, and non-transitory computer readable storage medium
JP7323569B2 (ja) 車載ソフトウェア更新方法および車載システム
WO2021117463A1 (ja) 車両制御装置及びプログラム管理方法
US20220405087A1 (en) Vehicle control device and vehicle control system
JP7081205B2 (ja) 通信システム、マスタ装置
JP2972742B1 (ja) 制御プログラム更新方式
EP3971708B1 (en) In-vehicle device, software update method, non-transitory storage medium, vehicle, and electronic control unit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230307

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230420

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230703

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231023

R150 Certificate of patent or registration of utility model

Ref document number: 7373590

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150