Display Controller Memory Request Aggregation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing power and complexity of computer systems lead to bottlenecks in memory subsystems due to continuous memory access by display pipelines, preventing the memory subsystem from entering a low-power mode and resulting in high power consumption.

Innovation Solution

A display controller is configured to process image data and aggregate memory requests for each pixel-processing pipeline, waiting until a programmable number of pixels are left in the line buffer before issuing read requests, allowing the memory controller to transition to a low-power mode when no requests are received.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If display pipelines continuously access memory for frame data, then image processing and display functionality is maintained, but the memory subsystem cannot enter low-power mode resulting in high power consumption

Engineering Contradiction:
Improvedisplay functionalityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system pre-loads frame buffer data into the line buffer before the display pipeline needs it. By anticipating the next frame's data requirements and fetching it in advance when the line buffer has space, the system avoids continuous memory access during critical display periods, enabling the memory subsystem to enter low-power modes while maintaining display functionality.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The line buffer acts as an intermediate storage that continuously holds frame data available to the display pipeline without requiring continuous memory access. This decouples the display pipeline's continuous operation from the memory subsystem's continuous activity, allowing the memory to remain static or enter low-power modes while the line buffer supplies data on-demand to the display pipeline.

Inventive Principle:
Principle #20Continuity of useful action

2Productivity

If multiple memory requests are issued continuously by display pipelines, then data availability for processing is maintained, but the memory subsystem performance is reduced due to bottleneck and repeated overhead processing

Engineering Contradiction:
Improvedata availabilityVSAvoidmemory subsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Multiple scattered memory requests from different display pipelines are merged into fewer, more efficient batch requests. The line buffer accumulates data from multiple sources and presents it as a single coherent frame buffer read operation, reducing the total number of memory transactions and eliminating repeated overhead processing while maintaining data availability for all pipelines.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The line buffer serves as an intermediary between the memory subsystem and multiple display pipelines. Instead of each pipeline directly accessing memory individually (creating multiple requests and overhead), the line buffer mediates by receiving data once and distributing it to multiple pipelines as needed, thereby reducing memory subsystem complexity and improving performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If the memory subsystem remains active to satisfy continuous display pipeline access, then data can be retrieved when needed, but power consumption increases significantly

Engineering Contradiction:
Improvedata retrieval capabilityVSAvoidpower consumption
Core Design Contradiction:
Ease of operationVSLoss of energy

Solution Approach 1:

The system performs preliminary data retrieval by loading frame buffer contents into the line buffer in advance, during periods when the display pipeline is not actively consuming data. This allows the memory subsystem to be inactive (and thus low-power) during critical display periods while still providing rapid data access when the pipeline needs it, as the data is already cached in the line buffer.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The line buffer enables the display pipeline to serve its own data needs without continuous memory subsystem support. By maintaining a local copy of frame data in the line buffer, the pipeline can operate autonomously during display cycles, retrieving data from the buffer rather than continuously requesting it from memory, thereby reducing overall power consumption while maintaining ease of operation.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9117299B2Inverse request aggregation
Publication Date: 2015.08.25 APPLE INC
  • US9117299B2 patent drawing
  • US9117299B2 patent drawing
  • US9117299B2 patent drawing

AI summary

A system and method for efficiently scheduling memory access requests from a display controller pipeline. The display controller monitors the amount of data in the line buffers in the internal pixel-processing pipelines. The display controller waits until the amount of data in a given line buffer has fallen below an amount equal to the pixel width of the region being rendered by the internal pixel-processing pipeline before issuing memory requests to the memory controller. When the memory controller is not processing received memory requests, the memory controller transitions to a low-power state.