Está en la página 1de 31

1

Arquitecturas Arquitecturas y procesadores ARM


Las arquitecturas ARM que forman los procesadores, tienen una gran importancia dentro del mundo de la computacin debido a sus avances en cuanto a consumo y rendimiento. Debido a las licencias que concede sobre sus arquitecturas, ha crecido rpidamente casi copando el mercado de los microcomputadores y electrnica de consumo

1/31

Arquitecturas y procesadores ARM

1.1 Historia
Acorn Computer fue el fabricante de los equipos Micro BBC [2], que utilizaban un procesador MOS 6502. El nuevo proyecto de esta empresa comenz en Octubre de 1983 donde se buscaba un procesador con una arquitectura similar a la del MOS 6502, pero ms avanzada, para hacer competencia al IBM PC lanzado en 1981. La eleccin de este procesador es porque la empresa Acorn ya contaba con una extensa lnea de ordenadores personales basados en este y as se conseguira que los desarrolladores de software se sintieran cmodos en su trabajo. El primer procesador ARM se fabric en abril de 1985, se bautiz como ARM1, aunque slo fue una prueba y no se us comercialmente. Para el mercado se cre el ARM2 en 1986. Su primer uso fue para los BBC Micro1. Este ARM2 destacaba por sus 32 bits de bus de datos, bus de direcciones de 26 bits y 16 registros de 32 bits. Los 26 bits del bus de direcciones limitaba la zona de memoria de programas a 64 MB (226). Los 6 bits restantes hasta 32 fueron utilizados como flags de estados. Probablemente el ARM2 fue el procesador de 32 bits ms simple y til del mundo, ya que slo contaba con 30.000 transistores (el Motorola 68000, tambin de los aos 80, deba su nombre al nmero de transistores). Esta simplicidad en gran medida es debida a no tener microcdigo ni memoria cach. Su sucesor, el ARM3, contaba con 4 KB de memoria cach, que mejoraba bastante su rendimiento.

Serie de microcomputadores y perifricos fabricados por Acorn Antonio Snchez Perea

Computers

2/31

Arquitecturas y procesadores ARM

La empresa ARM comenz a trabajar con Apple y a principios de 1992 lanzaron el ARM6. Apple lo utiliz como base para su PDA Apple Newton'. La empresa DEC licenci esta arquitectura y produjo el StrongARM. Este ltimo procesador funcionaba a una frecuencia de 233Mhz y consuma slo 1 vatio. Es considerado el primer procesador RISC fabricado comercialmente. [1]

1.2 Licencias
Acorn hizo sus arquitecturas licenciables, esto es, ellos venden el ncleo de la arquitectura y con unos pocos cambios en el diseo se poda construir microcontroladores o CPUs completas basadas en este. El gran xito de esto radica en que con estos pequeos cambios se pueden realizar en las ya existentes fbricas de semiconductores, con lo que la nueva inversin econmica es mnima. La implementacin que ms xito ha tenido ha sido la del ARM7TDMI con cientos de millones de ventas.[1]

1.3 Ncleos ARM


A continuacin vamos a mostrar una tabla con los principales ncleos licenciados por esta marca.

Antonio Snchez Perea

3/31

Arquitecturas y procesadores ARM

Familia Arquitectura Caractersticas ARM1 ARM2 ARMv1 ARMv2 ARMv2a ARM3 ARM7 ARMv2a ARMv3 Primer ncleo fabricado. Agrega la instruccin MUL (Multiplicar) Integra grficos y entrada/salida Primero en integrar memoria cach Elimina el bus del coprocesador matemtico Pipeline de 3 etapas y cach

ARM7T ARMv4T DMI StrongA ARMv4 RM Xscale ARMv5TE

Pipeline de 5 etapas

Pipeline de 7 etapas, instrucciones multimedia MMX y MMX2

