Resource Controller Priority Accounting for SoC Bandwidth
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Consumer electronic devices with system-on-chip (SoC) multiprocessors face challenges in efficiently managing resource utilization between processing units, leading to high overhead and potential starvation of lower priority requests, particularly in data transfer between SoC and external resources like memories.
Innovation Solution
A method for resource controlling that categorizes requests into high and low priority types, using an accounting mechanism with an up-down counter to ensure sufficient bandwidth for low priority requests by blocking high priority requests when a predefined condition is met, thereby preventing unnecessary latency and ensuring guaranteed service for constant bandwidth traffic.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If high priority requests are processed continuously without limitation, then processing speed and responsiveness are improved, but low priority requests experience starvation and resource utilization overhead increases
Solution Approach 1:
The patent implements dynamic priority adjustment based on real-time accounting of low priority request service. The system transitions from static priority assignment to dynamic priority modulation, where the effective priority of high priority requests is reduced when low priority requests have been starved for too long. This is achieved through the accounting mechanism that tracks service duration and modifies scheduling decisions accordingly, allowing the system to adapt priority levels dynamically rather than maintaining fixed priorities throughout operation.
Solution Approach 2:
The patent introduces a feedback mechanism through the accounting structure that monitors the service received by low priority requests and uses this information to adjust the processing behavior of high priority requests. The accounting mechanism provides continuous feedback about the state of low priority request service, enabling the scheduler to respond appropriately by limiting high priority request processing when necessary. This feedback loop ensures that low priority requests receive adequate service while maintaining overall system responsiveness.
2Productivity
If low latency traffic requests are limited based on their own bandwidth usage, then resource utilization is improved, but average latency for low latency requests becomes unnecessarily long
Solution Approach 1:
The patent segments the request processing into distinct categories (low latency traffic requests and constant bandwidth traffic requests) with separate accounting mechanisms. This segmentation allows the system to track and manage each category independently, preventing the misconception that low latency requests should be limited based solely on their own bandwidth consumption. Instead, the system considers the overall service state of low priority requests when making scheduling decisions, thereby avoiding unnecessary latency increases while maintaining efficient resource utilization.
3Productivity
If bandwidth for low priority requests is not protected, then high priority request processing is maximized, but sufficient bandwidth cannot be ensured for constant bandwidth requests
Solution Approach 1:
The patent implements preliminary action through the accounting mechanism that proactively tracks and accounts for service provided to low priority requests before bandwidth starvation occurs. By continuously monitoring the service state and preparing to intervene when thresholds are approached, the system ensures that sufficient bandwidth is allocated to constant bandwidth requests without requiring reactive measures. This preliminary accounting and preparation allows the system to maintain both high priority processing efficiency and adequate bandwidth availability for low priority requests.
Data Source
Figure 1~2
Figure 3~5
AI summary
The present application relates to a method for resource controlling comprising controlling the processing of requests of a first category having a first priority. The method comprises controlling the processing of requests of a second category having a second priority, wherein the first priority is set such that processing the requests of the first category has priority over processing the requests of the second category. The method comprises blocking requests of the first category by a mechanism that detects when a predefined condition regarding the service provided to the second category is met.