IP Library Granted Patent US 10,942,809
Granted Patent B2
US 10,942,809 · App. 16/228,632 · Granted Mar 9, 2021

Changing of error correction codes based on the wear of a memory sub-system

Inventors: Tingjun Xie (Milpitas, CA); Ying Yu Tai (Mountain View, CA); Jiangli Zhu (San Jose, CA)
Assignee: Micron Technology, Inc.
G06F11/1096G06F3/0614G06F3/0629G06F3/0673
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 10,942,809
App. No.
16/228,632
Granted
Mar 9, 2021
Kind
B2
Abstract

Data to be stored at a memory sub-system can be received. A usage characteristic of the memory sub-system can be determined. The received data can be encoded to generate a codeword with a number of parity bits. A portion of the number of parity bits of the generated codeword can be removed based on the usage characteristic of the memory sub-system. Furthermore, the codeword can be stored without the removed portion of the number of parity bits.

Claims (61)

1. A method comprising:

receiving data at a memory sub-system;

determining a usage characteristic indicative of at least one of an operating parameter, an operating lifetime, or an operating condition of the memory sub-system;

encoding the received data to generate a codeword with a number of parity bits;

removing, by a processing device, a portion of the number of parity bits of the generated codeword based on the usage characteristic of the memory sub-system; and

storing the codeword without the removed portion of the number of parity bits.

2. The method of claim 1 , wherein the encoding of the received data to generate the codeword with the number of parity bits is based on a polar encoder.

3. The method of claim 1 , wherein the usage characteristic corresponds to a write count of the memory sub-system, and wherein removing the portion of the number of the parity bits comprises:

determining whether the write count of the memory sub-system satisfies a threshold condition associated with a threshold number of write counts; and

removing a decreased portion of the number of parity bits of the generated codeword in response to the write count of the memory sub-system satisfying the threshold condition associated with the threshold number of write counts and removing an increased portion of the number of parity bits of the generated codeword in response to the write count of the memory sub-system not satisfying the threshold condition associated with the threshold number of write counts, and wherein the decreased portion includes fewer bits than the increased portion.

4. The method of claim 3 , wherein the removing of the decreased portion of the number of parity bits corresponds to the codeword being stored with more parity bits than the codeword being stored without the increased portion of the number of parity bits.

5. The method of claim 1 , wherein the usage characteristic corresponds to an operating life of the memory sub-system, and wherein removing the portion of the number of the parity bits comprises:

determining whether the operating life of the memory sub-system satisfies a threshold condition;

removing a decreased portion of the number of parity bits of the generated codeword in response to the operating life of the memory sub-system satisfying the threshold condition and removing an increased portion of the number of parity bits of the generated codeword in response to the operating life of the memory sub-system not satisfying the threshold condition, and wherein the decreased portion includes fewer bits than the increased portion.

6. The method of claim 1 , further comprising:

receiving a request from a host system for the data;

retrieving the codeword stored without the removed portion of the number of parity bits;

reconstructing the removed portion of the number of parity bits; and

decoding the codeword with the reconstructed parity bits.

7. The method of claim 6 , wherein the decoding of the codeword with the reconstructed parity bits is based on a polar decoder.

8. A system comprising:

a memory component; and

a processing device, operatively coupled with the memory component, to:

receive data to be stored at the system;

encode the received data to generate a codeword with a number of parity bits;

remove a portion of the number of parity bits from the codeword;

store the codeword without the portion of the number of the parity bits;

determine that a condition associated with the system has changed;

receive subsequent data to be stored at the system;

encode the subsequent data to generate another codeword with the number of parity bits;

remove a decreased portion of the number of the parity bits from the another codeword wherein the decreased portion of the number of parity bits corresponds to fewer parity bits being removed than the portion of the number of the parity bits of the stored codeword; and

store the another codeword without the decreased portion of the number of the parity bits.

9. The system of claim 8 , wherein the encoding of the received data to generate the codeword and the encoding of the subsequent data to generate the another codeword is based on a polar encoder.

