# US 11,907,698 B2 · Vehicle electronic control system, vehicle master device, method for controlling transmission of data storage bank information and computer program product for controlling transmission of data storage bank information

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,907,698 B2
- Document ID: US11907698B2
- Status: Granted
- Kind: B2
- Application number: 17/167,668
- Filed: 2021-02-04
- Published: 2021-05-27
- Granted: 2024-02-20
- Earliest claimed: 2018-08-10
- Assignees: Denso Corporation
- Applicants: Denso Corporation
- Inventors: Yuzo Harata; Kazuhiro Uehara; Takuya Hasegawa; Takuya Kawasaki; Kazuaki Hayakawa
- Web page: https://patentgrep.com/patent/US11907698B2

## CPC

- G06F 8/65: Updates (security arrangements therefor G06F21/57)
- G06F 21/57: Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- B60R 16/023: for transmission of signals between vehicle parts or subsystems
- B60R 16/0231: {Circuits relating to the driving or the functioning of the vehicle (monitoring tyres B60C23/00; indicating overspeed B60K31/00; for dash boards B60K37/00, B60Q3/10; for indicating emergencies B60Q1/52; brake control systems B60T; registering or indicating the working of vehicles G07C5/00; measuring distance G01C, e.g. combinations of speed and distance G01C23/00; engine indicators G01L; measuring speed or acceleration G01P)}
- B60R 16/03: for supply of electrical power to vehicle subsystems {or for (circuit arrangements for charging batteries H02J7/00)}
- B60W 60/001: {Planning or execution of driving tasks}
- G06F 3/0604: {Improving or facilitating administration, e.g. storage management}
- G06F 3/0659: {Command handling arrangements, e.g. command buffers, queues, command scheduling}
- G06F 3/0673: {Single storage device}
- G06F 8/654: using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
- G06F 8/658: Incremental updates; Differential updates
- G06F 9/445: Program loading or initiating (bootstrapping G06F9/4401; security arrangements for program loading or initiating G06F21/57)
- G06F 16/2365: {Ensuring data consistency and integrity}
- G06F 16/2379: {Updates performed during online database operations; commit processing}
- G06F 21/44: Program or device authentication
- G06F 21/51: at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
- G07C 5/0808: {Diagnosing performance data (testing of vehicles G01M17/00; testing of electrical installation on vehicles G01R31/005)}
- H04W 4/14: Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
- H04W 4/48: for in-vehicle communication
- G06F 2221/033: Test or assess software
- H04L 43/0876: Network utilisation, e.g. volume of load or congestion level
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- B60R: VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60W: CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- G07C: TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

In a vehicle electronic control system, a vehicle master device is configured to acquire data storage bank information including information for specifying which bank is an active bank and information for specifying software versions of an active bank and an inactive bank from a rewrite target ECU that has a non-volatile memory with a plurality of data storage banks and to transmit the data storage bank information acquired by the data storage bank information acquisition unit to a center device. The center device is configured to select update data compliant to the inactive bank on the basis of the software versions and the active bank specified by the data storage bank information received from the vehicle master device and to transmit a distribution package including the update data selected by the update data selection unit to the vehicle master device.

## Claims

### Claim 1

A data storage bank information transmission control method executed in a vehicle electronic control system including:
a center device that is configured to distribute update data; and
a vehicle master device that is configured to acquire the update data from the center device and control update of a rewrite target electronic control unit (ECU) using the acquired update data, the method comprising the steps of:
acquiring, with the vehicle master device, data storage bank information including information for specifying which bank is an active bank and information for specifying software versions of the active bank and an inactive bank from the rewrite target ECU that has a non-volatile memory with a plurality of data storage banks;
transmitting the acquired data storage bank information to the center device;
determining, with the center device, a software version of the update data that is newer than the software version of the active bank based on the software version of the active bank specified by the information included in the received data storage bank information;
selecting, with the center device, an update data file to rewrite the inactive bank based on the determined software version of the update data; and
transmitting the selected update data file to the vehicle master device when the determined software version of the update data is newer than the software version of the inactive bank specified by the information included in the data storage bank information;
wherein:
the non-volatile memory includes, as the plurality of data storage banks, a first data storage bank and a second data storage bank;
the center device further includes an update data file management unit that is configured to store, separately, first differential data for the first data storage bank and second differential data for the second data storage bank;
the first differential data is differential data to update the first data storage bank to the software version determined by the version determination unit;
the second differential data is differential data to update the second data storage bank to the software version determined by the version determination unit; and
the update data selection unit is configured to:
determine which is the inactive bank between the first data storage bank and the second data storage bank;
acquire the first differential data from the update data file management unit when the first data bank is determined to be the inactive bank; and
acquire the second differential data from the update data file management unit when the second data bank is determined to be the inactive bank.

