Method and apparatus for scrubbing accumulated data errors from a memory system
First Claim
1. A data scrubbing apparatus for correcting disturb data errors occurring in an array of SMT MRAM memory cells, the data scrubbing apparatus comprising:
- an error flag bus in communication with error correcting circuitry within the array of memory cells configured for providing an error flag signal indicating a number of detectable and correctable errors occurring in data accessed during one data read operation in a grouping of the SMT MRAM memory cells within the array of SMT MRAM memory cells;
an error flag detector in communication with error flag bus for receiving the error flag signal and configured for accumulating an error count of detected and corrected errors during one data read operation of the grouping of the SMT MRAM memory cells within the array of SMT MRAM memory cells;
an address generator configured for regenerating an original address of the data having the error in the grouping of the SMT MRAM memory cells within the SMT MRAM memory array and error correction code bits covering the grouping of SMT MRAM memory cells; and
a write back control device in communication with the error flag detector to receive the error count and configured for comparing the error count with a received scrub threshold signal that provides a threshold value for the number of errors within the grouping of SMT MRAM memory cells that are to be tolerated before scrubbing the grouping of the array of SMT MRAM memory cells, wherein the scrub threshold value is less than or equal to a maximum number of errors that are detectable and correctable by an error correction/detection circuit and in communication with the address generator to receive the regenerated original address and wherein the write back control device is configured for controlling writing back of data corrected subsequent to the one data read operation to the grouping of the SMT MRAM memory cells.
3 Assignments
0 Petitions
Accused Products
Abstract
A data scrubbing apparatus corrects disturb data errors occurring in an array of memory cells such as SMT MRAM cells. The data scrubbing apparatus receives an error indication that an error has occurred during a read operation of a grouping of memory cells within the array of memory cells. The data scrubbing apparatus may generate an address describing the location of the memory cells to be scrubbed. The data scrubbing apparatus then commands the array of memory cells to write back the corrected data. Based on a scrub threshold value, the data scrubbing apparatus writes the corrected data back after a specific number of errors. The data scrubbing apparatus may further suspend writing back during a writing of data. The data scrubbing apparatus provides a busy indicator externally during a write back of corrected data.
42 Citations
49 Claims
-
1. A data scrubbing apparatus for correcting disturb data errors occurring in an array of SMT MRAM memory cells, the data scrubbing apparatus comprising:
-
an error flag bus in communication with error correcting circuitry within the array of memory cells configured for providing an error flag signal indicating a number of detectable and correctable errors occurring in data accessed during one data read operation in a grouping of the SMT MRAM memory cells within the array of SMT MRAM memory cells; an error flag detector in communication with error flag bus for receiving the error flag signal and configured for accumulating an error count of detected and corrected errors during one data read operation of the grouping of the SMT MRAM memory cells within the array of SMT MRAM memory cells; an address generator configured for regenerating an original address of the data having the error in the grouping of the SMT MRAM memory cells within the SMT MRAM memory array and error correction code bits covering the grouping of SMT MRAM memory cells; and a write back control device in communication with the error flag detector to receive the error count and configured for comparing the error count with a received scrub threshold signal that provides a threshold value for the number of errors within the grouping of SMT MRAM memory cells that are to be tolerated before scrubbing the grouping of the array of SMT MRAM memory cells, wherein the scrub threshold value is less than or equal to a maximum number of errors that are detectable and correctable by an error correction/detection circuit and in communication with the address generator to receive the regenerated original address and wherein the write back control device is configured for controlling writing back of data corrected subsequent to the one data read operation to the grouping of the SMT MRAM memory cells. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A memory device comprising:
a data scrubbing apparatus for correcting disturb data errors occurring in an array of SMT MRAM memory cells within the memory device, the data scrubbing apparatus comprising; an error flag bus in communication with error correcting circuitry within the array of SMT MRAM memory cells configured for providing an error flag signal indicating a number of detectable and correctable errors occurring in data accessed during one data read operation in a grouping of the SMT MRAM memory cells within the array of SMT MRAM memory cells; an error flag detector in communication with the error flag bus for receiving the error flag signal configured for accumulating an error count of the detected and corrected errors during the one data read operation of a grouping of the SMT MRAM memory cells within the array of SMT MRAM memory cells; an address generator configured for regenerating an original address of the data having the error in the grouping of the SMT MRAM memory cells within the memory array and error correction code bits covering the grouping of SMT MRAM memory cells; and a write back control device in communication with the error flag detector to receive the error count and configured for comparing the error count with a received scrub threshold signal that provides a threshold value for the number of errors within the grouping of SMT MRAM memory cells that are to be tolerated before scrubbing the grouping of the array of SMT MRAM memory cells, wherein the scrub threshold value is less than or equal to the maximum number of errors that are detectable and correctable by an error correction/detection circuit and wherein the write back control device is in communication with the address generator to receive the regenerated original address and wherein the write back control device is configured for controlling writing back of data corrected subsequent to the one data read operation to the grouping of the SMT MRAM memory cells. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
21. A method for scrubbing disturb data errors occurring in an array of memory cells comprising the steps of:
-
receiving an error flag signal indicating a number of detectable and correctable errors occurring during one data read operation in a grouping of the SMT MRAM memory cells within the array of SMT MRAM memory cells; accumulating an error count of detected and corrected errors detected during the one data read operation of the grouping of the SMT MRAM memory cells within the array of SMT MRAM memory cells; receiving a scrub threshold signal that provides a threshold value for the number of errors within the grouping of SMT MRAM memory cells that are to be tolerated before scrubbing the grouping of the SMT MRAM array of memory cells, wherein the threshold value is less than or equal to the maximum number of errors that are detectable and correctable by an error correction/detection circuit; comparing the accumulated error count with the received scrub threshold signal; regenerating an original address of the data having the error in the grouping of the SMT MRAM memory cells within the SMT MRAM memory array and error correction code bits covering the grouping of SMT MRAM memory cells when the number of errors in the grouping of SMT MRAM memory cells exceeds a scrub threshold value; and writing corrected data back to the grouping of SMT MRAM memory cells at the location designated by the regenerated original address of the data having the error. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. An apparatus for scrubbing disturb data errors occurring in an array of SMT MRAM memory cells comprising:
-
means for receiving an error flag signal indicating a number of detectable and correctable errors occurring during one data read operation in a grouping of the SMT MRAM memory cells within the array of SMT MRAM memory cells; means for accumulating an error count of detected and corrected errors detected during one data read operation of the grouping of the SMT MRAM memory cells within the array of SMT MRAM memory cells; means for receiving a scrub threshold signal that provides a threshold value for the number of errors within the grouping of SMT MRAM memory cells that are to be tolerated before scrubbing the grouping of the array of SMT MRAM memory cells, wherein the scrub threshold value is less than or equal to the maximum number of errors that are detectable and correctable by an error correction/detection circuit; means for comparing the accumulated error count with the received scrub threshold signal; means for regenerating an original address of the data having the error in the grouping of the SMT MRAM memory cells within the memory array and error correction code bits covering the grouping of SMT MRAM memory cells when the number of errors in the grouping of SMT MRAM memory cells exceeds a scrub threshold value; and means for writing corrected data back to the grouping of memory cells at the location designated by the regenerated original address of the data having the error. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37, 38)
-
-
39. An MRAM device comprising:
a data scrubbing apparatus for correcting disturb data errors occurring in an array of MRAM cells within the MRAM device, the data scrubbing apparatus comprising; an error flag bus in communication with error correcting circuitry within the array of memory cells configured for providing an error flag signal indicating a number of detectable and correctable errors occurring in data accessed during one data read operation in a grouping of the MRAM cells within the array of MRAM cells; an error flag detector in communication with error flag bus for receiving the error flag signal configured for accumulating an error count of the detected and corrected errors during the one data read operation of the grouping of the MRAM cells within the array of MRAM cells; an address generator configured for regenerating an original address of data having detected and corrected errors in the grouping of the MRAM cells within the array of MRAM cells and error correction code bits covering the grouping of MRAM cells; and a write back control device in communication with the error flag detector to receive the error count and compare the error count with a received scrub threshold signal that provides a threshold value for the number of errors within the grouping of MRAM cells that are to be tolerated before scrubbing the grouping of the array of MRAM cells, wherein the scrub threshold value is less than or equal to the maximum number of errors that are detectable and correctable by an error correction/detection circuit and wherein the write back control device is in communication with the address generator to receive the regenerated original address and wherein the write back control device is configured for controlling writing back of data corrected subsequent to the one data read operation to the grouping of the MRAM cells. - View Dependent Claims (40, 41, 42, 43, 44, 45, 46, 47, 48, 49)
Specification