+ Guía L2

UNIVERSIDAD NACIONAL DE INGENIERIA
Facultad de Electrotecnia y Computación
Departamento de Arquitectura y Sistemas
Laboratorio No 2
Guía de Trabajo
Segmentación Lineal
Arquitectura de Máquinas III – Primer Semestre 2015
1. OBJETIVOS:


Describir la forma en que se efectúa la ejecución de instrucciones en la
segmentación mediante el uso de simuladores visuales del procesador
segmentado DLX empleado como modelo didáctico en clase.
Implementar un programa sencillo en ensamblador del DLX y verificar su
funcionamiento en uno de los simuladores, determinando cómo se manejan
las dependencias de datos y de control en el simulador de elección.
2. DESCRIPCIÓN DEL TRABAJO A REALIZAR:
El laboratorio se organiza en dos fases: A y B.
2.1.
Fase A:
La fase A consiste en la exploración a detalle de tres simuladores diferentes del
procesador segmentado DLX, estudiando toda la documentación disponible,
conociendo el conjunto de instrucciones del CPU y comparándola con la versión
abreviada estudiada en clase, ejecutando ejemplos disponibles y visualizando, sobre
todo cómo se da el solapamiento de la ejecución en el cauce.
El docente propone y provee en el sitio web de la clase algunos simuladores para
explorar. Todos estos ejecutan sobre Windows, aunque algunos son multiplataforma
(solo la versión Windows está disponible en el sitio de la asignatura). Los estudiantes
que lo deseen pueden buscar en Internet otros simuladores de DLX para realizar el
Docente: Ing. José Díaz Chow
1
experimento, siempre y cuando sea de uso libre o gratuito y describan exactamente el
procedimiento para obtenerlo a fin que el docente pueda verificar su trabajo.
El grupo debe seleccionar tres simuladores a explorar, ya sea de la lista a continuación o
de los investigados en Internet:
1.
2.
3.
4.
5.
6.
vbDLX
winDLX
DLXIDE
DLXView
DASIT
Escape
2.1.1. Para cada Simulador, deberá realizarse lo siguiente:



Evaluación del conjunto de instrucciones y comparación con el estudiado en clase.
Estudio del simulador, tanto su interfaz gráfica de usuario como su documentación.
− Identificación del datapath y comparación con el del DLX estudiado en clase.
− Otros didácticos visuales (Diagrama de bloques, diagrama de instrucciones,
etc.).
− Características y capacidades (Editor, compilador, ejecuta paso a paso, soporta
punto flotante, tratamiento de dependencias de datos y/o de control, etc.)
Experimentación con la ejecución de instrucciones:
− Ejecutar ejemplos que vienen con el simulador o desarrollar programas de
prueba para observar cómo se realiza la ejecución de instrucciones y cómo las
ayudas visuales pueden mejorar el aprendizaje de la segmentación.
− Reflexionar si el simulador ayuda a entender cómo ocurre la segmentación y si se
ejecutan realmente los programas o solo se muestra visualmente.
2.2.
Fase B:
Una vez analizados y documentados los simuladores, el grupo deberá seleccionar uno
de ellos para la realización del ejercicio de codificación. Se excluye de la selección el
simulador de vbDLX puesto que no realiza la simulación completa de la ejecución.
Previo a la codificación, el grupo deberá familiarizarse con las directivas y conjunto de
instrucciones, así como notación del simulador específico de DLX. El grupo deberá elegir
2 de los siguientes problemas a realizar en lenguaje ensamblador de DLX:
Docente: Ing. José Díaz Chow
2
1. Calcular el máximo común divisor (MCD) de un par de números. Estos números
deberán estar definidos en r1 y r2. El resultado deberá quedar en r3. Si el
simulador tiene facilidad de impresión, mandar a imprimir el MCD.
2. Calcular el mínimo común múltiplo (mcm) de un par de números. Estos números
deberán estar definidos en r1 y r2. El resultado deberá quedar en r3. Si el
simulador tiene facilidad de impresión, mandar a imprimir el mcm.
3. Determinar el mayor y el menor elemento de un arreglo de palabras. El mayor
debe quedar en r1 y el menor en r2. Si el simulador tiene facilidad de impresión,
mandar a imprimir ambos valores.
4. Determinar la suma de los elemento de un arreglo de números enteros. El
resultado debe quedar en r1 Si el simulador tiene facilidad de impresión, mandar
a imprimir el resultado.
5. Calcular el producto de dos números en r1 y r2 empleando el algoritmo de
sumas sucesivas.
6. Calcular la división entera de r1 / r2 empleando el algoritmo de restas sucesivas.
Debe entregarse un cociente y un residuo.
Una vez realizado el programa, ensamblarlo en el simulador y ejecutar la simulación
verificando que los resultados sean correctos. Tomar instantáneas que evidencien los
mismos.
3. Estructura del reporte de laboratorio:
1. Portada. (Debe incluir Título del Laboratorio, grupo y número de carné de los
integrantes en orden alfabético por primer apellido, nombre)
2. Introducción.
3. Presentación de resultados Fase A.
3.1. Simulador VbDLX
3.1.1. Evaluación del conjunto de Instrucciones
3.1.2. Datapath
3.1.3. Características
3.1.4. Apreciación de la ejecución
3.2. Simulador No2
3.2.1. Evaluación del conjunto de Instrucciones
3.2.2. Datapath
3.2.3. Características
3.2.4. Apreciación de la ejecución
3.3. Simulador No3
3.3.1. Evaluación del conjunto de Instrucciones
3.3.2. Datapath
Docente: Ing. José Díaz Chow
3
3.3.3. Características
3.3.4. Apreciación de la ejecución
4. Presentación de resultados Fase A.
4.1. Selección del simulador a emplear: Explicar motivo por el cual lo seleccionaron
4.2. Selección de ejercicios: Explicar motivo por el cual los seleccionaron
4.3. Resultados de la realización de los ejercicios: Mostrar evidencia gráfica
(instantáneas) de los resultados en cada ejercicio.
4.4. Código en ensamblador: Adjuntar el código como parte del reporte o como un
anexo en archivo de texto .s
5. Conclusiones: ¿Qué esperaba?, ¿Qué ocurrió?, ¿Qué aprendí?
Nota: Se considera viable presentar los resultados de inciso 3 en una sola tabla o
empleando un esquema o diagrama descriptivo conceptual (Cuadro sinóptico, mapa
conceptual, etc.).
Docente: Ing. José Díaz Chow
4