Processor Reduction Unit for Vector Multiply Reduce Operations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional digital data processors, particularly DSPs and multimedia processors, face challenges in performing vector multiply and reduce operations with guaranteed sequential semantics, as existing techniques like PMADD and VMSUM do not ensure the same results as sequential individual instructions, and fail to provide the necessary range of functionality for DSP and multimedia applications.

Innovation Solution

A processor architecture with a reduction unit coupled between arithmetic units and an accumulator unit, enabling vector multiply and reduce operations with guaranteed sequential semantics, including operations like vector multiply and reduce add with wrap-around or saturation, ensuring computational results match those from sequential individual instructions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If parallel vector multiply and reduce operations are implemented, then productivity is improved, but reliability deteriorates because sequential semantics are not guaranteed

Engineering Contradiction:
Improveoperation speedVSAvoidsequential semantics guarantee
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces an intermediary mechanism (control logic and selection circuitry) between the parallel arithmetic units and the accumulator that ensures sequential semantics are maintained. This intermediary monitors and controls the parallel operations to guarantee they produce results equivalent to sequential execution, thus resolving the contradiction between improved productivity and maintained reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If conventional parallel operations (PMADD, VMSUM) are used, then productivity is improved, but adaptability deteriorates due to limited functionality range

Engineering Contradiction:
Improveoperation speedVSAvoidfunctionality range
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent implements a universal vector operation unit that can perform multiple types of operations (multiply-add, multiply-subtract, multiply-accumulate, reduce operations) within a single parallel architecture. This multi-functional design maintains high productivity while significantly improving adaptability to different DSP and multimedia application requirements.

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

3Reliability

If sequential individual instructions are used for vector operations, then reliability is improved (sequential semantics guaranteed), but productivity deteriorates

Engineering Contradiction:
Improvesequential semantics guaranteeVSAvoidoperation speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the vector operation into multiple parallel arithmetic units that can simultaneously process different elements, while maintaining overall sequential semantics through controlled coordination. This segmentation enables parallel execution (improving productivity) while preserving the guarantee that results match sequential execution (maintaining reliability).

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS7797363B2Processor having parallel vector multiply and reduce operations with sequential semantics
Publication Date: 2010.09.14 QUALCOMM INC
  • US7797363B2 patent drawing
  • US7797363B2 patent drawing
  • US7797363B2 patent drawing

AI summary

A processor comprises a plurality of arithmetic units, an accumulator unit, and a reduction unit coupled between the plurality of arithmetic units and the accumulator unit. The reduction unit receives products of vector elements from the arithmetic units and a first accumulator value from the accumulator unit, and processes the products and the first accumulator value to generate a second accumulator value for delivery to the accumulator unit. The processor implements a plurality of vector multiply and reduce operations having guaranteed sequential semantics, that is, operations which guarantee that the computational result will be the same as that which would be produced using a corresponding sequence of individual instructions.