VeriBug: An Attention-based Framework for Bug-Localization in Hardware Designs
Abstract: In recent years, there has been an exponential growth in the size and complexity of System-on-Chip designs targeting different specialized applications. The cost of an undetected bug in these systems is much higher than in traditional processor systems as it may imply the loss of property or life. The problem is further exacerbated by the ever-shrinking time-to-market and ever-increasing demand to churn out billions of devices. Despite decades of research in simulation and formal methods for debugging and verification, it is still one of the most time-consuming and resource intensive processes in contemporary hardware design cycle. In this work, we propose VeriBug, which leverages recent advances in deep learning to accelerate debugging at the Register-Transfer Level and generates explanations of likely root causes. First, VeriBug uses control-data flow graph of a hardware design and learns to execute design statements by analyzing the context of operands and their assignments. Then, it assigns an importance score to each operand in a design statement and uses that score for generating explanations for failures. Finally, VeriBug produces a heatmap highlighting potential buggy source code portions. Our experiments show that VeriBug can achieve an average bug localization coverage of 82.5% on open-source designs and different types of injected bugs.
- Neural Machine Translation by Jointly Learning to Align and Translate. Int’l Conf. on Learning Representations (ICLR), 2016.
- A. R. Bradley. Understanding IC3. Int’l Conf. on Theory and Applications of Satisfiability Testing (SAT), 2012.
- R. Bryant. Graph-Based Algorithms for Boolean Function Manipulation. IEEE Trans. on Computers (TC), 1986.
- Bounded Model Checking Using Satisfiability Solving. Formal Methods in System Design (FMSD), 2001.
- D. P. Kingma and J. Ba. Adam: A Method for Stochastic Optimization. Int’l Conf. on Learning Representations (ICLR), 2017.
- Improving Bug Detection via Context-Based Code Representation Learning and Attention-Based Neural Networks. Proc. of the ACM on Programming Languages (PACMPL), 2019.
- K. L. McMillan. Interpolation and SAT-Based Model Checking. Int’l Conference on Computer Aided Verification (CAV), 2003.
- Assertion Ranking Using RTL Source Code Analysis. IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems (TCAD), 2020.
- D. Pal and S. Vasudevan. Symptomatic Bug Localization for Functional Debug of Hardware Designs. Int’l Conf. on VLSI Design Embedded Systems (VLSID), 2016.
- Learning Internal Representations by Error Propagation. Parallel Distributed Processing: Explorations in the Microstructure of Cognition: Foundations, 1985.
- Bugram: Bug detection with n-gram language models. Int’l Conf. on Automated Software Engineering (ASE), 2016.
Paper Prompts
Sign up for free to create and run prompts on this paper using GPT-5.
Top Community Prompts
Collections
Sign up for free to add this paper to one or more collections.