Error correcting code with chip kill capability and power saving enhancement
First Claim
1. A method of detecting memory chip failure in a computer memory system, the memory system including a first set of user data memory chips and a second set of system data memory chips, the method comprising the steps of:
- accessing user data from the user data chips,testing the user data for errors using error detection data from the system data chips, including the steps ofi) generating a sequence of check symbols from the user data,ii) grouping the user data into a sequence of data symbols,iii) computing a sequence of syndromes using said sequence of data symbols and said sequence of check symbols,iv) if all the syndromes are zero, identifying the user data as having no error, andv) if one of the syndromes is non-zero, then (1) computing a set of discriminator expressions, and (2) using said discriminator expressions to determine whether a single symbol error has occurred or a double symbol error has occurred.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and system are disclosed for detecting memory chip failure in a computer memory system. The method comprises the steps of accessing user data from a set of user data chips, and testing the user data for errors using data from a set of system data chips. This testing is done by generating a sequence of check symbols from the user data, grouping the user data into a sequence of data symbols, and computing a specified sequence of syndromes. If all the syndromes are zero, the user data has no errors. If one of the syndromes is non-zero, then a set of discriminator expressions are computed, and used to determine whether a single or double symbol error has occurred. In the preferred embodiment, less than two full system data chips are used for testing and correcting the user data.
129 Citations
35 Claims
-
1. A method of detecting memory chip failure in a computer memory system, the memory system including a first set of user data memory chips and a second set of system data memory chips, the method comprising the steps of:
-
accessing user data from the user data chips, testing the user data for errors using error detection data from the system data chips, including the steps of i) generating a sequence of check symbols from the user data, ii) grouping the user data into a sequence of data symbols, iii) computing a sequence of syndromes using said sequence of data symbols and said sequence of check symbols, iv) if all the syndromes are zero, identifying the user data as having no error, and v) if one of the syndromes is non-zero, then (1) computing a set of discriminator expressions, and (2) using said discriminator expressions to determine whether a single symbol error has occurred or a double symbol error has occurred. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A memory error detection system for detecting memory chip failure in a computer memory system, the memory system including a first set of user data memory chips and a second set of system data memory chips, the memory error detection system comprising:
-
a memory controller for accessing user data from the user data chips and for testing the user data for errors using error detection data from the system data chips by; i) generating a sequence of check symbols from the user data, ii) grouping the user data into a sequence of data symbols, iii) computing a sequence of syndromes using said sequence of data symbols and said sequence of check symbols, iv) if all the syndromes are zero, identifying the user data as having no error, and v) if one of the syndromes is non-zero, then (1) computing a set of discriminator expressions, and (2) using said discriminator expressions to determine whether a single symbol error has occurred or a double symbol error has occurred. - View Dependent Claims (17, 18, 19, 20, 21)
-
-
22. A program storage device tangibly embodying a program of instructions readable by machine for instructing the machine to perform method steps for detecting memory chip failure in a computer memory system, the memory system including a first set of user data memory chips and a second set of system data memory chips, said method steps comprising:
-
accessing user data from the user data chips, testing the user data for errors using error detection data from the system data chips, including the steps of; i) generating a sequence of check symbols from the user data, ii) grouping the user data into a sequence of data symbols, iii) computing a sequence of syndromes using said sequence of data symbols and said sequence of check symbols, iv) if all the syndromes are zero, identifying the user data as having no error, and v) if one of the syndromes is non-zero, then (1) computing a set of discriminator expressions, and (2) using said discriminator expressions to determine whether a single symbol error has occurred or a double symbol error has occurred. - View Dependent Claims (23, 24)
-
-
25. A method of detecting failure of an entire memory chip in a computer memory system, the memory system including a first set of user data memory chips and a second set of system data memory chips, the method comprising the steps of:
-
accessing user data from the user data chips; testing the user data for errors using error detection data from the system data chips, including the steps of; i) generating a sequence of check symbols from the user data, ii) grouping the user data into a sequence of data symbols, iii) computing a sequence of syndromes using said sequence of data symbols and said sequence of check symbols, and iv) using said syndromes to determine whether an entire one of the data memory chips has entirely failed, and if so, to identify which one of said data memory chips has entirely failed, including computing a respective one set of modified syndromes for each of the user data memory chips, and using the sets of modified syndromes to determine the one of the data memory chips that has entirely failed. - View Dependent Claims (26, 27)
-
-
28. A method of detecting failure of an entire memory chip in a computer memory system, the memory system including a first set of user data memory chips and a second set of system data memory chips, the method comprising the steps of:
-
accessing user data from the user data chips; testing the user data for errors using error detection data from the system data chips, including the steps of; i) generating a sequence of check symbols from the user data, ii) grouping the user data into a sequence of data symbols, iii) computing a sequence of syndromes using said sequence of data symbols and said sequence of check symbols, and iv) using said syndromes to determine whether an entire one of the data memory chips has entirely failed, and if so, to identify which one of said data memory chips has entirely failed; and wherein the step of using said syndromes to determine if an entire one of the memory chips has failed includes the steps of; identifying the number, N1, of syndromes in the sequence of syndromes; identifying the number, N2, of the data symbols in error when an entire one of the memory chips has failed; determining a third number N3 by the equation;
N1−
N2=N3;modifying N3 of the syndromes to produce N3 modified syndromes; and using said N3 modified syndromes to determine if an entire one of the memory chips has failed. - View Dependent Claims (29)
-
-
30. A memory error detection system for detecting failure of an entire memory chip in a computer memory system, the memory system including a first set of user data memory chips and a second set of system data memory chips, the memory error detection system comprising:
-
a memory controller for accessing user data from the user data chips and for testing the user data for errors using error detection data from the system data chips by; i) generating a sequence of check symbols from the user data, ii) grouping the user data into a sequence of data symbols, iii) computing a sequence of syndromes using said sequence of data symbols and said sequence of check symbols, and iv) using said syndromes to determine whether an entire one of the data memory chips has failed, and if so, to identify which one of said data memory chips has failed, including computing a respective one set of modified syndromes for each of the user data memory chips, and using the sets of modified syndromes to determine the one of the data memory chips that has entirely failed. - View Dependent Claims (31, 32, 33, 34, 35)
-
Specification