Unified Data Pointer Hardware Offloading for Storage Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing non-volatile storage systems require multiple commands to access different types of memory or storage locations for data transfer, leading to increased complexity and inefficiency.

Innovation Solution

Utilization of a unified data pointer in hardware offloading commands to identify both source and destination locations, allowing a single command to represent all types of data transfers across heterogeneous storage systems.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple commands are used to access different types of memory or storage locations, then data transfer can be performed, but command complexity and system overhead increase

Engineering Contradiction:
Improvedata transfer capabilityVSAvoidcommand complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent applies universality by designing a unified data pointer structure that can represent multiple types of data locations (host memory, device memory, storage devices) within a single command format. This allows one command structure to serve multiple data transfer scenarios, eliminating the need for separate commands for each location type and thereby reducing command complexity while maintaining versatile data transfer capability.

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

Solution Approach 2:

The patent merges multiple data location identification mechanisms into a single unified data pointer field. By combining the identification of host memory, device memory, and storage device locations into one unified structure, the system reduces the number of separate commands needed and simplifies the command processing architecture.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If multiple commands are used to access different memory locations, then data transfer operations can be performed, but processing time and efficiency decrease

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

By creating a universal command format that can handle all data transfer scenarios through a single unified data pointer, the system eliminates the time overhead associated with command parsing and selection. The hardware accelerator can directly process the unified pointer to identify source and destination locations, reducing processing time and improving data transfer efficiency.

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

Solution Approach 2:

The unified data pointer structure performs preliminary identification of data locations within the command itself, eliminating the need for subsequent lookup operations. The pointer directly encodes the memory location information, allowing the hardware accelerator to immediately access the correct data without additional processing steps.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If multiple commands are used for data access, then different storage locations can be accessed, but software complexity increases

Engineering Contradiction:
Improvestorage location accessVSAvoidsoftware complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The unified data pointer provides a universal interface for accessing different storage locations from the software perspective. Instead of software needing to handle multiple command types for different locations, the unified pointer abstracts these differences away, presenting a consistent interface that simplifies software complexity while maintaining the ability to access various storage locations.

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

Data Source

PatentUS12405837B2Method and system for acceleration or offloading utilizing a unified data pointer
Publication Date: 2025.09.02 BYTEDANCE INC
  • US12405837B2 patent drawing
  • US12405837B2 patent drawing
  • US12405837B2 patent drawing

AI summary

Methods, systems, and devices for performing an acceleration process by offloading an operation. The system includes a hardware offloading engine that includes a hardware accelerator for performing the acceleration process. The hardware accelerator has a processor configured to receive a hardware offloading command, the hardware offloading command including an operation code, an input pointer, and an output pointer, in which at least one of the input pointer or the output pointer includes a unified data pointer that includes one or more bits of memory for identifying the source location for the input data or the destination location of the output data, parse the operation code, the input pointer, and the output pointer from the hardware offloading command, retrieve the input data based on the input pointer, and execute an offloaded operation on the input data based on the operation code.