📝 CPU
← Volver

Arquitectura de un Ordenador Actual

Documento resumen sobre cómo está compuesto realmente un ordenador hoy en día, con las tecnologías que se usan para interconectar la CPU, la RAM, la GPU y el resto de componentes. Incluye el funcionamiento interno de la CPU (registros, ciclo fetch-decode-execute, reloj…) y las diferencias en portátiles.


1. Visión general: cómo ha cambiado la arquitectura

Hace años, la placa base se organizaba en torno a dos chips externos a la CPU:

Hoy esto ya no funciona así. Desde Intel Nehalem (2008) y AMD K10, el northbridge se ha integrado dentro de la propia CPU. Lo que antes hacía el northbridge ahora lo hace el procesador directamente, y lo que hacía el southbridge lo hace un único chip llamado:

┌──────────────────────────────────────────────────┐
│                      CPU                         │
│  ┌──────┐  ┌──────┐  ┌──────┐  ┌──────┐         │
│  │Core 0│  │Core 1│  │Core 2│  │Core 3│  ...    │
│  └──────┘  └──────┘  └──────┘  └──────┘         │
│        Ring Bus / Mesh (interconexión interna)  │
│  ┌──────────────────────────────────────────┐   │
│  │   L3 Cache compartida                    │   │
│  └──────────────────────────────────────────┘   │
│  ┌─────────────┐  ┌─────────────┐  ┌─────────┐  │
│  │ IMC         │  │ Controlador │  │ iGPU    │  │
│  │ (RAM)       │  │ PCIe        │  │ (opc.)  │  │
│  └──────┬──────┘  └──────┬──────┘  └─────────┘  │
│         │                │                       │
└─────────┼────────────────┼───────────────────────┘
          │                │
       DDR5 RAM       PCIe 5.0 → GPU, SSD NVMe
                          │
                          │ DMI 4.0 (Intel) / Infinity Fabric (AMD)
                          ▼
                ┌──────────────────────┐
                │   PCH / Chipset      │
                │ USB, SATA, audio,    │
                │ Ethernet, PCIe extra │
                └──────────────────────┘

2. La CPU por dentro

2.1. Bloques funcionales clásicos

Toda CPU contiene básicamente:

2.2. Registros importantes

Registro Nombre Función
PC Program Counter (en x86 se llama EIP/RIP, Instruction Pointer) Contiene la dirección de memoria de la siguiente instrucción a ejecutar.
IR Instruction Register Guarda la instrucción actual que se está ejecutando.
MAR Memory Address Register Dirección de memoria a la que se va a acceder.
MDR / MBR Memory Data / Buffer Register Dato leído/escrito en memoria.
SR / FLAGS Status Register Banderas de estado (cero, acarreo, signo, overflow…).
SP Stack Pointer Apunta a la cima de la pila.
BP Base Pointer Referencia para acceder a variables locales en la pila.
Registros de propósito general RAX, RBX, RCX, RDX… (en x86-64) Almacenan operandos y resultados.

2.3. El reloj (clock)

2.4. Ciclo Fetch-Decode-Execute

Es el ciclo fundamental que repite la CPU continuamente:

  1. Fetch (Búsqueda)
    - La CU lee la dirección que hay en el PC.
    - Se va a la memoria (o caché) a buscar la instrucción.
    - Se carga en el IR.
    - Se incrementa el PC para apuntar a la siguiente instrucción.

  2. Decode (Decodificación)
    - La CU interpreta el opcode del IR.
    - Identifica qué operación es y qué operandos necesita.
    - En x86 esto incluye traducir la instrucción CISC a micro-ops (μops) internas tipo RISC.

  3. Execute (Ejecución)
    - Se ejecuta en la ALU/FPU o se hace el acceso a memoria que corresponda.
    - El resultado se guarda en un registro o memoria.

  4. (Write-back) algunos modelos añaden esta fase explícita: escribir el resultado donde toque.

2.5. Pipeline y ejecución fuera de orden

Las CPUs actuales no esperan a terminar una instrucción para empezar la siguiente:

2.6. Cachés

Memoria SRAM muy rápida dentro o pegada al core. Jerarquía típica:

Nivel Tamaño Velocidad Ubicación
L1 32–80 KB (datos + instrucciones separadas) ~1 ns Por core
L2 256 KB – 2 MB ~3 ns Por core
L3 8 – 128 MB ~10 ns Compartida entre todos los cores

AMD añade en algunos Ryzen el 3D V-Cache (L3 apilada verticalmente, hasta 96+ MB).

2.7. Cores, threads y SMT/Hyper-Threading


3. Interconexión interna de la CPU

Dentro de la CPU, los cores, la caché L3, el IMC y el controlador PCIe se comunican entre sí mediante:


4. Memoria RAM

4.1. Controlador de memoria (IMC)

4.2. Tecnologías actuales

4.3. Formato físico


5. Conexión de la GPU y otros dispositivos rápidos: PCI Express

5.1. PCIe

5.2. Versiones (ancho de banda por lane, unidireccional)

Versión Por lane x16 total
PCIe 3.0 ~1 GB/s ~16 GB/s
PCIe 4.0 ~2 GB/s ~32 GB/s
PCIe 5.0 ~4 GB/s ~64 GB/s
PCIe 6.0 ~8 GB/s ~128 GB/s

5.3. Resizable BAR / Smart Access Memory

Tecnología que permite a la CPU acceder a toda la VRAM de la GPU de golpe (antes solo veía ventanas de 256 MB). Mejora el rendimiento en juegos.

5.4. iGPU vs dGPU


6. El enlace CPU ↔ Chipset

Como el chipset (PCH/FCH) ya no es el northbridge, su papel es expandir conectividad lenta y moderadamente rápida. Para hablar con la CPU se usa:

Esto significa que todos los dispositivos conectados al chipset comparten ese enlace con la CPU. Por eso una NVMe conectada al slot M.2 que cuelga del chipset puede ir un pelín peor que una conectada al M.2 que sale directo de la CPU.


7. DMA (Direct Memory Access)

7.1. Qué es

Mecanismo que permite a un dispositivo (disco, tarjeta de red, GPU…) leer/escribir directamente en la RAM sin tener que pasar por la CPU para cada byte. La CPU solo configura la transferencia; el resto lo hace el dispositivo.

7.2. Cómo es hoy en Intel


8. Almacenamiento


9. Buses serie de E/S externos


10. Servidores y multi-socket

En workstations y servidores con varias CPUs, los procesadores se comunican entre sí:

Esto crea sistemas NUMA (Non-Uniform Memory Access): cada CPU tiene su RAM "cercana" y acceder a la RAM de la otra CPU es más lento.


11. Diferencias en portátiles

Los portátiles parten de la misma arquitectura, pero con adaptaciones:

11.1. CPU

11.2. Memoria RAM

11.3. Almacenamiento

11.4. GPU

11.5. Refrigeración y energía

11.6. Otros


12. Resumen visual del flujo de datos

   [RAM DDR5] ──── IMC ──┐
                         │
              ┌──────────▼──────────┐
              │        CPU          │
   GPU ◄──────┤ Controlador PCIe 5.0│
   NVMe ◄─────┤                     │
              │ Ring/Mesh + L3      │
              │   Cores             │
              └──────────┬──────────┘
                         │ DMI 4.0
                         ▼
              ┌─────────────────────┐
              │       PCH           │
              │ USB, SATA, audio,   │
              │ Ethernet, PCIe x1…  │
              └─────────────────────┘

13. Glosario rápido