FPGA DSP Block with Flexible Precision for AI and DSP Workloads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current integrated circuit devices struggle to efficiently perform calculations for both machine learning and digital signal processing applications, as circuitry optimized for one domain is often not well-suited for the other, leading to suboptimal performance and resource utilization.

Innovation Solution

The development of a digital signal processing (DSP) block on field-programmable gate arrays (FPGAs) that can perform multiply-accumulate operations with flexible precision and power management, allowing for virtual bandwidth expansion and efficient weight loading techniques such as parallel, cascade, and port weight loading, enabling simultaneous processing of multiple data sets.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If circuitry is optimized for machine learning operations, then AI computational performance is improved, but suitability for digital signal processing deteriorates

Engineering Contradiction:
ImproveAI computational performanceVSAvoidsuitability for digital signal processing
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The DSP block is designed to perform both machine learning operations (multiply-accumulate for neural networks) and digital signal processing operations (filtering, transformation) using the same hardware resources. The block accepts different input data formats and operation types, allowing it to adapt to different application domains without requiring separate specialized circuitry for each function.

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

Solution Approach 2:

The DSP block implements dynamic precision management where the numerical precision (bit-width) of operations can be adjusted based on the specific application requirements. This allows the same hardware to operate at different precision levels (e.g., 8-bit, 16-bit, 32-bit) to optimize performance for either AI workloads requiring high precision or DSP tasks that may use lower precision, thereby achieving both high AI performance and broad adaptability.

Inventive Principle:
Principle #15Dynamics

2Productivity

If circuitry is optimized for digital signal processing operations, then DSP performance is improved, but suitability for machine learning operations deteriorates

Engineering Contradiction:
ImproveDSP operational performanceVSAvoidsuitability for machine learning operations
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The same DSP block that is optimized for digital signal processing operations also handles machine learning workloads by configuring the multiply-accumulate units to process neural network computations. The block's ability to perform sequential multiplications and accumulations serves both traditional DSP filtering operations and AI inference/training operations, eliminating the need for separate specialized hardware.

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

Solution Approach 2:

The DSP block allows dynamic adjustment of operational parameters including precision settings, accumulation depth, and data formatting to match the requirements of different machine learning models and DSP algorithms. This parameter flexibility enables the hardware to achieve high performance in both domains by optimizing its operational characteristics for the current workload type.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If specialized circuitry is used for AI operations, then computational density is improved, but adaptability for other applications deteriorates

Engineering Contradiction:
Improvecomputational densityVSAvoidadaptability for other applications
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The DSP block provides high computational density through dedicated multiply-accumulate units while maintaining universality by accepting various input formats and operation types. The same high-density hardware that accelerates AI operations can be reconfigured for digital signal processing, embedded control, and other computational tasks, avoiding the resource waste of application-specific design.

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

Solution Approach 2:

The DSP block is divided into functional segments (multiplier units, accumulator units, data input interfaces, result output interfaces) that can be independently configured and combined. This segmentation allows the high-density computational core to serve multiple purposes by reconfiguring how the segmented units are connected and utilized, achieving both high AI performance and broad adaptability.

Inventive Principle:
Principle #1Segmentation

4Measurement precision

If high precision operations are performed, then calculation accuracy is improved, but power consumption increases

Engineering Contradiction:
Improvecalculation accuracyVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The DSP block implements dynamic precision management where the bit-width of operations and data storage can be adjusted based on the specific computational requirements. For tasks requiring high accuracy, the block operates at higher precision (e.g., 32-bit), while for less demanding operations, it reduces precision (e.g., 8-bit or 16-bit), thereby optimizing the trade-off between calculation accuracy and power consumption for each workload.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The block performs precision operations only to the extent necessary for each specific task rather than maintaining maximum precision for all operations continuously. This partial action approach applies higher precision only when required by the algorithm or data characteristics, reducing overall power consumption while maintaining adequate accuracy for the given application.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11907719B2FPGA specialist processing block for machine learning
Publication Date: 2024.02.20 ALTERA CORP
  • US11907719B2 patent drawing
  • US11907719B2 patent drawing
  • US11907719B2 patent drawing

AI summary

The present disclosure describes a digital signal processing (DSP) block that includes a plurality of columns of weight registers and a plurality of inputs configured to receive a first plurality of values and a second plurality of values. The first plurality of values is stored in the plurality of columns of weight registers after being received. Additionally, the DSP block includes a plurality of multipliers configured to simultaneously multiply each value of the first plurality of values by each value of the second plurality of values.