Block Differential Firmware Upgrade for IoT Terminals

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional differential upgrade methods for internet of things terminals occupy significant flash space resources due to the need for full image backups during firmware upgrades, which can lead to upgrade failures during power outages.

Innovation Solution

The method involves generating a block differential upgrade package that replaces part or all of the data in the conventional differential upgrade package with operation instructions, allowing for in-place upgrades without generating an image of the new firmware version, thereby reducing flash space requirements and avoiding the need for full image backups.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a full image backup is made during firmware upgrade to avoid power outage failures, then upgrade reliability is improved, but flash space occupation increases significantly

Engineering Contradiction:
Improveupgrade reliabilityVSAvoidflash space occupation
Core Design Contradiction:
ReliabilityVSVolume of stationary object

Solution Approach 1:

The patent segments the firmware image into multiple blocks and performs differential upgrades block by block. Instead of backing up the entire firmware image at once, only the necessary blocks are processed and updated incrementally, reducing the peak flash space requirement while maintaining upgrade reliability through systematic error handling and rollback mechanisms for each block.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary verification and validation of the differential upgrade package before actual firmware modification. It checks the integrity of the upgrade data, validates the differential algorithm, and prepares the flash memory structure in advance, ensuring that the upgrade can proceed without full backup while preventing potential failures.

Inventive Principle:
Principle #10Preliminary action

2Volume of stationary object

If a differential upgrade package is used to reduce flash space occupation, then storage efficiency is improved, but the upgrade process becomes more complex

Engineering Contradiction:
Improveflash space occupationVSAvoidupgrade process complexity
Core Design Contradiction:
Volume of stationary objectVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary verification mechanism that validates the differential upgrade package and coordinates the block-by-block update process. This intermediary layer manages the complexity by handling block identification, differential calculation, verification, and error recovery, isolating the complexity from the main upgrade logic and making the process more manageable and reliable.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If the entire firmware image is replaced during upgrade, then upgrade simplicity is improved, but flash space resources are significantly occupied

Engineering Contradiction:
Improveupgrade simplicityVSAvoidflash space occupation
Core Design Contradiction:
Ease of operationVSVolume of stationary object

Solution Approach 1:

The patent divides the firmware image into multiple manageable blocks and processes them individually through differential updates. This segmentation allows the system to update only the necessary portions of the firmware without requiring full image replacement, thereby reducing flash space occupation while maintaining a systematic and relatively simple upgrade process.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by performing differential updates only on the specific blocks that have changed between firmware versions, rather than replacing the entire firmware image. This partial update approach minimizes flash space requirements and reduces upgrade time while maintaining the simplicity of the overall upgrade process through automated block identification and processing.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11531535B2Firmware upgrade method and apparatus, and terminal
Publication Date: 2022.12.20 HUAWEI TECH CO LTD
  • US11531535B2 patent drawing
  • US11531535B2 patent drawing
  • US11531535B2 patent drawing

AI summary

Embodiments disclose a firmware upgrade method and apparatus, and a terminal. The method includes: sequentially obtaining first upgrade data and operation instructions in all data blocks in a block differential upgrade package; converting first data into a second upgrade data in an image of an old firmware version according to the operation instruction; and controlling the first upgrade data and the second upgrade data to overwrite a to-be-upgraded data area in the image of the old firmware version. An operation of upgrading to an image of a new firmware version is completed in the image of the old firmware version based on the first upgrade data and the second upgrade data. In addition, in comparison with a conventional differential upgrade package, in the block differential upgrade package, a part or all of data in the conventional differential upgrade package is replaced with an operation instruction.