Template based synthesis for high performance computing

Although FPGA based implementation of software can give us not only higher performance but also energy efficient computing, efficient implementation algorithms as hardware and as software can be significantly different. Typical high-level synthesis methods may not concentrate on this issue, as they are targeting general hardware designs. In this paper performance directed synthesis targeting throughput based computations rather than traditional high-level synthesis techniques is proposed based on “template based” approaches. With templates, given data flow graphs are automatically converted into the ones for high performance with FPGA implementation by using SAT-based automatic refinement methods. Several experimental case studies with the proposed synthesis methods are presented in order to demonstrate the usefulness of the proposed approach.

[1]  Masahiro Fujita,et al.  Efficient signature-based sub-circuit matching , 2015, 2015 IFIP/IEEE International Conference on Very Large Scale Integration (VLSI-SoC).

[2]  Ryan Kastner,et al.  Composable, parameterizable templates for high-level synthesis , 2016, 2016 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[3]  Masahiro Fujita,et al.  SAT-Based Automatic Rectification and Debugging of Combinational Circuits with LUT Insertions , 2012, Asian Test Symposium.

[4]  Kurt Keutzer DAGON: Technology Binding and Local Optimization by DAG Matching , 1987, DAC.

[5]  Sumit Gulwani,et al.  Oracle-guided component-based program synthesis , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[6]  Bettina Just,et al.  Integer Relations Among Algebraic Numbers , 1989, MFCS.

[7]  Paolo Ienne,et al.  Enriching C-based High-Level Synthesis with parallel pattern templates , 2016, 2016 International Conference on Field-Programmable Technology (FPT).

[8]  Paul Kutler,et al.  A Polynomial Time, Numerically Stable Integer Relation Algorithm , 1998 .

[9]  Allen Taflove,et al.  Computational Electrodynamics the Finite-Difference Time-Domain Method , 1995 .

[10]  Sumit Gulwani,et al.  Dimensions in program synthesis , 2010, Formal Methods in Computer Aided Design.

[11]  Samuel Williams,et al.  Optimization of sparse matrix-vector multiplication on emerging multicore platforms , 2009, Parallel Comput..

[12]  Masahiro Fujita,et al.  Automatically adjusting system level designs after RTL/gate-level ECO , 2016, 2016 IEEE International High Level Design Validation and Test Workshop (HLDVT).