ECC mechanism for set associative cache array
AssigneeInternational Business Machines Corporation
InventorsRavi Kumar Arimilli, John Steven Dodson, Jerry Don Lewis
Life of this patent
Estimating the term…
Loading patent…
AssigneeInternational Business Machines Corporation
InventorsRavi Kumar Arimilli, John Steven Dodson, Jerry Don Lewis
Estimating the term…
A method of checking for errors in a set associative cache array, by comparing a requested value to values loaded in the cache blocks and determining, concurrently with this comparison, whether the cache blocks collectively contain at least one error (such as a soft error caused by stray radiation). Separate parity checks are performed on each cache block and if a parity error occurs, an error correction code (ECC) is executed for the entire congruence class, i.e., only one set of ECC bits are used for the combined cache blocks forming the congruence class. The cache operation is retried after ECC execution. The present invention can be applied to a cache directory containing address tags, or to a cache entry array containing the actual instruction and data values. This novel method allows the ECC to perform double-bit error as well, but a smaller number of error checking bits is required as compared with the prior art, due to the provision of a single ECC field for the entire congruence class. This construction not only leads to smaller cache array sizes, but also to faster overall operation by avoiding unnecessary ECC circuit operations.
A method of checking for errors in a cache array used by a processor of a computer system, the method comprising the steps of:
A computer system comprising:
A cache memory, comprising:
Dependencies are inferred from the claim text.