Hierarchical Primitive Patch Testing in Tile-Based Graphics

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing systems face inefficiencies in rasterization operations, particularly when dealing with varying rendering tile sizes, which can lead to increased storage requirements and resource limitations in devices like mobile phones and tablets.

Innovation Solution

A tile-based graphics processor that selectively uses different rendering tile sizes and performs hierarchical rasterization, starting from a patch size corresponding to the actual rendering tile size, thereby reducing unnecessary patch tests and enhancing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If hierarchical rasterization is performed starting from the largest patch size, then complete coverage testing is achieved, but the number of patch tests increases and processing efficiency decreases

Engineering Contradiction:
Improvecoverage testing completenessVSAvoidrasterization efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The method performs a preliminary bounding box test before hierarchical patch testing to determine if the primitive can potentially cover the rendering tile. This preliminary action filters out primitives that cannot possibly contribute to the output, avoiding unnecessary hierarchical patch tests and improving overall rasterization efficiency while maintaining complete coverage testing for primitives that do intersect the tile.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If fixed largest rendering tile size is used, then processing is simplified, but storage capacity is wasted and resource utilization decreases in resource-constrained devices

Engineering Contradiction:
Improveprocessing simplicityVSAvoidstorage utilization flexibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The method dynamically adjusts the rendering tile size based on the actual geometry of the primitive being rasterized. Instead of using a fixed largest tile size, the system determines the appropriate tile size by calculating the bounding box of the primitive and selecting a tile size that fits the primitive's dimensions. This dynamic adaptation maximizes storage utilization and reduces memory bandwidth requirements while maintaining processing efficiency.

Inventive Principle:
Principle #15Dynamics

3Quantity of substance

If rendering tile size is reduced to fit storage capacity, then storage constraints are satisfied, but the number of tiles increases and processing overhead increases

Engineering Contradiction:
Improvestorage capacity utilizationVSAvoidtile management complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The method changes the parameter of tile size dynamically based on the primitive's bounding box dimensions. By calculating the appropriate tile size that maximizes storage utilization without exceeding device capacity, the system reduces the number of tiles needed compared to using fixed smaller tiles, thereby reducing processing overhead while satisfying storage constraints.

Inventive Principle:
Principle #35Parameter changes

4Measurement precision

If primitives are tested against all patch sizes hierarchically, then accurate coverage determination is achieved, but processing time increases

Engineering Contradiction:
Improvecoverage determination accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The method segments the hierarchical patch testing process by introducing a bounding box test that divides primitives into two categories: those that can potentially cover the rendering tile and those that cannot. This segmentation allows the system to skip detailed hierarchical patch testing for primitives that fail the bounding box test, significantly reducing processing time while maintaining accurate coverage determination for primitives that do intersect the tile.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11321803B2Graphics processing primitive patch testing
Publication Date: 2022.05.03 ARM LTD
  • US11321803B2 patent drawing
  • US11321803B2 patent drawing
  • US11321803B2 patent drawing

AI summary

A method of operating a tile-based graphics processor that can use one of plural different rendering tile sizes is disclosed. The tile-based graphics processor includes a rasteriser that can rasterise primitives in a hierarchical manner. A patch size at which to begin the hierarchical testing of primitives in the rasteriser is selected based on the rendering tile size that is to be used. This can reduce the overall number of tests performed to rasterise primitives without impacting the correct functioning of the hierarchical rasterisation process.