ARM11 ARMv6/T2/Z Pipeline de 8 etapas y SIMD K/K Cortex- ARMv7-A A Cortex- ARMv7-R R Cortex- ARMv6-M M ARMv7-M ARMv7-ME 1 a 4 ncleos, controladores de interrupciones genrico, superescalar de 13 etapas Pipeline de 8 u 11 etapas (depende del ncleo) con dual-core Perfil de microcontrolador (procesador +

memoria), hardware para multiplicacin Hardware para divisin y multiplicacin

Antonio Snchez Perea

4/31

Arquitecturas y procesadores ARM

En los siguientes puntos vamos a pasar a estudiar las familias de procesadores ms recientes y usadas, por ello, vamos a empezar por la ARM7 y ARM7TDMI (una mejora de la anterior). [1]

1.4 Tecnologas
Antes de empezar a hablar de procesadores y sus usos, vamos a definir algunas tecnologas propias que usan estos.

JTAG
JTAG (Joint Test Action Group) es un conjunto de tests de puertos de acceso y escner de lmites de la arquitectura. Actualmente est estandarizado como IEEE 1149.1 y se usa para casi todos los procesadores y circuitos integrados con pines suficientes para realizar el test.

Thumb/Thumb2
La tecnologa Thumb es una extensin de la arquitectura ARM de 32 bits. El conjunto de instrucciones Thumb cuenta con un subconjunto de las funciones ms utilizadas del ARM de 32 bits que se han compromido en cdigos de operacin de 16 bits. A la hora de la ejecucin, estas instrucciones de 16 bits son descomprimidas transparentemente a instrucciones de 32 bits en tiempo real sin prdida de rendimiento. A la hora de desarrollar se pueden utilizar tanto instrucciones de 32 bits como de 16 bits, siendo transparente para el programador. Antonio Snchez Perea

5/31

Arquitecturas y procesadores ARM

Para hacer posible esta tecnologa se utiliza un descompresor de instrucciones Thumb. La tecnologa Thumb2 (sucedora de Thumb) optimiza el uso de memoria (hasta un 31% menos), lo cul tambin reduce el precio del sistema. Por otro lado aumenta el rendimiento hasta un 38%, disminuyendo el consumo de energa (batera en dispositivos porttiles). Se ha de nombrar que se trata de una tecnologa retrocompatible, es decir, todos los dispositivos dotados de Thumb2 son compatibles con Thumb.[4] [5]

Jazzele
Es una tecnologa de ARM que es capaz de ejecutar cdigo bytecode (cdigo intermedio de Java) sobre los ncleos de procesadores que soporten Jazzele. Es multitarea y est optimizada para ser ejecutado sobre los mismos sin ningn tipo de traduccin, es decir, directamente. [6]

TrustZone
Se trata de una tecnologa que da soporte a la seguridad, tanto en pagos, gestin de derechos digitales (DRM), servicios Web y NFC.[17]

Antonio Snchez Perea

6/31

Arquitecturas y procesadores ARM

1.5 ARM7/ARM7TDMI
Tras la familia ARM6, que como caractersticas especiales tena sus 28 MIPS a 33Mhz, unidad de coma flotante, y bus para el coprocesador externo, en ARM7 se introduce la tecnologa Thumb, que con cdigos de instruccin de 16 bits poda realizar las funciones de un cdigo de 32 bits. Tambin incluyen depurado JTAG. Como todos sus predecesores, se basan en una arquitectura Von Neumann, que recordemos consista en utilizar el mismo dispositivo para memoria de instrucciones y de datos.

Figura 1.1:

Esquema de Arquitectura Von Neumann.

Se introdujo en el mercado en 1994 y fue la arquitectura que hizo de puerta de entrada al resto de procesadores ARM.

Antonio Snchez Perea

7/31

Arquitecturas y procesadores ARM Normalmente se habla de l a la vez que su sucesor, el

ARM7TDMI ya que este ltimo le ha dado toda la importancia que tiene. ARM7 y ARM7TDMI se basan en arquitecturas distintas, ARMv3 y ARMv4T, respectivamente, por eso no pueden englobarse dentro de la misma familia. Los procesadores de la familia ARM7 cuenta con una velocidad de 40Mhz y una memoria cach (tanto para instrucciones como para datos) de 8KB. Los de la familia ARM7TDMI va desde los 16.8Mhz hasta los 60Mhz, tambin con una memoria cach de 8KB. [1] [7]

