JP2009288953A - Electronic control device - Google Patents

Electronic control device Download PDF

Info

Publication number
JP2009288953A
JP2009288953A JP2008139584A JP2008139584A JP2009288953A JP 2009288953 A JP2009288953 A JP 2009288953A JP 2008139584 A JP2008139584 A JP 2008139584A JP 2008139584 A JP2008139584 A JP 2008139584A JP 2009288953 A JP2009288953 A JP 2009288953A
Authority
JP
Japan
Prior art keywords
communication module
initialization
communication
register
initialization process
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
Application number
JP2008139584A
Other languages
Japanese (ja)
Inventor
Toshiyuki Aga
俊幸 阿賀
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 JP2008139584A priority Critical patent/JP2009288953A/en
Publication of JP2009288953A publication Critical patent/JP2009288953A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an electronic control device capable of preventing delay in a control process other than an initializing process even if a communication module is applied with the initializing process. <P>SOLUTION: An ECU10 executes initializing processing on a communication module 30 by splitting it into a plurality of rounds using communication software 20 when starting an engine or when restarting the ECU10 after occurrence of abnormality. The ECU10, for example, initializes a transmission reception queue 62 of a communication driver 60, a message box 52 of a controller 50, and a register 54 of the controller 50 by writing an initial value and also initializes a terminal 42 of a transceiver 40. Further, ECU10 writes predetermined data in the register 54 of the controller 50, and executes an operation confirmation process for determining whether a value of predetermined data that has been written agrees with a value read from the register 54. When each of a round of initializing processes finishes, the ECU10 executes vehicle control other than the initializing process. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、通信線を介して通信を行う電子制御装置の通信モジュールに対する初期化に関する。   The present invention relates to initialization of a communication module of an electronic control device that performs communication via a communication line.

従来、CAN(Controller Area Network)等のLAN(Local Area Network)に電子制御装置(ECU:Electronic Control Unit)が接続し、ECU毎に動作する制御プログラムによりECU内で処理を実行するとともに、通信モジュールにより通信線を介して他のECUとデータを送受信することが知られている。   Conventionally, an electronic control unit (ECU) is connected to a LAN (Local Area Network) such as a CAN (Controller Area Network), and processing is performed in the ECU by a control program that operates for each ECU, and a communication module. It is known to transmit / receive data to / from another ECU via a communication line.

このようにLANに接続しているECUは、電源投入時、または異常発生時の再起動時等において、通信モジュールのメモリ、レジスタ等の各部のハードウェアを初期化する必要がある。しかし、通信モジュールの初期化処理を実施している間は、通信モジュールを使用しなくても実施できる初期化処理以外の制御処理を実施できないので、通信モジュールに対する初期化処理に要する時間が長くなると、通信モジュールを使用しない制御処理の実施が遅れる。   The ECU connected to the LAN as described above needs to initialize the hardware of each unit such as the memory and the register of the communication module when the power is turned on or restarted when an abnormality occurs. However, during the initialization process of the communication module, control processing other than the initialization process that can be performed without using the communication module cannot be performed. Implementation of control processing without using a communication module is delayed.

例えば、車内LANに接続しているECUにおいては、通信モジュールに対する初期化処理に要する時間が長くなると、通信モジュールを使用しなくても実施できる車両制御を行う制御処理に遅延が発生し、リアルタイム性を要求される車両制御が妨げられるおそれがある。   For example, in the ECU connected to the in-vehicle LAN, if the time required for the initialization process for the communication module becomes long, a delay occurs in the control process for performing the vehicle control that can be performed without using the communication module. There is a risk that the vehicle control that is required will be hindered.

そこで、特許文献1では、初期化を実施するタイミングに応じて不要な初期化処理を省略することにより、初期化に要する時間を短縮しようとしている。
特開平7−302137号公報
Therefore, in Patent Document 1, an attempt is made to shorten the time required for initialization by omitting unnecessary initialization processing in accordance with the timing of initialization.
JP-A-7-302137

しかしながら、特許文献1では、省略できない必須の初期化処理は実施されるので、必須の初期化処理が終了するまでは初期化処理以外の制御処理を実施することはできない。そして、ECUの通信品質を確保するために、ECUの通信モジュールの初期化は必須の処理であるから、通信モジュールに対する初期化処理の一部を省略することはできない。   However, in Patent Document 1, since essential initialization processing that cannot be omitted is performed, control processing other than initialization processing cannot be performed until the essential initialization processing is completed. In order to ensure the communication quality of the ECU, the initialization of the communication module of the ECU is an indispensable process, and therefore a part of the initialization process for the communication module cannot be omitted.

本発明は、上記問題を解決するためになされたものであり、通信モジュールに対する初期化処理を実施しても初期化処理以外の制御処理の遅れを防止する電子制御装置を提供することを目的とする。   The present invention has been made to solve the above problems, and an object of the present invention is to provide an electronic control device that prevents delays in control processing other than initialization processing even when initialization processing is performed on a communication module. To do.

