Shared Buffer DMA Engine for Multi-Display Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Multi-display systems with increasing resolutions and frame rates face challenges in efficiently controlling displays, leading to latency issues and inefficient buffering requirements, particularly in safety-critical applications like automotive systems, where insufficient buffer sizes result in dropped frames and inability to support future higher resolution formats.

Innovation Solution

A shared local buffer system dynamically allocates and deallocates space among multiple display threads and channels, using a DMA engine to maintain contiguity and concatenate free space, allowing for reallocation based on changing resolution needs and usage patterns, thereby optimizing buffer size and reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If a fixed buffer size is allocated for each display thread, then buffer availability is ensured, but buffer space is wasted when displays operate at lower resolutions

Engineering Contradiction:
Improvebuffer spaceVSAvoidresolution adaptability
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic buffer allocation where the buffer size for each display thread is adjusted according to the actual resolution requirements. The buffer management unit reallocates buffer resources based on current display operations, transitioning from a static fixed allocation to a dynamic adaptive allocation that matches actual usage needs.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the buffer size parameter dynamically based on resolution requirements. When a display operates at lower resolution, the allocated buffer size is reduced accordingly. This parameter adjustment allows the system to optimize memory usage while maintaining adaptability to different resolution formats.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If buffer space is reallocated dynamically, then buffer efficiency is improved, but system complexity increases

Engineering Contradiction:
Improvebuffer efficiencyVSAvoidbuffer management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The buffer management unit operates autonomously to handle buffer reallocation without requiring manual intervention or complex external control. The system self-adjusts buffer allocations based on detected display operations, automatically managing the complexity of buffer management internally while presenting a simplified interface to the rest of the system.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The buffer management unit acts as an intermediary between the display threads and the actual buffer memory. This intermediary layer handles the complexity of allocation and reallocation operations, shielding the display threads from buffer management details while enabling efficient dynamic resource sharing.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If contiguous buffer allocation is maintained, then memory access efficiency is improved, but reallocation operations become more complex

Engineering Contradiction:
Improvememory access speedVSAvoidreallocation operation complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The buffer is segmented into separate allocatable regions for each display thread rather than using a single large contiguous block. This segmentation allows individual threads to be allocated or deallocated without disrupting the entire buffer structure, simplifying the reallocation process while maintaining contiguous access patterns for active threads.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary buffer allocation and maintains contiguous structures in advance. By pre-establishing contiguous buffer regions and preparing for reallocation operations, the system minimizes disruption during actual reallocation events, maintaining memory access efficiency while reducing the complexity of on-demand reallocation operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11947477B2Shared buffer for multi-output display systems
Publication Date: 2024.04.02 TEXAS INSTRUMENTS INC
  • US11947477B2 patent drawing
  • US11947477B2 patent drawing
  • US11947477B2 patent drawing

AI summary

A system includes a display subsystem. The display subsystem includes a shared buffer having allocated portions, each allocated to one of a plurality of display threads, each display thread associated with a display peripheral. The display subsystem also includes a direct memory access (DMA) engine configured to receive a request from a main processor to deallocate an amount of space from a first allocated portion associated with a first display thread. In response to receiving the request, the DMA engine deallocates the amount of space from the first allocated portion and shifts the allocated portions of at least some of other display threads to maintain contiguity of the allocated portions and concatenate free space at an end of the shared buffer.