WO2021166956A1 - データ配信装置、データ配信システム及びデータ配信プログラム - Google Patents

データ配信装置、データ配信システム及びデータ配信プログラム Download PDF

Info

Publication number
WO2021166956A1
WO2021166956A1 PCT/JP2021/005927 JP2021005927W WO2021166956A1 WO 2021166956 A1 WO2021166956 A1 WO 2021166956A1 JP 2021005927 W JP2021005927 W JP 2021005927W WO 2021166956 A1 WO2021166956 A1 WO 2021166956A1
Authority
WO
WIPO (PCT)
Prior art keywords
update data
package
data
acquisition unit
master device
Prior art date
Application number
PCT/JP2021/005927
Other languages
English (en)
French (fr)
Inventor
翔 中村
雄三 原田
上原 一浩
Original Assignee
株式会社デンソー
トヨタ自動車株式会社
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 株式会社デンソー, トヨタ自動車株式会社 filed Critical 株式会社デンソー
Priority to DE112021001072.7T priority Critical patent/DE112021001072T5/de
Priority to CN202180014673.0A priority patent/CN115136121A/zh
Publication of WO2021166956A1 publication Critical patent/WO2021166956A1/ja
Priority to US17/889,478 priority patent/US20220391195A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units

Definitions

  • This disclosure relates to a data distribution device, a data distribution system, and a data distribution program.
  • a data distribution device that distributes update data such as a repro program, a master device that transfers update data downloaded from the data distribution device, and an electronic control device that writes the update data transferred from the master device to a memory
  • a data distribution system including an ECU Electronic Control Unit
  • the update data transfer process from the master device to the plurality of write target ECUs is executed in parallel to transfer the update data from the master device to the plurality of write target ECUs.
  • a technique for improving the transfer efficiency of updated data is disclosed.
  • the master device has a configuration in which update data downloaded from a data distribution device is temporarily stored in a memory, and the once stored update data is sequentially read from the memory and transferred to a write target ECU.
  • the memory of the master device may not have a storage capacity for downloading all the update data for a plurality of ECUs to be written. In that case, there is a possibility that the mechanism for executing the transfer processing of the update data from the master device to the plurality of write target ECUs in parallel cannot be appropriately utilized.
  • the present disclosure appropriately provides a mechanism for executing update data transfer processing from the master device to a plurality of electronic control devices to be written in parallel in a situation where the master device downloads the update data distributed from the data distribution device.
  • the purpose is to utilize it.
  • the update data acquisition unit acquires a plurality of update data corresponding to a plurality of electronic control devices to be written.
  • the recombination information acquisition unit acquires recombination information for the master device to execute the transfer processing of update data to a plurality of electronic control devices to be written in parallel in parallel.
  • the package generation unit divides the acquired plurality of update data based on the recombination information acquired by the recombination information acquisition unit and divides the data. Is generated, and the divided data of the generated multiple update data is packaged to generate a plurality of packages.
  • the distribution control unit distributes the generated plurality of packages to the master device.
  • the master device When recombination information is acquired for the master device to execute the transfer processing of update data to a plurality of electronic control devices to be written in parallel and a plurality of update data are acquired, the acquired plurality of update data is acquired.
  • the divided data is generated by dividing based on the recombination information, the divided data of the generated multiple update data is packaged to generate multiple packages, and the generated multiple packages are distributed to the master device. bottom.
  • the update data distributed from the data distribution device is mastered. Under the situation where the device downloads, it is possible to appropriately utilize a mechanism for executing update data transfer processing in parallel from the master device to a plurality of electronic control devices to be written.
  • FIG. 1 is a diagram showing the configuration of the entire system of one embodiment.
  • FIG. 2 is a flowchart showing the processing performed by the data distribution device.
  • FIG. 3 is a flowchart showing the processing performed by the master device.
  • FIG. 4 is a diagram showing a mode in which the data distribution device generates a package.
  • FIG. 5 is a diagram showing a mode in which the master device executes update data transfer processing in parallel.
  • FIG. 6 is a diagram showing a mode in which the data distribution device distributes a package and a mode in which the master device transfers update data.
  • FIG. 7 is a diagram showing a comparison target.
  • FIG. 8 is a diagram showing the structure of update data in the package.
  • FIG. 9 is a timing chart.
  • the data distribution system 1 is a vehicle electronic control system including a data distribution device 2, a master device 3 mounted on the vehicle, and an electronic control device (hereinafter referred to as an ECU (Electronic Control Unit)) 4. It is a system that can rewrite application programs such as vehicle control and diagnosis implemented in.
  • ECU 4 Electronic Control Unit
  • It is a system that can rewrite application programs such as vehicle control and diagnosis implemented in.
  • the ECU 4 writes a repro program such as a new version of the program as update data in the memory to rewrite the application program is illustrated, but it is used in, for example, the control parameters and the map application used by the ECU 4. It can also be applied when rewriting application data used in applications such as map data.
  • the update data is a repro program, control parameters, application data, and the like.
  • the write target ECU 4 to which the update data is written is, for example, each ECU 4 that controls the body system, each ECU 4 that controls the traveling system, each ECU 4 that controls the multimedia system, and the like.
  • the data distribution device 2 is a center device, for example, an in-factory device installed in a factory such as a manufacturing factory or a maintenance factory, a diagnostic tool that can be carried by a worker, and the like.
  • a factory such as a manufacturing factory or a maintenance factory
  • a diagnostic tool that can be carried by a worker, and the like.
  • the data distribution device 2 is registered.
  • the updated data is packaged and packaged, and the generated package is distributed to the master device 3.
  • the package generated by the data distribution device 2 is configured to include a file such as a compressed file. If the data distribution device 2 is a center device, it wirelessly connects to the master device 3 via a wide area communication line such as a 3G line or a 4G line, and distributes the package to the master device 3.
  • the data distribution device 2 can be wirelessly connected to the master device 3 via a short-range communication line such as WiFi (registered trademark) or Bluetooth (registered trademark), or can be mastered via a cable.
  • the package is distributed to the master device 3 by making a wired connection with the device 3. That is, the data distribution system 1 is a system in which the application program mounted on the ECU 4 can be rewritten either wirelessly or by wire.
  • Bus 5 includes, for example, CAN (Controller Area Network) (registered trademark), LIN (Local Interconnect Network) (registered trademark), CXPI (Clock Extension Peripheral Interface) (registered trademark), FlexRay (registered trademark), MOST (Media Oriented Systems). Transport) (registered trademark), etc. These buses have different communication protocols and different communication speeds and signal formats.
  • the master device 3 is composed of a microcomputer having a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), and an I / O (Input / Output).
  • the microcomputer executes the processing corresponding to the computer program and controls the overall operation of the master device 3.
  • the master device 3 includes a memory 6 having a predetermined storage capacity, a storage control unit 7, and a transfer control unit 8.
  • the storage control unit 7 downloads a package from the data distribution device 2, and temporarily stores the downloaded package in the memory 6.
  • the transfer control unit 8 reads the package stored in the memory 6, unpackages the read package, extracts update data, and transfers the extracted update data to the write target ECU 4.
  • the master device 3 instructs the write target ECU 4 to install and causes the write target ECU 4 to install the update data.
  • the installable conditions are, for example, that the user has performed an installation consent operation, that the vehicle state is in an installable state, that the write target ECU 4 is in an installable state, that the update data is normal data, and the like. Is.
  • the master device 3 determines that the vehicle state can be installed by, for example, determining that the remaining battery level of the vehicle-mounted battery is equal to or greater than a predetermined capacity or determining that the environment is not improper. judge.
  • the master device 3 determines that the write target ECU 4 can be installed by, for example, determining that the memory structure of the write target ECU 4 is normal or determining that the communication load of the bus 5 is less than a predetermined level. judge.
  • the master device 3 determines that the updated data is normal data, for example, by determining that the updated data is data that has not been tampered with or destroyed.
  • the master device 3 instructs the write target ECU 4 to activate the installed update data, and causes the write target ECU 4 to activate the update data.
  • the acturable conditions are, for example, that the user has performed an activation consent operation, the vehicle state is in an activatable state, the write target ECU 4 is in an activatable state, and the like.
  • the master device 3 determines that the vehicle state can be activated by, for example, determining that the vehicle is in a parked state or determining that the remaining amount of the in-vehicle battery is equal to or greater than a predetermined capacity. judge.
  • the master device 3 determines that the write target ECU 4 is in an activateable state by, for example, determining that the update data written in the memory of the write target ECU 4 is normal.
  • the master device 3 When the master device 3 determines that a plurality of processing requests have been received at the same time, the master device 3 arbitrates the plurality of processing requests based on the priority of the received processing requests, the state of the bus 5, the state of the write target ECU 4, and the like, and receives the plurality of processing requests at the same time. It has a function to execute processing corresponding to a plurality of processing requests in parallel.
  • the master device 3 simultaneously receives a processing request for transferring update data to the writing target ECU (A) and a processing request for transferring update data to the writing target ECU (B), the master device 3 sends the update data to the writing target ECU (A).
  • the transfer process of the update data A and the transfer process of the update data B to the writing target ECU (B) are executed in parallel.
  • the master device 3 determines that a plurality of simultaneous processes are required, the master device 3 performs the processes determined to require the simultaneous processes in parallel, as in the case of determining that the plurality of process requests are received at the same time. It has a function to execute.
  • the master device 3 transmits configuration information to the data distribution device 2 if data communication with the data distribution device 2 is possible at the timing when the ignition of the vehicle is switched from off to on, for example.
  • the configuration information transmitted from the master device 3 to the data distribution device 2 is information on the vehicle side, such as the data transfer speed from the master device 3 to the write target ECU 4, the storable capacity of the memory 6 of the master device 3, and the write target ECU 4. Includes hardware information related to the hardware of the above, software information related to software stored in the write target ECU 4, and the like.
  • the master device 3 may transmit the configuration information to the data distribution device 2 at the timing when the ignition of the vehicle is switched from off to on, for example, at the timing when the transmission request for the configuration information is received from the data distribution device 2. good. That is, the data distribution device 2 acquires the configuration information from the master device 3 at an arbitrary timing.
  • the data distribution device 2 has a control unit 9 and a data distribution unit 10.
  • the control unit 9 is composed of a microcomputer having a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), and an I / O (Input / Output).
  • the microcomputer executes a process corresponding to the computer program and controls the overall operation of the data distribution device 2.
  • Computer programs executed by microcomputers include data distribution programs.
  • the control unit 9 includes an update data acquisition unit 9a, a recombination information acquisition unit 9b, a package generation unit 9c, a security protection unit 9d, and a distribution control unit 9e.
  • the update data acquisition unit 9a acquires the update data by designating the write target ECU 4 by the operator and registering the update data for the write target ECU 4.
  • the recombination information acquisition unit 9b acquires the recombination information by receiving the configuration information transmitted from the master device 3.
  • the recombination information is information for the master device 3 to execute the transfer processing of the update data to the plurality of write target ECUs 4 in parallel, and the recombination information acquisition unit 9b has some recombination information shown below. Get information.
  • the recombination information acquisition unit 9b acquires a storable storable capacity as recombination information by one download in the master device 3.
  • the recombination information acquisition unit 9b uses the recombination information as the recombination information, the distribution speed information regarding the distribution speed of the package from the data distribution device 2 to the master device 3, and the transfer speed information regarding the transfer speed of the update data from the master device 3 to the write target ECU 4. , Acquire speed difference information regarding the speed difference between the delivery speed and the transfer speed.
  • the recombination information acquisition unit 9b uses the recombination information as the recombination information, which is the writable capacity in which the update data can be written by one writing in the write target ECU 4, the write speed of the update data, the total write capacity of the update data, and the execution unit of the write process. To get.
  • the recombination information acquisition unit 9b may use information predetermined for each vehicle type as the recombination information.
  • the package generation unit 9c divides the acquired plurality of update data based on the recombination information acquired by the recombination information acquisition unit 9b. To generate the divided data, and package the generated divided data to generate a plurality of packages. In this case, the package generation unit 9c determines the size of the package, determines the configuration of the update data in the package, and generates the package according to the determined size of the package and the configuration of the update data in the package.
  • the package generation unit 9c determines the acquired storable capacity. To determine the size of the package. Since the storable capacity of the memory 6 of the master device 3 is finite, the package generation unit 9c determines the size of the package so as to be equal to or less than the storable capacity of the memory 6 of the master device 3.
  • the package generation unit 9c has distribution speed information regarding the distribution speed of the package from the data distribution device 2 to the master device 3, transfer speed information regarding the transfer speed of the update data from the master device 3 to the write target ECU 4, distribution speed and transfer.
  • the speed difference information related to the speed difference from the speed, the writable capacity in which the update data can be written by one writing in the write target ECU 4, the write speed of the update data, the total write capacity of the update data, and the execution unit of the write process are recombined.
  • the acquired distribution speed information, transfer speed information, speed difference information, writable capacity, write speed, total write capacity, and execution unit are comprehensively determined and updated in the package. Determine the structure of the data.
  • the configuration of the update data is the distribution of the update data corresponding to the write target ECU 4.
  • the speed difference between the distribution speed and the transfer speed may be calculated by either the data distribution device 2 or the master device 3.
  • the distribution speed of the package from the data distribution device 2 to the master device 3 is faster than the transfer speed of the update data from the master device 3 to the write target ECU 4, so that the package generation unit 9c has a plurality of writes.
  • the configuration of the update data in the package is determined so as to reduce the waiting time for the update data to wait for transfer in the master device 3.
  • the package generation unit 9c has a relatively large amount of update data for the write target ECU 4 having a relatively large writable capacity, while the update data data amount has a relatively small amount for the write target ECU 4 having a relatively small writable capacity. Determine the structure of the update data in the package so that is relatively small.
  • the package generation unit 9c has a relatively large amount of update data for the write target ECU 4 having a relatively high write speed, while the update data data amount is relatively large for the write target ECU 4 having a relatively slow write speed. Determine the structure of the update data in the package so that it is as small as possible.
  • the package generation unit 9c has a relatively large amount of update data for the write target ECU 4 having a relatively large total write capacity, while the update data data amount for the write target ECU 4 having a relatively small total write capacity. Determine the structure of the update data in the package so that is relatively small. Further, the package generation unit 9c determines the configuration of the update data in the package so that the amount of data to be transferred at one time matches the execution unit of the write process.
  • the package generation unit 9c determines the package size and the configuration of the update data in the package in this way, the package generation unit 9c generates the package according to the determined package size and the configuration of the update data in the package.
  • the security protection unit 9d protects the generated package by, for example, encrypting it.
  • the distribution control unit 9e sequentially distributes the security-protected package from the data distribution unit 10 to the master device 3.
  • the control unit 9 acquires the update data by registering the update data (S1, corresponding to the update data acquisition procedure), and receives the configuration information transmitted from the master device 3. Acquire recombination information with (S2, corresponding to the recombination information acquisition procedure). The control unit 9 divides the update data based on the recombination information to generate the divided data, packages the generated divided data, and generates a plurality of packages (S3, corresponding to the package generation procedure). That is, the control unit 9 determines the size of the package and the configuration of the update data in the package, and generates the package according to the determined size of the package and the configuration of the update data in the package.
  • control unit 9 When the control unit 9 generates a package, the control unit 9 protects the security by, for example, encrypting the generated package (S4).
  • the control unit 9 distributes the security-protected package from the data distribution unit 10 to the master device 3 (S5, which corresponds to the distribution control procedure).
  • the master device 3 downloads a package from the data distribution device 2 (T1)
  • the master device 3 verifies the security by, for example, decrypting the downloaded package (T2).
  • the master device 3 unpackages the security-verified package and extracts update data (T3).
  • the master device 3 executes the transfer process of the update data to the write target ECU 4 in parallel (T4).
  • the control unit 9 has, for example, update data A having a data amount of Na bytes corresponding to the write target ECU (A) and update data B having an Nb byte data amount corresponding to the write target ECU (B).
  • update data C having an amount of data corresponding to the write target ECU (C) of Nc bytes
  • the size of the package and the configuration of the update data in the package are determined based on the recombination information.
  • the control unit 9 divides the update data A into Na 1-byte update data A1, Na 2-byte update data A2, and Na 3-byte update data A3.
  • the control unit 9 divides the update data B into Nb1 byte update data B1, Nb2 byte update data B2, and Nb3 byte update data B3.
  • the control unit 9 divides the update data C into Nc1 byte update data C1, Nc2 byte update data C2, and Nc3 byte update data C3.
  • the write target ECU (A), the write target ECU (B), and the write target ECU (C) are the first target device which is the first write target electronic control device and the second target device which is the second write target electronic control device.
  • the update data A1, A2, A3, the update data B1, B2, B3, and the update data C1, C2, C3 divided based on these recombination information are the divided data, and are the first divided data and the second divided data. Corresponds to.
  • the control unit 9 packages the header information including the specification data in which the information related to the rewriting of the application program is specified, generates a package, secures the generated package, and transfers the generated package from the data distribution unit 10 to the master device 3. Deliver. Next, the control unit 9 packages the update data A1, the update data B1, and the update data C1 into one file to generate a package, secures the generated package, and distributes the generated package from the data distribution unit 10 to the master device 3. Let me. After that, the control unit 9 performs the same processing on the update data A2, the update data B2, and the update data C2, and also performs the same processing on the update data A3, the update data B3, and the update data C3.
  • the control unit 9 distributes the package from the data distribution unit 10 to the master device 3 when the package distribution request is received from the master device 3.
  • the control unit 9 includes update data A1, update data B1, update data C1, update data A2, update data B2, update data C2, update data A3, update data B3, update data C3.
  • the package including the above is sequentially distributed from the data distribution unit 10 to the master device 3.
  • the master device 3 downloads a package in which update data A1, update data B1, and update data C1 are packaged as one file from the data distribution device 2, the downloaded package is unpackaged.
  • the update data A1, the update data B1, and the update data C are extracted, and the update data A1 is transferred to the write target ECU (A), the update data B1 is transferred to the write target ECU (B), and the write target.
  • the transfer process of the update data C1 to the ECU (C) is executed in parallel. That is, after transferring the update data A1 to the write target ECU (A), the master device 3 transfers the update data B1 to the write target ECU (B) before receiving the write completion notification from the write target ECU (A). Then, the update data C1 is transferred to the writing target ECU (C).
  • the write target ECU (A) starts a write process of writing the transferred update data A1 to the memory, and when the write process is completed, the write completion notification is mastered. It is transmitted to the device 3.
  • the update data B1 is transferred from the master device 3
  • the write target ECU (B) starts a write process of writing the transferred update data B1 to the memory, and when the write process is completed, the write completion notification is mastered. It is transmitted to the device 3.
  • the write target ECU (C) starts a write process of writing the transferred update data C1 to the memory, and when the write process is completed, the write completion notification is mastered. It is transmitted to the device 3.
  • the data distribution device 2 distributes the package in which the update data A1, the update data B1, and the update data C1 are packaged to the master device 3, so that the write target ECU (A) is distributed in the master device 3.
  • the update data B1 transfer process to the write target ECU (B), and the update data C1 transfer process to the write target ECU (C) can be executed in parallel. It will be possible. Therefore, the write target ECU (A), the write target ECU (B), and the write target ECU (C) can execute the write processing of the update data A1, the update data B1, and the update data C1 in parallel, respectively. ..
  • the data distribution device 2 distributes the package in which the update data A2, the update data B2, and the update data C2 are packaged to the master device 3, thereby causing the write target ECU (A) and the write target ECU (B). ),
  • the write target ECU (C) can execute the write processing of the update data A2, the update data B2, and the update data C2 in parallel, respectively.
  • the write target ECU (A), the write target ECU (B), and the write target ECU (C) Can execute the writing process of the update data A3, the update data B3, and the update data C3 in parallel, respectively. In this way, it is possible to execute the writing process of the update data for the writing target ECU (A), the writing target ECU (B), and the writing target ECU (C) in parallel.
  • the update data is packaged in the order in which the update data is registered to generate the package. That is, the entire update data A is generated as one package, the entire update data B is generated as one package, and the entire update data C is generated as one package. Therefore, it is not possible to execute the update data writing process for the writing target ECU (A), the writing target ECU (B), and the writing target ECU (C) in parallel until the download of all the packages is completed. ..
  • the update data A is first registered, the update data transfer process to the write target ECU (A) is started, but the update data is written while the update data transfer process to the write target ECU (A) is being executed.
  • the update data transfer process to the target ECU (B) and the update data transfer process to the write target ECU (C) are not executed.
  • the update data for the write target ECU (A), the write target ECU (B), and the write target ECU (C) are respectively. Transfer processing is executed in parallel. Therefore, the time required from the start of writing the update data to the completion of writing all the update data can be shortened as compared with the configuration in which the recombination information is not adopted.
  • the transfer speed of the update data from the master device 3 the speed difference between the distribution speed and the transfer speed, once. If there is no difference in the writable capacity at which update data can be written by writing, the write speed of update data, the total write capacity of update data, and the execution unit of write processing, and they are the same, update data A1, update data B1, and update data. The amount of data in C1 is the same.
  • the transfer speed of the update data from the master device 3 the speed difference between the distribution speed and the transfer speed, the writable capacity in which the update data can be written by one write, the write speed of the update data, and the total write capacity of the update data. If there is a difference in the execution unit of the writing process and they are not equivalent, the data amounts of the update data A1, the update data B1, and the update data C1 may be different.
  • the amount of update data is relatively large, while the transfer of the update data from the master device 3 is performed.
  • the data amount of the update data may be relatively small for the write target ECU 4 in which the speed and the write speed of the update data are relatively slow.
  • the write target ECU 4 in which the writable capacity in which the update data can be written by one write, the total write capacity of the update data, and the execution unit of the write process are relatively large the data amount of the update data is relatively large.
  • the data amount of the update data is relatively small. You may.
  • the control unit 9 has a storable capacity of 16 kbytes in the memory 6 of the master device 3, for example, a write process of the write target ECU (A), the write target ECU (B), and the write target ECU (C).
  • the execution unit of is 1 kbyte and the write speed of the update data of the write target ECU (B) is about twice the write speed of the update data of the write target ECU (A) and the write target ECU (C).
  • the size of the package is determined to be 8 kbytes
  • the structure of the update data in the package is determined to be 2 kbytes for the update data A1, A2, ..., C1, C2, ..., And 4 kbytes for the update data B1, B2, ... And generate packages 1, 2, ...
  • the master device 3 downloads the package 1 (PKG1) from the data distribution device 2, and then downloads the package 2 (PKG2) from the data distribution device 2 in parallel with the package.
  • Update data A1, B1, C1 are extracted from 1, and the extracted update data A1, B1, C1 are used as a transfer unit of 1 kbyte, and the write target ECU (A), the write target ECU (B), and the write target ECU (C) are used, respectively. ).
  • the write speed of the update data of the write target ECU (B) is about twice the write speed of the update data of the write target ECU (A) and the write target ECU (C)
  • the master device 3 writes.
  • the transfer unit of 1 kbyte per unit time to the target ECU (B) can be made larger than the transfer unit of 1 kbyte per unit time to the write target ECU (A) and the write target ECU (C). That is, the master device 3 transfers 1 kbytes to the write target ECU (B) in a shorter cycle than the write target ECU (A) and the write target ECU (C).
  • the master device 3 receives a write completion notification from the write target ECU (A), the write target ECU (B), and the write target ECU (C), and writes the write target ECU (A), the write target ECU (B), and the write target ECU (B).
  • the transferred update data is deleted, the package distribution request is transmitted to the data distribution device 2, and the data distribution device 2 is requested to distribute the next package.
  • the master device 3 downloads the package 1 from the data distribution device 2 at “t1” to “t2”, and when the download of the package 1 is completed, the update data A1, B1, and C1 are downloaded from the downloaded package 1.
  • the data is extracted, the transfer of the extracted update data A1, B1, and C1 is started, and the data distribution device 2 is requested to distribute the package 2, which is the next package.
  • the master device 3 In parallel with downloading the package 2 from the data distribution device 2 in “t2" to “t3", the master device 3 writes the update data A1, B1, and C1 to the write target ECU (A) as a transfer unit of 1 kbyte. Transfer to the target ECU (B) and the write target ECU (C). When the master device 3 determines that all the update data A1, B1, C1 have been installed by "t3", the master device 3 deletes the update data A1, B1, C1 and distributes the next package, the package 3, to the data distribution device 2. To request.
  • the master device 3 downloads the package 3 from the data distribution device 2 in "t3" to "t4", and the update data A2, B2, and C2 are set as 1 kbyte transfer units in the write target ECU (A). ), The write target ECU (B), and the write target ECU (C).
  • the master device 3 determines that all the update data A2, B2, and C2 have been installed by "t4", the master device 3 deletes the update data A2, B2, and C2, and distributes the next package, the package 4, to the data distribution device 2. To request.
  • the configuration of the update data in the package may be determined in consideration of the communication load of the bus 5, the transmittable capacity, and the like. For example, the communication load of the bus to which the write target ECU (A) is connected is relatively small, or the transmittable capacity is relatively large, while the write target ECU (B) and the write target ECU (C) are connected. If the communication load of the bus is relatively large or the transmittable capacity is relatively small, the amount of update data A1, A2, A3 is relatively large, and the update data B1, B2, B3 And the amount of updated data C1, C2, C3 may be relatively small.
  • the data distribution device 2 acquires the recombination information for executing the transfer processing of the update data to the plurality of write target ECUs 4 in parallel and acquires the plurality of update data
  • the acquired plurality of update data is transferred.
  • Divided data is generated by dividing based on the recombination information, the generated divided data is packaged to generate a plurality of packages, and the generated plurality of packages are sequentially distributed to the master device 3.
  • the update data distributed from the data distribution device 2 is distributed.
  • the package was secured and the security-protected package was distributed to the master device 3. Security can be ensured in the distribution of the package from the data distribution device 2 to the master device 3.
  • the storable storable capacity is acquired by one download in the master device 3, and the size of the package is determined based on the acquired storable capacity.
  • the size of the package can be optimized based on the storable capacity that can be stored by one download in the master device 3.
  • the distribution speed information regarding the distribution speed of the package from the own device to the master device 3, the transfer speed information regarding the transfer speed of the update data from the master device 3 to the write target ECU 4, or the speed difference information is acquired.
  • the configuration of the update data in the package is determined based on the acquired delivery speed information, transfer speed information, and speed difference information.
  • the configuration of the update data in the package can be optimized based on the delivery speed information, the transfer speed information, and the speed difference information.
  • the writable capacity for writing the update data is acquired by one writing in the write target ECU 4, and the configuration of the update data in the package is determined based on the acquired writable capacity. ..
  • the configuration of the update data in the package can be optimized based on the writable capacity in which the update data can be written by one writing in the write target ECU 4.
  • the write speed of the update data in the write target ECU 4 is acquired, and the configuration of the update data in the package is determined based on the acquired write speed.
  • the configuration of the update data in the package can be optimized based on the write speed of the update data in the write target ECU 4.
  • the total write capacity of the update data in the write target ECU 4 is acquired, and the configuration of the update data in the package is determined based on the acquired total write capacity.
  • the configuration of the update data in the package can be optimized based on the total write capacity of the update data in the write target ECU 4.
  • the execution unit of the write process in the write target ECU 4 is acquired, and the configuration of the update data in the package is determined based on the acquired execution unit.
  • the configuration of the update data in the package can be optimized based on the execution unit of the write process in the write target ECU 4. For example, if the difference data between the old program and the new program is update data, there is a limit to the minimum data amount, but by determining the configuration of the update data in the package based on the minimum data amount, the package The structure of the update data can be optimized.
  • the download of the package from the data distribution device 2 and the transfer process of the update data to the write target ECU 4 are executed in parallel.
  • the time from the start of download to the completion of installation can be shortened. That is, in addition to executing the transfer processing of the update data from the master device 3 to the plurality of write target ECUs 4 in parallel, the package download from the data distribution device 2 and the update data transfer process to the write target ECU 4 are performed.
  • the time from the start of download to the completion of installation can be shortened.
  • by dividing the size of the package into smaller pieces it can be applied even when the storable capacity of the memory 6 of the master device 3 is not large. Further, it is possible to eliminate the need to mount a memory having a large storable capacity on the master device 3, and it is also possible to reduce costs and reduce the size of the device.
  • the update data transferred to all the write target ECUs 4 is deleted.
  • the storable capacity of the memory 6 can be secured by deleting the update data that is no longer needed.
  • the data distribution device 2 is requested to deliver the next package. After securing the storable capacity of the memory 6, the next package can be appropriately downloaded from the data distribution device 2.
  • the controls and methods thereof described in the present disclosure are realized by a dedicated computer provided by configuring a processor and memory programmed to perform one or more functions embodied by a computer program. You may.
  • the control unit and its method described in the present disclosure may be realized by a dedicated computer provided by configuring a processor with one or more dedicated hardware logic circuits.
  • the control unit and method thereof described in the present disclosure may be a combination of a processor and memory programmed to perform one or more functions and a processor composed of one or more hardware logic circuits. It may be realized by one or more dedicated computers configured.
  • the computer program may be stored in a computer-readable non-transitional tangible recording medium as an instruction executed by the computer.
  • the master device 3 may have a DCM (Data Communication Module) corresponding to the storage control unit 7 and a CGW (Central Gate Way) corresponding to the transfer control unit 8.
  • An external storage device may be provided separately from the master device 3, and the packages distributed from the data distribution device 2 to the master device 3 may be temporarily stored in the external storage device.

