Simulation and Design: December 2004 Archives
I am currently experimenting with SimpleScalar which I why I have been updating my site for the past few days.
SimpleScalar can emulate the Alpha, PISA, ARM, and x86 instruction sets. The tool set includes a machine definition infrastructure that permits most architectural details to be separated from simulator implementations. All of the simulators distributed with the current release of SimpleScalar can run programs from any of the above listed instruction sets. Complex instruction set emulation (e.g., x86) can be implemented with or without microcode, making the SimpleScalar tools particularly useful for modeling CISC instruction sets.
SimpleScalar was created by Todd Austin. Development began while he was a Ph.D. student at the University of Wisconsin in Madison. Early versions of the tool set included contributions by Doug Burger and Guri Sohi. Today, SimpleScalar is developed and supported by SimpleScalar LLC.
According to Bill Yuricks website on Computer Architecture web sites
"in 2000 more than one third of all papers published in top computer architecture conferences used the SimpleScalar tools to evaluate their designs"
It was this comment that prompted me to have a look at the tool.
SimpleScalar LLC distribute their software under an open source model, trusting that the users will license the software that they use. The software is free for academic and research use.
The tool set is distributed with all source code, making it possible for users extend SimpleScalar, and to adapt existing models to their own ideas.
As part of my phd research I require an open source RISC simulator. The candidate that seems to fit that profile is Spim.
Spim implements almost the entire MIPS32 assembler-extended instruction set. (It omits some complex floating point comparisons and rounding modes and details of the memory system page tables.) The MIPS architecture has several variants that differ in various ways (in particular, the MIPS64), which means that spim will not run programs compiled for all MIPS-based processors.
It was developed by James Larus, formerly: Professor, Computer Sciences Department, University of Wisconsin-Madison,currently: Senior Researcher at Microsoft Research.
Spim has the option to be cycle accurate and is available for Windows and Linux platforms.
If anyone is aware of any other RISC cycle accurate simulators, please email lnoonan_blog at yahoo.ie