Memory Controller Tag-Based Victim Page Selection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current memory systems lack an efficient method for selecting victim pages during merge operations, which can lead to suboptimal performance and resource allocation in managing data usage patterns.
Innovation Solution
A memory system that uses tags to classify data based on usage patterns, prioritizing page groups with higher valid page counts and selectively moving pages to free blocks during merge operations, allowing for efficient resource allocation and data management.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If victim pages are selected without considering data usage patterns, then the merge operation is simple to implement, but the memory system performance and resource allocation efficiency deteriorate
Solution Approach 1:
The patent segments victim pages into N different page groups based on data usage patterns, with each group having distinct selection priorities. This segmentation allows the system to differentiate between frequently accessed and infrequently accessed data, thereby improving memory system performance during merge operations without requiring complete redesign of the merge mechanism.
Solution Approach 2:
The patent applies local quality by assigning different selection priorities to different page groups based on their specific usage characteristics. Frequently accessed pages (higher priority) are protected from being selected as victims more often, while infrequently accessed pages (lower priority) are more likely to be selected. This localized differentiation optimizes resource allocation efficiency without increasing overall system complexity.
2Productivity
If all valid pages are treated equally during merge operations, then the management process is simple, but resource allocation efficiency and data usage optimization worsen
Solution Approach 1:
The patent divides all valid pages into N distinct page groups based on usage patterns, where each group receives different treatment during merge operations. This segmentation enables the system to allocate resources more efficiently by protecting frequently accessed pages while allowing infrequently accessed pages to be consolidated, thereby improving resource allocation efficiency without requiring complex individual page management.
Solution Approach 2:
The patent changes the selection priority parameter based on page group classification. By assigning different priority levels (first priority for frequently accessed pages, second priority for infrequently accessed pages), the system optimizes resource allocation during merge operations. This parameter-based differentiation improves efficiency while maintaining manageable complexity through systematic classification.
3Productivity
If frequently accessed data is moved during merge operations, then storage space is optimized, but data access speed and system responsiveness deteriorate
Solution Approach 1:
The patent applies local quality by giving frequently accessed pages (first page group) higher selection priority, making them less likely to be chosen as victim pages during merge operations. This localized protection ensures that hot data remains in its current location and is not moved, thereby maintaining fast access speeds while still allowing storage space optimization through consolidation of less frequently accessed pages from other groups.
Solution Approach 2:
The patent changes the victim selection parameter by introducing usage-based priority levels. Frequently accessed pages are assigned a priority that reduces their likelihood of being selected as victims, while less frequently accessed pages have lower priority and are more likely to be selected. This parameter modification enables storage optimization without compromising data access speed for critical data.
Data Source
AI summary
A memory system includes a nonvolatile memory device including a plurality of memory blocks each including a plurality of pages; and a controller suitable for, when writing a plurality of data in the pages according to a write request from a host, writing the plurality of data with tags, classified into N number of kinds depending on a usage pattern of each data, together in the pages. The controller manages a list of victim blocks as a target of a merge operation, the controller manages entire valid pages included in the victim blocks, by classifying them into N number of page groups depending on a kind of each of the entire valid pages, and the controller selects valid pages to be moved to a free block in the merge operation, among the entire valid pages, and N may be a natural number of 2 or greater.