Abstract

データ配信装置(2)は、複数の書込み対象の電子制御装置に対応する複数の更新データを取得する更新データ取得部(9a)と、マスタ装置により複数の書込み対象の電子制御装置への更新データの転送処理が並行して実行されるための組換え情報を取得する組換え情報取得部(9b)と、複数の更新データを組換え情報に基づいて分割して分割データを生成し、その生成した複数の更新データの分割データをパッケージ化して複数のパッケージを生成するパッケージ生成部(9c)と、複数のパッケージをマスタ装置に配信させる配信制御部(9e)と、を備える。

Description

データ配信装置、データ配信システム及びデータ配信プログラム 関連出願の相互参照
 本出願は、2020年2月19日に出願された日本出願番号2020-026299号に基づくもので、ここにその記載内容を援用する。
 本開示は、データ配信装置、データ配信システム及びデータ配信プログラムに関する。
 従来より、例えばリプロプログラム等の更新データを配信するデータ配信装置と、データ配信装置からダウンロードした更新データを転送するマスタ装置と、マスタ装置から転送された更新データをメモリに書込む電子制御装置(以下、ECU(Electronic Control Unit)と称する)とを備えるデータ配信システムが供されている。例えば特許文献1には、書込み対象ECUが複数である場合に、マスタ装置から複数の書込み対象ECUへの更新データの転送処理を並行して実行することで、マスタ装置から複数の書込み対象ECUへの更新データの転送効率を高める技術が開示されている。
