Storage controller, computational storage device, and operational method of computational storage device

US11645011B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11645011-B2
Application numberUS-202217829980-A
CountryUS
Kind codeB2
Filing dateJun 1, 2022
Priority dateJun 17, 2021
Publication dateMay 9, 2023
Grant dateMay 9, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A computational storage device includes a non-volatile memory (NVM) device; and a storage controller configured to control the NVM device. The storage controller includes: a computation processor configured to execute an internal application to generate an internal command; a host interface circuit configured to receive a host command from an external host device, to receive the internal command from the computation processor, and to individually process the received host command and the received internal command; a flash translation layer (FTL) configured to perform an address mapping operation based on a result of the processing of the host interface circuit; and a memory interface circuit configured to control the NVM device based on the address mapping operation of the FTL.

First claim

Opening claim text (preview).

What is claimed is: 1. A computational storage device comprising: a non-volatile memory (NVM) device; and a storage controller configured to control the NVM device, wherein the storage controller includes: a computation processor configured to execute an internal application to generate an internal command; a host interface circuit configured to communicate with the computation processor through an NVM express (NVMe) interface virtualized on a system bus, to receive a host command from an external host device, to receive the internal command from the computation processor via the NVMe interface, and to individually process the received host command and the received internal command; a flash translation layer (FTL) configured to perform a first address mapping operation based on a result of the processing by the host interface circuit of the received host command, and to perform a second address mapping operation based on a result of the processing by the host interface circuit of the received internal command; and a memory interface circuit configured to control the NVM device based on the first address mapping operation and the section address mapping operation of the FTL. 2. The computational storage device of claim 1 , wherein the computation processor, the host interface circuit, the FTL, and the memory interface circuit communicate with each other through the system bus. 3. The computational storage device of claim 2 , wherein the host interface circuit is configured to communicate with the external host device through a first interface. 4. The computational storage device of claim 3 , wherein the first interface is an NVM express (NVMe) interface. 5. The computational storage device of claim 2 , wherein the host interface circuit includes: a physical port configured to transmit and receive a physical signal to and from the external host device, respectively; and an NVMe processor configured to receive the host command through the physical port and to receive the internal command through the system bus. 6. The computational storage device of claim 5 , wherein the NVM device is divided into a first namespace and a second namespace, and wherein the NVMe processor is further configured to process the host command with respect to the first namespace and to process the internal command with respect to the second namespace. 7. The computational storage device of claim 2 , wherein the host interface circuit includes: a physical port configured to transmit and receive a physical signal to and from the external host device, respectively; a first NVMe processor configured to receive the host command through the physical port; and a second NVMe processor configured to receive the internal command through the system bus. 8. The computational storage device of claim 7 , wherein the NVM device is divided into a first namespace, a second namespace, and a third namespace, wherein the first NVMe processor is further configured to process the host command with respect to the first namespace, wherein the second NVMe processor is further configured to process the internal command with respect to the second namespace, and wherein the first NVMe processor and the second NVMe processor share the third namespace. 9. The computational storage device of claim 1 , wherein the storage controller further includes a controller memory, wherein the controller memory includes an internal submission queue and an internal completion queue that correspond to the internal command. 10. The computational storage device of claim 9 , wherein the computation processor is further configured to add the internal command to the internal submission queue of the controller memory through the host interface circuit, and wherein the host interface circuit receives the internal command from the internal submission queue of the controller memory. 11. The computational storage device of claim 9 , wherein the computation processor is further configured to directly add the internal command to the internal submission queue of the controller memory, and wherein the host interface circuit is further configured to receive doorbell signaling from the computation processor and receive the internal command by fetching the internal command from the internal submission queue of the controller memory in response to the doorbell signaling. 12. The computational storage device of claim 1 , wherein the host interface circuit is further configured to: receive doorbell signaling from the external host device; and receive the host command by fetching the host command from a host submission queue of a host memory of the external host device in response to the doorbell signaling. 13. The computational storage device of claim 1 , wherein the FTL includes: an FTL accelerator configured to perform the first address mapping operation and the second address mapping operation; a read buffer circuit configured to manage read data received through the memory interface circuit; and a write buffer circuit configured to manage write data received through the host interface circuit, and wherein the FTL accelerator, the read buffer circuit, and the write buffer circuit are hardware circuits. 14. An operational method of a computational storage device, the operational method comprising: receiving, by a physical port, a host command from an external host device; processing the host command through a non-volatile memory express (NVMe) processor; performing, by a flash translation layer (FTL), first address mapping for the processed host command; accessing, by a memory interface circuit, an NVM device based on the first address mapping; generating, by a computation processor executing an internal application, an internal command; processing the internal command through the NVMe processor; performing, by the FTL, second address mapping for the processed internal command; and accessing, by the memory interface circuit, the NVM device based on the second address mapping. 15. The operational method of claim 14 , wherein the generating the internal command by the computation processor further includes: receiving, by the physical port, an execute command from the external host device; transferring, by the physical port, the execute command to the computation processor; and executing, by the computation processor, the internal application in response to the execute command and generating the internal command based on the executing the internal application. 16. The operational method of claim 14 , wherein the generating the internal command by the computation processor further includes: receiving, by the physical port, an execute command from the external host device; receiving, by the NVMe processor, the execute command from the physical port; transferring, by the NVMe processor, the execute command to the computation processor; and executing, by the computation processor, the internal application in response to the execute command and generating the internal command depending on the executing the internal application. 17. The operational method of claim 14 , wherein the internal application is stored in a controller memory of the computational storage device. 18. A storage controller configured to control a non-volatile memory (NVM) device comprising: an NVM express (NVMe) processor configured to receive a host command through an external host driver; a flash translation layer (FTL) configured to perform address mapping under control of the NVMe processor; a

Assignees

Inventors

Classifications

  • in block erasable memory, e.g. flash memory · CPC title

  • Logical to physical mapping or translation of blocks or pages · CPC title

  • Performance improvement · CPC title

  • G06F3/0679Primary

    Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP] · CPC title

  • Controller construction arrangements · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11645011B2 cover?
A computational storage device includes a non-volatile memory (NVM) device; and a storage controller configured to control the NVM device. The storage controller includes: a computation processor configured to execute an internal application to generate an internal command; a host interface circuit configured to receive a host command from an external host device, to receive the internal comman…
Who is the assignee on this patent?
Samsung Electronics Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06F12/0246. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 09 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).