Memory Codewords Spanning Pages for Higher ECC Utilization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face challenges in efficiently utilizing physical pages due to the fixed size of codewords, which can lead to underutilization of memory capacity when the code rate of error correction schemes requires more data than can be stored in a single physical page.

Innovation Solution

The method involves writing a primary codeword across multiple physical pages, with portions of the codeword written to different pages and blocks, and using a secondary codeword to error code these primary codewords, allowing for non-integer numbers of codewords to be written across pages while maintaining an integer number collectively, thus efficiently utilizing memory capacity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If codewords are written to fit within a single physical page, then error correction reliability is maintained, but memory capacity utilization deteriorates when code rate requires more data than a single page can store

Engineering Contradiction:
Improveerror correction reliabilityVSAvoidmemory capacity utilization
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent divides a single logical codeword into multiple physical segments stored across different pages. Specifically, the codeword is split into first and second portions that are written to different physical pages, allowing the system to maintain error correction reliability while utilizing more total memory capacity than a single page would allow.

Inventive Principle:
Principle #1Segmentation

2Device complexity

If fixed size codewords are used, then error correction scheme simplicity is maintained, but memory page utilization deteriorates due to underutilization when code rate requirements exceed single page capacity

Engineering Contradiction:
Improveerror correction scheme simplicityVSAvoidmemory page utilization
Core Design Contradiction:
Device complexityVSQuantity of substance

Solution Approach 1:

The patent introduces dynamic allocation where codewords can span multiple pages based on the code rate requirements. The system dynamically determines whether to use single-page or multi-page codeword storage depending on the specific error correction needs, allowing flexible adaptation without changing the fundamental ECC scheme architecture.

Inventive Principle:
Principle #15Dynamics

3Device complexity

If codewords are constrained to single pages, then controller design simplicity is maintained, but memory utilization deteriorates

Engineering Contradiction:
Improvecontroller design simplicityVSAvoidmemory utilization efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent transitions from a single-dimension storage model (one codeword per page) to a multi-dimensional model where codewords can span multiple pages. This is achieved by introducing page-level segmentation and block-level organization, adding spatial dimensions to the storage architecture without fundamentally complicating the controller's core functions.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS9088303B2Codewords that span pages of memory
Publication Date: 2015.07.21 MICRON TECHNOLOGY INC
  • US9088303B2 patent drawing
  • US9088303B2 patent drawing
  • US9088303B2 patent drawing

AI summary

The present disclosure includes apparatuses and methods for codewords that span pages of memory. A number of methods include writing a first portion of a primary codeword to a first page in a first block of memory and writing a second portion of the primary codeword to a second page in a second block of memory. The primary codeword can be included in a secondary codeword. The method can include writing a first portion of the secondary codeword in the memory and writing a second portion of the secondary codeword to a different page and block of the memory than the first portion of the secondary codeword.