Antonio Snchez Perea

8/31

Arquitecturas y procesadores ARM

Figura 1.2: ARM7 [8]

Diagrama de bloques de la arquitectura

Antonio Snchez Perea

9/31

Arquitecturas y procesadores ARM La figura 1.2 muestra las distintas partes de la arquitectura ARM7

y cmo se conectan entre ellas: Instruction Instruction Decoder & Control Logic Logic tiene la funcionalidad de decodificar las instrucciones y mandar seales de control a otras partes del procesador para la ejecucin de las instrucciones. Address Address Register Register es necesario para mantener las 32 direcciones del bus de direcciones (A[31:0]). Address Address Incrementer Incrementer incrementa la direccin en 4 bytes y la coloca para usarla en el bus de direcciones. Register Register Bank Bank contiene los 31 registros de 32 bits y 6 registros de estado. Barrel Barrel Shifter Shifter se utiliza para cambiar entre buses de datos y direcciones. ALU ALU ALU unidad aritmtico lgica de 32 bits. Write Write Data Register Register desde aqu salen los datos que se escriben en memoria. Read Read Data Register, Register al contrario que WDR sirve para leer datos e instrucciones de la memoria. El dato ledo se coloca aqu para su uso. [8] ARM7TDMI es un procesador de 32 bits RISC (conjunto reducido de instrucciones). Las siglas TDMI provienen de las siguientes tecnologas que contiene: T: Thumb, D: JTAG para depuracin, M: Instrucciones de multiplicacin e I de ICEBreak. En cuanto a sus especificaciones podemos decir que se dise pensando en su posible uso en dispositivos mviles y aparatos de baja potencia. Es capaz de procesar hasta 130 MIPS y como ya se ha Antonio Snchez Perea

10/31

Arquitecturas y procesadores ARM

comentado, la tecnologa Thumb le proporciona la capacidad de trabajar tanto con instrucciones de 32 como de 16 bits. [20]

1.5.1 Aplicaciones

Estas familias de procesadores han tenido usos variados, aqu vamos a mostrar los ms llamativos: Router D-Link modelo 604+.

iPod. Juice Box: Videoconsola porttil fabricada por Mattel que contiene
un procesador Samsung con arquitectura ARM7TDMI a 66MHz. La mayora de telfonos mviles Nokia.

Nintendo DS (como coprocesador) y la Game Boy Advance.


Los robots de limpieza Roomba serie 500, fabricados por iRobot. En dispositivos Perfect Pass: sistema de control de velocidad de precisin usado en competiciones de esqu acutico y barcos. Sistema de control de automviles. [20]

1.6 StrongARM
Esta familia de procesadores fueron los sucesores del ARM7EJ y el ARM8, posteriores al ARM7TDMI. El StrongARM utiliza la arquitectura ARMv4 licenciada por DEC (Digital Equipment Corporation), el cual posteriormente fue vendido a Intel.

Antonio Snchez Perea

11/31

Arquitecturas y procesadores ARM Este procesador surgi de un proyecto entre DEC y ARM, para

crear el procesador ARM ms rpido hasta entonces. Inicialmente, el objetivo de uso de este nuevo procesador eran los PDA y los Set-top Box (Dispositivos para la recepcin y decodificacin de televisin digital o analgica). [9]

Figura 1.3:

Diagrama de bloques de los procesadores

StrongARM [18] En la figura 1.3 se pueden apreciar los distintas partes del procesador, del cul vamos a destacar las IMMU y DMMU por ser las ms novedosas en esta versin. La IMMU y la DMMU (Instruction-Data Memory Management Unit) son las unidades de gestin de memoria de instrucciones y datos respectivamente. Cada unidad contiene 32 entradas que pueden asociar pginas de 4KB, 64KB o 1 MB.[18]

