Open Virtual Platforms (OVP) (http://www.OVPworld.org) includes the freely available simulator OVPsim, a library of models of processors, peripherals and platforms, and APIs which enable users to develop their own models. The models in the library are open source, written in C, and include the MIPS 4K, 24K and 34K cores. These models are created and maintained by Imperas (http://www.imperas.com) and in partnership with MIPS Technologies have been tested and assigned the MIPS-Verified(tm) mark. The OVP site also includes models of ARM, Tensilica and OpenCores/openRisc processors. Sample MIPS-based platforms include both bare metal environments and platforms for booting unmodified Linux binary images. These platforms/emulators are available as source or binaries and are fast, free, and easy to use. OVPsim is developed and maintained by Imperas and is very fast (100s of million instructions per second), and built to handle multicore architectures. To download the MIPS OVPsim simulators/emulators visit http://www.OVPworld.org/mips.

+

Open Virtual Platforms (OVP) (http://www.OVPworld.org) includes the freely available simulator OVPsim, a library of models of processors, peripherals and platforms, and APIs which enable users to develop their own models. The models in the library are open source, written in C, and include the MIPS 4K, 24K, 34K, 74K, 1004K, 1074K and M14K cores. These models are created and maintained by Imperas (http://www.imperas.com) and in partnership with MIPS Technologies have been tested and assigned the MIPS-Verified(tm) mark. The OVP site also includes models of ARM, NEC, Power Architecture, Tensilica and OpenCores/openRisc processors. Sample MIPS-based platforms include both bare metal environments and platforms for booting unmodified Linux binary images. These platforms/emulators are available as source or binaries and are fast, free, and easy to use. OVPsim is developed and maintained by Imperas and is very fast (100s of million instructions per second), and built to handle multicore architectures. To download the MIPS OVPsim simulators/emulators visit http://www.OVPworld.org/mips.

== GXemul ==

== GXemul ==

−

emulates ARM, M88K, MIPS, PowerPC, and SuperH processors and machines. The MIPS emulation is fairly complete as it can run NetBSD, OpenBSD, Linux, Ultrix, and Sprite. It emulates several different MIPS ISA I-IV and MIPS32/64 processors. [[ARC]], [[DECstation]], [[Cobalt]], [[Mips_Malta|Malta]], HPCmips, SGI, and Algorithmic machines are among the currently emulated MIPS machines; however, the best supported of these machines is probably the DECstation 5000/200. The author releases updates every month or so. The GXemul homepage is at http://gavare.se/gxemul .

+

emulates ARM, M88K, MIPS, PowerPC, and SuperH processors and machines. The MIPS emulation is fairly complete as it can run NetBSD, OpenBSD, Linux, Ultrix, and Sprite. It emulates several different MIPS ISA I-IV and MIPS32/64 processors. [[ARC]], [[DECstation]], [[Cobalt]], [[MIPS_Malta|Malta]], HPCmips, SGI, and Algorithmic machines are among the currently emulated MIPS machines; however, the best supported of these machines is probably the DECstation 5000/200. The GXemul homepage is at http://gxemul.sourceforge.net/ .

== SimOS ==

== SimOS ==

Line 18:

Line 18:

== MIPSsim ==

== MIPSsim ==

−

is MIPS Technologies' proprietary MIPS simulator. It actually is more like a family of several MIPS simulators which differ in performance and accuracy allowing the user to choose the right tool for the purpose. Linux supports MIPSsim as a special target platform.

+

not to be confused with [[Emulators#MipsSim_2|MipsSim]] is MIPS Technologies' proprietary MIPS simulator. It actually is more like a family of several MIPS simulators which differ in performance and accuracy allowing the user to choose the right tool for the purpose. Linux supports [[MIPSsim]] as a special target platform.

== MipsSim ==

== MipsSim ==

−

''MipsSim'' is a MIPS emulator for the [http://www.tik.ee.ethz.ch/~topsy Topsy] educational operating system. It's a fairly simple emulator, written in Java, that emulates a R3000 processor. This project seems to be quite old and inactive (the emulator needs some modifications to compile with recent JDK). The MipsSim homepage <nowiki>http://www.tik.ee.ethz.ch/~gfa/MipsSim.html</nowiki> is now dead; it fortunately has been [http://web.archive.org/web/20041012105224/http://www.tik.ee.ethz.ch/~gfa/MipsSim.html archived] at the [http://www.archive.org internet archive].

+

''MipsSim'' (not to be confused with MIPSsim, note the capitalizatoin) is a MIPS emulator for the [http://www.tik.ee.ethz.ch/~topsy Topsy] educational operating system. It's a fairly simple emulator, written in Java, that emulates a R3000 processor. This project seems to be quite old and inactive (the emulator needs some modifications to compile with recent JDK). The MipsSim homepage <nowiki>http://www.tik.ee.ethz.ch/~gfa/MipsSim.html</nowiki> is now dead; it fortunately has been [http://web.archive.org/web/20041012105224/http://www.tik.ee.ethz.ch/~gfa/MipsSim.html archived] at the [http://www.archive.org internet archive].

== SPIM ==

== SPIM ==

−

''SPIM'' (which is just MIPS spelled in reverse) is an emulator that supports a MIPS32 instruction set (no MIPS64 bit support) with some minor restrictions in available instructions. It works by interpreting MIPS assembler source code and thereby avoids binary "complications". It seems most suitable for learning the basics of MIPS assembly language. SPIM is available from [http://www.cs.wisc.edu/~larus/spim.html A MIPS32 Simulator by James Larus site] in source code and binary executables format for Linux, Windows and Mac OS&nbsp;X . The latest version is 7.2.1, dated August 2005.

+

''SPIM'' (which is just MIPS spelled in reverse) is an emulator that supports a MIPS32 instruction set (no MIPS64 bit support) with some minor restrictions in available instructions. It works by interpreting MIPS assembler source code and thereby avoids binary "complications". It seems most suitable for learning the basics of MIPS assembly language. SPIM is available from [http://www.cs.wisc.edu/~larus/spim.html A MIPS32 Simulator by James Larus site] in source code and binary executables format for Linux, Windows and Mac OS&nbsp;X (non native, running in X11) . The latest version is 7.5, dated August 2009.

== VMIPS ==

== VMIPS ==

−

is an [[R3000]] emulator. VMIPS comes with a few standard devices: SPIM-compatible console device, Standard clock device, Halt device and [[DECstation]] 5000/200-compatible devices. VMIPS isn't updated that often (the last update was in January of 2005) but the author does maintain it and has a mailing list (not too active) for news. VMIPS is written in C++ and is extensible since the object-oriented way in which it is written makes it easy to understand and modify. The VMIPS documentation is well-written. Developing new devices for VMIPS is straightforward. The VMIPS homepage is located at http://www.dgate.org/vmips/.

+

is an [[R3000]] emulator. VMIPS comes with a few standard devices: SPIM-compatible console device, Standard clock device, Halt device and [[DECstation]] 5000/200-compatible devices. New VMIPS versions are released infrequently every few years; the latest release 1.4 dates from January [[2012]] but the author does maintain it and has a mailing list (not too active) for news. VMIPS is written in C++ and is extensible since the object-oriented way in which it is written makes it easy to understand and modify. The VMIPS documentation is well-written. Developing new devices for VMIPS is straightforward. The VMIPS homepage is located at http://www.dgate.org/vmips/.

[http://www.mameworld.net MAME] is a Multi Arcade Machine Emulator, a program that emulates the hardware (and low-level firmware) of a massive variety of arcade machines. MESS is a Multi Emulator Super System, an emulator for the hardware of many different games consules (e.g. Sega, NES, SNES, etc.)

[http://www.mameworld.net MAME] is a Multi Arcade Machine Emulator, a program that emulates the hardware (and low-level firmware) of a massive variety of arcade machines. MESS is a Multi Emulator Super System, an emulator for the hardware of many different games consules (e.g. Sega, NES, SNES, etc.)

Line 56:

Line 58:

is an emulator of a [[Cisco]] 7200, 3600 and 3700 routers. The software emulates a R4600 CPU and some of the peripherals of the Cisco routers ([[Marvell_system_controllers|Galileo GT64010]], DEC Tulip 21140, DEC 21050, ...). This emulator is actively maintained. There is a good deal of emphasis on emulating network devices, as you might expect with a Cisco emulator. The Cisco 7200 Simulator homepage is located at http://www.ipflow.utc.fr/index.php/Cisco_7200_Simulator.

is an emulator of a [[Cisco]] 7200, 3600 and 3700 routers. The software emulates a R4600 CPU and some of the peripherals of the Cisco routers ([[Marvell_system_controllers|Galileo GT64010]], DEC Tulip 21140, DEC 21050, ...). This emulator is actively maintained. There is a good deal of emphasis on emulating network devices, as you might expect with a Cisco emulator. The Cisco 7200 Simulator homepage is located at http://www.ipflow.utc.fr/index.php/Cisco_7200_Simulator.

−

== Qemu ==

+

== QEMU ==

−

[http://www.qemu.org Qemu] has its [[Qemu|own page]].

+

[http://www.qemu.org QEMU] has its [[QEMU|own page]].

== VirtualMIPS ==

== VirtualMIPS ==

[http://code.google.com/p/virtualmips/ VirtualMIPS] is an emulator of MIPS SoC's and systems, currently only supporting the [[Ingenic]] Jz4740.

[http://code.google.com/p/virtualmips/ VirtualMIPS] is an emulator of MIPS SoC's and systems, currently only supporting the [[Ingenic]] Jz4740.

+

+

== Miep ==

+

[http://www.vanheusden.com/miep/ Miep] is work in progress. It is meant to become an SGI Indy emulator.

Contents

Open Virtual Platforms (OVP) OVPsim

Open Virtual Platforms (OVP) (http://www.OVPworld.org) includes the freely available simulator OVPsim, a library of models of processors, peripherals and platforms, and APIs which enable users to develop their own models. The models in the library are open source, written in C, and include the MIPS 4K, 24K, 34K, 74K, 1004K, 1074K and M14K cores. These models are created and maintained by Imperas (http://www.imperas.com) and in partnership with MIPS Technologies have been tested and assigned the MIPS-Verified(tm) mark. The OVP site also includes models of ARM, NEC, Power Architecture, Tensilica and OpenCores/openRisc processors. Sample MIPS-based platforms include both bare metal environments and platforms for booting unmodified Linux binary images. These platforms/emulators are available as source or binaries and are fast, free, and easy to use. OVPsim is developed and maintained by Imperas and is very fast (100s of million instructions per second), and built to handle multicore architectures. To download the MIPS OVPsim simulators/emulators visit http://www.OVPworld.org/mips.

GXemul

emulates ARM, M88K, MIPS, PowerPC, and SuperH processors and machines. The MIPS emulation is fairly complete as it can run NetBSD, OpenBSD, Linux, Ultrix, and Sprite. It emulates several different MIPS ISA I-IV and MIPS32/64 processors. ARC, DECstation, Cobalt, Malta, HPCmips, SGI, and Algorithmic machines are among the currently emulated MIPS machines; however, the best supported of these machines is probably the DECstation 5000/200. The GXemul homepage is at http://gxemul.sourceforge.net/ .

SimOS

models hardware similar to that of machines sold by Silicon Graphics, Inc. and Digital Equipment Corporation. The key component of such machines is the CPU, and SimOS currently provides models of the MIPS R4000 and R10000 and Digital Alpha processor families. In addition to the CPU, SimOS simulates caches, multiprocessor memory busses, disk drives, ethernet, consoles, and other devices commonly found on these machines. By simulating the hardware typically found on commercial computer platforms, porting existing operating systems to the SimOS environment is easy. IRIX 5.3, 6.4 and Digital UNIX have been ported; an Alpha port of Linux is being worked on. The project, which is hosted at http://simos.stanford.edu, seems to have been active in the 1998-2001 timeframe. Nothing new has been added since then and the overall status of the project is uncertain.

There is a SimBCMBCM1250 simulator based on SimOs. Currently it support two cpus, timer, DUART, genbus, memory controller, dma, ether card and it also support gdb remote debug. It can run CFE and linux 2.6 kernel. The NICAT L4 Pistachio can be run in SimBCM.

Sulima

Sulima is an instruction set architecture (ISA) simulator, originally designed as a research and teaching tool for internal use by the Distributed Systems Group at the University of New South Wales. The documentation is sparse but refers to the use of gcc-2.95 which indicates a very old project. The Sulima homepage may be found at http://www.ertos.nicta.com.au/software/sulima/.

MIPSsim

not to be confused with MipsSim is MIPS Technologies' proprietary MIPS simulator. It actually is more like a family of several MIPS simulators which differ in performance and accuracy allowing the user to choose the right tool for the purpose. Linux supports MIPSsim as a special target platform.

MipsSim

MipsSim (not to be confused with MIPSsim, note the capitalizatoin) is a MIPS emulator for the Topsy educational operating system. It's a fairly simple emulator, written in Java, that emulates a R3000 processor. This project seems to be quite old and inactive (the emulator needs some modifications to compile with recent JDK). The MipsSim homepage http://www.tik.ee.ethz.ch/~gfa/MipsSim.html is now dead; it fortunately has been archived at the internet archive.

SPIM

SPIM (which is just MIPS spelled in reverse) is an emulator that supports a MIPS32 instruction set (no MIPS64 bit support) with some minor restrictions in available instructions. It works by interpreting MIPS assembler source code and thereby avoids binary "complications". It seems most suitable for learning the basics of MIPS assembly language. SPIM is available from A MIPS32 Simulator by James Larus site in source code and binary executables format for Linux, Windows and Mac OS X (non native, running in X11) . The latest version is 7.5, dated August 2009.

VMIPS

is an R3000 emulator. VMIPS comes with a few standard devices: SPIM-compatible console device, Standard clock device, Halt device and DECstation 5000/200-compatible devices. New VMIPS versions are released infrequently every few years; the latest release 1.4 dates from January 2012 but the author does maintain it and has a mailing list (not too active) for news. VMIPS is written in C++ and is extensible since the object-oriented way in which it is written makes it easy to understand and modify. The VMIPS documentation is well-written. Developing new devices for VMIPS is straightforward. The VMIPS homepage is located at http://www.dgate.org/vmips/.

YAMS

MAME/MESS

X-MAME and X-MESS no longer exist.

MAME is a Multi Arcade Machine Emulator, a program that emulates the hardware (and low-level firmware) of a massive variety of arcade machines. MESS is a Multi Emulator Super System, an emulator for the hardware of many different games consules (e.g. Sega, NES, SNES, etc.)

MISSE

Cisco 7200 Simulator

is an emulator of a Cisco 7200, 3600 and 3700 routers. The software emulates a R4600 CPU and some of the peripherals of the Cisco routers (Galileo GT64010, DEC Tulip 21140, DEC 21050, ...). This emulator is actively maintained. There is a good deal of emphasis on emulating network devices, as you might expect with a Cisco emulator. The Cisco 7200 Simulator homepage is located at http://www.ipflow.utc.fr/index.php/Cisco_7200_Simulator.