ABSTRACT
With the growing number of programmable processing elements in today's Multi Processor System-on-Chip (MPSoC) designs, the synergy required for the development of the hardware architecture and the software running on them is also increasing. In MPSoC development environment, changes in the hardware architecture can bring in extensive re-partitioning or re-parallelization of the software architecture. Fast and accurate functional simulation and performance estimation techniques are needed to cope with this co-design problem at the early phases of MPSoC design space exploration. The current paper addresses this issue by introducing a framework which combines hybrid simulation, cache simulation and online trace-driven replay techniques to accurately predict performance of programmable elements in an MPSoC environment. The resulting simulation technique can easily cope with the continuous re-organizations of software architectures during an Instruction Set Simulator (ISS) based design process. Experimental results show that this framework can improve system simulation speed by 3-5× on average while achieving accuracy closely comparable to traditional ISSes.
- J. Edler and M. D. Hill. Dinero IV Trace-Driven Uniprocessor Cache Simulator "http://www.cs.wisc.edu/ markhill/DineroIV/".Google Scholar
- L. Eeckhout, K. de Bosschere, and H. Neefs. Performance analysis through synthetic trace generation. In ISPASS '00: IEEE International Symposium on Performance Analysis of Systems and Software, 2000. Google ScholarDigital Library
- L. Gao, S. Kraemer, R. Leupers, G. Ascheid, and H. Meyr. A fast and generic hybrid simulation approach using c virtual machine. In CASES '07: Compilers, Architecture and Synthesis for Embedded Systems, 2007. Google ScholarDigital Library
- T. D. Givargis, F. Vahid, and J. Henkel. Trace-driven system-level power evaluation of system-on-a-chip peripheral cores. In ASP-DAC '01: Asia South Pacific design automation, 2001. Google ScholarDigital Library
- J. Jung, S. Yoo, and K. Choi. Fast cycle-approximate MPSoC simulation based on synchronization time-point prediction. Design Automation for Embedded Systems, 11(4):223--247, December 2007.Google ScholarDigital Library
- K. Karuri, M. A. Al Faruque, S. Kraemer, R. Leupers, G. Ascheid, H. and Meyr. Fine-grained Application Source Code Profiling for ASIP Design. In DAC '05: Design Automation Conference, 2005. Google ScholarDigital Library
- T. Kogel, M. Doerper, A. Wieferink, R. Leupers, G. Ascheid, H. Meyr, and S. Goossens. A modular simulation framework for architectural exploration of on-chip interconnection networks. In CODES + ISSS '03: IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis, 2003. Google ScholarDigital Library
- S. Kraemer, L. Gao, J. Weinstock, R. Leupers, G. Ascheid, and H. Meyr. HySim: a fast simulation framework for embedded software development. In CODES+ISSS '07, 2007. Google ScholarDigital Library
- M. Laurenzano, B. Simon, A. Snavely, and M. Gunn. Low cost trace-driven memory simulation using simpoint. SIGARCH Comput. Archit. News, 33(5):81--86, 2005. Google ScholarDigital Library
- mAgic DSP. www.atmel.com.Google Scholar
- T. Meyerowitz, M. Sauermann, D. Langen, and A. Sangiovanni-Vincentelli. Source-Level timing annotation and simulation for a heterogeneous multiprocessor. In DATE '08: Conference on Design, Automation and Test in Europe, 2008. Google ScholarDigital Library
- A. Muttreja, A. Raghunathan, S. Ravi, and N. K. Jha. Hybrid simulation for embedded software energy estimation. In DAC '05, 2005. Google ScholarDigital Library
- A. Muttreja, A. Raghunathan, S. Ravi, and N. K. Jha. Hybrid Simulation for Energy Estimation of Embedded Software. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 2007. Google ScholarDigital Library
- J. Namkung, D. Kim, R. Gupta, I. Kozintsev, J.-Y. Bouget, and C. Dulong. Phase guided sampling for efficient parallel application simulation. In CODES+ISSS '06, 2006. Google ScholarDigital Library
- A. Nohl, G. Braun, O. Schliebusch, R. Leupers, H. Meyr, and A. Hoffmann. A universal technique for fast and flexible instruction-set architecture simulation. In DAC '02, 2002. Google ScholarDigital Library
- E. Perelman, M. Polito, J.-Y. Bouguet, J. Sampson, B. Calder, and C. Dulong. Detecting Phases in Parallel Applications on Shared Memory Architectures. In IPDPS '06: IEEE International Parallel and Distributed Processing Symposium, 2006. Google ScholarDigital Library
- T. Sherwood, E. Perelman, G. Hamerly, S. Sair, and B. Calder. Discovering and exploiting program phases. IEEE Micro, pages 84--93, December 2003. Google ScholarDigital Library
- S. Sonntag, M. Gries, and C. Sauer. Performance evaluation of packet processing architectures using multiclass queuing networks. In ANSS '06: Annual Symposium on Simulation, 2006. Google ScholarDigital Library
- T. Wild, A. Herkersdorf, and R. Ohlendorf. Performance evaluation for System-on-Chip architectures using trace-based transaction level simulation. In DATE '06, 2006. Google ScholarDigital Library
- R. Wunderlich, T. Wenisch, B. Falsafi, and J. Hoe. SMARTS: Accelerating microarchitecture simulation via rigorous statistical sampling. In ISCA '03: International Symposium on Computer Architecture, 2003. Google ScholarDigital Library
- J. Zhu and D. D. Gajski. A retargetable, ultra-fast instruction set simulator. In DATE '99, 1999. Google ScholarDigital Library
Index Terms
- Multiprocessor performance estimation using hybrid simulation
Recommendations
Synchronization for hybrid MPSoC full-system simulation
DAC '12: Proceedings of the 49th Annual Design Automation ConferenceFull-system simulators are essential to enable early software development and increase the MPSoC programming productivity, however, their speed is limited by the speed of processor models. Although hybrid processor simulators provide native execution ...
Hardware-accelerated cache simulation for multicore by FPGA
RACS '18: Proceedings of the 2018 Conference on Research in Adaptive and Convergent SystemsDevelopers often use a virtual platform to develop software before the hardware is available. For software optimization, it is important to profile the cache misses of applications in a realistic operating environment under the virtual platform. In the ...
Overview of FPGA-Based Multiprocessor Systems
RECONFIG '09: Proceedings of the 2009 International Conference on Reconfigurable Computing and FPGAsModern Systems-on-Chip (SoC) development is moving toward multiprocessor-based design. Embedded systems have evolved from an uniprocessor to a multiprocessor approach, seeking better performance and less energy consumption. It is widely accepted that ...
Comments