Adaptive QoS Control Circuit for Memory Bandwidth
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Regulating memory bandwidth allocation in System-on-Chip (SoC) architectures is challenging due to complexity and variability, as well as non-linear performance responses to control parameters, making it difficult to maintain optimal quality of service (QoS) in terms of latency and bandwidth utilization.
Innovation Solution
A Quality of Service Management (QM) circuit dynamically adjusts control parameters of requester circuits and the memory controller by periodically monitoring and gathering metrics such as data rate and latency, ensuring that these parameters align with a predefined QoS profile, thereby maintaining optimal bandwidth utilization and latency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If memory bandwidth allocation is regulated in SoC architectures, then quality of service (latency and bandwidth utilization) is improved, but device complexity increases due to the vast number of control parameters and non-linear performance responses
Solution Approach 1:
The system employs self-service through automated feedback mechanisms where performance metrics are continuously monitored and used to dynamically adjust control parameters without manual intervention. The performance monitor collects data on latency and bandwidth utilization, and this information automatically feeds into the regulation logic that adjusts memory bandwidth allocation, enabling the system to self-optimize QoS while managing complexity through automation rather than manual configuration
Solution Approach 2:
The patent implements feedback by continuously monitoring performance metrics (latency and bandwidth utilization) and using this information to dynamically adjust control parameters. The performance monitor captures real-time data on memory transaction performance, and this feedback loop enables the system to adaptively regulate bandwidth allocation across multiple requesters, maintaining optimal QoS despite the complexity of multiple control parameters and non-linear performance responses
2Productivity
If multiple requester circuits transmit memory transactions simultaneously, then bandwidth utilization is improved, but latency increases due to competition for memory resources
Solution Approach 1:
The system applies local quality by providing differentiated memory bandwidth allocation to different requester circuits based on their specific performance needs and QoS requirements. Rather than uniform allocation, the regulation logic adjusts control parameters individually for each requester circuit, allowing critical applications to receive higher priority bandwidth while less critical traffic receives standard allocation, thus optimizing overall system productivity while managing latency for time-sensitive operations
Solution Approach 2:
The patent implements dynamics through dynamic adjustment of control parameters in response to changing system conditions. The performance monitor continuously tracks latency and bandwidth utilization metrics, and the regulation logic dynamically modifies allocation policies based on current workload characteristics. This dynamic approach allows the system to adapt bandwidth distribution in real-time, improving productivity during high-utilization periods while maintaining acceptable latency through adaptive parameter changes
Data Source
Figure 1
Figure 2~3
Figure 4~5
AI summary
Disclosed approaches of controlling quality of service in servicing memory transactions includes periodically reading (206) by a quality of service management (QM) circuit (1 16), respective first data rate metrics and respective latency metrics from requester circuits (106, 108, 1 10, 1 12) while the requester circuits are actively transmitting memory transactions to a memory controller (104). The QM circuit periodically reads (208) a second data rate metric from the memory controller while the memory controller is processing the memory transactions, and determines (210), while the requester circuits are actively transmitting memory transactions to the memory controller, whether or not the respective first data rate metrics, respective latency metrics, and second data rate metric satisfy a quality of service metric. In response to determining that the operating metrics do not satisfy the quality of service metric, the QM circuit dynamically changes (212) value(s) of a control parameter(s) of the requester circuit(s) and of the memory controller.