Memory Request Scheduler Using Prioritized Scanners

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory arbiters face a trade-off between memory latency and bandwidth, where focusing on increasing bandwidth can lead to increased latency and vice versa, necessitating a solution that reduces latency while enhancing bandwidth with minimal complexity and die surface area.

Innovation Solution

A system comprising multiple arbiters and a novel time-ordered list scheduler that maintains the relative arrival time of memory requests, using prioritized scanners to select requests based on programmable rules, and counters to manage request prioritization, thereby optimizing the selection process for efficient memory access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the arbiter focuses on increasing bandwidth by processing efficient requests first, then memory bandwidth increases, but memory latency increases as some requests are bypassed too long

Engineering Contradiction:
Improvememory bandwidthVSAvoidmemory latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The scheduler dynamically adjusts request prioritization based on current system state and timing requirements. The arbiter transitions from static bandwidth-optimized scheduling to dynamic scheduling that considers both bandwidth efficiency and latency constraints, adapting the selection criteria in real-time to balance these competing objectives

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the scheduling parameters by introducing timing-based metrics and latency thresholds into the arbitration decision process. Instead of solely optimizing for bandwidth efficiency, the arbiter now considers multiple parameters including request age, timing requirements, and latency constraints to make balanced scheduling decisions

Inventive Principle:
Principle #35Parameter changes

2Loss of time

If the arbiter focuses on decreasing latency by prioritizing older requests, then memory latency reduces, but memory bandwidth decreases as efficient requests are not processed in optimal sequences

Engineering Contradiction:
Improvememory latencyVSAvoidmemory bandwidth
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The scheduling mechanism dynamically balances between latency reduction and bandwidth optimization by adjusting prioritization weights based on system conditions. Rather than statically prioritizing older requests, the arbiter adapts its behavior to consider both timing constraints and efficiency opportunities in real-time

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system introduces multiple scheduling parameters including efficiency metrics and timing requirements, changing from a single-objective latency minimization approach to a multi-parameter optimization approach that simultaneously considers bandwidth and latency

Inventive Principle:
Principle #35Parameter changes

3Productivity

If a complex arbiter system is designed to balance latency and bandwidth, then performance trade-off improves, but device complexity and die surface area increase

Engineering Contradiction:
Improvememory subsystem efficiencyVSAvoidarbiter complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The arbiter is designed as a multi-functional component that handles both bandwidth optimization and latency management within a single unified structure. This universal design eliminates the need for separate specialized arbiters for each objective, reducing overall system complexity while maintaining performance benefits

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent combines multiple scheduling functions (bandwidth optimization, latency management, request prioritization) into a single integrated arbiter unit. By merging these previously separate functions into one cohesive structure, the system achieves balanced performance without proportionally increasing complexity

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9195618B2Method and system for scheduling memory requests
Publication Date: 2015.11.24 NVIDIA CORP
  • US9195618B2 patent drawing
  • US9195618B2 patent drawing
  • US9195618B2 patent drawing

AI summary

A system for selecting memory requests. The system includes arbiters and a time ordered list scheduler. Each arbiter selects a memory request for transmission from at least one client. The scheduler is operable to receive and store memory requests from the arbiters and selects a selected memory request for forwarding to a memory system. The scheduler includes a list structure operable to store memory requests received from the arbiters in a fashion to preserve relative time of arrival of the memory requests. The scheduler includes scanners that are prioritized with respect to one another. Scanners are operable to simultaneously scan contents of the list structure from the oldest to newest requests and determine whether a memory request match is found based on associated programmable rules to locate a memory request candidate. A memory request candidate of a highest priority scanner is selected by the scheduler as the selected memory request.