[go: up one dir, main page]

JP2024142767A - Electronic Control Unit - Google Patents

Electronic Control Unit Download PDF

Info

Publication number
JP2024142767A
JP2024142767A JP2023055079A JP2023055079A JP2024142767A JP 2024142767 A JP2024142767 A JP 2024142767A JP 2023055079 A JP2023055079 A JP 2023055079A JP 2023055079 A JP2023055079 A JP 2023055079A JP 2024142767 A JP2024142767 A JP 2024142767A
Authority
JP
Japan
Prior art keywords
software
area
written
existing
storage device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2023055079A
Other languages
Japanese (ja)
Inventor
肇 小堀
Hajime Kobori
遥介 川口
Yosuke Kawaguchi
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.)
Advics Co Ltd
Original Assignee
Advics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advics Co Ltd filed Critical Advics Co Ltd
Priority to JP2023055079A priority Critical patent/JP2024142767A/en
Priority to PCT/JP2024/013230 priority patent/WO2024204783A1/en
Publication of JP2024142767A publication Critical patent/JP2024142767A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories

Landscapes

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

Abstract

To provide an electronic control device capable of suppressing an increase in time required for writing new software into its own storage device.SOLUTION: An ECU 50A comprises an execution device 56, and a storage device 57 that stores software executed by the execution device 56. The storage device 57 has an existing area which is an area in which existing software is written, and a blank area which is an area set to an address higher than that of the existing area and in which software is not written. When writing of new software to the storage device 57 is requested, the execution device 56 writes the new software in the blank area.SELECTED DRAWING: Figure 1

Description

本発明は、車両に搭載される電子制御装置に関する。 The present invention relates to an electronic control device mounted on a vehicle.

特許文献1は、車載の電子制御装置が備える記憶部のソフトウェアを更新する方法を開示している。当該方法では、更新用ソフトウェアを保管しているTesterが、車載ネットワークに接続される。これにより、電子制御装置は、車載ネットワークを介して、Testerが保管する更新用ソフトウェアを取得できる。そして、電子制御装置は、車載ネットワークを介して取得した更新用ソフトウェアを記憶部に書き込むことによって、記憶部のソフトウェアを更新できる。 Patent Document 1 discloses a method for updating software in a storage unit provided in an in-vehicle electronic control unit. In this method, a tester that stores update software is connected to an in-vehicle network. This allows the electronic control unit to obtain the update software stored by the tester via the in-vehicle network. The electronic control unit can then update the software in the storage unit by writing the update software obtained via the in-vehicle network to the storage unit.

特開2018-120438号公報JP 2018-120438 A

記憶部のソフトウェアを更新する場合にあっては、その更新に要する時間を短くすることを望まれている。 When updating software in the memory unit, it is desirable to shorten the time required for the update.

上記課題を解決するための電子制御装置は、車両に搭載される装置である。当該電子制御装置は、実行装置と、前記実行装置によって実行されるソフトウェアを記憶している記憶装置と、を備えている。前記記憶装置は、既存のソフトウェアが書き込まれている領域である既存領域と、前記既存領域よりも高位のアドレスに設定されており、且つソフトウェアが書き込まれていない領域である空白領域と、を有している。前記実行装置は、新規のソフトウェアの前記記憶装置への書き込みが要求された場合には、当該新規のソフトウェアを前記空白領域に書き込む。 The electronic control device for solving the above problem is a device mounted on a vehicle. The electronic control device includes an execution device and a storage device that stores software executed by the execution device. The storage device has an existing area in which existing software is written, and a blank area that is set to an address higher than that of the existing area and in which no software has been written. When a request is made to write new software to the storage device, the execution device writes the new software to the blank area.

上記電子制御装置は、自身の記憶装置に新規のソフトウェアを書き込むのに要する時間が長くなることを抑制できるという効果を奏する。 The electronic control device has the effect of preventing the time required to write new software to its own storage device from increasing.

図1は、実施形態の電子制御装置を備える車両と、車外に設置されたデータセンタとの概略を示す構成図である。FIG. 1 is a schematic diagram illustrating a vehicle equipped with an electronic control device according to an embodiment and a data center installed outside the vehicle. 図2は、図1の電子制御装置が備える記憶装置の構造を示す模式図である。FIG. 2 is a schematic diagram showing the structure of a storage device provided in the electronic control device of FIG. 図3は、図2の記憶装置に新規のソフトウェアを書き込む際に実行される処理の流れを示すフローチャートである。FIG. 3 is a flow chart showing the flow of the process executed when writing new software into the storage device of FIG. 図4は、図2の記憶装置に新規のソフトウェアが書き込まれた状態を示す模式図である。FIG. 4 is a schematic diagram showing a state in which new software has been written into the storage device of FIG. 図5は、図1の電子制御装置が備える記憶装置の構造のうち、空白領域の変更例を示す模式図である。FIG. 5 is a schematic diagram showing a modified example of the blank area in the structure of the storage device included in the electronic control device of FIG.

以下、電子制御装置の一実施形態を図1から図4に従って説明する。本明細書では、電子制御装置を「ECU」と記載する。「ECU」は「Electronic Control Unit」の略記である。 One embodiment of the electronic control device will be described below with reference to Figures 1 to 4. In this specification, the electronic control device will be referred to as "ECU." "ECU" is an abbreviation for "Electronic Control Unit."

図1は、車両10と、車両10の外部に設けられているデータセンタ100とを図示している。
<データセンタ>
データセンタ100は、車外ネットワーク200を介して車両10と各種の情報の送受信ができるように構成されている。すなわち、データセンタ100は、無線通信によって車両10と各種情報の送受信を行う。
FIG. 1 illustrates a vehicle 10 and a data center 100 provided outside the vehicle 10 .
<Data Center>
The data center 100 is configured to be able to transmit and receive various types of information to and from the vehicle 10 via the external vehicle network 200. That is, the data center 100 transmits and receives various types of information to and from the vehicle 10 by wireless communication.

詳しくは後述するが、車両10は複数のECUを備えている。複数のECUのうちの何れかのECUの記憶装置のソフトウェアを更新するための更新用ソフトウェアが用意できた場合、データセンタ100は、車外ネットワーク200を介して当該更新用ソフトウェアを車両10に送信する。なお、車載の複数のECUのうち、ソフトウェアを更新するECUを「更新対象ECU」という。 As will be described in more detail later, the vehicle 10 is equipped with multiple ECUs. When update software is prepared to update the software in the storage device of one of the multiple ECUs, the data center 100 transmits the update software to the vehicle 10 via the external vehicle network 200. Of the multiple ECUs installed in the vehicle, the ECU whose software is to be updated is referred to as the "update target ECU."

