Articulo de referencia

SPIM

{{cite web |url=https://spimsimulator.sourceforge.net/changes.html |title=Changes to Spim |author= |publisher= |language=English |format=HTML |date= |accessdate=2017-05-15 |arch...

SPIM es un simulador de procesador MIPS , diseñado para ejecutar código en lenguaje ensamblador para esta arquitectura. El programa simula los procesadores R2000 y R3000 , y fue escrito por James R. Larus mientras era profesor en la Universidad de Wisconsin-Madison . [ 2 ] El lenguaje máquina MIPS se enseña a menudo en cursos de ensamblador a nivel universitario, especialmente en aquellos que utilizan el libro de texto Computer Organization and Design: The Hardware/Software Interface de David A. Patterson y John L. Hennessy ( ISBN ). 1-55860-428-6).

El nombre del simulador es una inversión de las letras "MIPS".

Los simuladores SPIM están disponibles para Windows (PCSpim), Mac OS X y sistemas operativos basados ​​en Unix/ Linux (xspim). A partir de la versión 8.0, lanzada en enero de 2010, el simulador se distribuye bajo la licencia BSD estándar .

En enero de 2011, se lanzó la versión 9.0 de QtSpim, que incluye una nueva interfaz de usuario basada en el framework multiplataforma Qt UI y compatible con Windows , Linux y macOS . A partir de esta versión, el proyecto se trasladó a SourceForge para facilitar su mantenimiento. Se proporcionan versiones precompiladas de QtSpim para Linux (32 bits), Windows y Mac OS X, así como PCSpim para Windows.

El sistema operativo SPIM

El simulador SPIM incluye un sistema operativo básico que permite al programador utilizar funciones comunes de forma sencilla. Estas funciones se invocan mediante la instrucción `syscall` . A continuación, el sistema operativo actúa en función de los valores de registros específicos.

El sistema operativo SPIM espera una etiqueta llamada "main" como punto de transferencia en el preámbulo del sistema operativo.

Alternativas/Competidores de SPIM

MARS (MIPS Assembler and Runtime Simulator) [ 3 ] es un IDE basado en Java para el lenguaje de programación en lenguaje ensamblador MIPS y una alternativa a SPIM. Su lanzamiento inicial fue en 2005. Sin embargo, dado que sus dos mantenedores se han jubilado, [ 4 ] [ 5 ] el proyecto ya no está en desarrollo activo.

Imperas es un conjunto de herramientas de desarrollo de software embebido para la arquitectura MIPS que utiliza tecnología de simulación y emulación de compilación Just-in-Time . El simulador se lanzó inicialmente en 2008 y se encuentra en desarrollo activo. Existen más de 30 modelos de código abierto de los núcleos MIPS de 32 bits [ 6 ] y 64 bits [ 7 ] .

Otra alternativa a SPIM para fines educativos es el simulador CREATOR. [ 8 ] [ 9 ] [ 10 ] CREATOR es portátil (puede ejecutarse en navegadores web actuales) y permite a los estudiantes aprender varios lenguajes ensamblador de diferentes procesadores al mismo tiempo (CREATOR incluye ejemplos de instrucciones MIPS32 y RISC-V).

Véase también

  • GXemul (anteriormente conocido como mips64emul), otro emulador MIPS. A diferencia de SPIM, que se centra en emular una implementación MIPS básica, GXemul está diseñado para emular sistemas informáticos completos basados ​​en microprocesadores MIPS; por ejemplo, GXemul puede emular una estación de trabajo DECstation 5000 Modelo 200.
  • OVPsim también emula MIPS, y todos los modelos MIPS están verificados por MIPS Technologies.
  • QEMU también emula MIPS.
  • Arquitectura MIPS

Referencias

  1. "Cambios en Spim" . Archivado del original (HTML) el 27/01/2011 . Consultado el 15/05/2017 .
  2. «Simulador SPIM MIPS» . Consultado el 1 de octubre de 2016 .
  3. "Simulador MARS MIPS - Universidad Estatal de Missouri" . Archivado del original el 2 de mayo de 2012. Consultado el 1 de octubre de 2016 .
  4. "Informática de la Universidad de Otterbein: Peter Sanderson" . Consultado el 14 de abril de 2024 .
  5. "Ken R. Vollmar - Departamento de Ciencias de la Computación - Universidad Estatal de Missouri" . Consultado el 14 de abril de 2024 .
  6. "Plataformas virtuales abiertas" . Consultado el 1 de octubre de 2016 .
  7. "Plataformas virtuales abiertas" . Consultado el 1 de octubre de 2016 .
  8. «CREADOR: Simulador didáctico y genérico para la programación en ensamblador» . 23 de julio de 2021.
  9. Ejemplo de CREATOR Web con MIPS32: https://creatorsim.github.io/creator/?example_set=default&example=e12
  10. Código fuente de CREATOR en GitHub: https://github.com/creatorsim/creator
  • Sitio del proyecto en SourceForge
  • Antiguo sitio web oficial de Larus
  • Versión web de SPIM
  • Diapositivas introductorias sobre programación MIPS usando SPIM
  • Introducción al simulador SPIM