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:
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:
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 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:
88110e / 88110e.exe : Programa ensamblador. Permite
ensamblar un fichero con un programa ensamblador a un fichero binario
que puede leer el simulador.
em88110 / 88110.exe : Simulador del MC88110. Al invocarlo
se le deben pasar dos parámetros: el fichero de configuración de la
máquina y el fichero que contiene el programa compilado.
serie: Fichero de configuración de un computador serie sin
memorias caché.
Además, las versiones para sistemas Linux también contienen:
88110ins: Programa que permite generar o modificar un fichero
de configuración.
paralelo: Fichero de configuración de un computador
superescalar con memorias caché 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.10 del simulador son las
siguientes (octubre-2020):
Linux. Versión 1.10 compilada con librerías estáticas para:
Linux 64 bits.
Windows. Para su ejecución en una ventana MS-DOS:
Windows 64b.
Windows 32bits. Para su ejecución en una ventana MS-DOS:
Windows 32b.
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.