Skip to main content

Combining Model Checking and Testing in a Continuous HW/SW Co-verification Process

  • Conference paper
Book cover Tests and Proofs (TAP 2009)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5668))

Included in the following conference series:

Abstract

SystemC is widely used for modeling and simulation in hardware/software co-design. However, the co-verification techniques used for SystemC designs are mostly ad-hoc and non-systematic. In this paper, we present an approach to overcome this problem by a systematic, formally founded quality assurance process. Based on a combination of model checking and conformance testing, we obtain a HW/SW co-verification flow that supports HW/SW co-development throughout the whole design process. In addition, we present a novel test algorithm that generates conformance tests for SystemC designs offline and that can cope with non-deterministic systems. To this end, we use a timed automata model of the SystemC design to compute expected simulation or test results. We have implemented the model checking and conformance testing framework and give experimental results to show the applicability of our approach.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Alur, R., Dill, D.L.: A Theory of Timed Automata. Theoretical Computer Science 126, 183–235 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  2. Behrmann, G., David, A., Larsen, K.G.: A Tutorial on Uppaal. In: Bernardo, M., Corradini, F. (eds.) SFM-RT 2004. LNCS, vol. 3185, pp. 200–236. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  3. Bengtsson, J., Larsen, K.G., Larsson, F., Pettersson, P., Yi, W.: Uppaal — a Tool Suite for Automatic Verification of Real–Time Systems. In: HS 1995. LNCS, vol. 1066, pp. 232–243. Springer, Heidelberg (1995)

    Google Scholar 

  4. Bengtsson, J., Yi, W.: Timed automata: Semantics, algorithms and tools. In: Desel, J., Reisig, W., Rozenberg, G. (eds.) Lectures on Concurrency and Petri Nets. LNCS, vol. 3098, pp. 87–124. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  5. Cardell-Oliver, R.: Conformance tests for real-time systems with timed automata specifications. Formal Aspects of Computing 12(5), 350–371 (2000)

    Article  MATH  Google Scholar 

  6. de Vries, R., Tretmans, J.: On-the-fly conformance testing using spin. Software Tools for Technology Transfer 2(4), 382–393 (2000)

    Article  MATH  Google Scholar 

  7. FZI Research Center for Information Technology. KaSCPar - Karlsruhe SystemC Parser Suite

    Google Scholar 

  8. Grosse, D., Drechsler, R.: Checkers for SystemC designs. In: Formal Methods and Models for Codesign, pp. 171–178. IEEE Computer Society, Los Alamitos (2004)

    Google Scholar 

  9. Grosse, D., Kuhne, U., Drechsler, R.: HW/SW Co-Verification of Embedded Systems using Bounded Model Checking. In: Great Lakes Symposium on VLSI, pp. 43–48. ACM Press, New York (2006)

    Google Scholar 

  10. Habibi, A., Moinudeen, H., Tahar, S.: Generating Finite State Machines from SystemC. In: Design, Automation and Test in Europe, pp. 76–81. IEEE Press, Los Alamitos (2006)

    Google Scholar 

  11. Habibi, A., Tahar, S.: An Approach for the Verification of SystemC Designs Using AsmL. In: Peled, D.A., Tsay, Y.-K. (eds.) ATVA 2005. LNCS, vol. 3707, pp. 69–83. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  12. Herber, P., Fellmuth, J., Glesner, S.: Model Checking SystemC Designs Using Timed Automata. In: International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS), pp. 131–136. ACM Press, New York (2008)

    Google Scholar 

  13. Hessel, A., Larsen, K.G., Mikucionis, M., Nielsen, B., Pettersson, P., Skou, A.: Testing Real-Time Systems Using UPPAAL. In: Hierons, R.M., Bowen, J.P., Harman, M. (eds.) FORTEST. LNCS, vol. 4949, pp. 77–117. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  14. Hessel, A., Larsen, K.G., Nielsen, B., Petterson, P., Skou, A.: Time-optimal test cases for real-time systems. In: Petrenko, A., Ulrich, A. (eds.) FATES 2003. LNCS, vol. 2931, pp. 114–130. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  15. IEEE Standards Association. IEEE Std. 1666–2005, Open SystemC Language Reference Manual (2005)

    Google Scholar 

  16. Karlsson, D., Eles, P., Peng, Z.: Formal verification of SystemC Designs using a Petri-Net based Representation. In: Design, Automation and Test in Europe, pp. 1228–1233. IEEE Press, Los Alamitos (2006)

    Google Scholar 

  17. Kirchsteiger, C.M., Trummer, C., Steger, C., Weiss, R., Pistauer, M.: Specification-based Verification of Embedded Systems by Automated Test Case Generation. In: Distributed Embedded Systems: Design, Middleware and Resources, pp. 35–44. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  18. Krichen, M., Tripakis, S.: Real-time testing with timed automata testers and coverage criteria. In: Lakhnech, Y., Yovine, S. (eds.) FORMATS 2004 and FTRTFT 2004. LNCS, vol. 3253, pp. 134–151. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  19. Larsen, K.G., Mikucionis, M., Nielsen, B.: Online Testing of Real-time Systems Using Uppaal. In: Grabowski, J., Nielsen, B. (eds.) FATES 2004. LNCS, vol. 3395, pp. 79–94. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  20. Man, K.: An Overview of SystemCFL. Research in Microelectronics and Electronics 1, 145–148 (2005)

    Google Scholar 

  21. Müller, W., Ruf, J., Rosenstiel, W.: An ASM based SystemC Simulation Semantics. In: SystemC: Methodologies and Applications, pp. 97–126. Kluwer, Dordrecht (2003)

    Google Scholar 

  22. Nielsen, B., Skou, A.: Automated test generation from timed automata. In: Margaria, T., Yi, W. (eds.) TACAS 2001. LNCS, vol. 2031, pp. 343–357. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  23. Patel, H.D., Shukla, S.K.: Model-driven validation of systemc designs. EURASIP J. Embedded Syst. 2008(3), 1–14 (2008)

    Google Scholar 

  24. Robinson-Mallett, C., Hierons, R.M., Liggesmeyer, P.: Achieving communication coverage in testing. ACM SIGSOFT Software Engineering Notes 31(6), 1–10 (2006)

    Article  Google Scholar 

  25. Ruf, J., Hoffmann, D., Gerlach, J., Kropf, T., Rosenstiehl, W., Müller, W.: The Simulation Semantics of SystemC. In: Design, Automation and Test in Europe, pp. 64–70. IEEE Press, Los Alamitos (2001)

    Google Scholar 

  26. Salem, A.: Formal Semantics of Synchronous SystemC. In: Design, Automation and Test in Europe, pp. 10376–10381. IEEE Computer Society, Los Alamitos (2003)

    Google Scholar 

  27. Springintveld, J., Vaandrager, F., D’Argenio, P.R.: Testing timed automata. Theoretical Computer Science 254(1-2), 225–257 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  28. Traulsen, C., Cornet, J., Moy, M., Maraninchi, F.: A SystemC/TLM semantics in Promela and its possible applications. In: Bošnački, D., Edelkamp, S. (eds.) SPIN 2007. LNCS, vol. 4595, pp. 204–222. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Herber, P., Friedemann, F., Glesner, S. (2009). Combining Model Checking and Testing in a Continuous HW/SW Co-verification Process. In: Dubois, C. (eds) Tests and Proofs. TAP 2009. Lecture Notes in Computer Science, vol 5668. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02949-3_10

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-02949-3_10

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-02948-6

  • Online ISBN: 978-3-642-02949-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics