VeriBug: An Attention-based Framework for Bug-Localization in Hardware Designs
Authors: Giuseppe Stracquadanio, Sourav Medya, Stefano Quer, Debjit Pal
AI-generated Key Points
- System-on-Chip designs have become more complex and larger in recent years, leading to a higher risk of undetected bugs with serious consequences.
- Debugging and verification processes in hardware design are further complicated by tight time-to-market deadlines and the need to produce a large number of devices.
- VeriBug is a novel bug-localization technique that uses deep learning to accelerate debugging at the Register-Transfer Level by generating explanations for likely root causes of bugs.
- The architecture of VeriBug includes three key components: Feature extraction, Deep learning model, and Explanation generation.
- VeriBug extracts features from input designs using GOLDMINE to generate Control Data Flow Graphs (CDFGs) and Variable Dependency Graphs (VDGs, performs dependence analysis, applies design slicing, and learns execution semantics with a deep-learning architecture to localize bugs without relying on specific code characteristics or extensive labeled datasets.
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.
Tools for this paper
Ask questions about this paper to our AI assistant
You can also chat with multiple papers at once here.
The previous summary was created more than a year ago and can be re-run (if necessary) by clicking on the Run button below.
Similar papers summarized with our AI tools
Navigate through even more similar papers through a
tree representationLook for similar papers (in beta version)
We compare the title and abstract with papers indexed in our database. For arXiv papers, we search within the same category; for DOI and other sources, we search across sources and subjects. You can rerun the search as our database grows.
Disclaimer: The AI-based summarization tool and virtual assistant provided on this website may not always provide accurate and complete summaries or responses. We encourage you to carefully review and evaluate the generated content to ensure its quality and relevance to your needs.