Affiliation:
1. Bogazici University, Istanbul, Turkey
Abstract
Correct concurrent System-on-Chips (SoCs) are very hard to design and reason about. In this work, we develop an automated framework complete with concurrency-oriented verification and coverage techniques for system-level designs. Our techniques are different from traditional simulation-based reliability techniques, since concurrency information is often lost in traditional techniques. We preserve concurrency information to obtain unique verification techniques that allow us to predict potential errors (formulated as transaction-level assertions) from error-free simulations. In order to do this, we exploit the inherent concurrency in the designs to generate and analyze novel partial-order simulation traces. Additionally, to evaluate the confidence on verification results and the gauge progress of verification, we develop novel mutation testing based on concurrent coverage metrics. Mutation testing is a fault insertion-based simulation technique that has been successfully applied in software testing. We present a comprehensive list of mutation operators for SystemC, similar to behavioral fault models, and show the effectiveness of these operators by relating them to actual bug patterns. We have successfully applied our verification and coverage techniques on industrial systems and demonstrated that current verification test suites need to be improved for concurrent designs, and we have found errors in systems that were tested previously.
Publisher
Association for Computing Machinery (ACM)
Subject
Electrical and Electronic Engineering,Computer Graphics and Computer-Aided Design,Computer Science Applications
Reference46 articles.
1. Abramovici M. Breuer M. A. and Friedman A. D. 1990. Digital Systems Testing and Testable Design. Computer Science Press New York. Abramovici M. Breuer M. A. and Friedman A. D. 1990. Digital Systems Testing and Testable Design. Computer Science Press New York.
2. Andrews J. H. Briand L. C. and Labiche Y. 2005. Is mutation an appropriate tool for testing experiments? In Proceedings of the 27th International Conference on Software Engineering (ICSE). 402--411. 10.1145/1062455.1062530 Andrews J. H. Briand L. C. and Labiche Y. 2005. Is mutation an appropriate tool for testing experiments? In Proceedings of the 27th International Conference on Software Engineering (ICSE). 402--411. 10.1145/1062455.1062530
3. Can Mutation Analysis Help Fix Our Broken Coverage Metrics?
4. Race analysis for systemc using model checking
5. A mutation model for the SystemC TLM 2.0 communication interfaces
Cited by
9 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. AMS Enhanced Code Coverage Verification Environment;Enhanced Virtual Prototyping for Heterogeneous Systems;2022-05-03
2. Abdeckungsgesteuertes Testen für skalierbare Verifikation virtueller Prototypen;Verbessertes virtuelles Prototyping;2022
3. Coverage-Guided Testing for Scalable Virtual Prototype Verification;Enhanced Virtual Prototyping;2020-10-15
4. Interpreting Coverage Information Using Direct and Indirect Coverage;2016 IEEE International Conference on Software Testing, Verification and Validation (ICST);2016-04
5. Software Model Checking SystemC;IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems;2013-05