Towards a heterogeneous simulation kernel for system-level models: a SystemC kernel for synchronous data flow models

As SystemC gains popularity as a modeling language of choice for system-on-chip (SoC) designs, heterogeneous modeling in SystemC and efficient simulation become increasingly important. However, in the current reference implementation, all SystemC models are simulated through a nondeterministic discrete-event (DE) simulation kernel that schedules events at run time mimicking other models of computation (MoCs) using DE, which may get cumbersome. This sometimes results in too many delta cycles hindering the simulation performance of the model. SystemC also uses this simulation kernel as the target simulation engine. This makes it difficult to express different MoCs naturally in SystemC. In an SoC model, different components may need to be naturally expressible in different MoCs. These components may be amenable to static scheduling-based simulation or other presimulation optimization techniques. The goal is to create a simulation framework for heterogeneous SystemC models and to gain efficiency and ease of use within the framework of SystemC reference implementation. In this paper, a synchronous data flow (SDF) kernel extension for SystemC is introduced. Experimental results showing improvement in simulation time are also presented.

[1]  Edward A. Lee,et al.  Comparing models of computation , 1996, Proceedings of International Conference on Computer Aided Design.

[2]  Sandeep K. Shukla,et al.  Towards a Heterogeneous Simulation Kernel for System Level Models: A SystemC Kernel for Synchronous Data Flow Models , 2004, ISVLSI.

[3]  A.C. Cangellaris,et al.  Three test problems for the comparison of lossy transmission line algorithms , 2002, Electrical Performance of Electronic Packaging,.

[4]  J. L. Prince,et al.  Exploration of a new, efficient approach to modeling and simulation of interconnects , 2001, 2001 Proceedings. 51st Electronic Components and Technology Conference (Cat. No.01CH37220).

[5]  Hiren D. Patel,et al.  SystemC Kernel Extensions for Hetero-geneous System Modeling , 2004 .

[6]  Michael Clausen,et al.  Efficient Solution of Linear Diophantine Equations , 1989, J. Symb. Comput..

[7]  Sandeep K. Shukla,et al.  Truly heterogeneous modeling with systemC , 2004 .

[8]  Francisco Javier,et al.  Refining a high level systemC model , 2003 .

[9]  Erwin A. de Kock,et al.  YAPI: application modeling for signal processing systems , 2000, Proceedings 37th Design Automation Conference.

[10]  Gérard P. Huet,et al.  An Algorithm to Generate the Basis of Solutions to Homogeneous Linear Diophantine Equations , 1978, Inf. Process. Lett..

[11]  Luciano Lavagno,et al.  Models of computation for embedded system design , 1999 .

[12]  Sans Pareil,et al.  Amdahl's law , 2005, International Journal of Parallel Programming.

[13]  Thorsten Grotker,et al.  System Design with SystemC , 2002 .

[14]  Edward A. Lee,et al.  Static Scheduling of Synchronous Data Flow Programs for Digital Signal Processing , 1989, IEEE Transactions on Computers.

[15]  Edward A. Lee,et al.  Hierarchical finite state machines with multiple concurrency models , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[16]  Sandeep K. Shukla,et al.  Automated concurrency re-assignment in high level system models for efficient system-level simulation , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

[17]  Sandeep K. Shukla,et al.  Efficient simulation of synthesis-oriented system level designs , 2002, 15th International Symposium on System Synthesis, 2002..

[18]  Hiren D. Patel,et al.  HEMLOCK: HEterogeneous ModeL Of Computation Kernel for SystemC , 2003 .

[19]  Edward A. Lee,et al.  Software Synthesis from Dataflow Graphs , 1996 .

[20]  Sandeep K. Shukla,et al.  Concurrency in System Level Design: Conflict Between Simulation and Synthesis Goals , 2002, IWLS.