Efficient event-driven simulation of parallel processor architectures

In this paper we present a new approach for generating high-speed optimized event-driven instruction set level simulators for adaptive massively parallel processor architectures. The simulator generator is part of a methodology for the systematic mapping, evaluation, and exploration of massively parallel processor architectures that are designed for special purpose applications in the world of embedded computers. The generation of high-speed cycle-accurate simulators is of utmost importance here, because they are directly used both for parallel processor architecture debugging and evaluation purposes, as well as during time-consuming architecture/compiler co-exploration. We developed a modeling environment which automatically generates a C++ simulation model either from a graphical input or directly from an XML-based architecture description. Here, we focus on the underlying event-driven simulation model and present our modeling environment, in particular the features of the graphical parallel processor architecture editor and the automatic instruction set level simulator generator. Finally, in a case-study, we demonstrate the pertinence of our approach by simulating different processor arrays. The superior performance of the generated simulators compared to existing simulators and simulator generation approaches is shown.

[1]  John J. Zasio,et al.  SSIM: A Software Levelized Compiled-Code Simulator , 1987, 24th ACM/IEEE Design Automation Conference.

[2]  Li Shen RTL concurrent fault simulation , 2003, 2003 Test Symposium.

[3]  Luca Benini,et al.  MPARM: Exploring the Multi-Processor SoC Design Space with SystemC , 2005, J. VLSI Signal Process..

[4]  Frank Hannig,et al.  Automatic and Optimized Generation of Compiled High-Speed RTL Simulators , 2004 .

[5]  Lionel Bening A two-state methodology for RTL logic simulation , 1999, DAC '99.

[6]  Dieter Monjau,et al.  Workshop "Methoden und Beschreibungssprachen zur Modellierung und Verifikation von Schaltungen und Systemen" , 2001, Informationstechnik Tech. Inform..

[7]  Jürgen Teich,et al.  A Dynamically Reconfigurable Weakly Programmable Processor Array Architecture Template , 2006, ReCoSoC.

[8]  J. Kukula,et al.  Symbolic RTL simulation , 2001, DAC '01.

[9]  Rainer Leupers,et al.  A universal technique for fast and flexible instruction-set architecture simulation , 2002, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[10]  R. Nigel Horspool,et al.  Ultra fast cycle-accurate compiled emulation of inorder pipelined architectures , 2007, J. Syst. Archit..

[11]  Bernard Pottier,et al.  Co-Design of Massively Parallel Embedded Processor Architectures , 2005, ReCoSoC.

[12]  Jürgen Teich,et al.  High-Speed Event-Driven RTL Compiled Simulation , 2004, SAMOS.

[13]  Luca Benini,et al.  Combining Simulation and Formal Methods for System-Level Performance Analysis , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[14]  Heinrich Meyr,et al.  Retargeting of compiled simulators for digital signal processors using a machine description language , 2000, DATE '00.

[15]  Luca Benini,et al.  SystemC Cosimulation and Emulation of Multiprocessor SoC Designs , 2003, Computer.

[16]  Luca Benini,et al.  An Integrated Open Framework for Heterogeneous MPSoC Design Space Exploration , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[17]  R. Nigel Horspool,et al.  Ultra Fast Cycle-Accurate Compiled Emulation of Inorder Pipelined Architectures , 2005, SAMOS.

[18]  Jürgen Teich,et al.  An Architecture Description Language for Massively Parallel Processor Architectures , 2006, MBMV.