請求項1から4に記載の発明によると、初期化手段は、通信線との間でデータを送受信する通信モジュールに対する初期化処理を複数回に分けて実施する。
通信モジュールに対する初期化処理を1回で全て実施するのではなく、複数回に分けて実施するので、複数回に分割された1回当たりの初期化処理に要する時間が短くなる。これにより、通信モジュールに対する全ての初期化処理が終了するまで通信モジュールを使用しない制御処理の実施を待ち合わせる必要がなく、各回の初期化処理が終了すると、初期化処理以外の制御処理を実施できる。その結果、通信モジュールに対する初期化処理を実施する場合にも、他の制御処理の遅れを防止できる。複数回に分割された通信モジュールに対する初期化処理がすべて終了すれば、通信モジュールを使用する制御処理も実施できる。
According to the first to fourth aspects of the present invention, the initialization unit performs the initialization process for the communication module that transmits and receives data to and from the communication line in a plurality of times.
Since the initialization processing for the communication module is not performed all at once, but is performed in a plurality of times, the time required for the initialization processing per time divided into a plurality of times is shortened. Thereby, it is not necessary to wait for the execution of the control process that does not use the communication module until all the initialization processes for the communication module are completed, and when each initialization process is completed, control processes other than the initialization process can be performed. As a result, even when the initialization process for the communication module is performed, delays in other control processes can be prevented. If the initialization process for the communication module divided into a plurality of times is completed, the control process using the communication module can be performed.

請求項2に記載の発明によると、初期化手段が初期化処理を複数回に分けて実施する分割数を記憶する書換え可能な不揮発性の分割数記憶手段をさらに備え、初期化手段は分割数記憶手段に記憶されている分割数に基づいて初期化処理を複数回に分けて実施する。   According to a second aspect of the present invention, the initialization means further comprises a rewritable nonvolatile division number storage means for storing a division number for performing the initialization process in a plurality of times, and the initialization means includes the division number. The initialization process is performed in a plurality of times based on the number of divisions stored in the storage means.

これにより、電子制御装置の性能、通信モジュールに対する初期化処理に要する時間等に応じて、分割数記憶手段に記憶されている分割数を適宜設定できる。
ところで、通信モジュールにおいて受信データと送信データとを格納するレジスタに異常があると、通信線との間で正常にデータを送受信できなくなるおそれがある。
Thereby, the division number stored in the division number storage means can be appropriately set according to the performance of the electronic control unit, the time required for the initialization process for the communication module, and the like.
By the way, if there is an abnormality in a register for storing received data and transmitted data in the communication module, there is a possibility that data cannot be normally transmitted to and received from the communication line.

そこで、請求項3に記載の発明によると、通信線から受信する受信データと、通信線に送信する送信データとを格納する通信モジュールのレジスタに対して、初期化手段は、所定データを書き込み、書き込んだ所定データの値とレジスタから読み出した値とが一致するかを判定する動作確認処理を実施する。   Therefore, according to the invention described in claim 3, the initialization means writes the predetermined data to the register of the communication module that stores the reception data received from the communication line and the transmission data transmitted to the communication line. An operation check process is performed to determine whether the value of the written predetermined data matches the value read from the register.

レジスタに書き込んだ所定データの値とレジスタから読み出した値とが一致すれば、レジスタは正常であると判断できる。そして、正常なレジスタを使用して、通信線との間で正常にデータを送受信できる。   If the value of the predetermined data written to the register matches the value read from the register, it can be determined that the register is normal. Then, data can be normally transmitted to and received from the communication line using a normal register.

さらに、送受信データを格納する複数のレジスタに所定データを書き込み、レジスタに書き込んだ所定データの値とレジスタから読み出した値とが一致するかを判定する動作確認処理には、他の初期化処理よりも長い時間を要する。したがって、レジスタに対する動作確認処理を含めた初期化処理を複数回に分けて実施することにより、レジスタに対する動作確認処理を含む初期化処理を実施する場合にも、他の制御処理の遅れを防止できる。   Furthermore, in the operation confirmation process for writing predetermined data to a plurality of registers for storing transmission / reception data, and determining whether the value of the predetermined data written in the register matches the value read from the register, the other initialization process Takes a long time. Therefore, by performing the initialization process including the operation confirmation process for the register in a plurality of times, delay of other control processes can be prevented even when the initialization process including the operation confirmation process for the register is performed. .

請求項4に記載の発明によると、電子制御装置は車両に搭載されて車両制御を実施する。
これにより、各回の初期化処理が終了すると、通信モジュールを使用しない初期化処理以外の車両制御を実施できる。その結果、通信モジュールに対する初期化処理を実施する場合にも、リアルタイムを要求される車両制御の遅れを極力低減し速やかに車両制御を実施できる。そして、通信モジュールに対する初期化処理がすべて終了すれば、通信モジュールを使用する車両制御を実施できる。
According to the fourth aspect of the present invention, the electronic control device is mounted on the vehicle and performs vehicle control.
Thereby, when the initialization process of each time is complete | finished, vehicle control other than the initialization process which does not use a communication module can be implemented. As a result, even when the initialization process for the communication module is performed, the delay of the vehicle control requiring real time can be reduced as much as possible, and the vehicle control can be performed promptly. And if all the initialization processes with respect to a communication module are complete | finished, the vehicle control which uses a communication module can be implemented.

尚、本発明に備わる手段の各機能は、構成自体で機能が特定されるハードウェア資源、プログラムにより機能が特定されるハードウェア資源、またはそれらの組み合わせにより実現される。また、これら複数の手段の各機能は、各々が物理的に互いに独立したハードウェア資源で実現されるものに限定されない。   It should be noted that each function of the means provided in the present invention is realized by a hardware resource whose function is specified by the configuration itself, a hardware resource whose function is specified by a program, or a combination thereof. The functions of the plurality of means are not limited to those realized by hardware resources that are physically independent of each other.

