TemesAC
Tema 1: Fundamentos de diseño y evaluación de computadores
Introducción
Importancia de la informática y diseño de computadores en nuestra sociedad actual.
Coste
El costo es un factor crítico en el diseño de dispositivos computacionales, considerando tanto la fabricación como la operación.
Rendimiento
Rendimiento como clave para la eficiencia de un sistema. Se mide en varias dimensiones.
Consumo
Consumo de energía, importante para el desarrollo sostenible de nuevos dispositivos.
Fiabilidad
Fiabilidad en un sistema computacional y sus métricas como Tiempo Entre Fallos (MTBF).
Evolución de los computadores
Comparación de diferentes generaciones de computadores, desde el CRAY 1 (1976) hasta el iPhone X (2017).
CRAY 1: 115,000 W, 8 MB de RAM, $8.86 millones.
Lenovo T61: 100 W, 2 GB RAM, €1,500.
iPhone X: menos de 5 W, 3 GB RAM, €1,300.
Tipos de computadores
Empotrados: Coste de 1-100,000€, usados en dispositivos como electrodomésticos y automóviles.
Móviles: 100-1,000€, ejemplos incluyen teléfonos y tablets.
Sobremesa: 300-2,500€, utilizados para trabajo y ocio.
Servidores: 10K-1M€, adecuados para aplicaciones empresariales.
Supercomputadores: Más de 1M€, para aplicaciones científicas complejas.
Medidas
Uso de prefijos de medida como kilo (K), mega (M), giga (G), etc., con ejemplos de su aplicación en el contexto de cómputo. Diferencias entre medidas decimales y binarias.
Problemas con medidas
Desconocimiento común sobre los sistemas de medida que puede llevar a confusiones. Importancia de la consistencia en el uso de términos como Hertz (Hz) y su relación con ciclos.
Máquina von Neumann
Principios básicos que describen cómo las instrucciones son ejecutadas en un computador, incluyendo la secuenciación de ops, la función del PC (Contador de Programa).
Evaluación de un sistema informático
Uso de métricas como el coste, rendimiento, consumo de energía y fiabilidad para evaluar sistemas modernos.
Sostenibilidad
Repercusiones sociales y ambientales del diseño de sistemas computacionales, incluyendo los costes sociales y humanos.
Tecnología de Fabricación
Introducción al proceso de fabricación de chips y estructuras de circuitos avanzados.
Ley de Moore
Predicciones sobre el crecimiento de la capacidad de integración de circuitos y el impacto en la industria.
Latencia y Ancho de Banda
Definiciones y ejemplos de cómo se relacionan estos conceptos con el rendimiento de los computadores.
Ejemplos de rendimiento
Comparaciones entre diferentes sistemas y su desempeño en términos de latencia y ancho de banda.
Comparación de rendimiento
Métodos para medir y comparar la eficiencia de varios computadores utilizando el tiempo de ejecución como medida clave.
Límites en la mejora del Rendimiento
Introducción a la ley de Amdahl y su relevancia en el diseño de sistemas paralelos.
Top500
Listado y análisis de los 500 supercomputadores más potentes del mundo.
Consumo
Relación entre el consumo de energía y el rendimiento computacional, con mecanismos para medir el consumo en sistemas actuales.
--
Tema 2: Interfaz Alto Nivel - Ensamblador
Introducción
Conceptos fundamentales sobre la interfaz entre el software y el hardware a través del ensamblador.
Tipos de Máquinas
Diferentes arquitecturas y sus métodos para acceder a memoria.
Modos de direccionamiento
Tipos y ejemplos de modos de direccionamiento utilizados en programación.
Ejemplos: Registro, Inmediato, Absoluto, y Base + desplazamiento.
Estudio Cuantitativo del nivel LM
Análisis de cómo se utilizan los distintos modos y los tipos de operandos en los programas reales.
RISC vs CISC
Comparación de dos arquitecturas con sus respectivas ventajas y desventajas en el diseño de instrucciones.
μprogramación
Importancia del μprograma en la simplificación del diseño del hardware y su relación con la ejecución de instrucciones.
--
Tema 3: Jerarquía de Memorias
Introducción a la Jerarquía
Conceptos básicos sobre cómo se organizan y utilizan las memorias.
Memorias Cache
Función, tipos, y mecánicas de acceso. Estructura de una cache y su importancia para la mejora del rendimiento.
Memoria Virtual
Traducción de direcciones, tipos de esquemas de paginación y sus beneficios.
Detección y corrección de errores
Efectos de los errores en la memoria y cómo las tecnologías como ECC pueden prevenirlos.
--
Tema 4: Sistemas de Almacenamiento
DMA y Jerarquía
Introducción al el acceso directo a memoria y su relevancia en la operación con discos duros.
Discos Duros
Construcción, funcionamiento y cálculo de rendimiento de discos duros.
RAID
Sistemas de almacenamiento redundante e interdependente y su importancia para la eficacia del almacenamiento.
Discos Ópticos
Tipos, características y aplicaciones de los discos ópticos en la tecnología de almacenamiento actual.
--
Tema 5: Diseño del Juego de Instrucciones
Introducción
Qué es un juego de instrucciones y la importancia estratégica de su diseño.
Tipos de Máquinas
Diferentes arquitecturas y su impacto en la funcionalidad de la unidad de control.
Modos de direccionamiento
Cómo se codifican las sugerencias de ejecución en las máquinas modernas.
RISC vs CISC
Comparación entre ambas arquitecturas y sus implicancias en el diseño de instrucciones.
Programación
Criterios para escribir instrucciones y su rol en la eficiencia del procesador.
--
Tema 6: Segmentación y Paralelismo
Introducción a la Segmentación
Cómo se segmentan las instrucciones para mejorar el rendimiento general del sistema computacional.
Paralelismo a Nivel de Instrucciones (ILP)
Análisis de segmentación y su implementación en procesadores modernos.
Ejemplos Reales
Casos de uso actuales en computación de procesos, GPU y otros sistemas avanzados.