<車両>
車両10は、複数のセンサ21,22,23,24,…と、通信装置30と、情報処理装置40と、複数のECU50と、制動装置60とを備えている。
<Vehicles>
The vehicle 10 includes a plurality of sensors 21, 22, 23, 24, . . . , a communication device 30, an information processing device 40, a plurality of ECUs 50, and a braking device 60.

複数のセンサ21,22,23,24,…は、車両10の走行状態を検出するセンサと、運転者の操作状態を検出するセンサとを含んでいる。車両10の走行状態を検出するセンサとしては、例えば、加速度センサ、車輪速センサ及びヨーレートセンサを挙げることができる。運転者の操作状態を検出するセンサとしては、例えば、アクセルセンサ、ブレーキセンサ及び操舵センサを挙げることができる。アクセルセンサは、アクセルペダルの操作に関する情報を検出するセンサである。ブレーキセンサは、ブレーキペダルの操作に関する情報を検出するセンサである。操舵センサは、ステアリングホイールの操舵に関する情報を検出するセンサである。 The multiple sensors 21, 22, 23, 24, ... include sensors that detect the driving state of the vehicle 10 and sensors that detect the driver's operating state. Examples of sensors that detect the driving state of the vehicle 10 include an acceleration sensor, a wheel speed sensor, and a yaw rate sensor. Examples of sensors that detect the driver's operating state include an accelerator sensor, a brake sensor, and a steering sensor. The accelerator sensor is a sensor that detects information related to the operation of the accelerator pedal. The brake sensor is a sensor that detects information related to the operation of the brake pedal. The steering sensor is a sensor that detects information related to the steering of the steering wheel.

通信装置30は、データセンタ100との間で情報を送受信するための車両側のインターフェースである。
情報処理装置40は、ローカルネットワーク31を介して通信装置30と通信できるように構成されている。ローカルネットワーク31は、情報処理装置40と通信装置30との間のみで情報の送受信を行うためのネットワークである。
The communication device 30 is a vehicle-side interface for transmitting and receiving information to and from the data center 100 .
The information processing device 40 is configured to be able to communicate with the communication device 30 via a local network 31. The local network 31 is a network for transmitting and receiving information only between the information processing device 40 and the communication device 30.

情報処理装置40は、実行装置41と記憶装置42と格納装置43とを備えている。例えば、実行装置41はCPUであり、記憶装置42は不揮発性のメモリであり、格納装置43は揮発性のメモリである。記憶装置42は、実行装置41によって実行されるソフトウェアを記憶している。格納装置43は、通信装置30からローカルネットワーク31を介して送信された情報を一時的に格納する。すなわち、データセンタ100が、更新対象ECUを特定する情報及び更新用ソフトウェアを車両10に送信すると、通信装置30が、データセンタ100が送信した情報を受信する。そして、通信装置30は、受信した情報を、ローカルネットワーク31を介して情報処理装置40に送信する。すると、情報処理装置40の実行装置41は、ローカルネットワーク31を介して受信した情報、すなわち更新対象ECUを特定する情報及び更新用ソフトウェアを格納装置43に記憶させる。 The information processing device 40 includes an execution device 41, a storage device 42, and a storage device 43. For example, the execution device 41 is a CPU, the storage device 42 is a non-volatile memory, and the storage device 43 is a volatile memory. The storage device 42 stores software executed by the execution device 41. The storage device 43 temporarily stores information transmitted from the communication device 30 via the local network 31. That is, when the data center 100 transmits information identifying the ECU to be updated and the update software to the vehicle 10, the communication device 30 receives the information transmitted by the data center 100. Then, the communication device 30 transmits the received information to the information processing device 40 via the local network 31. Then, the execution device 41 of the information processing device 40 stores the information received via the local network 31, i.e., the information identifying the ECU to be updated and the update software, in the storage device 43.

複数のECU50は、複数の入力ポート51と、マイクロコンピュータ55とをそれぞれ有している。入力ポート51にはセンサの検出信号が入力される。1つのECU50に検出信号を出力するセンサの数をN個としたとき、ECU50は、Nよりも多いM個の入力ポート51を有している。 Each of the multiple ECUs 50 has multiple input ports 51 and a microcomputer 55. Sensor detection signals are input to the input ports 51. If the number of sensors that output detection signals to one ECU 50 is N, the ECU 50 has M input ports 51, which is greater than N.

マイクロコンピュータ55は、入力ポート51に入力されたセンサの検出信号に基づいて各種の処理を実行する。マイクロコンピュータ55は、実行装置56と記憶装置57とを有している。例えば、実行装置56はCPUである。記憶装置57は不揮発性のメモリである。記憶装置57には、実行装置56によって実行される複数種類のソフトウェアが記憶される。 The microcomputer 55 executes various processes based on the sensor detection signal input to the input port 51. The microcomputer 55 has an execution device 56 and a storage device 57. For example, the execution device 56 is a CPU. The storage device 57 is a non-volatile memory. The storage device 57 stores multiple types of software executed by the execution device 56.

複数のECU50のうちの1つのECU50Aは、制動装置60を制御するECUである。制動装置60は、電気モータなどのアクチュエータ61を有している。ECU50Aは、アクチュエータ61を制御することによって車両10に制動力を発生させる。 One of the multiple ECUs 50, ECU 50A, is an ECU that controls the braking device 60. The braking device 60 has an actuator 61 such as an electric motor. ECU 50A generates a braking force on the vehicle 10 by controlling the actuator 61.

ECU50Aの実行装置56は、記憶装置57のソフトウェアを実行することによって、駆動処理と、入力処理と、出力処理と、演算処理と、機能処理とを実行する。
駆動処理は、アクチュエータ61を駆動させるための処理である。例えば、電気モータ用の駆動処理において、実行装置56は、電気モータが備える複数のコイルに流す電流値を導出し、当該電流値に基づいて電気モータのインバータを作動させる。
The execution unit 56 of the ECU 50A executes software in the storage unit 57 to perform drive processing, input processing, output processing, arithmetic processing, and function processing.
The drive process is a process for driving the actuator 61. For example, in the drive process for an electric motor, the execution device 56 derives a current value to be passed through a plurality of coils provided in the electric motor, and operates an inverter of the electric motor based on the current value.

入力処理は、入力ポート51を介して入力されたセンサの検出信号を受け付ける処理である。例えば、入力処理において、実行装置56は、検出信号に対して公知のフィルタ処理を施すことによってセンサの検出値を導出する。 The input process is a process of accepting a sensor detection signal input via the input port 51. For example, in the input process, the execution device 56 derives the sensor detection value by applying a known filtering process to the detection signal.

出力処理は、演算処理によって導出された情報をECU50A外に出力する処理である。例えば、出力処理において、実行装置56は、車輪速センサの検出値に基づいて演算された車体速度VS0をグローバルネットワーク33に出力する。 The output process is a process for outputting information derived by the calculation process to outside the ECU 50A. For example, in the output process, the execution device 56 outputs the vehicle speed VSO calculated based on the detection value of the wheel speed sensor to the global network 33.