以下、本発明の実施形態を図に基づいて説明する。
本発明の一実施形態を図に基づいて説明する。
図1に示すように、ECU10は、通信線としてCANバス100を用いた車内LANに接続される。ECU10以外にも、複数のECUがCANバス100に接続している。ECU10は、CPU12、RAM14、ROM16、フラッシュメモリ18、各種レジスタ、通信インタフェース等から構成されるマイクロコンピュータである。ECU10は、特許請求の範囲に記載した初期化手段、分割数記憶手段として機能する。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
An embodiment of the present invention will be described with reference to the drawings.
As shown in FIG. 1, the ECU 10 is connected to an in-vehicle LAN using a CAN bus 100 as a communication line. In addition to the ECU 10, a plurality of ECUs are connected to the CAN bus 100. The ECU 10 is a microcomputer including a CPU 12, a RAM 14, a ROM 16, a flash memory 18, various registers, a communication interface, and the like. The ECU 10 functions as an initialization unit and a division number storage unit described in the claims.

ECU10のCPU12は、通信ソフト20を実行することにより通信モジュール30を制御するとともに、車両制御ソフトを実行することにより車両各部の装置を制御する。通信ソフト20および車両制御ソフトは、ROM16またはフラッシュメモリ18に記憶されている。ECU10は、通信モジュール30を使用してCANバス100を介して他のECUとデータを送受信する。ECU10が複数の通信チャネルを備える場合、通信チャネル毎に通信モジュール30が設置される。   The CPU 12 of the ECU 10 controls the communication module 30 by executing the communication software 20 and also controls the devices of the various parts of the vehicle by executing the vehicle control software. Communication software 20 and vehicle control software are stored in ROM 16 or flash memory 18. The ECU 10 transmits and receives data to and from other ECUs via the CAN bus 100 using the communication module 30. When the ECU 10 includes a plurality of communication channels, the communication module 30 is installed for each communication channel.

ECU10は、CANバス100を介して他のECUとデータを送受信することにより他のECUと連携して車両制御を実施してもよいし、CANバス100を介さず各種センサの検出信号を直接入力し独立して車両制御を実施してもよい。   The ECU 10 may perform vehicle control in cooperation with other ECUs by transmitting / receiving data to / from other ECUs via the CAN bus 100, or directly input detection signals from various sensors without passing through the CAN bus 100. However, the vehicle control may be performed independently.

(通信ソフト20)
ECU10は、通信ソフト20を実行することにより、車両制御ソフトからの要求に応じて通信モジュール30を制御し、CANバス100を介して他のECUとデータを送受信する。また、ECU10は、通信ソフト20により通信モジュール30に対する初期化処理を実施する。
(Communication software 20)
The ECU 10 executes the communication software 20 to control the communication module 30 in response to a request from the vehicle control software, and exchanges data with other ECUs via the CAN bus 100. In addition, the ECU 10 performs an initialization process for the communication module 30 using the communication software 20.

(通信モジュール30)
通信モジュール30は、上位の通信ソフト20が生成した送信データをCANバス100に送信するとともに、CANバス100から受信した受信データを通信ソフト20に受け渡す。
(Communication module 30)
The communication module 30 transmits the transmission data generated by the higher-level communication software 20 to the CAN bus 100 and passes the reception data received from the CAN bus 100 to the communication software 20.

通信モジュール30は、主にトランシーバ40とコントローラ50と通信ドライバ60とから構成されている。
トランシーバ40は、CANバス100のバス信号を端子42から受信し、コントローラ50が扱える受信信号に変換してコントローラ50に出力するとともに、コントローラ50が送信する送信信号をCANバス100のバス用のバス信号に変換してCANバス100に送信する。
The communication module 30 mainly includes a transceiver 40, a controller 50, and a communication driver 60.
The transceiver 40 receives the bus signal of the CAN bus 100 from the terminal 42, converts it into a received signal that can be handled by the controller 50, outputs the signal to the controller 50, and transmits the transmission signal transmitted by the controller 50 to the bus for the bus of the CAN bus 100. The signal is converted into a signal and transmitted to the CAN bus 100.

コントローラ50は、メッセージボックス52とレジスタ54とを有している。メッセージボックス52は、例えば送信用のメッセージボックス52と受信用のメッセージボックス52とからなり、コントローラ50のレジスタ54と通信ドライバ60の送受信キュー62との間でデータの受け渡しを行う。   The controller 50 has a message box 52 and a register 54. The message box 52 includes, for example, a transmission message box 52 and a reception message box 52, and exchanges data between the register 54 of the controller 50 and the transmission / reception queue 62 of the communication driver 60.

複数のレジスタ54は、メッセージボックス52から受け取った送信データの格納用、あるいはトランシーバ40が受信した受信データの格納用に使用されるレジスタである。
コントローラ50は、送信用のメッセージボックス52を介して通信ドライバ60の送信キュー62から送信データを複数のレジスタ54に順次格納し、レジスタ54に格納された送信データをフレーム化してトランシーバ40に出力する送信制御と、トランシーバ40を介してCANバス100からフレームを受信してメッセージ等を抽出して複数のレジスタ54に順次格納し、受信用のメッセージボックス52から通信ドライバ60の受信キュー62に出力する受信制御と、CANバス100上で送信フレームが衝突したときのバス権の調停制御などを実施する。
The plurality of registers 54 are used for storing transmission data received from the message box 52 or storing received data received by the transceiver 40.
The controller 50 sequentially stores transmission data from the transmission queue 62 of the communication driver 60 via the transmission message box 52 in a plurality of registers 54, frames the transmission data stored in the register 54, and outputs the frames to the transceiver 40. Transmission control, receiving a frame from the CAN bus 100 via the transceiver 40, extracting messages and the like, sequentially storing them in a plurality of registers 54, and outputting them from the reception message box 52 to the reception queue 62 of the communication driver 60 Receiving control and bus arbitration control when transmission frames collide on the CAN bus 100 are performed.

