La microarquitectura Intel Core (provisionalmente denominada Microarquitectura de Próxima Generación , [1] y desarrollada como Merom ) [2] es una microarquitectura de procesador multinúcleo lanzada por Intel a mediados de 2006. Es una evolución importante con respecto al Yonah , la versión anterior de la serie de microarquitectura P6 que comenzó en 1995 con Pentium Pro . También reemplazó la microarquitectura NetBurst , que sufría un alto consumo de energía e intensidad de calor debido a una tubería ineficiente diseñada para altas velocidades de reloj . A principios de 2004, la nueva versión de NetBurst (Prescott) necesitaba una potencia muy alta para alcanzar las frecuencias necesarias para un rendimiento competitivo, lo que la hacía inadecuada para el cambio a CPU de doble/multinúcleo . El 7 de mayo de 2004 Intel confirmó la cancelación de los próximos NetBurst, Tejas y Jayhawk . [3] Intel llevaba desarrollando Merom, la evolución de 64 bits del Pentium M , desde 2001, [2] y decidió expandirlo a todos los segmentos del mercado, sustituyendo a NetBurst en ordenadores de sobremesa y servidores. Heredó de Pentium M la elección de un proceso corto y eficiente, que ofrece un rendimiento superior a pesar de no alcanzar las altas frecuencias de NetBurst. [a]
Los primeros procesadores que utilizaron esta arquitectura recibieron los nombres en código ' Merom ', ' Conroe ' y ' Woodcrest '; Merom es para informática móvil, Conroe es para sistemas de escritorio y Woodcrest es para servidores y estaciones de trabajo. Si bien son arquitectónicamente idénticas, las tres líneas de procesadores difieren en el zócalo utilizado, la velocidad del bus y el consumo de energía. Los primeros procesadores móviles y de escritorio basados en Core recibieron la marca Core 2 , y luego se expandieron a las marcas de gama baja Pentium Dual-Core , Pentium y Celeron ; mientras que los procesadores basados en Core para servidores y estaciones de trabajo tenían la marca Xeon .
La microarquitectura Core volvió a velocidades de reloj más bajas y mejoró el uso de los ciclos de reloj disponibles y la energía en comparación con la microarquitectura NetBurst anterior de las CPU de las marcas Pentium 4 y D. [4] La microarquitectura Core proporciona etapas de decodificación, unidades de ejecución, cachés y buses más eficientes , lo que reduce el consumo de energía de las CPU de la marca Core 2 al tiempo que aumenta su capacidad de procesamiento. Las CPU de Intel han variado ampliamente en cuanto al consumo de energía según la velocidad del reloj, la arquitectura y el proceso del semiconductor, como se muestra en las tablas de disipación de energía de la CPU .
Al igual que las últimas CPU NetBurst, los procesadores basados en Core cuentan con múltiples núcleos y soporte de virtualización de hardware (comercializados como Intel VT-x ), e Intel 64 y SSSE3 . Sin embargo, los procesadores basados en Core no tienen la tecnología Hyper-Threading como en los procesadores Pentium 4. Esto se debe a que la microarquitectura Core se basa en la microarquitectura P6 utilizada por Pentium Pro, II, III y M.
La caché L1 de la microarquitectura Core con 64 KB de caché/núcleo L1 (32 KB de datos L1 + 32 KB de instrucciones L1) es tan grande como en el Pentium M, en comparación con los 32 KB del Pentium II / III (16 KB de datos L1 + 16 KB). Instrucción L1). La versión para el consumidor también carece de caché L3 como en el núcleo Gallatin del Pentium 4 Extreme Edition, aunque está presente exclusivamente en las versiones de gama alta de los Xeon basados en Core. Tanto el caché L3 como el hyper-threading se reintrodujeron nuevamente en la línea de consumo en la microarquitectura Nehalem .
Si bien la microarquitectura Core es una revisión arquitectónica importante, se basa en parte en la familia de procesadores Pentium M diseñada por Intel Israel. [5] El proceso de Core/ Penryn tiene 14 etapas de largo [6] – menos de la mitad del de Prescott . El sucesor de Penryn, Nehalem, tiene una penalización por error de predicción de rama dos ciclos mayor que Core/Penryn. [7] [8] Idealmente, el núcleo puede sostener una tasa de ejecución de hasta 4 instrucciones por ciclo (IPC), en comparación con la capacidad de 3 IPC de las microarquitecturas P6 , Pentium M y NetBurst . La nueva arquitectura es un diseño de doble núcleo con una caché L2 compartida diseñada para lograr el máximo rendimiento por vatio y una escalabilidad mejorada.
Una nueva tecnología incluida en el diseño es Macro-Ops Fusion , que combina dos instrucciones x86 en una sola microoperación . Por ejemplo, una secuencia de código común como una comparación seguida de un salto condicional se convertiría en una única microoperación. Sin embargo, esta tecnología no funciona en modo de 64 bits.
Core puede ejecutar cargas de forma especulativa antes que las tiendas anteriores con direcciones desconocidas. [9]
Otras tecnologías nuevas incluyen un rendimiento de 1 ciclo (antes 2 ciclos) de todas las instrucciones SSE de 128 bits y un nuevo diseño de ahorro de energía. Todos los componentes funcionarán a una velocidad mínima, aumentando la velocidad dinámicamente según sea necesario (similar a la tecnología de ahorro de energía Cool'n'Quiet de AMD y la tecnología SpeedStep de Intel de procesadores móviles anteriores). Esto permite que el chip produzca menos calor y minimice el uso de energía.
Para la mayoría de las CPU Woodcrest, el bus frontal (FSB) funciona a 1333 MT/s ; sin embargo, esto se reduce a 1066 MT/s para las variantes de gama baja de 1,60 y 1,86 GHz. [10] [11] Inicialmente, la variante móvil Merom estaba destinada a funcionar con un FSB de 667 MT/s, mientras que la segunda ola de Meroms, que admitía un FSB de 800 MT/s, se lanzó como parte de la plataforma Santa Rosa con un socket diferente. en mayo de 2007. El Conroe orientado a computadoras de escritorio comenzó con modelos que tenían un FSB de 800 MT/s o 1066 MT/s con una línea de 1333 MT/s lanzada oficialmente el 22 de julio de 2007.
El uso de energía de estos procesadores es muy bajo: el uso promedio de energía debe estar en el rango de 1 a 2 vatios en variantes de voltaje ultrabajo, con potencias de diseño térmico (TDP) de 65 vatios para Conroe y la mayoría de los Woodcrest, 80 vatios para el 3.0. GHz Woodcrest, y 40 o 35 vatios para el Woodcrest de bajo voltaje. En comparación, un procesador AMD Opteron 875HE de 2,2 GHz consume 55 vatios, mientras que la línea Socket AM2 de bajo consumo cabe en la envolvente térmica de 35 vatios (especificada de otra manera, por lo que no es directamente comparable). Merom, la variante móvil, tiene un TDP de 35 vatios para las versiones estándar y un TDP de 5 vatios para las versiones de voltaje ultrabajo (ULV). [ cita necesaria ]
Anteriormente, Intel anunció que ahora se centraría en la eficiencia energética, en lugar del rendimiento puro. Sin embargo, en el Intel Developer Forum (IDF) en la primavera de 2006, Intel anunció ambos. Algunos de los números prometidos fueron:
Los procesadores de la microarquitectura Core se pueden clasificar por número de núcleos, tamaño de caché y socket; cada combinación de estos tiene un nombre de código único y un código de producto que se utiliza en varias marcas. Por ejemplo, el nombre en clave "Allendale" con código de producto 80557 tiene dos núcleos, 2 MB de caché L2 y utiliza el socket de escritorio 775, pero se ha comercializado como Celeron, Pentium, Core 2 y Xeon, cada uno con diferentes conjuntos de funciones habilitadas. La mayoría de los procesadores móviles y de escritorio vienen en dos variantes que se diferencian en el tamaño de la caché L2, pero la cantidad específica de caché L2 en un producto también se puede reducir desactivando piezas en el momento de la producción. Los procesadores Tigerton de doble núcleo y todos los procesadores de cuatro núcleos, excepto, son módulos de múltiples chips que combinan dos matrices. Para los procesadores de 65 nm, procesadores con diferentes matrices pueden compartir el mismo código de producto, pero la información específica sobre cuál se utiliza se puede derivar del paso a paso.
Los procesadores Core 2 originales se basan en los mismos troqueles que pueden identificarse como CPUID Family 6 Model 15. Dependiendo de su configuración y empaque, sus nombres en clave son Conroe ( LGA 775 , 4 MB de caché L2), Allendale (LGA 775, 2 MB L2 cache), Merom ( Socket M , 4 MB de caché L2) y Kentsfield ( módulo multichip , LGA 775, 2x4 MB de caché L2). Los procesadores Merom y Allendale con funciones limitadas se encuentran en los procesadores Pentium Dual Core y Celeron , mientras que Conroe, Allendale y Kentsfield también se venden como procesadores Xeon .
Los nombres en clave adicionales para procesadores basados en este modelo son Woodcrest (LGA 771, 4 MB de caché L2), Clovertown (MCM, LGA 771, 2 × 4 MB de caché L2) y Tigerton (MCM, Socket 604 , 2 × 4 MB de caché L2), todos de los cuales se comercializan únicamente bajo la marca Xeon.
Los procesadores Conroe-L y Merom-L se basan en el mismo núcleo que Conroe y Merom, pero solo contienen un núcleo y 1 MB de caché L2, lo que reduce significativamente el costo de producción y el consumo de energía del procesador a expensas del rendimiento en comparación con la versión de doble núcleo. Se utiliza únicamente en procesadores Core 2 Solo U2xxx y Celeron de voltaje ultrabajo y se identifica como CPUID familia 6 modelo 22.
En el ciclo Tick-Tock de Intel , el "Tick" de 2007/2008 fue la reducción de la microarquitectura Core a 45 nanómetros como CPUID modelo 23. En los procesadores Core 2, se utiliza con los nombres en clave Penryn (Socket P), Wolfdale (LGA 775) y Yorkfield (MCM, LGA 775), algunos de los cuales también se venden como procesadores Celeron, Pentium y Xeon. En la marca Xeon, los nombres en clave Wolfdale-DP y Harpertown se utilizan para MCM basados en LGA 771 con dos o cuatro núcleos Wolfdale activos.
Desde el punto de vista arquitectónico, los procesadores Core 2 de 45 nm cuentan con SSE4.1 y un nuevo motor de división/shuffle. [12]
Los chips vienen en dos tamaños, con 6 MB y 3 MB de caché L2. La versión más pequeña se llama comúnmente Penryn-3M, Wolfdale-3M y Yorkfield-6M, respectivamente. La versión de un solo núcleo de Penryn, listada aquí como Penryn-L, no es un modelo separado como Merom-L sino una versión del modelo Penryn-3M con un solo núcleo activo.
El procesador Xeon "Dunnington" (CPUID Family 6, modelo 29) está estrechamente relacionado con Wolfdale pero viene con seis núcleos y una caché L3 en el chip y está diseñado para servidores con Socket 604, por lo que se comercializa sólo como Xeon, no como Núcleo 2.
La microarquitectura Core utiliza varios niveles de pasos (steppings), que a diferencia de las microarquitecturas anteriores, representan mejoras incrementales y diferentes conjuntos de características como el tamaño de la caché y los modos de bajo consumo. La mayoría de estos pasos se utilizan en todas las marcas, generalmente desactivando algunas funciones y limitando las frecuencias de reloj en chips de gama baja.
Los pasos con un tamaño de caché reducido utilizan un esquema de nomenclatura independiente, lo que significa que las versiones ya no están en orden alfabético. Se han utilizado pasos agregados en muestras internas y de ingeniería, pero no figuran en las tablas.
Muchos de los procesadores Core 2 y Xeon de gama alta utilizan módulos multichip de dos chips para obtener tamaños de caché más grandes o más de dos núcleos.
Los primeros pasos de ES/QS son: B0 (CPUID 6F4h), B1 (6F5h) y E0 (6F9h).
Los pasos B2/B3, E1 y G0 de los procesadores modelo 15 (cpuid 06fx) son pasos evolutivos del chip estándar Merom/Conroe con caché L2 de 4 MB, y el paso E1 de corta duración solo se utiliza en procesadores móviles. Pasando a L2 y M0 están los chips Allendale con solo 2 MB de caché L2, lo que reduce el costo de producción y el consumo de energía para los procesadores de gama baja.
Los pasos G0 y M0 mejoran el consumo de energía inactivo en el estado C1E y agregan el estado C2E en los procesadores de escritorio. En los procesadores móviles, todos los cuales admiten estados inactivos del C1 al C4, los pasos E1, G0 y M0 agregan soporte para la plataforma Mobile Intel 965 Express ( Santa Rosa ) con Socket P , mientras que los pasos anteriores B2 y L2 solo aparecen para el Socket. Plataforma móvil Intel 945 Express ( actualización de Napa ) basada en M.
El modelo 22 paso A1 (cpuid 10661h) marca un cambio de diseño significativo, con un solo núcleo y 1 MB de caché L2 que reducen aún más el consumo de energía y el costo de fabricación para la gama baja. Al igual que los pasos anteriores, A1 no se utiliza con la plataforma Mobile Intel 965 Express.
Los pasos G0, M0 y A1 reemplazaron en su mayoría a todos los pasos anteriores en 2008. En 2009, se introdujo un nuevo paso G2 para reemplazar el paso B2 original. [dieciséis]
En el modelo 23 (cpuid 01067xh), Intel comenzó a comercializar paso a paso con caché L2 completa (6 MB) y reducida (3 MB) al mismo tiempo, y dándoles valores de cpuid idénticos. Todos los pasos tienen las nuevas instrucciones SSE4.1 . El paso C1/M1 fue una versión de corrección de errores de C0/M0 específicamente para procesadores de cuatro núcleos y solo se usó en esos. El paso E0/R0 agrega dos nuevas instrucciones (XSAVE/XRSTOR) y reemplaza todos los pasos anteriores.
En los procesadores móviles, el paso C0/M0 solo se utiliza en la plataforma Intel Mobile 965 Express ( actualización de Santa Rosa ), mientras que el paso E0/R0 es compatible con la plataforma Intel Mobile 4 Express ( Montevina ) posterior .
El modelo 30 paso A1 (cpuid 106d1h) añade una caché L3 y seis en lugar de los dos núcleos habituales, lo que lleva a un tamaño de matriz inusualmente grande de 503 mm². [17] En febrero de 2008, sólo había llegado a la serie de gama alta Xeon 7400 ( Dunnington ).
Conroe, Conroe XE y Allendale utilizan Socket LGA 775 ; sin embargo, no todas las placas base son compatibles con estos procesadores.
Los conjuntos de chips compatibles son:
El modelo QX9770 de Yorkfield XE (45 nm con 1600 MT/s FSB) tiene una compatibilidad limitada con el chipset: solo son compatibles X38, P35 (con overclocking ) y algunas placas base de alto rendimiento X48 y P45. Se fueron lanzando gradualmente actualizaciones de BIOS para brindar soporte para la tecnología Penryn, y el QX9775 solo es compatible con la placa base Intel D5400XS. El modelo E7200 de Wolfdale-3M también tiene compatibilidad limitada (al menos el chipset Xpress 200 es incompatible) [ cita necesaria ] .
Aunque una placa base puede tener el conjunto de chips necesario para admitir Conroe, algunas placas base basadas en los conjuntos de chips mencionados anteriormente no son compatibles con Conroe. Esto se debe a que todos los procesadores basados en Conroe requieren un nuevo conjunto de funciones de suministro de energía especificadas en Regulador de voltaje reducido (VRD) 11.0. Este requisito es el resultado del consumo de energía significativamente menor de Conroe, en comparación con las CPU Pentium 4/D que reemplazó. Una placa base que tiene un conjunto de chips compatible y VRD 11 admite procesadores Conroe, pero incluso entonces algunas placas necesitarán un BIOS actualizado para reconocer el FID (ID de frecuencia) y el VID (ID de voltaje) de Conroe.
A diferencia del diseño anterior de Pentium 4 y Pentium D , la tecnología Core 2 obtiene un mayor beneficio de la memoria que se ejecuta sincrónicamente con el bus frontal (FSB). Esto significa que para las CPU Conroe con FSB de 1066 MT/s, el rendimiento de memoria ideal para DDR2 es PC2-8500 . En algunas configuraciones, usar PC2-5300 en lugar de PC2-4200 puede disminuir el rendimiento. Sólo cuando se pasa a PC2-6400 se produce un aumento significativo del rendimiento. Si bien los modelos de memoria DDR2 con especificaciones de sincronización más estrictas mejoran el rendimiento, la diferencia en los juegos y aplicaciones del mundo real suele ser insignificante. [18]
De manera óptima, el ancho de banda de la memoria proporcionado debe coincidir con el ancho de banda del FSB, es decir, una CPU con una velocidad de bus nominal de 533 MT/s debe combinarse con una RAM que coincida con la misma velocidad nominal, por ejemplo DDR2 533 o PC2-4200. . Un mito común [ cita necesaria ] es que la instalación de RAM entrelazada ofrecerá el doble de ancho de banda. Sin embargo, como máximo, el aumento del ancho de banda mediante la instalación de RAM entrelazada es aproximadamente del 5 al 10 %. El AGTL+ PSB utilizado por todos los procesadores NetBurst y los procesadores Core 2 actuales y de mediano plazo (anteriores a QuickPath ) proporciona una ruta de datos de 64 bits. Los conjuntos de chips actuales proporcionan un par de canales DDR2 o DDR3.
En trabajos que requieren grandes cantidades de acceso a la memoria, los procesadores Core 2 de cuatro núcleos pueden beneficiarse significativamente [19] del uso de la memoria PC2-8500 , que funciona a la misma velocidad que el FSB de la CPU; Esta no es una configuración oficialmente admitida, pero varias placas base la admiten.
El procesador Core 2 no requiere el uso de DDR2. Si bien los conjuntos de chips Intel 975X y P965 requieren esta memoria, algunas placas base y conjuntos de chips admiten procesadores Core 2 y memoria DDR . Cuando se utiliza memoria DDR, el rendimiento puede verse reducido debido al menor ancho de banda de memoria disponible.
La unidad de administración de memoria (MMU) Core 2 en los procesadores X6800, E6000 y E4000 no funciona según las especificaciones anteriores implementadas en generaciones anteriores de hardware x86 . Esto puede causar problemas, muchos de ellos graves de seguridad y estabilidad, con el software del sistema operativo existente . La documentación de Intel establece que sus manuales de programación se actualizarán "en los próximos meses" con información sobre los métodos recomendados para administrar el búfer de traducción (TLB) para Core 2 para evitar problemas, y admite que, "en casos excepcionales, una invalidación inadecuada de TLB puede provocar un comportamiento impredecible del sistema, como bloqueos o datos incorrectos". [20]
Entre las cuestiones planteadas:
Se dice que las erratas de Intel Ax39, Ax43, Ax65, Ax79, Ax90, Ax99 son especialmente graves. [21] 39, 43, 79, que pueden provocar un comportamiento impredecible o un bloqueo del sistema, se han solucionado en pasos recientes .
Entre los que han declarado que las erratas son particularmente serias se encuentran Theo de Raadt de OpenBSD [22] y Matthew Dillon de DragonFly BSD . [23] Linus Torvalds adoptó una opinión contrastante , calificando el problema de TLB como "totalmente insignificante" y agregando: "El mayor problema es que Intel debería haber documentado mejor el comportamiento de TLB". [24]
Microsoft ha publicado la actualización KB936357 para abordar las erratas mediante la actualización del microcódigo , [25] sin penalización en el rendimiento. También hay actualizaciones de BIOS disponibles para solucionar el problema.