JP5522155B2 - プログラム書換方法及びプログラム書換装置,電子制御装置 - Google Patents

プログラム書換方法及びプログラム書換装置,電子制御装置 Download PDF

Info

Publication number
JP5522155B2
JP5522155B2 JP2011269933A JP2011269933A JP5522155B2 JP 5522155 B2 JP5522155 B2 JP 5522155B2 JP 2011269933 A JP2011269933 A JP 2011269933A JP 2011269933 A JP2011269933 A JP 2011269933A JP 5522155 B2 JP5522155 B2 JP 5522155B2
Authority
JP
Japan
Prior art keywords
block
program
unit
area
data
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
JP2011269933A
Other languages
English (en)
Other versions
JP2013122631A (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.)
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Priority to JP2011269933A priority Critical patent/JP5522155B2/ja
Priority to US13/693,186 priority patent/US20130151647A1/en
Publication of JP2013122631A publication Critical patent/JP2013122631A/ja
Application granted granted Critical
Publication of JP5522155B2 publication Critical patent/JP5522155B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Description

本発明は、電子制御装置のプログラムを書き換える際に用いるプログラム書換方法及びプログラム書換装置、そのプログラム書換方法が適用される電子制御装置に関する。
従来、車両に生じた不具合を解消したり、車両をカスタマイズしたりする際に、車載通信システムを介して、該車載通信システムに接続された電子制御装置(ECU)のプログラムを、車載通信システムに接続したリプログ装置を介して書き換えることが行われている。
なお、ECUでは、プログラムを格納する書換可能な不揮発性メモリとして、フラッシュメモリ等が用いられており、その記憶容量はメガバイトのオーダである。一方、車載通信システムとして一般的に用いられているCAN(Controller Area Network )の伝送速度は、通常500kbps程度であり、また、一つの通信フレームで送信できるデータ量は8バイトである。
従って、リプログ作業には、リプログデータの伝送に多くの時間が費やされることになり、作業効率が悪いという問題がある。
これに対して、リプログデータを圧縮した圧縮データを転送することで、データの伝送に要する時間を短縮する手法が知られている(例えば、特許文献1,2参照。)。
この場合、圧縮データを受信したリプログ対象の装置では、受信した圧縮データを、解凍プログラムを用いて解凍し、その解凍されたリプログデータがフラッシュメモリ等に書き込まれることになる。
特開2001−34601号公報 特開2009−227247号公報
しかし、上述の従来技術では、リプログデータの圧縮処理や解凍処理に時間を要してしまうため、作業効率を十分に向上させることができないという問題や、リプログデータを解凍する解凍プログラムを、リプログ対象装置に予め実装しておくか、リプログを実行する際に転送する必要があり、前者の場合、貴重なメモリの一部が、解凍プログラムに使われてしまうというと言う問題があり、後者の場合、作業効率を低下させてしまうという問題があった。
本発明は、上記問題点を解決するために、電子制御装置のプログラムを書き換える(リプログする)際に、既存の圧縮,解凍プログラムを用いることなく、リプログデータのデータ量を削減しリプログに要する作業時間を短縮することを目的とする。
上記目的を達成するための発明である請求項1に記載のプログラム書換方法では、まず、プログラム書換装置にて、前記プログラムの書き換えに用いるリプログデータを、予め設定されたデータ長の単位ブロックに分割し、各単位ブロックにシリアル番号を対応づける(第1の手順)。
次に、単位ブロックのうち、その単位ブロックが示す値が予め設定された特定値であるものを特定ブロック、その特定ブロックが予め設定された下限値以上連続する領域を連続領域として、連続領域の先頭となる単位ブロックに対応づけられたシリアル番号である開始番号及び連続領域の末尾となる単位ブロックに対応づけられたシリアル番号である終了番号からなる領域情報を、プログラム書換装置から対象装置に送信する(第2の手順)。
そして、単位ブロックのうち、連続領域を構成する特定ブロック以外のものを送信対象ブロックとして、この送信対象ブロックを、プログラム書換装置から対象装置に順番に送信する(第3の手順)。
最後に、対象装置にて、プログラム書換装置から受信した送信対象ブロック及び領域情報に基づいて生成した特定ブロックによりリプログデータを復元して、メモリの書き換えを実行する(第4の手順)。
これにより、既存の圧縮,解凍プログラムを用いることなく、プログラムの書き換え時にプログラム書換装置から対象装置に伝送するリプログデータのデータ量を削減することができ、その結果、データ伝送に要する時間が削減されるため、リプログの作業効率を向上させることができる。
特に、電子制御装置においてプログラムを格納するメモリが、所定サイズのセクタ単位でデータの書き換えが行われる場合、セクタの未使用部分にはゼロが書き込まれるため、効果的にデータ量を削減することができる。
次に、請求項2に記載のプログラム書換装置では、分割手段が、プログラムの書き換えに用いるリプログデータを、予め設定されたデータ長の単位ブロックに分割し、各単位ブロックにシリアル番号を対応づける。
そして、領域情報送信手段が、分割手段にて分割された単位ブロックのうち、単位ブロックが示す値が予め設定された特定値であるものを特定ブロック、特定ブロックが予め設定された下限値以上連続する領域を連続領域として、連続領域の先頭となる単位ブロックに対応づけられたシリアル番号である開始番号及び連続領域の末尾となる単位ブロックに対応づけられたシリアル番号である終了番号からなる領域情報を対象装置へ送信する。
更に、ブロックデータ送信手段が、単位ブロックのうち、連続領域を構成する特定ブロック以外のものを送信対象ブロックとして、送信対象ブロックを対象装置へ順番に送信する。
また、請求項3に記載の電子制御装置では、プログラムの書き換えに用いるリプログデータを、予め設定されたデータ長に分割し且つ各々にシリアル番号を対応づけたものを単位ブロック、該単位ブロックが示す値が予め設定された特定値であるものを特定ブロック、該特定ブロックが予め設定された下限値以上連続する領域を連続領域として、領域情報受信手段が、連続領域の先頭となる単位ブロックに対応づけられたシリアル番号である開始番号及び連続領域の末尾となる単位ブロックに対応づけられたシリアル番号である終了番号からなる領域情報を、前記車載通信システムに接続されたプログラム書換装置から受信する。
また、ブロックデータ受信手段が、単位ブロックのうち、連続領域を構成する特定ブロック以外のものを送信対象ブロックとして、該送信対象ブロックを、車載通信システムに接続されたプログラム書換装置から受信する。
そして、書換実行手段が、領域情報受信手段が受信した領域情報に基づいて復元した連続領域、及び前記ブロックデータ受信手段が受信した前記送信対象ブロックによって前記リプログデータを復元して、前記メモリの書き換えを実行する。
これら、請求項2に記載のプログラム書換装置及び請求項3に記載の電子制御装置によれば、請求項1に記載のプログラム書換方法を実現することができる。
車載通信システム及びプログラム書換装置の構成を示すブロック図である。 ツール側リプログ処理の内容を示すフローチャートである。 ECU側リプログ処理の内容を示すフローチャートである。 リプログデータ再生処理の詳細を示すフローチャートである。 各種通信フレームのデータ領域の構成を示す説明図である。 プログラム書換装置と書換処理の対象となるECUとの間で送受信される通信フレームを示したシーケンス図である。
以下に本発明の実施形態を図面と共に説明する。
[全体構成]
図1は、本発明が適用された車載通信システム1及び車載通信システム1に接続して使用するプログラム書換装置5の構成を示すブロック図である。
車載通信システム1は、図1に示すように、車両の各部に設置された複数の電子制御ユニット(ECU)2と、ECU2を相互に接続する通信線路である基幹バス3と、ECU2を介した車両の状態の診断や、ECU2のプログラムの書き換え(リプログ)等を実行する外部ツール(ここではプログラム書換装置5)を接続するためのコネクタ4とを備えている。
なお、車載通信システム1では、基幹バスではCANプロトコルによる通信を実行するように構成されている。但し、一つの通信フレームで送信可能な最大データ量はNバイト(Nは正整数、本実施形態ではN=8)に制限されているものとする。
[ECU]
ECU2は、基幹バス3を介した通信を実行する通信制御部21と、通信制御部21を介して各種情報を取得したり提供したりすると共に、取得した情報に基づいて当該ECU2に割り当てられた機能を実現するための各種処理の他、自ECU2が有するプログラムを書き換えるECU側リプログ処理を少なくとも実行する処理実行部22とを備えている。
なお、通信制御部21は、CANトランシーバやCANコントローラ等によって構成された周知のものである。また、処理実行部22は、CPU,メモリを少なくとも備えた周知のマイクロコンピュータからなる。但し、プログラムを格納するための不揮発性メモリとして、データの書換が可能なフラッシュメモリを備えていると共に、一時的なデータを記憶するためのRAMは、フラッシュメモリより大きな記憶容量を有するものが用いられている。
また、フラッシュメモリは、データ(プログラム)を消去する際には、所定データサイズ(例えば4K〜64Kバイト程度)からなるセクタ単位で処理されるように構成されている。
[プログラム書換装置]
プログラム書換装置5は、コネクタ4を介して車載通信システム1を構成するECU2との通信を実行する通信制御部51と、インターネット等の公共通信ネットワークを介した通信を実行するネットワーク通信部52と、当該プログラム書換装置5のユーザが操作を入力したり、通信制御部51やネットワーク通信部52を介して取得した情報や、ユーザが行うべき操作手順等をユーザに提示したりするための入出力部53と、入出力部53から入力される指令に従って、個々のECU2のプログラムを書き換えるルール側リプログ処理を少なくとも実行する処理実行部54とを備えている。
通信制御部51は、ECU2の通信制御部21と同様に構成されたものであり、ネットワーク通信部52は、TCP/IPを実現するトランシーバやコントローラ等によって構成された周知のものである。また、処理実行部54は、CPU,メモリを少なくとも備えた周知のマイクロコンピュータからなる。
[ツール側リプログ処理]
図2は、プログラム書換装置5の処理実行部54が実行するツール側リプログ処理の内容を示すフローチャートである。なお、本処理は、入出力部53を介して、リプログ処理の実行を要求するリプログ指令が入力されると起動する。なお、リプログ指令には、リプログ処理の対象となるECU2(以下「対象ECU」という)やフラッシュメモリのセクタ(以下「対象セクタ」という)を指定する指定情報や、リプログデータのファイル名や取得先を示す取得情報が少なくとも含まれている。
本処理が起動すると、まず、リプログ指令に示された取得先情報に基づき、ネットワーク通信部52を介してリプログデータを取得し(S110)、取得したリプログデータをNバイト(一つの通信フレームで送信可能なデータ量)の単位ブロックに分割して、各単位ブロックにシリアル番号を対応づけ、更に、全ビットがゼロとなる単位ブロックをゼロブロック(本発明における特定ブロックの一例)として、そのゼロブロックに対応づけられたシリアル番号を抽出する(S120)。
次に、ゼロブロックがM(Mは正整数、例えばM=50)個以上連続する領域を連続領域として抽出し、抽出された連続領域の総数を表す領域数情報を生成すると共に、抽出された個々の連続領域について、その連続領域の先頭となる単位ブロックに対応づけられたシリアル番号である開始番号、末尾となる単位ブロックに対応づけられたシリアル番号である終了番号からなる領域サイズ情報を生成する(S130)。
通信制御部51を介して、リプログモードへの移行を要求する通信フレーム(リプログ開始フレーム)を送信する(S140)。なお、リプログ開始フレームには、リプログ指令に示された指定情報、即ち対象ECUや対象セクタを指定する情報が少なくとも示されている。
続けて、通信制御部51を介して、一つの連続領域の領域サイズ情報を示した通信フレーム(領域情報フレーム)を送信する(S150)。但し、領域情報フレームの送信後は、対象ECUから応答フレームを受信するまで待機し、応答フレームを受信すると送信に成功したものとして次のステップに進む。
ここで、図5(a)は、領域情報フレームのデータ領域(8バイトで構成)の構成を示す説明図である。図5(a)に示すように、領域情報フレームは、領域情報フレームの残り送信数(2バイト)、領域サイズ情報(開始番号(3バイト)、終了番号(3バイト))によって構成されている。なお、残り送信数に設定される値は、最初に送信される領域情報フレームであれば[残り送信数]←[領域数情報]−1であり、その後、領域情報フレームが送信される毎に1ずつ減少した値[残り送信数]←[前回の領域情報フレームにおける残り送信数]−1が設定される。
先のS130にて抽出された全ての連続領域について領域情報フレームの送信を終了したか否かを判断し、終了していなければ、S150に戻って領域情報フレームの送信を繰り返す。
一方、全ての連続領域について領域情報フレームの送信を終了していれば、連続領域を構成する単位ブロック(ゼロブロック)以外の単位ブロックを送信対象ブロックとして、送信対象ブロックの総数である必要送信回数を算出し(S170)、この必要送信回数を示した通信フレーム(回数情報フレーム)を送信する(S180)。但し、回数情報フレームの送信後は、対象ECUから応答フレームを受信するまで待機し、応答フレームを受信すると送信に成功したものとして次のステップに進む。
なお、必要送信回数は、具体的には、リプログデータを構成する単位ブロックの総数からS120で抽出された連続領域を構成するゼロブロックの総数を減じることで算出する。
ここで、図5(b)は、回数情報フレームのデータ領域の構成を示す説明図である。図5(b)に示すように、回数情報フレームでは、データ領域の3バイトを使って必要送信回数が設定される。
次に、一つの送信対象ブロックの値を示した通信フレーム(書込情報フレーム)を送信する(S190)。但し、書込情報フレームの送信後は、対象ECUから応答フレームを受信するまで待機し、応答フレームを受信すると送信に成功したものとして次のステップに進む。なお、通信フレームを送信する毎に、送信回数をカウントする送信カウンタをインクリメントする。
そして、送信カウンタの値が必要送信回数に達したか否かにより、全ての送信対象ブロックについて書込情報フレームの送信を終了したか否かを判断し(S200)、必要送信回数に達していなければ、S190に戻って書込情報フレームの送信を繰り返す。
一方、送信カウンタの値が必要送信回数に達していれば、対象ECUからリプログの完了を示す通信フレーム(リプログ完了フレーム)を受信したか否かを判断し(S210)、受信していなければ同ステップを繰り返すことで待機し、リプログ完了フレームを受信すると、本処理を終了する。
[ECU側リプログ処理]
図3は、ECU2の処理実行部22が実行するECU側リプログ処理の内容を示すフローチャートである。なお、本処理は、IG(イグニション)スイッチがオンされる等して、ECU2への電源供給が行われている状態で、自ECU宛のモード移行フレームを受信すると起動する。
本処理が起動すると、回数情報フレームを受信したか否かを判断し(S310)、受信していなければ、領域情報フレームを受信したか否かを判断し(S320)、受信していなければ、S310に戻る。
領域情報フレームを受信した場合は、領域情報フレームに示された領域サイズ情報を記憶すると共に、応答データを送信して(S330)、S310に戻る。
一方、回数情報フレームを受信した場合は、回数情報フレームに示された必要送信回数を記憶すると共に、応答データを送信する(S340)。
その後、プログラム書換装置5から送信されてくる書込情報フレームに示された単位ブロックの値、及び先のS330,S340で記憶した必要送信回数や領域サイズ情報に基づいてリプログデータを再生するリプログデータ再生処理を実行する(S350)。
リプログデータ再生処理によってリプログデータが再生されると、先に受信したリプログ開始フレームに示された指定情報に従って、フラッシュメモリの対象セクタのデータを削除し(S360)、一時記憶領域に格納されている再生されたリプログデータを対象セクタに書き込む(S370)。
最後に、プログラム書換装置5に対してリプログ処理が完了したことを示すリプログ完了フレームを送信して(S380)、本処理を終了する。
[リプログデータ再生処理]
図4は、S350にて実行するリプログデータ再生処理の詳細を示すフローチャートである。
本処理では、まず、本処理で使用するパラメータを初期化する(S410)。具体的には、書込情報フレームの受信数を示すパラメータNDをゼロ、処理の対象となる単位ブロックのシリアル番号を示すパラメータNSを1に設定する。
そして、書込情報フレームを受信したか否かを判断し(S420)、受信していなければ同ステップを繰り返すことで待機する。
一方、書込情報フレームを受信すると、書込情報フレームに示された単位ブロック1個分のデータを、再生したリプログデータを一時的に記憶するための一時記憶領域に格納すると共に、応答データを送信する(S430)。
パラメータND,NSをいずれもインクリメントし(S440)、パラメータNSが先のS330にて記憶した領域サイズ情報の開始番号と一致するか否かを判断する(S450)。パラメータNSが開始番号と一致すれば、値が全てゼロとなる単位ブロック1個分のデータを一時記憶領域に既に格納されているリプログデータの最後尾に追加するゼロブロック挿入処理を実行して(S460)、パラメータNSをインクリメントする(S470)。
その後、パラメータNSが先のS450で用いた開始番号と対になる終了番号以下であるか否かを判断し(S480)、終了番号以下であれば、S460に戻って、ゼロブロック挿入処理を繰り返す。
一方、パラメータNSが終了番号より大きいか、先のS450にてパラメータNSが開始番号と一致しなかった場合は、パラメータNDが先のS340で記憶された必要送信回数と一致するか否かを判断する(S490)。
パラメータNDが必要送信回数と一致しなければ、S420に戻って上述の処理を繰り返し、パラメータNDが必要送信回数と一致していれば、全ての書込情報フレームの受信を終了したものとして、本処理を終了する。
つまり、連続領域を構成する単位ブロックのデータは、プログラム書換装置5から送信されてこないため、領域サイズ情報に従って、送信が省略された箇所のデータを挿入することでリプログデータを再生するようにされている。
[動作]
図6は、リプログ処理を実行する際に、プログラム書換装置5と、リプログ処理の対象となったECU2との間で送受信される通信フレームを示したシーケンス図である。
図6に示すように、プログラム書換装置5にて、リプログ指令操作が行われると、リプログデータが取得され、リプログの対象となるECU2(対象ECU)に対してリプログ開始フレームが送信される。
すると対象ECUでは、動作モードがリプログモードに移行し、ECU側リプログ処理が起動される。
その後、プログラム書換装置5が、リプログデータ中のゼロブロックが所定個以上連続した連続領域に関する情報を示した領域情報フレームを、存在する連続領域の数だけ繰り返し送信する。
なお、領域情報フレームを受信した対象ECUは応答フレームを返送し、プログラム書換装置5は、応答フレームの受信を待って、次の領域情報フレームを送信する。
領域除法フレームの送信が終了すると、後に続く書込情報フレームの送信回数を示した回数情報フレームを送信し、その応答フレームが対象ECUから返送されると、書込情報フレームの送信を開始する。この領域情報フレームも、領域情報フレームや回数情報フレームと同様に、応答フレームの受信を待って、次の書込情報フレームを送信する。
回数情報フレームに示された必要送信回数分の書込情報フレームの受信を終了した対象ECUは、プログラム書換装置5から取得した領域サイズ情報、必要送信回数、書込データに基づいてリプログデータを再生し、フラッシュメモリの対象セクタのデータを、再生したリプログデータでの書き換えを終了すると、プログラム書換装置5に対してリプログ完了フレームを送信し、リプログモードから通常モードに移行することで、一連の処理を終了する。
[効果]
以上説明したように、プログラム書換装置5は、プログラムの書き換えに用いるリプログデータを、そのまま送信するのではなく、ゼロブロックがM個以上連続する連続領域を抽出し、抽出した連続領域に関する情報(領域サイズ情報)を対象ECUに送信した後、連続領域以外のリプログデータを単位ブロック毎に送信し、対象ECUでは、プログラム書換装置5から送信されてこない連続領域のデータについては、領域サイズ情報に基づいて復元することでリプログデータを再生し、その再生したリプログデータを用いてプログラムの書き換えを実行するようにされている。
これにより、既存の圧縮,解凍プログラムを用いることなく、プログラムの書き換え時にプログラム書換装置から対象装置に伝送するリプログデータのデータ量、ひいてはデータ伝送に要する時間を削減することができ、その結果、リプログの作業効率を向上させることができる。
特に、ECU2では、プログラムを格納するメモリが、セクタ単位でデータの消去を行うフラッシュメモリが用いられており、セクタの未使用部分には大きな連続領域が形成され易いため、効果的にデータ量を削減することができる。
なお、本実施形態において、S120〜S160の処理を実行する処理実行部54が分割手段及び領域情報送信手段の一例であり、S170〜S200を実行する処理実行部54がブロックデータ送信手段の一例であり、S320〜S330を実行する処理実行部22が領域情報受信手段の一例であり、S310,S340〜S370を実行する処理実行部22がブロックデータ受信手段及び書換実行手段の一例である。
[他の実施形態]
以上、本発明の一実施形態について説明したが本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において様々な態様にて実施することが可能である。
例えば、上記実施形態では、連続領域の復元/リプログデータの再生を、書込情報フレームの受信と並行して行っているが、これをフラッシュメモリへの書込時に行うようにしてもよい。
また、連続領域か否かを判断するゼロブロックの連続数Mは、連続領域のデータを全て書込情報フレームで送信するのに要する時間や、領域情報フレームの送信や領域サイズ情報等から連続領域を復元する処理に要する時間を考慮して、十分な処理時間の削減効果が得られるような値に設定すればよい。
また、上記実施形態では、ゼロブロックが連続する領域を連続領域としているが、全てのビットが1となる単位ブロックが連続する領域を連続領域としてもよい。
1…車載通信システム 2…電子制御装置(ECU) 3…基幹バス 4…コネクタ 5…プログラム書換装置 21,51…通信制御部 22,54…処理実行部 52…ネットワーク通信部 53…入出力部

