Storage Controller Log Data Transfer Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Typical solid state storage devices, such as NAND flash storage devices, face inefficiencies due to the need to erase previously stored information before writing new data, leading to latencies and inefficiencies when storing data to the same range of storage locations.

Innovation Solution

The system employs a storage device controller that manages a log portion and a data portion with multiple regions, where data is transferred based on validity and frequency of use, using a current position to determine the best region for storage, and employs a write count to decide when to transfer data from the log to the data portion, optimizing storage operations by invalidating less frequently used data and transferring it to adjacent regions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is written to the same range of storage locations repeatedly, then storage capacity is utilized efficiently, but latency increases due to repeated erasure operations

Engineering Contradiction:
Improvestorage capacity utilizationVSAvoidwrite latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The storage device is divided into a data portion and a log portion with multiple regions. The log portion is further segmented into multiple regions that can be independently managed. This segmentation allows write operations to be directed to different regions in the log portion, enabling parallel processing and reducing the impact of erasure operations on write latency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The log portion acts as an intermediary buffer between write commands and the data portion. Instead of writing directly to the data portion which requires erasure, writes are first directed to the log portion which can accept writes without erasure. The log portion then selectively transfers data to the data portion, mediating the conflict between write speed and erasure requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If data is transferred frequently from log to data portion, then data freshness is improved, but transfer overhead and complexity increase

Engineering Contradiction:
Improvedata freshnessVSAvoidtransfer management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements feedback mechanisms through write count tracking and validity flags. Each data entry in the log portion has an associated write count that is incremented with each write operation. When the write count exceeds a threshold or data becomes invalid, feedback triggers selective transfer to the data portion. This feedback-based approach automates transfer decisions, reducing manual management complexity while maintaining data freshness.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system changes parameters such as write count thresholds and validity flags to control transfer behavior. By monitoring parameters like the number of writes to the same location and validity status of data, the system dynamically decides when and what to transfer, simplifying management through parameter-based rules rather than complex algorithms.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If all data in log regions is transferred to data portion, then data loss is prevented, but storage efficiency and write performance deteriorate

Engineering Contradiction:
Improvedata preservationVSAvoidwrite performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system selectively discards invalid data in the log portion while recovering and transferring only valid data to the data portion. Validity flags mark data that is no longer current or has been superseded by newer writes. The system recovers useful data by transferring only valid entries, discarding invalid ones, thereby maintaining data preservation where needed while improving write performance by avoiding unnecessary transfers.

Inventive Principle:
Principle #34Discarding and recovering

Solution Approach 2:

Instead of transferring all data from the log portion (excessive action), the system performs partial transfers only for valid data that needs to be preserved. This partial action approach maintains sufficient data preservation while avoiding the performance penalty of transferring all data, including invalid or redundant entries.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9329789B1Methods and apparatus for efficiently operating on a storage device
Publication Date: 2016.05.03 MARVELL ASIA PTE LTD
  • US9329789B1 patent drawing
  • US9329789B1 patent drawing
  • US9329789B1 patent drawing

AI summary

Systems and methods for efficiently operating on a storage device are provided. In some embodiments, systems and methods for operating on a storage device having a data portion and a log portion with a plurality of regions are provided. A write command is received with a storage device controller. The write command may include an address portion and a data portion. A current position in the log is identified that corresponds to a first of the plurality of regions to which data has been written last. Data stored in a second of the plurality of regions is selectively transferred to the data portion of the storage device based on validity and frequency of use of the data. The data and address portions included in the write command are stored to the log portion based on the current position.