US2015121137A1PendingUtilityA1

Storage device interface and methods for using same

Assignee: NIMBLE STORAGE INCPriority: Nov 18, 2010Filed: Jan 8, 2015Published: Apr 30, 2015
Est. expiryNov 18, 2030(~4.3 yrs left)· nominal 20-yr term from priority
G06F 11/1469G06F 13/28G06F 11/1412G06F 2212/7201G06F 12/0246Y02D10/00G06F 13/385G06F 11/1441G06F 13/1668G06F 11/1402G06F 1/30
45
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A memory system controller includes one or more sockets for accommodating NVDIMM cards produced by different NVDIMM providers; a PCIe interface for coupling the memory system controller to a host; and a controller coupled to the PCIe interface over a PCIe-compliant connection and to the one or more sockets over respective DDR2 connections. The controller is configured to manage data transfers between the host and a specified one of the NVDIMM sockets in which an NVDIMM card is accommodated as DMA reads and writes, format data received from the PCIe interface for transmission to the specified NVDIMM socket over the corresponding one or more DDR2 interfaces, and initiate save and restore operations on the NVDIMM card accommodated within the specified NVDIMM socket in response to power failure and power restoration indications.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A storage device interface, comprising:
 a peripheral component interconnect express (PCIe) interface configured to be coupled to a host system;   a socket configured to be coupled to a memory card, wherein the memory card comprises dynamic random access memory (DRAM) and flash memory; and   a controller communicatively coupled to the PCIe interface and the socket,   wherein upon detecting a loss of power, the controller instructs the memory card to save data stored on the DRAM of the memory card onto the flash memory of the memory card, the save operation being completed with power supplied by an ultra capacitor.   
     
     
         2 . The storage device interface of  claim 1 , wherein upon detecting a restoration of power, the controller further instructs the memory card to save the data on the flash memory of the memory card onto the DRAM of the memory card. 
     
     
         3 . The storage device interface of  claim 1 , wherein the memory card is a non-volatile dual in-line memory module (NVDIMM) card. 
     
     
         4 . The storage device interface of  claim 1 , wherein the socket is a non-volatile dual in-line memory module (NVDIMM) socket. 
     
     
         5 . The storage device interface of  claim 1 , wherein the controller formats data received from the host system into a format suitable for the memory card, and formats data received from the memory card into a format suitable for the host system. 
     
     
         6 . The storage device interface of  claim 1 , wherein a first interface facilitates the communication of data between the controller and the memory card, and a second interface facilitates the communication of commands between the controller and the memory card. 
     
     
         7 . The storage device interface of  claim 6 , wherein the first interface is a double data rate (DDR2) interface and the second interface is a two-wire interface (TWI). 
     
     
         8 . The storage device interface of  claim 1 , wherein a first direct memory access (DMA) engine of the controller formats data received from the host system into a format suitable for the memory card, and a second direct memory access (DMA) engine of the controller formats data received from the memory card into a format suitable for the host system. 
     
     
         9 . The storage device interface of  claim 8 , wherein subsequent to the data being received from the host system and prior to the data being transmitted to the memory card, the first DMA engine temporarily stores the data in a data buffer of the controller. 
     
     
         10 . The storage device interface of  claim 8 , wherein subsequent to the data being received from the memory card and prior to the data being transmitted to the host system, the second DMA engine temporarily stores the data in a data buffer of the controller. 
     
     
         11 . The storage device interface of  claim 1 , wherein during a direct memory access (DMA) write operation, data from the host system is transferred to the DRAM of the memory card. 
     
     
         12 . The storage device interface of  claim 11 , wherein the data from the host system is accumulated in a data buffer of the controller prior to being transferred to the DRAM of the memory card. 
     
     
         13 . The storage device interface of  claim 1 , wherein during a direct memory access (DMA) read operation, data from the DRAM of the memory card is transferred to the host system. 
     
     
         14 . The storage device interface of  claim 13 , wherein the data from the DRAM of the memory card is accumulated in a data buffer of the controller prior to being transferred to the host system. 
     
     
         15 . A method, comprising:
 receiving data from a host system at a peripheral component interconnect express (PCIe) interface of a storage device interface;   formatting, by a controller of the storage device interface, the data received from the host system into a format suitable for a memory card, wherein the memory card (i) is communicatively coupled to the storage device interface via a socket, and (ii) comprises dynamic random access memory (DRAM) and flash memory;   transmitting, via the socket, the formatted data to the memory card; and   storing the transmitted data on the DRAM of the memory card,   wherein upon detecting a loss of power, the controller instructs the memory card to save the data stored on the DRAM of the memory card onto the flash memory of the memory card, the save operation being completed with power supplied by an ultra capacitor.   
     
     
         16 . The method of  claim 15 , wherein upon detecting a restoration of power, the controller further instructs the memory card to save the data on the flash memory of the memory card onto the DRAM of the memory card. 
     
     
         17 . The method of  claim 15 , further comprising comparing a supply power level to a threshold reference level, and if the supply power level is less than the threshold reference level, notifying the controller of a power failure. 
     
     
         18 . A non-transitory machine-readable storage medium comprising software instructions that, when executed by a controller of a storage device interface, cause the controller to:
 receive data from a host system at a peripheral component interconnect express (PCIe) interface of the storage device interface;   format the data received from the host system into a format suitable for a memory card, wherein the memory card (i) is communicatively coupled to the storage device interface via a socket, and (ii) comprises dynamic random access memory (DRAM) and flash memory; and   transmit, via the socket, the formatted data to the memory card,   wherein the transmitted data is stored on the DRAM of the memory card, and   wherein upon detecting a loss of power, the controller instructs the memory card to save the data stored on the DRAM of the memory card onto the flash memory of the memory card, the save operation being completed with power supplied by an ultra capacitor.   
     
     
         19 . The non-transitory machine-readable storage medium of  claim 18 , wherein upon detecting a restoration of power, the controller further instructs the memory card to save the data on the flash memory of the memory card onto the DRAM of the memory card.

Join the waitlist — get patent alerts

Track US2015121137A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.