DETECTION OF MULTIPLE ACCESSES TO A ROW ADDRESS OF A DYNAMIC MEMORY WITHIN A REFRESH PERIOD
First Claim
1. An apparatus, comprising:
- a memory including a plurality of entries, wherein each entry of the plurality of entries is configured to store a row address;
a first plurality of counters, wherein each counter of the first plurality of counters is coupled to a respective entry of the plurality of entries in the memory;
a second plurality of counters, wherein each counter of the second plurality of counters is coupled to the respective entry of the plurality of entries in the memory; and
a control circuit configured to;
receive a row address used to access a dynamic memory;
store the row address in an entry of the plurality of entries responsive to a determination that the received row address has not been previously stored in the memory;
change, responsive to a determination that the received row address has been previously stored in an entry of the memory, a value of a counter of the first plurality of counters corresponding to the entry of the memory;
change a value of each counter of the second plurality of counters responsive to a determination that a pre-determined time interval has elapsed; and
initiate a refresh of the dynamic memory responsive dependent upon the value of the counter of the first plurality of counters corresponding to the entry of the memory and the value of the counter of the second plurality of counters corresponding to the entry of the memory.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments of a row address cache circuit are disclosed that may allow the determination the number of times a row address is used to access a dynamic memory. The row address cache circuit may include a memory, first and second pluralities of counters, and a control circuit. The control circuit may be configured to receive a row address and store the row address in an entry of the memory when the row address has not been previously stored. When the row address has been previously stored in an entry of the memory, the control circuit may be configured to change a value of a counter of the first plurality of counters corresponding the entry. The control circuit may be further configured to change a value of each counter of the second plurality of counters after a pre-determined time interval has elapsed, and initiate a refresh of the dynamic memory.
61 Citations
20 Claims
-
1. An apparatus, comprising:
-
a memory including a plurality of entries, wherein each entry of the plurality of entries is configured to store a row address; a first plurality of counters, wherein each counter of the first plurality of counters is coupled to a respective entry of the plurality of entries in the memory; a second plurality of counters, wherein each counter of the second plurality of counters is coupled to the respective entry of the plurality of entries in the memory; and a control circuit configured to; receive a row address used to access a dynamic memory; store the row address in an entry of the plurality of entries responsive to a determination that the received row address has not been previously stored in the memory; change, responsive to a determination that the received row address has been previously stored in an entry of the memory, a value of a counter of the first plurality of counters corresponding to the entry of the memory; change a value of each counter of the second plurality of counters responsive to a determination that a pre-determined time interval has elapsed; and initiate a refresh of the dynamic memory responsive dependent upon the value of the counter of the first plurality of counters corresponding to the entry of the memory and the value of the counter of the second plurality of counters corresponding to the entry of the memory. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for operation a cache circuit, comprising:
-
receiving a row address, wherein the row address corresponds to a target row within a dynamic random access memory (DRAM); storing the received row address responsive to a determination that the received row address has not been previously received; determining a number of times the row address has been received responsive to a determination that the received row address has been previously received; determining how long the row address has been stored responsive to the determination that the row address has been previously received; and initiating a refresh of one or more victim rows within the DRAM dependent upon the number of times the row address has been received, wherein each victim row of the one or more victim rows within the DRAM is adjacent to the target row. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A system, comprising:
-
a processor; one or more dynamic random access memories (DRAMs), wherein each one of the one or more DRAMs is coupled to the processor; and a row address cache circuit coupled to the processor, wherein the row address cache circuit is configured to; receive a row address used to access at least one of the one or more DRAMs; store the received row address responsive to a determination that the received row address has not been previously received; determine a number of times the row address has been received responsive to a determination that the received row address has been previously received; determine how long the row address has been stored responsive to the determination that the row address has been previously received; and initiate a refresh of the at least one of the one or more DRAMs dependent upon the determined number of times the row address has been received and dependent upon how long the row address has been stored. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification