DATA STORAGE DEVICE USING HOST MEMORY BUFFER AND METHOD OF OPERATING THE SAME
First Claim
1. A data storage device comprising:
- a nonvolatile memory device configured to store an execution code that controls operations of the data storage device;
a storage controller configured to upload and store the execution code from the nonvolatile memory device to a host memory buffer included in an external host device, and to download the execution code in realtime from the host memory buffer and execute the execution code downloaded from the host memory buffer; and
a mapping controller configured to manage a mapping table including mapping relations between the execution code and host addresses of the host memory buffer at which the execution code is stored.
1 Assignment
0 Petitions
Accused Products
Abstract
A data storage device includes a nonvolatile memory device, a storage controller and a mapping controller. The nonvolatile memory device stores an execution code that controls operations of the data storage device. The storage controller uploads and stores the execution code from the nonvolatile memory device to a host memory buffer included in an external host device, and downloads the execution code in realtime from the host memory buffer to execute the execution code that is downloaded from the host memory buffer. The mapping controller manages a mapping table including mapping relations between the execution code and host addresses of the host memory buffer at which the execution code is stored. A speed of accessing the execution code is increased and performance of the data storage device is enhanced by using the host memory buffer as storage of the execution code to control the operation of the data storage device.
-
Citations
20 Claims
-
1. A data storage device comprising:
-
a nonvolatile memory device configured to store an execution code that controls operations of the data storage device; a storage controller configured to upload and store the execution code from the nonvolatile memory device to a host memory buffer included in an external host device, and to download the execution code in realtime from the host memory buffer and execute the execution code downloaded from the host memory buffer; and a mapping controller configured to manage a mapping table including mapping relations between the execution code and host addresses of the host memory buffer at which the execution code is stored. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A data storage device comprising:
-
a nonvolatile memory device configured to store an execution code that controls operations of the data storage device; a security engine configured to encode the execution code to generate a secured execution code; a storage controller configured to upload and store the secured execution code to a host memory buffer included in an external host device, and to download the secured execution code in realtime from the host memory buffer to provide the downloaded secured execution code to the security engine; and a mapping controller configured to manage a mapping table including mapping relations between the execution code and host addresses of the host memory buffer at which the secured execution code is stored, wherein the security engine is further configured to decode the downloaded secured execution code to provide the execution code, and the storage controller is further configured to execute the execution code provided from the security engine.
-
-
20. A method of operating a data storage device, comprising:
-
uploading and storing, by a storage controller included in the data storage device, an execution code that controls operations of the data storage device from a nonvolatile memory device included in the data storage device to a host memory buffer included in a host device; downloading, by the storage controller, the execution code in realtime from the host memory buffer and executing the execution code downloaded from the host memory buffer; and managing, by a mapping controller included in the data storage device, a mapping table including mapping relations between the execution code and host addresses of the host memory buffer at which the execution code is stored.
-
Specification