Familia Intel x86

Anuncio
Ley de Moore
 Gordon Moore, Intel, 1965, Electronics
Magazine

Familia de Procesadores Intel x86
Sistemas Computacionales
Mario Medina C.
[email protected]
“El número de transistores en un chip se duplica
cada 24 meses y esto no cambiará en los
próximos 10 años”
Tenía razón

Las razones son:
Tamaño del chip
Dimensión de los transistores
Ingenio de los diseñadores
Ley de Moore
(número de transistores)
Ley de Moore
(tamaño de transistores)
Tamaño del transistor
Velocidad de reloj de CPU
 Dennard Scaling


Consumo de potencia
de un transistor
MOSFET es
proporcional al área
del transistor
International
Technology Roadmap
for Semiconductors
©2014 Mario Medina C.
1
Tendencias en CPUs Intel
Consumo de potencia de CPU
 Disipación dinámica de potencia de una CPU
es función de las capacitancias parásitas C, la
frecuencia de reloj f y el voltaje de la fuente V

Pd = CfV2
 Reducir tamaño del transistor reduce C
 Reducir voltaje de 5.0[V] a 2.2[V] a 1.2[V]
a 0.9[V]

Aumenta susceptibilidad al ruido
Intel 8086/8088
 8086: 1978, 29K transistores



 80286: 1982, 134K transistores
8 Registros de 16 bits
Bus de datos de 16 bits
Bus de dirección de 20 bits



Multiplexado con bus de datos



Clock de 6 a 12.5 MHz
Procesador del IBM PC-AT
Bus de direcciones de 24 bits
Direcciona 16 MiB
Aprox. 2.5 MIPS

 8088: CPU de IBM-PC

Intel 80286

Bus de datos de 8 bits para reducir
costos
Clock de 4.77 MHz (IBM-PC)
Fabricantes: Intel y AMD
Tiene modos real y protegido
Mejoras en microarquitectura lo hacían
2 veces más rápido que 8086 de
misma velocidad
Intel 80386
 80386: 1985, 275K transistores







Arquitectura de 32 bits
Registros extendidos de 32 bits
Modos real, protegido y virtual
16 y 20 MHz
386SX: versión barata con bus de datos de 16 bits
386SLC es 386SX con cache interna de 8 KiB
Intel niega la licencia del 80386 a AMD
Intel 80486
 i486: 1989, 1.2M transistores






Integra FPU 387 al chip
Agrega instrucciones atómicas fetch-and-add
Agrega cache L1 interna D+I de 8 KiB
i486SX: 486 sin unidad de punto flotante
Desempeño es 50% mejor que i386 de la
misma velocidad
Pipeline de 5 etapas
Clonado por Cyrix, AMD y otros
i486
©2014 Mario Medina C.
2
Intel Pentium
 Pentium: 1993, 3.1 M transistores





Intel Pentium MMX
 Pentium MMX: 1997, 4.5 M transistores
Microarquitectura P5
60 y 66 MHz
Bus de datos de 64 bits
Desempeño es el doble que i486
Procesador superescalar

Vectores enteros de 64 bits
datos de 1, 2 o 4 bytes


8 registros de punto flotante

Cache interna de 32 KiB
64 bits cada uno
Ejecuta 2 ops. aritméticas por ciclo

Instrucciones MMX
Cache interna de datos 8 KiB e instr. 8 KiB
Predicción de saltos
Intel Pentium Pro
 Pentium Pro: 1995, 5.5 M transistores


Microarquitectura P6
Bus de direcciones de 36 bits
Intel Pentium II
 Pentium II: 1997, 7M transistores

Versión Xeon tiene caches 512 KiB a 2 MiB
Direcciona 64 GiB




Memoria cache L2 de 256 ó 512 KiB conectada
via backside bus
Clock de 150 y 166 MHz
Instr. move condicional
Superescalar de 3 vías
Memoria cache L2 de 256 KiB a 1 MiB




Front-side bus de 100 MHz
Agrega instrucciones MMX a Pentium Pro
Cache L1 de 32 KiB
Clock de 266 MHz
Conectada via backside bus
Opera en paralelo a RAM
Intel Pentium III
 Pentium III: 1999, 8.2 M
