Intel Core i5

A continuación les dejaré un paper que tuve que escribir acerca del core i5 para un trabajo de la uni. Como me gustó, y entre que lo tuve que hacer aprendí algunas cosas interesantes (como el funcionamiento de las tecnologías de Intel), lo quiero compartir:

Introducción
Intel Core i5 fue el primero de esta familia (i3, i5, i7) en salir al mercado. No guarda muchas diferencias con su versión inferior, el Intel Core i3, quizás la más importante (aunque siempre dependiendo del uso que se le de al ordenador) es que, a pesar de ambos disponen de Hyper Threading, no se encuentra en los i3 la tecnología Turbo Boost, que permite aumentar la frecuencia del procesador, explicada con detalle más adelante.
Otra diferencia interesante, es el incorporamiento de una GPU en todos los procesadores i3, a diferencia de los i5, que en estos solo se encuentra en su versión de microprocesador Arrandale.

Historia
El 8 de septiembre del pasado 2009, Intel sacó el primer procesador con núcleo i5, un Lynnfield Core i5-750, cuya tecnología Hyper Threading quedó deshabilitada. Disponen de una memoria caché de 8 MB, 4 núcleos, una memoria de 2xDDR3-1333 construidos bajo la tecnología de 45 nm. Usa arquitectura Nehalem , reemplazando a la anterior usada por Intel, la Penryn. No solo se comercializó para los Intel Core i5, sino que también se encuentra disponible para los Core i7 y los Xeon. A continuación, una tabla de los tres Lynnfield Core i5:

Nombre Frecuencia Fecha de Lanzamiento
Core i5-750 6,67 GHz 8 de septiembre de 2009
Core i5-750S 2,4 GHz 7 de enero de 2010
Core i5-760 2,8 GHz 18 de Julio de 2010

Tabla 1: Procesadores Lynnfield

Posteriormente, el 7 de enero de este año 2010, fueron lanzados los procesadores móviles (para portátiles sobre todo), sustituyendo a los Intel Core 2, Celeron, y Pentium Dual-Core. Arrandale construidos en 32 nm, con 3 MB de caché y tan solo 2 núcleos. Al igual que con Lynnfield, comercializaron más procesadores Arrandale, en este caso, para los Core i3 y los Core i7. Estos procesadores los podemos dividir en dos familias: la de voltaje estandar (contenido entre los 0,775 y 1,4 voltios) con una memoria de 2xDDR3-1066 y la de voltaje ínfimo (contenido entre los 0,725 y 1,4 voltios) con una memoria de 2xDDR3-800. A continuación, una tabla con 3 procesadores de cada familia:

Nombre Frecuencia Fecha de Lanzamiento
Standart Voltage
Core i5-430M 2,27 GHz 7 de enero de 2010
Core i5-540M 2,53 GHz 7 de enero de 2010
Core i5-580M 2,67 GHz 26 de septiembre de 2010
Ultra Low Voltage
Core i5-430UM 1,2 GHz 25 de mayo de 2010
Core i5-520UM 1,07 GHz 7 de enero de 2010
Core i5-560UM 1,33 GHz 26 de septiembre de 2010

Tabla 2: Procesadores Arrandale

Clarkdale es la versión de escritorio de los procesadores Arrandale, por lo que también se usaron para los Core i3 y los Core i5. Fueron lanzados tambien en enero, con la tecnología Hyper Threading habilitada junto con la de Turbo Boost. Tienen 4 MB de caché, dos núcleos, memoria de 2xDDR3-1333 y están construidos en 32 nm. De los 6 procesadores existentes hasta la fecha, se escribirá el primero y los dos últimos:

Nombre Frecuencia Fecha de Lanzamiento
Core i5-650 3,2 GHz 7 de enero de 2010
Core i5-670 3,47 GHz 7 de enero de 2010
Core i5-680 3,6 GHz 18 de abril de 2010


Imagen 1: Procesador Intel Core i5-750

