Flash Memory Controller Interruptible Meta Data Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Flash memory systems face performance delays due to resource conflicts and internal operations, which can slow down the overall system when responding to host requests, especially during operations like writing or wear-leveling, as they require managing different data sizes and operations simultaneously.
Innovation Solution
A non-volatile memory system with a flash memory controller that uses two types of memory (DRAM and SRAM) to manage meta data, allowing for the interruption and resumption of current operations when a new request is received, enabling immediate processing of requests that require meta data changes and continuing existing operations without interruption for those that do not.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the flash memory controller waits for the current operation to complete before processing a new request, then resource conflicts are avoided, but the response time to host requests increases
Solution Approach 1:
The patent implements dynamic operation management by allowing the flash memory controller to interrupt current operations when new requests arrive. The controller dynamically adjusts operation execution based on request priority and resource availability, switching between waiting for completion and interrupting current operations to process new requests, thereby resolving the contradiction between avoiding resource conflicts and reducing response time
Solution Approach 2:
The patent changes the operational parameters of the flash memory controller by introducing interruptible operation modes. Instead of a fixed wait-for-completion protocol, the controller can change its operational state to allow interruptions, process new requests, and then resume or complete the original operation, thus adjusting the time parameter to reduce response time while maintaining resource conflict avoidance
2Loss of time
If the flash memory controller processes new requests immediately during ongoing operations, then response time is reduced, but resource conflicts occur
Solution Approach 1:
The patent introduces an intermediary mechanism in the form of a buffer or intermediate storage structure that allows new requests to be queued and processed without directly conflicting with ongoing operations. The controller uses this intermediary to manage resource access, ensuring that new requests can be processed promptly while resource conflicts are prevented through coordinated resource allocation
Solution Approach 2:
The controller dynamically manages resource allocation by adjusting its behavior based on the current operational state. When resources are available, it processes new requests immediately; when resources are occupied, it coordinates access to prevent conflicts. This dynamic resource management resolves the contradiction between immediate processing and conflict avoidance
3Device complexity
If the flash memory controller uses a single memory structure for meta data, then device complexity is reduced, but processing speed for meta data changes decreases
Solution Approach 1:
The patent segments the meta data storage into multiple memory structures or partitions within the flash memory controller. This segmentation allows different types of meta data or different operational contexts to be stored separately, enabling faster access and processing for specific meta data changes while maintaining overall system organization and managing complexity through structured division
Data Source
AI summary
A non-volatile memory controller, system and method capable of processing a next request as an interrupt before completing a current operation are disclosed. The non-volatile memory system includes a first memory storing meta data loaded from a flash memory; a second memory storing the meta data copied from the first memory; and a flash memory controller copying the meta data from the first memory to the second memory, changing the meta data in the second memory, and then re-copying the changed meta data from the second memory to the first memory during a first-type operation that requires changes in the meta data.


