JP2018018186A - 車両制御装置、車載ネットワークシステム - Google Patents

車両制御装置、車載ネットワークシステム Download PDF

Info

Publication number
JP2018018186A
JP2018018186A JP2016145945A JP2016145945A JP2018018186A JP 2018018186 A JP2018018186 A JP 2018018186A JP 2016145945 A JP2016145945 A JP 2016145945A JP 2016145945 A JP2016145945 A JP 2016145945A JP 2018018186 A JP2018018186 A JP 2018018186A
Authority
JP
Japan
Prior art keywords
control program
storage area
data
updated version
version control
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.)
Granted
Application number
JP2016145945A
Other languages
English (en)
Other versions
JP6571602B2 (ja
Inventor
中原 章晴
Akiharu Nakahara
章晴 中原
黒澤 憲一
Kenichi Kurosawa
憲一 黒澤
肇 荒木
Hajime Araki
肇 荒木
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 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 JP2016145945A priority Critical patent/JP6571602B2/ja
Publication of JP2018018186A publication Critical patent/JP2018018186A/ja
Application granted granted Critical
Publication of JP6571602B2 publication Critical patent/JP6571602B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】差分更新などの更新技術を採用した場合において、プログラム書換によって車両が動作できなくなる事態に至る可能性を抑制することができる手法を提供する。【解決手段】車両制御装置は、第1記憶領域と第2記憶領域を備え、いずれか一方の記憶領域に現行版制御プログラムを格納する。更新版制御プログラムを差分データなどの形で受け取り、これに基づき更新版制御プログラムを復元するとともに、もう一方の記憶領域に格納する。更新版制御プログラムを書き込んだ記憶領域を示すように管理データに記録する。【選択図】図3

Description

本発明は、車両制御装置に関するものである。
車両制御装置は、車両を制御する動作を実装した制御プログラムを実行する演算装置(例えばマイクロコンピュータ)、制御プログラムを格納するFlashROM(Read Only Memory)などの記憶装置を備える。制御プログラムの更新は、従来は、車両を販売店に持ち込み、専門の整備員がプログラム書込装置を車両に接続して実施することが多かった。しかし、クルマがインターネットに常時接続する、いわゆる「コネクティッド・ビークル」の急速な普及により、カーナビゲーションシステムにおける機能追加や地図データの更新にとどまらず、車両の制御プログラムについても、無線を介してユーザ自身の手で更新を実行させることが想定されるようになってきた。
その一方で、このようなシーンにおいて、万一プログラムの書込み処理中に何らかの要因(通信の途絶、ハードウェア異常発生など)で更新が失敗してしまった場合には、新バージョンはもちろんのこと、旧バージョンのソフトウェアも使用不能あるいは機能不全を来たすこととなり、最悪の場合、車両を動かせなくなることが想定される。また、ユーザ自身に更新を実行させる場合、プログラム更新によって車両が使用できなくなる期間を如何に低減するかは、利便性の観点から非常に重要となる。
下記特許文献1は、制御プログラムの現行バージョンを格納する主格納エリアと、更新バージョンを格納する副格納エリアとをFlashROMに設け、プログラム更新の際、そのエリアを交互に使用することにより、万一更新バージョンプログラムの書き込みに失敗しても、旧バージョンは引き続き使用可能としている。また同文献は、プログラム更新時間を短縮する手段として、全ての制御用ソフトウェアが共通に作動休止している期間を特定する手段を設け、その特定された共通休止作動期間にプログラム書換処理を実施することとしている。これにより、プログラム書換のために車両が使用できなくなる期間を低減ないし排除可能としている。
下記非特許文献1は、プログラムを差分更新する手法について記載している。同文献はBlock−Moveアルゴリズムという手法を提案している。同アルゴリズムにより差分データに基づき更新版プログラムを復元することができる。
特開2006−301960号公報
Walter F.Tichy,「The String−to−String Correction Probrem with Block Moves」,ACM Transactions on Computer Systems,ACM(Association for Computing Machinery),1984年11月, 第2巻,第4号,p.309−321
非特許文献1記載の技術は、プログラムを更新するために要する時間を短縮することができると考えられるので、特にユーザ自身がプログラム更新作業を実施する際には、ユーザ負担を抑える観点から有用である。ただし同技術を用いるに際して、差分データに基づき更新版プログラムを生成するプロセスが中断されるなどのエラーが生じると、上述のような課題が生じる。この課題は、更新データが圧縮されている場合や更新版プログラムそのものを配信する場合においても共通する。そこで例えば特許文献1記載の技術などを用いて、かかる課題を回避することが考えられる。
しかし特許文献1記載の技術は、常に動作しているような車両制御装置(エンジンの制御装置など)については休止作動期間を特定することができないので、プログラム書換のタイミングを特定することが困難であるという課題が想定される。
本発明は、上記のような課題に鑑みてなされたものであり、差分更新などの更新技術を採用した場合において、プログラム書換によって車両が動作できなくなる事態に至る可能性を抑制することができる手法を提供することを目的とする。
本発明に係る車両制御装置は、第1記憶領域と第2記憶領域を備え、差分データなどの更新データを受け取ってこれに基づき更新版制御プログラムを復元するとともに、更新版制御プログラムを書き込んだ記憶領域を示す更新データにその書き込み先を記録する。
本発明に係る車両制御装置は、第1記憶領域と第2記憶領域を備えているので、万一更新版制御プログラムの書き込みに失敗したとしても、更新前の制御プログラムをそのまま用いて制御を継続することができる。また差分更新などの手法によって、更新処理を短縮することができる。
実施形態1に係る更新システムの構成図である。 車両1が備える車載ネットワークシステムの構成図である。 車両制御装置11の構成図である。 管理データ1123の構成を示す図である。 車両制御装置11が制御プログラムを更新する手順を説明するシーケンス例である。 書換プログラム1122が更新シーケンスを実施する手順を説明するフローチャートである。 ゲートウェイ12が車両制御装置11に対して送信するリプログラミング命令のメッセージM700の構成例である。 ステップS603の詳細を説明するフローチャートである。 車両制御装置11が差分更新を実施する際の処理フローを説明する図である。 車両制御装置11がゲートウェイ12から正当性チェックコマンドを受信した際の書換プログラム1122の動作を説明するフローチャートである。 起動プログラム1121の動作を説明するフローチャートである。 実施形態2に係る車両制御装置11の構成図である。 実施形態2における管理データ1123の構成を示す図である。 実施形態2に係る車両制御装置11が制御プログラムを更新する手順を説明するシーケンス例である。 実施形態2に係る車両制御装置11が差分更新を実施する際の処理フローを説明する図である。 車両制御装置11がゲートウェイ12から正当性チェックコマンドを受信した際の書換プログラム1122の動作を説明するフローチャートである。 コピー状態フラグ11234の状態遷移を示す図である。
<実施の形態1>
図1は、本発明の実施形態1に係る更新システムの構成図である。更新システムは、車両1、サーバ2、インターネット回線3、無線基地局4を備える。車両1は、インターネット回線3および無線基地局4を介し、無線通信によりサーバ2と接続し、相互に通信する。無線通信は、例えば、3G/LTEなどの公衆回線による携帯電話網やWiFiなどの回線を用いて実現される。サーバ2は、車両1が実行する制御プログラムの更新版である更新版制御プログラムを、車両1に対して配信する。車両1が搭載している車両制御装置は、その更新版制御プログラムを書き込む。
図2は、車両1が備える車載ネットワークシステムの構成図である。車両制御装置11は、車両1の動作を制御する制御プログラムを実行する装置であり、車載ネットワーク13(例えばCAN(Car Area Network))を介してゲートウェイ12(プログラム書込装置)と接続されている。車両制御装置11は、ゲートウェイ12を介して他の車両制御装置と通信することができる。
ゲートウェイ12は、車両制御装置11に対して制御プログラムを更新するよう指示するプログラム書込装置としての役割も有する。ゲートウェイ12は、サーバ2から更新データD13を受け取り、車両制御装置11に対して制御プログラムの更新命令(リプログラミング命令)と更新データD13を送信する。
ゲートウェイ12は、演算部121、FlashROM(Read Only Memory)122、SRAM(Static Random Access Memory)123、通信装置124(例えばCANトランシーバ)を備える。演算部121は、ゲートウェイ12が備える制御プログラムを実行することにより、車載ネットワーク上の車両制御装置やサーバ2との間で通信する。ゲートウェイ12は、サーバ2から受信した更新データD13をFlashROM122に一時格納する。
図3は、車両制御装置11の構成図である。車両制御装置11は、演算部111、FlashROM112、SRAM113、DRAM(Dynamic Random Access Memory)114、通信装置115(例えばCANトランシーバ)を備える。
演算部111は、FlashROM112が格納している制御プログラムを実行する、例えばマイクロコンピュータなどの演算装置である。以下では記載の便宜上、各プログラムを動作主体として説明する場合があるが、実際にこれらプログラムを実行するのは演算部111である。
FlashROM112は、起動プログラム1121、書換プログラム1122、復元プログラム1126、管理データ1123を格納している。FlashROM112は、第1エリア1124と第2エリア1125を有する。第1エリア1124と第2エリア1125は、制御プログラムまたは更新版制御プログラムを格納する記憶領域である。
起動プログラム1121は、車両制御装置11が通常モードで起動したとき演算部111が初めに実行するプログラムである。書換プログラム1122は、ゲートウェイ12からの指示にしたがって、第1エリア1124または第2エリア1125が格納している制御プログラムを更新版制御プログラムに書き換える。本実施形態1においては、第1エリア1124が制御プログラムの現行プログラムD11を格納し、第2エリア1125は空あるいは旧バージョンが格納されているものとする。復元プログラム1126および管理データ1123については後述する。
車両制御装置11は、例えば差分更新によって現行プログラムD11を更新する。差分更新は、更新前後の制御プログラム間の差分を抽出し、これを用いてプログラムを更新する技術であり、プログラム更新時間を短縮することができる。差分更新の具体的な手法は例えば非特許文献1に記載されている。復元プログラム1126は、ゲートウェイ12から受信した更新データD13に基づき更新版制御プログラムを復元する。書換プログラム1122は、復元された更新版制御プログラムを第1エリア1124または第2エリア1125に対して書き込む。
更新データD13は、現行プログラムD11と更新版制御プログラムとの間の差分を抽出した差分データであってもよいし、これに代えて更新版制御プログラムを圧縮した圧縮データであってもよい。あるいは更新版制御プログラムそのものであってもよい。
図4は、管理データ1123の構成を示す図である。管理データ1123は、現行バージョン格納エリア番号11231、第1エリアアドレスオフセット値11232、第2エリアアドレスオフセット値11233を保持する。
現行バージョン格納エリア番号11231は、第1エリア1124と第2エリア1125のいずれが制御プログラムの現行バージョンを格納しているかを示すフラグである。第1エリアアドレスオフセット値11232は、後述する更新命令が指定する書込先アドレスから第1エリア1124までの相対アドレスを指定する。第2エリアアドレスオフセット値11233は、同様に第2エリア1125までの相対アドレスを指定する。
図5は、車両制御装置11が制御プログラムを更新する手順を説明するシーケンス例である。以下図5にしたがって、実施形態1における更新シーケンスについて説明する。
ゲートウェイ12は、制御プログラムの更新を開始すると、車両制御装置11に対してモード遷移の命令を発行し、車両制御装置11を通常モードからリプログラミングモードに遷移させる。
ゲートウェイ12は、車両制御装置11に対して、書込先エリアに格納されている古い制御プログラムのデータを消去するよう指示する。書換プログラム1122はその指示にしたがってFlashROM112内のデータを消去し、完了するとその旨を応答する。書込先エリアは管理データ1123の記述にしたがって特定することができる(図3においては第2エリア1125を消去する)。
ゲートウェイ12は、車両制御装置11に対して、書込先エリアに更新版制御プログラムを書き込むよう命令する。書換プログラム1122は、ゲートウェイ12からの指示にしたがって更新版制御プログラムを書き込む(図3においては第2エリア1125へ書き込む)。書込処理については後述する。書換プログラム1122は、ゲートウェイ12に対して書込完了を応答する。
ゲートウェイ12は、車両制御装置11に対して、書き込んだデータの正当性をチェックするよう指示する。車両制御装置11は、書き込んだ更新版制御プログラムの正当性をチェックする。正当性が確認されると、書換プログラム1122はその旨を応答するとともに、管理データ1123の現行バージョン格納エリア番号11231を更新し、リプログラミングモードを終了して通常モードへ遷移する。
図6は、書換プログラム1122が更新シーケンスを実施する手順を説明するフローチャートである。以下図6の各ステップについて説明する。
(図6:ステップS600〜S601)
演算部111は、ゲートウェイ12からリプログラミング命令を受け取ると、本フローチャートを開始して書換プログラム1122を起動する(S600)。演算部111は、リプログラミングモードに遷移する(S601)。
(図6:ステップS602〜S604)
書換プログラム1122は、書込先エリアのデータを消去する(S602)。書換プログラム1122は、図5で説明した手順にしたがって更新データD13をゲートウェイ12から受け取り、復元プログラム1126を用いて更新版制御プログラムを復元し、復元した更新版制御プログラムを書込先エリア(図3においては第2エリア1125)へ書き込む(S603)。書換プログラム1122は、書き込んだ更新版制御プログラムの正当性をチェックする(S604)。
(図6:ステップS605)
書換プログラム1122は、S604における正当性チェックの判定結果をもって、更新版制御プログラムが正常に書き込み終了したか否かを判断する。正常終了した場合は、更新版制御プログラムが書き込まれたエリア(図3においては第2エリア1125)の番号を管理データ1123に書き込む。更新版制御プログラムの書き込みに失敗した場合は、管理データ1123を更新せず、現行バージョンを格納しているエリア番号がそのまま残った状態となる(図3においては第1エリア1124)。
(図6:ステップS605:補足)
本ステップにより、演算部111が制御プログラムを次回起動する際、起動プログラム1121は、管理データ1123を参照するだけで、正常に更新された制御プログラムを確実に起動することができる。さらには、更新版制御プログラムの書き込みに失敗した場合であっても、現行バージョンを引き続き実行することができる。
(図6:ステップS606)
以上の処理により更新シーケンスが完了し、演算部111は通常モードへ遷移する。
図7は、ゲートウェイ12が車両制御装置11に対して送信するリプログラミング命令のメッセージM700の構成例である。メッセージM700は、コマンドM701、データ種別702、書込データサイズM703、書込先エリア先頭アドレスM704、書込データM705を有する。
コマンドM701は、本メッセージがリプログラミング命令であることを示す。データ種別M702は、更新データが圧縮データ/差分データ/更新版制御プログラムそのもののうちいずれであるかを示す。書込データM705は更新データである。書込データサイズM703はそのサイズである。書込先エリア先頭アドレスM704は、更新版制御プログラムを書き込む記憶領域の先頭アドレスである。ただしゲートウェイ12は、車両制御装置11内部において第1エリア1124と第2エリア1125のいずれに対して更新版制御プログラムが書き込まれるのかを知らないので、あらかじめ定められたアドレスをM704として指定することになる。実際の書込先アドレスは、管理データ1123が記述している各オフセットにしたがって書換プログラム1122が定める。
図8は、ステップS603の詳細を説明するフローチャートである。以下図8の各ステップについて説明する。
(図8:ステップS800)
書換プログラム1122は、ゲートウェイ12から更新プログラム書込要求メッセージを受信すると、本フローチャートを開始する。図5においては、「更新プログラム書込」が同メッセージに対応する。
(図8:ステップS801)
書換プログラム1122は、管理データ1123の現行バージョン格納エリア番号11231に基づき、書込先エリアアドレスを算出するためのオフセット値を取得する。図3においては、書込先エリアは第2エリア1125であるので、第2エリアアドレスオフセット値11233を取得する。
(図8:ステップS802)
書換プログラム1122は、受信した書込先エリア先頭アドレスM704と取得した第2エリアアドレスオフセット値11233から、書込先エリアである第2エリア1125のアドレスを算出する。例えばM704を基準としてさらに第2エリアアドレスオフセット値11233だけアドレスをオフセットすることにより、第2エリア1125の先頭アドレスを求めることができる。
(図8:ステップS803)
書換プログラム1122は、データ種別M702に基づき、書込データが圧縮データなのか、差分データなのか、更新版制御プログラムそのものなのか判断する。データ種別M702が差分データであればステップS804へ進み、圧縮データであればステップS806へ進み、更新版制御プログラムそのものであればステップS807へスキップする。
(図8:ステップS804〜S805)
書換プログラム1122は、現行プログラムD11が格納されるアドレスを算出し(S804)、受信した差分データと現行プログラムD11を復元プログラム1126へ入力して、更新版制御プログラムを復元する(S805)。現行プログラムD11のアドレスは、受信した書込先エリア先頭アドレスM704と現行プログラムD11が格納されている格納エリアのアドレスオフセット値(図3においては第1エリアアドレスオフセット値11232)から求めることができる。
(図8:ステップS806)
書換プログラム1122は、受信した圧縮データを復元プログラム1126へ入力して更新版制御プログラムを伸張する。
(図8:ステップS807)
書換プログラム1122は、復元した更新版制御プログラムを、S802で求めたFlashROM112の書込先エリアの先頭アドレスから書込データサイズM703分書き込み、本フローチャートを終了する。データ種別M702が更新版制御プログラムそのものである場合は、復元処理は必要ないので、受け取った更新版制御プログラムをそのまま格納先エリアへ書き込めばよい。
図9は、車両制御装置11が差分更新を実施する際の処理フローを説明する図である。以下図9を用いて、差分更新の動作を説明する。
書換プログラム1122は、ゲートウェイ12から更新プログラム書込み要求メッセージを受信すると、SRAM113上の受信バッファ1131に更新データD13を一時的に格納する。復元プログラム1126は、更新データD13と、FlashROM112上の第1エリア1124に格納される現行プログラムD11から、更新版制御プログラムを復元バッファ1132に復元する。本図には記載しないが、復元プログラム1126は、現行プログラムと新プログラムの差分を抽出した差分データを復元する機能と、更新プログラムを入力として生成した圧縮データを伸張する機能を持つ。書換プログラム1122は、復元バッファ1132上の新プログラムD12を、書込先エリア(ここでは第2エリア1125)に書き込む。
図10は、車両制御装置11がゲートウェイ12から正当性チェックコマンドを受信した際の書換プログラム1122の動作を説明するフローチャートである。以下図10の各ステップについて説明する。
(図10:ステップS1000)
書換プログラム1122は、ゲートウェイ12からデータの正当性チェックコマンドを受信すると本フローチャートを開始する。図5においては、「データの正当性チェック」が同コマンドに対応する。
(図10:ステップS1001〜S1003)
書換プログラム1122は、管理データ1123の現行バージョン格納エリア番号11231に基づき、更新版制御プログラムをいずれのエリアに対して書き込むべきかを判断する(S1001)。書換プログラム1122は、書き込まれた更新版制御プログラムのデータに誤りがないか(更新データが正しく書き込まれたか)を検証する(S1002またはS1003)。具体的には、CRC(Cyclic Redundancy Check)やハッシュ値を用いた妥当性チェックによってこれを実施できる。
(図10:ステップS1004〜S1007)
書換プログラム1122は、上述の妥当性チェックの結果を判断する(S1004またはS1006)。妥当性チェックの結果が正常である場合は、現行プログラム格納エリア番号11231を書込先エリア番号に更新する(S1005またはS1007)。妥当性チェックの結果が異常である場合は、管理データ1123を更新することなく本フローチャートを終了する。
(図10:ステップS1004〜S1007:補足)
制御プログラムが正常に更新されなかった場合は、現行プログラム格納エリア番号11231を更新しないので、正常に格納されなかった制御プログラムを次回起動させないようにすることができる。
図11は、起動プログラム1121の動作を説明するフローチャートである。以下図11の各ステップについて説明する。
(図11:ステップS1100)
演算部111は、例えば割込信号などによってイグニッションがONされた旨を検知すると、本フローチャートを開始して起動プログラム1121を起動する。
(図11:ステップS1101〜S1103)
起動プログラム1121は、管理データ1123の現行バージョン格納エリア番号11231を取得し、第1エリア1124と第2エリア1125のいずれが現行バージョンエリアであるかを判断する(S1101)。起動プログラム1121は、そのエリアに格納されている制御プログラムを実行する(S1102またはS1103)。
(図11:ステップS1101〜S1103:補足)
なお、実施形態1においては、制御プログラムが第1エリア1124と第2エリア1125のいずれかに格納されるが、プログラム起動時、RAMの固定エリアに展開してから実行されるので、実行プログラムを第1エリア用・第2エリア用それぞれ作成する必要はない。
<実施の形態1:まとめ>
本実施形態1に係る車両制御装置11は、FlashROM112内に第1エリア1124と第2エリア1125を設け、差分データなどの更新データをいずれかのエリアに対して書き込むとともに、現行バージョン格納エリア番号11231をその書込先エリア番号に更新する。これにより、更新処理にともなってユーザが車両を使用できない時間を低減するとともに、更新データの書き込みが失敗しても制御を継続することができる。
<実施の形態2>
図12は、本発明の実施形態2に係る車両制御装置11の構成図である。本実施形態2においては、第1エリア1124(実行エリア)は実行する制御プログラムを格納するためのみに使用され、第2エリア1125(副エリア)は制御プログラムの更新時において更新版制御プログラムを書き込むためのみに使用される。本実施形態2においては、FlashROM112が格納している制御プログラムをFlashROM112上で実行するので、更新データを展開するためのDRAMは必ずしも必要ない。その他構成は実施形態1と同様であるので、以下では第1エリア1124と第2エリア1125の用途に関連する差異点を中心に説明する。
図13は、本実施形態2における管理データ1123の構成を示す図である。本実施形態2における管理データ1123は、現行バージョン格納エリア番号11231、コピー状態フラグ11234を格納する。
本実施形態2においては、常に第1エリア1124が制御プログラムを実行するために使用されるので、現行バージョン格納エリア番号11231は常に「第1エリア」を示す値を保持する。コピー状態フラグ11234は、第2エリア1125に書き込まれた更新版制御プログラムを第1エリア1124にコピーする際に、コピー処理の状態を示すフラグを保持する。
図14は、本実施形態2に係る車両制御装置11が制御プログラムを更新する手順を説明するシーケンス例である。以下図14にしたがって、本実施形態2における更新シーケンスについて説明する。
ゲートウェイ12は、制御プログラムの更新を開始すると、車両制御装置11に対してモード遷移の命令を発行し、車両制御装置11を通常モードからリプログラミングモードに遷移させる。
ゲートウェイ12は、車両制御装置11に対して、書込先エリアに格納されている古い制御プログラムのデータを消去するよう指示する。書換プログラム1122はその指示にしたがってFlashROM112上のデータを消去し、完了するとその旨を応答する。
ゲートウェイ12は、車両制御装置11に対して、第2エリア1125に更新版制御プログラムを書き込むよう命令する。書換プログラム1122は、ゲートウェイ12からの指示にしたがって更新版制御プログラムを書き込む。書込処理については実施形態1と同様である。書換プログラム1122は、ゲートウェイ12に対して書込完了を応答する。
ゲートウェイ12は、車両制御装置11に対して、書き込んだデータの正当性をチェックするよう指示する。本実施形態2においては、更新版制御プログラムを第2エリア1125に対して正常に書込完了したことを確認する正当性チェックコマンドaと、その更新版制御プログラムを第1エリア1124に対して正常にコピー完了したことを確認する正当性チェックコマンドbを、それぞれ送信する。車両制御装置11は、これらコマンドにしたがって正当性をチェックしてその結果を応答する。応答が完了するとリプログラミングモードを終了して通常モードへ遷移する。
書換プログラム1122は、例えば更新版制御プログラムを第2エリア1125から第1エリア1124に対してコピーする処理が中断された場合は、その旨をゲートウェイ12に対して通知することもできる。この場合ゲートウェイ12は、正当性チェックコマンドbを改めて送信し、車両制御装置11は後述の図16にしたがってチェックを改めて実施してもよい。
図15は、本実施形態2に係る車両制御装置11が差分更新を実施する際の処理フローを説明する図である。以下図15を用いて、本実施形態2における差分更新の動作を説明する。
書換プログラム1122は、ゲートウェイ12から更新プログラム書込み要求メッセージを受信すると、SRAM113上の受信バッファ1131に更新データD13を一時的に格納する。復元プログラム1126は、更新データD13と、FlashROM112上の第1エリア1124に格納される現行プログラムD11から、更新版制御プログラム(新プログラムD12)を復元バッファ1132に復元する。書換プログラム1122は、復元された新プログラムD12を、FlashROM112の第2エリア(副エリア)1125に書き込む。新プログラムの書込み終了後、書換プログラム1122は、ゲートウェイ12からの指示にしたがって、第2エリア1125から第1エリア1124へ新プログラムD12をコピーする。
図16は、車両制御装置11がゲートウェイ12から正当性チェックコマンドを受信した際の書換プログラム1122の動作を説明するフローチャートである。前提として、新プログラムD12の書込終了時に、書換プログラム1122はコピー状態フラグ11234に「未実施」を格納した状態となっているものとする。以下図16の各ステップについて説明する。
(図16:ステップS1600)
書換プログラム1122は、ゲートウェイ12からデータの正当性チェックコマンドを受信すると本フローチャートを開始する。図14においては、「データの正当性チェックa」「データの正当性チェックb」が同コマンドに対応する。
(図16:ステップS1601)
書換プログラム1122は、最初にコピー状態フラグ11234をチェックする。コピー状態フラグ11234の状態遷移については図17で改めて説明する。コピー状態フラグ11234が「実行エリア正常」であれば本フローチャートを終了する。コピー状態フラグ11234が「未実施」であればステップS1602へ進む。コピー状態フラグ11234が「コピー完了」であればステップS1607へ進む。
(図16:ステップS1602〜S1603)
書換プログラム1122は、第2エリア1125に書込まれた更新版制御プログラムの妥当性をチェックする(S1602)。妥当性チェックの結果が正常である場合はステップS1604へ進み、異常であれば本フローチャートを終了する(S1603)。
(図16:ステップS1604〜S1606)
書換プログラム1122は、第1エリア1124のデータを消去する(S1604)。消去が終了したら、第2エリア1125から第1エリア1124に更新版制御プログラムをコピーする(S1605)。書換プログラム1122は、コピー状態フラグ11234に「コピー完了」を格納する。
(図16:ステップS1607〜S1609)
書換プログラム1122は、第1エリア1124に書き込まれた制御プログラムの妥当性をチェックする(S1607)。妥当性チェックの結果が正常である場合はコピー状態フラグ11234に「実行エリア正常」を格納し(S1609)、異常である場合は本フローチャートを終了する(S1608)。
(図16:補足)
本フローチャートによれば、コピー状態フラグ11234を用いて第2エリア1125から第1エリア1124へのコピーを制御することができる。万一、何らかの要因でコピー中に処理が中断した場合であっても、コピー状態フラグ11234を参照することにより中断時の状態からコピーをリトライすることもできる。
図17は、コピー状態フラグ11234の状態遷移を示す図である。書換プログラム1122は、コピー状態フラグ11234が「未実施」であるとき正当性チェックコマンドaを受信すると、ステップS1602〜S1606を通じてコピー状態フラグ11234に「コピー完了」を格納する。さらに正当性チェックコマンドbを受信すると、ステップS1607〜S1608を通じてコピー状態フラグ11234に「実行エリア正常」を格納する。制御プログラムをさらに更新した場合、コピー状態フラグ11234に「未実施」を格納する。
<実施の形態2:まとめ>
本実施形態2に係る車両制御装置11は、実施形態1と同様に更新処理にともなってユーザが車両を使用できない時間を低減することができる。なお、本実施形態2のように制御プログラムの実行エリアを固定化(本実施例では、第1エリア1124)することで、実行プログラムは、それ用のみ作成すればよく、第1エリアと第2エリアいずれかに格納された状態で実行する場合にくらべ、制御プログラムの出荷前検査を2重に検証する必要がない。
<本発明の変形例について>
本発明は上記実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換える事が可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について他の構成の追加・削除・置換をすることができる。
実施形態1〜2においては、制御プログラムを格納するエリアの例としてFlashROM112を挙げたが、その他の不揮発性記憶装置を用いてもよい。
実施形態1〜2においては、FlashROM112が第1エリア1124と第2エリア1125に分かれている構成例を説明したが、同様の構成を2つの記憶装置によって実現することもできる。また記憶領域(または記憶装置)を3つ以上設け、実施形態1〜2と同様の構成を実現することもできる。この場合は例えば各記憶領域(または記憶装置)に対して順番に制御プログラムを格納することになる。
管理データ1123は、現行バージョン格納エリア番号11231を保存する構成を説明したが、書込先のエリア番号を保存する構成であってもよい。
更新シーケンスにおいては、制御プログラムの最新版を書き込むのが通常であるが、諸事情によってはダウンバージョンした制御プログラムで更新する可能性もある。この場合、制御プログラムの更新版とはそのダウンバージョンした制御プログラムである。すなわち制御プログラムの更新版とは、直前の更新シーケンスによって書き込まれた制御プログラムのことを指す。
上記各構成、機能、処理部、処理手段等は、それらの一部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記録装置、ICカード、SDカード、DVD等の記録媒体に格納することができる。
1:車両
2:サーバ
3:インターネット回線
4:無線基地局
11:車両制御装置
1121:起動プログラム
1122:書換プログラム
1123:管理データ
1124:第1エリア
1125:第2エリア
1126:復元プログラム
12:ゲートウェイ
13:車載ネットワーク
D11:現行プログラム
D12:新プログラム
D13:更新データ

Claims (15)

  1. 車両の動作を制御する処理を実装した制御プログラムを格納する不揮発メモリ、
    前記制御プログラムを実行する演算部、
    を備え、
    前記不揮発メモリは、第1記憶領域と第2記憶領域を有し、
    前記不揮発メモリはさらに、前記第1記憶領域と前記第2記憶領域のうちいずれが現在実行すべき現行版制御プログラムを格納しているかを表す管理データを格納し、
    前記演算部は、前記現行版制御プログラムの更新版である更新版制御プログラムと前記現行版制御プログラムとの間の差分を表す差分データ、前記更新版制御プログラムを圧縮した圧縮データ、または前記更新版制御プログラムのうちいずれかを用いて前記更新版制御プログラムのイメージを復元し、
    前記演算部は、前記第1記憶領域と前記第2記憶領域のうち前記管理データが指定していない側である一方に対して前記更新版制御プログラムのイメージを書き込むとともに、前記更新版制御プログラムの書込みが正常に完了した場合は、前記管理データを前記第1記憶領域と前記第2記憶領域のうち前記管理データが指定していない側を表すデータに書き換え、前記更新版制御プログラムの書込みが正常でない場合は、前記管理データを書き換えない
    ことを特徴とする車両制御装置。
  2. 前記管理データはさらに、前記不揮発メモリ上の所定の基準アドレスを基準として、前記第1記憶領域と前記第2記憶領域それぞれの相対アドレスを記述しており、
    前記演算部は、前記基準アドレスに対して前記更新版制御プログラムを書き込むよう指示する更新命令を受け取り、
    前記演算部は、前記更新命令を受け取ると、前記基準アドレスと前記相対アドレスを用いて、前記更新版制御プログラムを書き込むべきアドレスを算出し、その算出したアドレスに対して前記更新版制御プログラムを書き込む
    ことを特徴とする請求項1記載の車両制御装置。
  3. 前記演算部は、前記更新命令を受け取るとともに、前記差分データ、前記圧縮データ、および前記更新版制御プログラムのいずれかを更新データとして受け取り、
    前記更新命令は、前記更新データが、前記差分データ、前記圧縮データ、および前記更新版制御プログラムのいずれであるかを示すデータ種類フラグを記述しており、
    前記演算部は、前記データ種類フラグが前記差分データを示している場合は、前記現行版制御プログラムと前記差分データとから、前記更新版制御プログラムのイメージを復元する
    ことを特徴とする請求項2記載の車両制御装置。
  4. 前記演算部は、前記更新命令を受け取るとともに、前記差分データ、前記圧縮データ、および前記更新版制御プログラムのいずれかを更新データとして受け取り、
    前記更新命令は、前記更新データが、前記差分データ、前記圧縮データ、および前記更新版制御プログラムのいずれであるかを示すデータ種類フラグを記述しており、
    前記演算部は、前記データ種類フラグが前記圧縮データを示している場合は、前記圧縮データを伸長することにより前記更新版制御プログラムのイメージを復元する
    ことを特徴とする請求項2記載の車両制御装置。
  5. 前記演算部は、前記更新命令を受け取るとともに、前記差分データ、前記圧縮データ、および前記更新版制御プログラムのいずれかを更新データとして受け取り、
    前記更新命令は、前記更新データが、前記差分データ、前記圧縮データ、および前記更新版制御プログラムのいずれであるかを示すデータ種類フラグを記述しており、
    前記演算部は、前記データ種類フラグが前記更新版制御プログラムを示している場合は、受け取った前記更新版制御プログラムをそのまま前記更新版制御プログラムのイメージとして用いる
    ことを特徴とする請求項2記載の車両制御装置。
  6. 前記演算部は、前記第1記憶領域と前記第2記憶領域のうち、前記管理データが前記現行版制御プログラムを格納している旨を示している方の記憶領域から、前記現行版制御プログラムを読み出して実行する
    ことを特徴とする請求項1記載の車両制御装置。
  7. 車両の動作を制御する処理を実装した制御プログラムを格納する不揮発メモリ、
    前記制御プログラムを実行する演算部、
    を備え、
    前記不揮発メモリは、現在実行すべき現行版制御プログラムを格納する第1記憶領域と、前記現行版制御プログラムの更新版である更新版制御プログラムを格納する第2記憶領域とを有し、
    前記演算部は、前記更新版制御プログラムと前記現行版制御プログラムとの間の差分を表す差分データ、前記更新版制御プログラムを圧縮した圧縮データ、または前記更新版制御プログラムのうちいずれかを用いて前記更新版制御プログラムのイメージを復元するとともに、そのイメージを前記第2記憶領域に格納し、
    前記不揮発メモリはさらに、前記第2記憶領域から前記第1記憶領域へ前記更新版制御プログラムをコピー完了したか否かを表す管理データを格納し、
    前記演算部は、前記第2記憶領域から前記第1記憶領域に対して前記更新版制御プログラムのイメージをコピーするとともに、コピー完了した旨を示す完了フラグを前記管理データに書き込む
    ことを特徴とする車両制御装置。
  8. 前記演算部は、前記第2記憶領域に対して前記更新版制御プログラムを正常に書込完了した場合は、コピー未実施である旨を示す未実施フラグを前記管理データに書き込み、
    前記演算部は、前記管理データが前記未実施フラグを表している場合は、前記第2記憶領域に対して前記更新版制御プログラムが正常に書き込まれているか否かをチェックし、
    前記演算部は、前記第2記憶領域に対して前記更新版制御プログラムが正常に書き込まれている場合は、前記第2記憶領域から前記第1記憶領域に対して前記更新版制御プログラムのイメージをコピーするとともに、前記完了フラグを前記管理データに書き込み、
    前記演算部は、前記第2記憶領域に対して前記更新版制御プログラムが正常に書き込まれていない場合は、前記更新版制御プログラムのイメージのコピーを行わず、かつ前記完了フラグを前記管理データに書き込みしない
    ことを特徴とする請求項7記載の車両制御装置。
  9. 前記演算部は、前記管理データが前記完了フラグを表している場合は、前記第1記憶領域に対して前記更新版制御プログラムが正常に書き込まれているか否かをチェックし、
    前記演算部は、前記第1記憶領域に対して前記更新版制御プログラムが正常に書き込まれている場合は、前記第1記憶領域が正常である旨を示す正常フラグを前記管理データに書き込み、
    前記演算部は、前記第1記憶領域に対して前記更新版制御プログラムが正常に書き込まれていない場合は、前記第1記憶領域が正常である旨を示す正常フラグを前記管理データに書き込みしない
    ことを特徴とする請求項7記載の車両制御装置。
  10. 請求項1記載の車両制御装置、
    前記車両制御装置と接続された車載ネットワーク、
    前記車両制御装置が前記車載ネットワークを介して他装置と通信する際に通信データを中継するゲートウェイ装置、
    を有し、
    前記ゲートウェイ装置は、前記車両制御装置に対して、前記差分データ、前記圧縮データ、または前記更新版制御プログラムのうちいずれかを送信する
    ことを特徴とする車載ネットワークシステム。
  11. 前記ゲートウェイ装置は、前記更新版制御プログラムのイメージを前記不揮発メモリに対して正常に書き込み完了したか否かを確認するよう要求する正当性チェックリクエストを、前記車両制御装置に対して送信し、
    前記車両制御装置は、前記正当性チェックリクエストを受け取ると、前記管理データの記述にしたがって前記更新版制御プログラムを書き込んだ記憶領域の妥当性をチェックするとともに、その結果を前記正当性チェックリクエストに対する返信として前記ゲートウェイ装置に対して送信する
    ことを特徴とする請求項10記載の車載ネットワークシステム。
  12. 請求項7記載の車両制御装置、
    前記車両制御装置と接続された車載ネットワーク、
    前記車両制御装置が前記車載ネットワークを介して他装置と通信する際に通信データを中継するゲートウェイ装置、
    を有し、
    前記ゲートウェイ装置は、前記車両制御装置に対して、前記差分データ、前記圧縮データ、または前記更新版制御プログラムのうちいずれかを送信する
    ことを特徴とする車載ネットワークシステム。
  13. 前記ゲートウェイ装置は、前記更新版制御プログラムのイメージを前記第2記憶領域に対して正常に書き込み完了したか否かを確認するよう要求する第1正当性チェックリクエストを、前記車両制御装置に対して送信し、
    前記車両制御装置は、前記第1正当性チェックリクエストを受け取ると、前記第2記憶領域の妥当性をチェックするとともに、その結果を前記第1正当性チェックリクエストに対する返信として前記ゲートウェイ装置に対して送信する
    ことを特徴とする請求項12記載の車載ネットワークシステム。
  14. 前記ゲートウェイ装置は、前記更新版制御プログラムのイメージを前記第1記憶領域に対して正常にコピー完了したか否かを確認するよう要求する第2正当性チェックリクエストを、前記車両制御装置に対して送信し、
    前記車両制御装置は、前記第2正当性チェックリクエストを受け取ると、前記第1記憶領域の妥当性をチェックするとともに、その結果を前記第2正当性チェックリクエストに対する返信として前記ゲートウェイ装置に対して送信する
    ことを特徴とする請求項12記載の車載ネットワークシステム。
  15. 前記ゲートウェイ装置は、前記車両制御装置が前記更新版制御プログラムのイメージを前記第2記憶領域から前記第1記憶領域へコピーする処理が中断したことを検出すると、前記第2正当性チェックリクエストを前記車両制御装置に対して再送信する
    ことを特徴とする請求項14記載の車載ネットワークシステム。
JP2016145945A 2016-07-26 2016-07-26 車両制御装置、車載ネットワークシステム Active JP6571602B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016145945A JP6571602B2 (ja) 2016-07-26 2016-07-26 車両制御装置、車載ネットワークシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016145945A JP6571602B2 (ja) 2016-07-26 2016-07-26 車両制御装置、車載ネットワークシステム

Publications (2)

Publication Number Publication Date
JP2018018186A true JP2018018186A (ja) 2018-02-01
JP6571602B2 JP6571602B2 (ja) 2019-09-04

Family

ID=61081847

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016145945A Active JP6571602B2 (ja) 2016-07-26 2016-07-26 車両制御装置、車載ネットワークシステム

Country Status (1)

Country Link
JP (1) JP6571602B2 (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110154938A (zh) * 2018-02-16 2019-08-23 丰田自动车株式会社 车辆控制装置、程序更新方法、及存储用于更新的程序的非易失性存储介质
CN110727255A (zh) * 2018-07-17 2020-01-24 郑州宇通客车股份有限公司 一种整车控制器软件升级测试系统及车辆
JP2020027667A (ja) * 2018-08-10 2020-02-20 株式会社デンソー 車両用マスタ装置、車両用電子制御システム、アクティベート要求の指示方法及びアクティベート要求の指示プログラム
JP2020027636A (ja) * 2018-08-10 2020-02-20 株式会社デンソー 車両用マスタ装置、更新データの検証方法及び更新データの検証プログラム
CN111301315A (zh) * 2018-12-12 2020-06-19 现代自动车株式会社 车辆控制器的更新控制装置和更新控制方法以及车辆系统
CN111684416A (zh) * 2018-02-16 2020-09-18 日立汽车系统株式会社 车辆控制装置及程序更新系统
WO2021153224A1 (ja) * 2020-01-31 2021-08-05 パナソニックIpマネジメント株式会社 情報処理装置および情報処理方法
JP2022031446A (ja) * 2018-08-10 2022-02-18 株式会社デンソー 電子制御装置、更新データの検証プログラム及び処理結果送信プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10269078A (ja) * 1997-01-21 1998-10-09 Toshiba Corp ソフトウエア流通方法およびサーバ装置およびクライアント装置
JP2009271737A (ja) * 2008-05-08 2009-11-19 Nec Corp 情報処理装置
JP2011076370A (ja) * 2009-09-30 2011-04-14 Hitachi Solutions Ltd デプロイシステム
WO2016047312A1 (ja) * 2014-09-26 2016-03-31 日立オートモティブシステムズ株式会社 車両制御装置、リプログラミングシステム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10269078A (ja) * 1997-01-21 1998-10-09 Toshiba Corp ソフトウエア流通方法およびサーバ装置およびクライアント装置
JP2009271737A (ja) * 2008-05-08 2009-11-19 Nec Corp 情報処理装置
JP2011076370A (ja) * 2009-09-30 2011-04-14 Hitachi Solutions Ltd デプロイシステム
WO2016047312A1 (ja) * 2014-09-26 2016-03-31 日立オートモティブシステムズ株式会社 車両制御装置、リプログラミングシステム

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7013918B2 (ja) 2018-02-16 2022-02-01 トヨタ自動車株式会社 車両制御装置、プログラム更新方法およびプログラム
JP2019144671A (ja) * 2018-02-16 2019-08-29 トヨタ自動車株式会社 車両制御装置、プログラム更新方法およびプログラム
CN111684416B (zh) * 2018-02-16 2023-09-29 日立安斯泰莫株式会社 车辆控制装置及程序更新系统
CN110154938A (zh) * 2018-02-16 2019-08-23 丰田自动车株式会社 车辆控制装置、程序更新方法、及存储用于更新的程序的非易失性存储介质
CN110154938B (zh) * 2018-02-16 2022-08-12 丰田自动车株式会社 车辆控制装置、程序更新方法、及存储用于更新的程序的非易失性存储介质
CN111684416A (zh) * 2018-02-16 2020-09-18 日立汽车系统株式会社 车辆控制装置及程序更新系统
CN110727255A (zh) * 2018-07-17 2020-01-24 郑州宇通客车股份有限公司 一种整车控制器软件升级测试系统及车辆
JP2020027636A (ja) * 2018-08-10 2020-02-20 株式会社デンソー 車両用マスタ装置、更新データの検証方法及び更新データの検証プログラム
JP7003976B2 (ja) 2018-08-10 2022-01-21 株式会社デンソー 車両用マスタ装置、更新データの検証方法及び更新データの検証プログラム
JP2022031446A (ja) * 2018-08-10 2022-02-18 株式会社デンソー 電子制御装置、更新データの検証プログラム及び処理結果送信プログラム
JP2020027667A (ja) * 2018-08-10 2020-02-20 株式会社デンソー 車両用マスタ装置、車両用電子制御システム、アクティベート要求の指示方法及びアクティベート要求の指示プログラム
JP7354748B2 (ja) 2018-08-10 2023-10-03 株式会社デンソー 車両用マスタ装置、車両用電子制御システム、アクティベート要求の指示方法及びアクティベート要求の指示プログラム
CN111301315A (zh) * 2018-12-12 2020-06-19 现代自动车株式会社 车辆控制器的更新控制装置和更新控制方法以及车辆系统
JP2021121894A (ja) * 2020-01-31 2021-08-26 パナソニックIpマネジメント株式会社 情報処理装置および情報処理方法
WO2021153224A1 (ja) * 2020-01-31 2021-08-05 パナソニックIpマネジメント株式会社 情報処理装置および情報処理方法
JP7266216B2 (ja) 2020-01-31 2023-04-28 パナソニックIpマネジメント株式会社 情報処理装置および情報処理方法

Also Published As

Publication number Publication date
JP6571602B2 (ja) 2019-09-04

Similar Documents

Publication Publication Date Title
JP6571602B2 (ja) 車両制御装置、車載ネットワークシステム
US8539471B2 (en) Updating firmware of an electronic device
JP6682019B2 (ja) プログラム更新システムおよびプログラム書込装置
WO2017057111A1 (ja) 車載制御装置、プログラム更新システム、及び、プログラム更新ソフトウェア
KR20180131840A (ko) 펌웨어 업데이트 지원 장치 및 그 방법
CN112416406B (zh) 终端设备升级方法、装置、终端设备和介质
JP6902722B2 (ja) プログラム更新システム、制御システム、移動体、プログラム更新方法及びプログラム
JP2017097851A (ja) 中継装置、中継方法およびプログラム
CN110704392B (zh) 区块链网络的升级方法及装置、存储介质、电子设备
JP2009230399A (ja) ファームウェア更新システムおよびファームウェア更新プログラム
JP7298427B2 (ja) プログラム更新システムおよびプログラム更新方法
JP2014106567A (ja) ストレージ装置、復旧方法、および復旧プログラム
JP5691246B2 (ja) データベース二重化システム、情報処理装置及びデータベース二重化方法
US11449329B2 (en) Vehicle control device and program update system
WO2021024792A1 (ja) 車両制御装置、更新プログラム、プログラム更新システム、及び書込み装置
JP2022187646A (ja) Otaマスタ、システム、方法、プログラム、及び車両
JP2022187189A (ja) Otaマスタ、センタ、システム、方法、プログラム、及び車両
JP6301820B2 (ja) リプログラミングシステム
WO2020241473A1 (ja) 演算処理装置、車両制御装置及び更新方法
JP2021163332A (ja) システム、および制御方法
WO2021153224A1 (ja) 情報処理装置および情報処理方法
JP2022126194A (ja) Otaマスタ、センタ、システム、方法、プログラム、及び車両
JP2009129283A (ja) データ記憶装置、データバックアップ方法およびデータバックアッププログラム
JP2018160206A (ja) 車載制御装置、及び、プログラム更新ソフトウェア
KR20070077303A (ko) 유에스비 저장장치, 유에스비 저장장치의 애플리케이션프로그램을 관리하는 방법 및 클라이언트

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180726

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190422

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190604

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190808

R150 Certificate of patent or registration of utility model

Ref document number: 6571602

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250