IP Library Granted Patent US 11,494,101
Granted Patent B2
US 11,494,101 · App. 17/176,852 · Granted Nov 8, 2022

Storage system and method for time-duration-based efficient block management and memory access

Inventor: Dinesh Kumar Agarwal (Karnataka, IN)
Assignee: Western Digital Technologies, Inc.
G06F3/064G06F3/0611G06F3/0652G06F3/0679G06F12/0253G06F2212/7211
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,494,101
App. No.
17/176,852
Granted
Nov 8, 2022
Kind
B2
Abstract

A storage system and method for time-duration-based efficient block management and memory access are provided. In one embodiment, a controller of the storage system is configured to receive time stamps from a host for each of a plurality of blocks in the memory; determine a time duration for programming each of the plurality of blocks based on the time stamps; and differentiate the plurality of blocks based on the time durations. Other embodiments are provided.

Claims (34)

1. A storage system comprising:

a memory comprising a plurality of blocks; and

a controller configured to:

receive a plurality of time stamps from a host;

for each block of the plurality of blocks, determine an amount of time spent programming the block based on time stamps associated with start and end times of programming the block, wherein the amount of time includes time spent, if any, compressing data programmed in the block; and

differentiate the plurality of blocks based on the determined amounts of time;

wherein an amount of time spent programming a given block is determined by calculating a difference between a time stamp for the given block and a time stamp for a subsequent block.

2. The storage system of claim 1 , wherein the amount of time for each block is determined by calculating a difference between the time stamps associated with the start and end times of programming the block.

3. The storage system of claim 1 , wherein plurality of blocks are differentiated for a memory management operation.

4. The storage system of claim 3 , wherein the memory management operation comprises an error protection operation, a wear leveling operation, a read scrub operation, or a resource sharing operation.

5. The storage system of claim 3 , wherein the memory management operation comprises a garbage collection operation.

6. The storage system of claim 1 , wherein the plurality of blocks are differentiated for a search operation.

7. The storage system of claim 1 , wherein a time stamp of the plurality of time stamps is received from the host at a boundary of a block, a boundary of a sub-block, or a boundary of a set of wordlines.

8. The storage system of claim 1 , wherein a time stamp of the plurality of time stamps is received from the host at a time configured by the storage system.

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

10. The storage system of claim 1 , wherein programming a first block requires a longer amount of time than programming a second block, even though the first and second blocks store a same amount of data, due to time needed to compress data programmed in the first block.

11. The storage system of claim 10 , wherein the data programmed in the first block has a longer runtime than data stored in the second block.

12. A method comprising:

performing the following in a storage system comprising a memory comprising a plurality of blocks:

determining an amount of time spent programming each block of the plurality of blocks, wherein an amount of time spent programming a given block includes time spent, if any, compressing data programmed in the given block; and

prioritizing the plurality of blocks based on the determined amounts of time; wherein:

the amounts of time are determined from time information received from a host for each block; and

an amount of time spent programming a given block is determined by calculating a difference between time information for the given block and a subsequent block.

13. The method of claim 12 , wherein time information is received from the host at a boundary of a block, a boundary of a sub-block, or a boundary of a set of wordlines.

14. The method of claim 12 , wherein time information is received from the host at a time configured by the storage system.

15. The method of claim 12 , wherein the plurality of blocks are prioritized for a memory management operation.

16. The method of claim 14 , wherein the memory management operation comprises a garbage collection operation, an error protection operation, a wear leveling operation, a read scrub operation, or a resource sharing operation.

17. The method of claim 12 , wherein the plurality of blocks are prioritized for a search operation.

18. A storage system comprising:

a memory comprising a plurality of blocks;

means for determining an amount of time spent programming each block of the plurality of blocks, wherein an amount of time spent programming a given block includes time spent, if any, compressing data programmed in the given block; and

means for prioritizing the plurality of blocks based on the determined amounts of time; wherein:

the amounts of time are determined from time information received from a host for each block; and

an amount e spent programming a given block is determined by calculating a difference between time information for the given block and a subsequent block.

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 056285 FRAME 0292 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0001 →
SECURITY INTEREST Recorded May 19, 2021
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 056285/0292 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 16, 2021
From: AGARWAL, DINESH KUMAR
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 055277/0858 →
Continuity (2)
Provisional Application 63091500 · Oct 14, 2020
Related Publication 20220113869A1 · Apr 14, 2022