IP Library Granted Patent US 12710876
Granted Patent B2
US 12710876 · App. 19/005,960 · Granted Aug 18, 2026

Systems, methods, and media for reducing performance penalties caused by read re-tries

Inventors: Parth Rameshbhai Donga (Folsom, CA); Hinesh Shah (Folsom, CA); Giuseppina Puzzilli (Boise, ID)
Assignee: SK hynix NAND Product Solutions Corp.
G06F3/0611G06F3/0653G06F3/0659G06F3/0679
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 12710876
App. No.
19/005,960
Granted
Aug 18, 2026
Kind
B2
Abstract

Mechanism, including systems, methods, and media, for reducing performance penalties caused by read re-tries are provided, the mechanisms including: maintaining a count of total reads for a block of non-volatile memory; maintaining a count of read re-tries for the block; determining a trigger rate based on the count of read re-tries for the block and the count of total reads for the block using a hardware processor; and tagging the block for data refresh based at least in part on the trigger rate meeting a trigger rate threshold. In some embodiments, the mechanisms further comprise: maintaining a count of block moves for a die corresponding to the block; and warning a user of device degradation based at least in part on the count of block moves meeting a maximum-number-of-moves-per-die threshold.

Claims (47)

1 . A system for reducing performance penalties caused by read re-tries, comprising:

memory; and

at least one hardware processor that is collectively configured to at least:

maintain a count of total reads for a block of non-volatile memory;

maintain a count of read re-tries for the block, wherein maintaining the count of read re-tries for the block comprises adjusting the count of read re-tries in response to determining that a read re-try is not needed;

determine a trigger rate based on the count of read re-tries for the block and the count of total reads for the block; and

tag the block for data refresh based at least in part on the trigger rate meeting a trigger rate threshold.

2 . The system of claim 1 , wherein the at least one hardware processor is further collectively configured to at least:

maintain a count of block moves for a die corresponding to the block; and

warn a user of device degradation based at least in part on the count of block moves meeting a maximum-number-of-moves-per-die threshold.

3 . The system of claim 1 , wherein maintaining the count of total reads for the block comprises incrementing the count of total reads for the block in response to a successful read from the block.

4 . The system of claim 1 , wherein maintaining the count of read re-tries for the block comprises incrementing the count of read re-tries for the block in response to a successful read re-try from the block.

5 . The system of claim 1 , wherein the trigger rate is equal to the count of read re-tries for the block divided by the count of total reads for the block.

6 . The system of claim 1 , wherein the adjusting the count of read re-tries in response to determining that a read re-try is not needed comprises decrementing the count of read re-tries.

7 . The system of claim 1 , wherein the at least one hardware processor is further collectively configured to at least:

determine that a read retry was not successful; and

perform error handing in response to determining that the read retry was not successful.

8 . A method for reducing performance penalties caused by read re-tries, comprising:

maintaining a count of total reads for a block of non-volatile memory;

maintaining a count of read re-tries for the block, wherein maintaining the count of read re-tries for the block comprises adjusting the count of read re-tries in response to determining that a read re-try is not needed;

determining a trigger rate based on the count of read re-tries for the block and the count of total reads for the block using a hardware processor; and

tagging the block for data refresh based at least in part on the trigger rate meeting a trigger rate threshold.

9 . The method of claim 8 , further comprising:

maintaining a count of block moves for a die corresponding to the block; and

warning a user of device degradation based at least in part on the count of block moves meeting a maximum-number-of-moves-per-die threshold.

10 . The method of claim 8 , wherein maintaining the count of total reads for the block comprises incrementing the count of total reads for the block in response to a successful read from the block.

11 . The method of claim 8 , wherein maintaining the count of read re-tries for the block comprises incrementing the count of read re-tries for the block in response to a successful read re-try from the block.

12 . The method of claim 8 , wherein the trigger rate is equal to the count of read re-tries for the block divided by the count of total reads for the block.

13 . The method of claim 8 , wherein the adjusting the count of read re-tries in response to determining that a read re-try is not needed comprises decrementing the count of read re-tries.

14 . The method of claim 8 , further comprising:

determining that a read retry was not successful; and

performing error handing in response to determining that the read retry was not successful.

15 . A non-transitory computer-readable medium containing computer executable instructions that, when executed by a processor, cause the processor to perform a method for reducing performance penalties caused by read re-tries, the method comprising:

maintaining a count of total reads for a block of non-volatile memory;

maintaining a count of read re-tries for the block, wherein maintaining the count of read re-tries for the block comprises adjusting the count of read re-tries in response to determining that a read re-try is not needed;

determining a trigger rate based on the count of read re-tries for the block and the count of total reads for the block; and

tagging the block for data refresh based at least in part on the trigger rate meeting a trigger rate threshold.

16 . The non-transitory computer-readable medium of claim 15 , wherein the method further comprises:

maintaining a count of block moves for a die corresponding to the block; and

warning a user of device degradation based at least in part on the count of block moves meeting a maximum-number-of-moves-per-die threshold.

17 . The non-transitory computer-readable medium d of claim 15 , wherein maintaining the count of total reads for the block comprises incrementing the count of total reads for the block in response to a successful read from the block.

18 . The non-transitory computer-readable medium of claim 15 , wherein maintaining the count of read re-tries for the block comprises incrementing the count of read re-tries for the block in response to a successful read re-try from the block.

19 . The non-transitory computer-readable medium of claim 15 , wherein the trigger rate is equal to the count of read re-tries for the block divided by the count of total reads for the block.

20 . The non-transitory computer-readable medium of claim 15 , wherein the adjusting the count of read re-tries in response to determining that a read re-try is not needed comprises decrementing the count of read re-tries.

21 . The non-transitory computer-readable medium of claim 15 , wherein the method further comprises:

determining that a read retry was not successful; and

performing error handing in response to determining that the read retry was not successful.