GPU Border Color Handling via External Memory Pointers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing units face inefficiencies due to the need for substantial dedicated memory and cache resources for border color storage, which increases hardware costs and gate count, especially as processing capabilities and complexity increase, requiring a more efficient handling of border color data.

Innovation Solution

A graphics processing unit design that includes a border color register and a texture cache controller, which populates and retrieves border colors from external memory, storing them in a texel record format and aligning them at 128-bit intervals, reducing the need for on-chip border color caches and improving gate count efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If border color data is stored in dedicated on-chip memory or cache structures, then border color access speed is improved, but hardware cost and gate count increase substantially

Engineering Contradiction:
Improveborder color access speedVSAvoidhardware cost and gate count
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent extracts border color data storage from dedicated on-chip memory structures and relocates it to external system memory. The border color register stores pointers to border color data in external memory, and the texture cache controller retrieves border color data on-demand from external memory, eliminating the need for substantial dedicated on-chip border color cache resources.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent makes the external system memory serve multiple functions: storing texture data, border color data, and other graphics processing data. The texture cache controller is designed to handle both texture data and border color data retrieval from the same external memory resource, reducing the need for separate dedicated memory structures.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If more border color formats are supported, then adaptability is improved, but memory space requirements increase

Engineering Contradiction:
Improveborder color format supportVSAvoidmemory space
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent stores border color data in external memory in multiple different formats (such as 32-bit, 64-bit, 128-bit formats) to accommodate different shader requirements. The texture cache controller is configured to retrieve border color data in the appropriate format based on the specific shader instance requirements, allowing flexible format selection without pre-allocating maximum format storage for all cases.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system dynamically selects and retrieves border color data in different formats based on runtime requirements of shader instances. The border color register and texture cache controller work together to fetch border color data in the specific format needed for each rendering operation, rather than statically allocating storage for all possible formats.

Inventive Principle:
Principle #15Dynamics

3Device complexity

If border color data is stored in external memory, then on-chip resource usage is reduced, but data access time may increase

Engineering Contradiction:
Improveon-chip resource usageVSAvoiddata access time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-fetching border color data from external memory into the texture cache before it is actually needed for rendering. The texture cache controller proactively retrieves border color data based on predicted shader requirements, reducing the impact of external memory access latency during critical rendering operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The texture cache acts as an intermediary buffer between external memory and the shader processing units. Border color data is first loaded into the texture cache from external memory, and then quickly accessed by shader instances, reducing the direct access time to external memory and smoothing out latency variations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7880745B2Systems and methods for border color handling in a graphics processing unit
Publication Date: 2011.02.01 VIA TECH INC
  • US7880745B2 patent drawing
  • US7880745B2 patent drawing
  • US7880745B2 patent drawing

AI summary

Systems and methods for border color handling in a graphics processing unit are disclosed. In one embodiment, the system includes a border color register that stores at least one border color pointer. A border color pointer indicates an address in an external memory at which border color information is located. Border color information is populated within external memory and retrieved by the texture cache controller if the texture filter unit requires a border color for texture mapping operations.