Memory Row Tracking With Ping-Pong Counters for Row Hammer Mitigation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing row hammer detection algorithms are probabilistic and memory-intensive, leaving vulnerabilities for data corruption, and existing methods fail to effectively prevent data loss due to memory cell leakage, especially with decreasing row hammer thresholds in modern memory systems.
Innovation Solution
Implementing a control mechanism in the memory sub-system's back-end that utilizes multiple counters to track access patterns over time, refreshing rows based on activation and pre-charge command intervals to mitigate row hammer attacks, using a space-saving algorithm to retain data between refresh windows.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If probabilistic row hammer detection algorithms are used, then some row hammer attacks may be detected, but memory usage increases and data corruption vulnerabilities remain
Solution Approach 1:
The patent segments the row tracking function into multiple independent counters, where each counter tracks a specific row's access pattern. This segmentation allows the system to monitor row hammer attacks on individual rows without requiring a large centralized data structure, thereby reducing overall memory usage while maintaining detection capability.
Solution Approach 2:
The counters automatically track row access patterns and trigger refresh operations when thresholds are exceeded, without requiring complex probabilistic algorithms or external intervention. This self-service mechanism eliminates the need for memory-intensive detection algorithms while providing reliable row hammer mitigation.
2Reliability
If existing row hammer detection methods are implemented, then some protection is provided, but they fail to prevent data loss due to memory cell leakage
Solution Approach 1:
The system performs preliminary tracking of row activation patterns and proactively triggers refresh operations before memory cell leakage can cause data corruption. By monitoring access patterns and predicting potential row hammer attacks, the system refreshes affected rows in advance, preventing data loss from capacitor discharge.
Solution Approach 2:
The counters provide continuous feedback on row access patterns to the refresh control logic, which adjusts refresh timing based on actual usage patterns. This feedback mechanism ensures that rows under attack are refreshed timely, counteracting memory cell leakage effects while optimizing refresh operations.
3Reliability
If row refresh operations are performed frequently to prevent row hammer attacks, then data corruption is prevented, but memory performance and productivity decrease
Solution Approach 1:
The system dynamically adjusts refresh frequency based on actual row access patterns captured by the counters. Instead of performing fixed frequent refreshes, the system refreshes only when the counter thresholds indicate potential row hammer attacks, thereby maintaining data integrity while minimizing performance impact on normal memory operations.
Solution Approach 2:
The refresh timing parameters are changed from fixed intervals to variable intervals based on counter values. When counter thresholds are exceeded, refresh operations are triggered; otherwise, normal operation continues uninterrupted. This parameter change allows the system to maintain reliability while preserving productivity during normal conditions.
Data Source
AI summary
A control mechanism may be implemented in a back-end of a memory sub-system to refresh rows of a memory device. Rows of the memory device can be refreshed based on a quantity of times the rows have been updated in a duration of time. Rows of the memory device can also be updated based on a duration of time between receipt of the activation command for the row and a pre-charge command for the row. Row of the memory device clan further be updated utilizing a pair of counters that implement a ping pong mechanism to retain data between different consecutive durations of time.


