| Artículos | 01 FEB 2009

Core I7

Tags: Histórico
La nueva arquitectura de procesadores x86 de Intel
Eugenio Barahona.
Core i7 supone varios cambios en la forma en la que Intel fabrica sus diferentes procesadores. No sólo porque el proceso de fabricación que se inaugura es el de los 45 nanómetros, sino porque supone un cambio en algunas de las formas que Intel venía utilizando hasta ahora. Las repasamos.

Hace algún tiempo, Intel decidió implantar un modelo de desarrollo e introducción en el mercado de nuevas generaciones de microprocesadores x86 similar al que usan los fabricantes de procesadores gráficos. Este modelo consistía en hacer coincidir la introducción de productos comerciales basados en un proceso de fabricación más pequeño, con el lanzamiento de una gama de procesadores basados en una arquitectura que ya se encontraba comercializada pero implementada mediante el nuevo proceso de fabricación. Éste es el caso de los procesadores de la gama Core 2 fabricados con tecnología de 45 nanómetros, los cuales no son más que los procesadores Core 2 originales, que empezaron a fabricarse con técnicas de 65 nanómetros. Este modelo de lanzamiento de productos se completa con la aparición de nuevas arquitecturas, las cuales se realizan con procesos de fabricación ya extensamente probados y, por lo tanto, maduros. En ningún caso se hace coincidir el lanzamiento de una nueva arquitectura con la puesta en el mercado de productos que usen un nuevo proceso de fabricación.
Pues bien, ahora mismo Intel se encuentra en la parte del proceso en la que toca lanzar una nueva arquitectura que use un proceso de fabricación extensamente puesto a punto. El proceso de fabricación que se va a usar es el de 45 nanómetros y la nueva arquitectura que Intel pone en el mercado se denomina Core i7. Esta nueva arquitectura se mejorará levemente en el futuro con el uso de un nuevo proceso de fabricación, en este caso de 32 nanómetros, que probablemente supondrá el lanzamiento en algún momento de 2009 de nuevas versiones de procesadores de la familia Core i7.

El nuevo núcleo
Intel tiene previsto utilizar esta nueva arquitectura tanto para sistemas portátiles como para equipos de sobremesa e incluso para servidores. La diferenciación del producto, dependiendo del segmento de mercado al que vaya dirigido, se realizará dependiendo del número de núcleos que incorpore el chip y de otras características técnicas, como por ejemplo el número de conexiones QPI (Quick Path Interconnect) de que disponga el procesador.
Los primeros modelos de la familia Core i7 que van a estar disponibles integran un total de cuatro núcleos. Cada uno de estos núcleos dispone de su memoria caché de primer y segundo nivel. De esta forma cada núcleo cuenta con un total de 64 KB de caché de primer nivel, divididos en dos bloques de 32 KB, uno para instrucciones y el otro para datos. La memoria caché de segundo nivel de cada núcleo tiene un tamaño total de 256 KB. Esta jerarquía de memorias caché se completa con una tercera memoria, compartida por todos los núcleos del procesador, que tiene un tamaño de 8 MB. La arquitectura de esta jerarquía de cachés es de tipo inclusivo, de forma que la información que esté presente en las memorias caché de primer y segundo nivel también lo estará en la de tercer nivel. Cada línea de la caché de tercer nivel dispone de un bit para cada núcleo del procesador, el cual indica, si está a uno, que dicha línea es válida para el núcleo indicado por ese bit. El bit correspondiente a cada núcleo estará a uno si la caché de primer y segundo nivel puede contener los datos de esa línea de la caché de tercer nivel.
Uno de los usos que tiene la caché de tercer nivel es la transferencia de datos entre los cuatro núcleos que forman parte del procesador. Si bien esta caché no funciona exactamente a la velocidad a la que lo hacen los núcleos de la CPU, sí que lo hace a una velocidad muy próxima y es mucho más rápida que el bus que se usaba para comunicar procesadores en generaciones anteriores de Intel.
La introducción de la nueva arquitectura se ha aprovechado para mejorar los algoritmos de prebúsqueda de datos usados por la memoria caché. Esto se debe a que el hardware del procesador está examinando constantemente los patrones de acceso a memoria, con el fin de predecir que datos se necesitarán en el futuro e irlos leyendo de la memoria principal del sistema y colocarlos en la caché, lugar al que el procesador puede acceder mucho más rápidamente que si tuviese que hacerlo a la memoria principal.
Una característica de la que ya disponía la familia Core2, y que se ha mejorado en el Core i7, es la denominada macrofusion. Básicamente consiste en que el procesador examina la secuencia de instrucciones que está ejecutando, todo ello con el fin de detectar determinadas secuencias de instrucciones que el procesador puede tratar internamente como una sola instrucción. En la nueva arquitectura se han introducido más secuencias de instrucciones que se tratan como una sola, de forma que existen una serie de instrucciones de comparación, seguidas por una instrucción de salto condicional, que la CPU trata como si fuese un único sólo código de operación. Además la familia Core 2 sólo soportaba esta funcionalidad cuando estaba trabajando en 32 bits, mientras que los nuevos Core i7 la extienden para soportarla también al ejecutar código de 64 bits.
Otra mejora que se ha realizado, respecto a Core 2, se encuentra en el detector de bucles. Esta parte del hardware se encargaba de detectar la presencia en el flujo de instrucciones de bucles de pequeño tamaño. En el caso de que se detectase uno de estos bucles, las instrucciones que lo forman se decodifican una sola vez y cada vez que se deben leer dichas instrucciones se leen de una pequeña caché específica para esta función en lugar de leerse mediante el proceso que la CPU usa normalmente. Además, la detección de un bucle de este tipo provoca la desconexión de determinadas partes de la lógica del procesador. La gama Core i7 mejora esta técnica al ampliar el tamaño de los bucles que pueden tratarse de esta manera, pasando de 18 a 28 instrucciones. Además la técnica se ha mejorado para que sea posible desconectar más partes del procesador que seguían activas en el caso de la familia Core 2.
La introducción de esta nueva familia de procesadores también supone la reaparición en el mercado de una tecnología que Intel introdujo por primera vez con la familia Pentium 4: Hyperthreading. Esta tecnología se basa en exponer al software dos procesadores lógicos cuando sólo existe uno físico. Los dos procesadores lógicos tienen duplicados ciertos elementos, pero comparten otros. Debido a que la familia Core i7 dispone de un elevado ancho de banda de acceso a memoria y de cachés de generoso tamaño, resulta interesante disponer de núcleos capaces de ejecutar al mismo tiempo más de un hilo de ejecución, que es básicamente lo que hace posible Hyperthreading.

El nuevo controlador de memoria
Desde hace años Intel y AMD han tomado caminos opuestos en lo que se refiere a cómo implementar el controlador de memoria de sus familias de procesadores. Mientras que Intel, hasta ahora, siempre había integrado dicho elemento en el chipset, AMD desde hace ya bastante tiempo lo había integrado en el propio microprocesador. Una de las ventajas que tiene integrar el controlador de m

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información