skip to main content
research-article

A cosimulation methodology for HW/SW validation and performance estimation

Published:07 April 2009Publication History
Skip Abstract Section

Abstract

Cosimulation strategies allow us to simulate and verify HW/SW embedded systems before the real platform is available. In this field, there is a large variety of approaches that rely on different communication mechanisms to implement an efficient interface between the SW and the HW simulators. However, the literature lacks a comprehensive methodology which addresses the need for integrating and synchronizing heterogeneous simulators, like, for example, the SystemC simulation kernel for HW modules and an instruction set simulator for SW applications, without being intrusive for the HW and SW descriptions involved in the simulation. In this context, this article presents, compares, and integrates in a system-level framework two different co-simulation strategies for modeling, analyzing, and validating the performance of a HW/SW embedded system. Moreover, for both of them, a mechanism is proposed to provide an accurate time synchronization of the HW/SW communication. The first strategy is intended to provide an early cosimulation environment where HW/SW interaction can be validated without involving the operating system. The communication is implemented between a single SW task and a SystemC description of an HW module by exploiting the features of the remote debugging interface of a debugger (the GNU GDB), and by modifying the SystemC simulation kernel. On the other hand, the second strategy is intended to be used in further development steps, when the operating system is introduced to validate the cosimulation between HW modules and multitasking SW applications. In this approach, the communication is implemented via interrupts by using the features offered by the operating system.

Experimental results are reported on two different case studies to analyze and compare the effectiveness of both the approaches.

