Tile-Based Alpha Blending Cache Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics composition engines require excessive memory reads and writes when blending multiple layers, leading to inefficiencies in rendering processes due to their sequential and memory-intensive nature.

Innovation Solution

Divide images into tiles that fit on a single cache line, successively fetch and blend source tiles with a destination tile, and update the destination tile in the cache until all corresponding tiles are processed, then write it to memory, reducing memory operations through intelligent cache management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If sequential blending of multiple layers is performed using prior composition engines, then the compositing process can be completed, but excessive memory reads and writes are required leading to poor rendering efficiency

Engineering Contradiction:
Improverendering efficiencyVSAvoidmemory operations time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent divides images into tiles that fit on a single cache line, processing multiple layers by blending source tiles with a destination tile in the cache. This segmentation allows the system to work with smaller data units that can be efficiently cached, reducing the need for excessive memory reads and writes during sequential blending operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a cache as an intermediary between memory and the blending operation. By keeping the destination tile in the cache and only reading source tiles into the cache as needed, the system reduces direct memory accesses. The cache acts as a mediator that holds frequently accessed data, thereby reducing memory operations time and improving rendering efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If traditional composition engines blend layers sequentially and write results to memory, then compositing is achieved, but memory bandwidth is excessively consumed

Engineering Contradiction:
Improvecompositing speedVSAvoidmemory bandwidth consumption
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

By segmenting images into tiles that fit on a single cache line, the patent enables more efficient memory access patterns. The destination tile remains in the cache while source tiles are read in sequentially, reducing the total quantity of data that needs to be transferred to and from memory compared to traditional approaches that write intermediate results to memory after each blending operation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The cache serves as an intermediary storage that reduces memory bandwidth consumption. By keeping the destination tile in the cache and only loading source tiles into the cache as needed, the system minimizes the quantity of data transferred over the memory bus, thereby reducing memory bandwidth consumption while maintaining compositing speed.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of time

If multiple source tiles are read and blended with a destination tile in the cache, then memory reads and writes are reduced, but the system complexity increases

Engineering Contradiction:
Improvememory operations timeVSAvoidcache management complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent segments images into tiles that fit on a single cache line, which simplifies cache management by ensuring that each tile can be handled as a discrete unit. This segmentation approach, combined with the strategy of keeping the destination tile in the cache and reading source tiles as needed, reduces memory operations time while the modular tile structure actually simplifies rather than complicates the blending process.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9349213B2Tile-based accumulative multi-layer alpha blending systems and methods
Publication Date: 2016.05.24 VIVANTE CORP
  • US9349213B2 patent drawing
  • US9349213B2 patent drawing
  • US9349213B2 patent drawing

AI summary

A system for blending includes a memory device, cache, cache controller, and a graphics processing device. The graphics processing device performs blending of a plurality of source images into a single destination image. The graphics processing device performs a method including, for each tile position in the plurality of source images, requesting tiles for the tile position form each source image, blending the tiles individually with a destination tile and overwriting the destination tile in the cache with the result of the blending after each individual blending. The destination tile may be written to memory after each source tile for the each tile position has been blended with the destination tile, such as in response to a cache controller determining that the destination tile is a least recently used (LRU) entry in the cache.