Dynamic Memory Arbitration for Deadline Misses

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Portable computing devices face failures due to insufficient memory bandwidth, leading to issues like display underflow, camera overflow, and modem crashes, necessitating a dynamic control system for shared memory resources to prioritize critical transactions.

Innovation Solution

A method and system that classify traffic engines as flooding or non-flooding, queue their requests separately, and dynamically adjust memory resource allocation based on unacceptable deadline misses, ensuring prioritization of non-flooding engines by modifying arbitration policies and limiting flooding engine access to shared memory resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory resources are allocated using a default arbitration policy, then flooding engines can access shared memory resources freely, but non-flooding engines with unacceptable deadline misses experience insufficient memory bandwidth and transaction latency

Engineering Contradiction:
Improvedeadline meeting guaranteeVSAvoidmemory bandwidth
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The arbitration policy is made dynamic by continuously monitoring deadline miss status of non-flooding engines and adjusting memory resource allocation in real-time. When unacceptable deadline misses are detected, the system transitions from default arbitration to prioritized arbitration, ensuring critical engines receive sufficient bandwidth while maintaining system adaptability

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the arbitration parameter (priority level) based on the deadline miss status. Non-flooding engines experiencing unacceptable deadline misses have their priority parameter increased, allowing them to preempt memory resources from flooding engines, thus resolving the bandwidth insufficiency while maintaining overall system reliability

Inventive Principle:
Principle #35Parameter changes

2Reliability

If memory resources are prioritized for non-flooding engines with unacceptable deadline misses, then QoS is improved, but flooding engine performance may deteriorate

Engineering Contradiction:
ImproveQoS levelVSAvoidflooding engine throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Different quality of service levels are applied locally to different engine types based on their criticality. Non-flooding engines with unacceptable deadline misses receive high-priority local treatment, while flooding engines operate with standard or reduced priority, allowing differentiated resource allocation that maintains overall QoS without completely starving any single engine type

Inventive Principle:
Principle #3Local quality

3Adaptability or versatility

If separate queues are implemented for flooding and non-flooding engines, then arbitration control is improved, but system complexity increases

Engineering Contradiction:
Improvearbitration control flexibilityVSAvoidqueue management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The transaction queue is segmented into separate queues for flooding engines and non-flooding engines, allowing independent management and prioritization of each type. This segmentation enables the arbitration logic to treat different engine types differently, improving control flexibility while keeping each queue's management relatively simple through clear classification rules

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20180253236A1System and method for dynamic control of shared memory management resources
Publication Date: 2018.09.06 QUALCOMM INC
  • US20180253236A1 patent drawing
  • US20180253236A1 patent drawing
  • US20180253236A1 patent drawing

AI summary

A method and system for dynamic control of shared memory resources within a portable computing device (“PCD”) are disclosed. A limit request of an unacceptable deadline miss (“UDM”) engine of the portable computing device may be determined with a limit request sensor within the UDM element. Next, a memory management unit modifies a shared memory resource arbitration policy in view of the limit request. By modifying the shared memory resource arbitration policy, the memory management unit may smartly allocate resources to service translation requests separately queued based on having emanated from either a flooding engine or a non-flooding engine.