Method and apparatus for using cache memory in a system that supports a low power state
First Claim
1. An apparatus comprising:
- a cache memory; and
error correction logics, responsive to a request for data from a requesting device, to receive the data stored in a cache line in the cache memory if the cache line has not been previously accessed within a current refresh time period of the cache memory, and to perform error correction for the received data, the error correction logics comprising;
a first error correction logic to generate a syndrome to determine a count of errors in the data, and to perform error correction on the data if the count of errors is determined to be one; and
a second error correction logic to receive the data from the first error correction logic if the count of errors is determined to be greater than one, the second error correction logic to perform multi-bit error correction for the received data;
wherein if the cache line has been previously accessed within the current refresh time period of the cache memory, the data is free of errors and the data is to be forwarded to the requesting device without performance of the error correction by the error correction logics.
1 Assignment
0 Petitions
Accused Products
Abstract
A cache memory system uses multi-bit Error Correcting Code (ECC) with a low storage and complexity overhead. In an embodiment, error correction logic may include a first error correction logic to determine a number of errors in data that is stored in a cache line of a cache memory, and a second error correction logic to receive the data from the first error correction logic if the number of errors is determined to be greater than one and to perform error correction responsive to receipt of the data. The cache memory system can be operated at very low idle power, without dramatically increasing transition latency to and from an idle power state due to loss of state. Other embodiments are described and claimed.
-
Citations
22 Claims
-
1. An apparatus comprising:
-
a cache memory; and error correction logics, responsive to a request for data from a requesting device, to receive the data stored in a cache line in the cache memory if the cache line has not been previously accessed within a current refresh time period of the cache memory, and to perform error correction for the received data, the error correction logics comprising; a first error correction logic to generate a syndrome to determine a count of errors in the data, and to perform error correction on the data if the count of errors is determined to be one; and a second error correction logic to receive the data from the first error correction logic if the count of errors is determined to be greater than one, the second error correction logic to perform multi-bit error correction for the received data; wherein if the cache line has been previously accessed within the current refresh time period of the cache memory, the data is free of errors and the data is to be forwarded to the requesting device without performance of the error correction by the error correction logics. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method comprising:
-
if a cache line of a cache memory has not been previously accessed within a current refresh time period of the cache memory, performing error correction comprising; receiving, by error correction logics, data stored in the cache line, the error correction logics comprising a first error correction logic and a second error correction logic; generating, by the first error correction logic, a syndrome to determine a number of errors in the data; forwarding the data, by the first error correction logic to a second error correction logic if the data has greater than one error; and performing, by the second error correction logic, multi-bit error correction for the data responsive to receiving the data forwarded by the first error correction logic; and responsive to a request from a requesting device, if the cache line has been previously accessed within the current refresh time period and so the data is free of errors, forwarding the data to the requesting device without performing the error correction. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. An article including a machine-accessible non-transitory medium having associated information, wherein the information, when accessed, results in a machine performing:
-
responsive to a request for data from a requesting device, if a cache line of a cache memory has not been previously accessed within a current refresh time period of the cache memory; receiving, by error correction logics, the data stored in the cache line, the error correction logics comprising a first error correction logic and a second error correction logic; generating, by the first error correction logic, a syndrome to determine a number of errors in the data; forwarding the data, by the first error correction logic to a second error correction logic if the data has greater than one error; and performing, by the second error correction logic, multi-bit error correction for the data if the data is forwarded by the first error correction logic; and if the cache line has been previously accessed within the current refresh time period and so the data is free of errors, forwarding the data to the requesting device without performing error correction, responsive to the request for the data. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A system comprising:
-
an external memory; and a processor, the processor comprising; a cache memory to store data read from the external memory into a cache line; and error correction logics, wherein responsive to a request for the data from a requesting device, if the cache line has not been previously accessed during a current refresh time period of the cache memory, the error correction logics are to receive the data and to perform error correction, the error correction logics comprising; a first error correction logic to generate a syndrome to determine a number of errors in the data and to correct the data if only one error is detected in the data; and a second error correction logic to receive the data from the first error correction logic if the number of errors in the data is determined to be greater than one, the second error correction logic to perform multi-bit error correction responsive to receipt of the data from the first error correction logic; and wherein if the cache line has been previously accessed within the current refresh time period of the cache memory the data is free of errors, and responsive to the request the data is to be forwarded to the requesting device without performance of the error correction by the error correction logics. - View Dependent Claims (20, 21, 22)
-
Specification