特開2018-92577号公報
 マスタ装置は、データ配信装置からダウンロードした更新データをメモリに一旦記憶し、その一旦記憶した更新データをメモリから順次読出して書込み対象ECUに転送する構成である。しかしながら、マスタ装置のメモリが、書込み対象ECU複数分の更新データの全てをダウンロードするだけの記憶容量でない場合もあり得る。その場合、マスタ装置から複数の書込み対象ECUへの更新データの転送処理を並行して実行する仕組みを適切に活用することができない可能性がある。
 本開示は、データ配信装置から配信される更新データをマスタ装置がダウンロードする状況下において、マスタ装置から複数の書込み対象の電子制御装置への更新データの転送処理を並行して実行する仕組みを適切に活用することを目的とする。
 本開示の一態様によれば、更新データ取得部は、複数の書込み対象の電子制御装置に対応する複数の更新データを取得する。組換え情報取得部は、マスタ装置により複数の書込み対象の電子制御装置への更新データの転送処理が並行して実行されるための組換え情報を取得する。パッケージ生成部は、複数の更新データが更新データ取得部により取得されると、その取得された複数の更新データを、組換え情報取得部により取得された組換え情報に基づいて分割して分割データを生成し、その生成した複数の更新データの分割データをパッケージ化して複数のパッケージを生成する。配信制御部は、複数のパッケージがパッケージ生成部により生成されると、その生成された複数のパッケージをマスタ装置に配信させる。
 マスタ装置により複数の書込み対象の電子制御装置への更新データの転送処理が並行して実行されるための組換え情報を取得し、複数の更新データを取得すると、その取得した複数の更新データを組換え情報に基づいて分割して分割データを生成し、その生成した複数の更新データの分割データをパッケージ化して複数のパッケージを生成し、その生成した複数のパッケージをマスタ装置に配信するようにした。マスタ装置により複数の書込み対象の電子制御装置への更新データの転送処理が並行して実行されるように複数のパッケージをマスタ装置に配信することで、データ配信装置から配信される更新データをマスタ装置がダウンロードする状況下において、マスタ装置から複数の書込み対象の電子制御装置への更新データの転送処理を並行して実行する仕組みを適切に活用することができる。
 本開示についての上記目的及びその他の目的、特徴や利点は、添付の図面を参照しながら下記の詳細な記述により、より明確になる。その図面は、
図1は、一実施形態のシステム全体の構成を示す図であり、 図2は、データ配信装置が行う処理を示すフローチャートであり、 図3は、マスタ装置が行う処理を示すフローチャートであり、 図4は、データ配信装置がパッケージを生成する態様を示す図であり、 図5は、マスタ装置が更新データの転送処理を並行して実行する態様を示す図であり、 図6は、データ配信装置がパッケージを配信する態様及びマスタ装置が更新データを転送する態様を示す図であり、 図7は、比較対象を示す図であり、 図8は、パッケージ内の更新データの構成を示す図であり、 図9は、タイミングチャートである。
 以下、一実施形態について図面を参照して説明する。データ配信システム1は、データ配信装置2と、車両に搭載されているマスタ装置3及び電子制御装置(以下、ECU(Electronic Control Unit)と称する)4とを備える車両用電子制御システムであり、ECU4に実装されている車両制御や診断等のアプリプログラムを書換え可能なシステムである。本実施形態では、ECU4が更新データとして例えば新しいバージョンのプログラム等のリプロプログラムをメモリに書込んでアプリプログラムを書換える場合を例示するが、例えばECU4が使用する制御パラメータ、地図アプリで使用される地図データ等のアプリで使用されるアプリデータを書換える場合にも適用することができる。即ち、更新データは、リプロプログラム、制御パラメータ、アプリデータ等である。更新データの書込み対象となる書込み対象ECU4は、例えばボディ系の制御を行う各ECU4、走行系の制御を行う各ECU4、マルチメディア系の制御を行う各ECU4等である。
 データ配信装置2は、センター装置、例えば製造工場や整備工場等の工場内に設置されている工場内装置、作業者が携帯可能なダイアグツール等であり、更新データが登録されると、その登録された更新データをパッケージ化してパッケージし、その生成したパッケージをマスタ装置3に配信する。データ配信装置2が生成するパッケージは、例えば圧縮ファイル等のファイルを含んで構成される。データ配信装置2は、センター装置であれば、例えば3G回線や4G回線等による広域通信回線を介してマスタ装置3と無線接続し、パッケージをマスタ装置3に配信する。データ配信装置2は、工場内装置、ダイアグツールであれば、例えばWiFi(登録商標)やBluetooth(登録商標)等の近距離通信回線を介してマスタ装置3と無線接続したりケーブルを介してマスタ装置3と有線接続したりし、パッケージをマスタ装置3に配信する。即ち、データ配信システム1は、ECU4に実装されているアプリプログラムを無線又は有線の何れでも書換え可能なシステムである。
 マスタ装置3と複数のECU4とはバス5を介して接続されている。バス5は、例えばCAN(Controller Area Network)(登録商標)、LIN(Local Interconnect Network)(登録商標)、CXPI(Clock Extension Peripheral Interface)(登録商標)、FlexRay(登録商標)、MOST(Media Oriented Systems Transport)(登録商標)等である。これらのバスは、通信プロトコルが互いに異なり、通信速度や信号フォーマットが互いに異なる。
 マスタ装置3は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)及びI/O(Input/Output)を有するマイクロコンピュータにより構成されている。マイクロコンピュータは、非遷移的実体的記憶媒体に格納されているコンピュータプログラムを実行することで、コンピュータプログラムに対応する処理を実行し、マスタ装置3の動作全般を制御する。マスタ装置3は、所定記憶容量のメモリ6と、記憶制御部7と、転送制御部8とを備える。記憶制御部7は、データ配信装置2からパッケージをダウンロードし、そのダウンロードしたパッケージをメモリ6に一時的に記憶させる。転送制御部8は、メモリ6に記憶されているパッケージを読出し、その読出したパッケージをアンパッケージ化して更新データを抽出し、その抽出した更新データを書込み対象ECU4に転送する。
 マスタ装置3は、書込み対象ECU4に対するインストール可能条件が成立すると、インストールを書込み対象ECU4に指示し、更新データのインストールを書込み対象ECU4に実施させる。インストール可能条件は、例えばユーザがインストールの承諾操作を行ったこと、車両状態がインストール可能な状態であること、書込み対象ECU4がインストール可能な状態であること、更新データが正常なデータであること等である。
 具体的には、マスタ装置3は、例えば車載バッテリのバッテリ残量が所定容量以上であると判定したり不正な環境下でないと判定したりすることで、車両状態がインストール可能な状態であると判定する。マスタ装置3は、例えば書込み対象ECU4のメモリ構造が正常であると判定したりバス5の通信負荷が所定レベル未満であると判定したりすることで、書込み対象ECU4がインストール可能な状態であると判定する。マスタ装置3は、例えば更新データが改竄や破壊されていないデータであると判定することで、更新データが正常なデータであると判定する。
 又、マスタ装置3は、書込み対象ECU4において更新データのインストールが完了すると、そのインストールした更新データを有効とするアクティベートを書込み対象ECU4に指示し、更新データのアクティベートを書込み対象ECU4に実施させる。アクティベート可能条件は、例えばユーザがアクティベートの承諾操作を行ったこと、車両状態がアクティベート可能な状態であること、書込み対象ECU4がアクティベート可能な状態であること等である。
 具体的には、マスタ装置3は、例えば車両が駐車状態であると判定したり車載バッテリの残量が所定容量以上であると判定したりすることで、車両状態がアクティベート可能な状態であると判定する。マスタ装置3は、例えば書込み対象ECU4のメモリに書込まれた更新データが正常であると判定することで、書込み対象ECU4がアクティベート可能な状態であると判定する。
 マスタ装置3は、複数の処理要求を同時に受付けたと判定すると、その受付けた処理要求の優先度、バス5の状態、書込み対象ECU4の状態等に基づいて複数の処理要求を調停し、その同時に受付けた複数の処理要求に対応する処理を並行して実行する機能を有する。マスタ装置3は、例えば更新データを書込み対象ECU(A)に転送する処理要求と、更新データを書込み対象ECU(B)に転送する処理要求とを同時に受付けたときには、書込み対象ECU(A)への更新データAの転送処理と、書込み対象ECU(B)への更新データBの転送処理とを並行して実行する。尚、マスタ装置3は、複数の同時処理が必要であると判定した際にも、複数の処理要求を同時に受付けたと判定した際と同様に、その同時処理が必要であると判定した処理を並行して実行する機能を有する。
 マスタ装置3は、例えば車両のイグニッションがオフからオンに切換ったタイミングで、データ配信装置2との間でデータ通信可能な状態であれば、構成情報をデータ配信装置2に送信する。マスタ装置3からデータ配信装置2に送信される構成情報は、車両側の情報であり、マスタ装置3から書込み対象ECU4へのデータ転送速度、マスタ装置3のメモリ6の記憶可能容量、書込み対象ECU4のハードウェアに関するハードウェア情報、書込み対象ECU4に格納されているソフトウェアに関するソフトウェア情報等を含む。尚、マスタ装置3は、例えば車両のイグニッションがオフからオンに切換ったタイミングに加え、データ配信装置2から構成情報の送信要求を受信したタイミングでも構成情報をデータ配信装置2に送信しても良い。即ち、データ配信装置2は、マスタ装置3から任意のタイミングで構成情報を取得する。
 データ配信装置2は、制御部9と、データ配信部10とを有する。制御部9は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)及びI/O(Input/Output)を有するマイクロコンピュータにより構成されている。マイクロコンピュータは、非遷移的実体的記憶媒体に格納されているコンピュータプログラムを実行することで、コンピュータプログラムに対応する処理を実行し、データ配信装置2の動作全般を制御する。マイクロコンピュータが実行するコンピュータプログラムにはデータ配信プログラムが含まれる。制御部9は、更新データ取得部9aと、組換え情報取得部9bと、パッケージ生成部9cと、セキュリティ保護部9dと、配信制御部9eとを備える。
 更新データ取得部9aは、作業者により書込み対象ECU4が指定され、その書込み対象ECU4に対する更新データが登録されることで更新データを取得する。組換え情報取得部9bは、マスタ装置3から送信された構成情報が受信されることで組換え情報を取得する。組換え情報はマスタ装置3が複数の書込み対象ECU4への更新データの転送処理を並行して実行するための情報であり、組換え情報取得部9bは、組換え情報として以下に示す幾つかの情報を取得する。組換え情報取得部9bは、組換え情報として、マスタ装置3における1回のダウンロードにより記憶可能な記憶可能容量を取得する。組換え情報取得部9bは、組換え情報として、データ配信装置2からマスタ装置3へのパッケージの配信速度に関する配信速度情報、マスタ装置3から書込み対象ECU4への更新データの転送速度に関する転送速度情報、配信速度と転送速度との速度差に関する速度差情報を取得する。組換え情報取得部9bは、組換え情報として、書込み対象ECU4における1回の書込みにより更新データを書込み可能な書込み可能容量、更新データの書込み速度、更新データの書込み総容量、書込み処理の実行単位を取得する。尚、組換え情報取得部9bは、これらの組換え情報として車種毎に予め定められた情報を用いても良い。
 パッケージ生成部9cは、複数の更新データが更新データ取得部9aにより取得されると、その取得された複数の更新データを、組換え情報取得部9bにより取得された組換え情報に基づいて分割して分割データを生成し、その生成した分割データをパッケージ化して複数のパッケージを生成する。この場合、パッケージ生成部9cは、パッケージのサイズを決定し、パッケージ内の更新データの構成を決定し、その決定したパッケージのサイズ及びパッケージ内の更新データの構成にしたがってパッケージを生成する。
 パッケージ生成部9cは、パッケージ生成部9cは、マスタ装置3における1回のダウンロードにより記憶可能な記憶可能容量が組換え情報取得部9bにより取得されると、その取得された記憶可能容量を判定してパッケージのサイズを決定する。パッケージ生成部9cは、マスタ装置3のメモリ6の記憶可能容量が有限であるので、マスタ装置3のメモリ6の記憶可能容量以下となるようにパッケージのサイズを決定する。
 又、パッケージ生成部9cは、データ配信装置2からマスタ装置3へのパッケージの配信速度に関する配信速度情報、マスタ装置3から書込み対象ECU4への更新データの転送速度に関する転送速度情報、配信速度と転送速度との速度差に関する速度差情報、書込み対象ECU4における1回の書込みにより更新データを書込み可能な書込み可能容量、更新データの書込み速度、更新データの書込み総容量、書込み処理の実行単位が組換え情報取得部9bにより取得されると、その取得された配信速度情報、転送速度情報、速度差情報、書込み可能容量、書込み速度、書込み総容量、実行単位を総合的に判定してパッケージ内の更新データの構成を決定する。更新データの構成は、書込み対象ECU4に対応する更新データの配分である。配信速度と転送速度との速度差は、データ配信装置2及びマスタ装置3の何れで算出しても良い。
 一般的に、データ配信装置2からマスタ装置3へのパッケージの配信速度の方が、マスタ装置3から書込み対象ECU4への更新データの転送速度よりも速いので、パッケージ生成部9cは、複数の書込み対象ECU4に対応する更新データを混在させてパッケージ化してパッケージを生成することで、マスタ装置3において更新データが転送待ちとなる待機時間を低減するようにパッケージ内の更新データの構成を決定する。
 パッケージ生成部9cは、書込み可能容量が相対的に大きい書込み対象ECU4については更新データのデータ量が相対的に大きく、一方、書込み可能容量が相対的に小さい書込み対象ECU4については更新データのデータ量が相対的に小さくなるようにパッケージ内の更新データの構成を決定する。パッケージ生成部9cは、書込み速度が相対的に速い書込み対象ECU4については更新データのデータ量が相対的に大きく、一方、書込み速度が相対的に遅い書込み対象ECU4については更新データのデータ量が相対的に小さくなるようにパッケージ内の更新データの構成を決定する。パッケージ生成部9cは、書込み総容量が相対的に大きい書込み対象ECU4については更新データのデータ量が相対的に大きく、一方、書込み総容量が相対的に小さい書込み対象ECU4については更新データのデータ量が相対的に小さくなるようにパッケージ内の更新データの構成を決定する。又、パッケージ生成部9cは、1回に転送するデータ量が書込み処理の実行単位と整合するようにパッケージ内の更新データの構成を決定する。
 パッケージ生成部9cは、このようにしてパッケージのサイズ及びパッケージ内の更新データの構成を決定すると、その決定したパッケージのサイズ及びパッケージ内の更新データの構成にしたがってパッケージを生成する。セキュリティ保護部9dは、パッケージがパッケージ生成部9cにより生成されると、その生成されたパッケージを例えば暗号化する等してセキュリティ保護する。配信制御部9eは、パッケージがセキュリティ保護部9dによりセキュリティ保護されると、そのセキュリティ保護されたパッケージをデータ配信部10からマスタ装置3に順次配信させる。
 次に、上記した構成の作用について図2から図9を参照して説明する。
 データ配信装置2において、制御部9は、更新データが登録されることで更新データを取得し(S1、更新データ取得手順に相当する)、マスタ装置3から送信された構成情報が受信されることで組換え情報を取得する(S2、組換え情報取得手順に相当する)。制御部9は、更新データを、組換え情報に基づいて分割して分割データを生成し、その生成した分割データをパッケージ化して複数のパッケージを生成する(S3、パッケージ生成手順に相当する)。即ち、制御部9は、パッケージのサイズ及びパッケージ内の更新データの構成を決定し、その決定したパッケージのサイズ及びパッケージ内の更新データの構成にしたがってパッケージを生成する。制御部9は、パッケージを生成すると、その生成したパッケージを例えば暗号化する等してセキュリティ保護する(S4)。制御部9は、そのセキュリティ保護したパッケージをデータ配信部10からマスタ装置3に配信させる(S5、配信制御手順に相当する)。
 マスタ装置3は、データ配信装置2からパッケージをダウンロードすると(T1)、そのダウンロードしたパッケージを例えば復号化する等してセキュリティ検証する(T2)。マスタ装置3は、そのセキュリティ検証したパッケージをアンパッケージ化して更新データを抽出する(T3)。マスタ装置3は、更新データを抽出すると、書込み対象ECU4への更新データの転送処理を並行して実行する(T4)。
 具体的に、図4から図7を参照して説明する。制御部9は、図4に示すように、例えば書込み対象ECU(A)に対応するデータ量がNaバイトの更新データA、書込み対象ECU(B)に対応するデータ量がNbバイトの更新データB、書込み対象ECU(C)に対応するデータ量がNcバイトの更新データCを取得すると、組換え情報に基づいてパッケージのサイズ及びパッケージ内の更新データの構成を決定する。制御部9は、例えば更新データAを、Na1バイトの更新データA1、Na2バイトの更新データA2、Na3バイトの更新データA3に分割する。同様に、制御部9は、更新データBを、Nb1バイトの更新データB1、Nb2バイトの更新データB2、Nb3バイトの更新データB3に分割する。制御部9は、更新データCを、Nc1バイトの更新データC1、Nc2バイトの更新データC2、Nc3バイトの更新データC3に分割する。書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)は、第1書込み対象の電子制御装置である第1対象装置や第2書込み対象の電子制御装置である第2対象装置に相当する。これらの組換え情報に基づいて分割された更新データA1,A2,A3、更新データB1,B2,B3、更新データC1,C2,C3は、分割データであり、第1分割データや第2分割データに相当する。
 制御部9は、アプリプログラムの書換えに関する情報が規定されている諸元データを含むヘッダ情報をパッケージ化してパッケージを生成し、その生成したパッケージをセキュリティ保護し、データ配信部10からマスタ装置3に配信させる。次いで、制御部9は、更新データA1、更新データB1、更新データC1を一つのファイルにパッケージ化してパッケージを生成し、その生成したパッケージをセキュリティ保護し、データ配信部10からマスタ装置3に配信させる。これ以降、制御部9は、更新データA2、更新データB2、更新データC2についても同様の処理を行い、更新データA3、更新データB3、更新データC3についても同様の処理を行う。尚、制御部9は、マスタ装置3からパッケージの配信要求を受信することを契機として、パッケージをデータ配信部10からマスタ装置3に配信させる。制御部9は、このようにして更新データA1、更新データB1、更新データC1を含むパッケージ、更新データA2、更新データB2、更新データC2を含むパッケージ、更新データA3、更新データB3、更新データC3を含むパッケージをデータ配信部10からマスタ装置3に順次配信させる。
 マスタ装置3は、図5に示すように、更新データA1、更新データB1、更新データC1が一つのファイルとしてパッケージ化されたパッケージをデータ配信装置2からダウンロードすると、そのダウンロードしたパッケージをアンパッケージ化して更新データA1、更新データB1、更新データCを抽出し、書込み対象ECU(A)への更新データA1の転送処理と、書込み対象ECU(B)への更新データB1の転送処理と、書込み対象ECU(C)への更新データC1の転送処理とを並行して実行する。即ち、マスタ装置3は、更新データA1を書込み対象ECU(A)に転送した後に、書込み対象ECU(A)から書込み完了通知を受信する前に、更新データB1を書込み対象ECU(B)に転送し、更新データC1を書込み対象ECU(C)に転送する。
 書込み対象ECU(A)は、マスタ装置3から更新データA1が転送されると、その転送された更新データA1をメモリに書込む書込み処理を開始し、書込み処理を完了すると、書込み完了通知をマスタ装置3に送信する。書込み対象ECU(B)は、マスタ装置3から更新データB1が転送されると、その転送された更新データB1をメモリに書込む書込み処理を開始し、書込み処理を完了すると、書込み完了通知をマスタ装置3に送信する。書込み対象ECU(C)は、マスタ装置3から更新データC1が転送されると、その転送された更新データC1をメモリに書込む書込み処理を開始し、書込み処理を完了すると、書込み完了通知をマスタ装置3に送信する。
 即ち、図6に示すように、データ配信装置2が更新データA1、更新データB1、更新データC1をパッケージ化したパッケージをマスタ装置3に配信することで、マスタ装置3において、書込み対象ECU(A)への更新データA1の転送処理と、書込み対象ECU(B)への更新データB1の転送処理と、書込み対象ECU(C)への更新データC1の転送処理とを並行して実行することが可能となる。よって、書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)において、それぞれ更新データA1、更新データB1、更新データC1の書込み処理を並行して実行することが可能となる。
 これ以降、同様にして、データ配信装置2が更新データA2、更新データB2、更新データC2をパッケージ化したパッケージをマスタ装置3に配信することで、書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)は、それぞれ更新データA2、更新データB2、更新データC2の書込み処理を並行して実行することが可能となる。データ配信装置2が更新データA3、更新データB3、更新データC3をパッケージ化したパッケージをマスタ装置3に配信することで、書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)は、それぞれ更新データA3、更新データB3、更新データC3の書込み処理を並行して実行することが可能となる。このようにして書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)に対する更新データの書込み処理を並行して実行することが可能となる。
 組換え情報を採用しない構成では、図7に示すように、例えば更新データが登録された順序にしたがってパッケージ化してパッケージを生成することになる。即ち、更新データA全体を一つのパッケージとし、更新データB全体を一つのパッケージとし、更新データC全体を一つのパッケージとして生成する。そのため、全てのパッケージのダウンロードを完了するまでは、書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)に対する更新データの書込み処理を並行して実行することが不可である。例えば更新データAが最初に登録されると、書込み対象ECU(A)への更新データの転送処理を開始するが、その書込み対象ECU(A)への更新データの転送処理を実行中に、書込み対象ECU(B)への更新データの転送処理や書込み対象ECU(C)への更新データの転送処理を実行しない。
 これに対し、本実施形態のように組換え情報を採用する構成では、前述したように、書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)へのそれぞれの更新データの転送処理を並行して実行する。そのため、更新データの書込みを開始してから全ての更新データの書込みを完了するまでに要する時間を、組換え情報を採用しない構成よりも短くすることができる。
 上記した構成において、書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)において、マスタ装置3からの更新データの転送速度、配信速度と転送速度との速度差、1回の書込みにより更新データを書込み可能な書込み可能容量、更新データの書込み速度、更新データの書込み総容量、書込み処理の実行単位に差異がなく同等であれば、更新データA1、更新データB1、更新データC1のデータ量は同等である。一方、マスタ装置3からの更新データの転送速度、配信速度と転送速度との速度差、1回の書込みにより更新データを書込み可能な書込み可能容量、更新データの書込み速度、更新データの書込み総容量、書込み処理の実行単位に差異があり同等でなければ、更新データA1、更新データB1、更新データC1のデータ量に差異を持たせても良い。
 即ち、マスタ装置3からの更新データの転送速度、更新データの書込み速度が相対的に速い書込み対象ECU4については更新データのデータ量を相対的に大きくする一方、マスタ装置3からの更新データの転送速度、更新データの書込み速度が相対的に遅い書込み対象ECU4については更新データのデータ量を相対的に小さくしても良い。又、1回の書込みにより更新データを書込み可能な書込み可能容量、更新データの書込み総容量、書込み処理の実行単位が相対的に大きい書込み対象ECU4については更新データのデータ量を相対的に大きくする一方、1回の書込みにより更新データを書込み可能な書込み可能容量、更新データの書込み総容量、書込み処理の実行単位が相対的に小さい書込み対象ECU4については更新データのデータ量を相対的に小さくしても良い。
 具体的に、図8から図9を参照して説明する。制御部9は、図8に示すように、例えばマスタ装置3のメモリ6の記憶可能容量が16kバイト、書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)の書込み処理の実行単位が1kバイト、書込み対象ECU(B)の更新データの書込み速度が、書込み対象ECU(A)、書込み対象ECU(C)の更新データの書込み速度の2倍程度である場合には、パッケージのサイズを8kバイトに決定し、パッケージ内の更新データの構成を更新データA1,A2,…、C1,C2,…については2kバイトに決定し、更新データB1,B2,…については4kバイトに決定し、パッケージ1,2,…を生成する。
 この場合、マスタ装置3は、図9に示すように、データ配信装置2からパッケージ1(PKG1)をダウンロードした後では、データ配信装置2からパッケージ2(PKG2)をダウンロードすることと並行し、パッケージ1から更新データA1,B1,C1を抽出し、その抽出した更新データA1,B1,C1を1kバイトの転送単位としてそれぞれ書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)に転送する。この場合、書込み対象ECU(B)の更新データの書込み速度が、書込み対象ECU(A)、書込み対象ECU(C)の更新データの書込み速度の2倍程度であるので、マスタ装置3は、書込み対象ECU(B)に対する単位時間あたりの1kバイトの転送単位を、書込み対象ECU(A)、書込み対象ECU(C)に対する単位時間あたりの1kバイトの転送単位よりも多くすることが可能となる。即ち、マスタ装置3は、書込み対象ECU(B)に対し、書込み対象ECU(A)、書込み対象ECU(C)よりも短い周期で1kバイトの転送を行う。
 又、マスタ装置3は、書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)から書込み完了通知を受信し、書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)における更新データのインストール完了を判定すると、その転送した更新データを削除し、パッケージの配信要求をデータ配信装置2に送信し、次のパッケージの配信をデータ配信装置2に要求する。図9では、マスタ装置3は、「t1」~「t2」でパッケージ1をデータ配信装置2からダウンロードし、パッケージ1のダウンロードを完了すると、そのダウンロードしたパッケージ1から更新データA1,B1,C1を抽出し、その抽出した更新データA1,B1,C1の転送を開始すると共に、次のパッケージであるパッケージ2の配信をデータ配信装置2に要求する。
 マスタ装置3は、「t2」~「t3」でパッケージ2をデータ配信装置2からダウンロードすることと並行し、更新データA1,B1,C1を1kバイトの転送単位として書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)に転送する。マスタ装置3は、「t3」で更新データA1,B1,C1の全てのインストール完了を判定すると、更新データA1,B1,C1を削除し、次のパッケージであるパッケージ3の配信をデータ配信装置2に要求する。
 同様に、マスタ装置3は、「t3」~「t4」でパッケージ3をデータ配信装置2からダウンロードすることと並行し、更新データA2,B2,C2を1kバイトの転送単位として書込み対象ECU(A)、書込み対象ECU(B)、書込み対象ECU(C)に転送する。マスタ装置3は、「t4」で更新データA2,B2,C2の全てのインストール完了を判定すると、更新データA2,B2,C2を削除し、次のパッケージであるパッケージ4の配信をデータ配信装置2に要求する。
 尚、以上は、書込み対象ECU4が3個の構成を例示したが、書込み対象ECU4が2個や4個以上の構成であっても同様である。又、以上は、書込み対象ECU4が同一のバス5に接続されている構成を例示したが、書込み対象ECU4が異なるバスに接続されている構成であっても同様である。その場合、バス5の通信負荷や伝送可能容量等を考慮してパッケージ内の更新データの構成を決定しても良い。例えば書込み対象ECU(A)が接続されているバスの通信負荷が相対的に小さかったり、伝送可能容量が相対的に大きかったりする一方、書込み対象ECU(B)及び書込み対象ECU(C)が接続されているバスの通信負荷が相対的に大きかったり、伝送可能容量が相対的に小さかったりすれば、更新データA1,A2,A3のデータ量を相対的に大きくし、更新データB1,B2,B3や更新データC1,C2,C3のデータ量を相対的に小さくしても良い。
 以上に説明したように本実施形態によれば、次に示す作用効果を得ることができる。
 データ配信装置2において、複数の書込み対象ECU4への更新データの転送処理が並行して実行されるための組換え情報を取得し、複数の更新データを取得すると、その取得した複数の更新データを組換え情報に基づいて分割して分割データを生成し、その生成した分割データをパッケージ化して複数のパッケージを生成し、その生成した複数のパッケージをマスタ装置3に順次配信するようにした。マスタ装置3により複数の書込み対象ECU4への更新データの転送処理が並行して実行されるように複数のパッケージをマスタ装置3に順次配信することで、データ配信装置2から配信される更新データをマスタ装置3がダウンロードする状況下において、マスタ装置3から複数の書込み対象CU4への更新データの転送処理を並行して実行する仕組みを適切に活用することができる。このようにマスタ装置3から複数の書込み対象ECU4への更新データの転送処理を並行して実行する仕組みを適切に活用することで、システム全体としての更新データの配信効率を適切に高めることができる。
 データ配信装置2において、パッケージをセキュリティ保護し、そのセキュリティ保護したパッケージをマスタ装置3に配信するようにした。データ配信装置2からマスタ装置3へのパッケージの配信においてセキュリティ性を確保することができる。
 データ配信装置2において、マスタ装置3における1回のダウンロードにより記憶可能な記憶可能容量を取得し、その取得した記憶可能容量に基づいてパッケージのサイズを決定するようにした。マスタ装置3における1回のダウンロードにより記憶可能な記憶可能容量に基づいてパッケージのサイズを適正化することができる。
 データ配信装置2において、自装置からマスタ装置3へのパッケージの配信速度に関する配信速度情報、マスタ装置3から書込み対象ECU4への更新データの転送速度に関する転送速度情報、又は速度差情報を取得し、その取得した配信速度情報、転送速度情報、速度差情報に基づいてパッケージ内の更新データの構成を決定するようにした。配信速度情報、転送速度情報、速度差情報に基づいてパッケージ内の更新データの構成を適正化することができる。
 データ配信装置2において、書込み対象ECU4における1回の書込みにより更新データを書込み可能な書込み可能容量を取得し、その取得した書込み可能容量に基づいてパッケージ内の更新データの構成を決定するようにした。書込み対象ECU4における1回の書込みにより更新データを書込み可能な書込み可能容量に基づいてパッケージ内の更新データの構成を適正化することができる。
 データ配信装置2において、書込み対象ECU4における更新データの書込み速度を取得し、その取得した書込み速度に基づいてパッケージ内の更新データの構成を決定するようにした。書込み対象ECU4における更新データの書込み速度に基づいてパッケージ内の更新データの構成を適正化することができる。
 データ配信装置2において、書込み対象ECU4における更新データの書込み総容量を取得し、その取得した書込み総容量に基づいてパッケージ内の更新データの構成を決定するようにした。書込み対象ECU4における更新データの書込み総容量に基づいてパッケージ内の更新データの構成を適正化することができる。
 データ配信装置2において、書込み対象ECU4における書込み処理の実行単位を取得し、その取得した実行単位に基づいてパッケージ内の更新データの構成を決定するようにした。書込み対象ECU4における書込み処理の実行単位に基づいてパッケージ内の更新データの構成を適正化することができる。例えば旧プログラムと新プログラムとの差分データが更新データである場合には最低データ量に制約があるが、その最低データ量に基づいてパッケージ内の更新データの構成を決定することで、パッケージ内の更新データの構成を適正化することができる。
 マスタ装置3において、データ配信装置2からのパッケージのダウンロードと、書込み対象ECU4への更新データの転送処理とを並行して実行するようにした。ダウンロード開始からインストール完了までの時間を短くすることができる。即ち、上記したマスタ装置3から複数の書込み対象ECU4への更新データの転送処理を並行して実行することに加え、データ配信装置2からのパッケージのダウンロードと書込み対象ECU4への更新データの転送処理とを並行して実行することで、ダウンロード開始からインストール完了までの時間を短くすることができる。又、パッケージのサイズを小さく分割することで、マスタ装置3のメモリ6の記憶可能容量が大きくない場合でも適用することができる。又、記憶可能容量が大きいメモリをマスタ装置3に実装する必要をなくすことができ、コスト削減や装置の小型化等を図ることもできる。
 マスタ装置3において、全ての書込み対象ECU4における更新データの書込み完了を判定した後に、その全ての書込み対象ECU4に転送した更新データを削除するようにした。不要となった更新データを削除することで、メモリ6の記憶可能容量を確保することができる。
 マスタ装置3において、全ての書込み対象ECU4に転送した更新データを削除した後に、次のパッケージの配信をデータ配信装置2に要求するようにした。メモリ6の記憶可能容量を確保した上で、次のパッケージをデータ配信装置2から適切にダウンロードすることができる。
 本開示は、実施例に準拠して記述されたが、当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、更には、それらに一要素のみ、それ以上、或いはそれ以下を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に入るものである。
 本開示に記載の制御部及びその手法は、コンピュータプログラムにより具体化された一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリを構成することにより提供された専用コンピュータにより実現されても良い。或いは、本開示に記載の制御部及びその手法は、一つ以上の専用ハードウェア論理回路によりプロセッサを構成することにより提供された専用コンピュータにより実現されても良い。若しくは、本開示に記載の制御部及びその手法は、一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリと一つ以上のハードウェア論理回路により構成されたプロセッサとの組み合わせにより構成された一つ以上の専用コンピュータにより実現されても良い。又、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されていても良い。
 マスタ装置3において、記憶制御部7に相当するDCM(Data Communication Module)と、転送制御部8に相当するCGW(Central Gate Way)とを有する構成でも良い。
 マスタ装置3とは別に外部記憶装置が設けられ、データ配信装置2からマスタ装置3に配信されたパッケージが一時的に外部記憶装置に記憶される構成であっても良い。

