Display System Shared Primary Surface for External Monitor Output

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Connecting additional display devices to a computer, especially using limited bandwidth technologies like USB, poses challenges due to complexity in modern operating systems and hardware variability, requiring solutions that function across different display modes, including basic mode video.

Innovation Solution

A method involving a processing device with a graphics processing unit that maintains a system frame buffer and creates a shared primary surface in video memory for additional displays not controlled by the GPU, allowing rendering and output of content to these displays while using conventional rendering paths, with a user mode helper application managing content delivery and resource allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If additional display devices are connected via USB using limited bandwidth technology, then the connection topology becomes simple and no additional graphics card is needed, but the bandwidth limitation makes it difficult to achieve good quality video output and complex hardware/software requirements arise

Engineering Contradiction:
Improveconnection topologyVSAvoidvideo quality
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent introduces a user mode helper application as an intermediary between the GPU and the additional display device. This helper application manages the complex tasks of copying content from the GPU's frame buffer to the additional display, handling the bandwidth constraints and complexity of USB video transmission without requiring changes to the core GPU architecture or requiring advanced USB video capabilities.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If basic mode video is used in operating systems, then compatibility with older hardware and simpler systems is improved, but the restrictive ways of creating and transmitting display data make it difficult for third party display solutions to function

Engineering Contradiction:
Improvehardware compatibilityVSAvoiddisplay data transmission
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The helper application operates in user mode, allowing it to access and manipulate display data independently without requiring kernel-mode privileges or deep integration with the operating system's basic mode video subsystem. This self-service approach enables the application to handle display data transmission directly, bypassing the restrictive basic mode limitations while maintaining compatibility.

Inventive Principle:
Principle #25Self-service

3Use of energy by moving object

If a shared primary surface is created in video memory for additional displays not controlled by the graphics processing unit, then GPU resource usage remains efficient and conventional rendering paths are used, but additional hardware and software complexity is introduced

Engineering Contradiction:
ImproveGPU resource usageVSAvoidsystem integration
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The helper application is designed to work with standard USB video devices and can interface with various display types through conventional USB connections. This universal approach allows the same software solution to handle multiple display configurations without requiring hardware-specific drivers or complex custom hardware designs, reducing overall system integration complexity despite the added software layer.

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

Data Source

PatentUS9269334B2Display system
Publication Date: 2016.02.23 DISPLAYLINK (UK) LTD
  • US9269334B2 patent drawing
  • US9269334B2 patent drawing
  • US9269334B2 patent drawing

AI summary

A display system comprises a processing device connected to a plurality of display devices, the processing device comprising a processor connected to a system memory and to a graphics processing unit, the graphics processing unit comprising a graphics processor connected to a video memory. A method of operating the system comprises the steps of maintaining a system frame buffer in system memory, creating a shared primary surface in video memory for an additional display device not controlled by the graphics processing unit, rendering the contents of the system frame buffer onto the shared primary surface, rendering any and all directly rendered applications onto the shared primary surface, maintaining a second frame buffer in system memory, copying at least some of the content of the shared primary surface to the second frame buffer, and outputting at least some of the content of the second frame buffer to the additional display device.