Non-Volatile Memory Data Parity Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data storage systems in non-volatile memory, such as Flash memory, face inefficiencies due to the mixing of application data and parity information, which leads to reduced performance and increased wear on memory cells, as they are managed together despite having different access statistics.

Innovation Solution

The proposed solution involves storing application data and parity information separately in non-volatile memory and performing independent memory management tasks on each, such as block compaction and wear leveling, to optimize storage efficiency and performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If application data and parity information are stored together in the same physical memory areas, then storage space utilization is improved, but memory management efficiency deteriorates and performance decreases

Engineering Contradiction:
Improvestorage space utilizationVSAvoidmemory management efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent divides the physical memory areas into separate regions: first physical memory areas for storing application data and second physical memory areas for storing parity information. This segmentation allows independent memory management operations on each region, resolving the contradiction by sacrificing some storage space density to gain significant improvements in management efficiency and performance.

Inventive Principle:
Principle #1Segmentation

2Device complexity

If application data and parity information are managed together, then system complexity is reduced, but wear leveling performance deteriorates

Engineering Contradiction:
Improvesystem complexityVSAvoidmemory lifespan
Core Design Contradiction:
Device complexityVSDuration of action of stationary object

Solution Approach 1:

By segmenting the storage system into separate physical memory areas for data and parity, the patent enables independent wear leveling operations on each region. This extends memory lifespan by preventing uneven wear distribution while maintaining manageable system complexity through structured separation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different memory management strategies to different regions: the first physical memory areas undergo wear leveling optimized for application data access patterns, while the second physical memory areas undergo wear leveling optimized for parity information. This local quality approach extends overall memory lifespan by tailoring management to specific operational characteristics.

Inventive Principle:
Principle #3Local quality

3Quantity of substance

If block compaction is performed on mixed data and parity areas, then storage density is improved, but copy operations increase unnecessarily

Engineering Contradiction:
Improvestorage densityVSAvoidcopy operations
Core Design Contradiction:
Quantity of substanceVSLoss of energy

Solution Approach 1:

The patent performs block compaction independently on the first physical memory areas containing application data, while leaving the second physical memory areas containing parity information unchanged. This selective compaction eliminates unnecessary copy operations on parity data while still achieving storage density improvements through compaction of the data regions.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9170885B2Independent management of data and parity logical block addresses
Publication Date: 2015.10.27 APPLE INC
  • US9170885B2 patent drawing
  • US9170885B2 patent drawing
  • US9170885B2 patent drawing

AI summary

A data storage method includes identifying, in a set of data items associated with respective logical addresses for storage in a memory, a first subset of the logical addresses associated with the data items containing application data, and a second subset of the logical addresses associated with the data items containing parity information that has been calculated over the application data. The data items associated with the first identified subset are stored in one or more first physical memory areas of the memory, and the data items associated with the second identified subset are stored in one or more second physical memory areas of the memory, different from the first physical memory areas. A memory management task is performed independently in the first physical memory areas and in the second physical memory areas.