US2023342088A1PendingUtilityA1

Hybrid solid-state drive

Assignee: MICROSOFT TECHNOLOGY LICENSING LLCPriority: Nov 30, 2021Filed: Jun 30, 2023Published: Oct 26, 2023
Est. expiryNov 30, 2041(~15.3 yrs left)· nominal 20-yr term from priority
Inventors:Peng Li
G06F 3/0659G06F 3/0619G06F 3/064G06F 3/0679G06F 12/0246G06F 2212/7201G06F 3/0611G06F 3/0688G06F 3/068G06F 3/0616G06F 2212/214
70
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Systems, methods, and devices are described for writing to a solid-state drive (SSD) that includes a non-volatile memory device, the volatile memory device includes first and second memory regions, the first memory region storing an address mapping table. A write request that includes a host logic block address (LBA) and data is received. A determination of whether the received LBA corresponds to the non-volatile memory device or the second memory region is made. In response to the received LBA corresponding to the non-volatile memory device, a physical address of the non-volatile memory device corresponding to the received LBA is determined based on the address mapping table and the included data is written to the determined physical address of the non-volatile memory device. In response to the received LBA corresponding to the second memory region, the included data is written to the second memory region based on the received LBA.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A solid-state drive (SSD) comprising:
 a circuit board;   a non-volatile memory device mounted to the circuit board;   a volatile memory device mounted to the circuit board, the volatile memory device comprising a first memory region and a second memory region, the first memory region storing an address mapping table that maps memory addresses corresponding to the non-volatile memory device to physical addresses of the non-volatile memory device;   a controller mounted to the circuit board and communicatively coupled to the non-volatile memory device and the volatile memory device, wherein the controller:
 receives a write request including a memory address and data; 
 determines the received memory address corresponds to the second memory region; and 
 writes the included data to the second memory region based on the received memory address. 
   
     
     
         2 . The SSD of  claim 1 , wherein to write the included data to the second memory region, the controller:
 converts the received memory address to a corresponding physical address of the second memory region; and   writes the included data to the corresponding physical address of the second memory region.   
     
     
         3 . The SSD of  claim 2 , wherein the controller converts the received memory address to the corresponding physical address of the second memory region based on the size of the received memory address and a first physical address of the second memory region. 
     
     
         4 . The SSD of  claim 1 , wherein the received memory address is a logical block address (LBA). 
     
     
         5 . The SSD of  claim 1 , wherein the controller writes the included data to the second memory region via a direct write operation. 
     
     
         6 . The SSD of  claim 1 , wherein:
 physical addresses of the second memory region correspond to a first namespace; and   the physical addresses of the non-volatile memory device correspond to a second namespace.   
     
     
         7 . The SSD of  claim 6 , wherein to determine the received memory address corresponds to the second memory region, the controller determines the received memory address corresponds to the first namespace. 
     
     
         8 . The SSD of  claim 1 , wherein the controller determines the received memory address corresponds to the second memory region based on a type of application the included data corresponds to. 
     
     
         9 . The SSD of  claim 8 , wherein the application comprises:
 a key-value data store application; or   a journal file system application.   
     
     
         10 . The SSD of  claim 1 , wherein, in response to a power down event, the controller:
 determines, based on the address mapping table, a physical address of the physical addresses of the non-volatile memory device reserved for storing backup data, and   writes data stored in the second memory region to the determined physical address as backup data.   
     
     
         11 . A method for writing to a solid-state drive (SSD) comprising a non-volatile memory device and a volatile memory device, the volatile memory device comprising a first memory region and a second memory region, the first memory region storing an address mapping table that maps memory addresses corresponding to the non-volatile memory device to physical addresses of the non-volatile memory device, the method comprising:
 receiving a write request including a memory address and data;   determining the received memory address corresponds to the second memory region; and   writing the included data to the second memory region based on the received memory address.   
     
     
         12 . The method of  claim 11 , wherein said writing the included data to the second memory region comprises:
 converting the received memory address to a corresponding physical address of the second memory region; and   writing the included data to the corresponding physical address of the second memory region.   
     
     
         13 . The method of  claim 12 , wherein said converting the received memory address to the corresponding physical address of the second memory region comprises:
 converting the received memory address based on the size of the received memory address and a first physical address of the second memory region.   
     
     
         14 . The method of  claim 11 , wherein the received memory address is a logical block address (LBA). 
     
     
         15 . The method of  claim 11 , wherein:
 physical addresses of the second memory region correspond to a first namespace;   the physical addresses of the non-volatile memory device correspond to a second namespace; and   said determining the received memory address corresponds to the second memory region comprises:
 determining the received memory address corresponds to the first namespace. 
   
     
     
         16 . The method of  claim 11 , wherein said determining the received memory address corresponds to the first memory region comprises:
 determining the received memory address corresponds to the first memory region based on a type of application the included data corresponds to.   
     
     
         17 . The method of  claim 11 , further comprising:
 in response to a power down event:
 determining, based on the address mapping table, a physical address of the physical addresses of the non-volatile memory device reserved for storing backup data, and 
 writing data stored in the second memory region to the determined physical address as backup data. 
   
     
     
         18 . A solid-state drive (SSD) controller configured to write to a non-volatile memory device and a volatile memory device, the volatile memory device comprising a first memory region and a second memory region, the first memory region storing an address mapping table that maps memory addresses corresponding to the non-volatile memory device to physical addresses of the non-volatile memory device, the SDD controller further configured to:
 receive a write request including a memory address and data;   determine the received memory address corresponds to the first memory region; and   write the included data to the first memory region based on the received memory address.   
     
     
         19 . The SSD controller of  claim 18 , wherein to write the included data to the first memory region based on the received memory address, the SDD controller is further configured to:
 convert the received memory address to a corresponding physical address of the first memory region; and   write the included data to the corresponding physical address of the first memory region.   
     
     
         20 . The SSD controller of  claim 18 , wherein, in response to a power down event, the SDD controller is configured to:
 determine, based on the address mapping table, a physical address of the physical addresses of the non-volatile memory device reserved for storing backup data, and   write data stored in the second memory region to the determined physical address as backup data.

Join the waitlist — get patent alerts

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

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