通信ドライバ60は、送信時には、通信ソフト20が生成した送信データを送信キュー62に格納する。そして、通信ドライバ60は、メッセージの内容からそのメッセージに対応するIDコードを特定し、これらメッセージ及びIDコードを送信用のメッセージボックス52に出力する。   The communication driver 60 stores the transmission data generated by the communication software 20 in the transmission queue 62 at the time of transmission. Then, the communication driver 60 specifies an ID code corresponding to the message from the content of the message, and outputs the message and the ID code to the message box 52 for transmission.

また、通信ドライバ60は、コントローラ50から、割込やフラグの表示等によりフレームを受信した旨の通知を受けた場合、受信用のメッセージボックス52を読み出して受信キュー62に格納する。   When the communication driver 60 receives a notification from the controller 50 that the frame has been received by an interrupt, a flag display, or the like, the communication driver 60 reads the message box 52 for reception and stores it in the reception queue 62.

(初期化処理)
ECU10のCPU12は、エンジンスタート時、および異常発生時のECU10の再起動時等において、通信モジュール30を含む通信ソフトウェアおよび通信ハードウェアに対する初期化処理を通信ソフト20により実施する。この初期化処理は、通信モジュール30のレジスタ54に対する動作確認処理を含んでいる。
(Initialization process)
The CPU 12 of the ECU 10 performs initialization processing for the communication software and communication hardware including the communication module 30 with the communication software 20 when the engine is started and when the ECU 10 is restarted when an abnormality occurs. This initialization process includes an operation confirmation process for the register 54 of the communication module 30.

図2〜図5に、通信に関する初期化処理のフローチャートを示す。図2〜図5において、「S」はステップを表している。
図2のS300において、ECU10は、上位の通信ソフト20が使用するRAM14の使用領域に初期値を書き込み、S302において通信モジュール30を初期化する。S310〜S318は、S302において実施される通信モジュール30の初期化処理の概要を示すフローチャートである。
2 to 5 show flowcharts of initialization processing related to communication. 2 to 5, “S” represents a step.
In S300 of FIG. 2, the ECU 10 writes an initial value in a use area of the RAM 14 used by the upper communication software 20, and initializes the communication module 30 in S302. S310 to S318 are flowcharts showing an overview of the initialization process of the communication module 30 performed in S302.

(通信モジュール30の初期化処理1)
S310、S312、S314においてECU10は、それぞれ通信ドライバ60の送受信キュー62、コントローラ50のメッセージボックス52、コントローラ50のレジスタ54に初期値を書き込んで初期化する。そして、ECU10は、S316においてトランシーバ40の端子42を初期設定し、S318においてコントローラ50のレジスタ54に対して動作確認処理を実施する。
(Communication module 30 initialization process 1)
In S310, S312, and S314, the ECU 10 writes and initializes initial values in the transmission / reception queue 62 of the communication driver 60, the message box 52 of the controller 50, and the register 54 of the controller 50, respectively. Then, the ECU 10 initializes the terminal 42 of the transceiver 40 in S316, and performs an operation confirmation process on the register 54 of the controller 50 in S318.

ここで、図2のS310〜S318に示す通信モジュール30に対する全ての初期化処理を1回の周期で実施しようとすると、図6の(A)に示すように、通信モジュール30の全ての初期化処理時間Taが、ECU10に与えられた1回の処理周期の長さである1周期処理時間Tpを超えることがある。この場合、通信モジュール30の全ての初期化処理を処理毎に分類した処理1〜処理5のうち処理5を1周期処理時間Tp内で実施できないばかりでなく、通信モジュール30を使用しない制御処理も1回の周期で実施できなくなる。   Here, if all the initialization processes for the communication module 30 shown in S310 to S318 in FIG. 2 are performed in one cycle, all the initialization of the communication module 30 is performed as shown in FIG. The processing time Ta may exceed the one-cycle processing time Tp that is the length of one processing cycle given to the ECU 10. In this case, not only processing 1 among processing 1 to processing 5 in which all initialization processing of the communication module 30 is classified for each processing cannot be performed within one cycle processing time Tp, but also control processing that does not use the communication module 30. It becomes impossible to carry out in one cycle.

ここで、処理1〜処理5は、例えば次のように分類されている。
(処理1)
トランシーバ40の端子42を初期設定し、コントローラ50のメッセージボックス52およびレジスタ54、ならびに通信ドライバ60の送受信キュー62に初期値を書き込む。
Here, the processes 1 to 5 are classified as follows, for example.
(Process 1)
The terminal 42 of the transceiver 40 is initialized, and initial values are written in the message box 52 and the register 54 of the controller 50 and the transmission / reception queue 62 of the communication driver 60.

