Flash Translation Layer Rewind Feature for Data Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Persistent storage systems, particularly those using flash memory, often overwrite data irreversibly, making it difficult to retrieve previously stored data when circumstances change, leading to a need for a system to preserve and recover overwritten data.

Innovation Solution

A persistent storage device with a rewind feature that employs flash memory to save new data in a different physical location while updating the logical-to-physical table, allowing hosts to bookmark and later retrieve previous data by mapping logical addresses back to original physical locations upon receiving a rewind command.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is overwritten in flash memory, then storage capacity is utilized efficiently, but the previously stored data becomes unavailable and cannot be retrieved

Engineering Contradiction:
Improvestorage capacity utilizationVSAvoiddata retrievability
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent segments the flash memory address space into multiple pools (first pool for new data, second pool for preserved data). When a rewrite operation is detected, the system divides the data storage path: new data goes to the first pool, while old data is redirected to the second pool. This segmentation allows both new and old data to coexist without interference, resolving the contradiction between efficient storage utilization and data retrievability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by treating different data pools with different characteristics. The first pool is optimized for new writes with standard overwriting behavior, while the second pool is specifically designed for preserving old data with restricted overwrite operations. This localized differentiation allows the system to maximize storage efficiency in the first pool while ensuring data retrievability in the second pool.

Inventive Principle:
Principle #3Local quality

2Loss of information

If a bookmarking mechanism is implemented to preserve old data, then data retrievability is improved, but device complexity increases due to additional tables and commands

Engineering Contradiction:
Improvedata retrievabilityVSAvoidsystem structure
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent merges the bookmarking functionality with the existing logical-to-physical mapping table structure. Instead of creating a completely separate bookmark table, the system extends the existing L2P table to include preservation bits and pool identification. This merging approach reduces device complexity by reusing existing data structures while still providing the required data preservation and retrieval capabilities.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The logical-to-physical mapping table serves multiple functions: it maps logical addresses to physical locations for normal writes, identifies which pool (first or second) a logical address belongs to, and tracks preservation status through embedded bits. This multi-functionality eliminates the need for separate bookmark tables, reducing system complexity while maintaining full data retrievability through the bookmarking mechanism.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Loss of information

If new data is always written to different physical locations, then data preservation is enabled, but write amplification increases and SSD life is reduced

Engineering Contradiction:
Improvedata preservationVSAvoidwrite amplification
Core Design Contradiction:
Loss of informationVSLoss of substance

Solution Approach 1:

The patent implements preliminary action by detecting rewrite operations before they complete and proactively redirecting old data to the second pool. The system monitors write commands, identifies when data is being rewritten, and pre-emptively preserves the old version before it is overwritten. This preliminary intervention prevents data loss without requiring additional write operations, as the preservation is built into the write path itself.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system performs self-service by automatically detecting rewrite operations and managing data preservation without requiring external intervention. The flash translation layer monitors write commands, identifies rewrites, and autonomously redirects old data to the appropriate pool. This self-service mechanism eliminates the need for host-level backup operations, reducing write amplification while maintaining data preservation capabilities.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11960757B2Flash translation layer with rewind
Publication Date: 2024.04.16 SAMSUNG ELECTRONICS CO LTD
  • US11960757B2 patent drawing
  • US11960757B2 patent drawing
  • US11960757B2 patent drawing

AI summary

A flash translation layer with a rewind feature, and a method of operation. In some embodiments, the method includes: receiving, by a storage device, a first write command, for a first logical address; performing, by the storage device, a write to flash memory at a first physical address, corresponding to the first logical address; receiving, by the storage device, a first bookmarking command, for the first logical address; receiving, by the storage device, a second write command, for the first logical address; performing, by the storage device, a write to flash memory at a second physical address, corresponding to the first logical address; receiving, by the storage device, a first rewind command, for the first logical address; receiving, by the storage device, a read command, for the first logical address; and retrieving, by the storage device, in response to the read command, data from the first physical address.