• DocumentCode
    3182204
  • Title

    Using Dynamic Signal-Tracing to Debug Compiler-Optimized HLS Circuits on FPGAs

  • Author

    Goeders, Jeffrey ; Wilton, Steve J. E.

  • Author_Institution
    Dept. of Comput. & Electr. Eng., Univ. of British Columbia, Vancouver, BC, Canada
  • fYear
    2015
  • fDate
    2-6 May 2015
  • Firstpage
    127
  • Lastpage
    134
  • Abstract
    High-level synthesis (HLS) for FPGA designs has received considerable attention in recent years. To make this design methodology mainstream, improved debugging technologies are essential. Ideally, a user should be able to debug their design using the original source code, without detailed knowledge of the underlying hardware, while the circuit executes in-situ. Although recent work has made progress toward this goal, existing solutions are unable to provide visibility into circuits that have been heavily optimized by the compiler. HLS compilers typically perform many optimizations, including moving variable values out of memories and into registers distributed throughout the design. Debugging such circuits typically requires either understanding the hardware and probing the appropriate RTL level registers, or ignoring these variables while debugging the design, neither of which is desirable. In this work we present a new signal-tracing technique, specifically designed for circuits that have been optimized by an HLS tool. Information is extracted from the HLS process to determine which signals are relevant to record each cycle. We automatically embed circuitry which dynamically selects the relevant signals, cycle-by-cycle, and records them into on-chip memories. In addition, we explore techniques to balance tracing between cycles to further improve memory efficiency. For each 100Kb of memory allocated to trace buffers, our technique can, on average, record and replay 4322 lines of source code, versus 141 lines using traditional tracing methods.
  • Keywords
    field programmable gate arrays; high level synthesis; program compilers; program debugging; FPGA design; HLS compilers; compiler-optimized HLS circuits debugging; debugging technologies; design methodology; dynamic signal-tracing; field programmable gate array; high-level synthesis; Debugging; Field programmable gate arrays; Hardware; Optimization; Registers; Schedules; Software; Debug; Debugging; FPGA; HLS; Hardware Debug; High-Level Synthesis; Optimize; Optimized HLS; Trace Buffers;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Field-Programmable Custom Computing Machines (FCCM), 2015 IEEE 23rd Annual International Symposium on
  • Conference_Location
    Vancouver, BC
  • Type

    conf

  • DOI
    10.1109/FCCM.2015.25
  • Filename
    7160056