IP Library Granted Patent US 11,543,987
Granted Patent B2
US 11,543,987 · App. 16/893,033 · Granted Jan 3, 2023

Storage system and method for retention-based zone determination

Inventor: Ramanathan Muthiah (Bangalore, IN)
Assignee: Western Digital Technologies, Inc.
G06F3/0644G06F3/064G06F3/0616G06F3/0673
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 11,543,987
App. No.
16/893,033
Granted
Jan 3, 2023
Kind
B2
Abstract

A storage system and method for retention-based zone determination are provided. In one embodiment, a storage system is presented comprising a memory comprising a plurality of blocks and a controller. The controller is configured to receive, from a host, a zone-create command comprising a health requirement; and in response to receiving the zone-create command, create a zone of memory from blocks of the memory that satisfy the health requirement. Other embodiments are provided.

Claims (45)

1. A storage system comprising:

a memory comprising a plurality of blocks; and

a controller configured to:

provide a host in communication with the storage system with a health index value of each block of the plurality of blocks;

in response to receiving, from the host, a first zone-create command identifying a first set of blocks from the plurality of blocks that have a health index value that matches a data retention health requirement of a first application on the host, create a first zone of memory from the identified first set of blocks of the memory;

in response to receiving, from the host, a second zone-create command identifying a second set of blocks from the plurality of blocks that have a health index value that matches a data retention health requirement of a second application on the host, create a second zone of memory from the identified second set of blocks of the memory, wherein the first zone and the second zone are dedicated to different types of data and comprise respective logical address ranges that must be written sequentially and erased before being written again; and

provide the host with an updated health index value of each block of the plurality of blocks.

2. The storage system of claim 1 , wherein:

the memory comprises a plurality of dies, each die comprising a respective plurality of blocks; and

the controller is further configured to create at least one of the first zone and the second zone from blocks across multiple dies.

3. The storage system of claim 1 , wherein the health index value of a block comprises an average of a plurality of health values of the block taken over time.

4. The storage system of claim 1 , wherein the health index value of a block is determined from an age of the block.

5. The storage system of claim 1 , wherein the memory comprises a three-dimensional memory.

6. The storage system of claim 1 , wherein the controller is further configured to use a plurality of input-output queues for parallel accessing of the first zone and the second zone.

7. The storage system of claim 1 , wherein:

the controller is further configured to create a logical-to-physical address entry for each zone of the first zone and the second zone; and

the logical-to-physical address entry of each zone of the first zone and the second zone comprises a first set of bytes for a zone type and a second set of bytes for a physical address.

8. The storage system of claim 1 , wherein the first zone and the second zone are within an endurance group of the memory.

9. The storage system of claim 1 , wherein the health index value of a block is determined from a number of program/erase cycles of the block.

10. The storage system of claim 1 , wherein the health index value of a block is determined from a syndrome weight of the block.

11. The storage system of claim 1 , wherein the health index value of a block is determined from a bit error rate of the block.

12. The storage system of claim 1 , wherein the health index value of a block is determined from an enhanced post-write read factor of the block.

13. The storage system of claim 1 , wherein the health index value of a block is determined from a last read low-density parity check state of the block.

14. A method comprising;

performing the following in a host in communication with a storage system comprising a memory, wherein the memory comprises a plurality of blocks:

receiving, from the storage system, a health index value of each block of the plurality of blocks;

determining data retention requirements of a first application and a second application running on the host;

identifying a first set of blocks from the plurality of blocks that have a health index value that matches the data retention health requirement of the first application;

identifying a second set of blocks from the plurality of blocks that have a health index value that matches the data retention health requirement of the second application;

sending a first request to the storage system to create a first zone of memory from the first set of blocks;

sending a second request to the storage system to create a second zone of memory from the second set of blocks, wherein each zone of the first zone and the second zone comprises a respective logical address range that must be written sequentially and erased before it can be written again; and

receiving, from the storage system, an updated health index value of each block of the plurality of blocks.

15. The method of claim 14 , further comprising sending a request to the storage system for the health index value of each block of the plurality of blocks.

16. The method of claim 14 , wherein the memory comprises a plurality of dies, and wherein at least one zone of the first zone and the second zone is created from blocks across multiple dies.

17. The method of claim 14 , wherein a block's health index value is determined from one or more of the following: an age of the block, a number of program/erase cycles of the block, a syndrome weight of the block, a bit error rate of the block, an enhanced post-write read factor of the block, and a last read low-density parity check state of the block.

18. The method of claim 14 , further comprising:

sending a request to the storage system to create an additional zone, wherein an application running on the host selects whether to store data in the first zone, in the second zone, or in the additional zone based on a data retention requirement.

19. The method of claim 14 , further comprising:

sending a request to the storage system to create an additional zone, wherein the first zone, the second zone, and the additional zone are used to store different types of data.

20. A storage system comprising:

a memory comprising a plurality of blocks;

means for providing a host in communication with the storage system with a health index value of each block of the plurality of blocks;

means for creating a first zone of memory from a first set of blocks of the memory in response to receiving, from the host, a first zone-create command identifying the first set of blocks that have a health index value that matches a data retention health requirement of a first application on the host;

means for creating a second zone of memory from a second set of blocks of the memory in response to receiving, from the host, a second zone-create command identifying the second set of blocks that have a health index value that matches a data retention health requirement of a second application on the host, wherein the first zone and the second zone are dedicated to different types of data and comprise respective logical address ranges that must be written sequentially and erased before being written again; and

means for providing the host with an updated health index value of each block of the plurality of blocks.

Assignments (10)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 053926 FRAME 0446 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058966/0321 →
SECURITY INTEREST Recorded Sep 29, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 053926/0446 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2020
From: MUTHIAH, RAMANATHAN
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 052842/0753 →