DocumentCode
3738045
Title
Using Round-Robin Tracepoints to debug multithreaded HLS circuits on FPGAs
Author
Jeffrey Goeders;Steven J.E. Wilton
Author_Institution
Department of Computer and Electrical Engineering, The University of British Columbia, Vancouver, Canada
fYear
2015
Firstpage
40
Lastpage
47
Abstract
High-level synthesis (HLS) for FPGA designs has gained significant traction in recent years. A key component in its adoption is allowing users to debug their hardware systems in the context of the original source code. This is becoming even more challenging as modern HLS tools enable the user to provide multithreaded source code for synthesis to hardware. Although recent work has begun to tackle source-level debugging of HLS circuits, none have addressed doing this in multithreaded circuits. In such systems it may be necessary to observe the behaviour of multiple threads for long run times in order to locate obscure or non-deterministic bugs and performance issues. In this paper we present a trace-based debugging architecture which records values from user-selected tracepoints into on-chip memories during circuit execution. The recorded values can be provided to the user as a cycle-accurate timeline of events to aid them in debugging multithreaded HLS circuits. We present a novel technique to allow multiple hardware threads to share trace buffers, effectively increasing the execution trace that can be recorded. This is accomplished by analyzing the control and data flow graph to determine the maximum rates at which each thread can encounter tracepoints, using this information to select which threads can share trace buffers, and automatically generating round-robin circuitry to arbitrate access to the buffers. Using this technique we are able to obtain an average of 4X improvement in trace length for an 8 thread system. This provides users with a longer timeline of execution and greater visibility into the execution of multithreaded HLS circuits.
Keywords
"Instruction sets","Debugging","Hardware","Field programmable gate arrays","Computer bugs","System-on-chip"
Publisher
ieee
Conference_Titel
Field Programmable Technology (FPT), 2015 International Conference on
Type
conf
DOI
10.1109/FPT.2015.7393128
Filename
7393128
Link To Document