(処理2)
コントローラ50のレジスタ54に所定データを書き込む。
(処理3)
レジスタ54に書き込んだ所定データの値を読み出す。
(Process 2)
Predetermined data is written to the register 54 of the controller 50.
(Process 3)
The value of the predetermined data written in the register 54 is read out.

(処理4)
レジスタ書き54に書き込んだ所定データの値とレジスタ54から読み出した値とを比較する。
(Process 4)
The value of the predetermined data written in the register write 54 is compared with the value read from the register 54.

(処理5)
比較した値が一致すれば通信モジュール30に対する初期化処理が正常終了したことを上位の通信ソフト20に通知する。比較した値が不一致であれば、通信モジュール30に対する初期化処理が異常終了したことを上位の通信ソフト20に通知する。
(Process 5)
If the compared values match, the higher-level communication software 20 is notified that the initialization process for the communication module 30 has been completed normally. If the compared values do not match, the host communication software 20 is notified that the initialization process for the communication module 30 has ended abnormally.

前述したように、通信モジュール30に対する全ての初期化処理を1回の処理周期で実施すると全通信モジュール初期化処理時間Taが1周期処理時間Tpを超える場合、通信モジュール30を初期化する処理1〜処理5を複数回に分けて実施することが考えられる。例えば、処理1〜処理5を、図6の(B)に示すように処理1および処理2と、処理3〜5との2回に分ける。これにより、複数回に分割した通信モジュール30の初期化処理の最大初期化処理時間Ta1と通信モジュール30を使用しない制御処理の制御処理時間Tbとの合計時間が1周期処理時間Tpより短くなる。その結果、各回の初期化処理の終了後に通信モジュール30を使用しない車両制御処理を実施できる。最終回の初期化処理の終了後には、通信モジュール30を使用した車両制御処理を実施できる。このように通信モジュール30に対する初期化処理を複数回に分けて実施することにより、初期化処理以外の車両制御の実施遅れを防止し、車両制御を極力速やかに実施できる。   As described above, when all the initialization processes for the communication module 30 are performed in one processing cycle, when the entire communication module initialization processing time Ta exceeds the one-cycle processing time Tp, the processing 1 for initializing the communication module 30 It can be considered that the process 5 is performed in a plurality of times. For example, process 1 to process 5 are divided into process 1 and process 2 and process 3 to 5 as shown in FIG. Thereby, the total time of the maximum initialization processing time Ta1 of the initialization processing of the communication module 30 divided into a plurality of times and the control processing time Tb of the control processing not using the communication module 30 is shorter than the one-cycle processing time Tp. As a result, it is possible to implement a vehicle control process that does not use the communication module 30 after the end of each initialization process. After the final initialization process, a vehicle control process using the communication module 30 can be performed. As described above, by performing the initialization process for the communication module 30 in a plurality of times, it is possible to prevent a delay in the execution of vehicle control other than the initialization process, and to perform the vehicle control as quickly as possible.

図6の(C)に示すように、1周期処理時間Tp1がさらに短い場合には、通信モジュール30の全ての初期化処理を処理1および処理2と、処理3および処理4と、処理5との3回に分けてもよい。これにより、複数回に分割した通信モジュール30の初期化処理の最大初期化処理時間Ta2と制御処理時間Tbとの合計時間が1周期処理時間Tp2より短くなる。   As shown in FIG. 6C, when the one-cycle processing time Tp1 is shorter, all the initialization processes of the communication module 30 are performed as the process 1, the process 2, the process 3, the process 4, the process 5, It may be divided into three times. Thereby, the total time of the maximum initialization process time Ta2 and the control process time Tb of the initialization process of the communication module 30 divided into a plurality of times becomes shorter than the one-cycle process time Tp2.

尚、ECU10が複数の通信チャネルを備える場合には、複数の通信チャネルに対応する全ての通信モジュール30に対する初期化処理を複数回に分けて実施する。
また、通信モジュール30に対する初期化処理を分割しない場合の全通信モジュール初期化処理時間Taと制御処理時間Tbとの合計が1周期処理時間Tpよりも短い場合には、通信モジュール30に対する初期化処理を分割せず、1周期で実施してもよい。
When the ECU 10 includes a plurality of communication channels, the initialization process for all the communication modules 30 corresponding to the plurality of communication channels is performed in a plurality of times.
If the sum of all communication module initialization processing times Ta and control processing time Tb when the initialization processing for the communication modules 30 is not divided is shorter than one cycle processing time Tp, the initialization processing for the communication modules 30 is performed. May be performed in one cycle without dividing.

(通信モジュール30の初期化処理2)
図3〜図5に、通信モジュール30の初期化処理を複数回の周期に分けて実施することを考慮したフローチャートを示す。図3は、分割された通信モジュール30の初期化処理の1回目の実施周期における処理を示し、図4は初期化処理の2回目以降の実施周期における処理を示し、図5は動作確認処理の結果に応じた処理を示す。
(Initialization process 2 of the communication module 30)
FIGS. 3 to 5 are flowcharts in consideration of performing the initialization process of the communication module 30 in a plurality of cycles. 3 shows processing in the first execution cycle of the initialization processing of the divided communication module 30, FIG. 4 shows processing in the second and subsequent execution cycles of the initialization processing, and FIG. 5 shows the operation check processing. The process according to a result is shown.

