Enhanced source-level instrumentation for FPGA in-system debug of High-Level Synthesis designs

High-Level Synthesis (HLS) has emerged as a leading technology to reduce the design time and complexity that is associated with reconfigurable systems. In order to maintain the productivity promised by HLS, it is important that the designer can debug the system in the context of the high-level code. Currently, software simulations offer a quick and familiar method to target logic and syntax bugs, while software/hardware co-simulations are useful for synthesis verification. However, to analyze the behaviour of the circuit as it is running, the user is forced to understand waveforms from the synthesized design.

[1]  Yu Ting Chen,et al.  A Survey and Evaluation of FPGA High-Level Synthesis Tools , 2016, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[2]  Robert J. Halstead,et al.  High-Level Language Tools for Reconfigurable Computing , 2015, Proceedings of the IEEE.

[3]  Loïc Lagadec,et al.  A design approach to automatically synthesize ANSI-C assertions during High-Level Synthesis of hardware accelerators , 2014, 2014 IEEE International Symposium on Circuits and Systems (ISCAS).

[4]  Jason Helge Anderson,et al.  LegUp: An open-source high-level synthesis tool for FPGA-based processor/accelerator systems , 2013, TECS.

[5]  Bertrand Le Gal,et al.  Assertion support in high-level synthesis design flow , 2011, FDL 2011 Proceedings.

[6]  Dan Quinlan,et al.  The ROSE Source-to-Source Compiler Infrastructure , 2011 .

[7]  Alan D. George,et al.  High-Level Synthesis of In-Circuit Assertions for Verification, Debugging, and Timing Analysis , 2011, Int. J. Reconfigurable Comput..

[8]  Jason Helge Anderson,et al.  The Effect of Compiler Optimizations on High-Level Synthesis-Generated Hardware , 2015, TRETS.

[9]  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..

[10]  Brad L. Hutchings,et al.  Using source-to-source compilation to instrument circuits for debug with High Level Synthesis , 2015, 2015 International Conference on Field Programmable Technology (FPT).

[11]  Steven J. E. Wilton,et al.  Signal-Tracing Techniques for In-System FPGA Debugging of High-Level Synthesis Circuits , 2017, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[12]  Deming Chen,et al.  Hybrid Quick Error Detection (H-QED): Accelerator validation and debug using high-level synthesis principles , 2015, 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[13]  David F. Bacon,et al.  FPGA Programming for the Masses , 2013, ACM Queue.

[14]  Jason Helge Anderson,et al.  Source-level debugging for FPGA high-level synthesis , 2014, 2014 24th International Conference on Field Programmable Logic and Applications (FPL).

[15]  Karl S. Hemmert,et al.  Source level debugger for the Sea Cucumber synthesizing compiler , 2003, 11th Annual IEEE Symposium on Field-Programmable Custom Computing Machines, 2003. FCCM 2003..

[16]  Steven J. E. Wilton,et al.  Using Dynamic Signal-Tracing to Debug Compiler-Optimized HLS Circuits on FPGAs , 2015, 2015 IEEE 23rd Annual International Symposium on Field-Programmable Custom Computing Machines.

[17]  Loïc Lagadec,et al.  A design approach to automatically generate on-chip monitors during high-level synthesis of hardware accelerator , 2014, GLSVLSI '14.

[18]  Brad L. Hutchings,et al.  Using Source-Level Transformations to Improve High-Level Synthesis Debug and Validation on FPGAs , 2015, FPGA.