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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Alur, R., Dill, D.L.: A Theory of Timed Automata. Theoretical Computer Science 126, 183–235 (1994)
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)
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)
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)
Cardell-Oliver, R.: Conformance tests for real-time systems with timed automata specifications. Formal Aspects of Computing 12(5), 350–371 (2000)
de Vries, R., Tretmans, J.: On-the-fly conformance testing using spin. Software Tools for Technology Transfer 2(4), 382–393 (2000)
FZI Research Center for Information Technology. KaSCPar - Karlsruhe SystemC Parser Suite
Grosse, D., Drechsler, R.: Checkers for SystemC designs. In: Formal Methods and Models for Codesign, pp. 171–178. IEEE Computer Society, Los Alamitos (2004)
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)
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)
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)
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)
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)
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)
IEEE Standards Association. IEEE Std. 1666–2005, Open SystemC Language Reference Manual (2005)
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)
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)
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)
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)
Man, K.: An Overview of SystemCFL. Research in Microelectronics and Electronics 1, 145–148 (2005)
Müller, W., Ruf, J., Rosenstiel, W.: An ASM based SystemC Simulation Semantics. In: SystemC: Methodologies and Applications, pp. 97–126. Kluwer, Dordrecht (2003)
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)
Patel, H.D., Shukla, S.K.: Model-driven validation of systemc designs. EURASIP J. Embedded Syst. 2008(3), 1–14 (2008)
Robinson-Mallett, C., Hierons, R.M., Liggesmeyer, P.: Achieving communication coverage in testing. ACM SIGSOFT Software Engineering Notes 31(6), 1–10 (2006)
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)
Salem, A.: Formal Semantics of Synchronous SystemC. In: Design, Automation and Test in Europe, pp. 10376–10381. IEEE Computer Society, Los Alamitos (2003)
Springintveld, J., Vaandrager, F., D’Argenio, P.R.: Testing timed automata. Theoretical Computer Science 254(1-2), 225–257 (2001)
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)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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)