Encoding information in error correcting codes
AssigneeIntel Corporation
InventorAlexander GENDLER
Life of this patent
Estimating the term…
Abstract
One or more bit values of bits in an error correcting code (ECC) may be modified to convert the ECC to a sequence of bit values that does not correspond to a valid ECC. The conversion of the ECC to this non-ECC bit value sequence may be used to encode additional information about the data associated with the ECC. For example, one or more particular non-ECC bit value sequences may indicate that the data associated with the ECC is poisoned. Other non-ECC bit value sequences may convey other quality of service information or other information, such as a specific thread used to process the data. Systems, methods, computer readable media, and apparatuses are provided.
Claims21
An apparatus comprising:
- a cache for storing a data line and an error-correcting code (ECC) associated with the data line;
- an error detection arrangement for detecting an uncorrectable error in the data line read from the cache based on the cached error-correcting code (ECC) associated with the read data line;
- and
- a bit inverting arrangement for transforming at least a portion of the ECC associated with the data line having the uncorrectable error into a predetermined non-ECC bit value sequence.
A system comprising:
- a processor configured to generate a single error correcting and double error detecting error correcting code (ECC) for data in a data line;
- a cache storing the data line;
- an ECC memory coupled to the cache for detecting a double error in the data line read from the cache based on the ECC;
- and
- an ECC transformation circuit configured to invert at least one bit in the ECC responsive to the ECC memory detecting the double error.
A method comprising:
- detecting an uncorrectable error in data read from a cache based on an error-correcting code (ECC) associated with the read data;
- inverting at least one bit in the ECC to transform the ECC into a predetermined non-ECC bit value sequence;
- and
- replacing at least a portion of the ECC with the predetermined non-ECC bit value sequence.
A non-transitory computer readable medium comprising stored instructions that, when executed by a processing device, cause the processing device to:
- detect an uncorrectable error in data read from a cache based on a cached error-correcting code (ECC) associated with the read data;
- invert at least one bit in the ECC to transform the ECC into a predetermined non-ECC bit value sequence;
- and
- replace the cached ECC with the predetermined non-ECC bit value sequence.
Dependencies are inferred from the claim text.