-
1.
公开(公告)号:US20230229347A1
公开(公告)日:2023-07-20
申请号:US17592814
申请日:2022-02-04
Applicant: Western Digital Technologies, Inc.
Inventor: Einav Zilberstein , Hadas Oshinsky , Maayan Suliman
IPC: G06F3/06
CPC classification number: G06F3/0656 , G06F3/0659 , G06F3/064 , G06F3/0631 , G06F3/0604 , G06F3/0679
Abstract: A storage system allocates single-level cell (SLC) blocks in its memory to act as a write buffer. A host sends the storage system a threshold indicating an amount of data that should be stored in the write buffer before the storage system flushes the write buffer to multi-level cell (MLC) blocks in the memory. Using this threshold can extend the amount of time that data is maintained in the write buffer, which can reduce the write-amplification factor and power consumption, as well as increase read performance of the data.
-
2.
公开(公告)号:US20230195353A1
公开(公告)日:2023-06-22
申请号:US17558014
申请日:2021-12-21
Applicant: Western Digital Technologies, Inc.
Inventor: Einav Zilberstein , Hadas Oshinsky , Maayan Suliman , Karin Inbar
IPC: G06F3/06
CPC classification number: G06F3/0653 , G06F3/0655 , G06F3/0604 , G06F3/0679
Abstract: A storage system determines a memory fragmentation level for each of a plurality of logical block address ranges. The memory fragmentation level for a given logical block address range is determined according to the number of memory senses required to read that logical block address range in its current state of fragmentation and the number of memory senses required to read that logical block address range assuming no fragmentation. The memory fragmentation level correlates to the sequential read performance for that logical block address range in that an increase in the memory fragmentation level results in a decrease in sequential read performance.
-
公开(公告)号:US11435920B2
公开(公告)日:2022-09-06
申请号:US17183703
申请日:2021-02-24
Applicant: Western Digital Technologies, Inc.
Inventor: Rotem Sela , Einav Zilberstein , Karin Inbar
IPC: G06F3/06 , G06F12/1009 , G11C11/56
Abstract: A storage system allocates single-level cell (SLC) blocks in its memory to act as a write buffer and/or a read buffer. When the storage system uses the SLC blocks as a read buffer, the storage system reads data from multi-level cell (MLC) blocks in the memory and stores the data in the read buffer prior to receiving a read command from a host for the data. When the storage system uses the SLC blocks as a write buffer, the storage system retains certain data in the write buffer while other data is flushed from the write buffer to MLC blocks in the memory.
-
4.
公开(公告)号:US11842069B2
公开(公告)日:2023-12-12
申请号:US17592814
申请日:2022-02-04
Applicant: Western Digital Technologies, Inc.
Inventor: Einav Zilberstein , Hadas Oshinsky , Maayan Suliman
IPC: G06F3/06
CPC classification number: G06F3/0656 , G06F3/064 , G06F3/0604 , G06F3/0631 , G06F3/0659 , G06F3/0679
Abstract: A storage system allocates single-level cell (SLC) blocks in its memory to act as a write buffer. A host sends the storage system a threshold indicating an amount of data that should be stored in the write buffer before the storage system flushes the write buffer to multi-level cell (MLC) blocks in the memory. Using this threshold can extend the amount of time that data is maintained in the write buffer, which can reduce the write-amplification factor and power consumption, as well as increase read performance of the data.
-
公开(公告)号:US20230384966A1
公开(公告)日:2023-11-30
申请号:US17860548
申请日:2022-07-08
Applicant: Western Digital Technologies, Inc.
Inventor: Rotem Sela , Einav Zilberstein , Asher Druck
IPC: G06F3/06
CPC classification number: G06F3/0652 , G06F3/061 , G06F3/0619 , G06F3/0629 , G06F3/0679
Abstract: A storage system uses blocks of memory that are sized larger than a size of a zone. This means that the storage system stores multiple zones in a given block. Storing zones with different one properties in a given block can be problematic, so the storage system obtains zone property information for each zone and stores zones with similar zone properties in a given block.
-
公开(公告)号:US10289552B2
公开(公告)日:2019-05-14
申请号:US15611510
申请日:2017-06-01
Applicant: Western Digital Technologies, Inc.
Inventor: Tal Heller , Hadas Oshinsky , Rotem Sela , Einav Zilberstein , Amir Shaharabany , Yigal Eli
IPC: G06F12/00 , G06F12/0804 , G06F12/0806 , G06F12/0868 , G06F12/0891 , G11C7/20
Abstract: A storage system and method are provided for flush optimization. In one embodiment, a storage system is provided comprising a cache, a non-volatile memory, and a controller. The controller is configured to: store, in the cache, data received from a host and to be written in the non-volatile memory; receive a command from the host to move the data stored in the cache into the non-volatile memory; without having executed the command, send a confirmation to the host that the command was executed; and execute the command after sending the continuation to the host.
-
公开(公告)号:US12124377B2
公开(公告)日:2024-10-22
申请号:US18222034
申请日:2023-07-14
Applicant: Western Digital Technologies, Inc.
Inventor: Rotem Sela , Hadas Oshinsky , Einav Zilberstein
IPC: G06F12/00 , G06F3/06 , G06F12/02 , G06F12/0873 , G06F12/123
CPC classification number: G06F12/0873 , G06F3/0604 , G06F3/0644 , G06F3/0679 , G06F12/0253 , G06F12/123
Abstract: Zoned memory typically requires write commands to be sent from a host to a data storage device in logical block address (LBA) sequential order. Instead of rejecting out-of-order write commands, the data storage device can execute those commands and internally deal with the out-of-order problem. For example, the data storage device can use a special zone logical-to-physical address table, use a temporary zone data buffer, and/or store a data's LBA in a header for later matching.
-
公开(公告)号:US20230333772A1
公开(公告)日:2023-10-19
申请号:US17723887
申请日:2022-04-19
Applicant: Western Digital Technologies, Inc.
Inventor: Einav Zilberstein , Matar Krizhak , Stella Achtenberg , Hadas Oshinsky
IPC: G06F3/06
CPC classification number: G06F3/0655 , G06F3/0604 , G06F3/0679
Abstract: A stream set classification process may be implemented to classify streams opened by a host device on a data storage device. The data storage device may internally classify the streams into different stream classifications using a set of performance metrics. Stream classifications that cause the data storage device to show the greatest gains when compared with a set of baseline performance metrics for the data storage device and/or when compared with other stream classifications, may be selected by the data storage device and/or the host device for subsequent write operations.
-
公开(公告)号:US11520695B2
公开(公告)日:2022-12-06
申请号:US17215898
申请日:2021-03-29
Applicant: Western Digital Technologies, Inc.
Inventor: Einav Zilberstein , Hadas Oshinsky
IPC: G06F12/02 , G06F12/0882 , G06F3/06
Abstract: A storage system determines whether its memory is fragmented (e.g., based on a host read pattern that indicates that a sequential file is being read, but the number of data sense operations required to perform this read indicates that file is stored non-sequentially in the memory). If the storage system determines that its memory is fragmented, the storage system can perform a defragmentation operation on the memory. This defragmentation operation can be done invisibly to the host (i.e., without receiving any hint or instruction from the host to perform the defragmentation operation).
-
公开(公告)号:US20180322051A1
公开(公告)日:2018-11-08
申请号:US15611510
申请日:2017-06-01
Applicant: Western Digital Technologies, Inc.
Inventor: Tal Heller , Hadas Oshinsky , Rotem Sela , Einav Zilberstein , Amir Shaharabany , Yigal Eli
IPC: G06F12/0804 , G06F12/0806 , G06F12/0868
CPC classification number: G06F12/0804 , G06F12/0806 , G06F12/0868 , G06F12/0891 , G11C7/20
Abstract: A storage system and method are provided for flush optimization. In one embodiment, a storage system is provided comprising a cache, a non-volatile memory, and a controller. The controller is configured to: store, in the cache, data received from a host and to be written in the non-volatile memory; receive a command from the host to move the data stored in the cache into the non-volatile memory; without having executed the command, send a confirmation to the host that the command was executed; and execute the command after sending the continuation to the host.
-
-
-
-
-
-
-
-
-