skip to main content
research-article

Coverage-Directed Test Generation Automated by Machine Learning -- A Review

Published:01 January 2012Publication History
Skip Abstract Section

Abstract

The increasing complexity and size of digital designs, in conjunction with the lack of a potent verification methodology that can effectively cope with this trend, continue to inspire engineers and academics in seeking ways to further automate design verification. In an effort to increase performance and to decrease engineering effort, research has turned to artificial intelligence (AI) techniques for effective solutions. The generation of tests for simulation-based verification can be guided by machine-learning techniques. In fact, recent advances demonstrate that embedding machine-learning (ML) techniques into a coverage-directed test generation (CDG) framework can effectively automate the test generation process, making it more effective and less error-prone. This article reviews some of the most promising approaches in this field, aiming to evaluate the approaches and to further stimulate more directed research in this area.

References

  1. Banzhaf, W. 1998. Genetic Programming: An Introduction on the Automatic Evolution of Computer Programs and Its Applications. Morgan Kaufmann, San Francisco, CA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Baras, D., Fournier, L., and Ziv, A. 2008. Automatic boosting of cross-product coverage using Bayesian networks. In Proceedings of the Hardware and Software: Verification and Testing. 4th International Haifa Verification Conference (HVC’08). Springer, Berlin, 53--67. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Bergeron, J. 2003. Writing Testbenches: Functional Verification of HDL Models 2nd Ed., Springer, Berlin. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Bernardi, P., Christou, K., Grosso, M., Michael, M. K., Sanchez, E., and Sonza Reorda, M. 2008. Exploiting MOEA to automatically generate test programs for path-delay faults in microprocessors. In Applications of Evolutionary Computing. Lecture Notes in Computer Science, vol. 4974, Springer, Berlin, 224--234. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Bharda, J., Abadir, M. S., Wang, L. S., and Ray, S. 2007. A survey of hybrid techniques for functional verification. IEEE Des. Test Comput. 24, 2, 112--122. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Bose, M., Shin, J., Rudnik, E. M., Dukes, T., and Abadir M. 2001. A genetic approach to automatic bias generation for biased random instruction generation. In Proceedings of the IEEE Conference on Evolutionary Computation (ICEC). IEEE, Los Alamitos, CA, 442--448.Google ScholarGoogle Scholar
  7. Braun, M., Rosenstiel, W., and Schubert, K. 2003. Comparison of Bayesian networks and data mining for coverage directed verification category simulation-based verification. In Proceedings of the 8th IEEE International High-Level Design Validation and Test Workshop. IEEE, Los Alamitos, CA, 91--95. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Braun, M., Fine, S., and Ziv, A. 2004. Enhancing the efficiency of Bayesian network based coverage directed test generation. In Proceedings of the IEEE International Workshop on High-Level Design, Validation, and Test. IEEE, Los Alamitos, CA, 75--80. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Breiman, L. 1984. Classification and Regression Trees. Wadsworth International Group, Belmont, CA.Google ScholarGoogle Scholar
  10. Corno, F., Cumani, G., and Squillero, G. 2003a. Exploiting auto-adaptive μGP for highly effective test programs generation. In Evolvable Systems: From Biology to Hardware. Springer, Berlin, 262--273. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Corno, F., Cumani, G., Sonza Reorda, M., and Squillero, G. 2003b. Automatic test program generation for pipelined processors. In Proceedings of the ACM Symposium on Applied Computing. ACM, New York, 736--740. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Corno, F., Cumani, G., Sonza Reorda, M., and Squillero, G. 2003c. Fully automatic test program generation for microprocessor cores. In Proceedings of the Conference on Design, Automation and Test in Europe. Vol. 1, IEEE, Los Alamitos, CA, 1006--1011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Corno, F., Squillero, G., and Sonza Reorda, M. 2003d. Code generation for functional validation of pipelined microprocessors. In Proceedings of the 8th IEEE European Test Workshop. IEEE, Los Alamitos, CA, 113--118. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Corno, F., Sanchez, E., Sonza Reorda, M., and Squillero, G. 2004. Automatic test program generation: A case study. IEEE Des. Test Comput. 21, 2, 102--109. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Cover, T. M. and Thomas, J. A. 2006. Elements of Information Theory 2nd Ed. Wiley-Interscience. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Eder, K., Flach, P., and Hsueh, H. 2007. Towards automating simulation-based design verification using ILP. In Inductive Logic Programming. Lecture Notes in Computer Science, vol. 4455, Springer, Berlin, 154--168. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Ferrandi, F., Scutio, D., Fin, A., and Fummi, F. 2003. Functional test generation: Overview and proposal of a hybrid genetic approach. In Evolutionary Algorithms for Embedded System Design. Kluwer, Amsterdam, 105--142.Google ScholarGoogle Scholar
  18. Fine, S. and Ziv, A. 2003a. Coverage directed test generation for functional verification using Bayesian networks. In Proceedings of the 40th Annual Design Automation Conference. ACM, New York, 286--291. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Fine, S. and Ziv, A. 2003b. Enhancing the control and efficiency of the covering process. In Proceedings of the 8th IEEE International Workshop on High-Level Design Validation and Test. IEEE, Los Alamitos, CA, 96--101. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Fine, S., Freund, A., Jaeger, I., Mansour, Y., Naveh, Y., and Ziv, A. 2006. Harnessing machine learning to improve the success rate of stimuli generation. IEEE Trans. Comput. 55, 11, 1344--1355. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Guzey, O., Wang, L.C., Levitt, J., and Foster, H. 2008. Functional test selection based on unsupervised support vector analysis. In Proceedings of the 45th Annual Design Automation Conference. ACM, New York, 262--267. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Habibi, A., Tahar, S., Samarah, A., Donglin, L., and Ait Mohamed, O. 2006. Efficient assertion based verification using TLM. In Proceedings of the Design, Automation and Test in Europe Conference. IEEE, Los Alamitos, CA, 1--6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Haihua, S., Wenli, W., Yunji, C., Bowen, C., and Qi, G. 2008. Coverage directed test generation: Godson experience. In Proceedings of the 17th Asian Test Symposium. IEEE, Los Alamitos, CA, 321--326. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Holland, J. H. 1992. Adaptation in Natural and Artificial Systems. MIT Press, Cambridge, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. IBM. 2002. Using the Intelligent Miner for Data 1st Ed. IBM Denmark A/S.Google ScholarGoogle Scholar
  26. ITRS. 2008. International Technology Roadmap for Semiconductors. Design chapter 2008 Ed.Google ScholarGoogle Scholar
  27. Jain, A. K., Murty, M. N., and Flynn, P. J. 1999. Data clustering: A review. ACM Comput. Surv. 31, 3, 264--323. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Koza, J. R. 1992. Genetic Programming: On the Programming of Computers by Means of Natural Selection. MIT Press, Cambridge, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Koza, J. R. 1989. Hierarchical genetic algorithms operating on populations of computer programs. In Proceedings of the International Joint Conference on Artificial Intelligence (IJCAI). Morgan Kaufmann, 768--774. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Miczo, A. 2003. Automatic test pattern generation. In Digital Logic Testing and Simulation. Wiley, 165--231. http://dx.doi.org/10.1002/0471457787.ch4.Google ScholarGoogle Scholar
  31. Muggleton, S. H. 1991. Inverting the resolution principle. In Machine Intelligence 12: Towards an Automated Logic of Human Thought. Clarendon Press, 93--103. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Muggleton, S. H. 1992. Inductive Logic Programming. Academic Press, London.Google ScholarGoogle Scholar
  33. Muggleton, S. H. 1995. Inverse entailment and Progol. New Generation Comput. (Special Issue on Inductive Logic Programming) 13, 3--4, 245--286.Google ScholarGoogle ScholarCross RefCross Ref
  34. Niermann, T. and Patel, J. 1991. HITEC: A test generation package for sequential circuits. In Proceedings of the European Conference on Design Automation. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Piziali, A. 2007. Functional Verification Coverage Measurement and Analysis. Springer, Berlin. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Ravotto, D., Sanchez, E., Schillaci, M., and Squillero, G. 2008. An evolutionary methodology for test generation for peripheral cores via dynamic FSM extraction. In Applications of Evolutionary Computing. Lecture Notes in Computer Science, vol. 4974, Springer, Berlin, 214--223. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Samarah, A., Habibi, A., Tahar, S., and Kharma, N. 2006. Automated coverage directed test generation using a cell-based genetic algorithm. In Proceedings of the 11th IEEE International High Level Design Validation and Test Workshop. IEEE, Los Alamitos, CA, 19--26.Google ScholarGoogle Scholar
  38. Smith, J., Bartley, M., and Fogarty, T. 1997. Microprocessor design verification by two-phase evolution of variable length tests. In Proceedings of IEEE International Conference on Evolutionary Computation (ICEC’97). IEEE, Los Alamitos, CA, 453--458.Google ScholarGoogle Scholar
  39. Ur, S., and Yadin, Y. 1999. Micro architecture coverage directed generation of test programs. In Proceedings of the 36th Annual ACM/IEEE Design Automation Conference. ACM, New York, 175--180. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Wagner, I., Bertacco, V., and Austin, T. 2005. StressTest: An automatic approach to test generation via activity monitors. In Proceedings of the 42nd Annual Design Automation Conference. ACM, New York, 783--788. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Wagner, I., Bertacco, V., and Austin, T. 2007. Microprocessor verification via feedback-adjusted Markov models. IEEE Trans. Comput.-Aid. Des. Integrat. Circuits Syst. 26, 6, 1126--1138. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Widdoes, C. and Ho, R. 2002. “Deep” formal verification powers assertions. EE Times. http://www.eetimes.com/electronics-news/4142042/-Deep-formal-verification-powers-assertions.Google ScholarGoogle Scholar
  43. Wile, B., Goss, J., and Roesner, W. 2005. Comprehensive Functional Verification: The Complete Industry Cycle (Systems on Silicon). Morgan Kaufmann. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. Yu, X., Fin, A., Fummi, F., and Rudnik, E. M. 2002. A genetic testing framework for digital integrated circuits. In Proceedings of the 14th IEEE International Conference on Tools with Artificial Intelligence (ICTAI’02). IEEE, Los Alamitos, CA, 521--526. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Coverage-Directed Test Generation Automated by Machine Learning -- A Review

                Recommendations

                Comments

                Login options

                Check if you have access through your login credentials or your institution to get full access on this article.

                Sign in

                Full Access

                • Published in

                  cover image ACM Transactions on Design Automation of Electronic Systems
                  ACM Transactions on Design Automation of Electronic Systems  Volume 17, Issue 1
                  January 2012
                  224 pages
                  ISSN:1084-4309
                  EISSN:1557-7309
                  DOI:10.1145/2071356
                  Issue’s Table of Contents

                  Copyright © 2012 ACM

                  Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                  Publisher

                  Association for Computing Machinery

                  New York, NY, United States

                  Publication History

                  • Published: 1 January 2012
                  • Accepted: 1 September 2011
                  • Revised: 1 April 2011
                  • Received: 1 March 2010
                  Published in todaes Volume 17, Issue 1

                  Permissions

                  Request permissions about this article.

                  Request Permissions

                  Check for updates

                  Qualifiers

                  • research-article
                  • Research
                  • Refereed

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader