Center device and distribution package generation method
The center device and method address the challenge of generating distribution packages tailored to ECUs by managing logic IDs and software versions, ensuring accurate and efficient update data distribution across vehicles with diverse ECU specifications.
Patent Information
- Application Number
- JP2022019598
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-02-10
- Publication Date
- 2025-11-18
- Estimated Expiration
- 2042-02-10
AI Technical Summary
Existing technologies lack a specific process for generating a distribution package that accounts for the specifications of a central ECU when distributing update programs via OTA, necessitating a solution that can adapt to the specifications of different ECUs.
A center device and method that utilize a package generation unit and distribution unit to generate and distribute packages based on the specifications of a master device, managing logic IDs and software versions to create packages tailored to individual ECUs, using logic management registration units to identify and generate packages accordingly.
Enables the generation of distribution packages that align with the specifications of individual ECUs, ensuring accurate and efficient distribution of update data across vehicles with varying ECU configurations.
Smart Images

Figure 0007771797000001 
Figure 0007771797000002 
Figure 0007771797000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a center device that manages data to be written to a plurality of electronic control devices mounted on a vehicle, and a method for generating a distribution package. [Background technology]
[0002] In recent years, with the diversification of vehicle control, such as driving assistance functions and autonomous driving functions, the scale of application programs for vehicle control, diagnosis, etc., installed in vehicle electronic control units (hereinafter referred to as ECUs (Electronic Control Units)) is increasing. Furthermore, with version upgrades for functional improvements, etc., there are also increasing opportunities to rewrite ECU application programs, i.e., to reprogram them. Meanwhile, with the advancement of communication networks, connected car technology is also becoming widespread. Given these circumstances, for example, Patent Document 1 discloses a technology in which an ECU update program is distributed from a server to an in-vehicle device via OTA (Over The Air) and the update program is rewritten on the vehicle side. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2020-27624 Summary of the Invention [Problem to be solved by the invention]
[0004] When distributing an update program via OTA, a data package for distribution must be generated. The vehicle-side system, for example, includes a DCM (Data Communication Module) that communicates directly with a center device, a target ECU (electronic control unit) that is the electronic control unit to which the update program is to be rewritten, and a central ECU (master device) that transfers the update program received via the DCM to the target ECU. When the update program is transferred to the target ECU, the master device reads files attached to or related to the update program and identifies the target ECU to which the update program is to be transferred and the transfer method. In other words, the files attached to or related to the update program must be readable by the master device. Therefore, the package specifications depend on the specifications of the central ECU, and the distribution package must be generated according to the specifications of the central ECU. However, conventionally, a specific process for generating a distribution package according to the specifications of a central ECU has not been disclosed.
[0005] The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a center device and a method for generating a distribution package that can generate a distribution package according to the specifications of a master device. [Means for solving the problem]
[0006] The center device according to claim 1 includes a package generation unit that generates a package including update data to be distributed to the vehicle, and a package distribution unit that distributes the generated package to the vehicle. When logic for generating the package is generated in response to a change in the specifications of a master device that is mounted on the vehicle and receives the package distributed from the center device and transfers the update data to the electronic control device, the package generation unit registers the generated logic in the logic management registration unit.
[0007] When the ID assigned to the logic and the software version of the master device corresponding to the logic are notified, they are registered in the logic ID management registration unit. Then, when information about the master device to which the package is to be distributed is input from the package distribution unit, the ID corresponding to the master device is identified based on the information by referring to the logic ID management registration unit, the logic corresponding to the ID is obtained from the logic management registration unit, and a package is generated based on the logic.
[0008] With this configuration, the center device manages the logic and its ID corresponding to the master device that has been notified of the specification change. Therefore, when information about the master device to which a package is to be distributed is input, the center device can identify the ID corresponding to the master device based on that information, obtain the logic corresponding to that ID, and generate a package. [Brief explanation of the drawings]
[0009] [Figure 1] FIG. 1 is a functional block diagram showing the configuration of a package generation system centered around a center device according to an embodiment of the present invention. [Figure 2] Functional block diagram showing the configuration of the vehicle-side system [Figure 3] Diagram showing the sequence of the preparation phase [Figure 4] FIG. 1 shows an example of C-ECU information and logic IDs registered in the logic ID management DB. [Figure 5] FIG. 2 shows an example of C-ECU information and logic IDs registered in the logic ID management DB. [Figure 6] FIG. 3 shows an example of C-ECU information and logic IDs registered in the logic ID management DB. [Figure 7] FIG. 10 is a diagram showing an example of logic IDs and logic specifications registered in a logic management DB. [Figure 8] Flowchart showing the contents of the decision processing phase [Figure 9] Diagram showing a list of data definitions [Figure 10] A diagram showing a logic ID decision table that does not link sub-target IDs [Figure 11] A diagram showing the logic ID determination table for linking sub-target IDs [Figure 12] FIG. 10 is a diagram illustrating the processing content of step S9. [Figure 13] A diagram showing the processing content to be performed for each logic corresponding to the logic ID. [Figure 14] A diagram showing the overall process of package generation [Figure 15A] Diagram showing the package generation process for CP-CP storage (part 1) [Figure 15B] Diagram showing package generation process for CP-CP storage (part 2) [Figure 16A] Diagram showing the package generation process for AP-AP streaming (part 1) [Figure 16B] Diagram showing the package generation process for AP-AP streaming (part 2) [Figure 17A] Diagram showing the package generation process for CP-CP streaming (part 1) [Figure 17B] Diagram showing the package generation process for CP-CP streaming (part 2) [Figure 18A] Diagram showing the package generation process for CP-CP storage and CP-CP streaming (part 1) [Figure 18B] Diagram showing the package generation process for CP-CP storage and CP-CP streaming (part 2) [Figure 19A] Diagram showing package generation process for AP-CP storage (part 1) [Figure 19B] Diagram showing package generation process for AP-CP storage (part 2) [Figure 20A] Diagram showing the package generation process for AP-CP streaming (part 1) [Figure 20B] Diagram showing the package generation process for AP-CP streaming (part 2) [Figure 21A] Diagram showing the package generation process for AP-CP storage and AP-AP streaming (part 1) [Figure 21B] Diagram showing the package generation process for AP-CP storage and AP-AP streaming (part 2) DETAILED DESCRIPTION OF THE INVENTION
[0010] An embodiment will be described below. As shown in Fig. 2, a vehicle-side system 11 includes an OTA master 12 and a target ECU 13. The OTA master 12 is composed of a DCM (Data Communication Module) 12A and a central ECU 12B. The DCM 12A communicates directly with the center device 1 shown in Fig. 1. When the OTA master 12 acquires a distribution package received from the center device 1, it transfers update data included in the acquired distribution package to each target ECU 13. Hereinafter, the "central ECU" will be referred to as a "C-ECU." The C-ECU 12B corresponds to the master device, and the target ECU 13 corresponds to an electronic control device.
[0011] As shown in Fig. 1, the center device 1 of this embodiment includes a PKG generation server 2 and a distribution server 3. The PKG generation server 2 includes a logic ID management DB 4 and a logic management DB 5. Note that "PKG" means "package" and "DB" means database. The PKG generation server 2 corresponds to a package generation unit, and the distribution server 3 corresponds to a package distribution unit.
[0012] The PKG generation server 2 generates a data package to be distributed to the vehicle-side system 11, and the generated distribution package is distributed to the vehicle-side system 11 via the distribution server 3. The format of the distribution package differs depending on the specifications of the C-ECU 12B of each vehicle-side system 11. In this embodiment, information for generating a distribution package in accordance with the specifications of the C-ECU 12B is referred to as "logic." The distribution server 3 stores information about the C-ECU 12B to which update data is to be sent in a database.
[0013] As also shown in FIG. 3, in the advance preparation phase, when the administrator 7 of the PKG generation server 2 receives information about a change in the specifications of the C-ECU 12B from the OEM's back office 6, the administrator 7 generates logic according to the specifications using a tool and registers it in the logic management DB 5. The administrator 7 also assigns an ID, which is an identifier, to the generated logic and notifies the back office 6. The ID is an example of a logic identifier. When the back office 6 is notified of the logic ID, it notifies the center device 1 of the software version of the C-ECU 12B whose specifications have been changed and which corresponds to the ID. The notified information is registered in the logic ID management DB 4. Note that the logic management master in the figure corresponds to the logic management DB 5, and the logic ID management master corresponds to the logic ID management DB 4.
[0014] Thereafter, when information about C-ECU 12B, which is the transmission target of update data, is input from distribution server 3, the PKG generation server 2 acquires a logic ID corresponding to the C-ECU 12B from logic ID management DB 4 based on the information about C-ECU 12B. Then, when the logic corresponding to the acquired logic ID is acquired from logic management DB 5, a package is generated according to the logic. The generated package is registered in package DB 8 and distributed to C-ECU 12B, which is the transmission target, via distribution server 3.
[0015] As shown in an example in Fig. 4, the software version or software ID of each C-ECU 12B is used as C-ECU information, and logic IDs corresponding to the C-ECU information are registered in the logic ID management DB 4. In Fig. 5, two pieces of C-ECU information "1.0.2" and "1.1.0", both of which have the logic ID "AAA", are added to the state shown in Fig. 4.
[0016] In another example shown in Figure 6, the C-ECU information is a combination of multiple part numbers. For example, there is an OTA part number, an Update Configuration Management (UCM) part number, and a Flashing Adaptor part number. Note that details about the UCM and Flashing Adaptor are omitted here, as they are explained in the specifications of the AUTOSAR (AUTomotive Open System ARchitecture) standardization organization.
[0017] As shown in Fig. 7, logic specifications corresponding to logic IDs are registered in the logic management DB 5. The logic specifications define the input, processing, and output required to generate a data package. Examples of logic specifications are shown in Figs. 15 to 21.
[0018] 8, a loop of S1 to S14 performs pre-processing to generate packages for the number of elements of the C-ECU 12B and the target ECU 13. First, the platform type of the C-ECU 12B is determined to be one of three types: AP, CP, or others (S2). If it is "other," the process ends abnormally.
[0019] Here, AP and CP represent software platforms. Software platforms are also called software architectures. CP stands for AUTOSAR Classic Platform, and AP stands for AUTOSAR Adaptive Platform. Furthermore, an ECU that operates in accordance with the CP specification is sometimes referred to as a CP ECU or CP ECU, and an ECU that operates in accordance with the AP specification is sometimes referred to as an AP ECU or AP ECU.
[0020] AP and CP use different operating systems (OS) and development languages. CP ECUs and AP ECUs have different package structures that they can receive. These differences in package structure are primarily due to differences in the ECU's processing performance. Since CP ECUs generally have low processing performance, the specification data included in the package is written as binary data, making it a package data structure that is easy to interpret and process even for ECUs with low processing performance. Specification data is data that specifies information regarding rewriting of application programs.
[0021] On the other hand, because AP ECUs use processors with high processing performance, they can be equipped with a parser function that analyzes structured character data written in some language and converts it into a data structure that can be handled by a program.The data structure can be an object-oriented data format such as JSON (JavaScript Object Notation) rather than simple binary data, resulting in a flexible package data structure.
[0022] If the type of C-ECU 12B is CP, it is confirmed that the number of elements is "1" (S3), and then a logic ID is identified from reference data No. 1 and reference data No. 2 shown in Fig. 9 according to the decision table shown in Fig. 10 (S4). "Y" in the figure indicates "YES" and "N" indicates "NO". If the logic ID is successfully identified in the following step S5, the process returns to step S1.
[0023] If the type of the C-ECU 12B is AP, the loop of steps S6 to S8 is repeated the number of times corresponding to the number of elements in each ECU. A logic ID is identified from reference data No. 1 and reference data No. 3 shown in FIG. 9 according to the decision table shown in FIG. 11 (S7). After exiting the loop, as shown in FIG. 12, a check is made to see if any of the records hit by each sub-target ID share a common logic ID (S9). If a common logic ID is found (S10; Yes), a check is made to see if the number of sub-target IDs with the common logic ID is the same as the number of components in the hit record (S11). In the example shown in FIG. 12, for example, the number of sub-target IDs with logic ID B is "3." If there is only one matching logic ID, the process returns to step S1; if there are zero or more matching logic IDs, the process terminates abnormally. After exiting the loop of steps S1 to S13, a data package is generated using the logic identified from the logic management DB 5 based on each logic ID (S14).
[0024] As shown in Fig. 13, when a logic ID is input, the PKG server 2 starts processing corresponding to each logic, for example, depending on whether the ID is A to D (S21A to S21D). In the subsequent steps S22A to S22D, a vehicle package generation process is performed. The vehicle package includes a manifest for each software package and a vehicle package manifest. The manifest contains information such as the diagnostic address and ID of the UCM to which the package is distributed. Note that Figs. 14 to 21 illustrate the process after the generation process is selected.
[0025] The vehicle package manifest contains information necessary for controlling and distributing the campaign, which is sent to vehicles as a notification that a data update is ready, such as information on dependencies, target vehicles, safety policies, and driver notification settings. The UCM master, a software module installed in the C-ECU 12B, interprets the vehicle package to determine the data update content and controls which software package to transfer to which UCM and in what order. The UCM then interprets the software package passed from the UCM master and executes the installation process for the target ECU 13. The UCM master and UCM are described in the AUTOSAR specifications, etc., and therefore, details are omitted here. The UCM master in the embodiment may be a reprogramming master app conforming to the AUTOSAR UCM master, and the UCM may be a reprogramming app conforming to the AUTOSAR UCM.
[0026] In the following steps S23A to S23D, an OEM Authentication Tag to be added to the vehicle package is generated, and the hash function SHA256 for generating a hash value and an encryption method are selected. In step S24D for logic ID=D, metadata is added. The metadata includes configuration information for the distribution package, in other words, information indicating the package configuration type and control information for acquiring the data. The metadata is specified so that the vehicle can check the content to prevent package distribution errors and to enable the OTA master 12 to understand information for downloading update data for each of multiple target ECUs 13.
[0027] FIG. 14 shows an overview of the package generation process. Note that "repro" means "reprogram." There are two data update methods: a storage method, in which all update programs are downloaded from the center device 1 to the vehicle's memory before the update is performed, and a streaming method, in which update programs are downloaded from the center device 1 to the vehicle while the update is being performed. The package generation process is divided into seven cases depending on the platform types of the C-ECU 12B and the target ECU 13, and the combination of the storage method and the streaming method.
[0028] <CP-CPストレージ> As shown in Figure 15, once the logic for generating a package has been identified, the corresponding CP storage repro setting file, CP repro header, and CP storage update data are obtained. Specification data is generated from the repro setting file and repro header, and verification data is attached to the specification data. For update data, differential data from the pre-update data and rollback data are generated, and verification data for this is attached. From these, file configuration information is generated, and after this verification data is attached, these are archived together to form a master layer package compatible with CP-CP storage. Finally, the package is compressed into a ZIP file.
[0029] <AP-APストリーミング> As shown in Figure 16, the logic identifies the AP streaming update data file and the AP streaming reprocessing setting file. For the update data, differential data is generated as described above, and an AP-AP streaming target layer package is generated. A vehicle package is generated from the reprocessing setting file for the AP. These are then compressed together into a ZIP file to create the final package.
[0030] <CP-CPストリーミング> As shown in FIG. 17, the specification data and its verification data are generated in the same manner as in the case of FIG. 15. When the update data for CP streaming is identified, for the corresponding differential data, a target layer package and the verification data of the differential data are generated. These are collectively compressed into a ZIP file.
[0031] <CP-CP storage·CP-CP streaming mixed> In this case, as shown in FIG. 18, it becomes a pattern in which FIGS. 15 and 17 are integrated, and the data for CP-CP storage and the data for CP-CP streaming are combined into one package.
[0032] <AP-CP storage> As shown in FIG. 19, the processing related to the CP storage part is substantially the same as in FIG. 15, but the reproduction data and its verification data do not include rollback data. For the processing related to the AP storage part, only the Vehicle package is generated in the same manner as in FIG. 16. <AP-CP streaming> As shown in FIG. 20, it is the result of adding the generation of the Vehicle package to the processing shown in FIG. 17.
[0033] <AP-CP storage·AP-AP streaming mixed> As shown in FIG. 21, it is the integration of the processing shown in FIG. 16 and the processing shown in FIG. 19.
[0034] As described above, according to the present embodiment, the center device 1 includes a PKG generation server 2 that generates a package including update data to be distributed to the vehicle, and a distribution server 3 that distributes the generated package to the vehicle. When the OEM notifies the specification change of the C-ECU 12B, the administrator 7 generates the logic for generating the package according to the specification change, registers it in the logic management DB 5, attaches an ID to the logic, and notifies the OEM.
[0035] When the OEM notifies the ID and the software version of the C-ECU 12B corresponding to that ID, the ID and the version are registered in the logic ID management DB 4. Then, when the distribution server 3 inputs information about the C-ECU 12B to which the package is to be distributed, the PKG generation server 2 refers to the logic ID management DB 4 based on that information to identify the ID corresponding to the C-ECU 12B, obtains the logic corresponding to that ID from the logic management DB 5, and generates a package based on that logic.
[0036] With this configuration, the center device 1 manages the logic and its ID corresponding to the C-ECU 12B for which the OEM has notified it of a specification change. Therefore, when information about the C-ECU 12B to which a package is to be distributed is input, the corresponding ID can be identified based on that information, and the logic corresponding to that ID can be obtained to generate a package. (Other embodiments)
[0037] Although the present disclosure has been described with reference to the embodiments, it is understood that the present disclosure is not limited to the embodiments or structures. The present disclosure also encompasses various modifications and equivalent modifications. In addition, various combinations and forms, including only one element, more than one element, or less than one element, are also within the scope and spirit of the present disclosure.
[0038] The means and / or functions provided by each device, etc., can be provided by software recorded in a tangible memory device and a computer that executes the software, software alone, hardware alone, or a combination thereof. For example, if a control device is provided by electronic circuits that are hardware, it can be provided by digital circuits including a large number of logic circuits, or analog circuits.
[0039] The control unit and the method described herein may be implemented by a special-purpose computer configured by configuring a processor and memory programmed to perform one or more functions embodied in a computer program. Alternatively, the control unit and the method described herein may be implemented by a special-purpose computer configured by configuring a processor with one or more dedicated hardware logic circuits. Alternatively, the control unit and the method described herein may be implemented by one or more special-purpose computers configured by combining a processor and memory programmed to perform one or more functions with a processor configured with one or more hardware logic circuits. Furthermore, the computer program may be stored as instructions executed by a computer on a computer-readable non-transitory tangible storage medium. [Explanation of symbols]
[0040] In the drawing, 1 indicates a center device, 2 indicates a package generation server, 3 indicates a distribution server, 4 indicates a logic ID management DB, 5 indicates a logic management DB, 6 indicates a back office, 7 indicates an administrator, 11 indicates a vehicle-side system, 12 indicates an OTA master, 12B indicates a C-ECU, and 13 indicates a target ECU.
Claims
1. A central device that manages data to be written to a plurality of electronic control devices mounted on a vehicle, a package generation unit (2) that generates a package including update data to be distributed to the vehicle; a package delivery unit (3) that delivers the package to the vehicle; The package generation unit includes a logic management registration unit (5) in which, when logic for generating the package is generated in accordance with a change in specifications of a master device that receives a package distributed from a center device and transfers update data to the electronic control device, the logic is registered; a logic ID management and registration unit (4) for registering an ID assigned to the logic and a software version of the master device corresponding to the logic when the ID and the version are notified, When information about the master device to which a package is to be distributed is input from the package distribution unit, the center device identifies the ID corresponding to the master device based on the information by referring to the logic ID management registration unit, obtains the logic corresponding to the ID from the logic management registration unit, and generates a package based on the logic.
2. A central device that manages data to be written to a plurality of electronic control devices mounted on a vehicle, a package generation unit (2) that generates a package including update data to be distributed to the vehicle; a package delivery unit (3) that delivers the package to the vehicle; The package generation unit includes a logic management registration unit (5) that manages logic for generating the package and an ID assigned to the logic; a logic ID management and registration unit (4) for managing the software version of a master device that receives the package distributed from the package distribution unit and transfers update data to the electronic control unit, and an ID assigned to the logic for the software version; When the software version of the master device to which the package is to be distributed is input as information, the center device identifies the ID corresponding to the master device based on the information by referring to the logic ID management registration unit, obtains the logic corresponding to the ID from the logic management registration unit, and generates a package based on the logic.
3. A method for generating a package including update data to be distributed to a vehicle in order to write data to a plurality of electronic control units mounted on the vehicle, the method comprising: a master device that receives a package distributed from a center device and transfers update data to the electronic control device, and when logic for generating the package is generated in response to a change in specifications of the master device, the logic is registered in a logic management registration unit; When the ID assigned to the logic and the software version of the master device corresponding to the logic are notified, they are registered in a logic ID management registration unit; A distribution package generation method in which, when information about a master device to which a package is to be distributed is input, the ID corresponding to the master device is identified based on the information by referring to the logic ID management registration unit, the logic corresponding to the ID is obtained from the logic management registration unit, and a package is generated based on the logic.
Citation Information
Patent Citations
Program rewriting system, control device, program distribution device, identification information storage device, and method for rewriting program
JP2013137729A
Software management system, gateway device, maintenance device, server device, and control method of software management system
JP2019191619A
Center device, delivery package generation method, and program for delivery package generation
JP2020027624A
Electronic control system for vehicle, method for determining download of distribution package, and program for determining download of distribution package
JP2020027628A
Silent in-vehicle software updates
US20150242198A1