Global Address Table Segmentation for Unaligned Flash Writes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory controllers face inefficiencies and data corruption risks during unaligned writes in non-volatile memory systems, as they require pre- and post-padding, increasing write amplification and overhead.

Innovation Solution

The Global Address Table (GAT) is modified to index data at an unaligned sector level, incorporating an aligned GAT Page for each Flash Management Unit (FMU) and an unaligned GAT Page for each sector, allowing unaligned writes without the need for pre- and post-padding.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If pre- and post-padding is used to handle unaligned writes, then data alignment requirements are met, but write amplification and overhead increase

Engineering Contradiction:
Improvedata alignmentVSAvoidwrite amplification
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The Global Address Table is divided into multiple pages, with specific pages designated for aligned and unaligned writes. This segmentation allows the system to handle unaligned writes directly without requiring padding operations, as each GAT page can independently manage its own alignment requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects which GAT page to use based on whether the write operation is aligned or unaligned. This dynamic approach allows the memory controller to adapt to different write patterns without imposing fixed alignment requirements, thereby eliminating the need for pre- and post-padding operations.

Inventive Principle:
Principle #15Dynamics

2Manufacturing precision

If pre- and post-padding is performed for unaligned writes, then data is properly aligned to minimum write units, but data corruption risk increases

Engineering Contradiction:
Improvedata alignmentVSAvoiddata corruption risk
Core Design Contradiction:
Manufacturing precisionVSReliability

Solution Approach 1:

By segmenting the GAT into multiple pages with different alignment characteristics, the system isolates unaligned write operations to specific pages. This prevents padding operations from interfering with other data, thereby reducing the risk of data corruption while maintaining proper alignment where needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The unaligned GAT page acts as an intermediary structure that handles unaligned writes without requiring padding. This intermediary layer absorbs the alignment mismatch between host writes and memory requirements, preventing the need to read and manipulate existing data pages, thus eliminating data corruption risks.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If the GAT is loaded to cache for every unaligned write, then address mapping is accurate, but overhead increases

Engineering Contradiction:
Improveaddress mapping accuracyVSAvoidGAT loading overhead
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The GAT is segmented into multiple pages that can be independently cached. When an unaligned write occurs, the system only loads the specific unaligned GAT page into cache rather than the entire GAT, significantly reducing the overhead while maintaining accurate address mapping for the affected regions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary organization of the GAT into aligned and unaligned pages, allowing the cache to pre-load only the necessary unaligned page when needed. This preliminary structuring enables faster access and reduces overhead by avoiding unnecessary loading of aligned pages that don't require special handling.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10901912B2Flash translation layer table for unaligned host writes
Publication Date: 2021.01.26 SANDISK TECHNOLOGIES LLC
  • US10901912B2 patent drawing
  • US10901912B2 patent drawing
  • US10901912B2 patent drawing

AI summary

An apparatus is provided that includes a non-volatile memory and a memory controller coupled to the non-volatile memory. The memory controller is configured to access a global address table (GAT) that maps logical addresses of a host to physical addresses of the non-volatile memory, receive a request from the host to write first data to the non-volatile memory, determine that the first data comprises fragmented data that are not aligned to a minimum write unit of the non-volatile memory, and create an unaligned GAT page, wherein the unaligned GAT page comprises a logical-to-physical mapping for the first data.