JP2006323776A - Information processor - Google Patents
Information processor Download PDFInfo
- Publication number
- JP2006323776A JP2006323776A JP2005148495A JP2005148495A JP2006323776A JP 2006323776 A JP2006323776 A JP 2006323776A JP 2005148495 A JP2005148495 A JP 2005148495A JP 2005148495 A JP2005148495 A JP 2005148495A JP 2006323776 A JP2006323776 A JP 2006323776A
- Authority
- JP
- Japan
- Prior art keywords
- program
- update
- rewrite
- computer
- information processing
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
Description
本発明は、書換可能な不揮発性メモリにプログラムを記憶する情報処理装置に関する。 The present invention relates to an information processing apparatus that stores a program in a rewritable nonvolatile memory.
従来より、プログラムを容易に更新可能とするために、フラッシュROM等の書換可能な不揮発性メモリに、プログラムを記録する情報処理装置が知られている。この種の技術は、車両用の電子制御装置にも適用されており、従来技術としては、例えば、自動車のエンジンを制御するエンジン制御装置として、データの消去及び書込が可能な不揮発性メモリに、エンジン制御プログラムを記録したものが知られている(特許文献1参照)。 2. Description of the Related Art Conventionally, an information processing apparatus that records a program in a rewritable nonvolatile memory such as a flash ROM in order to easily update the program is known. This type of technology is also applied to an electronic control device for a vehicle. As a conventional technology, for example, as an engine control device for controlling an engine of an automobile, a nonvolatile memory capable of erasing and writing data is used. A recording engine control program is known (see Patent Document 1).
また、不揮発性メモリにプログラムを記録し、必要に応じて、これを更新する情報処理装置では、プログラムの更新(書換)時にエラーが発生する可能性があるため、プログラムの更新が正常に行われたか否かを判断することが行われている。 Also, in an information processing apparatus that records a program in a nonvolatile memory and updates it as necessary, an error may occur when the program is updated (rewritten), so that the program is updated normally. Judgment is made whether or not.
例えば、上述のエンジン制御装置では、プログラムの更新終了時に、終了データを、プログラムの末尾に書き込むことによって、プログラムの更新が最後まで行われたことを不揮発性メモリに記録する。そして、終了データが不揮発性メモリに書き込まれているか否かを、制御プログラムの実行前に判断し、終了データが書き込まれていない場合には、制御プログラムが正常ではないと判断して、制御プログラムを実行しないようにする。
ところで、車両用の電子制御装置では、プログラム更新時にエラーが生じないようにする目的や、車両安全確保の目的で、車両が停止していることや、車両内が適切な温度であること等の所定条件を確認した後に、書換モードへ移行することが行われている。また、書換モードへ移行するための条件判断を行うプログラムを、制御プログラムと合わせて、不揮発性メモリに、書換可能に記録することが行われている。 By the way, in an electronic control device for a vehicle, for the purpose of preventing an error when updating a program, or for the purpose of ensuring vehicle safety, the vehicle is stopped, the inside of the vehicle is at an appropriate temperature, etc. After confirming the predetermined condition, a transition to the rewrite mode is performed. In addition, a program for determining a condition for shifting to the rewrite mode is recorded in a non-volatile memory together with a control program so as to be rewritable.
しかしながら、上述したプログラムの更新終了時に、終了データを不揮発性メモリに書き込む手法では、エラーにより移行条件を含む応用プログラムの一部が誤った記述となっても、ユーザ側で、これを発見することができないという問題があった。 However, with the method of writing the end data to the nonvolatile memory at the end of the program update described above, even if a part of the application program including the migration condition is erroneously described due to an error, the user must discover this. There was a problem that could not.
書換モードへ移行するためのプログラムを、不揮発性メモリに、書換可能に記録する装置では、過去のプログラム更新時にエラーが発生して、書換モードへの移行条件が誤った記述となると、適切でない環境で、装置が書換モードに移行してしまう。従って、このようなエラーをユーザが認識していないと、プログラム更新時の車両の安全やプログラムの正常な更新に問題が生じるのである。 In a device that records a program for switching to the rewrite mode in a rewritable manner in a non-volatile memory, if an error occurs when the program is updated in the past and the conditions for shifting to the rewrite mode are described incorrectly, the environment is not appropriate. Thus, the device shifts to the rewrite mode. Therefore, if the user does not recognize such an error, a problem arises in the safety of the vehicle at the time of program update and the normal update of the program.
勿論、このような問題は、書換モードに移行するための上記プログラムを、不揮発性メモリに、書換不可能に記録することによって解決することができる。しかしながら、書換モードに移行するためのプログラムを、書換不可能に記録してしまうと、制御プログラムの変更に伴って、移行条件の変更が必要となるような大幅なプログラム更新ができなくなり、不便である。 Of course, such a problem can be solved by recording the program for shifting to the rewrite mode in a non-rewritable memory. However, if the program for shifting to the rewrite mode is recorded so as not to be rewritable, it will not be possible to perform a significant program update that requires changing the transition conditions in accordance with the change of the control program, which is inconvenient. is there.
本発明は、こうした問題に鑑みなされたものであり、書換モードへ移行するためのプログラムを、書換可能に不揮発性メモリに記録する情報処理装置において、プログラムの更新時にエラーが生じた場合でも、安全を確保することができるようにすることを第一の目的とする。 The present invention has been made in view of these problems, and in an information processing apparatus that records a program for shifting to a rewrite mode in a rewritable nonvolatile memory, even if an error occurs when the program is updated, the present invention is safe. The primary purpose is to ensure that
また、上記装置では、移行条件がエラーにより実現不可能な条件となると、その後、二度とプログラムを書き換えることができないといった問題が生じるので、本発明は、再度のプログラム更新を実現できるようにすることを第二の目的とする。 Further, in the above apparatus, when the transition condition becomes an unrealizable condition due to an error, there arises a problem that the program cannot be rewritten again, and the present invention makes it possible to realize the program update again. Second purpose.
かかる目的を達成するためになされた請求項1記載の情報処理装置は、不揮発性メモリに書換可能に応用プログラムを記憶し、コンピュータにて、不揮発性メモリから応用プログラムを読み出し、実行する。また、外部装置からの入力データに基づき、不揮発性メモリに書換可能に記憶された応用プログラムを、更新手段にて更新する。
The information processing apparatus according to
また、不揮発性メモリには、予め定められた更新条件が満足されたか否かを判断し、更新条件が満足されると、上記更新手段を起動する手順を、コンピュータに実行させるための更新判断プログラム、を含む応用プログラムが書換可能に記憶されており、情報処理装置は、不揮発性メモリにおいて書換可能に記憶された上記更新判断プログラムが正しいものであるか否かを、コンピュータによる更新判断プログラムの実行前に、診断手段にて判断し、更新判断プログラムが正しいものではない場合、出力手段にてエラー情報を出力する。 Further, the nonvolatile memory determines whether or not a predetermined update condition is satisfied, and when the update condition is satisfied, an update determination program for causing the computer to execute a procedure for starting the update means , And the information processing apparatus executes whether the update determination program stored in the nonvolatile memory is rewritable or not by executing a computer-based update determination program. Prior to the determination by the diagnosis means, if the update determination program is not correct, the output means outputs error information.
このように構成された本発明の情報処理装置によれば、プログラムの更新時にエラーが生じ、更新判断プログラムが正常に動作しなくなった場合に、更新判断プログラムが異常な状態であることをユーザに報知することができるので、この現象をユーザが理解していないことによって、安全上の問題が生じるのを防止することができる。例えば、情報処理装置が車両制御用の情報処理装置である場合、車速がゼロでもないのにもかかわらず、更新条件が満足されて、更新手段が起動してしまうことによる車両安全上の問題を解消することができる。 According to the information processing apparatus of the present invention configured as described above, when an error occurs when updating a program and the update determination program does not operate normally, the user is notified that the update determination program is in an abnormal state. Since the notification can be made, it is possible to prevent a safety problem from occurring when the user does not understand this phenomenon. For example, when the information processing device is an information processing device for vehicle control, the vehicle safety problem due to activation of the update means when the update condition is satisfied even though the vehicle speed is not zero. Can be resolved.
尚、上述した診断手段、出力手段、更新手段としての機能は、プログラムによりコンピュータに実現させることができる。
請求項2記載の情報処理装置は、コンピュータを診断手段及び出力手段として機能させるためのプログラムが、応用プログラムを読み出すために、上記コンピュータが実行するブートプログラムに組み込まれたものである。この情報処理装置におけるコンピュータは、ブートプログラムの実行により、上記応用プログラムの実行に先駆けて、診断手段として機能するためのプログラムを実行すると共に、このプログラムの実行結果に従って、更新判断プログラムが正しいものではない場合、出力手段として機能するためのプログラムを、応用プログラムに代えて実行する。
Note that the functions as the above-described diagnosis means, output means, and update means can be realized by a computer by a program.
According to a second aspect of the present invention, there is provided an information processing apparatus in which a program for causing a computer to function as a diagnosis unit and an output unit is incorporated in a boot program executed by the computer to read out an application program. The computer in this information processing apparatus executes a program for functioning as diagnostic means prior to execution of the application program by executing a boot program, and the update determination program is not correct according to the execution result of the program. If not, a program for functioning as output means is executed instead of the application program.
このように、診断手段及び出力手段としての機能をコンピュータに実現させるためのプログラムを、ブートプログラムに組み込んでおけば、簡単な構造で、更新判断プログラムの実行前に、更新判断プログラムが正しいものであるか否かを判断することができる。また、更新されることがないため診断手段及び出力手段が正しいものであるか否かを判断する必要がない。 In this way, if the program for realizing the functions of the diagnosis unit and the output unit in the computer is incorporated in the boot program, the update determination program is correct with a simple structure and before the update determination program is executed. It can be determined whether or not there is. Further, since it is not updated, it is not necessary to determine whether or not the diagnostic means and the output means are correct.
また、本発明は、車両制御用の情報処理装置に適用されると好ましい。請求項3記載の情報処理装置は、更新判断プログラムと、車両に搭載された所定の制御対象装置を制御するための車両制御用プログラムと、が応用プログラムとして、不揮発性メモリに記憶され、上記コンピュータが、車両に搭載された各種センサからの入力信号を受け付ける入力ポート及び制御対象装置に対する制御信号を出力する出力ポートを有し、車両制御用プログラムを実行することにより、各種センサからの入力信号に基づき、出力ポートから制御信号を出力して、制御対象装置を制御し、更新判断プログラムを実行することにより、各種センサからの入力信号に基づき、更新条件が満足されたか否かを判断する構成にされたものである。 Further, the present invention is preferably applied to an information processing apparatus for vehicle control. An information processing device according to claim 3 is an application program in which an update determination program and a vehicle control program for controlling a predetermined control target device mounted on a vehicle are stored in a nonvolatile memory, and the computer Has an input port for receiving input signals from various sensors mounted on the vehicle and an output port for outputting control signals to the control target device, and by executing a vehicle control program, Based on the input signals from various sensors, it is determined whether or not the update condition is satisfied by outputting a control signal from the output port, controlling the control target device, and executing the update determination program. It has been done.
この発明によれば、プログラム更新時に、更新条件に誤りが生じることにより、例えば、センサから入力される車速がゼロでもないにもかかわらず、更新条件が満足されて、更新手段が起動してしまうのを防止することができる。即ち、更新条件として、車両の安全を確保するための条件を設定する場合には、更新時の誤りによって、車両の安全が確保できなくなるのを防止することができる。 According to the present invention, when the program is updated, an error occurs in the update condition. For example, even if the vehicle speed input from the sensor is not zero, the update condition is satisfied and the update unit is activated. Can be prevented. That is, when a condition for ensuring the safety of the vehicle is set as the update condition, it is possible to prevent the safety of the vehicle from being unable to be ensured due to an error during the update.
また、更新条件として、良好なプログラム書換環境の条件を設定する場合には、良好なプログラム書換環境でないにもかかわらず、プログラムの更新が行われて、プログラムに誤り等が生じるのを防止することができる。 In addition, when setting a good program rewriting environment condition as an update condition, it is possible to prevent the program from being updated and causing an error or the like even though the program rewriting environment is not good. Can do.
その他、プログラム更新時にエラーが生じて、更新判断プログラムが正しいものではなくなり、正常な更新判断ができなくなると、更新判断プログラムによって更新手段を起動することができなくなる可能性があるので、上述の情報処理装置には、割込信号入力用のポートを設けるとよい。 In addition, if an error occurs during program update and the update determination program is not correct and normal update determination cannot be performed, the update determination program may not be able to start the update means. The processing device may be provided with an interrupt signal input port.
請求項4記載の情報処理装置は、コンピュータが、更新手段の起動に用いる割込信号入力用のポートを有すると共に、割込信号入力用のポートから、割込信号が入力されると、更新手段を起動する機能を有したものである。 5. The information processing apparatus according to claim 4, wherein the computer has an interrupt signal input port used for starting the update means, and when the interrupt signal is input from the interrupt signal input port, the update means It has the function to start.
この情報処理装置によれば、更新判断プログラムによっては更新手段を起動することができなくなっても、割込信号を入力するといった特別な操作により、更新手段を起動することができる。即ち、この発明によれば、更新判断プログラムの異常によって、応用プログラムの更新ができなくなるのを防止することができる。従って、本発明によれば、更新判断プログラムの書換に失敗した場合でも、情報処理装置を処分しなくて済み、経済性が向上する。 According to this information processing apparatus, even if the update unit cannot be started depending on the update determination program, the update unit can be started by a special operation such as inputting an interrupt signal. That is, according to the present invention, it is possible to prevent the application program from being updated due to an abnormality in the update determination program. Therefore, according to the present invention, even when rewriting of the update determination program fails, it is not necessary to dispose of the information processing apparatus, and the economic efficiency is improved.
以下、本発明の実施例について、図面とともに説明する。尚、本発明の実施の形態は、下記の実施例に何ら限定されることなく、本発明の技術的範囲に属する限り、種々の態様を採りえることは言うまでもない。 Embodiments of the present invention will be described below with reference to the drawings. Needless to say, the embodiments of the present invention are not limited to the following examples, and can take various forms as long as they belong to the technical scope of the present invention.
図1は、本発明が適用された車両(自動車)用の電子制御装置1の構成を表す説明図である。この電子制御装置1は、自動車に搭載されて、エンジン制御を行うものであり、マイクロコンピュータ10と、割込入力回路20と、マイクロコンピュータ10に接続されたコネクタ31,32と、を備える。
FIG. 1 is an explanatory diagram showing the configuration of an
コネクタ31は、エンジン制御(燃料噴射制御、点火時期制御等)に必要な車両状態を検出するセンサの出力信号等を、マイクロコンピュータ10に入力するためのものであり、各種センサに接続される。
The
コネクタ31に接続されるセンサとしては、例えば、吸入空気量を測定するエアフローセンサや、吸気温度を検出する吸気温センサ41、吸気圧を検出する吸気圧センサ42、冷却水の温度を検出する水温センサ43、スロットル開度を検出するスロットルセンサ、エンジンの回転速度を検出するディストリビュータ44、車両速度を検出する車速センサ45、空燃比を検出する空燃比センサ、始動操作を検出するスタータスイッチ46等が挙げられる。
Examples of the sensor connected to the
また、コネクタ32は、外部ツール5(車両診断用ツールや、プログラム更新用ツール)を接続するためのコネクタであり、マイクロコンピュータ10の通信ポートPsに接続されている。
The
一方、割込入力回路20は、コネクタ31から入力される信号から、書換モード移行用の割込信号を生成して、これをマイクロコンピュータ10に入力するためのものである。この割込入力回路20は、正当な手続き以外では割込信号が発生しないように、冗長な構成にされている。本実施例では、コネクタ31を通じて上記手続きを実行することにより、割込信号を、この割込入力回路20に発生させて、マイクロコンピュータ10を書換モードに移行させる。
On the other hand, the interrupt
図2は、割込入力回路20の構成を表したブロック図である。図2に示すように、割込入力回路20は、アンド回路A1,A2,A3と、ノット回路N1,N2と、から構成されている。アンド回路A1は、コネクタ31における水温センサ43の接続部C4とマイクロコンピュータ10とを結ぶ線路に、ノット回路N1を介して接続され、更に、コネクタ31における吸気温センサ41の接続部C3とマイクロコンピュータ10とを結ぶ線路に、直接接続されている。
FIG. 2 is a block diagram showing the configuration of the interrupt
即ち、割込入力回路20は、接続部C4からL(ロウ)信号が入力され、接続部C3からH(ハイ)信号が入力されると、アンド回路A1からH信号を出力し、それ以外の場合にはL信号を出力する構成にされている。尚、このように割込入力回路20が構成されているのは、電子制御装置1の通常の使用状態(車両に搭載されている状態であって、水温センサ43が接続部C4に接続され、吸気温センサ41が接続部C3に接続されている状態)では、アンド回路A1から必ずL信号が出力されるようにするためである。
That is, the interrupt
また、アンド回路A2は、コネクタ31における吸気圧センサ42の接続部C2とマイクロコンピュータ10とを結ぶ線路に、ノット回路N2を介して接続され、更に、コネクタ31におけるスタータスイッチ46の接続部C1とマイクロコンピュータ10とを結ぶ線路に、直接接続されている。
The AND circuit A2 is connected to a line connecting the connection portion C2 of the
即ち、割込入力回路20は、接続部C2からL信号が入力され、接続部C1からH信号が入力されると、アンド回路A2からH信号を出力し、それ以外の場合にはL信号を出力する構成にされている。
That is, the interrupt
その他、アンド回路A3は、アンド回路A1,A2に接続され、アンド回路A1,A2の両者からH信号が入力された場合にのみ、マイクロコンピュータ10への割込信号として、H信号を出力する構成にされている。 In addition, the AND circuit A3 is connected to the AND circuits A1 and A2, and outputs the H signal as an interrupt signal to the microcomputer 10 only when the H signal is input from both the AND circuits A1 and A2. Has been.
従って、割込入力回路20は、電子制御装置1の通常の使用状態(センサがコネクタ31に接続されて装置が車両に搭載されている状態)では、割込信号をマイクロコンピュータ10に入力せず、ユーザの操作によって、接続部C4,C2からL信号が入力され、接続部C3,C1からH信号が入力されると、割込信号をマイクロコンピュータ10に入力する。
Therefore, the interrupt
尚具体的に、本実施例では、装置が正常に書換モードに移行しなくなった場合、当該電子制御装置1を車両から取り外して、図2に示すように、接続部C4,C2を接地し、接続部C3,C1に特定電圧(5V)を印加することによって、L信号及びH信号を割込入力回路20に入力し、これによって割込信号をマイクロコンピュータ10に入力し、マイクロコンピュータ10を書換モードに移行させる。
More specifically, in this embodiment, when the device does not normally shift to the rewrite mode, the
続いて、マイクロコンピュータ10の構成及び動作について説明する。図1に示すように、本実施例のマイクロコンピュータ10は、各種演算処理を行うCPU11と、プログラム等を記憶する書換可能なROM(所謂フラッシュROM)13と、CPU11によるプログラム実行時に作業領域と使用されるRAM15と、図示しない通信回路・入出力回路等を備えると共に、外部ツール5との通信用の通信ポートPsと、割込信号入力用のポートPiと、コネクタ31を介して各種センサに接続される検出信号入力用の入力ポートP1,P2,P3,P4,P5,P6,…と、図示しないイグナイタやインジェクタ等の制御対象装置に接続される制御信号出力用の出力ポートPoと、警告灯3制御用の出力ポートPkと、を備える。
Next, the configuration and operation of the microcomputer 10 will be described. As shown in FIG. 1, the microcomputer 10 of this embodiment includes a CPU 11 that performs various arithmetic processes, a rewritable ROM (so-called flash ROM) 13 that stores programs and the like, and a work area that is used when the CPU 11 executes a program. RAM 15, a communication circuit / input / output circuit (not shown), etc., and a communication port Ps for communication with the external tool 5, an interrupt signal input port Pi, and a
マイクロコンピュータ10のROM13は、書換不可能なマスク領域に、ブートプログラム記憶領域R1を備え、書換可能な領域に、アプリケーション(応用)プログラム記憶領域R2を備える。また、ブートプログラム記憶領域R1には、ブートプログラムと、アプリケーションプログラム記憶領域R2の書換処理を実現する書換プログラムと、が書換不可能に記録され、アプリケーションプログラム記憶領域R2には、図4に示すエンジン制御処理をCPU11に実現させるためのエンジン制御プログラム(制御データを含む)と、図4に示す書換条件判定処理をCPU11に実現させるための書換条件判定プログラムと、認証コードとを備えたアプリケーションプログラムが書換可能に記録されている。
The
図3は、ROM13内のデータ構成を示した説明図である。また、図4は、マイクロコンピュータ10のCPU11が起動直後に実行する処理の手順を示したフローチャートである。本実施例のCPU11は、起動直後にブートプログラム記憶領域R1に記憶されたブートプログラムを、ROM13から読み出して実行する。
FIG. 3 is an explanatory diagram showing the data structure in the
CPU11は、ブートプログラムの実行を開始すると、図示しないレジスタの初期設定を行うなどの所定の初期処理を実行した後(S110)、アプリケーションプログラムの認証コードが記述された領域を参照して、その認証コードが、ブートプログラムに記述された所定の認証コードと一致するか否かを判断し、これによって、アプリケーションプログラムが、メーカ等にて作成された当該電子制御装置1に適合する正当なプログラムであるか否かを判断する(S120)。そして、認証コードが一致しないと判断すると(S120でNo)、S150に移行して、車両に搭載された警告灯3(例えば、メータパネル内の警告灯)を点灯させる。その後、アプリケーションプログラムを読み出すことなく、当該ブートプログラムを終了する。
When the CPU 11 starts executing the boot program, the CPU 11 executes predetermined initial processing such as initial setting of a register (not shown) (S110), and then refers to the area in which the authentication code of the application program is described. It is determined whether or not the code matches a predetermined authentication code described in the boot program, whereby the application program is a legitimate program suitable for the
一方、認証コードが一致すると判断すると(S120でYes)、チェックサム方式にて、アプリケーションプログラム記憶領域R2内の予め定められた領域に記録された書換条件判定プログラムが正しいものであるか否かを判断する。具体的には、アプリケーションプログラム記憶領域R2内の予め定められた領域に記録された書換条件判定プログラムのサム値を演算し(S130)、このサム値が、予めブートプログラムに記述された規定値であるか否かを判断する(S140)。そして、サム値が規定値ではないと判断すると(S140でNo)、S150に移行して、車両に搭載された警告灯3を点灯させ、その後、アプリケーションプログラムを読み出すことなく、ブートプログラムを終了する。 On the other hand, if it is determined that the authentication codes match (Yes in S120), whether or not the rewrite condition determination program recorded in a predetermined area in the application program storage area R2 is correct by the checksum method. to decide. Specifically, the sum value of the rewrite condition determination program recorded in a predetermined area in the application program storage area R2 is calculated (S130), and this sum value is a predetermined value described in the boot program in advance. It is determined whether or not there is (S140). If it is determined that the thumb value is not the specified value (No in S140), the process proceeds to S150, the warning lamp 3 mounted on the vehicle is turned on, and then the boot program is terminated without reading the application program. .
尚、本実施例では、サム値が規定値となるように、書換条件判定プログラムが設計されていることを前提として上記ステップを実行する。換言すると、本実施例では、書換条件判定プログラムの記憶領域を冗長に用意し、この冗長な領域を用いて、サム値が規定値となるように、書換条件判定プログラムを設計する。 In the present embodiment, the above steps are executed on the assumption that the rewrite condition determination program is designed so that the sum value becomes the specified value. In other words, in this embodiment, a rewrite condition determination program storage area is prepared redundantly, and the rewrite condition determination program is designed so that the sum value becomes a specified value using this redundant area.
従って、サム値が規定値ではない状態は、アプリケーションプログラムの更新時に、何等かのエラーが生じて、アプリケーションプログラムに、誤りが生じていることを意味し、本実施例では、この場合、警告灯3を点灯させて(S150)、異常をユーザに報知するのである。 Therefore, the state where the sum value is not the specified value means that some error has occurred during the update of the application program, and the application program has an error. In this embodiment, in this case, a warning lamp 3 is turned on (S150) to notify the user of the abnormality.
これに対し、書換条件判定プログラムのサム値が規定値であると判断すると(S140でYes)、CPU11は、アプリケーションプログラム記憶領域R2に記憶されているアプリケーションプログラムを読み出し(S160)、これを実行する(S170〜S190)。 On the other hand, if it is determined that the sum value of the rewrite condition determination program is the specified value (Yes in S140), the CPU 11 reads the application program stored in the application program storage area R2 (S160) and executes it. (S170-S190).
アプリケーションプログラムを実行すると、CPU11は、まず、初期設定を行って、RAMに用意された受信履歴フラグをリセットし(S170)、その後、アプリケーションプログラムに含まれるエンジン制御プログラムを実行し、各種センサからの入力信号に基づき、車両状態に対応した制御信号を、インジェクタやイグナイタ等の制御対象装置に対して出力ポートPoから出力する。これにより、周知のエンジン制御を、1単位分行う(S180)。 When the application program is executed, the CPU 11 first performs initialization and resets the reception history flag prepared in the RAM (S170), and then executes the engine control program included in the application program, Based on the input signal, a control signal corresponding to the vehicle state is output from the output port Po to a control target device such as an injector or an igniter. Thereby, well-known engine control is performed for one unit (S180).
また、1単位分のエンジン制御が終了すると、外部ツール5から、コネクタ32及び通信ポートPsを介して、書換要求信号が入力されているか否かを判断し(S185)、書換要求信号が入力されていないと判断すると(S185でNo)、再び、1単位分のエンジン制御を行う(S180)。
When engine control for one unit is completed, it is determined whether or not a rewrite request signal is input from the external tool 5 via the
一方、書換要求信号が入力されていると判断すると(S185でYes)、CPU11は、アプリケーションプログラムに含まれる書換条件判定プログラムを実行する(S190)。図5は、書換条件判定プログラムの実行により、CPU11にて実現される書換条件判定処理を表すフローチャートである。 On the other hand, when determining that the rewrite request signal is input (Yes in S185), the CPU 11 executes the rewrite condition determination program included in the application program (S190). FIG. 5 is a flowchart showing a rewrite condition determination process realized by the CPU 11 by executing the rewrite condition determination program.
書換条件判定プログラムを実行すると、CPU11は、まずS210にて、受信履歴フラグがセットされているか否かを判断し、受信履歴フラグがセットされていない(即ち、リセット状態である)と判断すると(S210でNo)、受信履歴フラグをセットした後(S220)、アプリケーションプログラムの書換条件が満足されているか否かを判断する(S230)。 When the rewrite condition determination program is executed, the CPU 11 first determines whether or not the reception history flag is set in S210, and determines that the reception history flag is not set (that is, is in a reset state) ( After setting the reception history flag (S220), it is determined whether or not the application program rewrite conditions are satisfied (S230).
尚、本実施例において、書換条件は、書換条件判定プログラムに、直接記述されている。具体的に、アプリケーションプログラムの書換条件は、車両安全確保の観点等から、設計者が設定し、書換条件判定プログラムに記述する。例えば、車両安全確保の観点から、車両が停止していることを、書換条件として設定し、この条件を書換条件判定プログラムに記述する。 In the present embodiment, the rewrite conditions are directly described in the rewrite condition determination program. Specifically, the rewrite conditions of the application program are set by the designer from the viewpoint of ensuring vehicle safety and described in the rewrite condition determination program. For example, from the viewpoint of ensuring vehicle safety, the fact that the vehicle is stopped is set as a rewrite condition, and this condition is described in the rewrite condition determination program.
例えば、車速センサ45の入力信号に基づき、車両速度がゼロである場合にのみ、書換条件が満足されたとし(S230でYes)、書換プログラムを読み出して実行するように、書換条件判定プログラムを設計することにより、車両が停止していることを書換条件として設定する。
For example, based on the input signal of the
その他、車両安全確保の観点から、書換条件には、エンジン回転数についての条件を設定することができる。具体的には、ディストリビュータ44の入力信号に基づき、エンジン回転数が規定値以下であれば、書換条件が満足されたとし(S230でYes)、書換プログラムを読み出して実行するように、書換条件判定プログラムを設計することにより、エンジン回転数が規定値以下であることを書換条件として設定することができる。尚、複数の書換条件を設定する場合には、全ての書換条件が満足された場合にのみ、S230でYesと判断して、書換プログラムを読み出し実行するように、書換条件判定プログラムを設計すればよい。 In addition, from the viewpoint of ensuring vehicle safety, a condition for engine speed can be set as the rewriting condition. Specifically, based on the input signal of the distributor 44, if the engine speed is equal to or less than the specified value, the rewrite condition is determined to be satisfied (Yes in S230), and the rewrite program is read and executed. By designing the program, it can be set as a rewrite condition that the engine speed is equal to or less than a specified value. When a plurality of rewrite conditions are set, the rewrite condition determination program is designed so that only when all the rewrite conditions are satisfied, it is determined Yes in S230 and the rewrite program is read and executed. Good.
また、ROM書換時の動作保証条件を、書換条件として設定するには、例えば、電子制御装置1の周辺温度が規定値以下である場合に、書換条件が満足されたとし(S230でYes)、書換プログラムを読み出して実行するように、書換条件判定プログラムを設計することができる。このような手法で、動作保証条件を、書換条件として設定すれば、アプリケーションプログラムの実行時に、エラーの発生を防止することができる。
In order to set the operation guarantee condition at the time of ROM rewriting as the rewriting condition, for example, when the ambient temperature of the
話を戻し、S230において、アプリケーションプログラムの書換条件が満足されていないと判断すると(S230でNo)、CPU11は、コネクタ32に接続されている外部ツール5に対し、プログラムの書換を禁止した旨の書換禁止通知信号を出力する(S240)。その後、書換プログラムを読み出すことなく、当該書換条件判定処理を終了する。尚、S240の処理後には、再び、S180に移行して、エンジン制御を行っても良いし、再度のエンジン制御を行わずに、休止状態に移行してもよい。
Returning to the description, if it is determined in S230 that the rewrite condition of the application program is not satisfied (No in S230), the CPU 11 prohibits the external tool 5 connected to the
一方、S230において、アプリケーションプログラムの書換条件が満足されていると判断すると(S230でYes)、CPU11は、ROM13のブートプログラム記憶領域R1から書換プログラムを読み出し(S250)、これを実行する(S260)。尚、書換プログラムの実行により、当該電子制御装置1は、書換モードに移行する。
On the other hand, if it is determined in S230 that the rewrite condition of the application program is satisfied (Yes in S230), the CPU 11 reads the rewrite program from the boot program storage area R1 of the ROM 13 (S250) and executes it (S260). . Note that the
即ち、書換プログラムをCPU11が実行することにより実現される書換処理では、外部ツール5との通信により、外部ツール5から更新データ(新しいアプリケーションプログラムの全て、又は、差分データ等)を受信し、この更新データに基づいて、アプリケーションプログラム記憶領域R2内のデータを書き換え、ROM13内のアプリケーションプログラムを更新する。そして、この書換処理を終了すると、休止状態に移行し、その後、ブートプログラムを再起動する。
That is, in the rewrite process realized by the CPU 11 executing the rewrite program, update data (all new application programs or difference data, etc.) is received from the external tool 5 through communication with the external tool 5, Based on the update data, the data in the application program storage area R2 is rewritten, and the application program in the
また、本実施例の電子制御装置1のマイクロコンピュータ10では、割込入力回路20からの入力信号(換言すると、ポートPiからの入力信号)を常時監視し、割込信号(H信号)が入力されている場合には、書換プログラムを実行する。図6は、CPU11が、割込発生時に実行する割込制御処理を表すフローチャートである。
Further, in the microcomputer 10 of the
CPU11は、ポートPiから割込信号が入力され、割込信号が入力されていると判断すると書換プログラムを読み出し(S320)、これを実行する(S330)。
従って、本実施例では、装置が正常に書換モードに移行しなくなった場合(S230でYesと判断して、書換プログラムを読み出し、実行することができなくなった場合)、電子制御装置1を車両から取り外して、図2に示すように、コネクタ31を通じて、センサ接続時には発生しえない組合せのL信号及びH信号を生成すれば、割込信号を発生させて、マイクロコンピュータ10を書換モードに移行させることができる。
When the CPU 11 receives an interrupt signal from the port Pi and determines that the interrupt signal is input, the CPU 11 reads the rewrite program (S320) and executes it (S330).
Therefore, in this embodiment, when the device does not normally shift to the rewrite mode (when it is determined Yes in S230 and the rewrite program cannot be read and executed), the
以上、本実施例の電子制御装置1について説明したが、この電子制御装置1では、アプリケーションプログラムによって、コネクタ31から入力されるセンサの検出信号に基づき、書換条件(本発明の更新条件に相当)が満足されているか否かを判断し(S230)、車両状態や周囲の環境が所定の状態である場合にのみ、書換条件が満足されたとして(S230でYes)、書換プログラムを起動し(本発明の更新手段を起動する手順に相当)、これを実行して(S260)、ROM13に書換可能に記録された当該アプリケーションプログラムを更新する(更新手段)。
The
従って、一度アプリケーションプログラムの更新に失敗して、書換条件が変化してしまった場合には、車両状態や周囲の環境が適切な状態にないにもかかわらず、外部ツール5から書換要求信号を入力する程度で、電子制御装置1が書換モードに移行してしまい、例えば、車両が停止していないにもかかわらず、書換モードに移行してしまう可能性があるが、本実施例では、これに対処するために、ブートプログラムによって、アプリケーションプログラム記憶領域R2における書換条件判定プログラム(本発明の更新判断プログラムに相当)が記憶された領域のサム値を演算し、これを規定値と比較することにより、書換条件判定プログラムが正しいものであるか否かを、書換条件判定プログラムの実行前に判断し(S130,S140の処理が診断手段に相当)、書換条件判定プログラムが正しいものではない(サム値が規定値ではない)場合には、アプリケーションプログラムの実行に代えて、警告灯3を点灯させる制御を行い(S150の処理が出力手段に相当)、車両の安全を確保するようにした。
Therefore, if the update of the application program has failed once and the rewrite conditions have changed, the rewrite request signal is input from the external tool 5 even though the vehicle state and the surrounding environment are not in an appropriate state. As a result, the
このように、本実施例の電子制御装置1によれば、アプリケーションプログラムの更新時にエラーが生じ、書換条件判定プログラムが正常に動作しなくなった場合に、書換条件判定プログラムが異常な状態であることをユーザに報知するので、この現象をユーザが認識していないことによって、車両安全上又はプログラム更新の問題が生じるのを防止することができる。
As described above, according to the
また、本実施例によれば、書換条件判定プログラムを診断する手順をCPU11に実行させるためのプログラム及び、書換条件判定プログラムが異常である場合に、警告灯3を点灯させる手順をCPU11に実行させるためのプログラムが、ブートプログラムに組み込まれているので、簡単なプログラム構成で、アプリケーションプログラムの実行の先駆けて、確実に書換条件判定プログラムを診断し、異常がある場合には、その旨をユーザに報知することができる。 Further, according to the present embodiment, the CPU 11 executes a program for causing the CPU 11 to execute a procedure for diagnosing the rewrite condition determination program and a procedure for turning on the warning lamp 3 when the rewrite condition determination program is abnormal. The program for this is built into the boot program, so with a simple program configuration, the rewrite condition determination program is reliably diagnosed prior to the execution of the application program, and if there is an abnormality, the user is notified of that fact. Can be notified.
その他、本実施例の電子制御装置1では、マイクロコンピュータ10が、書換プログラムの起動に用いる割込信号入力用のポートPiを有すると共に、ポートPiから、割込信号が入力されると、書換プログラムを読み出して実行する(S320,S330)。従って、本実施例によれば、書換条件判定プログラムによっては書換プログラムを起動することができなくなっても、コネクタ31を通じてセンサ接続時にはなりえない信号を生成するといった特別な操作を行うことにより、割込信号を生成して、書換プログラムを起動することができ、書換条件判定プログラムの書換に失敗した場合でも、再度のプログラム更新が可能で、経済的な面で有利である。
In addition, in the
また、本発明は、上述した実施例に限定されるものではなく、例えば、車両制御用の電子制御装置以外の装置に、適用されてもよい。その他、上記実施例では、チェックサム方式にて、書換条件判定プログラムが正しいものであるか否かを判断するようにしたが、その他の方式にて、書換条件判定プログラムが正しいものであるか否かを判断するようにしてもよい。 Further, the present invention is not limited to the above-described embodiments, and may be applied to devices other than the electronic control device for vehicle control, for example. In addition, in the above embodiment, whether or not the rewrite condition determination program is correct is determined by the checksum method. However, whether or not the rewrite condition determination program is correct by other methods. You may make it judge.
1…電子制御装置、3…警告灯、5…外部ツール、10…マイクロコンピュータ、11…CPU、13…ROM、15…RAM、20…割込入力回路、31,32…コネクタ、41…吸気温センサ、42…吸気圧センサ、43…水温センサ、44…ディストリビュータ、45…車速センサ、46…スタータスイッチ、A1,A2,A3…アンド回路、N1,N2…ノット回路、C1,C2,C3,C4,C5,C6…接続部、P1,P2,P3,P4,P5,P6,Pi…入力ポート、Pk,Po…出力ポート、Ps…通信ポート、R1…ブートプログラム記憶領域、R2…アプリケーションプログラム記憶領域
DESCRIPTION OF
Claims (4)
前記不揮発性メモリが記憶する応用プログラムを、前記不揮発性メモリから読み出して、この応用プログラムを実行するコンピュータと、
外部装置からの入力データに基づき、前記不揮発性メモリに書換可能に記憶された応用プログラムを、更新する更新手段と、
を備えた情報処理装置であって、
前記不揮発性メモリには、予め定められた更新条件が満足されたか否かを判断し、前記更新条件が満足されると、前記更新手段を起動する手順を、前記コンピュータに実行させるための更新判断プログラム、を含む前記応用プログラムが書換可能に記憶され、
当該情報処理装置は、更に、
前記不揮発性メモリにおいて書換可能に記憶された更新判断プログラムが正しいものであるか否かを、前記コンピュータによる前記更新判断プログラムの実行前に、判断する診断手段と、
前記診断手段により前記更新判断プログラムが正しいものではないと判断されると、エラー情報を出力する出力手段と、
を備えることを特徴とする情報処理装置。 A non-volatile memory for storing application programs in a rewritable manner;
A computer that reads the application program stored in the nonvolatile memory from the nonvolatile memory and executes the application program;
Updating means for updating the application program stored in the nonvolatile memory in a rewritable manner based on input data from an external device;
An information processing apparatus comprising:
The nonvolatile memory determines whether or not a predetermined update condition is satisfied, and when the update condition is satisfied, an update determination for causing the computer to execute a procedure for starting the update unit The application program including the program is rewritably stored,
The information processing apparatus further includes:
Diagnostic means for determining whether or not the update determination program stored in the nonvolatile memory so as to be rewritable is correct before the execution of the update determination program by the computer;
When the diagnostic means determines that the update determination program is not correct, output means for outputting error information;
An information processing apparatus comprising:
前記コンピュータを前記診断手段及び出力手段として機能させるためのプログラムは、前記応用プログラムを起動するために、前記コンピュータが実行するブートプログラムに組み込まれ、
前記ブートプログラムは、前記応用プログラムの実行に先駆けて、前記コンピュータを前記診断手段として機能させるためのプログラムを、前記コンピュータに実行させ、前記更新判断プログラムが正しいものではない場合、前記応用プログラムの実行に代えて、前記コンピュータを前記出力手段として機能させるためのプログラムを、前記コンピュータに実行させるための構成を備えることを特徴とする請求項1記載の情報処理装置。 The functions as the diagnostic means and the output means are realized by the computer,
A program for causing the computer to function as the diagnostic unit and the output unit is incorporated in a boot program executed by the computer to start the application program,
Prior to the execution of the application program, the boot program causes the computer to execute a program for causing the computer to function as the diagnostic unit, and if the update determination program is not correct, the execution of the application program The information processing apparatus according to claim 1, further comprising: a configuration for causing the computer to execute a program for causing the computer to function as the output unit.
前記コンピュータは、車両に搭載された各種センサからの入力信号を受け付ける入力ポート及び前記制御対象装置に対する制御信号を出力する出力ポートを有し、前記車両制御用プログラムを実行することにより、前記各種センサからの入力信号に基づき、前記出力ポートから制御信号を出力して、前記制御対象装置を制御し、前記更新判断プログラムを実行することにより、前記各種センサからの入力信号に基づき、更新条件が満足されたか否かを判断することを特徴とする請求項1又は請求項2記載の情報処理装置。 In the non-volatile memory, as the application program, the update determination program and a vehicle control program for controlling a predetermined control target device mounted on the vehicle are stored in a rewritable manner.
The computer has an input port for receiving an input signal from various sensors mounted on a vehicle and an output port for outputting a control signal for the device to be controlled, and the various sensors by executing the vehicle control program. Based on the input signal from the sensor, the control signal is output from the output port, the control target device is controlled, and the update determination program is executed, so that the update condition is satisfied based on the input signal from the various sensors. The information processing apparatus according to claim 1, wherein the information processing apparatus determines whether it has been performed.
The computer has an interrupt signal input port used for starting the update means, and has a function of starting the update means when an interrupt signal is input from the interrupt signal input port. The information processing apparatus according to claim 1, wherein the information processing apparatus is an information processing apparatus.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005148495A JP2006323776A (en) | 2005-05-20 | 2005-05-20 | Information processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005148495A JP2006323776A (en) | 2005-05-20 | 2005-05-20 | Information processor |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006323776A true JP2006323776A (en) | 2006-11-30 |
Family
ID=37543389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005148495A Pending JP2006323776A (en) | 2005-05-20 | 2005-05-20 | Information processor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006323776A (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008275229A (en) * | 2007-04-27 | 2008-11-13 | Sanden Corp | Hot water supply device |
CN103412561A (en) * | 2013-08-08 | 2013-11-27 | 奇瑞汽车股份有限公司 | Automobile controller refreshing method and device |
JP2014235652A (en) * | 2013-06-04 | 2014-12-15 | 株式会社デンソー | Electronic control device |
CN105573148A (en) * | 2014-10-11 | 2016-05-11 | 广州汽车集团股份有限公司 | Vspy-based ECU software refreshing method and Vspy-based software refreshing device |
CN106444730A (en) * | 2016-12-19 | 2017-02-22 | 普华基础软件股份有限公司 | Method for diagnosing electronic control unit for preventing software halt |
CN107729044A (en) * | 2016-08-12 | 2018-02-23 | 罗伯特·博世有限公司 | Method and apparatus for being safeguarded to vehicle |
US10354073B2 (en) | 2015-07-30 | 2019-07-16 | Kabushiki Kaisha Toshiba | Information processor device verifying software and method of controlling information processor device |
KR20200115125A (en) * | 2019-03-25 | 2020-10-07 | 주식회사 엘지화학 | Diagnostic system for a vhicle electrical system |
JP2021192280A (en) * | 2017-10-12 | 2021-12-16 | 日立Astemo株式会社 | Information update device and information update method |
WO2023008373A1 (en) * | 2021-07-26 | 2023-02-02 | 株式会社堀場製作所 | Test system, test method, and program recording medium for test system |
-
2005
- 2005-05-20 JP JP2005148495A patent/JP2006323776A/en active Pending
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008275229A (en) * | 2007-04-27 | 2008-11-13 | Sanden Corp | Hot water supply device |
JP2014235652A (en) * | 2013-06-04 | 2014-12-15 | 株式会社デンソー | Electronic control device |
CN103412561A (en) * | 2013-08-08 | 2013-11-27 | 奇瑞汽车股份有限公司 | Automobile controller refreshing method and device |
CN103412561B (en) * | 2013-08-08 | 2016-12-28 | 奇瑞汽车股份有限公司 | A kind of method for refreshing of automobile controller |
CN105573148B (en) * | 2014-10-11 | 2018-06-26 | 广州汽车集团股份有限公司 | A kind of ECU software method for refreshing and device based on Vspy |
CN105573148A (en) * | 2014-10-11 | 2016-05-11 | 广州汽车集团股份有限公司 | Vspy-based ECU software refreshing method and Vspy-based software refreshing device |
US10354073B2 (en) | 2015-07-30 | 2019-07-16 | Kabushiki Kaisha Toshiba | Information processor device verifying software and method of controlling information processor device |
CN107729044A (en) * | 2016-08-12 | 2018-02-23 | 罗伯特·博世有限公司 | Method and apparatus for being safeguarded to vehicle |
CN106444730A (en) * | 2016-12-19 | 2017-02-22 | 普华基础软件股份有限公司 | Method for diagnosing electronic control unit for preventing software halt |
CN106444730B (en) * | 2016-12-19 | 2022-06-21 | 普华基础软件股份有限公司 | Diagnosis method of electronic control unit for preventing software from being dead |
JP2021192280A (en) * | 2017-10-12 | 2021-12-16 | 日立Astemo株式会社 | Information update device and information update method |
JP7280319B2 (en) | 2017-10-12 | 2023-05-23 | 日立Astemo株式会社 | Information update device |
KR20200115125A (en) * | 2019-03-25 | 2020-10-07 | 주식회사 엘지화학 | Diagnostic system for a vhicle electrical system |
KR102221086B1 (en) | 2019-03-25 | 2021-02-25 | 주식회사 엘지화학 | Diagnostic system for a vhicle electrical system |
WO2023008373A1 (en) * | 2021-07-26 | 2023-02-02 | 株式会社堀場製作所 | Test system, test method, and program recording medium for test system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2006323776A (en) | Information processor | |
JP4692318B2 (en) | Electronic control unit | |
JP5176728B2 (en) | Electronic control device for vehicle | |
JP4937066B2 (en) | Electronic control device | |
JP4475320B2 (en) | Vehicle memory management device | |
JPH11259375A (en) | Device and system for control for vehicle | |
JP2003256228A (en) | Program rewriting device | |
JP5967059B2 (en) | Electronic control device for vehicle | |
US6401163B1 (en) | Apparatus and method for rewriting data from volatile memory to nonvolatile memory | |
JPH11272498A (en) | Electronic controller | |
JPH1136973A (en) | Vehicle contorl device | |
JP4552982B2 (en) | Electronic control unit | |
JP3870563B2 (en) | Electronic control device and non-volatile memory rewrite count method | |
JP2000045858A (en) | Rewriting number storing method for electronic control unit and non-volatile memory | |
JPH10149282A (en) | Memory rewriting system for electronic device | |
JP2002323902A (en) | Electronic controller | |
JP3968876B2 (en) | Electronic control unit | |
JP4833417B2 (en) | Microcomputer system protection method, memory device, and microcomputer system | |
JP2008196441A (en) | Control device for vehicle | |
JP6708596B2 (en) | Electronic control device and control program verification method | |
US6490663B1 (en) | Electronic control apparatus having rewritable nonvolatile memory | |
JP2003196256A (en) | Electronic control unit | |
JP5516509B2 (en) | Program writing system | |
JP2007041798A (en) | Information processor and memory rewriting method for information processor | |
JP2002323990A (en) | Electronic controller and method for initializing nonvolatile memory |