Row hammer condition monitoring
AssigneeIntel Corporation
InventorsZvika Greenfield, Kuljit S. Bains, Theodore Z. Schoenborn, Christopher P. Mozak, John B. Halbert
Life of this patent
Estimating the term…
Abstract
A system monitors data accesses to specific rows of memory to determine if a row hammer condition exists. The system can monitor accessed rows of memory to determine if the number of accesses to any of the rows exceeds a threshold associated with risk of data corruption on a row of memory physically adjacent to the row with high access. Based on the monitoring, a memory controller can determine if the number of accesses to a row exceeds the threshold, and indicate address information for the row whose access count reaches the threshold.
Claims14
A memory subsystem comprising:
- hardware connectors to couple to a memory device having multiple rows of memory;
- a memory controller coupled to the hardware connectors, the memory controller to monitor accesses to rows of a memory device for a time period;
- determine if a number of accesses for any of the rows exceeds a threshold, the threshold associated with risk of data corruption on a row physically adjacent to the accessed row;
- and indicate address information for one of the rows when the number of accesses to the row exceeds the threshold in the time period, wherein the memory controller is to maintain a table of access counts to monitor the accesses, and is to compare the access counts to the threshold, wherein the memory controller is to determine a maximum victim count that indicates a maximum number of rows that could reach the threshold in the time period, and wherein a number of entries in the table is based on the maximum victim count, wherein if there are no empty entries in the table and a row is accessed that is not in the table, the memory controller is to replace the entry with a lowest-value access count with the accessed row.
An electronic device comprising:
- a memory subsystem having a memory device to store data, the memory device including multiple rows of memory;
- and a memory controller coupled to the hardware connectors, the memory controller to monitor accesses to rows of a memory device for a time period, determine if a number of accesses for any of the rows exceeds a threshold, the threshold associated with risk of data corruption on a row physically adjacent to the accessed row, and indicate address information for one of the rows when the number of accesses to the row exceeds the threshold in the time period;
- and
- a multicore processor coupled to the memory subsystem to access the memory subsystem during execution of the processor, wherein the memory controller is to maintain a table of access counts to monitor the accesses, and is to compare the access counts to the threshold, wherein the memory controller is to determine a maximum victim count that indicates a maximum number of rows that could reach the threshold in the time period, and wherein a number of entries in the table is based on the maximum victim count, wherein if there are no empty entries in the table and a row is accessed that is not in the table, the memory controller is to replace the entry with a lowest-value access count with the accessed row.
A method comprising:
- monitoring accesses to rows of a memory device for a time period;
- determining if a number of accesses for any of the rows exceeds a threshold, the threshold associated with risk of data corruption on a row physically adjacent to the accessed row;
- and
- indicating address information for one of the rows when the number of accesses to the row exceeds the threshold in the time period, wherein monitoring the accesses further comprises maintaining a table of access counts to monitor the accesses, and comparing the access counts to the threshold, wherein monitoring the accesses further comprises determining a maximum victim count that indicates a maximum number of rows that could reach the threshold in the time period, wherein a number of entries in the table is based on the maximum victim count, wherein if there are no empty entries in the table and a row is accessed that is not in the table, monitoring the access with the table further comprises replacing the entry with a lowest-value access count with the accessed row.
Dependencies are inferred from the claim text.