In-Service Firmware Update via Intermediate Configuration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing software update/upgrade methods require offline processes, limiting the ability to perform in-service updates without disrupting system operations, and fail to efficiently manage firmware version transitions and system states.

Innovation Solution

A method and system that reconfigure a processor and firmware storage from a first to a second firmware version by transitioning through an intermediate configuration, disallowing certain operations during the transition, and utilizing an on-system hardware scratchpad to manage system states and parameters, allowing seamless transitions between firmware versions without full system shutdown.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional offline software update methods are used, then system reliability during update is improved, but system downtime and operational disruption increase

Engineering Contradiction:
Improvesystem reliability during updateVSAvoidsystem downtime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system is divided into multiple operational configurations (first configuration with first firmware, second configuration with second firmware, and intermediate configuration). The update process segments the transition into discrete steps: loading new firmware, switching to intermediate configuration, performing validation, and finally switching to the new configuration. This segmentation allows the system to maintain operational continuity while updating firmware without requiring complete offline downtime.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The second version of firmware is loaded into firmware storage in advance while the system continues to operate with the first firmware version. The intermediate configuration is prepared beforehand, allowing the system to validate the new firmware before fully switching to it. This preliminary action ensures that the update is ready and validated before actual deployment, reducing the risk of system failure and minimizing downtime.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If firmware version transition is performed without intermediate configuration, then update process is simplified, but system stability during transition deteriorates

Engineering Contradiction:
Improveupdate process complexityVSAvoidsystem stability during transition
Core Design Contradiction:
Device complexityVSStability of the object's composition

Solution Approach 1:

An intermediate configuration is introduced as a mediator between the first firmware configuration and the second firmware configuration. This intermediate state allows the system to safely transition between firmware versions by validating the new firmware before full deployment. The intermediate configuration acts as a buffer that prevents direct, potentially unstable transitions, thereby maintaining system stability while managing the complexity of firmware updates.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If all operations are allowed during firmware transition, then system productivity is maintained, but risk of operational errors increases

Engineering Contradiction:
Improvesystem productivity during updateVSAvoidrisk of operational errors
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

During the intermediate configuration state, only a subset of operations is permitted rather than all operations. Critical operations that could compromise system stability during the transition are restricted, while essential operations continue to function. This partial action approach maintains sufficient productivity to keep the system operational while reducing the risk of operational errors that could occur if all operations were allowed during the vulnerable transition period.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10838711B2In-service software/firmware update
Publication Date: 2020.11.17 MELLANOX TECHNOLOGIES LTD(IL)
  • US10838711B2 patent drawing
  • US10838711B2 patent drawing
  • US10838711B2 patent drawing

AI summary

A method including altering the configuration of a system including a processor, firmware storage and a scratchpad from a first configuration in which a first version of firmware enabling a first plurality of system operations is run by the processor, into a second configuration in which a second version of firmware enabling a second plurality of system operations is run by the processor, the altering including: A) re-configuring the system from the first configuration into an intermediate configuration in which the processor continues to run the first version of the firmware, B) while the system is in the intermediate configuration, disallowing at least one of the first plurality of operations, C) re-configuring the system from the intermediate configuration to the second configuration, and D) while the system is in the second configuration, allowing the second plurality of operations. Related apparatus and methods are also provided.