Flexible Vector Floating Point Unit with Crossbar Routing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current microprocessors and digital signal processor chips face limitations in floating point operation performance due to insufficient support for a wide variety of operation types and slowed vector operations caused by required data permutations.

Innovation Solution

A flexible vector arithmetic unit with multiple interconnected floating point multipliers and adders, capable of performing SIMD, FFT Butterfly, affine, and dual linear interpolation operations, along with the use of mini-float formats to conserve memory and extend dynamic range, is introduced.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional micro-architectures with separate integer and floating point units are used, then the device complexity is manageable, but the floating point operation performance is limited and cannot support a wide variety of operation types

Engineering Contradiction:
Improvesupport for variety of operation typesVSAvoidarithmetic unit structure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal arithmetic unit that can perform multiple floating point operations (addition, subtraction, multiplication, division, square root, reciprocal, reciprocal square root) using a common hardware structure. The unit uses configurable operand routing and a single operational code input to select different operations, eliminating the need for separate dedicated units for each operation type while maintaining high performance.

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

Solution Approach 2:

The arithmetic unit employs dynamic operand routing where the source and destination of data flow are configurable based on the operation being performed. The unit can dynamically select which operands to use as inputs and how to route them through the computational logic, allowing the same hardware to adapt to different operation types without requiring static dedicated paths for each operation.

Inventive Principle:
Principle #15Dynamics

2Reliability

If data permutations are performed before or after floating point operations, then the correctness of vector operations is ensured, but the vector operation speed is necessarily slowed down

Engineering Contradiction:
Improvecorrectness of vector operationsVSAvoidvector operation speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent performs data permutation and reordering operations as part of the operand preparation stage, before the actual floating point computation begins. By pre-organizing the data in the correct format and order, the unit eliminates the need for post-computation permutation, allowing the computational units to work continuously without idle cycles waiting for data reordering.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent combines the data permutation logic with the operand routing mechanism of the arithmetic unit. The same configurable switching fabric that routes operands to the computational units also performs the necessary reordering and permutation, merging two functions into a single integrated system rather than requiring separate permutation stages before and after computation.

Inventive Principle:
Principle #5Merging (Combining)

3Measurement precision

If full precision floating point formats are used, then the calculation accuracy is maintained, but the memory usage increases and dynamic range is limited

Engineering Contradiction:
Improvefloating point accuracyVSAvoidmemory usage
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent applies different precision formats to different parts of the computation based on local requirements. Critical intermediate results that require high precision for accurate final results are maintained in full precision, while less critical values can use reduced precision formats. This allows the system to optimize memory usage by applying precision only where locally required rather than uniformly across all data.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The arithmetic unit supports configurable precision parameters that can be adjusted based on the specific computation being performed. The unit can operate in different precision modes (full precision, reduced precision, integer modes) and can dynamically change the parameter settings to match the requirements of different algorithms, balancing accuracy requirements against memory constraints.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9104510B1Multi-function floating point unit
Publication Date: 2015.08.11 SAMSUNG ELECTRONICS CO LTD
  • US9104510B1 patent drawing
  • US9104510B1 patent drawing
  • US9104510B1 patent drawing

AI summary

Arithmetic units and methods for floating point processing are provided. In exemplary embodiments, data paths to and from multiple multipliers and adders are flexibly combined through crossbars and alignment units to allow a wide range of mathematical operations, including affine and SIMD operations. The micro-architecture for a high-performance flexible vector floating point arithmetic unit is provided, which can perform a single-cycle throughput complex multiply-and-accumulate operation, as well as a Fast Fourier Transform (radix-2 decimation-in-time) Butterfly operation.