Detraque: Dynamic execution tracing techniques for automatic fault localization of hardware design code

7Citations
Citations of this article
3Readers
Mendeley users who have this article in their library.
Get full text

Abstract

In an error-prone development process, the ability to localize faults is a crucial one. Generally speaking, detecting and repairing errant behavior at an early stage of the development cycle considerably reduces costs and development time. The debugging of the Verilog program takes much time to read the waveform and capture the signal, and in many cases, problem-solving relies heavily on experienced developers. Most existing Verilog fault localization methods utilize the static analysis method to find faults. However, using static analysis methods exclusively may result in some types of faults being inevitably ignored. The use of dynamic analysis could help resolve this issue. Accordingly, in this work, we propose a new fault localization approach for Verilog, named Detraque. After obtaining dynamic execution through test cases, Detraque traces these executions to localize faults; subsequently, it can determine the likelihood of any Verilog statement being faulty and sort the statements in descending order by suspicion score. Through conducting empirical research on real Verilog programs with 61 faulty versions, Detraque can achieve an EXAM score of 18.3%. Thus, Detraque is verified as able to improve Verilog fault localization effectiveness when used as a supplement to static analysis methods.

Cite

CITATION STYLE

APA

Wu, J., Zhang, Z., Xu, J., He, J., Mao, X., Meng, X., & Li, P. (2022). Detraque: Dynamic execution tracing techniques for automatic fault localization of hardware design code. PLoS ONE, 17(9 Septamber). https://doi.org/10.1371/journal.pone.0274515

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free