Expandable Data Cache for Storage Devices
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Flash memory management systems face inefficiencies due to over-provisioning of on-chip memory for data buffering and control data caching, which contradicts cost constraints, and temporary control data caches pose challenges when memory is reclaimed for other uses.
Innovation Solution
A method and system that allocate two separate cache areas in the memory: a permanent data cache and a temporary data cache, allowing the temporary cache to be reclaimed for other purposes, with the controller managing entries to keep them clean, thereby avoiding the need to store values from the temporary cache.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a fixed permanent portion of on-chip memory is assigned for data buffering and control data caching, then the system can handle corner cases and ensure reliability, but the on-chip memory is over-provisioned which increases cost and contradicts cost constraints
Solution Approach 1:
The patent divides the on-chip memory into two distinct segments: a permanent cache that retains data across power cycles and a temporary cache that is cleared upon power loss. This segmentation allows the system to allocate minimal permanent memory for critical corner case handling while using temporary memory for general caching, thereby reducing overall on-chip memory requirements while maintaining reliability for important operations.
Solution Approach 2:
The patent changes the state parameter of the temporary cache from persistent to non-persistent by design, allowing it to be cleared under specific conditions (power loss, reclamation needed). This parameter change enables the temporary cache to be reused for different purposes without requiring additional memory allocation, thus reducing the total memory footprint while maintaining system reliability.
2Quantity of substance
If a temporary control data cache is assigned, then the on-chip memory usage is optimized, but the memory cannot be easily reclaimed for other uses when needed
Solution Approach 1:
The patent implements a dynamic temporary cache management system where the cache can be allocated and deallocated based on real-time system needs. The temporary cache is designed to be automatically cleared or manually reclaimed when power is lost or when the system requires the memory for other purposes, providing both memory efficiency and adaptability without contradiction.
Solution Approach 2:
The patent employs a discard and recover mechanism for the temporary cache. When the temporary cache is no longer needed or when power is lost, the cache contents are discarded and the memory space is recovered for other uses. This approach maintains memory usage efficiency while ensuring high adaptability for memory reclamation when required by system demands.
3Productivity
If a two-level cache system is implemented with permanent and temporary caches, then system performance is improved through better data caching, but the device complexity increases
Solution Approach 1:
The patent segments the cache system into permanent and temporary portions with clearly defined roles. The permanent cache handles critical corner cases and persistent data, while the temporary cache handles general caching needs. This segmentation simplifies management logic compared to a fully dynamic system, as each segment has predetermined behavior, thereby reducing overall device complexity while maintaining performance benefits.
4Adaptability or versatility
If the temporary data cache is reclaimed for another purpose, then memory resources are efficiently reused, but any dirty entries in the temporary cache would need to be stored elsewhere
Solution Approach 1:
The patent extracts the persistence requirement from the temporary cache by design. The temporary cache is explicitly designed not to maintain dirty entries across reclamation events. When memory needs to be reclaimed, the temporary cache is simply cleared without requiring complex write-back operations, as it never accumulates persistent dirty data that would need to be preserved. This extraction of the persistence function simplifies reclamation operations significantly.
Data Source
AI summary
A method and system for cache management in a storage device is disclosed. A portion of unused memory in the storage device is used for temporary data cache so that two levels of cache may be used (such as a permanent data cache and a temporary data cache). The storage device may manage the temporary data cache in order to maintain clean entries in the temporary data cache. In this way, the storage area associated with the temporary data cache may be immediately reclaimed and retasked for a different purpose without the need for extraneous copy operations.