Antonio Snchez Perea

12/31

Arquitecturas y procesadores ARM De esa familia de procesadores hubo varios modelos con

caractersticas distintas que se muestran a continuacin:

1.6.1 SASA-110

De este modelo de procesador se fabricaron dos versiones. La primera se empez a comercializar en febrero de 1996 y contaba con una velocidades de 100, 160 y 200Mhz. Una segunda versin se anunci en septiembre de ese mismo ao (1996) y trabaja a unas frecuencias de 166 y 233MHz. Ambas contenan una memoria cach de 16KB. Internamente funciona con un pipeline de 5 etapas que ejecuta las instrucciones de manera ordenada. Contiene unos 2.5 millones de transistores y externamente utiliza un encapsulado cuadrado de 20mm de lado. [9]

1.6.2 SASA-1100

Este nuevo procesador fue un derivado de su antecesor, el SA110. Fue anunciado por el licenciatario DEC en 1997 y su principal objetivo de uso eran las PDA. Para ello se adapt la memoria cach y se redujo de 16 a 8KB. Se le aadieron controladores integrados para memoria, PCMCIA y pantalla LCD a color. Intel fabric a mediados de 1998 un integrado llamado SA-1101 que proporcionaba perifricos adicionales y puertos de Antonio Snchez Perea

13/31

Arquitecturas y procesadores ARM

E/S tales como salida de vdeo, PS/2, un controlador USB y uno PCMCIA que sustituye al del SA-1100. Posteriormente Intel compra el diseo del SA-1100 y con l la planta de produccin de DEC en Massachusetts. Al igual que su predecesor tambin tena unos 2.5 millones de transistores y un encapsulado cuadrado.[9]

1.6.3 SASA-1110

Este procesador tambin deriva del SA-110 y es desarrollado ntegramente por Intel. Dispona de dos versiones, una a 133MHz y otra a 206Mhz. Se diferencia del SA-1100 por el soporte para SDRAM a 66MHz y 103MHz para cada una de las frecuencias de procesador respectivamente. Fue utilizado en PDAs, como el iPAQ o el Jornada, de HP, el Sharp SL serie 5000 y el Simputer, una PDA basada en Linux.[9]

Antonio Snchez Perea

14/31

Arquitecturas y procesadores ARM

1.6.4 SASA-1500

Tambin fue un derivado del SA-110, desarrollado pensando en decodificadores y soportaba unas frecuencias de 200 a 300MHz. DEC slo produjo algunas muestras e Intel nunca lo lleg a comercializar.[9]

1.7 ARM9TDMI
Esta familia de procesadores, al igual que la mayora de sus predecesores, utiliza una arquitectura RISC de 32 bits. Es importante comentarla porque ARM dio un salto en estas arquitecturas, de procesadores basados en la arquitectura de Von Neumann a la arquitectura Harvard, que recordemos que separaba memoria para datos y para instrucciones (tambin las memorias cach), aunque la mayora adoptaron un enfoque hbrido, combinando los dos buses (para datos e instrucciones) y dos cachs con una memoria compartida.[3] Alguna de sus mltiples aplicaciones son: Cmaras digitales, como la Canon EOS 5D Mark II. Calculadora HP 50g a 90MHz Sistema Blue&Me de Fiat, usado para conectar sistemas del usuario con el vehculo (mvil, msica, ). El circuito encargado de la conectividad WiFi de la PlayStation Portable (PSP). SmartPhones: HTC Wizard, LG Cookie, Nokia N-Gage, Sony Ericsson series K, M y W. Antonio Snchez Perea

15/31

Arquitecturas y procesadores ARM

