IP Library Granted Patent US 11,726,866
Granted Patent B2
US 11,726,866 · App. 17/885,158 · Granted Aug 15, 2023

Spare substitution in memory system

Inventor: Joseph Thomas Pawlowski (Boise, ID)
Assignee: Micron Technology, Inc.
G06F11/102G06F11/0793G06F11/1012G06F11/1044G11C16/24G11C16/26
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,726,866
App. No.
17/885,158
Granted
Aug 15, 2023
Kind
B2
Abstract

Methods, systems, and devices for spare substitution in a memory system are described. A controller may, as part of a background operation, assign a spare bit to replace a bit of a code word and save an indication of the spare bit assignment in a memory array. The code word may include a set of bits that each correspond to a respective Minimum Substitution Region (MSR) within a memory medium that retains the code word. An MSR corresponding to the bit to be replaced may include a quantity of erroneous bits relative to a threshold. The controller may, during a read operation, identify the spare bit in a first portion of the code word, determine the bit to be replaced based on accessing the memory array, and replace the bit with the spare bit concurrently with receiving a second portion of the code word.

Claims (52)

1. A method, comprising:

reading a code word from a memory medium that comprises a plurality of Minimum Substitution Regions (MSRs), the code word comprising a set of bit fields indicative of a plurality of channels associated with the memory medium, wherein each bit field of the set of bit fields corresponds to a respective MSR of the plurality of MSRs that is associated with a counter;

identifying, based at least in part on reading the code word, a set of counters associated with a channel of the plurality of channels, the set of counters each having a value equal to or greater than a first threshold;

determining that a quantity of the set of counters is equal to or greater than a second threshold based at least in part on identifying the set of counters; and

assigning a spare channel of the code word to the channel based at least in part on determining that the quantity of the set of counters is equal to or greater than the second threshold.

2. The method of claim 1 , further comprising:

identifying erroneous bits of the channel using an error control operation that is based at least in part on a size of one or more MSRs of the plurality of MSRs.

3. The method of claim 2 , further comprising:

setting, based at least in part on identifying the erroneous bits, values of counters associated with respective MSRs that each correspond to an erroneous bit, wherein identifying the set of counters associated with the channel is based at least in part on setting the values of the counters.

4. The method of claim 1 , further comprising:

writing an indication of the spare channel assignment with respect to the channel to a memory array of a port manager based at least in part on assigning the spare channel of the code word.

5. The method of claim 1 , further comprising:

setting a flag associated with a port manager based at least in part on assigning the spare channel of the code word, wherein the flag indicates a change in the spare channel assignment associated with the code word.

6. The method of claim 1 , wherein:

the first threshold corresponds to a configurable value associated with assigning a spare bit of the code word to a bit field of the set of bit fields.

7. The method of claim 1 , further comprising:

the second threshold corresponds to a quantity of bit fields within the channel, each bit field of the quantity of bit fields associated with a respective counter having a value equal to or greater than the first threshold.

8. An apparatus, comprising:

a processor; and

memory comprising instructions which, when executed by the processor, cause the apparatus to:

read a code word from a memory medium that comprises a plurality of Minimum Substitution Regions (MSRs), the code word comprising a set of bit fields indicative of a plurality of channels associated with the memory medium, wherein each bit field of the set of bit fields corresponds to a respective MSR of the plurality of MSRs that is associated with a counter;

identify, based at least in part on reading the code word, a set of counters associated with a channel of the plurality of channels, the set of counters each having a value equal to or greater than a first threshold;

determine that a quantity of the set of counters is equal to or greater than a second threshold based at least in part on identifying the set of counters; and

assign a spare channel of the code word to the channel based at least in part on determining that the quantity of the set of counters is equal to or greater than the second threshold.

9. The apparatus of claim 8 , wherein the instructions, when executed by the processor, further cause the apparatus to:

identify erroneous bits of the channel using an error control operation that is based at least in part on a size of one or more MSRs of the plurality of MSRs.

10. The apparatus of claim 9 , wherein the instructions, when executed by the processor, further cause the apparatus to:

set, based at least in part on identifying the erroneous bits, values of counters associated with respective MSRs that each correspond to an erroneous bit, wherein identifying the set of counters associated with the channel is based at least in part on setting the values of the counters.

11. The apparatus of claim 8 , wherein the instructions, when executed by the processor, further cause the apparatus to:

write an indication of the spare channel assignment with respect to the channel to a memory array of a port manager based at least in part on assigning the spare channel of the code word.

12. The apparatus of claim 8 , wherein the instructions, when executed by the processor, further cause the apparatus to:

set a flag associated with a port manager based at least in part on assigning the spare channel of the code word, wherein the flag indicates a change in the spare channel assignment associated with the code word.

13. The apparatus of claim 8 , wherein:

the first threshold corresponds to a configurable value associated with assigning a spare bit of the code word to a bit field of the set of bit fields.

14. The apparatus of claim 8 , wherein:

the second threshold corresponds to a quantity of bit fields within the channel, each bit field of the quantity of bit fields associated with a respective counter having a value equal to or greater than the first threshold.

15. A non-transitory computer-readable medium storing code, the code comprising instructions executable by a processor to:

read a code word from a memory medium that comprises a plurality of Minimum Substitution Regions (MSRs), the code word comprising a set of bit fields indicative of a plurality of channels associated with the memory medium, wherein each bit field of the set of bit fields corresponds to a respective MSR of the plurality of MSRs that is associated with a counter;

identify, based at least in part on reading the code word, a set of counters associated with a channel of the plurality of channels, the set of counters each having a value equal to or greater than a first threshold;

determine that a quantity of the set of counters is equal to or greater than a second threshold based at least in part on identifying the set of counters; and

assign a spare channel of the code word to the channel based at least in part on determining that the quantity of the set of counters is equal to or greater than the second threshold.

16. The non-transitory computer-readable medium of claim 15 , wherein the instructions are further executable by the processor to:

identify erroneous bits of the channel using an error control operation that is based at least in part on a size of one or more MSRs of the plurality of MSRs.

17. The non-transitory computer-readable medium of claim 16 , wherein the instructions are further executable by the processor to:

set, based at least in part on identifying the erroneous bits, values of counters associated with respective MSRs that each correspond to an erroneous bit, wherein identifying the set of counters associated with the channel is based at least in part on setting the values of the counters.

18. The non-transitory computer-readable medium of claim 15 , wherein the instructions are further executable by the processor to:

write an indication of the spare channel assignment with respect to the channel to a memory array of a port manager based at least in part on assigning the spare channel of the code word.

19. The non-transitory computer-readable medium of claim 15 , wherein the instructions are further executable by the processor to:

set a flag associated with a port manager based at least in part on assigning the spare channel of the code word, wherein the flag indicates a change in the spare channel assignment associated with the code word.

20. The non-transitory computer-readable medium of claim 15 , wherein:

the first threshold corresponds to a configurable value associated with assigning a spare bit of the code word to a bit field of the set of bit fields, and

the second threshold corresponds to a quantity of bit fields within the channel, each bit field of the quantity of bit fields associated with a respective counter having a value equal to or greater than the first threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2024
From: MICRON TECHNOLOGY, INC.
To: LODESTAR LICENSING GROUP LLC
Reel/Frame 067141/0619 →
Continuity (4)
Division 17211280 · Mar 24, 2021
Division 16516916 · Jul 19, 2019
Provisional Application 62702808 · Jul 24, 2018
Related Publication 20230037229A1 · Feb 2, 2023