Tecnologias de Intel para sus procesadores
Intel Turbo Boost Technology
Esta tecnología innovadora de Intel, se basa, a grandes rasgos, en que el propio procesador se haga overclocking a sí mismo, esto quiere decir que aumente sus capacidades por encima de las establecidas por el propio fabricante.
Esto se realiza de manera automática cuando el procesador piensa que necesita mayor velocidad. No se lleva a cabo siempre, ya que esta característica de los Core i5, depende siempre de la temperatura, la corriente y la potencia al que está siendo suministrado el microprocesador, y solo en caso de que no corra peligro, se aumenta la frecuencia de este.
El aumento de frecuencia producido se hace de manera secuencial. Cada “paso” que el procesador realiza para aumentar su frecuencia, esta aumenta en 133,33MHz, pudiendo aumentar tanto como la cantidad y el número de núcleos del procesador lo permita. De manera equitativa, cuando ya no necesita tanta frecuencia o cuando el procesador ha detectado que la temperatura o el voltaje ha subido hasta un límite no recomendado, la frecuencia del procesador desciende “paso” a “paso” (de -133,33MHz en -133,33MHz)
A pesar de estar por encima de la frecuencia base establecida por el fabricante, todos los núcleos del procesador trabajan en todo momento al mismo voltaje y frecuencia.
Por otra parte, debido a la forma en la que la BIOS y el Sistema Operativo se comunican, los programas nunca detectarán que la frecuencia del microprocesador se encuentra por encima del nivel base establecido por Intel.
En la página web de Intel podemos visualizar un video explicativo de esta tecnología: http://www.intel.com/technology/product/demos/turboboost/demo.htm?iid=tech_tb+demo

Intel Hyper-Threading Technology
Antes de explicar en qué se basa la tecnología de Intel Hyper Threading, tenemos que explicar qué es el Multiprocesamiento Simétrico (conocido como SMP, del inglés Symmetric Multi-Processing), ya que para que funcione esta tecnología de Intel en nuestros equipos, tienen que ser compatibles con la tecnología SMP.
El Multiprocesamiento Simétrico permite a dos procesadores distintos compartir la misma memoria, de tal manera que se pueden mover tareas entre los procesadores para garantizar una alta eficiencia en el trabajo requerido por estos. Estos procesadores, se comunican con la memoria mediante un bus compartido entre ellos, y al ser de uso común, este bus debe ser arbitrado para que cada procesador lo use cada instante.
Esta tecnología, está disponible en versiones de Windows superiores al 2000 y en máquinas Linux con Kernel compatible con SMT.
Por otro lado, la empresa desarrolladora de microprocesadores ARM, criticó la tecnología SMP debido al incremento del gasto energético que esta tecnología requiere, por lo que Intel deshabilitó la tecnología Hyper Threading en algunos de sus procesadores.
El Hyper Threading de Intel, se basa principalmente en simular en un único procesador, dos procesadores virtuales, con el objetivo de aprovechar mejor la unidad aritmético lógica (ALU), manteniéndola así ocupada el mayor tiempo posible. Esto quiere decir que, un procesador con esta tecnología habilitada que disponga de 2 núcleos, tendrá 4 hilos (correspondiéndole 2 hilos a cada núcleo) por los que simultáneamente se pasarán datos y aumentará drásticamente el rendimiento. Según Intel, se puede producir un aumento del rendimiento de hasta el 30%
Video explicativo de esta tecnología: http://www.youtube.com/watch?v=W06u7o5PCNk

Intel Smart Caché
Desde hace ya varios años, la memoria caché viene integrada con el propio procesador. Esta memoria, es más rápida que la memoria principal o RAM, por lo que aquí se encuentran, datos duplicados de la memoria principal a los que accedemos con mayor frecuencia, para así acceder con mayor velocidad a ellos. Por tanto, una memoria caché mayor, puede guardar más cantidad de datos a los que acceder rápidamente, y esto depende únicamente del procesador con al que va acoplado.
Intel Smart Cache, aumenta la probabilidad por la que, cada núcleo (partiendo de que dispongamos de un procesador multi-núcleo) pueda acceder a datos de la parte de la caché más eficiente que se encuentra disponible. Esto quiere decir, que cualquier núcleo del procesador puede acceder a la cantidad de caché que crea que necesita. Por ejemplo, tenemos un procesador de dos núcleos, y uno de ellos está usando en un instante predeterminado el 10% de la memoria caché. Entonces, gracias a esta tecnología, el otro núcleo tiene mayor posibilidad de acceder al otro 90% libre si cree que lo necesita, es decir, que cada núcleo puede acceder hasta el 100% de la caché disponible.
Video explicativo del Intel Smart Cache: http://www.intel.com/technology/product/demos/cache/demo.htm