1.8 Xscale
Tras los procesadores ARM9TDMI surgieron el ARM9E y ARM10E que usaban tambin la arquitectura ARMv5, pero la serie fuerte fueron los procesadores XScale licenciados por Intel y Marvell. Se basa en una arquitectura ARMv5TE y lo forman varias familias que comentaremos ms abajo. Esta arquitectura ejecuta instrucciones en 7 etapas y para la ejecucin de instrucciones de memoria, 8 etapas. No contiene instrucciones de punto flotante. Usa 2 memorias cach, una para instrucciones y otra para datos, ambas de 32KB, aunque las ltimas versiones de la arquitectura ya incorporan cach de segundo nivel de 512KB. Se considera el sucesor del StrongARM, del cual hemos hablado anteriormente. Todas las generaciones de procesadores con Xscale son de 32 bits y usan tecnologas de 0.18m y de 0.13m. Entre sus aplicaciones se pueden nombrar productos de BlackBerry, Pocket PC de Dell (la gama Axim), la mayora de productos Zire, Treo y Tungsten de Palm, el Motorola A780, la PDA Acer n50, el Compaq iPaq 3900. Tambin se utiliz en ordenadores personales de escritorio (el Iyonix PC) usando el sistema operativo RISC OS. Tambin se usa en dispositivos porttiles como reproductores de vdeo y multimedia, lectores de ebooks (Kindle de Amazon) y en sistemas empotrados industriales. [10] A continuacin diremos caractersticas de las distintas

generaciones de esta familia. Antonio Snchez Perea

16/31

Arquitecturas y procesadores ARM

PXA
Esta serie de procesadores tuvo diversos usos, aunque

especialmente fue para mviles y tambin para PDAs, ya que eran capaces de codificar vdeo mediante hardware. Las frecuencias de trabajo son muy variadas, desde 133MHz a 1.25GHz, pasando por 200, 300, 400 y 624MHz entre otras. Aparte del diseo, que ya est centrado en la necesidad de ahorrar energa, incorpora mecanismos para reducir el consumo cuando no se est utilizando el microprocesador. Algunos modelos de la serie PXA27 tienen memoria flash y RAM incluida (hasta 64MB) En cuanto los procesos de fabricacin, reducen la distancia de los transistores a 130nm, 65nm y hasta 45nm, dependiendo del modelo. Uno de los ltimos modelos, el PXA940, aunque se sabe muy poco de l, es usado para la BlackBerry Torch 9800 y est construido con una tecnologa de 45nm. Como ltima curiosidad, Intel vendi la familia PXA a Marvell en Junio de 2006.[10]

Antonio Snchez Perea

17/31

Arquitecturas y procesadores ARM

IXC
Esta serie slo consta de un procesador, el IXC1100 que trabaja a unas frecuencias de 266, 400 y 533MHz. Tiene una cach de datos de 32KB y otra mini-cach de nivel ms alto de 2KB. Est diseado para un bajo consumo, llegando a 2.4W en su modo de funcionamiento a 533MHz. Est encapsulado en un integrado cuadrado de 35mm de lado cuyos pines se conectan por la parte inferior (PBGA).[10]

IOP
Esta lnea de microprocesadores est diseada para permitir a los ordenadores y dispositivos de almacenamiento transferir datos e incrementar las prestaciones no teniendo que utilizar la CPU para esta tarea. Vendra a ser como un procesador DMA pero para memoria secundaria. Las frecuencias de trabajo de estos procesadores van desde los 100MHz a los 1.2GHz. Una de sus aplicaciones es en los sistemas de entrada/salida de almacenamiento de datos en algunos servidores basados en Intel Xeon. [10]

CE
Esta serie de procesadores fue anunciada por Intel en 2007 para el mercado de la electrnica de consumo (Consumer Electronics). Dentro de ste podemos destacar (porque es el nico del que se ha podido encontrar algo de informacin) el CE 2110, que est diseado para, entre otros, para decodificadores y grabadores de televisin y vdeo.

Antonio Snchez Perea

18/31

Arquitecturas y procesadores ARM Trabaja a una frecuencia de 1GHz, soporta hasta 512MB de

memoria DDR2, tiene un coprocesador grfico integrado para 2D y 3D, aceleracin hardware para cifrar y descrifrar (seguridad), 11 GPIO (General Purpose Input Output) y muchas cosas ms.

Figura 1.4:

