Dual-Core Firmware Switchover for Stateful Connected Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Updating firmware on a device with active processor cores results in throughput inefficiencies and compatibility issues due to the need to wait for all transactions to complete before the update can occur, which is time-consuming and disruptive.
Innovation Solution
A dynamic firmware update application that migrates data and operating states from an active processor core to a standby core, allowing the active core to update its firmware while the standby core continues transactions, using software and hardware components to manage the transition.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If firmware update is performed on an active processor core, then firmware can be updated, but device operations are interrupted and throughput efficiency decreases
Solution Approach 1:
The processor is divided into multiple independent cores, allowing the firmware update to be applied to one core while other cores continue to execute transactions. This segmentation enables parallel operation of firmware update and normal device functions, resolving the contradiction between updating firmware and maintaining throughput efficiency.
Solution Approach 2:
A firmware image buffer and data migration mechanism serve as intermediaries between the active core and the updating core. The active core's data is migrated to the firmware image buffer while the standby core loads and applies the new firmware, enabling seamless updates without interrupting device operations.
2Reliability
If firmware update waits for all transactions to complete, then compatibility issues are avoided, but update time is extended
Solution Approach 1:
The system performs preliminary actions by preparing the firmware image in a buffer and migrating data to the firmware image buffer before the actual firmware update is applied. This preliminary preparation allows the update to be executed quickly on a standby core without waiting for all transactions on the active core to complete, reducing update time while maintaining compatibility through proper data migration.
Solution Approach 2:
The system dynamically switches between active and standby cores during the firmware update process. The active core continues processing transactions while the standby core undergoes firmware update, and then they switch roles. This dynamic approach allows firmware updates to occur without interrupting ongoing transactions, eliminating the time loss associated with waiting for transaction completion.
3Reliability
If processor core stops executing to update firmware, then firmware can be replaced, but device connectivity is interrupted
Solution Approach 1:
The processor is segmented into multiple independent cores, allowing the firmware replacement to occur on one core while other cores maintain device connectivity and execute transactions. This segmentation enables simultaneous firmware replacement and continuous device operation, resolving the contradiction between replacing firmware and maintaining ease of operation.
Solution Approach 2:
The system ensures continuity of useful action by having standby cores take over transaction execution while active cores undergo firmware replacement. This continuous execution of transactions on at least one core maintains device connectivity and operational ease throughout the firmware replacement process, eliminating interruptions.
Data Source
AI summary
A system and related method, including a first processor core, a second processor core and a control circuitry to receive requests to update existing firmware of the first processor core to a new firmware. The control circuitry loads existing firmware onto the second processor core and migrates data associated with the existing firmware on the first processor core to the second processor core. The control circuitry stops the transaction execution by the first processor core while causing the second processor core to execute transactions in place of the first processor core. The control circuitry restarts the first processor core, replaces the existing firmware on the first processor core with the new firmware, and migrates data of the existing firmware on the second processor core to the first processor core. The control circuitry stops the transaction execution of the second processor core and causes the first processor core to execute transactions.


