¿Qué es la microarquitectura de la CPU?

La microarquitectura de la CPU es básicamente “lo que se coloca en el chip” y “cómo se ordenan, calculan y envían las cosas”.

Hay varios factores que juegan en la microarquitectura de una CPU. Estos incluyen, pero no se limitan a:

  • Tamaño de la CPU
  • Tipo de enchufe
  • Tamaño del caché

Una buena manera de demostrar diferentes microarquitecturas es comparar Intel con AMD.

Entonces ese es Intel.

Y aquí está AMD.

Como puede ver, cada uno maneja las cosas un poco diferente. Pero no es solo una diferencia entre las empresas. También hay grupos de procesadores con diferentes microarquitecturas dentro de cada empresa. Para Intel, puede tener Skylake, o puede tener Pentium, Sandy Bridge, Haswell … Incluso de regreso a Celeron. Aquí hay una lista completa en Wikipedia: Lista de microarquitecturas de CPU Intel

AMD también tiene su propia línea de microarquitecturas. Zen, Hammer, Athlon, K5, K6 … La lista completa está aquí: Lista de microarquitecturas de CPU AMD

Cada microarquitectura tiene sus diferencias. Para el ojo inexperto, puede que no signifique mucho, pero para aquellos en la industria, hay una diferencia significativa.

Es la forma en que se implementa el conjunto de instrucciones.

Por ejemplo, ¿se ejecutan las instrucciones en el orden en que se leyeron de la memoria? ¿Se ejecutan varias instrucciones al mismo tiempo? ¿Deben completarse las escrituras de memoria antes de la próxima lectura?

ARM es particularmente interesante a este respecto, porque apuntan a diferentes segmentos de mercado con diferentes microarquitecturas. El conjunto de instrucciones ARM v8 de 32 bits es compatible con tres microarquitecturas diferentes, que van desde CPU desordenadas y muy canalizadas, diseñadas para ser utilizadas con cachés grandes, que es lo que tiene en su teléfono, hasta un simple orden procesadores con memoria limitada y sin caché que están integrados en dispositivos simples. Pero el conjunto de instrucciones es común.

(Aunque, el conjunto de instrucciones de 64 bits solo es compatible con los núcleos grandes)

Microarquitectura – Wikipedia en inglés simple, la enciclopedia libre