Bit steering apparatus and method for correcting errors in stored data, storing the address of the corrected data and using the address to maintain a correct data condition
First Claim
1. A system for correcting errors in stored data and for maintaining the correct condition of said data including a memory unit means responsive to a memory unit means read or write request signal for storing data and corrected data, said data being stored in a plurality of memory chips, said corrected data being stored in a plurality of spare memory chips, and error detection and correction means connected to the memory unit means for detecting the existence of errors in said data stored in said plurality of memory chips and for correcting the erroneous data stored in said memory chips, comprising:
- error identity recording means connected to and physically separate from said memory unit means, connected to said error detection and correction means and responsive to said memory unit means read or write request signal energizing said memory unit means for storing a plurality of addresses therein indicative of a corresponding plurality of locations within said memory unit means wherein said erroneous data is stored.
1 Assignment
0 Petitions
Accused Products
Abstract
In a computer system, an apparatus detects the existence of an error in data retrieved from memory, corrects the erroneous data, and takes steps to maintain the correct condition of the data. In taking these steps, when the erroneous data is corrected, the corrected data is stored in a spare portion of the memory; however, the address of the corrected data in memory is recorded in a bit steering array, a physically separate memory of much smaller size. The bit steering array stores a plurality of such addresses. When an incoming read request signal is generated, it simultaneously energizes the memory and the bit steering array. In response to the read request signal, the bit steering array develops an output signal indicative of the address of the corrected data and representative of the identity of the erroneous data. In response to the read request signal, data, including the erroneous data, is read from memory. In addition, the corrected data is read from the spare portion of the memory. However, in response to the output signal from the bit steering array, the erroneous data is replaced or exchanged with the corrected data. In the case of a double bit error, one bit is corrected in the manner just described. The other bit is corrected in an error correction code matrix, which is designed to correct single bit errors.
143 Citations
9 Claims
-
1. A system for correcting errors in stored data and for maintaining the correct condition of said data including a memory unit means responsive to a memory unit means read or write request signal for storing data and corrected data, said data being stored in a plurality of memory chips, said corrected data being stored in a plurality of spare memory chips, and error detection and correction means connected to the memory unit means for detecting the existence of errors in said data stored in said plurality of memory chips and for correcting the erroneous data stored in said memory chips, comprising:
error identity recording means connected to and physically separate from said memory unit means, connected to said error detection and correction means and responsive to said memory unit means read or write request signal energizing said memory unit means for storing a plurality of addresses therein indicative of a corresponding plurality of locations within said memory unit means wherein said erroneous data is stored. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
8. A system for correcting a double bit error in data stored in a memory unit, said memory unit including a plurality of memory chips for storing said data including said double bit error and a spare memory chip for storing a corrected data bit, comprising:
-
first means responsive to a memory unit addressing signal for storing an address therein representative of an address in said memory unit wherein at least one bit of said double bit error is stored and for developing an output signal representative of said address in response to said memory unit addressing signal; and second means responsive to said memory unit addressing signal for reading said data, including said double bit error, from said plurality of memory chips of said memory unit and for reading said corrected data bit from said spare memory chip, said second means exchanging one of the bits of said double bit error read from one of said plurality of memory chips with said corrected data bit read from said spare memory chip in response to said output signal from said first means thereby producing data having a single bit error, said single bit error representing the other of the bits of said double bit error; and error correction matrix means connected to said first means and responsive to said data produced by said first means for receiving said data having said single bit error and for correcting said single bit error thereby producing data having no errors.
-
-
9. A method of identifying a set defective bits associated with a double bit error in a set of data read from a memory and of utilizing an address in said memory corresponding to at least one of said defective bits to ensure that said double bit error will not re-occur when said data is subsequently read from said memory, comprising the steps of:
-
complementing the data read from said memory; re-storing the complemented data in said memory; re-reading the re-stored, complemented data from said memory; comparing the re-stored, complemented data re-read from said memory with the complemented data re-stored in said memory thereby identifying the defective bits which constitute the double bit error; updating a bit steering array to record said address in said memory corresponding to at least one of the defective bits which constitutes said double bit error, said bit steering array being physically separate from said memory; re-storing a corected bit corresponding to said at least one of the defective bits in a spare memory chip of said memory while re-storing the bits of said set of data, including the other one of the defective bits, in a plurality of memory chips of said memory in accordance with said address recorded in said bit steering array; simultaneously addressing said bit steering array and said memory; re-reading said corrected bit corresponding to said at least one of the defective bits from said spare memory chip and the bits of said set of data, including the other one of the defective bits, from the plurality of memory chips in response to the addressing of said memory; and exchanging said corrected bit re-read from said spare memory chip with said other one of the defective bits re-read from said plurality of memory chips in response to the addressing of said bit steering array thereby reducing said double bit error to a single bit error and ensuring that said double bit error does not re-occur.
-
Specification