Configurable Filtering Module for GPU Texture Sampling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional GPUs with fixed filtering modules are limited in their ability to perform operations beyond 3D graphics, leading to inefficient hardware usage and increased loading on the programmable shading module when used in applications like image identification and machine learning, due to their inability to flexibly adjust filter equations and access multiple texels in a single process.

Innovation Solution

A GPU with a configurable filtering module that allows users to select from various filter equations and adjust parameters such as sampling window size, sample count, weight values, and offset, enabling operations beyond 3D graphics and improving hardware efficiency by allowing flexible filtering processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a fixed filtering module is used in the GPU, then the hardware structure is simple and stable, but the adaptability to different applications (image identification, machine learning) is poor

Engineering Contradiction:
Improveadaptability to different applicationsVSAvoidfiltering module complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The filtering module is designed to perform multiple functions by supporting different filter equations (bi-linear, tri-linear, anisotropic filtering, and user-defined filters). The same hardware structure can be configured to execute various filtering operations by loading different filter coefficients and parameters, making it universal across 3D graphics, image identification, and machine learning applications.

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

Solution Approach 2:

The filtering module allows dynamic configuration of filter parameters including sampling window size, sample count, weight values, and offset. Users can adjust these parameters at runtime to optimize filtering performance for different applications and scenarios, transforming a static filtering module into a dynamic, adaptable system.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If the programmable shading module is used to perform filtering operations, then the adaptability is improved, but the operational loading increases and hardware efficiency decreases

Engineering Contradiction:
Improvefiltering operation flexibilityVSAvoidhardware efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The filtering function is extracted from the programmable shading module and implemented as a dedicated filtering module with specialized hardware. This extraction allows filtering operations to be performed in hardware with higher efficiency while reducing the operational loading on the programmable shading module, which can focus on other computational tasks.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

A dedicated filtering module acts as an intermediary between the texture memory and the programmable shading module. This intermediate hardware component handles filtering operations efficiently, reducing the computational burden on the programmable shading module while maintaining flexibility through configurable filter parameters.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If only one texel is accessed per operation clock in the fixed filtering module, then the hardware is simple to operate, but the productivity and bandwidth utilization are low

Engineering Contradiction:
Improvetexel access speedVSAvoidfiltering operation simplicity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The filtering module dynamically configures the sampling window size and sample count based on the filtering requirements. This allows the hardware to access multiple texels in parallel when needed (improving productivity) while maintaining simple operation modes for basic filtering tasks, achieving a balance between speed and simplicity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes operational parameters such as sampling window size, sample count, and weight values to optimize texel access performance. By adjusting these parameters, the filtering module can process multiple texels per operation clock when high productivity is needed, while maintaining operational simplicity through standardized parameter sets for common filtering scenarios.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8610737B2Graphic processing unit (GPU) with configurable filtering module and operation method thereof
Publication Date: 2013.12.17 NAT TAIWAN UNIV
  • US8610737B2 patent drawing
  • US8610737B2 patent drawing
  • US8610737B2 patent drawing

AI summary

A graphic processing unit (GPU) with a configurable filtering module (CFU) and an operation method thereof are presented. The graphic processing unit comprises a memory module and a configurable filtering module. The memory module stores at least one texture image. The configurable filtering module, connected to the memory module, comprises a plurality of filter equations, from which a filter equation is selected. A plurality of pixel points are sampled from the texture image. Each sampled pixel point is set with a weight value respectively. Each sampled pixel point with a weight value corresponding thereto is substituted into the selected filter equation to perform an operational process to acquire an operated value. Thereby, the user can decide the operation method of the GPU by selecting an appropriate filter equation and setting adjustable parameters in the filter equation.