Reversible write techniques using physical storage device offloading
US-2023325106-A1 · Oct 12, 2023 · US
US12373336B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12373336-B2 |
| Application number | US-202318183592-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 14, 2023 |
| Priority date | Jul 19, 2022 |
| Publication date | Jul 29, 2025 |
| Grant date | Jul 29, 2025 |
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 storage system includes a plurality of storage devices. Each of the plurality of storage devices includes a nonvolatile memory device, a buffer memory and a memory controller that controls the nonvolatile memory device and the buffer memory. At least one storage device of the plurality of storage devices is a computational storage device. The computational storage device further includes a storage controller that performs a computational operation for controlling the storage system.
Opening claim text (preview).
What is claimed is: 1. A storage system comprising: a plurality of storage devices, each of the plurality of storage devices including a nonvolatile memory device, a buffer memory and a memory controller configured to control the nonvolatile memory device and the buffer memory, and at least one storage device of the plurality of storage devices is a computational storage device further including a storage controller configured to perform a computational operation for managing the storage system including a parity generating computational operation for data recovery or a data de-duplication computational operation, wherein the storage controller is configured such that the computational operation includes generating parity bits in response to performing an operation on user data and storing the user data and the parity bits in at least two of the plurality of storage devices and wherein the computational storage device is configured to receive a host request from a host, the host request including a first logical address, convert the first logical address of the host request to a second logical address of a controlled one of the plurality of storage devices based on a storage identifier, the computational storage device including a storage mapping table which includes the storage identifier linking the first logical address and the second logical address, control the controlled one of the plurality of storage devices in response to the host request and the second logical address; control the controlled one of the plurality of storage devices to transmit a completion response based on the host request and the second logical address to the computational storage device; convert the second logical address to the first logical address; and transmit the completion response and the first logical address to the host. 2. The storage system of claim 1 , wherein the storage controller is further configured to perform a compression computational operation. 3. The storage system of claim 1 , wherein the plurality of storage devices other than the computational storage device are normal storage devices that do not include the storage controller, the normal storage devices each including a first nonvolatile memory device, the computational storage device including a second nonvolatile memory device different from the first nonvolatile memory device. 4. The storage system of claim 3 , wherein the computational storage device configured to control the normal storage devices in response to the host request, and the normal storage devices do not directly receive the host request from the host. 5. The storage system of claim 1 , wherein the computational storage device is configured to: control a normal storage device of the plurality of storage devices in response to the host request being a read request such that the normal storage device performs a read operation that reads read data from the nonvolatile memory device of the normal storage device; and provide the host with the read data that are read from the nonvolatile memory device of the normal storage device. 6. The storage system of claim 5 , wherein the read request from the host includes a read command and the first logical address, and the controlled one of the plurality of storage devices is configured to convert the second logical address into a physical address of the nonvolatile memory device of the controlled one of the plurality of storage devices, and perform the read operation based on the physical address. 7. The storage system of claim 6 , wherein the buffer memory of the computational storage device includes the storage mapping table configured to store the storage identifier representing the normal storage device in which the read data are stored, and the second logical address for the normal storage device, and the computational storage device is configured to convert the first logical address for the host into the second logical address for the controlled one of the plurality of storage devices based on the storage mapping table. 8. The storage system of claim 1 , wherein the computational storage device is configured to: control the controlled one of the plurality of storage devices in response to the host request being a write request including write data such that the controlled one of the plurality of storage devices performs a write operation that writes the write data to the nonvolatile memory device of the controlled one of the storage devices. 9. The storage system of claim 8 , wherein the write request from the host further includes a write command and the first logical address, and the controlled one of the storage devices is configured to convert the second logical address into a physical address of the nonvolatile memory device of the controlled one of the storage devices, and perform the write operation based on the physical address. 10. The storage system of claim 1 , wherein at least one of the buffer memory and the nonvolatile memory device of the computational storage device is configured to function as a cache memory. 11. The storage system of claim 1 , wherein the computational storage device is configured to: determine, based on the request being a read request, whether the buffer memory of the computational storage device stores read data requested by the read request, wherein, based on the read data being stored in the buffer memory of the computational storage device, the computational storage device is configured to provide the host with the read data stored in the buffer memory of the computational storage device, and wherein, based on the read data being not stored in the buffer memory of the computational storage device, the computational storage device is configured to control a normal storage device of the plurality of storage devices such that the normal storage device performs a read operation that reads the read data from the nonvolatile memory device of the normal storage device, and provide the host with the read data that are read from the nonvolatile memory device of the normal storage device. 12. The storage system of claim 1 , wherein the computational storage device is configured to: determine based on the host request being a read request, whether the buffer memory of the computational storage device stores read data requested by the read request; and determine whether the nonvolatile memory device of the computational storage device stores the read data, wherein, based on the read data being stored in the buffer memory of the computational storage device, the computational storage device is configured to provide the host with the read data stored in the buffer memory of the computational storage device, wherein, based on the read data not being stored in the buffer memory of the computational storage device, but being stored in the nonvolatile memory device of the computational storage device, the computational storage device is configured to read the read data from the nonvolatile memory device of the computational storage device, and provide the host with the read data that are read from the nonvolatile memory device of the computational storage device, and wherein, based on the read data not being stored in the buffer memory and the nonvolatile memory device of the computational storage device, the computational storage device is configured to control a normal storage device of the plurality of storage devices such that the normal storage device performs a read operation that reads the read data from the nonvolatile memory device of the normal storage device, and provide the host with the read data that are read from the nonvolatile memor
Address translation · CPC title
Cleaning, compaction, garbage collection, erase control · CPC title
Wear leveling · CPC title
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.