Memory Controller Wear-Leveling Mode Switching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Users face difficulties in selecting the appropriate wear-leveling mode for flash memory systems, leading to inefficient data transfers due to incorrect mode selection, which can result in unnecessary data movement and reduced access control efficiency.

Innovation Solution

A memory controller that dynamically updates count numbers and transfers data between physical blocks based on the frequency of writing, using a count information system to determine when to move data from less frequently written blocks to more frequently written blocks, thereby maintaining even writing numbers across all blocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the user selects the static-wear leveling mode, then the average writing numbers for all blocks could be evened, but unnecessary data transfers will be frequently executed when there is little physical recording data to be written

Engineering Contradiction:
Improvewear-leveling performanceVSAvoidunnecessary data transfers
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The memory controller automatically determines the appropriate wear-leveling mode by monitoring the number of physical blocks storing less frequently written data, eliminating the need for user selection. The system self-adjusts between dynamic and static wear-leveling modes based on actual usage patterns, preventing unnecessary data transfers while maintaining optimal wear-leveling performance.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system dynamically changes the wear-leveling mode parameter based on the count of physical blocks storing less frequently written data. When this count exceeds a threshold, the system switches from dynamic to static wear-leveling mode, and vice versa, optimizing performance based on actual data distribution patterns.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If the user manually selects the wear-leveling mode, then the mode can be adjusted according to data writing frequency, but the user is subject to choose the proper mode and arrange conditions which is burdensome

Engineering Contradiction:
Improvewear-leveling mode selectionVSAvoiduser configuration burden
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The memory controller automatically determines the appropriate wear-leveling mode by monitoring the number of physical blocks storing less frequently written data, eliminating the need for user selection. The system self-adjusts between dynamic and static wear-leveling modes based on actual usage patterns, preventing unnecessary data transfers while maintaining optimal wear-leveling performance.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system continuously monitors the number of physical blocks storing less frequently written data and uses this feedback to automatically adjust the wear-leveling mode. This closed-loop control ensures the system adapts to changing data patterns without user intervention, maintaining optimal performance while simplifying operation.

Inventive Principle:
Principle #23Feedback

3Reliability

If the dynamic-wear leveling mode is chosen, then physical blocks storing less frequently written data are controlled evenly, but physical blocks storing data that has not been written are left unused

Engineering Contradiction:
Improvewear-leveling performance for active blocksVSAvoidutilization of physical blocks
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system dynamically changes the wear-leveling mode parameter based on the count of physical blocks storing less frequently written data. When this count exceeds a threshold, the system switches from dynamic to static wear-leveling mode, and vice versa, optimizing performance based on actual data distribution patterns.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8239612B2Memory controller, flash memory system with memory controller, and control method of flash memory
Publication Date: 2012.08.07 TDK CORP
  • US8239612B2 patent drawing
  • US8239612B2 patent drawing
  • US8239612B2 patent drawing

AI summary

The memory controller updates a count number based on a new assignment of a logical block to a physical block, and writes count information in the physical block to which the logical block is newly assigned. The count information is defined by the count number. The memory controller decides, based on the count number and the count information stored in each physical block, whether or not to transfer stored data in a physical block to another physical block.