### Claim 2

A vehicle electronic control system, comprising:
a center device that is configured to distribute update data; and
a vehicle master device that is configured to acquire the update data from the center device and control update of a rewrite target electronic control unit (ECU) using the acquired update data, wherein
the vehicle master device includes:
a data storage bank information acquisition unit that is configured to acquire data storage bank information including information for specifying which bank is an active bank and information for specifying software versions of the active bank and an inactive bank from the rewrite target ECU that has a non-volatile memory with a plurality of data storage banks;
a data storage bank information transmission unit that is configured to transmit the data storage bank information acquired by the data storage bank information acquisition unit to the center device; and
an update data distribution unit that is configured to distribute the update data received from the center device to the rewrite target ECU, and
the center device includes:
a version determination unit that is configured to determine a software version of the update data that is newer than the software version of the active bank based on the software version of the active bank specified by the information included in the data storage bank information received from the vehicle master device;
an update data selection unit that is configured to select an update data file to rewrite the inactive bank based on the determined software version of the update data; and
an update data transmission unit that is configured to transmit the update data file selected by the update data selection unit to the vehicle master device when the software version of the update data determined by the version determination unit is newer than the software version of the inactive bank specified by the information included in the data storage bank information received from the vehicle master device;
wherein:
the non-volatile memory includes, as the plurality of data storage banks, a first data storage bank and a second data storage bank;
the center device further includes an update data file management unit that is configured to store, separately, first differential data for the first data storage bank and second differential data for the second data storage bank;
the first differential data is differential data to update the first data storage bank to the software version determined by the version determination unit;
the second differential data is differential data to update the second data storage bank to the software version determined by the version determination unit; and
the update data selection unit is configured to:
determine which is the inactive bank between the first data storage bank and the second data storage bank;
acquire the first differential data from the update data file management unit when the first data bank is determined to be the inactive bank; and
acquire the second differential data from the update data file management unit when the second data bank is determined to be the inactive bank.

### Claim 3 (depends on 2)

The vehicle electronic control system according to claim 2, wherein
the data storage bank information transmission unit is further configured to transmit usage environment information indicative of a usage environment of a vehicle to the center device in addition to the data storage bank information, and
the update data selection unit is further configured to select update data compliant to the inactive bank based on the software versions and the active bank that are specified by the data storage bank information and the usage environment information received from the vehicle master device.

### Claim 4 (depends on 2)

The vehicle electronic control system according to claim 2, wherein
the vehicle master device further includes:
a rewrite specification data acquisition unit that is configured to acquire rewrite specification data from outside;
a rewrite specification data analysis unit that is configured to analyze the rewrite specification data acquired by the rewrite specification data acquisition unit;
a rewrite method specifying unit that is configured to specify a rewrite method based on an analysis result of the rewrite specification data; and
a rewrite method instruction unit that is configured to instruct the rewrite target ECU to perform rewriting according to the rewrite method specified by the rewrite method specifying unit.

### Claim 5 (depends on 4)

The vehicle electronic control system according to claim 4, wherein
the rewrite method instruction unit is further configured to instruct the rewrite target ECU to perform rewriting using a self-retention power when a rewrite method using the self-retention power is specified by the rewrite method specifying unit.

### Claim 6 (depends on 4)

The vehicle electronic control system according to claim 4, wherein
the rewrite method instruction unit is further configured to instruct the rewrite target ECU to perform rewriting using a power supply control when a rewrite method using the power supply control is specified by the rewrite method specifying unit.

### Claim 7 (depends on 1)

