IP Library Granted Patent US 10,825,496
Granted Patent B2
US 10,825,496 · App. 14/706,490 · Granted Nov 3, 2020

In-memory lightweight memory coherence protocol

Inventor: Richard C Murphy (Boise, ID)
Assignee: Micron Technology, Inc.
G11C8/12G06F12/0284G06F12/0815G06F12/0817G06F12/1072G11C5/02G11C5/025G06F12/084G06F12/0824G06F2212/1032G06F2212/1048G06F2212/251G06F2212/3042
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,825,496
App. No.
14/706,490
Granted
Nov 3, 2020
Kind
B2
Abstract

A system includes a plurality of host processors and a plurality of HMC devices configured as a distributed shared memory for the host processors. An HMC device includes a plurality of integrated circuit memory die including at least a first memory die arranged on top of a second memory die and at least a portion of the memory of the memory die is mapped to include at least a portion of a memory coherence directory; and a logic base die including at least one memory controller configured to manage three-dimensional (3D) access to memory of the plurality of memory die by at least one second device, and logic circuitry configured to determine memory coherence state information for data stored in the memory of the plurality of memory die, communicate information regarding the access to memory, and include the memory coherence information in the communicated information.

Claims (36)

1. A computing system comprising:

a plurality of host processors;

a plurality of stacked memory devices configured as a system distributed shared memory for the processors, wherein input/output (I/O) information is communicated among the plurality of host processors and the plurality of stacked memory devices using a packetized I/O protocol, and wherein each stacked memory device includes:

at least a first memory die arranged on top of a second memory die, and at least a portion of the memory of the memory dies mapped to include at least a portion of a memory coherence directory; and

a logic base die excluding the plurality of host processors and packaged with at least the first memory die and the second memory die, the logic base die including at least one memory controller configured to manage access to memory of the plurality of memory dies by at least one separate device, and logic circuitry configured to,

determine memory coherence state information for data stored in the memory of one or more of the plurality of memory dies,

store the memory coherence state information with the data in the memory dies,

grant access to the stored memory coherence state information in response to an atomic memory request, wherein the stored memory coherence information for a memory word is accessed by the logic circuitry remapping an address of the memory word received in the atomic memory request, and

include the memory coherence state information in a packetized message of the packetized I/O protocol sent in response to the atomic memory request.

2. The computing system of claim 1 , wherein the logic circuitry of each stacked memory device is configured to broadcast the memory coherence state information using the packetized I/O protocol.

3. The system of claim 2 , wherein the logic circuitry of each stacked memory device is configured to route packetized information as part of the packetized I/O protocol and detect memory coherence state information included with the packetized information.

4. The system of claim 1 , wherein the logic circuitry of each stacked memory device is configured to determine modified state information, shared state information, and invalid state information for a word of memory of the memory die and store the state information in association with the word of memory of the memory die.

5. The system of claim 1 , wherein the logic circuitry of each stacked memory device is configured to:

determine at least one of exclusivity state information and ownership state information for a word of memory of the memory die and store the state information in association with the word of shared memory data.

6. The system of claim 1 , including at least one stacked memory device configured as a hub stacked memory device, wherein logic circuitry of the hub stacked memory device adds routing information to a packetized message and detects memory coherence state information in the packetized message.

7. The system of claim 1 , wherein the memory controller of the logic base die of each stacked memory is configured to manage access to memory of the memory dies by at least one processor and by another stacked memory device.

8. The system of claim 1 , wherein the memory die of each stacked memory device include memory arranged as a plurality of vaults and the logic base die includes a memory controller for each vault of the memory die.

9. The system of claim 1 , wherein the processors of the plurality of host processors are system-on-chip (SoC) processors.

10. A method of operating a computer system that includes a distributed shared memory and a plurality of processors, the method comprising:

managing access to the distributed shared memory of the computer system, wherein the distributed shared memory is configured for three dimensional access and excludes the processors of the computer system;

determining, by the distributed shared memory, memory coherence state information resulting from memory access and storing the memory coherence state information with the data in the distributed shared memory;

communicating packetized information among the plurality of processors and a plurality of shared memory endpoints of the computing system using a packetized input/output (I/O) protocol, wherein the communicated packetized information includes memory coherence state information included by the distributed shared memory in a packetized message of the packetized I/O protocol sent in response to an atomic request to access the memory coherence state information stored in the distributed shared memory, wherein the stored memory coherence state information for a memory word is accessed by the distributed shared memory remapping an address of the memory word received in the atomic memory request; and

tracking the memory coherence state information using the shared memory endpoints.

11. The method of claim 10 , wherein tracking the memory coherence state information using the shared memory endpoints includes:

tracking the memory coherence state information using stacked memory devices that include the shared memory.

12. The method of claim 10 , including storing the memory coherence state information with a shared memory data word.

13. The method of claim 10 , including modifying the memory coherence state information using a logic base layer that includes at least one memory controller for the shared memory.

14. The method of claim 10 , wherein determining memory coherence state information by the shared memory includes storing a modified bit, a shared bit, and an invalid bit with the shared memory data word.

15. An electronic device of a single electronic device package, the electronic device including:

a plurality of integrated circuit memory dies configured as a system shared memory and including at least a first memory die arranged on top of a second memory die, and at least a portion of the memory of the memory dies is mapped to include at least a portion of a memory coherence directory; and

wherein the system shared memory includes a logic base die, the logic base die excluding a system processor and including at least one memory controller configured to manage access to memory of the plurality of memory dies by at least one separate device, and logic circuitry configured to determine memory coherence state information for data stored in the memory of one or more of the plurality of memory dies, grant access to memory coherence state information stored in the memory in response to an atomic memory request, wherein the stored memory coherence information for a memory word is accessed by the logic circuitry remapping an address of the memory word included in the atomic memory request, and include the memory coherence state information in a packetized message of a packetized input/output (I/O) protocol that is sent in response to the atomic memory request.

16. The electronic device of claim 15 , wherein the electronic device is a stacked memory device.

17. The electronic device of claim 16 , wherein the logic circuitry of the logic base die is configured to broadcast the memory coherence state information using the packetized I/O protocol.

18. The electronic device of claim 17 , wherein the logic circuitry of the logic base die is configured to route packetized information as part of the I/O protocol and detect memory coherence state information included with the packetized information.

19. The electronic device of claim 16 , wherein the logic circuitry of the logic base die is configured to determine modified state information, shared state information, and invalid state information for a word of memory of the memory die and store the state information in association with the word of memory of the memory die.

20. The electronic device of claim 16 , wherein the logic circuitry of the logic base die is configured to determine at least one of exclusivity state information and ownership state information for a word of memory of the memory die and store the state information in association with the word of shared memory data.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050937/0001 →
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 047243/0001 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jun 8, 2017
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 043079/0001 →
PATENT SECURITY AGREEMENT Recorded Jun 2, 2016
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 038954/0001 →
SECURITY INTEREST Recorded May 12, 2016
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038669/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2016
From: MURPHY, RICHARD C
To: MICRON TECHNOLOGY, INC.
Reel/Frame 037923/0825 →
Cited By (4)
US 12,314,567 US 12,650,936 US 12,675,424 US 12,699,514