Skip to main content
Log in

Functional Validation of Mixed Hardware/Software Systems based on Specification, Partitioning, and Simulation of Test Cases

  • Published:
Design Automation for Embedded Systems Aims and scope Submit manuscript

Abstract

Tecs is a test case development methodology for the functional validation of large electronic systems, typically consisting of several custom hardware and software components. The methodology determines a hierarchical top-down test case development process including test case specification, validation, partitioning and implementation. The test case development process addresses the functional validation of the system and its components such as ASICs, boards, HW and software modules; it does not facilitate timing or performance verification. The system functions are used to define test cases at the system level and to derive sub-functions for the system components. Test cases are specified, using a special purpose formalism, and validated before they are applied to the system under test. Furthermore, we propose a technique to partition test cases corresponding to the partitioning of the system into sub-systems and components. This technique can significantly reduce system simulation time because it allows the full validation of system functions by simulation at the sub-system and component level. The system model need only be simulated with a reduced set of stimuli to validate the interfaces between sub-systems. We present a test case specification language and tools that support the proposed methodology. The validation of a switching function illustrates methodology, language, and tools.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Albrecht, T. 1995. Concurrent design methodology and configuration management of the Siemens EWSD-CCS7E processor system simulation. Proceedings of the 32nd Design Automation Conference.

  2. Albrecht, T., Notbauer, J., and Rohringer, S. 1998. HW/SW coverification, performance stimation & benchmark for a 24 embedded RISC core design. Proceedings of the Design Automation Conference.

  3. Gajski, D. D., Vahid, F., Narayan, S., and Gong, J. 1994. Specification and Design of Embedded Systems. Prentice Hall.

  4. Fröhlich, M., and Werner, M. 1996. The graph visualization system daVinci—a user interface for applications. Technical Report No. 5/94. Department of Computer Science, University of Bremen.

  5. Z. 120 MSC. 1994. Message Sequence Charts. Geneva: ITU.

  6. Boriello, G. 1992. Formalized timing diagrams. European Design Automation Conference pp. 372–377.

  7. Calvez, J. P. 1993. Embedded Real-Time Systems. John Wiley & Sons.

  8. Harel, D. 1987. Statecharts: A visual formalism for complex systems. Science of Computer Programming 8: 231–274.

    Google Scholar 

  9. Synopsys Inc. Hardware/Software Co-Verification. http://www.synopsys.com/products/hwsw/hwsw.html.

  10. Jantsch, A., Notbauer, J., and Albrecht, T. 1997. Test case development for large telecom systems. Proceedings of the International High-level Design Validation and Test Workshop.

  11. Notbauer, J. 1996. Testfall und Testfallumgebung: Spezifikation in VHDL basierend auf Ereignissen und Zuständen, Masters thesis, Technische Universität Graz, Austria.

    Google Scholar 

  12. Perry, W. 1995. Effective Methods for Software Testing. John Wiley & Sons.

  13. Second Workshop on System Design Languages. 1997. http://www.ecsi.org/ecsi/Doc/OtherDoc/SLDL, Italy.

  14. Forum on Design Languages. 1998. http://c3iwww.epfl.ch/fd198/. Lausanne.

  15. VSI System Level Design Model Taxonomy, version 1.0. 1998. Virtual Socket Interface Alliance.

  16. VSI Alliance Roadmap, version 1.0. 1997. Virtual Socket Interface Alliance.

  17. Poston, R. M. 1994. Automated testing from object models. Communications of the ACM 37(9) 48–58.

    Google Scholar 

  18. Weyuker, E. J., and Jeng, B. 1991. Analyzing partition testing strategies. IEEE Transactions on Software Engineering 17(7) 703–711.

    Google Scholar 

  19. Beizer, B. 1995. Black-box Testing. John Wiley & Sons.

  20. Beizer, B. 1990. Software Testing Techniques. New York: Van Nostrand Reinhold.

    Google Scholar 

  21. Tree and Tabular Combined Notation (TTCN) ISO/IEC 9646–3, ISO, 1992.

  22. ITEX Methodology Guidelines, Telelogic Tau 3.4, Telelogic AB, Malmö, Sweden, 1998.

  23. ITEX Getting Started, Telelogic Tau 3.4, Telelogic AB, Malmö, Sweden, 1998.

  24. Methodology Guidelines—Part 1: The SOMT Method, SDT 3.2, Telelogic AB, Malmö, Sweden, 1997.

  25. Sidhu, D. P., and Leung, T.-K. 1989. Formal methods for protocol testing: a detailed study. IEEE Transactions on Software Engineering 15(4): 413–426.

    Google Scholar 

  26. Perry, W. E., and Rice, R. W. 1997. Surviving the Top Ten Challenges of Software Testing: A People-Oriented Approach. Dorset House Publishing Co.

  27. Ostrand, T., Anodide, A., Foster, H., and Goradia, T. 1998. A visual test development environment for GUI systems. ACM International Symposium on Software Testing and Analysis (ISSTA).

  28. Ntafos, S. C. 1988. A comparison of some structural testing strategies. IEEE Transactions on Software Engineering 14(6): 868–874.

    Google Scholar 

  29. Ostrand, T. J. 1994. Categories of testing. Encyclopedia of Software Engineering. John Wiley & Sons, edited by John Marciniak, pp. 90–93.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Jantsch, A., Notbauer, J. & Albrecht, T. Functional Validation of Mixed Hardware/Software Systems based on Specification, Partitioning, and Simulation of Test Cases. Design Automation for Embedded Systems 5, 83–113 (2000). https://doi.org/10.1023/A:1008943617450

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1008943617450

Navigation