transistores

 Pentium 4: 2001, 42 M transistores

Instr. vectoriales de 128 bits (SSE)

Aceleran cálculos de punto flotante


Versión Coppermine agrega cache
L2 de 256KB en el chip


28 M transistores

Versión Tualatin aumenta cache L2 a
512 KiB
Intel Pentium 4
Microarquitectura NetBurst, 1.5 GHz
Incorpora tecnología HyperThreading (3.4 GHz)
Agrega instr. vectoriales de 8 bytes (SSE2)
Luego agrega nuevas instrucciones x86-64
Limitado por alta disipación a altas velocidades
180 ns a 65 ns
Clock hasta 3.8 GHz
Pentium III

Pentium 4 Extreme Edition
Arquitectura Intel 64 bits
©2014 Mario Medina C.
3
Intel Pentium M
 Pentium M 775: 2003, 140M transistores

Pentium III muy modificado
Basado en microarquitectura P6
Bus del Pentium 4, SSE2, MMX
No hyperthreading, no SSE3


 Pentium Extreme Edition (2005), 164M
transistores



Optimizado para bajo consumo
Desempeño Pentium M 1.6 GHz ~ P4 2.4 GHz

Intel Pentium EE
Cache L1 Datos 32 KiB + Instr. 32 KiB
Cache interna L2 de hasta 2 MiB


Pentium 4 dual-core
Microarquitectura NetBurst
MMX, SSE, SSE2, SSE3
Hyperthreading
Arquitectura Intel de 64 bits
Intel Core
 Intel Core: 2006, 150M transistores






Microarquitectura Core derivada del P6
1 ó 2 Cores de 32 bits en el chip
Cache L1 de 64 KiB
Cache L2 compartida de 2 MiB
No Hyperthreading
Instrucciones SSSE3
Intel Core 2
 Intel Core 2: 2006, 291M transistores






Microarquitectura Core de 64 bits
Solo, Duo o Quad Core
Tecnología de 65nm y 45nm
Cache L2 compartida de 4MB ó 6 MB
Instrucciones SSE3 y SSSE3
Modo SpeedStep (Reloj variable)
Intel Atom
 Intel Atom: 2008, 47M transistores

Microarquitectura Atom de 64 bits
Muy popular en netbooks






Optimizada para bajo consumo de potencia
2 pipelines de 16 etapas
Hyperthreading
MMX, SSE, SSE2, SSE3, SSSE3
Cache L1 Datos 24 KiB + Instr. 32 KiB
Cache L2 de 512 KiB
Intel i7 (Nehalem)
 Intel i7: 2008, 770M transistores


Elimina Front-Side Bus






©2014 Mario Medina C.
Microarquitectura Nehalem de 64 bits
Buses Quick Path Interconnect (QPI)
Cache L2 de 4 a 12 MiB
Hyperthreading
Dynamic overclocking (Turbo Boost)
Dual-core, Quad-core ó Six-core
MMX, SSE, SSE2, SSE3, SSSE3
3 canales de memoria DDR3
4
Intel i7 (Sandy Bridge)
 Intel i7: 2008, 995M transistores








Intel Xeon E5 (Sandy Bridge)
 Intel Xeon E5: 2012, 2260M transistores
Microarquitectura Sandy Bridge de 64 bits
Tecnología de 32 nm
Quad-core
Cache L1 de 32 + 32 KiB por core
Cache L2 de 256 KiB por core
Cache L3 compartida de 4 a 8 MiB
Procesador gráfico incorporado en el chip
Advanced Vector Extensions (AVX)








Microarquitectura Sandy Bridge-E de 64 bits
Fecha de aparición: marzo 2012
Tecnología de 32 nm
De 2 a 8 cores
Cache L2 por core de 256 KiB
Cache L3 compartida de 2 a 20 MiB
Advanced Vector Extensions (AVX)
Línea Xeon dirigida a servidores y estaciones de
trabajo
Intel i7 (Ivy Bridge)











4 Cores
6 Unidades GPU
Microarquitectura Ivy Bridge
Sobre 1400M transistores
Velocidad: 3.5/3.9 GHz
Cache L1: 64 KB/core
Cache L2: 256 KB/core
Cache L3: 8 MB
Consumo: 77W
Tamaño: 133 mm2
Precio inferior a US$300











