Advertisement

Scalable Simulation for MPSoC Software and Architectures

  • Rainer Leupers
  • Stefan Kraemer
  • Lei Gao
  • Christoph Schumacher
Chapter

Abstract

Multi-processor systems-on-chip (MPSoCs) are gaining a lot of attraction due to their good performance to power ratio. In order to cope with the complexity of such systems, early availability of full system simulation is of high importance. The simulation time is increasing with the growing number of processors. Therefore, scalable simulation techniques are required to mitigate this problem. Two new concepts to increase the simulation speed are becoming popular. First, raising the abstraction level increases simulation speed at the expense of a lower simulation accuracy. Second, exploiting all available processor cores in today’s host systems increases the simulation speed without sacrificing the accuracy. Depending on the individual use case, one technique alone or a mixture of both techniques can be applied to create a fast simulation environment which is suitable for design space exploration, software development, performance estimation, and debugging.

Keywords

Performance Estimation Hybrid Simulation Parallel Simulation Design Space Exploration Virtual Simulator 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Notes

Acknowledgments

We thank Pees, Braun, Nohl, Hoffmann, and all the people who have contributed to the development of these techniques [2, 20].

References

  1. 1.
    Bailey, M., Briner, J., Chamberlain, R. Parallel logic simulation of VLSI systems. ACM Comput Surv 26(3), 255–294, (1994).CrossRefGoogle Scholar
  2. 2.
    Braun, G., Nohl, A., Hoffmann, A., et al. A universal technique for fast and flexible instruction-set architecture simulation. Comp-Aid Des Inte Circuits Syst, IEEE Trans 23(12), 1625–1639, (2004).CrossRefGoogle Scholar
  3. 3.
    Carloni, L.P., Sangiovanni-Vincentelli, A.L.: Coping with latency in SoC design. IEEE Micro 22(5), 24–35, Sep./Oct. (2002).CrossRefGoogle Scholar
  4. 4.
    Chandy, K., and Misra, J.: Distributed simulation: A case study in design and verification of distributed programs. Software Engineering, IEEE Trans SE-5(5), 440–452, Sept. (1979).MathSciNetCrossRefGoogle Scholar
  5. 5.
    Fujimoto, R. Parallel discrete event simulation. Commun ACM 33(10), 30–53, (1990).CrossRefGoogle Scholar
  6. 6.
    Gao, L., Karuri, K., Kraemer, S., et al.: Multiprocessor performance estimation using hybrid simulation. In: DAC ’08: Proceedings of the 45th annual conference on Design automation, pp. 325–330, New York, NY, USA, June, AMC (2008), Anaheim, CA.Google Scholar
  7. 7.
    Gao, L., Kraemer, S., Leupers, R., et al.: A fast and generic hybrid simulation approach using C virtual machine. In: CASES ’07: Proceedings of the 2007 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems, pp. 3–12, Salzburg, Austria (2007) New York, NY, USA, Sept, ACM.Google Scholar
  8. 8.
    Girbal, S., Mouchard, G., Cohen, A., et al.: dist: a simple, reliable and scalable method to significantly reduce processor architecture simulation time. In: SIGMETRICS ’03: Proceedings of the 2003 ACM SIGMETRICS international conference on measurement and modeling of computer systems, pp. 1–12, New York, NY, USA, 2003. ACM, (2003).Google Scholar
  9. 9.
    Hennessy, J.L., Patterson, D.A.: San Francisco, CA, USA, Computer architecture: A quantitative approach. Morgan Kaufmann Publishers Inc., (2003).Google Scholar
  10. 10.
    Ho, R., Mai, K.W., Horowitz, M.A.: The future of wires. IEEE Trans Comp-Aid Des 89(4), 490–504, Apr (2001).Google Scholar
  11. 11.
    Hoffmann, A., Kogel, T., Nohl, A., Braun, G., Schliebusch, O., Wahlen, O., Wieferink, A., Meyr, H.: A novel methodology for the design of application-specific instruction-set processors (ASIPs) using a machine description language. IEEE Trans Comp-Aid Des 20(11), 1338–1354, (2001).CrossRefGoogle Scholar
  12. 12.
    Jefferson, D.: Virtual time. ACM Trans Program Lang Syst 7(3), 404–425 (1985).MathSciNetCrossRefGoogle Scholar
  13. 13.
    Karuri, K., Faruque, M.A.A., Kraemer, S., et al.: Fine-grained application source code profiling for ASIP design. In DAC ’05, pp. 329–334, New York, NY, USA, June, ACM, (2005) Anaheim, CA.Google Scholar
  14. 14.
    Kraemer, S., Leupers, R., Petras, D., Philipp, T.: A checkpoint/restore framework for SystemC-based virtual platforms. In System-on-Chip, 2009. SOC 2009. International Symposium on, pp. 161–167, Tampere, Finland (2009) Piscataway, NJ, USA, Oct, IEEE Press.Google Scholar
  15. 15.
    Lungeanu D., Shi, C.: Parallel and distributed VHDL simulation. In: DATE ’00: Proceedings of the conference on design, automation and test in Europe, pp. 658–662, New York, NY, USA, 2000. ACM (2000).Google Scholar
  16. 16.
    Nicol, D., Heidelberger, P.: Parallel execution for serial simulators. ACM Trans Model Comput Simul 6(3), 210–242, (1996).MATHCrossRefGoogle Scholar
  17. 17.
    Paolucci, P.S., Jerraya, A.A., Leupers, R., Thiele, L., Vicini, P.: SHAPES: A tiled scalable software hardware architecture platform for embedded systems. In: Proceedings of the International Conference on Hardware/Software Co-design and System Synthesis (CODES+ISSS), pp. 167–172, Seoul, Korea (2006) New York, NY, USA, Oct, ACM.Google Scholar
  18. 18.
    Paolucci, P.S., Kajfasz, P., Bonnot, P., Candaele, B., Maufroid, D., Pastorelli, E., Ricciardi, A., Fusella, Y., Guarino, E.: mAgic-FPU and MADE: A customizable VLIW core and the modular VLIW processor architecture description environment. Comp Phys Communi 139(1), 132–143 (2001).MATHCrossRefGoogle Scholar
  19. 19.
    Paolucci, P.S.: The diopsis multiprocessor tile of SHAPES. In: 6th International Forum on Application-Specific Multi-Processor SoC MPSOC’06, Colorado, USA, August (2006).Google Scholar
  20. 20.
    Pees, S., Hoffmann, A., Meyr, H.: Retargetable compiled simulation of embedded processors using a machine description language. ACM Trans Des Autom Electron Syst 5(4), 815–834 (2000).CrossRefGoogle Scholar
  21. 21.
    Pees, S., Hoffmann, A., Zivojnovic, V., et al.: LISA–-machine description language for cycle-accurate models of programmable DSP architectures. In: DAC ’99: Proceedings of the 36th annual ACM/IEEE Design Automation Conference, pp. 933–938, New York, NY, USA, 1999 ACM (1999).Google Scholar
  22. 22.
    Penry, D., Fay, D., Hodgdon, D., et al.: Exploiting parallelism and structure to accelerate the simulation of chip multi-processors. In HPCA, pp. 29–40 IEEE Computers Society, Feb (2006).Google Scholar
  23. 23.
    Reinhardt, S., Hill, M., Larus, J., et al.: The wisconsin wind tunnel: virtual prototyping of parallel computers. SIGMETRICS Perform Eval Rev 21(1), 48–60 (1993).CrossRefGoogle Scholar
  24. 24.
    SHAPES – Scalable Software Hardware computing Architecture Platform for Embedded Systems. http://www.shapes-p.org.
  25. 25.
    Sporer, T., Beckinger, M., Franck, A., Bacivarov, I., Haid, W., Huang, K., Thiele, L., Paolucci, P.S., Bazzana, P., Vicini, P., Ceng, J., Kraemer, S., Leupers, R.: SHAPES – a scalable parallel hw/sw architecture applied to wave field synthesis. In Proceedings of the AES 32nd International Conference, pp. 175–187, Hillerød, Copenhagen, Denmark, September (2007).Google Scholar
  26. 26.
    Synopsys Inc. “Synopsys Virtual Platforms”, Mountain View, CA. 2010 http://www.synopsys.com/Tools/SLD/VirtualPrototyping/
  27. 27.
    Taylor, M.B., Kim, J., Miller, J., Wentzlaff, D., et al. The raw microprocessor: A computational fabric for software circuits and general-purpose programs. IEEE Micro 22(2), 25–35 (2002).CrossRefGoogle Scholar
  28. 28.
    Wang, Z,. Herkersdorf, A.: An efficient approach for system-level timing simulation of compiler-optimized embedded software. In: DAC ’09, pp. 220–225, New York, NY, USA, July (2009) ACM, San Franscisco, CA.Google Scholar
  29. 29.
    Wilson,. K.G.: Confinement of quarks. Phys Rev D 10(8), 2445–2459, Oct (1974).CrossRefGoogle Scholar
  30. 30.
    Yi, Y., Kim, D., Ha, S. : Fast and accurate cosimulation of MPSoC using trace-driven virtual synchronization. Comp-Aid Des Integ Circuits Syst, IEEE Trans, 26(12), 2186–2200 Dec. (2007).CrossRefGoogle Scholar

Copyright information

© Springer Science+business Media, LLC 2010

Authors and Affiliations

  • Rainer Leupers
    • 1
  • Stefan Kraemer
    • 2
  • Lei Gao
    • 2
  • Christoph Schumacher
    • 2
  1. 1.Software for Systems on Silicon (SSS), RWTH Aachen UniversityAachenGermany
  2. 2.RWTH Aachen UniversityAachenGermany

Personalised recommendations