IP Library › Granted Patent US 11,481,343
Granted Patent B1
US 11,481,343 · App. 17/459,525 · Granted Oct 25, 2022

Transporting request types with different latencies

Inventor: Tony M. Brewer (Plano, TX)
Assignee: Micron Technology, Inc.
G06F13/1668G06F13/4027
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,481,343
App. No.
17/459,525
Granted
Oct 25, 2022
Kind
B1
Abstract

A system includes multiple memory-compute nodes coupled to one another over a scale fabric, where each memory-compute node includes a hybrid threading processor; a memory controller; a fabric interface; and a network on chip (NOC) that provides communication between the hybrid threading processor, the fabric interface, and the memory controller, wherein the fabric interface supports a first virtual channel (VC0), and a second virtual channel (VC1) to the NOC, and supports the first virtual channel (VC0), the second virtual channel (VC1), and a third virtual channel (VC2) to the scale fabric.

Claims (59)

1. A system comprising:

multiple memory-compute nodes coupled to one another over a scale fabric,

wherein each memory-compute node comprises:

a hybrid threading processor;

a memory controller;

a fabric interface; and

a network on chip (NOC) that provides communication between the hybrid threading processor, the fabric interface, and the memory controller,

wherein the fabric interface supports a first virtual channel (VC0), and a second virtual channel (VC1) to the NOC, and supports the first virtual channel (VC0), the second virtual channel (VC1), and a third virtual channel (VC2) to the scale fabric, and

wherein the fabric interface configured to:

receive, from the hybrid threading processor, a first message that includes a memory request to a destination memory controller, on the second virtual channel over the NOC; and

transmit the first message to the destination memory controller across the scale fabric via the first virtual channel or the third virtual channel depending on a latency characteristic of the first message.

2. The system of claim 1 , wherein to transmit the first message to the destination memory controller, the fabric interface is configured to:

determine that the first message is a short latency memory request for a destination memory controller across the scale fabric; and

in response to determining that the first message is a short latency memory request, transmit the first message toward the destination memory controller on the first virtual channel over the scale fabric.

3. The system of claim 2 , wherein to determine that the first message is the short latency memory request, the fabric interface is to decode a packet header and determine that the first message is the short latency memory request based on the packet header.

4. The system of claim 3 , wherein the packet header includes a command field, and wherein short latency memory requests are associated with a subset of commands indicated in the command field.

5. The system of claim 1 , wherein to transmit the first message to the destination memory controller, the fabric interface is configured to:

determine that the first message is a long latency memory request for the destination memory controller; and

in response to determining that the first message is a long latency memory request, transmit the first message toward the destination memory controller on the third virtual channel over the scale fabric.

6. The system of claim 5 , wherein the long latency memory request includes a custom atomic operation.

7. The system of claim 1 , wherein the fabric interface is to:

receive a response to the first message from the destination memory controller; and

relay the response to the hybrid threading processor.

8. The system of claim 7 , wherein the hybrid threading processor is to, prior to sending the first message to the fabric interface:

determine based on a credit counter whether a credit is available to transmit the first message toward the destination memory controller, the credit issued by the destination memory controller; and

decrement the credit counter based on sending the first message.

9. The system of claim 8 , wherein the credit is a short latency credit.

10. The system of claim 8 , wherein the credit is a long latency credit.

11. The system of claim 7 , wherein the fabric interface is to:

transmit a credit to the hybrid threading processor after transmitting the first message toward the destination memory controller, the credit to allow the hybrid threading processor to send another message to the destination memory controller.

12. The system of claim 11 , wherein the hybrid threading processor is to, after receiving the credit from the fabric interface:

update a credit counter based on the credit.

13. A method comprising:

receiving, at a fabric interface that supports a first virtual channel (VC0), and a second virtual channel (VC1) to a network on chip (NOC), and supports the first virtual channel (VC0), the second virtual channel (VC1), and a third virtual channel (VC2) to a scale fabric, from a hybrid threading processor that is coupled to the fabric interface, a first message that includes a memory request to a destination memory controller, on the second virtual channel over the NOC; and

transmitting the first message to the destination memory controller across the scale fabric via the first virtual channel or the third virtual channel depending on a latency characteristic of the first message.

14. The method of claim 13 , wherein transmitting the first message comprises:

determining that the first message is a short latency memory request for a destination memory controller across the scale fabric; and

in response to determining that the first message is a short latency memory request, transmitting the first message toward the destination memory controller on the first virtual channel over the scale fabric.

15. The method of claim 14 , wherein determining that the first message is the short latency memory request comprises decoding a packet header and determining that the first message is the short latency memory request based on the packet header.

16. The method of claim 15 , wherein the packet header includes a command field, and wherein short latency memory requests are associated with a subset of commands indicated in the command field.

17. The method of claim 13 , wherein transmitting the first message comprises:

determining that the first message is a long latency memory request for the destination memory controller; and

in response to determining that the first message is a long latency memory request, transmitting the first message toward the destination memory controller on the third virtual channel over the scale fabric.

18. The method of claim 17 , wherein the long latency memory request includes a custom atomic operation.

19. The method of claim 13 , comprising:

receiving a response to the first message from the destination memory controller; and

relaying the response to the hybrid threading processor.

20. The method of claim 19 , wherein the hybrid threading processor is to, prior to sending the first message to the fabric interface:

determine based on a credit counter whether a credit is available to transmit the first message toward the destination memory controller, the credit issued by the destination memory controller; and

decrement the credit counter based on sending the first message.

21. The method of claim 20 , wherein the credit is a short latency credit.

22. The method of claim 20 , wherein the credit is a long latency credit.

23. The method of claim 19 , comprising:

transmitting a credit to the hybrid threading processor after transmitting the first message toward the destination memory controller, the credit to allow the hybrid threading processor to send another message to the destination memory controller.

24. The method of claim 23 , wherein the hybrid threading processor is to, after receiving the credit from the fabric interface:

update a credit counter based on the credit.

25. A non-transitory machine-readable medium including instructions, which when executed by a machine, cause the machine to perform operations comprising:

receiving, at a fabric interface that supports a first virtual channel (VC0), and a second virtual channel (VC1) to a network on chip (NOC), and supports the first virtual channel (VC0), the second virtual channel (VC1), and a third virtual channel (VC2) to a scale fabric, from a hybrid threading processor that is coupled to the fabric interface, a first message that includes a memory request to a destination memory controller, on the second virtual channel over the NOC; and

transmitting the first message to the destination memory controller across the scale fabric via the first virtual channel or the third virtual channel depending on a latency characteristic of the first message.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2021
From: BREWER, TONY M
To: MICRON TECHNOLOGY, INC.
Reel/Frame 058383/0260 →
Continuity (1)
Provisional Application 63170210 · Apr 2, 2021
Cited By (1)
US 12,717,735