Características del microprocesador

Entender las características del microprocesador

El microprocesador es la pieza fundamental de la mayoría de los dispositivos electrónicos de hoy en día. En el mundo de los ordenadores, la diferencia clave entre unos y otros equipos suele ser el microprocesador. A lo largo de los años se han ido mejorando los microprocesadores haciéndolos cada vez más potentes. Frecuentemente, entender las especificaciones de los mismos no es fácil. Aquí se explica lo que significan las características del microprocesador.

Un procesador es un componente electrónico semiconductor basado en el silicio. El microprocesador, también conocido como procesador o CPU (Central Processing Unit o unidad central de procesamiento), es el cerebro del ordenador. Se encarga de interpretar las instrucciones especificadas en el software y hacer que el resto del equipo funcione de acuerdo a lo esperado.

Existen microprocesadores de muchos tipos y para aplicaciones muy diversas. En este caso nos centraremos en describir las características de los microprocesadores utilizados en los ordenadores personales.

Qué es un núcleo o core

El microprocesador es un chip electrónico que tiene la particularidad de leer un código de programa y ejecutar cada una de las acciones especificadas en dicho código. Para poder hacer esto, el microprocesador necesita de los siguientes elementos básicos:

  • Unidad aritmético-lógica. Realiza las operaciones matemáticas.
  • Unidad de control. Interpreta las instrucciones del programa.
  • Registros. Guarda datos temporalmente.

Estos elementos forman lo que se ha venido a llamar un núcleo (core). Cada núcleo puede ejecutar una instrucción de programa a la vez. Inicialmente, los microprocesadores tenían un solo núcleo.

Con la idea de hacerlos más potentes, se empezaron a fabricar microprocesadores que contenían más de un núcleo. Los microprocesadores que tienen más de un núcleo pueden hacer varías tareas a la vez.

Elementos del microprocesador
Elementos del microprocesador

Qué es un hilo o Thread

Cuando un núcleo está trabajando en un proceso determinado, se producen ciertos tiempos de espera. Estos tiempos de espera se pueden aprovechar para avanzar en la realización de subprocesos. El resultado es que con un solo núcleo se puede trabajar en un proceso y un subproceso simultáneamente. Es lo que se conoce como dos hilos (thread). Los microprocesadores con más hilos pueden hacer más cálculos que los de menos hilos (a igualdad del resto de características).

Tanto Intel como AMD tienen implementado esta característica. Intel la llama HyperThreading y AMD le ha dado el nombre SMT (Simultaneous Multi Threading). Curiosamente, esta tecnología la desarrolló Sun Microsystems en 1994.

Para que los núcleos con dos hilos funcionen bien es necesario que el sistema esté preparado para priorizar la carga de trabajo entre procesos y subprocesos. Sobre los primeros debe recaer la carga de trabajo más intensa y sobre los segundos la más leve.

Frecuencia de reloj

Para sincronizar las acciones de todos los elementos del microprocesador se utilizan los pulsos que emite un dispositivo llamado reloj. Por cada pulso, o por cada cierto número de pulsos, el microprocesador ejecuta una instrucción, pudiendo necesitar cada instrucción un número de pulsos distinto. El número de pulsos que se emiten cada segundo es la frecuencia de reloj. A mayor frecuencia de reloj, más instrucciones por segundo puede ejecutar el microprocesador.

Los primeros procesadores utilizaban frecuencias de reloj del orden de MHz (megahercio). Un megahercio es un millón pulsos por segundo. Hoy en día son normales frecuencias del orden de GHz (gigahercio). Un gigahercio son mil millones de pulsos por segundo.

Desmontando el microprocesador de la placa
Desmontando el microprocesador de la placa

Hay que tener claro que, aunque los microprocesadores con mayor frecuencia de reloj suelen ofrecer una mayor potencia de cálculo, esto solo ocurre a igualdad del resto de características. Para determinar el rendimiento real hay que tener en cuenta el resto de elementos que conforman la arquitectura del microprocesador: memoria caché, latencias, número de núcleos, los hilos, etc.

En relación con la frecuencia, existen tres conceptos adicionales de interés:

  • Frecuencia externa o velocidad del bus del sistema. El microprocesador funciona internamente a la velocidad que le marca el reloj. Cuando el microprocesador se comunica con el exterior, lo hace a una frecuencia más baja. Esta frecuencia suele una porción de la primera.
  • Frecuencia de turbo máxima. Cuando la tarea que realiza un microprocesador que tiene varios núcleos no requiere que se utilicen todos, admite que los núcleos que están trabajando lo hagan a una frecuencia mayor. Intel denomina a esta tecnología Turbo Boost, mientras que AMD la denomina Turbo Core.
  • Overclocking. Hay quien le aplica al microprocesador una frecuencia reloj mayor que la recomendada por el fabricante. Esta modificación la suelen hacer los usuarios de ordenadores dedicados a juegos (gaming) y bajo su responsabilidad. El overclocking es una manera de extraer aún más rendimiento de la CPU.