SIMD

SIMD (Single Instruction, Multiple Data) aplica
la misma instrucción en paralelo a varios datos
También llamadas instrucciones vectoriales cortas

Intel I7 (Haswell)
4/6/8 Cores
Intel HD 4600
Microarquitectura Haswell
Sobre 1400M transistores
Velocidad: 3.6/4.0 GHz
Cache L1: 64 KB/core
Cache L2: 256 KB/core
Cache L3: 8 MB
Consumo: 84W
Tamaño: 177 mm2
Precio: US$300
Instrucciones SIMD
 Requiere múltiples unidades funcionales
 Requiere acceso paralelo a datos
Beneficia aplicaciones que realizan las mismas
operaciones sobre muchos datos en forma
regular
©2014 Mario Medina C.
5
Instrucciones MMX de Intel
Instrucciones SIMD de Intel
 MMX opera sobre registros FP de 64 bits


Registro FP de 64 bits
57 instrucciones MMX
Puede operar sobre 2 enteros de 32 bits, 4 enteros
de 16 bits ó 8 enteros de 8 bits
 Puede ser interpretado como
Entero de 32 bits
Entero de 32 bits
Diseñado para operaciones gráficas


Realiza la misma instrucción sobre los datos
Aparecen con el Pentium MMX
 AMD introduce instrucciones 3DNOW! que usan
los registros FP como 2 datos de punto flotante
de 32 bits
Instrucciones SIMD de Intel
 SSE (Streaming SIMD Extensions)



70 instrucciones


Aparece con el Pentium III
Operaciones sobre enteros usan MMX
 AMD agrega 8 registros XMM más

Entero 16 bits
Entero 16 bits
8 bits
8 bits
8 bits
8 bits
8 bits
8 bits
8 bits
8 bits
Instrucciones SIMD de Intel

Opera sobre registros como 4 números de
punto flotante de precisión simple

Entero 16 bits
 SSE2 (Streaming SIMD Extensions v.2)
Agrega a la CPU 8 registros especiales
 XMM0 a XMM7 de 128 bits

Entero 16 bits
SSE2 amplía instrucciones SSE
Opera sobre registros XMM de 128 bits
Aparecen con el Pentium IV
Operaciones sobre datos como 2 double,
2 enteros de 64 bits, 4 enteros de 32 bits,
4 float, 8 enteros de 16 bits ó 16
enteros de 8 bits
XMM8 a XMM15
Instrucciones SSE de Intel
SSE
Registro XMM de 128 bits
 Puede ser interpretado como
Instrucciones SIMD de Intel
 SSE3 (Streaming SIMD Extensions v.3)

double de 64 bits
double de 64 bits
SSE2
entero de 64 bits
entero de 64 bits
SSE2
entero 32 bits
entero 32 bits
entero 32 bits
entero 32 bits
SSE2
float 32 bits
float 32 bits
float 32 bits
float 32 bits
SSE
16 bits 16 bits 16 bits 16 bits 16 bits 16 bits 16 bits 16 bits
SSE2

 SSSE3 (Supplemental Streaming SIMD
Extensions v.3)


©2014 Mario Medina C.
13 nuevas instrucciones que pueden operar
horizontalmente, entre los datos que comparten
un mismo registro XMM
Aparecen en Pentium 4 (Prescott)
Aparecen con la microarquitectura Core
16 nuevas instrucciones
6
Instrucciones SIMD de Intel
 SSE4 (Supplemental Streaming SIMD
Extensions v.4)


54 instrucciones nuevas
Aparece en microarquitectura Core (Penryn)
SIMD

Beneficia aplicaciones que realizan las
mismas operaciones sobre muchos datos en
forma regular
Procesadores digitales de señales

Procesadores gráficos (GPU)

Consolas de juegos

 AVX (Advanced Vector Extension)




Aparece en microarquitectura Sandy Bridge
Extiende registros a 256 bits (YMM)
Incluye nuevos formatos de instrucción
Requiere soporte a nivel del S. O.
Windows 7, 8, Linux 2.6.30
©2014 Mario Medina C.
Texas Instruments DSP
NVidia, ATI
Procesador Cell
7
Descargar