Tile Coarse Depth Testing for Lower Depth Buffer Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Tile-based rendering (TBR) graphics processing systems face inefficiencies due to high bandwidth requirements for transferring transformed geometry data between the chip and off-chip memory, and frequent reads and writes to the depth buffer during the rasterization phase, which can be costly in terms of time and resources.

Innovation Solution

Implement a hybrid rendering technique that combines TBR with immediate mode rendering, using partial display lists and on-chip memory for transformed primitives, and incorporate coarse depth test logic to reduce the number of depth buffer reads and writes by performing coarse depth testing before full resolution hidden surface removal.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If tile-based rendering is used to reduce memory bandwidth requirements, then off-chip memory bandwidth is reduced, but frequent reads and writes to the depth buffer during rasterization still consume significant time and resources

Engineering Contradiction:
Improvememory bandwidth usageVSAvoiddepth buffer processing time
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

The patent performs a coarse depth test on primitives before full rasterization to preliminarily identify and discard hidden primitives. This preliminary action reduces the number of primitives that require subsequent depth buffer reads and writes during the rasterization phase, thereby reducing the time and resources spent on depth buffer operations while maintaining the memory bandwidth benefits of tile-based rendering

Inventive Principle:
Principle #10Preliminary action

2Manufacturing precision

If all primitives are processed through full resolution hidden surface removal, then rendering accuracy is maintained, but processing time increases due to unnecessary depth testing on hidden primitives

Engineering Contradiction:
Improverendering accuracyVSAvoidrendering throughput
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent segments the depth testing process into two stages: a coarse depth test stage that quickly identifies hidden primitives, and a fine depth test stage that performs full resolution hidden surface removal only on visible primitives. This segmentation allows the system to maintain rendering accuracy for visible primitives while significantly improving rendering throughput by eliminating unnecessary processing of hidden primitives

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by performing only a coarse depth test initially rather than the full resolution depth test on all primitives. This partial testing approach allows the system to quickly filter out hidden primitives with minimal processing, then apply the complete depth testing process only to the subset of primitives that are likely to be visible, thereby improving overall rendering productivity

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP3754613B1Coarse depth test in graphics processing systems
Publication Date: 2026.03.18 IMAGINATION TECH LTD
  • EP3754613B1 patent drawingFigure 1
  • EP3754613B1 patent drawingFigure 2
  • EP3754613B1 patent drawingFigure 3

AI summary

Methods and coarse depth test logic for performing coarse depth testing in a graphics processing system in which a rendering space is divided into a plurality of tiles. The method comprises: receiving a set of one or more primitives related to one of the plurality of tiles; obtaining a depth range for the tile, the depth range for the tile identifying a depth range based on primitives previously processed for the tile; and for at least one primitive in the set of one or more primitives: making a determination, based on the depth range for the tile, as to whether all or a portion of the primitive is hidden in the tile; in response to making a determination that at least a portion of the primitive is not hidden in the tile, making a determination, based on the depth range for the tile, as to whether the primitive, or one or more primitive fragments generated therefrom, has better depth than the primitives previously processed for the tile according to a depth compare mode; and in response to making a determination that the primitive or a primitive fragment has better depth than the primitives previously processed for the tile, identifying the primitive or the primitive fragment as not requiring a read of a depth buffer to perform full resolution depth testing, wherein if a determination is made that at least a portion of the primitive is hidden in the tile, full resolution depth testing is not performed on at least that portion of the primitive in respect of the tile.