Vehicle Control Program Update via Difference Data Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Vehicle control devices face challenges in program updates due to limited memory capacity, making it difficult to store and manage large difference data between old and new programs, which increases component costs and complicates memory sizing during software design.
Innovation Solution
A vehicle control device with a first memory unit for the program, a second memory unit for difference data, a reception unit for divided data, a determination unit for data size, a write unit for writing difference data, and a restoration unit to rewrite the program with the new data, allowing for efficient program updates even with large difference data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If all difference data between old and new programs is downloaded and stored in the reception device, then program update can be performed, but memory capacity requirements increase and component cost increases
Solution Approach 1:
The difference data is divided into multiple blocks that can be processed sequentially. The reception unit receives difference data in divided blocks, and the write unit writes each block to the second memory unit as it is received, rather than requiring all data to be stored simultaneously. This segmentation allows program updates to proceed with smaller, manageable portions of data at a time.
Solution Approach 2:
The system performs preliminary actions by receiving and storing difference data blocks in the second memory unit before the actual program restoration is complete. The determination unit checks data size before writing, and the restoration process begins incrementally as blocks are received and stored, rather than waiting for all data to be available.
2Adaptability or versatility
If memory capacity is designed to accommodate large difference data, then program update can handle large updates, but component cost increases
Solution Approach 1:
The system dynamically adapts to different difference data sizes by using the determination unit to check the size of incoming data blocks before writing them to the second memory unit. The reception unit processes data in divided blocks, allowing the system to handle varying update sizes without requiring memory capacity for the largest possible update scenario. This dynamic approach allows cost-effective memory sizing while maintaining adaptability to different update requirements.
3Reliability
If entire new program is written to flash ROM via low-speed CAN, then program update is performed, but update time increases
Solution Approach 1:
The system extracts only the difference data between the old and new programs rather than transferring the entire new program. The reception unit receives only the necessary difference blocks, which are then used by the difference restoration unit to generate the new program from the existing program and the received difference data. This extraction approach significantly reduces the amount of data that needs to be transmitted over the low-speed CAN interface.
Solution Approach 2:
The difference data blocks are received and stored in the second memory unit in advance before the restoration process begins. The determination unit verifies data size beforehand, allowing the restoration unit to efficiently process pre-prepared data blocks rather than receiving and processing data during the restoration phase, thereby reducing overall update time.
Data Source
AI summary
The present invention realizes control program update even when the difference data is large. In the present invention, when updating the program, by controlling the amount of data to be received according to the capacity of the area of the vehicle control device storing the difference data, the vehicle control device sequentially performs restoration and update from the received partial data even if not all the difference data are stored.


