Flash Memory Mapping Structures for Error Correction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory devices suffer from high bit error rates due to inaccuracies during programming and charge loss over time and temperature, leading to reduced reliability and increased program-erase cycles, which are exacerbated by the need to erase entire blocks at once, resulting in insufficient error correction capabilities.

Innovation Solution

The implementation of a method that utilizes multiple mapping data structures of different granularities to manage flash memory, allowing for sequential writing of physical pages and random allocation of logical addresses, enabling efficient access and writing operations while optimizing error correction and reducing the number of program-erase cycles.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple mapping data structures of different granularity are used to manage flash memory, then reliability and error correction capabilities are improved, but device complexity increases

Engineering Contradiction:
Improvebit error rateVSAvoidmapping data structures
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The mapping system is divided into multiple data structures with different granularities (fine-grained mapping for precise address translation, coarse-grained mapping for block-level management). This segmentation allows each mapping structure to handle specific aspects of memory management, improving error correction capabilities while distributing complexity across multiple specialized components rather than one monolithic system

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Multiple mapping data structures are nested hierarchically, with finer-grained mappings contained within or coordinated by coarser-grained mappings. This nested architecture enables layered error correction where each level provides protection for specific ranges of memory addresses, enhancing overall reliability while organizing complexity in a manageable hierarchical structure

Inventive Principle:
Principle #7Nested doll (Nesting)

2Productivity

If sequential writing of physical pages with random logical address allocation is implemented, then productivity is improved, but device complexity increases

Engineering Contradiction:
Improvewrite operation efficiencyVSAvoidaddress mapping management
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Physical pages are prepared and organized in sequential order in advance, with mapping relationships pre-established between physical and logical addresses. This preliminary organization of physical storage resources allows write operations to proceed efficiently without real-time allocation decisions, improving productivity while the mapping structures handle the complexity of address translation

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The mapping data structures maintain copies of address translation information at different granularities, allowing the system to quickly resolve logical to physical address mappings without complex real-time calculations. This copying approach enables efficient random logical address allocation while sequential physical writing, as the mapping copies provide rapid address resolution

Inventive Principle:
Principle #26Copying

3Duration of action of moving object

If the number of program-erase cycles is extended, then reliability is improved, but bit error rate increases

Engineering Contradiction:
Improveprogram-erase cycle lifetimeVSAvoidbit error rate
Core Design Contradiction:
Duration of action of moving objectVSReliability

Solution Approach 1:

Multiple mapping data structures with different granularities are established in advance to provide layered error correction capabilities before errors occur. This preemptive error protection allows the system to correct bit errors that arise during extended program-erase cycles, enabling longer device lifetime while maintaining reliability through pre-configured correction mechanisms

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Solution Approach 2:

The system dynamically adjusts error correction parameters based on the number of program-erase cycles and observed bit error rates. By changing correction thresholds and mapping granularity based on device aging and error patterns, the system can extend operational lifetime while adapting to increasing error rates over time

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8819385B2Device and method for managing a flash memory
Publication Date: 2014.08.26 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US8819385B2 patent drawing
  • US8819385B2 patent drawing
  • US8819385B2 patent drawing

AI summary

A method for accessing a flash memory, the method includes: receiving a read request that is associated with a logical address that is mapped to a physical address of a set of flash memory cells; accessing multiple mapping data structures of different granularity to obtain the physical address of the set of flash memory cells; wherein during at least one point in time at least one mapping data structure is stored in an erase block and wherein the erase block comprises multiple physical pages that are written in a sequential manner and are associated with logical page addresses that are assigned in a random manner; and reading a content of the set of flash memory cells.