IP Library › Granted Patent US 11,907,572
Granted Patent B2
US 11,907,572 · App. 16/928,564 · Granted Feb 20, 2024

Interface read after write

Inventor: Yue Chan (San Jose, CA)
Assignee: Micron Technology, Inc.
G06F3/0659G06F3/0619G06F3/0653G06F3/0673G11C29/42G11C29/44
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 11,907,572
App. No.
16/928,564
Granted
Feb 20, 2024
Kind
B2
Abstract

An interface of a memory sub-system can receive a write command addressed to a first address and a read command addressed to a second address and can receive data corresponding to the write command. The interface can determine whether the first address matches the second address responsive to determining that the first address matches the second address, can drop the read command and the second address, and can provide the data to a host.

Claims (66)

1. A memory sub-system comprising:

a memory device;

a processing device coupled to the memory device and configured to control cache memory for the memory device to store data prior to storing the data on the memory device; and

an interface of the memory sub-system comprising error correction circuitry and a comparator, wherein the interface is coupled to the processing device and configured to:

receive a write command addressed to a first address and a read command addressed to a second address from a host;

receive data corresponding to the write command from the host;

store the write command and the read command in a command buffer of the interface;

store the data in a write buffer of the interface;

determine, using the comparator of the interface, whether the first address matches the second address while the write command and the read command are stored in the command buffer;

determine, using the comparator of the interface, whether the write command was inserted into the command buffer prior to insertion of the read command into the command buffer by comparing a first identifier (ID) of the write command and a second ID of the read command, wherein the first ID and the second ID are assigned sequentially based on an order in which commands are received from the host; and

responsive to determining that the first address matches the second address and that the write command was inserted into the command buffer prior to inserting the read command into the command buffer:

drop the read command and the second address from the command buffer by sending a signal from the comparator to the error correction circuitry to cause the error correction circuitry to mark the read command as being erroneous without regard to performing an error check on the read command and without regard to whether the read command passes an error check if performed, wherein a memory sub-system controller is configured to delete the read command responsive to the read command being marked by the error correction circuitry;

forward the data from the write buffer directly to a read buffer of the interface via lines that couple the write buffer to the read buffer; and

provide the data to the host from the read buffer; and

responsive to determining that the first address does not match the second address, provide the read command and the second address to the processing device.

2. The memory sub-system of claim 1 , wherein the interface is further to, responsive to determining that the first address matches the second address, provide the data to the host without providing the read command and the second address to the processing device.

3. The memory sub-system of claim 2 , wherein the interface is further configured to:

responsive to determining that the first address matches the second address, drop the read command and the second address from the command buffer prior to providing commands in the command buffer to the processing device.

4. The memory sub-system of claim 3 , wherein the interface is further configured to provide the data from the read buffer to input/output lines to provide the data to the host.

5. A method comprising:

receiving, at an interface of a memory sub-system and from a host, a write command addressed to a first address and a read command addressed to a second address;

storing the write command and the read command in a command buffer of the interface;

determining, using a comparator of the interface, whether the first address matches the second address while the write command and the read command are stored in the command buffer;

determining, using the comparator of the interface, whether the write command was inserted into the command buffer prior to insertion of the read command into the command buffer by comparing a write identifier (ID) of the write command and a read ID of the read command, wherein the write ID and the read ID are assigned sequentially based on an order in which commands are received from the host;

determining whether data stored in a write buffer of the interface and corresponding to the write command is corrupt;

responsive to determining that the first address matches the second address, that the data is not corrupt, and that the write command was inserted into the command buffer prior to inserting the read command into the command buffer:

dropping, at the interface, the read command and the second address from the command buffer by sending a signal from the comparator to error correction circuitry of the interface to cause the error correction circuitry to mark the read command as being erroneous without regard to performing an error check on the read command and without regard to whether the read command passes an error check if performed, wherein a memory sub-system controller is configured to delete the read command responsive to the read command being marked by the error correction circuitry;

forwarding the data from the write buffer directly to a read buffer of the interface via lines that couple the write buffer to the read buffer; and

providing the data to the host from the read buffer; and

responsive to determining that the first address does not match the second address or that the data is corrupt, providing the read command and the second address to a processing device coupled to a memory device of the memory sub-system and configured to control cache memory for the memory device to store data prior to storing the data on the memory device.

