IP Library › Granted Patent US 8,862,953
Granted Patent B2
US 8,862,953 · App. 13/734,334 · Granted Oct 14, 2014

Memory testing with selective use of an error correction code decoder

Inventors: Marc A. Gollub (Round Rock, TX); Girisankar Paulraj (Tamilnadu, IN); Diyanesh B. Vidyapoornachary (Bangalore, IN); Kenneth L. Wright (Austin, TX)
Assignee: International Business Machines Corporation
G11C29/42G11C29/00G11C29/56G11C29/12
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,862,953
App. No.
13/734,334
Granted
Oct 14, 2014
Kind
B2
Abstract

A method includes directing an access of a memory location of a memory device to an error correction code (ECC) decoder in response to receiving a test activation request indicating the memory location. The method also includes writing a test pattern to the memory location and reading a value from the memory location. The method further includes determining whether a fault is detected at the memory location based on a comparison of the test pattern and the value.

Claims (56)

1. A method comprising:

in response to receiving a test activation request indicating a memory location of

a memory device:

directing an access of the memory location to an error correction code (ECC) decoder;

writing a test pattern to the memory location;

reading a value from the memory location; and

determining whether a fault is detected at the memory location based on a comparison of the test pattern and the value.

2. The method of claim 1 , wherein the memory location is a byte.

3. The method of claim 1 , further comprising restoring data to the memory location in response to determining that the fault is not detected.

4. The method of claim 1 , further comprising placing a chip mark associated with a dynamic random-access memory (DRAM) including the memory location in response to receiving the test activation request.

5. The method of claim 4 , wherein writing the test pattern comprises writing to a rank, wherein the rank includes the DRAM.

6. The method of claim 4 , further comprising removing the chip mark associated with the DRAM in response to determining that the fault is not detected.

7. The method of claim 1 , wherein the test activation request includes an error indication.

8. The method of claim 1 , wherein the access is a read access or a write access.

9. The method of claim 1 , further comprising:

in response to determining that the fault is not detected:

determining an upper delay margin of a first dynamic random-access memory (DRAM) associated with the memory location; and

determining a lower delay margin of the first DRAM.

10. The method of claim 9 , wherein determining the upper delay margin comprises successively incrementing a delay setting associated with the first DRAM, writing the test pattern to the memory location, and reading the value from the memory location, until after a particular increment a comparison of the test pattern and the value indicates that the fault is detected.

11. The method of claim 9 , wherein determining the lower delay margin comprises successively decrementing a delay setting associated with the first DRAM, writing the test pattern to the memory location, and reading the value from the memory location, until after a particular decrement a comparison of the test pattern and the value indicates that the fault is detected.

12. The method of claim 9 , further comprising:

determining a delay setting in between the upper delay margin and the lower delay margin;

determining whether a difference between the upper delay margin and the lower delay margin is below a threshold;

in response to determining that the difference is equal to or above the threshold, restoring data to the memory location; and

in response to determining that the difference is below the threshold, maintaining a chip mark on the first DRAM, using a second DRAM instead of the first DRAM, generating a warning regarding the first DRAM, or any combination thereof.

13. A system comprising:

a rank including a dynamic random-access memory (DRAM);

an error correction code (ECC) decoder configured to:

detect an error at a memory location of the DRAM; and

in response to detecting the error, place a chip mark associated with the DRAM;

firmware configured to:

detect the chip mark associated with the DRAM;

direct an access of the DRAM to the ECC decoder while the chip mark associated with the DRAM is in place; and

request a self-test engine to perform a test of the memory location; and

the self-test engine configured to:

write to the rank including writing a test pattern to the memory location;

read from the rank including reading a value from the memory location; and

determine whether a fault is detected at the memory location based on a comparison of the value and the test pattern.

14. The system of claim 13 , wherein the firmware is further configured to:

in response to determining that the fault is not detected:

restore data at the memory location; and

remove the chip mark associated with the DRAM.

15. The system of claim 13 , wherein the firmware is further configured to, in response to determining that the fault is detected, maintain the chip mark associated with the DRAM in place.

16. A non-transitory computer-readable medium storing instructions that, when executed by a processor, cause the processor to:

in response to receiving a test activation request indicating a memory location:

direct an access of the memory location to an error correction code (ECC) decoder;

write a test pattern to the memory location;

read a value from the memory location; and

determine whether a fault is detected at the memory location based on a comparison of the test pattern and the value.

17. The non-transitory computer-readable medium of claim 16 , wherein the access is a read access or a write access.

18. The non-transitory computer-readable medium of claim 16 , further comprising:

in response to determining that the fault is not detected:

determining an upper delay margin of a dynamic random-access memory (DRAM) associated with the memory location; and

determining a lower delay margin of the DRAM.

19. The non-transitory computer-readable medium of claim 18 , wherein determining the upper delay margin comprises successively incrementing a delay setting associated with the memory location, writing the test pattern to the memory location, and reading the value from the memory location, until after a particular increment a comparison of the test pattern and the value indicates that the fault is detected.

20. The non-transitory computer-readable medium of claim 18 , wherein determining the lower delay margin comprises successively decrementing a delay setting associated with the memory location, writing the test pattern to the memory location, and reading the value from the memory location, until after a particular decrement a comparison of the test pattern and the value indicates that the fault is detected.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2013
From: GOLLUB, MARC A.; PAULRAJ, GIRISANKAR; VIDYAPOORNACHARY, DIYANESH B.; WRIGHT, KENNETH L.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 029569/0579 →
Continuity (1)
Related Publication 20140195867A1 · Jul 10, 2014