Memory Controller Block Selection for Storage Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face challenges in efficiently managing and optimizing data storage across multiple memory blocks, leading to reduced performance and utilization efficiency due to uneven distribution of valid pages and update frequencies.

Innovation Solution

A memory system and operating method that utilize a controller to check parameters and deviations of memory blocks, selecting source memory blocks with parameters and deviations within threshold values, and copying valid data from these blocks to target blocks, thereby optimizing data storage and retrieval.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory blocks are managed without considering update frequencies and valid page counts, then the management process is simple, but data storage efficiency and performance deteriorate

Engineering Contradiction:
Improvedata storage efficiencyVSAvoidmanagement process complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The controller continuously monitors update frequencies and valid page counts of memory blocks, using this feedback information to dynamically adjust garbage collection operations and data migration strategies, thereby improving storage efficiency without requiring complex manual management

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The memory management system automatically identifies blocks requiring garbage collection or data migration based on monitored parameters, and autonomously performs these operations without external intervention, simplifying the management interface while maintaining high efficiency

Inventive Principle:
Principle #25Self-service

2Productivity

If all memory blocks are treated uniformly without differentiation, then the control logic is simple, but garbage collection efficiency deteriorates

Engineering Contradiction:
Improvegarbage collection efficiencyVSAvoidcontrol logic complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system applies different control strategies to different memory blocks based on their specific characteristics (update frequency, valid page count), with high-update blocks receiving priority garbage collection and low-update blocks being candidates for data migration, thereby optimizing overall efficiency

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

Memory blocks are segmented into different categories (e.g., high-update, low-update, candidate-for-migration) based on monitored parameters, allowing the controller to apply specialized management techniques to each segment rather than treating all blocks uniformly

Inventive Principle:
Principle #1Segmentation

3Productivity

If data is not migrated from blocks with low valid page counts, then storage operations are fast, but memory block utilization deteriorates

Engineering Contradiction:
Improvememory block utilizationVSAvoiddata migration time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The controller proactively identifies memory blocks with low valid page counts and migrates their data to other blocks before they become completely full or degraded, preventing future performance issues and maintaining high utilization without urgent time-critical operations

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10042569B2Memory system and operating method thereof
Publication Date: 2018.08.07 SK HYNIX INC
  • US10042569B2 patent drawing
  • US10042569B2 patent drawing
  • US10042569B2 patent drawing

AI summary

A memory system may include: a memory device including a plurality of memory blocks each memory block having a plurality of pages; and a controller suitable for checking parameters and deviations of the parameters for the respective memory blocks, which are recorded in a count information, and selecting source memory blocks among the memory blocks based on a result of the checking.