Controller Program Update via Soft Reset and Retention RAM
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional control program updating methods in Electronic Control Units (ECUs) face issues with erroneous starts of the updating program due to potential RAM garbling and incorrect values in Random Access Memory (RAM) during soft resets, leading to incorrect execution of programs.
Innovation Solution
The proposed solution involves using a retention RAM to store update requesting information and a soft-reset history, allowing the microcontroller to determine whether to start the updating program correctly after a soft reset, and switching from a Q&A system to a WDC monitoring system during program shifting to prevent erroneous resets.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a soft reset is used to start the updating program, then the control program can be updated, but RAM garbling may occur causing erroneous starts of the updating program
Solution Approach 1:
The system performs preliminary actions before the soft reset by storing update requesting information in a persistent storage medium and clearing the RAM. This preliminary preparation ensures that even if RAM garbling occurs during the reset, the correct update decision can be made by referring to the persistent storage information after the reset completes.
Solution Approach 2:
The patent introduces persistent storage medium (such as EEPROM or Flash memory) as an intermediary between the RAM and the program start determination. This intermediary preserves the update requesting information across the soft reset boundary, allowing reliable program start determination without being affected by RAM garbling issues.
2Device complexity
If RAM information is used to determine program start, then the determination is simple, but the information may have incorrect values due to soft reset
Solution Approach 1:
Before the soft reset, the system preliminarily stores the update requesting information in a persistent storage medium and clears the RAM. After the reset, the determination logic remains simple but now refers to the reliable persistent storage information instead of potentially corrupted RAM information, thus maintaining simplicity while improving accuracy.
Solution Approach 2:
The system creates a copy of the update requesting information from the RAM (before reset) to the persistent storage medium. This copying ensures that the critical information is preserved in a reliable location that survives the soft reset, allowing accurate program start determination without relying on the volatile and potentially corrupted RAM contents.
3Productivity
If the updating program is started frequently, then updates can be applied quickly, but erroneous starts increase the risk of system failure
Solution Approach 1:
The system performs preliminary actions of storing update requesting information in persistent storage and clearing RAM before the soft reset that starts the updating program. This preparation ensures that even with frequent updates, each update start is verified against reliable persistent information, preventing erroneous starts and maintaining system stability while allowing rapid update application.
Data Source
AI summary
A controller according to an embodiment includes a main processing unit and a storage. The main processing unit shifts, when receiving an updating request of a control program during executing this control program, to program shifting through a restart in a state where a device power source is held. The program shifting starts an updating program for updating the control program instead of the control program. The storage is configured to be able to hold information while the device power source is held. The main processing unit causes the storage to store, before the restart, update requesting information indicating that the updating request is received, causes the storage to store a history of the restart, and performs a start determination on the updating program on the basis of the update requesting information and the history that are referred after the restart.


