Temario
MODULO I. ARQUITECTURA DEL REPERTORIO DE INSTRUCCIONES Y LENGUAJE ENSAMBLADOR (7 horas)
Tema 1. Arquitectura del repertorio de instrucciones (1h)
Tema 2. Lenguaje ensamblador. Programación (6h)

Bibliografía: [2] [3] [1] [4] [5] [6] [7]

Competencias: CB1, CB3, CB5, G8, N1, FB5

MODULO II. DISEÑO DEL PROCESADOR (9 horas)
Tema 3. Diseño del procesador. Técnicas de implementación. (9h)
3. Diseño del procesador
3.1. Metodología de sincronización
3.2. Diseño de un procesador MIPS R3000 reducido
3.3. Rutas de datos individuales
3.4. Diseño monociclo. Ruta de datos y unidad de control
3.5. Diseño multiciclo. Ruta de datos y unidad de control
3.6. Excepciones e interrupciones

Bibliografía: [2] [3] [1] [4] [5] [6] [7]

Competencias: CB1, CB3, CB5, G8, N1, FB5

MODULO III. RENDIMIENTO DEL COMPUTADOR (3 horas)
Tema 4. Definición y evaluación del rendimiento de un computador (3h)

Bibliografía: [2] [3] [1] [4] [5] [6] [7]

Competencias: CB1, CB3, CB5, G8, N1, FB5

MODULO IV. SUBSISTEMA DE MEMORIA (8 horas)
Tema 5. Jerarquía de memoria del sistema computador. Niveles. Influencia en el rendimiento. (8h)

Bibliografía: [2] [3] [1] [4] [5] [6] [7]

Competencias: CB1, CB3, CB5, G8, N1, FB5

MODULO V. SUBSISTEMA DE ENTRADA/SALIDA (3 horas)
Tema 6. Subsistema de entrada-salida del sistema computador. (3h)

Bibliografía: [2] [3] [1] [4] [5] [6] [7]

Competencias: CB1, CB3, CB5, G8, N1, FB5

Contenidos prácticos:

Realizaremos seis prácticas. La primera mitad estarán dedicadas a la programación en lenguaje ensamblador y las restantes prácticas estarán dedicadas al diseño del procesador y al subsistema de memoria. Cada una de las prácticas estará dedicada a los siguientes temas:

•P1: Programación en lenguaje ensamblador 1: Introducción a la herramienta de desarrollo y programas básicos (6 horas)
Se realiza la introducción a la herramienta de simulación utilizada en las prácticas de laboratorio y se resuelven problemas sencillos en lenguaje ensamblador de forma que se practiquen los distintos tipos de instrucciones del repertorio.
Competencias: CB1, CB3, CB5, G8, N1, FB5

•P2: Programación en lenguaje ensamblador 2: Estructuras de control (4 horas)
Se realizan programas en lenguaje ensamblador utilizando estructuras de control como estructuras alternativas y bucles, usando condiciones complejas.
Competencias: CB1, CB3, CB5, G8, N1, FB5

•P3: Programación en lenguaje ensamblador 3: Gestión de subprogramas (6 horas)
Se realizan programas en lenguaje ensamblador dividiendo la funcionalidad en subprogramas de forma que se aprenda a realizar la gestión de los subprogramas y el paso de parámetros.
Competencias: CB1, CB3, CB5, G8, N1, FB5

•P4: Procesador y memoria 1: Simulación del procesador básico (4 horas)
Se proporciona un proyecto de base con el diseño de un procesador sencillo y se realizará la simulación de dicho diseño para entender cómo se ejecutan las instrucciones en la herramienta de simulación de circuitos.
Competencias: CB1, CB3, CB5, G8, N1, FB5

•P5: Procesador y memoria 2: Modificación del diseño del procesador (4 horas)
Se realizará la modificación del diseño del procesador básico para ampliar el repertorio de instrucciones que es capaz de ejecutar el procesador con instrucciones sencillas.
Competencias: CB1, CB3, CB5, G8, N1, FB5

•P6: Procesador y memoria 3: Modificación del diseño del procesador (6 horas)
Se realizará la modificación del diseño del procesador básico para incluir instrucciones complejas o realizar el control microprogramado.
Competencias: CB1, CB3, CB5, G8, N1, FB5

Bibliografía para TODAS las prácticas:  [1] [2] [3] [4] [5] y Manual de prácticas (disponible en el Moodle)