(1回目の実施周期)
図3のS320においてECU10は、通信モジュール30の初期化処理の分割数を、書換え可能な不揮発性の分割数記憶手段としてのフラッシュメモリ18から取得し、S322においてRAM14に記憶する。S324においてECU10は、初期化処理の分割数が2より少ないか、つまり分割数が1であり分割する必要がないかを判定する。
(First implementation cycle)
In S320 of FIG. 3, the ECU 10 acquires the division number of the initialization process of the communication module 30 from the flash memory 18 as a rewritable nonvolatile division number storage unit, and stores it in the RAM 14 in S322. In S324, the ECU 10 determines whether the number of divisions in the initialization process is less than 2, that is, whether the number of divisions is 1 and division is not necessary.

フラッシュメモリ18に記憶されている分割数は、ECU10の性能、通信モジュール30の対する初期化処理に要する時間等に基づき、例えばCANバス100に接続した外部端末装置から通信ソフト20のユーザにより適宜設定できることが望ましい。   The number of divisions stored in the flash memory 18 is appropriately set by the user of the communication software 20 from, for example, an external terminal device connected to the CAN bus 100 based on the performance of the ECU 10 and the time required for the initialization process for the communication module 30. It is desirable to be able to do it.

尚、これ以外にも、通信ソフト20内で設定されている初期化処理の分割数を書き換えて通信ソフト20をコンパイルすることにより、ユーザが分割数を適宜設定してもよい。
分割数が2より小さい場合(S324:Yes)、S326、S328においてECU10は、図6の(A)に示すように初期化処理を1回の実施周期ですべて実施し初期化処理を実施した結果の判定処理を実施する。
In addition to this, the user may set the division number as appropriate by compiling the communication software 20 by rewriting the division number of the initialization process set in the communication software 20.
When the number of divisions is smaller than 2 (S324: Yes), in S326 and S328, the ECU 10 performs the initialization process by performing all initialization processes in one execution cycle as shown in FIG. Perform the determination process.

分割数が2以上の場合(S324:No)、ECU10は、分割数に基づいて初期化処理を実施する1回目の周期に応じた初期化処理を実施し(S330)、初期化処理の実施回数を1回として記憶する(S332)。そして、S334においてECU10は、上位の通信ソフト20に初期化処理の未完了を通知する。上位の通信ソフト20に初期化処理の未完了が通知されると、ECU10は、通信モジュール30を使用しない車両制御処理を1周期処理時間Tpの残り時間内で実施する。これにより、2周期目以降も含め、複数回に分割された通信モジュール30に対する初期化処理が各周期において終了すると、車両制御を実施できる。   When the number of divisions is 2 or more (S324: No), the ECU 10 performs an initialization process according to the first cycle in which the initialization process is performed based on the number of divisions (S330), and the number of times the initialization process is performed. Is stored as one time (S332). In step S334, the ECU 10 notifies the host communication software 20 that the initialization process has not been completed. When the incomplete initialization process is notified to the upper communication software 20, the ECU 10 performs a vehicle control process that does not use the communication module 30 within the remaining time of the one-cycle processing time Tp. Thereby, vehicle control can be implemented if the initialization process with respect to the communication module 30 divided | segmented into multiple times including the 2nd period or more is complete | finished in each period.

(2回目以降の実施周期)
図4のS340においてECU10は、2回目以降の実施周期に応じた未実施の初期化処理を実施し、初期化処理の実施回数を+1する(S342)。
(Period from the second time on)
In S340 of FIG. 4, the ECU 10 performs an unimplemented initialization process corresponding to the second and subsequent execution cycles, and increments the number of times of the initialization process by 1 (S342).

S344においてECU10は、初期化処理の実施回数が分割数に一致し、通信モジュール30に対する初期化処理が終了したかを判定する。初期化処理の実施回数が分割数に一致する場合(S344:Yes)、S346においてECU10は初期化処理を実施した結果の判定処理を実施する。   In S344, the ECU 10 determines whether the number of times the initialization process has been performed matches the number of divisions and the initialization process for the communication module 30 has been completed. When the number of times the initialization process is performed matches the number of divisions (S344: Yes), in S346, the ECU 10 performs a determination process that is a result of performing the initialization process.

初期化処理の実施回数が分割数に一致しない場合(S344:No)、S348においてECU10は、上位の通信ソフト20に初期化処理の未完了を通知する。上位の通信ソフト20に初期化処理の未完了が通知されると、ECU10は、通信モジュール30を使用しない車両制御処理を1周期処理時間Tpの残り時間内で実施する。   If the number of times the initialization process has been performed does not match the number of divisions (S344: No), the ECU 10 notifies the host communication software 20 that the initialization process has not been completed in S348. When the incomplete initialization process is notified to the upper communication software 20, the ECU 10 performs a vehicle control process that does not use the communication module 30 within the remaining time of the one-cycle processing time Tp.

(動作確認処理結果)
図5のルーチンは、図3のS328、図4のS346において実施される初期化処理の結果判定処理に該当する。S350においてECU10は、通信モジュール30に対する初期化処理の結果、つまりレジスタ54に対して動作確認処理を実施した結果が正常か異常かを判定する。初期化処理の結果が正常の場合(S350:OK)、S352においてECU10は、初期化処理の結果が正常であると上位の通信ソフトに通知する。
(Operation confirmation processing result)
The routine of FIG. 5 corresponds to the result determination process of the initialization process performed in S328 of FIG. 3 and S346 of FIG. In S350, the ECU 10 determines whether the result of the initialization process for the communication module 30, that is, the result of the operation confirmation process for the register 54 is normal or abnormal. If the result of the initialization process is normal (S350: OK), in S352, the ECU 10 notifies the upper communication software that the result of the initialization process is normal.

