Bambu: A modular framework for the high level synthesis of memory-intensive applications

This paper presents bambu, a modular framework for research on high-level synthesis currently under development at Politecnico di Milano. It can accept most of C constructs without requiring any three-state for their implementations by exploiting a novel and efficient memory architecture. It also allows the integration of floating-point units and thus it can deal with a wide range of data types. Finally, it allows to easily customize the synthesis flow (e.g., transformation passes, constraints, options, synthesis scripts) through an XML file and it automatically generates test-benches and validates the results against the corresponding software execution, supporting both ASIC and FPGA technologies.

[1]  Giovanni De Micheli,et al.  Resolution, optimization, and encoding of pointer variables for thebehavioral synthesis from C , 2001, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[2]  Jason Cong,et al.  xPilot: A Platform-Based Behavioral Synthesis System , 2005 .

[3]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[4]  Marco D. Santambrogio,et al.  On the automatic integration of hardware accelerators into FPGA-based embedded systems , 2012, 22nd International Conference on Field Programmable Logic and Applications (FPL).

[5]  Fabrizio Ferrandi,et al.  A design methodology to implement memory accesses in High-Level Synthesis , 2011, 2011 Proceedings of the Ninth IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[6]  Eric Senn,et al.  ∂ GAUT: A High-Level Synthesis Tool for DSP applications , 2008 .

[7]  Pier Luca Lanzi,et al.  Ant Colony Heuristic for Mapping and Scheduling Tasks and Communications on Heterogeneous Embedded Systems , 2010, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[8]  Nikil D. Dutt,et al.  Coordinated parallelizing compiler optimizations and high-level synthesis , 2004, TODE.

[9]  Jason Helge Anderson,et al.  LegUp: high-level synthesis for FPGA-based processor/accelerator systems , 2011, FPGA '11.

[10]  Florent de Dinechin,et al.  Designing Custom Arithmetic Data Paths with FloPoCo , 2011, IEEE Design & Test of Computers.

[11]  Wayne H. Wolf,et al.  The future of multiprocessor systems-on-chips , 2004, Proceedings. 41st Design Automation Conference, 2004..

[12]  Hiroyuki Tomiyama,et al.  Proposal and Quantitative Analysis of the CHStone Benchmark Program Suite for Practical C-based High-level Synthesis , 2009, J. Inf. Process..