WO2022220024A1 - 車両用電子制御装置、書換えプログラム及びデータ構造 - Google Patents
車両用電子制御装置、書換えプログラム及びデータ構造 Download PDFInfo
- Publication number
- WO2022220024A1 WO2022220024A1 PCT/JP2022/013122 JP2022013122W WO2022220024A1 WO 2022220024 A1 WO2022220024 A1 WO 2022220024A1 JP 2022013122 W JP2022013122 W JP 2022013122W WO 2022220024 A1 WO2022220024 A1 WO 2022220024A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- software
- storage unit
- external storage
- data
- memory
- Prior art date
Links
- 230000008672 reprogramming Effects 0.000 claims abstract description 51
- 238000000034 method Methods 0.000 claims description 41
- 230000004913 activation Effects 0.000 claims description 35
- 238000012546 transfer Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 description 39
- 230000008569 process Effects 0.000 description 29
- 238000004891 communication Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 18
- 238000009434 installation Methods 0.000 description 9
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 7
- 238000003745 diagnosis Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/66—Updates of program code stored in read-only memory [ROM]
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric 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/02—Electric 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
Definitions
- the present disclosure relates to a vehicle electronic control unit, a rewriting program, and a data structure.
- the CGW instructs the ECU to rewrite the software and rewrites the software stored in the non-volatile memory of the ECU.
- nonvolatile memory there are a one-plane memory having one flash plane and a two-plane memory having two flash planes.
- a microcomputer having a two-sided memory (hereinafter referred to as a two-sided microcomputer) can rewrite software while the vehicle is running, shorten the activation time required for switching operation aspects, and roll back the software. receive benefits such as On the other hand, in order to receive these benefits, the entire memory area must always be separated into two sides.
- CGW is also required to rewrite (self-reprogram) the software necessary for its own operation as it is upgraded due to functional improvements such as higher functionality and higher speed.
- the microcomputer installed in the CGW is a microcomputer having a single-sided memory (hereinafter referred to as a single-sided microcomputer)
- the rewriting program and software coexist in one memory area, so it is necessary to rewrite the software. I can't.
- the microcomputer mounted on the CGW is a two-sided microcomputer, if it is configured as a pseudo one-sided microcomputer as described above, the rewriting program and software coexist in one pseudo memory area. Therefore, the software cannot be rewritten.
- a microcomputer includes a nonvolatile memory that can store software including programs and data and includes a first area and a second area as memory areas, and a first core and a second core. and a control unit that causes at least one of the first core and the second core to execute a rewriting program for rewriting software.
- the external storage unit is provided outside the microcomputer and temporarily stores reprogramming data for updating software.
- the control unit rewrites the software stored in the nonvolatile memory using the memory area of the external storage unit when it is determined that the software is to be rewritten based on the specification data.
- a rewriting program exists by using the memory area of the nonvolatile memory and the memory area of the external storage provided outside the microcomputer as a pseudo two-sided memory.
- a memory area can be separated from the memory area where the software resides.
- the software can be rewritten by executing the rewriting program while separating the memory area where the rewriting program exists from the memory area where the software exists.
- FIG. 1 is a diagram showing the overall configuration of the first embodiment
- FIG. 2 is a functional block diagram of the CGW
- FIG. 3 is a functional block diagram of the microcomputer
- FIG. 4 is a diagram showing specification data
- FIG. 5 is a diagram showing a bus load table
- FIG. 6 is a diagram showing a cluster inside the microcomputer
- FIG. 7 is a diagram showing the flow of processing
- FIG. 8 is a diagram showing the flow of processing
- FIG. 9 is a flow chart
- FIG. 10 is a diagram for explaining the order of processing
- FIG. 11 is a diagram for explaining the order of processing
- FIG. 12 is a flow chart
- FIG. 10 is a diagram for explaining the order of processing
- FIG. 11 is a diagram for explaining the order of processing
- FIG. 12 is a flow chart
- FIG. 13 is a diagram for explaining the order of processing;
- FIG. 14 shows the second embodiment and is a diagram for explaining the order of processing;
- FIG. 15 is a diagram for explaining the order of processing;
- FIG. 16 shows the third embodiment and is a diagram for explaining the order of processing,
- FIG. 17 is a diagram for explaining the order of processing;
- FIG. 18 shows a fourth embodiment and is a diagram for explaining the order of processing;
- FIG. 19 is a diagram for explaining the contents of each embodiment,
- FIG. 20 is a diagram showing clusters inside the microcomputer.
- FIG. A vehicle electronic control system is a system in which software such as vehicle control and diagnosis installed in an electronic control unit (hereinafter referred to as an ECU (Electronic Control Unit)) can be rewritten by OTA (Over The Air).
- Software includes programs and data for realizing functions such as vehicle control and diagnosis, and can also be expressed as an application.
- a case of rewriting software for vehicle control, diagnosis, etc. will be described, but the present invention can also be applied to a case of rewriting a map application or map data used in the map application, for example.
- the vehicle electronic control system 1 has a center device 3 on the communication network 2 side, and a vehicle side system 4 and a display terminal 5 on the vehicle side.
- the communication network 2 includes, for example, a mobile communication network such as a 4G line, the Internet, WiFi (Wireless Fidelity) (registered trademark), and the like.
- the display terminal 5 is a terminal having a function of receiving an operation input from a user and a function of displaying various screens. 7.
- the mobile terminal 6 can perform data communication with the center device 3 via the communication network 2 as long as it is within the communication range of the mobile communication network.
- the in-vehicle display 7 is connected to the vehicle-side system 4 and may be configured to also serve as a navigation function. Further, the on-vehicle display 7 may be an on-vehicle display ECU having an ECU function, or may have a function of controlling display on a center display, a meter display, or the like.
- the user can input operations while confirming various screens related to software rewriting on the portable terminal 6, and can perform procedures related to software rewriting.
- the user can input operations while confirming various screens related to software rewriting on the in-vehicle display 7, and can perform procedures related to software rewriting.
- the user can use the portable terminal 6 and the vehicle-mounted display 7 separately outside the vehicle and inside the vehicle, and perform procedures related to rewriting of software.
- the center device 3 controls the software update function on the communication network 2 side in the vehicle electronic control system 1 and functions as an OTA center.
- the center device 3 has a file server 8, a web server 9, and a management server 10, and the servers 8 to 10 are configured to be able to communicate data with each other.
- the center device 3 includes a plurality of servers with different functions.
- the file server 8 is a server that manages software files distributed from the center device 3 to the vehicle-side system 4 .
- the file server 8 stores reprogrammed data provided by a supplier or the like who is a provider of software distributed from the center device 3 to the vehicle-side system 4, specification data provided by an OEM (Original Equipment Manufacturer), vehicle-side system 4 to manage the vehicle status and the like.
- the file server 8 is capable of data communication with the vehicle-side system 4 via the communication network 2, and upon receiving a package data download request from the vehicle-side system 4, the reprogram data and the specification data are combined into one file. to the vehicle side system 4.
- Download data includes a compressed zip file.
- the file server 8 may transmit the reprogrammed data and the specification data to the vehicle-side system 4 as separate files.
- the web server 9 is a server that manages web information.
- the web server 9 transmits web data managed by itself in response to a request from the web browser of the mobile terminal 6 or the like.
- the management server 10 is a server that manages personal information of users registered in a software rewriting service, software rewriting history for each vehicle, and the like.
- the vehicle-side system 4 has a vehicle master device 11 .
- the vehicle master device 11 controls the software update function of the vehicle in the vehicle electronic control system 1 and functions as an OTA master.
- the vehicle master device 11 has a DCM (Data Communication Module) 12 and a CGW (Central Gate Way) 13 .
- the DCM 12 wirelessly communicates data with the center device 3 via the communication network 2 .
- the CGW 13 functions as a gateway ECU and corresponds to a vehicle electronic control unit.
- the DCM 12 and the CGW 13 are connected via the first bus 14 so as to be capable of data communication.
- FIG. 1 illustrates a configuration in which the DCM 12 and the vehicle-mounted display 7 are connected to the same first bus 14, the DCM 12 and the vehicle-mounted display 7 may be connected to separate buses.
- the configuration may be such that the CGW 13 has part or all of the functions of the DCM 12 , or the DCM 12 may have part or all of the functions of the CGW 13 .
- the DCM 12 and the CGW 13 may share functions in any way.
- the vehicle master device 11 may be composed of two ECUs, the DCM 12 and the CGW 13 , or may be composed of one integrated ECU having the functions of the DCM 12 and the CGW 13 .
- the CGW 13 is connected with a second bus 15, a third bus 16, a fourth bus 17, and a fifth bus 18 as internal buses.
- Various ECUs 19 are connected via a bus 18 and a power management ECU 20 is connected via a bus 18 .
- the second bus 15 is, for example, a body system network bus.
- the ECU 19 connected to the second bus 15 is an ECU that controls the body system.
- ECUs that control the body system include, for example, a door ECU that controls door locking/unlocking, a meter ECU that controls display on the meter display, an air conditioner ECU that controls the driving of the air conditioner, and a window ECU that controls the opening and closing of windows. , a security ECU and the like that are driven to prevent vehicle theft.
- the third bus 16 is, for example, a running system network bus.
- the ECU 19 connected to the third bus 16 is an ECU that controls the running system.
- ECUs that control driving systems include, for example, an engine ECU that controls engine drive, a brake ECU that controls brake drive, an ECT (Electronic Controlled Transmission) ECU that controls automatic transmission drive, and a power steering drive control. power steering ECU, etc.
- the fourth bus 17 is, for example, a multimedia network bus.
- the ECU 19 connected to the fourth bus 17 is an ECU that performs multimedia control.
- ECUs that perform multimedia control include, for example, a navigation ECU for controlling a navigation system and an ETC ECU for controlling an electronic toll collection system (ETC (Electronic Toll Collection System, registered trademark)).
- the buses 15 to 17 may be buses of systems other than the body system network bus, driving system network bus, and multimedia system network bus. Also, the number of buses and the number of ECUs 19 are not limited to the illustrated configuration.
- the power management ECU 20 is an ECU that manages power supplied to the DCM 12, the CGW 13, various ECUs 19, and the like.
- a sixth bus 21 is connected to the CGW 13 as a vehicle-exterior bus.
- a DLC (Data Link Coupler) connector 22 to which a tool 23 functioning as a service tool is detachably connected is connected to the sixth bus 21 .
- the buses 14 to 18 inside the vehicle and the bus 21 outside the vehicle are configured by, for example, a CAN (Controller Area Network, registered trademark) bus, and the CGW 13 is based on CAN data communication standards and diagnostic communication standards (UDS (Unified Diagnosis Services)).
- UDS Unified Diagnosis Services
- the DCM 12 downloads the download data from the file server 8, it sends the downloaded download data to the CGW 13.
- the CGW 13 decompresses the received download data to obtain package data, and obtains reprogramming data and specification data from the obtained package data.
- the CGW 13 When the target of software rewriting is the ECU 19, the CGW 13 performs the installation of the acquired reprogramming data on the condition that a condition capable of instructing installation for writing the reprogramming data is satisfied. direct to.
- the conditions under which it is possible to instruct installation are that approval for installation has been obtained, that the CGW 13 is capable of data communication with the center device 3 via the DCM 12, that the vehicle is in a state where installation is possible, and that the rewriting target
- the ECU 19 is in an installable state, the reprogramming data is normal data, and the like.
- the CGW 13 instructs the ECU 19 to be rewritten to install the reprogrammed data
- the reprogrammed ECU 19 installs the reprogrammed data.
- the CGW 13 instructs the ECU 19 to be rewritten to activate on the condition that the conditions for enabling the instruction to activate the software after the completion of installation are satisfied.
- the conditions under which activation can be instructed include that approval for activation has been obtained, that the vehicle state is in a state in which activation is possible, and that the ECU 19 to be rewritten is in a state in which activation is possible.
- the CGW 13 instructs the ECU 19 to be rewritten to activate, the ECU 19 is activated.
- the CGW 13 includes, as electrical functional blocks, three microcomputers (hereinafter referred to as microcomputers) 24 to 26, an external storage 27, a data transfer circuit 28, a power supply circuit 29, and a power detection circuit 30 .
- the three microcomputers 24 to 26 may be mounted on the same substrate or may be mounted on different substrates.
- the first microcomputer 24 and the second microcomputer 25 are connected for data communication, and the second microcomputer 25 and the third microcomputer 26 are connected for data communication.
- the microcomputers 24 to 26 have different specifications and cooperate with each other to realize the operation of the CGW 13 .
- the microcomputers 24 to 26 each execute various control programs stored in non-transitional material storage media, perform various processes, and cooperate to control the operation of the CGW 13 .
- the configuration in which three microcomputers 24 to 26 are mounted on the CGW 13 is illustrated, but the specifications, number, and combination of microcomputers mounted on the CGW 13 are determined according to the processing capacity required for the CGW 13. determined by That is, if the CGW 13 is required to have relatively high processing power, a microcomputer with relatively high specifications is employed, or a plurality of microcomputers are employed to realize distributed processing or parallel processing.
- the external storage 27 is provided separately from the microcomputers 24 to 26, is directly connected to the first microcomputer 24 via a dedicated line, and is connected to the first microcomputer 24 so as to be capable of data communication. 24, it is indirectly connected to the second microcomputer 25 and the third microcomputer 26, and is connected to the second microcomputer 25 and the third microcomputer 26 via the first microcomputer 24 so as to be capable of data communication.
- the external storage 27 is eMMC (embedded Multi Media Card), NorFlash, for example, and corresponds to an external storage unit.
- the external storage 27 has a sufficient memory capacity to store download data including package data delivered from the center device 3 .
- the external storage 27 has, for example, a capacity of several GB, specifically a capacity of 1 GB, 4 GB, or 8 GB.
- the external storage 27 can store both download data for rewriting the software of the ECU 19 and download data for rewriting the software of the CGW 13 . Also, the external storage 27 may store vehicle log data collected by an in-vehicle sensor, or may store image data captured by an in-vehicle camera.
- the data transfer circuit 28 controls data communication with the buses 14 to 18 and 21 in compliance with CAN data communication standards and diagnostic communication standards.
- a power supply circuit 29 inputs a battery power supply, an accessory power supply, and an ignition power supply.
- the power supply detection circuit 30 detects the voltage value of the +B power supply, the voltage value of the ACC power supply, and the voltage value of the IG power supply input by the power supply circuit 29, compares these detected voltage values with a predetermined voltage threshold, and The results are output to the microcomputers 24-26.
- the microcomputers 24 to 26 determine whether the +B power supply, ACC power supply, and IG power supply externally supplied to the CGW 13 are normal or abnormal based on the comparison result input from the power supply detection circuit 30 .
- the first microcomputer 24 has a first ROM 31, a first processor 32, a first RAM 33, and a first flash memory .
- the first ROM 31 has a configuration of a two-surface memory having two flash surfaces, and includes a first area 31a and a second area 31b as memory areas.
- the first processor 32 has a multi-core configuration and includes a first core 32a and a second core 32b.
- the first microcomputer 24 is a two-sided microcomputer having a first ROM 31 of two-sided memory.
- the second microcomputer 25 has a second ROM 35, a second processor 36, a second RAM 37, and a second flash memory 38.
- the second ROM 35 has a configuration of a two-surface memory having two flash surfaces, and includes a first area 35a and a second area 35b as memory areas.
- the second processor 36 has a multi-core configuration and includes a first core 36a and a second core 36b.
- the second microcomputer 25 is also a two-sided microcomputer having a second ROM 35 of two-sided memory.
- the third microcomputer 26 has a third ROM 39 , a third processor 40 , a third RAM 41 and a third flash memory 42 .
- the third ROM 39 has a one-plane memory configuration having one flash plane, and includes a first area 39a as a memory area.
- the third processor 40 has a single-core configuration and includes a first core 40a.
- the third microcomputer 26 is a one-plane microcomputer having a third ROM 39 of one-plane memory.
- the CGW 13 rewrites (self-reprograms) the software necessary for its own operation in accordance with the version upgrade due to functional improvements such as higher functionality and higher speed. ) is required.
- the CGW 13 determines whether the object to be rewritten is its own ECU 19 or another ECU 19 based on the specification data provided by the OEM.
- the specification data provided from the OEM to the CGW 13 includes group information, a bus load table, battery load, vehicle state during reprogramming, scene information, and ECU information.
- the group information is information indicating the group to which the ECU 19 belongs and the rewriting order. As information, it is specified that the software is rewritten in the order of ECU (ID4), ECU (ID5), and ECU (ID6).
- the bus load table is a table showing the correspondence relationship between the power supply state and the permissible transmission capacity of the bus. transmission amount.
- the battery load is information that indicates the lower limit of the remaining battery capacity of the vehicle battery that is permissible in the vehicle, and defines a numerical value that indicates the ratio.
- the vehicle state at the time of reprogramming is information indicating in what state the vehicle state is to be rewritten, and defines any one of "all parked", “all running", and "optimal”.
- the scene information is information indicating a reprogramming scene, and defines any one of recall, dealer, factory, function update notification, and forced execution.
- the ECU information is information about the ECU 19, and includes ECU_ID, reprogramming type, connection bus, connection power supply, security access key information, memory type, reprogramming method, power source self-holding time, rewrite surface information, It includes update software version, update software acquisition address, update software size, rollback software version, rollback software acquisition address, rollback software size, update software data type, and rollback software data type.
- the reprogramming type is information indicating the rewriting target, and specifies either self reprogramming or other ECU reprogramming. That is, the CGW 13 determines that the reprogramming target is the self when the reprogramming type is "self reprogramming", and determines that the reprogramming target is the ECU 19 other than the self when the reprogramming type is "other ECU reprogramming". That is, the specification data has a data structure including information that can specify whether the software stored in the CGW 13 is rewritten or the software stored in the ECU 19 is rewritten.
- the CGW 13 may determine whether the reprogramming is "self reprogramming" or "other ECU reprogramming" based on the information of the ECU_ID instead of the reprogramming type. That is, when the ECU_ID corresponding to the CGW 13 is specified as the ECU_ID, the CGW 13 determines that the rewriting target is the self. may be determined to be the ECU 19 other than itself.
- connection bus indicates the bus to which the rewrite target is connected.
- a connection power supply indicates a power supply line to which a rewriting target is connected.
- the security access key information indicates key information used for authentication for the CGW 13 to access the ECU 19 when the reprogramming type is "other ECU reprogramming", and includes random values or unique information, key patterns, and decryption operation patterns.
- the memory type indicates whether the memory mounted on the rewrite target is a one-plane memory, a pseudo two-plane memory, or a two-plane memory.
- the reprogramming method indicates whether it is rewriting by power source self-holding or rewriting by power source control.
- the power supply self-holding time indicates the time during which the power supply self-holding is continued when the reprogramming method is rewriting by the power supply self-holding.
- the rewritable surface information indicates which surface is the operational surface and which surface is the non-operational surface.
- the operational surface is also called the boot surface, and the non-operational surface is also called the rewrite surface.
- the update software version indicates the version of the update software.
- the update software acquisition address indicates the address of update software.
- the update software size indicates the data size of the update software.
- the rollback software version indicates the version of rollback software.
- the rollback software acquisition address indicates the address of rollback software.
- the rollback software size indicates the data size of rollback software.
- the update software data type indicates whether the reprogramming data for update is differential data or all data.
- the rollback software data type indicates whether the reprogram data for rollback is differential data or all data.
- the specification data can include information uniquely defined by the system.
- a first cluster 43 is configured including the first area 31 a of the first ROM 31 and the first core 32 a of the first processor 32 .
- a second cluster 44 is configured including the second area 31 b of the first ROM 31 and the second core 32 b of the first processor 32 .
- a third cluster 45 is configured including the first RAM 33 .
- the first processor 32 corresponds to a control unit.
- the first RAM 33 corresponds to an internal storage section.
- An OTA application which is a rewriting program for rewriting software, is stored in the second area 31b.
- the second core 32b determines that the reprogramming type is "another ECU reprogramming" and that the reprogramming target is the ECU 19 other than the self ECU 19, the second core 32b reads the OTA application from the second area 31b and executes it to rewrite the software.
- the ECU 19 is instructed to rewrite the software stored in the ROM of the ECU 19 to be rewritten.
- the first ROM 31 has a two-sided memory configuration having the first area 31a and the second area 31b as memory areas. If configured as a one-plane microcomputer, the capacity of the software can be increased, but there are disadvantages such as the inability to rewrite the software while the vehicle is running. Therefore, in order to make the software rewritable while the vehicle is running, the first microcomputer 24 is operated as a pseudo single-screen microcomputer during normal times other than self-reprogramming, and the first microcomputer 24 is operated as a two-screen microcomputer during self-reprogramming. It is required to operate as
- the second core 32b determines that the reprogramming type is "self-reprogramming" and that the rewriting target is the self, the second core 32b reads the OTA application from the second area 31b and performs the processing described below.
- the memory area of the first ROM 31 and the memory area of the external storage 27 are operated as a pseudo two-sided memory. In this case, there are a pattern in which the rewritten software is generated in the first ROM 31 and a pattern in which the rewritten software is generated in the external storage 27 .
- Pattern for Generating Rewritten Software in First ROM 31 Patterns for generating rewritten software in the first ROM 31 will be described with reference to FIGS. 7 to 10 .
- the second core 32b When the second core 32b identifies the presence of campaign information that defines software rewriting, and identifies that the user has consented to downloading the download data, the second core 32b causes the CGW 13 to send a download request for the package data to the DCM 12. (A1). Upon receiving the package data download request from the second core 32b, the DCM 12 transmits the received package data download request to the server 3 (A2). When the server 3 receives the download request from the DCM 12, it generates download data including the package data to be downloaded, and starts transmitting the generated download data to the DCM 12 (A3). Upon receiving the download data from the server 3, the DCM 12 starts sending the received download data to the CGW 13 (A4).
- the second core 32b determines reception of the download data from the DCM 12 to the CGW 13, it starts transferring the download data to the external storage 27 (A5), and starts saving the download data to the external storage 27 (S1 ).
- the second core 32b manages the progress of the download (S2), and upon completion of saving the download data to the external storage 27 (S3), decompresses the download data to obtain package data (S4). Reprogramming data and specification data are acquired from the acquired package data (S5).
- the second core 32b When the second core 32b reads the specification data and determines that the reprogramming type is "self-reprogramming", it transmits an activation approval request to the HMI (A6, corresponding to the first procedure).
- the activation acceptance request also serves as the installation acceptance request.
- the HMI is the mobile terminal 6 or the in-vehicle display 7, and when the user operates the mobile terminal 6 or the in-vehicle display 7 and specifies that the activation has been approved, it transmits the activation approval to the OTA application (A7).
- the activation consent also serves as the installation consent.
- the second core 32b Upon receiving the activation consent from the HMI, the second core 32b identifies the activation consent (S6), copies the OTA application to the first RAM 33, and executes it in the first RAM 33 (A8).
- the second core 32b waits until the execution condition for activation is satisfied (S7), and when it determines that the execution condition for activation is satisfied (S7: YES), it reads reprogrammed data from the external storage 27 (A9).
- the second core 32b starts transferring the read reprogram data to the first area 31a and the second area 31b of the first ROM 31 (A10). start writing to (S8). That is, the second core 32b starts the installation process.
- the OTA application generates rewritten software in the first area 31 a and the second area 31 b of the first ROM 31 .
- the second core 32b manages the progress of writing (S9), and outputs an activate instruction to the first ROM 31 when the writing of the reprogramming data to the first area 31a and the second area 31b of the first ROM 31 is completed (S10). , rewrite the software stored in the first ROM 31 (A11, corresponding to the second procedure).
- the OTA application stored in the second area 31b of the first ROM 31 is executed by the second core 32b to execute A1 to A7, and the OTA application is copied to the first RAM 33 and By being executed, A8 to A11 are executed.
- the OTA application executed in the first RAM 33 obtains the address of the external storage 27 to transfer the reprogrammed data.
- FIG. 10 shows the order of pattern processing for generating rewritten software in the first ROM 31 .
- Processing 1 to processing 4 are as follows.
- Process 1 Store the download data in the external storage 27 .
- Process 2 Copy the OTA application to the first RAM 33 and execute it in the first RAM 33 . That is, the OTA application is executed in RAM.
- Process 3 When the activation execution condition is satisfied, the reprogram data is read from the external storage 27 .
- Process 4 Write the reprogrammed data into the first ROM 31 and generate the rewritten software in the first ROM 31 .
- Processing 5 Execute the OTA application on the second core 32b (restore).
- the second core 32b Upon receiving the activation consent from the HMI, the second core 32b identifies the activation consent (S6), copies the OTA application to the first RAM 33, and executes it in the first RAM 33 (A8).
- the second core 32b reads the software before rewriting from the first ROM 31 (A21), starts transferring the read software before rewriting to the external storage 27 (A22), and reprograms data of the software before rewriting to the external storage. Writing to the storage 27 is started (S21).
- the second core 32b manages the progress of the writing (S22), and when the writing of the pre-rewritten software to the external storage 27 is completed (S23), it waits until the execution conditions for activation are met (S24).
- S24 determines that the activation execution condition is satisfied (S24: YES)
- it reads the rewritten software from the external storage 27 (A23), and transfers the read and rewritten software to the first ROM 31. (A24), and the writing of the rewritten software to the first ROM 31 is started (S25).
- the second core 32b manages the progress of writing (S26), and when the writing of the rewritten software to the first ROM 31 is completed (S27), it outputs an activation instruction to the first ROM 31, and the activation instruction is stored in the first ROM 31. Rewrite the software (A25, corresponding to the second procedure).
- FIG. 13 shows the order of pattern processing for generating rewritten software in the external storage 27 .
- Processing 1 to processing 6 are as follows.
- Process 1 Store the download data in the external storage 27 .
- Process 2 Copy the OTA application to the first RAM 33 and execute it in the first RAM 33 . That is, the OTA application is executed in RAM.
- Process 3 Read the pre-rewrite software from the first ROM 31 .
- Process 4 Write the software before rewriting to the external storage 27 and generate the software after rewriting in the external storage 27 .
- Process 5 When the execution conditions for activation are met, the rewritten software is read from the external storage 27 .
- Process 6 Write the rewritten software in the first ROM 31 .
- Process 7 Execute the OTA application on the second core 32b (restore).
- the external storage 27 for storing the download data is used, and the external storage 27 is temporarily used as a non-operating surface, so that the first ROM 31 having two flash surfaces can be reprogrammed into the memory of the first ROM 31 during self-reprogramming.
- the area and the memory area of the external storage 27 can be operated as a pseudo two-sided memory. Therefore, in normal times other than self-reprogramming, the first ROM 31 can be operated as a pseudo one-plane memory, thereby reducing the memory capacity and thus reducing the cost, and increasing the software capacity.
- the memory area of the first ROM 31 and the memory area of the external storage 27 operate as a pseudo two-sided memory, thereby shortening the activation time required for rewriting software while the vehicle is running and switching operation aspects. Also, it is possible to receive merits such as being able to perform rollback to write back the software.
- the first processor 32 rewrites the software stored in the first ROM 31 inside the first microcomputer 24 . It is also possible for the first processor 32 to rewrite the software stored in the ROM of another microcomputer.
- the first processor 32 of the first microcomputer 24 can rewrite the software stored in the second ROM 35 of the second microcomputer 25 .
- the memory area of the second ROM 35 and the memory area of the external storage 27 can be operated as a pseudo two-sided memory during self-reprogramming for the second ROM 35 that has two flash surfaces like the first ROM 31. .
- information that can identify the microcomputer that is self-reprogrammed is stored in the reprogramming type of the specification data.
- the second ROM 35 is operated as a pseudo one-plane memory during normal times other than self-reprogramming, thereby reducing the memory capacity and reducing the cost. or increase the capacity of the software.
- the memory area of the second ROM 35 and the memory area of the external storage 27 operate as a pseudo two-sided memory, thereby rewriting software while the vehicle is running and shortening the activation time required for switching operation aspects. Also, it is possible to receive merits such as being able to perform rollback to write back the software.
- the first processor 32 of the first microcomputer 24 can rewrite the software stored in the third ROM 39 of the third microcomputer 25 by coordinating the first microcomputer 24 with the third microcomputer 26 .
- the second processor 36 of the second microcomputer 25 can rewrite the software stored in the first ROM 31 of the first microcomputer 24 and the third ROM 39 of the third microcomputer 26 .
- the third processor 40 of the third microcomputer 26 can rewrite the software stored in the first ROM 31 of the first microcomputer 24 and the second ROM 35 of the second microcomputer 25 .
- the external storage 27 for saving download data is used, and when performing self-reprogramming of the first microcomputer 24, the memory area of the first ROM 31 and the memory area of the external storage 27 are used as a pseudo two-sided memory. By doing so, it is possible to rewrite the software by executing the OTA application while separating the memory area where the OTA application exists from the memory area where the software exists. As a result, even in a configuration in which the first ROM 24 of two-plane memory is used as a pseudo one-plane memory, it is possible to appropriately rewrite its own software.
- the OTA application is duplicated in the first RAM 33 and executed in the first RAM 33. It can be realized without requiring that the external storage 27 can execute the OTA application, and that the reprogrammed data or rewritten software stored in the external storage 27 can be written to the first ROM 31 at the time of activation. can. That is, in a configuration in which the external storage 27 can execute an OTA application, or in a configuration in which reprogrammed data or rewritten software stored in the external storage 27 can be written to the first ROM 31 at the time of activation, cost increases and processing becomes difficult. However, it can be realized without such a situation.
- the second core 32b duplicates the OTA application to the external storage 27, executes it on the external storage 27, and rewrites the software. Also in this case, there are a pattern in which the rewritten software is generated in the first ROM 31 and a pattern in which the rewritten software is generated in the external storage 27 .
- FIG. 14 shows the order of pattern processing for generating rewritten software in the first ROM 31 .
- Processing 1 to processing 4 are as follows.
- Process 1 Store the download data in the external storage 27 .
- Process 2 Duplicate the OTA application to the external storage 27 and execute it in the external storage 27 .
- Process 3 When the activation execution condition is satisfied, the reprogram data is read from the external storage 27 .
- Process 4 Write the reprogrammed data into the first ROM 31 and generate the rewritten software in the first ROM 31 .
- Processing 5 Execute the OTA application on the second core 32b (restore).
- FIG. 15 shows the order of pattern processing for generating rewritten software in the external storage 27 .
- Processing 1 to processing 6 are as follows.
- Process 1 Store the download data in the external storage 27 .
- Process 2 Duplicate the OTA application to the external storage 27 and execute it in the external storage 27 .
- Process 3 Read the pre-rewrite software from the first ROM 31 .
- Process 4 Write the software before rewriting to the external storage 27 and generate the software after rewriting in the external storage 27 .
- Process 5 When the execution conditions for activation are met, the rewritten software is read from the external storage 27 .
- Process 6 Write the rewritten software in the first ROM 31 .
- an OTA application exists by using the memory area of the first ROM 31 and the memory area of the external storage 27 as a pseudo two-sided memory.
- the software can be rewritten by executing the OTA application while separating the memory area from the memory area where the software resides.
- the third embodiment is based on the premise that the reprogrammed data or rewritten software stored in the external storage 27 can be written to the first ROM 31 at the time of activation.
- the second core 32b rewrites the software. Also in this case, there are a pattern in which the rewritten software is generated in the first ROM 31 and a pattern in which the rewritten software is generated in the external storage 27 .
- FIG. 16 shows the order of pattern processing for generating rewritten software in the first ROM 31 .
- Processing 1 to processing 3 are as follows.
- Process 1 Store the download data in the external storage 27 .
- Process 2 When the activation execution condition is satisfied, the reprogram data is read from the external storage 27 .
- Process 3 Write the reprogramming data in the first ROM 31 and generate the rewritten software in the first ROM 31 .
- FIG. 17 shows the order of pattern processing for generating rewritten software in the external storage 27 .
- Processing 1 to processing 5 are as follows.
- Process 1 Store the download data in the external storage 27 .
- Process 2 Read the pre-rewrite software from the first ROM 31 .
- Process 3 Write the software before rewriting to the external storage 27 and generate the software after rewriting in the external storage 27 .
- Process 4 When the execution conditions for activation are met, the rewritten software is read from the external storage 27 .
- Process 5 Write the rewritten software in the first ROM 31 .
- the OTA application exists by using the memory area of the first ROM 31 and the memory area of the external storage 27 as a pseudo two-sided memory.
- the software can be rewritten by executing the OTA application while separating the memory area from the memory area where the software resides.
- the first ROM 24 of two-plane memory is used as a pseudo one-plane memory, it is possible to appropriately rewrite its own software.
- FIG. 18 shows the order of pattern processing for generating rewritten software in the first ROM 31 .
- Processing 1 to processing 5 are as follows.
- Process 1 Store the download data in the external storage 27 .
- Process 2 When the execution conditions for activation are satisfied, the reprogramming data to be written to the first area 31a of the first ROM 31 is read from the external storage 27 .
- Process 3 Write the reprogramming data in the first area 31a of the first ROM 31, and generate the rewritten software in the first area 31a of the first ROM 31.
- FIG. 1 Store the download data in the external storage 27 .
- Process 2 When the execution conditions for activation are satisfied, the reprogramming data to be written to the first area 31a of the first ROM 31 is read from the external storage 27 .
- Process 3 Write the reprogramming data in the first area 31a of the first ROM 31, and generate the rewritten software in the first area 31a of the first ROM 31.
- Process 4 When the execution conditions for activation are satisfied, the reprogramming data to be written to the second area 31b of the first ROM 31 is read from the external storage 27 .
- Process 5 Write the reprogramming data in the second area 31b of the first ROM 31, and generate the rewritten software in the second area 31b of the first ROM 31.
- the OTA application is executed by each of the first core 32a and the second core 32b. More specifically, the OTA application in the second area 31b of the first ROM 31 is executed by the second core 32b, and the software in the first area 31a of the first ROM 31 is updated. Then, the OTA application in the first area 31a of the first ROM 31 is executed by the first core 32a, and the software in the second area 31b of the first ROM 31 is updated. By setting it as such a structure, the software of all the areas of 1st ROM31 is rewritten.
- an OTA application exists by using the memory area of the first ROM 31 and the memory area of the external storage 27 as a pseudo two-sided memory.
- the software can be rewritten by executing the OTA application while separating the memory area from the memory area where the software resides.
- FIG. 19 schematically shows the reprogramming data storage location, rewritten software generation location, and OTA application placement location for the first to fourth embodiments described above.
- the first microcomputer 51 is, for example, an SoC (System-on-Chip), includes a first area 52a to a fourth area 52d as a memory area of a first ROM, and a first core as a first processor. 53a to fourth core 53d are included.
- a first cluster 55 is defined including the first area 52a and the first core 53a
- a second cluster 56 is defined including the second area 52b and the second core 53b
- a third cluster is including the first RAM 54a. 57 are defined.
- a fourth cluster 58 is defined including the third area 52c and the third core 53c
- a fifth cluster 59 is defined including the fourth area 52d and the fourth core 53d
- a sixth cluster is including the second RAM 54b. 60 are defined.
- the first cluster 55, the second cluster 56, and the third cluster 57 work together to function as a high-performance computing unit
- the fourth cluster 58, the fifth cluster 59, and the sixth cluster 60 work together to function as a medium-performance computing unit. It functions as a calculation part.
- the external storage 27 when used to perform self-reprogramming of the first microcomputer 51, by using the memory area of the first ROM and the memory area of the external storage 27 as a pseudo two-sided memory, The software can be rewritten by executing the OTA application while separating the memory area where the OTA application exists from the memory area where the software exists.
- the tool 23 is connected to the DLC connector 22, and the download data transmitted from the tool 23 is downloaded via the DLC connector 22. By doing so, it can be applied to the case of rewriting software by wire.
- the CGW 13 determines whether the rewriting target is its own ECU 19 or a non-self ECU 19 based on the specification data provided by the OEM.
- the format of the specification data shown in the embodiment is only an example, and information indicating whether the rewriting target is the own ECU 19 or another ECU 19 is transmitted from the center device 3 as data separate from the specification data. can be
- the controls and patterns thereof described in this disclosure may be implemented by a dedicated computer provided by configuring a processor and memory programmed to perform one or more functions embodied by the computer program.
- the controller and its patterns described in this disclosure may be implemented by a dedicated computer provided by configuring the processor with one or more dedicated hardware logic circuits.
- the control unit and its pattern described in this disclosure can be implemented by a combination of a processor and memory programmed to perform one or more functions and a processor configured by one or more hardware logic circuits. It may also be implemented by one or more dedicated computers configured.
- the computer program may also be stored as computer-executable instructions on a computer-readable non-transitional tangible storage medium.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Stored Programmes (AREA)
Abstract
車両用電子制御装置(13)は、プログラムやデータを含むソフトウェアを格納可能であってメモリ領域として第1領域及び第2領域を含む不揮発性メモリ(31)と、第1コア及び第2コアを含み、ソフトウェアを書換えるための書換えプログラムを第1コア及び第2コアのうち少なくとも何れかで実行する制御部(32)と、を有するマイコン(24)と、マイコンの外部に設けられ、ソフトウェアを更新するためのリプログデータを一時的に記憶する外部記憶部(27)と、を備える。制御部は、諸元データに基づいて自己のソフトウェアの書換えであると判定した場合に、外部記憶部のメモリ領域を用い、不揮発性メモリに格納されているソフトウェアを書換える。
Description
本出願は、2021年4月14日に出願された日本出願番号2021-068430号に基づくもので、ここにその記載内容を援用する。
本開示は、車両用電子制御装置、書換えプログラム及びデータ構造に関する。
近年、運転支援機能や自動運転機能等の車両制御の多様化に伴い、車両の電子制御装置(以下、ECU(Electronic Control Unit)と称する)に搭載される車両制御や診断等のプログラムやデータを含むソフトウェアの規模が増大している。又、機能改善等によるバージョンアップに伴い、ECUの動作に必要なソフトウェアを書換える(リプログする)機会も増えつつある。一方、通信ネットワークの進展等に伴い、コネクッテッドカーの技術も普及している。このような事情から、車両側にゲートウェイECUとして機能するCGW(Central Gate Way)が設けられ、CGWにおいて、センター装置からダウンロードしたリプログデータをECUに配信し、ECUのソフトウェアをOTA(Over The Air)により書換える技術が提案されている(例えば特許文献1参照)。
CGWにおいては、ソフトウェアを書換えるための書換えプログラムを実行することで、ソフトウェアの書換えをECUに指示し、ECUの不揮発性メモリに格納されているソフトウェアを書換える。不揮発性メモリの構成として、フラッシュ面を1面で持つ1面メモリと、フラッシュ面を2面で持つ2面メモリとがある。2面メモリを有するマイクロコンピュータ(以下、2面マイコンと称する)は、車両走行中にソフトウェアを書換えたり、運用面の切換えに要するアクティベート時間を短縮したり、ソフトウェアを書戻すロールバックを行えたりする等のメリットを受ける。一方、これらのメリットを受けるには、メモリ領域の全体を常に2面に分離しておく必要があり、例えば16MByteの容量を持つ不揮発性メモリの場合、ソフトウェアのメモリ領域として活用するのは8MByteであり、半分のメモリ領域しか使えることができない。又、2面マイコンにおいて、ソフトウェアをメモリ領域の全体に配置し、疑似的な1面メモリを有するマイコンとして構成すると、メモリ容量の削減による低コスト化を図ったり、ソフトウェアの容量を増やしたりすることができるが、車両走行中にソフトウェアを書換えることができない等のデメリットを受ける。
一方、CGWにおいても、高機能化や高速化の機能改善等によるバージョンアップに伴い、自己の動作に必要なソフトウェアを書換える(セルフリプログする)ことが要求されている。しかしながら、CGWに搭載されているマイコンが1面メモリを有するマイコン(以下、1面マイコンと称する)であると、1つのメモリ領域に書換えプログラムとソフトウェアとが共存しているので、ソフトウェアを書換えることができない。又、CGWに搭載されているマイコンが2面マイコンであっても上記したように疑似的な1面マイコンとして構成すると、この場合も、疑似的な1つのメモリ領域に書換えプログラムとソフトウェアとが共存するので、ソフトウェアを書換えることができない。
本開示は、1面メモリの不揮発性メモリを搭載している構成、又は搭載している2面メモリの不揮発性メモリを疑似的な1面メモリとして使用している構成でも、自己のソフトウェアを適切に書換えることを目的とする。
本開示の一態様によれば、マイコンは、プログラムやデータを含むソフトウェアを格納可能であってメモリ領域として第1領域及び第2領域を含む不揮発性メモリと、第1コア及び第2コアを含み、ソフトウェアを書換えるための書換えプログラムを第1コア及び第2コアのうち少なくとも何れかで実行する制御部と、を有する。外部記憶部は、マイコンの外部に設けられ、ソフトウェアを更新するためのリプログデータを一時的に記憶する。制御部は、諸元データに基づいて自己のソフトウェアの書換えであると判定した場合に、外部記憶部のメモリ領域を用い、不揮発性メモリに格納されているソフトウェアを書換える。
自己のソフトウェアを書換える際に、不揮発性メモリのメモリ領域と、マイコンの外部に設けられている外部記憶部のメモリ領域とを疑似的な2面メモリとして使用することで、書換えプログラムが存在するメモリ領域と、ソフトウェアが存在するメモリ領域とを分離することができる。書換えプログラムが存在するメモリ領域と、ソフトウェアが存在するメモリ領域とを分離した状態で、書換えプログラムを実行してソフトウェアを書換えることができる。これにより、1面メモリの不揮発性メモリを搭載している構成、又は搭載している2面メモリの不揮発性メモリを疑似的な1面メモリとして使用している構成でも、自己のソフトウェアを適切に書換えることができる。
本開示についての上記目的及びその他の目的、特徴や利点は、添付の図面を参照しながら下記の詳細な記述により、より明確になる。その図面は、
図1は、第1実施形態の全体構成を示す図であり、
図2は、CGWの機能ブロック図であり、
図3は、マイコンの機能ブロック図であり、
図4は、諸元データを示す図であり、
図5は、バス負荷テーブルを示す図であり、
図6は、マイコン内部のクラスタを示す図であり、
図7は、処理の流れを示す図であり、
図8は、処理の流れを示す図であり、
図9は、フローチャートであり、
図10は、処理の順序を説明する図であり、
図11は、処理の順序を説明する図であり、
図12は、フローチャートであり、
図13は、処理の順序を説明する図であり、
図14は、第2実施形態を示し、処理の順序を説明する図であり、
図15は、処理の順序を説明する図であり、
図16は、第3実施形態を示し、処理の順序を説明する図であり、
図17は、処理の順序を説明する図であり、
図18は、第4実施形態を示し、処理の順序を説明する図であり、
図19は、各実施形態の内容を説明する図であり、
図20は、マイコン内部のクラスタを示す図である。
以下、幾つかの実施形態について図面を参照して説明する。以下に示す各実施形態において、先行する実施形態で説明した内容に対応する部分には同一の参照符号を付し、重複する説明を省略することがある。
(第1実施形態)
以下、第1実施形態について図1から図13を参照して説明する。車両用電子制御システムは、電子制御装置(以下、ECU(Electronic Control Unit)と称する)に搭載されている車両制御や診断等のソフトウェアをOTA(Over The Air)により書換え可能なシステムである。ソフトウェアは、車両制御や診断等の機能を実現するためのプログラムやデータを含み、アプリケーションと表現することもできる。本実施形態では、車両制御や診断等のソフトウェアを書換える場合について説明するが、例えば地図アプリや当該地図アプリで使用される地図データ等を書換える場合にも適用することができる。
図1に示すように、車両用電子制御システム1は、通信ネットワーク2側のセンター装置3と、車両側の車両側システム4及び表示端末5とを有する。通信ネットワーク2は、例えば4G回線等による移動体通信ネットワーク、インターネット、WiFi(Wireless Fidelity)(登録商標)等を含んで構成される。
表示端末5は、ユーザからの操作入力を受付ける機能や各種画面を表示する機能を有する端末であり、例えばユーザが携帯可能なスマートフォンやタブレット等の携帯端末6、車室内に配置されている車載ディスプレイ7である。携帯端末6は、移動体通信ネットワークの通信圏内であれば、通信ネットワーク2を介してセンター装置3とデータ通信可能である。車載ディスプレイ7は、車両側システム4に接続されており、ナビゲーション機能を兼用する構成であっても良い。又、車載ディスプレイ7は、ECUの機能を有する車載ディスプレイECUであっても良し、センターディスプレイやメータディスプレイ等への表示を制御する機能を有していても良い。
ユーザは、車室外であって移動体通信ネットワークの通信圏内であれば、ソフトウェアの書換えに関与する各種画面を携帯端末6により確認しながら操作入力を行い、ソフトウェアの書換えに関与する手続きを可能である。ユーザは、車室内では、ソフトウェアの書換えに関与する各種画面を車載ディスプレイ7により確認しながら操作入力を行い、ソフトウェアの書換えに関与する手続きを可能である。即ち、ユーザは、車室外と車室内で携帯端末6と車載ディスプレイ7を使い分け、ソフトウェアの書換えに関与する手続きを可能である。
センター装置3は、車両用電子制御システム1において通信ネットワーク2側のソフトウェアの更新機能を統括し、OTAセンターとして機能する。センター装置3は、ファイルサーバ8と、ウェブサーバ9と、管理サーバ10とを有し、各サーバ8~10が相互にデータ通信可能に構成されている。即ち、センター装置3は、機能毎に異なる複数のサーバを含んで構成されている。
ファイルサーバ8は、センター装置3から車両側システム4に配信されるソフトウェアのファイルを管理するサーバである。ファイルサーバ8は、センター装置3から車両側システム4に配信されるソフトウェアの提供事業者であるサプライヤ等から提供されるリプログデータ、OEM(Original Equipment Manufacturer)から提供される諸元データ、車両側システム4から取得する車両状態等を管理する。ファイルサーバ8は、通信ネットワーク2を介して車両側システム4との間でデータ通信可能であり、車両側システム4からパッケージデータのダウンロード要求を受信すると、リプログデータと諸元データとが1つのファイルにパッケージ化されたパッケージデータを含むダウンロードデータを車両側システム4に送信する。ダウンロードデータは、圧縮されているzip形式のファイルを含む。尚、ファイルサーバ8は、車両側システム4からダウンロード要求を受信すると、リプログデータと諸元データとを別々のファイルとして車両側システム4に送信しても良い。
ウェブサーバ9は、ウェブ情報を管理するサーバである。ウェブサーバ9は、携帯端末6等が有するウェブブラウザからの要求に応じて自己が管理するウェブデータを送信する。管理サーバ10は、ソフトウェアの書換えのサービスに登録しているユーザの個人情報、車両毎のソフトウェアの書換え履歴等を管理するサーバである。
車両側システム4は、車両用マスタ装置11を有する。車両用マスタ装置11は、車両用電子制御システム1において車両側のソフトウェアの更新機能を統括し、OTAマスタとして機能する。車両用マスタ装置11は、DCM(Data Communication Module)12と、CGW(Central Gate Way)13とを有する。DCM12は、センター装置3との間で通信ネットワーク2を介してデータ通信を無線通信により行う。
CGW13は、ゲートウェイECUとして機能し、車両用電子制御装置に相当する。DCM12とCGW13とは、第1バス14を介してデータ通信可能に接続されている。図1では、DCM12と車載ディスプレイ7が同一の第1バス14に接続されている構成を例示しているが、DCM12と車載ディスプレイ7とが別々のバスに接続されている構成でも良い。又、DCM12の機能の一部又は全体をCGW13が有する構成でも良いし、CGW13の機能の一部又は全体をDCM12が有する構成でも良い。即ち、車両用マスタ装置11において、DCM12とCGW13との機能分担がどのように構成されていても良い。車両用マスタ装置11は、DCM12及びCGW13の2つのECUから構成されても良いし、DCM12の機能とCGW13の機能とを有する1つの統合ECUで構成されても良い。
CGW13には、第1バス14に加え、第2バス15と、第3バス16と、第4バス17と、第5バス18とが車内側のバスとして接続されており、バス15~17を介して各種ECU19が接続されていると共に、バス18を介して電源管理ECU20が接続されている。
第2バス15は、例えばボディ系ネットワークのバスである。第2バス15に接続されているECU19は、ボディ系の制御を行うECUである。ボディ系の制御を行うECUは、例えばドアのロック/アンロックを制御するドアECU、メータディスプレイへの表示を制御するメータECU、エアコンの駆動を制御するエアコンECU、ウィンドウの開閉を制御するウィンドウECU、車両の盗難防止のために駆動するセキュリティECU等である。
第3バス16は、例えば走行系ネットワークのバスである。第3バス16に接続されているECU19は、走行系の制御を行うECUである。走行系の制御を行うECUは、例えばエンジンの駆動を制御するエンジンECU、ブレーキの駆動を制御するブレーキECU、自動変速機の駆動を制御するECT(Electronic Controlled Transmission)ECU、パワーステアリングの駆動を制御するパワーステアリングECU等である。
第4バス17は、例えばマルチメディア系ネットワークのバスである。第4バス17に接続されているECU19は、マルチメディア系の制御を行うECUである。マルチメディア系の制御を行うECUは、例えばナビゲーションシステムを制御するためのナビゲーションECU、電子式料金収受システム(ETC(Electronic Toll Collection System、登録商標))を制御するETCECU等である。バス15~17は、ボディ系ネットワークのバス、走行系ネットワークのバス、マルチメディア系ネットワークのバス以外の系統のバスであっても良い。又、バスの本数やECU19の個数は例示した構成に限らない。
電源管理ECU20は、DCM12、CGW13、各種ECU19等に供給する電源を管理するECUである。
電源管理ECU20は、DCM12、CGW13、各種ECU19等に供給する電源を管理するECUである。
CGW13には、第6バス21が車外側のバスとして接続されている。第6バス21には、サービスツールとして機能するツール23が着脱可能に接続されるDLC(Data Link Coupler)コネクタ22が接続されている。車内側のバス14~18及び車外側のバス21は、例えばCAN(Controller Area Network、登録商標)バスにより構成されており、CGW13は、CANのデータ通信規格や診断通信規格(UDS(Unified Diagnosis Services):ISO14229)にしたがってDCM12と、各種ECU19と、ツール23との間でデータ通信を行う。尚、DCM12とCGW13とがイーサーネットにより接続されていても良いし、DLCコネクタ22とCGW13とがイーサーネットにより接続されても良い。
DCM12は、ファイルサーバ8からダウンロードデータをダウンロードすると、そのダウンロードしたダウンロードデータをCGW13に送信する。CGW13は、DCM12からダウンロードデータを受信すると、その受信したダウンロードデータを解凍してパッケージデータを取得し、その取得したパッケージデータからリプログデータ及び諸元データを取得する。
CGW13は、ソフトウェアの書換え対象がECU19である場合には、リプログデータを書込むインストールを指示可能な条件が成立していることを条件とし、その取得したリプログデータのインストールをソフトウェアの書換え対象のECU19に指示する。インストールを指示可能な条件とは、インストールの承諾が得られていること、CGW13がDCM12を介してセンター装置3とデータ通信可能であること、車両状態がインストール可能な状態であること、書換え対象のECU19がインストール可能な状態であること、リプログデータが正常なデータであること等である。書換え対象のECU19は、CGW13からリプログデータのインストールが指示されると、リプログデータのインストールを実行する。
CGW13は、書換え対象のECU19においてリプログデータのインストールが完了すると、インストール完了後のソフトウェアを有効とするアクティベートを指示可能な条件が成立していることを条件とし、アクティベートを書換え対象のECU19に指示する。アクティベートを指示可能な条件とは、アクティベートの承諾が得られていること、車両状態がアクティベート可能な状態であること、書換え対象のECU19がアクティベート可能な状態であること等である。書換え対象のECU19は、CGW13からアクティベートが指示されると、アクティベートを実行する。
図2に示すように、CGW13は、電気的な機能ブロックとして、3個のマイクロコンピュータ(以下、マイコンと称する)24~26と、外部ストレージ27と、データ転送回路28と、電源回路29と、電源検出回路30とを有する。3個のマイコン24~26は、同一基板に実装されていても良いし異なる基板に実装されていても良い。第1マイコン24と第2マイコン25とはデータ通信可能に接続され、第2マイコン25と第3マイコン26とはデータ通信可能に接続されている。マイコン24~26は、仕様が互いに異なり、互いに連携してCGW13の動作を実現する。マイコン24~26は、それぞれ非遷移的実体的記憶媒体に格納されている各種制御プログラムを実行して各種処理を行い、連携してCGW13の動作を制御する。本実施形態では、CGW13に3個のマイコン24~26が搭載されている構成を例示しているが、CGW13に搭載されるマイコンのスペック、個数、組み合わせは、CGW13に要求される処理能力に応じて決定される。即ち、CGW13に比較的高い処理能力が要求される場合であれば、比較的高いスペックのマイコンが採用されたり、分散処理や並列処理を実現するために複数のマイコンが採用されたりする。
外部ストレージ27は、マイコン24~26とは別に設けられ、第1マイコン24と専用線を介して直接的に接続され、当該第1マイコン24とデータ通信可能に接続されていると共に、第1マイコン24を介して第2マイコン25や第3マイコン26と間接的に接続され、第1マイコン24を介して第2マイコン25や第3マイコン26とデータ通信可能に接続されている。外部ストレージ27は、例えばeMMC(embedded Multi Media Card)、NorFlashであり、外部記憶部に相当する。外部ストレージ27は、センター装置3から配信されるパッケージデータを含むダウンロードデータを記憶可能な十分なメモリ容量を有する。外部ストレージ27は、例えば数GBの容量、具体的には、1GB、4GB、又は8GB等の容量を持つ。外部ストレージ27は、ECU19のソフトウェアを書換えるためのダウンロードデータ、CGW13のソフトウェアを書換えるためのダウンロードデータの何れも記憶可能である。又、外部ストレージ27は、車載センサにより収集される車両ログデータを記憶しても良いし、車載カメラにより撮影された画像データを記憶しても良い。
データ転送回路28は、バス14~18,21との間のCANのデータ通信規格や診断通信規格に準拠したデータ通信を制御する。電源回路29は、バッテリ電源、アクセサリ電源、イグニッション電源を入力する。電源検出回路30は、電源回路29が入力する+B電源の電圧値、ACC電源の電圧値、IG電源の電圧値を検出し、これらの検出した電圧値を所定の電圧閾値と比較し、その比較結果をマイコン24~26に出力する。マイコン24~26は、電源検出回路30から入力する比較結果により、外部からCGW13に供給されている+B電源、ACC電源、IG電源が正常であるか異常であるかを判定する。
図3に示すように、第1マイコン24は、第1ROM31と、第1プロセッサ32と、第1RAM33と、第1フラッシュメモリ34とを有する。第1ROM31は、フラッシュ面を2面で持つ2面メモリの構成であり、メモリ領域として第1領域31aと第2領域31bとを含む。第1プロセッサ32は、マルチコアの構成であり、第1コア32aと第2コア32bとを含む。第1マイコン24は、2面メモリの第1ROM31を有する2面マイコンである。
第2マイコン25は、第2ROM35と、第2プロセッサ36と、第2RAM37と、第2フラッシュメモリ38とを有する。第2ROM35は、フラッシュ面を2面で持つ2面メモリの構成であり、メモリ領域として第1領域35aと第2領域35bとを含む。第2プロセッサ36は、マルチコアの構成であり、第1コア36aと第2コア36bとを含む。第2マイコン25も、第1マイコン24と同様に、2面メモリの第2ROM35を有する2面マイコンである。
第3マイコン26は、第3ROM39と、第3プロセッサ40と、第3RAM41と、第3フラッシュメモリ42とを有する。第3ROM39は、フラッシュ面を1面で持つ1面メモリの構成であり、メモリ領域として第1領域39aを含む。第3プロセッサ40は、シングルコアの構成であり、第1コア40aを含む。第3マイコン26は、第1マイコン24及び第2マイコン25とは異なり、1面メモリの第3ROM39を有する1面マイコンである。
CGW13は、上記したように書換え対象のECU19のソフトウェアを書換えることに加え、高機能化や高速化の機能改善等によるバージョンアップに伴い、自己の動作に必要なソフトウェアを書換える(セルフリプログする)ことが要求されている。CGW13は、OEMから提供される諸元データに基づいて書換え対象が自己であるか自己以外のECU19であるかを判定する。
図4に示すように、OEMからCGW13に提供される諸元データには、グループ情報と、バス負荷テーブルと、バッテリ負荷と、リプログ時の車両状態と、シーン情報と、ECU情報とを含む。グループ情報は、ECU19の属するグループ及び書換え順序を示す情報であり、例えば第1グループ情報として、ECU(ID1)、ECU(ID2)、ECU(ID3)の順序でソフトウェアを書換える旨、第2グループ情報として、ECU(ID4)、ECU(ID5)、ECU(ID6)の順序でソフトウェアを書換える旨を規定している。バス負荷テーブルは、図5に示すように、電源状態とバスの伝送許容量との対応関係を示すテーブルであり、バス毎の最大伝送許容量に対して伝送可能な車両制御データとリプログデータとの伝送量を規定している。
バッテリ負荷は、車両において許容可能な車両バッテリのバッテリ残量の下限値を示す情報であり、割合を示す数値を規定している。リプログ時の車両状態は、車両状態がどのような状態で書換えを行うかを示す情報であり、全て駐車中、全て走行中、最適の何れかを規定している。シーン情報は、リプログのシーンを示す情報であり、リコール、ディーラー、工場用、機能更新通知、強制実行の何れかを規定している。
ECU情報は、ECU19に関する情報であり、ECU_IDと、リプログ種別と、接続バスと、接続電源と、セキュリティアクセス鍵情報と、メモリ種別と、リプログ方法と、電源自己保持時間と、書換え面情報と、更新ソフトウェアバージョンと、更新ソフトウェア取得アドレスと、更新ソフトウェアサイズと、ロールバックソフトウェアバージョンと、ロールバックソフトウェア取得アドレスと、ロールバックソフトウェアサイズと、更新ソフトウェアデータ種別と、ロールバックソフトウェアデータ種別とを含む。
リプログ種別は、書換え対象を示す情報であり、セルフリプログ、他ECUリプログの何れかを規定している。即ち、CGW13は、リプログ種別が「セルフリプログ」であるときには書換え対象が自己であると判定し、リプログ種別が「他ECUリプログ」であるときには書換え対象が自己以外のECU19であると判定する。即ち、諸元データは、CGW13に格納されているソフトウェアの書換えであるかECU19に格納されているソフトウェアの書換えであるかを特定可能な情報を含むデータ構造である。尚、CGW13は、リプログ種別の代わりにECU_IDの情報に基づいて「セルフリプログ」であるか「他ECUリプログ」であるかを判定しても良い。即ち、CGW13は、ECU_IDとしてCGW13に対応するECU_IDが指定されている場合は、書換え対象が自己であると判定し、ECU_IDとしてCGW13に対応するECU_ID以外のECU_IDが指定されている場合は、書換え対象が自己以外のECU19であると判定しても良い。
接続バスは、書換え対象が接続されるバスを示す。接続電源は、書換え対象が接続される電源ラインを示す。セキュリティアクセス鍵情報は、リプログ種別が「他ECUリプログ」であるときに、CGW13がECU19にアクセスするための認証に用いる鍵情報を示し、乱数値又はユニークな情報、鍵パターン、復号演算パターンを含む。メモリ種別は、書換え対象に搭載されているメモリが1面メモリ、疑似2面メモリ、2面メモリの何れであるかを示す。リプログ方法は、電源自己保持による書換え又は電源制御による書換えの何れであるかを示す。電源自己保持時間は、リプログ方法が電源自己保持による書換えである場合に、電源自己保持を継続する時間を示す。書換え面情報は、何れの面が運用面であり、何れの面が非運用面であるかを示す。運用面は起動面とも称し、非運用面は書換え面とも称する。
更新ソフトウェアバージョンは、更新ソフトウェアのバージョンを示す。更新ソフトウェア取得アドレスは、更新ソフトウェアのアドレスを示す。更新ソフトウェアサイズは、更新ソフトウェアのデータサイズを示す。ロールバックソフトウェアバージョンは、ロールバックソフトウェアのバージョンを示す。ロールバックソフトウェア取得アドレスは、ロールバックソフトウェアのアドレスを示す。ロールバックソフトウェアサイズは、ロールバックソフトウェアのデータサイズを示す。更新ソフトウェアデータ種別は、更新用のリプログデータが差分データ又は全データの何れの種別であるかを示す。ロールバックソフトウェアデータ種別は、ロールバック用のリプログデータが差分データ又は全データの何れの種別であるかを示す。尚、諸元データには、これらの情報の他に、システムで独自に定義した情報を含むことが可能である。
以下、諸元データのリプログ種別が「セルフリプログ」であり、CGW13が自己のソフトウェアを書換える場合について説明する。ここでは、第1マイコン24の第1ROM31に格納されているソフトウェアを書換える場合について説明する。図6に示すように、第1マイコン24において、第1ROM31の第1領域31aと第1プロセッサ32の第1コア32aとを含んで第1クラスタ43が構成される。第1ROM31の第2領域31bと第1プロセッサ32の第2コア32bとを含んで第2クラスタ44が構成される。第1RAM33を含んで第3クラスタ45が構成される。第1プロセッサ32は、制御部に相当する。第1RAM33は、内部記憶部に相当する。
第2領域31bにはソフトウェアを書換えるための書換えプログラムであるOTAアプリが格納されている。第2コア32bは、リプログ種別が「他ECUリプログ」であり、書換え対象が自己以外のECU19であると判定すると、第2領域31bからOTAアプリを読込んで実行し、ソフトウェアの書換えを書換え対象のECU19に指示し、書換え対象のECU19のROMに格納されているソフトウェアを書換える。
上記したように第1ROM31はメモリ領域として第1領域31aと第2領域31bとを有する2面メモリの構成であるが、ソフトウェアをメモリ領域の全体に配置することで第1マイコン24を疑似的な1面マイコンとして構成すると、ソフトウェアの容量を増やすことができるが、車両走行中にソフトウェアを書換えることができない等のデメリットを受ける。そのため、車両走行中にソフトウェアを書換え可能とするには、セルフリプログ時以外の通常時では第1マイコン24を疑似的な1面マイコンとして動作させ、セルフリプログ時では第1マイコン24を2面マイコンとして動作させることが要求される。
このような事情から、第2コア32bは、リプログ種別が「セルフリプログ」であり、書換え対象が自己であると判定すると、第2領域31bからOTAアプリを読込み、以下に説明する処理を行うことで、セルフリプログ時に第1ROM31のメモリ領域と外部ストレージ27のメモリ領域とを疑似的な2面メモリとして動作させる。この場合、書換え後のソフトウェアを第1ROM31で生成するパターンと、書換え後のソフトウェアを外部ストレージ27で生成するパターンとがある。
(1)書換え後のソフトウェアを第1ROM31で生成するパターン
書換え後のソフトウェアを第1ROM31で生成するパターンについて図7から図10を参照して説明する。
書換え後のソフトウェアを第1ROM31で生成するパターンについて図7から図10を参照して説明する。
第2コア32bは、ソフトウェアの書換えを規定するキャンペーン情報の有りを特定し、ユーザがダウンロードデータをダウンロードする旨の承諾を行ったことを特定すると、パッケージデータのダウンロード要求をCGW13からDCM12に送信させる(A1)。DCM12は、第2コア32bからパッケージデータのダウンロード要求を受信すると、その受信したパッケージデータのダウンロード要求をサーバ3に送信する(A2)。サーバ3は、DCM12からダウンロード要求を受信すると、ダウンロードする対象のパッケージデータを含むダウンロードデータを生成し、その生成したダウンロードデータのDCM12への送信を開始する(A3)。DCM12は、サーバ3からダウンロードデータを受信すると、その受信したダウンロードデータのCGW13への送信を開始する(A4)。
第2コア32bは、DCM12からCGW13へのダウンロードデータの受信を判定すると、そのダウンロードデータの外部ストレージ27への転送を開始し(A5)、ダウンロードデータの外部ストレージ27への保存を開始する(S1)。第2コア32bは、ダウンロードの進捗状態を管理し(S2)、そのダウンロードデータの外部ストレージ27への保存を完了すると(S3)、ダウンロードデータを解凍してパッケージデータを取得し(S4)、その取得したパッケージデータからリプログデータ及び諸元データを取得する(S5)。
第2コア32bは、諸元データを読込み、リプログ種別が「セルフリプログ」であると判定すると、アクティベート承諾要求をHMIに送信する(A6、第1手順に相当する)。この場合、アクティベート承諾要求はインストール承諾要求も兼ねている。HMIは、携帯端末6や車載ディスプレイ7であり、ユーザが携帯端末6や車載ディスプレイ7を操作し、アクティベートの承諾を行った旨を特定すると、アクティベート承諾をOTAアプリに送信する(A7)。この場合、アクティベート承諾はインストール承諾も兼ねている。
第2コア32bは、HMIからアクティベート承諾を受信すると、アクティベート承諾を特定し(S6)、OTAアプリを第1RAM33に複製して第1RAM33で実行させる(A8)。第2コア32bは、アクティベートの実行条件の成立を待機し(S7)、アクティベートの実行条件の成立を判定すると(S7:YES)、外部ストレージ27からリプログデータを読込む(A9)。第2コア32bは、その読込んだリプログデータの第1ROM31の第1領域31a及び第2領域31bへの転送を開始し(A10)、リプログデータの第1ROM31の第1領域31a及び第2領域31bへの書込みを開始する(S8)。即ち、第2コア32bは、インストールの処理を開始する。OTAアプリは、書換え後のソフトウェアを第1ROM31の第1領域31a及び第2領域31bで生成する。
第2コア32bは、書込みの進捗状態を管理し(S9)、リプログデータの第1ROM31の第1領域31a及び第2領域31bへの書込みを完了すると(S10)、アクティベート指示を第1ROM31に出力し、第1ROM31に格納されているソフトウェアを書換える(A11、第2手順に相当する)。上記した処理では、第1ROM31の第2領域31bに記憶されているOTAアプリが第2コア32bで実行されることでA1からA7が実行され、OTAアプリが第1RAM33に複製されて当該第1RAM33で実行されることでA8からA11が実行される。第1RAM33で実行されたOTAアプリは、外部ストレージ27のアドレスを取得することで、リプログデータのデータ転送を実行する。
図10は、書換え後のソフトウェアを第1ROM31で生成するパターンの処理の順序を示している。処理1から処理4は次の通りである。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:OTAアプリを第1RAM33に複製して当該第1RAM33で実行させる。即ち、OTAアプリをRAM実行する。
処理3:アクティベートの実行条件が成立すると、外部ストレージ27からリプログデータを読込む。
処理4:リプログデータを第1ROM31に書込み、書換え後のソフトウェアを第1ROM31で生成する。
処理5:OTAアプリを第2コア32bで実行する(元に戻す)。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:OTAアプリを第1RAM33に複製して当該第1RAM33で実行させる。即ち、OTAアプリをRAM実行する。
処理3:アクティベートの実行条件が成立すると、外部ストレージ27からリプログデータを読込む。
処理4:リプログデータを第1ROM31に書込み、書換え後のソフトウェアを第1ROM31で生成する。
処理5:OTAアプリを第2コア32bで実行する(元に戻す)。
(2)書換え後のソフトウェアを外部ストレージ27で生成するパターン
書換え後のソフトウェアを外部ストレージ27で生成するパターンについて図11から図13を参照して説明する。
書換え後のソフトウェアを外部ストレージ27で生成するパターンについて図11から図13を参照して説明する。
第2コア32bは、HMIからアクティベート承諾を受信すると、アクティベート承諾を特定し(S6)、OTAアプリを第1RAM33に複製して第1RAM33で実行する(A8)。第2コア32bは、第1ROM31から書換え前のソフトウェアを読込み(A21)、その読込んだ書換え前のソフトウェアの外部ストレージ27への転送を開始し(A22)、書換え前のソフトウェアのリプログデータの外部ストレージ27への書込みを開始する(S21)。
第2コア32bは、書込みの進捗状態を管理し(S22)、書換え前のソフトウェアの外部ストレージ27への書込みを完了すると(S23)、アクティベートの実行条件の成立を待機する(S24)。第2コア32bは、アクティベートの実行条件の成立を判定すると(S24:YES)、外部ストレージ27から書換え後のソフトウェアを読込み(A23)、その読込んだ書換え後のソフトウェアの第1ROM31への転送を開始し(A24)、書換え後のソフトウェアを第1ROM31への書込みを開始する(S25)。
第2コア32bは、書込みの進捗状態を管理し(S26)、書換え後のソフトウェアの第1ROM31への書込みを完了すると(S27)、アクティベート指示を第1ROM31に出力し、第1ROM31に格納されているソフトウェアを書換える(A25、第2手順に相当する)。
図13は、書換え後のソフトウェアを外部ストレージ27で生成するパターンの処理の順序を示している。処理1から処理6は次の通りである。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:OTAアプリを第1RAM33に複製して当該第1RAM33で実行させる。即ち、OTAアプリをRAM実行する。
処理3:第1ROM31から書換え前のソフトウェアを読込む。
処理4:書換え前のソフトウェアを外部ストレージ27に書込み、書換え後のソフトウェアを外部ストレージ27で生成する。
処理5:アクティベートの実行条件が成立すると、外部ストレージ27から書換え後のソフトウェアを読込む。
処理6:書換え後のソフトウェアを第1ROM31に書込む。
処理7:OTAアプリを第2コア32bで実行する(元に戻す)。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:OTAアプリを第1RAM33に複製して当該第1RAM33で実行させる。即ち、OTAアプリをRAM実行する。
処理3:第1ROM31から書換え前のソフトウェアを読込む。
処理4:書換え前のソフトウェアを外部ストレージ27に書込み、書換え後のソフトウェアを外部ストレージ27で生成する。
処理5:アクティベートの実行条件が成立すると、外部ストレージ27から書換え後のソフトウェアを読込む。
処理6:書換え後のソフトウェアを第1ROM31に書込む。
処理7:OTAアプリを第2コア32bで実行する(元に戻す)。
CGW13において、ダウンロードデータを保存する外部ストレージ27を利用し、外部ストレージ27を一時的に非運用面として利用することで、フラッシュ面を2面で持つ第1ROM31に対し、セルフリプログ時に第1ROM31のメモリ領域と外部ストレージ27のメモリ領域とを疑似的な2面メモリとして動作させることができる。そのため、セルフリプログ時以外の通常時では、第1ROM31を疑似的な1面メモリとして動作させることで、メモリ容量の削減による低コスト化を図ったり、ソフトウェアの容量を増やしたりすることができる。セルフリプログ時では、第1ROM31のメモリ領域と外部ストレージ27のメモリ領域とを疑似的な2面メモリとして動作させることで、車両走行中にソフトウェアを書換えたり、運用面の切換えに要するアクティベート時間を短縮したり、ソフトウェアを書戻すロールバックを行えたりする等のメリットを受けることができる。
以上は、第1マイコン24の内部において第1プロセッサ32が第1ROM31に格納されているソフトウェアを書換える場合を説明したが、第1マイコン24が別のマイコンと連携することで、第1マイコン24の第1プロセッサ32が別のマイコンのROMに格納されているソフトウェアを書換えることも可能である。例えば第1マイコン24が第2マイコン25と連携することで、第1マイコン24の第1プロセッサ32が第2マイコン25の第2ROM35に格納されているソフトウェアを書換えることも可能である。その場合、第1ROM31と同様に、フラッシュ面を2面で持つ第2ROM35に対し、セルフリプログ時に第2ROM35のメモリ領域と外部ストレージ27のメモリ領域とを疑似的な2面メモリとして動作させることができる。尚、本実施形態のようにセルフリプログの対象となり得るマイコンが複数の場合には、上記した諸元データのリプログ種別においてセルフリプログの対象となるマイコンを特定可能な情報が格納される。
即ち、第2マイコン25においても、第1マイコン24と同様に、セルフリプログ時以外の通常時では、第2ROM35を疑似的な1面メモリとして動作させることで、メモリ容量の削減による低コスト化を図ったり、ソフトウェアの容量を増やしたりすることができる。セルフリプログ時では、第2ROM35のメモリ領域と外部ストレージ27のメモリ領域とを疑似的な2面メモリとして動作させることで、車両走行中にソフトウェアを書換えたり、運用面の切換えに要するアクティベート時間を短縮したり、ソフトウェアを書戻すロールバックを行えたりする等のメリットを受けることができる。
又、第1マイコン24が第3マイコン26と連携することで、第1マイコン24の第1プロセッサ32が第3マイコン25の第3ROM39に格納されているソフトウェアを書換えることも可能である。更に、第2マイコン25の第2プロセッサ36が第1マイコン24の第1ROM31や第3マイコン26の第3ROM39に格納されているソフトウェアを書換えることも可能である。第3マイコン26の第3プロセッサ40が第1マイコン24の第1ROM31や第2マイコン25の第2ROM35に格納されているソフトウェアを書換えることも可能である。
以上に説明したように第1実施形態によれば、次に示す作用効果を得ることができる。
CGW13において、ダウンロードデータを保存する外部ストレージ27を利用し、第1マイコン24のセルフリプログを行う場合に、第1ROM31のメモリ領域と、外部ストレージ27のメモリ領域とを疑似的な2面メモリとして使用することで、OTAアプリが存在するメモリ領域と、ソフトウェアが存在するメモリ領域とを分離した状態で、OTAアプリを実行してソフトウェアを書換えることができる。これにより、2面メモリの第1ROM24を疑似的な1面メモリとして使用している構成でも、自己のソフトウェアを適切に書換えることができる。
又、OTAアプリを第1RAM33に複製して当該第1RAM33で実行させるようにした。外部ストレージ27がOTAアプリを実行可能であることや、アクティベート時に、外部ストレージ27に記憶されているリプログデータ又は書換え後のソフトウェアを第1ROM31に書込み可能であることを必要とせずに実現することができる。即ち、外部ストレージ27がOTAアプリを実行可能である構成や、アクティベート時に、外部ストレージ27に記憶されているリプログデータ又は書換え後のソフトウェアを第1ROM31に書込み可能である構成では、高コスト化や処理の複雑化が懸念されるが、そのような事態が生じることなく実現することができる。
(第2実施形態)
以下、第2実施形態について図14から図15を参照して説明する。
以下、第2実施形態について図14から図15を参照して説明する。
第2実施形態では、第2コア32bは、OTAアプリを外部ストレージ27に複製して当該外部ストレージ27で実行させ、ソフトウェアを書換える。この場合も、書換え後のソフトウェアを第1ROM31で生成するパターンと、書換え後のソフトウェアを外部ストレージ27で生成するパターンとがある。
図14は、書換え後のソフトウェアを第1ROM31で生成するパターンの処理の順序を示している。処理1から処理4は次の通りである。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:OTAアプリを外部ストレージ27に複製して当該外部ストレージ27で実行させる。
処理3:アクティベートの実行条件が成立すると、外部ストレージ27からリプログデータを読込む。
処理4:リプログデータを第1ROM31に書込み、書換え後のソフトウェアを第1ROM31で生成する。
処理5:OTAアプリを第2コア32bで実行する(元に戻す)。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:OTAアプリを外部ストレージ27に複製して当該外部ストレージ27で実行させる。
処理3:アクティベートの実行条件が成立すると、外部ストレージ27からリプログデータを読込む。
処理4:リプログデータを第1ROM31に書込み、書換え後のソフトウェアを第1ROM31で生成する。
処理5:OTAアプリを第2コア32bで実行する(元に戻す)。
図15は、書換え後のソフトウェアを外部ストレージ27で生成するパターンの処理の順序を示している。処理1から処理6は次の通りである。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:OTAアプリを外部ストレージ27に複製して当該外部ストレージ27で実行させる。
処理3:第1ROM31から書換え前のソフトウェアを読込む。
処理4:書換え前のソフトウェアを外部ストレージ27に書込み、書換え後のソフトウェアを外部ストレージ27で生成する。
処理5:アクティベートの実行条件が成立すると、外部ストレージ27から書換え後のソフトウェアを読込む。
処理6:書換え後のソフトウェアを第1ROM31に書込む。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:OTAアプリを外部ストレージ27に複製して当該外部ストレージ27で実行させる。
処理3:第1ROM31から書換え前のソフトウェアを読込む。
処理4:書換え前のソフトウェアを外部ストレージ27に書込み、書換え後のソフトウェアを外部ストレージ27で生成する。
処理5:アクティベートの実行条件が成立すると、外部ストレージ27から書換え後のソフトウェアを読込む。
処理6:書換え後のソフトウェアを第1ROM31に書込む。
第2実施形態によれば、上記した第1実施形態と同様に、第1ROM31のメモリ領域と、外部ストレージ27のメモリ領域とを疑似的な2面メモリとして使用することで、OTAアプリが存在するメモリ領域と、ソフトウェアが存在するメモリ領域とを分離した状態で、OTAアプリを実行してソフトウェアを書換えることができる。これにより、2面メモリの第1ROM24を疑似的な1面メモリとして使用している構成でも、自己のソフトウェアを適切に書換えることができる。
(第3実施形態)
以下、第3実施形態について図16から図17を参照して説明する。
以下、第3実施形態について図16から図17を参照して説明する。
第3実施形態は、アクティベート時に、外部ストレージ27に記憶されているリプログデータ又は書換え後のソフトウェアを第1ROM31に書込み可能であることが前提であり、OTAアプリを第1RAM33や外部ストレージ27に複製せずに第2コア32bで実行し、ソフトウェアを書換える。この場合も、書換え後のソフトウェアを第1ROM31で生成するパターンと、書換え後のソフトウェアを外部ストレージ27で生成するパターンとがある。
図16は、書換え後のソフトウェアを第1ROM31で生成するパターンの処理の順序を示している。処理1から処理3は次の通りである。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:アクティベートの実行条件が成立すると、外部ストレージ27からリプログデータを読込む。
処理3:リプログデータを第1ROM31に書込み、書換え後のソフトウェアを第1ROM31で生成する。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:アクティベートの実行条件が成立すると、外部ストレージ27からリプログデータを読込む。
処理3:リプログデータを第1ROM31に書込み、書換え後のソフトウェアを第1ROM31で生成する。
図17は、書換え後のソフトウェアを外部ストレージ27で生成するパターンの処理の順序を示している。処理1から処理5は次の通りである。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:第1ROM31から書換え前のソフトウェアを読込む。
処理3:書換え前のソフトウェアを外部ストレージ27に書込み、書換え後のソフトウェアを外部ストレージ27で生成する。
処理4:アクティベートの実行条件が成立すると、外部ストレージ27から書換え後のソフトウェアを読込む。
処理5:書換え後のソフトウェアを第1ROM31に書込む。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:第1ROM31から書換え前のソフトウェアを読込む。
処理3:書換え前のソフトウェアを外部ストレージ27に書込み、書換え後のソフトウェアを外部ストレージ27で生成する。
処理4:アクティベートの実行条件が成立すると、外部ストレージ27から書換え後のソフトウェアを読込む。
処理5:書換え後のソフトウェアを第1ROM31に書込む。
第3実施形態によれば、上記した第1実施形態と同様に、第1ROM31のメモリ領域と、外部ストレージ27のメモリ領域とを疑似的な2面メモリとして使用することで、OTAアプリが存在するメモリ領域と、ソフトウェアが存在するメモリ領域とを分離した状態で、OTAアプリを実行してソフトウェアを書換えることができる。これにより、2面メモリの第1ROM24を疑似的な1面メモリとして使用している構成でも、自己のソフトウェアを適切に書換えることができる。
(第4実施形態)
以下、第4実施形態について図18を参照して説明する。
第4実施形態は、第1から第3実施形態とは異なり、書換え後のソフトウェアを第1ROM31で生成するパターンだけである。
図18は、書換え後のソフトウェアを第1ROM31で生成するパターンの処理の順序を示している。処理1から処理5は次の通りである。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:アクティベートの実行条件が成立すると、外部ストレージ27から第1ROM31の第1領域31aに書込むリプログデータを読込む。
処理3:リプログデータを第1ROM31の第1領域31aに書込み、書換え後のソフトウェアを第1ROM31の第1領域31aで生成する。
処理4:アクティベートの実行条件が成立すると、外部ストレージ27から第1ROM31の第2領域31bに書込むリプログデータを読込む。
処理5:リプログデータを第1ROM31の第2領域31bに書込み、書換え後のソフトウェアを第1ROM31の第2領域31bで生成する。
以下、第4実施形態について図18を参照して説明する。
第4実施形態は、第1から第3実施形態とは異なり、書換え後のソフトウェアを第1ROM31で生成するパターンだけである。
図18は、書換え後のソフトウェアを第1ROM31で生成するパターンの処理の順序を示している。処理1から処理5は次の通りである。
処理1:ダウンロードデータを外部ストレージ27に保存する。
処理2:アクティベートの実行条件が成立すると、外部ストレージ27から第1ROM31の第1領域31aに書込むリプログデータを読込む。
処理3:リプログデータを第1ROM31の第1領域31aに書込み、書換え後のソフトウェアを第1ROM31の第1領域31aで生成する。
処理4:アクティベートの実行条件が成立すると、外部ストレージ27から第1ROM31の第2領域31bに書込むリプログデータを読込む。
処理5:リプログデータを第1ROM31の第2領域31bに書込み、書換え後のソフトウェアを第1ROM31の第2領域31bで生成する。
第4実施形態では、図18に示すように、第1コア32aと第2コア32bのそれぞれでOTAアプリを実行する。より詳しくは、第1ROM31の第2領域31bのOTAアプリを第2コア32bにて実行し、第1ROM31の第1領域31aのソフトウェアを更新する。そして、第1ROM31の第1領域31aのOTAアプリを第1コア32aにて実行し、第1ROM31の第2領域31bのソフトウェアを更新する。このような構成とすることで、第1ROM31の全ての領域のソフトウェアを書換える。
第4実施形態によれば、上記した第1実施形態と同様に、第1ROM31のメモリ領域と、外部ストレージ27のメモリ領域とを疑似的な2面メモリとして使用することで、OTAアプリが存在するメモリ領域と、ソフトウェアが存在するメモリ領域とを分離した状態で、OTAアプリを実行してソフトウェアを書換えることができる。これにより、2面メモリの第1ROM24を疑似的な1面メモリとして使用している構成でも、自己のソフトウェアを適切に書換えることができる。
図19は、上記した第1から第4実施形態について、リプログデータの保存場所、書換え後のソフトウェアの生成場所、OTAアプリの配置場所を概略的に示している。
尚、CGW13の構成として、第1マイコン24に代えて、第1マイコン24よりも高いスペックのマイコンが採用される構成でも良い。図20に示すように、第1マイコン51は、例えばSoC(System-on-Chip)であり、第1ROMのメモリ領域として第1領域52aから第4領域52dを含み、第1プロセッサとして第1コア53aから第4コア53dを含む。第1領域52aと第1コア53aとを含んで第1クラスタ55が定義され、第2領域52bと第2コア53bとを含んで第2クラスタ56が定義され、第1RAM54aを含んで第3クラスタ57が定義される。第3領域52cと第3コア53cとを含んで第4クラスタ58が定義され、第4領域52dと第4コア53dとを含んで第5クラスタ59が定義され、第2RAM54bを含んで第6クラスタ60が定義される。第1クラスタ55、第2クラスタ56及び第3クラスタ57は、連携して高性能な演算部として機能し、第4クラスタ58、第5クラスタ59及び第6クラスタ60は、連携して中性能な演算部として機能する。この場合も、外部ストレージ27を利用し、第1マイコン51のセルフリプログを行う場合に、第1ROMのメモリ領域と、外部ストレージ27のメモリ領域とを疑似的な2面メモリとして使用することで、OTAアプリが存在するメモリ領域と、ソフトウェアが存在するメモリ領域とを分離した状態で、OTAアプリを実行してソフトウェアを書換えることができる
(その他の実施形態)
本開示は、実施例に準拠して記述されたが、当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、更には、それらに一要素のみ、それ以上、或いはそれ以下を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に入るものである。
本開示は、実施例に準拠して記述されたが、当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、更には、それらに一要素のみ、それ以上、或いはそれ以下を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に入るものである。
ファイルサーバ8からダウンロードデータをダウンロードすることで、ソフトウェアを無線で書換える場合を例示したが、ツール23がDLCコネクタ22に接続され、ツール23から送信されるダウンロードデータをDLCコネクタ22を介してダウンロードすることで、ソフトウェアを有線で書換える場合にも適用することができる。
上記した実施形態では、CGW13は、OEMから提供される諸元データに基づいて書換え対象が自己であるか自己以外のECU19であるかを判定する。尚、実施形態で示した諸元データの形式は一例であり、書換え対象が自己であるか自己以外のECU19であるかを示す情報は諸元データとは別のデータとしてセンター装置3から送信されても良い。
本開示に記載の制御部及びそのパターンは、コンピュータプログラムにより具体化された一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリを構成することにより提供された専用コンピュータにより実現されても良い。或いは、本開示に記載の制御部及びそのパターンは、一つ以上の専用ハードウェア論理回路によりプロセッサを構成することにより提供された専用コンピュータにより実現されても良い。若しくは、本開示に記載の制御部及びそのパターンは、一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリと一つ以上のハードウェア論理回路により構成されたプロセッサとの組み合わせにより構成された一つ以上の専用コンピュータにより実現されても良い。又、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されていても良い。
Claims (16)
- プログラムやデータを含むソフトウェアを格納可能であってメモリ領域として第1領域及び第2領域を含む不揮発性メモリ(31)と、第1コア及び第2コアを含み、前記ソフトウェアを書換えるための書換えプログラムを前記第1コア及び前記第2コアのうち少なくとも何れかで実行する制御部(32)と、を有するマイコン(24)と、
前記マイコンの外部に設けられ、前記ソフトウェアを更新するためのリプログデータを一時的に記憶する外部記憶部(27)と、を備え、
前記制御部は、諸元データに基づいて自己のソフトウェアの書換えであると判定した場合に、前記外部記憶部のメモリ領域を用い、前記不揮発性メモリに格納されている前記ソフトウェアを書換える車両用電子制御装置。 - 前記マイコンの内部であって前記不揮発性メモリ及び前記プロセッサとは別に設けられ、プログラムを実行可能な内部記憶部(33)を備え、
前記制御部は、諸元データに基づいて自己のソフトウェアの書換えであると判定した場合に、前記書換えプログラムを前記内部記憶部に複製して当該内部記憶部で実行させる請求項1に記載した車両用電子制御装置。 - 前記マイコンの内部であって前記不揮発性メモリ及び前記プロセッサとは別に設けられ、プログラムを実行可能な内部記憶部(33)を備え、
前記制御部は、前記書換えプログラムを前記内部記憶部に複製して当該内部記憶部で実行させ、前記外部記憶部に記憶されている前記リプログデータを前記不揮発性メモリに書込んで書換え後のソフトウェアを当該不揮発性メモリで生成することで、前記不揮発性メモリに格納されているソフトウェアを書換える請求項1に記載した車両用電子制御装置。 - 前記マイコンの内部であって前記不揮発性メモリ及び前記プロセッサとは別に設けられ、プログラムを実行可能な内部記憶部(33)を備え、
前記制御部は、前記書換えプログラムを前記内部記憶部に複製して当該内部記憶部で実行させ、前記不揮発性メモリに格納されている書換え前のプログラムを前記外部記憶部に転送して書換え後のソフトウェアを当該外部記憶部で生成し、その生成した書換え後のソフトウェアを前記不揮発性メモリに書込むことで、前記不揮発性メモリに格納されているソフトウェアを書換える請求項1に記載した車両用電子制御装置。 - 前記外部記憶部は、前記書換えプログラムを実行可能であり、
前記制御部は、前記書換えプログラムを前記外部記憶部に複製して当該外部記憶部で実行させ、前記外部記憶部に記憶されている前記リプログデータを前記不揮発性メモリに書込んで書換え後のソフトウェアを当該不揮発性メモリで生成することで、前記不揮発性メモリに格納されているソフトウェアを書換える請求項1に記載した車両用電子制御装置。 - 前記外部記憶部は、前記書換えプログラムを実行可能であり、
前記制御部は、前記書換えプログラムを前記外部記憶部に複製して当該外部記憶部で実行させ、前記不揮発性メモリに格納されている書換え前のプログラムを前記外部記憶部に転送して書換え後のソフトウェアを当該外部記憶部で生成し、その生成した書換え後のソフトウェアを前記不揮発性メモリに書込むことで、前記不揮発性メモリに格納されているソフトウェアを書換える請求項1に記載した車両用電子制御装置。 - アクティベート時に、前記外部記憶部に記憶されている前記リプログデータの前記不揮発性メモリへの書込みが可能であり、
前記制御部は、前記書換えプログラムを前記第1コア及び前記第2コアのうち少なくとも何れかで実行し、前記外部記憶部に記憶されている前記リプログデータを前記不揮発性メモリに書込んで書換え後のソフトウェアを当該不揮発性メモリで生成することで、前記不揮発性メモリに格納されているソフトウェアを書換える請求項1に記載した車両用電子制御装置。 - アクティベート時に、前記外部記憶部に記憶されている書換え後のソフトウェアの前記不揮発性メモリへの書込みが可能であり、
前記制御部は、前記書換えプログラムを前記第1コア及び前記第2コアのうち少なくとも何れかで実行し、書換え後のソフトウェアを前記外部記憶部で生成し、その生成した書換え後のソフトウェアを前記不揮発性メモリに書込むことで、前記不揮発性メモリに格納されているソフトウェアを書換える請求項1に記載した車両用電子制御装置。 - 前記制御部は、前記書換えプログラムを前記第1コア及び前記第2コアのうち一方で実行し、前記不揮発性メモリの前記第1領域及び前記第2領域のうち前記書換えプログラムが格納されていないコアに対応するメモリ領域のソフトウェアを書換え、書換えプログラムを前記第1コア及び前記第2コアのうち他方で実行し、前記不揮発性メモリの前記第1領域及び前記第2領域のうち前記書換えプログラムが格納されていないコアに対応するメモリ領域のソフトウェアを書換えることで、前記不揮発性メモリに格納されているソフトウェアを書換える請求項1に記載した車両用電子制御装置。
- 前記マイコンを第1マイコンとし、
プログラムやデータを含むソフトウェアを格納可能なメモリ領域を含む不揮発性メモリ(35)と、コアを含む制御部(36)と、を有する第2マイコン(25)を更に備え、
前記第1マイコンは、前記外部記憶部と専用線を介して直接通信するよう構成され、
前記第2マイコンは、前記第1マイコンを介して前記外部記憶部と通信するように構成されている請求項1から9の何れか一項に記載した車両用電子制御装置。 - 前記制御部は、外部より取得したデータに基づいて前記第1領域又は前記第2領域の書換えであると判定することで、前記諸元データに基づいて自己のソフトウェアの書換えであると判定する請求項1から10の何れか一項に記載した車両用電子制御装置。
- 前記制御部は、アクティベートの承諾を要求し、アクティベートが承諾されたことを条件とし、前記不揮発性メモリに格納されている前記ソフトウェアを書換える請求項1から11の何れか一項に記載した車両用電子制御装置。
- 前記制御部は、車両走行中に、前記不揮発性メモリに格納されている前記ソフトウェアを書換える請求項1から12の何れか一項に記載した車両用電子制御装置。
- プログラムやデータを含むソフトウェアを格納可能であってメモリ領域として第1領域及び第2領域を含む不揮発性メモリ(31)と、第1コア及び第2コアを含み、前記ソフトウェアを書換えるための書換えプログラムを前記第1コア及び前記第2コアのうち少なくとも何れかで実行する制御部(32)と、を有するマイコン(24)と、
前記マイコンの外部に設けられ、前記ソフトウェアを更新するためのリプログデータを一時的に記憶する外部記憶部(27)と、を備える車両用電子制御装置(13)の前記制御部に、
諸元データに基づいて自己のソフトウェアの書換えであるか否かを判定する第1手順と、
自己のソフトウェアの書換えであると前記第1手順により判定すると、前記外部記憶部のメモリ領域を用い、前記不揮発性メモリに格納されている前記ソフトウェアを書換える第2手順と、を実行させる書換えプログラム。 - 外部から車両用電子制御装置に配信され、前記車両用電子制御装置又は他装置のメモリ領域に格納されているプログラムやデータを含むソフトウェアを書換える際に必要な情報を含む諸元データのデータ構造であって、
前記車両用電子制御装置に格納されているソフトウェアの書換えであるか他装置に格納されているソフトウェアの書換えであるかを特定可能な情報を含むデータ構造。 - プログラムやデータを含むソフトウェアを格納可能であってメモリ領域として第1領域及び第2領域を含む不揮発性メモリ(31)と、第1コア及び第2コアを含み、前記ソフトウェアを書換えるための書換えプログラムを前記第1コア及び前記第2コアのうち少なくとも何れかで実行するプロセッサ(32)と、を有するマイコン(24)と、
前記マイコンの外部に設けられ、前記ソフトウェアを更新するためのリプログデータを一時的に記憶する外部記憶部(27)と、備え、
前記不揮発性メモリは、自己のメモリ領域と前記外部記憶部のメモリ領域とが疑似的な2面メモリとして用いられることで、前記ソフトウェアが書換えられる車両用電子制御装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE112022002146.2T DE112022002146T5 (de) | 2021-04-14 | 2022-03-22 | Elektronische Steuervorrichtung für ein Fahrzeug, Neuschreibprogramm, und Datenstruktur |
CN202280027914.XA CN117120973A (zh) | 2021-04-14 | 2022-03-22 | 车辆用电子控制装置、改写程序以及数据结构 |
US18/481,703 US20240028326A1 (en) | 2021-04-14 | 2023-10-05 | Vehicular electronic control device, rewriting program, and data structure |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021068430A JP7521476B2 (ja) | 2021-04-14 | 2021-04-14 | 車両用電子制御装置及び書換えプログラム |
JP2021-068430 | 2021-04-14 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/481,703 Continuation US20240028326A1 (en) | 2021-04-14 | 2023-10-05 | Vehicular electronic control device, rewriting program, and data structure |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022220024A1 true WO2022220024A1 (ja) | 2022-10-20 |
Family
ID=83640338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2022/013122 WO2022220024A1 (ja) | 2021-04-14 | 2022-03-22 | 車両用電子制御装置、書換えプログラム及びデータ構造 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20240028326A1 (ja) |
JP (1) | JP7521476B2 (ja) |
CN (1) | CN117120973A (ja) |
DE (1) | DE112022002146T5 (ja) |
WO (1) | WO2022220024A1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018173721A (ja) * | 2017-03-31 | 2018-11-08 | オムロンオートモーティブエレクトロニクス株式会社 | 車載通信システム、車両制御装置、通信管理装置 |
WO2020032199A1 (ja) * | 2018-08-10 | 2020-02-13 | 株式会社デンソー | 車両情報通信システム |
JP2021024555A (ja) * | 2019-08-06 | 2021-02-22 | 日本電産エレシス株式会社 | 電動パワーステアリング制御装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7059985B2 (ja) | 2018-08-10 | 2022-04-26 | 株式会社デンソー | 車両用電子制御システム、車両用マスタ装置、データ格納面情報の送信制御方法、データ格納面情報の送信制御プログラム、車両用マスタ装置側プログラム、センター装置、更新データの選定方法及びセンター装置側プログラム |
KR102371568B1 (ko) | 2019-10-18 | 2022-03-07 | 주식회사 카카오 | 인스턴트 메시징 서비스에서 프로필 뷰를 표시하는 방법 |
-
2021
- 2021-04-14 JP JP2021068430A patent/JP7521476B2/ja active Active
-
2022
- 2022-03-22 CN CN202280027914.XA patent/CN117120973A/zh active Pending
- 2022-03-22 DE DE112022002146.2T patent/DE112022002146T5/de active Pending
- 2022-03-22 WO PCT/JP2022/013122 patent/WO2022220024A1/ja active Application Filing
-
2023
- 2023-10-05 US US18/481,703 patent/US20240028326A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018173721A (ja) * | 2017-03-31 | 2018-11-08 | オムロンオートモーティブエレクトロニクス株式会社 | 車載通信システム、車両制御装置、通信管理装置 |
WO2020032199A1 (ja) * | 2018-08-10 | 2020-02-13 | 株式会社デンソー | 車両情報通信システム |
JP2021024555A (ja) * | 2019-08-06 | 2021-02-22 | 日本電産エレシス株式会社 | 電動パワーステアリング制御装置 |
Also Published As
Publication number | Publication date |
---|---|
JP7521476B2 (ja) | 2024-07-24 |
US20240028326A1 (en) | 2024-01-25 |
DE112022002146T5 (de) | 2024-02-01 |
CN117120973A (zh) | 2023-11-24 |
JP2022163479A (ja) | 2022-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11392305B2 (en) | Vehicle information communication system | |
US20180341476A1 (en) | Software updating device, software updating system, and software updating method | |
WO2018079008A1 (ja) | 制御装置、プログラム更新方法、およびコンピュータプログラム | |
JP2017157004A (ja) | プログラム更新システム、プログラム更新方法及びコンピュータプログラム | |
WO2017195389A1 (ja) | 車載制御装置、制御方法及びコンピュータプログラム | |
US20240069905A1 (en) | Vehicular electronic control device, vehicular electronic control system, and updated configuration information determination program | |
JP7230768B2 (ja) | 電子制御装置、セッション確立プログラム及び制御プログラム | |
CN115136122A (zh) | 主装置、数据分发系统以及更新控制程序 | |
US20220405083A1 (en) | Ota master, system, method, non-transitory storage medium, and vehicle | |
CN113961214A (zh) | 软件更新装置、更新控制方法、非临时存储介质、服务器、ota主机及中心 | |
WO2022220024A1 (ja) | 車両用電子制御装置、書換えプログラム及びデータ構造 | |
CN115461711A (zh) | 车辆用电子控制系统、数据的初始化方法、中心装置、车辆用主装置、初始化数据包的分发程序以及数据的初始化程序 | |
US11954480B2 (en) | Center, OTA master, system, method, non-transitory storage medium, and vehicle | |
EP3961379B1 (en) | Software update device, software update method, non-transitory storage medium, and vehicle | |
US11567749B2 (en) | Vehicle electronic control system, data relay device, campaign information delivery control method, and campaign information delivery control program | |
JP7392407B2 (ja) | センター装置、車両用電子制御システム、プログラム更新の進捗制御方法及びプログラム更新の進捗制御プログラム | |
JP7484814B2 (ja) | 車両用電子制御装置及び更新プログラム | |
JP7540386B2 (ja) | Otaマスタ、更新制御方法、更新制御プログラム及びotaセンタ | |
WO2023195460A1 (ja) | 車載装置、コンピュータプログラム及びプログラム更新方法 | |
WO2023171307A1 (ja) | 車載装置、プログラム、及びプログラムの更新方法 | |
JP7239025B2 (ja) | センター装置及び車両情報通信システム | |
WO2024111374A1 (ja) | 更新管理装置、更新管理システム及びコンピュータプログラム | |
WO2022244588A1 (ja) | 車両用電子制御装置、更新プログラム及びデータ構造 | |
JP7552483B2 (ja) | センタ、配信制御方法、及び配信制御プログラム | |
WO2019221118A1 (ja) | 電子制御装置及びセッション確立プログラム |
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: 22787949 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 112022002146 Country of ref document: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 22787949 Country of ref document: EP Kind code of ref document: A1 |