Tile-Based Graphics Primitive Lists With Linked Memory Blocks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Tile-based graphics processing systems face inefficiencies in memory allocation and management due to varying memory requirements for primitive lists, which can lead to complex analysis or insufficient memory allocation, impacting overall system performance.

Innovation Solution

The use of a linked list data structure for storing primitive lists, where memory is allocated as needed, allowing storage across multiple blocks of memory space with an indication of the next block's location at the start of each block, facilitating efficient and flexible memory management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If memory is allocated for primitive lists based on maximum possible requirements, then memory availability is improved, but memory usage efficiency deteriorates

Engineering Contradiction:
Improvememory availabilityVSAvoidmemory usage efficiency
Core Design Contradiction:
Quantity of substanceVSLoss of energy

Solution Approach 1:

The patent divides the primitive list storage into multiple separate blocks in memory rather than using a single large block. Each block can be independently allocated and managed, allowing the system to allocate only the necessary memory blocks based on actual primitive list sizes, thus avoiding allocation of excessive memory while ensuring sufficient capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic memory allocation where the size and number of memory blocks for primitive lists are adjusted based on actual runtime requirements rather than being fixed in advance. This allows the system to optimize memory usage by allocating blocks only when needed and in the exact quantities required, resolving the contradiction between ensuring memory availability and maintaining usage efficiency.

Inventive Principle:
Principle #15Dynamics

2Loss of energy

If complex analysis is performed to determine memory allocation, then memory usage efficiency is improved, but system complexity deteriorates

Engineering Contradiction:
Improvememory usage efficiencyVSAvoidsystem complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent implements a self-service memory allocation mechanism where the graphics processing system automatically manages its own primitive list memory allocation without requiring complex external analysis or control. The system independently determines when and how much memory to allocate based on its own operational state, simplifying the overall system architecture while maintaining efficient memory usage.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent performs preliminary allocation of memory blocks in a simple, standardized manner before they are actually needed for storing primitive lists. This preliminary preparation eliminates the need for complex analysis at runtime, as the memory infrastructure is already in place and can be activated on-demand based on straightforward criteria.

Inventive Principle:
Principle #10Preliminary action

3Loss of energy

If insufficient memory is allocated for primitive lists, then memory usage efficiency is improved, but rendering performance deteriorates

Engineering Contradiction:
Improvememory usage efficiencyVSAvoidrendering performance
Core Design Contradiction:
Loss of energyVSProductivity

Solution Approach 1:

By segmenting primitive list storage into multiple allocatable blocks, the system ensures that sufficient memory capacity is available for rendering performance while only paying for the memory that is actually allocated and used. This segmentation allows the system to scale memory allocation to match rendering requirements without permanently reserving excessive memory, thus maintaining both efficiency and performance.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12555181B2Graphics processing
Publication Date: 2026.02.17 ARM LTD
  • US12555181B2 patent drawing
  • US12555181B2 patent drawing
  • US12555181B2 patent drawing

AI summary

When preparing and storing a primitive list in a tile-based graphics processing system, a first block of memory space is allocated for storing the primitive list. When there is insufficient space in the first block of memory space to store all of the graphics primitives for the primitive list, a next block of memory space to be used for storing the primitive list is allocated for storing the primitive list. An indication of the location in memory of the allocated next block of memory space is written at the beginning of the first block of memory space.