Pipelined Memory Scheduler Arbiter for DRAM Page-Hit Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Dynamic Random Access Memory (DRAM) systems face inefficiencies due to lower page-hit rates, which affect the overall performance and utilization of memory interfaces, as existing memory schedulers lack effective mechanisms to predict and optimize request access patterns across multiple initiator and target IP cores.
Innovation Solution
A memory scheduler with a pipelined arbiter that uses weighted arbitration factors processed in parallel, incorporating predictive scheduling to determine which request accesses the target memory core, improving system efficiency by favoring page hits and optimizing Quality of Service (QoS) requirements.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a traditional memory scheduler is used, then the system can operate with simpler arbitration logic, but the page-hit rate is lower and memory utilization is suboptimal
Solution Approach 1:
The predictive scheduler performs preliminary analysis of request patterns and pre-calculates arbitration weights before actual arbitration occurs. By predicting future memory access patterns and pre-computing weights based on historical data, the system prepares optimization strategies in advance, enabling higher page-hit rates without proportionally increasing arbitration complexity during critical paths.
Solution Approach 2:
The arbitration weights are dynamically adjusted based on real-time memory access patterns and predictive analytics. The system adapts weights for different memory banks and request types according to observed behavior, allowing the arbiter to optimize for page hits under varying workloads without requiring a completely complex static design.
2Productivity
If pipelined arbitration with multiple weighting factors is implemented, then system efficiency and page-hit rate improve, but the arbitration decision process becomes more complex
Solution Approach 1:
The arbitration process is segmented into multiple pipeline stages, each handling specific weighting factor calculations independently. By dividing the complex arbitration decision into discrete stages (weight calculation, prediction, comparison, selection), the system achieves high system efficiency through parallel processing while managing complexity through modular stage design.
Solution Approach 2:
The patent introduces a time dimension through pipelining, transforming the arbitration process from a single-cycle decision into a multi-cycle pipeline. This allows multiple arbitration decisions to be processed in parallel at different pipeline stages, improving overall system efficiency while distributing computational complexity across multiple clock cycles rather than concentrating it in one cycle.
3Productivity
If predictive scheduling is used to make arbitration decisions, then request servicing efficiency increases, but the latency for individual arbitration decisions may increase due to multi-cycle processing
Solution Approach 1:
The pipelined arbiter maintains continuous useful action by ensuring that while one arbitration decision is being refined in later pipeline stages, other arbitration decisions are simultaneously being made in earlier stages. The predictive scheduler continuously updates weights and predictions without idle cycles, ensuring that the pipeline remains full and productive, thereby amortizing the latency across multiple overlapping decisions.
Data Source
AI summary
Various methods and apparatus are described for a memory scheduler. The memory scheduler has a pipelined arbiter to determine which request will access the target memory core. Pipelining occurs in stages within the arbiter over a period of more than one clock cycle. The pipelined arbiter uses two or more weighting factors affecting an arbitration decision that are processed in parallel. A predictive scheduler in the memory scheduler uses data from a previous cycle to make the arbitration decision about a request during a current clock cycle in which the arbitration decision is made in order to increase overall system efficiency of requests being serviced in the integrated circuit.


