Data storage device and method of operating
AssigneeSamsung Electronics Co., Ltd.
InventorsSatish Kumar, Ju Pyung Lee
Life of this patent
Estimating the term…
Abstract
A storage device includes multiple memory devices and a memory controller. The memory controller receives, from a host, values corresponding to data stored in the memory devices and keys for identifying the values, generates parities for inspecting the data for any errors based on the values, and manages key-value mapping information regarding a correspondence between the values and the keys. The memory devices include a first memory device and a second memory device, which store the values and the keys, and a third memory device, which stores parity values calculated from the values and a parity value header for managing the parity values.
Claims20
A storage device, comprising:
- a plurality of memory devices;
- and
- a memory controller that receives, from a host, values corresponding to data stored in the plurality of memory devices and keys for identifying the values, that generates parities for inspecting the data for any errors based on the values, and that manages key-value mapping information regarding a correspondence between the values and the keys,
- wherein the plurality of memory devices include a first memory device and a second memory device, which store the values and the keys, and a third memory device, which stores parity values calculated from the values and a parity value header for managing the parity values;
- the first memory device stores a first value and a first key for identifying the first value;
- the second memory device stores a second value and a second key for identifying the second value;
- and
- the third memory device stores an offset of an address of the first memory device where the first value is stored, a size of the first value, an offset of an address of the second memory device where the second value is stored, and a size of the second value in the parity value header.
A Redundant Array of Independent Disks (RAID) system, comprising:
- a host that provides an access command, values, which correspond to data being targeted by the access command, and keys for identifying the values;
- and
- a plurality of storage devices configured as a RAID, that receives the access command from the host, and that accesses data stored therein in response to the access command,
- wherein the plurality of storage devices include a first storage device and a second storage device, which store the values and the keys, a third storage device, which stores parity values, calculated from the values stored in the first storage device and the second storage device, and a parity value header for managing the parity values, and a RAID controller, which manages key-value mapping information regarding a correspondence between the values and the keys;
- the first storage device stores a first value and a first key for identifying the first value;
- and
- the second storage device stores a second value and a second key for identifying the second value, and
- the third storage device stores, in the parity value header, an offset of an address of the first storage device where the first value is stored, a size of the first value, an offset of an address of the second storage device where the second value is stored, and a size of the second value.
A storage device, comprising:
- a plurality of first memory devices that store data and a second memory device that stores parities of the data;
- and
- a memory controller that receives, from a host, values corresponding to the data stored in the first memory devices and keys for identifying the values, that generates parities for inspecting the data for any errors based on the values, and that manages key-value mapping information regarding a correspondence between the values and the keys,
- wherein the memory controller calculates the parities from values mapped to offsets of predetermined addresses in the first memory devices and stores the parities in the second memory device;
- one of the first memory devices stores a first value and a first key for identifying the first value and another of the first memory devices stores a second value and a second key for identifying the second value;
- and
- the second memory device stores an offset of an address of the one of the first memory devices where the first value is stored, a size of the first value, an offset of an address of the another of the first memory devices where the second value is stored, and a size of the second value in a parity value header.
Dependencies are inferred from the claim text.