Memory Access Counter Initialization for Row Hammer Protection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Memory devices face issues with data degradation due to 'row hammer' effects, where repeated access to certain memory cells accelerates decay in adjacent cells, and existing initialization methods for access counters are predictable, increasing the risk of attacks and inefficiency.
Innovation Solution
A method for initializing access count values individually after activation counter initialization (ACI) mode, where multiple word lines are set to an ACI flag value during ACI mode, and individual initialization occurs when each word line is accessed, using random or pseudo-random numbers to reduce predictability and enhance security.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If access counters are initialized with fixed values during ACI mode, then initialization is efficient and quick, but the predictability increases making the system vulnerable to attacks
Solution Approach 1:
The system performs preliminary initialization of access counters to a flag value during ACI mode before normal operation begins. This preliminary action prepares the counters for subsequent individual initialization with random values, separating the efficiency-critical initialization phase from the security-critical randomization phase.
Solution Approach 2:
An intermediary random value generation mechanism is introduced between the fixed initialization during ACI mode and the final counter values used for row access tracking. This intermediary layer adds unpredictability while maintaining the efficiency of the initial ACI mode initialization process.
2Manufacturing precision
If ACI mode is maintained for extended periods to ensure proper initialization, then initialization completeness improves, but system operational time is reduced
Solution Approach 1:
The initialization process is segmented into two distinct phases: (1) ACI mode initialization that quickly sets all counters to a flag value, and (2) post-ACI individual initialization that sets random values only when needed. This segmentation allows the system to exit ACI mode quickly while still achieving complete initialization through the second phase.
Solution Approach 2:
The system performs partial initialization during ACI mode by setting only the flag value, which is sufficient to mark counters for initialization. The complete random value assignment is performed partially and individually after ACI mode exits, avoiding the need to maintain ACI mode for the entire initialization duration.
3Reliability
If individual initialization with random values is performed for each word line, then predictability decreases enhancing security, but the complexity of the initialization process increases
Solution Approach 1:
The system implements self-service initialization where the random value generation and counter initialization is automatically triggered by the row access itself. When a row is accessed after ACI mode, the counter for that row is automatically initialized with a random value without requiring external intervention or complex control logic.
Solution Approach 2:
An intermediary mechanism detects when a row is accessed after ACI mode and automatically triggers the random initialization of that row's counter. This intermediary layer simplifies the overall process by providing a clear trigger point (row access) that initiates the randomization without requiring complex scheduling or control.
Data Source
AI summary
Embodiments of the disclosure are drawn to apparatuses, systems, and methods for activation counter initialization (ACI) individualization. A memory may be placed in an ACI mode. During the ACI mode, an ACI control circuit sets the access count values of the memory array to an ACI flag value. When a word line is next accessed, the access count value associated with it may be initialized with an initialization value if the access count value is equal to the ACI flag value. The initialization value may be a random number, a pseudo-random number, or a deterministic number. By individually setting the initial state of the access count values at a time after the initial ACI mode, initialization may take less time.


