Image Processing Device Tile-Based Pixel Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current GPU architectures face inefficiencies in processing speed when calculating pixel colors, even with increased parallel processing, due to suboptimal allocation of pixels to parallel processing groups and inefficient memory access.

Innovation Solution

The proposed solution involves an image processing apparatus with a controller that allocates pixels to parallel processing groups in a manner that minimizes the number of groups required, optimizing memory access by grouping pixels based on their location within tiles, allowing for more efficient parallel calculation and reduced memory bottlenecks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the parallel degree is increased to improve processing speed, then more processing units are utilized, but memory access efficiency deteriorates due to suboptimal pixel allocation

Engineering Contradiction:
Improveprocessing speedVSAvoidmemory access efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The display area is divided into multiple tiles, and each tile is further divided into sub-tiles. This segmentation allows pixels to be grouped by spatial location, enabling more efficient memory access patterns when processing parallel pixel data, thus resolving the contradiction between increased parallelism and memory access efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Pixels from the same tile are merged into the same parallel processing group. This merging strategy ensures that pixels requiring similar memory access patterns are processed together, maintaining memory access efficiency even as the overall parallel degree increases across multiple tiles

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If pixels are allocated to multiple parallel processing groups to increase parallelism, then processing capacity is improved, but the number of groups increases leading to reduced efficiency

Engineering Contradiction:
Improveparallel processing capacityVSAvoidnumber of processing groups
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies different allocation strategies to different spatial regions. Pixels within the same tile are allocated to the same processing group, while pixels from different tiles may be allocated to different groups. This local quality approach minimizes the number of processing groups needed while maintaining high parallel processing capacity

Inventive Principle:
Principle #3Local quality

3Reliability

If data for calculating color at multiple positions is stored in memory, then complete color calculation capability is achieved, but processing time increases due to memory access bottlenecks

Engineering Contradiction:
Improvecolor calculation completenessVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent pre-organizes pixel data into tile-based groups before processing. By anticipating which pixels will need to access similar memory locations and grouping them in advance, the system reduces memory access time during the actual color calculation process, thus reducing overall processing time while maintaining complete color calculation capability

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3553750B1Image processing device, image processing method, and program
Publication Date: 2023.08.02 SONY INTERACTIVE ENTERTAINMENT LLC
  • EP3553750B1 patent drawingFigure 1
  • EP3553750B1 patent drawingFigure 2
  • EP3553750B1 patent drawingFigure 3

AI summary

In order to improve a processing speed for calculating a color of a pixel using data for calculating the color regarding each position in an area, an image processing apparatus determines, for each partial area into which a display area is divided, multiple pixel groups including pixels overlapping a two-dimensional area; allocates the pixels belonging to the multiple pixel groups to any one of multiple processing groups that are each capable of including pixels whose number is smaller than or equal to a predetermined parallel number; calculates in parallel each color of pixels belonging to the processing group on the basis of the color calculation information stored in the memory; and outputs image data on the basis of the calculated color. In the allocation, for each of the pixel groups, the pixels are allocated to at least one of the multiple processing groups such that the number of processing groups to which the pixels belonging to the pixel group are allocated is a necessary minimum number.