Download Juan Fco Rivero Piedra

Document related concepts
no text concepts found
Transcript
ARM 11.
Juan Fco Rivero Piedra
Índice:
La familia ARM ....................................................................................................................................................... 1
Procesadores de la familia ARM11. ............................................................................................................... 3
El ARM1176JZF-S:................................................................................................................................................. 4
Tecnología Trustzone: ........................................................................................................................................ 5
Control Inteligente de Energía (IEM, Intelligent Energy Management) ........................................ 6
SAMSUNG S3C6400: Microcontrolador del iPhone. ............................................................................... 7
Referencias: ............................................................................................................................................................. 8
La familia
Se denomina ARM a una familia de microprocesadores RISC diseñados por la
empresa Acorn Computers y desarrollados por Advanced RISC Machines Ltd., una
empresa derivada de la anterior.
El diseño del ARM comenzó en 1983 como un proyecto de desarrollo en la
empresa Acorn Computers Ltd. Roger Wilson y Steve Furber lideraban el equipo,
cuya meta era, originalmente, el desarrollo de un procesador avanzado, pero con
una arquitectura similar a la del MOS 6502. La razón era que Acorn tenía una larga
línea de ordenadores personales basados en dicho micro, por lo que tenía sentido
desarrollar uno con el que los desarrolladores se sintieran cómodos.
El equipo terminó el diseño preliminar y los primeros prototipos del procesador
en el año 1985, al que llamaron ARM1. La primera versión utilizada
comercialmente se bautizó como ARM2 y se lanzó en el año 1986.
La arquitectura del ARM2 posee un bus de datos de 32 bits y ofrece un espacio de
direcciones de 26 bits, junto con 16 registros de 32 bits. Uno de estos registros se
utiliza como contador de programa, aprovechándose sus 4 bits superiores y los 2
inferiores para contener los flags de estado del procesador.
El ARM2 es probablemente el procesador de 32 bits útil más simple del mundo, ya
que posee sólo 30 000 transistores. Su simplicidad se debe a que no está basado en
microcódigo (sistema que suele ocupar en torno a la cuarta parte de la cantidad
total de transistores usados en un procesador) y a que, como era común en aquella
época, no incluye caché. Gracias a esto, su consumo en energía es bastante bajo, a
la vez que ofrece un mejor rendimiento que un 286. Su sucesor, el ARM3, incluye
una pequeña memoria caché de 4 KB, lo que mejora los accesos a memoria
repetitivos.
A finales de los años 80, Apple Computer comenzó a trabajar con Acorn en nuevas
versiones del núcleo ARM. En Acorn se dieron cuenta de que el hecho de que el
fabricante de un procesador fuese también un fabricante de ordenadores podría
echar para atrás a la competencia, por lo que se decidió crear una nueva compañía
llamada Advanced RISC Machines, que sería la encargada del diseño y gestión de
las nuevas generaciones de procesadores ARM. Ocurría esto en el año 1990.
Este trabajo derivó en el ARM6, presentado en 1991. Apple utilizó el ARM 610
(basado en el ARM6), como procesador básico para su innovador PDA, el Apple
Newton. Por su parte, Acorn lo utilizó en 1994 como procesador principal en su
RiscPC.
El núcleo mantuvo su simplicidad a pesar de los cambios: en efecto, el ARM2 tiene
30 000 transistores, mientras que el ARM6 sólo cuenta con 35 000. La idea era que
el usuario final combinara el núcleo del ARM con un número opcional de
periféricos integrados y otros elementos, pudiendo crear un procesador completo
a la medida de sus necesidades.
La mayor utilización de la tecnología ARM se alcanzó con el procesador
ARM7TDMI, con millones de unidades en teléfonos móviles y sistemas de
videojuegos portátiles.
DEC licenció el diseño, lo cual generó algo de confusión debido a que ya producía el
DEC Alpha, y creó el StrongARM. Con una velocidad de reloj de 233 MHz, este
procesador consumía solo 1 W de potencia (este consumo de energía se ha
reducido en versiones más recientes). Esta tecnología pasó posteriormente a
manos de Intel, como fruto de un acuerdo jurídico, que la integró en su línea de
procesadores Intel i960 e hizo más ardua la competencia.
Freescale (una empresa que derivó de Motorola en el año 2004), IBM, Infineon
Technologies, OKI, Texas Instruments, Nintendo, Philips, VLSI, Atmel, Sharp,
Samsung y STMicroelectronics también licenciaron el diseño básico del ARM.
El diseño del ARM se ha convertido en uno de los más usados del mundo, desde
discos duros hasta juguetes. Hoy en día, cerca del 75% de los procesadores de 32
bits poseen este chip en su núcleo.
Procesadores de la familia ARM11.
La familia ARM11 comprende cuatro series de procesadores que implementan la
arquitectura ARM v6 con extensiones, incluyendo una serie de instrucciones SIMD
DSP que pueden operar con datos de 16 y 8 bits en registros de 32 bits.
- El ARM1136J-S y el ARM1136JF-S tienen la tecnología Jazelle, que permite la
ejecución de código java mediante hardware. Implementan una arquitectura de
memoria virtual, soportan tanto el juego de instrucciones ARM como el Thumb
instruction set. El ARM1136JF-S tiene también un coprocesador de coma flotante.
-El ARM1156T2-S y el ARM1156T2F-S ofrecen de forma opcional Unidades de
Protección de Memoria (MPUs) para instrucciones y memoria de datos, y
protección extra de paridad para la caché y memoria muy cercana. En este caso el
ARM1156T2F-S tiene un coprocesador de coma flotante.
- El ARM1176JZ-S y el ARM1176JZF-S disponen de la tecnología TrustZone y de la
Jazelle, y soportan el ARM Intelligent Energy Manager (IEM). El ARM1176JZF-S
tiene el coprocesador de coma flotante.
- El multiprocesador ARM11 MPCore está configurado para incluir de uno a cuatro
procesadores que pueden ser vistos como un procesador simple. Combina la
tecnología Jazelle y la IEM. Implementa un sistema de memoria virtual con nivel 1
de caché configurable, un coprocesador vectorial de coma flotante y un interruptor
programable de control y distribución.
El ARM1176JZF-S:
* Poderoso juego de instrucciones ARMv6.
* El “ARM Thumb instruction set”.
* Tecnología Jazelle que permite la ejecución de Java implementada en hardware.
* Extensiones DSP. El juego de instrucciones DSP optimiza la capacidad de
procesamiento de archivos DSP (Developer Studio Proyect) en aplicaciones de alto
rendimiento, con la ventaja del bajo consumo de potencia requerido en los
aparatos portátiles dependientes de baterías. Dichas extensiones se utilizan en una
amplia gama de aplicaciones software, incluyendo el control de un servomotor,
teléfono vía IP y códecs de vídeo y audio.
* SIMD (Single Instruction Multiple Data) para procesamiento de video.
* Tecnología TrustZone.
* Bajo consumo de potencia:
0.6mW/MHz (0.13µm, 1.2V)
-Modos de autodesconexión para ahorro de energía.
-Tecnología “Intelligent Energy Manager (IEM)” para control dinámico de
potencia
* Procesadores integrados de alto rendimiento.
-Pipeline integrado de 8 etapas proporciona una alta frecuencia de la señal de
reloj.
-Pipelines separados para load-store y operaciones aritméticas.
-Predicción de salto y bandeja de retorno.
* Diseño de memoria de alto rendimiento.
-Soporta 4-64k tamaños de caché.
-Sistema de memoria de alto rendimiento y velocidad para acceso de datos
para multimedia y aplicaciones de red.
* Interfaz de interrupciones vectorizado y modo de poca latencia de interrupción
para aplicaciones en tiempo real.
* Coprocesador vectorial de coma flotante para aceleración de gráficos en 3D (y
automoción y control industrial).
Tecnología Trustzone:
La seguridad abarca cada parte del diseño del sistema. Conseguir una solución
razonable para la seguridad de todo el sistema implica abarcar cada componente
del sistema por separado y considerar la necesidad concreta de seguridad para
cada uno. Es por ello por lo que el ARM11 tiene a su disposición una serie de
componentes IP cuyo funcionamiento difiere del global del sistema, y que servirían
para trabajar conjuntamente con los sistemas de seguridad.
A continuación describiremos con más detalle la tecnología TrustZone de ARM:
- Las extensiones arquitecturales de seguridad proporcionan un modelo de
programación consistente a través de las plataformas y aplicaciones.
- La tecnología TrustZone se implementa en los procesadores para proporcionar
una seguridad resguardada mediante hardware dedicado, para sistemas
especialmente seguros.
- Se cuenta con unos estándares de los buses AMBA 3.0 que sirven para propagar el
estado de seguridad entre el procesador y la memoria y los periféricos y viceversa.
La documentación relativa a estos buses está protegida y no ha sido posible
acceder a ella.
- Los periféricos designados con PrimeCell están designados por TrustZone para
facilitar la configuración de los subsistemas de seguridad, para los diseños basados
en SoC.
- El software de TrustZone proporciona un ambiente de confianza de ejecución de
instrucciones (TEE) para los componentes de seguridad de software.
- El estándar API de TrustZone permite interoperabilidad de aplicaciones con
plataformas de seguridad basadas en dicha tecnología.
Para todos estos componentes de seguridad que extienden las capacidades del
sistema básico ARM trabaja en coalición con un gran número de terceras personas,
para asegurar un juego de instrucciones y bloques arquitecturales que puedan ser
inteligibles y compatibles con las tecnologías de TrustZone.
Control Inteligente de Energía (IEM, Intelligent Energy Management)
El subsistema del Control Inteligente de Energía consiste en:
- Controlador de Energía Inteligente (IEC).
- Generador Dinámico de Reloj (DCG).
- Controlador general del sistema.
- Controlador Dinámico de Voltaje (DVC).
El bloque IEM también controla la entrada y salida seguras de los modos de baja
potencia, incluyendo modos de WFI “standby”, “shutdown” y “dormant”.
El sistema desarrollado tiene numerosos mecanismos para reducir el gasto de
energía del sistema:
- Se consigue reducir el voltaje de alimentación del núcleo y la RAM.
- Se utilizan técnicas de desconexión de secciones del núcleo mientras no están
siendo usadas.
- Se reduce la frecuencia de funcionamiento del núcleo en operaciones que no
necesiten de una alta velocidad de operación.
El nivel de ejecución del IEM y el controlador de los PLL son los responsables de:
- Recibir peticiones de ejecución del IEC.
- Mandar y monitorizar las peticiones del APC y DCG.
- Configurar los PLLs.
- Configurar el bloque de selección de reloj para seleccionar un PLL.
El bloque IEM también controla la entrada y salida seguras de los modos de baja
potencia, incluyendo modos de WFI “standby”, “shutdown” y “dormant”.
SAMSUNG S3C6400: Microcontrolador del iPhone.
El SAMSUNG S3C6400 es el primer microprocesador ARM de la familia 1176 de
alto rendimiento y bajo consumo pensado para su uso en teléfonos móviles y
aplicaciones generales.
Para proporcionar un rendimiento optimizado para los servicios de
comunicaciones móviles 2.5G y 3G, este procesador tiene una arquitectura de bus
interno de 64/32 bits y incluye mucho hardware adicional para aceleración
gráfica, aplicable tanto como para reproducir video como para el control de la
pantalla del terminal. También dispone de un Códec Multiformato (MFC) que
soporta la codificación y decodificación de MPEG4/H.263, H.264 y decodificación
de VC1. Este hardware adicional también soporta conferencias de video en tiempo
real y salida de TV tanto en NTSC como en PAL.
El S3C6400 tiene un interfaz optimizado para la adición externa de memoria capaz
de satisfacer la necesidad de los sistemas más exigentes para los servicios de
comunicaciones. El sistema de memoria interno tiene una DRAM dual y puertos
para acceso paralelo de memoria externa. El puerto DRAM puede ser configurado
pora soportar DDR móvil o estándares de SDRAM. Los puertos Flash/ROM
soportan NAND flash, NOR flash, OneNAND y ROM.
Para reducir el coste total del sistema y mejorar la funcionalidad global, el
S3C6400 incluye muchos periféricos como un interfaz para la cámara, controlador
de pantalla TFT LCD color verdadero de 24-bits, Gestor del Sistema para control de
consumo de potencia, puerto USB 2.0 OTG de alta velocidad (480Mbps),
controlador para tarjetas SD e interfaz de tarjetas multimedia de alta velocidad, y
PLLs para generación de señales de reloj. Al tener una gran variedad de
componentes comunes, el S3C6400 minimiza el coste total del producto y elimina
la necesidad de tener que añadirle componentes adicionales.
Referencias:
http://www.samsung.com/global/business/semiconductor/productInfo.do?fmly_i
d=229&partnum=S3C6400
http://es.engadget.com/2007/07/01/el-procesador-del-iphone-un-arm-de667mhz-de-samsung/
http://es.wikipedia.org/wiki/ARM
http://www.arm.com/products/CPUs/families/ARM11Family.html