IP Library Granted Patent US 8,812,934
Granted Patent B2
US 8,812,934 · App. 13/712,956 · Granted Aug 19, 2014

Techniques for storing bits in memory cells having stuck-at faults

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 8,812,934
App. No.
13/712,956
Granted
Aug 19, 2014
Kind
B2
Abstract

A data storage system includes a memory circuit comprising memory cells and a control circuit. The control circuit generates a first set of redundant bits indicating bit positions of the memory cells having stuck-at faults in response to a first write operation if a first rate of the stuck-at faults in the memory cells is greater than a first threshold. The control circuit is operable to encode data bits to generate encoded data bits and a second set of redundant bits that indicate a transformation performed on the data bits to generate the encoded data bits in response to a second write operation if a second rate of stuck-at faults in the memory cells is greater than a second threshold. The encoded data bits stored in the memory cells having the stuck-at faults match digital values of corresponding ones of the stuck-at faults.

Claims (37)

1. A data storage system comprising:

a memory circuit comprising memory cells; and

a control circuit to generate a first set of redundant bits indicating bit positions of the memory cells having stuck-at faults in response to a first write operation if a first rate of the stuck-at faults in the memory cells is greater than a first threshold, wherein first data bits are stored in the memory cells during the first write operation,

wherein the control circuit encodes second data bits to generate first encoded data bits and a second set of redundant bits that indicate a transformation performed on the second data bits to generate the first encoded data bits in response to a second write operation if a second rate of stuck-at faults in the memory cells is greater than a second threshold, wherein the first encoded data bits are stored in the memory cells during the second write operation, and wherein the first encoded data bits stored in the memory cells having the stuck-at faults match digital values of corresponding ones of the stuck-at faults.

2. The data storage system of claim 1 , wherein the control circuit generates a third set of redundant bits indicating which of the first data bits stored in the memory cells having stuck-at faults match digital values of corresponding ones of the stuck-at faults in response to the first write operation.

3. The data storage system of claim 2 , wherein the control circuit encodes third data bits to generate second encoded data bits and a fourth set of redundant bits that indicate which of the second encoded data bits were inverted relative to corresponding ones of the third data bits in response to a third write operation if a third rate of stuck-at faults in the memory cells is greater than a third threshold, wherein the second encoded data bits are stored in the memory cells during the third write operation, and wherein the second encoded data bits stored in the memory cells having stuck-at faults match digital values of corresponding ones of the stuck-at faults.

4. The data storage system of claim 1 , wherein the control circuit does not generate redundant bits to protect against errors caused by stuck-at faults in the memory cells in response to a third write operation if a third rate of stuck-at faults in the memory cells is less than the first threshold.

5. The data storage system of claim 1 , wherein the control circuit determines the first and the second rates of stuck-at faults in the memory cells by providing a first set of test bits for storage in the memory cells, performing a read verification of the first set of test bits, inverting the first set of test bits to generate a second set of test bits, providing the second set of test bits for storage in the memory cells, and performing a read verification of the second set of test bits.

6. The data storage system of claim 1 , wherein the memory circuit is a phase change memory circuit.

7. The data storage system of claim 2 , wherein the control circuit decodes bits read from the memory cells using the first and the third sets of redundant bits to correct errors in the bits read from the memory cells that are caused by the first rate of the stuck-at faults, and wherein the control circuit decodes the first encoded data bits read from the memory cells using the second set of redundant bits to regenerate the second data bits.

8. The data storage system of claim 1 , wherein the second set of redundant bits indicate which of the first encoded data bits stored in the memory cells having stuck-at faults in the second write operation were inverted relative to corresponding ones of the second data bits, and wherein the second set of redundant bits indicate bit positions of the stuck-at faults in the memory cells.

9. A data storage system comprising:

a memory circuit comprising memory cells, wherein the memory circuit stores first data bits in the memory cells during a first write operation; and

a control circuit to generate a first set of redundant bits indicating bit positions of the memory cells having stuck-at faults and a second set of redundant bits indicating which of the first data bits to be stored in the memory cells having stuck-at faults have different digital values than corresponding ones of the stuck-at faults in response to the first write operation if a first rate of the stuck-at faults in the memory cells is greater than a first threshold,

wherein the control circuit encodes second data bits to generate first encoded data bits and a third set of redundant bits that indicate a transformation performed on the second data bits to generate the first encoded data bits in response to a second write operation if a second rate of stuck-at faults in the memory cells is greater than a second threshold, wherein the memory circuit stores the first encoded data bits in the memory cells during the second write operation, and wherein the first encoded data bits stored in the memory cells having the stuck-at faults match digital values of corresponding ones of the stuck-at faults.

