Back to results
US 9,792,175 B2Granted
Bad column management in nonvolatile memory
AssigneeSanDisk Technologies LLC
InventorsSahil Sharma, Abhijeet Manohar, Mrinal Kochar, Yong Huang, Derek McAuley, Mikhail Palityka, Ivan Baran, Aaron Lee
Life of this patent
Estimating the term…
Abstract
When the number of bad columns in a memory or plane is less than a threshold number then a first Error Correction Code (ECC) scheme encodes user data in first pages of a first size. If the number of bad columns is greater than the threshold number then a second ECC scheme encodes the user data in second pages of a second size that is smaller than the first size.
Claims20
A method of operating a nonvolatile memory comprising:
- detecting a number of bad columns in the nonvolatile memory;
- comparing the number of bad columns detected by the detecting with a threshold number;
- if the number of bad columns is less than the threshold number then applying a first Error Correction Code (ECC) scheme to user data to be stored in the nonvolatile memory, the first ECC scheme encoding user data in first pages of a first size;
- and if the number of bad columns is greater than the threshold number then applying a second ECC scheme to user data stored in the nonvolatile memory, the second ECC scheme encoding user data in second pages of a second size that is smaller than the first size;
- wherein encoding according to the first ECC scheme adds a number of parity bytes per first page of user data and encoding according to the second ECC scheme adds the number of parity bytes per second page of user data.
2 more elements
A nonvolatile memory system comprising:
- an array of nonvolatile memory cells, wherein the array of nonvolatile memory cells includes a plurality of individually erasable blocks, the plurality of individually erasable blocks including a first block of individually erasable memory cells and a second block of individually erasable memory cells, and wherein the first block has a first number of bad columns of memory cells and the second block has a second number of bad columns of memory cells, the second number being greater than the first number;
- and a configurable Error Correction Code (ECC) encoder/decoder that has at least a first mode and a second mode, the first mode encoding pages of a first size prior to storage in the array of nonvolatile memory cells and the second mode encoding pages of a second size prior to storage in the array of nonvolatile memory cells, the second size being smaller than the first size, wherein the encoder/decoder is configured to encode pages of user data in the first mode prior to storage in the first block and encode pages of user data in the second mode prior to storage in the second block;
- wherein encoding according to the first ECC scheme adds a number of parity bytes per first page of user data and encoding according to the second ECC scheme adds the number of parity bytes per second page of user data.
A method of operating a nonvolatile memory comprising:
- testing columns of the nonvolatile memory to detect bad columns;
- replacing bad columns up to a maximum replaceable number;
- comparing a number of unreplaced bad columns detected by the testing with a threshold number;
- if the number of unreplaced bad columns is less than the threshold number:
- applying a first Error Correction Code (ECC) scheme to user data to be stored in the nonvolatile memory, the first ECC scheme encoding data in pages of a first size;
- storing n encoded pages of the first size per word line;
- if the number of unreplaced bad columns is greater than the threshold number:
- applying a second ECC scheme to user data to be stored in the nonvolatile memory, the second ECC scheme encoding data in pages of a second size;
- and storing n encoded pages of the second size per word line;
- wherein encoding according to the first ECC scheme adds a number of parity bytes per first page of user data and encoding according to the second ECC scheme adds the number of parity bytes per second page of user data.
7 more elements
Dependencies are inferred from the claim text.