Storage Controller Firmware Recovery via Loading Time Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage devices face inefficiencies in determining whether to recover firmware upon booting, leading to wasted time and storage resources, particularly due to the use of test memory blocks which increase booting time and reduce data storage space.
Innovation Solution
A storage device with a controller that includes a recovery determination circuit and a recovery performing circuit, which assesses the loading times and cumulative loading times of first and second firmware, along with booting count information, to selectively determine and perform recovery operations, thereby avoiding unnecessary recovery and wear on memory blocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If test memory blocks are used to determine firmware recovery status, then firmware recovery reliability is improved, but booting time increases and data storage space decreases
Solution Approach 1:
The patent extracts the firmware recovery determination function from the test memory block approach and implements it directly through the controller using loading time measurement. The controller measures the loading time of firmware from memory blocks and compares it against thresholds to determine recovery status, eliminating the need for separate test memory blocks and their associated overhead.
Solution Approach 2:
The patent introduces loading time measurement as an intermediary parameter to indirectly assess firmware recovery status. Instead of directly testing firmware functionality through test memory blocks, the system uses loading time as a mediator to infer firmware health, thereby reducing the need for explicit test operations during booting.
2Reliability
If test memory blocks are used to determine firmware recovery status, then firmware recovery reliability is improved, but data storage space decreases
Solution Approach 1:
The patent makes the memory blocks universal by enabling them to serve dual purposes: storing actual data/firmware and simultaneously providing recovery determination functionality through loading time measurement. This eliminates the need for dedicated test memory blocks, allowing all memory blocks to be used for data storage while the controller performs recovery assessment during normal operations.
Solution Approach 2:
The system enables memory blocks to self-diagnose their firmware recovery status by measuring their own loading times. The controller monitors loading times of firmware from each memory block and autonomously determines which blocks require recovery, eliminating the need for external test mechanisms and preserving data storage space.
3Reliability
If recovery operation is performed on all firmware, then firmware reliability is improved, but memory block wear increases
Solution Approach 1:
The patent applies partial action by performing recovery operations only on firmware that actually requires it, rather than recovering all firmware universally. The controller measures loading times and selectively triggers recovery only for firmware exceeding thresholds, thereby minimizing unnecessary write operations and reducing memory block wear while maintaining firmware reliability.
Solution Approach 2:
The system implements feedback through continuous monitoring of firmware loading times. The controller measures loading times, compares them against thresholds, and uses this feedback to determine when recovery is necessary. This closed-loop approach ensures recovery operations are triggered only when actually needed, preventing excessive memory block wear from unnecessary recovery cycles.
Data Source
AI summary
A storage device includes a semiconductor memory device including memory blocks; and a controller configured to control the semiconductor memory device. The semiconductor memory device stores first firmware in a first memory block among the memory blocks, and stores second firmware in a second memory block among the memory blocks. The controller includes a recovery determination circuit configured to determine whether to perform a recovery operation for at least one of the first and second firmwares, based on loading times of the first and second firmwares, cumulative loading time informations for the first and second firmwares and a booting count information; and a recovery performing circuit configured to perform the recovery operation for at least one of the first and second firmwares, based on the determination of the recovery determination circuit.


