Pattern Caching for Graphics Tile Memory Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional graphics processing schemes are inefficient as they require reading and writing entire tiles to memory even when all pixels have the same value, leading to suboptimal system throughput and high energy consumption.

Innovation Solution

Implementing a pattern caching method where a pattern caching bit and tile pattern bits are used to identify tiles with common pixel values, allowing for storage of these values in cache memory, reducing memory access to a single pixel access when applicable.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional graphics processing reads and writes entire tiles to memory, then memory access is simplified, but memory bandwidth is wasted and energy consumption increases

Engineering Contradiction:
Improvememory access bandwidthVSAvoidenergy consumption
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent extracts only the necessary pixel data from tile memory by identifying uniform tiles through pattern bits. When a tile is determined to be uniform (all pixels have the same value), the system extracts a single representative pixel value instead of the entire tile, thereby reducing memory access bandwidth consumption and energy usage.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies local quality optimization by treating uniform tiles differently from non-uniform tiles. Pattern caching bits and tile pattern bits enable the system to identify regions with uniform pixel values and apply a specialized caching strategy locally to those regions, while maintaining standard processing for non-uniform regions.

Inventive Principle:
Principle #3Local quality

2Productivity

If conventional graphics processing reads entire tiles before operations, then processing is straightforward, but system throughput decreases due to unnecessary data transfer

Engineering Contradiction:
Improvesystem throughputVSAvoiddata transfer time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent extracts only the essential pixel information needed for processing by using pattern caching bits to identify uniform tiles. When uniformity is detected, the system extracts a single pixel value representative of the entire tile, eliminating the time-consuming transfer of redundant data and improving system throughput.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent performs preliminary analysis of tile uniformity using pattern caching bits and tile pattern bits before executing the main graphics operations. This preliminary action identifies uniform tiles in advance, allowing the system to prepare optimized access patterns and avoid unnecessary data transfer during the main processing phase.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If pattern caching is implemented to store common pixel values, then memory access bandwidth improves, but device complexity increases due to additional caching bits and logic

Engineering Contradiction:
Improvememory access bandwidthVSAvoidcaching mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces pattern caching bits and tile pattern bits as intermediary elements between the tile memory and processing units. These intermediaries store metadata about tile uniformity, enabling the system to make intelligent decisions about data access without requiring complex real-time analysis during processing.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates simplified copies of uniform tile data in the form of single representative pixel values stored in cache memory. Instead of copying entire tiles, the system copies only the essential information needed for processing, reducing the burden on the caching mechanism while maintaining performance benefits.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8797343B1Methods and apparatuses for processing cached image data
Publication Date: 2014.08.05 SYNAPTICS INC
  • US8797343B1 patent drawing
  • US8797343B1 patent drawing
  • US8797343B1 patent drawing

AI summary

Methods, software, and apparatuses for graphics processing, including caching pixel data of one or more tiles of a graphics surface. Methods generally include setting a caching bit corresponding to the surface, setting tile pattern bits corresponding to tiles in the surface, and when the caching bit is active, storing one or more pixel values in a cache memory. When at least one tile contains pixels having the same value for at least one predetermined parameter, the caching bit and the corresponding tile pattern bits may be active. Apparatuses generally include a pixel memory, a cache memory, and a controller including logic configured to reserve the caching bit, tile pattern bits, and same pixel values in cache memory when the caching bit is active.