Cascading DSP Slices for FPGA Speed and Power

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing programmable logic devices (PLDs) are inefficient in implementing digital signal processing (DSP) functions, consuming more power and resources than necessary, and are not optimized for speed and flexibility.

Innovation Solution

The implementation of modular DSP circuitry with cascading DSP slices, where each slice has dedicated communication lines and can be dynamically reconfigured to perform various mathematical operations, reducing reliance on general-purpose interconnect resources and enabling faster, more flexible DSP performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If general-purpose FPGA resources (CLBs and programmable interconnect) are used to implement DSP functions, then flexibility is maintained, but power consumption and resource usage increase significantly

Engineering Contradiction:
ImproveflexibilityVSAvoidpower consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The invention divides the FPGA into specialized DSP slices that contain dedicated multiplier and adder circuits. These slices segment the general-purpose fabric into dedicated DSP processing units, allowing efficient implementation of digital signal processing functions while reducing the need to use power-hungry general-purpose logic elements.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If general-purpose FPGA resources are used to implement DSP functions, then adaptability is maintained, but device area consumption increases

Engineering Contradiction:
ImproveflexibilityVSAvoidFPGA real estate
Core Design Contradiction:
Adaptability or versatilityVSArea of stationary object

Solution Approach 1:

The FPGA architecture is segmented into dedicated DSP slices that efficiently pack multiplier and adder circuits into compact units. This segmentation allows complex DSP functions to be implemented in less area compared to using general-purpose logic elements, freeing up valuable FPGA real estate for other purposes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention merges the multiplier and adder functions into integrated DSP slices with dedicated interconnect. By combining these functions in specialized hardware rather than using separate general-purpose logic elements, the overall area requirement is reduced while maintaining full adaptability for various DSP algorithms.

Inventive Principle:
Principle #5Merging (Combining)

3Speed

If dedicated DSP circuitry is implemented, then speed performance improves, but flexibility is reduced

Engineering Contradiction:
Improvespeed performanceVSAvoidflexibility
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

The DSP slices are designed with universal multipliers and adders that can be configured to perform various DSP operations including multiplication, addition, subtraction, and accumulation. The dedicated circuitry maintains high speed performance while the configurable nature provides flexibility for different algorithms through programming rather than hardware reconfiguration.

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

Data Source

PatentUS7567997B2Applications of cascading DSP slices
Publication Date: 2009.07.28 XILINX INC
  • US7567997B2 patent drawing
  • US7567997B2 patent drawing
  • US7567997B2 patent drawing

AI summary

In one embodiment an IC is disclosed which includes a plurality of cascaded digital signal processing slices, wherein each slice has a multiplier coupled to an adder via a multiplexer and each slice has a direct connection to an adjoining slice; and means for configuring the plurality of digital signal processing slices to perform one or more mathematical operations, via, for example, opmodes. This IC allows for the implementation of some basic math functions, such as add, subtract, multiply and divide. Many other applications may be implemented using the one or more DSP slices, for example, accumulate, multiply accumulate (MACC), a wide multiplexer, barrel shifter, counter, and folded, decimating, and interpolating FIRs to name a few.