Claims (15)

  1.  パッケージから抽出した更新データを書込み対象の電子制御装置に転送するマスタ装置(3)と、前記マスタ装置から転送された更新データをメモリに書込む電子制御装置(4)と、を備えるデータ配信システム(1)で用いられるデータ配信装置(2)において、
     複数の書込み対象の電子制御装置に対応する複数の更新データを取得する更新データ取得部(9a)と、
     前記マスタ装置により複数の書込み対象の電子制御装置への更新データの転送処理が並行して実行されるための組換え情報を取得する組換え情報取得部(9b)と、
     前記更新データ取得部により取得された複数の更新データを、前記組換え情報取得部により取得された組換え情報に基づいて分割して分割データを生成し、その生成した複数の更新データの分割データをパッケージ化して複数のパッケージを生成するパッケージ生成部(9c)と、
     前記パッケージ生成部により生成された複数のパッケージを前記マスタ装置に配信させる配信制御部(9e)と、を備えるデータ配信装置。
  2.  前記更新データ取得部は、複数の更新データとして、第1書込み対象の電子制御装置である第1対象装置に対応する第1更新データと、第2書込み対象の電子制御装置である第2対象装置に対応する第2更新データとを取得し、
     前記組換え情報取得部は、前記マスタ装置により前記第1対象装置への前記第1更新データの転送処理と、前記第2対象装置への前記第2更新データの転送処理とが並行して実行されるための組換え情報を取得し、
     前記パッケージ生成部は、前記更新データ取得部により取得された前記第1更新データ及び前記第2更新データを、それぞれ前記組換え情報取得部により取得された組換え情報に基づいて分割し、前記第1更新データを分割した第1分割データと前記第2更新データを分割した第2分割データとをパッケージ化して一つのパッケージとし、複数のパッケージを生成する請求項1に記載したデータ配信装置。
  3.  前記パッケージ生成部により生成されたパッケージをセキュリティ保護するセキュリティ保護部(9d)を備え、
     前記配信制御部は、前記セキュリティ保護部によりセキュリティ保護されたパッケージを前記マスタ装置に配信させる請求項1又は2に記載したデータ配信装置。
  4.  前記組換え情報取得部は、前記組換え情報として、前記マスタ装置における1回のダウンロードにより記憶可能な記憶可能容量を取得し、
     前記パッケージ生成部は、前記組換え情報取得部により取得された前記記憶可能容量に基づいてパッケージのサイズを決定し、その決定したパッケージのサイズに基づいてパッケージを生成する請求項1から3の何れか一項に記載したデータ配信装置。
  5.  前記組換え情報取得部は、前記組換え情報として、自装置から前記マスタ装置へのパッケージの配信速度に関する配信速度情報、前記マスタ装置から前記書込み対象の電子制御装置への更新データの転送速度に関する転送速度情報、又は前記配信速度と前記転送速度との速度差に関する速度差情報を取得し、
     前記パッケージ生成部は、前記組換え情報取得部により取得された前記配信速度情報、前記転送速度情報、又は前記速度差情報により算出される速度差に基づいてパッケージ内の更新データの構成を決定し、その決定したパッケージ内の更新データの構成に基づいてパッケージを生成する請求項1から4の何れか一項に記載したデータ配信装置。
  6.  前記組換え情報取得部は、前記組換え情報として、前記書込み対象の電子制御装置における1回の書込みにより更新データを書込み可能な書込み可能容量を取得し、
     前記パッケージ生成部は、前記組換え情報取得部により取得された前記書込み可能容量に基づいてパッケージ内の更新データの構成を決定し、その決定したパッケージ内の更新データの構成に基づいてパッケージを生成する請求項1から5の何れか一項に記載したデータ配信装置。
  7.  前記組換え情報取得部は、前記組換え情報として、前記書込み対象の電子制御装置における更新データの書込み速度を取得し、
     前記パッケージ生成部は、前記組換え情報取得部により取得された前記書込み速度に基づいてパッケージ内の更新データの構成を決定し、その決定したパッケージ内の更新データの構成に基づいてパッケージを生成する請求項1から6の何れか一項に記載したデータ配信装置。
  8.  前記組換え情報取得部は、前記組換え情報として、前記書込み対象の電子制御装置における更新データの書込み総容量を取得し、
     前記パッケージ生成部は、前記組換え情報取得部により取得された前記書込み総容量に基づいてパッケージ内の更新データの構成を決定し、その決定したパッケージ内の更新データの構成に基づいてパッケージを生成する請求項1から7の何れか一項に記載したデータ配信装置。
  9.  前記組換え情報取得部は、前記組換え情報として、前記書込み対象の電子制御装置における書込み処理の実行単位を取得し、
     前記パッケージ生成部は、前記組換え情報取得部により取得された前記実行単位に基づいてパッケージ内の更新データの構成を決定し、その決定したパッケージ内の更新データの構成に基づいてパッケージを生成する請求項1から8の何れか一項に記載したデータ配信装置。
  10.  更新データを含むパッケージをマスタ装置に配信するデータ配信装置(2)と、前記データ配信装置からダウンロードしたパッケージから更新データを抽出し、その抽出した更新データを書込み対象の電子制御装置に転送するマスタ装置(3)と、を備えるデータ配信システム(1)において、
     前記データ配信装置は、
     複数の書込み対象の電子制御装置に対応する複数の更新データを取得する更新データ取得部(9a)と、
     前記マスタ装置により複数の書込み対象の電子制御装置への更新データの転送処理が並行して実行されるための組換え情報を取得する組換え情報取得部(9b)と、
     前記更新データ取得部により取得された複数の更新データを、前記組換え情報取得部により取得された組換え情報に基づいて分割して分割データを生成し、その生成した複数の更新データの分割データをパッケージ化して複数のパッケージを生成するパッケージ生成部(9c)と、
     前記パッケージ生成部により生成された複数のパッケージを前記マスタ装置に配信させる配信制御部(9e)と、を備えるデータ配信システム。
  11.  更新データを含むパッケージをマスタ装置に配信するデータ配信装置(2)と、前記データ配信装置からダウンロードしたパッケージから更新データを抽出し、その抽出した更新データを書込み対象の電子制御装置に転送するマスタ装置(3)と、前記マスタ装置から転送された更新データをメモリに書込む電子制御装置(4)と、を備えるデータ配信システム(1)において、
     前記データ配信装置は、
     複数の書込み対象の電子制御装置に対応する複数の更新データを取得する更新データ取得部(9a)と、
     前記マスタ装置により複数の書込み対象の電子制御装置への更新データの転送処理が並行して実行されるための組換え情報を取得する組換え情報取得部(9b)と、
     前記更新データ取得部により取得された複数の更新データを、前記組換え情報取得部により取得された組換え情報に基づいて分割して分割データを生成し、その生成した複数の更新データの分割データをパッケージ化して複数のパッケージを生成するパッケージ生成部(9c)と、
     前記パッケージ生成部により生成された複数のパッケージを前記マスタ装置に配信させる配信制御部(9e)と、を備えるデータ配信システム。
  12.  前記マスタ装置は、前記データ配信装置からのパッケージのダウンロードと、前記書込み対象の電子制御装置への更新データの転送とを並行して実行する請求項10又は11に記載したデータ配信システム。
  13.  前記マスタ装置は、全ての書込み対象の電子制御装置における更新データの書込み完了を判定した後に、その全ての書込み対象の電子制御装置に転送した更新データを削除する請求項10から12の何れか一項に記載したデータ配信システム。
  14.  前記マスタ装置は、全ての書込み対象の電子制御装置に転送した更新データを削除した後に、次のパッケージの配信を前記データ配信装置に要求する請求項13に記載したデータ配信システム。
  15.  パッケージから抽出した更新データを書込み対象の電子制御装置に転送するマスタ装置(3)と、前記マスタ装置から転送された更新データをメモリに書込む電子制御装置(4)と、を備えるデータ配信システム(1)で用いられるデータ配信装置(2)の制御部(9)に、
     複数の書込み対象の電子制御装置に対応する複数の更新データを取得する更新データ取得手順と、
     前記マスタ装置により複数の書込み対象の電子制御装置への更新データの転送処理が並行して実行されるための組換え情報を取得する組換え情報取得手順と、
     前記更新データ取得手順により取得した複数の更新データを、前記組換え情報取得部により取得された組換え情報に基づいて分割して分割データを生成し、その生成した複数の更新データの分割データをパッケージ化して複数のパッケージを生成するパッケージ生成手順と、
     前記パッケージ生成手順により生成した複数のパッケージを前記マスタ装置に配信させる配信制御手順と、を実行させるデータ配信プログラム。
