Deferred Coverage Mask Generation in Graphics Rasterization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing 3-D rendering architectures face challenges in scaling to handle complex graphics applications without increasing power consumption and silicon die area, leading to reduced fabrication yield and performance penalties.

Innovation Solution

Implementing a deferred coverage mask generation method in the raster stage of a graphics processor, which includes performing a bounding box test and generating a combined coverage mask that is divided into sub-portions for parallel rasterization, reducing the scope of pixel coverage and minimizing the need for re-creation, storage, and transmission of coverage masks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional methods of increasing 3-D rendering performance (such as increasing clock speed) are used, then rendering performance is improved, but power consumption increases

Engineering Contradiction:
Improverendering performanceVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent divides the coverage mask generation process into segments: early rasterization components generate initial coverage masks, which are then refined by later components. This segmentation allows parallel processing of different mask portions, improving performance without proportionally increasing power consumption of a single component.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary coverage mask generation in early rasterization components before the primitive is fully processed. By generating initial coverage masks early and refining them later, the system avoids the need for high-power final-stage processing, thus improving performance while controlling power consumption.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If large numbers of parallel execution units are incorporated, then rendering performance is improved, but integrated circuit die size increases

Engineering Contradiction:
Improverendering performanceVSAvoidintegrated circuit die size
Core Design Contradiction:
ProductivityVSArea of stationary object

Solution Approach 1:

The patent segments the rasterization pipeline into multiple components that process different portions of coverage masks in parallel. This allows the system to achieve parallel processing performance without requiring a single large array of execution units, thus improving performance while controlling die size.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a temporal dimension to parallel processing by having different rasterization components operate at different stages of the pipeline. Instead of all processing happening simultaneously in space (requiring large die area), processing is distributed across time and pipeline stages, achieving parallel performance with reduced die size.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Productivity

If large numbers of parallel execution units are incorporated, then rendering performance is improved, but fabrication yield decreases

Engineering Contradiction:
Improverendering performanceVSAvoidfabrication yield
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent divides the processing into multiple independent rasterization components, each handling specific portions of the workload. This segmentation creates modular units that are easier to fabricate with high yield, while still achieving overall high performance through their coordinated parallel operation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses multiple copies of simplified rasterization components rather than one complex execution unit. Each component is a replicated, simpler unit that is easier to manufacture with high yield, and multiple copies work together to achieve the performance of a single complex unit.

Inventive Principle:
Principle #26Copying

4Productivity

If coverage masks are re-created, stored, and transmitted through multiple components, then rendering operations can be performed, but power consumption and device complexity increase

Engineering Contradiction:
Improverendering operation capabilityVSAvoidcoverage mask processing complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent performs preliminary coverage mask generation in early rasterization components and passes these masks forward through the pipeline. Later components refine and update these existing masks rather than creating new ones from scratch, reducing the computational complexity and power consumption of mask processing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent combines the coverage mask generation and refinement operations into a unified pipeline where early components generate initial masks and later components refine them. This merging eliminates the need for separate, redundant mask creation operations, reducing device complexity and power consumption while maintaining rendering capability.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8537168B1Method and system for deferred coverage mask generation in a raster stage
Publication Date: 2013.09.17 NVIDIA CORP
  • US8537168B1 patent drawing
  • US8537168B1 patent drawing
  • US8537168B1 patent drawing

AI summary

A method and system for deferred coverage mask generation in a raster stage of a graphics processor. The method includes receiving a graphics primitive for rasterization in a raster stage of a graphics processor and performing a bounding box test on the graphics primitive to define a bounding rectangle for the graphics primitive. A combined coverage mask is then generated after the completion of the bounding box test. The combined coverage mask indicates a plurality of pixels that are covered by the graphics primitive. The combined coverage mask is divided into a plurality of sub-portions. The sub-portions are allocated to a plurality of raster components to determine sub-pixel coverage for the sub-portions.