Claims (3)

  1. 車載通信システムを構成する電子制御装置のいずれかを対象装置として、該対象装置のメモリに格納されたプログラムを、前記車載通信システムに接続したプログラム書換装置を用いて、該プログラム書換装置に格納されたプログラムに書き換えプログラム書換方法であって、
    前記プログラム書換装置にて、前記プログラムの書き換えに用いるリプログデータを、予め設定されたデータ長の単位ブロックに分割し、各単位ブロックにシリアル番号を対応づける第1の手順と、
    前記単位ブロックのうち、該単位ブロックが示す値が予め設定された特定値であるものを特定ブロック、該特定ブロックが予め設定された下限値以上連続する領域を連続領域として、該連続領域の先頭となる単位ブロックに対応づけられたシリアル番号である開始番号及び該連続領域の末尾となる単位ブロックに対応づけられたシリアル番号である終了番号からなる領域情報を、前記プログラム書換装置から前記対象装置に送信する第2の手順と、
    前記単位ブロックのうち、前記連続領域を構成する特定ブロック以外のものを送信対象ブロックとして、該送信対象ブロックを、前記プログラム書換装置から前記対象装置に順番に送信する第3の手順と、
    前記対象装置にて、前記プログラム書換装置から受信した前記送信対象ブロック及び前記領域情報に基づいて生成した前記特定ブロックにより前記リプログデータを復元して、前記メモリの書き換えを実行する第4の手順と、
    を備えることを特徴とするプログラム書換方法。
  2. 車載通信システムを構成する電子制御装置のいずれかを対象装置として、該対象装置のメモリに格納されたプログラムを、自装置に格納されたプログラムに書き換えプログラム書換装置であって、
    前記プログラムの書き換えに用いるリプログデータを、予め設定されたデータ長の単位ブロックに分割し、各単位ブロックにシリアル番号を対応づける分割手段と、
    前記分割手段にて分割された前記単位ブロックのうち、該単位ブロックが示す値が予め設定された特定値であるものを特定ブロック、該特定ブロックが予め設定された下限値以上連続する領域を連続領域として、該連続領域の先頭となる単位ブロックに対応づけられたシリアル番号である開始番号及び該連続領域の末尾となる単位ブロックに対応づけられたシリアル番号である終了番号からなる領域情報を前記対象装置へ送信する領域情報送信手段と、
    前記単位ブロックのうち、前記連続領域を構成する特定ブロック以外のものを送信対象ブロックとして、該送信対象ブロックを前記対象装置へ順番に送信するブロックデータ送信手段と、
    を備えることを特徴とするプログラム書換装置。
  3. 車載通信システムを構成し、格納されたプログラムの書き換えが可能なメモリを有する電子制御装置であって、
    前記プログラムの書き換えに用いるリプログデータを、予め設定されたデータ長に分割し且つ各々にシリアル番号を対応づけたものを単位ブロック、該単位ブロックが示す値が予め設定された特定値であるものを特定ブロック、該特定ブロックが予め設定された下限値以上連続する領域を連続領域として、該連続領域の先頭となる単位ブロックに対応づけられたシリアル番号である開始番号及び該連続領域の末尾となる単位ブロックに対応づけられたシリアル番号である終了番号からなる領域情報を、前記車載通信システムに接続されたプログラム書換装置から受信する領域情報受信手段と、
    前記単位ブロックのうち、前記連続領域を構成する特定ブロック以外のものを送信対象ブロックとして、該送信対象ブロックを、前記車載通信システムに接続された前記プログラム書換装置から受信するブロックデータ受信手段と、
    前記領域情報に基づいて復元した前記連続領域、及び前記ブロックデータ受信手段により受信した前記送信対象ブロックによって前記リプログデータを復元して、前記メモリの書き換えを実行する書換実行手段と、
    を備えることを特徴とする電子制御装置。
