Arquitectura de Computadoras

La Arquitectura de Computadoras es el cimiento invisible que potencia la tecnología moderna, desde smartphones hasta supercomputadoras. En este curso, dominarás desde sistemas numéricos y diseño de ALU hasta arquitecturas RISC/CISC, con un enfoque 100% práctico. ¡Convierte teoría en hardware real y lleva tus habilidades al siguiente nivel!
Objetivo de aprendizaje
Al finalizar la materia, el estudiante será capaz de:
- Dominar sistemas numéricos posicionales y conversiones entre bases (binario, octal, hexadecimal, etc.).
- Representar datos mediante códigos estándar (ASCII, BCD, Gray, etc.) y diseñar circuitos aritméticos-lógicos.
- Comprender la organización de memorias (principal, caché, externa) y técnicas de microprogramación.
- Diseñar una computadora básica integrando unidades de control, ALU y arquitecturas CISC/RISC.
Temario
1. Sistemas Numéricos
- 1.1 Bases posicionales en la era moderna
- Binario: ¿Por qué domina en hardware? (Ejemplo: CPUs y operaciones bitwise).
- Hexadecimal: Caso práctico en depuración de memoria (memory dumps).
- Descargable.
- 1.2 Representación polinomial: La matemática oculta en tu computadora
- Ejemplo visual: Cómo se codifica el número
253en base 8 usando polinomios.
- Ejemplo visual: Cómo se codifica el número
- 1.3 Conversión entre bases
- Método rápido: División-iterativa vs. multiplicación para bases fraccionarias.
- Error común: ¿Por qué falla al convertir
0.3de base 10 a base 2? - Tool online.
2. Códigos de Representación de Datos
- 2.1 ASCII vs. Unicode: Mitos y realidades (¿Por qué ASCII no sirve para emojis?).
- 2.2 BCD en sistemas embebidos: uso de códigos de barras.
- 2.5 Código Gray en la industria: Uso en encoders.
3. Unidad Aritmético-Lógica (ALU)
- 3.1 Complemento a 2: El rey del hardware
- Demo interactivo: Resta en complemento a 2 vs. magnitud-signo.
- 3.2 Diseño con compuertas
4. Sistemas de Memoria
- 4.2 Memoria caché:
- Caso real: ¿Cómo Apple acelera sus CPUs con políticas de reemplazo personalizadas?
- 4.3 NVMe: Gráfica comparativa vs. SATA (con datos de benchmarks).
5. Microprogramación
- 5.3 Palabra de control:
- Diseño para una instrucción
MOVen un CPU ficticio.
- Diseño para una instrucción
6. Diseño de una Computadora Básica
- 6.1 Integración de componentes:
- Diagrama interactivo del flujo de datos.
7. Arquitecturas Computacionales
- 7.2 CISC vs. RISC:
- Debate actual: ¿Por qué ARM (RISC) domina móviles y x86 (CISC) sigue en PCs?
- 7.3 GPUs:
- Cómo el pipeline de NVIDIA acelera el machine learning.
Metodología
- Teoría aplicada: Explicación de conceptos con ejemplos prácticos.
- Laboratorios virtuales: Diseño de ALU y memorias en simuladores.
- Plataforma externa: Actividades gamifícadas, lúdicas y recursos disponibles en ifrex.
Requisitos Previos
- Conocimientos básicos de lógica digital (compuertas, tablas de verdad).
- Familiaridad con programación en bajo nivel (opcional, pero recomendado).
Recursos Clave
- iFrex.
- Aprende con el arcade PC Builder Game
¿Por qué es importante esta materia?
La Arquitectura de Computadoras es la base para entender cómo funcionan los dispositivos modernos, optimizar su rendimiento y desarrollar hardware eficiente. Desde sistemas embebidos hasta supercomputadoras, estos principios son universales.