Diagrama de procesador Intel 2110

basado en XScale CE En la figura 1.4 se pueden ver casi todas las caractersticas de este tipo de procesador, que como vemos, ya est muy influenciado por las licencias que Intel tiene sobre los ncleos ARM. [21] El resto de informacin acerca de este procesador se puede encontrar en la referencia.

Antonio Snchez Perea

19/31

Arquitecturas y procesadores ARM

1.9 ARM11
Esta familia de procesadores ya utilizan la arquitectura ARMv6 en la que se incluye instrucciones SIMD (Single Instruction, Multiple Data) para procesamiento multimedia, soporte multiprocesador y una nueva arquitectura cach. Los primeros procesadores de esta clase fueron introducidos a finales de 2002. [22] Con respecto a los procesadores de la familia 9 introduce varias mejoras: Instrucciones sobre mltiples datos para uso multimedia (como se ha dicho antes), y mejora la velocidad de procesamiento de video y audio del MPGE-4. Memoria no alineada y aadido el formato mltiple (tanto littleendian como big-endian). La temperatura del procesador se ha mejorado, evitando problemas de sobrecalentamiento. El pipeline aumenta de 5 (que tena ARM9) a 8. Finalizacin de instrucciones desordenada. Prediccin dinmica de saltos (XScale ya lo soportaba). Paralelismo en carga y almacenamiento de memoria. Como curiosidad, y una utilidad encontrada a ltima hora, un desarrollador, David Braben, ha conseguido introducir en un espacio reducido (algo similar a un pen drive), un procesador ARM11 a 700MHz con 128MB de RAM e instalarle un sistema operativo basado en GNU/Linux.[19]

Antonio Snchez Perea

20/31

Arquitecturas y procesadores ARM

1.9.1 Productos

Los procesadores basados en esta arquitectura son sobre todo usados en telefona mvil y dispositivos porttiles. Actualmente la Nintendo 3DS est formada por dos procesadores ARM11 a 266MHz (Figura 1.5), y respaldado por una GPU a 200MHz PICA200, propia de Nintendo.[11]

Figura 1.5: [12]

Nintendo 3DS. Procesadores a 266MHz.

Antonio Snchez Perea

21/31

Arquitecturas y procesadores ARM Por otro lado lado estn los telfonos mviles y smartphones. Nos

encontramos con marcas como GeeksPhone, start-up espaola del 2009 dedicada a la creacin de smatphones. Por ahora tiene dos modelos, el One y el Zero, y ambos utilizan un procesador basado en la arquitectura ARM11. HTC tambin apuesta por esta arquitectura, basando muchos de sus modelos, como el Aria, Dream, Wildfire, Hero, Magic, Legend, Touch, y el TyTN II. Apple lo us para los modelos 2G y 3G de su telfono, el iPhone, aunque para las nuevas versiones ya apuesta por una arquitectura propia. El iPod Touch (1G y 2G) tambin lo utiliza. Los lectores de libros electrnicos de Amazon, Kindle, en todas sus versiones. Adems de marcas como LG, Motorola, Nokia en casi todos los modelos que funcionan bajo Symbian S60 de 3 y 4 generacin, Samsung, Sony Ericsson, Microsoft en sus telfonos Kin One y Zune HD, hasta la empresa Zeebo para marcos digitales y una consola de videojuegos del mismo nombre. [22]

Antonio Snchez Perea

22/31

Arquitecturas y procesadores ARM

1.10 CortexCortex-A/R/M
Los procesadores Cortex estn diseados para un amplio rango de usos, desde decodificadores de televisin hasta smartphones pasando por automviles, porttiles, disco duros, impresoras, cmaras de fotos, sistemas empotrados... A continuacin vamos a ver algunas de las caractersticas ms importantes de ellos detalladamente.

