SSD DRAM Buffer Allocation With Just-in-Time Read Release

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current SSD systems inefficiently utilize DRAM resources due to ahead-of-time buffer allocation, leading to increased space usage and decreased efficiency, particularly in NVMe-SSD devices during read commands.

Innovation Solution

Implement just-in-time, low-capacity DRAM memory allocation by offloading management tasks from the host to the data storage device, which automatically allocates and deallocates buffers based on data read operations, reducing the need for unused memory allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If ahead of time buffer allocation is performed by the host, then the system can support full throughput, but more buffers are required and DRAM space increases

Engineering Contradiction:
ImprovethroughputVSAvoidDRAM space
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent applies preliminary action by having the host allocate buffers ahead of time before read commands are executed. This allows the system to prepare memory resources in advance, ensuring that buffers are ready when needed for data transfer, thus supporting full throughput while managing DRAM space through controlled allocation timing

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamics by allowing the buffer allocation size to vary based on system conditions and command types. For example, zone-append commands may require different buffer management compared to standard read commands, enabling the system to adapt buffer resources dynamically rather than maintaining fixed allocations, thus optimizing the balance between throughput and DRAM usage

Inventive Principle:
Principle #15Dynamics

2Productivity

If more buffers are allocated to support full throughput, then the system can handle more concurrent operations, but unused allocated resources take up space and decrease efficiency

Engineering Contradiction:
Improveconcurrent operations capacityVSAvoidresource utilization efficiency
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The patent applies self-service by implementing automatic buffer management mechanisms where the system monitors buffer usage and automatically deallocates unused buffers. The host or device can track which buffers are currently in use and release them when no longer needed, reducing the need for permanent buffer allocations and improving resource utilization efficiency while maintaining the capacity to handle concurrent operations

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent implements discarding and recovering by systematically releasing buffer resources after their use is complete. Once data has been transferred and the buffer is no longer needed for the current operation, the system recovers the buffer space by deallocating it, making it available for future operations. This cycle of allocation, usage, and recovery allows the system to maintain high concurrent operation capacity without permanently consuming excessive DRAM space

Inventive Principle:
Principle #34Discarding and recovering

3Productivity

If the host manages physical region page lists and allocates memory ahead of time, then read commands can be executed, but it takes up a lot of time and reduces efficiency

Engineering Contradiction:
Improveread command executionVSAvoidmemory allocation time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by having the host allocate memory buffers and prepare physical region page lists before read commands are executed. This advance preparation ensures that when a read command arrives, the memory resources are already allocated and ready for immediate data transfer, reducing execution latency while maintaining efficient resource management through controlled allocation timing

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12572289B2Just-in-time low capacity DRAM memory allocation
Publication Date: 2026.03.10 SANDISK TECHNOLOGIES LLC
  • US12572289B2 patent drawing
  • US12572289B2 patent drawing
  • US12572289B2 patent drawing

AI summary

Instead of allocating unused resources, offload work from the host, and move to just-in-time, low capacity DRAM memory allocation. The host does a read and receives the location of the data in the response. This will offload the host from managing physical region page (PRP) lists. The data storage device counts the number of bytes that have been read by the host (per flash memory unit (FMU)), and the data storage device can release the buffer as soon as all the data has been read. The data storage device knows automatically when a buffer should be allocated/de-allocated just-in-time.