演算処理は、入力処理によって導出されたセンサの検出値を用いて各種演算を行うことによって、車両10の制御に必要な情報を演算する処理である。例えば、演算処理において、実行装置56は、車輪速センサの検出値に基づいて車体速度VS0を演算する。また例えば、実行装置56は、車輪速センサの検出値である車輪速VWと車体速度VS0とに基づいて車輪のスリップ量SLPを演算する。 The calculation process is a process that calculates information necessary for controlling the vehicle 10 by performing various calculations using the sensor detection values derived by the input process. For example, in the calculation process, the execution unit 56 calculates the vehicle body speed VSO based on the detection values of the wheel speed sensors. In another example, the execution unit 56 calculates the amount of wheel slip SLP based on the wheel speed VW, which is the detection value of the wheel speed sensor, and the vehicle body speed VSO.

機能処理は、制動装置60を作動させることによって機能を実現させる処理である。ここでいう機能は、車両10の挙動の安定性を維持するための機能、及び、車両10の乗員の快適性を向上させるための機能を含んでいる。制動装置60を作動させることによって実現できる機能としては、例えば、アンチロックブレーキ制御、横滑り抑制制御、横転抑制制御及び緊急ブレーキを挙げることができる。 The function processing is a processing that realizes a function by operating the braking device 60. The functions referred to here include a function for maintaining the stability of the behavior of the vehicle 10 and a function for improving the comfort of the occupants of the vehicle 10. Examples of functions that can be realized by operating the braking device 60 include anti-lock brake control, skid prevention control, rollover prevention control, and emergency braking.

上述した複数種類の処理のうち、駆動処理、入力処理、出力処理及び演算処理は、制動装置60を作動させるために必要な基本的な処理である。その一方で、機能処理は、車両10やその乗員に対して付加価値を与えるための処理である。そのため、駆動処理用のソフトウェア、入力処理用のソフトウェア、出力処理用のソフトウェア及び演算処理用のソフトウェアの何れにおいても、更新頻度は機能処理用のソフトウェアの更新頻度よりも低い。駆動処理用のソフトウェア、入力処理用のソフトウェア、出力処理用のソフトウェア及び演算処理用のソフトウェアの中では、駆動処理用のソフトウェアの更新頻度は最も低い。入力処理用のソフトウェア及び出力処理用のソフトウェアの更新頻度は、駆動処理用のソフトウェアの更新頻度よりは高い一方で、演算処理用のソフトウェアの更新頻度よりも低い。 Of the multiple types of processing described above, drive processing, input processing, output processing, and calculation processing are basic processing required to operate the braking device 60. On the other hand, functional processing is processing for providing added value to the vehicle 10 and its occupants. Therefore, the update frequency of the software for drive processing, the software for input processing, the software for output processing, and the software for calculation processing is lower than the update frequency of the software for functional processing. Among the software for drive processing, the software for input processing, the software for output processing, and the software for calculation processing, the update frequency of the software for drive processing is the lowest. The update frequency of the software for input processing and the software for output processing is higher than the update frequency of the software for drive processing, but lower than the update frequency of the software for calculation processing.

車両10にあっては、機能を追加することができるようになっている。新たな機能を追加する場合には、追加機能用のソフトウェアがデータセンタ100から車両10に送信される。すると、追加機能用のソフトウェアは、情報処理装置40からグローバルネットワーク33を介してECU50Aに送信される。そして、ECU50Aでは、実行装置56が、自身の記憶装置57に追加機能用のソフトウェアを書き込む。これにより、追加機能用のソフトウェアを実行装置56が実行することにより、制動装置60が追加機能を実現できるようになる。 Functions can be added to the vehicle 10. When a new function is added, software for the additional function is sent from the data center 100 to the vehicle 10. The software for the additional function is then sent from the information processing device 40 to the ECU 50A via the global network 33. Then, in the ECU 50A, the execution device 56 writes the software for the additional function to its own storage device 57. As a result, the execution device 56 executes the software for the additional function, enabling the braking device 60 to realize the additional function.

<記憶装置の構造>
図2を参照し、ECU50Aの記憶装置57の構造について説明する。図2は、追加機能用のソフトウェアが書き込まれる前の記憶装置57の構造を示している。
<Structure of memory device>
The structure of the storage device 57 of the ECU 50A will be described with reference to Fig. 2. Fig. 2 shows the structure of the storage device 57 before software for additional functions is written.

図2に示すように、記憶装置57は、既存領域57Aと空白領域57Bとを有している。既存領域57Aは、既存のソフトウェアが書き込まれている領域である。空白領域57Bは、ソフトウェアが書き込まれていない領域である。図2からも明らかなように、複数のソフトウェアは、最も低位のアドレスから順番に書き込まれている。そして、空白領域57Bは、既存領域57Aよりも高位のアドレスに設定されている。 As shown in FIG. 2, the storage device 57 has an existing area 57A and a blank area 57B. The existing area 57A is an area where existing software has been written. The blank area 57B is an area where no software has been written. As is clear from FIG. 2, the multiple software programs are written in order starting from the lowest address. The blank area 57B is set to a higher address than the existing area 57A.

既存領域57Aには、複数種類のソフトウェアが書き込まれている。具体的には、既存領域57Aには、駆動処理用のソフトウェア、入力処理用のソフトウェア、出力処理用のソフトウェア、演算処理用のソフトウェア及び機能処理用のソフトウェアが書き込まれている。 Multiple types of software are written in existing area 57A. Specifically, software for drive processing, software for input processing, software for output processing, software for calculation processing, and software for function processing are written in existing area 57A.

既存領域57Aは、第1領域571と第2領域572と第3領域573とを含んでいる。第1領域571は、これら3つの領域571,572,573の中で最も低位のアドレスに設定されている。第3領域573は、これら3つの領域571,572,573の中で最も高位のアドレスに設定されている。第1領域571と第3領域573との間の領域が、第2領域572である。 The existing area 57A includes a first area 571, a second area 572, and a third area 573. The first area 571 is set to the lowest address among these three areas 571, 572, and 573. The third area 573 is set to the highest address among these three areas 571, 572, and 573. The area between the first area 571 and the third area 573 is the second area 572.

第1領域571には、上述した複数種類のソフトウェアの中で、更新頻度が最も低い駆動処理用のソフトウェアが書き込まれている。制動装置60が複数のアクチュエータ61を備えている場合、第1領域571には、複数種類の駆動処理用のソフトウェアが順番に書き込まれている。第1領域571に書き込まれている複数のソフトウェアを、「第1ソフトウェアAP11,AP12,AP13,…」ともいう。 The first area 571 contains drive processing software that is updated least frequently among the multiple types of software described above. When the braking device 60 is equipped with multiple actuators 61, the multiple types of drive processing software are written in sequence in the first area 571. The multiple pieces of software written in the first area 571 are also referred to as "first software AP11, AP12, AP13, ...".

