Allocation of FPGA DSP-macros in multi-process high-level synthesis systems

High-Level Synthesis (HLS) is a single process synthesis method that has shown to produce very good results compared to hand coded RTL, especially for DSP-related applications. At the same time FPGAs are reaching capacities that allow entire systems to be implemented on them. Most of these systems are also DSP-related and make intensive use of the FPGAs' embedded hardmacros (e.g. DSP-blocks). This works presents a method to efficiently allocate DSP-macros in multi-process systems created using HLS in order to minimize the overall area. The proposed method calculates the area sensitivity of each process when its multiply-accumulate (MAC) operations are either mapped onto the FPGA's hardmacro or its configurable resources and allocates the available hardmacros across all processes. Experimental results show that our method creates very good results compared to the optimal solution at a negligible running time.

[1]  Stephen Neuendorffer,et al.  FPGA Pipeline Synthesis Design Exploration Using Module Selection and Resource Sharing , 2007, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[2]  Philippe Coussy,et al.  High-Level Synthesis: from Algorithm to Digital Circuit , 2008 .

[3]  Daniel Gajski,et al.  Component selection for high-performance pipelines , 1996, IEEE Trans. Very Large Scale Integr. Syst..

[4]  Jason Cong,et al.  Optimality study of resource binding with multi-Vdds , 2006, 2006 43rd ACM/IEEE Design Automation Conference.

[5]  P. Cundall,et al.  A discrete numerical model for granular assemblies , 1979 .

[6]  Jason Cong,et al.  Pattern-based behavior synthesis for FPGA resource reduction , 2008, FPGA '08.

[7]  Jason Helge Anderson,et al.  Impact of FPGA architecture on resource sharing in high-level synthesis , 2012, FPGA '12.

[8]  Philippe Coussy,et al.  High-Level Synthesis , 2008 .

[9]  Salil Raje,et al.  Generalized resource sharing , 1997, 1997 Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[10]  Bertrand Le Gal,et al.  High-level synthesis for the design of FPGA-based signal processing systems , 2009, 2009 International Symposium on Systems, Architectures, Modeling, and Simulation.