Download Procesadores - Departamento de Arquitectura y Tecnología de los

Document related concepts
no text concepts found
Transcript
Tendencias en
Ingeniería de
Computadores
Procesadores para
Dispositivos Móviles
Jesús González Peñalver
Contenidos
Motivación
Origen y evolución de ARM
Familias de procesadores ARM
Modelo de negocio de ARM
Plataformas actuales para dispositivos móviles
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
2
¿Qué procesadores son los más vendidos?
7000
Millones de unidades vendidas
× 24.8
6000
5000
× 13.2
4000
3000
× 12.7
× 10.7
× 10
2000
1000
0
2006
2007
PCs y Servidores
2008
2009
2010
Chips con procesadores ARM
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
3
¿En qué mercados se usan los procesadores de ARM?
Millones de unidades (2010)
305
976
3782
1037
Dispositivos móviles
Procesadores empotrados
Empresa (Fotocopiadoras, etc.)
Hogar
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
4
Uso de los procesadores ARM en los teléfonos móviles
0,05
El 95% de los teléfonos móviles
del mundo contienen algún chip
basado en un procesador de ARM
ARM
Resto
0,95
Número medio de chips basados
en un procesador ARM que son
usados en cada teléfono móvil
3
2,5
2
1,5
1
0,5
0
2,5
1,5
1,6
1,9
2
2006 2007 2008 2009 2010
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
5
¿Por qué se se venden tantos procesadores ARM?
El equilibrio PPA de los procesadores ARM ha sido la clave de su éxito en los
dispositivos móviles.
Actualmente ARM está empezando a abordar otros mercados: electrodomésticos,
infotaiment, servidores, etc.
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
6
Contenidos
Motivación
Origen y evolución de ARM
Familias de procesadores ARM
Modelo de negocio de ARM
Plataformas actuales para dispositivos móviles
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
7
Acorn Computers
Fabricaba computadores
domésticos muy populares
en el Reino Unido
Acorn BBC Micro (1981)
Acorn Archimedes (1987)
En 1983 decidieron diseñar
un nuevo procesador, el
1.4 veces más paralelo
ARM (Acorn RISC Machine),
para competir con los PC,
3.2 veces más eficiente
aunque sin mucho éxito
Objetivo: Un procesador
con prestaciones más que
aceptables en PCs de bajo
coste
Acorn Electron (1983)
ARM2 (8MHz)
0.5 MIPS / MHz
30 000 transistores
133.3 MIPS / Mtrans
IBM Personal System 2 (1987)
9.2 veces más transistores
Intel 386DX (33MHz)
0.35 MIPS/MHz
275 000 transistores
41.45 MIPS / Mtrans
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
8
ARM LTD
En 1990 Apple buscaba un procesador RISC de altas prestaciones, bajo
consumo y bajo coste para un nuevo tipo de dispositivo, el primer PDA
Apple y el equipo de desarrollo de los ARM de Acorn se unieron para fundar
Advanced RISC Machines LTD
Nuevo modelo de negocio: Vender los derechos para fabricar sus procesadores
Apple Newton (1993)
DEC StrongARM (1996)
ARM610 (ARMv3)
20 Mhz
0.85 MIPS/MHz
35000 transistores
SA-110 (ARMv4) 233MHz
233 DMIPS
1 DMIPS/MHz
2.5 Mtrans
93.2 MIPS/M trans
1 Watt
233 MIPS/Watt
Intel Pentium 200MHz (1996)
333 MIPS
3.3 Mtrans
6.5 Watt
1.67 MIPS/MHz
101 MIPS / M trans
51.23 MIPS / Watt
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
<
× 4.5
× 1.67
9
Evolución de los procesadores para PCs
Intel 80286 (1982)
134×103 transistores
12 Mhz, 68,7 mm2
Intel 80386 (1985)
275×103 transistores
33 Mhz, 104 mm2
Intel Pentium (1993)
3.1×106 transistores
66 Mhz, 264 mm2
Intel Pentium II (1997)
7.5×106 transistores
300 Mhz, 209 mm2
Intel Pentium III (1999)
28×106 transistores
733 Mhz, 140 mm2
Intel Pentium 4 (2000)
42×106 transistores
1.5 Ghz, 224 mm2
Notable mejora de las prestaciones, sin cuidar
demasiado el consumo o el área del procesador
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
10
ARM ha ido mejorando en otra dirección
800 veces más eficiente
energéticamente
500 veces más pequeño
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
11
Aunque tampoco ha descuidado la mejora de prestaciones
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
12
Contenidos
Motivación
Origen y evolución de ARM
Familias de procesadores ARM
Clásicos
Cortex-M
Cortex-R
Cortex-A
Modelo de negocio de ARM
Plataformas actuales para dispositivos móviles
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
15
Familias de procesadores de ARM
Procesadores más que probados
y muy baratos para aplicaciones
muy sensibles al coste
Tienen una buena eficiencia
energética para sistemas
empotrados
Acortan el time-to-market.
Mucha documentación,
herramientas, …
Se siguen vendiendo miles
de millones cada año
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
16
ARM7
Lanzamiento: 1994
Objetivos:
Teléfonos móviles, agendas, impresoras, cámaras, PDAs, …
Tecnología: 800 nanómetros, 33 MHz
ARM7TDMI(-S)
Arquitectura: ARMv4T
Características: Pipeline de 3 etapas, modo de ejecución Thumb, soporte para
Depuración, Multiplicador hardware, ICE. Hay versiones
Sintetizables
Prestaciones: 0.9 DMIPS / Mhz
Consumo:
0.8 mW / Mhz
ARM7EJ-S
Arquitectura:
ARMv5TEJ
Características: Pipeline de 5 etapas, añade Enhanced DSP y modo de ejecución
Jazelle
Prestaciones: 1 DMIPS / MHz
Consumo:
1.5 mW / Mhz
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
17
Comparativas de los ARM7 con procesadores de Intel de la época
ARM7TDMI (1994, 800 nm, Orientado a sistemas empotrados)
Intel 486DX4 75 (1994, 600 nm, orientado a PC/Servidores)
Intel 486SL (1993, 800 nm, versión de bajo consumo del 486DX para portátiles)
Intel Pentium 100 (1994, 600 nm, orientado a PC/Servidores)
200
150
100
50
0
Prestaciones (MIPS)
12% más MIPS
que el 486SL
consumiendo 4
veces menos
120
100
80
60
40
20
0
5
4
3
2
1
Frecuencia (MHz)
2
1,5
1
0,5
0
Paralelismo (MIPS/MHz)
0
Consumo (W)
140
120
100
80
60
40
20
0
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
Eficiencia (MIPS/W)
18
Evolución del proceso de fabricación del ARM7TDMI
Área (mm2)
1,2
1
0,8
0,6
0,4
0,2
0
250 nm 180 nm 130 nm 65 nm
1
Prestaciones (MIPS/MHz)
0,8
0,6
0,4
0,2
0
250 nm 180 nm 130 nm 65 nm
400
Frecuencia (MHz)
300
200
100
0
250 nm 180 nm 130 nm 65 nm
Prestaciones (MIPS)
350
300
250
200
150
100
50
0
250 nm 180 nm 130 nm 65 nm
Consumo (mW)
60
50
40
30
20
10
0
250 nm 180 nm 130 nm 65 nm
40
Eficiencia (MIPS/mW)
30
20
10
0
250 nm 180 nm 130 nm 65 nm
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
19
Aplicaciones del ARM7
Nintendo Gameboy Advance (2001)
Consola de videojuegos
Apple iPod (2001)
Reproductor multimedia
Nokia 3300 (2003)
Teléfono móvil
Kodak EasyShare LS753 (2004)
Cámara
Ramos RM970 PMP (2007)
Reproductor multimedia
Allerta inPulse (2011)
Smartwatch
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
20
ARM9
Lanzamiento: 1997
Objetivos:
Teléfonos móviles, buscas, smartphones, decodificadores de TV, ...
ARM946E-S (1999)
Arquitectura: ARMv5TE
Tecnología:
250 nanómetros, 160 MHz
Características: Pipeline de 5 etapas, arquitectura Harvard, MPU, TCMs, Thumb,
soporte para Depuración, Enhanced DSP, Sintetizable
Prestaciones: 1.1 DMIPS / Mhz
Consumo:
2.5 mW / Mhz
ARM926EJ-S (2000)
Arquitectura: ARMv5TEJ
Tecnología:
180 nanómetros, 200 MHz
Características: Cambia la MPU por MMU, mejora el repertorio Enhanced DSP
y añade el modo de ejecución Jazelle
Prestaciones: 1.1 DMIPS / MHz
Consumo:
1.5 mW / Mhz
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
21
Comparativas de los ARM9 con procesadores de Intel de la época
ARM946E-S (1999, 250 nm)
ARM926EJ-S (2000, 180 nm)
Intel Pentium 4 (2000, 180 nm)
Intel Mobile Pentium III con Speed Step Technology (2000, 180 nm)
3000
2500
2000
1500
1000
500
0
Prestaciones (MIPS)
Aunque no son tan potentes
como los de Intel, su
eficiencia energética es
notablemente superior
2000
40
1500
30
1000
20
500
10
0
Frecuencia (MHz)
3
2,5
2
1,5
1
0,5
0
0
Consumo (W)
800
600
400
200
Paralelismo (MIPS/MHz)
0
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
Eficiencia (MIPS/W)
22
Evolución del proceso de fabricación del ARM926EJ-S
ARM926EJ-S (Diseño optimizado para maximizar las prestaciones)
ARM926EJ-S (Diseño optimizado para minimizar el área)
7
6
5
4
3
2
1
0
180 nm
Área (mm2)
500
600
300
400
200
200
130 nm
90 nm
130 nm
90 nm
0
180 nm
130 nm
90 nm
Prestaciones (MIPS)
600
500
400
300
200
100
0
180 nm
Consumo (mW)
800
400
100
Prestaciones (MIPS/MHz)
1,2
1
0,8
0,6
0,4
0,2
0
180 nm
Frecuencia (MHz)
0
180 nm
2,5
130 nm
90 nm
Eficiencia (MIPS/mW)
2
1,5
1
0,5
130 nm
90 nm
0
180 nm
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
130 nm
90 nm
23
Aplicaciones del ARM9
Nintendo DS (2004)
Consola de videojuegos
HTC TyTN (2006)
Teléfono móvil 3G
Canon EOS 5D Mark II (2008)
Cámara
LG Arena (2009)
Smartphone
Archos 7 (2010)
Tablet
Hero H2000 (2011)
Smartphone chino Dual-sim
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
24
ARM11
Lanzamiento: 2002
Objetivos:
Cámaras digitales, smartphones, e-book readers, media centers, ...
ARM1136J(F)-S (2002)
Arquitectura: ARMv6
Tecnología:
130 nanómetros, 533 Mhz
Características: Pipeline de 8 etapas, MMU, Extensiones SIMD para multimedia,
TCMs, Thumb, Jazelle, Enhanced DSP, Sintetizable, Opción de
VFP
Prestaciones: 1.13 DMIPS / Mhz
Consumo:
0.38 mW / Mhz
ARM1176JZ(F)-S (2004)
Arquitectura:
ARMv6KZ
Tecnología:
130 nanómetros, 550 Mhz
Características: Añade la tecnología de seguridad TrustZone y soporte básico para
Adobe Flash
Prestaciones: 1.25 DMIPS / MHz
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
25
Comparativa entre ARM11 y ARM9
ARM926EJ-S (Diseño optimizado para maximizar las prestaciones)
ARM926EJ-S (Diseño optimizado para minimizar el área)
ARM1176ZF-S (Geometría TSMC 65LP)
Hasta 2,4 veces más potente
ARM1176ZF-S (Geometría TSMC 65GP)
Hasta 5,5 veces más eficiente
ARM1176ZF-S (Geometría TSMC 40G)
4
MHz
mm2
6
2
0
180
130
90
65
40
1200
1000
800
600
400
200
0
180
Frecuencia
130
1500
65
90
nm
200
0
180
40
130
65
40
Prestaciones
15
MIPS/mW
500
0
180
130
90
90
65
40
65
40
nm
1000
MIPS
MIPS/MHz
90
400
nm
Prestaciones
130
Consumo
600
nm
1,3
1,25
1,2
1,15
1,1
1,05
1
180
800
mW
Área
8
65
Eficiencia
10
40
nm
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
5
0
180
130
90
nm
26
Aplicaciones del ARM11
Apple iPhone 3G (2008)
Smartphone
Amazon Kindle 2 (2009)
Lector de e-books
Mobinova Elan (2009)
Netbook
iRobot aPad (2010)
Clon chino del iPad
Nintendo 3DS (2011)
Consola de videojuegos
Nokia X7 (2011)
Smartphone
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
27
Contenidos
Motivación
Origen y evolución de ARM
Familias de procesadores ARM
Clásicos
Cortex-M
Cortex-R
Cortex-A
Modelo de negocio de ARM
Plataformas actuales para dispositivos móviles
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
28
Familias de procesadores de ARM
Cores extremadamente sencillos
con el mínimo consumo posible
para microcontroladores
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
29
ARM Cortex-M
Lanzamiento:
Objetivos:
2004
Lograr más prestaciones a menor precio
Conectividad, reutilización de código y eficiencia energética.
Aplicaciones: Electrodomésticos, automoción, Internet de las cosas, control, …
Características: Pipeline de 3 etapas, ejecución determinista, muy bajo consumo,
código muy denso (Thumb-2), interrupciones con muy baja
latencia
Optimizado para
FPGA
Las prestaciones
dependen de la
FPGA y del
proceso de
síntesis
Aplicaciones 32 bits/DSP
Procesado de señales eficiente
1.25 DMIPS/MHz
Predicción de saltos
MAC, SIMD, FPU, MPU
Aplicaciones de 16/32 bits
Prestaciones y eficiencia energética
1.25 DMIPS/MHz
Predicción de saltos
Aplicaciones de 8/16 bits
MPU
Bajo coste y sencillez
0.9 DMIPS/MHz
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
30
Tecnología
Mejor eficiencia energética
- Funcionamiento a baja frecuencia con
periodos de actividad más cortos
- Soporte HW de los modos de reposo
Mejores prestaciones
- Más prestaciones por Mhz que los MCUs típicos
Thumb-2
- Logra un código hasta 3 veces más denso que
el de los MCUs de 8 bits
- Reduce los requerimientos de memoria RAM del
sistema (sistemas más baratos)
- Aprovecha mejor la memoria FLASH
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
31
Comparativa entre Cortex-M y ARM7TDMI
ARM7TDMI (65 nm)
Cortex-M3 (90 nm, Diseño optimizado para maximizar las prestaciones)
Cortex-M3 (90 nm, Diseño optimizado para minimizar el área)
Cortex-M4 (65 nm, Diseño optimizado para maximizar las prestaciones)
Cortex-M4 (65 nm, Diseño optimizado para minimizar el área)
Realmente, las prestaciones y la eficiencia son mejores
Dhrystone no usa las extensiones SIMD ni las instrucciones MAC del Cortex-M4
0,5
400
0,4
300
0,3
30
25
20
15
10
5
0
200
0,2
0,1
100
0
0
Área (mm2)
Frecuencia (MHz)
1,4
1,2
1
0,8
0,6
0,4
0,2
0
400
40
300
30
200
20
100
10
0
Prestaciones (DMIPS/MHz)
Consumo (mW)
Prestaciones (DMIPS)
0
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
Eficiencia (DMIPS/mW)
32
Aplicaciones de los Cortex-M
Electrodomésticos:
Smart grid:
Bosch Tassimo (2010)
Cafetera. Cortex-M3
Itron Openway Centron
(2009) Smart meter
Cortex-M3
e-health:
Web of things:
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
33
Contenidos
Motivación
Origen y evolución de ARM
Familias de procesadores ARM
Clásicos
Cortex-M
Cortex-R
Cortex-A
Modelo de negocio de ARM
Plataformas actuales para dispositivos móviles
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
34
Familias de procesadores de ARM
Ejecución determinista, altas
prestaciones y bajo consumo para
aplicaciones con restricciones fuertes
de tiempo real
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
35
ARM Cortex-R
Lanzamiento:
Objetivos:
Características:
2006
Altas prestaciones para sistemas empotrados con restricciones
de tiempo real
Superescalar, ejecución determinista, MPU, Thumb-2,
memorias RAM con paridad y ECC
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
36
Comparativa entre Cortex-R4 y los procesadores clásicos de
ARM
ARM926EJ-S (90 nm, Diseño optimizado para maximizar las prestaciones)
ARM926EJ-S (90 nm, Diseño optimizado para minimizar el área)
ARM1176ZF-S (65 nm, Geometría TSMC 65GP)
Cortex-R4 (65 nm, Diseño optimizado para maximizar las prestaciones)
Cortex-R4 (65 nm, Diseño optimizado para minimizar el consumo)
Cortex-R4 (65 nm, Diseño optimizado para minimizar el área)
2,5
1000
250
2
800
200
1,5
600
150
1
400
100
0,5
200
50
0
0
0
Área (mm2)
Frecuencia (MHz)
2
1,5
1
0,5
0
Prestaciones (DMIPS/MHz)
1200
1000
800
600
400
200
0
Consumo (mW)
20
15
10
5
0
Prestaciones (DMIPS)
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
Eficiencia (DMIPS/mW)
37
Comparativa entre los diferentes Cortex-R
Cortex-R4 (65 nm, Diseño optimizado para maximizar las prestaciones)
Cortex-R5 (65 nm, Diseño optimizado para maximizar las prestaciones)
Cortex-R7 (65 nm, Diseño optimizado para maximizar las prestaciones)
Cortex-R7 (28 nm, Diseño optimizado para maximizar las prestaciones)
6
1200
5
1000
4
800
3
600
2
400
1
200
0
450
400
350
300
250
200
150
100
50
0
0
Área (mm2)
Frecuencia (MHz)
5
5000
4
4000
3
3000
2
2000
1
1000
0
Prestaciones (DMIPS/MHz)
0
Prestaciones (DMIPS)
Consumo (mW)
16
14
12
10
8
6
4
2
0
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
Eficiencia (DMIPS/mW)
38
Aplicaciones de los Cortex-R
• Banda ancha móvil
• Almacenamiento
LTE-A, WiMax, HSDPA
• Hogar
Controladores de HDD y
SSD
• Dispositivos médicos
TV Digital, BlueRay. …
• Empresa
Impresoras multi-función,
fotocopiadoras
• Automoción
Control de airbags, ABS,
estabilidad, motor, etc.
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
39
Contenidos
Motivación
Origen y evolución de ARM
Familias de procesadores ARM
Clásicos
Cortex-M
Cortex-R
Cortex-A
Modelo de negocio de ARM
Plataformas actuales para dispositivos móviles
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
40
Familias de procesadores de ARM
Altas prestaciones para dispositivos
móviles con sistema operativo y
conexión a Internet
Opción de coma flotante (VPN) y
extensiones multimedia (NEON)
Versiones multi-core de hasta 4 cores
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
41
ARM Cortex-A
Aplicaciones: Dispositivos con un SO completo y aplicaciones de usuario
Cortex-A5 (2009)
Aplicaciones: Pensado para reemplazar a los ARM9 y ARM11. Mejores prestaciones y
todas las características de la arquitectura ARMv7A con un consumo mínimo
Prestaciones: 1.57 DMIPS / Mhz por core (hasta 4 cores, hasta 1GHz)
Consumo:
0.08 – 0.12 mW / Mhz (según se optimice para consumo o prestaciones)
Cortex-A8 (2006)
Aplicaciones: Prestaciones, bajo consumo y conectividad (Smartphones, tablets, netbooks)
Prestaciones: 2 DMIPS / Mhz (superescalar, no hay versión multi-core, hasta 1GHz)
Consumo:
0.45 mW / MHz
Cortex-A9 (2008)
Aplicaciones: Altas prestaciones con un consumo muy reducido
Prestaciones: 2.5 DMIPS / Mhz (superescalar, hasta 4 cores, hasta 2GHz)
Consumo:
0.48 – 0.95 mW / Mhz (según se optimice para consumo o prestaciones)
Cortex-A15 (2013)
Aplicaciones: Dispositivos móviles de muy altas prestaciones, servidores de bajo consumo
Prestaciones: 2.5 DMIPS / Mhz (superescalar, virtualización, 4 cores por cluster, 2 clusters
por chip, hasta 2.5GHz)
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
42
Comparativa entre Cortex-A5 y los procesadores clásicos de
ARM
ARM926EJ-S (90 nm, Diseño optimizado para maximizar las prestaciones)
ARM1176ZF-S (65 nm, Geometría TSMC 65GP)
Cortex-A5 (40 nm, Geometría TSMC 40G, 1 core)
Notable mejoría de las prestaciones y disminución del consumo
2,5
1200
250
2
1000
200
800
1,5
150
600
1
100
400
0,5
50
200
0
0
0
Frecuencia (MHz)
Área (mm2)
Consumo (mW)
2
2000
25
1,5
1500
20
1
1000
0,5
500
0
15
10
5
0
Prestaciones (DMIPS/MHz)
0
Prestaciones (DMIPS)
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
Eficiencia (DMIPS/mW)
43
Comparativa entre los Cortex-A e Intel Atom
ARM Cortex-A5 (40 nm, optimizado para mejorar las prestaciones, 1 core)
ARM Cortex-A8 (65 nm, optimizado para mejorar las prestaciones, 1 core)
Intel Atom 330 (45 nm, dual-core)
ARM Cortex-A9 (40 nm, optimizado para mejorar las prestaciones, dual-core)
El Cortex-A9 es 1,5
veces más potente
que el Intel Atom 330
consumiendo 4 veces
menos
2500
2000
1500
1000
500
0
Frecuencia (MHz)
6
5
4
3
2
1
0
Prestaciones (DMIPS/MHz)
10
8
6
4
2
0
Consumo (W)
25
20
15
10
5
0
12000
10000
8000
6000
4000
2000
0
Prestaciones (DMIPS)
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
Eficiencia (DMIPS/mW)
44
Aplicaciones de los ARM Cortex-A
Apple iPhone 4 (2010)
Smartphone
Apple A4 (Cortex-A8)
Barnes & Noble Nookcolor (2010)
e-reader
Texas Instruments OMAP3621 (Cortex-A8)
Apple iPad 2 (2011)
Tablet
Apple A5 (Dual Cortex-A9)
Samsung Galaxy SII (2011)
Smartphone
S5PV310 Exynos 4210 (Dual Cortex-A9)
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
45
Contenidos
Motivación
Origen y evolución de ARM
Familias de procesadores ARM
Modelo de negocio de ARM
Plataformas actuales para dispositivos móviles
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
46
Sistemas-en-un-Chip (SoC)
Sistema basado en PCB
System on Chip
Formado a partir de microchips que
se ensamblan e interconectan
mediante un circuito impreso en
una placa
Formado a partir de componentes
(cores IP) interconectados en el
diseño del propio chip
Los cores IP pueden ser propios o
licenciados de otras compañías
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
47
Componentes típicos de in SoC
Procesador:
Hard cores: ARM, MIPS, PowerPC, …
Soft cores: Xilinx Microblaze, Altera Nios II, ...
Bus de interconexión:
Propietarios: ARM AMBA, IBM CoreConnect, Altera Avalon, ...
Abiertos: OpenCores Wishbone
Resto de componentes (dependientes de la aplicación):
En los dispositivos móviles multimedia:
Procesador de Gráficos 3D: Para los juegos, interfaz de usuario, etc.
Procesador de imagen: para gestionar las imágenes capturadas por la
cámara
Procesador de Vídeo: Soporte HW para los códecs de compresión y
descompresión habituales
Controladores para los dispositivos habituales: HDMI, touch-screen,
tarjetas de memoria, USB, Wi-Fi, Bluetooth, GPS, etc.
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
48
Licencias de ARM
ARM no fabrica ni vende procesadores, sólo los diseña y vende los
derechos para su fabricación
Otras empresas licencian el core para que forme parte de sus chips
Tipos de licencias:
Licencia de implementación:
Lo que realmente se compra es el core IP el procesador (hard o soft).
Ejemplos: TI, NXP, Freescale, Samsung, Apple, LG, Broadcom, …
Licencia de la Arquitectura:
Se compran los derechos para fabricar un chip que tenga un ISA de
ARM
Ejemplos: Qualcomm (Snapdragon), Marvell (Armada), nVidia (Tegra 2)
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
49
Licencias de ARM
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
50
Contenidos
Motivación
Origen y evolución de ARM
Familias de procesadores ARM
Modelo de negocio de ARM
Plataformas actuales para dispositivos móviles
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
51
Ejemplo: nVidia Tegra2
Nvidia Tegra 250 T20 (40 nm, 2010)
8 procesadores independientes
260 millones de transistores
49 mm2, 500 mW
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
52
Componentes del Tegra 250 T20
Procesadores: ARM Cortex-A9 (sin NEON) dual core a 1 Ghz (aplicaciones)
ARM7 (ahorro de energía en la reproducción de audio y vídeo))
Procesador de Gráficos 3D: Ultra-Low Power nVidia GeForce GPU a 333MHz
8 núcleos, totalmente programable (OpenGL ES 2.0, OpenVG 1.1, EGL 1.4)
Procesador de Imagen:
Cámara primaria (12MP), cámara secundaria (5MP), zoom digital hasta 16X, estabilización
de imagen, compresión/descompresión JPEG, autofocus, filtrado de imagen
Procesador decodificador de Vídeo (HD): H.264, VC-1 AP, MPEG2, MPEG-4, DivX 4/5,
XviD HT, H.263, Theora, VP8, WMV, Sorenson Spark, Real Video, VP6
Procesador codificador de Vídeo (HD): H.264, MPEG4, H.263, VP8
Procesador de Audio:
Decodificación: AAC-LC, AAC+, EAAC+, MP3, MP3 VBR, WAV/PCM, AMR-NB, AMR-WB,
BSAC, MPEG-2 Audio, Vorbis, WMA 9, WMA Lossless, WMA Pro
Codificación: AAC LC, AAC+, EAAC+, PCM/WAV, AMR-NB, AMR-WB
Controlador de pantalla dual:
HDMI 1.3 (1920x1080), LCD (1920x1080), CRT (1600x1200)
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
53
Aplicaciones del Tegra2
Asus/Pegatron Neo (2010)
Smartbook
Full HD. Autonomía de 24h con la Wi-Fi activa
LG Optimus 2X (2011)
Smartphone
Motorola Xoom (2011)
Tablet
Motorola Atrix 4G (2011)
Smartphone
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
54
Ejemplo: Texas Instruments OMAP4
TI Omap4430 (45 nm, 2011)
9 procesadores independientes
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
55
Componentes del OMAP4430
Procesadores:
1 ARM Cortex-A9 dual core a 1 Ghz (para las aplicaciones)
2 ARM Cortex-M3 (para el RTOS, y apoyo al ISP)
Subsistema de Gráficos 2D/3D: Imagination Tech. PowerVR SGX544 a 304 MHz
Totalmente programable (MS DirectX 9.0, OpenGL 2.1, OpenGL ES 1.1 & 2.0,
OpenVG 1.1 y OpenCL 1.1).
Codificación y decodificación de H.264, H.263, MPEG-4 (SP), WMV9 y JPEG
Subsistema Imágenes:
Captura de imágenes (16MP) y vídeo (Full HD), zoom digital hasta 16X, estabilización
de imagen, compresión/descompresión JPEG, autofocus, filtrado de imagen, ...
Subsistema de codificación y decodificación de Vídeo (HD): IVA HD
MPEG-1/-2/-4, Divx, Sorenson Spark (decod.), H.263, H.264, Video estereoscópico, JPEG
VC-1 SP/MP/AP, AVS-1.0, RealVideo 8/9/10 (decod.), On2 VP6.2/VP7 (decod.)
Contiene otros dos ARM968E-S (apoyo a la secuenciación de vídeo y control de DMA)
Procesador codificador de Vídeo (HD): H.264, MPEG4, H.263, VP8
Susbsistema DSP: TI C64x
Apoyo al procesado de audio y vídeo y soporte para futuros codecs
Subsistema de pantalla
Hasta 2 pantallas LCD y 1 HDMI
Subsistema de detección de caras
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
56
Aplicaciones del OMAP4
LG Optimus 3D (2011)
Smartphone
Archos 101 G9 (2011)
Tablet
Blackberry Playbook (2011)
Tablet 4G
Motorola Droid 3 (2011)
Smartphone
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
57
Ejemplo: Qualcomm Snapdragon
Procesador: Qualcomm Scorpion dual a 1.2 Ghz
GPU: Qualcomm Adreno 220
Cámara principal (13MP),cámara secundaria (1MP)
Snapdragon MSM8660 (45 nm, 2010)
850 mW, controlador 3G integrado
Adobe Flash, OpenGL ES 2.0, OpenGL ES 1.1,
OpenVG 1.1, EGL 1.3, Direct3D Mobile, SVGT 1.2,
Direct Draw y GDI
Codificación y decodificación de vídeo HD
Reproducción de vídeo 3D por HDMI
DSP (600 MHz): Procesamiento de Audio (Dolby 5.1)
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
58
Aplicaciones del Snapdragon
Sony Ericsson Xperia Play (2011)
Smartphone
HTC Flyer (2011)
Tablet
HP TouchPad (2011)
Tablet
HTC Thunderbolt (2011)
Smartphone 4G LTE
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
59
Ejemplo: Apple A5
Apple iPad 2 (2011)
Tablet
ARM Cortex-A9
Apple A5 (45 nm,122 mm2, 2011)
ARM Cortex-A9 dual core 1GHz
GPU: Imagination Technologies PowerVR SGX 543MP2 GPU (2 cores)
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
60
Samsung Exynos 4210 (Orion)
Samsung Galaxy SII (2011)
Smartphone
Samsung Exynos 4210 (45 nm, 2011)
ARM Cortex-A9 dual core 1.2GHz
GPU: ARM Mali 400MP (4 cores, Full HD)
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
61
Comparativa (PowerVR, GeForce ULP Adreno 220)
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
62
Para saber más
• Historia de los procesadores ARM:
– Ken Polson. Chronology of Microprocessors. http://processortimeline.info/
– C. Atack y A. van Someren. The history of the ARM CPU.
http://www.ot1.com/arm/armchap1.html
– Markus Levy. The History of The ARM Architecture: From Inception to IPO. Information
Quarterly, 4(1). From Acorns to Mighty Oaks. Commemorating the 20th Anniversary of the ARM
Architecture, 2005.
http://www.reds.ch/share/cours/ReCo/documents/TheHistoryOfTheArmArchitecture.pdf
– Nota de prensa. ARM announces new higher performance, low power ARM9 processor architecture.
http://bwrc.eecs.berkeley.edu/CIC/announce/1997/arm9.annc.html
– Nota de prensa. ARM11 Readied for Action. http://www.theregister.co.uk/2002/10/15/
– Sir Robin Saxby. Semiconductors + Software Enable Exciting Lifestyles.
http://www.docstoc.com/docs/78265677/
– ARM. Annual Reports and Accounts. http://www.arm.com/annualreport10/
• Familias y arquitecturas de los procesadores ARM:
– ARM. ARM Processors. http://www.arm.com/products/processors/
– Wikipedia. ARM Architecture. http://en.wikipedia.org/wiki/ARM
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
63
Para saber más
• ARM7:
– ARM. ARM7TDMI (Rev 3) Core Processor. Product Overview.
http://infocenter.arm.com/help/topic/com.arm.doc.dvi0027b/
– ARM. ARM7 Thumb Family.
http://saluc.engr.uconn.edu/refs/processors/arm/arm7_family.pdf
– ARM. ARM7TDMI Datashet.
http://www.eecs.umich.edu/~panalyzer/pdfs/ARM_doc.pdf
– Simon Segars. ARM7TDMI Power Consumption. IEEE Micro, 15(5):12-19, 1997.
• ARM9:
– ARM. ARM946E-S (Rev 1) Core Processor. Product Overview.
http://infocenter.arm.com/help/topic/com.arm.doc.dvi0027b/
– ARM. ARM9E-S Thumb Family.
http://saluc.engr.uconn.edu/refs/processors/arm/ARM9E-S.pdf
– ARM. ARM926EJ-S Featuring Jazelle Technology.
http://www.jp.arm.com/naviweb/pdf/ARM926ejs_en.pdf
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
64
Para saber más
• ARM11:
– ARM. ARM11 Processor Family. http://www.arm.com/products/processors/classic/arm11/
– ARM. ARM1136JF-S and ARM1136J-S Technical Reference Manual.
http://infocenter.arm.com/help/topic/com.arm.doc.ddi0211k/
– ARM. ARM1176JZ-S Technical Reference Manual.
http://infocenter.arm.com/help/topic/com.arm.doc.ddi0333h/
• ARM Cortex:
– ARM. Cortex-M series processors.
http://www.arm.com/products/processors/cortex-m/
http://infocenter.arm.com/help/topic/com.arm.doc.set.cortexm/
– ARM. Cortex-R series processors.
http://www.arm.com/products/processors/cortex-r/
http://infocenter.arm.com/help/topic/com.arm.doc.set.cortexr/
– ARM. Cortex-A series processors.
http://www.arm.com/products/processors/cortex-a/
http://infocenter.arm.com/help/topic/com.arm.doc.set.cortexa/
http://www.embedinfo.com/en/ARM_Cortex-list.asp?id=15
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
65
• SoC:
Para saber más
– Special Issue de IEEE Micro en Systems on a Chip: The Next Electronic Design Frontier.
IEEE Micro, 22(5), 2002.
– Wikipedia. System-on-a-Chip. http://en.wikipedia.org/wiki/System_on_chip
• ARM AMBA:
– ARM. AMBA Open Specifications.
http://www.arm.com/products/system-ip/amba/amba-open-specifications.php
– Wikipedia. Advanced Microcontroller Bus Architecture.
http://en.wikipedia.org/wiki/Advanced_Microcontroller_Bus_Architecture
• nVidia Tegra2:
– nVidia. Tegra 2. http://www.nvidia.com/object/tegra-2.html
– Wikipedia. nVidia Tegra. http://en.wikipedia.org/wiki/Nvidia_Tegra
– Anand Lal Shimpi. NVIDIA Introduces dual Cortex A9 based Tegra 2.
http://www.anandtech.com/show/2911/
– Cyril Kowaliski. Tegra 2 debuts, runs Unreal Engine 3. http://techreport.com/discussions.x/18254
– Brian Klug & Anand Lal Shimpi. LG Optimus 2X & NVIDIA Tegra 2 Review: The First Dual-Core
Smartphone. http://www.anandtech.com/show/4144/
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
66
Para saber más
• Texas Instruments OMAP4:
– Wikipedia. Texas Instruments OMAP.
http://en.wikipedia.org/wiki/Texas_Instruments_OMAP
– Texas Insruments. OMAP4430 Multimedia Device Silicon Revision 2.x. Technical
Reference Manual, 2011.
• Apple A5:
– Paul Boldt and Don Scansen. A5: All Apple, part mystery.
http://www.eetimes.com/electronics-news/4215094
– Anand Lal Shimpi, Brian Klug & Vivek Gowri. Apple iPad 2 Preview.
http://www.anandtech.com/show/4215/
– Anand Lal Shimpi. Apple iPad 2 GPU Performance Explored: PowerVR SGX543MP2
Benchmarked. http://www.anandtech.com/show/4216/
• PowerVR:
– Imagination Technologies. SGX Series5 Graphics IP Core Family.
http://www.imgtec.com/powervr/sgx_series5.asp
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
67
Para saber más
• Qualcomm Snapdragon:
– Qualcomm. Snapdragon. http://www.qualcomm.com/snapdragon
– Qualcomm. Snapdragon Mobile Development Platform.
http://developer.qualcomm.com/dev/development-devices/snapdragon-mdp
– Wikipedia. Snapdragon (System on Chip).
http://en.wikipedia.org/wiki/Snapdragon_(System_on_Chip)
– bSquare. Snapdragon Mobile Development Platform MSM8860.
http://developer.qualcomm.com/sites/default/files/snapdragon-mdp-8660.pdf
– Linley Gwennap. Two-Headed Snapdragon Takes Flight. Qualcomm Samples DualCPU Mobile Processor at 1.2GHzA. Microprocessor Report, Julio 2010.
http://www.qualcomm.com/documents/linley-report-dual-core-snapdragon
– Brian Klug. Dual Core Snapdragon GPU Performance Explored - 1.5 GHz MSM8660
and Adreno 220 Benchmarks. http://www.anandtech.com/show/4243/
– Wikipedia. Imageon. http://en.wikipedia.org/wiki/Imageon
– Qualcomm. Adreno Graphics Processors.
http://developer.qualcomm.com/dev/gpu/processors
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
68
Para saber más
• Samsung Exynos 4210:
– Samsung. Samsung Orion.
http://www.samsung.com/global/business/semiconductor/support/brochures/
downloads/systemlsi/Orion.pdf
– Anand Lal Shimpi. Going Out of Order: Samsung Announces Orion Cortex A9 SoC.
http://www.anandtech.com/show/3901/
– Samsung. Exynos 4210.
http://www.samsung.com/global/business/semiconductor/productInfo.do?
fmly_id=844&partnum=Exynos%204210
– Anand Lal Shimpi & Brian Klug. Samsung's Galaxy S II Preliminary Performance: Mali400MP Benchmarked. http://www.anandtech.com/show/4177/
• ARM Mali:
– ARM. Mali-400 MP. http://www.arm.com/products/multimedia/mali-graphicshardware/mali-400-mp.php
Tendencias en Ingeniería de Computadores - Procesadores para Dispositivos Móviles
69