Dynamic Graphics Blending via Fixed-Function and Shader Selection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing systems face inefficiencies in blending operations, as they often rely on either fixed-function hardware or programmable execution units, but not both efficiently, leading to suboptimal performance in handling various blending modes.

Innovation Solution

A method and system that include a sequence of blending instructions in a graphics processor, allowing determination of whether blending should be performed by fixed-function hardware or a programmable execution unit, enabling flexible implementation of both fixed-function blending and blend shading operations based on runtime conditions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If blending operations are performed using fixed-function hardware, then simple blending modes are processed efficiently, but complex blending operations cannot be handled flexibly

Engineering Contradiction:
Improveblending operation speedVSAvoidblending mode flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic blending by allowing the blending method (fixed-function hardware or programmable execution unit) to be selected at runtime based on the complexity of the blending operation. The system transitions from static fixed-function blending to dynamic hybrid blending, where simple operations use hardware acceleration and complex operations use programmable shaders, optimizing both speed and flexibility.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent creates a universal blending system that can handle both simple and complex blending operations through a single unified architecture. The fixed-function hardware provides fast path for simple modes while the programmable execution unit handles complex modes, making the system versatile enough to accommodate any blending operation type without requiring separate dedicated hardware for each mode.

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

2Adaptability or versatility

If blending operations are performed using a programmable execution unit, then complex blending modes can be handled flexibly, but processing speed decreases compared to fixed-function hardware

Engineering Contradiction:
Improveblending mode flexibilityVSAvoidblending operation speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system dynamically selects the execution path based on operation complexity. For simple blending modes, it routes to fixed-function hardware for fast processing; for complex modes, it routes to the programmable execution unit. This dynamic dispatch mechanism ensures optimal performance for each specific operation type, preventing the speed penalty from applying to simple operations.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent segments the blending operation space into two categories: simple blending modes handled by fixed-function hardware and complex blending modes handled by the programmable execution unit. This segmentation allows each subsystem to operate in its optimal performance regime, with the simple path providing high speed and the complex path providing flexibility.

Inventive Principle:
Principle #1Segmentation

3Device complexity

If the system uses only fixed-function blending hardware, then hardware complexity is reduced, but the system cannot adapt to different blending operation types

Engineering Contradiction:
Improvehardware structureVSAvoidblending operation support
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent implements a universal blending architecture where fixed-function hardware and programmable execution units work together. The fixed-function hardware provides a simple, low-complexity path for common operations, while the programmable execution unit provides a universal interface for handling any blending operation type, achieving both simplicity and adaptability in a unified system.

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

Solution Approach 2:

The patent introduces a control mechanism that acts as an intermediary between the fixed-function hardware and programmable execution unit. This mediator determines which path to take based on the blending operation type, allowing the system to maintain low hardware complexity for the fixed-function path while still supporting diverse operation types through the programmable path when needed.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If the system uses both fixed-function hardware and programmable execution units for blending, then both simple and complex operations can be handled efficiently, but control complexity increases

Engineering Contradiction:
Improveoverall blending performanceVSAvoidcontrol logic
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements self-service control where the blending operation itself determines the execution path. The system automatically routes simple operations to fixed-function hardware and complex operations to programmable execution units based on inherent properties of the operation, without requiring external control logic. This self-determining approach minimizes control complexity while maintaining optimal performance.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system uses feedback from the blending operation characteristics to dynamically select the execution path. The control mechanism monitors operation complexity and adjusts the execution route accordingly, creating a feedback loop that optimizes performance based on real-time operation requirements without requiring complex predetermined control logic.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11107264B2Graphics processing systems for determining blending operations
Publication Date: 2021.08.31 ARM LTD
  • US11107264B2 patent drawing
  • US11107264B2 patent drawing
  • US11107264B2 patent drawing

AI summary

A sequence of instructions is included in a graphics processing shader program for controlling the way in which blending is implemented. The sequence of instructions includes a blend instruction which determines whether blending for a processing item is to be performed by fixed-function blending hardware or by executing a blend shader routine. If blend shading is to be performed, a sequence of instructions for setting up and performing blend shading is executed. If fixed-function blending is to be performed, an execution thread initiates fixed-function blending in response to the blend instruction, and skips over the sequence of instructions for setting up and performing blend shading.