第2領域572には、上述した複数種類のソフトウェアの中で、駆動処理用のソフトウェアよりも更新頻度が高いソフトウェア、すなわち入力処理用のソフトウェア及び出力処理用のソフトウェアが書き込まれている。複数のセンサの検出信号がECU50Aに入力される場合、第2領域572には、複数種類の入力処理用のソフトウェア及び複数種類の出力処理用のソフトウェアが書き込まれている。第2領域572に書き込まれている複数のソフトウェアを、「第2ソフトウェアAP21,AP22,AP23,…」ともいう。 The second area 572 is written with software that is updated more frequently than the drive processing software among the multiple types of software described above, i.e., input processing software and output processing software. When detection signals from multiple sensors are input to the ECU 50A, multiple types of input processing software and multiple types of output processing software are written in the second area 572. The multiple pieces of software written in the second area 572 are also referred to as "second software AP21, AP22, AP23, ...".

第3領域573には、入力処理用のソフトウェア及び出力処理用のソフトウェアよりも更新頻度が高い演算処理用のソフトウェアが書き込まれている。また第3領域573には、上述した複数種類のソフトウェアの中で、更新頻度が最も高い機能処理用のソフトウェアが書き込まれている。第3領域573の中では、演算処理用のソフトウェアが、機能用のソフトウェアよりも低位のアドレスに書き込まれている。制動装置60が複数の機能を実現する場合、第3領域573には、複数種類の機能処理用のソフトウェアが書き込まれている。第3領域573に書き込まれている複数のソフトウェアを、「第3ソフトウェアAP31,AP32,AP33,…」ともいう。 The third area 573 is written with software for arithmetic processing, which is updated more frequently than the software for input processing and the software for output processing. The third area 573 is also written with software for function processing, which is updated most frequently among the multiple types of software described above. In the third area 573, the software for arithmetic processing is written at a lower address than the software for functions. When the braking device 60 realizes multiple functions, multiple types of software for function processing are written in the third area 573. The multiple pieces of software written in the third area 573 are also referred to as "third software AP31, AP32, AP33, ...".

なお、図2において、「Func_1」は、第1ソフトウェアAP11が書き込まれている領域を示す関数である。「Func_2」は、第1ソフトウェアAP12が書き込まれている領域を示す関数である。「Func_3」は、第1ソフトウェアAP13が書き込まれている領域を示す関数である。「Func_n」は、第2ソフトウェアAP21が書き込まれている領域を示す関数である。「Func_n+1」は、第2ソフトウェアAP22が書き込まれている領域を示す関数である。「Func_n+2」は、第2ソフトウェアAP23が書き込まれている領域を示す関数である。「Func_m」は、第3ソフトウェアAP31が書き込まれている領域を示す関数である。「Func_m+1」は、第3ソフトウェアAP32を示す関数である。「Func_m+2」は、第3ソフトウェアAP33が書き込まれている領域を示す関数である。「Func_reserve」は、空白領域57Bを示す関数である。 In FIG. 2, "Func_1" is a function indicating the area into which the first software AP11 is written. "Func_2" is a function indicating the area into which the first software AP12 is written. "Func_3" is a function indicating the area into which the first software AP13 is written. "Func_n" is a function indicating the area into which the second software AP21 is written. "Func_n+1" is a function indicating the area into which the second software AP22 is written. "Func_n+2" is a function indicating the area into which the second software AP23 is written. "Func_m" is a function indicating the area into which the third software AP31 is written. "Func_m+1" is a function indicating the third software AP32. "Func_m+2" is a function indicating the area into which the third software AP33 is written. "Func_reserve" is a function that indicates blank area 57B.

そして、実行装置56は、関数Func_1を読み出すことによって第1ソフトウェアAP11を実行する。実行装置56は、第1ソフトウェアAP11の実行を完了させると、関数Func_2を読み出すことによって第1ソフトウェアAP12を実行する。実行装置56が関数Func_reserveを読み出した場合、空白領域57Bにはソフトウェアが書き込まれていないため、実行装置56は、関数Func_1を読み出すことによって第1ソフトウェアAP11を実行する。このように、実行装置56は、低位のアドレスに書き込まれたソフトウェアから順番に実行することを繰り返す。 Then, the execution unit 56 executes the first software AP11 by reading the function Func_1. When the execution unit 56 completes the execution of the first software AP11, it executes the first software AP12 by reading the function Func_2. When the execution unit 56 reads the function Func_reserve, since no software has been written in the blank area 57B, the execution unit 56 executes the first software AP11 by reading the function Func_1. In this way, the execution unit 56 repeatedly executes software written in order from the lowest address.

<新機能追加処理>
図3及び図4を参照し、ECU50Aの実行装置56が実行する新機能追加処理を説明する。新機能追加処理は、新規の機能を追加するために新たなソフトウェアを記憶装置57に書き込む際の処理の流れである。実行装置56は、新規のソフトウェアの記憶装置57への書き込みが要求された場合に新機能追加処理を実行する。図3及び図4を用いて説明する新規機能追加処理の例では、新規のソフトウェアが空白領域57Bにおいて最も低位のアドレスに書き込まれる。
<Adding new functions>
The new function addition process executed by the execution unit 56 of the ECU 50A will be described with reference to Figures 3 and 4. The new function addition process is a process flow when new software is written to the storage device 57 in order to add a new function. The execution unit 56 executes the new function addition process when a request is made to write new software to the storage device 57. In an example of the new function addition process described with reference to Figures 3 and 4, the new software is written to the lowest address in the blank area 57B.

図3に示すように、ステップS11において、実行装置56は、記憶装置57の空白領域57Bにおいて最も低位のアドレスを検索する。実行装置56は、空白領域57Bにおいて最も低位のアドレスを見つけると、処理をステップS13に移行する。 As shown in FIG. 3, in step S11, the execution unit 56 searches for the lowest address in the blank area 57B of the storage device 57. When the execution unit 56 finds the lowest address in the blank area 57B, the process proceeds to step S13.

ステップS13において、実行装置56は、空白領域57Bにおいて最も低位のアドレスへの新規のソフトウェアの書き込みを開始する。続くステップS15において、実行装置56は、ソフトウェアの書き込みが完了したか否かを判定する。実行装置56は、新規のソフトウェアの書き込みが完了していない場合(S15:NO)、書き込みが完了するまでステップS15の判定を繰り返し実行する。一方、実行装置56は、新規のソフトウェアの書き込みが完了した場合(S15:YES)、新機能追加処理を終了する。 In step S13, the execution unit 56 starts writing the new software to the lowest address in the blank area 57B. In the following step S15, the execution unit 56 determines whether or not writing of the software is complete. If writing of the new software is not complete (S15: NO), the execution unit 56 repeats the determination of step S15 until writing is complete. On the other hand, if writing of the new software is complete (S15: YES), the execution unit 56 ends the new function addition process.

