Non-Volatile Memory Under-Programming Error Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional techniques fail to effectively detect and mitigate under-programming errors in multi-bit NAND flash memory, leading to power consumption and memory bandwidth issues, as well as unnecessary retirement of pages or blocks, which can result in premature loss of storage capacity.

Innovation Solution

A non-volatile memory system that utilizes program time as a metric to detect under-programming errors by monitoring the duration of programming passes and performing mitigation strategies, such as relocating data and invalidating affected pages, to prevent future read errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional error detection techniques (host read or background read) are used to detect under-programming errors, then errors can be detected, but power consumption increases and memory bandwidth is consumed

Engineering Contradiction:
Improveerror detection capabilityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent performs error detection during the programming operation itself by monitoring whether the programming completes within the expected time window, rather than performing separate read operations afterward. This preliminary detection avoids the power and bandwidth costs of subsequent verification reads while still identifying under-programmed pages.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If conventional error detection techniques (host read or background read) are used to detect under-programming errors, then errors can be detected, but memory throughput is reduced

Engineering Contradiction:
Improveerror detection capabilityVSAvoidmemory throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The detection is performed as part of the programming operation itself, integrating error detection into the existing programming workflow without requiring separate read operations that would consume memory bandwidth and reduce overall throughput.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If pages are retired to mitigate under-programming errors, then read errors are prevented, but storage capacity is lost and healthy pages may be prematurely retired

Engineering Contradiction:
Improveread error preventionVSAvoidstorage capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

By detecting under-programmed pages during the programming phase rather than later during read operations, the system can identify and handle only the truly defective pages. This prevents the premature retirement of healthy pages that would occur with conventional delayed detection methods, thereby preserving storage capacity while still preventing read errors.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11908531B2Detecting and managing under-program failures in non-volatile memory
Publication Date: 2024.02.20 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11908531B2 patent drawing
  • US11908531B2 patent drawing
  • US11908531B2 patent drawing

AI summary

A non-volatile memory includes a plurality of cells each individually capable of storing multiple bits of data including bits of multiple physical pages. A controller of the non-volatile memory issues a command to perform a programming pass for a physical page among the multiple physical pages. The controller determines whether or not the programming pass took less than a minimum threshold time and no program fail status indication was received. Based on determining the programming pass took less than a minimum threshold time and no program fail status indication was received, the controller detects an under-programming error and performs mitigation for the detected under-programming error.