LUTDMA Engine for Partial Display Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current techniques for multiple partial updates of frames often miss updates when regions of interest (ROIs) are too close to each other due to latency issues in interrupt service requests (ISRs) and configuration execution.
Innovation Solution
The implementation of a method that uses a lookup table direct memory access (LUTDMA) engine to program ROI configurations faster, reducing configuration execution latency and eliminating ISR latency by preparing packets for all ROIs at the beginning of the frame.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If interrupt service requests (ISRs) and configuration execution are used for multiple partial updates, then updates can be performed, but updates are missed when ROIs are too close due to latency
Solution Approach 1:
The patent pre-configures multiple ROI update commands in a command queue before execution begins. The LUTDMA engine is programmed with all necessary configuration data upfront, allowing it to execute multiple ROI updates without waiting for ISR latency between each update. This preliminary preparation eliminates the timing constraints that caused updates to be missed when ROIs were close together.
Solution Approach 2:
The patent extracts and eliminates the ISR latency component from the update process. By using a dedicated LUTDMA engine that operates independently of the general-purpose CPU interrupt system, the patent removes the bottleneck caused by ISR handling overhead. The LUTDMA engine processes ROI updates directly from pre-configured command queues without requiring CPU intervention or ISR latency between updates.
2Ease of operation
If software-based indication is used to execute command packets, then execution can be controlled, but latency is introduced that causes missed updates for close ROIs
Solution Approach 1:
The patent replaces the software-based control mechanism with a hardware-based LUTDMA engine. Instead of relying on software to manage command packet execution and ROI configuration, the patent uses dedicated hardware logic that automatically processes pre-configured update commands. This hardware substitution eliminates software processing latency while maintaining execution control through pre-programmed command queues and hardware state machines.
Solution Approach 2:
The LUTDMA engine is designed to be self-sufficient, automatically executing ROI updates without requiring continuous software intervention. The engine autonomously processes command packets from its internal queue, manages configuration parameters, and executes updates based on hardware-generated triggers. This self-service capability eliminates the need for software-based indication and the associated latency.
3Productivity
If LUTDMA engine is used to prepare packets at the beginning of the frame, then configuration execution latency is reduced, but device complexity increases
Solution Approach 1:
The patent segments the display processing function into dedicated components: a LUTDMA engine specifically for ROI update configuration, separate from the main GPU and CPU. This segmentation allows the LUTDMA engine to be optimized for its specific function of preparing and executing ROI update commands, while the rest of the system continues to operate independently. The modular architecture manages complexity by creating a specialized, self-contained update subsystem.
Solution Approach 2:
The LUTDMA engine acts as an intermediary between the CPU/GPU and the display output for ROI updates. It receives configuration parameters from the CPU, prepares command packets, and executes updates without requiring direct CPU intervention for each update operation. This intermediary role offloads the time-critical update preparation from the main processing path, improving productivity while containing complexity within a dedicated intermediate subsystem.
Data Source
AI summary
This disclosure provides systems, devices, apparatus, and methods, including computer programs encoded on storage media, for efficient multiple partial updates in display processing. A processor may obtain a software-based indication that indicates to start an execution of command packets. The processor may execute, based on the obtained software-based indication, a first set of command packets associated with a first ROI of a frame that is to be updated. The processor may obtain a hardware-based indication that indicates that the first set of command packets associated with the first ROI of the frame has been executed. The processor may execute, based on the obtained hardware-based indication, a second set of command packets associated with a second ROI of the frame that is to be updated.