図4には、新規のソフトウェアが書き込まれた記憶装置57の構造の一例が模式的に図示されている。図4に示すように、例えば空白領域57Bにおいて最も低位のアドレスに新規のソフトウェアが書き込まれる。図4において、「Func_m+3」は、新規のソフトウェアが書き込まれている領域を示す関数である。すなわち、実行装置56は、既存領域57Aについては何ら変更することなく、新規のソフトウェアを記憶装置57に書き込むことができる。 Figure 4 shows a schematic diagram of an example of the structure of storage device 57 into which new software has been written. As shown in Figure 4, for example, the new software is written into the lowest address in blank area 57B. In Figure 4, "Func_m+3" is a function indicating the area into which the new software has been written. In other words, execution device 56 can write new software into storage device 57 without making any changes to existing area 57A.

<本実施形態の作用>
新規のソフトウェアが記憶装置57に書き込まれた以降でのECU50Aの作用を説明する。
<Action of this embodiment>
The operation of the ECU 50A after the new software has been written into the storage device 57 will now be described.

ECU50Aでは、制動装置60を作動させることによって実現できる複数の機能のうち、第1機能を実現させる場合、実行装置56は、第1機能に対応するソフトウェアが書き込まれているアドレスを検索する。第1機能に対応するソフトウェアが上記新規のソフトウェアである場合、実行装置56は、当該新規のソフトウェアが書き込まれているアドレスを検索する。そして、実行装置56は、当該アドレスの関数を読み出すことによって、当該アドレスに書き込まれているソフトウェアを実行する。実行装置56は、当該新規のソフトウェアを実行することによって、制動装置60の作動量を導出できる。制動装置60の作動量の一例は、車両10に付与する制動力の目標値である。実行装置56は、制動装置60の作動量を導出すると、駆動処理用のソフトウェアを実行する。すなわち、実行装置56は、駆動処理用のソフトウェアが書き込まれているアドレスの関数を読み出す。これにより、実行装置56は、制動装置60の作動量を実現するためのアクチュエータ61に対する指令値を導出する。そして、実行装置56は、当該指令値に基づいてアクチュエータ61を作動させる。 In the ECU 50A, when the first function is realized among the multiple functions that can be realized by operating the braking device 60, the execution device 56 searches for the address where the software corresponding to the first function is written. If the software corresponding to the first function is the new software, the execution device 56 searches for the address where the new software is written. Then, the execution device 56 executes the software written at the address by reading the function at the address. The execution device 56 can derive the operation amount of the braking device 60 by executing the new software. An example of the operation amount of the braking device 60 is the target value of the braking force applied to the vehicle 10. When the execution device 56 derives the operation amount of the braking device 60, it executes the software for the drive processing. That is, the execution device 56 reads the function at the address where the software for the drive processing is written. As a result, the execution device 56 derives a command value for the actuator 61 to realize the operation amount of the braking device 60. The execution device 56 then operates the actuator 61 based on the command value.

<本実施形態の効果>
(1)記憶装置57では、既存領域57Aよりも高位のアドレスに空白領域57Bが設定されている。そのため、記憶装置57に新規のソフトウェアを書き込む場合、実行装置56は、新規のソフトウェアを空白領域57Bに書き込む。
<Effects of this embodiment>
(1) In the storage device 57, a blank area 57B is set at a higher address than the existing area 57A. Therefore, when writing new software to the storage device 57, the execution device 56 writes the new software into the blank area 57B.

ここで、記憶装置57の既存領域57Aに新規のソフトウェアを書き込む場合を考える。この場合、既存領域57Aに既に書き込まれていた既存のソフトウェアの一部のアドレスが高位にずれることになる。アドレスが高位にずれる既存のソフトウェアを所定のソフトウェアとする。このとき、実行装置56は、新規のソフトウェアを記憶装置57に書き込むに際し、新規のソフトウェアを記憶装置57に書き込むことに加え、所定のソフトウェアも記憶装置57に再度書き込む必要がある。 Now consider the case where new software is written to existing area 57A of storage device 57. In this case, the addresses of some of the existing software that has already been written to existing area 57A will shift to higher addresses. The existing software whose addresses shift to higher addresses is considered to be the specified software. In this case, when writing new software to storage device 57, in addition to writing the new software to storage device 57, execution device 56 also needs to re-write the specified software to storage device 57.

また、車載のECU50では、記憶装置57の記憶容量が限られている。そのため、記憶装置57には、複数のソフトウェアが隙間を空けることなく書き込まれている。その結果、既存領域57Aに新規のソフトウェアを書き込もうとすると、既存のソフトウェアの一部のアドレスは変更せざるを得ない。 In addition, the storage capacity of the storage device 57 in the vehicle-mounted ECU 50 is limited. Therefore, multiple software programs are written to the storage device 57 without leaving any gaps. As a result, when trying to write new software to the existing area 57A, some addresses of the existing software must be changed.

この点、ECU50Aでは、新規のソフトウェアを記憶装置57に書き込むに際し、既存のソフトウェアのアドレスを変更しなくてもよい。すなわち、実行装置56は、新規のソフトウェアを記憶装置57に書き込むに際し、既存のソフトウェアを記憶装置57に再度書き込む必要がない。したがって、ECU50Aは、自身の記憶装置57に新規のソフトウェアを書き込むのに要する時間が長くなることを抑制できる。 In this regard, in the ECU 50A, when writing new software to the storage device 57, it is not necessary to change the address of the existing software. In other words, when writing new software to the storage device 57, the execution device 56 does not need to re-write the existing software to the storage device 57. Therefore, the ECU 50A can prevent the time required to write new software to its own storage device 57 from becoming long.

(2)既存のソフトウェアのうち、特定のソフトウェアが更新されることがある。特定のソフトウェアが占める記憶容量が増えると、特定のソフトウェアよりも高位のアドレスに書き込まれている全てのソフトウェアのアドレスが高位にずれてしまう。この場合、実行装置56は、特定のソフトウェアを更新するに際し、特定のソフトウェアよりも高位のアドレスに書き込まれている全てのソフトウェアも記憶装置57に書き込む必要がある。 (2) Of the existing software, a specific piece of software may be updated. If the amount of memory space occupied by the specific software increases, the addresses of all software written at higher addresses than the specific software will shift to higher addresses. In this case, when updating the specific software, the execution device 56 must also write to the storage device 57 all software written at higher addresses than the specific software.

