IP Library Granted Patent US 9,547,449
Granted Patent B2
US 9,547,449 · App. 14/539,277 · Granted Jan 17, 2017

Performance optimization of read functions in a memory system

Inventors: Timothy J. Dell (Colchester, VT); Saravanan Sethuraman (Bangalore, IN); Diyanesh B. C. Vidyapoornachary (Bangalore, IN)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F3/0619G06F3/0635G06F3/0653G06F3/0683G06F11/2056G06F11/2094G11C29/44G11C29/70G11C29/76G06F11/1666G06F2201/805G06F2201/85G11C2029/0409G11C2029/4402
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 9,547,449
App. No.
14/539,277
Granted
Jan 17, 2017
Kind
B2
Abstract

According to one aspect, a method for performance optimization of read functions in a memory system includes receiving, at the memory system, a read request including a logical address of a target data. The memory system includes a primary memory and a back-up memory that mirrors the primary memory. The method also includes searching a fault monitor table for an entry corresponding to the received logical address. The fault monitor table includes a plurality of entries that indicate physical locations of identified memory failure events in the primary memory and the back-up memory. Based on locating an entry corresponding to the received logical address, the method further includes selecting one of the primary memory and the backup memory for retrieving the target data. The selection is based on contents of the fault monitor table.

Claims (34)

1. A memory system, comprising:

a primary memory;

a back-up memory that mirrors the primary memory;

a fault monitor table; and

a memory controller operably coupled to the primary memory, the back-up memory, and the fault monitor table, the memory controller configured to:

receive a read request including a logical address of a target data;

search the fault monitor table for an entry corresponding to the received logical address, the fault monitor table comprising a plurality of entries that indicate physical locations of identified memory failure events in the primary memory and the back-up memory;

based on locating an entry corresponding to the received logical address, select one of the primary memory and the backup memory for retrieving the target data, the selection based on contents of the fault monitor table;

receive a correction notice indicating correction of one of the memory failure events; and

remove an entry in the fault monitor table corresponding to the one of the memory failure events.

2. The system of claim 1 , wherein the memory controller is further configured to:

receive an indication from one of the primary memory and back-up memory of an identified memory failure event; and

populate the fault monitor table with a physical address of the identified memory failure event along with an identification of the one of the primary memory and the back-up memory for which the memory failure event was identified.

3. The system of claim 1 , wherein the correction notice is received from an error correction code unit of one of the primary memory and the back-up memory in which the one of the memory failure events has been corrected.

4. The system of claim 1 , wherein the memory controller is further configured to:

receive criteria for determining which of the primary memory and the back-up memory read requests will be transmitted, the criteria determined as a function of a number or severity of the memory failure events attributed to a corresponding memory device storing the target data.

5. The system of claim 1 , wherein the memory controller is further configured to:

based on determining the location does not match one of the physical addresses in the fault monitor table, direct the read request according to a default function.

6. A computer program product for optimizing performance of read functions in a memory system, the computer program product comprising:

a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions readable by a processing circuit to cause the processing circuit to perform a method comprising:

receiving a read request including a logical address of a target data, the memory system including a primary memory and a back-up memory that mirrors the primary memory;

searching a fault monitor table for an entry corresponding to the received logical address, the fault monitor table comprising a plurality of entries that indicate physical locations of identified memory failure events in the primary memory and the back-up memory;

based on locating an entry corresponding to the received logical address, selecting one of the primary memory and the backup memory for retrieving the target data, the selecting based on contents of the fault monitor table;

receiving a correction notice indicating correction of one of the memory failure events; and

removing an entry in the fault monitor table corresponding to the one of the memory failure events.

7. The computer program product of claim 6 , wherein the program instructions are further configured to cause the processing circuit to perform:

receiving an indication from one of the primary memory and back-up memory of an identified memory failure event; and

populating the fault monitor table with a physical address of the identified memory failure event along with an identification of the one of the primary memory and the back-up memory for which the memory failure event was identified.

8. The computer program product of claim 6 , wherein the correction notice is received from an error correction code unit of one of the primary memory and the back-up memory in which the one of the memory failure events has been corrected.

9. The computer program product of claim 6 , wherein the program instructions are further configured to cause the processing circuit to perform:

receiving criteria for determining which of the primary memory and the back-up memory read requests will be transmitted, the criteria determined as a function of a number or severity of the memory failure events attributed to a corresponding memory device storing the target data.

10. The computer program product of claim 6 , wherein the program instructions are further configured to cause the processing circuit to perform:

based on determining the location does not match one of the physical addresses in the fault monitor table, directing the read request according to a default function.

11. The computer program product of claim 6 , wherein the fault monitor table resides in the memory controller.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2014
From: DELL, TIMOTHY J.; SETHURAMAN, SARAVANAN; VIDYAPOORNACHARY, DIYANESH B.C.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 034155/0890 →
Continuity (1)
Related Publication 20160132259A1 · May 12, 2016