10. The data storage system of claim 9 , wherein the control circuit encodes third data bits to generate second encoded data bits and a fourth set of redundant bits that indicate which of the second encoded data bits were inverted relative to corresponding ones of the third data bits in response to a third write operation if a third rate of stuck-at faults in the memory cells is greater than a third threshold, wherein the memory circuit stores the second encoded data bits in the memory cells during the third write operation, and wherein the second encoded data bits stored in the memory cells having the stuck-at faults match digital values of corresponding ones of the stuck-at faults.

11. The data storage system of claim 10 , wherein the control circuit determines bit positions of the stuck-at faults in the memory cells in response to each read operation to access the second encoded data bits from the memory cells by providing a first set of test bits for storage in the memory cells, performing a read verification of the first set of test bits, inverting the first set of test bits to generate a second set of test bits, providing the second set of test bits for storage in the memory cells, and performing a read verification of the second set of test bits.

12. The data storage system of claim 10 , wherein the third threshold is greater than the second threshold, and wherein the second threshold is greater than the first threshold.

13. The data storage system of claim 9 , wherein the control circuit generates the first set of redundant bits using a combinatorial number system.

14. The data storage system of claim 9 , wherein the third set of redundant bits indicate which of the first encoded data bits stored in the memory cells having stuck-at faults in the second write operation were inverted relative to corresponding ones of the second data bits.

15. The data storage system of claim 9 , wherein the control circuit does not generate redundant bits to protect against errors caused by stuck-at faults in the memory cells in response to a third write operation if a third rate of stuck-at faults in the memory cells is less than the first threshold.

16. A method comprising:

receiving first data bits at a control circuit;

generating a first set of redundant bits indicating bit positions of memory cells in a memory circuit having stuck-at faults in response to a first write operation using the control circuit if a first rate of stuck-at faults in the memory cells is greater than a first threshold, wherein the first data bits are stored in the memory cells during the first write operation;

receiving second data bits at the control circuit; and

encoding the second data bits to generate first encoded data bits and a second set of redundant bits that indicate a transformation performed on the second data bits to generate the first encoded data bits in response to a second write operation using the control circuit if a second rate of stuck-at faults in the memory cells is greater than a second threshold, wherein the first encoded data bits are stored in the memory cells during the second write operation, and wherein the first encoded data bits stored in the memory cells having the stuck-at faults match digital values of corresponding ones of the stuck-at faults.

17. The method of claim 16 , further comprising:

generating a third set of redundant bits indicating which of the first data bits stored in the memory cells having stuck-at faults match digital values of corresponding ones of the stuck-at faults in response to the first write operation using the control circuit.

18. The method of claim 17 further comprising:

receiving third data bits at the control circuit; and

encoding the third data bits to generate second encoded data bits and a fourth set of redundant bits that indicate which of the second encoded data bits were inverted relative to corresponding ones of the third data bits in response to a third write operation using the control circuit if a third rate of stuck-at faults in the memory cells is greater than a third threshold, wherein the second encoded data bits are stored in the memory cells during the third write operation, and wherein the second encoded data bits stored in the memory cells having stuck-at faults match digital values of corresponding ones of the stuck-at faults.

19. The method of claim 18 further comprising:

determining bit positions of the stuck-at faults in the memory cells in response to each read operation to access the second encoded data bits from the memory cells by providing a first set of test bits for storage in the memory cells, performing a read verification of the first set of test bits, inverting the first set of test bits to generate a second set of test bits, providing the second set of test bits for storage in the memory cells, and performing a read verification of the second set of test bits using the control circuit.

20. The method of claim 17 further comprising:

decoding bits read from the memory cells using the first and the third sets of redundant bits to correct errors in the bits read from the memory cells that are caused by the stuck-at faults using the control circuit.

21. The method of claim 17 further comprising:

decoding the first encoded data bits read from the memory cells using the second set of redundant bits to regenerate the second data bits using the control circuit.

Assignments (11)
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 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 052915 FRAME 0566 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 059127/0001 →
SECURITY INTEREST Recorded Feb 6, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052915/0566 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2016
From: HGST NETHERLANDS B.V.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 040829/0516 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2012
From: GUYOT, CYRIL; BANDIC, ZVONIMIR; FRANCA-NETO, LUIZ; MATEESCU, ROBERT EUGENIU; WANG, QINGBO
To: HGST NETHERLANDS B.V.
Reel/Frame 029474/0997 →