Unified Memory Mapping for Scalar Vector Data Transposition

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing graphic engine interfaces face performance drops due to the need for additional instructions and hardware for data transposition between vector and scalar data types, with 'scalar machines' requiring dedicated transposition engines and 'vector machines' not being suitable for high-efficiency systems due to lower average input data dimensions.

Innovation Solution

An apparatus comprising a memory module and a data accessing module that uses specific writing mapping information for scalar and vector data types to efficiently store and retrieve data sets, allowing simultaneous support for scalar and vector operations without additional hardware transposition engines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a scalar machine operates data inside a GPU shader, then it can communicate with external data paths, but it requires a dedicated transposition engine which drops performance and efficiency

Engineering Contradiction:
Improvecommunication capability with external data pathsVSAvoiddata processing efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The memory module is designed to accept both scalar data sets (N=1) and vector data sets (N>1) through the same interface and storage structure. The data accessing module uses unified mapping information to write and read both data types, eliminating the need for separate transposition hardware while maintaining compatibility with external scalar data paths.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The memory module acts as an intermediary between the GPU shader core and external data paths. By storing data in a unified format that can represent both scalar and vector types, it mediates the data exchange without requiring additional transposition engines, thus maintaining high processing efficiency while enabling communication with external systems.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If a vector machine operates data inside a GPU shader, then it eliminates the need for data transposition hardware, but it is not suitable for systems with lower average input data dimensions

Engineering Contradiction:
Improvehardware structure simplicityVSAvoidcompatibility with low-dimensional data
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The system dynamically adapts to different data dimensions by using the same vector storage structure for both scalar (N=1) and vector (N>1) data sets. The data accessing module dynamically selects appropriate mapping information based on the input data type, allowing the hardware to efficiently handle varying data dimensions without structural changes.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter N (number of components) to represent different data types. By allowing N to vary from 1 (scalar) to any positive integer (vector), the same hardware structure can handle both low-dimensional and high-dimensional data efficiently, maintaining versatility while keeping the hardware structure simple.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If dedicated transposition hardware is added for data transformation, then data type compatibility is improved, but system complexity and performance overhead increase

Engineering Contradiction:
Improvedata type compatibilityVSAvoidhardware structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The memory module and data accessing module are designed with universal functionality to handle both scalar and vector data types natively. The mapping information structure can represent both data types, and the same write/read operations apply to both, eliminating the need for separate transposition hardware and reducing overall system complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP2911052B1Apparatus for mutual-transposition of scalar and vector data sets and related method
Publication Date: 2018.01.03 MEDIATEK INC
  • EP2911052B1 patent drawingFigure 1
  • EP2911052B1 patent drawingFigure 2
  • EP2911052B1 patent drawingFigure 3

AI summary

An apparatus (100, 400) for processing a plurality of data sets is disclosed, wherein one data set of the plurality of data sets includes N components and has a data type of one of a contains type and a vector type, wherein N is a positive integer number. The apparatus (100, 400) includes a memory module (104, 404) and a data accessing module (102, 402). The memory module (104, 404) comprises N memory units configured to store the plurality of data sets. The data accessing module (102, 402) is configured to write the data set into the memory module (104, 404) according to a write data index corresponding to the data set and one of a first writing mapping information and a second writing mapping information, wherein the first writing mapping information is employed when the data type is one of the scalar and the vector type and the second writing mapping information is employed when the data type is the other of the scalar and the vector type.