IP Library › Granted Patent US 12,608,140
Granted Patent B1
US 12,608,140 · App. 19/033,486 · Granted Apr 21, 2026

Group history read method to improve quality of service of solid state drives

Inventors: Fan Zhang (San Jose, CA); Pengfei Huang (San Jose, CA)
Assignee: SK hynix Inc.
G06F3/0619G06F3/0644G06F3/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 12,608,140
App. No.
19/033,486
Granted
Apr 21, 2026
Kind
B1
Abstract

A method and associated memory system for reading data from a memory. The method reads data from a memory group of the memory; calculates a group divergence metric for read biases used to read the data from the memory group; when the group divergence metric meets a threshold, partitions the memory group into a first sub-group and a second sub-group, wherein the first sub-group has a lower error rate than the second sub-group; reads data from the first and second sub-groups; calculates respective sub-group divergence metrics for the read biases used to read the data from the first and second sub-groups; and when one of the sub-group divergence metrics meets the threshold, partitions the one sub-group of the first and second sub-groups which met the threshold into a third sub-group.

Claims (49)

1 . A method for reading data from a memory, comprising:

reading data from a memory group of the memory;

calculating a group divergence metric for read biases used to read the data from the memory group;

determining that the group divergence metric meets a threshold;

when it is determined that the group divergence metric meets the threshold, partitioning the memory group into a first sub-group and a second sub-group, wherein the first sub-group has a lower error rate than the second sub-group;

reading data from the first and second sub-groups;

calculating respective sub-group divergence metrics for the read biases used to read the data from the first and second sub-groups; and

determining that one of the sub-group divergence metrics meets the threshold;

when it is determined that one of the sub-group divergence metrics meets the threshold, partitioning the one sub-group of the first and second sub-groups which met the threshold into a third sub-group and a fourth sub-group.

2 . The method of claim 1 , wherein the divergence metric is function of at least one of a maximum failed bit count (maxFBC) and a minimum failed bit count (minFBC).

3 . The method of claim 2 , wherein the divergence metric is calculated from 2(maxFBC−minFBC)/(maxFBC+minFBC)).

4 . The method of claim 2 , wherein the partitioning the memory is based on the maxFBC being less than an error correction capability.

5 . The method of claim 4 , wherein

the first sub-group includes a first page of the data read from the memory group that is associated with the minFBC, and

the second sub-group includes a second page of the data read from the memory group that is associated with the maxFBC.

6 . The method of claim 4 , further comprising:

providing first and second queues, wherein

the first queue indexes all pages of data that have a failed bit count (FBC) less than 30% of the error correction capability, for partitioning into the first sub-group, and

the second queue indexes all pages of data that have the FBC larger than 60% of the error correction capability, for partitioning into the second sub-group.

7 . The method of claim 1 , further comprising merging together any sub-groups including at least the first and second sub-groups to form a set of two or more multiple groups which all have similar optimal read thresholds and which all have maxFBCs less than 70% of an error correction capability.

8 . The method of claim 1 , wherein

the memory group comprises one of a word line group, a page group, a block, a super block, and a memory die, and

the first and second sub-groups comprise partitions from one of the word line group, the page group, the block, the super block, and the memory die.

9 . The method of claim 1 , further comprising placing cold data blocks into a fourth sub-group.

10 . The method of claim 1 , further comprising storing optimal read thresholds for the first and second sub-groups into a single level cell page.

11 . A memory system comprising:

a memory device; and

a controller in communication with and configured to control the memory device, wherein the controller is configured to:

read data from a memory group of the memory device;

calculate a group divergence metric for read biases used to read the data from the memory group;

when the group divergence metric meets a threshold, partition the memory group into a first sub-group and a second sub-group, wherein the first sub-group has a lower error rate than the second sub-group;

read data from the first and second sub-groups;

calculate respective sub-group divergence metrics for the read biases used to read the data from the first and second sub-groups; and

when one of the sub-group divergence metrics meets the threshold, partition the one sub-group of the first and second sub-groups which met the threshold into a third sub-group and a fourth sub-group.

12 . The system of claim 11 , wherein the divergence metric is function of at least one of a maximum failed bit count (maxFBC) and a minimum failed bit count (minFBC).

13 . The system of claim 12 , wherein the divergence metric is calculated from 2(maxFBC−minFBC)/(maxFBC+minFBC)).

14 . The system of claim 12 , wherein the controller is configured to partition the memory based on the maxFBC being less than an error correction capability.

15 . The system of claim 14 , wherein

the first sub-group includes a first page of the data read from the memory group that is associated with the minFBC, and

the second sub-group includes a second page of the data read from the memory group that is associated with the maxFBC.

16 . The system of claim 15 , wherein the controller is configured to provide first and second queues, wherein

the first queue indexes all pages of data that have a failed bit count (FBC) less than 30% of the error correction capability, for partitioning into the first sub-group, and

the second queue indexes all pages of data that have the FBC larger than 60% of the error correction capability, for partitioning into the second sub-group.

17 . The system of claim 15 , wherein the controller is configured to merge together any sub-groups including at least the first and second sub-groups to form a set of two or more multiple groups which all have similar optimal read thresholds and which all have maxFBCs less than 70% of an error correction capability.

18 . The system of claim 11 , wherein

the memory group comprises one of a word line group, a page group, a block, a super block, and a memory die, and

the first and second sub-groups comprise partitions from one of the word line group, the page group, the block, the super block, and the memory die.

19 . The system of claim 18 , wherein the controller is configured to place cold data blocks into a fourth sub-group.

20 . The system of claim 19 , wherein the controller is configured to store optimal read thresholds for the first and second sub-groups into a single level cell page.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2025
From: SK HYNIX MEMORY SOLUTIONS AMERICA INC.
To: SK HYNIX INC.
Reel/Frame 070536/0574 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2025
From: ZHANG, FAN; HUANG, PENGFEI
To: SK HYNIX MEMORY SOLUTIONS AMERICA INC.
Reel/Frame 069989/0321 →
References Cited (3)
US 20080002464A1 · Maayan · 2008 [cited by examiner]
US 20110182119A1 · Strasser · 2011 [cited by examiner]
US 20130007564A1 · Bedeschi · 2013 [cited by examiner]