Microprocesador de 32 o 64 bits

Este número hace referencia al número de bits que puede procesar la CPU cada vez que realiza una operación. Los datos que puede manejar son como máximo de ese tamaño. Las CPU antiguas eran de 32 bits, mientras que desde hace una década suelen ser de 64 bits.

Evidentemente, si la CPU puede manejar una mayor información de forma simultánea, el rendimiento será mayor. No obstante, hay que tener en cuenta que para que un microprocesador de 64 bits pueda rendir al máximo es necesario que el sistema operativo del dispositivo en el que está montado sea también de 64 bits, así como la aplicación que esté utilizando el usuario.

Por otro lado, la CPU utiliza estos bits para indicar la dirección de la memoria RAM a la que pretende acceder. Con 32 bits solo se puede acceder a un máximo de 4GB de memoria RAM, mientras que con 64 bits se puede acceder, teóricamente, hasta unos 16 millones de Terabytes. En la práctica, los ordenadores suelen limitar este tamaño máximo a un centenar de GB.

Hay que recordar que la memoria RAM es externa al microprocesador. Por tanto, no influye para que el microprocesador sea más rápido, pero si repercute significativamente para que determinados programas del ordenador vayan mejor (generalmente los de tipo gráfico, vídeo o 3D). A mayor memoria RAM, mejor suele ser el rendimiento del ordenador.

Intel y AMD tienen microprocesadores de 32 y 64 bits para que puedan ser utilizados con sistemas operativos y aplicaciones de ambos tipos. Por su parte, como Apple gestiona tanto su sistema operativo como sus aplicaciones, desde 2009 solo instala microprocesadores de 64 bits en sus ordenadores. En cualquier caso, un microprocesador de 64 bits admite trabajar en un sistema operativo o con aplicaciones de 32 bits, aunque no al contrario.

Memoria caché

El trabajo de los microprocesadores supone tener que guardar temporalmente determinados resultados para utilizarlos poco más adelante. Estos resultados se guardan en lo que se conoce como memoria caché (memoria temporal). A diferencia de la memoria RAM, la memoria caché está integrada en el propio microprocesador. Mientras más cerca y accesible esté la memoria caché del microprocesador más rápido funcionará.

El tiempo que tarda el microprocesador en acceder a los datos de la memoria se conoce como latencia. A menor latencia, mayor rendimiento.

Idealmente se podría poner una memoria grande y cercana, pero eso no es posible. Buscar la información deseada dentro de una memoria lleva un tiempo. Este tiempo es proporcional al tamaño de la propia memoria. Para garantizar que los tiempos de acceso son siempre los menores posibles se dispone de tres tipos de memoria caché, tres niveles (levels):

  • L1 (level 1). De pequeña capacidad y con tiempos de acceso muy cortos (velocidades de acceso en torno a los 1150 GBps y latencia de solo 0,9 ns). Almacena los datos e instrucciones que van a ser usados inmediatamente por la CPU. El tamaño ronda los 256 KB, aunque pueden ser mayores. La memoria L1 está normalmente divida en dos: la L1 de datos y la L1 de instrucciones.
  • L2 (level 2). De más capacidad y mayores tiempos de acceso (velocidades de unos 470 GBps y 2,8 ns de latencia). El tamaño suele variar entre los 256 KB y los 18 MB. Almacenan las instrucciones y datos que pronto utilizará la CPU.
  • L3 (level 3). La de mayor capacidad y con tiempo de acceso mayores (velocidades de más de 200 GBps y 11 ns de latencia). El tamaño suele variar entre los 4 MB los 64 MB.

Si estas memorias están llenas y el núcleo del microprocesador no puede guardar el dato en ninguna de ellas, acaba guardándolo en memorias externas (RAM), de acceso mucho más lento.

En los primeros tiempos los microprocesadores no tenían memoria interna, por lo que el rendimiento era muy pobre. Desde que se empezó a integrar la memoria caché en el encapsulado del procesador el rendimiento ha mejorado considerablemente. Se empezó poniendo una sola memoria hasta que se descubrió que dividiéndola en tres el rendimiento mejoraba considerablemente.

Cuando hay varios núcleos, cada uno tiene su propia caché L1. Los más modernos tienen incluso su propia caché L2. La incorporación de la caché L3 es más reciente y suele ser compartida por todos los núcleos. La integración de la memoria L3 se empezó a hacer en 2006 con el procesador Intel Pentium 4 Extreme Edition.

Arquitectura interna del microprocesador
Arquitectura interna del microprocesador

Arquitectura del microprocesador

