IP Library › Granted Patent US 12,066,889
Granted Patent B2
US 12,066,889 · App. 17/239,621 · Granted Aug 20, 2024

Storage device using host memory and operating method thereof

Inventors: Kicheol Eom (Seoul, KR); Jaeho Sim (Seoul, KR); Dong-Ryoul Lee (Incheon, KR); Hyun Ju Yi (Hwaseong-si, KR); Hyotaek Leem (Hwaseong-si, KR)
Assignee: Samsung Electronics Co., Ltd.
G06F11/1068G06F3/0619G06F3/0656G06F3/0659G06F3/0679G06F13/1668G06F13/28G06F13/4282
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,066,889
App. No.
17/239,621
Granted
Aug 20, 2024
Kind
B2
Abstract

A storage device sharing a host memory of a host, the storage device includes a serial interface that exchanges data with the host, and a storage controller that stores buffering data in a host memory buffer allocated by the host through the serial interface. The storage controller performs error correction encoding and error correction decoding on the buffering data.

Claims (33)

1. A storage controller comprising:

an error correction code (ECC) circuit configured to generate first data,

wherein the storage controller is configured to receive a first command and a second command from an external host device,

the storage controller is configured to transmit the first data to an external host memory buffer allocated by the external device host in response to the first command,

the storage controller is configured to receive second data from the external host memory buffer in response to the second command, and

the first data includes a first parity, and the second data includes a second parity.

2. The storage controller of claim 1 , wherein each of the first parity and the second parity includes one or more parity bits.

3. The storage controller of claim 1 , wherein the storage controller reads third data stored in a nonvolatile memory, and the ECC circuit generates the first data by performing a decoding process and then an encoding process on the third data.

4. The storage controller of claim 1 , wherein the ECC circuit generates fourth data by performing a decoding process and then an encoding process on the second data, and the storage controller writes the fourth data to a nonvolatile memory.

5. The storage controller of claim 1 , wherein the first command is to read data stored in the storage device, and the first data is read data.

6. The storage controller of claim 1 , wherein the second command is to write data, and the second data is write data.

7. The storage controller of claim 1 , wherein the ECC comprises an error correction engine for encoding and decoding of an error correction code of the first and the second data stored in the external host memory buffer.

8. The storage controller of claim 1 , wherein the external host device allocates a first partial region of a host memory of the external host device as a buffer for the storage device.

9. The storage controller of claim 8 , wherein the storage controller allocates a second partial region of the host memory of the external host device to the external host memory buffer.

10. A storage controller comprising:

an error correction code (ECC) circuit configured to receive first data and generate second data by performing a decoding process and then an encoding process on the first data, and configured to receive third data and generate fourth data by performing the decoding process and then the encoding process on the third data,

wherein the storage controller is configured to receive a first command and a second command from an external host device,

the storage controller is configured to read the first data from an external nonvolatile memory,

the storage controller is configured to transmit the second data to an external host memory buffer allocated by the external host device in response to the first command,

the storage controller is configured to receive the third data from the external host memory buffer in response to the second command,

the storage controller is configured to write the fourth data to the external nonvolatile memory, and

the second data includes a first parity, and the third data includes a second parity.

11. A method comprising:

receiving, by a storage controller, a first command from an external host device;

receiving, by the storage controller, first data from an external host memory buffer allocated by the external host device in response to the first command;

performing, by an ECC circuit, a decoding process and then an encoding process on the first data to generate second data;

writing, by the storage controller, the second data to an external nonvolatile memory;

receiving, by the storage controller, a second command from the external host device;

receiving, by the ECC circuit, third data from the external nonvolatile memory;

performing, by the ECC circuit, the decoding process and then the encoding process on the third data to generate fourth data; and

transmitting, by the storage controller, the fourth data to the external host memory buffer in response to the second command,

wherein the first data includes a first parity, and the fourth data includes a second parity.

12. The method of claim 11 , wherein the storage controller includes the ECC circuit.

Priority Claims (1)
KR 10-2018-0137228 · Nov 9, 2018 · national
Continuity (2)
Continuation 16533894 · Aug 7, 2019
Related Publication 20210248035A1 · Aug 12, 2021