Configurable Multi-Tap Filter Memory Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current configurable vertical filters in image processing have inefficient RAM usage due to underutilization, especially when handling different scaling factors and pixel formats, leading to wasted die space in integrated circuit designs.

Innovation Solution

A configurable multi-tap filter that includes a parallel-to-serial formatter to transform pixel streams into component streams, a configurable memory with multiple channels to store these streams efficiently, and a multi-tap filter to process pixel components, allowing for flexible configurations as two-tap, three-tap, or five-tap filters for RGB or YUV pixel streams.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a configurable vertical filter uses a single large memory to support multiple filter configurations, then the filter can handle different scaling factors and pixel formats, but the memory becomes underutilized in certain configurations leading to wasted die space

Engineering Contradiction:
ImproveconfigurabilityVSAvoidRAM usage efficiency
Core Design Contradiction:
Adaptability or versatilityVSLoss of substance

Solution Approach 1:

The memory is divided into multiple separate line stores (first line store, second line store, third line store) instead of using a single large memory. Each line store can be independently configured and utilized based on the specific filter requirements, allowing the system to allocate only the necessary memory resources for each configuration rather than provisioning for the maximum possible configuration.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically configures the number of line stores and their connections based on the required filter type (two-tap, three-tap, or five-tap). The configurable vertical filter can reconfigure which line stores are active and how they are connected to the filter logic, optimizing memory utilization for each specific operation rather than maintaining a fixed large memory structure.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If the line store width is designed to support the widest pixel format, then all pixel formats can be processed, but narrower formats result in unused memory width and wasted die space

Engineering Contradiction:
Improvepixel format supportVSAvoiddie space
Core Design Contradiction:
Adaptability or versatilityVSArea of stationary object

Solution Approach 1:

The line store width is dynamically adjusted based on the pixel format being processed. The configurable vertical filter can reconfigure the line store width to match the specific pixel format requirements (e.g., narrower width for RGB, wider width for YUV422), eliminating the need to always provision for the maximum width and reducing die space waste when processing narrower formats.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Different portions of the memory system are configured with different widths appropriate for the specific pixel format being processed. Rather than uniformly provisioning all memory for the widest format, the system locally adapts the memory width to match the actual data width requirements, optimizing die space utilization.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS7617267B1Configurable multi-tap filter
Publication Date: 2009.11.10 NVIDIA CORP
  • US7617267B1 patent drawing
  • US7617267B1 patent drawing
  • US7617267B1 patent drawing

AI summary

One embodiment of a configurable multi-tap filter includes a parallel-to-serial formatter configured to transform a pixel stream into a first component pixel stream and a second component pixel stream, a configurable memory that includes a first channel and a second channel, wherein pixels from the first component pixel stream are stored in the first channel and pixels from the second component pixel stream are stored in the second channel, and a multi-tap filter configured to process a component of a pixel from the first channel and a like component of a pixel from the second channel. In various embodiments, the configurable multi-tap filter may be implemented as a two-tap, three-tap or five-tap filter and may be used to process either RGB or YUV pixels streams. One advantage of the disclosed configurable multi-tap filter is that it uses memory more efficiently than prior art filters.