IP Library Granted Patent US 12704998
Granted Patent B2
US 12704998 · App. 17/321,354 · Granted Aug 11, 2026

Quality of service control for read operations in memory systems

Inventors: Dhawal Bavishi (San Jose, CA); Trevor Conrad Meyerowitz (Morgan Hill, CA)
Assignee: Micron Technology, Inc.
G06F3/0659G06F3/0611G06F3/0653G06F3/0656G06F3/0679G06F13/1626G06F13/1673G06F13/18G06F2212/7203
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12704998
App. No.
17/321,354
Granted
Aug 11, 2026
Kind
B2
Abstract

A memory system having memory components, and a processing device, operatively coupled with the memory components, to: receive read requests from a host system to retrieve data from the memory components; store the read requests in a buffer; track ages of the read requests and priorities specified by the host system for the read requests; and schedule execution of a first read request from the buffer based on an age of the first read request and a threshold time period.

Claims (36)

1 . A memory system, comprising:

a host interface configured to communicate with a host system via a plurality of parallel buses in accordance with a standard of non-volatile dual in-line memory module (NVDIMM), including a data bus, a command bus, a transaction bus, and a metadata bus;

a plurality of memory components; and

a processing device, operatively coupled between the host interface and the plurality of memory components, to:

receive read requests over the command bus from the host system to retrieve data from the memory components;

store the read requests in a buffer;

track ages of the read requests; and

schedule execution of a first read request from the buffer based on moving the first read request from a first queue having a first priority level to a second queue having a second priority level higher than the first priority level in response to a determination that an age of the first read request has reached a threshold time period.

2 . The memory system of claim 1 , wherein the processing device is further to:

determine that the age of the first read request has reached the threshold time period, wherein a second read request is in the buffer at a time when the age of the first read request has reached the threshold time period, and wherein the host system specifies a priority for the second read request that is higher than a priority of the first read request; and

cause the first read request to be executed prior to the second read request in the buffer, in response to the determination that the age of the first read request has reached the threshold time period.

3 . The memory system of claim 1 , wherein the processing device is further to:

determine an execution priority of the first read request based on the priority of the first read request specified by the host system and the age of the first read request relative to the threshold time period.

4 . The memory system of claim 3 , wherein the processing device is further to:

determine the threshold time period for the first read request based on the priority of the first read request specified by the host system.

5 . The memory system of claim 1 , wherein the processing device is further to:

move the first read request to a bottom of the second queue.

6 . The memory system of claim 1 , wherein the processing device is further to:

transmit a response signal to the host system; and

in response to a send command from the host system, transmit data retrieved for the first read request to the host system.

7 . The memory system of claim 6 , wherein the host interface is configured to communicate the read requests, the response signal, and the send command over the plurality of parallel buses in accordance with a communication protocol for non-volatile dual in-line memory modules.

8 . The memory system of claim 6 , wherein the execution of the first read request is scheduled to limit, according to the threshold time period, elapsed time between receiving the first read request in the memory system and transmitting the response signal for the first read request.

9 . A method, comprising:

receiving, in a memory system, read requests from a host system to retrieve data from memory components of the memory system, wherein each respective read request in the read requests includes a priority data field having data specified by the host system to indicate a priority level of the respective read request;

storing, according to priority levels of the read requests specified by the host system, the read requests in different queues configured in a buffer;

tracking ages of the read requests; and

moving a first read request queued, to be executed, in a first queue having a first priority level to a second queue having a second priority level higher than the first priority level in response to a determination that an age of the first read request has reached a threshold time period.

10 . The method of claim 9 , wherein the first read request is executed before a second read request that is in the buffer when the age of the first read request has reached the threshold time period; and wherein the host system specifies a higher priority for the second read request than the first read request.

11 . The method of claim 10 , wherein the first read request is moved to a bottom of the second queue.

12 . The method of claim 10 , wherein commands in the first queue are scheduled for execution after the second queue is emptied.

13 . A non-transitory computer-readable storage medium storing instructions that, when executed by a processing device, cause the processing device to:

receive, in a memory system, read requests from a host system according to a protocol for non-volatile dual in-line memory module (NVDIMM) to retrieve data from memory components of the memory system;

store the read requests in queues, configured in a buffer, according to priority levels specified by the host system for the read requests;

track ages of the read requests; and

schedule execution of the read requests based at least in part on moving a first read command from a first queue having a first priority level to a second queue having a second priority level higher than the first priority level in response to a determination that an age of the first read request has reached a threshold time period.

14 . The non-transitory computer-readable storage medium of claim 13 , wherein the first read request is moved to a bottom of the second queue.