Estructura de Computadores
Grado en Ingeniería Informática
Curso 2021/2022

Proyecto de programación en ensamblador

Información General, Distribución de Software y Documentación


Tutorías Documentación Herramientas Anuncios Gestor de Prácticas Calificaciones

Profesores Responsables y Horas de Tutoría (Conv. febrero-julio 2022)

Las posibles preguntas relacionadas con el proyecto se atenderán por correo electrónico en la dirección pr_ensamblador@datsi.fi.upm.es o bien, si es posible, de forma presencial en los despachos D4105 y D4106. Se tratará de dar respuesta por correo electrónico en un plazo breve, o alternativamente se concederá una cita si se considera necesario y la situación sanitaria lo permite.

En cualquier caso, solicitamos que para cualquier consulta se contacte previamente con los profesores a través de la dirección indicada, describiendo de forma concreta cuál es el problema que se trata de resolver.

Documentación del proyecto

La documentación del proyecto incluye el enunciado así como las normas de entrega, ejemplos de casos de prueba y fechas de corrección y exámenes.

Debe tomarse como referencia el primer documento (Enunciado) aunque también quedará disponible una copia de la presentación en clase (Presentación) que podrá utilizarse como resumen.

En el siguiente enlace puede descargar la documentación asociada a las herramientas a emplear en el desarrollo el proyecto: manual de usuario del simulador y del ensamblador y una descripción completa del juego de instrucciones.

También tiene disponible un breve resumen sobre la instalación de las herramientas utilizadas para la emulación del 88110:

Herramientas

M88110

La herramienta que se utiliza en la realización de este proyecto es el simulador del MC88110.

El MC88110 es un microprocesador RISC superescalar que forma parte de la familia 88000 de Motorola. Es capaz de iniciar dos instrucciones cada ciclo de reloj, respetando siempre la apariencia de ejecución secuencial del programa a través del mecanismo de pipeline del secuenciador. Las instrucciones se despachan hacia diez unidades funcionales que trabajan en paralelo.

El simulador del MC88110 que se utiliza en este proyecto permite configurar distintos parámetros de la memoria principal, de las memorias cache de instrucciones y datos y de la CPU.

El proyecto se realizará utilizando el ensamblador nativo del 88110 y empleando la configuración del fichero serie que se incluye en la distribución. Este fichero configura la CPU según los siguientes parámetros:

Este modo de ejecución se invoca en Linux o en Solaris mediante el shellscript mc88100 de la distribución. En el caso de sistemas basados en Windows, se facilita el archivo de órdenes de ejecución mc88100.bat para realizar esa misma labor.

Distribuciones

A continuación se listan las distribuciones disponibles del simulador. Todas ellas contienen los siguientes ficheros: Además, las versiones para sistemas Linux también contienen: Las distribuciones disponibles de la versión 1.10 del simulador son las siguientes (octubre-2020):

Sistema de entrega

La entrega de los ficheros especificados en el enunciado de este proyecto se realizará mediante la utilidad disponible a través del Gestor de entrega de prácticas y proyectos.
Página actualizada el 10 de enero de 2022

