Storage Class Memory Bad Location Management via Distributed Pointers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage Class Memory (SCM) devices face challenges in managing bad locations due to their unique characteristics, such as scattered failed bits and the need for byte-addressability and non-volatility, which differ from traditional memory and storage systems, requiring an innovative bad location management technique to enhance yield and performance.

Innovation Solution

The proposed method involves dividing SCM into non-reserved and reserved spaces, using distributed pointers to link failure locations with replacement locations, allowing for classification of data units into 'good', 'mostly good', and 'mostly bad' categories, and employing error correcting codes to manage and redirect data access accordingly, thereby tolerating a higher number of failed bits without relying on centralized address redirection tables.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional bad location management techniques are used in SCM, then the system can handle bad blocks, but the scattered failed bits and byte-addressability requirement make traditional approaches ineffective, reducing reliability

Engineering Contradiction:
Improvebad location management effectivenessVSAvoidadaptability to scattered failed bits
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent segments the SCM address space into multiple levels: first-level bad blocks (containing multiple second-level bad blocks) and good blocks. This hierarchical segmentation allows the system to manage scattered failed bits systematically by organizing them into manageable units, enabling effective bad location management while maintaining byte-addressability and handling the distributed nature of failures in SCM devices.

Inventive Principle:
Principle #1Segmentation

2Speed

If main memory capacity is increased to improve performance, then response time improves, but cost and power consumption increase significantly

Engineering Contradiction:
Improveresponse timeVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The patent performs preliminary classification of data units into good, mostly good, and mostly bad categories during system initialization or idle periods. By pre-identifying and managing bad locations in advance, the system optimizes access patterns and reduces the need for excessive main memory capacity, thereby lowering power consumption while maintaining acceptable performance levels.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If centralized address redirection tables are used to manage bad locations, then bad blocks can be redirected, but the complexity and cost of the system increases

Engineering Contradiction:
Improvebad block redirection capabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the bad location management function into distributed pointers stored within the SCM device itself rather than relying on a single centralized redirection table. Each bad block or data unit contains its own pointer information, distributing the redirection logic throughout the device. This approach maintains reliability by enabling bad block redirection while reducing overall system complexity by eliminating the need for large centralized tables and associated management overhead.

Inventive Principle:
Principle #1Segmentation

4Adaptability or versatility

If SCM is designed with byte-addressability and non-volatility, then it bridges memory and storage, but managing bad locations becomes more difficult compared to traditional memory

Engineering Contradiction:
Improvebyte-addressability and non-volatilityVSAvoidbad location management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies hierarchical segmentation to manage the complexity of bad locations in byte-addressable, non-volatile SCM. By organizing bad blocks into first-level and second-level categories and using distributed pointers within the byte-addressable structure, the system maintains the versatility of byte-addressability and non-volatility while systematically managing the complexity through structured classification and distributed pointer management.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11016686B2Apparatus and method of bad location management for storage class memory using distributed pointers
Publication Date: 2021.05.25 WOLLEY INC
  • US11016686B2 patent drawing
  • US11016686B2 patent drawing
  • US11016686B2 patent drawing

AI summary

A method and apparatus of bad location management for storage class memory are disclosed. A nonvolatile memory is partitioned into a non-reserved space and a reserved space, which are divided into multiple data units. The health status of the data units in the non-reserved space are classified into multiple classes including a mostly-good class. For host data read, the data from a mostly-good data unit are read and whether the data includes a pointer is checked. If no pointer, the data read are returned as the host data. Otherwise, the data unit pointed by the pointer is read. For data write, the data from a mostly-good data unit are read. If no pointer in the read data, the host data are written into the mostly-good data unit. Otherwise, the host data are written into the data unit in the reserved space pointed by the pointer.