Block-Wise Software Update for Memory-Constrained Field Apparatus
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing field apparatuses face challenges in updating software due to insufficient free space in non-volatile and working memories, leading to incomplete or failed update processing, particularly in devices with small memory capacities.
Innovation Solution
The update assistance device divides update software into blocks smaller than or equal to the available free space of the working memory and supplies it on a block-by-block basis, ensuring each block is within the memory capacity, and instructs the CPU to perform partial updates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If update software is transferred as a whole to working memory, then update processing can be completed efficiently, but insufficient free space in working memory prevents the update from being executed
Solution Approach 1:
The update software is divided into multiple blocks, where each block is smaller than or equal to the free space of the working memory. The update is performed by sequentially transferring and executing these blocks one by one, rather than requiring the entire update software to fit in memory simultaneously. This segmentation enables successful updates in devices with limited memory capacity.
2Adaptability or versatility
If update software is divided into small blocks, then updates can be performed in devices with limited memory, but the update process becomes more complex and time-consuming
Solution Approach 1:
A block management table is introduced as an intermediary data structure to manage the divided update blocks. This table stores information about each block (such as block number, size, and transfer status) and enables systematic control of the block-by-block update process. The intermediary structure simplifies the complexity by providing organized management of the segmented update data.
3Reliability
If the entire update software is transferred at once, then the update process is simple and fast, but the process fails when memory capacity is insufficient
Solution Approach 1:
The update software is divided into multiple blocks, where each block is smaller than or equal to the free space of the working memory. The update is performed by sequentially transferring and executing these blocks one by one, rather than requiring the entire update software to fit in memory simultaneously. This segmentation enables successful updates in devices with limited memory capacity.
Solution Approach 2:
Before the actual update execution, the system performs preliminary actions including dividing the update software into blocks, creating a block management table, and preparing the update environment. These preliminary steps ensure that the subsequent update process can proceed reliably even in memory-constrained environments.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
There is provided an update assistance device including: an update software storage unit which stores update software for updating target software that is executed in a target device; a division unit which divides the update software into a plurality of blocks such that each block is smaller than or equal to a free space of a working memory which is used as a work region for updating the target software; and a supply unit which supplies the update software to the working memory on a block-by-block basis.