IP Library Granted Patent US 10,838,637
Granted Patent B2
US 10,838,637 · App. 16/054,144 · Granted Nov 17, 2020

Status management in storage backed memory package

Inventors: Michael Burns (Maple Grove, MN); Gary R. Van Sickle (Arden Hills, MN); Jeffery J. Leyda (Minneapolis, MN)
Assignee: Micron Technology, Inc.
G06F3/0634G06F3/0604G06F3/068G06F3/0637
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 10,838,637
App. No.
16/054,144
Granted
Nov 17, 2020
Kind
B2
Abstract

Devices and techniques for status management in storage backed memory are disclosed herein. An encoded message can be received at a first interface of the memory package. Here, the memory package also includes a second interface to a host. The message can be decoded to obtain a decoded message that includes an attribute. The attribute can be compared a set of attributes that correspond to an advertised status of the memory package. The comparison enables a determination that the attribute is in the set of attributes. The advertised status of the memory package can then be modified in response to the determination that the attribute is in the set of attributes.

Claims (43)

1. A hardware memory package comprising:

a memory controller;

a volatile portion;

a non-volatile portion;

a first interface that enables communication between the memory controller and the host, the first interface receiving an encoded message from the host;

a second interface that enables communication between the volatile portion and the host; and

a decoder coupled to the first interface, the decoder to perform operations comprising:

decoding the encoded message to obtain a decoded message that comprises a request to write to a command register of the memory controller and further comprises a message attribute;

prior to providing the decoded message to a component of the memory controller for executing the request to write to the command register:

inspecting the decoded message to determine whether the request to write to the command register is associated with an operation that corresponds to an advertised status of the hardware memory package, the inspecting the decoded message comprising determining whether the message attribute is in a set of attributes that corresponds to the advertised status by comparing the message attribute to the set of attributes, the advertised status being accessible by the host via the first interface; and

modifying the advertised status of the hardware memory package in response to determining that the message attribute is in the set of attributes; and

providing the decoded message to the component of the memory controller.

2. The hardware memory package of claim 1 , wherein the second interface is a double data rate (DDR) random-access memory (RAM) interface.

3. The hardware memory package of claim 2 , wherein the hardware memory package is a non-volatile dual in-line memory module (NVDIMM).

4. The hardware memory package of claim 1 , wherein the advertised status indicates whether the operation in progress for the memory controller.

5. The hardware memory package of claim 1 , wherein the set of attributes are defined by a Joint Electron Device Engineering Council (JEDEC) Byte Addressable Energy Backed Interface (BAEBI) family of standards.

6. The hardware memory package of claim 1 , wherein the attribute is an address.

7. The hardware memory package of claim 6 , wherein the address is a page designator.

8. A method comprising:

receiving, at a first interface of a hardware memory package, an encoded message from a host, the first interface enabling communication between a memory controller and the host, the hardware memory package comprising the memory controller and a second interface that enables communication between a volatile portion of the hardware memory package and the host;

decoding the encoded message to obtain a decoded message that comprises a request to write to a command register of the memory controller and further comprises a message attribute;

prior to providing the decoded message to a component of the memory controller for executing the request to write to the command register:

inspecting the decoded message to determine whether the request to write to the command register is associated with an operation that corresponds to an advertised status of the hardware memory package, the inspecting the decoded message comprising determining whether the message attribute is in a set of attributes that corresponds to the advertised status by comparing the message attribute to the set of attributes, the advertised status being accessible by the host via the first interface; and

modifying the advertised status of the hardware memory package in response to determining that the message attribute is in the set of attributes; and

providing the decoded message to the component of the memory controller.

9. The method of claim 8 , wherein the second interface is a double data rate (DDR) random-access memory (RAM) interface.

10. The method of claim 9 , wherein the hardware memory package is a non-volatile dual in-line memory module (NVDIMM).

11. The method of claim 8 , wherein the advertised status indicates whether the operation in progress for the memory controller.

12. The method of claim 8 , wherein the set of attributes are defined by a Joint Electron Device Engineering Council (JEDEC) Byte Addressable Energy Backed Interface (BAEBI) family of standards.

13. The method of claim 8 , wherein the attribute is an address.

14. The method of claim 13 , wherein the address is a page designator.

15. At least one non-transitory machine readable medium including instructions, when executed by processing circuitry of a hardware memory package, cause the hardware memory package to perform operations comprising:

receiving, at a first interface of the hardware memory package, an encoded message from a host, the first interface enabling communication between a memory controller and the host, the hardware memory package comprising the memory controller and a second interface that enables communication between a volatile portion of the hardware memory package and the host;

decoding the encoded message to obtain a decoded message that comprises a request to write to a command register of the memory controller and further comprises a message attribute;

prior to providing the decoded message to a component of the memory controller for executing the request to write to the command register:

inspecting the decoded message to determine whether the request to write to the command register is associated with an operation that corresponds to an advertised status of the hardware memory package, the inspecting the decoded message comprising determining whether the message attribute is in a set of attributes that corresponds to the advertised status by comparing the message attribute to the set of attributes, the advertised status being accessible by the host via the first interface; and

modifying the advertised status of the hardware memory package in response to determining that the message attribute is in the set of attributes; and

providing the decoded message to the component of the memory controller.

16. The at least one non-transitory machine readable medium of claim 15 , wherein the second interface is a double data rate (DDR) random-access memory (RAM) interface.

17. The at least one non-transitory machine readable medium of claim 16 , wherein the hardware memory package is a non-volatile dual in-line memory module (NVDIMM).

18. The at least one non-transitory machine readable medium of claim 15 , wherein the advertised status indicates whether the operation in progress for the memory controller.

19. The at least one non-transitory machine readable medium of claim 15 , wherein the attribute is an address.

20. The at least one non-transitory machine readable medium of claim 19 , wherein the address is a page designator.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Nov 14, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 051028/0835 →
RELEASE OF SECURITY INTEREST Recorded Oct 14, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050719/0550 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 28, 2019
From: BURNS, MICHAEL; VAN SICKLE, GARY R; LEYDA, JEFFERY J
To: MICRON TECHNOLOGY, INC.
Reel/Frame 048732/0769 →
SUPPLEMENT NO. 1 TO PATENT SECURITY AGREEMENT Recorded Nov 13, 2018
From: MICRON TECHNOLOGY, INC.
To: JPMORGAN CHASE BANK, N.A.., AS COLLATERAL AGENT
Reel/Frame 047630/0756 →
SUPPLEMENT NO. 10 TO PATENT SECURITY AGREEMENT Recorded Nov 13, 2018
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 048102/0420 →
Cited By (1)
US 12,468,476