Arquitectura Del Microprocesador ARM:
Desde 1995, la arquitectura ARM Manual de referencia ha
sido la principal fuente de documentación sobre la arquitectura del procesador
ARM y el sistema de instrucción, distinguiendo interfaces que todos los
procesadores ARM son necesarias para apoyar a los detalles de implementación
que puede variar. La arquitectura ha evolucionado con el tiempo, ya partir de
la serie de la corteza de los núcleos, tres "perfiles" se definen:
"La aplicación" Perfil: Cortex-A series
"En tiempo real" perfil: Serie Cortex-R
"Microcontrolador" perfil: Serie Cortex-M.
Los perfiles se pueden subconjunto de la arquitectura.
Por ejemplo, el perfil ARMv6-M es un subconjunto del perfil de ARMv7-M, que
soporta un menor número de instrucciones.
Núcleos de ARM
Una lista de los proveedores que implementan núcleos ARM
en su diseño es proporcionada por ARM.
Algunos ejemplos de aplicaciones de núcleos ARM
Núcleos ARM se utilizan en una serie de productos, en
particular los PDAs y teléfonos inteligentes. Algunos ejemplos son la
computación Surface Microsoft, Apple iPad y ASUS Eee Pad Transformer. Otros
incluyen el teléfono inteligente de Apple iPhone, iPod reproductor multimedia
portátil, Canon PowerShot A470 cámara digital, consola de juegos portátil
Nintendo DS y TomTom turn-by-turn sistema de navegación.
En 2005, ARM participó en el desarrollo del equipo,
spinnaker de la Universidad de Manchester, que utiliza núcleos ARM para simular
el cerebro humano.
Chips ARM también se utilizan en Raspberry Pi,
BeagleBoard, BEAGLEBONE, PandaBoard, y otras computadoras de una sola tarjeta,
ya que son muy pequeños, baratos y consumen muy poca energía.
Conjunto de Instrucciones
La implementación ARM original cableado sin microcódigo,
como el procesador de 8 bits 6502 mucho más simple utilizado en
microcomputadoras Acorn anteriores.
La arquitectura ARM incluye las siguientes
características RISC:
Cargar/Arquitectura tienda.
No hay soporte para accesos a memoria desalineadas.
Uniforme 16 banco de registros de 32 bits.
Ancho de instrucción fija de 32 bits para facilitar la
decodificación y de la canalización, a costa de la disminución de la densidad
del código. Más tarde, la instrucción Thumb establece aumento de la densidad de
código.
Ejecución del ciclo de reloj mayoría de una sola.
Para compensar el diseño más simple, en comparación con
los procesadores como el Intel 80286 y Motorola 68020, se utilizan algunas de
las características de diseño adicionales:
Ejecución condicional de la mayoría de las instrucciones,
reducir los gastos generales y la rama de compensar la falta de un predictor de
ramificación.
Instrucciones aritméticas modifican los códigos de
condición sólo cuando se desee.
Desplazador de barril de 32 bits que se puede utilizar
sin penalización en el rendimiento con la mayoría de las instrucciones
aritméticas y cálculos de direcciones.
Potente modos de direccionamiento indexado.
Un enlace registrarse para rápidas llamadas a funciones
de hoja.
Simple, pero rápido, el subsistema de interrupción de
2-nivel de prioridad con conmutación de bancos de registros.
Instrucciones aritméticas
El ARM apoya sumar, restar y multiplicar las
instrucciones. Las instrucciones Dividir enteros sólo se aplican mediante
núcleos ARM basado en las siguientes arquitecturas ARM:
Arquitecturas ARMv7E-M ARMv7-M y siempre incluye
instrucciones de dividirse.
Arquitectura ARMv7-R incluye siempre las instrucciones de
dividir en el conjunto de instrucciones Thumb, pero opcionalmente, en el
conjunto de instrucciones ARM.
ARMv7-A arquitectura incluye opcionalmente las
instrucciones de dividirse. Las instrucciones no pueden ser implementadas, o
implementadas sólo en el conjunto de instrucciones Thumb, o implementadas tanto
en el pulgar e instrucciones ARM conjuntos, o se aplican si se incluyen las
extensiones de virtualización.
Registros
Registros R0-R7 son los mismos en todos los modos de la
CPU, que nunca se apilan.
R13 y R14 se apilan en todos los modos excepto en el modo
privilegiado de CPU del sistema. Es decir, cada modalidad que se pueden
introducir a causa de una excepción tiene sus propias R13 y R14 - Estos
registros contienen generalmente el puntero de pila y la dirección de retorno
de llamadas a funciones, respectivamente.
Alias:
R13 también se conoce como SP, el puntero de pila.
R14 también se conoce como LR, el Registro Enlace.
R15 también se conoce como PC, el contador de programa.
No hay comentarios:
Publicar un comentario