Simulador del Procesador MC88110:
Información General, Distribución de
Software y Documentación
Departamento de Arquitectura y Tecnología de Sistemas
Informáticos.
Facultad de Informática
Universidad Politécnica de Madrid
Introducción
Este documento contiene la información necesaria relacionada con el capítulo
2 del libro:
|
Estructura de computadores: Problemas y soluciones.
M.Isabel García Clemente y otros.
Noviembre 1999. Editorial Ra-Ma.
|
El capítulo 2 (Programación en ensamblador) contiene programas
resueltos en ensamblador IEEE-694 y en ensamblador nativo del
microprocesador de Motorola MC88110.
El microprocesador MC88110 es un procesador RISC superescalar
que se encuadra dentro de la familia 88000 de Motorola. Es
capaz de
despachar dos instrucciones cada ciclo de reloj respetando el orden
secuencial del programa a través del mecanismo de pipeline del
secuenciador. El despacho de instrucciones se hace hacia diez unidades
funcionales que trabajan en paralelo.
Para mejorar la utilidad académica de dicho procesador se ha
construido un simulador que permite configurar el procesador teniendo en
cuenta los siguientes parámetros:
-
Configuración de la memoria principal. Permite establecer el
número de bloques de la memoria y su tiempo de acceso.
-
Configuración de la cache de instrucciones. Permite configurar el
tamaño, el tamaño del bloque, la política de ubicación de la cache de
instrucciones y si la cache está activada o no.
-
Configuración de la cache de datos. Permite configurar el
tamaño, el tamaño del bloque, la política de ubicación, la política de
escritura en memoria de la cache de datos y si la cache está activada o no.
-
Configuración de la CPU. Permite configurar el modo de ejecución
de la CPU: serie o superescalar, el modo de redondeo del procesador de
coma flotante y el ordenamiento de bytes en memoria (little-endian o
big-endian).
Los ejemplos resueltos utilizando el ensamblador nativo del 88110
utilizan la configuración del fichero serie que se incluye en
la distribución. Este fichero configura la CPU según los siguientes
parámetros:
- Cache de datos e instrucciones inhibidas
- Memoria de un solo bloque con tiempo de acceso de 10 ciclos.
- Ejecución serie.
- Ordenamiento de bytes en memoria little-endian.
- Modo de redondeo al más cercano.
Este modo de ejecución se invoca mediante el shellscript mc88100
de la distribución.
Documentación
La documentación se compone del manual
de usuario del simulador y del
ensamblador y una descripción completa del juego de instrucciones.
Herramientas
A continuación se listan las distribuciones disponibles del simulador.
Cada una de ellas contiene los siguientes ficheros:
- 88110e: Programa ensamblador. Permite ensamblar un fichero con
un programa ensamblador a un fichero binario que puede leer el
simulador.
- em88110: Simulador. Simulador del MC88110. Al invocarlo se le
pasan dos parámetros: el fichero de configuración de la máquina y el
fichero que contiene el programa compilado.
- 88110ins: Programa que permite generar o modificar un fichero
de configuración.
- serie: Fichero de configuración de un computador serie sin
caches.
- paralelo: Fichero de configuración de un computador superescalar
con cache de instrucciones y datos.
- INSTALL: ShellScript que instala la aplicación. Además genera
el script mc88110 que invoca al emulador con el fichero de
configuración serie. Se invoca con
./INSTALL
ó
sh INSTALL
Las distribuciones disponibles de la versión 1.6 del simulador son las
siguientes:
Ejemplos Resueltos
A continuación se proporcionan los ficheros que contienen el código
ensamblador de los problemas del 9 al 14 del capítulo 2 del libro:
Estructura de computadores: Problemas y soluciones.
M.Isabel García Clemente y otros.
Noviembre 1999. Editorial Ra-Ma.
Estos problemas se resuelven utilizando el ensamblador nativo del
mc88110 y los puede obtener en formato comprimido con tar y
gzip.
Todos los problemas que se resuelven mediante una subrutina contienen un
programa llamante a dicha subrutina y un conjunto de parámetros que
permiten comprobar su funcionamiento.
- Problema 9.
Realiza la comparación de dos números en un formato de coma flotante.
El fichero se ensambla utilizando el comando:
88110e -e llamante -o p09.bin p09.txt
- Problema 10.
Contiene una subrutina que se llama a sí misma (subrutina recursiva)
para el cálculo de una serie. El fichero se ensambla utilizando el
comando:
88110e -e PROGR_PPAL -o p10.bin p10.txt
- Problema 11.
Realiza la actualización de una tabla a partir de los datos contenidos
en otra tabla. El fichero se ensambla utilizando el comando:
88110e -o p11.bin p11.txt
- Problema 12.
Calcula los histogramas horizontal y de ecualización de una matriz de
pixels. El fichero se ensambla utilizando el comando:
88110e -e ENSAYO -o p12.bin p12.txt
- Problema 13.
Genera dos tablas a partir de una única tabla utilizando un criterio de
selección prefijado. El fichero se ensambla utilizando el comando:
88110e -o p13.bin p13.txt
- Problema 14.
Realiza la conversión de un número entero a un formato de coma flotante
prefijado. El fichero se ensambla utilizando el comando:
88110e -e ppal -o p14.bin p14.txt
Otro libro de problemas
Como continuación de este libro el conjunto de autores ha publicado una
nueva colección de problemas en:
|
Estructura de computadores. Problemas resueltos.
M.Isabel García Clemente y otros.
Noviembre 2006. Editorial Ra-Ma.
|
Puede encontrar más información aquí.
Fe de Erratas
Desde la fecha que se publicó el libro, el grupo de autores ha
detectado un conjunto de erratas que se pueden obtener en formato
PDF.
Número de accesos a esta página desde el 1 de Enero de 2000:
Si detecta algún error en la página o en la información contenida en la
misma, por favor
comuníquenoslo.
Página actualizada el 14 de Octubre de 2009