SysLib ver. 0.1
C++ class library for cycle-based simulation
- Introduction
I wrote several SystemC program. More writing the code, more I wonder
how the simulation goes? how the methods is called? Then, I read the
SystemC and Cynlib codes, and to confirm the knowledge, I decided to
write just another C++ simulation library. Another reason I wrote
this is to verify how much the simulation speed is improved, if the
library supports MPI for simulation on cluster. I am going to add such
features, but now version 0.1 has only basic functions.
So, this is for
-
people who want to integrate some functions to cycle-based simluation
library, such as A/D or mixed event-driven simulation, and look for the
compact library for testing his/her idea before adding extentions to
more legitimate library.
-
people who want to know basic structure of cycle-based simulation
library.
- SysLib charcteristics
- C++ class library for cycle-based simulation.
- SystemC-like interface.
- Total code size is about 1500 lines.
- Only two data types(uint, uint_vector) are supported.
- No threads.
- No trace functions.
- Small but slow. 4 counter benchmark shows SysLib is
about 3 times slower than SystemC.
- Examples
These examples are included in "syslib-0.1.tar.gz".
- "Hello World", 2 implementations.
- Earier snapshot to show basic simulation algorithm.
- Small finite state machine.
- Simple bus function model.
- Simple pipeline model.
- To Do
SysLib-0.1.0 is very primitive one. I am planning to add these functions for
next version.
- threads.
- trace functions.
- several data types.
- pipline processor example.
- System Requirements
SysLib is written in C++ without any specific libraries. So, SysLib is
available on any systems that has ANSI C++ compiler.
I have tested SysLib works on the systems shown below.
- Linux 2.2.16 (gcc 2.95.2)
- SunOS 5.5.1 (gcc 2.95.2)
- Cygwin1.1 on WindowsNTsp6 (gcc 2.95.2)
- Download
Download the source "syslib-v01.tar.gz"(20KB)
- Messages and comments
hamabe@muf.biglobe.ne.jp
SysLib_TOP
HOME