JP2011269933A 2011-12-09 2011-12-09 プログラム書換方法及びプログラム書換装置,電子制御装置 Expired - Fee Related JP5522155B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011269933A JP5522155B2 (ja) 2011-12-09 2011-12-09 プログラム書換方法及びプログラム書換装置,電子制御装置
US13/693,186 US20130151647A1 (en) 2011-12-09 2012-12-04 Method for rewriting program, reprogram apparatus, and electronic control unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011269933A JP5522155B2 (ja) 2011-12-09 2011-12-09 プログラム書換方法及びプログラム書換装置,電子制御装置

Publications (2)

Publication Number Publication Date
JP2013122631A JP2013122631A (ja) 2013-06-20
JP5522155B2 true JP5522155B2 (ja) 2014-06-18

Family

ID=48573050

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011269933A Expired - Fee Related JP5522155B2 (ja) 2011-12-09 2011-12-09 プログラム書換方法及びプログラム書換装置,電子制御装置

Country Status (2)

Country Link
US (1) US20130151647A1 (ja)
JP (1) JP5522155B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011014688B3 (de) * 2011-03-22 2012-03-22 Audi Ag Kraftwagen-Steuergerät mit kryptographischer Einrichtung
US20140058532A1 (en) * 2012-08-23 2014-02-27 GM Global Technology Operations LLC Method for partial flashing of ecus
CN104077291B (zh) * 2013-03-27 2018-06-01 腾讯科技(深圳)有限公司 用户生成内容访问次数的发布方法、客户端及系统
JP6069503B2 (ja) * 2013-07-01 2017-02-01 株式会社日立製作所 系列データ並列分析基盤およびその並列分散処理方法
JP6149716B2 (ja) * 2013-12-10 2017-06-21 トヨタ自動車株式会社 車載ネットワークシステム
CN106414178B (zh) * 2014-06-19 2019-08-20 日立汽车系统株式会社 车载程序写入装置
EP3252605B1 (en) * 2015-01-26 2022-04-06 Hitachi Astemo, Ltd. Vehicle-mounted control device, program writing device, program generating device and program
KR101743048B1 (ko) * 2016-10-19 2017-06-02 주식회사 엘앤비기술 Can 통신을 이용한 통합방송시스템

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8536985B1 (en) * 2001-07-30 2013-09-17 Imaging Systems Technology, Inc. Data isolation
CN101868378B (zh) * 2008-03-25 2013-03-13 爱信艾达株式会社 向车上控制装置的控制用数据的写入方法和车上控制装置

