Memory Command Prioritization Engine for DDR3 Throughput
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
DDR3 SDRAM experiences performance limitations due to overhead penalties associated with certain access scenarios, such as opening a new row in a memory bank, which results in real-world performance being less than theoretical maximum throughput and bandwidth.
Innovation Solution
A multi-input memory access command prioritization scheme that uses a priority determination engine to assess command characteristics and memory state, applying user-configurable weights to determine the priority of memory access commands, thereby optimizing the order in which commands are issued to reduce overhead penalties and enhance bandwidth utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If bank interleaving is used to improve memory access performance, then throughput is improved, but overhead penalties from row opening operations still occur and device complexity increases
Solution Approach 1:
The patent applies preliminary action by pre-calculating and storing optimal command sequences in lookup tables before runtime. The system determines optimal memory access patterns in advance based on access types and bank states, then retrieves these pre-computed sequences during operation, avoiding complex real-time decision-making while maintaining high performance
Solution Approach 2:
The patent introduces lookup tables as an intermediary between the memory controller and memory banks. These tables store pre-computed optimal command sequences that mediate the complex interaction between multiple memory banks, translating access requirements into optimized command sequences without requiring complex real-time control logic
2Adaptability or versatility
If random access patterns are used to improve data retrieval flexibility, then adaptability is improved, but overhead penalties increase and productivity decreases
Solution Approach 1:
The patent applies dynamics by making the command issuance strategy adaptive rather than static. The system dynamically selects from multiple pre-computed command sequences based on current memory state and access patterns, allowing the memory controller to adapt to different access scenarios while maintaining optimal performance through state-dependent command selection
3Adaptability or versatility
If new rows are opened frequently to improve data access flexibility, then adaptability is improved, but overhead time increases and productivity decreases
Solution Approach 1:
The patent applies preliminary action by pre-organizing data into banks and pages in advance, and pre-computing optimal access sequences that minimize row opening operations. This allows the system to retrieve data with minimal overhead by following pre-planned access patterns that exploit spatial and temporal locality
Data Source
AI summary
Embodiments of the present disclosure provide a method and system for prioritizing memory commands. A priority determination engine determines a priority of a memory access command based on a plurality of inputs related to characteristics of the memory access command and a plurality of inputs related to a state of the memory. An access scheduler selects an order in which to issues the memory commands based at least on the priority. The priority determination is determined such that bandwidth utilization is improved.