6. The method of claim 5 , further comprising identifying the write ID of the write command addressed to the first address and the read ID of the read command addressed to the second address responsive to determining that the first address matches the second address.

7. The method of claim 6 , further comprising storing the data in the read buffer and associating the data in the read buffer with the read ID.

8. The method of claim 5 , further comprising responsive to determining that the first address does not match the second address and that the data is not corrupt, providing the write command and the first address to the processing device.

9. The method of claim 5 , further comprising responsive to determining that the first address does match the second address and that the data is not corrupt, providing the read command and the read address to the processing device.

10. The method of claim 5 , further comprising responsive to determining that the data is corrupt, providing the write command and the first address to the processing device to be dropped by the processing device.

11. The method of claim 5 , further comprising determining whether the data corresponding to the write command is corrupt utilizing the error correction circuitry.

12. The method of claim 11 , further comprising:

receiving a different write command having a different write ID than a write ID corresponding to the write command;

determining that the write command was received prior to the different write command; and

storing the determination of whether the first address matches the second address in the error correction circuitry utilizing the different write ID.

13. The method of claim 12 , further comprising:

determining whether the write command was received prior to the different write command;

providing different data to the host utilizing the read ID responsive to determining that the different write command was received after the write command; and

wherein providing the data to the host further comprises providing the data to the host responsive to determining that the different write command was received prior to the write command.

14. A memory sub-system, comprising:

a memory device;

a processing device coupled to the memory device and configured to control cache memory for the memory device to store data prior to storing the data on the memory device;

an interface of the memory sub-system comprising error correction circuitry and a comparator, wherein the interface is coupled to the processing device and configured to:

receive a write command addressed to a first address and a first read command and a second read command addressed to a second address from a host;

receive data corresponding to the write command from the host;

store the write command, the first read command, and the second read command in a command buffer of the interface;

store the data in a write buffer of the interface;

determine, using the comparator of the interface, whether the write command was inserted into the command buffer prior to insertion of the first read command and the second read command into the command buffer by comparing a write identifier (ID) of the write command, a first read ID of the first read command, and a second read ID of the second read command, wherein the write ID, the first read ID, and the second read ID are assigned sequentially based on an order in which commands are received from the host;

responsive to determining that the first address matches the second address and that the write command was inserted into the command buffer prior to inserting the read command into the command buffer using the comparator of the interface while the write command, the first read command, and the second read command are stored in the command buffer and that the data is not corrupt:

drop the first read command, the second read command, and the second address from the command buffer by sending a signal from the comparator to the error correction circuitry to cause the error correction circuitry to mark the first read command and the second read command as being erroneous without regard to performing an error check on the read command and without regard to whether the read command passes an error check if performed, wherein a memory sub-system controller is configured to delete the first read command and the second read command responsive to the first read command and the second read command being marked by the error correction circuitry;

forward the data from the write buffer directly to a read buffer of the interface via lines that couple the write buffer to the read buffer; and

provide the data to the host from the read buffer; and

responsive to determining that the first address does not match the second address or that the data is corrupt while the write command, the first read command, and the second read command are stored in the command buffer, provide the first read command, the second read command, and the second address to the processing device for processing.

15. The memory sub-system of claim 14 , wherein the interface is further configured to:

store a first determination that the data is not corrupt in the error correction circuitry utilizing the write ID of the write command;

store a second determination that the first address matches the second address in the error correction circuitry utilizing the write ID; and

refrain from releasing the write ID until the data has been stored to the read buffer utilizing the first read ID and the second read ID corresponding to the first read command and the second read command, respectively.

16. The memory sub-system of claim 15 , wherein the interface is further configured to refrain from releasing the write ID until the data has been stored to the read buffer responsive to the second determination regardless of whether the write command has been provided to the processing device or not.

17. The memory sub-system of claim 14 , wherein the interface is further configured to:

store a determination that the data is corrupt in the error correction circuitry utilizing the write ID of the write command; and

release the write ID responsive to providing the write command to the processing device regardless of whether the first address matches the second address.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2020
From: CHAN, YUE
To: MICRON TECHNOLOGY, INC.
Reel/Frame 053205/0355 →
Continuity (2)
Provisional Application 62954869 · Dec 30, 2019
Related Publication 20210200470A1 · Jul 1, 2021