References

  1. Bacivarov, I., Yoo, S., and Jerraya, A. 2002. Timed HW-SW cosimulation using native execution of OS and application SW. In Proceedings of IEEE International High-Level Design Validation and Test Workshop. 51--56. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Balarin, F., Chiodo, M., Giusto, P., Hsieh, H., Jurecska, A., Lavagno, L., Passerone, C., Sangiovanni-Vincentelli, A., Sentovich, E., Suzuki, K., and Tabbara, B. 1997. Hardware-Software Co-Design of Embedded Systems: The Polis Approach. Kluwer, Amsterdam. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Benini, L., Bertozzi, D., Bruni, D., Drago, N., Fummi, F., and Poncino, M. 2003. Systemc cosimulation and emulation of multi-processor SoC designs. IEEE Computer 36, 4, 53--59. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Buck, J., Ha, S., Lee, E., and Messerschmitt, D. 1994. Ptolemy: A framework for simulating and prototyping heterogeneous systems. Int. J. Comput. Simulation 4, 2, 155--182.Google ScholarGoogle Scholar
  5. Coste, P., Hessel, F., Marrec, P. L., Sugar, Z., Romdhani, M., Suescun, R., Zergainoh, N., and Jerraya, A. 1999. Multilanguage design of heterogeneous systems. In Proceedings of IEEE International Workshop on Hardware-Software Codesign. 54--58. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. De Micheli, D., Ernst, R., and Wolf, W. Eds. 2001. Readings in Hardware/Software Co-design, Morgan Kaufmann, 2001 Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Drótos, D. μCSim: Software Simulator for Microcontrollers. http://mazsola.iit.uni-miskolc. hu/˜drdani/embedded/s51/.Google ScholarGoogle Scholar
  8. eCos. http://sources.redhat.com/ecos/.Google ScholarGoogle Scholar
  9. Fummi, F., Martini, S., Perbellini, G., and Poncino, M. 2004. Native ISS-SystemC integration for the cosimulation of multi-processors SoC. In Proceedings of the IEEE Conference on Design Automation and Test in Europe. 564--569. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Ghosh, A., Bershteyn, M., Casley, R., Chien, C., Lipsie, A. J. M., Tarrodaychik, D., and Yamamoto, O. 1995. A hardware-software co-simulator for embedded system design and debugging. In Proceedings of IEEE Asian and South Pacific Design Automation Conference. 155--164. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Gnu project web server. http://www.gnu.org/software/.Google ScholarGoogle Scholar
  12. Kim, D., Rhee, C.-E., Yi, Y., Kim, S., Jung, H., and Ha, S. 2002. Virtual synchronization for fast distributed cosimulation of dataflow task graphs. In Proceedings of the IEEE International Symposium on System Synthesis. 174--179. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Lahiri, K., Raghunathan, A., Lakshminarayana, G., and Dey, S. 2000. Communication architecture tuners: a methodology for the design of high-performance communication architectures for system-on-chips. In Proceedings of ACM/IEEE Design Automation Conference. 513--518. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Liem, C., Nacabal, F., Valderrama, C., Paulin, P., and Jerraya, A. 1997. System-on-chip cosimulation and compilation. IEEE Design and Test of Comput. 14, 2, 16--25. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Liu, J., Lajolo, M., and Sangiovanni-Vincentelli, A. 1998. Software timing analysis using HW/SW cosimulation and instruction set simulator. In Proceedings of the IEEE International Workshop on Hardware/Software Co-design. 65--69. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Mentor Graphics Inc. http://www.mentor.com/seamless.Google ScholarGoogle Scholar
  17. Microelectronics, S. LIS3LV02DQ MEMS Inertial sensor. Rev. 1.0.Google ScholarGoogle Scholar
  18. Moussa, I., Grellier, T., and Nguyen, G. 2003. Exploring SW performance using SoC transaction-level modelling. In Proceedings of the IEEE Conference on Design Automation and Test in Europe. 120--125. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Muhr, H., Holler, R., and Horauer, M. 2006. A heterogeneous hardware-software cosimulation environment using user mode linux and clock suppression. In Proceedings of the 2nd IEEE/ASME International Conference. 1--6.Google ScholarGoogle Scholar
  20. Patel, H., Mathaikutty, D., Berner, D., and Shukla, S. 2006. CARH: Service-oriented architecture for validating system-level designs. IEEE Trans. Comput.-Aid. Des. Integr. Circ. Syst. 25, 8, 1458--1474. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Psim User Guide and Reference Manual. http://sources.redhat.com/psim/manual/.Google ScholarGoogle Scholar
  22. Semeria, L. and Ghosh, A. 2000. Methodology for hardware/software co-verification in C/C++. In Proceedings of IEEE Asian and South Pacific Design Automation Conference. 405--408. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Sung, W. and Ha, S. 1998. Optimized timed hardware software cosimulation without roll-back. In Proceedings of the IEEE conference on Design Automation and Test in Europe. 945--946. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Synopsys Inc. http://www.synopsys.com/products.Google ScholarGoogle Scholar
  25. Ultimodule. http://www.ultimodule.com.Google ScholarGoogle Scholar
  26. Valderrama, C., Nacabal, F., Paulin, P., and Jerraya, A. 1998. Automatic VHDL-C interface generation for distributed cosimulation: Application to large design examples. Design Autom. Embed. Syst. 3, 2/3, 199--217.Google ScholarGoogle Scholar
  27. Yi, Y., Kim, D., and Ha, S. 2003. Virtual synchronization technique with OS modeling for fast and time-accurate cosimulation. In Proceedings of the IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis. 1--6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Yoo, S., Bacivarov, I., Bouchhima, A., Paviot, Y., and Jerraya, A. 2003. Building fast and accurate SW simulation models based on hardware abstraction layer and simulation environment abstraction layer. In Proceedings of the IEEE Conference on Design Automation and Test in Europe. 550--555. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Yoo, S. and Choi, K. 1997. Optimistic timed HW-SW cosimulation. In Proceedings of the Asia-Pacific Conference on Hardware Description Language. 39--42.Google ScholarGoogle Scholar
  30. Yoo, S., Nicolescu, G., Gauthier, L., and Jerraya, A. 2001. Fast timed cosimulation of HW/SW implementation of embedded multiprocessor SoC communication. In Proceedings of IEEE International Workshop on High Level Design Validation and Test. 79--82. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A cosimulation methodology for HW/SW validation and performance estimation

      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 14, Issue 2
        March 2009
        384 pages
        ISSN:1084-4309
        EISSN:1557-7309
        DOI:10.1145/1497561
        Issue’s Table of Contents

        Copyright © 2009 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: 7 April 2009
        • Accepted: 1 December 2008
        • Revised: 1 November 2008
        • Received: 1 October 2007
        Published in todaes Volume 14, Issue 2

        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