Tile-Based Frame Buffer Dirty Pixel Tracking for Windowing Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Tile-based graphics systems with deferred rendering and double-buffering are inefficient in supporting windowing displays due to the high number of memory accesses required for modifying pixel values, leading to reduced speed and increased energy consumption.

Innovation Solution

The method involves processing drawing commands to form new pixel values, storing them in a tile memory, generating dirty pixel data to identify altered pixels, and writing only those new values to the frame buffer memory, while preserving unaltered pixel values, using this data to control writes and reduce unnecessary memory access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If tile-based graphics systems use deferred rendering and double-buffering to modify pixel values, then memory access efficiency is improved, but the number of memory accesses increases significantly when supporting windowing displays

Engineering Contradiction:
Improveenergy consumptionVSAvoidspeed
Core Design Contradiction:
Use of energy by moving objectVSProductivity

Solution Approach 1:

The frame buffer is divided into multiple tiles, and dirty pixel data is generated at the tile level to track which pixels have been modified. This segmentation allows the system to process and write only the modified portions of the frame buffer rather than the entire frame, reducing unnecessary memory accesses while maintaining the benefits of tile-based rendering for energy efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Dirty pixel data acts as an intermediary mechanism between the tile-based rendering system and the frame buffer memory. This intermediary structure stores information about modified pixels, enabling the system to selectively write only to affected regions in the frame buffer, thereby reducing the number of memory accesses required when supporting windowing display operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If all pixel values are written to frame buffer memory in tile-based systems, then completeness of image update is ensured, but unnecessary memory access increases energy consumption

Engineering Contradiction:
Improveimage update completenessVSAvoidenergy consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system extracts only the necessary information (dirty pixel data indicating modified pixels) from the complete frame buffer and uses this extracted data to determine which pixel values need to be written back. This extraction approach ensures that image update completeness is maintained for modified regions while avoiding unnecessary memory accesses to unchanged regions, thereby reducing energy consumption.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of treating the entire frame buffer uniformly, the system applies local quality by generating and processing dirty pixel data at the tile level. This allows selective writing of pixel values only in regions where changes occurred, ensuring complete updates where needed while skipping unnecessary writes in unchanged regions, thus optimizing energy efficiency without compromising image update completeness.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8803898B2Forming a windowing display in a frame buffer
Publication Date: 2014.08.12 ARM LTD
  • US8803898B2 patent drawing
  • US8803898B2 patent drawing
  • US8803898B2 patent drawing

AI summary

A windowing display using deferred drawing commands operates by processing the drawing commands that write to a tile 22 of a frame buffer 30 to form one or more new pixel values are stored within a tile memory 40. Dirty pixel data indicative of which pixels within the tile memory are dirty pixels storing new pixel values and which pixels within the tile memory are clean pixels not storing new pixel values is also formed. In dependence upon the dirty pixel data, the new pixel value stored within the tile memory are written to the frame buffer memory. Pixels stored within the frame buffer memory corresponding to clean pixels within the tile memory remain unaltered as they are not written.