Intel SpeedStep Technology
Esta tecnología mejorada en los actuales Core i5 fue desarrollada por primera vez para los Intel Pentium III de antaño. Es una muy buena utilidad complementaria al Intel Turbo Boost Technology, ya que, es capaz de adaptar el procesador al rendimiento requerido, de tal manera que, si se está corriendo una aplicación que apenas requiera demasiado uso del procesador, esta tecnología permite disminuir la capacidad del procesador. Las ventajas de esta tecnología más fácilmente visibiles, son las que están reflejadas en el uso de portátiles con estos microprocesadores, ya que esta característica principalmente, hace aumentar la duración de la bateria, disminuir el calentamiento del procesador (y el consecuente ruido producido por el ventilador para enfriarlo) y alarga la vida de este.
Video: http://www.intel.com/technology/product/demos/eist/demo.htm

Bit de desactivación de ejecución
Este sistema de seguridad, permite proteger al buffer de ataques por parte de gusanos o virus. La intención de estos, es desbordarlo, de manera que en algunos casos se puedan hasta perder datos, costando a los usuarios y empresas pérdidas de tiempo y productividad.
El bit de desactivación de ejecución, previene de estos ataques clasificando la memoria en áreas según el lugar en donde el código de los programas se ejecuta. De tal manera que, cuando un virus intenta introducir código en el buffer, el procesador desactiva le ejecución de código evitando que se produzcan daños y la posterior propagación del gusano.


Imagen 2: Novedades del i5

Set de Instrucciones y Microarquitectura
Un set de instrucciones es un repertorio, la parte de la arquitectura del ordenador relacionada con la programación en lenguaje máquina, en la que se detallan las instrucciones que la CPU debe entender y ejecutar.
Por otra parte, la microarquitectura, es la forma en la que el set de instrucciones es implementado en un procesador. Un mismo set de instrucciones puede ser implementado de manera diferente por microarquitecturas diferentes, y estas se eligen dependiendo de los objetivos que tengamos a la hora de fabricar el ordenador.
Tambien tenemos que explicar los dos distintos tipos de construcción de microprocesadores. CISC (Complex Instructions Set Computer) es un microprocesador que se caracteriza por tener un conjunto de instrucciones elevado, con lo que su unidad de control es más compleja, y en identificar una instrucción es más lenta, ya que tiene que buscar más. RISC (Reduced Instructions Set Computer) tienen instrucciones reducidas y muchos registros, con lo que se puede simplificar más, siendo más rápido que CISC.