Los microprocesadores están formados por millones de transistores que conforman los distintos componentes del mismo. Un elemento fundamental en el diseño es organizar y dimensionar estos componentes de una forma eficiente. Esto es lo que se conoce como arquitectura del microprocesador. Buena parte de los avances tecnológicos de los microprocesadores se han dado por una mejora de su arquitectura.

Los fabricantes de microprocesadores suelen ponerle un nombre cada vez que diseñan una arquitectura distinta. A veces, hacen pequeñas modificaciones a una arquitectura y le ponen otro nombre, identificándolo como subarquitectura. El diseño de una arquitectura es un hito destacado, por lo que a la generación de procesadores construidos con esa arquitectura se le suele conocer con el nombre de la misma. Este nombre es independiente del nombre comercial que se le de al microprocesador.

Por ejemplo, la arquitectura de los procesadores Core 9000 de Intel se la conoce como Coffee Lake Refresh. Por su parte, los procesadores Ryzen serie 2000 de AMD están construido con la arquitectura Zen+.

Como ejemplo de la importancia de la arquitectura en el rendimiento de un microprocesador, podemos comparar el procesador FX 8350 de AMD con el Core i3 8100 de Intel. A pesar de que el primero tiene ocho núcleos y trabaja a 4 GHz, tiene peor rendimiento que el segundo, que solo tiene cuatro núcleos y trabaja a 3,6 GHz. La diferencia principal es que el de AMD es del año 2012 y tiene una arquitectura (Piledriver) mucho menos moderna y equilibrada que la de Intel (Coffee Lake), que es de 2018.

Oblea de microprocesadores de silicio
Oblea de microprocesadores de silicio

Nanómetros de la litografía

El proceso de fabricación de los circuitos integrados, conocido como litografía, se mide por el tamaño que ocupa un transistor. Como son tan pequeños, la unidad de medida que se utiliza es el nanómetros (un nanómetro equivale a 0,000001 milímetros). Esto quiere decir que una litografía de 14 nm supone que cada transistor mide 0,000014 mm. Otra forma de medir este mismo concepto es por los millones de transistores por milímetro cuadrado o MTr/mm2.

Para la fabricación de los chips de silicio se utilizan obleas cuyo diámetro suele ser de 300 mm. Cada oblea contiene varios chips. El hacer litografías más pequeñas, hace que de cada oblea se puedan sacar más chips o que cada chip contiene un número mayor de transistores. Se supone que con un mayor número de transistores se pueden conseguir microprocesadores más potentes.

Rendimiento del microprocesador

Cuando decimos que un microprocesador tiene un mejor rendimiento que otro lo que queremos indicar es que ejecuta un mismo programa en menor tiempo. Aunque esta medida pueda parecer sencilla, no lo es tanto. Un microprocesador puede ejecutar un tipo de programa muy rápidamente, mientras que se muestra lento para un tipo distinto.

Para vender tecnología hace falta mostrar lo buena que es. Así que los departamentos de marketing de las distintas marcas han tenido que buscar una simplificación de la medida del rendimiento. La medida que se les ha ocurrido es el CPI o ciclos por instrucción (cycles per instruction). También existe la medida IPC o instrucciones por ciclo (es la inversa de la anterior).

No obstante, antiguamente se utilizaba una medida más evidente del rendimiento. Se supuso que el rendimiento de un microprocesador indica la cantidad de instrucciones que es capaz de ejecutar en un segundo. Para ello se creó la unidad MIPS o millones de instrucciones por segundo (Million Instructions-Per-Second). El inconveniente es que esta medida dependía claramente de la frecuencia de reloj utilizada y no tanto del diseño del microprocesador. Para indicar el rendimiento del microprocesador independientemente del reloj, se ideó la unidad CPI indicada anteriormente.

CPI indica el número medio de ciclos de reloj que necesita el microprocesador para ejecutar una instrucción del código de programa. A menor CPI, mayor será el número de instrucciones que realiza por segundo.

Ejemplos de características de microprocesadores
Ejemplos de características de microprocesadores

La frecuencia de reloj, y las unidades CPI y MIPS están relacionadas por la siguiente fórmula:

MIPS = frecuencia (en MHz) / CPI

En cualquier caso, tanto MIPS como CPI están basados en la idea de que un microprocesador tiene mayor rendimiento cuantas más instrucciones realiza por segundo. Sin embargo, sabemos que hay microprocesadores que tienen un juego de instrucciones más simples, mientras que otros lo tienen más elaborados. El resultado es que la medida del rendimiento es algo más complejo que simplemente medir los CPI. Por ese motivo, cuando se requiere comparar el rendimiento real de los microprocesadores se utilizan programas que miden el tiempo de ejecución de determinadas tareas. Son los conocidos como benchmark o comparadores de rendimiento. En cualquier caso, CPI nos vale como medida genérica del rendimiento.

Más información

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *