ACM Home Page
Please provide us with feedback. Feedback
Debugging strategies for mere mortals
Full text PdfPdf (168 KB)
Source Annual ACM IEEE Design Automation Conference archive
Proceedings of the 46th Annual Design Automation Conference table of contents
San Francisco, California
SESSION: The tool shows that my design is wrong, but where is the bug? table of contents
Pages 635-638  
Year of Publication: 2009
ISBN:978-1-60558-497-3
Author
Valeria Bertacco  University of Michigan
Sponsors
EDAC : Electronic Design Automation Consortium
SIGDA: ACM Special Interest Group on Design Automation
IEEE-CAS : Circuits & Systems
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 13,   Downloads (12 Months): 13,   Citation Count: 0
Additional Information:

abstract   references   index terms  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1629911.1630079
What is a DOI?

ABSTRACT

Recent improvements in design verification strive to automate error detection and greatly enhance engineers' ability to detect functional errors. However, the process of diagnosing the cause of these errors, and subsequently fixing them, remains one of the most difficult tasks of verification. The complexity of design descriptions, paired with the scarcity of software tools supporting this task lead to an activity that is mostly ad-hoc, labor intensive and accessible only to a few debugging specialists within a design house.

This paper discusses some recent research solutions that support the debugging effort by simplifying and automating bug diagnosis. These novel techniques demonstrate that, through the support of structured methodologies, debugging can become a task pursued by the average design engineer. We also outline some of the upcoming trends in design verification, postponing some the verification effort to runtime, and discuss how debugging could leverage these trends to achieve better quality of results.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
M. Aagaard, R. Jones, and C.-J. Seger, "Combining theorem proving and trajectory evaluation in an industrial environment", in Proc. DAC, 1998, pp. 538--541.
 
2
M. F. Ali, S. Safarpour, A. Veneris, M. Abadir and R. Drechsler, "Post-verification debugging of hierarchical designs", Proc. ICCAD, 2005, pp. 871--876.
 
3
M. F. Ali, A. Veneris, S. Safarpour, R. Drechsler, A. Smith and M. Abadir, "Debugging sequential circuits using Boolean satisfiability", Proc. ICCAD, 2004, pp. 44--49.
 
4
J. Bergeron, Writing testbenches: functional verification of HDL models, Kluwer Academic Publishers, 2nd edition, 2003.
 
5
"Bug UnderGround", http://bug.eecs.umich.edu/
 
6
K.-H. Chang, I. L. Markov and V. Bertacco, "Fixing design errors with counterexamples and resynthesis", Proc. ASPDAC, 2007, pp. 944--949.
 
7
K.-H. Chang, V. Bertacco and I. L. Markov, "Simulation-based bug trace minimization with BMC-based refinement", IEEE Transactions on CAD, Jan. 2007, pp. 152--165.
 
8
K.-H. Chang, I. Wagner, V. Bertacco and I. L. Markov, "Automatic error diagnosis and correction for RTL designs", Proc. HLDVT, 2007, pp. 65--72.
 
9
Y. A. Chen and F. S. Chen, "Algorithms for compacting error traces", in Proc. ASPDAC, 2003, pp. 99--103.
 
10
G. Fey, S. Staber, R. Bloem and R. Drechsler, "Automatic fault localization for property checking", IEEE Transactions on CAD, Jun. 2008, pp. 1138--1149.
 
11
P. Gastin, P. Moro and M. Zeitoun, "Minimization of counterexamples in SPIN", in Proc. SPIN, 2004, pp. 92--108.
 
12
S. Hazelhurst, O. Weissberg, G. Kamhi and L. Fix, "A hybrid verification approach: getting deep into the design", in Proc. DAC, 2002, pp. 111--116.
 
13
R. Hildebrandt and A. Zeller, "Simplifying failure-inducing input," in Proc. ISSTA, 2000, pp. 134--145.
 
14
P.-H. Ho, T. Shiple, K. Harer, J. Kukula, R. Damiano, V. Bertacco, J. Taylor and J. Long, "Smart simulation using collaborative formal and simulation engines," in Proc. ICCAD, 2000, pp. 120--126.
 
15
T.-Y. Jiang, C.-N. J. Liu and J.-Y. Jou, "Estimating likelihood of correctness for error candidates to assist debugging faulty HDL designs," Proc. ISCAS, 2005, pp. 5682--5685.
 
16
A. Kuehlmann, D. I. Cheng, A. Srinivasan and D. P. Lapotin, "Error diagnosis for transistor-level verification", Proc. DAC, 1994, pp. 218--224.
 
17
J. C. Madre, O. Coudert and J. P. Billon, "Automating the diagnosis and the rectification of design errors with PRIAM", in Proc. ICCAD, 1989, pp. 30--33.
 
18
P. Rashinkar, P. Paterson and L. Singh, System-on-a-chip verification: methodology and techniques, Kluwer Academic Publishers, 2002.
 
19
J.-C. Rau, Y.-Y. Chang and C.-H. Lin, "An efficient mechanism for debugging RTL description", Proc. IWSOC, 2003, pp. 370--373.
 
20
K. Ravi and F. Somenzi, "Minimal satisfying assignments for bounded model checking," Proc. TACAS, 2004, pp. 31--45.
 
21
C.-H. Shi and J.-Y. Jou, "An efficient approach for error diagnosis in HDL design", in Proc. ISCAS, 2003, pp. 732--735.
 
22
SpringSoft, http://www.springsoft.com/
 
23
S. Staber, G. Fey, R. Bloem and R. Drechsler, "Automatic fault localization for property checking", Springer-Verlag LNCS 4383, 2007, pp. 50--64.
 
24
A. Smith, A. Veneris and A. Viglas, "Design diagnosis using Boolean satisfiability", Proc. ASPDAC, 2004, pp. 218--223.
 
25
A. Veneris and I. N. Hajj, "Design error diagnosis and correction via test vector simulation", IEEE Transactions on CAD, Dec. 1999, pp. 1803--1816.
 
26
I. Wagner and V. Bertacco, "Engineering trust with semantic guardians", Proc. DATE, 2007, pp. 743--748.
 
27
Y.-S. Yang, S. Sinha, A. Veneris and R. Brayton, "Automating logic rectification by approximate SPFDs", Proc. ASPDAC, 2007, pp. 402--407.