Implied streams
AssigneeWestern Digital Technologies, Inc.
InventorsLiam Parker, Matias Bjorling, Michael James
Life of this patent
Estimating the term…
Abstract
The present disclosure generally relates to writing data to streams. A host device can instruct a data storage device to operate in implied streams mode such that the host device does not need to tell the data storage device the specific stream in which to write data. The data storage device would maintain a list of open append points of specific streams. Upon receiving a write command, the data storage device determines whether the write command is for an already open stream, and if so, write to the specific stream. If not, then the data storage device opens a new stream or write the data to an overflow stream.
Claims19
A data storage device, comprising:
- a memory device having stream architecture, the stream architecture dividing the memory device into a plurality of streams;
- and
- a controller coupled to the memory device, the controller configured to:
- enter an implied streams mode;
- receive a write command from a host device;
- and
- determine a stream associated with the write command based on one or more logical block addresses (LBAs) of the write command, wherein a stream identifier (ID) is not sent with the write command.
A data storage device, comprising:
- a memory device having stream architecture, the stream architecture dividing the memory device into a plurality of streams;
- and
- a controller coupled to the memory device, the controller configured to:
- receive an indication from a host device to enter an implied streams mode, wherein the host device does not send a stream identifier (ID) with a write command during the implied streams mode;
- and
- determine a stream associated with a write command based on one or more logical block addresses (LBAs) for each write command received from the host device.
A data storage device, comprising:
- memory means having stream architecture, the stream architecture dividing the memory means into a plurality of streams;
- and
- a controller coupled to the memory means, the controller configured to:
- program data of a write command to a stream of the plurality of streams, wherein the stream is selected based on one or more logical block addresses (LBAs) of the write command, wherein each stream has a plurality of stream granularity size (SGS) LBA ranges, and wherein a stream identifier (ID) is not included with the write command;
- and
- maintain a list of open append points, wherein the list of open append points is maintained in a flash translation layer (FTL) table, and wherein each open append point of the list of open append points is associated with a SGS LBA range of a plurality of SGS LBA ranges.
A data storage device, comprising:
- memory means having stream architecture, the stream architecture dividing the memory means into a plurality of streams;
- and
- a controller coupled to the memory means, the controller configured to:
- program a data of a write command to a stream of the plurality of streams, wherein the stream is selected based on one or more logical block addresses (LBAs) of the write command, wherein each stream has a plurality of stream granularity size (SGS) LBA ranges, and wherein a stream identifier (ID) is not included with the write command;
- determine that the stream is associated with a closed SGS LBA range;
- select and/or open an open append point for another SGS LBA range;
- and
- program the data of the write command to the open append point.
Dependencies are inferred from the claim text.