TY - GEN
T1 - AutoSLIDE
T2 - 24th IEEE International Symposium on Field-Programmable Custom Computing Machines, FCCM 2016
AU - Yang, Liwei
AU - Gurumani, Swathi
AU - Chen, Deming
AU - Rupnow, Kyle
N1 - Publisher Copyright:
© 2016 IEEE.
PY - 2016/8/16
Y1 - 2016/8/16
N2 - Improved quality of results from high level synthesis (HLS) tools have led to their increased adoption in hardware design. However, functional verification of HLS-produced designs remains a major challenge. Once a bug is exposed, designers must backtrace thousands of signals and simulation cycles to determine the underlying cause. The challenge is further exacerbated with HLS-produced non-human-readable RTL. In this paper, we present AutoSLIDE, an automated cross-layer verification framework that instruments critical operations, detects discrepancies between software and hardware execution, and traces the suspect datapath tree to identify bug source for the detected discrepancy. AutoSLIDE also maintains mappings between RTL datapath operations, LLVM-IR operations, and C/C++ source code to precisely pinpoint the root-cause of bugs to the exact line/operation in source code, substantially reducing user effort to localize bugs. We demonstrate the effectiveness by detecting and localizing bugs from former versions of the CHStone benchmark suite. Furthermore, we demonstrate the efficiency of AutoSLIDE, with low overhead in HLS time (27%), software trace gathering (10%), and significantly reduced trace size and simulation time compared to exhaustive instrumentation.
AB - Improved quality of results from high level synthesis (HLS) tools have led to their increased adoption in hardware design. However, functional verification of HLS-produced designs remains a major challenge. Once a bug is exposed, designers must backtrace thousands of signals and simulation cycles to determine the underlying cause. The challenge is further exacerbated with HLS-produced non-human-readable RTL. In this paper, we present AutoSLIDE, an automated cross-layer verification framework that instruments critical operations, detects discrepancies between software and hardware execution, and traces the suspect datapath tree to identify bug source for the detected discrepancy. AutoSLIDE also maintains mappings between RTL datapath operations, LLVM-IR operations, and C/C++ source code to precisely pinpoint the root-cause of bugs to the exact line/operation in source code, substantially reducing user effort to localize bugs. We demonstrate the effectiveness by detecting and localizing bugs from former versions of the CHStone benchmark suite. Furthermore, we demonstrate the efficiency of AutoSLIDE, with low overhead in HLS time (27%), software trace gathering (10%), and significantly reduced trace size and simulation time compared to exhaustive instrumentation.
KW - High-Level Synthesis
KW - Instrumentation
KW - Source-Level Debugging
UR - http://www.scopus.com/inward/record.url?scp=84987664836&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84987664836&partnerID=8YFLogxK
U2 - 10.1109/FCCM.2016.38
DO - 10.1109/FCCM.2016.38
M3 - Conference contribution
AN - SCOPUS:84987664836
T3 - Proceedings - 24th IEEE International Symposium on Field-Programmable Custom Computing Machines, FCCM 2016
SP - 127
EP - 130
BT - Proceedings - 24th IEEE International Symposium on Field-Programmable Custom Computing Machines, FCCM 2016
PB - Institute of Electrical and Electronics Engineers Inc.
Y2 - 1 May 2016 through 3 May 2016
ER -