この点、ECU50Aの記憶装置57では、更新頻度の低いソフトウェアが、更新頻度の高いソフトウェアよりも低位のアドレスに書き込まれている。これにより、ECU50Aは、既存のソフトウェアを更新する場合に、その更新に要する時間が長くなることを抑制できる。 In this regard, in the memory device 57 of the ECU 50A, software that is updated less frequently is written to a lower address than software that is updated more frequently. This allows the ECU 50A to prevent the time required for updating existing software from becoming too long.

<変更例>
上記実施形態は、以下のように変更して実施することができる。上記実施形態及び以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
<Example of change>
The above embodiment can be modified as follows: The above embodiment and the following modifications can be combined with each other to the extent that no technical contradiction occurs.

・記憶装置57では、第1領域571を第2領域572と第3領域573との間に設定してもよい。
・上記実施形態では、実行装置56は、新規のソフトウェアを記憶装置57に書き込む際に、ソフトウェアを記憶装置57の空白領域57Bの最も低位のアドレスに書き込むようにしていた。これに対し、図5の(A)に示すように、記憶装置57は、複数の既存のソフトウェアAPの各々に対応するジャンプ領域が空白領域57Bに設定された構造であってもよい。この場合、記憶装置57に新たに書き込まれる新規のソフトウェアは、関数の形式で書き込まれるようにするとよい。
In the storage device 57 , the first area 571 may be set between the second area 572 and the third area 573 .
In the above embodiment, when the execution device 56 writes new software into the storage device 57, the execution device 56 writes the software into the lowest address of the blank area 57B of the storage device 57. However, as shown in Fig. 5A, the storage device 57 may have a structure in which jump areas corresponding to each of a plurality of existing software APs are set in the blank area 57B. In this case, it is preferable that the new software newly written into the storage device 57 is written in the form of a function.

この場合、既存のソフトウェアAPは、ソフトウェアに対応するジャンプ領域を関数として読み出すことができるようなコマンドが当該ソフトウェアの最後に用意された構造になっている。あるいは、既存のソフトウェアAPは、当該既存のソフトウェアAPを呼び出す関数の中に、当該ソフトウェアに対応するジャンプ領域を関数として読み出せるような構造であってもよい。 In this case, the existing software AP is structured such that a command is prepared at the end of the software that can read out the jump area corresponding to the software as a function. Alternatively, the existing software AP may be structured such that the jump area corresponding to the software can be read out as a function within the function that calls the existing software AP.

そして、ジャンプ領域は、既存のソフトウェアAPに対する新規ソフトウェアが追加されていない場合には、何も処理をされずリターンするように設定される。例えば、工場出荷時のような追加のプログラムが何もない初期状態では、すべてのジャンプ領域は、何も処理されずリターンするように設定されている。一方、ジャンプ領域は、既存のソフトウェアAPに対する新規ソフトウェアが追加された場合には、ジャンプ領域内から追加された新規ソフトウェアが関数で読み出せるように設定される。新規ソフトウェアの処理が終了して、ジャンプ領域に戻ると、リターンするようになっている。 The jump area is set so that if no new software has been added to the existing software AP, then no processing is performed and the program returns. For example, in the initial state when no additional programs are present, such as when the product is shipped from the factory, all jump areas are set so that no processing is performed and the program returns. On the other hand, if new software has been added to the existing software AP, the jump area is set so that the new software that has been added can be read from within the jump area by a function. Once the processing of the new software has finished and the program has returned to the jump area, the program returns.

ここで、第2ソフトウェアAP22に関連する新規プログラムが追加される処理を、一例としてより具体的に説明する。例えば、図5の(A)に示すように、第2ソフトウェアAP22に対応する新規プログラムが空白領域57Bにおいて空き領域に関数として書き込まれ、この場合、図5の(C)に示すように、関連する第2ソフトウェアAP22に対応するジャンプ領域には、新規ソフトウェアに対応する関数Funk_m+3を読み出す命令が書き込まれる。 Here, the process of adding a new program related to the second software AP22 will be described in more detail as an example. For example, as shown in FIG. 5A, the new program corresponding to the second software AP22 is written as a function in the free area in blank area 57B. In this case, as shown in FIG. 5C, an instruction to read the function Funk_m+3 corresponding to the new software is written in the jump area corresponding to the related second software AP22.

新規プログラムの書き込みが完了した後にソフトウェアが実行された場合、例えば、第2ソフトウェアAP21が実行された最後に、第2ソフトウェアAP21のジャンプ領域が関数で読み出される。第2ソフトウェアAP21に対応する新規プログラムは無いため、第2ソフトウェアAP21のジャンプ領域には、例えば図5の(B)に示すように空関数が設定されている。その結果、そのまま、何もせずにリターンされる。次に第2ソフトウェアAP22が実行された最後に、第2ソフトウェアAP22のジャンプ領域が関数で読み出される。第2ソフトウェアAP22のジャンプ領域には、図5の(C)に示すように、第2ソフトウェアAP22に関連する新規ソフトウェアの関数Funk_m+3が設定されている。そして、当該関数Funk_m+3が読み出されると、新規のソフトウェアが実行される。新規のソフトウェアの実行が終了すると、第2ソフトウェアAP22のジャンプ領域に戻り、リターンされて、次の第2ソフトウェアAP23が実行される。 When the software is executed after the writing of the new program is completed, for example, at the end of the execution of the second software AP21, the jump area of the second software AP21 is read by a function. Since there is no new program corresponding to the second software AP21, an empty function is set in the jump area of the second software AP21, for example, as shown in (B) of FIG. 5. As a result, it returns without doing anything. Next, at the end of the execution of the second software AP22, the jump area of the second software AP22 is read by a function. In the jump area of the second software AP22, as shown in (C) of FIG. 5, the function Funk_m+3 of the new software related to the second software AP22 is set. Then, when the function Funk_m+3 is read, the new software is executed. When the execution of the new software is completed, it returns to the jump area of the second software AP22, returns, and the next second software AP23 is executed.

これにより、既存のソフトウェアに対応する新規ソフトウェアが追加された場合であっても、既存のソフトウェアを書き変えることなく、新規ソフトウェアが実行される。
・記憶装置57では、最初に新規のソフトウェアを書き込む際に、空白領域57Bの最も低位のアドレスから所定のアドレスだけ高位側のアドレスから書き込むようにしてもよい。こうすることで、新規のソフトウェアが書き込まれた領域と直前の領域との間に空き領域が形成されるため、既存のソフトウェアの書き換えで既存のソフトウェアの容量が増大した際に、空白領域57Bに書き込まれているソフトウェアの書き変えを行わなくてもよい可能性がある。これは、言い換えると、空白領域57Bの直上の領域の高位側に所定の空白領域を設けて、最初に新規のソフトウェアを書き込む際に、ソフトウェアが空白領域57Bの最も低位側のアドレスに書き込まれることと同様とも云える。
As a result, even when new software corresponding to existing software is added, the new software can be executed without rewriting the existing software.
In the storage device 57, when new software is written for the first time, it may be written from the address of the blank area 57B by a predetermined number of addresses higher than the lowest address. In this way, a free area is formed between the area where the new software is written and the area immediately before it, so that when the capacity of the existing software increases due to rewriting of the existing software, it may not be necessary to rewrite the software written in the blank area 57B. In other words, this is the same as providing a predetermined blank area on the high side of the area immediately above the blank area 57B, and writing new software for the first time at the lowest address of the blank area 57B.

