IP Library Granted Patent US 8,560,924
Granted Patent B2
US 8,560,924 · App. 12/652,360 · Granted Oct 15, 2013

Register file soft error recovery

Inventors: Bruce M. Fleischer (Yorktown Heights, NY); Thomas W. Fox (Rochester, NY); Charles D. Wait (Rochester, CT); Adam J. Muff (Rochester, NY); Alfred T. Watson, III (Rochester, NY)
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 8,560,924
App. No.
12/652,360
Granted
Oct 15, 2013
Kind
B2
Abstract

Register file soft error recovery including a system that includes a first register file and a second register file that mirrors the first register file. The system also includes an arithmetic pipeline for receiving data read from the first register file, and error detection circuitry to detect whether the data read from the first register file includes corrupted data. The system further includes error recovery circuitry to insert an error recovery instruction into the arithmetic pipeline in response to detecting the corrupted data. The inserted error recovery instruction replaces the corrupted data in the first register file with a copy of the data from the second register file.

Claims (37)

1. A system for performing soft error recovery, the system comprising:

a first register file;

a second register file mirroring the first register file;

an arithmetic pipeline for receiving data read from the first register file;

error detection circuitry to detect whether the data read from the first register file includes corrupted data; and

error recovery circuitry to insert an error recovery instruction into the arithmetic pipeline in response to detecting the corrupted data, the inserted error recovery instruction to replace the corrupted data in the first register file with a copy of the data from the second register file, wherein the error recovery instruction is a quad-vector-floating-point select (QVFsel) instruction.

2. The system of claim 1 , wherein the arithmetic pipeline further receives data read from the second register file, the error detection circuitry further detects whether the data read from the second register file includes corrupted data, and the error recovery circuitry further inserts an error recovery instruction into the arithmetic pipeline in response to detecting the corrupted data, the inserted error recovery instruction causing the corrupted data in the second register file to be replaced with a copy of the data from the first register file.

3. The system of claim 1 , wherein the error detection circuitry and error recovery circuitry are implemented in hardware.

4. The system of claim 1 , wherein the arithmetic pipeline enters a quiescent state in response to detecting the corrupted data and exits the quiescent state after the inserted error recovery instruction has completed.

5. The system of claim 1 , wherein the system further comprises a control unit for flushing an instruction associated with the corrupted data in response to detecting the corrupted data and for reissuing the flushed instruction after the inserted error recovery instruction has completed.

6. The system of claim 5 , wherein the error recovery circuitry operates independently of the control unit.

7. The system of claim 1 , wherein the arithmetic pipeline is one of a floating point pipeline and a fixed point pipeline.

8. The system of claim 1 , wherein input to the detecting includes parity bits.

9. A computer implemented method for performing soft error recovery, the method comprising:

receiving data read from a first register file, the receiving at an arithmetic pipeline in a computer;

detecting, using error detection circuitry in the computer, whether the data read from the first register file includes corrupted data; and

inserting an error recovery instruction into the arithmetic pipeline in response to detecting the corrupted data, the inserting performed by error recovery circuitry, the inserted error recovery instruction causing the corrupted data in the first register file to be replaced with a copy of the data from a second register file that mirrors the first register file, wherein the error recovery instruction is a quad-vector-floating-point select (QVFsel) instruction.

10. The method of claim 9 , further comprising:

receiving data read from the second register file, the receiving at the arithmetic pipeline;

detecting, using the error detection circuitry, whether the data read from the second register file includes corrupted data; and

inserting an error recovery instruction into the arithmetic pipeline in response to detecting the corrupted data in the second register file, the inserting performed by error recovery circuitry, the inserted error recovery instruction causing the corrupted data in the second register file to be replaced with a copy of the data from the first register file.

11. The method of claim 9 , wherein the error detection circuitry and error recovery circuitry are implemented in hardware on the computer.

12. The method of claim 9 , wherein the arithmetic pipeline enters a quiescent state in response to detecting the corrupted data and exits the quiescent state after the inserted error recovery instruction has completed.

13. The method of claim 9 , wherein the method further comprises:

flushing an instruction associated with the corrupted data in response to detecting the corrupted data, the flushing initiated by a control unit; and

reissuing the flushed instruction after the inserted error recovery instruction has completed, the reissuing initiated by the control unit.

14. The method of claim 13 , wherein the error recovery circuitry operates independently of the control unit.

15. The method of claim 9 , wherein input to the detecting includes parity bits.

16. A computer program product for performing soft error recovery, the computer program product comprising:

a non-transitory tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising:

receiving data read from a first register file;

detecting whether the data read from the first register file includes corrupted data; and

inserting an error recovery instruction into an arithmetic pipeline in response to detecting the corrupted data, the inserted error recovery instruction causing the corrupted data in the first register file to be replaced with a copy of the data from a second register file that mirrors the first register file, wherein the error recovery instruction is a quad-vector-floating-point select (QVFsel) instruction.

17. The computer program product of claim 16 , wherein the arithmetic pipeline enters a quiescent state in response to detecting the corrupted data and exits the quiescent state after the inserted error recovery instruction has completed.

18. The computer program product of claim 16 , wherein the method further comprises:

flushing an instruction associated with the corrupted data in response to detecting the corrupted data; and

reissuing the flushed instruction after the inserted error recovery instruction has completed.

Assignments (4)
CONFIRMATORY LICENSE Recorded Dec 2, 2013
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: U.S. DEPARTMENT OF ENERGY
Reel/Frame 031746/0208 →
CORRECTIVE ASSIGNMENT TO CORRECT THE COVER SHEET & NOTICE OF RECORDATION DO NOT INCLUDE THE 5TH INV.ALFRED T. WATSON III - DOES HAVE A SIGNATURE ON THE ASSN'T PREVIOUSLY RECORDED ON REEL 024187 FRAME 0013. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 19, 2010
From: FLEISCHER, BRUCE M.; FOX, THOMAS W.; MUFF, ADAM J.; WAIT, CHARLES D.; WATSON, ALFRED T., III
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 024250/0896 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 5, 2010
From: FLEISCHER, BRUCE M.; FOX, THOMAS W.; MUFF, ADAM J.; WAIT, CHARLES D.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 024187/0013 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 5, 2010
From: FOX, THOMAS W.; MUFF, ADAM J.; WAIT, CHARLES D.; WATSON, ALFRED T., III
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 023735/0307 →
Continuity (1)
Related Publication 20110167296A1 · Jul 7, 2011