IP Library Granted Patent US 12,572,466
Granted Patent B1
US 12,572,466 · App. 18/827,981 · Granted Mar 10, 2026

Structures and methods for accurate segmenting of bad blocks of non-volatile memory

Inventors: Yanli Fu (Shanghai, CN); Liang Li (Shanghai, CN); Sumner Xia (Shanghai, CN)
Assignee: Sandisk Technologies, Inc.
G06F12/0246
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,572,466
App. No.
18/827,981
Granted
Mar 10, 2026
Kind
B1
Abstract

To increase life times of non-volatile memory devices, the bad block information for a device includes not just whether a device is considered good or bad, but, for bad blocks data on the category of the block's failure. When the number of bad blocks exceeds a threshold level, blocks formerly marked bad can, based on their failure category, have their status updated to good for subsequent usage. This information can also be used during factory testing to update the status of blocks initially marked as bad based on failure category.

Claims (54)

1 . A non-volatile memory device, comprising:

a control circuit configured to connect to a plurality of blocks of non-volatile memory cells, the control circuit configured to:

maintain, for each block, corresponding bad block information, including a first bit indicating whether the block is good or bad and a plurality of additional bits indicating, for indicated bad blocks, one of a plurality of failure categories comprising different degrees of failure for a category of failure, including different numbers of bits that can be ignored during error correction of data read from the corresponding block;

update the first bit to indicate that the corresponding block is bad in response to determining the corresponding block to be bad during user operation of the memory device;

determine whether a number of blocks having a first bit indicating that the corresponding block is bad exceeds a threshold value;

in response to the number of blocks to determining that the number of blocks having a first bit indicating that the corresponding block is bad exceeds a threshold value, reset the bad block information for blocks whose corresponding bad block information has a first bit indicating that the block is bad and a first failure category to have a first bit indicating that the corresponding block is good, including resetting the failure category to allow for a larger number of bits to be ignored; and

continue user operation of the memory device using the reset bad block information.

2 . The non-volatile memory device of claim 1 , wherein at least a portion of the control circuit is formed on a control die, the non-volatile memory device further comprising:

a memory die including the plurality of blocks of non-volatile memory cells, the memory die separate from and bonded to the control die.

3 . The non-volatile memory device of claim 1 , wherein the control circuit if further configured to:

in response to the number of blocks to determining that the number of blocks having a first bit indicating that the corresponding block exceeds a threshold value, reset the failure category of the bad block information for blocks whose corresponding bad block information has the first bit indicating that the block is bad and of the first failure category.

4 . The non-volatile memory device of claim 1 , wherein the control circuit if further configured to:

in response to the number of blocks to determining that the number of blocks having a first bit indicating that the corresponding block exceeds a threshold value, determine whether the block has undergone a number of program-erase cycles larger that a pre-defined value, wherein resetting the bad block information is further in response the block's number of program erase cycles being larger than the pre-defined value.

5 . The non-volatile memory device of claim 1 , wherein the bad block information includes bad block information determined during device testing prior to user operation of the memory device.

6 . The non-volatile memory device of claim 1 , wherein the failure categories include different categories of failure.

7 . The non-volatile memory device of claim 1 , wherein, during continued operation of the memory device using the reset bad block information, the control circuit is further configured to:

update the first bit of the reset bad block information to indicate that the corresponding block is bad in response to determining the corresponding block to be bad during user operation of the memory device;

determine whether the number of blocks having a first bit of the reset bad block information indicating that the corresponding block is bad exceeds a threshold value; and

in response to the number of blocks to determining that the number of blocks having a first bit of the reset bad block information indicating that the corresponding block is bad exceeds a threshold value, further reset the bad block information for blocks whose corresponding reset bad block information has a first bit indicating that the block is bad and a first failure category to have a first bit indicating that the corresponding block is good.

8 . The non-volatile memory device of claim 1 , wherein to maintain the bad block information, the control circuit is further configured to store a copy of the bad block information in one of the blocks of non-volatile memory cells.

9 . The non-volatile memory device of claim 1 , further comprising:

a memory array including the blocks of non-volatile memory cells, wherein the memory array has a three-dimensional NAND structure and the blocks are erase blocks.

10 . The method, comprising:

receiving a non-volatile memory die comprising a plurality of blocks of non-volatile memory cells;

for each block, performing a sequence of a plurality of tests;

for each of the plurality of tests for each block, determining whether the block passed the test;

storing in a first of the blocks bad block information for each the plurality of blocks, the bad block information for each block including a first bit indicating whether the block failed any of the plurality of tests and a plurality of additionally bits indicating, for blocks that failed any of the tests, which tests the block failed; and

subsequent to storing in a first block the bad block information for each the plurality of blocks, providing the non-volatile memory die to a user; and

during user operation of the non-volatile memory die:

updating the first bit to indicate that the corresponding block is bad in response to determining the corresponding block to be bad during user operation;

determining whether the number of blocks having a first bit indicating that the corresponding block is bad exceeds a threshold value; and

