Arquitecturas ARM

download Arquitecturas ARM

of 31

  • date post

    10-Feb-2018
  • Category

    Documents

  • view

    220
  • download

    0

Embed Size (px)

Transcript of Arquitecturas ARM

  • 7/22/2019 Arquitecturas ARM

    1/31

    11

    ArquitecturaArquitecturaArquitecturaArquitecturassss yyyy

    procesadores ARMprocesadores ARMprocesadores ARMprocesadores 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

  • 7/22/2019 Arquitecturas ARM

    2/31

  • 7/22/2019 Arquitecturas ARM

    3/31

    1/31 Arquitecturas y procesadores ARM

    Antonio Snchez Perea

    1.11.11.11.1 HistoriaHistoriaHistoriaHistoriaAcorn 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 losBBC 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.

    1 Serie de microcomputadores y perifricos fabricados por Acorn

    Computers

  • 7/22/2019 Arquitecturas ARM

    4/31

    2/31 Arquitecturas y procesadores ARM

    Antonio Snchez Perea

    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.21.21.21.2 LicenciasLicenciasLicenciasLicenciasAcorn 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 puedenrealizar 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.31.31.31.3 Ncleos ARMNcleos ARMNcleos ARMNcleos ARMA continuacin vamos a mostrar una tabla con los principales

    ncleos licenciados por esta marca.

  • 7/22/2019 Arquitecturas ARM

    5/31

    3/31 Arquitecturas y procesadores ARM

    Antonio Snchez Perea

    FamiliaFamiliaFamiliaFamilia ArquitecturaArquitecturaArquitecturaArquitectura CaractersticasCaractersticasCaractersticasCaractersticas

    ARM1 ARMv1 Primer ncleo fabricado.

    ARM2 ARMv2 Agrega la instruccin MUL (Multiplicar)

    ARMv2a Integra grficos y entrada/salida

    ARM3 ARMv2a Primero en integrar memoria cach

    ARM7 ARMv3 Elimina el bus del coprocesador matemtico

    ARM7T

    DMI

    ARMv4T Pipeline de 3 etapas y cach

    StrongA

    RM

    ARMv4 Pipeline de 5 etapas

    Xscale ARMv5TE Pipeline de 7 etapas, instrucciones multimedia

    MMX y MMX2

    ARM11 ARMv6/T2/Z

    K/K

    Pipeline de 8 etapas y SIMD

    Cortex-

    A

    ARMv7-A 1 a 4 ncleos, controladores de interrupciones

    genrico, superescalar de 13 etapas

    Cortex-

    R

    ARMv7-R Pipeline de 8 u 11 etapas (depende del ncleo)

    con dual-core

    ARMv6-M Perfil de microcontrolador (procesador +

    memoria), hardware para multiplicacin

    ARMv7-M Hardware para divisin y multiplicacin

    Cortex-

    M

    ARMv7-ME

  • 7/22/2019 Arquitecturas ARM

    6/31

    4/31 Arquitecturas y procesadores ARM

    Antonio Snchez Perea

    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.41.41.41.4 TecnologasTecnologasTecnologasTecnologasAntes de empezar a hablar de procesadores y sus usos, vamos a

    definir algunas tecnologas propias que usan estos.

    JTAGJTAGJTAGJTAG

    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/Thumb2Thumb/Thumb2Thumb/Thumb2Thumb/Thumb2

    La tecnologa ThumbThumbThumbThumb 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.

  • 7/22/2019 Arquitecturas ARM

    7/31

    5/31 Arquitecturas y procesadores ARM

    Antonio Snchez Perea

    Para hacer posible esta tecnologa se utiliza un descompresor de

    instrucciones Thumb.

    La tecnologa Thumb2Thumb2Thumb2Thumb2 (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]

    JazzeleJazzeleJazzeleJazzele

    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]

    TrustZoneTrustZoneTrustZoneTrustZone

    Se trata de una tecnologa que da soporte a la seguridad, tanto en

    pagos, gestin de derechos digitales (DRM), servicios Web y NFC.[17]

  • 7/22/2019 Arquitecturas ARM

    8/31

    6/31 Arquitecturas y procesadores ARM

    Antonio Snchez Perea

    1.51.51.51.5 ARM7/ARM7TDMIARM7/ARM7TDMIARM7/ARM7TDMIARM7/ARM7TDMITras 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:Figura 1.1:Figura 1.1: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.

  • 7/22/2019 Arquitecturas ARM

    9/31

    7/31 Arquitecturas y procesadores ARM

    Antonio Snchez Perea

    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]

  • 7/22/2019 Arquitecturas ARM

    10/31

    8/31 Arquitecturas y procesadores ARM

    Antonio Snchez Perea

    Figura 1.2:Figura 1.2:Figura 1.2:Figura 1.2: Diagrama de bloques de la arquitecturaARM7 [8]

  • 7/22/2019 Arquitecturas ARM

    11/31

    9/31 Arquitecturas y procesadores ARM

    Antonio Snchez Perea

    La figura 1.2 muestra las distintas partes de la arquitectura ARM7

    y cmo se conectan entre ellas:

    Instruction Decoder & Control LogicInstruction Decoder & Control LogicInstruction Decoder & Control LogicInstruction Decoder & Control 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 RegisterAddress RegisterAddress RegisterAddress