ECU Virtual Storage Segmentation for Safe Program Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Automobile control units (ECUs) face issues with program updates, including potential startup failures or deadlocks due to bugs in updated programs, and variations in update quality across different ECUs, requiring complex management to ensure consistent updates.

Innovation Solution

An information processing device with a first controller and a second controller providing virtual storage, allowing the second program to be stored in a different storage area and switched upon startup, enabling updates without affecting the first controller and managing anomalies by switching back to the original program.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the updated program is stored in the same storage area as the current program, then the storage area can be reused, but the system cannot recover if the updated program has bugs causing startup failure or deadlock

Engineering Contradiction:
Improvesystem recoverabilityVSAvoidstorage area management
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The storage area is divided into multiple regions: a first storage area for the current program, a second storage area for the updated program, and a third storage area as backup. This segmentation allows the system to store multiple program versions simultaneously, enabling recovery if an updated program fails, while maintaining clear management of each storage region's purpose and content.

Inventive Principle:
Principle #1Segmentation

2Reliability

If the program update is performed using the first controller itself, then the update process is simple, but the controller cannot be restarted if the updated program causes startup failure

Engineering Contradiction:
Improvecontroller restart capabilityVSAvoidupdate process architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

A second controller is introduced as an intermediary to perform the program update on the first controller. The second controller writes the updated program to the first controller's storage area and manages the switching between program versions. This intermediary approach allows the first controller to be restarted safely after updates, as the second controller can facilitate the recovery process if needed.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If different ECUs perform their own program updates independently, then each ECU can be updated autonomously, but the update quality varies across ECUs requiring complex management

Engineering Contradiction:
Improveupdate autonomyVSAvoidupdate management system
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The second controller is designed with universal functionality to manage program updates for multiple different ECUs. It can write updated programs to various ECU types, manage their storage areas, and coordinate restarts. This multi-functional design centralizes update management, ensuring consistent update quality across all ECUs while maintaining the autonomy of each ECU's update process.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11947970B2Information processing device, moving object, and information processing method
Publication Date: 2024.04.02 PANASONIC AUTOMOTIVE SYST CO LTD
  • US11947970B2 patent drawing
  • US11947970B2 patent drawing
  • US11947970B2 patent drawing

AI summary

An information processing device includes: an ECU; a management ECU that provides the ECU with a virtual storage including a first storage area and a second storage area, one of which stores a first program to be executed by the ECU on start-up; an update controller that obtains, from an external device, a second program that is an update to the first program, and causes a remaining one of the first storage area and the second storage area to store the second program obtained; and a switching unit that switches a program to be executed by the ECU on start-up from the first program to the second program stored in the remaining one of the storage areas, after the second program is stored in the remaining one of the storage areas.