Set de Instrucciones
Arquitectura x86, que a pesar de haber cumplido más de 30 años, sigue entre nosotros. Empezando como memorias para calculadoras, IBM que se encontraba desarrollando el IBM PC, eligió este procesador para incluirlo en sus máquinas. Este, el Intel 8086, abuelo de muchísimos de los procesadores actuales, funcionaba desde los 4,77 hasta los 10MHz.
La extensión del x86, el x86-64, permite usar direcciones de 64 bits. Desarrollada primeramente por AMD, fue implementada en los chips de Intel, como en los Pentium 4. Entre otras cosas, esta extensión aumenta el número y tamaño de registros, el espacio de direcciones (pudiendo redireccionar hasta 16 exabytes de memoria). Debido a que la segmentación no está soportada, no hay que recuperar y almacenar información segmentada, requiriendo ciertas comprobaciones para la protección de esta segmentación. Incluye también sets de instrucciones descritos posteriormente (SSE, SSE2 Y SSE3)
El set de Instrucción MMX añade 8 nuevos registros, representados desde el MM0 hasta el MM7. Cada registro es un número entero de 64 bits, aunque debido a su implementación de datos compactados, puede almacenar tambien dos enteros de 32 bits, 4 enteros de 16 bits u 8 enteros de 8 bits.
Para el resto de sets de instrucciones, tenemos que explicar que es el SIMD. Las siglas son de: Single Instruction, Multiple Data, significando, una instrucción, muchos datos. Esta técnica es empleada para conseguir un paralelismo a nivel de datos, es decir, que una sola instrucción afecte a varios datos. Esto se ve claramente con un ejemplo: imaginemos que queremos cambiar de brillo nuestra pantalla. Cada pixel tiene tres valores (rojo, verde y azul). Estos valores son leidos y reemplazados por los que queremos. En este caso, el procesador basado en SIMD fue el encargado de coger todos los píxeles y realizar esa función. Si no, esto se hubiera llevado a cabo pixel por pixel.
El siguiente set de Instrucción es una extensión del anterior, MMX, el SSE (Streaming SIMD Extensions). Guarda paralelismos con el MMX en que añade otros 8 nuevos registros, pero esta vez, de 128 bits de longitud, aunque igual que en el MMX, se pueden utilizar para guardar diferentes registros, como 4 enteros de 32 bits, 2 enteros de 64 bits o 16 enteros cortos de 8 bits. Añade al repertorio instrucciones de transferencia de datos, de conversión, aritméticas y lógicas.
Siguiendo el mismo modelo que MMX y SSE, nos encontramos con SSE2 (Streaming SIMD Extensions 2) lanzado tambien por AMD, en el año 2000. Con respecto su anterior versión SSE, añade 144 nuevas instrucciones. De lo más importante, añade un set de instrucciones para el control de la caché, intentando minimizar el ensuciamiento de la caché debido a flujos de información indefinida. Al maximizar las instrucciones MMX para operar con registros XMM, se pueden convertir todos los códigos MMX en SSE2
Una extensión para el SSE2 es el SSE3, cuyo cambio más notable con respecto la anterior versión, es la capacidad de trabajar horizontalmente en un registro. Siguiendo la misma línea, posteriormente se sacó la versión SSSE3, extensión de SSE3. Añade 32 nuevas funciones. Finalmente también se encuentran los sets de instrucciones SSE4.1 y SSE4.2.

Microarquitectura
Básicamente existen dos tipos de microarquitecturas implantadas en diferentes procesadores pertenecientes a la rama i5. La primera de ellas, se llama Nehalem, que fue lanzada al público en noviembre de 2008.
Esta microarquitectura, está disponible para procesadores de dos, cuatro, seis y hasta ocho núcleos (aunque los pertenecientes al i5 son los de dos y cuatro) y en su versión de cuatro núcleos, dispone de hasta 731 millones de transistores.
Desarrollo del multihilo (Hyper Threading comentado páginas atrás) y del Intel QuickPath Interconnect, otro paradigma de interconexión entre memoria y procesador, en el que este, asume que tiene un control de memoria integrado, haciendo que este acceso sea notablemente más rápido (hasta 25 GB/s). Ver video explicativo: http://www.intel.com/technology/quickpath/demo/demo.htm
Las siguientes capacidades de la memoria caché: 2×32 KB de L1 (32 KB para instrucciones y 32 KB para datos), 256 KB de L2 y 2 MB de L3 (cada una de estas por núcleo). Antes de seguir, explicaremos de manera breve cada uno de los niveles de la memoria caché para el mejor entendimiento de los datos aportados anteriormente.
La memoria caché la podemos dividir en 3 niveles distintos. El primer nivel, level 1 (L1) es la parte de la caché más rápida, corriendo a la misma o muy parecida velocidad del procesador que además, está incluida en el interior de este. Esta memoria a su vez se usa para almacenar dos cosas distintas, por eso la podriamos dividir en caché L1 para instrucciones y caché L1 para datos. El siguiente nivel, L2, es algo más lento que el nivel primero, pero aun así, es mucho más rápido que la memoria RAM. La utilización de este nivel está más encaminada en el uso de esta por parte de programas del sistema, y se situa en la placa base. Por último, el nivel tercero, L3, es el más lento pero el mayor con diferencia, de hecho, a medida que la memoria es más lenta, es mayor de tamaño (como podemos observar en los datos).
Nehalem, aumenta el rendimiento ya que aumenta el tamaño de los núcleos, puesto que con respecto a la velocidad de los hilos (relacionado con el hyper threading), aumenta de 1.1x a 1.25x (un hilo) y de 1.2x a 2x (dos hilos), y, finalmente, disminuye un 30% el consumo a pesar de tener el mismo rendimiento.
La segunda microarquitectura derivada de Nehalem, es llamada Nehalem-C o Westmere y nació debido a la necesidad de realizar la reducción de 45 a 32 nanómetros de su predecesor. Sus ventajas generales, principalmente son la posibilidad de implemento desde seis, hasta dieciseis núcleos. Promete ser sucesor de Bloomfield y Gainestown.


