Data Storage Controller Byte-Level Copy Operations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Legacy data copy approaches in data storage devices suffer from performance degradation due to sector granularity limitations, especially when copy operations are unaligned with sector boundaries, which is common in key-value systems that handle significant data movement during compaction operations.

Innovation Solution

A data storage device with a non-volatile data storage component and a data storage controller that performs byte-level granularity copy operations, allowing for scatter-gather lists of source byte ranges to be copied to destination locations, with the ability to handle multiple source and destination ranges and provide power-fail-safe data structures to ensure operation completion.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If sector granularity copy operations are used, then device complexity is reduced, but productivity deteriorates due to performance degradation when copy operations are unaligned with sector boundaries

Engineering Contradiction:
Improvedata copy performanceVSAvoidcopy operation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the data copy operation into byte-level granular units rather than sector-level units. The controller breaks down copy operations into individual byte transfers, allowing precise control over each byte's movement between source and destination locations within the storage device. This segmentation enables handling of unaligned copy operations efficiently by processing only the specific bytes that need to be copied, rather than entire sectors.

Inventive Principle:
Principle #1Segmentation

2Productivity

If byte-level granularity copy operations are implemented, then productivity improves for unaligned copy operations, but device complexity increases

Engineering Contradiction:
Improvedata copy performanceVSAvoidcontroller complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary buffer memory within the storage device controller that facilitates byte-level copy operations. This buffer acts as a temporary holding area where bytes can be staged during copy operations, allowing the controller to manage complex byte-level transfers without requiring direct, complex coordination between all source and destination locations. The buffer simplifies the control logic by providing a centralized intermediate storage point.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of time

If on-device copy operations are used, then loss of time is reduced by avoiding host transfers, but manufacturing precision requirements increase for byte-level operations

Engineering Contradiction:
Improvedata transfer timeVSAvoidbyte-level operation precision
Core Design Contradiction:
Loss of timeVSManufacturing precision

Solution Approach 1:

The patent enables the storage device to perform copy operations autonomously without requiring host intervention or data egress to the host system. The controller internally manages the entire copy process, including byte-level address calculations, data retrieval from source locations, and writing to destination locations. This self-service capability eliminates the need for precise host-side coordination while maintaining byte-level precision through the controller's internal address management and buffer staging mechanisms.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10620870B2Data storage device with bytewise copy
Publication Date: 2020.04.14 INTEL CORP
  • US10620870B2 patent drawing
  • US10620870B2 patent drawing
  • US10620870B2 patent drawing

AI summary

Embodiments of the present disclosure may relate to a data storage controller that may include a host interface to receive a request from a host to perform a data copy operation on a non-volatile data storage component of a data storage device, where the request identifies one or more source ranges of the non-volatile data storage component from which data is to be copied, a destination range of the non-volatile data storage component to which the data is to be copied, and a transfer length in bytes for each of the one or more source ranges, and a processor coupled with the host interface to process the request from the host to perform the data copy operation to copy the data from the one or more source ranges to the destination range based at least in part on the transfer length in bytes. Other embodiments may be described and/or claimed.