・上記実施形態では、制動装置60を制御するECU50Aが備える記憶装置57に新規のソフトウェアを書き込む場合について説明した。しかし、制動装置60を制御するECU50A以外の他のECU50でも、上記実施形態で説明した手法と同様の手法で記憶装置57に新規のソフトウェアを書き込んでもよい。 In the above embodiment, a case has been described in which new software is written to the storage device 57 provided in the ECU 50A that controls the braking device 60. However, new software may also be written to the storage device 57 in an ECU 50 other than the ECU 50A that controls the braking device 60 using a method similar to the method described in the above embodiment.

・車両10に新たなセンサが取り付けられた場合には、当該センサがECU50Aに電気的に接続される。この場合、実行装置56は、当該センサの検出信号に対して処理を施すための入力処理、入力処理を得たセンサの検出値を用いた演算をするための演算処理、当該演算処理によって得た情報を出力するための出力処理を実行できるようにする必要がある。すなわち、ECU50Aでは、記憶装置57に、こうした入力処理用のソフトウェア、出力処理用のソフトウェア及び演算処理用のソフトウェアを書き込む必要がある。こうしたソフトウェアを記憶装置57に書き込む場合、実行装置56は、こうしたソフトウェアを空白領域57Bに書き込むようにしてもよい。 - When a new sensor is attached to the vehicle 10, the sensor is electrically connected to the ECU 50A. In this case, the execution unit 56 needs to be able to execute input processing for processing the detection signal of the sensor, calculation processing for performing calculations using the detection value of the sensor that obtained the input processing, and output processing for outputting information obtained by the calculation processing. That is, the ECU 50A needs to write such input processing software, output processing software, and calculation processing software in the storage device 57. When writing such software in the storage device 57, the execution unit 56 may write such software in the blank area 57B.

・ECU50は、CPUとROMとを備えて、ソフトウェア処理を実行するものに限らない。すなわち、ECU50は、以下(a)、(b)及び(c)の何れかの構成であればよい。 - The ECU 50 is not limited to having a CPU and ROM and executing software processing. In other words, the ECU 50 may have any of the following configurations (a), (b), and (c).

(a)ECU50は、コンピュータプログラムに従って各種処理を実行する一つ以上のプロセッサを備えている。プロセッサは、CPU並びに、RAM及びROMなどのメモリを含んでいる。メモリは、処理をCPUに実行させるように構成されたプログラムコード又は指令を格納している。メモリ、すなわちコンピュータ可読媒体は、汎用又は専用のコンピュータでアクセスできるあらゆる利用可能な媒体を含んでいる。 (a) The ECU 50 includes one or more processors that execute various processes according to a computer program. The processor includes a CPU and memory such as RAM and ROM. The memory stores program code or instructions configured to cause the CPU to execute processes. Memory, i.e., computer-readable media, includes any available media that can be accessed by a general-purpose or special-purpose computer.

(b)ECU50は、各種処理を実行する一つ以上の専用のハードウェア回路を備えている。専用のハードウェア回路としては、例えば、特定用途向け集積回路、すなわちASIC又はFPGAを挙げることができる。なお、ASICは、「Application Specific Integrated Circuit」の略記である。FPGAは、「Field Programmable Gate Array」の略記である。 (b) The ECU 50 has one or more dedicated hardware circuits that execute various processes. Examples of dedicated hardware circuits include application specific integrated circuits, i.e., ASICs or FPGAs. ASIC is an abbreviation for "Application Specific Integrated Circuit." FPGA is an abbreviation for "Field Programmable Gate Array."

(c)ECU50は、各種処理の一部をコンピュータプログラムに従って実行するプロセッサと、各種処理のうちの残りの処理を実行する専用のハードウェア回路とを備えている。 (c) The ECU 50 includes a processor that executes some of the various processes according to a computer program, and a dedicated hardware circuit that executes the remaining processes.

<他の技術的思想>
次に、上記実施形態及び変更例から把握できる技術的思想について記載する。
(付記1)前記実行装置は、前記新規のソフトウェアを前記記憶装置に書き込んだ以降において当該新規のソフトウェアの機能を実現させる場合には、当該新規のソフトウェアを実行し、その後に前記既存のソフトウェアに戻って一連のソフトウェア機能を実行することが好ましい。
<Other technical ideas>
Next, the technical ideas that can be understood from the above embodiment and modified examples will be described.
(Additional Note 1) When the execution device is to realize the functions of the new software after writing the new software to the storage device, it is preferable that the execution device executes the new software and then returns to the existing software to execute a series of software functions.

(付記2)前記第2ソフトウェアが書き込まれている領域は、前記第1ソフトウェアが書き込まれている領域のアドレスの次のアドレスに設定されていることが好ましい。
(付記3)前記第1領域と前記第3領域との間の領域が、前記第2領域であることが好ましい。
(Additional Note 2) It is preferable that the area in which the second software is written is set to an address next to the address of the area in which the first software is written.
(Additional Note 3) It is preferable that the region between the first region and the third region is the second region.

なお、本明細書において使用される「少なくとも1つ」という表現は、所望の選択肢の「1つ以上」を意味する。一例として、本明細書において使用される「少なくとも1つ」という表現は、選択肢の数が2つであれば「1つの選択肢のみ」又は「2つの選択肢の双方」を意味する。他の例として、本明細書において使用される「少なくとも1つ」という表現は、選択肢の数が3つ以上であれば「1つの選択肢のみ」又は「2つ以上の任意の選択肢の組み合わせ」を意味する。 Note that the expression "at least one" used in this specification means "one or more" of the desired options. As an example, the expression "at least one" used in this specification means "only one option" or "both of two options" if the number of options is two. As another example, the expression "at least one" used in this specification means "only one option" or "any combination of two or more options" if the number of options is three or more.

10…車両
21~24…センサ
50,50A…ECU(電子制御装置)
55…マイクロコンピュータ
56…実行装置
57…記憶装置
57A…既存領域
57B…空白領域
571…第1領域
572…第2領域
573…第3領域
61…アクチュエータ
10: vehicle; 21-24: sensors; 50, 50A: ECU (electronic control unit)
55: Microcomputer 56: Execution device 57: Storage device 57A: Existing area 57B: Blank area 571: First area 572: Second area 573: Third area 61: Actuator

Claims (5)

