IP Library Granted Patent US 10,312,944
Granted Patent B2
US 10,312,944 · App. 15/461,623 · Granted Jun 4, 2019

Error correction code (ECC) operations in memory for providing redundant error correction

Inventors: Patrick R. Khayat (San Diego, CA); Sivagnanam Parthasarathy (Carlsbad, CA); Mustafa N. Kaynak (San Diego, CA)
Assignee: Micron Technology, Inc.
H03M13/2948H03M13/2906H03M13/2918H03M13/2927H03M13/2945H03M13/152H03M13/2909
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,312,944
App. No.
15/461,623
Granted
Jun 4, 2019
Kind
B2
Abstract

Apparatuses and methods for performing an error correction code (ECC) operation are provided. One example method can include encoding data by including parity data for a number of cross-over bits, wherein the number of cross-over bits are bits located at intersections of column codewords and row codewords.

Claims (53)

1. A method for performing an error correction code (ECC) operation, comprising:

writing data to a memory device, wherein writing the data includes encoding the data by including parity data for a number of cross-over bits, wherein the number of cross-over bits are bits located at intersections of column codewords and row codewords, wherein the parity data for the number of cross-over bits is a result of an XOR operation on the bits located at the intersections of intersections of column codewords and row codewords, and wherein the column codewords and row codewords are encoded with block-wise concatenated product codes;

reading the data from the memory device, wherein reading the data includes correcting errors in the data by performing a decoding operation on the data using the parity data for the number of cross-over bits and computing a cross-over bits parity syndrome; and

performing an XOR operation on the cross-over bits parity syndrome and the number of cross-over bits in response to a syndrome of the decoding operation being non-zero and errors associated with an 11 stall pattern.

2. The method of claim 1 , further including performing an XOR operation on each of the number of cross-over bits located at the intersections of column codewords and row codewords to create the parity data for the number of cross-over bits.

3. The method of claim 1 , further including storing the parity data for the number of cross over bits in an array of memory cells.

4. The method of claim 1 , further including encoding data by creating block-wise concatenated codewords.

5. The method of claim 1 , further including encoding the data with a first encoder, creating the parity data for the number of cross-over bits that were created while encoding data with the first encoder, and encoding the data with a second encoder.

6. A method performing an error correction code (ECC) operation, comprising:

writing data to a memory device, wherein writing the data includes:

encoding the data with a first encoder;

creating parity data for cross-over bits created by the first encoder, wherein the cross-over bits are bits located at intersections of block-wise concatenated column codewords and row codewords;

encoding the data with a second encoder; and

reading the data from the memory device, wherein reading the data includes correcting errors in the data by performing a decoding operation on the data using the parity data for cross-over bits and computing a cross-over bits parity syndrome; and

performing an XOR operation on the cross-over bits parity syndrome and the cross-over bits in response to the cross-over bits parity syndrome being non-zero and errors associated with an 11 stall pattern.

7. The method of claim 6 , further including correcting an error in the data using the parity data for the cross-over bits, wherein the error in the data is located at a particular intersection of column codewords and row codewords.

8. The method of claim 6 , wherein the first encoder and the second encoder are BCH encoders.

9. The method of claim 6 , wherein the method includes storing the encoded data in an array of memory cells.

10. The method of claim 9 , wherein storing the encoded data includes storing codewords that include user data, column codeword parity data, row codeword parity data, and first encoder parity data.

11. The method of claim 6 , wherein the method includes storing the parity data for cross-over bits in a portion of the codewords stored in the array.

12. The method of claim 6 , wherein the method includes storing the parity data for cross-over bits in the portion of codewords that have less first encoder parity data than other portions of codewords.

13. A method performing an error correction code (ECC) operation, comprising:

reading data from a memory device, wherein reading the data includes correcting an error in the data by performing a decoding operation on the data using cross-over bits parity data based on cross-over bits and computing a cross-over bits parity syndrome, wherein the error in the data is located at a particular intersection of column codewords and row codewords; and

performing an XOR operation on the cross-over bits parity syndrome and the cross-over bits in response to a syndrome of the decoding operation being non-zero and errors associated with an 11 stall pattern.

