FastSim consists of:
- 'Facile' a highly flexible and expressive processor-architecture specification-language.
(The language uses the "flex" and "bison" tools for generating the lexical
analyser and parser, respectively.)
- A compiler for the architecture specifications. This compiler produces
high-performance, fast-forwarding simulators.
- A run-time environment in which the fast-forwarding simulator executes.
- Some examples. Currently there are SPARC-based examples for a simple
pipeline, inorder-execution and dynamic execution.
This FastSim project is directly based upon the work of Eric Schnarr,
who created this as part of his PhD project,
FastSim v0.2. He developed the earlier FastSim v0.1 as a platform that could create
faster processor simulators than SimpleScalar. (
SimpleScalar was developed by Todd Austin for his PhD within the Multiscalar
Group of the University of Wisconsin-Madison.) FastSim v0.1 was an entirely new
piece of code written in assembler and C++ and used EEL (Executable Editing Library).
EEL was written by James Larus. FastSim v0.1 is an experimental piece of code that
is not intended for release, but details may be found here.
Eric has graciously re-licensed all
of the source code under the LGPL to allow the hosting of it under SourceForge.
Further mention goes to Mark Hill, Eric's advisor at the University of Wisconsin. Thanks to all!
This FastSim project is dedicated to:
- Modifying the original code to support running on processor platforms
other that the SPARC (the original platform), such as Intel x86.
- Modifying the code to support running on other operating systems, such
as Linux and Microsoft.
- Updating the simulator-compiler platform to support more features and
increase the performance of the simulator generated by FastSim.
- Creating various Facile specifications of various processor platforms,
as necessary, and supporting those specifications.
- Documenting how to use the FastSim platform.
- FastSim bug-fixing and general support.
Various useful, quick links:
Copyright © J.M.McGuiness
, all rights reserved. Last updated: 13/09/2002