The vehicle electronic control system according to claim 1, wherein
the update data transmission unit is further configured not to transmit the update data file to the vehicle master device when the software version of the update data determined by the version determination unit is equal to the software version of the inactive bank specified by the information included in the data storage bank information.

### Claim 8 (depends on 1)

The vehicle electronic control system according to claim 1, further comprising
a rewrite necessity determination unit that is configured to determine whether the inactive bank needs to be rewritten based on the software version of the update data determined by the version determination unit and the software version of the inactive bank specified by the information included in the data storage bank information received from the vehicle master device, wherein
the update data transmission unit is configured to transmit the update data file to the vehicle master device when the rewrite necessity determination unit determines that the inactive bank needs to be rewritten.

### Claim 9

A non-transitory computer readable storage medium storing a computer program for controlling transmission of data storage bank information for a vehicle electronic control system that includes:
a computer readable medium and a processor;
a center device that is configured to distribute update data; and
a vehicle master device that is configured to acquire the update data from the center device and control update of a rewrite target electronic control unit (ECU) using the acquired update data, the computer program comprising instructions, when executed, configured to cause the processor to:
acquire, with the vehicle master device, data storage bank information including information for specifying which bank is an active bank and information for specifying software versions of the active bank and an inactive bank from the rewrite target ECU that has a non-volatile memory with a plurality of data storage banks;
transmit the acquired data storage bank information to the center device;
determine, with the center device, a software version of the update data that is newer than the software version of the active bank based on the software version of the active bank specified by the information included in the received data storage bank information;
select, with the center device, an update data file to rewrite the inactive bank based on the determined software version of the update data; and
transmit the selected update data file to the vehicle master device when the determined software version of the update data is newer than the software version of the inactive bank specified by the information included in the data storage bank information;
wherein:
the non-volatile memory includes, as the plurality of data storage banks, a first data storage bank and a second data storage bank;
the center device further includes an update data file management unit that is configured to store, separately, first differential data for the first data storage bank and second differential data for the second data storage bank;
the first differential data is differential data to update the first data storage bank to the software version determined by the version determination unit;
the second differential data is differential data to update the second data storage bank to the software version determined by the version determination unit; and
the update data selection unit is configured to:
determine which is the inactive bank between the first data storage bank and the second data storage bank;
acquire the first differential data from the update data file management unit when the first data bank is determined to be the inactive bank; and
acquire the second differential data from the update data file management unit when the second data bank is determined to be the inactive bank.

### Claim 10

A vehicle electronic control system, comprising:
a center device that is configured to distribute update data; and
a vehicle master device that is configured to acquire the update data from the center device and control update of a rewrite target electronic control unit (ECU) using the acquired update data, wherein
the vehicle master device includes a vehicle processor programmed to:
acquire data storage bank information including information for specifying which bank is an active bank and information for specifying software versions of the active bank and an inactive bank from the rewrite target ECU that has a non-volatile memory with a plurality of data storage banks;
transmit the acquired data storage bank information to the center device; and
distribute the update data received from the center device to the rewrite target ECU, and
the center device includes a center processor programmed to:
determine a software version of the update data that is newer than the software version of the active bank based on the software version of the active bank specified by the information included in the data storage bank information received from the vehicle master device;
select an update data file to rewrite the inactive bank based on the determined software version of the update data; and
transmit the update data file selected by the center processor to the vehicle master device when the determined software version of the update data is newer than the software version of the inactive bank specified by the information included in the data storage bank information received from the vehicle master device;
wherein:
the non-volatile memory includes, as the plurality of data storage banks, a first data storage bank and a second data storage bank;
the center device further includes an update data file management unit that is configured to store, separately, first differential data for the first data storage bank and second differential data for the second data storage bank;
the first differential data is differential data to update the first data storage bank to the software version determined by the version determination unit;
the second differential data is differential data to update the second data storage bank to the software version determined by the version determination unit; and
the update data selection unit is configured to:
determine which is the inactive bank between the first data storage bank and the second data storage bank;
acquire the first differential data from the update data file management unit when the first data bank is determined to be the inactive bank; and
acquire the second differential data from the update data file management unit when the second data bank is determined to be the inactive bank.
