Arquitectura interna del microprocesador

Arquitectura interna del microprocesador

Bloques internos del microprocesador

El microprocesador posee dentro los siguientes bloques de los que detallaremos sus características en los siguientes apartados. No todos los microprocesadores incluyen todos los bloques, dependerán de las características del mismo.

  1. Núcleos.
  2. Memorias caché.
  3. Controlador de memoria.
  4. Controlador gráfico.

En la siguiente imagen podemos ver el diseño de los bloques que componen la arquitectura de un microprocesador Intel Core.

Arquitectura interna del Intel Core

 

Núcleos

En los microprocesadores moderno suelen existir más de un núcleo (core) de procesamiento. Cada núcleo es un pequeño microprocesador independiente dentro del mismo microprocesador.

Cada núcleo se compone de su propia Unidad de Control (UC), Unidad Aritmetico-lógica (UAL), Unidad de Punto Flotante (UPF), Registros y los primeros niveles de Memoria Caché.

Gracias a los núcleos, el microprocesador será capaz de realizar a la vez una tarea por cada núcleo que posea. De esta manera el sistema responderá de manera más cómoda aunque una tarea monopolice uno de los núcleos. Como regla general, a mayor número de núcleos, los microprocesadores presentan mejores prestaciones, pero a la vez son más caros. Sin embargo, por desgracia, existen pocas aplicaciones que puedan sacar rendimiento a más de cuatro de ellos.

 

Velocidad del microprocesador

La velocidad o frecuencia de un microprocesador viene dada por la velocidad del reloj del microprocesador, que es la misma para cada núcleo, e indica el número de cambios por segundo del reloj. Esta velocidad se mide en Megahercios o Gigahercios (1GHz = 1000MHz).

No debemos confundir la velocidad con el rendimiento de un microprocesador, que se mide en MIPS (Millones de Instrucciones Por Segundo), e indica el número de instrucciones que puede ejecutar el microprocesador en un segundo, sabiendo que una instrucción necesitará de varios ciclos de reloj para completarse.

En un microprocesador debemos tener en cuenta dos velocidades:

  • Velocidad o frecuencia interna: Es la velocidad a la que funciona el micro internamente, por lo que también se le conoce como velocidad de reloj o frecuencia de reloj.

  • Velocidad o frecuencia externa: Es la velocidad a la que el micro se comunica con la placa base, también se le llama velocidad del bus de sistema.

Dado que el bus del sistema en la placa base funciona a una velocidad y el microprocesador a otra, este último dispone de un multiplicador que indica la diferencia de velocidad entre la velocidad externa y la velocidad interna.

Por ejemplo, un Pentium D a 3,6 GHz utiliza un bus frontal de 800MHz, el multiplicador será 4,5, ya que 800x4,5 da como resultado 3600MHz (3,6 GHz).

 

Frecuencia de turbo máxima

Al tener varios núcleos puede ocurrir que los programas que ejecutes no estén dando trabajo a todos. En este caso el procesador aumenta la velocidad de los que estén funcionando de manera automática hasta un límite indicado por este número. Esto se podrá hacer siempre y cuando el procesador no supere un cierto consumo de energía y temperatura.

Intel denomina a esta tecnología Turbo Boost, mientras que AMD la denomina Turbo Core.

 

Overclocking

El caso en el que nosotros ampliamos la velocidad del microprocesador por nuestra cuenta y riesgo sin que el fabricante lo haya permitido en sus especificaciones se conoce como overclocking.

 

Hilos

Un hilo de ejecución (thread) o subproceso es la unidad de procesamiento más pequeña que puede ser planificada por un sistema operativo. Aunque un núcleo solamente pueda realizar una tarea al mismo tiempo, se pueden usar los hilos para hacer creer al usuario (y al propio ordenador) que sí se puede hacer más de una cosa al mismo tiempo. En vez de realizar una tarea por completo, se divide la tarea en porciones (cada hilo se encarga de un aspecto concreto del programa), de modo que se va alternando entre porciones de tareas para que parezca que ambas se ejecutan al mismo tiempo. Es decir, hacemos un poco de un proceso y otro poco de otro proceso; cada uno de esos trozos se corresponde con el hilo. Así, no tenemos que esperar a que una tarea acabe para comenzar otra.

Intel utiliza una tecnología llamada HyperThreading Technology (HTT). Gracias a ella consigue duplicar el número de tareas que es capaz de ejecutar cada núcleo en un determinado momento. Un equipo con esta tecnología parecerá tener el doble de núcleos.

AMD utiliza realiza su propia versión con Clustered Multi-Threading (CMT). En este caso replica casi todo el núcleo en bloques de dos unidades excepto la unidad de punto flotante que es compartida. Esto puede hacer que tenga ciertos problemas con las prestaciones que es capaz de dar a algunas aplicaciones que hagan mucho uso de números flotantes. Un procesador que soporte tanto HT como CMT no tendrá las mismas prestaciones que otro con núcleos reales pero es una mejora.