PCT/JP2021/005927 2020-02-19 2021-02-17 データ配信装置、データ配信システム及びデータ配信プログラム WO2021166956A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE112021001072.7T DE112021001072T5 (de) 2020-02-19 2021-02-17 Datenverteilungsvorrichtung, datenverteilungssystem und datenverteilungsprogramm
CN202180014673.0A CN115136121A (zh) 2020-02-19 2021-02-17 数据分发装置、数据分发系统以及数据分发程序
US17/889,478 US20220391195A1 (en) 2020-02-19 2022-08-17 Data distribution device, data distribution system, and non-transitory computer-readable storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-026299 2020-02-19
JP2020026299A JP7232785B2 (ja) 2020-02-19 2020-02-19 データ配信装置、データ配信システム及びデータ配信プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/889,478 Continuation US20220391195A1 (en) 2020-02-19 2022-08-17 Data distribution device, data distribution system, and non-transitory computer-readable storage medium

Publications (1)

Publication Number Publication Date
WO2021166956A1 true WO2021166956A1 (ja) 2021-08-26

Family

ID=77391284

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/005927 WO2021166956A1 (ja) 2020-02-19 2021-02-17 データ配信装置、データ配信システム及びデータ配信プログラム

Country Status (5)

Country Link
US (1) US20220391195A1 (ja)
JP (1) JP7232785B2 (ja)
CN (1) CN115136121A (ja)
DE (1) DE112021001072T5 (ja)
WO (1) WO2021166956A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006298260A (ja) * 2005-04-22 2006-11-02 Denso Corp 自動車用制御システム
JP2017157007A (ja) * 2016-03-02 2017-09-07 住友電気工業株式会社 プログラム更新システム、プログラム更新方法及びコンピュータプログラム
WO2020032043A1 (ja) * 2018-08-10 2020-02-13 株式会社デンソー 車両用電子制御システム、配信パッケージのダウンロード判定方法及び配信パッケージのダウンロード判定プログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104793975B (zh) * 2015-04-29 2019-02-19 北京经纬恒润科技有限公司 电子控制单元中应用程序的更新方法及装置
US10101992B2 (en) * 2015-06-15 2018-10-16 Lear Corporation Telematics control unit comprising a differential update package
JP6361671B2 (ja) * 2016-03-02 2018-07-25 住友電気工業株式会社 プログラム更新システム、プログラム更新方法、中継装置及びコンピュータプログラム
JP6922417B2 (ja) 2016-11-25 2021-08-18 株式会社デンソー 並行処理装置及び並行処理プログラム
WO2019058652A1 (ja) * 2017-09-25 2019-03-28 住友電気工業株式会社 制御装置、制御方法、およびコンピュータプログラム
US11204750B2 (en) * 2018-03-30 2021-12-21 Intel Corporation Systems, methods and apparatus for distributed software/firmware update and software versioning system for automated vehicles
JP2020026299A (ja) 2018-08-13 2020-02-20 大日本印刷株式会社 複合容器、複合容器の製造方法、およびブロー成形型
JP7298427B2 (ja) * 2019-10-07 2023-06-27 トヨタ自動車株式会社 プログラム更新システムおよびプログラム更新方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006298260A (ja) * 2005-04-22 2006-11-02 Denso Corp 自動車用制御システム
JP2017157007A (ja) * 2016-03-02 2017-09-07 住友電気工業株式会社 プログラム更新システム、プログラム更新方法及びコンピュータプログラム
WO2020032043A1 (ja) * 2018-08-10 2020-02-13 株式会社デンソー 車両用電子制御システム、配信パッケージのダウンロード判定方法及び配信パッケージのダウンロード判定プログラム

