IP Library › Granted Patent US 7,287,138
Granted Patent B2
US 7,287,138 · App. 10/859,826 · Granted Oct 23, 2007

Low cost and high RAS mirrored memory

Assignee: International Business Machines Corporation
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 7,287,138
App. No.
10/859,826
Granted
Oct 23, 2007
Kind
B2
Abstract

An architecture, method and apparatus for a data processing system having memory compression and two common memories forming either a single unified memory, or a dual memory system capable of continuous operation in the presence of a hardware failure or redundant “duplex” computer maintenance outage, without the cost of duplicating the memory devices. A memory controller employs hardware memory compression to reduce the memory requirement by half, which compensates for the doubling of the memory needed for the redundant storage. The memory controller employs error detection and correction code that is used to detect storage subsystem failure during read accesses. Upon detection of a fault, the hardware automatically reissues the read access to a separate memory bank that is logically identical to the faulty bank. After a memory bank is identified as faulty, the memory controller precludes further read access to the bank, permitting replacement without interruption to the application or operating system software operation.

Claims (13)

1. A method to initialize, synchronize, and validate the integrity of a back-up memory bank after replacement, comprising the steps of:

setting a memory initializing control bit to invoke hardware initialization of the back-up memory bank,

starting an immediate scrub operation to cause data to be read from a primary memory bank, error checked, and then written to both the primary and back-up memory banks;

starting a background scrub operation with errors inhibited from propagating outside a memory controller; and

checking for errors during the scrub operations, and if no errors are found, then re-enabling error reporting outside the memory controller.

2. A method according to claim 1 , wherein the checking step includes the step of using error detection and correction circuitry to check for errors during the scrub operations.

3. A method to failover to a back-up memory bank upon detection of an uncorrectable error with data received from a primary memory bank, comprising the steps of:

i) activating both the primary and back-up memory banks;

ii) initiating a read burst to both memory banks;

iii) receiving and checking each data cycle of data burst from the primary memory bank;

iv) if an uncorrectable error is detected, swapping the configuration of the primary and back-up memory banks; wherein the primary memory bank and the back-up memory bank become, respectively, the back-up memory bank and the primary memory bank, and rereading the data burst; and

v) repeating steps (ii)-(iv).

4. A method according to claim 3 , wherein step (iv) includes the step of reclassifying the error as a correctable error.

Continuity (2)
Division 0965275200 · Aug 31, 2000
Related Publication 20040230767A1 · Nov 18, 2004