14. The method of claim 13 , wherein the method includes computing the cross-over bits parity syndrome as the data is read from an array of memory cells.

15. The method of claim 14 , wherein the method includes updating the cross-over bits parity syndrome based on errors that are corrected during an iterative product code decoding operation.

16. The method of claim 15 , wherein the method includes determining that a particular column codeword and a particular row codeword each have non-zero syndromes during the iterative product code decoding operation.

17. The method of claim 16 , wherein the method includes updating the cross-over bits data associated with an intersection of the particular column codeword and the particular row codeword based on a number of non-zero bits in the cross-over bits parity syndrome.

18. An apparatus, comprising:

a memory device;

a controller coupled to the memory device configured to:

write data to a memory device, wherein the controller is configured to:

encode data with a first encoder;

create cross-over bits parity data based on cross-over bits located at intersections of column codewords and row codewords created with the first encoder; and

encode the data with a second encoder to create block-wise concatenated column codewords and row codewords; and

read the data from the memory device, wherein the controller is configured to correct errors in the data by performing a decoding operation on the data using the cross-over bits parity data and compute a cross-over bits parity syndrome as the data is read from the memory device; and

perform an XOR operation on the cross-over bits parity syndrome and the cross-over bits in response to a syndrome of the decoding operation being non-zero and errors associated with an 11 stall pattern.

19. The apparatus of claim 18 , wherein cross-over bits parity data is created by performing an XOR operation on each of the cross-over bits located at the intersections of the block-wise concatenated column codewords and row codewords.

20. The apparatus of claim 18 , wherein first encoder and the second encoder are BCH encoders.

21. The apparatus of claim 18 , wherein the encoded data includes user data, column codeword parity data, row codeword parity data, first encoder parity data, and cross-over parity data.

22. The apparatus of claim 18 , wherein the controller is configured to correct an error in the data using the cross-over bits parity data, wherein the error in the data is located at a particular intersection of the block-wise concatenated column codewords and row codewords.

23. The apparatus of claim 18 , wherein the controller is configured to correct an error in the data using the cross-over bits parity data based on a particular column codeword and a particular row codeword having a non-zero syndrome during an iterative product code decoding operation.

24. An apparatus, comprising:

a memory device;

a controller coupled to the memory device configured to:

read data from the memory device to correct an error in the data by performing a decoding operation using cross-over bits parity data based on cross-over bits and computing a cross-over bits parity syndrome, wherein the error in the data is located at a particular intersection of column codewords and row codewords; and

perform an XOR operation on the cross-over bits parity syndrome and the cross over-bits in response to the cross-over bits parity syndrome being non-zero and errors being associated with an 11 stall pattern.

25. The apparatus of claim 24 , wherein the controller is configured to compute the cross-over bits parity syndrome as the data is read from an array of memory cells.

26. The apparatus of claim 24 , wherein the controller is configured to update the cross-over bits based on errors that are corrected during an iterative product code decoding operation.

27. The apparatus of claim 24 , wherein the controller is configured to determine that a particular column codeword and a particular row codeword has a non-zero syndrome during the iterative product code decoding operation.

28. The apparatus of claim 27 , wherein the controller is configured to update the cross-over parity syndrome based on errors that are corrected during the iterative product code decoding operation in response to determining that the particular column codeword and the particular row codeword has the non-zero syndrome.

29. The apparatus of claim 28 , wherein the controller is configured to update the cross-over bits data associated with an intersection of the particular column codeword and the particular row codeword based on a number of non-zero bits in a cross-over bits parity syndrome.

30. The apparatus of claim 29 , wherein the controller is configured to perform an XOR operation on the cross-over bits parity syndrome and the cross-over bits data associated with the intersection of the particular column codeword and the particular row codeword in response to a syndrome of the decoding operation being non-zero.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050702/0451 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
SUPPLEMENT NO. 4 TO PATENT SECURITY AGREEMENT Recorded May 4, 2017
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 042405/0909 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2017
From: KHAYAT, PATRICK R.; PARTHASARATHY, SIVAGNANAM; KAYNAK, MUSTAFA N.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 041605/0895 →
Continuity (1)
Related Publication 20180269904A1 · Sep 20, 2018
Cited By (1)
US 12,487,882