Noticias

  • ___ Convocatoria de febrero 2022 ___
  • 18-enero-2022
    Calificaciones del examen y nota de pruebas actualizada
    Una vez corregido el test del proyecto se han publicado las calificaciones de dicho examen. Están disponibles, como es habitual, en la web Calificaciones.
    Por otra parte, se han revisado los posibles CASOS DE COPIA en la implementación del código del proyecto. Desafortunadamente se han detectado múltiples casos positivos, lo que tiene las consecuencias indicadas en las normas de la asignatura para todos los grupos involucrados en estos casos.
    La nota global del proyecto está pendiente de la valoración de código y memoria.
  • 10-enero-2022
    Examen del Proyecto
    El examen del proyecto se realizará el viernes día 14 de enero a las 9:00 en las aulas que se comunicará esta misma tarde a los alumnos que han obtenido una calificación mayor o igual a 5 puntos en la parte de pruebas.
  • NOTA IMPORTANTE-20-DIC-2021
    Corrección adicional el día 22-DIC-2021

    Debido al aplazamiento del examen del proyecto hasta la fecha del examen final de la asignatura, se ha abierto un pequeño hueco de dos días lectivos desde la última corrección, prevista en principio para hoy día 20, hasta la finalización del periodo lectivo de Diciembre. Ese hecho, junto con algunas aclaraciones que ha sido necesario ir realizando a lo largo del periodo de entregas del proyecto, ha hecho que se habilite una corrección adicional y definitiva que tendrá lugar el día 22 a las 21h.

    Esta modificación no afecta a la entrega/corrección de hoy día 20, a la que pueden presentarse todos los grupos registrados en el proyecto, independientemente de que hayan consumido o no su cuota de correcciones para este periodo. Se trata por lo tanto de una corrección "gratis" como se ha dado en llamar.

    Del mismo modo, la corrección del día 22 estará disponible para todos los grupos registrados (también "gratis").

    Las entregas del día 20 y el día 22 no son obligatorias. Es decir, los grupos que habiendo implementado todas las subrutinas se consideren satisfechos con la calificación de pruebas que corresponde a las pruebas superadas, no necesitan presentarse a estas correcciones.

    La memoria del proyecto se podrá entregar hasta el día 23 a las 21h.

    El resto de las normas sobre la entrega del proyecto en esta convocatoria no ha variado.
  • NOTA IMPORTANTE-24-NOV-2021
    APLAZADO el examen del proyecto

    Tras recibir información sobre la coincidencia de un examen parcial de segundo curso con la fecha inicialmente prevista para el examen del proyecto, ha sido necesario aplazar este último hasta el día en el que se celebra el examen final de la asignatura, que según el calendario oficial de exámenes será el
    viernes día 14 de enero de 2022
    En fechas próximas a dicho examen final se comunicará en este mismo espacio el horario y algunas breves indicaciones sobre el examen del proyecto.
  • 13-diciembre-2021
    Actualizado el contenido de 'Aclaraciones/Preguntas'
    Se ha actualizado con una nueva entrada sobre el manejo del mapa de bits el contenido de la web de aclaraciones y preguntas frecuentes sobre el enunciado.
  • 10-diciembre-2021
    Actualizada la documentación: presentación
    Se ha actualizado el PDF con las diapositivas de la presentación del proyecto, de forma que se han matizado algunos aspectos, se ha añadido una diapositiva sobre el funcionamiento de 'Verifica' y ha quedado también actualizada la fecha del examen del proyecto.
  • 9-diciembre-2021
    Actualizada la documentación: enunciado
    Para tratar de aclarar el comportamiento que se espera de la subrutina 'BuscaMax', se ha matizado la primera frase de la descripción de dicha subrutina en el enunciado. Adicionalmente se ha corregido un leve error de formato del texto por el que se habían fundido en uno los puntos 2.c y 2.d de la parte de descripción del funcionamiento de esta misma subrutina. Por último, se ha actualizado la fecha del examen del proyecto para la convocatoria de febrero de modo que refleje la misma fecha que ya se anunció en esta sección a finales del mes de noviembre.
  • 9-diciembre-2021
    Corregida la descripción del caso de prueba 14
    Se ha cambiado el ejemplo 14 (Descomprime) de los casos de prueba ya que se notificó una incoherencia entre la descripción del mismo y el conjunto de datos de entrada y salida a/de la subrutina.
  • 25-noviembre-2021
    Incorporación de una nueva prueba
    Se ha decidido incorporar una prueba adicional de la subrutina BuscaMax. El propósito es que ayude a identificar un problema relativamente frecuente y que en caso de no ser detectado en esta subrutina, aparentaría ser debido a un error de implementación de la subrutina Comprime.
    En esta nueva prueba se hace una llamada a BuscaMax con unos parámetros como los siguientes:
    Ref: Cadena que se especifica más abajo
    max: 10
    jj: Una dirección válida cualquiera
    La cadena Ref está formada en esta prueba por un total de 300 caracteres, de los que los 5 primeros son iguales entre sí e iguales a los 292 últimos, mientras que los 3 intermedios son diferentes (corresponden a otro carácter).
  • 24-noviembre-2021
    Publicado un documento con aclaraciones
    En la sección Documentación de esta página se ha incluido un enlace en el que se incluyen aclaraciones o respuestas a preguntas frecuentes.
  • 22-noviembre-2021
    Corregida errata en el enunciado (pág. 10)
    La descripción del valor de retorno de la función BuscaMax era correcta en las diapositivas de la presentación y también en la especificación de dicho valor en el enunciado del proyecto. Sin embargo tenía una errata en el apartado de descripción, donde se podía leer que en algún caso (número de caracteres coincidentes igual a cero) dicho valor de retorno sería negativo. Se ha corregido esta descripción.
  • 4-noviembre-2021
    Cambio en la corrección del viernes día 5/11
    Debido a lo indicado en la noticia "Actualización de los casos de ejemplo", la corrección de mañana viernes día 5 de noviembre no se contabilizará como corrección "opcional", sino que estará disponible para todos los grupos, incluyendo aquellos que ya hubieran consumido en ese momento su única corrección opcional anterior a la del Hito1.
  • 4-noviembre-2021
    Actualización de los casos de ejemplo
    Se ha añadido una nueva prueba de la subrutina BuscaCar al documento de casos de ejemplo para facilitar la localización de un error relativamente frecuente en el tratamiento de los caracteres de una cadena. En este mismo sentido, el mismo caso se ha añadido como una prueba adicional al conjunto de pruebas con las que trabaja el sistema de corrección automática. La necesidad de pasar esta prueba adicional no hará más difícil superar el hito1, sino al contrario, facilitará que el estudiante pueda localizar más fácilmente el error mencionado.
    Adicionalmente, se ha ampliado la información de los dos ejemplos de la subrutina Descomprime al haber facilitado la definición de los datos corresponientes al texto comprimido. También se ha actualizado en algunos casos el mensaje de error que proporciona el corrector cuando no se supera alguna de las pruebas.
  • 2-noviembre-2021
    Casos de ejemplo
    Se ha publicado un documento con diferentes casos de prueba de las subrutinas del proyecto. Está disponible en la sección de Documentación de esta web o bien aquí.
  • 8-octubre-2021
    Explicación del proyecto en clase
    Está previsto realizar la presentación del proyecto de forma presencial durante las siguientes clases de cada grupo:
    3S1T y 3S1T-B:
    miércoles día 13/10 15h aula 6106
    3S2T:
    jueves día 14/10 15h, aula 6101
    3S2T-B:
    jueves día 14/10 15h, aula 6102
    3S1M-PA2 y 5S1M-ADE:
    viernes 15/10 10h (horario de martes), aula 3204
  • 10-septiembre-2021
    Avisos y novedades
    Una vez publicado el enunciado del proyecto, se irá actualizando esta sección con avisos y aclaraciones que se considere necesario.