Shared Texture Engine Descriptor Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern computer graphics processors face inefficiencies in texture processing due to the complexity and redundancy of managing multiple textures and shader operations, which necessitates a more effective sharing of texture processing hardware to reduce costs and improve performance.

Innovation Solution

The system employs a shared texture engine with logic blocks and buffers for preloading and managing texture descriptor data, allowing for efficient prefetching and dynamic loading of texture data within the graphics pipeline, utilizing a prefetch buffer to store descriptors and an arbiter to manage requests between preload and dependent read operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If exclusive texture processing hardware is provided for each preload and dependent read texturing requirement, then texturing efficiency is improved, but hardware redundancy and cost increase

Engineering Contradiction:
Improvetexturing efficiencyVSAvoidhardware redundancy
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges multiple texture processing functions into a single shared texture processing unit. Different logic blocks (first logic block for preload texturing, second logic block for dependent read texturing) share the same texture processing hardware, eliminating redundant dedicated circuits while maintaining the ability to handle both texturing modes efficiently

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The shared texture processing unit is designed to perform multiple functions: it can process preload texture data from the first logic block and dependent read texture data from the second logic block. The unit universally handles both texturing operations by receiving requests from multiple sources and processing them through a common pipeline, reducing hardware duplication

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

2Productivity

If multiple dedicated texture processing circuits are used to handle complex texture operations, then texturing performance is improved, but the percentage of hardware gates increases significantly

Engineering Contradiction:
Improvetexturing performanceVSAvoidhardware gates
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent combines multiple texture processing circuits into a shared unit that serves multiple logic blocks. Instead of having separate dedicated circuits for each logic block, a single texture processing unit handles requests from both the first logic block (preload) and second logic block (dependent read), significantly reducing the total gate count while maintaining performance

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The texture processing system is segmented into distinct functional components: a shared texture processing unit, multiple logic blocks with different functionalities, and a management unit. This segmentation allows efficient resource allocation where the shared unit handles the complex processing while the logic blocks manage specific data flows, optimizing the distribution of hardware resources

Inventive Principle:
Principle #1Segmentation

3Ease of operation

If texture descriptor management is handled with specialized resources for each context, then context switching efficiency is improved, but resource overhead and complexity increase

Engineering Contradiction:
Improvecontext switching efficiencyVSAvoidspecialized resources
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent introduces a texture descriptor management unit that acts as an intermediary between multiple logic blocks and the texture processing unit. This management unit handles context switching and descriptor allocation centrally, receiving requests from different logic blocks and managing the shared texture descriptors efficiently without requiring each logic block to have its own specialized management resources

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS7999819B2Systems and methods for managing texture descriptors in a shared texture engine
Publication Date: 2011.08.16 VIA TECH INC
  • US7999819B2 patent drawing
  • US7999819B2 patent drawing
  • US7999819B2 patent drawing

AI summary

Provided are methods for managing texture data. The methods include preloading a first plurality of texture descriptor values from a memory location in a first buffer located in a first logic block, wherein the first buffer is further configured to receive data corresponding to non-texture functions performed in the first logic block and preloading the first plurality of texture descriptor values from a memory location into a second buffer in a second logic block if the first buffer is full. The methods further include utilizing the first plurality of texture descriptor values, within the second logic block, to perform a shader calculation, and loading, dynamically, a second plurality of texture descriptor values from memory into the first buffer, wherein the first logic block requires additional data. Additionally, the methods can include writing, if the first buffer is full, the second plurality of texture descriptor values over a portion of the first plurality of texture descriptor values.