Imagen 3: Intel Dual Core i5

Socket
Los sockets (en español, zócalos) son los soportes en donde se colocan los procesadores. El socket está soldado a la placa base, de forma que tiene conexión eléctrica con el circuito impreso. Cada vez aumenta más el número de pines de estos, debido a aumento del consumo de energía y disminución del voltaje. En los últimos años, han pasado de usar cinco voltios, a uno, y potencias de veinte watios, a ochenta. Al querer aumentar la potencia y disminuir el voltaje, lo que necesitamos es mayor intensidad, más amperios, y esto lo conseguimos aumentando el número de pines del zócalo.
El Intel Core i5, utiliza un socket LGA 1156 (Land Grind Array), utilizado en los ordenadores de sobremesa y única y exclusivamente, de Intel.
Este modelo sustituyó a los antiguos sockets 775, que se conectaban a un puente norte con el bus frontal. Este puente norte se ha integrado en los LGA 1156 permitiendo varias conexiones hacia el resto del sistema: PCI-Express 2.0×16 para la comunicación con la tarjeta gráfica, DMI para la comunicación con el concentrador controlador de la plataforma, y dos canales para la comunicación con la memoria SDRAM DDR3


Imagen 4: Socket 1156

Direct Media Interface
El DMI, conocido como Direct Media Interface, es una interconexión punto por punto, entre el northbridge (puente norte) y el southbridge (puente sur) de un procesador Intel en una place base.
Northbridge y Southbridge son dos chips situados en los procesadores de Intel, que manejan diferentes tipos de datos. En el caso del Northbridge, maneja datos de la comunicación entre el CPU, la RAM, la ROM, y PCI Express (o AGP) de las tarjetas gráficas. Es la parte que más se calienta al hacerle al procesador overclocking, de tal manera que es uno de los puntos vitales para la refrigeración si se quiere llevar a cabo dicha práctica.
El Southbridge es más lento que el northbridge, ya que maneja más datos de entrada/salida, como son los buses PCI, y las conexiones SATA, USB, y LAN.
Volviendo al DMI, en el caso de los Intel Core i5, provee de velocidades de transferencia de hasta 2,5GT/s.

Conclusión
Como conclusión, podriamos asegurar que desde que se presentaron a finales del año pasado 2009 estos nuevos procesadores, Intel ha dado un paso enorme con respecto su mayor rival, AMD. Sus diferentes y sobre todo diversas tecnologias debido a sus propias investigaciones, sin hablar del mucho dinero invertido en marketing, ha hecho marcar una gran diferencia. Debo hacer incapié en la diversidad de tecnologías aplicadas a los procesadores, que demuestran que no solamente quiere ser el mejor, sino que piensa en cada tipo de persona. Desde los más jugones con tecnologias como el Hyper Threading o Turbo Boost, hasta los usuarios de a pie de portátiles, notebooks y netbooks, con su tecnología SpeedStep aumentando su bateria, pasando por las empresas, por tecnologias como la del Bit de desactivación de ejecución.
Por otro lado, y debido a la consulta de su página web, también mencionaría la grandísima facilidad con la que explican sus diferentes tipos de tecnologías en su propia web mediante videos en flash en un inglés perfectamente entendible para los que menos saben.
Con respecto al precio, siempre ha mantenido un precio considerable. Recorando todo el tiempo que su antiguo y famoso procesador Core Quad Q6600 estuvo valiendo 200€ (aunque al principio valía bastante más), en el caso de, por ejemplo el Intel Core i5-750 sacado en septiembre, su precio rondaba los 210 dólares. Actualmente, los Core i5 que superan los 3,4 Ghz, oscilan entre los 180 y 280 dólares, precio totalmente comprensible.
Por último, con respecto a sus características física en si, podría decir que, siendo su principal rival (a nivel de características) los AMD Phenom II, estos últimos se encuentran por debajo de las posibilidades de ganar en un análisis riguroso contra los Core i5. AMD de hecho tuvo que bajar los precios de estos hace poco, situándolos muy cercanos a los 100€.

Saludos, lipman.