SimpleScalar is a product of SimpleScalar, LLC that allows you to try out new computer architecture ideas. It consists of a simulator and a GNU gcc-based toolchain. Up to the March 2011 update, the company wasn't very active in maintaining this product so we are offering our working version. We would also like to update and bug-fix SimpleScalar as we are able.
Installing the SimpleScalar tools
The current version is tested on Ubuntu 7.04 (Feisty Fawn). You want to compile SimpleScalar for the type of byte-ordering on your machine. For example if you are on an Intel x86 machine you want little-endian. The install script assumes little-endian and will need to have all references to sslittle-na-sstrix replaced with sslittle-na-sstrix. I really should make this autodetect the byte ordering.
Requirements: G++ 3.3, GCC 3.3, Bison, GNU Make
Use subversion to check out the latest version:
$ svn co http://csrl.unt.edu/svn/tools/simplescalar --username=guest
Change to the directory you just downloaded:
$ cd simplescalar/
Run the compilation script:
$ sh simpleinstallar-little.sh
The script should have created a gcc cross-compiling toolchain for the SimpleScalar architecture and the SimpleScalar simulator. When you compile a program with the cross-compiler found in bin/ you will generate an ECOFF MIPS binary. The SimpleScalar architecture is a modified version of the MIPS architecture.
Tour of the Tools
|bin/||GCC v188.8.131.52, and Binutils 990811 binaries will be generated and placed here.|
|include/||Place for the generated header files.|
|lib/||Place for the generated library files.|
|man/||Place for the man pages.|
|docs/||Place for original SimpleScalar documentation.|
|sources/||All the source code directories are here, including some work toward migrating the compiler to gcc-2.95 (not working). We also want to update glibc, and binutils which are very ambitious projects.|
|simplesim-3.0/||SimpleScalar simulator binaries including sim-safe, sim-fast, sim-cache, sim-cheetah, and sim-outorder are generated here. I plan to move these into bin/ eventually and move this folder into sources. I have seen v4.0 floating around but it seems to be incomplete.|
|ssbig-na-sstrix/||Precompiled big-endian versions of the glibc-1.09 libraries. Currently cannot be compiled from scratch.|
|sslittle-na-sstrix/||Precompile little-endian versions of the glibc-1.09 libraries. Currently cannot be compiled from scratch.|
|tests/||Future suite of regression tests, but for now Hello, World! We will establish a buildbot page for this project so we can test on a variety of systems and the world can see what is broken.|