IP Library Granted Patent US 10,437,747
Granted Patent B2
US 10,437,747 · App. 15/096,111 · Granted Oct 8, 2019

Memory appliance couplings and operations

Inventors: Vlad Fruchter (Los Altos, CA); Keith Lowery (Garland, TX); George Michael Uhler (Los Altos, CA); Steven Woo (Saratoga, CA); Chi-Ming (Philip) Yeung (Cupertino, CA); Ronald Lee (Pleasanton, CA)
Assignee: Rambus Inc.
G06F13/1668G06F13/4022G06F13/4068G06F13/4282Y02D10/14Y02D10/151
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,437,747
App. No.
15/096,111
Granted
Oct 8, 2019
Kind
B2
Abstract

System and method for improved transferring of data involving memory device systems. A memory appliance (MA) comprising a plurality of memory modules is configured to store data within the plurality of memory modules and further configured to receive data commands from first server and a second server coupled to the MA. The data commands may include direction memory access commands such that the MA can service the data commands while bypassing a host controller of the MA.

Claims (23)

1. A system comprising:

a memory appliance (MA) comprising a plurality of memory modules and a local interconnect, wherein the MA is configured to store data within the plurality of memory modules and further configured to receive requests to access the data;

a first server directly coupled to the local interconnect of the MA through a first direct connection;

a second server directly coupled to the local interconnect of the MA through a second direct connection;

wherein the first server and the second server are configured to access the data stored in the MA through the first and second direct connections to the MA, wherein the first server and the second server are configured to send the requests to access the data stored in the MA to the local interconnect through the first and second direct connections and without sending the requests over a network switch or an interconnect switch disposed external to the memory appliance; and

wherein the first server and the second server are configured to send the requests to access the data stored in the MA directly to the local interconnect through the first and second direct connections, the local interconnect to perform an address translation to bypass a host central processing unit (CPU) of the memory appliance and access the data stored in the MA responsive to the requests.

2. The system of claim 1 , wherein the first and second direct connections are selected from the group consisting of Peripheral Component Interconnect Express (PCIe), InfiniBand, and Ethernet.

3. The system of claim 1 , wherein the network switch and the interconnect switch are selected from the group consisting of an Ethernet switch, a PCIe switch, and an InfiniBand switch, and wherein the memory appliance is within a rack and the first and second server are disposed within the rack.

4. The system of claim 1 , wherein the MA is configured to control access to portions of the plurality of memory modules within the MA by the first server and the second server.

5. The system of claim 1 , wherein the MA is configured to partition portions of the memory modules therewith.

6. A method of transferring data in a memory appliance, the method comprising:

receiving, from a first server, a data request to transfer data from a memory device of a plurality of memory devices coupled to a local interconnect;

configuring an engine of the local interconnect to transfer data from the memory device to the first server through a first direct connection responsive to the data request;

translating, by the local interconnect, a memory address associated with the data request to bypass a host central processing unit (CPU) of the memory appliance and generate a translated memory address;

sending an access request to the memory device, the access request comprising the translated memory address;

receiving the data from the memory device; and

sending the data directly from the local interconnect to the first server in response to the data request.

7. The method of claim 6 , wherein the memory device is a portion of the memory appliance.

8. The method of claim 6 , wherein the local interconnect is a peripheral component interconnect express (PCIe) interconnect.

9. The method of claim 6 , wherein the access request is a direct memory access (DMA) request.

10. The method of claim 6 , wherein the sending of the data is performed transparently to the central processing unit (CPU).

11. The method of claim 6 , wherein the sending of the data by the local interconnect bypasses the central processing unit (CPU).

12. The method of claim 6 , wherein the central processing unit (CPU) receives the data request and responsive thereto configures a request queue for the local interconnect to execute the data request.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2016
From: FRUCHTER, VLAD; LOWERY, KEITH; UHLER, GEORGE MICHAEL; WOO, STEVEN; YEUNG, CHI-MING (PHILIP); LEE, RONALD
To: RAMBUS INC.
Reel/Frame 038690/0001 →
Continuity (3)
Provisional Application 62146151 · Apr 10, 2015
Provisional Application 62197932 · Jul 28, 2015
Related Publication 20160299856A1 · Oct 13, 2016