IP Library Granted Patent US 12,450,180
Granted Patent B2
US 12,450,180 · App. 18/521,373 · Granted Oct 21, 2025

Memory commands for multi-host communications

Inventors: Gaurav Sinha (Oberschleißheim, DE); Marco Redaelli (Munich, DE)
Assignee: Micron Technology, Inc.
G06F13/1668
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 12,450,180
App. No.
18/521,373
Filed
Nov 28, 2023
Granted
Oct 21, 2025
Kind
B2
Examiner
SUN, MICHAEL
Art Unit
2183
USPC
710/308
Abstract

Implementations described herein relate to a memory device that enables communication between multiple connected host devices. In some implementations, a memory device may receive, from a first host device in communication with the memory device, a send communication command instructing the memory device to transmit data from the first host device to at least a second host device in communication with the memory device. The memory device may receive, from the second host device, a receive communication command instructing the memory device to transmit data to the second host device from at least the first host device. The memory device may transmit a message from the first host device to the second host device based on the send communication command and the receive communication command.

Claims (42)

1. A memory device, comprising:

one or more components configured to:

receive, from a first host device in communication with the memory device, a send communication command instructing the memory device to transmit data from the first host device to at least a second host device in communication with the memory device;

receive, from the second host device, a receive communication command instructing the memory device to transmit data to the second host device from at least the first host device;

transmit a message from the first host device to the second host device based on the send communication command and the receive communication command; and

enable an ability of at least one of the first host device or the second host device to read host identifiers (IDs).

2. The memory device of claim 1 , wherein the send communication command and the receive communication command are associated with a non-volatile memory express (NVMe) protocol.

3. The memory device of claim 1 , where the message is associated with one of a unicast message, a multicast message, or a broadcast message.

4. The memory device of claim 1 , wherein the memory device is associated with one of a multi-port solid state drive (SSD) or a single root input/output virtualization (SR-IOV) SSD.

5. The memory device of claim 1 , wherein the memory device is associated with at least one communication queue for receiving at least one of the send communication command or the receive communication command.

6. The memory device of claim 1 , wherein the one or more components are further configured to assign a corresponding host ID to each of multiple host devices in communication with the memory device.

7. The memory device of claim 6 , wherein the one or more components are further configured to disable the ability of the at least one of the first host device or the second host device to read the host IDs.

8. The memory device of claim 1 , wherein the send communication command is a vendor specific (VS) send communication command, and wherein the receive communication command is a VS receive communication command.

9. A method, comprising:

receiving, by a memory device from a first host device in communication with the memory device, a send communication command instructing the memory device to transmit data from the first host device to at least a second host device in communication with the memory device;

receiving, by the memory device from the second host device, a receive communication command instructing the memory device to transmit data to the second host device from at least the first host device;

transmitting, by the memory device, a message from the first host device to the second host device based on the send communication command and the receive communication command; and

enabling, by the memory device, an ability of at least one of the first host device or the second host device to read host identifiers (IDs).

10. The method of claim 9 , wherein the send communication command and the receive communication command are associated with a non-volatile memory express (NVMe) protocol.

11. The method of claim 9 , where the message is associated with one of a unicast message, a multicast message, or a broadcast message.

12. The method of claim 9 , wherein the memory device is associated with one of a multi-port solid state drive (SSD) or a single root input/output virtualization (SR-IOV) SSD.

13. The method of claim 9 , wherein the memory device is associated with at least one communication queue for receiving at least one of the send communication command or the receive communication command.

14. The method of claim 9 , further comprising assigning, by the memory device, a corresponding host ID to each of multiple host devices in communication with the memory device.

15. The method of claim 14 , further comprising disabling the ability of the at least one of the first host device or the second host device to read the host IDs.

16. The method of claim 9 , wherein the send communication command is a vendor specific (VS) send communication command, and wherein the receive communication command is a VS receive communication command.

17. A system, comprising:

a first host device configured to:

transmit, to a memory device, a send communication command instructing the memory device to transmit data from the first host device to at least a second host device;

the second host device configured to:

transmit, to the memory device, a receive communication command instructing the memory device to transmit data to the second host device from at least the first host device; and

the memory device configured to:

facilitate communication between the first host device and the second host device by transmitting a message from the first host device to the second host device based on the send communication command and the receive communication command; and

enable an ability of at least one of the first host device or the second host device to read host identifiers (IDs).

18. The system of claim 17 , wherein the second host device is configured to maintain at least one receive communication command in a submission queue associated with the receive communication command.

19. A system, comprising:

a first host device configured to:

transmit, to a memory device, a send communication command instructing the memory device to transmit data from the first host device to at least a second host device;

the second host device configured to:

transmit, to the memory device, a receive communication command instructing the memory device to transmit data to the second host device from at least the first host device, wherein the second host device is configured to refrain from timing out the receive communication command; and

the memory device configured to:

facilitate communication between the first host device and the second host device by transmitting a message from the first host device to the second host device based on the send communication command and the receive communication command.

20. The system of claim 17 , wherein the first host device is configured to transmit the send communication command to a communication queue associated with the first host device, and wherein the second host device is configured to transmit the receive communication command to a communication queue associated with the second host device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2023
From: SINHA, GAURAV; REDAELLI, MARCO
To: MICRON TECHNOLOGY, INC.
Reel/Frame 065704/0874 →
Continuity (2)
Provisional Application 63385738 · Dec 1, 2022
Related Publication 20240184722A1 · Jun 6, 2024
References Cited (8)
US 10509753B2 · Duncan · 2019 [cited by examiner]
US 11467776B1 · Chang · 2022 [cited by examiner]
US 20150304423A1 · Satoyama · 2015 [cited by examiner]
US 20180253398A1 · Wu · 2018 [cited by examiner]
US 20190041936A1 · Teoh · 2019 [cited by examiner]
US 20200319812A1 · He · 2020 [cited by examiner]
US 20220276809A1 · Guy · 2022 [cited by examiner]
US 20230051825A1 · Chang · 2023 [cited by examiner]