NVM Interface Dynamic Static Data Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional non-volatile memory (NVM) systems face inefficiencies in garbage collection and wear leveling due to the arbitrary placement of dynamic and static data, leading to increased wear and reduced lifespan of NVMs.

Innovation Solution

A method to determine whether data being written to NVM is dynamic or static, allowing the NVM interface to initially place data in dynamic or static stream blocks, thereby improving garbage collection efficiency and reducing unnecessary wear leveling.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If data is arbitrarily placed in NVM blocks without classification, then device complexity is reduced, but garbage collection efficiency deteriorates due to significant valid data copying requirements

Engineering Contradiction:
Improvedata placement managementVSAvoidgarbage collection efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments NVM blocks into two distinct types: dynamic blocks for frequently updated data and static blocks for rarely updated data. This segmentation allows the system to apply different management strategies to different data types, improving garbage collection efficiency by targeting only dynamic blocks while preserving static data, thereby reducing the amount of valid data that needs to be copied during garbage collection operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by treating dynamic and static data differently within the NVM system. Static data blocks are identified and protected from unnecessary garbage collection operations, while dynamic data blocks receive appropriate management. This localized approach ensures that garbage collection operations are performed only where necessary, improving overall efficiency without increasing system complexity.

Inventive Principle:
Principle #3Local quality

2Reliability

If wear leveling is performed on all NVM blocks, then NVM lifespan is extended, but unnecessary wear is caused to static data blocks

Engineering Contradiction:
ImproveNVM lifespanVSAvoidunnecessary wear
Core Design Contradiction:
ReliabilityVSObject-generated harmful factors

Solution Approach 1:

The patent segments NVM blocks into dynamic and static categories, enabling selective wear leveling operations. By identifying static data blocks through their access patterns and metadata, the system can exclude them from wear leveling operations, thereby extending overall NVM lifespan without causing unnecessary wear to blocks that do not require redistribution.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by implementing wear leveling only on dynamic data blocks where it is actually beneficial, while leaving static data blocks untouched. This localized wear leveling strategy prevents unnecessary wear operations on static blocks, reducing harmful factors while maintaining the reliability benefits of wear leveling where needed.

Inventive Principle:
Principle #3Local quality

3Device complexity

If dynamic and static data are mixed in the same block, then device complexity is reduced, but the amount of valid data to be copied during garbage collection increases

Engineering Contradiction:
Improvedata management structureVSAvoiddata copying overhead
Core Design Contradiction:
Device complexityVSLoss of substance

Solution Approach 1:

The patent segments data storage by creating separate dynamic and static block pools. When data is written to NVM, the system classifies it as dynamic or static based on access patterns and metadata, then places it in the appropriate block type. This segmentation ensures that static data blocks contain primarily static data, reducing the amount of valid data that must be copied during garbage collection operations on dynamic blocks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by implementing different data placement strategies for dynamic and static blocks. Static blocks are optimized for data preservation with minimal copying, while dynamic blocks are optimized for frequent updates. This localized approach reduces overall data copying overhead by ensuring that garbage collection operations on static blocks are minimized or eliminated.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP2472405B1Handling dynamic and static data for a system having a non-volatile memory
Publication Date: 2014.12.17 APPLE INC
  • EP2472405B1 patent drawingFigure 1
  • EP2472405B1 patent drawingFigure 2
  • EP2472405B1 patent drawingFigure 3

AI summary

Systems and methods are disclosed for handling dynamic and static data for a system having non-volatile memory ("NVM") (120). By determining whether data being written to the NVM (120) is dynamic or not, a NVM interface (118) of a system can determine where to initially place the data on the NVM (120) (e.g., place the data on either a dynamic stream block or a static stream block). Moreover, this information can allow the NVM interface (118) to improve the efficiencies of both garbage collection ("GC") and wear leveling.