Delta File with Reversing Data for Firmware Rollback

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data file update methods, such as delta differencing, do not support reversible updates, making it time-consuming and inefficient to revert to a previous data file, especially in memory-constrained devices like system-on-chip devices, where rolling back to an old firmware can require additional data transfers.

Innovation Solution

A delta file is generated with reversing data that allows regeneration of the source file from the target file, using copy, XOR, and other instructions to identify binary strings and encode data, enabling efficient and reversible updates without requiring additional data transfers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a complete replacement data file is sent to the device, then the update can be applied, but a large amount of data must be transmitted which is time-consuming and increases transmission error risk

Engineering Contradiction:
Improveupdate reliabilityVSAvoidtransmission time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts only the essential information needed for the update by using data differencing to generate a delta file. Instead of transmitting the complete replacement data file, only the differences (delta) between the existing and new files are transmitted. This extraction principle reduces transmission data volume while maintaining update effectiveness.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses copying by transmitting a reference to the existing data file (source file) that already resides on the device. The delta file contains instructions that reference portions of the existing file, allowing the device to reconstruct the new file by copying relevant portions from the existing file and applying the delta instructions. This eliminates the need to transmit redundant data that already exists on the device.

Inventive Principle:
Principle #26Copying

2Quantity of substance

If the old data file is overwritten with the new data file, then memory space is saved, but rolling back to the old data file requires further time-consuming data transfers

Engineering Contradiction:
Improvememory usageVSAvoidrollback time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent applies preliminary action by including reversing data in the delta file during the update process. This reversing data contains the information needed to reconstruct the original source file from the target file. By preparing this reversal capability in advance (as part of the update), the system enables quick rollback without requiring additional data transfers, thus resolving the contradiction between memory savings and rollback time.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If a delta file is used to communicate differences, then the data transmission size is reduced, but the ability to revert to the old file is lost

Engineering Contradiction:
Improvetransmission timeVSAvoidreversibility
Core Design Contradiction:
Loss of timeVSAdaptability or versatility

Solution Approach 1:

The patent applies universality by designing the delta file to serve multiple functions: it can be used both to generate the new target file from the source file (forward update) and to regenerate the source file from the target file (backward rollback). The inclusion of reversing data makes the delta file universally applicable for both update directions, maintaining adaptability while keeping transmission size small.

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

4Adaptability or versatility

If reversing data is included in the delta file, then rollback capability is enabled, but the delta file size increases

Engineering Contradiction:
Improverollback capabilityVSAvoiddelta file size
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential reversing information needed for rollback rather than including complete redundancy. The reversing data in the delta file contains precisely the minimum necessary information to reconstruct the source file from the target file, avoiding unnecessary data inclusion. This selective extraction enables rollback capability while minimizing the increase in delta file size.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentEP3803573B1Delta file with reversing data
Publication Date: 2024.06.26 NORDIC SEMICONDUCTOR
  • EP3803573B1 patent drawingFigure 1
  • EP3803573B1 patent drawingFigure 2
  • EP3803573B1 patent drawingFigure 3

AI summary

A processing system (1) is configured to process instructions in a delta file, received at an input (7) of the processing system (1), to generate a target file from a source file and to regenerate the source file from the target file. The delta file comprises copy instructions and reversing data. The copy instructions instruct the processing system (1) to include one or more copy strings from the source file in the target file. The reversing data is received as part of the delta file and is used to regenerate all of the source file that is outside the one or more copy strings. The processing system (1) is configured to generate the target file from the source file by reading the copy strings from the source file and including them in the target file. The processing system is further configured to regenerate the source file from the target file by reading the copy strings from the target file and including them in the regenerated source file and using the reversing data to include, in the regenerated source file, all of the source file that is outside the one or more copy strings.