Arquitectura e Ingeniería de Computadores (2011)
Topic outline
-
Profesores
Valentín Puente Varona
Pablo Abad FidalgoDepartamento de Electrónica y Computadores
El objetivo fundamental de la asignatura es facilitar al alumno/a una visión precisa de cómo el software interacciona con el hardware subyacente. El alumno/a debe adquirir una visión aproximada de cómo funciona el procesador y el sistema de memoria de un computador actual.
En particular, se espera que el alumno/a este capacitado para llevar a cavo evaluaciones cualitativas, utilizando las figuras de merito, sobre el rendimiento de un computador ejecutando un programa, y sepa efectuar comparaciones adecuadas entre diferentes opciones de diseño alternativas. Comprender las técnicas concurrentes utilizadas por los computadores actuales, para reducir el tiempo de ejecución de forma implícita o explicita al código máquina ejecutado. Ser conscientes del impacto que tiene en el rendimiento del computador las decisiones tomadas a la hora de programar en alto nivel.
Relacionar la evolución en las técnicas de integración con los cambios sufridos en la arquitectura de los computadores actuales y como sus restricciones condicionaran la evolución futura de los computadores.
Palabras Clave de la Asignatura
TLP, Coste, Paralelismo, Arquitectura de Computadores, Procesador, Rendimiento, DLP, ILP, ISA, Micro-Arquitectura.
-
Datos identificativos de la Asignatura
-
Asignatura: Arquitectura e Ingeniería de Computadores
-
Código: 5411
-
Departamento / Área: Departamento de Electrónica y Computadores
-
Título: Grado en Ingenieria Informática
-
Centro: Facultad de Ciencias
-
Créditos ECTS: 6
-
Idioma de impartición: Español
-
Profesor responsable: Valentín Puente Varona
-
Otros profesores: Pablo Abad Fidalgo
Programa de la asignatura
Tema 1. Fundamentos del diseño de computadores
-
Qué es un computador y que papel juega en su desarrollo la arquitectura de computadores.
-
Tendencias y dependencias.
-
Métricas de evaluación: parámetros y fundamentos tecnológicos:
-
Coste.
-
Rendimiento.
-
Consumo energético.
-
Fiabilidad.
-
Tema 2. El repertorio de instrucciones
-
La frontera hardware/software.
-
Definición y virtudes a perseguir por el repertorio de instrucciones: perspectiva histórica.
-
Influencia de los compiladores y la implementación.
-
Modelos de ISA: memoria, acumulador, stack y registros.
-
Modos de direccionamiento.
-
Control de flujo.
-
Filosofía RISC y CISC.
Tema 3. Jerarquía de Memoria I: memorias caché
-
Tendencias y coste en tecnologías de almacenamiento.
-
El efecto “Memory–Wall”.
-
Localidad espacial y temporal y justificación de la jerarquía de memoria.
-
Implementación de las cachés.
-
El ABC de las cachés: asociatividad, tamaño de bloque y capacidad.
-
Modelo de las 3C en los fallos de caché.
-
Prefetch software y prefetch hardware.
-
Políticas de escritura.
-
Evaluación y métricas de efectividad en las cachés.
- Efecto de la caché en el rendimiento del procesador.
Tema 4. Jerarquía de Memoria II: memoria principal
-
Memoria Virtual:
-
Parámetros.
-
Traducción de direcciones.
-
Tabla de páginas.
-
Reducción del coste en el proceso de traducción.
- Caches físicas y virtuales.
-
-
DRAM:
-
Implementación de memoria de alta densidad DRAM.
-
Fiabilidad en memoria: detección y corrección de errores.
-
Evolución histórica de las memorias DRAM: memorias modo página, página rápida, SDRAM y DDRAM.
-
Tema 5. ILP 1: segmentación
-
Repaso segmentación.
-
Dependencias de datos.
-
Dependencias de control:
-
Predicción dinámica de saltos.
-
Ejecución especulativa.
-
Tema 6. ILP 2: Multi-Issue
-
Limites de la segmentación.
-
Ejecución superescalar.
-
Pipelines diversificados: pipelines 2-wide issue, unidades FP.
-
Implicaciones Multi-Issue:
-
Fech de múltiples instrucciones y trace caché.
-
Wide decode.
-
Dependencias y redes de cortocircuito.
- Wide write back.
-
- Wide-Issue con planificación estática: VLIW.
Tema 7. ILP 3: planificación dinámica
-
Limitaciones de la ejecución en orden.
-
Planificación estática y dinámica de instrucciones:
- Buffer de instrucciones y registros físicos y lógicos.
-
Algoritmos de planificación dinámica:
-
Scoreboard.
- Tomasulo.
-
-
Estado preciso y ejecución especulativa con planificación dinámica: alternativas de diseño:
-
Arquitectura ROB/RS segmentada.
- Arquitectura con renombre verdadero.
-
- Dependencias en instrucciones de acceso a memoria y acceso especulativo a memoria.
Tema 8. TLP I: multiprocesarores
-
Verificabilidad y límites en la complejidad de diseño: perspectiva histórica de la ley de Moore.
-
Paralelismo a nivel de Thread.
-
SMP.
-
Coherencia caché.
-
Sincronización.
- Consistencia en Memoria
Tema 9. TLP II: multiprocesadores on-chip y multithreading
-
FCMT.
-
FGMT.
-
SMT.
-
CMP.
- Sun Niagara.
Tema. 10 DLP
-
Aprovechamiento del paralelismo a nivel de datos con vectoriales.
-
Extensiones vectoriales del ISA.
-
Acelaración vectorial basada en GPU.
-
-
Básica
-
Henessy, D. & Patterson, D.A. (2007): «Computer architecture: a quantitative aproach». Morgan Kaufmann. 4ª Ed. ISBN : 978-0-12-370490-0.
Complementaria
-
Shen, J.P. & Lipasti, M.H. (2006): «Modern microprocessor design». McGraw Hill. 1ª Ed. ISBN : 0-07-057064-7.
-
-
- MC-F-001. Presentación de la asignatura.
- MC-F-002. Tema 1. Fundamentos del diseño de computadores.
- MC-F-003. Tema 2. El repertorio de instrucciones.
- MC-F-004. Tema 3. Jerarquía de Memoria I: memorias caché.
- MC-F-005. Tema 4. Jerarquía de Memoria II: memoria principal.
- MC-F-006. Tema 5. ILP 1: segmentación.
- MC-F-007. Tema 6. ILP 2: Multi-Issue.
- MC-F-008. Tema 7.1. ILP 3: planificación dinámica (1).
- MC-F-009. Tema 7.2. ILP 3: planificación dinámica (2).
- MC-F-010. Tema 8. TLP I: multiprocesarores.
- MC-F-011. Tema 9. TLP II: multiprocesadores on-chip y multithreading.
- MC-F-012. Tema 10. DLP.
- MC-F-013. Tema 11. Putting it all together: Intel Nehalem.
-
Criterios de evaluación
60% Teoría
-
Examen escrito en junio.
40% Prácticas
-
Parte obligatoria calificable mediante examen escrito en junio. Su contribución a la nota de la Práctica será 6/10, aproximadamente.
-
Parte opcional calificable por Memoria + Presentación. Su contribución a la nota de la Práctica será 4/10, aproximadamente. Descripción de la Evaluación Continua: actividades que debe desarrollar el alumno/a y su valoración.
-
-
-
Valentín Puente Varona
Departamento de Electrónica y Computadores
UNIVERSIDAD DE CANTABRIA
Pablo Abad Fidalgo
Departamento de Electrónica y Computadores
UNIVERSIDAD DE CANTABRIA