Covered Topics

Please see the list of the topics I've covered. It's located near the bottom of the page. Thanks for stopping in!!

Thursday, September 8, 2011

SPIM: MIPS 32-Bit Simulator

SPIM is a simulator that allows one to run programs in MIPS assembly language on one's own PC. Many college courses in computer architecture and engineering teach MIPS assembly language as part of the curriculum. MIPS stands for Microprocessor without Interlocked Pipeline Stages, and is an example of a RISC (Reduced Instruction Set Computer) architecture. MIPS is used in lots of embedded microprocessors, video game systems, some desktop workstations such as DEC (Digital Equipment Corporation) and SGI (Silicon Graphics, Inc.), and many other applications. MIPS based chips can be found in hand held computers and cell phones. There are both 32 bit and 64 bit versions of MIPS.

This semester, I am taking a computer hardware and architecture course and am getting prepared for our first MIPS 32 programming assignment. We will be using SPIM. SPIM is written by James Larus. You can find more information and downloads at the links below:

SPIM Sourceforge Project Page - You can download the Windows version conveniently here.

SPIM MIPS Simulator Homepage - You can find more information and LINUX versions by going here.

From my understanding of the documentation, the more recent versions of SPIM are apparently called "QtSPIM".

The LINUX downloads there appear to cater to Debian and Ubuntu users. I am currently in the process of finding out what is available for those of us who use Fedora and other distros. Last night I attempted to compile SPIM directly from the source code onto my Fedora system, but to no avail. There is a problem with the makefile that I am currently trying to resolve. I have contacted some people about it, so as soon as I find out what is going on with that I'll post it here. Meanwhile, in the interest of quickly getting something going for the class, I loaded QtSPIM to my Windows VISTA partition from the first of the two links shown above. Here is a screenshot:

Note there are two windows open. One is the "console" window that shows any results or dialogs when the program runs. The "Qt" window shows you your source code, registers, and other relevant information.

This promises to be quite an interesting semester. Will write more as things progress.

No comments:

Post a Comment

Constructive comments are welcome! Spam, or any abusive or profane comments will be deleted.