Tile-Based Graphics Processing Sub-Region Fragment Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Tile-based graphics processing systems face inefficiencies in processing and writing out rendered fragment data due to the need for larger tile buffers and increased write-out times, which can delay the processing of other tiles.

Innovation Solution

Implementing a method that tracks the processing of fragments within sub-regions of a tile to determine when all fragments for a sub-region have finished, allowing for early writing out of rendered fragment data from the tile buffer, thereby reducing idle time and improving overall processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If tile-based graphics processing is used to divide the render target into multiple tiles, then processing can be parallelized and memory bandwidth is reduced, but the tile buffer size must be increased and write-out time is delayed

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidwrite-out time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent divides each tile into multiple sub-regions (e.g., quadrants) and tracks fragment processing independently for each sub-region. This allows the write-out operation to be segmented and performed as soon as each sub-region is complete, rather than waiting for the entire tile to finish processing. The segmentation of write-out operations directly reduces the idle time penalty associated with tile-based processing.

Inventive Principle:
Principle #1Segmentation

2Reliability

If larger tile buffers are allocated to store rendered fragment data for entire tiles, then complete tile rendering is enabled, but memory capacity requirements increase and processing of other tiles is delayed

Engineering Contradiction:
Improverendering completenessVSAvoidmemory capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

By segmenting the tile into sub-regions and allowing independent write-out of completed sub-regions, the system can free up tile buffer space incrementally. This reduces the peak memory capacity required compared to holding entire tiles in buffer, while still ensuring complete rendering of all tile regions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs write-out operations as soon as sub-region processing is complete, rather than waiting until the entire tile is rendered. This preliminary write-out of completed portions allows memory to be freed earlier, reducing the overall memory capacity requirement while maintaining rendering completeness.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the system waits for all fragments in a tile to finish processing before writing out, then data integrity is ensured, but idle time increases and processing speed decreases

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the tile into multiple sub-regions and implements independent tracking and write-out for each sub-region. This allows the system to maintain data integrity within each sub-region while enabling earlier write-out operations, thus improving processing speed without sacrificing reliability. The fragment tracking circuit ensures that each sub-region is fully processed before its specific write-out occurs.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11978156B2Graphics processing
Publication Date: 2024.05.07 ARM LTD
  • US11978156B2 patent drawing
  • US11978156B2 patent drawing
  • US11978156B2 patent drawing

AI summary

In a tile-based graphics processor when rendering a tile of a render output, which sub-regions, of a plurality of sub-regions that the tile has been divided into for fragment tracking purposes, fragments generated by the rasterisation stage fall within is determined. Then, for at least one sub-region of the plurality of sub-regions that the tile has been divided into, the processing of fragments for the sub-region of the tile is tracked to determine when the processing of all fragments for the sub-region of the tile has been finished. The writing of rendered fragment data for the sub-region of the tile from the tile buffer to memory is controlled on the basis of the tracking of the processing of fragments for the sub-region of the tile.