10. The system of claim 8 , wherein the condition of the memory sub-system changing corresponds to a write count of the memory sub-system satisfying a threshold condition associated with a threshold number of write counts or a bit error condition satisfying another threshold condition associated with a threshold number of bit errors.

11. The system of claim 10 , wherein the subsequent codeword is stored with additional parity bits of the number of the parity bits in response to the write count of the memory sub-system increasing.

12. The system of claim 8 , wherein the condition of the memory sub-system changing corresponds to an operating life of the memory sub-system satisfying a threshold operating life of the memory sub-system, and wherein the subsequent codeword is stored with additional parity bits of the number of the parity bits in response to the operating life of the memory sub-system increasing.

13. The system of claim 8 , wherein the processing device is further to:

receive a request from a host system for the data;

retrieve the codeword stored without the portion of the number of the parity bits;

reconstruct the removed portion of the number of the parity; and

decoding, by a polar decoder, the codeword with the reconstructed parity bits.

14. A non-transitory computer readable medium comprising instructions, which when executed by a processing device, cause the processing device to perform operations comprising:

receiving data to be stored at a memory sub-system;

determining a usage characteristic indicative of at least one of an operating parameter, an operating lifetime, or an operating condition of the memory sub-system;

encoding the received data to generate a codeword with a number of parity bits;

removing a portion of the number of parity bits of the generated codeword based on the usage characteristic of the memory sub-system; and

storing the codeword without the removed portion of the number of parity bits.

15. The non-transitory computer readable medium of claim 14 , wherein the encoding of the received data to generate the codeword with the number of parity bits is based on a polar encoder.

16. The non-transitory computer readable medium of claim 14 , wherein the usage characteristic corresponds to a write count of the memory sub-system, and wherein to remove the portion of the number of the parity bits, the operations further comprise:

determining whether the write count of the memory sub-system satisfies a threshold condition associated with a threshold number of write counts; and

removing a decreased portion of the number of parity bits of the generated codeword in response to the operating life of the memory sub-system satisfying the threshold condition associated with the threshold number of write counts and removing an increased portion of the number of parity bits of the generated codeword in response to the operating life of the memory sub-system not satisfying the threshold condition associated with the threshold number of write counts, and wherein the decreased portion includes fewer bits than the increased portion.

17. The non-transitory computer readable medium of claim 16 , wherein the removing of the decreased portion of the number of parity bits corresponds to the codeword being stored with more parity bits than the codeword being stored without the increased portion of the number of parity bits.

18. The non-transitory computer readable medium of claim 14 , wherein the usage characteristic corresponds to an operating life of the memory sub-system, and wherein to remove the portion of the number of the parity bits, the operations further comprise:

determining whether the operating life of the memory sub-system satisfies a threshold condition;

removing an increased portion of the number of parity bits of the generated codeword in response to the operating life of the memory sub-system satisfying the threshold condition and removing a decreased portion of the number of parity bits of the generated codeword in response to the operating life of the memory sub-system not satisfying the threshold condition, and wherein the decreased portion includes fewer bits than the increased portion.

19. The non-transitory computer readable medium of claim 14 , wherein the operations further comprise:

receiving a request from a host system for the data;

retrieving the codeword stored without the removed portion of the number of parity bits;

reconstructing the removed portion of the number of parity bits; and

decoding the codeword with the reconstructed parity bits.

20. The non-transitory computer readable medium of claim 19 , wherein the decoding of the codeword with the reconstructed parity bits is based on a polar decoder.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Nov 15, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 051026/0568 →
RELEASE OF SECURITY INTEREST Recorded Oct 14, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050718/0764 →
SUPPLEMENT NO. 11 TO PATENT SECURITY AGREEMENT Recorded Jan 16, 2019
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 048082/0860 →
SUPPLEMENT NO. 2 TO PATENT SECURITY AGREEMENT Recorded Jan 16, 2019
From: MICRON TECHNOLOGY, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 048082/0889 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2018
From: XIE, TINGJUN; TAI, YING YU; ZHU, JIANGLI
To: MICRON TECHNOLOGY, INC.
Reel/Frame 047837/0264 →