FPGA DSP Block for Machine Learning and Signal Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing integrated circuit devices struggle to efficiently perform both digital signal processing and machine learning tasks due to circuitry that is well-suited for one application being poorly suited for the other.

Innovation Solution

A digital signal processing (DSP) block is integrated into programmable logic devices, such as FPGAs, which can perform arithmetic operations like multiply-accumulate operations, supporting both fixed and floating-point numbers, and allowing for flexible implementation of machine learning and digital signal processing algorithms, with features like virtual bandwidth expansion and bounded box floating-point arithmetic.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If particular circuitry is designed for digital signal processing, then digital signal processing performance is improved, but machine learning performance deteriorates

Engineering Contradiction:
Improvedigital signal processing performanceVSAvoidmachine learning capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The DSP block is designed to perform multiple functions including both digital signal processing operations (multiply, accumulate, add) and machine learning operations (matrix multiplication, convolution). The same hardware resources can be dynamically configured and programmed to execute different algorithms through software control, allowing a single circuit to serve both DSP and ML workloads effectively.

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

Solution Approach 2:

The circuitry incorporates dynamic configuration capabilities where the functionality of the DSP block can be changed at runtime through programming. The same physical hardware can switch between different operational modes (DSP mode, ML mode, different precision modes) based on the task requirements, enabling adaptability without sacrificing specialized performance.

Inventive Principle:
Principle #15Dynamics

2Productivity

If particular circuitry is designed for machine learning, then machine learning performance is improved, but digital signal processing performance deteriorates

Engineering Contradiction:
Improvemachine learning performanceVSAvoiddigital signal processing capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The DSP block implements a universal architecture that can be programmed to perform both machine learning operations (such as matrix multiplication for neural networks) and traditional digital signal processing tasks. The same multipliers, accumulators, and adders are used for both purposes, eliminating the need for separate dedicated circuitry.

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

Solution Approach 2:

The circuit allows dynamic reconfiguration between ML and DSP modes through software control. The same hardware resources can be allocated to different algorithms based on runtime requirements, enabling the system to optimize for ML performance when needed while maintaining full DSP capability when required.

Inventive Principle:
Principle #15Dynamics

3Use of energy by stationary object

If fixed-point arithmetic is used, then power consumption is reduced, but precision deteriorates

Engineering Contradiction:
Improvepower consumptionVSAvoidarithmetic precision
Core Design Contradiction:
Use of energy by stationary objectVSMeasurement precision

Solution Approach 1:

The DSP block supports multiple precision modes that can be selected based on application requirements. Users can configure the arithmetic precision (e.g., 16-bit, 32-bit fixed-point, or floating-point) to balance between power consumption and precision needs. The hardware is designed to efficiently handle different precision levels without requiring completely separate circuitry for each mode.

Inventive Principle:
Principle #35Parameter changes

4Measurement precision

If floating-point arithmetic is used, then precision is improved, but power consumption increases

Engineering Contradiction:
Improvearithmetic precisionVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by stationary object

Solution Approach 1:

The system allows dynamic selection between fixed-point and floating-point arithmetic modes based on the computational requirements of the current task. For power-sensitive applications, fixed-point mode provides sufficient precision with lower power consumption. For applications requiring higher dynamic range and precision, floating-point mode can be activated, with the hardware optimized to handle the increased computational complexity efficiently.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20250291596A1FPGA Specialist Processing Block for Machine Learning
Publication Date: 2025.09.18 ALTERA CORP
  • US20250291596A1 patent drawing
  • US20250291596A1 patent drawing
  • US20250291596A1 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.