Flash Memory Queue Management for SSD Processing Delays
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The management processing requirements of NAND-type flash memory in SSDs lead to delays in information processing due to the need for data redistribution, garbage collection, and handling of charge leakage, which are not efficiently prioritized with existing methods, resulting in potential data loss and processing bottlenecks.
Innovation Solution
A system where access requests and management processing operations are sorted into different queues based on priority and content, with rules for switching between queues to optimize execution frequency and timing, ensuring stable information processing without significant delays.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If management processing operations (data redistribution, garbage collection, charge leakage handling) are prioritized over host CPU requests, then data integrity and memory stability are improved, but information processing delay time increases
Solution Approach 1:
The patent segments management processing operations into multiple priority levels and queues. Critical management tasks (like charge leakage handling) are separated from less urgent tasks (like garbage collection), allowing the system to prioritize critical operations while still making progress on non-critical ones, thus reducing overall processing delays while maintaining data integrity.
Solution Approach 2:
The patent implements dynamic priority adjustment based on real-time memory conditions. When charge leakage risk is detected or memory wear reaches critical thresholds, management processing priorities are automatically increased. This dynamic adaptation allows the system to maintain reliability only when necessary, reducing unnecessary delays during normal operation.
2Productivity
If high-speed writing operations are executed continuously, then writing speed is improved, but memory cell durability deteriorates due to repeated read/write operations
Solution Approach 1:
The patent performs preliminary data redistribution and wear-leveling operations before memory cells reach critical wear thresholds. By proactively managing data placement and identifying underutilized memory regions in advance, the system maintains high writing speeds while preventing premature memory cell failure through preventive rather than reactive maintenance.
Solution Approach 2:
The patent dynamically adjusts writing parameters such as write voltage, pulse duration, and data distribution patterns based on real-time memory cell status. When certain memory blocks show signs of wear, the system changes writing parameters to reduce stress on those cells, thereby maintaining writing speed while extending memory cell durability through adaptive parameter optimization.
3Quantity of substance
If data is frequently read from flash memory to reduce system memory capacity, then system memory requirements are reduced, but charge leakage occurs leading to data destruction
Solution Approach 1:
The patent implements a feedback mechanism that monitors read frequency and memory cell status continuously. When charge leakage risk is detected through error correction failures or read disturbances, the system automatically triggers data refresh operations to relocate data to fresh memory cells, thereby maintaining data integrity while still enabling frequent reads to minimize system memory usage.
Solution Approach 2:
The flash memory management system performs self-service by automatically detecting and correcting charge leakage issues without host CPU intervention. The controller monitors its own memory cells, identifies deteriorating cells, and redistributes data autonomously, allowing the system to maintain high read frequencies while protecting against self-inflicted data loss from charge leakage.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A host unit 12 of an information processing apparatus has a command issuing block 30 for issuing access requests to a flash memory 20, the issued commands being dividedly stored in two or more queues 44 according to the contents and emergency level of access. A management command generating block 42 of a flash controller 18 generates requests for the processing necessary for the management of the flash memory 20, the requests being stored in any one of the queues 44. Following the rules set for each queue, a command processing block 46 reads commands by switching between the queues and processes the commands.