CortexCortex-A
Esta gama est formada por las arquitecturas A5, A8, A9 y A15 y aunque cada una de ellas tiene unas caractersticas particulares, vamos a comentarlas globalmente: Se trata de procesadores de 32 bits, con un pipeline de 13 etapas, capaz de soportar varios ncleos (hasta 4) y con una prediccin de saltos bastante acertada, por lo que no suele perder ciclos de CPU y todo ello con un conjunto de instrucciones RISC. En cuanto al soporte multimedia dispone de operaciones sobre enteros y sobre nmero de punto flotante, adems de la tecnologa Jazelle que ya comentamos anteriormente. Tiene un nuevo sistema de acceso a memoria que reduce a 1 o 2 ciclos el acceso a memoria cach, con cargas y escrituras en memoria principal con varias etapas y memorias de nivel 1 y 2 integradas.

Antonio Snchez Perea

23/31

Arquitecturas y procesadores ARM

Figura 1.6:

Arquitectura Cortex-A5

Las interfaz inferior de la figura 1.6 llamada AMBA 3 AXI trata de conectar los diferentes ncleos (en caso de que haya ms de 1) y sus entradas/salidas a memoria para que a vista de los dems procesadores, haya slo una, es decir, conecta un ncleo con todos los dems y con memoria principal. El mdulo marcado como Prefetch Unit se encarga de captar las instrucciones de memoria (o de cach en caso de que se encuentren en esta), adems de detectar las instrucciones Thumb y pasarlas a instrucciones comprensibles para la CPU. Como dato curioso decir que el procesador Cortex-A5 es el ms pequeo de la serie Cortex-A. [14]

Antonio Snchez Perea

24/31

Arquitecturas y procesadores ARM

CortexCortex-R
La serie R de Cortex est ms centrada en el uso de aplicaciones de tiempo real, normalmente para sistemas embebidos con ciertas restricciones en el tiempo de respuesta. De esta gama existen los ncleos R4, R5 y R7. Las caractersticas se pueden resumir en las siguientes: Altas frecuencias de reloj (cerca de 1GHz) y una arquitectura muy segmentada para conseguir un alto rendimiento. Pre-captado de instrucciones, prediccin de saltos y ejecucin superescalar. Divisiones por hardware y varias unidades de coma flotante, para evitar que varias instrucciones entren en conflicto por la necesidad de usarla. Compatibilidad de binarios con algunas de los procesadores de las familias ARM7TDMI, ARM9 y ARM11. Memoria principal altamente acoplada con el procesador, para evitar prdidas de tiempo en carga. Procesadores deterministas. Con ello se consigue cumplir los objetivos de tiempo real. Relacin precio/eficiencia: su bajo precio y su bajo consumo de energa la han hecho una arquitectura muy interesante para muchos fines. Algunos de sus usos son en: Unidades de disco duro: para controlar las altas velocidades de movimiento del sistema de rotacin de disco y colocacin del cabezal y los canales de lectura y escritura con tasas de transferencia muy alta. Antonio Snchez Perea

25/31

Arquitecturas y procesadores ARM Automocin: En el actual mercado de la automocin todo se controla electrnicamente, para ello se crearon las ECU (Electronic Control Units) y se encargan de mantener todos los sistemas en orden, tales como controles de estabilidad, airbags, luces, direccin asistida, ABS. Se usan este tipo de arquitecturas porque como es de imaginar, estos sistemas deben realizar sus acciones en tiempo real.

Figura 1.7:

Arquitectura Cortex-R4

Adems de lo ya comentado de la figura 1.6, en esta (figura 1.7) se puede ver lo siguiente: Antonio Snchez Perea

26/31

Arquitecturas y procesadores ARM VIC Port: Este puerto se usa para manejar interrupciones de distintas fuentes, normalmente se encuentra en el controlador de interrupciones, pero este nuevo VIC (Vectored Interrupt Controller) adems determina la fuente de la interrupcin y la rutina a ejecutar, acciones que antes se realizaban mediante software. ETM Interface: Provee al procesador de instrucciones de soporte de depuracin. FPU (Float Point Units): Unidades para realizar operaciones de coma flotante. [15]

