Color Compression in Multi-Sampled Graphics Pipeline

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics rendering engines face performance limitations due to high memory bandwidth requirements, especially when handling multi-sampled pixels, as they need to process and store multiple samples for each pixel, which is costly in terms of computational resources and data bandwidth.

Innovation Solution

A graphics pipeline architecture that processes blended color data of multi-sampled pixels by generating shaded pixels in reduced form and using a color raster operations unit to accumulate and compress data, allowing for reduced data path processing and bandwidth usage by exploiting the redundancy of sibling samples with the same color value.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multi-sampling is used to improve image quality, then anti-aliasing performance is improved, but memory bandwidth requirements increase

Engineering Contradiction:
Improveimage qualityVSAvoidmemory bandwidth
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent changes the data representation parameter from per-sample color values to per-pixel color values with a coverage mask. By storing a single color value per pixel along with a bitmask indicating which samples contributed to that color, the system reduces memory bandwidth requirements while maintaining anti-aliasing quality. This parameter transformation allows the same visual output with significantly reduced data transfer costs.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent extracts and separates the color information from the sample information. Instead of storing full color values for each sample, it extracts the unique color values and associates them with coverage masks. This extraction allows redundant color data to be eliminated while preserving the essential visual information needed for anti-aliasing.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If multiple fully shaded samples are stored for each pixel, then anti-aliasing quality is improved, but computational processing cost increases

Engineering Contradiction:
Improveimage qualityVSAvoidcomputational processing cost
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies partial action by only performing full shading computations when necessary. Instead of always computing multiple fully shaded samples, the system uses coverage masks to indicate which pixels need full shading and which can use reduced representations. This partial computation approach reduces overall processing cost while maintaining quality where needed.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent performs preliminary actions by pre-computing coverage masks and identifying reducible pixels before the main rendering pass. This allows the system to optimize the rendering process by processing only the necessary pixels at full resolution, rather than processing all pixels uniformly at high cost.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If frame buffer stores per-sample color data, then rendering accuracy is maintained, but data bandwidth and memory usage increase

Engineering Contradiction:
Improverendering accuracyVSAvoiddata bandwidth
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent merges multiple per-sample color values into a single per-pixel color value when the samples are reducible (i.e., when they all contribute the same color). This merging is guided by coverage masks that track which samples have identical color contributions. The result is reduced data bandwidth while maintaining rendering accuracy through proper blending of the merged color values.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent changes the storage parameter from per-sample color values to per-pixel color values with coverage information. This parameter change fundamentally transforms how color data is represented in the frame buffer, reducing the quantity of data stored while preserving the accuracy needed for proper anti-aliased rendering through the coverage mask mechanism.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7692659B1Color-compression using automatic reduction of multi-sampled pixels
Publication Date: 2010.04.06 NVIDIA CORP
  • US7692659B1 patent drawing
  • US7692659B1 patent drawing
  • US7692659B1 patent drawing

AI summary

One embodiment of the present invention sets forth a technique for improving graphics rendering efficiency by processing pixels in a compressed format whenever possible within a multi-sampling graphics pipeline. Each geometric primitive is rasterized into fragments, corresponding to screen space pixels covered at least partially by the geometric primitive. Fragment coverage represents the pixel area covered by the geometric primitive and determines the weighted contribution of a fragment color to the corresponding screen space pixel. Samples associated with a given fragment are called sibling samples and have the same color value. The property of sibling samples having the same color value is exploited to compress and process multiple samples, thereby reducing the size of the associated logic and the amount of data written to and read from the frame buffer.