通信モジュール30に対する初期化処理の結果が異常の場合(S350:NG)、S354においてECU10は、初期化処理の結果が異常であると上位の通信ソフトに通知する。   When the result of the initialization process for the communication module 30 is abnormal (S350: NG), in S354, the ECU 10 notifies the upper communication software that the result of the initialization process is abnormal.

以上説明した上記実施形態では、通信モジュール30に対する初期化処理を複数回に分けて実施することにより、通信モジュール30に対する各回の初期化処理が終了すると、1周期処理時間Tpの範囲内で、通信モジュール30を使用しない初期化処理以外の車両制御処理を実施できる。その結果、通信モジュール30に対する初期化処理を実施する場合にも、車両制御の遅れを極力低減し速やかに車両制御を実施できる。   In the above-described embodiment, by performing the initialization process for the communication module 30 in a plurality of times, when the initialization process for the communication module 30 is completed, the communication is performed within the range of one cycle processing time Tp. Vehicle control processing other than initialization processing that does not use the module 30 can be performed. As a result, even when the initialization process for the communication module 30 is performed, the vehicle control delay can be reduced as much as possible, and the vehicle control can be performed promptly.

[他の実施形態]
上記実施形態では、コントローラ50のレジスタ54に対して所定データを書き込み、書き込んだ所定データの値と、レジスタ54から読み出した値とが一致するかを判定して動作確認処理を実施した。これに対し、通信モジュール30に対する初期化処理において、レジスタ54以外にもコントローラ50のメッセージボックス52、通信ドライバ60の送受信キュー62に対して所定データを書き込み、書き込んだ所定データの値と読み出した値とが一致するかを判定して動作確認処理を実施してもよい。
[Other Embodiments]
In the above embodiment, the predetermined data is written to the register 54 of the controller 50, and it is determined whether or not the value of the written predetermined data matches the value read from the register 54. On the other hand, in the initialization process for the communication module 30, in addition to the register 54, predetermined data is written into the message box 52 of the controller 50 and the transmission / reception queue 62 of the communication driver 60, and the value of the written predetermined data and the value read out It may be determined whether or not and the operation confirmation process is performed.

上記実施形態では、通信モジュール30に対する初期化処理の分割数をユーザが適宜設定してフラッシュメモリ18に記憶した。これに対し、通信モジュール30に対する初期化処理の分割数を固定にしてもよい。   In the above embodiment, the number of divisions of the initialization process for the communication module 30 is appropriately set by the user and stored in the flash memory 18. On the other hand, the division number of the initialization process for the communication module 30 may be fixed.

上記実施形態では、車両に搭載される通信線としてCANバスを例にして説明した。車両に搭載される通信線としては、CANバスに限るものではなく、他の仕様のバスであってもよい。   In the above embodiment, the CAN bus has been described as an example of the communication line mounted on the vehicle. The communication line mounted on the vehicle is not limited to the CAN bus, and may be a bus with other specifications.

また、車内LANに接続し車両制御を実施するECU以外にも、通信モジュールを使用して通信線を介して通信を行うECUであれば、どのような用途に使用されるECUに本発明を適用してもよい。   The present invention is applied to an ECU used for any purpose as long as it is an ECU that communicates via a communication line using a communication module in addition to an ECU that is connected to an in-vehicle LAN and performs vehicle control. May be.

このように、本発明は、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々の実施形態に適用可能である。   As described above, the present invention is not limited to the above-described embodiment, and can be applied to various embodiments without departing from the gist thereof.

本実施形態によるECUの構成を示すブロック図。The block diagram which shows the structure of ECU by this embodiment. 通信モジュールに対する初期化処理を示すフローチャート。The flowchart which shows the initialization process with respect to a communication module. 通信モジュールに対する1回目の初期化処理を示すフローチャート。The flowchart which shows the 1st initialization process with respect to a communication module. 通信モジュールに対する2回目以降の初期化処理を示すフローチャート。The flowchart which shows the initialization process after the 2nd with respect to a communication module. 通信モジュールに対する初期化処理の結果判定を示すフローチャート。The flowchart which shows the result determination of the initialization process with respect to a communication module. 初期化処理の分割状態を示す説明図。Explanatory drawing which shows the division | segmentation state of an initialization process.

符号の説明Explanation of symbols

10:ECU(電子制御装置、初期化手段、分割数記憶手段)、18:フラッシュメモリ(分割数記憶手段)、30:通信モジュール、50:コントローラ、54:レジスタ、100:CANバス(通信線) 10: ECU (electronic control unit, initialization means, division number storage means), 18: flash memory (division number storage means), 30: communication module, 50: controller, 54: register, 100: CAN bus (communication line)

Claims (4)