CortexCortex-M
El objetivo de la serie M de Cortex es el consumo, una gama de procesadores que tengan una relacin precio/consumo aceptable. Los ncleos disponibles dentro de esta gana son el M0, M1, M3 y M4.

Figura 1.8:

Relacin

coste/rendimiento

de

los

procesadores Cortex-M.

Antonio Snchez Perea

27/31

Arquitecturas y procesadores ARM En la figura 1.7 podemos ver las diferencias entre los distintos

tipos dentro de la gama M, siendo el M1 una FPGA y el M4 a un procesador de alto rendimiento. Para ver las diferencias ms claramente podemos ver la siguiente tabla: Cortex-M0 Cortex-M3 Cortex-M4

Aplicaciones de 8 y Aplicaciones de 16 y Aplicaciones de 32 bits 16 bits 32 bits Las caractersticas ms destacables son: CPU de 32 bits con juego de instrucciones RISC. Escalar de 3 etapas. Modo de bajo consumo integrado. Rutinas de interrupcin de servicio en C (no en ensamblador). Modo de depuracin. Soporte para mltiples procesadores. Seguimiento de ejecucin en tiempo real.[16]

1.11 Anotaciones
La referencia [13] se ha utilizado a lo largo de todo el documento, por eso es difcil situarla.

Antonio Snchez Perea

28/31

Arquitecturas y procesadores ARM

Referencias
[1] ARM architecture Wikipedia [http://en.wikipedia.org/wiki/ARM_architecture] [2] BBC Micro Wikipedia [http://en.wikipedia.org/wiki/BBC_Micro] [3] ARM9 Wikipedia [http://en.wikipedia.org/wiki/ARM9] [4] Instruction Set Architecture ARM [http://www.arm.com/products/processors/technologies/instruction-setarchitectures.php] [5] ARM and Thumb-2 Instruction Set [http://infocenter.arm.com/help/topic/com.arm.doc.qrc0001l/QRC0001_UAL .pdf] [6] Jazelle ARM [http://www.arm.com/products/processors/technologies/jazelle.php] [7] ARM7 Processor Family [http://www.arm.com/products/processors/classic/arm7/index.php] [8] The ARM stand for Advanced RISC machine and was Developed by Acorn Company intented for use those applications requiring power effcient processor Diagram [http://home.southernct.edu/~elahia1/ARM-New.htm] [9] StrongARM Wikipedia [http://en.wikipedia.org/wiki/StrongARM ] [10] 10] XScale Wikipedia [http://en.wikipedia.org/wiki/XScale] [11] 11] New Nintendo 3DS Hardware Info Gear News at IGN [http://uk.gear.ign.com/articles/112/1122613p1.html] [12] 12] 3DS Mainboard image [http://techon.nikkeibp.co.jp/english/NEWS_EN/20110301/189976/?SS=im gview_e&FD=52237706&ad_q] Antonio Snchez Perea

29/31

Arquitecturas y procesadores ARM

[13] 13] ARM Architecture Reference Manual Download from http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0100i/inde x.html [14] 14] Cortex-A Series ARM [http://www.arm.com/products/processors/cortex-a/] [15] 15] Cortex-R Series ARM [http://www.arm.com/products/processors/cortex-r/] [16] 16] Cortex-M Series ARM [http://www.arm.com/products/processors/cortex-m/] [17] 17] TrustZone ARM [http://www.arm.com/products/processors/technologies/trustzone.php] [18] 18] StrongARM Data Sheet V2.0 [http://www.renan.org/ARM/doc/sa110.pdf] [19] 19] PC on a USB Stick Slashdot [http://www.renan.org/ARM/doc/sa110.pdf] [20] 20] ARM7 Wikipedia [http://en.wikipedia.org/wiki/ARM7] [21] 21] Intel unveils new XScale set-top box chip - News - Linux for Devices [http://www.linuxfordevices.com/c/a/News/Intel-unveils-new-XScale-settopbox-chip/] [22] 22] ARM11 Wikipedia [http://en.wikipedia.org/wiki/ARM11]

Antonio Snchez Perea

También podría gustarte