Vehicle Control Device Program Update Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In vehicles equipped with multiple electronic control units (ECUs) executing different programs, there is a risk of deviations during program updates, leading to unintended operations due to mixed versions of the program before and after updating.

Innovation Solution

A vehicle control device with multiple processors and storage units that generate and store updated programs, allowing each processor to confirm the successful change of its execution target program by acquiring and comparing identifiers, ensuring correct execution of updated or original programs to prevent unintended operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If program update data is downloaded and provided to update ECUs via a network, then the program can be updated for improvement or addition of functions, but there is a possibility that deviation occurs for each program at execution timings, leading to mixed versions of programs before and after updating

Engineering Contradiction:
Improveprogram update capabilityVSAvoidprogram version consistency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system performs preliminary actions by storing update programs in storage units before changing execution target programs, and by having processors acquire identifiers of execution target programs before actual execution. This preliminary preparation ensures that when the update is performed, all components are ready to switch to the new version simultaneously, preventing version mixing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where processors acquire and compare identifiers of execution target programs to confirm that the program version has been correctly updated. Each processor reports its execution target program identifier to other processors, which verify that all processors are running the same version, providing feedback that ensures version consistency across the system.

Inventive Principle:
Principle #23Feedback

2Productivity

If multiple processors execute different control programs simultaneously, then the system can perform various types of vehicle control, but deviation in execution timings may cause unintended operations

Engineering Contradiction:
Improvevehicle control capabilityVSAvoidexecution timing synchronization
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

Processors continuously exchange information about their execution target program identifiers with each other. This feedback loop allows all processors to verify that they are executing the same version of the control program, ensuring synchronized operation and preventing unintended operations caused by version mismatches.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system uses execution target program identifiers as an intermediary to coordinate between multiple processors. By comparing these identifiers, processors can indirectly verify that all are running the same program version without needing complex direct communication protocols, simplifying the synchronization mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10802814B2Vehicle control device, update confirmation method of program, and non-transitory computer readable medium storing update confirmation program
Publication Date: 2020.10.13 TOYOTA JIDOSHA KK
  • US10802814B2 patent drawing
  • US10802814B2 patent drawing
  • US10802814B2 patent drawing

AI summary

A vehicle control device includes a first storage configured to store a first control program, a second storage configured to store a second control program, a first processor configured to execute the first control program, a second processor configured to execute the second control program, and an updating unit configured to store a first update program in the first storage and then change an execution target program of the first processor to the first update program. In a case where the updating unit changes the execution target program of the first processor to the first update program, the second processor is configured to acquire an identifier included in the execution target program of the first processor from the first processor and confirm that the execution target program of the first processor has been changed to the first update program based on at least the identifier.