通信線を介して通信を行う電子制御装置において、
前記通信線との間でデータを送受信する通信モジュールと、
前記通信モジュールに対する初期化処理を複数回に分けて実施する初期化手段と、
を備えることを特徴とする電子制御装置。
In an electronic control device that performs communication via a communication line,
A communication module for transmitting and receiving data to and from the communication line;
Initialization means for performing the initialization process for the communication module in a plurality of times;
An electronic control device comprising:
前記初期化手段が前記初期化処理を複数回に分けて実施する分割数を記憶する書換え可能な不揮発性の分割数記憶手段をさらに備え、
前記初期化手段は前記分割数記憶手段に記憶されている前記分割数に基づいて前記初期化処理を複数回に分けて実施することを特徴とする請求項1に記載の電子制御装置。
The initialization means further comprises a rewritable nonvolatile division number storage means for storing a division number for performing the initialization process in a plurality of times,
2. The electronic control apparatus according to claim 1, wherein the initialization unit performs the initialization process in a plurality of times based on the division number stored in the division number storage unit.
前記通信モジュールは、前記通信線から受信する受信データと、前記通信線に送信する送信データとを格納するレジスタを有し、
前記初期化手段は、前記レジスタに対して所定データを書き込み、書き込んだ前記所定データの値と前記レジスタから読み出した値とが一致するかを判定する動作確認処理を実施することを特徴とする請求項1または2に記載の電子制御装置。
The communication module has a register for storing reception data received from the communication line and transmission data to be transmitted to the communication line;
The initialization unit performs an operation confirmation process for writing predetermined data to the register and determining whether the value of the written predetermined data matches the value read from the register. Item 3. The electronic control device according to Item 1 or 2.
前記電子制御装置は車両に搭載されて車両制御を実施することを特徴とする請求項1から3のいずれか一項に記載の電子制御装置。   The electronic control device according to any one of claims 1 to 3, wherein the electronic control device is mounted on a vehicle to perform vehicle control.
JP2008139584A 2008-05-28 2008-05-28 Electronic control device Pending JP2009288953A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008139584A JP2009288953A (en) 2008-05-28 2008-05-28 Electronic control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008139584A JP2009288953A (en) 2008-05-28 2008-05-28 Electronic control device

Publications (1)

Publication Number Publication Date
JP2009288953A true JP2009288953A (en) 2009-12-10

Family

ID=41458123

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008139584A Pending JP2009288953A (en) 2008-05-28 2008-05-28 Electronic control device

Country Status (1)

Country Link
JP (1) JP2009288953A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013055593A (en) * 2011-09-06 2013-03-21 Denso Corp Communication device
JP2015122030A (en) * 2013-12-25 2015-07-02 富士通株式会社 Information processing device, monitoring program and monitoring method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02148246A (en) * 1988-11-30 1990-06-07 Toshiba Corp General use bus memory space allocating system for general use bus control adapter
JPH03210601A (en) * 1990-01-12 1991-09-13 Fuji Electric Co Ltd Initializing method for programmable controller
JPH0954708A (en) * 1995-08-15 1997-02-25 Nec Gumma Ltd Initialization diagnosing method for information processor
JP2002041493A (en) * 2000-07-28 2002-02-08 Denso Corp Microcomputer
JP2002320073A (en) * 2001-04-23 2002-10-31 Sharp Corp Image reader

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02148246A (en) * 1988-11-30 1990-06-07 Toshiba Corp General use bus memory space allocating system for general use bus control adapter
JPH03210601A (en) * 1990-01-12 1991-09-13 Fuji Electric Co Ltd Initializing method for programmable controller
JPH0954708A (en) * 1995-08-15 1997-02-25 Nec Gumma Ltd Initialization diagnosing method for information processor
JP2002041493A (en) * 2000-07-28 2002-02-08 Denso Corp Microcomputer
JP2002320073A (en) * 2001-04-23 2002-10-31 Sharp Corp Image reader

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013055593A (en) * 2011-09-06 2013-03-21 Denso Corp Communication device
JP2015122030A (en) * 2013-12-25 2015-07-02 富士通株式会社 Information processing device, monitoring program and monitoring method

Similar Documents

Publication Publication Date Title
US10274919B2 (en) Method, device and computer program product for programming a plurality of control units
CN114817110B (en) Data transmission method and device
JP2001067235A (en) Interruption controller and microcomputer
JP7493871B2 (en) Electronic device and method for responding to a wake-up trigger - Patents.com
JP2009288953A (en) Electronic control device
US11204804B2 (en) Electronic device and control method thereof
US9811149B2 (en) Information processing apparatus, non-transitory computer readable medium, and information processing method
US20090177890A1 (en) Method and Device for Forming a Signature
JP2009099092A (en) Mobile information terminal
US20050216614A1 (en) Microcomputer having instruction RAM
JP5286814B2 (en) Semiconductor device, portable electronic device, self-diagnosis method, self-diagnosis program
CN116028404A (en) DMA configuration method and configuration circuit
US20090063725A1 (en) Direct memory access system
JP2008059191A (en) Microcontroller and its debugging method
US9753728B2 (en) Apparatus and medium for converting a persistent wait instruction to an instruction for periodically waiting for a control target
WO2018076647A1 (en) Data processing method and apparatus, and system on chip, device and storage medium
US20080222385A1 (en) Parameter setting method and apparatus for network controller
JP4225264B2 (en) Communication device
US20240046404A1 (en) Control method and device for image signal processors of multiple channels
CN118349286B (en) Processor, instruction processing device, electronic equipment and instruction processing method
JP7547079B2 (en) Master-slave communication system and control method thereof
JP5441219B2 (en) Semiconductor device and serial interface circuit
CN118295949A (en) Data transmission method and device, electronic equipment and storage medium
JP2008097093A (en) Processor system and communication device
JP6138482B2 (en) Embedded system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100621

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120228

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120626