Selective Volatile Memory Refresh via Validity Indicators
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing portable computing devices face challenges in power-efficient volatile memory refresh due to high system power consumption from DRAM refresh, particularly in premium-tier mobile devices with large DDR memory capacities, where coarse granularity refresh methods require additional overhead and are not efficient.
Innovation Solution
Implementing a system that uses a memory controller to initiate a refresh command based on a data valid/invalid indicator table within the volatile memory, selectively refreshing only rows with valid data while skipping unused rows, thereby optimizing power usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Use of energy by moving object
If coarse granularity refresh methods (e.g., partial array self-refresh) are used, then power consumption is reduced, but memory management overhead increases and requires page migration or application termination
Solution Approach 1:
The patent divides the memory array into individual row segments, each with its own validity indicator bit. This allows selective refresh of only those rows containing valid data, rather than refreshing entire arrays or large portions. The segmentation enables fine-grained control at the row level, eliminating the need for coarse-grained page migration operations.
Solution Approach 2:
The system performs preliminary action by setting validity indicator bits in advance to mark which rows contain valid data before refresh operations occur. This pre-marking allows the refresh controller to immediately identify and skip invalid rows during refresh, avoiding the overhead of runtime decisions and page management operations.
2Reliability
If all memory rows are refreshed, then data integrity is maintained, but power consumption increases
Solution Approach 1:
The patent extracts and removes the refresh operation from rows that do not contain valid data. By using validity indicator bits to identify inactive rows, the system takes out the unnecessary refresh actions from the overall refresh process, applying refresh only to rows that actually need it to maintain data integrity.
Solution Approach 2:
The system applies partial action by performing refresh operations on only a subset of memory rows - specifically, only those rows marked with valid data indicators. This avoids excessive action of refreshing all rows uniformly, reducing power consumption while maintaining reliability for actually used data.
3Use of energy by moving object
If fine granularity refresh is implemented, then power efficiency improves, but additional memory structures and control logic are required
Solution Approach 1:
The patent merges the validity indication function with the existing memory structure by integrating validity indicator bits directly into the memory array. This combining of data storage and validity tracking into a unified structure avoids adding separate complex control structures, achieving fine-grained control with minimal overhead.
Solution Approach 2:
The memory structure provides self-service by using its own validity indicator bits to automatically identify which rows require refresh. The system serves itself by having the memory structure inherently track its own state, eliminating the need for external memory management intervention and reducing control logic complexity.
Data Source
AI summary
Systems, methods, and computer programs are disclosed for refreshing a volatile memory. An embodiment of a method comprises storing, in a volatile memory device comprising a cell array having a plurality of rows with a corresponding row address, a table specifying one of a data valid indicator and a data invalid indicator for each of the plurality of row addresses. The data valid indicator specifies that the corresponding row is in use, and the data invalid indicator specifies that the corresponding row is not in use. A memory controller initiates a refresh command. In response to the refresh command, the rows having the data valid indicator are refreshed while the rows having the data invalid indicator are skipped.


