Combined Rearrangement Arithmetic Instruction for SIMD Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data processing systems face bottlenecks due to data dependencies between rearrangement and arithmetic operations, leading to performance stalls and increased costs from costly data-forwarding logic, particularly in SIMD processing systems.

Innovation Solution

A combined rearrangement arithmetic instruction is introduced, allowing processing circuitry to perform both rearrangement and SIMD arithmetic operations efficiently, using a size parameter to configure the rearrangement operation, thereby reducing the need for separate instructions and data forwarding logic.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If separate rearrangement and arithmetic operations are used, then data processing can be performed in parallel, but data dependency causes processing bottlenecks and performance stalls

Engineering Contradiction:
Improveprocessing throughputVSAvoidprocessing stall time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent combines rearrangement and arithmetic operations into a single unified operation executed by the SIMD processing logic. This merging eliminates the data dependency bottleneck between separate operations, allowing the processor to complete both tasks in one execution cycle without stalling, thereby improving throughput while reducing processing stall time

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If data forwarding logic is provided to reduce bottlenecks, then processing efficiency improves, but implementation cost increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidforwarding logic complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

By merging rearrangement and arithmetic operations into a single unified operation, the patent eliminates the need for complex data forwarding logic that would be required to bridge separate operations. The unified operation processes data internally without requiring external forwarding mechanisms, thereby improving efficiency while reducing device complexity

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent extracts the data forwarding requirement entirely by designing the SIMD logic to perform both rearrangement and arithmetic in a single self-contained operation. This removes the need for separate forwarding logic components, simplifying the overall system architecture while maintaining high processing efficiency

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If multiple instructions are used for rearrangement and arithmetic operations, then operational flexibility is maintained, but code density decreases

Engineering Contradiction:
Improveoperational flexibilityVSAvoidinstruction code density
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges rearrangement and arithmetic operations into a single unified instruction that the SIMD processing logic can execute. This consolidation improves code density by reducing the number of instructions required, while the instruction retains operational flexibility by accepting various input configurations and producing different rearrangement patterns based on the specific arithmetic operation performed

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8255446B2Apparatus and method for performing rearrangement and arithmetic operations on data
Publication Date: 2012.08.28 ARM LTD
  • US8255446B2 patent drawing
  • US8255446B2 patent drawing
  • US8255446B2 patent drawing

AI summary

An apparatus and method are provided for performing rearrangement operations and arithmetic operations on data. The data processing apparatus has processing circuitry for performing Single Instruction Multiple Data (SIMD) processing operations and scalar processing operations, a register bank for storing data and control circuitry responsive to program instructions to control the processing circuitry to perform data processing operations. The control circuitry is arranged to responsive to a combined rearrangement arithmetic instruction to control the processing circuitry to perform a rearrangement operation and at least one SIMD arithmetic operation on a plurality of data elements stored in the register bank. The rearrangement operation is configurable by a size parameter derived at least in part from the register bank. The size parameter provides an indication of a number of data elements forming a rearrangement element for the purposes of the rearrangement operation. The associated method involves controlling processing circuitry to perform a rearrangement operation and at least one SIMD arithmetic operation in response to a combined rearrangement arithmetic instruction and providing the scalar logic size parameter to configure the rearrangement operation. A computer program product is also provided comprising at least one combined rearrangement arithmetic instruction.