in response to the number of blocks to determining that the number of blocks having a first bit indicating that the corresponding block is bad exceeds a threshold value, resetting the bad block information for blocks whose corresponding bad block information has a first bit indicating that the block is bad and a first failure category to have a first bit indicating that the corresponding block is good.

11 . The method of claim 10 , further comprising:

for each block, subsequent to determining for each of the plurality of tests whether the block passed the test, in response to the block having failed a specified one of the tests, resetting the blocks bad block information to indicate that the block passed the specified test.

12 . The method of claim 10 , wherein receiving the non-volatile memory die includes fabricating the non-volatile memory die.

13 . The method of claim 10 , wherein one or more of the tests are a die sort process.

14 . A method, comprising:

receiving a memory device having a plurality of blocks of non-volatile memory cells, the memory device having for each block corresponding bad block information as determined in a test process, the bad block information including a first bit indicating whether the block is good or bad and a plurality of additional bits indicating, for indicated bad blocks, indicating one of a plurality of failure categories;

updating the first bit to indicate that the corresponding block is bad in response to determining the corresponding block to be bad during user operation of the memory device;

determining whether a number of blocks having a first bit indicating that the corresponding block is bad exceeds a threshold value;

in response to the number of blocks to determining that the number of blocks having a first bit indicating that the corresponding block is bad exceeds a threshold value, resetting the bad block information for blocks whose corresponding bad block information has a first bit indicating that the block is bad and a first failure category to have a first bit indicating that the corresponding block is good; and

continuing user operation of the memory device using the reset bad block information includes:

updating the first bit of the reset bad block information to indicate that the corresponding block is bad in response to determining the corresponding block to be bad during user operation of the memory device;

determining whether a number of blocks having a first bit of the reset bad block information indicating that the corresponding block is bad exceeds a threshold value; and

in response to the number of blocks to determining that the number of blocks having a first bit of the reset bad block information indicating that the corresponding block is bad exceeds a threshold value, further resetting the bad block information for blocks whose corresponding reset bad block information has a first bit indicating that the block is bad and a first failure category to have a first bit indicating that the corresponding block is good.

15 . The method of claim 14 , further comprising:

in response to the number of blocks to determining that the number of blocks having a first bit indicating that the corresponding block exceeds a threshold value, resetting failure category of the bad block information for blocks whose corresponding bad block information has the first bit indicating that the block is bad and of the first failure category.

16 . The method of claim 14 , wherein continuing user operation of the memory device using the reset bad block information includes further comprises:

in response to the number of blocks to determining that the number of blocks having a first bit indicating that the corresponding block exceeds a threshold value, determining whether the block has undergone a number of program-erase cycles larger that a pre-defined value, wherein resetting the bad block information is further in response the block's number of program erase cycles being larger than the pre-defined value.

17 . The method of claim 14 , wherein the bad block information includes bad block information determined during device testing prior to user operation of the memory device.

18 . The method of claim 14 , wherein the failure categories include different categories of failure.

19 . The method of claim 14 , further comprising:

storing a copy of the bad block information in one of the blocks of non-volatile memory cells.

20 . The method of claim 14 , wherein the failure categories include different degrees of failure for a category of failure.

Assignments (4)
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
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 (SUPPLEMENTAL) Recorded Nov 14, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 069411/0486 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2024
From: FU, YANLI; LI, LIANG; XIA, SUMNER
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 068532/0040 →
References Cited (23)
US 5930068A · Gregg · 1999 [cited by examiner]
US 8526252B2 · Li et al. · 2013 [cited by applicant]
US 9235470B2 · Bhalerao · 2016 [cited by examiner]
US 9997258B2 · Shepard et al. · 2018 [cited by applicant]
US 10223018B2 · Gunnam et al. · 2019 [cited by applicant]
US 10223216B1 · Dubeyko et al. · 2019 [cited by applicant]
US 10346266B2 · Dubeyko et al. · 2019 [cited by applicant]
US 11397635B2 · Lee et al. · 2022 [cited by applicant]
US 20090172482A1 · Wang et al. · 2009 [cited by applicant]
US 20090327822A1 · Kameda et al. · 2009 [cited by applicant]
US 20100002512A1 · Cornwell et al. · 2010 [cited by applicant]
US 20120173920A1 · Park · 2012 [cited by applicant]
US 20130286742A1 · Komine et al. · 2013 [cited by applicant]
US 20150117099A1 · Raghu et al. · 2015 [cited by applicant]
US 20150134885A1 · Yeung et al. · 2015 [cited by applicant]
US 20160019111A1 · Kochar et al. · 2016 [cited by applicant]
US 20180286485A1 · Takizawa · 2018 [cited by examiner]
US 20190042112A1 · Gangadhar et al. · 2019 [cited by applicant]
US 20190237153A1 · Hong et al. · 2019 [cited by applicant]
US 20210173734A1 · Lee · 2021 [cited by examiner]
US 20220138043A1 · Hu · 2022 [cited by examiner]
US 20230168811A1 · Okada · 2023 [cited by examiner]
International Search Report & The Written Opinion of the International Searching Authority dated Aug. 18, 2025, International Application No. PCT/US2025/026545. [cited by applicant]