Systems and methods for reordering data in a storage device based on data access patterns
US-12050800-B2 · Jul 30, 2024 · US
US2020341908A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2020341908-A1 |
| Application number | US-202016855094-A |
| Country | US |
| Kind code | A1 |
| Filing date | Apr 22, 2020 |
| Priority date | Apr 23, 2019 |
| Publication date | Oct 29, 2020 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method of operating a multi-core solid state drive includes: receiving an initial internal back copy command including a physical copy referencing a source Logical Page Number (LPN) and a destination LPN from a host, delaying processing of the physical copy when the physical copy requires two different flash translation layers (FTLs), and generating a modified batch internal copy command by replacing the source LPN of the physical copy with a Physical Page Number mapped to the source LPN.
Opening claim text (preview).
What is claimed is: 1 . A method of operating a multi-core solid state drive comprising: receiving an initial batch internal copy command comprising a physical copy including a source Logical Page Number (LPN) and a destination LPN from a host; delaying processing of the physical copy when the physical copy requires two different flash translation layers (FTLs); and generating a modified batch internal copy command by replacing the source LPN of the physical copy with a Physical Page Number (PPN) mapped to the source LPN. 2 . The method of claim 1 , wherein the delaying of the physical copy further comprises: generating a delayed physical copy list including an entry for the physical copy including the destination LPN and the PPN. 3 . The method of claim 2 , further comprising: performing the physical copy based on a changeable Physical to Logical (P2L) mapping table and the delayed physical copy list to preventing multiple copy operations from occurring in one PPN. 4 . The method of claim 1 , further comprising: performing a copy operation through a Logical to Physical (L2P) mapping change of a logical copy and the physical copy from the modified batch internal copy command. 5 . The method of claim 1 , further comprising: transmitting the modified batch internal copy command to the FTLs. 6 . The method of claim 1 , further comprising: transforming the physical copy to a logical copy using padding; and recovering data of the logical copy to a location of the physical copy when the number of times the padding is used a number of times equal to or greater than a preset threshold. 7 . The method of claim 1 , further comprising: transmitting a read request associated with the physical copy to the FTLs after an internal copy operation for the modified batch internal copy command has completed. 8 . The method of claim 1 , further comprising: transmitting the modified batch internal copy command to the FTLs after a write request received before an internal copy command of the modified batch internal copy command is transmitted to the FTLs. 9 . The method of claim 1 , further comprising: the FTLs performing a recovery operation independently upon detecting a sudden power off (SPO). 10 . The method of claim 9 , further comprising: performing a “redo” and an “undo” of an internal copy command of the modified batch internal copy command and a write command based on old-PPN information and destination LPN information, upon detecting the SPO. 11 . A method of operating a multi-core solid state driver including at least two Flash Translation Layers (FTLs), the method comprising: receiving a batch internal copy command including a source Logical Page Number (LPN) associated with a first logical page and a destination LPN associated with a second logic page; sharing a same physical page with the first and second logical pages; and performing garbage collection by retrieving LPN mapping associated with the physical page. 12 . The method of claim 11 , wherein, the sharing of the same physical page is performed after setting a flag bit indicating that the physical page indicated by the first logical page is mapped to another LPN, and the performing of the garbage collection is performed by reading an out-of-band area of the physical page and retrieving the first logical page. 13 . The method of claim 11 , wherein the sharing of the same physical page is performed after the first logical page is overwritten after performing a copy operation for the batch internal copy command, and the performing of the garbage collection includes determining whether the physical page is a valid page using a bitmap. 14 . The method of claim 11 , wherein the sharing of the same physical page includes performing an internal copy operation using the second logical page as the source LPN and a third logical page as the destination LPN. 15 . The method of claim 14 , wherein the performing of the garbage collection comprises: setting a unilateral bit in the second logical page; and increasing a reference count for a block in which the second logical page is set to exclude the block from the garbage collection. 16 . A multi-core solid state drive comprising: a host interface controller configured to receive an initial batch internal copy command from a host, the initial batch internal copy command comprising a physical copy including a source Logical Page Number (LPN) and a destination LPN; a first flash translation layer (FTL) configured to map first logical page numbers (LPNs) of the host to first physical page numbers (PPNs) of a memory device; and a second FTL configured to map second logical page numbers (LPNs) of the host to second physical page numbers (PPNs) of the NVM, the second LPNs being different from the first LPNs, wherein the host interface controller delays processing of the physical copy and generates a modified batch internal copy command by replacing the source LPN with a physical page number (PPN) of the memory device mapped to the source LPN, when the physical copy requires the first and second FTLs. 17 . The multi-core solid state drive of claim 16 , wherein the host interface controller transmits the modified batch internal copy command to the FTLs after performing the replacing. 18 . The multi-core solid state drive of claim 16 , wherein the host interface controller transmits a command to one of the FTLs including the source LPN and the one FTL responds to the command with the PPN. 19 . The multi-core solid state drive of claim 16 , wherein the host interface controller maintains a list referencing the PPN and the destination LPN to reorder read requests transmitted before the physical copy is processed by one of the FTLs. 20 . The multi-core solid state drive of claim 16 , wherein the first LPNs are even LPNs and the second LPNs are odd LPNs.
Multiple device management, e.g. distributing data over multiple flash devices · CPC title
Logical to physical mapping or translation of blocks or pages · CPC title
Replication mechanisms · CPC title
Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems · CPC title
where the redundant components share persistent storage (G06F11/2043 takes precedence) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.