車両に搭載される電子制御装置であって、
実行装置と、前記実行装置によって実行されるソフトウェアを記憶している記憶装置と、を備え、
前記記憶装置は、既存のソフトウェアが書き込まれている領域である既存領域と、前記既存領域よりも高位のアドレスに設定されており、且つソフトウェアが書き込まれていない領域である空白領域と、を有しており、
前記実行装置は、
新規のソフトウェアの前記記憶装置への書き込みが要求された場合には、当該新規のソフトウェアを前記空白領域に書き込む
電子制御装置。
An electronic control device mounted on a vehicle,
An execution device and a storage device storing software to be executed by the execution device,
the storage device has an existing area in which existing software is written, and a blank area which is set at a higher address than the existing area and in which no software is written,
The execution device is
When a request is made to write new software to the storage device, the electronic control device writes the new software into the blank area.
前記実行装置は、新規のソフトウェアの前記記憶装置への書き込みが要求された場合には、当該新規のソフトウェアを、前記空白領域において最も低位のアドレスに書き込む
請求項1に記載の電子制御装置。
2. The electronic control device according to claim 1, wherein, when a request is made to write new software to the storage device, the execution device writes the new software to the lowest address in the blank area.
前記記憶装置は、所定のジャンプ領域を有し、前記既存のソフトウェアは前記ジャンプ領域を読み出すことができるように構成されており、
前記ジャンプ領域は、当該ジャンプ領域に新規のソフトウェアが書き込まれた際には、前記実行装置が当該新規のソフトウェアを読み出して実行できるように構成される
請求項1に記載の電子制御装置。
the storage device has a predetermined jump area, and the existing software is configured to be able to read the jump area;
The electronic control device according to claim 1 , wherein the jump area is configured such that, when new software is written in the jump area, the execution device can read and execute the new software.
前記既存領域には、第1ソフトウェアと、前記第1ソフトウェアよりも更新頻度の高い第2ソフトウェアと、が書き込まれており、
前記既存領域のうち前記第2ソフトウェアが書き込まれている領域は、前記第1ソフトウェアが書き込まれている領域よりも高位のアドレスに設定されている
請求項1~請求項3のうち何れか一項に記載の電子制御装置。
A first software and a second software that is updated more frequently than the first software are written in the existing area,
The electronic control device according to any one of claims 1 to 3, wherein an area of the existing area into which the second software is written is set to a higher address than an area into which the first software is written.
前記既存領域は、
車載のアクチュエータを作動させるためのソフトウェアが前記既存のソフトウェアとして書き込まれている第1領域と、
車載のセンサの検出信号に対して入力処理を施すためのソフトウェア、及び、前記センサの検出信号を用いた演算処理によって導出された情報を出力するためのソフトウェアが前記既存のソフトウェアとして書き込まれている第2領域と、
前記演算処理を実行するためのソフトウェアが前記既存のソフトウェアとして書き込まれている第3領域と、を含んでおり、
前記第2領域は、前記第1領域よりも高位のアドレスに設定されているとともに、前記第3領域は、前記第2領域よりも高位のアドレスに設定されている
請求項1~請求項3のうち何れか一項に記載の電子制御装置。
The existing area is
a first area in which software for operating an actuator mounted on a vehicle is written as the existing software;
a second area in which software for performing input processing on a detection signal of an on-vehicle sensor and software for outputting information derived by arithmetic processing using the detection signal of the sensor are written as the existing software;
a third area in which software for executing the arithmetic processing is written as the existing software,
The electronic control device according to any one of claims 1 to 3, wherein the second area is set to a higher address than the first area, and the third area is set to a higher address than the second area.
JP2023055079A 2023-03-30 2023-03-30 Electronic Control Unit Pending JP2024142767A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2023055079A JP2024142767A (en) 2023-03-30 2023-03-30 Electronic Control Unit
PCT/JP2024/013230 WO2024204783A1 (en) 2023-03-30 2024-03-29 Electronic control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2023055079A JP2024142767A (en) 2023-03-30 2023-03-30 Electronic Control Unit

Publications (1)

Publication Number Publication Date
JP2024142767A true JP2024142767A (en) 2024-10-11

Family

ID=92906064

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023055079A Pending JP2024142767A (en) 2023-03-30 2023-03-30 Electronic Control Unit

Country Status (2)

Country Link
JP (1) JP2024142767A (en)
WO (1) WO2024204783A1 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05108338A (en) * 1991-10-18 1993-04-30 Nec Corp Correcting method for linked program
JP4084461B2 (en) * 1997-06-05 2008-04-30 松下電器産業株式会社 Terminal device capable of remote download, download method applied to a loader program provided in the terminal device, and recording medium recording the loader program
JP2005321843A (en) * 2004-05-06 2005-11-17 Hitachi Ltd How to rewrite the firmware

Also Published As

Publication number Publication date
WO2024204783A1 (en) 2024-10-03

Similar Documents

Publication Publication Date Title
CN109905454B (en) Remote operating system of the vehicle
CN113428139B (en) Control device, manager, method, non-transitory storage medium, vehicle control device, and vehicle control method
CN111954871B (en) Method for providing application data of an application that can be implemented in a vehicle control device, control device and calibration method thereof, and analysis and processing device
EP3933572B1 (en) Software update device, software update method, non-transitory storage medium, and vehicle
CN113386729B (en) In-vehicle device control apparatus and vehicle control system
CN118928385A (en) Control device, manager, method, non-transitory storage medium, vehicle, vehicle control device, and vehicle control method
US20230138932A1 (en) Software updating device, software updating method, and software update processing program
US20220063646A1 (en) Onboard device, information generating method, non-transitory storage medium, and vehicle
JP2024142767A (en) Electronic Control Unit
EP3945418B1 (en) Server, software updating device, vehicle, software updating system, control method, and non-transitory storage medium
JP7532806B2 (en) Vehicle-mounted device control device and vehicle control system
US11947824B2 (en) Electronic control unit, method, and program
JP4556653B2 (en) Program rewriting system for in-vehicle electronic control device, boot loader for computer in in-vehicle electronic control device, recording medium, and in-vehicle electronic control device
JP7540386B2 (en) OTA master, update control method, update control program, and OTA center
JP2009087107A (en) Vehicle control system
JP7344109B2 (en) Resource allocation system, server, computing device
CN114987447A (en) Manager, control method, recording medium, vehicle, and control device
CN116534017A (en) Control method and device for vehicle, vehicle and storage medium
US20240184579A1 (en) Multi-core system for providing a communication function between software components and a method therefor
US20240377978A1 (en) Storage management device for vehicle
CN115230735B (en) Control method, device, computer equipment and storage medium for commercial vehicle
JP2023009818A (en) Electronic control device for vehicle and control method by electronic control device for vehicle
EP4438423A1 (en) Braking control method and device, vehicle, storage medium and chip
JP2024048008A (en) Electronic control apparatus and software update method
WO2022259348A1 (en) Vehicle control device