Non-Interrupt Display Buffering via Swap Register

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In safety-critical environments, traditional methods for buffering images between a GPU and display controller, such as triple buffering, rely on interrupts which can be undesirable or impossible, leading to difficulties in ensuring reliability and avoiding errors or race conditions, especially when coordinating between different cores with shared memory is not feasible.

Innovation Solution

A method and system for non-interrupt-based asynchronous display buffering using multiple frame buffers, where a processor writes data to a selected frame buffer, sends a swap buffer signal to the GPU, and the display controller updates to set the ready frame buffer as the front buffer during display synchronization intervals, allowing the GPU and display controller to operate independently without interrupts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional triple buffering with interrupts is used, then coordination between GPU and display controller is achieved, but system reliability decreases and complexity increases in safety-critical environments

Engineering Contradiction:
Improvesystem reliabilityVSAvoidbuffering system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent removes the interrupt mechanism from the buffering system, extracting the coordination function from the CPU interrupt handler and implementing it through direct GPU-to-display-controller communication. This eliminates the complexity and reliability issues associated with interrupts in safety-critical environments while maintaining the essential coordination between rendering and display components.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a buffer swap register as an intermediary mechanism between the GPU and display controller. This register serves as a simple, reliable signal that the GPU writes to indicate buffer readiness, eliminating the need for complex interrupt handling while maintaining coordination. The register acts as a mediator that enables direct communication without CPU involvement.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If interrupts are used for buffer coordination, then frame data flow is maintained, but latency increases and performance decreases

Engineering Contradiction:
Improveframe data flow efficiencyVSAvoiddisplay latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by having the GPU proactively write to the buffer swap register as soon as a frame is ready, before the display controller needs to read it. This anticipatory approach eliminates waiting time and ensures that the display controller can immediately switch to the ready buffer during the next vertical sync, reducing latency and improving frame data flow efficiency.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If CPU coordinates data exchange between GPU and display controller, then data synchronization is achieved, but CPU overhead increases and system performance decreases

Engineering Contradiction:
Improvedata synchronization reliabilityVSAvoidCPU energy consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent implements self-service by enabling the GPU and display controller to coordinate buffer swaps autonomously without CPU intervention. The GPU writes to the buffer swap register to signal readiness, and the display controller reads this register during vertical sync to determine which buffer to display. This self-service mechanism eliminates CPU overhead and energy consumption associated with interrupt handling and coordination.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11164496B2Interrupt-free multiple buffering methods and systems
Publication Date: 2021.11.02 CHANNEL ONE HOLDINGS INC
  • US11164496B2 patent drawing
  • US11164496B2 patent drawing
  • US11164496B2 patent drawing

AI summary

Methods and systems for multiple-buffered display rendering without the use of hardware or software interrupts. In a first repeating process, a processor writes data for a frame a selected frame buffer and, upon completion of the frame, a swap buffer signal is transmitted. In response to the swap buffer signal, the GPU updates a memory register of the display controller to indicate that the selected frame buffer can be used in the next display synchronization interval. In a separate repeating process, the display controller monitors memory register and, in a display synchronization interval, identifies the frame buffer to use for display.