Dynamic Partition Command Queues to Reduce Memory Back Pressure
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional memory sub-systems perform commands in a synchronous manner, leading to constant switching between different types of commands and causing back pressure when partition command queues are full, which affects data throughput.
Innovation Solution
Implementing dynamic partition command queues that adjust based on the type of commands (read or write) to optimize data throughput by avoiding back pressure on other components.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional memory sub-systems perform commands in a synchronous manner, then command execution order is maintained, but data throughput decreases due to constant switching between different types of commands and back pressure when queues are full
Solution Approach 1:
The patent implements dynamic partition command queues that can be adjusted in size based on command type (read or write). The system monitors queue depths and dynamically allocates resources, allowing the partition command queues to expand or contract as needed. This dynamic adjustment enables the system to handle command bursts more efficiently, reducing back pressure and improving overall data throughput while maintaining proper command execution timing.
2Productivity
If partition command queues are made larger to prevent back pressure, then data throughput improves, but device complexity increases
Solution Approach 1:
The patent divides the command queue into multiple partition command queues, with separate queues for read commands and write commands. This segmentation allows independent management of each queue type, enabling targeted optimization without requiring a single large, complex queue structure. Each partition queue can be managed with simpler logic while collectively providing high throughput capability.
3Productivity
If dynamic adjustment of partition command queues is implemented, then back pressure is reduced and throughput improves, but control complexity increases
Solution Approach 1:
The system implements feedback mechanisms that monitor the depth and status of partition command queues in real-time. Based on this feedback, the controller dynamically adjusts queue allocation and command scheduling decisions. This closed-loop control enables automatic optimization of throughput without requiring complex manual intervention or overly complicated control logic, as the system self-regulates based on observed conditions.
Data Source
AI summary
A partition command is stored at free memory address location of the local memory corresponding to an index of an address array. The index is associated with an entry in the address array. A last entry in a linked list of entries from a tail register is obtained based on an allocation of the stored partition command to a partition command queue of a plurality of partition command queues. The tail register corresponds to the partition command queue of the plurality of partition command queues. Responsive to obtaining the last entry in the linked list, an entry to the linked list after the last entry is appended. The entry corresponds to the index of the address array associated with the stored partition command.