Also Published As

Publication number Publication date
US20130151647A1 (en) 2013-06-13
JP2013122631A (ja) 2013-06-20

Similar Documents

Publication Publication Date Title
JP5522155B2 (ja) プログラム書換方法及びプログラム書換装置,電子制御装置
JP6739498B2 (ja) 車載制御装置及びプログラム書き込み装置
JP6568947B2 (ja) 車載制御装置、プログラム更新システム、及び、プログラム更新ソフトウェア
JP6784636B2 (ja) 制御装置、プログラム更新システム、プログラム更新方法
US11550474B2 (en) Data storage device and method for rewriting parameters thereof
CN109783014A (zh) 一种存储数据的方法及装置
JP4997798B2 (ja) 不揮発性半導体記憶装置およびメモリシステム
CN107861836A (zh) 行车记录仪数据备份方法和装置
JP6115482B2 (ja) 電子制御装置
JP5476956B2 (ja) 通信システム及び通信方法
JP4593095B2 (ja) プログラム書込装置,プログラム書込システム,送信装置およびプログラム
TWI616819B (zh) 用於電視的軟體更新方法及相關的電路
JP2007052558A (ja) フラッシュメモリ書換え装置、フラッシュメモリ書換え方法及びフラッシュメモリ書換えプログラム
JP2007072695A (ja) フラッシュメモリへの冗長保存方法及びプログラム
JP2013192092A (ja) 車載装置
JP2011081561A (ja) 情報処理装置
JP6907929B2 (ja) データ等価方法、プログラマブルコントローラ及び二重化システム
CN107844405B (zh) 日志处理方法及装置、服务器
CN114094680B (zh) 一种充电线材的充电方法、装置及存储介质
JP2004310592A (ja) ロギング処理装置
JP6544340B2 (ja) 表示システム
JP2006201878A (ja) マイクロコンピュータ
JP2004258797A (ja) データ収集装置、プログラマブルコントローラ、データ収集システムおよびデータ収集プログラム
CN107688543B (zh) 一种基于eeprom的数据管理方法及装置
JP2022163546A (ja) 制御装置及び制御システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140121

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140324

LAPS Cancellation because of no payment of annual fees