Multipumping Flexible DSP Blocks for Resource Reduction on Xilinx FPGAs

Bajaj Ronak, Suhaib A. Fahmy

Research output: Contribution to journalArticlepeer-review

14 Scopus citations

Abstract

For complex datapaths, resource sharing can help reduce area consumption. Traditionally, resource sharing is applied when the same resource can be scheduled for different uses in different cycles, often resulting in a longer schedule. Multipumping is a method whereby a resource is clocked at a frequency that is a multiple of the surrounding circuit, thereby offering multiple executions per global clock cycle. This allows a single resource to be shared among multiple uses in the same cycle. This concept maps well to modern field-programmable gate arrays (FPGAs), where hard macro blocks are typically capable of running at higher frequencies than most designs implemented in the logic fabric. While this technique has been demonstrated for static resources, modern digital signal processing (DSP) blocks are flexible, supporting varied operations at runtime. In this paper, we demonstrate multipumping for resource sharing of the flexible DSP48E1 macros in Xilinx FPGAs. We exploit their dynamic programmability to enable resource sharing for the full set of supported DSP block operations, and compare this to multipumping only multipliers and DSP blocks with fixed configurations. The proposed approach saves on average 48% DSP blocks at a cost of 74% more LUTs, effectively saving 30% equivalent LUT area and is feasible for the majority of designs, in which clock frequency is typically below half the maximum supported by the DSP blocks.
Original languageEnglish (US)
Pages (from-to)1471-1482
Number of pages12
JournalIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Volume36
Issue number9
DOIs
StatePublished - Sep 1 2017
Externally publishedYes

ASJC Scopus subject areas

  • Computer Graphics and Computer-Aided Design
  • Software
  • Electrical and Electronic Engineering

Fingerprint

Dive into the research topics of 'Multipumping Flexible DSP Blocks for Resource Reduction on Xilinx FPGAs'. Together they form a unique fingerprint.

Cite this