sábado, 22 de noviembre de 2014

Arquitectura Del Microprocesador ARM

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