Nonvolatile Memory Block Reclaim Based on Program-Erase Cycles

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory devices face data integrity issues due to factors like temperature, read disturbance, program disturbance, and charge loss, leading to potential data loss, and existing methods do not effectively address the need for improving performance and reliability by adapting to varying program and erase cycles.

Innovation Solution

A method for a nonvolatile memory system that selects a source block based on program and erase cycles and adjusts the reclaim policy accordingly, performing a reclaim operation to secure data integrity by optimizing the reclaim speed and execution period based on the number of cycles.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If reclaim operations are performed frequently to ensure data integrity, then reliability improves, but system performance and overhead worsen

Engineering Contradiction:
Improvedata integrityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent changes the parameters of reclaim operations based on the number of program and erase cycles. For memory blocks with fewer P/E cycles, reclaim operations are performed more frequently with shorter intervals. For blocks with more P/E cycles, reclaim operations are performed less frequently with longer intervals. This dynamic parameter adjustment optimizes both data integrity and system performance by adapting the reclaim strategy to the actual wear state of each block.

Inventive Principle:
Principle #35Parameter changes

2Ease of manufacture

If reclaim operations are performed with fixed intervals, then implementation simplicity improves, but efficiency worsens due to unnecessary operations

Engineering Contradiction:
Improveimplementation simplicityVSAvoidreclaim operation efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent implements dynamic reclaim intervals based on the number of program and erase cycles of each memory block. Instead of using fixed intervals for all blocks, the system adjusts the reclaim interval dynamically - shorter intervals for blocks with fewer P/E cycles and longer intervals for blocks with more P/E cycles. This dynamic approach eliminates unnecessary reclaim operations on heavily used blocks while maintaining data integrity on lightly used blocks, significantly improving overall efficiency.

Inventive Principle:
Principle #15Dynamics

3Reliability

If reclaim operations are performed on all memory blocks uniformly, then data integrity coverage improves, but overhead increases

Engineering Contradiction:
Improvedata integrity coverageVSAvoidreclaim operation overhead
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies different reclaim strategies to different memory blocks based on their individual characteristics, specifically the number of program and erase cycles. Instead of uniform treatment, each block receives a customized reclaim policy - blocks with fewer P/E cycles get more frequent reclaim operations while blocks with more P/E cycles get less frequent operations. This localized quality approach ensures data integrity coverage where needed while reducing overhead in blocks that don't require intensive reclaim operations.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10089016B2Method of operation for a nonvolatile memory system and method of operating a memory controller
Publication Date: 2018.10.02 SAMSUNG ELECTRONICS CO LTD
  • US10089016B2 patent drawing
  • US10089016B2 patent drawing
  • US10089016B2 patent drawing

AI summary

A method of operating a nonvolatile memory system including a memory device having a plurality of memory blocks includes selecting a source block among the plurality of memory blocks in the nonvolatile memory system, and performing a reclaim operation for the source block based on the number of program and erase cycles which have been performed on the source block.