Also Published As

Publication number Publication date
DE112021001072T5 (de) 2023-01-19
US20220391195A1 (en) 2022-12-08
JP7232785B2 (ja) 2023-03-03
CN115136121A (zh) 2022-09-30
JP2021131694A (ja) 2021-09-09

Similar Documents

Publication Publication Date Title
US11392305B2 (en) Vehicle information communication system
WO2021166617A1 (ja) マスタ装置、データ配信システム及び更新制御プログラム
JP6913621B2 (ja) 自動車用電子制御装置
WO2021166956A1 (ja) データ配信装置、データ配信システム及びデータ配信プログラム
US20220391194A1 (en) Ota master, system, method, non-transitory storage medium, and vehicle
JP7087334B2 (ja) 電子制御装置
US20210397443A1 (en) Software update apparatus, master, ota master, and network system
JP7396216B2 (ja) サーバ、更新管理方法、更新管理プログラム及びソフトウェア更新装置
US20210065478A1 (en) Electronic control unit and non-transitory computer readable medium storing session establishment program
US11972248B2 (en) Controlling software update of electronic control units mounted on a vehicle
US11954480B2 (en) Center, OTA master, system, method, non-transitory storage medium, and vehicle
US11947951B2 (en) Center, distribution control method, and non-transitory storage medium
JP2003280902A (ja) マイコンロジック開発システム及びそのプログラム
CN117120973A (zh) 车辆用电子控制装置、改写程序以及数据结构
US20240111519A1 (en) Onboard communication system, center device, vehicle-side system, and method for verifying update data of onboard communication
US20220391193A1 (en) Ota master, system, method, non-transitory storage medium, and vehicle
US20220342660A1 (en) Center device and in-vehicle electronic control device
US11947950B2 (en) Center, OTA master, method, non-transitory storage medium, and vehicle
US20240086174A1 (en) Vehicular electronic control device and update program
JP7484814B2 (ja) 車両用電子制御装置及び更新プログラム
US20220351555A1 (en) Center device and vehicle information communication system
EP3933572B1 (en) Software update device, software update method, non-transitory storage medium, and vehicle
US20240069905A1 (en) Vehicular electronic control device, vehicular electronic control system, and updated configuration information determination program
WO2022259348A1 (ja) 車両用制御装置
US20220253234A1 (en) Electronic control unit, method, and program

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21757409

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 21757409

Country of ref document: EP

Kind code of ref document: A1