AMD desde el 2015 ha vuelto a recuperar y mejorar la tecnología Simultaneous Multi-Threading (SMT), que proviene de IBM en los años 70 para dejar la tecnología CMT.

 

Registros

Los registros del núcleo son espacios de memoria donde se almacenan los datos o direcciones con los que trabaja el microprocesador.

El tamaño del registro se conoce con el nombre de ancho de registro, ancho de palabra o tamaño de palabra. Los diferentes tamaños de registro que podemos encontrar en los microprocesadores son 32 bits, 64 bits o 128 bits. Actualmente a penas se fabrican microprocesadores de 32 bits.

Los microprocesadores de 32 bits se diferencian de los de 64 bits porque tienen una serie de limitaciones que enumeramos a continuación:

  • Números en rango 232: Este límite implica que toda operación realizada se encuentra limitada a números en rango de 232. Al utilizar un procesador de 64 bits, este rango dinámico se hace 264, lo cual se incrementa notablemente comparado con un procesador de 32 bits. Para aplicaciones matemáticas y científicas que requieren de gran precisión, el uso de esta tecnología puede ser imprescindible.

  • Limite memoria 4Gb: La arquitectura de 32 bits se encuentra en la incapacidad de direccionar o controlar la asignación sobre más de 4Gb de memoria RAM.

Aunque parecen todo ventajas, el inconveniente de utilizar arquitecturas de 64 bits es que no todo el software, sea sistema operativo o aplicación, está diseñado para explotar los recursos ofrecidos por un microprocesador de 64 bits.

 

Memorias caché

La función de la memoria caché es sencilla, conseguir que los datos más usados estén lo más cerca del microprocesador para ser accedidos de la manera más rápida.

Se organiza en niveles, de menor a mayor tamaño según lo alejada que esté del micro, si el procesador necesita un dato de la memoria se comprueba si este se encuentra en el primer nivel. En caso de no encontrarlo, se busca en el segundo nivel y si no en el tercero. Todo funciona si se colocan los datos más utilizados en los niveles más cercanos al procesador.

Todos los microprocesadores actuales suelen tener una memoria caché de nivel 1 (L1), una memoria caché de nivel (L2), que es más grande que la L1 aunque menos rápida, e incluso una memoria caché de nivel 3 (L3). "L" proviene de Level.

Cada uno de estos niveles tiene un bloque de control el cual se encarga de almacenar y poner los datos a disposición del micro. El tiempo que tarda en buscar la información es proporcional al tamaño de la propia memoria que administra. Como queremos que los datos lleguen lo antes posible al micro los niveles más bajos tendrán menor capacidad. Cada nivel superior, por tanto, es bastante más grande que el anterior.

En los microprocesadores de dos o más núcleos, la memoria caché puede ser de diferentes tipos. Suele ser común reflejarlo de la siguiente manera:

  • Dedicada: Cada núcleo posee su propia memoria caché. Aparece reflejado como caché 2 x 4 Mb, quiere decir que son 4 Mb por cada núcleo.

  • Compartida: Sólo existe una memoria caché que se comparte entre los núcleos. Aparece reflejado como caché 2 Mb, entonces los 2 Mb son compartidos por todos los núcleos del procesador.

  • Instrucciones y datos: La memoria caché se divide en memoria para instrucciones y memoria para datos. Aparece reflejado como caché 1 Mb + 1 Mb, quiere decir que 1 Mb es para instrucciones y 1 Mb es para datos.

Lo normal es que en cada nivel de memoria caché se utilice un tipo diferente de memoria.

 

Controlador de memoria

El controlador de memoria es la parte del microprocesador encargado de facilitar el acceso a la memoria RAM. En un principio, esta funcionalidad se implementaba en un chip que se encontraba sobre la placa base, sin embargo desde hace un tiempo ya se encuentra integrado en el interior del microprocesador.

La ventaja de tenerlo integrado es que las lecturas y escrituras son más rápidas al saltarnos un intermediario además de que se consume menos energía. El inconveniente es que el procesador limita de fábrica la memoria RAM que puedes usar en el ordenador.

 

Controlador gráfico

Gracias a las mejoras producidas en los procesos de fabricación como hemos visto se integran más componentes en el mismo chip del procesador. Uno de los que se añaden es una tarjeta gráfica integrada. Esta que normalmente no será tan potente como una discreta puede servirte para ahorrar algo de dinero si no vas a usar el PC para jugar. A veces aparte del modelo se añade la frecuencia base a la que funciona y la velocidad que puede alcanzar en modo turbo.

 

 

Bibliografía

Licencia Creative Commons

Este artículo publicado en TicArte pertenece a Rafa Morales y está protegido bajo una Licencia Creative Commons.

Ir arriba